一種產(chǎn)生真隨機(jī)數(shù)的方法
【專利摘要】本發(fā)明提供了一種產(chǎn)生真隨機(jī)數(shù)的方法,基于FPGA實(shí)現(xiàn),首先利用振蕩器產(chǎn)生高頻、大抖動(dòng)的類時(shí)鐘信號(hào),再使用低頻、純凈時(shí)鐘對(duì)所產(chǎn)生的類時(shí)鐘信號(hào)進(jìn)行采樣,對(duì)采樣后的比特流進(jìn)行修正、壓縮等后處理,然后將經(jīng)過后處理的比特流復(fù)制為兩路比特流,分別進(jìn)行隨機(jī)性檢測(cè)和位拼接處理。本發(fā)明還增加了控制高頻、大抖動(dòng)類時(shí)鐘信號(hào)產(chǎn)生環(huán)路的閉合與斷開的開關(guān)信號(hào),且類時(shí)鐘信號(hào)的中心振蕩頻率控制在1.5GHz至3GHz的范圍內(nèi)。本發(fā)明的優(yōu)點(diǎn)在于:保證了生成隨機(jī)數(shù)的質(zhì)量,解決了FPGA內(nèi)部生成隨機(jī)數(shù)速率低、功耗大、隨機(jī)性能不好的問題。
【專利說明】一種產(chǎn)生真隨機(jī)數(shù)的方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及真隨機(jī)數(shù)領(lǐng)域,特別是一種基于FPGA的產(chǎn)生真隨機(jī)數(shù)的方法。
【背景技術(shù)】
[0002]在真隨機(jī)數(shù)產(chǎn)生的技術(shù)方案中,基于現(xiàn)場(chǎng)可編程門陣列(FPGA)的真隨機(jī)數(shù)產(chǎn)生方案主要是用幾個(gè)獨(dú)立高頻自由振蕩器在頻域上的演算作為采樣數(shù)據(jù)的輸入,采樣后經(jīng)過線性反饋移位寄存器的偏移糾正,再進(jìn)入真隨機(jī)數(shù)的實(shí)現(xiàn)。
[0003]其中,傳統(tǒng)方案在真隨機(jī)數(shù)產(chǎn)生的過程中沒有加入實(shí)時(shí)檢測(cè),不能確保產(chǎn)生的隨機(jī)數(shù)的真隨機(jī)性。且目前基于FPGA的隨機(jī)數(shù)發(fā)生器一般會(huì)產(chǎn)生較大的功耗,隨機(jī)數(shù)產(chǎn)生速率較低。
[0004]因此,對(duì)本領(lǐng)域技術(shù)人員而言,真隨機(jī)數(shù)產(chǎn)生過程中FPGA內(nèi)部在工作時(shí)存在功耗大、生成隨機(jī)數(shù)速率低以及隨機(jī)性能不好的問題。
【發(fā)明內(nèi)容】
[0005]本發(fā)明提出了一種產(chǎn)生真隨機(jī)數(shù)的方法,該方法可以解決在FPGA內(nèi)部生成隨機(jī)數(shù)速率低、功耗大、隨機(jī)性能不好的問題。
[0006]本發(fā)明采用以下技術(shù)方案解決上述技術(shù)問題:
[0007]一種產(chǎn)生真隨機(jī)數(shù)的方法,基于FPGA實(shí)現(xiàn),包括以下步驟:
[0008]步驟1:利用振蕩器產(chǎn)生高頻、大抖動(dòng)的類時(shí)鐘信號(hào);
[0009]步驟2:使用低頻、純凈時(shí)鐘對(duì)所產(chǎn)生的類時(shí)鐘信號(hào)進(jìn)行采樣;
[0010]步驟3:對(duì)采樣后的比特流進(jìn)行修正、壓縮等后處理;
[0011]步驟4:將經(jīng)過后處理的比特流復(fù)制為兩路比特流,分別進(jìn)行隨機(jī)性檢測(cè)和位拼接處理。
[0012]進(jìn)一步地,所述的隨機(jī)性檢測(cè)為把能反映一個(gè)序列隨機(jī)性的幾項(xiàng)標(biāo)準(zhǔn)在FPGA內(nèi)部實(shí)現(xiàn),對(duì)經(jīng)后處理輸出的比特流進(jìn)行在線實(shí)時(shí)檢測(cè),當(dāng)隨機(jī)性不滿足要求時(shí),則對(duì)步驟3中所涉及的后處理算法進(jìn)行實(shí)時(shí)調(diào)整和適應(yīng);所述的位拼接處理為將多路I比特真隨機(jī)數(shù)流進(jìn)行位拼接、緩存等。
[0013]進(jìn)一步地,所述的高頻、大抖動(dòng)的類時(shí)鐘信號(hào)的中心振蕩頻率在1.5GHz至3GHz的范圍內(nèi)。
[0014]進(jìn)一步地,所述的高頻、大抖動(dòng)的類時(shí)鐘信號(hào)是基于奇數(shù)個(gè)非門構(gòu)成的環(huán)路產(chǎn)生的,為了有效控制功耗,增加了控制環(huán)路閉合、斷開的開關(guān)信號(hào)。
[0015]本發(fā)明的有益效果包括:
[0016]1、能進(jìn)行隨機(jī)性能實(shí)時(shí)檢測(cè),保證生成隨機(jī)數(shù)的質(zhì)量。
[0017]2、如果高頻、大抖動(dòng)類時(shí)鐘信號(hào)的中心振蕩頻率過低,會(huì)導(dǎo)致生成隨機(jī)數(shù)的速率降低或是生成隨機(jī)數(shù)的隨機(jī)性不能滿足要求;如果過高,則會(huì)使FPGA底層基本器件開關(guān)速度大幅度提高,導(dǎo)致局部動(dòng)態(tài)功耗增大,局部溫度過高,極有可能使FPGA底層基本器件損壞。因此,高頻、大抖動(dòng)類時(shí)鐘信號(hào)的中心振蕩頻率在1.5GHz至3GHz的范圍內(nèi),既能滿足速度的要求,也不至于使FPGA受到較大的損壞。
[0018]3、增加了控制環(huán)路閉合與斷開的開關(guān)信號(hào),可以有效控制功耗。
【具體實(shí)施方式】
[0019]本實(shí)施例采用的產(chǎn)生真隨機(jī)數(shù)的方法是基于FPGA實(shí)現(xiàn)的,包括以下步驟:
[0020]步驟1:利用振蕩器產(chǎn)生高頻、大抖動(dòng)的類時(shí)鐘信號(hào);
[0021]步驟2:使用低頻、純凈時(shí)鐘對(duì)所產(chǎn)生的類時(shí)鐘信號(hào)進(jìn)行采樣;
[0022]步驟3:對(duì)采樣后的比特流進(jìn)行修正、壓縮等后處理;
[0023]步驟4:將經(jīng)過后處理的比特流復(fù)制為兩路比特流,分別進(jìn)行隨機(jī)性檢測(cè)和位拼接處理。
[0024]所述的隨機(jī)性檢測(cè)為把能反映一個(gè)序列隨機(jī)性的幾項(xiàng)標(biāo)準(zhǔn)在FPGA內(nèi)部實(shí)現(xiàn),對(duì)經(jīng)后處理輸出的比特流進(jìn)行在線實(shí)時(shí)檢測(cè),當(dāng)隨機(jī)性不滿足要求時(shí),則對(duì)步驟3中所涉及的后處理算法進(jìn)行實(shí)時(shí)調(diào)整和適應(yīng)。
[0025]所述的位拼接處理為將多路I比特真隨機(jī)數(shù)流進(jìn)行位拼接、緩存等。
[0026]所述的高頻、大抖動(dòng)類時(shí)鐘信號(hào)的中心振蕩頻率尤為關(guān)鍵。如果過低,可能導(dǎo)致生成隨機(jī)數(shù)的速率降低或是生成隨機(jī)數(shù)的隨機(jī)性不能滿足要求;而過高,則會(huì)使FPGA底層基本器件開關(guān)速度大幅度提高,進(jìn)而導(dǎo)致局部動(dòng)態(tài)功耗增大,局部溫度過高,極有可能使FPGA底層基本器件損壞。綜上,本發(fā)明所述的高頻、大抖動(dòng)類時(shí)鐘信號(hào)的中心振蕩頻率控制在1.5GHz至3GHz的范圍內(nèi),既能滿足速率要求,也不至于使FPGA受到較大的損壞。
[0027]由于產(chǎn)生真隨機(jī)數(shù)的動(dòng)態(tài)功耗的變化范圍主要由高頻、大抖動(dòng)類時(shí)鐘信號(hào)決定,因此所述的高頻、大抖動(dòng)類時(shí)鐘信號(hào)的產(chǎn)生是基于奇數(shù)個(gè)非門構(gòu)成的環(huán)路。其中,為了控制動(dòng)態(tài)功耗,增加了控制環(huán)路閉合與斷開的開關(guān)信號(hào)。
[0028]以上所述僅為本發(fā)明創(chuàng)造的較佳實(shí)施例而已,并不用以限制本發(fā)明創(chuàng)造,凡在本發(fā)明創(chuàng)造的精神和原則之內(nèi)所作的任何修改、等同替換和改進(jìn)等,均應(yīng)包含在本發(fā)明創(chuàng)造的保護(hù)范圍之內(nèi)。
【權(quán)利要求】
1.一種產(chǎn)生真隨機(jī)數(shù)的方法,基于??以實(shí)現(xiàn),包括以下步驟: 步驟1:利用振蕩器產(chǎn)生高頻、大抖動(dòng)的類時(shí)鐘信號(hào); 步驟2:使用低頻、純凈時(shí)鐘對(duì)所產(chǎn)生的類時(shí)鐘信號(hào)進(jìn)行采樣; 步驟3:對(duì)采樣后的比特流進(jìn)行修正、壓縮等后處理; 步驟4:將經(jīng)過后處理的比特流復(fù)制為兩路比特流,分別進(jìn)行隨機(jī)性檢測(cè)和位拼接處理。
2.如權(quán)利要求1所述的一種產(chǎn)生真隨機(jī)數(shù)的方法,其特征在于:所述的隨機(jī)性檢測(cè)為把能反映一個(gè)序列隨機(jī)性的幾項(xiàng)標(biāo)準(zhǔn)在內(nèi)部實(shí)現(xiàn),對(duì)經(jīng)后處理輸出的比特流進(jìn)行在線實(shí)時(shí)檢測(cè),當(dāng)隨機(jī)性不滿足要求時(shí),則對(duì)步驟3中所涉及的后處理算法進(jìn)行實(shí)時(shí)調(diào)整和適應(yīng)。
3.如權(quán)利要求1所述的一種產(chǎn)生真隨機(jī)數(shù)的方法,其特征在于:所述的高頻、大抖動(dòng)的類時(shí)鐘信號(hào)的中心振蕩頻率在1.56??!2至3(--的范圍內(nèi)。
4.如權(quán)利要求1所述的一種產(chǎn)生真隨機(jī)數(shù)的方法,其特征在于:所述的高頻、大抖動(dòng)的類時(shí)鐘信號(hào)是基于奇數(shù)個(gè)非門構(gòu)成的環(huán)路產(chǎn)生的,同時(shí)增加了控制環(huán)路閉合、斷開的開關(guān)信號(hào)。
【文檔編號(hào)】G06F7/58GK104461453SQ201310436693
【公開日】2015年3月25日 申請(qǐng)日期:2013年9月14日 優(yōu)先權(quán)日:2013年9月14日
【發(fā)明者】不公告發(fā)明人 申請(qǐng)人:安徽量子通信技術(shù)有限公司