Difference between revisions of "Relay"
From Vlsiwiki
Line 1: | Line 1: | ||
− | `include "discipline.h" <br /> | + | `include "discipline.h" <br /> |
− | `include "constants.h" <br /> | + | `include "constants.h" <br /> |
− | module relay (c1, c2, pin, nin); | + | module relay (c1, c2, pin, nin); |
− | + | inout c1, c2;<br /> | |
− | inout c1, c2;<br /> | + | input pin, nin;<br /> |
− | input pin, nin;<br /> | + | electrical c1, c2, pin, nin; |
− | + | parameter real r=1 ; | |
− | electrical c1, c2, pin, nin; | + | analog begin @(cross(V(pin,nin))) discontinuity(0) ; <br /> |
− | + | if (V(pin,nin) >= 0)<br /> | |
− | parameter real r=1 ; | + | I(c1,c2) <+ V(c1,c2)/r; <br /> |
− | + | else<br /> | |
− | analog begin @(cross(V(pin,nin))) discontinuity(0) ; <br /> | + | I(c1,c2) <+ 0 ; |
− | if (V(pin,nin) >= 0)<br /> | + | end endmodule |
− | I(c1,c2) <+ V(c1,c2)/r; <br /> | + | |
− | else<br /> | + | |
− | I(c1,c2) <+ 0 ; | + | |
− | end endmodule | + | |
example from http://www.eda.org/verilog-ams/htmlpages/public-docs/lrm/VerilogA/verilog-a-lrm-1-0.pdf | example from http://www.eda.org/verilog-ams/htmlpages/public-docs/lrm/VerilogA/verilog-a-lrm-1-0.pdf |
Revision as of 00:18, 13 November 2009
`include "discipline.h"
`include "constants.h"
module relay (c1, c2, pin, nin); inout c1, c2;
input pin, nin;
electrical c1, c2, pin, nin; parameter real r=1 ; analog begin @(cross(V(pin,nin))) discontinuity(0) ;
if (V(pin,nin) >= 0)
I(c1,c2) <+ V(c1,c2)/r;
else
I(c1,c2) <+ 0 ; end endmodule
example from http://www.eda.org/verilog-ams/htmlpages/public-docs/lrm/VerilogA/verilog-a-lrm-1-0.pdf