cloudFPGA (cF) API
1.0
The documentation of the source code of cloudFPGA (cF)
|
This module implements a set of UDP-oriented tests and functions. More...
Files | |
file | udp_app_flash.cpp |
: UDP Application Flash (UAF) | |
file | udp_app_flash.hpp |
: UDP Application Flash (UAF) | |
file | udp_app_flash_top.cpp |
: Top level with I/O ports for UDP Application Flash (UAF) | |
file | udp_app_flash_top.hpp |
: Top of UDP Application Flash (UAF) | |
file | simu_udp_app_flash_env.cpp |
: Simulation environment for the UDP Application Flash (UAF). | |
file | test_udp_app_flash.cpp |
: Testbench for UDP Application Flash (UAF). | |
file | test_udp_app_flash.hpp |
: Testbench for the UDP Application Flash (UAF). | |
file | test_udp_app_flash_top.cpp |
: Testbench for toplevel of the UDP Application Flash. | |
file | test_udp_app_flash_top.hpp |
: Testbench for toplevel of the UDP Application Flash. | |
Macros | |
#define | THIS_NAME "UAF" |
#define | TRACE_OFF 0x0000 |
#define | TRACE_ESF 1 << 1 |
#define | TRACE_RXP 1 << 2 |
#define | TRACE_TXP 1 << 3 |
#define | TRACE_ALL 0xFFFF |
#define | DEBUG_LEVEL (TRACE_OFF) |
#define | MTU 1500 |
#define | ECHO_PATH_THRU_PORT 8803 |
#define | THIS_NAME "SIM" |
#define | TRACE_OFF 0x0000 |
#define | TRACE_USIF 1 << 1 |
#define | TRACE_UAF 1 << 2 |
#define | TRACE_CGTF 1 << 3 |
#define | TRACE_DUMTF 1 << 4 |
#define | TRACE_ALL 0xFFFF |
#define | DEBUG_LEVEL (TRACE_OFF) |
#define | TB_MAX_CYCLES 500 |
#define | TB_GRACE_TIME 500 |
#define | VALID true |
#define | UNVALID false |
#define | DEBUG_TRACE true |
#define | ENABLED (ap_uint<1>)1 |
#define | DISABLED (ap_uint<1>)0 |
#define | DEFAULT_FPGA_IP4_ADDR 0x0A0CC801 |
#define | DEFAULT_FPGA_LSN_PORT 0x2263 |
#define | DEFAULT_FPGA_SND_PORT 0xA263 |
#define | DEFAULT_HOST_IP4_ADDR 0x0A0CC832 |
#define | DEFAULT_HOST_LSN_PORT 0x80 |
#define | DEFAULT_HOST_SND_PORT 0x8080 |
#define | DEFAULT_DATAGRAM_LEN 32 |
#define | THIS_NAME "TB_UAF" |
#define | THIS_NAME "TB_UAF_TOP" |
Enumerations | |
enum | EchoCtrl { ECHO_PATH_THRU = 0 , ECHO_STORE_FWD = 1 , ECHO_OFF = 2 , ECHO_PATH_THRU = 0 , ECHO_STORE_FWD = 1 , ECHO_OFF = 2 , ECHO_PATH_THRU = 0 , ECHO_STORE_FWD = 1 , ECHO_OFF = 2 , ECHO_PATH_THRU = 0 , ECHO_STORE_FWD = 1 , ECHO_OFF = 2 , ECHO_PATH_THRU = 0 , ECHO_STORE_FWD = 1 , ECHO_OFF = 2 , ECHO_PATH_THRU = 0 , ECHO_STORE_FWD = 1 , ECHO_OFF = 2 , ECHO_PATH_THRU = 0 , ECHO_STORE_FWD = 1 , ECHO_OFF = 2 , ECHO_STORE_FWD = 0 , ECHO_PATH_THRU = 1 , ECHO_CTRL_DISABLED = 0 , ECHO_PATH_THRU = 1 , ECHO_STORE_FWD = 2 , ECHO_OFF = 3 } |
Functions | |
void | stepDut () |
Run a single iteration of the DUT model. More... | |
bool | setInputDataStream (stream< UdpWord > &sDataStream, const string dataStreamName, const string inpFileName) |
Initialize an input data stream from a file. More... | |
bool | readDataStream (stream< UdpWord > &sDataStream, UdpWord *udpWord) |
Read data from a stream. More... | |
bool | dumpDataToFile (UdpWord *udpWord, ofstream &outFileStream) |
Dump a data word to a file. More... | |
bool | getOutputDataStream (stream< UdpWord > &sDataStream, const string dataStreamName, const string outFileName) |
Fill an output file with data from an output stream. More... | |
void | pUdpEchoStoreAndForward (CmdBit *piSHL_Enable, stream< UdpAppData > &siRXp_Data, stream< UdpAppMeta > &siRXp_Meta, stream< UdpAppDLen > &siRXp_DLen, stream< UdpAppData > &soTXp_Data, stream< UdpAppMeta > &soTXp_Meta, stream< UdpAppDLen > &soTXp_DLen) |
Echo loopback between the Rx and Tx ports of the UDP connection. More... | |
void | pUdpTxPath (CmdBit *piSHL_Mmio_Enable, stream< UdpAppData > &siEPt_Data, stream< UdpAppMeta > &siEPt_Meta, stream< UdpAppDLen > &siEPt_DLen, stream< UdpAppData > &siESf_Data, stream< UdpAppMeta > &siESf_Meta, stream< UdpAppDLen > &siESf_DLen, stream< UdpAppData > &soUSIF_Data, stream< UdpAppMeta > &soUSIF_Meta, stream< UdpAppDLen > &soUSIF_DLen) |
Transmit Path - From THIS to USIF. More... | |
void | pUdpRxPath (CmdBit *piSHL_Mmio_Enable, stream< UdpAppData > &siUSIF_Data, stream< UdpAppMeta > &siUSIF_Meta, stream< UdpAppDLen > &siUSIF_DLen, stream< UdpAppData > &soEPt_Data, stream< UdpAppMeta > &soEPt_Meta, stream< UdpAppDLen > &soEPt_DLen, stream< UdpAppData > &soESf_Data, stream< UdpAppMeta > &soESf_Meta, stream< UdpAppDLen > &soESf_DLen) |
UDP Receive Path (RXp) - From SHELL->ROLE/USIF to THIS. More... | |
void | udp_app_flash (CmdBit *piSHL_Mmio_En, stream< UdpAppData > &siUSIF_Data, stream< UdpAppMeta > &siUSIF_Meta, stream< UdpAppDLen > &siUSIF_DLen, stream< UdpAppData > &soUSIF_Data, stream< UdpAppMeta > &soUSIF_Meta, stream< UdpAppDLen > &soUSIF_DLen) |
Main process of the UDP Application Flash (UAF) More... | |
void | udp_app_flash_top (CmdBit *piSHL_Mmio_En, stream< UdpAppData > &siUSIF_Data, stream< UdpAppMeta > &siUSIF_Meta, stream< UdpAppDLen > &siUSIF_DLen, stream< UdpAppData > &soUSIF_Data, stream< UdpAppMeta > &soUSIF_Meta, stream< UdpAppDLen > &soUSIF_DLen) |
Top of UDP Application Flash (UAF) More... | |
void | stepSim () |
Increment the simulation counter. More... | |
void | increaseSimTime (unsigned int cycles) |
Increase the simulation time of the testbench. More... | |
bool | readDatagramFromFile (const char *myName, SimUdpDatagram &appDatagram, ifstream &ifsData, SocketPair &sockPair, queue< UdpAppMeta > &udpMetaQueue, queue< UdpAppDLen > &udpDLenQueue, int &inpChunks, int &inpDgrms, int &inpBytes) |
Read a datagram from a DAT file. More... | |
int | createGoldenTxFiles (EchoCtrl tbCtrlMode, string inpData_FileName, queue< UdpAppMeta > &udpMetaQueue, queue< UdpAppDLen > &udpDLenQueue, string outData_GoldName, string outMeta_GoldName, string outDLen_GoldName) |
Create the golden UDP Tx files from an input test file. More... | |
int | createUdpRxTraffic (stream< AxisApp > &ssData, const string ssDataName, stream< UdpAppMeta > &ssMeta, const string ssMetaName, stream< UdpAppDLen > &ssDLen, const string ssMDLenName, string datFile, queue< UdpAppMeta > &metaQueue, queue< UdpAppDLen > &dlenQueue, int &nrFeededChunks) |
Create the UDP Rx traffic as streams from an input test file. More... | |
bool | drainUdpMetaStreamToFile (stream< UdpAppMeta > &ss, string ssName, string datFile, int &nrChunks, int &nrFrames, int &nrBytes) |
Empty an UdpMeta stream to a DAT file. More... | |
bool | drainUdpDLenStreamToFile (stream< UdpAppDLen > &ss, string ssName, string datFile, int &nrChunks, int &nrFrames, int &nrBytes) |
Empty a UdpDLen stream to a DAT file. More... | |
int | main (int argc, char *argv[]) |
Main function for the test of the UDP Application Flash (UAF). More... | |
Variables | |
bool | gTraceEvent |
unsigned int | gSimCycCnt |
bool | gTraceEvent |
bool | gFatalError |
unsigned int | gMaxSimCycles |
unsigned int | gSimCycCnt |
unsigned int | gMaxSimCycles |
unsigned int | gSimCycCnt = 0 |
bool | gTraceEvent = false |
bool | gFatalError = false |
unsigned int | gMaxSimCycles = 500 + 500 |
unsigned int | gSimCycCnt |
unsigned int | gMaxSimCycles |
unsigned int | gSimCycCnt = 0 |
bool | gTraceEvent = false |
bool | gFatalError = false |
unsigned int | gMaxSimCycles = 500 + 500 |
This module implements a set of UDP-oriented tests and functions.
#define DEBUG_LEVEL (TRACE_OFF) |
Definition at line 67 of file udp_app_flash.cpp.
#define DEBUG_LEVEL (TRACE_OFF) |
Definition at line 68 of file simu_udp_app_flash_env.cpp.
#define DEBUG_TRACE true |
Definition at line 50 of file simu_udp_app_flash_env.hpp.
#define DEFAULT_DATAGRAM_LEN 32 |
Definition at line 69 of file simu_udp_app_flash_env.hpp.
#define DEFAULT_FPGA_IP4_ADDR 0x0A0CC801 |
Definition at line 62 of file simu_udp_app_flash_env.hpp.
#define DEFAULT_FPGA_LSN_PORT 0x2263 |
Definition at line 63 of file simu_udp_app_flash_env.hpp.
#define DEFAULT_FPGA_SND_PORT 0xA263 |
Definition at line 64 of file simu_udp_app_flash_env.hpp.
#define DEFAULT_HOST_IP4_ADDR 0x0A0CC832 |
Definition at line 65 of file simu_udp_app_flash_env.hpp.
#define DEFAULT_HOST_LSN_PORT 0x80 |
Definition at line 66 of file simu_udp_app_flash_env.hpp.
#define DEFAULT_HOST_SND_PORT 0x8080 |
Definition at line 67 of file simu_udp_app_flash_env.hpp.
#define DISABLED (ap_uint<1>)0 |
Definition at line 53 of file simu_udp_app_flash_env.hpp.
#define ECHO_PATH_THRU_PORT 8803 |
Definition at line 63 of file udp_app_flash.hpp.
#define ENABLED (ap_uint<1>)1 |
Definition at line 52 of file simu_udp_app_flash_env.hpp.
#define MTU 1500 |
Definition at line 51 of file udp_app_flash.hpp.
#define TB_GRACE_TIME 500 |
Definition at line 47 of file simu_udp_app_flash_env.hpp.
#define TB_MAX_CYCLES 500 |
Definition at line 46 of file simu_udp_app_flash_env.hpp.
#define THIS_NAME "UAF" |
Definition at line 60 of file udp_app_flash.cpp.
#define THIS_NAME "SIM" |
HELPERS FOR THE DEBUGGING TRACES .e.g: DEBUG_LEVEL = (TRACE_USIF | TRACE_UAF)
Definition at line 60 of file simu_udp_app_flash_env.cpp.
#define THIS_NAME "TB_UAF" |
Definition at line 52 of file test_udp_app_flash.cpp.
#define THIS_NAME "TB_UAF_TOP" |
Definition at line 52 of file test_udp_app_flash_top.cpp.
#define TRACE_ALL 0xFFFF |
Definition at line 66 of file udp_app_flash.cpp.
#define TRACE_ALL 0xFFFF |
Definition at line 67 of file simu_udp_app_flash_env.cpp.
#define TRACE_CGTF 1 << 3 |
Definition at line 65 of file simu_udp_app_flash_env.cpp.
#define TRACE_DUMTF 1 << 4 |
Definition at line 66 of file simu_udp_app_flash_env.cpp.
#define TRACE_ESF 1 << 1 |
Definition at line 63 of file udp_app_flash.cpp.
#define TRACE_OFF 0x0000 |
Definition at line 62 of file udp_app_flash.cpp.
#define TRACE_OFF 0x0000 |
Definition at line 62 of file simu_udp_app_flash_env.cpp.
#define TRACE_RXP 1 << 2 |
Definition at line 64 of file udp_app_flash.cpp.
#define TRACE_TXP 1 << 3 |
Definition at line 65 of file udp_app_flash.cpp.
#define TRACE_UAF 1 << 2 |
Definition at line 64 of file simu_udp_app_flash_env.cpp.
#define TRACE_USIF 1 << 1 |
Definition at line 63 of file simu_udp_app_flash_env.cpp.
#define UNVALID false |
Definition at line 49 of file simu_udp_app_flash_env.hpp.
#define VALID true |
Definition at line 48 of file simu_udp_app_flash_env.hpp.
enum EchoCtrl |
SHELL/MMIO/EchoCtrl - Config Register
Definition at line 44 of file udp_app_flash.hpp.
int createGoldenTxFiles | ( | EchoCtrl | tbCtrlMode, |
string | inpData_FileName, | ||
queue< UdpAppMeta > & | udpMetaQueue, | ||
queue< UdpAppDLen > & | udpDLenQueue, | ||
string | outData_GoldName, | ||
string | outMeta_GoldName, | ||
string | outDLen_GoldName | ||
) |
Create the golden UDP Tx files from an input test file.
[in] | tbCtrlMode | The testbench mode of operation. |
[in] | inpData_FileName | The input data file to generate from. |
[out] | udpMetaQueue | A ref to a container queue which holds the sequence of UDP socket-pairs. |
[out] | udpDLenQueue | A ref to a container queue which holds the sequence of UDP datagram lengths. |
[in] | outData_GoldName | The output datagram gold file to create. |
[in] | outMeta_GoldName | The output metadata gold file to create. |
[in] | outDLen_GoldName | The output data len gold file to create. |
Definition at line 177 of file simu_udp_app_flash_env.cpp.
int createUdpRxTraffic | ( | stream< AxisApp > & | ssData, |
const string | ssDataName, | ||
stream< UdpAppMeta > & | ssMeta, | ||
const string | ssMetaName, | ||
stream< UdpAppDLen > & | ssDLen, | ||
const string | ssMDLenName, | ||
string | datFile, | ||
queue< UdpAppMeta > & | metaQueue, | ||
queue< UdpAppDLen > & | dlenQueue, | ||
int & | nrFeededChunks | ||
) |
Create the UDP Rx traffic as streams from an input test file.
[in/out] | ssData A ref to the data stream to set. | |
[in] | ssDataName | The name of the data stream to set. |
[in/out] | ssMeta A ref to the metadata stream to set. | |
[in] | ssMetaName | The name of the metadata stream to set. |
[in/out] | ssDLen A ref to the data len stream to set. | |
[in] | ssDLenName | The name of the data len stream to set. |
[in] | datFileName | The path to the DAT file to read from. |
[in] | metaQueue | A ref to a queue of metadata. |
[in] | dlenQueue | A ref to a queue of data len. |
[out] | nrChunks | A ref to the number of fed chunks. |
Definition at line 353 of file simu_udp_app_flash_env.cpp.
bool drainUdpDLenStreamToFile | ( | stream< UdpAppDLen > & | ss, |
string | ssName, | ||
string | datFile, | ||
int & | nrChunks, | ||
int & | nrFrames, | ||
int & | nrBytes | ||
) |
Empty a UdpDLen stream to a DAT file.
[in/out] | ss A ref to the UDP data len to drain. | |
[in] | ssName | The name of the data len stream to drain. |
[in] | fileName | The DAT file to write to. |
[out | nrChunks A ref to the number of written chunks. | |
[out] | nrFrames | A ref to the number of written AXI4 streams. |
[out] | nrBytes | A ref to the number of written bytes. |
Definition at line 472 of file simu_udp_app_flash_env.cpp.
bool drainUdpMetaStreamToFile | ( | stream< UdpAppMeta > & | ss, |
string | ssName, | ||
string | datFile, | ||
int & | nrChunks, | ||
int & | nrFrames, | ||
int & | nrBytes | ||
) |
Empty an UdpMeta stream to a DAT file.
[in/out] | ss A ref to the UDP metadata stream to drain. | |
[in] | ssName | The name of the UDP metadata stream to drain. |
[in] | fileName | The DAT file to write to. |
[out | nrChunks A ref to the number of written chunks. | |
[out] | nrFrames | A ref to the number of written AXI4 streams. |
[out] | nrBytes | A ref to the number of written bytes. |
Definition at line 409 of file simu_udp_app_flash_env.cpp.
bool dumpDataToFile | ( | UdpWord * | udpWord, |
ofstream & | outFileStream | ||
) |
Dump a data word to a file.
[in] | udpWord,a | pointer to the data word to dump. |
[in] | outFileStream,the | output file stream to write to. |
Definition at line 162 of file test_triangle_app.cpp.
bool getOutputDataStream | ( | stream< UdpWord > & | sDataStream, |
const string | dataStreamName, | ||
const string | outFileName | ||
) |
Fill an output file with data from an output stream.
[in] | sDataStream,the | output data stream to set. |
[in] | dataStreamName,the | name of the data stream. |
[in] | outFileName,the | name of the output file to write to. |
Definition at line 185 of file test_triangle_app.cpp.
void increaseSimTime | ( | unsigned int | cycles | ) |
Increase the simulation time of the testbench.
[in] | The | number of cycles to increase. |
Definition at line 89 of file simu_udp_app_flash_env.cpp.
int main | ( | int | argc, |
char * | argv[] | ||
) |
Main function for the test of the UDP Application Flash (UAF).
Main function for the test of the UDP Application Flash (UAF) TOP.
Definition at line 62 of file test_udp_app_flash.cpp.
void pUdpEchoStoreAndForward | ( | CmdBit * | piSHL_Enable, |
stream< UdpAppData > & | siRXp_Data, | ||
stream< UdpAppMeta > & | siRXp_Meta, | ||
stream< UdpAppDLen > & | siRXp_DLen, | ||
stream< UdpAppData > & | soTXp_Data, | ||
stream< UdpAppMeta > & | soTXp_Meta, | ||
stream< UdpAppDLen > & | soTXp_DLen | ||
) |
Echo loopback between the Rx and Tx ports of the UDP connection.
[in] | piSHL_Enable | Enable signal from [SHELL]. |
[in] | siRXp_Data | UDP datagram from RxPath (RXp). |
[in] | siRXp_Meta | UDP metadata from [RXp]. |
[in] | siRXp_DLen | UDP data len from [RXp]. |
[out] | soTXp_Data | UDP datagram to TxPath (TXp). |
[out] | soTXp_Meta | UDP metadata to [TXp]. |
[out] | soTXp_DLen | UDP data len to [TXp]. |
The echo is said to operate in "store-and-forward" mode because every received packet is stored into the DDR4 memory before being read again from the DDR4 and and sent back.
[TODO - Implement this process as a real store-and-forward]
Definition at line 87 of file udp_app_flash.cpp.
void pUdpRxPath | ( | CmdBit * | piSHL_Mmio_Enable, |
stream< UdpAppData > & | siUSIF_Data, | ||
stream< UdpAppMeta > & | siUSIF_Meta, | ||
stream< UdpAppDLen > & | siUSIF_DLen, | ||
stream< UdpAppData > & | soEPt_Data, | ||
stream< UdpAppMeta > & | soEPt_Meta, | ||
stream< UdpAppDLen > & | soEPt_DLen, | ||
stream< UdpAppData > & | soESf_Data, | ||
stream< UdpAppMeta > & | soESf_Meta, | ||
stream< UdpAppDLen > & | soESf_DLen | ||
) |
UDP Receive Path (RXp) - From SHELL->ROLE/USIF to THIS.
[in] | piSHL_Mmio_Enable | Enable signal from [SHELL]. |
[in] | piSHL_Mmio_EchoCtrl | Configuration of the echo function. |
[in] | siUSIF_Data | Datagram from UdpShellInterface (USIF). |
[in] | siUSIF_Meta | Metadata from [USIF]. |
[in] | siUSIF_DLen | Data len from [USIF]. |
[out] | soEPt_Data | Datagram to EchoPassTrough (EPt). |
[out] | soEPt_Meta | Metadata to [EPt]. |
[out] | soEPt_DLen | Data len to [EPt]. |
[out] | soESf_Data | Datagram to EchoStoreAndForward (ESf). |
[out] | soESf_Meta | Metadata to [ESf]. |
[out] | soESf_DLen | Metadata to [ESf]. |
This Process waits for a new datagram to read and forwards it to the EchoPathThrough (EPt) or EchoStoreAndForward (ESf) process upon the setting of the UDP destination port.
Definition at line 351 of file udp_app_flash.cpp.
void pUdpTxPath | ( | CmdBit * | piSHL_Mmio_Enable, |
stream< UdpAppData > & | siEPt_Data, | ||
stream< UdpAppMeta > & | siEPt_Meta, | ||
stream< UdpAppDLen > & | siEPt_DLen, | ||
stream< UdpAppData > & | siESf_Data, | ||
stream< UdpAppMeta > & | siESf_Meta, | ||
stream< UdpAppDLen > & | siESf_DLen, | ||
stream< UdpAppData > & | soUSIF_Data, | ||
stream< UdpAppMeta > & | soUSIF_Meta, | ||
stream< UdpAppDLen > & | soUSIF_DLen | ||
) |
Transmit Path - From THIS to USIF.
[in] | piSHL_Mmio_Enable | Enable signal from [SHELL]. |
[in] | piSHL_Mmio_EchoCtrl | Configuration of the echo function. |
[in] | siEPt_Data | Datagram from pEchoPassTrough (EPt). |
[in] | siEPt_Meta | Metadata from [EPt]. |
[in] | siEPt_DLen | Data len from [EPt]. |
[in] | siESf_Data | Datagram from pEchoStoreAndForward (ESf). |
[in] | siESf_Meta | Metadata from [ESf]. |
[in] | siESf_DLen | Data len from [ESf]. |
[out] | soUSIF_Data | Datagram to UdpShellInterface (USIF). |
[out] | soUSIF_Meta | Metadata to [USIF]. |
[out] | soUSIF_DLen | Data len to [USIF]. |
The 'EchoPathThrough' forwards the datagrams in either DATAGRAM_MODE or STREAMING_MODE. The mode is defined by the content of the 'DLen' field: 1) DATAGRAM_MODE: If the 'DLen' field is loaded with a length != 0, this length is used as reference for handling the incoming datagram. If the length is larger than 1472 bytes (.i.e, MTU-IP_HEADER_LEN-UDP_HEADER_LEN), the UDP Offload Engine (UOE) of the NTS is expected to split the incoming datagram and generate as many sub-datagrams as required to transport all 'DLen' bytes over Ethernet. frames. 2) STREAMING_MODE: If the 'DLen' field is configured with a length==0, the corresponding stream is expected to be forwarded by the UOE of the NTS based on the same metadata information until the 'TLAST' bit of the data stream is set. In this mode, the UOE will wait for the reception of 1472 bytes before generating a new UDP-over-IPv4 packet, unless the 'TLAST' bit of the data stream is set.
Definition at line 168 of file udp_app_flash.cpp.
bool readDatagramFromFile | ( | const char * | myName, |
SimUdpDatagram & | appDatagram, | ||
ifstream & | ifsData, | ||
SocketPair & | sockPair, | ||
queue< UdpAppMeta > & | udpMetaQueue, | ||
queue< UdpAppDLen > & | udpDLenQueue, | ||
int & | inpChunks, | ||
int & | inpDgrms, | ||
int & | inpBytes | ||
) |
Read a datagram from a DAT file.
[in] | myName | The name of the caller process. |
[in] | appDatagram | A reference to the datagram to read. |
[in] | ifsData | The input file stream to read from. |
[out] | sockPair | A ref to the current active socket pair. |
[out] | udpMetaQueue | A ref to a container queue which holds the sequence of UDP socket-pairs. |
[out] | udpDLenQueue | A ref to a container queue which holds the sequence of UDP data lengths. |
[out] | inpChunks | A ref to the number of processed chunks. |
[out] | inptDgrms | A ref to the number of processed datagrams. |
[out] | inpBytes | A ref to the number of processed bytes. |
SIMULATION ENVIRONMENT FUNCTIONS
Definition at line 107 of file simu_udp_app_flash_env.cpp.
Read data from a stream.
[in] | sDataStream,the | output data stream to read. |
[in] | dataStreamName,the | name of the data stream. |
[out] | udpWord,a | pointer to the storage location of the data to read. |
Definition at line 147 of file test_triangle_app.cpp.
bool setInputDataStream | ( | stream< UdpWord > & | sDataStream, |
const string | dataStreamName, | ||
const string | inpFileName | ||
) |
Initialize an input data stream from a file.
[in] | sDataStream,the | input data stream to set. |
[in] | dataStreamName,the | name of the data stream. |
[in] | inpFileName,the | name of the input file to read from. |
Definition at line 93 of file test_triangle_app.cpp.
void stepDut | ( | ) |
Run a single iteration of the DUT model.
Definition at line 74 of file test_triangle_app.cpp.
void stepSim | ( | ) |
Increment the simulation counter.
SIMULATION UTILITY HELPERS
Definition at line 73 of file simu_udp_app_flash_env.cpp.
void udp_app_flash | ( | CmdBit * | piSHL_Mmio_En, |
stream< UdpAppData > & | siUSIF_Data, | ||
stream< UdpAppMeta > & | siUSIF_Meta, | ||
stream< UdpAppDLen > & | siUSIF_DLen, | ||
stream< UdpAppData > & | soUSIF_Data, | ||
stream< UdpAppMeta > & | soUSIF_Meta, | ||
stream< UdpAppDLen > & | soUSIF_DLen | ||
) |
Main process of the UDP Application Flash (UAF)
[in] | piSHL_Mmio_En | Enable signal from [SHELL/MMIO]. |
[in] | piSHL_Mmio_EchoCtrl | Configures the echo function. |
[in] | piSHL_Mmio_PostPktEn | Enables posting of UDP packets. |
[in] | piSHL_Mmio_CaptPktEn | Enables capture of UDP packets. |
[in] | siUSIF_Data | UDP datagram from UdpShellInterface (USIF). |
[in] | siUSIF_Meta | UDP metadata from [USIF]. |
[in] | siUSIF_DLen | UDP data len from [USIF]. |
[out] | soUSIF_Data | UDP datagram to [USIF]. |
[out] | soUSIF_Meta | UDP metadata to [USIF]. |
[out] | soUSIF_DLen | UDP data len to [USIF]. |
@info This core is designed with non-blocking read and write streams in mind. FYI, this is the normal way of operation for an internal stream and for an interface using the 'ap_fifo' protocol.
ENTITY - UDP APPLICATION FLASH (UAF)
Definition at line 506 of file udp_app_flash.cpp.
void udp_app_flash_top | ( | CmdBit * | piSHL_Mmio_En, |
stream< UdpAppData > & | siUSIF_Data, | ||
stream< UdpAppMeta > & | siUSIF_Meta, | ||
stream< UdpAppDLen > & | siUSIF_DLen, | ||
stream< UdpAppData > & | soUSIF_Data, | ||
stream< UdpAppMeta > & | soUSIF_Meta, | ||
stream< UdpAppDLen > & | soUSIF_DLen | ||
) |
Top of UDP Application Flash (UAF)
INTERFACE SYNTHESIS DIRECTIVES
[in] | piSHL_Mmio_EchoCtrl | Configures the echo function. |
[in] | piSHL_Mmio_PostPktEn | Enables posting of UDP packets. |
[in] | piSHL_Mmio_CaptPktEn | Enables capture of UDP packets. |
[in] | siUSIF_Data | UDP datagram from UdpShellInterface (USIF). |
[in] | siUSIF_Meta | UDP metadata from [USIF]. |
[in] | siUSIF_DLen | UDP data len from [USIF]. |
[out] | soUSIF_Data | UDP datagram to [USIF]. |
[out] | soUSIF_Meta | UDP metadata to [USIF]. |
[out] | soUSIF_DLen | UDP data len to [USIF]. |
@info This toplevel exemplifies the instantiation of a core that uses AP_FIFO interfaces instead of AXIS.
ENTITY - UDP APPLICATION FLASH TOP (UAF_TOP)
Definition at line 130 of file udp_app_flash_top.cpp.
|
extern |
Definition at line 152 of file tb_nal.cpp.
bool gFatalError = false |
Definition at line 46 of file test_udp_app_flash.hpp.
bool gFatalError = false |
Definition at line 43 of file test_udp_app_flash_top.hpp.
|
extern |
Definition at line 69 of file test_arp.hpp.
|
extern |
Definition at line 69 of file test_arp.hpp.
unsigned int gMaxSimCycles = 500 + 500 |
Definition at line 47 of file test_udp_app_flash.hpp.
|
extern |
Definition at line 69 of file test_arp.hpp.
unsigned int gMaxSimCycles = 500 + 500 |
Definition at line 44 of file test_udp_app_flash_top.hpp.
|
extern |
GLOBAL VARIABLES USED BY THE SIMULATION ENVIRONMENT
Definition at line 150 of file tb_nal.cpp.
|
extern |
GLOBAL VARIABLES USED BY THE SIMULATION ENVIRONMENT
Definition at line 150 of file tb_nal.cpp.
unsigned int gSimCycCnt = 0 |
GLOBAL VARIABLES USED BY THE SIMULATION ENVIRONMENT
Definition at line 44 of file test_udp_app_flash.hpp.
|
extern |
GLOBAL VARIABLES USED BY THE SIMULATION ENVIRONMENT
Definition at line 150 of file tb_nal.cpp.
unsigned int gSimCycCnt = 0 |
GLOBAL VARIABLES USED BY THE SIMULATION ENVIRONMENT
Definition at line 41 of file test_udp_app_flash_top.hpp.
|
extern |
HELPERS FOR THE DEBUGGING TRACES .e.g: DEBUG_LEVEL = (RXP_TRACE | ESF_TRACE)
HELPERS FOR THE DEBUGGING TRACES .e.g: DEBUG_LEVEL = (MDL_TRACE | IPS_TRACE)
Definition at line 151 of file tb_nal.cpp.
|
extern |
HELPERS FOR THE DEBUGGING TRACES .e.g: DEBUG_LEVEL = (MDL_TRACE | IPS_TRACE)
Definition at line 151 of file tb_nal.cpp.
bool gTraceEvent = false |
HELPERS FOR THE DEBUGGING TRACES .e.g: DEBUG_LEVEL = (MDL_TRACE | IPS_TRACE)
Definition at line 45 of file test_udp_app_flash.hpp.
bool gTraceEvent = false |
HELPERS FOR THE DEBUGGING TRACES .e.g: DEBUG_LEVEL = (MDL_TRACE | IPS_TRACE)
Definition at line 42 of file test_udp_app_flash_top.hpp.