Lecture 16 Today’s topics: –MARIE Instruction Decoding and Control –Hardwired control –Micro-programmed control 1.

Slides:



Advertisements
Similar presentations
6-1 Chapter 6 - Datapath and Control Department of Information Technology, Radford University ITEC 352 Computer Organization Principles of Computer Architecture.
Advertisements

CS1104: Computer Organisation School of Computing National University of Singapore.
Topics covered: CPU Architecture CSE 243: Introduction to Computer Architecture and Hardware/Software Interface.
PART 5: (2/2) Processor Internals CHAPTER 15: CONTROL UNIT OPERATION 1.
ARITHMETIC LOGIC SHIFT UNIT
Computer Architecture
1 ITCS 3181 Logic and Computer Systems 2014 B. Wilkinson Slides8.ppt Modification date: Nov 3, 2014 Random Logic Approach The approach described so far.
Chapter 16 Control Unit Operation No HW problems on this chapter. It is important to understand this material on the architecture of computer control units,
CS364 CH17 Micro-programmed Control
Chapter 16 Control Unit Implemntation. A Basic Computer Model.
Chapter 15 IA 64 Architecture Review Predication Predication Registers Speculation Control Data Software Pipelining Prolog, Kernel, & Epilog phases Automatic.
S. Barua – CPSC 440 CHAPTER 5 THE PROCESSOR: DATAPATH AND CONTROL Goals – Understand how the various.
Computer Organization and Architecture
Micro-operations Are the functional, or atomic, operations of a processor. A single micro-operation generally involves a transfer between registers, transfer.
MARIE: An Introduction to a Simple Computer
Chapter 5 Basic Processing Unit
TEAM 1: Miguel Harmant Rodney Rodriguez Elias Crespo Javier Parra Alfredo Alonso Marc-Wayne Anglin.
1 Computer Organization Today: First Hour: Computer Organization –Section 11.3 of Katz’s Textbook –In-class Activity #1 Second Hour: Test Review.
Chap 8. Sequencing and Control. 8.1 Introduction Binary information in a digital computer –data manipulated in a datapath with ALUs, registers, multiplexers,
Multiple-bus organization
Chapter 4 MARIE: An Introduction to a Simple Computer.
CPU Design. Introduction – The CPU must perform three main tasks: Communication with memory – Fetching Instructions – Fetching and storing data Interpretation.
CONTROL UNIT OPERATION MICROPROGRAMMED CONTROL. 2.
Lecture 14 Today’s topics MARIE Architecture Registers Buses
MICROPROGRAMMED CONTROL CH 17 Team # 2 Members: Wilmer Saint-Hilaire Alberto Mollinedo Vinicius Schuina Luis Perez.
1 Control Unit Operation and Microprogramming Chap 16 & 17 of CO&A Dr. Farag.
Microprogrammed Control Chapter11:. Two methods for generating the control signals are: 1)Hardwired control o Sequential logic circuit that generates.
MARIE: An Introduction to a Simple Computer. 2 MARIE Our model computer, the Machine Architecture that is Really Intuitive and Easy, MARIE, was designed.
PART 6: (1/2) Enhancing CPU Performance CHAPTER 16: MICROPROGRAMMED CONTROL 1.
Computer architecture
September 26, 2001Systems Architecture I1 Systems Architecture I (CS ) Lecture 2: Implementation of a Simplified Computer Jeremy R. Johnson Wednesday,
Lecture 15 Microarchitecture Level: Level 1. Microarchitecture Level The level above digital logic level. Job: to implement the ISA level above it. The.
Processor Data Path and Control How they work together.
Basic Elements of Processor ALU Registers Internal data pahs External data paths Control Unit.
MICROPROGRAMMED CONTROL
1. 2 CHAPTER 3 MARIE: An Introduction to a Simple Computer.
Question What technology differentiates the different stages a computer had gone through from generation 1 to present?
8085 processor.
Control Unit Operations Chapter10:. What is Control Unit (CU)?(1)  Part of a CPU or other device that directs its operation.  Tells the rest of the.
Designing a CPU –Reading a programs instruction from memory –Decoding the instruction –Executing the instruction –Transferring Data to/From memory / IO.
Control units In the last lecture, we introduced the basic structure of a control unit, and translated our assembly instructions into a binary representation.
Jeremy R. Johnson William M. Mongan
BASIC COMPUTER ARCHITECTURE HOW COMPUTER SYSTEMS WORK.
Chapter 7 Microsequencer Control Unit Design.
Types of Micro-operation  Transfer data between registers  Transfer data from register to external  Transfer data from external to register  Perform.
Functions of Processor Operation Addressing modes Registers i/o module interface Memory module interface Interrupts.
Basic Concepts Microinstructions The control unit seems a reasonably simple device. Nevertheless, to implement a control unit as an interconnection of.
Riyadh Philanthropic Society For Science Prince Sultan College For Woman Dept. of Computer & Information Sciences CS 251 Introduction to Computer Organization.
Controller Implementation
Today’s Agenda Exam 2 Part 2 (11:15am-12:30pm)
CS 270: Mathematical Foundations of Computer Science
Computer Organization and Architecture + Networks
Overview Instruction Codes Computer Registers Computer Instructions
Micro-programmed Control Unit
Controller Implementation--Part II
MARIE: An Introduction to a Simple Computer
Systems Architecture I (CS ) Lecture 2: A Simplified Computer
Processor Organization and Architecture
MARIE: An Introduction to a Simple Computer
William Stallings Computer Organization and Architecture 8th Edition
Computer Architecture
Chapter 14 Control Unit Operation
CS Chapter 4 Dr. Clincy Professor of CS TODAY’S AGENDA
A Discussion on Assemblers
MARIE: An Introduction to a Simple Computer
Presentation transcript:

