jambaj0e
500+ Head-Fier
Here's your science on USB Audio and USB Cable courtesy of Gordon Rankin, the creator of Asynchronous USB for audio and inventor of Audioquest Dragonfly. This is about 50% of the knowledge drop and the rest is in the Darko article:
https://darko.audio/2016/05/gordon-rankin-on-why-usb-audio-quality-varies/
“All data moving between a host computer and a device over USB is done electrically. There are different speeds and different protocols that determine how a device and the host communicate.”
“Any interface between two points cannot be totally error-free. If you use a hard drive over USB, Ethernet or Firewire there are transmission errors. That means the transmitting device is told to resend the packet that has the error in it. Most of the time this is one bit in a packet size of length X.”
“Remember, the carrier is modulated on the data so the larger X, the bigger chance of errors. Also the faster the interface the more chance that there will be an error.”
“The three main USB transmission protocols are Bulk, Interrupt and Isochronous. Bulk (used for data transfer to a hard drive) and Interrupt are error-correcting. Isochronous (used for audio) is not.”
“Bulk and Interrupt are immediately NAK (negative acknowledgement). The receiver is designed to detect a bad packet immediately and the packet is resent.”
“For USB audio, the receiving device is basically translating a serial stream of data with a clock interwoven throughout. At the end of the packet sits some sort of block check. If the block check does not match the data then that packet is flagged as an error.”
“With Isoschronous USB transmission, packets are sent without any error correction / resending. But guess what? This is the USB protocol used for audio frames. The bad news is they are not error-free. The good news is these Isochronous frames are afforded the highest priority in the system.”
“A couple of years ago, I bought an expensive Tektronix USB setup. I have had protocol analyzers since designing my first USB DACS some twelve years ago. The Tektronix is useful because it allows me to see errors better both in electrical and data packets.”
“The big thing that many people don’t realize is that not all USB ports are created equal. Not all USB cables are created equal and it’s the same for devices and even operating systems. Since getting the Tektronix I have tested probably thirty different USB cables on the fifteen computers in my lab. These computers run a variety of operating systems and the Tektronix results vary between computers even when the cable remains the same. Let’s just say it’s not as pretty as I thought it would be.”
“Just a couple of things to think about in regards to USB ports. First, look to see what else is located on that tree. Each USB port can handle 127 devices. Sometimes there are additional ports hidden (inside your computer) and there are internal devices sitting on those ports – this could be the same tree that is hosting your USB DAC”...
"Speed plays an important part in all of this too. You may have heard the terms UAC1 and UAC2 – these are USB Audio Class protocols. UAC1 was designed for Full Speed device and host interaction. A data packet is sent every 1ms. In that packet are up to 1023 frames.”
“In high speed or UAC2 those 1024 frames each contain eight micro frames. Therefore, the amount of data we can send over UAC2 is basically eight times greater than that of UAC1. But with more data at faster speeds comes more errors and system configuration becomes harder. I almost never see an error on a UAC1 device, on a UAC2 device I can pretty much count on errors in both directions”...
"To summarise: the problem with USB Audio is that Isochronous USB frames are not error-correcting. Therefore the sonic outcome of any USB system is dependent on the host to device differential.”
“Twelve years ago, I pretty much thought as many people do today: that USB was the answer to our S/PDIF quandaries. In some ways, it is a good deal better. We have Asynchronous Isochronous so the device and host know about sample rates, bit rates, clocking options and a host of other things. But cables make a difference, computer brand and quality make a difference and even the device makes a difference.”
https://darko.audio/2016/05/gordon-rankin-on-why-usb-audio-quality-varies/
“All data moving between a host computer and a device over USB is done electrically. There are different speeds and different protocols that determine how a device and the host communicate.”
“Any interface between two points cannot be totally error-free. If you use a hard drive over USB, Ethernet or Firewire there are transmission errors. That means the transmitting device is told to resend the packet that has the error in it. Most of the time this is one bit in a packet size of length X.”
“Remember, the carrier is modulated on the data so the larger X, the bigger chance of errors. Also the faster the interface the more chance that there will be an error.”
“The three main USB transmission protocols are Bulk, Interrupt and Isochronous. Bulk (used for data transfer to a hard drive) and Interrupt are error-correcting. Isochronous (used for audio) is not.”
“Bulk and Interrupt are immediately NAK (negative acknowledgement). The receiver is designed to detect a bad packet immediately and the packet is resent.”
“For USB audio, the receiving device is basically translating a serial stream of data with a clock interwoven throughout. At the end of the packet sits some sort of block check. If the block check does not match the data then that packet is flagged as an error.”
“With Isoschronous USB transmission, packets are sent without any error correction / resending. But guess what? This is the USB protocol used for audio frames. The bad news is they are not error-free. The good news is these Isochronous frames are afforded the highest priority in the system.”
“A couple of years ago, I bought an expensive Tektronix USB setup. I have had protocol analyzers since designing my first USB DACS some twelve years ago. The Tektronix is useful because it allows me to see errors better both in electrical and data packets.”
“The big thing that many people don’t realize is that not all USB ports are created equal. Not all USB cables are created equal and it’s the same for devices and even operating systems. Since getting the Tektronix I have tested probably thirty different USB cables on the fifteen computers in my lab. These computers run a variety of operating systems and the Tektronix results vary between computers even when the cable remains the same. Let’s just say it’s not as pretty as I thought it would be.”
“Just a couple of things to think about in regards to USB ports. First, look to see what else is located on that tree. Each USB port can handle 127 devices. Sometimes there are additional ports hidden (inside your computer) and there are internal devices sitting on those ports – this could be the same tree that is hosting your USB DAC”...
"Speed plays an important part in all of this too. You may have heard the terms UAC1 and UAC2 – these are USB Audio Class protocols. UAC1 was designed for Full Speed device and host interaction. A data packet is sent every 1ms. In that packet are up to 1023 frames.”
“In high speed or UAC2 those 1024 frames each contain eight micro frames. Therefore, the amount of data we can send over UAC2 is basically eight times greater than that of UAC1. But with more data at faster speeds comes more errors and system configuration becomes harder. I almost never see an error on a UAC1 device, on a UAC2 device I can pretty much count on errors in both directions”...
"To summarise: the problem with USB Audio is that Isochronous USB frames are not error-correcting. Therefore the sonic outcome of any USB system is dependent on the host to device differential.”
“Twelve years ago, I pretty much thought as many people do today: that USB was the answer to our S/PDIF quandaries. In some ways, it is a good deal better. We have Asynchronous Isochronous so the device and host know about sample rates, bit rates, clocking options and a host of other things. But cables make a difference, computer brand and quality make a difference and even the device makes a difference.”
Last edited: