Applications of Synchronous Circuits (Class 10.2 – 3/28/2013) CSE 2441 – Introduction to Digital Logic Spring 2013 Instructor – Bill Carroll, Professor.

Slides:



Advertisements
Similar presentations
Chapter 9 -- Simplification of Sequential Circuits.
Advertisements

Introduction to Sequential Circuits
Some Slides from: U.C. Berkeley, U.C. Berkeley, Alan Mishchenko, Alan Mishchenko, Mike Miller, Mike Miller, Gaetano Borriello Gaetano Borriello Introduction.
General Sequential Design
State-machine structure (Mealy)
1. 1. Output depends uniquely on inputs:  Contains only logic gates, AND, OR,...  No feedback interconnects 2. Output depends on inputs and memory:
VIII - Working with Sequential Logic © Copyright 2004, Gaetano Borriello and Randy H. Katz 1 Finite state machine optimization State minimization  fewer.
TOPIC : Finite State Machine(FSM) and Flow Tables UNIT 1 : Modeling Module 1.4 : Modeling Sequential circuits.
COE 202: Digital Logic Design Sequential Circuits Part 3
Sequential Circuits1 DIGITAL LOGIC DESIGN by Dr. Fenghui Yao Tennessee State University Department of Computer Science Nashville, TN.
Circuits require memory to store intermediate data
CS 151 Digital Systems Design Lecture 21 Analyzing Sequential Circuits.
Digital Alarm System Experiment 9. Experiment 8: What You May Have Missed Continued use of structural modelingContinued use of structural modeling VHDL.
CS 151 Digital Systems Design Lecture 25 State Reduction and Assignment.
Give qualifications of instructors: DAP
Overview Sequential Circuit Design Specification Formulation
Spring 2002EECS150 - Lec15-seq2 Page 1 EECS150 - Digital Design Lecture 15 - Sequential Circuits II (Finite State Machines revisited) March 14, 2002 John.
Chapter 8 -- Analysis and Synthesis of Synchronous Sequential Circuits.
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)
ENGIN112 L25: State Reduction and Assignment October 31, 2003 ENGIN 112 Intro to Electrical and Computer Engineering Lecture 25 State Reduction and Assignment.
Sequential logic and systems
IKI c-Synthesis of Sequential Logic Bobby Nazief Semester-I The materials on these slides are adopted from: Prof. Daniel Gajski’s transparency.
Zvi Kohavi and Niraj K. Jha 1 Capabilities, Minimization, and Transformation of Sequential Machines.
Chapter 5 - Part Sequential Circuit Design Design Procedure  Specification  Formulation - Obtain a state diagram or state table  State Assignment.
Synchronous Circuit Design (Class 10.1 – 10/30/2012) CSE 2441 – Introduction to Digital Logic Fall 2012 Instructor – Bill Carroll, Professor of CSE.
CSCE 211: Digital Logic Design Chin-Tser Huang University of South Carolina.
Chapter 8 -- Analysis and Synthesis of Synchronous Sequential Circuits.
Charles Kime & Thomas Kaminski © 2008 Pearson Education, Inc. (Hyperlinks are active in View Show mode) Chapter 5 – Sequential Circuits Part 2 – Sequential.
Introduction to Sequential Logic Design Finite State-Machine Design.
CPEN Digital System Design Chapter 5 - Sequential Circuits Sequential Circuit Design C. Gerousis © Logic and Computer Design Fundamentals, 4 rd Ed.,
1 Lecture 22 Sequential Circuits Analysis. 2 Combinational vs. Sequential  Combinational Logic Circuit  Output is a function only of the present inputs.
1 © 2014 B. Wilkinson Modification date: Dec Sequential Logic Circuits Previously, we described the basic building blocks of sequential circuits,
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,
Introduction to State Machine
DLD Lecture 26 Finite State Machine Design Procedure.
ECE 301 – Digital Electronics
Digital Circuits State Reduction and Assignment State Reduction reductions on the number of flip-flops and the number of gates a reduction in the.
DESIGN OF SEQUENTIAL CIRCUITS by Dr. Amin Danial Asham.
1 State Reduction Goal: reduce the number of states while keeping the external input-output requirements unchanged. State reduction example: a: input 0.

