Nonvolatile Memory Random Number Generator Two-Track Scheme
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing SRAM-based random number generators in embedded systems require external backup batteries to maintain state information during power outages, leading to battery lifetime issues and limitations on nonvolatile memory writing, which affects system efficiency and random number generation speed.
Innovation Solution
A method using nonvolatile memory with a two-track scheme to separate the processes for updating and saving random number state information, allowing independent generation and storage of random numbers, minimizing the need for repeated storage and extending battery life by using a microprocessor to read and update state information from nonvolatile memory with different entropy sources.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If nonvolatile memory is used to store random number state information, then power outage protection is improved, but the number of write operations is limited
Solution Approach 1:
The patent divides the random number generation process into two separate tracks: one for updating state information (written to nonvolatile memory) and another for generating random numbers (using entropy sources without writing to nonvolatile memory). This segmentation allows the system to maintain reliability benefits of nonvolatile memory while minimizing write operations to extend its operational lifetime.
Solution Approach 2:
The system performs preliminary updates of the random number state in nonvolatile memory only when necessary (e.g., on power-up or when state changes significantly), rather than continuously writing after each random number generation. This preliminary action approach reduces the frequency of write operations while ensuring state information is preserved across power outages.
2Speed
If SRAM is used to store random number state information, then write speed is improved, but power outage protection is lost
Solution Approach 1:
The patent segments the storage functions by using SRAM for rapid random number generation operations while using nonvolatile memory for persistent state storage. This allows the system to enjoy the speed benefits of SRAM for frequent operations while relying on nonvolatile memory for reliability during power outages.
Solution Approach 2:
The patent introduces an intermediary management layer that coordinates between SRAM and nonvolatile memory. This intermediary handles state synchronization and determines when to write to nonvolatile memory, allowing SRAM to operate at high speed for random number generation while periodically updating the nonvolatile memory backup.
3Reliability
If backup battery is added to maintain SRAM state, then power outage protection is improved, but device complexity increases
Solution Approach 1:
The patent extracts the power outage protection function from the complex backup battery circuitry and implements it directly using nonvolatile memory's inherent persistence capability. This eliminates the need for separate backup batteries and power switching circuits, reducing device complexity while maintaining reliability.
Solution Approach 2:
Nonvolatile memory provides self-service power outage protection by automatically retaining state information without requiring external backup power sources. The memory medium itself serves the protection function through its physical properties, eliminating the need for additional active components like batteries and power management circuits.
Data Source
AI summary
A method of generating a random number using nonvolatile memory and an apparatus for the same are provided. The method of generating a random number includes reading random number state information from nonvolatile memory when power is supplied; updating the random number state of a random number generator using the random number state information and a saving entropy source, thereby producing updated random number state information; storing the updated random number state information in the nonvolatile memory; updating a random number state of the random number generator using the updated random number state information and a generating entropy source, thereby producing a generating random number state information; and producing a random number to be used in an application program using the generating random number state information and the generating entropy source.


