專利名稱:利用刪除開關(guān)確??删幊唐骷踩姆椒ê脱b置的制作方法
利用刪除開關(guān)確??删幊唐骷踩姆椒ê脱b置
背景技術(shù):
在靜態(tài)隨機(jī)存取存儲(chǔ)(“SRAM”)貯存器中存儲(chǔ)配置數(shù)據(jù)的可編程邏輯器件很普遍。SRAM貯存器是易失性的;在停止供電時(shí),SRAM貯存器不能保留其內(nèi)容。因此,以SRAM技術(shù)為基礎(chǔ)的可編程邏輯器件與非易失性貯存器一起使用,以在器件關(guān)閉期間或在不提供電力的其他情形期間保留配置編程數(shù)據(jù)。但是,對(duì)手可能監(jiān)視通電時(shí)非易失性貯存器的流出數(shù)據(jù),從而確定可編程邏輯器件的編程配置。事實(shí)上,對(duì)手甚至不需要分析數(shù)據(jù)流,而只需要在其擁有的設(shè)備上記錄并存儲(chǔ)此數(shù)據(jù)流。在非易失性存儲(chǔ)器組件中存儲(chǔ)配置編程數(shù)據(jù)的某些裝置具有保護(hù)敏感數(shù)據(jù)的安全部件(例如,加密/解密)。不幸的是,未授權(quán)用戶有時(shí)可能繞過這些安全部件并訪問敏感信息。
發(fā)明內(nèi)容
本公開涉及利用刪除開關(guān)保護(hù)可編程裝置(例如,可編程邏輯器件(PLDS))??梢岳茫?,刪除熔絲、非易失性存儲(chǔ)位或易失性電池備份存儲(chǔ)位實(shí)現(xiàn)刪除開關(guān)。響應(yīng)于檢測(cè)的安全威脅,例如,可以斷開(blow)刪除開關(guān),引起裝置的至少部分被重置、禁能/禁用(enable)或兩者。在某些實(shí)施例中,響應(yīng)檢測(cè)到的安全威脅,裝置的配置電路和/或解密電路被永久禁能。在某些實(shí)施例中,斷開刪除開關(guān)(即將刪除開關(guān)切換到特定狀態(tài))可能引起特定刪除序列的執(zhí)行。刪除序列可以由在各PLD中實(shí)現(xiàn)的用戶設(shè)計(jì)來定義。例如,對(duì)于存儲(chǔ)解密密鑰的PLD,刪除序列可能引起密鑰被清除或清零。刪除序列可能引起存儲(chǔ)在PLD配置存儲(chǔ)器(例如,CRAM)中的任意的配置數(shù)據(jù)被去除以及重置PLD中實(shí)現(xiàn)當(dāng)前用戶設(shè)計(jì)的某些或全部邏輯連接。應(yīng)該理解,刪除序列至少可對(duì)PLD的任何適當(dāng)部分進(jìn)行局部重置、清除、清零、禁能或執(zhí)行以上操作中的兩種??梢远x多個(gè)刪除序列并且特定刪除序列的執(zhí)行可基于與每個(gè)各自的刪除序列相關(guān)聯(lián)的特定觸發(fā)器。
結(jié)合附圖考慮以下詳細(xì)說明,本公開的進(jìn)一步特征、其本質(zhì)和各種優(yōu)點(diǎn)將是顯而易見的,附圖中同樣的參考符號(hào)指代同樣的部件,并且其中圖I是根據(jù)某些實(shí)施例的示例性可編程邏輯器件的方框圖;圖2是根據(jù)某些實(shí)施例的電池供電的易失性存儲(chǔ)器的方框圖;圖3是根據(jù)某些實(shí)施例的裝置刪除序列的示例性步驟的流程圖;和圖4是根據(jù)某些實(shí)施例的并入可編程邏輯器件的示例性系統(tǒng)的方框圖。
具體實(shí)施例方式圖I顯示示例性可編程邏輯器件(PLD) 100作為可在其中實(shí)現(xiàn)本公開的可編程器件的示例。應(yīng)該理解,本公開可應(yīng)用于任何適當(dāng)?shù)目删幊唐骷F(xiàn)場(chǎng)可編程門陣列(FPGA)器件或任何其他類型的PLD。PLD 100可包含核心配置結(jié)構(gòu)106,其可包含任何適當(dāng)?shù)能浖?、電路或兩者以用于存?chǔ)和實(shí)現(xiàn)PLD 100中的用戶設(shè)計(jì)。這可包含,例如,將任何適當(dāng)?shù)募夹g(shù)用于存儲(chǔ)器(例如,配置RAM(CRAM))和可編程邏輯(例如,邏輯陣列塊)而實(shí)現(xiàn)的任何適當(dāng)?shù)目删幊踢壿?,具有硬布線邏輯(例如,乘累加電路)的數(shù)字信號(hào)處理(DSP)電路,任何其他合適的硬件、軟件或兩者或者以上各項(xiàng)的任意組合。SRAM,例如,可用于存儲(chǔ)配置數(shù)據(jù)。I/O電路102可包含為PLD 100提供數(shù)據(jù)輸入、輸出或兩者的一個(gè)或更多端口。例如,I/O電路102可包含一個(gè)或更多JTAG端口和可用于輸入編程對(duì)象文件(POF)位流的一個(gè)或更多端口。I/O電路102可耦合到核心配置結(jié)構(gòu)106、控制塊108、耦合到PLD 106的任何其他適當(dāng)組件或者耦合到其任何組合。控制塊108可包含任何適當(dāng)?shù)能浖?、電路或兩者以用于調(diào)節(jié)和控制PLD 100的配 置,并用于保持PLD 100的安全性??刂茐K108可耦合到I/O電路102、刪除開關(guān)(killswitch) 104、PLD 100的任何其他適當(dāng)?shù)慕M件(例如,核心配置結(jié)構(gòu)106或諸如可編程選路(programmable routing) 110的組件)或其任意組合。在某些實(shí)施例中,為了避免對(duì)PLD 100的未授權(quán)存取或使用,如訪問核心配置結(jié)構(gòu)106中實(shí)現(xiàn)的(和存儲(chǔ)器114(例如,CRAM)中存儲(chǔ)的)用戶設(shè)計(jì),PLD 100可包含安全部件(feature)。例如,如圖I所示,PLD 100可包含安全模塊112。安全模塊112可以是實(shí)現(xiàn)安全部件以阻止對(duì)PLD 100的未授權(quán)使用或存取的任何適當(dāng)軟件、硬件或兩者。安全模塊112可以是,例如,在核心配置結(jié)構(gòu)106中實(shí)現(xiàn)的用戶設(shè)計(jì)組件??商娲?,安全模塊112可以是賣主提供的私有的配置數(shù)據(jù)的部分以用于各種通用功能,其由制造商預(yù)先加載在PLD100中或者由用戶加載在PLD 100中。無論是由用戶加載還是由制造商加載,安全模塊112都可以由用戶定制為例如用戶設(shè)計(jì)實(shí)現(xiàn)的部分。如圖所示,安全模塊112是核心配置結(jié)構(gòu)106的部分。應(yīng)當(dāng)理解,安全模塊112可作為PLD 100的任何其他適當(dāng)組件的部分實(shí)現(xiàn),如在控制塊108中,或者可以作為單個(gè)組件實(shí)現(xiàn)。安全模塊112可允許用戶定義引起刪除開關(guān)104被激活的觸發(fā)器。刪除開關(guān)104可以是禁能可編程器件功能的非易失性元件、機(jī)械裝置或兩者,或易失性電池備份元件。例如,在某些實(shí)施例中,通過安全模塊112,用戶設(shè)計(jì)可以被提供檢測(cè)安全威脅和通過激活刪除開關(guān)104開始刪除序列的能力。安全威脅可基于任何適當(dāng)?shù)臉?biāo)準(zhǔn)被檢測(cè)到。刪除開關(guān)104和刪除序列(例如,重置、更改、清除、清零等)的各元素中的任意元素可以是用戶可編程的。在一個(gè)適當(dāng)?shù)姆桨钢校瑒h除開關(guān)104可至少部分利用物理的刪除熔絲實(shí)現(xiàn)。刪除熔絲可以是任何適當(dāng)?shù)娜劢z,如非易失性(NV)熔絲。在另一方案中,刪除開關(guān)104可至少部分利用電池備份易失性存儲(chǔ)器實(shí)現(xiàn)。為使PLD 100被配置、重新配置、適當(dāng)起作用或其任何組合,刪除開關(guān)104可產(chǎn)生一個(gè)或更多必要的連接。例如,當(dāng)PLD 100處于配置模式時(shí),控制塊108 (或任何其他適當(dāng)?shù)慕M件)可不斷地檢查刪除開關(guān)104以確保刪除開關(guān)104沒有被斷開。如果檢測(cè)到斷開的刪除開關(guān)104,則控制塊108可阻止對(duì)PLD 100的任何配置或重新配置?;蛘呖商娲?,斷開的刪除開關(guān)104也可能引起PLD 100的某些或所有存儲(chǔ)器和/或邏輯組件的任何適當(dāng)?shù)闹刂?、清除或清?即清除和清除的確認(rèn))。例如,可保留用戶配置數(shù)據(jù)的存儲(chǔ)器114的某些或所有內(nèi)容可能被去除、用隨機(jī)數(shù)據(jù)代替或清零等等。
例如,當(dāng)通過核心配置結(jié)構(gòu)106的用戶設(shè)計(jì)元件(例如,安全模塊112)或通過控制塊108檢測(cè)到安全威脅時(shí),可停止PLD 100 (例如斷開刪除開關(guān)104)。為了簡(jiǎn)短和清楚的目的并且不通過限制性的方式,本發(fā)明是根據(jù)檢測(cè)安全威脅和斷開刪除開關(guān)的安全模塊112進(jìn)行描述的。應(yīng)當(dāng)理解,任何其他適當(dāng)?shù)脑蛟慕M合可檢測(cè)安全威脅并停止PLD100。在某些實(shí)施例中,用于配置或重新配置PLD 100的編程對(duì)象文件(POF)位流或任何其他適當(dāng)?shù)呐渲脭?shù)據(jù)可能被加密(例如,采用AES加密協(xié)議)。為了解密配置數(shù)據(jù),PLD100可使用解密密鑰。如圖2所示,解密密鑰可以使用耦合到電池202的易失性存儲(chǔ)器200存儲(chǔ)在PLD 100中。當(dāng)PLD 100關(guān)閉時(shí),電池202防止易失性存儲(chǔ)器200的內(nèi)容被擦除。易失性存儲(chǔ)器200可以在控制塊108、核心配置結(jié)構(gòu)106、PLD 100的任意其他適當(dāng)元件或其任意組合中實(shí)現(xiàn)。易失性存儲(chǔ)器可以是任何適當(dāng)?shù)拇鎯?chǔ)器裝置,例如,SRAM、DRAM、任何其他適當(dāng)?shù)囊资源鎯?chǔ)器或其任意組合。在某些實(shí)施例中,當(dāng)安全模塊112檢測(cè)到威脅并激活刪除開關(guān)104時(shí),并發(fā)的刪除序列可能包括清除易失性存儲(chǔ)器200的內(nèi)容。因此,一旦檢測(cè)到安全威脅即可能將解密密鑰清除或清零(即以已知的和非機(jī)密內(nèi)容替換存儲(chǔ)器內(nèi)容)。這將阻止PLD 100的配置或重新配置。解密密鑰也可以或可替代地存儲(chǔ)在非易失性存儲(chǔ)器中。圖3顯示了某些實(shí)施例中刪除序列的示例性步驟的流程圖300。在步驟302,安全模塊112可檢測(cè)起刪除觸發(fā)器作用的安全威脅。對(duì)于安全威脅可使用任何適合的標(biāo)準(zhǔn)。在步驟304,響應(yīng)檢測(cè)到的刪除觸發(fā)器,安全模塊112、控制塊108或兩者可將存儲(chǔ)在易失性存儲(chǔ)器(例如,易失性存儲(chǔ)器200)中的易失性解密密鑰清零或清除。應(yīng)當(dāng)理解,術(shù)語清除或清零內(nèi)容指代用不同于當(dāng)前數(shù)據(jù)的某數(shù)據(jù)替換此內(nèi)容而不必用數(shù)據(jù)值零替換 當(dāng)前數(shù)據(jù),某數(shù)據(jù)例如隨機(jī)數(shù)據(jù)、已知數(shù)據(jù)等。在步驟306,響應(yīng)檢測(cè)到的刪除觸發(fā)器,安全模塊112、控制塊108或者兩者可斷開刪除開關(guān)104。在步驟308,控制塊108可開始PLD 100的重新配置。也就是說,PLD 100被置為配置模式(相對(duì)于用戶模式)。作為重新配置序列的部分,控制塊108可不斷檢查刪除開關(guān)104。在通常環(huán)境下,當(dāng)未檢測(cè)到刪除觸發(fā)器且PLD 100處于配置模式時(shí),控制塊108可繼續(xù)常規(guī)的配置序列,在常規(guī)的配置序列中配置數(shù)據(jù)從POF位流加載并且核心配置結(jié)構(gòu)根據(jù)此配置數(shù)據(jù)被編程。然而,如果在步驟310確定已經(jīng)斷開刪除開關(guān)104,則在步驟312控制塊108可清除核心配置結(jié)構(gòu)106。這種清除可能有效地將配置結(jié)構(gòu)初始化至例如缺省狀態(tài)(例如,核心配置結(jié)構(gòu)106中的邏輯陣列塊和相應(yīng)的可編程連接可能被初始化、存儲(chǔ)器114可能被清除,并且任意其他配置數(shù)據(jù)或用戶設(shè)計(jì)數(shù)據(jù)可能被去除)。或者作為步驟304、步驟308的部分或者作為步驟312的部分(或者作為一個(gè)或更多個(gè)單獨(dú)的步驟),控制塊108可以禁能PLD100的任何其他適當(dāng)功能以響應(yīng)刪除觸發(fā)器三態(tài)I/O電路102 (或以其他方式禁能I/O電路102),其他適當(dāng)功能包括,例如,可以用于配置裝置的任何配置工具。在某些實(shí)施例中,PLD100中包含的解密工具被禁能以響應(yīng)刪除觸發(fā)器。禁能解密工具的一個(gè)優(yōu)點(diǎn)是可阻止對(duì)解密工具(如簡(jiǎn)易功耗分析(SPA)或差分功耗分析(DPA))的旁路攻擊,因?yàn)檫@種攻擊通常要求運(yùn)用解密工具。具體地,即使在易失性電池備份密鑰被完全清除之前,PLD 100的主要能量供應(yīng)被中斷,禁能解密工具仍會(huì)阻止攻擊者利用旁路攻擊存取密鑰。當(dāng)刪除開關(guān)104被斷開或者當(dāng)刪除序列(例如,刪除序列300)被執(zhí)行時(shí),PLD 100可能由于刪除開關(guān)104被停止連接或者由于PLD 100的其他組件或部件的損壞而被永久地去激活。在某些實(shí)施例中,PLD100可被配置為甚至在刪除序列執(zhí)行后允許授權(quán)用戶將其重置為起作用的(例如,當(dāng)刪除開關(guān)104作為電池備份易失性存儲(chǔ)器被實(shí)現(xiàn)時(shí))。在一些這樣的實(shí)施例中,刪除開關(guān)104實(shí)現(xiàn)為“粘滯位”,如下文所述。在易失性刪除開關(guān)被斷開之后,為了重新使能PLD 100,可將刪除開關(guān)完全清除。也可清除存儲(chǔ)在PLD 100中的包含密鑰在內(nèi)的數(shù)據(jù)。應(yīng)當(dāng)理解,刪除序列300僅僅是示例性的。除已示出的這些步驟外可執(zhí)行任何其他適合的步驟,或者可執(zhí)行任何其他適合的步驟來取代這些步驟??蓪?duì)刪除序列300作出任何適當(dāng)?shù)男薷?,并且?yīng)當(dāng)理解呈現(xiàn)的順序僅僅是示例性的。應(yīng)當(dāng)進(jìn)一步理解,PLD 100可實(shí)施每個(gè)與各觸發(fā)器關(guān)聯(lián)的多個(gè)刪除序列。因此,不同的觸發(fā)事件可能引起一個(gè)或更多不同的刪除序列的執(zhí)行。 在某些實(shí)施例中,可以將通過熔斷相應(yīng)的熔絲來清除熔絲位作為刪除序列的部分。例如,在PLD 100的某些設(shè)計(jì)中,代替使用易失性解密密鑰(即,存儲(chǔ)在由電池202供電的易失性存儲(chǔ)器200 (圖2)中),可以使用永久的熔絲位存儲(chǔ)一個(gè)或更多的密鑰。當(dāng)安全威脅引起刪除開關(guān)被激活時(shí),作為刪除序列的部分,某些或所有熔絲位可能通過熔斷相應(yīng)的熔絲而被永久地清除,從而去除任何存儲(chǔ)的密鑰值。也可以在檢測(cè)到安全威脅而未斷開刪除開關(guān)104時(shí)清除和驗(yàn)證熔絲密鑰位。在較少的臨界威脅情形中,PLD 100中的用戶設(shè)計(jì)可清除熔絲密鑰位,而不“刪除”整個(gè)PLD 100。在例如操作條件、產(chǎn)品保存期限或維護(hù)要求不允許使用電池和易失性存儲(chǔ)器存儲(chǔ)密鑰的情形中,可以使用熔絲密鑰代替易失性密鑰。應(yīng)當(dāng)理解,任何適當(dāng)?shù)娜劢z可用于此方案中(例如,NV熔絲)。如果需要,當(dāng)清除任何熔絲位時(shí)(或當(dāng)作為刪除序列的部分清除來自PLD 100的任何組件的任何數(shù)據(jù)時(shí))可執(zhí)行已成功清除熔絲位的驗(yàn)證,所述驗(yàn)證可涉及例如內(nèi)置讀回和驗(yàn)證程序的使用。如果熔絲位(或其他數(shù)據(jù))沒有被成功地清除,則可以重復(fù)清除和驗(yàn)證程序。如上所討論的,任何適當(dāng)?shù)陌踩{可以被識(shí)別并用于觸發(fā)刪除開關(guān)和關(guān)聯(lián)的刪除序列。在一種適當(dāng)?shù)姆桨钢?,代表特定安全威脅的安全選項(xiàng)位的使用可用于識(shí)別安全威脅以及觸發(fā)裝置清除或刪除序列。安全選項(xiàng)位可采取例如粘滯位的形式。粘滯位可以利用電池供電的易失性存儲(chǔ)器存儲(chǔ)在PLD 100中。例如,參考圖2,粘滯位可以存儲(chǔ)在由電池202供電的易失性存儲(chǔ)器200中。粘滯位可存儲(chǔ)在控制塊108或PLD 100的任何其他適當(dāng)?shù)慕M件中。如以上討論的,易失性存儲(chǔ)器200也可存儲(chǔ)與PLD 100關(guān)聯(lián)的解密密鑰。應(yīng)該理解,粘滯位和密鑰位可分別或共同存儲(chǔ)在相同或不同的存儲(chǔ)器裝置上,其中存儲(chǔ)器裝置由相同或不同的電池供電。在一種適當(dāng)?shù)姆桨钢?,粘滯位可存?chǔ)在PLD 100上的多個(gè)副本中(例如,三重)并且可以利用由核心配置結(jié)構(gòu)106供電的影子寄存器進(jìn)行備份。如果任何粘滯位被設(shè)置為高,則相應(yīng)的其他位也將被迫為高。僅循環(huán)其中的一個(gè)電源將恢復(fù)寄存器中的值,該值從未循環(huán)的對(duì)應(yīng)寄存器中循環(huán)得到。粘滯位可用于設(shè)置多個(gè)安全選項(xiàng)中的任何選項(xiàng)。他們也可用于測(cè)試是否存在特定的安全威脅。例如,在一個(gè)適當(dāng)?shù)姆桨钢校鎯?chǔ)在PLD100中的粘滯位可以與POF中傳輸?shù)膶?duì)應(yīng)的安全選項(xiàng)位相比較。由于存儲(chǔ)在PLD 100中的粘滯位是固定的形式(即,除了當(dāng)重新配置PLD100時(shí)之外他們不能被修改),因此一種適當(dāng)?shù)陌踩{檢查可能涉及比較粘滯位形式與POF中的安全位形式。如果存在不匹配,則可清除或清零解密密鑰,或者可觸發(fā)裝置刪除序列。在某些實(shí)施例中,可檢查或監(jiān)視存儲(chǔ)在PLD 100中的安全選項(xiàng)位,諸如粘滯位或從POF接收的位,以確保其各自的值尚未被修改(例如,由于輻射、安全威脅、任何其他適當(dāng)?shù)脑蚧蚱淙我饨M合)。如果確定存儲(chǔ)在PLD 100中的一個(gè)或更多安全選項(xiàng)位已經(jīng)被更改,則可清除或清零解密密鑰或觸發(fā)裝置刪除序列。任何安全選項(xiàng)位是否已經(jīng)被更改的判斷可以利用任何適當(dāng)?shù)募夹g(shù)實(shí)現(xiàn),例如,通過計(jì)算校驗(yàn)(例如,CRC)值并將其與存儲(chǔ)的(即預(yù)期的)值比較。包含粘滯位在內(nèi)的安全選項(xiàng)位在美國專利申請(qǐng)13/098,074 (律師卷號(hào)000174-0714-101 (A03700))和 13/098, 316 (律師卷號(hào) 000174-0715-101 (A03701))中進(jìn) 一步討論,兩者在同一日期提交且兩者整體包含在此以供參考。在某些實(shí)施例中,根據(jù)具體的逝去時(shí)間,可清除或清零易失性密鑰(或任何其他類型的密鑰)。例如,當(dāng)編程密鑰時(shí),用戶設(shè)計(jì)可指示在編程密鑰后某一時(shí)間段后易失性密鑰將被自動(dòng)清零。時(shí)間可由電池供電的真實(shí)時(shí)鐘確定。這可避免重新配置PLD的任何后續(xù)嘗試(例如,如果只有PLD的單個(gè)配置操作是預(yù)期的)??梢詮娜魏芜m當(dāng)?shù)钠鹗键c(diǎn)計(jì)算時(shí)間而不必須從初始編程密鑰的時(shí)間計(jì)算。例如,在某一時(shí)間段逝去后,清零可自動(dòng)發(fā)生,因?yàn)榘踩{已經(jīng)通過安全模式112、控制塊108或兩者被識(shí)別。根據(jù)本發(fā)明的任何實(shí)施例編程的PLD 90可用于多種類型的電子裝置中。一個(gè)可能的應(yīng)用是在圖4顯示的數(shù)據(jù)處理系統(tǒng)900中。數(shù)據(jù)處理系統(tǒng)900可包含一個(gè)或更多以下組件處理器901、存儲(chǔ)器902、I/O電路903和外圍裝置904。這些組件通過系統(tǒng)總線905耦合在一起并組裝在包含于終端用戶系統(tǒng)907內(nèi)的電路板906上。系統(tǒng)900能用于多種應(yīng)用,例如計(jì)算機(jī)網(wǎng)絡(luò)化、數(shù)據(jù)網(wǎng)絡(luò)化、儀器化、視頻處理、數(shù)字信號(hào)處理或需要利用可編程邏輯或可重新編程邏輯的優(yōu)點(diǎn)的任何其他應(yīng)用。PLD 90能用于執(zhí)行各種不同的邏輯功能。例如,PLD 90可以配置為與處理器901協(xié)作的處理器或控制器。PLD 90也可用作仲裁器以用于仲裁對(duì)系統(tǒng)900中共享資源的存取。在又一示例中,PLD 90可配置為處理器901與系統(tǒng)900中其他組件中的一個(gè)組件之間的接口。應(yīng)當(dāng)注意,系統(tǒng)900只是作為示例性的,并且應(yīng)當(dāng)注意本公開的真實(shí)范圍和精神應(yīng)該由以下權(quán)利要求指示。如上所述的各種技術(shù)可用于執(zhí)行PLD 90且并入本發(fā)明。應(yīng)當(dāng)理解,前述內(nèi)容僅僅是作為本發(fā)明原理的示例性內(nèi)容,并且應(yīng)當(dāng)理解,在不脫離本發(fā)明的范圍和精神的情況下本領(lǐng)域技術(shù)人員可以作出各種修改。例如,本發(fā)明的各種元件可以以任何期望的數(shù)量和/或布局被提供于PLD上。本領(lǐng)域的技術(shù)人員將理解,所提供的實(shí)施例只是為了示例而非限制的目的,本發(fā)明可以由所描述的實(shí)施例以外的多種實(shí)施例實(shí)踐,并且本發(fā)明僅由以下權(quán)利要求限制。
權(quán)利要求
1.一種可編程邏輯器件,包括 被配置為實(shí)現(xiàn)安全模塊的核心配置結(jié)構(gòu); 耦合到所述核心配置結(jié)構(gòu)的控制塊;和 耦合到所述控制塊的刪除開關(guān),其中所述控制塊和所述核心配置結(jié)構(gòu)被配置為斷開刪除開關(guān)以響應(yīng)預(yù)定義事件的發(fā)生,其中斷開所述刪除開關(guān)使得存儲(chǔ)在所述可編程邏輯器件的至少部分內(nèi)的數(shù)據(jù)被改變。
2.根據(jù)權(quán)利要求I所述的可編程邏輯器件,其中所述刪除開關(guān)包括熔絲。
3.根據(jù)權(quán)利要求I所述的可編程邏輯器件,其中所述可編程邏輯器件的至少部分被禁能以響應(yīng)所述刪除開關(guān)被斷開。
4.根據(jù)權(quán)利要求I所述的可編程邏輯器件,進(jìn)一步包括I/O電路,其中所述I/O電路被禁能以響應(yīng)所述刪除開關(guān)被斷開。
5.根據(jù)權(quán)利要求I所述的可編程邏輯器件,進(jìn)一步包括解密電路,其中所述解密電路被禁能以響應(yīng)所述刪除開關(guān)被斷開。
6.根據(jù)權(quán)利要求I所述的可編程邏輯器件,進(jìn)一步包括 電池;和 耦合到電池以用于存儲(chǔ)解密密鑰的易失性存儲(chǔ)器,其中存儲(chǔ)在所述易失性存儲(chǔ)器內(nèi)的數(shù)據(jù)被改變以響應(yīng)所述刪除開關(guān)被斷開。
7.根據(jù)權(quán)利要求I所述的可編程邏輯器件,進(jìn)一步包括用于存儲(chǔ)代表解密密鑰的熔絲位的密鑰熔絲,其中所述密鑰熔絲中的至少一個(gè)被斷開以響應(yīng)所述刪除熔絲被斷開。
8.根據(jù)權(quán)利要求I所述的可編程邏輯器件,其中所述核心配置結(jié)構(gòu)包括配置存儲(chǔ)器。
9.根據(jù)權(quán)利要求I所述的可編程邏輯器件,其中所述核心配置結(jié)構(gòu)包括邏輯陣列塊。
10.一種用于禁能可編程邏輯器件以響應(yīng)事件的方法,所述方法包括 檢測(cè)事件; 斷開刪除開關(guān)以響應(yīng)所述事件的檢測(cè);和 禁能所述可編程邏輯器件的至少部分以響應(yīng)所述刪除開關(guān)被斷開。
11.根據(jù)權(quán)利要求10所述的方法,其中檢測(cè)事件包括利用存儲(chǔ)在所述可編程邏輯器件中的粘滯位檢測(cè)事件。
12.根據(jù)權(quán)利要求11所述的方法,其中檢測(cè)事件包括將編程對(duì)象文件(POF)位流中的安全位的形式與至少一些粘滯位比較。
13.根據(jù)權(quán)利要求11所述的方法,其中檢測(cè)事件包括檢測(cè)所述粘滯位中的至少一個(gè)已經(jīng)被無意識(shí)修改。
14.根據(jù)權(quán)利要求10所述的方法,其中禁能所述可編程邏輯器件的至少部分包括將存儲(chǔ)密鑰的易失性存儲(chǔ)器清零。
15.根據(jù)權(quán)利要求10所述的方法,其中禁能所述可編程邏輯器件的至少部分包括熔斷與密鑰關(guān)聯(lián)的至少一個(gè)熔絲。
16.根據(jù)權(quán)利要求10所述的方法,其中禁能所述可編程邏輯器件的至少部分包括禁能I/O電路。
17.根據(jù)權(quán)利要求10所述的方法,其中禁能所述可編程邏輯器件的至少部分包括禁能解密電路。
18.根據(jù)權(quán)利要求10所述的方法,其中禁能所述可編程邏輯器件的至少部分包括開始所述可編程邏輯器件的重新配置。
19.根據(jù)權(quán)利要求10所述的方法,其中禁能所述可編程邏輯器件的至少部分包括去除存儲(chǔ)在所述可編程邏輯器件中的配置數(shù)據(jù)。
20.根據(jù)權(quán)利要求10所述的方法,進(jìn)一步包括重置所述可編程邏輯器件的至少部分以響應(yīng)所述刪除開關(guān)被斷開。
21.一種確??删幊踢壿嬈骷踩姆椒?,所述方法包括 使用在所述可編程邏輯器件中實(shí)施的時(shí)鐘裝置設(shè)置定時(shí)器; 利用所述時(shí)鐘裝置確定預(yù)定的時(shí)間已經(jīng)逝去;和 在所述預(yù)定的時(shí)間逝去后禁能重新配置所述可編程邏輯器件的能力。
22.根據(jù)權(quán)利要求21所述的方法,其中禁能重新配置所述可編程邏輯器件的能力包括改變存儲(chǔ)在所述可編程邏輯器件上的配置數(shù)據(jù)。
23.根據(jù)權(quán)利要求21所述的方法,其中禁能重新配置所述可編程邏輯器件的能力包括改變存儲(chǔ)在所述可編程邏輯器件中的密鑰。
24.根據(jù)權(quán)利要求21所述的方法,其中確定預(yù)定的時(shí)間已經(jīng)逝去包括確定所述可編程邏輯器件被最后配置后所述預(yù)定的時(shí)間已經(jīng)逝去。
全文摘要
本發(fā)明提供一種刪除開關(guān),當(dāng)刪除開關(guān)被觸發(fā)時(shí),可引起可編程邏輯器件(PLD)變成至少部分重置、禁能或兩者。刪除開關(guān)可以實(shí)現(xiàn)為熔絲或易失性電池備份的存儲(chǔ)位。例如,當(dāng)檢測(cè)到安全威脅時(shí),可斷開開關(guān)并開始裝置的重新配置以將PLD的存儲(chǔ)器和可編程邏輯中的某些或所有清零或清除。
文檔編號(hào)G06F21/02GK102799832SQ201210130429
公開日2012年11月28日 申請(qǐng)日期2012年4月28日 優(yōu)先權(quán)日2011年4月29日
發(fā)明者B·B·彼得森, D·A·里斯, J·喬伊斯 申請(qǐng)人:阿爾特拉公司