Ross Thompson
|
1cad05fef9
|
Minor cleanup of cache.
|
2022-07-19 23:04:23 -05:00 |
|
Ross Thompson
|
8698799077
|
Reverted to fetched the demand cache line first then doing the eviction. This is important because of an optimization in the replacement policy. The replacement policy updates the LRU 1 cycle late and reads the LRU 1 cycle late for critical path timing. This means doing the eviction first requires an initial 1 cycle delay but this delay has to be applied to all misses because we don't know if an eviction is required. Since reading the demand line first is logically ok so long as it is not written to the sram until after the eviction.
|
2022-07-19 22:42:25 -05:00 |
|
Ross Thompson
|
a79e5e11f6
|
Merged together the cache speed updates with the cache sram changes. The fstore2 changes still need to be added.
|
2022-07-18 23:37:18 -05:00 |
|
Ross Thompson
|
0ef6137ab9
|
Added degree of freedom to cache/sram. The sram width in bits is no longer defined by XLEN, but instead a separate parameter. This is decoupled from LINELEN, XLEN, and WORDLEN.
|
2022-07-17 21:05:31 -05:00 |
|
Ross Thompson
|
8356e5d742
|
Updated cache sram's to use 1 sram for all words in a way. Still needs to modified to support subdivision by max physical sram width.
|
2022-07-17 16:20:04 -05:00 |
|
Katherine Parry
|
18d7fee541
|
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally
|
2022-07-12 22:37:20 +00:00 |
|
David Harris
|
03a20610aa
|
added comment about checking SRAM size
|
2022-07-10 12:48:51 +00:00 |
|
David Harris
|
d1a7832dd9
|
added comment about RAMs in cacheway
|
2022-07-10 12:47:34 +00:00 |
|
Katherine Parry
|
62205ebb3b
|
renamed FLoad2 to FStore2
|
2022-07-09 00:26:45 +00:00 |
|
Katherine Parry
|
97e7e619d9
|
moved fpu ieu write data mux to lsu
|
2022-07-08 23:56:57 +00:00 |
|
James Stine
|
99fed5d59f
|
Update SRAM to /proj/wally
|
2022-07-08 08:09:55 -05:00 |
|
David Harris
|
38ef8eebbb
|
Removed subwordwrite mention in cache because sww is needed to replicate data across byte enables
|
2022-07-08 08:44:37 +00:00 |
|
David Harris
|
425fec0f41
|
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally
|
2022-07-07 22:00:59 +00:00 |
|
Katherine Parry
|
c581fba4aa
|
modified wally shared
|
2022-07-07 21:59:43 +00:00 |
|
David Harris
|
f865994ba1
|
fixing port errors
|
2022-07-07 21:57:10 +00:00 |
|
Katherine Parry
|
7771f7b3eb
|
added load and store test
|
2022-07-07 21:48:51 +00:00 |
|
David Harris
|
f2915129ab
|
Preliminary SRAM integration
|
2022-07-07 19:56:20 +00:00 |
|
Ross Thompson
|
d716c25275
|
Fixed an issue with direct map cache's nextway logic.
Also found a small error in the replacement policy.
|
2022-07-06 18:34:30 -05:00 |
|
Madeleine Masser-Frye
|
d8ea12c6f4
|
fixed concatenation syntax
|
2022-07-05 22:36:54 +00:00 |
|
Katherine Parry
|
8f98f3bfab
|
added rv32 double precision stores - untested
|
2022-06-28 21:33:31 +00:00 |
|
David Harris
|
8372bc86a7
|
Removing unused signals
|
2022-05-12 14:36:15 +00:00 |
|
David Harris
|
cb1a7d54a4
|
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
|
2022-05-03 08:53:35 -07:00 |
|
David Harris
|
4fbf78e049
|
clean up sram1p1rw; still doesn't work on Modelsim 2022.1
|
2022-05-03 08:31:54 -07:00 |
|
David Harris
|
7e3f75a35d
|
Formatting cache.sv
|
2022-05-03 10:53:20 +00:00 |
|
David Harris
|
bc132c3e20
|
sram1p1rw extra bits are complaining on Tera and VLSI; roll back to two always blocks to fix on Tera
|
2022-05-03 03:50:41 -07:00 |
|
David Harris
|
3f2ec0499f
|
Rewriting sram1p1rw to combine CacheData into a single always_ff. Extra bits are still giving warning on VLSI that don't make sense.
|
2022-05-03 03:45:41 -07:00 |
|
Ross Thompson
|
ab9738d3be
|
Hacky fix to prevent ITLBMissF and TrapM bug.
|
2022-04-12 17:56:23 -05:00 |
|
Ross Thompson
|
b2a77da96b
|
Changed sram1p1rw to have the same type of bytewrite enables as bram.
|
2022-03-30 11:38:25 -05:00 |
|
Ross Thompson
|
3dbf6790e1
|
Towards allowing dtim + bus.
|
2022-03-11 14:58:21 -06:00 |
|
Ross Thompson
|
81a2fbb6d2
|
mild cleanup.
|
2022-03-11 13:05:47 -06:00 |
|
Ross Thompson
|
11e5aad38a
|
Moved subcachelineread inside the cache. There is some ugliness to still resolve.
|
2022-03-11 12:44:04 -06:00 |
|
Ross Thompson
|
a12016e69b
|
Moved subcacheline read inside the cache.
|
2022-03-11 11:03:36 -06:00 |
|
Ross Thompson
|
326ecda060
|
removed unused parameter.
|
2022-03-11 10:43:54 -06:00 |
|
Ross Thompson
|
bdfca503fa
|
Name cleanup.
|
2022-03-10 18:44:50 -06:00 |
|
Ross Thompson
|
d77adbd673
|
Signal name cleanup.
|
2022-03-10 18:26:58 -06:00 |
|
Ross Thompson
|
83133f8c47
|
Partially working byte write enables. Works for cache, but not dtim or bus only.
|
2022-03-10 16:11:39 -06:00 |
|
Ross Thompson
|
d5f524a15e
|
Added byte write enables to cache SRAMs.
|
2022-03-10 15:48:31 -06:00 |
|
Ross Thompson
|
60e6c1ffa7
|
Moved cacheable signal into cache.
|
2022-03-08 16:34:02 -06:00 |
|
David Harris
|
48705457d5
|
LSU/Cache code review notes
|
2022-03-04 00:07:31 +00:00 |
|
Ross Thompson
|
fcbb577f31
|
Cache mods to be consistant with diagrams.
|
2022-02-14 12:40:51 -06:00 |
|
Ross Thompson
|
6e1a0af5d0
|
Eliminated more ports in cacheway.
|
2022-02-13 15:53:46 -06:00 |
|
Ross Thompson
|
a440bc2ac5
|
More cache cleanup.
|
2022-02-13 15:47:27 -06:00 |
|
Ross Thompson
|
1e7e59bdbd
|
Changed names of signals in cache.
|
2022-02-13 15:06:18 -06:00 |
|
Ross Thompson
|
f87a6f2c63
|
More cache cleanup.
|
2022-02-13 12:38:39 -06:00 |
|
Ross Thompson
|
f5c4bca47e
|
Formating improvements to cache.
|
2022-02-11 23:10:58 -06:00 |
|
Ross Thompson
|
6fa9490d0b
|
More cache simplifications.
|
2022-02-11 22:54:05 -06:00 |
|
Ross Thompson
|
ae2011eb07
|
Reduced seladr to 1 bit as second bit is same as selflush.
|
2022-02-11 22:41:36 -06:00 |
|
Ross Thompson
|
cb3d71a63d
|
Reduced complexity of the address selection during flush.
|
2022-02-11 22:27:27 -06:00 |
|
Ross Thompson
|
a0ee2f3d99
|
Removed redundant signals from cache.
|
2022-02-11 22:23:47 -06:00 |
|
Ross Thompson
|
aa04778d0b
|
Cache fsm simplifications.
|
2022-02-11 15:16:45 -06:00 |
|
Ross Thompson
|
e6c8cfd49b
|
Removed STATE_CPU_BUSY_FINISH_AMO from cache. This is redundant with STATE_CPU_BUSY.
|
2022-02-11 15:09:00 -06:00 |
|
Ross Thompson
|
83adacbee3
|
Simplified cache fsm.
|
2022-02-11 14:54:57 -06:00 |
|
Ross Thompson
|
c8e6884926
|
Fixed bug.
It was possible for DTLBMissM to prevent a dcache flush.
|
2022-02-11 14:00:01 -06:00 |
|
David Harris
|
15fb7fee60
|
Cleaned up synthesis warnings
|
2022-02-11 01:15:16 +00:00 |
|
Ross Thompson
|
f23817bf69
|
Replacement policy cleanup.
|
2022-02-10 11:42:40 -06:00 |
|
Ross Thompson
|
411997010b
|
Replacement policy cleanup.
|
2022-02-10 11:40:10 -06:00 |
|
Ross Thompson
|
3a0af5d9e9
|
Cleanup + critical path optimizations.
|
2022-02-10 11:11:16 -06:00 |
|
Ross Thompson
|
fc68c2f09a
|
Cache name clarifications.
|
2022-02-10 10:50:17 -06:00 |
|
Ross Thompson
|
e00d404154
|
More cache cleanup.
|
2022-02-10 10:43:37 -06:00 |
|
Ross Thompson
|
65803ebe98
|
structural muxes.
|
2022-02-09 19:36:21 -06:00 |
|
Ross Thompson
|
2a989e6d05
|
More cache cleanup.
|
2022-02-09 19:29:15 -06:00 |
|
Ross Thompson
|
3b8ad3f7c7
|
Cleaned up comments.
|
2022-02-09 19:21:35 -06:00 |
|
Ross Thompson
|
911ee36b22
|
Removed all possilbe paths to PreSelAdr from TrapM.
|
2022-02-09 19:20:10 -06:00 |
|
Ross Thompson
|
01126535db
|
Annotated the final changes required to move sram address off the critial path.
|
2022-02-08 18:17:31 -06:00 |
|
Ross Thompson
|
498388c636
|
Cache cleanup write enables.
|
2022-02-08 17:52:09 -06:00 |
|
Ross Thompson
|
13561c67bd
|
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
|
2022-02-08 14:22:19 -06:00 |
|
David Harris
|
3e16730226
|
RAM simplification
|
2022-02-08 20:15:23 +00:00 |
|
Ross Thompson
|
492c1473f3
|
Preparing to make a major change to the cache's write enables.
|
2022-02-08 09:47:01 -06:00 |
|
Ross Thompson
|
190d619940
|
cachefsm cleanup.
|
2022-02-07 22:09:56 -06:00 |
|
Ross Thompson
|
ca459a5915
|
Removed VDWriteEnable.
|
2022-02-07 21:59:18 -06:00 |
|
Ross Thompson
|
494802b2e1
|
more partial cleanup of fsm and write enables.
|
2022-02-07 17:41:56 -06:00 |
|
Ross Thompson
|
23a60d9875
|
Progress towards simplifying the cache's write enables.
|
2022-02-07 17:23:09 -06:00 |
|
Ross Thompson
|
fcd43ea004
|
more cleanup.
|
2022-02-07 13:29:19 -06:00 |
|
Ross Thompson
|
e72d54ea98
|
More cachefsm cleanup.
|
2022-02-07 13:19:37 -06:00 |
|
Ross Thompson
|
a6a7779ec0
|
More cachefsm cleanup.
|
2022-02-07 12:30:27 -06:00 |
|
Ross Thompson
|
7f732eb571
|
More cachefsm cleanup.
|
2022-02-07 11:16:20 -06:00 |
|
Ross Thompson
|
be67c4d559
|
More cachefsm cleanup.
|
2022-02-07 11:12:28 -06:00 |
|
Ross Thompson
|
f1781c6bc8
|
More cachefsm cleanup.
|
2022-02-07 10:54:22 -06:00 |
|
Ross Thompson
|
b89ce18473
|
Cache cleanup.
|
2022-02-07 10:43:58 -06:00 |
|
Ross Thompson
|
6f4a321d31
|
More cachfsm cleanup.
|
2022-02-07 10:33:50 -06:00 |
|
David Harris
|
60c3cdad3a
|
Reverted cache change
|
2022-02-07 14:47:20 +00:00 |
|
David Harris
|
c21eb67a07
|
Cache syntax cleanup
|
2022-02-07 14:43:24 +00:00 |
|
Ross Thompson
|
8bcaadda6b
|
More cachefsm cleanup.
|
2022-02-06 21:50:44 -06:00 |
|
Ross Thompson
|
347e9228f8
|
started cachefsm cleanup.
|
2022-02-06 21:39:38 -06:00 |
|
Ross Thompson
|
308cc34d6f
|
Added config to allow using the save/restore or replay implementation to handle sram clocked read delay.
|
2022-02-04 23:49:07 -06:00 |
|
Ross Thompson
|
1766c0f5ba
|
Removed unused ports from caches and buses.
|
2022-02-04 22:52:51 -06:00 |
|
Ross Thompson
|
c846368537
|
Moved the sub cache line read logic to lsu/ifu.
|
2022-02-04 20:42:53 -06:00 |
|
Ross Thompson
|
f6f0539e10
|
Got separate module for the sub cache line read.
|
2022-02-04 20:23:09 -06:00 |
|
Ross Thompson
|
ceb2cc30b9
|
Second optimization of save/restore.
|
2022-02-04 14:35:12 -06:00 |
|
Ross Thompson
|
498c2b589a
|
Optimization of cache save/restore.
|
2022-02-04 14:21:04 -06:00 |
|
Ross Thompson
|
83fdedcec6
|
Working first cut of the cache changes moving the replay to a save/restore.
The current implementation is too expensive costing (tag+linelen)*numway flip flops and muxes.
|
2022-02-04 13:31:32 -06:00 |
|
David Harris
|
c3122ce214
|
sram1rw cleanup
|
2022-02-03 18:03:22 +00:00 |
|
David Harris
|
0e1d784b60
|
sram1rw cleanup
|
2022-02-03 17:50:23 +00:00 |
|
David Harris
|
eb8dd5e7d7
|
cachereplacementpolicy cleanup
|
2022-02-03 17:19:14 +00:00 |
|
David Harris
|
5f7326368e
|
cachereplacementpolicy cleanup
|
2022-02-03 17:18:48 +00:00 |
|
David Harris
|
9b6a4d1d52
|
cacheway cleanup
|
2022-02-03 16:52:22 +00:00 |
|
David Harris
|
7a8cc5ef21
|
cacheway cleanup
|
2022-02-03 16:33:01 +00:00 |
|
David Harris
|
0fbc32204c
|
cacheway cleanup
|
2022-02-03 16:07:55 +00:00 |
|
David Harris
|
c22f7eb11c
|
cacheway cleanup
|
2022-02-03 16:00:57 +00:00 |
|
David Harris
|
e92461159d
|
cache cleanup
|
2022-02-03 15:36:11 +00:00 |
|