Difference between revisions of "Ultrasim and Spectre"
From Vlsiwiki
m (moved Ultrasim to Ultrasim and Spectre: They use the same code) |
|||
Line 37: | Line 37: | ||
I0 (input, output) inverter high=2.0 low=1.0 margin=1.5 | I0 (input, output) inverter high=2.0 low=1.0 margin=1.5 | ||
+ | |||
+ | [[Sample Buffer in Spectre]] |
Revision as of 03:57, 9 November 2009
For analog circuits described in Verilog - A include the following command into the file that runs Ultrasim, preferably toward the end: ahdl_include "<file>"
To instantiate the models in the netlist, you can simply refer to it via a call to its module name.
Example:
Verilog-A module:
`include "constants.vams" `include "disciplines.vams" module inverter(in, out); input in; output out; electrical in, out; parameter real high = 1.0 parameter real low = 0.0; parameter real margin = 0.5; analog begin if (in < noise margin) out = high; else out = low; end endmodule
Netlist file in Spectre Language :
... I0 (input, output) inverter ... ahdl_include inverter.va
The inverter module can be used as any other subckt in spectre. Parameters defined in the Verilog-A module can also be changed during instantiation such as by:
I0 (input, output) inverter high=2.0 low=1.0 margin=1.5