From 625652b9ca4d4833fe009c7cd342e7faa1f1275d Mon Sep 17 00:00:00 2001 From: David Harris Date: Thu, 9 Nov 2023 06:59:29 -0800 Subject: [PATCH 1/3] Reporting stall path in synthesis script, support Zcb in Imperas --- sim/imperas.ic | 2 ++ synthDC/scripts/synth.tcl | 2 ++ 2 files changed, 4 insertions(+) diff --git a/sim/imperas.ic b/sim/imperas.ic index 9a9a0fc8f..33f2cc62a 100644 --- a/sim/imperas.ic +++ b/sim/imperas.ic @@ -16,10 +16,12 @@ --override cpu/bitmanip_version=1.0.0 # More extensions +--override cpu/Zcb=T --override cpu/Zicbom=T --override cpu/Zicbop=T --override cpu/Zicboz=T --override cpu/Svpbmt=T +#--override cpu/Svadu=T # 64 KiB continuous huge pages supported --override cpu/Svnapot_page_mask=65536 diff --git a/synthDC/scripts/synth.tcl b/synthDC/scripts/synth.tcl index 9be076edf..ba548869f 100755 --- a/synthDC/scripts/synth.tcl +++ b/synthDC/scripts/synth.tcl @@ -308,6 +308,8 @@ set filename [format "%s%s" $outputDir "/reports/mindelay.rep"] redirect $filename { report_timing -capacitance -transition_time -nets -delay_type min -nworst 1 } set filename [format "%s%s" $outputDir "/reports/per_module_timing.rep"] +redirect -append $filename { echo "\n\n\n//// Critical paths through Stall ////\n\n\n" } +redirect -append $filename { report_timing -capacitance -transition_time -nets -through {Stall*} -nworst 1 } redirect -append $filename { echo "\n\n\n//// Critical paths through ifu ////\n\n\n" } redirect -append $filename { report_timing -capacitance -transition_time -nets -through {ifu/*} -nworst 1 } redirect -append $filename { echo "\n\n\n//// Critical paths through ieu ////\n\n\n" } From 7e0058118753eb839ff624330e3341151b510141 Mon Sep 17 00:00:00 2001 From: David Harris Date: Fri, 10 Nov 2023 06:27:25 -0800 Subject: [PATCH 2/3] Add Svadu support and SPI to imperas configuration --- sim/imperas.ic | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/sim/imperas.ic b/sim/imperas.ic index 33f2cc62a..259affc08 100644 --- a/sim/imperas.ic +++ b/sim/imperas.ic @@ -42,10 +42,14 @@ --override cpu/ignore_non_leaf_DAU=1 --override cpu/wfi_is_nop=T --override cpu/misa_Extensions_mask=0x0 ---override cpu/updatePTEA=T ---override cpu/updatePTED=T --override cpu/Sstc=T +# Enable SVADU hardware update of A/D bits when menvcfg.HADE=1 +--override cpu/Svadu=T +--override cpu/updatePTEA=F +--override cpu/updatePTED=F + + # THIS NEEDS FIXING to 16 --override cpu/PMP_registers=16 --override cpu/PMP_undefined=T @@ -71,7 +75,8 @@ --callcommand refRoot/cpu/setPMA -lo 0x0002000000 -hi 0x000200FFFF -attributes " rw--A- 1248 " # CLINT --callcommand refRoot/cpu/setPMA -lo 0x000C000000 -hi 0x000FFFFFFF -attributes " rw--A- --4- " # PLIC --callcommand refRoot/cpu/setPMA -lo 0x0010000000 -hi 0x0010000007 -attributes " rw--A- 1--- " # UART0 error - 0x10000000 - 0x100000FF ---callcommand refRoot/cpu/setPMA -lo 0x0010060000 -hi 0x00100600FF -attributes " rw--A- --4- " # GPIO error - 0x10006000 - 0x100060FF +--callcommand refRoot/cpu/setPMA -lo 0x0010060000 -hi 0x00100600FF -attributes " rw--A- --4- " # GPIO error - 0x10069000 - 0x100600FF +--callcommand refRoot/cpu/setPMA -lo 0x0010040000 -hi 0x0010040FFF -attributes " rw--A- --4- " # SPI error - 0x10040000 - 0x10040FFF --callcommand refRoot/cpu/setPMA -lo 0x0080000000 -hi 0x008FFFFFFF -attributes " rwx--- 1248 " # UNCORE_RAM # Enable the Imperas instruction coverage From 426aabbc1a50f39a56f2faa6b7c9db09b9d36706 Mon Sep 17 00:00:00 2001 From: David Harris Date: Fri, 10 Nov 2023 08:26:32 -0800 Subject: [PATCH 3/3] Imperas commenting --- sim/imperas.ic | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/sim/imperas.ic b/sim/imperas.ic index 259affc08..adb10dcad 100644 --- a/sim/imperas.ic +++ b/sim/imperas.ic @@ -17,12 +17,14 @@ # More extensions --override cpu/Zcb=T + +# Cache block operations --override cpu/Zicbom=T --override cpu/Zicbop=T --override cpu/Zicboz=T ---override cpu/Svpbmt=T -#--override cpu/Svadu=T + # 64 KiB continuous huge pages supported +--override cpu/Svpbmt=T --override cpu/Svnapot_page_mask=65536