Digital designs?

The Dark force of dance batzman at gist.net.au
Tue Jan 6 12:53:11 CET 1998


Y-ellow Y'all.
        I'll say this once more for the cheap seets. TripleDAT does not use
DSPs. It is all done through the CPU and uses system memory.

But having said that, I'm not dissin' the idea of using a DSP. Far from it.
A DSP such as a motorola 56K could be quite useful. However when I was
designing the G-Frog sound card we found that a DSP 56K on it's own wasn't
anywhere near powerful enough. We looked at using DSP96Ks but there were two
snags. Firstly we'd need 6 of them and they were way expensive. Secondly,
Motorola wouldn't look at reducing parts count by integrating multiple 96K
cores for us. Not even as a huge hybrid. Our aproach ended up being somewhat
radical because of this but I can't talk about it because it's not patented
or anything. I've been down that path before so I won't go into what happend
@ G-Frog and why the worlds best digital synthesizer never materialized.
Damn it! :(

But anyway, A DSP can help off load your number crunching needs greatly. A
sound card such as a TBS 65K would be of emence interest to you in that
case. It's called a "56K" because it's main claim to fame is that it sports
a Motorola 56K. and is reasonably open to thrird party abuse. People have
done some amazing things with them. Including some pretty whoopy synthesis.
I'm not sure if they still make them but they have a huge following amongst
the audio coding fraternity.

The nice thing about the 56K is that it sports what is known as an I2S bus.
I know I've been through all this with some of you before so I'll keep this
brief. I2S stands for "IC Interstage Sound" it is the standard digital audio
communications bus. Not unlike I2C bus but faster and only uni-directional.
There are several veriations in the protocol but it is basically a 3 wire
bus. Nearly every digital audio device talks I2S. Well let me put it this
way, I don't know of any that talks any other way.

For example. In order to get your ordenary crappy sound card to talk S/PDIF
direct to your DAT machine, it is in theory at least, a simple matter of
piggy backing an I2S compatible S/PDIF transmitter onto the I2S bus. Same
deal for putting a digital output on your CD player. In fact if you do, you
would circumvent all the copy protection stuff by defult. But I'm getting
ahead of myself. The Motorola 56K just happens to have an I2S bus as
standard on board which made them extremely popular in digital audio
applications. You can hook a D-A/A-D and S/PDIF transceiver directly to
them. They also have another serial interface on them as standard as well.
I2C springs to mind but don't quote me on that.

The standard architecture with a single motorola 56K is to use an 8 bit
microcontroller to orchestrate the system. More often than not it's an INTEL
MCS51 derivative core though it really depends on what flavor of bus takes
your fancy. Often an MCS51 is chosen because it offers as standard, all the
dooberies you need to do MIDI etc. And it offeres relatively easy
interfacing. There are so many variations on the original MCS51 theme now
that you are really spoiled for choice. From the tiny little 20 pin ATMEL
chips which I absolutely love, through to some bloody great big huge MoFos
from Seimens which have more ports, bells and whistles on them than I care
to even think about. Running at speed that will make you think twice about
16 bit controllers.

Ok so the thing to remember that DSPs are really good at number crunching.
They can take in some data, mess with it and spit it out in a flash. But
they're hopeless at controlling stuff. Once you get into rack'n'stack
operations they're dumb as a sack full of hammers. This is why you need to
partner them with a controller. In a sound-card app, the controller would be
taking up information from the host, inturpreting it and telling the DSP
what to do. In a stand alone application such as a rack synth or keyboard,
it would be doing things like, reading MIDI and sorting out which note is
which. Those kinds of functions.

Now the only other tip I have to give that is significant is that multiple
DSPs are trouble. You need more power than you can muster with a single DSP
but you run into an operating system bottle neck. The more DSPs you have,
the more operating system you need to have them hang together effectively.
To the point where a significant amount of DSP power is lost through the OS.
We had some guys working for us who were world leaders in DSP OSes and yet
we keept running up against these brick walls. Once again, this led us to
our radical solution but I can't share that with you. And trust me, you
couldn't afford to do it anyway. Allthough the cost is becoming cheaper and
more accessable all the time. I should add.

Having said all that. It is still cheaper and easier to use a PC platform.
As they say, there is no sense in re-inventing the wheel. Unless of course
you're real serious and have a lot of time and money. The absolute best
approach to anything like this IMHO is to get your structure standing as
quickly and as effectively as possible. Once it's up you can worry about
sculpting all the nice bits on as you go.

Be absolutely ICebox.

 
 _ __        _                              
| "_ \      | |         batzman at gist.net.au / aek at gist.net.au
| |_)/  __ _| |_ ____           ALL ELECTRIC KITCHEN               
|  _ \ / _` | __|___ |  The new AEK CD, Elementary Urban sanity    
| |_) | (_| | |_  / /   is out now on Transmission Communications from
|_,__/ \__,_|\__|/ /    http://brisbane.dialix.com.au:80/~com11
                / ,__   and check out http://www2.gist.net.au/~aek/
Goodfortune    |_____|       Let your SANITY wear thin.




More information about the Synth-diy mailing list