當前位置:首頁 > 單片機 > 單片機
[導讀]RNG主要特性RNG 處理器是一個以連續(xù)模擬噪聲為基礎的隨機數(shù)發(fā)生器,在主機讀數(shù)時提供一個 32 位的 隨機數(shù)。RNG的主要特性● 提供由模擬量發(fā)生器產(chǎn)生的 32 位隨機數(shù)● 兩個連續(xù)隨機數(shù)的間隔為 40 個 PLL48CLK 時鐘信號

RNG主要特性
RNG 處理器是一個以連續(xù)模擬噪聲為基礎的隨機數(shù)發(fā)生器,在主機讀數(shù)時提供一個 32 位的 隨機數(shù)。

RNG的主要特性
● 提供由模擬量發(fā)生器產(chǎn)生的 32 位隨機數(shù)
● 兩個連續(xù)隨機數(shù)的間隔為 40 個 PLL48CLK 時鐘信號周期
● 通過監(jiān)視 RNG 熵來標識異常行為(產(chǎn)生穩(wěn)定值,或產(chǎn)生穩(wěn)定的值序列)
● 可被禁止以降低功耗

RNG功能描述

隨機數(shù)發(fā)生器采用模擬電路實現(xiàn)。此電路產(chǎn)生饋入線性反饋移位寄存器 (RNG_LFSR) 的種子, 用于生成 32 位隨機數(shù)。
該模擬電路由幾個環(huán)形振蕩器組成,振蕩器的輸出進行異或運算以產(chǎn)生種子。RNG_LFSR 由 專用時鐘 (PLL48CLK) 按恒定頻率提供時鐘信息,因此隨機數(shù)質(zhì)量與 HCLK 頻率無關。當將 大量種子引入 RNG_LFSR 后,RNG_LFSR 的內(nèi)容會傳入數(shù)據(jù)寄存器 (RNG_DR)。
同時,系統(tǒng)會監(jiān)視模擬種子和專用時鐘 PLL48CLK。狀態(tài)位(RNG_SR 寄存器中)指示何時 在種子上出現(xiàn)異常序列,或指示何時 PLL48CLK 時鐘頻率過低。檢測到錯誤時生成中斷。

操作
要運行 RNG,請按以下步驟操作:
1.如果需要,使能中斷(為此,將 RNG_CR 寄存器中的 IE 位置 1)。準備好隨機數(shù)時或 出現(xiàn)錯誤時生成中斷。
2. 通過將 RNG_CR 寄存器中的 RNGEN 位置 1 使能隨機數(shù)產(chǎn)生。這會激活模擬部分、RNG_LFSR 和錯誤檢測器。
3. 每次中斷時,檢查確認未出現(xiàn)錯誤(RNG_SR 寄存器中的 SEIS 和 CEIS 位應為 0), 并且隨機數(shù)已準備就緒(RNG_SR 寄存器中的 DRDY 位為 1)。然后即可讀取 RNG_DR 寄存器中的內(nèi)容。
按照 FIPS PUB(聯(lián)邦信息處理標準出版物)140-2 的要求,將 RNGEN 位置 1 后產(chǎn)生的第 一個隨機數(shù)不應使用,但應保存起來,與產(chǎn)生的下一個隨機數(shù)進行比較。隨后產(chǎn)生的每個隨機數(shù)都需要與產(chǎn)生的上一個隨機數(shù)進行比較。如果任何一對進行比較的數(shù)字相等,則測試失?。ㄟB續(xù)隨機數(shù)發(fā)生器測試)

錯誤管理
如果 CEIS 位的值為 1(時鐘錯誤)
出現(xiàn)時鐘錯誤時,RNG 無法再產(chǎn)生隨機數(shù),因為 PLL48CLK 時鐘不正確。檢查時鐘控制器是 否正確配置,是否可提供 RNG 時鐘,然后將 CEIS 位清零。當 CECS 位為 0 時,RNG 可正 常工作。時鐘錯誤對產(chǎn)生的上一個隨機數(shù)沒有影響,因此 RNG_DR 寄存器內(nèi)容可以使用。
如果 SEIS 位的值為 1(種子錯誤)
出現(xiàn)種子錯誤時,只要 SECS 位為 1,就會中斷隨機數(shù)產(chǎn)生。如果 RNG_DR 寄存器中有可 用隨機數(shù),不能使用該隨機數(shù),因為它可能沒有足夠的熵。
應執(zhí)行以下操作:將 SEIS 位清零,然后將 RNGEN 位清零并置 1,以便重新初始化和重新 啟動 RNG。

STM32F4的RNG庫
如何使用RNG驅動
1.通過函數(shù)RCC_AHB2PeriphClockCmd(RCC_AHB2Perph_RNG,ENABLE)使能RNG控制器時鐘。
2.通過函數(shù)RNG_Cmd()使能RNG。
3.等待直到隨機數(shù)發(fā)生器產(chǎn)生有效的隨機數(shù)(中斷或查詢模式)。
4.通過函數(shù)RNG_GetRandomNumber()得到隨機數(shù)。
從上面第三步開始繼續(xù)得到后面的隨機數(shù)。

