ENGR 2031 Digital Design Laboratory Lab 7 Background

Size: px
Start display at page:

Download "ENGR 2031 Digital Design Laboratory Lab 7 Background"

Transcription

1 ENGR 2031 Digital Design Laboratory Lab 7 Background What we will cover Overview of the Simple Computer (scomp) Architecture Register Flow Diagrams VHDL Implementation of scomp Lab 7 scomp Architecture Figure 1, scomp Architecture for Labs 7 and 8 The scomp architecture for lab 7 is similar, but not the same, as that discussed in Chapter 9, Rapid Prototyping of Digital Systems, SOPC edition, Hamblen, Hall, and Furman. The version for lab has access to more memory and allows for external peripherals. The differences between the textbook version and the version discussed here and used in labs 7 and 8 are summarized below: The textbook allocates bits in the instruction word differently (8 bit opcode and operand vs 6 bit opcode and 10 bit operand). The textbook chooses the opcodes differently. The VHDL code for the scomp differs in many areas, for example signal names are different and computer memory is larger and implemented differently The textbook does not have a specific I/O subsystem and I/O buses. The textbook does not consider subroutine calls and returns. The simple computer (scomp) processor consists of the arithmetic logic unit (ALU), control unit (CU), and internal registers. The scomp processor will have access to a bank of external memory and I/O peripherals. The scomp can access up to 1024 words of internal Cyclone memory. This can be used for either program or data storage. The accumulator (AC) is the only internal register for data storage local to scomp. The accumulator can be loaded with data from memory or I/O or receive the result from the ALU. The program counter (PC) holds the address of the next instruction. The instruction register (IR) holds the most recently fetched instruction.

2 Instruction Format The scomp has a 16-bit instructions and a 16 bit data width (data and address widths vary among computer architectures). The instruction format is shown in Figure 2. Figure 2, scomp Instruction Format The 6-bit opcode specifies the operation (up to 64 different operations) and the 10-bit operand specifies the data to be operated on (address of data, immediate data, or not used). A 10-bit operand is necessary to hold the 10 bit memory address needed to access the 1024 words of scomp memory. Note that the textbook describes an 8-bit opcode and 8-bit operand. ALU The arithmetic logic unit (ALU) is a combinational circuit that performs arithmetic and logical operations. The data for the operation comes from the accumulator (AC) and the contents of a specified memory location via the memory data register (MDR). The result of the ALU always goes to the accumulator (AC). The ALUs operation is controlled via the control unit. Memory and I/O All data comes from or goes to memory or I/O devices. I/O registers, busses, IO_ADDR, and IO_Data will be covered in the next lecture. The memory (RAM) and memory buses are internal to the cyclone chip. The memory is implemented as a single bank of random access memory (RAM) that can hold instructions and data. The memory address bus is driven by either the program counter (PC) for an instruction fetch or the memory address register (MAR) for an operand (data) fetch. For a memory read operation: The address in the MAR or PC drives the address bus Memory places the requested data on the data bus The data must be latched in the memory data register (MDR) at the correct time by the control unit For a memory write operation: The address in the MAR drives the address bus The data to be written comes from the accumulator (AC) The data is written to the location specified on the address bus Fetch, Decode, and Execute Cycle There are three stages (after reset) in the operation of the simple computer (see Figure 3) and this cycle repeats forever. Each stage consists of one or more states. The fetch and decode stages are the same for all operations however the execute stage will have different states for each operation. The decode stage will determine which execute states are used for the operations. See Figure 3. During the fetch stage, the next instruction is obtained. During the decode stage, the instruction is decoded to determine what operations will need to be done. During the execute stage, the operations specified by the instruction are performed. The reset takes the scomp to the fetch stage.

3 Figure 3, Fetch, Decode, Execute Cycle scomp Instructions The following instructions (Table 1) for the scomp have already been implemented, will be implemented as part of the labs 7 and 8, or can be implemented later as additional exercises. One could also modify the scomp to support instructions of their own design. The choice of opcodes is arbitrary. Mnemonics are often used in place of the opcodes fro assembly language programming. Instruction Mnemonic Operation Opcode (Hex) NOP Do nothing (no operation) 0x00 LOAD Address AC <= MEM(Address) 0x01 STORE Address MEM(Address ) <= AC 0x02 ADD Address AC <= AC + MEM(Address) 0x03 SUB Address AC <= AC - MEM(Address) 0x04 JUMP Address PC <= Address 0x05 JNEG Address If AC < 0, PC <= Address 0x06 JPOS Address If AC > 0, PC <= Address 0x07 JZERO Address If AC = 0, PC< = Address 0x08 AND Address AC <= AC AND MEM(Address) 0x09 OR Address AC <= AC OR MEM(Address) 0x0A XOR Address AC <= AC XOR MEM(Address) 0x0B SHIFT Bits If Bits > 0, AC <= AC Shifted Bits left 0x0C If Bits < 0, AC <= AC Shifted Bits right Bits is in sign magnitude format ADDI Immediate AC = AC + Immediate (sign extended) 0x0D ILOAD Address AC <= MEM(MEM(Address )) 0x0E ISTORE Address MEM(MEM(Address )) <= AC 0x0F CALL Address Push PC onto stack, PC <= Address 0x10 RETURN Pop PC off of stack 0x11 IN I/O Address AC <= IO_IN 0x12 OUT I/O Address IO_DATA <= AC 0x13 Table 1, scomp Instructions

4 Sample Assembly Language Program, A = B + C For now, ignore where the data is located Start: LOAD B ADD C STORE A Here: JUMP Here Figure 4a, scomp Assembly Language Code (A = B + C) 000 : 0411; -- Start: LOAD B 001 : 0C12; -- ADD C 002 : 0810; -- STORE A 003 : 1403; -- Here: JUMP Here 010 : 0000; -- A 011 : 0004; -- B 012 : 0003; -- C Figure 4b, scomp Machine Language Code (A = B + C) The program first brings B into the accumulator, then adds C to the accumulator contents, and stores the result in A. The typical code listing of a machine language program shows the memory address (1 st column of Figure 4b), memory contents (column after the : in Figure 4b), and comments (stuff after the --). The comments shown in Figure 4b are the assembly language mnemonics. Instructions should start at address 0 in memory as that will be what the PC is initialized to. Data can be placed anywhere in memory that does not contain instructions. In figure 4b the data for A, B, and C are placed in memory locations 0x10, 0x11, and 0x12 respectively. In line 000 of Figure 4b, the 6-bit opcode for the LOAD instruction is 0x01 (000001) and B refers to the 10-bit memory address 0x011 ( ). Thus the LOAD B instruction is or 0x0411. Labels like B will be useful when we do assembly language programming. Note that in the hex shorthand, extra 0s are appended to the front to extend the bits to a multiple of 4 bits. When generating the machine code by hand you must use the exact number of bits for the opcode (6) and operand (10) to generate the instruction. Register Flow for A = B + C The reset operation (Figure 5a) initializes the computer: Figure 5a, scomp after Reset Figure 5b, scomp in Fetch

