Boolean Logic Continued Prof. James L. Frankel Harvard University

Similar documents
Boolean Logic Prof. James L. Frankel Harvard University. Version of 3:20 PM 29-Aug-2017 Copyright 2017, 2016 James L. Frankel. All rights reserved.

MASSACHUSETTS INSTITUTE OF TECHNOLOGY Department of Electrical Engineering and Computer Sciences

ELCT201: DIGITAL LOGIC DESIGN

Latches. October 13, 2003 Latches 1

Appendix B. Review of Digital Logic. Baback Izadi Division of Engineering Programs

Sample Test Paper - I

Fundamentals of Digital Design

Lecture 7: Logic design. Combinational logic circuits

MODULAR CIRCUITS CHAPTER 7

ELCT201: DIGITAL LOGIC DESIGN

Chapter 3 Combinational Logic Design

CprE 281: Digital Logic

Design of Sequential Circuits

Software Engineering 2DA4. Slides 8: Multiplexors and More

Sequential vs. Combinational

CPE100: Digital Logic Design I

CprE 281: Digital Logic

Digital Logic: Boolean Algebra and Gates. Textbook Chapter 3

Logic Design Combinational Circuits. Digital Computer Design

Slide Set 6. for ENEL 353 Fall Steve Norman, PhD, PEng. Electrical & Computer Engineering Schulich School of Engineering University of Calgary

COSC3330 Computer Architecture Lecture 2. Combinational Logic

Chapter 2 Combinational Logic Circuits

Number System. Decimal to binary Binary to Decimal Binary to octal Binary to hexadecimal Hexadecimal to binary Octal to binary

UNIVERSITY OF WISCONSIN MADISON

CPS 104 Computer Organization and Programming Lecture 11: Gates, Buses, Latches. Robert Wagner

Memory, Latches, & Registers

ALU A functional unit

For smaller NRE cost For faster time to market For smaller high-volume manufacturing cost For higher performance

Chapter 2 Combinational Logic Circuits

ECE 545 Digital System Design with VHDL Lecture 1. Digital Logic Refresher Part A Combinational Logic Building Blocks

Logic. Combinational. inputs. outputs. the result. system can

Digital System Design Combinational Logic. Assoc. Prof. Pradondet Nilagupta

University of Florida EEL 3701 Fall 2014 Dr. Eric. M. Schwartz Department of Electrical & Computer Engineering Wednesday, 15 October 2014

DM74S373 DM74S374 3-STATE Octal D-Type Transparent Latches and Edge-Triggered Flip-Flops

CPE100: Digital Logic Design I

ECE 341. Lecture # 3

Chapter 4. Combinational: Circuits with logic gates whose outputs depend on the present combination of the inputs. elements. Dr.

Combinational Logic. Mantıksal Tasarım BBM231. section instructor: Ufuk Çelikcan

University of Toronto Faculty of Applied Science and Engineering Edward S. Rogers Sr. Department of Electrical and Computer Engineering

LOGIC CIRCUITS. Basic Experiment and Design of Electronics

Computer Science 324 Computer Architecture Mount Holyoke College Fall Topic Notes: Digital Logic

ECE 545 Digital System Design with VHDL Lecture 1A. Digital Logic Refresher Part A Combinational Logic Building Blocks

University of Florida EEL 3701 Summer 2015 Dr. Eric. M. Schwartz Department of Electrical & Computer Engineering Tuesday, 30 June 2015

Function of Combinational Logic ENT263

Topics. Dynamic CMOS Sequential Design Memory and Control. John A. Chandy Dept. of Electrical and Computer Engineering University of Connecticut

Memory Elements I. CS31 Pascal Van Hentenryck. CS031 Lecture 6 Page 1

Topics. CMOS Design Multi-input delay analysis. John A. Chandy Dept. of Electrical and Computer Engineering University of Connecticut

CSE140: Components and Design Techniques for Digital Systems. Decoders, adders, comparators, multipliers and other ALU elements. Tajana Simunic Rosing

Combinational Logic Design Combinational Functions and Circuits

Synchronous Sequential Logic

Chapter 4 (Lect 4) Encoders Multiplexers Three-State Gates More Verilog

Z = F(X) Combinational circuit. A combinational circuit can be specified either by a truth table. Truth Table

Digital Logic & Computer Design CS Professor Dan Moldovan Spring Copyright 2007 Elsevier 2-<101>

Synchronous Sequential Circuit

Vidyalankar S.E. Sem. III [CMPN] Digital Logic Design and Analysis Prelim Question Paper Solution

Combinational Logic. By : Ali Mustafa

