Thanks for this James. Very enlightening.
Thank you. Very interesting!
Thanks very much for such clear explanations.
Forgive me going right back to basics - and possibly showing my ignorance! Could you “plot” the following audio file formats to show which of the two technologies (PCM & DSD) they are. I’m particularly interested to know:
flac - clearly shown as PCM technology on my Melco, but sometimes listed as
“flac lossless” - is the reference to lossless reflective of a material audio improvement
.wav - I have a lot of .wav recordings transferred from my previous Naim server, and my Melco offers .wav as an alternative to flac when ripping new material. Is one superior over the other, particularly as downloads from the sites I use are exclusively flac and therefore transfers to Melco in .wav presumably involves conversion? Which would you choose in the context of playback on Rossini?
BBC HD broadcast (specifically Radio 3).
Are there other high quality formats that I should be aware of - either to embrace or avoid?
FLAC is an example of an audio CODEC (COmpressor DECompressor) that is used to reduce the file size / data rate of PCM audio that is being sent. FLAC is lossless, meaning there shouldn’t be any perceived change in the audio quality when comparing FLAC to an uncompressed format like .wav. The benefit is that the file sizes for audio tracks are much lower, meaning less hard drive space or streamed data to worry about, with the same sound quality at the other end.
.wav is a form of uncompressed PCM. Which you would choose really comes down to how much storage space you have available, as audio quality should be equal across that and FLAC.
BBC Radio 3 HD uses the AAC-LC codec, another method of compressing PCM audio for sending over the internet. I would be very surprised if anyone was streaming DSD audio - the file sizes are much larger than for example FLAC, which is fine if you are sending it locally from your NAS to your DAC, but to stream it over the internet to say a smartphone could be problematic.
I would just add that AAC as used by BBC R3 is a lossy codec whereas all of the others file types mentioned in this thread are lossless. However the streaming rate used by R3 is high for this kind of thing - 320kb/s and that the subjective quality they can achieve is remarkable - try the Monday lunchtime recitals from Wigmore Hall as an example.
Part 4 – The Ring DAC
How can the issues described previously with Ladder DACs be resolved? What would a DAC designed from the ground up to effectively de-correlate errors in the DAC itself and remove the resulting distortion look like? That is where the dCS Ring DAC comes into play.
The Ring DAC is the proprietary DAC technology found inside all dCS DACs. On the surface, the Ring DAC may look like a Ladder DAC. There is a latch and a resistor for each current source, and these current sources are fed to a summing bus. The key difference between the Ring DAC and Ladder DACs however, is that the Ring DAC uses current sources of equal value. This is what is known as a ‘unitary-weighted’ or ‘thermometer coded’ DAC architecture. Additionally, the Ring DAC does not use the same current source(s) for the same bit every time . There are 48 current sources within the Ring DAC, all of which produce an equal amount of current. The Field Programmable Gate Array (FPGA) controlled nature of the Ring DAC allows the sources to be turned on and off in such a way that any component value errors are averaged out over time. Firing the same bit three times on the Ring DAC might give one output slightly high, the next slightly low, the next somewhere in the middle, as opposed to outputting the sample slightly high every time, or slightly low every time (as seen in a Ladder DAC, for example).
It takes a considerable amount of signal processing power and know how to optimally operate a thermometer coded DAC, but the benefit with this approach is that it almost entirely removes the linear distortion from the signal (bear in mind that the highly artificial distortion many DACs produce is very noticeable to humans and has a negative impact on perceived sound quality).
The Ring DAC process may be thought of as decorrelating errors. Background noise (an uncorrelated error – one which is not linked to the audio signal itself) is very prevalent in nature, whereas artificial distortion (a correlated error) is not.
This results in the Ring DAC having class-leading distortion performance, particularly at lower signal levels. This means more fine detail can be resolved and heard in the audio.
The nature of exactly how the Ring DAC decides which current sources need to be turned on or off at any given point to generate the correct signal is dictated by a highly sophisticated set of rules defined in the dCS Mapper. While it may appear to be random, it is the culmination of three decades of continuous work, resulting in a carefully calculated set of patterns used to minimise noise, distortion and crosstalk while primarily keeping the highest degree of linearity by averaging out the contribution of components that fall out of specification over time. Improvements to the Mapper over time have allowed for a lower noise floor to be achieved, while maintaining the signature linear sound associated with the Ring DAC. The Mapper is what allows for the noise created by the Ring DAC to be pushed outside of the audible band of frequencies and then filtered out.
This diagram illustrates the basic layout of the Ring DAC.
The Mapper works at 5-bits, so PCM data which arrives at the Ring DAC is first oversampled to 706.8kHz or 768kHz. This is then modulated to 5-bits at a rate between 2.822MHz and 6.144MHz (depending on the unit, settings and content sample rate) and fed into the Mapper which distributes this signal to the current sources in the DAC.
This diagram illustrates the output of the Modulator within the Ring DAC, modulating incoming digital audio signals to a 5-bit high rate format ready for conversion to analogue.
The next post will begin to discuss filtering in DACs.
My confusion is with how the 16-24 bits of the input digital signal gets converted to 5 bits going into the mapper? It would seem this is a big loss in dynamic range resolution, so I must be missing something…
If I were to venture a guess, I’d say that “5-bit modulator” stage is a digital multibit sigma-delta modulator.
Looking forward to James’ reply
Many thanks, James, really helpful!
Am looking forward to the next instalments of your Technical Explanation papers.
All adds to my understanding!
I appreciate I don’t need to know this but I’ll ask anyway as it’s very interesting. Is left and right divided in the ring or can the latches switch sides.
By no means am I an expert on the maths behind this, however… The more appropriate way to describe the modulation stage would be as a “noiseshaper”, as the audio community is pretty firm on the definition of delta-sigma modulation with one specific implementation.
That said, the key aspect to consider is that even with DSD running at the same rate as the Ring DAC with only 1 bit, you get close to 24-bit performance. We are working with a much greater word length here, and while it really isn’t an apples to apples comparison (DSD to the Ring DAC format), it stands to show that a lower bit depth and higher rate – if handled correctly – can produce excellent results.
It is separated, yes – one side of the DAC board handles one channel of the audio. This avoids crosstalk between the left and right channels.
The following is taken from a response we put on another forum, but I think the information is really pertinent to the discussion here…
To improve the state of the art you need subject matter expertise. Only by understanding the benefits and limitations of various approaches to A-D and D-A conversion can we design a DAC that we feel is best in class. Of course what we deem as a critical performance requirement may not be the same as other manufacturers or hobbyist engineers, however we are one of a select few manufacturers who have designed world-class ADCs, DACs and sample rate converters for both studio and consumer use.
So, we are trying to point out the issues that exist in common architectures, which to sum up are:
You can have lots of weighted current sources at a low sample rate – the challenge here is matching these current sources, and keeping them matched over temperature variations and time. For audio, the side-effect of this is that any errors in this matching cause unnatural distortion (due to correlation), which the human auditory system is very sensitive to. On the plus side, because we don’t have to run that fast, jitter is less of an issue.
You can have conceptually a single current source, and run it at a much higher sample rate. This fixes the matching issue (because it’s self-referencing – on or off, and any drift will manifest as DC rather than distortion). Unfortunately to deal with the quantisation noise generated, you have to heavily noise shape this and move it up in band. This can cause issues because if you keep the clock at sensible rates, the quantisation noise is very close to the audio band, and if you move it too high in frequency jitter becomes a real issue (due to switching noise), at which point you may have to perform some quite horrible (and sometimes impossible) maths to match rates.
What the Ring DAC does is effectively a hybrid – the clock can run at sensible rates (so 3-6MHz) and the noise shaping can be gentle, but because we have multiple codes to represent, we need a way to match them exactly - whilst bearing in mind that components age, temperature can become a factor and so on. This is the job of the mapper, and it has numerous attractions, including distributing DAC errors away from where we are interested (audio frequencies) to where we are insensitive (very high frequencies), without altering the data presented to it, whilst at the same time ensuring all the sensitive components age in the same way.
We can definitively state the that the Ring technology is not multiple DSD streams, and is not random – if you read the writeup, we even say “may appear random”.
It is quite correct to say that you cannot decorrelate noise that is already part of the signal. However, it is worth thinking about this as a philosophical point. One view is that noise shaping and filtering are evil because they somehow ‘guess’ and don’t reproduce the ‘original’ signal, and the ‘fewest steps must be the best’. Now, this may sound strange coming from us, but one of our beliefs can be attributed to Einstein – “Everything should be made as simple as possible, but no simpler ”. So what is the original signal we are trying to reproduce? This will be covered more in the filtering article.
Right, that makes sense. Perhaps a more appropriate term I should’ve used is Noise-Shaping Requantizer.
@James the series seem to be halted. Will there be a next post?
I read this expanding thread with great interest, but fear like my understanding of Relativity, which I was taught at A level, I’m somewhat behind the curve. But it is very enlightening thanks.
Will you be at some future point explaining the effects of the filters ( for vivaldi). I’m a little lost despite reading round this as to what their sonic effects are and would be most interested.
Yes listening is recommended, but backing it up with some science would be much appreciated.
The series is definitely still going ahead. The next post will be coming very soon, but we’re working on preparing some additional information that we hope will address some of the questions that we have received over the past few weeks.
Thanks for your patience, and I’ll be back with a new post on filtering within the next two weeks.
The next post(s) we have planned are on filtering, so once those are ready hopefully you will feel much more comfortable with the topic!
Most DACs will have some information in their specifications about the types of filtering they use. As these filters are an incredibly important part of the product, it is worthwhile explaining why and how they are used.
To understand why we need a filter, it helps to start at the beginning, when an analogue signal enters an ADC during the recording / production process. (This is significant, as the filter within an ADC has almost as much impact on what we hear during playback as the filter within a DAC.)
We have previously discussed how audio is sampled using an ADC – the analogue voltage is converted into a digital representation, with a series of ‘samples’ being taken to form this representation. The lowest sample rate used in audio is typically 44,100 samples per second (S/s). The reason for using this sample rate (44.1kS/s) is largely due to the Nyquist Theorem. This states that the sample frequency of digital audio needs to be at least twice the highest frequency in the audio being sampled. The highest frequency which can be sampled (half of the sample rate) is defined as the ‘Nyquist frequency’. As the human range of hearing extends up to 20,000Hz, accurately sampling this frequency range requires a sample rate of at least 40,000S/s.
However, what happens if what we are sampling doesn’t ‘fit’ into our sample rate’s valid range, between 0Hz and the Nyquist frequency? If this occurs, then the frequency components above the Nyquist frequency are ‘aliased’ down below it. This sounds counterintuitive, but it is illustrated here:
The above graphs show two signals: one at 1kHz and one at 43.1kHz, both sampled at 44,100 samples per second (44.1kS/s). Note that sampling the 43.1kHz signal produces samples which are indistinguishable from the 1kHz tone (though phase inverted). If this 43.1kHz signal was passed through the ADC, the resultant samples would be indistinguishable from those of the 1kHz tone – and a 1kHz tone would be heard on playback. This means that the ADC must remove anything which does not ‘fit’ between 0Hz and Nyquist frequency, to avoid these aliased images affecting the audio.
The removal of anything which does not fit between 0Hz and Nyquist frequency is carried out by way of a low-pass filter. This filter removes any content above a certain frequency, and allows anything below that frequency to pass through, ideally unchanged. This filter can be implemented in either the digital or analogue realm.
It would seem that the most obvious solution to the aliasing problem caused by running an ADC at a sample rate of 44.1kHz is to implement a filter which does nothing at 20,000Hz, but cuts everything above 20,001Hz. This would allow the removal of any unwanted alias images from the A/D conversion, while ensuring the audio band remains unaffected. However, such a filter is highly inadvisable. For one thing, if using a digital filter, the computing power required to run such a filter would be excessive. Filters work by reducing the amplitude of the signal above a frequency on a slope so to speak, measured in decibels per octave. As such, the audio is sampled at a higher rate than simply double the highest frequency we are trying to record (it is actually sampled at 44,100Hz instead of at 40,000Hz) which allows some room to filter it. This means the filter can now work between 20,000Hz and 22,050Hz without aliasing becoming an issue, while also leaving the audio frequencies humans can hear unaffected.
This diagram illustrates a low-pass filter for 44.1kHz audio.
This is still an extremely narrow ‘transition band’ to play with. If this is done with an analogue filter, the filter will have to be very steep – this is problematic as analogue filters aren’t phase linear (the filter will delay certain frequencies more than others causing audible issues) and are pretty much guaranteed to not be identical. This is okay when they are working at say, 100kHz, but at 20kHz this becomes very problematic. As such, the filter used to remove any content from the Nyquist frequency and up is implemented in the digital domain, in DSP (Digital Signal Processing).
In audio recording, it is common practice to use a high sample rate ADC and perform the filtering at the Nyquist frequency on the digital data instead. This method is known as an ‘Oversampling ADC’. The block diagram for a dCS oversampling ADC producing 16-bit 44.1k data is shown here:
The analogue low-pass filter removes high frequencies from the analogue signal above 100kHz, as these would cause aliasing. As previously discussed, this analogue filter acting at 100kHz can be gentle and acts in a region where non-linearities are not as critical.
The ADC stage then converts the signal to high-speed digital data. In a dCS ADC, this stage is a Ring DAC in a feedback loop, so produces 5-bit data sampled at 2,822,000 samples per second.
The Downsampler converts the digital data to 16-bit 44,100 samples per second. This data then passes through a sharp digital filter, which effectively removes content above 22.05kHz. (Frequencies higher than this will cause aliases if not filtered out.) The PCM encoder then formats the data into standard SPDIF, AES/EBU and SDIF-2 serial formats, complete with status and message information.
The digital filter used in the Downsampler will have its own set of trade-offs to employ. To simplify this greatly, digital filters work by passing each sample through a series of multipliers, with these multipliers collectively acting to filter higher frequencies from the signal. The shape of how these multipliers are arranged is referred to as the filter ‘shape’ (symmetrical or ‘half-band’ filters, asymmetrical filters). Different filter shapes have different impacts on the sound.
This diagram illustrates an example of the response of a symmetrical digital filter. They are called this as they produce symmetrical ‘ringing’ when driven with an impulse (also known as a transient). This results in an acausal response before the impulse. The effect is more pronounced at lower sample rates:
This diagram illustrates an example of an asymmetrical filter response. This filter type has a completely different impulse response – here, there is no ringing before the impulse, but there is more ringing after the impulse when compared to a symmetrical filter:
Given the fact that the ADC must use a filter to remove aliases, and that a digital filter acting at the Nyquist frequency is preferable to using a harsh analogue filter, there will therefore be pre- and/or post-ringing introduced at the recording stage by the digital filtering in the ADC. This is a good trade-off to make, and the filter choice here is important.
Most ADCs will work using a symmetrical filter. What this means is that for any digital recording, there will be (necessary) pre- and post-ringing present on the recording, as a result of the filter which was used. The key point to be made here is that all digital recordings will include ringing from the filters, even before they reach the DAC, but this is the best approach to take – provided the filters are correctly designed and implemented within the ADC.
The other side of this topic is the DAC, where the digital audio recorded by the ADC is translated back to analogue for playback.
When a DAC reproduces an analogue waveform from digital samples, an effect similar to aliasing occurs. This is where, due to the relationship between the frequency of the analogue audio signal and the sample rate of the digital signal, ‘copies’ of the audio spectrum being converted can be observed higher up in the audio spectrum. While these images exist at frequencies outside the range of human hearing, their presence can have a negative impact on sound.
There are two reasons for this. Firstly, frequencies at rates above 20,000Hz can still interact with and have an audible impact on frequencies lower down, in the audible spectrum (between 0-20,000Hz).
Secondly, if these images – known as Nyquist images – are not removed from an audio signal, then the equipment in an audio system may try and reproduce these higher frequencies, which would put additional pressure on that system’s transducers (particularly those responsible for reproducing high frequencies) and amplifiers. Removing Nyquist images means an amplifier has more power available to use for reproducing the parts of an audio signal that we do want to hear, which leads to better performance and a direct positive impact on sound.
Similar to in an ADC, the solution to the problem posed by Nyquist images in D/A conversion is to filter anything above the highest desired frequency of the audio signal by using a low-pass filter. This allows Nyquist images to be eliminated from the audio signal, without impacting the music we want to hear. The question of how a low-pass filter should be designed is a complex and sensitive topic –and it’s important to note that there is no one-size-fits-all solution.
Of course, when working with source material which is at higher sample rates than 44.1kHz, such as hi-res streamed audio, the requirements of the filter in the DAC change. There is a naturally wider transition band, and as such the filter requirements will be different. Most DAC manufacturers offer a single set of filters which are cascaded for different sample rates. Given the different filtering requirements posed by converting different sample rates, this is not the optimal approach to take in a high-end audio system.
For this reason, the filters found within dCS products and the Ring DAC are written specifically for each sample frequency by dCS engineers. Further to this, there are multiple filter choices available for each sample frequency in a dCS product. There is no one right answer to filtering, as it depends on the listener’s preference and the audio being reproduced, so a choice of very high-quality filters bespoke for the Ring DAC and the sample frequency of the audio are available for the user to choose from.
The next post will explore the details of how digital filters are designed for use in audio products, exploring factors such as cut-off frequency, filter length and windowing.
Very interesting, thanks James.
James this series is fascinating and I really look forward to the next part. One main feature is how well it is written, Even a dummy like me can understand it ( mostly ).