I want to select a DSP chip which I can use for some ECG/EMG signal processing. I am looking for an evaluation kit. The input signals are already in digital format (taken from phsionet.org). I am also looking for the following constraints:

  1. Linux OS (I intend to do multi-threading / multiprocessing)
  2. A gcc/g++ compiler for that DSP architecture
  3. External connectivity using Ethernet
  4. SD card storage so that I can store data in it

I think a DSP with ARM architecture might suit my needs best. Any help or guidance would be greatly appreciated.


  • \$\begingroup\$ Why do you need a DSP if the signals are already on a computer? \$\endgroup\$
    – endolith
    Aug 5, 2011 at 14:07
  • 1
    \$\begingroup\$ If you contemplate a future embedded implementation, one question to ask yourself fairly early is if fixed-point computation can be a reasonable fit to the data, or if you really would be happier with floating point. Both are available in both embedded and desktop solutions, but it's a pain to translate between the two styles of computation. For example, the blackfin chips (a bit dated now) can both run linux and do DSP ops - but that's 16 bit fixed point DSP, which isn't a great fit for all types of data. \$\endgroup\$ Aug 5, 2011 at 15:43
  • \$\begingroup\$ @endolith: I am looking for an embedded application, possibly a portable one. But I am not concentrating much on power as of now but more on the algorithms and implementation. Hence, I did not mention power constraint in my question. \$\endgroup\$
    – Neel Mehta
    Aug 6, 2011 at 7:40
  • \$\begingroup\$ @Chris: I am not sure as to whether I will require floating point or not but I think fixed point should suffice, and even 8-bit too. I am looking at a way to reduce my cost too :-) \$\endgroup\$
    – Neel Mehta
    Aug 6, 2011 at 9:17

1 Answer 1


It sounds like you don't need a DSP chip at all. Since this data is already measured and available on the net in digital form, you don't need a dedicated embedded system according to your requirements.

So the answer is: Any PC or laptop. These have very good math capabilities that are probably better than most small DSPs, even though they don't specifically have DSP hardware. You can certainly run Linux on one, the gcc compilers are available, ethernet connectivity is built in, and if it doesn't come with a SD card slot you easily add a external card reader that does.

  • 2
    \$\begingroup\$ A "DSP" chip is just a size/power/price optimization for implementing certain types of processing. I would agree that if the data is already available online, it may make sense to prototype the algorithms with a PC. Where it makes sense to ultimately deploy them depends on the economics of the deployment (note recent moves towards using mass numbers of "embedded" chips in data centers) - and if the data online is the real data or only test data. \$\endgroup\$ Aug 5, 2011 at 15:39
  • \$\begingroup\$ @Olin: Thanks for your reply, but I am looking for a portable application in future. So, I am deploying my algorithms both on FPGA and DSP. Currently, I am concentrating on DSP. \$\endgroup\$
    – Neel Mehta
    Aug 6, 2011 at 7:42
  • \$\begingroup\$ @Chris: I agree with you in the sense that I will definitely test out the algorithms on the PC first. But later on, I will implmenet the same algorithm on DSP. \$\endgroup\$
    – Neel Mehta
    Aug 6, 2011 at 7:44
  • 1
    \$\begingroup\$ @Neel Mehta - well, get it working on a PC, and then pick the embedded platform once you have a better idea of the computation to be performed. Particularly if you are thinking portable, an off-the-shelf general purpose device (small android tablet?) may be more cost effective than building something around a DSP, and once you have the software you can build it for such a platform to test performance. \$\endgroup\$ Aug 6, 2011 at 11:52

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.