USB transfer modes has received a lot of interest and attention recently and “Asynchronous DAC’s” has been praised and hyped for it’s superior performance. However there seems to be a lot of confusion around asynchronous USB Audio.
There is a good and explaining article at EDN network about USB Audio.
Here’s a short explanation:
There are 4 types of USB transfers,: Isochronous, Interrupt, Control and Bulk
Bulk transfer is used for other types of USB devices like harddrives etc. USB Audio uses isochronous, interrupt and control transfers. All audio data is transferred over isochronous transfers. Interrupt transfers are used to relay information regarding the availability of audio clocks; control transfers are used used to set volume, request sample rates, etc.
Illustration from https://www.edn.com/
In audio we need to maintain a constant flow of data to keep the music playing continuously without any stops. Isochronous transfers provides a guaranteed bandwith and give priority above any other USB transfers. For example if you are making backup copies to your external hard drive, the data stream going to the DAC would have priority over the data sent to the hard drive.
When sending the data (music), to the DAC, the time needs to be defined. We know how many samples should be played pr second, but how long is a second?
This is where the master clock comes into play. Normally the computer (host) controls the master clock defining the second. this is called synchronous transfer.
Asynchronous transfer is when we include another oscillator (clock) into the external DAC and make this the master clock. The master clock is then moved away from noise sources in the computers (CPU etc) which avoids jitter(noise) to be added to the USB signal. It also makes it possible to use more suited and high end oscillators as master clock than those on the computer motherboard.
Adaptive transfer means that the data flow controls the timing. This avoids having to use additional oscillators and greatly improves the performance compared to synchronous transfer.
- With Asynchronous transfer the DAC controls the timing
- In synchronous the computer controls the timing
- In Adaptive transfer the timing is controlled by the data flow