Two masters rarely collide until the worst demo of the year, and then the stream that must never stutter is the one that does. NanoSoC arbitrates round-robin per slave, and its bandwidth model charges one idle cycle per burst: fair, simple, and measurably slower than the peak table the moment masters alternate. This topic measures that cost, shows what bounds the worst wait, and separates what NanoSoC has (round-robin with an AxPROT filter, nothing else) from QoS features it could add, which are labelled as proposals.
Lesson | After it you can... |
|---|---|
Build the 2-master arbiter with a burst lock and budget the idle-cycle tax of round-robin on shared slaves. | |
Measure the worst CPU wait under three schemes and see which lever really bounds it. | |
State what NanoSoC guarantees today, what AxQOS would add, and what the proposed extensions cost. |
Suggested order: top to bottom. Measure the default scheme first, learn what bounds it, then decide what to add. The arbitration theory (policies, fairness, regulators) is taught once in the protocol course: Arbitration Policies and Quality of Service; this topic applies it to NanoSoC numbers. For the NoC view of the same problem see Arbitration Policies and QoS in the architecture course.
Yes. The model charges one bubble per burst whether or not the grant changes hands: a lone master pays it as address-to-data turnaround, alternating masters pay it as a switch. That is why even a single SBR stream sustains 361.4 MB/s, not the 384.0 peak.