The idea
Compute units need a communication fabric that preserves data when traffic converges and consumers stall. This project builds a mesh from small, inspectable routers and measures the consequences of contention.
The approach
Each five-port router buffers its inputs, routes in X before Y, and arbitrates independently for each output. A grant stays locked while stalled. The traffic environment injects unique packets and checks their exact identity, payload, destination, and delivery time.
Engineering work
- Implemented parameterized FIFOs, five-port routers, neighbor links, and non-wrapping mesh boundaries.
- Added per-output round-robin arbitration with retained ownership during backpressure.
- Ran uniform, complement, hotspot, and ring-destination workloads on 2×2, 3×2, and 3×3 meshes.
- Checked packet conservation and integrity while measuring accepted-injection latency and finite-workload delivery rate.
What the results show
A hotspot can dominate network behavior even when most links are lightly used. In the selected 3×3 experiment, mean accepted-packet latency rises from 8.448 clocks for uniform traffic to 67.872 for hotspot traffic under the same offer and sink settings.
Verification evidence
| Traffic experiments | 48 |
|---|---|
| Packets checked | 33,120 |
| Tested mesh sizes | 2×2 / 3×2 / 3×3 |
| Routing | Deterministic XY |
Each project includes a documented test plan and coverage gaps. Simulation checks the supplied workloads; generic cell counts are not physical area, timing, or power measurements.
Reproduce the result
Download the source, install the open-source tools, and run from the collection root:
make noc
make lint
make synth
make report