[sdiy] long delay lines
Eric Brombaugh
ebrombaugh at earthlink.net
Thu Jul 12 00:02:34 CEST 2007
Derek Holzer wrote:
> My first question is, are there currently any "single chip" solutions
> for this kind of application?
CoolAudio/Behringer has taken over the Alesis AL3201 and now calls it
the V1000 DSP/Effects chip. It can be used for delay, but I'd be
surprised if they're set up to support DIY applications.
http://www.coolaudio.com/products.html
Spin Semiconductor appears to be founded by the guys who did the AL3201
and they have new/improved versions with devkits, etc.
http://www.spinsemi.com/products.php
> The spec I'm aiming for is:
>
> * 16bit sound
> * 44.1K sampling rate
> * Maximum delay of well over a second...hopefully up to 3 seconds
> * Possibility of decaying feedback or stable looping
> * Reproducible design (i.e. low number of components, not too expensive
> or time consuming to program), since I hope to make 8-12 of the things!
> * Small package (by this I mean that I'd like to construct it on a
> modular synth-sized board...I have a laptop which I currently use for
> this delay system which is quite big enough, thanks!)
> * SMD components aren't a problem, I can probably work out soldering
> them by hand or oven somehow
Those specs will be tough to hit with currently available single-chip
solutions. The two listed above don't have nearly enough on-chip RAM to
support 3 seconds of delay at those sample rates and resolutions.
If you set your sights on a multi-chip solution though you should be
able to do it without too much difficulty. 3 seconds @ 16bit/44kHz will
require about 256kB of RAM - more than most microcontrollers provide.
Use a fast MCU and some off-chip RAM and you can hit the target. DRAM is
problematic because aside from the refresh issue, most of what you can
get these days is geared toward complex interfaces (DDR, etc) that are
hard to implement on an cheap MCU, and the older stuff isn't dense
enough. What you'll end up with are fast/wide SRAMs from the likes of
Cypress.
> I'm also curious about the relationship between clock time and audio
> quality. Will longer delay times always necessarily loose quality?
Yes, if the amount of RAM is fixed. You either need more RAM, slower
sample rates or lower resolution. Slower sample rates mean less
bandwidth in your signal and lower resolution means more quantization noise.
> Conversely, if I choose a system where the clock speed is separated from
> the delay time, do I lose the ability to pitch the sound down by
> lengthening the delay?
Yes. If sample rate is constant then varying the delay won't have any
effect on pitch. Also, you'll have to do some interesting tricks to
smooth out the transitions from one value of delay to another without
causing audible glitches.
> It would be good to know what is
> necessary for programming the different digital interfaces, since that
> may determine what kind of chip I will use in the application (and
> possibly which of my friends I can recruit to program it!).
Be prepared to buy a lot of beer for your buddies. Programming a good
sounding digital delay may seem simple, but it definitely isn't a
weekend project.
> Can anyone who has taken up a similar project send me some pointers? I'm
> aware that my "spec requirements" will require some flexibility, of course!
You might start trolling through the archives of the music-dsp mailing
list, as well as the comp.dsp newsgroup. These things come up there
fairly frequently.
Eric
More information about the Synth-diy
mailing list