AVB endpoint design

New to XMOS and XCore? Get started here.
nick
Junior Member
Posts: 5
Joined: Tue Jan 07, 2020 10:35 am

AVB endpoint design

Postby nick » Fri Feb 07, 2020 4:30 pm

Hi,
I made some changes in the firmware of the application note AN00203 (AVB gigabit ethernet using TDM master). Currently I'm using the xCORE-200 multichannel audio platform. The configurations I tested successfully are:
- 32in32out TDM8 (8 channels per stream, 4 input and 4 output TDM lines)
- 32in32out TDM16 (16 channels per stream, 2 input and 2 output TDM lines)
- 48in48out TDM16 (16 channels per stream, 3 input and 3 output TDM lines)
I'm interested in reaching 64 input channels (TDM16). I checked the configuration with 64in64out but it seems that the xCore-200 can't manage so many channels.
I don't care about how many output channels I have (at least one stream for the synchronisation, so 16 channels).
Has anyone ever tried to reach 64 input channels with the AVB firmware?
Is it possible to have a configuration in which the number of input channels is different from the number of output channels?

Thank you
User avatar
akp
Respected Member
Posts: 381
Joined: Thu Nov 26, 2015 11:47 pm

Postby akp » Fri Feb 07, 2020 6:40 pm

It is possible to have different number of input channels from output channels. There are several typos in the code you will have to fix to get that working, for instance, where XMOS referred to AVB_NUM_SOURCES when then meant AVB_NUM_SINKS or something like that. And also consider the tdm buffer manager (to check it doesn't expect same number of channels for input and output).

I am sorry I have made so many changes I can't put it up. It's for work.

It sounds like you're running into callback pressure on the tdm buffer manager. You many need to optimise the tdm buffer manager.. so if you can get the 64in16out (e.g.) working that might reduce your callback pressure there. Or you may need to optimise the tdm code itself. I have found that hand optimised dual issue assembly can significantly improve critical loop performance (in certain situations).

Who is online

Users browsing this forum: No registered users and 0 guests