TWI627555B - 物理不可複製函數辨識之產生方法及其產生之裝置 - Google Patents
物理不可複製函數辨識之產生方法及其產生之裝置 Download PDFInfo
- Publication number
- TWI627555B TWI627555B TW106135371A TW106135371A TWI627555B TW I627555 B TWI627555 B TW I627555B TW 106135371 A TW106135371 A TW 106135371A TW 106135371 A TW106135371 A TW 106135371A TW I627555 B TWI627555 B TW I627555B
- Authority
- TW
- Taiwan
- Prior art keywords
- puf
- array
- disorder
- programmable
- resistive memories
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 86
- 230000015654 memory Effects 0.000 claims abstract description 133
- 230000008569 process Effects 0.000 claims abstract description 8
- 230000006870 function Effects 0.000 claims description 18
- 239000000758 substrate Substances 0.000 claims description 11
- 238000010586 diagram Methods 0.000 description 7
- 230000015572 biosynthetic process Effects 0.000 description 6
- 238000003491 array Methods 0.000 description 5
- 229910044991 metal oxide Inorganic materials 0.000 description 4
- 150000004706 metal oxides Chemical class 0.000 description 4
- 238000004519 manufacturing process Methods 0.000 description 2
- 238000013507 mapping Methods 0.000 description 2
- 239000000463 material Substances 0.000 description 2
- 239000011159 matrix material Substances 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- QVGXLLKOCUKJST-UHFFFAOYSA-N atomic oxygen Chemical compound [O] QVGXLLKOCUKJST-UHFFFAOYSA-N 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 239000000470 constituent Substances 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 230000002708 enhancing effect Effects 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 230000005669 field effect Effects 0.000 description 1
- 229910001922 gold oxide Inorganic materials 0.000 description 1
- 230000001788 irregular Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 239000002184 metal Substances 0.000 description 1
- 229910052751 metal Inorganic materials 0.000 description 1
- 230000005012 migration Effects 0.000 description 1
- 238000013508 migration Methods 0.000 description 1
- 230000000877 morphologic effect Effects 0.000 description 1
- 229910052760 oxygen Inorganic materials 0.000 description 1
- 239000001301 oxygen Substances 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
Landscapes
- Semiconductor Memories (AREA)
- Read Only Memory (AREA)
Abstract
一種PUF-ID之產生方法,包括:提供一PUF陣列,包括複數個可程式化電阻式記憶體;對PUF陣列之所有可程式化電阻式記憶體進行一形成程序和一程式化程序;進行一估算程序以估算PUF陣列之亂度,其藉由將一基礎單元之一參考電流與通過所有可程式化電阻式記憶體之一電流總和進行比較,而得到一PUF亂度;根據估算程序而決定一亂度設定結果;和根據亂度設定結果而產生一PUF-ID。
Description
本發明是有關於一種物理不可複製函數(physically unclonable function,PUF)辨識(identification,ID)之產生方法及產生一PUF-ID之裝置,且特別是有關於一種包括估算和決定PUF亂度(randomness)的一種產生PUF-ID之方法及其裝置。
物理不可複製函數(physically unclonable function,PUF)是一種硬件固有安全技術(hardware intrinsic security,HIS),可產生晶片”指紋”來構造安全認證機制。應用PUF可避免企圖自晶片竊取數位資訊的物理攻擊。靜態隨機存取記憶體(Static Random-Access Memory,SRAM)是常見的其中一種PUF應用實施態樣,其利用於電源供給狀態下造成臨界電壓差異而產生晶片識別碼。然而,SRAM PUF (例如包括6個電晶體)的構造佔據較大尺寸,會對欲縮小PUF陣列尺寸造成影響。再者,SRAM PUF容易受到環境因素影響,例如SRAM PUF對於由溫度變化和電壓位準變化(例如電源電壓V
DD)所造成的干擾相當敏感。SRAM PUF之間的漢明距離(hamming distances)會隨溫度升高而增加,因而造成位元錯誤率(bit error rate,BER)增加。所以,雖然SRAM PUF可提供具無規律性和獨特性的PUF應用,但由於上述干擾引起的不穩定性(noise induced instability)而導致可靠度(reliability)不足是SRAM PUF應用上主要的顧慮之一。因此,對於特性表現良好的PUF應用,係要求產生的PUF辨識(PUF-ID)之位元錯誤率降低,並且在辨識度上也需具有高度特殊性(high uniqueness)。
再者,一PUF陣列之例如數位資訊“0”相對於數位資訊“1”的一理想亂度(其指出PUF陣列之低阻值狀態和高阻值狀態)約為50%相對於50%,此理想亂度可提供在辨識度上具有高度特殊性的PUF-ID。傳統上,一PUF陣列之記憶體之阻值係以一個位元接著一個位元的方式進行檢查以決定其阻值狀態,非常耗時,也不適合應用於大型PUF陣列(例如64位元、256位元、1k位元…等等)之阻值檢查。
本發明係有關於一種物理不可複製函數辨識(physically unclonable function identification,PUF-ID)之產生方法及產生PUF-ID之裝置。根據實施例之方法,可以快速地和簡單地判斷出一PUF陣列之可程式化電阻式記憶體(programmable resistance memory cells)之阻值狀態。
根據一實施例,提出一種PUF-ID之產生方法,包括:提供一PUF陣列(PUF array),包括複數個可程式化電阻式記憶體;對PUF陣列之所有可程式化電阻式記憶體進行一形成程序(forming procedure)和一程式化程序(programing procedure);進行一估算程序以估算PUF陣列之亂度,其藉由將一基礎單元(base unit)之一參考電流(reference current,I
Ref)與通過所有可程式化電阻式記憶體之一電流總和(a total current,I
Total)進行比較,而得到一PUF亂度(a PUF randomness);根據估算程序而決定一亂度設定結果;和根據亂度設定結果而產生一PUF-ID。
根據一實施例,再提出一種具有PUF-ID之裝置,包括:一可程式記憶體陣列(programmable memory array)設置於一基板之一PUF區域中;一程式控制器(program controller),設置於基板上且與可程式記憶體陣列耦接;以及一安全邏輯單元(security logic unit)設置於基板上且耦接至程式控制器。程式控制器執行以下步驟包括:對可程式記憶體陣列包括之所有的複數個可程式化電阻式記憶體進行一形成程序和一程式化程序,其中可程式記憶體陣列在執行程式化程序後可產生一或多組資料(one or more data sets);進行一估算程序以估算PUF陣列之亂度,其藉由將一基礎單元之一參考電流與通過所有可程式化電阻式記憶體之一電流總和進行比較,而得到一PUF亂度(a PUF randomness);根據估算程序而決定一亂度設定結果;和根據亂度設定結果而產生一PUF-ID。其中安全邏輯單元儲存PUF-ID。
為了對本發明之上述及其他方面有更佳的瞭解,下文特舉實施例,並配合所附圖式詳細說明如下。
根據本揭露之實施例,係提出一種物理不可複製函數(physically unclonable function,PUF)辨識(identification,ID)之產生方法及產生一PUF-ID之裝置。根據實施例之方法,一PUF陣列之可程式化電阻式記憶體(programmable resistance memory cells)之阻值狀態的一亂度,可以被快速地和簡單地判斷出來,而可決定是否需要對PUF陣列之可程式化電阻式記憶體再次執行形成程序(forming procedure)和程式化程序(programing procedure)(例如設置(SET)程序),使PUF陣列亂度達到接近一理想PUF亂度(例如,50%的數位資訊“0”相對於50%的數位資訊“1”)。因此,藉由本揭露提出之PUF-ID產生方法,可使應用之PUF陣列產生一PUF-ID所需要的時間可以大幅縮短。
以下係參照所附圖式敘述本揭露提出之實施態樣,以描述相關程序與裝置。相關的結構細節例如PUF陣列和程序示例係如下面實施例內容所述,並以一種應用實施例之產生一PUF-ID的方法為例做說明。然而,但本揭露並非僅限於所述內容與態樣,本揭露並非顯示出所有可能的實施例。再者,實施例中相同或類似的標號係用以標示相同或類似之部分,而本揭露有可能還有未提出的其他實施態樣也可能可以應用。相關領域者可在不脫離本揭露之精神和範圍內對實施例之結構加以變化與修飾,以符合實際應用所需。因此,說明書和圖示內容僅作敘述實施例之用,而非作為限縮本揭露保護範圍之用。
再者,說明書與請求項中所使用的序數例如”第一”、”第二”、…等之用詞,以修飾請求項之元件,其本身並不意含及代表該請求元件有任何之前的序數,也不代表某一請求元件與另一請求元件的順序、或是製造方法上的順序,該些序數的使用僅用來使具有某命名的一請求元件得以和另一具有相同命名的請求元件能作出清楚區分。
第1圖係簡繪本揭露一實施例之一種裝置之簡示圖。實施例提出之裝置係包括一基板10,具有一主功能區域A
C和一次功能區域(sub-function region)例如是PUF區域(PUF region)A
PUF。一實施例中,一可程式記憶體陣列(例如是一PUF陣列)係設置於PUF區域A
PUF中,而一主功能電路 (i.e.任務功能電路)則設置於主功能區域A
C中。一實施例中,一PUF陣列例如包括複數個可程式化電阻式記憶體(programmable resistance memory cells)具有電晶體,例如PUF-金氧半場效電晶體(PUF-MOSFET(1T))。
一可程式化電阻式記憶體一般係包括一第一電極(first electrode)、第二電極(second electrode)、和位於第一電極和第二電極之間的一可程式化金屬氧化物記憶元件(programmable metal oxide memory element)。在一形成程序(forming procedure)中,形成脈衝(forming pulse)可具有高到足以在記憶體的可程式化金屬氧化物記憶元件中生成一導電部分的電壓。在一些金屬氧化物記憶體材料中,此導電部分能夠包括由跨越材料的電場所引發並排列以提供一導電路徑的氧空缺(oxygen vacancies)。施加到可程式化電阻式記憶體的形成脈衝,能夠使第一子集中之可程式化電阻式記憶體(first subset of the programmable resistance memory cells)形成導電細絲(conductive filament)連接其第一電極和第二電極,且使得第二子集中之記憶體未形成可連接第一電極和第二電極的導電細絲。於是,第一子集中的記憶體能夠在一低阻值狀態(low resistance state,LRS),而第二子集中的記憶體能夠在一高阻值狀態(high resistance state,HRS)。在形成程序之後,於一程式化程序(例如設置(SET)程序)期間,施加到第一子集和第二子集之可程式化電阻式記憶體的程式化脈衝(programming pulse),能夠穩定並加強第一子集中記憶體(i.e. LRS記憶體)的導電細絲之導電性,並且第二子集中的記憶體在程式化程序之後仍然維持高阻值狀態(亦即,仍未形成導電細絲)。前述低阻值狀態和高阻值狀態能夠用於在資料集中指示數位資訊「1」或「0」。
第2圖係為本揭露一實施例之應用中包括8×8個可程式化電阻式記憶體之PUF陣列所產生的位元映像(bit-mapping)示意圖。根據一實施例,具有開啟的電晶體之可程式化電阻式記憶體(i.e. 記憶體在低阻值狀態且大量電流可通過該些記憶體)係提供數位資訊“0”,具有關閉的電晶體之可程式化電阻式記憶體(i.e. 記憶體在高阻值狀態,且沒有或是極小的電流通過該些記憶體)係提供數位資訊“1”,因此在電源開啟狀態下(power-up state)於一陣列中引起的無規則數位資訊所構成的組合(如第2圖所示之其中一種數位資訊組合)可於實際應用中做為一個特殊的晶片指紋(chip “fingerprint”)之用。
在形成程序和程式化程序(例如設置(SET)程序)執行後,必須檢查PUF陣列之可程式化電阻式記憶體的數位資訊“0”相對於數位資訊“1”的亂度。數位資訊“0”相對於數位資訊“1”的一理想亂度(其指出PUF陣列之低阻值狀態和高阻值狀態)約為50%相對於50%,此理想亂度可提供在辨識度上具有高度特殊性的PUF-ID。若經檢查後的亂度不在可接受的亂度範圍內,則將對PUF陣列的所有記憶體再次進行如上述之形成程序和程式化程序。實施例之方法係提供一種簡單快速的方式以估算PUF陣列的亂度。
第3A圖係為根據本揭露一實施例之一種物理不可複製函數辨識之產生方法流程圖。於一實施例中,係提供包括複數個可程式化電阻式記憶體(programmable resistance memory cells)之一PUF陣列(PUF array)(步驟301)。對PUF陣列之所有可程式化電阻式記憶體進行一形成程序(forming procedure)和一程式化程序(programing procedure)(例如設置(SET)程序)(步驟302)。然後,進行一估算程序(estimation process)以估算該PUF陣列之亂度,其估算方式是藉由將一基礎單元(base unit)(例如沒有ReRAM的MOSFET)之一參考電流(reference current,I
Ref)與通過所有可程式化電阻式記憶體之一電流總和(a total current,I
Total)進行比較,而得到一PUF亂度(a PUF randomness)(步驟303)。在估算程序後,根據估算程序而決定出一亂度設定結果(a setting result of randomness)(步驟304)。根據亂度設定結果而產生一PUF-ID(步驟305)。於一示例中,產生的一PUF-ID可以是(但不限制是)一組資料由數位值“0”和“1”組成,例如“00010101”、“01001001101”、...等等。
再者,形成程序、程式化(ex: SET)程序和估算程序係重複進行,直到得到的PUF亂度落在一預定理想亂度範圍(a pre-determined ideal range of randomness)內為止。於一示例中,預定理想亂度範圍係為接近一理想PUF亂度例如50%的數位資訊“0”相對於50%的數位資訊“1”的一範圍。第3B圖為一實施例中一示例之根據估算程序而決定一亂度設定結果之流程圖。如步驟3031,將PUF亂度與一預定理想亂度範圍進行比較。若估算之PUF亂度落在預定理想亂度範圍內,則決定一亂度設定結果(步驟 304)。若估算之PUF亂度落在預定理想亂度範圍之外,則令所有可程式化電阻式記憶體再次進行形成程序和該程式化程序(亦即再次進行步驟 302),之後進行估算程序(步驟 303)以獲得一重建之PUF亂度(a re-created PUF randomness)。
根據實施例之一估算程序,係用來計算一PUF陣列之亂度。一PUF陣列之亂度(如步驟303所述)可藉由比較一基礎單元(例如沒有ReRAM的MOSFET)之一參考電流(reference current,I
Ref)與通過所有可程式化電阻式記憶體之一電流總和(a total current,I
Total)而得。以下係提出一示例以敘述一基礎單元之一參考電流、一PUF陣列之一電流總和的計算以及決定一PUF陣列之一PUF亂度。再者,以下示例的一PUF陣列之可程式化電阻式記憶體係排列成3´3陣列(i.e. PUF陣列包括9個可程式化電阻式記憶體)。
第4圖繪示根據本揭露一實施例之一PUF陣列和電性連接PUF陣列之相關單元之示意圖。PUF陣列共包括9個可程式化電阻式記憶體且排列成3´3陣列,其中一位元線BL連接同一行的記憶體,一字元線WL連接同一列的記憶體,一源極線SL亦連接同一行的記憶體。電性連接PUF陣列之相關單元包括一第一控制單元(first controlling unit)41電性連接至記憶體的該些字元線,一第二控制單元(second controlling unit)42電性連接至記憶體的該些位元線,以及一第三控制單元(third controlling unit)43電性連接至記憶體的該些源極線。於一實施例中,第一控制單元41、第二控制單元42以及第三控制單元43例如是數據多工器(multiplexers)可控制施加到字元線、位元線和源極線之電壓。電性連接PUF陣列之相關單元更包括一第一感測放大器(a first sensing amplifier)SA1、一第二感測放大器(a second sensing amplifier)SA2和一第三感測放大器(a third sensing amplifier)SA3 ,以分別感測通過第一行、第二行、第三行之記憶體的電流。進行估算程序時,係施加預定電壓而選擇所有可程式化電阻式記憶體,之後讀取一總電流,例如讀取通過如第4圖所示之各行記憶體之電流的總和。可藉由一程序單元(processing unit)46 (設置於如後第6圖所示之一程式控制器(program controller)640處)來計算和獲得電流總和,且一開關單元(switch unit)45設置於程序單元46和感測放大器(i.e., SA1, SA2 and SA3)之間以保護程序單元46(以及保護程式控制器640)。對於呈一高電阻狀態(high resistance state,HRS)之一可程式化電阻式記憶體,僅一極小電流通過HRS記憶體而在感測到的電流總和中可以被忽略。對於呈一低電阻狀態(low resistance state,LRS)之一可程式化電阻式記憶體,在供給電壓後電流通過LRS記憶體,此電流約等於通過一基礎單元(base unit)(例如沒有ReRAM的MOSFET)之一電流。因此,感測到的電流總和越大,PUF陣列中LRS記憶體數目所佔的百分比就越大。
第5圖繪示一沒有ReRAM的MOSFET以作為實施例之一示例的基礎單元(base unit)的電流-電壓特性曲線(I-V curves)。 第6A-6C圖繪示根據實施例之示例中PUF陣列之LRS和HRS記憶體的三種組合。請同時參照第5圖和第6A-6C圖。
此示例中,估算程序期間,係以沒有ReRAM的一MOSFET(閘極寬度=0.42µm,閘極長度=0.18µm)作為一基礎單元。如第5圖所示,係繪示以不同電壓(i.e. 閘極電壓V
g=0V, 1V, 2V, 3V, 4V)施加於字元線的5條曲線,其中V
D是施加於位元線的讀取電壓。示例中,可根據一基礎單元的I-V特性曲線來決定一參考電流(reference current,I
Ref)。如第5圖所示,一參考電流可定為450 µÅ (在閘極電壓V
g=4V和讀取電壓V
D=1V條件下)。
在進行形成程序和程式化(ex: SET)程序之後,PUF陣列中各個可程式化電阻式記憶體(標示為“ReRAM-PUF”)可能是呈一低電阻狀態 (LRS)或一高電阻狀態(HRS)。在進行估算程序之前,如第6A圖(/第6B圖/第6C圖)所示之PUF陣列中HRS記憶體和LRS記憶體的數目是未知的。根據實施例之一估算程序,第6A圖之一電流總和係約為450 µÅ,此係藉由對PUF陣列中所有可程式化電阻式記憶體施加4V於字元線和1V於位元線而獲得(0V於源極線)。根據實施例之估算方法,呈一低電阻狀態(LRS)之可程式化電阻式記憶體的一數目係由電流總和(I
Total)相對於參考電流(I
Ref)之一比例(ratio)而決定(取最接近的整數值)。亦即,I
Tata/I
Ref。因此,電流總和(I
Total)450 µÅ相對於參考電流(I
Ref)450 µÅ之比例等於1。這表示,第6A圖之PUF陣列具有1個低電阻狀態(LRS)之可程式化電阻式記憶體,LRS記憶體數目所佔的百分比約11%。因此,第6A圖之PUF陣列的PUF亂度係為11% (低電阻)對89%(高電阻),此結果距離一理想亂度(i.e. 50%對50%)甚遠。因此,這些可程式化電阻式記憶體需要再次進行形成程序和程式化(ex: SET)程序(藉由修改變化形成程序和程式化程序的操作條件),以建立出LRS記憶體和HRS記憶體的另外組合(i.e.重新建立記憶體內的導電細絲),並且之後進行估算程序以檢查重建後更新的PUF亂度(i.e. 進行如第3B圖所示之步驟3031、302和303)。在逐個記憶體檢查的方式重新檢查第6A圖之PUF陣列,其結果顯示第6A圖之PUF陣列有8個HRS記憶體和1個LRS記憶體,此與實施例之估算方法的結果吻合。 因此PUF陣列之PUF亂度可以被快速地和簡單地以實施例之估算程序所判斷出來,實施例係提供了一種節省時間的亂度估算方式。
類似的,根據實施例之一估算程序,第6B圖之一電流總和係約為1800(=450*4)µÅ,此係藉由對第6B圖之PUF陣列中所有可程式化電阻式記憶體施加4V於字元線和1V於位元線而獲得(0V於源極線)。電流總和(I
Total)1800µÅ相對於參考電流(I
Ref)450 µÅ(第5圖)之比例等於4。這表示,第6B圖之PUF陣列具有4個低電阻狀態(LRS)之可程式化電阻式記憶體,LRS記憶體數目所佔的百分比約44%。。因此,第6B圖之PUF陣列的PUF亂度係為44% (低電阻)對56%(高電阻)。
類似的,根據實施例之一估算程序,第6C圖之一電流總和係約為3150(=450*7)µÅ,此係藉由對第6C圖之PUF陣列中所有可程式化電阻式記憶體施加4V於字元線和1V於位元線而獲得(0V於源極線)。電流總和(I
Total)3150µÅ相對於參考電流(I
Ref)450 µÅ(第5圖)之比例等於7。這表示,第6B圖之PUF陣列具有7個低電阻狀態(LRS)之可程式化電阻式記憶體,LRS記憶體數目所佔的百分比約78%。。因此,第6B圖之PUF陣列的PUF亂度係為78% (低電阻)對22%(高電阻),此將落在預定理想亂度範圍之外。
於一示例中,若當呈一低電阻狀態(LRS)之可程式化電阻式記憶體的一數目為PUF陣列之所有可程式化電阻式記憶體之總數的40%-60%被視為PUF亂度的一可接受範圍時,“40%-60% (LR) 對60%-40% (HR)”可被選擇做為一預定理想亂度範圍。若PUF亂度(例如第6B圖之44%(LR)對56%(HR))落在預定理想亂度範圍內,則可決定出亂度設定結果(setting result of randomness)(如第3B圖之步驟304),且根據亂度設定結果而產生一PUF-ID(如第3A圖之步驟305,且產生的PUF-ID例如是儲存於之後敘述的安全邏輯單元625)。
因此,施加於一基礎單元和一PUF陣列之導線(例如字元線和位元線)的電壓必須相同,以獲得用來相比較之基礎單元的一參考電流和PUF陣列的一電流總和。於一示例中,這亦可表示為,藉由分別施加一第一電壓和一第二電壓於基礎單元之電晶體的一閘極和一汲極,而得到實施例之一參考電流(I
Ref);而藉由分別施加該第一電壓和該第二電壓於PUF陣列之所有可程式化電阻式記憶體之字元線(WL)和位元線(BL)而得到一電流總和(I
Total)。再者,若PUF陣列共包括Q個可程式化電阻式記憶體,且呈低電阻狀態之可程式化電阻式記憶體的數目係為X(根據上述I
Total/I
Ref之比例而決定),則PUF亂度可表示為:(X/Q)´100% 對((Q-X)/Q)´100%,其中X和Q皆為正整數。藉由比較PUF亂度與一預定理想亂度範圍,根據估算程序而選擇一亂度設定結果(ex: 步驟304)或是重複進行形成程序、程式化程序和估算程序(ex: 如第3B圖之步驟3031、302和303)…等,都可以被決定。
雖然第4圖(或第6A-6C圖)所示例的PUF陣列是一3´3 陣列,實際應用實並不僅限於此數目和排列方式之陣列。應用之一PUF陣列可能包括m´n個(m行和n列,記憶體總數為m´n)可程式記憶體之一矩陣型態的陣列、或其他記憶體排列型態。實施例提出之方法係適用於許多不同的記憶體排列型態,也不僅限於矩陣型態之陣列。再者,上述基礎單元在讀取電壓1V時所得到之參考電流(I
Ref) 450 µÅ,係為一示例值,僅用來示範說明實施例之估算程序,而非用以限制本揭露。讀取電壓(V
D)可以下降以降低所得到的電流總和(I
total)。 例如,當讀取電壓下降至0.01V時,基礎單元之參考電流(I
Ref)可降至例如約1uA。 對於一個具有最佳亂度(50%低電阻狀態之記憶體,50% 高電阻狀態之記憶體)之1K 位元PUF陣列的應用,當讀取電壓為0.01V時所得到的電流總和為500uA。因此於一讀取電流之應用中使用一適當讀取電壓係有利於得到一適當的電流總和,亦可避免金屬線遷移(metal line migration)的問題。
第7圖為根據一應用例之一實施例中具有PUF-ID之裝置的方塊圖。
於此應用示例中,一裝置包括一積體電路600,具有一可程式記憶體陣列630(例如一PUF陣列包括複數個可程式化電阻式記憶體,設置於一基板之一PUF區域中)和一控制器(例如一程式控制器640),可程式記憶體陣列630可產生一或多組資料(one or more data sets)。可選擇其中一組資料(例如數位資訊“0”和“1”亂度接近50%和50%)為一最適資料組(optimum data set)(i.e. PUF-ID),以做為晶片的“指紋”。根據實施例,程式控制器640(設置於基板上且例如利用匯流排641與可程式記憶體陣列630耦接)執行以下步驟包括:對該可程式記憶體陣列包括之所有可程式化電阻式記憶體進行一形成程序(forming procedure)和一程式化(ex: SET)程序(如第3A圖之步驟302),其中可程式記憶體陣列在執行程式化程序後可產生一或多組資料(one or more data sets);進行一估算程序(estimation process)以估算PUF陣列之亂度,其藉由將一基礎單元(ex:無ReRAM之MOSFET)之一參考電流(I
Ref)與通過所有可程式化電阻式記憶體之一電流總和(I
Total)進行比較,而得到一PUF亂度(a PUF randomness)(如第3A、3B圖之步驟303);根據該估算程序而決定一亂度設定結果(如第3A、3B圖之步驟304);和根據亂度設定結果而產生一PUF-ID(如第3A圖之步驟305)。
於此示例之裝置中,程式控制器640可提供訊號以控制偏壓配置供給電壓之應用(application of bias arrangement supply voltages),而對可程式記憶體陣列之記憶體單元執行形成程序、和程式化(ex: SET)程序(如第3A圖之步驟302)和其他與存取可程式記憶體陣列630相關之操作,且程式控制器640亦讀取在執行程式化程序後所產生的一或多組資料並執行估算程序。
積體電路600包括主功能電路(mission function circuit)610,可包括特殊目的之邏輯電路(有時可稱做特殊應用積體電路)、例如用在微型處理器和數位訊號處理器的數據處理來源、大型記憶體例如快閃記憶體、動態隨機存取記憶體、可程式化電阻式記憶體,和於一晶片中習知可應用之各種形態電路的組合。積體電路600包括一輸入/輸出介面(input/output(I/O) interface)620,其具有無線或有線埠使其他元件或網路可藉此存取。於此示例中,一存取控制單元615係設置於輸入/輸出介面620與主功能電路610之間。存取控制單元615利用匯流排616耦接至輸入/輸出介面620,且利用匯流排611耦接至主功能電路610。存取控制單元615可執行一存取控制協議(access control protocol)以致使或拒絕輸入/輸出介面620與主功能電路610之間的溝通。
為協助存取控制單元615,示例中更包括一安全邏輯單元(security logic unit)625設置於晶片中。安全邏輯單元625係與可程式記憶體陣列630電性連接,且安全邏輯單元625可以自一或多組資料中選擇儲存一特殊資料組(one unique data set)作為PUF-ID。安全邏輯單元625可通過程式控制器640(例如PUF程式控制器)和匯流排631獲得此特殊資料組(i.e. the PUF-ID),且安全邏輯單元625係利用此特殊資料組(儲存於安全邏輯單元625)通過匯流排622與存取控制單元615溝通。
根據上述,係提出一種物理不可複製函數辨識(PUF-ID)之產生方法及產生一PUF-ID之裝置。根據實施例之方法,一PUF陣列之可程式化電阻式記憶體之阻值狀態的一亂度,可以用一簡單方式迅速地被判斷出來。因此,可迅速決定是否需要對PUF陣列之可程式化電阻式記憶體再次執行形成程序和程式化程序(例如設置程序)以重新獲得一個低阻值和高阻值狀態的新組合。據此,利用實施例之方法,可使產生一具有高度特殊性之PUF-ID(使PUF陣列亂度達到接近一理想PUF亂度例如,50%的數位資訊“0”相對於50%的數位資訊“1”)所需要的時間可以大幅降低。再者,根據實施例之方法,一PUF陣列的亂度估算(randomness estimation)可以精準地被估算出來,而可正確地獲得PUF陣列之阻值相關資訊。因此,根據實施例之PUF-ID產生方法不僅大幅節省PUF亂度估算所需的時間,還提供了本質上確實具有高度特殊性之一PUF-ID。
其他實施例,例如元件/裝置的已知構件有不同的設置與排列等,亦可能可以應用,係視應用時之實際需求與條件而可作適當的調整或變化。因此,說明書與圖式中所示之結構僅作說明之用,並非用以限制本揭露欲保護之範圍。另外,相關技藝者當知,實施例中構成部件的形狀和位置以及方法步驟的細節亦並不限於圖示所繪之態樣,亦是根據實際應用時之需求和/或製造步驟在不悖離本揭露之精神的情況下而可作相應調整。
綜上所述,雖然本發明已以實施例揭露如上,然其並非用以限定本發明。本發明所屬技術領域中具有通常知識者,在不脫離本發明之精神和範圍內,當可作各種之更動與潤飾。因此,本發明之保護範圍當視後附之申請專利範圍所界定者為準。
APUF‧‧‧PUF區域
AC‧‧‧主功能區域
10‧‧‧基板
201‧‧‧基板表面
301-305、3031‧‧‧步驟
41‧‧‧第一控制單元
42‧‧‧第二控制單元
43‧‧‧第三控制單元
SA1‧‧‧第一感測放大器
SA2‧‧‧第二感測放大器
SA3‧‧‧第三感測放大器
45‧‧‧開關單元
46‧‧‧程序單元
600‧‧‧積體電路
610‧‧‧主功能電路
615‧‧‧存取控制單元
620‧‧‧輸入/輸出介面
625‧‧‧安全邏輯單元
630‧‧‧可程式記憶體陣列
640‧‧‧程式控制器
616、622、631、641‧‧‧匯流排
WL‧‧‧字元線
BL‧‧‧位元線
SL‧‧‧源極線
AC‧‧‧主功能區域
10‧‧‧基板
201‧‧‧基板表面
301-305、3031‧‧‧步驟
41‧‧‧第一控制單元
42‧‧‧第二控制單元
43‧‧‧第三控制單元
SA1‧‧‧第一感測放大器
SA2‧‧‧第二感測放大器
SA3‧‧‧第三感測放大器
45‧‧‧開關單元
46‧‧‧程序單元
600‧‧‧積體電路
610‧‧‧主功能電路
615‧‧‧存取控制單元
620‧‧‧輸入/輸出介面
625‧‧‧安全邏輯單元
630‧‧‧可程式記憶體陣列
640‧‧‧程式控制器
616、622、631、641‧‧‧匯流排
WL‧‧‧字元線
BL‧‧‧位元線
SL‧‧‧源極線
第1圖係簡繪本揭露一實施例之一種裝置之簡示圖。 第2圖係為本揭露一實施例之應用中包括8×8個可程式化電阻式記憶體之PUF陣列所產生的位元映像(bit-mapping)示意圖。 第3A圖係為根據本揭露一實施例之一種物理不可複製函數辨識之產生方法流程圖。 第3B圖為一實施例中一示例之根據估算程序而決定一亂度設定結果之流程圖。 第4圖繪示根據本揭露一實施例之一PUF陣列和電性連接PUF陣列之相關單元之示意圖。 第5圖繪示一沒有ReRAM的MOSFET以作為實施例之一示例的基礎單元(base unit)的電流-電壓特性曲線。 第6A-6C圖繪示根據實施例之示例中PUF陣列之LRS和HRS記憶體的三種組合。 第7圖為根據一應用例之一實施例中具有PUF-ID之裝置的方塊圖。
Claims (10)
- 一種物理不可複製函數辨識(physically unclonable function identification,PUF-ID)之產生方法,包括: 提供一PUF陣列(PUF array),包括複數個可程式化電阻式記憶體(programmable resistance memory cells); 對該PUF陣列之所有的該些可程式化電阻式記憶體進行一形成程序(forming procedure)和一程式化程序(programing procedure); 進行一估算程序以估算該PUF陣列之亂度,其藉由將一基礎單元(base unit)之一參考電流(reference current,I Ref)與通過所有該些可程式化電阻式記憶體之一電流總和(a total current,I Total)進行比較,而得到一PUF亂度(PUF randomness); 根據該估算程序而決定一亂度設定結果;和 根據該亂度設定結果而產生一PUF-ID。
- 如申請專利範圍第1項所述之PUF-ID之產生方法,其中呈一低電阻狀態(low resistance state ,LRS)之該些可程式化電阻式記憶體的一數目係由該電流總和相對於該參考電流之一比例(ratio)而決定。
- 如申請專利範圍第2項所述之PUF-ID之產生方法,其中該PUF陣列包括Q個該些可程式化電阻式記憶體,且呈該低電阻狀態之該些可程式化電阻式記憶體的該數目係決定為X,則該PUF亂度係為:(X/Q)´100% 對((Q-X)/Q)´100%,其中X和Q皆為正整數, 其中當所估算之該PUF亂度在40%-60%對60%-40%之範圍內,係決定該亂度設定結果。
- 如申請專利範圍第1項所述之PUF-ID之產生方法,其中係藉由分別施加一第一電壓和一第二電壓於該基礎單元之一電晶體的一閘極和一汲極,而得到該參考電流(I Ref)。
- 如申請專利範圍第4項所述之PUF-ID之產生方法,其中係藉由分別施加該第一電壓和該第二電壓於所有該些可程式化電阻式記憶體之字元線(WL)和位元線(BL),而得到該電流總和(I Total)。
- 如申請專利範圍第1項所述之PUF-ID之產生方法,更包括: 將該PUF亂度與一預定理想亂度範圍(a pre-determined ideal range of randomness)進行比較,其中若該PUF亂度落在該預定理想亂度範圍內,則決定該亂度設定結果;若該PUF亂度落在該預定理想亂度範圍之外,則令所有該些可程式化電阻式記憶體再次進行該形成程序和該程式化程序。
- 如申請專利範圍第1項所述之PUF-ID之產生方法,其中係重複進行該形成程序、該程式化程序和該估算程序,直到得到的該PUF亂度落在一預定理想亂度範圍內為止。
- 如申請專利範圍第1項所述之PUF-ID之產生方法,其中當呈一低電阻狀態(LRS)之該些可程式化電阻式記憶體的一數目為該PUF陣列之該些可程式化電阻式記憶體之總數的40%-60%時,係決定該亂度設定結果。
- 一種具有物理不可複製函數辨識(PUF-ID)之裝置,包括: 一可程式記憶體陣列(programmable memory array),設置於一基板之一PUF區域中; 一程式控制器,設置於該基板上,且與該可程式記憶體陣列耦接,該程式控制器執行以下步驟包括: 對該可程式記憶體陣列包括之所有的複數個可程式化電阻式記憶體進行一形成程序(forming procedure)和一程式化程序(programing procedure),其中該可程式記憶體陣列在執行該程式化程序後可產生一或多組資料(one or more data sets); 進行一估算程序以估算該PUF陣列之亂度,其藉由將一基礎單元(base unit)之一參考電流(reference current,I Ref)與通過所有該些可程式化電阻式記憶體之一電流總和(a total current,I Total)進行比較,而得到一PUF亂度(PUF randomness); 根據該估算程序而決定一亂度設定結果;和 根據該亂度設定結果而產生一PUF-ID;以及 一安全邏輯單元(security logic unit),設置於該基板上且耦接至該程式控制器,其中該安全邏輯單元儲存該PUF-ID。
- 如申請專利範圍第9項所述之裝置,其中呈一低電阻狀態之該些可程式化電阻式記憶體的一數目係由該電流總和相對於該參考電流之一比例而決定,其中該可程式記憶體陣列包括Q個該些可程式化電阻式記憶體,且呈該低電阻狀態之該些可程式化電阻式記憶體的該數目係決定為X,則該PUF亂度係為: (X/Q)´100% 對((Q-X)/Q)´100%, 其中X和Q皆為正整數。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| TW106135371A TWI627555B (zh) | 2017-10-16 | 2017-10-16 | 物理不可複製函數辨識之產生方法及其產生之裝置 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| TW106135371A TWI627555B (zh) | 2017-10-16 | 2017-10-16 | 物理不可複製函數辨識之產生方法及其產生之裝置 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| TWI627555B true TWI627555B (zh) | 2018-06-21 |
| TW201917624A TW201917624A (zh) | 2019-05-01 |
Family
ID=63256162
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| TW106135371A TWI627555B (zh) | 2017-10-16 | 2017-10-16 | 物理不可複製函數辨識之產生方法及其產生之裝置 |
Country Status (1)
| Country | Link |
|---|---|
| TW (1) | TWI627555B (zh) |
Cited By (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| TWI734314B (zh) * | 2018-12-31 | 2021-07-21 | 美商美光科技公司 | 用於將數位指紋提供至主機裝置之系統、方法及非暫時性電腦可讀媒體 |
| TWI739471B (zh) * | 2020-06-11 | 2021-09-11 | 華邦電子股份有限公司 | 電阻式記憶體裝置以及其可靠度提升方法 |
| TWI832182B (zh) * | 2021-08-12 | 2024-02-11 | 台灣積體電路製造股份有限公司 | 物理不可複製功能裝置、半導體裝置以及操作方法 |
Families Citing this family (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| TWI750073B (zh) * | 2021-03-30 | 2021-12-11 | 力晶積成電子製造股份有限公司 | 具有保全功能的半導體裝置及其保全方法 |
Citations (7)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| TW200913627A (en) * | 2007-05-11 | 2009-03-16 | Validity Sensors Inc | Method and system for electronically securing an electronic device using physically unclonable functions |
| TW201303741A (zh) * | 2011-03-31 | 2013-01-16 | Iucf Hyu | 產生數位值的裝置與方法 |
| US20140035670A1 (en) * | 2012-08-03 | 2014-02-06 | International Business Machines Corporation | Fet pair based physically unclonable function (puf) circuit with a constant common mode voltage |
| CN104287717A (zh) * | 2014-09-30 | 2015-01-21 | 杭州电子科技大学 | 基于双电极的手指心电身份识别系统 |
| US20150177406A1 (en) * | 2012-07-13 | 2015-06-25 | Halliburton Energy Services, Inc. | System and method of focusing an array laterolog |
| TW201543486A (zh) * | 2014-03-07 | 2015-11-16 | Intel Corp | 使用電阻式記憶體裝置的物理性不可複製功能電路 |
| CN105676942A (zh) * | 2016-03-08 | 2016-06-15 | 宁波大学 | 一种偏差信号产生电路及多端口可配置puf电路 |
-
2017
- 2017-10-16 TW TW106135371A patent/TWI627555B/zh active
Patent Citations (7)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| TW200913627A (en) * | 2007-05-11 | 2009-03-16 | Validity Sensors Inc | Method and system for electronically securing an electronic device using physically unclonable functions |
| TW201303741A (zh) * | 2011-03-31 | 2013-01-16 | Iucf Hyu | 產生數位值的裝置與方法 |
| US20150177406A1 (en) * | 2012-07-13 | 2015-06-25 | Halliburton Energy Services, Inc. | System and method of focusing an array laterolog |
| US20140035670A1 (en) * | 2012-08-03 | 2014-02-06 | International Business Machines Corporation | Fet pair based physically unclonable function (puf) circuit with a constant common mode voltage |
| TW201543486A (zh) * | 2014-03-07 | 2015-11-16 | Intel Corp | 使用電阻式記憶體裝置的物理性不可複製功能電路 |
| CN104287717A (zh) * | 2014-09-30 | 2015-01-21 | 杭州电子科技大学 | 基于双电极的手指心电身份识别系统 |
| CN105676942A (zh) * | 2016-03-08 | 2016-06-15 | 宁波大学 | 一种偏差信号产生电路及多端口可配置puf电路 |
Cited By (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| TWI734314B (zh) * | 2018-12-31 | 2021-07-21 | 美商美光科技公司 | 用於將數位指紋提供至主機裝置之系統、方法及非暫時性電腦可讀媒體 |
| US11868513B2 (en) | 2018-12-31 | 2024-01-09 | Micron Technology, Inc. | Physical unclonable function at a memory device |
| TWI739471B (zh) * | 2020-06-11 | 2021-09-11 | 華邦電子股份有限公司 | 電阻式記憶體裝置以及其可靠度提升方法 |
| TWI832182B (zh) * | 2021-08-12 | 2024-02-11 | 台灣積體電路製造股份有限公司 | 物理不可複製功能裝置、半導體裝置以及操作方法 |
| US12249371B2 (en) | 2021-08-12 | 2025-03-11 | Taiwan Semiconductor Manufacturing Company, Ltd. | Reconfigurable in-memory physically unclonable function |
Also Published As
| Publication number | Publication date |
|---|---|
| TW201917624A (zh) | 2019-05-01 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US10103895B1 (en) | Method for physically unclonable function-identification generation and apparatus of the same | |
| US10410719B2 (en) | Non-volatile memory device including a memory cell in a variable state and a memory cell in an initial state | |
| TWI713312B (zh) | 具非揮發性記憶體的隨機碼產生器 | |
| EP3133603B1 (en) | Code generating apparatus and one time programming block | |
| US9898598B2 (en) | Authentication system having a non-volatile memory including memory cells in initial or variable states and a host computer for performing authentication therebetween | |
| CN109427408B (zh) | 用于物理不可克隆功能安全的otp存储器单元 | |
| TWI627555B (zh) | 物理不可複製函數辨識之產生方法及其產生之裝置 | |
| US10049734B2 (en) | Data storing method of non-volatile memory device by assigning an initial state to data | |
| TWI643090B (zh) | 反熔絲物理不可複製電路以及相關控制方法 | |
| US9921975B2 (en) | Cryptographic processing device having a non-volatile memory including memory cells in an initial or a variable state | |
| US10439829B1 (en) | Physical unclonable function code generating method and providing apparatus thereof | |
| US9811689B1 (en) | Chip ID generation using physical unclonable function | |
| JP2016105278A (ja) | 耐タンパ性を有する不揮発性メモリ装置、および集積回路カード | |
| TWI708247B (zh) | 用於編程可編程電阻性記憶元件之方法與其記憶體 | |
| Liu et al. | X-point PUF: Exploiting sneak paths for a strong physical unclonable function design | |
| CN111630598A (zh) | 非易失性存储装置以及其写入方法 | |
| US9852791B1 (en) | Semiconductor memory device, chip ID generation method thereof and manufacturing method thereof | |
| JP2020102827A (ja) | 不揮発性メモリ装置およびチャレンジ・レスポンス方法 | |
| CN108615539B (zh) | 用于编程可编程电阻性存储元件的方法与设备 | |
| CN109753830B (zh) | 物理不可克隆函数编码的产生方法及其产生的装置 | |
| US11727986B2 (en) | Physically unclonable function (PUF) generation involving programming of marginal bits | |
| CN108241807B (zh) | 半导体存储器装置,芯片标识符产生方法与制造方法 | |
| CN108538880B (zh) | 半导体元件及具有此半导体元件的装置 | |
| CN111314058B (zh) | 物理不可复制功能码产生方法及其提供装置 | |
| TWI678892B (zh) | 物理不可複製功能碼產生方法及其提供裝置 |