Académique Documents
Professionnel Documents
Culture Documents
VLSI-LAB MANUAL
15ECL77
BY
cd Change Directory
clear Clear terminal screen
date Display or change the date & time
dc Desk Calculator
dir Briefly list directory contents
eject Eject removable media
exit Exit the shell
file Determine file type
logout Exit a login shell
lprint Print a file
lprintd Abort a print job
ls List information about file(s)
lsof List open files
mkdir Create new folder(s)
open Open a file in its default application
pwd Print Working Directory
reboot Reboot the system
rmdir Remove folder(s)
shutdown Shutdown or restart linux
vi Text Editor
who Print all usernames currently logged in
whoami Print the current user id and name
### Comment / Remark
Aim: To Write The Verilog Code For CMOS Inverter And Write The Test-Bench For The Same To
Verify And Observe The Waveform And Synthesize The Code.
Circuit Diagram:
Procedure:
1.In Linux prompt, type the command
csh
2.Change directory to Cadence_database/
3.type the command source cshrc
4. Change directory to NCO
5. Change directory to rclabs
6. Change directory to Simulation
7.Create a new directory to store all the program using the command
mkdir expriments
9.Change the directory to the new directory created above using the command
cd expriments
10.Open the text editor using the command
vi invereter.v
vi invereter_test.v
11.Type the program in the text editor and to save perform the following procedure
i. Press esc key first and then
1.shift : wq! to save and quit
12. Click the run icon in the waveform window to view the waveform as shown below
output vout;
input vin;
supply1 vdd;
supply0 gnd;
pmos (vout,vdd,vin);
nmos (vout,gnd,vin);
endmodule
module inverter_test;
reg vin;
wire vout;
inverter i1(vout,vin);
initial
begin
vin=1'b0;
#10 vin=1'b1;
#20 vin=1'b0;
#20 vin=1'b1;
#20 $finish;
end
endmodule
Note: Follow the same steps shown above for all the experiments of PART-A
Aim: To write the verilog code for buffer and write the test-bench for the same to verify and observe
the waveform and synthesize the code
Circuit Diagram:
module buffer(a,f);
input a;
output f;
wire i;
inverter i1 (i,a);
inverter i2( f,i);
endmodule
module buffer_test;
reg a;
wire f;
buffer b1(a,f);
initial
begin
a=1'b0;
#10 a=1'b1;
#20 a= 1'b0;
#20 a=1'b1;
Expected waveform
Aim: To write the verilog code for transmission gate and write the test-bench for the same to verify
and observe the waveform and synthesize the code
Circuit Diagram:
module tg(ncontrol,pcontrol,in,out);
input ncontrol,pcontrol;
inout in,out;
cmos y(out,in,ncontrol,pcontrol);
endmodule
module tg_test;
reg in,ncontrol,pcontrol;
wire out;
tg i1(out,in,ncontrol,pcontrol);
initial
begin
in=1’b0;
ncontrol=1'b1;
pcontrol=1'b0;
#10 in=1'b1;
#20 in=1'b0;
#20 in=1'b1;
#20 $finish;
end
endmodule
Expected waveform
Aim: To write the verilog code for basic gates and writes the test-bench for the same to verify and
observe the waveform and synthesize the code
Circuit Diagram:
Truth table:
initial
begin
a=1'b0;
b=1'b0;
#15 b=1'b1;
#15 a=1'b1;
b=1'b0;
#15 a=1'b1;
b=1'b1;
#50 $stop;
end
endmodule
Expected waveform
Aim: To write the verilog code for flip-flops and write the test-bench for the same to verify and
observe the waveform and synthesize the code
A. SR-Flip flop
Circuit Diagram:
Truth table:
module basic_test;
reg a,b;
wire andf,orf,xorf,nandf,norf,notf;
basic b1 ( a,b,andf,orf,xorf,nandf,norf,notf);
initial
begin
a=1'b0;
b=1'b0;
#15 b=1'b1;
#15 a=1'b1;
b=1'b0;
#15 a=1'b1;
b=1'b1;
#50 $stop;
end
endmodule
Expected waveform
B. D-Flip flop
Circuit Diagram:
always@(posedge clk)
begin
q<=d;
qb<=~(d);
end
endmodule
module dff_test;
reg clk,d;
wire q,qb;
dff d1(clk,d,q,qb);
initial
begin
clk=1'b0;
end
always
#5 clk = ~clk;
initial
begin
Expected waveform
C. JK-Flip flop
Circuit Diagram:
qb=1'b1;
end
else
case(jk)
2'b00:q=q;
2'b01:q=1'b0;
2'b10:q=1'b1;
2'b11:q=~q;
DEPT.OF ECE, JSSATE, BENGALURU-60 VLSI LAB MANUAL (15ECL77) Page 17
endcase
qb=~q;
end
endmodule
module jkff_test;
reg clk,j,k,reset;
wire q,qb;
jkff d1(clk,j,k,reset,q,qb);
initial
begin
clk=1'b0;
reset=1'b0;
end
always
#5 clk = ~clk;
initial
begin
j=1'b0;
k=1'b0;
reset=1'b1;
j=1'b0;
k=1'b0;
#10 reset=1'b0;
j=1'b0;
k=1'b1;
#5j=1'b0;
#5k=1'b1;
#5 j=1'b1;
#5 k=1'b0;
#5 j=1'b1;
#5 k=1'b1;
#5 reset=1'b1;
#5 reset=1'b0;
#20 $finish;
end
endmodule
Expected waveform
module tff(clk,t,reset,q,qb);
input t,clk,reset;
output q,qb;
reg q,qb;
always@(posedge clk)
begin
if(reset)
begin
q=1'b0;
qb=1'b1;
end
else
if(t==0)
q=q;
else
q=~q;
qb=~q;
end
endmodule
module tff_test;
reg clk,t,reset;
wire q,qb;
Expected waveform
Aim: To write the verilog code for serial and parallel adders and write the test-bench for the same to verify
and observe the waveform and synthesize the code
1. Full adder
Circuit Diagram:
Truth table:
2. Parallel adder
Example:
fa f1 (a[0],b[0],cin,sum[0],c[0]);
fa f2 (a[1],b[1],c[0],sum[1],c[1]);
fa f3 (a[2],b[2],c[1],sum[2],c[2]);
fa f4 (a[3],b[3],c[2],sum[3],cout);
endmodule
Expected waveform
serial adder:
module serial_adder
(clk,rst,pload,adata,bdata,enable,pout);
input clk,rst,pload,enable;
input [7:0]adata,bdata;
Waveform:
Aim: To write the verilog code for four bit asynchronous and synchronous counters and write the test-bench
for the same to verify and observe the waveform and synthesize the code
1. Asynchronous Counter
Circuit Diagram:
Expected waveform
1. Synchronous counter
up_counter_load c1 (out,data,load,enable,clk,reset);
initial
begin
clk=1'b1;
data=4'b0100;
#250 $stop;
end
always
#5 clk =~clk;
initial
begin
reset=1'b1;
#10 reset =1'b0;
load=1'b1;
#15 load =1'b0;
enable =1'b1;
end
endmodule
Expected waveform
Aim: To write the verilog code for successive approximation register and write the test-bench for the same
to verify and observe the waveform and synthesize the code
Verilog code
module approximation (clk,rst,d0,d1,d2,d3);
input clk,rst;
output reg d0,d1,d2,d3;
integer
begin
i=3;
d0=1’b0
d1=1’b0
d2=1’b0
d3=1’b0
end
always @(posedgeclk)
begin
if(i==3)
begin
OUTPUT WAVEFORM
EXPERIMENT 1: Inverter
Aim: 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
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 Entry
In CIW , execute File-New-Library. The new library form appears as shown below
In the Inverter schematic window, click the Instance fixed menu icon to display the Add
Instance form (or press i)
Click on the Browse button. This opens up a library browser from which you can select
components and the symbol view.
After you completer the add instance form, move your cursor to the schematic window and click
left to place a component. The table showing the components for building the inverter schematic
is as shown below.
After entering components, click cancel in the Add Instance from or press Esc with your
cursor in the schematic window
Note: You can use the Edit-Properties-Objects command the properties of component. You can also
move and rotate the components using commands Edit-Move and Edit-Rotate respectively.
Click the check and save icon in the schematic editor window
Symbol Creation
The symbol generation form appears as shown. Modify the pin specifications and click ok
A new window displays an automatically created Inverter symbol.
STEP 2: Editing a symbol
Move the cursor over the automatically generated symbol until the green rectangle is
highlighted and click left to select it.
Click Delete icon in the symbol window. Similary select the red rectangle and delete that.
Execute Add-shape-Polygon and draw a shape similar to triangle and press escape.
Execute Add-shape-Circle at the end of triangle to appear like an inverter symbol.
Execute Add-Selection Box, click Automatic
After creating symbol, clik on save icon and execute window-close
Click OK when done the above settings. A blank schematic window for the Inverter_test design
appears.
STEP 2: Building the inverter_test schematic
In the Inverter schematic window, click the Instance fixed menu icon to display the Add
Instance form (or press i
Click on the Browse button. This opens up a library browser from which you can select
components and the symbol view.
DEPT.OF ECE, JSSATE, BENGALURU-60 VLSI LAB MANUAL (15ECL77) Page 41
After you complete the add instance form, move your cursor to the schematic window and click
left to place a component. The table showing the components for building the inverter_test
schematic is as shown below.
Library Name Cell Name Properties
After entering components, click cancel in the Add Instance fomm or press Esc with your
cursor in the schematic window
Add the wire and complete the schematic as shown below
Click check and save
From the analog Design environment window, execute Setup-Model Libraries and the setup
form appears as follows
Use the browse button to select the path ./models/spectre/gpdkstat.scs and click add,apply
and ok.
STEP 2: Choosing Analyses
In the simulation window execute Analysis-Choose. The choosing analysis form appears as
shown
Execute Simulation-Netlist and run in the simulation window to start the simulation.
When simulation finishes, the transient, DC plots will automatically will be popped up as shown
From the ADE window execute Session-Load State. Here set the state name to state 1 and click
ok.
Parametric Analysis
In the simulation window, execute Tools –Parametric Analysis and the form appears as shown
Change the range tye and step control fields in the parametric analysis form as shown below
Range Type From/To From 1u to 10u
Execute Analysis-Start
Once the runs are completed, the wavescan window comesup with the plots for different runs as
shown
Fron the inverter schematic window menu, execute Tools-Design Synthesis –LayoutXL.(Make
suer that the value of the wp is set to 2u)
Seclect Create New option. This gives a new cell view form.
Check the cellname(Inverter),viewname(layout) and tool(Virtuoso) and then click ok. The blank
layout window appears
STEP 2: Adding components to the layout
Execute Design –Gen From Source in the layout editor window which imports the basic
components into the layout window automatically.
Press Shift-f to view the geometry of the design
Re-arrange the components within PR boundary
To rotate and move the components execute Edit-Properties and Edit-Mpve commands.
STEP 3: Making Interconnection
Physical Verification
Select Assura –Run DRC from layout window. The DRC form appears as shown. Select the
technology as gpdk180. This automatically loads the rule file.
When DRC finishes, a dialog box appears, asking you if you want to view your DRC results and then
click yes.
If there are any DRC error in the design, view layer vindow(VLW) and error layer window(ELW)
apppers.
Click view –summary in the ELW to find the details of errors.
If there are no errors in the layout, then an dialog box appears with no DRC errors. Click close.
STEP 2: Running Assura LVS
Select Assura-Run LVS form the layout window and the window appears as shown.
Change the following in the form and click ok as shown and the LVS begins
Select Assura-Run RCX form the layout window and the window appears as shown.
Change the following in the form and click ok as shown
Fig
In the filtering tab of the form, enter the power nets as vdd!,vss! And then click ok.
A form informs that the RCX completed successfully
You can open av_extracted view form CIW window and view the parasitics.
Aim: Design the following circuits with given specifications, completing the design flow mentioned below:
Click OK when done the above settings. A blank schematic window for the Inverter design
appears.
STEP 2: Adding Components to schematic
In the Common_source schematic window, click the Instance fixed menu icon to display the Add
Instance form (or press i)
Click on the Browse button. This opens up a library browser from which you can select
components and the symbol view.
After you complete the add instance form, move your cursor to the schematic window and click
left to place a component. The table showing the components for building the inverter schematic
is as shown below.
After entering components, click cancel in the Add Instance fom or press Esc with your
cursor in the schematic window
Note: You can use the Edit-Properties-Objects command the properties of component. You can also
move and rotate the components using commands Edit-Move and Edit-Rotate respectively.
Click the check and save icon in the schematic editor window
Symbol Creation
Click OK when done the above settings. A blank schematic window for the Inverter_test design
appears.
In the Inverter schematic window, click the Instance fixed menu icon to display the Add
Instance form (or press i
Click on the Browse button. This opens up a library browser from which you can select
components and the symbol view.
After you complete the add instance form, move your cursor to the schematic window and click
left to place a component. The table showing the components for building the inverter_test
schematic is as shown below.
Library Name Cell Name Properties
=0;Offset=0;Amplitude=5m;Frequency=1K
After entering components, click cancel in the Add Instance fomm or press Esc with your
cursor in the schematic window
Add the wire and complete the schematic as shown below
Click check and save
In the Inverter_test schematic window execute Tools-Analog Environment and the window
appears as shown
From the analog Design environment window, execute Setup-Model Libraries
Use the browse button to select the path ./models/spectre/gpdkstat.scs and click add,apply
and ok.
STEP 2: Choosing Analyses
In the simulation window execute Analyses-Choose. The choosing analysis form appears as
shown
To setup transient analysis
In the Analysis section, select tran
Set the stop time as 200n
Click moderate and enable botton and click apply.
Execute Simulation-Netlist and run in the simulation window to start the simulation.
When simulation finishes, the transient, DC plots will automatically will be popped up as shown
Execute Design –Gen From Source in the layout editor window which imports the basic
components into the layout window automatically.
Press Shift-f to view the geometry of the design
Re-arrange the components within PR boundary
To rotate and move the components execute Edit-Properties and Edit-Mpve commands.
STEP 3: Making Interconnection
Physical Verification
Select Assura –Run DRC from layout window. The DRC form appears as shown. Select the
technology as gpdk180. This automatically loads the rule file.
Click OK to start DRC.
When DRC finishes, a dialog box appears, asking you if you want to view your DRC results and then
click yes.
If there are any DRC error in the design, view layer vindow(VLW) and error layer window(ELW)
apppers.
Select Assura-Run LVS form the layout window and the window appears.
Change the following in the form and click ok as shown and the LVS begins
If the schematic and layout match, a form informs that the LVS completed successfully and asks if
you want to see the results of this run. Click yes in the form.
If the schematic and layout do not match, a LVS debug form appears and you are directed into LVS
debug environment.
STEP 3: Running Assura RCX
Select Assura-Run RCX form the layout window and the window appears.
Change the following in the form and click ok as shown
In the filtering tab of the form, enter the power nets as vdd!,vss! And then click ok.
A form informs that the RCX completed successfully
You can open av_extracted view form CIW window and view the parasitics.
Aim: Design the following circuits with given specifications, 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.
Schematic Entry
In the Common_source schematic window, click the Instance fixed menu icon to display the Add
Instance form (or press i)
Click on the Browse button. This opens up a library browser from which you can select
components and the symbol view.
After you complete the add instance form, move your cursor to the schematic window and click
left to place a component. The table showing the components for building the inverter schematic
is as shown below.
After entering components, click cancel in the Add Instance fom or press Esc with your
cursor in the schematic window
Note: You can use the Edit-Properties-Objects command the properties of component. You can also
move and rotate the components using commands Edit-Move and Edit-Rotate respectively.
Click the check and save icon in the schematic editor window
Symbol Creation
Click OK when done the above settings. A blank schematic window for the Common_drain_test
design appears.
STEP 2: Building the common_drain_test schematic
In the Inverter schematic window, click the Instance fixed menu icon to display the Add
Instance form (or press i
=0;Offset=0;Amplitude=5m;Frequency=1K
After entering components, click cancel in the Add Instance fomm or press Esc with your
cursor in the schematic window
Add the wire and complete the schematic as shown below
In the Inverter_test schematic window execute Tools-Analog Environment and the window
appears as shown
From the analog Design environment window, execute Setup-Model Libraries
Use the browse button to select the path ./models/spectre/gpdkstat.scs and click add,apply
and ok.
STEP 2: Choosing Analyses
In the simulation window execute Analyses-Choose. The choosing analysis form appears.
To setup transient analysis
In the Analysis section, select tran
Set the stop time as 200n
Click moderate and enable botton and click apply.
To setup dc analysis
In the Analysis section, select dc
In the dc analysis section, turn on save DC Operating Point
To setup ac analysis
In the analyses section, select ac.
In the ac analyses section, turn on frequency
In the sweep range section, select start and stop frequencies as 100 to 100M
Select points per decade as 20
Check the enable button and then click apply and ok.
Execute Simulation-Netlist and run in the simulation window to start the simulation.
When simulation finishes, the transient, DC plots will automatically will be popped up as shown
Execute Design –Gen From Source in the layout editor window which imports the basic
components into the layout window automatically.
Press Shift-f to view the geometry of the design
Re-arrange the components within PR boundary
To rotate and move the components execute Edit-Properties and Edit-Mpve commands.
STEP 3: Making Interconnection
Physical Verification
Select Assura –Run DRC from layout window. The DRC form appears as shown. Select the
technology as gpdk180. This automatically loads the rule file.
Click OK to start DRC.
When DRC finishes, a dialog box appears, asking you if you want to view your DRC results and then
click yes.
If there are any DRC error in the design, view layer vindow(VLW) and error layer window(ELW)
appears.
Click view –summary in the ELW to find the details of errors.
If there are no errors in the layout, then an dialog box appears with no DRC errors. Click close.
STEP 2: Running Assura LVS
Select Assura-Run LVS form the layout window and the window appears as shown.
Change the following in the form and click ok as shown and the LVS begins
Select Assura-Run RCX form the layout window and the window appears as shown.
Change the following in the form and click ok as shown
In the filtering tab of the form, enter the power nets as vdd!,vss! And then click ok.
A form informs that the RCX completed successfully
You can open av_extracted view form CIW window and view the parasitics.
Aim: Design the following circuits with given specifications, 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.
Schematic Entry
In the differential_amplifier schematic window, click the Instance fixed menu icon to display the
Add Instance form (or press i)
Click on the Browse button. This opens up a library browser from which you can select
components and the symbol view.
After you complete the add instance form, move your cursor to the schematic window and click
left to place a component. The table showing the components for building the
Differential_amplifier schematic is as shown below.
After entering components, click cancel in the Add Instance fom or press Esc with your
cursor in the schematic window
Note: You can use the Edit-Properties-Objects command the properties of component. You can also
move and rotate the components using commands Edit-Move and Edit-Rotate respectively.
Click the check and save icon in the schematic editor window
In the Inverter schematic window, click the Instance fixed menu icon to display the Add
Instance form (or press i
Click on the Browse button. This opens up a library browser from which you can select
components and the symbol view.
After you complete the add instance form, move your cursor to the schematic window and click
left to place a component. The table showing the components for building the
differential_amp_test schematic is as shown below.
Library Name Cell Name Properties
s r
=0;Offset=0;Amplitude=5m;Frequency=1
To setup dc analysis
In the Analysis section, select dc
In the dc analysis section, turn on save DC Operating Point
Turn on the component parameter
Double click the select component, which takes you to the schematic window.
Select input signal Vsin for dc analysis.
In the analysis form, select start and stop voltages as -5 to 5 respectively
Check the enable button and click apply
Execute Simulation-Netlist and run in the simulation window to start the simulation.
When simulation finishes, the transient, DC plots will automatically will be popped up as shown
Execute Design –Gen From Source in the layout editor window which imports the basic
components into the layout window automatically.
Press Shift-f to view the geometry of the design
Re-arrange the components within PR boundary
To rotate and move the components execute Edit-Properties and Edit-Mpve commands.
STEP 3: Making Interconnection
Physical Verification
Select Assura –Run DRC from layout window. The DRC form appears as shown. Select the
technology as gpdk180. This automatically loads the rule file.
Click OK to start DRC.
When DRC finishes, a dialog box appears, asking you if you want to view your DRC results and then
click yes.
If there are any DRC error in the design, view layer vindow(VLW) and error layer window(ELW)
apppers.
Click view –summary in the ELW to find the details of errors.
Select Assura-Run LVS form the layout window and the window appears as shown.
Change the following in the form and click ok as shown and the LVS begins
If the schematic and layout match, a form informs that the LVS completed successfully and asks if
you want to see the results of this run. Click yes in the form.
If the schematic and layout do not match, a LVS debug form appears and you are directed into LVS
debug environment.
STEP 3: Running Assura RCX
Select Assura-Run RCX form the layout window and the window appears as shown.
Change the following in the form and click ok as shown
In the filtering tab of the form, enter the power nets as vdd!,vss! And then click ok.
A form informs that the RCX completed successfully
You can open av_extracted view form CIW window and view the parasitics.
Aim: 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
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.
Schematic Entry
In the operational_amplifier schematic window, click the Instance fixed menu icon to display the
Add Instance form (or press i)
Click on the Browse button. This opens up a library browser from which you can select
components and the symbol view.
After you complete the add instance form, move your cursor to the schematic window and click
left to place a component. The table showing the components for building the
Operational_amplifier schematic is as shown below.
After entering components, click cancel in the Add Instance fom or press Esc with your
cursor in the schematic window
Note: You can use the Edit-Properties-Objects command the properties of component. You can also
move and rotate the components using commands Edit-Move and Edit-Rotate respectively.
Click the check and save icon in the schematic editor window
Symbol Creation
In the Op_amplifier_test schematic window, click the Instance fixed menu icon to display the
Add Instance form (or press i
Click on the Browse button. This opens up a library browser from which you can select
components and the symbol view.
After you complete the add instance form, move your cursor to the schematic window and click
left to place a component. The table showing the components for building the op_amplifier_test
schematic is as shown below.
=0;Offset=0;Amplitude=5m;Frequency=1K
After entering components, click cancel in the Add Instance fomm or press Esc with your
cursor in the schematic window
In the simulation window execute Analyses-Choose. The choosing analysis form appears.
To setup transient analysis
In the Analysis section, select tran
Set the stop time as 5m
To setup dc analysis
In the Analysis section, select dc
In the dc analysis section, turn on save DC Operating Point
Turn on the component parameter
Double click the select component, which takes you to the schematic window.
Select input signal Vsin for dc analysis.
In the analysis form, select start and stop voltages as -5 to 5 respectively
Check the enable button and click apply
Execute Simulation-Netlist and run in the simulation window to start the simulation.
When simulation finishes, the transient, DC plots will automatically will be popped up as shown
Execute Design –Gen From Source in the layout editor window which imports the basic
components into the layout window automatically.
Press Shift-f to view the geometry of the design
Re-arrange the components within PR boundary
To rotate and move the components execute Edit-Properties and Edit-Mpve commands.
STEP 3: Making Interconnection
Physical Verification
Select Assura –Run DRC from layout window. The DRC form appears as shown. Select the
technology as gpdk180. This automatically loads the rule file.
Click OK to start DRC.
When DRC finishes, a dialog box appears, asking you if you want to view your DRC results and then
click yes.
If there are any DRC error in the design, view layer vindow(VLW) and error layer window(ELW)
apppers.
Click view –summary in the ELW to find the details of errors.
If there are no errors in the layout, then an dialog box appears with no DRC errors. Click close.
STEP 2: Running Assura LVS
Select Assura-Run LVS form the layout window and the window appears as shown.
Change the following in the form and click ok as shown and the LVS begins
If the schematic and layout match, a form informs that the LVS completed successfully and asks if
you want to see the results of this run. Click yes in the form.
Select Assura-Run RCX form the layout window and the window appears as shown.
Change the following in the form and click ok as shown
In the filtering tab of the form, enter the power nets as vdd!,vss! And then click ok.
A form informs that the RCX completed successfully
You can open av_extracted view form CIW window and view the parasitics.
CMRR Measurement:
Aim: 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
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.
Schematic Entry
In the R-2R schematic window, click the Instance fixed menu icon to display the Add Instance
form (or press i)
Click on the Browse button. This opens up a library browser from which you can select
components and the symbol view.
After you complete the add instance form, move your cursor to the schematic window and click
left to place a component. The table showing the components for building the R-2R schematic is
as shown below.
After entering components, click cancel in the Add Instance fom or press Esc with your
cursor in the schematic window
Note: You can use the Edit-Properties-Objects command the properties of component. You can also
move and rotate the components using commands Edit-Move and Edit-Rotate respectively.
Click the check and save icon in the schematic editor window
Symbol Creation
Click OK when done the above settings. A blank schematic window for the R-2R_DAC_test
design appears.
DEPT.OF ECE, JSSATE, BENGALURU-60 VLSI LAB MANUAL (15ECL77) Page 100
STEP 2: Building the R-2R_DAC _test schematic
In the R-2R_DAC _test schematic window, click the Instance fixed menu icon to display the
Add Instance form (or press i
Click on the Browse button. This opens up a library browser from which you can select
components and the symbol view.
After you complete the add instance form, move your cursor to the schematic window and click
left to place a component. The table showing the components for building the R-2R_DAC _test
schematic is as shown below.
Library Name Cell Properties
Name
Lab_Experiments R- Symbol
2R_DAC
analogLib Vpulse For v0:v1=0 v2=2 pulse width=5n period=10n
For v1:v1=0 v2=2 pulse width=10n period=20n
For v2:v1=0 v2=2 pulse width=20n period=40n
For v3:v1=0 v2=2 pulse width=40n period=80n
analogLib gnd Symbol
After entering components, click cancel in the Add Instance fomm or press Esc with your
cursor in the schematic window
Add the wire and complete the schematic as shown below
DEPT.OF ECE, JSSATE, BENGALURU-60 VLSI LAB MANUAL (15ECL77) Page 101
Click check and save
Analog Simulation
In the R-2R_DAC _test schematic window execute Tools-Analog Environment and the
window appears as shown
STEP 2: Choosing Analyses
In the simulation window execute Analyses-Choose. The choosing analysis form appears.
To setup transient analysis
In the Analysis section, select tran
Set the stop time as 300n
Click moderate and enable botton and click apply.
STEP 3: Selecting outputs for plotting
DEPT.OF ECE, JSSATE, BENGALURU-60 VLSI LAB MANUAL (15ECL77) Page 102
STEP 4: Running the simulation
Execute Simulation-Netlist and run in the simulation window to start the simulation.
When simulation finishes, the transient, DC plots will automatically will be popped up as shown
From the R-2R_DAC schematic window menu, execute Tools-Design Synthesis –LayoutXL
Select Create New option. This gives a new cell view form.
Check the cellname(R-2R_DAC), viewname (layout) and tool (Virtuoso) and then click ok. The
blank layout window appears
STEP 2: Adding components to the layout
Execute Design –Gen From Source in the layout editor window which imports the basic
components into the layout window automatically.
Press Shift-f to view the geometry of the design
Re-arrange the components within PR boundary
To rotate and move the components execute Edit-Properties and Edit-Mpve commands.
DEPT.OF ECE, JSSATE, BENGALURU-60 VLSI LAB MANUAL (15ECL77) Page 103
STEP 3: Making Interconnection
Physical Verification
Select Assura –Run DRC from layout window. The DRC form appears as shown. Select the
technology as gpdk180. This automatically loads the rule file.
Click OK to start DRC.
When DRC finishes, a dialog box appears, asking you if you want to view your DRC results and then
click yes.
If there are any DRC error in the design, view layer vindow(VLW) and error layer window(ELW)
apppers.
Click view –summary in the ELW to find the details of errors.
If there are no errors in the layout, then an dialog box appears with no DRC errors. Click close.
STEP 2: Running Assura LVS
Select Assura-Run LVS form the layout window and the window appears as shown.
Change the following in the form and click ok as shown and the LVS begins
DEPT.OF ECE, JSSATE, BENGALURU-60 VLSI LAB MANUAL (15ECL77) Page 104
If the schematic and layout match, a form informs that the LVS completed successfully and asks if
you want to see the results of this run. Click yes in the form.
If the schematic and layout do not match, a LVS debug form appears and you are directed into LVS
debug environment.
STEP 3: Running Assura RCX
Select Assura-Run RCX form the layout window and the window appears as shown.
Change the following in the form and click ok as shown
In the filtering tab of the form, enter the power nets as vdd!,vss! And then click ok.
A form informs that the RCX completed successfully
You can open av_extracted view form CIW window and view the parasitics.
DEPT.OF ECE, JSSATE, BENGALURU-60 VLSI LAB MANUAL (15ECL77) Page 105
VLSI LAB VIVA QUESTION:
1. What do you mean by simulation?
2. What is synthesis?
3. What is a test bench?
4. What is the need for test bench?
5. Which is the simulator used ?
6. Explain ASIC flow.
7. What do u mean by ncelab?
8. What is the significance of initial statement?
9. What is the function of $display, $stop, $finish.
10. What if the $finish is not used in test bench? Justify
11. What do you mean by mirror circuits?
12. What do you mean by threshold voltage?
13. What do you mean by DAC? Is there difference between DAC and R2R-DAC. Justify.
14. What do you mean by transient analysis?
15. What do you mean by DC analysis?
16. What do you mean by AC analysis?
17. How do you convert a XOR gate into a buffer and a inverter (Use only one XOR gate foreach)
18. What is a ring counter?
19. Compare and Contrast Synchronous and Asynchronous reset.
20. What is a Johnson counter?
21. How can you convert a JK flip-flop to a D flip-flop?
22. What is the difference between Mealy and Moore FSM?
23. Define Clock Skew , Negative Clock Skew, Positive Clock Skew.
24. Design a Transmission Gate based XOR.
25. Define Metastability.
26. What are set up time and hold time constraints?
27. Explain different types of adder circuits
28. Give the excitation table of a JK flip-flop.
29. Expand the following: PLA, PAL, CPLD, FPGA.
30. What are PLA and PAL? Give the differences between them
31. What is LUT?
32. . What is the significance of FPGAs in modern day electronics?
33. What are the differences between CPLD and FPGA.
34. Compare and contrast FPGA and ASIC digital designing.
35. What is DeMorgans theorem?
DEPT.OF ECE, JSSATE, BENGALURU-60 VLSI LAB MANUAL (15ECL77) Page 106