以下為個(gè)人譯文,僅供參考,如有疏漏之處,還請(qǐng)不吝賜教。
eFUSE 具備一次性可編程特性,即只要使用特定密鑰將“熔絲 (FUSE)”熔斷,就無法再使用任何其他密鑰對(duì)其進(jìn)行編程。
在本文中,我們將探討有關(guān) AES 密鑰驗(yàn)證步驟的內(nèi)容,當(dāng)您在器件上以物理方式對(duì) eFUSE 密鑰進(jìn)行編程時(shí)應(yīng)遵循這些驗(yàn)證步驟進(jìn)行操作。
eFUSE 具備一次性可編程特性,即只要使用特定密鑰將“熔絲 (FUSE)”熔斷,就無法再使用任何其他密鑰對(duì)其進(jìn)行編程。
eFUSE 廣泛適用于各種量產(chǎn)器件,在本文中我們將為大家演示一個(gè)典型情境,即客戶希望向第三方供應(yīng)商提供采用 AES 編程的 FPGA 的情境。
曾經(jīng)出現(xiàn)過這樣的問題,用戶以錯(cuò)誤方式對(duì)錯(cuò)誤的 eFUSE 密鑰進(jìn)行編程,導(dǎo)致加密比特流編程失敗。在此情境中,我們無法將 eFUSE 復(fù)原,因?yàn)樗寻l(fā)生熔斷。
在下文中,我們將探討有關(guān) AES 密鑰驗(yàn)證步驟的內(nèi)容,當(dāng)您在器件上以物理方式對(duì) eFUSE 密鑰進(jìn)行編程時(shí)應(yīng)遵循這些驗(yàn)證步驟進(jìn)行操作。
1. 使用 EFUSE_TEST_MODE 對(duì) AES 密鑰進(jìn)行測(cè)試性編程。
這將把 eFUSE 編程軟件命令發(fā)送到器件,但并不會(huì)實(shí)際對(duì)任何熔絲進(jìn)行編程。
2. 要啟用 EFUSE_TEST_MODE,請(qǐng)右鍵單擊“硬件管理器 (Hardware Manager)”上的“硬件服務(wù)器屬性 (Hardware Server Properties)”,然后選中“EFUSE_TEST_MODE”選項(xiàng),如下圖所示:
3. 啟用 EFUSE_TEST_MODE 并對(duì) eFUSE 密鑰編程后,就會(huì)在 Vivado 安裝目錄中創(chuàng)建一個(gè) .nkz 文件。
請(qǐng)檢查該 .nkz 文件,確認(rèn)其中是否已正確顯示 AES 密鑰。
4. 如果此操作成功,請(qǐng)取消勾選“EFUSE_TEST_MODE”框,然后以真正物理方式僅將此 AES 密鑰編程到器件中。
請(qǐng)勿對(duì)任何其他控制寄存器、安全寄存器或 RSA 進(jìn)行編程。操作完成后將重新寫入 .nkz 文件,但其中所含內(nèi)容應(yīng)不變。
請(qǐng)驗(yàn)證兩個(gè) .nkz 文件的內(nèi)容是否相同。
5. 如果兩個(gè) .nkz 文件內(nèi)容相同,那么請(qǐng)對(duì)加密比特流文件進(jìn)行編程。
6. 運(yùn)行以下命令以驗(yàn)證 .nky 和加密比特流:
create_hw_bitstream -hw_device [current_hw_device ] -nky mtl1_c1.nky mtl1_c1.bit
verify_hw_devices -key efuse
注釋:特此澄清,在第 3 步中,除非您已在 eFUSE Wizard 中更改 .nkz 文件的文件名,否則,將覆蓋同一個(gè)輸出 .nkz 文件。因此,您應(yīng)該將第 1 個(gè) .nkz 復(fù)制到其他文件或者在向?qū)е懈拇?.nkz 文件的文件名以便后續(xù)對(duì)兩個(gè)文件進(jìn)行比較。
EFUSE_TEST_MODE 僅用于驗(yàn)證目的。如果編程測(cè)試成功,并且您取消勾選 EFUSE_TEST_MODE 并遵循與測(cè)試過程相同的編程步驟進(jìn)行操作,那么就能將正確的 AES 密鑰編程到器件中。
遵循上述步驟進(jìn)行操作時(shí),請(qǐng)勿對(duì)控制寄存器或安全寄存器進(jìn)行編程。成功完成驗(yàn)證后即可進(jìn)行各項(xiàng)詳細(xì)設(shè)置。
審核編輯:湯梓紅
-
寄存器
+關(guān)注
關(guān)注
31文章
5355瀏覽量
120531 -
硬件
+關(guān)注
關(guān)注
11文章
3341瀏覽量
66260 -
AES
+關(guān)注
關(guān)注
0文章
104瀏覽量
33238
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論