diff --git a/wally-pipelined/src/mmu/pmpadrdec.sv b/wally-pipelined/src/mmu/pmpadrdec.sv index 618167827..9fe28b261 100644 --- a/wally-pipelined/src/mmu/pmpadrdec.sv +++ b/wally-pipelined/src/mmu/pmpadrdec.sv @@ -82,7 +82,7 @@ module pmpadrdec ( assign NAMask[1:0] = {2'b11}; prioritythemometer #(`PA_BITS-2) namaskgen( - .a({PMPAdr[`PA_BITS-4:0], (AdrMode == NAPOT)}), + .a({~PMPAdr[`PA_BITS-4:0], (AdrMode == NAPOT)}), // *** confusing bit bussing to match the logic for the inside of the thermometer. .y(NAMask[`PA_BITS-1:2])); assign NAMatch = &((PhysicalAddress ~^ CurrentAdrFull) | NAMask); diff --git a/wally-pipelined/src/mmu/priorityonehot.sv b/wally-pipelined/src/mmu/priorityonehot.sv index 7a17f8d28..f02f8ccc5 100644 --- a/wally-pipelined/src/mmu/priorityonehot.sv +++ b/wally-pipelined/src/mmu/priorityonehot.sv @@ -40,13 +40,16 @@ module priorityonehot #(parameter ENTRIES = 8) ( logic [ENTRIES-1:0] nolower; // generate thermometer code mask - genvar i; - generate - assign nolower[0] = 1'b1; - for (i=1; i