-
Notifications
You must be signed in to change notification settings - Fork 30
Open
Description
Up to netgen 1.5.269, it's possible to call a verilog module from a spice netlist. Here are the results of the verilog cell compare.
Class XL_brownout_dig (0): Merged 155 parallel devices.
Class brownout_dig (1): Merged 155 parallel devices.
Subcircuit summary:
Circuit 1: XL_brownout_dig |Circuit 2: brownout_dig
----------------------------------------------------------------------------------|----------------------------------------------------------------------------------
XL_sky130_fd_sc_hd__decap_6 (4->1) |sky130_fd_sc_hd__decap_6 (4->1)
XL_sky130_fd_sc_hd__fill_2 (22->1) |sky130_fd_sc_hd__fill_2 (22->1)
XL_sky130_fd_sc_hd__and3_1 (2) |sky130_fd_sc_hd__and3_1 (2)
XL_sky130_fd_sc_hd__fill_1 (30->1) |sky130_fd_sc_hd__fill_1 (30->1)
XL_sky130_fd_sc_hd__inv_2 (4) |sky130_fd_sc_hd__inv_2 (4)
XL_sky130_fd_sc_hd__dfstp_1 (13) |sky130_fd_sc_hd__dfstp_1 (13)
XL_sky130_fd_sc_hd__clkbuf_4 (9) |sky130_fd_sc_hd__clkbuf_4 (9)
XL_sky130_fd_sc_hd__buf_2 (12) |sky130_fd_sc_hd__buf_2 (12)
XL_sky130_fd_sc_hd__tapvpwrvgnd_1 (27->1) |sky130_fd_sc_hd__tapvpwrvgnd_1 (27->1)
XL_sky130_fd_sc_hd__decap_3 (36->1) |sky130_fd_sc_hd__decap_3 (36->1)
XL_sky130_fd_sc_hd__and3b_1 (7) |sky130_fd_sc_hd__and3b_1 (7)
XL_sky130_ef_sc_hd__decap_12 (17->1) |sky130_ef_sc_hd__decap_12 (17->1)
XL_sky130_fd_sc_hd__decap_4 (13->1) |sky130_fd_sc_hd__decap_4 (13->1)
XL_sky130_fd_sc_hd__decap_8 (14->1) |sky130_fd_sc_hd__decap_8 (14->1)
XL_sky130_fd_sc_hd__a21o_1 (2) |sky130_fd_sc_hd__a21o_1 (2)
XL_sky130_fd_sc_hd__conb_1 (2) |sky130_fd_sc_hd__conb_1 (2)
XL_sky130_fd_sc_hd__o21a_1 (1) |sky130_fd_sc_hd__o21a_1 (1)
XL_sky130_fd_sc_hd__xor2_1 (3) |sky130_fd_sc_hd__xor2_1 (3)
XL_sky130_fd_sc_hd__a21oi_1 (10) |sky130_fd_sc_hd__a21oi_1 (10)
XL_sky130_fd_sc_hd__xnor2_1 (2) |sky130_fd_sc_hd__xnor2_1 (2)
XL_sky130_fd_sc_hd__nand2_1 (4) |sky130_fd_sc_hd__nand2_1 (4)
XL_sky130_fd_sc_hd__or2_1 (2) |sky130_fd_sc_hd__or2_1 (2)
XL_sky130_fd_sc_hd__buf_1 (2) |sky130_fd_sc_hd__buf_1 (2)
XL_sky130_fd_sc_hd__nor3b_1 (6) |sky130_fd_sc_hd__nor3b_1 (6)
XL_sky130_fd_sc_hd__clkbuf_1 (3) |sky130_fd_sc_hd__clkbuf_1 (3)
XL_sky130_fd_sc_hd__nor2_2 (1) |sky130_fd_sc_hd__nor2_2 (1)
XL_sky130_fd_sc_hd__clkbuf_2 (1) |sky130_fd_sc_hd__clkbuf_2 (1)
XL_sky130_fd_sc_hd__and2_1 (4) |sky130_fd_sc_hd__and2_1 (4)
XL_sky130_fd_sc_hd__a31o_1 (3) |sky130_fd_sc_hd__a31o_1 (3)
XL_sky130_fd_sc_hd__nor3_1 (2) |sky130_fd_sc_hd__nor3_1 (2)
XL_sky130_fd_sc_hd__or3b_1 (1) |sky130_fd_sc_hd__or3b_1 (1)
XL_sky130_fd_sc_hd__and2b_1 (1) |sky130_fd_sc_hd__and2b_1 (1)
XL_sky130_fd_sc_hd__dlymetal6s2s_1 (6) |sky130_fd_sc_hd__dlymetal6s2s_1 (6)
XL_sky130_fd_sc_hd__and4_2 (1) |sky130_fd_sc_hd__and4_2 (1)
XL_sky130_fd_sc_hd__clkbuf_16 (3) |sky130_fd_sc_hd__clkbuf_16 (3)
XL_sky130_fd_sc_hd__o31a_1 (1) |sky130_fd_sc_hd__o31a_1 (1)
XL_sky130_fd_sc_hd__dfrtp_1 (3) |sky130_fd_sc_hd__dfrtp_1 (3)
XL_sky130_fd_sc_hd__and4_1 (2) |sky130_fd_sc_hd__and4_1 (2)
XL_sky130_fd_sc_hd__a21boi_1 (1) |sky130_fd_sc_hd__a21boi_1 (1)
XL_sky130_fd_sc_hd__dlygate4sd3_1 (4) |sky130_fd_sc_hd__dlygate4sd3_1 (4)
XL_sky130_fd_sc_hd__a22o_1 (1) |sky130_fd_sc_hd__a22o_1 (1)
XL_sky130_fd_sc_hd__nor2_1 (1) |sky130_fd_sc_hd__nor2_1 (1)
XL_sky130_fd_sc_hd__nand2b_1 (1) |sky130_fd_sc_hd__nand2b_1 (1)
Number of devices: 129 |Number of devices: 129
Number of nets: 138 |Number of nets: 138
---------------------------------------------------------------------------------------------------------------------------------------------------------------------
Netlists match uniquely.
Subcircuit pins:
Circuit 1: XL_brownout_dig |Circuit 2: brownout_dig
----------------------------------------------------------------------------------|----------------------------------------------------------------------------------
osc_ck |osc_ck
dcomp |dcomp
ena |ena
force_ena_rc_osc |force_ena_rc_osc
force_dis_rc_osc |force_dis_rc_osc
force_short_oneshot |force_short_oneshot
brout_filt |brout_filt
otrip[2] |otrip[2]
vtrip[2] |vtrip[2]
otrip[1] |otrip[1]
vtrip[0] |vtrip[0]
otrip[0] |otrip[0]
vtrip[1] |vtrip[1]
otrip_decoded[1] |otrip_decoded[1]
otrip_decoded[2] |otrip_decoded[2]
otrip_decoded[4] |otrip_decoded[4]
otrip_decoded[0] |otrip_decoded[0]
osc_ena |osc_ena
outb_unbuf |outb_unbuf
otrip_decoded[7] |otrip_decoded[7]
otrip_decoded[3] |otrip_decoded[3]
otrip_decoded[5] |otrip_decoded[5]
otrip_decoded[6] |otrip_decoded[6]
timed_out |timed_out
vtrip_decoded[3] |vtrip_decoded[3]
vtrip_decoded[5] |vtrip_decoded[5]
vtrip_decoded[6] |vtrip_decoded[6]
vtrip_decoded[1] |vtrip_decoded[1]
vtrip_decoded[2] |vtrip_decoded[2]
vtrip_decoded[4] |vtrip_decoded[4]
vtrip_decoded[0] |vtrip_decoded[0]
vtrip_decoded[7] |vtrip_decoded[7]
VGND |VGND
VPWR |VPWR
---------------------------------------------------------------------------------------------------------------------------------------------------------------------
Cell pin lists are equivalent.
Device classes XL_brownout_dig and brownout_dig are equivalent.
From netgen 1.5.270 these are the results
Class XL_brownout_dig (0): Merged 155 parallel devices.
Class brownout_dig (1): Merged 155 parallel devices.
Subcircuit summary:
Circuit 1: XL_brownout_dig |Circuit 2: brownout_dig
----------------------------------------------------------------------------------|----------------------------------------------------------------------------------
XL_sky130_fd_sc_hd__decap_6 (4->1) |sky130_fd_sc_hd__decap_6 (4->1)
XL_sky130_fd_sc_hd__fill_2 (22->1) |sky130_fd_sc_hd__fill_2 (22->1)
XL_sky130_fd_sc_hd__and3_1 (2) |sky130_fd_sc_hd__and3_1 (2)
XL_sky130_fd_sc_hd__fill_1 (30->1) |sky130_fd_sc_hd__fill_1 (30->1)
XL_sky130_fd_sc_hd__inv_2 (4) |sky130_fd_sc_hd__inv_2 (4)
XL_sky130_fd_sc_hd__dfstp_1 (13) |sky130_fd_sc_hd__dfstp_1 (13)
XL_sky130_fd_sc_hd__clkbuf_4 (9) |sky130_fd_sc_hd__clkbuf_4 (9)
XL_sky130_fd_sc_hd__buf_2 (12) |sky130_fd_sc_hd__buf_2 (12)
XL_sky130_fd_sc_hd__tapvpwrvgnd_1 (27->1) |sky130_fd_sc_hd__tapvpwrvgnd_1 (27->1)
XL_sky130_fd_sc_hd__decap_3 (36->1) |sky130_fd_sc_hd__decap_3 (36->1)
XL_sky130_fd_sc_hd__and3b_1 (7) |sky130_fd_sc_hd__and3b_1 (7)
XL_sky130_ef_sc_hd__decap_12 (17->1) |sky130_ef_sc_hd__decap_12 (17->1)
XL_sky130_fd_sc_hd__decap_4 (13->1) |sky130_fd_sc_hd__decap_4 (13->1)
XL_sky130_fd_sc_hd__decap_8 (14->1) |sky130_fd_sc_hd__decap_8 (14->1)
XL_sky130_fd_sc_hd__a21o_1 (2) |sky130_fd_sc_hd__a21o_1 (2)
XL_sky130_fd_sc_hd__conb_1 (2) |sky130_fd_sc_hd__conb_1 (2)
XL_sky130_fd_sc_hd__o21a_1 (1) |sky130_fd_sc_hd__o21a_1 (1)
XL_sky130_fd_sc_hd__xor2_1 (3) |sky130_fd_sc_hd__xor2_1 (3)
XL_sky130_fd_sc_hd__a21oi_1 (10) |sky130_fd_sc_hd__a21oi_1 (10)
XL_sky130_fd_sc_hd__xnor2_1 (2) |sky130_fd_sc_hd__xnor2_1 (2)
XL_sky130_fd_sc_hd__nand2_1 (4) |sky130_fd_sc_hd__nand2_1 (4)
XL_sky130_fd_sc_hd__or2_1 (2) |sky130_fd_sc_hd__or2_1 (2)
XL_sky130_fd_sc_hd__buf_1 (2) |sky130_fd_sc_hd__buf_1 (2)
XL_sky130_fd_sc_hd__nor3b_1 (6) |sky130_fd_sc_hd__nor3b_1 (6)
XL_sky130_fd_sc_hd__clkbuf_1 (3) |sky130_fd_sc_hd__clkbuf_1 (3)
XL_sky130_fd_sc_hd__nor2_2 (1) |sky130_fd_sc_hd__nor2_2 (1)
XL_sky130_fd_sc_hd__clkbuf_2 (1) |sky130_fd_sc_hd__clkbuf_2 (1)
XL_sky130_fd_sc_hd__and2_1 (4) |sky130_fd_sc_hd__and2_1 (4)
XL_sky130_fd_sc_hd__a31o_1 (3) |sky130_fd_sc_hd__a31o_1 (3)
XL_sky130_fd_sc_hd__nor3_1 (2) |sky130_fd_sc_hd__nor3_1 (2)
XL_sky130_fd_sc_hd__or3b_1 (1) |sky130_fd_sc_hd__or3b_1 (1)
XL_sky130_fd_sc_hd__and2b_1 (1) |sky130_fd_sc_hd__and2b_1 (1)
XL_sky130_fd_sc_hd__dlymetal6s2s_1 (6) |sky130_fd_sc_hd__dlymetal6s2s_1 (6)
XL_sky130_fd_sc_hd__and4_2 (1) |sky130_fd_sc_hd__and4_2 (1)
XL_sky130_fd_sc_hd__clkbuf_16 (3) |sky130_fd_sc_hd__clkbuf_16 (3)
XL_sky130_fd_sc_hd__o31a_1 (1) |sky130_fd_sc_hd__o31a_1 (1)
XL_sky130_fd_sc_hd__dfrtp_1 (3) |sky130_fd_sc_hd__dfrtp_1 (3)
XL_sky130_fd_sc_hd__and4_1 (2) |sky130_fd_sc_hd__and4_1 (2)
XL_sky130_fd_sc_hd__a21boi_1 (1) |sky130_fd_sc_hd__a21boi_1 (1)
XL_sky130_fd_sc_hd__dlygate4sd3_1 (4) |sky130_fd_sc_hd__dlygate4sd3_1 (4)
XL_sky130_fd_sc_hd__a22o_1 (1) |sky130_fd_sc_hd__a22o_1 (1)
XL_sky130_fd_sc_hd__nor2_1 (1) |sky130_fd_sc_hd__nor2_1 (1)
XL_sky130_fd_sc_hd__nand2b_1 (1) |sky130_fd_sc_hd__nand2b_1 (1)
Number of devices: 129 |Number of devices: 129
Number of nets: 138 |Number of nets: 138
---------------------------------------------------------------------------------------------------------------------------------------------------------------------
Netlists match uniquely with port errors.
Subcircuit pins:
Circuit 1: XL_brownout_dig |Circuit 2: brownout_dig
----------------------------------------------------------------------------------|----------------------------------------------------------------------------------
osc_ck |osc_ck
dcomp |dcomp
ena |ena
force_ena_rc_osc |force_ena_rc_osc
force_dis_rc_osc |force_dis_rc_osc
force_short_oneshot |force_short_oneshot
brout_filt |brout_filt
otrip[2] |otrip[2]
vtrip[2] |vtrip[2]
otrip[1] |otrip[1]
vtrip[0] |vtrip[0]
otrip[0] |otrip[0]
vtrip[1] |vtrip[1]
otrip_decoded[1] |otrip_decoded[1]
otrip_decoded[2] |otrip_decoded[2]
otrip_decoded[4] |otrip_decoded[4]
otrip_decoded[0] |otrip_decoded[0]
osc_ena |osc_ena
outb_unbuf |outb_unbuf
otrip_decoded[7] |otrip_decoded[7]
otrip_decoded[3] |otrip_decoded[3]
otrip_decoded[5] |otrip_decoded[5]
otrip_decoded[6] |otrip_decoded[6]
timed_out |timed_out
vtrip_decoded[3] |vtrip_decoded[3]
vtrip_decoded[5] |vtrip_decoded[5]
vtrip_decoded[6] |vtrip_decoded[6]
vtrip_decoded[1] |vtrip_decoded[1]
vtrip_decoded[2] |vtrip_decoded[2]
vtrip_decoded[4] |vtrip_decoded[4]
vtrip_decoded[0] |vtrip_decoded[0]
vtrip_decoded[7] |vtrip_decoded[7]
VGND |VGND
VPWR |VPWR
(no matching pin) |proxy1
(no matching pin) |proxy2
(no matching pin) |proxy3
(no matching pin) |proxy4
(no matching pin) |proxy5
(no matching pin) |proxy6
(no matching pin) |proxy7
(no matching pin) |proxy8
(no matching pin) |proxy9
(no matching pin) |proxy10
(no matching pin) |proxy11
(no matching pin) |proxy12
(no matching pin) |proxy13
(no matching pin) |proxy14
(no matching pin) |proxy15
(no matching pin) |proxy16
(no matching pin) |proxy17
(no matching pin) |proxy18
(no matching pin) |proxy19
(no matching pin) |proxy20
(no matching pin) |proxy21
(no matching pin) |proxy22
(no matching pin) |proxy23
(no matching pin) |proxy24
(no matching pin) |proxy25
(no matching pin) |proxy26
(no matching pin) |proxy27
(no matching pin) |proxy28
(no matching pin) |proxy29
(no matching pin) |proxy30
(no matching pin) |proxy31
(no matching pin) |proxy32
(no matching pin) |proxy33
(no matching pin) |proxy34
---------------------------------------------------------------------------------------------------------------------------------------------------------------------
Cell pin lists are equivalent.
Device classes XL_brownout_dig and brownout_dig are equivalent.
Flattening non-matched subcircuits XL_brownout_dig brownout_dig
The proxy pins are causing a mismatch.
The screen output also has this relevant info
Verilog placeholder module brownout_dig replaced by module definition
Subcircuit pins:
Circuit 1: _PLACEHOLDER_ |Circuit 2: brownout_dig
-------------------------------------------|-------------------------------------------
(no matching pin) |1
(no matching pin) |2
(no matching pin) |3
(no matching pin) |4
(no matching pin) |5
(no matching pin) |6
(no matching pin) |7
(no matching pin) |8
(no matching pin) |9
(no matching pin) |10
(no matching pin) |11
(no matching pin) |12
(no matching pin) |13
(no matching pin) |14
(no matching pin) |15
(no matching pin) |16
(no matching pin) |17
(no matching pin) |18
(no matching pin) |19
(no matching pin) |20
(no matching pin) |21
(no matching pin) |22
(no matching pin) |23
(no matching pin) |24
(no matching pin) |25
(no matching pin) |26
(no matching pin) |27
(no matching pin) |28
(no matching pin) |29
(no matching pin) |30
(no matching pin) |31
(no matching pin) |32
(no matching pin) |33
(no matching pin) |34
brout_filt |(no matching pin)
dcomp |(no matching pin)
ena |(no matching pin)
force_dis_rc_osc |(no matching pin)
force_ena_rc_osc |(no matching pin)
force_short_oneshot |(no matching pin)
osc_ck |(no matching pin)
osc_ena |(no matching pin)
outb_unbuf |(no matching pin)
timed_out |(no matching pin)
VPWR |(no matching pin)
VGND |(no matching pin)
otrip[2] |(no matching pin)
otrip[1] |(no matching pin)
otrip[0] |(no matching pin)
otrip_decoded[7] |(no matching pin)
otrip_decoded[6] |(no matching pin)
otrip_decoded[5] |(no matching pin)
otrip_decoded[4] |(no matching pin)
otrip_decoded[3] |(no matching pin)
otrip_decoded[2] |(no matching pin)
otrip_decoded[1] |(no matching pin)
otrip_decoded[0] |(no matching pin)
vtrip[2] |(no matching pin)
vtrip[1] |(no matching pin)
vtrip[0] |(no matching pin)
vtrip_decoded[7] |(no matching pin)
vtrip_decoded[6] |(no matching pin)
vtrip_decoded[5] |(no matching pin)
vtrip_decoded[4] |(no matching pin)
vtrip_decoded[3] |(no matching pin)
vtrip_decoded[2] |(no matching pin)
vtrip_decoded[1] |(no matching pin)
vtrip_decoded[0] |(no matching pin)
---------------------------------------------------------------------------------------
Here's a test case.
test-mixed-signal.tgz
tar xzf test-mixed-signal.tgz
cd test-mixed-signal
netgen -batch source lvs.script 2>&1 | tee lvs.log
Metadata
Metadata
Assignees
Labels
No labels