News:

SMF for DIYStompboxes.com!

Main Menu

Analog Devices DSP?

Started by Primus, February 19, 2006, 09:24:18 PM

Previous topic - Next topic

Primus

Some cats are working on home made DSP systems for pedals. You used to be able to get analog devices ADSP-2181 devices for less than $100 but now they are getting expensive. Does anyone have any ideas for a cheaper home DSP project?

Sir H C

What about TI?  They and AD are the two big DSP companies.

Peter Snowberg

The 2181 is an older part these days and the data bus is only 16 bits wide which is not good for audio. The price is also pretty high for those chips.

AD offered a eval kit called the EZkit Lite which several used as a DSP platform for audio hacking, but they're phasing that $250 kit out. The ADSP-2181 shows at roughly $30 (100 qty.) while the DSP56300 parts eat the OLD AD parts for breakfast and can be had for less than $5 (1000 qty.). The DSP56K parts are pretty much king of the hill for pro audio.

For DSP, you ideally want something at least 24 bits wide in the data path with a wider accumulator like 48 or 56 bits..

Three companies seem to dominate the DSP world these days. TI, AD, and Freescale/Motorola are the players I see most often, but there are smaller companies that make more special use chips that are also pretty cool. Wavefront Semiconductor is one of those. Just about every DSP maker also puts out what is called an "eval" kit (short for evaluation). These boards are usually everything you need for audio DSP hacking except for a true bypass stompswitch and a little high impedance buffering, but they are usually a couple hundred dollars.

I did a boat-load of work on a design last year based on two to four Wavefront chips, but several problems more or less ended that particular path. The wavefront chips are cool for everything EXCEPT modulation effects. They just don't have good LFO wave shape capability. I still have DIY DSP stuff happening, but I don't want to comment further at the moment.  :icon_wink:

For cheaper project you have to keep in mind that cheaper will equal less capable. Think of a car. No matter how strong the motor is, you still need the frame, body, drive train, fuel tank, and interior to make a complete "thing". The rest of those parts cost money and DSP is no different. With a DSP system the CPU cost gets added to the CODEC, analog conditioning circuits, memory (if used), host microcontroller (if used), and power supply.

Wavefront Semiconductor has produced what seems to me to be the best DIY DSP chips so far. They are a little limited, but they still do amazing things. 8)

DaveTV did a project called the FemtoVerb a while back and others are starting to work with these parts.

Stay tuned for much development in the DSP arena this year. I think 2006 is finally going to be the year of the DIY DSP. 8) 8) 8) 

...but also remember that with this step we're up against the scale of economy that the electronics industry runs on so cheap is NOT going to be there for DIY DSP. You can buy a CD player for $25, but you sure can't build one for that. Same deal.
Eschew paradigm obfuscation

SeanCostello

Disclaimer: I work for Analog Devices.

As far as the 2181, this is a pretty old part. The newer versions, such as the 2186, are decent priced ($4.95), but you have to get to pretty high quantities.

For new audio designs, I would look at the Blackfin line of 16 bit DSPs. These are fairly cheap (starting at $4.95), 16 bit DSPs, that are REALLY fast. 600 MHz and up. They have dual cores for SIMD, but this is only useful if you are processing audio in 16 bits. For high quality audio, double precision (32 bits) is recommended. This is harder to program, but my team at ADI has done a lot of work in creating efficient double precision audio processing modules for the Blackfin, as well as SHARC.  At the price/speed breakpoint of the Blackfin, it is viable to program all audio in double precision.

The SHARC and Blackfin processors from ADI can also be programmed with VisualAudio, which is a MAX/MSP like tool for graphic construction of audio algorithms. You can wire together existing modules, or program your own custom modules in C and/or assembler. The VisualDSP++ compiler does a nice job of generating relatively efficient code from C, especially if you use the intrinsic operations for the Blackfin (which are directly translated into efficient assembly). The VisualAudio modules are also available as a stand-alone library for Blackfin. Plus, I am always coming out with newer modules for VisualAudio as part of my job. Many of them are designed for the AVR and automotive market, but since my heart is closer to the subject of this board, I am always trying to get some interesting effects modules in there.

Second disclaimer: The ADI development tools are not cheap. $500 for the development board, but the version of VisualDSP++ that comes with this can only access 1/4 of the onchip memory of any given DSP. For most applications, you will want to use the full version of VisualDSP++, which costs $4000.

