1 a low-power true random number generator using random telegraph noise of single oxide-traps class...
TRANSCRIPT
1
A Low-Power True Random Number Generatorusing Random Telegraph Noise of Single
Oxide-Traps
Class presentation of advanced VLSI design
University of tehran, FALL 2006
Represented by Mehdi Mohamadi
Adopted from ISSCC 2006
2
What’s Random Number ?
3
Produce and sample noise signal
• Pseudo Randomn Number Generator (PRNG)
Random Number=f( seed)
• True Random Number Generator (TRNG)
Random Number = f( noise)
4
Pseudo Random
• Middle square method
seed= 345674
seed ² = 119490514276
New seed = 490514
problem : if seed=0 => generator freeze
Use by ENIAC ( 1946-1995)
5
module von_neumann(clk,reset,out);output [9:0] out;input clk,reset;reg [19:0] a;reg [9:0] out;always @(posedge clk)begin if (reset) out=10'b1001011010; else begin a=out*out; out=a[14:5]; end endendmodule
Synthesis on Stratix
6
Pseudo Random
• 6 bit pseudo random number generator
7
• Pseudo Random : complex hardware ,Low frequency ,unreliable data
=> week security
Why pseudo ???When we can flip a coin!!
8
True Random
• Chaos theory • Thermal Noise
But Noise?
9
• Noise Effect
Does Differential comparator help us ?
10
Intel RNG
11
What’s new in this design?
• Low power and Area consumption • Noise tolerant• Voltage variation tolerant
( suitable for security controller)
=> introduce new field oxide trap
12
• Large noise amplitudes (~1mV) for small area devices
• White noise in certain frequency bands
• … but strong fluctuations in the low-frequency noise
Noise of small area MOSFETs
1chip - 6 different devicesW/L = 0.16µm/0.12µm
Vds=1V, Vgs,eff=0.25V
10 -3
10 -4
10 -5
10 -6
10 -7
10 -8
10 510 410 310 210 110 0
Gat
e re
ferr
ed v
olt
age
no
ise
[VH
z-0.5]
Frequency [Hz]
13
• But is probability of ‘1’ =probability of ‘0’ ??
=> Von Neumann algorithm
CLK
+
-
Vref.
Randomnumbers
Decoder
+
-
QualityCheck
HPF
von Neumann Algorithm:
00 no data
01 ‘1’
10 ‘0’
11 no data
10 1 1 0 1
V
random numbers
Vref.
t
CLK
Vnoise
14
TRNG Schematics:Noise Source and Amplifier
noise1 noise2
Vbias1
R12R11
C11
0.16/0.24 0.16/0.24
C12
T3
Ti2Ti1
T2T1
Si Si
Vref_amp Vref_amp
15
TRNG Schematics:Noise Source and Amplifier
10 times10 timesrepeatedrepeated
• Auto calibration procedure determines best fitted noise source
noise1 noise2
Vbias1
R12R11
C11
0.16/0.24 0.16/0.24
C12
T3
Ti2Ti1
T2T1
Si Si
Vref_amp Vref_amp
16
TRNG Schematics:Filter
• Low accuracy of these devices is no problem here (filter corner frequency has no fixed value, but needs to be ~ 5-20kHz)
C31 C32
noise1 noise2
Vref_comp
R32R31
f_noise1 f_noise2 Vbias2 Vbias3
17
TRNG Schematics:Comparator
• Comparator is optimized for low mismatch and low hysteresis
T7T6
CLK CLK
f_noise1 f_noise2
T9T8
T11T10
T13T12
T5T4
out1 out2
18
TRNG – Measured Output Data
• Raw data rates of up to 5MHz possible• However correlation reduces randomness
-> necessity to apply post processing (v. Neumann algorithm)
Sampling frequency = 500kHz
Time [µs]-50 -40 -30 -20 -10 0 10 20 30 40 50
ou
t 1 -
ou
t 2 [
V]
-2
-1
0
1
2
Sampling frequency = 5MHz
Time [µs]-10 -5 0 5 10
ou
t 1 -
ou
t 2 [
V]
-2
-1
0
1
2
19
TRNGBasic Electrical Performance
Area (in 0.12µm CMOS): 0.009 mm² (analog part only)Power consumption: < 20µW + 30µW/MHz *fclock
PSRR @500kHz (simulated): ~ 30dBCMRR @500kHz (simulated): ~ 30dBRaw data rate (typical / max.): 500kHz / 5MHz
20
Random Number Data rate
Sampling Frequency [Hz]2x105 4x105 6x105 8x105 106
Bit
eff
icie
nc
y(4
dif
fere
nt
no
ise
so
urc
es
)
0.10
0.12
0.14
0.16
0.18
0.20
0.22
0.24
4 different noise sources on the same die
21
Sampling Frequency [Hz]2x105 4x105 6x105 8x105 106
Me
an
Va
lue
(4 d
iffe
ren
t n
ois
e s
ou
rce
s)
0.2
0.3
0.4
0.5
0.6
0.7Mean value Mean value after v.Neumann correction
Random Numbers - Mean Value
22
Random Numbers - Mean Value
Sampling Frequency [Hz]2x105 4x105 6x105 8x105 106
Me
an
Va
lue
(4 d
iffe
ren
t n
ois
e s
ou
rce
s)
0.2
0.3
0.4
0.5
0.6
0.7Mean value Mean value after v.Neumann correction
4 different noise sources on the same die
23
REFERENCES• [1] Ralf Brederlow1, Ramesh Prakash 2, Christian Paulus3,Roland Thewes1
“A Low-Power True Random Number Generator using Random Telegraph Noise of Single Oxide-Traps “ ISSCC 2006
• [2] B. Jun, P. Kocher, “The Intel Random Number Generator,” white paper,
http://www.cryptography.com/resources/whitepapers/IntelRNG.pdf, 1999.• [3] Craig S Petrie and J Alvin Connelly, “ A Noise-Based IC Random Number
Generator for Applications in Cryptography” IEEE TRANSACTIONS ON CIRCUITS AND SYSTEMS—I: FUNDAMENTAL THEORY AND APPLICATIONS, VOL. 47, NO. 5, MAY 2000
• [4] Barry paton, Dalhousie University,” Fundamentals of Digital Electronics”
March 1998 Edition