Skip to content

Commit fb77422

Browse files
pcolbergsophimao
authored andcommitted
hal_mmd: define streaming kernel argument interface to simulator
This introduces a backwards-incompatible change in the HAL MMD API between runtime and simulator. Signed-off-by: Peter Colberg <[email protected]>
1 parent 92a8371 commit fb77422

File tree

1 file changed

+16
-0
lines changed

1 file changed

+16
-0
lines changed

include/acl_hal_mmd.h

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,17 @@ typedef struct {
3333
unsigned long long size; /* size of this memory */
3434
} aocl_mmd_memory_info_t;
3535

36+
// Interface to simulator to describe streaming kernel arguments that are
37+
// excluded from the invocation image. Streaming arguments are passed to the
38+
// simulator by calling aocl_mmd_simulation_streaming_kernel_args(), before
39+
// writing the kernel invocation image containing non-streaming arguments.
40+
struct aocl_mmd_streaming_kernel_arg_info_t {
41+
// unique identifier for the bus-functional model (BFM)
42+
std::string name;
43+
// argument value
44+
std::vector<char> value;
45+
};
46+
3647
// MMD Version checking
3748
// Since MMD version changes only with major releases it is safe to assume
3849
// this is a float with at most one decimal
@@ -120,6 +131,11 @@ typedef struct {
120131
int *error);
121132

122133
double mmd_version;
134+
135+
// Passes streaming kernel argument names and values to simulator.
136+
void (*aocl_mmd_simulation_streaming_kernel_args)(
137+
int handle,
138+
const std::vector<aocl_mmd_streaming_kernel_arg_info_t> &streaming_args);
123139
} acl_mmd_dispatch_t;
124140

125141
typedef struct {

0 commit comments

Comments
 (0)