<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > EDA/PCB > 設(shè)計應(yīng)用 > 一種基于FPGA的真隨機數(shù)發(fā)生器設(shè)計與實現(xiàn)

          一種基于FPGA的真隨機數(shù)發(fā)生器設(shè)計與實現(xiàn)

          作者: 時間:2012-02-07 來源:網(wǎng)絡(luò) 收藏

          定性分析如下:將序列的每位看作是一個隨機的二進(jìn)制變量X,定義b是序列的偏置。即
          b=|P(X=1)-1/2|=|P(X=0)-1/2| (2)
          根據(jù)Piling-up引理,輸出序列的偏置是:
          )時成立。簡而言之,異或運算顯著地減小了獨立輸入序列的偏置。假設(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的隨機源,輸出序列與PRBS模塊輸出進(jìn)行異或運算,然后分別使用32,16,8,2 MHz的采樣時鐘采集數(shù)據(jù)。將數(shù)據(jù)送入測試程序進(jìn)行測試以后,結(jié)果如表2所示。

          本文引用地址:http://www.ex-cimer.com/article/190794.htm

          k.jpg


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

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


          上一頁 1 2 3 下一頁

          關(guān)鍵詞: FPGA 隨機數(shù)發(fā)生器

          評論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();