CPE/EE 422/522 Advanced Logic Design L02

Slides:



Advertisements
Similar presentations
CS370 – Spring 2003 Hazards/Glitches. Time Response in Combinational Networks Gate Delays and Timing Waveforms Hazards/Glitches and How To Avoid Them.
Advertisements

컴퓨터구조론 교수 채수환. 교재 Computer Systems Organization & Architecture John D. Carpinelli, 2001, Addison Wesley.
Digital Design: Combinational Logic Blocks
Programmable Logic PAL, PLA.
Multiplexors Sequential Circuits and Finite State Machines Prof. Sin-Min Lee Department of Computer Science.
Circuits require memory to store intermediate data
1 Digital Logic

Digital Logic Design CHAPTER 5 Sequential Logic. 2 Sequential Circuits Combinational circuits – The outputs are entirely dependent on the current inputs.
Chapter 12 Digital Logic Circuit Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.
Figure to-1 Multiplexer and Switch Analog
Digital Computer Design Fundamental
Introduction to Digital Logic Design Appendix A of CO&A Dr. Farag
COE 202: Digital Logic Design Sequential Circuits Part 1
Combinational Logic Design
Memory and Programmable Logic Dr. Ashraf Armoush © 2010 Dr. Ashraf Armoush.
Computer Architecture and Organization Unit -1. Digital Logic Circuits – Logic Gates – Boolean Algebra – Map Simplification – Combinational Circuits –
Synchronous Sequential Logic A digital system has combinational logic as well as sequential logic. The latter includes storage elements. feedback path.
Chapter 6 – Digital Electronics – Part 1 1.D (Data) Flip Flops 2.RS (Set-Reset) Flip Flops 3.T Flip Flops 4.JK Flip Flops 5.JKMS Flip Flops Information.
Programmable logic devices. CS Digital LogicProgrammable Logic Device2 Outline PLAs PALs ROMs.
©2010 Cengage Learning SLIDES FOR CHAPTER 8 COMBINATIONAL CIRCUIT DESIGN AND SIMULATION USING GATES Click the mouse to move to the next page. Use the ESC.
©2010 Cengage Learning SLIDES FOR CHAPTER 8 COMBINATIONAL CIRCUIT DESIGN AND SIMULATION USING GATES Click the mouse to move to the next page. Use the ESC.
Sequential logic circuits First Class 1Dr. AMMAR ABDUL-HAMED KHADER.
Appendix C Basics of Logic Design. Appendix C — Logic Basic — 2 Logic Design Basics §4.2 Logic Design Conventions Objective: To understand how to build.
Chapter- 9 Programmable Logic Devices DHADUK ANKITA ENRL NO Noble Engineering College- Junagadh.
This chapter in the book includes: Objectives Study Guide
Memory and Programmable Logic
Sequential Logic Design
Computer Science 210 Computer Organization
Chapter #6: Sequential Logic Design
DIGITAL LOGIC CIRCUITS
CS221: Digital Logic Design Combinational Circuits 3
Instructor: Alexander Stoytchev
Synchronous Sequential Circuits
Overview Introduction Logic Gates Flip Flops Registers Counters
Lecture 9 Logistics Last lecture Today HW3 due Wednesday
DIGITAL LOGIC CIRCUITS
Basics of Digital Logic Design Presentation D
This chapter in the book includes: Objectives Study Guide
Computer Science 210 Computer Organization
CPE/EE 422/522 Advanced Logic Design
ECE 434 Advanced Digital System L03
Reading: Hambley Chapters
Chapter 11 Sequential Circuits.
CPE/EE 422/522 Advanced Logic Design L03
Basics Combinational Circuits Sequential Circuits Ahmad Jawdat
LECTURE 15 – DIGITAL ELECTRONICS
Computer Science 210 Computer Organization
CPE/EE 422/522 Advanced Logic Design L04
ECE 434 Advanced Digital System L04
Digital Logic Structures Logic gates & Boolean logic
触发器 Flip-Flops 刘鹏 浙江大学信息与电子工程学院 March 27, 2018
Lecture Part A Combinational Logic Design & Flip Flop
ECE 434 Advanced Digital System L05
Programmable Logic Devices (PLDs)
Synchronous Sequential Circuits
ECE434a Advanced Digital Systems L02
Instructor: Alexander Stoytchev
ECE434a Advanced Digital Systems L06
CSE 370 – Winter Sequential Logic - 1
Part I Background and Motivation
Sequential Circuit Analysis & Design
Chapter 3 Overview • Multi-Level Logic
FLIP-FLOPS.
Synchronous sequential
Synchronous Sequential
Lecture 14: State Tables, Diagrams, Latches, and Flip Flop
Chapter 5 Sequential Circuits.
Presentation transcript:

CPE/EE 422/522 Advanced Logic Design L02 Electrical and Computer Engineering University of Alabama in Huntsville

Outline What we know What we do not know Laws and Theorems of Boolean Algebra Simplification of Logic Expressions Using Laws and Theorems of Boolean Algebra or Using K-maps Design Using only NAND or only NOR gates Tri-state buffers Basic Combinational Building Blocks Multiplexers, Decoders, Encoders, ... What we do not know Hazards in Combinational Networks How to implement functions using ROMs, PLAs, and PALs Sequential Networks (if time) 11/11/2018 UAH-CPE/EE 422/522 AM

Review: Combinational-Circuit Building Blocks Multiplexers Decoders Encoders Code Converters Comparators Adders/Subtractors Multipliers Shifters 11/11/2018 UAH-CPE/EE 422/522 AM

Multiplexers: 2-to-1 Multiplexer Have number of data inputs, one or more select inputs, and one output It passes the signal value on one of data inputs to the output s w w f s w f 1 1 w (a) Graphical symbol 1 (c) Sum-of-products circuit s f w 1 w 1 (b) Truth table 11/11/2018 UAH-CPE/EE 422/522 AM

Review: Synthesis of Logic Functions Using Muxes 1 2 3 w w f 1 2 1 w 1 3 1 w 1 3 w 1 1 1 1 1 1 2 w 1 1 1 1 1 w 1 1 1 3 f 1 1 1 1 1 (a) Modified truth table (b) Circuit 11/11/2018 UAH-CPE/EE 422/522 AM

Decoders: n-to-2n Decoder Decode encoded information: n inputs, 2n outputs If En = 1, only one output is asserted at a time One-hot encoded output m-bit binary code where exactly one bit is set to 1 w y n 2 n inputs w outputs n – 1 y Enable En 2 n – 1 11/11/2018 UAH-CPE/EE 422/522 AM

Decoders: 2-to-4 Decoder En w w y y y y 1 1 2 3 w 1 1 y 1 1 1 w 1 1 1 1 1 1 1 1 x x y 1 (a) Truth table y 2 w y w y 1 1 y 3 y 2 y En En 3 (c) Logic circuit (b) Graphic symbol 11/11/2018 UAH-CPE/EE 422/522 AM

Encoders Opposite of decoders Binary encoders Encode given information into a more compact form Binary encoders 2n inputs into n-bit code Exactly one of the input signals should have a value of 1, and outputs present the binary number that identifies which input is equal to 1 Use: reduce the number of bits (transmitting and storing information) w y n n 2 outputs inputs y w n – 1 2 n – 1 11/11/2018 UAH-CPE/EE 422/522 AM

Encoders: 4-to-2 Encoder w w w w y y 3 2 1 1 w 1 w 1 1 1 y 1 1 w 1 1 1 2 y w 1 3 (a) Truth table (b) Circuit 11/11/2018 UAH-CPE/EE 422/522 AM

Encoders: Priority Encoders Each input has a priority level associated with it The encoder outputs indicate the active input that has the highest priority (a) Truth table for a 4-to-2 priority encoder w w w w y y z 3 2 1 1 d d 1 1 1 x 1 1 1 x x 1 1 1 x x x 1 1 1 11/11/2018 UAH-CPE/EE 422/522 AM