Lecture 16 Today’s topics: –MARIE Instruction Decoding and Control –Hardwired control –Micro-programmed control 1

2 Instruction Decoding The control unit –Driven by the processor’s clock –Decodes the instruction –Creates control signals The microoperations given by each register transfer language define the operation of MARIE’s control unit. A sequence of “control” steps for each instruction. The control unit generates a set of signals for each control step that execute the appropriate microoperation. MAR  X MBR  M[MAR] AC  AC + MBR

3 Each of MARIE’s registers and main memory have a unique address along the datapath. The addresses take the form of signals issued by the control unit. How many signal lines does MARIE’s control unit need? Register Selection

4 Two sets of three signals. –P 2, P 1, P 0 : controls reading from memory or a register –P 5, P 4, P 3 : controls writing to memory or a register. The next slide shows a close up view of MARIE’s MBR. Register Selection

5 Connection of MBR to Datapath This register is enabled for reading when P0 and P1 are high, and enabled for writing when P3 and P4 are high Q: what is the connection of PC to the datapath and control lines?

MARIE’s Full Instruction Set 6 How many types of operations of ALU can perform?

7 Careful inspection of MARIE’s RTL reveals that the ALU has only three operations: add, subtract, and clear. –We will also define a fourth “do nothing” state. ALU Control The entire set of MARIE’s control signals consists of: –Register controls: P 0 through P 5, –Memory controls: M R, and M W. –ALU controls: A 0 through A 1 and L ALT to control the ALU’s data source. (L ALT =0: the default bus value, L ALT =1 : alternative source.) –Timing: T 0 through T 7 and counter reset C r

8 Consider MARIE’s Add instruction. Its RTL is: MAR  X MBR  M[MAR] AC  AC + MBR After an Add instruction is fetched, the address, X, is in the rightmost 12 bits of the IR, which has a datapath address of 7. X is copied to the MAR, which has a datapath address of 1. Thus we need to raise signals P 0, P 1, and P 2 to read from the IR, and signal P 3 to write to the MAR. MARIE’s Add Instruction Control

9 The signal sequence for MARIE’s Add instruction: P 3 P 2 P 1 P 0 T 3 : MAR  X P 4 P 3 T 4 M R : MBR  M[MAR] C r A 0 P 5 T 5 L ALT : AC  AC + MBR [Reset counter] These signals are ANDed with combinational logic to bring about the desired machine behavior. Control Signal Sequence

10 Control Unit Implementation Two general ways control unit implementation, hardwired control and microprogrammed control. Hardwired control: –The bit pattern of machine instruction in the IR is decoded by combinational logic. –The decoder output works with the control signals of the current system state to produce a new set of control signals. Microprogrammed control: –Employs software consisting of microinstructions that carry out an instruction’s microoperations. Note that the signal pattern just described is the same whether our machine used hardwired or microprogrammed control.

11 Hardwired Control

12 Hardwired Control MARIE's instruction decoder. (Partial.) 16 outputs in maximum

13 Ring Counter

14 This is the hardwired logic for MARIE’s Add = 0011 instruction. P 3 P 2 P 1 P 0 T 3 : MAR  X P 4 P 3 T 4 M R : MBR  M[MAR] C r A 0 P 5 T 5 L ALT : AC  AC + MBR [Reset counter] Q: Load and JumpI instruction? Draw the timing diagram for load and jumpI

15 In microprogrammed control, instruction microcode produces control signal changes. Machine instructions are the input for a microprogram that converts the 1s and 0s of an instruction into control signals. The microprogram is stored in firmware, which is also called the control store. A microcode instruction is retrieved during each clock cycle. Micro-programmed Control

16 This is how a generic microprogrammed control unit might look. Micro-programmed Control

17 If MARIE were microprogrammed, the microinstruction format might look like this: MicroOp1 and MicroOp2 contain binary codes for each microoperation specified in the RTN. Jump is a single bit indicating that the value in the Dest field is a valid address and should be placed in the microsequencer. Control then branches to the address found in the Dest field. Microinstruction Format

18 The table below contains MARIE’s microoperation codes along with the corresponding RTL: Microoperation Codes

19 Jump Table The first four lines are the fetch-decode-execute cycle. The remaining lines are the beginning of a jump table.

Jump Table Exercise 20 Q: write the microcode for the jump table for the MARIE instructions for Jump X, Clear, and AddI X. (Use all 1s for the Destination value.) AddressMicroOp1MicroOp2JumpDest

Exercise 21

Exercise - Solution 22

23 Microinstructions are fetched, decoded, and executed in the same manner as regular instructions. This extra level of instruction interpretation is what makes microprogrammed control slower than hardwired control. The advantages of microprogrammed control are that it can support very complicated instructions and only the microprogram needs to be changed if the instruction set changes (or an error is found). Hardware vs. Micro-programmed Control