fifo HDL Worker

Detail

In keeping with good data flow control practices, backpressure is transferred, when necessary, from the output port to the input port. Backpressure is never transferred when in oneshot mode and after the data flow is discontinued. Backpressure from the output port and forwardpressure from the input port are both alleviated by the FIFO buffer, with the degree of alleviation being directly proportional to the parameterized depth of the FIFO buffer (FIFO_DEPTH_p).

The input port’s SOM, EOM, byte_enable, and valid indicators are passed through the FIFO to the output port when data flow is allowed. Consequently, ZLMs will be passed through this worker. If operating in oneshot mode and data flow has been discontinued, the EOM will be set (i.e. logic value of 1 applied) on the same clock pulse as the last output sample.

The ZLM_WHEN_ONESHOT_DONE_p parameter property, when having a value of true, forces the worker to send a single ZLM when in oneshot mode and data flow has been discontinued (i.e. when oneshot is ‘done’). This is useful for allowing applications which use this worker to terminate once data flow is discontinued.

The FIFO worker uses the clock from the Control Plane and standard Control Plane signals.

Worker Properties

  • ocpi_buffer_size_out

    • Type: ushort

    • Access:

      • Parameter: False

      • Writable: False

      • Initial: True

      • Volatile: False

      • Read back: False

    • Default value: 0

  • ocpi_blocked_out

    • Type: ulong

    • Access:

      • Parameter: False

      • Writable: False

      • Initial: False

      • Volatile: True

      • Read back: False

    • Default value: None

  • ocpi_max_latency_out

    • Type: ushort

    • Access:

      • Parameter: True

      • Writable: False

      • Initial: False

      • Volatile: False

      • Read back: False

    • Default value: None

  • ocpi_latency_out

    • Type: ushort

    • Access:

      • Parameter: False

      • Writable: False

      • Initial: False

      • Volatile: True

      • Read back: False

    • Default value: None

  • ocpi_messages_out

    • Type: ulong

    • Access:

      • Parameter: False

      • Writable: False

      • Initial: False

      • Volatile: True

      • Read back: False

    • Default value: None

  • ocpi_bytes_out

    • Type: ulong

    • Access:

      • Parameter: False

      • Writable: False

      • Initial: False

      • Volatile: True

      • Read back: False

    • Default value: None

Worker Ports

    Inputs:

  • in

    • Protocol: iqstream

    • Optional: False

  • Outputs:

  • out

    • Protocol: iqstream

    • Optional: False

Utilization

Utilization reporting is not currently implemented.