新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 利用FPGA的自身特性實現(xiàn)隨機數(shù)發(fā)生器

利用FPGA的自身特性實現(xiàn)隨機數(shù)發(fā)生器

作者: 時間:2017-10-13 來源:網(wǎng)絡(luò) 收藏

本文主要介紹利用FPGA的自身的特性實現(xiàn)隨機數(shù)發(fā)生器,在Virtex-II Pro開發(fā)板上用ChipScope觀察隨機數(shù)序列,以及在PCIe4Base(基于Virtex-4 FPGA)上實現(xiàn)。

本文引用地址:http://m.butianyuan.cn/article/201710/365615.htm

基本的原理

隨機數(shù)在計算機科學中的密碼學中有著重要的用途,常常被用作密鑰的來源。隨機數(shù)包括偽隨機數(shù)以及真隨機數(shù)。偽隨機數(shù)是通過一定的算法計算得出,具有類似于隨機數(shù)的統(tǒng)計特征,這樣的發(fā)生器稱為偽隨機數(shù)發(fā)生器。而真隨機數(shù)是通過物理現(xiàn)象產(chǎn)生,例如使用電子元件的噪聲、核裂變等等作為噪聲源[2],這樣的隨機數(shù)發(fā)生器叫做物理隨機數(shù)發(fā)生器,也叫做真隨機數(shù)發(fā)生器(TRNG:Ture Random Number Generator)。

基于FPGA的隨機數(shù)發(fā)生器基本原理是利用奇數(shù)個反相器組成振蕩器作為隨機數(shù)發(fā)生器的噪聲源,因為由于FPGA自身的特性--信號傳輸存在抖動,所以多個反相器組成振蕩器輸出也不是很穩(wěn)定的時鐘信號,每個振蕩器輸出不是相同的,這樣成為了理想的噪聲源,見圖1。振蕩器輸出通過D觸發(fā)器進行采樣輸出,采樣頻率是fs,然后多個采樣輸出結(jié)果經(jīng)過異或門之后再通過一個D觸發(fā)器進行采樣,采樣頻率還是fs。這樣簡單的隨機數(shù)發(fā)生器就完成了。

圖1.隨機數(shù)發(fā)生器原理圖[1]

關(guān)鍵詞: fpga

評論


相關(guān)推薦

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

關(guān)閉