Informationsteknologi Today’s class Digital Logic Friday, October 19, 2007 Computer Architecture I - Class 8 1 Informationsteknologi Digital circuits Two logical values Binary 0 (signal between 0 and 1 volt) Binary 1 (signal between 2 and 5 volts) Gates are small electronic devices that compute various functions of these twovalued signals Friday, October 19, 2007 Computer Architecture I - Class 8 2 Transistor Inverter (NOT Gate) Informationsteknologi Friday, October 19, 2007 When the input voltage, Vin, is below a critical value the transistor turns off and acts like an infinite resistance, so Vout is very close to Vcc, an externally regulated voltage (typically 5 V) When Vin exceeds the critical value the transistor switches on and acts like a wire, causing Vout to be pulled down to ground (0 V) Computer Architecture I - Class 8 3 NAND Gate Informationsteknologi Friday, October 19, 2007 If both V1 and V2 are high, both transistors will conduct and Vout will be low If either V1 or V2 is low the corresponding transistor will turn off and the Vout will be high Computer Architecture I - Class 8 4 NOR Gate Informationsteknologi Friday, October 19, 2007 If either V1 or V2 is high the corresponding transistor will turn on and Vout will be pulled to ground (0 V) If both V1 and V2 are low then Vout will remain high Computer Architecture I - Class 8 5 Informationsteknologi Gates and Boolean Algebra Friday, October 19, 2007 Computer Architecture I - Class 8 6 Informationsteknologi The Majority Function Friday, October 19, 2007 Computer Architecture I - Class 8 7 Informationsteknologi Boolean Circuits Write down the truth table for the function Provide inverters to generate the complement (NOT) of each input Draw an AND gate for each term with a 1 in the result column Wire the AND gates to the appropriate inputs Feed the output of all the AND gates into an OR gate Friday, October 19, 2007 Computer Architecture I - Class 8 8 Informationsteknologi Boolean Function Notation Truth table can get too large for more than 3 or 4 inputs Use a notation that specifies which combinations of inputs produce an output of 1 M A BC A BC AB C ABC Friday, October 19, 2007 Computer Architecture I - Class 8 9 Informationsteknologi Using Only NAND and NOR Friday, October 19, 2007 Computer Architecture I - Class 8 10 Informationsteknologi Circuit Equivalence Friday, October 19, 2007 Computer Architecture I - Class 8 11 Informationsteknologi Boolean Algebra Identities Friday, October 19, 2007 Computer Architecture I - Class 8 12 Informationsteknologi Alternative Symbols for Some Gates Friday, October 19, 2007 Computer Architecture I - Class 8 13 Informationsteknologi Three Circuits for XOR Friday, October 19, 2007 Computer Architecture I - Class 8 14 Informationsteknologi In-Class Exercise Use a truth table to show that X = (X AND Y) OR (X AND NOT Y) Show how the AND function can be constructed from two NAND gates Friday, October 19, 2007 Computer Architecture I - Class 8 15 Informationsteknologi Integrated Circuits Friday, October 19, 2007 Computer Architecture I - Class 8 16 Informationsteknologi Multiplexer Friday, October 19, 2007 Computer Architecture I - Class 8 17 Informationsteknologi Decoder Friday, October 19, 2007 Computer Architecture I - Class 8 18 Informationsteknologi Comparator Friday, October 19, 2007 Computer Architecture I - Class 8 19 Informationsteknologi Shifter Friday, October 19, 2007 Computer Architecture I - Class 8 20 Informationsteknologi Half Adder (a) Friday, October 19, 2007 (b) Computer Architecture I - Class 8 21 Informationsteknologi Full Adder Friday, October 19, 2007 Computer Architecture I - Class 8 22 Informationsteknologi Arithmetic Logic Unit Friday, October 19, 2007 Computer Architecture I - Class 8 23 Informationsteknologi SR Latch Friday, October 19, 2007 Computer Architecture I - Class 8 24 Clocked SR Latch Informationsteknologi A clocked SR latch. Friday, October 19, 2007 Computer Architecture I - Class 8 25 Clocked D Latch Informationsteknologi A clocked D latch. Friday, October 19, 2007 Computer Architecture I - Class 8 26 Informationsteknologi Flip-Flops Friday, October 19, 2007 Computer Architecture I - Class 8 27 Informationsteknologi D Flip-Flop Friday, October 19, 2007 Computer Architecture I - Class 8 28 Informationsteknologi Latch and Flip-Flop Symbols Friday, October 19, 2007 Computer Architecture I - Class 8 29 Informationsteknologi Octal Flip-Flop (8-Bit Register) Friday, October 19, 2007 Computer Architecture I - Class 8 30 Informationsteknologi Memory Friday, October 19, 2007 Computer Architecture I - Class 8 31 Informationsteknologi Buffers (a) A noninverting buffer. (b) Effect of (a) when control is high. (c) Effect of (a) when control is low. (d) An inverting buffer. Friday, October 19, 2007 Computer Architecture I - Class 8 32 Informationsteknologi 4-Mbit Memory Chips Friday, October 19, 2007 Computer Architecture I - Class 8 33 Informationsteknologi CPU Chips The logical pinout of a generic CPU. Arrows indicate input signals and output signals. Short diagonal lines indicate that multiple pins are used. Friday, October 19, 2007 Computer Architecture I - Class 8 34 Informationsteknologi Computer Buses A bus is a common electrical pathway between multiple devices Friday, October 19, 2007 Computer Architecture I - Class 8 35 Informationsteknologi Masters and Slaves Active devices which can initiate bus transfers are called masters Passive devices which wait for requests are called slaves Friday, October 19, 2007 Computer Architecture I - Class 8 36 Informationsteknologi The Pentium 4 Friday, October 19, 2007 Computer Architecture I - Class 8 37 Informationsteknologi The Pentium 4’s Logical Pinout Names in upper case are the official Intel names for individual signals. Names in mixed case are groups of related signals or signal descriptions. Friday, October 19, 2007 Computer Architecture I - Class 8 38 Informationsteknologi Pipelining on the Pentium 4’s Memory Bus Friday, October 19, 2007 Computer Architecture I - Class 8 39 Informationsteknologi Pentium 4 Bus Structure Friday, October 19, 2007 Computer Architecture I - Class 8 40 Informationsteknologi PCI Bus Arbitration The PCI bus uses a centralized bus arbiter. Friday, October 19, 2007 Computer Architecture I - Class 8 41 Informationsteknologi The Universal Serial Bus PCI bus is too expensive for low speed I/O devices (e.g. keyboard, mouse) USB was designed by 7 companies as a better way to attach low speed I/O devices to a computer Friday, October 19, 2007 Computer Architecture I - Class 8 42 Informationsteknologi USB Goals Users must not have to set switches or jumpers Users must not have to open the case Only one kind of cable, for all devices Devices should get their power from the cable Up to 127 devices should be attachable to a single computer System should support real-time devices Devices should be installable while the computer is running No reboot should be needed after installing a new device Devices should be inexpensive to manufacture Friday, October 19, 2007 Computer Architecture I - Class 8 43