Digital Logic & Computer Design CS Professor Dan Moldovan Spring 2010

Sequential Circuit Analysis

Floating Point Representation and Digital Logic. Lecture 11 CS301

Integrated Circuits & Systems

DM74LS373 DM74LS374 3-STATE Octal D-Type Transparent Latches and Edge-Triggered Flip-Flops

Unit 3 Session - 9 Data-Processing Circuits

Sequential Logic Worksheet

Digital Circuits ECS 371

Appendix A: Digital Logic. Principles of Computer Architecture. Principles of Computer Architecture by M. Murdocca and V. Heuring

Building a Computer Adder

Chapter 7 Sequential Logic


Quiz 2 Solutions Room 10 Evans Hall, 2:10pm Tuesday April 2 (Open Katz only, Calculators OK, 1hr 20mins)

EE 209 Logic Cumulative Exam Name:

COMBINATIONAL CIRCUITS

Vidyalankar S.E. Sem. III [EXTC] Digital Electronics Prelim Question Paper Solution ABCD ABCD ABCD ABCD ABCD ABCD ABCD ABCD = B

Sequential Logic Circuits

S.Y. Diploma : Sem. III [CO/CM/IF/CD/CW] Digital Techniques

Computer organization

Unit II Chapter 4:- Digital Logic Contents 4.1 Introduction... 4

CHAPTER1: Digital Logic Circuits Combination Circuits

Design of Combinational Logic

Ch 9. Sequential Logic Technologies. IX - Sequential Logic Technology Contemporary Logic Design 1

CSC9R6 Computer Design. Practical Digital Logic

DM74LS670 3-STATE 4-by-4 Register File

Homework Assignment #1 Solutions EE 477 Spring 2017 Professor Parker

LOGIC CIRCUITS. Basic Experiment and Design of Electronics. Ho Kyung Kim, Ph.D.

UNIT 8A Computer Circuitry: Layers of Abstraction. Boolean Logic & Truth Tables

Computer Science. 19. Combinational Circuits. Computer Science COMPUTER SCIENCE. Section 6.1.

Hardware Design I Chap. 4 Representative combinational logic

Lecture 4: Implementing Logic in CMOS

Review: Additional Boolean operations

DIGITAL LOGIC CIRCUITS

CSE140: Components and Design Techniques for Digital Systems. Midterm Information. Instructor: Mohsen Imani. Sources: TSR, Katz, Boriello & Vahid

Topic 8: Sequential Circuits

PG - TRB UNIT-X- DIGITAL ELECTRONICS. POLYTECHNIC-TRB MATERIALS

Boolean Algebra and Digital Logic 2009, University of Colombo School of Computing

ECE 2300 Digital Logic & Computer Organization

Digital Logic Design ENEE x. Lecture 14

Lab 3 Revisited. Zener diodes IAP 2008 Lecture 4 1

Digital Logic. CS211 Computer Architecture. l Topics. l Transistors (Design & Types) l Logic Gates. l Combinational Circuits.

ELE2120 Digital Circuits and Systems. Tutorial Note 9

Sequential Circuits Sequential circuits combinational circuits state gate delay

Digital electronics form a class of circuitry where the ability of the electronics to process data is the primary focus.

Transcription:

Boolean Logic Continued Prof. James L. Frankel Harvard University Version of 10:18 PM 5-Sep-2017 Copyright 2017, 2016 James L. Frankel. All rights reserved.

D Latch D R S Clk D Clk R S X 0 ~S 0 = R 0 ~R 0 = S 0 D 1 D ~D

D Latch Observations Because of the inversion caused by the NAND gates to D and ~D, the state of R is the same as D and the state S is the complement of D In D Latches, we often refer to R as And, we refer to S as ~

Timing Considerations Time is required for an output of a gate to reflect its state after inputs change For any one family of logic gates, this time is simplified and referred to as a gate delay That is, one gate delay is the time that any primitive gate takes to produce a stable output after inputs change The symbol tau, τ, is used to refer to the gate delay

D Latch Constraints Clk should be low when D changes Before Clk goes high, D should be stable for at least one τ We refer to this time as the setup time or t su D should not change when Clk is high In addition, D should not change for some time after Clk goes low We refer to this time as the hold time or t h Clk should be high until Flip Flop is stable One τ for Clk to propagate to the Flip Flop A second τ for Flip Flop input to propagate to R and S Therefore, Clk should be high for at least 2 τ

Encapsulation of D Latch D D Latch Clk ~

Four-bit Register Built from D Latches D 3 D D Latch Clk ~ 3 D 2 D D Latch Clk ~ 2 D 1 D D Latch Clk ~ 1 D 0 D D Latch Clk ~ 0 Clk