5 During reset (Note that the memory starts to show the contents of the specified address) MW <= 0 PC <= 0x000 AC <= 0x0000 State < = fetch Figure 5b shows the fetch stage. During the fetch stage MW <= 0 IR <= MDR MAR <= MDR(9 downto 0) PC <= PC + 1 State <= decode Since the IR is a register (clocked), the contents of the data bus from the memory read are not latched in until the next state (decode). The MAR and PC are also registers and new values are not latched in until start of next state. Figure 5c shows the decode stage. During the decode stage CASE IR(15 downto 10) IS WHEN "000000" => -- No Op WHEN "000001" => -- LOAD STATE <= EX_LOAD;... Notice that the IR, MAR, and PC of Figure 5b now have the values assigned in the previous state. The control unit knows which execute state to go to based on the opcode field of the IR. During the decode state, memory has time to fetch the contents of the address loaded into the MAR during the previous state. This data is needed for instructions such as LOAD and ADD. If data is not needed by the instruction the data is not used. Figure 5c, scomp in Decode Figure 5d, scomp in Execute (LOAD) Figure 5d shows the execute stage for a LOAD operations. The LOAD operation requires only one state for the execute stage. During the execute stage WHEN EX_LOAD => -- Latch data from MDR to AC AC <= MDR;

6 The execute stage varies depending upon the instruction. Some instructions such as STORE require more than one state for the execute stage. After being reset, the computer will go through the fetch, decode, execute cycle as long as the clock is active. VHDL Implementation of the Simple Computer The VHDL framework for scomp is LIBRARY USE ENTITY SCOMP IS ARCHITECTURE a OF SCOMP IS declarations BEGIN other modules (like memory) assignments PROCESS (CLOCK, RESET) BEGIN CASE STATE IS WHEN RESET_PC => WHEN OTHERS => END PROCESS; END a; The VHDL entity for scomp is ENTITY SCOMP IS PORT(CLOCK,RESETN : IN STD_LOGIC; PC_OUT : OUT STD_LOGIC_VECTOR( 9 DOWNTO 0 ); AC_OUT : OUT STD_LOGIC_VECTOR(15 DOWNTO 0 ); MDR_OUT : OUT STD_LOGIC_VECTOR(15 DOWNTO 0 ); MAR_OUT : OUT STD_LOGIC_VECTOR(9 DOWNTO 0 ); IO_WRITE : OUT STD_LOGIC; IO_CYCLE : OUT STD_LOGIC; IO_ADDR : OUT STD_LOGIC_VECTOR(7 DOWNTO 0); IO_DATA : INOUT STD_LOGIC_VECTOR(15 DOWNTO 0) ); END SCOMP; The entity symbol block is shown in Figure 6 Figure 6, scomp Entity

7 Assuming a program is loaded into scomp memory, for the scomp to operate only two inputs are needed, RESETN to initialize and CLOCK to run. The VHDL architecture (beginning only) for scomp is ARCHITECTURE a OF SCOMP IS TYPE STATE_TYPE IS (RESET_PC, FETCH, DECODE, EX_LOAD, EX_STORE, EX_STORE2, EX_ADD, EX_JUMP,EX_AND); SIGNAL STATE : STATE_TYPE; SIGNAL AC, IR, MDR : STD_LOGIC_VECTOR(15 DOWNTO 0); SIGNAL PC, MAR : STD_LOGIC_VECTOR(9 DOWNTO 0); SIGNAL MW : STD_LOGIC; The VHDL for implementing the RESET and FETCH states is CASE STATE IS WHEN RESET_PC => MW <= '0'; -- Clear memory write flag PC <= " "; -- Reset PC AC <= x"0000"; -- Clear AC register WHEN FETCH => MW <= '0'; -- Clear memory write flag IR <= MDR; -- Latch instruction into IR PC <= PC + 1; -- Increment PC to next address STATE <= DECODE; The VHDL for implementing the DECODE state is WHEN DECODE => CASE IR(15 downto 10) IS WHEN "000000" => -- No Operation (NOP) WHEN "000001" => -- LOAD STATE <= EX_LOAD; WHEN "000010" => -- STORE STATE <= EX_STORE;... The VDL for implementing the ADD execute state is WHEN EX_ADD => -- Add MDR (memory contents) to AC AC <= AC + MDR; The VHDL for implementing the STORE execute states is (see Figure 7 for when MW changes) WHEN EX_STORE => MW <= '1'; -- Raise MW to write AC to MEM STATE <= EX_STORE2; WHEN EX_STORE2 => MW <= '0'; -- Drop MW to end write cycle Figure 7, MW Timing for STORE

8 The memory bank is implemented using a Quartus parametric module, altsyncram. Using the module saves you from having to implement memory from scratch. The memory is 1024 words, each 16 bits wide. The VHDL to implement the bank of memory using altsyncram is -- Use altsyncram component for unified program and data memory MEMORY : altsyncram GENERIC MAP ( intended_device_family => "Cyclone", width_a => 16, widthad_a => 10, numwords_a => 1024, operation_mode => "SINGLE_PORT", outdata_reg_a => "UNREGISTERED", indata_aclr_a => "NONE", wrcontrol_aclr_a => "NONE", address_aclr_a => "NONE", outdata_aclr_a => "NONE", init_file => "example.mif", lpm_hint => "ENABLE_RUNTIME_MOD=NO", lpm_type => "altsyncram" ) PORT MAP ( wren_a => MW, clock0 => NOT(CLOCK), address_a => MAR, data_a => AC, q_a => MDR ); The specifics for the scomp memory are shown in Figure 8a and the memory block symbol created using the altsyncram module is shown in Figure 8b. Figure 8b, Memory Block Figure 8b, Memory Details

