Basic Von Neumann Designs

Size: px
Start display at page:

Download "Basic Von Neumann Designs"

Transcription

1 COMP 273 Assignment #2 Part One Due: Monday October 12, 2009 at 23:55 on Web CT Mini-Project Due: Monday November 9, 2009 at 23:55 on Web CT Basic Von Neumann Designs This assignment is divided into two sections. The first section is due in two weeks and you must answer these questions on your own. The second section is a mini-project that you are to work on in a team of 2 or 3 students. The mini-project is due in 6 weeks. Everything must be submitted to Web CT. This assignment has two submission boxes. One box is for Part One, and is named Assignment 2. The other box is for the Mini-Project, and it is named Mini Project. Everyone must submit his or her own unique solution to the Part One assignment box. In the case of the mini-project, everyone in your team must submit the same submission files in his or her own Mini-Project assignment box. Make sure that you include a text file with the names of all your team members and their student ID numbers. This will help to speed up grading and make sure that everyone in your team receives the same grade. PART ONE (20 points) Please answer these questions on your own and submit your own unique solution to Web CT. QUESTION 1: (6 Points) In class we talked about flat and pipelined CPU control units. Pipelined CPUs improve the performance of the CPU as compared to classical CPUs. This is true as long as there are no faults. Derive two formulas: The first formula expresses the performance improvement experienced in a pipelined processor assuming no faults and all instructions are relatively similar. The second formula expresses the performance loss due to a single fault (keep in mind that this must take into account where and why the fault occurred you will need to express this as a probability). QUESTION 2: (5 Points) Given the classic CPU design as presented in class, write the sequence of micro-operations required to do the following: a) add an immediate operand with general purpose register #5 and store it into GP register #6 b) execute the instruction at the address stored in general purpose register #2 c) execute the instruction BEQ R1,R2,LABEL Where BEQ means Branch If Equal An example micro-operation is written as follows: MBR Memory(MAR) : MBR loaded from RAM indexed by MAR Y MBR : MBR copied into register Y Z 5 + (Y) : register Z = 5 + Memory(Y) Prof. Joseph Vybihal Page 1 of 6

2 QUESTION 3: (6 Points) The following table represents a portion of memory from a computer. Refer to this table for the following questions: Address Data What binary value does location 3 and 6 contain? 2. The binary values within each location can be interpreted in many ways. We have seen that binary values can represent unsigned numbers, 2 s complement signed numbers, floatingpoint numbers, and so forth. Interpret location 0 and 1 as 2 s complement numbers Interpret location 4 as an ASCII value Interpret location 5 as an unsigned value Interpret location 5 as an address In the Von Neumann model, the contents of memory can also be an instruction. What instruction and parameters is stored in location 0 given the following instruction format: LW DESTINATION SOURCE OFFSET 0001 XXX XXX XXXXXX QUESTION 4: (3 Points) Answer the following questions: Where DESTINATION and SOURCE are unsigned binary integer representing a register. OFFSET is a signed binary integer. The source register s contents is added to the offset to get the address in memory who s data will be put into the destination register. LW means load word. The X represents a single bit. A. If a machine cycle is 2 nanoseconds (i.e. 2, 10-9 seconds), how many machine cycles occur each second? B. If the computer requires on the average eight cycles to process each instruction, and the computer processes instructions one at a time from beginning to end, how many instructions can the computer process in 1 second? C. In many of today s microprocessors, to speed up execution, a pipeline is formed to execute the instructions in stages. If we have an 8-stage pipeline and we assume it takes 1 cycle to pass through each stage, how many instructions can our eight cycle per instruction computer execute in 1 second? Prof. Joseph Vybihal Page 2 of 6

3 MINI-PROJECT (10 points + 3 bonus points) Assemble a team of 2 or 3 students, 3 are preferable, who will work together to construct the solution to this mini-project. Everyone in your team must submit the same thing into his or her Mini-Project assignment box on Web CT. Make sure to include a text file identifying your team members by name and ID number. Include your own name and ID number in this list. The what-to-hand-in section details how this submission should be constructed. This mini-project is segmented into two parts: the basic question and the bonus question. All teams must do the basic question. The bonus question is available if you found the basic question too easy. You must construct your mini-project using LOGISIM. BASIC QUESTION Draw and implement the circuit diagram for a Classical CPU. Your CPU s must include the following micro architecture: Component 1: Four general purpose registers Component 2: An ALU that performs integer addition, subtraction and comparisons with zero Component 3: A 4-bit status status register overflow, underflow, negative, and zero Component 4: PC with increment circuit Component 5: IR with CU Component 6: A 4-way cache with four instruction guess storing 16 words Component 7: The 20 word RAM (this is external to the CPU) with MAR, MDR and R/W bit Component 8: A private bus that can be used for a fast 4-word download to the instruction cache Component 9: A clock, you can assume that the entire machines runs off of a single clock Your CPU will operate in the following way: 1. If no more instructions in cache then fast-download from RAM 4 words into the cache at PC 2. IR = Cache(PC) 3. CU(IR) causes the CPU to carry out the instruction 4. Go to step 1 Important! - Do not be wasteful. Optimize your design in such a way that you use the minimum number of bits and the least number of cycles. In order to make the drawings easier you may use black boxes in the following cases: Only after you have designed a full sample circuit in detail you can then use it as a black box. You also do not need to design an entire circuit if you can convince me that the rest of the circuit is identical to the part you just drew. You then can create a black box to represent the complete circuit. You can reuse black-boxed components in other areas of your diagram, as you did in your previous assignment, if-and-only-if you drew one black box in detail. Your CPU must have the following elements: 1. A word is equal to a byte 2. The CPU has a sequencer that controls the CPU and understands the following machine language instructions: 2.1. ADD ADD Rx, Ry (the result is stored in A-OUT) 2.2. STORE STR Rx, Address (the contents of Rx is put into RAM at Address) 2.3. LOAD LD Ry, Address (the contents at Address from RAM is put into Ry) 2.4. Branch if Zero BZ Rx, Address (if Rx is zero then go to Address) 2.5. COMP Rx Takes the value in Rx and makes it s 2 s complement, stored in A-OUT 2.6. SUB Rx, Ry A-OUT = Rx Ry, using 2 s complement addition Prof. Joseph Vybihal Page 3 of 6

