Flash Translation Layer Emulation System for SSD Firmware Verification

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current firmware verification environments for Solid State Disk (SSD) Flash Translation Layer (FTL) are costly and inefficient due to the need for expensive hardware components like NAND Flash, which are consumable and unstable, limiting development efficiency and increasing costs.

Innovation Solution

An emulation test system comprising a network block device, a virtual hardware accelerator, and a flash translation layer module, which simulates SSD operations using virtual flash memory to test and develop FTL algorithms, allowing for virtual hardware acceleration and efficient detection of abnormalities like null pointer access.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If real hardware (NAND Flash, SSD controller) is used for FTL verification, then verification accuracy is improved, but development cost increases and development efficiency decreases

Engineering Contradiction:
Improveverification accuracyVSAvoiddevelopment efficiency
Core Design Contradiction:
Measurement precisionVSProductivity

Solution Approach 1:

The patent creates a virtualized copy of the SSD hardware system including virtual NAND Flash, virtual SSD controller, and virtual PCIE interface. This virtual system replicates the behavior and interface protocols of real hardware, allowing FTL algorithms to be verified in a software environment that closely mimics production conditions without requiring physical hardware for each test iteration

Inventive Principle:
Principle #26Copying

Solution Approach 2:

The patent introduces a hardware emulation module that acts as an intermediary between the FTL algorithm under test and the virtualized hardware components. This emulator translates FTL operations into appropriate actions on the virtual system, enabling accurate verification while maintaining the ability to run purely in software

Inventive Principle:
Principle #24Intermediary (Mediator)

2Measurement precision

If real hardware (NAND Flash) is used for FTL verification, then verification accuracy is improved, but development cost increases

Engineering Contradiction:
Improveverification accuracyVSAvoiddevelopment cost
Core Design Contradiction:
Measurement precisionVSEase of manufacture

Solution Approach 1:

The patent creates a virtualized copy of the SSD hardware system including virtual NAND Flash, virtual SSD controller, and virtual PCIE interface. This virtual system replicates the behavior and interface protocols of real hardware, allowing FTL algorithms to be verified in a software environment that closely mimics production conditions without requiring physical hardware for each test iteration

Inventive Principle:
Principle #26Copying

Solution Approach 2:

The patent replaces expensive, limited-life physical NAND Flash with virtual flash memory that can be freely created, modified, and deleted. The virtual flash memory emulates the characteristics of real NAND Flash including page structures, block management, and wear leveling behavior, but without the cost and durability constraints of physical hardware

Inventive Principle:
Principle #27Cheap short-living objects (Disposable)

3Measurement precision

If real hardware (NAND Flash) is used for FTL verification, then verification accuracy is improved, but system stability worsens due to consumable nature

Engineering Contradiction:
Improveverification accuracyVSAvoidsystem stability
Core Design Contradiction:
Measurement precisionVSReliability

Solution Approach 1:

The patent creates a virtualized copy of the SSD hardware system including virtual NAND Flash, virtual SSD controller, and virtual PCIE interface. This virtual system replicates the behavior and interface protocols of real hardware, allowing FTL algorithms to be verified in a software environment that closely mimics production conditions without requiring physical hardware for each test iteration

Inventive Principle:
Principle #26Copying

Solution Approach 2:

The patent replaces expensive, limited-life physical NAND Flash with virtual flash memory that can be freely created, modified, and deleted. The virtual flash memory emulates the characteristics of real NAND Flash including page structures, block management, and wear leveling behavior, but without the cost and durability constraints of physical hardware

Inventive Principle:
Principle #27Cheap short-living objects (Disposable)

4Adaptability or versatility

If FTL software is designed to match hardware on embedded controller, then hardware compatibility is improved, but development flexibility worsens

Engineering Contradiction:
Improvehardware compatibilityVSAvoiddevelopment flexibility
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent introduces a hardware emulation module that acts as an intermediary between the FTL algorithm under test and the virtualized hardware components. This emulator translates FTL operations into appropriate actions on the virtual system, enabling accurate verification while maintaining the ability to run purely in software

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent creates a dynamic verification environment where the virtual hardware configuration can be changed without physical reconfiguration. The virtualized system allows developers to modify hardware parameters, interface protocols, and memory characteristics through software, enabling flexible exploration of different hardware configurations before finalizing the FTL implementation for production hardware

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS20230014058A1Emulation test system for flash translation layer and method thereof
Publication Date: 2023.01.19 INNOGRIT TECH CO LTD
  • US20230014058A1 patent drawing
  • US20230014058A1 patent drawing
  • US20230014058A1 patent drawing

AI summary

The present disclosure relates to an emulation test system for flash translation layer and a method thereof, the system comprising a network block device, a virtual hardware accelerator, a flash translation layer module, and a virtual flash memory based on the network block device, wherein the network block device is configured to receive and forward test information, the test information including a read instruction and/or a write instruction and data to be written; the virtual hardware accelerator is configured to allocate the test information to each thread of the virtual hardware accelerator and perform virtual hardware acceleration on the flash translation layer module; and the flash translation layer module is configured to operate the virtual flash memory based on the test information to obtain an operation result.