初始化和配置函數(shù)
這部分函數(shù)主要提供以下功能
· 初始化RNG外設
· 使能或禁止RNG外設。
void RNG_DeInit()功能:從新初始化RNG外設寄存器數(shù)據(jù)到復位值。
void RNG_Cmd(FunctionanState NewState)功能:使能或禁止RNG

得到32位隨機數(shù)函數(shù)
uint32_t RNG_GetRandomNumber(void)
函數(shù)功能:返回32位隨機數(shù)
調(diào)用此函數(shù)之前需要等待直到DRDY標志置位,調(diào)用函數(shù)RNG_GetFlagStatus(RNG_FLAG_DRDY)進行等待標志位。每次在的調(diào)用RNG_GetrandomNumber(void)后RNG_FLAG_DRDY標志自動清除。
在seed錯誤的情況下只要SECS位是1,隨機數(shù)產(chǎn)生將被中斷。如果RNG_DR寄存器中有數(shù)據(jù)可用,但是請不要使用,應為沒有足夠的entopy。這種情況下推薦用戶通過函數(shù)RNG_ClearFlag(RNG_FLAG_SECS)清除SEIS標志,然后禁止并重新使能RNG外設(通過函數(shù)RNG_Cmd())來從新初始化和啟動RNG。
在時鐘錯誤的情況下,應為PLL48CLK時鐘的不準確,RNG將無法產(chǎn)生隨機數(shù)。檢查是否正確配置時鐘控制器RNG時鐘,同時清除CEIS(通過函數(shù)RNG——ClearFlag(RNG_FLAG_CECS))位。當CECS位是0的時候RNG次啊能正常工作。時鐘錯誤對先前殘生的隨機數(shù)沒有影響,RNG_DR寄存器中的數(shù)據(jù)仍然可以使用。

中斷標志管理
· 標志
RNG_FLAG_DRDY:RNG_DR寄存器有有效隨機數(shù)時,通過讀此寄存器來清除標志(可通過函數(shù)RNG_GetRandomNumber()實現(xiàn))。
RNG_FLAG_CECS:seed檢測錯誤
RNG_FLAG_SECS:時鐘檢測錯誤
· 中斷
如果是能了RNG中斷,下面三種情況僵尸的RNG中斷會被掛起。
RNG_DR寄存器含有有效的隨機數(shù),只有通過讀RNG_DR寄存器才能清除中斷源,也就是清除中斷掛起標志。
發(fā)生seed錯誤,檢測到下面的錯誤序列之一:
64個以上的的連續(xù)位都是0或者1
32個以上出現(xiàn)連續(xù)的01.
通過函數(shù)RNG_ClearITPendingBit(RNG_IT_SEI)清除此中斷源。
發(fā)生時鐘錯誤,PLL48CLK不能被正確的檢測到


本站聲明: 本文章由作者或相關機構授權發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或將催生出更大的獨角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關鍵字: 阿維塔 塞力斯 華為

加利福尼亞州圣克拉拉縣2024年8月30日 /美通社/ -- 數(shù)字化轉型技術解決方案公司Trianz今天宣布,該公司與Amazon Web Services (AWS)簽訂了...

關鍵字: AWS AN BSP 數(shù)字化

倫敦2024年8月29日 /美通社/ -- 英國汽車技術公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時1.5...

關鍵字: 汽車 人工智能 智能驅動 BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務能7×24不間斷運行,同時企業(yè)卻面臨越來越多業(yè)務中斷的風險,如企業(yè)系統(tǒng)復雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務連續(xù)性,提升韌性,成...

關鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報道,騰訊和網(wǎng)易近期正在縮減他們對日本游戲市場的投資。

關鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關鍵字: 華為 12nm EDA 半導體

8月28日消息,在2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會上,華為常務董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權最終是由生態(tài)的繁榮決定的。

關鍵字: 華為 12nm 手機 衛(wèi)星通信

要點: 有效應對環(huán)境變化,經(jīng)營業(yè)績穩(wěn)中有升 落實提質(zhì)增效舉措,毛利潤率延續(xù)升勢 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務引領增長 以科技創(chuàng)新為引領,提升企業(yè)核心競爭力 堅持高質(zhì)量發(fā)展策略,塑強核心競爭優(yōu)勢...

關鍵字: 通信 BSP 電信運營商 數(shù)字經(jīng)濟

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺與中國電影電視技術學會聯(lián)合牽頭組建的NVI技術創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會上宣布正式成立。 活動現(xiàn)場 NVI技術創(chuàng)新聯(lián)...

關鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會上,軟通動力信息技術(集團)股份有限公司(以下簡稱"軟通動力")與長三角投資(上海)有限...

關鍵字: BSP 信息技術
關閉
關閉