• 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. readforce does not work in DC simulation

Stats

  • Locked Locked
  • Replies 6
  • Subscribers 125
  • Views 19131
  • 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

readforce does not work in DC simulation

Qilong
Qilong over 8 years ago

Hi all, 

    Recently I am trying to play with the readforce in DC simulation. My test circuit is a series RC network (R=1 Ohm, C=1pf both from analogLib), with the two terminals connected to gnd. No sources are used. Then I specified the voltage value on the floating plate of the capacitor in a file (with only one line in it: net_flaoting 1). Then I use readforce to read this file in DC simulation, with any other parameters like force, readns empty.  

    From the descriptions in the spectre simulator user guide and the reference, I am expecting a voltage of 0.5V on the floating plate of the cap after the DC run (I used rforce=1 Ohm). However only 0V is shown. On the other hand, if I specified initial state in the cap and use force=dev, the desired 0.5V will be calculated. Comparing this two cases, could I ask why the simulator does not use the statement I wrote in the file? 

    PS: As a crosscheck, I used the same file in a transient simulation with the same network by setting readic=filename.  Then I can see the initial state is calculated quite well. The floating node starts to settle down from the initial voltage of 0.5V (again rforece=1 Ohm), which seems the file is recognisable by spectre.   

  • Cancel
Parents
  • Qilong
    Qilong over 8 years ago
    Hi Andrew,

    Here I have another question related to the priority of ic, skipdc, readic,readns in the transient options. My questions starts from the check of Parameter "icpriority" explained in the user guide and the reference.

    I used the same circuit as before. And I assigned the initial state of the capacitor in two ways at the same time, one by specifying ic in the device CDF, the other by assigning node voltage with readic="file.in". Meanwhile I leave other transient parameters empty (ic=all by default, skipdc and readns empty). Then I found the value in "file.in" was used and the CDF parameter was ignored. However, in the reference it says the icpriority is set to "netlist" by default in Spectre 15.1, which means the value in the ic statement in the netlist (CDF ic) should override that in the readic file. So there seems a contradiction, doesn't it?

    Another experiment I did is to check what "icpriority" means. I built two identical RC circuit, and assigned the two capacitors' initial values in two ways as above, but separately. Again leaving other transient parameters empty, I found both initial conditions are used correctly. But it seems to be contradictory with the statement of "icpriority" in the user guide(under Subsection "setting ic priority oreder"):

    "By default, if you specify an initial condition file with the readic parameter, initial conditions from the file are used, and the ic statements specified in the netlist are ignored. "

    Combining with the two effects shown above, does it mean that the overriding mechanism only function when there are contradictory ic statements at the same node, between netlist and readic? Or does ic=all by default change the priority internally?

    Furthermore, is there any priority table that can used to check the order of use between ic, skipdc, readic and readns?

    Sorry for my tedious questions. After using spectre for some time, I really want to make clear about every option instead of leaving them empty blindly. Many thanks ahead.


    Best regards,
    Qilong
    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
Reply
  • Qilong
    Qilong over 8 years ago
    Hi Andrew,

    Here I have another question related to the priority of ic, skipdc, readic,readns in the transient options. My questions starts from the check of Parameter "icpriority" explained in the user guide and the reference.

    I used the same circuit as before. And I assigned the initial state of the capacitor in two ways at the same time, one by specifying ic in the device CDF, the other by assigning node voltage with readic="file.in". Meanwhile I leave other transient parameters empty (ic=all by default, skipdc and readns empty). Then I found the value in "file.in" was used and the CDF parameter was ignored. However, in the reference it says the icpriority is set to "netlist" by default in Spectre 15.1, which means the value in the ic statement in the netlist (CDF ic) should override that in the readic file. So there seems a contradiction, doesn't it?

    Another experiment I did is to check what "icpriority" means. I built two identical RC circuit, and assigned the two capacitors' initial values in two ways as above, but separately. Again leaving other transient parameters empty, I found both initial conditions are used correctly. But it seems to be contradictory with the statement of "icpriority" in the user guide(under Subsection "setting ic priority oreder"):

    "By default, if you specify an initial condition file with the readic parameter, initial conditions from the file are used, and the ic statements specified in the netlist are ignored. "

    Combining with the two effects shown above, does it mean that the overriding mechanism only function when there are contradictory ic statements at the same node, between netlist and readic? Or does ic=all by default change the priority internally?

    Furthermore, is there any priority table that can used to check the order of use between ic, skipdc, readic and readns?

    Sorry for my tedious questions. After using spectre for some time, I really want to make clear about every option instead of leaving them empty blindly. Many thanks ahead.


    Best regards,
    Qilong
    • 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