關(guān)鍵詞: RO PUF;多輸出環(huán)振蕩器;動態(tài)配置處理模塊;漢明距離
中圖分類號: TP331
文獻(xiàn)標(biāo)識碼: A
DOI:10.16157/j.issn.0258-7998.170750
中文引用格式: 劉勇聰,王建業(yè),丁浩. 動態(tài)可配置多輸出RO PUF[J].電子技術(shù)應(yīng)用,2017,43(9):43-45,49.
英文引用格式: Liu Yongcong,Wang Jianye,Ding Hao. Dynamic configurable multi-output RO PUF[J].Application of Electronic Technique,2017,43(9):43-45,49.
0 引言
隨著計算機技術(shù)和集成電路的飛速發(fā)展和廣泛應(yīng)用,芯片信息安全越來越受重視。而環(huán)形振蕩器物理不可克隆函數(shù)(RO PUF)在信息安全領(lǐng)域作為一項非常有潛力的技術(shù),在芯片信息安全領(lǐng)域備受關(guān)注[1]。傳統(tǒng)RO PUF通過比較放置在同一芯片不同位置的一對環(huán)形振蕩器的頻率來生成輸出0或1。由于隨機的工藝偏差,輸出位將因芯片的不同而變得無法預(yù)測[2]。因此,基于傳統(tǒng)RO PUF的可配置的RO PUF被提出來。在可配置RO PUF中, 輸出位通過最大頻率差的配置向量生成[3],從而可以降低工藝偏差帶來的影響。
然而,不論是傳統(tǒng)RO PUF還是可配置RO PUF都存在一個相同的不足:通過比較兩個環(huán)形振蕩器頻率的不同只能產(chǎn)生一位輸出。為了產(chǎn)生更多的輸出位,只能不斷增加振蕩器數(shù)量。雖然頻率比較的方法可以提高輸出位數(shù),但是有限的芯片資源限制了可配置RO PUF的實際運用[4]。
根據(jù)以上不足,本文提出了動態(tài)可配置多路輸出RO PUF。不僅從根本上增加了輸出位數(shù),而且可以根據(jù)實際需求確定輸出位的數(shù)量。同時,振蕩器的結(jié)構(gòu)隨工作條件的變化而相應(yīng)的改變,因此可以提高芯片的魯棒性和安全性。
1 多輸出環(huán)形振蕩器
多輸出環(huán)形振蕩器由反相器、開關(guān)單元和路徑分配器組成,路徑分配器是動態(tài)可配置多路輸出RO PUF的基礎(chǔ)。多輸出結(jié)構(gòu)的環(huán)形振蕩器如圖1所示。
圖1中所有開關(guān)單元都與仲裁器PUF[5]中的開關(guān)單元一致。如果在開關(guān)S[0..2]配置位是‘1’,信號將在對應(yīng)的開關(guān)交叉,否則信號將平行通過。圖1中由3個開關(guān)單元組成的振蕩器共有8(23=8)種信號傳輸模式。路徑分配器用以確保信號不會在振蕩器上下路徑之間交叉?zhèn)鞑ィ员WC每條路徑的穩(wěn)定振蕩。信號從路徑分配器的輸出端開始傳輸,通過反相器和開關(guān)單元,最后回到路徑分配器的輸入引腳。路徑分配器根據(jù)每個信號的配置向量決定信號的流向,確保信號重新開始流動時,會沿著之前的路徑流動。不同的配置向量將導(dǎo)致不同的信號傳輸模式。不同的傳輸模式導(dǎo)致不同傳輸延遲的線路和門電路,從而產(chǎn)生不同的振蕩頻率。
相比傳統(tǒng)RO PUF中和可配置RO PUF振蕩器只能產(chǎn)生一位輸出,該振蕩器只占一個LAB卻可以產(chǎn)生2個輸出位。除此之外,通過調(diào)整開關(guān)單元的通斷和路徑分配器的信號分配路徑,該振蕩器還可以產(chǎn)生更多的輸出位。
圖2表示一對多輸出環(huán)形振蕩器和4個輸出位(RO1-1、RO1-2、RO2-1、RO2-2)。RO1和RO2的配置向量相同。通過邏輯鎖存器,RO1-和 RO2-1具有相同的路徑。所以RO1-和RO2-1(或RO1-2and RO2-2)唯一的區(qū)別就是物理工藝偏差。因此,RO1-1和 RO2-1(或RO1-2and RO2-2)頻率比較結(jié)果可以作為一個輸出位。
在Xilinx FPGA中進(jìn)行實驗,如圖3所示,實驗結(jié)果表明RO1-1和RO1-2在不同配置向量下的輸出頻率。
實驗結(jié)果表明,RO1-1和RO1-2的輸出頻率確實存在差異。此外,隨著配置向量的不同,它們的輸出頻率也存在差異。因此,驗證了多輸出振蕩器結(jié)構(gòu)確實能有效產(chǎn)生多個輸出位。
RO1-1和RO2-1的頻率差和RO1-2和RO2-2的頻率差在不同配置向量下的實驗結(jié)果如圖4所示??梢钥闯?,RO1-1和RO2-1的頻率差和RO1-2和RO2-2的頻率差是不相關(guān)的。因此,它們的輸出不相互影響,可以看作兩個獨立輸出位。
表1列出了不同輸出位數(shù)多輸出RO和傳統(tǒng)RO的芯片資源占用情況。第二列表示不同輸出位數(shù)下,一對多輸出ROs用以產(chǎn)生不同的輸出位的LAB占用數(shù)量。第三列表示傳統(tǒng)RO產(chǎn)生相對應(yīng)的輸出位數(shù)所占用的LAB數(shù)量??梢钥闯觯噍敵鯮O占用的芯片資源更少。例如,128位輸出需要65個兩位輸出ROs,占65個LAB,也可以由33個四位輸出ROs產(chǎn)生,占99個LAB, 但如果使用傳統(tǒng)的RO結(jié)構(gòu),則需要129年ROs,占129個LAB,所占的LAB數(shù)量是最多的??梢钥闯?,多輸出RO在芯片資源利用率上具有很大的優(yōu)勢。
2 動態(tài)配置過程模塊
動態(tài)可配置多路輸出RO PUF的總體結(jié)構(gòu)如圖5所示。N個兩位輸出的一對環(huán)形振蕩器(ROs)通過比較相鄰ROs的頻率生成2(N-1)個輸出位。傳感器由五級環(huán)形振蕩器構(gòu)成,振蕩頻率與環(huán)境溫度和電源電壓成線性關(guān)系[6]。傳感器主要用于檢測芯片工作情況。為了可以根據(jù)環(huán)境情況動態(tài)調(diào)整相鄰振蕩器的結(jié)構(gòu),從而確保相鄰的ROs保持一個相對較大的頻率差,當(dāng)環(huán)境溫度和工作電壓超過預(yù)先設(shè)定的閾值時,F(xiàn)SM控制器[7]啟動動態(tài)配置過程從而計算出在當(dāng)前環(huán)境下的“最優(yōu)配置向量”。因此,環(huán)境對輸出位的影響將降低,從而動態(tài)可配置多輸出RO PUF魯棒性得到提高。
“最優(yōu)配置向量”不是簡單的產(chǎn)生最大的頻率差的向量。相反,它是由ROs的頻率差的分布來決定。對不同配置向量下所有的ROs的正頻率差進(jìn)行求和。如果上一個ROs的正頻率差大于下一個ROs的正頻率差,表明上下兩對ROs的頻率差為正,選擇可使正頻率差最大的配置向量作為“最優(yōu)配置向量”。相反,如果上一個ROs的正頻率差小于下一個ROs的正頻率差,選擇一個對應(yīng)的負(fù)頻率差最大的配置向量作為“最優(yōu)配置向量”,從而可以擴大上下頻率差的絕對值,進(jìn)而提高比較精度。
3 實驗結(jié)果
對10個Xilinx Spartan XC3S1000 FPGA進(jìn)行數(shù)據(jù)提取,數(shù)據(jù)通過快速單一鏈接(Fast Simple Link)接口傳輸?shù)組icroBlaze中進(jìn)行處理。每個FPGA通過65個ROs產(chǎn)生128位的輸出。每個輸出測量50次。分別對傳統(tǒng)RO PUF、可配置RO PUF和動態(tài)可配置多輸出RO PUF進(jìn)行數(shù)據(jù)分析。
RO PUF的平均片間漢明距離比例[8]可以表征同一類型PUF電路與其他個體的區(qū)分度。其計算方式如式(1)。
其中hij表示第i和第j個PUF電路產(chǎn)生的位輸出相應(yīng),k是FPGA的個數(shù)。提取數(shù)據(jù)后計算可得不同RO PUF的平均片間漢明距離比例如表2所示。
對比以上3種RO PUF對總的位數(shù)輸出相應(yīng)的平均片間漢明距離比例結(jié)果可以看出,3種RO PUF的平均片間漢明距離比例都接近理想的50%,動態(tài)可配置多輸出RO PUF片間漢明距離比例最高。但3種RO PUF都表現(xiàn)出良好的唯一性。因此,3種RO PUF的輸出都可以作為每個芯片ID。
片內(nèi)漢明距離可以描述PUF系統(tǒng)的魯棒性和可靠性,其計算如式(2)所示。
其中,M為不同工作環(huán)境的個數(shù),hri表示在理想工作條件(25 ℃,1.2 V)下和第i種工作情況對比條件下的n位輸出響應(yīng)。由于魯棒性和可靠性主要受環(huán)境溫度和電源電壓的影響。讓所使用的Xilinx FPGA分別工作在固定工作環(huán)境下和變化的工作環(huán)境下進(jìn)行參數(shù)提取,分別對其片內(nèi)漢明距離進(jìn)行檢測。
(1)固定環(huán)境溫度和電源電壓情況下
在30 ℃,1.2 V接近理想工作環(huán)境下進(jìn)行參數(shù)提取,不同RO PUF結(jié)構(gòu)的平均片內(nèi)漢明距離如表3所示。
在接近FPGA標(biāo)準(zhǔn)工作條件下,測試誤差和片內(nèi)噪聲是影響其魯棒性的主要因素[9]。由表可以看出,可配置RO PUF可以將該RO PUF對誤差和噪聲影響降至幾乎0。
(2)變化的環(huán)境溫度和電源電壓情況下
現(xiàn)實條件下,芯片的工作環(huán)境溫度和電源電壓總是在不斷的變化之中。因此,降低環(huán)境溫度和電源電壓對芯片ID提取的影響意義重大。表4列出環(huán)境溫度從-30 ℃變化到+70 ℃,電壓1.15 V變化到1.25 V時,3種RO PUF的平均片內(nèi)漢明距離比例變化情況。雖然在溫度變化時,動態(tài)可配置RO PUF在ID提取上沒有很大優(yōu)勢,但是電源電壓改變時,可配置多輸出RO PUF在位翻轉(zhuǎn)率最低,可更加精確地提取芯片ID。
4 結(jié)論
本文結(jié)合針對傳統(tǒng)RO PUF和可配置RO PUF輸出位數(shù)不足,占用芯片資源過多的現(xiàn)實情況,在可配置RO PUF的基礎(chǔ)上改進(jìn),提出了動態(tài)可配置多輸出RO PUF,在提高輸出位數(shù)和節(jié)約芯片資源的同時,還提高了系統(tǒng)的唯一性和魯棒性,進(jìn)而可提高提取芯片ID的精度。對應(yīng)用RO PUF進(jìn)行芯片知識產(chǎn)權(quán)(IP核)保護意義重大。
-
環(huán)形振蕩器
+關(guān)注
關(guān)注
1文章
12瀏覽量
8730
原文標(biāo)題:【論文精選】動態(tài)可配置多輸出RO PUF
文章出處:【微信號:ChinaAET,微信公眾號:電子技術(shù)應(yīng)用ChinaAET】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
環(huán)形振蕩器,環(huán)形振蕩器工作原理是什么?
基于CPLD的片內(nèi)環(huán)形振蕩器的設(shè)計方案
![基于CPLD的片內(nèi)<b class='flag-5'>環(huán)形振蕩器</b>的設(shè)計方案](https://file1.elecfans.com//web2/M00/A5/C3/wKgZomUMOf2AWXZmAABQZb_MYYk789.jpg)
一種頻率穩(wěn)定的改進(jìn)型CMOS環(huán)形振蕩器
一種頻率穩(wěn)定的改進(jìn)型CMOS環(huán)形振蕩器
環(huán)形振蕩器介紹_反相器構(gòu)成環(huán)形振蕩器
![<b class='flag-5'>環(huán)形振蕩器</b>介紹_反相器構(gòu)成<b class='flag-5'>環(huán)形振蕩器</b>](https://file.elecfans.com/web1/M00/44/67/pIYBAFpYf8KANdErAABD8bLzPyE517.png)
環(huán)形振蕩器原理及應(yīng)用_環(huán)形振蕩器的實用電路
環(huán)形振蕩器的Multisim仿真實例電路原理圖免費下載
![<b class='flag-5'>環(huán)形振蕩器</b>的Multisim仿真實例電路原理圖免費下載](https://file.elecfans.com/web1/M00/C6/23/pIYBAF9R6lmAKy4VAAQULwjrsdc693.png)
可調(diào)可重構(gòu)的環(huán)形振蕩器物理不可克隆函數(shù)設(shè)計
![可調(diào)可重構(gòu)的<b class='flag-5'>環(huán)形振蕩器物理</b><b class='flag-5'>不可</b><b class='flag-5'>克隆</b><b class='flag-5'>函數(shù)</b>設(shè)計](https://file.elecfans.com/web1/M00/EC/54/pIYBAGCA6riARUsQAAHh-ZtsiK0472.png)
通過環(huán)形振蕩器、555 定時器和 Arduino 進(jìn)行數(shù)字方波發(fā)生器設(shè)計
![通過<b class='flag-5'>環(huán)形振蕩器</b>、555 定時器和 Arduino 進(jìn)行數(shù)字方波發(fā)生器設(shè)計](https://file.elecfans.com/web2/M00/89/93/poYBAGO7qBmAcmM4AAAhQ-ynn3Q103.jpg)
評論