基于路徑延時匹配的硬件IP核知識產(chǎn)權(quán)保護方法
摘要:隨著集成電路產(chǎn)業(yè)的迅速發(fā)展,集成電路設(shè)計的安全性越來越受重視,電路設(shè)計盜用等知識產(chǎn)權(quán)(IP)侵權(quán)行為嚴(yán)重?fù)p害了設(shè)計者和消費者的權(quán)益,阻礙了集成電路產(chǎn)業(yè)的發(fā)展。本文提出了一種有效保護IP核的方法,通過設(shè)計一個保護電路,控制功能電路運行結(jié)果的輸出,在消費者未取得合法授權(quán)時,功能電路無法正常工作,從而達(dá)到了保護電路的目的。本文將該保護方法運用在實際的電路上,進(jìn)行仿真并驗證了該方法的有效性。
本文引用地址:http://www.ex-cimer.com/article/266049.htm引言
隨著片上系統(tǒng)SoC的迅速發(fā)展,IP復(fù)用的知識產(chǎn)權(quán)保護問題日益嚴(yán)重,危害了設(shè)計者和消費者的權(quán)益[1-3]。為了有效地保護IP核,需要有切實有效的保護方案。本文提出一種積極的IP保護方法。它通過設(shè)計一個支路保護電路來鎖定需要保護的功能電路,用戶只有在獲得授權(quán)并得到正確的密鑰后,才能解鎖該電路,從而實現(xiàn)保護電路的功能。該方法的基本原理是比較功能電路和保護電路的路徑延時,如果二者相同,則功能電路的輸出結(jié)果可以正確輸出,否則結(jié)果將無法向下傳遞。和傳統(tǒng)的采用密碼算法對IP核進(jìn)行加密的方法相比,本方法不僅可以防止IP核流通過程中的盜用,還可以防止IP核使用過程中的盜用。
1 背景技術(shù)
目前主流的IP核保護方法有加密保護法[4]、水印保護法[5]和基于硬件鎖的保護法[6]。加密保護法使用密碼學(xué)算法對IP核進(jìn)行加密,可以防止IP核在流通過程被盜用。在合法用戶獲得密鑰解密IP核后,它就失去了保護。水印法[7]在電路中嵌入代表設(shè)計者信息的數(shù)字水印,通過提取該水印達(dá)到IP識別和追蹤的目的。水印法屬于被動IP保護法?;谟布i的保護方法則是在芯片制造后,利用工藝偏差與邏輯功能的相互關(guān)聯(lián)來鎖定每一個芯片,沒有解鎖的密碼,芯片不能正常工作。該方法主要針對芯片的IP保護。
IP核根據(jù)設(shè)計的靈活性分為軟核、固核、硬核三大類,依次靈活度依次降低[8]。本文所要保護的是IP固核,固核指的是帶有平面規(guī)劃信息的網(wǎng)表,通常以RTL 代碼封裝和對應(yīng)的具體工藝網(wǎng)表的混合形式提供。將RTL 描述結(jié)合具體標(biāo)準(zhǔn)單元庫進(jìn)行綜合優(yōu)化設(shè)計,形成門級網(wǎng)表,再通過布局布線即可使用。固核兼具設(shè)計靈活性和性能可預(yù)見性是IP 核的主流形式之一。所以,IP固核的保護尤為重要。
本文采用的是硬件鎖保護方法,實現(xiàn)對IP固核的保護,保護電路加入了狀態(tài)機實現(xiàn)密鑰的檢測,只有在密鑰輸入正確的情況下,保護電路才會解鎖被保護電路。
2 實現(xiàn)方法
2.1 電路結(jié)構(gòu)
如圖1所示,電路包括左右兩條數(shù)據(jù)路徑,右邊的數(shù)據(jù)路徑是待保護的電路,其輸入到運行結(jié)果需要經(jīng)過多個周期。左邊的部分則為添加的保護電路,控制右邊電路的輸出,達(dá)到輸出或者屏蔽的目的。該保護電路主要包括兩部分:一是移位寄存器,在功能電路的使能信號、輸出有效信號以及狀態(tài)機的輸出信號的聯(lián)合控制下進(jìn)行移位操作;二是進(jìn)行密碼檢測機,只有在用戶輸入的密碼完全正確的前提下,移位寄存器才能正常移位,進(jìn)而達(dá)到解鎖功能電路的目的。
圖1中ce為整個電路的使能信號,data為功能電路的輸入數(shù)據(jù),out2為功能電路的運行結(jié)果,RDY信號為功能電路的輸出有效信息,即在經(jīng)過UPC的輸入輸出延遲后,out2輸出運行結(jié)果,同時RDY信號有效。R為移位寄存器的使能信號,移位寄存器的輸出接受狀態(tài)機的密碼檢測,如果密鑰匹配,則狀態(tài)機的輸出不影響移位操作。ce和RDY信號分別控制移位寄存器的開始移位操作和結(jié)束移位操作。
右邊的數(shù)據(jù)路徑在使能信號的驅(qū)動下是能正常工作的,其工作不受左邊保護支路的影響,左邊支路的保護作用主要體現(xiàn)在是否讓電路的運行結(jié)果正確輸出,這就涉及到左邊電路與右邊電路的路徑延時匹配問題。在下一節(jié)中介紹兩條路徑的匹配問題。
2.2 路徑的匹配
功能電路在經(jīng)過一定的輸入輸出延時后,運行結(jié)果將在out2管腳顯示,如果在此刻及以后的時間內(nèi),保護電路的輸出管腳mux(即選擇器的選擇端)輸出值1,那么經(jīng)過圖中的選擇器后,功能電路運行結(jié)果out2將在out端口可用。
保護電路和功能電路共用使能信號ce,假如移位寄存器中存入正確的密鑰,則在狀態(tài)機的控制下,移位寄存器正常移位。每個周期移動一位,直到UPC電路的輸出有效信號RDY經(jīng)過n周期后有效,移位終止。此時,fsm_out 輸出仍為高電平,若此時SRL的輸出out1為高電平1,那么經(jīng)過“與”門操作后,將實現(xiàn)解鎖的目的,即初始值的n-bit對應(yīng)為解鎖位,n對應(yīng)于功能電路的延遲周期。如果SRL中的初始值輸入錯誤,則狀態(tài)機輸出fsm_out為低電平0,移位寄存器停止移位,電路被鎖定。
由此可見,只有在移位寄存器的初始值輸入正確的情況下,兩條路徑的延時才能匹配,達(dá)到解鎖的目的,否則,電路將被鎖死。對于n比特的初始值,猜出正確序列的可能性為1/(2n),故n越大越有利于提高該保護方法的可靠性。
電路相關(guān)文章:電路分析基礎(chǔ)
pic相關(guān)文章:pic是什么
評論