Вы находитесь на странице: 1из 13

Arithmetic Logic Unit ALU

By: Ahmad Yazdankhah CS 147 Fall 2008 Prof: Dr. Sin-Min Lee

Table of Contents
Assumptions Review: Bus Concept Review: CPU Building Block The Simplest Computer Building Blocks Whats ALU? Typical Schematic Symbol of an ALU Lets Build a 1-Bit ALU Useful Links References

Assumptions
You are familiar with: 1. Number representations (1s complement, 2s comp.) 2. Arithmetic operations (Add, Sub, . . .) 3. Floating Point concept 4. Registers in CPU (Accumulator, Program Counter, Instruction Register, )

Review: Bus Concept

Review: CPU Building Blocks


Registers (IR, PC, ACC) Control Unit (CU) Arithmetic Logic Unit (ALU)

The Simplest Computer Building Blocks

Instruction Register (IR)

Program Counter (PC)

1
Control Unit (CU) ALU 2 3 4 5
Status Register (FLAG) Accumulator (ACC)

CPU

RAM

Whats ALU?
1. ALU stands for: Arithmetic Logic Unit 2. ALU is a digital circuit that performs Arithmetic (Add, Sub, . . .) and Logical (AND, OR, NOT) operations. 3. John Von Neumann proposed the ALU in 1945 when he was working on EDVAC.

Typical Schematic Symbol of an ALU


A and B: the inputs to the ALU (aka operands) R: Output or Result F: Code or Instruction from the Control Unit (aka as op-code) D: Output status; it indicates cases such as: carry-in carry-out, overflow, division-by-zero And . . .

Lets Build a 1-Bit ALU


This is an one-bit ALU which can do Logical AND and Logical OR operation.

Result = a AND b when operation = 0


Result = a OR b when operation = 1 The operation line is the input of a MUX.

Building a 1-Bit ALU (contd)


Adding a full adder to our ALU

A 32-Bit ALU
By paralleling the one-bit ALUs and some other modification on the logical circuits, we can create bigger ALUs.

Useful Links
Virginia Tech online courses:
http://courses.cs.vt.edu/~csonline/index.html

Virginia Tech online Circuit Simulator


http://courses.cs.vt.edu/~csonline/MachineArchitecture/Less ons/Circuits/simcir_frame.html

Virginia Tech Microprocessor Simulation:


http://courses.cs.vt.edu/~csonline/MachineArchitecture/Less ons/CPU/sumprogram.html

References:
Text book: Computer System Architecture
(By: Rob Williams, 2nd Edition, Prentice Hall, 2006)

Site Wikipedia:
http://en.wikipedia.org/wiki/Arithmetic_logic_unit

Previous Student Lectures:


(By: Anna Kurek, Spring 2008)

Professors Lecture Notes. Virginia Tech online courses:


http://courses.cs.vt.edu/~csonline/index.html