Commit Graph

185 Commits

Author SHA1 Message Date
Vamber Yang
8ccaf3864d Support for more realistic MemTracer step2 (DONE), make Verilog Blackbox DPI output data immediately and make .cc file maintain pointer when downstream is not ready 2023-05-02 22:06:16 -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