Appendix B Digital Logic
Irvine, Kip R. Assembly Language for Intel-Based Computers, NOT AND OR XOR NAND NOR Truth Tables Boolean Operators
Irvine, Kip R. Assembly Language for Intel-Based Computers, NOT A = Ā A AND B = A B A OR B = A + B A XOR B= 1 if and only if one of A or B is 1 A NAND B = NOT ( A AND B) NOR= NOT (A OR B) Truth Tables Boolean Operators
Irvine, Kip R. Assembly Language for Intel-Based Computers, Boolean Algebra Based on symbolic logic, designed by George Boole Boolean expressions created from: – NOT, AND, OR
Irvine, Kip R. Assembly Language for Intel-Based Computers, NOT Inverts (reverses) a boolean value Truth table for Boolean NOT operator: Digital gate diagram for NOT:
Irvine, Kip R. Assembly Language for Intel-Based Computers, AND Truth table for Boolean AND operator: Digital gate diagram for AND:
Irvine, Kip R. Assembly Language for Intel-Based Computers, OR Truth table for Boolean OR operator: Digital gate diagram for OR:
Irvine, Kip R. Assembly Language for Intel-Based Computers, Operator Precedence Examples showing the order of operations:
Irvine, Kip R. Assembly Language for Intel-Based Computers, Truth Tables (1 of 3) A Boolean function has one or more Boolean inputs, and returns a single Boolean output. A truth table shows all the inputs and outputs of a Boolean function Example: X Y
Irvine, Kip R. Assembly Language for Intel-Based Computers, Truth Tables (2 of 3) Example: X Y
Irvine, Kip R. Assembly Language for Intel-Based Computers, Truth Tables (3 of 3) Example: (Y S) (X S) Two-input multiplexer
Basic Identities
De Morgan’s Theorem A NOR B = (NOT A) AND (NOT B) A NAND B = (NOT A) OR (NOT B)
Basic Logic Gates
NAND Gates
NOR Gates
Sum of products F = ABC + ABC + ABC
Product of sums (X Y Z) = X + Y + Z (De Morgan)
Product of sums
Simplification of Boolean expression Algebraic simplification Karnaugh maps Quine McKluskey Tables
Algebraic simplification Show how to simplify F = ABC + ABC + ABC To become F = AB + BC = B(A + C)
Simplified implementation of F = ABC + ABC + ABC = B(A + C)
Karnaugh Maps
The use of Karnaugh maps
Overlapping groups F = ABC + ABC + ABC = B(A + C)
The Quine-McKluskey Method
2 nd stage All pairs that differ in one variable
Last stage
Final stage Circle each x that is alone in a column. Then place a square around each X in any row in which there is a circled X. If every column now has either a squared or a circled X, then we are done, and those row elements whose Xs have been marked constitute the minimal expression. ABC + ACD + ABC + ACD
NAND
Multiplexor S2S1F 00D0 01D1 10D2 11D3
Multiplexor implementation
Decoder
Use of decoders To address 1K byte memory using four 256 x 8 bit RAM chips
Small-scale integration Early integrated circuit provided from one to ten gates on a chip. The next slide shows a few examples of these SSI chips.
Programmable Logic Array (PLA)
Programmed PLA
Read-only memory
A 64 bit ROM
Adders
4-Bit Adder
Implementation of an Adder
Multi-output adder The output from each adder depends on the output from the previous adder. Thus there is an increasing delay from the least significant to the most significant bit. For larger adders the accumulated delay can become unacceptably high.
32-Bit Adder using 8-Bit Adders
Carry look ahead
Irvine, Kip R. Assembly Language for Intel-Based Computers, Printing this Slide Show To print this slide show with black characters on a white background, do the following: Select Print... from the File menu. Select Handouts in the Print what drop-down box. Select 2 or 3 in the Slides per page drop-down box. Select the Pure black and white check box (optional) Click on OK to begin printing. Back to the title page