Commit Graph
76 Commits
Author SHA1 Message Date
Henry Cook 87cbae2c8a Removed defunct ioDmem 2012-05-07 17:31:39 -07:00
Henry Cook 622a801bb1 Refactored cpu/cache interface to use nested bundles 2012-05-02 11:54:28 -07:00
Henry Cook 1ed89f1cab 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 55e86b5cf4 Fixed coherence bug: probe counting for single tile 2012-04-24 17:17:13 -07:00
Henry Cook a39080d0b1 Fixed abort bug: xact_abort.ready was not pinned high 2012-04-24 17:16:40 -07:00
Henry Cook fef58f1b3a Policy determined by constants. MSI policy added. 2012-04-11 17:56:59 -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 9c8f849f50 defined abstract coherence traits in base trait, added Incoherent trait, cleaned up incoherent policy 2012-04-09 23:29:32 -07:00
Henry Cook 551e09c9d5 changed coherence type width names to represent max sizes for all protocols 2012-04-09 23:29:32 -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
Henry Cook b5fa86e844 4-way associative by default 2012-03-14 17:51:12 -07:00
Henry Cook 287bc1c262 Further refinement of tag_match/tag_hit signals 2012-03-13 11:48:12 -07:00
Henry Cook cbf7b13341 fix hit logic for amos 2012-03-12 22:01:52 -07:00
Henry Cook 6229a33dc4 fixed cache controller flush unit deadlock 2012-03-12 22:01:52 -07:00
Henry Cook ea0775643b fixed abort bug 2012-03-12 22:01:52 -07:00
Henry Cook c5dd37ae80 bugfix in locking arbiter 2012-03-11 15:47:27 -07:00
Henry Cook 4ebf637642 More broadcast hub bugfixes 2012-03-11 14:17:27 -07:00
Henry Cook a4d0025187 fix icache prefetch global_xact_id bug 2012-03-11 00:50:11 -08:00
Henry Cook e591d83e91 Fixed global_xact_id propagation bug 2012-03-09 11:05:44 -08:00
Henry Cook 9319130483 Special cased NTILES == 1 due to log2up revision 2012-03-09 11:04:58 -08:00
Henry Cook 22726ae646 icache and htif now obey require_ack field of TransactionReply. Avoids extraneous TransactionFinish on prefetcher-supplied icache data 2012-03-08 18:47:32 -08:00
Henry Cook 4d2e7172f6 Added require_ack field to TransactionReply bundle 2012-03-08 18:07:44 -08:00
Henry Cook 35c4bd4084 Hub addr comparison bug fix 2012-03-08 16:39:05 -08:00
Henry Cook 788ad327da Fixed dependency queue bug in Broadcast Hub 2012-03-08 11:36:10 -08:00
Henry Cook 7f43dee0c9 PriorityEncoder apply() no longer has recursive depth param 2012-03-08 01:04:26 -08:00
Henry Cook 7deff5fbe2 Broadcast hub bug fixes for load uncached mem req and store uncached xact rep 2012-03-07 11:40:49 -08:00
Henry Cook 47a2097507 unified coherence trait functions 2012-03-06 17:33:11 -08:00
Henry Cook 3dd404dcf4 hub code cleanup 2012-03-06 17:01:47 -08:00
Henry Cook c0ed010bc9 newTransactionOnMiss() 2012-03-06 15:54:41 -08:00
Henry Cook 962e5a54af Added store dependency queues to BroadcastHub. Minor improvements to utils. 2012-03-06 15:54:41 -08:00
Henry Cook 950b5cd900 Added aborted data dequeueing state machine for BroadcastHub 2012-03-05 17:44:30 -08:00
Henry Cook 5c66a6699c Broadcast hub control logic bugfixes and code cleanup 2012-03-05 17:27:55 -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
Henry Cook 00989c58bd Correction to probe reply w/ data handling 2012-03-02 17:20:22 -08:00
Henry Cook 7406908d4a BroadcastHub can be elaborated by C and vlsi backends 2012-03-02 12:19:27 -08:00
Henry Cook da39810bb2 Fixed elaboration errors in LockingArbiter and BoradcastHub. Fixed ioDecoupled direction error in XactTracker 2012-03-01 18:24:22 -08:00
Henry Cook 9d7707a0a2 Made xact_rep an ioValid, removed has_data member 2012-03-01 18:24:21 -08:00
Henry Cook c6162ac743 Unified hub ios. Fixed some hub elaboration errors. 2012-03-01 01:20:57 -08:00
Henry Cook 813ffcbf3e Finished broadcast hub with split mem req types. Untested. 2012-02-29 17:58:15 -08:00
Henry Cook 008ad1f45b Added 'locking' arbiter that won't rearbitrate until the lock signal on the current winning input is low 2012-02-29 17:05:06 -08:00
Henry Cook c723ef4c50 ioDecoupled now allows inner bundle to be used in covariant positions, i.e. it accepts subtypes 2012-02-29 16:46:16 -08:00
Henry Cook 082b38d315 Broadcast hub nears completion. Still does not handle generation/arbitration for decoupled mem reqs. 2012-02-29 02:59:27 -08:00
Henry Cook 8ff6e21e3a Fixed race between read resps/reps and write req/reps in null hub 2012-02-29 00:44:03 -08:00
Henry Cook 040aa9fe02 Added temporary ioMemHub and made coherence hub implementations depend on it rather than ioMem 2012-02-28 17:33:32 -08:00
Henry Cook 5cc10337b4 Null coherence hub. Begin work on internal tracker logic 2012-02-27 19:10:15 -08:00
Henry Cook f0588a0052 Added probe_req ready sigs, GenArray to Vec 2012-02-27 11:26:18 -08:00
Henry Cook 7a8f53a117 probe req transactors in coherence hub 2012-02-27 09:24:33 -08:00
Henry Cook 2275239f33 xact init transactors in coherence hub 2012-02-27 09:24:32 -08:00
Henry Cook 3980120279 More stylish bundle param names, some hub progress 2012-02-25 15:27:53 -08:00
Henry Cook db6d480778 Better foldR 2012-02-25 15:27:09 -08:00
Henry Cook df97de0fd3 Better abstraction of data bundles 2012-02-25 12:57:01 -08:00
Henry Cook 4fa31b300b Added popcount util 2012-02-25 12:57:01 -08:00
Henry Cook 52da831aa3 finished xact_finish and xact_abort transactors in coherence hub 2012-02-23 18:12:50 -08:00
Henry Cook 1c1ce7d60b finished xact_rep transactor in coherence hub 2012-02-23 17:50:02 -08:00
Henry Cook 62837537f4 Improved TileIO organization, beginnings of hub implementation 2012-02-22 18:24:52 -08:00
Henry Cook 24a32c2811 Refining tilelink interface 2012-02-22 12:15:47 -08:00
Henry Cook 18bd0c232b Added coherence message type enums 2012-02-22 12:15:47 -08:00
Henry Cook e555fd3fc4 Abstract class for coherence policies 2012-02-16 12:59:38 -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 619929eba1 Added coherence tile function defs, with traits and constants 2012-02-16 00:16:45 -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
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
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
Henry Cook 8766438bb9 Updated chisel removes ^^ from language. Removed from rocket source, updated jar. 2012-01-23 17:09:23 -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 29ed8eb31a More utils for nbdcache 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