Chapter 9. sequential logic technologies

Similar documents
Chapter 9. sequential logic technologies

Controller Implementation--Part I. Cascading Edge-triggered Flip-Flops

ICS 151 Final. (Last Name) (First Name)

Solutions. ICS 151 Final. Q1 Q2 Q3 Q4 Total Credit Score. Instructions: Student ID. (Last Name) (First Name) Signature

EE 42/100 Lecture 24: Latches and Flip Flops. Rev B 4/21/2010 (2:04 PM) Prof. Ali M. Niknejad

I hope you have completed Part 2 of the Experiment and is ready for Part 3.

ELECTRICAL AND COMPUTER ENGINEERING DEPARTMENT, OAKLAND UNIVERSITY ECE-2700:

Understanding Engineers #2

Module -18 Flip flops

Gomoku Player Design

Learning Outcomes. Spiral 2 3. DeMorgan Equivalents NEGATIVE (ACTIVE LO) LOGIC. Negative Logic One hot State Assignment System Design Examples

Aim. Lecture 1: Overview Digital Concepts. Objectives. 15 Lectures

2014 Paper E2.1: Digital Electronics II

Digital Logic Circuits

Chapter 3 Digital Logic Structures

CS302 - Digital Logic Design Glossary By

ELECTRICAL AND COMPUTER ENGINEERING DEPARTMENT, OAKLAND UNIVERSITY ECE-2700:

First Optional Homework Problem Set for Engineering 1630, Fall 2014

A-PDF Split DEMO : Purchase from to remove the watermark 114 FSM

CS302 Digital Logic Design Solved Objective Midterm Papers For Preparation of Midterm Exam

UNIVERSITI MALAYSIA PERLIS

ECE380 Digital Logic

Datapath Components. Multipliers, Counters, Timers, Register Files

UNIVERSITY OF BOLTON SCHOOL OF ENGINEERING BENG (HONS) ELECTRICAL & ELECTRONICS ENGINEERING SEMESTER TWO EXAMINATION 2017/2018

ELECTRICAL AND COMPUTER ENGINEERING DEPARTMENT, OAKLAND UNIVERSITY ECE-2700:

Lecture 02: Digital Logic Review

Combinational Circuits: Multiplexers, Decoders, Programmable Logic Devices

In this lecture: Lecture 8: ROM & Programmable Logic Devices

6.111 Lecture # 19. Controlling Position. Some General Features of Servos: Servomechanisms are of this form:

Fan in: The number of inputs of a logic gate can handle.

Types of Control. Programmed Non-programmed. Program Counter Hardwired

EE 42/100 Lecture 24: Latches and Flip Flops. Rev A 4/14/2010 (8:30 PM) Prof. Ali M. Niknejad

Mixed Synchronous/Asynchronous State Memory for Low Power FSM Design

Lecture Topics ECE 341. Lecture # 4. Decoder. 2-to-4 Decoder Circuit

Data Sheet. HCTL-2000 Quadrature Decoder/Counter Interface ICs HCTL-2000, HCTL-2016, HCTL-2020

Chapter 3. H/w s/w interface. hardware software Vijaykumar ECE495K Lecture Notes: Chapter 3 1

Computer Architecture and Organization:

ISSN: ISO 9001:2008 Certified International Journal of Engineering and Innovative Technology (IJEIT) Volume 4, Issue 11, May 2015

DIGITAL ELECTRONICS QUESTION BANK

EECS-140/141 Introduction to Digital Logic Design Lecture 7:Sequential Logic Basics

The Non Inverting Buffer

Lecture 3: Logic circuit. Combinational circuit and sequential circuit

Unit-6 PROGRAMMABLE INTERRUPT CONTROLLERS 8259A-PROGRAMMABLE INTERRUPT CONTROLLER (PIC) INTRODUCTION

FPGA Based System Design


Finite State Machines CS 64: Computer Organization and Design Logic Lecture #16

Digital Fundamentals 8/25/2016. Summary. Summary. Floyd. Chapter 1. Analog Quantities

