mirror of https://github.com/efabless/caravel.git
Two more changes: (1) Correction to chip_io_alt.v RTL verilog to
match what was done earlier on chip_io.v, and (2) Corrected a set of four labels in chip_io_alt.mag which had been rotated, causing an error in LVS.
This commit is contained in:
parent
624317bc3f
commit
489bddcf98
2336
mag/chip_io_alt.mag
2336
mag/chip_io_alt.mag
File diff suppressed because it is too large
Load Diff
|
@ -159,73 +159,58 @@ module chip_io_alt #(
|
|||
|
||||
sky130_ef_io__vddio_hvc_clamped_pad \mgmt_vddio_hvclamp_pad[0] (
|
||||
`MGMT_ABUTMENT_PINS
|
||||
`ifdef TOP_ROUTING
|
||||
.VDDIO(vddio)
|
||||
`else
|
||||
,.VDDIO_PAD(vddio_pad)
|
||||
`ifndef TOP_ROUTING
|
||||
.VDDIO_PAD(vddio_pad)
|
||||
`endif
|
||||
);
|
||||
|
||||
// lies in user area 2
|
||||
sky130_ef_io__vddio_hvc_clamped_pad \mgmt_vddio_hvclamp_pad[1] (
|
||||
`USER2_ABUTMENT_PINS
|
||||
`ifdef TOP_ROUTING
|
||||
.VDDIO(vddio)
|
||||
`else
|
||||
,.VDDIO_PAD(vddio_pad2)
|
||||
`ifndef TOP_ROUTING
|
||||
.VDDIO_PAD(vddio_pad2)
|
||||
`endif
|
||||
);
|
||||
|
||||
sky130_ef_io__vdda_hvc_clamped_pad mgmt_vdda_hvclamp_pad (
|
||||
`MGMT_ABUTMENT_PINS
|
||||
`ifdef TOP_ROUTING
|
||||
.VDDA(vdda)
|
||||
`else
|
||||
,.VDDA_PAD(vdda_pad)
|
||||
`endif );
|
||||
`ifndef TOP_ROUTING
|
||||
.VDDA_PAD(vdda_pad)
|
||||
`endif
|
||||
);
|
||||
|
||||
sky130_ef_io__vccd_lvc_clamped_pad mgmt_vccd_lvclamp_pad (
|
||||
`MGMT_ABUTMENT_PINS
|
||||
`ifdef TOP_ROUTING
|
||||
.VCCD(vccd)
|
||||
`else
|
||||
,.VCCD_PAD(vccd_pad)
|
||||
`ifndef TOP_ROUTING
|
||||
.VCCD_PAD(vccd_pad)
|
||||
`endif
|
||||
);
|
||||
|
||||
sky130_ef_io__vssio_hvc_clamped_pad \mgmt_vssio_hvclamp_pad[0] (
|
||||
`MGMT_ABUTMENT_PINS
|
||||
`ifdef TOP_ROUTING
|
||||
.VSSIO(vssio)
|
||||
`else
|
||||
,.VSSIO_PAD(vssio_pad)
|
||||
`ifndef TOP_ROUTING
|
||||
.VSSIO_PAD(vssio_pad)
|
||||
`endif
|
||||
);
|
||||
|
||||
sky130_ef_io__vssio_hvc_clamped_pad \mgmt_vssio_hvclamp_pad[1] (
|
||||
`USER2_ABUTMENT_PINS
|
||||
`ifdef TOP_ROUTING
|
||||
.VSSIO(vssio)
|
||||
`else
|
||||
,.VSSIO_PAD(vssio_pad2)
|
||||
`ifndef TOP_ROUTING
|
||||
.VSSIO_PAD(vssio_pad2)
|
||||
`endif
|
||||
);
|
||||
|
||||
sky130_ef_io__vssa_hvc_clamped_pad mgmt_vssa_hvclamp_pad (
|
||||
`MGMT_ABUTMENT_PINS
|
||||
`ifdef TOP_ROUTING
|
||||
.VSSA(vssa)
|
||||
`else
|
||||
,.VSSA_PAD(vssa_pad)
|
||||
`ifndef TOP_ROUTING
|
||||
.VSSA_PAD(vssa_pad)
|
||||
`endif
|
||||
);
|
||||
|
||||
sky130_ef_io__vssd_lvc_clamped_pad mgmt_vssd_lvclamp_pad (
|
||||
`MGMT_ABUTMENT_PINS
|
||||
`ifdef TOP_ROUTING
|
||||
.VSSD(vssd)
|
||||
`else
|
||||
,.VSSD_PAD(vssd_pad)
|
||||
`ifndef TOP_ROUTING
|
||||
.VSSD_PAD(vssd_pad)
|
||||
`endif
|
||||
);
|
||||
|
||||
|
@ -234,57 +219,47 @@ module chip_io_alt #(
|
|||
|
||||
sky130_ef_io__vdda_hvc_clamped_pad \user1_vdda_hvclamp_pad[0] (
|
||||
`USER1_ABUTMENT_PINS
|
||||
`ifdef TOP_ROUTING
|
||||
.VDDA(vdda1)
|
||||
`else
|
||||
,.VDDA_PAD(vdda1_pad)
|
||||
`ifndef TOP_ROUTING
|
||||
.VDDA_PAD(vdda1_pad)
|
||||
`endif
|
||||
);
|
||||
|
||||
sky130_ef_io__vdda_hvc_clamped_pad \user1_vdda_hvclamp_pad[1] (
|
||||
`USER1_ABUTMENT_PINS
|
||||
`ifdef TOP_ROUTING
|
||||
.VDDA(vdda1)
|
||||
`else
|
||||
,.VDDA_PAD(vdda1_pad2)
|
||||
`ifndef TOP_ROUTING
|
||||
.VDDA_PAD(vdda1_pad2)
|
||||
`endif
|
||||
);
|
||||
|
||||
sky130_ef_io__vccd_lvc_clamped3_pad user1_vccd_lvclamp_pad (
|
||||
`USER1_ABUTMENT_PINS
|
||||
`ifdef TOP_ROUTING
|
||||
.VCCD1(vccd1),
|
||||
.VSSD1(vssd1)
|
||||
`else
|
||||
,.VCCD_PAD(vccd1_pad)
|
||||
.VSSD1(vssd1),
|
||||
`ifndef TOP_ROUTING
|
||||
.VCCD_PAD(vccd1_pad)
|
||||
`endif
|
||||
);
|
||||
|
||||
sky130_ef_io__vssa_hvc_clamped_pad \user1_vssa_hvclamp_pad[0] (
|
||||
`USER1_ABUTMENT_PINS
|
||||
`ifdef TOP_ROUTING
|
||||
.VSSA(vssa1)
|
||||
`else
|
||||
,.VSSA_PAD(vssa1_pad)
|
||||
`ifndef TOP_ROUTING
|
||||
.VSSA_PAD(vssa1_pad)
|
||||
`endif
|
||||
);
|
||||
|
||||
sky130_ef_io__vssa_hvc_clamped_pad \user1_vssa_hvclamp_pad[1] (
|
||||
`USER1_ABUTMENT_PINS
|
||||
`ifdef TOP_ROUTING
|
||||
.VSSA(vssa1)
|
||||
`else
|
||||
,.VSSA_PAD(vssa1_pad2)
|
||||
`ifndef TOP_ROUTING
|
||||
.VSSA_PAD(vssa1_pad2)
|
||||
`endif
|
||||
);
|
||||
|
||||
sky130_ef_io__vssd_lvc_clamped3_pad user1_vssd_lvclamp_pad (
|
||||
`USER1_ABUTMENT_PINS
|
||||
`ifdef TOP_ROUTING
|
||||
.VCCD1(vccd1),
|
||||
.VSSD1(vssd1)
|
||||
`else
|
||||
,.VSSD_PAD(vssd1_pad)
|
||||
.VSSD1(vssd1),
|
||||
`ifndef TOP_ROUTING
|
||||
.VSSD_PAD(vssd1_pad)
|
||||
`endif
|
||||
);
|
||||
|
||||
|
@ -293,39 +268,33 @@ module chip_io_alt #(
|
|||
|
||||
sky130_ef_io__vdda_hvc_clamped_pad user2_vdda_hvclamp_pad (
|
||||
`USER2_ABUTMENT_PINS
|
||||
`ifdef TOP_ROUTING
|
||||
.VDDA(vdda2)
|
||||
`else
|
||||
,.VDDA_PAD(vdda2_pad)
|
||||
`ifndef TOP_ROUTING
|
||||
.VDDA_PAD(vdda2_pad)
|
||||
`endif
|
||||
);
|
||||
|
||||
sky130_ef_io__vccd_lvc_clamped3_pad user2_vccd_lvclamp_pad (
|
||||
`USER2_ABUTMENT_PINS
|
||||
`ifdef TOP_ROUTING
|
||||
.VCCD1(vccd2),
|
||||
.VSSD1(vssd2)
|
||||
`else
|
||||
,.VCCD_PAD(vccd2_pad)
|
||||
.VSSD1(vssd2),
|
||||
`ifndef TOP_ROUTING
|
||||
.VCCD_PAD(vccd2_pad)
|
||||
`endif
|
||||
);
|
||||
|
||||
sky130_ef_io__vssa_hvc_clamped_pad user2_vssa_hvclamp_pad (
|
||||
`USER2_ABUTMENT_PINS
|
||||
`ifdef TOP_ROUTING
|
||||
.VSSA(vssa2)
|
||||
`else
|
||||
,.VSSA_PAD(vssa2_pad)
|
||||
`ifndef TOP_ROUTING
|
||||
.VSSA_PAD(vssa2_pad)
|
||||
`endif
|
||||
);
|
||||
|
||||
sky130_ef_io__vssd_lvc_clamped3_pad user2_vssd_lvclamp_pad (
|
||||
`USER2_ABUTMENT_PINS
|
||||
`ifdef TOP_ROUTING
|
||||
.VCCD1(vccd2),
|
||||
.VSSD1(vssd2)
|
||||
`else
|
||||
,.VSSD_PAD(vssd2_pad)
|
||||
.VSSD1(vssd2),
|
||||
`ifndef TOP_ROUTING
|
||||
.VSSD_PAD(vssd2_pad)
|
||||
`endif
|
||||
);
|
||||
|
||||
|
@ -333,8 +302,7 @@ module chip_io_alt #(
|
|||
sky130_ef_io__analog_pad user1_analog_pad [ANALOG_PADS_1-2:0] (
|
||||
`USER1_ABUTMENT_PINS
|
||||
`ifndef TOP_ROUTING
|
||||
// .VDDIO(vddio)
|
||||
,.P_PAD(mprj_io[`MPRJ_IO_PADS_1-2:`MPRJ_IO_PADS_1-ANALOG_PADS_1]),
|
||||
.P_PAD(mprj_io[`MPRJ_IO_PADS_1-2:`MPRJ_IO_PADS_1-ANALOG_PADS_1]),
|
||||
`endif
|
||||
.P_CORE(mprj_analog[ANALOG_PADS_1-2:0])
|
||||
);
|
||||
|
@ -343,8 +311,7 @@ module chip_io_alt #(
|
|||
sky130_ef_io__top_power_hvc user1_analog_pad_with_clamp (
|
||||
`USER1_ABUTMENT_PINS
|
||||
`ifndef TOP_ROUTING
|
||||
// .VDDIO(vddio)
|
||||
,.P_PAD(mprj_io[`MPRJ_IO_PADS_1-1]),
|
||||
.P_PAD(mprj_io[`MPRJ_IO_PADS_1-1]),
|
||||
`endif
|
||||
`HVCLAMP_PINS(mprj_clamp_high[0],
|
||||
mprj_clamp_low[0]),
|
||||
|
@ -355,18 +322,15 @@ module chip_io_alt #(
|
|||
sky130_ef_io__analog_pad user2_analog_pad [ANALOG_PADS_2-3:0] (
|
||||
`USER2_ABUTMENT_PINS
|
||||
`ifndef TOP_ROUTING
|
||||
// .VDDIO(vddio)
|
||||
,.P_PAD(mprj_io[`MPRJ_IO_PADS_1+ANALOG_PADS_2-1:`MPRJ_IO_PADS_1+2]),
|
||||
.P_PAD(mprj_io[`MPRJ_IO_PADS_1+ANALOG_PADS_2-1:`MPRJ_IO_PADS_1+2]),
|
||||
`endif
|
||||
.P_CORE(mprj_analog[ANALOG_PADS_2+ANALOG_PADS_1-1:ANALOG_PADS_1+2])
|
||||
);
|
||||
|
||||
// Last two analog pads are power pads, to provide clamp resources.
|
||||
sky130_ef_io__top_power_hvc user2_analog_pad_with_clamp [1:0] (
|
||||
`USER2_ABUTMENT_PINS
|
||||
`ifndef TOP_ROUTING
|
||||
// .VDDIO(vddio)
|
||||
,.P_PAD(mprj_io[`MPRJ_IO_PADS_1+1:`MPRJ_IO_PADS_1]),
|
||||
.P_PAD(mprj_io[`MPRJ_IO_PADS_1+1:`MPRJ_IO_PADS_1]),
|
||||
`endif
|
||||
`HVCLAMP_PINS(mprj_clamp_high[2:1], mprj_clamp_low[2:1]),
|
||||
.P_CORE(mprj_analog[`ANALOG_PADS_1+1:ANALOG_PADS_1])
|
||||
|
@ -407,7 +371,7 @@ module chip_io_alt #(
|
|||
sky130_fd_io__top_xres4v2 resetb_pad (
|
||||
`MGMT_ABUTMENT_PINS
|
||||
`ifndef TOP_ROUTING
|
||||
,.PAD(resetb),
|
||||
.PAD(resetb),
|
||||
`endif
|
||||
.TIE_WEAK_HI_H(xresloop), // Loop-back connection to pad through pad_a_esd_h
|
||||
.TIE_HI_ESD(),
|
||||
|
@ -440,11 +404,9 @@ module chip_io_alt #(
|
|||
.VDDA(vdda),
|
||||
.VCCD(vccd),
|
||||
.VCCHIB(vccd)
|
||||
`else
|
||||
.VCCHIB()
|
||||
`endif
|
||||
|
||||
);
|
||||
|
||||
sky130_ef_io__corner_pad user1_corner (
|
||||
`ifndef TOP_ROUTING
|
||||
.VSSIO(vssio),
|
||||
|
@ -459,8 +421,6 @@ module chip_io_alt #(
|
|||
.VDDA(vdda1),
|
||||
.VCCD(vccd),
|
||||
.VCCHIB(vccd)
|
||||
`else
|
||||
.VCCHIB()
|
||||
`endif
|
||||
);
|
||||
sky130_ef_io__corner_pad user2_corner (
|
||||
|
@ -477,8 +437,6 @@ module chip_io_alt #(
|
|||
.VDDA(vdda2),
|
||||
.VCCD(vccd),
|
||||
.VCCHIB(vccd)
|
||||
`else
|
||||
.VCCHIB()
|
||||
`endif
|
||||
);
|
||||
|
||||
|
|
Loading…
Reference in New Issue