Line 88... |
Line 88... |
outputs.
|
outputs.
|
|
|
Note that sd_mirror is low-throughput, as it waits until all downstream blocks have
|
Note that sd_mirror is low-throughput, as it waits until all downstream blocks have
|
acknoweldged before accepting another word.
|
acknoweldged before accepting another word.
|
|
|
3.2 sd_rrslow
|
3.2 sd_rrmux
|
|
|
This block implements a "slow" round-robin arbiter/mux. It has multiple modes
|
This block implements a round-robin arbiter/mux. It has multiple modes
|
with options on whether a grant implies that input will "hold" the grant, or
|
with options on whether a grant implies that input will "hold" the grant, or
|
whether it moves on.
|
whether it moves on.
|
|
|
Mode 0 multiplexes between single words of data. Mode 1 allows an interface to burst,
|
Mode 0 multiplexes between single words of data. Mode 1 allows an interface to burst,
|
so once the interface begins transmitting it can transmit until it deasserts srdy.
|
so once the interface begins transmitting it can transmit until it deasserts srdy.
|
|
|
Mode 2 is for multiplexing packets, or other data where multiple words need to be
|
Mode 2 is for multiplexing packets, or other data where multiple words need to be
|
kept together. Once srdy is asserted, the block will not switch inputs until the
|
kept together. Once srdy is asserted, the block will not switch inputs until the
|
end pattern is seen, even if srdy is deasserted.
|
end pattern is seen, even if srdy is deasserted.
|
|
|
|
Also has a slow (1 cycle per input) and fast (immediate) arb mode.
|
|
|
Validation note: modes 1 and 2 have not been verified to date.
|
Validation note: modes 1 and 2 have not been verified to date.
|
|
|
4.0 Utility
|
4.0 Utility
|
|
|
This is intended for blocks which do not fit into one of the above categories.
|
This is intended for blocks which do not fit into one of the above categories.
|