專利名稱:一種安全掃描寄存器、安全掃描鏈及其掃描方法
一種安全掃描寄存器、安全掃描鏈及其掃描方法技術(shù)領(lǐng)域
本發(fā)明屬于集成電路可測性設(shè)計領(lǐng)域,涉及一種用于安全測試的掃描寄存器、掃描鏈和掃描方法。
背景技術(shù):
掃描鏈作為目前VLSI(超大規(guī)模集成電路)設(shè)計中使用最為廣泛的可測性設(shè)計(Design for Test)結(jié)構(gòu),增強了芯片的可控性(controllability)和可觀察性 (observability),為芯片提供了良好的可測性。通常,在半導(dǎo)體芯片的設(shè)計過程中,不光需要設(shè)計實現(xiàn)預(yù)定功能的功能電路,也需要設(shè)計用于測試芯片制造缺陷的掃描測試電路(掃描鏈)。
傳統(tǒng)掃描寄存器如
圖1所示,其端口包括數(shù)據(jù)端輸入(D端),用于接收功能輸入信號;掃描輸入端(Si端),用于接收掃描輸入信號;掃描使能端(SE端),用于接收使能信號;時鐘輸入端(CK端),用于接收寄存器時鐘信號;輸出端⑴端),用于輸出寄存器的值。
如圖1所示,傳統(tǒng)掃描寄存器的結(jié)構(gòu)包含一個二選一多路復(fù)用器和一個D觸發(fā)器, 二選一多路復(fù)用器包含2個數(shù)據(jù)輸入端,一個使能輸入端和1個輸出端,它的第一數(shù)據(jù)輸入端連接D端,第二數(shù)據(jù)輸入口連接SI端,使能出入口連接SE端,它的輸出端連接D觸發(fā)器的數(shù)據(jù)輸入端;D觸發(fā)器包含一個數(shù)據(jù)輸入端,一個時鐘輸入端和一個輸出端,它的數(shù)據(jù)輸入端連接二選一多路復(fù)用器的輸出,它的時鐘輸入端連接CK端,它的輸出端連接Q端。
目前,掃描鏈通常是將傳統(tǒng)掃描寄存器級聯(lián)在一起,使得一個掃描寄存器的掃描輸出端連接到下一個掃描寄存器的掃描輸入端,下一個掃描寄存器的輸出端又和隨后的掃描寄存器輸入端相連。
含有掃描鏈的芯片有兩種工作模式——掃描模式和功能模式,并通過掃描使能信號控制掃描鏈在這兩種工作模式下的切換。當(dāng)掃描使能信號有效時,含有掃描鏈的芯片處于掃描模式,此時,掃描鏈寄存器通過掃描路徑連接,掃描路徑將各個掃描寄存器連接成一條掃描鏈,掃描鏈的功能類似于移位寄存器,在時鐘沿的控制下,寄存器內(nèi)的數(shù)據(jù)從上一個掃描寄存器的掃描輸出端傳遞到下一個掃描寄存器的掃描輸入端;當(dāng)掃描使能信號無效時,芯片處在功能模式下,此時,掃描鏈寄存器通過功能路徑連接,功能路徑執(zhí)行一系列的算術(shù)邏輯運算,以使芯片完成預(yù)先設(shè)計的正常功能,如數(shù)據(jù)加密,信號處理。
芯片的掃描測試過程是由一系列的連續(xù)交替的掃描移位操作和掃描捕獲操作構(gòu)成,掃描移位操作將掃描輸入矩陣移位輸入進(jìn)掃描鏈,同時將寄存器的響應(yīng)向量移位輸出, 構(gòu)成掃描輸出向量,掃描移位操作完成時,掃描鏈上各個掃描寄存器的狀態(tài)構(gòu)成測試向量; 掃描捕獲操作過程中,掃描寄存器捕獲從功能路徑上的響應(yīng),掃描鏈上各個掃描寄存器的狀態(tài)構(gòu)成響應(yīng)向量。掃描測試圖形包括以上掃描輸入向量、測試向量、響應(yīng)向量和掃描輸出向量。
掃描鏈增強了芯片使用者對芯片內(nèi)部寄存器的可控性和可觀察性,在提高可測性的同時也可能增加芯片的安全風(fēng)險。在有些芯片應(yīng)用中,如密碼芯片和通信芯片,需要將一些密鑰信息或者其它安全信息存儲在芯片內(nèi)部的某些寄存器中。這些信息可以被用作硬件識別和安全認(rèn)證,用于數(shù)據(jù)加密,或者其它目的。若芯片攻擊者使用掃描鏈訪問這些存儲安全信息的寄存器,那有可能造成安全信息的泄露,給芯片的使用者造成巨大損失。
目前主要有以下三類方法來解決上述掃描測試的安全問題。
第一類是通過將存儲有安全信息的寄存器從掃描鏈中移除,使得未授權(quán)的用戶不能通過掃描鏈來獲取寄存器內(nèi)的安全信息,但是這類方案降低了芯片的可測性,增加了芯片的測試成本和難度。
第二類是限制芯片在功能模式和測試模式之間任意切換,進(jìn)而使得攻擊者不能利用掃描鏈探測芯片內(nèi)部寄存器狀態(tài),但這類方案對面積的增加較大,并且由于改變了正常工作模式下的路徑,不能提供全速測試(At-speed Test),更為關(guān)鍵的是,該方法的安全性依賴于一兩條關(guān)鍵控制信號,攻擊者只需破壞這些關(guān)鍵信號線,即可通過掃描鏈任意訪問存儲有安全信息的寄存器。
第三類是在掃描路徑中增加組合單元,對掃描鏈的測試圖形進(jìn)行硬件加密,使未授權(quán)的使用者不能利用掃描鏈的可控性對掃描寄存器置位,也不能利用掃描鏈的可觀測性探測掃描寄存器的狀態(tài)。這類方法實現(xiàn)成本低,具有較好的安全性。但是這類方法需要解決兩個問題抗擊復(fù)位攻擊和可行的安全測試方法。發(fā)明內(nèi)容
本發(fā)明的目的在于提供一種克服現(xiàn)有掃描鏈安全缺陷并能抗擊復(fù)位攻擊的安全掃描寄存器、安全掃描鏈及其測試方法。
為實現(xiàn)上述目的,本發(fā)明所采取的技術(shù)方案是所述安全掃描寄存器由D觸發(fā)器、 異或門和二選一多路復(fù)用器等組成,所述D觸發(fā)器的數(shù)據(jù)輸入端與二選一多路復(fù)用器的輸出端連接,所述D觸發(fā)器的輸出端與異或門的第一輸入端相連,所述異或門的第二輸入端與二選一多路復(fù)用器的第二數(shù)據(jù)輸入端相連。
本發(fā)明含有上述安全掃描寄存器的安全掃描鏈由所述安全掃描寄存器和第一掃描寄存器級聯(lián)構(gòu)成,其中,最靠近安全掃描鏈的輸出口的是第一掃描寄存器;每個所述第一掃描寄存器由一個D觸發(fā)器和一個二選一多路復(fù)用器組成,且該D觸發(fā)器的數(shù)據(jù)輸入端與該二選一多路復(fù)用器的輸出端連接;
所述安全掃描寄存器和第一掃描寄存器中的二選一多路復(fù)用器的第一數(shù)據(jù)輸入端連接到芯片的數(shù)據(jù)輸入端或者功能路徑的輸出信號線以接收功能信號;
所述安全掃描寄存器和第一掃描寄存器中的二選一多路復(fù)用器的第二數(shù)據(jù)輸入端連接到芯片的掃描輸入端或者掃描路徑的輸出信號線以接收掃描信號;
所述安全掃描寄存器和第一掃描寄存器中的二選一多路復(fù)用器的控制輸入端連接芯片的掃描使能端以接收掃描使能信號;
所述安全掃描寄存器和第一掃描寄存器的D觸發(fā)器的時鐘輸入端連接到芯片的時鐘輸入端以接收時鐘信號;
所述安全掃描寄存器中的D觸發(fā)器的輸出端連接到芯片的數(shù)據(jù)輸出端或者功能路徑的輸入信號線以傳遞功能信號;
所述安全掃描寄存器中的異或門的輸出端連接到掃描路徑的輸入信號線以傳遞掃描信號;
所述第一掃描寄存器中的D觸發(fā)器的輸出端連接到芯片的數(shù)據(jù)輸出端或者功能路徑的輸入信號線以傳遞功能信號,并且,所述第一掃描寄存器中的D觸發(fā)器的輸出端還連接到芯片的掃描輸出端或者掃描路徑的輸入信號線以傳遞掃描信號。
利用本發(fā)明的安全掃描鏈進(jìn)行安全掃描的方法為在進(jìn)行掃描過程中,對于所述安全掃描鏈的掃描測試圖形進(jìn)行硬件加密,所述硬件加密的方法包括
對所述掃描測試圖形的測試向量進(jìn)行掃描輸入變換,得到掃描輸入向量;
對所述掃描測試圖形的響應(yīng)向量和掃描輸入向量進(jìn)行掃描輸出變換,得到掃描輸出向量。
本發(fā)明掃描鏈通過對掃描測試圖形進(jìn)行硬件加密,使得攻擊者不能對密碼芯片進(jìn)行基于掃描鏈的旁路攻擊,進(jìn)一步有效地保護(hù)了芯片中的密鑰信息安全。
進(jìn)一步地,本發(fā)明利用公式(1)-(3)對所述掃描測試圖形的測試向量進(jìn)行掃描輸入變換,得到掃描測試圖形的掃描輸入向量
權(quán)利要求
1.一種安全掃描寄存器,其特征在于由D觸發(fā)器、異或門和二選一多路復(fù)用器等組成,所述D觸發(fā)器的數(shù)據(jù)輸入端與二選一多路復(fù)用器的輸出端連接,所述D觸發(fā)器的輸出端與異或門的第一輸入端相連,所述異或門的第二輸入端與二選一多路復(fù)用器的第二數(shù)據(jù)輸入端相連。
2.一種含有權(quán)利要求1的安全掃描寄存器的安全掃描鏈,其特征在于它由所述安全掃描寄存器和第一掃描寄存器級聯(lián)構(gòu)成,其中,最靠近安全掃描鏈的輸出口的是第一掃描寄存器;每個所述第一掃描寄存器由一個D觸發(fā)器和一個二選一多路復(fù)用器組成,且該D觸發(fā)器的數(shù)據(jù)輸入端與該二選一多路復(fù)用器的輸出端連接;所述安全掃描寄存器和第一掃描寄存器中的二選一多路復(fù)用器的第一數(shù)據(jù)輸入端連接到芯片的數(shù)據(jù)輸入端或者功能路徑的輸出信號線以接收功能信號;所述安全掃描寄存器和第一掃描寄存器中的二選一多路復(fù)用器的第二數(shù)據(jù)輸入端連接到芯片的掃描輸入端或者掃描路徑的輸出信號線以接收掃描信號;所述安全掃描寄存器和第一掃描寄存器中的二選一多路復(fù)用器的控制輸入端連接芯片的掃描使能端以接收掃描使能信號;所述安全掃描寄存器和第一掃描寄存器的D觸發(fā)器的時鐘輸入端連接到芯片的時鐘輸入端以接收時鐘信號;所述安全掃描寄存器中的D觸發(fā)器的輸出端連接到芯片的數(shù)據(jù)輸出端或者功能路徑的輸入信號線以傳遞功能信號;所述安全掃描寄存器中的異或門的輸出端連接到掃描路徑的輸入信號線以傳遞掃描信號;所述第一掃描寄存器中的D觸發(fā)器的輸出端連接到芯片的數(shù)據(jù)輸出端或者功能路徑的輸入信號線以傳遞功能信號,并且,所述第一掃描寄存器中的D觸發(fā)器的輸出端還連接到芯片的掃描輸出端或者掃描路徑的輸入信號線以傳遞掃描信號。
3.一種利用權(quán)利要求2的安全掃描鏈進(jìn)行安全掃描的方法,其特征在于,在進(jìn)行掃描過程中,對于所述安全掃描鏈的掃描測試圖形進(jìn)行硬件加密,所述硬件加密的方法包括對所述掃描測試圖形的測試向量進(jìn)行掃描輸入變換,得到掃描輸入向量;對所述掃描測試圖形的響應(yīng)向量和掃描輸入向量進(jìn)行掃描輸出變換,得到掃描輸出向量。
4.根據(jù)權(quán)利要求3所述的進(jìn)行安全掃描的方法,其特征在于利用公式(1)-(3)對所述掃描測試圖形的測試向量進(jìn)行掃描輸入變換,得到掃描測試圖形的掃描輸入向量
5.根據(jù)權(quán)利要求3所述的進(jìn)行安全掃描的方法,其特征在于利用公式(4)-(7)對所述掃描測試圖形的掃描輸入向量和響應(yīng)向量進(jìn)行掃描輸出變換,得到掃描測試圖形的掃描輸出向量
全文摘要
本發(fā)明公開了一種安全掃描寄存器、安全掃描鏈及其掃描方法,屬于集成電路可測性設(shè)計領(lǐng)域。安全掃描寄存器由D觸發(fā)器、異或門和二選一多路復(fù)用器組成,D觸發(fā)器的數(shù)據(jù)輸入端與二選一多路復(fù)用器的輸出端連接,D觸發(fā)器的輸出端與異或門的第一輸入端相連,異或門的第二輸入端與二選一多路復(fù)用器的第二數(shù)據(jù)輸入端相連。其安全掃描鏈包括傳統(tǒng)掃描寄存器和安全掃描寄存器,將所有寄存器級聯(lián),其個數(shù)和位置按照一定規(guī)則確定。本發(fā)明安全掃描鏈能抗擊復(fù)位攻擊,能以較小的面積代價獲得足夠的安全性,具有很好的實用性。
文檔編號G01R31/3185GK102495360SQ201110425609
公開日2012年6月13日 申請日期2011年12月16日 優(yōu)先權(quán)日2011年12月16日
發(fā)明者馮忱暉, 張培勇, 歐陽冬生, 項群良 申請人:浙江大學(xué)