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

Slides:



Advertisements
Similar presentations
MANINDER KAUR Maninder Kaur 1
Advertisements

Fall 2012SYSC 5704: Elements of Computer Systems 1 MicroArchitecture Murdocca, Chapter 5 (selected parts) How to read Chapter 5.
9-6 The Control Word Fig The selection variables for the datapath control the microoperations executed within datapath for any given clock pulse.
Aug. 24, 2007ELEC 5200/6200 Project1 Computer Design Project ELEC 5200/6200-Computer Architecture and Design Fall 2007 Vishwani D. Agrawal James J.Danaher.
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
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.
Henry Hexmoor1 Chapter 10- Control units We introduced the basic structure of a control unit, and translated assembly instructions into a binary representation.
S. Barua – CPSC 440 CHAPTER 5 THE PROCESSOR: DATAPATH AND CONTROL Goals – Understand how the various.
Micro-operations Are the functional, or atomic, operations of a processor. A single micro-operation generally involves a transfer between registers, transfer.
An Introduction Chapter Chapter 1 Introduction2 Computer Systems  Programmable machines  Hardware + Software (program) HardwareProgram.
Chapter 5 Basic Processing Unit
TEAM 1: Miguel Harmant Rodney Rodriguez Elias Crespo Javier Parra Alfredo Alonso Marc-Wayne Anglin.
4-1 Chapter 4 - The Instruction Set Architecture Computer Architecture and Organization by M. Murdocca and V. Heuring © 2007 M. Murdocca and V. Heuring.
4-1 Chapter 4 - The Instruction Set Architecture Department of Information Technology, Radford University ITEC 352 Computer Organization Principles of.
Lecture 16 Today’s topics: –MARIE Instruction Decoding and Control –Hardwired control –Micro-programmed control 1.
Introduction to Computer Organization and Architecture Micro Program ภาษาเครื่อง ไมโครโปรแกรม.
6-1 Chapter 6 - Datapath and Control Principles of Computer Architecture by M. Murdocca and V. Heuring © 1999 M. Murdocca and V. Heuring Principles of.
4-1 Chapter 4 - The Instruction Set Architecture Principles of Computer Architecture by M. Murdocca and V. Heuring © 1999 M. Murdocca and V. Heuring Principles.
Computer Design Basics
Processor: Datapath and Control
The Central Processing Unit (CPU) and the Machine Cycle.
4-1 Chapter 4 - The Instruction Set Architecture Principles of Computer Architecture by M. Murdocca and V. Heuring © 1999 M. Murdocca and V. Heuring Principles.
Computer Architecture And Organization UNIT-II General System Architecture.
5-1 Chapter 5 - Datapath and Control Computer Architecture and Organization by M. Murdocca and V. Heuring © 2007 M. Murdocca and V. Heuring Computer Architecture.
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.
EEC4133 Computer Organization & Architecture Chapter 5: Datapath & Control by Muhazam Mustapha, April 2014.
September 26, 2001Systems Architecture I1 Systems Architecture I (CS ) Lecture 2: Implementation of a Simplified Computer Jeremy R. Johnson Wednesday,
EKT 221 : Chapter 4 Computer Design Basics
Lecture 15 Microarchitecture Level: Level 1. Microarchitecture Level The level above digital logic level. Job: to implement the ISA level above it. The.
Dale & Lewis Chapter 5 Computing components
Register Transfer Languages (RTL)
Basic Elements of Processor ALU Registers Internal data pahs External data paths Control Unit.
Chapter 10 Control Unit Operation “Controls the operation of the processor”
Designing a CPU –Reading a programs instruction from memory –Decoding the instruction –Executing the instruction –Transferring Data to/From memory / IO.
EKT 221 : Digital 2 Computer Design Basics Date : Lecture : 2 hrs.
Jeremy R. Johnson William M. Mongan
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.
Controller Implementation
Control Unit Design.
CS 270: Mathematical Foundations of Computer Science
Computer Organization and Architecture + Networks
Computer Organization & Design Microcode for Control Sec. 5
William Stallings Computer Organization and Architecture 7th Edition
Computer Architecture and Organization Miles Murdocca and Vincent Heuring Chapter 4 – The Instruction Set Architecture.
Processor Organization and Architecture
Chapter 15 Control Unit Operation
The fetch-execute cycle
Processor: Finite State Machine & Microprogramming
Control Unit Introduction Types Comparison Control Memory
Systems Architecture I (CS ) Lecture 2: A Simplified Computer
Processor Organization and Architecture
William Stallings Computer Organization and Architecture 7th Edition
MARIE: An Introduction to a Simple Computer
Unit 12 CPU Design & Programming
William Stallings Computer Organization and Architecture 8th Edition
Computer Architecture
Chapter 14 Control Unit Operation
COMP541 Datapaths I Montek Singh Mar 18, 2010.
MANINDER KAUR Maninder Kaur 1
William Stallings Computer Organization and Architecture
Chapter 7 Microprogrammed Control
Chapter 4 The Von Neumann Model
Presentation transcript:

6-1 Chapter 6 - Datapath and Control Department of Information Technology, Radford University ITEC 352 Computer Organization Principles of Computer Architecture Miles Murdocca and Vincent Heuring Chapter 6: Datapath and Control

6-2 Chapter 6 - Datapath and Control Department of Information Technology, Radford University ITEC 352 Computer Organization Chapter Contents 6.1 Basics of the Microarchitecture 6.2 A Microarchitecture for the ARC 6.3 Hardwired Control 6.4 Case Study: The VHDL Hardware Description Language

6-3 Chapter 6 - Datapath and Control Department of Information Technology, Radford University ITEC 352 Computer Organization The Fetch-Execute Cycle The steps that the control unit carries out in executing a program are: (1) Fetch the next instruction to be executed from memory. (2) Decode the opcode. (3) Read operand(s) from main memory, if any. (4) Execute the instruction and store results. (5) Go to step 1.

6-4 Chapter 6 - Datapath and Control Department of Information Technology, Radford University ITEC 352 Computer Organization High Level View of Microarchitecture The microarchitecture consists of the control unit and the programmer-visible registers, functional units such as the ALU, and any additional registers that may be required by the control unit.

6-5 Chapter 6 - Datapath and Control Department of Information Technology, Radford University ITEC 352 Computer Organization ARC Instruction Subset

6-6 Chapter 6 - Datapath and Control Department of Information Technology, Radford University ITEC 352 Computer Organization ARC Instruction Formats

6-7 Chapter 6 - Datapath and Control Department of Information Technology, Radford University ITEC 352 Computer Organization ARC Datapath

6-8 Chapter 6 - Datapath and Control Department of Information Technology, Radford University ITEC 352 Computer Organization ARC ALU Operations

6-9 Chapter 6 - Datapath and Control Department of Information Technology, Radford University ITEC 352 Computer Organization Block Diagram of ALU

6-10 Chapter 6 - Datapath and Control Department of Information Technology, Radford University ITEC 352 Computer Organization Gate-Level Layout of Barrel Shifter

6-11 Chapter 6 - Datapath and Control Department of Information Technology, Radford University ITEC 352 Computer Organization Truth Table for (Most of the) ALU LUTs

6-12 Chapter 6 - Datapath and Control Department of Information Technology, Radford University ITEC 352 Computer Organization Design of Register %r1

6-13 Chapter 6 - Datapath and Control Department of Information Technology, Radford University ITEC 352 Computer Organization Outputs to Control Unit from Register %ir

6-14 Chapter 6 - Datapath and Control Department of Information Technology, Radford University ITEC 352 Computer Organization Microarch- itecture of the ARC

6-15 Chapter 6 - Datapath and Control Department of Information Technology, Radford University ITEC 352 Computer Organization Microword Format

6-16 Chapter 6 - Datapath and Control Department of Information Technology, Radford University ITEC 352 Computer Organization Settings for the COND Field of the Microword

6-17 Chapter 6 - Datapath and Control Department of Information Technology, Radford University ITEC 352 Computer Organization DECODE Format for Microinstruction Address

6-18 Chapter 6 - Datapath and Control Department of Information Technology, Radford University ITEC 352 Computer Organization Timing Relationships for the Registers

6-19 Chapter 6 - Datapath and Control Department of Information Technology, Radford University ITEC 352 Computer Organization Partial ARC Micro- program

6-20 Chapter 6 - Datapath and Control Department of Information Technology, Radford University ITEC 352 Computer Organization Partial ARC Microprogram (cont’)

6-21 Chapter 6 - Datapath and Control Department of Information Technology, Radford University ITEC 352 Computer Organization Branch Decoding Decoding tree for branch instructions shows corresponding microprogram lines:

6-22 Chapter 6 - Datapath and Control Department of Information Technology, Radford University ITEC 352 Computer Organization Assembled ARC Microprogram

