xmos / sw_usb_audio

XMOS USB Audio reference design
Other
32 stars 17 forks source link

Cannot enable OUT_VOLUME_IN_MIXER with TDM #148

Open xross opened 1 year ago

xross commented 1 year ago

By default lib_xua runs output volume processing in the mixer task if it is present (OUT_VOLUME_IN_MIXER=1)

When TDM is enabled some issues have been discovered through testing, we assume this is due to the larger MIPS requirement of TDM.

This has been experienced in app_usb_aud_xk_216_mc with build config 2ASi16o16xxxxxx_tdm8, for example.

https://github.com/xmos/sw_usb_audio/pull/147 moves volume processing to the decouple task for the TDM configs.

xross commented 1 year ago

Confirmed timing is not met at 88.2 with TDM slave and OUT_VOLUME_IN_MIXER, data misses timing by up to 2 bit clocks.

Over-clocking the XS2 device to 600MHz "resolves" the issue, further confirming the MIPS/timing theory.