Top Banner
8-bit Arithmetic Logic Unit Design Report Fang, Hongxia Zhang, Zhaobo Zhao, Yang Zhong, Wei Instructor: James Morizio 2007-12-09 ECE 261 Project
37

8-bit Arithmetic Logic Unit Design Reportece.duke.edu/~jmorizio/ece261/F07/projects/ALU.pdfGeneralization ALU (Arithmetic Logic Unit) A critical component of the microprocessor, the

Mar 07, 2018

Download

Documents

dangdan
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: 8-bit Arithmetic Logic Unit Design Reportece.duke.edu/~jmorizio/ece261/F07/projects/ALU.pdfGeneralization ALU (Arithmetic Logic Unit) A critical component of the microprocessor, the

8-bit Arithmetic Logic Unit Design Report Fang, Hongxia

Zhang, Zhaobo

Zhao, Yang

Zhong, Wei

Instructor: James Morizio

2007-12-09

ECE 261 Project

Page 2: 8-bit Arithmetic Logic Unit Design Reportece.duke.edu/~jmorizio/ece261/F07/projects/ALU.pdfGeneralization ALU (Arithmetic Logic Unit) A critical component of the microprocessor, the

8bit ALU Design Report

Outline - Generalization - Function - Structure - Assignment - Design results - Summary

Page 3: 8-bit Arithmetic Logic Unit Design Reportece.duke.edu/~jmorizio/ece261/F07/projects/ALU.pdfGeneralization ALU (Arithmetic Logic Unit) A critical component of the microprocessor, the

Generalization

ALU (Arithmetic Logic Unit)

A critical component of the microprocessor, the core component of central processing unit. ALU comprises the combinational logic that implements logic operations such as AND and OR, and arithmetic operations such as Addition, Subtraction, and Multiplication.

Page 4: 8-bit Arithmetic Logic Unit Design Reportece.duke.edu/~jmorizio/ece261/F07/projects/ALU.pdfGeneralization ALU (Arithmetic Logic Unit) A critical component of the microprocessor, the

Generalization

A and B: N-bit InputsResult: N-bit OutputOp: ALU operation, K-bit means

could support maximum 2k operation

Zero, CarryOut, Overflow: 1-bit flagA

B

N

N

N Result

K

Op

CarryOutZero

Overflow

ALU

ALU symbol

Page 5: 8-bit Arithmetic Logic Unit Design Reportece.duke.edu/~jmorizio/ece261/F07/projects/ALU.pdfGeneralization ALU (Arithmetic Logic Unit) A critical component of the microprocessor, the

Function

8 Functions LOGIC: And; Or; Inv SHIFT: signed-shift left signed-shift right ALOGRITHM: Add Subtract Multiply

3 bit control signals To choose the function

Page 6: 8-bit Arithmetic Logic Unit Design Reportece.duke.edu/~jmorizio/ece261/F07/projects/ALU.pdfGeneralization ALU (Arithmetic Logic Unit) A critical component of the microprocessor, the

Structure

Schematic – 7 components

Page 7: 8-bit Arithmetic Logic Unit Design Reportece.duke.edu/~jmorizio/ece261/F07/projects/ALU.pdfGeneralization ALU (Arithmetic Logic Unit) A critical component of the microprocessor, the

Structure

Layout - place

Page 8: 8-bit Arithmetic Logic Unit Design Reportece.duke.edu/~jmorizio/ece261/F07/projects/ALU.pdfGeneralization ALU (Arithmetic Logic Unit) A critical component of the microprocessor, the

Assignment

Logic & Control – Wei Zhong Shift – Yang Zhao Add & Subtract – Hongxia Fang Multiply – Zhaobo Zhang

Everyone is in charge of each part's schematic simulation and layout verification

Page 9: 8-bit Arithmetic Logic Unit Design Reportece.duke.edu/~jmorizio/ece261/F07/projects/ALU.pdfGeneralization ALU (Arithmetic Logic Unit) A critical component of the microprocessor, the

Design results

8 to 1 MUX - Using compound gate to realize 2 to 1

MUX

٠ ١Y D S D S= +

Page 10: 8-bit Arithmetic Logic Unit Design Reportece.duke.edu/~jmorizio/ece261/F07/projects/ALU.pdfGeneralization ALU (Arithmetic Logic Unit) A critical component of the microprocessor, the

8 to 1 Mux

