Advantages of Xmos devices compared to FPGA or DSP ?

Technical discussions around xCORE processors (e.g. xcore-200 & xcore.ai).
HansWerner
Member
Posts: 8
Joined: Mon Jun 13, 2011 9:51 pm

Advantages of Xmos devices compared to FPGA or DSP ?

Post by HansWerner »

What are the advantages of Xmos devices compared to FPGAs or DSPs ?
As an example:
I saw the USB audio reference design.
What if I want to use a board for the implementation of different voice compression algorithms like CELP, MELP ?
Normally I would take a DSP or a complete DSP board for that.
Would a Xmos device the better solution to implement things like FFT, Reed-Solomon-Coder, A-law,u-law etc. ?
The board shall take an audio signal from a microfone or a SDcard process it and send it to a loudspeaker or another SDcard in realtime.
Im sorry if a asked this question already before.
I don't know where I can look for my own questions in the forum.


User avatar
lilltroll
XCore Expert
Posts: 956
Joined: Fri Dec 11, 2009 3:53 am
Location: Sweden, Eskilstuna

Post by lilltroll »

You can connect most peperial directly to the XMOS pins, but not DDR2/DDR3 memory due to the voltage and data-acess on each flank. If you need to do large FFTs you need large amount of RAM.
It is possible to connect both SRAM and 3.3V DRAM directly to XMOS chips, but it uses many of the I/O pins.

If fixed point math in recursive loops scares you, maybe a floating point DSP is a better choice.
FIR filters and lower order (cascade) IIR filters works fine on XMOS.
IEEE floating points works with software emulation but is slow (In the order of 100 instructions per FLOP).

You typically have many MIPS /$ so speech coding beyond ADPCM should be a nice fit.

Real time works great on XMOS, you can run things without ending up in any interupt priority problems, generating glitches in the audio stream.
You do not need an OS to run parrallell tasks or to interface peperials.
Probably not the most confused programmer anymore on the XCORE forum.
HansWerner
Member
Posts: 8
Joined: Mon Jun 13, 2011 9:51 pm

Post by HansWerner »

Ok, thanks for your help.
I think a DSP board will be the better choice.