Nonvolatile Memory Segmentation for Fast Booting
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Implementing a computer system with fast booting speed and low error using nonvolatile memory as the main memory is challenging, as existing systems struggle to efficiently load and manage operating system programs and user data.
Innovation Solution
A computer system design that includes a nonvolatile memory with a first memory area for storing the operating system program and a second memory area for user data, managed by a memory controller, which loads the operating system program onto the second memory area during booting, utilizing technologies like phase change RAM, resistive RAM, or STT-MRAM, and includes an ex-loader for installing the operating system and an operating system address table for storing addresses.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Quantity of substance
If nonvolatile memory is used as main memory, then data retention and storage capacity are improved, but booting speed and system reliability deteriorate
Solution Approach 1:
The nonvolatile memory device is divided into multiple memory areas: a first memory area for storing the operating system program and a second memory area for storing user data. This segmentation allows the OS to be pre-loaded in a dedicated area, enabling faster booting while maintaining the nonvolatile storage capacity benefits.
Solution Approach 2:
The operating system program is pre-stored in the first memory area of the nonvolatile memory during installation or update operations. This preliminary action ensures that when the system boots, the OS is already available in memory, eliminating the need to load it from external storage and significantly reducing boot time.
2Quantity of substance
If nonvolatile memory is used as main memory, then data retention is improved, but error rate increases
Solution Approach 1:
By separating the memory into a first area for OS programs and a second area for user data, the system isolates different data types in dedicated regions. This segmentation reduces the risk of data corruption and errors by preventing mixed storage and enabling targeted error management for each memory area.
Solution Approach 2:
The memory controller acts as an intermediary that manages access to both memory areas, controlling read and write operations. This intermediary layer provides error detection and correction capabilities, ensuring data integrity while maintaining the nonvolatile retention benefits.
3Speed
If operating system program is stored in nonvolatile memory, then booting speed is improved, but memory management complexity increases
Solution Approach 1:
The memory device is segmented into distinct first and second memory areas with specific functions. This segmentation simplifies memory management by clearly defining where OS programs and user data should be stored, reducing the complexity of managing a unified memory space.
Solution Approach 2:
The memory controller automatically manages the memory areas based on pre-configured design, where the first area is designated for OS programs and the second for user data. This self-service approach reduces the need for complex manual memory management and allocation decisions.
Data Source
AI summary
A main memory system is provided which includes a nonvolatile memory including a first memory area designated to store an operating system program and a second memory area designated to store user data; and a memory controller configured to control the nonvolatile memory such that the operating system program is loaded onto the second memory area from the first memory area. The nonvolatile memory may be one of a phase change RAM, a resistive RAM, and a magnetic RAM.


