fd83d20857
Use a def instead of a lazy val in ManagerCoherenceAgent.
...
Prevents C++ emulator from randomizing inputs in unit testing.
Closes #44
2016-05-20 16:31:12 -07:00
31e145eaf0
fix BroadcastHub allocation and routing
2016-04-05 16:21:18 -07:00
93773a4496
Refactor L2 transaction trackers to each be capable of processing Voluntary Writebacks.
...
To elide several races between reading and writing the metadata array for different types of transactions, all L2XactTrackers can now sink Voluntary Releases (writebacks from the L1 in the current implementation). These writebacks are merged with the ongoing transaction, and the merging tracker supplies an acknowledgment of the writeback in addition to its ongoing activities. This change involved another refactoring of the control logic for allocating new trackers and routing incoming Acquires and Releases. BroadcastHub uses the new routing logic, but still processes all voluntary releases through the VoluntaryReleaseTracker (not a problem because there are no metadata update races).
Closes #18
Closes #20
2016-03-10 17:14:34 -08:00
929d8e31f7
refactor ready/valid logic for routing release messages in the l2
2016-02-19 16:30:26 -08:00
adaec18bec
add TL manager for MMIO requests
2016-02-02 12:49:58 -08:00
4ff1aea288
fix more Chisel3 deprecations
2016-01-14 14:55:45 -08:00
64aaf71b06
L2AcquireTracker refactor to support merging Gets and Puts into Prefetches of the correct type.
...
Transaction metadata for primary and seconday misses now stored in the secondary miss queue.
Added BuiltInAcquireBuilder factory.
2015-11-16 18:10:09 -08:00
7942be4e01
make sure outerTL method is idempotent
2015-11-09 11:10:02 -08:00
f8594da1d3
depend on external cde library
2015-10-21 18:17:17 -07:00
02d113b39f
outerDataBits / innerDataBits should be per beat, not per block
2015-10-21 11:31:13 -07:00
7fa3eb95e3
refactor tilelink params
2015-10-14 12:13:37 -07:00
31be6407ec
Removed all traces of params
2015-10-14 00:23:28 -07:00
24f3fac90a
fix broadcast hub and TL -> NASTI converter to support subblock operations
2015-09-14 12:56:44 -07:00
05d311c517
Use Vec.apply, not Vec.fill, for type nodes
2015-08-27 09:47:02 -07:00
005752e2a6
use the parameters used to create the original object
2015-08-10 14:43:17 -07:00
2d6b3b2331
Don't use clone
2015-07-15 18:06:27 -07:00
55059632c4
Temporarily use HTIF to push RTC value to cores
2015-07-05 16:19:39 -07:00
172c372d3e
L2 alloc cleanup
2015-05-12 17:14:06 -07:00
6d40a61060
TileLink scala doc and parameter renaming
2015-04-19 22:06:44 -07:00
ba7a8b1752
TileLink refactor; TileLinkPorts now available. L2Banks no longer have unique ids (suitable for hierarhical P&R).
2015-04-17 16:55:20 -07:00
ce3271aef2
refactor LNClients and LNManagers
2015-04-15 15:48:36 -07:00
3cf1778c92
moved ecc lib to uncore, l2 checks for partial write masks when ecc is enabled
2015-04-06 12:22:23 -07:00
9708d25dff
Restructure L2 state machine and utilize HeaderlessTileLinkIO
2015-04-06 12:19:51 -07:00
004ad11af6
cleanup pending signals
2015-03-18 22:14:41 -07:00
1ff184bf62
first cut at optimized state transitions
2015-03-18 17:55:05 -07:00
638bace858
avoid reading data when write mask is full
2015-03-17 20:28:21 -07:00
b08dced37c
first cut at pending scoreboarding
2015-03-17 17:51:00 -07:00
8181262419
clean up incoherent and probe flags
2015-03-12 16:22:14 -07:00
059575c334
cleanup mergeData and prep for cleaner data_buffer in L2
2015-03-11 15:43:41 -07:00
1bed6ea498
New metadata-based coherence API
2015-02-28 17:32:03 -08:00
0c66e70f14
cleanup of conflicts; allocation bugfix
2015-02-06 13:20:44 -08:00
6141b3efc5
uncached -> builtin_type
2015-02-02 01:02:06 -08:00
3aa030f960
Support for uncached sub-block reads and writes, major TileLink and CoherencePolicy refactor.
2015-02-01 20:37:16 -08:00
9ef00d187f
%s/master/manager/g + better comments
2014-12-29 22:55:58 -08:00
e62c71203e
disconnect unused outer network headers
2014-12-22 18:50:37 -08:00
d121af7f94
Simplify release handling
2014-12-18 17:12:29 -08:00
ab39cbb15d
cleanup DirectoryRepresentation and coherence params
2014-12-15 19:24:42 -08:00
424df2368f
1R/W L2 data array?
...
Add TLDataBeats to new LLC; all bmarks pass
2014-12-12 17:05:21 -08:00
3026c46a9c
Finish adding TLDataBeats to uncore & hub
2014-12-12 17:04:52 -08:00
cb7e712599
Added uncached write data queue to coherence hub
2014-11-12 12:55:07 -08:00
82155f333e
Major tilelink revision for uncached message types
2014-11-11 17:36:55 -08:00
10309849b7
Remove master_xact_id from Probe and Release
2014-11-06 12:07:33 -08:00
82fe22f958
support for multiple tilelink paramerterizations in same design
...
Conflicts:
src/main/scala/cache.scala
2014-09-24 11:30:40 -07:00
149d51d644
more coherence API cleanup
2014-09-20 16:57:13 -07:00
0b51d70bd2
add LICENSE
2014-09-12 15:31:38 -07:00
9ab3a4262c
Cache utility traits. Completely compiles, asm tests hang.
2014-08-11 18:35:49 -07:00
f411fdcce3
Full conversion to params. Compiles but does not elaborate.
2014-08-08 12:21:57 -07:00
3c329df7e7
refactor Metadata, clean and expand coherence API
2014-05-28 13:35:08 -07:00
0237229921
client/master -> inner/outer
2014-04-29 16:49:18 -07:00
52c6de5641
DRAMSideLLCLike trait. TSHRFile. New L2 config objects.
2014-04-26 19:11:36 -07:00