hptw: default state should be unreachable

This commit is contained in:
David Harris 2021-07-17 11:33:16 -04:00
parent ef83a44c4d
commit 6d28f3fe08

View File

@ -201,6 +201,7 @@ module pagetablewalker
assign TerapageMisaligned = 0; // not applicable assign TerapageMisaligned = 0; // not applicable
assign GigapageMisaligned = 0; // not applicable assign GigapageMisaligned = 0; // not applicable
assign MegapageMisaligned = |(CurrentPPN[9:0]); // must have zero PPN0 assign MegapageMisaligned = |(CurrentPPN[9:0]); // must have zero PPN0
assign HPTWPAdrE = TranslationPAdr[31:0]; // ***not right?
end else begin end else begin
assign TerapageMisaligned = |(CurrentPPN[26:0]); // must have zero PPN2, PPN1, PPN0 assign TerapageMisaligned = |(CurrentPPN[26:0]); // must have zero PPN2, PPN1, PPN0
assign GigapageMisaligned = |(CurrentPPN[17:0]); // must have zero PPN1 and PPN0 assign GigapageMisaligned = |(CurrentPPN[17:0]); // must have zero PPN1 and PPN0
@ -232,15 +233,16 @@ module pagetablewalker
else NextWalkerState = FAULT; else NextWalkerState = FAULT;
LEAF: NextWalkerState = IDLE; LEAF: NextWalkerState = IDLE;
FAULT: NextWalkerState = IDLE; FAULT: NextWalkerState = IDLE;
// Default case should never happen, but is included for linter. default: begin
default: NextWalkerState = IDLE; $error("Default state in HPTW should be unreachable")
NextWalkerState = IDLE; // should never be reached
end
endcase endcase
end end
// Assign outputs to ahblite // Assign outputs to ahblite
// *** Currently truncate address to 32 bits. This must be changed if // *** Currently truncate address to 32 bits. This must be changed if
// we support larger physical address spaces // we support larger physical address spaces
assign HPTWPAdrE = TranslationPAdr[31:0];
end else begin end else begin
@ -278,7 +280,10 @@ module pagetablewalker
else NextWalkerState = FAULT; else NextWalkerState = FAULT;
LEAF: NextWalkerState = IDLE; LEAF: NextWalkerState = IDLE;
FAULT: NextWalkerState = IDLE; FAULT: NextWalkerState = IDLE;
default: NextWalkerState = IDLE; // should never be reached default: begin
$error("Default state in HPTW should be unreachable")
NextWalkerState = IDLE; // should never be reached
end
endcase endcase
end end