Zeyi Wang
11/08/2022, 6:06 PMStefan Schippers
11/08/2022, 10:54 PMStefan Schippers
11/08/2022, 10:57 PMAmit Varde
11/08/2022, 11:25 PMAmit Varde
11/08/2022, 11:25 PMMitch Bailey
11/09/2022, 12:30 AMspicevision
, which I use daily and highly recommend.Zeyi Wang
11/09/2022, 12:37 AMZeyi Wang
11/09/2022, 12:40 AMZeyi Wang
11/09/2022, 12:40 AMMitch Bailey
11/09/2022, 1:09 AMHarald Pretl
11/09/2022, 7:02 AMStefan Schippers
11/09/2022, 9:56 AMx5 IY B VSS VSS VCC VCC net2 sky130_fd_sc_hd__nor2b_1
. then a file is included where the subcircuit is defined as a netlist:
.include /home/schippes/share/pdk/sky130A/libs.ref/sky130_fd_sc_hd/spice/sky130_fd_sc_hd.spice
where the file contains the nor2b_1 cell:
...
...
.subckt sky130_fd_sc_hd__nor2b_1 A B_N VGND VNB VPB VPWR Y
X0 a_74_47# B_N VPWR VPB sky130_fd_pr__pfet_01v8_hvt w=420000u l=150000u
X1 Y a_74_47# VGND VNB sky130_fd_pr__nfet_01v8 w=650000u l=150000u
X2 VGND A Y VNB sky130_fd_pr__nfet_01v8 w=650000u l=150000u
X3 a_74_47# B_N VGND VNB sky130_fd_pr__nfet_01v8 w=420000u l=150000u
X4 VPWR A a_265_297# VPB sky130_fd_pr__pfet_01v8_hvt w=1e+06u l=150000u
X5 a_265_297# a_74_47# Y VPB sky130_fd_pr__pfet_01v8_hvt w=1e+06u l=150000u
.ends
...
...
The first image shows a opamp symbol with corresponding schematic (on the right):
By adding a spice_sym_def
attribute to the symbol (second picture) xschem will include the specified file instead of netlisting the sub-schematic.
When including a netlist you must double check the port order of the instance call generated by xschem when doing the netlist matches the port order of the netlist subcircuit.
Another way to avoid netlisting a sub schematic is to descend onto a symbol and change type=subcircuit
to type=primitive
. Primitives will be considered by xschem as terminal symbols, and no sub-schematic (if any) is included in the netlist. It is your duty to include a file with the definition of the block. This is very similar to compiling a program that uses a function defined in another file. You must tell the compiler where this file is to be able to generate an executable program.Stefan Schippers
11/09/2022, 10:31 AMStefan Schippers
11/09/2022, 11:01 AMasg
, automatic schematic generator) converter mentored by @Tim Edwards was really a nice project. Unfortunately student projects often go to abandonware and bitrot as soon as students complete their assigned work.Mitch Bailey
11/09/2022, 1:13 PMTim Edwards
11/09/2022, 1:47 PMHarald Pretl
11/09/2022, 2:54 PMnetlistsvg
did (using elkjs
). It produces quite nice-looking digital circuits, and the analog ones seem OK, but of course, there is a long way to something like SpiceVision.Amit Varde
11/09/2022, 6:58 PMZeyi Wang
11/09/2022, 10:55 PMPhilipp GĂĽhring
11/15/2022, 2:29 AMPhilipp GĂĽhring
11/15/2022, 2:32 AMZeyi Wang
11/15/2022, 8:00 PMEmil J Tywoniak
11/21/2022, 6:27 PMLinen is a search-engine friendly community platform. We offer integrations with existing Slack/Discord communities and make those conversations Google-searchable.
Powered by