Commit Graph

623 Commits

Author SHA1 Message Date
Richard Yan
459c14bb62 add testing infrastructure for coalescing unit 2023-05-02 17:38:49 -07:00
Vamber Yang
be0fcbd23b Support for more realistic MemTracer step 1, allow Chisel MemTracer to input read_cycle to Verilog blackbox 2023-05-02 14:01:19 -07:00
Richard Yan
b9953e43ca TL helper methods for entry types 2023-05-02 01:39:27 -07:00
Richard Yan
997b421c42 active byte lane implementation for multi coalescer & add one shift queue test 2023-05-02 00:07:45 -07:00
Richard Yan
6757ea1bbd shift queue bug fixes + new unit test 2023-05-01 00:51:31 -07:00
Richard Yan
224bc65bcc Merge branch 'graphics' of https://github.com/hansungk/rocket-chip into graphics 2023-04-30 17:59:16 -07:00
Richard Yan
55b2f7c33f reworked shift queue 2023-04-30 17:59:10 -07:00
Hansung Kim
03be55fd4e Alternative bogus logic for synthesis-only driver 2023-04-29 22:34:12 -07:00
Hansung Kim
0270d82882 Touch TL D data to save uncoalescer from synthesis opt-out 2023-04-29 14:14:18 -07:00
Hansung Kim
81635d49db Add a dummy test target for use in synthesis 2023-04-29 13:20:44 -07:00
Richard Yan
12d2912368 Merge branch 'graphics' of https://github.com/hansungk/rocket-chip into graphics 2023-04-28 20:51:08 -07:00
Richard Yan
c655874470 width widget in DummyCoalescingUnitTB 2023-04-28 20:47:47 -07:00
Hansung Kim
fec788d648 Invalidate head when dequeued but allowShift was false 2023-04-28 15:46:45 -07:00
Hansung Kim
a49931ae60 Add invalidate/enq test case for depth=1 CoalShiftQueue 2023-04-28 15:08:39 -07:00
Hansung Kim
44d3c09b6d Fix used bit logic when invalidating but not dequeueing 2023-04-28 14:58:47 -07:00
Hansung Kim
2622bf04d3 Add allowShift to CoalShiftQueue IO to synchronize shifting 2023-04-28 14:12:51 -07:00
Hansung Kim
fc948b36d8 Only compare leader against followers >= leader idx 2023-04-28 01:37:36 -07:00
Hansung Kim
f12211b9cc Remove duplicate instantiation of table entryT 2023-04-28 01:15:37 -07:00
Hansung Kim
f7bf277e89 Fix unittest for CoalShiftQueue deq.valid change 2023-04-28 00:50:34 -07:00
Hansung Kim
ec5c6ce08b Properly copy over queue data to inflight entry 2023-04-28 00:50:19 -07:00
Hansung Kim
16c8eb2ada Fix old request not being invalidated; end-to-end flow working 2023-04-27 21:54:02 -07:00
Hansung Kim
b5b1a7da66 Add uncoalescer test case for all-lane-same-offset case 2023-04-27 21:53:36 -07:00
Hansung Kim
edc05d51e6 Fix not respecting invalidate.valid from coalescer 2023-04-27 21:35:26 -07:00
Hansung Kim
7f821a66f5 First attempt at hooking up coalescer to uncoalescer 2023-04-27 21:19:56 -07:00
Hansung Kim
dfdd4f8342 Redundant call syntax 2023-04-27 20:36:04 -07:00
Hansung Kim
699520073e Make maxSize accessor function 2023-04-27 20:34:20 -07:00
Hansung Kim
ba2bc3020b Fix truncation bug in matchCount 2023-04-27 20:24:15 -07:00
Hansung Kim
84ac332637 Add chiseltest for stride = 0 2023-04-27 19:51:17 -07:00
Hansung Kim
7780250c7a More comments & renames 2023-04-27 19:17:07 -07:00
Richard Yan
900f5adb20 running coalescing flow 2023-04-26 01:23:21 -07:00
Hansung Kim
4c1ae1cb3d More debug prints 2023-04-25 19:15:28 -07:00
Hansung Kim
ef25c8a3f0 Fix matchCount having bit width of 1 for spatial-only 2023-04-25 18:46:26 -07:00
Hansung Kim
2090b8703e Rename params 2023-04-25 17:16:28 -07:00
Hansung Kim
33f7adb5eb Make separate param for response depth queue
This is not necessarily the same as NUM_NEW_IDS, the latter determines
the inflight coalescing table size but not the response queues.
2023-04-25 17:09:46 -07:00
Hansung Kim
980c77a8fa Renames 2023-04-25 16:55:59 -07:00
Hansung Kim
9000577f45 Add assertions for queue drift 2023-04-25 14:36:52 -07:00
Richard Yan
99348e1e40 mostly running coalescing test 2023-04-25 02:50:14 -07:00
Richard Yan
3a0fdb2c67 WIP diplomacy set up for coal unit test 2023-04-25 02:26:13 -07:00
Richard Yan
be40c77d06 merge graphics 2023-04-25 00:10:51 -07:00
Richard Yan
37620400db WIP coalescing flow test 2023-04-25 00:09:23 -07:00
Hansung Kim
31e04e9402 Fix CoalShiftQueue invalidate logic
IO type change to Valid[UInt] was not reflected in the valid bit logic.
2023-04-24 14:01:39 -07:00
Hansung Kim
7539c39c45 Store SizeEnum in entry instead of UInt 2023-04-23 22:34:19 -07:00
Richard Yan
5d105b36c5 Merge branch 'richard-dev' into graphics 2023-04-23 21:34:52 -07:00
Richard Yan
a872856263 quick coalescer connection fix 2023-04-23 21:31:25 -07:00
Richard Yan
7663a03a8c coalescer implementation passing compilation 2023-04-23 21:29:07 -07:00
Hansung Kim
c21a196907 scalafmt 2023-04-23 20:56:55 -07:00
Richard Yan
647d7b8628 WIP multi-coalescer 2023-04-23 20:31:54 -07:00
Richard Yan
bac8916ba1 mono coalescer implementation 2023-04-23 15:55:46 -07:00
Hansung Kim
0f2e4ee8aa Store UInt instead of ChiselEnum in entry; pass tests
Scala isn't happy with storing ChiselEnum type for some reason
2023-04-23 15:28:12 -07:00
Hansung Kim
8cee61a591 Uncoalesce using table size enum 2023-04-23 14:42:10 -07:00