test: update tests to new command
This commit is contained in:
parent
469dc127bf
commit
687c251e29
|
|
@ -32,7 +32,7 @@ build_ngspice:
|
|||
- ./autogen.sh
|
||||
- mkdir debug
|
||||
- cd debug
|
||||
- ../configure --with-x --with-readline=yes LIBS=-ldl
|
||||
- ../configure --disable-silent-rules --without-ngshared --enable-osdi LIBS=-ldl FLAGS="-m64 -O0 -Wall -Wno-unused-but-set-variable" LDFLAGS="-m64"
|
||||
- make
|
||||
artifacts:
|
||||
paths:
|
||||
|
|
|
|||
61963
compile_commands.json
61963
compile_commands.json
File diff suppressed because it is too large
Load Diff
|
|
@ -9,7 +9,7 @@ Vsense Dx D DC 0
|
|||
|
||||
* model definitions:
|
||||
.model dmod_built_in d( bv=5.0000000000e+01 is=1e-13 n=1.05 thermal=1 tnom=27 rth0=100 rs=5 cj0=1e-15 vj=0.5 m=0.6 )
|
||||
.model dmod_osdi osdi diode_va rs=5 is=1e-13 n=1.05 Rth=100 cj0=1e-15 vj=0.5 m=0.6
|
||||
.model dmod_osdi diode_va rs=5 is=1e-13 n=1.05 Rth=100 cj0=1e-15 vj=0.5 m=0.6
|
||||
|
||||
*OSDI Diode:
|
||||
*OSDI_ACTIVATE*A1 D 0 T dmod_osdi
|
||||
|
|
@ -19,6 +19,8 @@ Vsense Dx D DC 0
|
|||
|
||||
|
||||
.control
|
||||
pre_osdi diode.osdi
|
||||
|
||||
set filetype=ascii
|
||||
set wr_vecnames
|
||||
set wr_singlescale
|
||||
|
|
@ -41,4 +43,4 @@ rusage totiter
|
|||
|
||||
.endc
|
||||
|
||||
.end
|
||||
.end
|
||||
|
|
|
|||
|
|
@ -12,7 +12,7 @@ directory = os.path.dirname(__file__)
|
|||
# and then bet put into /usr/local/share/ngspice/osdi:
|
||||
#
|
||||
# > make osdi_diode
|
||||
# > cp diode_osdi.so /usr/local/share/ngspice/osdi/diode_osdi.so
|
||||
# > cp diode_osdi.osdi /usr/local/share/ngspice/osdi/diode_osdi.osdi
|
||||
#
|
||||
# The integration test proves the functioning of the OSDI interface. The Ngspice diode is quite
|
||||
# complicated and the results are therefore not exactly the same.
|
||||
|
|
@ -20,27 +20,26 @@ directory = os.path.dirname(__file__)
|
|||
|
||||
|
||||
def create_shared_object():
|
||||
# place the file "diode_va.c" next to this file
|
||||
# place the file "diode.c" next to this file
|
||||
subprocess.run(
|
||||
[
|
||||
"gcc",
|
||||
"-c",
|
||||
"-Wall",
|
||||
"-I",
|
||||
"../../src/spicelib/devices/osdi/",
|
||||
"../../src/osdi/",
|
||||
"-fpic",
|
||||
"diode_va.c",
|
||||
"diode.c",
|
||||
"-ggdb",
|
||||
],
|
||||
cwd=directory,
|
||||
)
|
||||
subprocess.run(
|
||||
["gcc", "-shared", "-o", "diode_va.so", "diode_va.o", "-ggdb"],
|
||||
["gcc", "-shared", "-o", "diode.osdi", "diode.o", "-ggdb"],
|
||||
cwd=directory,
|
||||
)
|
||||
os.makedirs(os.path.join(directory, "test_osdi", "osdi"), exist_ok=True)
|
||||
subprocess.run(["mv", "diode_va.so", "test_osdi/osdi/diode_va.so"], cwd=directory)
|
||||
subprocess.run(["rm", "diode_va.o"], cwd=directory)
|
||||
subprocess.run(["mv", "diode.osdi", "test_osdi/diode.osdi"], cwd=directory)
|
||||
subprocess.run(["rm", "diode.o"], cwd=directory)
|
||||
|
||||
|
||||
# specify location of Ngspice executable to be tested
|
||||
|
|
|
|||
|
|
@ -7,12 +7,12 @@ VD Dx 0 DC 0 AC 1 SIN (0.5 0.2 1M)
|
|||
Vsense Dx D DC 0
|
||||
|
||||
* model definitions:
|
||||
.model rmod_osdi osdi resistor_va r=10
|
||||
.model cmod_osdi osdi capacitor_va r=5e-12
|
||||
.model rmod_osdi resistor_va r=10
|
||||
.model cmod_osdi capacitor_va r=5e-12
|
||||
|
||||
*OSDI Resistor and Capacitor:
|
||||
*OSDI_ACTIVATE*A1 D 0 rmod_osdi
|
||||
*OSDI_ACTIVATE*A1 D 0 cmod_osdi
|
||||
*OSDI_ACTIVATE*A2 D 0 cmod_osdi
|
||||
|
||||
*Built-in Capacitor and Resistor:
|
||||
*BUILT_IN_ACTIVATE*R1 D 0 10
|
||||
|
|
@ -20,6 +20,8 @@ Vsense Dx D DC 0
|
|||
|
||||
|
||||
.control
|
||||
pre_osdi resistor.osdi capacitor.osdi
|
||||
|
||||
set filetype=ascii
|
||||
set wr_vecnames
|
||||
set wr_singlescale
|
||||
|
|
@ -42,4 +44,4 @@ rusage totiter
|
|||
|
||||
.endc
|
||||
|
||||
.end
|
||||
.end
|
||||
|
|
|
|||
|
|
@ -12,16 +12,16 @@ directory = os.path.dirname(__file__)
|
|||
# and then bet put into /usr/local/share/ngspice/osdi:
|
||||
#
|
||||
# > make osdi_resistor
|
||||
# > cp resistor_osdi.so /usr/local/share/ngspice/osdi/resistor_osdi.so
|
||||
# > cp resistor_osdi.osdi /usr/local/share/ngspice/osdi/resistor_osdi.osdi
|
||||
# > make osdi_capacitor
|
||||
# > cp capacitor_osdi.so /usr/local/share/ngspice/osdi/capacitor_osdi.so
|
||||
# > cp capacitor_osdi.osdi /usr/local/share/ngspice/osdi/capacitor_osdi.osdi
|
||||
#
|
||||
# The integration test proves the functioning of the OSDI interface.
|
||||
# Future tests will target Verilog-A models like HICUM/L2 that should yield exactly the same results as the Ngspice implementation.
|
||||
|
||||
|
||||
def create_shared_object():
|
||||
# place the file "resistor_va.c" and "capacitor_va.c" next to this file
|
||||
# place the file "resistor.c" and "capacitor.c" next to this file
|
||||
for dev in ["capacitor", "resistor"]:
|
||||
subprocess.run(
|
||||
[
|
||||
|
|
@ -29,22 +29,21 @@ def create_shared_object():
|
|||
"-c",
|
||||
"-Wall",
|
||||
"-I",
|
||||
"../../src/spicelib/devices/osdi/",
|
||||
"../../src/osdi/",
|
||||
"-fpic",
|
||||
dev + "_va.c",
|
||||
dev + ".c",
|
||||
"-ggdb",
|
||||
],
|
||||
cwd=directory,
|
||||
)
|
||||
subprocess.run(
|
||||
["gcc", "-shared", "-o", dev + "_va.so", dev + "_va.o", "-ggdb"],
|
||||
["gcc", "-shared", "-o", dev + ".osdi", dev + ".o", "-ggdb"],
|
||||
cwd=directory,
|
||||
)
|
||||
os.makedirs(os.path.join(directory, "test_osdi", "osdi"), exist_ok=True)
|
||||
subprocess.run(
|
||||
["mv", dev + "_va.so", "test_osdi/osdi/" + dev + "_va.so"], cwd=directory
|
||||
["mv", dev + ".osdi", "test_osdi/" + dev + ".osdi"], cwd=directory
|
||||
)
|
||||
subprocess.run(["rm", dev + "_va.o"], cwd=directory)
|
||||
subprocess.run(["rm", dev + ".o"], cwd=directory)
|
||||
|
||||
|
||||
# specify location of Ngspice executable to be tested
|
||||
|
|
|
|||
Loading…
Reference in New Issue