TWI627555B - method for physically unclonable function-identification generation AND apparatus of THE SAME - Google Patents

method for physically unclonable function-identification generation AND apparatus of THE SAME Download PDF

Info

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
Application number
TW106135371A
Other languages
Chinese (zh)
Other versions
TW201917624A (en
Inventor
曾柏皓
林昱佑
許凱捷
李峰旻
Original Assignee
旺宏電子股份有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 旺宏電子股份有限公司 filed Critical 旺宏電子股份有限公司
Priority to TW106135371A priority Critical patent/TWI627555B/en
Application granted granted Critical
Publication of TWI627555B publication Critical patent/TWI627555B/en
Publication of TW201917624A publication Critical patent/TW201917624A/en

Links

Landscapes

  • Semiconductor Memories (AREA)
  • Read Only Memory (AREA)

Abstract

一種PUF-ID之產生方法,包括:提供一PUF陣列,包括複數個可程式化電阻式記憶體;對PUF陣列之所有可程式化電阻式記憶體進行一形成程序和一程式化程序;進行一估算程序以估算PUF陣列之亂度,其藉由將一基礎單元之一參考電流與通過所有可程式化電阻式記憶體之一電流總和進行比較,而得到一PUF亂度;根據估算程序而決定一亂度設定結果;和根據亂度設定結果而產生一PUF-ID。A method for generating a PUF-ID, comprising: providing a PUF array, including a plurality of programmable resistive memories; performing a forming process and a stylizing program on all programmable resistive memories of the PUF array; Estimating the program to estimate the turmoil of the PUF array by comparing a reference current of a base unit with a sum of currents through one of all programmable resistive memories to obtain a PUF disorder; determining according to an estimation procedure A turbidity setting result; and a PUF-ID is generated according to the ambiguity setting result.

Description

物理不可複製函數辨識之產生方法及其產生之裝置Method for generating physical non-reproducible function identification and device for generating same

本發明是有關於一種物理不可複製函數(physically unclonable function,PUF)辨識(identification,ID)之產生方法及產生一PUF-ID之裝置,且特別是有關於一種包括估算和決定PUF亂度(randomness)的一種產生PUF-ID之方法及其裝置。The present invention relates to a physical unclonable function (PUF) identification (ID) generation method and a device for generating a PUF-ID, and particularly relates to an estimation and determination of PUF disorder (randomness) A method of generating a PUF-ID and an apparatus therefor.

物理不可複製函數(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)。 Physically unclonable function (PUF) is a hardware intrinsic security (HIS) that generates a wafer "fingerprint" to construct a secure authentication mechanism. Applying PUF avoids physical attacks that attempt to steal digital information from the chip. Static Random Access Memory (SRAM) is one of the common implementations of PUF applications that utilizes a threshold voltage difference in a power supply state to generate a wafer identification code. However, the construction of the SRAM PUF (for example, including six transistors) occupies a large size, which may affect the size of the PUF array to be reduced. Furthermore, the SRAM PUF is susceptible to environmental factors such as the SRAM PUF being quite sensitive to interference caused by temperature variations and voltage level variations (eg, supply voltage V DD ). The hamming distances between the SRAM PUFs increase with increasing temperature, resulting in an increase in the bit error rate (BER). Therefore, although SRAM PUF can provide PUF applications with irregularity and uniqueness, the lack of reliability due to the noise induced instability is one of the main concerns of SRAM PUF applications. . Therefore, for a PUF application with good performance, the bit error rate of the PUF identification (PUF-ID) required to be generated is lowered, and high uniqueness is also required in the recognition degree.

再者,一PUF陣列之例如數位資訊“0”相對於數位資訊“1”的一理想亂度(其指出PUF陣列之低阻值狀態和高阻值狀態)約為50%相對於50%,此理想亂度可提供在辨識度上具有高度特殊性的PUF-ID。傳統上,一PUF陣列之記憶體之阻值係以一個位元接著一個位元的方式進行檢查以決定其阻值狀態,非常耗時,也不適合應用於大型PUF陣列(例如64位元、256位元、1k位元…等等)之阻值檢查。Moreover, an ideal degree of disorder of the digital information "0" of a PUF array relative to the digital information "1" (which indicates a low resistance state and a high resistance state of the PUF array) is about 50% relative to 50%, This ideal chaos provides a highly specific PUF-ID in recognition. Traditionally, the resistance of a PUF array's memory is checked by one bit and then one bit to determine its resistance state. It is very time consuming and is not suitable for large PUF arrays (eg 64 bits, 256 bits). Resistance check of bit, 1k bit, etc.).

本發明係有關於一種物理不可複製函數辨識(physically unclonable function identification,PUF-ID)之產生方法及產生PUF-ID之裝置。根據實施例之方法,可以快速地和簡單地判斷出一PUF陣列之可程式化電阻式記憶體(programmable resistance memory cells)之阻值狀態。The present invention relates to a method for generating a physically unclonable function identification (PUF-ID) and a device for generating a PUF-ID. According to the method of the embodiment, the resistance state of the programmable resistance memory cells of a PUF array can be quickly and simply determined.

根據一實施例,提出一種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。 According to an embodiment, a PUF-ID generation method is provided, including: providing a PUF array (PUF array), including a plurality of programmable resistive memories; performing a programmable resistive memory on the PUF array Forming procedure and a programming procedure; performing an estimation procedure to estimate the disorder of the PUF array by using a reference current (I Ref ) of a base unit Comparing with a total current (I Total ) of all programmable resistive memories to obtain a PUF randomness; determining a turbidity setting result according to the estimation procedure; The PUG-ID is generated by setting the result in disorder.

根據一實施例,再提出一種具有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。According to an embodiment, a device having a PUF-ID is further provided, comprising: a programmable memory array disposed in a PUF region of a substrate; a program controller disposed on the substrate And coupled to the programmable memory array; and a security logic unit is disposed on the substrate and coupled to the program controller. The program controller performs the following steps: performing a forming process and a stylizing program on all of the plurality of programmable resistive memories included in the programmable memory array, wherein the programmable memory array is executable after the program is executed Generate one or more data sets; perform an estimation procedure to estimate the turbulence of the PUF array by passing a reference current of one of the base cells with a current through one of all programmable resistive memories The sum is compared to obtain a PUF randomness; a turbidity setting result is determined according to the estimation procedure; and a PUF-ID is generated according to the ambiguity setting result. The security logic unit stores the PUF-ID.

為了對本發明之上述及其他方面有更佳的瞭解,下文特舉實施例,並配合所附圖式詳細說明如下。In order to provide a better understanding of the above and other aspects of the present invention, the following detailed description of the embodiments and the accompanying drawings.

根據本揭露之實施例,係提出一種物理不可複製函數(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所需要的時間可以大幅縮短。According to an embodiment of the present disclosure, a method for generating a physical unclonable function (PUF) identification (ID) and a device for generating a PUF-ID are proposed. According to the method of the embodiment, a disorder of the resistance state of the programmable resistance memory cells of a PUF array can be quickly and simply determined, and whether the PUF array is needed can be determined. The programmable resistive memory again performs a forming procedure and a programming procedure (such as a setup (SET) procedure) to bring the PUF array ambiguity to near an ideal PUF disorder (eg, 50%) The digital information "0" is relative to 50% of the digital information "1"). Therefore, with the PUF-ID generation method proposed by the present disclosure, the time required for the PUF array of the application to generate a PUF-ID can be greatly shortened.

以下係參照所附圖式敘述本揭露提出之實施態樣,以描述相關程序與裝置。相關的結構細節例如PUF陣列和程序示例係如下面實施例內容所述,並以一種應用實施例之產生一PUF-ID的方法為例做說明。然而,但本揭露並非僅限於所述內容與態樣,本揭露並非顯示出所有可能的實施例。再者,實施例中相同或類似的標號係用以標示相同或類似之部分,而本揭露有可能還有未提出的其他實施態樣也可能可以應用。相關領域者可在不脫離本揭露之精神和範圍內對實施例之結構加以變化與修飾,以符合實際應用所需。因此,說明書和圖示內容僅作敘述實施例之用,而非作為限縮本揭露保護範圍之用。The embodiments of the present disclosure are described below with reference to the accompanying drawings to describe related procedures and apparatus. Related structural details such as the PUF array and program examples are as described in the following embodiments, and an example of a PUF-ID for generating an application embodiment is taken as an example. However, the disclosure is not limited to the content and aspects, and the disclosure does not show all possible embodiments. In the embodiments, the same or similar reference numerals are used to designate the same or similar parts, and the present disclosure may also be applied to other embodiments that are not proposed. Variations and modifications of the structure of the embodiments can be made in the relevant embodiments without departing from the spirit and scope of the disclosure. Therefore, the description and illustration are for illustrative purposes only and are not intended to be limiting.

再者,說明書與請求項中所使用的序數例如”第一”、”第二”、…等之用詞,以修飾請求項之元件,其本身並不意含及代表該請求元件有任何之前的序數,也不代表某一請求元件與另一請求元件的順序、或是製造方法上的順序,該些序數的使用僅用來使具有某命名的一請求元件得以和另一具有相同命名的請求元件能作出清楚區分。Furthermore, the use of ordinal numbers such as "first", "second", ..., etc., as used in the specification and claims, to modify the elements of the claim, is not intended to be The ordinal does not represent the order of a request element and another request element, or the order of the manufacturing method. The use of these ordinals is only used to make a request element with a certain name have the same named request. Components can be clearly distinguished.

第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))。 BRIEF DESCRIPTION OF THE DRAWINGS Figure 1 is a simplified pictorial illustration of an apparatus in accordance with an embodiment. The device proposed in the embodiment includes a substrate 10 having a main functional area A C and a sub-function region such as a PUF region A PUF . In one embodiment, a programmable memory array (eg, a PUF array) is disposed in the PUF area A PUF , and a main function circuit (ie task function circuit) is disposed in the main function area A C . In one embodiment, a PUF array includes, for example, a plurality of programmable resistance memory cells having a transistor, such as a PUF-gold oxide half field effect transistor (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」。A programmable resistive memory generally includes a first electrode, a second electrode, and a programmable metal oxide memory element between the first electrode and the second electrode ( Programmable metal oxide memory element). In a forming procedure, the forming pulse can have a voltage high enough to generate a conductive portion in the programmable metal oxide memory device of the memory. In some metal oxide memory materials, the conductive portion can include oxygen vacancies that are initiated and arranged across the electrical location of the material to provide a conductive path. The formation pulse applied to the programmable resistive memory enables the first subset of the programmable resistance memory cells to form a conductive filament connected to the first electrode And the second electrode, and the memory of the second subset does not form a conductive filament connectable to the first electrode and the second electrode. Thus, the memory in the first subset can be in a low resistance state (LRS), while the memory in the second subset can be in a high resistance state (HRS). After the program is formed, during a stylized program (such as a setup (SET) program), the programming pulse applied to the programmable subset of the first subset and the second subset can be stabilized. And enhancing the conductivity of the conductive filaments of the first subset of memory (ie LRS memory), and the memory of the second subset remains in a high resistance state after the stylization procedure (ie, the conductive thin is still not formed) wire). The low resistance state and the high resistance state can be used to indicate the digital information "1" or "0" in the data set.

第2圖係為本揭露一實施例之應用中包括8×8個可程式化電阻式記憶體之PUF陣列所產生的位元映像(bit-mapping)示意圖。根據一實施例,具有開啟的電晶體之可程式化電阻式記憶體(i.e. 記憶體在低阻值狀態且大量電流可通過該些記憶體)係提供數位資訊“0”,具有關閉的電晶體之可程式化電阻式記憶體(i.e. 記憶體在高阻值狀態,且沒有或是極小的電流通過該些記憶體)係提供數位資訊“1”,因此在電源開啟狀態下(power-up state)於一陣列中引起的無規則數位資訊所構成的組合(如第2圖所示之其中一種數位資訊組合)可於實際應用中做為一個特殊的晶片指紋(chip “fingerprint”)之用。FIG. 2 is a schematic diagram of bit-mapping generated by a PUF array including 8×8 programmable resistive memories in an application according to an embodiment of the present invention. According to an embodiment, a programmable resistive memory having an open transistor (ie a memory in a low resistance state and a large amount of current can pass through the memories) provides digital information "0" with a closed transistor The programmable resistive memory (ie memory in a high-resistance state with no or very small current flowing through the memory) provides digital information "1", so in the power-up state (power-up state) The combination of irregular digital information caused by an array (such as one of the digital information combinations shown in Figure 2) can be used as a special chip fingerprint (chip "fingerprint") in practical applications.

在形成程序和程式化程序(例如設置(SET)程序)執行後,必須檢查PUF陣列之可程式化電阻式記憶體的數位資訊“0”相對於數位資訊“1”的亂度。數位資訊“0”相對於數位資訊“1”的一理想亂度(其指出PUF陣列之低阻值狀態和高阻值狀態)約為50%相對於50%,此理想亂度可提供在辨識度上具有高度特殊性的PUF-ID。若經檢查後的亂度不在可接受的亂度範圍內,則將對PUF陣列的所有記憶體再次進行如上述之形成程序和程式化程序。實施例之方法係提供一種簡單快速的方式以估算PUF陣列的亂度。After the formation of the program and the stylized program (for example, the setup (SET) program), it is necessary to check the disorder of the digital information "0" of the programmable resistive memory of the PUF array with respect to the digital information "1". The ideal information of the digital information “0” relative to the digital information “1” (which indicates the low resistance state and the high resistance state of the PUF array) is about 50% relative to 50%, and the ideal chaos can be provided in the identification. A highly specific PUF-ID. If the checked turmity is not within the acceptable ambiguity range, then all of the memory of the PUF array will be subjected to the formation procedure and stylization procedure as described above. The method of the embodiment provides a simple and fast way to estimate the turbulence of the PUF array.

第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”、...等等。 FIG. 3A is a flow chart of a method for generating a physical non-reproducible function according to an embodiment of the present disclosure. In one embodiment, a PUF array (PUF array) including a plurality of programmable resistance memory cells is provided (step 301). A forming procedure and a programming procedure (e.g., a setup (SET) procedure) are performed on all of the programmable resistive memories of the PUF array (step 302). Then, an estimation process is performed to estimate the disorder of the PUF array by estimating a reference current (I Ref ) by a base unit (for example, a MOSFET without ReRAM). And comparing with a total current (I Total ) of all programmable resistive memories to obtain a PUF randomness (step 303). After the estimation procedure, a setting result of randomness is determined according to the estimation procedure (step 304). A PUF-ID is generated based on the result of the disorder setting (step 305). In an example, the generated PUF-ID may be, but is not limited to, a set of data consisting of digit values "0" and "1", such as "00010101", "01001001101", ..., and the like.

再者,形成程序、程式化(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)。Furthermore, the formation procedure, the stylized (ex: SET) procedure, and the estimation procedure are repeated until the resulting PUF disorder falls within a pre-determined ideal range of randomness. In one example, the predetermined ideal range of ambiguity is a range of digital information "0" close to an ideal PUF ambiguity, such as 50%, relative to 50% of the digital information "1". FIG. 3B is a flow chart of determining an ambiguity setting result according to an estimation program according to an example in an embodiment. In step 3031, the PUF chaos is compared to a predetermined ideal chaos range. If the estimated PUF disorder falls within a predetermined desired degree of ambiguity, a garbled setting result is determined (step 304). If the estimated PUF disorder falls outside the predetermined ideal degree of chaos, then all the programmable resistive memory is again subjected to the forming process and the stylized program (ie, step 302 is performed again), and then the estimating process is performed (step 303) Obtain 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個可程式化電阻式記憶體)。 The estimation procedure according to one of the embodiments is used to calculate the disorder of a PUF array. The disorder of a PUF array (as described in step 303) can be compared to one of the reference cells (reference current, I Ref ) and one of all programmable resistive memories by comparing a base cell (eg, a MOSFET without ReRAM) The total current (I Total ) is obtained. An example is presented below to describe a reference current for one of the base cells, a calculation of the sum of the currents of one of the PUF arrays, and a PUF disorder of one of the PUF arrays. Furthermore, the programmable resistive memory system of a PUF array of the following example is arranged in a 3 ́3 array (the IE PUF array includes 9 programmable resistive memories).

第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記憶體數目所佔的百分比就越大。FIG. 4 is a schematic diagram of a PUF array and related units electrically connected to the PUF array according to an embodiment of the disclosure. The PUF array includes a total of nine programmable resistive memories arranged in a 3 ́3 array, wherein one bit line BL is connected to the same row of memory, and one word line WL is connected to the same column of memory, one source line. SL also connects to the same line of memory. The associated unit of the PUF array includes a first control unit 41 electrically connected to the word lines of the memory, and a second controlling unit 42 electrically connected to the memory. The bit lines and a third controlling unit 43 are electrically connected to the source lines of the memory. In an embodiment, the first control unit 41, the second control unit 42, and the third control unit 43 are, for example, data multiplexers that control the voltages applied to the word lines, the bit lines, and the source lines. The related unit electrically connected to the PUF array further includes a first sensing amplifier SA1, a second sensing amplifier SA2 and a third sensing amplifier. SA3 to sense the current through the memory of the first row, the second row, and the third row, respectively. When the estimation procedure is performed, all of the programmable resistive memories are selected by applying a predetermined voltage, and then a total current is read, for example, the sum of the currents through the respective rows of memories as shown in FIG. The sum of the currents can be calculated and obtained by a processing unit 46 (disposed at a program controller 640 as shown in Fig. 6 below), and a switch unit 45 is set. The program unit 46 (and the protection program controller 640) is protected between the program unit 46 and the sense amplifiers (ie, SA1, SA2 and SA3). For one of the high resistance states (HRS), the resistive memory can be programmed, and only a small current is passed through the HRS memory and can be ignored in the sum of the sensed currents. For one of the low resistance states (LRS), the resistive memory can be programmed. After the voltage is supplied, the current passes through the LRS memory. This current is approximately equal to passing through a base unit (for example, without ReRAM). One of the currents of the MOSFET). Therefore, the greater the sum of the sensed currents, the greater the percentage of the number of LRS memories in the PUF array.

