安全芯片中密碼算法的多IP核集成方法
⑥執(zhí)行指令
MOV INSTRUCT,#00H
關閉SHA1協(xié)處理器,完成SHA1調用。
對TDES及RSA的功能調用類似于SHA1,僅在指令配置時稍有不同。TDES增加了密鑰生成過程的指令配置與完成信號判斷,RSA增加了對模長與模冪的參數(shù)配置。由上可知,與方法二相比較,IP橋接技術在調用實現(xiàn)IP核功能時,需要增加的僅為一條IP選擇參數(shù)配置指令。 本文引用地址:http://www.ex-cimer.com/article/191926.htm
3 測試與仿真
本文采用軟件仿真與FPGA下載測試兩種手段,對2.2中的設計進行了功能正確性驗證。圖2給出了該設計中IP_bridge在quartus II 5.0下的仿真波形圖。
在圖2中,F(xiàn)UNCCHOOSE為系統(tǒng)功能區(qū)的IP選擇參數(shù)輸入,INSTRUCT為IP控制指令。當IP選擇參數(shù)值為07H、06H、05H時,對應的選定IP為RSA、TDES、SHA1。以選定SHA1為例,當IP選擇參數(shù)為05H時,IP_bridge模塊重構asis_ramx為SHA1專用數(shù)據(jù)處理區(qū),且此時SHA1控制指令shal_instruct_o被配置為當前IN-STRUCT值,完成對SHA1的接口配置;當IP選擇參數(shù)為 06H、07H時,IP_bridge置SHA1控制指令shal_in-struct_o為00H,使SHA1協(xié)處理器處于休眠狀態(tài)。對 IP_bridge仿真波形圖的分析表明,其邏輯功能正確。由于在初次FPGA下載測試時發(fā)現(xiàn),允許IP_bridge對IP核進行時鐘配置會導致協(xié)處理器功能不穩(wěn)定,因而取消了IP_bridge的IP核時鐘配置功能。除此以外,其余部分均滿足本文2.1中的功能要求。
為進一步驗證設計的正確性,本文選用Altera公司Cyclone II系列EP2C35F672C6器件,對其進行了FPGA下載測試。在初次測試時發(fā)現(xiàn),各IP核雖然可以完成功能調用,但執(zhí)行結果不穩(wěn)定,測試結果的最后5~10字節(jié)與標準測試對的結果不符。經分析發(fā)現(xiàn),導致IP核功能錯誤的原因為IP_bridge在對時鐘進行配置時,會產生時鐘延遲。因此,取消了 IP_bridge的時鐘配置功能,在Qu-artus II 5.0下進行編譯仿真與綜合下載,再次進行FPGA下載測試。測試結果顯示,各IP核功能均正確無誤。采用選定器件,IP_bridge邏輯資源消耗為 200 LE,最大路徑延遲為16.838 ns。
結 語
本文在總結多IP核集成設計方法的基礎上,提出了一種IP橋接技術,用于實現(xiàn)多IP核集成;并以其為指導,基于一個8位SoC系統(tǒng),具體實現(xiàn)了三個IP核集成。功能仿真與FPGA測試表明該技術具備實際可行性,且相比較于現(xiàn)有多IP核集成方法,IP橋接技術具備可有效提高片內資源利用率,降低系統(tǒng)功耗與開發(fā)成本等優(yōu)勢;其缺點在于,當不同IP核的數(shù)據(jù)接口不一致時,IP_bridge的邏輯設計會比較復雜,且不能實現(xiàn)對IP核的變頻時鐘配置。初步分析表明,通過修改IP核的雙端口存儲區(qū)數(shù)據(jù)寫入環(huán)節(jié),延長數(shù)據(jù)寫入完成至done信號有效這一時間段,可解決這一問題。方法的有效性檢測與具體實現(xiàn),是筆者下一步工作的重點研究內容。
評論