From b839da804fabe815e480e2e08116124724558ef1 Mon Sep 17 00:00:00 2001 From: "luigi.giuffrida" Date: Thu, 12 Dec 2024 15:16:29 +0100 Subject: [PATCH] WIP --- core-v-mini-mcu.core | 10 +++++++++- hw/simulation/pad_cell_output.sv | 3 ++- hw/vendor/waiver/lint/picorv32.vlt | 1 + tb/tb_top.cpp | 1 - 4 files changed, 12 insertions(+), 3 deletions(-) diff --git a/core-v-mini-mcu.core b/core-v-mini-mcu.core index d4e8757ba..0878add00 100644 --- a/core-v-mini-mcu.core +++ b/core-v-mini-mcu.core @@ -370,15 +370,23 @@ targets: - '--trace-fst' - '--trace-structs' - '--trace-params' + - '--pins-inout-enables' - '--trace-max-array 1024' - '--x-assign unique' - '--x-initial unique' + - '--binary' + - '--build' + - '--build-jobs 4' + - '-j 4' - '--exe tb_top.cpp' - '-CFLAGS "-Wall -g -fpermissive"' - '-LDFLAGS "-pthread -lutil -lelf"' - "-Wall" + - '--threads 4' - '--timing' - - '--timescale 1ns/1ps' + - '--timescale-override 1ns/1ps' + - '-O3' + - '--verilate-jobs 4' sim_sc: <<: *default_target diff --git a/hw/simulation/pad_cell_output.sv b/hw/simulation/pad_cell_output.sv index 794e177d0..45393d68f 100644 --- a/hw/simulation/pad_cell_output.sv +++ b/hw/simulation/pad_cell_output.sv @@ -19,7 +19,8 @@ module pad_cell_output #( logic pad; assign pad_out_o = 1'b0; - assign pad_io = pad; + // CAMBIATO QUESTO + assign pad_io = (pad_oe_i) ? pad : 1'bz; assign pad = pad_in_i; endmodule diff --git a/hw/vendor/waiver/lint/picorv32.vlt b/hw/vendor/waiver/lint/picorv32.vlt index 1bd744acd..27d758660 100644 --- a/hw/vendor/waiver/lint/picorv32.vlt +++ b/hw/vendor/waiver/lint/picorv32.vlt @@ -14,3 +14,4 @@ lint_off -rule WIDTHTRUNC -file "*picosoc/*.v" -match "*" lint_off -rule UNUSEDSIGNAL -file "*picosoc/*.v" -match "*" lint_off -rule CASEINCOMPLETE -file "*picosoc/*.v" -match "*" lint_off -rule BLKSEQ -file "*picosoc/*.v" -match "*" +lint_off -rule SYNCASYNCNET -file "*picosoc/*.v" -match "*" diff --git a/tb/tb_top.cpp b/tb/tb_top.cpp index 7dd4757e6..ae049e241 100644 --- a/tb/tb_top.cpp +++ b/tb/tb_top.cpp @@ -88,7 +88,6 @@ int main (int argc, char * argv[]) dut->rst_ni = 0; runCycles(50, dut, m_trace); - dut->rst_ni = 1; runCycles(20, dut, m_trace); std::cout<<"Reset Released"<< std::endl;