Hi, i am using the reference AVB application, which works fine when connecting 2 XR-AVB-LC-BRD boards, but with one of those connected to the slicekit with the ethernet slice i am not getting any audio, but some static noise. I am using the default configuration so my ethernet port is on the circle slot and my audio slice is on the triangle slot. All i did at first was changing the target in makefile to SLICEKIT-L2, then tried to change stuff in the code.
I find this weird, because someone from another thread said he only connected the boards and got audio.
http://www.xcore.com/forum/viewtopic.ph ... kit#p13593
My slicekit is XP-SKC-L2 1v2, so perhaps it is not the exact same slicekit from the application? (using reference design 5.2.1) this is mere speculation but im out of ideas. Please help me
avb on slicekit
-
- Experienced Member
- Posts: 77
- Joined: Fri Dec 06, 2013 7:05 pm
-
- XCore Expert
- Posts: 589
- Joined: Wed Feb 29, 2012 10:03 am
Which Audio slice are you using? You should be using XA-SK-AUDIO-PLL slice not the XA-SK-AUDIO slice.
Sethu.
Sethu.
-
- Experienced Member
- Posts: 77
- Joined: Fri Dec 06, 2013 7:05 pm
if i understand correctly, you mean the XA-SK-AUDIO on which you add the cs2100 PLL right?
Nonetheless, the audio slice's codecs have the I2S interface (e.g i can run some I2S apps on it no prob) and the AVB design has the module_AVB_audio which is basically connecting the I2S and media fifos interfaces together. So im tempted to believe that you don't need to change the PLL to cs2100 to run AVB, but instead change the I2S to media fifos algorithm and port mapping. Can someone confirm this for me please?
Now the thing i find intriguing is how they routed their I2S ports in software for the Slicekit.
From slicekit-l2/avb_app_board_config.h :
Most of it seems fine but what's with the sclk port mapped on a signal called adc_data0?
Nonetheless, the audio slice's codecs have the I2S interface (e.g i can run some I2S apps on it no prob) and the AVB design has the module_AVB_audio which is basically connecting the I2S and media fifos interfaces together. So im tempted to believe that you don't need to change the PLL to cs2100 to run AVB, but instead change the I2S to media fifos algorithm and port mapping. Can someone confirm this for me please?
Now the thing i find intriguing is how they routed their I2S ports in software for the Slicekit.
From slicekit-l2/avb_app_board_config.h :
Code: Select all
#define AVB_AUDIO_TILE 0
//...
#define PORT_MCLK on tile[AVB_AUDIO_TILE]:XS1_PORT_1E
#define PORT_SCLK on tile[AVB_AUDIO_TILE]:XS1_PORT_1K
#define PORT_LRCLK on tile[AVB_AUDIO_TILE]:XS1_PORT_1I
#define PORT_SDATA_OUT {on tile[AVB_AUDIO_TILE]:XS1_PORT_1O,on tile[AVB_AUDIO_TILE]:XS1_PORT_1H}
#define PORT_SDATA_IN {on tile[AVB_AUDIO_TILE]:XS1_PORT_1J,on tile[AVB_AUDIO_TILE]:XS1_PORT_1L}
Code: Select all
From the L2/L16 datasheet:
on tile[0]:XS1_PORT_1E ---> X0D12
on tile[0]:XS1_PORT_1K ---> X0D34
on tile[0]:XS1_PORT_1I ---> X0D24
on tile[0]:XS1_PORT_1O ---> X0D38
on tile[0]:XS1_PORT_1H --->X0D23
on tile[0]:XS1_PORT_1J ---> X0D25
on tile[0]:XS1_PORT_1L ---> X0D35
Code: Select all
And according to the slicekit and audio slice schematics, the signals are mapped this way, with audio slice on triangle slot:
X0D12 ---> MCLK_XCORE
X0D34 ---> ADC_DATA0
X0D24 ---> LRCLK
X0D38 ---> NC
X0D23 ---> DAC_DATA1
X0D25 ---> MIDI_IN
X0D35 ---> ADC_DATA1
Code: Select all
So in the end we have:
PORT_MCLK ---> MCLK_XCORE
PORT_SCLK ---> ADC_DATA0
PORT_LRCLK ---> LRCLK
PORT_SDATA_OUT ---> {NC, DAC_DATA1}
PORT_SDATA_IN--->{MIDI_IN, ADC_DATA1}
-
- XCore Expert
- Posts: 589
- Joined: Wed Feb 29, 2012 10:03 am
You might be able to compile this without any issues but it might not work without the cs2100 PLL on the Audio slice.pasau wrote: if i understand correctly, you mean the XA-SK-AUDIO on which you add the cs2100 PLL right?
Nonetheless, the audio slice's codecs have the I2S interface (e.g i can run some I2S apps on it no prob) and the AVB design has the module_AVB_audio which is basically connecting the I2S and media fifos interfaces together. So im tempted to believe that you don't need to change the PLL to cs2100 to run AVB, but instead change the I2S to media fifos algorithm and port mapping. Can someone confirm this for me please?
-
- Experienced Member
- Posts: 77
- Joined: Fri Dec 06, 2013 7:05 pm
Wow i just realize you were right about the XA-SK-AUDIO-PLL, it is actually the version 1v0 of the audio slice, but the version 1v1 has not populated the footprint for the cs2100. It is almost identical but has some new features like midi connectors. Do you know where i can still buy the audio slice 1v0 with the cs2100 on it?
I realized the PLL version was the 1v0 version when i checked a picture on this link:
https://github.com/xcore/sw_avb_dc/blob ... kstart.rst
I realized the PLL version was the 1v0 version when i checked a picture on this link:
https://github.com/xcore/sw_avb_dc/blob ... kstart.rst
-
- XCore Expert
- Posts: 589
- Joined: Wed Feb 29, 2012 10:03 am
Don't get confused with 1V0 and 1V1 versions of Audio slice. The latest version of XA-SK-AUDIO slice is 1V1 and XA-SK-AUDIO-PLL is 1V0 version. Both the slices are different. The Audio PLL (XA-SK-AUDIO-PLL) slice is not yet available for the customers now where as the XA-SK-AUDIO slice is available now. To run AVB on sliceKIT-L16 you need XA-SK-AUDIO-PLL slice.pasau wrote:Wow i just realize you were right about the XA-SK-AUDIO-PLL, it is actually the version 1v0 of the audio slice, but the version 1v1 has not populated the footprint for the cs2100. It is almost identical but has some new features like midi connectors. Do you know where i can still buy the audio slice 1v0 with the cs2100 on it?
I realized the PLL version was the 1v0 version when i checked a picture on this link:
https://github.com/xcore/sw_avb_dc/blob ... kstart.rst
Sethu.