1 KU College of Engineering Elec 204: Digital Systems Design Lecture 20 Datapath and Control Datapath - performs data transfer and processing operations.

Slides:



Advertisements
Similar presentations
Algorithmic State Machines SD192 Digital Systems Lecture notes July 16, 2004.
Advertisements

KU College of Engineering Elec 204: Digital Systems Design
Register Transfer Level
1ASM Algorithmic State Machines (ASM) part 1. ASM2 Algorithmic State Machine (ASM) ‏ Our design methodologies do not scale well to real-world problems.
9-6 The Control Word Fig The selection variables for the datapath control the microoperations executed within datapath for any given clock pulse.
Give qualifications of instructors: DAP
EKT 221 : Digital 2 ASM.
Finite State Machine Chapter 10 RTL Hardware Design by P. Chu.
CS 151 Digital Systems Design Lecture 37 Register Transfer Level
Overview Datapath and Control Algorithmic State Machines (ASM)
Chapter 8 Sequencing and Control Henry Hexmoor1. 2 Datapath versus Control unit  Datapath - performs data transfer and processing operations  Control.
Charles Kime © 2008 Pearson Education, Inc. (Hyperlinks are active in View Show mode) Chapter 7 – Registers and Register Transfers Part 3 – Control of.
The Control Unit: Sequencing the Processor Control Unit: –provides control signals that activate the various microoperations in the datapath the select.
1 COMP541 Sequencing and Control Montek Singh Mar 29, 2007.
Ch 8 - Control Unit and Algorithmic State Machines
FINITE STATE MACHINES (FSMs) Dr. Konstantinos Tatas.
George Mason University ECE 448 – FPGA and ASIC Design with VHDL Finite State Machines State Diagrams, State Tables, Algorithmic State Machine (ASM) Charts,
Chapter 6 Memory and Programmable Logic Devices
KU College of Engineering Elec 204: Digital Systems Design
Counters and Registers
1 Sequential Circuits Registers and Counters. 2 Master Slave Flip Flops.
Lecture 10 Topics: Sequential circuits Basic concepts Clocks
ENG241 Digital Design Week #10 Sequencing and Control.
CoE3DJ4 Digital Systems Design Register transfers, sequencing and control (from chapters 7 and 8 of Mano and Kime)
Rabie A. Ramadan Lecture 3
IKI Register-transfer Design
1 KU College of Engineering Elec 204: Digital Systems Design Lecture 21 Multiplier Example Example: (101 x 011) Base 2 Note that the partial product summation.
Chap 8. Sequencing and Control. 8.1 Introduction Binary information in a digital computer –data manipulated in a datapath with ALUs, registers, multiplexers,
Eng. Mohammed Timraz Electronics & Communication Engineer University of Palestine Faculty of Engineering and Urban planning Software Engineering Department.
Instructor: Yuzhuang Hu Another Design Example: PIG (Chapter 7-10) PIG is a single dice game. Two players roll the dice in turns. When.
Instructor: Yuzhuang Hu State-Machine Diagrams contd. (Chapter 5, Section 5-7) Use boolean expressions to simplify the diagram. S0S0 S1S1.
George Mason University Design of Controllers Finite State Machines and Algorithmic State Machine (ASM) Charts ECE 545 Lecture 14.
REGISTER TRANSFER & MICROOPERATIONS By Sohaib. Digital System Overview  Each module is built from digital components  Registers  Decoders  Arithmetic.
Charles Kime & Thomas Kaminski © 2004 Pearson Education, Inc. Terms of Use (Hyperlinks are active in View Show mode) Terms of Use ECE/CS 352: Digital Systems.
A Simple Computer Architecture Digital Logic Design Instructor: Kasım Sinan YILDIRIM.
Register Transfer Level & Design with ASM
CHAPTER-2 Fundamentals of Digital Logic. Digital Logic Digital electronic circuits are used to build computer hardware as well as other products (digital.
George Mason University Finite State Machines State Diagrams, State Tables, Algorithmic State Machine (ASM) Charts, and VHDL Code ECE 448 Lecture 6.
EKT 221/4 DIGITAL ELECTRONICS II Chapter 2 SEQUENCING AND CONTROL.
Algorithmic state machines
Datapath - performs data transfer and processing operations The control unit sends: – Control signals – Control outputs The control unit receives: – External.
Register Transfer Languages (RTL)
GROUP 2 CHAPTER 16 CONTROL UNIT Group Members ๏ Evelio L. Hernandez ๏ Ashwin Soerdien ๏ Andrew Keiper ๏ Hermes Andino.
1 ECE 545 – Introduction to VHDL Algorithmic State Machines Sorting Example ECE 656 Lecture 8.
© 2009 Pearson Education, Upper Saddle River, NJ All Rights ReservedFloyd, Digital Fundamentals, 10 th ed Digital Logic Design Dr. Oliver Faust.
ECE 448 Lecture 6 Finite State Machines State Diagrams vs. Algorithmic State Machine (ASM) Charts.
ASM Charts. Outline  ASM Charts Components of ASM Charts ASM Charts: An Example  Register Operations  Timing in ASM Charts  ASM Charts => Digital.
1 KU College of Engineering Elec 204: Digital Systems Design Lecture 23 Introduction Computer Specification –Instruction Set Architecture (ISA) - the specification.
REGISTER TRANSFER & MICROOPERATIONS By Sohaib. Digital System Overview  Each module is built from digital components  Registers  Decoders  Arithmetic.
Chapter 20 Computer Operations Computer Studies Today Chapter 20.
Common Elements in Sequential Design. Lecture 3 topics  Registers and Register Transfer  Shift Registers  Counters Basic Counter Partial sequence counters.
Counters and registers Eng.Maha Alqubali. Registers Registers are groups of flip-flops, where each flip- flop is capable of storing one bit of information.
Design at the Register Transfer Level Algorithmic State Machines 07.
 Designing CU – One FF per State Method  5 Transformation Rules  Transformation Process  Microprogrammed Control Unit.
George Mason University Finite State Machines Refresher ECE 545 Lecture 11.
Charles Kime & Thomas Kaminski © 2004 Pearson Education, Inc. Terms of Use (Hyperlinks are active in View Show mode) Terms of Use ECE/CS 352: Digital Systems.
Figure 8.1. The general form of a sequential circuit.
ECE 448 Lecture 6 Finite State Machines State Diagrams, State Tables, Algorithmic State Machine (ASM) Charts, and VHDL Code.
KU College of Engineering Elec 204: Digital Systems Design
ECE 448 Lecture 6 Finite State Machines State Diagrams vs. Algorithmic State Machine (ASM) Charts.
KU College of Engineering Elec 204: Digital Systems Design
Overview Datapath and Control Algorithmic State Machines (ASM)
Lecture 26 – Hardwired and Microprogrammed Control
Instructor: Alexander Stoytchev
REGISTER TRANSFER LEVEL (RTL) DESIGN Using ASM CHART
KU College of Engineering Elec 204: Digital Systems Design
ASM and Micro-programmed State Machines
ECE 448 Lecture 6 Finite State Machines State Diagrams, State Tables, Algorithmic State Machine (ASM) Charts, and VHDL Code.
ECE 448 Lecture 6 Finite State Machines State Diagrams, State Tables, Algorithmic State Machine (ASM) Charts, and VHDL code ECE 448 – FPGA and ASIC Design.
ECE 448 Lecture 6 Finite State Machines State Diagrams vs. Algorithmic State Machine (ASM) Charts.
Presentation transcript:

1 KU College of Engineering Elec 204: Digital Systems Design Lecture 20 Datapath and Control Datapath - performs data transfer and processing operations Control Unit - Determines the enabling and sequencing of the operations The control unit receives: –External control inputs –Status signals The control unit sends: –Control signals –Control outputs Control inputs Data inputs Data outputs Datapath Control outputs Control signals Status signals Control unit Describe properties of the state of the datapath

2 KU College of Engineering Elec 204: Digital Systems Design Lecture 20 Control Unit Types Two distinct classes: –Programmable –Non-programmable. A programmable control unit has: –A program counter (PC) or other sequencing register with contents that points to the next instruction to be executed –An external ROM or RAM array for storing instructions and control information –Decision logic for determining the sequence of operations and logic to interpret the instructions A non-programmable control units does not fetch instructions from a memory and is not responsible for sequencing instructions –This type of control unit is our focus in this chapter

3 KU College of Engineering Elec 204: Digital Systems Design Lecture 20 Algorithmic State Machines The function of a state machine (or sequential circuit) can be represented by a state table or a state diagram. A flowchart is a way of showing actions and control flow in an algorithm. An Algorithmic State Machine (ASM) is simply a flowchart-like way to specify state diagrams for sequential logic and, optionally, actions performed in a datapath. While flowcharts typically do not specify “time”, an ASM explicitly specifies a sequence of actions and their timing relationships.

4 KU College of Engineering Elec 204: Digital Systems Design Lecture 20 ASM Primitives 1.State Box (a rectangle) 2.Scalar Decision Box (a diamond) 3.Vector Decision Box (a hexagon) 4.Conditional Output Box (oval). The State Box is a rectangle, marked with the symbolic state name, containing register transfers and output signals activated when the control unit is in the state. The Scalar Decision Box is a diamond that describes the effects of a specific input condition on the control. It has one input path and two exit paths, one for TRUE (1) and one for FALSE (0). The Vector Decision Box is a hexagon that describes the effects of a specific n-bit (n > 2) vector of input conditions on the control. It has one input path and up to 2 n exit paths, each corresponding to a binary vector value. The Conditional Output Box is an oval with entry from a decision block and outputs activated for the decision conditions being satisfied.

5 KU College of Engineering Elec 204: Digital Systems Design Lecture 20 A rectangle with: –The symbolic name for the state marked outside the upper left top –Containing register transfer operations and outputs activated within or while leaving the state –An optional state code, if assigned, outside the upper right top (Symbolic Name) IDLE (Register transfers or outputs) R ← 0 RUN (Optional state co de) 0000 State Box

6 KU College of Engineering Elec 204: Digital Systems Design Lecture 20 A diamond with: –One input path (entry point). –One input condition, placed in the center of the box, that is tested. –A TRUE exit path taken if the condition is true (logic 1). –A FALSE exit path taken if the condition is false (logic 0). (Input) START (True Condition) (False Condition) 0 1 Scalar Decision Box

7 KU College of Engineering Elec 204: Digital Systems Design Lecture 20 Vector Decision Box A hexagon with: –One Input Path (entry point). –A vector of input conditions, placed in the center of the box, that is tested. –Up to 2 n output paths. The path taken has a binary vector value that matches the vector input condition (Vector of Input Conditions) (Binary Vector Values) (Binary Vector Values) 10 Z, Q0

8 KU College of Engineering Elec 204: Digital Systems Design Lecture 20 Conditional Output Box An oval with: –One input path from a decision box or decision boxes. –One output path –Register transfers or outputs that occur only if the conditional path to the box is taken. Transfers and outputs in a state box are Moore type - dependent only on state Transfers and outputs in a conditional output box are Mealy type - dependent on both state and inputs (Register transfers or outputs) R ← 0 RUN From Decision Box(es)

9 KU College of Engineering Elec 204: Digital Systems Design Lecture 20 By connecting boxes together, we begin to see the power of expression. What are the: –Inputs? –Outputs? –Conditional Outputs? –Transfers? –Conditional Transfers? Connecting Boxes Together IDLE R← 0 START 01 PC ← 0 A VAIL INIT

10 KU College of Engineering Elec 204: Digital Systems Design Lecture 20 ASM Blocks One state box along with all decision and conditional output boxes connected to it is called an ASM Block. The ASM Block includes all items on the path from the current state to the same or other states. IDLE AVAIL START R← R + 1 R ← 0 Q0 0 1 MUL0 MUL1 ASM BLOCK Entry Exit

11 KU College of Engineering Elec 204: Digital Systems Design Lecture 20 ASM Timing Outputs appear while in the state Register transfers occur at the clock while exiting the state - New value occur in the next state! Clock cycle 1Clock cycle 2Clock cycle 3 Clock START Q 1 AVAIL IDLE MUL State A Q 0

12 KU College of Engineering Elec 204: Digital Systems Design Lecture 20 ASM Design Example Input: Start signal – S Output: 2 flip-flops – E and F One 4-bit binary counter – A (A3 A2 A1 A0) A start signal S starts the system by clearing the counter A and the F flip-flop. With the next clock pulse the counter incremented. The counter continues to be incremented until the operations stop. The counter bits A3 and A2 are used to control the sequence: If A2 = 0 E is cleared If A2 = 1 E is set –If A3 = 0 the count continues –If A3 = 1 F is set on the next clock pulse, and system stops counting.