Stefan Schippers
11/21/2022, 10:49 PMD[1..3]
is one of the possible syntaxes, and it expands to D1,D2,D3
, However if you use D[1:3]
it expands to D[1],D[2],D[3]
.
This latter notation is OK for spice and Verilog.
I wil certainly add an option to have more Openlane friendly verilog netlists. Some things can already be done, some others probably require little changes in the program.Micah Tseng
11/21/2022, 11:09 PMD[1:3]
with ngspice and it wasn’t happy with it….I might have done something wrong though. When I switch to D[1..3]
it worked fine.Stefan Schippers
11/21/2022, 11:41 PMnetlist_options.sym
component to instruct xschem to replace [
and ]
with two different characters (x
and x
in the example):Micah Tseng
11/21/2022, 11:43 PMMicah Tseng
11/21/2022, 11:43 PMStefan Schippers
11/21/2022, 11:43 PMMicah Tseng
11/21/2022, 11:44 PMStefan Schippers
11/21/2022, 11:45 PMMicah Tseng
11/21/2022, 11:46 PMnetlist_options.sym
but it would have saved a ton of headache.Micah Tseng
11/21/2022, 11:47 PMStefan Schippers
11/21/2022, 11:47 PMMicah Tseng
11/22/2022, 12:04 AMStefan Schippers
11/22/2022, 5:04 PMextra
and verilog_extra
attribute description in the manual.
TL;DR:
if VGND, VPWR, VPB, VNB are not listed in symbol verilog_extra attribute they will not be netlisted.
if VGND, VPWR, VPB, VNB, prefix are listed in symbol extra attribute they will NOT be netlisted as instance parameters.
Now a nand standard cell will be netlisted as:
sky130_fd_sc_hd__nand2_1
x1 (
.A( A ),
.B( B ),
.Y( IX )
);
Micah Tseng
11/23/2022, 12:33 AM