polyphase_clock_synchroniser_c RCC worker

Due to the RCC implementation only processing data on each new incoming message, the internal buffers are stored between runs. As such they are stored within the worker class, as a class variable.

Note that when changing the taps, the taps_per_branch property should be updated before passing in the new taps array to ensure the input array can be properly bounds-checked.

It is assumed that the incoming sample data is in the range (-1,+1) - so for char values (8bits), these are treated as S0.7 format (i.e. 1 sign bit and 7 fractional bits) and can divided by \(2^7\) to convert to floating point values.

Where conversion from float to integer is undertaken the value is currently rounded to nearest integer before conversion.

Detail

Worker Properties

  • ocpi_buffer_size_output

    • Type: ushort

    • Access:

      • Parameter: False

      • Writable: False

      • Initial: True

      • Volatile: False

      • Read back: False

    • Default value: 0

Worker Ports

    Inputs:

  • input

    • Protocol: char_timed_sample

    • Optional: False

  • Outputs:

  • output

    • Protocol: char_timed_sample

    • Optional: False