|
发表于 2023-10-12 18:36:19
|
显示全部楼层
`include "constants.vams"
`include "disciplines.vams"
module jfet(d, g, s);
parameter real Vto = -2.0 from (-inf:inf); // Threshold voltage
parameter real Beta = 1.0e-4 from [0:inf);// Transconductance
parameter real Lambda = 0.0 from [0:inf); // Channel modulation
electrical d, g, s;
real Id, Vgs, Vds;
analog begin
Vgs = V(g,s);
Vds = V(d,s);
if (Vds <= Vgs-Vto)
Id = Beta*(1+Lambda*Vds)*Vds*(2*(Vgs-Vto)- Vds);
else if (Vgs-Vto < Vds)
Id = Beta*(1+Lambda*Vds)*(Vgs-Vto)*(Vgs-Vto);
I(d,s) <+ Id;
end
endmodule
x1 drain gate source jfet Beta=1.1e-4 lambda=0.01
以上,我直接hspice手册里面扒的,直接调用就好了啊,和调用subckt一个方式。
我自己倒没这么用过,我都是virtuoso环境下建立verilog-a的view的代码,然后存成symbol,就直接能协同仿真;hsipice没这么直接用过,但感觉应该一样。
|
|