Whitener Reduces Bias in Oscillator Random Number Generators

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Random number generators using oscillators produce biased outputs, often skewed towards more ones or zeros due to duty cycle variations, which fail to meet security requirements for randomness and bias, necessitating a method to reduce bias while maintaining randomness.

Innovation Solution

A whitener is introduced to dynamically create a mask based on the parity of previous random numbers, applying it to the generated random numbers to reduce bias and produce a whitened output with a 50% distribution of ones and zeros, maintaining sufficient randomness.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If random numbers are generated using oscillators, then random numbers are produced, but bias towards ones or zeros occurs due to duty cycle variations

Engineering Contradiction:
Improverandom number generationVSAvoidbias in output
Core Design Contradiction:
ProductivityVSManufacturing precision

Solution Approach 1:

A whitener component is introduced as an intermediary between the oscillator-based random number generator and the output. The whitener receives the biased random numbers and applies a whitening process using a dynamically created mask to eliminate bias while preserving randomness, thereby mediating between the biased source and the unbiased output requirement

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent changes the parameter distribution of the output by applying a whitening mask that dynamically adjusts the bias parameter. By XORing the biased random numbers with a mask derived from parity calculations, the output distribution parameter is transformed from biased (non-50%) to unbiased (50% ones and zeros)

Inventive Principle:
Principle #35Parameter changes

2Reliability

If bias reduction is applied to meet security requirements, then randomness quality improves, but system complexity increases

Engineering Contradiction:
Improvesecurity requirement complianceVSAvoidsystem structure
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The system is segmented into distinct functional components: the oscillator-based random number generator and the separate whitening stage. This segmentation allows the complex bias reduction function to be isolated in a dedicated whitener module, making the overall system more manageable and maintainable despite the added complexity

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The whitening process uses feedback from previous random number outputs to dynamically create the whitening mask. By calculating parity of previous outputs and using that information to generate the mask, the system adapts to the actual bias characteristics, improving reliability while keeping the feedback mechanism relatively simple

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS8918442B2Reducing bias in hardware generated random numbers
Publication Date: 2014.12.23 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US8918442B2 patent drawing
  • US8918442B2 patent drawing
  • US8918442B2 patent drawing

AI summary

A random number generator of a processor comprises a whitener for reducing the bias in random numbers generated by the random number generator. The whitener receives a random number of a first length read by an array of latches with inputs from an array of oscillators. The whitener dynamically creates a mask of the first length based on a parity of at least one previous random number read from the array of latches during at least one cycle prior to reading the random number. The whitener applies a compare operation between the random number and the mask to generate a whitened random number of the first length, with reduced bias, without reducing randomness.