blob: a10fa68b518a24a2934b1f3bbd94ad52c9c3115a (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
|
vim: set sw=8 noet :
* Forwarding stores to eliminate "unstores"
* Store forwarding structure
* Store buffer allocation and senior store commit/deallocation
* SMC snoops?
* Generic "cache level" infrastructure
* Convert I-side cache
* Convert D-side cache
* Shared between exec and indir stages
* Arbitration to reduce total port count
* Real coherence protocol
* Cache consistency between I and D side
* Checker should let us check more data
* Checker should print mismatches on its own instead
of depending on the caller
* Make it complete
* Make it pretty
* Work out why focal is broken
* SMC support
* Stores should snoop all upstream instruction PCs and restart if overlap
* Statistics about instruction mix
* Indirect loads
* Autoincrements
* Exec loads
* Exec stores
* Instructions with both exec load and exec store
* Instructions with both indirect and any exec memory
* Instructions with *three memory operations*
* Instructions with ~*all four memory operations*~
* Maybe histogram support, instructions with N memory ops
* Control register writes
* Per control register / bit
|