During the hard drive era, the Serial ATA International Organization (SATA-IO) had no problems keeping up with the bandwidth requirements. The performance increases that new hard drives provided were always quite moderate because ultimately the speed of the hard drive was limited by its platter density and spindle speed. Given that increasing the spindle speed wasn't really a viable option for mainstream drives due to power and noise issues, increasing the platter density was left as the only source of performance improvement. Increasing density is always a tough job and it's rare that we see any sudden breakthroughs, which is why density increases have only given us small speed bumps every once in a while. Even most of today's hard drives can't fully saturate the SATA 1.5Gbps link, so it's obvious that the SATA-IO didn't have much to worry about. However, that all changed when SSDs stepped into the game.

SSDs no longer relied on rotational media for storage but used NAND, a form of non-volatile storage, instead. With NAND the performance was no longer dictated by the laws of rotational physics because we were dealing with all solid-state storage, which introduced dramatically lower latencies and opened the door for much higher throughputs, putting pressure on SATA-IO to increase the interface bandwidth. To illustrate how fast NAND really is, let's do a little calculation.

It takes 115 microseconds to read 16KB (one page) from IMFT's 20nm 128Gbit NAND. That works out to be roughly 140MB/s of throughput per die. In a 256GB SSD you would have sixteen of these, which works out to over 2.2GB/s. That's about four times the maximum bandwidth of SATA 6Gbps. This is all theoretical of course—it's one thing to dump data into a register but transferring it over an interface requires more work. However, the NAND interfaces have also caught up in the last couple of years and we are now looking at up to 400MB/s per channel (both ONFI 3.x and Toggle-Mode 2.0). With most client platforms being 8-channel designs, the potential NAND-to-controller bandwidth is up to 3.2GB/s, meaning it's no longer a bottleneck.

Given the speed of NAND, it's not a surprise that the SATA interface quickly became a bottleneck. When Intel finally integrated SATA 6Gbps into its chipsets in early 2011, SandForce immediately came out with its SF-2000 series controllers and said, "Hey, we are already maxing out SATA 6Gbps; give us something faster!" The SATA-IO went back to the drawing board and realized that upping the SATA interface to 12Gbps would require several years of development and the cost of such rapid development would end up being very high. Another major issue was power; increasing the SATA protocol to 12Gbps would have meant a noticeable increase in power consumption, which is never good.

Therefore the SATA-IO had to look elsewhere in order to provide a fast yet cost efficient standard in a timely matter. Due to these restrictions, it was best to look at already existing interfaces, more specifically PCI Express, to speed up the time to the market as well as cut costs.

  Serial ATA PCI Express
  2.0 3.0 2.0 3.0
Link Speed 3Gbps 6Gbps 8Gbps (x2)
16Gbps (x4)
16Gbps (x2)
32Gbps (x4)
Effective Data Rate ~275MBps ~560MBps ~780MBps
~1560MBps
~1560MBps
~3120MBps (?)

PCI Express makes a ton of sense. It's already integrated into all major platforms and thanks to scalability it offers the room for future bandwidth increases when needed. In fact, PCIe is already widely used in the high-end enterprise SSD market because the SATA/SAS interface was never enough to satisfy the enterprise performance needs in the first place.

Even a PCIe 2.0 x2 link offers about a 40% increase in maximum throughput over SATA 6Gbps. Like most interfaces, PCIe 2.0 isn't 100% efficient and based on our internal tests the bandwidth efficiency is around 78-79%, so in the real world you should expect to get ~780MB/s out of a PCIe 2.0 x2 link, but remember that SATA 6Gbps isn't 100% either (around 515MB/s is the typical maximum we see). The currently available PCIe SSD controller designs are all 2.0 based but we should start to see some PCIe 3.0 drives next year. We don't have efficiency numbers for 3.0 yet but I would expect to see nearly twice the bandwidth of 2.0, making +1GB/s a norm.

But what exactly is SATA Express? Hop on to next page to read more!

What Is SATA Express?
POST A COMMENT

131 Comments

View All Comments

  • Kristian Vättö - Thursday, March 13, 2014 - link

    In theory two SSDs in RAID 0 should achieve twice the bandwidth of one. In practice that's almost true and you should expect maximum bandwidth of around ~1060MB/s (vs 550MB/s with one SSD). Reply
  • Exodite - Thursday, March 13, 2014 - link

    External power, and we might get it as a *!*%?1* molex?

    Wake me up when we get to a usable revision.
    Reply
  • grahaman27 - Thursday, March 13, 2014 - link

    My thoughts exactly. I like sata, but this revision looks like a mess! Reply
  • invinciblegod - Thursday, March 13, 2014 - link

    Why did they do translation between pci-express and sata in the first place? Was it because in the event of a pci-super-express SATA can just make new chips and the current hard drives would be compatible (like from PCI to PCI-Express)? Reply
  • npaladin2000 - Thursday, March 13, 2014 - link

    I wonder if M.2 is the better solution here, and could be adapted to serve the enterprise niches that SATAe is aiming for? After all, it provides the direct PCIe interface, and also provides power and is a small connector. Reply
  • SirKnobsworth - Thursday, March 13, 2014 - link

    For bigger, higher performance SSDs I think that actual PCIe cards are going to remain dominant. M.2 provides an x4 interface but the highest performance SSDs will have no trouble maxing that out. I think we may have already seen x8 cards demoed but I'm not sure. Reply
  • Veramocor - Thursday, March 13, 2014 - link

    Could a internal motherboard USB header be used instead? USB 3.1 does about 10 Gpbs (with overhead) and would supply power. The cabling would be much cleaner.

    Or an internal Thunderbolt 2.0 connection does 20 Gbps. Imagine a single internal wire supplying both power and data instead of the mess this looks like. It would beat the speed of everything save PCIe 3.0 x4.
    Reply
  • Kristian Vättö - Thursday, March 13, 2014 - link

    USB has massive overhead. USB 3.0 manages only around 280MB/s in real world, whereas the theoretical maximum is 625MB/s (5Gbps). That is over 50% overhead! Assuming similar overhead, USB 3.1 would do 560MB/s, which is inline with SATA 6Gbps. However, USB uses CPU a lot more, making it very inefficient.

    As for Thunderbolt, it's basically just cabled PCIe. The difference is that TB requires expensive controllers and cabling to work, whereas PCIe alone is much cheaper.

    I think SATA-IO just needs to get back to the drawing board and get rid of the external power requirement. PCIe supplies power, so there really shouldn't be need for more than that.
    Reply
  • phoenix_rizzen - Thursday, March 13, 2014 - link

    Just make a PCIe x2 connector, stick it on a cable, and plug it between the drive and the mobo PCIe slot.

    Then it's up to mobo makers to decide whether to just add PCIe x2 slots in the normal space (for use with either PCIe add-in cards or SATAe drives) or to add dedicated PCIe x2 slots over near the normal SATA slots for use with only SATAe drives.
    Reply
  • SirKnobsworth - Thursday, March 13, 2014 - link

    Why does it need to be attached with a cable? There are already PCIe form factor SSDs. If that takes up too much space then provide M.2 sockets on the motherboard. M.2 cards provide less area than 2.5" devices but that shouldn't be an issue for smaller SSDs, beyond which you really want more lanes anyway. Reply

Log in

Don't have an account? Sign up now