|
CIRCT 23.0.0git
|
Classes | |
| class | ChannelArbiterListTest |
| class | ChannelArbiterTokenTest |
| class | ListChecker |
| class | TokenChecker |
| class | Top |
Functions | |
| HostMux (int num_inputs, mux_pipeline_levels=None) | |
| ListProducer (int src_id, int length) | |
| TokenProducer (int count) | |
Variables | |
| int | NUM_INPUTS = 4 |
| int | ODD_NUM_INPUTS = 3 |
| int | PIPE_NUM_INPUTS = 6 |
| int | TOKEN_NUM_INPUTS = 5 |
| int | TOKENS_PER_INPUT = 8 |
| ListInto = StructType({'src': UInt(8), 'items': ListType(UInt(16))}) | |
| Flit = Window.default_of(ListInto) | |
| FlitLowered = Flit.lowered_type | |
| bsp = get_bsp(sys.argv[2] if len(sys.argv) > 2 else None) | |
| s = System(bsp(Top), name="ChannelArbiterTest", output_directory=sys.argv[1]) | |
| channel_arbiter.HostMux | ( | int | num_inputs, |
mux_pipeline_levels = None |
|||
| ) |
A host-driven single-flit multiplexer: `num_inputs` `from_host` UInt(32) channels muxed into a single `to_host` channel. `mux_pipeline_levels` pipelines the selection mux tree.
Definition at line 53 of file channel_arbiter.py.
Referenced by channel_arbiter.Top.construct().
| channel_arbiter.ListProducer | ( | int | src_id, |
| int | length | ||
| ) |
A module which continuously emits back-to-back list messages of `length` flits tagged with `src_id`. `items` counts 0..length-1 and `last` is set on the final flit. Always valid, so two of these contend for the arbiter.
Definition at line 79 of file channel_arbiter.py.
References FlitLowered, and wrap().
Referenced by channel_arbiter.ChannelArbiterListTest.build().
| channel_arbiter.TokenProducer | ( | int | count | ) |
Emits exactly `count` zero-width (`i0`) tokens then idles: `valid` stays high until `count` tokens have been accepted. There is no payload -- only the valid/ready handshake carries information.
Definition at line 191 of file channel_arbiter.py.
References wrap().
Referenced by channel_arbiter.ChannelArbiterTokenTest.build().
| channel_arbiter.bsp = get_bsp(sys.argv[2] if len(sys.argv) > 2 else None) |
Definition at line 294 of file channel_arbiter.py.
| channel_arbiter.Flit = Window.default_of(ListInto) |
Definition at line 49 of file channel_arbiter.py.
| channel_arbiter.FlitLowered = Flit.lowered_type |
Definition at line 50 of file channel_arbiter.py.
Referenced by ListProducer().
| channel_arbiter.ListInto = StructType({'src': UInt(8), 'items': ListType(UInt(16))}) |
Definition at line 48 of file channel_arbiter.py.
| int channel_arbiter.NUM_INPUTS = 4 |
Definition at line 39 of file channel_arbiter.py.
| int channel_arbiter.ODD_NUM_INPUTS = 3 |
Definition at line 40 of file channel_arbiter.py.
| int channel_arbiter.PIPE_NUM_INPUTS = 6 |
Definition at line 41 of file channel_arbiter.py.
Definition at line 295 of file channel_arbiter.py.
| int channel_arbiter.TOKEN_NUM_INPUTS = 5 |
Definition at line 42 of file channel_arbiter.py.
| int channel_arbiter.TOKENS_PER_INPUT = 8 |
Definition at line 43 of file channel_arbiter.py.