Page 11: 8-bit Arithmetic Logic Unit Design Reportece.duke.edu/~jmorizio/ece261/F07/projects/ALU.pdfGeneralization ALU (Arithmetic Logic Unit) A critical component of the microprocessor, the

Set A0=1, A1~A7=0. whenS2S1S0=000, Out=1

Page 12: 8-bit Arithmetic Logic Unit Design Reportece.duke.edu/~jmorizio/ece261/F07/projects/ALU.pdfGeneralization ALU (Arithmetic Logic Unit) A critical component of the microprocessor, the

8-bit 8 to 1 Mux

Page 13: 8-bit Arithmetic Logic Unit Design Reportece.duke.edu/~jmorizio/ece261/F07/projects/ALU.pdfGeneralization ALU (Arithmetic Logic Unit) A critical component of the microprocessor, the

Layout of 1-bit Mux81 2-bit Mux81

Page 14: 8-bit Arithmetic Logic Unit Design Reportece.duke.edu/~jmorizio/ece261/F07/projects/ALU.pdfGeneralization ALU (Arithmetic Logic Unit) A critical component of the microprocessor, the

Logic Function8-bit AND

Page 15: 8-bit Arithmetic Logic Unit Design Reportece.duke.edu/~jmorizio/ece261/F07/projects/ALU.pdfGeneralization ALU (Arithmetic Logic Unit) A critical component of the microprocessor, the

Simulation for 8bit input AND Input A[7:0]=01010101, B[7:0]=10101010, Q[7:0]=00000000

Page 16: 8-bit Arithmetic Logic Unit Design Reportece.duke.edu/~jmorizio/ece261/F07/projects/ALU.pdfGeneralization ALU (Arithmetic Logic Unit) A critical component of the microprocessor, the

8bit OR

Logic Function

Page 17: 8-bit Arithmetic Logic Unit Design Reportece.duke.edu/~jmorizio/ece261/F07/projects/ALU.pdfGeneralization ALU (Arithmetic Logic Unit) A critical component of the microprocessor, the

Simulation for 8bit input OR Input A[7:0]=01010101, B[7:0]=10101010, Q[7:0]=11111111

Page 18: 8-bit Arithmetic Logic Unit Design Reportece.duke.edu/~jmorizio/ece261/F07/projects/ALU.pdfGeneralization ALU (Arithmetic Logic Unit) A critical component of the microprocessor, the

Simulation for 8bit input AND & OR

Page 19: 8-bit Arithmetic Logic Unit Design Reportece.duke.edu/~jmorizio/ece261/F07/projects/ALU.pdfGeneralization ALU (Arithmetic Logic Unit) A critical component of the microprocessor, the

Logic Function8bit Invertor

Page 20: 8-bit Arithmetic Logic Unit Design Reportece.duke.edu/~jmorizio/ece261/F07/projects/ALU.pdfGeneralization ALU (Arithmetic Logic Unit) A critical component of the microprocessor, the

Simulation for 8bit input OR Input A[7:0]=01010101, Q[7:0]=10101010

Page 21: 8-bit Arithmetic Logic Unit Design Reportece.duke.edu/~jmorizio/ece261/F07/projects/ALU.pdfGeneralization ALU (Arithmetic Logic Unit) A critical component of the microprocessor, the

Signed-Shift Right Schematic

Page 22: 8-bit Arithmetic Logic Unit Design Reportece.duke.edu/~jmorizio/ece261/F07/projects/ALU.pdfGeneralization ALU (Arithmetic Logic Unit) A critical component of the microprocessor, the

Simulation for Signed-shift right S0S1S2=010, connect A0 to extra bit, shift A7~A0=00101011 right for 2

bits, the output R7~R0=11001010

Page 23: 8-bit Arithmetic Logic Unit Design Reportece.duke.edu/~jmorizio/ece261/F07/projects/ALU.pdfGeneralization ALU (Arithmetic Logic Unit) A critical component of the microprocessor, the

Signed-shift right Layout consist of 24 2-input MUX, using Metal 1 and Metal 2 interconnects

Page 24: 8-bit Arithmetic Logic Unit Design Reportece.duke.edu/~jmorizio/ece261/F07/projects/ALU.pdfGeneralization ALU (Arithmetic Logic Unit) A critical component of the microprocessor, the

Signed-shift left Schematic

