Modern VLSI Design 3e: Chapter 8 Copyright  1998, 2002 Prentice Hall PTR Topics n Basics of register-transfer design: –data paths and controllers; –ASM.

Slides:



Advertisements
Similar presentations
Chapter #8: Finite State Machine Design 8
Advertisements

Control path Recall that the control path is the physical entity in a processor which: fetches instructions, fetches operands, decodes instructions, schedules.
Give qualifications of instructors: DAP
Modern VLSI Design 2e: Chapter 8 Copyright  1998 Prentice Hall PTR Topics n High-level synthesis. n Architectures for low power. n Testability and architecture.
Modern VLSI Design 4e: Chapter 8 Copyright  2008 Wayne Wolf Topics High-level synthesis. Architectures for low power. GALS design.
FPGA-Based System Design: Chapter 6 Copyright  2004 Prentice Hall PTR Register-transfer Design n Basics of register-transfer design: –data paths and controllers.
Modern VLSI Design 3e: Chapter 10 Copyright  2002 Prentice Hall Adapted by Yunsi Fei ECE 300 Advanced VLSI Design Fall 2006 Lecture 24: CAD Systems &
Finite State Machine Chapter 10 RTL Hardware Design by P. Chu.
CS 151 Digital Systems Design Lecture 37 Register Transfer Level
ECE 331 – Digital System Design
Modern VLSI Design 2e: Chapter 5 Copyright  1998 Prentice Hall PTR Topics n Sequential machine implementation: –clocking. n Sequential machine design.
3/20/20091 More State Machines. Multiple processes.
1 COMP541 Sequencing and Control Montek Singh Mar 29, 2007.
10/20/20081 Lab 6 – More State Machines. Multiple processes.
Dr. Turki F. Al-Somani VHDL synthesis and simulation – Part 3 Microcomputer Systems Design (Embedded Systems)
Modern VLSI Design 2e: Chapter 6 Copyright  1998 Prentice Hall PTR Topics n Shifters. n Adders and ALUs.
10/13/ Lab 6 - Algorithmic State Machines ECE238L 10/13/2009.
1 COMP541 State Machines Montek Singh Feb 6, 2007.
4/10/20081 Lab 9 RT methodology introduction Register operations Data Path Control Path ASM Example TA: Jorge Crichigno.
Logic and Computer Design Fundamentals Registers and Counters
Modern VLSI Design 2e: Chapter 5 Copyright  1998 Prentice Hall PTR Topics n State assignment. n Power optimization of sequential machines. n Design validation.
George Mason University ECE 448 – FPGA and ASIC Design with VHDL Finite State Machines State Diagrams, State Tables, Algorithmic State Machine (ASM) Charts,
Overview Logistics Last lecture Today HW5 due today
FPGA-Based System Design: Chapter 5 Copyright  2004 Prentice Hall PTR Topics n Basics of sequential machines. n Sequential machine specification. n Sequential.
1 COMP541 State Machines Montek Singh Feb 8, 2012.
FPGA-Based System Design: Chapter 4 Copyright  2004 Prentice Hall PTR HDL coding n Synthesis vs. simulation semantics n Syntax-directed translation n.
ECE 2372 Modern Digital System Design
EE434 ASIC & Digital Systems
Sub-expression elimination Logic expressions: –Performed by logic optimization. –Kernel-based methods. Arithmetic expressions: –Search isomorphic patterns.
Chap 4. Sequential Circuits
FPGA-Based System Design: Chapter 3 Copyright  2004 Prentice Hall PTR FPGA Fabric n Elements of an FPGA fabric –Logic element –Placement –Wiring –I/O.
FPGA-Based System Design: Chapter 3 Copyright  2004 Prentice Hall PTR Topics n FPGA fabric architecture concepts.
George Mason University ECE 545 – Introduction to VHDL ECE 545 Lecture 5 Finite State Machines.
Modern VLSI Design 4e: Chapter 8 Copyright  2008 Wayne Wolf Topics Basics of register-transfer design: –data paths and controllers; –ASM charts. Pipelining.
Register Transfer Level & Design with ASM
George Mason University Finite State Machines State Diagrams, State Tables, Algorithmic State Machine (ASM) Charts, and VHDL Code ECE 448 Lecture 6.
Modern VLSI Design 4e: Chapter 8 Copyright  2008 Wayne Wolf Topics VHDL register-transfer modeling: –basics using traffic light controller; –synthesis.
Modern VLSI Design 4e: Chapter 8 Copyright  2008 Wayne Wolf Topics Modeling with hardware description languages (HDLs).
Modern VLSI Design 3e: Chapter 8 Copyright  1998, 2002 Prentice Hall PTR Topics n Modeling with hardware description languages (HDLs).
1 Copyright  2001 Pao-Ann Hsiung SW HW Module Outline l Introduction l Unified HW/SW Representations l HW/SW Partitioning Techniques l Integrated HW/SW.
Algorithmic state machines
Introduction to ASIC flow and Verilog HDL
Digital System Design using VHDL
Hao Zheng Comp Sci & Eng USF CDA 4253 FPGA System Design Chapter 5 Finite State Machines.
FPGA-Based System Design Copyright  2004 Prentice Hall PTR Topics n Modeling with hardware description languages (HDLs).
Chapter 11: System Design Methodology Digital System Designs and Practices Using Verilog HDL and 2008, John Wiley11-1 Chapter 11: System Design.
ECE 448 Lecture 6 Finite State Machines State Diagrams vs. Algorithmic State Machine (ASM) Charts.
ECE DIGITAL LOGIC LECTURE 21: FINITE STATE MACHINE Assistant Prof. Fareena Saqib Florida Institute of Technology Fall 2015, 11/24/2015.
EMT 351/4 DIGITAL IC DESIGN Verilog Behavioral Modeling  Finite State Machine -Moore & Mealy Machine -State Encoding Techniques.
Pusat Pengajian Kejuruteraan Mikroelektronik EMT 351/4 DIGITAL IC DESIGN Verilog Behavioural Modeling (Part 4) Week #
Modern VLSI Design 3e: Chapter 8 Copyright  1998, 2002 Prentice Hall PTR Topics n Verilog register-transfer modeling: –basics using traffic light controller;
George Mason University Finite State Machines Refresher ECE 545 Lecture 11.
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.
© Copyright 2004, Gaetano Borriello and Randy H. Katz
Introduction Introduction to VHDL Entities Signals Data & Scalar Types
ECE 448 Lecture 6 Finite State Machines State Diagrams vs. Algorithmic State Machine (ASM) Charts.
CS/COE0447 Computer Organization & Assembly Language
332:437 Lecture 15 System Controller Design
332:437 Lecture 15 System Controller Design
Lesson 4 Synchronous Design Architectures: Data Path and High-level Synthesis (part two) Sept EE37E Adv. Digital Electronics.
332:437 Lecture 15 System Controller Design
332:437 Lecture 8 Verilog and Finite State Machines
KU College of Engineering Elec 204: Digital Systems Design
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.
332:437 Lecture 8 Verilog and Finite State Machines
ECE 448 Lecture 6 Finite State Machines State Diagrams vs. Algorithmic State Machine (ASM) Charts.
Presentation transcript:

