mirror of
https://github.com/openhwgroup/cvw
synced 2025-02-11 06:05:49 +00:00
Removed .* from MMU.
This commit is contained in:
parent
41052178ce
commit
8d6c48cfb1
@ -96,11 +96,14 @@ module mmu #(parameter TLB_ENTRIES = 8, // number of TLB Entries
|
|||||||
assign ReadAccess = ExecuteAccessF | ReadAccessM; // execute also acts as a TLB read. Execute and Read are never active for the same MMU, so safe to mix pipestages
|
assign ReadAccess = ExecuteAccessF | ReadAccessM; // execute also acts as a TLB read. Execute and Read are never active for the same MMU, so safe to mix pipestages
|
||||||
assign WriteAccess = WriteAccessM;
|
assign WriteAccess = WriteAccessM;
|
||||||
tlb #(.TLB_ENTRIES(TLB_ENTRIES), .ITLB(IMMU))
|
tlb #(.TLB_ENTRIES(TLB_ENTRIES), .ITLB(IMMU))
|
||||||
tlb(.SATP_MODE(SATP_REGW[`XLEN-1:`XLEN-`SVMODE_BITS]),
|
tlb(.clk, .reset,
|
||||||
|
.SATP_MODE(SATP_REGW[`XLEN-1:`XLEN-`SVMODE_BITS]),
|
||||||
.SATP_ASID(SATP_REGW[`ASID_BASE+`ASID_BITS-1:`ASID_BASE]),
|
.SATP_ASID(SATP_REGW[`ASID_BASE+`ASID_BITS-1:`ASID_BASE]),
|
||||||
.VAdr,
|
.VAdr, .STATUS_MXR, .STATUS_SUM, .STATUS_MPRV, .STATUS_MPP,
|
||||||
.*);
|
.PrivilegeModeW, .ReadAccess, .WriteAccess,
|
||||||
|
.DisableTranslation, .PTE, .PageTypeWriteVal,
|
||||||
|
.TLBWrite, .TLBFlush, .TLBPAdr, .TLBMiss, .TLBHit,
|
||||||
|
.Translate, .TLBPageFault);
|
||||||
end else begin:tlb// just pass address through as physical
|
end else begin:tlb// just pass address through as physical
|
||||||
assign Translate = 0;
|
assign Translate = 0;
|
||||||
assign TLBMiss = 0;
|
assign TLBMiss = 0;
|
||||||
@ -116,8 +119,15 @@ module mmu #(parameter TLB_ENTRIES = 8, // number of TLB Entries
|
|||||||
// Check physical memory accesses
|
// Check physical memory accesses
|
||||||
///////////////////////////////////////////
|
///////////////////////////////////////////
|
||||||
|
|
||||||
pmachecker pmachecker(.*);
|
pmachecker pmachecker(.PhysicalAddress, .Size,
|
||||||
pmpchecker pmpchecker(.*);
|
.AtomicAccessM, .ExecuteAccessF, .WriteAccessM, .ReadAccessM,
|
||||||
|
.Cacheable, .Idempotent, .AtomicAllowed,
|
||||||
|
.PMAInstrAccessFaultF, .PMALoadAccessFaultM, .PMAStoreAccessFaultM);
|
||||||
|
|
||||||
|
pmpchecker pmpchecker(.PhysicalAddress, .PrivilegeModeW,
|
||||||
|
.PMPCFG_ARRAY_REGW, .PMPADDR_ARRAY_REGW,
|
||||||
|
.ExecuteAccessF, .WriteAccessM, .ReadAccessM,
|
||||||
|
.PMPInstrAccessFaultF, .PMPLoadAccessFaultM, .PMPStoreAccessFaultM);
|
||||||
|
|
||||||
// If TLB miss and translating we want to not have faults from the PMA and PMP checkers.
|
// If TLB miss and translating we want to not have faults from the PMA and PMP checkers.
|
||||||
// assign SquashBusAccess = PMASquashBusAccess | PMPSquashBusAccess;
|
// assign SquashBusAccess = PMASquashBusAccess | PMPSquashBusAccess;
|
||||||
|
Loading…
Reference in New Issue
Block a user