backpressure HDL Worker
Application worker HDL implementation with settable runtime configuration parameters that applies back pressure to the upstream worker in the application.
Detail
A back pressure HDL worker is built into a worker’s unit test HDL assembly and is used to force back pressure during the execution of the application to exercise the worker’s ability to correctly handle back pressure.
The back pressure HDL worker does not manipulate the data; it simply passes it through. Validation of this worker requires passing a known input data pattern through the worker under its various modes and comparing the input and output files to verify that the data is unchanged. Since validation of the output is performed simply by comparing to the input, any non-zero input data is sufficient.
The back pressure HDL worker does not explicitly define input/output protocols. Since the input protocol is simply bits, the input protocol is irrelevant and is defined by the component that feeds it; for example, file read. The back pressure HDL worker only applies back pressure to the worker that is upstream within the application.
The following figure shows a block diagram representation of the HDL implementation:
Figure 2: Back Pressure HDL Worker Block Diagram
Worker Properties
IDATA_WIDTH_pType:
ulongAccess:
Parameter:
TrueWritable:
FalseInitial:
FalseVolatile:
FalseRead back:
False
Default value:
None
ODATA_WIDTH_pType:
ulongAccess:
Parameter:
TrueWritable:
FalseInitial:
FalseVolatile:
FalseRead back:
False
Default value:
None
ocpi_buffer_size_outType:
ushortAccess:
Parameter:
FalseWritable:
FalseInitial:
TrueVolatile:
FalseRead back:
False
Default value:
0
ocpi_blocked_outType:
ulongAccess:
Parameter:
FalseWritable:
FalseInitial:
FalseVolatile:
TrueRead back:
False
Default value:
None
ocpi_max_latency_outType:
ushortAccess:
Parameter:
TrueWritable:
FalseInitial:
FalseVolatile:
FalseRead back:
False
Default value:
None
ocpi_latency_outType:
ushortAccess:
Parameter:
FalseWritable:
FalseInitial:
FalseVolatile:
TrueRead back:
False
Default value:
None
ocpi_messages_outType:
ulongAccess:
Parameter:
FalseWritable:
FalseInitial:
FalseVolatile:
TrueRead back:
False
Default value:
None
ocpi_bytes_outType:
ulongAccess:
Parameter:
FalseWritable:
FalseInitial:
FalseVolatile:
TrueRead back:
False
Default value:
None
Worker Ports
in: Size defined byIDATA_WIDTH_p.Protocol:
NoneOptional:
False
out: Sample size defined byODATA_WITH_p.Protocol:
NoneOptional:
False
Inputs:
Outputs:
Finite State Machine
Not applicable.
Control and Timing Signals
The back pressure HDL worker uses the clock from the control plane and standard control plane signals.