Tuesday, February 4, 2014

Cadence MTS(Multi-Technology Simulation) Under ADE-L

Goal:
simulating circuits from different technologies when there are library name collisions in addition to model name collisions.

Steps:

  1. 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.

1 comment:

  1. hi,
    I 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' ?

    ReplyDelete