[top] rename regfile HW reset generic

This commit is contained in:
stnolting 2024-12-22 18:06:33 +01:00
parent aa04eef81a
commit e9d30ab485
6 changed files with 9 additions and 9 deletions

View file

@ -246,7 +246,7 @@ The generic type "`suv(x:y)`" is an abbreviation for "`std_ulogic_vector(x downt
| `CPU_CLOCK_GATING_EN` | boolean | false | Implement sleep-mode clock gating; see sections <<_sleep_mode>> and <<_cpu_clock_gating>>.
| `CPU_FAST_MUL_EN` | boolean | false | Implement fast but large full-parallel multipliers (trying to infer DSP blocks); see section <<_cpu_arithmetic_logic_unit>>.
| `CPU_FAST_SHIFT_EN` | boolean | false | Implement fast but large full-parallel barrel shifters; see section <<_cpu_arithmetic_logic_unit>>.
| `CPU_REGFILE_HW_RST` | boolean | false | Implement full hardware reset for register file (use individual FFs instead of BRAM); see section <<_cpu_register_file>>.
| `CPU_RF_HW_RST_EN` | boolean | false | Implement full hardware reset for register file (use individual FFs instead of BRAM); see section <<_cpu_register_file>>.
4+^| **Physical Memory Protection (<<_smpmp_isa_extension>>)**
| `PMP_NUM_REGIONS` | natural | 0 | Number of implemented PMP regions (0..16).
| `PMP_MIN_GRANULARITY` | natural | 4 | Minimal region granularity in bytes. Has to be a power of two, min 4.

View file

@ -754,7 +754,7 @@ package neorv32_package is
CPU_CLOCK_GATING_EN : boolean := false;
CPU_FAST_MUL_EN : boolean := false;
CPU_FAST_SHIFT_EN : boolean := false;
CPU_REGFILE_HW_RST : boolean := false;
CPU_RF_HW_RST_EN : boolean := false;
-- Physical Memory Protection (PMP) --
PMP_NUM_REGIONS : natural range 0 to 16 := 0;
PMP_MIN_GRANULARITY : natural := 4;

View file

@ -64,7 +64,7 @@ entity neorv32_top is
CPU_CLOCK_GATING_EN : boolean := false; -- enable clock gating when in sleep mode
CPU_FAST_MUL_EN : boolean := false; -- use DSPs for M extension's multiplier
CPU_FAST_SHIFT_EN : boolean := false; -- use barrel shifter for shift operations
CPU_REGFILE_HW_RST : boolean := false; -- implement full hardware reset for register file
CPU_RF_HW_RST_EN : boolean := false; -- implement full hardware reset for register file
-- Physical Memory Protection (PMP) --
PMP_NUM_REGIONS : natural range 0 to 16 := 0; -- number of regions (0..16)
@ -502,7 +502,7 @@ begin
CPU_CLOCK_GATING_EN => CPU_CLOCK_GATING_EN,
CPU_FAST_MUL_EN => CPU_FAST_MUL_EN,
CPU_FAST_SHIFT_EN => CPU_FAST_SHIFT_EN,
CPU_REGFILE_HW_RST => CPU_REGFILE_HW_RST,
CPU_RF_HW_RST_EN => CPU_RF_HW_RST_EN,
-- Physical Memory Protection (PMP) --
PMP_NUM_REGIONS => PMP_NUM_REGIONS,
PMP_MIN_GRANULARITY => PMP_MIN_GRANULARITY,

View file

@ -249,7 +249,7 @@ proc setup_ip_gui {} {
add_params $group {
{ CPU_FAST_MUL_EN {DSP-Based Multiplier} }
{ CPU_FAST_SHIFT_EN {Barrel Shifter} }
{ CPU_REGFILE_HW_RST {Allow Full HW Reset for Register File} {Implement register file with FFs instead of BRAM to allow full hardware reset} }
{ CPU_RF_HW_RST_EN {Allow Full HW Reset for Register File} {Implement register file with FFs instead of BRAM to allow full hardware reset} }
}

View file

@ -62,7 +62,7 @@ entity neorv32_vivado_ip is
-- Tuning Options --
CPU_FAST_MUL_EN : boolean := false;
CPU_FAST_SHIFT_EN : boolean := false;
CPU_REGFILE_HW_RST : boolean := false;
CPU_RF_HW_RST_EN : boolean := false;
-- Physical Memory Protection (PMP) --
PMP_NUM_REGIONS : natural range 0 to 16 := 0;
PMP_MIN_GRANULARITY : natural := 4;
@ -390,7 +390,7 @@ begin
CPU_CLOCK_GATING_EN => false, -- clock gating is not supported here
CPU_FAST_MUL_EN => CPU_FAST_MUL_EN,
CPU_FAST_SHIFT_EN => CPU_FAST_SHIFT_EN,
CPU_REGFILE_HW_RST => CPU_REGFILE_HW_RST,
CPU_RF_HW_RST_EN => CPU_RF_HW_RST_EN,
-- Physical Memory Protection --
PMP_NUM_REGIONS => PMP_NUM_REGIONS,
PMP_MIN_GRANULARITY => PMP_MIN_GRANULARITY,

View file

@ -47,7 +47,7 @@ entity neorv32_tb is
CPU_CLOCK_GATING_EN : boolean := true; -- enable clock gating when in sleep mode
CPU_FAST_MUL_EN : boolean := true; -- use DSPs for M extension's multiplier
CPU_FAST_SHIFT_EN : boolean := true; -- use barrel shifter for shift operations
CPU_REGFILE_HW_RST : boolean := true; -- implement full hardware reset for register file
CPU_RF_HW_RST_EN : boolean := true; -- implement full hardware reset for register file
MEM_INT_IMEM_EN : boolean := true; -- implement processor-internal instruction memory
MEM_INT_IMEM_SIZE : natural := 32*1024; -- size of processor-internal instruction memory in bytes (use a power of 2)
MEM_INT_DMEM_EN : boolean := true; -- implement processor-internal data memory
@ -146,7 +146,7 @@ begin
CPU_CLOCK_GATING_EN => CPU_CLOCK_GATING_EN,
CPU_FAST_MUL_EN => CPU_FAST_MUL_EN,
CPU_FAST_SHIFT_EN => CPU_FAST_SHIFT_EN,
CPU_REGFILE_HW_RST => CPU_REGFILE_HW_RST,
CPU_RF_HW_RST_EN => CPU_RF_HW_RST_EN,
-- Physical Memory Protection (PMP) --
PMP_NUM_REGIONS => 5,
PMP_MIN_GRANULARITY => 4,