Vlsi Lab PDF
Vlsi Lab PDF
Vlsi Lab PDF
Faculty-in-charge
Mrs. Sangeetha B G
Mrs. Ibrar Jahan
1. Attracting quality Students and preparing them with a strong foundation in fundamentals
so as to achieve distinctions in various walks of life leading to outstanding contributions.
2. Imparting value based, need based, and choice based and skill based professional
education to the aspiring youth and carving them into disciplined, World class
Professionals with social responsibility.
3. Promoting excellence in Teaching, Research and Consultancy that galvanizes academic
consciousness among Faculty and Students.
4. Exposing Students to emerging frontiers of knowledge in various domains and make them
suitable for Industry, Entrepreneurship, Higher studies, and Research & Development.
5. Providing freedom of action and choice for all the Stake holders with better visibility.
Course Outcomes
After studying this course, students will be able to:
CO1 Write test bench to simulate various digital circuits.
CO2 Realize shift registers and adders to meet desired parameters using basic gates.
CO3 Understand the flow of the Full Custom IC design cycle by exploring the CAD tool.
CO4 Interpret concepts of DC Analysis, AC Analysis and Transient Analysis in analog circuits.
Simulate basic CMOS circuits like inverter, common source amplifier and differential
CO5
amplifiers.
Functional verification of operational amplifier and analog/digital converters to meet desired
CO6
parameters using basic amplifiers.
CO mapping to PO/PSOs
CO /
PO1 PO2 PO3 PO4 PO5 PO6 PO7 PO8 PO9 PO10 PO11 PO12 PSO1 PSO2
PO & PSO
15ECL77.1 1 2 1 2 2
15ECL77.2 1 1 1 2 1 2 2
15ECL77.3 1 1 2 1 2 3
15ECL77.4 1 2 1 2 3
15ECL77.5 1 1 2 1 1 3
15ECL77.6 1 2 1 1 3
VLSI Laboratory
Subject Code: 15ECL77 Total Hours: 40
Hours/Week: 01I + 2P Exam Hours: 03
Subject Code 15CSL38
I.A. Marks 20
Exam Marks 80
List of Programs
Sl. No Name of Experiment CO
PART - A
ASIC-DIGITAL DESIGN
1 Write Verilog Code for the following circuits and their Test
Bench for verification, observe the waveform and synthesize
the code with technological library with given constraints*.
Do the initial timing verification with gate level simulation.
i. An inverter
ii. A Buffer CO1
iii. Transmission Gate
iv. Basic/universal gates
v. Flip flop -RS, D, JK, MS, T
vi. Serial & Parallel adder
vii. 4-bit counter [Synchronous and Asynchronous counter]
viii. Successive approximation register [SAR]
PART - A
ASIC-ANALOG DESIGN
1 Design an Inverter with given specifications**, completing
the design flow
mentioned below:
a. Draw the schematic and verify the following
i) DC Analysis
ii) Transient Analysis CO1
b. Draw the Layout and verify the DRC, ERC
c. Check for LVS
d. Extract RC and back annotate the same and verify the
Design
e. Verify & Optimize for Time, Power and Area to the given
constraint*
2 Design the (i) Common source and Common Drain amplifier
and (ii) A Single
Stage differential amplifier, with given specifications**,
completing the
design flow mentioned below: CO2
a. Draw the schematic and verify the following
i) DC Analysis
ii) AC Analysis
iii) Transient Analysis
b. Draw the Layout and verify the DRC, ERC
c. Check for LVS
d. Extract RC and back annotate the same and verify the
Design.
3 Design an op-amp with given specification** using given
differential amplifier Common source and Common Drain
amplifier in library*** and completing the design flow
mentioned below:
a. Draw the schematic and verify the following
i) DC Analysis CO4
ii). AC Analysis
iii) Transient Analysis
b. Draw the Layout and verify the DRC, ERC
c. Check for LVS
d. Extract RC and back annotate the same and verify the
Design.
4 Design a 4 bit R-2R based DAC for the given specification
and completing the design flow mentioned using given op-
amp in the library***.
a. Draw the schematic and verify the following CO4
i) DC Analysis
ii) AC Analysis
iii) Transient Analysis
b. Draw the Layout and verify the DRC, ERC
5 For the SAR based ADC mentioned in the figure below draw
the mixed signal schematic and verify the functionality by
completing ASIC Design FLOW.
[Specifications to GDS-II]
CO2
VLSI Laboratory
Evaluation Rubrics
Understanding of
Able to analyze the Able to analyze the
design and Poor understanding
given design and design and moderate
a. approach to of design or tool.
efficiently implement understanding of tool.
solve. (1-0)
using Cadence tool. (4) (3-2)
(4 Marks)
Design executed for
Design has errors
specified inputs with Design is executed
Execution and or no Execution
valid results and able to for some inputs and
b. Viva (5 questions) and not answered
answer all five able to answer three-
(2 Marks) any questions.
questions two questions. (1)
(0)
appropriately. (2)
Obtained results for Obtained results for No Proper results
Results and
respective design are respective design is and poor
c. Documentation
legibly written / acceptably documentation.
(4 Marks)
documented. (4) documented. (3-2) (1-0)
Getting Started
Cadence can be run only on Unix terminals or PCs loaded with Linux (or UnixTerminal
emulators) and X Windows servers like Exceed, X-Win32, or Xfree (Linux). BeforeStarting
the Cadence, there are a few configuration files that are needed in the home Working
directory. These files determine the environment in which Cadence runs, what libraries are to
be included in the current session, etc. These files are in "cshrc" file in the user directory of
"cadence". A work directory has been created for each user when cadence is to be used, so that
all the files generated by Cadence user will be creating their directory locally. Ex.: (you’re
U.S.N. No.)". This will store the Cadence work Environment and files for the present user
only. To For sourcing the script file, c-shell is used.
csh
source /cad/cshrc
cd Cadence_digital_labs
mkdir USN_no [Create folder for storing your digital experiments]
cd USN_no
vi inv.v [Create a verilog files in vi editor]
vi inv_test.v [Create a verilog testbench files in vi editor]
ncvlog inv_test.v –mess
ncvlog inv_test.v –mess [To compile your verilog and textbench code]
ncelab inv_test-access +rwc –mess [To elaborate your testbench code]
ncsim inv_test –gui [To simulate your testbench code]
Command Window
Graphical Window
Note: You have to work in command window
Circuit Diagram:
Circuit Diagram:
Circuit Diagram:
Circuit Diagram:
1. SR FLIP-FLOP
Circuit Diagram:
2. D FLIP-FLOP
Output Waveform:
3. JK FLIP-FLOP
Black Box Truth Table
//Verilog code //Test bench
Output Waveform:
4. T FLIP-FLOP
Black Box Truth Table
Output Waveform:
EXPERIMENT 6: ADDERS
Aim: To write the verilog code for serial and parallel adder write the test bench for the same
to verify and observe the waveform and synthesize the code.
1. PARALLEL ADDER
Circuit Diagram:
2. SERIAL ADDER
Circuit Diagram:
if(enable)
begin
shiftc=shiftc>>1;
if(sum)
shiftc[7]=sum;
else shiftc[7]=1'b0;
end
end
assign pout=shiftc;
fa f1
(shifta[0],shiftb[0],hcarry,sum,cout);
always@(posedge clk)
begin
if(reset)
hcarry=1'b0;
else if(enable)
hcarry=cout;
else
hcarry=hcarry;
end
endmodule
Output Waveform:
EXPERIMENT 7: COUNTERS
Aim: To write the verilog code for synchronous and asynchronous counter write the test
bench for the same to verify and observe the waveform and synthesize the code.
1. ASYNCHRONOUS COUNTER
Output Waveform:
2. SYNCHRONOUS COUNTER
Output Waveform:
Successive Approximation Register (SAR)
Verilog Code Testbench
module sar (R,L,E,W,clk,q); module sar_test;
parameter n=8; reg[7:0] r;
input [n-1:0] r; reg l,e,w,clk;
input L,E,W, clk; wire [7:0]q;
output [n-1:0] q; sar bb (R(r), L(l), E(e), W(w), clk(clk), q(q));
reg [n-1:0]; initial
integer k; begin
l=1’b1;
always @(posedge(clk)) e=1’b0;
begin r=8’b11110000;
if (L) clk = 1’b0;
q=R; #10 w=1’b1;
else if(R) l=1’b0;
begin e=1’b1;
for (k=n-1; k>0;k=k+1) #10 w= 1’b0;
q[k-1]<=q[k]; end
q[n-1] <=W; always @ clk = ~clk;
end endmodule
end
endmodule
PART-B
VLSI lab allows the theoretical concepts studied as part of subjects CMOS VLSI
Design, Microelectronics Circuits and HDL, to experience in practical with the help of Cadence
tool framework. The lab introduces the complete custom IC design flow, ASIC design flow and
AMS (Analog and Mixed Signal) flow for Analog circuits, Digital circuits and Analog and
mixed signal circuits design respectively.
The analog design involves schematic (standard cell), test schematic capture and
symbolic representation of circuit topologies using Virtuoso schematic editor/ Composer.
Simulation of the test circuit to perform various analyses such as transient, DC and AC is
facilitated by Multimode Simulator/Spectre. Once the simulation results are obtained as per the
specifications the physical design is carried out using Virtuoso Layout suite followed by the
physical verification using Assura DRC (Design Rule Check), LVS (Layout Versus Schematic)
and Parasitic RC extraction. The floor planning, Power planning, placement and routing can be
performed later using Encounter.
The digital design involves the realization of various digital circuit components using
Register Transfer Logic (RTL) code, Compilation of the same using Native Compiler,
elaboration using elaborator and simulation using Incisive. The synthesis of the verified RTL
code to obtain the gate level netlist is performed thereon.
The AMS circuit design is performed by importing the digital modules as configuration
files into the analog environment, followed by the steps of the analog design and simulating the
same using AMS simulator instead of Spectre.
Using the LINUX operating system is similar to using other operating systems such as DOS.
LINUX commands are issued to the system by typing them in a “shell”. LINUX commands
are case sensitive so be careful when issuing a command, usually they are given in lower-
case.
The following list summarizes all the basic commands required to manage the data
files you will be creating in this lab course. All LINUX commands are entered from the shell
window (Terminal window).
Caution: Do not use LINUX commands for modifying, deleting, or moving any Cadence
data files.
Table 1 Common LINUX commands
Commands Description
ls [-la] Lists files in the current directory. ”l” lists with properties and
“a” also lists hidden files (ones beginning with a “.”)
cd XXXX Changes the current directory to XXXX.
cd.. Changes the current directory back to one level.
cp XXXX YYYY Copies the file XXXX to YYYY
mv XXXX YYYY Moves file XXXX to YYYY. Also used for rename
rm XXXX Deletes the file XXXX
mkdir XXXX Creates the directory XXXX.
lp -dXXXX YYYY Prints the textfile or postscript file YYYY to the printer named
XXXX, where XXXX can be either “ipszac” or “hpszac”
Note: The command “&” tells LINUX to execute the command and return the prompt to the active shell.
ANALOG DESIGN
Custom IC Design Flow
Specification/
Requirement
F
R
O Schematic
N
T
Symbol
E
N
D Back
Back Test Circuit Annotation
Annotation
Simulation
Layout Design
B
A
DRC
C
K
LVS E
N
D
RCX
GDS
1. Login to your workstation using the username and password. The home directory has
a csh file with paths to the cadence installation.
3. If the “What’s New…” window appears, close it with the File-Close command.
4. Keep opened CIW window for the labs.
1. In the CIW or Library manager, select the library created and execute File-New-
Cellview.
2. Setup the new file form.
3. Click ok. A blank schematic window for the design appears.
1. In the design window, click the create instance, fix menu icon to display add
instance form.
2. Click on the browse button. This opens up a library browser from which you can
select the components (gpdk180) and the symbol view (library created you).
3. After you complete the add instance form, move your cursor to the schematic
window and click left to place a component. If you place a component with wrong
parameter values, use the Edit-Properties-Objects command to change the
parameter. Use Edit-Move command if you place components in the wrong
location. You can rotate components using Edit-Rotate command.
4. After entering components, click cancel in the Add instance form or
press Esc.
Symbol Creation:
Editing a Symbol:
1. Move the cursor over the automatically generated symbol, until the green rectangle is
highlighted, click left to select it.
2. Click Delete icon in the symbol window, similarly select the red rectangle and delete
that.
3. Execute Create-Shape-Polygon.
4. After creating the shape press ESC key.
5. You can move the pin names according to the location.
6. Execute Create-Selection Box. In the Add Selection Box form, click Automatic. A
new red selection box is automatically added.
7. After creating symbol, click on the save icon in the symbol editor window to save the
symbol. In the symbol editor, execute File-Close to close the symbol view window.
1. In the simulation window, execute Session- Save State. Set the Save as field and
click ok.
2. In the simulation window execute Session- Load State, set the state name and
click ok.
1. From the schematic window menu execute Launch- Layout XL. A startup Option
form appears.
2. Select Create New option.
3. Check the cell name, View name. Click ok.
Making Interconnection:
Creating Contacts/Vias:
Running DRC:
1. Select Assura-Run DRC from Layout window. The DRC form appears. The
Library and cell name are taken from the current design window, but rule file may
be missing. Select the technology as gpdk180. This automatically loads the rule
file.
2. Click ok to start DRC. A progress form will appear. You can click on the watch
clock file to see the Log file.
3. When DRC finishes, a dialog box appears, Click Yes to view the results.
4. If there are any DRC error exits in the design View Layer Window (VLW) and
Error Layer Window (ELW) appears. Also the errors highlight in the design
itself.
5. Click View- Summary in the ELW to find the details of errors.
6. You can refer to rule file also for more information, correct all DRC errors and Re
– run the DRC.
7. If there are no errors in the layout then a dialog box appears with No DRC errors
found written in it, Click on close to terminate the DRC run.
ASSURA LVS:
1. Select Assura-Run LVS from the layout window. The Assura Run LVS form
appears, it will automatically load both the schematic and layout view of the cell.
2. Click OK. The LVS begins and a progress form appears.
3. If the schematic and layout matches completely, you will get the form displaying
Schematic and Layout Match.
4. If the schematic and Layout do not matches, a form informs that the LS completed
successfully and results form will appear, click YES in the form.
5. In the LVS debug form, find the details of mismatches and correct all those
mismatches and Re-Run the LVS.
ASSURA RCX:
Configuration View:
1. In ADEL window, select outputs, from the tab select save all.
2. In pop-up window, select all block for first and second line. Apply ok.
3. Run the simulation once again.
4. In the waveform window, choose browser from classic panel, double click on
tran, click on :pwr.
5. Power waveform appears on waveform window.
6. Execute Tools-Calculator.
7. Select the wave button on calculator and select the power waveform from the
waveform window.
8. This will display getdata on calculator window.
9. From the functions select average, this will open the data panel.
10. Click on Evaluate and observe the expression created in the calculator.
1. Go to ADEL window.
2. Run simulation
3. In the waveform window, open a new sub window.
4. From the ADEL window go to Results -> Direct Plot ->Select AC Gain and
Phase, and select Vo and Vin from test circuit.
5. Gain waveform appears on the simulation window.
Experiment – 1
Objectives:
1. Design an Inverter with given specification, completing the design flow mentioned below
a. Draw the schematic and verify the following
i) DC Analysis
ii) Transient Analysis
b. Draw the Layout and verify the DRC, ERC
c. Check for LVS
d. Extract RC and back annotate the same and verify the design
e. Verify & Optimize for Time, Power and Area to the given constraint.
Schematic Symbol
1. Design the following circuits with given specification, completing the design flow
mentioned below
a. Draw the schematic and verify the following
i) DC Analysis
ii) AC Analysis
iii) Transient Analysis
b. Draw the Layout and verify the DRC, ERC
c. Check for LVS
d. Extract RC and back annotate the same and verify the design
i) A Single Stage Differential Amplifier.
ii) Common Source and Common Drain Amplifier.
Schematic
Objectives
1. Design the following circuits with given specification, completing the design flow
Mentioned below
a. Draw the schematic and verify the following
i) DC Analysis
ii) AC Analysis
iii) Transient Analysis
b. Draw the Layout and verify the DRC, ERC
c. Check for LVS
d. Extract RC and back annotate the same and verify the design of Common Source
Amplifier.
Schematic Symbol
Schematic Symbol
1. Design the Op-Amp circuits with given specification, using given Differential amplifier
and Common source amplifier in library and completing the design flow mentioned below.
a. Draw the schematic and verify the following
i) DC Analysis
ii) AC Analysis
iii) Transient Analysis
b. Draw the Layout and verify the DRC, ERC
c. Check for LVS
Schematic
Symbol
Test Circuit:
1. Design the R-2R DAC circuits with given specification, using given operational amplifier
in library and completing the design flow mentioned below.
a. Draw the schematic and verify the following
i) DC Analysis
ii) AC Analysis
iii) Transient Analysis
Schematic
Symbol
Test Circuit: