[comp.dsp] Digital Mixer Using Burr-Brown 200 Khz ADC

byron@pyr.gatech.EDU (Byron A Jeff) (09/23/89)

How difficult a proposition would it be to use this BB ADC to build a
multi-channel digital mixer? I haven't read the specs on it yet (I will
today at the Tech library) but if it's dual 200Khz ADC then it should
be possible to sample 8 audio channels at CD (44.1 Khz) or DAT (48 Khz)
quality. So how feasible is something like this:

-----------  ---------  ---------  --------   --------  --------  --------
|8        |--|Analog |--|Filters|--|      |   |      |  |      |  |      |
|Audio    |--|Multi- |  |  and  |  | ADC  |---| DSP  |--| DAC  |--|Filter|
|channels |--|plexors|--|  S/H  |--|      |   |      |  |      |  |      |
-----------  ---------  ---------  --------   --------  --------  --------

With the output being either high quality audio or DAT compatable digital.
The DSP would handle all mixing, EQ, effects, etc.

If samples can be obtained for ~$50 then a box for between $200 to $300
could be realized. If the DSP is fast enough then another ADC could
easily be added for a grand total of 16 channels.

Any comments? Most of the info I have is from "Musical applications for
Microprocessors".

Crossposting is for exposure. 
Redirect the discussion to the appropriate newsgroup.

comp.dsp - Role of DSP processor/algorithms in such a system.
sci.electronics - electonic aspects (analog filters, S/H, ect)
rec.music.synth - applications (for example midi control for setting
mixer/effects parameters, midi controled fades, and the like.)

BAJ
-- 
Another random extraction from the mental bit stream of...
Byron A. Jeff
Georgia Tech, Atlanta GA 30332
Internet:	byron@pyr.gatech.edu  uucp:	...!gatech!pyr!byron

byron@pyr.gatech.EDU (Byron A Jeff) (09/28/89)

[This is a repost. I got absolutly no response to the first posting.]

How difficult a proposition would it be to use this BB ADC to build a
multi-channel digital mixer? I haven't read the specs on it yet (I will
today at the Tech library) but if it's dual 200Khz ADC then it should
be possible to sample 8 audio channels at CD (44.1 Khz) or DAT (48 Khz)
quality. So how feasible is something like this:

-----------  ---------  ---------  --------   --------  --------  --------
|8        |--|Analog |--|Filters|--|      |   |      |  |      |  |      |
|Audio    |--|Multi- |  |  and  |  | ADC  |---| DSP  |--| DAC  |--|Filter|
|channels |--|plexors|--|  S/H  |--|      |   |      |  |      |  |      |
-----------  ---------  ---------  --------   --------  --------  --------

With the output being either high quality audio or DAT compatable digital.
The DSP would handle all mixing, EQ, effects, etc.

If samples can be obtained for ~$50 then a box for between $200 to $300
could be realized. If the DSP is fast enough then another ADC could
easily be added for a grand total of 16 channels.

Any comments?

BAJ
-- 
Another random extraction from the mental bit stream of...
Byron A. Jeff
Georgia Tech, Atlanta GA 30332
Internet:	byron@pyr.gatech.edu  uucp:	...!gatech!pyr!byron

mark@mips.COM (Mark G. Johnson) (09/28/89)

In article <9231@pyr.gatech.EDU> byron@pyr.gatech.edu.gatech.edu (Byron A Jeff) writes:
>[This is a repost. I got absolutly no response to the first posting.]
>

Maybe that's because gatech.edu is bouncing email back to senders.
For example, I myself got:

Returned mail: Service unavailable
While talking to gatech.edu:
>>> DATA
[... lots more poop ...]

   ----- Unsent message follows -----

I suggest that when you're building it, and afterward when you're
debugging and testing it, be sure to measure the actual observed
performance of the Burr-Brown part.  Compare this to the datasheet;
is the datasheet dead-on, wildly optimistic, or conservatively pessimistic?

This will help other readers of these Newsgroups decide whether or
not to use the BB device in their own projects.
-- 
 -- Mark Johnson	
 	MIPS Computer Systems, 930 E. Arques, Sunnyvale, CA 94086
	(408) 991-0208    mark@mips.com  {or ...!decwrl!mips!mark}

schabtac@porter.uucp (Adam Schabtach) (09/28/89)

In article <9231@pyr.gatech.EDU> byron@pyr.gatech.edu.gatech.edu (Byron A Jeff) writes:
>[This is a repost. I got absolutly no response to the first posting.]
>
It's possible you got no response because your first posting was a bit
vague.  For instance, it would help if you told us which chip you have
in mind -- that is, give us the part number (BB makes quite a few
ADCs :-).  I'm assuming you're talking about the chip that was featured
on the cover of a recent electronics trade journal.

