KR20180051800A - 진성 난수 발생기 - Google Patents

진성 난수 발생기 Download PDF

Info

Publication number
KR20180051800A
KR20180051800A KR1020160148589A KR20160148589A KR20180051800A KR 20180051800 A KR20180051800 A KR 20180051800A KR 1020160148589 A KR1020160148589 A KR 1020160148589A KR 20160148589 A KR20160148589 A KR 20160148589A KR 20180051800 A KR20180051800 A KR 20180051800A
Authority
KR
South Korea
Prior art keywords
signal
random number
output
counter
oscillator
Prior art date
Application number
KR1020160148589A
Other languages
English (en)
Other versions
KR102170279B1 (ko
Inventor
김은환
김재준
Original Assignee
포항공과대학교 산학협력단
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 포항공과대학교 산학협력단 filed Critical 포항공과대학교 산학협력단
Priority to KR1020160148589A priority Critical patent/KR102170279B1/ko
Priority to US15/798,267 priority patent/US10394526B2/en
Publication of KR20180051800A publication Critical patent/KR20180051800A/ko
Application granted granted Critical
Publication of KR102170279B1 publication Critical patent/KR102170279B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/58Random or pseudo-random number generators
    • G06F7/588Random number generators, i.e. based on natural stochastic processes

Abstract

본 실시예에 의한 난수 발생기는: 신호를 출력하되, 초기화 후 출력되는 신호가 페이즈 인버전(out-of-phase)될 때까지의 발진 회수가 랜덤한 특징을 가지는 오실레이터(oscillator) 및 발진 회수를 계수(count)하는 카운터(counter)를 포함하며, 계수된 발진 회수를 난수(random number) 발생의 시드(seed)로 사용한다.

Description

진성 난수 발생기{True Random Number Generator}
본 발명은 난수 발생기에 관한 것이다.
난수(random number)는 컴퓨터 시뮬레이션, 게임, 도박 등 산업 곳곳에 널리 사용되고 있다. 특히, 보안 시스템에 관련하여 암호화 기술은 양질의 난수를 필요로 한다. 양질 난수의 일종으로 진성 난수(True Random Number)가 있을 수 있다. 진성 난수는 예측이 불가능한 강한 유사 난수(strong pseudo random number)에 비교하여 같은 숫자를 다시 생성하는 것이 불가능하다는 특징을 가진다. 따라서 진성 난수는 이러한 특성을 만족하는 엔트로피 소스(Entropy Source)로부터 형성되며 이런 소스는 물리적 잡음 등을 제공하는 소스가 활용된다.
진성 난수 발생기는 잡음 신호를 이용하여 진성 난수를 형성할 수 있으나, 잡음 신호의 크기는 난수를 형성하기에 작아서 이를 증폭하거나 누적하는 등의 처리를 거쳐 난수를 형성할 수 있다. 그러나 잡음을 처리하는 방식에 따라 작은 양이라도 한 쪽으로 치우친 난수가 생성될 수도 있다는 문제점이 있을 수 있다. 또한, 임의의 외부 조건과 보안 시스템의 정지를 위한 공격에 의해 진성 난수 발생기 에서 생성된 난수가 훼손될 수 있다는 문제점이 있을 수 있다.
본 실시예에 의한 진성 난수 발생기는 이러한 종래 기술의 문제점을 해결하기 위한 것이다. 즉, 본 실시예의 목적은 외부 조건의 변화나 공격에도 높은 엔트로피 소스로써 동작하여 안정적인 진성 난수 발생기를 제공하는데 있다.
본 실시예에 의한 난수 발생기는: 신호를 출력하되, 초기화 후 출력되는 신호가 페이즈 인버전(phase inversion)될 때까지의 발진 회수가 랜덤한 특징을 가지는 오실레이터(oscillator) 및 발진 회수를 계수(count)하는 카운터(counter)를 포함하며, 계수된 발진 회수를 난수(random number) 발생의 시드(seed)로 사용한다.
본 실시예에 의한 오실레이터는: 단위 셀들이 발진하도록 캐스케이드되어 난수를 발생하는 오실레이터로, 단위 셀은: 출력 회로 쌍을 포함하며, 출력 회로 쌍은, 구동 전압과 공통 노드 사이에 연결되고, 게이트 전극이 서로 연결되어 입력 신호를 제공받는 PMOS 트랜지스터와 NMOS 트랜지스터, 및 출력 신호에서 입력 신호의 영향을 감소시키고, 노이즈에 의한 영향을 증가시키는 입력 신호 열화 저항이 PMOS 트랜지스터의 드레인 전극과 NMOS 트랜지스터의 드레인 전극 사이에 연결된다.
본 실시예에 의한 난수 발생기는 노이즈에 의하여 발진 회수가 랜덤한 특징을 가지는 차동 구조 오실레이터를 이용하므로 보다 무질서도가 높은 난수를 형성할 수 있다는 장점이 제공된다.
도 1은 본 실시예에 의한 난수 발생기의 개요를 나타내는 블록도이다.
도 2(a)는 차동 구조 오실레이터에 포함된 단위 셀의 연결관계를 도시한 도면이고, 도 2(b)는 각 단위 셀의 개요적 회로도를 도시한 도면이다.
도 3은 위상 검출기 실시예의 회로를 도시한 개요적 회로도이다.
도 4는 후처리부의 개요를 도시한 회로도이다.
도 5는 검출부의 개요를 도시한 도면이다.
도 6은 차동 구조 오실레이터의 출력 신호를 개요적으로 도시한 도면이다.
도 7은 본 실시예에 의한 진성 난수 발생기 내 신호의 타이밍 다이어그램이다.
이하에서는 첨부된 도면들을 참조하여 본 실시예들을 설명한다. 도 1은 본 실시예에 의한 난수 발생기(10)의 개요를 나타내는 블록도(block diagram)이다. 도 1을 참조하면, 신호를 출력하되, 초기화 후 출력되는 신호가 페이즈 인버전(phase inversion)될 때까지의 발진 회수가 랜덤한 특징을 가지는 차동 구조 오실레이터(oscillator, 100) 및 발진 회수를 계수(count)하는 카운터(counter, 200)를 포함한다.
일 실시예에서, 난수 발생기(10)는 위상 검출기(200)와, 카운터 및 스위치(SW)를 포함한다. 위상 검출기(200)는 차동 구조 오실레이터(100)의 출력 신호를 제공받아 위상 반전 여부를 파악한다. 스위치(SW)는 오실레이터의 출력 신호를 카운터(counter, 300)에 제공하거나 차단하며, 스위치(SW)는 위상 검출기(Phase Detector, 200)의 출력에 의하여 도통 여부가 제어된다.
일 실시예에서, 난수 발생기(10)는 멀티플렉서를 더 포함할 수 있다. 멀티 플렉서는 모드 선택 신호에 의하여 일반 동작 모드와 비동기 모드로 설정될 수 있으며, 비동기 모드에서 멀티플렉서는 외부 클럭에 동기화하지 않고 최대 속도로 난수를 발생한다. 고속 모드에서 클록 신호 CLK는 논리 하이 상태이며, 위상 검출기(200)가 출력하는 IPD 신호의 에지가 외부로 나가는 동기화 신호가 된다.
일 실시예에서, 난수 발생기(10)는 후처리부(Post Processing Unit, 400)를 포함하며, 후처리부(400)는 카운터(300)가 계수한 상기 발진 회수 정보를 저장하는 레지스터(도 4, 410 참조)와, 발진 회수 정보에 대하여 논리 연산을 수행하는 연산부(도 4, 420 참조)를 포함한다.
일 실시예로, 난수 발생기(10)는 펄스 형성기(pulse generator, 500)를 포함하며, 펄스 형성기(500)는 초기화 신호를 제공하여 상기 차동 구조 오실레이터를 초기화한다.
도 2는 차동 구조 오실레이터(100)의 개요를 도시한 도면으로, 도 2(a)는 차동 구조 오실레이터(100)에 포함된 단위 셀(110a, 110b, 110c)의 연결관계를 도시한 도면이고, 도 2(b)는 각 단위 셀의 개요적 회로도를 도시한 도면이다. 도 2(a)와 도 2(b)를 참조하면, 복수의 단위 셀들(110a, 110b, 110c)은 발진하는 출력을 제공하도록 캐스케이드(cascade)되어 연결된다. 일 예로, 각 단위 셀들은 반전 입력(inverting input, IN-), 비반전 입력(non-inverting input, IN+)을 포함하는 입력과, 반전 출력(inverting output, O-), 비반전 출력(non-inverting output, O+)을 포함하는 출력을 포함하며, 리셋 전극(R)과 공통 전극(S)을 포함한다.
각 단위 셀은 출력을 제공하는 출력회로쌍(112)를 포함한다. 출력회로쌍(112)에 포함된 증폭기는 구동 전원(VDD)과 공통 노드(S) 사이에 연결된 PMOS 트랜지스터와, NMOS 트랜지스터 및 각 트랜지스터의 드레인 전극에 연결된 신호 열화 저항(RD)를 포함한다. 출력회로쌍에 포함된 증폭기는 신호 열화 저항(RD)를 포함하여 출력 신호에서 입력 신호의 영향에 비하여 노이즈에 의한 영향을 증가시킨다. 따라서, 출력 신호의 무질서도(entropy)를 증가시킬 수 있다.
일 실시예로, 증폭기는 피드백 저항(RF)를 더 포함한다. 피드백 저항(RF)는 증폭기에 포함된 소자 사이의 부정합(mismatch)의 영향을 감소시키는 역할을 수행한다. 부정합에 의하여 출력에 증폭기 출력에 경향성(bias)이 형성될 수 있으므로, 출력(output)과 입력(input) 사이에 네거티브 피드백 기능을 수행하는 피드백 저항을 두어 출력 신호에서 경향성을 제거할 수 있다.
일 실시예로, 각 단위 셀(110a, 110b, 110c)은 공통 노드(s)에 연결되고 구동 신호(enable signal, EN)에 의하여 턴 온되어 단위 셀을 활성화하는 활성화 트랜지스터(EN)을 더 포함한다. 포함하며, 활성화 트랜지스터(EN)의 다른 전극은 전류 조정 저항(RS)과 연결될 수 있다.
일 실시예로, 단위 셀의 반전 출력은 캐스케이드로 연결된 단위 셀의 비반전 입력으로 제공되고, 비반전 출력은 캐스케이드로 연결된 단위 셀의 반전 입력으로 제공된다.
각 단위 셀(110a, 110b, 110c)은 리셋 전극(R)에 제공된 신호에 의하여 리셋될 수 있다. 도 2(a)로 도시된 블록도에서, 단위 셀 110b의 리셋 전극에 로우(LOW) 신호가 제공되면 단위 셀 110b에 포함된 출력회로쌍(112)들에 포함된 리셋 트랜지스터(TR)들이 턴 온 되어 출력 노드를 구동 전압(VDD)로 리셋 한다. 단위 셀 110a, 110c의 리셋 전극(R)에는 구동 전원 VDD가 제공되고, 단위 셀 110a, 110c에 포함된 리셋 트랜지스터(TR)들은 모두 턴 오프된다. 단위 셀 110c는 단위 셀 110b가 리셋되어 제공하는 논리 하이 상태의 출력을 제공받고, 이를 반전하여 로우 상태의 전압을 출력한다. 또한, 리셋 상태에서 오실레이터의 출력전압은 출력회로쌍 모두 로우 상태의 전압을 출력하는 바, 도 6에서 도시된 바와 같이 인 페이즈(in phase) 상태이다.
일 실시에에서, 오실레이터(100)는 각 단위 셀의 공통 노드(S) 사이에 연결된 전류 조절 저항(RS)를 포함한다. 각 단위 셀에 포함된 어느 하나의 절반 회로는 공통 노드(S)를 통하여 다른 하나의 절반 회로로 전달되는 부정합을 가지는 전류 및 노이즈를 제공하여 증폭하나, 전류 조절 저항(RS)를 통하여 각 단위 셀들을 연결하면 각 절반 회로의 이득이 감소하며, MOS 트랜지스터 부정합의 영향은 감소하고 저항 간의 비로 이득을 정할 수 있다. 따라서, 부정합에 의한 출력 신호의 경향성을 제거할 수 있으며, 페이즈 인버전까지의 발진 주기를 조절할 수 있으며, 높은 무질서도를 가지는 신호를 제공할 수 있다는 장점이 제공된다.
도 3은 위상 검출기(Phase Detector, 200) 실시예의 회로를 도시한 개요적 회로도이다. 도 3에서 도시된 위상 검출기는 단순히 구현 가능한 하나의 예일 따름이며, 다른 구성을 가지는 위상 검출기를 이용하여 제공된 신호의 위상차를 검출할 수 있다.
본 실시예에 의한 위상 검출기(200)는 제공된 신호(B+, B-)가 페이즈 인버전된 관계에 있을 때, 이를 지시하는 신호 IPD 신호를 출력한다. 도 3을 참조하면, 위상 검출기(200)에 포함된 플립 플롭 Da, Db는 오실레이터의 출력 신호(B+, B-)를 제공받는다. 오실레이터가 제공한 출력 신호(B+, B-)가 페이즈 인버전된 경우에 제공된 출력 신호(B+, B-)에 동기되어 각각 논리 하이(high) 상태의 출력 신호를 제공한다. 출력 신호를 제공받은 NAND 게이트(NAND1)는 플립 플롭 Da, Db의 R' 전극에 리셋 신호를 제공하여 플립 플롭 Da, Db을 리셋한다.
리셋된 플립 플롭 Da, Db는 논리 로우(LOW) 상태의 출력을 제공하고, 플립 플롭 Dc, Dd가 반전된 신호인 하이 상태의 신호를 출력한다. AND 게이트는 플립 플롭 Dc, Dd가 출력한 신호를 제공받아 논리 하이 상태로 입력 신호가 페이즈 인버전된 관계에 있음을 지시하는 신호 IPD 신호를 출력한다.
스위치(SW)는 제어 전극으로 위상 검출기(200)의 출력 신호 IPD를 제공받아 턴 온/턴 오프가 제어된다. 스위치(SW)는 제어 전극으로 제공된 신호에 따라 턴 온/턴 오프가 제어 되어 일 전극으로 제공된 오실레이터(100)의 출력 신호를 타 전극에 연결된 카운터(300)에 제공한다. 도 1로 도시된 난수 발생기의 실시예와, 도 3으로 도시된 위상 검출기의 실시예에 의하면 스위치(SW)는 오실레이터(100)의 출력 신호가 페이즈 인버전된 관계를 나타내는 하이 상태의 IPD 신호를 제공받아 턴 오프 된다. 그러나, 도시되지 않은 다른 실시예에 의하면 스위치(SW)는 로우 상태의 신호를 제공받아 턴 온 된다.
일 실시예로, 스위치(SW)는 N 타입 MOSFET(Metal Oxide Semiconductor Field Effect Transistor), P 타입 MOSFET, NPN BJT(Bipolar Junction Transistor), PNP BJT 또는 기타 반도체 스위치로 구현될 수 있다.
카운터(300)는 오실레이터(100)이 출력하는 출력 신호를 제공받고, 발진 회수를 계수(count)한다. 카운터(300)가 계수한 결과는 후처리부(400)에 제공된다. 일 실시예에서, 카운터(300)는 펄스 형성기(500)가 제공하는 초기화 신호를 제공받아 초기화된다.
도 4는 후처리부(400)의 개요를 도시한 회로도이다. 도 4를 참조하면, 카운터(300)가 계수한 결과는 후처리부(400)에 제공된다. 카운터(300)가 계수한 발진 회수는 후술할 바와 같이 후처리부(400)가 난수 발생의 시드(seed)로 이용한다.
후처리부(400)는 카운터(300)의 계수 결과를 저장하는 레지스터(410)와 계수 결과에 대한 논리 연산을 수행하는 연산부(420)을 포함한다. 카운터에 저장된 이진 정보(binary data)인 계수 결과는 클록에 동기되어 레지스터(410)에 저장된다.
카운터가 출력한 발진 회수에 대한 정보인 이진 데이터(binary data)는 클록에 동기화되어 제1 레지스터 그룹(412)에 저장된다. 이어지는 클록에서 제1 레지스터 그룹(412)에 저장된 이진 데이터는 제2 레지스터 그룹(414)에 제공되어 저장된다. 도시되지 않은 레지스터(410)의 다른 실시예에서, 레지스터는 세 개 이상의 레지스터 그룹들을 포함할 수 있다.
연산부(420)는 제1 레지스터 그룹(412)의 출력과 제2 레지스터 그룹(414)의 출력에 대하여 논리 연산을 수행하여 난수(RN)의 어느 한 비트(bit)를 형성하고, 출력한다. 도시된 실시예에서는 현재 비트와 이전 한 클록의 비트에 대하여 논리 연산을 수행하나, 도시되지 않은 실시예에서는 현재 비트, 두 클록 이전 비트들에 대하여 논리 연산을 수행하여 난수의 어느 한 비트를 형성한다.
또한, 도시된 실시예에서, 연산부(420)는 배타적 논리합(Exclusive OR) 연산을 수행하나, 도시되지 않는 다른 실시에에 따르면 연산부는 배타적 논리곱(Exclusive AND), 논리합(OR), 논리곱(AND), 부정논리곱(NAND), 부정논리합(NOR) 등의 논리 연산을 수행하여 난수(RN)의 어느 한 비트를 형성한다.
본 실시예에 의한 연산부에 의하면 보다 무질서도(entropy)가 높은 난수를 얻을 수 있다는 장점이 제공된다. 예를 들어, 한 신호의 0과 1의 평균값이 0.3 또는 0.7이고 다른 신호원으로부터 생성된 다른 신호의 평균값이 0.4 또는 0.6이면 논리 연산을 거쳐 새로 생성된 신호는 0과 1의 이상적인 평균값인 '0.5'에 근접하며, 신호가 한쪽으로 바이어스 되지 않아 높은 무질서를 가지는 신호를 획득할 수 있다.
다만, 상기한 예에서 두 신호는 서로 다른 독립된 신호원으로부터 제공된 신호이어야 한다. 그러나 본 실시예에 의하면 독립된 복수의 신호원을 사용하지 않고, 이전 클록에서 생성된 값을 레지스터에 저장한 후, 이어지는 클록에 생성한 신호와 논리 연산을 수행하여 높은 무질서도를 가지는 신호를 형성할 수 있다. 본 실시예에 의한 오실레이터는 열잡음에 의하여 발진 회수의 변화가 발생하며, 열잡음은 서로 시간에 무관하므로 이전 클록과 이어지는 클록에서 형성된 신호들은 서로 무관한 것으로 간주할 수 있기 때문이다.
도 5는 검출부(Detection unit, 600)의 개요를 도시한 회로도이다. 도 5를 참조하면, 검출부(600)는 유효 난수 생성여부를 검출한다. 검출부(600)는 외부 조건이나 공격에 의하여 진성 난수 발생기(10)가 정상 동작을 하지 못하면 도 3의 VD 노드에서 로우 상태의 검출 신호를 출력한다. 일 예로, 외부에서 난수 발생기를 공격하는 경우에, 오실레이터가 정상적으로 동작을 하지 못할 수 있다. 이러한 경우에, 클록과 동기화 되는 레지스터는 특정 패턴이 출력된다. 이를 검출하기 위해 외부 공격에도 오실레이터가 정상 동작하여 끝까지 두 위상 신호가 반전 되었다면 IPD 신호가 논리 하이 상태가 되므로 IPD신호를 이용하여 검출부(600)의 출력 신호인 VD는 논리 하이 상태를 출력한다. 그러나, IPD가 발생하지 않으면 검출부(600)의 출력 신호인 VD가 논리 로우 상태가 되어 유효하지 않음을 파악할 수 있다.
이하에서는 도 6 내지 도 7을 참조하여 본 실시예에 의한 진성 난수 발생기(10)의 동작을 설명한다. 도 6은 오실레이터(100)의 출력 신호를 개요적으로 도시한 도면이다. 도 7은 본 실시예에 의한 진성 난수 발생기(10) 내 신호의 타이밍 다이어그램이다.
진성 난수 발생기(10)의 동작을 위하여 구동 신호(EN)가 제공되고, 클록(CLK) 신호와 멀티플렉서가 제공한 구동 전압(VDD)은 논리곱(AND) 게이트에 제공되면, 논리곱(AND) 게이트는 하이(high) 상태의 신호를 출력한다. 펄스 형성기(300)는 논리곱 게이트로부터 신호를 제공받고 리셋 신호(reset) 신호를 제공한다. 펄스 형성기(300)가 출력하는 리셋 신호는 일 예로, 2~3ns 의 펄스폭을 가질 수 있다. 또한, 난수 생성 주기는 대략 수~수 십MHz의 주파수를 가질 수 있다. 일 실시예로, 도 7로 도시된 리셋 신호는 펄스폭이 짧은 신호이며, 논리 하이 상태의 신호를 제공하여 리셋을 수행하는 것으로 도시되었으나, 오실레이터에 포함된 리셋 스위치가 PMOS인 경우에는 리셋 신호를 반전하여 논리 로우 상태의 신호를 제공하여 리셋을 수행할 수 있다.
오실레이터(100)는 리셋 신호를 제공받고 서로 인 페이즈 관계인 출력 신호를 제공하며, 카운터(300)는 리셋 신호를 제공받아 초기화된다.
단위 셀(100a, 100b, 100c)에 포함된 쌍(112)은 입력 신호를 제공받고 이를 증폭하여 출력한다. 그러나, 노이즈에 의한 영향을 감소시키고, 높은 이득으로 입력 신호를 증폭하여 출력하는 일반적인 증폭기와는 달리, 쌍(112)에 포함된 증폭기는 출력 신호에서 신호 열화 저항(RD)에 의하여 입력 신호의 영향에 비하여 열 노이즈 등을 포함하는 노이즈에 의한 영향이 더 크다.
또한 출력회로쌍을 이루는 증폭기들 사이에는 미세한 전류 부정합이 있다. 어느 한 증폭기가 제공한 전류는 공통 노드(S)를 거쳐 다른 증폭기에 제공되어 증폭되는 과정이 반복되며, 전류 부정합에 의한 영향도 증폭되어 단위 셀들이 출력하는 출력 신호에 영향을 미친다. 또한 출력 회로 쌍에 형성된 노이즈도 증폭기에 의하여 증폭되어 출력 신호에 미치는 영향이 증가한다.
오실레이터(100)가 출력하는 신호는 최초 인 페이즈(in-phase)인 상태에서 상기한 영향들에 의하여 위상 차이가 형성되도록 발진한다. 발진이 진행함에 따라 상기한 노이즈에 의한 영향과 전류 부정합에 의한 영향이 누적되어 오실레이터(100)가 출력하는 신호는 페이즈 인버전 관계에 이른다. 위상 검출기(200)는 출력 신호의 페이즈 인버전을 검출하고, 이를 검출한 IPD 신호를 출력하여 스위치(SW)를 턴 오프한다.
카운터(300)는 스위치(SW)가 턴 오프될 때까지 오실레이터(100)의 출력 신호의 발진 회수를 계수하고, 이를 후처리부(400)에 제공한다. 후처리부(400)에 포함된 제1 레지스터(412)는 카운터(300)가 제공한 발진 회수를 제공받아 저장하고, 출력한다.
제2 레지스터(414)는 이전 클록(CLK)에서 계수된 발진 회수에 대한 정보를 저장하고 있다. 연산부(420)는 제1 레지스터(412)와 제2 레지스터(414)가 제공하는 비트들에 대하여 논리 연산을 수행하여 난수(RN)를 제공한다.
본 발명에 대한 이해를 돕기 위하여 도면에 도시된 실시 예를 참고로 설명되었으나, 이는 실시를 위한 실시예로, 예시적인 것에 불과하며, 당해 분야에서 통상적 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시 예가 가능하다는 점을 이해할 것이다. 따라서, 본 발명의 진정한 기술적 보호범위는 첨부된 특허청구범위에 의해 정해져야 할 것이다.
1: 진성 난수 발생기 100: 오실레이터
110a, 110b, 110c: 단위 셀 112: 출력 회로 쌍
200: 위상 검출기 300: 카운터
400: 후처리부 410: 레지스터
412: 제1 레지스터 그룹 414: 제2 레지스터 그룹
420: 연산부 500: 펄스 제공부
600: 검출부

Claims (14)

  1. 신호를 출력하되, 초기화 후 출력되는 상기 신호가 페이즈 인버전(phase inversion)될 때까지의 발진 회수가 노이즈에 의하여 랜덤한 특징을 가지는 오실레이터(oscillator); 및
    상기 발진 회수를 계수(count)하는 카운터(counter)를 포함하며, 계수된 상기 발진 회수를 난수(random number) 발생의 시드(seed)로 사용하는 난수 발생기.
  2. 제1항에 있어서,
    상기 신호가 페이즈 인버전(phase inversion) 될 때, 상기 신호의 위상차는 180도의 차이인 난수 발생기.
  3. 제2항에 있어서,
    상기 난수 발생기는,
    상기 신호를 제공받아 위상 반전 여부를 파악하는 위상 검출기와,
    상기 오실레이터의 출력 신호를 상기 카운터에 제공하거나 차단하는 스위치(SW)를 포함하며, 상기 스위치는 상기 위상 검출기의 출력에 의하여 도통 여부가 제어되는 난수 발생기.
  4. 제1항에 있어서,
    상기 초기화될 때 상기 출력되는 상기 신호는 인 페이즈(in phase)인 난수 발생기.
  5. 제1항에 있어서, 상기 난수 발생기는,
    후처리부를 더 포함하되, 상기 후처리부는:
    상기 카운터가 계수한 상기 발진 회수 정보를 저장하는 레지스터와,
    상기 발진 회수 정보에 대하여 논리 연산을 수행하는 연산부를 포함하는 난수 발생기.
  6. 제5항에 있어서, 상기 연산부는,
    상기 레지스터는 상기 발진 회수 정보를 이진 정보로 저장하며,
    비트에 대하여 배타적 논리합(Exclusive Or) 연산을 수행하여 난수를 형성하는 난수 발생기.
  7. 제1항에 있어서, 상기 난수 발생기는,
    초기화 신호를 제공하여 상기 오실레이터를 초기화하는 펄스 형성기(pulse generator)를 더 포함하는 난수 발생기.
  8. 제1항에 있어서, 상기 난수 발생기는,
    상기 카운터에 제공되어 상기 카운터를 초기화하는 난수 발생기.
  9. 단위 셀들이 발진하도록 캐스케이드되어 난수를 발생하는 오실레이터로, 상기 단위 셀은:
    출력 회로 쌍을 포함하며, 상기 출력 회로 쌍은,
    구동 전압과 공통 노드 사이에 연결되고, 게이트 전극이 서로 연결되어 입력 신호를 제공받는 PMOS 트랜지스터와 NMOS 트랜지스터; 및
    상기 출력 신호에서 상기 입력 신호의 영향을 감소시키고, 노이즈에 의한 영향을 증가시키는 입력 신호 열화 저항이 상기 PMOS 트랜지스터의 드레인 전극과 NMOS 트랜지스터의 드레인 전극 사이에 연결된 오실레이터.
  10. 제9항에 있어서,
    상기 PMOS 트랜지스터의 드레인 전극과 NMOS 트랜지스터의 드레인 전극 사이에 연결된 입력 신호 열화 저항은,
    상기 PMOS 트랜지스터의 드레인 전극과 출력 노드에 연결된 제1 입력 신호 열화 저항과,
    상기 NMOS 트랜지스터의 드레인 전극과 출력 노드에 연결된 제2 입력 신호 열화 저항을 포함하는 오실레이터.
  11. 제9항에 있어서,
    상기 출력 회로 쌍은
    상기 입력 신호가 제공되는 입력 노드와,
    상기 출력 신호가 제공되는 출력 노드 사이에 연결되는 피드백 저항을 더 포함하는 오실레이터.
  12. 제9항에 있어서,
    상기 출력 회로 쌍은
    상기 입력 신호가 제공되는 입력 노드와,
    상기 출력 신호가 제공되는 출력 노드 사이에 연결되는 피드백 저항을 더 포함하는 오실레이터.
  13. 제9항에 있어서,
    상기 단위 셀은,
    상기 출력 회로 쌍을 리셋하는 리셋 트랜지스터를 더 포함하는 오실레이터.
  14. 제9항에 있어서,
    상기 단위 셀은,
    상기 공통 노드에 연결되고 상기 단위 셀을 활성화하는 활성화 트랜지스터를 더 포함하는 오실레이터.


KR1020160148589A 2016-11-09 2016-11-09 진성 난수 발생기 KR102170279B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020160148589A KR102170279B1 (ko) 2016-11-09 2016-11-09 진성 난수 발생기
US15/798,267 US10394526B2 (en) 2016-11-09 2017-10-30 True random number generator and oscillator

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020160148589A KR102170279B1 (ko) 2016-11-09 2016-11-09 진성 난수 발생기

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020190064023A Division KR102118204B1 (ko) 2019-05-30 2019-05-30 진성 난수 발생기

Publications (2)

Publication Number Publication Date
KR20180051800A true KR20180051800A (ko) 2018-05-17
KR102170279B1 KR102170279B1 (ko) 2020-10-26

Family

ID=62064549

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020160148589A KR102170279B1 (ko) 2016-11-09 2016-11-09 진성 난수 발생기

Country Status (2)

Country Link
US (1) US10394526B2 (ko)
KR (1) KR102170279B1 (ko)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102170279B1 (ko) * 2016-11-09 2020-10-26 포항공과대학교 산학협력단 진성 난수 발생기
CN110750234B (zh) * 2019-09-29 2023-03-21 太原理工大学 一种超高速实时物理随机数产生方法
US11349462B1 (en) * 2021-03-05 2022-05-31 Taiwan Semiconductor Manufacturing Company, Ltd. Selector-based random number generator and method thereof

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20070068990A (ko) * 2005-12-27 2007-07-02 인더스트리얼 테크놀로지 리서치 인스티튜트 랜덤 번호 발생기 및 랜덤 번호 발생 방법
KR20110060080A (ko) * 2009-11-30 2011-06-08 삼성전자주식회사 난수 발생기

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI307038B (en) * 2005-12-27 2009-03-01 Ind Tech Res Inst Random number generator for radio frequency identifciation tag and seed number generator for generating a seed number for operation of the random number generator
JP5259830B2 (ja) * 2009-09-29 2013-08-07 株式会社東芝 乱数生成回路
KR20110060033A (ko) * 2009-11-30 2011-06-08 박옥희 해상 구조물용 커플링
KR102170279B1 (ko) * 2016-11-09 2020-10-26 포항공과대학교 산학협력단 진성 난수 발생기

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20070068990A (ko) * 2005-12-27 2007-07-02 인더스트리얼 테크놀로지 리서치 인스티튜트 랜덤 번호 발생기 및 랜덤 번호 발생 방법
KR20110060080A (ko) * 2009-11-30 2011-06-08 삼성전자주식회사 난수 발생기

Also Published As

Publication number Publication date
US10394526B2 (en) 2019-08-27
KR102170279B1 (ko) 2020-10-26
US20180129477A1 (en) 2018-05-10

Similar Documents

Publication Publication Date Title
US6061702A (en) Random number generator
US7702705B2 (en) Random number generation circuit
US7233172B2 (en) Differential amplifier circuit capable of accurately amplifying even high-speeded signal of small amplitude
US9405510B2 (en) Random number generator
KR102170279B1 (ko) 진성 난수 발생기
KR100829793B1 (ko) 랜덤 신호 발생기 및 이를 포함하는 난수 발생기
US7737738B2 (en) Frequency divider
US8963646B1 (en) Delay line ring oscillation apparatus
US9337156B2 (en) Method for manufacturing a digital circuit and digital circuit
Park et al. A PVT-tolerant oscillation-collapse-based true random number generator with an odd number of inverter stages
KR102118204B1 (ko) 진성 난수 발생기
US11023207B1 (en) True random number generator and system comprising the same
EP3537413A1 (en) Reliable low-power memory-based puf architecture
US7394872B2 (en) Data receiver and method for receiving data using folded differential voltage sampler
US6433627B1 (en) GTL+one-one/zero-zero detector
US10651826B2 (en) Semiconductor device including monitoring circuit
Herkle et al. An Arbiter PUF employing eye-opening oscillation for improved noise suppression
US7274244B2 (en) Pulse multiplexed output system
US20230044357A1 (en) Semiconductor device implementing physically unclonable function
TWI753732B (zh) 計數電路及操作系統
Saxl et al. Ultra-low-power ring oscillator based true random number generator for passive UHF RFID tags
CN110912541B (zh) 比较器电路系统
Grossi et al. Novel BTI Robust Ring-Oscillator-Based Physically Unclonable Function
KR100650854B1 (ko) 셀프 활성화 기능을 가지는 증폭 회로
KR101069377B1 (ko) 반전증폭기 및 반전증폭기 기반 시스템

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
AMND Amendment
E90F Notification of reason for final refusal
E601 Decision to refuse application
A107 Divisional application of patent
AMND Amendment
J201 Request for trial against refusal decision
J301 Trial decision

Free format text: TRIAL NUMBER: 2019101002618; TRIAL DECISION FOR APPEAL AGAINST DECISION TO DECLINE REFUSAL REQUESTED 20190802

Effective date: 20200623

GRNO Decision to grant (after opposition)
GRNT Written decision to grant