CIRCT 22.0.0git
Loading...
Searching...
No Matches
Public Member Functions | Static Public Member Functions | Public Attributes | List of all members
StreamingAddTranslatedArg Struct Reference

Test the StreamingAdder module using message translation. More...

Collaboration diagram for StreamingAddTranslatedArg:
Collaboration graph
[legend]

Public Member Functions

uint32_t * inputData ()
 Get pointer to trailing input data array.
 
const uint32_t * inputData () const
 
std::span< uint32_t > inputDataSpan ()
 Get span view of input data (requires inputLength to be set first).
 
std::span< const uint32_t > inputDataSpan () const
 

Static Public Member Functions

static size_t allocSize (size_t numItems)
 

Public Attributes

size_t inputLength
 
uint32_t addAmt
 

Detailed Description

Test the StreamingAdder module using message translation.

This version uses the list translation support where the message format is: Argument: { add_amt (4 bytes), input_length (8 bytes), input_data[] } Result: { data_length (8 bytes), data[] } The translation layer automatically converts between this format and the parallel windowed frames used by the hardware. Translated argument struct for StreamingAdder. Memory layout (standard C struct ordering, fields in declaration order): ESI type: struct { add_amt: UInt(32), input: List<UInt(32)> } becomes host struct: { input_length (size_t, 8 bytes on 64-bit), add_amt (uint32_t), input_data[] } Note: The translation layer handles the conversion between this C struct layout and the hardware's SystemVerilog frame format. Note: size_t is used for list lengths, so this format is platform-dependent.

Definition at line 1404 of file esitester.cpp.

Member Function Documentation

◆ allocSize()

static size_t StreamingAddTranslatedArg::allocSize ( size_t  numItems)
inlinestatic

Definition at line 1421 of file esitester.cpp.

Referenced by streamingAddTranslatedTest().

◆ inputData() [1/2]

uint32_t * StreamingAddTranslatedArg::inputData ( )
inline

Get pointer to trailing input data array.

Definition at line 1411 of file esitester.cpp.

Referenced by inputDataSpan(), and inputDataSpan().

◆ inputData() [2/2]

const uint32_t * StreamingAddTranslatedArg::inputData ( ) const
inline

Definition at line 1412 of file esitester.cpp.

◆ inputDataSpan() [1/2]

std::span< uint32_t > StreamingAddTranslatedArg::inputDataSpan ( )
inline

Get span view of input data (requires inputLength to be set first).

Definition at line 1416 of file esitester.cpp.

References inputData(), and inputLength.

◆ inputDataSpan() [2/2]

std::span< const uint32_t > StreamingAddTranslatedArg::inputDataSpan ( ) const
inline

Definition at line 1417 of file esitester.cpp.

References inputData(), and inputLength.

Member Data Documentation

◆ addAmt

uint32_t StreamingAddTranslatedArg::addAmt

Definition at line 1406 of file esitester.cpp.

◆ inputLength

size_t StreamingAddTranslatedArg::inputLength

Definition at line 1405 of file esitester.cpp.

Referenced by inputDataSpan(), inputDataSpan(), and streamingAddTranslatedTest().


The documentation for this struct was generated from the following file: