Controller- opaque NVM command scripts for host debugging
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Hosts are limited in accessing advanced commands for non-volatile memory (NVM) devices, such as SSDs, without modifying the device controller, restricting testing and debugging capabilities.
Innovation Solution
A system that allows hosts to issue controller-opaque commands to NVM devices through a device controller, enabling the execution of arbitrary command sequences without the controller needing to understand the actions or consequences, using a script that can be stored and executed by the NVM device, facilitating transparent access and enabling low-level debug and testing.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If the device controller supports only standard IO and control commands, then the device controller remains simple and reliable, but the host cannot access advanced NVM commands for testing and debugging
Solution Approach 1:
The patent introduces a script storage mechanism in the device controller that acts as an intermediary. The controller stores command scripts received from the host and executes them on behalf of the host, enabling the host to access advanced NVM commands without the controller itself needing to understand or support these commands. This resolves the contradiction by allowing extended functionality through stored scripts while keeping the controller's core architecture simple.
2Adaptability or versatility
If the host modifies the device controller to access advanced commands, then the host gains full access to NVM commands, but the development and testing process becomes more complex and time-consuming
Solution Approach 1:
The patent enables the host to send command scripts to the device controller in advance, which stores and executes these scripts without requiring real-time modification of the controller. This preliminary action approach allows the host to prepare and send advanced NVM commands before execution, eliminating the need for time-consuming controller modifications during development and testing.
Solution Approach 2:
The patent uses script copying where the host creates command scripts that are copied into the device controller's script storage. These copied scripts can then be executed multiple times without modifying the controller itself. This copying mechanism significantly reduces development and testing time by avoiding repeated controller modifications while maintaining full access to advanced NVM commands.
3Adaptability or versatility
If the device controller executes commands without understanding their actions, then the host can issue arbitrary commands for testing, but the controller requires additional script storage and execution capabilities
Solution Approach 1:
The patent implements self-service by having the device controller automatically execute stored scripts without needing to understand or interpret the specific NVM commands they contain. The controller simply stores the scripts and executes them as opaque operations, allowing the host to issue arbitrary testing commands while the controller handles the execution automatically. This self-service approach enables controller-opaque command execution without requiring the controller to comprehend the command semantics.
Data Source
AI summary
The disclosure is directed to a system and method for controlling a non-volatile memory (NVM) device with controller-opaque commands issued by a host. A device controller is configured to receive a command script from a host. The device controller executes one or more commands of the command script including sending one or more operations of the command script to a NVM device in communication with the device controller. The device controller is enabled to provide at least a portion of the one or more operations from the command script to be executed by the NVM device without any embedded knowledge by the device controller of the actions of and/or consequences of the operations, thereby allowing the host to access NVM commands that are not necessarily supported by the device controller.


