Hacker News new | past | comments | ask | show | jobs | submit | _olwp's comments login

The author seems to be mixing these around randomly without really knowing what they mean. Another example:

"While a single SATA port is limited to 600Gbps, combining four makes for 2.4GBps of bandwidth."

600Gbps * 4 = 2400Gbps = 3GBps

Maybe he thinks a byte is 10 bits or something?

It's also really odd that he's using Bps at all. I've never seen MBps anywhere other than this article. Usually it's Mbps and MB/s.


Since SATA uses 8b/10b encoding, the data rate in bytes/s is actually 1/10th of the raw bit rate. The same applies to earlier PCIe versions. 6Gbps SATA can transfer 600MB/s (ignoring protocol overhead).

I don't really know why it's become standard to publish raw bit rates in bit/s and data rates in bytes/s with error correction taken into account but not protocol overhead, but those are the two kinds of numbers you almost always see quoted nowadays. Raw bit rates at least map pretty directly to clock speed, and I guess protocol overhead must be too variable and too complicated for most people to bother explaining.


2400Gbps = 3GBps

going from "b" to "B" is either 8 or 10 fold. As some of the other comments have noted. SATA uses 10 bits per byte.

so 2400 Gbps = 300 GBps (8 bit)

or 2400 Gbps = 240 GBps (10 bit)


PCI-Express, SAS, SATA, and many other protocols use an 8b/10b encoding — encoding 8-bit bytes in 10-bit words.

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


While the author clearly doesn't have a grasp of the bandwidth limitations of various interconnects, the size of a byte is hardware dependent. The de facto standard is 8 bits but that's just what everyone tends to pick, that's why, for instance, an octet is used to describe a byte sometimes because an octet is 8 bits.


Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: