本發(fā)明屬于puf技術領域,更具體地,涉及一種基于電容偏差的puf電路。
背景技術:
physicalunclonablefunctions(puf)技術是當今半導體安全技術的最新突破。puf系統(tǒng)是一組微型的電路,通過提取ic制造過程中不可避免產(chǎn)生的個體差異,生成無限多個、特有的密鑰,這些密鑰不可預測和安排,永久存在,即使是芯片的制造商也無法仿制。和傳統(tǒng)安全解決方案不同的是,puf技術可以為每個動態(tài)生成無限多的、特有的、一次性的密鑰,無需為加密而儲存密鑰,因而在安全防偽領域具有巨大的應用前景。
然而,也正是由于用來生成密鑰的電路器件采用了相同的圖形和尺寸設計以及相同的生產(chǎn)工藝,其相關參數(shù)盡管不可避免地存在一定偏差,但這種偏差往往非常微弱,這導致puf電路單元在相同的激勵下產(chǎn)生不同密鑰值的情況時有發(fā)生,例如,對于同一激勵,在某一時刻產(chǎn)生密鑰0,在另一時刻又產(chǎn)生密鑰1,因而嚴重影響了puf技術的可靠性,極大地限制了puf技術的進一步推廣應用。
技術實現(xiàn)要素:
針對現(xiàn)有技術的以上缺陷或改進需求,本發(fā)明提供了一種基于電容偏差的puf電路,能有效避免由于電路器件間的微弱差異導致產(chǎn)生的密鑰值不穩(wěn)定的情況,因而能顯著提高puf技術的可靠性。
為實現(xiàn)上述目的,本發(fā)明提供了一種puf電路,包括電容陣列,譯碼選擇電路、充電電路和比較器;所述電容陣列包括n+1個相同的電容單元,其中n個電容單元的一端接地,另一端分別連接至所述譯碼選擇電路的n個輸入端,所述譯碼選擇電路的輸出端連接至所述充電電路的第一電流輸出端,用于產(chǎn)生隨機電壓信號;第n+1個電容單元作為參考電容單元,其一端接地,一端連接至充電電路的第二電流輸出端,用于產(chǎn)生參考電壓信號;所述隨機電壓信號和所述參考電壓信號輸入至所述比較器,使所述比較器輸出響應信號。
優(yōu)選地,所述電容單元由螺旋結構電容和開關并聯(lián)而成,所述螺旋結構電容由成對金屬線以螺旋方式纏繞得到,所述開關由復位信號控制。
優(yōu)選地,所述譯碼選擇電路包括譯碼電路和n選1電路,所述譯碼電路用于在激勵信號的作用下生成選擇信號,所述n選1電路用于在所述選擇信號的作用下,從所述n個電容單元中選擇1個電容單元連接至所述充電電路。
優(yōu)選地,所述充電電路和所述比較器由使能信號控制,工作時,所述充電電路的第一電流輸出端和第二電流輸出端輸出大小相等的電流,并同時對被所述譯碼選擇電路選中的電容單元和參考電容單元進行充電,所述比較器比較正負輸入端的電壓大小,輸出1位puf密鑰。
總體而言,通過本發(fā)明所構思的以上技術方案與現(xiàn)有技術相比,具有以下有益效果:將成對金屬線以螺旋方式纏繞得到螺旋結構電容,基于兩個完全相同的螺旋結構電容生成密鑰;由于無法精確控制層內電容的間距,一方面進一步提升了密鑰的隨機性和不可復制性,另一方面有利于增大用于生成密鑰的兩個電容間的差異,從而有效避免了由于電路器件間的微弱差異導致產(chǎn)生的密鑰值不穩(wěn)定的情況,因而能顯著提高puf技術的可靠性。
附圖說明
圖1是本發(fā)明實施例的基于電容偏差的puf電路的結構示意圖;
圖2是本發(fā)明實施例的電容單元的結構示意圖;
圖3是本發(fā)明實施例的譯碼選擇電路的結構示意圖;
圖4是本發(fā)明實施例的充電電路的結構示意圖。
具體實施方式
為了使本發(fā)明的目的、技術方案及優(yōu)點更加清楚明白,以下結合附圖及實施例,對本發(fā)明進行進一步詳細說明。應當理解,此處所描述的具體實施例僅僅用以解釋本發(fā)明,并不用于限定本發(fā)明。此外,下面所描述的本發(fā)明各個實施方式中所涉及到的技術特征只要彼此之間未構成沖突就可以相互組合。
如圖1所示,本發(fā)明實施例的基于電容偏差的puf電路包括電容陣列100、譯碼選擇電路101、充電電路102和比較器103。復位信號連接至電容陣列100,激勵信號連接至譯碼選擇電路101,使能信號連接至充電電路102和比較器103,比較器的輸出端輸出響應信號。
電容陣列100包括n+1個相同的電容單元104,分別為c1,c2,…,cn+1。其中,n個電容單元c1,c2,…,cn的一端接地,另一端分別連接至譯碼選擇電路101的n個輸入端。譯碼選擇電路101的輸出端連接至充電電路102的第一電流輸出端,產(chǎn)生隨機電壓信號。電容陣列100中的第n+1個電容單元cn+1的一端接地,另一端連接至充電電路102的第二電流輸出端,產(chǎn)生參考電壓信號。充電電路102的第一電流輸出端和第二電流輸出端分別連接至比較器103的正負輸入端。
如圖2所示,本發(fā)明實施例中電容單元104由螺旋結構電容200和開關201并聯(lián)而成,開關201的控制信號連接至復位信號。復位信號為低電平時,開關201為斷開狀態(tài),螺旋結構電容200的電壓保持不變。復位信號為高電平時,開關201為閉合狀態(tài),將螺旋結構電容200的兩端連接至地,對螺旋結構電容200進行放電,將螺旋結構電容200的電壓復位為0。螺旋結構電容200的理想電容值為c,由于制造工藝的偏差,每個電容單元內部的螺旋結構電容的電容值存在一定差異。
如圖3所示,本發(fā)明實施例的譯碼選擇電路101包括譯碼電路300和n選1電路301。譯碼電路300輸入為激勵信號,輸出選擇信號連接至n選1電路301。n選1電路301包括n個輸入端和1個輸出端。激勵信號為m位信號,滿足2m=n,共有n個不同激勵信號,對應n個不同的選擇信號。例如,n=128,m=7,共有128個不同的激勵信號,對應128個選擇信號。譯碼電路300對m位的激勵信號進行譯碼,產(chǎn)生對應的選擇信號,控制n選1電路301選擇對應的1個輸入端連接至輸出端。
如圖4所示,本發(fā)明實施例的充電電路102包括偏置電路400、第一開關401、第二開關402和四個pmos管m1、m2、m3、m4。偏置電路400產(chǎn)生兩個偏置電壓,分別偏置m1、m2和m3、m4。pmos管m1、m2、m3、m4構成兩路相同的共源共柵電流鏡,其中m1、m2的尺寸相同,m3、m4的尺寸相同,采用嚴格匹配設計。第一開關401的一端連接至m3,另一端連接至第一電流輸出端。第二開關402的一端連接至m4,另一端連接至第二電流輸出端。開關401和402由使能信號控制,使能信號為低電平時,開關401和402斷開。使能信號為高電平時,開關401和402閉合,兩路共源共柵電流鏡分別輸出大小相同的電流到第一電流輸出端和第二電流輸出端。
比較器103為動態(tài)鎖存比較器,由使能信號控制。使能信號為高電平時,比較器103處于復位狀態(tài)。使能信號變?yōu)榈碗娖綍r,比較器103比較正負輸入端兩個電壓的大小,輸出比較結果并進入鎖存狀態(tài)。
下面對輸入激勵信號產(chǎn)生puf密鑰的過程進行說明:
(1)初始狀態(tài)下,puf電路處于關閉狀態(tài)。復位信號和使能信號都為低電平,充電電路102保持關閉,比較器103保持在鎖存狀態(tài)。
(2)在t1時刻,puf電路開始工作,復位信號由低電平變?yōu)楦唠娖?,使能信號保持為低電平,同時外部輸入激勵信號。在復位信號變?yōu)楦唠娖胶?,電容陣?00中每個電容單元中的開關201處于閉合狀態(tài),螺旋結構電容200的兩端接地,進行放電復位,兩個極板之間的電壓最終復位為0。充電電路102保持關閉,比較器103保持在鎖存狀態(tài)。
(3)譯碼選擇電路101接收激勵信號,其內部的譯碼電路300對輸入的激勵信號進行譯碼,產(chǎn)生對應的選擇信號。上述選擇信號控制n選1電路301選擇對應的1個輸入端連接至輸出端,即選擇電容陣列100中對應的電容單元ci,i=1,2,…,n,連接至譯碼選擇電路101的輸出端。
(4)在t2時刻,復位信號由高電平變?yōu)榈碗娖剑鼓苄盘柋3譃榈碗娖?。電容陣?00中每個電容單元中的開關201進入關斷狀態(tài),電容復位結束。充電電路102保持關閉,比較器保持在鎖存狀態(tài)。
(5)在t3時刻,使能信號由低電平變?yōu)楦唠娖剑瑥臀恍盘柋3譃榈碗娖?。充電電?02打開,比較器103進入復位狀態(tài)。充電電路102中的第一開關401和第二開關402閉合,兩路共源共柵電流鏡分別輸出兩路大小相等的電流i到第一電流輸出端和第二電流輸出端。第一電流輸出端連接至譯碼選擇電路101的輸出端,即連接至電容陣列100中被選擇的電容單元ci,輸出電流對該電容單元中的螺旋結構電容進行充電,產(chǎn)生隨機電壓信號。第二電流輸出端連接至電容陣列100中的參考電容單元cn+1,輸出電流對該電容單元中的螺旋結構電容進行充電,產(chǎn)生參考電壓信號。
(6)在t4時刻,使能信號由高電平變?yōu)榈碗娖?,復位信號保持為低電平。充電電?02關閉,比較器輸出比較結果并進入鎖存狀態(tài)。在t3到t4的這段時間內,充電電流i對電容單元ci充電產(chǎn)生的隨機電壓信號為vran=i*(t4-t3)/ci,對電容單元cn+1充電產(chǎn)生的參考電壓信號為vref=i*(t4-t3)/cn+1。由于兩個電容單元中電容器件存在工藝偏差,因此產(chǎn)生的隨機電壓信號和參考電壓信號也存在一定的差異。在t4時刻,比較器103比較隨機電壓信號和參考電壓信號的相對大小,輸出響應信號并鎖存。在一個實施例中,若隨機電壓信號大于參考電壓信號,比較器103輸出1,反之,則輸出0,即產(chǎn)生一位puf數(shù)據(jù)。
若需要產(chǎn)生多位puf密鑰,則重復步驟(2)至步驟(6),并在步驟(2)中輸入不同的激勵信號,選擇不同的電容單元進行比較,以產(chǎn)生多位puf數(shù)據(jù)。
本領域的技術人員容易理解,以上所述僅為本發(fā)明的較佳實施例而已,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內所作的任何修改、等同替換和改進等,均應包含在本發(fā)明的保護范圍之內。