Almost three years has passed since SandForce introduced its SF2200 series of controllers. Despite well-publicised problems SandForce’s SF2281, in particular, was a radical product; it was one of the first controllers employed by SSD manufacturers to push the SATA 6Gbps connection to its realistic limits.
Wind the clock forward to today and we are still seeing that same SATA connection getting use. And, surprise surprise, three years on it’s enforcing quite the bottleneck to SSD speeds. Yes, controller optimisations and different flash configurations have allowed today’s SSDs to outperform many of their predecessors, but the core, sequential speed aspect of their performance is still limited by the circa-560MB/s cap imposed by the SATA 6Gbps interface.
It is difficult to argue that an updated, faster SATA interface isn’t well overdue. But with early information regarding Intel’s 9-series chipset suggesting that SATA Express will not be provided natively by the upcoming PCHs, it could be left to board manufacturers to deploy a solution for SATA Express connectivity. That looks to be the realistic outcome for the near future, unless current information surrounding Intel’s 9-series chipset proves to be wrong, of course.
Cue Asus’s take on the high-speed SATA Express interface, deployed on an adapted version of the company’s Z87 Deluxe motherboard. Made possible by employing a purpose-built SATA Express controller from ASMedia and by re-routing a number of PCIe connections, Asus’s design could act as an early representation of solutions to come.
We will analyse Asus’s solution and test the performance that an early version of the SATA Express interface is able to provide.
So, what is SATA Express? Taken from SATA-IO’s FAQ regarding the specification, “SATA Express is a section within the new SATA v3.2 specification which defines host and device connectors that support SATA or PCIe. SATA Express provides an ecosystem for client storage in which SATA and PCIe solutions can coexist. PCIe technology enables up to 1GB/s per lane, as compared to SATA at 0.6GB/s. SATA Express includes support for up to two PCIe lanes, or up to 2GB/s.”
SATA Express allows devices to maintain compatibility with existing SATA applications but also make use of the PCIe interface for increased bandwidth and reduced latency. According to SATA-IO, the use of PCIe lanes will allow SATA Express interface speeds of 8Gbps (two lanes of PCIe 2.0, minus overhead) and 16Gbps (two lanes of PCIe 3.0) to become common implementations.
The SATA Express specification states that devices must be able to support both SATA and PCIe. As shown in the block diagram above, data has two ways of flowing through the system; the PCIe route or the SATA route. The route taken will depend upon the attached device. Backwards compatibility is enforced by the SATA route.
In regard to the motherboard-based SATA Express connector, customers can choose the connection type that suits their requirements; SATA Express via PCIe for increased bandwidth from a supported device, and the current-generation SATA connection for presently-available storage drives.
Why not just double the SATA bandwidth, as has been done in previous generations? According to SATA-IO, a 12Gbps SATA interface would be more power hungry than using PCIe lanes and it would take longer to implement than SATA Express. A shorter time-to-market and suggested power savings paved the way for SATA Express.
Utilising the PCIe interface, SATA Express can be set to use up to two PCIe 2.0 or PCIe 3.0 lanes. Minus the encoding overheads, SATA 6Gbps provides a transfer speed of 0.6GB/s (approximately 600MB/s). Compare this to PCIe 2.0 which provides 0.5GB/s (after overheads) per lane and there is already feasibility for an easily obtainable 400MB/s (67%) speed increase using a two-lane SATA Express implementation.
Now focus on PCIe 3.0, which uses the more efficient 128b/130b encoding scheme, and 1GB/s of data can be crammed through a single lane, resulting in a 1.4GB/s (233%) speed increase over SATA 6Gbps for a two-lane SATA Express solution.
The numbers speak for themselves; in one fell swoop, SATA Express has the potential to remove many of the current bottlenecks that SATA 6Gbps is enforcing, allowing storage devices to once again be challenged by an interface’s throughput potential.
Physically, the SATA Express Host plug is essentially a pair of SATA connectors fixed next to a connection carrying additional PCIe lanes. Much of the PCIe connection is fed through the SATA cables, but the extra connector is required to provide two full PCIe lanes.
My first impressions of the connector are that it is cumbersome. Perhaps this is a little harsh given the throughput increase and requirement for backwards compatibility, but it’s similar to what we saw when moving between the USB 2.0 and USB 3.0 headers – a substantial size increase.
How exactly the SATA Express plug will change over time is unclear. Asus’s technical material does state that the SATA Express cable may be subject to change at a later date.