CIRCT 23.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 1426 of file esitester.cpp.

Member Function Documentation

◆ allocSize()

static size_t StreamingAddTranslatedArg::allocSize ( size_t  numItems)
inlinestatic

Definition at line 1443 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 1433 of file esitester.cpp.

Referenced by inputDataSpan(), and inputDataSpan().

◆ inputData() [2/2]

const uint32_t * StreamingAddTranslatedArg::inputData ( ) const
inline

Definition at line 1434 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 1438 of file esitester.cpp.

References inputData(), and inputLength.

◆ inputDataSpan() [2/2]

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

Definition at line 1439 of file esitester.cpp.

References inputData(), and inputLength.

Member Data Documentation

◆ addAmt

uint32_t StreamingAddTranslatedArg::addAmt

Definition at line 1428 of file esitester.cpp.

◆ inputLength

size_t StreamingAddTranslatedArg::inputLength

Definition at line 1427 of file esitester.cpp.

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


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