国产精品香蕉在线的人_日日日草狠狠干狠_美女张开腿喷水高潮在线观看_99re在线视频网站

新聞banner
當前位置: 首 頁 >> 新聞資訊>>技術資訊
05

低功耗MCU RJM8L303的真隨機數發(fā)生器設計原理和使用方法


1、RJM8L303芯片簡介

RJM8L303是武漢瑞納捷電子技術有限公司推出的一款采用增強型80C51內核,擁有8KB SRAM和128KB Flash存儲容量的低功耗安全MCU芯片。它具有快速中斷響應,休眠和深度休眠模式。


芯片支持UART、SPI、I2C、GPIO、ISO7816、JTAG等數字通信接口;還支持13.56MHz無線接口,符合IOS14443 typeA標準,能實現無線數據傳輸。芯片內置DES、3DES、國密SM4等三種加密算法,以及頻率安全探測器,用以保證芯片在非正常工作條件下的操作安全和數據安全。

另外,為了滿足某些應用中安全交易流程的需要,芯片還內嵌了一個8位隨機數發(fā)生器。該隨機數發(fā)生器是采用數字振蕩環(huán)方式設計的真隨機數發(fā)生器,符合國家密碼安全管理局《隨機性檢測規(guī)范》的相關要求,通過了隨機數測試國際標準 FIPS 140-2和NIST SP800-22標準測試。

 

2、真隨機數發(fā)生器的設計原理

我們知道,數字電路中的時鐘信號總會存在抖動現象,它是指在芯片的某一個給定點上時鐘周期發(fā)生的暫時變化,即時鐘周期在每個不同的周期上可以縮短或加長。抖動可以用許多方法來衡量和表征,它是一個平均值為零的隨機變量。除了時鐘抖動以外,兩個獨立時鐘之間的相位漂移也具有隨機的特性。因而抖動信號和相位漂移適合于在數字電路中作為真隨機數發(fā)生器的噪聲源。


圖1中用實線描繪的是嚴格的周期性信號的波形,每個沿的起始點在時間軸上間隔相等;虛線代表的就是實際的近似周期性信號,其周期有微小的變化。我們可以看到相應沿的起始點偏離了理想位置。此時稱后者的波形有抖動。不同的有效瞬間(時間軸上有間隔的不同位置),抖動的幅度是不同的。

 

圖2中帶有抖動的低頻振蕩器通過D觸發(fā)器采樣一個高頻振蕩器,輸出序列X。由于低頻振蕩器的抖動是不確定的,并且其抖動范圍遠遠大于高頻振蕩器的周期,因此輸出0和1的概率基本相等,從而輸出的序列X是隨機的。

高頻振蕩器采用數字振蕩環(huán)方式設計,其電路結構如下圖3所示。在數字邏輯內部,當2N+1個反相器組成一個閉合的環(huán)路時,可以得到一個高頻的振蕩時鐘。由于反相器的時間延遲是皮秒量級,因此反相器振蕩環(huán)的振蕩頻率高于GHz。該振蕩時鐘的周期與門延時以及反相器的個數有關,而與外部信號無關。該方法利用了振蕩器的頻率不穩(wěn)定性,使得其電路相對簡單,占芯片面積小,功耗也小,魯棒性好,對外界或是內部的干擾不敏感。

 

如果將相同長度的兩組振蕩環(huán)的輸出相異或就可以得到一組由隨機信號構成的新波形,該波形包含了兩條振蕩環(huán)之間的時鐘抖動以及相位偏移。若將多組振蕩環(huán)信號相異或時,可以從輸出獲取更多的隨機信息。

低頻振蕩器采用RC振蕩電路設計。RC振蕩電路是指用電阻R、電容C組成選頻網絡的振蕩電路,一般用來產生低頻振蕩信號。輸出序列X的隨機性能取決于低頻振蕩器抖動的范圍及其分布。

 

3、本芯片隨機數發(fā)生器的使用方法

(1)配置控制寄存器DTRNGCON0

*設置model_sel信號為0或1,選擇RNG工作于mode0或mode1模式;

*設置trng_start信號為1,啟動RNG模塊工作;

(2)查詢狀態(tài)寄存器DTRNGSTS0

*等待trng_sts信號為1;

(3)讀取數據寄存器DTRNGDAT0~ DTRNGDAT3,讀出32位隨機數;

(4)循環(huán)步驟(2)和(3),可多次獲取隨機數。


底部二維碼1
手機掃一掃
關注我們微信公眾號
库车县| 沛县| 义马市| 河北区| 永川市| 洛南县| 正蓝旗| 日照市| 荔浦县| 高碑店市| 潍坊市| 赣州市| 通州市| 南昌市| 上虞市| 阿坝| 吴旗县| 明溪县| 门头沟区| 宕昌县| 惠水县| 德化县| 宽城| 益阳市| 马公市| 吴江市| 西昌市| 离岛区| 修武县| 水城县| 应用必备| 荣成市| 电白县| 府谷县| 哈巴河县| 禹州市| 许昌市| 资源县| 衡东县| 株洲市| 汕尾市|