Jump to content
IGNORED

Understanding USB


Recommended Posts

Just now, beerandmusic said:

 

Even in music, it is digital (and useless) until it is converted.

 

And that conversion process needs to be as "perfect" as possible. Again, the reality is that the circuitry doing this particular job has to be pristine in implementation - if it's not, you can hear it; and this is why CD sound got such a bad rap for decades ...

Link to comment
3 minutes ago, GUTB said:

 

A square wave is not "on" or "off". There is a high point and a low point. Although we like to think of it as a binary condition, that is just a figment of our imagination. Between two voltage states there can be 3, 10, a 100, a billion different voltages. Two works well for us because it's reliable.

A square wave is a sampling of 1s and 0s.

 

In digital it is either on or off.  There is no value 3, 10, or 100...

It is just 0 or 1 (5v or 0v)

 

A signal may have a value of 5 (101), but that would take 3 samples.

With a digital signal there is only ONE value per sample (1 or 0, on or off)

Link to comment
1 minute ago, beerandmusic said:

incorrect.

 

In digital it is either on or off.  There is no value 3, 10, or 100...

It is just 0 or 1 (5v or 0v)

 

A signal may have a value of 5 (101), but that would take 3 samples.

With a digital signal there is only ONE value per sample (1 or 0, on or off)

 

To understand audio quality you have to rid yourself of the imaginary concept of "digital audio".  To begin with, square waves and sine waves are representations of electrical currents -- which have absolutely nothing to do with sound. Sound is actually three-dimensional fields of air pressure, and our perception of sound is purely a neruo-chemical phenomena.

 

When you think about digital audio, you think of bits -- pristine 1s and 0s. You believe analog concerns don't matter until the 1s and 0s turn into sound on the other side of a DAC chip. That is intuitive and makes sense -- but that's wrong. There are, in fact, no 1s and 0s, that is just your imagination. The "digital audio" in fact never free of contamination from the moment it leaves its storage location right up until it expends itself as energy pushing a transducer.

Link to comment

 

How a Digital Audio file sounds, or a Digital Video file looks, is governed to a large extent by the Power Supply area. All that Identical Checksums gives is the possibility of REGENERATING the file to close to that of the original file.

PROFILE UPDATED 13-11-2020

Link to comment
1 hour ago, beerandmusic said:

A square wave is a sampling of 1s and 0s.

 

In digital it is either on or off.  There is no value 3, 10, or 100...

It is just 0 or 1 (5v or 0v)

 

A signal may have a value of 5 (101), but that would take 3 samples.

With a digital signal there is only ONE value per sample (1 or 0, on or off)

 

