A bus cycle lasts
The
timeline uses half-
open intervals of
bus cycles:
A has
bus arbitration on
[0,1), address and command on
[1,2), and four payload transfers on
[2,6). Then
B has
bus arbitration on
[6,7), address and command on
[7,8), and two payload transfers on
[8,10). Their final payload completions are at 60
ns and
100 ns respectively.
B waits 60
ns before its own selection cycle even though both requests arrived together.
Reverse the
bus arbitration order, keeping these assumptions.
B finishes after four
bus cycles, at 40
ns;
A finishes at
100 ns. Aggregate
bus throughput stays 240 MB/
s, but
B'
s request-to-completion
time falls from
100 ns to 40
ns and
A'
s rises from 60
ns to
100 ns. Scheduling changes who waits without changing the available payload capacity in this example.
For an independent perturbation, retain
A first and add two
bus wait states before
B'
s final payload transfer. The interval grows to 120
ns with the same 24
bytes, so
bus throughput falls to 200 MB/
s. For another workload, one initiator sends all six transfers in
a single
bus burst: the stipulated overhead is paid once,
giving eight
bus cycles, 80
ns and 300 MB/
s. This latter comparison assumes one combined request is valid; combining different initiators' operations is not automatically permitted.