Data Cache Egress via System Controller UPS Buffer

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Despite the use of battery-backed-up data caches in system controllers, unwritten data can still be lost during unexpected power losses, as data in the write cache of data storage devices is not reliably transferred to non-volatile memory before power is lost.

Innovation Solution

The data storage system implements a process where data cache images from data storage devices are transferred to and stored in the system controller's volatile memory, which is powered by a UPS, allowing for the protection of data cache images during power loss and subsequent restoration upon power resumption, using a reserved space in the volatile memory.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If data is stored in the write cache of the data storage device to improve write performance, then write speed is improved, but data reliability deteriorates because the data can be lost during power loss

Engineering Contradiction:
Improvewrite speedVSAvoiddata reliability
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The system controller acts as an intermediary with a UPS-powered volatile memory cache. Data is first written to the controller's cache (protected by UPS), which then writes to the DSD's write cache. This intermediary structure ensures data is safely buffered before reaching the vulnerable DSD cache, resolving the contradiction between fast writes and data reliability.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The UPS-powered volatile memory in the system controller provides beforehand cushioning for data before it reaches the DSD's write cache. By pre-buffering data in a protected environment, the system cushions against potential power loss at the DSD, maintaining both write performance and data reliability.

Inventive Principle:
Principle #11Beforehand cushioning (Prior cushioning)

2Reliability

If a battery back-up is provided in the system controller to protect data in volatile memory, then data protection is improved, but data loss can still occur if data is erased from the cache before being written to the DSD

Engineering Contradiction:
Improvedata protectionVSAvoiddata loss
Core Design Contradiction:
ReliabilityVSLoss of information

Solution Approach 1:

The system creates and maintains duplicate copies of data in two locations: the system controller's volatile memory (protected by UPS) and the DSD's write cache. This copying strategy ensures that even if one location loses data, the other retains it, preventing data loss while maintaining protection capabilities.

Inventive Principle:
Principle #26Copying

Solution Approach 2:

The system performs preliminary actions by first writing data to the controller's protected cache before allowing it to be written to the DSD. This preliminary buffering ensures data is secured in a protected environment before potentially vulnerable operations occur, preventing data loss while maintaining protection.

Inventive Principle:
Principle #10Preliminary action

3Reliability

If additional non-volatile memory is added to each data storage device to protect write cache data, then data reliability is improved, but device complexity and cost increase

Engineering Contradiction:
Improvedata reliabilityVSAvoiddevice complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The system merges the data protection function into the existing system controller, which already has UPS power protection. By consolidating the protected cache function at the controller level rather than adding separate protection mechanisms to each DSD, the system improves data reliability without increasing device complexity or requiring additional non-volatile memory at the DSD level.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The system controller's volatile memory, protected by UPS, serves multiple functions: it acts as a protected buffer for incoming writes, a safety copy for data reliability, and a temporary storage before DSD writing. This multi-functionality provides data protection without requiring additional dedicated components at the DSD level, avoiding increased device complexity.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Data Source

PatentUS9122615B1Data cache egress for a data storage system
Publication Date: 2015.09.01 WESTERN DIGITAL TECHNOLOGIES INC
  • US9122615B1 patent drawing
  • US9122615B1 patent drawing
  • US9122615B1 patent drawing

AI summary

Data cache egress of a data storage device (DSD) in a data storage system including a system controller. A size of a reserved space in a memory of the system controller is determined for storing a data cache image for a data cache of the DSD. A loss of power is detected in the data storage system and the data cache image is transferred from the DSD to the system controller. The data cache image is stored in the reserved space in the memory of the system controller.