mirror of
https://github.com/openhwgroup/cvw
synced 2025-02-11 06:05:49 +00:00
Modified LSU verilog is compatible with vivado. have to use extra logic IEUAdrExtM.
This commit is contained in:
parent
beb1988539
commit
b6d75d453a
@ -94,6 +94,7 @@ module lsu
|
|||||||
logic DTLBPageFaultM;
|
logic DTLBPageFaultM;
|
||||||
|
|
||||||
logic [`PA_BITS-1:0] MemPAdrM; // from mmu to dcache
|
logic [`PA_BITS-1:0] MemPAdrM; // from mmu to dcache
|
||||||
|
logic [`XLEN+1:0] IEUAdrExtM;
|
||||||
logic DTLBMissM;
|
logic DTLBMissM;
|
||||||
logic DTLBWriteM;
|
logic DTLBWriteM;
|
||||||
logic HPTWStall;
|
logic HPTWStall;
|
||||||
@ -230,7 +231,8 @@ module lsu
|
|||||||
//flop #(`PA_BITS) HPTWAdrMReg(clk, HPTWAdr, HPTWAdrM); // delay HPTWAdrM by a cycle
|
//flop #(`PA_BITS) HPTWAdrMReg(clk, HPTWAdr, HPTWAdrM); // delay HPTWAdrM by a cycle
|
||||||
|
|
||||||
assign AtomicMtoDCache = SelHPTW ? 2'b00 : AtomicM;
|
assign AtomicMtoDCache = SelHPTW ? 2'b00 : AtomicM;
|
||||||
assign MemPAdrNoTranslate = SelHPTW ? HPTWAdr : {2'b00, IEUAdrM}[`PA_BITS-1:0];
|
assign IEUAdrExtM = {2'b00, IEUAdrM};
|
||||||
|
assign MemPAdrNoTranslate = SelHPTW ? HPTWAdr : IEUAdrExtM[`PA_BITS-1:0];
|
||||||
assign MemAdrE = SelHPTW ? HPTWAdr[11:0] : IEUAdrE[11:0];
|
assign MemAdrE = SelHPTW ? HPTWAdr[11:0] : IEUAdrE[11:0];
|
||||||
assign CPUBusy = SelHPTW ? 1'b0 : StallW;
|
assign CPUBusy = SelHPTW ? 1'b0 : StallW;
|
||||||
// always block interrupts when using the hardware page table walker.
|
// always block interrupts when using the hardware page table walker.
|
||||||
|
Loading…
Reference in New Issue
Block a user