Author Topic: Lowcost DSP for beginner  (Read 37262 times)

0 Members and 1 Guest are viewing this topic.

Offline snoopy

  • Frequent Contributor
  • **
  • Posts: 767
  • Country: au
    • Analog Precision
Re: Lowcost DSP for beginner
« Reply #25 on: May 19, 2013, 02:47:58 am »
That is hardly an argument. Nowadays every microcontroller has multifuction I/O pins which need to be setup. You have to invest time to learn how it works but if you read the manual it is pretty simple. In NXP's user manuals each chapter describing a peripheral starts with describing how to setup the clock, power management and I/O pins and provides links to the appropriate registers settings. I've seen far worse.

I believe the peripherals don't exist unless you configure them in the SGPIO. Whilst it adds more flexibility to the hardware it also adds more complexity :(

Quote
Serial GPIO (SGPIO)
Combining general-purpose I/O with a timer/shift register, our SGPIO can be used to create or
capture multiple real-time serial data streams. There’s no need for code loops that manipulate
GPIO in real time, or CPU-intensive “bit banging”. For added convenience, SGPIO can also be
configured as extra serial interfaces (UART, I2S, I2C, etc.).
 

Offline TheDirty

  • Frequent Contributor
  • **
  • Posts: 440
  • Country: ca
Re: Lowcost DSP for beginner
« Reply #26 on: May 19, 2013, 03:03:34 am »
I believe the peripherals don't exist unless you configure them in the SGPIO. Whilst it adds more flexibility to the hardware it also adds more complexity :(

Quote
Serial GPIO (SGPIO)
Combining general-purpose I/O with a timer/shift register, our SGPIO can be used to create or
capture multiple real-time serial data streams. There’s no need for code loops that manipulate
GPIO in real time, or CPU-intensive “bit banging”. For added convenience, SGPIO can also be
configured as extra serial interfaces (UART, I2S, I2C, etc.).

That's the case with the 4300 series.  They 4000 series has standard already assigned multifunction IO.

The new M800 has the Switch Matrix functionality as well to assign peripherals to pins.  I'm really looking forward to it.  Wish they would get the chips out to retailers.
Mark Higgins
 

Offline Feynman

  • Regular Contributor
  • *
  • Posts: 192
  • Country: ch
Re: Lowcost DSP for beginner
« Reply #27 on: May 19, 2013, 09:48:31 pm »
The line is blurring between today's very capable MCUs and what is a true DSP.

That's true. But you can devide controllers in three categories: Pure DSPs (e.g. Analog's SHARC), pure Micro Controllers (PIC, Atmel, ...) and "Signal Controllers" that combine both worlds (e.g. dsPIC, TI's C2000, Analog's Blackfin, ...).
 

Offline nctnico

  • Super Contributor
  • ***
  • Posts: 26755
  • Country: nl
    • NCT Developments
Re: Lowcost DSP for beginner
« Reply #28 on: May 19, 2013, 10:38:10 pm »
The whole DSP versus microcontroller discussion assumes that a microcontroller isn't suitable for digital signal processing at all. Ofcourse such an assumption is total and utter crap. You can use any microcontroller for signal processing as long as it has enough processing power for the job at hand.
There are small lies, big lies and then there is what is on the screen of your oscilloscope.
 

Offline westfw

  • Super Contributor
  • ***
  • Posts: 4196
  • Country: us
Re: Lowcost DSP for beginner
« Reply #29 on: May 19, 2013, 11:35:02 pm »
So, from a PROGRAMMING perspective, are the features you get from something like the ARM CM4 DSP extensions (MAC, saturated math, etc) pretty much the same features that you'd get on a "purer" DSP architecture?  (neglecting that the load/store architecture of isn't ideal for dealing with big arrays of data in RAM...)

 

Offline nctnico

  • Super Contributor
  • ***
  • Posts: 26755
  • Country: nl
    • NCT Developments