9 Lab 7 Read Chapter 9 of Rapid Prototyping of Digital Systems, note there are some differences between the architecture described in the textbook and the one in the lab manual. You will not use the scomp files from the textbook CD, the scomp files should be obtained from the handouts page course website. Download the following from the handouts page course website: scomp files, simple computer assembler (SCASM), and Crimson editor. The example.asm file is part of the scomp files. Install Crimson editor and SCASM on your computer. Documentation on how to correctly install Crimson editor and SCASM is provided on the handouts page course website. Additional Pointers for Lab 7 Lab step 1, Add instructions to scomp The scomp for lab 7 has 6-bit opcodes and 10-bit operands for a 16-bit instruction. Bits are the opcode and bits 9..0 are the operand. A 6-bit opcode means the scomp supports up to 64 instructions and a 10-bit operand means the scomp can address up to 2 10 words of memory or use a 10-bit immediate data value. For example, the 16-bit instructions (four hexadecimal digits) 0x opcode operand Opcode 1 is LOAD, the operand is hex address 0x0011 0x0C opcode operand Opcode 3 is ADD, the operand is hex address 0x0012 When hand assembling scomp code, make sure to use a 6-bit opcode not an 8-bit opcode. Immediate arithmetic and logic instructions will require the operand to be sign extended to 16-bits. Signed integers are represented in two s complement and sign extension can be done with concatentation. Jump instructions will require conditional logic: If ELSE. To check if numbers are positive, negative, and zero the >, <, and = logic operators will not work as you might expect as the data in the accumulator is a 16 bit standard logic vector not an arithmetic value. So it is not as simple as just comparing the accumulator to zero. Instead think of how one determines if a number is positive or negative when represented in a signed two's complement representation. Comparisons for the immediate add instructions will need to be handled similarly to implement sign extension. Lab step 2, Simulation of test_code.mif Notice in the altsyncram LPM in the scomp VHDL there is the line init_file => example.mif This mif file (memory initialization file) is what memory is initialized to. This is how your program and data get into memory. Any time you wish to use a different program, you must change the memory initialization file and recompile the project. The scomp takes at least three clock cycles to perform an instruction: fetch one clock cycle, decode one clock cycle, execute one or two clock cycles. Thus to simulate a program consisting of ten lines (with no loops) requires at least 30 clock cycles. Programs containing loops will require even longer simulations.

