EE434 ASIC & Digital Systems

Slides:



Advertisements
Similar presentations
Introduction to Sequential Circuits
Advertisements

FSM Word Problems Today:
Chapter #10: Finite State Machine Implementation
State-machine structure (Mealy)
TOPIC : Finite State Machine(FSM) and Flow Tables UNIT 1 : Modeling Module 1.4 : Modeling Sequential circuits.
Give qualifications of instructors: DAP
COE 202: Digital Logic Design Sequential Circuits Part 3
Sequential Circuit Analysis & Design Dr. Aiman H. El-Maleh Computer Engineering Department King Fahd University of Petroleum & Minerals Dr. Aiman H. El-Maleh.
Finite State Machine Chapter 10 RTL Hardware Design by P. Chu.
1 Lecture 23 More Sequential Circuits Analysis. 2 Analysis of Combinational Vs. Sequential Circuits °Combinational : Boolean Equations Truth Table Output.
CS 151 Digital Systems Design Lecture 37 Register Transfer Level
Modern VLSI Design 2e: Chapter 5 Copyright  1998 Prentice Hall PTR Topics n Sequential machine implementation: –clocking. n Sequential machine design.
ECE C03 Lecture 101 Lecture 10 Finite State Machine Design Hai Zhou ECE 303 Advanced Digital Design Spring 2002.
Contemporary Logic Design Finite State Machine Design © R.H. Katz Transparency No Chapter #8: Finite State Machine Design 8.5 Finite State Machine.
1 COMP541 State Machines Montek Singh Feb 6, 2007.
Spring 2002EECS150 - Lec15-seq2 Page 1 EECS150 - Digital Design Lecture 15 - Sequential Circuits II (Finite State Machines revisited) March 14, 2002 John.
ENEE 408C Lab Capstone Project: Digital System Design Fall 2005 Sequential Circuit Design.
1 Synchronous Sequential Circuit Design. 2 Sequential circuit design In sequential circuit design, we turn some description into a working circuit – We.
Digital Logic Design Lecture 26. Announcements Exams will be returned on Thursday Final small quiz on Monday, 12/8. Final homework will be assigned Thursday,
ECE 301 – Digital Electronics Introduction to Sequential Logic Circuits (aka. Finite State Machines) and FSM Analysis (Lecture #17)
ECE 331 – Digital Systems Design Introduction to Sequential Logic Circuits (aka. Finite State Machines) and FSM Analysis (Lecture #19)
Lecture 23 Design example: Traffic light controller.
FPGA-Based System Design: Chapter 5 Copyright  2004 Prentice Hall PTR Verilog for sequential machines.
Lecture 17 General finite state machine (FSM) design
Lecture 10 Topics: Sequential circuits Basic concepts Clocks
Lecture 8: Sequential Networks and Finite State Machines CSE 140: Components and Design Techniques for Digital Systems Fall 2014 CK Cheng Dept. of Computer.

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 5 Copyright  2004 Prentice Hall PTR Topics n Verilog styles for sequential machines. n Flip-flops and latches.
Sequential Logic Materials taken from: Digital Design and Computer Architecture by David and Sarah Harris & The Essentials of Computer Organization and.
Chapter 11: System Design Methodology Digital System Designs and Practices Using Verilog HDL and 2008, John Wiley11-1 Ders 8: FSM Gerçekleme ve.
Lecture 18 More Moore/Mealy machines.
1 Lecture #12 EGR 277 – Digital Logic Synchronous Logic Circuits versus Combinational Logic Circuits A) Combinational Logic Circuits Recall that there.
1 CSE370, Lecture 19 Lecture 19 u Logistics n Lab 8 this week to be done in pairs íFind a partner before your lab period íOtherwise you will have to wait.
Modern VLSI Design 4e: Chapter 8 Copyright  2008 Wayne Wolf Topics Basics of register-transfer design: –data paths and controllers; –ASM charts. Pipelining.
Module : FSM Topic : types of FSM. Two types of FSM The instant of transition from the present to the next can be completely controlled by a clock; additionally,
Fall 2004EE 3563 Digital Systems Design EE3563 Chapter 7, 8, 10 Reading Assignments  7.1, 7.2, 7.3  8.1, ,   8.5.1, 8.5.2,
Lecture 5. Sequential Logic 2 Prof. Taeweon Suh Computer Science Education Korea University 2010 R&E Computer System Education & Research.
Modern VLSI Design 4e: Chapter 5 Copyright  2008 Wayne Wolf Topics n Sequential machine implementation: –clocking. n Sequential machine design.
CS1Q Computer Systems Lecture 11 Simon Gay. Lecture 11CS1Q Computer Systems - Simon Gay 2 The D FlipFlop The RS flipflop stores one bit of information.
Lecture 11: FPGA-Based System Design October 18, 2004 ECE 697F Reconfigurable Computing Lecture 11 FPGA-Based System Design.
Registers; State Machines Analysis Section 7-1 Section 5-4.
Digital System Design using VHDL
Modern VLSI Design 3e: Chapter 8 Copyright  1998, 2002 Prentice Hall PTR Topics n Basics of register-transfer design: –data paths and controllers; –ASM.
1 COMP541 Finite State Machines - 1 Montek Singh Sep 22, 2014.
Chapter 11: System Design Methodology Digital System Designs and Practices Using Verilog HDL and 2008, John Wiley11-1 Chapter 11: System Design.
© 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.
Computer Organization CS345 David Monismith Based upon notes by Dr. Bill Siever and notes from the Patterson and Hennessy Text.
Finite State Machine. Clock Clock cycle Sequential circuit Digital logic systems can be classified as combinational or sequential. – Combinational circuits.
Govt. Engineering College- Gandhinagar. It is all about……  STATE MACHINE.
EMT 351/4 DIGITAL IC DESIGN Verilog Behavioral Modeling  Finite State Machine -Moore & Mealy Machine -State Encoding Techniques.
Mealy and Moore Machines Lecture 8 Overview Moore Machines Mealy Machines Sequential Circuits.
1 COMP541 Sequential Logic – 2: Finite State Machines Montek Singh Feb 29, 2016.
Finite State Machines Mealy machine inputs Outputs next state function
Sequential Networks and Finite State Machines
Lecture 4. Sequential Logic #2
COMP541 Sequential Logic – 2: Finite State Machines
FIGURE 5.1 Block diagram of sequential circuit
Synchronous Sequential Circuit Design
ECE 448 Lecture 6 Finite State Machines State Diagrams vs. Algorithmic State Machine (ASM) Charts.
Introduction to Sequential Circuits
Lecture 17 Logistics Last lecture Today HW5 due on Wednesday
Topics Verilog styles for sequential machines. Flip-flops and latches.
Lecture 17 Logistics Last lecture Today HW5 due on Wednesday
Finite State Machine Continued
CSE 370 – Winter Sequential Logic-2 - 1
Lecture 4: Finite State Machines
Presentation transcript:

EE434 ASIC & Digital Systems Jacob Murray School of EECS Washington State University jmurray@eecs.wsu.edu

Adopted from FPGA-based System Design More on State Machines (Lecture 21) Adopted from FPGA-based System Design Reference: Chapter 5 of the text book

Sequential machines Use registers to make primary output values depend on state + primary inputs. Varieties: Mealy—outputs function of present state, inputs; Moore—outputs depend only on state.

FSM structure

Synchronous design Controlled by clock(s). State changes at time determined by the clock. Inputs to registers settle in time for state change. Primary inputs settle in time for combinational delay through logic. Machine state is determined solely by registers. Don’t have to worry about timing constraints, events outside the registers.

Non-functional requirements and optimization Performance: Clock period is determined by combinational logic delay. Area: Combinational logic size usually dominates area. Energy/power: Often dominated by combinational logic. May be improved by latching values.

Models of state machines Register-transfer: Combinational equations for inputs to registers. State transition graph/table: Next-state, output functions described piecewise.

State transition graph Each transition describes part of the next-state, output functions: S2 S1 S3

Register-transfer structure Registers fed by combinational logic: Combinational logic D Q D Q D Q D Q D Q D Q

Block diagram Combination of register-transfer machines Purely structural description: B1 A B2

Symbolic values A sequential machine description may use symbolic, not binary values. Symbolic values must be encoded during implementation. Encoding may optimize implementation characteristics: Area. Performance. Energy.

STG vs. register-transfer Each representation is easier for some types of machines. Example: counter vs. string recognizer.

Counter state transition graph Cyclic structure: 1/1 1/2 1/7 1 6 7 … 1/0

Counter register-transfer function Specify using addition: Next_count = count + 1. Regular structure of logic.

“01” String Recognizer Recognize 01 sequence in input string: 1 1 1 1 1

Recognizer state transition graph 0/0 1/0 0/0 Bit 1 Bit 2 1/1

Mealy vs. Moore machine Moore machine: Mealy machine: Output a function of state. Mealy machine: Output a function of primary inputs + state.

Reachability State is reachable if there is a path from given state. May be created by state encoding: s0 s1 s2 s3

Homing sequence Sequence of inputs that drives a machine to a given state. Intuitive definition: Initial state in unknown. Apply a sequence 𝑥∈𝐼 of inputs. Observe outputs. Conclude what the final state is. If this is possible, x is a homing sequence. s0 s1 s2

States s2 and s3 are equivalent Equivalent states States are equivalent if they cannot be distinguished by any input sequence: 0/0 s1 s2 -/1 1/0 -/0 -/0 s3 s4 States s2 and s3 are equivalent

Networks of FSMs Functions can be built up from interconnected FSMs: x M1 M2 y O1 O2 Internal connections External connections

Illegal composition of Mealy machines Combinational logic Combinational logic D Q D Q

State assignment Find a binary code for symbolic values in machine. Optimize area, performance. May be done on inputs, outputs as well.

Optimizing state assignments Codes affect the next-state, output logic. Compute conditions based on state. Best code depends on the input, output logic and its interaction with state computations.

Encoding a shift register Symbolic state transition table for shift register: S00 1 S10 S01 S11

Bad encoding Let S00 = 00, S01 = 01, S10 = 11, S11 = 10. Logic: Output = S1 S0’ + S1’ S0

Good encoding Let S00 = 00, S01 = 01, S10 = 10, S11 = 11. Logic: Output = S0

One-hot code N-state machine has n-bit encoding. ith bit is 1 if machine is in state i. Comparison: Easy to tell what state the machine is in. Easy to get the machine into an illegal state (0000, 1111, etc.). Uses a lot of registers.

State codes in n-space 1 s2 code = 110 s1 code = 111 1 1

State codes and delay

Traffic light controller Intersection of two roads: highway (busy); farm (not busy). Want to give green light to highway as much as possible. Want to give green to farm when needed. Must always have at least one red light.

Traffic light system traffic light (red, yellow, green) farm road highway sensor (cars)

System operation Sensor on farm road indicates when cars on farm road are waiting for green light. Must obey required lengths for green, yellow lights.

Traffic light machine Build controller out of two machines: sequencer which sets colors of lights, etc. timer which is used to control durations of lights. Separate counter isolates logical design from clock period. Separate counter greatly reduces number of states in sequencer.

Sequencer state transition graph (cars & long)’ / 0 green red hwy- green cars & long / 1 green red short/ 1 red yellow hwy- yellow short’ / 0 red yellow farm- yellow short’ / 0 yellow red short / 1 yellow red cars’ + long / 1 red green farm- green cars & long’ / 0 red green