Re: Lowcost DSP for beginner
« Reply #30 on: May 20, 2013, 01:09:04 am »
The big question is: do you really need those features? Does it pay off to indulge yourself in a proprietary solution with a limited scope?
Besides that the ARM SIMD extensions offer the same features a typical DSP does. When people think about signal processing some immediately jump to the conclusion they need a DSP. Why is that? Is a microcontroller really too slow? Can't a microcontroller multiply or do other calculations? Its like saying 'I need a red car to go to the shopping mall'. It doesn't make any sense. What is wrong with a blue, yellow, white or black car?
There are small lies, big lies and then there is what is on the screen of your oscilloscope.
 

Offline thekhakinator

  • Contributor
  • Posts: 10
Re: Lowcost DSP for beginner
« Reply #31 on: May 20, 2013, 05:13:20 am »
I'd avoid the dsPIC, at least the dsPIC33FJ64GP802/804. The sheer number of threads I've read concerning the noise of the DAC and other issues with that chip, all with no solutions... and my own personal experience. It's a shame because it's very easy to work with, C on the dsPIC is really great.
 

Offline glatochaTopic starter

  • Regular Contributor
  • *
  • Posts: 114
Re: Lowcost DSP for beginner
« Reply #32 on: May 20, 2013, 06:33:35 am »
Can you maybe link to some article about this DAC issue?
Is the DAC the only of your concerns? I am rather focusing on the ADC functionality.
 

Offline poorchava

  • Super Contributor
  • ***
  • Posts: 1672
  • Country: pl
  • Troll Cave Electronics!
Re: Lowcost DSP for beginner
« Reply #33 on: May 20, 2013, 09:17:36 am »
dsPIC33Fs are actually quite nice, and offer quite a lot of processing power (but less than any given Cortex-M4). Unfortunatelly they suffer from all sorts of "Microchip-nesses" such as shitloads of silicon bugs, shitty compiler and bad libraries. And on top of that they are in the same price range as ARM stuff.
I love the smell of FR4 in the morning!
 

Offline thekhakinator

  • Contributor
  • Posts: 10
Re: Lowcost DSP for beginner
« Reply #34 on: May 21, 2013, 04:04:07 am »
No articles as such but a forum post with links to many others.

http://www.microchip.com/forums/tm.aspx?high=&m=479331&mpage=1#482151

In that thread is a user saying the DAC is usable. Everyone else has just thrown their arms in the air and given up. :/

The ADC, however, has been nice enough in my experience. I initially considered it noisy but that turned out to be the DAC, not ADC.
 

Offline poorchava

  • Super Contributor
  • ***
  • Posts: 1672
  • Country: pl
  • Troll Cave Electronics!
Re: Lowcost DSP for beginner
« Reply #35 on: May 21, 2013, 06:47:45 am »
Good that dspic33's have better ADC than pic 18... 13LSB of error wasn't that uncommon (as I have found out the painful way) which made it pretty useless...
I love the smell of FR4 in the morning!
 

Offline glatochaTopic starter

  • Regular Contributor
  • *
  • Posts: 114
Re: Lowcost DSP for beginner
« Reply #36 on: May 21, 2013, 06:53:15 am »
what you mean 13lsb error? They have only 12 max I think

I am fighting now with the ADC, measuring battery voltage and having 2.4-2.9V.
Not sure what can be a problem of it. I need to check other voltage sources.
 

Offline nuhamind2

  • Regular Contributor
  • *
  • Posts: 138
  • Country: id
Re: Lowcost DSP for beginner
« Reply #37 on: May 21, 2013, 11:42:41 am »
what you mean 13lsb error? They have only 12 max I think

I am fighting now with the ADC, measuring battery voltage and having 2.4-2.9V.
Not sure what can be a problem of it. I need to check other voltage sources.
12 bit ADC mean 4096 count.13 LSB mean your reading might have error by +13 count.
If i understand correctly
 

Offline nctnico

  • Super Contributor
  • ***
  • Posts: 26755
  • Country: nl
    • NCT Developments
