Continue to Site

Welcome to EDAboard.com

Welcome to our site! EDAboard.com is an international Electronics Discussion Forum focused on EDA software, circuits, schematics, books, theory, papers, asic, pld, 8051, DSP, Network, RF, Analog Design, PCB, Service Manuals... and a whole lot more! To participate you need to register. Registration is free. Click here to register now.

how to write a behaviour level voltage source in spectre ?

Status
Not open for further replies.

zhonghan

Junior Member level 3
Joined
Jan 8, 2007
Messages
26
Helped
0
Reputation
0
Reaction score
0
Trophy points
1,281
Activity points
1,463
i just know the corresponding hspice syntax, like EXXX V+ V_ VOL=" EXPRESSION"
how to use this device in spectre?

Regards!
 

zhonghan,
the syntax is:
E2 3 4 VOLT = "15+2*V(1,2)+0.75 *V(1,2)2"
where 3 and 4 are the controlled nodes and 1 and 2 are the controlling nodes.

Good luck!
 

Re: how to write a behaviour level voltage source in spectr

I have tried it as you advised , but it doesn't work , not the spectre statement format
 

zhonghan,
sorry, I understood you needed the hspice format, for spectre the format is different:

E0 (n1 n2 n3 n4) pvcvs gain=1.0 coeffs=[c0 c1 c2 c3 c4]

n1 and n2 are the controlled nets and n3 and n4 are the controlling nets; c0-c4 are the polynomial coefficients.
 

Re: how to write a behaviour level voltage source in spectr

Thank you!
I want to express my more clrealy. Does pvcvs represent polynomial VCVS ?
If i want a time related sinusoidal wave which can be writtn as
EXXX nodea nodeb volt="sin(2*3.14159*Fosc*TIME+ sin(2*3.14159*Fjitter*TIME))" in HSPICE
Can i get the similar source in spectre?
 

zhonghan,
I do not know if there is a voltage source that can do that. I would use a verilog-A module in your spectre netlist (verilog-A is native in spectre).

module vsin_jitter(p,n);
output p,n;
electrical p,n;
parameter real fosc = 1.0, fjitter = 0.0, ampl = 1.0 ;
analog
begin
V(p,n) <+ ampl * sin(2.0 * ‘M_PI * fosc * $abstime + sin(2.0 * ‘M_PI * fjitter * $abstime)) ;
$bound_step(0.02/fosc) ; // Max time step = 1/50 period
end
endmodule

I hope this works!
 

Status
Not open for further replies.

Part and Inventory Search

Welcome to EDABoard.com

Sponsor

Back
Top