Five Must-Have’s for SSD Verification
A Solid-State Drive (SSD) controller is a complex embedded system, comprising multiple hardware blocks that are typically connected to one or more embedded processor cores, with controller firmware and application software providing key differentiation among SSDs. In addition, an SSD operates with a host protocol interface connection, of which there are several types, such as SAS, SATA, PCIe, and NVMe. Finally, there is a flash channel communicating with a NAND array — which provides high-density, non-volatile memory storage for the SSD — and a DRAM connection for user data. See figure 1.
Figure 1: Example Architecture of a SSD Controller System-on-Chip
Given the design sizes, complexity, and long execution runtimes needed, as well as the high reliance on processors and software in modern SSD controllers, it is no surprise that the verification tool of choice for many engineers is a hardware emulator.
Even so, to handle the number of verification tasks required is not easy, even for emulation, but we can manage that by breaking it down into five must-have capabilities for any SSD verification solution:
1. Multiple Host-Protocol Interface Solutions
It seems obvious that an SSD verification solution has to have host interface applications for SATA, SAS, PCIe, and NVMe — to name the most popular ones. What is not always appreciated is that traditional in-circuit emulation (ICE), which uses external hardware attached to the emulated SoC, can be very troublesome to debug because of the random behavior of hardware. Mentor handles this extremely well with its new Veloce Deterministic ICE App, which delivers repeatable results that make an engineer’s debug task significantly easier and less time consuming.
2. Memory Solutions
Another obvious need for SSD verification are the NAND flash array and DRAM models that are a part of DUT emulation. However, it is increasingly challenging to deliver those when the memory capacities grow to Terabytes and more. Models need to use capacity efficiently, have the flexibility to be configured for verification, easy to use, and, finally, deliver the performance required for emulation. Again, Mentor provides the answer with Veloce FlexMem memories that allow the creation of huge memories that are compiled and synthesized into fully-associative, cache-based implementations on Veloce. These can then be seamlessly accessed from both software and hardware.
3. Hardware-Software Integration
As already noted, SDD controllers come with a great deal of firmware and software that must be debugged in conjunction with the rest of the hardware. This calls for software-hardware tools that support debug using fully synchronized and easily viewed data between the hardware and software worlds, including logic simulation waveforms, processor states, source code, internal memory, registers, stacks, and output.
Mentor’s Codelink® is the leading solution in the industry for these challenges. Codelink works much in the same way as the latest generation of digital video recording (DVR) devices. During functional simulation or emulation, Codelink’s advanced tracing technology automatically captures and compresses all of the important activity inside a design’s processors. Verification engineers can “playback” the simulation or emulation run with features such as fast forward, rewind, replay, pause, slow motion, zoom-in, single step, and pan. Complex failures can be diagnosed within a single, multi-view debugging environment. Without Codelink, such failures require extensive analysis of multiple files and databases. Offloading the debug sessions from the emulator significantly boosts productivity compared to traditional JTAG techniques, and frees the emulator for other users.
4. Low-Power Applications
There can be tens of thousands of SSD disk drives in a data center. It is critical to keep the SoC power consumption down as much as possible because the cooling costs in a data center are enormous. Thus, low power is truly significant when it comes to SSD controllers.
Low power analysis tools must support both RTL and gate-level power estimation and provide average power, peak-power, and hot-spot analysis. They also should be seamlessly integrated with other verification tools, and they require very high runtime performance because of the size and complexity of these designs.
To deliver on these requirements, Mentor created the Veloce Power App. The Veloce Power App delivers a paradigm shift in the way power measurements are done to address the new requirements brought about by the massive shift in how consumers use high technology
This new approach provides a fast, clean, and highly effective method to quickly and thoroughly estimate power consumption of modern SoC designs. It eliminates the core problems affecting testbench-based approaches currently used by simulators and emulators by supporting accurate, timely, and efficient power analysis at the system, RTL, and gate level for complex SoC designs. It accomplishes this by measuring power in a targeted application environment while running actual software applications — just what is needed for a low-power SSD solution.
5. Performance Metrics
With all the hardware and software in an SSD, engineers need to understand what the performance, throughput, and response times are for their SSD controllers. Their customers will buy their products based on the numbers associated with those. So it’s really important that these kind of things can be measured and verified.
Therefore, the emulator must be compatible with available performance analysis tools that run on the design. This allows designers to see what the actual IO operations are and get metrics on the IOPS, bandwidth, and latency for the SSD SoC.
Veloce represents a new-generation of verification solutions for enterprise storage systems. It delivers the five must-have capabilities for SSD Controller verification:
- High-Speed Verification Solutions for Multiple Host Protocols
- Optimized Memory Device Models
- Hardware/Software System-Level Debug
- Accelerated Low-Power Applications
- SSD System Performance Analysis
To learn more about the rise of SSD technology and Mentor’s emulation solutions for storage system designs, check out the new whitepaper Veloce Delivers Best of ICE and Virtual Emulation to the SSD Storage Market.
- Giga, not GIGO, or how big does your dataset need to be for meaningful power analysis? (Part 2)
- Video-Intensive Multimedia SoCs Use Veloce Emulation
- Giga, not GIGO, or how big does your dataset need to be for meaningful power analysis?
- How New Storage Technologies Get a Boost from Hardware Emulation
- Hardware Emulation’s Play in New Multimedia Markets
- A Smirk Changed My Thinking about SSD Controller Verification
- “Did you see that?”
- Virtual PCIe Delivers a Shift Left in Software Defined Networking Emulation
- How shift toward virtual emulation is reinvigorating pre-silicon testing
- ESC Boston — An EDA guy at a software show