Update
diff --git a/verilog/dv/BrqRV_EB1/BrqRV_EB1_tb.v b/verilog/dv/BrqRV_EB1/BrqRV_EB1_tb.v index 086010a..99185a5 100644 --- a/verilog/dv/BrqRV_EB1/BrqRV_EB1_tb.v +++ b/verilog/dv/BrqRV_EB1/BrqRV_EB1_tb.v
@@ -83,15 +83,15 @@ wait(mprj_io_0 == 28'd13);*/ // Observe Output pins [35:8] for multliplication_table - wait(mprj_io_0 == 28'd5); + /*wait(mprj_io_0 == 28'd5); wait(mprj_io_0 == 28'd10); wait(mprj_io_0 == 28'd15); wait(mprj_io_0 == 28'd20); wait(mprj_io_0 == 28'd25); wait(mprj_io_0 == 28'd30); - - // Observe Output pins [35:8] for Quadratic_eq - //wait(mprj_io_0 == 28'd8); + */ + // Observe Output pins [35:8] for mean & Determinant + wait(mprj_io_0 == 28'd5); //wait(mprj_io_0 == 28'd7); $display("MPRJ-IO state = %d ", mprj_io[35:8]);
diff --git a/verilog/dv/hex/determinant.hex b/verilog/dv/hex/determinant.hex new file mode 100755 index 0000000..87076f3 --- /dev/null +++ b/verilog/dv/hex/determinant.hex
@@ -0,0 +1,9 @@ +@00000000 +B0 20 10 73 B8 20 10 73 5F 55 50 B7 55 50 80 93 +7C 00 90 73 90 73 40 91 00 01 7F 90 F0 04 04 37 +D0 58 09 B7 00 23 42 91 42 8D 00 54 00 54 00 A3 +01 23 42 85 42 89 00 54 00 54 01 A3 00 04 02 83 +00 34 03 03 02 62 83 B3 00 14 02 83 00 24 03 03 +02 62 84 33 40 83 82 B3 00 54 02 A3 00 59 80 23 +D0 58 01 B7 0F F0 02 93 00 51 80 23 FE 00 0A E3 +00 01 00 01 00 00 0F FF
diff --git a/verilog/dv/hex/mean.hex b/verilog/dv/hex/mean.hex new file mode 100755 index 0000000..a1a7a1a --- /dev/null +++ b/verilog/dv/hex/mean.hex
@@ -0,0 +1,8 @@ +@00000000 +B0 20 10 73 B8 20 10 73 5F 55 50 B7 55 50 80 93 +7C 00 90 73 90 73 40 91 00 01 7F 90 F0 04 04 37 +D0 58 09 B7 00 23 42 91 42 95 00 54 00 54 00 A3 +01 23 42 99 02 83 00 54 03 03 00 04 83 B3 00 14 +02 83 00 62 83 33 00 24 42 8D 00 53 02 53 43 B3 +00 74 01 A3 00 79 80 23 D0 58 01 B7 0F F0 02 93 +00 51 80 23 FE 00 0A E3 00 01 00 01 00 00 0F FF
diff --git a/verilog/dv/hex/uart.hex b/verilog/dv/hex/uart.hex index c6b2a4e..87076f3 100755 --- a/verilog/dv/hex/uart.hex +++ b/verilog/dv/hex/uart.hex
@@ -1,10 +1,9 @@ @00000000 -B0 20 10 73 B8 20 10 73 10 73 42 11 00 01 7F 92 -44 85 44 01 43 05 49 3D 4F 05 43 89 F0 04 0E 37 -D0 58 0E B7 03 E4 8A 63 4F 01 04 89 05 24 80 63 -02 64 E2 B3 00 02 86 63 08 63 03 05 B7 FD 00 93 -03 05 04 05 00 93 03 63 04 05 B7 D5 00 74 06 63 -44 01 43 05 BF D9 04 85 00 9E 20 23 00 9E A0 23 -0E 91 0E 11 FD E4 82 E3 FF 24 91 E3 D0 58 01 B7 -0F F0 02 93 00 51 80 23 FE 00 0A E3 00 01 00 01 - 00 00 0F FF +B0 20 10 73 B8 20 10 73 5F 55 50 B7 55 50 80 93 +7C 00 90 73 90 73 40 91 00 01 7F 90 F0 04 04 37 +D0 58 09 B7 00 23 42 91 42 8D 00 54 00 54 00 A3 +01 23 42 85 42 89 00 54 00 54 01 A3 00 04 02 83 +00 34 03 03 02 62 83 B3 00 14 02 83 00 24 03 03 +02 62 84 33 40 83 82 B3 00 54 02 A3 00 59 80 23 +D0 58 01 B7 0F F0 02 93 00 51 80 23 FE 00 0A E3 +00 01 00 01 00 00 0F FF
diff --git a/verilog/rtl/BrqRV_EB1/BrqRV_EB1.v b/verilog/rtl/BrqRV_EB1/BrqRV_EB1.v index 020487e..454b61b 100644 --- a/verilog/rtl/BrqRV_EB1/BrqRV_EB1.v +++ b/verilog/rtl/BrqRV_EB1/BrqRV_EB1.v
@@ -1,6 +1,6 @@ module eb1_brqrv_wrapper ( - VPWR, - VGND, + vccd1, + vssd1, clk, rst_l, dbg_rst_l, @@ -206,8 +206,8 @@ sv2v_cast_1 = inp; endfunction parameter [2270:0] pt = {232'h0808040001c0400000000000010102000060800080103c12160802000c, sv2v_cast_1(4'h0), 5'h01, 5'h01, 6'h03, 36'h000000000, 36'h000000000, 36'h000000000, 36'h000000000, 36'h000000000, 36'h000000000, 36'h000000000, 36'h000000000, 5'h00, 5'h00, 5'h00, 5'h00, 5'h00, 5'h00, 5'h00, 5'h00, 36'h0ffffffff, 36'h0ffffffff, 36'h0ffffffff, 36'h0ffffffff, 36'h0ffffffff, 36'h0ffffffff, 36'h0ffffffff, 36'h0ffffffff, 7'h02, 9'h00c, 7'h04, 10'h020, 7'h07, 5'h01, 10'h027, 8'h08, 9'h004, 8'h0f, 36'h0f0040000, 14'h0004, 6'h02, 7'h03, 5'h01, 7'h05, 9'h001, 6'h02, 8'h01, 5'h01, 5'h01, 7'h01, 7'h03, 6'h03, 8'h08, 7'h02, 8'h05, 8'h03, 5'h01, 18'h00200, 7'h04, 11'h040, 5'h01, 5'h00, 11'h047, 9'h00c, 11'h040, 8'h08, 8'h02, 8'h02, 7'h02, 5'h00, 8'h06, 13'h0010, 7'h01, 5'h01, 17'h00080, 7'h06, 9'h00d, 8'h02, 8'h02, 5'h01, 7'h02, 9'h003, 9'h004, 9'h00c, 5'h01, 5'h00, 8'h08, 9'h004, 5'h01, 8'h0a, 36'h0affff000, 14'h0004, 5'h01, 6'h02, 8'h03, 36'h000000000, 36'h000000000, 36'h000000000, 36'h000000000, 36'h000000000, 36'h000000000, 36'h000000000, 36'h000000000, 5'h00, 5'h00, 5'h00, 5'h00, 5'h00, 5'h00, 5'h00, 5'h00, 36'h0ffffffff, 36'h0ffffffff, 36'h0ffffffff, 36'h0ffffffff, 36'h0ffffffff, 36'h0ffffffff, 36'h0ffffffff, 36'h0ffffffff, 5'h00, 5'h00, 5'h01, 6'h02, 8'h03, 9'h004, 7'h02, 9'h00c, 8'h04, 5'h00, 5'h00, 36'h0f00c0000, 9'h00f, 8'h01, 8'h0f, 13'h0020, 12'h01f, 13'h0020, 8'h08, 5'h01, 6'h02, 8'h01, 5'h01}; - input wire VPWR; - input wire VGND; + inout wire vccd1; + inout wire vssd1; input wire clk; input wire rst_l; input wire dbg_rst_l; @@ -818,8 +818,8 @@ .iccm_wren((core_rst ? iccm_wren : iccm_instr_we)), .iccm_wr_data((core_rst ? iccm_wr_data : {7'h00, iccm_instr_wdata, 7'h00, iccm_instr_wdata})), .iccm_wr_size((core_rst ? iccm_wr_size : 3'b010)), - .VPWR(VPWR), - .VGND(VGND), + .vccd1(vccd1), + .vssd1(vssd1), .dccm_clk_override(dccm_clk_override), .icm_clk_override(icm_clk_override), .dec_tlu_core_ecc_disable(dec_tlu_core_ecc_disable), @@ -3056,8 +3056,8 @@ end endmodule module eb1_mem ( - VPWR, - VGND, + vccd1, + vssd1, clk, rst_l, dccm_clk_override, @@ -3113,8 +3113,8 @@ sv2v_cast_1 = inp; endfunction parameter [2270:0] pt = {232'h0808040001c0400000000000010102000060800080103c12160802000c, sv2v_cast_1(4'h0), 5'h01, 5'h01, 6'h03, 36'h000000000, 36'h000000000, 36'h000000000, 36'h000000000, 36'h000000000, 36'h000000000, 36'h000000000, 36'h000000000, 5'h00, 5'h00, 5'h00, 5'h00, 5'h00, 5'h00, 5'h00, 5'h00, 36'h0ffffffff, 36'h0ffffffff, 36'h0ffffffff, 36'h0ffffffff, 36'h0ffffffff, 36'h0ffffffff, 36'h0ffffffff, 36'h0ffffffff, 7'h02, 9'h00c, 7'h04, 10'h020, 7'h07, 5'h01, 10'h027, 8'h08, 9'h004, 8'h0f, 36'h0f0040000, 14'h0004, 6'h02, 7'h03, 5'h01, 7'h05, 9'h001, 6'h02, 8'h01, 5'h01, 5'h01, 7'h01, 7'h03, 6'h03, 8'h08, 7'h02, 8'h05, 8'h03, 5'h01, 18'h00200, 7'h04, 11'h040, 5'h01, 5'h00, 11'h047, 9'h00c, 11'h040, 8'h08, 8'h02, 8'h02, 7'h02, 5'h00, 8'h06, 13'h0010, 7'h01, 5'h01, 17'h00080, 7'h06, 9'h00d, 8'h02, 8'h02, 5'h01, 7'h02, 9'h003, 9'h004, 9'h00c, 5'h01, 5'h00, 8'h08, 9'h004, 5'h01, 8'h0a, 36'h0affff000, 14'h0004, 5'h01, 6'h02, 8'h03, 36'h000000000, 36'h000000000, 36'h000000000, 36'h000000000, 36'h000000000, 36'h000000000, 36'h000000000, 36'h000000000, 5'h00, 5'h00, 5'h00, 5'h00, 5'h00, 5'h00, 5'h00, 5'h00, 36'h0ffffffff, 36'h0ffffffff, 36'h0ffffffff, 36'h0ffffffff, 36'h0ffffffff, 36'h0ffffffff, 36'h0ffffffff, 36'h0ffffffff, 5'h00, 5'h00, 5'h01, 6'h02, 8'h03, 9'h004, 7'h02, 9'h00c, 8'h04, 5'h00, 5'h00, 36'h0f00c0000, 9'h00f, 8'h01, 8'h0f, 13'h0020, 12'h01f, 13'h0020, 8'h08, 5'h01, 6'h02, 8'h01, 5'h01}; - input wire VPWR; - input wire VGND; + inout wire vccd1; + inout wire vssd1; input wire clk; input wire rst_l; input wire dccm_clk_override; @@ -3175,8 +3175,8 @@ if (pt[1365-:5] == 1) begin : Gen_dccm_enable eb1_lsu_dccm_mem #(.pt(pt)) dccm( .clk_override(dccm_clk_override), - .VPWR(VPWR), - .VGND(VGND), + .vccd1(vccd1), + .vssd1(vssd1), .clk(clk), .active_clk(active_clk), .rst_l(rst_l), @@ -3216,8 +3216,8 @@ generate if (pt[927-:5]) begin : iccm eb1_ifu_iccm_mem #(.pt(pt)) iccm( - .VPWR(VPWR), - .VGND(VGND), + .vccd1(vccd1), + .vssd1(vssd1), .clk(clk), .active_clk(active_clk), .rst_l(rst_l), @@ -15149,8 +15149,8 @@ assign legal = (((((((((((((((((((((((((((((((((!i[13] & !i[12]) & i[11]) & i[1]) & !i[0]) | ((((!i[13] & !i[12]) & i[6]) & i[1]) & !i[0])) | (((!i[15] & !i[13]) & i[11]) & !i[1])) | ((((!i[13] & !i[12]) & i[5]) & i[1]) & !i[0])) | ((((!i[13] & !i[12]) & i[10]) & i[1]) & !i[0])) | (((!i[15] & !i[13]) & i[6]) & !i[1])) | (((i[15] & !i[12]) & !i[1]) & i[0])) | ((((!i[13] & !i[12]) & i[9]) & i[1]) & !i[0])) | (((!i[12] & i[6]) & !i[1]) & i[0])) | (((!i[15] & !i[13]) & i[5]) & !i[1])) | ((((!i[13] & !i[12]) & i[8]) & i[1]) & !i[0])) | (((!i[12] & i[5]) & !i[1]) & i[0])) | (((!i[15] & !i[13]) & i[10]) & !i[1])) | ((((!i[13] & !i[12]) & i[7]) & i[1]) & !i[0])) | ((((i[12] & i[11]) & !i[10]) & !i[1]) & i[0])) | (((!i[15] & !i[13]) & i[9]) & !i[1])) | ((((!i[13] & !i[12]) & i[4]) & i[1]) & !i[0])) | (((i[13] & i[12]) & !i[1]) & i[0])) | (((!i[15] & !i[13]) & i[8]) & !i[1])) | ((((!i[13] & !i[12]) & i[3]) & i[1]) & !i[0])) | (((i[13] & i[4]) & !i[1]) & i[0])) | ((((!i[13] & !i[12]) & i[2]) & i[1]) & !i[0])) | (((!i[15] & !i[13]) & i[7]) & !i[1])) | (((i[13] & i[3]) & !i[1]) & i[0])) | (((i[13] & i[2]) & !i[1]) & i[0])) | ((i[14] & !i[13]) & !i[1])) | (((!i[14] & !i[12]) & !i[1]) & i[0])) | ((((i[15] & !i[13]) & i[12]) & i[1]) & !i[0])) | ((((!i[15] & !i[13]) & !i[12]) & i[1]) & !i[0])) | (((!i[15] & !i[13]) & i[12]) & !i[1])) | ((i[14] & !i[13]) & !i[0]); endmodule module eb1_ifu_iccm_mem ( - VPWR, - VGND, + vccd1, + vssd1, clk, active_clk, rst_l, @@ -15172,8 +15172,8 @@ sv2v_cast_1 = inp; endfunction parameter [2270:0] pt = {232'h0808040001c0400000000000010102000060800080103c12160802000c, sv2v_cast_1(4'h0), 5'h01, 5'h01, 6'h03, 36'h000000000, 36'h000000000, 36'h000000000, 36'h000000000, 36'h000000000, 36'h000000000, 36'h000000000, 36'h000000000, 5'h00, 5'h00, 5'h00, 5'h00, 5'h00, 5'h00, 5'h00, 5'h00, 36'h0ffffffff, 36'h0ffffffff, 36'h0ffffffff, 36'h0ffffffff, 36'h0ffffffff, 36'h0ffffffff, 36'h0ffffffff, 36'h0ffffffff, 7'h02, 9'h00c, 7'h04, 10'h020, 7'h07, 5'h01, 10'h027, 8'h08, 9'h004, 8'h0f, 36'h0f0040000, 14'h0004, 6'h02, 7'h03, 5'h01, 7'h05, 9'h001, 6'h02, 8'h01, 5'h01, 5'h01, 7'h01, 7'h03, 6'h03, 8'h08, 7'h02, 8'h05, 8'h03, 5'h01, 18'h00200, 7'h04, 11'h040, 5'h01, 5'h00, 11'h047, 9'h00c, 11'h040, 8'h08, 8'h02, 8'h02, 7'h02, 5'h00, 8'h06, 13'h0010, 7'h01, 5'h01, 17'h00080, 7'h06, 9'h00d, 8'h02, 8'h02, 5'h01, 7'h02, 9'h003, 9'h004, 9'h00c, 5'h01, 5'h00, 8'h08, 9'h004, 5'h01, 8'h0a, 36'h0affff000, 14'h0004, 5'h01, 6'h02, 8'h03, 36'h000000000, 36'h000000000, 36'h000000000, 36'h000000000, 36'h000000000, 36'h000000000, 36'h000000000, 36'h000000000, 5'h00, 5'h00, 5'h00, 5'h00, 5'h00, 5'h00, 5'h00, 5'h00, 36'h0ffffffff, 36'h0ffffffff, 36'h0ffffffff, 36'h0ffffffff, 36'h0ffffffff, 36'h0ffffffff, 36'h0ffffffff, 36'h0ffffffff, 5'h00, 5'h00, 5'h01, 6'h02, 8'h03, 9'h004, 7'h02, 9'h00c, 8'h04, 5'h00, 5'h00, 36'h0f00c0000, 9'h00f, 8'h01, 8'h0f, 13'h0020, 12'h01f, 13'h0020, 8'h08, 5'h01, 6'h02, 8'h01, 5'h01}; - input wire VPWR; - input wire VGND; + inout wire vccd1; + inout wire vssd1; input wire clk; input wire active_clk; input wire rst_l; @@ -15277,8 +15277,8 @@ end else if (pt[917-:8] == 8) begin : iccm sky130_sram_1kbyte_1rw1r_32x256_8 sram( - .vccd1(VPWR), - .vssd1(VGND), + .vccd1(vccd1), + .vssd1(vssd1), .clk0(clk), .csb0(~iccm_clken[i]), .web0(~wren_bank[i]), @@ -15314,8 +15314,8 @@ end else if (pt[917-:8] == 10) begin : iccm sky130_sram_1kbyte_1rw1r_32x256_8 sram( - .vccd1(VPWR), - .vssd1(VGND), + .vccd1(vccd1), + .vssd1(vssd1), .clk0(clk), .csb0(~iccm_clken[i]), .web0(~wren_bank[i]), @@ -20591,8 +20591,8 @@ endgenerate endmodule module eb1_lsu_dccm_mem ( - VPWR, - VGND, + vccd1, + vssd1, clk, active_clk, rst_l, @@ -20615,8 +20615,8 @@ sv2v_cast_1 = inp; endfunction parameter [2270:0] pt = {232'h0808040001c0400000000000010102000060800080103c12160802000c, sv2v_cast_1(4'h0), 5'h01, 5'h01, 6'h03, 36'h000000000, 36'h000000000, 36'h000000000, 36'h000000000, 36'h000000000, 36'h000000000, 36'h000000000, 36'h000000000, 5'h00, 5'h00, 5'h00, 5'h00, 5'h00, 5'h00, 5'h00, 5'h00, 36'h0ffffffff, 36'h0ffffffff, 36'h0ffffffff, 36'h0ffffffff, 36'h0ffffffff, 36'h0ffffffff, 36'h0ffffffff, 36'h0ffffffff, 7'h02, 9'h00c, 7'h04, 10'h020, 7'h07, 5'h01, 10'h027, 8'h08, 9'h004, 8'h0f, 36'h0f0040000, 14'h0004, 6'h02, 7'h03, 5'h01, 7'h05, 9'h001, 6'h02, 8'h01, 5'h01, 5'h01, 7'h01, 7'h03, 6'h03, 8'h08, 7'h02, 8'h05, 8'h03, 5'h01, 18'h00200, 7'h04, 11'h040, 5'h01, 5'h00, 11'h047, 9'h00c, 11'h040, 8'h08, 8'h02, 8'h02, 7'h02, 5'h00, 8'h06, 13'h0010, 7'h01, 5'h01, 17'h00080, 7'h06, 9'h00d, 8'h02, 8'h02, 5'h01, 7'h02, 9'h003, 9'h004, 9'h00c, 5'h01, 5'h00, 8'h08, 9'h004, 5'h01, 8'h0a, 36'h0affff000, 14'h0004, 5'h01, 6'h02, 8'h03, 36'h000000000, 36'h000000000, 36'h000000000, 36'h000000000, 36'h000000000, 36'h000000000, 36'h000000000, 36'h000000000, 5'h00, 5'h00, 5'h00, 5'h00, 5'h00, 5'h00, 5'h00, 5'h00, 36'h0ffffffff, 36'h0ffffffff, 36'h0ffffffff, 36'h0ffffffff, 36'h0ffffffff, 36'h0ffffffff, 36'h0ffffffff, 36'h0ffffffff, 5'h00, 5'h00, 5'h01, 6'h02, 8'h03, 9'h004, 7'h02, 9'h00c, 8'h04, 5'h00, 5'h00, 36'h0f00c0000, 9'h00f, 8'h01, 8'h0f, 13'h0020, 12'h01f, 13'h0020, 8'h08, 5'h01, 6'h02, 8'h01, 5'h01}; - input wire VPWR; - input wire VGND; + inout wire vccd1; + inout wire vssd1; input wire clk; input wire active_clk; input wire rst_l; @@ -20789,8 +20789,8 @@ end else if (DCCM_INDEX_DEPTH == 1024) begin : dccm sky130_sram_1kbyte_1rw1r_32x256_8 sram( - .vccd1(VPWR), - .vssd1(VGND), + .vccd1(vccd1), + .vssd1(vssd1), .clk0(clk), .csb0(~dccm_clken[i]), .web0(~wren_bank[i]), @@ -20827,8 +20827,8 @@ end else if (DCCM_INDEX_DEPTH == 256) begin : dccm sky130_sram_1kbyte_1rw1r_32x256_8 sram( - .vccd1(VPWR), - .vssd1(VGND), + .vccd1(vccd1), + .vssd1(vssd1), .clk0(clk), .csb0(~dccm_clken[i]), .web0(~wren_bank[i]),
diff --git a/verilog/rtl/user_proj_example.v b/verilog/rtl/user_proj_example.v index a836eed..6aedda7 100644 --- a/verilog/rtl/user_proj_example.v +++ b/verilog/rtl/user_proj_example.v
@@ -131,8 +131,8 @@ //=========================================================================- eb1_brqrv_wrapper brqrv_top ( `ifdef USE_POWER_PINS - .VPWR ( vccd1 ), - .VGND ( vssd1 ), + .vccd1 ( vccd1 ), + .vssd1 ( vssd1 ), `endif .rst_l ( rst ), .dbg_rst_l ( ~wb_rst_i ),