4 2.7. STOP RETURN (mysteriously, the program stops running) You must supply your own binary definition for these instructions (i.e. its op-code, parameters, etc.) Rx and Ry can be: Any of the 4 general purpose, A-OUT or Status registers R0 and R1 can be used for indirect addressing but not R2 nor R3 3. The CPU Sequencer must be able to implement the above 5 instructions. 4. An ALU System, consisting of: 4.1. LEFT and RIGHT input registers 4.2. A-OUT resultant register 4.3. A 4-bit STATUS register 4.4. The ALU can only perform 8-bit signed integer addition and subtraction 4.5. Subtraction is performed by 2's complement addition 5. You do not need to concern yourself with how the first instruction got into the PC. You do not need to concern yourself with how information arrived in the RAM in the first place. Just assume that the PC is initialized to zero and RAM has a program with data already at address zero in the RAM. 6. Please provide a simple program written in your language that can fit in your memory and be executed by your CPU. We will execute that program when we test your design. The program must be at least 10 instructions long. Other than the items listed above, you are free to design your CPU in any way you like. Please provide a name for your CPU (something cool would be nice). Do not only hand in the LOGISIM design. Also submit a simple document that provides the following: A black box summary of your entire CPU. This should fit on a single printed page. It would be a high-level view of the entire CPU. You should provide an additional page of text describing how it functions. Then submit your LOGISIM CPU and any black box files (separate from this document). Your document should give some information about each LOGISIM file you uploaded, what it is and how it should be used. The very last page of your document should be your assembler-like program and a description of your assembler language. BONUS QUESTION Listed below are three possible upgrades to your CPU. Each upgrade is worth 1 bonus point. You do not need to answer this in any particular order. Select 1, 2 or all three features to implement. A calculator-like 4-digit digital display This display is connected to a special 8-bit display register named DOUT. Any value stored in that register is automatically displayed. The register s default value is zero, but once loaded it keeps the value until changed by the program. A new instruction is needed for this: DOUT Rx. This will move the contents of the general purpose register into the DOUT register. ON/OFF Switch Provide circuitry that combines the clock with an ON/OFF switch for the computer. When the switch is on and the clock ticks the PC is set to zero and the computer starts executing the program in memory. How the program got there, we don t know. But you must initialize the PC to zero. Implement an additional computer instruction: HALT. This command turns off the computer. Multiplication Upgrade the ALU so that it can multiply! There is an easy way and a hard way to do this Provide an additional instruction: MULT Rx, Ry. The result it stored in A-OUT. Having so many instruction will require you to be very clever in your instruction formats. Prof. Joseph Vybihal Page 4 of 6

5 WHAT TO HAND IN Everything should be handed in electronically on Web CT. For PART ONE, each student is to submit his or her own unique solution to these questions on Web CT. Please submit this as a WORD, PDF or JPG file. Please submit this in the box called Assignment #2. You have two weeks to answer these questions. For the MINI PROJECT, students must work in teams of 2 or 3 people. They are all to hand in the same thing to Web CT. In addition to his or her solution, please also submit a text file identifying each team member by name and student ID number (each team member does this). Each person in the team will receive the same grade. This list will help us during grading. Submit your document as a WORD, EXCEL, PDF or JPG file. Submit your design as LOGISIM file(s). We will execute these files to confirm that your design runs. Copied files will lose all grades. Make sure to submit this in the box called MINI-PROJECT. You have 6 weeks to complete this mini-project. Name your CPU. Mini-Project Document This is a project submission and therefore must be presentable and professional in its looks. I require the following elements: 1. A cover page 1.1. Project title 1.2. Name of each team member with ID number 2. Table of contents 3. Section 1: Overview of CPU 3.1. High level diagram of the entire CPU in one picture 3.2. Overview of its functionality and flow 4. Section 2: LOGISIM File Breakdown 4.1. Using a top-down approach, describe each part of the CPU 5. Section 3: The Assembly Language 5.1. Define your instructions in assembly 5.2. Define your instruction bit formatting 5.3. Describe how you instructions execute over the CPU 5.4. Provide a sample program 6. Section 4: Appendix (optional) 6.1. The place for miscellaneous other things Prof. Joseph Vybihal Page 5 of 6

