Inline Hardware Engine for Storage Command Processing
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Traditional storage subsystems, including RAID controllers, require significant firmware involvement, leading to performance bottlenecks as they need to decide the course of operations at the outset and upon completion, and still require firmware to build hardware control blocks, consuming up to 30% of the processor time, even in high-performance designs.
Innovation Solution
A controller with an inline hardware engine that assesses host commands and builds chains of hardware command blocks without firmware involvement, reducing interactions between hardware and firmware to once per host operation, enabling auto-executed commands and error handling, and directly linking host resources to physical devices for improved performance.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If firmware is involved in assessing commands and building hardware control blocks, then reliability and control are improved, but processor time consumption increases up to 30%
Solution Approach 1:
The inline hardware engine autonomously assesses host commands, determines the course of hardware operations, and builds chains of hardware control blocks without firmware intervention. The hardware engine serves itself by implementing the assessment logic and operation sequencing that traditionally required firmware, thereby eliminating the 30% processor time consumption while maintaining operational control.
2Adaptability or versatility
If firmware builds hardware control blocks for each operation, then operational flexibility is improved, but device complexity increases
Solution Approach 1:
The invention extracts the command assessment and control block building functions from firmware and relocates them to the inline hardware engine. This separation removes the complex interaction layer between firmware and hardware, simplifying the system architecture while preserving operational flexibility through the hardware engine's autonomous decision-making capabilities.
3Reliability
If multiple hardware-firmware interactions occur per operation, then error handling capability is improved, but command throughput decreases
Solution Approach 1:
The inline hardware engine performs preliminary assessment of host commands and pre-builds chains of hardware control blocks before execution. By determining the complete sequence of operations in advance and preparing all necessary control blocks upfront, the system enables continuous hardware execution without intermittent firmware interactions, thereby maximizing command throughput while maintaining robust error handling through the pre-planned operation chains.
Data Source
Figure 1
Figure 2
Figure 3
AI summary
A method and controller for implementing hardware auto device op initiator in a data storage system, and a design structure on which a subject controller circuit resides are provided. The controller includes an inline hardware engine receiving host commands, and assessing a received command for starting without firmware involvement. The inline hardware engine builds one or more chains of hardware command blocks to perform the received command and starts executing the chain or chains for the received command.