Uninitialized SRAM Seed for Unique Device ID Generation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current methods for generating unique device identifiers in networks, particularly in industrial settings, are prone to errors and require manual intervention, and devices often lack true random number generators, leading to inefficiencies and potential duplicate identifiers.

Innovation Solution

A method utilizing uninitialized static random-access memory (SRAM) as a seed for a pseudorandom number generator to automatically generate unique device identifiers, eliminating the need for manual serial number entry and dependency on true random number generators.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If manual serial number entry is used for device identification, then device identifiers can be assigned, but errors occur and manual intervention is required

Engineering Contradiction:
Improvedevice identifier uniquenessVSAvoidmanual intervention requirement
Core Design Contradiction:
ReliabilityVSEase of operation

Solution Approach 1:

The device automatically generates its own unique identifier using uninitialized SRAM as a seed for a pseudorandom number generator, eliminating the need for manual serial number entry and reducing errors associated with manual intervention

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The system designates uninitialized SRAM sections before device operation begins, preparing the random seed in advance so that automatic identifier generation can occur without manual intervention during deployment

Inventive Principle:
Principle #10Preliminary action

2Reliability

If true random number generators are used for identifier generation, then unique identifiers can be generated, but device complexity increases

Engineering Contradiction:
Improveidentifier uniquenessVSAvoidrandom number generator requirement
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent uses inexpensive uninitialized SRAM memory sections instead of costly true random number generator hardware, achieving sufficient randomness for device identification without adding device complexity

Inventive Principle:
Principle #27Cheap short-living objects (Disposable)

Solution Approach 2:

The pseudorandom number generator acts as an intermediary, converting the uninitialized SRAM data into suitable device identifiers, thereby avoiding the need for true random number generator hardware while maintaining identifier uniqueness

Inventive Principle:
Principle #24Intermediary (Mediator)

3Productivity

If device identifiers are generated automatically, then manual intervention is eliminated, but potential duplicate identifiers may occur

Engineering Contradiction:
Improveidentifier generation speedVSAvoididentifier uniqueness
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The system implements a validation process where generated identifiers are checked for uniqueness within the network, and the generation process is repeated if duplicates are detected, ensuring identifier uniqueness while maintaining automatic generation

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The system generates identifiers with sufficient randomness using uninitialized SRAM, providing more than adequate uniqueness probability for the expected number of devices, thereby eliminating duplicates without requiring complex validation

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentUS9880929B2Systems and methods for generating a unique device id
Publication Date: 2018.01.30 SCHNEIDER ELECTRIC IT CORP
  • US9880929B2 patent drawing
  • US9880929B2 patent drawing
  • US9880929B2 patent drawing

AI summary

A device including a network interface, a memory, and at least one processor is provided. The memory may include a random access memory (RAM) and nonvolatile memory. The processor may be coupled to the memory and coupled to the network interface and configured to designate an uninitialized section of RAM, generate a network device identifier for the device using data from the uninitialized section of RAM, store the network device identifier in a nonvolatile memory, and assign the network device identifier to the device. The at least one processor may be further configured to generate the network device identifier using the data from the uninitialized section of RAM as a seed for a pseudorandom number generator.