一種提高木馬活性的測試向量生成方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明屬于芯片安全檢測技術(shù)領(lǐng)域,涉及一種提高木馬活性的測試向量生成方法。
【背景技術(shù)】
[0002]硬件木馬,是指在芯片設(shè)計或制造過程中,向原始電路中添加的特殊模塊。一旦被觸發(fā),硬件木馬能夠?qū)崿F(xiàn)干擾、破壞正常工作或是泄露信息等目的。
[0003]近年來集成電路在電子系統(tǒng)占據(jù)著越來越核心的地位,其應(yīng)用涉及到國家安全、軍事、航空航天、通信、交通、金融等重要應(yīng)用領(lǐng)域的所有關(guān)鍵設(shè)備。如果被嵌入硬件木馬的芯片被應(yīng)用到這些領(lǐng)域可能會引起災(zāi)難性后果,所以確保芯片中不含有硬件木馬是十分重要的。
[0004]常用的檢測方法都是通過識別硬件木馬對原始電路的影響來檢測木馬,主要可以分為旁路分析法和邏輯測試法。旁路分析法通過對比可信芯片和待測芯片的電流、功耗、路徑延遲等旁路參數(shù)來檢測木馬。邏輯測試法通過識別被觸發(fā)木馬對邏輯值的影響來檢測木馬。未被觸發(fā)的木馬對原始電路的影響非常小,所以提高硬件木馬活性對于檢測硬件木馬是非常重要的。
【發(fā)明內(nèi)容】
[0005]本發(fā)明提供了一種提高硬件木馬活性的測試向量生成方法,使硬件木馬在邏輯測試和旁路分析法中更容易被檢測出來,避免電子系統(tǒng)受到硬件木馬的威脅,保證系統(tǒng)的安全。
[0006]一種提高木馬活性的測試向量生成方法,包括以下步驟:
[0007]I)統(tǒng)計芯片內(nèi)部各節(jié)點出現(xiàn)邏輯0/1的概率,概率小于預(yù)設(shè)閾值的節(jié)點作為備選節(jié)點(稀有節(jié)點),這些節(jié)點容易被用來嵌入硬件木馬;
[0008]2)收集能夠使備選節(jié)點出現(xiàn)稀有邏輯值的向量,作為備選向量。
[0009]3)消除備選向量中的重復(fù)項,按照每個向量同時觸發(fā)備選節(jié)點個數(shù)降序排列,得到最終用于檢測木馬的向量。
[0010]本發(fā)明的一種提高木馬活性的測試向量生成方法,充分利用了硬件木馬與稀有節(jié)點相關(guān)聯(lián)的特點,優(yōu)先輸入能夠觸發(fā)更多稀有節(jié)點出現(xiàn)稀有邏輯值的測試向量,可以提高硬件木馬活性,縮短檢測時間,提高木馬檢測覆蓋率,使被植入硬件木馬的芯片進入應(yīng)用前被檢出,避免電子系統(tǒng)受到硬件木馬的威脅,保證系統(tǒng)安全。
【附圖說明】
[0011]圖1為插入掃描鏈后的芯片結(jié)構(gòu)示意圖。
[0012]圖2為本發(fā)明提高木馬活性的測試向量生成方法流程示意圖。
[0013]圖3為消除備選向量重復(fù)項并重新排序流程示意圖。
【具體實施方式】
[0014]為了使本發(fā)明的目的、技術(shù)方案及優(yōu)點更加清楚明白,以下結(jié)合附圖及實施例,對本發(fā)明進行進一步詳細說明。
[0015]現(xiàn)代集成電路產(chǎn)業(yè)為降低測試開銷,提高電路內(nèi)部節(jié)點的可控性和可觀測性,已將插入掃描鏈作為集成電路標準設(shè)計流程的一部分。插入掃描鏈的芯片結(jié)構(gòu)示意圖如圖1所示。本文生成的測試向量也是基于掃描鏈結(jié)構(gòu)施加到芯片中的。生成測試向量的每個元素為掃描鏈中寄存器和芯片輸入引腳的邏輯值的拼接,并以十六進制形式存儲。
[0016]圖2是本發(fā)明的一種提高木馬活性的測試向量生成方法的流程示意圖。其步驟包括:
[0017]第一階段:收集備選節(jié)點
[0018]I)使用仿真工具對原始芯片的門級網(wǎng)表進行仿真,統(tǒng)計芯片內(nèi)部節(jié)點停留在邏輯0/1的時間。
[0019]2)選出停留在邏輯0/1時間占仿真時長百分比小于預(yù)設(shè)閾值的節(jié)點作為備選節(jié)點(稀有節(jié)點)。
[0020]仿真工具可以使用Synopsys公司的VCS或是Cadence公司的NC Verilog等,這些工具都能生成SAIF (Switching Activity Interchange Format)文件,用于統(tǒng)計芯片內(nèi)部各節(jié)點停留在邏輯0/1的時間。相比于利用拓撲結(jié)構(gòu)得到稀有節(jié)點的方法,本發(fā)明使用功能仿真法得到的SAIF文件更符合實際應(yīng)用情況,尤其是輸入的激勵是根據(jù)電路規(guī)范文件和實際的工作環(huán)境施加的;并且本發(fā)明只需要在仿真過程中添加生成SAIF文件的指令,不需額外的步驟。對SAIF文件的處理可以使用Perl腳本實現(xiàn),提取出所有節(jié)點停留在邏輯0/1時間(T0/T1),然后除以仿真周期并與預(yù)設(shè)閾值進行比較。
[0021]第二階段:收集備選向量
[0022]收集能夠使備選節(jié)點出現(xiàn)稀有邏輯值的向量,作為備選向量。為了能夠快速得到備選向量,這里借助自動測試向量生成技術(shù),對備選節(jié)點檢查與稀有邏輯值相反的固定型故障(stuck-at fault),得到備選向量。自動測試向量生成可以借助PODEM、FAN、SOCRATES和ATOM等算法或是EDA工具TetraMax。為了提高自動測試向量生成技術(shù)對無法建模節(jié)點故障的檢測覆蓋率,對每個備選節(jié)點使用多個不同的測試向量進行多次檢查。
[0023]第三階段:消除備選向量重復(fù)項并重新排序
[0024]使用peri腳本消除備選向量中的重復(fù)項,并按照同時觸發(fā)節(jié)點個數(shù)降序排列備選向量,其過程圖3所示,包含如下步驟:
[0025]I)構(gòu)建哈希表,哈希表的鍵為備選向量,值為重復(fù)次數(shù)。依次讀入備選向量,鍵為讀入備選向量的元素哈希值加I。所有的哈希鍵構(gòu)成消除重復(fù)項后的備選向量。
[0026]2)按照哈希值的大小對哈希表元素進行降序排列,輸出哈希表所有的鍵,構(gòu)成最終用于木馬檢測的測試向量。
[0027]階段二針對每個備選節(jié)點都會生成多個測試向量,由于同一向量可能觸發(fā)多個節(jié)點同時出現(xiàn)稀有邏輯值,因此在所有的備選向量中重復(fù)多次出現(xiàn),所以首先需要消除備選向量中的重復(fù)項。優(yōu)先輸入能使更多節(jié)點出現(xiàn)稀有邏輯值的向量可以更快速的觸發(fā)木馬,所以對消除重復(fù)項后的測試向量按照同時觸發(fā)備選節(jié)點個數(shù)降序排列。消除備選向量重復(fù)項并重新排序后得到的測試向量變?yōu)樘岣吣抉R活性的測試向量。
【主權(quán)項】
1.一種提高木馬活性的測試向量生成方法,其步驟在于: 第一階段;收集備選節(jié)點 1)使用仿真工具對原始芯片的門級網(wǎng)表進行仿真,統(tǒng)計芯片內(nèi)部節(jié)點停留在邏輯0/1的時間;在仿真過程中添加生成SAIF文件的指令,對SAIF文件的處理使用Perl腳本實現(xiàn),提取出所有節(jié)點停留在邏輯0/1時間,T0/T1,然后除以仿真周期并與預(yù)設(shè)閾值進行比較; 2)選出停留在邏輯0/1時間占仿真時長百分比小于預(yù)設(shè)閾值的節(jié)點作為備選節(jié)點; 第二階段:收集備選向量 收集能夠使備選節(jié)點出現(xiàn)稀有邏輯值的向量,作為備選向量;借助自動測試向量生成技術(shù),對備選節(jié)點檢查與稀有邏輯值相反的固定型故障,得到備選向量,對每個備選節(jié)點使用多個不同的測試向量進行多次檢查; 第三階段:消除備選向量重復(fù)項并重新排序 使用Perl腳本消除備選向量中的重復(fù)項,并按照同時觸發(fā)節(jié)點個數(shù)降序排列備選向量,包含如下步驟: 1)構(gòu)建哈希表,哈希表的鍵為備選向量,值為重復(fù)次數(shù);依次讀入備選向量,鍵為讀入備選向量的元素哈希值加I ;所有的哈希鍵構(gòu)成消除重復(fù)項后的備選向量; 2)按照哈希值的大小對哈希表元素進行降序排列,輸出哈希表所有的鍵,構(gòu)成最終用于木馬檢測的測試向量。
2.根據(jù)權(quán)利要求1所述的測試向量生成方法,其步驟在于:所述的自動測試向量生成借助 PODEM、FAN、SOCRATES、ATOM 或 EDA 工具 TetraMax 實現(xiàn)。
【專利摘要】本發(fā)明屬于芯片安全檢測技術(shù)領(lǐng)域,涉及一種提高木馬活性的測試向量生成方法。統(tǒng)計芯片內(nèi)部各節(jié)點出現(xiàn)邏輯0/1的概率,概率小于預(yù)設(shè)閾值的節(jié)點作為備選節(jié)點;收集能夠使備選節(jié)點出現(xiàn)稀有邏輯值的向量,作為備選向量。消除備選向量中的重復(fù)項,按照每個向量同時觸發(fā)備選節(jié)點個數(shù)降序排列,得到最終用于檢測木馬的向量。本發(fā)明的測試向量生成方法,充分利用了硬件木馬與稀有節(jié)點相關(guān)聯(lián)的特點,優(yōu)先輸入能夠觸發(fā)更多稀有節(jié)點出現(xiàn)稀有邏輯值的測試向量,可以提高硬件木馬活性,縮短檢測時間,提高木馬檢測覆蓋率,使被植入硬件木馬的芯片進入應(yīng)用前被檢出,避免電子系統(tǒng)受到硬件木馬的威脅,保證系統(tǒng)安全。
【IPC分類】G01R31-28
【公開號】CN104849648
【申請?zhí)枴緾N201510273862
【發(fā)明人】陳曉明, 劉洋, 李松松, 張建偉, 朱慧超
【申請人】大連理工大學(xué)
【公開日】2015年8月19日
【申請日】2015年5月26日