Topics. Memory Reliability and Yield Control Logic. John A. Chandy Dept. of Electrical and Computer Engineering University of Connecticut

Digital Design and System Implementation. Overview of Physical Implementations

Exam #2 EE 209: Fall 2017

Laboratory Manual CS (P) Digital Systems Lab

ELECTRICAL AND COMPUTER ENGINEERING DEPARTMENT, OAKLAND UNIVERSITY ECE-378:

EE 330 Lecture 44. Digital Circuits. Ring Oscillators Sequential Logic Array Logic Memory Arrays. Final: Tuesday May 2 7:30-9:30

EE6301 DIGITAL LOGIC CIRCUITS LT P C UNIT I NUMBER SYSTEMS AND DIGITAL LOGIC FAMILIES 9

COMPUTER ORGANIZATION & ARCHITECTURE DIGITAL LOGIC CSCD211- DEPARTMENT OF COMPUTER SCIENCE, UNIVERSITY OF GHANA

COURSE LEARNING OUTCOMES AND OBJECTIVES

(CSC-3501) Lecture 6 (31 Jan 2008) Seung-Jong Park (Jay) CSC S.J. Park. Announcement

P3Z22V10 3V zero power, TotalCMOS, universal PLD device

Broadcom. BCM4334 Single Chip Dual-Band Combo Wireless Connectivity Device. Circuit Analysis of Power Management Unit and Clock Generator Circuits

Chapter # 1: Introduction

Implementing Logic with the Embedded Array

Course Overview. Course Overview

IES Digital Mock Test

Combinational logic. ! Regular logic: multiplexers, decoders, LUTs and FPGAs. ! Switches, basic logic and truth tables, logic functions

Objective Questions. (a) Light (b) Temperature (c) Sound (d) all of these

Digital Electronics 8. Multiplexer & Demultiplexer

Chapter 4: FLIP FLOPS. (Sequential Circuits) By: Siti Sabariah Hj. Salihin ELECTRICAL ENGINEERING DEPARTMENT EE 202 : DIGITAL ELECTRONICS 1

USE GAL DEVICES FOR NEW DESIGNS

Chapter 5 Sequential Logic Circuits Part II Hiroaki Kobayashi 7/11/2011

Electronics. Digital Electronics

CHAPTER 16 SEQUENTIAL CIRCUIT DESIGN. Click the mouse to move to the next page. Use the ESC key to exit this chapter.

CMOS Digital Integrated Circuits Lec 11 Sequential CMOS Logic Circuits

Electronic Circuits EE359A

COMBINATIONAL and SEQUENTIAL LOGIC CIRCUITS Hardware implementation and software design

Philips Semiconductors Programmable Logic Devices

Data Logger by Carsten Kristiansen Napier University. November 2004

Digital Fundamentals

ISSN Vol.05, Issue.07, July-2017, Pages:

Lecture 18. BUS and MEMORY

Volterra. VT1115MF Pulse Width Modulation (PWM) Controller. Partial Circuit Analysis

EE 434 Final Projects Fall 2006

DS1075 EconOscillator/Divider

LOGIC DIAGRAM: HALF ADDER TRUTH TABLE: A B CARRY SUM. 2012/ODD/III/ECE/DE/LM Page No. 1

UNDERSTANDING THE DDC112 s CONTINUOUS AND NON-CONTINUOUS MODES OVERVIEW

Classification of Digital Circuits

Practical Workbook Logic Design & Switching Theory

8253 functions ( General overview )

DS1073 3V EconOscillator/Divider

PC-OSCILLOSCOPE PCS500. Analog and digital circuit sections. Description of the operation

D U I S B U R G E S S E N

Samsung S5K3L1YX Mp, 1/3.2 Inch Optical Format 1.12 µm Pixel Pitch Back Illuminated (BSI) CMOS Image Sensor

Computer Architecture: Part II. First Semester 2013 Department of Computer Science Faculty of Science Chiang Mai University

EE 330 Lecture 44. Digital Circuits. Dynamic Logic Circuits. Course Evaluation Reminder - All Electronic

VLSI Design 11. Sequential Elements

INF3430 Clock and Synchronization

Combinational Logic. Combinational Logic Design Process, Three State Buffers, Decoders, Multiplexers, Encoders, Demultiplexers, Other Considerations

Logic Families. Describes Process used to implement devices Input and output structure of the device. Four general categories.

Outline. CPE/EE 422/522 Advanced Logic Design L02. Review: Combinational-Circuit Building Blocks. Multiplexers: 2-to-1 Multiplexer

UNIT II: Clocked Synchronous Sequential Circuits. CpE 411 Advanced Logic Circuits Design 1

1 Q' 3. You are given a sequential circuit that has the following circuit to compute the next state:

Transcription:

Chapter 9. sequential logic technologies In chapter 4, we looked at diverse implementation technologies for combinational logic circuits: random logic, regular logic, programmable logic. The similar variants can be also applied to the implementation of sequential logic systems. Technology Copyright 24, Gaetano Borriello and Randy H. Katz

Combination logic technologies Revisited Standard gates (random logic) gate packages cell libraries Regular logic multiplexers decoders Two-level programmable logic PALs PLAs ROMs Recall that there are three categories of approaches to implement combinational logic circuits. The random logic is also called fixed logic. Technology Copyright 24, Gaetano Borriello and Randy H. Katz 2

Sequential logic implementation Implementation random logic gates and FFs programmable logic devices (PAL with FFs) Design procedure state diagrams state transition table state assignment and encoding next state functions There are two categories in implementing sequential logic circuits. We already covered the first approach. In chapters 7 and 8, we implemented the combination logic for the next state and output by random logic gates mostly. Before going on to the programmable logic devices such as PAL, we look at some special cases of sequential logic circuit implementations. Technology Copyright 24, Gaetano Borriello and Randy H. Katz 3

Median filter FSM Remove single s between two s (output = NS3) Reset I PS PS2 PS3 NS NS2 NS3 X X X X X X The first example is to try to implement the overall system by using a shift register instead of three independent FFs. Whenever the three recent bits are, the output becomes. Technology Copyright 24, Gaetano Borriello and Randy H. Katz 4

Median filter FSM (cont d) Realized using the standard procedure and individual FFs and gates I PS PS2 PS3 NS NS2 NS3 X X X X X X NS = Reset (I) NS2 = Reset ( PS + PS2 I ) NS3 = Reset PS2 O = PS3 If we implement the combinational logic with K-maps, the next states will be represented by the above expressions. If reset is true, all the stored values will be reset to s. Technology Copyright 24, Gaetano Borriello and Randy H. Katz 5

Median filter FSM (cont d) But it looks like a shift register if you look at it right Reset Reset The state diagram of the median filter is so similar to that of a 3-bit shift register. Technology Copyright 24, Gaetano Borriello and Randy H. Katz 6

Median filter FSM (cont d) An alternate implementation with S/R FFs Reset In R S D Q R S D Q R S D Q Out R = Reset S = PS2 I NS = I NS2 = PS NS3 = PS2 O = PS3 CLK The set input (S) does the median filter function by making the next state whenever the input is and PS2 is ( input to state xx) Consider the function of the median filter, if the input string is, the output (or the next state) will be. In other words, if the current input is and PS2 is, then NS, NS2, NS3 will be set to s. This example can be compared to a regular logic implementation of combinational logic systems, shift registers and counters are similar to MUXes and DEMUXes. Technology Copyright 24, Gaetano Borriello and Randy H. Katz 7

homework Example 9.2 Figure 9.4 and 9.5 No need to hand in solutions Technology Copyright 24, Gaetano Borriello and Randy H. Katz 8

Programmable logic building block for sequential logic ROM, PLA/PAL Inputs Combinational Logic Output Function Next State Function Registers Outputs Block Block Diagram for for Synchronous Mealy Mealy Machine State ROM Registers ROM-based Realization Inputs A An- D Dk- Outputs Inputs & Current State form the address An Dk An+m- Dk+m- ROM data bits form the Outputs & Next State State Technology Copyright 24, Gaetano Borriello and Randy H. Katz 9

