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

          關(guān) 閉

          新聞中心

          EEPW首頁 > 工控自動化 > 設(shè)計應(yīng)用 > 基于USB和FPGA的隨機數(shù)發(fā)生器驗證平臺

          基于USB和FPGA的隨機數(shù)發(fā)生器驗證平臺

          作者: 時間:2011-04-15 來源:網(wǎng)絡(luò) 收藏

          摘要:為了方便基于實現(xiàn)的的驗證與演示,以CycloneII 芯片EP2C20Q240C8N為核心,設(shè)計實現(xiàn)了IP核下載與測試的開發(fā)驗證平臺,并詳細闡述了各模塊的設(shè)計原理及關(guān)鍵技術(shù)。最后,通過下載運行隨機數(shù)生成系統(tǒng),對整個平臺功能進行了檢驗。結(jié)果表明,各模塊電路工作正常,平臺性能穩(wěn)定。
          關(guān)鍵詞:;驗證平臺

          引言
          隨機數(shù)發(fā)生器是信息安全領(lǐng)域不可或缺的重要組成部分,廣泛應(yīng)用于金融、軍事等信息安全保密通信的電子設(shè)備中。目前,隨著對RNG體積、功耗、接口方式等要求的提高,設(shè)計集成化芯片或IP核形式的隨機數(shù)發(fā)生器成為一種必然。為此,基于純數(shù)字電路實現(xiàn)的隨機數(shù)發(fā)生器已成為研究的熱點,而FPGA可編程邏輯芯片為此類隨機數(shù)發(fā)生器的研究提供了良好的開發(fā)環(huán)境。
          為方便隨機數(shù)發(fā)生器IP核的下載、運行及測試,同時保證產(chǎn)生的隨機數(shù)能夠快速地傳送給主機進行隨機性檢測,本文以FPGA芯片為核心,以接口為通信接口,設(shè)計實現(xiàn)了一個隨機數(shù)發(fā)生器的驗證平臺。該平臺結(jié)構(gòu)簡單,功能完善,對于其他特殊應(yīng)用的驗證平臺搭建也具有指導意義。

          1 系統(tǒng)硬件結(jié)構(gòu)及工作原理
          隨機數(shù)發(fā)生器驗證平臺主要由CycloneII FPGA芯片EP2C20Q240C8N、與主機進行通信的收發(fā)器電路、下載配置芯片EPCS4、頻率為48 MHz的時鐘源芯片、外部存儲器(Flash)、兩個電壓轉(zhuǎn)換電路、復位電路和其他電路組成,如圖1所示。

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

          a.JPG


          在每次實驗演示時,將該芯片通過口與PC機相連,由主機為平臺提供5 V電源,當與主機連通后系統(tǒng)上電,復位電路進行工作,對整個系統(tǒng)進行復位。以QuartusII 7.2為開發(fā)環(huán)境,采用ByterBlsterII下載電纜,通過JTAG下載口或以AS下載方式,通過配置芯片EPCS4將隨機數(shù)發(fā)生器系統(tǒng)下載到實驗平臺中,最終通過USB口連接主機與平臺進行信息交互。由主機向系統(tǒng)發(fā)送命令,在系統(tǒng)控制下,產(chǎn)生的隨機數(shù)通過USB收發(fā)器傳送給主機,主機接收數(shù)據(jù)后進行隨機性的各項檢測。

          2 核心器件和關(guān)鍵技術(shù)
          2.1 FPGA芯片EP2C20Q240C8N
          EP2C20Q240C8N芯片是A1tera CyeloneII系列產(chǎn)品中的一員,它采用TSMC1.2 V、90 nm和低電介絕緣工藝技術(shù),由12英寸(300 mm)晶圓制成,具有潛在速度方面的極大優(yōu)勢。


          上一頁 1 2 3 4 下一頁

          評論


          相關(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); })();