6 HOW IT WILL BE GRADED This assignment is worth 20 points, the mini-project is worth 15 points plus 3 bonus points. PART ONE is worth 20 points, graded proportionally Question 1: 6 point Question 2: 5 points Question 3: 6 points Question 4: 3 points PART TWO the Mini-Project is worth 15 points + 3 bonus points. Graded proportionally Design 10 points Running program 5 points Bonus points (3 in total) for mini-project 1 point for each bonus implemented correctly, 0 points otherwise. The entire bonus part (bonus question 1, or 2, or 3) must be implemented and working correctly to receive your bonus point. Prof. Joseph Vybihal Page 6 of 6

Midterm Examination - Answers October 25, 2012 In Class Instructor: Joseph Vybihal

Midterm Examination - Answers October 25, 2012 In Class Instructor: Joseph Vybihal McGill University School of Computer Science Introduction to Computer Systems Midterm Examination - Answers October 25, 2012 In Class Instructor: Joseph Vybihal Student Name: Student ID: Instructions No

More information

Introduction to Computer Systems COMP-273 Assignment #1 Due: September 24, 2009 on Web CT at 23:55

Introduction to Computer Systems COMP-273 Assignment #1 Due: September 24, 2009 on Web CT at 23:55 Introduction to Computer Systems COMP-273 Assignment #1 Due: September 24, 2009 on Web CT at 23:55 The purpose of this first assignment is to develop the fundamental skills needed when constructing solutions

More information

THE MICROPROCESSOR Von Neumann s Architecture Model

THE MICROPROCESSOR Von Neumann s Architecture Model THE ICROPROCESSOR Von Neumann s Architecture odel Input/Output unit Provides instructions and data emory unit Stores both instructions and data Arithmetic and logic unit Processes everything Control unit

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

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

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

Advanced Parallel Architecture Lesson 3. Annalisa Massini /2015

Advanced Parallel Architecture Lesson 3. Annalisa Massini /2015 Advanced Parallel Architecture Lesson 3 Annalisa Massini - 2014/2015 Von Neumann Architecture 2 Summary of the traditional computer architecture: Von Neumann architecture http://williamstallings.com/coa/coa7e.html

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

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

Faculty of Engineering Systems & Biomedical Dept. First Year Cairo University Sheet 6 Computer I

Faculty of Engineering Systems & Biomedical Dept. First Year Cairo University Sheet 6 Computer I aculty of Engineering Systems & Biomedical Dept. irst Year Cairo University Sheet 6 Computer I 1. Choose rue or alse for each of the following statements a) In a direct addressing mode instruction, the

More information

Introduction to Computer Engineering. CS/ECE 252 Prof. Mark D. Hill Computer Sciences Department University of Wisconsin Madison

Introduction to Computer Engineering. CS/ECE 252 Prof. Mark D. Hill Computer Sciences Department University of Wisconsin Madison Introduction to Computer Engineering CS/ECE 252 Prof. Mark D. Hill Computer Sciences Department University of Wisconsin Madison Chapter 4 The Von Neumann Model The Stored Program Computer 1943: ENIAC Presper

More information

Processing Unit CS206T

Processing Unit CS206T Processing Unit CS206T Microprocessors The density of elements on processor chips continued to rise More and more elements were placed on each chip so that fewer and fewer chips were needed to construct

More information

Advanced Parallel Architecture Lesson 3. Annalisa Massini /2015

Advanced Parallel Architecture Lesson 3. Annalisa Massini /2015 Advanced Parallel Architecture Lesson 3 Annalisa Massini - Von Neumann Architecture 2 Two lessons Summary of the traditional computer architecture Von Neumann architecture http://williamstallings.com/coa/coa7e.html

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

Chapter 4 The Von Neumann Model

Chapter 4 The Von Neumann Model Chapter 4 The Von Neumann Model The Stored Program Computer 1943: ENIAC Presper Eckert and John Mauchly -- first general electronic computer. (or was it John V. Atananasoff in 1939?) Hard-wired program

More information

CS 31: Intro to Systems Digital Logic. Kevin Webb Swarthmore College February 2, 2016

CS 31: Intro to Systems Digital Logic. Kevin Webb Swarthmore College February 2, 2016 CS 31: Intro to Systems Digital Logic Kevin Webb Swarthmore College February 2, 2016 Reading Quiz Today Hardware basics Machine memory models Digital signals Logic gates Circuits: Borrow some paper if

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

Part 1 (70% of grade for homework 2): MIPS Programming: Simulating a simple computer

Part 1 (70% of grade for homework 2): MIPS Programming: Simulating a simple computer CS 465 - Homework 2 Fall 2016 Profs. Daniel A. Menasce and Yutao Zhong Team Allowed: maximum of two per team. State clearly team member names and GMU IDs as comments in source code and each page of submitted