Implementation using PALs Programmable logic building block for sequential logic macro-cell: FF + logic D-FF two-level logic capability like PAL (e.g., 8 product terms) D Q Q This slide illustrates an implementation with a PAL. An input comes from the bottom left to the AND array. The current state goes back from the bottom right to the AND array. Be aware that there can be multiple blocks. Technology Copyright 24, Gaetano Borriello and Randy H. Katz

Vending machine example (Moore PLD mapping) D D OPEN = reset'(q'n + QN' + QN + QD) = reset'(q + D + QN) = QQ CLK DQ Q N Seq DQ Q D Seq DQ Open Reset Com This is a PAL implementation of the vending machine based on the Moore model. Seq (sequential) IX - Sequential and Logic Com (combinational) are the selector inputs of the MUXes, depicted by trapezoids. Technology X marks indicate enabled Copyright 24, cross-points. Gaetano Borriello and The Randy trapezoid H. Katz is a MUX.

Vending machine (synch. Mealy PLD mapping) OPEN = reset'(qqn' + QN + QD + Q'ND + QN'D) CLK DQ Q N Seq DQ Q D Seq OPEN DQ Open Reset Seq This synch. Mealy machine is derived from Moore machine model. So here, OPEN is reset DD, actually. Technology Copyright 24, Gaetano Borriello and Randy H. Katz 2

22V PAL Combinational logic elements (SoP) Sequential logic elements (D-FFs) Up to outputs Up to FFs Up to 22 inputs Fig. 9.28 This is a specific type of a PAL, which has blocks (or combinational logic elements). There is a tri-state gate on the rightmost column. OE is output enable. If OE is unasserted, the gate is disconnected. Technology Copyright 24, Gaetano Borriello and Randy H. Katz 3

Tri-state buffer 4 types Depending on s, either X or X2 will be connected to output f Depending on whether OE and output are inverted, there are 4 types of tri-state buffers. Z means Technology high-impedance state, Copyright which 24, means Gaetano Borriello the output and Randy is H. disconnected Katz from the input. 4

Tri-state buffer Tri-state buffers are used when multiple circuits all connect to a common bus. Only one circuit at a time is allowed to drive the bus If there is a shared bus, and multiple inputs have different voltage values, there is a conflict about the data value in the bus. That is why a tri-state buffer is widely used in FPGAs. For details, look at section 4.4 Technology Copyright 24, Gaetano Borriello and Randy H. Katz 5

OE 22V PAL Macro Cell Sequential logic element + output/input selection Asynchronous Reset (AR) sets all registers to zero any time. Synchronous Preset (SP) sets all registers to a logic one on the rising edge of the next clock pulse. AR and SP are common to all the registers. This is the inside of a macro cell. The main function of this macrocell is to select the current output of the combinational logic or the stored value, which will be relayed to the output. Also, it can decide that either the stored value or the final output goes back to the combinational logic part. Technology Copyright 24, Gaetano Borriello and Randy H. Katz 6

Example: traffic light controller A busy highway is intersected by a little used farmroad Detectors C sense the presence of cars waiting on the farmroad with no car on farmroad, light remain green in highway direction if vehicle on farmroad, highway lights go from Green to Yellow to Red, allowing the farmroad lights to become green these stay green only as long as a farmroad car is detected but never longer than a set interval when these conditions are met, farm lights transition from Green to Yellow to Red, allowing highway to return to green even if farmroad vehicles are waiting, highway gets at least a set interval as green Assume you have an interval timer that generates: a short time pulse (TS) and a long time pulse (TL), in response to a set (ST) signal. TS is to be used for timing yellow lights and TL for green lights Now we will look at a traffic light controller, which controls traffic signals for two crossing roads. Probably, we should give a green light to highway traffic as much as possible. Technology Copyright 24, Gaetano Borriello and Randy H. Katz 7