The Motorola chips are a pretty old architecture at this point, but they continue to be used in audio products. The 56K line hasn't seen much new development in the last few years, so the popularity probably stems from familiarity with the processor, and existing code base, rather than raw power (or maybe Freescaler developer support is really good). Admittedly, the 24 bit architecture allows single precision fixed point to sound decent, and extended precision is also fairly simple thanks to the 56 bit accumulators.

The 56K development kit costs $1000, but the development software is free. The software pretty much requires you to learn Motorola assembler, though - I have heard that the C compiler was never all that hot.

Another option would be the SigmaDSP from Analog Devices. This has a great graphic interface (prettier than VisualAudio), the development kit including software is $500 last I checked, the chips are low cost in smaller quantities, and the latest chips have onboard ADC and DAC in a smaller pin count package, which would be appealing to DIY types. However, the DSP core itself is not super fast, and I don't know if you can actually program assembly code for the chip (you may be limited to pre-existing blocks).

I don't know much about the TI chips, or the cost of the development boards.

Sean Costello

Primus

Yeah, the really cool thing about that eval kit is that is used to be really cheap! I kind of wanted to use one of these parts for a senior project but since we have to fund it ourselves I don't see it happening. Maybe I could do the programming and get an EE friend to put together the board. The chips are cheap but the supporting suff is spendy.

danngreen

Sean, Peter, thanks for the info. At $500-$1000 minimum for a eval board, it seems DSP for DIY hobbyists is not quite here. However the door is open for small business, where a grand can be seen as an investment towards a product.. hmmm.......

Peter Snowberg

Thanks for the info Sean! 8)

I just love the idea of 600MHz DSPs. 8) With that kind of speed you have a really strong case for double precision. The 56K parts are based on a fairly static core that is now as old as the hills, but it gets the job done with a nice assembly language. I would guess the codebase is a major reason that the 56K line has market force, but capability has something to do with it too. Just enough to achieve high quality straight-forward designs in hardware and software, but not so much that the price is sky high.

The SigmaDSPs look REALLY cool with the one drawback of lack or buffer RAM for delays. They look like they're just the ticket for lots of modulation and EQ effects though.


Primus, you may want to consider using a PC sound card with an on-board DSP like the SoundBlaster Live. Google that one and you'll get lots. :D

The really heavy duty hardware is still expensive and eval kits are usually not made to be low cost since they're made to evaluate engineering options. Sometimes we get lucky and a company want to push products with the help of cheap eval boards. There are very often cheaper ways of getting the hardware end of things taken care of and things like GCC and free vendor offered tools make the software side accessible, but hyper-cool things like MAX/MSP and VisualDSP++ still require some serious coinage.


Dan, there are other options that make DSP more here, now, than it has been by a good bit in the past. (does that statement reek of the need for coffee or more sleep?)

It looks like you have the market assessed in much the same way I do.  :icon_idea:
Eschew paradigm obfuscation

SeanCostello

Quote from: Peter Snowberg on February 21, 2006, 12:56:26 PM
The 56K parts are based on a fairly static core that is now as old as the hills, but it gets the job done with a nice assembly language.

Yeah, I forgot to mention this. I haven't worked with 56K assembly language (yet...), but my coworkers have worked with it in the past, and said that the assembly language is fairly easy to work with, around the level of the SHARC.

Quote from: Peter Snowberg on February 21, 2006, 12:56:26 PM
The SigmaDSPs look REALLY cool with the one drawback of lack or buffer RAM for delays. They look like they're just the ticket for lots of modulation and EQ effects though.

I should ask and see if any of the future SigmaDSPs will have the ability to access external RAM. Of course, I wouldn't be able to tell you the answer. ;)  I know that there is a nice chorus design for the SigmaDSP, and they would be nice for envelope filters, phase shifters and the like.

Quote from: Peter Snowberg on February 21, 2006, 12:56:26 PM
There are very often cheaper ways of getting the hardware end of things taken care of and things like GCC and free vendor offered tools make the software side accessible, but hyper-cool things like MAX/MSP and VisualDSP++ still require some serious coinage.

Pd is similar to MAX/MSP, and is free. Supercollider (SC3) is free, and is VERY powerful. A bit of a steep learning curve, but I feel it is the most elegant of the computer music languages out there. $550 would get you a SC3 development kit - a Mac Mini and a cheap USB sound interface! I just bought one of the $600 Mac Minis, and it runs SC3 like a charm.

Sean Costello

SeanCostello

I mentioned this in another thread, but anyway:

http://blackfin.uclinux.org

Linux-based toolset, GCC compiler for Blackfin, layout files for development boards, links to cheaper development boards. This is definitely the most cost effective solution for developing for ADI chips.

Sean Costello