• 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 Design
  3. spectre: Parameters in .Alter Statement Not effecting Digital...

Stats

  • Locked Locked
  • Replies 4
  • Subscribers 125
  • Views 17359
  • 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

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

Eberhard2010
Eberhard2010 over 13 years ago

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

  • Cancel
Parents
  • Eberhard2010
    Eberhard2010 over 13 years ago

     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

     

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
Reply
  • Eberhard2010
    Eberhard2010 over 13 years ago

     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

     

    • 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