1 CSE370, Lecture 10 Lecture 10  Logistics  HW3 due now  Solutions will be available at the midterm review session tomorrow (and at the end of class.

Slides:



Advertisements
Similar presentations
Digital Design: Combinational Logic Blocks
Advertisements

Combinational Logic Word Problems
Combinational Circuits CS370 – Spring BCD to 7 Segment Display Controller Understanding the problem: input is a 4 bit bcd digit output is the control.
Programmable Logic PAL, PLA.
1 KU College of Engineering Elec 204: Digital Systems Design Lecture 9 Programmable Configurations Read Only Memory (ROM) – –a fixed array of AND gates.
Programmable Logic Devices
ECE 301 – Digital Electronics Circuit Design and Analysis (Lecture #9A) The slides included herein were taken from the materials accompanying Fundamentals.
ECE 331 – Digital System Design
IV - Combinational Logic Technologies © Copyright 2004, Gaetano Borriello and Randy H. Katz 1 Combinational Logic Technologies Standard gates  gate packages.
CS 151 Digital Systems Design Lecture 11 NAND and XOR Implementations.
Parity. 2 Datasheets TTL:  CMOS: 
ENGIN112 L11: NAND and XOR Implementation September 26, 2003 ENGIN 112 Intro to Electrical and Computer Engineering Lecture 11 NAND and XOR Implementations.
ECE 331 – Digital System Design Multi-level Logic Circuits and NAND-NAND and NOR-NOR Circuits (Lecture #8) The slides included herein were taken from the.
Canonical Forms and Logic Miniminization
Overview Part 2 – Circuit Optimization 2-4 Two-Level Optimization
Chapter 2: Boolean Algebra and Logic Functions
Computer Organization CDA 3103 Dr. Hassan Foroosh Dept. of Computer Science UCF © Copyright Hassan Foroosh 2002.
Overview of Chapter 3 °K-maps: an alternate approach to representing Boolean functions °K-map representation can be used to minimize Boolean functions.
KU College of Engineering Elec 204: Digital Systems Design
1 Lecture 10 PLDs  ROMs Multilevel logic. 2 Read-only memories (ROMs) Two dimensional array of stored 1s and 0s  Input is an address  ROM decodes all.
ECE 331 – Digital System Design
 Seattle Pacific University EE Logic System DesignSOP-POS-1 The Connection: Truth Tables to Functions abcF abcF
Department of Computer Engineering
1 Lecture 9 Demultiplexers Programmable Logic Devices  Programmable logic array (PLA)  Programmable array logic (PAL)
1 Building Larger Circuits Today: Combinational Building BlocksFirst Hour: Combinational Building Blocks –Section 4.1 of Katz’s Textbook –In-class Activity.
ECE 331 – Digital System Design Circuit Design and Analysis (Lecture #9A) The slides included herein were taken from the materials accompanying Fundamentals.
UM EECS 270 Spring 2011 – Taken from Dr.Karem Sakallah Logic Synthesis: From Specs to Circuits Implementation Styles –Random –Regular Optimization Criteria.
June 2005Computer Architecture, Background and MotivationSlide 1 Part I Background and Motivation.
Logic Functions: XOR, XNOR
1 CSE370, Lecture 11 Lecture 11  Logistics  HW3 due now  Lab4 goes on as normal next week  Tuesday review 6pm, place TBD  Last lecture  "Switching-network"
Lecture 09 NAND and XOR Implementations. Overview °Developing NAND circuits °Two-level implementations Convert from AND/OR to NAND (again!) °Multi-level.
1 CSE370, Lecture 10 Lecture 10 u Logistics n HW3 due Friday (cover materials up to this lecture) n Lab3 going on this week n Midterm 1: a week from today.
Charles Kime & Thomas Kaminski © 2004 Pearson Education, Inc. Terms of Use (Hyperlinks are active in View Show mode) Terms of Use Logic and Computer Design.
Chap 2. Combinational Logic Circuits
Decoder/Demultiplexer
EE207: Digital Systems I, Semester I 2003/2004
ECE 3110: Introduction to Digital Systems Chapter #4 Review.
Boolean Algebra & Logic Circuits Dr. Ahmed El-Bialy Dr. Sahar Fawzy.
Chapter # 4: Programmable Logic
Logic Design CS221 1 st Term combinational circuits Cairo University Faculty of Computers and Information.
Boolean Expressions Lecture 3 Digital Design and Computer Architecture Harris & Harris Morgan Kaufmann / Elsevier, 2007.
BOOLEAN ALGEBRA AND LOGIC SIMPLIFICATION
CHAPTER 1 INTRODUCTION TO DIGITAL LOGIC
DIGITAL SYSTEMS Programmable devices PLA-PAL Rudolf Tracht and A.J. Han Vinck.
CSET 4650 Field Programmable Logic Devices
Complex Combinational Circuits Binary Adders Key to enterprise: Addition table also a truth table S i = C i 'A i B i ' + C i 'A i 'B i + C i A i 'B i '+
Digital Logic Design Basics Combinational Circuits Sequential Circuits Pu-Jen Cheng Adapted from the slides prepared by S. Dandamudi for the book, Fundamentals.
DE MORGAN’S THEOREM. De Morgan’s Theorem De Morgan’s Theorem.
1 CSE370, Lecture 8 Lecture 8 u Logistics n Midterm 1 week from today in class. Closed book/closed notes n Sample midterm linked in on calendar n Review.
Digital Systems Design 1 Signal Expressions Multiply out: F = ((X + Y)  Z) + (X  Y  Z) = (X  Z) + (Y  Z) + (X  Y  Z)
Chapter # 4: Programmable Logic
Lecture 4 Logistics Last lecture --- Boolean algebra Today’s lecture
De Morgan’s Theorem,.
Combinational Logic Implementation
Lecture 28 Logistics Today
Lecture 6 Topics Combinational Logic Circuits
Lecture 9 Logistics Last lecture Today HW3 due Wednesday
ECE 331 – Digital System Design
Lecture 28 Logistics Today
CSE 370 – Winter 2002 – Comb. Logic building blocks - 1
Lecture 13 Logistics Last lecture Today HW4 up, due on Wednesday PLDs
Lecture 8 Logistics Last lecture Last last lecture Today
CSE 370 – Winter Combinational Implementation - 1
Programmable Configurations
EECS150 - Digital Design Lecture 7 - Boolean Algebra II
Lecture 11 Logistics Last lecture Today HW3 due now
Part I Background and Motivation
Lecture 5 Logistics Last lecture Today’s lecture
CSE 370 – Winter 2002 – Comb. Logic building blocks - 1
Overview Last lecture Timing; Hazards/glitches
Presentation transcript:

1 CSE370, Lecture 10 Lecture 10  Logistics  HW3 due now  Solutions will be available at the midterm review session tomorrow (and at the end of class today)  HW4 handed out today  Due next week  Midterm 1 Friday in class. Closed book. Closed notes. No calculators.  Sample midterm on the web  Review session, Thursday 4:30 here (EEB 037)  Bring your questions!  Last lecture  Demultiplexers  PLDs  PLAs  PALs  Today  PLDs  ROMs  Multilevel Logic

2 CSE370, Lecture 10 Midterm 1 Topics Covered u Combinational logic basics n Binary/hex/decimal numbers n Ones and twos complement arithmetic n Truth tables n Boolean algebra n Basic logic gates n Schematic diagrams n de Morgan's theorem n AND/OR to NAND/NOR logic conversion n K-maps (up to 4 variables), logic minimization, don't cares n SOP, POS n Minterm and maxterm expansions (canonical, minimized)

3 CSE370, Lecture 10 Midterm 1 Topics Covered (continued) u Combinational logic applications n Combinational design íInput/output encoding íTruth table íK-map íBoolean equations íSchematics n Multiplexers

4 CSE370, Lecture 10 Recall example: BCD to Gray --- Wiring of a PLA Minimized functions: W = A + BC + BD X = BC' Y = B + C Z = A'B'C'D + BCD + AD' + B'CD'

5 CSE370, Lecture 10 Recall: Wiring a PAL Minimized functions: W = A + BC + BD X = BC' Y = B + C Z = A'B'C'D + BCD + AD' + B'CD’ Fine example for the use of PAL (because no shared AND terms) Many AND gates wasted, but still faster and cheaper than PLA

6 CSE370, Lecture 10 Compare implementations for this example  PLA:  No shared logic terms in this example  10 decoded functions (10 AND gates)  PAL:  Z requires 4 product terms  16 decoded functions (16 AND gates)  6 unused AND gates  This decoder is a good candidate for PALs  10 of 16 possible inputs are decoded  No sharing among AND terms  Another option?  Yes — a ROM

7 CSE370, Lecture 10 Read-only memories (ROMs)  Two dimensional array of stored 1s and 0s  Input is an address  ROM decodes all possible input addresses  Stored row entry is called a "word"  ROM output is the decoded word inputs outputs n address lines 2 n word lines decoder memory array (2 n words by m bits)

8 CSE370, Lecture 10 ABCF1F2F3F4F5F Think of as a memory-address decoder Memory bits Like this special PLA example: only more efficient F1 = ABC F2 = A + B + C F3 = A' B' C' F4 = A' + B' + C' F5 = A xor B xor C F6 = A xnor B xnor C

9 CSE370, Lecture 10 ROM details  Similar to a PLA but with a fully decoded and fixed AND array  Completely flexible OR array (unlike a PAL)  Extremely dense: One transistor per stored bit decoder n-1 0 Address 2 n V Bit lines: Normally pulled high through resistor. If transistor stores a zero, then line pulls low when row is selected 1 2 Only one word line is active at any time m-1 0 Outputs

10 CSE370, Lecture 10 ABCF0F1F2F ROM 8 words x 4 bits/word addressoutputs ABCF 0 F 1 F 2 F 3 Two-level combinational logic using a ROM  Use a ROM to directly store a truth table  No need to minimize logic  Example:F0 = A'B'C + AB'C' + AB'C  F1 = A'B'C + A'BC' + ABC  F2 = A'B'C' + A'B'C + AB'C'  F3 = A'BC + AB'C' + ABC' You specify whether to store 1 or 0 in each location in the ROM

11 CSE370, Lecture 10 ROMs versus PLAs/PALs  ROMs  Benefits  Quick to design, simple, dense  Limitations  Size doubles for each additional input  Can't exploit don't cares  PLAs/PALs  Benefits  Logic minimization reduces size  PALs faster/cheaper than PLAs  Limitations  PAL OR-plane has hard-wired fan-in  Another alternative: Field programmable gate arrays  Learn a bit more later in this course

12 CSE370, Lecture 10 BCD to 7–segment control-signal decoder c0 c1 c2 c3 c4 c5 c6 A B C D c1 c5 c2 c4 c6 c0 c3 Example: BCD to 7-segment display controller  The problem  Input is a 4-bit BCD digit (A, B, C, D)  Need signals to drive a display (7 outputs C0 – C6)

13 CSE370, Lecture 10 ABCDC0C1C2C3C4C5C XXXXXXXX 11XXXXXXXXX Formalize the problem  Truth table  Many don’t cares  Choose implementation target  If ROM, we are done  Don't cares imply PAL/PLA may be good choice  Implement design  Minimize the logic  Map into PAL/PLA Not all rows of the truth table are listed separately

14 CSE370, Lecture 10 C0 = A + B D + C + B' D' C1 = C' D' + C D + B' C2 = B + C' + D C3 = B' D' + C D' + B C' D + B' C C4 = B' D' + C D' C5 = A + C' D' + B D' + B C' C6 = A + C D' + B C' + B' C 1 0 X X X X 1 1 X X D A B C 1 1 X X X X 1 0 X X D A B C 0 1 X X X X 1 1 X X D A B C 1 1 X X X X 0 1 X X D A B C 1 0 X X X X 1 1 X X D A B C 1 0 X X X X 1 1 X X D A B C 1 1 X X X X 0 1 X X D A B C Sum-of-products implementation  15 unique product terms if we minimize individually 4 input, 7 output PLA: 15 AND gates PAL: 4 product terms per output (28 AND gates)

15 CSE370, Lecture 10 C0 = BC'D + CD + B'D' + BCD' + A C1 = B'D + C'D' + CD + B'D' C2 = B'D + BC'D + C'D' + CD + BCD' C3 = BC'D + B'D + B'D' + BCD' C4 = B'D' + BCD' C5 = BC'D + C'D' + A + BCD' C6 = B'C + BC' + BCD' + A C0 = A + BD + C + B'D' C1 = C'D' + CD + B' C2 = B + C' + D C3 = B'D' + CD' + BC'D + B'C C4 = B'D' + CD' C5 = A + C'D' + BD' + BC' C6 = A + CD' + BC' + B'C C2 1 1 X X X X 0 1 X X D A B C 1 1 X X X X 0 1 X X D A B C C2 If choosing PLA: better SOP implementation  Can do better than 15 product terms  Share terms among outputs  only 9 unique product terms  Each term not necessarily minimized

16 CSE370, Lecture 10 BC' B'C B'D BC'D C'D' CD B'D' A BCD' ABCDABCD C0 C1 C2 C3 C4 C5 C6 C7 PLA implementation C0 = BC'D + CD + B'D' + BCD' + A C1 = B'D + C'D' + CD + B'D' C2 = B'D + BC'D + C'D' + CD + BCD' C3 = BC'D + B'D + B'D' + BCD' C4 = B'D' + BCD' C5 = BC'D + C'D' + A + BCD' C6 = B'C + BC' + BCD' + A

17 CSE370, Lecture 10 Multilevel logic u Basic idea: Simplify logic using >2 gate levels n Time–space (speed versus gate count) tradeoff íWill talk about the speed issue with timing diagram u Two-level logic usually n Has smaller delays (faster circuits) n more gates and more wires (more circuit area) u Multilevel logic usually n Has fewer gates (smaller circuits) n more gate delays (slower circuits) 13

18 CSE370, Lecture 10 Multilevel logic example u Function X n SOP: X = ADF + AEF + BDF + BEF + CDF + CEF + G íX is minimized! íSix 3-input ANDs; one 7-input OR; 26 wires n Multilevel: X = (A+B+C)(D+E)F + G íFactored form íOne 3-input OR, two 2-input OR's, one 3-input AND; 11 wires ABCDEFGABCDEFG X 3-level circuit X = (A+B+C)(D+E)F + G 13

19 CSE370, Lecture 10 Multilevel NAND/NAND conversion F = A(B+CD) + BC' original AND-OR network introduce bubbles (conserve inversions) 13

20 CSE370, Lecture 10 Multilevel NOR/NOR conversion F = A(B+CD) + BC' original AND-OR network introduce bubbles (conserve inversions) 13

21 CSE370, Lecture 10 Generic multilevel conversion F = ABC + BC + D = AX + X + D D' A X' B C F D' A X B C F X' (a) (c) (b) (d) A X B C D F original circuit A X B C D F add double bubbles at inputs distribute bubbles some mismatches insert inverters to fix mismatches 13

22 CSE370, Lecture 10 Issues with multilevel design u No global definition of “optimal” multilevel circuit n Optimality depends on user-defined goals u Synthesis requires CAD-tool help n No simple hand methods like K-maps n CAD tools manipulate Boolean expressions n Covered in more detail in CSE467 13

23 CSE370, Lecture 10 Multilevel logic summary u Advantages over 2-level logic n Smaller circuits n Reduced fan-in n Less wires u Disadvantages w.r.t 2-level logic n More difficult design n Less powerful optimizing tools u What you should know for CSE370 n The basic multilevel idea n Multilevel NAND/NAND and NOR/NOR conversion 13