io_mux4_cell io_name( .testmode (testmode ), // <i> 2b, // .dbg_en (dbg_en[8] ), // <i> 1b, .dbg_en (1'b0 ), // <i> 1b, .fun_sel (iomux_cfg0[5:4] ), // <i> 2b, // function .fun_a_i (spi_miso_i ), // <o> 1b, .fun_a_ie (spi_miso_ie ), // <i> 1b, .fun_a_o (1'b0 ), // <i> 1b, .fun_a_oe (1'b0 ), // <i> 1b, .default_a_i (1'b0 ), // <i> 1b, .fun_b_i (/*floating*/ ), // <o> 1b, .fun_b_ie (1'b0 ), // <i> 1b, .fun_b_o (uart_tx_o ), // <i> 1b, .fun_b_oe (uart_tx_oe ), // <i> 1b, .default_b_i (1'b0 ), // <i> 1b, .fun_c_i (gpio_i[5] ), // <o> 1b, .fun_c_ie (gpio_ie[5] ), // <i> 1b, .fun_c_o (gpio_o[5] ), // <i> 1b, .fun_c_oe (gpio_oe[5] ), // <i> 1b, .default_c_i (1'b0 ), // <i> 1b, .fun_d_i (/*floating*/ ), // <o> 1b, .fun_d_ie (1'b0 ), // <i> 1b, .fun_d_o (1'b0 ), // <i> 1b, .fun_d_oe (1'b0 ), // <i> 1b, .default_d_i (1'b0 ), // <i> 1b, // debug .dbg_i (dbg_i[8] ), // <o> 1b, .dbg_ie (dbg_ie[8] ), // <i> 1b, .dbg_o (dbg_o[8] ), // <i> 1b, .dbg_oe (dbg_oe[8] ), // <i> 1b, .default_dbg_i (1'b1 ), // <i> 1b, // test .test_a_i (bist_start_i ), // <o> 1b, .test_a_ie (1'b1 ), // <i> 1b, .test_a_o (1'b0 ), // <i> 1b, .test_a_oe (1'b0 ), // <i> 1b, .default_test_a_i (1'b0 ), // <i> 1b, .test_b_i (/*floating*/ ), // <o> 1b, .test_b_ie (1'b0 ), // <i> 1b, .test_b_o (1'b0 ), // <i> 1b, .test_b_oe (1'b1 ), // <i> 1b, .default_test_b_i (1'b0 ), // <i> 1b, // io interface .cell_i (io_name_i ), // <i> 1b, .cell_ie (io_name_ie ), // <o> 1b, .cell_o (io_name_o ), // <o> 1b, .cell_oe (io_name_oe ) // <o> 1b, ); name function io_name spi_miso uart_tx gpio cfg_reg name cfg_val func dir iomux_cfg[5:4] io_name 00 spi_miso C/X 01 uart_tx X/C 10 gpio C/C 11 - - input: always on always off configurable output: always on always off configurable direction: I O always on always on I/O always on always off I/X always on configurable I/C always off always on X/O always off always off X/X always off configurable X/C configurable always on C/O configurable always off C/X configurable configurable C/C