CXL Storage Control Using Dirty-Data Bitmaps and Cache Flush
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing data processing systems face challenges in managing dirty data consistency and efficiency during data transfers between devices, leading to low transfer speeds and potential data inconsistency.
Innovation Solution
A storage device with a first memory, a second memory configured to store a bitmap indicating dirty data, and a storage controller that manages data transfer and cache flush operations using a CXL switch, enabling pre-fetching of dirty data into the second memory and requesting cache flush for external devices.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Speed
If dirty data is transferred directly from the first memory to external devices, then data transmission speed is improved, but data consistency reliability deteriorates due to potential cache inconsistencies
Solution Approach 1:
The patent sends a cache flush request command to external devices before transferring dirty data. This preliminary action ensures that external caches are flushed of stale data, guaranteeing data consistency when the dirty data is subsequently transferred. The bitmap is updated to reflect which data blocks are dirty, enabling targeted pre-fetching and cache flush operations.
2Reliability
If all data is pre-fetched into the second memory before transfer, then data transmission reliability is improved, but processing time and energy consumption increase
Solution Approach 1:
Instead of pre-fetching all data, the patent uses the bitmap to identify only the dirty data blocks that need to be transferred. The cache flush request is sent for all data blocks to ensure consistency, but the actual pre-fetching and transfer operations are limited to only the dirty blocks identified by the bitmap, reducing unnecessary processing time and energy consumption.
3Reliability
If cache flush is requested for all external devices, then data consistency is ensured, but communication overhead and processing complexity increase
Solution Approach 1:
The patent segments the data management process by maintaining a bitmap that tracks dirty data blocks individually. This segmentation allows the system to send cache flush requests for all blocks while only performing actual data transfer for dirty blocks identified in the bitmap, reducing unnecessary operations and simplifying the control logic compared to managing all data uniformly.
Data Source
AI summary
A storage device, a method for operating the storage device and a storage system. The storage device comprising a first memory, a second memory configured to store a bitmap indicating whether data stored in the first memory is dirty data, and a storage controller configured to control the first memory and the second memory, the storage controller configured to receive, from a CXL (Compute eXpress Link) switch, a transfer command to send the dirty data stored in the first memory to a first external device connected to the CXL switch, and in response to the transfer command, pre-fetch the data stored in the first memory into the second memory, based on the bitmap and send, to the CXL switch, a request command to request cache flush to at least one second external device connected to the CXL switch.