The "on or off" idea is just a convenient way of thinking.  But I can assure you that the 1's are a HIGH voltage (can be any value in a range exceeding some value), while the 0's are a LOW voltage (again can be any value in a range not exceeding some value).  The "bits" (1s and 0's) are "read" at discreet time intervals; however, the electrical signal "carrying" the information (bits) continuously (without break) spans all time intervals (and in between) -- so in some sense it is "analog".

mQa is dead!

Link to comment
59 minutes ago, lucretius said:

 

The "on or off" idea is just a convenient way of thinking.  But I can assure you that the 1's are a HIGH voltage (can be any value in a range exceeding some value), while the 0's are a LOW voltage (again can be any value in a range not exceeding some value).  The "bits" (1s and 0's) are "read" at discreet time intervals; however, the electrical signal "carrying" the information (bits) continuously (without break) spans all time intervals (and in between) -- so in some sense it is "analog".

the design will determine what the high value is and what the low value is...with usb design, a high or one or on is 5v and a low is 0v.

There is no value besides 1 or 0...you can call it what you want, (on,1,high,5v), but a high will represent a value of 1 and a low will represent a value of 0.  There is no single sample of any different value besides 1s and 0s.  The sum of the representation of the stream will determine the value...regardless of any of this, i understand binary more than most here, and the point is that the binary digital data is transferred with 100% accuracy as a digital signal of 1's and 0's.

Link to comment
1 hour ago, GUTB said:

 

To understand audio quality you have to rid yourself of the imaginary concept of "digital audio".  To begin with, square waves and sine waves are representations of electrical currents -- which have absolutely nothing to do with sound. Sound is actually three-dimensional fields of air pressure, and our perception of sound is purely a neruo-chemical phenomena.

 

 

that is true once it is converted to analog....it is only a digital file when stored or transmitted.  The file stored on a cd or hard drive is a binary file.  This binary file is transmitted in a digital stream.  It is not until it is converted to analog that it is the music we hear.

Link to comment
18 minutes ago, beerandmusic said:

that is true once it is converted to analog....it is only a digital file when stored or transmitted.  The file stored on a cd or hard drive is a binary file.  This binary file is transmitted in a digital stream.  It is not until it is converted to analog that it is the music we hear.

Here is some (hopefully) helpful reading for you: https://positive-feedback.com/audio-discourse/why-usb-cables-can-make-a-difference.

 

The same principles apply to the transport.  Great sound is unfortunately not as simple as sending a "bit perfect" data stream to the DAC. 

 

The transport you use does matter.  A dCS Network Bridge sounds better than an Intel NUC.

Link to comment
31 minutes ago, beerandmusic said:

the design will determine what the high value is and what the low value is...with usb design, a high or one or on is 5v and a low is 0v.

There is no value besides 1 or 0...you can call it what you want, (on,1,high,5v), but a high will represent a value of 1 and a low will represent a value of 0.  There is no single sample of any different value besides 1s and 0s.  The sum of the representation of the stream will determine the value...regardless of any of this, i understand binary more than most here, and the point is that the binary digital data is transferred with 100% accuracy as a digital signal of 1's and 0's.

 

No -- the 5v relates to powering devices and -- not the data signal.  There are two data lines in USB and differential signaling is used -- if the non-inverted signal's voltage is higher than the inverted signal's voltage, you have logic high. If the non-inverted voltage is lower than the inverted voltage, you have logic low.

 

 

 

mQa is dead!

Link to comment
22 minutes ago, clipper said:

Here is some (hopefully) helpful reading for you: https://positive-feedback.com/audio-discourse/why-usb-cables-can-make-a-difference.

 

The same principles apply to the transport.  Great sound is unfortunately not as simple as sending a "bit perfect" data stream to the DAC. 

 

The transport you use does matter.  A dCS Network Bridge sounds better than an Intel NUC.

I looked at the article briefly...will look at closer tomorrow.  I think noise is addressed by usb isolation, and that may have been an issue in the past (god knows why it took so long for dac engineers to address it, but it seems they have and that should no longer be an issue).    I no longer believe that the source or cable should be an issue anymore....e.g. Schiit eitr, and that noise should no longer be an issue.

Link to comment
55 minutes ago, lucretius said:

 

No -- the 5v relates to powering devices and -- not the data signal.  There are two data lines in USB and differential signaling is used -- if the non-inverted signal's voltage is higher than the inverted signal's voltage, you have logic high. If the non-inverted voltage is lower than the inverted voltage, you have logic low.

 

 

 

ok, you may be right there.  I just know for a fact that the data is stored and transmitted digitally as a binary file...not sure of the actual voltage, but i am relatively sure that if you ask any dac engineer, that they will say there is no problem with recieving the data with 100% accuracy as a binary file, that if there is any issue with noise at all, that it is not in the accuracy of the transmitted binary file, but in the processing of the binary file.

 

 

Link to comment

Delving deep into electrical theory doesn't answer perceived USB illness. DAC is a specialized computer in its own right. It has processor and digital-analog-converter chips. Processor runs firmware program. Processor receives data into buffer from USB. Then it feeds buffered data into digital-analog-converter chips based on dac chips clock. There can be slight delay here to prevent jitters. So there is no issue with USB jitters! There is no need to use jitterbug-like devices.

 

5V electrical supply is another issue. It should be handled by DAC power supply circuit.

 

Only poorly designed DACs blame USB.

 

Link to comment
18 minutes ago, beerandmusic said:

I looked at the article briefly...will look at closer tomorrow.  I think noise is addressed by usb isolation, and that may have been an issue in the past (god knows why it took so long for dac engineers to address it, but it seems they have and that should no longer be an issue).    I no longer believe that the source or cable should be an issue anymore....e.g. Schiit eitr, and that noise should no longer be an issue.

I understand why you want to live in a world where the transport and USB cable don't matter.

 

Unfortunately, that is not the world we live in.

 

I have a Schiit Eitr.  The transport I use with it matters.  The USB cable I use with it matters.  

 

Schiit USB Gen 5/Schiit Eitr are very good, but there's nothing magical about the technology that makes it immune to transport or cable.    

 

Also, I believe you are greatly oversimplifying things by basing your transport and cable shouldn't matter belief only on "noise."  What about clocking, for instance?  Look at some of the threads on CA where people have discovered and are discovering how better clocking leads to better sound.

 

Think about it for a minute.  Probably the only constants with respect to the USB DACs you've tried and disliked in the past are the Asus mini computer you used as a transport and your USB cable.  What USB cable did you use, by the way?  Was it an "audiophile" USB cable, or just a standard USB cable that you might use to connect a printer?

 

PM me your address, and I'll send you a transport and USB cable to try for a few weeks when you get your new DAC.

Link to comment
8 hours ago, hdo said:

Delving deep into electrical theory doesn't answer perceived USB illness. DAC is a specialized computer in its own right. It has processor and digital-analog-converter chips. Processor runs firmware program. Processor receives data into buffer from USB. Then it feeds buffered data into digital-analog-converter chips based on dac chips clock. There can be slight delay here to prevent jitters. So there is no issue with USB jitters! There is no need to use jitterbug-like devices.

 

5V electrical supply is another issue. It should be handled by DAC power supply circuit.

 

Only poorly designed DACs blame USB.

 

+1  I agree with all of this, provided you also agree that the binary file is recieved with 100% accuracy.

 

Link to comment
7 hours ago, clipper said:

I understand why you want to live in a world where the transport and USB cable don't matter.

 

Unfortunately, that is not the world we live in.

 

That is the purpose of the thread, and i find it very debatable.

Can you explain to me how a digital file can be transmitted to a thumb drive with 100% accuracy 100% of the time, and a DAC cannot recieve the same file with 100% accuracy?

 

If it can't, then i suggest it is just a poorly designed dac.  Of course clocking and buffering has to be accounted for, but if a $5 thumbdrive can receive the data with 100% accuracy (even with inherent usb noise), then a dac should be able to as well. 

 

 

Link to comment
7 hours ago, clipper said:

 

Schiit USB Gen 5/Schiit Eitr are very good, but there's nothing magical about the technology that makes it immune to transport or cable.    

 

 

 

I agree nothing magical.  Noise isolation should have been implemented in DACs years ago, but now that they have, there should be no more debate as to if noise actually effects the transmission of the digital file.

 

Again, i am not arguing that noise may affect processor chips and processing, but that the transmission of the binary data is done so with 100% accuracy.  If you have a dac designed to compensate for noise, then the hardware source should not make a difference as it is my belief that Almost ALL hardware devices are capable of transmitting the data with 100% accuracy.

Link to comment
4 hours ago, beerandmusic said:

 

That is the purpose of the thread, and i find it very debatable.

Can you explain to me how a digital file can be transmitted to a thumb drive with 100% accuracy 100% of the time, and a DAC cannot recieve the same file with 100% accuracy?

 

If it can't, then i suggest it is just a poorly designed dac.  Of course clocking and buffering has to be accounted for, but if a $5 thumbdrive can receive the data with 100% accuracy (even with inherent usb noise), then a dac should be able to as well. 

 

 

 

You have to appreciate the fact that there is a big difference between the transmission of a digital file and a transmission of a digital data stream. Let me try a "all that you wanted to know about data transmission but were too afraid to ask for dummies edition" in one paragraph:

 

A digital file is a sequence of bits -> bytes -> data packages and so on from beginning to end of the file. The transmission can be done asynchronously and checksums can tell if there are any errors in the bits transmitted. No big deal. A digital data stream, from the other side, carries along the time information. It can be non-real time (i.e. both time stamp and data are transmitted and buffered at the receiver where the time signal is regenerated) or real time (only data is passed, time information is passed synchronously from the source clock down to the last user of the data. This is surprisingly very difficult to be done properly in a digital environment which involves all sorts of latency issues. An USB transmitter creates a synchronous data stream which is sent to the receiver. In many DACs, the timing on this data stream determines also the cycle of DAC update - the process is greatly improved if using the most accurate clock in the chain as a source (either at the transmitter or at the receiver). If there are packets lost or delayed, there may be issues if the data is not buffered and interpolated in the DAC. In order to use the USB purely as a data transmission without relying in the time information, the DAC has to re-generate locally the data stream from scratch by buffering the data and build it up from scratch (that's for example what a Regen or few DACs like Chord do). 

 

So yeah, the only perfect thing in the process is that the concept that the transmission is flawless is an illusion.

Link to comment
23 minutes ago, unbalanced output said:

A digital data stream, from the other side, carries along the time information. It can be non-real time (i.e. both time stamp and data are transmitted and buffered at the receiver where the time signal is regenerated) or real time (only data is passed, time information is passed synchronously from the source clock down to the last user of the data. This is surprisingly very difficult to be done properly in a digital environment which involves all sorts of latency issues.

Nonsense. In an audio stream, the sample timing is implied by the sample rate and position in the stream. Nothing needs to be sent anywhere.

 

23 minutes ago, unbalanced output said:

An USB transmitter creates a synchronous data stream which is sent to the receiver. In many DACs, the timing on this data stream determines also the cycle of DAC update - the process is greatly improved if using the most accurate clock in the chain as a source (either at the transmitter or at the receiver).

Show me one such DAC available to purchase new today. All current USB DACs use adaptive isochronous mode with a local master clock.

 

23 minutes ago, unbalanced output said:

If there are packets lost or delayed, there may be issues if the data is not buffered and interpolated in the DAC.

In isochronous mode, the required bandwidth is reserved from host to device, and bulk transfers are limited to whatever remains. Every 125 µs, the host controller sends a data packet containing the number of samples requested by the DAC. Provided the OS keeps the buffers filled, this cannot go wrong. Since latency isn't important for music playback, the buffer size can be set high enough that underruns simply don't occur. 100 ms is usually plenty.

 

It is of course possible for a data packet to be corrupted, e.g. from noise in the cable. If this happens, it is up to the DAC whether to fill in silence, try to interpolate, or simply drop the packet. With proper cables, this is so rare an occurrence that it is of no consequence whatsoever.

 

Reliable transfer of audio data over USB is a non-issue. Apparently some DACs are susceptible to noise somehow coupled over the USB cable. This has nothing to do with the data transfer and its timing.

 

23 minutes ago, unbalanced output said:

In order to use the USB purely as a data transmission without relying in the time information, the DAC has to re-generate locally the data stream from scratch by buffering the data and build it up from scratch (that's for example what a Regen or few DACs like Chord do).

Because USB data arrives in bursts, all DACs, even the old synchronous ones, must have a local buffer.

Link to comment
1 hour ago, unbalanced output said:

 

You have to appreciate the fact that there is a big difference between the transmission of a digital file and a transmission of a digital data stream. Let me try a "all that you wanted to know about data transmission but were too afraid to ask for dummies edition" in one paragraph:

 

A digital file is a sequence of bits -> bytes -> data packages and so on from beginning to end of the file. The transmission can be done asynchronously and checksums can tell if there are any errors in the bits transmitted. No big deal. A digital data stream, from the other side, carries along the time information. It can be non-real time (i.e. both time stamp and data are transmitted and buffered at the receiver where the time signal is regenerated) or real time (only data is passed, time information is passed synchronously from the source clock down to the last user of the data. This is surprisingly very difficult to be done properly in a digital environment which involves all sorts of latency issues. An USB transmitter creates a synchronous data stream which is sent to the receiver. In many DACs, the timing on this data stream determines also the cycle of DAC update - the process is greatly improved if using the most accurate clock in the chain as a source (either at the transmitter or at the receiver). If there are packets lost or delayed, there may be issues if the data is not buffered and interpolated in the DAC. In order to use the USB purely as a data transmission without relying in the time information, the DAC has to re-generate locally the data stream from scratch by buffering the data and build it up from scratch (that's for example what a Regen or few DACs like Chord do). 

 

So yeah, the only perfect thing in the process is that the concept that the transmission is flawless is an illusion.

You are right but beerandmusic's has a very strong point: a DAC does not necessarily have to be able to process a digital data stream!

 

Nothing does actually prevent a company from building a device (I am not going to call it a DAC to avoid confusion)  that first reads a file (or, for that, a whole batch of files or playlist) via standard USB or TCP/IP protocols, stores the data in an internal memory and then, after the data transfer has completed, performs the digital-to-analog conversion from the internal memory .

 

This mode of operating would obviously imply a sizeable delay between the point in time at which a user selects a set of files for replay and the point in time at which replay actually starts.

 

But a large SSD internal memory and clever caching schemes could dramatically reduce such delays. And with USB 3.1 and fast Ethernet, delays for average sized playlists would anyway be negligible.

 

Such a device would be source agnostic by construction and its sound quality would only be determined by its internal design. From a user's perspective, it would be an ideal component. It would make long chains of decrapifiers, network players, USB to SPDIF convertors, etc. completely obsolete.

 

For the hifi industry such a device would be a nightmare, of course. Thus, we will have to live with crap decrapifiers, network players and USB to SPDIF convertors for another while, I'm afraid! 

Link to comment

if not goblins, then how about:

 

bitter, jitter

fire and trouble

cables smoke and FIFO bubble

 

or.. maybe we should all meet and watch the new film on noise & jitter "DACopalypse Now"*

 

 

* "Now" may be associated with time smear or phase shifts that are unsuitable for young audioences

Link to comment

Sorry if I oversimplified. The time pace is indeed defined by the master device, whichever side it is placed. This clock dictates the pace of the data stream. Each data package can carry at most 1kb at 8kHz (for XMOS at least). The data is then broken down into higher frequency/individual samples using the same clock reference! Therefore it doesn't make much of a difference whether the data is sent in packets or not, they're simply broken down further down the line from the buffer - actually the only guarantee is that it doesn't get any better downstream. Perhaps what you're not considering is the fact that the clock is (typically) not regenerated or check past the buffer - the data may be used in the correct clock cycle or not, there's no guarantee for that.

 

Agree in the point that latency is not an issue as long as it is constant, however that is not the case in synchoronous or adaptive modes. In asynchronous mode it is indeed minimised, however the processing delay is still variable. 

 

 

Link to comment

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now



×
×
  • Create New...