第5圖繪示一沒有ReRAM的MOSFET以作為實施例之一示例的基礎單元(base unit)的電流-電壓特性曲線(I-V curves)。 第6A-6C圖繪示根據實施例之示例中PUF陣列之LRS和HRS記憶體的三種組合。請同時參照第5圖和第6A-6C圖。Figure 5 illustrates a current-voltage characteristic (I-V curves) of a base unit without ReRAM as an example of one of the embodiments. 6A-6C illustrate three combinations of LRS and HRS memory for a PUF array in an example according to an embodiment. Please also refer to Figure 5 and Figure 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條件下)。 In this example, during the estimation procedure, a MOSFET without a ReRAM (gate width = 0.42 μm, gate length = 0.18 μm) is used as a basic unit. As shown in Fig. 5, five curves are applied to the word line at different voltages (ie gate voltage V g =0V, 1V, 2V, 3V, 4V), where V D is applied to the bit line Read voltage. In the example, a reference current (I Ref ) can be determined according to the IV characteristic curve of a basic unit. As shown in Figure 5, a reference current can be set to 450 μÅ (at gate voltage V g = 4V and read voltage 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亂度可以被快速地和簡單地以實施例之估算程序所判斷出來,實施例係提供了一種節省時間的亂度估算方式。 After the formation and stylization (ex: SET) procedures, each programmable resistive memory (labeled "ReRAM-PUF") in the PUF array may be in a low resistance state (LRS) or a high resistance state. (HRS). The number of HRS memory and LRS memory in the PUF array as shown in Figure 6A (/6B/6C) is unknown prior to the estimation procedure. According to one of the estimation procedures of the embodiment, the current sum of one of the graphs of FIG. 6A is about 450 μÅ, by applying 4 V to the word line and 1 V to the bit line for all the programmable resistive memories in the PUF array. Obtained (0V at the source line). According to the estimation method of the embodiment, the number of programmable resistive memories in a low resistance state (LRS) is determined by the ratio of the sum of currents (I Total ) to the reference current (I Ref ). (take the nearest integer value). That is, I Tata /I Ref . Therefore, the ratio of the current sum (I Total ) 450 μÅ to the reference current (I Ref ) of 450 μÅ is equal to 1. This means that the PUF array of Figure 6A has a low resistance state (LRS) programmable resistive memory, and the percentage of the LRS memory is about 11%. Therefore, the PUF turbulence of the PUF array of Fig. 6A is 11% (low resistance) versus 89% (high resistance), and the result is far from an ideal degree of chaos (ie 50% to 50%). Therefore, these programmable resistive memories need to be re-formed and programmed (ex: SET) programs (by modifying the operating conditions of the change forming program and the stylized program) to create LRS memory and HRS memory. An additional combination (ie re-establishes the conductive filaments in the memory), and then an estimation procedure is performed to check for post-reconstruction updated PUF turmoil (ie performing steps 3031, 302, and 303 as shown in Figure 3B). The PUF array of Fig. 6A was re-examined in a memory-by-memory manner, and the results showed that the PUF array of Fig. 6A has 8 HRS memories and 1 LRS memory, which is in agreement with the results of the estimation method of the embodiment. Therefore, the PUF disorder of the PUF array can be quickly and simply judged by the estimation procedure of the embodiment, and the embodiment provides a time-saving estimation method.

類似的,根據實施例之一估算程序,第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%(高電阻)。 Similarly, according to one of the estimation procedures, the current sum of one of the graphs of FIG. 6B is about 1800 (=450*4) μÅ, which is obtained by all the programmable resistive memories in the PUF array of FIG. 6B. Apply 4V to the word line and 1V to the bit line (0V to the source line). The ratio of the current sum (I Total ) of 1800 μÅ to the reference current (I Ref ) of 450 μÅ (Fig. 5) is equal to four. This means that the PUF array of Figure 6B has four low resistance state (LRS) programmable resistive memories, and the percentage of LRS memory is about 44%. . Therefore, the PUF turbulence of the PUF array of Figure 6B is 44% (low resistance) versus 56% (high resistance).

類似的,根據實施例之一估算程序,第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%(高電阻),此將落在預定理想亂度範圍之外。 Similarly, according to one of the estimation procedures of the embodiment, the current sum of one of the 6C graphs is about 3150 (=450*7) μÅ, which is obtained by all the programmable resistive memories in the PUF array of FIG. 6C. Apply 4V to the word line and 1V to the bit line (0V to the source line). The ratio of the current sum (I Total ) of 3150 μÅ to the reference current (I Ref ) of 450 μÅ (Fig. 5) is equal to 7. This means that the PUF array of Figure 6B has seven low resistance state (LRS) programmable resistive memories, and the percentage of LRS memory is about 78%. . Therefore, the PUF turbulence of the PUF array of Figure 6B is 78% (low resistance) versus 22% (high resistance), which will fall outside the predetermined ideal ambiguity range.

於一示例中,若當呈一低電阻狀態(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)。In one example, if the number of programmable resistive memories in a low resistance state (LRS) is 40%-60% of the total number of all programmable resistive memories of the PUF array, it is regarded as PUF. When an acceptable range of turbulence is reached, "40% - 60% (LR) versus 60% - 40% (HR)" can be selected as a predetermined desired range of ambiguity. If the PUF disorder (for example, 44% (LR) vs. 56% (HR) in Figure 6B) falls within the predetermined ideal degree of ambiguity, the setting result of randomness can be determined (as in Figure 3B). Step 304), and generating a PUF-ID according to the result of the disorder setting (step 305 of FIG. 3A, and the generated PUF-ID is, for example, stored in the security logic unit 625 described later).

因此,施加於一基礎單元和一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)…等,都可以被決定。 Therefore, the voltages applied to the wires of a base unit and a PUF array (e.g., word lines and bit lines) must be the same to obtain a reference current for the base unit to be compared and a current sum of the PUF array. In an example, this can also be expressed as a reference current (I Ref of the embodiment) by applying a first voltage and a second voltage to a gate and a drain of the transistor of the base unit. And summing a current by applying the first voltage and the second voltage to the word line (WL) and the bit line (BL) of all programmable resistive memories of the PUF array, respectively (I Total ). Furthermore, if the PUF array includes a total of Q programmable resistive memories, and the number of programmable resistive memories in a low resistance state is X (determined according to the ratio of I Total /I Ref described above), Then the PUF disorder can be expressed as: (X/Q) ́100% pairs ((QX)/Q) ́100%, where X and Q are both positive integers. By comparing the PUF chaos with a predetermined ideal chaos range, selecting a chaos setting result according to the estimating procedure (ex: step 304) or repeating the forming program, the stylizing program, and the estimating program (ex: as shown in FIG. 3B Steps 3031, 302, and 303), etc., can all be determined.

雖然第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)的問題。 Although the PUF array illustrated in Fig. 4 (or Fig. 6A-6C) is a 3 ́3 array, the actual application is not limited to this array of numbers and arrangements. One of the PUF arrays may include an array of m ́n (m rows and n columns, total memory m ́n) matrix type of programmable memory, or other memory alignment patterns. The method proposed in the examples is applicable to many different memory arrangement types, and is not limited to arrays of matrix types. Furthermore, the reference current (I Ref ) 450 μ Å obtained by the above-mentioned base unit at a reading voltage of 1 V is an exemplary value, which is only used to exemplify the estimation procedure of the embodiment, and is not intended to limit the disclosure. The read voltage (V D ) can be lowered to reduce the sum of the resulting currents (I total ). For example, when the read voltage drops to 0.01V, the reference current (I Ref ) of the base unit can be reduced to, for example, about 1 uA. For a 1K-bit PUF array with the best ambiguity (50% low-resistance memory, 50% high-resistance memory), the sum of the currents obtained when the read voltage is 0.01V is 500uA. . Therefore, the use of an appropriate read voltage in a current-reading application is advantageous in obtaining a proper sum of currents and avoiding metal line migration problems.

第7圖為根據一應用例之一實施例中具有PUF-ID之裝置的方塊圖。Figure 7 is a block diagram of an apparatus having a PUF-ID in accordance with an embodiment of an application.

於此應用示例中,一裝置包括一積體電路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)。 In this application example, a device includes an integrated circuit 600 having a programmable memory array 630 (eg, a PUF array including a plurality of programmable resistive memories disposed in a PUF region of a substrate) and A controller (e.g., a program controller 640), the programmable memory array 630 can generate one or more data sets. You can select one of the data (such as digital information "0" and "1" chaos close to 50% and 50%) as an optimum data set (ie PUF-ID) as the "fingerprint of the wafer"". According to an embodiment, the program controller 640 (disposed on the substrate and coupled to the programmable memory array 630 by, for example, the bus bar 641) performs the following steps: including all programmable resistive memories of the programmable memory array The body performs a forming procedure and a stylized (ex: SET) program (step 302 of FIG. 3A), wherein the programmable memory array can generate one or more sets of data after executing the stylized program (one Or more data sets); an estimation process is performed to estimate the turbulence of the PUF array by using a reference current (I Ref ) of one of the base cells (ex: no ReRAM MOSFET) and all programmable Comparing the sum of the currents of the resistive memory (I Total ) to obtain a PUF randomness (step 303 of the 3A, 3B diagram); determining a turbidity setting result according to the estimation procedure (Step 304 of Figures 3A, 3B); and generating a PUF-ID based on the result of the ambiguity setting (step 305 of Figure 3A).

於此示例之裝置中,程式控制器640可提供訊號以控制偏壓配置供給電壓之應用(application of bias arrangement supply voltages),而對可程式記憶體陣列之記憶體單元執行形成程序、和程式化(ex: SET)程序(如第3A圖之步驟302)和其他與存取可程式記憶體陣列630相關之操作,且程式控制器640亦讀取在執行程式化程序後所產生的一或多組資料並執行估算程序。In the device of this example, the program controller 640 can provide signals to control the application of bias arrangement supply voltages, and perform program formation and programming on the memory cells of the programmable memory array. (ex: SET) program (step 302 of FIG. 3A) and other operations associated with accessing programmable memory array 630, and program controller 640 also reads one or more generated after execution of the stylized program Group the data and perform the estimation process.

