1 / 30

ELEN 248 – Intro to Digital Systems Design (200, 504, 505 & 506)

ELEN 248 – Intro to Digital Systems Design (200, 504, 505 & 506). Prof Weiping “Peter” Shi. Why Digital Circuits?. The entire electronic age is based digital circuits!. Applications & Services. Electronics Industry. Digital circuit Industry. Integrated Digital Circuits.

Download Presentation

ELEN 248 – Intro to Digital Systems Design (200, 504, 505 & 506)

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. ELEN 248 – Intro to Digital Systems Design (200, 504, 505 & 506) Prof Weiping “Peter” Shi

  2. Why Digital Circuits? • The entire electronic age is based digital circuits! Applications & Services Electronics Industry Digital circuit Industry ELEN 248

  3. Integrated Digital Circuits • Jack Kirby, a former professor of this department, invented Integrated Circuits in 1959 at Texas Instruments. • He argued that by putting all electronic components into a single die, performance would increase and cost would decrease. • Moore’s Law states the density doubles every 18 months • Today, the price of a transistor is less than a grain of rice • Had the transportation industry grow as fast, flight from JFK to LAX would take a few seconds and cost a few cents! ELEN 248

  4. What is Logic Design? • Given a specification, derive a solution using available electronic components • Meeting criteria for performance, cost, power, reliability, etc • Design verification checks if the design is correct in terms of function and performance • Design optimization transforms a lousy design to one with better quality ELEN 248

  5. Boolean Algebra • Number systems: Unary, binary, decimal, dozenal, bidecimal, … • Binary system: 0 and 1 • 800BC: Oldest record of binary number system by Indian mathematician Pingala • 1854: British mathematician George Boole published a landmark paper, establishing Boolean Algebra • 1937: MIT student Claude Shannon did his master thesis, using Boolean algebra to build the first digital electronic circuit ELEN 248

  6. Boolean Algebra • Variables and Functions x = 0 x = 1 (a) Two states of a switch S x (b) Symbol for a switch B&V: Figure 2.1. A binary switch. ELEN 248

  7. Variables and Functions cont’d… S Battery Light x (a) Simple connection to a battery B&V: Figure 2.2. A light controlled by a switch. ELEN 248

  8. On and Off A L Switch is off (A=0) Light is off (L=0) L A Switch is on (A=1) Light is on (L=1) L  A ELEN 248

  9. Variables and Functions cont’d… S S Power x1 x2 Light supply R Power (a) The logical AND function (series) x supply Light S S x1 Power Light B&V: Figure 2.5. An inverting circuit. supply S x2 (b) The logical OR function (parallel) B&V Figure 2.3. Two basic functions. ELEN 248

  10. Embedded Quiz: Control a light with two switches • Your living room leads to the front door in one direction and your bedroom in the other direction. • You want to install two switches, one near the front door and one near the bedroom, so that at night you can turn on the light when entering your home, and turn it off on the way to the bedroom. • How to do it? • What about three switches for one light? Four? … ELEN 248

  11. Variables and Functions cont’d… • Notation Buffer L(x) = x AND gate L(x1,x2) = x1 • x2 = x1x2 OR gate L(x1,x2) = x1 + x2 NOT gate L(x) = x’ = !x = ~x = x ELEN 248

  12. Variables and Functions cont’d… • Symbols x1 x1 x2 1 x •x2• … • xn 1 x •x2 x2 xn (a) AND gates (c) NOT gate x1 x2 x1 1 1 x +x2 x +x2+ … + xn x2 xn (b) OR gates ELEN 248

  13. Boolean Algebra • Truth Tables of Functions Variables Functions All possible values of variables ELEN 248

  14. Embedded Quiz: Truth Tables • If a function f(x1, x2, …, xn) has n variables, how many rows are there in the truth table? How many columns? • Two functions are different, if their truth tables are different. How many different n-variable Boolean functions are there? ELEN 248

  15. Exercise: Boolean Functions on 1 and 2 variables ELEN 248

  16. Boolean Algebra Axioms 1a. 0•0 = 0 1b. 1+1 = 1 2a. 1•1 = 1 2b. 0+0 = 0 3a. 0•1 = 1•0 = 0 3b. 1+0 = 0+1 = 1 4a. If x=0, then x’ = 1 4b. If x=1, then x’ = 0 Theorems (via perfect induction) 5a. x•0 = 0 5b. x+1 = 1 6a. x•1 = x 6b. x+0 = x 7a. x•x = x 7b. x+x = x 8a. x •x’ =0 8b. x+x’ = 1 9. x’’ = x ELEN 248

  17. Boolean Algebra Two- and Three- Variable Properties Commutative 10a. x•y = y•x 10b. x+y = y+x Associative 11a. x•(y•z) = (x•y) •z 11b. x+(y+z) = (x+y)+z Distributive 12a. x•(y+z) = x•y + x•z 12b. x+y•z = (x+y)•(x+z) Absoption 13a. x+x•y = x 13b. x•(x+y) = x Combining 14a. x•y + x•y’ = x 14b. (x+y)•(x+y’) = x DeMorgan’s theorem 15a. (x•y)’ = x’ + y’ 15b. (x+y)’ = x’ • y’ 16a. x+x’•y = x+y 16b. x•(x’+y) = x•y Consensus 17a. x•y+y•z+x’•z = x•y + x’•z 17b. (x+y)•(y+z)•(x’+z) = (x+y)•(x’+z) ELEN 248

  18. Boolean Algebra Proof techniques (a) Truth Table (b) Venn Diagram (a) Constant 1 (b) Constant 0 x x x’ x’ (c) Variable x (d) x’ x y x (f) x+y y (e) x•y x y (h) z+x•y x y B&V: Figure 2.11. Proof of DeMorgan’s theorem in 15a. (g) x•y’ z B&V: Figure 2.12. The Venn diagram representation. ELEN 248

  19. Venn Diagram Proof Example x y x y z z x•y x•y x y x y z z x’•z x’•z x y x y z z y•z x•y + x’•z x y z x•y + y•z + x’•z B&V: Figure 2.14. Verification of x•y + y•z + x’•z = x•y + x’•z ELEN 248

  20. Exercise: Prove or disprove • (x1+x3)*(x1’+x3’) = x1*x3’ + x1’*x3’ ELEN 248

  21. Combinational vs. Sequential Logic Combinational N inputs … … M outputs Outputs depend ONLY upon inputs circuit General form of a combination logic circuit Combinational N inputs … … M outputs circuit Outputs depend upon inputs and previous inputs K Storage Clock General form of a sequential circuit. ELEN 248

  22. 2-Level Combinational Logic Synthesis and Optimization Example Problem Desired: low cost solution x 1 x 2 f (a) Canonical sum-of-products B&V: Figure 2.15. A function to be synthesized. x 1 f x 2 (b) Minimal-cost realization B&V: Figure 2.16. Two implementations of a function in Figure 2.15. ELEN 248

  23. 2-Level Combinational Logic Synthesis and OptimizationSum-of-Products/Product-of-Sums B&V: Figure 2.17 Three-variable minterms and maxterms. ELEN 248

  24. 2-Level Combinational Logic Synthesis and OptimizationExample f = m1+m4+m5+m6 f = M0•M2•M3•M7 B&V: Figure 2.18. A three-variable function. ELEN 248

  25. 2-Level Combinational Logic Synthesis and Optimization Example cont’d… x 2 f x 3 x 1 (a) A minimal sum-of-products realization x 1 x 3 f x 2 (b) A minimal product-of-sums realization B&V: Figure 2.19. Two realizations of a function in Figure 2.18. ELEN 248

  26. Aside: NAND and NOR realizations x1 x1 x1 x1 x2 x2 x2 x2 x3 x3 x3 x3 x4 x4 x4 x4 x5 x5 x5 x5 x1 x1 x2 x2 x3 x3 x4 x4 x5 x5 B&V: Figure 2.22. Using NAND gates to implement a sum-of-products. B&V: Figure 2.23. Using NOR gates to implement a product-of sums. ELEN 248

  27. 2-Level Combinational Logic Synthesis and OptimizationKarnaugh Maps recall min terms x x x x 1 2 1 2 x x x x 3 4 3 4 00 01 11 10 00 01 11 10 00 0 0 0 0 00 0 0 0 0 01 0 0 1 1 01 0 0 1 1 11 1 0 0 1 11 1 1 1 1 10 1 0 0 1 10 1 1 1 1 f = x x + x x x f = x + x x 2 3 1 3 1 4 2 3 1 4 x x x x 1 2 1 2 x x x x 3 4 3 4 00 01 11 10 00 01 11 10 00 1 0 0 1 00 1 1 1 0 01 0 0 0 0 01 1 1 1 0 11 1 1 1 0 11 0 0 1 1 10 1 1 0 1 10 0 0 1 1 x x 1 2 f = x x + x x + x x x f = x x + x x + or 2 4 1 1 3 3 3 2 3 4 4 1 3 x x 2 3 B&V: Figure 4.7. Examples of four-variable Karnaugh maps. ELEN 248

  28. Design Flow Design Spec Step 1: Describe System (e.g. “flow chart”, “requirements”) Step 2: Think about the hardware you want to build! Building blocks. Step 3: Only then, write Verilog Hardware Description Languages CHALLENGE: If you do step 3 without or before the other two, you are (very likely) going to end up with a poor quality circuit. This isn’t a programming course! DESIGN ENTRY Schematic capture Verilog Synthesis Functional simulation No Design correct? Yes Physical design Timing simulation No Timing requirements met? Chip configuration B&V: Figure 2.29. A typical CAD system. ELEN 248

  29. Verilog Example module LogicFunc(f, x1, x2, x3); input x1, x2, x3; output f; assign f = (x1 & x2) | ((~x2) & x3); endmodule x1 x2 f x3 B&V: Figure 2.30. A simple logic function. ELEN 248

  30. Suggested Reading • Brown and Vranesic • Chapter 2 • Next week (Jan 23 & Jan 25), I will attend a conference in Japan. Dr. Choi will teach for me. • On Jan 30, please bring a sheet of paper with your name, email address, phone number and a photo on it. It’s for me to know who is who. No one else will get it. ELEN 248

More Related