Flash Memory Command Scheduling via Priority Lookup Tables
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Flash memory devices face inefficiencies in command scheduling and execution due to the time-consuming process of scanning and prioritizing commands in the queue, particularly in NAND flash devices which require serial access and cannot access random addresses like NOR devices.
Innovation Solution
A method and apparatus that utilize a command profile generator and command profile space to monitor and update priority information in a command queue, allowing a processing unit to efficiently identify and execute priority commands, and select simple read/write commands when no priority commands are present, using a scheduling algorithm to optimize command execution.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If the processing unit scans and schedules commands in the queue according to their priority, then command execution priority is maintained, but the scheduling time increases significantly
Solution Approach 1:
The patent pre-calculates and stores priority information for each command type in a lookup table before commands are queued. When a command arrives, its priority is immediately determined by comparing the command type against the pre-stored priority information, eliminating the need for time-consuming scanning and scheduling analysis at execution time.
Solution Approach 2:
The patent assigns different priority levels to different command types (e.g., program operations get higher priority than read operations). By categorizing commands into distinct priority classes and using a lookup table to quickly identify the priority of each command type, the system efficiently manages command execution order without full queue scanning.
2Reliability
If the processing unit executes commands in priority order, then important operations are completed first, but the overall command processing speed decreases
Solution Approach 1:
The system pre-determines and stores the priority of each command type in advance. When commands are queued, their execution order is immediately established based on the pre-stored priority information without requiring real-time analysis, thus maintaining both priority execution and high processing speed.
Solution Approach 2:
The patent creates a simplified representation of command priorities in the lookup table that can be quickly referenced. Instead of analyzing entire command structures, the system uses compact priority indicators stored in the lookup table to rapidly determine execution order, improving processing throughput while maintaining priority integrity.
Data Source
AI summary
The invention introduces a method for scheduling and executing commands in a flash memory, performed by a processing unit, including at least the following steps: reading information stored in a command profile space to determine whether a priority command is present in a command queue; de-queuing the priority command from the command queue and executing the priority command when the priority command is present in the command queue; and using a scheduling algorithm to select a simple read/write command from the command queue and executing the simple read/write command when no priority command is present in the command queue.


