UNIT 8B a Full Adder

UNIT 8B a Full Adder

UNIT 8B Computer Organization: Levels of Abstraction 15110 Principles of Computing, 1 Carnegie Mellon University - CORTINA A Full Adder C ABCin Cout S in 0 0 0 A 0 0 1 0 1 0 B 0 1 1 1 0 0 1 0 1 C S out 1 1 0 1 1 1 15110 Principles of Computing, 2 Carnegie Mellon University - CORTINA 1 A Full Adder C ABCin Cout S in 0 0 0 0 0 A 0 0 1 0 1 0 1 0 0 1 B 0 1 1 1 0 1 0 0 0 1 1 0 1 1 0 C S out 1 1 0 1 0 1 1 1 1 1 ⊕ ⊕ S = A B Cin ⊕ ∧ ∨ ∧ Cout = ((A B) C) (A B) 15110 Principles of Computing, 3 Carnegie Mellon University - CORTINA Full Adder (FA) AB 1-bit Cout Full Cin Adder S 15110 Principles of Computing, 4 Carnegie Mellon University - CORTINA 2 Another Full Adder (FA) http://students.cs.tamu.edu/wanglei/csce350/handout/lab6.html AB 1-bit Cout Full Cin Adder S 15110 Principles of Computing, 5 Carnegie Mellon University - CORTINA 8-bit Full Adder A7 B7 A2 B2 A1 B1 A0 B0 1-bit 1-bit 1-bit 1-bit ... Cout Full Full Full Full Cin Adder Adder Adder Adder S7 S2 S1 S0 AB 8 ⁄ ⁄ 8 C 8-bit C out FA in ⁄ 8 S 15110 Principles of Computing, 6 Carnegie Mellon University - CORTINA 3 Multiplexer (MUX) • A multiplexer chooses between a set of inputs. D1 D 2 MUX F D3 D ABF 4 0 0 D1 AB 0 1 D2 1 0 D3 1 1 D4 http://www.cise.ufl.edu/~mssz/CompOrg/CDAintro.html 15110 Principles of Computing, 7 Carnegie Mellon University - CORTINA Arithmetic Logic Unit (ALU) OP 1OP 0 Carry In & OP OP 0 OP 1 F 0 0 A ∧ B 0 1 A ∨ B 1 0 A 1 1 A + B http://cs-alb-pc3.massey.ac.nz/notes/59304/l4.html 15110 Principles of Computing, 8 Carnegie Mellon University - CORTINA 4 Flip Flop • A flip flop is a sequential circuit that is able to maintain (save) a state. – Example: D (Data) Flip-Flop – sets output Q to input D when clock turns on. (Images from Wikipedia) Clock Clock S=Set Q to 1, R=Reset Q to 0 15110 Principles of Computing, 9 Carnegie Mellon University - CORTINA Registers • A register is just a set of edge- triggered flip-flops. Registers are triggered by a clock signal. D 0 Q0 D1 Reg. Q1 D2 Q D 2 3 Q3 Clock http://cpuville.com/register.htm Clock 15110 Principles of Computing, 10 Carnegie Mellon University - CORTINA 5 Central Processing Unit (CPU) • A CPU contains: – Arithmetic Logic Unit to perform computation – Registers to hold information • Instruction register (current instruction being executed) • Program counter (to hold location of next instruction in memory) • Accumulator (to hold computation result from ALU) • Data register(s) (to hold other important data for future use) – Control unit to regulate flow of information and operations that are performed at each instruction step 15110 Principles of Computing, 11 Carnegie Mellon University - CORTINA A sample CPU http://cpuville.com/main.htm 15110 Principles of Computing, 12 Carnegie Mellon University - CORTINA 6 Computer http://cse.iitkgp.ac.in/pds/notes/intro.html 15110 Principles of Computing, 13 Carnegie Mellon University - CORTINA Abstraction • We can use layers of abstraction to hide details of the computer design. • We can work in any layer, not needing to know how the lower layers work or how the current layer fits into the larger system. -> transistors -> gates -> circuits (adders, multiplexors, flip-flops) -> central processing units (ALU, registers, control) -> computer 15110 Principles of Computing, 14 Carnegie Mellon University - CORTINA 7.

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    7 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us