Many users ask, "How do I instantiate a netlist into my schematic and simulate with spectre in ADE?"
To instantiate a subcircuit (netlist) in your schematic and simulate with spectre in ADE you need to create a cell with a CDF parameter 'model' which will point to the text subcircuit that you want to use for simulating. Here is the recipe:
Create a symbol view for the text subcircuit.
Make a copy of this symbol view and call the new view "spectre."
Open the base CDF for the cell, add a component parameter called "model."
In the Add CDF Parameter form, specify only these values in order:
This parameter holds the name of the subcircuit file to use during simulation for this cell.
Edit the simInfo section of the netlist for the spectre simulator (assuming you will simulate in spectre)
You must modify the simulation information to recognize the model property and support the parameters passed into the subcircuit file.
For example, in the Simulation Information section of the form, click Edit.
Update the following fields in this order (insert your own name for myParameters if you have instance parameters and insert your own terminal names for termOrder):
Choose Simulator: spectre
componentName: (leave blank)
termOrder: "input1" "input2" "output"
You also need to define your terminals (termOrder).
Instantiate the created symbol in a schematic and give the name of the subcircuit as the model name.
Then in ADE, provide the path to the file containing the text description of the subcircuit (i.e. the netlist) through Setup -> Model Libraries.
Note: if the netlist is in spice syntax, at the top of the file you should add the following statement:
For more information, similar tips, and design topics, please visit sourcelink.cadence.com.
Hi Erik, You may want to create a Case with http://support.cadence.com . You not only are trying to instantiate a netlist/subckt into a schematic (which is what the original blog post was about), but you have monte carlo and ADE XL on top of it (complicating the matter).
Did anyone manage to get this running in ADEXL? Trying to do Monte Carlo on an extracted netlist here and i cannot get nestlisting to work in ADEXL, only works in ADE.
Hi Mark, One more thing.... In the Cadence Online Support Solution, I have mentioned SpiceIn. See Article 11557304 at support.cadence.com/.../cos --best regards, Tawna
Hi Mark, spicein is also an option. Please see the Article on Cadence Online Support: Looking for an Example of Using SpiceIn to Import a Spectre Netlist. support.cadence.com/.../cos Best regards, Tawna
How about using spicein ? From CIW: file...import...Spice . Read document on how to import. It also makes a schematic from the netlist, which can be handy sometimes.
In the prompt, should i have to mention a text as "Model Name" ??
You may want to contact Cadence Customer Support http://support.cadence.com .
An application engineer will be able to troubleshoot and assist you. (Sorry, I can't do it right now.)
Yes, copy the symbol view to the new name "spectre" once the symbol view has been modified.
This works nicely in IC6 with ADE for me; while adding a rational model *.cir spectre file in the model list and running it from config view (the symbol points to spectre view). Thank you. However, when I create an ADEXL bench of the same circuit schematic/config and load the previous ADE test-bench it does not simulate, I get an error with the netlist, the netlist is not produced. But if I open a Debug Environment from the failed result list in ADEXL then the circuit does run and plot. What am I missing here; bug or different flow for ADEXL? -Nick
I believe a correction is needed on this article. Copying the symbol view with the new name "spectre"must be done at the end when the symbol view has been already modified. Otherwise, the proposed solution doesn't work.
I'm glad that you were able to have your local AE file an enhancement request for you! In the future, you may file a Service Request for an enhancement request (CCR) using our interface at sourcelink.cadence.com .
In the meantime, my local AE has filed CCR 631521 for me on this.
Thanks for your hints, Tawna. It would be really nice if a component similar to the myparsubckt described in the Cadence Solution you mentioned were a standard component in analogLib so that one does not have to load it each time one starts a session. Could you possibly file a CCR to that effect?
Thank you for your comment, Frank!
The scasubckt component in analogLib was part of the SCA and RFIC Package Modeler tool flow which was "End of Life" several years ago. As such, scasubckt was removed from analogLib in IC6.1 .
There is a sourcelink.cadence.com solution 11013814: "How to create parameterized symbol for external subckt" which you may find useful. Sourcelink users may access this information by clicking on the link below.
A method that I find more convenient uses the scasubckt component and is described at www.designers-guide.org/.../YaBB.pl.