• Skip to main content
  • Skip to search
  • Skip to footer
Cadence Home
  • This search text may be transcribed, used, stored, or accessed by our third-party service providers per our Cookie Policy and Privacy Policy.

  1. Community Forums
  2. Custom IC SKILL
  3. integration operation and delay operation with spectre input...

Stats

  • Locked Locked
  • Replies 1
  • Subscribers 143
  • Views 15137
  • Members are here 0
This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

integration operation and delay operation with spectre input.scs simulation

samung
samung over 11 years ago

Hello !!

I would like to launch from a batch simulation through spectre, a transient simulation and to do an integration of the voltage and current curves to get the consumed power.

I have not managed yet to find the syntaxe for the "integration operation". Plus I would like to get the syntaxe for a "delay operation".

 

Extract of the input.scs :

tran tran stop=6.6nn write="spectre.ic" writefinal="spectre.fc"  annotate=status save=selected maxiters=5 

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

save vinput vss net_pl device_state vdd Rdevice:1

export power_dyn_consumed = int((i("Rdevice:1") * v("vinput")) 2n 4.6n)

saveOptions options save=selected subcktprobelvl=2 

 

 

for the delay, it should be something like :

delay_writing = delay(?wf1 v("vinput" ?result "tran") ?value1 0.5 ?edge1 "rising" ?nth1 1 ?td1 0.0 ?wf2 v("device_state" ?result "tran") ?value2 0.5 ?edge2 "rising" ?nth2 1 ?td2 0.0 ?stop nil ?multiple nil)

 

 

Commandline :

spectre /home/.../simulations/FF_svtsvt_1V_0C/TC_TR/1_0.04//input.scs +log /home/.../simulations/FF_svtsvt_1V_0C/TC_TR/1_0.04//log_file.log

 

 spectre -W

sub-version  10.1.1.181.isr12 

 

 

Thanks a lot !! 

  • Cancel
Parents
  • Andrew Beckett
    Andrew Beckett over 11 years ago

    The export statement in the netlist is:

    1. For internal use only - it's supported with ADE (if you see "spectre -h export" you'll see this).
    2. For monte carlo only. It doesn't work for other kinds of analysis. 

    If you want to do this from batch, the right way is to create an MDL script. For example:

    alias measurement doInteg {
     run tran
     export real power_dyn_consumed=integ(trim(i(Rdevice:1)*v(vinput),from=2n,to=4.6n))
    }

    run doInteg

    Put this in a file called "doInteg.mdl" and then you can do:

    spectremdl -design input.scs -batch doInteg.mdl

    and you will then get a file called (by default) doInteg.measure containing the measurement results in.

    The syntax of spectre's Measurement Description Language is covered in the documentation. You can also use "viva -expr MDL" or vivamdl (in IC616) to bring up the MDL calculator to build expressions that way.

    Regards,

    Andrew.

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
Reply
  • Andrew Beckett
    Andrew Beckett over 11 years ago

    The export statement in the netlist is:

    1. For internal use only - it's supported with ADE (if you see "spectre -h export" you'll see this).
    2. For monte carlo only. It doesn't work for other kinds of analysis. 

    If you want to do this from batch, the right way is to create an MDL script. For example:

    alias measurement doInteg {
     run tran
     export real power_dyn_consumed=integ(trim(i(Rdevice:1)*v(vinput),from=2n,to=4.6n))
    }

    run doInteg

    Put this in a file called "doInteg.mdl" and then you can do:

    spectremdl -design input.scs -batch doInteg.mdl

    and you will then get a file called (by default) doInteg.measure containing the measurement results in.

    The syntax of spectre's Measurement Description Language is covered in the documentation. You can also use "viva -expr MDL" or vivamdl (in IC616) to bring up the MDL calculator to build expressions that way.

    Regards,

    Andrew.

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
Children
No Data

Community Guidelines

The Cadence Design Communities support Cadence users and technologists interacting to exchange ideas, news, technical information, and best practices to solve problems and get the most from Cadence technology. The community is open to everyone, and to provide the most value, we require participants to follow our Community Guidelines that facilitate a quality exchange of ideas and information. By accessing, contributing, using or downloading any materials from the site, you agree to be bound by the full Community Guidelines.

© 2025 Cadence Design Systems, Inc. All Rights Reserved.

  • Terms of Use
  • Privacy
  • Cookie Policy
  • US Trademarks
  • Do Not Sell or Share My Personal Information