module top ( inout [7:0] pin, input in, output out ); wire [7:0] glbl, clk; reg [7:0] q; SB_GB_IO #( .PIN_TYPE(6'b 0000_11), .PULLUP(1'b0), .NEG_TRIGGER(1'b0), .IO_STANDARD("SB_LVCMOS") ) PIO[7:0] ( .PACKAGE_PIN(pin), .LATCH_INPUT_VALUE(1'b1), .CLOCK_ENABLE(), .INPUT_CLK(), .OUTPUT_CLK(), .OUTPUT_ENABLE(), .D_OUT_0(), .D_OUT_1(), .D_IN_0(), .D_IN_1(), .GLOBAL_BUFFER_OUTPUT(glbl) ); assign clk[0] = glbl[0]; // glb_netwk_4 assign clk[1] = glbl[1]; // glb_netwk_1 assign clk[2] = glbl[2]; // glb_netwk_6 assign clk[3] = glbl[3]; // glb_netwk_3 assign clk[4] = glbl[4]; // glb_netwk_0 assign clk[5] = glbl[5]; // glb_netwk_5 assign clk[6] = glbl[6]; // glb_netwk_2 assign clk[7] = glbl[7]; // glb_netwk_7 genvar i; generate for (i = 0; i < 8; i=i+1) begin always @(posedge clk[i]) q[i] <= in; end endgenerate assign out = ^{q, in}; endmodule