>How difficult a proposition would it be to use this BB ADC to build a
>multi-channel digital mixer? I haven't read the specs on it yet (I will
>today at the Tech library) but if it's dual 200Khz ADC then it should
>be possible to sample 8 audio channels at CD (44.1 Khz) or DAT (48 Khz)
>quality. So how feasible is something like this:
>
> [ diagram showing ADC->DSP->DAC deleted ]

It depends on what you mean by "difficult" -- i.e. how are you with digital
prototyping?  The circuit you describe would require a lot of work to get
together, debugged, and running.  (I think I can generalize that way and
say that almost anyone would consider it "a lot" of work, even if they
worked for Fairlight or some place like that.) 

As far as using the ADC for 8 channels, from skimming the aforementioned
article, it seemed to me the chip was best suited for just doing two
channels.  It could be set up with a multiplexer, but since it's pretty
cheap (under $30 in lots of $1000, so probably under $50 to you and me), 
you would probably save yourself time and frustration (and hence money) by 
using several chips instead of a multiplexer.
>
>With the output being either high quality audio or DAT compatable digital.
>The DSP would handle all mixing, EQ, effects, etc.
>
You'd probably end up using several DSPs.  It demands most of the processing
power of one current DSP chip (say the Motorola 56000) to implement a
fairly complex reverb, OR a graphic EQ, so if you wanted EQ, effects, etc.
for each channel, I think you'd end up using at least one DSP per channel.

>If samples can be obtained for ~$50 then a box for between $200 to $300
>could be realized. If the DSP is fast enough then another ADC could
>easily be added for a grand total of 16 channels.
>
Um, I think you're underestimating a bit.  The socket for a 56000 costs about
$20, and it looks like you'll need at least 8 of those.  That's $160.  Etc...
Don't forget to throw in your own personal cost in design, labor, debugging,
etc.
>Any comments?
>
There they are.  I don't mean to be discouraging, but it sounds like a pretty
big project (albeit very interesting -- I wish I had the time to tackle 
something like it).
--Adam                    *  *  *  KILL YOUR TELEVISION  *  *  *      
schabtac@stout.ucar.edu      

todd@ivucsb.sba.ca.us (Todd Day) (09/28/89)

byron@pyr.gatech.EDU (Byron A Jeff) writes:

~-----------  ---------  ---------  --------   --------  --------  --------
~|8        |--|Analog |--|Filters|--|      |---|      |  |      |  |      |
~|Audio    |--|Multi- |  |  and  |  | ADC  |   | DSP  |--| DAC  |--|Filter|
~|channels |--|plexors|--|  S/H  |--|      |---|      |  |      |  |      |
~-----------  ---------  ---------  --------   --------  --------  --------
            ^^                              ^^^
	Eight lines here.		There should be two lines since it
					is a dual ADC.

Sounds like it might be feasible.  Does it have serial or parallel output?

Serial
	44.1 kHz * 4 channels * 16 bits/channel = 2.822 MHz

I think the 56000 can handle this.  Only half of what you need, though.
You might be able to do it with the TM$32030, as it has two serial inputs.

Parallel
	Either 56000 or 32020 can handle this, if you can figure
out a way to merge the data streams.

~If samples can be obtained for ~$50 then a box for between $200 to $300
~could be realized. If the DSP is fast enough then another ADC could
~easily be added for a grand total of 16 channels.

Your biggest problem is that the samples are not arriving at the same
time.  Actually, I guess you could use an interrupt routine to store all
the samples, then have the DSP act on them when all have arrived.

Remember that since you are using an analog MUX, the samples can't all
be done at EXACTLY the same time, so there will be a slight delay between
all of the channels.

Also, if it is serial, you'll have to use TWO 56000s and have them
talk to each other (not really that hard).  Could do some killer
filtering, though.

There might be some chips from AT&T that are cheap and have two
synchronous serial inputs.  The TI chip I mentioned is expensive.

-- 

Todd Day  |  todd@ivucsb.sba.ca.us  |  ivucsb!todd@anise.acc.com
"Ya know, some day these scientists are going to invent something
	that can outsmart a rabbit" -- Bugs Bunny

ivan@megatest.UUCP (Ivan Batinic) (09/29/89)

	I like your idea...  I am not an expert in this area, however