積體電路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之間的溝通。The integrated circuit 600 includes a mission function circuit 610, which may include special purpose logic circuits (sometimes referred to as special application integrated circuits), such as data processing sources for microprocessors and digital signal processors. Large memory such as flash memory, dynamic random access memory, programmable resistive memory, and combinations of various morphological circuits that are conventionally applicable in a wafer. The integrated circuit 600 includes an input/output (I/O) interface 620 that has wireless or wired access to other components or networks. In this example, an access control unit 615 is disposed between the input/output interface 620 and the main function circuit 610. The access control unit 615 is coupled to the input/output interface 620 by the bus bar 616 and coupled to the main function circuit 610 by the bus bar 611. The access control unit 615 can perform an access control protocol to cause or deny communication between the input/output interface 620 and the main function circuit 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溝通。To assist the access control unit 615, the example further includes a security logic unit 625 disposed in the wafer. The security logic unit 625 is electrically coupled to the programmable memory array 630, and the security logic unit 625 can select to store a unique data set as one PUF-ID from one or more sets of data. The security logic unit 625 can obtain the special data set (ie the PUF-ID) through the program controller 640 (for example, a PUF program controller) and the bus bar 631, and the security logic unit 625 utilizes the special data group (stored in the security logic). Unit 625) communicates with access control unit 615 via bus 622.

