Henry Cook
|
a39080d0b1
|
Fixed abort bug: xact_abort.ready was not pinned high
|
2012-04-24 17:16:40 -07:00 |
|
Andrew Waterman
|
fb4408b150
|
fix AMO replay/coherence deadlock
|
2012-04-15 22:56:02 -07:00 |
|
Andrew Waterman
|
724735f13f
|
fix writeback bug
|
2012-04-13 03:16:48 -07:00 |
|
Andrew Waterman
|
00d934cfac
|
fix coherence bugs in cache
|
2012-04-12 21:57:37 -07:00 |
|
Andrew Waterman
|
c0ec3794bf
|
coherence mostly works now
|
2012-04-10 02:22:45 -07:00 |
|
Henry Cook
|
3cdd166153
|
Refactored coherence as member rather than trait. MI and MEI protocols.
|
2012-04-10 00:09:58 -07:00 |
|
Henry Cook
|
0b4937f70f
|
changed coherence message type names
|
2012-04-09 23:29:31 -07:00 |
|
Henry Cook
|
ed79ec98f7
|
Refactored coherence better from uncore hub, better coherence function names
|
2012-04-09 23:29:31 -07:00 |
|
Yunsup Lee
|
1cddd5de56
|
fix amo locking up problem
|
2012-03-20 02:16:28 -07:00 |
|
Yunsup Lee
|
264732556f
|
fixes to match verilog X semantics
|
2012-03-19 03:10:00 -07:00 |
|
Andrew Waterman
|
cfca2d1411
|
clean up cache interfaces; avoid reserved keywords
|
2012-03-16 00:44:16 -07:00 |
|
Andrew Waterman
|
820884c7e6
|
fix probes for smaller cache sizes
address bits (pgidx_bits-1,taglsb) were omitted from tag checks.
|
2012-03-15 23:08:30 -07:00 |
|
Andrew Waterman
|
4684171ac6
|
fix fence.i for associative caches
|
2012-03-15 21:23:21 -07:00 |
|
Andrew Waterman
|
7dde7099d2
|
use broadcast hub and coherent HTIF
|
2012-03-14 16:44:35 -07:00 |
|
Andrew Waterman
|
1492457df5
|
add probe replies to HTIF
|
2012-03-13 16:56:47 -07:00 |
|
Andrew Waterman
|
b0f798962c
|
add probe unit
|
2012-03-13 16:43:51 -07:00 |
|
Henry Cook
|
287bc1c262
|
Further refinement of tag_match/tag_hit signals
|
2012-03-13 11:48:12 -07:00 |
|
Andrew Waterman
|
d76b05bde1
|
fix way selection on D$ write upgrades
|
2012-03-13 02:21:02 -07:00 |
|
Henry Cook
|
6229a33dc4
|
fixed cache controller flush unit deadlock
|
2012-03-12 22:01:52 -07:00 |
|
Andrew Waterman
|
8ffdac9526
|
fix D$ store-upgrade bug
loads to the same address as stores that cause an upgrade
could return the old value
|
2012-03-10 15:50:10 -08:00 |
|
Andrew Waterman
|
e3a68848e0
|
fix D$ critical paths and fix verilog build
|
2012-03-09 20:02:51 -08:00 |
|
Henry Cook
|
e591d83e91
|
Fixed global_xact_id propagation bug
|
2012-03-09 11:05:44 -08:00 |
|
Andrew Waterman
|
766bac88f8
|
refactor D$ writebacks and flushes
MSHRs now arbitrate for writebacks and handle flushes.
|
2012-03-09 02:55:46 -08:00 |
|
Andrew Waterman
|
5a7c5772a8
|
clearly distinguish PPN and cache tag
|
2012-03-07 23:11:17 -08:00 |
|
Andrew Waterman
|
c09eeb7fd2
|
fix D$ next-state logic
it was using the CPU command from the wrong pipeline stage,
which was a don't-care with ThreeStateIncoherence.
|
2012-03-07 01:42:08 -08:00 |
|
Andrew Waterman
|
a0c9452b86
|
change D$ to use FourStateCoherence protocol
instead of ThreeStateIncoherence.
|
2012-03-07 01:26:35 -08:00 |
|
Andrew Waterman
|
6e16b04ada
|
implement transaction finish messages
|
2012-03-06 15:48:08 -08:00 |
|
Andrew Waterman
|
5f33ab24b0
|
fix merge conflict
oops :(
|
2012-03-06 02:02:53 -08:00 |
|
Andrew Waterman
|
5f12990dfb
|
support memory transaction aborts
|
2012-03-06 00:35:02 -08:00 |
|
Henry Cook
|
1b3307df32
|
Removed has_data fields from all coherence messages, increased message type names to compensate
|
2012-03-02 23:51:53 -08:00 |
|
Henry Cook
|
35f97bf858
|
Filled out 4 state coherence functions for cache
|
2012-03-02 21:58:50 -08:00 |
|
Yunsup Lee
|
8678b3d70c
|
clean up ioDecoupled/ioPipe interface
|
2012-03-01 20:48:46 -08:00 |
|
Andrew Waterman
|
6d03d75835
|
improve D$ internal interfaces
|
2012-03-01 20:20:15 -08:00 |
|
Andrew Waterman
|
28cacd953f
|
D$ cleanup - merge ReplayUnit and MSHRFile
|
2012-03-01 19:30:56 -08:00 |
|
Andrew Waterman
|
52101373e0
|
clean up D$ store data unit
|
2012-03-01 19:20:00 -08:00 |
|
Andrew Waterman
|
c38065d0e8
|
clean up priority encoders
|
2012-02-29 16:13:14 -08:00 |
|
Andrew Waterman
|
012da6002e
|
replace tile memory interface with ioTileLink
work in progress towards coherent HTIF. for now, requests
are incoherently passed through a null coherence hub.
|
2012-02-29 03:10:47 -08:00 |
|
Andrew Waterman
|
c99f6bbeb7
|
separate memory request command and data
also, merge some VLSI/C++ test harness functionality
|
2012-02-28 19:06:23 -08:00 |
|
Andrew Waterman
|
2b1c07c723
|
replace ioDCache with ioMem
|
2012-02-27 18:36:09 -08:00 |
|
Yunsup Lee
|
bfd0ae125e
|
upgrade to new rocket/vu memory interface, fix amo nack bug in hellacache
|
2012-02-26 23:46:51 -08:00 |
|
Andrew Waterman
|
6e706c7c74
|
fix yet another AMO-related replay bug
|
2012-02-26 20:20:45 -08:00 |
|
Huy Vo
|
5b0f7ccf68
|
updating rocket code to lastest version of chisel, passes assembly tests in C++ and Verilog as long as you dont use the vector unit
|
2012-02-26 17:24:08 -08:00 |
|
Yunsup Lee
|
94ba32bbd3
|
change package name and sbt project name to rocket
|
2012-02-25 17:09:26 -08:00 |
|
Andrew Waterman
|
7b3cce79e3
|
allocate a primary miss on a prefetch
|
2012-02-23 22:40:24 -08:00 |
|
Andrew Waterman
|
3eebf40310
|
nack CPU requests during any replay
|
2012-02-22 18:37:13 -08:00 |
|
Andrew Waterman
|
c8f768c8b3
|
fix AMO replay bug
like the recent AMO bug fix, but affects stores too. oops.
|
2012-02-21 14:39:54 -08:00 |
|
Andrew Waterman
|
d5608b2728
|
fix AMO replay bug
didn't check for structural hazard on AMO unit
if a replay was initiated one cycle before before
a hit-under-miss AMO was issued
|
2012-02-21 01:02:16 -08:00 |
|
Henry Cook
|
d46e59a16d
|
Abstract base nbcache class
|
2012-02-16 12:34:51 -08:00 |
|
Henry Cook
|
124efe5281
|
Replace nbcache manipulation of meta state bits with abstracted functions
|
2012-02-16 10:43:40 -08:00 |
|
Henry Cook
|
0671a99712
|
NBcache works with associativities other than powers of 2
|
2012-02-13 21:44:32 -08:00 |
|
Henry Cook
|
6d36168183
|
Fixed two associative nbcache bugs, one in amo replays and one in the flush unit
|
2012-02-13 21:44:32 -08:00 |
|
Andrew Waterman
|
069037ff3a
|
add FP recoding
|
2012-02-12 23:31:50 -08:00 |
|
Andrew Waterman
|
25ecfb9bbc
|
clean up caches
- remove incompatible blocking D$
- remove direct-mapped nonblocking cache
|
2012-02-12 20:32:06 -08:00 |
|
Andrew Waterman
|
50a283d311
|
move store data generation into EX stage
doing so removes it from the critical path of FP store unrecoding.
|
2012-02-12 01:35:55 -08:00 |
|
Andrew Waterman
|
725190d0ee
|
update to new chisel
|
2012-02-11 17:20:33 -08:00 |
|
Andrew Waterman
|
03ee49f424
|
fix 32-bit AMOs to upper halves of 64-bit words
thanks, torture!
|
2012-02-09 03:31:47 -08:00 |
|
Andrew Waterman
|
a1855b12c2
|
clean up queues
|
2012-02-08 17:55:05 -08:00 |
|
Henry Cook
|
41c4e10c37
|
Workaround for another frakking extraction error in the C backend. C and VLSI backends now both boot kernel with associativity on
|
2012-02-02 21:53:57 -08:00 |
|
Andrew Waterman
|
01a156eb98
|
make # of dcache lines configurable
|
2012-02-01 21:11:45 -08:00 |
|
Henry Cook
|
c5a4eaa0a1
|
Associative cache, boots kernel
|
2012-02-01 13:26:04 -08:00 |
|
Henry Cook
|
281abfbccb
|
New Mux1H constructor
|
2012-02-01 13:24:28 -08:00 |
|
Henry Cook
|
aa3465699b
|
LFSR now a util
|
2012-01-24 15:26:19 -08:00 |
|
Henry Cook
|
8229d65adf
|
Associative cache passes asm tests and bmarks with power of 2 associativities (including 1)
|
2012-01-24 11:41:44 -08:00 |
|
Andrew Waterman
|
a5a020f97b
|
update chisel and remove SRAM_READ_LATENCY
|
2012-01-23 20:59:38 -08:00 |
|
Henry Cook
|
8766438bb9
|
Updated chisel removes ^^ from language. Removed from rocket source, updated jar.
|
2012-01-23 17:09:23 -08:00 |
|
Andrew Waterman
|
e7bf07d55e
|
fix AMO replay bug
|
2012-01-23 15:35:53 -08:00 |
|
Andrew Waterman
|
31c56228e2
|
add missing "otherwise"
|
2012-01-21 20:13:15 -08:00 |
|
Henry Cook
|
97f0852b17
|
DM cache with assoc-aware subunits passes all asm and bmarks
|
2012-01-18 17:53:26 -08:00 |
|
Henry Cook
|
8623d58724
|
split into two caches, compiles
|
2012-01-18 17:09:35 -08:00 |
|
Henry Cook
|
7e25749581
|
Groundwork for assoc cache implementation
|
2012-01-18 17:09:35 -08:00 |
|
Henry Cook
|
1d76255dc1
|
new chisel version jar and find and replace INPUT and OUTPUT
|
2012-01-18 14:39:57 -08:00 |
|
Andrew Waterman
|
addfe55735
|
add FPGA memory generator script
|
2012-01-13 18:19:08 -08:00 |
|
Andrew Waterman
|
938b142d64
|
require writes to memory to be uninterrupted
|
2012-01-03 18:41:53 -08:00 |
|
Andrew Waterman
|
ffe23a1ee8
|
fix WAW hazard handling
|
2012-01-02 00:25:11 -08:00 |
|
Andrew Waterman
|
f9160c53cf
|
fixes for correct verilog generation
|
2011-12-29 23:46:21 -08:00 |
|
Andrew Waterman
|
d65e1a2eee
|
vlsi verilog compiles now but doesn't simulate
|
2011-12-20 22:08:27 -08:00 |
|
Andrew Waterman
|
a8d0cd95e6
|
hellacache now works
|
2011-12-17 03:26:11 -08:00 |
|
Andrew Waterman
|
56c4f44c2a
|
hellacache returns!
but AMOs are unimplemented.
|
2011-12-12 06:49:39 -08:00 |
|
Andrew Waterman
|
8308345364
|
work in progress on hellacache
|
2011-12-10 07:01:47 -08:00 |
|
Andrew Waterman
|
ce201559f3
|
Support cache->cpu nacks one cycle after request
|
2011-12-10 00:42:09 -08:00 |
|
Andrew Waterman
|
c01e1f1cef
|
Don't replay from EX stage.
EX replays are now handled from MEM. We may move them to WB.
|
2011-12-09 19:42:58 -08:00 |
|