More information

COSC121: Computer Systems: Review

COSC121: Computer Systems: Review COSC121: Computer Systems: Review Jeremy Bolton, PhD Assistant Teaching Professor Constructed using materials: - Patt and Patel Introduction to Computing Systems (2nd) - Patterson and Hennessy Computer

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

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

Faculty of Science FINAL EXAMINATION

Faculty of Science FINAL EXAMINATION Faculty of Science FINAL EXAMINATION COMPUTER SCIENCE COMP 273 INTRODUCTION TO COMPUTER SYSTEMS Examiner: Prof. Michael Langer April 18, 2012 Associate Examiner: Mr. Joseph Vybihal 2 P.M. 5 P.M. STUDENT

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

CPU MINI PROJECT. Gen Kazama David Kawrykow COMP 273 Professor Vybihal CPU Mini Project

CPU MINI PROJECT. Gen Kazama David Kawrykow COMP 273 Professor Vybihal CPU Mini Project CPU MINI PROJECT Gen Kazama 260181388 David Kawrykow 260186503 COMP 273 Professor Vybihal CPU Mini Project Table of Contents Overview of CPU Section 1.0.0 CPU Diagram Section 1.1.0 1-Page CPU Overview

More information

CS 31: Intro to Systems Digital Logic. Kevin Webb Swarthmore College February 3, 2015

CS 31: Intro to Systems Digital Logic. Kevin Webb Swarthmore College February 3, 2015 CS 31: Intro to Systems Digital Logic Kevin Webb Swarthmore College February 3, 2015 Reading Quiz Today Hardware basics Machine memory models Digital signals Logic gates Circuits: Borrow some paper if

More information

von Neumann Architecture Basic Computer System Early Computers Microprocessor Reading Assignment An Introduction to Computer Architecture

von Neumann Architecture Basic Computer System Early Computers Microprocessor Reading Assignment An Introduction to Computer Architecture Reading Assignment EEL 4744C: Microprocessor Applications Lecture 1 Part 1 An Introduction to Computer Architecture Microcontrollers and Microcomputers: Chapter 1, Appendix A, Chapter 2 Software and Hardware

More information

Basic Computer System. von Neumann Architecture. Reading Assignment. An Introduction to Computer Architecture. EEL 4744C: Microprocessor Applications

Basic Computer System. von Neumann Architecture. Reading Assignment. An Introduction to Computer Architecture. EEL 4744C: Microprocessor Applications Reading Assignment EEL 4744C: Microprocessor Applications Lecture 1 Part 1 An Introduction to Computer Architecture Microcontrollers and Microcomputers: Chapter 1, Appendix A, Chapter 2 Software and Hardware

More information

Chapter 4 The Von Neumann Model

Chapter 4 The Von Neumann Model Chapter 4 The Von Neumann Model The Stored Program Computer 1943: ENIAC Presper Eckert and John Mauchly -- first general electronic computer. (or was it John V. Atanasoff in 1939?) Hard-wired program --

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

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

Copyright The McGraw-Hill Companies, Inc. Permission required for reproduction or display. Computing Layers

Copyright The McGraw-Hill Companies, Inc. Permission required for reproduction or display. Computing Layers Chapter 4 The Von Neumann Model Original slides from Gregory Byrd, North Carolina State University Modified slides by C. Wilcox, S. Rajopadhye, Colorado State University Computing Layers Problems Algorithms

More information

Wednesday, February 4, Chapter 4

Wednesday, February 4, Chapter 4 Wednesday, February 4, 2015 Topics for today Introduction to Computer Systems Static overview Operation Cycle Introduction to Pep/8 Features of the system Operational cycle Program trace Categories of

More information

COMP2121: Microprocessors and Interfacing. Instruction Set Architecture (ISA)

COMP2121: Microprocessors and Interfacing. Instruction Set Architecture (ISA) COMP2121: Microprocessors and Interfacing Instruction Set Architecture (ISA) http://www.cse.unsw.edu.au/~cs2121 Lecturer: Hui Wu Session 2, 2017 1 Contents Memory models Registers Data types Instructions

More information

COMP MIPS instructions 2 Feb. 8, f = g + h i;

COMP MIPS instructions 2 Feb. 8, f = g + h i; Register names (save, temporary, zero) From what I have said up to now, you will have the impression that you are free to use any of the 32 registers ($0,..., $31) in any instruction. This is not so, however.

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

ENCM 369 Winter 2019 Lab 6 for the Week of February 25

ENCM 369 Winter 2019 Lab 6 for the Week of February 25 page of ENCM 369 Winter 29 Lab 6 for the Week of February 25 Steve Norman Department of Electrical & Computer Engineering University of Calgary February 29 Lab instructions and other documents for ENCM

More information

Chapter 4 The Von Neumann Model

Chapter 4 The Von Neumann Model Chapter 4 The Von Neumann Model The Stored Program Computer 1943: ENIAC Presper Eckert and John Mauchly -- first general electronic computer. (or was it John V. Atanasoff in 1939?) Hard-wired program --

More information