Example: traffic light controller (cont ) Highway/farm road intersection farm road car sensors highway There are two sensors on the farmroad. When one of them detects a car waiting, it will send a signal to the traffic controller. The signal is denoted by C Technology Copyright 24, Gaetano Borriello and Randy H. Katz 8

Example: traffic light controller (cont ) Tabulation of inputs and outputs inputs description outputs description reset place FSM in initial state HG, HY, HR assert green/yellow/red highway lights C detect vehicle on the farm road FG, FY, FR assert green/yellow/red highway lights TS short time interval expired ST start timing a short or long interval TL long time interval expired Tabulation of unique states some light configurations imply others state HG HY FG FY description highway green (farm road red) highway yellow (farm road red) farm road green (highway red) farm road yellow (highway red) There ar many variables. H is Highway and F means Farmroad. G,Y and R are initials of Green, Yellow, and Red. TS for a yellow signal and TL is for a green signal. ST triggers either TS or TL depending on situations. Technology Copyright 24, Gaetano Borriello and Randy H. Katz 9

Example: traffic light controller (cont ) State diagram (TL C)' Reset TL C / ST HG TS / ST TS' HY FY TS' TS / ST FG TL+C' / ST (TL+C')' Suppose the system starts with HG state. If the long interval expires and C is asserted, then it will move to HY state. With this transition, it will enable ST (for short interval). After the short interval, TS will be set to true, which makes the system go to FG state. In FG state, either of two events will trigger the transition to the next state, FY. Two events are long time expiration and no car on the farmroad. Each transition will set the timer, Technology Copyright 24, Gaetano Borriello and Randy H. Katz 2 either long interval or short interval.

Example: traffic light controller (cont ) Generate state table with symbolic states Consider state assignments output encoding similar problem to state assignment (Green =, Yellow =, Red = ) Inputs Present State Next State Outputs C TL TS PS PS NS NS ST H F HG HG Green Red HG HG Green Red HG HY Green Red HY HY Yellow Red HY FG Yellow Red FG FG Red Green FG FY Red Green FG FY Red Green FY FY Red Yellow FY HG Red Yellow SA: HG = HY = FG = FY = SA2: HG = HY = FG = FY = SA3: HG = HY = FG = FY = (one-hot) We will consider three kinds of state assignments (SA, SA2, SA3). Technology Copyright 24, Gaetano Borriello and Randy H. Katz 2

Logic for different state assignments SA NS = C TL' PS PS + TS PS' PS + TS PS PS' + C' PS PS + TL PS PS NS = C TL PS' PS' + C TL' PS PS + PS' PS ST = C TL PS' PS' + TS PS' PS + TS PS PS' + C' PS PS + TL PS PS H = PS H = PS' PS F = PS' F = PS PS SA2 NS = C TL PS' + TS' PS + C' PS' PS NS = TS PS PS' + PS' PS + TS' PS PS SA3 ST = C TL PS' + C' PS' PS + TS PS H = PS F = PS' NS3 = C' PS2 + TL PS2 + TS' PS3 NS = C TL PS + TS' PS H = PS PS' F = PS PS NS2 = TS PS + C TL' PS2 NS = C' PS + TL' PS + TS PS3 ST = C TL PS + TS PS + C' PS2 + TL PS2 + TS PS3 H = PS3 + PS2 H = PS F = PS + PS F = PS3 These are the boolean expressions for each state assignment. Note that in SA3, the product terms for the next state is originally the number of incoming transitions. Technology Copyright 24, Gaetano Borriello and Randy H. Katz 22

Sequential logic implementation summary Models for representing sequential circuits finite state machines and their state diagrams Mealy, Moore, and synchronous Mealy machines Finite state machine design procedure deriving state diagram deriving state transition table assigning codes to states determining next state and output functions implementing combinational logic Implementation technologies random logic + FFs PAL with FFs (programmable logic devices PLDs) Technology Copyright 24, Gaetano Borriello and Randy H. Katz 23