simulating circuits from different technologies when there are library name collisions in addition to model name collisions.
Steps:
- create netlist (try.scs) with subckt definition in another technology(A):
example:
simulator lang=spectre
// Library name: tcb013ghphvt
// Cell name: INVHVTD0
// View name: av_extracted_c
subckt tsmc13_inv I VDD VSS ZN
avD1015_1 (ZN I VSS VSS) nch_hvt w=4.3e-07 l=1.3e-07 as=0.2897p \
ad=0.1462p ps=3.06u pd=1.54u sa=2.4e-07 sb=3.4e-07 nrd=0.790698 \
nrs=1.56679 m=(1)*(1)
avD1323_1 (ZN I VDD VDD) pch_hvt w=6.35e-07 l=1.3e-07 as=0.4004p \
ad=0.2159p ps=3.88u pd=1.95u sa=2.4e-07 sb=3.4e-07 nrd=0.535433 \
nrs=0.992994 m=(1)*(1)
c1 (I VDD) capacitor c=8.303e-17
c2 (ZN VDD) capacitor c=3.085e-17
c3 (I ZN) capacitor c=1.379e-16
c4 (I VSS) capacitor c=1.048e-16
c5 (ZN VSS) capacitor c=3.629e-17
ends tsmc13_inv
// End of subcircuit definition.
2. create an include file(include.scs) including model files and netlist,
example:
include "./tsmc13.scs" section=skew10
include "./tsmc13.scs" section=all_tt
include "./try.scs"
3. create both schematic and symbol wrapper for the circuit in technology A, and instantiate the symbol under testbench in technology B
4. in ADE L, setup->Environment, add +mts in userCmdLineOption(still works
without this step)
5. simulation->netlist->recreate
6. goto the netlist directory, add the include file under the subckt
definition in technology A
example:
// Library name: rz_tmp
// Cell name: tsmc13_test
// View name: schematic
subckt tsmc13_test ZN I VDD VSS
include "include.scs"
I0 (I VDD VSS ZN) tsmc13_inv
ends tsmc13_test
// End of subcircuit definition.
7. under netlist directory, run simulation:nc run -D -C mmsim_m -J MTS ./runSimulation
or hit run in GUI without renetlist.
hi,
ReplyDeleteI am working on a simulation where i need to plot curves from different technologies. I need a reference of your observation and I couldn't find much in the internet. Can you help me with a reference material or tutorial using 'Multi technology support' ?