핵심 개념
이 연구는 이중 진자 시스템의 고유한 무작위성을 활용하여 FPGA 기반의 의사 난수 생성기를 설계하고 구현하였다.
초록
이 연구는 이중 진자 시스템의 고유한 무작위성을 활용하여 FPGA 기반의 의사 난수 생성기를 설계하고 구현하였다. 연구는 다음 세 가지 주요 부분으로 구성된다:
환경 데이터를 활용하여 난수 생성기의 시드 정보를 얻는 하드웨어 및 소프트웨어 인터페이스(시드 생성기)
사용자 입력에 따라 생성된 난수를 캡처하고 LED 화면에 표시하는 기능
이중 진자 난수 생성기 알고리즘(난수 생성기)
연구팀은 CMOD A7 35t FPGA 보드를 활용하여 환경 데이터로부터 얻은 시드 정보를 기반으로 의사 난수를 생성하는 알고리즘을 구현하였다. 이를 위해 다양한 센서를 활용하여 환경 데이터를 수집하고, FPGA와 센서 간 인터페이스를 구축하였다. 또한 이중 진자 시스템의 동적 방정식을 Verilog HDL로 구현하여 난수 생성 알고리즘을 실현하였다. 최종적으로 통합 시스템을 구축하여 사용자 입력에 따라 생성된 난수를 LCD 화면에 표시하는 기능을 구현하였다.
통계
이 의사 난수 생성기는 10자리 숫자를 생성한다. 100만 개의 난수 데이터를 분석한 결과, 히스토그램에서 뚜렷한 패턴이 관찰되지 않았으며 백만 번 이상 반복되지 않는 것으로 나타났다. 이는 이 생성기가 약 10억 개의 고유한 조합을 가지고 있음을 의미한다.