采用金屬電阻變化分析穩(wěn)定性的系統(tǒng)和方法
【專(zhuān)利摘要】本發(fā)明描述了用于分析由物理不可克隆函數(shù)(PUF)產(chǎn)生的位串(bitstrings)的統(tǒng)計(jì)質(zhì)量的技術(shù)。所述PUF影響集成電路的電力網(wǎng)電線(xiàn)電阻變化。對(duì)位串的溫度和電壓的穩(wěn)定性進(jìn)行了分析。本發(fā)明還描述了將電壓降轉(zhuǎn)換成數(shù)字碼,其中所述轉(zhuǎn)換對(duì)簡(jiǎn)化及差分側(cè)信道攻擊具有強(qiáng)適應(yīng)性。
【專(zhuān)利說(shuō)明】
采用金屬電阻變化分析穩(wěn)定性的系統(tǒng)和方法
[00011 本申請(qǐng)要求優(yōu)先權(quán)為美國(guó)臨時(shí)專(zhuān)利申請(qǐng)No.61/870,974,提交于2013年8月28日, 其通過(guò)引用并入本文。
技術(shù)領(lǐng)域
[0002] 本發(fā)明涉及一種用于產(chǎn)生隨機(jī)位串的系統(tǒng)和方法,涉及物理不可克隆函數(shù) (PUFs)。 背景
[0003] 隨機(jī)位串可以形成用于硬件安全中加密、鑒別、驗(yàn)證和功能激活的基礎(chǔ)。在目前的 技術(shù)中,對(duì)于加密密鑰材料在現(xiàn)場(chǎng)可編程門(mén)陣列(FPGAs)和專(zhuān)用集成電路(ASICs)上的非易 失性存儲(chǔ)器中可被存儲(chǔ)為數(shù)字位串。然而,這種方式存儲(chǔ)的機(jī)密對(duì)確定的對(duì)手可能不是安 全的,其可以用試探性的攻擊來(lái)竊取機(jī)密。物理不可克隆函數(shù)(PUFs)可以用來(lái)作為在非易 失性存儲(chǔ)器中存儲(chǔ)數(shù)字位串的一種替代。PUFs可利用在集成電路中隨機(jī)產(chǎn)生變化作為用于 產(chǎn)生隨機(jī)位串的熵源,并且可以包括一個(gè)芯片上的基礎(chǔ)結(jié)構(gòu),用于測(cè)量及數(shù)字化相應(yīng)的變 化。
[0004] PUF的質(zhì)量可以基于群體中的一個(gè)或多個(gè)的唯一性、位串產(chǎn)生的隨機(jī)性及整個(gè)不 同環(huán)境條件下(即,溫度和電壓)的再現(xiàn)性或穩(wěn)定性來(lái)判斷。當(dāng)前的PUF的質(zhì)量不太理想。此 外,確定PUFs的唯一"性、隨機(jī)性及穩(wěn)定性的當(dāng)前技術(shù)不太理想。 概要
[0005] -般而言,本發(fā)明描述了用于生成物理不可克隆函數(shù)(PUF)的技術(shù)。特別是,本發(fā) 明描述了用于基于電阻變化生成PUF的技術(shù)。本發(fā)明描述了分析通過(guò)電路的PUF產(chǎn)生位串的 統(tǒng)計(jì)質(zhì)量。具體地,影響電路的多晶硅和金屬線(xiàn)的電阻的變化的PUF在不同溫度和電壓下被 分析以確定其穩(wěn)定性。本發(fā)明還描述了將電路的電壓降轉(zhuǎn)換成數(shù)字碼,其中所述轉(zhuǎn)換對(duì)簡(jiǎn) 化及差分側(cè)信道攻擊具有強(qiáng)適應(yīng)性。
[0006] 以下附圖和描述中將詳細(xì)說(shuō)明一個(gè)或多個(gè)實(shí)施例的細(xì)節(jié)。從描述和附圖,及從權(quán) 利要求書(shū)中,其他特征、目的和優(yōu)點(diǎn)將變得更加明顯。
【附圖說(shuō)明】
[0007] 圖1是說(shuō)明可實(shí)施本發(fā)明的一種或多種技術(shù)的集成電路結(jié)構(gòu)的一個(gè)實(shí)施例的框 圖。
[0008] 圖2是說(shuō)明可實(shí)施本發(fā)明的一種或多種技術(shù)的激勵(lì)/測(cè)量電路(SMC)的一個(gè)實(shí)施例 的示意圖。
[0009] 圖3A-3B是說(shuō)明用于實(shí)施本發(fā)明的一種或多種技術(shù)的集成電路的一個(gè)實(shí)施例的示 例性電力網(wǎng)電壓分布的曲線(xiàn)圖。
[0010]圖4A-4B是說(shuō)明使用本文中所描述的PUF的一個(gè)實(shí)施例的示例性位生成過(guò)程坐標(biāo) 圖。
[0011]圖5是說(shuō)明用于根據(jù)本發(fā)明的技術(shù)生成的示例性位串的一個(gè)示例性海明距離 (hamming distances)分布的曲線(xiàn)圖。
[0012] 圖6是說(shuō)明實(shí)施本發(fā)明的一種或多種技術(shù)的示例性集成電路的合格-不合格率的 坐標(biāo)圖。
[0013] 圖7A是說(shuō)明本發(fā)明的位串冗余技術(shù)的一個(gè)實(shí)施例的概念圖。
[0014] 圖7B是說(shuō)明本發(fā)明的位串冗余技術(shù)的一個(gè)實(shí)施例的概念圖。
[0015] 圖8是說(shuō)明用于改善位串穩(wěn)定性技術(shù)的一個(gè)實(shí)施例的曲線(xiàn)圖。
[0016] 圖9是說(shuō)明可實(shí)施本發(fā)明的一種或多種技術(shù)的電壓-數(shù)字轉(zhuǎn)換器(VDC)的一個(gè)實(shí)施 例的示意圖。
[0017] 圖10是說(shuō)明根據(jù)本發(fā)明的技術(shù)生成的示例性位串的一個(gè)示例性海明距離 (hamming distances)分布的曲線(xiàn)圖。
[0018] 圖11是說(shuō)明可實(shí)施本發(fā)明的一種或多種技術(shù)的電壓-數(shù)字轉(zhuǎn)換器(VDC)的一個(gè)實(shí) 施例的示意圖。
[0019] 圖12是說(shuō)明可實(shí)施本發(fā)明的一種或多種技術(shù)的電壓-數(shù)字轉(zhuǎn)換器(VDC)的一個(gè)實(shí) 施例的示意圖。
[0020] 圖13A-13B是說(shuō)明為了在本文中所描述的一個(gè)示例性的PUF中使用的測(cè)量差值的 一個(gè)實(shí)施例的曲線(xiàn)圖。
[0021] 圖14是說(shuō)明可實(shí)施本發(fā)明的一種或多種技術(shù)的電路的一個(gè)實(shí)施例的示意圖。 詳細(xì)說(shuō)明
[0022]物理不可克隆函數(shù)(PUFs)是對(duì)下一代集成電路(IC)的安全性的有價(jià)值的組件。 PUFs隨機(jī)生成可以在例如加密、認(rèn)證、功能激活、計(jì)量等的安全應(yīng)用中使用的位串,但是其 是可再現(xiàn)的。位串可以使用專(zhuān)用硬件原語(yǔ)和處理引擎來(lái)動(dòng)態(tài)生成,從而可避免在芯片上非 易失性存儲(chǔ)器中存儲(chǔ)的需要。該特點(diǎn)不僅可以提高其適應(yīng)旨在竊取機(jī)密密鑰資料侵入式攻 擊,也可以降低制造 IC的成本。即,在許多情況下,PUFs可以使用能夠使用標(biāo)準(zhǔn)的CMOS工藝 步驟來(lái)制造的組件來(lái)設(shè)計(jì),因此,可以消除整合非標(biāo)準(zhǔn)組件的成本,諸如非易失性存儲(chǔ)器。 PUFs作為下一代的安全機(jī)制的另一個(gè)重要特征是它們產(chǎn)生大量可重復(fù)的隨機(jī)位的潛力。此 特點(diǎn)為軟件開(kāi)發(fā)提供了新的機(jī)會(huì)以加強(qiáng)安全機(jī)制,例如,通過(guò)允許在加密通信信道頻繁更 換鑰匙,及通過(guò)允許在多個(gè)通信實(shí)體中利用大的、變化的共享密鑰集。
[0023] PUFs被設(shè)計(jì)為對(duì)在IC上的導(dǎo)線(xiàn)和晶體管的印刷和注入特性的變化是敏感的。對(duì)IC 組件制造的精確控制在日益先進(jìn)技術(shù)世代更加困難,從而在更寬的范圍中導(dǎo)致在芯片的復(fù) 制拷貝之間及復(fù)制拷貝內(nèi)的電氣變化。在IC內(nèi)發(fā)生的信號(hào)變化可以是HJF的熵源。示例性 PUF的實(shí)現(xiàn)可以影響晶體管閾值電壓、散斑圖、延遲鏈及環(huán)形振蕩器、薄膜晶體管、SRAMs、漏 電流、金屬電阻、光學(xué)及相變、感應(yīng)器、切換變化、亞閾值的設(shè)計(jì)、只讀存儲(chǔ)器(ROM )、總線(xiàn)保 持器、微處理器、使用光刻效果及老化的變化。應(yīng)當(dāng)指出的是PUFs可以結(jié)合不同類(lèi)型芯片上 的基礎(chǔ)結(jié)構(gòu)用于測(cè)量和數(shù)字化相同類(lèi)型的變化。雖然,在一些實(shí)例中,本文所描述的技術(shù)相 對(duì)于基于金屬電阻變化的PUFs進(jìn)行了描述,本文描述的技術(shù)可一般適用于任何類(lèi)型的PUF。 [0024] 一些統(tǒng)計(jì)標(biāo)準(zhǔn)已成為衡量PUF質(zhì)量的重要指標(biāo)。芯片間的海明距離(HD)可以用于 確定芯片的群體中位串的唯一性。同樣地,美國(guó)國(guó)家標(biāo)準(zhǔn)與技術(shù)研究院(NIST)的統(tǒng)計(jì)測(cè)試 套件可用于評(píng)估由每個(gè)芯片產(chǎn)生的位串的隨機(jī)性。芯片內(nèi)的海明距離(HD)可用于評(píng)估位串 的穩(wěn)定性。也就是說(shuō),不同的溫度和電壓條件下,每個(gè)芯片一次又一次重現(xiàn)相同位串的能 力。
[0025]每個(gè)芯片一次又一次重現(xiàn)相同位串的能力可以相對(duì)于的每個(gè)芯片來(lái)描述以避免 位反轉(zhuǎn),在此位反轉(zhuǎn)可以被定義為在當(dāng)溫度和電壓變化時(shí)位串生成中的'0到1'和'1到0'變 化。該發(fā)明描述了一個(gè)示例性PUF并評(píng)估其穩(wěn)定性。此外,本發(fā)明描述了減少了故障重現(xiàn)位 串概率的一個(gè)示例性位反轉(zhuǎn)避免方案。對(duì)此示例性位反轉(zhuǎn)避免方案進(jìn)行了評(píng)價(jià),并顯示出 故障重現(xiàn)位串的概率減少到小于1E-9。
[0026] 如上所述,PUFs可結(jié)合不同類(lèi)型的芯片上基礎(chǔ)結(jié)構(gòu),用于測(cè)量和數(shù)字化的相同類(lèi) 型的變化。不同類(lèi)型的芯片上基礎(chǔ)結(jié)構(gòu)的可以為特定PUF提供不同的穩(wěn)定性。本發(fā)明描述了 用于測(cè)量電壓的變化的示例性芯片上電壓-數(shù)字轉(zhuǎn)換器(VDC)。在一個(gè)實(shí)施例中,電壓的變 化可以反映金屬線(xiàn)的電阻變化。對(duì)示例性芯片上電壓-數(shù)字轉(zhuǎn)換器的穩(wěn)定性在不同的溫度 和電壓下進(jìn)行了評(píng)價(jià)。
[0027] 圖1是說(shuō)明可實(shí)施本發(fā)明的一種或多種技術(shù)的集成電路結(jié)構(gòu)的一個(gè)實(shí)施例的框 圖。在圖1中所示的實(shí)施例中,芯片100是基于一個(gè)90nm芯片結(jié)構(gòu)上。在其它實(shí)施例中,芯片 100可基于其他結(jié)構(gòu)上(例如,65nm結(jié)構(gòu)、45nm結(jié)構(gòu)等)。在一個(gè)實(shí)施例中,90nm的芯片結(jié)構(gòu)可 以使用IBM的90nm、9金屬層體硅工藝制造。如圖1所示,芯片100的平板框架包括56個(gè)1/0,并 圍繞一個(gè)大約1.5mmX 1.5mm左右的芯片面積。沿著芯片100的頂部標(biāo)記PS(P感測(cè))和NS(N感 測(cè))的兩個(gè)PAD涉及電壓感測(cè)連接,其中PS可以用于感測(cè)Vdd附近的電壓及NS可以用于感測(cè) GND附近的電壓。在圖1所示的實(shí)施例中,每個(gè)PS和NS端子線(xiàn)在芯片100上,并連接到85份激 勵(lì)/測(cè)量電路(SMC)的副本。在圖1所示的實(shí)施例中,SMCs被示為小矩形及橫穿整個(gè)芯片100 分布為兩個(gè)陣列,一個(gè)7 X 7的外陣列和一個(gè)6 X 6的內(nèi)陣列(外陣列中49個(gè)SMC和內(nèi)陣列種36 個(gè)SMC,總共85個(gè)SMC)。雖然在圖1中未示出,掃描鏈可以串聯(lián)連接到SMCs中的每個(gè)以允許控 制他們中的每個(gè)。
[0028] 圖2是說(shuō)明可實(shí)施本發(fā)明的一種或多種技術(shù)的激勵(lì)/測(cè)量電路(SMC)的一個(gè)實(shí)施例 的示意圖。在圖2所示的實(shí)施例中,SMC 200包括一對(duì)短路晶體管3a和3b。在一個(gè)實(shí)施例中, 每個(gè)短路晶體管當(dāng)啟用時(shí)能夠通過(guò)電力網(wǎng)吸收大約IOmA的電流。在這個(gè)實(shí)施例中,Vdd和GND 上的電壓降/上升,分別可小于IOmV。如圖2所示,SMC 200包括一組16個(gè)"偽"傳送門(mén)(TG),標(biāo) 記為Ia到lh,在圖2中充當(dāng)電壓感測(cè)設(shè)備。如圖2中所示,8個(gè)TG Ia-Ih連接到8個(gè)9金屬層(第 9金屬層在圖2中未示出),其限定了電力網(wǎng)的Vdd疊層,如圖2上左側(cè)所示(標(biāo)記為MgIjM 8),而 其它8個(gè)TG Ia-Ih連接到GND疊層,如圖2上右側(cè)所示(標(biāo)記為施到_)。
[0029] 在SMC 200中,掃描FFs 4a和4b和3至8譯碼器5a和5b允許在每個(gè)疊層準(zhǔn)確啟用TGs 中的一個(gè)。如圖2所示,SMC 200包括額外的TGs 2a和2b連接到8個(gè)TG疊層中的每個(gè)的漏極, 一個(gè)用于Vm及一個(gè)用于GND。如圖1所示,單獨(dú)的掃描FFs的控制它們連接至路由至PS和NS引 腳的芯片寬線(xiàn)。SMC 200的配置和控制機(jī)制允許使用芯片外電壓表來(lái)測(cè)量任何Vdd和GND電 壓。
[0030] 在一個(gè)實(shí)施例中,一個(gè)口令應(yīng)用到電路100,通過(guò)配置掃描鏈以(1)使在SMC內(nèi)啟動(dòng) 短路晶體管,及(2)在相同的SMC啟用兩個(gè)TG。例如,對(duì)于SMC 200,可以啟用短路晶體管3a和 3b及可以啟用標(biāo)記2a的TG和選自Ia到Ih的組中的一個(gè)TG。一旦晶體管被啟用,電壓降/上升 可以使用電壓表在NS和PS平板上進(jìn)行測(cè)量。電壓表可以包括芯片外電壓表或芯片上電壓 表。
[0031] 在一個(gè)實(shí)施例中,為了減少存在于Vdd和GND疊層的偏置效應(yīng)和相關(guān)性,層間的電壓 降/上升可以通過(guò)減去成對(duì)來(lái)計(jì)算,從連續(xù)的金屬層測(cè)得的電壓,g卩V M1-VM2、VM2-VM3等等。這 些電壓差,其可以被稱(chēng)為電力網(wǎng)電壓差(PGVDs),也可以允許PUF影響發(fā)生在電力網(wǎng)的每個(gè) 金屬層的獨(dú)立電阻變化。應(yīng)當(dāng)注意的是,使用基于PUF的金屬結(jié)構(gòu)的一個(gè)顯著好處是"噪聲 相關(guān)"變化,如那些通過(guò)溫度和電壓(TV)變化引入的,對(duì)所測(cè)量的電壓導(dǎo)致線(xiàn)性變化。這種 線(xiàn)性比例特性允許兩個(gè)電壓的相對(duì)大小橫跨溫度和電壓的變化保持一致,這反過(guò)來(lái)又提高 了PUF位反轉(zhuǎn)相比較時(shí)的穩(wěn)定性,例如影響基于晶體管的變化的PUFs。
[0032] 如圖2所示在各個(gè)Vdd和GND疊層中的8個(gè)TG表明7個(gè)PGVD可以每層計(jì)算。然而,應(yīng)該 指出的是,芯片上電力網(wǎng)的結(jié)構(gòu)可以減少電力網(wǎng)上層的電壓降。因此,在某些情況下,分析 可以被限制為使用下面4個(gè)金屬層(即,M^M 4)生成的PGVDs,其允許計(jì)算三個(gè)PGVD。因此,在 一個(gè)實(shí)施例中,對(duì)Vdd和GND疊層中的每個(gè),在群體中的每個(gè)芯片100可以生成85個(gè)SMC*3個(gè)金 屬層配對(duì)= 255個(gè)PgVDdPGVDs中的每個(gè)可以以各種組合與其他PGVDs進(jìn)行比較以產(chǎn)生位串。 在一個(gè)實(shí)施例中,分析可以在通過(guò)將每個(gè)PGVD與使用相同的金屬層配對(duì)生成的所有其它 PGVD比較生成的位串上進(jìn)行。因此,在一個(gè)實(shí)施例中,每個(gè)芯片100的總位數(shù)目可以等于85 個(gè)SMC*84/2每個(gè)金屬層配對(duì)*3個(gè)金屬層配對(duì)*2個(gè)網(wǎng)格= 3,570 X 6 = 21,420位。因此,在一 個(gè)實(shí)施例中,電路100可以包括85個(gè)SMC 200,及可以被配置成實(shí)現(xiàn)一個(gè)能夠產(chǎn)生21,420位 的PUF。此PUF在本發(fā)明中通??杀簧婕盀殡娏W(wǎng)(PG) PUF及更具體地是PGPUF1。
[0033] 如上所述,可以基于一種或多種唯一性、隨機(jī)性和穩(wěn)定性確定PUF的質(zhì)量。在一組 實(shí)驗(yàn)中,PGPUFii 9個(gè)TV區(qū)域中進(jìn)行評(píng)價(jià),即,覆蓋在負(fù)40 °C、25 °C和85 °C的三個(gè)溫度,和三 個(gè)電壓,標(biāo)稱(chēng)和標(biāo)稱(chēng)的+/-10%下的所有組合。使用PGPUFf生的位串的穩(wěn)定性用芯片內(nèi)HD 和"不合格幾率"技術(shù)來(lái)測(cè)量。此外,使用PGHJFi產(chǎn)生位串的隨機(jī)性和唯一性也采用NIST測(cè) 試套件和芯片間HD方法進(jìn)行評(píng)估。應(yīng)當(dāng)注意的是,在其中進(jìn)行了比較的順序是隨機(jī)的。在芯 片上實(shí)現(xiàn),可以通過(guò)使用線(xiàn)性反饋移位寄存器(LFSR)和種子來(lái)完成。在實(shí)驗(yàn)中,從芯片外電 壓表獲得數(shù)字化的電壓。隨機(jī)比較的過(guò)程中使用來(lái)自C編程庫(kù)中的srand函數(shù)(種子WPrand 函數(shù)()在實(shí)驗(yàn)中建模。此外,用一組63個(gè)芯片對(duì)PGPUFj^隨機(jī)性、唯一性和穩(wěn)定性的特點(diǎn)進(jìn) 行評(píng)估。
[0034]基于實(shí)驗(yàn)發(fā)現(xiàn)不穩(wěn)定的位,由于它們的PGVDs非常相似被定義為易受反轉(zhuǎn)的位,實(shí) 際上減少了與整體位串相關(guān)聯(lián)的若干質(zhì)量度量,其中包括芯片間的HD和NI ST統(tǒng)計(jì)測(cè)試分 數(shù)。而且,包括位串上的不穩(wěn)定位可能要求糾錯(cuò)和/或輔助數(shù)據(jù)方案的包。糾錯(cuò)和輔助數(shù)據(jù) 方案可能會(huì)削弱安全性及增加開(kāi)銷(xiāo)。本發(fā)明描述了可以被用來(lái)識(shí)別和丟棄不穩(wěn)定位的示例 性位反轉(zhuǎn)避免方案。示例性位反轉(zhuǎn)避免方案可以被用作糾錯(cuò)和幫助數(shù)據(jù)方案的一種替代。 示例性位反轉(zhuǎn)避免方案可以被稱(chēng)為閾值。
[0035]閾值處理可以通過(guò)從PGVDs的分布特性第一次計(jì)算一個(gè)閾值來(lái)進(jìn)行。從如圖3A-3B 中示出的PGVD的分布特征計(jì)算閾值。圖3A-3B是說(shuō)明用于集成電路的示例性電力網(wǎng)電壓分 布的曲線(xiàn)圖。圖3A-3B示出了用于一個(gè)樣品芯片CHIPj^GND和V dd的PGVD分布。如上所述,圖 3A和圖3B中每個(gè)分布包括255個(gè)PGVD值。即,對(duì)于Vdd和GND疊層中的每層,在一個(gè)群體中的每 個(gè)芯片100可以生成85個(gè)SMC*3個(gè)金屬層配對(duì)= 255個(gè)PGVD。
[0036]在如圖3A-3B中所示的實(shí)施例中,在分布中10 %和90 %點(diǎn)之間的距離用來(lái)推導(dǎo)閾 值算法的閾值。如圖3A-3B中所示,對(duì)于此芯片10 %和90 %點(diǎn)之間的距離對(duì)于GND PGVDs大 約是O . 3mV及對(duì)于VDD PGVDS大約是0.15mV。在IO %和90 %的限制用來(lái)避免由每個(gè)芯片的 P G V D值中潛在異常值引起的扭曲。在其它實(shí)施例中,不同的百分比可用來(lái)推導(dǎo)閾值(例如, 5%和95%,15%和85%,20%和80%)。
[0037]然后閾值可以由常數(shù)縮放來(lái)產(chǎn)生位生成期間所使用的實(shí)際閾值。圖4A和圖4B提供 了使用CHIP1的GND PGVDs的位生成過(guò)程的說(shuō)明。圖4A和圖4B中所示的坐標(biāo)圖均繪出了沿X 軸對(duì)相對(duì)比的兩個(gè)PGVDs之間的差值的位比較數(shù)目。只有通過(guò)閾值處理的位被包含在圖中, 即,X軸僅示出了大約1〇,710次比較的一半。通過(guò)閾值處理的位可被稱(chēng)為強(qiáng)位。出現(xiàn)在圖4A-4B的上部分的點(diǎn)生成'1'位,而在下部分的點(diǎn)生成'0'位。
[0038]圖4A僅示出了從登記獲得的點(diǎn),其在25°C、1.2V下進(jìn)行,利用在0.11和-0.1 ImV的 兩個(gè)水平線(xiàn)描繪了閾值。通過(guò)由常數(shù)0.37縮放從分布(8卩,10%和90%的點(diǎn))獲得的0.3mV獲 得這些值(即,0.3mV*0.37 = 0.1 ImV)。應(yīng)當(dāng)指出,在此實(shí)施例中,GND和Vdd的閾值的標(biāo)量0.37 和0.65分別確定為足以防止在芯片上位反轉(zhuǎn)。在其它實(shí)施例中,可以使用其它標(biāo)量。圖4B增 加了來(lái)自其余8個(gè)TV(再生)區(qū)域的數(shù)據(jù)點(diǎn)。對(duì)圖4A-4B中圖形的仔細(xì)檢查揭示出來(lái)自再生的 一些數(shù)據(jù)點(diǎn)出現(xiàn)在寬度為0.22mV的閾值帶內(nèi),中心圍繞0.0 mV。該再生過(guò)程中產(chǎn)生的噪聲會(huì) 引起點(diǎn)垂直移動(dòng),但只要沒(méi)有點(diǎn)移動(dòng)越過(guò)〇.〇線(xiàn),就不會(huì)發(fā)生位反轉(zhuǎn)。
[0039] 使此過(guò)程能夠應(yīng)用至需要位串精確再生的情況的使用情況工作如下。在最初的位 串生成期間,閾值處理被用于識(shí)別不穩(wěn)定的位。對(duì)于每個(gè)不穩(wěn)定的位,應(yīng)用到生成位串的口 令序列中其編號(hào)的位置被記錄在公共存儲(chǔ)器中。后來(lái),在再生期間,閾值被禁止和公共存儲(chǔ) 器被查閱以確定哪些口令在位生成期間應(yīng)用。
[0040] 閾值處理技術(shù)應(yīng)用到根據(jù)9個(gè)TV區(qū)域測(cè)試63個(gè)芯片的結(jié)果相對(duì)于圖5和圖6的描述 如下。對(duì)于閾值處理技術(shù)重要關(guān)注處理通過(guò)閾值處理的位的分?jǐn)?shù)。在進(jìn)行的實(shí)驗(yàn)中,我們發(fā) 現(xiàn)該分?jǐn)?shù)對(duì)于GND和V dd疊層是不同的。平均而言,使用GND PGVDs約50%的比較通過(guò)閾值處 理,而使用VDD PGVDs只有22.5 %的比較通過(guò)閾值處理。對(duì)于Vdd PGVD分析的較低值被認(rèn)為 是因?yàn)樵赩dd網(wǎng)上相對(duì)于GND網(wǎng)增加的噪聲產(chǎn)生的。其結(jié)果是,平均位串長(zhǎng)度從原始大小的 21,420個(gè)位減少到大約7,765個(gè)位(36.25% )。這些位串被發(fā)現(xiàn)在所有9個(gè)TV區(qū)域是可再現(xiàn) 的。
[0041] 真實(shí)平均芯片內(nèi)HD計(jì)算為4.01%,其是對(duì)整個(gè)TV區(qū)域的潛在位穩(wěn)定性的測(cè)量。這 個(gè)值是通過(guò)分析全長(zhǎng)獲得的,即,21,420位的位串,具有閾值禁用和位反轉(zhuǎn)的次數(shù)計(jì)數(shù),其 中位反轉(zhuǎn)是在跨越所有位串配對(duì)(9*8/2 = 36)的每個(gè)位位置發(fā)生的,其位串是根據(jù)每個(gè)芯 片的9個(gè)TV區(qū)域中的每個(gè)產(chǎn)生的。平均芯片內(nèi)HD,以百分比表示,是通過(guò)位反轉(zhuǎn)的數(shù)目除以 36*21,420而獲得的,其是檢查每個(gè)芯片位配對(duì)的總數(shù),并乘以100。報(bào)告值是橫跨所有芯片 的這些百分比的平均值。根據(jù)PUFs的已發(fā)表的文獻(xiàn),認(rèn)為任何值小于5%時(shí)是高品質(zhì)的。 [0042]如上所述,芯片間HD測(cè)量位串的唯一性,其最好的可能的結(jié)果是50%,即,平均上, 任何不同的兩個(gè)芯片的位串上位的一半。圖5是說(shuō)明用于根據(jù)本發(fā)明的技術(shù)生成的示例性 位串的一個(gè)示例性海明距離(hamming distances)分布的曲線(xiàn)圖。圖5繪出了芯片間HD的分 布。圖5中包括1,953個(gè)HD在內(nèi)的分布通過(guò)在所有組合下對(duì)來(lái)自所有芯片的穩(wěn)定位串的配對(duì) 獲得。具有最短的穩(wěn)定的位串的芯片用于設(shè)置在每次HD計(jì)算中使用的位串的大小,要求所 有位串被截?cái)嗟?,343位。平均的HD是3,666.8(49.94%),其接近于理想HD 3761.5(50%)。 [0043]實(shí)驗(yàn)還使用NIST統(tǒng)計(jì)測(cè)試在0.01的默認(rèn)顯著性水平評(píng)估了隨機(jī)性。鑒于穩(wěn)定位串 的長(zhǎng)度相對(duì)較短,15次NIST統(tǒng)計(jì)測(cè)試中只有11次是適用的。圖6是說(shuō)明實(shí)施本發(fā)明的一種或 多種技術(shù)的示例性集成電路的合格-不合格率的坐標(biāo)圖。如圖6中所示的條形圖在z軸上為X 軸上的每10次測(cè)試及為在y軸上的每10個(gè)不同的種子給出了合格芯片的數(shù)量。合格芯片的 數(shù)量參照了合格零假設(shè)。零假設(shè)被指定為測(cè)試下的位串是隨機(jī)的條件。因此,當(dāng)通過(guò)零假設(shè) 的芯片的數(shù)量大時(shí),會(huì)獲得好的結(jié)果。
[0044] 關(guān)于63個(gè)芯片,NIST需要至少60個(gè)芯片產(chǎn)生比顯著性水平(α = 〇. 01)大的p值,否 則整個(gè)測(cè)試被認(rèn)為'不合格'。如圖6中所示的圖中,總體而言,11*10 = 110個(gè)條中,41個(gè)是表 明所有63個(gè)芯片通過(guò)測(cè)試的全高,39個(gè)條具有高度62,27個(gè)具有高度61和2個(gè)具有高度60。 因此,110個(gè)中的109個(gè)條等于或大于通過(guò)測(cè)試所要求的值,及只有1個(gè)條低于閾值在58。無(wú) 重疊模板測(cè)試的條代表橫跨所有148個(gè)個(gè)體測(cè)試的平均合格率。10*148 = 1,480次個(gè)體測(cè)試 中,61次不合格,59次測(cè)試不超過(guò)2個(gè)芯片不合格,1次3個(gè)芯片不合格(57個(gè)芯片通過(guò)),及1 次4個(gè)芯片不合格(56個(gè)芯片通過(guò))。此外,除了8個(gè)以外其它的P值測(cè)試都通過(guò)了,表明P值統(tǒng) 一分布在0.0和1.0之間。在發(fā)生于Rank測(cè)試和無(wú)重疊模板測(cè)試中這一類(lèi)的不合格,這兩者 的NIST建議測(cè)試都用比在此使用大得多的位串。總體來(lái)說(shuō),這些都是非常不錯(cuò)的結(jié)果,并表 明使用PG PUF生成的位串是加密的高質(zhì)量。
[0045]由PUF產(chǎn)生的位串的大尺寸可用于進(jìn)一步加強(qiáng)對(duì)由單獨(dú)閾值處理提供的可靠性。 這可以通過(guò)從由PUF產(chǎn)生的強(qiáng)位的序列創(chuàng)建三份固定長(zhǎng)度位串副本來(lái)完成。然后,在被稱(chēng)為 三重模塊冗余或TMR的容錯(cuò)的使用的群體方案的精神內(nèi),三個(gè)副本可以作為避免位反轉(zhuǎn)的 裝置進(jìn)行對(duì)比。TMR基于多數(shù)表決方案,其中,通過(guò)橫跨位串的所有3份副本采用多數(shù)獲得給 定位的位置的最終位。
[0046]這種技術(shù)是使用256位的固定長(zhǎng)度的位串進(jìn)行研究。圖7A是說(shuō)明本發(fā)明的位串冗 余技術(shù)的一個(gè)實(shí)施例的概念圖。在一個(gè)實(shí)施例中,通過(guò)將第一256強(qiáng)位復(fù)制到如圖7A所示的 固定長(zhǎng)度位串的第一副本,在登記期間創(chuàng)建了一種基于TMR的位串。通過(guò)解析剩余強(qiáng)位創(chuàng)建 兩個(gè)第二副本,搜索匹配到所述第一副本。應(yīng)當(dāng)指出的是長(zhǎng)度為η的基于TMR的位串需要大 約5*η個(gè)強(qiáng)位來(lái)構(gòu)建。如上對(duì)于閾值處理所描述的,匹配位的位置由在公共存儲(chǔ)位串(未示 出)寫(xiě)上'1'來(lái)表示,而跳過(guò)的位(和在閾值處理下遇到的弱位)的位置由寫(xiě)入'0'來(lái)表示。之 后,在再生期間,公共存儲(chǔ)位串被查詢(xún)以確定哪些口令是要用于重建位串的三個(gè)副本。一旦 創(chuàng)建,通過(guò)如圖7Α所示的每條上的多數(shù)表決獲得最終位串。盡管在列中可能會(huì)發(fā)生任何單 個(gè)位反轉(zhuǎn),如在圖7Α中所示的在冗余BS 1的最后一列,但是這允許生成正確的位串。
[0047]圖7Β使用來(lái)自假設(shè)芯片的數(shù)據(jù)說(shuō)明了的一種建議性的閾值處理和基于TMR的方 案。圖7Β中X軸繪出了可用于生成位串進(jìn)行比較的序列,而y軸繪出了PGVDs的配對(duì)之間的差 分。每個(gè)差分反映了兩個(gè)PGVDs的相對(duì)順序,例如,正差分值表明第一 PGVD大于第二PGVD。對(duì) 于強(qiáng)位,在一個(gè)實(shí)施例中,PGVD差分?jǐn)?shù)據(jù)點(diǎn)必須位于圖7B中標(biāo)記為'+Tr'和圖'-Tr'的閾值 以上或以下。滿(mǎn)足此情況時(shí),使用'1'在數(shù)據(jù)點(diǎn)以下所示的閾值位串中記錄。另一方面,弱位 落在閾值范圍內(nèi),并用'〇'表示。在圖7B表示為帶下劃線(xiàn)的'0'的弱位表明是根據(jù)下面描述 的TMR方案跳過(guò)的強(qiáng)位。如圖7B中示出的基于TMR技術(shù)的實(shí)施例在登記期間構(gòu)建了 3個(gè)相同 位串,如沿著圖7B的底部示出,標(biāo)記為'機(jī)密BS'、'冗余BS1'和'冗余BS2'。在從左到右序列 中遇到的第一個(gè)強(qiáng)位被置于'機(jī)密BS'副本的第一位的位置。此'1'位將冗余BSx的第一位限 制到'1'。因此,下一個(gè)遇到的左側(cè)最強(qiáng)'0'位需要跳過(guò)。兩個(gè)冗余強(qiáng)'1'在5和6列位發(fā)現(xiàn)。下 一個(gè)強(qiáng)位,在這種情況下的'〇',在3位串限定第二位及該過(guò)程繼續(xù)。生成長(zhǎng)度為4的機(jī)密位 串所需強(qiáng)位的數(shù)目是約5的倍數(shù)或20。從這個(gè)實(shí)施例中,這是通過(guò)在閾值位串計(jì)算' Γ和粗 體' 〇 '的數(shù)量進(jìn)行評(píng)價(jià),其被給出為18。
[0048]為了說(shuō)明單獨(dú)由TMR過(guò)電壓閾值處理提供的改進(jìn),GND閾值標(biāo)量以上給出為0.37, 以0.01的布階迭代下降到0.0。由于閾值降低,位反轉(zhuǎn)開(kāi)始在僅閾值處理位串發(fā)生。僅閾值 處理'不合格概率'曲線(xiàn)可以通過(guò)計(jì)算在來(lái)自所有63個(gè)芯片的位串發(fā)生位反轉(zhuǎn)的數(shù)目及通 過(guò)除以位的總數(shù)目繪制。類(lèi)似的曲線(xiàn)可以用TMR繪制,但在這種情況下,除非在如圖7A所示 的列的兩個(gè)或三個(gè)以上的位發(fā)生,位反轉(zhuǎn)不計(jì)算在內(nèi)。此外,作為分母使用的基于TMR曲線(xiàn) 的位的總數(shù)通過(guò)說(shuō)明最終基于TMR位串使用的實(shí)際數(shù)目的因子3減少。
[0049] 圖8為這兩條曲線(xiàn)及適合他們的兩條"指數(shù)-曲線(xiàn)"繪出了數(shù)據(jù)點(diǎn)。在圖8中,沿X軸 繪出了在GND閾值比例常數(shù),與y軸上的不合格概率相對(duì)。指數(shù)曲線(xiàn)擬合允許不合格概率在 相對(duì)小的芯片群體中被預(yù)測(cè)閾值超出最后記錄的位反轉(zhuǎn)(即,向右)。例如,在0.37閾值單獨(dú) 使用電壓閾值處理的不合格概率是6.5E-7。這對(duì)使用基于TMR方案的2.4E-10提高了近三個(gè) 數(shù)量級(jí)。當(dāng)然,在增加使用位和公共存儲(chǔ)大小為代價(jià)下,基于TMR方案可以擴(kuò)展以通過(guò)生成 位串的五個(gè)(或更多個(gè)副本)進(jìn)一步改善位反轉(zhuǎn)的適應(yīng)性。
[0050] 在上述的實(shí)驗(yàn)中,從芯片外電壓表獲得數(shù)字化的電壓。如上所述,PUFs可使用芯片 上電壓-到-數(shù)字轉(zhuǎn)換器來(lái)實(shí)現(xiàn)。圖9、圖11及圖12中每個(gè)說(shuō)明了可實(shí)施本發(fā)明的一種或多種 技術(shù)的電壓-到-數(shù)字轉(zhuǎn)換器(VDC)的實(shí)施例。圖9中示出的芯片上VDC 900中被設(shè)計(jì)為'脈沖 滑環(huán)',當(dāng)其沿逆變器鏈向下傳送時(shí)有負(fù)輸入脈沖。當(dāng)脈沖沿逆變器鏈向下移動(dòng),其激活對(duì) 應(yīng)的一組鎖存器記錄脈沖通道,其中激活被定義為存儲(chǔ)一個(gè)'1'。溫度計(jì)碼(TC),即,后跟 ' 〇 '序列的' Γ序列,代表了數(shù)字化的電壓。
[0051]芯片上VDC 900通過(guò)引入一個(gè)固定寬度(常量)輸入脈沖工作,其通過(guò)如圖9左側(cè)所 示的脈沖發(fā)生器902生成。兩個(gè)模擬電壓,標(biāo)記為CalO和Call,連接至逆變器鏈中的一組串 聯(lián)插入式NFET晶體管,用CalO連接至偶數(shù)編號(hào)的逆變器904a-904n及Call和連接至奇數(shù)逆 變器904a-904n。圖9右側(cè)的呼出906上示出了逆變器的一個(gè)實(shí)施例。與脈沖相關(guān)聯(lián)的兩個(gè)邊 緣的傳播速度是由這些電壓?jiǎn)为?dú)控制的。當(dāng)脈沖的后邊緣'趕上'前邊緣時(shí),脈沖將在沿逆 變器鏈某點(diǎn)上最終消失。這可以通過(guò)在比Call高的電壓下固定CalO得到保證。所應(yīng)用的 CalO和Cal 1電壓的數(shù)字表示然后可以通過(guò)計(jì)算在鎖存器908a-908n循序存儲(chǔ)的' Γ的數(shù)目 來(lái)獲得。
[0052] 如上所述,PGVDs通過(guò)減去在電力網(wǎng)連續(xù)金屬層測(cè)得的電壓創(chuàng)建。而用VDC-次數(shù) 字化這些PGVs及然后減去它們,差分操作可以在模擬域中通過(guò)將來(lái)自連續(xù)金屬層兩個(gè)電壓 應(yīng)用到CalO和Cal 1的輸入進(jìn)行。從一對(duì)中下金屬層Mn的較大PGV可應(yīng)用于CalO,而從相鄰較 高的金屬等級(jí)層Mn+i的PGV可以應(yīng)用于Call(電壓降被用于Vdd電力網(wǎng)電壓,例如,Vd『Vmii)。 [0053]圖9示出這是如何可以實(shí)現(xiàn)的一個(gè)實(shí)施例。在PG陣列910被配置為啟用M n上的PGV 來(lái)驅(qū)動(dòng)的NS(或PS)引腳,然后一個(gè)芯片外電壓表(VM)912被用于數(shù)字化值(如用于上述實(shí)驗(yàn) 中所描述的相同的方法)。該P(yáng)GV然后乘以15,加上偏移量,此電壓總和用于編程驅(qū)動(dòng)CalO的 芯片外電源914a。相同的過(guò)程也可以進(jìn)行用于在金屬層M n+1上產(chǎn)生PGV,除將最終值用于編 程驅(qū)動(dòng)Call的第二芯片外電源914b。在本實(shí)施例中,乘法和偏移操作是必要的,因?yàn)閂DD 900需要為了正確操作將CalO和Cal 1電壓設(shè)置在500mV和Vdd之間。
[0054] 應(yīng)當(dāng)注意的是,不同于在上述PGV實(shí)驗(yàn)中的芯片外電壓表,芯片上的VDC 900經(jīng)受 與PUF相同的TV變化(如將在實(shí)際執(zhí)行的情況下)的影響,因此,它的特點(diǎn)也可以變化。在一 個(gè)實(shí)施例中,校準(zhǔn)過(guò)程可被用于'調(diào)諧'偏移電壓,以補(bǔ)償一些在VDC 900行為的變化,但由 于測(cè)量是差分,VDC 900能夠自校準(zhǔn)和抵消大部分的本身TV變化的不利影響。
[0055]進(jìn)行同一組的實(shí)驗(yàn),并接著使用VDC 900在63個(gè)芯片上進(jìn)行如上所描述的相同的 過(guò)程,而不使用芯片外電壓表。結(jié)果如下。閾值處理后的平均位串長(zhǎng)度為8,388位(39.16%) 和最短的一個(gè)(用來(lái)從其它芯片的統(tǒng)計(jì)測(cè)試截?cái)辔淮┦?506位。這兩個(gè)數(shù)字比使用PGVs得 到的數(shù)字稍大,如在上述,并表示該VDC 900補(bǔ)償了一些發(fā)生在測(cè)量的PGVs的TV變化。
[0056]然而,在另一方面,對(duì)于芯片上基于VDC位串的統(tǒng)計(jì)測(cè)試結(jié)果比PGVs所呈現(xiàn)出的那 些略差。以與圖5的PGVs相同的圖形格式,圖10示出了位串的HD分布和幾個(gè)統(tǒng)計(jì)結(jié)果。雖然 芯片間HD在49.87%,接近于理想的50%,為PGVs獲得的值略好(49.94%)。此外,圖10給出 的46.3位的標(biāo)準(zhǔn)偏差比圖5給出的43.4位稍大,這主要是由于在圖10中的曲線(xiàn)的左側(cè)的較 長(zhǎng)的拖尾。使用圖6中列出的相同的11次NIST統(tǒng)計(jì)測(cè)試對(duì)基于VDC位串測(cè)試,但僅使用第一 種子。雖然大多數(shù)測(cè)試通過(guò),但Runs和Approx.熵試驗(yàn)分別不合格,有57和49個(gè)芯片通過(guò),及 148次非重疊模板測(cè)試不合格,有20個(gè)通過(guò)。
[0057]總之,數(shù)字化過(guò)程由芯片上VDC 900進(jìn)行效果良好,但在除去存在于PGVs的偏移時(shí) 可能不會(huì)像在芯片外電壓表那樣有效。在J. Ju et al.,〃Bit String Analysis of Physical Unclonable Functions based on Resistance Variations in Metal and Transistors,〃H0ST,2012,pp 13-20中,其通過(guò)引用以其整體并入,它表明一個(gè)'碗狀'圖案 存在于橫穿SMCs的2-D陣列的Ml電壓,表明金屬層間的電壓差計(jì)算(如在這里完成)有效地 將其消除。使用VDC 900計(jì)算模擬差分的問(wèn)題直接處理存在于CalO和Call的不同的靈敏度。 特別是,Call具有比CalO更高的靈敏度,因此,將電壓應(yīng)用到CalO和Call的放大因子需要是 不同的(如上所述,15用于實(shí)驗(yàn)中的兩種因素)。
[0058]靈敏度的不對(duì)稱(chēng)性表現(xiàn)為如下。假定Mn電壓通過(guò)固定常數(shù)AV從VDC 900增加及 Mn+1電壓保持恒定。在這些條件下,假設(shè)這兩次測(cè)量的TC等于X。與此相反,類(lèi)似的情況,其中 皿"電壓保持恒定及M n+1電壓通過(guò)同一固定常數(shù)AV從VDC 900增加,不會(huì)導(dǎo)致相同的TC。相 反,TC等于y,其中y>x。換言之,與在等效下金屬層(Mn)的電壓變化相比,在上金屬層(M n+1) 的電壓的增量變化對(duì)TC的變化的影響較大。因此,TCs權(quán)衡在下金屬層中的電壓變化小于在 上金屬層中的變化,其使它們的關(guān)系扭曲至實(shí)際電壓差。
[0059] 如圖9所示具有VDC 900的第二個(gè)問(wèn)題是其可能是易感性差分功耗攻擊(DPA) APA 是用來(lái)竊取嵌入式ICs內(nèi)機(jī)密的統(tǒng)計(jì)技術(shù)。它的工作原理是通過(guò)分析從操作功能單元,諸如 高級(jí)加密引擎,產(chǎn)生的電源的瞬態(tài)推導(dǎo)IC的內(nèi)部狀態(tài)(和機(jī)密)。VDC 900的脈沖-收縮行為 使得其比較容易地對(duì)給定的電壓差的測(cè)量確定TC代碼。當(dāng)脈沖收縮和消失時(shí),通過(guò)VDC 900 產(chǎn)生的功率瞬態(tài)簡(jiǎn)單地停止,因此,功率瞬態(tài)的長(zhǎng)度正比于TC。
[0060] 解決該問(wèn)題的VDC的示例性結(jié)構(gòu)示于圖11。圖11是說(shuō)明可實(shí)施本發(fā)明的一種或多 種技術(shù)的電壓-數(shù)字轉(zhuǎn)換器(VDC)的一個(gè)實(shí)施例的示意圖。如圖11所示,在VDC 1100中來(lái)自 MjPMn+1金屬層的兩個(gè)GND PGV驅(qū)動(dòng)兩個(gè)相同的延遲鏈上的偶數(shù)編號(hào)的弱電逆變器1104a-1104b和1106a-l 106b,一個(gè)沿該圖的頂部和一個(gè)沿底部。在上升轉(zhuǎn)變導(dǎo)入下部延遲鏈之前, 上升轉(zhuǎn)變導(dǎo)入頂部延遲鏈。鑒于Mn+1電壓比M n電壓低,頂部延遲鏈傳播邊緣更慢,及最終邊 緣傳播沿著底部延遲鏈穿過(guò)頂部邊緣。類(lèi)似于圖9中VDC 900,作為邊緣傳播,只要在時(shí)間上 先于其它延遲鏈上的邊緣,就在鎖存器中每次記錄一個(gè)'a'。否則存儲(chǔ)一個(gè)'0'。延遲鏈的二 元性導(dǎo)致互補(bǔ)的TCs被存儲(chǔ)在鎖存器1108a-1108n中,其隨后傳送到掃描鏈。一個(gè)示例性測(cè) 試結(jié)果在圖11的中心右側(cè)給出,示出了當(dāng)?shù)撞窟吘壨ㄟ^(guò)頂部邊緣時(shí)在第三鎖存器(未示出) 產(chǎn)生的互補(bǔ)的TCs。
[0061 ] 盡管在圖11中所示VDC 1100的示例性結(jié)構(gòu)在區(qū)域上比圖9中所示的VDC 900大幾 乎兩倍,它提供了一個(gè)顯著優(yōu)勢(shì)。當(dāng)?shù)撞窟吘壨ㄟ^(guò)頂部邊緣時(shí),功率瞬態(tài)簽名保持不變,因 此對(duì)手很難或不可能確定在此發(fā)生的精確時(shí)間。盡管一些資料揭示了反映相對(duì)于底部邊緣 由頂部邊緣傳播到的其延遲鏈末端所用的額外時(shí)間的功率瞬態(tài)末端,當(dāng)分析與實(shí)際的PGV 電壓相關(guān)的功率瞬態(tài)時(shí),需要較高的信號(hào)與噪聲的比值。此外,有可能在這種結(jié)構(gòu)引入'停 止條件',信號(hào)傳播在頂部延遲鏈停止,有效地消除了這種類(lèi)型的信息泄露。例如,通過(guò)在頂 部延遲鏈上選通Vdd輸入,能夠把這些輸入瞬間關(guān)閉,底部邊緣傳播離開(kāi)其延遲鏈的末端。這 個(gè)動(dòng)作停止沿頂部掃描鏈的傳播(和相應(yīng)的功率瞬態(tài)),因此在它們的延遲中'隱藏'差異。 [0062] 解決VDC 900的問(wèn)題的VDC的另一個(gè)示例性結(jié)構(gòu)如圖12所示。圖12是說(shuō)明可實(shí)施本 發(fā)明的一種或多種技術(shù)的電壓-數(shù)字轉(zhuǎn)換器(VDC)的一個(gè)實(shí)施例的示意圖。如圖12所示,VDC 1200的輸入是標(biāo)記為Vo It InUpper和Volt InLower的兩個(gè)電壓和連接到邊緣發(fā)生器1202的 兩個(gè)布線(xiàn)edPe2 JDC 1200輸出反映感測(cè)電壓輸入大小的兩個(gè)128位溫度計(jì)碼(TCs)。如上所 述,TC是定義為'0'(或'1')的位串,后跟'1'(或'0')的位串。
[0063] 如圖12所示,VDC 1200是由兩個(gè)256級(jí)延遲鏈組成,其中上延遲鏈包括逆變器 1203a-1203n 和 1204&-120411及下延遲鏈包括逆變器12053-120511和12063-120611。 Vo 11 InLower輸入連接到128個(gè)NFET,在延遲鏈中插在奇數(shù)編號(hào)的逆變器系列。Vo 111 nUpper 以類(lèi)似的方式連接到上延遲鏈。PUF引擎(圖12中未示出)通過(guò)驅(qū)動(dòng)上升邊緣進(jìn)入邊緣發(fā)生 器1202啟動(dòng)數(shù)字化過(guò)程。邊緣發(fā)生器1202通過(guò) ei到相對(duì)應(yīng)的VDC輸入,但通過(guò)At延遲e2(在 一個(gè)實(shí)施例中通過(guò)3 2到1選擇MUX確定)。兩個(gè)邊緣然后沿兩個(gè)逆變器鏈以相對(duì)于 VoltlnUpper VoItInLower輸入大小的'行進(jìn)'下來(lái)。
[0064] 在V〇ltlnUpper>V〇ltlnL〇wer情況下,沿著頂部延遲鏈的邊緣傳播最終通過(guò)底部 延遲鏈上的邊緣。沿著兩個(gè)延時(shí)鏈的偶數(shù)逆變器的輸出連接到記錄發(fā)生這種情況點(diǎn)的一組 鎖存器1208a-1208n。如圖12,通過(guò)在上鏈鎖存器產(chǎn)生的TC是一個(gè)后跟'1'的'0'序列,而互 補(bǔ)圖案在下鏈的鎖存器輸出出現(xiàn)。與VoltlnUpper和VoltlnLower之間的電壓差的大小成正 比的值可以通過(guò)計(jì)數(shù)在這些TC中任一的' Γ的數(shù)量來(lái)獲得。以這種方式,VDC 1200代表被配 置為數(shù)字化PUF的裝置的一個(gè)實(shí)施例。
[0065]以上說(shuō)明了 :因?yàn)榻饘匐娮枧c溫度和電壓成線(xiàn)性比例,隨PUF的熵源影響金屬電阻 變化應(yīng)該是整個(gè)環(huán)境(TV)變化比影響基于晶體管變化本質(zhì)上更穩(wěn)定。在上面給出的分析中 使用的PGVs實(shí)際上包括來(lái)自?xún)蓚€(gè)源的變化。雖然包含在SMC 200中短路晶體管非常大(例 如,57 X最小尺寸),因此,相比于最小尺寸的晶體管,表現(xiàn)出更小的變化,但它們確實(shí)在PGV 分析中引入熵的組成部分。熵致力于改善的結(jié)果,但該增益被減小,如下面所示,由于基于 晶體管的變化對(duì)TV變化(以下稱(chēng)為T(mén)V噪聲)的敏感性增加。
[0066]在一個(gè)實(shí)施例中,可以由短路電流除以PGV電壓消除晶體管的變化。這些值可以被 稱(chēng)為電力網(wǎng)等效電阻和使用術(shù)語(yǔ)PGERs引用。為了得到PGERs的盡可能"純"的一種形式,漏 電壓和漏電流也可以Αλβ田短路晶優(yōu)昝個(gè)骨的倚中減去。對(duì)于PGER的表達(dá)由公式1給出:
公式1
[0067]應(yīng)當(dāng)注意的是,用于限定PGER的四次測(cè)量中每個(gè)都可以增加噪聲,在從TV噪聲的 分析中通過(guò)樣品平均將其分離并區(qū)別開(kāi)來(lái)。通過(guò)減去PGERs的配對(duì)創(chuàng)建PGER差(PGERDs),正 如上所述的用于完成PGVs。
[0068] 分析的一個(gè)目的是要表明PGERDs比PGVDs對(duì)TV變化更具適應(yīng)性。為了確定TV變化 的大小(或"噪聲"),對(duì)PGVD和PGERD數(shù)據(jù)進(jìn)行校準(zhǔn)。校準(zhǔn)去除通過(guò)數(shù)據(jù)中TV噪聲引入的DC偏 移,但是保留變化。校準(zhǔn)可以通過(guò)計(jì)算給定的金屬層配對(duì)和TV區(qū)域的整組SMCs的平均PGERD 和PGVD進(jìn)行。校正因子隨后可通過(guò)從參考TV區(qū)域減去在每個(gè)TV區(qū)域的平均值來(lái)計(jì)算。參考 是在25°C,1.2V下收集的數(shù)據(jù)。然后將校正因子加到來(lái)自TV區(qū)域相應(yīng)的數(shù)據(jù)。
[0069] 使用來(lái)自芯片之一的數(shù)據(jù)計(jì)算的校準(zhǔn)的M2-M3PGERDS和PGVDs的一個(gè)子集分別示 于圖13A和圖13B中所示的曲線(xiàn)。在圖13A-13B中SMC數(shù)量沿X軸給定及校準(zhǔn)到25 °C的PGERD或 PGVD沿y軸繪出。曲線(xiàn)中的每一點(diǎn)是11個(gè)樣品的平均值(樣品也被繪制為未連接點(diǎn)來(lái)說(shuō)明測(cè) 量噪聲)。該平均可消除大部分的測(cè)量噪聲。因此,線(xiàn)路連接曲線(xiàn)的變化主要由TV噪聲引入。
[0070] 在PGERD圖中列出的3〇值表明TV噪聲約測(cè)量噪聲(1.665/0.620)的2.7倍。當(dāng)任意 兩個(gè)相鄰的點(diǎn)配對(duì)之間的線(xiàn)的斜率使正負(fù)號(hào)顛倒時(shí)(如圖13Α中所示的實(shí)施例)發(fā)生位反 轉(zhuǎn)。與此相反,PGVD分析比率增大到7.7(23/3)。因此,比將其引入PGERD分析中,近三倍TV噪 聲更有可能將位反轉(zhuǎn)引入PGVD分析中。
[0071] 如上所述,等式1需要測(cè)量的電流值。芯片上測(cè)量電流可能很難。圖14示出了可用 于替代在芯片上測(cè)量的電流值的一個(gè)示例性測(cè)量電路的示意圖。在一個(gè)實(shí)施例中,電路 1400可以使塊內(nèi)SMCs的電壓降歸一化至參考電流。如該圖14所示,電路1400包括代表熵源 的AND門(mén)1402、傳送門(mén)1404、傳送門(mén)1406、NFET 1408、電阻器1410和電阻器1412 JND門(mén)1402 可以被配置為開(kāi)啟特定的SMC??梢钥缭届卦催B接傳送門(mén)1404和傳送門(mén)1406。例如,傳送門(mén) 1404和1406可以被分別連接到PS和NS。當(dāng)啟用SMC時(shí),NFET 1408可以被配置成提供激勵(lì)。在 一個(gè)實(shí)施例中,當(dāng)啟用SMC時(shí),NFET 1408可以被配置成提供500μΑ。電阻器1410可以是一個(gè) 受控電阻硅化多晶硅電阻器。在一個(gè)實(shí)施例中,電阻值1410可以具有大約400歐姆的電阻 值。以這種方式,當(dāng)啟用一個(gè)SMC時(shí),NFET 1408的電流產(chǎn)生可通過(guò)傳送門(mén)1404和傳送門(mén)1406 來(lái)感測(cè)的整個(gè)熵源的電壓降。電路1400可以允許通過(guò)該塊的SMCs內(nèi)的不同NFET電流引入電 壓變化被消除。此過(guò)程可被稱(chēng)為所謂的歸一化并描述如下。
[0072] 歸一化的目的可以作為所測(cè)量的整個(gè)熵疊層電壓降的一個(gè)部分消除晶體管的電 流變化。以前的工作表明電流引入的變化顯著地有助于TV噪聲,這反過(guò)來(lái),起到降低的正確 再生位串的概率。歸一化可以被認(rèn)為是一個(gè)過(guò)程,為塊內(nèi)的所有的SMC將電壓降"歸一"為參 考電流。歸一化是從由以下公式2給出的基本電路理論方程R = V/I得到,其指出熵源的電阻 可以從感測(cè)電壓測(cè)量除以通過(guò)所述NFET的電流而獲得。不幸的是,芯片上測(cè)量電流是具有 挑戰(zhàn)性的和不切實(shí)際的。
公式.2.
[0073] 在只需要確定一個(gè)與電阻"成比例"的值的情況下,公式3提供了一種替代。在此, DV感測(cè)上部是在整個(gè)如圖14中所示的熵源的較高電壓點(diǎn)產(chǎn)生的數(shù)字化電壓(來(lái)自VDC O和 128之間的值)。來(lái)自塊上啟用的激勵(lì)-測(cè)量-電路(SMC)的電流流經(jīng)R鮏(1410)。因此,由 (129-DV感測(cè)上部)限定的電壓降與NFET電流成比例。
公式3
[0074]以這種方式,本文所描述的電路闡明了被配置為生成物理不可克隆函數(shù)的示例性 電路。已經(jīng)描述了各種實(shí)施例。這些和其它實(shí)施例在以下權(quán)利要求的范圍之內(nèi)。
【主權(quán)項(xiàng)】
1. 一種用于物理不可克隆函數(shù)生成數(shù)字化值的方法,該方法包括: 接收第一電壓值; 接收第二電壓值; 生成溫度計(jì)代碼,其中所述的溫度計(jì)代碼包括:多個(gè)第一位值的連續(xù)位,及其中第一位 值的連續(xù)位的數(shù)量與第一電壓值和第二電壓值之間的電壓差的大小成比例。2. 根據(jù)權(quán)利要求1所述的方法,其中,接收電壓值包括接收對(duì)應(yīng)于熵源的電壓值,其中, 所述熵源包括:包括在集成電路中的無(wú)源導(dǎo)體。3. 根據(jù)權(quán)利要求2所述的方法,其中,無(wú)源導(dǎo)體包括:金屬絲、硅化多晶硅、非硅化物多 晶硅、η型擴(kuò)散源、p型擴(kuò)散源、η阱或p阱中之一。4. 根據(jù)權(quán)利要求2所述的方法,其中,接收第一電壓值包括:接收對(duì)應(yīng)于集成電路電力 網(wǎng)的第一金屬層的電壓值及接收第二電壓值包括:接收對(duì)應(yīng)于集成電路電力網(wǎng)的第二金屬 層的電壓值,其中,第一金屬層和第二金屬層是連續(xù)的金屬層。5. 根據(jù)權(quán)利要求1所述的方法,其中,生成溫度計(jì)代碼包括:將對(duì)應(yīng)于第一電壓值的電 壓應(yīng)用到逆變器鏈上偶數(shù)編號(hào)的逆變器上及將對(duì)應(yīng)于第二電壓值的電壓應(yīng)用到逆變器鏈 上奇數(shù)編號(hào)的逆變器上。6. 根據(jù)權(quán)利要求5所述的方法,其中,生成溫度計(jì)代碼還包括:逆變器鏈上的每個(gè)逆變 器輸出在各自的鎖存器上基于是否檢測(cè)到脈沖存儲(chǔ)一個(gè)1或0的位值。7. 根據(jù)權(quán)利要求1所述的方法,其中,生成溫度計(jì)代碼包括:將與第一電壓相關(guān)聯(lián)的第 一邊緣應(yīng)用到第一延遲鏈及與將第二電壓相關(guān)聯(lián)的第二邊緣應(yīng)用到第二延遲鏈,其中第二 邊緣通過(guò)預(yù)定時(shí)間值沿第一邊緣延伸。8. 根據(jù)權(quán)利要求7所述的方法,其中,生成溫度計(jì)代碼還包括:延遲鏈的每個(gè)邊緣在各 自的鎖存器上基于第一延遲鏈輸出順序或應(yīng)用至各自鎖存器的第二延遲鏈相對(duì)應(yīng)的輸出 順序存儲(chǔ)一個(gè)1或〇的位值。9. 根據(jù)權(quán)利要求1所述的方法,其中,生成溫度計(jì)代碼包括:消除與第一電壓值和第二 電壓值相關(guān)聯(lián)的晶體管電流變化。10. 根據(jù)權(quán)利要求1所述的方法,還包括生成兩個(gè)或更多個(gè)冗余溫度計(jì)代碼及基于多數(shù) 規(guī)則確定最終溫度計(jì)代碼。11. 一種用于物理不可克隆函數(shù)生成數(shù)字化值的設(shè)備,該設(shè)備包括: 用于接收第一電壓值的第一輸入; 用于接收第二電壓值的第二輸入;及 配置成生成溫度計(jì)代碼的電路,其中,溫度計(jì)代碼包括:多個(gè)第一位值的連續(xù)位,及其 中第一位值的連續(xù)位的數(shù)量與第一電壓值和第二電壓值之間的電壓差的大小成比例。12. 如權(quán)利要求11所述的裝置,其中,電壓值包括:接收對(duì)應(yīng)于熵源的電壓值,其中,所 述熵源包括:包括在集成電路中的無(wú)源導(dǎo)體。13. 如權(quán)利要求12所述的裝置,其中,無(wú)源導(dǎo)體包括:金屬線(xiàn)、硅化多晶硅、非硅化物多 晶硅、η型擴(kuò)散源、ρ型擴(kuò)散源、η阱或ρ阱中之一。14. 如權(quán)利要求12所述的裝置,其中,第一電壓值包括:對(duì)應(yīng)于集成電路電力網(wǎng)的第一 金屬層的電壓值及第二電壓值包括:對(duì)應(yīng)于集成電路電力網(wǎng)的第二金屬層的電壓值,其中, 第一金屬層和第二金屬層是連續(xù)的金屬層。15. 如權(quán)利要求11所述的裝置,其中,配置成生成溫度計(jì)代碼的電路包括:逆變器鏈,及 其中,將對(duì)應(yīng)于第一電壓值的電壓應(yīng)用到逆變器鏈上偶數(shù)編號(hào)的逆變器上及將對(duì)應(yīng)于第二 電壓值的電壓應(yīng)用到逆變器鏈上奇數(shù)編號(hào)的逆變器上。16. 如權(quán)利要求15所述的裝置,其中,配置成生成溫度計(jì)代碼的電路還包括:各自的鎖 存器可操作地耦合至逆變器鏈上的每個(gè)逆變器輸出,其中,各自的鎖存器經(jīng)配置成基于是 否檢測(cè)到脈沖存儲(chǔ)一個(gè)1或0的位值。17. 如權(quán)利要求1所述的裝置,其中,配置成生成溫度計(jì)代碼的電路包括:電路,配置成 將與第一電壓相關(guān)聯(lián)的第一邊緣應(yīng)用到第一延遲鏈及與將第二電壓相關(guān)聯(lián)的第二邊緣應(yīng) 用到第二延遲鏈,其中第二邊緣通過(guò)預(yù)定時(shí)間值沿第一邊緣延伸。18. 如權(quán)利要求17所述的裝置,其中,配置成生成溫度計(jì)代碼的電路包括:各自的鎖存 器可操作地耦合至延遲鏈上的每個(gè)邊緣輸出,各自的鎖存器中的每個(gè)基于第一延遲鏈輸出 順序或應(yīng)用至各自鎖存器的第二延遲鏈相對(duì)應(yīng)的輸出順序存儲(chǔ)一個(gè)1或0的位值。19. 如權(quán)利要求11所述的裝置,其中,生成溫度計(jì)代碼包括:消除與第一電壓值和第二 電壓值相關(guān)聯(lián)的晶體管電流變化。20. 如權(quán)利要求11所述的裝置,還包括:生成兩個(gè)或更多個(gè)冗余溫度計(jì)代碼及基于多數(shù) 規(guī)則確定最終溫度計(jì)代碼。
【文檔編號(hào)】G06F11/10GK105849701SQ201480059198
【公開(kāi)日】2016年8月10日
【申請(qǐng)日】2014年8月28日
【發(fā)明人】詹姆斯·普拉斯魁里克
【申請(qǐng)人】Stc.Unm公司