Home > Community > Forums > Custom IC Design > spectre: Parameters in .Alter Statement Not effecting Digital Vector File Stimuli

Email

* Required Fields

Recipients email * (separate multiple addresses with commas)

Your name *

Your email *

Message *

Contact Us

* Required Fields
First Name *

Last Name *

Email *

Company / Institution *

Comments: *

 spectre: Parameters in .Alter Statement Not effecting Digital Vector File Stimuli 

Last post Tue, Jul 24 2012 5:10 AM by Andrew Beckett. 4 replies.
Started by Eberhard2010 19 Jul 2012 09:46 AM. Topic has 4 replies.
Page 1 of 1 (5 items)
Sort Posts:
  • Thu, Jul 19 2012 9:46 AM

    • Eberhard2010
    • Not Ranked
    • Joined on Tue, Apr 10 2012
    • Karlsruhe, Baden-Wurttemberg
    • Posts 7
    • Points 110
    spectre: Parameters in .Alter Statement Not effecting Digital Vector File Stimuli Reply

    Hallo guys,

    i've a common netlist (see below). It uses .ALTER (spice) statement and digital vector file input (stimuli). This is because alter or altergroup in spectre syntax does not work anyway.

     <<<<<<<<<<<<<

    simulator lang=spectre
      finalTimeOP info what=oppoint where=rawfile
      modelParameter info what=models where=rawfile
      element info what=inst where=rawfile
      outputParameter info what=output where=rawfile
      designParamVals info what=parameters where=rawfile
      primitives info what=primitives where=rawfile
      subckts info what=subckts where=rawfile
      saveOptions options save=allpub

    vec_include "../circuit_stimuli/Stimuli_102.vec" hlcheck=0

    *Input Stimuli-File
    parameters Supply_vec=5 \
                slope_vec=0.05 \
                 zero_vec=0 \
                  vth_vec=2.5

     *Main Netlist
    X1 (vecIN1 vecIN2 QN VDD GND) NAND2X1
    Cload (QN0 0) capacitor c=1e-12

    GND_source (GND 0) vsource dc=0 type=dc
    VDD_source (VDD 0) vsource dc=5 type=dc

    *Analysis
    tran0 tran stop=1us

    simulator lang=spice

    .ALTER myalt
      .param slope_vec=0.01
    .END

    <<<<<<<<<<<<<<<<<<<<<<<<<<<<<

    The parameters below "Input Stimuli File" are used in the *.vec file. The first (initial ones) are working fine. Now, the alter Statement changes these design variables correctly. However it seems to have no effect on the generated stimuli for the next run. Is there a way to tell spectre to "regenerate stimuli" after design Variables are changed? Or how should I rewrite it?

    I got one situation in which it runs correctly, so there is a solution out there. Now i try to reveal it again.

    Thanks for your help in advance.

     Regards Eberhard

    • Post Points: 5
  • Mon, Jul 23 2012 7:30 AM

    • Eberhard2010
    • Not Ranked
    • Joined on Tue, Apr 10 2012
    • Karlsruhe, Baden-Wurttemberg
    • Posts 7
    • Points 110
    Re: spectre: Parameters in .Alter Statement Not effecting Digital Vector File Stimuli Reply

    Cadence (R) Virtuoso (R) Spectre (R) Circuit Simulator
    Version 10.1.1.200.isr13 64bit -- 15 Aug 2011


    Dear Cadence-Users,

    i just want to give you an update of the recent tries I ve done so far:

    1) The sweep analysis in Spectre gives me an Error:

     /Software/cadence/MMSIM/10.11/tools/bin/spectre[528]: wait: 5110: Abort(coredump)

    Regardsless of which parameter I vary :-) To get this error, replace all below *Analysis with the following

     <<<<<<<<<<<<<<<<<

    *Analysis

    sweep0 sweep parameter=slope_vec values=[0.001 0.005] {

    tran0 tran stop=1us

    }

    >>>>>>>>>>>>>>>>>

     Can somebody please tell me, how to get spectre to respect parameter sweeps on VEC-Files?

    Thanks for reading and your help.

     

    Regards Eberhard

     

     

     

    • Post Points: 20
  • Mon, Jul 23 2012 8:47 AM

    Re: spectre: Parameters in .Alter Statement Not effecting Digital Vector File Stimuli Reply

    Eberhard,

    You'll need to contact customer support. I just tried this, and I don't get the crash (I'm using a newer version than you either  10.1.1.428.isr24 or 11.1.0.467.isr12) - note I changed the parameter=slope_vec to param=slope_vec (or similar) - the keyword for the sweep statement is param not parameter.

    Regardless of this, it doesn't work - the change in the parameter (either via alter or sweep) doesn't affect the vector read. I'd expect that if it worked for alter, it would also work for sweep (and also if it doesn't work for alter, it also wouldn't work for sweep).

    So you need to log a service request so that we can get this fixed.

    Kind Regards,

    Andrew.

    • Post Points: 20
  • Tue, Jul 24 2012 2:09 AM

    • Eberhard2010
    • Not Ranked
    • Joined on Tue, Apr 10 2012
    • Karlsruhe, Baden-Wurttemberg
    • Posts 7
    • Points 110
    Re: spectre: Parameters in .Alter Statement Not effecting Digital Vector File Stimuli Reply

     Dear Andrew,

    thx for your reply. Sure it's param :-). I'll report to customer support; tell them that parameters in VEC Files are not working. Thanks for your help. 

    Meanwhile I've done something like this with OCEAN: 

    <<<<<<<<<<<<<<<<<<<<<<<<<

    ;============SIM SETUP ====================
    simulator( 'spectre)
    design("./netlist/netlist")
    resultsDir("./results00")

    ;==========DESIGN SETUP ====================
    ;Take Stimuli
    vecFile("../../circuit_stimuli/Stimuli_102.vec")
    hlcheck( "0" )

    ;Input Stimuli-File
    desVar("Supply_vec" 5)
    desVar("slope_vec" 0.05)
    desVar("zero_vec" 0)
    desVar("vth_vec" 2.5)

    ;Circuit Dimensions
    desVar("C_load" 1e-12)
    desVar("unit_vec" 1e-9)
    desVar("tran_tend" 1e-06)

    ;Save statements
    ;save('all)

    ;=========== ANALYSIS setup ==============

    analysis('tran ?start 0 ?stop "tran_tend")

    ;Creates input.scs
    createNetlist()


    ;1st Run
    run()

    ;2nd Run
    resultsDir("./results01")
    desVar("slope_vec" 0.01)
    run()

    exit()
    >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

    But it does not. Leaving out "2nd Run", it's working perfectly. Maybe I can dig out why :-)
    OcnXL-Mode would be an other option for sweeping parameters, however it relies on ocnxlTargetCellView to create an OceanXL Session Object. I ve my cells just as netlist.scs and my circuits as circuit.scs, no stuff in OA Database :-)

    Once the above sample is working, I think about hacking the stuff to OA Database in order to use OCEANXL :-)

    Regards Eberhard

     

    • Post Points: 20
  • Tue, Jul 24 2012 5:10 AM

    Re: spectre: Parameters in .Alter Statement Not effecting Digital Vector File Stimuli Reply

     Add envOption('controlMode "batch") into your script (after the simulator('spectre) line).

    The default is for spectre to run in "interactive" mode - and a parameter change will be passed to spectre in memory without it exiting and restarting - and hence the behaviour is dependent upon spectre honouring a parameter change in memory (so like  an alter or a sweep). In "batch" mode, spectre exits between each run - so that should work.

    Andrew.

    • Post Points: 5
Page 1 of 1 (5 items)
Sort Posts:
Started by Eberhard2010 at 19 Jul 2012 09:46 AM. Topic has 4 replies.