Re: Lowcost DSP for beginner
« Reply #38 on: May 21, 2013, 12:28:21 pm »
That is right. The error is >0.3%. From the 12 bits you have only 8.3 usefull bits. Microchip really sucks at analog stuff. Their ADCs and DACs are really cheap but the accuracy is far worse than competing devices from Analog or TI/National.
There are small lies, big lies and then there is what is on the screen of your oscilloscope.
 

Offline glatochaTopic starter

  • Regular Contributor
  • *
  • Posts: 114
Re: Lowcost DSP for beginner
« Reply #39 on: May 21, 2013, 01:15:47 pm »
wish I could have my front-end so good that 0.3% will be an issue for me :)
 

Offline thekhakinator

  • Contributor
  • Posts: 10
Re: Lowcost DSP for beginner
« Reply #40 on: May 22, 2013, 06:12:40 am »
wish I could have my front-end so good that 0.3% will be an issue for me :)
Haha, I hear that mate.

Yeah, in my very limited experience, I am not at all impressed by Microchip's analog parts...
 

Offline gregariz

  • Frequent Contributor
  • **
  • Posts: 545
  • Country: us
Re: Lowcost DSP for beginner
« Reply #41 on: June 04, 2013, 08:17:05 pm »
dsPIC33Fs are actually quite nice, and offer quite a lot of processing power (but less than any given Cortex-M4). Unfortunatelly they suffer from all sorts of "Microchip-nesses" such as shitloads of silicon bugs, shitty compiler and bad libraries. And on top of that they are in the same price range as ARM stuff.

I agree.... we need to remember that the dsPIC is quite fine for lower end applications such as signal conditioning and basic low bandwidth software radio's. Its quite capable for example of taking a 6KBPS sample, demoding it and filtering it using an fft. Of course its a relatively small fft. So thats the kind of app you should be thinking about for them. They are not complete toys and do integrate things like I2S for codec comms which some of the plain vanilla CPU's dont. I generally view them as better than an NXP LPC ARM7.

On the other hand if you want to crunch 50MBPS data you wont get by with a dsPIC, you'll need something like a TMS320C.

You can do similar things on an ARM of course ie ARM9/11 and above. This is what we currently do at my work. The only caveat I would add though is that while general purpose processors can often provide decent CPU performance we've found we need some fairly high current consumptions to get the performance we need because they are working hard (generally clocked alot higher for starters). This will be a real issue in future as customers complain about battery life.

The other alternative of course is to implement an algorithm in a FPGA using VHDL or Verilog. This is something we used to do as well but again, power is an issue. The Xilinx part we used was so hot it was untouchable. (some of the ARMS (OMAPS) we've used were similiar)

With regard to compilers, my personal opinion is that none of the chip makers produce decent compilers. I use a third part compiler for the the dSPIC. MPLAB works but IMO just takes too long to get things up and going, has poor documentation and support. I use CCS for that chip. Similar story with the ARM. Of course for the FPGA's there are no real 3rd party alternatives for development tools so you are kind of stuck (and screwed) with regard to environments. I generally prefer to avoid FPGA's for this reason, plus cost and power concerns. Compilers are one thing I will fairly happily shell out dollars to buy - and often play a part in the final choice of device.

Edit: I'll add one last thing - maybe a plus for an arm. I'm currently working on a radio that will use linux as an OS. As soon as you want something like that (ie connected to the internet, running servers and can be reconfigured) the ARM is the only way to go.
« Last Edit: June 04, 2013, 08:27:01 pm by gregariz »
 

Offline legacy

  • Super Contributor
  • ***
  • !
  • Posts: 4415
  • Country: ch
Re: Lowcost DSP for beginner
« Reply #42 on: June 04, 2013, 11:52:15 pm »
the problem of dsPIC3* is ... you have to deal with "fractional" number
fractional is a sort of fixed point format, i do not like it very much.

 

Offline embeddedbob

  • Contributor
  • Posts: 20
  • Country: gb
Re: Lowcost DSP for beginner
« Reply #43 on: June 05, 2013, 08:39:16 am »
IMHO: Theres DSP, then theres implementing DSP algorithms. The former is mathematical manipulation of samples of a signal, the latter is knowing the language and architecture of the hardware. So you can implement DSP algorithms on a PIC16 if it can meet the realtime demands/rates.

dsPIC are marketed as digital signal controllers and are capable of doing a fair amount. Im using one on an automotive project because I cant find a M3 Cortex based processor with extended temperature (-40 to 150) so they have their uses, like most MCUs.

TBH, if you have many channels, Id use a cheap FPGA (spartan 3/6) and make sure theres higher capacity devices in the same config/footprint. This is how most multi-channel measurement systems are implemented. ADC and DACs cost though so the solution will be more expensive than say an ST cortex M4. I havent read the full thread (hence the edit ;) ) but if you know the number of channels and rates, that will normally push you in a direction (E.g. AD-DA + FPGA, AD-DA + CPLD + MCU, Onboard AD-DA MCU).
« Last Edit: June 05, 2013, 08:44:07 am by embeddedbob »
 

