Introduction
You can include an external traffic generator process while simulating your application to dynamically generate data traffic on the I/O traffic generators, or to capture output data from the emulation process.The AMD provided Python library can be used to create the traffic generator code as described in the following sections.
The Python library having the API is divided into API for sending and
receiving user data on instantiated traffic generator objects. There are also
advanced APIs for packet level granularity if you need more control over
transactions. For seamless interaction of traffic generators with simulation
process, the API gives you control over sending or receiving the data without
worrying too much about managing packet level details like TLAST
, TKEEP
, TSRB
, etc. This is auto managed by the sim_IPC
infrastructure when using the API. Also, an
application can communicate to multiple I/O interface. It is not necessary to have
each instance of I/O utilities to be in a separate process/thread. If your
application requires it, you might consider the non-blocking API to send the data.
The Python API are categorized as follows: