Kalimero
New Member
Offline
Posts: 9
|
I am at the end of my wits. After almost 30+ hours of messing around with this I’ve given up so I’m here to ask for help. I am using Spectre simulator on Cadence IC5141 and I want to include several behavioral components (Voltage source, Current Source, Resistor, Capacitor) in my design.
Implementation constraints: 1) Avoid using Verilog A modules 2) Avoid direct modification of netlist if at all possible
There was a post on Cadence community forum where someone had solved this problem by creating a bsource that could be instantiated in a schematic – the CDF parameter (v, I, r or c) could then be set to any value or expression, including “simple v(path.to.internal.net)”. In an attempt to follow suit, I created a symbol (Spectre view) for a behavioral resistor subckt that I have pasted below..
Subckt b_r (PLUS MINUS) Parameter r = 10 R1(PLUS MINUS) bsource r=r Ends b_r
I have followed all the correct steps in creating a symbol for this subckt as outlined by Andrew Beckett in a previous post. The instance of the b_r subckt that I include in my schematics netlists as
I1 (vdd! net019) b_r r = <my expression>
the expression which i enter directly on the instance (object property)
However if the expression is a function of a net voltage such as:
r = v(19,0)*1000
It is mis-evaluated, for any and every net on my schematics. The voltage that the probe v(n1, n2) reads is some infinitely small number ( ..E-317 ). I am thinking it is the number stated Under element info, instance name, bs_par_0 (behavioral source Parameter 0 ?? maybe) .. in the result browser. I know IC 5141 version supports bsource, and I know that bsource can use voltage probe v(n1, n2) .. but it is not working for me .. any suggestions is greatly appreciated.
|