Commit Graph

28 Commits

Author SHA1 Message Date
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
f7bf277e89 Fix unittest for CoalShiftQueue deq.valid change 2023-04-28 00:50:34 -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
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
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
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
Hansung Kim
ccf9b95fb5 Create custom response bundle to decouple from TileLink
... and easier unit testing.
2023-04-23 13:37:10 -07:00
Hansung Kim
6ae08b6541 Add missing sizeWidth to uncoalescer test 2023-04-21 11:24:57 -07:00
Hansung Kim
de6d6eee1a Fix request shift queue not enqueuing when empty
The queue was enabling shifting of the registers whenever deq.ready
was 1, even when the queue was empty.  This caused `wen` to disable
writing enq.bits to any of the entries in the queue.  Fixed by setting
`shift` to 0 when queue is empty.
2023-04-20 21:12:19 -07:00
Hansung Kim
abecd30b2b Store sourceId for every old req entry in table 2023-04-07 14:50:40 -07:00
Hansung Kim
d62732fb89 Invalidate outgoing per-lane requests that got coalesced
Now the response queue no longer blocks the flow!
2023-04-01 14:33:46 -07:00
Hansung Kim
d9f6e27a04 Move coalescer chiseltest to its own package 2023-03-31 20:51:34 -07:00