當(dāng)前位置:首頁 > 電源 > 功率器件
[導(dǎo)讀]真隨機(jī)數(shù)發(fā)生器(TRNG)在統(tǒng)計學(xué)、信息安全等領(lǐng)域有著廣泛的應(yīng)用。在這些領(lǐng)域中,不僅要求數(shù)據(jù)序列分布均勻、彼此獨立,而且要求其具有不可預(yù)測性,能夠抵御針對隨機(jī)性的攻擊

真隨機(jī)數(shù)發(fā)生器(TRNG)在統(tǒng)計學(xué)、信息安全等領(lǐng)域有著廣泛的應(yīng)用。在這些領(lǐng)域中,不僅要求數(shù)據(jù)序列分布均勻、彼此獨立,而且要求其具有不可預(yù)測性,能夠抵御針對隨機(jī)性的攻擊。B.Sunar,W.J.Marn和D.R.Snson提出,真隨機(jī)數(shù)發(fā)生器的性能受3個因素的影響:熵源(Entropy Source),采集方式(Harvesng Mechanism)和后續(xù)處理(Post-Processing)。在電路系統(tǒng)中最常見的三種真隨機(jī)數(shù)產(chǎn)生方法為:
1)直接放大法:放大電路中的電阻熱噪聲等物理噪聲,通過比較器進(jìn)行比較后獲得隨機(jī)數(shù)序列;
2)振蕩采樣法:用帶有抖動的慢振蕩器通過D觸發(fā)器采樣一個周期固定的快振蕩器,輸出隨機(jī)序列;
3)離散時間混沌法:利用混沌電路不可預(yù)測以及對初始條件敏感的依賴性的特點產(chǎn)生隨機(jī)序列。

基于模擬電路的結(jié)構(gòu),熵源的統(tǒng)計分布更加理想,且熵源噪聲不隨采樣周期的變化而改變;基于數(shù)字電路的結(jié)構(gòu),集成度高,便于在FPGA等通用可編程平臺上實現(xiàn),但熵源的統(tǒng)計特性與模擬電路相比不夠理想。

本文嘗試了一種用純數(shù)字電路實現(xiàn)的TRNG結(jié)構(gòu),且不使用諸如PLL等特殊資源,便于設(shè)計由FPGA驗證移植到芯片設(shè)計。其核心思想是使用反相器和延時單元構(gòu)成兩個相互獨立的振蕩器,由于內(nèi)部噪聲的差異引起的相位偏移作為熵源,經(jīng)過一段時間振蕩后,隨機(jī)的狀態(tài)由數(shù)字雙穩(wěn)態(tài)電路鎖存。多組振蕩器的輸出,經(jīng)過異或和同步處理后得到隨機(jī)序列。該TRNG在FPGA物理平臺上實現(xiàn)并進(jìn)行了測試驗證。

1 TRNG的設(shè)計1.1 相位漂移與抖動

由于受到電路中噪聲的影響,數(shù)字電路中時鐘信號的周期在每個不同的周期上可能縮短或者加長,這就是時鐘抖動。抖動可以用許多方法來衡量和表征,它是一個均值為零的隨機(jī)變量。振蕩器起振時刻的差異和電路元件的工藝偏差,使得振蕩器間存在相位漂移。因此抖動信號和相位漂移適合在數(shù)字電路中作為TRNG的隨機(jī)源。

1.2 亞穩(wěn)態(tài)

鎖存器是有邏輯‘1’和‘0’兩個穩(wěn)定狀態(tài)的雙穩(wěn)態(tài)器件,但是在特殊情況下其可能進(jìn)入亞穩(wěn)態(tài),此時它的輸出是介于‘1’和‘0’之間的中間電平。如圖1所示鎖存器用兩個反相器和兩個開關(guān)表征。當(dāng)鎖存器導(dǎo)通時,采樣開關(guān)閉合,保持開關(guān)打開(圖a);當(dāng)鎖存器關(guān)閉時,采樣開關(guān)打開,保持開關(guān)閉合(圖b)。圖c展示了兩個反相器的直流傳輸特性。當(dāng)鎖存器關(guān)閉時A=B,穩(wěn)態(tài)是A=B=0和A=B=VDD,亞穩(wěn)態(tài)為A=B= Vm,其中Vm不是一個合理的邏輯值。因為電平在該點是相互穩(wěn)定的并且可以無限期停留,所以稱該點為亞穩(wěn)態(tài)。但是,任何噪聲或者其他干擾都會使得A和B最終穩(wěn)定在兩個穩(wěn)態(tài)中的一個狀態(tài)。圖d非常形象地表征了亞穩(wěn)態(tài),它就好像處于山頂?shù)男∏蛉魏胃蓴_都會使小球滾落到山兩端的穩(wěn)定狀態(tài)。

1.3 振蕩器的設(shè)計

如圖2所示,二選一復(fù)用器既作為延遲單元又作為選通單元使用。當(dāng)選通信號為‘1’時,形成兩個相互獨立、自由振蕩的環(huán)形振蕩器。當(dāng)選通信號為‘0’時,兩組反相器交叉相連形成雙穩(wěn)態(tài)器件。自由振蕩時,兩個振蕩器之間存在著抖動和相位偏移。在振蕩的停止時刻,即振蕩環(huán)路斷開、兩組反相器交叉連接時,反相器的瞬時輸出電壓以及內(nèi)部噪聲的絕對和相對值決定了電路最終穩(wěn)定在哪個邏輯值上。有時即使反相器跨接在一起,電路也會振蕩很長一段時間才能穩(wěn)定下來,形成亞穩(wěn)態(tài)。綜上所述,隨機(jī)序列的來源用到了抖動和亞穩(wěn)態(tài)兩種機(jī)制。

波形如圖3所示,為了方便數(shù)據(jù)采集選通信號是由時鐘經(jīng)過分頻得到的。在自由振蕩階段,輸出信號快速變化不屬于任何穩(wěn)定狀態(tài),在圖中用斜線表示。在解析階段,電路是雙穩(wěn)態(tài)器件,此時應(yīng)該保持解析時間足夠長,從而使輸出電平在大多數(shù)情況下穩(wěn)定在邏輯‘1’或‘0’。

1.4 隨機(jī)源模塊的電路設(shè)計

各個振蕩器的輸出經(jīng)過異或運算可以增加隨機(jī)性,而亞穩(wěn)態(tài)的傳播會造成后續(xù)電路的錯誤動作,因此使用同步器將異或后的隨機(jī)序列與后續(xù)電路隔離開來,同時也方便采集穩(wěn)定的輸出序列做性能分析。此處采用了三級寄存器的同步結(jié)構(gòu),由MTBF(Mean me Between Failure)的定義可知,平均需要經(jīng)過數(shù)百年時間才會發(fā)生一次亞穩(wěn)態(tài)通過同步器向下傳播的事件,因此是滿足設(shè)計要求的。該模塊電路圖如圖4所示。


1.5 后續(xù)處理模塊的設(shè)計

理想情況下,D觸發(fā)器所采集的信號具有隨機(jī)的統(tǒng)計特性,可是FPGA內(nèi)部電路不可避免地會受到溫度漂移、電壓抖動等不良因素影響,從而導(dǎo)致采樣得到的隨機(jī)信號中存在偏置,影響結(jié)果的統(tǒng)計特性。所以在采樣得到隨機(jī)序列后要對數(shù)據(jù)進(jìn)行消偏處理,使0和1出現(xiàn)的概率相當(dāng)。

本設(shè)計采用16位最大長度二進(jìn)制偽隨機(jī)序列(Pseudo Random Binary Sequence)的輸出與采樣得到的隨機(jī)序列進(jìn)行異或運算作為后續(xù)處理,PRBS產(chǎn)生電路消耗資源少并且使用線性反饋移位寄存器實現(xiàn),非常適合于在FPGA上實現(xiàn)。它的生成多項式是:

多項式表示如圖5所示。

2 TRNG的FPGA實現(xiàn)與測試

整個TRNG的實驗環(huán)境由外部時鐘源、FPGA開發(fā)板以及邏輯分析儀組成。TRNG采用Xilinx公司的Virtex-5系列中的XC5VLX110作為物理實現(xiàn)平臺,外部時鐘頻率為64 MHz。由FPGA產(chǎn)生的隨機(jī)數(shù)據(jù),經(jīng)邏輯分析儀采集后,使用DIEHARD battery of tests of randomness隨機(jī)數(shù)測試程序進(jìn)行測試,檢驗隨機(jī)序列的性能。

DIEHARD測試是由16項測試組成的用來度量隨機(jī)數(shù)發(fā)生器性能的一組統(tǒng)計學(xué)測試,它由George Marsaglia開發(fā)并于1995年首次發(fā)布。DIE HARD的測試結(jié)果叫做P-value,它由方程P-value=Fi(X)計算得到,其中Fi試圖建立樣本X在0和1間服從均勻分布的分布函數(shù)。因為Fi是漸進(jìn)逼近的,它在尾部的近似效果變差,所以數(shù)值接近0或1的P-value在真隨機(jī)序列中極少出現(xiàn)。當(dāng)被測序列隨機(jī)性能很差時,會有很多P-value的值是精確到小數(shù)點后數(shù)位的0或者1,例如1.000 000。需要強調(diào)的是,P-value等于1.000 000或0.000000是序列為真隨機(jī)序列的充分不必要條件。

2.1 FPGA位置約束

為保證每個振蕩器中的兩個獨立振蕩環(huán)的理論振蕩周期相同,以便更容易在鎖定期間產(chǎn)生亞穩(wěn)態(tài),加大噪聲對輸出電平的影響,同時盡量讓各個振蕩器的輸出在進(jìn)行異或運算前延遲不出現(xiàn)太大偏差。所以對TRNG中的振蕩環(huán)進(jìn)行位置約束:將振蕩環(huán)中的反相器約束在左右相鄰的邏輯單元(Slice)中,讓各個振蕩環(huán)分別約束在上下相鄰的邏輯單元中。

2.2 振蕩器數(shù)目對統(tǒng)計特性的影響

在32 MHz的采樣頻率下,分別以15組、19組、27組和32組振蕩器作為TRNG的隨機(jī)源,隨機(jī)序列經(jīng)過同步器后不與PRBS運算直接輸出。將采集到的隨機(jī)序列送入測試程序進(jìn)行測試以后,其結(jié)果如表1所示。

可以看出,振蕩器的數(shù)目直接影響隨機(jī)源模塊產(chǎn)生序列的統(tǒng)計性能,振蕩器數(shù)目越多,TRNG輸出序列的隨機(jī)性越好。但是如果振蕩器的數(shù)目太多,會消耗過多的硬件資源,功耗也過大。因此,不宜通過單純地增加振蕩器數(shù)目的方法提高隨機(jī)序列的性能。

定性分析如下:將序列的每位看作是一個隨機(jī)的二進(jìn)制變量X,定義b是序列的偏置。即

根據(jù)Piling-up引理,輸出序列的偏置是:

其中n是輸入序列的個數(shù),bi是每個序列的偏置。容易看出b≤bi(1≤i≤n),等式當(dāng)且僅當(dāng)在bi=0()或者bi=1/2()時成立。簡而言之,異或運算顯著地減小了獨立輸入序列的偏置。假設(shè)n=16且所有bi=1/3,那么b=0.000 761可以忽略不計。

2.3 后續(xù)處理模塊對統(tǒng)計性能的改善

由上一節(jié)的分析可知,增加振蕩器數(shù)量是改善序列統(tǒng)計特性的有效方法。但前提條件是各個振蕩器相互獨立。當(dāng)振蕩器數(shù)量過多時位置約束很可能與相互獨立的要求相互矛盾。因為高速的振蕩信號往往發(fā)生相互串?dāng)_的情況,并且消耗更多資源和功耗,所以有必要在保證TRNG包含一定數(shù)量的振蕩器的前提下,引入后續(xù)處理模塊。從而達(dá)到消耗資源較少,序列性能較好的目的。


本項測試以19組振蕩器作為TRNG的隨機(jī)源,輸出序列與PRBS模塊輸出進(jìn)行異或運算,然后分別使用32,16,8,2 MHz的采樣時鐘采集數(shù)據(jù)。將數(shù)據(jù)送入測試程序進(jìn)行測試以后,結(jié)果如表2所示。

可以看出,TRNG生成的隨機(jī)序列全部達(dá)到了預(yù)定的性能指標(biāo)。同時不難發(fā)現(xiàn),采樣時鐘頻率對TRNG的輸出統(tǒng)計特性是有影響的,當(dāng)采樣頻率逐漸降低時,TRNG的隨機(jī)性能逐步提高。出現(xiàn)這種現(xiàn)象是由于采樣頻率越高,就與振蕩頻率越接近,二者的相位偏移干擾了隨機(jī)信號的獲取影響了統(tǒng)計特性。

3 結(jié)束語

本文嘗試了一種純數(shù)字形式的真隨機(jī)數(shù)發(fā)生器結(jié)構(gòu),規(guī)模較小、易于移植。電路包含兩個振蕩環(huán),分為自由振蕩和鎖存至雙穩(wěn)態(tài)兩個工作狀態(tài)。利用振蕩環(huán)之間的相位偏移和抖動以及雙穩(wěn)態(tài)器件的亞穩(wěn)態(tài)作為隨機(jī)源。本文探討了振蕩器數(shù)量對序列統(tǒng)計特性的影響,并在加入后續(xù)處理模塊的情況下試驗了多種采樣頻率,經(jīng)測試隨機(jī)序列完全符合預(yù)定指標(biāo)。

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫毥谦F公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

加利福尼亞州圣克拉拉縣2024年8月30日 /美通社/ -- 數(shù)字化轉(zhuǎn)型技術(shù)解決方案公司Trianz今天宣布,該公司與Amazon Web Services (AWS)簽訂了...

關(guān)鍵字: AWS AN BSP 數(shù)字化

倫敦2024年8月29日 /美通社/ -- 英國汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動 BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運行,同時企業(yè)卻面臨越來越多業(yè)務(wù)中斷的風(fēng)險,如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報道,騰訊和網(wǎng)易近期正在縮減他們對日本游戲市場的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機(jī) 衛(wèi)星通信

要點: 有效應(yīng)對環(huán)境變化,經(jīng)營業(yè)績穩(wěn)中有升 落實提質(zhì)增效舉措,毛利潤率延續(xù)升勢 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競爭力 堅持高質(zhì)量發(fā)展策略,塑強核心競爭優(yōu)勢...

關(guān)鍵字: 通信 BSP 電信運營商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺與中國電影電視技術(shù)學(xué)會聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會上宣布正式成立。 活動現(xiàn)場 NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會上,軟通動力信息技術(shù)(集團(tuán))股份有限公司(以下簡稱"軟通動力")與長三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