Page 25: 8-bit Arithmetic Logic Unit Design Reportece.duke.edu/~jmorizio/ece261/F07/projects/ALU.pdfGeneralization ALU (Arithmetic Logic Unit) A critical component of the microprocessor, the

Simulation for Signed-shift left S0S1S2=010, connect A7 to extra bit, shift A7~A0=00101011 left for 2

bits, the output R7~R0=10101100

Page 26: 8-bit Arithmetic Logic Unit Design Reportece.duke.edu/~jmorizio/ece261/F07/projects/ALU.pdfGeneralization ALU (Arithmetic Logic Unit) A critical component of the microprocessor, the

Signed-shift left Layout consist of 24 2-input MUX, using Metal 1 and Metal 2 interconnects

Page 27: 8-bit Arithmetic Logic Unit Design Reportece.duke.edu/~jmorizio/ece261/F07/projects/ALU.pdfGeneralization ALU (Arithmetic Logic Unit) A critical component of the microprocessor, the

27

8-bit ripple Adder schematic

Page 28: 8-bit Arithmetic Logic Unit Design Reportece.duke.edu/~jmorizio/ece261/F07/projects/ALU.pdfGeneralization ALU (Arithmetic Logic Unit) A critical component of the microprocessor, the

28

8-bit ripple Add-sub schematic

Page 29: 8-bit Arithmetic Logic Unit Design Reportece.duke.edu/~jmorizio/ece261/F07/projects/ALU.pdfGeneralization ALU (Arithmetic Logic Unit) A critical component of the microprocessor, the

29

Simulation

Page 30: 8-bit Arithmetic Logic Unit Design Reportece.duke.edu/~jmorizio/ece261/F07/projects/ALU.pdfGeneralization ALU (Arithmetic Logic Unit) A critical component of the microprocessor, the

30

1-bit full adder layout

Page 31: 8-bit Arithmetic Logic Unit Design Reportece.duke.edu/~jmorizio/ece261/F07/projects/ALU.pdfGeneralization ALU (Arithmetic Logic Unit) A critical component of the microprocessor, the

31

8-bit ripple adder layout (part)

Page 32: 8-bit Arithmetic Logic Unit Design Reportece.duke.edu/~jmorizio/ece261/F07/projects/ALU.pdfGeneralization ALU (Arithmetic Logic Unit) A critical component of the microprocessor, the

32

8-bit add-sub layout (part)

Page 33: 8-bit Arithmetic Logic Unit Design Reportece.duke.edu/~jmorizio/ece261/F07/projects/ALU.pdfGeneralization ALU (Arithmetic Logic Unit) A critical component of the microprocessor, the

4-bit Booth Multiplier

Schematic

Page 34: 8-bit Arithmetic Logic Unit Design Reportece.duke.edu/~jmorizio/ece261/F07/projects/ALU.pdfGeneralization ALU (Arithmetic Logic Unit) A critical component of the microprocessor, the

4-bit Booth Multiplier

SimulationB*A=2*3 Multiplier A ---0000 0011 Multiplicand B ---0010 0000Stage1: 0000 00110 subtract B, shift - 0010 0000Stage2: 1111 00011 nothing, shiftStage3: 1111 10001 add B, shift + 0010 0000Stage4: 0000 11000 nothing, shiftProduct:0000 0110-----done, 6=2*3

Page 35: 8-bit Arithmetic Logic Unit Design Reportece.duke.edu/~jmorizio/ece261/F07/projects/ALU.pdfGeneralization ALU (Arithmetic Logic Unit) A critical component of the microprocessor, the

4-bit Booth MultiplierStage1 out-11110001 stage2 out-11111000

Stage3 out-00001100 stage4 out-00000110

Page 36: 8-bit Arithmetic Logic Unit Design Reportece.duke.edu/~jmorizio/ece261/F07/projects/ALU.pdfGeneralization ALU (Arithmetic Logic Unit) A critical component of the microprocessor, the

4-bit Booth Multiplier

Layout

Page 37: 8-bit Arithmetic Logic Unit Design Reportece.duke.edu/~jmorizio/ece261/F07/projects/ALU.pdfGeneralization ALU (Arithmetic Logic Unit) A critical component of the microprocessor, the

Summary

We successfully design 8-bit ALU, supporting 4-bit multiplication. The design has a right simulation result and passes the DRC and LVS verificationFinal chip:

4464 transistors S=2mm*2mm