Non-Volatile Memory PUF Random Number Generation
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Traditional non-volatile memory devices require additional circuitry to generate unique identifiers or random numbers, which occupies valuable silicon space and poses security risks due to storage of these values.
Innovation Solution
A method using a non-volatile memory based physical unclonable function (PUF) where a page of memory cells is programmed or erased to a uniform state, and a read threshold voltage is determined to generate a true random number by reading approximately half of the cells as one state and half as another, without storing the random number.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If a ring oscillator PUF is used to generate unique identifiers or random numbers, then the device can produce random numbers, but additional circuitry is required which occupies valuable silicon space
Solution Approach 1:
The non-volatile memory cells are used for multiple purposes: normal data storage and random number generation. By utilizing the inherent physical variations in the memory cells themselves rather than adding separate PUF circuitry, the same hardware resources serve dual functions, eliminating the need for additional silicon real estate dedicated to random number generation
Solution Approach 2:
The memory device generates random numbers using its own existing memory cell structures and physical characteristics without requiring external or additional specialized circuitry. The natural process variations in the memory cells during manufacturing automatically provide the entropy source needed for random number generation
2Duration of action of stationary object
If the generated unique identifier or random number is stored in the non-volatile memory device, then the device can retain the random number for future use, but this poses a security risk as attackers may discover the stored value
Solution Approach 1:
The system generates random numbers on-demand and does not permanently store them in the non-volatile memory. After use, the random numbers are discarded, and when needed again, new random numbers are regenerated by re-reading the memory cells. This approach maintains security by eliminating stored values that could be compromised while preserving functionality through regeneration
Solution Approach 2:
The random numbers are treated as temporary, single-use values that are generated, used, and then discarded rather than being preserved. Each random number has a short effective lifetime, and the system relies on the ability to regenerate them rather than on their persistent storage, thereby eliminating the security vulnerability of stored sensitive data
3Adaptability or versatility
If traditional PUF circuitry is added to the non-volatile memory device, then the device can generate unique identifiers, but the device complexity increases
Solution Approach 1:
The existing memory cell array is made multi-functional by enabling it to serve both as data storage and as the source for unique identifier generation. The same physical structures that store user data also provide the process variation signatures needed for PUF-based identification, eliminating the need for separate PUF circuit blocks and reducing overall device complexity
Solution Approach 2:
The patent merges the data storage function and the unique identifier generation function into a single integrated system. The memory cells are used simultaneously for both purposes, combining what would traditionally be separate functional blocks into one unified structure, thereby simplifying the overall device architecture
Data Source
AI summary
A true random number is generated using a non-volatile memory based physical unclonable function (PUF). To generate the random number, an identified page (or block) of a memory die of the non-volatile memory is programmed or erased such that all, or substantially all, of the memory cells of the identified page are in the same state. A soft sense or soft read operation applies various different read threshold voltages to the memory cells until approximately half of the memory cells of the identified page are read as being in one state while the approximately other half of the memory cells of the identified page are read as being in another state. The identified page may then be read or sensed using the determined read threshold voltage. Raw data, which represents a true random number, is then provided to a controller or other requesting computing device.


