Juan Andres
10/20/2022, 4:09 PMMitch Bailey
10/20/2022, 4:14 PMuser_analog_project_wrapper
with digital macros. The digital macros will be just symbols in the schematic (edit the *.sym
file so that the ports are listed in the same order as the verilog ports). This allows you to run device level lvs. I’m not sure how simulation would work.Juan Andres
10/20/2022, 4:15 PMMitch Bailey
10/20/2022, 4:18 PMJuan Andres
10/20/2022, 4:19 PMMitch Bailey
10/20/2022, 4:24 PMStefan Schippers
10/20/2022, 4:40 PMspi2xspice.py
script from Tim's qflow
.
In below picture two identical subcircuits are simulated, cyan is simulated transistor level with ngspice, yellow is simulated event driven with ngspice's Xspice engine. The example is in the xschem_sky130 test circuits. (sky130_tests/test_stdcells.sch
)Juan Andres
10/20/2022, 4:50 PMStefan Schippers
10/20/2022, 4:58 PMSimulations-> Configure simulators and tool
and for ngspice enable the status
checkbox.
At the end of the ngspice run a report is displayed showing if simulation completed of failed and the reason.Juan Andres
10/20/2022, 4:59 PMStefan Schippers
10/20/2022, 5:00 PMStefan Schippers
10/20/2022, 5:00 PMChristoph Weiser
10/20/2022, 5:53 PMTim Edwards
10/20/2022, 8:33 PMspi2xspice.py
script does what @Christoph Weiser said above, but you just feed it the SPICE netlist of a synthesized digital circuit (from openlane, say, and then extracted from magic to get the netlist), and the details of the adc/dac bridges are all taken care of automatically, and the output is an xspice subcircuit that is an exact replacement for the original subcircuit. Search for other discussions in this thread about spi2xspice
. Several people got it working and used it for mixed-signal simulations.