關 閉

        新聞中心

        EEPW首頁 > 工控自動化 > 設計應用 > 基于USB和FPGA的隨機數發生器驗證平臺

        基于USB和FPGA的隨機數發生器驗證平臺

        作者: 時間:2011-04-15 來源:網絡 收藏

        3.6 存儲器模塊
        為滿足特殊功能需求,擴展了1 Mb的Flash。Flash選用Spansion公司的CMOS多功能器件,型號為AM29LV010B,采用32引腳的標準TSOP封裝,工作電壓為3 V,8位數據寬度。數據總線使用D0~D7,地址總線使用A0~A16,其他還有芯片使能信號CE,輸出使能信號0E和寫使能信號WE。它與芯片引腳的具體連接方式如表2所列。

        本文引用地址:http://www.104case.com/article/202456.htm

        h.JPG


        3.7 其他電路
        為保證系統中各個芯片能夠正常工作,本設計在各電壓源都并聯有0.1μF的退耦電容,并將這些電容擺放在芯片的周圍,濾除高頻雜波。

        4 測試與驗證
        各模塊電路設計完成后,經Altium Designer09仿真驗證,完成了相應的PCB版圖設計,并最終進行電路版圖的印刷和元器件焊接,實現了整個驗證平臺。
        為檢驗平臺工作的正確性,本文對參考文獻中的利用VHDL語言進行了實現,并在輸出模塊中增加了一個32位的移位寄存器,每產生32位隨機數進行一次輸出。最后,將該及參考文獻中所設計的控制器與參考文獻中所提供的OC8051 IP核進行掛載連接,其掛接原理圖如圖6所示。

        i.JPG


        掛接完成后,利用QuartusII軟件,將整個系統以AS下載方式,通過配置芯片EPCS4下載到板中。由OC8051 IP核控制模塊進行工作,每產生32位隨機數時,TRNG向OC8051發送一個done信號,OC8051接收32位數據,并將其分為4個8位存于4個特殊功能寄存器(Sp-ecial Function Register,SFR)中,并通過指令MOVX借助累加器將32位數據轉移至雙端口RAM中。之后進行下一32位隨機數的產生及傳送,直到運行16次后,RAM中所存儲的隨機數為512位時,OC8051置sent信號有效,控制器將512位隨機數封裝成數據包,通過收發器傳送給主機,傳送完成后向OC8051返回一個state信號,表明傳送結束。重復上述過程即可源源不斷地將產生的隨機數傳送給主機,由主機最終完成隨機數檢測,檢測結果表明所接收到的數據滿足隨機數特性。
        在隨機數生成系統下載、隨機數生成及隨機數傳送過程中,整個平臺工作正常,表明各模塊電路原理及連接的正確性:
        ①電壓轉換電路連接正確,能為系統提供穩定電壓,同時表明,退耦電容起到了很好的去噪作用;
        ②下載電路連接正確,能夠將程序正確下載到中;
        ③復位電路工作正常,時鐘電路能給系統提供穩定的時鐘;
        ④USB收發器電路連接正確,能正常收發數據。
        由此表明,該驗證平臺具有一定的可靠性和穩定性,能為隨機數發生器提供一個良好的驗證環境。

        結語
        本文結合實際需求,在充分理解FPGA結構原理和元件特性的基礎上,設計實現了一個小型的FPGA開發板。它不僅可以作為隨機數發生器的驗證平臺,同時也可為其他基于數字電路實現的系統提供服務。本文所設計的開發板結構比較簡單,故難以滿足大型數字電路開發系統的要求,為此,下一步的工作是擴展功能模塊,設計更多的外圍擴展電路,滿足更高的實驗需求。


        上一頁 1 2 3 4 下一頁

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 兴和县| 富宁县| 宾川县| 汉川市| 泸水县| 北海市| 白城市| 民和| 封丘县| 页游| 金乡县| 东台市| 鹤壁市| 麦盖提县| 敦化市| 莱阳市| 蓬安县| 汉中市| 从江县| 余庆县| 廉江市| 即墨市| 安达市| 神木县| 开封县| 石台县| 河津市| 昭觉县| 全椒县| 剑川县| 彭泽县| 米林县| 高唐县| 永宁县| 涡阳县| 津市市| 威宁| 朝阳市| 沂源县| 宁德市| 娄底市|