Chapter 8 -- Analysis and Synthesis of Synchronous Sequential Circuits.
A sequential logic circuit (a.k.a. state machine) consists of both combinational logic circuit(s) and memory devices (flip flops). The combinational circuits.
Synthesis Synchronous Sequential Circuits synthesis procedure –Word description of problem /hardest; art, not science/ –Derive state diagram & state table.
Introduction to Sequential Logic Design Finite State-Machine Analysis.
State Diagrams Tuesday, 12 September State diagram Graphical representation of a state table. –Provides the same information as a state table. –A.
ANALYSIS OF SEQUENTIAL CIRCUITS
Sequential logic design principles
Adapted by Dr. Adel Ammar
EEL 3705 / 3705L Digital Logic Design
FIGURE 5.1 Block diagram of sequential circuit
ECE 301 – Digital Electronics
FINITE STATE MACHINES (FSMs)
332:437 Lecture 12 Finite State Machine Design
State Reduction and State Assignment
EEL 3705 / 3705L Digital Logic Design
CSE 370 – Winter Sequential Logic-2 - 1
Lecture 17 Logistics Last lecture Today HW5 due on Wednesday
CHAPTER 15 REDUCTION OF STATE TABLES STATE ASSIGNMENT
DESIGN OF SEQUENTIAL CIRCUITS
Instructor: Alexander Stoytchev
SYEN 3330 Digital Systems Chapter 6 – Part 3 SYEN 3330 Digital Systems.
ANALYSIS OF SEQUENTIAL CIRCUIT LOGIC DIAGRAM
Lecture 17 Logistics Last lecture Today HW5 due on Wednesday
Instructor: Alexander Stoytchev
Chapter5: Synchronous Sequential Logic – Part 3
CSE 370 – Winter Sequential Logic-2 - 1
COE 202: Digital Logic Design Sequential Circuits Part 3
Chapter 9 -- Simplification of Sequential Circuits
Presentation transcript:

Applications of Synchronous Circuits (Class 10.2 – 3/28/2013) CSE 2441 – Introduction to Digital Logic Spring 2013 Instructor – Bill Carroll, Professor of CSE

Today’s Topics FSM application examples – Sequence recognizer – Code converter – Controller Synchronous circuit minimization – State reduction – State assignment

Sequence Recognizer for 01 in a Block Code of Block-Length Two

Test Your Understanding Design a realization of the block 01 recognizer. Use the following state assignment and JK flip flops. A: 00, B: 01, C: 10

Test Your Understanding – Self-Check PS x 01 AB/0C/0 BA/0A/1 CA/0 NS/z y1y2y1y2 x /010/0 0100/000/1 1000/0 Y1Y2/zY1Y2/z y1y2y1y2 x dd 1000 z = xy 2 y1y2y1y2 x dd 10dd J1J1 y1y2y1y2 x 01 00dd 01dd 11dd 1011 K1K1 y1y2y1y2 x dd 11dd 1000 J2J2 y1y2y1y2 x 01 00dd dd 10dd K2K2 State Table Transition/Output TableOutput K-map Excitation K-maps J 1 = xy 2 ’K 1 = 1 or y 1 J 2 = x’y 1 ’K 2 = 1 or y 2

Test Your Understanding – Self-Check

Design a Recognizer for the Sequence 1111 Example 8.11 Figure 8.29 Note: This solution assumes non-block sequences and allows overlap. How would the solution change for block sequences and no overlap?

Code Converter Example Design a finite state machine to convert 3-bit binary code words to 3-bit Gray code words. BinaryGray x: Z:

Three-bit Binary to three-bit Gray State Diagram Assumes starting state A

Robot Controller -- Example 8.17 Figure 8.39 Finite-State Controller – A finite state machine that produces outputs that control the behavior of an electronic or electromechanical system based on controller inputs and state.

Robot Controller Specifications x = 1: robot in contact with an obstacle x = 0: robot not in contact with an obstacle z1 = 1: turn left z2 = 1: turn right Control algorithm: When an obstacle is encountered, turn right until cleared. Next time an obstacle is encountered, turn left until cleared. Continue alternating turns as obstacles are encountered. State A: No obstacle, last turn was left State B: Obstacle, turn right State C: No obstacle, last turn was right State D: Obstacle, turn left

