• 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. Time Variable Resistor

Stats

  • Locked Locked
  • Replies 7
  • Subscribers 126
  • Views 21918
  • 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

Time Variable Resistor

Ahmed Taha
Ahmed Taha over 9 years ago

Hi,

I have RC network, and I am running transient simulation. I would like to have one of network's resistors value to change over time.

I have input signal array to the network (Volts vs. time) and a corresponding resistor array values over time (ohm vs. time)

Is it possible to create such resistor with its value defined by that array of data over time in Cadence, Spectre?

Thanks.

  • Cancel
Parents
  • MonEcran
    MonEcran over 9 years ago

    Hi Andrew,

    Thank you for the reply.

    Here is the tool version:

    mmsim/15/15.10.385

    ic/IC617/IC_617_702

    Here is the netlist:

    // Generated for: spectre
    // Generated on: May 18 09:15:47 2016
    // Design library name: scratch
    // Design cell name: tb_nb_test_vpwl
    // Design view name: schematic
    simulator lang=spectre
    global 0
    parameters iload_high_val=1m vout_val=3.3
    include "$PDKROOT/xh035/cadence/v6_0/spectre/v6_0_3/mos/top.scs" section=all_typical

    // Library name: scratch
    // Cell name: tb_nb_test_vpwl
    // View name: schematic
    source_iload_tran (net2 vss) vsource dc=vout_val/iload_high_val type=pwl \
    pwlfilter=none wave=[ 0 (vout_val/1u) 5m (vout_val/1u) 5.001m \
    (vout_val/50m) 10m (vout_val/50m) 10.001m (vout_val/100m) 15m \
    (vout_val/100m) 15.001m (vout_val/50m) 20m (vout_val/50m) 20.001m \
    (vout_val/1u) 25m (vout_val/1u) 32.5m (vout_val/100m) 40m \
    (vout_val/1u) 45m (vout_val/1u) 45.001m (vout_val/100m) 50m \
    (vout_val/100m) 50.001m (vout_val/1u) ]
    V0 (net05 vss) vsource dc=vout_val type=dc
    source_vss (vss 0) vsource dc=0 type=dc
    G0 (net05 vss net2 vss) vccs gm=1.0 type=vcr
    simulatorOptions options reltol=1e-3 vabstol=1e-6 iabstol=1e-12 temp=27 \
    tnom=27 scalem=1.0 scale=1.0 gmin=1e-12 rforce=1 maxnotes=5 maxwarns=5 \
    digits=5 cols=80 pivrel=1e-3 sensfile="../psf/sens.output" \
    checklimitdest=psf
    tran tran stop=55m write="spectre.ic" writefinal="spectre.fc" \
    annotate=status 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
    saveOptions options save=allpub

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
Reply
  • MonEcran
    MonEcran over 9 years ago

    Hi Andrew,

    Thank you for the reply.

    Here is the tool version:

    mmsim/15/15.10.385

    ic/IC617/IC_617_702

    Here is the netlist:

    // Generated for: spectre
    // Generated on: May 18 09:15:47 2016
    // Design library name: scratch
    // Design cell name: tb_nb_test_vpwl
    // Design view name: schematic
    simulator lang=spectre
    global 0
    parameters iload_high_val=1m vout_val=3.3
    include "$PDKROOT/xh035/cadence/v6_0/spectre/v6_0_3/mos/top.scs" section=all_typical

    // Library name: scratch
    // Cell name: tb_nb_test_vpwl
    // View name: schematic
    source_iload_tran (net2 vss) vsource dc=vout_val/iload_high_val type=pwl \
    pwlfilter=none wave=[ 0 (vout_val/1u) 5m (vout_val/1u) 5.001m \
    (vout_val/50m) 10m (vout_val/50m) 10.001m (vout_val/100m) 15m \
    (vout_val/100m) 15.001m (vout_val/50m) 20m (vout_val/50m) 20.001m \
    (vout_val/1u) 25m (vout_val/1u) 32.5m (vout_val/100m) 40m \
    (vout_val/1u) 45m (vout_val/1u) 45.001m (vout_val/100m) 50m \
    (vout_val/100m) 50.001m (vout_val/1u) ]
    V0 (net05 vss) vsource dc=vout_val type=dc
    source_vss (vss 0) vsource dc=0 type=dc
    G0 (net05 vss net2 vss) vccs gm=1.0 type=vcr
    simulatorOptions options reltol=1e-3 vabstol=1e-6 iabstol=1e-12 temp=27 \
    tnom=27 scalem=1.0 scale=1.0 gmin=1e-12 rforce=1 maxnotes=5 maxwarns=5 \
    digits=5 cols=80 pivrel=1e-3 sensfile="../psf/sens.output" \
    checklimitdest=psf
    tran tran stop=55m write="spectre.ic" writefinal="spectre.fc" \
    annotate=status 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
    saveOptions options save=allpub

    • 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