1
0
Commit Graph

748 Commits

Author SHA1 Message Date
Andrew Waterman
0258dfb23f decouple all interfaces between tile and top
also, add an "incoherent" bit to tilelink to indicate no probes needed
2012-07-17 22:55:40 -07:00
Huy Vo
a79747a062 INPUT/OUTPUT orderring swapped 2012-07-12 18:16:57 -07:00
Huy Vo
18bc14058b INPUT/OUTPUT orderring swapped 2012-07-12 18:16:57 -07:00
Andrew Waterman
62a3ea4113 fix some LLC bugs 2012-07-11 17:56:39 -07:00
Andrew Waterman
0aa33bf909 fix some LLC bugs 2012-07-11 17:56:39 -07:00
Andrew Waterman
1ebfeeca8a add L2$
It still has performance bugs but no correctness bugs AFAIK.
2012-07-10 05:23:29 -07:00
Andrew Waterman
66cf690261 add L2$
It still has performance bugs but no correctness bugs AFAIK.
2012-07-10 05:23:29 -07:00
Huy Vo
166b857055 ioDecoupled -> FIFOIO, ioPipe -> PipeIO 2012-06-06 18:22:56 -07:00
Huy Vo
0c6bade592 ioDecoupled -> FIFOIO, ioPipe -> PipeIO 2012-06-06 18:22:56 -07:00
Huy Vo
9b3161920f moving util out into Chisel standard library 2012-06-06 12:51:26 -07:00
Huy Vo
f2942f79f9 moving util out into Chisel standard library 2012-06-06 12:51:26 -07:00
Huy Vo
6f2f1ba21c removing wires 2012-05-24 10:42:39 -07:00
Huy Vo
0208e9f95e removing wires 2012-05-24 10:42:39 -07:00
Andrew Waterman
f804c57bb0 reduce HTIF clock divider for now 2012-05-03 04:21:11 -07:00
Henry Cook
99bc99f2ad Fixed abort bug: removed uneeded state, added mshr guard on xact_abort.valid and xact_init.ready on same cycle 2012-04-24 17:17:42 -07:00
Henry Cook
00155f4bc4 Fixed abort bug: removed uneeded state, added mshr guard on xact_abort.valid and xact_init.ready on same cycle 2012-04-24 17:17:42 -07:00
Henry Cook
d61e6ee080 Fixed coherence bug: probe counting for single tile 2012-04-24 17:17:13 -07:00
Henry Cook
37eb1a4ae6 Fixed coherence bug: probe counting for single tile 2012-04-24 17:17:13 -07:00
Henry Cook
4a6c7dbc26 Policy determined by constants. MSI policy added. 2012-04-11 17:56:59 -07:00
Andrew Waterman
98a5d682a5 coherence mostly works now 2012-04-10 02:22:45 -07:00
Andrew Waterman
2a7d2888a7 coherence mostly works now 2012-04-10 02:22:45 -07:00
Henry Cook
1920c97066 Refactored coherence as member rather than trait. MI and MEI protocols. 2012-04-10 00:09:58 -07:00
Henry Cook
b22d7f8192 Refactored coherence as member rather than trait. MI and MEI protocols. 2012-04-10 00:09:58 -07:00
Henry Cook
5acf1d9820 defined abstract coherence traits in base trait, added Incoherent trait, cleaned up incoherent policy 2012-04-09 23:29:32 -07:00
Henry Cook
e71e3ce38f defined abstract coherence traits in base trait, added Incoherent trait, cleaned up incoherent policy 2012-04-09 23:29:32 -07:00
Henry Cook
a68f5e016d changed coherence type width names to represent max sizes for all protocols 2012-04-09 23:29:32 -07:00
Henry Cook
17a5d26c1e changed coherence type width names to represent max sizes for all protocols 2012-04-09 23:29:32 -07:00
Henry Cook
f7307ee411 changed coherence message type names 2012-04-09 23:29:31 -07:00
Henry Cook
6bc47a55b4 changed coherence message type names 2012-04-09 23:29:31 -07:00
Henry Cook
d301336c33 Refactored coherence better from uncore hub, better coherence function names 2012-04-09 23:29:31 -07:00
Henry Cook
27e3346c14 Refactored coherence better from uncore hub, better coherence function names 2012-04-09 23:29:31 -07:00
Andrew Waterman
73d8d42515 fix coherence bug with multiple probe replies 2012-04-09 21:40:35 -07:00
Andrew Waterman
257747a3a1 no dessert tonight :( 2012-03-26 23:50:09 -07:00
Andrew Waterman
25fe46dc18 remove bug from dessert 2012-03-26 14:18:57 -07:00
Andrew Waterman
4e6302fedc add dessert 2012-03-25 23:03:20 -07:00
Andrew Waterman
5a00143035 loop host.in to host.out during reset 2012-03-25 21:45:10 -07:00
Andrew Waterman
a7ebea13fc add mem serdes unit 2012-03-25 17:03:58 -07:00
Yunsup Lee
5f69c5a764 fix bug in coherence hub, specifically in abort handling logic 2012-03-20 02:16:28 -07:00
Andrew Waterman
e38114e4b0 fix coherence bug
popping wrong store dependence queue
2012-03-16 01:24:07 -07:00
Andrew Waterman
3129040bda use divided clk for htif. UDPATE YOUR FESVR
by default, we now load programs via a backdoor, because otherwise
it takes too long to simulate.
2012-03-15 18:36:51 -07:00
Andrew Waterman
77c405ffa1 use broadcast hub and coherent HTIF 2012-03-14 16:44:35 -07:00
Andrew Waterman
53cd543d3f fix minor coherence bugs 2012-03-13 19:10:54 -07:00
Andrew Waterman
53d69d3006 parameterize broadcast hub by # of tiles 2012-03-13 17:12:01 -07:00
Andrew Waterman
1258f31825 add probe unit 2012-03-13 16:43:51 -07:00
Henry Cook
23c822a82e fix hit logic for amos 2012-03-12 22:01:52 -07:00
Henry Cook
95f880da70 fixed abort bug 2012-03-12 22:01:52 -07:00
Henry Cook
cb5ce3fe73 More broadcast hub bugfixes 2012-03-11 14:17:27 -07:00
Andrew Waterman
d777f1cb24 fix null hub store ack bug 2012-03-10 15:19:12 -08:00
Henry Cook
2014db41bd Special cased NTILES == 1 due to log2up revision 2012-03-09 11:04:58 -08:00
Henry Cook
2df5c19f13 Added require_ack field to TransactionReply bundle 2012-03-08 18:07:44 -08:00
Henry Cook
ca5caf898c Hub addr comparison bug fix 2012-03-08 16:39:05 -08:00
Henry Cook
3fc94d627d Fixed dependency queue bug in Broadcast Hub 2012-03-08 11:36:10 -08:00
Andrew Waterman
df6ac34821 coherence hub fixes 2012-03-07 21:03:44 -08:00
Henry Cook
1a90e2a162 Broadcast hub bug fixes for load uncached mem req and store uncached xact rep 2012-03-07 11:40:49 -08:00
Andrew Waterman
7929600874 change D$ to use FourStateCoherence protocol
instead of ThreeStateIncoherence.
2012-03-07 01:26:35 -08:00
Henry Cook
35ffb80911 unified coherence trait functions 2012-03-06 17:33:11 -08:00
Henry Cook
1e02618cc8 hub code cleanup 2012-03-06 17:01:47 -08:00
Henry Cook
762f2551a7 newTransactionOnMiss() 2012-03-06 15:54:41 -08:00
Henry Cook
3874da4a4f Added store dependency queues to BroadcastHub. Minor improvements to utils. 2012-03-06 15:54:41 -08:00
Andrew Waterman
012b991ffe implement transaction finish messages 2012-03-06 15:48:08 -08:00
Andrew Waterman
1024a460f2 support memory transaction aborts 2012-03-06 00:35:02 -08:00
Henry Cook
82822dfeec Added aborted data dequeueing state machine for BroadcastHub 2012-03-05 17:44:30 -08:00
Henry Cook
a49625c114 Broadcast hub control logic bugfixes and code cleanup 2012-03-05 17:27:55 -08:00
Yunsup Lee
802f857cb6 fix store prefetch bug, it no longer occupies an entry in the sdq 2012-03-03 15:14:59 -08:00
Henry Cook
7846d5e01d Removed has_data fields from all coherence messages, increased message type names to compensate 2012-03-02 23:51:53 -08:00
Henry Cook
d76f664007 Filled out 4 state coherence functions for cache 2012-03-02 21:58:50 -08:00
Henry Cook
993341d27e Correction to probe reply w/ data handling 2012-03-02 17:20:22 -08:00
Andrew Waterman
6ad7aa5cdc flip direction of ioPipe to match ioDecoupled 2012-03-02 16:18:32 -08:00
Henry Cook
9ad4fd5814 BroadcastHub can be elaborated by C and vlsi backends 2012-03-02 12:19:27 -08:00
Yunsup Lee
bef59527d6 clean up ioDecoupled/ioPipe interface 2012-03-01 20:48:46 -08:00
Andrew Waterman
4c3f7a36ce clean up D$ store data unit 2012-03-01 19:20:00 -08:00
Henry Cook
de73eef409 Fixed elaboration errors in LockingArbiter and BoradcastHub. Fixed ioDecoupled direction error in XactTracker 2012-03-01 18:24:22 -08:00
Henry Cook
2152b0283d Made xact_rep an ioValid, removed has_data member 2012-03-01 18:24:21 -08:00
Henry Cook
4e33b68bea Unified hub ios. Fixed some hub elaboration errors. 2012-03-01 01:20:57 -08:00
Henry Cook
940027a888 Finished broadcast hub with split mem req types. Untested. 2012-02-29 17:58:15 -08:00
Andrew Waterman
8b519e7ea8 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
Henry Cook
ef94f13087 Broadcast hub nears completion. Still does not handle generation/arbitration for decoupled mem reqs. 2012-02-29 02:59:27 -08:00
Henry Cook
6304aa992f Fixed race between read resps/reps and write req/reps in null hub 2012-02-29 00:44:03 -08:00
Andrew Waterman
eec369a1c7 separate memory request command and data
also, merge some VLSI/C++ test harness functionality
2012-02-28 19:06:23 -08:00
Henry Cook
e15284d22c Added temporary ioMemHub and made coherence hub implementations depend on it rather than ioMem 2012-02-28 17:33:32 -08:00
Henry Cook
ffc7652e01 Null coherence hub. Begin work on internal tracker logic 2012-02-27 19:10:15 -08:00
Andrew Waterman
7d331858e2 replace ioDCache with ioMem 2012-02-27 18:36:09 -08:00
Henry Cook
3393dc2d31 Added probe_req ready sigs, GenArray to Vec 2012-02-27 11:26:18 -08:00
Henry Cook
70cdf869ac probe req transactors in coherence hub 2012-02-27 09:24:33 -08:00
Henry Cook
b6e6d603cc xact init transactors in coherence hub 2012-02-27 09:24:32 -08:00
Huy Vo
e22106af3f 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
ca2e70454e change package name and sbt project name to rocket 2012-02-25 17:09:26 -08:00
Henry Cook
8856e2b8bb More stylish bundle param names, some hub progress 2012-02-25 15:27:53 -08:00
Henry Cook
dfdcb7c696 Better foldR 2012-02-25 15:27:09 -08:00
Henry Cook
b3cf8f3f35 Better abstraction of data bundles 2012-02-25 12:57:01 -08:00
Henry Cook
1dcf25586f finished xact_finish and xact_abort transactors in coherence hub 2012-02-23 18:12:50 -08:00
Henry Cook
ffb88467db finished xact_rep transactor in coherence hub 2012-02-23 17:50:02 -08:00
Henry Cook
c3646e2e64 Improved TileIO organization, beginnings of hub implementation 2012-02-22 18:24:52 -08:00
Henry Cook
33a26424bd Refining tilelink interface 2012-02-22 12:15:47 -08:00
Henry Cook
b9c42a80c8 Added coherence message type enums 2012-02-22 12:15:47 -08:00
Henry Cook
cfb818aa97 Abstract class for coherence policies 2012-02-16 12:59:38 -08:00
Henry Cook
ecbf47fe16 Replace nbcache manipulation of meta state bits with abstracted functions 2012-02-16 10:43:40 -08:00
Henry Cook
76cacbd991 Added coherence tile function defs, with traits and constants 2012-02-16 00:16:45 -08:00