Where Does The Cpu Store The Address Of The

Where Does The Cpu Store The Address Of The Where Does The Cpu Store The Address Of The Next Instruction To Be Fetched The three most important buses are the address, the data, and the control buses. The CPU always knows where to find the next instruction

More information

CPU. Fall 2003 CSE 207 Digital Design Project #4 R0 R1 R2 R3 R4 R5 R6 R7 PC STATUS IR. Control Logic RAM MAR MDR. Internal Processor Bus

CPU. Fall 2003 CSE 207 Digital Design Project #4 R0 R1 R2 R3 R4 R5 R6 R7 PC STATUS IR. Control Logic RAM MAR MDR. Internal Processor Bus http://www.engr.uconn.edu/~barry/cse207/fa03/project4.pdf Page 1 of 16 Fall 2003 CSE 207 Digital Design Project #4 Background Microprocessors are increasingly common in every day devices. Desktop computers

More information

COSC121: Computer Systems: Review

COSC121: Computer Systems: Review COSC121: Computer Systems: Review Jeremy Bolton, PhD Assistant Teaching Professor Constructed using materials: - Patt and Patel Introduction to Computing Systems (2nd) - Patterson and Hennessy Computer

More information

CS 2461: Computer Architecture I

CS 2461: Computer Architecture I Computer Architecture is... CS 2461: Computer Architecture I Instructor: Prof. Bhagi Narahari Dept. of Computer Science Course URL: www.seas.gwu.edu/~bhagiweb/cs2461/ Instruction Set Architecture Organization

More information

CPU Structure and Function

CPU Structure and Function Computer Architecture Computer Architecture Prof. Dr. Nizamettin AYDIN naydin@yildiz.edu.tr nizamettinaydin@gmail.com http://www.yildiz.edu.tr/~naydin CPU Structure and Function 1 2 CPU Structure Registers

More information

2.2 THE MARIE Instruction Set Architecture

2.2 THE MARIE Instruction Set Architecture 2.2 THE MARIE Instruction Set Architecture MARIE has a very simple, yet powerful, instruction set. The instruction set architecture (ISA) of a machine specifies the instructions that the computer can perform

More information

COMP 303 MIPS Processor Design Project 3: Simple Execution Loop

COMP 303 MIPS Processor Design Project 3: Simple Execution Loop COMP 303 MIPS Processor Design Project 3: Simple Execution Loop Due date: November 20, 23:59 Overview: In the first three projects for COMP 303, you will design and implement a subset of the MIPS32 architecture

More information

ELEC 5200/6200 Computer Architecture and Design Spring 2017 Lecture 4: Datapath and Control

ELEC 5200/6200 Computer Architecture and Design Spring 2017 Lecture 4: Datapath and Control ELEC 52/62 Computer Architecture and Design Spring 217 Lecture 4: Datapath and Control Ujjwal Guin, Assistant Professor Department of Electrical and Computer Engineering Auburn University, Auburn, AL 36849

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

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

IB Computer Science Topic.2-

IB Computer Science Topic.2- Topic.2- Computer Organization Designed by: Allan Lawson Sources: Online Materials, thanks for all Topic 2.1.1 Computer Architecture Outline the architecture of a central processing unit (CPU) and the

More information

These actions may use different parts of the CPU. Pipelining is when the parts run simultaneously on different instructions.

These actions may use different parts of the CPU. Pipelining is when the parts run simultaneously on different instructions. MIPS Pipe Line 2 Introduction Pipelining To complete an instruction a computer needs to perform a number of actions. These actions may use different parts of the CPU. Pipelining is when the parts run simultaneously

More information

Review. Steps to writing (stateless) circuits: Create a logic function (one per output)

Review. Steps to writing (stateless) circuits: Create a logic function (one per output) MIPS ALU Review Steps to writing (stateless) circuits: Create a truth table Go through all different combinations of inputs For each row, generate each output based on the problem description Create a

More information

Wednesday, September 13, Chapter 4

Wednesday, September 13, Chapter 4 Wednesday, September 13, 2017 Topics for today Introduction to Computer Systems Static overview Operation Cycle Introduction to Pep/9 Features of the system Operational cycle Program trace Categories of

More information

COMPUTER SYSTEM. COMPUTER SYSTEM IB DP Computer science Standard Level ICS3U. COMPUTER SYSTEM IB DP Computer science Standard Level ICS3U

COMPUTER SYSTEM. COMPUTER SYSTEM IB DP Computer science Standard Level ICS3U. COMPUTER SYSTEM IB DP Computer science Standard Level ICS3U C A N A D I A N I N T E R N A T I O N A L S C H O O L O F H O N G K O N G 5.1 Introduction 5.2 Components of a Computer System Algorithm The Von Neumann architecture is based on the following three characteristics:

More information

Computer Organization and Technology Processor and System Structures

Computer Organization and Technology Processor and System Structures Computer Organization and Technology Processor and System Structures Assoc. Prof. Dr. Wattanapong Kurdthongmee Division of Computer Engineering, School of Engineering and Resources, Walailak University

More information