Encapsulation of D Latch Four-bit Register 4 D Four-bit D Latch Register Clk ~ 4 4

D Latch Register Encapsulation Observations The slashes on wires to the D Latch Register Encapsulation indicate the bus width This simplifies the diagram by collapsing replicated inputs or outputs In Visio, the bus width symbol is available under Engineering Electrical Engineering Transmission Paths Bus width

Multiplexer, Mux, or Data Selector Initial A multiplexer selects one of multiple inputs to be the output A B Sel A Sel B

Multiplexer, Mux, or Data Selector Design on previous slide also allows ORing the inputs together Often, there is no need to be able to OR inputs And, this design requires multiple Sel inputs So, we can use a single Sel input to select one of two inputs as follows

Multiplexer, Mux, or Data Selector Final A B Sel

Two-bit Mux A 1 1 B 1 A 0 0 B 0 Sel

Mux Encapsulation A B 2 2 2 Sel

Open-Collector Output A device with an open-collector output will pull its output low when the output would be 0, but otherwise appears to be disconnected from the output This disconnected state is really a high impedance state signified by Z Devices with open-collector outputs can have their outputs connected together Thus, when several devices with open-collector outputs have their outputs connected together, any one (or more than one) of those device(s) can pull the output low An external device must be used to default the connected outputs to be high when no open-collector output is pulling the output low Typically, this is a resistor

Open-Collector Schematic Symbols A B A B * A B OC

Truth Table for Open-Collector NAND Gate A B 0 0 Z 0 1 Z 1 0 Z 1 1 0

Open-Collector Output Observations Of course, any gate can have an open-collector output There is a limit to the number of devices with open-collector outputs whose outputs can be connected together Open-collector circuits are often called active-low wired-or or active-high wired-and Why?

Implementing a Bus Using Open-Collector Output Devices A bus is a wire that allows any one of several signals to be driven onto it Thus, it functions as a mux, but is implemented as a wire It may be driven by open-collector outputs Implements a mux, but doesn t require as many gates

Open-Collector Bus A Sel A V CC B Sel B C Sel C D Sel D

Open-Collector Devices on our Altera FPGA The bad news is that, alas, our Altera FPGA does not have any opencollector devices Therefore, we can t use them in our designs

Tri-State Output Devices Another device that can be used to directly implement a bus is a device with a tri-state output These devices are able to drive their outputs either high or low or place their output into a high impedance state The output is put into a high impedance state using an additional enable input Devices with tri-state outputs can have their outputs connected together, but must be carefully managed

Tri-State Buffer or Driver EN ENB A A EN X 0 Z 0 1 0 1 1 1

Simplified Truth Table for Tri-State Buffer or Driver EN ENB A EN 0 Z 1 A

Tri-State Bus Sel A A Sel B B Sel C C ENB ENB ENB Sel D ENB D

Tri-State Output Device Observations Because a tri-state device will drive its output either high or low if it is enabled, Never, never, never enable more than one tri-state device driving the same wire The previous circuit was potentially dangerous What if more than one Sel line was asserted? We make sure that this can never happen by building devices that use tri-state drivers with circuitry that selects only one enable line at a time for tri-states that drive the same wire

Safe Tri-State Bus A 3 ENB A 2 A 1 ENB ENB A 0 ENB Sel 1 Sel 0

Truth Table for Safe Tri-State Bus A 3 A 2 A 1 A 0 Sel 1 Sel 0 X X X 0 0 0 0 X X X 1 0 0 1 X X 0 X 0 1 0 X X 1 X 0 1 1 X 0 X X 1 0 0 X 1 X X 1 0 1 0 X X X 1 1 0 1 X X X 1 1 1

Simplified Truth Table for Safe Tri-State Bus Sel 1 Sel 0 0 0 A 0 0 1 A 1 1 0 A 2 1 1 A 3

Further Simplified Truth Table for Safe Tri-State Bus Sel 1..0 0 A 0 1 A 1 2 A 2 3 A 3

Tri-State Devices on our Altera FPGA The bad news is that, alas, our Altera FPGA does not have any tri-state devices Therefore, we can t use them in our designs

Decoder A decoder asserts one of multiple outputs based on an input binary number We used one in our Safe Tri-State Bus Here is a truth table for a 2-to-4 line decoder A 1 A 0 3 2 1 0 0 0 0 0 0 1 0 1 0 0 1 0 1 0 0 1 0 0 1 1 1 0 0 0

Decoder Schematic 3 2 1 0 A 1 A 0

Decoder Encapsulation 2 A 2-to-4 Line Decoder 4