lib_tsn - AN00203 - TDM outputs 3/4 corrupted?

Technical discussions around xCORE processors (e.g. xcore-200 &
Junior Member
Posts: 7
Joined: Tue Sep 12, 2023 11:43 pm

lib_tsn - AN00203 - TDM outputs 3/4 corrupted?

Post by nippoo »


I'm trying to get lib_tsn to work on a custom board with 32 channels as a listener-only device. (At the moment it also reports to be a 32x32 channel device because there are a bunch of bugs and compile errors if I try make it listener-only but... that's a problem for another thread/PR)

My issue is that I'm getting audio corruption and incorrect output on TDM8 streams 3 and 4 (the last two). This doesn't appear to be a hardware issue - the board works fine with lib_xua, and I can change the portmap but whatever the last two output 1-bit ports are, get errors.


TDM8 3 (of 4) works with all channels except 4, 5, 6, 8 (which appear to drop samples, see video - this should be sending all bits at 1)

TDM8 stream 4 appears to be offset by a couple of clocks, causing horrible full-scale noise on the following channel.

Photo of TDM8 stream 1 (correctly aligned, like 2, 3, 4) and TDM4 (incorrectly aligned).

Before I go hunting too deep into the library - has anyone else come across this? It feels like it might be some race condition like
You do not have the required permissions to view the files attached to this post.