Part A Questions 1. What is an ISP? ISP stands for Instruction Set Processor. This unit is simply called as processor which executes machine instruction and coordinates the activities of other units..

More information

An Introduction to Computers and Java CSC 121 Spring 2015 Howard Rosenthal

An Introduction to Computers and Java CSC 121 Spring 2015 Howard Rosenthal An Introduction to Computers and Java CSC 121 Spring 2015 Howard Rosenthal Lesson Goals Learn the basic terminology of a computer system Understand the basics of high level languages, including java Understand

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

SECONDARY SCHOOL, L-IMRIEĦEL HALF YEARLY EXAMINATIONS 2016/2017

SECONDARY SCHOOL, L-IMRIEĦEL HALF YEARLY EXAMINATIONS 2016/2017 SECONDARY SCHOOL, L-IMRIEĦEL HALF YEARLY EXAMINATIONS 2016/2017 YEAR: 10 Computing Time: 1½ Hr. Name: Class: Instructions: 1. Answer all the questions in the space provided on this paper. 2. Calculators

More information

Systems Architecture

Systems Architecture Systems Architecture Friday, 27 April 2018 Systems Architecture Today s Objectives: 1. To be able to explain the purposes and uses of embedded systems. 2. To be able to describe how the CPU executes instructions

More information

Machine Language and Assembly Language

Machine Language and Assembly Language Machine Language and Assembly Language In the following lectures, we will learn: How instructions are represented and decoded Introduction to different types of Addressing Modes Most commonly used assembly

More information

ECE 2300 Digital Logic & Computer Organization. More Single Cycle Microprocessor

ECE 2300 Digital Logic & Computer Organization. More Single Cycle Microprocessor ECE 23 Digital Logic & Computer Organization Spring 28 More Single Cycle Microprocessor Lecture 6: HW6 due tomorrow Announcements Prelim 2: Tues April 7, 7:3pm, Phillips Hall Coverage: Lectures 8~6 Inform

More information

--------------------------------------------------------------------------------------------------------------------- 1. Objectives: Using the Logisim simulator Designing and testing a Pipelined 16-bit

More information

EEL 5722C Field-Programmable Gate Array Design

EEL 5722C Field-Programmable Gate Array Design EEL 5722C Field-Programmable Gate Array Design Lecture 12: Pipelined Processor Design and Implementation Prof. Mingjie Lin Patt and Patel: Intro. to Computing System * Stanford EE271 notes 1 Instruction

More information

Chapter One. Introduction to Computer System

Chapter One. Introduction to Computer System Principles of Programming-I / 131101 Prepared by: Dr. Bahjat Qazzaz -------------------------------------------------------------------------------------------- Chapter One Introduction to Computer System

More information

October 24. Five Execution Steps

October 24. Five Execution Steps October 24 Programming problems? Read Section 6.1 for November 5 How instructions execute Test Preview Ask Questions! 10/24/2001 Comp 120 Fall 2001 1 Five Execution Steps Instruction Fetch Instruction

More information

The Institution of Engineers - Sri Lanka

The Institution of Engineers - Sri Lanka / The Institution of Engineers - Sri Lanka PART III- EXAMINATION 2012 311- COMPUTER SYSTEMS ENGINEERING Time Allowed: 3 hours INSTRUCTIONS TO CANDIDATES 1. This paper contains 8 questions in 5 pages 2.

More information

Lecture 11: Control Unit and Instruction Encoding

Lecture 11: Control Unit and Instruction Encoding CSCI25 Computer Organization Lecture : Control Unit and Instruction Encoding Ming-Chang YANG mcyang@cse.cuhk.edu.hk Reading: Chap. 7.4~7.5 (5 th Ed.) Recall: Components of a Processor Register file: a

More information

Introduction to Computer Science. Homework 1

Introduction to Computer Science. Homework 1 Introduction to Computer Science Homework. In each circuit below, the rectangles represent the same type of gate. Based on the input and output information given, identify whether the gate involved is

More information

Problem Set 1 Solutions

Problem Set 1 Solutions CSE 260 Digital Computers: Organization and Logical Design Jon Turner Problem Set 1 Solutions 1. Give a brief definition of each of the following parts of a computer system: CPU, main memory, floating

More information

CMPUT 101 with Solutions Quiz 2 (50 minutes) November 16, 2000

CMPUT 101 with Solutions Quiz 2 (50 minutes) November 16, 2000 CMPUT 101 with Solutions Quiz 2 (50 minutes) November 16, 2000 Last Name: First Name: Section: Instructor: A6 Yngvi Bjornsson Instructions: Read carefully before proceeding. No calculators, books or other

More information

address ALU the operation opcode ACC Acc memory address

address ALU the operation opcode ACC Acc memory address In this lecture, we will look at how storage (or memory) works with processor in a computer system. This is in preparation for the next lecture, in which we will examine how a microprocessor actually works

More information

COMS 1003 Fall Introduction to Computer Programming in C. History & Computer Organization. September 15 th

COMS 1003 Fall Introduction to Computer Programming in C. History & Computer Organization. September 15 th COMS 1003 Fall 2005 Introduction to Computer Programming in C History & Computer Organization September 15 th What's Ahead Some computer history Introduction to major players in the development of hardware

More information

LAB 9 The Performance of MIPS

LAB 9 The Performance of MIPS LAB 9 The Performance of MIPS Goals Learn how to determine the performance of a processor. Improve the processor performance by adding new instructions. To Do Determine the speed of the processor in Lab

More information

Computer Systems and -architecture

Computer Systems and -architecture Computer Systems and -architecture Project 5: Datapath 1 Ba INF 2018-2019 Brent van Bladel brent.vanbladel@uantwerpen.be Don t hesitate to contact the teaching assistant of this course. M.G.305 or by e-mail.

More information

In this lecture, we will look at how storage (or memory) works with processor in a computer system. This is in preparation for the next lecture, in

In this lecture, we will look at how storage (or memory) works with processor in a computer system. This is in preparation for the next lecture, in In this lecture, we will look at how storage (or memory) works with processor in a computer system. This is in preparation for the next lecture, in which we will examine how a microprocessor actually works

More information

Information Science 1

Information Science 1 Information Science 1 - Representa*on of Data in Memory- Week 03 College of Information Science and Engineering Ritsumeikan University Topics covered l Basic terms and concepts of The Structure of a Computer

More information

Computer Architecture

Computer Architecture Computer Architecture Topics: Machine Organization Machine Cycle Program Execution Machine Language Types of Memory & Access Von Neumann Design 1) Two key ideas 1) The stored program concept 1) instructions

More information

2. (a) Compare the characteristics of a floppy disk and a hard disk. (b) Discuss in detail memory interleaving. [8+7]

2. (a) Compare the characteristics of a floppy disk and a hard disk. (b) Discuss in detail memory interleaving. [8+7] Code No: A109211202 R09 Set No. 2 1. (a) Explain the purpose of the following registers: i. IR ii. PC iii. MDR iv. MAR. (b) Explain with an example the steps in subtraction of two n-digit unsigned numbers.

More information

20/08/14. Computer Systems 1. Instruction Processing: FETCH. Instruction Processing: DECODE

20/08/14. Computer Systems 1. Instruction Processing: FETCH. Instruction Processing: DECODE Computer Science 210 Computer Systems 1 Lecture 11 The Instruction Cycle Ch. 5: The LC-3 ISA Credits: McGraw-Hill slides prepared by Gregory T. Byrd, North Carolina State University Instruction Processing:

More information

COMP3221: Microprocessors and. and Embedded Systems. Instruction Set Architecture (ISA) What makes an ISA? #1: Memory Models. What makes an ISA?

COMP3221: Microprocessors and. and Embedded Systems. Instruction Set Architecture (ISA) What makes an ISA? #1: Memory Models. What makes an ISA? COMP3221: Microprocessors and Embedded Systems Lecture 2: Instruction Set Architecture (ISA) http://www.cse.unsw.edu.au/~cs3221 Lecturer: Hui Wu Session 2, 2005 Instruction Set Architecture (ISA) ISA is

More information

CC 311- Computer Architecture. The Processor - Control

