Lecture 1 Design Hierarchy Chapter 1
Digital System Design Flow 1.Register-Transfer Levl (RTL) – e.g. VHDL/Verilog 2.Gate Level Design 3.Circuit Level Design 4.Physical Layout
Verilog Include a set of 26 predefined functional models of common combinational logic gates called primitives. Primitives – The most basic functional objects that can be used to compose a design – Are built into the language by means of internal truth tables – Examples: and, nand, or, nor, xor, xnor
More on Primitives 3-input nand primitive – Input signal a, b, and c – Output signal y Each primitive has ports (corresponding to hardware pins and terminals) – The output port(s) of a primitive must be first in the list, followed by the primitive’s input ports.
Instantiated Primitives Instantiated Primitives (nor, and,nand) are connected by wires. A wire is a data-type which is used to establish connectivity in a design, just as a physical wire establishes connectivity between gates.
Example: a Full Adder Binary Addition Gate-Level Synthesis Verilog Representation
Binary Addition (1)
Binary Addition (2)
Derivation of ∑ Question: What primitive best implements ∑? Inputs: A, B Outputs: xor (∑, A, B) BA∑
Derivation of Carry Out Question: What primitive best implements C o ? Inputs: A, B Outputs: and (C o, A, B) BACoCo
A Half Adder A half adder is useful for adding LSB.
Limitation of a Half Adder A half-adder does not account for carry-in.
Truth Table of ∑ of a Full Adder C in BA∑ Identical to ∑ of a Half Adder C in +B+A=C in +∑ HA =C in XOR ∑ HA
Truth Table of C o of a Full Adder C in BACoCo Identical to ∑ of a Half Adder Use a Half Adder with C in and ∑ HA to generate C o
Schematic of a Full Adder
A 3 bit parallel adder
Gate Level vs. Verilog Model of a Full Adder
Explanation The keywords module and endmodule encapsulate the text that describes the module The module name is Add_full Module Ports are – Input a, b, c_in – Output c_out, sum Module instances: Add_half, or
Nested Module Add_half is a child module of Add_full
Gate Level Design Basic Gates – AND, NAND,OR, NOR, XOR, XNOR,NOT Universal Gates – NAND Gates – NOR Gates Multiple Inputs Logic Gates
NAND Based Logic Gates
NOR Based Logic Gates
Multiple Inputs Logic Gates
Circuit Level
Physical Design Floor Planning – Estimates of the area of major units in the chip and defines their relative placements. – Estimate wire lengths and wring congestions. – Challenge: estimate the size of each unit without proceeding through a detailed design of the chip. Layout Design Verification Tapeout
A Sample Floor Plan λ= ½ of minimum channel length
A Sample Layout
Layout of an Inverter In a 0.6 um process 4/2=1.2 um/0.6 um.
Design Verification LVS (Layout vs. Schematic) checks that transistors in a layout are connected in the same way as in the circuit schematic. DRC (Design Rule Checkers) verify that the layout satisfies design rules. ERC (Electrical Rule Checkers) scan for problems such as noise or premature wearout.
Tapeout Tapeout gets its name from the old practice of writing a specifications of masks to a magnetic tape. GDS Foundries: – TSMC – UMC – IBM
Fabricated Chip
IC Decapsulation
Cross Section
Low Cost Package Red: Top layer trace Green: Via Blue: Bottom layer trace
Package Parasitics