Robot Controller Design Figure 8.40 (a) -- (e) z 1 = xy 1 z 2 = xy 1 ’

Robot Controller Excitation Equations y1y2y1y2 x dd 10dd y1y2y1y2 x 01 00dd 01dd y1y2y1y2 x dd 11dd 1000 y1y2y1y2 x 01 00dd dd J1J1 K1K1 J2J2 K2K2 J 1 = x’y 2 K 1 = x’y 2 ’J 2 = xy 1 ’K 2 = xy 1

Robot Controller Realization Figure 8.40 (f) z 1 = xy 1 z 2 = xy 1 ’ J 1 = x’y 2 K 1 = x’y 2 ’ J 2 = xy 1 ’K 2 = xy 1

Synchronous Circuit Minimization Eliminate redundant states – May reduce the number of flip flops needed – Usually reduces the number of combinational logic devices needed Make an optimal state assignment – usually reduces the number of combinational logic devices needed

Redundant States in Synchronous Circuits Removal of redundant states is important because – Cost: the number of memory elements is directly related to the number of states – Complexity: the more states the circuit contains, the more complex the design and implementation becomes – Aids failure analysis: diagnostic routines are often predicated on the assumption that no redundant states exist

Equivalent States States S 1, S 2, …, S j of a completely specified sequential circuit are said to be equivalent if and only if, for every possible input sequence, the same output sequence is produced by the circuit regardless of whether S 1, S 2, …, S j is the initial state. Let S i and S j be states of a completely specified sequential circuit. Let S k and S l be the next states of S i and S j, respectively for input I p. S i and S j are equivalent if and only if for every possible I p the following are conditions are satisfied. – The outputs produced by S i and S j are the same, – The next states S k and S l are equivalent.

Equivalent States Illustration Figure 9.1 Initial State Input Sequences A B C D E

Methods for Finding Equivalent States Inspection Partitioning Implication Tables

Finding Equivalent States By Inspection Figure 9.2

Equivalence Relations Equivalence relation: let R be a relation on a set S. R is an equivalence relation on S if and only if it is reflexive, symmetric, and transitive. An equivalence relation on a set partitions the set into disjoint equivalence classes. Example: let S = {A,B,C,D,E,F,G,H} and R = {(A,A),(B,B),(B,H),(C,C),(D,D),(D,E),(E,E),(E,D),(F,F),(G,G),(H,H), (H,B)}. Then P = (A)(BH)(C)(DE)(F)(G) Theorem: state equivalence in a sequential circuit is an equivalence relation on the set of states. Theorem: the equivalence classes defined by the state equivalence of a sequential circuit can be used as the states in an equivalent circuit.

Finding Equivalent States by Partitioning Overview – Successively refine partitions of states until two consecutive partitions are identical. States in the same block of the final partition are equivalent. Step 0 – P 0 : All states in one block. Step 1 – P 1 : Partitions are refined by outputs. Step 2 – P 2 to P k : Partitions are refined by next states. Step 3 – P k = P k+1 : Final blocks define equivalent states.

Partitioning Example x 01 AC/1B/0 BC/1E/0 CB/1E/0 DD/0B/1 EE/0A/1 Reconsider the sequential circuit from Figure 9.1 (b) P 0 = (ABCDE) P 1 = (ABC)(DE) P 2 = (A)(BC)(D)(E) P 3 = (A)(BC)(D)(E) Hence, B ≡ C.

Partitioning Example (concluded) Figure 9.3

Test Your Understanding x 01 AE/0D/0 BA/1F/0 CC/0A/1 DB/0A/0 ED/1C/0 F D/1 GH/1G/1 HC/1B/1 Find all equivalent states.

Test Your Understanding – Self Check Figure 9.4 P0 = (ABCDEFGH) P1 = (AD)(BE)(CF)(GH) P2 = (AD)(BE)(CF)(G)(H) P3 = (AD)(BE)(CF)(G)(H) A ≡ D: A’ B ≡ E: B’ C ≡ F: C’ G: D’ H: E’

Finding Equivalent States by Implication Tables Figure 9.7

Example An implication table example