CC 311- Computer Architecture. The Processor - Control CC 311- Computer Architecture The Processor - Control Control Unit Functions: Instruction code Control Unit Control Signals Select operations to be performed (ALU, read/write, etc.) Control data flow (multiplexor

More information

COMPUTER ORGANIZATION AND DESIGN. 5 th Edition. The Hardware/Software Interface. Chapter 4. The Processor

COMPUTER ORGANIZATION AND DESIGN. 5 th Edition. The Hardware/Software Interface. Chapter 4. The Processor COMPUTER ORGANIZATION AND DESIGN The Hardware/Software Interface 5 th Edition Chapter 4 The Processor Introduction CPU performance factors Instruction count Determined by ISA and compiler CPI and Cycle

More information

Latches. IT 3123 Hardware and Software Concepts. Registers. The Little Man has Registers. Data Registers. Program Counter

Latches. IT 3123 Hardware and Software Concepts. Registers. The Little Man has Registers. Data Registers. Program Counter IT 3123 Hardware and Software Concepts Notice: This session is being recorded. CPU and Memory June 11 Copyright 2005 by Bob Brown Latches Can store one bit of data Can be ganged together to store more

More information

LC-3 Architecture. (Ch4 ish material)

LC-3 Architecture. (Ch4 ish material) LC-3 Architecture (Ch4 ish material) 1 CISC vs. RISC CISC : Complex Instruction Set Computer Lots of instructions of variable size, very memory optimal, typically less registers. RISC : Reduced Instruction

More information

Introduction to Computers - Chapter 4

Introduction to Computers - Chapter 4 Introduction to Computers - Chapter 4 Since the invention of the transistor and the first digital computer of the 1940s, computers have been increasing in complexity and performance; however, their overall

More information

Name: University of Michigan uniqname: (NOT your student ID number!)

Name: University of Michigan uniqname: (NOT your student ID number!) The University of Michigan - Department of EECS EECS370 Introduction to Computer Organization Midterm Exam 1 October 22, 2009 Name: University of Michigan uniqname: (NOT your student ID number!) Open book,

More information

Chapter 4. Instruction Execution. Introduction. CPU Overview. Multiplexers. Chapter 4 The Processor 1. The Processor.

Chapter 4. Instruction Execution. Introduction. CPU Overview. Multiplexers. Chapter 4 The Processor 1. The Processor. COMPUTER ORGANIZATION AND DESIGN The Hardware/Software Interface 5 th Edition COMPUTER ORGANIZATION AND DESIGN The Hardware/Software Interface 5 th Edition Chapter 4 The Processor The Processor - Introduction

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

ECE 473 Computer Architecture and Organization Project: Design of a Five Stage Pipelined MIPS-like Processor Project Team TWO Objectives

ECE 473 Computer Architecture and Organization Project: Design of a Five Stage Pipelined MIPS-like Processor Project Team TWO Objectives ECE 473 Computer Architecture and Organization Project: Design of a Five Stage Pipelined MIPS-like Processor Due: December 8, 2011 Instructor: Dr. Yifeng Zhu Project Team This is a team project. All teams

More information

COMPUTER ORGANIZATION AND DESIGN. 5 th Edition. The Hardware/Software Interface. Chapter 4. The Processor

COMPUTER ORGANIZATION AND DESIGN. 5 th Edition. The Hardware/Software Interface. Chapter 4. The Processor COMPUTER ORGANIZATION AND DESIGN The Hardware/Software Interface 5 th Edition Chapter 4 The Processor COMPUTER ORGANIZATION AND DESIGN The Hardware/Software Interface 5 th Edition The Processor - Introduction

More information

SISTEMI EMBEDDED. Computer Organization Central Processing Unit (CPU) Federico Baronti Last version:

SISTEMI EMBEDDED. Computer Organization Central Processing Unit (CPU) Federico Baronti Last version: SISTEMI EMBEDDED Computer Organization Central Processing Unit (CPU) Federico Baronti Last version: 20170516 Processing Unit A processor reads program instructions from the computer s memory and executes

More information

CSE140: Components and Design Techniques for Digital Systems

CSE140: Components and Design Techniques for Digital Systems CSE4: Components and Design Techniques for Digital Systems Tajana Simunic Rosing Announcements and Outline Check webct grades, make sure everything is there and is correct Pick up graded d homework at

More information

Block diagram view. Datapath = functional units + registers

Block diagram view. Datapath = functional units + registers Computer design an application of digital logic design procedures Computer = processing unit + memory system Processing unit = control + datapath Control = finite state machine inputs = machine instruction,

More information

Introduction to Computer Engineering. CS/ECE 252, Fall 2016 Prof. Guri Sohi Computer Sciences Department University of Wisconsin Madison

Introduction to Computer Engineering. CS/ECE 252, Fall 2016 Prof. Guri Sohi Computer Sciences Department University of Wisconsin Madison Introduction to Computer Engineering CS/ECE 252, Fall 2016 Prof. Guri Sohi Computer Sciences Department University of Wisconsin Madison Chapter 5 The LC-3 Instruction Set Architecture ISA = All of the

More information

Introduction to Computer Engineering. Chapter 5 The LC-3. Instruction Set Architecture

Introduction to Computer Engineering. Chapter 5 The LC-3. Instruction Set Architecture Introduction to Computer Engineering CS/ECE 252, Spring 200 Prof. David A. Wood Computer Sciences Department University of Wisconsin Madison Chapter 5 The LC-3 Adapted from Prof. Mark Hill s slides Instruction

More information

... Executing conditional instructions

... Executing conditional instructions 1 2 Executing conditional instructions Our design to this point has been the SISD (single instruction single data) architecture This is fine if we wish to execute in a purely sequential mode We now wish

More information

CMPUT101 Introduction to Computing - Summer 2002

CMPUT101 Introduction to Computing - Summer 2002 7KH9RQ1HXPDQQ$UFKLWHFWXUH 2GGVDQG(QGV Chapter 5.1-5.2 Von Neumann Architecture CMPUT101 Introduction to Computing (c) Yngvi Bjornsson & Vadim Bulitko 1 'HVLJQLQJ&RPSXWHUV All computers more or less based

More information

Chapter 4. The Processor

Chapter 4. The Processor Chapter 4 The Processor Introduction CPU performance factors Instruction count Determined by ISA and compiler CPI and Cycle time Determined by CPU hardware We will examine two MIPS implementations A simplified

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

Year 10 OCR GCSE Computer Science (9-1)

Year 10 OCR GCSE Computer Science (9-1) 01 4 th September 02 11 th September 03 18 th September Half Term 1 04 25 th September 05 2 nd October 06 9 th October 07 16 th October NA Students on in school Thursday PM and Friday Only Unit 1, Lesson

More information

4 Operations On Data 4.1. Foundations of Computer Science Cengage Learning

4 Operations On Data 4.1. Foundations of Computer Science Cengage Learning 4 Operations On Data 4.1 Foundations of Computer Science Cengage Learning Objectives After studying this chapter, the student should be able to: List the three categories of operations performed on data.

More information