David Harris
|
ddd9110f7b
|
hptw: Merged RV32/64 FSMs
|
2021-07-17 11:55:24 -04:00 |
|
David Harris
|
36a8d23222
|
hptw: FSM simplification
|
2021-07-17 11:41:43 -04:00 |
|
David Harris
|
6d28f3fe08
|
hptw: default state should be unreachable
|
2021-07-17 11:33:16 -04:00 |
|
David Harris
|
ef83a44c4d
|
hptw: factored Misaligned
|
2021-07-17 11:31:16 -04:00 |
|
David Harris
|
e3b26b7b23
|
hptw: factored HPTWRead
|
2021-07-17 11:25:59 -04:00 |
|
David Harris
|
1bbc932bfd
|
hptw: factored HPTWRead
|
2021-07-17 11:25:52 -04:00 |
|
David Harris
|
37cc2ca30f
|
hptw: factored pregen
|
2021-07-17 11:11:10 -04:00 |
|
David Harris
|
1595e4f992
|
HPTW: more cleanup
|
2021-07-17 04:55:01 -04:00 |
|
David Harris
|
b74f3b14ec
|
HPTW: factored out DTLBWrite/ITLBWrite
|
2021-07-17 04:44:23 -04:00 |
|
David Harris
|
9775294a6f
|
HPTW: factored out PageTableENtry
|
2021-07-17 04:40:01 -04:00 |
|
David Harris
|
f168bd6749
|
more cleaning up FSM
|
2021-07-17 04:35:51 -04:00 |
|
David Harris
|
e2600bc55d
|
cleaning up FSM
|
2021-07-17 04:26:41 -04:00 |
|
David Harris
|
52a7dd9ac0
|
Simplify FSM
|
2021-07-17 04:12:31 -04:00 |
|
David Harris
|
31a3b39e5c
|
Pulled TranslationPAdr mux out of HPTW FSM
|
2021-07-17 04:06:26 -04:00 |
|
David Harris
|
7eb03c2ff6
|
Simplified bad PTE detection
|
2021-07-17 03:30:17 -04:00 |
|
David Harris
|
b8ee8a8ce0
|
Pulled out shared PTEReg
|
2021-07-17 03:21:09 -04:00 |
|
David Harris
|
d3974fafdd
|
Flip-flop clean-up
|
2021-07-17 03:15:47 -04:00 |
|
David Harris
|
de72dff382
|
Flip-flop clean-up
|
2021-07-17 03:12:24 -04:00 |
|
David Harris
|
a5ac606dda
|
Flip-flop clean-up
|
2021-07-17 03:10:17 -04:00 |
|
David Harris
|
2b0f8e9cf6
|
Started pagetablewalker cleanup: combined state flops shared for both RV versions
|
2021-07-17 02:53:52 -04:00 |
|
David Harris
|
fe8910437a
|
Replaced separate PageTypeF and PageTypeM with common PageType
|
2021-07-17 02:31:23 -04:00 |
|
David Harris
|
622a14cbdd
|
Removed more unused signals from ahblite
|
2021-07-17 02:21:54 -04:00 |
|
David Harris
|
52fcc47cdf
|
Removed rest of HRDATAW from ahblite
|
2021-07-17 02:15:24 -04:00 |
|
David Harris
|
1d171d7ea6
|
Commented out HRDATAW logic in ebu
|
2021-07-17 02:10:57 -04:00 |
|
David Harris
|
d6f859da18
|
renamed or_rows.sv
|
2021-07-16 20:17:03 -04:00 |
|
David Harris
|
f69393f197
|
Reduced size of physical memory by 16 for performance
|
2021-07-16 20:10:12 -04:00 |
|
Kip Macsai-Goren
|
3d14d573a0
|
included virtual memory tests in testbench
|
2021-07-16 17:57:24 -04:00 |
|
Ross Thompson
|
e9649eb1f5
|
Made furture progress in the mmu tests.
|
2021-07-16 15:56:06 -05:00 |
|
Ross Thompson
|
965f34d78f
|
Added guide for Ben to do linux conversion.
|
2021-07-16 15:04:30 -05:00 |
|
Ross Thompson
|
abce241f68
|
Also changed the shadow ram's dcache copy widths.
Merge branch 'dcache' into main
|
2021-07-16 14:21:09 -05:00 |
|
Ross Thompson
|
6ab7cd0f4d
|
Updated the config so the tim has a bigger range.
|
2021-07-16 12:35:00 -05:00 |
|
Ross Thompson
|
bebc7cc5e3
|
Updated wave file.
|
2021-07-16 12:34:37 -05:00 |
|
Ross Thompson
|
d3715acf2d
|
Fixed walker fault interaction with dcache.
|
2021-07-16 12:22:13 -05:00 |
|
bbracker
|
e51ab63a86
|
reduce number of UART ports to 1
|
2021-07-16 12:42:29 -04:00 |
|
bbracker
|
d38109bc1c
|
changed stop of linux boot from arch_cpu_idle to do_idle
|
2021-07-16 12:27:15 -04:00 |
|
Ross Thompson
|
5ca7dc619c
|
Updated the ptw, lsuarb and dcache to hopefully solve the interlock issues.
|
2021-07-16 11:12:57 -05:00 |
|
bbracker
|
f7092c60d1
|
incremental linux config de-bloating
|
2021-07-16 12:08:58 -04:00 |
|
bbracker
|
629d48f20f
|
incremental linux config de-bloating
|
2021-07-16 11:33:11 -04:00 |
|
bbracker
|
0f1060ceb7
|
incremental linux config de-bloating
|
2021-07-16 11:15:25 -04:00 |
|
bbracker
|
fcb63a409a
|
incremental linux config de-bloating
|
2021-07-16 01:58:21 -04:00 |
|
bbracker
|
0a1aa821b8
|
incremental linux config de-bloating
|
2021-07-16 01:54:36 -04:00 |
|
bbracker
|
149be959e0
|
incremental linux config de-bloating
|
2021-07-16 01:43:16 -04:00 |
|
bbracker
|
e5e3a60574
|
incremental linux config de-bloating
|
2021-07-16 01:33:51 -04:00 |
|
bbracker
|
7266b29656
|
incremental linux config de-bloating
|
2021-07-16 01:25:41 -04:00 |
|
bbracker
|
09de4ded87
|
incremental linux config de-bloating
|
2021-07-16 01:00:12 -04:00 |
|
bbracker
|
f7b43211ac
|
incremental linux config de-bloating
|
2021-07-16 00:46:22 -04:00 |
|
bbracker
|
c5e9734851
|
incremental linux config de-bloating
|
2021-07-16 00:41:18 -04:00 |
|
bbracker
|
d6a4b8ccfa
|
incremental linux config de-bloating
|
2021-07-16 00:34:41 -04:00 |
|
bbracker
|
285e5941e2
|
incremental linux config de-bloating
|
2021-07-16 00:16:12 -04:00 |
|
bbracker
|
a6071f3fb0
|
incremental linux config de-bloating
|
2021-07-16 00:10:31 -04:00 |
|
bbracker
|
226474051d
|
incremental linux config de-bloating
|
2021-07-15 23:53:15 -04:00 |
|
bbracker
|
0a15468fd5
|
incremental linux config de-bloating
|
2021-07-15 23:30:24 -04:00 |
|
bbracker
|
588a7d0341
|
incremental linux config de-bloating
|
2021-07-15 23:12:21 -04:00 |
|
bbracker
|
703b72fb89
|
incremental linux config de-bloating
|
2021-07-15 23:00:20 -04:00 |
|
bbracker
|
847edccbd7
|
incremental linux config de-bloating
|
2021-07-15 21:33:52 -04:00 |
|
bbracker
|
2091a7104e
|
incremental linux config de-bloating
|
2021-07-15 20:54:36 -04:00 |
|
bbracker
|
a4f9d7a6e5
|
working linux config
|
2021-07-15 18:49:54 -04:00 |
|
Kip Macsai-Goren
|
ba5bb12e26
|
Still broken, midway through fixing understanding of how ptw and datacache interact in time especially wrt adrE, adrM, faults, and tlb interaction.
|
2021-07-15 18:30:29 -04:00 |
|
bbracker
|
58cbce940a
|
stripped down busybox a bit
|
2021-07-15 16:07:56 -04:00 |
|
Ross Thompson
|
96aa106852
|
Found bug in the PMA such that invalid addresses were sent to the tim. Once addressing this issue the sv48 test fails early with a pma access fault.
|
2021-07-15 11:56:35 -05:00 |
|
Ross Thompson
|
4549a9f1c9
|
Merge branch 'main' into dcache
|
2021-07-15 11:55:20 -05:00 |
|
Ross Thompson
|
5fb5ac3d5a
|
Updated wave file.
|
2021-07-15 11:04:49 -05:00 |
|
Ross Thompson
|
c39a228266
|
Fixed how the dcache and page table walker stall cpu so that once a tlb miss occurs the CPU is always stalled until the walk is complete, the tlb updated, and the dcache fetched and hits.
|
2021-07-15 11:00:42 -05:00 |
|
Ross Thompson
|
c954fb510b
|
Renamed DCacheStall to LSUStall in hart and hazard.
Added missing logic in lsu.
|
2021-07-15 10:16:16 -05:00 |
|
Ross Thompson
|
f234875779
|
dcache STATE_CPU_BUSY needs to assert CommittedM. This is required to ensure a completed memory operation is not bound to an interrupt. ie. MEPC should not be PCM when committed.
|
2021-07-14 23:08:07 -05:00 |
|
Ross Thompson
|
6163629204
|
Finally have the ptw correctly walking through the dcache to update the itlb.
Still not working fully.
|
2021-07-14 22:26:07 -05:00 |
|
Katherine Parry
|
701ea38964
|
Fixed lint warning
|
2021-07-14 21:24:48 -04:00 |
|
Ross Thompson
|
d41c9d5ad9
|
Added d cache StallW checks for any time the cache wants to go to STATE_READY.
|
2021-07-14 17:25:50 -05:00 |
|
Ross Thompson
|
d3a1a2c90a
|
Fixed d cache not honoring StallW for uncache writes and reads.
|
2021-07-14 17:23:28 -05:00 |
|
Katherine Parry
|
f8b76082e4
|
fpu unpacking unit created
|
2021-07-14 17:56:49 -04:00 |
|
Ross Thompson
|
771c7ff130
|
Routed CommittedM and PendingInterruptM through the lsu arb.
|
2021-07-14 16:18:09 -05:00 |
|
Ross Thompson
|
1d7aa27316
|
Fixed a bug where the dcache did not update the read data if the CPU was stalled, but the memory not stalled.
|
2021-07-14 15:47:38 -05:00 |
|
Ross Thompson
|
3092e5acdf
|
Forgot to include one hot decoder.
|
2021-07-14 15:46:52 -05:00 |
|
Ross Thompson
|
e17de4eb11
|
Separated interruptM into PendingInterruptM and InterruptM. The d cache now takes in both exceptions and PendingInterrupts.
This solves the committedM issue.
|
2021-07-14 15:00:33 -05:00 |
|
bbracker
|
04ce2f7256
|
testvector unlinker for dev purposes
|
2021-07-14 11:05:34 -04:00 |
|
James Stine
|
a2c0753edb
|
put back for now to test fdiv
|
2021-07-14 06:48:29 -05:00 |
|
bbracker
|
9b6d45ead9
|
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally into main
|
2021-07-14 00:21:39 -04:00 |
|
bbracker
|
61e6ebd4d3
|
make testvector scripts agree with new file structure; use symbols to determine end of linux boot
|
2021-07-14 00:21:29 -04:00 |
|
Ross Thompson
|
ef598d0e79
|
Implemented uncached reads.
|
2021-07-13 23:03:09 -05:00 |
|
Ross Thompson
|
b6e5670bc3
|
Added CommitedM to data cache output.
|
2021-07-13 22:43:42 -05:00 |
|
bbracker
|
eb8c1bf5e7
|
needed to create a directory for gdb script
|
2021-07-13 19:39:57 -04:00 |
|
Ross Thompson
|
278bbfbe3c
|
Partially working changes to support uncached memory access. Not sure what CommitedM is.
|
2021-07-13 17:24:59 -05:00 |
|
James E. Stine
|
45a6e96673
|
mod 2 of fpdivsqrt update
|
2021-07-13 16:59:17 -04:00 |
|
James E. Stine
|
d695be3ad0
|
Update fpdivsqrt item until move into uarch
|
2021-07-13 16:53:20 -04:00 |
|
bbracker
|
2036be2ea4
|
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally into main
|
2021-07-13 16:16:04 -04:00 |
|
bbracker
|
dff3970d1c
|
changed QEMU to use different ports
|
2021-07-13 16:15:51 -04:00 |
|
Ross Thompson
|
b780e471b4
|
Fixed interaction between icache stall and dcache. On hit dcache needs to enter a cpu busy state when the cpu is stalled.
|
2021-07-13 14:51:42 -05:00 |
|
Ross Thompson
|
51249a0e04
|
Fixed the fetch buffer accidental overwrite on eviction.
|
2021-07-13 14:21:29 -05:00 |
|
Ross Thompson
|
2034a6584f
|
Dcache AHB address generation was wrong. Needed to zero the offset.
|
2021-07-13 14:19:04 -05:00 |
|
Ross Thompson
|
ee09fa5f58
|
Moved StoreStall into the hazard unit instead of in the d cache.
|
2021-07-13 13:20:50 -05:00 |
|
David Harris
|
516b710db6
|
Fixed busybear by restoring InstrValidW needed by testbench
|
2021-07-13 14:17:36 -04:00 |
|
Ross Thompson
|
2004b2e044
|
Fixed back to back store issue.
Note there is a bug in the lsuarb which needs to arbitrate a few execution stage signals.
|
2021-07-13 12:46:20 -05:00 |
|
David Harris
|
9af5cef65a
|
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally into main
|
2021-07-13 13:26:51 -04:00 |
|
David Harris
|
283c2cda0e
|
added or.sv
|
2021-07-13 13:26:40 -04:00 |
|
Katherine Parry
|
b9edbb15eb
|
Fixed writting MStatus FS bits
|
2021-07-13 13:22:04 -04:00 |
|
Katherine Parry
|
acdd2e4504
|
Fixed writting MStatus FS bits
|
2021-07-13 13:20:30 -04:00 |
|
David Harris
|
3427d2b7d6
|
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally into main
|
2021-07-13 13:19:24 -04:00 |
|
David Harris
|
68d1f87101
|
Fixed InstrValid from W to M stage for CSR performance counters
|
2021-07-13 13:19:13 -04:00 |
|
bbracker
|
90eb84cc61
|
updated buildroot make procedure to incorporate configs more robustly
|
2021-07-13 12:40:14 -04:00 |
|
Ross Thompson
|
40922cf064
|
Fixed subword write. subword read should not feed into subword write.
|
2021-07-13 11:21:44 -05:00 |
|