Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
0% found this document useful (0 votes)
51 views

28FArithmetic Logic Unit

The document discusses the arithmetic logic unit (ALU), a basic building block of CPUs. The ALU performs arithmetic and logical operations and is controlled by an instruction from the control unit. The document outlines the typical components of an ALU, including two inputs for operands, an output for the result, a code input for instructions, and an output for status information. It then provides examples of how to build a 1-bit ALU and discusses how multiple 1-bit ALUs can be combined into a 32-bit ALU. Useful links and references are also included.

Uploaded by

Mochamad Aziz
Copyright
© Attribution Non-Commercial (BY-NC)
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
51 views

28FArithmetic Logic Unit

The document discusses the arithmetic logic unit (ALU), a basic building block of CPUs. The ALU performs arithmetic and logical operations and is controlled by an instruction from the control unit. The document outlines the typical components of an ALU, including two inputs for operands, an output for the result, a code input for instructions, and an output for status information. It then provides examples of how to build a 1-bit ALU and discusses how multiple 1-bit ALUs can be combined into a 32-bit ALU. Useful links and references are also included.

Uploaded by

Mochamad Aziz
Copyright
© Attribution Non-Commercial (BY-NC)
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
You are on page 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

You might also like