10 To get internal signals such as PC and IR in the simulation you may need to change what the node finder looks for. PINS only will give the inputs nad outputs defined in the PORT statement of the entity. Lab step 8, Oscilloscope capture of scomp clock on DE2 The bandwidth of the oscilloscopes in the digital design lab is 100MHz and we will be capturing clock signals in the 50 70MHz range. Make sure to restore the default settings on the oscilloscope (see scope checkout procedure from Lab 2 lab step 13, page 32 of the DDLM. After the scope checkout is performed check and make sure that the bandwidth limit (BW Limit) on the channel you are using to capture the clock signal is off thus using the full 100MHz bandwidth of the scope. Also make sure that the probe that you are using is set to 10x and that the probe attenuation for the channel you are using is set to 10x. Pre Lab 7 Pre lab step 3, modified example.asm and example.mif for computing A = (B + C) + D Pre lab step 5, screenshot of simple computer simulation results for example.mif of Pre lab step 3 Pre lab step 6, total logic elements, total pins, and total memory bits from fitter summary results Lab 7 Results Pre lab step 3, modified example.asm and example.mif Pre lab step 5, simulation results for example.mif of Pre lab step 3 Lab step 2, simulation results for test_code.mif Lab steps 4-7, simple computer schematic for DE2 board Lab step 8, oscilloscope capture of clock waveform scomp.vhd VHDL code (can be as an appendix at the end of the results)

Digital Systems Design

Digital Systems Design Digital Systems Design Memory Implementation on Altera CYCLONE V Devices Electrical & Computer Engineering Dr. D. J. Jackson Lecture 6-1 Embedded Memory 10 Kb M10K blocks blocks of dedicated memory resources

More information

Single-Cycle CPU VITO KLAUDIO CSC343 FALL 2015 PROF. IZIDOR GERTNER

Single-Cycle CPU VITO KLAUDIO CSC343 FALL 2015 PROF. IZIDOR GERTNER Single-Cycle CPU CSC343 FALL 2015 PROF. IZIDOR GERTNER 1 Single-Cycle CPU Table of contents 1. Objective... pg. 2 2. Functionality... pg. 3 2.1 Part I (ADD/SUB)... pg. 7 2.2 Part II (ORI & BITWISE OPERATIONS)...

More information

ECE 437 Computer Architecture and Organization Lab 6: Programming RAM and ROM Due: Thursday, November 3

ECE 437 Computer Architecture and Organization Lab 6: Programming RAM and ROM Due: Thursday, November 3 Objectives: ECE 437 Computer Architecture and Organization Lab 6: Programming RAM and ROM Due: Thursday, November 3 Build Instruction Memory and Data Memory What to hand in: Your implementation source

More information

Lecture1: introduction. Outline: History overview Central processing unite Register set Special purpose address registers Datapath Control unit

Lecture1: introduction. Outline: History overview Central processing unite Register set Special purpose address registers Datapath Control unit Lecture1: introduction Outline: History overview Central processing unite Register set Special purpose address registers Datapath Control unit 1 1. History overview Computer systems have conventionally

More information

Microcomputer Architecture and Programming

Microcomputer Architecture and Programming IUST-EE (Chapter 1) Microcomputer Architecture and Programming 1 Outline Basic Blocks of Microcomputer Typical Microcomputer Architecture The Single-Chip Microprocessor Microprocessor vs. Microcontroller

More information

Lab 4: Register File and Memory 50 points Instructor: Yifeng Zhu Due: One week

Lab 4: Register File and Memory 50 points Instructor: Yifeng Zhu Due: One week Objectives: Lab 4: Register File and Memory 50 points Instructor: Yifeng Zhu Due: One week Build Register File Build Instruction Memory and Data Memory 1. Overview A combinational circuit neither contains

More information

CHAPTER 5 : Introduction to Intel 8085 Microprocessor Hardware BENG 2223 MICROPROCESSOR TECHNOLOGY

CHAPTER 5 : Introduction to Intel 8085 Microprocessor Hardware BENG 2223 MICROPROCESSOR TECHNOLOGY CHAPTER 5 : Introduction to Intel 8085 Hardware BENG 2223 MICROPROCESSOR TECHNOLOGY The 8085A(commonly known as the 8085) : Was first introduced in March 1976 is an 8-bit microprocessor with 16-bit address

More information

E3940 Microprocessor Systems Laboratory. Introduction to the Z80

E3940 Microprocessor Systems Laboratory. Introduction to the Z80 E3940 Microprocessor Systems Laboratory Introduction to the Z80 Andrew T. Campbell comet.columbia.edu/~campbell campbell@comet.columbia.edu E3940 Microprocessor Systems Laboratory Page 1 Z80 Laboratory

More information

The MARIE Architecture

The MARIE Architecture The MARIE Machine Architecture that is Really Intuitive and Easy. We now define the ISA (Instruction Set Architecture) of the MARIE. This forms the functional specifications for the CPU. Basic specifications

More information

Chapter 4. MARIE: An Introduction to a Simple Computer. Chapter 4 Objectives. 4.1 Introduction. 4.2 CPU Basics

Chapter 4. MARIE: An Introduction to a Simple Computer. Chapter 4 Objectives. 4.1 Introduction. 4.2 CPU Basics Chapter 4 Objectives Learn the components common to every modern computer system. Chapter 4 MARIE: An Introduction to a Simple Computer Be able to explain how each component contributes to program execution.

More information

The von Neumann Architecture. IT 3123 Hardware and Software Concepts. The Instruction Cycle. Registers. LMC Executes a Store.

The von Neumann Architecture. IT 3123 Hardware and Software Concepts. The Instruction Cycle. Registers. LMC Executes a Store. IT 3123 Hardware and Software Concepts February 11 and Memory II Copyright 2005 by Bob Brown The von Neumann Architecture 00 01 02 03 PC IR Control Unit Command Memory ALU 96 97 98 99 Notice: This session

More information

Lab 3: Standard Combinational Components

Lab 3: Standard Combinational Components Lab 3: Standard Combinational Components Purpose In this lab you will implement several combinational circuits on the DE1 development board to test and verify their operations. Introduction Using a high-level

More information

Digital System Design Using Verilog. - Processing Unit Design

Digital System Design Using Verilog. - Processing Unit Design Digital System Design Using Verilog - Processing Unit Design 1.1 CPU BASICS A typical CPU has three major components: (1) Register set, (2) Arithmetic logic unit (ALU), and (3) Control unit (CU) The register

More information

Design Problem 5 Solutions

Design Problem 5 Solutions CS/EE 260 Digital Computers: Organization and Logical Design Design Problem 5 Solutions Jon Turner Due 5/4/04 1. (100 points) In this problem, you will implement a simple shared memory multiprocessor system

More information

Department of Computer and Mathematical Sciences. Lab 4: Introduction to MARIE

Department of Computer and Mathematical Sciences. Lab 4: Introduction to MARIE Department of Computer and Mathematical Sciences CS 3401 Assembly Language 4 Lab 4: Introduction to MARIE Objectives: The main objective of this lab is to get you familiarized with MARIE a simple computer

More information

Laboratory Exercise 8

Laboratory Exercise 8 Laboratory Exercise 8 Memory Blocks In computer systems it is necessary to provide a substantial amount of memory. If a system is implemented using FPGA technology it is possible to provide some amount

More information

Chapter 1 Microprocessor architecture ECE 3120 Dr. Mohamed Mahmoud http://iweb.tntech.edu/mmahmoud/ mmahmoud@tntech.edu Outline 1.1 Computer hardware organization 1.1.1 Number System 1.1.2 Computer hardware

More information

CC312: Computer Organization

CC312: Computer Organization CC312: Computer Organization Dr. Ahmed Abou EL-Farag Dr. Marwa El-Shenawy 1 Chapter 4 MARIE: An Introduction to a Simple Computer Chapter 4 Objectives Learn the components common to every modern computer

More information

The Itanium Bit Microprocessor Report

The Itanium Bit Microprocessor Report The Itanium - 1986 8 Bit Microprocessor Report By PRIYANK JAIN (02010123) Group # 11 Under guidance of Dr. J. K. Deka & Dr. S. B. Nair Department of Computer Science & Engineering Indian Institute of Technology,

More information

V8-uRISC 8-bit RISC Microprocessor AllianceCORE Facts Core Specifics VAutomation, Inc. Supported Devices/Resources Remaining I/O CLBs

V8-uRISC 8-bit RISC Microprocessor AllianceCORE Facts Core Specifics VAutomation, Inc. Supported Devices/Resources Remaining I/O CLBs V8-uRISC 8-bit RISC Microprocessor February 8, 1998 Product Specification VAutomation, Inc. 20 Trafalgar Square Nashua, NH 03063 Phone: +1 603-882-2282 Fax: +1 603-882-1587 E-mail: sales@vautomation.com

More information

Final Project: MIPS-like Microprocessor

Final Project: MIPS-like Microprocessor Final Project: MIPS-like Microprocessor Objective: The objective of this project is to design, simulate, and implement a simple 32-bit microprocessor with an instruction set that is similar to a MIPS.

More information

Problem Set 10 Solutions

Problem Set 10 Solutions CSE 260 Digital Computers: Organization and Logical Design Problem Set 10 Solutions Jon Turner thru 6.20 1. The diagram below shows a memory array containing 32 words of 2 bits each. Label each memory

More information

A3 Computer Architecture

A3 Computer Architecture A3 Computer Architecture Engineering Science 3rd year A3 Lectures Prof David Murray david.murray@eng.ox.ac.uk www.robots.ox.ac.uk/ dwm/courses/3co Michaelmas 2000 1 / 1 2: Introduction to the CPU 3A3 Michaelmas

More information

Chapter 4. MARIE: An Introduction to a Simple Computer

Chapter 4. MARIE: An Introduction to a Simple Computer Chapter 4 MARIE: An Introduction to a Simple Computer Chapter 4 Objectives Learn the components common to every modern computer system. Be able to explain how each component contributes to program execution.

More information

CSC / EE Digital Systems Design. Summer Sample Project Proposal 01

CSC / EE Digital Systems Design. Summer Sample Project Proposal 01 THE CATHOLIC UNIVERSITY OF AMERICA SCHOOL OF ENGINEERING DEPARTMENT OF ELECTRICAL ENGINEERING AND COMPUTER SCIENCE CSC / EE 519-01 Digital Systems Design Summer 2013 Sample Project Proposal 01 Thursday

More information

ENGG3380: Computer Organization and Design Lab5: Microprogrammed Control

ENGG3380: Computer Organization and Design Lab5: Microprogrammed Control ENGG330: Computer Organization and Design Lab5: Microprogrammed Control School of Engineering, University of Guelph Winter 201 1 Objectives: The objectives of this lab are to: Start Date: Week #5 201 Due

More information

Digital Systems Laboratory

Digital Systems Laboratory 2014 Spring CSE140L Digital Systems Laboratory Lecture #7, 8, 9 by Dr. Choon Kim CSE Department, UCSD Lecture #7,8,9 1 A Practical FSM Example: Small(Tiny) Computer System Design LAB4_tinycpu.pdf Lecture

More information

Module 5 - CPU Design

Module 5 - CPU Design Module 5 - CPU Design Lecture 1 - Introduction to CPU The operation or task that must perform by CPU is: Fetch Instruction: The CPU reads an instruction from memory. Interpret Instruction: The instruction

More information

Class Notes. Dr.C.N.Zhang. Department of Computer Science. University of Regina. Regina, SK, Canada, S4S 0A2

Class Notes. Dr.C.N.Zhang. Department of Computer Science. University of Regina. Regina, SK, Canada, S4S 0A2 Class Notes CS400 Part VI Dr.C.N.Zhang Department of Computer Science University of Regina Regina, SK, Canada, S4S 0A2 C. N. Zhang, CS400 83 VI. CENTRAL PROCESSING UNIT 1 Set 1.1 Addressing Modes and Formats

More information

General purpose registers These are memory units within the CPU designed to hold temporary data.

General purpose registers These are memory units within the CPU designed to hold temporary data. Von Neumann Architecture Single processor is used Each instruction in a program follows a linear sequence of fetch decode execute cycle Program and data are held in same main memory Stored program Concept

More information

DC57 COMPUTER ORGANIZATION JUNE 2013

DC57 COMPUTER ORGANIZATION JUNE 2013 Q2 (a) How do various factors like Hardware design, Instruction set, Compiler related to the performance of a computer? The most important measure of a computer is how quickly it can execute programs.

More information

UNIVERSITY OF CALIFORNIA, DAVIS Department of Electrical and Computer Engineering. EEC180B DIGITAL SYSTEMS II Fall 1999

UNIVERSITY OF CALIFORNIA, DAVIS Department of Electrical and Computer Engineering. EEC180B DIGITAL SYSTEMS II Fall 1999 UNIVERSITY OF CALIFORNIA, DAVIS Department of Electrical and Computer Engineering EEC180B DIGITAL SYSTEMS II Fall 1999 Lab 7-10: Micro-processor Design: Minimal Instruction Set Processor (MISP) Objective:

More information

Register Are Two Names For The Same Place

Register Are Two Names For The Same Place The Program Counter And The Instruction Register Are Two Names For The Same Place Hi I am wondering where the program counter goes when the program The interrupt will take place after the current iteration

More information

ASSEMBLY LANGUAGE MACHINE ORGANIZATION

ASSEMBLY LANGUAGE MACHINE ORGANIZATION ASSEMBLY LANGUAGE MACHINE ORGANIZATION CHAPTER 3 1 Sub-topics The topic will cover: Microprocessor architecture CPU processing methods Pipelining Superscalar RISC Multiprocessing Instruction Cycle Instruction

More information

Microcontroller Systems

Microcontroller Systems µcontroller systems 1 / 43 Microcontroller Systems Engineering Science 2nd year A2 Lectures Prof David Murray david.murray@eng.ox.ac.uk www.robots.ox.ac.uk/ dwm/courses/2co Michaelmas 2014 µcontroller

More information

Introduction to Computer Design

Introduction to Computer Design Introduction to Computer Design Memory (W 800-840) Basic processor operation Processor organization Executing instructions Processor implementation using VHDL 1 Random Access Memory data_in address read/write

More information

Computer Architecture Review CS 595

Computer Architecture Review CS 595 Computer Architecture Review CS 595 1 The von Neumann Model Von Neumann (1946) proposed that a fundamental model of a computer should include 5 primary components: Memory Processing Unit Input Device(s)

More information

Processor design - MIPS

Processor design - MIPS EASY Processor design - MIPS Q.1 What happens when a register is loaded? 1. The bits of the register are set to all ones. 2. The bit pattern in the register is copied to a location in memory. 3. A bit

More information

MARIE: An Introduction to a Simple Computer

MARIE: An Introduction to a Simple Computer MARIE: An Introduction to a Simple Computer Outline Learn the components common to every modern computer system. Be able to explain how each component contributes to program execution. Understand a simple

More information

Address Modes effective address

Address Modes effective address Address Modes The MARIE supports only three addressing modes: immediate, direct, and indirect. We are now going to discuss addressing modes in general. Most computers support quite a few of these modes.

More information

Digital Systems Laboratory

Digital Systems Laboratory 2014 Fall CSE140L Digital Systems Laboratory Lecture #8910 by Dr. Choon Kim CSE Department, UCSD Lecture #9 1 Practical Sequential Logic Design (Small computer/cpu example) LAB4_tinycpu.pdf Lecture #9

More information

CSE 141L Computer Architecture Lab Fall Lecture 3

CSE 141L Computer Architecture Lab Fall Lecture 3 CSE 141L Computer Architecture Lab Fall 2005 Lecture 3 Pramod V. Argade November 1, 2005 Fall 2005 CSE 141L Course Schedule Lecture # Date Day Lecture Topic Lab Due 1 9/27 Tuesday No Class 2 10/4 Tuesday

More information

The CPU and Memory. How does a computer work? How does a computer interact with data? How are instructions performed? Recall schematic diagram:

The CPU and Memory. How does a computer work? How does a computer interact with data? How are instructions performed? Recall schematic diagram: The CPU and Memory How does a computer work? How does a computer interact with data? How are instructions performed? Recall schematic diagram: 1 Registers A register is a permanent storage location within

More information

1. INTRODUCTION TO MICROPROCESSOR AND MICROCOMPUTER ARCHITECTURE:

1. INTRODUCTION TO MICROPROCESSOR AND MICROCOMPUTER ARCHITECTURE: 1. INTRODUCTION TO MICROPROCESSOR AND MICROCOMPUTER ARCHITECTURE: A microprocessor is a programmable electronics chip that has computing and decision making capabilities similar to central processing unit

More information

QUARTUS II Altera Corporation

QUARTUS II Altera Corporation QUARTUS II Quartus II Design Flow Design Entry Timing Constraints Synthesis Placement and Routing Timing, Area, Power Optimization Timing and Power Analyzer Optimized Design 2 Can I still use a Processor?

More information

Computer Organization II CMSC 3833 Lecture 33

Computer Organization II CMSC 3833 Lecture 33 Term MARIE Definition Machine Architecture that is Really Intuitive and Easy 4.8.1 The Architecture Figure s Architecture Characteristics: Binary, two s complement Stored program, fixed word length Word

More information

Memory General R0 Registers R1 R2. Input Register 1. Input Register 2. Program Counter. Instruction Register

Memory General R0 Registers R1 R2. Input Register 1. Input Register 2. Program Counter. Instruction Register CPU Organisation Central Processing Unit (CPU) Memory General R0 Registers R1 R2 ALU R3 Output Register Input Register 1 Input Register 2 Internal Bus Address Bus Data Bus Addr. $ 000 001 002 Program Counter

More information

UNIVERSITY OF HONG KONG DEPARTMENT OF ELECTRICAL AND ELECTRONIC ENGINEERING. Principles of Computer Operation

UNIVERSITY OF HONG KONG DEPARTMENT OF ELECTRICAL AND ELECTRONIC ENGINEERING. Principles of Computer Operation UNIVERSITY OF HONG KONG DEPARTMENT OF ELECTRICAL AND ELECTRONIC ENGINEERING Experiment PCO: Principles of Computer Operation Location: Part I Lab., CYC 102. Objective: The objective is to learn the basic

More information

1 MALP ( ) Unit-1. (1) Draw and explain the internal architecture of 8085.

1 MALP ( ) Unit-1. (1) Draw and explain the internal architecture of 8085. (1) Draw and explain the internal architecture of 8085. The architecture of 8085 Microprocessor is shown in figure given below. The internal architecture of 8085 includes following section ALU-Arithmetic

More information

MARIE: An Introduction to a Simple Computer

MARIE: An Introduction to a Simple Computer MARIE: An Introduction to a Simple Computer 4.2 CPU Basics The computer s CPU fetches, decodes, and executes program instructions. The two principal parts of the CPU are the datapath and the control unit.

More information

Outcomes. Lecture 13 - Introduction to the Central Processing Unit (CPU) Central Processing UNIT (CPU) or Processor

Outcomes. Lecture 13 - Introduction to the Central Processing Unit (CPU) Central Processing UNIT (CPU) or Processor Lecture 13 - Introduction to the Central Processing Unit (CPU) Outcomes What is a CPU? How are instructions prepared by the CPU before execution? What registers and operations are involved in this preparation

More information

Engr 303 Digital Logic Design Fall 2018

Engr 303 Digital Logic Design Fall 2018 Engr 303 Digital Logic Design Fall 2018 LAB 14 Single Cycle Computer You will implement the single cycle computer given in Figure 8-15 of the Chapter 8 handout. Implement these designs, compile, simulate,

More information

Computer Architecture 2/26/01 Lecture #

Computer Architecture 2/26/01 Lecture # Computer Architecture 2/26/01 Lecture #9 16.070 On a previous lecture, we discussed the software development process and in particular, the development of a software architecture Recall the output of the

More information

The register set differs from one computer architecture to another. It is usually a combination of general-purpose and special purpose registers

The register set differs from one computer architecture to another. It is usually a combination of general-purpose and special purpose registers Part (6) CPU BASICS A typical CPU has three major components: 1- register set, 2- arithmetic logic unit (ALU), 3- control unit (CU). The figure below shows the internal structure of the CPU. The CPU fetches

More information

VLSI Project. Phase 1 Documentation GROUP 7

VLSI Project. Phase 1 Documentation GROUP 7 GROUP 7 VLSI Project Phase 1 Documentation Group Members: 1. AbdelRahman Ahmed Amaar. 2. AbdelRahman Fawzy Mohamed. 3. AbdelRahman Nasr El-Shenawy. 4. Ayman Mohamed Abo El-Maaty. 24-Apr-12 Table of Contents

More information

MOXSYN. General Description. Features. Symbol

MOXSYN. General Description. Features. Symbol MOXSYN C68MX11 CPU General Description The C68MX11 CPU core is based on the Motorola M68HC11 microcontroller controller, but has an enhanced full 16 bit architecture, thus requiring less clock cycles for

More information

UNIVERSITY OF HONG KONG DEPARTMENT OF ELECTRICAL AND ELECTRONIC ENGINEERING

UNIVERSITY OF HONG KONG DEPARTMENT OF ELECTRICAL AND ELECTRONIC ENGINEERING UNIVERSITY OF HONG KONG DEPARTMENT OF ELECTRICAL AND ELECTRONIC ENGINEERING Experiment PCO: Principles of Computer Operation Location: Part I Lab., CYC 102. Objective: The objective is to learn the basic

More information

Mark II Aiken Relay Calculator

Mark II Aiken Relay Calculator Introduction to Embedded Microcomputer Systems Lecture 6.1 Mark II Aiken Relay Calculator 2.12. Tutorial 2. Arithmetic and logical operations format descriptions examples h 8-bit unsigned hexadecimal $00

More information

Assembly Language Programming of 8085

Assembly Language Programming of 8085 Assembly Language Programming of 8085 Topics 1. Introduction 2. Programming model of 8085 3. Instruction set of 8085 4. Example Programs 5. Addressing modes of 8085 6. Instruction & Data Formats of 8085

More information

COS 140: Foundations of Computer Science

COS 140: Foundations of Computer Science COS 140: Foundations of Computer Science CPU Organization and Assembly Language Fall 2018 CPU 3 Components of the CPU..................................................... 4 Registers................................................................

More information

Micro computer Organization

Micro computer Organization Micro computer Organization I Base Basic Components CPU SYSTEM BUSES VDD CLK RESET 1 MPU vs MCU Microprocessor Unit (MPU) CPU (called Microprocessor) is a die All components external to die Basically on

More information

ELCT 501: Digital System Design

ELCT 501: Digital System Design ELCT 501: Digital System Lecture 4: CAD tools (Continued) Dr. Mohamed Abd El Ghany, Basic VHDL Concept Via an Example Problem: write VHDL code for 1-bit adder 4-bit adder 2 1-bit adder Inputs: A (1 bit)

More information

CS 101, Mock Computer Architecture

CS 101, Mock Computer Architecture CS 101, Mock Computer Architecture Computer organization and architecture refers to the actual hardware used to construct the computer, and the way that the hardware operates both physically and logically

More information

EXPERIMENT NUMBER 11 REGISTERED ALU DESIGN

EXPERIMENT NUMBER 11 REGISTERED ALU DESIGN 11-1 EXPERIMENT NUMBER 11 REGISTERED ALU DESIGN Purpose Extend the design of the basic four bit adder to include other arithmetic and logic functions. References Wakerly: Section 5.1 Materials Required

More information

Chapter 4. Chapter 4 Objectives. MARIE: An Introduction to a Simple Computer

Chapter 4. Chapter 4 Objectives. MARIE: An Introduction to a Simple Computer Chapter 4 MARIE: An Introduction to a Simple Computer Chapter 4 Objectives Learn the components common to every modern computer system. Be able to explain how each component contributes to program execution.

More information

CHAPTER ASSEMBLY LANGUAGE PROGRAMMING

CHAPTER ASSEMBLY LANGUAGE PROGRAMMING CHAPTER 2 8051 ASSEMBLY LANGUAGE PROGRAMMING Registers Register are used to store information temporarily: A byte of data to be processed An address pointing to the data to be fetched The vast majority

More information

COSC 243. Computer Architecture 1. COSC 243 (Computer Architecture) Lecture 6 - Computer Architecture 1 1

COSC 243. Computer Architecture 1. COSC 243 (Computer Architecture) Lecture 6 - Computer Architecture 1 1 COSC 243 Computer Architecture 1 COSC 243 (Computer Architecture) Lecture 6 - Computer Architecture 1 1 Overview Last Lecture Flip flops This Lecture Computers Next Lecture Instruction sets and addressing

More information

ASSIGNMENT ECE514 (COMPUTER ORGANIZATION) ASSIGNMENT NO. 3

ASSIGNMENT ECE514 (COMPUTER ORGANIZATION) ASSIGNMENT NO. 3 ASSIGNMENT ECE514 (COMPUTER ORGANIZATION) ASSIGNMENT NO. 3 This is an individual assignment for ECE514. It carries a mark of 10%. The rubric of marks is given in Appendix 3. This assignment is about designing

More information

Introduction to CPU Design

Introduction to CPU Design ١ Introduction to CPU Design Computer Organization & Assembly Language Programming Dr Adnan Gutub aagutub at uqu.edu.sa [Adapted from slides of Dr. Kip Irvine: Assembly Language for Intel-Based Computers]

More information

SCRAM Introduction. Philipp Koehn. 19 February 2018

SCRAM Introduction. Philipp Koehn. 19 February 2018 SCRAM Introduction Philipp Koehn 19 February 2018 This eek 1 Fully work through a computer circuit assembly code Simple but Complete Random Access Machine (SCRAM) every instruction is 8 bit 4 bit for op-code:

More information

William Stallings Computer Organization and Architecture

William Stallings Computer Organization and Architecture William Stallings Computer Organization and Architecture Chapter 16 Control Unit Operations Rev. 3.2 (2009-10) by Enrico Nardelli 16-1 Execution of the Instruction Cycle It has many elementary phases,

More information

Lab 7: RPN Calculator

Lab 7: RPN Calculator University of Pennsylvania Department of Electrical and Systems Engineering ESE171 - Digital Design Laboratory Lab 7: RPN Calculator The purpose of this lab is: Purpose 1. To get familiar with the use

More information

ENGG3380: Computer Organization and Design Lab4: Buses and Peripheral Devices

ENGG3380: Computer Organization and Design Lab4: Buses and Peripheral Devices ENGG3380: Computer Organization and Design Lab4: Buses and Peripheral Devices School of Engineering, University of Guelph Winter 2017 1 Objectives: The purpose of this lab is : Learn basic bus design techniques.

More information

Chapter 3 : Control Unit

Chapter 3 : Control Unit 3.1 Control Memory Chapter 3 Control Unit The function of the control unit in a digital computer is to initiate sequences of microoperations. When the control signals are generated by hardware using conventional

More information

Architecture & Instruction set of 8085 Microprocessor and 8051 Micro Controller

Architecture & Instruction set of 8085 Microprocessor and 8051 Micro Controller of 8085 microprocessor 8085 is pronounced as "eighty-eighty-five" microprocessor. It is an 8-bit microprocessor designed by Intel in 1977 using NMOS technology. It has the following configuration 8-bit

More information

PROGRAM CONTROL UNIT (PCU)

PROGRAM CONTROL UNIT (PCU) nc. SECTION 5 PROGRAM CONTROL UNIT (PCU) MOTOROLA PROGRAM CONTROL UNIT (PCU) 5-1 nc. SECTION CONTENTS 5.1 INTRODUCTION........................................ 5-3 5.2 PROGRAM COUNTER (PC)...............................

More information

538 Lecture Notes Week 1

538 Lecture Notes Week 1 538 Clowes Lecture Notes Week 1 (Sept. 6, 2017) 1/10 538 Lecture Notes Week 1 Announcements No labs this week. Labs begin the week of September 11, 2017. My email: kclowes@ryerson.ca Counselling hours:

More information

Have difficulty identifying any products Not incorporating embedded processor FPGA or CPLD In one form or another

Have difficulty identifying any products Not incorporating embedded processor FPGA or CPLD In one form or another Introduction Embedded systems Continue pervasive expansion into Vast variety of electronic systems and products Aircraft and automobiles games and medical equipment Have difficulty identifying any products

More information

Basics of Microprocessor

Basics of Microprocessor Unit 1 Basics of Microprocessor 1. Microprocessor Microprocessor is a multipurpose programmable integrated device that has computing and decision making capability. This semiconductor IC is manufactured

More information

CSEE W4840 Embedded System Design Lab 1

CSEE W4840 Embedded System Design Lab 1 CSEE W4840 Embedded System Design Lab 1 Stephen A. Edwards Due January 31, 2008 Abstract Learn to use the Altera Quartus development envrionment and the DE2 boards by implementing a small hardware design

More information

Chapter 5. Computer Architecture Organization and Design. Computer System Architecture Database Lab, SANGJI University

Chapter 5. Computer Architecture Organization and Design. Computer System Architecture Database Lab, SANGJI University Chapter 5. Computer Architecture Organization and Design Computer System Architecture Database Lab, SANGJI University Computer Architecture Organization and Design Instruction Codes Computer Registers

More information

CPU ARCHITECTURE. QUESTION 1 Explain how the width of the data bus and system clock speed affect the performance of a computer system.

CPU ARCHITECTURE. QUESTION 1 Explain how the width of the data bus and system clock speed affect the performance of a computer system. CPU ARCHITECTURE QUESTION 1 Explain how the width of the data bus and system clock speed affect the performance of a computer system. ANSWER 1 Data Bus Width the width of the data bus determines the number

More information

CS 265. Computer Architecture. Wei Lu, Ph.D., P.Eng.

CS 265. Computer Architecture. Wei Lu, Ph.D., P.Eng. CS 265 Computer Architecture Wei Lu, Ph.D., P.Eng. Part 3: von Neumann Architecture von Neumann Architecture Our goal: understand the basics of von Neumann architecture, including memory, control unit

More information

CHAPTER 5 Basic Organization and Design Outline Instruction Codes Computer Registers Computer Instructions Timing and Control Instruction Cycle

CHAPTER 5 Basic Organization and Design Outline Instruction Codes Computer Registers Computer Instructions Timing and Control Instruction Cycle CS 224: Computer Organization S.KHABET CHAPTER 5 Basic Organization and Design Outline Instruction Codes Computer Registers Computer Instructions Timing and Control Instruction Cycle Memory Reference Instructions

More information

MICROPROGRAMMED CONTROL

MICROPROGRAMMED CONTROL MICROPROGRAMMED CONTROL Hardwired Control Unit: When the control signals are generated by hardware using conventional logic design techniques, the control unit is said to be hardwired. Micro programmed

More information

Laboratory Exercise 3 Comparative Analysis of Hardware and Emulation Forms of Signed 32-Bit Multiplication

Laboratory Exercise 3 Comparative Analysis of Hardware and Emulation Forms of Signed 32-Bit Multiplication Laboratory Exercise 3 Comparative Analysis of Hardware and Emulation Forms of Signed 32-Bit Multiplication Introduction All processors offer some form of instructions to add, subtract, and manipulate data.

More information

Concurrent & Sequential Stmts. (Review)

Concurrent & Sequential Stmts. (Review) VHDL Introduction, Part II Figures in this lecture are from: Rapid Prototyping of Digital Systems, Second Edition James O. Hamblen & Michael D. Furman, Kluwer Academic Publishers, 2001, ISBN 0-7923-7439-

More information

Design Problem 5 Solution

Design Problem 5 Solution CSE 260 Digital Computers: Organization and Logical Design Design Problem 5 Solution Jon Turner Due 5/3/05 1. (150 points) In this problem, you are to extend the design of the basic processor to implement

More information

Microprocessors. Microprocessors and rpeanut. Memory. Eric McCreath

Microprocessors. Microprocessors and rpeanut. Memory. Eric McCreath Microprocessors Microprocessors and rpeanut Eric McCreath There are many well known microprocessors: Intel x86 series, Pentium, Celeron, Xeon, etc. AMD Opteron, Intel Itanium, Motorola 680xx series, PowerPC,

More information

Chapter 2 68HC11 Based Temperature Monitoring Board

Chapter 2 68HC11 Based Temperature Monitoring Board Chapter 2 68HC11 Based Temperature Monitoring Board Before we discuss the testing approach, it is helpful to know the system on which it is being applied. In this chapter, we will describe the design and

More information

Microprocessors and rpeanut. Eric McCreath

Microprocessors and rpeanut. Eric McCreath Microprocessors and rpeanut Eric McCreath Microprocessors There are many well known microprocessors: Intel x86 series, Pentium, Celeron, Xeon, etc. AMD Opteron, Intel Itanium, Motorola 680xx series, PowerPC,

More information

VARDHAMAN COLLEGE OF ENGINEERING (AUTONOMOUS) Shamshabad, Hyderabad

VARDHAMAN COLLEGE OF ENGINEERING (AUTONOMOUS) Shamshabad, Hyderabad Introduction to MS-DOS Debugger DEBUG In this laboratory, we will use DEBUG program and learn how to: 1. Examine and modify the contents of the 8086 s internal registers, and dedicated parts of the memory

More information

Grundlagen Microcontroller Processor Core. Günther Gridling Bettina Weiss

Grundlagen Microcontroller Processor Core. Günther Gridling Bettina Weiss Grundlagen Microcontroller Processor Core Günther Gridling Bettina Weiss 1 Processor Core Architecture Instruction Set Lecture Overview 2 Processor Core Architecture Computes things > ALU (Arithmetic Logic

More information

MCPU - A Minimal 8Bit CPU in a 32 Macrocell CPLD.

MCPU - A Minimal 8Bit CPU in a 32 Macrocell CPLD. MCPU - A Minimal 8Bit CPU in a 32 Macrocell CPLD. Tim Böscke, cpldcpu@opencores.org 02/2001 - Revised 10/2004 This documents describes a successful attempt to fit a simple VHDL - CPU into a 32 macrocell

More information

Major and Minor States

Major and Minor States Major and Minor States We now consider the micro operations and control signals associated with the execution of each instruction in the ISA. The execution of each instruction is divided into three phases.

More information

Architecture Project Phase (1)

Architecture Project Phase (1) Objective Cairo University CMP 301B Faculty of Engineering Spring 2013 Computer Engineering Department Architecture Project Phase (1) In this phase, it is required to design and implement a simple pipelined

More information

QUESTION BANK. EE 6502 / Microprocessor and Microcontroller. Unit I Processor. PART-A (2-Marks)

QUESTION BANK. EE 6502 / Microprocessor and Microcontroller. Unit I Processor. PART-A (2-Marks) QUESTION BANK EE 6502 / Microprocessor and Microcontroller Unit I- 8085 Processor PART-A (2-Marks) YEAR/SEM : III/V 1. What is meant by Level triggered interrupt? Which are the interrupts in 8085 level

More information

CPE 323 MSP430 INSTRUCTION SET ARCHITECTURE (ISA)

CPE 323 MSP430 INSTRUCTION SET ARCHITECTURE (ISA) CPE 323 MSP430 INSTRUCTION SET ARCHITECTURE (ISA) Aleksandar Milenković Email: milenka@uah.edu Web: http://www.ece.uah.edu/~milenka Objective Introduce MSP430 Instruction Set Architecture (Class of ISA,

More information

Using Library Modules in VHDL Designs

Using Library Modules in VHDL Designs Using Library Modules in VHDL Designs This tutorial explains how Altera s library modules can be included in VHDL-based designs, which are implemented by using the Quartus R II software. Contents: Example

More information

This simulated machine consists of four registers that will be represented in your software with four global variables.

This simulated machine consists of four registers that will be represented in your software with four global variables. CSCI 4717 Computer Architecture Project 1: Two-Stage Instuction Decoder Due: Monday, September 21, 26 at 11:59 PM What to submit: You will be submitting a text file containing two C functions, fetchnextinstruction()

More information