blob: 44fa93f43ee30041517386d1c8ba3a9010803e31 [file] [log] [blame]
Tim Edwards581068f2020-11-19 12:45:25 -05001// `default_nettype none
shalan0d14e6e2020-08-31 16:50:48 +02002module chip_io(
3 // Package Pins
Tim Edwards9eda80d2020-10-08 21:36:44 -04004 inout vddio, // Common padframe/ESD supply
5 inout vssio, // Common padframe/ESD ground
6 inout vccd, // Common 1.8V supply
7 inout vssd, // Common digital ground
8 inout vdda, // Management analog 3.3V supply
9 inout vssa, // Management analog ground
10 inout vdda1, // User area 1 3.3V supply
11 inout vdda2, // User area 2 3.3V supply
12 inout vssa1, // User area 1 analog ground
13 inout vssa2, // User area 2 analog ground
14 inout vccd1, // User area 1 1.8V supply
15 inout vccd2, // User area 2 1.8V supply
16 inout vssd1, // User area 1 digital ground
17 inout vssd2, // User area 2 digital ground
18
Tim Edwards04ba17f2020-10-02 22:27:50 -040019 inout gpio,
Tim Edwards61bfc1f2020-10-03 11:51:17 -040020 input clock,
21 input resetb,
shalan0d14e6e2020-08-31 16:50:48 +020022 output flash_csb,
23 output flash_clk,
Tim Edwards61bfc1f2020-10-03 11:51:17 -040024 inout flash_io0,
25 inout flash_io1,
shalan0d14e6e2020-08-31 16:50:48 +020026 // Chip Core Interface
Tim Edwardsf51dd082020-10-05 16:30:24 -040027 input porb_h,
Tim Edwards581068f2020-11-19 12:45:25 -050028 input por,
Tim Edwardsf51dd082020-10-05 16:30:24 -040029 output resetb_core_h,
Tim Edwardsef8312e2020-09-22 17:20:06 -040030 output clock_core,
Tim Edwards04ba17f2020-10-02 22:27:50 -040031 input gpio_out_core,
32 output gpio_in_core,
33 input gpio_mode0_core,
34 input gpio_mode1_core,
35 input gpio_outenb_core,
36 input gpio_inenb_core,
shalan0d14e6e2020-08-31 16:50:48 +020037 input flash_csb_core,
38 input flash_clk_core,
39 input flash_csb_oeb_core,
40 input flash_clk_oeb_core,
41 input flash_io0_oeb_core,
42 input flash_io1_oeb_core,
shalan0d14e6e2020-08-31 16:50:48 +020043 input flash_csb_ieb_core,
44 input flash_clk_ieb_core,
45 input flash_io0_ieb_core,
46 input flash_io1_ieb_core,
shalan0d14e6e2020-08-31 16:50:48 +020047 input flash_io0_do_core,
48 input flash_io1_do_core,
shalan0d14e6e2020-08-31 16:50:48 +020049 output flash_io0_di_core,
50 output flash_io1_di_core,
Tim Edwards6d9739d2020-10-19 11:00:49 -040051 // User project IOs
Tim Edwards44bab472020-10-04 22:09:54 -040052 inout [`MPRJ_IO_PADS-1:0] mprj_io,
shalan0d14e6e2020-08-31 16:50:48 +020053 input [`MPRJ_IO_PADS-1:0] mprj_io_out,
Tim Edwards44bab472020-10-04 22:09:54 -040054 input [`MPRJ_IO_PADS-1:0] mprj_io_oeb,
Tim Edwardsef8312e2020-09-22 17:20:06 -040055 input [`MPRJ_IO_PADS-1:0] mprj_io_hldh_n,
shalan0d14e6e2020-08-31 16:50:48 +020056 input [`MPRJ_IO_PADS-1:0] mprj_io_enh,
Tim Edwardsef8312e2020-09-22 17:20:06 -040057 input [`MPRJ_IO_PADS-1:0] mprj_io_inp_dis,
58 input [`MPRJ_IO_PADS-1:0] mprj_io_ib_mode_sel,
Tim Edwards04ba17f2020-10-02 22:27:50 -040059 input [`MPRJ_IO_PADS-1:0] mprj_io_vtrip_sel,
60 input [`MPRJ_IO_PADS-1:0] mprj_io_slow_sel,
61 input [`MPRJ_IO_PADS-1:0] mprj_io_holdover,
Tim Edwardsef8312e2020-09-22 17:20:06 -040062 input [`MPRJ_IO_PADS-1:0] mprj_io_analog_en,
63 input [`MPRJ_IO_PADS-1:0] mprj_io_analog_sel,
64 input [`MPRJ_IO_PADS-1:0] mprj_io_analog_pol,
65 input [`MPRJ_IO_PADS*3-1:0] mprj_io_dm,
Tim Edwards581068f2020-11-19 12:45:25 -050066 output [`MPRJ_IO_PADS-1:0] mprj_io_in,
67 // User project direct access to gpio pad connections for analog
68 // (all but the lowest-numbered 7 pads)
69 inout [`MPRJ_IO_PADS-8:0] mprj_analog_io
shalan0d14e6e2020-08-31 16:50:48 +020070);
Tim Edwardsef8312e2020-09-22 17:20:06 -040071
shalan0d14e6e2020-08-31 16:50:48 +020072 wire analog_a, analog_b;
73 wire vddio_q, vssio_q;
Tim Edwards9eda80d2020-10-08 21:36:44 -040074
75 // Instantiate power and ground pads for management domain
76 // 12 pads: vddio, vssio, vdda, vssa, vccd, vssd
77 // One each HV and LV clamp.
78
Tim Edwardsf645a842020-10-10 21:36:49 -040079 // HV clamps connect between one HV power rail and one ground
80 // LV clamps have two clamps connecting between any two LV power
81 // rails and grounds, and one back-to-back diode which connects
82 // between the first LV clamp ground and any other ground.
83
Ahmed Ghazydf4dd882020-11-25 18:38:42 +020084 sky130_ef_io__vddio_hvc_pad mgmt_vddio_hvclamp_pad[0] (
Tim Edwards9eda80d2020-10-08 21:36:44 -040085 `MGMT_ABUTMENT_PINS
Ahmed Ghazydf4dd882020-11-25 18:38:42 +020086`ifdef TOP_ROUTING
87 .VDDIO(vddio),
88`endif
89 `HVCLAMP_PINS(vddio, vssio)
90 );
91
92 // lies in user area 2
93 sky130_ef_io__vddio_hvc_pad mgmt_vddio_hvclamp_pad[1] (
94 `USER2_ABUTMENT_PINS
95`ifdef TOP_ROUTING
96 .VDDIO(vddio),
97`endif
Tim Edwardsf645a842020-10-10 21:36:49 -040098 `HVCLAMP_PINS(vddio, vssio)
Tim Edwardsef8312e2020-09-22 17:20:06 -040099 );
shalan0d14e6e2020-08-31 16:50:48 +0200100
Tim Edwards4c733352020-10-12 16:32:36 -0400101 sky130_ef_io__vdda_hvc_pad mgmt_vdda_hvclamp_pad (
Tim Edwards9eda80d2020-10-08 21:36:44 -0400102 `MGMT_ABUTMENT_PINS
Ahmed Ghazydf4dd882020-11-25 18:38:42 +0200103`ifdef TOP_ROUTING
104 .VDDA(vdda),
105`endif
Tim Edwardsf645a842020-10-10 21:36:49 -0400106 `HVCLAMP_PINS(vdda, vssa)
Tim Edwardsef8312e2020-09-22 17:20:06 -0400107 );
shalan0d14e6e2020-08-31 16:50:48 +0200108
Tim Edwards4c733352020-10-12 16:32:36 -0400109 sky130_ef_io__vccd_lvc_pad mgmt_vccd_lvclamp_pad (
Tim Edwards9eda80d2020-10-08 21:36:44 -0400110 `MGMT_ABUTMENT_PINS
Ahmed Ghazydf4dd882020-11-25 18:38:42 +0200111`ifdef TOP_ROUTING
112 .VCCD(vccd),
113`endif
Tim Edwardsf645a842020-10-10 21:36:49 -0400114 `LVCLAMP_PINS(vccd, vssio, vccd, vssd, vssa)
Tim Edwardsef8312e2020-09-22 17:20:06 -0400115 );
shalan0d14e6e2020-08-31 16:50:48 +0200116
Ahmed Ghazydf4dd882020-11-25 18:38:42 +0200117 sky130_ef_io__vssio_hvc_pad mgmt_vssio_hvclamp_pad[0] (
Tim Edwards9eda80d2020-10-08 21:36:44 -0400118 `MGMT_ABUTMENT_PINS
Ahmed Ghazydf4dd882020-11-25 18:38:42 +0200119`ifdef TOP_ROUTING
120 .VSSIO(vssio),
121`endif
122 `HVCLAMP_PINS(vddio, vssio)
123 );
124
125 sky130_ef_io__vssio_hvc_pad mgmt_vssio_hvclamp_pad[1] (
126 `USER2_ABUTMENT_PINS
127`ifdef TOP_ROUTING
128 .VSSIO(vssio),
129`endif
Tim Edwardsf645a842020-10-10 21:36:49 -0400130 `HVCLAMP_PINS(vddio, vssio)
Tim Edwardsef8312e2020-09-22 17:20:06 -0400131 );
shalan0d14e6e2020-08-31 16:50:48 +0200132
Tim Edwards4c733352020-10-12 16:32:36 -0400133 sky130_ef_io__vssa_hvc_pad mgmt_vssa_hvclamp_pad (
Tim Edwards9eda80d2020-10-08 21:36:44 -0400134 `MGMT_ABUTMENT_PINS
Ahmed Ghazydf4dd882020-11-25 18:38:42 +0200135`ifdef TOP_ROUTING
136 .VSSA(vssa),
137`endif
Tim Edwardsf645a842020-10-10 21:36:49 -0400138 `HVCLAMP_PINS(vdda, vssa)
Tim Edwardsef8312e2020-09-22 17:20:06 -0400139 );
shalan0d14e6e2020-08-31 16:50:48 +0200140
Tim Edwards4c733352020-10-12 16:32:36 -0400141 sky130_ef_io__vssd_lvc_pad mgmt_vssd_lvclmap_pad (
Tim Edwards9eda80d2020-10-08 21:36:44 -0400142 `MGMT_ABUTMENT_PINS
Ahmed Ghazydf4dd882020-11-25 18:38:42 +0200143`ifdef TOP_ROUTING
144 .VSSD(vssd),
145`endif
Tim Edwardsf645a842020-10-10 21:36:49 -0400146 `LVCLAMP_PINS(vccd, vssio, vccd, vssd, vssa)
Tim Edwardsef8312e2020-09-22 17:20:06 -0400147 );
shalan0d14e6e2020-08-31 16:50:48 +0200148
Tim Edwards9eda80d2020-10-08 21:36:44 -0400149 // Instantiate power and ground pads for user 1 domain
150 // 8 pads: vdda, vssa, vccd, vssd; One each HV and LV clamp.
151
Tim Edwards4c733352020-10-12 16:32:36 -0400152 sky130_ef_io__vdda_hvc_pad user1_vdda_hvclamp_pad [1:0] (
Tim Edwards9eda80d2020-10-08 21:36:44 -0400153 `USER1_ABUTMENT_PINS
Ahmed Ghazydf4dd882020-11-25 18:38:42 +0200154`ifdef TOP_ROUTING
155 .VDDA(vdda1),
156`endif
Tim Edwardsf645a842020-10-10 21:36:49 -0400157 `HVCLAMP_PINS(vdda1, vssa1)
Tim Edwardsef8312e2020-09-22 17:20:06 -0400158 );
shalan0d14e6e2020-08-31 16:50:48 +0200159
Tim Edwards4c733352020-10-12 16:32:36 -0400160 sky130_ef_io__vccd_lvc_pad user1_vccd_lvclamp_pad (
Tim Edwards9eda80d2020-10-08 21:36:44 -0400161 `USER1_ABUTMENT_PINS
Ahmed Ghazydf4dd882020-11-25 18:38:42 +0200162`ifdef TOP_ROUTING
163 .VCCD(vccd1),
164`endif
Tim Edwardsf645a842020-10-10 21:36:49 -0400165 `LVCLAMP_PINS(vccd1, vssd1, vccd1, vssd, vssio)
Tim Edwards9eda80d2020-10-08 21:36:44 -0400166 );
167
Tim Edwards4c733352020-10-12 16:32:36 -0400168 sky130_ef_io__vssa_hvc_pad user1_vssa_hvclamp_pad [1:0] (
Tim Edwards9eda80d2020-10-08 21:36:44 -0400169 `USER1_ABUTMENT_PINS
Ahmed Ghazydf4dd882020-11-25 18:38:42 +0200170`ifdef TOP_ROUTING
171 .VSSA(vssa1),
172`endif
Tim Edwardsf645a842020-10-10 21:36:49 -0400173 `HVCLAMP_PINS(vdda1, vssa1)
Tim Edwards9eda80d2020-10-08 21:36:44 -0400174 );
175
Tim Edwards4c733352020-10-12 16:32:36 -0400176 sky130_ef_io__vssd_lvc_pad user1_vssd_lvclmap_pad (
Tim Edwards9eda80d2020-10-08 21:36:44 -0400177 `USER1_ABUTMENT_PINS
Ahmed Ghazydf4dd882020-11-25 18:38:42 +0200178`ifdef TOP_ROUTING
179 .VSSD(vssd1),
180`endif
Tim Edwardsf645a842020-10-10 21:36:49 -0400181 `LVCLAMP_PINS(vccd1, vssd1, vccd1, vssd, vssio)
Tim Edwards9eda80d2020-10-08 21:36:44 -0400182 );
183
184 // Instantiate power and ground pads for user 2 domain
185 // 8 pads: vdda, vssa, vccd, vssd; One each HV and LV clamp.
186
Tim Edwards4c733352020-10-12 16:32:36 -0400187 sky130_ef_io__vdda_hvc_pad user2_vdda_hvclamp_pad (
Tim Edwards9eda80d2020-10-08 21:36:44 -0400188 `USER2_ABUTMENT_PINS
Ahmed Ghazydf4dd882020-11-25 18:38:42 +0200189`ifdef TOP_ROUTING
190 .VDDA(vdda2),
191`endif
Tim Edwardsf645a842020-10-10 21:36:49 -0400192 `HVCLAMP_PINS(vdda2, vssa2)
Tim Edwards9eda80d2020-10-08 21:36:44 -0400193 );
194
Tim Edwards4c733352020-10-12 16:32:36 -0400195 sky130_ef_io__vccd_lvc_pad user2_vccd_lvclamp_pad (
Tim Edwards9eda80d2020-10-08 21:36:44 -0400196 `USER2_ABUTMENT_PINS
Ahmed Ghazydf4dd882020-11-25 18:38:42 +0200197`ifdef TOP_ROUTING
198 .VCCD(vccd2),
199`endif
Tim Edwardsf645a842020-10-10 21:36:49 -0400200 `LVCLAMP_PINS(vccd2, vssd2, vccd2, vssd, vssio)
Tim Edwards9eda80d2020-10-08 21:36:44 -0400201 );
202
Tim Edwards4c733352020-10-12 16:32:36 -0400203 sky130_ef_io__vssa_hvc_pad user2_vssa_hvclamp_pad (
Tim Edwards9eda80d2020-10-08 21:36:44 -0400204 `USER2_ABUTMENT_PINS
Ahmed Ghazydf4dd882020-11-25 18:38:42 +0200205`ifdef TOP_ROUTING
206 .VSSA(vssa2),
207`endif
Tim Edwardsf645a842020-10-10 21:36:49 -0400208 `HVCLAMP_PINS(vdda2, vssa2)
Tim Edwards9eda80d2020-10-08 21:36:44 -0400209 );
210
Tim Edwards4c733352020-10-12 16:32:36 -0400211 sky130_ef_io__vssd_lvc_pad user2_vssd_lvclmap_pad (
Tim Edwards9eda80d2020-10-08 21:36:44 -0400212 `USER2_ABUTMENT_PINS
Ahmed Ghazydf4dd882020-11-25 18:38:42 +0200213`ifdef TOP_ROUTING
214 .VSSD(vssd2),
215`endif
Tim Edwardsf645a842020-10-10 21:36:49 -0400216 `LVCLAMP_PINS(vccd2, vssd2, vccd2, vssd, vssio)
Tim Edwardsef8312e2020-09-22 17:20:06 -0400217 );
shalan0d14e6e2020-08-31 16:50:48 +0200218
Tim Edwards04ba17f2020-10-02 22:27:50 -0400219 wire [2:0] dm_all =
220 {gpio_mode1_core, gpio_mode1_core, gpio_mode0_core};
Ahmed Ghazydf4dd882020-11-25 18:38:42 +0200221 wire[2:0] flash_io0_mode =
shalan0d14e6e2020-08-31 16:50:48 +0200222 {flash_io0_ieb_core, flash_io0_ieb_core, flash_io0_oeb_core};
Ahmed Ghazydf4dd882020-11-25 18:38:42 +0200223 wire[2:0] flash_io1_mode =
shalan0d14e6e2020-08-31 16:50:48 +0200224 {flash_io1_ieb_core, flash_io1_ieb_core, flash_io1_oeb_core};
shalan0d14e6e2020-08-31 16:50:48 +0200225
Tim Edwards9eda80d2020-10-08 21:36:44 -0400226 // Management clock input pad
Ahmed Ghazydf4dd882020-11-25 18:38:42 +0200227 `INPUT_PAD(clock, clock_core);
Tim Edwards9eda80d2020-10-08 21:36:44 -0400228
229 // Management GPIO pad
Tim Edwards04ba17f2020-10-02 22:27:50 -0400230 `INOUT_PAD(
231 gpio, gpio_in_core, gpio_out_core,
shalan0d14e6e2020-08-31 16:50:48 +0200232 gpio_inenb_core, gpio_outenb_core, dm_all);
Ahmed Ghazydf4dd882020-11-25 18:38:42 +0200233
Tim Edwards9eda80d2020-10-08 21:36:44 -0400234 // Management Flash SPI pads
shalan0d14e6e2020-08-31 16:50:48 +0200235 `INOUT_PAD(
236 flash_io0, flash_io0_di_core, flash_io0_do_core,
237 flash_io0_ieb_core, flash_io0_oeb_core, flash_io0_mode);
238 `INOUT_PAD(
239 flash_io1, flash_io1_di_core, flash_io1_do_core,
240 flash_io1_ieb_core, flash_io1_oeb_core, flash_io1_mode);
shalan0d14e6e2020-08-31 16:50:48 +0200241
Ahmed Ghazydf4dd882020-11-25 18:38:42 +0200242 `OUTPUT_PAD(flash_csb, flash_csb_core, flash_csb_ieb_core, flash_csb_oeb_core);
shalan0d14e6e2020-08-31 16:50:48 +0200243 `OUTPUT_PAD(flash_clk, flash_clk_core, flash_clk_ieb_core, flash_clk_oeb_core);
244
shalan0d14e6e2020-08-31 16:50:48 +0200245 // NOTE: The analog_out pad from the raven chip has been replaced by
Tim Edwards04ba17f2020-10-02 22:27:50 -0400246 // the digital reset input resetb on caravel due to the lack of an on-board
Tim Edwardsef8312e2020-09-22 17:20:06 -0400247 // power-on-reset circuit. The XRES pad is used for providing a glitch-
248 // free reset.
Tim Edwards9eda80d2020-10-08 21:36:44 -0400249
Ahmed Ghazydf4dd882020-11-25 18:38:42 +0200250 wire xresloop;
Tim Edwards4c733352020-10-12 16:32:36 -0400251 sky130_fd_io__top_xres4v2 resetb_pad (
Tim Edwards9eda80d2020-10-08 21:36:44 -0400252 `MGMT_ABUTMENT_PINS
Tim Edwardsef8312e2020-09-22 17:20:06 -0400253 `ifndef TOP_ROUTING
Tim Edwardse2ef6732020-10-12 17:25:12 -0400254 .PAD(resetb),
Tim Edwardsef8312e2020-09-22 17:20:06 -0400255 `endif
Tim Edwardse2ef6732020-10-12 17:25:12 -0400256 .TIE_WEAK_HI_H(xresloop), // Loop-back connection to pad through pad_a_esd_h
257 .TIE_HI_ESD(),
258 .TIE_LO_ESD(),
259 .PAD_A_ESD_H(xresloop),
260 .XRES_H_N(resetb_core_h),
261 .DISABLE_PULLUP_H(vssio), // 0 = enable pull-up on reset pad
262 .ENABLE_H(porb_h), // Power-on-reset
263 .EN_VDDIO_SIG_H(vssio), // No idea.
264 .INP_SEL_H(vssio), // 1 = use filt_in_h else filter the pad input
265 .FILT_IN_H(vssio), // Alternate input for glitch filter
266 .PULLUP_H(vssio), // Pullup connection for alternate filter input
267 .ENABLE_VDDIO(vccd)
Tim Edwardsef8312e2020-09-22 17:20:06 -0400268 );
shalan0d14e6e2020-08-31 16:50:48 +0200269
270 // Corner cells (These are overlay cells; it is not clear what is normally
Ahmed Ghazydf4dd882020-11-25 18:38:42 +0200271 // supposed to go under them.)
Tim Edwards9eda80d2020-10-08 21:36:44 -0400272
Tim Edwards4c733352020-10-12 16:32:36 -0400273 sky130_ef_io__corner_pad mgmt_corner [1:0] (
Ahmed Ghazydf4dd882020-11-25 18:38:42 +0200274`ifndef TOP_ROUTING
Tim Edwards4c733352020-10-12 16:32:36 -0400275 .VSSIO(vssio),
276 .VDDIO(vddio),
277 .VDDIO_Q(vddio_q),
278 .VSSIO_Q(vssio_q),
279 .AMUXBUS_A(analog_a),
280 .AMUXBUS_B(analog_b),
Ahmed Ghazydf4dd882020-11-25 18:38:42 +0200281 .VSSD(vssd),
282 .VSSA(vssa),
Tim Edwards4c733352020-10-12 16:32:36 -0400283 .VSWITCH(vddio),
284 .VDDA(vdda),
285 .VCCD(vccd),
286 .VCCHIB(vccd)
Ahmed Ghazydf4dd882020-11-25 18:38:42 +0200287`else
288 .VCCHIB()
289`endif
290
Tim Edwards9eda80d2020-10-08 21:36:44 -0400291 );
Tim Edwards4c733352020-10-12 16:32:36 -0400292 sky130_ef_io__corner_pad user1_corner (
Ahmed Ghazydf4dd882020-11-25 18:38:42 +0200293`ifndef TOP_ROUTING
Tim Edwards4c733352020-10-12 16:32:36 -0400294 .VSSIO(vssio),
295 .VDDIO(vddio),
296 .VDDIO_Q(vddio_q),
297 .VSSIO_Q(vssio_q),
298 .AMUXBUS_A(analog_a),
299 .AMUXBUS_B(analog_b),
300 .VSSD(vssd1),
301 .VSSA(vssa1),
302 .VSWITCH(vddio),
303 .VDDA(vdda1),
304 .VCCD(vccd1),
305 .VCCHIB(vccd)
Ahmed Ghazydf4dd882020-11-25 18:38:42 +0200306`else
307 .VCCHIB()
308`endif
Tim Edwards9eda80d2020-10-08 21:36:44 -0400309 );
Tim Edwards4c733352020-10-12 16:32:36 -0400310 sky130_ef_io__corner_pad user2_corner (
Ahmed Ghazydf4dd882020-11-25 18:38:42 +0200311`ifndef TOP_ROUTING
Tim Edwards4c733352020-10-12 16:32:36 -0400312 .VSSIO(vssio),
313 .VDDIO(vddio),
314 .VDDIO_Q(vddio_q),
315 .VSSIO_Q(vssio_q),
316 .AMUXBUS_A(analog_a),
317 .AMUXBUS_B(analog_b),
318 .VSSD(vssd2),
319 .VSSA(vssa2),
320 .VSWITCH(vddio),
321 .VDDA(vdda2),
322 .VCCD(vccd2),
323 .VCCHIB(vccd)
Ahmed Ghazydf4dd882020-11-25 18:38:42 +0200324`else
325 .VCCHIB()
326`endif
Tim Edwardsef8312e2020-09-22 17:20:06 -0400327 );
shalan0d14e6e2020-08-31 16:50:48 +0200328
329 mprj_io mprj_pads(
Tim Edwardse2ef6732020-10-12 17:25:12 -0400330 .vddio(vddio),
331 .vssio(vssio),
332 .vccd(vccd),
333 .vssd(vssd),
334 .vdda1(vdda1),
335 .vdda2(vdda2),
336 .vssa1(vssa1),
337 .vssa2(vssa2),
338 .vccd1(vccd1),
339 .vccd2(vccd2),
340 .vssd1(vssd1),
341 .vssd2(vssd2),
342 .vddio_q(vddio_q),
343 .vssio_q(vssio_q),
344 .analog_a(analog_a),
345 .analog_b(analog_b),
346 .porb_h(porb_h),
Tim Edwardse2ef6732020-10-12 17:25:12 -0400347 .io(mprj_io),
348 .io_out(mprj_io_out),
349 .oeb(mprj_io_oeb),
350 .hldh_n(mprj_io_hldh_n),
351 .enh(mprj_io_enh),
352 .inp_dis(mprj_io_inp_dis),
353 .ib_mode_sel(mprj_io_ib_mode_sel),
354 .vtrip_sel(mprj_io_vtrip_sel),
355 .holdover(mprj_io_holdover),
356 .slow_sel(mprj_io_slow_sel),
357 .analog_en(mprj_io_analog_en),
358 .analog_sel(mprj_io_analog_sel),
359 .analog_pol(mprj_io_analog_pol),
360 .dm(mprj_io_dm),
Tim Edwards581068f2020-11-19 12:45:25 -0500361 .io_in(mprj_io_in),
362 .analog_io(mprj_analog_io)
shalan0d14e6e2020-08-31 16:50:48 +0200363 );
364
Tim Edwardsef8312e2020-09-22 17:20:06 -0400365endmodule
Tim Edwards581068f2020-11-19 12:45:25 -0500366// `default_nettype wire