Thread: GBps to MB/s
View Single Post
  #3  
Old January 24th 19, 07:33 PM posted to alt.comp.hardware.pc-homebuilt
amdx[_2_]
external usenet poster
 
Posts: 7
Default GBps to MB/s

On 1/24/2019 11:48 AM, Paul wrote:
amdx wrote:
To prevent spambots I need to answer this question to confirm
registration to a forum.

If USB 3.1 Type-C Gen 2 speed is 10Gbps, What is the speed of 10Gbps
in MB/s (Answer must include MB/s):

Â*I thought it would just be Gig to Meg or 1000, but I get that is an
invalid answer, So I googled and found:
" 10 Gigabit Ethernet speed 10 Gbit/s = 1250 Megabytes per second"
But that also gives me a that is an invalid answer.
Â*Yes, I putting it in MB/s form, either 1000MB/s or 1250MB/s

Any ideas?
Â*Â*Â*Â*Â*Â*Â*Â*Â*Â*Â*Â*Â*Â*Â*Â*Â*Â*Â*Â*Â* Mikek


If you're looking on an oscilloscope at the wire, the 10Gbit/sec does
amount to 1250MB/sec in a sense. What's missing is an accounting of
coding loss. More bits are used to encode the data, than you get to use.
On USB3, a 10 bit long sequence of ones and zeros, represents 8 bits
of user data. That's a 25% overhead for transmission on the
physical media.

*******

https://en.wikipedia.org/wiki/USB_3.0

Â*Â* USB3.1 Gen1Â*Â* 5Gbit/sec, 8b/10b encoded, 500MB/sec channel rate usable
Â*Â* USB3.1 Gen2Â*Â* 10Gbit/sec, 128b/132b
Â*Â*Â*Â*Â*Â*Â*Â*Â*Â*Â*Â*Â*Â*Â*Â* 10000 * 128/132 * 1 byte/8 bits = 1212.12MB/sec
channel rate usable

*******

8b/10b was likely originally invented to allow the construction of
AC coupled amplifiers for the PHY. It originated on fiber optics,
but also turned out to be convenient for similar situations arising
on high speed wires. (PCI Express is AC coupled. Maybe SATA is too.
It's hard to track down the details if the standards are hidden.)

The coding scheme also allows the construction of out-of-band symbols.
You can have a 10 bit pattern which does not decode to a byte, and
the indication means something in terms of the framing. Perhaps such
a symbol would be a JK.

In this article, the K28.5 would have been popular (for something
I worked on), but I couldn't tell you what now :-) Such things can
be used for serial byte-sync, delimiting the "edges" of a byte, in
a byte stream.

https://en.wikipedia.org/wiki/8b/10b_encoding

Wiki doesn't seem to have a 128b/132b article, but has a high efficiency
section more or less. Implying that maybe 128b/132b is somehow related
to 64b/66b. Using the longer period implies they might be using two
out-of-band symbols in a row to indicate something, and this translates
to "a longer encoding method". Even though it's a trivial extension of it.

https://en.wikipedia.org/wiki/64b/66b_encoding

The ultimate efficiency comes from "scramblers", which use
self-synchronizing
PRBS patterns or so. A scrambler has zero overhead, so one byte in, one
byte
out. Scramblers are used on high rate SONET or SDH. The purpose of a
scrambler
is to remove long sequences of all 1's or all 0's, which would upset
amplification or data recovery (need transitions for clock recovery). The
theory goes, that the "user" of the pipe, doesn't know the scrambling, and
it would be "hard" for an end user to apply the "converse" of the
scrambler,
such that after scrambling, the "feared pattern of all 1's or 0's" occurs.
If you know a scrambler is being used instead of an encoder, you'd take
10000 and divide by 8.

HTH,
Â*Â*Â* Paul


Thanks Paul, I'll try 1212.12MB/s after my time out ends.
Mikek