1
0
rocket-chip/src/main/scala/tilelink
Wesley W. Terpstra b59880fe8e
Fragmenter: add an option for earlyAck only on PutFulls (#1095)
Fragmenter: add a third case for earlyAck (PutFulls only)

It seems quite common to have a device that is backed by ECC. When
performing a multibeat PutPartial, these devices can exhibit their
first error on the last beat (if it had an incomplete write mask
for that beat, which required read-write-modifying corrupted data).

Generally, these devices have ECC granularity <= the bus width. In
those cases, if you send a PutFull, the first beat carries the
error value for the whole burst. Consider:
  If the PutFull was below the granularity, it was a single beat.
  If the PutFull was multi-beat, it exceeds the granularity.

Therefore, an important variation on the earlyAck optimization is
the case where only PutFulls receive an earlyAck.
2017-11-08 15:31:19 -08:00
..
Arbiter.scala Refactor package hierarchy and remove legacy bus protocol implementations (#845) 2017-07-07 10:48:16 -07:00
AsyncCrossing.scala Async covers (#1085) 2017-11-01 11:03:45 -07:00
AtomicAutomata.scala tilelink: AtomicAutomata; add errors to the unit test 2017-11-06 12:05:44 -08:00
Atomics.scala tilelink: split Acquire into Acquire{Block,Perm} (#1030) 2017-10-05 12:49:49 -07:00
Broadcast.scala tilelink: split Acquire into Acquire{Block,Perm} (#1030) 2017-10-05 12:49:49 -07:00
Buffer.scala diplomacy: convert all helper objects to return nodes 2017-10-28 11:34:16 -07:00
Bundles.scala tilelink: split Acquire into Acquire{Block,Perm} (#1030) 2017-10-05 12:49:49 -07:00
Bus.scala Bus: remove deprecated crossing attach methods 2017-10-28 11:34:16 -07:00
CacheCork.scala diplomacy: convert all helper objects to return nodes 2017-10-28 11:34:16 -07:00
Delayer.scala unit tests: do not use LFSR16 which has a common seed! 2017-10-30 21:09:45 -07:00
Edges.scala tilelink: split Acquire into Acquire{Block,Perm} (#1030) 2017-10-05 12:49:49 -07:00
ErrorEvaluator.scala tilelink: generalize ErrorEvaluator to more than just address patterns 2017-11-06 11:53:09 -08:00
Example.scala Refactor package hierarchy and remove legacy bus protocol implementations (#845) 2017-07-07 10:48:16 -07:00
FIFOFixer.scala diplomacy: convert all helper objects to return nodes 2017-10-28 11:34:16 -07:00
Filter.scala diplomacy: convert all helper objects to return nodes 2017-10-28 11:34:16 -07:00
Fragmenter.scala Fragmenter: add an option for earlyAck only on PutFulls (#1095) 2017-11-08 15:31:19 -08:00
Fuzzer.scala diplomacy: use new node style chaining 2017-10-28 11:34:16 -07:00
HintHandler.scala diplomacy: use new node style chaining 2017-10-28 11:34:16 -07:00
Isolation.scala diplomacy: convert all helper objects to return nodes 2017-10-28 11:34:16 -07:00
Map.scala diplomacy: convert all helper objects to return nodes 2017-10-28 11:34:16 -07:00
Metadata.scala Refactor package hierarchy and remove legacy bus protocol implementations (#845) 2017-07-07 10:48:16 -07:00
Monitor.scala tilelink: Monitor now enforces spec-defined error rules 2017-10-30 11:27:07 -07:00
NodeNumberer.scala diplomacy: convert all helper objects to return nodes 2017-10-28 11:34:16 -07:00
Nodes.scala diplomacy: move rendering properties to edges 2017-09-26 13:24:36 -07:00
package.scala diplomacy: define only primary node types 2017-10-28 11:16:56 -07:00
Parameters.scala Add atomics support to DTS JSON file. 2017-10-18 15:17:53 -07:00
PatternPusher.scala diplomacy: change API to auto-create node bundles => cross-module refs 2017-09-22 15:01:39 -07:00
RAMModel.scala ahb: ignore hrdata on an AHB error 2017-10-30 21:09:45 -07:00
RationalCrossing.scala diplomacy: use new node style chaining 2017-10-28 11:34:16 -07:00
RegisterRouter.scala IntNodes: moved from tilelink to their own package 2017-10-25 16:56:51 -07:00
RegisterRouterTest.scala diplomacy: use new node style chaining 2017-10-28 11:34:16 -07:00
SourceShrinker.scala diplomacy: convert all helper objects to return nodes 2017-10-28 11:34:16 -07:00
Splitter.scala diplomacy: change API to auto-create node bundles => cross-module refs 2017-09-22 15:01:39 -07:00
SRAM.scala diplomacy: use new node style chaining 2017-10-28 11:34:16 -07:00
ToAHB.scala tilelink: ToAHB should make read errors sticky as well 2017-10-30 21:09:45 -07:00
ToAPB.scala diplomacy: convert all helper objects to return nodes 2017-10-28 11:34:16 -07:00
ToAXI4.scala Fix stateless caching (#1084) 2017-11-01 11:05:56 -07:00
WidthWidget.scala tilelink: optimize WidthWidget error circuit to nothing 2017-10-30 21:09:45 -07:00
Xbar.scala diplomacy: use new node style chaining 2017-10-28 11:34:16 -07:00