

How to use skywater 130nm technology file in eSim simulations? Can any one give the procedure to add the skywater130nm technology files in the NGspice simulations?
eSim


Follow these steps:
Step 1.Please download sky130 from this link and unzip : https://static.fossee.in/esim/installation-files/sky130_fd_pr.zip
Step2.Save the.cir.outfile in the sky_fd_pr folder as.cir file.
Step3.Open with notepad and add the path .lib "models/sky130.lib.spice" tt at the top.
Step4.Replace with CMOSP, mos_p with sky130_fd_pr__pfet_01v8andCMOSN, mos_n with sky130_fd_pr__nfet_01v8.
Step5.To replace inductor, capacitor, resistor do it this way for example: L1 out gnd 1m by x1 out gnd mid 0 sky130_fd_pr__ind_03_90.
Note:For more details go to the cells folder in sky_fd_pr. Open the specific component folder which you want to use. Then open the test folder and check the SPICEfile. TheSPICEfile is an example of implementation of that component. You will get to know how to use the component in your ckt.
Step6.Now Run the ckt with ngspice
To Run the ckt using ngspice:
Step 1. Right click on.cir file.
Step 2. Click on Open With
Step 3. Browse for the ngspice.
Step 4. If ngspice not present scroll down click onMore Apps.
Step 5.Go to the FOSSEE folder search for Ngspice. Run it Example of sky130 .cir file(the changes are in bold):
* c:\fossee\esim\src\frontend\document\cmos_nand_gate\cmos_nand_gate.cir.lib "models/sky130.lib.spice" ttxM1 net-_m1-pad1_ inputa output net-_m1-pad1_ sky130_fd_pr__pfet_01v8 W=2.5u L=0.5u M=1
xm4 net-_m1-pad1_ inputb output net-_m1-pad1_ sky130_fd_pr__pfet_01v8 W=2.5u L=0.5u M=1
xm2 output inputa net-_m2-pad3_ gnd sky130_fd_pr__nfet_01v8W=1u L=0.5u M=1
xm3 net-_m2-pad3_ inputb gnd gnd sky130_fd_pr__nfet_01v8 W=1u L=0.5u M=1
v3 net-_m1-pad1_ gnd dc 5
v1 inputa gnd pulse(0 5 0 0 0 17m 33m)
v2 inputb gnd pulse(0 5 0 0 0 10m 20m)
.tran 0.1e-03 100e-03 0e-03* Control Statements
.control
run
plot v(output)
plot v(inputb)
plot v(inputa)
.endc
.end
Oringinal File(using eSim mofets): * c:\fossee\esim\src\frontend\document\cmos_nand_gate\cmos_nand_gate.cir .include NMOS-180nm.lib
.include PMOS-180nm.lib
m1 net-_m1-pad1_ inputa output net-_m1-pad1_ CMOSP W=100u L=100u M=1
m4 net-_m1-pad1_ inputb output net-_m1-pad1_ CMOSP W=100u L=100u M=1
m2 output inputa net-_m2-pad3_ gnd CMOSN W=100u L=100u M=1
m3 net-_m2-pad3_ inputb gnd gnd CMOSN W=100u L=100u M=1
v3 net-_m1-pad1_ gnd dc 5
v1 inputa gnd pulse(0 5 0 0 0 17m 33m)
v2 inputb gnd pulse(0 5 0 0 0 10m 20m)
* u3 output plot_v1
* u2 inputb plot_v1
* u1 inputa plot_v1
.dc v1 1e-00 5e-00 1e-00 v2 1e-00 5e-00 1e-00 * Control Statements
.control
run
print allv > plot_data_v.txt
print alli > plot_data_i.txt
plot v(output)
plot v(inputb)
plot v(inputa)
.endc
.end



Dear Raunak,
Please remove "u" from the values of w and l and try again.
Regards,
Sumanto
Sir Still I'm getting same error as previous one. I also tried by removing subcircuit but didn't work.
Dear Raunak,
Kindly remove all the values and try simulation. For refer to these circuits: Completed Circuits | eSim (fossee.in)
Regards,
Sumanto
Sir I'm got result when I removed the width and length values. One more confusion is , is it correct waveform that I got without L and W .
Certain ranges of W and L are only allowed. Kindly see the documentation of Sky130 pdk and according give values of W and L:Welcome to SkyWater SKY130 PDK’s documentation! — SkyWater SKY130 PDK 0.0.0-308-gdb2e067 documentation (skywater-pdk.readthedocs.io)
Login to add comment












Login to add comment