Modern VLSI Design 3e: Chapter 8 Copyright  1998, 2002 Prentice Hall PTR Topics n Basics of register-transfer design: –data paths and controllers; –ASM charts.

Modern VLSI Design 3e: Chapter 8 Copyright  1998, 2002 Prentice Hall PTR Register-transfer design n A register-transfer system is a sequential machine. n Register-transfer design is structural— complex combinations of state machines may not be easily described solely by a large state transition graph. n Register-transfer design concentrates on functionality, not details of logic design.

Modern VLSI Design 3e: Chapter 8 Copyright  1998, 2002 Prentice Hall PTR Register-transfer system example A register-transfer machine has combinational logic connecting registers: DQ combinational logic DQDQ combinational logic combinational logic

Modern VLSI Design 3e: Chapter 8 Copyright  1998, 2002 Prentice Hall PTR Block diagrams Block diagrams specify structure: wire bundle of width 5

Modern VLSI Design 3e: Chapter 8 Copyright  1998, 2002 Prentice Hall PTR Register-transfer simulation n Simulates to clock-cycle accuracy. Doesn’t guarantee timing. n Important to get proper function of machine before jumping into detailed logic design. (But be sure to take into account critical delays when choosing register-transfer organization.)

Modern VLSI Design 3e: Chapter 8 Copyright  1998, 2002 Prentice Hall PTR Simulation coding n Hardware description languages are typically supported by a simulation system: VHDL, Verilog, etc. –Simulation engine takes care of scheduling events during simulation. n Can hand-code a simulation in a programming language. –Must be sure that register-transfer events happen in proper order.

Modern VLSI Design 3e: Chapter 8 Copyright  1998, 2002 Prentice Hall PTR Sample VHDL code sync: process begin wait until CLOCK’event and CLOCK=‘1’; state <= state_next; end process sync; combin: process begin case state is when S0 => out1 <= a + c; state_next <= S1;... end process combin; sync process models registers combin process models combinational logic

Modern VLSI Design 3e: Chapter 8 Copyright  1998, 2002 Prentice Hall PTR Sample C simulator while (TRUE) { switch (state) { case S0: x = a + b; state = S1; next; case S1:... } loop executed once per clock cycle each case corresponds to a state; sets outputs, next state

Modern VLSI Design 3e: Chapter 8 Copyright  1998, 2002 Prentice Hall PTR Data path-controller systems n One good way to structure a system is as a data path and a controller: –data path executes regular operations (arithmetic, etc.), holds registers with data- oriented state; –controller evaluates irregular functions, sets control signals for data path.

Modern VLSI Design 3e: Chapter 8 Copyright  1998, 2002 Prentice Hall PTR Data and control are equivalent n We can rewrite control into data and visa versa: –control: if i1 = ‘0’ then o1 <= a; else o1 <= b; end if; –data: o1 <= ((i1 = ‘0’) and a) or ((i1 = ‘1’) and b); n Data/control distinction is useful but not fundamental.

Modern VLSI Design 3e: Chapter 8 Copyright  1998, 2002 Prentice Hall PTR Data operators n Arithmetic operations are easy to spot in hardware description languages: –x <= a + b ; n Multiplexers are implied by conditionals. Must evaluate entire program to determine which sources of data for registers. n Multiplexers also come from sharing adders, etc.

Modern VLSI Design 3e: Chapter 8 Copyright  1998, 2002 Prentice Hall PTR Conditionals and multiplexers if x = ‘0’ then reg1 <= a; else reg1 <= b; end if; code register-transfer

Modern VLSI Design 3e: Chapter 8 Copyright  1998, 2002 Prentice Hall PTR Alternate data path-controller systems controller data path one controller, one data path controller data path controller data path two communicating data path-controller systems

Modern VLSI Design 3e: Chapter 8 Copyright  1998, 2002 Prentice Hall PTR ASM charts n An ASM chart is a register-transfer description. n ASM charts let us describe function without choosing a partitioning between control and data. n Once we have specified the function, we can refine it into a block diagram which partitions data and control.

Modern VLSI Design 3e: Chapter 8 Copyright  1998, 2002 Prentice Hall PTR Sample ASM chart

Modern VLSI Design 3e: Chapter 8 Copyright  1998, 2002 Prentice Hall PTR ASM state n An ASM state specifies a machine state and a set of actions in that state. All actions occur in parallel. s1 x = a + b y = c - d + e o1 = 1 name of state (notation only)

Modern VLSI Design 3e: Chapter 8 Copyright  1998, 2002 Prentice Hall PTR Actions in state n Actions in a state are unconditionally executed. n A state can execute as many actions as you want, but you must eventually supply hardware for all those actions. n A register may be assigned to only once in a state (single-assignment rule).

Modern VLSI Design 3e: Chapter 8 Copyright  1998, 2002 Prentice Hall PTR Implementing operations in an ASM state state with one addition two additions requires two adders

Modern VLSI Design 3e: Chapter 8 Copyright  1998, 2002 Prentice Hall PTR Sequences of states n States are linked by transitions. n States are executed sequentially. Each state may take independent actions (including assigning to a variable assigned to in a previous state). s1 x = a + b s2 x = c + d y = a + d

Modern VLSI Design 3e: Chapter 8 Copyright  1998, 2002 Prentice Hall PTR Data paths from states n Maximum amount of hardware in data path is determined by state which executes the most functionality. n Function units implementing data operations may be reused across states, but multiplexers will be required to route values to the shared function units.

Modern VLSI Design 3e: Chapter 8 Copyright  1998, 2002 Prentice Hall PTR Function unit sharing example mux allows + to compute a+b, a+c

Modern VLSI Design 3e: Chapter 8 Copyright  1998, 2002 Prentice Hall PTR Conditionals n Conditional chooses which state to execute next based on primary input or present state value. n Can be drawn in either of two ways: a = b x T F

Modern VLSI Design 3e: Chapter 8 Copyright  1998, 2002 Prentice Hall PTR Execution of conditionals n An ASM chart describes a Moore sequential machine. If the logic associated with an ASM chart fragment doesn’t correspond to a legal sequential machine, then it isn’t a legal ASM chart. n Conditional can evaluate only present state or primary input value on present cycle.

Modern VLSI Design 3e: Chapter 8 Copyright  1998, 2002 Prentice Hall PTR Implementing an ASM branch in a Moore machine ASM chart state transition graph of controller

Modern VLSI Design 3e: Chapter 8 Copyright  1998, 2002 Prentice Hall PTR Mealy machines and ASM n Mealy machine requires a conditional output. n ASM notation for conditional output: i1 0 y = c + d

Modern VLSI Design 3e: Chapter 8 Copyright  1998, 2002 Prentice Hall PTR Extracting data path and controller n ASM chart notation helps identify data, control. n Once you choose what values and operations go into the data path, you can determine by elimination what goes into the controller. n Structure of the ASM chart gives structure of controller state transition graph.

Modern VLSI Design 3e: Chapter 8 Copyright  1998, 2002 Prentice Hall PTR Data path-controller extraction