4. TransisTors and LOGIC GATeS Rocky K. C. Chang Version 0.1, 14 October 2017
Rocky K. C. Chang Version 0.1, 14 October 2017
GOAIS OF THIS LECTURE Have a basic understanding of how transistors are used to implement the basic logic gates Know how to obtain Boolean function and logic circuit for a given truth table Know how to simplify a boolean function by applying various boolean laws Know how to simplify a boolean function by the Karnaugh map
▪Have a basic understanding of how transistors are used to implement the basic logic gates. ▪Know how to obtain Boolean function and logic circuit for a given truth table. ▪Know how to simplify a Boolean function by applying various Boolean laws. ▪Know how to simplify a Boolean function by the Karnaugh map. 2
LEVEIS OF REPRESENTATION/ INTERPRETATION High Level Language temp =v[k] Program(e.g, C) k+1] +11= temp; Compiler Sto, o(S2) Anything can be represented Assembly Language Iw st,4($2) as a numbe Program(e. g, MIPS) st1,O($2) SW O,4($2 Le data or instructions Assembler 00001001110001101010111101011000 Machine Language 10101111010110000000100111000110 Program( MIPS) 11000110101011110101100000001001 01011000000010011100011010101111 Machine Interpretation Hardware Architecture Description (e. g block diagrams) ALU Architecture Implementation 回 Logic Circuit Description (Circuit Schematic Diagrams) 回
3 lw $t0, 0($2) lw $t1, 4($2) sw $t1, 0($2) sw $t0, 4($2) High Level Language Program (e.g., C) Assembly Language Program (e.g., MIPS) Machine Language Program (MIPS) Hardware Architecture Description (e.g., block diagrams) Compiler Assembler Machine Interpretation temp = v[k]; v[k] = v[k+1]; v[k+1] = temp; 0000 1001 1100 0110 1010 1111 0101 1000 1010 1111 0101 1000 0000 1001 1100 0110 1100 0110 1010 1111 0101 1000 0000 1001 0101 1000 0000 1001 1100 0110 1010 1111 Logic Circuit Description (Circuit Schematic Diagrams) Architecture Implementation Anything can be represented as a number, i.e., data or instructions
WHY STUDY HARDWARE DESIGN? Every Cs student should understand how a computer (not only a program) works. But it is not necessary to know verilog to design hardware and the nitty-gritty electronic stuff Every CS student should also understand the capabilities and limitations of hardware in general and processors in particular Every Cs student should be able to evaluate the tradeoffs of different computing systems
▪Every CS student should understand how a computer (not only a program) works. ▪ But it is not necessary to know Verilog to design hardware and the nitty-gritty electronic stuff. ▪Every CS student should also understand the capabilities and limitations of hardware in general and processors in particular. ▪Every CS student should be able to evaluate the tradeoffs of different computing systems. 4
SYNCHRONOUS DIGITAL SYSTEMS Hardware of a processor, such as the MiPs, is an example of a Synchronous digital System Synchronous All operations coordinated by a central clock (heartbeat of the system!) Digital Represent all values by discrete values two binary digits: I and o Electrical signals are treated as Is ando,s(high/low voltage for 1/0)
▪Hardware of a processor, such as the MIPS, is an example of a Synchronous Digital System ▪Synchronous: All operations coordinated by a central clock (“heartbeat” of the system!) ▪Digital: • Represent all values by discrete values • Two binary digits: 1 and 0 • Electrical signals are treated as 1’s and 0’s (high/low voltage for 1/0) 5