Ross Thompson
3eeecd2f27
Merge branch 'boot' into mergeBoot
...
Merges Jacob's new sdc controller into wally.
2023-07-21 17:43:45 -05:00
Ross Thompson
9ba3113e9c
Improved critical path.
2023-07-19 14:59:37 -05:00
Ross Thompson
05b1cce2d1
RTL changes for Xcelium.
2023-07-11 10:51:02 -05:00
Ross Thompson
a011b7d591
Merge branch 'testbench-params2'
2023-06-15 15:31:13 -05:00
Ross Thompson
e431f90cf3
Found a whole bunch of files still using the old `define configurations.
2023-06-15 13:09:07 -05:00
Harshini Srinath
794d080aa3
Update pmpchecker.sv
...
Program clean up
2023-06-12 18:44:36 -07:00
Harshini Srinath
5a7ee9f1c0
Update pmpadrdec.sv
...
Program clean up
2023-06-12 18:41:47 -07:00
Harshini Srinath
ed1d80e37b
Update pmachecker.sv
...
Program clean up
2023-06-12 18:39:36 -07:00
Harshini Srinath
91836a6cf3
Update mmu.sv
...
Program clean up
2023-06-12 18:36:04 -07:00
Harshini Srinath
3e969c84c7
Update hptw.sv
...
Program clean up
2023-06-12 18:31:38 -07:00
Harshini Srinath
3a8631854f
Update adrdecs.sv
...
Program clean up
2023-06-12 18:22:32 -07:00
Harshini Srinath
ace24cb879
Update adrdec.sv
...
Program clean up
2023-06-12 17:28:21 -07:00
Ross Thompson
e56497101a
Updated source code to be compatible with verilator 5.011 for lint only.
2023-05-31 10:44:23 -05:00
Ross Thompson
3c94c186db
Possible fix for Linux bug and bug 203. ImperasDV mismatches in linux boot around 571M instructions after the login prompt.
...
This bug occurs when there are back to back HPTW requests and the first generates an access fault during the walk. The old implementation uses a delayed version of the fault to prevent the HTPW fsm from transitioning out of the IDLE state. Because the first request generates the fault and the second request is pipelined the second request appears as if it also faults so the FSM does not perform the walk.
The new implementation adds a FAULT state. When the HPTW generates an access fault it transitions to this state removes the HPTWStall and then transitions to IDLE. There may still be a remaining bug here if the pipeline is stalled for another reason. However I don't think it is possible by construction. The only possible sources of stalls at this point would be IFU and LSU stalls and both are required to make this condition happen.
2023-05-30 15:20:24 -05:00
Jacob Pease
2ad9c72acc
The Vivado-RISC-V SDC works. Wally is now booting through it.
2023-05-26 15:42:33 -05:00
Ross Thompson
3765ebfb9f
PMA checker's address decoder is now parameterized. I did not see bit slicing in Lim's code. I'm not sure how they got around this issue.
2023-05-26 11:06:48 -05:00
Ross Thompson
7c364d5a77
Updated mmu's tlb and hptw to use Lim's parameterization.
2023-05-24 18:02:22 -05:00
Ross Thompson
438c955d1c
PM(P/A) checkers parameterized based on Lim's work.
2023-05-24 17:20:55 -05:00
Ross Thompson
febb2442db
Partial parameterization into mmu.
2023-05-24 16:12:41 -05:00
David Harris
c1786bfec8
IMMU exclude non word-sized accesses
2023-05-01 08:14:19 -07:00
David Harris
d5c350c597
Merged coverage exclusions for PMP
2023-04-28 08:04:25 -07:00
David Harris
ca5a71bbe5
PMA Checker coverage
2023-04-28 07:53:59 -07:00
David Harris
22e4f82a99
Commenting
2023-04-28 07:52:08 -07:00
David Harris
f6f43e826a
Removed clear from TLBLRU because there is no need to flush LRU state and it causes coverage issues
2023-04-28 07:03:46 -07:00
Liam
6803347a49
Pmpadrdecs test cases changing AdrMode to 2 or 3
...
Setting AdrMode to 2 or 3 for pmpadrdecs[0-4] writing values to pmpcfg0 to change AdrMode to 2 or 3
Also exclusion for pmpadrdecs[0] coverage case for PAgePMPAdrIn being hardwired to 1 in pmpadrdec.sv
2023-04-27 12:23:35 -07:00
Limnanthes Serafini
c427b4c896
Misc typo and indent fixing.
2023-04-13 16:54:15 -07:00
Ross Thompson
1478115faf
Fixed wally64/32priv test hangup.
...
The fix for the issue 203 had a lingering bug which did not suppress a bus access if the hptw short circuits on a pma/p fault.
2023-04-05 23:13:45 -05:00
Ross Thompson
7c2512446c
Progress on bug 203.
2023-04-05 13:20:04 -05:00
David Harris
aa31b45d88
Fixed RV32 tests after PMP fix
2023-03-28 08:35:23 -07:00
David Harris
39d3bf8e8a
Fixed PMP issue 132. Updated tests to initialize PMP before using. Needs to remake tests
2023-03-28 06:58:17 -07:00
Ross Thompson
730f3ac84e
Fixed all tap/space issue in RTL.
2023-03-24 17:32:25 -05:00
David Harris
77fb1b57f4
Fix Issue 145
2023-03-22 04:33:14 -07:00
David Harris
02e7e7d011
Added comments about PMP checker fixes when test cases will be ready to initialize PMP before entering user mode
2023-03-19 05:46:34 -07:00
Ross Thompson
b8dca927f2
Merge branch 'main' of https://github.com/openhwgroup/cvw
2023-03-06 18:39:15 -06:00
Ross Thompson
6fc157e628
Renamed PCFSpill to PCSpillF.
2023-03-06 17:50:57 -06:00
David Harris
e78591093e
Renamed I/D TLBMissOrDAFault to TLBMissOrUpdateDA for consistency with UpdateDA
2023-03-01 11:18:00 -08:00
David Harris
0d3d499940
hptw typo fix
2023-02-26 19:38:34 -08:00
David Harris
907fbfec38
Simplified Access fault logic in HPTW
2023-02-26 18:50:37 -08:00
David Harris
d3f5708ded
StoreAmo faults are generated instead of load faults on AMO operations
2023-02-26 18:35:10 -08:00
David Harris
d2fd34efe6
Renamed DAPageFault to UpdateDA
2023-02-26 17:51:45 -08:00
David Harris
246deeda82
renamed UpperBitsUnequalPageFault to UpperBitsUnequal
2023-02-26 17:32:34 -08:00
David Harris
099267ffce
moved tlb to subdirectory
2023-02-26 17:31:03 -08:00
David Harris
a9e884acc8
Moved TLB into subdirectory of MMU
2023-02-26 17:28:05 -08:00
David Harris
2ad62ea31f
Removed unneeded TLBFlush from TLBMiss
2023-02-26 10:04:16 -08:00
David Harris
2203c05724
Access faults are geted by ~TLBMiss rather than ~(Translate & ~TLBHit)
2023-02-26 09:58:34 -08:00
David Harris
4579a9d0c2
Renamed HPTW_WRITES_SUPPORTED to SVADU_SUPPORTED
2023-02-26 09:38:32 -08:00
David Harris
e3e5100f8d
Renamed DAPageFault to HPTWDAPageFault in hptw to avoid name conflict with DAPageFault from tlbcontrol
2023-02-26 07:12:43 -08:00
David Harris
27acb90217
Fixed SSTC being unusable in M-MODE without Status.TM. Disable STIMECMP registers when SSTC_SUPPORTED = 0
2023-02-26 06:30:43 -08:00
David Harris
60752fe51c
Fixed special cases of address decoder and documented better
2023-02-24 07:52:46 -08:00
David Harris
5b8d1e4134
PMP checker size check to avoid spurious warnings
2023-02-19 16:08:23 -08:00