Introduction to Computer Organization and Architecture Micro Program ภาษาเครื่อง ไมโครโปรแกรม.

Slides:



Advertisements
Similar presentations
Control Unit Implemntation
Advertisements

CHAPTER 16 MICROPROGRAMMED CONTROL DR. H. WATSON FRANCISCO VASQUEZ
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.
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
Topics covered: CPU Architecture CSE 243: Introduction to Computer Architecture and Hardware/Software Interface.
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.
Chapter 7. Basic Processing Unit
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.
Microprogrammed Control Chapter 17. Team Members Guillermo Cordon Ernesto Vivanco Brian Hadley Angel Carlos Castro.
Multiple-bus organization
Florida International University Chapter 17 Micro-programmed Control Molina, Francisco Pineiro, Michael Romero, Rubymir.
CONTROL UNIT OPERATION MICROPROGRAMMED CONTROL. 2.
Dr Mohamed Menacer College of Computer Science and Engineering Taibah University CE-321: Computer.
Microprogrammed Control Unit Control Memory Sequencing Microinstructions Microprogram Example Design of Control Unit Microinstruction Format.
Chapter 16 Micro-programmed Control
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.
PART 6: (1/2) Enhancing CPU Performance CHAPTER 16: MICROPROGRAMMED CONTROL 1.
Computer architecture
CSE 241 Computer Organization Lecture # 8 Ch. 7 Control Unit Dr. Tamer Samy Gaafar Dept. of Computer & Systems Engineering.
UNIT-III CONTROL UNIT DESIGN
Lecture 15 Microarchitecture Level: Level 1. Microarchitecture Level The level above digital logic level. Job: to implement the ISA level above it. The.
Basic Elements of Processor ALU Registers Internal data pahs External data paths Control Unit.
MICROPROGRAMMED CONTROL
Question What technology differentiates the different stages a computer had gone through from generation 1 to present?
GROUP 2 CHAPTER 16 CONTROL UNIT Group Members ๏ Evelio L. Hernandez ๏ Ashwin Soerdien ๏ Andrew Keiper ๏ Hermes Andino.
PART 4: (1/2) Central Processing Unit (CPU) Basics CHAPTER 12: P ROCESSOR S TRUCTURE AND F UNCTION.
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.
Chapter 10 Control Unit Operation “Controls the operation of the processor”
Processor Organization
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.
Controller Implementation
Computer Organization and Architecture + Networks
Micro-programmed Control
Micro-Operations A computer executes a program Fetch/execute cycle
William Stallings Computer Organization and Architecture
William Stallings Computer Organization and Architecture 7th Edition
Processor Organization and Architecture
Overview Control Memory Comparison of Implementations
Chapter 15 Control Unit Operation
Micro-programmed Control Unit
Basic Processing Unit Unit- 7 Engineered for Tomorrow CSE, MVJCE.
Computer Organization and Design
Control Unit Introduction Types Comparison Control Memory
Processor Organization and Architecture
William Stallings Computer Organization and Architecture 7th Edition
Chapter 14 Control Unit Operation
William Stallings Computer Organization and Architecture 8th Edition
Computer Architecture
Chapter 14 Control Unit Operation
William Stallings Computer Organization and Architecture
Computer Architecture
Processor Organization and Architecture
Presentation transcript:

Introduction to Computer Organization and Architecture Micro Program ภาษาเครื่อง ไมโครโปรแกรม

Model of Control Unit How the Control Unit Generate the control signal?

Model of Control Unit  Get instruction from Instruction Register  Working steps with the timing generator and conditions from flag, the signal from IR passed through the Decoder circuit into the CU to generate the control signal out.

Block Diagram of the Control Unit

Control Unit with Decoded Inputs

Microprogr ams ? 1950 Maurice V. Wikes ( Cambridge Univer.) IBM System/360 to achieve instruction- set compatibility across many models. MicroprogramsMicroprogramming allows a CPU’s program control unit : PCU to be designed sequences known as Microprograms are placed in a special control memory in the CPU.

Wilkes's Microprogrammed Control Unit

- so that instruction from the CPU’s main instruction set is executed by invoking and executing the corresponding microprogram. * * * * * * * CPU with no floating- point arithmetic circuits can execute by means of fixed- point arithmetic circuits. Microprogr ams ?

Digital Systems : CPU  Data Path Unit network of functional and storage units capable of performing certain operation on data words.  Control Unit issue control signal to the data path for selecting the function to be performed at specific times and route through the appropriate parts of the datapath unit.

Data Paths and Control Signals

Digital Systems : CPU  Hardwired fixed logic circuits to generate the control signals.  Microprogrammed microprograms stores the control signals in sequence of micro-instructions (microprograms) in a control memory. * provide a systematic & flexible method *

Microprogramme d Control Use microprograms to select, interpret, and execute instruction set. CU contain logic to generate micro- instruction addresses and to fetch and decode from control memory. Fig. 15.4

Control Unit Microarchitecture

Basic Concepts Instruction is implemented by a sequence of one or more sets of concurrent micro- operations. Each micro-operation is associated with a group of control lines that must be activated in a prescribed sequence to trigger the micro- operations.

Basic Concepts Program Execution Instructi on Cycle Instructi on Cycle... Fet ch Exec ute Inter rupt mOPmOP mOPmOP mOPmOP...

Basic Concepts Microprogramming is a method of control-unit design in which the control signal selection and sequencing information is stored in a ROMRAM ROM or RAM called..... Control Memory Control Memory : CM

Functioning of Microprogrammed Control Unit

Basic Concepts control signals activated micro- instruction, The control signals could be activated at any time that are specified by a micro- instruction, which is fetched from CM in much the same way an instruction is fetched from main memory.

Basic Concepts Instruction Cycle Fetch Indirect Execute Interrupt

Flowchart for Instruction Cycle

Basic Concepts Fetch Cycle Fetch Cycle 3 steps and 4 micro-operations t 1 : MAR <--- (PC) t 2 : MBR <--- Memory I PC <--- (PC) + I t 3 : IR <--- (MBR) I I : Instruction Length

Sequence of Events, Fetch Cycle

Basic Concepts Indirect Cycle Indirect Cycle 3 micro-operations t 1 : MAR <--- (IR (address)) t 2 : MBR <--- Memory t 3 : IR(Address) <--- (MBR (address) )

Basic Concepts Execute Cycle Execute Cycle vary on op-code such as ADD R1, X will have 3 micro-operations t 1 : MAR <--- (IR(address)) t 2 : MBR <--- Memory t 3 : R1 <--- (R1) + (MBR)

Basic Concepts Execute Cycle Execute Cycle as ISZ X (Increment and Skip instruction) t 1 : MAR <--- (IR(address)) t 2 : MBR <--- Memory t 3 : MBR <--- (MBR) + 1 t 4 : Memory <--- (MBR) If ((MBR) = 0) then (PC <--- (PC)+1)

Basic Concepts Execute Cycle Execute Cycle as BSA X (subroutine call : Branch-and-save- address instruction) t 1 : MAR <--- (IR(address)) MBR <--- (PC) t 2 : PC <--- (IR(address)) Memory <--- (MBR) t 3 : PC <--- (PC) + 1

Basic Concepts Interrupt Cycle Interrupt Cycle 3 micro-operations t 1 : MBR <--- (PC) t 2 : MAR <--- Save_Address PC <--- Routine_Address t 3 : Memory <--- (MBR)

Basic Concepts Each micro-instruction also explicitly or implicitly specifies the next micro-instruction to be used, thereby providing the necessary information for micro-operation sequencing. set of micro- instruction for ms micropr ogram

Organization of Control Memory

Microinstructio n Encoding

Basic Concepts Advantage flexible Advantage Microprogram can be changed relatively easily by changing the contents of CM. (flexible) Disadvantage Disadvantage The time required to access the microinstructions from CM. Chip area and circuit delay must both be minimized. Used in CISC’s as the Pentium and MC680X0

Micro- instructions  Horizontal Formats long formats, little encoding of the control fields, and the ability to control many micro- operation in parallel.  Vertical Formats short formats, considerable control- field encoding, and limited parallelism. interpreted by nano- instruction that directly control the hardware.

Micro-instruction Types Each micro-instruction specifies single (or few) micro-operations to be performed — (vertical micro-programming) Each micro-instruction specifies many different micro-operations to be performed in parallel —(horizontal micro-programming)

Vertical Micro-programming Width is narrow n control signals encoded into log 2 n bits Limited ability to express parallelism Considerable encoding of control information requires external memory word decoder to identify the exact control line being manipulated

Horizontal Micro-programming Wide memory word High degree of parallel operations possible Little encoding of control information

Alternative Microinstructio n Formats for a Simple Machine

Next Address Decision Depending on ALU flags and control buffer register —Get next instruction –Add 1 to control address register —Jump to new routine based on jump microinstruction –Load address field of control buffer register into control address register —Jump to machine instruction routine –Load control address register based on opcode in IR

Functioning of Microprogrammed Control Unit

Design Considerations Size of microinstructions Address generation time —Determined by instruction register –Once per cycle, after instruction is fetched —Next sequential address –Common in most designed —Branches –Both conditional and unconditional

Sequencing Techniques Based on current microinstruction, condition flags, contents of IR, control memory address must be generated Based on format of address information —Two address fields —Single address field —Variable format

Branch Control Logic: Two Address Fields

Branch Control Logic: Single Address Field

Branch Control Logic: Variable Format

Address Generation ExplicitImplicit Two-fieldMapping Unconditional BranchAddition Conditional branchResidual control

Execution The cycle is the basic event Each cycle is made up of two events —Fetch –Determined by generation of microinstruction address —Execute

Execute Effect is to generate control signals Some control points internal to processor Rest go to external control bus or other interface

Control Unit Organization

A Taxonomy of Microinstructions Vertical/horizontal Packed/unpacked Hard/soft microprogramming Direct/indirect encoding

How to Encode K different internal and external control signals Wilkes’s: —K bits dedicated —2K control signals during any instruction cycle Not all used —Two sources cannot be gated to same destination —Register cannot be source and destination —Only one pattern presented to ALU at a time —Only one pattern presented to external control bus at a time Require Q < 2K which can be encoded with log2Q < K bits Not done —As difficult to program as pure decoded (Wilkes) scheme —Requires complex slow control logic module Compromises —More bits than necessary used —Some combinations that are physically allowable are not possible to encode

Specific Encoding Techniques Microinstruction organized as set of fields Each field contains code Activates one or more control signals Organize format into independent fields —Field depicts set of actions (pattern of control signals) —Actions from different fields can occur simultaneously Alternative actions that can be specified by a field are mutually exclusive —Only one action specified for field could occur at a time

Microinstructio n Encoding

Micro- instructions Machine instruction is executed by a microprogram which acts as a real-time interpreter for the instruction. Microinstruction Format IBM System/370 Model 145 Cont rol Opera nd1 Opera nd2 CM Addressin g

IBM 3033 Microinstruction Format

Other Samples LSI computer

Simplified Block Diagram of the LSI-11 Processor

Organization of the LSI-11 Control Unit

LSI-11 Microinstruction Format

Introduction to Computer Organization and Architecture Machine Language ภาษาเครื่อ ง