VLSI 2 Project Report
VLSI 2 Project Report
Submitted By:
Anik Saha (0906001)
Anupam Golder (0906004)
Table of Contents:
Topic Page No
Truth table for binary 1 bit incrementer/decrementer 4
Number of Transistors used 21
Measure of delays and rise time and fall time from schematic simulation with 28
IO pad
Measure of delays and rise time and fall time from av_extracted simulation 30
with IO pad
Dependency of power dissipation on clock frequency 32
Page |1
Project Abstract
The objective of this lab project is to design a medium scale integration chip from concept to
layout including the placement of the I/O pads and preparation of a GDS file of the layout
after clearing all the design rule check and verification. The design to be pursued is that of a 4
bit incrementer/decrementer, but the design is general in that the standard cell envisaged can
be cascaded at will to n-bits. So, the design is basically a modular design.
Introduction
Task1
Specification, architectural design and functional verification
This is a high-level description of the design implemented. Verilog has been used to describe
the architecture and to verify the system level functionality including data flow using NCSim
and SimVision in Cadence.
Design Specification:
4 bit Incrementer / Decrementer
if (~reset)
else if (incdec)
else
endmodule
Page |3
module stimulus;
reg clk, reset, incdec, cin;
wire cout;
wire [3:0] Q;
incdec in1(clk, reset, incdec, cin, Q, cout);
initial
begin
clk = 1'b0;
forever begin #5 clk = ~clk; end
end
initial
begin
$shm_open("shm.db",1); // Opens a waveform database
$shm_probe("AS"); // Saves all signals to database
#300 $finish;
#400 $shm_close(); // Closes the waveform database
end
initial
begin
#0 incdec<=1; #100 incdec<=0;
end
initial
begin
#0 reset=1; #30 reset=0; #40 reset=1; #250 reset=0;
#280 reset=1;
end
endmodule //stimulus
Fig. 1. Functional verification of 4 bit incrementer’s Verilog description (the figure shows
reset,increment and decrement operation)
Page |4
Task 2
Gate level schematic design
Each sub-block of the system has been designed in gate level at this stage. Schematic
structure of each component has been detailed. It also includes the Boolean expressions used.
The truth table for binary 1 bit incrementer is shown in the table, where Ci is the carry bit
from the previous stage, clk is the clock input, Ci+1 is the carry bit output, and Qn is the stage
output and Qn-1 is the state of the output prior to clocking.
Qn Ci Qn 1.............(1)
Ci 1 Ci .Qn 1...............(2)
The n stages are isolated by the clock signal clk, and it will be seen that the truth table
assumes positive-edge clocking. A reset signal should also be provided for the incrementer so
that it can start from zero at any time.
Ci 1 Ci .Qn 1................(3)
Page |5
The cell uses its current input and the carry in from the previous stage as another input. The current
state and the carryout are modified according to the two inputs on clocking.
Modified Design:
Here, the two passgates and the inverter are replaced by an XOR gate.
Addition of reset
Fig. shows cascaded 1 bit cells to form a 4 bit incrementer/decrementer. In our design, MR
(reset) is active low.
Cin of first stage basically works as an enabler. Setting it to 0 will stop the
increment/decrement operation and freeze it. Cout of the last stage basically offers cascading
option to another incrementer/decrementer.
Page |7
Task3
Transistor or switch level design and cell layout
The gate level design has been converted in static CMOS gates (complex or standard gate)
and sequential Circuits. Storing the gates in working library, schematic, symbol and layout
view of each gate has been created and cell level simulation (schematic based, for functional
verification), DRC and LVS have been performed.
Transistor widths:
240n for nMOS and 480n for pMOS considering a mobility ratio of the two to be of 2.
Page |8
(a)
(b)
Fig. 7. Rule checking for Inverter (a) DRC check (b) LVS check
Fig. 9. 2 input NAND gate (a) Schematic (b) Layout (c) Symbol
(a)
P a g e | 10
(b)
Fig. 10. Rule checking for 2 input NAND (a) DRC check (b) LVS check
(a)
(b)
(c)
Fig. 12. 2 input XOR gate (a) Schematic (b) Layout (c) Symbol
(a)
(b)
Fig. 13. Rule checking for 2 input XOR (a) DRC check (b) LVS check
XOR gate has been designed as compact XOR using transmission gates as the on with CMOS
logic would require 12 transistors instead of 6 as used in this case. It show better performance
in terms of delay compared to CMOS PUN-PDN based design or pass transistor based
design.
P a g e | 13
(d) D Flip-flop:
(a)
(b)
By combining two level-sensitive latches, one positive-sensitive and one negative sensitive,
an edge-triggered flip-flop can be formed.The first latch stage is the master and the second
latch state is the slave. While CLK is low, the master negative-level-sensitive latch output
QM follows the D input while the slave positive-level-sensitive latch holds the previous
value. When the clock transitions from 0 to1, the master latch becomes opaque and holds the
D value at the time of the clock transition.
The slave latch becomes transparent, passing the stored master value QM to the output of the
slave latch(Q).The D input is blocked from affecting the output because the master is
disconnected from the D input. When the clock transitions from1 to 0, the slave latch holds
its value and the master starts sampling the input again.
(a)
(b)
P a g e | 15
(c)
(a)
(b)
Fig. 18. Rule checking for flip-flop (a) DRC check (b) LVS check
P a g e | 16
This design is superior to that of a NAND gate based flip-flop in that this requires lesser
number of transistors.
P a g e | 17
Task4
Top level layout placement and routing and LVS
This is the incorporation cells along with interconnect to realize the function of the circuit
according to the architecture. A layout versus schematic check has been performed and
matched between layout and schematic.
1 bit Incrementer/Decrementer:
(a)
(b)
P a g e | 18
(c)
Fig. 20. 1 bit Incrementer/Decrementer (a) Schematic (b) Layout (c) Symbol
(a)
(b)
Fig. 21. Rule checking for 1 bit Incrementer/Decrementer (a) DRC check (b) LVS check
P a g e | 19
4 bit Incrementer/Decrementer:
(a)
(b)
(c)
Fig. 22. 4 bit Incrementer/Decrementer (a) Schematic (b) Layout (c) Symbol
P a g e | 20
(a)
(b)
Fig. 23. Rule checking for 4 bit Incrementer/Decrementer (a) DRC check (b) LVS check
Fig. 24. ADE L Simulation result for 4 bit Incrementer/Decrementer demonstrating increment and
decrement operation
P a g e | 21
Statistics:
Number of Transistors used:
Blocks Number of Transistors
NOT 2
NAND2X1 4
XOR2X1 6
DFF 18
Table 2: Number of Transistors used
2. Layouts of cells designed in our project have same height, only widths vary. This helps in
easy routing of power lines (VDD and GND) and input and output signals when cells are
cascaded to form a 1 bit design, but only at the expense of increased leaf cell size because the
cell having the highest height determines the cell height of other cells which could be made of
smaller height.
Task5
Complete chip layout with I/O pad placement, clearing all DRC errors
and tape out
At this stage the I/O pad has been placed around the edge of the chips. The final chip has
been cleared for DRC and LVS. Finally, tape out has been performed.
ESD Protection:
(a)
(b)
(a)
(b)
Fig. 27. Rule checking for ESD Protection (a) DRC check (b) LVS check
Bond PAD:
- Must have all metal layers used in drawing layout. (Here, we have used 3 metal layers)
- Must have via layers in between metal layers. (Here, we have used 2 via layers)
- Size 70u x 70u (minimum size can be found in gpdk090_DRM.pdf)
- Slots can be used, but avoided here.
- Metal bar sizes = 12u x 70u
- Spacing between metal bars =2.5 um
P a g e | 24
Pin Diagram:
(a)
(b)
Fig. 33. Rule checking for final chip (a) DRC check (b) LVS check
P a g e | 27
Simulated waveforms:
Circuit Inventory:
Table 3: Measure of delays and rise time and fall time from schematic simulation with IO pad
So these times are almost same for all Q signals. So, later we will determine this for Q0 only.
Power Calculation:
(a)
(b)
P a g e | 29
(c)
Simulated waveforms:
(a)
P a g e | 30
(b)
(c)
Fig. 37 Simulated waveform from av_extracted view when clock frequency is 50 MHz
As seen from the waveforms, delay has increased from the delay observed from schematic
based simulation due to inclusion of bondpad and parasitic resistances and capacitances.
Circuit Inventory:
Table 4 : Measure of delays and rise time and fall time from av_extracted simulation with IO
pad
So these times are almost same for all Q signals. So, later we will determine this for Q0 only.
P a g e | 31
Power Calculation:
(a)
(b)
(c)
Increasing clock frequency increases dynamic power dissipation. Also, after av_extractaction,
parasitic resistors and capacitors increase both power consumption and delay.
Conclusion
The 4 bit incrementer/decrementer design has been a success. All the basic gates and
complex designs have performed as per expectation as verified in ADE L. Although, the chip
is not a highly optimized one, it shows reasonable delay, very small power consumption and
high frequency (~MHz) operation.