diff --git a/nanosoc/nanosoc_control/verilog/nanosoc_pin_mux.v b/nanosoc/nanosoc_control/verilog/nanosoc_pin_mux.v index 1de2acdd2870a0041b0c2e69669f3d6b053988dc..d52b04fc3ae03bb8146a30ec8d33c68630bc0636 100644 --- a/nanosoc/nanosoc_control/verilog/nanosoc_pin_mux.v +++ b/nanosoc/nanosoc_control/verilog/nanosoc_pin_mux.v @@ -154,81 +154,41 @@ module nanosoc_pin_mux ( assign p1_out_en_mux[15:6] = p1_outen[15:6]; - // Output tristate - //assign P0[ 0] = p0_out_en_mux[ 0] ? p0_out_mux[ 0] : 1'bz; - //assign P0[ 1] = p0_out_en_mux[ 1] ? p0_out_mux[ 1] : 1'bz; - //assign P0[ 2] = p0_out_en_mux[ 2] ? p0_out_mux[ 2] : 1'bz; - //assign P0[ 3] = p0_out_en_mux[ 3] ? p0_out_mux[ 3] : 1'bz; - //assign P0[ 4] = p0_out_en_mux[ 4] ? p0_out_mux[ 4] : 1'bz; - //assign P0[ 5] = p0_out_en_mux[ 5] ? p0_out_mux[ 5] : 1'bz; - //assign P0[ 6] = p0_out_en_mux[ 6] ? p0_out_mux[ 6] : 1'bz; - //assign P0[ 7] = p0_out_en_mux[ 7] ? p0_out_mux[ 7] : 1'bz; - //assign P0[ 8] = p0_out_en_mux[ 8] ? p0_out_mux[ 8] : 1'bz; - //assign P0[ 9] = p0_out_en_mux[ 9] ? p0_out_mux[ 9] : 1'bz; - //assign P0[10] = p0_out_en_mux[10] ? p0_out_mux[10] : 1'bz; - //assign P0[11] = p0_out_en_mux[11] ? p0_out_mux[11] : 1'bz; - //assign P0[12] = p0_out_en_mux[12] ? p0_out_mux[12] : 1'bz; - //assign P0[13] = p0_out_en_mux[13] ? p0_out_mux[13] : 1'bz; - //assign P0[14] = p0_out_en_mux[14] ? p0_out_mux[14] : 1'bz; - //assign P0[15] = p0_out_en_mux[15] ? p0_out_mux[15] : 1'bz; +// port input feedback + assign p0_in[ 0] = p0_out_en_mux[ 0] ? p0_out_mux[ 0] : 1'b1; + assign p0_in[ 1] = p0_out_en_mux[ 1] ? p0_out_mux[ 1] : 1'b1; + assign p0_in[ 2] = p0_out_en_mux[ 2] ? p0_out_mux[ 2] : 1'b1; + assign p0_in[ 3] = p0_out_en_mux[ 3] ? p0_out_mux[ 3] : 1'b1; + assign p0_in[ 4] = p0_out_en_mux[ 4] ? p0_out_mux[ 4] : 1'b1; + assign p0_in[ 5] = p0_out_en_mux[ 5] ? p0_out_mux[ 5] : 1'b1; + assign p0_in[ 6] = p0_out_en_mux[ 6] ? p0_out_mux[ 6] : 1'b1; + assign p0_in[ 7] = p0_out_en_mux[ 7] ? p0_out_mux[ 7] : 1'b1; + assign p0_in[ 8] = p0_out_en_mux[ 8] ? p0_out_mux[ 8] : 1'b1; + assign p0_in[ 9] = p0_out_en_mux[ 9] ? p0_out_mux[ 9] : 1'b1; + assign p0_in[10] = p0_out_en_mux[10] ? p0_out_mux[10] : 1'b1; + assign p0_in[11] = p0_out_en_mux[11] ? p0_out_mux[11] : 1'b1; + assign p0_in[12] = p0_out_en_mux[12] ? p0_out_mux[12] : 1'b1; + assign p0_in[13] = p0_out_en_mux[13] ? p0_out_mux[13] : 1'b1; + assign p0_in[14] = p0_out_en_mux[14] ? p0_out_mux[14] : 1'b1; + assign p0_in[15] = p0_out_en_mux[15] ? p0_out_mux[15] : 1'b1; // - //assign P1[ 0] = p1_out_en_mux[ 0] ? p1_out_mux[ 0] : 1'bz; - //assign P1[ 1] = p1_out_en_mux[ 1] ? p1_out_mux[ 1] : 1'bz; - //assign P1[ 2] = p1_out_en_mux[ 2] ? p1_out_mux[ 2] : 1'bz; - //assign P1[ 3] = p1_out_en_mux[ 3] ? p1_out_mux[ 3] : 1'bz; - //assign P1[ 4] = p1_out_en_mux[ 4] ? p1_out_mux[ 4] : 1'bz; - //assign P1[ 5] = p1_out_en_mux[ 5] ? p1_out_mux[ 5] : 1'bz; - //assign P1[ 6] = p1_out_en_mux[ 6] ? p1_out_mux[ 6] : 1'bz; - //assign P1[ 7] = p1_out_en_mux[ 7] ? p1_out_mux[ 7] : 1'bz; - //assign P1[ 8] = p1_out_en_mux[ 8] ? p1_out_mux[ 8] : 1'bz; - //assign P1[ 9] = p1_out_en_mux[ 9] ? p1_out_mux[ 9] : 1'bz; - //assign P1[10] = p1_out_en_mux[10] ? p1_out_mux[10] : 1'bz; - //assign P1[11] = p1_out_en_mux[11] ? p1_out_mux[11] : 1'bz; - //assign P1[12] = p1_out_en_mux[12] ? p1_out_mux[12] : 1'bz; - //assign P1[13] = p1_out_en_mux[13] ? p1_out_mux[13] : 1'bz; - //assign P1[14] = p1_out_en_mux[14] ? p1_out_mux[14] : 1'bz; - //assign P1[15] = p1_out_en_mux[15] ? p1_out_mux[15] : 1'bz; - -/* -// synopsys translate_off - - // Pullup - pullup(P0[ 0]); - pullup(P0[ 1]); - pullup(P0[ 2]); - pullup(P0[ 3]); - pullup(P0[ 4]); - pullup(P0[ 5]); - pullup(P0[ 6]); - pullup(P0[ 7]); - pullup(P0[ 8]); - pullup(P0[ 9]); - pullup(P0[10]); - pullup(P0[11]); - pullup(P0[12]); - pullup(P0[13]); - pullup(P0[14]); - pullup(P0[15]); - - pullup(P1[ 0]); - pullup(P1[ 1]); - pullup(P1[ 2]); - pullup(P1[ 3]); - pullup(P1[ 4]); - pullup(P1[ 5]); - pullup(P1[ 6]); - pullup(P1[ 7]); - pullup(P1[ 8]); - pullup(P1[ 9]); - pullup(P1[10]); - pullup(P1[11]); - pullup(P1[12]); - pullup(P1[13]); - pullup(P1[14]); - pullup(P1[15]); - -// synopsys translate_on -*/ + assign p1_in[ 0] = p1_out_en_mux[ 0] ? p1_out_mux[ 0] : 1'b1; + assign p1_in[ 1] = p1_out_en_mux[ 1] ? p1_out_mux[ 1] : 1'b1; + assign p1_in[ 2] = p1_out_en_mux[ 2] ? p1_out_mux[ 2] : 1'b1; + assign p1_in[ 3] = p1_out_en_mux[ 3] ? p1_out_mux[ 3] : 1'b1; + assign p1_in[ 4] = p1_out_en_mux[ 4] ? p1_out_mux[ 4] : 1'b1; + assign p1_in[ 5] = p1_out_en_mux[ 5] ? p1_out_mux[ 5] : 1'b1; + assign p1_in[ 6] = p1_out_en_mux[ 6] ? p1_out_mux[ 6] : 1'b1; + assign p1_in[ 7] = p1_out_en_mux[ 7] ? p1_out_mux[ 7] : 1'b1; + assign p1_in[ 8] = p1_out_en_mux[ 8] ? p1_out_mux[ 8] : 1'b1; + assign p1_in[ 9] = p1_out_en_mux[ 9] ? p1_out_mux[ 9] : 1'b1; + assign p1_in[10] = p1_out_en_mux[10] ? p1_out_mux[10] : 1'b1; + assign p1_in[11] = p1_out_en_mux[11] ? p1_out_mux[11] : 1'b1; + assign p1_in[12] = p1_out_en_mux[12] ? p1_out_mux[12] : 1'b1; + assign p1_in[13] = p1_out_en_mux[13] ? p1_out_mux[13] : 1'b1; + assign p1_in[14] = p1_out_en_mux[14] ? p1_out_mux[14] : 1'b1; + assign p1_in[15] = p1_out_en_mux[15] ? p1_out_mux[15] : 1'b1; + //------------------------------------------- // Debug connections //-------------------------------------------