Graph class for adding packet switching streaming in AIE DSP IP.
This class implements a graph that splits incoming packet streams into multiple streams, processes them using a wrapped graph instance, and then merges the processed streams back into packet outputs.
The number of streams split from each packet input and merged to each packet output are calculated as N_STREAMS_SPLIT_FROM_PKT and N_STREAMS_MERGES_TO_PKT respectively.
Parameters:
| TP_SSR | Number of super sample rate streams the wrapped graph instance uses. |
| TP_INPUT_PORTS | Number of input packet ports. |
| TP_OUTPUT_PORTS | Number of output packet ports. |
| TT_GRAPH_TYPE | Type of the wrapped graph instance. |
template < unsigned int TP_SSR, unsigned int TP_INPUT_PORTS, unsigned int TP_OUTPUT_PORTS, typename TT_GRAPH_TYPE > class pkt_switch_graph: public graph // fields static constexpr unsigned N_STREAMS_SPLIT_FROM_PKT static constexpr unsigned N_STREAMS_MERGES_TO_PKT std::array <port <input>, TP_INPUT_PORTS> pkt_in std::array <port <output>, TP_OUTPUT_PORTS> pkt_out std::array <pktsplit <N_STREAMS_SPLIT_FROM_PKT>, TP_INPUT_PORTS> split std::array <pktmerge <N_STREAMS_MERGES_TO_PKT>, TP_OUTPUT_PORTS> merge TT_GRAPH_TYPE graph_instance