Embedded deterministic software enables use of NAND flash in time-critical systems
Traditionally, NOR flash has been the dominant memory in highly reliable systems, but more recently engineers are integrating NAND flash into safety systems where information must be predictably available. An FTL manages an array of NAND flash to create a logical interface that software can use. This includes wear leveling, bad block handling, and the many other subtleties of managing NAND flash. However, existing FTLs all stall at some point for a variable period of time, particularly when placed under heavy load.
Safety-critical systems demand a different approach that ensures stability and predictability above all else. For these systems, where accurate time division is critical to the delivery of safety, engineers can use HCC’s deterministic SafeFTL to integrate arrays of NAND flash without disturbing the predictability of the system. Deterministic FTL builds on HCC’s SafeFTL by enabling the host or safety system to know how long operations will take and respond by either scheduling tasks appropriately or executing them in multiple steps. The host system gets the length of time a flash operation will take from the FTL and can schedule an appropriate time slot, or can spread complex operations over multiple time slots, while leaving the NAND flash accessible to other tasks.
According to HCC Embedded CEO Dave Hughes, the company has spent much of its history developing a deep understanding of flash storage technology. The company takes a system-level approach that ensures each layer in the system has correctly defined the behavior it requires from adjacent layers. The addition of deterministic execution control to our SafeFTL product goes a step beyond to ensure the utmost reliability and predictability in safety-critical systems.”