Embedded Systems Hardware: Storage Elements; Finite State Machines; Sequential Logic.

Slides:



Advertisements
Similar presentations
Lecture 15 Finite State Machine Implementation
Advertisements

COUNTERS Counters with Inputs Kinds of Counters Asynchronous vs
Sequential Logic ENEL 111. Sequential Logic Circuits So far we have only considered circuits where the output is purely a function of the inputs With.
ECE C03 Lecture 81 Lecture 8 Memory Elements and Clocking Hai Zhou ECE 303 Advanced Digital Design Spring 2002.
CHAPTER 3 Sequential Logic/ Circuits.  Concept of Sequential Logic  Latch and Flip-flops (FFs)  Shift Registers and Application  Counters (Types,
Flip-Flops, Registers, Counters, and a Simple Processor
Classification of Digital Circuits  Combinational. Output depends only on current input values.  Sequential. Output depends on current input values and.
K-Maps, Timing Sequential Circuits: Latches & Flip-Flops Lecture 4 Digital Design and Computer Architecture Harris & Harris Morgan Kaufmann / Elsevier,
Sequential Logic Computer Organization Ellen Walker Hiram College Figures from Computer Organization and Design 3ed, D.A. Patterson & J.L. Hennessey, Morgan.
EKT 124 / 3 DIGITAL ELEKTRONIC 1
Ch 8. Sequential logic design practices 1. Documentation standards ▶ general requirements : signal name, logic symbol, schematic logic - state machine.
Sequential circuit Digital electronics is classified into combinational logic and sequential logic. In combinational circuit outpus depends only on present.
Sequential Logic Flip-Flops and Related Devices Dr. Rebhi S. Baraka Logic Design (CSCI 2301) Department of Computer Science Faculty.
Counter Circuits and VHDL State Machines
Sequential Logic 1  Combinational logic:  Compute a function all at one time  Fast/expensive  e.g. combinational multiplier  Sequential logic:  Compute.
Embedded Systems Hardware:
11/10/2004EE 42 fall 2004 lecture 301 Lecture #30 Finite State Machines Last lecture: –CMOS fabrication –Clocked and latched circuits This lecture: –Finite.
Logic and Computer Design Fundamentals Registers and Counters
ENEE 408C Lab Capstone Project: Digital System Design Fall 2005 Sequential Circuit Design.
C.S. Choy1 SEQUENTIAL LOGIC A circuit’s output depends on its previous state (condition) in addition to its current inputs The state of the circuit is.
Chapter #6: Sequential Logic Design 6.2 Timing Methodologies
1 Chapter 5: Datapath and Control CS 447 Jason Bakos.
Sequential Circuit  It is a type of logic circuit whose output depends not only on the present value of its input signals but on the past history of its.
Chapter 3: Sequential Logic Circuit EKT 121 / 4 ELEKTRONIK DIGIT 1.
Lecture 21 Overview Counters Sequential logic design.
CHAPTER 3 Counters.  One of the common requirement in digital circuits/system is counting, both direction (forward and backward)  Digital clocks and.
A presentation on Counters
SEQUENTIAL CIRCUITS USING TTL 74XX ICS
1 Sequential Circuits Registers and Counters. 2 Master Slave Flip Flops.
Lecture 10 Topics: Sequential circuits Basic concepts Clocks
Hardware design considerations: fan-in, fan-out, critical paths, hazards (summary)
Finite State Machines. Binary encoded state machines –The number of flip-flops is the smallest number m such that 2 m  n, where n is the number of states.
Embedded Systems: Testing. Testing needs to occur at many levels and at many stages in the development process. Testing is needed to verify adherence.
Chap 4. Sequential Circuits
1 CSE370, Lecture 15 Lecture 15 u Logistics n HW5 due this Friday n HW6 out today, due Friday Feb 20 n I will be away Friday, so no office hour n Bruce.
1 CSE370, Lecture 17 Lecture 17 u Logistics n Lab 7 this week n HW6 is due Friday n Office Hours íMine: Friday 10:00-11:00 as usual íSara: Thursday 2:30-3:20.
 Counters are sequential circuits which "count" through a specific state sequence. They can count up, count down, or count through other fixed sequences.
Registers and Counters Chapter 6. Digital Circuits 2 Clocked sequential circuits a group of flip-flops and combinational gates connected to form a feedback.
Chapter 1_4 Part III more on … Counters Chapter 1_4 Part III more on … Counters.
Topic: Sequential Circuit Course: Logic Design Slide no. 1 Chapter #6: Sequential Logic Design.
Review of Digital Logic Design Concepts OR: What I Need to Know from Digital Logic Design (EEL3705)
Computer Organization & Programming Chapter 5 Synchronous Components.
Counter Circuits and VHDL State Machines
CEC 220 Digital Circuit Design Latches and Flip-Flops Monday, March 03 CEC 220 Digital Circuit Design Slide 1 of 19.
COUNTERS Why do we need counters?
Counters.
Synchronous Sequential Circuits by Dr. Amin Danial Asham.
CS151 Introduction to Digital Design Chapter 5: Sequential Circuits 5-1 : Sequential Circuit Definition 5-2: Latches 1Created by: Ms.Amany AlSaleh.
RTL Hardware Design by P. Chu Chapter 9 – ECE420 (CSUN) Mirzaei 1 Sequential Circuit Design: Practice Shahnam Mirzaei, PhD Spring 2016 California State.
Logic Design (CE1111 ) Lecture 6 (Chapter 6) Registers &Counters Prepared by Dr. Lamiaa Elshenawy 1.
Embedded Systems: Testing. Combinational Logic Main issues in testing embedded systems hardware: The world is ANALOG, not digital; even in designing.
COMBINATIONAL AND SEQUENTIAL CIRCUITS Guided By: Prof. P. B. Swadas Prepared By: BIRLA VISHVAKARMA MAHAVDYALAYA.
Chapter 3 Boolean Algebra and Digital Logic T103: Computer architecture, logic and information processing.
Computer Science 210 Computer Organization
Computer Architecture & Operations I
Chapter #6: Sequential Logic Design
Clocks A clock is a free-running signal with a cycle time.
EKT 221 – Counters.
EKT 221 : Digital 2 COUNTERS.
FIGURE 5.1 Block diagram of sequential circuit
Computer Science 210 Computer Organization
ECE Digital logic Lecture 16: Synchronous Sequential Logic
CPE/EE 422/522 Advanced Logic Design L03
332:437 Lecture 12 Finite State Machine Design
CS Fall 2005 – Lec. #5 – Sequential Logic - 1
Computer Science 210 Computer Organization
CSE 370 – Winter Sequential Logic - 1
CSE 370 – Winter Sequential Logic-2 - 1
Lecture 17 Logistics Last lecture Today HW5 due on Wednesday
Lecture 17 Logistics Last lecture Today HW5 due on Wednesday
Presentation transcript:

Embedded Systems Hardware: Storage Elements; Finite State Machines; Sequential Logic

fig_03_08 Finite state machine (FSM): High-level view Moore machine: output is a function of the present state only Mealy machine: output is a function of the present stare and the inputs

fig_03_15 fig_03_16 Verilog—shift registers; behavioral and structural (por=power on reset)

fig_03_20, 3_21, 3_22 Linear feedback shift register (for providing random numbers, e.g.); Note: pullUp needed to prevent floating Reset pin on D flipflops What goes in “Feedback Logic” block? CHOICE IS NOT ARBITRARY, DEPENDS ON PROPERTIES OF POLYNOMIALS OVER THE FINITE FIELD {0,1,,xor,*} (e.g., 1+1=0). Table of correct values for an n-bit register is given in Appendix of Hamblen.

fig_03_23,3_24 “Dividers”: slow clock down, e.g. Simple divide-by-2 example

fig_03_25, 03_26, 03_27 Example: Asynchronous divide- by-4 counter [asynchronous 2-bit binary upcounter; ripple counter] Note: asynchronous because flip-flops are changed by different signals Note: if 1 st stage output appears at time t0 + m, nth stage output appears at time t0 + nm; so this configuration is good for dividing the signal but using it as a ripple counter is prone to static and dynamic hazards Both outputs change:

fig_03_28, 03_29 Synchronous dividers and counters (preferred): Example: 2-bit binary upcounter Inputs: D A = not A D B = A xor B

fig_03_30, 03_31, 03_32, 03_33 Johnson counter (2-bit): shift register + feedback input; often used in embedded applications; states for a Gray code; thus states can be decoded using combinational logic; there will not be any race conditions or hazards

fig_03_34 3-stage Johnson counter: --Output is Gray sequence—no decoding spikes --not all 2 3 (2 n ) states are legal—period is 2n (here 2*3=6) --unused states are illegal; must prevent circuit from ever going into these states

Making actual working circuits: Must consider --timing in latches and flip-flops --clock distribution --how to test sequential circuits (with n flip- flops, there are potentially 2 n states, a large number; access to individual flipflops for testing must also be carefully planned)

fig_03_36, 03_37 Timing in latches and flip-flops: Setup time: how long must inputs be present and stable before gate or clock changes state? Hold time: how long must input remain stable after the gate or clock has changed state? Metastable oscillations can occur if timing is not correct Setup and hold times for a gated latch enabled by a logical 1 on the gate

fig_03_38 Example: positive edge triggered FF; 50% point of each signal

fig_03_39, Propagation delay: minimum, typical, maximum values--with respect to causative edge of clock: Latch: must also specify delay when gate is enabled:

fig_03_41, 03_42 Timing margins: example: increasing frequency for 2-stage Johnson counter –output from either FF is …. assume t PDLH = 5-16ns t PDLH =7-18ns t su = 16ns

Case 1: L to H transition of Q A Clock period = t PDLH + t su + slack 0  t PDLH + t su If t PDLH is max, Frequency F max = 1/ [5 + 16)* ]sec = 48MHz If it is min, F max = 31.3 MHz Case 2: H to L transition: Similar calculations give F max = 43.5 MHz or 29.4 MHz Conclusion: F max cannot be larger than 29.4 MHz to get correct behavior

Clocks and clock distribution: --frequency and frequency range --rise times and fall times --stability --precision

fig_03_43 Clocks and clock distribution: Lower frequency than input; can use divider circuit above Higher frequncy: can use phase locked loop:

fig_03_44 Selecting portion of clock: rate multiplier

fig_03_46 Note: delays can accumulate

fig_03_47 Clock design and distribution: Need precision Need to decide on number of phases Distribution: need to be careful about delays Example: H-tree / buffers

fig_03_48 Testing: Scan path is basic tool

fig_03_56 Testing fsms: Real-world fsms are weakly connected, i.e., we can’t get from any state S1 to any state S2 (but we could if we treat the transition diagram as an UNDIRECTED graph) Strongly connected: we can get from a state S initial to any state Sj; sequence of inputs which permits this is called a transfer sequence Homing sequence: produce a unique destination state after it is applied Inputs: I test = Ihoming + Itransfer Finding a fault: requires a Distinguishing sequence Example: Strongly connected Weakly connected

fig_03_57 Basic testing setup:

fig_03_58

fig_03_59 Example: machine specified by table below Successor tree

fig_03_63 Example: recognize 1010

fig_03_65 Scan path

fig_03_66 Standardized boundary scan architecture Architecture and unit under test