The heart of the preamp is the PGA2310 - a recently launched IC from Burr-Brown/Texas. This IC is capable of controlling the gain of two channels over a 127dB range in 0.5dB steps - very impressive! For more info on the device, and some of the research that lead me to it, check out the analogue research page...
The main audio PCB deals with the stereo channels - it contains the source select relays (and their serial driver ICs), a PGA2310 to control the level plus op-amp buffers associated with it, a L+R mix amp and balanced line driver, and a dedicated headphone amplifier.
A six 6 channel input is provided for home-theatre use. An additional PCB deals with the centre, rear (left and right) and LFE (bass) channels - this PCB has another 2 PGA2310's (and buffers), plus a balanced line receiver and selection relay for the L+R mix to LFE output option.
The final 'analogue' PCB is the RIAA phono preamp. This is lifted from the Precision Preamp '96, designed by Douglas Self and published in Wireless World. If you can't find the relevant back-issue, I recommend that you buy his book (Self on Audio, ISBN 0-7506-4765-5), which contains copies of most of his articles over the last 20 years...
Main analogue PCB overview
Refer to the complete schematic of the Analogue PCB during the following descriptions...
Input selection and record/dubbing routing is performed by relays. The chosen source is fed to the input buffer via a bandpass filter - the buffer has a small amount of gain to compensate for losses in this filter. This means that the buffered listen-source output is exactly unity-gain. Not a major thing, but easy enough to get right...
This signal is then presented to the PGA2310 and the L+R mix amp. The gain of the PGA2310 can be -95.5dB to +31.5dB, depending on instructions sent from the control PCB. The output of this stage is low-pass filtered to define the HF -3dB point of the system, as this parameter of the input filter changes considerably with source impedance. From there, the signal is split between the main output buffer and the headphone amplifier. Both outputs are protected by muting relays which are controlled by a power-fail detect circuit - this ensures that mains disturbances can't produce unpleasant or potentially damaging transient noises.
Here's a picture of the main analogue PCB - move mouse over bits of the image for a description. Click here for a larger image (114KB)...
Relays were chosen to achieve the best possibly sound quality. The selected components are low-power devices that only require 17mA at 12V. They are driven by a pair of octal Darlington drivers - these are UCN5821A's, which incorporate a shift register and latches which are controlled by a simple 3-wire serial interface. This is a very useful IC - highly recommended!
You'll notice a simple RC network on the OE (output enable) pins - this inhibits the outputs for about half a second at power-up. This gives the PIC time to initialise and send the required commands to the ICs.
Main signal path
This is relatively simple, consisting of two buffers and the PGA2310. The need for these buffers is discussed on the analogue research page, but to be honest you probably could omit the output buffer if you wanted to be purist about things. The op-amp in the PGA2310 has been described as an "OPA2124 with a bipolar input stage".
The buffers have what might appear to be strange amounts of gain - this is to compensate for losses in the input filtering and the post-PGA2310 low-pass filter. Taking all of this into consideration, the overall gain is exactly 1dB. When the volume control has been turned to maximum, the PGA2310 is programmed to have a gain of +9dB. Hence, the nominal maximum gain is +10dB, although things like input trims and balance control adjustments will change this.
A small detail that's worth mentioning: output impedance. I wanted to have a well-defined output impedance - and if you look at the past work you'll see how I made exactly 100 ohms by having a series 110Ω resistor shunted to ground by a 1K1. During a quiet moment, I was idly wondered what shunt resistor you'd need to add to a 51Ω series resistor to get 50Ω - the value was exactly 2K55. Knowing that wasn't an E24 value, I thought "that'll never exist!" to myself... However, I found a range of E69 values in the Farnell catalogue that had 2K55 - so it does exist, and it isn't an exotic precision device that costs a fortune.
I had to buy 50 of them, but that wasn't expensive. And since then, I've found lots of uses for them! You'll see them in the L+R mix amp and the power supply...
This is based around an OPA2134 with a class B buffer formed by bipolar transistors. For most headphones of high to medium impedance, a single NE5532 normally has sufficient drive capability. However, adding the transistor buffer opens up the opamp choice by removing the need for good drive capability. The OPA2134 has a FET input stage, which means the DC offset of the stage is reduced to a few millivolts - this has the very welcome advantage of being able to DC-couple the output thus losing the large electrolytic capacitors that would otherwise be required.
The buffer is included in the feedback loop and is very simple. While there are plenty of ways to improve it, check out this page on Doug Self's website for reasons why I didn't. That said, One refinement is the addition of the resistor from the opamp output to the buffer output - this enables the opamp to source current when the transistors aren't conducting. This is a very simple form of 'feed-forward' compensation - basically for very small output voltages (or high impedances) the opamp drives the load directly and avoids any cross-over distortion from the class-B buffer.
The best headphone socket I could find was a second-hand device rescued from something some years ago. As this is a PCB-mount component, I was obliged to make up this small PCB. However, this has saved me from having to fabricate a bracket to hold the socket flush with the front panel.
Update - December 2004
I've noticed that this simple circuit has been discussed on the Headwize forums, and it seems that people have had lots of success with it. This is nice to hear - certainly I thought that it performed very well, but I didn't have as much time to devote to this section as I would have liked. With this in mind, I'm planning to do some more experimentation with it - but unfortunatley, my to-do list is rather long at the moment!
LFE L+R Mix amp and balanced line driver:
This is a very simple summing amplifier, based around an OPA2134. As there was a spare opamp on the IC, it was a trivial matter to generate a balanced signal from this stage. The signal path from this stage to the surround PCB is fairly clean so it's perhaps not entirely necessary, but why not do things properly?
The summing amp has a gain of -12dB for two reasons: both the stereo-to-mono conversion and the unbalanced-to-balanced conversion require a gain loss of 6dB. To explain further, the stereo-to-mono conversion uses a convention where the output is (L+R)-6dB. Thus, a sound in the centre of the stereo image is added together and appears at the same level as each of the original channels. As that sound moves to one speaker only, the output of the converter is 6dB less, representing the reduced output heard from a stereo setup. This convention is widespread in broadcasting and is known as M6 - it produces a good compromise on mono equipment while still maintaining the headroom available in the audio path. Other conventions exist, such as M3 and M0, but both of these will result in a signal that is bigger than the input if it is equal on both channels. In our application, that means the summing op-amp will start to clip before the limit of the input buffer has been reached. Admittedly, this would be moset unlikely in practice...
The balanced-to-unbalanced converter on the Surround PCB has a differential gain of +6dB, so we must lose an additional 6dB in the summing amp before converting the signal to balanced. This ensures that the LFE channel receives the correct level when in L+R mode.
All of this required a little bit of thought, but I'm pleased to say that the component values worked out nicely, and the system is surprisingly accurate. I've tested the performance by feeding "zero-level" tone into the LFE input and the TV/AV left and right inputs - while switching between normal and L+R mode, the level change is tiny - less than 0.05dB! Also, the noise floor of the LFE channel hardly changes when in L+R mode, despite the extra op-amps in the signal path. It's hard to be sure about this while looking at a 'scope trace, but at this stage I'm pleased with the results.
Surround Channels PCB
As there is only one 6-channel input, this PCB does not require source-selection relays. The circuitry is based around another two PGA2310s and associated buffer opamps - the only other circuitry is a balanced-line receiver and relay to facilitate the L+R Mix to LFE option...
The channels are almost identical to the main audio channels. However, as there is no buffered fixed-level output, there is no need to have the 0.37dB gain in the input buffer to overcome the losses in the input filtering. This gain is made up in the output buffers so that the surround channels have exactly the same gain as the main channels. This is perhaps unnecessary, as the surround channels will use different amps and speakers, but it was easy enough to do. Basically, I spent a while messing about with different combinations of preferred resistor values for the output buffer, and found a set that just required a 2K2 to be changed to 2K4 to make up the required gain difference. Once the correct values had been fitted, I was delighted to find the channels were matched to within 0.1dB! It's always nice when theory actually works in practice!
RIAA Phono Preamp
A phono stage was an essential requirement, but as I have a relatively basic front end and a limited record collection, it didn't have to be anything exotic. I'd collected an assortment of simple MM designs from IC application notes, magazine and internet articles, text books and commercial products - I'm sure that any of these would suffice...
However, I noticed the Precision Preamp '96 project by Douglas Self. It was published in Electronics/Wireless World a few years back, and is included in his second book (Self on Audio - ISBN 0 7506 4765 5). Unlike the material previously found, it includes a full discussion of the merits of the various topologies, and full justification of the chosen configuration. The result is a design of extraordinary accuracy (±0.05dB) using standard 1% components.
This circuit uses series feedback, with all of the RIAA equalisation performed in the feedback loop. This is in contrast to some schemes that mix active equalisation with passive - these have the advantage of being easier to design, but suffer from other compromises such as headroom and signal to noise ratio. The 'all-in-one' approach doesn't suffer from these problems, but because the two time-constants interact, the maths is very difficult. As detailed in the article, Self constructed a spreadsheet to simplify the design process.
The final PCB had to measure no more than 40-45mm by 150mm, which is tight! The design calls for ten 1% polystyrene capacitors per channel, and these are normally physically large axial components (not to mention expensive!). Luckily, I found a range that is in a neat plastic package - see the Preamp FAQ for details.
The circuit is identical to the published version, with minor variations surrounding the input and output resistors. Also, when comparing my schematic to the published version, you'll note some resistor value changes in the RIAA feedback network - R22 and R23 should be 52k and 1k5 respectively. But it's hard to be sure about this because the print quality of all of the published versions of the Precision Preamp '96 is terrible. So because of this, I queried the values with Douglas Self - pointing out that 52k is not a preferred value - and he replied saying that he was surprised that no-one, including himself, had noticed this before. He said that the correct target value for this series combination is 53.5k, so I got close to it with 51k and 2k7.
Despite having this confirmation straight from the source, doubts remained, and the subject was discussed on audio forums. Time prevented me from making detailed measurements or simulations, and to be honest, I don't really use records that much anyway.
However, I now believe that the original values should have been 62k and 1k5. Althouh I've had suspicions based on a number of sources, his book "Small Signal Audio Design" (ISBN 978-0-240-52177-0) has the circuit on page 190 with clear printing. I modified mine shortly after seeing that.