Code Converters Convert from one type of input encoding to a different output encoding E. g., BCD-to-7-segment decoder w w w w a b c d e f g 3 2 1 a a 1 1 1 1 1 1 b w 1 1 1 c f b w 1 1 1 1 1 1 1 d w 2 g 1 1 1 1 1 1 1 e e c w 3 1 1 1 1 1 f g 1 1 1 1 1 1 1 d 1 1 1 1 1 1 1 1 (a) Code converter (b) 7-segment display 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 (c) Truth table 11/11/2018 UAH-CPE/EE 422/522 AM

Hazards in Combinational Networks What are hazards in CM? Unwanted switching transients at the output (glitches) Example ABC = 111, B changes to 0 Assume each gate has propagation delay of 10ns 11/11/2018 UAH-CPE/EE 422/522 AM

Hazards in Combinational Networks Occur when different paths from input to output have different propagation delays Static 1-hazard a network output momentarily go to the 0 when it should remain a constant 1 Static 0-hazard a network output momentarily go to the 1 when it should remain a constant 0 Dynamic hazard if an output change three or more times, when the output is supposed to change from 0 to 1 (1 to 0) 11/11/2018 UAH-CPE/EE 422/522 AM

Hazards in Combinational Circuits 1 00 01 11 10 AB C AB 00 01 11 10 C 1 1 1 1 1 To avoid hazards: every par of adjacent 1s should be covered by a 1-term 11/11/2018 UAH-CPE/EE 422/522 AM

Hazards in Combinational Circuits Why do we care about hazards? Combinational networks don’t care – the network will function correctly Synchronous sequential networks don’t care - the input signals must be stable within setup and hold time of flip-flops Asynchronous sequential networks hazards can cause the network to enter an incorrect state circuitry that generates the next-state variables must be hazard-free Power consumption is proportional to the number of transitions 11/11/2018 UAH-CPE/EE 422/522 AM

Programmable Logic Devices Read Only Memories (ROMs) Programmable Logic Arrays (PLAs) Programmable Array Logic Devices (PALs) 11/11/2018 UAH-CPE/EE 422/522 AM

Read-Only Memories Store binary data data can be read out whenever desired cannot be changed under normal operating conditions n input lines, m output lines => array of 2n m-bit words Input lines serve as an address to select one of 2n words Use ROM to implement logic functions? n variables, m functions 11/11/2018 UAH-CPE/EE 422/522 AM

Basic ROM Structure 11/11/2018 UAH-CPE/EE 422/522 AM

ROM Types Mask-programmable ROM EPROM (Erasable Programmable ROM) Data is permanently stored (include or omit the switching elements) Economically feasible for a large quantity EPROM (Erasable Programmable ROM) Use special charge-storage mechanism to enable or disable the switching elements in the memory array PROM programmer is used to provide appropriate voltage pulses to store electronic charges Data is permanent until erased using an ultraviolet light EEPROM – Electrically Erasable PROM erasure is accomplished using electrical pulses (can be reprogrammed typically 100 to 1000 times) Flash memories - similar to EEPROM except they use a different charge-storage mechanism usually have built-in programming and erase capability, so the data can be written to the flash memory while it is in place, without the need for a separate programmer 11/11/2018 UAH-CPE/EE 422/522 AM

Programmable Logic Arrays (PLAs) Perform the same function as a ROM n inputs and m outputs – m functions of n variables AND array – realizes product terms of the input variables OR array – ORs together the product terms 11/11/2018 UAH-CPE/EE 422/522 AM

PLA: 3 inputs, 5 p.t., 4 outputs 11/11/2018 UAH-CPE/EE 422/522 AM

nMOS NOR Gate 11/11/2018 UAH-CPE/EE 422/522 AM

AND-OR Array Equivalent 11/11/2018 UAH-CPE/EE 422/522 AM

Modified Truth Table for PLA 0 – variable is complemented 1 – variable is not complemented - – not present in the term Product Term Inputs Outputs A B C F0 F1 F2 F3 A’B’ - 1 AC’ BC’ AC 11/11/2018 UAH-CPE/EE 422/522 AM

Using PLA: An Example Eight different product terms are required!? For PLA we want to minimize the total number of product terms, not the number of product terms for each function separately! 11/11/2018 UAH-CPE/EE 422/522 AM

Using PLA: An Example cd cd cd ab ab ab 00 01 11 10 00 01 11 10 00 01 F1 F2 F3 11/11/2018 UAH-CPE/EE 422/522 AM

Using PLA: An Example 11/11/2018 UAH-CPE/EE 422/522 AM

Programmable Array Logic (PALs) PAL is a special case of PLA AND array is programmable and OR array is fixed PAL is less expensive easier to program 11/11/2018 UAH-CPE/EE 422/522 AM

Programmable Array Logic (PALs) Unprogrammed Programmed 11/11/2018 UAH-CPE/EE 422/522 AM

PALs Typical PALs have from 10 to 20 inputs from 2 to 10 outputs from 2 to 8 AND gates driving each OR gate often include D flip-flops 11/11/2018 UAH-CPE/EE 422/522 AM

Logic Diagram for 16R4 PAL 11/11/2018 UAH-CPE/EE 422/522 AM

Logic Diagram for 16R4 PAL 11/11/2018 UAH-CPE/EE 422/522 AM

Using PALs: An Example Implement the following: x x x P P P P 1 2 3 Implement the following: P 1 P 2 P 3 P 4 AND plane 11/11/2018 UAH-CPE/EE 422/522 AM

Using PALs: An Example x x x P f P P f P AND plane 11/11/2018 3 P 1 f 1 P 2 P 3 f 2 P 4 AND plane 11/11/2018 UAH-CPE/EE 422/522 AM

Typical PALs Typical PALs have from 10 to 20 inputs from 2 to 10 outputs from 2 to 8 AND gates driving each OR gate often include D flip-flops f 1 To AND plane D Q Clock Select Enable Flip-flop MUX output is “fed back” to the AND plane. Why? 11/11/2018 UAH-CPE/EE 422/522 AM

To Do Read Textbook chapters 1.5, 3.1, 3.2, 3.3 11/11/2018 UAH-CPE/EE 422/522 AM

Sequential Networks Have memory (state) X = x1 x2... xn Present state depends not only on the current input, but also on all previous inputs (history) Future state depends on the current input and state X = x1 x2... xn Q = Q1 Q2... Qk Z = z1 z2... zm x1 z1 x2 z2 Q Flip-flops are commonly used as storage devices: D-FF, JK-FF, T-FF xn zm 11/11/2018 UAH-CPE/EE 422/522 AM

Clocked D Flip-Flop with Rising-edge Trigger Next state The next state in response to the rising edge of the clock is equal to the D input before the rising edge 11/11/2018 UAH-CPE/EE 422/522 AM

Clocked JK Flip-Flop Next state JK = 00 => no state change occurs JK = 10 => the flip-flop is set to 1, independent of the current state JK = 01 => the flip-flop is always reset to 0 JK = 11 => the flip-flop changes the state Q+ = Q’ 11/11/2018 UAH-CPE/EE 422/522 AM

Clocked JK Flip-Flop Next state T = 1 => the flip-flop changes the state Q+ = Q’ T = 0 => no state change 11/11/2018 UAH-CPE/EE 422/522 AM

S-R Latch 11/11/2018 UAH-CPE/EE 422/522 AM

Transparent D Latch 11/11/2018 UAH-CPE/EE 422/522 AM

Transparent D Latch 11/11/2018 UAH-CPE/EE 422/522 AM

Mealy Sequential Networks General model of Mealy Sequential Network (1) X inputs are changed to a new value After a delay, the Z outputs and next state appear at the output of CM (3) The next state is clocked into the state register and the state changes 11/11/2018 UAH-CPE/EE 422/522 AM

An Example: 8421 BCD to Excess3 BCD Code Converter z Q X (inputs) Z (outputs) t3 t2 t1 t0 1 11/11/2018 UAH-CPE/EE 422/522 AM

State Graph and Table for Code Converter 11/11/2018 UAH-CPE/EE 422/522 AM

State Assignment Rules 11/11/2018 UAH-CPE/EE 422/522 AM

Transition Table 11/11/2018 UAH-CPE/EE 422/522 AM

K-maps 11/11/2018 UAH-CPE/EE 422/522 AM

Realization 11/11/2018 UAH-CPE/EE 422/522 AM