# US 2016/0253153 A1 · Random number generator

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 2016/0253153 A1
- Document ID: US20160253153A1
- Status: Published application
- Kind: A1
- Application number: 15/045,272
- Filed: 2016-02-17
- Published: 2016-09-01
- Earliest claimed: 2015-02-24
- Assignees: Infineon Technologies AG
- Applicants: Infineon Technologies AG
- Inventors: Marco BUCCI; Raimondo LUZZI
- Web page: https://patentgrep.com/patent/US20160253153A1

## CPC

- G06F 7/588: {Random number generators, i.e. based on natural stochastic processes}
- G06F 21/602: {Providing cryptographic facilities or services}
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## Abstract

According to one embodiment, a random number generator is provided including an oscillator arrangement including a first oscillator and a second oscillator. The oscillator arrangement is configured such that a predetermined output state of the second oscillator triggers a transition of the first oscillator from a first oscillation speed to a second oscillation speed and a predetermined output state of the first oscillator triggers a transition of the first oscillator from the second oscillation speed to the first oscillation speed. The random number generator may further include a counter circuit configured to count the number of clock cycles of at least one of the first oscillator or the second oscillator between two transitions of the first oscillator from the first oscillation speed to the second oscillation speed and an output circuit configured to output a random number based on the counted number of clock cycles.

## Claims

### Claim 1

A random number generator, comprising:
an oscillator arrangement comprising a first oscillator and a second oscillator, wherein the oscillator arrangement is configured such that a predetermined output state of the second oscillator triggers a transition of the first oscillator from a first oscillation speed to a second oscillation speed and a predetermined output state of the first oscillator triggers a transition of the first oscillator from the second oscillation speed to the first oscillation speed;
a counter circuit configured to count the number of clock cycles of at least one of the first oscillator or the second oscillator between two transitions of the first oscillator from the first oscillation speed to the second oscillation speed; and
an output circuit configured to output a random number based on the counted number of clock cycles.

### Claim 2 (depends on 1)

The random number generator of claim 1,
wherein the first oscillation speed is higher than the second oscillation speed.

### Claim 3 (depends on 1)

The random number generator of claim 1, further comprising:
a flip-flop configured to store a control value for controlling the oscillation speed of the first oscillator;
wherein the control value is set to a first value by the predetermined output state of the first oscillator and is reset to a second value by the predetermined output state of the second oscillator.

### Claim 4 (depends on 1)

The random number generator of claim 1,
wherein the predetermined output state of the first oscillator is a rising clock edge of the first oscillator and the predetermined output state of the second oscillator is a rising clock edge of the second oscillator.

### Claim 5 (depends on 1)

The random number generator of claim 1,
wherein the counter circuit comprises a first counter configured to count the number of clock cycles of the first oscillator between two transitions of the first oscillator from the first oscillation speed to the second oscillation speed and a second counter configured to count the number of clock cycles of the second oscillator between two transitions of the first oscillator from the first oscillation speed to the second oscillation speed and the output circuit is configured to determine the random number output based on counted number of clock cycles of the first oscillator and based on the counted number of clock cycles of the second oscillator.

### Claim 6 (depends on 1)

The random number generator of claim 1,
wherein the output circuit is configured to determine the random number output based on a bijective mapping of pairs of the counted number of clock cycles of the first oscillator and the counted number of clock cycles of the second oscillator to random values.

### Claim 7 (depends on 1)

The random number generator of claim 1,
wherein the output circuit is configured to determine the random number output based on a concatenation of the counted number of clock cycles of the first oscillator and the counted number of clock cycles of the second oscillator.

### Claim 8 (depends on 1)

The random number generator of claim 1, further comprising:
a detection circuit configured to determine transitions of the first oscillator from the first oscillation speed to the second oscillation speed.

### Claim 9 (depends on 8)

The random number generator of claim 8,
wherein the detection circuit is configured, when it detects a transition of the first oscillator from the first oscillation speed to the second oscillation speed, to output a signal indicating that a transition of the first oscillator from the first oscillation speed to the second oscillation speed has occurred.

### Claim 10 (depends on 9)

The random number generator of claim 9,
wherein the counter circuit is configured to count the number of clock cycles based on the signal output by the detection circuit.

### Claim 11

A processing device, comprising:
a random number generator, comprising:
an oscillator arrangement comprising a first oscillator and a second oscillator, wherein the oscillator arrangement is configured such that a predetermined output state of the second oscillator triggers a transition of the first oscillator from a first oscillation speed to a second oscillation speed and a predetermined output state of the first oscillator triggers a transition of the first oscillator from the second oscillation speed to the first oscillation speed;
a counter circuit configured to count the number of clock cycles of at least one of the first oscillator or the second oscillator between two transitions of the first oscillator from the first oscillation speed to the second oscillation speed; and
an output circuit configured to output a random number based on the counted number of clock cycles;
wherein the processing device is configured to perform a secure operation based on the output random number.

### Claim 12 (depends on 11)

The processing device of claim 11,
wherein the secure operation is a cryptographic operation.

### Claim 13 (depends on 11)

The processing device of claim 11,
configured as a chip card.

### Claim 14

A random number generator, comprising:
a first oscillator and a second oscillator,
wherein the second oscillator is configured to trigger a transition of the first oscillator from a first oscillation speed to a second oscillation speed when the second oscillator is in a predefined output state;
wherein the first oscillator is configured to trigger a transition of the first oscillator from the second oscillation speed to the first oscillation speed when the first oscillator is in a predefined output state;
a counter circuit configured to count the number of clock cycles of at least one of the first oscillator or the second oscillator between two transitions of the first oscillator from the first oscillation speed to the second oscillation speed; and
an output circuit configured to output a random bit sequence based on the counted number of clock cycles.

### Claim 15 (depends on 14)

The random number generator of claim 14,
wherein the first oscillation speed is higher than the second oscillation speed.

### Claim 16 (depends on 14)

The random number generator of claim 14, further comprising:
a flip-flop configured to store a control value for controlling the oscillation speed of the first oscillator;
wherein the control value is set to a first value by the predetermined output state of the first oscillator and is reset to a second value by the predetermined output state of the second oscillator.

### Claim 17 (depends on 14)

The random number generator of claim 14,
wherein the predetermined output state of the first oscillator is a rising clock edge of the first oscillator and the predetermined output state of the second oscillator is a rising clock edge of the second oscillator.

### Claim 18 (depends on 14)

The random number generator of claim 14,
wherein the counter circuit comprises a first counter configured to count the number of clock cycles of the first oscillator between two transitions of the first oscillator from the first oscillation speed to the second oscillation speed and a second counter configured to count the number of clock cycles of the second oscillator between two transitions of the first oscillator from the first oscillation speed to the second oscillation speed and the output circuit is configured to determine the random number output based on counted number of clock cycles of the first oscillator and based on the counted number of clock cycles of the second oscillator.

### Claim 19 (depends on 14)

The random number generator of claim 14,
wherein the output circuit is configured to determine the random bit sequence output based on a bijective mapping of pairs of the counted number of clock cycles of the first oscillator and the counted number of clock cycles of the second oscillator to random values.

### Claim 20 (depends on 14)

The random number generator of claim 14,
wherein the output circuit is configured to determine the random bit sequence output based on a concatenation of the counted number of clock cycles of the first oscillator and the counted number of clock cycles of the second oscillator.
