diff --git a/src/xschem.tcl b/src/xschem.tcl index c6be5a04..2f7e3076 100644 --- a/src/xschem.tcl +++ b/src/xschem.tcl @@ -5825,9 +5825,10 @@ proc get_directory {f} { } # set 'n' last directory components to every symbol -proc fix_symbols {n} { +proc fix_symbols {n {pattern {}}} { xschem push_undo foreach {i s t} [xschem instance_list] { + if {$pattern ne {} && ![regexp $pattern $s]} {continue} if {![regexp {\(.*\)$} $s param]} { set param {}} regsub {\([^)]*\)$} $s {} s set sympath [find_file_first [file tail $s]] diff --git a/tests/create_save/tests/0_examples_top.tcl b/tests/create_save/tests/0_examples_top.tcl index bbd74bb2..44139398 100644 --- a/tests/create_save/tests/0_examples_top.tcl +++ b/tests/create_save/tests/0_examples_top.tcl @@ -13,22 +13,22 @@ xschem wire 930 -310 960 -300 {lab=#net1} xschem wire 380 -530 700 -530 {lab=BUS[4:0]} xschem wire 510 -640 510 -540 {lab=BUS[1]} xschem wire 410 -600 410 -540 {lab=BUS[2]} -xschem instance ../../../xschem_library/examples/poweramp.sym 160 -310 0 0 {name=x1 tclcommand="xschem descend"} -xschem instance ../../../xschem_library/examples/tesla.sym 160 -230 0 0 {name=x2} -xschem instance ../../../xschem_library/examples/test_ne555.sym 160 -190 0 0 {name=x3} -xschem instance ../../../xschem_library/examples/test_lm324.sym 160 -150 0 0 {name=x4} -xschem instance ../../../xschem_library/examples/osc.sym 160 -270 0 0 {name=x5} -xschem instance ../../../xschem_library/examples/cmos_example.sym 160 -350 0 0 {name=x6} -xschem instance ../../../xschem_library/examples/greycnt.sym 160 -390 0 0 {name=x8} -xschem instance ../../../xschem_library/examples/loading.sym 160 -430 0 0 {name=x9} -xschem instance ../../../xschem_library/examples/and.sym 930 -200 0 0 {name=E1 TABLE="1.4 3.0 1.6 0.0"} -xschem instance ../../../xschem_library/devices/launcher.sym 460 -210 0 0 {name=h1 descr="XSCHEM ON REPO.HU" url="http://repo.hu/projects/xschem"program=x-www-browser} -xschem instance ../../../xschem_library/devices/launcher.sym 460 -160 0 0 {name=h3 descr="Toggle light/dark colorscheme" tclcommand="xschem toggle_colorscheme"} -xschem instance ../../../xschem_library/devices/launcher.sym 460 -260 0 0 {name=h2 descr="LOCAL DOCUMENTATION" url="$\{XSCHEM_SHAREDIR\}/../doc/xschem/index.html"program=x-www-browser} -xschem instance ../../../xschem_library/examples/rlc.sym 160 -470 0 0 {name=x0} -xschem instance ../../../xschem_library/devices/lab_pin.sym 700 -530 0 1 {name=l2 sig_type=std_logic lab=BUS[4:0]} -xschem instance ../../../xschem_library/devices/bus_connect.sym 500 -530 0 0 {name=l3 lab=BUS[1]} -xschem instance ../../../xschem_library/devices/bus_connect_nolab.sym 400 -530 0 0 {name=r1} -xschem instance ../../../xschem_library/devices/lab_pin.sym 410 -600 3 1 {name=l4 sig_type=std_logic lab=BUS[2]} +xschem instance ../xschem_library/examples/poweramp.sym 160 -310 0 0 {name=x1 tclcommand="xschem descend"} +xschem instance ../xschem_library/examples/tesla.sym 160 -230 0 0 {name=x2} +xschem instance ../xschem_library/examples/test_ne555.sym 160 -190 0 0 {name=x3} +xschem instance ../xschem_library/examples/test_lm324.sym 160 -150 0 0 {name=x4} +xschem instance ../xschem_library/examples/osc.sym 160 -270 0 0 {name=x5} +xschem instance ../xschem_library/examples/cmos_example.sym 160 -350 0 0 {name=x6} +xschem instance ../xschem_library/examples/greycnt.sym 160 -390 0 0 {name=x8} +xschem instance ../xschem_library/examples/loading.sym 160 -430 0 0 {name=x9} +xschem instance ../xschem_library/examples/and.sym 930 -200 0 0 {name=E1 TABLE="1.4 3.0 1.6 0.0"} +xschem instance ../xschem_library/devices/launcher.sym 460 -210 0 0 {name=h1 descr="XSCHEM ON REPO.HU" url="http://repo.hu/projects/xschem"program=x-www-browser} +xschem instance ../xschem_library/devices/launcher.sym 460 -160 0 0 {name=h3 descr="Toggle light/dark colorscheme" tclcommand="xschem toggle_colorscheme"} +xschem instance ../xschem_library/devices/launcher.sym 460 -260 0 0 {name=h2 descr="LOCAL DOCUMENTATION" url="$\{XSCHEM_SHAREDIR\}/../doc/xschem/index.html"program=x-www-browser} +xschem instance ../xschem_library/examples/rlc.sym 160 -470 0 0 {name=x0} +xschem instance ../xschem_library/devices/lab_pin.sym 700 -530 0 1 {name=l2 sig_type=std_logic lab=BUS[4:0]} +xschem instance ../xschem_library/devices/bus_connect.sym 500 -530 0 0 {name=l3 lab=BUS[1]} +xschem instance ../xschem_library/devices/bus_connect_nolab.sym 400 -530 0 0 {name=r1} +xschem instance ../xschem_library/devices/lab_pin.sym 410 -600 3 1 {name=l4 sig_type=std_logic lab=BUS[2]} xschem save xschem exit closewindow \ No newline at end of file diff --git a/tests/create_save/tests/pcb_test1.tcl b/tests/create_save/tests/pcb_test1.tcl index 5c1af33d..a68a1956 100644 --- a/tests/create_save/tests/pcb_test1.tcl +++ b/tests/create_save/tests/pcb_test1.tcl @@ -23,29 +23,29 @@ xschem wire 520 -460 760 -460 {lab=A} xschem wire 580 -420 760 -420 {lab=B} xschem wire 580 -420 580 -350 {lab=B} xschem wire 520 -350 580 -350 {lab=B} -xschem instance ../../../xschem_library/pcb/74ls00.sym 420 -350 0 0 {name=U1:2 risedel=100 falldel=200} -xschem instance ../../../xschem_library/pcb/74ls00.sym 870 -440 0 0 {name=U1:1 risedel=100 falldel=200} -xschem instance ../../../xschem_library/devices/lab_pin.sym 970 -440 0 1 {name=p0 lab=OUTPUT_Y} -xschem instance ../../../xschem_library/devices/capa.sym 590 -160 0 0 {name=C0 m=1 value=100u device="electrolitic capacitor"} -xschem instance ../../../xschem_library/pcb/74ls00.sym 420 -460 0 0 {name=U1:4 risedel=100 falldel=200 url="http://www.engrcs.com/components/74LS00.pdf" power=VCC5 ___net:14=VCC5} -xschem instance ../../../xschem_library/pcb/7805.sym 730 -190 0 0 {name=U0 spiceprefix=Xurl="https://www.sparkfun.com/datasheets/Components/LM7805.pdf"} -xschem instance ../../../xschem_library/devices/lab_pin.sym 490 -190 0 0 {name=p20 lab=VCC12} -xschem instance ../../../xschem_library/devices/lab_pin.sym 940 -190 0 1 {name=p22 lab=VCC5} -xschem instance ../../../xschem_library/devices/lab_pin.sym 590 -110 0 0 {name=p23 lab=ANALOG_GND} -xschem instance ../../../xschem_library/devices/capa.sym 890 -160 0 0 {name=C4 m=1 value=10u device="tantalium capacitor"} -xschem instance ../../../xschem_library/devices/res.sym 520 -190 1 0 {name=R0 m=1 value=4.7 device="carbonresistor"} -xschem instance ../../../xschem_library/devices/lab_wire.sym 700 -460 0 0 {name=l3 lab=A} -xschem instance ../../../xschem_library/devices/lab_wire.sym 700 -420 0 0 {name=l0 lab=B} -xschem instance ../../../xschem_library/devices/lab_wire.sym 650 -190 0 0 {name=l1 lab=VCCFILT} -xschem instance ../../../xschem_library/devices/lab_pin.sym 310 -370 0 0 {name=lONN1 lab=INPUT_A verilog_type=reg} -xschem instance ../../../xschem_library/devices/lab_pin.sym 310 -330 0 0 {name=lONN2 lab=INPUT_B verilog_type=reg} -xschem instance ../../../xschem_library/devices/lab_pin.sym 40 -330 0 1 { name=lONN3 lab=OUTPUT_Y } -xschem instance ../../../xschem_library/devices/lab_pin.sym 310 -480 0 0 {name=lONN6 lab=INPUT_E verilog_type=reg} -xschem instance ../../../xschem_library/devices/lab_pin.sym 310 -440 0 0 {name=lONN8 lab=INPUT_F verilog_type=reg} -xschem instance ../../../xschem_library/devices/lab_pin.sym 40 -310 0 1 { name=lONN9 lab=VCC12 } -xschem instance ../../../xschem_library/devices/lab_pin.sym 40 -290 0 1 { name=lONN14 lab=ANALOG_GND verilog_type=reg} -xschem instance ../../../xschem_library/devices/lab_pin.sym 40 -270 0 1 { name=lONN15 lab=GND verilog_type=reg} -xschem instance ../../../xschem_library/devices/code.sym 1030 -280 0 0 {name=TESTBENCH_CODE only_toplevel=false value="initial begin +xschem instance ../xschem_library/pcb/74ls00.sym 420 -350 0 0 {name=U1:2 risedel=100 falldel=200} +xschem instance ../xschem_library/pcb/74ls00.sym 870 -440 0 0 {name=U1:1 risedel=100 falldel=200} +xschem instance ../xschem_library/devices/lab_pin.sym 970 -440 0 1 {name=p0 lab=OUTPUT_Y} +xschem instance ../xschem_library/devices/capa.sym 590 -160 0 0 {name=C0 m=1 value=100u device="electrolitic capacitor"} +xschem instance ../xschem_library/pcb/74ls00.sym 420 -460 0 0 {name=U1:4 risedel=100 falldel=200 url="http://www.engrcs.com/components/74LS00.pdf" power=VCC5 ___net:14=VCC5} +xschem instance ../xschem_library/pcb/7805.sym 730 -190 0 0 {name=U0 spiceprefix=Xurl="https://www.sparkfun.com/datasheets/Components/LM7805.pdf"} +xschem instance ../xschem_library/devices/lab_pin.sym 490 -190 0 0 {name=p20 lab=VCC12} +xschem instance ../xschem_library/devices/lab_pin.sym 940 -190 0 1 {name=p22 lab=VCC5} +xschem instance ../xschem_library/devices/lab_pin.sym 590 -110 0 0 {name=p23 lab=ANALOG_GND} +xschem instance ../xschem_library/devices/capa.sym 890 -160 0 0 {name=C4 m=1 value=10u device="tantalium capacitor"} +xschem instance ../xschem_library/devices/res.sym 520 -190 1 0 {name=R0 m=1 value=4.7 device="carbonresistor"} +xschem instance ../xschem_library/devices/lab_wire.sym 700 -460 0 0 {name=l3 lab=A} +xschem instance ../xschem_library/devices/lab_wire.sym 700 -420 0 0 {name=l0 lab=B} +xschem instance ../xschem_library/devices/lab_wire.sym 650 -190 0 0 {name=l1 lab=VCCFILT} +xschem instance ../xschem_library/devices/lab_pin.sym 310 -370 0 0 {name=lONN1 lab=INPUT_A verilog_type=reg} +xschem instance ../xschem_library/devices/lab_pin.sym 310 -330 0 0 {name=lONN2 lab=INPUT_B verilog_type=reg} +xschem instance ../xschem_library/devices/lab_pin.sym 40 -330 0 1 { name=lONN3 lab=OUTPUT_Y } +xschem instance ../xschem_library/devices/lab_pin.sym 310 -480 0 0 {name=lONN6 lab=INPUT_E verilog_type=reg} +xschem instance ../xschem_library/devices/lab_pin.sym 310 -440 0 0 {name=lONN8 lab=INPUT_F verilog_type=reg} +xschem instance ../xschem_library/devices/lab_pin.sym 40 -310 0 1 { name=lONN9 lab=VCC12 } +xschem instance ../xschem_library/devices/lab_pin.sym 40 -290 0 1 { name=lONN14 lab=ANALOG_GND verilog_type=reg} +xschem instance ../xschem_library/devices/lab_pin.sym 40 -270 0 1 { name=lONN15 lab=GND verilog_type=reg} +xschem instance ../xschem_library/devices/code.sym 1030 -280 0 0 {name=TESTBENCH_CODE only_toplevel=false value="initial begin $dumpfile(\\"dumpfile.vcd\\"); $dumpvars; INPUT_E=0; @@ -69,11 +69,11 @@ end assign VCC12=1; "} -xschem instance ../../../xschem_library/devices/verilog_timescale.sym 1050 -100 0 0 {name=s1 timestep="1ns" precision="1ns" } -xschem instance ../../../xschem_library/devices/conn_8x1.sym 20 -390 0 0 {name=C1 footprint=connector(8,1)} -xschem instance ../../../xschem_library/devices/lab_pin.sym 40 -370 0 1 {name=l4 lab=INPUT_A verilog_type=reg} -xschem instance ../../../xschem_library/devices/lab_pin.sym 40 -350 0 1 {name=l5 lab=INPUT_B verilog_type=reg} -xschem instance ../../../xschem_library/devices/lab_pin.sym 40 -410 0 1 {name=l6 lab=INPUT_E verilog_type=reg} -xschem instance ../../../xschem_library/devices/lab_pin.sym 40 -390 0 1 {name=l7 lab=INPUT_F verilog_type=reg} +xschem instance ../xschem_library/devices/verilog_timescale.sym 1050 -100 0 0 {name=s1 timestep="1ns" precision="1ns" } +xschem instance ../xschem_library/devices/conn_8x1.sym 20 -390 0 0 {name=C1 footprint=connector(8,1)} +xschem instance ../xschem_library/devices/lab_pin.sym 40 -370 0 1 {name=l4 lab=INPUT_A verilog_type=reg} +xschem instance ../xschem_library/devices/lab_pin.sym 40 -350 0 1 {name=l5 lab=INPUT_B verilog_type=reg} +xschem instance ../xschem_library/devices/lab_pin.sym 40 -410 0 1 {name=l6 lab=INPUT_E verilog_type=reg} +xschem instance ../xschem_library/devices/lab_pin.sym 40 -390 0 1 {name=l7 lab=INPUT_F verilog_type=reg} xschem save xschem exit closewindow \ No newline at end of file diff --git a/tests/create_save/tests/pcb_voltage_protection.tcl b/tests/create_save/tests/pcb_voltage_protection.tcl index 84c4857b..83a7044f 100644 --- a/tests/create_save/tests/pcb_voltage_protection.tcl +++ b/tests/create_save/tests/pcb_voltage_protection.tcl @@ -17,14 +17,14 @@ xschem wire 250 -160 250 -130 {lab=VSS} xschem wire 250 -220 330 -220 {lab=Z} xschem wire 550 -320 650 -320 {lab=G} xschem wire 550 -260 650 -260 {lab=#net1} -xschem instance ../../../xschem_library/devices/conn_3x1.sym 150 -360 0 0 {name=C1} -xschem instance ../../../xschem_library/devices/vdd.sym 770 -490 0 0 {name=l6 lab=VCC} -xschem instance ../../../xschem_library/devices/lab_pin.sym 860 -300 0 1 {name=p0 lab=VOUT} -xschem instance ../../../xschem_library/devices/lab_wire.sym 660 -360 0 0 {name=l9 lab=G} -xschem instance ../../../xschem_library/devices/res.sym 770 -190 0 0 {name=Rload m=1 value=100 footprint=1206 device=resistor +xschem instance ../xschem_library/devices/conn_3x1.sym 150 -360 0 0 {name=C1} +xschem instance ../xschem_library/devices/vdd.sym 770 -490 0 0 {name=l6 lab=VCC} +xschem instance ../xschem_library/devices/lab_pin.sym 860 -300 0 1 {name=p0 lab=VOUT} +xschem instance ../xschem_library/devices/lab_wire.sym 660 -360 0 0 {name=l9 lab=G} +xschem instance ../xschem_library/devices/res.sym 770 -190 0 0 {name=Rload m=1 value=100 footprint=1206 device=resistor tedax_ignore=true} -xschem instance ../../../xschem_library/devices/gnd.sym 770 -130 0 0 {name=l10 lab=VSS} -xschem instance ../../../xschem_library/devices/code_shown.sym 950 -430 0 0 {name=STIMULI +xschem instance ../xschem_library/devices/gnd.sym 770 -130 0 0 {name=l10 lab=VSS} +xschem instance ../xschem_library/devices/code_shown.sym 950 -430 0 0 {name=STIMULI tedax_ignore=true only_toplevel=true tclcommand="xschem edit_vi_prop" @@ -43,43 +43,43 @@ vvss vss 0 dc 0 .dc VVCC 0 8 0.004 .save all "} -xschem instance ../../../xschem_library/devices/pnp.sym 580 -390 0 0 {name=Q6 +xschem instance ../xschem_library/devices/pnp.sym 580 -390 0 0 {name=Q6 model=BC857 device=BC857 footprint=SOT23 url="https://www.google.com/url?sa=t&rct=j&q=&esrc=s&source=web&cd=1&cad=rja&uact=8&ved=2ahUKEwijlfagu4zfAhUN0xoKHTPBAb0QFjAAegQIAhAC&url=http%3A%2F%2Fwww.onsemi.com%2Fpub%2FCollateral%2FPN2907-D.PDF&usg=AOvVaw2wgr87fGZgGfBRhXzHGwZM"} -xschem instance ../../../xschem_library/devices/zener.sym 330 -190 2 0 {name=x3 +xschem instance ../xschem_library/devices/zener.sym 330 -190 2 0 {name=x3 model=BZX5V1 device=BZX5V1 footprint=acy(300) xxxspiceprefix="#D#"} -xschem instance ../../../xschem_library/devices/gnd.sym 330 -130 0 0 {name=l13 lab=VSS} -xschem instance ../../../xschem_library/devices/res.sym 330 -460 0 0 {name=R4 m=1 value=4.7K footprint=1206 device=resistor} -xschem instance ../../../xschem_library/devices/vdd.sym 330 -490 0 0 {name=l14 lab=VCC} -xschem instance ../../../xschem_library/devices/vdd.sym 600 -490 0 0 {name=l15 lab=VCC} -xschem instance ../../../xschem_library/devices/res.sym 600 -190 0 0 {name=R5 m=1 value=470 footprint=1206 device=resistor} -xschem instance ../../../xschem_library/devices/gnd.sym 600 -130 0 0 {name=l16 lab=VSS} -xschem instance ../../../xschem_library/devices/lab_wire.sym 360 -390 0 0 {name=l0 lab=B} -xschem instance ../../../xschem_library/devices/res.sym 330 -340 0 0 {name=R2 m=1 value=510 footprint=1206 device=resistor} -xschem instance ../../../xschem_library/devices/pmos.sym 750 -360 0 0 {name=M2 +xschem instance ../xschem_library/devices/gnd.sym 330 -130 0 0 {name=l13 lab=VSS} +xschem instance ../xschem_library/devices/res.sym 330 -460 0 0 {name=R4 m=1 value=4.7K footprint=1206 device=resistor} +xschem instance ../xschem_library/devices/vdd.sym 330 -490 0 0 {name=l14 lab=VCC} +xschem instance ../xschem_library/devices/vdd.sym 600 -490 0 0 {name=l15 lab=VCC} +xschem instance ../xschem_library/devices/res.sym 600 -190 0 0 {name=R5 m=1 value=470 footprint=1206 device=resistor} +xschem instance ../xschem_library/devices/gnd.sym 600 -130 0 0 {name=l16 lab=VSS} +xschem instance ../xschem_library/devices/lab_wire.sym 360 -390 0 0 {name=l0 lab=B} +xschem instance ../xschem_library/devices/res.sym 330 -340 0 0 {name=R2 m=1 value=510 footprint=1206 device=resistor} +xschem instance ../xschem_library/devices/pmos.sym 750 -360 0 0 {name=M2 model=IRLML6402 device=IRLML6402 footprint=SOT23 spiceprefix=X m=1 url="https://www.google.com/url?sa=t&rct=j&q=&esrc=s&source=web&cd=1&ved=2ahUKEwjs8pzxuozfAhWpz4UKHR4CDnMQFjAAegQIAhAC&url=https%3A%2F%2Fwww.infineon.com%2Fdgdl%2Firlml6402.pdf%3FfileId%3D5546d462533600a401535668c9822638&usg=AOvVaw21fCRax-ssVpLqDeGK8KiC"} -xschem instance ../../../xschem_library/devices/led.sym 650 -290 0 0 {name=x1 model=D1N5765 device=D1N5765 area=1 footprint=acy(300)} -xschem instance ../../../xschem_library/devices/lab_pin.sym 170 -340 0 1 {name=p6 lab=VOUT} -xschem instance ../../../xschem_library/devices/lab_pin.sym 170 -360 0 1 {name=p7 lab=VSS} -xschem instance ../../../xschem_library/devices/lab_pin.sym 170 -380 0 1 {name=p8 lab=VCC} -xschem instance ../../../xschem_library/devices/zener.sym 250 -190 2 0 {name=x4 +xschem instance ../xschem_library/devices/led.sym 650 -290 0 0 {name=x1 model=D1N5765 device=D1N5765 area=1 footprint=acy(300)} +xschem instance ../xschem_library/devices/lab_pin.sym 170 -340 0 1 {name=p6 lab=VOUT} +xschem instance ../xschem_library/devices/lab_pin.sym 170 -360 0 1 {name=p7 lab=VSS} +xschem instance ../xschem_library/devices/lab_pin.sym 170 -380 0 1 {name=p8 lab=VCC} +xschem instance ../xschem_library/devices/zener.sym 250 -190 2 0 {name=x4 model=BZX5V1 device=BZX5V1 area=1 footprint=minimelf spice_ignore=true} -xschem instance ../../../xschem_library/devices/gnd.sym 250 -130 0 0 {name=l1 lab=VSS} -xschem instance ../../../xschem_library/devices/res.sym 550 -290 0 0 {name=R1 m=1 value=47K footprint=1206 device=resistor} -xschem instance ../../../xschem_library/devices/lab_wire.sym 330 -260 0 0 {name=l3 lab=Z} +xschem instance ../xschem_library/devices/gnd.sym 250 -130 0 0 {name=l1 lab=VSS} +xschem instance ../xschem_library/devices/res.sym 550 -290 0 0 {name=R1 m=1 value=47K footprint=1206 device=resistor} +xschem instance ../xschem_library/devices/lab_wire.sym 330 -260 0 0 {name=l3 lab=Z} xschem save xschem exit closewindow \ No newline at end of file diff --git a/tests/create_save/tests/rom8k.tcl b/tests/create_save/tests/rom8k.tcl index 70d6323f..1cfa9475 100644 --- a/tests/create_save/tests/rom8k.tcl +++ b/tests/create_save/tests/rom8k.tcl @@ -39,7 +39,7 @@ xschem wire 1540 -350 1540 -330 {lab=vss} xschem wire 1540 -530 1540 -510 {lab=vss} xschem wire 1720 -180 1720 -160 {lab=vss} xschem wire 1540 -180 1540 -160 {lab=vss} -xschem instance ../../../xschem_library/devices/code.sym 590 -160 0 0 {name=STIMULI value=" +xschem instance ../xschem_library/devices/code.sym 590 -160 0 0 {name=STIMULI value=" .options SCALE=0.10 .param VCC=1.5 .temp 25 @@ -60,159 +60,159 @@ vvss vss 0 0 " } -xschem instance ../../../xschem_library/rom8k/rom2_coldec.sym 1190 -890 0 0 {name=xcdec[15:0]} -xschem instance ../../../xschem_library/devices/lab_pin.sym 1040 -910 0 0 {name=p377 lab=LDY1[15:0]} -xschem instance ../../../xschem_library/devices/lab_pin.sym 1040 -890 0 0 {name=p378 lab=LDBL[255:0]} -xschem instance ../../../xschem_library/devices/lab_pin.sym 1040 -870 0 0 {name=p381 lab=vss} -xschem instance ../../../xschem_library/devices/lab_pin.sym 1340 -910 0 1 {name=p382 lab=LDYMS[15:0]} -xschem instance ../../../xschem_library/rom8k/rom2_sa.sym 560 -390 0 0 {name=xsa[15:0]} -xschem instance ../../../xschem_library/devices/lab_pin.sym 710 -450 0 1 {name=p340 lab=LDQ[15:0]} -xschem instance ../../../xschem_library/devices/lab_pin.sym 410 -430 0 0 {name=p39 lab=LDYMS[15:0]} -xschem instance ../../../xschem_library/devices/lab_pin.sym 410 -350 0 0 {name=p26 lab=vccsa} -xschem instance ../../../xschem_library/devices/lab_pin.sym 410 -330 0 0 {name=p31 lab=vss} -xschem instance ../../../xschem_library/devices/lab_pin.sym 410 -410 0 0 {name=p40 lab=LDOE} -xschem instance ../../../xschem_library/devices/vsource.sym 90 -920 0 0 {name=vsa value=0} -xschem instance ../../../xschem_library/devices/lab_pin.sym 90 -950 0 0 {name=p44 lab=vcc} -xschem instance ../../../xschem_library/devices/lab_pin.sym 90 -890 0 0 {name=p45 lab=vccsa} -xschem instance ../../../xschem_library/devices/vsource.sym 190 -820 0 0 {name=vdec value=0} -xschem instance ../../../xschem_library/devices/lab_pin.sym 190 -850 0 0 {name=p48 lab=vcc} -xschem instance ../../../xschem_library/devices/lab_pin.sym 190 -790 0 0 {name=p49 lab=vccdec} -xschem instance ../../../xschem_library/devices/vsource.sym 90 -820 0 0 {name=vl value=0} -xschem instance ../../../xschem_library/devices/lab_pin.sym 90 -850 0 0 {name=p50 lab=vcc} -xschem instance ../../../xschem_library/devices/lab_pin.sym 90 -790 0 0 {name=p51 lab=vccl} -xschem instance ../../../xschem_library/devices/lab_pin.sym 410 -390 0 0 {name=p5 lab=LDPRECH} -xschem instance ../../../xschem_library/devices/lab_pin.sym 410 -370 0 0 {name=p11 lab=LDSAL} -xschem instance ../../../xschem_library/rom8k/rom2_addlatch.sym 1190 -490 0 0 {name=xlat} -xschem instance ../../../xschem_library/devices/lab_pin.sym 1340 -530 0 1 {name=p10 lab=LDEN_LAT} -xschem instance ../../../xschem_library/devices/lab_pin.sym 1340 -510 0 1 {name=p16 lab=LDAI[12:0]} -xschem instance ../../../xschem_library/devices/lab_pin.sym 1040 -530 0 0 {name=p17 lab=LDEN} -xschem instance ../../../xschem_library/devices/lab_pin.sym 1040 -490 0 0 {name=p19 lab=LDA[12:0]} -xschem instance ../../../xschem_library/devices/lab_pin.sym 1040 -470 0 0 {name=p21 lab=vccl} -xschem instance ../../../xschem_library/devices/lab_pin.sym 1040 -450 0 0 {name=p22 lab=vss} -xschem instance ../../../xschem_library/rom8k/rom2_ctrl.sym 1190 -360 0 0 {name=xctrl} -xschem instance ../../../xschem_library/devices/lab_pin.sym 1040 -420 0 0 {name=p27 lab=LDEN_LAT} -xschem instance ../../../xschem_library/devices/lab_pin.sym 1040 -400 0 0 {name=p28 lab=LDCP} -xschem instance ../../../xschem_library/devices/lab_pin.sym 1040 -360 0 0 {name=p29 lab=vss} -xschem instance ../../../xschem_library/devices/lab_pin.sym 1040 -380 0 0 {name=p30 lab=vccl} -xschem instance ../../../xschem_library/devices/lab_pin.sym 1340 -420 0 1 {name=p32 lab=LDPRECH} -xschem instance ../../../xschem_library/devices/lab_pin.sym 1340 -400 0 1 {name=p33 lab=LDSAL} -xschem instance ../../../xschem_library/devices/lab_pin.sym 1340 -380 0 1 {name=p34 lab=LDCP_ROWDEC} -xschem instance ../../../xschem_library/devices/lab_pin.sym 1340 -320 0 1 {name=p37 lab=LDCP_COL_B} -xschem instance ../../../xschem_library/devices/lab_pin.sym 1340 -340 0 1 {name=p36 lab=LDCP_ADDLAT_B} -xschem instance ../../../xschem_library/devices/lab_pin.sym 1040 -510 0 0 {name=p18 lab=LDCP_ADDLAT_B} -xschem instance ../../../xschem_library/devices/lab_pin.sym 1340 -360 0 1 {name=p8 lab=LDCP_SA} -xschem instance ../../../xschem_library/devices/lab_pin.sym 410 -450 0 0 {name=p35 lab=LDCP_SA} -xschem instance ../../../xschem_library/rom8k/rom2_predec3.sym 560 -520 0 0 {name=xcpre} -xschem instance ../../../xschem_library/devices/lab_pin.sym 410 -540 0 0 {name=p25 lab=LDAI[3:0]} -xschem instance ../../../xschem_library/devices/lab_pin.sym 410 -520 0 0 {name=p56 lab=vccdec} -xschem instance ../../../xschem_library/devices/lab_pin.sym 410 -500 0 0 {name=p57 lab=vss} -xschem instance ../../../xschem_library/devices/lab_pin.sym 710 -540 0 1 {name=p61 lab=LDY1[15:0]} -xschem instance ../../../xschem_library/devices/lab_pin.sym 150 -640 0 1 {name=p53 lab=LDL1X[15:0]} -xschem instance ../../../xschem_library/devices/lab_pin.sym 150 -560 0 1 {name=p54 lab=vss} -xschem instance ../../../xschem_library/devices/capa.sym 150 -610 0 0 {name=c1[15:0] m=1 value=210f} -xschem instance ../../../xschem_library/devices/lab_pin.sym 150 -400 0 1 {name=p62 lab=vss} -xschem instance ../../../xschem_library/devices/capa.sym 150 -450 0 0 {name=c2[3:0] m=1 value=120f} -xschem instance ../../../xschem_library/devices/lab_pin.sym 150 -480 0 1 {name=p63 lab=LDL2X[3:0]} -xschem instance ../../../xschem_library/devices/lab_pin.sym 10 -250 0 1 {name=p67 lab=vss} -xschem instance ../../../xschem_library/devices/capa.sym 10 -300 0 0 {name=c4[12:0] m=1 value=40f} -xschem instance ../../../xschem_library/devices/lab_pin.sym 10 -330 0 1 {name=p68 lab=LDAI[12:0]} -xschem instance ../../../xschem_library/devices/lab_pin.sym 10 -560 0 1 {name=p72 lab=vss} -xschem instance ../../../xschem_library/devices/capa.sym 10 -610 0 0 {name=c5[15:0] m=1 value=45f} -xschem instance ../../../xschem_library/devices/lab_pin.sym 10 -640 0 1 {name=p71 lab=LDY1[15:0]} -xschem instance ../../../xschem_library/rom8k/rom3_rowdec.sym 560 -790 0 0 {name=xrdec[31:0]} -xschem instance ../../../xschem_library/devices/lab_pin.sym 410 -800 0 0 {name=p1091 lab=LDL3X[7:0]*4} -xschem instance ../../../xschem_library/devices/lab_pin.sym 410 -840 0 0 {name=p1092 lab=LDL1X[15:0]} -xschem instance ../../../xschem_library/devices/lab_pin.sym 710 -840 0 1 {name=p1093 lab=LDWL[511:0]} -xschem instance ../../../xschem_library/devices/lab_pin.sym 410 -760 0 0 {name=p1094 lab=vss} -xschem instance ../../../xschem_library/devices/lab_pin.sym 410 -740 0 0 {name=p1095 lab=vccdec} -xschem instance ../../../xschem_library/devices/lab_pin.sym 410 -780 0 0 {name=p1096 lab=LDCP_ROWDEC} -xschem instance ../../../xschem_library/devices/lab_pin.sym 410 -820 0 0 {name=p1097 lab=8*LDL2X[3:0]} -xschem instance ../../../xschem_library/devices/lab_pin.sym 710 -700 0 1 {name=p1098 lab=LDL1X[15:0]} -xschem instance ../../../xschem_library/rom8k/rom2_predec1.sym 560 -680 0 0 {name=xrpre1} -xschem instance ../../../xschem_library/devices/lab_pin.sym 410 -700 0 0 {name=p1099 lab=LDAI[7:4]} -xschem instance ../../../xschem_library/devices/lab_pin.sym 410 -680 0 0 {name=p1101 lab=vccdec} -xschem instance ../../../xschem_library/devices/lab_pin.sym 410 -660 0 0 {name=p1102 lab=vss} -xschem instance ../../../xschem_library/rom8k/rom2_predec4.sym 560 -600 0 0 {name=xrpre2} -xschem instance ../../../xschem_library/devices/lab_pin.sym 410 -620 0 0 {name=p1103 lab=LDAI[12:8]} -xschem instance ../../../xschem_library/devices/lab_pin.sym 410 -600 0 0 {name=p1105 lab=vccdec} -xschem instance ../../../xschem_library/devices/lab_pin.sym 410 -580 0 0 {name=p1106 lab=vss} -xschem instance ../../../xschem_library/devices/lab_pin.sym 710 -620 0 1 {name=p1107 lab=LDL2X[3:0]} -xschem instance ../../../xschem_library/devices/lab_pin.sym 710 -600 0 1 {name=p1108 lab=LDL3X[7:0]} -xschem instance ../../../xschem_library/devices/lab_pin.sym 10 -400 0 1 {name=p4 lab=vss} -xschem instance ../../../xschem_library/devices/capa.sym 10 -450 0 0 {name=c3[7:0] m=1 value=120f} -xschem instance ../../../xschem_library/devices/lab_pin.sym 10 -480 0 1 {name=p0 lab=LDL3X[7:0]} -xschem instance ../../../xschem_library/devices/lab_pin.sym 1040 -810 0 0 {name=p23 lab=vccdec} -xschem instance ../../../xschem_library/rom8k/rom2_coldec_ref.sym 1190 -810 0 0 {name=xcdecref} -xschem instance ../../../xschem_library/devices/lab_pin.sym 1340 -830 0 1 {name=p41 lab=LDYMSREF} -xschem instance ../../../xschem_library/devices/lab_pin.sym 1040 -830 0 0 {name=p42 lab=LDBLREF} -xschem instance ../../../xschem_library/devices/lab_pin.sym 1340 -300 0 1 {name=p6 lab=LDYMSREF} -xschem instance ../../../xschem_library/devices/lab_pin.sym 1040 -790 0 0 {name=p12 lab=vss} -xschem instance ../../../xschem_library/devices/lab_pin.sym 1340 -620 0 1 {name=p9 lab=LDBLREF} -xschem instance ../../../xschem_library/rom8k/rom3_array_ref.sym 1190 -610 0 0 {name=xarr_ref} -xschem instance ../../../xschem_library/devices/lab_pin.sym 1040 -620 0 0 {name=p2 lab=LDWL[511:0]} -xschem instance ../../../xschem_library/devices/lab_pin.sym 1040 -600 0 0 {name=p14 lab=vss} -xschem instance ../../../xschem_library/rom8k/rom2_col_prech.sym 1190 -990 0 0 {name=xcpr[256:0]} -xschem instance ../../../xschem_library/devices/lab_pin.sym 1340 -1000 0 1 {name=p20 lab=LDBL[255:0],LDBLREF} -xschem instance ../../../xschem_library/devices/lab_pin.sym 1040 -1000 0 0 {name=p1 lab=LDCP_COL_B} -xschem instance ../../../xschem_library/devices/lab_pin.sym 1040 -980 0 0 {name=p38 lab=vss} -xschem instance ../../../xschem_library/devices/lab_pin.sym 1720 -410 0 1 {name=p47 lab=LDPRECH} -xschem instance ../../../xschem_library/devices/lab_pin.sym 1720 -330 0 1 {name=p52 lab=vss} -xschem instance ../../../xschem_library/devices/capa.sym 1720 -380 0 0 {name=c0 m=1 value=66f} -xschem instance ../../../xschem_library/devices/lab_pin.sym 1720 -590 0 1 {name=p55 lab=LDSAL} -xschem instance ../../../xschem_library/devices/lab_pin.sym 1720 -510 0 1 {name=p58 lab=vss} -xschem instance ../../../xschem_library/devices/capa.sym 1720 -560 0 0 {name=c6 m=1 value=34f} -xschem instance ../../../xschem_library/devices/lab_pin.sym 1540 -410 0 1 {name=p59 lab=LDCP_ROWDEC} -xschem instance ../../../xschem_library/devices/lab_pin.sym 1540 -330 0 1 {name=p60 lab=vss} -xschem instance ../../../xschem_library/devices/capa.sym 1540 -380 0 0 {name=c7 m=1 value=280f} -xschem instance ../../../xschem_library/devices/lab_pin.sym 1540 -590 0 1 {name=p64 lab=LDCP_SA} -xschem instance ../../../xschem_library/devices/lab_pin.sym 1540 -510 0 1 {name=p65 lab=vss} -xschem instance ../../../xschem_library/devices/capa.sym 1540 -560 0 0 {name=c8 m=1 value=44f} -xschem instance ../../../xschem_library/devices/lab_pin.sym 1720 -240 0 1 {name=p15 lab=LDCP_COL_B} -xschem instance ../../../xschem_library/devices/lab_pin.sym 1720 -160 0 1 {name=p24 lab=vss} -xschem instance ../../../xschem_library/devices/capa.sym 1720 -210 0 0 {name=c9 m=1 value=63f} -xschem instance ../../../xschem_library/devices/lab_pin.sym 1540 -240 0 1 {name=p43 lab=LDCP_ADDLAT_B} -xschem instance ../../../xschem_library/devices/lab_pin.sym 1540 -160 0 1 {name=p66 lab=vss} -xschem instance ../../../xschem_library/devices/capa.sym 1540 -210 0 0 {name=c10 m=1 value=12f} -xschem instance ../../../xschem_library/devices/spice_probe.sym 710 -450 2 1 {name=p125 analysis=tran} -xschem instance ../../../xschem_library/devices/spice_probe.sym 150 -640 0 0 {name=p69 analysis=tran} -xschem instance ../../../xschem_library/devices/spice_probe.sym 10 -640 0 0 {name=p70 analysis=tran} -xschem instance ../../../xschem_library/devices/spice_probe.sym 10 -480 0 0 {name=p73 analysis=tran} -xschem instance ../../../xschem_library/devices/spice_probe.sym 150 -480 0 0 {name=p74 analysis=tran} -xschem instance ../../../xschem_library/devices/spice_probe.sym 10 -330 0 0 {name=p75 analysis=tran} -xschem instance ../../../xschem_library/devices/spice_probe.sym 1540 -590 0 0 {name=p76 analysis=tran} -xschem instance ../../../xschem_library/devices/spice_probe.sym 1540 -410 0 0 {name=p83 analysis=tran} -xschem instance ../../../xschem_library/devices/spice_probe.sym 1540 -240 0 0 {name=p84 analysis=tran} -xschem instance ../../../xschem_library/devices/spice_probe.sym 1720 -240 0 0 {name=p85 analysis=tran} -xschem instance ../../../xschem_library/devices/spice_probe.sym 1720 -410 0 0 {name=p86 analysis=tran} -xschem instance ../../../xschem_library/devices/spice_probe.sym 1720 -590 0 0 {name=p87 analysis=tran} -xschem instance ../../../xschem_library/devices/spice_probe.sym 1340 -300 2 1 {name=p88 analysis=tran} -xschem instance ../../../xschem_library/devices/spice_probe.sym 1340 -530 0 0 {name=p89 analysis=tran} -xschem instance ../../../xschem_library/devices/spice_probe.sym 1340 -620 0 0 {name=p90 analysis=tran} -xschem instance ../../../xschem_library/devices/spice_probe.sym 1340 -910 0 0 {name=p93 analysis=tran} -xschem instance ../../../xschem_library/devices/lab_pin.sym 800 -350 0 0 {name=p94 lab=LDOE} -xschem instance ../../../xschem_library/devices/spice_probe.sym 800 -350 0 0 {name=p95 analysis=tran} -xschem instance ../../../xschem_library/devices/lab_pin.sym 800 -300 0 0 {name=p96 lab=LDCP} -xschem instance ../../../xschem_library/devices/spice_probe.sym 800 -300 0 0 {name=p97 analysis=tran} -xschem instance ../../../xschem_library/devices/lab_pin.sym 890 -300 0 0 {name=p98 lab=LDEN} -xschem instance ../../../xschem_library/devices/spice_probe.sym 890 -300 0 0 {name=p99 analysis=tran} -xschem instance ../../../xschem_library/devices/lab_pin.sym 1450 -40 0 0 {name=p100 lab=LDA[12:0]} -xschem instance ../../../xschem_library/devices/spice_probe.sym 1450 -40 0 0 {name=p101 analysis=tran} -xschem instance ../../../xschem_library/devices/opin.sym 290 -120 0 0 {name=p7 lab=LDQ[15:0]} -xschem instance ../../../xschem_library/devices/ipin.sym 210 -190 0 0 {name=p77 lab=LDA[12:0]} -xschem instance ../../../xschem_library/devices/ipin.sym 210 -170 0 0 {name=p78 lab=LDCP} -xschem instance ../../../xschem_library/devices/ipin.sym 210 -210 0 0 {name=p79 lab=LDEN} -xschem instance ../../../xschem_library/devices/ipin.sym 210 -150 0 0 {name=p80 lab=LDOE} -xschem instance ../../../xschem_library/devices/ipin.sym 210 -110 0 0 {name=p81 lab=vss} -xschem instance ../../../xschem_library/devices/ipin.sym 210 -90 0 0 {name=p82 lab=vcc} -xschem instance ../../../xschem_library/devices/rom3_array.sym 1190 -700 0 0 {name=xarr} -xschem instance ../../../xschem_library/devices/lab_pin.sym 1040 -710 0 0 {name=l13 lab=LDWL[511:0]} -xschem instance ../../../xschem_library/devices/lab_pin.sym 1040 -690 0 0 {name=l46 lab=vss} -xschem instance ../../../xschem_library/devices/lab_pin.sym 1340 -710 0 1 {name=l1 lab=LDBL[255:0]} -xschem instance ../../../xschem_library/devices/spice_probe.sym 1340 -830 0 0 {name=p3 analysis=tran} -xschem instance ../../../xschem_library/devices/spice_probe.sym 190 -850 0 0 {name=p13 analysis=tran} -xschem instance ../../../xschem_library/devices/lab_pin.sym 1670 -740 0 0 {name=l2 lab=LDWL[8:0]} -xschem instance ../../../xschem_library/devices/spice_probe.sym 1670 -740 0 0 {name=p46 analysis=tran} -xschem instance ../../../xschem_library/devices/lab_pin.sym 1670 -790 0 0 {name=l4 lab=LDBL[0,16,32,1,17,33,2,18,34]} -xschem instance ../../../xschem_library/devices/spice_probe.sym 1670 -790 0 0 {name=p91 analysis=tran} +xschem instance ../xschem_library/rom8k/rom2_coldec.sym 1190 -890 0 0 {name=xcdec[15:0]} +xschem instance ../xschem_library/devices/lab_pin.sym 1040 -910 0 0 {name=p377 lab=LDY1[15:0]} +xschem instance ../xschem_library/devices/lab_pin.sym 1040 -890 0 0 {name=p378 lab=LDBL[255:0]} +xschem instance ../xschem_library/devices/lab_pin.sym 1040 -870 0 0 {name=p381 lab=vss} +xschem instance ../xschem_library/devices/lab_pin.sym 1340 -910 0 1 {name=p382 lab=LDYMS[15:0]} +xschem instance ../xschem_library/rom8k/rom2_sa.sym 560 -390 0 0 {name=xsa[15:0]} +xschem instance ../xschem_library/devices/lab_pin.sym 710 -450 0 1 {name=p340 lab=LDQ[15:0]} +xschem instance ../xschem_library/devices/lab_pin.sym 410 -430 0 0 {name=p39 lab=LDYMS[15:0]} +xschem instance ../xschem_library/devices/lab_pin.sym 410 -350 0 0 {name=p26 lab=vccsa} +xschem instance ../xschem_library/devices/lab_pin.sym 410 -330 0 0 {name=p31 lab=vss} +xschem instance ../xschem_library/devices/lab_pin.sym 410 -410 0 0 {name=p40 lab=LDOE} +xschem instance ../xschem_library/devices/vsource.sym 90 -920 0 0 {name=vsa value=0} +xschem instance ../xschem_library/devices/lab_pin.sym 90 -950 0 0 {name=p44 lab=vcc} +xschem instance ../xschem_library/devices/lab_pin.sym 90 -890 0 0 {name=p45 lab=vccsa} +xschem instance ../xschem_library/devices/vsource.sym 190 -820 0 0 {name=vdec value=0} +xschem instance ../xschem_library/devices/lab_pin.sym 190 -850 0 0 {name=p48 lab=vcc} +xschem instance ../xschem_library/devices/lab_pin.sym 190 -790 0 0 {name=p49 lab=vccdec} +xschem instance ../xschem_library/devices/vsource.sym 90 -820 0 0 {name=vl value=0} +xschem instance ../xschem_library/devices/lab_pin.sym 90 -850 0 0 {name=p50 lab=vcc} +xschem instance ../xschem_library/devices/lab_pin.sym 90 -790 0 0 {name=p51 lab=vccl} +xschem instance ../xschem_library/devices/lab_pin.sym 410 -390 0 0 {name=p5 lab=LDPRECH} +xschem instance ../xschem_library/devices/lab_pin.sym 410 -370 0 0 {name=p11 lab=LDSAL} +xschem instance ../xschem_library/rom8k/rom2_addlatch.sym 1190 -490 0 0 {name=xlat} +xschem instance ../xschem_library/devices/lab_pin.sym 1340 -530 0 1 {name=p10 lab=LDEN_LAT} +xschem instance ../xschem_library/devices/lab_pin.sym 1340 -510 0 1 {name=p16 lab=LDAI[12:0]} +xschem instance ../xschem_library/devices/lab_pin.sym 1040 -530 0 0 {name=p17 lab=LDEN} +xschem instance ../xschem_library/devices/lab_pin.sym 1040 -490 0 0 {name=p19 lab=LDA[12:0]} +xschem instance ../xschem_library/devices/lab_pin.sym 1040 -470 0 0 {name=p21 lab=vccl} +xschem instance ../xschem_library/devices/lab_pin.sym 1040 -450 0 0 {name=p22 lab=vss} +xschem instance ../xschem_library/rom8k/rom2_ctrl.sym 1190 -360 0 0 {name=xctrl} +xschem instance ../xschem_library/devices/lab_pin.sym 1040 -420 0 0 {name=p27 lab=LDEN_LAT} +xschem instance ../xschem_library/devices/lab_pin.sym 1040 -400 0 0 {name=p28 lab=LDCP} +xschem instance ../xschem_library/devices/lab_pin.sym 1040 -360 0 0 {name=p29 lab=vss} +xschem instance ../xschem_library/devices/lab_pin.sym 1040 -380 0 0 {name=p30 lab=vccl} +xschem instance ../xschem_library/devices/lab_pin.sym 1340 -420 0 1 {name=p32 lab=LDPRECH} +xschem instance ../xschem_library/devices/lab_pin.sym 1340 -400 0 1 {name=p33 lab=LDSAL} +xschem instance ../xschem_library/devices/lab_pin.sym 1340 -380 0 1 {name=p34 lab=LDCP_ROWDEC} +xschem instance ../xschem_library/devices/lab_pin.sym 1340 -320 0 1 {name=p37 lab=LDCP_COL_B} +xschem instance ../xschem_library/devices/lab_pin.sym 1340 -340 0 1 {name=p36 lab=LDCP_ADDLAT_B} +xschem instance ../xschem_library/devices/lab_pin.sym 1040 -510 0 0 {name=p18 lab=LDCP_ADDLAT_B} +xschem instance ../xschem_library/devices/lab_pin.sym 1340 -360 0 1 {name=p8 lab=LDCP_SA} +xschem instance ../xschem_library/devices/lab_pin.sym 410 -450 0 0 {name=p35 lab=LDCP_SA} +xschem instance ../xschem_library/rom8k/rom2_predec3.sym 560 -520 0 0 {name=xcpre} +xschem instance ../xschem_library/devices/lab_pin.sym 410 -540 0 0 {name=p25 lab=LDAI[3:0]} +xschem instance ../xschem_library/devices/lab_pin.sym 410 -520 0 0 {name=p56 lab=vccdec} +xschem instance ../xschem_library/devices/lab_pin.sym 410 -500 0 0 {name=p57 lab=vss} +xschem instance ../xschem_library/devices/lab_pin.sym 710 -540 0 1 {name=p61 lab=LDY1[15:0]} +xschem instance ../xschem_library/devices/lab_pin.sym 150 -640 0 1 {name=p53 lab=LDL1X[15:0]} +xschem instance ../xschem_library/devices/lab_pin.sym 150 -560 0 1 {name=p54 lab=vss} +xschem instance ../xschem_library/devices/capa.sym 150 -610 0 0 {name=c1[15:0] m=1 value=210f} +xschem instance ../xschem_library/devices/lab_pin.sym 150 -400 0 1 {name=p62 lab=vss} +xschem instance ../xschem_library/devices/capa.sym 150 -450 0 0 {name=c2[3:0] m=1 value=120f} +xschem instance ../xschem_library/devices/lab_pin.sym 150 -480 0 1 {name=p63 lab=LDL2X[3:0]} +xschem instance ../xschem_library/devices/lab_pin.sym 10 -250 0 1 {name=p67 lab=vss} +xschem instance ../xschem_library/devices/capa.sym 10 -300 0 0 {name=c4[12:0] m=1 value=40f} +xschem instance ../xschem_library/devices/lab_pin.sym 10 -330 0 1 {name=p68 lab=LDAI[12:0]} +xschem instance ../xschem_library/devices/lab_pin.sym 10 -560 0 1 {name=p72 lab=vss} +xschem instance ../xschem_library/devices/capa.sym 10 -610 0 0 {name=c5[15:0] m=1 value=45f} +xschem instance ../xschem_library/devices/lab_pin.sym 10 -640 0 1 {name=p71 lab=LDY1[15:0]} +xschem instance ../xschem_library/rom8k/rom3_rowdec.sym 560 -790 0 0 {name=xrdec[31:0]} +xschem instance ../xschem_library/devices/lab_pin.sym 410 -800 0 0 {name=p1091 lab=LDL3X[7:0]*4} +xschem instance ../xschem_library/devices/lab_pin.sym 410 -840 0 0 {name=p1092 lab=LDL1X[15:0]} +xschem instance ../xschem_library/devices/lab_pin.sym 710 -840 0 1 {name=p1093 lab=LDWL[511:0]} +xschem instance ../xschem_library/devices/lab_pin.sym 410 -760 0 0 {name=p1094 lab=vss} +xschem instance ../xschem_library/devices/lab_pin.sym 410 -740 0 0 {name=p1095 lab=vccdec} +xschem instance ../xschem_library/devices/lab_pin.sym 410 -780 0 0 {name=p1096 lab=LDCP_ROWDEC} +xschem instance ../xschem_library/devices/lab_pin.sym 410 -820 0 0 {name=p1097 lab=8*LDL2X[3:0]} +xschem instance ../xschem_library/devices/lab_pin.sym 710 -700 0 1 {name=p1098 lab=LDL1X[15:0]} +xschem instance ../xschem_library/rom8k/rom2_predec1.sym 560 -680 0 0 {name=xrpre1} +xschem instance ../xschem_library/devices/lab_pin.sym 410 -700 0 0 {name=p1099 lab=LDAI[7:4]} +xschem instance ../xschem_library/devices/lab_pin.sym 410 -680 0 0 {name=p1101 lab=vccdec} +xschem instance ../xschem_library/devices/lab_pin.sym 410 -660 0 0 {name=p1102 lab=vss} +xschem instance ../xschem_library/rom8k/rom2_predec4.sym 560 -600 0 0 {name=xrpre2} +xschem instance ../xschem_library/devices/lab_pin.sym 410 -620 0 0 {name=p1103 lab=LDAI[12:8]} +xschem instance ../xschem_library/devices/lab_pin.sym 410 -600 0 0 {name=p1105 lab=vccdec} +xschem instance ../xschem_library/devices/lab_pin.sym 410 -580 0 0 {name=p1106 lab=vss} +xschem instance ../xschem_library/devices/lab_pin.sym 710 -620 0 1 {name=p1107 lab=LDL2X[3:0]} +xschem instance ../xschem_library/devices/lab_pin.sym 710 -600 0 1 {name=p1108 lab=LDL3X[7:0]} +xschem instance ../xschem_library/devices/lab_pin.sym 10 -400 0 1 {name=p4 lab=vss} +xschem instance ../xschem_library/devices/capa.sym 10 -450 0 0 {name=c3[7:0] m=1 value=120f} +xschem instance ../xschem_library/devices/lab_pin.sym 10 -480 0 1 {name=p0 lab=LDL3X[7:0]} +xschem instance ../xschem_library/devices/lab_pin.sym 1040 -810 0 0 {name=p23 lab=vccdec} +xschem instance ../xschem_library/rom8k/rom2_coldec_ref.sym 1190 -810 0 0 {name=xcdecref} +xschem instance ../xschem_library/devices/lab_pin.sym 1340 -830 0 1 {name=p41 lab=LDYMSREF} +xschem instance ../xschem_library/devices/lab_pin.sym 1040 -830 0 0 {name=p42 lab=LDBLREF} +xschem instance ../xschem_library/devices/lab_pin.sym 1340 -300 0 1 {name=p6 lab=LDYMSREF} +xschem instance ../xschem_library/devices/lab_pin.sym 1040 -790 0 0 {name=p12 lab=vss} +xschem instance ../xschem_library/devices/lab_pin.sym 1340 -620 0 1 {name=p9 lab=LDBLREF} +xschem instance ../xschem_library/rom8k/rom3_array_ref.sym 1190 -610 0 0 {name=xarr_ref} +xschem instance ../xschem_library/devices/lab_pin.sym 1040 -620 0 0 {name=p2 lab=LDWL[511:0]} +xschem instance ../xschem_library/devices/lab_pin.sym 1040 -600 0 0 {name=p14 lab=vss} +xschem instance ../xschem_library/rom8k/rom2_col_prech.sym 1190 -990 0 0 {name=xcpr[256:0]} +xschem instance ../xschem_library/devices/lab_pin.sym 1340 -1000 0 1 {name=p20 lab=LDBL[255:0],LDBLREF} +xschem instance ../xschem_library/devices/lab_pin.sym 1040 -1000 0 0 {name=p1 lab=LDCP_COL_B} +xschem instance ../xschem_library/devices/lab_pin.sym 1040 -980 0 0 {name=p38 lab=vss} +xschem instance ../xschem_library/devices/lab_pin.sym 1720 -410 0 1 {name=p47 lab=LDPRECH} +xschem instance ../xschem_library/devices/lab_pin.sym 1720 -330 0 1 {name=p52 lab=vss} +xschem instance ../xschem_library/devices/capa.sym 1720 -380 0 0 {name=c0 m=1 value=66f} +xschem instance ../xschem_library/devices/lab_pin.sym 1720 -590 0 1 {name=p55 lab=LDSAL} +xschem instance ../xschem_library/devices/lab_pin.sym 1720 -510 0 1 {name=p58 lab=vss} +xschem instance ../xschem_library/devices/capa.sym 1720 -560 0 0 {name=c6 m=1 value=34f} +xschem instance ../xschem_library/devices/lab_pin.sym 1540 -410 0 1 {name=p59 lab=LDCP_ROWDEC} +xschem instance ../xschem_library/devices/lab_pin.sym 1540 -330 0 1 {name=p60 lab=vss} +xschem instance ../xschem_library/devices/capa.sym 1540 -380 0 0 {name=c7 m=1 value=280f} +xschem instance ../xschem_library/devices/lab_pin.sym 1540 -590 0 1 {name=p64 lab=LDCP_SA} +xschem instance ../xschem_library/devices/lab_pin.sym 1540 -510 0 1 {name=p65 lab=vss} +xschem instance ../xschem_library/devices/capa.sym 1540 -560 0 0 {name=c8 m=1 value=44f} +xschem instance ../xschem_library/devices/lab_pin.sym 1720 -240 0 1 {name=p15 lab=LDCP_COL_B} +xschem instance ../xschem_library/devices/lab_pin.sym 1720 -160 0 1 {name=p24 lab=vss} +xschem instance ../xschem_library/devices/capa.sym 1720 -210 0 0 {name=c9 m=1 value=63f} +xschem instance ../xschem_library/devices/lab_pin.sym 1540 -240 0 1 {name=p43 lab=LDCP_ADDLAT_B} +xschem instance ../xschem_library/devices/lab_pin.sym 1540 -160 0 1 {name=p66 lab=vss} +xschem instance ../xschem_library/devices/capa.sym 1540 -210 0 0 {name=c10 m=1 value=12f} +xschem instance ../xschem_library/devices/spice_probe.sym 710 -450 2 1 {name=p125 analysis=tran} +xschem instance ../xschem_library/devices/spice_probe.sym 150 -640 0 0 {name=p69 analysis=tran} +xschem instance ../xschem_library/devices/spice_probe.sym 10 -640 0 0 {name=p70 analysis=tran} +xschem instance ../xschem_library/devices/spice_probe.sym 10 -480 0 0 {name=p73 analysis=tran} +xschem instance ../xschem_library/devices/spice_probe.sym 150 -480 0 0 {name=p74 analysis=tran} +xschem instance ../xschem_library/devices/spice_probe.sym 10 -330 0 0 {name=p75 analysis=tran} +xschem instance ../xschem_library/devices/spice_probe.sym 1540 -590 0 0 {name=p76 analysis=tran} +xschem instance ../xschem_library/devices/spice_probe.sym 1540 -410 0 0 {name=p83 analysis=tran} +xschem instance ../xschem_library/devices/spice_probe.sym 1540 -240 0 0 {name=p84 analysis=tran} +xschem instance ../xschem_library/devices/spice_probe.sym 1720 -240 0 0 {name=p85 analysis=tran} +xschem instance ../xschem_library/devices/spice_probe.sym 1720 -410 0 0 {name=p86 analysis=tran} +xschem instance ../xschem_library/devices/spice_probe.sym 1720 -590 0 0 {name=p87 analysis=tran} +xschem instance ../xschem_library/devices/spice_probe.sym 1340 -300 2 1 {name=p88 analysis=tran} +xschem instance ../xschem_library/devices/spice_probe.sym 1340 -530 0 0 {name=p89 analysis=tran} +xschem instance ../xschem_library/devices/spice_probe.sym 1340 -620 0 0 {name=p90 analysis=tran} +xschem instance ../xschem_library/devices/spice_probe.sym 1340 -910 0 0 {name=p93 analysis=tran} +xschem instance ../xschem_library/devices/lab_pin.sym 800 -350 0 0 {name=p94 lab=LDOE} +xschem instance ../xschem_library/devices/spice_probe.sym 800 -350 0 0 {name=p95 analysis=tran} +xschem instance ../xschem_library/devices/lab_pin.sym 800 -300 0 0 {name=p96 lab=LDCP} +xschem instance ../xschem_library/devices/spice_probe.sym 800 -300 0 0 {name=p97 analysis=tran} +xschem instance ../xschem_library/devices/lab_pin.sym 890 -300 0 0 {name=p98 lab=LDEN} +xschem instance ../xschem_library/devices/spice_probe.sym 890 -300 0 0 {name=p99 analysis=tran} +xschem instance ../xschem_library/devices/lab_pin.sym 1450 -40 0 0 {name=p100 lab=LDA[12:0]} +xschem instance ../xschem_library/devices/spice_probe.sym 1450 -40 0 0 {name=p101 analysis=tran} +xschem instance ../xschem_library/devices/opin.sym 290 -120 0 0 {name=p7 lab=LDQ[15:0]} +xschem instance ../xschem_library/devices/ipin.sym 210 -190 0 0 {name=p77 lab=LDA[12:0]} +xschem instance ../xschem_library/devices/ipin.sym 210 -170 0 0 {name=p78 lab=LDCP} +xschem instance ../xschem_library/devices/ipin.sym 210 -210 0 0 {name=p79 lab=LDEN} +xschem instance ../xschem_library/devices/ipin.sym 210 -150 0 0 {name=p80 lab=LDOE} +xschem instance ../xschem_library/devices/ipin.sym 210 -110 0 0 {name=p81 lab=vss} +xschem instance ../xschem_library/devices/ipin.sym 210 -90 0 0 {name=p82 lab=vcc} +xschem instance ../xschem_library/devices/rom3_array.sym 1190 -700 0 0 {name=xarr} +xschem instance ../xschem_library/devices/lab_pin.sym 1040 -710 0 0 {name=l13 lab=LDWL[511:0]} +xschem instance ../xschem_library/devices/lab_pin.sym 1040 -690 0 0 {name=l46 lab=vss} +xschem instance ../xschem_library/devices/lab_pin.sym 1340 -710 0 1 {name=l1 lab=LDBL[255:0]} +xschem instance ../xschem_library/devices/spice_probe.sym 1340 -830 0 0 {name=p3 analysis=tran} +xschem instance ../xschem_library/devices/spice_probe.sym 190 -850 0 0 {name=p13 analysis=tran} +xschem instance ../xschem_library/devices/lab_pin.sym 1670 -740 0 0 {name=l2 lab=LDWL[8:0]} +xschem instance ../xschem_library/devices/spice_probe.sym 1670 -740 0 0 {name=p46 analysis=tran} +xschem instance ../xschem_library/devices/lab_pin.sym 1670 -790 0 0 {name=l4 lab=LDBL[0,16,32,1,17,33,2,18,34]} +xschem instance ../xschem_library/devices/spice_probe.sym 1670 -790 0 0 {name=p91 analysis=tran} xschem save xschem exit closewindow \ No newline at end of file diff --git a/tests/create_save/tests/simple_inv.tcl b/tests/create_save/tests/simple_inv.tcl index f2552480..395b8e56 100644 --- a/tests/create_save/tests/simple_inv.tcl +++ b/tests/create_save/tests/simple_inv.tcl @@ -1,9 +1,9 @@ -xschem instance ../../../xschem_library/devices/nmos.sym 30 20 0 0 {name=MN1} -xschem instance ../../../xschem_library/devices/pmos.sym 30 -70 0 0 {name=MP1} -xschem instance ../../../xschem_library/devices/vdd.sym 50 -130 0 0 {name=VDD} -xschem instance ../../../xschem_library/devices/gnd.sym 50 80 0 0 {name=GND} -xschem instance ../../../xschem_library/devices/ipin.sym -40 -70 0 0 {lab=in} -xschem instance ../../../xschem_library/devices/opin.sym 110 -20 0 0 {lab=out} +xschem instance ../xschem_library/devices/nmos.sym 30 20 0 0 {name=MN1} +xschem instance ../xschem_library/devices/pmos.sym 30 -70 0 0 {name=MP1} +xschem instance ../xschem_library/devices/vdd.sym 50 -130 0 0 {name=VDD} +xschem instance ../xschem_library/devices/gnd.sym 50 80 0 0 {name=GND} +xschem instance ../xschem_library/devices/ipin.sym -40 -70 0 0 {lab=in} +xschem instance ../xschem_library/devices/opin.sym 110 -20 0 0 {lab=out} xschem wire 50 -40 50 -10 xschem wire 50 -20 110 -20 xschem wire 50 -130 50 -100 diff --git a/tests/netlisting.tcl b/tests/netlisting.tcl index e5b57ed4..b06d5150 100644 --- a/tests/netlisting.tcl +++ b/tests/netlisting.tcl @@ -36,17 +36,16 @@ set xschem_library_path "../xschem_library" proc netlisting {dir fn} { global xschem_library_path testname pathlist xschem_cmd - set fpath "$dir/$fn" if { [regexp {\.sch$} $fn ] } { - puts "Testing ($testname) $fpath" + puts "Testing ($testname) $dir/$fn" set output_dir $dir regsub -all $xschem_library_path $output_dir {} output_dir regsub {^/} $output_dir {} output_dir # Spice Netlist - run_xschem_netlist vhdl $output_dir $fn $fpath - run_xschem_netlist v $output_dir $fn $fpath - run_xschem_netlist tdx $output_dir $fn $fpath - run_xschem_netlist spice $output_dir $fn $fpath + run_xschem_netlist vhdl $output_dir $dir $fn + run_xschem_netlist v $output_dir $dir $fn + run_xschem_netlist tdx $output_dir $dir $fn + run_xschem_netlist spice $output_dir $dir $fn } } @@ -65,14 +64,15 @@ proc netlisting_dir {dir} { } } -proc run_xschem_netlist {type output_dir fn fpath} { +proc run_xschem_netlist {type output_dir dir fn} { global testname pathlist xschem_cmd num_fatals + set cwd [pwd] set fn_debug [join [list $output_dir , [regsub {\.} $fn {_}] "_${type}_debug.txt"] ""] regsub {./} $fn_debug {_} fn_debug set sch_name [regsub {\.sch} $fn {}] set fn_netlist [join [list $sch_name "." $type] ""] - set output [join [list $testname / results / $fn_debug] ""] - set netlist_output_dir [join [list $testname / results ] ""] + set output [join [list $cwd / $testname / results / $fn_debug] ""] + set netlist_output_dir [join [list $cwd / $testname / results ] ""] puts "Output: $fn_debug" set opt s if {$type eq "vhdl"} {set opt V} @@ -80,7 +80,10 @@ proc run_xschem_netlist {type output_dir fn fpath} { if {$type eq "tdx"} {set opt t} set netlist_failed 0 ;# not used here but might be used in the future. set general_failure 0 - set catch_status [catch {eval exec {$xschem_cmd $fpath -q -x -r -$opt -o $netlist_output_dir -n 2> $output}} msg opt] + + cd $dir + set catch_status [catch {eval exec {$xschem_cmd $fn -q -x -r -$opt -o $netlist_output_dir -n 2> $output}} msg opt] + cd $cwd if {$catch_status} { set error_code [dict get $opt -errorcode] # in case of child process error $error_code will be {CHILDSTATUS 11731 10}, second item is processID, @@ -92,7 +95,7 @@ proc run_xschem_netlist {type output_dir fn fpath} { } } if {$general_failure} { - puts "FATAL: $xschem_cmd $fpath -q -x -r -$opt -o $netlist_output_dir -n 2> $output : $msg" + puts "FATAL: $xschem_cmd $fn -q -x -r -$opt -o $netlist_output_dir -n 2> $output : $msg" incr num_fatals } else { lappend pathlist $fn_debug diff --git a/tests/open_close.tcl b/tests/open_close.tcl index c03e21f2..860177e0 100644 --- a/tests/open_close.tcl +++ b/tests/open_close.tcl @@ -46,8 +46,12 @@ proc open_close {dir fn} { set fn_debug [join [list $output_dir , [regsub {\.} $fn {_}] "_debug.txt"] ""] set output [join [list $testname / results / $fn_debug] ""] puts "Output: $fn_debug" - if {[catch {eval exec {$xschem_cmd $fpath -q -x -r -d 1 2> $output}} msg]} { - puts "FATAL: $xschem_cmd $fpath -q -x -r -d 1 2> $output : $msg" + set cwd [pwd] + cd $dir + set catch_status [catch {eval exec {$xschem_cmd $fn -q -x -r -d 1 2> $cwd/$output}} msg] + cd $cwd + if {$catch_status} { + puts "FATAL: $xschem_cmd $fn -q -x -r -d 1 2> $cwd/$output : $msg" incr num_fatals } else { lappend pathlist $fn_debug diff --git a/tests/test_utility.tcl b/tests/test_utility.tcl index 4cb9a9c9..c22f4bbb 100644 --- a/tests/test_utility.tcl +++ b/tests/test_utility.tcl @@ -21,11 +21,7 @@ # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA set OS [lindex $tcl_platform(os) 0] -if {$::OS == "Windows"} { - set xschem_cmd "xschem" -} else { - set xschem_cmd "../src/xschem" -} +set xschem_cmd "xschem" # From Glenn Jackman (Stack Overflow answer) proc comp_file {file1 file2} {