TWI789248B - 產生用於一電子元件的一隨機碼的裝置及方法 - Google Patents
產生用於一電子元件的一隨機碼的裝置及方法 Download PDFInfo
- Publication number
- TWI789248B TWI789248B TW111106258A TW111106258A TWI789248B TW I789248 B TWI789248 B TW I789248B TW 111106258 A TW111106258 A TW 111106258A TW 111106258 A TW111106258 A TW 111106258A TW I789248 B TWI789248 B TW I789248B
- Authority
- TW
- Taiwan
- Prior art keywords
- memory
- memory array
- bit
- bits
- mth
- Prior art date
Links
Images
Landscapes
- Techniques For Improving Reliability Of Storages (AREA)
- Electrophonic Musical Instruments (AREA)
Abstract
本揭示提供一種產生用於一電子元件的一隨機碼的裝置,包含一對記憶體、以及一讀取單元。該對記憶體包含一第一記憶體與一第二記憶體,其中各該記憶體具有N個字元,且各該N個字元具有M個位元。該讀取單元具有一第一端與一第二端,其中該第一端選擇性電性耦接該第一記憶體的該M個位元,該第二端選擇性電性耦接該第二記憶體的該M個位元,其中:該讀取單元依一特定n相關順序及一特定m相關順序讀取並比較該第一記憶體的第n個字元的第m個位元之一第一電性參數以及該第二記憶體的第n個字元的第m個位元之一第二電性參數,其中1≦n≦N且1≦m≦M,以獲得複數比較結果,並據以形成該隨機碼。
Description
本發明是關於一種產生一隨機碼的裝置及方法,特別是關於一種產生用於一電子元件的一隨機碼的裝置及方法。
近年來,電子設備已成為人們生活的重要工具。出於某些目的,電子設備需要提供特定的代碼,例如識別碼。每當請求創建識別碼時標別識碼必須完全相同,並且可以用於編碼和/或解碼操作,例如安全機制中使用的的PUF(物理不可複製功能)。有時候電子裝置需要一個或多個隨機數代碼來應用。也就是說,如何利用高效的硬體來提供識別碼和/或隨機數碼也是本領域設計的重要課程。
在專利號US10,181,357 B2中,其揭示一種代碼生成裝置和一次性編程區塊,代碼生成裝置包括多個第一一次性編程(OTP)記憶體、參考信號提供器和感測放大器。第一OTP記憶體耦接至第一位元線。參考信號提供者提供參考信號。其中,至少其中一個第一OTP記憶體提供讀取電流至第一位元線,且感測放大器比較讀取電流與參考信號以產生輸出碼。參考信號的電流值設定在一個範圍內,該範圍由對應於最大位元數的位元電流而被設定,以使輸出碼由至少一個第一OTP記憶體的製造偏移而被決定。如第一圖所示,其為先前技術設定參考信號的電流值的範圍的示意圖,橫軸代表
位元電流值,縱軸代表位元數。此先前技術是先量測所有記憶體胞元的位元的臨界電流,然後統計出記憶體的胞元數相對應到位元臨界電流的分佈圖,以產生用於感測放大器的參考信號或讀取準位,以確定PUF碼的每個單一位元是0或1的狀態。
在專利號US10,404,478 B2中,其揭示一種在非揮發性記憶體中使用分割的閾值分佈的物理不可複製功能(PUF)。用於儲存在非揮發性記憶體中的安全密鑰並且用於在包括非揮發性記憶體(例如快閃記憶體)的積體電路上產生基於PUF的資料集的系統和方法。該方法包括在非揮發性記憶體陣列的多個區塊中的特定區塊中儲存安全密鑰;在耦合到非揮發性記憶體陣列的安全邏輯電路中,利用協議中儲存在特定區塊中的安全密鑰使得外部設備或通信網路能夠通過端口訪問儲存在多個區塊中的資料;以及通過用於該協議的安全邏輯啟用對特定區塊的唯讀存取,並防止通過該端口存取該特定區塊。如第二圖所示,其為先前技術即使在同一製程下,製程參數的偏移造成不同臨界電壓的示意圖,橫軸代表臨界電壓,縱軸代表胞元數。此先前技術是先量測所有記憶體胞元的位元的臨界電壓,然後統計出記憶體的胞元數相對應到位元臨界電壓的分佈圖,以產生用於感測放大器的參考信號或讀取準位,以確定PUF碼的每個單一位元是0或1的狀態。
除此之外,專利公開號US20170053708、專利號US9,093,128、專利號US10,680,809、專利號US10,855,477、以及專利號US10,911,229也都是先量測所有記憶體胞元的位元的臨界電壓或電流,然後統計出記憶體的胞元數相對應到位元臨界電壓或電流的分佈圖,以產生用於感測放大器的參考信號或讀取準位,以確定PUF的每個單一位元是0或1的
狀態。
然而,在先前技術中,都存在固定的寄生源線阻值所造成的問題。請參閱第三圖,其為記憶體胞元的位元線101,102的胞元電流與臨界電壓的分佈的示意圖。橫軸代表記憶體胞元的位元線101,102,左縱軸代表記憶體胞元的位元線101,102的胞元電流,右縱軸代表記憶體胞元的位元線101,102的臨界電壓。由於寄生源線阻值影響,在位元線101或102兩端的臨界電壓較中心點101C,102C低,且在位元線101或102兩端的胞元電流較中心點101C,102C高,造成在中心點101C,102C的所讀出的碼不具隨機性,如同在第三圖中的PUF碼圖10M所示,黑色代表位元的碼值為1,白色代表位元的碼值為0,碼圖10M在水平方向上呈現固定間距的白色與黑色交錯的週期循環,顯示出其碼圖的生成是具有周期的規律性,降低了隨機性。是以,此固定的寄生源線阻值造成了PUF碼不隨機的問題仍未能夠被克服。
有鑑於上述問題,本發明提出一種產生用於一電子元件的一隨機碼的裝置,其不需要一一測量每一記憶體胞元的臨界電壓或胞元電流,僅需要一對結構非常接近的記憶體胞元或電子元件,比較該對記憶體胞元或電子元件的臨界電壓或胞元電流等電性參數,即可產生PUF碼,且該對記憶體胞元或電子元件的結構愈接近,電性耦接至讀取單元的耦接配置愈對稱或鏡像,則所產生的該PUF碼的隨機程度愈佳。
依據上述構想,本發明提供一種產生用於一電子元件的一隨機碼的裝置,包含一第一記憶體陣列、一第二記憶體陣列、一選擇單元、以及一讀取單元。該第一記憶體陣列具有N個字元,且各該N個字元具有M個
位元。該第二記憶體陣列具有N個字元,且各該N個字元具有M個位元。該選擇單元電性耦接該第一記憶體陣列與該第二記憶體陣列。該讀取單元具有一第一端與一第二端,其中該第一端藉由該選擇單元選擇性電性耦接該第一記憶體陣列的M個位元,而該第二端藉由該選擇單元選擇性電性耦接該第二記憶體陣列的M個位元;該選擇單元依序導通該第一記憶體陣列的第n個字元的第m個位元至該第一端、且依序導通該第二記憶體陣列的第n個字元的第m個位元至與第二端,其中1≦n≦N且1≦m≦M;以及該讀取單元依序比較該第一記憶體陣列的第n個字元的第m個位元的一第一電性參數與該第二記憶體陣列的第n個字元的第m個位元的一第二電性參數,以獲得N*M個比較結果,並據以形成該隨機碼。
依據上述構想,本發明提供一種產生用於一電子元件的一隨機碼的方法,包含下列步驟:提供一對記憶體陣列、一讀取單元、以及一選擇單元,其中該讀取單元具有一第一端與一第二端,該選擇單元電性耦接該對記憶體陣列與該讀取單元,該對記憶體陣列包含一第一記憶體陣列以及一第二記憶體陣列並各具有N個字元,而各該N個字元具有M個位元;依序選擇該對記憶體陣列的第n個字元的第m個位元,其中1≦n≦N且1≦m≦M;藉由該選擇單元依序導通該第一記憶體陣列的第n個字元的第m個位元至該第一端、且依序導通該第二記憶體陣列的第n個字元的第m個位元至該第二端;以及藉由該讀取單元依序比較該第一記憶體陣列的第n個字元的第m個位元之一第一電性參數與該第二記憶體陣列的第n個字元的第m個位元之一第二電性參數,以獲得N*M個第一比較結果,並據以形成該隨機碼。
依據上述構想,本發明提供一種產生用於一電子元件的一隨
機碼的裝置,包含一對記憶體、以及一讀取單元。該對記憶體包含一第一記憶體與一第二記憶體,其中各該記憶體具有N個字元,且各該N個字元具有M個位元。該讀取單元具有一第一端與一第二端,其中該第一端選擇性電性耦接該第一記憶體的該M個位元,該第二端選擇性電性耦接該第二記憶體的該M個位元,其中:該讀取單元依一特定n相關順序及一特定m相關順序讀取並比較該第一記憶體的第n個字元的第m個位元之一第一電性參數以及該第二記憶體的第n個字元的第m個位元之一第二電性參數,其中1≦n≦N且1≦m≦M,以獲得複數比較結果,並據以形成該隨機碼。
本發明進一步的說明與優點可參閱後續的圖式與實施例,以更清楚地理解本發明的技術方案。
10M:PUF碼圖
201:第一記憶體陣列
202:第二記憶體陣列
203:選擇單元
204,304,404:讀取單元
20M:隨機碼的分佈碼圖
EA1~EAM:第一電性參數
WLA1~WLAN:第一記憶體的N個字元
BLA1~BLAM:第一記憶體的M個位元
R1~RN*M:N*M個比較結果
20,30,40:產生用於一電子元件的一隨機碼的裝置
101,102:位元線
101C,102C:位元線的中心點
301,401:第一記憶體
302,402:第二記憶體
2041,3041,4041:第一端
2042,3042,4042:第二端
EB1~EBM:第二電性參數
WLB1~WLAN:第二記憶體的N個字元
BLB1~BLBM:第二記憶體的M個位元
ROUT1,ROUT2:複數比較結果
第一圖:先前技術設定參考信號的電流值的範圍的示意圖。
第二圖:先前技術在同一製程下製程參數的偏移造成不同臨界電壓的示意圖。
第三圖:記憶體胞元的位元線的胞元電流與臨界電壓的分佈的示意圖。
第四圖:本發明較佳實施例產生用於一電子元件的一隨機碼的裝置的示意圖。
第五圖:本發明另一較佳實施例產生用於一電子元件的一隨機碼的裝置。
第六圖:本發明另一較佳實施例產生用於一電子元件的一隨機碼的
裝置。
第七圖:本發明較佳實施例隨機碼的分佈碼圖20M的示意圖。
第八圖:本發明較佳實施例產生用於一電子元件的一隨機碼的方法的示意圖。
請參酌本揭示的附圖來閱讀下面的詳細說明,其中本發明的附圖是以舉例說明的方式,來介紹本發明各種不同的實施例,並供瞭解如何實現本發明。本發明實施例提供了充足的內容,以供本領域的技術人員來實施本發明所揭示的實施例,或實施依本發明所揭示的內容所衍生的實施例。須注意的是,該些實施例彼此間並不互斥,且部分實施例可與其他一個或多個實施例作適當結合,以形成新的實施例,亦即本發明的實施並不局限於以下所揭示的實施例。此外為了簡潔明瞭舉例說明,在各實施例中並不會過度揭示相關的細節,即使揭示了具體的細節也僅舉例說明以使讀者明瞭,在各實施例中的相關具體細節也並非用來限制本案的揭示。
請參閱第四圖,其為本發明較佳實施例產生用於一電子元件的一隨機碼的裝置20的示意圖。該裝置20包含一第一記憶體陣列201、一第二記憶體陣列202、一選擇單元203、以及一讀取單元204。該第一記憶體陣列201具有N個字元WLA1~WLAN,且各該N個字元WLA1~WLAN具有M個位元BLA1~BLAM。該第二記憶體陣列202具有N個字元WLB1~WLBN,且各該N個字元WLB1~WLBN具有M個位元BLB1~BLBM。該選擇單元203電性耦接該第一記憶體陣列201與該第二記憶體陣列202。該讀取單元204具有一第一端2041與一第二端2042,其中該第一端2041藉由該選擇單元203選擇
性電性耦接該第一記憶體陣列201的M個位元BLA1~BLAM,而該第二端2041藉由該選擇單元203選擇性電性耦接該第二記憶體陣列202的M個位元BLB1~BLBM,該選擇單元203依序導通該第一記憶體陣列201的第n個字元WLAn的第m個位元BLAm至該第一端2041、且依序導通該第二記憶體陣列202的第n個字元WLBn的第m個位元BLBm至第二端2042,其中1≦n≦N且1≦m≦M。該讀取單元204依序比較該第一記憶體陣列201的第n個字元WLAn的第m個位元BLAm之一第一電性參數EAm與該第二記憶體陣列202的第n個字元WLBn的第m個位元BLBm之一第二電性參數EBm,以獲得N*M個比較結果R1~RN*M,並據以形成該隨機碼,如第七圖所示,其為本發明較佳實施例隨機碼的分佈碼圖20M的示意圖,可看出隨機碼的分佈均勻,更能達到隨機的效果。
在本發明的任一實施例中,M,N所形成的碼圖可以是隨機碼的分佈碼圖20M中的某個區域。與n相關的字元順序亦可包含n為一依序由小到大、一依序由大到小、一先偶數後奇數、一先奇數後偶數、或一亂數的順序。與m相關位元順序亦可包含m為一依序由小到大、一依序由大到小、一先偶數後奇數、一先奇數後偶數、或一亂數的順序。該第一記憶體陣列201與該第二記憶體陣列202具有相同的結構,該第一記憶體陣列201的N個字元WLA1~WLAN與第二記憶體陣列202的第n個字元WLBn形成一擴展字元、且該第一記憶體陣列201的第m個位元BLAm與該第二記憶體陣列202的第m個位元BLBm藉由縱向對稱或縱向鏡像排列的配置而分別電性耦接該第一端2041與該第二端2042。
在本發明的任一實施例中,若第一記憶體陣列201與第二記
憶體陣列202屬於非揮發記憶體,則可將讀取單元204所讀到的N*M個比較結果R1~RN*M儲存到第一記憶體陣列201與第二記憶體陣列202中。例如,各該N*M個比較結果R1~RN*M根據一預定規則被使用來程式化對應之該第一記憶體陣列201的第n個字元WLAn的第m個位元BLAm及/或該第二記憶體陣列202的第n個字元WLBn的第m個位元BLBm其中之一n*m位元值。該讀取單元204可為具有一正輸入端與負輸入端的一比較器或是一感測運算放大器,該讀取單元204的該第一端2041為該正輸入端且該讀取單元204的該第二端2042為該負輸入端;或是該讀取單元204的該第一端2041為該負輸入端且該讀取單元204的該第二端2042為該正輸入端。
承上,該預定規則如下:(1)當各該N*M個比較結果之一特定結果為1時,則程式化該特定結果所對應之第二記憶體陣列的第n個字元的第m個位元,其中該第二記憶體陣列的該n*m位元值可為0或者1,或程式化該特定結果所對應之該第一記憶體陣列的第n個字元的第m個位元,其中該第一記憶體陣列的該n*m位元值可為1或者0,以及(2)當各該N*M個比較結果之一特定結果為0時,則程式化該特定結果所對應之第一記憶體陣列的第n個字元的第m個位元,其中該第一記憶體陣列的該n*m位元值可為0或者1,或程式化該特定結果所對應之該第二記憶體陣列的第n個字元的第m個位元,其中該第二記憶體陣列的該n*m位元值可為1或者0。
進一步來說,該預定規則還包含一特定規則,該特定規則如下:(1)當各該N*M個比較結果R1~RN*M之一特定結果為1時,當該第二記憶體陣列202的第n個字元WLBn的第m個位元BLBm具有一次性可程式(OTP),則程式化該特定結果所對應之該第一記憶體陣列201的第n個字元
WLAn的第m個位元BLAm的位元值為1,其中該一次性可程式(OTP)可為熔絲(fuse)或者反熔絲(anti-fuse),以及(2)當各該N*M個比較結果R1~RN*M之一特定結果為0時,當該第一記憶體陣列201的第n個字元WLAn的第m個位元BLAm具有一次性可程式(OTP),則可不用程式化該第一記憶體陣列201的第n個字元WLAn的第m個位元BLAm,或程式化該特定結果所對應之該第二記憶體陣列202的第n個字元WLBn的第m個位元BLBm的位元值為1,其中該一次性可程式(OTP)可為熔絲(fuse)或者反熔絲(anti-fuse)。
承上,該特定規則如下:(3)當各該N*M個比較結果R1~RN*M之一特定結果為1時,當該第一記憶體陣列201的第n個字元WLAn的第m個位元BLAm具有一次性可程式(OTP),則程式化該特定結果所對應之該第二記憶體陣列202的第n個字元WLBn的第m個位元BLBm的位元值為1,其中該一次性可程式(OTP)可為熔絲(fuse)或者反熔絲(anti-fuse),以及(4)當各該N*M個比較結果R1~RN*M之一特定結果為0時,當該第二記憶體陣列202的第n個字元WLBn的第m個位元BLBm具有一次性可程式(OTP),則可不用程式化該第二記憶體陣列202的第n個字元WLBn的第m個位元BLBm,或程式化該特定結果所對應之該第一記憶體陣列201的第n個字元WLAn的第m個位元BLAm的位元值為1,其中該一次性可程式(OTP)可為熔絲(fuse)或者反熔絲(anti-fuse)。
在本發明的任一實施例中,該選擇單元203包含一多工器以及一解碼器的至少其中之一。字元WLA1~WLAN或字元WLB1~WLBN的選擇亦可使用該選擇單元203來選擇,例如使用解碼器解碼字元的位址,本領域技藝人士自當可理解,因此不再詳述。
在本發明的任一實施例中,該裝置20還可包含電性耦接於該讀取單元204的一第三記憶體陣列,用以儲存該隨機碼。該第一記憶體陣列201、該第二記憶體陣列202及該第三記憶體陣列可為一一次性可程式(OTP)記憶體、一矽-氧化矽-氮化矽-氧化矽-矽(SONOS)記憶體、一電氣可抹除可程式(EEPROM)記憶體、一快閃記憶體、一磁阻式隨機存取記憶體(MRAM)、以及一電阻式隨機存取記憶體(ReRAM)的其中之一。
在本發明的任一實施例中,該第一電性參數EAm包含該第一記憶體陣列201的第n個字元WLAn的第m個位元BLAm的一第一胞元電流或一第一臨界電壓的至少其中之一。該第二電性參數EBm包含該第二記憶體陣列202的第n個字元WLBn的第m個位元BLBm的一第二胞元電流或一第二臨界電壓的至少其中之一。
在第四圖中的字元WLA1~WLAN與字元WLB1~WLBN之間的排列配置可為縱向對稱或是縱向鏡像的排列配置,位元BLA1~BLAM與位元BLB1~BLBM之間的排列配置亦可為縱向對稱或是縱向鏡像的排列配置,因此至少有四種排列配置。此外,位元BLA1~BLAM與位元BLB1~BLBM亦可串接排列形成2M個位元,串接排列的配置亦分成縱向對稱或縱向鏡像的排列配置。
在此必須說明的是,下述實施例沿用前述實施例的部分內容,並且省略了相同技術內容的說明。關於省略部分的說明可參考前述實施例,下述實施例不再重複贅述。
請參閱第五圖,其為本發明另一較佳實施例產生用於一電子元件的一隨機碼的裝置30。該裝置30包含一對記憶體301,302以及一讀取單
元304,該對記憶體301,302包含一第一記憶體301與一第二記憶體302,其中各該記憶體具有N個字元WLA1~WLAN,且各該N個字元WLA1~WLAN具有M個位元BLA1~BLAM,BLB1~BLBM。該讀取單元304具有一第一端3041與一第二端3042,其中該第一端3041選擇性電性耦接該第一記憶體301的該M個位元BLA1~BLAM,該第二端3042選擇性電性耦接該第二記憶體302的該M個位元BLB1~BLBM,其中:該讀取單元304依一特定n相關順序及一特定m相關順序讀取並比較該第一記憶體301的第n個字元WLAn的第m個位元BLAm之一第一電性參數EAm以及該第二記憶體302的第n個字元WLAn的第m個位元BLBm之一第二電性參數EBm,其中1≦n≦N且1≦m≦M,以獲得複數比較結果ROUT1,並據以形成該隨機碼。
在第五圖中,該第一記憶體301與該第二記憶體302具有相同的結構,該第一記憶體301與該第二記憶體302的M個位元BLA1~BLAM,BLB1~BLBM,相鄰組合形成2M個位元,且該第一記憶體301與該第二記憶體302屬於相同的字元範圍,而該第一記憶體301的第m個位元BLAm與該第二記憶體302的第m個位元BLBm藉由同向排列的配置而分別電性耦接至該第一端3041與該第二端3042。
在本實施例中,該第一記憶體301與該第二記憶體302皆為記憶體陣列201,202。該裝置30更包含一選擇單元303,電性耦接該對記憶體301,302與該讀取單元304。該選擇單元303依該特定m相關順序導通該第一記憶體301的第n個字元WLAn的第m個位元BLAm至該第一端3041、且依該特定m相關順序導通該第二記憶體302的第n個字元WLBn的第m個位元BLBm至該第二端3042。
請參閱第六圖,其為本發明另一較佳實施例產生用於一電子元件的一隨機碼的裝置40。該裝置40包含一對記憶體401,402以及一讀取單元404,該對記憶體401,402包含一第一記憶體401與一第二記憶體402,其中各該記憶體具有N個字元WLA1~WLAN,且各該N個字元WLA1~WLAN具有M個位元BLA1~BLAM,BLB1~BLBM。該讀取單元404具有一第一端4041與一第二端4042,其中該第一端4041選擇性電性耦接該第一記憶體401的該M個位元BLA1~BLAM,該第二端4042選擇性電性耦接該第二記憶體402的該M個位元BLB1~BLBM,其中:該讀取單元404依一特定n相關順序及一特定m相關順序讀取並比較該第一記憶體401的第n個字元WLAn的第m個位元BLAm之一第一電性參數EAm以及該第二記憶體402的第n個字元WLAn的第m個位元BLBm之一第二電性參數EBm,其中1≦n≦N且1≦m≦M,以獲得複數比較結果ROUT2,並據以形成該隨機碼。
在第六圖中,該第一記憶體401與該第二記憶體402具有相同的結構,該第一記憶體401與該第二記憶體402的M個位元BLA1~BLAM,BLB1~BLBM,相鄰組合形成2M個位元,而該第一記憶體401的第m個位元BLAm與該第二記憶體402的第m個位元BLBm藉由相互鏡像排列的配置而分別電性耦接至該第一端4041與該第二端4042。
在本實施例中,該第一記憶體401與該第二記憶體402皆為記憶體陣列201,202。該裝置40更包含一選擇單元403,電性耦接該對記憶體401,402與該讀取單元404。該選擇單元403依該特定m相關順序導通該第一記憶體401的第n個字元WLAn的第m個位元BLAm至該第一端4041、且依該特定m相關順序導通該第二記憶體402的第n個字元WLBn的第m個位元
BLBm至該第二端4042。
從上述的說明可歸納如下:該第一記憶體陣列201,301,401與該第二記憶體陣列202,302,402可具有不同的字元或相同的字元。該第一記憶體陣列201,301,401與該第二記憶體陣列202,302,402的M個位元BLA1~BLAM,BLB1~BLBM與該讀取單元204,304,404的選擇性電性耦接包含下列配置的其中之一:該第一記憶體陣列201與該第二記憶體陣列202的M個位元BLA1~BLAM,BLB1~BLBM藉由縱向對稱或縱向鏡像排列的配置而分別電性耦接至該第一端2041與該第二端2042。該第一記憶體陣列301與該第二記憶體陣列302的M個位元BLA1~BLAM,BLB1~BLBM相鄰組合形成2M個位元,而該第一記憶體陣列301的第m個位元BLAm與該第二記憶體陣列302的第m個位元BLBm藉由同向排列的配置而分別電性耦接至該第一端3041與該第二端3042。該第一記憶體陣列401與該第二記憶體陣列402的M個位元BLA1~BLAM,BLB1~BLBM相鄰組合形成2M個位元,而該第一記憶體陣列401的第m個位元BLAm與該第二記憶體陣列402的第m個位元BLBm藉由相互鏡像排列的配置而分別電性耦接至該第一端4041與該第二端4042。該讀取單元204,304,404為一比較器,其中該比較器具有該第一端2041,3041,4041與該第二端2042,3042,4042。該比較器依序比較該第一記憶體陣列201,301,401的第n個字元WLAn的第m個位元BLAm之該第一電性參數EAm與該第二記憶體陣列202,302,402的第n個字元WLBn的第m個位元BLBm之該第二電性參數EBm,其中:當該第一記憶體(陣列)201,301,401的第n個字元WLAn的第m個位元BLAm之該第一電性參數EAm大於該第二記憶體(陣列)202,302,402的第n個字元WLAn的第m個位元BLAm之該第二電
性參數EBm時,則該比較器輸出1,否則輸出0;或當該第一記憶體(陣列)201,301,401的第n個字元WLAn的第m個位元BLAm之該第一電性參數EAm大於該第二記憶體(陣列)202,302,402的第n個字元WLAn的第m個位元BLAm之該第二電性參數EBm時,則該比較器輸出0,否則輸出1。
請參閱第七圖,其為本發明較佳實施例,其為本發明較佳實施例隨機碼的分佈碼圖20M的示意圖,黑色代表本揭示的裝置20,30,40所產生或讀出的PUF隨機碼為1,白色代表為0。本發明藉由比較相同的記憶體結構的輸出之電性參數以產生隨機PUF碼,兩記憶體的結構愈接近,兩記憶體之間用來互相比較的位元的排列配置愈對稱或愈鏡像,則PUF碼的隨機的程度愈顯著。第七圖與第三圖相比,可看出比第三圖中的PUF碼圖10M的隨機碼的分佈更均勻,沒有週期性的樣式產生,顯著地克服了固定的寄生源線阻值造成了PUF碼不隨機的問題,而達到產生優異的隨機PUF碼的效果。
請參閱第八圖,其為本發明較佳實施例產生用於一電子元件的一隨機碼的方法S10的示意圖,包含下列步驟:步驟S101,提供一對記憶體陣列、一讀取單元、以及一選擇單元,其中該讀取單元具有一第一端與一第二端,該選擇單元電性耦接該對記憶體陣列與該讀取單元,該對記憶體陣列包含一第一記憶體陣列以及一第二記憶體陣列並各具有N個字元,而各該N個字元具有M個位元;步驟S102,依序選擇該對記憶體陣列的第n個字元的第m個位元,其中1≦n≦N且1≦m≦M;步驟S103,藉由該選擇單元依序導通該第一記憶體陣列的第n個字元的第m個位元至該第一端、且依序導通該第二記憶體陣列的第n個字元的第m個位元至該第二端;步驟S104,藉由該讀取單元依序比較該第一記憶體陣列的第n個字元的第m個位元之一第一
電性參數與該第二記憶體陣列的第n個字元的第m個位元之一第二電性參數,以獲得N*M個第一比較結果,並據以形成一隨機碼。
在本發明的任一實施例中,該方法S10更包含下列步驟:根據一預定規則使用各該N*M個第一比較結果程式化對應之該第一記憶體陣列的第n個字元的第m個位元及該第二記憶體陣列的第n個字元的第m個位元其中之一n*m位元值,其中,該預定規則如下:(1)當各該N*M個第一比較結果之一特定結果為1時,則程式化該特定結果所對應之第二記憶體陣列的第n個字元的第m個位元,其中該第二記憶體陣列的該n*m位元值可為0或者1,或程式化該特定結果所對應之該第一記憶體陣列的第n個字元的第m個位元,其中該第一記憶體陣列的該n*m位元值可為1或者0,以及(2)當各該N*M個第一比較結果之一特定結果為0時,則程式化該特定結果所對應之第一記憶體陣列的第n個字元的第m個位元,其中該第一記憶體陣列的該n*m位元值可為0或者1,或程式化該特定結果所對應之該第二記憶體陣列的第n個字元的第m個位元,其中該第二記憶體陣列的該n*m位元值可為1或者0。
進一步來說,該預定規則還包含一特定規則,該特定規則如下:(1)當該各該N*M個第一比較結果之一特定結果為1時,當該第二記憶體陣列的第n個字元的第m個位元具有一次性可程式(OTP),則程式化該特定結果所對應之該第一記憶體陣列的第n個字元的第m個位元的位元值為1,以及(2)當該各該N*M個第一比較結果之一特定結果為0時,當該第一記憶體陣列的第n個字元的第m個位元具有一次性可程式(OTP),則程式化該特定結果所對應之該第二記憶體陣列的第n個字元的第m個位元的位元值為1;以及藉由該讀取單元依序比較程式化後之該第一記憶體陣列的第n個字元的第m
個位元之該第一電性參數與程式化後之該第二記憶體陣列的第n個字元的第m個位元之該第二電性參數,以獲得N*M個第二比較結果,並將該第二比較結果轉換成該隨機碼。
在本發明的任一實施例中,該方法S10更包含下列步驟:選擇具有相同的結構的該第一記憶體陣列與該第二記憶體陣列,並使該第一記憶體陣列與該第二記憶體陣列的N個字元分別以縱向鏡像排列,且該第一記憶體的第m個位元與該第二記憶體的第m個位元藉由縱向對稱或縱向鏡像排列的配置而分別電性耦接至該第一端與該第二端、使該第一記憶體與該第二記憶體的M個位元相鄰組合形成2M個位元,且該第一記憶體的第m個位元與該第二記憶體的第m個位元藉由同向排列的配置而分別電性耦接至該第一端與該第二端、或使該第一記憶體與該第二記憶體的M個位元相鄰組合形成2M個位元,且該第一記憶體的第m個位元與該第二記憶體的第m個位元藉由相互鏡像排列的配置而分別電性耦接至該第一端與該第二端;將該讀取單元配置為當該第一記憶體陣列的第n個字元的第m個位元之該第一電性參數大於該第二記憶體陣列的第n個字元的第m個位元之該第二電性參數時,該讀取單元的輸出結果包含下列其中之一:該第一比較結果為1,否則為0,或者該第一比較結果為0,否則為1;以及提供一電性耦接於該讀取單元的一第三記憶體陣列,用以儲存該M*N個第一比較結果。其中當該第一記憶體陣列及該第二記憶體陣列皆為一揮發性記憶體時,該第三記憶體陣列為一非揮發性記憶體,用以儲存該M*N個第一比較結果。
本發明雖以上述數個實施方式或實施例揭露如上,然其並非用以限定本發明,任何熟習此技藝者,在不脫離本發明之精神和範圍內,當
可作些許之更動與潤飾,因此本發明之保護範圍當視後附之申請專利範圍所界定者為準。
201:第一記憶體陣列
202:第二記憶體陣列
203:選擇單元
204:讀取單元
2041:第一端
2042:第二端
EA1~EAM:第一電性參數
EB1~EBM:第二電性參數
WLA1~WLAN:第一記憶體的N個字元
WLB1~WLAN:第二記憶體的N個字元
BLA1~BLAM:第一記憶體的M個位元
BLB1~BLBM:第二記憶體的M個位元
R1~RN*M:N*M個比較結果
ROUT1,ROUT2:複數比較結果
20:產生用於一電子元件的一隨機碼的裝置
Claims (15)
- 一種產生用於一電子元件的一隨機碼的裝置,包含:一第一記憶體陣列,具有N個字元,且各該N個字元具有M個位元;一第二記憶體陣列,具有N個字元,且各該N個字元具有M個位元;一選擇單元,電性耦接該第一記憶體陣列與該第二記憶體陣列;以及一讀取單元,具有一第一端與一第二端,其中該第一端藉由該選擇單元選擇性電性耦接該第一記憶體陣列的M個位元,而該第二端藉由該選擇單元選擇性電性耦接該第二記憶體陣列的M個位元,其中:該選擇單元分別依序導通該第一記憶體陣列與該第二記憶體陣列的第n個字元的第m個位元至該第一端與第二端,其中1≦n≦N且1≦m≦M;以及該讀取單元依序比較該第一記憶體陣列的第n個字元的第m個位元的一第一電性參數與該第二記憶體陣列的第n個字元的第m個位元的一第二電性參數,以獲得N*M個比較結果,並據以形成該隨機碼。
- 如請求項1所述的裝置,其中:該第一記憶體陣列及該第二記憶體陣列為非揮發性記憶體,其中,該非揮發性記憶體可為一一次性可程式(OTP)記憶體、一矽-氧化矽-氮化矽-氧化矽-矽(SONOS)記憶體、一電氣可抹除可程式(EEPROM)記憶體、一快閃記憶體、一磁阻式隨機存取記憶體(MRAM)、以及一電阻式隨機存取記憶體(ReRAM)的其中之一。
- 如請求項1所述的裝置,其中:各該N*M個比較結果根據一預定規則被使用來程式化對應之該第一記憶體陣列及/或該第二記憶體陣列的第n個字元的第m個位元的其中之一n*m位元值,其中,該預定規則如下:當各該N*M個比較結果之一特定結果為1時,則程式化該特定結果所對應之第二記憶體陣列的第n個字元的第m個位元,其中該第二記憶體陣列的該n*m位元值可為0或者1,或程式化該特定結果所對應之該第一記憶體陣列的第n個字元的第m個位元,其中該第一記憶體陣列的該n*m位元值可為1或者0;以及當各該N*M個比較結果之一特定結果為0時,則程式化該特定結果所對應之第一記憶體陣列的第n個字元的第m個位元,其中該第一記憶體陣列的該n*m位元值可為0或者1,或程式化該特定結果所對應之該第二記憶體陣列的第n個字元的第m個位元,其中該第二記憶體陣列的該n*m位元值可為1或者0。
- 如請求項1所述的裝置,其中:該第一電性參數包含該第一記憶體陣列的第n個字元的第m個位元的一第一胞元電流或一第一臨界電壓的至少其中之一;該第二電性參數包含該第二記憶體陣列的第n個字元的第m個位元的一第二胞元電流或一第二臨界電壓的至少其中之一;以及該選擇單元包含一多工器以及一解碼器的至少其中之一。
- 如請求項1所述的裝置,其中:該裝置還包含電性耦接於該讀取單元的一第三記憶體陣列,用以儲存 該隨機碼,其中該第三記憶體陣列為一非揮發性記憶體。
- 如請求項1所述的裝置,其中:該第一記憶體陣列與該第二記憶體陣列的M個位元與該讀取單元的選擇性電性耦接包含下列配置的其中之一:該第一記憶體陣列與該第二記憶體陣列具有相同的結構,且該第一記憶體陣列與該第二記憶體陣列的M個位元藉由縱向對稱或縱向鏡像排列的配置而分別電性耦接至該第一端與該第二端;該第一記憶體陣列與該第二記憶體陣列具有相同的結構,該第一記憶體陣列與該第二記憶體陣列的M個位元相鄰組合形成2M個位元,而該第一記憶體陣列的第m個位元與該第二記憶體陣列的第m個位元藉由同向排列的配置而分別電性耦接至該第一端與該第二端;或該第一記憶體陣列與該第二記憶體陣列具有相同的結構,該第一記憶體陣列與該第二記憶體陣列的M個位元相鄰組合形成2M個位元,而該第一記憶體陣列的第m個位元與該第二記憶體陣列的第m個位元藉由相互鏡像排列的配置而分別電性耦接至該第一端與該第二端。
- 如請求項1所述的裝置,其中:該讀取單元為一比較器,該比較器依序比較該第一記憶體陣列的第n個字元的第m個位元之該第一電性參數與該第二記憶體陣列的第n個字元的第m個位元之該第二電性參數,其中當該第一電性參數大於該第二電性參數時,該比較器的輸出結果可包含下列其中之一:該比較器輸出1,否則輸出0,或者該比較器輸出0,否則輸出1。
- 一種產生用於一電子元件的一隨機碼的方法,包含下列步驟:提供一對記憶體陣列、一讀取單元、以及一選擇單元,其中該讀取單元具有一第一端與一第二端,該選擇單元電性耦接該對記憶體陣列與該讀取單元,該對記憶體陣列包含一第一記憶體陣列以及一第二記憶體陣列並各具有N個字元,而各該N個字元具有M個位元;依序選擇該對記憶體陣列的第n個字元的第m個位元,其中1≦n≦N且1≦m≦M;藉由該選擇單元分別依序導通該第一記憶體陣列與該第二記憶體陣列的第n個字元的第m個位元至該第一端與該第二端;以及藉由該讀取單元依序比較該第一記憶體陣列的第n個字元的第m個位元之一第一電性參數與該第二記憶體陣列的第n個字元的第m個位元之一第二電性參數,以獲得N*M個第一比較結果,並據以形成該隨機碼。
- 如請求項8所述的方法,更包含下列步驟:各該N*M個比較結果根據一預定規則被使用來程式化對應之該第一記憶體陣列及/或該第二記憶體陣列的第n個字元的第m個位元的其中之一n*m組合,其中,該預定規則如下:當各該N*M個比較結果之一特定結果為1時,則程式化該特定結果所對應之第二記憶體陣列的第n個字元的第m個位元,其中該第二記憶體陣列的n*m位元值可為0或者1,或程式化該特定結果所對應之該第一記憶體陣列的第n個字元的第m個位元,其中該第一記憶體陣列的n*m位元值可為1或者0;以及當各該N*M個比較結果之一特定結果為0時,則程式化該特定結果所對應之第一記憶體陣列的第n個字元的第m個位元,其中該第一記憶體陣列的n*m位元值可為0或者1,或程式化該特定結果所對應之該第二記憶體陣列的 第n個字元的第m個位元,其中該第二記憶體陣列的n*m位元值可為1或者0;以及藉由該讀取單元依序比較程式化後之該第一記憶體陣列的第n個字元的第m個位元之該第一電性參數與程式化後之該第二記憶體陣列的第n個字元的第m個位元之該第二電性參數,以獲得N*M個第二比較結果,並將該第二比較結果轉換成該隨機碼。
- 如請求項8所述的方法,該方法更包含下列步驟;選擇具有相同的結構的該第一記憶體陣列與該第二記憶體陣列,並使該第一記憶體陣列與該第二記憶體陣列的N個字元分別以縱向鏡像排列,且該第一記憶體的第m個位元與該第二記憶體的第m個位元藉由縱向對稱或縱向鏡像排列的配置而分別電性耦接至該第一端與該第二端、使該第一記憶體與該第二記憶體的M個位元相鄰組合形成2M個位元,且該第一記憶體的第m個位元與該第二記憶體的第m個位元藉由同向排列的配置而分別電性耦接至該第一端與該第二端、或使該第一記憶體與該第二記憶體的M個位元相鄰組合形成2M個位元,且該第一記憶體的第m個位元與該第二記憶體的第m個位元藉由相互鏡像排列的配置而分別電性耦接至該第一端與該第二端;以及將該讀取單元配置為當該第一記憶體陣列的第n個字元的第m個位元之該第一電性參數大於該第二記憶體陣列的第n個字元的第m個位元之該第二電性參數時,該讀取單元的輸出結果包含下列其中之一:該第一比較結果為1,否則為0,或者該第一比較結果為0,否則為1。
- 如請求項8所述的方法,更包含下列步驟:提供一電性耦接於該讀取單元的一第三記憶體陣列,用以儲存該M*N個第一比較結果,其中該第三記憶體陣列為一非揮發性記憶體。
- 一種產生用於一電子元件的一隨機碼的裝置,包含:一對記憶體,包含一第一記憶體與一第二記憶體,其中各該記憶體具有N個字元,且各該N個字元具有M個位元;以及一讀取單元,具有一第一端與一第二端,其中該第一端選擇性電性耦接該第一記憶體的該M個位元,該第二端選擇性電性耦接該第二記憶體的該M個位元,其中:該讀取單元依一特定n相關順序及一特定m相關順序讀取並比較該第一記憶體的第n個字元的第m個位元之一第一電性參數以及該第二記憶體的第n個字元的第m個位元之一第二電性參數,其中1≦n≦N且1≦m≦M,以獲得複數比較結果,並據以形成該隨機碼;該特定n相關順序包含n為一依序由小到大、一依序由大到小、一先偶數後奇數、一先奇數後偶數、或一亂數的順序;以及該特定m相關順序包含m為一依序由小到大、一依序由大到小、一先偶數後奇數、一先奇數後偶數、或一亂數的順序。
- 如請求項12所述的裝置,其中:該第一記憶體與一第二記憶體皆為記憶體陣列;該裝置更包含一選擇單元,電性耦接該對記憶體與該讀取單元;該選擇單元分別依該特定m相關順序導通該第一記憶體與該第二記憶體的第n個字元的第m個位元至該第一端與該第二端;該第一電性參數包含該第一記憶體的第n個字元的第m個位元的一第一 胞元電流或一第一臨界電壓的至少其中之一;該第二電性參數包含該第二記憶體的第n個字元的第m個位元的一第二胞元電流或一第二臨界電壓的至少其中之一;以及該裝置還包含電性耦接於該讀取單元的一第三記憶體,用以儲存該讀取單元所讀取的該複數比較結果。
- 如請求項12所述的裝置,其中:該裝置還包含電性耦接於該讀取單元的一第三記憶體陣列,用以儲存該隨機碼,其中該第三記憶體陣列為一非揮發性記憶體。
- 如請求項12所述的裝置,其中:該第一記憶體陣列與該第二記憶體陣列的M個位元與該讀取單元的選擇性電性耦接包含下列配置的其中之一:該第一記憶體與該第二記憶體具有相同的結構,且該第一記憶體的第m個位元與該第二記憶體的第m個位元藉由縱向對稱或縱向鏡像排列的配置而分別電性耦接該第一端與該第二端;該第一記憶體與該第二記憶體具有相同的結構,該第一記憶體與該第二記憶體的M個位元相鄰組合形成2M個位元,而該第一記憶體的第m個位元與該第二記憶體的第m個位元藉由同向排列的配置而分別電性耦接至該第一端與該第二端;或該第一記憶體與該第二記憶體具有相同的結構,該第一記憶體與該第二記憶體的M個位元相鄰組合形成2M個位元,而該第一記憶體的第m個位元與該第二記憶體的第m個位元藉由相互鏡像排列的配置而分別電性耦接至該第一端與該第二端。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW111106258A TWI789248B (zh) | 2022-02-21 | 2022-02-21 | 產生用於一電子元件的一隨機碼的裝置及方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW111106258A TWI789248B (zh) | 2022-02-21 | 2022-02-21 | 產生用於一電子元件的一隨機碼的裝置及方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
TWI789248B true TWI789248B (zh) | 2023-01-01 |
TW202334973A TW202334973A (zh) | 2023-09-01 |
Family
ID=86670045
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW111106258A TWI789248B (zh) | 2022-02-21 | 2022-02-21 | 產生用於一電子元件的一隨機碼的裝置及方法 |
Country Status (1)
Country | Link |
---|---|
TW (1) | TWI789248B (zh) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10032520B2 (en) * | 2015-08-18 | 2018-07-24 | Ememory Technology Inc. | Power system with detecting function |
US20200226073A1 (en) * | 2019-01-13 | 2020-07-16 | Ememory Technology Inc. | Random code generator with non-volatile memory |
TW202205294A (zh) * | 2017-10-13 | 2022-02-01 | 美商超捷公司 | 用於快閃記憶體裝置的防駭侵機制 |
-
2022
- 2022-02-21 TW TW111106258A patent/TWI789248B/zh active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10032520B2 (en) * | 2015-08-18 | 2018-07-24 | Ememory Technology Inc. | Power system with detecting function |
TW202205294A (zh) * | 2017-10-13 | 2022-02-01 | 美商超捷公司 | 用於快閃記憶體裝置的防駭侵機制 |
US20200226073A1 (en) * | 2019-01-13 | 2020-07-16 | Ememory Technology Inc. | Random code generator with non-volatile memory |
Also Published As
Publication number | Publication date |
---|---|
TW202334973A (zh) | 2023-09-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10685728B2 (en) | Code generating apparatus and one time programming block | |
US10243749B2 (en) | Physically unclonable function circuit, and system and integrated circuit including the same | |
US11495300B2 (en) | Method and apparatus for PUF generator characterization | |
JP6242448B2 (ja) | コード生成装置及びワンタイムプログラミングブロック | |
CN110544500B (zh) | 随机码产生器及相关随机码产生方法 | |
US10574469B1 (en) | Physically unclonable function and method for generating a digital code | |
TW201921280A (zh) | 在用於物理不可複製功能安全之一次可程式化記憶體單元中之閘極氧化物崩潰 | |
US20220199151A1 (en) | Stable memory cell identification for hardware security | |
TW201734879A (zh) | 以sram為基礎的認證電路 | |
US10880101B2 (en) | Method and circuit for de-biasing PUF bits | |
CN111581675A (zh) | 一种基于阻变存储器的物理不可克隆函数电路结构 | |
US11537754B1 (en) | Pseudo physically unclonable functions (PUFS) using one or more addressable arrays of elements having random/pseudo-random values | |
TWI789248B (zh) | 產生用於一電子元件的一隨機碼的裝置及方法 | |
US20240089126A1 (en) | Device Signature Based On Trim And Redundancy Information | |
Vatajelu et al. | STT-MRAM-based strong PUF architecture | |
CN107766749B (zh) | 一种物理不可克隆功能的电路实现方法 | |
JP4323527B2 (ja) | 半導体記憶装置 | |
US20080186753A1 (en) | High density one time programmable memory | |
CN111630598B (zh) | 非易失性存储装置以及其写入方法 | |
CN112687307A (zh) | 基于施密特触发器型反相器的物理不可克隆函数电路结构 | |
CN112837737B (zh) | 具有指数增长型响应数量的puf电路及加密装置 | |
US11404119B1 (en) | Non-volatile memory device and challenge response method | |
US20240113715A1 (en) | Generating physical unclonable function data from a transistor of a semiconductor device | |
CN116663076A (zh) | 实现物理不可克隆函数的电路及其操作方法、电子设备 | |
US20240242767A1 (en) | Storage device for generating identity code and identity code generating method |