Commit Graph
100 Commits
Author SHA1 Message Date
Henry Cook 569d8fd796 Merge branch 'tilelink-data' 2013-05-23 14:14:40 -07:00
Henry Cook 12205b9684 remove obsolete config file reader prototype 2013-05-23 14:09:03 -07:00
Henry Cook 69b508ff39 ported caches and htif to use new tilelink 2013-05-21 17:21:04 -07:00
Henry Cook b6945408cb temp 2013-05-01 10:24:36 -07:00
Henry Cook 722bc917d3 broaden scope of s1_nack to include new probes accepted by the probe unit on that cycle 2013-05-01 10:05:54 -07:00
Henry Cook e8b20f3d38 clear meta state of silently-dropped, clean evictee, so as to prevent a write race on meta array between probes on evictee and refill grant 2013-04-25 17:41:04 -07:00
Henry Cook db5a060c7d fix io dir 2013-04-10 13:47:30 -07:00
Henry Cook f8aebcbf8c fix for cache controller bug: failing to mux correct metadata into mshr.io.old_meta on tag match 2013-04-04 15:50:29 -07:00
Henry Cook 16113a96ba fixes after merge 2013-03-25 19:09:08 -07:00
Henry Cook 95f0a688e9 Merge branch 'release-xacts'
Conflicts:
	src/htif.scala
	src/icache.scala
	src/nbdcache.scala
	src/tile.scala
2013-03-20 17:37:50 -07:00
Henry Cook 273bd34091 Generalized mem arbiter, moved to uncore. Support for multiple banks when acking grants. 2013-03-20 15:53:36 -07:00
Henry Cook 6d2541aced nTiles -> nClients in LogicalNetworkConfig 2013-03-20 14:12:36 -07:00
Henry Cook e0361840bd writebacks on release network pass asm tests and bmarks 2013-02-28 18:11:40 -08:00
Henry Cook f5729c9f25 removed ack_required field from grant messages 2013-01-28 16:44:17 -08:00
Henry Cook 8cbd316b5e Merge branch 'ready-sig-fix' into pin-cleanup 2013-01-27 23:04:58 -08:00
Henry Cook 931cffa749 ready signal fix 2013-01-27 23:04:35 -08:00
Henry Cook 83c207c852 pin cleanup in htif 2013-01-27 12:00:28 -08:00
Henry Cook 409b549d3c actually cleared up tile ios 2013-01-27 11:27:09 -08:00
Henry Cook 696dd102eb cleans up unconnected tile io pins (networking headers overwritten at top level) 2013-01-27 10:59:41 -08:00
Henry Cook 6b00e7ff74 New TileLink bundle names 2013-01-21 17:18:23 -08:00
Henry Cook a2fa3fd04d Refactored packet headers/payloads 2013-01-15 15:50:37 -08:00
Henry Cook e1225c5114 standardize IO naming convention 2013-01-07 13:41:36 -08:00
Henry Cook 261e14f831 Refactored uncore conf 2013-01-07 13:41:36 -08:00
Henry Cook e2eb7ce8e9 Cleanup git incompetence 2012-10-16 16:54:58 -07:00
Henry Cook 88ac5af181 Merged consts-as-traits 2012-10-16 16:32:35 -07:00
Henry Cook 6cff1c13d8 Refer to traits moved to uncore, add UncoreConfiguration to top 2012-10-16 14:22:23 -07:00
Henry Cook 8970b635b2 improvements to implicit RocketConfiguration parameter 2012-10-15 16:29:49 -07:00
Henry Cook a7a4e65690 Initial verison of reading config from files 2012-10-15 16:05:50 -07:00
Henry Cook 5d2a470215 all rocket-specific arbiters in one file and refactored traits slightly 2012-10-15 16:05:32 -07:00
Henry Cook 9025d0610c first pass at configuration object passed as implicit parameter 2012-10-07 22:37:29 -07:00
Henry Cook dfdfddebe8 constants as traits 2012-10-07 22:20:03 -07:00
Henry Cook b5ff436092 decode constant object split into multiple objects 2012-10-05 15:50:42 -07:00
Henry Cook b9a9664de5 uncore and rocket changes for new xact types 2012-10-01 10:47:36 -07:00
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