Forums

DSP Platform Suggestion

Started by mans1992 January 22, 2014
On Tue, 28 Jan 2014 03:30:29 -0800, Rick Lyons
<R.Lyons@_BOGUS_ieee.org> wrote:

>On Wed, 22 Jan 2014 16:05:58 GMT, eric.jacobsen@ieee.org (Eric >Jacobsen) wrote: > >>On Wed, 22 Jan 2014 09:30:10 -0600, "mans1992" <99308@dsprelated> >>wrote: >> >>>Hi >>> >>>Many people have probably asked this type of question, but I was wondering >>>if anyone with good practical knowledge of DSP would help me choose an >>>appropriate platform for real-time DSP. >>> >>>My project is very simple. I receive an RF signal from a radar. This >>>received signal along with the transmitted signal are put into a mixer, >>>which as we know gives two separate signals with frequencies f1+f2, and >>>f1-f2 (where f1 is the freq of the transmitted signal and f2 is the freq >>>of the received signal). I filter out f1+f2. The goal is to use DSP to find >>>the value of f1-f2 which I know ahead of time will be less than 20kHz. >>> >>>Since the signal with f1-f2 will be a sinusoid, I am thinking taking the FT >>>using FFT will display a tone at the desired frequency. Is this that >>>simple? or am I underestimating this? >> >>You can do that and since you've indicated the input is sinusoidal you >>should be able to get a frequency estimate with reasonable accuracy >>(of much less than a DFT bin width using interpolation techniques). >> >>>I am currently thinking of using the Arduino as my platform. Is it a good >>>idea? Is there a platform that is easy to learn and is better? From >>>personal experience TI microcontrollers seem to have a steep learning >>>curve. I am new to real time DSP and need something as simple as possible. >>> >>>Thanks, >> >>Arduinos don't have a ton of processing power, but if you can tolerate >>some latency an Arduino can do the job. They do have the advantage >>of being easy to use, but are limited and are getting a little long in >>the tooth these days compared to newer platforms. >> >>One of the popular "newer platforms" are the Beagleboards and their >>derivatives, which are much more suitable to your processing task and >>are often even cheaper than Arduinos. They are a little harder to >>program, though. >> >>There's also Raspberry pi and similar platforms, for which you can >>leverage all the Unix tools and will be considerably more powerful >>than the typical Arduino. And they're cheap. Theyr'e maybe a little >>harder to get started on than an Arduino, but the wide variety of >>available tools suggests that you may ultimately be able to make it >>pretty easy to use. >> >>For every platform there will be a tradeoff on processing power which >>will affect the latency of your processing. >> >> >>Eric Jacobsen > >Hi Eric, > A year ago I wanted to implement a 512-point FFT using >the Arduino Uno platform. The only Arduino FFT software >I could find on the Internet, that I was able to get working, >was a 16-point FFT performed on 8-bit samples. I found >Arduino code for a 256-point FFT (on 16-bit samples) on >the Internet, but I was never able to get that code working. > >[-Rick-]
I don't have much personal experience with it, but since the Arduino compiler is essentially a C compiler I keep getting told that C can be integrated pretty easily. Was there a barrier to getting a generic FFT in C to work? Eric Jacobsen Anchor Hill Communications http://www.anchorhill.com
Den tirsdag den 28. januar 2014 18.34.51 UTC+1 skrev Eric Jacobsen:
> On Tue, 28 Jan 2014 03:30:29 -0800, Rick Lyons > > <R.Lyons@_BOGUS_ieee.org> wrote: > > > > >On Wed, 22 Jan 2014 16:05:58 GMT, eric.jacobsen@ieee.org (Eric > > >Jacobsen) wrote: > > > > > >>On Wed, 22 Jan 2014 09:30:10 -0600, "mans1992" <99308@dsprelated> > > >>wrote: > > >> > > >>>Hi > > >>> > > >>>Many people have probably asked this type of question, but I was wondering > > >>>if anyone with good practical knowledge of DSP would help me choose an > > >>>appropriate platform for real-time DSP. > > >>> > > >>>My project is very simple. I receive an RF signal from a radar. This > > >>>received signal along with the transmitted signal are put into a mixer, > > >>>which as we know gives two separate signals with frequencies f1+f2, and > > >>>f1-f2 (where f1 is the freq of the transmitted signal and f2 is the freq > > >>>of the received signal). I filter out f1+f2. The goal is to use DSP to find > > >>>the value of f1-f2 which I know ahead of time will be less than 20kHz. > > >>> > > >>>Since the signal with f1-f2 will be a sinusoid, I am thinking taking the FT > > >>>using FFT will display a tone at the desired frequency. Is this that > > >>>simple? or am I underestimating this? > > >> > > >>You can do that and since you've indicated the input is sinusoidal you > > >>should be able to get a frequency estimate with reasonable accuracy > > >>(of much less than a DFT bin width using interpolation techniques). > > >> > > >>>I am currently thinking of using the Arduino as my platform. Is it a good > > >>>idea? Is there a platform that is easy to learn and is better? From > > >>>personal experience TI microcontrollers seem to have a steep learning > > >>>curve. I am new to real time DSP and need something as simple as possible. > > >>> > > >>>Thanks, > > >> > > >>Arduinos don't have a ton of processing power, but if you can tolerate > > >>some latency an Arduino can do the job. They do have the advantage > > >>of being easy to use, but are limited and are getting a little long in > > >>the tooth these days compared to newer platforms. > > >> > > >>One of the popular "newer platforms" are the Beagleboards and their > > >>derivatives, which are much more suitable to your processing task and > > >>are often even cheaper than Arduinos. They are a little harder to > > >>program, though. > > >> > > >>There's also Raspberry pi and similar platforms, for which you can > > >>leverage all the Unix tools and will be considerably more powerful > > >>than the typical Arduino. And they're cheap. Theyr'e maybe a little > > >>harder to get started on than an Arduino, but the wide variety of > > >>available tools suggests that you may ultimately be able to make it > > >>pretty easy to use. > > >> > > >>For every platform there will be a tradeoff on processing power which > > >>will affect the latency of your processing. > > >> > > >> > > >>Eric Jacobsen > > > > > >Hi Eric, > > > A year ago I wanted to implement a 512-point FFT using > > >the Arduino Uno platform. The only Arduino FFT software > > >I could find on the Internet, that I was able to get working, > > >was a 16-point FFT performed on 8-bit samples. I found > > >Arduino code for a 256-point FFT (on 16-bit samples) on > > >the Internet, but I was never able to get that code working. > > > > > >[-Rick-] > > > > I don't have much personal experience with it, but since the Arduino > > compiler is essentially a C compiler I keep getting told that C can be > > integrated pretty easily. Was there a barrier to getting a generic > > FFT in C to work? >
you could just skip the Arduino stuff and use the hardware directly -Lasse
On 28/01/14 17:34, Eric Jacobsen wrote:
> I don't have much personal experience with it, but since the Arduino > compiler is essentially a C compiler I keep getting told that C can be > integrated pretty easily. Was there a barrier to getting a generic > FFT in C to work?
I couldn't be bothered to use the Arduino firmware, plus I probably couldn't have reduced the mean current PSU current in my application to around 50uA. So I simply programmed bare silicon directly in C, and used an Atmel AVR Dragon to program and debug my board. The only niggle was that I couldn't be bothered to faff around getting the Linux development environments to work -- so I was reduced to firing up WinXP and using the Atmel IDE.