|
|||||||
| Home | Forums | Rules | Articles | Store | Gallery | Blogs | Register | Donations | FAQ | Calendar | Search | Today's Posts | Mark Forums Read | Search |
| Digital Source Digital Players and Recorders: CD , SACD , Tape, Memory Card, etc. |
|
Please consider donating to help us continue to serve you.
Ads on/off / Custom Title / More PMs / More album space / Advanced printing & mass image saving |
|
![]() |
|
|
Thread Tools | Search this Thread |
|
|
#1 |
|
diyAudio Member
|
Ok,
I have seen a university project that did this, and I guess the cheapo portable CD players actually do it (15-60 secs of anti-skip), but does anyone have any references or citations, or suggestions about how to build in a specific (fixed if that is easiest) amount of straight up delay into the digital stream of a DAC. Assume you can modify or build a known DAC circuit that is suitable. The simple idea is that I'd like to delay (for example) an HF array a fixed amount of time - external digital delays (as used in a typical PA/SR system) are not going to be a suitable "high-end" solution here... _-_-bear
__________________
_-_-bear http://www.bearlabs.com ...ur feeback please - like/dislike my what I have written? PM/email tnx. -- |
|
|
|
|
#2 |
|
diyAudio Member
Join Date: Jan 2001
Location: Scandinavia
|
I can't really see what is wrong with something like a Behringer DCX2496 which does this.
You can easily build a delay circuit for S/PDIF or even easier (but more delay parts) the MCLK / BCLK / SDATA / "L/RCLK" - you need 3 delays and for the latter and you could clock it with BCLK - you can get logic chips which have multiple delay elements and serial IO ports (some even programmable) this or do a round-robin RAM based variant. The former obviously requires an input receiver etc. You could also do the same kind of thing using a computer. You probably also owe it to yourself to search for [Erland Unruh DAC] for a really cool implementation of a digitally controlled delay buffer for input receiving. Also, PS Audio did some interesting things in their older products - Ultralink or Audiolink or something like that. Genesis Digital Lens was also a Jitter attenuator courtesy of digital delay. |
|
|
|
|
#3 |
|
diyAudio Member
|
Sorry, my title should have read mSecs... not uSecs...
But I'll look for that citation... The Behringer products are nice enough, but generally not terribly good to listen to, have higher than optimal noise level, use all tiny, tiny surface mount stuff, and a very tough to get into for mods (even changing out opamps) unless you have a SMD station and a microscope. Other than that they're very cost effective. Also, afaik, no schematics are available. (and, I think everything passes through a DSP chip or two, which is a black box as far as what it is doing or not...) I'm looking for ultimate quality above all else. And being a digital ignoramus, I need genuine information and insight into this sort of implementation. <--- But, does anyone know of a site with the Behringer schematics? _-_-bear
__________________
_-_-bear http://www.bearlabs.com ...ur feeback please - like/dislike my what I have written? PM/email tnx. -- |
|
|
|
|
#4 |
|
diyAudio Member
Join Date: Oct 2003
Location: Ottawa, Canada
|
How much of a delay do you need? You could try to use a large FIFO chip (search Digi-key for "FIFO"). If you just need a few ms of delay then you could use the data, and LRclock lines as the data in/out of a large FIFO and the bitclock to clock it. If you need more than that, you will have to parallelize the datastreem and use the LRclock to clock the samples in/out of the FIFO.
|
|
|
|
|
#5 | |
|
diyAudio Member
|
Quote:
The idea is to time delay the tweeter vs. mids where there is a physical distance between the two... ...being able to set up the amount of the delay, even if that is more or less in hardware, is essential. A random amount of delay won't do the trick. So, how would this work with a FIFO? I wonder though, if you delay the data, regardless of where it is in the data stream, if the bitclock is sync'd to the input signal then once the source ends, the bitclock goes off sync? Hmmm... been many years since I last looked at the guts of a DAC in detail, guess that shows... _-_-bear
__________________
_-_-bear http://www.bearlabs.com ...ur feeback please - like/dislike my what I have written? PM/email tnx. -- |
|
|
|
|
|
#6 |
|
diyAudio Moderator
Join Date: Apr 2002
Location: Chatham, England
|
bear,
Where is this signal coming from? If it's coming straight from a cdp, then it's going to be full range. If it's coming from a crossover or computer, then surely that has delay options? I don't understand
__________________
Al I conceive of nothing, in religion, science or philosophy, that is more than the proper thing to wear, for a while. Charles Fort |
|
|
|
|
#7 | ||
|
diyAudio Member
Join Date: Oct 2003
Location: Ottawa, Canada
|
Quote:
. Since the delay is dependant on clock frequency, you may need to detect the difference between 48 kHz and 44.1 kHz inputs, unless you know you'll only ever use 44.1.The TI SN74V263/273/283/293 FIFOs have a programmable almost-full flag. This is an output pin which indicates that a user-specified threshold has been surpassesd. At this point, you would enable the output clock. This would be a duplicate of the input bitclock, thereby emptying the FIFO at exactly the same rate as you are filling it. The actual delay is determined by the threshold that you program for the almost-full flag. Quote:
|
||
|
|
|
|
#8 |
|
diyAudio Member
Join Date: Oct 2001
Location: .
|
The simplest solution for a fixed delay in a source synchronous setup is a large shift register implemented in a CPLD or a FPGA.
|
|
|
|
|
#9 |
|
diyAudio Member
Join Date: Apr 2004
Location: Northern California
|
I understand that proffesional audio uses delay circuits to equalize arrival times from speakers in large auditoriums.
Perhaps a search for such a device will reveal a design. I was once asked to design such a device but the project only got as far as a block diagram. It was as follows: 1. A clock running at 48KHz, in this case maybe 44.1KHz is more appropriate. The clock ran two counters. 2. An A to D feeding a 16 bit wide RAM array clocked by counter 1 3. A DIP switch that would preload counter 2 every time counter 1 overflowed. 4. The RAM data at counter 2 address fed a D to A to convert it all back to analog. The RAM was of course arranged to be a circular buffer with new data overwriting old data. 65K words would provide about a second and a half of maximum delay. 65K words requires a 16 bit counter, you can scale as needed for different maximum delays. If you don't use dual port RAM then double the clock and write/read on alternating cycles and divide by 2 for the counters. You can use cheap DRAM because this scheme automatically refreshes the RAM without needing seperate RAS/CAS cycles. |
|
|
|
|
#10 | |
|
diyAudio Member
Join Date: Apr 2004
Location: Halifax, NS, Canada
|
Quote:
10msec of delay requires 1764 bytes @ 44.1KHz 16-bit stereo... a 30F4013 dsPIC microcontroller has 2048 bytes of data RAM and a codec interface which supports I2S, and it's a 'nice' 5V-powered 40-pin DIP. As long as you don't increase the sample rate or the delay, you might be able to do it using only this chip. If the 2048 bytes of RAM isn't enough, you could probably hook up a 62256-style SRAM chip to the PIC with little or no additional logic. |
|
|
|
![]() |
| Currently Active Users Viewing This Thread: 1 (0 members and 1 guests) | |
| Thread Tools | Search this Thread |
|
|
|
|
||||
| Thread | Thread Starter | Forum | Replies | Last Post |
| DIY 12V Delay - Possible? | DolbyR | Parts | 10 | 16th June 2006 12:18 PM |
| build my first full ranger,let's build another one:a small fullrange high end pc-spea | then_dude | Full Range | 2 | 30th November 2005 07:54 AM |
| Do i need to build main supply (240v) filter?Or build power distribution? | thomgun_lc | Chip Amps | 9 | 16th September 2005 09:52 AM |
| DIY delay | zoom | Everything Else | 10 | 23rd October 2002 05:42 AM |
| New To Site? | Need Help? |
| Page generated in 0.13472 seconds (80.96% PHP - 19.04% MySQL) with 10 queries |