高國(guó)平,趙維林
(中國(guó)電子科技集團(tuán)公司第五十八研究所,江蘇無錫 214072)
安全性對(duì)于幾乎所有電子產(chǎn)品來說都是非常重要的,物理不可克隆函數(shù)(PUF)的提出為保護(hù)芯片數(shù)據(jù)安全提供了一種切實(shí)有效的方法。以靜態(tài)隨機(jī)存儲(chǔ)器(SRAM)PUF 為代表的基于存儲(chǔ)器的PUF 設(shè)計(jì)具有很大的優(yōu)勢(shì),在核心集成電路中,存儲(chǔ)器是必須具備的單元,其實(shí)現(xiàn)簡(jiǎn)單,現(xiàn)已成為PUF 主流設(shè)計(jì)方向。
在實(shí)際應(yīng)用過程中,嵌入SRAM 集成電路產(chǎn)生的隨機(jī)數(shù)特性大不相同。通常的方法是尋找具有產(chǎn)生較好隨機(jī)數(shù)特性的集成電路[1-3],然而隨著工藝節(jié)點(diǎn)的進(jìn)步,這種方法顯露出了較大的局限性[4]。為了便于獲得具有SRAM PUF 的集成電路,本文提出了一種設(shè)計(jì)優(yōu)化方法。
SRAM 單元及工藝噪聲影響如圖1 所示,每一位存儲(chǔ)單元通常包含6 個(gè)MOS 管,由2 個(gè)交叉連接的反相器和2 個(gè)讀寫開關(guān)管構(gòu)成。讀寫SRAM 存儲(chǔ)單元時(shí),控制使能字線,使開關(guān)管導(dǎo)通,此時(shí),可以通過位線對(duì)SRAM 單元進(jìn)行讀寫。當(dāng)SRAM 斷電時(shí),由于SRAM 沒有電荷存儲(chǔ),所以SRAM 存儲(chǔ)單元瞬間無電荷,AB 狀態(tài)為“00”。由于反向器為非穩(wěn)定狀態(tài),上電時(shí),其中一個(gè)反相器必須翻轉(zhuǎn)一次,AB 狀態(tài)變?yōu)椤?1”或“10”。理想狀態(tài)下,AB 的“01”或“10”狀態(tài)完全是隨機(jī)的,即無偏差單元。然而事實(shí)上,由于制造過程中的不可控因素,單個(gè)SRAM 存儲(chǔ)單元傾向“0”或者“1”,形成“0”偏(0-skewed)或“1”偏(1-skewed)存儲(chǔ)單元。
圖1 SRAM 單元及工藝噪聲影響
靜態(tài)噪聲容限(SNM)σNoise是描述SRAM 單元噪聲容限的指標(biāo)。單元的SNM 是給定電源電壓的最大噪聲電壓[5]。對(duì)于外界噪聲的影響,存儲(chǔ)單元對(duì)稱結(jié)構(gòu)匹配越好,外界噪聲的影響作用就會(huì)越大,甚至?xí)斐纱鎯?chǔ)器偏向相反方向。存儲(chǔ)單元上電傾向以及噪聲影響如圖2 所示,其中VA、VB為A、B 點(diǎn)電壓。
圖2 存儲(chǔ)單元上電傾向以及噪聲影響
除了外界噪聲和工藝變化,電源電壓也會(huì)影響SRAM 單元的初始狀態(tài)。電源電壓越低,SRAM 單元的噪聲容限越小,對(duì)噪聲越敏感;電源電壓越高,SRAM 單元噪聲容限增加,對(duì)噪聲就會(huì)免疫。最低的電源電壓使得SRAM 單元不改變?cè)瓉淼臓顟B(tài),典型值為100~300 mV[6-10]。上電過程中,假設(shè)電源電壓從0 V開始,所有SRAM 單元受到外界噪聲的影響。當(dāng)電源電壓大于300 mV 時(shí),所有SRAM 單元狀態(tài)不再因噪聲而改變。
在反相器電壓傳輸曲線(VTC)上,噪聲免疫單元有兩個(gè)大的“眼”,電源電壓下降,靜態(tài)噪聲容限也大大減小。在沒有噪聲影響的無偏單元里,低電源電壓導(dǎo)致同樣小的靜態(tài)噪聲容限。然而,在高偏差的單元,低電源電壓減小了“0”偏的靜態(tài)噪聲容限,僅存在單個(gè)噪聲容限。
通過控制電源上電的速度,也能夠影響SRAM 單元的隨機(jī)狀態(tài)。如果上電維持在100 mV,非常微弱的噪聲會(huì)引起有偏差單元進(jìn)入“0”狀態(tài)。在100 mV 維持的時(shí)間越長(zhǎng),越會(huì)增加SRAM 單元狀態(tài)隨機(jī)可能性。電源電壓上電越慢,越有利于SRAM 單元的隨機(jī)性。
然而在某種應(yīng)用場(chǎng)景下,掉電后的電源電壓高于100~300 mV,上電后的SRAM 不能產(chǎn)生理想的具有物理特征的隨機(jī)數(shù)據(jù)。因此為了能利用片上SRAM 生成穩(wěn)定的本征數(shù)據(jù),需要對(duì)芯片進(jìn)行優(yōu)化設(shè)計(jì)。
為了實(shí)現(xiàn)上電后產(chǎn)生具體物理特征的SRAM 本征數(shù)據(jù),需要進(jìn)行兩方面的設(shè)計(jì):1)下電電壓控制,讓SRAM 電源充分掉電到100 mV 以下;2)上電斜率控制,SRAM 電源上電速度的有效控制。
優(yōu)化SRAM 的具體實(shí)現(xiàn)如圖3 所示。通過上下電控制電路實(shí)現(xiàn)下電后SRAM 的電源下降到100 mV以下,通過上電部分電路控制SRAM 單元的上電曲線斜率。
圖3 SRAM 優(yōu)化設(shè)計(jì)實(shí)現(xiàn)示意圖
上下電控制電路的具體實(shí)現(xiàn)如圖4(a)所示。由于3.3 V 和5 V 工藝的器件最低工作電壓都在1.5 V 以上,為了留有一定設(shè)計(jì)余量,設(shè)計(jì)上下電電源電壓典型值為2.1 V,此時(shí)電路能穩(wěn)定工作。對(duì)最后一級(jí)的驅(qū)動(dòng)進(jìn)行斜率控制。通過對(duì)該電路的控制,電源電壓低于2.1 V 時(shí)SRAM 單元能快速切斷電源,確保SRAM單元的電源能充分掉電,從而確保其電源電壓能低于100 mV。若不能切斷電源,電源上的殘余電壓完全可以處于300 mV 以上,導(dǎo)致下一次上電保持上一次的數(shù)據(jù)。另外通過對(duì)上電斜率的控制,在上電過程中避免噪聲對(duì)SRAM 單元的數(shù)據(jù)產(chǎn)生決定性影響,使SRAM 單元更能體現(xiàn)其物理唯一性。
新SRAM 的單元結(jié)構(gòu)如圖4(b)所示。在原來的SRAM 電源端增加PMOS 管M7,通過上下的控制電路控制其導(dǎo)通或關(guān)閉。當(dāng)其關(guān)閉后,SRAM 單元靠自身的漏電充分掉電;當(dāng)其導(dǎo)通時(shí),可以通過電源對(duì)SRAM 進(jìn)行充電,斜率可由M7的導(dǎo)通電阻進(jìn)行一定的調(diào)節(jié)。因外部電源在初始上電時(shí)可能較緩或由于系統(tǒng)等因素不受控,因而在上下電電路的控制下,能夠在電源電壓為2.1 V 左右時(shí)穩(wěn)定有序上電,提升SRAM PUF 的穩(wěn)定性。
圖4 電路設(shè)計(jì)
經(jīng)0.35 μm 3.3 V/5 V CMOS 工藝流片驗(yàn)證,常溫測(cè)試電源上下電電壓在2.1 V 左右,全溫范圍(-40~85 ℃)測(cè)試結(jié)果為1.7~2.3 V。外部電源只要下電到1.7 V 以下,全“0”或全“1”的SRAM 單元陣列的電源就會(huì)被關(guān)斷,再次上電后SRAM 單元整列的數(shù)據(jù)已經(jīng)和掉電前的數(shù)據(jù)很不相同,可見電源控制電路可以讓SRAM 充分掉電,而不受外部電源電壓的影響。
為了驗(yàn)證SRAM 產(chǎn)生隨機(jī)數(shù)的情況,使用優(yōu)化后的單片機(jī)電路1 只,在室溫條件下,讀取芯片SRAM上電數(shù)據(jù)64 bit,分別統(tǒng)計(jì)“0”和“1”的個(gè)數(shù),統(tǒng)計(jì)結(jié)果如圖5(a)所示。由圖5(a)可見,“0”和“1”的數(shù)據(jù)比較均衡。SRAM 部分單元陣列的“0”和“1”的物理分布如圖5(b)所示,也可見其分布較均衡。
圖5 SRAM 產(chǎn)生隨機(jī)數(shù)的情況
為了驗(yàn)證SRAM 上電特征率,在室溫條件下分別對(duì)傳統(tǒng)SRAM 和新SRAM 同一位置讀200 組大小為64 bit 的SRAM 上電初始值。以10 組為步進(jìn)直至200組,統(tǒng)計(jì)同一位置上固定不變位數(shù)的比例(上電特征率),統(tǒng)計(jì)結(jié)果如圖6 所示。從圖6 中可見,隨著測(cè)試組數(shù)的增加,單片機(jī)中的SRAM 上電特征率逐漸減小,最后特征率趨于穩(wěn)定,穩(wěn)定值分別約為80%(新SRAM)和76%(傳統(tǒng)SRAM)。新SRAM 單元相比傳統(tǒng)SRAM 單元的上電特征率略有提升。
圖6 傳統(tǒng)SRAM 單元和新SRAM 單元上電特征率
從測(cè)試結(jié)果可知,單片機(jī)電源在未充分掉電的情況下,可以實(shí)現(xiàn)SRAM 的充分掉電,使得SRAM 單元的數(shù)據(jù)在上電過程中易實(shí)現(xiàn)其上電特征數(shù)值。SRAM單元不僅具有較均勻的數(shù)值分布,同時(shí)具有較好的唯一性,可以應(yīng)用于密碼安全技術(shù)中。
本文提出了一種上電控制電路,對(duì)單片機(jī)中SRAM 的不可克隆物理特性進(jìn)行上電優(yōu)化;描述了SRAM PUF 在安全密鑰方面的優(yōu)勢(shì),同時(shí)分析了SRAM PUF 的物理特性。通過增加上電控制電路優(yōu)化SRAM 單元上下電電壓和時(shí)間,確保展現(xiàn)真實(shí)的SRAM PUF 的物理特性。流片驗(yàn)證后測(cè)試結(jié)果表明,該方法可以實(shí)現(xiàn)SRAM 單元數(shù)據(jù)在上電后的物理特征數(shù)值,相比傳統(tǒng)的SRAM 電路結(jié)構(gòu)具有更好的唯一性,已成功應(yīng)用到單片機(jī)的設(shè)計(jì)中。