DIY DSP Engine

Status
This old topic is closed. If you want to reopen this topic, contact a moderator using the "Report Post" button.
By co-incidence, I was just trading emails with another aquaintance, and he referred to this - the Blackfin Ez-Kit:

http://www.analog.com/Analog_Root/productPage/productHome/0,2121,BF533%2DHARDWARE,00.html

At $400 including a minimal but functional dev environment, it looks pretty nice, and within reach. The blackfin has a bucketload of cpu, and while I haven't looked at the I/O capabilities in detail, they should be adequate - looks like either 4 or 8 I2S output pairs depending on whether 1 or 2 ports are exposed, and probably 4 pairs on input. If the expansion connector topology is good, this might make a nice platform to target for modular I2S based I/O boards.....
 
tiroth said:


The purpose of the dev boards is to allow developers to work on the code from a known good platform, without having to design and build hardware. While there are some reference platforms, most of these devices are never intended to be in an end-product. You write your code on the $2500 module and then build 10,000 boards with $25 chips on them.

If you are paying your engineers $50+/hour (all costs considered) the dev board pays for itself if you save a week's time. In all likelihood, that week is worth far more than just their time because it is a week shaved off of your production cycle.

The reference platforms are generally cheaper, but usually they are only interested in selling OEM quantities.

Check out the MDS site again: the DAE-5 and DAE-7 *are* intended as OEM products, not as templates or dev boards.

The TI board makes a lot of sense for DIY use since they sell it for essentially cost as a seeding effort to get their DSPs into the design space, as you mention above.

Shaving a week off the production cycle is illusory since hardware design can proceed in parallel with software development on a dev system.


Cheers,
Francois.
 
DSP Platform

Regarding AD kits EZ-Lite, ADSP 21065 would be OK (it is used in DCX 2496 Behringer and 21065 is not BGA),but I`m not sure about price of VisualDSP++,I have demo version and it looks very fine and even better in simulation options than TI`s Studio.But 6711 is more powerfull than 21065. Today I checked TI`s board extenssion capabilities and they are very good.4 A/D converters could be connected without much interface logic.

My idea is to do filter codes (not a problem for me,even do a "tube effect" filter : ) and codes for front panel display,and after that do small series complete product (all on TI proc and AD D/A).

And my board is 6711 not 6713,sorry for mistake...
 
The TAS30xx can only do pretty basic stuff. The TAS3013 is 540 mips and can do EQ on 3 channels and is programmed via I2C on startup. I'm using it as a starting project. 2 channel digital biamp setup (TDAA) with a subwoofer channel. It's either gonna end in tears or a huge smile :confused:

Are there any ways to DIY a Jtag adapter so we can brew our own boards?
TI have a few non BGA DSP's that I wouldn't mind experimenting with for use with a high speed ADC in computing FFT plots.

Regards
Matt
 
I noticed you guys are talking about the TI 6713. A similar part from Analog Devices is the ADSP-21262. The 21262 is a very good DSP for audio applications.

We manufacture boards using this part or you can buy an ADI EZ-Kit. You might check out our web site for details.

One of the advantages of the ADSP-21262 from a DIY point of view is that it is available in QFP.

Al Clark
Danville Signal Processing, Inc.
 
I went and ordered a TMS320VC5416 for use with TI's 125msps ADC to do FFT's and oscilloscope functions.
What I want to do is create a homemade eval board that includes a ADC, FIFO and clock. The other GPIO's and serial ports would be connected to header so that daughters boards could be made and tested using the same board and alow interfacing to an LCD, DAC's etc.
The only problem is I'm having trouble understanding the memory architecture because I'm coming from a microcontroller background. The TMS320VC5416 comes with a bootloader than can boot from either an EEPROM, the HPI or the serial port. The best option I can see would be to use the EEPROM because it would allows for standalone operation but is there the possibility of using a computer serial port to emulate the serial EEPROM for testing programs?
Or would a on board connector for programming the eeprom be a better option? I could even go as far to surgest a microcontroller to supervise the uploading of programs to the eeprom and controlling boot mode via the required pins.
The internal memery maps are also quite confusing.
I'm guessing that the RAM is used to store the program after retrieving it from the source.... but which one?
There's both DARAM and SARAM on top of the external memory.
Say if you had 512k of external memory, can this be used as both data and program memory?

Many Thanks
Matt
 
danville,

I had seen your company's products before and was intrigued. At $250, the DSP-8300 dev kit is definitely one of the cheaper solutions available. Does it read and write I2S serial audio in the code examples? What examples are available?

More info with an eye to us audio hackers would be appreciated. Thanks.
 
fr0st said:
I went and ordered a TMS320VC5416 for use with TI's 125msps ADC to do FFT's and oscilloscope functions.
What I want to do is create a homemade eval board that includes a ADC, FIFO and clock. The other GPIO's and serial ports would be connected to header so that daughters boards could be made and tested using the same board and alow interfacing to an LCD, DAC's etc.
The only problem is I'm having trouble understanding the memory architecture because I'm coming from a microcontroller background. The TMS320VC5416 comes with a bootloader than can boot from either an EEPROM, the HPI or the serial port. The best option I can see would be to use the EEPROM ...
Matt


Matt, it's been a while since I've done stuff like this, but I recall there being prom emulators to be had for not too much cash. Perhaps your idea of loading via a serial port could work, but I just don't know enough to say.

But, do I understand you correctly that you are building the hardware yourself? Please talk to me about this. How does one design and build a DIY PC board these days? I haven't been involved in such a thing since the days of wirewrapping (think 15+ years ago). I assume that different approaches are used with the clock speeds and surface mount technologies used these days.

Thanks, and I wish I could answer your questions.

Paul
 
tiroth said:
danville,

I had seen your company's products before and was intrigued. At $250, the DSP-8300 dev kit is definitely one of the cheaper solutions available. Does it read and write I2S serial audio in the code examples? What examples are available?

More info with an eye to us audio hackers would be appreciated. Thanks.

The DSP-8300 is a complete audio DSP module that includes an AC-97 codec. It does not have external SPORT connections. It is great for simple audio projects, but not tremenduously high performance.

Our dspstak products are SHARC based and all have support for I2S. A "dspstak" is generally comprised as two boards, a DSP Engine and an I/O Module. The dspstak is a great platform for DIY'ers since you can buy DSP Engines and then create your own I/O Modules. You can create very high performance digital audio platforms with the dspstak as the core.

You can download the user manuals from our web site to better evaluate these products.

Al Clark
Danville Signal Processing, Inc.
 
Thought of a pretty interesting application for a DAC with inline DSP. Headphone amplifier...

Almost all headphones have a three conductor plug. One for each driver with a shared ground. Well, taking a look at several pieces of music from multiple artists and genres, most music appears to be roughly 60% mono. And roughly 80% in the bass where most of the energy is present. So how about splitting the signal into pure stereo and mono components. The mono component could then be driven differentially. So you would have three DAC chips and output stages as follows:

L: ( L - R ) + 1 / 2 ( L + R )
G: - 1 / 2 ( L + R )
R: ( R - L ) + 1 / 2 ( L + R )

This way, say the left driver differentially sees ( L - R ) + ( L + R ). The R's cancel and you get just 2 L. This could be accomplished with a number of opamps and extremely high precision resistors. But why not do it in the digital domain where it doesn't cost you anything in terms of sound quality. That is not completely accurate though. You have to account for the improbable but possible instance where L = - R. So the left and right data streams must be down 6dB to prevent possible digital clipping. Though most of the time, it will be more like 3dB versus the original single channel data. Did that make sense to everyone?

Also, there is that "super stereo" effect. Music is not mixed with headphones in mind. They expect two speakers with 60 deg sepereation. There are HRTF (head related transfer function) impulse responses available from a few sources. Let's say A = +30 degrees and B = -30 degrees. Then the channels would be cross convoluted as follows:

L: A L + B R
R: A R + B L

Note, some scaling would also be necessary to avoid digital clipping. Also this function would be before the previously mentioned one in the DSP.

That would give you a nice presentation along the lines of what the mastering engineer had in mind. You could even take this a step further with 5.1 channels coming in. Get the 0 degree and +-135 degree impulse responses, and you can mix down surround sound to binaural for headphones. Can you imagine a surround sound DVD-A or SACD played like this? Audio heaven. My understanding is that applying an impulse response to regular pcm is pretty straight forward. I have no idea about DSD.

The HRTF impulse responses are open domain. Getting 5.1 channels of audio is another thing. I believe though, in the case of digital audio over 1394a, the 5.1 channels are decoded at the dvd player, before being sent over the line. So if someone where to come up with a DAC with a 1394a receiver, you could get those 5.1 channels without having to worry about those pesky ultra expensive Dolby licenses.
 
Matt, it's been a while since I've done stuff like this, but I recall there being prom emulators to be had for not too much cash. Perhaps your idea of loading via a serial port could work, but I just don't know enough to say.

But, do I understand you correctly that you are building the hardware yourself? Please talk to me about this. How does one design and build a DIY PC board these days? I haven't been involved in such a thing since the days of wirewrapping (think 15+ years ago). I assume that different approaches are used with the clock speeds and surface mount technologies used these days.

Thanks, and I wish I could answer your questions.

Paul.
Thanks for your reply
I think I've figured enough out to create a basic eval board. I'll start a new thread about interfacing the data converter so this one doesn't get off topic.
Thanks
Matt
 
DSP platform

I was planning to play around a bit with the TAS3103 (TI)

It has a dev. kit for programming x-over filters and routing the signal through the dsp.
Values can bemod over i2c or eeprom.

I'm designing the board myself as wel as the spdif in and I2S out.

What does the forum think of the Tas3103?

Frank
 
dwk123 said:
By co-incidence, I was just trading emails with another aquaintance, and he referred to this - the Blackfin Ez-Kit:

http://www.analog.com/Analog_Root/productPage/productHome/0,2121,BF533%2DHARDWARE,00.html

At $400 including a minimal but functional dev environment, it looks pretty nice, and within reach. The blackfin has a bucketload of cpu, and while I haven't looked at the I/O capabilities in detail, they should be adequate - looks like either 4 or 8 I2S output pairs depending on whether 1 or 2 ports are exposed, and probably 4 pairs on input. If the expansion connector topology is good, this might make a nice platform to target for modular I2S based I/O boards.....
I've done plenty of work on the Blackfin processor; one of my company's new products has I2S audio being pushed through an ADSP-BF535 processor.

The Blackfins have two SPORTs - you can attach a single I2S device to each. Using more requires external logic, perhaps a creative CPLD or FPGA design.

Another option is the Analog Devices AD1839A codec - it has two 24/96 ADCs and six 24/96 DACs onboard, and you can attach three incoming I2S devices and one outgoing I2S device to it. It then has a "SHARC" compatible TDM bus, where you can attach two of these CODECs to a DSP - this works fine on our Blackfin.

The only thing is, the AD1839A doesn't play nice when you don't use its I2S interface in slave mode, and does bizarre things like delaying the left channel by one sample, at random!

edit: another thing, the Blackfin is a 32-bit processor, but it only does 16 bit multiplies. It does two MACs per clock at 16-bit, so if you're working on 24 bit audio then you'll need to emulate 31-bit multiplication at 2 clocks per MAC. If you're doing audio processing, the SHARC DSPs are probably far more interesting.
 
Status
This old topic is closed. If you want to reopen this topic, contact a moderator using the "Report Post" button.