Options for Solid State Storage
How Does an Embedded Systems Designer Select the Right Storage Solution?
With plentiful SSD standards and form factors to choose from—some driven by high-volume system designs—how do we go about homing in on the right choice to meet the often very different needs of embedded devices?
GARY DROSSEL, VIRTIUM
Page 1 of 1
One of the truest lines in the high technology and embedded systems industries is, “Standards are great—everybody ought to have one.” This line rings especially true for solid state drives (SSDs). The continued evolution of NAND flash component density has made explosive SSD capacities a reality from a growing list of small form factors. That is because SSDs are not constrained to traditional 3.5”, 2.5” or 1.8” hard drive form factors and have, therefore, been developed in a plethora of shapes and sizes.
While it is important to have a vision for the future, it is also wise to remember the past. CompactFlash has been the true workhorse for embedded systems over the past ten years. It was a solid state storage solution that truly did it all. It connected to standard Intel or AMD chipsets in TrueIDE or PATA SSD mode. It connected to Freescale or Cavium processors, Altera or Xilinx FPGAs or custom ASICs via PCMCIA memory or I/O modes. And, it was “ejectable.”Now, the move by embedded systems to serial storage interfaces with higher speeds and reduced pin-counts has put this once prized thoroughbred out to pasture. The reality today is that there is no “one size fits all” SSD technology or form factor poised to take the place of CompactFlash, which will have an impact on future embedded systems designs.
So, due to the long product lifecycle requirements for embedded systems, how does a design engineer select an SSD that will be available for many years, that supports cost-effective and widely adopted sockets and connectors, and is compatible with storage interfaces that are universally deployed?
Storage decisions only come after the main chipset/FPGA/microcontroller and software architecture decisions have been made. Designers typically gravitate to the storage interfaces that are available “for free,”—that leverage their experience in writing previous generations of code. While non-Intel or AMD-based designs may include Serial Advanced Technology Attachment (SATA), regardless of chipset chosen, one or more lanes of PCI Express (PCIe), USB and SD/SPI/eMMC are almost always available. Intel- and AMD-based designs support SATA 3G (SATA II) as a minimum and most support SATA 6G (SATA III). The decision of which interface to choose usually comes down to software architectures and familiarity.
OEMs who have applications based on previous generations of code for ATA/ATAPI devices most often find the transition to SATA to be optimal. If the SATA interface is not available, the most common choices are PCIe, USB and SD. PCIe requires the designer to select a driver. Advanced Host Controller Interface (AHCI) is the standard driver most widely used, as it is the host side of SATA devices. Non-volatile Memory Express (NVMe) is gaining traction as an SSD-specific standard. However, since most embedded systems are not able to take advantage of the tens of thousands of IOPS that an NVMe/PCIe solution can offer, many embedded designers would likely decide to make trade-offs—either to use “easy, familiar” SD for removable cards or embedded USB (eUSB) for fixed devices.
Comparing SSD Form Factors
The viability of NAND flash-based technology in computing applications has been enabled by quantum leaps in SSD controller technology that manages NAND as storage media. This viability has given system designers mechanical degrees of freedom that simply were not available when disk drives were the only solution. Where before it was a discussion of 3.5”, 2.5” or 1.8” HDD form factors, now there is an abundance of options available for almost any interface. Choose SD cards and there is a decision between standard, mini and micro form factors. Choose USB and you have 10-pin high and low profile, 9-pin or USB keys. Choose PCIe and there is everything from miniCard to full height, full length cards with multi-lane support. Even SATA SSDs have more than seven “industry-standard” form factors including 2.5”, 1.8”, MO-297 or Slim SATA, MO-300 or Mini-SATA (mSATA), CFast, SATA Disk on Module (SATA DOM) and even soldered-down BGA configurations. This doesn’t count form factors customized for ultra-small notebook computers.
In many instances, the selection of an appropriate SSD solution is not obvious from the broad selection of options embedded developers have today. A good approach is to use a process of elimination. So, where to start? The easiest scenario is to determine the need for ejectability. CompactFlash supported it and if it is still needed, there are really two options.
The first choice with the most leverage from consumer electronics is Secure Digital (SD) cards. They are smaller than CompactFlash and their sockets are plentiful and inexpensive. If booting is required, the motherboard must support it, and not all of them do. SD cards are plentiful if all you need is commercial grade, multi-level cell (MLC)-based cards. It may be more difficult to find a reliable supply of “industrial SD” cards.
For OEMs that want to stay in the SATA world, the best choice is CFast (Figure 1). CFast is the CompactFlash Association’s (CFA’s) solution that supports the SATA 3G (SATA II) interface. In April, the CFA announced its intention to create CFast 2.0 that will support a SATA 6G—SATA III—interface. From a motherboard real estate perspective, CFast is almost a drop-in replacement for CompactFlash. The connector and sockets are different, however, and since CFast has never really caught on in the consumer electronics world, there is little leverage of mass-produced sockets and connectors like there is for other form factors. That said, there will be little difficulty in finding industrial CFast cards, as they are for the most part designed for embedded systems.
CFast is the most straightforward alternative for embedded systems that had previously used CompactFlash. Similar to CompactFlash, CFast SSDs can be either fixed or removable devices, but compared to switching to SD cards, most ATA-based software can be directly leveraged into new SATA 3 Gbit/s CFast designs.
Another potential choice for ejectability is 1.8” SATA. While 1.8” is thought to be a dying—or dead—form factor for hard drives, many companies are turning to ejectable 1.8” SATA SSDs as an alternative to 2.5” form factors for serviceability issues. At a 5 mm thickness, the 1.8” form factor is also suitable for 1U server and blade applications.
If the requirement is for fixed storage and size is not an issue, then the choice of a 2.5” SATA SSD is a no-brainer. Any applications that require a 3.5” form factor would be best off incorporating a 2.5” SATA SSD with an adapter. The rest can incorporate an SSD with the same form factor as the roughly 400 million 2.5” HDDs shipped each year. Depending on the capacity and endurance required, SSD can be a cost reduction or a ruggedized enhancement to hard drives.
For applications that require sizes smaller than 1.8”, the decisions get a bit more complex. Soldered-down BGA solutions are typically the smallest, densest solutions. Most are targeted for handheld or tablet devices that are only expected to have a three-year product life under a light workload. They can most likely be eliminated as a choice for designs that will be in production for five or more years, where issues such as requalification costs, upgrades and service need to be addressed without replacing the entire motherboard.
A more long-term storage approach calls for socketed solutions such as Slim SATA (MO-297), mSATA (MO-300) or customized solutions that include SATA DOM, SATA DIMM and SATA GUM (a non-industry-standard term for the gumstick-looking SSD used by at least one computer manufacturer). These solutions are upgradeable and serviceable and offer multi-vendor support.
Slim SATA (Figure 2) is a good choice for higher capacity systems that need form factors smaller than 1.8” SSD. It integrates a standard SATA connector in a module that measures 54 mm x 39 mm x 4 mm. The 8,424 mm3 volume is roughly 15% that of a 9.5 mm, 2.5” SATA SSD.
Virtium’s Slim SATA (MO-297) SSDs are an attractive solution for embedded applications that implement a standard SATA 3 Gbit/s socket but require a form factor with a volume (54 mm x 39 mm x 5 mm) that is roughly 15% that of a 2.5” SSD.
In addition, mSATA is winning the standards war in ultrabooks that have committed to an SSD; but as capacity needs change, suppliers begin to develop ultrabook-specific form factors. There are several companies discussing a new form factor, cleverly called the next generation form factor or NGFF, that is based on the same PCIe miniCard socket and clamp that is deployed not only for mSATA, but also for Wi-Fi and other PCIe-based modules. OEM designers will not go wrong choosing mSATA or its half-size cousin for small, modular designs.
For USB-based fixed devices, the market has spoken and embedded USB, or eUSB has won. That said, while the USB command set and protocol is standardized by the USB-Implementers Forum, it is important to note that eUSB has no specific industry standard associated with the form factor, so be careful on mechanical dimensions. Although there are multiple eUSB iterations, the most common connector scheme by far is a 10-pin eUSB (two rows of five pins each) in a 2.54 mm standard profile or 2 mm low profile. The 10-pin eUSB provides the best opportunity for multi-sourcing but some vendors also offer a 9-pin option.
Wherever possible, embedded system engineers want to incorporate high-volume components into their design for cost and multi-sourcing reasons. When discussing which embedded SSD form factors will “win,” it is necessary to understand what is driving their adoption. Ultrabooks, notebooks and tablets are the biggest drivers of small form factor SATA solutions.Small form factors in this instance are defined as 2.5” or smaller.
Hard drive manufacturers generally sell 9.5 mm and thicker 2.5” drives into notebooks, and they have recently made inroads into the enterprise as well. Some have made the shrink to 7 mm for ultrabooks, a smaller, lighter, thinner and low power version of laptops. They are being pushed by ultrabook manufacturers to reach a 5 mm thickness, but HDDs in this lower profile will most likely not be available for a few years.
Ultrabook vendors that are 100% committed to SSD find mSATA (MO-300), solder-down BGA or customer-specific form factors as better SSD options. Solder-down BGA solutions are the most space-efficient, and are probably fine for consumer electronics devices with a projected three-year life. However, the socket-based SSD solutions are a better choice for embedded systems that need to be deployed for five to ten years or more.
SD cards are obviously driven by the consumer electronics market. They are the memory expansion card of choice, but they are taking a real hit from Embedded MultiMedia Card (eMMC) and other solder-down solutions in the high volume smart phone space. Industrial SD cards are finding use in VMware load applications and as memory cards in industrial programmable logic controllers.
CFast, Slim SATA, 1.8” and eUSB SSD solutions are largely being driven by the embedded and server markets. While CFast has gained little traction in consumer electronics, it has become a viable solution for industrial automation customers as the most straightforward SATA alternative to CompactFlash. Slim SATA is used for primary storage as a space-optimized replacement for 2.5” hard drives. 1.8” SATA SSDs are replacing 1.8” hard drives and are being used as high-density, easier-serviced SSD alternatives to 2.5” in hot-swap carriers in 1U and blade applications. eUSB SSDs have won the battle for primary storage in networking line cards and other Cavium, Freescale, FPGA or custom ASIC applications. eUSB is also used in servers for VMware loads and as a system diagnostic and event logging tool.
Embedded Systems Need Embedded SSDs
With the plethora of SSD shapes and sizes, the selection of an appropriate SSD solution is not obvious from the broad selection of options embedded developers have today. There is no one size fits all approach, unfortunately, when it comes to embedded SSDs. The decision is largely system dependent based upon other design choices such as the main chipset, FPGA, microcontroller and software architecture, plus which storage interface will be used.
While the argument wasn’t presented here, the discussion about how to select the “right” SSD solution for embedded systems must also include single-level cell (SLC) versus MLC-based NAND flash. The process geometry evolution of NAND makes it necessary to analyze the reliability factors associated with the move from SLC NAND flash-based SSDs to next-generation SSDs based on MLC NAND.
For SATA-based systems, if the system can handle it, the best solution that maintains hard drives as an option is the 2.5” form factor. CFast is a good ejectable solution that offers the most efficient path from CompactFlash, and 1.8” SATA SSDs make sense for larger systems with higher capacity requirements. For newer embedded applications where small size is a concern, designers can turn to Slim SATA (MO-297) or mSATA (MO-300). For systems that require a USB interface, the most widely deployed is a 10-pin embedded USB. While the task seems daunting, there are obviously excellent embedded SSD form factors to do the job—form factors that specifically meet embedded system workload, usage model and longevity requirements.
Rancho Santa Margarita, CA.