I feel the problem would be in post-processing; i.e. the DSP
processing rate would have to be very high.  May I suggest that you
repost (again) to the newsgroup 'comp.dsp' (recently introduced) They
are talking up a storm about audio dsp applications.

	Good luck, and please email me any responses -- I am
interested.

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Ivan

ivan@megatest.UUCP (Ivan Batinic) (09/29/89)

	Had I bothered to notice the distribution list, I would have
realized that you DID infact post this (as did I) to the newsgroup
'comp.dsp'  -- My sincere apologies you and this newsgroup!

	Ivan

rahardj@ccu.umanitoba.ca (Budi Rahardjo) (09/29/89)

>From alberta!ubc-cs!uw-beaver!cornell!mailrus!cwjcc!gatech!gitpyr!byron Fri Sep 29 00:29:20 CDT 1989
>[This is a repost. I got absolutly no response to the first posting.]
>How difficult a proposition would it be to use this BB ADC to build a
>multi-channel digital mixer? I haven't read the specs on it yet (I will
>today at the Tech library) but if it's dual 200Khz ADC then it should
>be possible to sample 8 audio channels at CD (44.1 Khz) or DAT (48 Khz)
>quality. So how feasible is something like this:

-----------  ---------  ---------  --------   --------  --------  --------
|8        |--|Analog |--|Filters|--|      |   |      |  |      |  |      |
|Audio    |--|Multi- |  |  and  |  | ADC  |---| DSP  |--| DAC  |--|Filter|
|channels |--|plexors|--|  S/H  |--|      |   |      |  |      |  |      |
-----------  ---------  ---------  --------   --------  --------  --------

Any comments?

I've questions :
What type of Analog Multiplexors ,Filters, S/H are you going to use ?
Are they fast enough ?
How do you control the mixer ? By modifying parameters of the DSP ?
Can you control each channels ?
Are you going to store /buffer the data in RAM before process them
with the DSP or just pass them thru ?
Well your design is possible, but I don't think that's an easy job..

Budi

byron@pyr.gatech.EDU (Byron A Jeff) (09/30/89)

In article <1989Sep29.054029.1605@ccu.umanitoba.ca> rahardj@ccu.UManitoba.CA (Budi Rahardjo) writes:
>> [This is my diagram]
>>-----------  ---------  ---------  --------   --------  --------  --------
>>|8        |--|Analog |--|Filters|--|      |   |      |  |      |  |      |
>>|Audio    |--|Multi- |  |  and  |  | ADC  |---| DSP  |--| DAC  |--|Filter|
>>|channels |--|plexors|--|  S/H  |--|      |   |      |  |      |  |      |
>>-----------  ---------  ---------  --------   --------  --------  --------
>
>Any comments?
>
>I've questions :
>What type of Analog Multiplexors ,Filters, S/H are you going to use ?

My understanding from a previous message is that the S/H is built in.
As for analog multipexors and filters I'm an ingnorant novice looking
for reccomendations. Any suggestions?

>Are they fast enough ?

I don't know.

>How do you control the mixer ? By modifying parameters of the DSP ?
>Can you control each channels ?
Through MIDI for me. I'm in the process of building the ultimate Midi-Merger,
sequencer, drum machine and adding mixer control is no problem. I'm am a
novice to DSP (that's why I read the newsgroup with great interest) but
with a M.S. in C.S. I think I can handle the programming and the math.
Modifying the DSP parameters through MIDI is the plan. How much control
over each channel I get depends on the processing power (I figure I'll get
this in a bit when I get to comp.dsp) but having individual channel control
would be desirable.

>Are you going to store /buffer the data in RAM before process them
>with the DSP or just pass them thru ?

Again it depends on the speed of the processor and the types of effects
I'm trying to get. I figure I may have to buffer a bit (up to 16K x 24 bits)
but I don't perceive that as a real big problem.

>Well your design is possible, but I don't think that's an easy job..
That's the kind of data points I'm trying to gather. If I can put it together
in a handful of weekend for $250-$300 (simplified by the fact I have
access to a DSP evaluation board) then I'll do it. Otherwise I'll leave
it to some genius to do. I'm looking at it just as a hobby project.

>Budi

Thanks for the comments. Keep 'em coming!
BAJ
-- 
Another random extraction from the mental bit stream of...
Byron A. Jeff
Georgia Tech, Atlanta GA 30332
Internet:	byron@pyr.gatech.edu  uucp:	...!gatech!pyr!byron

brianw@microsoft.UUCP (Brian Willoughby) (09/30/89)

In article <4513@ncar.ucar.edu> schabtac@porter.UCAR.EDU (Adam Schabtach) writes:
>In article <9231@pyr.gatech.EDU> byron@pyr.gatech.edu.gatech.edu (Byron A Jeff) writes:
>
>As far as using the ADC for 8 channels, from skimming the aforementioned
>article, it seemed to me the chip was best suited for just doing two
>channels.  It could be set up with a multiplexer, but since it's pretty
>cheap (under $30 in lots of $1000, so probably under $50 to you and me), 
>you would probably save yourself time and frustration (and hence money) by 
>using several chips instead of a multiplexer.

Actually, since you would want a S/H stage for analog sampling of each
input (which provides a steady voltage to the ADC), and the multiplexer
could double as a S/H stage, the single ADC looks pretty attractive.  A
Sample/Hold amp is typically a capacitor, some method of charging the
capacitor, and some method of reading the stored voltage without draining
the cap too quickly.  CMOS switches are usually used to diconnect the
charging source (the audio input) from the cap during the Hold setting.
An op-amp voltage follower works well to read the voltage since it draws
very little current from the cap (assuming that the voltage is constant).
I think that a CMOS 8-to-1 multiplexer between the 8 S/H stages would
make an inexpensive circuit.  However, I'm not sure that at the moment
the multiplexer connects the selected S/H stage to the voltage follower,
there might be too much current drain as the voltage follower struggles
to match the input voltage.  If that is the case, then 8 individual
voltage followers would be needed, still far cheaper than 8 ADC chips.
The addressing logic sent to the multiplexer to select the current input
channel could also be set to trigger the Sample/Hold control signals for
the S/H stages.

 CMOS sw.         |\  Op Amp Voltage Follower
--     ----+---X--| \
  |   |    |      |  >-+--
  -----  -----  +-| /  |
    |    -----  | |/   |
    | Cap  |    +------+
    |    -----
   S/H    ---
           -
>>With the output being either high quality audio or DAT compatable digital.
>>The DSP would handle all mixing, EQ, effects, etc.
>>
>You'd probably end up using several DSPs.  It demands most of the processing
>power of one current DSP chip (say the Motorola 56000) to implement a
>fairly complex reverb, OR a graphic EQ, so if you wanted EQ, effects, etc.
>for each channel, I think you'd end up using at least one DSP per channel.

That sounds like a harsh rating of the 56000.  My A.R.T. MultiVerb unit
uses two Z-80 processors to achieve simultaneous low-pass filtering,
pitch-shift and delay OR low-pass, reverb, chorus, multi-tap delay, etc.
This is with the help of a lot of custom TTL logic, but I don't think
that the 56000 would be so helpless doing reverb.  In some instances you
might be able to do some of the processing (i.e. mixing or digital
filtering) before sending the data to the 56000, or on it's output data.
I doubt you'll get independant effects on each channel, though.

>>Any comments?
>>
>There they are.  I don't mean to be discouraging, but it sounds like a pretty
>big project (albeit very interesting -- I wish I had the time to tackle 
>something like it).

I agree, if you could build such a thing for those prices, Yamaha or
someone would probably do it.

Brian Willoughby
UUCP:           ...!{tikal, sun, uunet, elwood}!microsoft!brianw
InterNet:       microsoft!brianw@uunet.UU.NET
  or:           microsoft!brianw@Sun.COM
Bitnet          brianw@microsoft.UUCP

toma@hpsad.HP.COM (Tom Anderson) (10/01/89)

>byron@pyr.gatech.EDU (Byron A Jeff) writes:
>
>-----------  ---------  ---------  --------   --------  --------  --------
>|8        |--|Analog |--|Filters|--|      |---|      |  |      |  |      |
>|Audio    |--|Multi- |  |  and  |  | ADC  |   | DSP  |--| DAC  |--|Filter|
>|channels |--|plexors|--|  S/H  |--|      |---|      |  |      |  |      |
>-----------  ---------  ---------  --------   --------  --------  --------
>           ^^                              ^^^
>     Eight lines here.               There should be two lines since it
>                                     is a dual ADC.
>
It seems to me that the filters need to go on the other side of the mux.
Imagine that for a set of samples the left channel has inputs 1,2,3,4 of
0v,10v,0v,10v respectively.  For a 200kHz A/D, the frequency of this is 
100kHz.  This won't get through a regular audio type anti-aliasing filter.

What are people paying for a digital audio anti-aliasing filter?

Tom Anderson           Hewlett-Packard        Signal Analysis Division
toma@hpsad             "It's only hardware"
Opinions expressed here are my own and not HP's