根據上述,係提出一種物理不可複製函數辨識(PUF-ID)之產生方法及產生一PUF-ID之裝置。根據實施例之方法,一PUF陣列之可程式化電阻式記憶體之阻值狀態的一亂度,可以用一簡單方式迅速地被判斷出來。因此,可迅速決定是否需要對PUF陣列之可程式化電阻式記憶體再次執行形成程序和程式化程序(例如設置程序)以重新獲得一個低阻值和高阻值狀態的新組合。據此,利用實施例之方法,可使產生一具有高度特殊性之PUF-ID(使PUF陣列亂度達到接近一理想PUF亂度例如,50%的數位資訊“0”相對於50%的數位資訊“1”)所需要的時間可以大幅降低。再者,根據實施例之方法,一PUF陣列的亂度估算(randomness estimation)可以精準地被估算出來,而可正確地獲得PUF陣列之阻值相關資訊。因此,根據實施例之PUF-ID產生方法不僅大幅節省PUF亂度估算所需的時間,還提供了本質上確實具有高度特殊性之一PUF-ID。According to the above, a method for generating a physical non-reproducible function identification (PUF-ID) and a device for generating a PUF-ID are proposed. According to the method of the embodiment, a disorder of the resistance state of the programmable resistive memory of a PUF array can be quickly judged in a simple manner. Therefore, it is possible to quickly determine whether a program and a program (such as a setup program) need to be executed again on the programmable resistive memory of the PUF array to regain a new combination of low resistance and high resistance states. Accordingly, by using the method of the embodiment, a highly specific PUF-ID can be generated (the PUF array disorder is brought close to an ideal PUF disorder, for example, 50% of the digital information "0" is relative to the 50% digit. The time required for information "1" can be greatly reduced. Moreover, according to the method of the embodiment, the randomness estimation of a PUF array can be accurately estimated, and the resistance related information of the PUF array can be correctly obtained. Therefore, the PUF-ID generation method according to the embodiment not only greatly saves the time required for PUF disorder estimation, but also provides one PUF-ID which is indeed highly specific in nature.

其他實施例,例如元件/裝置的已知構件有不同的設置與排列等,亦可能可以應用,係視應用時之實際需求與條件而可作適當的調整或變化。因此,說明書與圖式中所示之結構僅作說明之用,並非用以限制本揭露欲保護之範圍。另外,相關技藝者當知,實施例中構成部件的形狀和位置以及方法步驟的細節亦並不限於圖示所繪之態樣,亦是根據實際應用時之需求和/或製造步驟在不悖離本揭露之精神的情況下而可作相應調整。Other embodiments, such as known arrangements of components/devices, may have different arrangements and arrangements, and may be applied, depending on the actual needs and conditions of the application, and may be appropriately adjusted or varied. Therefore, the structures shown in the specification and drawings are for illustrative purposes only and are not intended to limit the scope of the disclosure. Further, it will be apparent to those skilled in the art that the shapes and positions of the constituent members and the details of the method steps in the embodiments are not limited to those illustrated in the drawings, and are not in accordance with the needs and/or manufacturing steps of the actual application. It can be adjusted accordingly in the case of the spirit of this disclosure.

綜上所述,雖然本發明已以實施例揭露如上,然其並非用以限定本發明。本發明所屬技術領域中具有通常知識者,在不脫離本發明之精神和範圍內,當可作各種之更動與潤飾。因此,本發明之保護範圍當視後附之申請專利範圍所界定者為準。In conclusion, the present invention has been disclosed in the above embodiments, but it is not intended to limit the present invention. A person skilled in the art can make various changes and modifications without departing from the spirit and scope of the invention. Therefore, the scope of the invention is defined by the scope of the appended claims.

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‧‧‧源極線
A PUF ‧‧‧PUF area
A C ‧‧‧ main function area
10‧‧‧Substrate
201‧‧‧ substrate surface
301-305, 3031‧‧‧ steps
41‧‧‧First Control Unit
42‧‧‧Second control unit
43‧‧‧ third control unit
SA1‧‧‧First sense amplifier
SA2‧‧‧Second Sense Amplifier
SA3‧‧‧ Third sense amplifier
45‧‧‧Switch unit
46‧‧‧Program unit
600‧‧‧Integrated circuit
610‧‧‧ main function circuit
615‧‧‧Access Control Unit
620‧‧‧Input/output interface
625‧‧‧Safe Logic Unit
630‧‧‧Programmable memory array
640‧‧‧Program Controller
616, 622, 631, 641‧‧ ‧ busbars
WL‧‧‧ character line
BL‧‧‧ bit line
SL‧‧‧ source line

第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之裝置的方塊圖。BRIEF DESCRIPTION OF THE DRAWINGS Figure 1 is a simplified pictorial illustration of an apparatus in accordance with an embodiment. FIG. 2 is a schematic diagram of bit-mapping generated by a PUF array including 8×8 programmable resistive memories in an application according to an embodiment of the present invention. FIG. 3A is a flow chart of a method for generating a physical non-reproducible function according to an embodiment of the present disclosure. FIG. 3B is a flow chart of determining an ambiguity setting result according to an estimation program according to an example in an embodiment. FIG. 4 is a schematic diagram of a PUF array and related units electrically connected to the PUF array according to an embodiment of the disclosure. Figure 5 is a graph showing the current-voltage characteristic of a base unit without ReRAM as a base unit as an example of an embodiment. 6A-6C illustrate three combinations of LRS and HRS memory for a PUF array in an example according to an embodiment. Figure 7 is a block diagram of an apparatus having a PUF-ID in accordance with an embodiment of an application.

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。 A method for generating a physical unclonable function identification (PUF-ID), comprising: providing a PUF array, comprising a plurality of programmable resistance memory cells; All of the programmable resistive memories of the PUF array are subjected to a forming procedure and a programming procedure; an estimation procedure is performed to estimate the disorder of the PUF array by A reference current (I Ref ) of one of the base units is compared with a total current (I Total ) of all of the programmable resistive memories to obtain a PUF disorder. (PUF randomness); determining a turbidity setting result according to the estimation procedure; and generating a PUF-ID according to the ambiguity setting result. 如申請專利範圍第1項所述之PUF-ID之產生方法,其中呈一低電阻狀態(low resistance state ,LRS)之該些可程式化電阻式記憶體的一數目係由該電流總和相對於該參考電流之一比例(ratio)而決定。The method for generating a PUF-ID according to claim 1, wherein the number of the programmable resistive memories in a low resistance state (LRS) is determined by the sum of the currents. The ratio of one of the reference currents is determined. 如申請專利範圍第2項所述之PUF-ID之產生方法,其中該PUF陣列包括Q個該些可程式化電阻式記憶體,且呈該低電阻狀態之該些可程式化電阻式記憶體的該數目係決定為X,則該PUF亂度係為:(X/Q)´100% 對((Q-X)/Q)´100%,其中X和Q皆為正整數, 其中當所估算之該PUF亂度在40%-60%對60%-40%之範圍內,係決定該亂度設定結果。The method for generating a PUF-ID according to the second aspect of the invention, wherein the PUF array comprises Q of the programmable resistive memories, and the programmable resistive memories in the low resistance state The number is determined to be X, then the PUF disorder is: (X/Q) ́100% vs. ((QX)/Q) ́100%, where X and Q are positive integers, where The PUF disorder is in the range of 40%-60% to 60%-40%, and the result of the disorder setting is determined. 如申請專利範圍第1項所述之PUF-ID之產生方法,其中係藉由分別施加一第一電壓和一第二電壓於該基礎單元之一電晶體的一閘極和一汲極,而得到該參考電流(I Ref)。 The method for generating a PUF-ID according to claim 1, wherein a first voltage and a second voltage are respectively applied to a gate and a drain of the transistor of the base unit. The reference current (I Ref ) is obtained. 如申請專利範圍第4項所述之PUF-ID之產生方法,其中係藉由分別施加該第一電壓和該第二電壓於所有該些可程式化電阻式記憶體之字元線(WL)和位元線(BL),而得到該電流總和(I Total)。 The method for generating a PUF-ID according to claim 4, wherein the first voltage and the second voltage are respectively applied to the word lines (WL) of all the programmable resistive memories. And the bit line (BL), and get the sum of the currents (I Total ). 如申請專利範圍第1項所述之PUF-ID之產生方法,更包括: 將該PUF亂度與一預定理想亂度範圍(a pre-determined ideal range of randomness)進行比較,其中若該PUF亂度落在該預定理想亂度範圍內,則決定該亂度設定結果;若該PUF亂度落在該預定理想亂度範圍之外,則令所有該些可程式化電阻式記憶體再次進行該形成程序和該程式化程序。The method for generating a PUF-ID according to claim 1, further comprising: comparing the PUF disorder to a pre-determined ideal range of randomness, wherein the PUF disorder If the degree falls within the predetermined ideal degree of chaos, the result of the disorder setting is determined; if the PUF disorder falls outside the predetermined ideal degree of chaos, all of the programmable resistive memories are again performed. Form the program and the stylized program. 如申請專利範圍第1項所述之PUF-ID之產生方法,其中係重複進行該形成程序、該程式化程序和該估算程序,直到得到的該PUF亂度落在一預定理想亂度範圍內為止。The method for generating a PUF-ID according to claim 1, wherein the forming procedure, the stylizing program, and the estimating procedure are repeated until the obtained PUF disorder falls within a predetermined ideal degree of confusion. until. 如申請專利範圍第1項所述之PUF-ID之產生方法,其中當呈一低電阻狀態(LRS)之該些可程式化電阻式記憶體的一數目為該PUF陣列之該些可程式化電阻式記憶體之總數的40%-60%時,係決定該亂度設定結果。The method for generating a PUF-ID according to claim 1, wherein the number of the programmable resistive memories in a low resistance state (LRS) is the programmable of the PUF array. When the total number of resistive memories is 40%-60%, the result of the disorder setting is determined. 一種具有物理不可複製函數辨識(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。 A device having a physical non-reproducible function identification (PUF-ID), comprising: a programmable memory array disposed in a PUF region of a substrate; a program controller disposed on the substrate And coupled to the programmable memory array, the program controller performs the following steps: performing a forming procedure and a forming process on all of the plurality of programmable resistive memories included in the programmable memory array a programming procedure, wherein the executable memory array can generate one or more data sets after executing the stylized program; performing an estimation procedure to estimate the disorder of the PUF array, By comparing a reference current (I Ref ) of a base unit with a total current (I Total ) through all of the programmable resistive memories, Obtaining a PUF randomness; determining a turbidity setting result according to the estimating procedure; and generating a PUF-ID according to the ambiguity setting result; A security logic unit is disposed on the substrate and coupled to the program controller, wherein the security logic unit stores the PUF-ID. 如申請專利範圍第9項所述之裝置,其中呈一低電阻狀態之該些可程式化電阻式記憶體的一數目係由該電流總和相對於該參考電流之一比例而決定,其中該可程式記憶體陣列包括Q個該些可程式化電阻式記憶體,且呈該低電阻狀態之該些可程式化電阻式記憶體的該數目係決定為X,則該PUF亂度係為: (X/Q)´100% 對((Q-X)/Q)´100%, 其中X和Q皆為正整數。The device of claim 9, wherein the number of the programmable resistive memories in a low resistance state is determined by a ratio of the sum of the currents to the reference current, wherein the The program memory array includes Q of the programmable resistive memories, and the number of the programmable resistive memories in the low resistance state is determined as X, and the PUF disorder is: X/Q) ́100% Pair ((QX)/Q) ́100%, where X and Q are both positive integers.
TW106135371A 2017-10-16 2017-10-16 method for physically unclonable function-identification generation AND apparatus of THE SAME TWI627555B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
TW106135371A TWI627555B (en) 2017-10-16 2017-10-16 method for physically unclonable function-identification generation AND apparatus of THE SAME

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
TW106135371A TWI627555B (en) 2017-10-16 2017-10-16 method for physically unclonable function-identification generation AND apparatus of THE SAME

Publications (2)

Publication Number Publication Date
TWI627555B true TWI627555B (en) 2018-06-21
TW201917624A TW201917624A (en) 2019-05-01

Family

ID=63256162

Family Applications (1)

Application Number Title Priority Date Filing Date
TW106135371A TWI627555B (en) 2017-10-16 2017-10-16 method for physically unclonable function-identification generation AND apparatus of THE SAME

Country Status (1)

Country Link
TW (1) TWI627555B (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI734314B (en) * 2018-12-31 2021-07-21 美商美光科技公司 Systems, methods and non-transitory computer-readable medium for providing a digital fingerprint to a host device
TWI739471B (en) * 2020-06-11 2021-09-11 華邦電子股份有限公司 Resistive memory device and reliability enhance method thereof
TWI832182B (en) * 2021-08-12 2024-02-11 台灣積體電路製造股份有限公司 Physically unclonable function device, semiconductor device, and operating method

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI750073B (en) * 2021-03-30 2021-12-11 力晶積成電子製造股份有限公司 Semiconductor device with security function and security method thereof

Citations (7)

* Cited by examiner, † Cited by third party
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 (en) * 2011-03-31 2013-01-16 Iucf Hyu Apparatus and method for generating digital value
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 (en) * 2014-09-30 2015-01-21 杭州电子科技大学 Double-electrode based finger electrocardio identity recognition system
US20150177406A1 (en) * 2012-07-13 2015-06-25 Halliburton Energy Services, Inc. System and method of focusing an array laterolog
TW201543486A (en) * 2014-03-07 2015-11-16 Intel Corp Physically unclonable function circuit using resistive memory device
CN105676942A (en) * 2016-03-08 2016-06-15 宁波大学 Deviation signal producing circuit and multiport configurable PUF circuit

Patent Citations (7)

* Cited by examiner, † Cited by third party
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 (en) * 2011-03-31 2013-01-16 Iucf Hyu Apparatus and method for generating digital value
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 (en) * 2014-03-07 2015-11-16 Intel Corp Physically unclonable function circuit using resistive memory device
CN104287717A (en) * 2014-09-30 2015-01-21 杭州电子科技大学 Double-electrode based finger electrocardio identity recognition system
CN105676942A (en) * 2016-03-08 2016-06-15 宁波大学 Deviation signal producing circuit and multiport configurable PUF circuit

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI734314B (en) * 2018-12-31 2021-07-21 美商美光科技公司 Systems, methods and non-transitory computer-readable medium for providing a digital fingerprint to a host device
US11868513B2 (en) 2018-12-31 2024-01-09 Micron Technology, Inc. Physical unclonable function at a memory device
TWI739471B (en) * 2020-06-11 2021-09-11 華邦電子股份有限公司 Resistive memory device and reliability enhance method thereof
TWI832182B (en) * 2021-08-12 2024-02-11 台灣積體電路製造股份有限公司 Physically unclonable function device, semiconductor device, and operating method

Also Published As

Publication number Publication date
TW201917624A (en) 2019-05-01

Similar Documents

Publication Publication Date Title
US10103895B1 (en) Method for physically unclonable function-identification generation and apparatus of the same
TWI627555B (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
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
TWI715850B (en) Method and apparatus for programming otp memory cells in integrated circuit
US10049734B2 (en) Data storing method of non-volatile memory device by assigning an initial state to data
TWI643090B (en) Antifuse physically unclonable function circuit and associated control method
TWI713312B (en) Random code generator with non-volatile memory
US9921975B2 (en) Cryptographic processing device having a non-volatile memory including memory cells in an initial or a variable state
US9811689B1 (en) Chip ID generation using physical unclonable function
US10439829B1 (en) Physical unclonable function code generating method and providing apparatus thereof
Chen et al. Exploiting resistive cross-point array for compact design of physical unclonable function
JP2016105278A (en) Nonvolatile memory device having tamper-resistance, and integrated circuit card
JP2016105344A (en) Nonvolatile memory device having tamper-resistance, and integrated circuit card
US9852791B1 (en) Semiconductor memory device, chip ID generation method thereof and manufacturing method thereof
TW201837701A (en) Random number generator and control method thereof
Liu et al. X-point PUF: Exploiting sneak paths for a strong physical unclonable function design
TWI708247B (en) Method to program a programmable resistance memory element and corresponding memory
CN109753830B (en) Method and device for generating physical unclonable function codes
TWI616885B (en) Semiconductor memory device, chip id generation method thereof and manufacturing method thereof
US11727986B2 (en) Physically unclonable function (PUF) generation involving programming of marginal bits
CN111314058B (en) Physical unclonable function code generation method and providing device thereof
JP2020102827A (en) Nonvolatile memory device and challenge-response method
TWI678892B (en) Physical unclonable function code generating method and providing apparatus thereof