6-23 Chapter 6 - Datapath and Control Department of Information Technology, Radford University ITEC 352 Computer Organization Assembled ARC Microprogram (cont’)

6-24 Chapter 6 - Datapath and Control Department of Information Technology, Radford University ITEC 352 Computer Organization Example: Add the subcc Instruction Consider adding instruction subcc (subtract) to the ARC instruction set. subcc uses the Arithmetic format and op3 =

6-25 Chapter 6 - Datapath and Control Department of Information Technology, Radford University ITEC 352 Computer Organization Branch Table A branch table for trap handlers and interrupt service routines:

6-26 Chapter 6 - Datapath and Control Department of Information Technology, Radford University ITEC 352 Computer Organization Microprogramming vs. Nanoprogramming (a) Micropro- gramming vs. (b) nano- programming.

6-27 Chapter 6 - Datapath and Control Department of Information Technology, Radford University ITEC 352 Computer Organization Hardware Description Language HDL sequence for a resettable modulo 4 counter.

6-28 Chapter 6 - Datapath and Control Department of Information Technology, Radford University ITEC 352 Computer Organization Circuit Derived from HDL Logic design for a modulo 4 counter described in HDL.

6-29 Chapter 6 - Datapath and Control Department of Information Technology, Radford University ITEC 352 Computer Organization HDL for ARC HDL description of the ARC control unit.

6-30 Chapter 6 - Datapath and Control Department of Information Technology, Radford University ITEC 352 Computer Organization HDL for ARC (cont’)

6-31 Chapter 6 - Datapath and Control Department of Information Technology, Radford University ITEC 352 Computer Organization HDL ARC Circuit The hardwired control section of the ARC: generation of the control signals.

6-32 Chapter 6 - Datapath and Control Department of Information Technology, Radford University ITEC 352 Computer Organization HDL ARC Circuit (cont’) Hardwired control section of the ARC: signals from the data section of the control unit to the datapath.

6-33 Chapter 6 - Datapath and Control Department of Information Technology, Radford University ITEC 352 Computer Organization Case Study: The VHDL Hardware Description Language The majority function. a) truth table, b) AND-OR implementation, c) black box representation.

6-34 Chapter 6 - Datapath and Control Department of Information Technology, Radford University ITEC 352 Computer Organization VHDL Specification Interface specification for the majority component -- Interface entity MAJORITY is port (A_IN, B_IN, C_IN: in BIT F_OUT: out BIT); end MAJORITY; Behavioral model for the majority component -- Body architecture LOGIC_SPEC of MAJORITY is begin -- compute the output using a Boolean expression F_OUT <= (not A_IN and B_IN and C_IN) or (A_IN and not B_IN and C_IN) or (A_IN and B_IN and not C_IN) or (A_IN and B_IN and C_IN) after 4 ns; end LOGIC_SPEC;

6-35 Chapter 6 - Datapath and Control Department of Information Technology, Radford University ITEC 352 Computer Organization VHDL Specification (cont’) -- Package declaration, in library WORK package LOGIC_GATES is component AND3 port (A, B, C : in BIT; X : out BIT); end component; component OR4 port (A, B, C, D : in BIT; X : out BIT); end component; component NOT1 port (A : in BIT; X : out BIT); end component; -- Interface entity MAJORITY is port (A_IN, B_IN, C_IN: in BIT F_OUT: out BIT); end MAJORITY;

6-36 Chapter 6 - Datapath and Control Department of Information Technology, Radford University ITEC 352 Computer Organization VHDL Specification (cont’) -- Body -- Uses components declared in package LOGIC_GATES -- in the WORK library -- import all the components in WORK.LOGIC_GATES use WORK.LOGIC_GATES.all architecture LOGIC_SPEC of MAJORITY is -- declare signals used internally in MAJORITY signal A_BAR, B_BAR, C_BAR, I1, I2, I3, I4: BIT; begin -- connect the logic gates NOT_1 : NOT1 port map (A_IN, A_BAR); NOT_2 : NOT1 port map (B_IN, B_BAR); NOT_3 : NOT1 port map (C_IN, C_BAR); AND_1 : AND3 port map (A_BAR, B_IN, C_IN, I1); AND_2 : AND3 port map (A_IN, B_BAR, C_IN, I2); AND_3 : AND3 port map (A_IN, B_IN, C_BAR, I3); AND_4 : AND3 port map (A_IN, B_IN, C_IN, I4); OR_1 : OR3 port map (I1, I2, I3, I4, F_OUT); end LOGIC_SPEC;