Solid State Drives (SSD)
The performance of contemporary central processors, which determines the computing capacity of PCs, significantly exceeds the performance of traditional hard disk drives (HDD). As a result, in many cases the data storage subsystems become the bottleneck hindering an increase on the capacity of computers in general. The use of expensive RAID-based solutions only makes it possible to partially solve the problem of the imbalance in the performance of processors and HDD-based storage device subsystems. The imbalance in the performance of processors and HDDs will only increase in the future, and we will inevitably reach a point where computer performance in many applications will already cease to be determined by the processor performance, and will be determined by the weakest link—the data storage subsystem. For example, since 1996 the average performance of processors has increased by a factor of 175, while the performance of HDDs (meaning the selective reading of 20 KB blocks) has only increased by a factor of 1.3 .
Today, the only way to solve this problem is to switch from HDDs to solid state drives (SSD) based on flash memory. Such disks are capable of providing a performance level fully adequate to the performance of modern multi-core processors.
Solid state drives or SSD offer much higher data transfer rates and response time an order of magnitude shorter than classical hard disk drives. As a result, a PC with a solid state drive offers the user truly fast response to normal actions like loading an operating system, launching applications, or opening files.
High performance is not the only advantage of SSDs. They are also absolutely silent, since they do not contain moving parts, and consume much less electric power than HDDs. For example, the power consumption of a normal 2.5-inch HDD is roughly 2.5–3 W in active mode and about 0.85–1 W in idle mode. If an HDD is not active, after a while (depending on the settings) it will switch to low power consumption mode (Standby or Sleep mode), and upon switching out of this mode it takes about 1–2 sec to spin up. The typical power consumption of an SSD disk (not a server disk) is about 0.15 W in active mode and 0.06 W in idle mode. The switch to the low power consumption mode from the active mode is automatic if the disk is inactive for 25 ms. We will note that, for automatic switch of an SSD disk to the low power consumption mode, it is necessary to activate the Device Initiated Power Management (DIPM) function in the register, since the Host Initiated Power Management (HIPM) function is set by default, where the switch to the low power consumption mode is controlled not by the disk, but by the operating system.
The appearance of such a breakthrough technology was appreciated by many users. The demand for consumer level solid state drives has increased dramatically, and more and more new companies have begun manufacturing SSDs. Dozens of manufacturers offer hundreds of SSDs with different specifications, and it is very difficult to find a suitable solution for each specific case in such a variety, especially without thorough knowledge of all details.
Form-factors and interfaces
The first and most noticeable distinction between solid state drives available in the market is that they may have different external designs and may be connected to the system via different interfaces using radically different data transfer protocols.
SSDs with the SATA interface are the most widespread. It is exactly the same interface used in classical mechanical hard disk drives. Therefore, the majority of SATA SSDs look similar to mobile HDDs.
SSD drives with the SATA interface have become a unique type of successors to HDDs, which contributes to their universal use and the widest compatibility with existing platforms. However, the contemporary version of the SATA interface is designed to provide a maximum data transfer rate of only 6 Gbps, which seems beyond the limit for mechanical hard disk drives, but not for SSDs. Therefore, the performance of the most powerful SATA SSD models is determined not so much by their capabilities as by the interface bandwidth. This does not especially hinder mass solid state drives from achieving high rates, but the most powerful SSD models for enthusiasts try to avoid the SATA interface. Nevertheless, SATA SSD is the most suitable option for a contemporary general-use system.
In those cases where the bandwidth offered by a SATA interface is insufficient, it is possible to turn to SSD drives with the PCI Express interface. Depending on the protocol version and the number of lines used by the drive for data transfer, the bandwidth of this interface may be five times the capacity of the SATA. The most efficient elements are usually used in such drives, and they significantly exceed more common SATA solutions in terms of rate. It should be noted that SSD drives with the PCI Express interface are significantly more expensive. Therefore they are often used in the most expensive high-performance systems.
Drives with the PCI Express interface operating under the NVMe protocol have recently become popular. This is a new protocol for data storage devices, which additionally increases the speed of a system when interacting with a fast disk subsystem. Due to its optimisation, this protocol actually is the most efficient, but at present NVMe solutions must be treated with caution: they are only compatible with the newest platforms and are only efficient in new versions of operating systems.
While the SATA interface bandwidth becomes insufficient for high-rate SSD models, and PCIe drives are bulky and require a separate full-size slot for installation, drives designed in M.2 form factor are gradually taking the stage. It appears that M.2 SSDs have a chance to become the next common standard, and they will be no less popular than SATA SSDs. However, it must be kept in mind that M.2 is not yet another new interface, but only a specification of a standard size of boards and wiring interconnections of the connector required for them. M.2 SSDs operate using conventional SATA or PCI Express interfaces: both options can be used depending on the specific design of the drive.
M.2 boards are small boards with elements soldered on them. The M.2 slots required for them can be found on the majority of modern motherboards today, as well as in many new laptops. Since M.2 SSDs can also operate via the PCI Express interface, such M.2 drives are the most interesting from the practical viewpoint. However, the variety of such models is limited at present.
Types of flash memories and reliability of drives
The flash memory determines the consumer properties of SSDs: their performance, reliability and price.
The only difference between various types of flash memory is the number of data bits stored in each NAND cell, and the memories are divided into three types according to this parameter: SLC (Single Level Cell), MLC (Multi-Level Cell), and TLC (Three Level Cell). However, manufacturers are presently developing new approaches to cell arrangement and increasing their reliability in semiconductor technologies, so the situation has become much more complex.
Let us consider the main flash memory options used in current solid state drives for general users.
SLC NAND. This is the oldest and simplest type of memory. It stores one data bit in each flash memory cell and thus is a fast and amazing rewriting resource. The only problem is that storage of one data bit in each cell expends the transistor budget quickly, and this type of flash memory becomes very expensive. Therefore, SSDs based on such memory have not been produced in a long time, and they are simply not available in the market.
MLC NAND is a reasonable alternative to SLC-memory with higher data storage density in semiconductor NAND chips, and lower price. This memory stores two data bits in each cell. The operating speed of an MLC memory logic structure remains rather good, but the endurance decreases to approximately three thousand rewriting cycles. Nevertheless, MLC NAND is used today in the majority of high-performance solid state drives, and its reliability is quite sufficient for manufacturers of SSD not only to give a five-year or even a ten-year warranty for the products, but also to guarantee that the entire drive can be rewritten several hundred times.
For those applications where the intensity of write operations is very high, for example, for servers, SSD manufacturers are collecting designs based on a special eMLC NAND. In terms of the operation principles it is a full equivalent to MLC NAND, but with increased resistance to constant rewriting. This memory is manufactured from the best, perfect semiconductor chips and can withstand approximately three times higher the load than conventional MLC memory without any problems.
However, the drive to reduce prices of mass produced products is forcing manufacturers to switch to memory which is cheaper than MLC NAND. TLC NAND, flash memory in which each cell stores three data bits, is used quite often in recent generation budget drives. This memory is about 1.5 times slower than MLC NAND, and its endurance is sufficient to rewrite data on it about one thousand times until the semiconductor structure degrades.
Nevertheless, even such shaky TLC NAND can be found rather often in today's drives. There are already more than a dozen SSD models based on this memory. The secret of the viability of such solutions is that manufacturers add a small internal cache based on high-rate and highly reliable SLC NAND. This solves both problems—related both to performance and reliability—at once. As a result, SSDs based on TLC NAND have rates sufficient for saturation of an SATA interface, and their endurance allows manufacturers to give a three-year warranty for the finished products.
In the race to lower product cost, manufacturers are seeking to compact data in flash memory cells. This has caused a change to MLC NAND and the extensive use of TLC memory drives which has now begun. The industry has now found another way to increase the data storage density in semiconductor chips, namely, to change them to a three-dimensional configuration.
While in classical NAND memory the cells are located exclusively on a plane (in the form of a planar array), in a 3D NAND semiconductor structure the third dimension is used, and the cells are now located not only along the X and Y axes, but also in several tiers, one above another. This approach makes it possible to solve the main problem—the data storage density in such a structure can be increased not by increasing the load on the existing cells or by miniaturisation of them, but by simply adding additional layers. The issue of flash memory endurance is successfully resolved in 3D NAND. The three-dimensional configuration makes possible to use better manufacturing technologies which provide a more stable semiconductor structure on the one hand, and eliminate mutual interference of cells on the other. As a result, the service life of a three-dimensional memory can be increased approximately by an order in comparison with planar memory.
In other words, the 3D NAND three-dimensional structure is ready to create a real revolution. The only problem is that manufacturing such memory is slightly more difficult than conventional memory, and therefore its production startup is a very drawn out process. As a result, only Samsung is engaged in smooth-running mass production of 3D NAND at present. Other NAND manufacturers are still only preparing to launch series production of three-dimensional memory.
As to the Samsung three-dimensional memory, it currently uses a 32-layer design and is promoted under the proprietary V-NAND marketing brand. It is classified as MLC V-NAND and TLC V-NAND according to the type of cell organisation in the memory. Both are three-dimensional 3D NAND, but each individual cell stores two data bits in the former case, and three bits in the latter. Although the operating principle is similar in both cases to conventional MLC and TLC NAND, due to the use of mature technical processes its endurance is higher, and therefore, SSDs based on MLC V-NAND and TLC V-NAND are slightly better in terms of reliability than SSDs with standard MLC and TLC NAND.
Speaking of the reliability of solid state drives, it must be kept in mind that it is only indirectly dependent on the service life of the flash memory used in them. As practice shows, modern consumer SSDs, assembled using high-quality NAND memory of any type, are capable of withstanding the writing of hundreds of terabytes of data. This by far fulfils the requirements of the majority of PC users. Storage drive failure when the memory service life is exhausted may be connected only to SSD use under a much too intensive load for which it was not actually initially designed. In most cases, SSD failures occur for totally different reasons, for example, due to power supply interruptions or errors in their microprogramme.
Therefore, together with the type of flash memory, it is very important to also pay attention to what company manufactured a particular drive. The largest manufacturers have more powerful engineering resources and care more about their image than small companies, which are forced to compete with them primarily in pricing. Therefore, the SSDs of large manufacturers are generally more reliable: they use known high-quality components, and thorough debugging of the microprogramme is one of the major priorities. This is also confirmed by practice. The number of warranty claims (according to public statistics of one European distributor) is less for SSDs manufactured by larger companies.
SSD Controller 
Obviously, SSDs demand more perfect control mechanisms than hard disk drives. This is not simply a stigma, and HDDs really deserve more respect than they have now. There are mechanical problems associated with balancing of multiple reading-writing by heads at a distance of only one nanometre from a plate rotating at rather high speed. The fact that HDDs perform the complex task of implementing new methods of writing to magnetic carriers and sell one memory gigabyte for only 3–5 cents is simply incredible.
SSD controllers are in a class alone. They are often supplied with DDR3 memory pool to help NAND deal with itself. Many disks also include single-level cache cells, which operate as buffers, improving disk performance by allocating fast NAND memory for reading/writing of cycles. Since NAND memory in SSDs is very often connected with the controller by means of a series of parallel memory channels, the disk controller executes stabiliser functions in a high-performance memory array. SSD do not employ RAID internally, but the wear levelling, garbage collection, and SLC cache management technology has analogues with HDD.
Some disks also use data compression algorithms to reduce the total number of write operations and to prolong the drive's lifetime. An SSD controller corrects single-bit errors, and processing algorithms are becoming more and more complex over time.
The majority of NAND memory performance is determined by the basic controller, and the companies are not ready to open the veil of secrecy from their equipment, so as not to give competitors an advantage.
Typical SDD controller
The market for consumer SSDs is very young, and no consolidation has occurred in it yet. Therefore, the number of manufacturers of solid state drives is very large—there are at least a hundred of them. But the majority of them are small companies, which have neither their own engineering teams, nor semiconductor manufacturing, and they are actually engaged only in the assembly of designs from ready-made components bought from third parties and their marketing support. Naturally, SSD drives released by such "assemblers" are inferior to products of real manufacturers, which invest huge amounts of money in development and manufacturing. Therefore, for a rational approach to selection of solid state drives, it is worth paying attention only to design solutions released by market leaders.
There are only few names among such "pillars", which hold the whole market of solid state drives together. First of all, there is Samsung, which presently owns a very impressive 44% market share. In other words, almost every other SSD sold is manufactured by Samsung. And such success is not accidental at all. The company not only independently manufactures flash memory for SSDs, but also uses no third parties in design and manufacturing. Hardware platforms designed from start to finish by its own engineers and manufactured by its own facilities are used in its solid state drives. As a result, advanced Samsung drives are often distinguished from competing products by their technological advancement; they use advanced designs that appear in the products of other companies significantly later. For example, drives based on 3D NAND are currently available only in Samsung`s product range. Therefore, enthusiasts who like technical novelty and high performance should pay attention to SSDs of this company.
The second-largest consumer level SSD manufacturer is Kingston, with approximately a 10% market share. Unlike Samsung, this company is not engaged in independent manufacturing of flash memory and does not develop controllers, but it is guided by proposals of third-party manufacturers of NAND memory and solutions of independent engineering teams. However, this allows competing with giants like Samsung: wisely selecting partners in each specific case, Kingston offers a very diverse range of products which meet the requirements of various user groups well.
Another group of SSD drive manufacturers is SanDisk and Micron, which use the Crucial trademark. Both of these companies have their own flash memory fabrication facilities, which enables them to offer high quality SSDs with an excellent combination of price, reliability, and high-rate performance. Importantly, in creating their products, these manufacturers rely on cooperation with Marvell—one of the best and largest developers of controllers. This approach enables SanDisk and Micron to steadily gain rather high popularity of their products—their share in the SSD market is 9% and 5%, respectively.
Intel should be also noted. It independently manufactures flash memory and has an excellent engineering team capable of designing very interesting SSDs. However, Intel concentrates primarily on development of solid state drives for servers, which are designed to withstand intensive loads.
The TRIM function was specially developed to maintain the performance of SSD drives at the maximum level over their entire lifetime. TRIM was included in the standard functions of the operating system.
TRIM is an exceptionally useful function (one of the SATA protocol commands), which informs the OS about data units on the SSD that are no longer needed (due to file deletion or carrier formatting), and can be used for writing. TRIM collects and recycles "garbage", thus accelerating write operations and providing more uniform wear of storage cells.
Distinction of file processing between conventional HDD and SSD drives.
All modern file systems were developed for data storage on HDD. Their processing is performed as follows: For example, we need to write a file to a disk. The system saves it to a cluster (cell) on the disk and writes the coordinates of this file on a special address map (master file table, MFT, which is also stored on this disk) and obtains file access, if necessary. The MFT informs the system of the exact location of the clusters with the required data. If it is necessary to delete this file, the system simply deletes its address from this table, without affecting the source. During subsequent data writing, new files are overwritten in clusters over old (deleted) ones.
Such a scheme is not suitable for advanced SSDs, because they are based on flash memory, which does not allow writing new data to a cell with a file in it (even if the record of it was deleted in the MFT). Thus, when saving data to an occupied cell, the system has to execute the procedure in several stages:
First—copying of old data from the cell to cache;
Third—overwriting of old data with new data;
Fourth—data writing to SSD cell.
If the cell is empty, only one stage, the last one (writing) is executed. We thus see that the write rate to empty cells of SSDs is much higher, than to occupied cells.
Conclusion: under such conditions, the operating speed of SSDs will decrease significantly over time because of the need for preliminary erasing of cells with outdated data just before writing the new data.
The TRIM command deletes data from the storage cell when the record of it is deleted from the MFT.
If the operating system and SSD disk support the TRIM command, then when a file is to be deleted from the disk, the OS sends the TRIM command to the disk and lets it know that data from a certain set of pages may be rewritten, i.e. the corresponding memory pages are marked to be deleted and can be used for Garbage Collection. It is important to note that the TRIM command in itself does not lead to physical deletion of data. The advantage of the TRIM command is that it enables increasing the number of blocks containing pages marked to be deleted and thus increasing the efficiency of the Garbage Collection procedure during block selection with the greatest number of pages marked to be deleted. The TRIM command thus promotes an increase in disk performance, minimising overwriting during data migration. In addition, use of the TRIM command enables reduction of the number of data migrations in Wear Levelling  procedure.
Conditions necessary for TRIM operation
- Availability of SSD supporting this function
- Operating system, not older than Windows 7, Linux. Kernel of 2.6.33 version and newer is required.
- Active interaction mode: AHCI
- Installed Microsoft Storage (MSAHCI) driver
- The TRIM operation is not supported in RAID configurations
- Sometimes TRIM does not work, if the System Recovery function is enabled
SSDs store data in flash memory cells, grouped (in MLC SSD) in "pages" (usually by 4 KB each), which, in turn, are grouped in blocks (usually 128 pages or 512 KB totally) [3, 4]. Cells of NAND-flash memory may be directly written only if they are empty. If they store data, contents of cells should be deleted before new data is written to them. The write operation in SSD drives may be performed only for pages; however, because of hardware constraints, the delete command is always executed for the entire block . As a result, writing to SSD carrier is performed very quickly as long as there are blank pages, but it is considerably slowed down if it is necessary to delete previously written pages. The process of rewriting initiates the read-erase-modify-write cycle: the contents of the entire block must be saved to cache before it can be deleted from the drive, overwritten data is modified in cache, and only after that the entire block (with the refreshed page) is written to the drive. This phenomenon is known as write amplification .
Methods used to increase performance of SSD disks
The disadvantage of an SSD disk is that its performance (writing rate) decreases over time. We will recall that this is because the number of empty blocks which can be used for data migration decreases as the disk is filled.
However, the writing rate may be increased by a forced increase in the size of the space area (due to reduction of the disk area available for writing), i.e. by means of a forced increase in the number of memory units applied for data migration.
Intel gives the following data for its new disks X25-M of 160 GB size. If the disk (previously used) is used for random operations (read, write) with data units of 8 KB in size at 2:1 ratio of read and write operations, and all available space is used for writing, i.e. all 160 GB (default size of space area), then we will have performance of about 1,400 IOPS. If the space available for writing is reduced to 96 GB, thereby increasing the space area size, performance will increase up to 8,300 IOPS. Performance will increase to 5,500 IOPS when the space used is reduced to 128 GB, and up to 3,500 IOPS when it is reduced to 144 GB.
Space area size may be adjusted to increase performance of random writing, if a logic partition is created on the disk with size less than the physical size of the disk. In this case the space which is not used for the logical partition will automatically become the space area of the disk. It should be noted that this method is applicable only for new disks, where no logical partitions were created before. If a logical partition as large as the entire disk was originally created on the disk, and it was used previously, then creation of a new logical partition will not lead to the expected results. In this case the disk must be erased in advance, i.e. all memory units must be deleted. The normal formatting operation thus does not always help (depending on the operating system, SSD disk model, and disk firmware version), therefore sometimes it is necessary to use special utilities to erase disks.
Another method used to improve the performance of SSD disks during write operations consists in periodic execution of the Garbage Collection procedure, i.e. to erase from time to time the memory units of pages marked to be deleted, thereby increasing the number of empty blocks.
Specialised utilities may be used for this procedure (for example, wiper.exe, which is delivered with some models of SSD disks or can simply be downloaded from the Internet, or the corporate utility to optimise disk performance), which scan the disk and delete the pages marked to be deleted from it.
It is also generally possible to delete all data blocks from the disk and actually to restore the disk to the initial state, i.e. to make a new disk (not used earlier) from an already used disk. HDD Eraser utility (launched in DOS) can be used for this purpose.
Another approach consists in transferring the task of disk erasing of "garbage" to the operating system and the disk itself. A special TRIM command is intended for this purpose.
High-rate performance and prices
Obviously, it is necessary to select from NAND of SSD models offered by the best manufacturers based on V-NAND or MLC (Crucial, Kingston, Samsung, or SanDisk).
There is a clear segmentation in today's SSD market: the products offered belong to the bottom, average, or top level, and their price, performance, and terms of warranty service directly depend on it. The most expensive solid state drives are based on the highest performance hardware platforms and use the fastest flash memory of the highest quality; cheaper solid state drives are based on incomplete platforms and a simpler NAND memory. Middle level drives are characterised by manufacturers' attempts to maintain a balance between performance and price.
As a result, budget drives sold in shops offer the specific price at the level of $0.3–0.35 per gigabyte. Middle level models are more expensive, costing $0.4–0.5 per gigabyte. Specific prices of flagship SSDs may reach $0.8–1.0 per gigabyte.
Solutions of the upper price category, which are aimed primarily at enthusiasts, are high-performance SSDs that use the PCI Express bus to connect to the system, which does not limit the maximum bandwidth during data transfer. Such drives may be in M.2 form-factor or PCIe-boards and provide rates many times exceeding the high-rate performance of any SATA drive. They are based on specialised Samsung, Intel, or Marvell controllers and the highest quality and the fastest memory of MLC NAND or MLC V-NAND types.
SATA drives connected using an SATA interface are in the medium price segment; however, they are thus capable of using its (almost) entire bandwidth. Such SSDs can use various controllers developed by Samsung or Marvell and various high-quality MLC or V-NAND memories. However, their performance is generally almost identical, since it depends more on the interface than on the power of the drive internals. Such SSDs stand out against cheaper solutions not only with their performance, but also with the expanded warranty, for five or even ten years.
Budget drives represent the most numerous group, which includes quite a variety of solutions. However, they also have common features. Controllers used in inexpensive SSDs, usually have a cut-down level of parallelism. Besides, most often these are processors created by small engineering teams like Phison, Silicon Motion, or JMicron, but not by globally renowned design teams. The performance of budget drives is naturally poorer than that of higher-class solutions, which is especially notable during random operations. Besides, flash memory drives of the lower price range do not belong to the highest level either. They are usually cheap MLC NAND manufactured according to simple manufacturing standards, or even TLC NAND. Therefore, the warranty periods for such SSDs are reduced to three years; the declared rewriting life is significantly lower as well.
The most vulnerable point of SSD disks is random writing operations and the decreased performance of SSD disks during operation, i.e. the performance of a new disk (not used yet) and an already filled disk (deletion of files does not always mean their physical removal from disk memory units) may differ significantly.
It is possible to partially solve the problem of reduced performance during random writing using the TRIM command; to do so, it is necessary to use Windows 7 or Linux operating system of 2.6.28 kernel version or newer, as well as SSD disks, with controllers that support the TRIM command.
In addition, it is possible to improve the performance of SSD disks by a forced increase of the space area, i.e. the number of backup memory units used for data migration operations. This can be done by creating a logical disk partition smaller than the physical size of the disk. Then, all the space wasted will be automatically used as a space area of the disk.
Shimpi, Anand Lal. (2009-03-18). p. 10.
Shimpi, Anand Lal. (2009-03-18). p. 5.