Microprogramming Andreas Klappenecker CPSC321 Computer Architecture.

Slides:



Advertisements
Similar presentations
Another Implementation Style
Advertisements

Control Unit Implemntation
Topics covered: CPU Architecture CSE 243: Introduction to Computer Architecture and Hardware/Software Interface.
Multicycle Datapath & Control Andreas Klappenecker CPSC321 Computer Architecture.
1  1998 Morgan Kaufmann Publishers Summary:. 2  1998 Morgan Kaufmann Publishers How many cycles will it take to execute this code? lw $t2, 0($t3) lw.
Microprogramming. S 2/e C D A Computer Systems Design and Architecture Second Edition© 2004 Prentice Hall Microprogramming Main Points/Terminology Difference.
MICROPROGRAM CONTROL.
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,
The Processor Data Path & Control Chapter 5 Part 3 - Microprogrammed Control Unit N. Guydosh 3/1/04+
CS364 CH17 Micro-programmed Control
CS 161Computer Architecture Chapter 5 Lecture 12
1 Chapter Five. 2 We're ready to look at an implementation of the MIPS Simplified to contain only: –memory-reference instructions: lw, sw –arithmetic-logical.
Chapter 16 Control Unit Implemntation. A Basic Computer Model.
Preparation for Midterm Binary Data Storage (integer, char, float pt) and Operations, Logic, Flip Flops, Switch Debouncing, Timing, Synchronous / Asynchronous.
Chapter 15 IA 64 Architecture Review Predication Predication Registers Speculation Control Data Software Pipelining Prolog, Kernel, & Epilog phases Automatic.
1  1998 Morgan Kaufmann Publishers We're ready to look at an implementation of the MIPS Simplified to contain only: –memory-reference instructions: lw,
ST. ALOYSIUS INSTITUTE OF TECHNOLOGY COMPUTER SCIENCE ENGINEERING 4 th SEMESTER COMPUTER SYSTEM ORGAINZATION SUBMITTED TO :- SHWETA AGRAWAL SUBMITTED BY.
Datapath and Control Andreas Klappenecker CPSC321 Computer Architecture.
Class 9.1 Computer Architecture - HUJI Computer Architecture Class 9 Microprogramming.
1 We're ready to look at an implementation of the MIPS Simplified to contain only: –memory-reference instructions: lw, sw –arithmetic-logical instructions:
S. Barua – CPSC 440 CHAPTER 5 THE PROCESSOR: DATAPATH AND CONTROL Goals – Understand how the various.
The Multicycle Processor CPSC 321 Andreas Klappenecker.
Chapter 6 Memory and Programmable Logic Devices
Processor Organization and Architecture
Lecture 16 Today’s topics: –MARIE Instruction Decoding and Control –Hardwired control –Micro-programmed control 1.
Multiple-bus organization
1 For some program running on machine X, Performance X = 1 / Execution time X "X is n times faster than Y" Performance X / Performance Y = n Problem:
Chapter 16 Micro-programmed Control
Chapter 5 Processor Design. Spring 2005 ELEC 5200/6200 From Patterson/Hennessey Slides We're ready to look at an implementation of the MIPS Simplified.
Important Concepts  Parts of the CPU  Arithmetic/Logic Unit  Control Unit  Registers  Program Counter  Instruction Register  Fetch/Decode/Execute.
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.
EECS 322: Computer Architecture
1 Computer Organization & Design Microcode for Control Sec. 5.7 (CDROM) Appendix C (CDROM) / / pdf / lec_3a_notes.pdf.
CPE232 Basic MIPS Architecture1 Computer Organization Multi-cycle Approach Dr. Iyad Jafar Adapted from Dr. Gheith Abandah slides
Gary MarsdenSlide 1University of Cape Town Stages.
Overview of Control Hardware Development
1  1998 Morgan Kaufmann Publishers Value of control signals is dependent upon: –what instruction is being executed –which step is being performed Use.
Basic Elements of Processor ALU Registers Internal data pahs External data paths Control Unit.
1  2004 Morgan Kaufmann Publishers No encoding: –1 bit for each datapath operation –faster, requires more memory (logic) –used for Vax 780 — an astonishing.
CDA 3101 Spring 2016 Introduction to Computer Organization Microprogramming and Exceptions 08 March 2016.
BASIC COMPUTER ARCHITECTURE HOW COMPUTER SYSTEMS WORK.
1. 2 MIPS Hardware Implementation Full die photograph of the MIPS R2000 RISC Microprocessor. The 1986 MIPS R2000 with five pipeline stages and 450,000.
Types of Micro-operation  Transfer data between registers  Transfer data from register to external  Transfer data from external to register  Perform.
Basic Concepts Microinstructions The control unit seems a reasonably simple device. Nevertheless, to implement a control unit as an interconnection of.
Design a MIPS Processor (II)
Controller Implementation
Computer Organization and Architecture + Networks
CS161 – Design and Architecture of Computer Systems
Systems Architecture I
Computer Organization & Design Microcode for Control Sec. 5
Overview Instruction Codes Computer Registers Computer Instructions
Processor Organization and Architecture
Micro-programmed Control Unit
Chapter Five.
Processor: Finite State Machine & Microprogramming
Computer Architecture
Chapter Five The Processor: Datapath and Control
The Processor Data Path & Control Chapter 5 Part 3 - Microprogrammed Control Unit N. Guydosh 3/1/04+
Processor Organization and Architecture
Systems Architecture I
Processor (II).
Multi-Cycle Datapath Lecture notes from MKP, H. H. Lee and S. Yalamanchili.
October 29 Review for 2nd Exam Ask Questions! 4/26/2019
Systems Architecture I
William Stallings Computer Organization and Architecture
Processor Organization and Architecture
Presentation transcript:

Microprogramming Andreas Klappenecker CPSC321 Computer Architecture

Implementation of the Finite State Machine Control Logic

Graphical Specification of FSM How many state bits are needed?

Two-Level Logic Any logic function can be written in a two-level representation, e.g. the sums-of-products form E = AB ~C + AC ~B + BC ~A It uses the logical OR of products (AND ops) Contains variable or complemented variable

PLA Implementation Two level logic

Implementation: Finite State Machine for Control

Microprogramming

Motivation The full MIPS instruction set contains over 100 instructions Instructions can take from 1 clock cycle to more than 20 clock cycles Pipelining will lead to explosion of states It follows that the control will be quite complex => FSM can be cumbersome Use microprogramming!

Microprogramming Implementation of MIPS instructions as a sequence of simpler instructions Design of the microinstruction format Write a program Eases implementations of pipelined processor

Micro-Instructions What is needed? ALU control signals Program counter control signals Complete data path What do we do? Analyze what is happening at each step Express in a column oriented way Translate it into binary Store it in an appropriate form

A Simple Implementation

Microprogram Physical implementation: ROM or PLA Each micro-instruction has an address Sequentially ordered Each sequence step is one cycle Selection of next instruction Address increment (sequencing field = seq) Fetch: begins fetching the next micro-instruction (sequencing field = fetch) Dispatch: jump to the next micro-instruction, the number i indicates the location in the dispatch table

Microinstruction format

Microcode: Trade-offs Specification Advantages: Easy to design and write Design architecture and microcode in parallel Implementation (off-chip ROM) Advantages Easy to change since values are in memory Can emulate other architectures Can make use of internal registers Implementation Disadvantages: SLOWER Control is implemented on same chip as processor ROM is no longer faster than RAM No need to go back and make changes