How controllers enable new features for SSDs.
Over the last 40 years digital storage has advanced at an amazing rate. Because it operates out of sight digital storage tends to be taken for granted, but today there is more storage capacity in the devices in our pockets than what existed in mainframe computers 30 years ago. With the rise of artificial intelligence (AI) this trend will continue and the results will be nothing less than astounding.
The amount of data that consumers are generating today is quite staggering, and the amount of data generated and consumed by AI, as it moves into the mainstream over the next few years, will be significantly larger. While a lot of this data is in motion, much of it is being stored. The growth in data is being driven by social networking, e-commerce, search, content delivery, analytics, and big data.
In data centers and PCs hard disc drives (HDDs) have been the dominant storage media, but this is changing as the cost of solid-state drives (SSDs) based on NAND flash memory declines. SSDs still cost more per GB than HDDs, but the benefits of faster access and lower power consumption are enough to offset the cost difference. This is leading to the transition away from HDD to SDD.
The design of storage controllers has changed significantly over the past ten years as drive sizes have increased. Ten years ago, most controllers had a single CPU and the main design concerns were data flow, the flash file system, wear leveling, garbage collection, error correction, and communication. This has changed as drive sizes have increased. These functions must still be done but they are becoming more challenging as new tasks are being added.
There are several new trends in SSDs that should be considered in a storage controller design. The challenges of moving Big Data and unacceptable latency of devices operating at the Edge are leading to an increasing use of compute in storage solutions. There is also a move to use AI in drives to perform specialized tasks such as object detection and classification, but also to increase drive endurance and reliability.
Compute is moving to storage to deal with the long latencies that are occurring between where data is stored and where it is processed, and the large amounts of data that must be moved. Traditionally, data has been moved from drives to the compute engine. This requires moving the data across backplanes, interfaces, and often across protocols, which not only takes time and increases latency, but it also burns power. In addition, it often results in the data being copied and existing in multiple locations.
By moving the computation capabilities into the drive, data movement outside of the drive is minimized (Figure 1), which reduces latency and power consumption. Security is also increased as a result of not moving data outside of the drive. Another benefit is that the processing can be optimized for the workload.
Figure 1: Traditional versus In Storage Compute
The use of AI in storage brings the potential to substantially increase endurance and reliability, while also supporting object detection, tracking, classification, and much more. The use of machine learning in flash drives is in the early stages and will be developed and implemented in many applications over the next three to five years. AI is evolving rapidly with many new algorithms and offers huge potential; and the benefits in storage are just starting to be realized.
Figure 2: Development and Implementation of Machine Learning Framework
DesignWare ARC processors are widely used in flash storage controllers. They offer the highest performance-efficiency with a broad range of processor performance and capability. They support easy customization and the addition of proprietary hardware through APEX custom instructions. ARC processors reduce system latency and power consumption, and offer best in class code density, which is very important in many storage controller designs.
The ARC HS family is the highest performance ARC processors delivering as much as 7500 DMIPS per core in 16nm processes. The HS family was designed with heavy consultation with our storage customers and has features like 64-bit per clock loads and stores that accelerate data movement.
The ARC EM family has the same programmer’s model and instruction set as HS cores making it easier to use both cores in a design, and to partition code across the processors. The family is designed for low power and small size and offers a broad range of capabilities.
The ARC EV processors offer a fully programmable and scalable solution for AI. They are implemented with a high-performance scalar core coupled with a 512-bit wide vector DSP. A broad range of machine learning algorithms and software models can be programmed into and run on the EV family processors. If implementation of object detection and classification is desired in a drive, an optional convolution neural network (CNN) engine is available.
The flash storage market is going to grow at a rapid rate over the next 5-10 years, and offers a big opportunity for companies that are poised to take advantage of it. Using the best processor for the storage controller is critical in the design of flash storage products. ARC processors offer the industry’s highest performance-efficiency and features to accelerate data movement reducing latency and increasing IOPS and throughput. The DesignWare ARC processors enable engineers to create state-of-the-art SSD designs that are adaptable, scalable, and customizable to deliver optimal performance across the full range of flash storage application requirements.
Leave a Reply