Board Project/Challenge

Status
Not open for further replies.
Previously: Kuei Yang Wang
Joined 2002
Konnichiwa,

Well, following some other interesting links I came across this:

http://www.ueno.no-ip.org/~tube-audio/DAC/discrete_dac/

(if required use Babelfish to translate)

What have we got here? A basic, generic CMOS Logic based R2R DAC for 16-Bit/No-Oversampling.

Clearly this thing can use any number of improvements, for example using modern CMOS analogue switches from a really stable and low impedance and low noise reference voltage to generate the drive for the R2R network, or even using tempco compensated low noise BJT's as current switches (Emitter Follower). Also this principle is of course expandable to 24 Bits as evidenced here:

http://www.ueno.no-ip.org/~tube-audio/DAC/avr8535_dac/

(if required use Babelfish to translate)

Now the availability of decent "DIY Enthusiast" handlable (eg no super micro SMD packages) DAC Chips suitable to building unusal digital gear (and of the arguably sonically vastly superior "Multibit" type) is already in the region of "strictly New Old Stock or Salvage", so here is our chance to make our own DAC aimed strictly at high subjective performance, with full control over many parameters where we normally have to contend with whatever the large companies are happy to put together.

So folks - how about we all pool ideas, resources etc. and generate a "semi-discrete" Stereo, 24-Bit AUDIO DAC Design & PCB, possibly able to operate of a 12V Battery and ideally with a differential circuit using strictly a resistor per DAC halve for I/V conversion and with enough level to directly drive the outside world. And let's keep it to DIP/DIL package IC's as well?

Any takers? We have plenty of people "on board" who can provide input and resources (from inexpensive PCB FAB to serious Designers with access to suitable design SW/Shop), so we should be able to pull this off quite easily, come to think of it.

Sayonara
 
Konnichiwa,

tiroth said:
Commercial R2R DACs are essentially gone because of the difficulty of achieving #2, even with laser-trimmed resistors, right?

You can get 0.05% tolerance or better SMD resistors. The variations in channel resistance in the analogue switches and/or logic gate outputs will be larger. I think it should be "good enough".

tiroth said:
And the circuit linked has no deglitching whatsover!

I need to analyse the function in detail, but if needed (not sure yet) a simple set of shift registers is all that is needed. Could it be that the Register outputs update only after the Data is loaded? That should suffice.

Sayonara
 
The variations in channel resistance in the analogue switches and/or logic gate outputs will be larger.

Exactly--that is part of the problem. You have to control everything. Anyone know what the math is for the required tolerance?

Could it be that the Register outputs update only after the Data is loaded?

Well, that is the point of latching on LRCK in the schematic. The only problem I see is that each discrete latch is going to be slightly different, and within each IC the buffers aren't going to switch at precisely the same time. The glitching can never be 100% eliminated, but there are probably some clever ways to minimize it.
 
Konnichiwa,

tiroth said:

Exactly--that is part of the problem. You have to control everything. Anyone know what the math is for the required tolerance?

No Idea about tolerance. But I know analog switches (CMOS) that are specified with a few Ohm Channel Resistance tolerance.... And using BJT's selected for identical Beta should minimise the relative Channel Resistances drastically enough to get to some sensible tolerance. While in an application that requires ABSOLUTE accuracy the long term BE Voltage drift would be completely unacceptable, for audio we require absolute accuracy at a given stabilised temperature, so this is less wonky than it sounds at first....

Another option would be Video Op-Amp based multiplexers, where sufficient DC accuracy should be no real issue.

tiroth said:

Well, that is the point of latching on LRCK in the schematic. The only problem I see is that each discrete latch is going to be slightly different, and within each IC the buffers aren't going to switch at precisely the same time.

True, but with modern fast IC's the glitching time should be minimal and thus the energy. Most modern (audio) DAC's do not have de-glitcher circuitry anymore....

Sayonara
 
I see you are indeed correct about the deglitcher. Some overview info from the AD1865 description:

The monolithic AD1865 chip includes CMOS logic elements, bipolar and MOS linear elements and laser-trimmed thin-film resistor elements, all fabricated on Analog Devices' ABCMOS process.

The DACs on the AD1865 chip employ a partially segmented architecture. The first four MSBs of each DAC are segmented into 15 elements. The 14 LSBs are produced using standard R-2R techniques. Segment and R-2R resistors are laser trimmed to provide extremely low total harmonic distortion. This architecture minimizes errors at major code transitions resulting in low output glitch and eliminating the need for an external deglitcher. When used in the current output mode, the AD1865 provides two ±1 mA output signals.
 
KYW,

I can help however needed with the digital front end (either CPLD design or if needed, a microcontroller such as used in those examples).

I'll don't think I'll be able to help much with the analog portion, however.




I know for awhile you seemed to think the PCM1704 could be made to sound good. Did that not pan out or did the SMD pitch discourage you from use of this chip?

I am looking for a 24-bit DAC for use with my DEQ2496 and I'm game to try whatever you want. Need a winter project anyway.
 
I came across this thread while browsing. Has anything come of it?

If you are going to build a DAC from scratch using discrete components, why would you limit your options to R-2R? Why not explore other topologies, such the ring-DAC, or dream up something completely different?

(begin memory lane) In the late 1970’s, at the dawn of the digital age, before the Intel 8086 and IBM PC, I wrote a software-based music synthesizer that ran on a 2 MHz 8080. With a primitive instruction set and slow clock, I wasn’t able to anything fancy; such as generate a complex waveform. So, I simply toggled the interrupt enable bit for each cycle of each synthesized wave. I coupled the IE line from the S-100 bus to the input of an audio amp and demonstrated the world’s first, microprocessor-synthesized, multi-voice music. It was probably the world’s first 1-bit DAC, predating DSD by a couple decades. 😉 As you can imagine, the sound was very buzzy.

Later, I updated the software for the TRS-80, which was the most popular home computer at the time. Even though the clock was slower, ~1.8 MHz, the richer instruction set of the Z-80 meant I could do real wave synthesis. But, that required a real DAC. Multi-bit DAC chips were available, but they were expensive and required +/-12v rails. That wasn’t acceptable. I wanted the DAC and supporting chips to be self-contained and self-powered in a small module that plugged into the TRS-80 expansion bus. I didn’t want a clutter of wall-warts, which was the norm for “Trash-80” systems.

Unfortunately, the expansion bus provided no power; not even VCC. However, it did include a control line, named /RESET, that had a soft pull-up. Using 74C logic I made my own R-2R DACs, drawing mere micro-amps from /RESET. I wired the R-2R backwards, which gave V-out and obviated the need for Vref, I/V, and output buffers. The anti-image filter was a simple R-C network. The entire circuit consisted of two 8-bit latches, a couple gates to decode the I/O address, a handful of resistors, and a couple capacitors. There was no pretense of High End Audio or even High Fidelity. It just made music and was a lot of fun. (end memory lane)
 
Status
Not open for further replies.