Offline legacy

  • Super Contributor
  • ***
  • !
  • Posts: 4415
  • Country: ch
Re: Lowcost DSP for beginner
« Reply #44 on: June 07, 2013, 08:13:17 am »
Anybody using Blackfin BF537 DSP ?
 

Offline thekhakinator

  • Contributor
  • Posts: 10
Re: Lowcost DSP for beginner
« Reply #45 on: June 09, 2013, 03:07:31 am »
In fairness there is reason why the dsPIC I was complaining about has issues - it's SNR is 61dB for a 16 bit stereo DAC? XD
http://www.grav-corp.com/?p=87
 

Online NiHaoMike

  • Super Contributor
  • ***
  • Posts: 8973
  • Country: us
  • "Don't turn it on - Take it apart!"
    • Facebook Page
Re: Lowcost DSP for beginner
« Reply #46 on: June 11, 2013, 12:52:46 am »
There are a lot of uses for low definition audio.
Cryptocurrency has taught me to love math and at the same time be baffled by it.

Cryptocurrency lesson 0: Altcoins and Bitcoin are not the same thing.
 

Offline thekhakinator

  • Contributor
  • Posts: 10
Re: Lowcost DSP for beginner
« Reply #47 on: June 15, 2013, 05:27:46 am »
There are a lot of uses for low definition audio.
Granted, just amusing they'd use a 16-bit stereo DAC with such high noise.
 

Offline nctnico

  • Super Contributor
  • ***
  • Posts: 26755
  • Country: nl
    • NCT Developments
Re: Lowcost DSP for beginner
« Reply #48 on: June 15, 2013, 02:40:41 pm »
There are a lot of uses for low definition audio.
61dB doesn't even cut it for a digital telephone line which has 84dB dynamic range. So what is low definition audio?
There are small lies, big lies and then there is what is on the screen of your oscilloscope.
 

Offline snoopy

  • Frequent Contributor
  • **
  • Posts: 767
  • Country: au
    • Analog Precision
Re: Lowcost DSP for beginner
« Reply #49 on: June 16, 2013, 01:51:15 am »
Anybody using Blackfin BF537 DSP ?

I am using a SHARC dsp but have looked at the Blackfin as well. SHARC has floating point DSP capabilities and the Blackfin doesn't. I have a Blackfin BF533 EZlite board and it is a good starting point because you don't need the expensive AD ICE to use it. There are eval boards for the BF537 as well. AD tools and support hardware are expensive but they WORK WELL and worth it in the end !! Also their support community and engineering forum is excellent and even if you have a problem of your own making you can still bounce ideas off them and nut it out.

At the end of the day it's not only the silicon that counts but the support for it that counts just as much !!

regards
dave
 


Share me

Digg  Facebook  SlashDot  Delicious  Technorati  Twitter  Google  Yahoo
Smf