EE 466/586 VLSI Design Partha Pande School of EECS Washington State University

Slides:



Advertisements
Similar presentations
Digital Integrated Circuits© Prentice Hall 1995 Combinational Logic COMBINATIONAL LOGIC.
Advertisements

Feb. 17, 2011 Midterm overview Real life examples of built chips
Logical Design.
Introduction So far, we have studied the basic skills of designing combinational and sequential logic using schematic and Verilog-HDL Now, we are going.
8085 processor. Bus system in microprocessor.
Chapter 9 Computer Design Basics. 9-2 Datapaths Reminding A digital system (or a simple computer) contains datapath unit and control unit. Datapath: A.
EE141 © Digital Integrated Circuits 2nd Arithmetic Circuits 1 Digital Integrated Circuits A Design Perspective Arithmetic Circuits Jan M. Rabaey Anantha.
EE141 Adder Circuits S. Sundar Kumar Iyer.
Digital Integrated Circuits A Design Perspective
CSE-221 Digital Logic Design (DLD)
EE141 © Digital Integrated Circuits 2nd Arithmetic Circuits 1 [Adapted from Rabaey’s Digital Integrated Circuits, ©2002, J. Rabaey et al.]
S. Reda EN160 SP’07 Design and Implementation of VLSI Systems (EN0160) Lecture 27: Datapath Subsystems 1/3 Prof. Sherief Reda Division of Engineering,
CS 300 – Lecture 3 Intro to Computer Architecture / Assembly Language Sequential Circuits.
EE 141 Project 2May 8, Outstanding Features of Design Maximize speed of one 8-bit Division by: i. Observing loop-holes in 8-bit division ii. Taking.
VLSI Arithmetic Adders Prof. Vojin G. Oklobdzija University of California
Logical Effort.
IMPLEMENTATION OF µ - PROCESSOR DATA PATH
Modern VLSI Design 2e: Chapter 6 Copyright  1998 Prentice Hall PTR Topics n Shifters. n Adders and ALUs.
S. Reda EN1600 SP’08 Design and Implementation of VLSI Systems (EN1600) Lecture 25: Datapath Subsystems 1/4 Prof. Sherief Reda Division of Engineering,
Spring 2006EE VLSI Design II - © Kia Bazargan 187 EE 5324 – VLSI Design II Kia Bazargan University of Minnesota Part IV: Control Path and Busses.
Prof. John Nestor ECE Department Lafayette College Easton, Pennsylvania ECE VLSI Circuit Design Lecture 23 - Subsystem.
Digital Integrated Circuits© Prentice Hall 1995 Arithmetic Arithmetic Building Blocks.
Digital Integrated Circuits© Prentice Hall 1995 Combinational Logic COMBINATIONAL LOGIC.
Adders. Full-Adder The Binary Adder Express Sum and Carry as a function of P, G, D Define 3 new variable which ONLY depend on A, B Generate (G) = AB.
Lec 17 : ADDERS ece407/507.
1 Delay Estimation Most digital designs have multiple data paths some of which are not critical. The critical path is defined as the path the offers the.
Evolution in Complexity Evolution in Transistor Count.
VLSI Arithmetic Adders & Multipliers Prof. Vojin G. Oklobdzija University of California
1 CHAPTER 4: PART I ARITHMETIC FOR COMPUTERS. 2 The MIPS ALU We’ll be working with the MIPS instruction set architecture –similar to other architectures.
Review: Basic Building Blocks  Datapath l Execution units -Adder, multiplier, divider, shifter, etc. l Register file and pipeline registers l Multiplexers,
Abdullah Aldahami ( ) Feb26, Introduction 2. Feedback Switch Logic 3. Arithmetic Logic Unit Architecture a.Ripple-Carry Adder b.Kogge-Stone.
Arithmetic Building Blocks
EE141 © Digital Integrated Circuits 2nd Arithmetic Circuits 1 Digital Integrated Circuits A Design Perspective Arithmetic Circuits Reference: Digital Integrated.
Arithmetic Building Blocks
1/8/ L3 Data Path DesignCopyright Joanne DeGroat, ECE, OSU1 ALUs and Data Paths Subtitle: How to design the data path of a processor.
Chapter 14 Arithmetic Circuits (I): Adder Designs Rev /12/2003
1 CPSC3850 Adders and Simple ALUs Simple Adders Figures 10.1/10.2 Binary half-adder (HA) and full-adder (FA). Digit-set interpretation: {0, 1}
Lecture 9 Topics: –Combinational circuits Basic concepts Examples of typical combinational circuits –Half-adder –Full-adder –Ripple-Carry adder –Decoder.
CSE477 L24 RAM Cores.1Irwin&Vijay, PSU, 2002 CSE477 VLSI Digital Circuits Fall 2002 Lecture 24: RAM Cores Mary Jane Irwin ( )
CSE115: Digital Design Lecture 20: Comparators, Adders and Subtractors Faculty of Engineering.
Computer Architecture, The Arithmetic/Logic UnitSlide 1 Part III The Arithmetic/Logic Unit.
Modern VLSI Design 4e: Chapter 6 Copyright  2008 Wayne Wolf Topics n Shifters. n Adders and ALUs.
FPGA-Based System Design: Chapter 4 Copyright  2003 Prentice Hall PTR Topics n Number representation. n Shifters. n Adders and ALUs.
CDA 3101 Fall 2013 Introduction to Computer Organization The Arithmetic Logic Unit (ALU) and MIPS ALU Support 20 September 2013.
EE141 © Digital Integrated Circuits 2nd Arithmetic Circuits 1 Digital Integrated Circuits A Design Perspective Arithmetic Circuits Jan M. Rabaey Anantha.
Basics of Energy & Power Dissipation
Introduction to VLSI Design© Steven P. Levitan 1998 Introduction Properties of Complementary CMOS Gates.
Digital Integrated Circuits© Prentice Hall 1995 Arithmetic Arithmetic Building Blocks.
An Introduction to VLSI (Very Large Scale Integrated) Circuit Design
CMPEN 411 VLSI Digital Circuits Spring 2009 Lecture 19: Adder Design
CSE477 VLSI Digital Circuits Fall 2002 Lecture 20: Adder Design
EE415 VLSI Design. Read 4.1, 4.2 COMBINATIONAL LOGIC.
EE141 Project: 32x32 SRAM Abhinav Gupta, Glen Wong Optimization goals: Balance between area and performance Minimize area without sacrificing performance.
Sp09 CMPEN 411 L21 S.1 CMPEN 411 VLSI Digital Circuits Spring 2009 Lecture 21: Shifters, Decoders, Muxes [Adapted from Rabaey’s Digital Integrated Circuits,
EE 466/586 VLSI Design Partha Pande School of EECS Washington State University
CSE477 L21 Multiplier Design.1Irwin&Vijay, PSU, 2002 CSE477 VLSI Digital Circuits Fall 2002 Lecture 21: Multiplier Design Mary Jane Irwin (
EE141 Arithmetic Circuits 1 Chapter 14 Arithmetic Circuits Rev /12/2003 Rev /05/2003.
EE141 Arithmetic Circuits 1 Chapter 14 Arithmetic Circuits Rev /12/2003.
Combinational Circuits
Subtitle: How to design the data path of a processor.
Swamynathan.S.M AP/ECE/SNSCT
Instructor: Alexander Stoytchev
Topics Number representation. Shifters. Adders and ALUs.
Combinatorial Logic Design Practices
Mary Jane Irwin ( ) CSE477 VLSI Digital Circuits Fall 2003 Lecture 22: Shifters, Decoders, Muxes Mary Jane.
Digital Integrated Circuits A Design Perspective
ARM implementation the design is divided into a data path section that is described in register transfer level (RTL) notation control section that is viewed.
Combinational Circuits
Arithmetic Building Blocks
Arithmetic Circuits.
Presentation transcript:

EE 466/586 VLSI Design Partha Pande School of EECS Washington State University

Lecture 21 Arithmetic circuits Adopted from Digital Integrated Circuits by Jan M Rabaey

A Generic Digital Processor

Building Blocks for Digital Architectures Arithmetic unit - Bit-sliced datapath(adder, multiplier, shifter, comparator, etc.) Memory - RAM, ROM, Buffers, Shift registers Control - Finite state machine (PLA, random logic.) - Counters Interconnect - Switches - Arbiters - Bus

An Intel Microprocessor Itanium has 6 integer execution units like this

Bit-Sliced Design

ALU  ALU computes a variety of logical and arithmetic functions based on opcode.  May offer complete set of functions of two variables or a subset.  ALU built around adder, since carry chain determines delay.

ALU as multiplexer  Compute functions then select desired one: opcode AND OR NOT SUM

Verilog for ALU ‘ define PLUS 0 ‘define MINUS 1 ‘define AND 2 ‘define OR 3 ‘define NOT 4 module alu(fcode,op0,op1,result,oflo); parameter n=16, flen=3; input [flen-1:0] fcode; [n-1:0] op0, op1; output [n-1:0] result; output oflo; assign {oflo,result} = (fcode == ‘PLUS) ? (op0 + op1) : (fcode == ‘MINUS) ? (op0 - op1) : (fcode == ‘AND) ? (op0 & op1) : (fcode == ‘OR) ? (op0 | op1) : (fcode == ‘NOT) ? (~op0) : 0; endmodule

Bit-Sliced Datapath

Itanium Integer Datapath Fetzer, Orton, ISSCC’02

Full-Adder

The Binary Adder

Express Sum and Carry as a function of P, G, D Define 3 new variable which ONLY depend on A, B Generate (G) = AB Propagate (P) = A  B Delete =A B Can also derive expressions for S and C o based on D and P Propagate (P) = A  B Note that we will be sometimes using an alternate definition for

The Ripple-Carry Adder Worst case delay linear with the number of bits Goal: Make the fastest possible carry path circuit t d = O(N) t adder = (N-1)t carry + t sum

Complimentary Static CMOS Full Adder 28 Transistors

Limitations  Tall PMOS transistor stacks present in both carry- and sum-generation circuits.  The intrinsic load capacitance of the C 0 signal is large and consists of two diffusion and six gate capacitances, plus the wiring capacitance  The signal propagates through two inverting stages in the carry-generation circuit.

Features  The first gate of the carry-generation circuit is designed with the C i signal on the smaller PMOS stack  NMOS and PMOS transistors connected to C i are placed as close as possible to the output of the gate.  In stage k of the adder, signals A k and B k are available and stable long before C i,k  Capacitances of the internal nodes is the transistor chain are precharged or discharged in advance.

Inversion Property  Inverting all inputs to a full adder results in inverted values for all outputs.

Minimize Critical Path by Reducing Inverting Stages Exploit Inversion Property

A Better Structure: The Mirror Adder V DD S C o 24 transistors

The Mirror Adder The NMOS and PMOS chains are completely symmetrical. A maximum of two series transistors can be observed in the carry- generation circuitry. When laying out the cell, the most critical issue is the minimization of the capacitance at node C o. The reduction of the diffusion capacitances is particularly important. The capacitance at node C o is composed of four diffusion capacitances, two internal gate capacitances, and six gate capacitances in the connecting adder cell. The transistors connected to C i are placed closest to the output. Only the transistors in the carry stage have to be optimized for optimal speed. All transistors in the sum stage can be minimal size.

Transmission Gate Full Adder The propagate signal, which is the XOR of inputs A and B, is used to select the true or complementary value of the input carry as the new sum output Based on the propagate signal, the output carry is either set to the input carry, or either one of the inputs A or B.