Non-Volatile Memory Cache for Boot Sequence Speed
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
The boot sequence in computing devices is slowed down by the time-consuming process of retrieving the OS bootloader code/data from slower peripheral media, such as optical disks, during the Power On Self Test (POST) process, as these media take time to spin up and access.
Innovation Solution
Caching the OS bootloader or other necessary code/data in non-volatile memory, such as ROM, allows the firmware to retrieve it quickly instead of waiting for the peripheral media to spin up, and dynamically managing cache space by flushing less frequently used data when needed.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Speed
If the OS bootloader code/data is retrieved from peripheral media (optical disk) during boot sequence, then the system can load the operating system, but the boot sequence time is significantly increased due to slow media access
Solution Approach 1:
The patent caches the OS bootloader code and data in non-volatile memory (NVM) before the actual boot sequence occurs. This preliminary action stores frequently accessed boot data in a faster storage location, so when the system needs to boot, it can retrieve the data from NVM instead of waiting for slow peripheral media access, thus reducing boot sequence time while maintaining system reliability
Solution Approach 2:
The patent introduces non-volatile memory as an intermediary layer between the firmware and the slow peripheral media. This intermediary cache stores copies of the OS bootloader and related data, allowing the firmware to access boot-critical data quickly without directly accessing the slow optical disk, thereby resolving the contradiction between needing to load the OS and the slow access time of peripheral media
2Loss of time
If a cache is implemented in non-volatile memory to store OS bootloader data, then boot sequence time is reduced, but the device complexity increases
Solution Approach 1:
The patent implements self-service mechanisms where the firmware automatically manages the cache in non-volatile memory. The firmware detects when boot data should be cached, automatically writes data to the cache, and manages cache validity without requiring external intervention or complex external control systems. This keeps the overall device complexity manageable while still achieving the time reduction benefits
Solution Approach 2:
The patent changes the storage parameter of critical boot data from slow peripheral media to fast non-volatile memory. By changing where the data is stored (from optical disk to NVM cache), the system achieves faster access times. The firmware manages this parameter change dynamically, caching data only when beneficial, thus balancing performance improvement with controlled complexity
Data Source
AI summary
An OS bootloader or other code or data requested by firmware during a boot sequence is cached inside ROM or another non-volatile memory location. Firmware uses this cached version, instead of retrieving the OS bootloader or other code from a peripheral location to speed up the boot sequence. Embodiments also create additional room in the cache based on pre-determined rules if the cache doesn't already include the requested data and doesn't have enough room to store the requested data at the time of the firmware's read request.


