TW201405359A - 隨機數產生方法、加密金鑰產生方法、記憶體、記憶體系統以及加密金鑰系統 - Google Patents
隨機數產生方法、加密金鑰產生方法、記憶體、記憶體系統以及加密金鑰系統 Download PDFInfo
- Publication number
- TW201405359A TW201405359A TW102113707A TW102113707A TW201405359A TW 201405359 A TW201405359 A TW 201405359A TW 102113707 A TW102113707 A TW 102113707A TW 102113707 A TW102113707 A TW 102113707A TW 201405359 A TW201405359 A TW 201405359A
- Authority
- TW
- Taiwan
- Prior art keywords
- random number
- volatile memory
- memory cell
- voltage
- memory
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/58—Random or pseudo-random number generators
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/14—Protection against unauthorised use of memory or access to memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/58—Random or pseudo-random number generators
- G06F7/588—Random number generators, i.e. based on natural stochastic processes
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/22—Safety or protection circuits preventing unauthorised or accidental access to memory cells
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0861—Generation of secret information including derivation or calculation of cryptographic keys or passwords
- H04L9/0869—Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/12—Details relating to cryptographic hardware or logic circuitry
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- General Engineering & Computer Science (AREA)
- Signal Processing (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- Computational Mathematics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Read Only Memory (AREA)
Abstract
在非揮發性記憶體胞元的記憶體中,藉由以下方式而產生隨機數(或稱為亂數):對非揮發性記憶體胞元進行程式化;使用根據所述經程式化的非揮發性記憶體胞元的特性而選擇的隨機數讀取電壓來讀取所述非揮發性記憶體胞元,以產生隨機讀取資料;以及自所述隨機讀取資料產生所述隨機數。
Description
本發明概念大體而言是關於半導體記憶體元件以及記憶體系統。更特定言之,本發明概念是關於能夠使用構成非揮發性記憶體胞元(nonvolatile memory cell)的特性來產生隨機數(random number)的記憶體系統以及記憶體系統的操作方法。
半導體記憶體元件大體上可根據其操作性質而分類為揮發性記憶體元件或非揮發性記憶體元件。揮發性記憶體元件在未被施加電源的情況下會丟失所儲存的資料,而非揮發性記憶體元件即使在不再被施加電源時仍能夠保留所儲存的資料。
存在不同種類的非揮發性記憶體元件,包含(例如)遮罩唯讀記憶體(mask read-only memory;MROM)、可程式化唯讀記憶體(programmable read-only memory;PROM)、可抹除可程式化唯讀記憶體(erasable programmable read-only memory;EPROM)以及電可抹除可程式化唯讀記憶體(electrically erasable
programmable read-only memory;EEPROM)。快閃記憶體為特定類型的EEPROM,且已廣泛用於種類繁多的數位系統,諸如,電腦、蜂巢式電話、PDA、數位相機、攝錄影機、語音記錄器、MP3播放器、手持式PC、遊戲機、傳真機、掃描儀、印表機及其類似者。
在記憶體系統的設計及操作中,資料安全幾乎始終是重要考慮事項。試圖複製或損毀原始碼、所儲存的使用者資料及/或主機系統資料的日益複雜的攻擊(例如,探查、錯誤***、功耗分析及其類似者)在數位系統的操作期間不斷造成威脅。因此,持續需要對現代記憶體元件所儲存的資料進行加密。使用加密金鑰來對記憶體系統(例如)自主機接收的傳入資料進行加密。此後,在自記憶體讀取資料且將所述資料提供至主機時,使用相同加密(/解密)金鑰來對所述資料進行解密。可根據使用者提供的資訊(例如,密碼)、安全碼、一或多個隨機數、或此等數位值或類似數位值的一些組合來按各種方式定義或產生加密金鑰。在加密金鑰的產生期間,許多現代記憶體系統將至少一個隨機數用作計算種子(seed)或變數。
然而,真隨機數的產生及提供並非易事。實際上,由於小尺寸及適中功率消耗等記憶體系統要求,現代記憶體系統中的隨機數的產生特別麻煩。在許多習知情形下,由獨立隨機數產生電路產生且提供用於產生加密金鑰的隨機數。下文中,術語「獨立隨機數產生電路」用於表示僅用於或主要用於產生隨機數的電
路及相關控制軟體。獨立隨機數產生電路的尺寸可相當大,且種類繁多的此等電路為熟習此項技術者所知。
在一個實施例中,本發明概念提供一種在非揮發性記憶體胞元的記憶體中產生隨機數的方法,所述方法包括:對所述非揮發性記憶體胞元進行程式化;使用根據經程式化的所述非揮發性記憶體胞元的特性而選擇的隨機數讀取電壓來讀取所述非揮發性記憶體胞元,以產生隨機讀取資料;以及自所述隨機讀取資料產生所述隨機數。
在另一實施例中,本發明概念提供一種方法,包括:使用根據經程式化的非揮發性記憶體胞元的特性而選擇的隨機數讀取電壓,而自所述非揮發性記憶體胞元獲得隨機讀取資料。
在另一實施例中,本發明概念提供一種加密金鑰產生方法,包括:使用程式化電壓來對非揮發性記憶體胞元進行程式化,其中所述非揮發性記憶體胞元中的每一者被指定為回應於所述程式化而展現落入標稱臨限電壓分佈內的臨限電壓;藉由使用落入所述標稱臨限電壓分佈內的至少一個隨機數讀取電壓而讀取所述經程式化的非揮發性記憶體胞元,而產生隨機讀取資料;將所述隨機讀取資料作為隨機數應用於金鑰產生器;以及使用所述金鑰產生器而產生加密金鑰。
在另一實施例中,本發明概念提供一種記憶體,包括:
記憶體胞元陣列,包含非揮發性記憶體胞元;程式化電壓產生器,其在程式化操作期間,將程式化電壓施加至所述記憶體胞元陣列的選定的字元線;以及隨機數讀取電壓產生器,其在隨機數產生操作期間,將隨機數讀取電壓施加至所述選定的字元線,其中所述隨機數讀取電壓的位準被選擇為處於所述非揮發性記憶體胞元在被程式化時所預期的標稱臨限電壓分佈內。
在另一實施例中,本發明概念提供一種記憶體,包括:記憶體胞元陣列,包含非揮發性記憶體胞元;程式化電壓產生器,其在程式化操作期間,將程式化電壓施加至所述記憶體胞元陣列的選定的字元線;以及隨機數讀取電壓產生器,其在隨機數產生操作期間,將隨機數讀取電壓施加至所述選定的字元線,其中所述隨機數讀取電壓為程式化驗證電壓,所述程式化驗證電壓用於判定在所述非揮發性記憶體胞元的程式化期間所述非揮發性記憶體胞元中的至少一者所作出的緩慢胞元回應。
在另一實施例中,本發明概念提供一種無需使用獨立隨機數產生電路便產生隨機數的記憶體系統,所述系統包括:控制單元,其接收傳入資料以及對應的位址資訊;安全電路,其使用所述位址資訊以及加密金鑰而自所述傳入資料產生經加密的資料;記憶體,包含非揮發性記憶體胞元,所述記憶體儲存所述經加密的資料,且在所述非揮發性記憶體胞元藉由使用隨機數讀取電壓而得以讀取時,提供所述隨機數,其中所述隨機數讀取電壓被選擇為處於所述非揮發性記憶體胞元在被程式化時的標稱臨限
電壓分佈內;以及金鑰產生器,其自所述隨機數產生所述加密金鑰。
在另一實施例中,本發明概念提供一種無需使用獨立隨機數產生電路便產生隨機數的記憶體系統,所述系統包括:控制單元,其接收傳入資料以及對應的位址資訊;安全電路,其使用所述位址資訊以及加密金鑰而自所述傳入資料產生經加密的資料;記憶體,包含非揮發性記憶體胞元,所述記憶體儲存所述經加密的資料,且在所述非揮發性記憶體胞元藉由使用隨機數讀取電壓而得以讀取時,提供所述隨機數,其中所述隨機數讀取電壓為程式化驗證電壓,所述程式化驗證電壓用於判定在所述非揮發性記憶體胞元的程式化期間的所述非揮發性記憶體胞元中的至少一者的緩慢胞元;以及金鑰產生器,其自所述隨機數產生所述加密金鑰。
在另一實施例中,本發明概念提供一種系統,包括:主機,其提供傳入資料以及對應的位址資訊;以及記憶卡。所述記憶卡包括:卡控制器,其使用所述位址資訊以及加密金鑰而自所述傳入資料產生經加密的資料;記憶體,包含快閃記憶體胞元,所述記憶體儲存所述經加密的資料,且在所述快閃記憶體胞元藉由使用隨機數讀取電壓而得以讀取時,提供隨機數,其中所述隨機數讀取電壓是根據非揮發性記憶體胞元的特性而選擇;以及金鑰產生器,其自所述隨機數產生所述加密金鑰。
在另一實施例中,本發明概念提供一種系統,包括:主
機,其提供傳入資料以及對應的位址資訊;以及固態磁碟(solid state drive;SSD)。所述SSD包括:SSD控制器,其使用所述位址資訊以及加密金鑰而自所述傳入資料產生經加密的資料;記憶體,包含快閃記憶體胞元,所述快閃記憶體胞元儲存所述經加密的資料,且在所述快閃記憶體胞元藉由使用隨機數讀取電壓而得以讀取時,提供隨機數,其中所述隨機數讀取電壓是根據非揮發性記憶體胞元的特性而選擇;以及金鑰產生器,其自所述隨機數產生所述加密金鑰。
100‧‧‧記憶體系統
110‧‧‧控制單元
120‧‧‧記憶體
130‧‧‧安全電路
131‧‧‧加密電路
132‧‧‧解密電路
140‧‧‧金鑰產生器
200‧‧‧記憶體系統
210‧‧‧控制單元
220‧‧‧快閃記憶體
221‧‧‧緩慢位元計數器
230‧‧‧安全電路
240‧‧‧金鑰產生器
1000‧‧‧快閃記憶體系統
1100‧‧‧快閃記憶體
1110‧‧‧記憶體胞元陣列
1111‧‧‧實體頁面
1112‧‧‧胞元串
1120‧‧‧位址解碼器
1130‧‧‧頁面緩衝器電路
1140‧‧‧資料輸入/輸出(I/O)電路
1150‧‧‧電壓產生器
1151‧‧‧選擇讀取電壓產生器
1152‧‧‧非選擇讀取電壓產生器
1153‧‧‧隨機數讀取電壓產生器
1160‧‧‧控制邏輯
1200‧‧‧記憶體控制器
1210‧‧‧主機介面
1220‧‧‧快閃介面
1230‧‧‧控制單元
1240‧‧‧RAM
1250‧‧‧金鑰產生器
1260‧‧‧加密電路
2000‧‧‧快閃記憶體系統
2100‧‧‧快閃記憶體
2110‧‧‧記憶體胞元陣列
2120‧‧‧位址解碼器
2130‧‧‧頁面緩衝器電路
2140‧‧‧資料輸入/輸出電路
2150‧‧‧電壓產生器
2151‧‧‧選擇讀取電壓產生器
2152‧‧‧非選擇讀取電壓產生器
2153‧‧‧隨機數讀取電壓產生器
2160‧‧‧控制邏輯
2165‧‧‧金鑰產生器
2200‧‧‧記憶體控制器
2210‧‧‧主機介面
2220‧‧‧快閃介面
2230‧‧‧控制單元
2240‧‧‧RAM
2250‧‧‧加密電路
3000‧‧‧記憶卡系統
3100‧‧‧主機
3110‧‧‧主機控制器
3120‧‧‧主機連接單元
3130‧‧‧DRAM
3200‧‧‧記憶卡
3210‧‧‧卡連接單元
3220‧‧‧卡控制器
3230‧‧‧快閃記憶體
4000‧‧‧系統
4100‧‧‧主機
4111‧‧‧主機介面
4120‧‧‧主機控制器
4130‧‧‧DRAM
4200‧‧‧SSD
4201、4202、420n‧‧‧非揮發性記憶體
4210‧‧‧SSD控制器
4211‧‧‧NVM介面
4212‧‧‧主機介面
4213‧‧‧加密電路
4214‧‧‧控制單元
4215‧‧‧SRAM
4220‧‧‧輔助電源供應器
4221‧‧‧電源連接器
5000‧‧‧電子元件
5100‧‧‧記憶體系統
5110‧‧‧快閃記憶體
5120‧‧‧記憶體控制器
5200‧‧‧電源供應元件
5250‧‧‧輔助電源供應器
5300‧‧‧CPU
5400‧‧‧DRAM
5500‧‧‧使用者介面
6000‧‧‧快閃記憶體
6110‧‧‧三維(3D)胞元陣列
6120‧‧‧資料輸入/輸出電路
6130‧‧‧位址解碼器
6140‧‧‧控制邏輯
ADDR‧‧‧位址資訊
BL0、BL1、BL2、BLm‧‧‧位元線
BLK1、BLK2、BLKz‧‧‧記憶體區塊
CH1、CH2、CHn‧‧‧通道
CLK‧‧‧時脈信號
CMD‧‧‧命令
CSL‧‧‧共同源極線
CTRL‧‧‧控制信號
DATA‧‧‧資料
DL‧‧‧資料線
E‧‧‧標稱抹除臨限電壓分佈
GSL‧‧‧接地選擇線
GST‧‧‧接地選擇電晶體
I‧‧‧內部部分
KEY‧‧‧加密金鑰
MC1~MC8‧‧‧記憶體胞元
NS11、NS12、NS13、NS21、NS22、NS23、NS31、NS32、NS33‧‧‧「反及」串
O‧‧‧外部部分
P‧‧‧標稱程式化臨限電壓分佈
P1、P2、P3‧‧‧程式化狀態
PWR‧‧‧電源開啟信號
RN、RN1、RN2、RN3‧‧‧隨機數
SB1‧‧‧第一隨機資料
SB2‧‧‧第二隨機資料
SGL‧‧‧信號
SSL、SSL1、SSL2、SSL3‧‧‧串選擇線
SST‧‧‧串選擇電晶體
SUB‧‧‧基板
Vf1‧‧‧第一程式化驗證電壓
Vf2‧‧‧第二程式化驗證電壓
Vrd‧‧‧選擇讀取電壓
Vread‧‧‧非選擇讀取電壓
Vrn、Vrn1、Vrn2、Vrn3‧‧‧隨機數讀取電壓
WL0~WL63‧‧‧字元線
下文中,將參看附圖來描述本發明概念的某些實施例。
圖1為說明根據本發明概念的實施例的記憶體系統的方塊圖。
圖2為說明根據本發明概念的實施例的快閃記憶體系統的方塊圖。
圖3為進一步說明圖2的快閃記憶體系統的方塊圖。
圖4為說明關於本發明概念的某些態樣的單位準記憶體胞元的例示性臨限電壓分佈的概念圖。
圖5為進一步說明關於本發明概念的某些態樣的單次程式化操作胞元所定義的臨限電壓分佈的概念圖。
圖6為說明自藉由根據本發明概念的實施例的方法而產生的多個隨機數(隨機讀取資料)產生加密金鑰的表格。
圖7為概述可用於圖1及圖2的記憶體系統中的至少一者中的隨機數產生方法的流程圖。
圖8為說明根據本發明概念的另一實施例的快閃記憶體系統的方塊圖。
圖9為進一步說明圖8的快閃記憶體系統的方塊圖。
圖10為說明根據本發明概念的又一實施例的非揮發性記憶體系統的方塊圖。
圖11A為進一步說明藉由根據本發明概念的實施例(諸如圖10所示的實施例)的方法而產生隨機數的概念圖。
圖11B為說明自藉由根據本發明概念的實施例的方法而產生的多個隨機數(隨機讀取資料)產生加密金鑰的表格。
圖12為說明根據本發明概念的實施例的可併有記憶體系統的記憶卡系統的方塊圖。
圖13為說明根據本發明概念的實施例的可併有記憶體系統的固態磁碟(SSD)的方塊圖。
圖14為進一步說明圖13的SSD控制器的方塊圖。
圖15為說明根據本發明概念的實施例的可併有快閃記憶體系統的電子元件的方塊圖。
圖16為說明可根據本發明概念的實施例而操作的併有3D記憶體胞元陣列的快閃記憶體系統的方塊圖。
圖17為進一步說明圖16的3D記憶體胞元陣列的一種可能結構的透視圖。
圖18為在相關部分中說明圖17的記憶體胞元陣列的等效電路的圖式。
現將參看附圖來另外詳細描述本發明概念的某些實施例。然而,本發明概念可按照各種不同形式來體現且不應解釋為僅限於所說明的實施例。實情為,將此等實施例作為實例來提供,以使得本揭露將為全面且完整的,且將向熟習此項技術者完全傳達本發明概念的概念。因此,並未關於所說明的實施例中的一些來描述熟知程序、部件以及技術。除非另外注明,否則相似參考數字在全部圖式及書面描述中表示相似或類似部件。
應理解,儘管本文中可使用術語「第一」、「第二」、「第三」等來描述各種部件、組件、區域、層及/或區段,但此等部件、組件、區域、層及/或區段不應受此等術語限制。此等術語僅用以區分一個部件、組件、區域、層或區段與另一區域、層或區段。因此,可將下文所論述的第一部件、組件、區域、層或區段稱為第二部件、組件、區域、層或區段,而不偏離本發明概念的教示。
本文中所使用的術語僅出於描述特定實施例的目的,且不意欲限制本發明概念。如本文中所使用,單數形式「一個」以及「該」意欲亦包含複數形式,除非上下文另有清楚指示。應進一步理解,術語「包括」在用於本說明書中時指定所敍述的特徵、整體、步驟、操作、部件及/或組件的存在,但不排除一或多個其
他特徵、整體、步驟、操作、部件、組件及/或其群組的存在或添加。如本文中所使用,術語「及/或」包含相關聯的所列出項目中的一或多者的任何以及所有組合。且,術語「例示性」意欲表示實例或說明。
應理解,當一部件或層被稱為在另一部件或層「上」、「連接至」、「耦接至」或「鄰近於」另一部件或層時,所述部件或層可直接在所述另一部件或層上、直接連接至、耦接至或鄰近於所述另一部件或層,或可存在介入部件或層。相比而言,當一部件被稱為「直接」在另一部件或層「上」、「直接連接至」、「直接耦接至」或「緊鄰於」另一部件或層時,不存在介入部件或層。
除非另有定義,否則本文中所使用的所有術語(包含技術以及科學術語)具有與一般熟習本發明概念所屬技術者通常所理解者相同的含義。應進一步理解,術語(諸如,常用字典中所定義的術語)應被解釋為具有與其在相關技術及/或本說明書的情形下的含義一致的含義,且不應以理想化或過度正式的意義來解釋,除非本文中明確地如此定義。
圖1為大體上說明根據本發明概念的實施例的記憶體系統的方塊圖。參看圖1,記憶體系統100包括:控制單元110、包含構成非揮發性記憶體胞元的記憶體120、安全電路130以及金鑰產生器140。在所說明的實施例中,表示為安全電路130的部件表示設計成藉由以下方式來保護記憶體120中所儲存的資料免受攻擊的一大類電路及相關控制軟體:在將資料程式化(或寫入)至
記憶體120期間或在此之前,對資料進行加密。
就此而言,控制單元110在資料處理及計算操作期間控制記憶體系統100的整體操作。記憶體120可用以儲存程式碼,所述程式碼用於控制記憶體系統100的控制單元110及/或其他組件的操作。另外或其他,記憶體120可用於儲存使用者提供及/或外部主機提供的資料(DATA)。
記憶體120將包含至少一些非揮發性記憶體胞元,但可包含揮發性記憶體組件以及非揮發性記憶體組件,且可包含隨機存取記憶體(random access memory;RAM)及/或唯讀記憶體(read only memory;ROM)。更特定言之,在本發明概念的某些實施例中,記憶體120將為自一或多個快閃記憶體元件組態的快閃記憶體。舉例而言,「反或(NOR)」快閃記憶體元件及/或「反及(NAND)」快閃記憶體元件可用於組態記憶體120。雖然將在記憶體120為快閃記憶體的假設下描述本發明概念的某些所說明實施例,但本發明概念的範疇不僅限於快閃記憶體組態。
如熟習此項技術者所瞭解,控制單元110可用於接收資料(DATA)以及對應的位址資訊(ADDR)。傳入資料以及位址接著自控制單元110傳遞至安全電路130,所述傳遞可能是經由一或多個緩衝器組件(未繪示)而進行。安全電路130可用於執行兩個主要功能:(1)在程式化(或寫入)操作期間或關於程式化(或寫入)操作,對傳入資料進行加密以產生「經加密的資料」;以及(2)在讀取操作期間或關於讀取操作,對自記憶體120擷取的讀
取資料進行解密以產生「經解密的資料」。因此,圖1的方塊圖大體上將安全電路130繪示為包含加密電路131以及解密電路132。然而,在此情形下,術語「電路」不僅涵蓋硬體組件,而且涵蓋相關軟體及/或韌體組件。
在一個假設性例示性操作中,加密電路131自控制單元110或介入緩衝器組件接收位址資訊(ADDR),且自金鑰產生器140或用於儲存加密金鑰的介入暫存器或記憶體(例如,記憶體120)接收加密金鑰(KEY)。此等資訊值(ADDR及KEY)可接著用於對傳入資料進行加密,且產生待程式化至記憶體120的經加密的資料。
用於圖1的記憶體系統100的金鑰產生器140的性質可為習知的。熟習此項技術者應理解,廣範圍的電路及/或軟體可用於產生一或多個加密金鑰以供加密電路131使用。然而,在本發明概念的情形下,金鑰產生器140需要至少一個隨機數以便產生適用的加密金鑰。在圖1的所說明的實施例中,隨機數(random number;RN)是自記憶體120提供至金鑰產生器140。亦即,在本發明概念的某些實施例中,可按照自記憶體120擷取的「隨機讀取資料」(random read data;RD)來提供隨機數(RN),其中隨機讀取資料基本上根據記憶體120的構成非揮發性記憶體胞元的一或多個特性而隨機化。
藉由根據構成非揮發性記憶體胞元的固有的尚且不可預測的特性而獲得真隨機(truly random)的數,本發明概念的實施
例不需要提供或使用獨立設置的隨機數產生電路。此外,不需要執行按照慣例由(例如)控制電路110執行以便產生隨機數的某些計算功能(例如,特定記憶體操作的時序),因而,減少了程式化及操作額外負擔。
金鑰產生器140可結合其他資料(諸如,使用者提供的資料(例如,密碼)、主機提供的資料等)來使用自記憶體120獲得的隨機數,而產生一或多個加密金鑰。
圖2為更具體說明根據本發明概念的實施例的快閃記憶體系統的方塊圖。參看圖2,快閃記憶體系統1000大體上包括:快閃記憶體1100以及記憶體控制器1200。快閃記憶體系統1000可實施為基於快閃記憶體的資料儲存元件,諸如,記憶卡、USB記憶體、固態磁碟(solid state drive;SSD)及其類似者。
快閃記憶體1100在記憶體控制器1200的控制下執行抹除、程式化及/或讀取操作,且可大體上理解為包含:包含構成快閃記憶體胞元的記憶體胞元陣列1110以及資料輸入/輸出(I/O)電路1140。在此等假設下,快閃記憶體1100可基於記憶體區塊來執行抹除操作,且基於頁面來執行程式化及/或讀取操作。
記憶體控制器1200回應於(例如)由接收自外部主機的命令或控制信號的集合指示的請求而控制由快閃記憶體1100執行的抹除、程式化以及讀取操作。在圖2的所說明的實例中,記憶體控制器1200包括:主機介面1210、快閃介面1220、控制單元1230、RAM 1240、金鑰產生器1250以及加密電路1260。
主機介面1210可用於根據一或多個資料通信協定而與主機介接,且快閃介面1220可用於與快閃記憶體1100介接。記憶體控制器1200可經由一或多個信號路徑(包含並列ATA匯流排、串列ATA匯流排、SCSI、USB、PCIe及其類似者)而與主機連接。
按照慣例,控制單元1230可用於控制快閃記憶體系統1000的整體操作,包含由快閃記憶體1100執行的抹除操作、讀取操作、程式化操作、檔案系統管理、內務管理(housekeeping)操作及其類似者。舉例而言,雖然圖2未示,但控制單元1230可包含中央處理單元(central processing unit;CPU)、處理器及/或控制器,以及相關資料及計算電路(例如,暫存器、資料緩衝器、高速暫存記憶體(scratch pad memory)等)。
RAM 1240可結合控制單元1230且在控制單元1230的控制下加以使用。其可用作工作記憶體、緩衝記憶體、快取記憶體及其類似者。在用作工作記憶體時,正由控制單元1230處理的資料可暫時儲存於RAM 1240處。在用作緩衝記憶體時,RAM 1240可用於緩衝正在記憶體控制器1200與主機之間及/或記憶體控制器1200與快閃記憶體1100之間交換的資料。在用作快取記憶體時,RAM 1240可使相對低速的快閃記憶體1100能夠結合根據指定相對高速的資料傳輸的資料通信協定而接收的資料來操作。
在本發明概念的某些實施例中,RAM 1240可用作關於快閃記憶體系統1000而操作的快閃轉譯層(flash translation layer;FTL)的驅動記憶體。熟習此項技術者應理解,關於快閃記憶體
1100的操作,潛在併入FTL以管理合併操作,控管映射表,執行位址轉換以及進行類似操作。
根據前述內容,金鑰產生器1250可用於產生一或多個加密金鑰以供加密電路1260使用。亦即,金鑰產生器1250可使用自快閃記憶體1100接收的隨機數(RN)而產生加密金鑰。金鑰產生器1250可使用一或多種習知方法而自隨機數(RN)產生加密金鑰。舉例而言,金鑰產生器1250可在邏輯上組合使用者提供的(或主機提供)的資訊與隨機數以產生加密金鑰。
使用所述一或多個加密金鑰,加密電路1260可對傳入資料進行加密,以產生經加密的資料,所述經加密的資料最終程式化至快閃記憶體1100的記憶體胞元陣列1110。然而,不同於併有金鑰產生器的習知記憶體系統,圖2的快閃記憶體系統不需要獨立隨機數產生電路的使用或提供,便產生金鑰產生器1250所需的隨機數。
圖3為進一步說明圖2的快閃記憶體1100的方塊圖。參看圖3,除記憶體胞元陣列1110以及資料I/O電路1240之外,快閃記憶體1100亦包括位址解碼器1120、頁面緩衝器電路1130、電壓產生器1150以及控制邏輯1160。
進一步假設,記憶體胞元陣列1110在功能上劃分為多個記憶體區塊(例如,根據多個記憶體區塊而存取)。在圖3的記憶體胞元陣列1110內,在相關部分中僅繪示一個記憶體區塊。進一步假設,每一記憶體區塊包含多個經定義的實體頁面。舉例而言,
每一實體頁面可為一組快閃記憶體胞元,其共同連接至記憶體胞元陣列1110的字元線(例如,圖3的實體頁面1111)。
亦假設,記憶體胞元陣列1110的快閃記憶體胞元配置為多個經定義的胞元串1112。每一胞元串1112包含連接至串選擇線SSL的串選擇電晶體、分別連接至多條字元線WL0至WL63的多個記憶體胞元以及連接至接地選擇線GSL的接地選擇電晶體。對於每一胞元串1112,構成串選擇電晶體連接至對應的位元線,且接地選擇電晶體連接至共同源極線CSL。
在快閃記憶體1100中,每一快閃記憶體胞元可用於儲存單位元資料(亦即,可操作以作為單位準快閃記憶體胞元(即,SLC)而儲存單位元資料),或可用於儲存多位元資料(亦即,可操作以作為多位準胞元(即,MLC)而儲存兩個或兩個以上位元的資料)。儲存單位元資料的SLC將關於抹除狀態以及程式化狀態而操作,所述抹除狀態以及所述程式化狀態是如各別的對應臨限電壓分佈所指示。儲存多位元資料的MLC將關於抹除狀態以及多個程式化狀態而操作,所述抹除狀態以及所述程式化狀態分別且對應地由臨限電壓分佈指示。
就此而言,應注意,根據快閃記憶體系統的操作原理而在名義上定義用於指示抹除狀態或特定程式化狀態的各別臨限電壓分佈。因此,針對SLC,可在其臨限電壓落入標稱抹除狀態臨限電壓分佈(亦即,根據指定的記憶體系統設計,被視為指示抹除狀態的臨限電壓值的範圍)內時,指示抹除狀態(例如,資料
值「1」)。同樣,針對SLC,可在其臨限電壓落入標稱程式化狀態臨限電壓分佈(亦即,根據記憶體系統設計,被視為指示程式化狀態的臨限電壓值的範圍)內時,指示程式化狀態(例如,資料值「0」)。
在快閃記憶體胞元為MLC的狀況下,將在MLC的臨限電壓落入各別且對應的標稱程式化狀態臨限電壓分佈(亦即,根據記憶體系統設計,被視為指示特定程式化狀態的臨限電壓值的範圍)內時,指示每一程式化狀態(例如,針對2位元MLC,為P1、P2、P3及P4)。
返回圖3,位址解碼器1120經由數條控制線(例如,選擇線SSL及GSL、字元線WL0至WL63等)而連接至記憶體胞元陣列1110,且可回應於位址資訊ADDR而選擇字元線(例如,在所說明的實例中,為WL0)。
頁面緩衝器電路1130經由位元線BL0至BLm而連接至記憶體胞元陣列1110。頁面緩衝器電路1130可包含多個個別頁面緩衝器(未繪示),其中每一頁面緩衝器按照習知「全位元線結構」連接至對應的位元線。或者,兩個或兩個以上頁面緩衝器可按照習知「屏蔽位元線結構」連接至單條位元線。頁面緩衝器電路1130可用於暫時儲存待在程式化操作期間程式化至記憶體胞元陣列1110的「程式化資料」(例如,由圖1的安全電路130提供的經加密的資料),或暫時儲存在讀取操作期間自記憶體胞元陣列1110擷取的「讀取資料」。
資料I/O電路1140經由資料線DL而連接至頁面緩衝器電路1130。進一步參看圖2,假設資料I/O電路1140經由輸入/輸出線而連接至記憶體控制器1200。因此,資料I/O電路1140可在程式化操作期間自記憶體控制器1200接收程式化資料,且可在讀取操作期間將讀取資料傳遞至記憶體控制器1200。
如下文將另外詳細描述,圖3的快閃記憶體系統以及圖1及圖2的較一般記憶體系統可經組態以視需要而執行隨機數產生操作。亦即,在圖3的所說明的實施例的情形下,可在控制邏輯1160的控制下,按照經由頁面緩衝器電路1130以及資料I/O電路1140而自快閃記憶體1110擷取的隨機讀取資料而提供隨機數。
如將按照慣例瞭解,電壓產生器1150可用於產生位址解碼器1120以及記憶體胞元陣列1110在抹除、程式化以及讀取操作期間所需的各種控制電壓(例如,字元線電壓)。此外,在本發明概念的實施例內,電壓產生器1150可用於另外產生一或多個隨機數讀取電壓(Vrn)。在某些實施例中,電壓產生器在自記憶體控制器1200接收到電源開啟信號(PWR)後開始其操作。如圖3所說明,電壓產生器1150可包含選擇讀取電壓產生器1151、非選擇讀取電壓產生器1152以及隨機數讀取電壓產生器1153。
選擇讀取電壓產生器1151可用於在各種操作期間產生施加至選定的字元線(例如,WL0)的選擇讀取電壓(Vrd)。非選擇讀取電壓產生器1152可用於在各種操作期間產生施加至未選定的字元線(例如,WL1至WL63)的非選擇讀取電壓(Vread)。
舉例而言,非選擇讀取電壓(Vread)可具有足以接通選定的胞元串中的選定的記憶體胞元的電壓位準。
隨機數讀取電壓產生器1153可用於在由快閃記憶體系統1100執行的隨機數產生操作期間產生一或多個隨機數讀取電壓(Vrn)。在隨機數產生操作期間,隨機數讀取電壓產生器1153產生施加至選定的字元線WL0的經定義的隨機數讀取電壓(Vrn),而非選擇讀取電壓產生器1152產生施加至未選定的字元線WL1至WL63的非選擇讀取電壓(Vread)。以此方式,可將特定隨機數讀取電壓施加至選定的字元線WL0,所述隨機數讀取電壓是根據記憶體胞元陣列1110的構成快閃記憶體胞元的一或多個特性而定義。將參看圖4及圖5來另外詳細描述隨機數產生操作以及至少一個隨機數讀取電壓(Vrn)的對應提供。
返回圖3,控制邏輯1160可用於回應於一或多個命令(CMD)、位址ADDR以及控制信號CTRL而控制快閃記憶體1100的程式化、讀取及/或抹除。舉例而言,在讀取操作期間,控制邏輯1160可控制位址解碼器1120將選擇讀取電壓(Vrd)提供至讀取選定的字元線WL0,同時亦將經定義的控制信號提供至頁面緩衝器電路1130以及資料I/O電路1140以便讀取在選定的頁面1111處程式化的讀取資料。在隨機數產生操作期間,控制邏輯1160可用於藉由將一或多個隨機數讀取電壓(Vrn)提供至選定的字元線WL0而控制隨機數的產生。
在本發明概念的情形下,用語「非揮發性記憶體胞元(或
胞元)的特性」具有特定含義。熟習此項技術者應認識到,實際非揮發性記憶體胞元陣列包含大量個別SLC或MLC記憶體胞元。理想情況下,記憶體胞元陣列中的每一非揮發性記憶體胞元的實體性質以及操作效能與所述記憶體胞元陣列中的每一其他記憶體胞元相同。然而,實際上並不可能是此情形。
實際上,由於記憶體胞元陣列中的位置、用於製造記憶體胞元的製造程序的變化以及整個記憶體胞元陣列上的溫度、雜訊以及電壓變化,每一記憶體胞元的獨特、固有效能特性變化。因此,即使記憶體胞元陣列中的鄰近(或緊密相鄰)的記憶體胞元亦會以典型不同的方式對實質上相同的控制信號的施加作出回應。舉例而言,在程式化操作期間施加至非揮發性記憶體胞元的群組(例如,非揮發性記憶體胞元的頁面)且因此意欲類似地對所述群組中的每一非揮發性記憶體胞元進行程式化的相同控制電壓及/或電流可能仍然針對所述群組中的個別記憶體胞元而產生實質上不同的臨限電壓。然而,此等不同臨限電壓將通常落入非揮發性記憶體胞元的經定義的臨限電壓分佈內。
因此,關於所施加的控制信號由非揮發性記憶體胞元展現的具體的各別後程式化(post-programming)臨限電壓是「非揮發性記憶體胞元的特性」。以類似方式,由個別非揮發性記憶體胞元展現的具體的各別後抹除(post-erasure)臨限電壓是非揮發性記憶體胞元的另一特性。或者,個別非揮發性記憶體胞元呈現經定義的程式化狀態的速度(亦即,記憶體胞元的「緩慢」或「快
速」程式化回應)是非揮發性記憶體胞元的又一特性。
圖4為說明例示性非揮發性SLC的名義上定義的臨限電壓分佈的概念圖。將根據標稱抹除臨限電壓分佈「E」以及標稱程式化臨限電壓「P」而定義某些控制電壓(例如,Vrd、Vrn以及Vread)。應注意,各別標稱臨限電壓分佈是高斯(Gaussian)性質的。
由於正確執行的程式化操作,適當起作用的SLC將產生落入標稱程式化臨限電壓分佈P內的臨限電壓,而未適當起作用(亦即,不符合規格地操作)的SLC將無法產生落入標稱程式化臨限電壓分佈P內的臨限電壓。除SLC不符合規格地操作的所有狀況之外,SLC將仍然展現遍佈標稱臨限電壓分佈P的範圍變化的臨限電壓。因此,不同SLC將在程式化操作期間回應於實質上相同的控制信號的施加而產生不同的「符合規格」的臨限電壓。
正是因為即使緊密接近的個別記憶體胞元亦會對類似程式化條件作出此隨機效能回應,所以允許本發明概念的某些實施例有效產生隨機數而無需另外提供獨立隨機數產生電路。亦即,本發明概念的某些實施例認識到,構成記憶體胞元陣列的一般程式化且按照慣例提供的非揮發性記憶體胞元可隨後得以「讀取」(例如,使自身的各別後程式化臨限電壓根據經定義的隨機數讀取電壓而得以偵測)以便提供充當應用於(例如)金鑰產生器的隨機數的隨機讀取資料。
其他或另外,由個別記憶體胞元在程式化操作期間不同
地經歷的某些程式化條件(例如,電壓、雜訊、溫度)將引起不相同的且隨機出現的資料程式化至記憶體胞元,而無關於所施加的控制電壓具有實質上均一的性質。此些不同地經歷的程式化條件為正程式化的記憶體胞元的特性的又一實例。
由於此些固有非揮發性記憶體胞元特性及/或外部應用的非揮發性記憶體胞元特性,預期類似地程式化至資料值「0」的SLC的群組(例如,頁面)將仍然包含正儲存資料值「1」的一或多個SLC。此些非預期的(或「錯誤的」)資料位元在記憶體胞元的整個群組中的出現是不可預測的,且具有使可稍後作為隨機讀取資料讀取的經程式化的資料隨機化的效應。
如圖4及圖5所說明,特定隨機數讀取電壓(Vrn)的位準,無論是在圖4的實例中單個使用還是在圖5的實例中以不同的多個來使用,皆可關於非揮發性記憶體胞元的一或多個標稱臨限電壓分佈來判定。因此,在本發明概念的某些實施例中,可將隨機數讀取電壓(Vrn)定義為具有落在標稱臨限電壓分佈的中間值(例如,圖4中的標稱程式化臨限電壓分佈P的中間)處的位準。在隨機產生操作期間執行的讀取操作可將此類型的隨機數讀取電壓(Vrn)施加至選定的字元線WL0,而將非選擇讀取電壓(Vread)施加至未選定的字元線WL1至WL63。可藉由隨機數產生操作而將所得隨機讀取資料提供為隨機數。
雖然圖4的實例繪示為SLC程式化操作,但本發明概念的其他實施例可應用於關於MLC程式化操作的隨機數產生。
本發明概念的某些實施例使用所謂的「單次」程式化技術以對非揮發性記憶體胞元的群組進行程式化。亦即,程式化電壓施加至非揮發性記憶體胞元的群組一次,而無重複或程式化驗證。因此,非揮發性記憶體胞元的群組將回應於一次施加的程式化電壓而產生各別臨限電壓。舉例而言,可使用單次程式化操作而實現將非揮發性記憶體胞元的頁面程式化至程式化狀態(例如,資料值「0」)的SLC程式化。此後,可使用一或多個隨機數讀取電壓而讀取非揮發性記憶體胞元的頁面中所儲存的資料。
圖5中說明了多個隨機數讀取電壓的使用。在圖5中,三(3)個隨機數讀取電壓Vrn1、Vrn2以及Vrn3連續施加至選定的字元線WL0,以便讀取第一、第二以及第三隨機數。且,因為第一、第二以及第三隨機數讀取電壓(Vrn1、Vrn2以及Vrn3)的位準不同,且在不同時間施加至選定的字元線WL0,因此,將在每一隨機數讀取操作期間偵測對應不同數目的接通記憶體胞元,而不管每一隨機讀取操作是針對同一群組的經程式化的記憶體胞元的事實。
圖5所說明的實例假設三(3)個隨機讀取電壓(Vrn1、Vrn2以及Vrn3)的位準遍佈標稱程式化臨限電壓分佈P而變化,但分別落入所述標稱程式化臨限電壓分佈P內。無需始終為此狀況,此是因為可使用任何合理數目的隨機讀取電壓,所述隨機讀取電壓中的一或多個可被定義為落在標稱程式化臨限電壓分佈P之外。
圖6為說明由圖5的三(3)個隨機數讀取電壓產生的隨機數(RN1、RN2以及RN3)的表格。在圖6中,第一隨機數RN1為在第一隨機數讀取電壓Vrn1施加至選定的字元線(例如,WL0)時自選定的頁面偵測的隨機讀取資料。第二隨機數RN2為在第二隨機數讀取電壓Vrn2施加至選定的字元線WL0時自選定的頁面偵測的隨機讀取資料,且第三隨機數RN3為在第三隨機數讀取電壓Vrn3施加至選定的字元線WL0時偵測的隨機讀取資料。
如圖6進一步說明,可使用(例如)簡單的「互斥或(XOR)」邏輯閘而自第一、第二以及第三隨機讀取資料(RN1、RN2以及RN3)的組合產生加密金鑰(KEY)。
圖7為概述根據本發明概念的實施例的一種產生隨機數的可能方法的流程圖。將在上文關於圖2及圖3所述的快閃記憶體系統以及工作實例的情形下描述圖7的方法。在某些實施例中,將由圖2的快閃記憶體系統結合程式化操作而執行圖7所概述的方法。
假設圖2的快閃記憶體系統基於頁面而執行讀取以及程式化操作。因此,圖7的所說明的方法藉由選擇字元線(例如,WL0)而產生隨機數(S110)。更特定言之,選擇共同由選定的字元線WL0控制的快閃記憶體胞元的實體頁面。由於此選擇,將依賴於選定的頁面的快閃記憶體胞元的至少一個特性來產生所要隨機讀取資料。(例如參見圖3的選定的實體頁面1111)。或者,可使用與一條以上字元線相關聯的快閃記憶體胞元來產生隨機數。
連續隨機數產生操作可使用記憶體胞元陣列內的快閃記憶體胞元的同一群組或不同群組。然而,在使用與多條字元線相關聯的記憶體胞元時,可關於所述選定的多條字元線中的每一各別字元線而獨立執行程式化或讀取操作。
接著將選定的頁面1111的構成記憶體胞元程式化至相同狀態(S120)。舉例而言,可將選定的頁面1111的快閃記憶體胞元程式化至圖4的程式化狀態P(資料值「0」)。因此,可將「0」資料值載入至連接至選定的頁面1111的緩衝器電路1130中的頁面緩衝器,且接著程式化至選定的頁面1111的快閃記憶體胞元。在本發明概念的某些實施例中,可使用單次程式化技術而實現選定的記憶體胞元的程式化,以使得快閃記憶體胞元產生單次臨限電壓分佈。
在選定的快閃記憶體胞元的程式化之後,可將隨機數讀取電壓(Vrn)施加至選定的字元線WL0,而將非選擇讀取電壓(Vread)施加至未選定的字元線WL1至WL63(S130)。在本發明概念的某些實施例中,隨機數讀取電壓(Vrn)可為與程式化狀態P相關聯的標稱臨限電壓分佈的中間電壓值。此中間電壓值的選擇傾向於使讀取操作期間自經程式化的快閃記憶體胞元讀取的資料的可變性(以及,因此隨機性)最大化。在此等控制電壓偏壓條件下,可讀取快閃記憶體胞元的選定的頁面(S140)。或者,可將多個隨機數讀取電壓依序施加至經程式化的快閃記憶體胞元。(參見圖5)
接著可提供(或讀出)所得隨機讀取資料,作為隨機數(S150)。亦即,可將自快閃記憶體胞元的選定的頁面擷取的隨機讀取資料提供至記憶體控制器1200的金鑰產生器1250。金鑰產生器1250可接著使用自快閃記憶體1100提供的作為隨機數的隨機讀取資料而產生加密金鑰。加密電路1260可接著使用加密金鑰以自傳入資料產生經加密的資料,以儲存於快閃記憶體1100中。
以此方式,根據本發明概念的實施例的快閃記憶體系統1000可關於構成快閃記憶體胞元陣列的快閃記憶體胞元的至少一個特性(例如,各別的經程式化的臨限電壓)而產生隨機數。且,因為所得讀取資料的隨機性是根據快閃記憶體1100的特性而產生,所以快閃記憶體系統1000不需要獨立隨機數產生電路的提供。
圖8為說明根據本發明概念的另一實施例的快閃記憶體系統的方塊圖。參看圖8,快閃記憶體系統2000大體上包括:快閃記憶體2100以及記憶體控制器2200。與圖2的記憶體控制器1200相似,記憶體控制器2200包含:主機介面2210、快閃介面2220、控制單元2230、RAM 2240以及加密電路2250。然而,記憶體控制器2200並不包含金鑰產生器。實際上,金鑰產生器2165併入於快閃記憶體2100內。
因此,雖然圖2的快閃記憶體1100將隨機數(RN)傳回至記憶體控制器1200的金鑰產生器1250,但圖8的快閃記憶體2100可用於將加密金鑰(KEY)傳回至記憶體控制器2200。將參看圖9來另外詳細描述包含金鑰產生器2165的快閃記憶體2100。
圖9為進一步說明圖8的快閃記憶體2100的方塊圖。參看圖9,快閃記憶體2100包含:記憶體胞元陣列2110、位址解碼器2120、頁面緩衝器電路2130、資料輸入/輸出電路2140、電壓產生器2150以及控制邏輯2160。
電壓產生器2150可包含選擇讀取電壓產生器2151、非選擇讀取電壓產生器2152以及隨機數讀取電壓產生器2153。隨機數讀取電壓產生器2153可用於在隨機數產生操作期間產生待提供至選定的字元線WL0的隨機數讀取電壓。
在某些實施例中,控制邏輯2160包含金鑰產生器2165。金鑰產生器2165可用於使用隨機讀取資料而產生金鑰,所述隨機讀取資料充當隨機數,是在隨機數產生操作期間自資料I/O電路2140提供。金鑰可提供至記憶體控制器2200的加密電路2250。(參見圖8)。加密電路2250可接著使用所提供的金鑰而對傳入資料進行加密,以將經加密的資料提供至快閃記憶體2100或另一記憶體(未繪示)。
因此,圖8的快閃記憶體系統2000可按照與圖2的快閃記憶體系統1000的方式相似的方式而使用構成記憶體系統的快閃記憶體胞元的特性來產生隨機數。
圖10為說明根據本發明概念的又一實施例的記憶體系統的方塊圖。參看圖10,記憶體系統200包括:控制單元210、快閃記憶體220、安全電路230以及金鑰產生器240。
快閃記憶體220更包含緩慢位元計數器221,其可(例如)
在選定的快閃記憶體胞元的程式化驗證期間得以使用。亦即,某些習知快閃記憶體系統認識到個別快閃記憶體胞元回應於經定義的程式化條件(諸如,針對迭代程式化方案(例如,遞增步級脈衝程式化或ISSP)的一或多次迭代而定義的程式化條件)而呈現給定的程式化狀態的可變速度。術語「緩慢位元」表示無法在程式化操作期間在某一點呈現所要程式化狀態的快閃記憶體胞元。相比而言,術語「快速位元」表示具有卓越的相對快地呈現所要程式化狀態的能力的快閃記憶體胞元。因此,舉例而言,在使用第一控制電壓位準而執行的第一程式化迭代之後,可將一群組的「N」個快閃記憶體胞元中的數目「J」個指示為緩慢位元。然而,在使用第二控制電壓而執行的第二程式化迭代(其中,第二控制電壓中的至少一者大於類似第一控制電壓)之後,可將N個快閃記憶體胞元中的數目「K」個指示為緩慢位元,其中K小於J。
給定由於(完成或部分完成的)程式化操作而提供的位元(以及對應的快閃記憶體胞元)的此習知表示,本發明概念的某些實施例可將此等緩慢/快速位元結果用作所表示的快閃記憶體胞元的特性。因此,記憶體系統200可用於根據緩慢位元而產生隨機數(以及加密金鑰)。下文將描述一種根據快閃記憶體220中的緩慢位元而產生隨機數的做法。
另外,圖10所示的記憶體系統200的部件分別類似於圖1的記憶體系統100的部件。
圖11A為說明可由圖10的記憶體系統200執行的隨機數
產生方法的概念圖,其中快閃記憶體220用於基本上使用程式化操作期間所指示的快閃記憶體胞元的群組中的緩慢位元的實體特性而產生隨機讀取資料。
參看圖11A,可將快閃MLC程式化至多個程式化狀態P1、P2以及P3中的一者,所述程式化狀態由其落入分別定義的臨限電壓分佈內的臨限電壓所指示。
因此,假設在正由快閃記憶體220執行的程式化操作期間,將程式化電壓施加至快閃MLC的群組。接著,執行與程式化操作相關聯的一或多個程式化驗證步驟。舉例而言,隨後可將第一程式化驗證電壓Vf1以及第二程式化驗證電壓Vf2施加至選定的字元線WL0。在此等假設下,第一程式化驗證電壓Vf1可為用於驗證快閃記憶體胞元是否已程式化至第一程式化狀態P1的電壓,且第二程式化驗證電壓Vf2可為用於驗證快閃記憶體胞元是否已程式化至第二程式化狀態P2的電壓。
因為無法超過各別第一程式化驗證電壓Vf1以及第二程式化驗證電壓Vf2的緩慢位元的數目是隨機的,所以可使用對應數目的緩慢位元來產生隨機數。舉例而言,如圖11B所說明,可由於關於第一程式化驗證電壓Vf1而執行的第一程式化驗證操作而獲得包含第一組緩慢位元的第一隨機資料(SB1)。且,可由於關於第二程式化驗證電壓Vf2而執行的第二程式化驗證操作而獲得包含第二組緩慢位元的第二隨機資料(SB2)。緩慢位元的數目與其在正程式化驗證的快閃記憶體胞元的群組內的各別位置兩者
將變化,且可被視為構成快閃記憶體胞元的特性。
在圖11B進一步說明的實例中,藉由將第一隨機資料(SB1)與第二隨機資料(SB2)進行互斥或而產生加密金鑰(KEY)。
在考慮前述實例後,熟習此項技術者將認識到,可在無需提供獨立隨機數產生電路或在某些情形下無需執行除程式化/讀取或程式化驗證操作之外的內部記憶體系統操作的情況下產生隨機數。亦即,不需要執行專用於產生隨機數的專門計算操作。實情為,記憶體系統的構成非揮發性記憶體胞元的特性程式化/讀取雜訊、特性程式化回應以及類似特性可用於產生隨機數。
在本發明概念的某些實施例的情形下,由一組選定的非揮發性記憶體胞元的各別記憶體胞元執行的程式化/抹除循環(P/E)的數目可被視為非揮發性記憶體胞元的特性。亦即,每一非揮發性記憶體胞元的臨限電壓程式化回應或緩慢位元行為可根據其P/E磨損而變化。
此外,各別非揮發性記憶體胞元的臨限電壓程式化回應或緩慢位元行為可根據操作模式而變化。舉例而言,記憶體系統可在第一模式以及第二模式中操作,在第一模式中,使用記憶體胞元的群組的臨限電壓分佈的特性而產生隨機數,且在第二模式中,使用緩慢位元的特性而產生隨機數。在此狀況下,記憶體系統可藉由在第一操作模式與第二操作模式之間切換而改變隨機數產生方法。
在本發明概念的某些實施例中,記憶體系統可將使用上述方法而產生的隨機讀取資料用作用於偽隨機數產生器的種子。舉例而言,在圖2中的快閃記憶體系統1000的金鑰產生器1250包含產生隨機數的偽隨機數產生器的狀況下,偽隨機數產生器可使用自快閃記憶體1100提供的種子而產生隨機數。在此狀況下,快閃記憶體1100可藉由將相同資料程式化於選定的頁面處以及將種子讀取電壓提供至選定的字元線以讀取選定的頁面而產生種子。快閃記憶體1100可將對應於臨限電壓分佈中的特定電壓位準的電壓用作種子讀取電壓。
根據本發明概念的實施例的記憶體系統可被應用於或提供至各種產品。根據本發明的實施例的記憶體系統可由電子裝置(諸如,個人電腦、數位相機、攝錄影機、蜂巢式電話、MP3播放器、PMP、PSP、PDA及其類似者)以及儲存裝置(諸如,記憶卡、USB記憶體、固態磁碟(SSD)及其類似者)實施。
圖12為說明可應用根據本發明概念的實施例的記憶體系統的記憶卡系統的方塊圖。記憶卡系統300大體上包括:主機3100以及記憶卡3200。主機3100可包含主機控制器3110、主機連接單元3120以及DRAM 3130。
主機3100可將資料記憶卡寫入於3200處,且自記憶卡3200讀取資料。主機控制器3110可經由主機連接單元3120而將命令(例如,寫入命令)、自主機3100中的時脈產生器(未繪示)產生的時脈信號CLK以及資料發送至記憶卡3200。DRAM 3130
可為主機3100的主記憶體。
記憶卡3200可包含卡連接單元3210、卡控制器3220以及快閃記憶體3230。卡控制器3220可回應於經由卡連接單元3210而輸入的命令,而將資料儲存在快閃記憶體3230處。所述資料可與自卡控制器3220中的時脈產生器(未繪示)產生的時脈信號同步而儲存。快閃記憶體3230可儲存自主機3100傳送的資料。舉例而言,在主機3100為數位相機的狀況下,記憶卡3200可儲存影像資料。
在記憶卡系統3000中,卡控制器3220或快閃記憶體3230可經組態以包含金鑰產生器(參看圖2或圖8)。記憶卡系統3000可根據上述隨機數產生方法在無需獨立隨機數產生電路的情況下產生隨機數。因此,可確保資料的可靠性,而不將此電路所需的區域添加至記憶卡3200。
圖13為說明包含可應用根據本發明概念的記憶體系統的固態磁碟(SSD)的系統的方塊圖。參看圖13,系統4000大體上包括:主機4100以及SSD 4200。主機4100可包含主機介面4111、主機控制器4120以及DRAM 4130。
主機4100可將資料寫入於SSD 4200中,或自SSD 4100讀取資料。主機控制器4120可經由主機介面4111而將信號SGL(諸如,命令、位址、控制信號及其類似者)傳送至SSD 4200。DRAM 4130可為主機4100的主記憶體。
SSD 4200可經由主機介面4211而與主機4100交換信號
SGL,且可經由電源連接器4221而被供應電源。SSD 4220可包含多個非揮發性記憶體4201至420n、SSD控制器4210以及輔助電源供應器4220。本文中,非揮發性記憶體4201至420n不僅可由「反及」快閃記憶體實施,而且可由非揮發性記憶體(諸如,PRAM、MRAM、ReRAM或其類似者)實施。
多個非揮發性記憶體4201至420n可用作SSD 4200的儲存媒體。多個非揮發性記憶體4201至420n可經由多個通道CH1至CHn而與SSD控制器4210連接。一個通道可與一或多個非揮發性記憶體連接。與一個通道連接的非揮發性記憶體可與同一資料匯流排連接。
SSD控制器4210可經由主機介面4211而與主機4100交換信號SGL。本文中,信號SGL可包含命令、位址、資料及其類似者。SSD控制器4210可經組態以根據主機4100的命令而將資料寫入至對應的非揮發性記憶體或自對應的非揮發性記憶體讀出資料。將參看圖14來更全面描述SSD控制器4210。
輔助電源供應器4220可經由電源連接器4221而與主機4100連接。輔助電源供應器4220可由來自主機4100的電源PWR充電。輔助電源供應器4220可置放於SSD 4200內部或外部。舉例而言,輔助電源供應器4220可置於主機板上以將輔助電源供應至SSD 4200。
圖14為進一步說明圖13的SSD控制器4210的方塊圖。參看圖14,SSD控制器4210包含NVM介面4211、主機介面4212、
加密電路4213、控制單元4214以及SRAM 4215。
NVM介面4211將自主機4100的主記憶體傳送的資料分別分散至通道CH1至CHn。NVM介面4211可經由主機介面4212而將自非揮發性記憶體4201至420n讀取的資料傳送至主機4100。
主機介面4212可根據主機4100的協定而提供與SSD 4200建立的介面。主機介面4212可使用通用串列匯流排(Universal Serial Bus;USB)、小型電腦系統介面(Small Computer System Interface;SCSI)、快速PCI、ATA、PATA(Parallel ATA;並列ATA)、串列ATA(Serial ATA;SATA)、串列附接SCSI(Serial Attached SCSI;SAS)或其類似者而與主機4100通信。主機介面4212亦可執行磁碟仿真(disk emulation)功能,所述功能使主機4100能夠將SSD 4200辨識為硬碟機(hard disk drive;HDD)。
加密電路4213可使用自SSD控制器4210或非揮發性記憶體4201至420n中的每一者中所包含的金鑰產生器提供的金鑰而對資料進行加密。控制單元4214可分析並處理自主機4100輸入的信號。控制單元4214可經由主機介面4212或NVM介面4211而控制主機4100或非揮發性記憶體4201至420n。控制單元4214可根據韌體而控制非揮發性記憶體4201至420n以驅動SSD 4200。
SRAM 4215可用於驅動有效地管理非揮發性記憶體4201至420n的軟體。SRAM 4215可儲存自主機4100的主記憶體輸入的中繼資料或快取資料。在突然斷電後,SRAM 4215中所儲存的中繼資料或快取資料可使用輔助電源供應器4220而儲存於非揮發
性記憶體4201至420n中。
返回圖13,根據本發明概念的實施例的系統4000可使用構成非揮發性記憶體胞元的特性而產生隨機數。因為可按照此方式產生隨機數,所以系統4000不需要獨立隨機數產生電路。
圖15為說明根據本發明概念的實施例的可併有快閃記憶體系統的電子元件的方塊圖。本文中,電子元件5000可為個人電腦或手持式電子元件,諸如,筆記型電腦、手機、PDA、相機或其類似者。
參看圖15,電子元件5000包括:記憶體系統5100、電源供應元件5200、輔助電源供應器5250、CPU 5300、DRAM 5400以及使用者介面5500。記憶體系統5100可包含快閃記憶體5110以及記憶體控制器5120。記憶體系統5100可嵌入於電子元件5000內。
根據本發明概念的某些實施例的記憶體系統可併有具有三維(three-dimensional;3D)結構的記憶體胞元陣列。
因此,根據本發明概念的另一實施例,圖16為說明快閃記憶體6000的方塊圖,所述快閃記憶體6000包括:三維(3D)胞元陣列6110、資料輸入/輸出電路6120、位址解碼器6130以及控制邏輯6140。
3D記憶體胞元陣列6110包含多個記憶體區塊BLK1至BLKz,所述多個記憶體區塊BLK1至BLKz中的每一者形成有三維(或垂直)結構。對於具有二維(水平)結構的記憶體區塊,
可在平行於基板的方向上形成記憶體胞元。對於具有三維結構的記憶體區塊,可在垂直於基板的方向上形成記憶體胞元。記憶體區塊BLK1至BLKz中的每一者可為快閃記憶體6000的抹除單元。
資料輸入/輸出電路6120可經由多條位元線而與3D胞元陣列6110連接。資料輸入/輸出電路6120可自外部元件接收資料或將自3D記憶體胞元陣列6110讀取的資料輸出至外部元件。位址解碼器6130可經由多條字元線以及選擇線GSL及SSL而與3D胞元陣列6110連接。位址解碼器6130可回應於位址ADDR而選擇字元線。
控制邏輯6140可控制快閃記憶體6000的程式化、抹除、讀取等。舉例而言,在程式化期間,控制邏輯6140可控制位址解碼器6130以及資料輸入/輸出電路6120,以使得程式化電壓施加至選定的字元線,且資料得以程式化。
圖17為在相關部分中進一步說明圖16的記憶體區塊的3D記憶體胞元陣列結構的透視圖。參看圖17,記憶體區塊BLK1是在垂直於基板SUB的方向上形成。n+摻雜區域可形成於基板SUB處。閘電極層以及絕緣層可依序沉積在基板SUB上。電荷儲存層可形成於閘電極層與絕緣層之間。
若閘電極層以及絕緣層是在垂直方向上圖案化,則V形柱狀物可得以形成。所述柱狀物可經由閘電極層以及絕緣層而與基板SUB連接。所述柱狀物的外部部分O可由通道半導體形成,且其內部部分I可由絕緣材料(諸如,氧化矽)形成。
記憶體區塊BLK1的閘電極層可與接地選擇線GSL、多條字元線WL1至WL8以及串選擇線SSL連接。記憶體區塊BLK1的柱狀物可與多條位元線BL1至BL3連接。在圖17中,說明一個記憶體區塊BLK1具有兩條選擇線SSL以及GSL、八條字元線WL1至WL8以及三條位元線BL1至BL3的狀況。然而,本發明概念不限於此。
圖18為在相關部分中說明圖17的記憶體區塊的等效電路的圖式。參看圖18,「反及」串NS11至NS33可連接於位元線BL1至BL3與共同源極線CSL之間。每一「反及」串(例如,NS11)可包含串選擇電晶體SST、多個記憶體胞元MC1至MC8以及接地選擇電晶體GST。
串選擇電晶體SST可與串選擇線SSL1至SSL3連接。記憶體胞元MC1至MC8可分別與對應的字元線WL1至WL8連接。接地選擇電晶體GST可與接地選擇線連接。在每一「反及」串中,串選擇電晶體SST可與位元線連接,且接地選擇電晶體GST可與共同源極線CSL連接。
具有相同高度的字元線(例如,WL1)可共同連接,且串選擇線SSL1至SSL3可彼此分離。在與第一字元線WL1連接且包含於「反及」串NS11、NS12以及NS13中的記憶體胞元(構成頁面)的程式化時,可選擇第一字元線WL1以及第一串選擇線SSL1。
雖然已參考例示性實施例而描述了本發明概念,但熟習
此項技術者將顯而易見的是,可進行各種改變及修改,而不偏離隨附申請專利範圍的範疇。因此,應理解上述實施例在本質上並不是限制性的,而是說明性的。
100‧‧‧記憶體系統
110‧‧‧控制單元
120‧‧‧記憶體
130‧‧‧安全電路
131‧‧‧加密電路
132‧‧‧解密電路
140‧‧‧金鑰產生器
ADDR‧‧‧位址資訊
DATA‧‧‧資料
KEY‧‧‧加密金鑰
Claims (40)
- 一種在非揮發性記憶體胞元的記憶體中產生隨機數的方法,所述方法包括:對所述非揮發性記憶體胞元進行程式化;使用根據經程式化的所述非揮發性記憶體胞元的特性而選擇的隨機數讀取電壓來讀取所述非揮發性記憶體胞元,以產生隨機讀取資料;以及自所述隨機讀取資料產生所述隨機數。
- 如申請專利範圍第1項所述的方法,其中自所述讀取資料產生所述隨機數的步驟是在不使用獨立隨機數產生電路的情況下執行。
- 如申請專利範圍第1項所述的方法,其中所述非揮發性記憶體胞元的所述特性是回應於所述非揮發性記憶體胞元的所述程式化的所述非揮發性記憶體胞元的標稱臨限電壓分佈。
- 如申請專利範圍第3項所述的方法,其中所述隨機數讀取電壓被選擇為處於所述標稱臨限電壓分佈內。
- 如申請專利範圍第4項所述的方法,其中所述隨機數讀取電壓被選擇為處於所述標稱臨限電壓分佈的中間。
- 如申請專利範圍第1項所述的方法,其中所述非揮發性記憶體胞元的所述特性是回應於所述非揮發性記憶體胞元的所述程式化所述非揮發性記憶體胞元中的至少一者所作出的緩慢胞元回應。
- 如申請專利範圍第1項所述的方法,其中所述非揮發性記憶體胞元的所述程式化是單次程式化操作。
- 如申請專利範圍第1項所述的方法,其中所述非揮發性記憶體胞元中的每一者為單位準記憶體胞元。
- 如申請專利範圍第1項所述的方法,其中所述非揮發性記憶體胞元配置為共同連接至字元線的實體頁面。
- 一種方法,包括:使用根據經程式化的非揮發性記憶體胞元的特性而選擇的隨機數讀取電壓,而自所述非揮發性記憶體胞元獲得隨機讀取資料。
- 如申請專利範圍第10項所述的方法,更包括:藉由在邏輯上組合所述隨機讀取資料而產生隨機數。
- 如申請專利範圍第11項所述的方法,更包括:自所述隨機數產生加密金鑰;以及使用所述加密金鑰而對記憶體系統所接收的資料進行加密,所述記憶體系統包含記憶體控制器以及包含所述非揮發性記憶體胞元的記憶體。
- 如申請專利範圍第12項所述的方法,其中所述加密金鑰的所述產生是由金鑰產生器執行,所述金鑰產生器安置於所述記憶體控制器以及所述記憶體中的一者中。
- 如申請專利範圍第10項所述的方法,其中所述隨機數讀取電壓被選擇為處於回應於所述非揮發性記憶體胞元的程式化的所述非揮發性記憶體胞元的標稱臨限電壓分佈內。
- 如申請專利範圍第14項所述的方法,其中所述隨機數讀取電壓被選擇為處於所述標稱臨限電壓分佈的中間。
- 如申請專利範圍第10項所述的方法,其中所述隨機數讀取電壓是程式化驗證電壓,所述程式化驗證電壓用於驗證在所述非揮發性記憶體胞元的所述程式化期間,所述非揮發性記憶體胞元中的每一者是否作為緩慢胞元而回應。
- 一種加密金鑰產生方法,包括:使用程式化電壓來對非揮發性記憶體胞元進行程式化,其中所述非揮發性記憶體胞元中的每一者被指定為回應於所述程式化而展現落入標稱臨限電壓分佈內的臨限電壓;藉由使用落入所述標稱臨限電壓分佈內的至少一個隨機數讀取電壓而讀取所述經程式化的非揮發性記憶體胞元,而產生隨機讀取資料;將所述隨機讀取資料作為隨機數應用於金鑰產生器;以及使用所述金鑰產生器而產生加密金鑰。
- 如申請專利範圍第17項所述的方法,其中所述非揮發性記憶體胞元中的每一者為單位準記憶體胞元。
- 如申請專利範圍第18項所述的方法,其中對所述非揮發性記憶體胞元進行所述程式化的步驟由以下組成:使用單次程式化操作而將所述程式化電壓施加至所述非揮發性記憶體胞元。
- 如申請專利範圍第17項所述的方法,其中所述至少一個隨機數讀取電壓包括產生對應的第一隨機讀取資料的第一隨機數 讀取電壓以及產生對應的第二隨機讀取資料的第二隨機數讀取電壓,且所述方法更包括:在邏輯上組合所述第一隨機讀取資料以及所述第二隨機讀取資料以產生所述隨機讀取資料。
- 一種記憶體,包括:記憶體胞元陣列,包含非揮發性記憶體胞元;程式化電壓產生器,其在程式化操作期間,將程式化電壓施加至所述記憶體胞元陣列的選定的字元線;以及隨機數讀取電壓產生器,其在隨機數產生操作期間,將隨機數讀取電壓施加至所述選定的字元線,其中所述隨機數讀取電壓的位準被選擇為處於所述非揮發性記憶體胞元在被程式化時所預期的標稱臨限電壓分佈內。
- 如申請專利範圍第21項所述的記憶體,其中所述非揮發性記憶體胞元為快閃記憶體胞元。
- 如申請專利範圍第21項所述的記憶體,其中所述非揮發性記憶體胞元為單位準快閃記憶體胞元。
- 一種記憶體,包括:記憶體胞元陣列,包含非揮發性記憶體胞元;程式化電壓產生器,其在程式化操作期間,將程式化電壓施加至所述記憶體胞元陣列的選定的字元線;以及隨機數讀取電壓產生器,其在隨機數產生操作期間,將隨機數讀取電壓施加至所述選定的字元線,其中所述隨機數讀取電壓 為程式化驗證電壓,所述程式化驗證電壓用於判定在所述非揮發性記憶體胞元的程式化期間所述非揮發性記憶體胞元中的至少一者所作出的緩慢胞元回應。
- 如申請專利範圍第24項所述的記憶體,其中所述非揮發性記憶體胞元為快閃記憶體胞元。
- 如申請專利範圍第21項所述的記憶體,其中所述非揮發性記憶體胞元為多位準快閃記憶體胞元。
- 一種記憶體系統,包括:控制單元,其接收傳入資料以及對應的位址資訊;安全電路,其使用所述位址資訊以及加密金鑰而自所述傳入資料產生經加密的資料;記憶體,包含非揮發性記憶體胞元,所述記憶體儲存所述經加密的資料,且在所述非揮發性記憶體胞元藉由使用隨機數讀取電壓而得以讀取時,提供隨機數,其中所述隨機數讀取電壓被選擇為處於所述非揮發性記憶體胞元在被程式化時的標稱臨限電壓分佈內;以及金鑰產生器,其自所述隨機數產生所述加密金鑰,其中所述自所讀取的資料產生所述隨機數是在不使用獨立隨機數產生電路的情況下執行。
- 如申請專利範圍第27項所述的記憶體系統,其中所述隨機數讀取電壓被選擇為處於所述標稱臨限電壓分佈的中間。
- 如申請專利範圍第27項所述的記憶體系統,其中所述非 揮發性記憶體胞元是使用單次程式化操作而程式化。
- 如申請專利範圍第27項所述的記憶體系統,其中所述非揮發性記憶體胞元中的每一者為單位準記憶體胞元,且所述非揮發性記憶體胞元配置為共同連接至字元線的實體頁面。
- 如申請專利範圍第27項所述的記憶體系統,其中所述記憶體包括快閃記憶體胞元的三維記憶體胞元陣列。
- 一種記憶體,包括:控制單元,其接收傳入資料以及對應的位址資訊;安全電路,其使用所述位址資訊以及加密金鑰而自所述傳入資料產生經加密的資料;記憶體,包含非揮發性記憶體胞元,所述記憶體儲存所述經加密的資料,且在所述非揮發性記憶體胞元藉由使用隨機數讀取電壓而得以讀取時,提供隨機數,其中所述隨機數讀取電壓為程式化驗證電壓,所述程式化驗證電壓用於判定在所述非揮發性記憶體胞元的程式化期間的所述非揮發性記憶體胞元中的至少一者的緩慢胞元;以及金鑰產生器,其自所述隨機數產生所述加密金鑰,其中自所讀取的資料產生所述隨機數是在不使用獨立隨機數產生電路的情況下執行。
- 如申請專利範圍第31項所述的記憶體,其中所述非揮發性記憶體胞元是使用單次程式化操作而程式化。
- 如申請專利範圍第31項所述的記憶體系統,其中所述非 揮發性記憶體胞元中的每一者為多位準快閃記憶體胞元,且所述多位準快閃記憶體胞元配置為分別連接至對應的字元線的多個實體頁面。
- 如申請專利範圍第34項所述的記憶體系統,其中所述記憶體包括快閃記憶體胞元的三維記憶體胞元陣列,所述三維記憶體胞元陣列包含在第一方向上延伸的多個胞元串、在第二方向上延伸的多條字元線以及在第三方向上延伸的多條位元線。
- 如申請專利範圍第34項所述的記憶體系統,其中每一胞元串連接至所述多條位元線中的一者且包括串聯連接於串選擇電晶體與接地選擇電晶體之間的多個快閃記憶體胞元,且所述多個快閃記憶體胞元中的每一者分別由所述多條字元線中的一者控制,每一所述串選擇電晶體由串選擇線控制,且每一所述接地選擇電晶體由接地選擇線控制。
- 一種系統,包括:主機,其提供傳入資料以及對應的位址資訊;以及記憶卡,包括:卡控制器,其使用所述位址資訊以及加密金鑰而自所述傳入資料產生經加密的資料;記憶體,包含快閃記憶體胞元,所述記憶體儲存所述經加密的資料,且在所述快閃記憶體胞元藉由使用隨機數讀取電壓而得以讀取時,提供隨機數,其中所述隨機數讀取電壓是根據非揮發性記憶體胞元的特性而選擇;以及 金鑰產生器,其自所述隨機數產生所述加密金鑰。
- 如申請專利範圍第37項所述的系統,其中所述金鑰產生器安置於所述快閃記憶體中。
- 一種系統,包括:主機,其提供傳入資料以及對應的位址資訊;以及固態磁碟,包括:SSD控制器,其使用所述位址資訊以及加密金鑰而自所述傳入資料產生經加密的資料;記憶體,包含快閃記憶體胞元,所述快閃記憶體胞元儲存所述經加密的資料,且在所述快閃記憶體胞元藉由使用隨機數讀取電壓而得以讀取時,提供隨機數,其中所述隨機數讀取電壓是根據非揮發性記憶體胞元的特性而選擇;以及金鑰產生器,其自所述隨機數產生所述加密金鑰。
- 如申請專利範圍第39項所述的系統,其中所述記憶體包括三維記憶體胞元陣列。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
??10-2012-0084064 | 2012-07-31 | ||
KR1020120084064A KR102083271B1 (ko) | 2012-07-31 | 2012-07-31 | 플래시 메모리의 물리적 특성을 이용하여 난수를 생성하는 플래시 메모리 시스템 및 그것의 난수 생성 방법 |
Publications (2)
Publication Number | Publication Date |
---|---|
TW201405359A true TW201405359A (zh) | 2014-02-01 |
TWI617945B TWI617945B (zh) | 2018-03-11 |
Family
ID=50025491
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW102113707A TWI617945B (zh) | 2012-07-31 | 2013-04-18 | 隨機數產生方法、在非揮發性記憶體胞元的記憶體的操作方法以及加密金鑰產生方法 |
Country Status (5)
Country | Link |
---|---|
US (1) | US9218159B2 (zh) |
JP (1) | JP6193629B2 (zh) |
KR (1) | KR102083271B1 (zh) |
CN (1) | CN103578550B (zh) |
TW (1) | TWI617945B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI620119B (zh) * | 2017-02-21 | 2018-04-01 | 群聯電子股份有限公司 | 隨機資料產生電路、記憶體儲存裝置及隨機資料產生方法 |
TWI651647B (zh) * | 2017-04-13 | 2019-02-21 | 力旺電子股份有限公司 | 亂數產生裝置及其控制方法 |
Families Citing this family (38)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102060996B1 (ko) * | 2013-01-07 | 2020-02-11 | 삼성전자주식회사 | 단말기의 메모리 주소 및 데이터변환 장치 및 방법 |
US9529570B2 (en) * | 2014-03-19 | 2016-12-27 | Seagate Technology Llc | Random number generation using pulsed programming parameters |
DE102014206992A1 (de) * | 2014-04-11 | 2015-10-15 | Siemens Aktiengesellschaft | Zufallszahlengenerator und Verfahren zum Erzeugen von Zufallszahlen |
KR102235492B1 (ko) * | 2014-08-25 | 2021-04-05 | 삼성전자주식회사 | 불휘발성 메모리 장치 및 그것의 프로그램 검증 방법 |
US9575727B2 (en) | 2014-09-26 | 2017-02-21 | Intel Corporation | Methods for generating random data using phase change materials and related devices and systems |
JP6587188B2 (ja) * | 2015-06-18 | 2019-10-09 | パナソニックIpマネジメント株式会社 | 乱数処理装置、集積回路カード、および乱数処理方法 |
KR20170008546A (ko) * | 2015-07-14 | 2017-01-24 | 에스케이하이닉스 주식회사 | 난수 발생 회로 및 이를 이용한 반도체 시스템 |
US9967094B2 (en) | 2015-08-25 | 2018-05-08 | Nxp Usa, Inc. | Data processing system with secure key generation |
US9747982B1 (en) | 2016-02-22 | 2017-08-29 | Arm Ltd. | Device and method for generating random numbers |
US9990181B2 (en) * | 2016-08-03 | 2018-06-05 | Micron Technology, Inc. | Apparatuses and methods for random number generation |
KR101920190B1 (ko) * | 2016-11-22 | 2019-02-08 | 한국인터넷진흥원 | 임의의 ip 생성 방법 및 그 장치 |
US10512182B2 (en) | 2017-02-22 | 2019-12-17 | Toshiba Memory Corporation | Electronic apparatus |
JP6865652B2 (ja) * | 2017-02-22 | 2021-04-28 | キオクシア株式会社 | 電子機器 |
CN108536423B (zh) * | 2017-03-03 | 2022-05-10 | 群联电子股份有限公司 | 随机数据产生电路、存储器存储装置及随机数据产生方法 |
US10536266B2 (en) | 2017-05-02 | 2020-01-14 | Seagate Technology Llc | Cryptographically securing entropy for later use |
EP3407336B1 (en) * | 2017-05-22 | 2022-08-17 | Macronix International Co., Ltd. | Unchangeable phyisical unclonable function in non-volatile memory |
KR20190033791A (ko) * | 2017-09-22 | 2019-04-01 | 에스케이하이닉스 주식회사 | 컨트롤러, 반도체 메모리 장치 및 이들을 포함하는 메모리 시스템 |
US11522724B2 (en) * | 2017-12-11 | 2022-12-06 | International Business Machines Corporation | SRAM as random number generator |
US11728000B1 (en) | 2017-12-13 | 2023-08-15 | Board Of Trustees Of The University Of Alabama, For And On Behalf Of The University Of Alabama In Huntsville | Systems and methods for detecting counterfeit or defective memory |
CN110018810B (zh) * | 2018-01-10 | 2021-05-18 | 力旺电子股份有限公司 | 随机码产生器 |
TWI648739B (zh) * | 2018-03-20 | 2019-01-21 | 大陸商深圳大心電子科技有限公司 | 記憶體管理方法與儲存控制器 |
US11063755B2 (en) * | 2018-05-07 | 2021-07-13 | Cryptography Research, Inc. | Generating a key at a device based on a memory of the device |
US11620108B1 (en) * | 2018-05-17 | 2023-04-04 | Board Of Trustees Of The University Of Alabama For And On Behalf Of The University Of Alabama In Huntsville | Random number generation systems and methods |
US11321475B2 (en) | 2018-10-04 | 2022-05-03 | Hewlett Packard Enterprise Development Lp | Entropy data based on error correction data |
KR102644274B1 (ko) * | 2018-11-22 | 2024-03-06 | 삼성전자주식회사 | 메모리 컨트롤러, 이를 포함하는 메모리 시스템, 및 메모리 컨트롤러의 동작 방법 |
US11757632B2 (en) * | 2018-12-19 | 2023-09-12 | Micron Technology, Inc. | Generating a random value based on a noise characteristic of a memory cell |
US11139043B2 (en) | 2019-05-20 | 2021-10-05 | Board Of Trustees Of The University Of Alabama, For And On Behalf Of The University Of Alabama In Huntsville | Systems and methods for identifying counterfeit memory |
KR20200137542A (ko) | 2019-05-30 | 2020-12-09 | 에스케이하이닉스 주식회사 | 메모리 컨트롤러 및 이를 포함하는 저장 장치 |
KR20200142219A (ko) | 2019-06-12 | 2020-12-22 | 삼성전자주식회사 | 전자 장치 및 그의 저장 공간 이용 방법 |
CN110491434B (zh) * | 2019-08-23 | 2021-04-02 | 上海华虹宏力半导体制造有限公司 | 一种闪存存储器装置及其编程方法 |
US11650795B2 (en) * | 2019-08-23 | 2023-05-16 | SK Hynix Inc. | Raw read based physically unclonable function for flash memory |
JP2021033687A (ja) * | 2019-08-26 | 2021-03-01 | キオクシア株式会社 | メモリシステム |
CN110941418B (zh) * | 2019-11-26 | 2022-04-01 | 杭州浮云网络科技有限公司 | 一种随机数生成的方法、装置、设备及可读存储介质 |
US11532354B2 (en) | 2020-03-22 | 2022-12-20 | Silicon Storage Technology, Inc. | Precision tuning of a page or word of non-volatile memory cells and associated high voltage circuits for an analog neural memory array in an artificial neural network |
US11232844B2 (en) * | 2020-05-22 | 2022-01-25 | Samsung Electronics Co., Ltd. | Memory with adaptive slow-cell data compression |
KR20210145341A (ko) * | 2020-05-25 | 2021-12-02 | 삼성전자주식회사 | 비휘발성 메모리 장치에서의 데이터 암호화 방법, 비휘발성 메모리 장치 및 사용자 장치 |
KR20220099384A (ko) | 2021-01-06 | 2022-07-13 | 에스케이하이닉스 주식회사 | 메모리 장치 및 그 동작 방법 |
KR20230003972A (ko) * | 2021-06-30 | 2023-01-06 | 현대자동차주식회사 | 디지털 랜덤 암호키 생성 장치 |
Family Cites Families (28)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB2333652A (en) * | 1998-01-24 | 1999-07-28 | Motorola Ltd | Random number generator with improved equiprobability |
US7170996B1 (en) * | 1999-10-18 | 2007-01-30 | Qualcomm Incorporated | Random number generation for encrypting cellular communications |
DE60234084D1 (de) * | 2001-02-07 | 2009-12-03 | Fdk Corp | Zufallszahlengenerator und wahrscheinlichkeitsgenerator |
JP4053792B2 (ja) * | 2001-03-09 | 2008-02-27 | 株式会社東芝 | 音楽配信方法及び音楽再生装置 |
US20020128928A1 (en) * | 2001-03-09 | 2002-09-12 | Hiroshi Sukegawa | Music distribution method for distributing production such as music, server used for said music distribution method, and music reproduction apparatus |
US6963888B2 (en) * | 2001-11-29 | 2005-11-08 | Koninklijke Philips Electronics N.V. | Method and apparatus for preventing noise from influencing a random number generator based on flip-flop meta-stability |
TW557636B (en) * | 2002-03-26 | 2003-10-11 | Ind Tech Res Inst | Random number generator |
DE10219135B4 (de) * | 2002-04-29 | 2004-03-04 | Infineon Technologies Ag | Vorrichtung und Verfahren zum Erzeugen einer Zufallszahl |
US7599976B1 (en) | 2002-11-13 | 2009-10-06 | Metrowerks Corporation | System and method for cryptographic key generation |
JP3696209B2 (ja) * | 2003-01-29 | 2005-09-14 | 株式会社東芝 | シード生成回路、乱数生成回路、半導体集積回路、icカード及び情報端末機器 |
US7139785B2 (en) * | 2003-02-11 | 2006-11-21 | Ip-First, Llc | Apparatus and method for reducing sequential bit correlation in a random number generator |
TW580797B (en) * | 2003-03-11 | 2004-03-21 | Chunghwa Telecom Co Ltd | Random number generator using audio card |
JP4359130B2 (ja) * | 2003-12-05 | 2009-11-04 | 株式会社東芝 | 乱数生成素子 |
US8037309B2 (en) * | 2004-04-26 | 2011-10-11 | Trek 2000 International Ltd. | Portable data storage device with encryption system |
KR100706812B1 (ko) | 2006-02-10 | 2007-04-12 | 삼성전자주식회사 | 반도체 장치의 물리적 파라미터들의 통계적 분포 특성을평가하는 방법 |
US20070230702A1 (en) | 2006-04-04 | 2007-10-04 | Research In Motion Limited | Method, system and apparatus for updating encryption keys on a mobile communication device |
TWI367490B (en) * | 2006-09-08 | 2012-07-01 | Sandisk Corp | Method of pseudo random and command driven bit compensation for the cycling effects in flash memory and apparatus therefor |
KR100969758B1 (ko) | 2007-01-22 | 2010-07-13 | 삼성전자주식회사 | 플래시 변환 레이어에서 데이터를 암호화하여 처리하기위한 방법 및 장치 |
KR100824203B1 (ko) * | 2007-04-03 | 2008-04-21 | 주식회사 하이닉스반도체 | 플래시 메모리 소자의 프로그램 방법 |
US8130955B2 (en) * | 2007-12-21 | 2012-03-06 | Spansion Llc | Random number generation through use of memory cell activity |
US7826277B2 (en) * | 2008-03-10 | 2010-11-02 | Hynix Semiconductor Inc. | Non-volatile memory device and method of operating the same |
US8230158B2 (en) * | 2008-08-12 | 2012-07-24 | Micron Technology, Inc. | Memory devices and methods of storing data on a memory device |
KR101468096B1 (ko) * | 2008-10-24 | 2014-12-04 | 삼성전자주식회사 | 불휘발성 메모리 장치의 동작 방법 및 그것을 포함하는 메모리 시스템 |
TWI387921B (zh) * | 2009-04-16 | 2013-03-01 | Univ Nat Changhua Education | 利用中央極限定理之常態分佈亂數產生器及其亂數產生方法 |
JP5017407B2 (ja) * | 2010-03-24 | 2012-09-05 | 株式会社東芝 | 半導体記憶装置 |
US8516274B2 (en) | 2010-04-06 | 2013-08-20 | Densbits Technologies Ltd. | Method, system and medium for analog encryption in a flash memory |
TWI455142B (zh) * | 2010-04-08 | 2014-10-01 | Silicon Motion Inc | 快閃記憶體之資料讀取的方法以及資料儲存裝置 |
JP5499365B2 (ja) * | 2010-09-29 | 2014-05-21 | 国立大学法人神戸大学 | メモリセルアレイを用いたidチップおよびその生成方法 |
-
2012
- 2012-07-31 KR KR1020120084064A patent/KR102083271B1/ko active IP Right Grant
- 2012-11-27 US US13/685,743 patent/US9218159B2/en active Active
-
2013
- 2013-04-18 TW TW102113707A patent/TWI617945B/zh active
- 2013-06-06 JP JP2013119560A patent/JP6193629B2/ja active Active
- 2013-07-31 CN CN201310328869.4A patent/CN103578550B/zh active Active
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI620119B (zh) * | 2017-02-21 | 2018-04-01 | 群聯電子股份有限公司 | 隨機資料產生電路、記憶體儲存裝置及隨機資料產生方法 |
US10193537B2 (en) | 2017-02-21 | 2019-01-29 | Phison Electronics Corp. | Random data generation circuit, memory storage device and random data generation method |
TWI651647B (zh) * | 2017-04-13 | 2019-02-21 | 力旺電子股份有限公司 | 亂數產生裝置及其控制方法 |
Also Published As
Publication number | Publication date |
---|---|
JP6193629B2 (ja) | 2017-09-06 |
TWI617945B (zh) | 2018-03-11 |
JP2014032655A (ja) | 2014-02-20 |
KR20140017290A (ko) | 2014-02-11 |
US9218159B2 (en) | 2015-12-22 |
US20140037086A1 (en) | 2014-02-06 |
CN103578550B (zh) | 2019-05-28 |
CN103578550A (zh) | 2014-02-12 |
KR102083271B1 (ko) | 2020-03-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI617945B (zh) | 隨機數產生方法、在非揮發性記憶體胞元的記憶體的操作方法以及加密金鑰產生方法 | |
US20240202138A1 (en) | Memory controller for rpmb-inclusive memory device, operating method thereof and electronic device including the same | |
KR102118979B1 (ko) | 불휘발성 메모리 장치 및 그것의 프로그램 방법 | |
CN111539043B (zh) | 提供对受保护存储器的存取的*** | |
US20140047246A1 (en) | Flash memory device including key control logic and encryption key storing method | |
CN111104059B (zh) | 存储器控制器及操作该存储器控制器的方法 | |
US20140032935A1 (en) | Memory system and encryption method in memory system | |
KR20130117422A (ko) | 프로그램 스케줄러를 포함하는 플래시 메모리 장치 | |
KR20190099693A (ko) | 메모리 시스템 및 그것의 동작 방법 | |
TW202042241A (zh) | 使用反及閘記憶體陣列之物理不可複製函數 | |
KR102180299B1 (ko) | 반도체 장치 | |
US10990542B2 (en) | Flash memory system and method of generating quantized signal thereof | |
KR20160017983A (ko) | 메모리 장치, 메모리 시스템 및 메모리 시스템의 동작 방법 | |
US9841918B2 (en) | Flash memory device including deduplication, and related methods | |
US11307777B2 (en) | Memory system and operating method thereof | |
KR20180104853A (ko) | 메모리 시스템 및 그의 동작 방법 | |
US11386018B2 (en) | Memory system and operating method thereof | |
CN112447234A (zh) | 存储器控制器及其操作方法 | |
TWI656535B (zh) | 系統晶片之非揮發性記憶體之寫入方法 | |
TW202418289A (zh) | 存儲系統及其操作方法、存儲器控制器和存儲器 | |
CN118070358A (zh) | 对建模边信道攻击的预防 | |
CN112435705A (zh) | 存储器*** |