TW202042241A - 使用反及閘記憶體陣列之物理不可複製函數 - Google Patents

使用反及閘記憶體陣列之物理不可複製函數 Download PDF

Info

Publication number
TW202042241A
TW202042241A TW108147298A TW108147298A TW202042241A TW 202042241 A TW202042241 A TW 202042241A TW 108147298 A TW108147298 A TW 108147298A TW 108147298 A TW108147298 A TW 108147298A TW 202042241 A TW202042241 A TW 202042241A
Authority
TW
Taiwan
Prior art keywords
value
bits
original string
logic
memory
Prior art date
Application number
TW108147298A
Other languages
English (en)
Other versions
TWI756603B (zh
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 美商美光科技公司
Publication of TW202042241A publication Critical patent/TW202042241A/zh
Application granted granted Critical
Publication of TWI756603B publication Critical patent/TWI756603B/zh

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/04Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS
    • G11C16/0483Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS comprising cells having several storage transistors connected in series
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/22Safety or protection circuits preventing unauthorised or accidental access to memory cells
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3271Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using challenge-response
    • H04L9/3278Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using challenge-response using physically unclonable functions [PUF]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/57Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/71Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information
    • G06F21/72Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information in cryptographic circuits
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/78Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure storage of data
    • G06F21/79Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure storage of data in semiconductor storage media, e.g. directly-addressable memories
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/10Programming or data input circuits
    • G11C16/14Circuits for erasing electrically, e.g. erase voltage switching circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/02Detection or location of defective auxiliary circuits, e.g. defective refresh counters
    • G11C29/021Detection or location of defective auxiliary circuits, e.g. defective refresh counters in voltage or current generators
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/02Detection or location of defective auxiliary circuits, e.g. defective refresh counters
    • G11C29/028Detection or location of defective auxiliary circuits, e.g. defective refresh counters with adaption or trimming of parameters
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C29/08Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
    • G11C29/12Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
    • G11C29/18Address generation devices; Devices for accessing memories, e.g. details of addressing circuits
    • G11C29/30Accessing single arrays
    • G11C29/34Accessing multiple bits simultaneously
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C29/08Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
    • G11C29/12Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
    • G11C29/44Indication or identification of errors, e.g. for repair
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/56Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency
    • G11C11/5621Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency using charge storage in a floating gate
    • G11C11/5628Programming or writing circuits; Data input circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/56Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency
    • G11C11/5621Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency using charge storage in a floating gate
    • G11C11/5628Programming or writing circuits; Data input circuits
    • G11C11/5635Erasing circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/56Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency
    • G11C11/5621Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency using charge storage in a floating gate
    • G11C11/5642Sensing or reading circuits; Data output circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/56Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency
    • G11C11/5671Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency using charge trapping in an insulator
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/10Programming or data input circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/10Programming or data input circuits
    • G11C16/14Circuits for erasing electrically, e.g. erase voltage switching circuits
    • G11C16/16Circuits for erasing electrically, e.g. erase voltage switching circuits for erasing blocks, e.g. arrays, words, groups
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/26Sensing or reading circuits; Data output circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/26Sensing or reading circuits; Data output circuits
    • G11C16/28Sensing or reading circuits; Data output circuits using differential sensing or reference cells, e.g. dummy cells
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/34Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
    • G11C16/3404Convergence or correction of memory cell threshold voltages; Repair or recovery of overerased or overprogrammed cells
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C2029/0409Online test
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C2029/0411Online error correction
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C29/08Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
    • G11C29/12Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
    • G11C2029/4402Internal storage of test result, quality data, chip identification, repair information
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C29/08Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C29/08Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
    • G11C29/12Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
    • G11C29/38Response verification devices
    • G11C29/40Response verification devices using compression techniques
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/52Protection of memory contents; Detection of errors in memory contents
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/24Memory cell safety or protection circuits, e.g. arrangements for preventing inadvertent reading or writing; Status cells; Test cells
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0643Hash functions, e.g. MD5, SHA, HMAC or f9 MAC
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0866Generation of secret information including derivation or calculation of cryptographic keys or passwords involving user or device identifiers, e.g. serial number, physical or biometrical information, DNA, hand-signature or measurable physical characteristics

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Computer Hardware Design (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Mathematical Physics (AREA)
  • Read Only Memory (AREA)
  • Semiconductor Memories (AREA)

Abstract

本文中描述之各種實例係關於用於使用一NAND快閃陣列產生資料值之系統及方法。一記憶體控制器可使用一初始讀取位準讀取該NAND快閃陣列處之數個記憶體胞元以產生一第一原始串。該記憶體控制器可判定來自該第一原始串之具有邏輯0之一值之位元之一數目與來自該第一原始串之具有邏輯1之一值之位元之一數目之間的一差大於一臨限值且使用一第二讀取位準讀取該數個記憶體胞元以產生一第二原始串。該記憶體控制器可判定來自該第二原始串之具有邏輯0之一值之位元之一數目與來自該第二原始串之具有邏輯1之一值之位元之一數目之間的一差不大於一臨限值且使用該第二原始串應用一密碼函數以產生一第一PUF值。

Description

使用反及閘記憶體陣列之物理不可複製函數
本申請案係關於一種NAND記憶體陣列,且更特定言之係關於一種具有NAND記憶體陣列之一物理不可複製函數。
記憶體裝置通常提供為電腦或其他電子裝置中之內部半導體積體電路。存在許多不同類型之記憶體,包含揮發性記憶體及非揮發性記憶體。
揮發性記憶體需要電力來維持其資料,且包含隨機存取記憶體(RAM)、動態隨機存取記憶體(DRAM)或同步動態隨機存取記憶體(SDRAM)等。
非揮發性記憶體可在未被供電時留存所儲存資料,且包含快閃記憶體、唯讀記憶體(ROM)、電可擦除可程式化ROM (EEPROM)、靜態RAM (SRAM)、可擦除可程式化ROM (EPROM)、電阻可變記憶體(諸如相變隨機存取記憶體(PCRAM)、電阻性隨機存取記憶體(RRAM)及磁阻性隨機存取記憶體(MRAM)或3D XPointTM 記憶體等。
快閃記憶體用作廣泛範圍之電子應用之非揮發性記憶體。快閃記憶體裝置通常包含容許高記憶體密度、高可靠性及低功率消耗之一個電晶體、浮動閘或電荷捕捉記憶體胞元之一或多個群組。
兩種常見類型之快閃記憶體陣列架構包含NAND及NOR架構,以配置各者之基本記憶體胞元組態之邏輯形式命名。記憶體陣列之記憶體胞元通常配置成一矩陣。在一實例中,該陣列之一列中之各浮動閘記憶體胞元之閘極經耦合至一存取線(例如,一字線)。在一NOR架構中,該陣列之一行中之各記憶體胞元之汲極經耦合至一資料線(例如,一位元線)。在一NAND架構中,該陣列之一串中之各記憶體胞元之汲極在一源極線與一位元線之間串聯耦合在一起(源極至汲極)。
透過藉由選擇耦合至特定記憶體胞元之閘極之字線而啟動特定記憶體胞元之解碼器存取NOR及NAND架構半導體記憶體陣列兩者。在一NOR架構半導體記憶體陣列中,一旦啟動,選定記憶體胞元便將其等資料值放置於位元線上,從而取決於程式化一特定胞元之狀態而導致不同電流流動。在一NAND架構半導體記憶體陣列中,將一高偏壓電壓施加至一汲極側選擇閘極(SGD)線。按一指定通過電壓(例如,Vpass)驅動耦合至各群組之未選定記憶體胞元之閘極之字線以操作各群組之未選定記憶體胞元作為傳遞電晶體(例如,以未受限於其等所儲存資料值之一方式傳遞電流)。電流接著透過各串聯耦合之群組從源極線流動至位元線,僅受限於各群組之選定記憶體胞元,從而將選定記憶體胞元之當前經編碼資料值放置於位元線上。
可將一NOR或NAND架構半導體記憶體陣列中之各快閃記憶體胞元個別地或共同地程式化至一個或數個程式化狀態。例如,一單位階胞元(SLC)可表示兩個程式化狀態(例如,1或0)之一者,從而表示一個資料位元。
然而,快閃記憶體胞元亦可表示兩個以上程式化狀態之一者,從而容許在不增加記憶體胞元數目之情況下製造更高密度記憶體,此係因為各胞元可表示一個以上二進位數位(例如,一個以上位元)。此等胞元可稱為多狀態記憶體胞元、多數位胞元或多位階胞元(MLC)。在某些實例中,MLC可指代每胞元可儲存兩個資料位元(例如,四個程式化狀態之一者)之一記憶體胞元,三位階胞元(TLC)可指代每胞元可儲存三個資料位元(例如,八個程式化狀態之一者)之一記憶體胞元,且四位階胞元(QLC)每胞元可儲存四個資料位元。MLC在本文中以其更廣泛內容脈絡使用以可指代每胞元可儲存一個以上資料位元(即,可表示兩個以上程式化狀態)之任何記憶體胞元。
傳統記憶體陣列係配置於一半導體基板之一表面上之二維(2D)結構。為增加一給定區域之記憶體容量且減小成本,已減小個別記憶體胞元之大小。然而,個別記憶體胞元之大小減小及因此2D記憶體陣列之記憶體密度存在一技術限制。作為回應,正在開發三維(3D)記憶體結構(諸如3D NAND架構半導體記憶體裝置)以進一步增加記憶體密度且降低記憶體成本。
此等3D NAND裝置通常包含串聯耦合(例如,汲極至源極)在靠近一源極之一或多個源極側選擇閘極(SGS)與靠近一位元線之一或多個汲極側選擇閘極(SGD)之間之記憶體胞元串。在一實例中,SGS或SGD可包含一或多個場效電晶體(FET)或金屬氧化物半導體(MOS)結構裝置等。在一些實例中,該等串將垂直延伸穿過含有各自字線之多個垂直間隔層疊。一半導體結構(例如,一多晶矽結構)可相鄰於一儲存胞元串延伸以形成用於該串之儲存胞元之一通道。在一垂直串之實例中,多晶矽結構可呈一垂直延伸支柱之形式。在一些實例中,串可經「摺疊」且因此相對於一U形支柱而配置。在其他實例中,多個垂直結構可彼此疊置以形成儲存胞元串之堆疊陣列。
記憶體陣列或裝置可組合在一起以形成一記憶體系統之一儲存容量,諸如一固態硬碟(SSD)、一通用快閃儲存(UFSTM )裝置、一多媒體卡(MMC)固態儲存裝置、一嵌入式MMC裝置(eMMCTM )等。一SSD尤其可用作一電腦之主儲存裝置,其在例如效能、大小、重量、耐用性、操作溫度範圍及功率消耗方面具有優於具有移動零件之傳統硬碟機之優點。例如,SSD可具有減少搜尋時間、延時或與磁碟機(例如,機電等)相關聯之其他延遲。SSD使用非揮發性記憶體胞元(諸如快閃記憶體胞元)以消除內部電池供應要求,因此容許驅動器更多樣化且緊緻。
一SSD可包含數個記憶體裝置(包含數個晶粒或邏輯單元(例如,邏輯單元號碼或LUN))且可包含執行操作記憶體裝置或與外部系統介接所需之邏輯功能之一或多個處理器或其他控制器。此等SSD可包含一或多個快閃記憶體晶粒,包含數個記憶體陣列及其上之周邊電路系統。快閃記憶體陣列可包含組織成數個實體頁之數個記憶體胞元區塊。在許多實例中,SSD亦將包含DRAM或SRAM (或其他形式之記憶體晶粒或其他記憶體結構)。SSD可從一主機接收與記憶體操作(諸如在記憶體裝置與主機之間傳送資料(例如,使用者資料及相關聯完整性資料,諸如錯誤資料及位址資料等)之讀取或寫入操作或從記憶體裝置擦除資料之擦除操作)相關聯之命令。
根據本發明之一些實施例,本發明係關於一種用於使用一NAND快閃陣列產生一資料值之方法。該方法包括:使用一初始讀取位準讀取該NAND快閃陣列處之數個記憶體胞元以產生一第一原始串;判定來自該第一原始串之具有邏輯0之一值之位元之一數目與來自該第一原始串之具有邏輯1之一值之位元之一數目之間的一差大於一臨限值;使用一第二讀取位準讀取該NAND快閃陣列處之該數個記憶體胞元以產生一第二原始串;判定來自該第二原始串之具有邏輯0之一值之位元之一數目與來自該第二原始串之具有邏輯1之一值之位元之一數目之間的一差不大於一臨限值;及使用該第二原始串應用一密碼函數以產生一第一資料值。
根據本發明之一些實施例,本發明係關於一種用於產生資料值之系統。該系統包括:一NAND快閃陣列及一記憶體控制器。該記憶體控制器經組態以執行包括以下步驟之操作:使用一初始讀取位準讀取該NAND快閃陣列處之數個記憶體胞元以產生一第一原始串;判定來自該第一原始串之具有邏輯0之一值之位元之一數目與來自該第一原始串之具有邏輯1之一值之位元之一數目之間的一差大於一臨限值;使用一第二讀取位準讀取該NAND快閃陣列處之該數個記憶體胞元以產生一第二原始串;判定來自該第二原始串之具有邏輯0之一值之位元之一數目與來自該第二原始串之具有邏輯1之一值之位元之一數目之間的一差不大於一臨限值;及使用該第二原始串應用一密碼函數以產生一第一資料值。
根據本發明之一些實施例,本發明係關於一種其上具有指令之非暫時性電腦可讀媒體。當該非暫時性電腦可讀媒體由至少一個處理器執行時,該非暫時性電腦可讀媒體導致該處理器執行包括以下步驟之操作:使用一初始讀取位準讀取一NAND快閃陣列處之數個記憶體胞元以產生一第一原始串;判定來自該第一原始串之具有邏輯0之一值之位元之一數目與來自該第一原始串之具有邏輯1之一值之位元之一數目之間的一差大於一臨限值;使用一第二讀取位準讀取該NAND快閃陣列處之該數個記憶體胞元以產生一第二原始串;判定來自該第二原始串之具有邏輯0之一值之位元之一數目與來自該第二原始串之具有邏輯1之一值之位元之一數目之間的一差不大於一臨限值;及使用該第二原始串應用一密碼函數以產生一第一資料值。
本文中描述之各種實例係關於用於使用一NAND快閃陣列之記憶體胞元產生密鑰之系統及方法。密鑰可為使用NAND快閃陣列導出之一物理不可複製函數(PUF)。
在一些實例中,可期望使用一PUF在一儲存容量上產生密鑰,諸如一SSD、UFS、MMC、eMMC等。例如,出於安全目的,一儲存容量可使用密鑰。一些儲存容量接收使用一密鑰加密或以其他方式密碼地標記之命令。若命令未使用儲存容量所預期之密碼加密或標記,則儲存容量可拒絕執行命令。而且,在一些實例中,一儲存容量可使用一密鑰加密及/或解密所儲存資料。
當一儲存單元利用一密鑰時,密鑰儲存於儲存單元處及/或可存取至儲存單元。將一密鑰提供至一儲存單元之一個例示性方式係例如在產生儲存單元期間注入一外部密鑰。所注入之密鑰經儲存於一安全密鑰資料庫處之儲存單元處。然而,注入一外部密鑰可不如其他配置安全,例如此係因為密鑰資料庫可易受未授權存取。
一些儲存單元可經配置以使用一PUF產生密鑰。一PUF係可基於一主要半導體裝置(諸如一記憶體裝置)之性質從該主要半導體裝置偵測之一獨有資料值。例如,記憶體及其他半導體裝置之製造中之小程序變動可以其他方式導致類似半導體裝置展現稍微不同之行為。此等小行為差異可經偵測且用於產生PUF值。PUF值係從一或多個主要半導體組件之獨有性質導出之資料。PUF值可用於例如產生密鑰且產生隨機或偽隨機數。
本文中描述之各種實例使用來自一NAND快閃陣列之數個記憶體胞元作為主要半導體裝置而產生PUF值。在一些實例中,記憶體胞元包含NAND快閃陣列之一區塊中之全部或大多數記憶體胞元。記憶體胞元具有一臨限值電壓分佈。一NAND記憶體胞元之臨限值電壓係施加至胞元之控制閘極之最低電壓,其將導致胞元在其位元線上傳導電流。一NAND記憶體胞元之臨限值電壓取決於胞元上之電荷位準。例如,在許多NAND快閃記憶體胞元中,將電荷添加至胞元增加臨限值電壓。
歸因於製造期間之程序變動,不同記憶體胞元以不同臨限值電壓對類似程式化作出回應。例如,數個類似程式化記憶體胞元可展現一臨限值電壓分佈。記憶體胞元可例如在NAND快閃陣列通電時及/或在程式化之後進行類似程式化,如本文中描述。
一記憶體控制器可藉由在一初始讀取位準下讀取數個記憶體胞元以產生一原始串而產生一PUF值。初始讀取位準可處於或接近分佈之一中值臨限值電壓,例如使得約一半之記憶體胞元傳回一邏輯0且約一半之記憶體胞元傳回一邏輯1。視情況使用一雜湊演算法壓縮原始串以產生PUF值。PUF值可接著用作例如一密鑰、一隨機數及/或用於任何其他適合目的。
在一些實例中,數個記憶體胞元上之臨限值電壓分佈可隨時間改變。例如,NAND記憶體胞元之臨限值可傾向於隨時間減小,從而導致分佈偏移。在一些情況中,分佈亦可在形狀上改變,例如若一些記憶體胞元之臨限值電壓比其他記憶體胞元之臨限值電壓偏移更多或更快。
記憶體控制器可經組態以監測記憶體胞元處之臨限值電壓分佈之一品質以偵測及視情況校正分佈之改變。在一些實例中,在從記憶體胞元讀取一原始串之後,記憶體控制器經程式化以判定原始串中之具有0之一邏輯值之位元之數目(Bit0)與原始串中之具有1之一邏輯值之位元之一數目(Bit1)之間的一差。若Bit0與Bit1之間的差不大於一臨限值,則分佈可具有足夠品質且記憶體控制器可從原始串產生一PUF值,如本文中描述。另一方面,若Bit0與Bit1之間的差大於臨限值,則可指示讀取位準不處於或約為中值臨限值電壓。記憶體控制器可選擇產生一新原始串之一新讀取位準,其中Bit0與Bit1之間的差不大於臨限值。新原始串接著用於產生一PUF值。
在一些實例中,記憶體控制器經組態以重新程式化數個記憶體胞元。此可在例如臨限值電壓分佈已改變使得難以或不可能找到其中Bit0與Bit1之間的差不大於臨限值之一新讀取位準之情況下發生。其亦可在例如一些記憶體胞元之臨限值電壓小於0之情況下發生。此可導致臨限值電壓分佈之下界為負,如本文中更詳細展示。重新程式化記憶體胞元可包含擦除NAND快閃陣列處之包含該等記憶體胞元之區塊。在擦除之後,記憶體控制器可將預定數目個程式化脈衝提供至記憶體胞元。將(若干)相同程式化脈衝提供至記憶體胞元導致一新臨限值電壓分佈。記憶體控制器可基於新分佈選擇一新讀取位準且利用新讀取位準產生PUF值,如本文中描述。
圖1繪示包含經組態以透過一通信介面通信之一主機裝置105及一記憶體裝置110之一環境100之一實例。主機裝置105或記憶體裝置110可包含於各種產品150 (諸如物聯網(IoT)裝置(例如,一冰箱或其他設施、感測器、馬達或致動器、行動通信裝置、汽車、無人機等))中以支援產品150之處理、通信或控制。
記憶體裝置110包含一記憶體控制器115及包含例如數個個別記憶體晶粒(例如,三維(3D) NAND晶粒之一堆疊)之一記憶體陣列120。在3D架構半導體記憶體技術中,堆疊垂直結構,從而增加層疊、實體頁之數目及因此一記憶體裝置(例如,一儲存裝置)之密度。在一實例中,記憶體裝置110可為一離散記憶體或主機裝置105之儲存裝置組件。在其他實例中,記憶體裝置110可為一積體電路(例如,系統單晶片(SOC)等)之一部分、與主機裝置105之一或多個其他組件堆疊或以其他方式包含在內。
一或多個通信介面可用於在記憶體裝置110與主機裝置105之一或多個其他組件之間傳送資料,諸如一串列先進技術附件(SATA)介面、一周邊組件互連快速(PCIe)介面、一通用串列匯流排(USB)介面、一通用快閃儲存(UFS)介面、一eMMCTM 介面或一或多個其他連接器或介面。主機裝置105可包含一主機系統、一電子裝置、一處理器、一記憶卡讀取器或在記憶體裝置110外部之一或多個其他電子裝置。在一些實例中,主機105可為具有參考圖11之機器1100論述之組件之一些部分或全部之一機器。
電子裝置(諸如行動電子裝置(例如,智慧型電話、平板電腦等)、用於汽車應用中之電子裝置(例如,汽車感測器、控制單元、駕駛員輔助系統、乘客安全或舒適系統等)及網際網路連接之設施或裝置(例如,物聯網(IoT)裝置等))尤其取決於電子裝置類型、使用環境、效能期望等而具有變化儲存需求。
電子裝置可分解成若干主組件:一處理器(例如,一中央處理單元(CPU)或其他主處理器);記憶體(例如,一或多個揮發性或非揮發性隨機存取記憶體(RAM)記憶體裝置,諸如動態RAM (DRAM)、行動或低功率雙倍資料速率同步DRAM (DDR SDRAM)等);及一儲存裝置(例如,非揮發性記憶體(NVM)裝置,諸如快閃記憶體、唯讀記憶體(ROM)、一SSD、一MMC或其他記憶卡結構或總成等)。在某些實例中,電子裝置可包含一使用者介面(例如,一顯示器、觸控螢幕、鍵盤、一或多個按鈕等)、一圖形處理單元(GPU)、一功率管理電路、一基帶處理器或一或多個收發器電路等。
記憶體控制器115可從主機105接收指令且可與記憶體陣列通信,諸如將資料傳送(例如,寫入或擦除)至記憶體陣列之記憶體胞元、平面、子區塊、區塊或頁之一或多者或從其等傳送(例如,讀取)資料。記憶體控制器115尤其可包含電路系統或韌體,包含一或多個組件或積體電路。例如,記憶體控制器115可包含經組態以控制跨記憶體陣列120之存取且提供主機105與記憶體裝置110之間的一轉譯層之一或多個記憶體控制單元、電路或組件。記憶體控制器115可包含一或多個輸入/輸出(I/O)電路、線或介面以將資料傳送至記憶體陣列120或從記憶體陣列120傳送資料。記憶體控制器115可包含一記憶體管理器125及一陣列控制器135。
記憶體管理器125尤其可包含電路系統或韌體,諸如與各種記憶體管理功能相關聯之數個組件或積體電路。出於本描述之目的,將在NAND記憶體之內容脈絡中描述例示性記憶體操作及管理功能。熟習此項技術者將認知,其他形式之非揮發性記憶體可具有類似記憶體操作或管理功能。此等NAND管理功能包含損耗均衡(例如,廢棄項目收集或回收)、錯誤偵測或校正、區塊引退或一或多個其他記憶體管理功能。記憶體管理器125可將主機命令(例如,從一主機接收之命令)剖析或格式化為裝置命令(例如,與一記憶體陣列等之操作相關聯之命令等)或產生陣列控制器135或記憶體裝置110之一或多個其他組件之裝置命令(例如,完成各種記憶體管理功能)。
記憶體管理器125可包含一組管理表130,該組管理表130經組態以維持與記憶體裝置110之一或多個組件相關聯之各種資訊(例如,與耦合至記憶體控制器115之一記憶體陣列或一或多個記憶體胞元相關聯之各種資訊)。例如,管理表130可包含關於耦合至記憶體控制器115之一或多個記憶體胞元區塊之塊齡(block age)、區塊擦除計數、錯誤歷史或一或多個錯誤計數(例如,一寫入操作錯誤計數、一讀取位元錯誤計數、一讀取操作錯誤計數、一擦除錯誤計數等)之資訊。在某些實例中,若一或多個錯誤計數之所偵測錯誤數目高於一臨限值,則位元錯誤可稱為一不可校正位元錯誤。管理表130尤其可維持可校正或不可校正位元錯誤之一計數。
陣列控制器135尤其可包含經組態以控制與將資料寫入至耦合至記憶體控制器115之記憶體裝置110之一或多個記憶體胞元、從該一或多個記憶體胞元讀取資料或擦除該一或多個記憶體胞元相關聯之記憶體操作之電路系統或組件。記憶體操作可基於例如從主機105接收或由記憶體管理器125在內部產生(例如,與損耗均衡、錯誤偵測或校正等相關聯)之主機命令。
陣列控制器135可包含一錯誤校正碼(ECC)組件140,該錯誤校正碼(ECC)組件140尤其可包含一ECC引擎或經組態以偵測或校正與將資料寫入至耦合至記憶體控制器115之記憶體裝置110之一或多個記憶體胞元或從該一或多個記憶體胞元讀取資料相關聯之錯誤之其他電路系統。記憶體控制器115可經組態以主動地偵測與資料之各種操作或儲存相關聯之錯誤發生(例如,位元錯誤、操作錯誤等)且從錯誤發生恢復,同時維持在主機105與記憶體裝置110之間傳送之資料之完整性,或維持所儲存資料之完整性(例如,使用冗餘RAID儲存等),且可移除(例如,引退)故障記憶體資源(例如,記憶體胞元、記憶體陣列、頁、區塊等)以防止未來錯誤。
記憶體陣列120可包含配置於例如數個裝置、平面、子區塊、區塊或頁中之若干記憶體胞元。作為一個實例,一48 GB TLC NAND記憶體裝置可包含每頁18,592個位元組(B) (16,384+2208個位元組)之資料,每區塊1536個頁,每平面548個區塊及每裝置4個或4個以上平面。作為另一實例,一32 GB MLC記憶體裝置(每胞元儲存兩個資料位元(即,4個可程式化邏輯狀態))可包含每頁18,592個位元組(B) (16,384+2208個位元組)之資料,每區塊1024個頁,每平面548個區塊及每裝置4個平面,但與一對應TLC記憶體裝置相比,具有一半所需寫入時間及兩倍程式化/擦除(P/E)循環。其他實例可包含其他數目或配置。在一些實例中,一記憶體裝置或其之一部分可選擇性地在SLC模式或一所要MLC模式(諸如TLC、QLC等)中操作。
在操作中,資料通常以頁寫入至NAND記憶體裝置110或從NAND記憶體裝置110讀取且以區塊擦除。然而,可如所需般對更大或更小記憶體胞元群組執行一或多個記憶體操作(例如,讀取、寫入、擦除等)。一NAND記憶體裝置110之資料傳送大小通常稱為一頁,而一主機之資料傳送大小通常稱為一區段。
雖然一頁資料可包含數個位元組之使用者資料(例如,包含數個資料區段之一資料酬載)及其對應後設資料,但該頁之大小通常僅指用於儲存使用者資料之位元組數目。作為一實例,具有4 KB之一頁大小之一頁資料可包含4 KB使用者資料(例如,假設512 B之一區段大小之8個區段)以及對應於使用者資料之數個位元組(例如,32 B、54 B、224 B等)之後設資料,諸如完整性資料(例如,錯誤偵測或校正碼資料)、位址資料(例如,邏輯位址資料等)或與使用者資料相關聯之其他後設資料。
不同類型之記憶體胞元或記憶體陣列120可提供不同頁大小或可需要與其相關聯之不同量之後設資料。例如,不同記憶體裝置類型可具有不同位元錯誤率,此可導致確保該頁資料之完整性需要不同量之後設資料(例如,與具有一較低位元錯誤率之一記憶體裝置相比,具有一較高位元錯誤率之一記憶體裝置可需要更多位元組之錯誤校正碼資料)。作為一實例,一多位階胞元(MLC) NAND快閃裝置可具有高於一對應單位階胞元(SLC) NAND快閃裝置之一位元錯誤率。因而,與對應SLC裝置相比,MLC裝置可需要針對錯誤資料之更多後設資料位元組。
記憶體控制器115及記憶體陣列120可經組態以產生一PUF值160,如本文中描述。例如,記憶體陣列120之數個記憶體胞元(諸如,例如記憶體胞元之一個區塊)可展現一臨限值電壓分佈162。記憶體控制器115可讀取數個記憶體胞元以產生一原始串。例如,可利用如本文中描述之一雜湊函數壓縮原始串以產生PUF值160。
圖2繪示一3D NAND架構半導體記憶體陣列200之一例示性示意圖,其包含組織成區塊(例如,區塊A 201A、區塊B 201B等)及子區塊(例如,子區塊A0 201A0 、子區塊An 201An 、子區塊B0 201B0 、子區塊Bn 201Bn 等)之數個記憶體胞元串(例如,第一至第三A0 記憶體串205A0 至207A0 、第一至第三An 記憶體串205An 至207An 、第一至第三B0 記憶體串205B0 至207B0 、第一至第三Bn 記憶體串205Bn 至207Bn 等)。記憶體陣列200表示通常將在一記憶體裝置之一區塊、裝置或其他單元中發現之較大數目個類似結構之一部分。
各記憶體胞元串包含在Z方向上(源極至汲極)堆疊於一源極線(SRC) 235或一源極側選擇閘極(SGS) (例如,第一至第三A0 SGS 231A0 至233A0 、第一至第三An SGS 231An 至233An 、第一至第三B0 SGS 231B0 至233B0 、第一至第三Bn SGS 231Bn 至233Bn 等)與一汲極側選擇閘極(SGD) (例如,第一至第三A0 SGD 226A0 至228A0 、第一至第三An SGD 226An 至228An 、第一至第三B0 SGD 226B0 至228B0 、第一至第三Bn SGD 226Bn 至228Bn 等)之間的電荷儲存電晶體(例如,浮動閘極電晶體、電荷捕捉結構等)之數個層疊。3D記憶體陣列中之各記憶體胞元串可沿X方向配置為資料線(例如,位元線BL0至BL2 220至222)且沿Y方向配置為實體頁。
在一實體頁內,各層疊表示一記憶體胞元列且各記憶體胞元串表示一行。一子區塊可包含一或多個實體頁。一區塊可包含數個(例如,128個、256個、384個等)子區塊(或實體頁)。儘管本文中繪示為具有兩個區塊,各區塊具有兩個子區塊,各子區塊具有一單一實體頁,各實體頁具有三個記憶體胞元串且各串具有8個記憶體胞元層疊,然在其他實例中,記憶體陣列200可包含更多或更少區塊、子區塊、實體頁、記憶體胞元串、記憶體胞元或層疊。例如,各記憶體胞元串可視需要包含更多或更少(例如,16個、32個、64個、128個等)層疊以及電荷儲存電晶體(例如,選擇閘極、資料線等)上方或下方之一或多個額外半導體材料層疊。作為一實例,一48 GB TLC NAND記憶體裝置可包含每頁18,592個位元組(B) (16,384+2208個位元組)之資料,每區塊1536個頁,每平面548個區塊及每裝置4個或4個以上平面。
記憶體陣列200中之各記憶體胞元包含耦合至(例如,電或以其他方式可操作地連接至)一存取線(例如,字線WL00 至WL70 210A至217A、WL01 至WL71 210B至217B等)之一控制閘極,其等視需要共同跨一特定層疊或一層疊之一部分耦合控制閘極。可使用各自存取線存取或控制3D記憶體陣列中之特定層疊及因此一串中之特定記憶體胞元。可使用各種選擇線存取選擇閘極群組。例如,可使用一A0 SGD線SGDA0 225A0 存取第一至第三A0 SGD 226A0 至228A0 ,可使用一An SGD線SGDAn 225An 存取第一至第三An SGD 226An 至228An ,可使用一B0 SGD線SGDB0 225B0 存取第一至第三B0 SGD 226B0 至228B0 ,且可使用一Bn SGD線SGDBn 225Bn 存取第一至第三Bn SGD 226Bn 至228Bn 。可使用一閘極選擇線SGS0 230A存取第一至第三A0 SGS 231A0 至233A0 及第一至第三An SGS 231An 至233An ,且可使用一閘極選擇線SGS1 230B存取第一至第三B0 SGS 231B0 至233B0 及第一至第三Bn SGS 231Bn 至233Bn
在一實例中,記憶體陣列200可包含數個半導體材料層級(例如,多晶矽等),其等經組態以耦合各記憶體胞元之控制閘極或陣列之一各自層疊之選擇閘極(或控制閘極或選擇閘極之一部分)。可使用位元線與選擇閘極等之一組合存取、選擇或控制陣列中之特定記憶體胞元串,且可使用一或多個存取線(例如,字線)存取、選擇或控制特定串中之一或多個層疊處之特定記憶體胞元。
圖3繪示一NAND架構半導體記憶體陣列300之一部分之一例示性示意圖,其包含配置成串(例如,第一串305至第三串307)及層疊(例如,繪示為各自字線WL0至WL7 310至317、一汲極側選擇閘極(SGD)線325、一源極側選擇閘極(SGS)線330等)之一二維陣列之複數個記憶體胞元302及感測放大器或裝置360。例如,記憶體陣列300可繪示諸如圖2中繪示之一3D NAND架構半導體記憶體裝置之記憶體胞元之一個實體頁之一部分之一例示性示意圖。
各記憶體胞元串使用一各自源極側選擇閘極(SGS) (例如,第一至第三SGS 331至333)耦合至一源極線(SRC) 335且使用一各自汲極側選擇閘極(SGD) (例如,第一至第三SGD 326至328)耦合至一各自資料線(例如,第一至第三位元線BL0至BL2 320至322)。儘管在圖3之實例中繪示為具有8個層疊(例如,使用字線WL0至WL7 310至317)及三個資料線(BL0至BL2 326至328),然其他實例可視需要包含具有更多或更少層疊或資料線之記憶體胞元串。
在一NAND架構半導體記憶體陣列(諸如例示性記憶體陣列300)中,可藉由感測與含有選定記憶體胞元之一特定資料線相關聯之一電流或電壓變動而存取一選定記憶體胞元302之狀態。可使用一或多個驅動器(例如,藉由一控制電路、一或多個處理器、數位邏輯等)存取記憶體陣列300。在一實例中,一或多個驅動器可藉由取決於需要在一特定記憶體胞元或記憶體胞元集合上執行之操作類型將一特定電位驅動至一或多個資料線(例如,位元線BL0至BL2)、存取線(例如,字線WL0至WL7)或選擇閘極而啟動特定記憶體胞元或記憶體胞元集合。
為將資料程式化或寫入至一記憶體胞元,可將一程式化電壓(Vpgm) (例如,一或多個程式化脈衝等)施加至選定字線(例如,WL4)及因此耦合至選定字線之各記憶體胞元之一控制閘極(例如,耦合至WL4之記憶體胞元之第一至第三控制閘極341至343)。程式化脈衝可例如在15 V處或其附近開始且在某些實例中可在程式化脈衝施加期間在量值上增加。在將程式化電壓施加至選定字線時,可將一電位(諸如一接地電位(例如,Vss) )施加至標定用於程式化之記憶體胞元之資料線(例如,位元線)及基板(及因此源極與汲極之間的通道),從而導致從通道至標定記憶體胞元之浮動閘極之一電荷轉移(例如,直接注射或福勒-諾得漢(Fowler-Nordheim,FN)穿隧等)。
相比之下,可將一通過電壓(Vpass)施加至具有未標定用於程式化之記憶體胞元之一或多個字線或可將一抑制電壓(例如,Vcc)施加至具有未標定用於程式化之記憶體胞元之資料線(例如,位元線)以例如抑制電荷從通道轉移至此等非標定記憶體胞元之浮動閘極。通過電壓可例如取決於所施加通過電壓標定用於程式化之一字線之近接性而變化。抑制電壓可包含一供應電壓(Vcc),諸如來自一外部源或供應器(例如,一電池、一AC轉DC轉換器等)之相對於一接地電位(例如,Vss)之一電壓。
作為一實例,若將一程式化電壓(例如,15 V或更大)施加至一特定字線(諸如WL4),則可將10 V之一通過電壓施加至一或多個其他字線(諸如WL3、WL5等)以抑制非標定記憶體胞元之程式化或留存儲存於未標定用於程式化之此等記憶體胞元上之值。隨著一所施加程式化電壓與非標定記憶體胞元之間的距離增加,避免程式化非標定記憶體胞元所需之通過電壓可減小。例如,在將15 V之一程式化電壓施加至WL4之情況下,可將10 V之一通過電壓施加至WL3及WL5,可將8 V之一通過電壓施加至WL2及WL6,可將7 V之一通過電壓施加至WL1及WL7等。在其他實例中,通過電壓或字線數目等可更高或更低或更多或更少。
耦合至資料線(例如,第一、第二或第三位元線(BL0至BL2) 320至322)之一或多者之感測放大器360可藉由感測一特定資料線上之一電壓或電流而偵測各自資料線中之各記憶體胞元之狀態。
在一或多個程式化脈衝(例如,Vpgm)之施加之間,可執行一驗證操作以判定一選定記憶體胞元是否已達到其預期程式化狀態。若選定記憶體胞元已達到其預期程式化狀態,則可抑制其進一步程式化。若選定記憶體胞元尚未達到其預期程式化狀態,則可施加額外程式化脈衝。若選定記憶體胞元在特定數目個(例如,最大數目個)程式化脈衝之後尚未達到其預期程式化狀態,則選定記憶體胞元或與此選定記憶體胞元相關聯之一串、區塊或頁可標記為有缺陷。
為擦除一記憶體胞元或一記憶體胞元群組(例如,通常在區塊或子區塊中執行擦除),可(例如,使用一或多個位元線、選擇閘極等)將一擦除電壓(Vers) (例如,通常Vpgm)施加至標定用於擦除之記憶體胞元之基板(及因此源極與汲極之間的通道),同時將標定記憶體胞元之字線保持在一電位(諸如一接地電位(例如,Vss)),從而導致從標定記憶體胞元之浮動閘極至通道之一電荷轉移(例如,直接注射或福勒-諾得漢(FN)穿隧等)。
圖4繪示一記憶體裝置400之一例示性方塊圖,其包含具有複數個記憶體胞元404之一記憶體陣列402及用以提供與記憶體陣列402之通信或在記憶體陣列402上執行一或多個記憶體操作之一或多個電路或組件。記憶體裝置400可包含一列解碼器412、一行解碼器414、感測放大器420、一頁緩衝器422、一選擇器424、一輸入/輸出(I/O)電路426及一記憶體控制單元430。
記憶體陣列402之記憶體胞元404可經配置於區塊(諸如第一區塊402A及第二區塊402B)中。各區塊可包含子區塊。例如,第一區塊402A可包含第一子區塊402A0 及第二子區塊402An ,且第二區塊402B可包含第一子區塊402B0 及第二子區塊402Bn 。各子區塊可包含數個實體頁,各頁包含數個記憶體胞元404。儘管本文中繪示為具有兩個區塊,各區塊具有兩個子區塊,且各子區塊具有數個記憶體胞元404,然在其他實例中,記憶體陣列402可包含更多或更少區塊、子區塊、記憶體胞元等。在其他實例中,記憶體胞元404可經配置於數個列、行、頁、子區塊、區塊等中且使用例如存取線406、第一資料線410或一或多個選擇閘極、源極線等進行存取。
記憶體控制單元430可根據接收於控制線432上之一或多個信號或指令控制記憶體裝置400之記憶體操作,包含例如指示一所要操作(例如,寫入、讀取、擦除等)之一或多個時脈信號或控制信號或接收於一或多個位址線416上之位址信號(A0至AX)。記憶體裝置400外部之一或多個裝置可控制控制線432上之控制信號或位址線416上之位址信號之值。記憶體裝置400外部之裝置之實例可包含(但不限於)一主機、一記憶體控制器、一處理器或圖4中未繪示之一或多個電路或組件。
記憶體裝置400可使用存取線406及第一資料線410以將資料傳送(例如,寫入或擦除)至記憶體胞元404之一或多者或從記憶體胞元404之一或多者傳送(例如,讀取)資料。列解碼器412及行解碼器414可從位址線416接收且解碼位址信號(A0至AX),可判定待存取記憶體胞元404之哪一者,且可將信號提供至諸如上文描述之存取線406 (例如,複數個字線(WL0至WLm)之一或多者)或第一資料線410 (例如,複數個位元線(BL0至BLn)之一或多者)之一或多者。
記憶體裝置400可包含感測電路系統(諸如感測放大器420),該感測電路系統經組態以使用第一資料線410判定記憶體胞元404上之資料值(例如,讀取)或判定待寫入至記憶體胞元404之資料值。例如,在一選定記憶體胞元404串中,感測放大器420之一或多者可回應於在記憶體陣列402中流動通過選定串至資料線410之一讀取電流而讀取選定記憶體胞元404中之一邏輯位準。
記憶體裝置400外部之一或多個裝置可使用I/O線(DQ0至DQN) 408、位址線416 (A0至AX)或控制線432與記憶體裝置400通信。輸入/輸出(I/O)電路426可根據例如控制線432及位址線416使用I/O線408將資料值傳送入或傳送出記憶體裝置400,諸如傳送入或傳送出頁緩衝器422或記憶體陣列402。頁緩衝器422可在從記憶體裝置400外部之一或多個裝置接收之資料經程式化至記憶體陣列402之相對部分中之前儲存資料,或可在從記憶體陣列402讀取之資料經傳輸至記憶體裝置400外部之一或多個裝置之前儲存資料。
行解碼器414可將位址信號(A0至AX)接收且解碼為一或多個行選擇信號(CSEL1至CSELn)。選擇器424 (例如,一選擇電路)可接收行選擇信號(CSEL1至CSELn)且在頁緩衝器422中選擇表示待從記憶體胞元404讀取或待程式化至記憶體胞元404中之資料值之資料。可使用第二資料線418在頁緩衝器422與I/Q電路426之間傳送選定資料。
記憶體控制單元430可從一外部源或供應器(例如,一內部或外部電池、一AC轉DC轉換器等)接收正及負供應信號(諸如一供應電壓(Vcc) 434及一負供應電壓(Vss) 436 (例如,一接地電位))。在某些實例中,記憶體控制單元430可包含一調節器428以在內部提供正或負供應信號。
圖5繪示包含一記憶體陣列520及記憶體控制器515且示範用於產生一PUF值之技術之一例示性環境500。記憶體陣列520係包括數個區塊501A、501B、501C之一NAND記憶體陣列。各區塊501A、501B、501C包含數個記憶體胞元。記憶體控制器515使用記憶體胞元(在此實例中,來自區塊501A)產生一PUF值524。在一些實例中,區塊501A之全部或大多數記憶體胞元用於產生PUF值524。
圖5亦展示一曲線圖526,其展示用於產生PUF值524之數個記憶體胞元之一臨限值電壓分佈528。在包含指示記憶體胞元臨限值電壓之一水平或x軸及指示胞元數目之一垂直或y軸之一組軸上展示分佈528。分佈528之一下界由VTHL 指示且分佈528之一上界由VTHH 指示。分佈528之範圍由ΔVTS 指示。一初始讀取位準由VRL 指示。如展示,初始讀取位準VRL 大致處於分佈528之一中值臨限值電壓。因此,當在初始讀取位準VRL 下讀取記憶體胞元時,約一半所得原始串將具有1之一邏輯值 (Bit1)且約一半將具有0之一邏輯值(Bit0)。
記憶體控制器515包含一雜湊壓縮器522。雜湊壓縮器522應用一密碼函數(諸如一雜湊函數)以包括原始串且產生PUF值524。例如,原始串可包含針對各讀取記憶體胞元之一個位元。在一些實施方案中,此可導致可包含例如數百個位元、數千個位元、數萬個位元等之一原始串。雜湊壓縮器522可為或包含硬體或軟體之任何適合組合以應用一密碼函數以減少原始串。可使用任何適合密碼函數,諸如例如SHA256/512。在一些實例中,雜湊壓縮器522經配置以產生一預定大小之一PUF值524。例如,PUF值524可包含34個位元組、64個位元組或任何其他適合值。當將PUF值524用作一密鑰時,例如一64位元組PUF值524可適用於橢圓曲線迪菲赫爾曼(Eliptic Curve Diffie Hellman) (ECDH)及/或曲線數位簽章演算法(ECDSA)。而且,一32位元組PUF值524可適用於一些對稱加密演算法。
圖6係展示可由記憶體控制器515執行以產生PUF值524之一程序流程600之一個實例之一流程圖。在操作602,記憶體控制器515讀取區塊501A處之數個記憶體胞元。讀取使用由VRL 指示之一初始讀取位準且產生一初始原始串。在操作604,記憶體控制器判定初始原始串之Bit0與Bit1之間的一差是否大於一臨限值。此由下文方程式[1]繪示:
Figure 02_image001
在方程式[1]中,臨限值由N指示。臨限值N可為例如原始串中之位元總數之一預定百分比。可使用任何適合百分比。在一些實例中,N係在原始串中之位元總數之0%與20%之間。在一些實例中,N係原始串中之位元總數之5%。在一些實例中,N係原始串中之位元總數之10%。若Bit0與Bit1之間的差大於臨限值,則記憶體控制器515可在操作606校正分佈。此可包含例如選擇一新讀取位準及/或擦除且重新程式化記憶體胞元。本文中例如關於圖7至圖10描述描述分佈校正之實例。若在操作606之分佈校正成功,則記憶體控制器515可返回至操作602。
若Bit0與Bit1之間的差不大於臨限值,則記憶體控制器515可在操作608使用雜湊壓縮器522壓縮初始原始串以產生PUF值524。在操作610,記憶體控制器522傳回PUF值524。PUF值524可用作例如一密鑰、一隨機數及/或用於任何其他適合目的。
在選用操作612,記憶體控制器515將PUF值524傳達至一外部裝置。例如,當將PUF值524用作一對稱密鑰時,可期望將PUF值524提供至將使用PUF值524之另一裝置以與包含記憶體控制器515及陣列520之記憶體裝置通信。任何適合技術可用於傳達PUF值524,包含例如一密鑰交換演算法,諸如Diffie-Hellman。
在一些實例中,若Bit0與Bit1之間的差大於臨限值,則記憶體控制器515可嘗試找到下一讀取位準,使得Bit0與Bit1之間的差不大於臨限值。圖7繪示圖5之環境500之一實例,其中分佈528已衰減。在圖7之實例中,初始讀取位準VRLI 偏移至下一讀取位準VRLN 。在下一讀取位準下,Bit0與Bit1之間的差可不大於臨限值。
記憶體控制器515可以任何適合方式(例如,包含使用一二進制搜尋方法)產生下一讀取位準VRLN 。圖8係展示可由記憶體控制器515執行以產生下一讀取位準VRLN 之一程序流程800之一個實例之一流程圖。在操作802,記憶體控制器515判定分佈528之一下界。此可以任何適合方式判定。例如,記憶體控制器515可從初始讀取位準反覆地降低讀取位準直至全部(或多於臨限值數目個)記憶體胞元不傳導電流。
在操作804,記憶體控制器515判定分佈528之下界是否小於0。若是,則記憶體控制器515在操作806重新程式化記憶體胞元。本文中關於圖9及圖10描述重新程式化記憶體胞元之例示性方式。
若分佈之下界不小於0,則記憶體控制器515在操作808選擇一候選讀取位準。在操作808選擇之候選讀取位準可小於先前讀取位準。例如,由於記憶體胞元之臨限值電壓可傾向於隨時間減小,所以候選讀取位準可類似地降低。在操作810,記憶體控制器515在候選讀取位準下讀取記憶體胞元以產生一候選原始串。記憶體控制器515判定候選原始串中之Bit0與Bit1之間的差是否不大於一臨限值。若是,則將候選讀取位準用作下一讀取位準以產生PUF值。例如,記憶體裝置515可使用候選原始串產生一PUF值524及/或使用下一讀取位準產生一或多個額外原始串且使用該等原始串產生一PUV值524。
若候選原始串具有大於臨限值之Bit0與Bit1之間的一差,則記憶體控制器515在操作814判定Bit0與Bit1之間的差是否比最近讀取位準(例如,初始讀取位準及/或一先前候選讀取位準)之結果更接近於臨限值。若是,則記憶體控制器515在操作808選擇低於先前候選讀取位準之一新候選讀取位準。若否,則記憶體控制器515在操作816選擇大於先前候選讀取位準之下一候選讀取位準。
在其中分佈528之下界小於0之實例中及/或若記憶體控制器515以其他方式無法找到滿足上文方程式[1]之下一讀取位準,則可重新程式化記憶體胞元。圖9繪示圖5之環境500之一實例,其中重新程式化記憶體胞元。在圖5中,分佈528A具有小於0之一下界。記憶體控制器515可擦除記憶體胞元。
圖10係展示可由記憶體控制器515執行以重新程式化記憶體胞元以產生一PUF值之一程序流程1000之一個實例之一流程圖。在操作1002,記憶體控制器515擦除記憶體胞元。在操作1004,記憶體控制器515將一個或預定數目個程式化脈衝提供至記憶體胞元。在操作1006,記憶體控制器515判定記憶體胞元之當前分佈是否具有大於一臨限值之一下界。若否,則記憶體控制器515可在操作1004施加額外一或多個程式化脈衝。例如,若在操作1004之後,分佈看似具有低於臨限值下界VTHL 之一下界之分佈528B,則記憶體控制器515可返回至操作1004。另一方面,若分佈看似具有大於臨限值下界VTHL 之一下界之分佈528C,則記憶體控制可在操作1008選擇一新讀取位準。例如可如關於圖8描述般判定新讀取位準。
圖11繪示可在其上執行本文中論述之技術(例如,方法)之任何一或多者之一例示性機器1100之一方塊圖。在替代實施例中,機器1100可作為一獨立裝置操作或可連接(例如,網路連結)至其他機器。在一網路連結部署中,機器1100可以一伺服器機器、一用戶端機器或伺服器-用戶端網路環境中之兩者之身份操作。在一實例中,機器1100可充當同級間(P2P) (或其他分佈式)網路環境中之一同級機器。機器1100可為一個人電腦(PC)、一平板PC、一機上盒(STB)、一個人數位助理(PDA)、一行動電話、一網路設備、一IoT裝置、汽車系統或能夠執行指定由該機器採取之行動之指令(循序或以其他方式)之任何機器。此外,雖然僅繪示一單一機器,但術語「機器」亦應被視為包含個別或聯合地執行一組(或多組)指令以執行本文中論述之方法(諸如雲端運算、軟體即服務(SaaS)、其他電腦叢集組態)之任何一或多者之任何機器集合。
如本文中描述,實例可包含邏輯、組件、裝置、封裝或機構或可由其等操作。電路系統係在包含硬體(例如,簡單電路、閘、邏輯等)之有形實體中實施之一電路集合(例如,一組電路)。電路系統成員可隨時間靈活變化且具有基礎硬體可變性。電路系統包含可在操作時單獨或組合地執行特定任務之部件。在一實例中,電路系統之硬體可經不變地設計以實行一特定操作(例如,硬接線)。在一實例中,電路系統之硬體可包含可變地連接之實體組件(例如,執行單元、電晶體、簡單電路等),其等包含經實體地修改(例如,磁性地、電氣地、可移動放置不變質量顆粒等)以編碼特定操作之指令之一電腦可讀媒體。在連接實體組件時,一硬體成分之基礎電性質例如從一絕緣體改變為一導體或反之亦然。指令使參與硬體(例如,執行單元或一載入機構)能夠經由可變連接在硬體中產生電路系統之部件以在操作時實行特定任務之部分。因此,在裝置正操作時,電腦可讀媒體通信地耦合至電路系統之其他組件。在一實例中,可在一個以上電路系統之一個以上部件中使用實體組件之任一者。例如,在操作下,執行單元可在一個時間點用於一第一電路系統之一第一電路中且在一不同時間由第一電路系統中之一第二電路或一第二電路系統中之一第三電路再使用。
機器(例如,電腦系統) 1100 (例如,主機裝置105、記憶體裝置110等)可包含一硬體處理器1102 (例如,一中央處理單元(CPU)、一圖形處理單元(GPU)、一硬體處理器核心或其等之任何組合,諸如記憶體控制器115等)、一主記憶體1104及一靜態記憶體1106,其等之一些或全部可經由一互連(例如,匯流排) 1108彼此通信。機器1100可進一步包含一顯示單元1110、一字母數字輸入裝置1112 (例如,一鍵盤)及一使用者介面(UI)導覽裝置1114 (例如,一滑鼠)。在一實例中,顯示單元1110、輸入裝置1112及UI導覽裝置1114可為一觸控螢幕顯示器。機器1100可另外包含一儲存裝置(例如,驅動單元) 1116、一信號產生裝置1118 (例如,一揚聲器)、一網路介面裝置1120及一或多個感測器1117 (諸如一全球定位系統(GPS)感測器、指南針、加速度計或其他感測器)。機器1100可包含一輸出控制器1128,諸如一串列(例如,通用串列匯流排(USB))、並列或其他有線或無線(例如,紅外線(IR)、近場通信(NFC)等)連接以通信或控制一或多個周邊裝置(例如,一印表機、讀卡器等)。
儲存裝置1116可包含一非暫時性機器可讀媒體1122,其上儲存體現本文中描述之技術或功能之任何一或多者或由其等利用之一或多組資料結構或指令1124 (例如,軟體)。指令1124亦可在其由機器1100執行之期間完全或至少部分駐留於主記憶體1104內、靜態記憶體1106內或硬體處理器1102內。在一實例中,硬體處理器1102、主記憶體1104、靜態記憶體1106或儲存裝置1116之一者或任何組合可構成機器可讀媒體1122。
雖然機器可讀儲存媒體1122經繪示為一單一媒體,但術語「機器可讀儲存媒體」可包含經組態以儲存一或多個指令1124之一單一媒體或多個媒體(例如,一集中或分散式資料庫或相關聯快取區及伺服器)。
術語「機器可讀媒體」可包含能夠儲存、編碼或攜載由機器1100執行且導致機器1100執行本發明之技術之任何一或多者之指令或能夠儲存、編碼或攜載由此等指令使用或與此等指令相關聯之資料結構之任何媒體。非限制性機器可讀媒體實例可包含固態記憶體及光學及磁性媒體。在一實例中,一集結型(massed)機器可讀媒體包括具有擁有不變(例如,靜止)質量之複數個顆粒之一機器可讀媒體。因此,集結型機器可讀媒體並非暫時性傳播信號。集結型機器可讀媒體之特定實例可包含:非揮發性記憶體,諸如半導體記憶體裝置(例如,電可程式化唯讀記憶體(EPROM)、電可擦除可程式化唯讀記憶體(EEPROM))及快閃記憶體裝置;磁碟,諸如內置硬碟及可抽換式磁碟;磁光碟;及CD-ROM及DVD-ROM光碟。
指令1124 (例如,軟體、程式、一作業系統(OS)等)或其他資料儲存於儲存裝置1121上,可由記憶體1104存取以供處理器1102使用。記憶體1104 (例如,DRAM)通常係快速但揮發性的且因此係與儲存裝置1121 (例如,一SSD)不同類型之一儲存器,該儲存裝置1121適合於長期儲存(包含在一「關閉」狀態中時)。由一使用者或機器1100使用之指令1124或資料通常載入記憶體1104中以供處理器1102使用。當記憶體1104充滿時,可分配來自儲存裝置1121之虛擬空間以補充記憶體1104;然而,由於儲存器1121通常慢於記憶體1104且寫入速度通常比讀取速度至少慢兩倍,所以虛擬記憶體之使用可歸因於儲存裝置延時而(與記憶體1104 (例如,DRAM)相比)大幅減低使用者體驗。此外,將儲存裝置1121用於虛擬記憶體可大幅減少儲存裝置1121之可使用壽命。
與虛擬記憶體相比,虛擬記憶體壓縮(例如,Linux® 核心特徵「ZRAM」)使用記憶體之部分作為壓縮區塊儲存器以避免至儲存裝置1121之傳呼。傳呼發生在壓縮區塊中直至有必要將此資料寫入至儲存裝置1121。虛擬記憶體壓縮增加記憶體1104之可用大小,同時減少儲存裝置1121上之損耗。
針對行動電子裝置最佳化之儲存裝置或行動儲存器傳統地包含MMC固態儲存裝置(例如,微型安全數位(microSDTM )卡等)。MMC裝置包含與一主機裝置之數個平行介面(例如,一8位元平行介面),且通常可為從主機裝置移除及與主機裝置分離之組件。相比之下,eMMCTM 裝置經附接至一電路板且被視為主機裝置之一組件,其具有與基於串列ATATM (串列AT (先進技術)附件或SATA)之SSD裝置相媲美之讀取速度。然而,對於行動裝置效能之需求持續增加,諸如完全實現虛擬或擴增實境裝置、利用增加網路速度等。回應於此需求,儲存裝置已從平行通信介面轉換為串列通信介面。通用快閃儲存(UFS)裝置(包含控制器及韌體)使用具有專用讀取/寫入路徑之一低電壓差分發信(LVDS)串列介面與一主機裝置通信,從而進一步推進更大讀取/寫入速度。
可進一步利用數個傳送協定(例如,訊框延遲、網際網路協定(IP)、傳輸控制協定(TCP)、使用者資料封包協定(UDP)、超文字傳送協定(HTTP)等)之任一者經由網路介面裝置1120使用一傳輸媒體透過一通信網路1126傳輸或接收指令1124。例示性通信網路可包含一區域網路(LAN)、一廣域網路(WAN)、一封包資料網路(例如,網際網路)、行動電話網路(例如,蜂巢式網路)、簡易老式電話(POTS)網路及無線資料網路(例如,稱為Wi-Fi® 之電機電子工程師學會(IEEE) 802.11標準系列、稱為WiMax® 之IEEE 802.16標準系列)、IEEE 802.15.4標準系列、同級間(P2P)網路等。在一實例中,網路介面裝置1120可包含一或多個實體插孔(例如,乙太網路、同軸或電話插孔)或一或多個天線以連接至通信網路1126。在一實例中,網路介面裝置1120可包含複數個天線以使用單輸入多輸出(SIMO)、多輸入多輸出(MIMO)或多輸入單輸出(MISO)技術之至少一者進行無線通信。術語「傳輸媒體」應被視為包含能夠儲存、編碼或攜載由機器1100執行之指令之任何無形媒體,且包含數位或類比通信信號或其他無形媒體以促進此軟體之通信。
上文之實施方式包含對隨附圖式(其等形成實施方式之一部分)之參考。圖式藉由圖解展示其中可實踐本發明之特定實施例。此等實施例在本文中亦稱為「實例」。此等實例可包含除展示或描述之元件以外之元件。然而,本發明者亦預期其中僅提供所展示或描述之該等元件之實例。再者,本發明者亦預期相對於一特定實例(或其之一或多個樣態)或相對於在本文中展示或描述之其他實例(或其等之一或多個樣態)使用所展示或描述之該等元件(或其等之一或多個樣態)之任何組合或排列之實例。
在此文件中,使用術語「一(a或an)」(如在專利文件中常見)以包含一個或一個以上,其獨立於「至少一個」或「一或多個」之任何其他例項或用法。在此文件中,除非另有指示,否則術語「或」用於指代一非窮舉性或使得「A或B」可包含「A但非B」、「B但非A」及「A及B」。在隨附發明申請專利範圍中,術語「包含」及「其中」係用作各自術語「包括」及「其中」之通俗英文等效術語。而且,在下列發明申請專利範圍中,術語「包含」及「包括」係開放式的,即,包含除在此一術語之後列出之元件以外之元件之一系統、裝置、物品或程序仍視為落入該發明申請專利範圍之範疇內。再者,在下列發明申請專利範圍中,術語「第一」、「第二」及「第三」等僅用作標記,且不旨在對其等之物件強加數值要求。
在各種實施例中,本文中描述之組件、控制器、處理器、單元、引擎或表可尤其包含儲存於一實體裝置上之實體電路系統或韌體。如本文中使用,「處理器」意謂任何類型之運算電路,諸如(但不限於)一微處理器、一微控制器、一圖形處理器、一數位信號處理器(DSP)或任何其他類型之處理器或處理電路(包含處理器或多核心裝置之一群組)。
無論一基板在任何時間點之實際定向如何,如此文件中使用之術語「水平」被定義為平行於該基板之習知平面或表面(諸如位於一晶圓或晶粒下方)之一平面。術語「垂直」指代垂直於如上文定義之水平之一方向。無論基板之定向如何,介詞(諸如「在……上」、「在……上方」及「在……下方」)關於習知平面或表面在基板之頂部或曝露表面上而定義;且同時「在……上」旨在暗示一個結構相對於該一個結構位於其「上」之另一結構之一直接接觸(無相反之表達指示);術語「在……上方」及「在……下方」明確旨在識別結構(或層、特徵等)之一相對放置,其明確包含(但不限於)經識別結構之間的直接接觸,除非特別如此識別。類似地,術語「在……上方」及「在……下方」不限於水平定向,此係因為若一結構在某時間點係所論述構造之一最外部分,則該結構可「在」一參考結構「上方」,即使此結構相對於參考結構垂直延伸而非在一水平定向上延伸。
術語「晶圓」及「基板」在本文中大體上用於指代其上形成積體電路之任何結構且亦指代在積體電路製造之各種階段期間之此等結構。因此,並未以一限制意義獲得下列實施方式,且僅藉由隨附發明申請專利範圍連同此等發明申請專利範圍所授權之等效物之全部範疇定義各種實施例之範疇。
根據本發明且在本文中描述之各種實施例包含利用一垂直記憶體胞元結構之記憶體(例如,記憶體胞元之NAND串)。如本文中使用,方向形容詞將被視為相對於其上形成記憶體胞元之一基板之一表面(即,一垂直結構將被視為遠離於基板表面延伸,垂直結構之一底端將被視為最靠近基板表面之端部且垂直結構之一頂端將被視為最遠離於基板表面之端部)。
如本文中使用,除非另有指示,否則方向形容詞(諸如水平、垂直、法向、平行、垂直等)可指代相對定向且不旨在要求嚴格遵守特定幾何性質。例如,如本文中使用,一垂直結構不必嚴格垂直於一基板之一表面,而可代替地大體上垂直於基板之表面,且可與基板之表面形成一銳角(例如,介於60度與120度之間等)。
在本文中描述之一些實施例中,可將不同摻雜組態應用於一源極側選擇閘極(SGS)、一控制閘極及一汲極側選擇閘極(SGD),在此實例中,其等之各者可由多晶矽形成或至少包含多晶矽,結果係使得此等層(例如,多晶矽等)在曝露至一蝕刻溶液時可具有不同蝕刻速率。例如,在一3D半導體裝置中形成一單塊柱之一程序中,SGS及控制閘極可形成凹槽,而SGD可保持較少凹陷或甚至不凹陷。此等摻雜組態可因此實現藉由使用一蝕刻溶液(例如,四甲基氫氧化銨(TMCH))而選擇性地蝕刻至3D半導體裝置中之相異層(例如,SGS、控制閘極及SGD)中。
如本文中使用,操作一記憶體胞元包含從記憶體胞元讀取、寫入至或擦除記憶體胞元。將一記憶體胞元置於一預期狀態中之操作在本文中稱為「程式化」,且可包含寫入至記憶體胞元或從記憶體胞元擦除兩者(例如,記憶體胞元可經程式化至一擦除狀態)。
根據本發明之一或多項實施例,定位於一記憶體裝置內部或外部之一記憶體控制器(例如,一處理器、控制器、韌體等)能夠判定(例如,選擇、設定、調整、運算、改變、清除、傳達、調適、導出、定義、利用、修改、應用等)損耗循環之一數量或一損耗狀態(例如,記錄損耗循環、在記憶體裝置操作發生時計數該等操作、追蹤其起始之記憶體裝置操作、評估對應於一損耗狀態之記憶體裝置特性等)。
根據本發明之一或多項實施例,一記憶體存取裝置可經組態以在各記憶體操作下將損耗循環資訊提供至記憶體裝置。記憶體裝置控制電路系統(例如,控制邏輯)可經程式化以補償對應於損耗循環資訊之記憶體裝置效能改變。記憶體裝置可接收損耗循環資訊且回應於損耗循環資訊而判定一或多個操作參數(例如,一值、特性)。
將理解,當一元件被稱為「在」另一元件「上」、「連接至」另一元件或「與」另一元件「耦合」時,其可直接在另一元件上、連接至另一元件或與另一元件耦合或可存在中介元件。相比之下,當一元件被稱為「直接在」另一元件「上」,「直接連接至」另一元件或「直接與」另一元件「耦合」時,不存在中介元件或層。除非另有指示,否則若兩個元件在圖式中展示為用一線連接其等,則兩個元件可經耦合或直接耦合。
本文中描述之方法實例可至少部分使用機器或電腦實施。一些實例可包含用指令編碼之一電腦可讀媒體或機器可讀媒體,該等指令可操作以組態一電子裝置以執行如在上文實例中描述之方法。此等方法之一實施方案可包含程式碼,諸如微碼、組合語言碼、一更高階語言碼或類似物。此程式碼可包含用於執行各種方法之電腦可讀指令。程式碼可形成電腦程式產品之部分。此外,程式碼可諸如在執行期間或在其他時間有形地儲存於一或多個揮發性或非揮發性有形電腦可讀媒體上。此等有形電腦可讀媒體之實例可包含(但不限於)硬碟、可抽換式磁碟、可抽換式光碟(例如,光碟及數位光碟)、卡式磁帶、記憶卡或棒、隨機存取記憶體(RAM)、唯讀記憶體(ROM)、固態磁碟(SSD)、通用快閃儲存(UFS)裝置、嵌入式MMC (eMMC)裝置及類似物。實例1係一種用於使用一NAND快閃陣列產生一資料值之方法,該方法包括:使用一初始讀取位準讀取該NAND快閃陣列處之數個記憶體胞元以產生一第一原始串;判定來自該第一原始串之具有邏輯0之一值之位元之一數目與來自該第一原始串之具有邏輯1之一值之位元之一數目之間的一差大於一臨限值;使用一第二讀取位準讀取該NAND快閃陣列處之該數個記憶體胞元以產生一第二原始串;判定來自該第二原始串之具有邏輯0之一值之位元之一數目與來自該第二原始串之具有邏輯1之一值之位元之一數目之間的一差不大於一臨限值;及使用該第二原始串應用一密碼函數以產生一第一資料值。
在實例2中,如實例1之標的物視情況包含其中使用該初始讀取位準讀取該NAND快閃陣列處之該數個記憶體胞元係回應於該NAND快閃陣列之一通電。
在實例3中,如實例1至2中任何一或多者之標的物視情況包含:選擇低於該初始讀取位準之一候選第二讀取位準;使用該候選第二讀取位準讀取該NAND快閃陣列處之該數個記憶體胞元以產生一候選原始串;判定來自該候選原始串之具有邏輯0之一值之位元之一數目與來自該候選原始串之具有邏輯1之一值之位元之一數目之間的一差大於該臨限值;判定來自該候選原始串之具有邏輯0之一值之位元之該數目與來自該候選原始串之具有邏輯1之一值之位元之數目之間的差比來自該第一原始串之具有邏輯0之一值之位元之數目與來自該第一原始串之具有邏輯1之一值之位元之一數目之間的差更接近於臨限值;及選擇低於該候選第二讀取位準之一隨後候選第二讀取位準。
在實例4中,如實例1至3中任何一或多者之標的物視情況包含:使用該第二讀取位準重讀該NAND快閃陣列處之該數個記憶體胞元以產生一第三原始串;判定來自該第三原始串之具有邏輯0之一值之位元之一數目與來自該第二原始串之具有邏輯1之一值之位元之一數目之間的一差大於該臨限值;及判定對下一讀取位準之一搜尋已失敗。
在實例5中,如實例4之標的物視情況包含其中判定對該下一讀取位準之該搜尋已失敗包括判定該NAND快閃陣列處之該數個記憶體胞元之至少一部分具有小於0之一胞元讀取位準。
在實例6中,如實例4至5中任何一或多者之標的物視情況包含:擦除該NAND快閃陣列之包括該數個記憶體胞元之一區塊;將一第一程式化脈衝施加至該數個記憶體胞元;判定該NAND快閃陣列之該數個記憶體胞元之至少一部分具有小於一低讀取位準值之一胞元讀取位準;及將一第二程式化脈衝施加至該NAND快閃陣列之該數個記憶體胞元。
在實例7中,如實例6之標的物視情況包含:在將該第二程式化脈衝施加至該NAND快閃陣列之該數個記憶體胞元之後,使用一第三讀取位準讀取該NAND快閃陣列處之該數個記憶體胞元以產生一第三原始串;判定來自該第三原始串之具有邏輯0之一值之位元之一數目與來自該第一原始串之具有邏輯1之一值之位元之一數目之間的一差不大於一臨限值;及使用該第三原始串應用一密碼函數以產生一第二資料值。
在實例8中,如實例7之標的物視情況包含使用該NAND快閃陣列之該數個記憶體胞元之一胞元讀取位準分佈選擇該第三讀取位準。
實例9係一種用於產生資料值之系統,其包括:一NAND快閃陣列;及一記憶體控制器,其經組態以執行包括以下各者之操作:使用一初始讀取位準讀取該NAND快閃陣列處之數個記憶體胞元以產生一第一原始串;判定來自該第一原始串之具有邏輯0之一值之位元之一數目與來自該第一原始串之具有邏輯1之一值之位元之一數目之間的一差大於一臨限值;使用一第二讀取位準讀取該NAND快閃陣列處之該數個記憶體胞元以產生一第二原始串;判定來自該第二原始串之具有邏輯0之一值之位元之一數目與來自該第二原始串之具有邏輯1之一值之位元之一數目之間的一差不大於一臨限值;及使用該第二原始串應用一密碼函數以產生一第一資料值。
在實例10中,如實例9之標的物視情況包含其中使用該初始讀取位準讀取該NAND快閃陣列處之該數個記憶體胞元係回應於該NAND快閃陣列之一通電。
在實例11中,如實例9至10中任何一或多者之標的物視情況包含進一步包括以下各者之操作:選擇低於該初始讀取位準之一候選第二讀取位準;使用該候選第二讀取位準讀取該NAND快閃陣列處之該數個記憶體胞元以產生一候選原始串;判定來自該候選原始串之具有邏輯0之一值之位元之數目與來自該候選原始串之具有邏輯1之一值之位元之一數目之間的差大於該臨限值;判定來自該候選原始串之具有邏輯0之一值之位元之數目與來自該候選原始串之具有邏輯1之一值之位元之數目之間的差比來自該第一原始串之具有邏輯0之一值之位元之數目與來自該第一原始串之具有邏輯1之一值之位元之一數目之間的差更接近於臨限值;及選擇低於該候選第二讀取位準之一隨後候選第二讀取位準。
在實例12中,如實例9至11中任何一或多者之標的物視情況包含進一步包括以下各者之操作:使用該第二讀取位準重讀該NAND快閃陣列處之該數個記憶體胞元以產生一第三原始串;判定來自該第三原始串之具有邏輯0之一值之位元之一數目與來自該第二原始串之具有邏輯1之一值之位元之一數目之間的一差大於該臨限值;及判定對下一讀取位準之一搜尋已失敗。
在實例13中,如實例12之標的物視情況包含其中判定對該下一讀取位準之該搜尋已失敗包括判定該NAND快閃陣列處之該數個記憶體胞元之至少一部分具有小於0之一胞元讀取位準。
在實例14中,如實例12至13中任何一或多者之標的物視情況包含進一步包括以下各者之操作:擦除該NAND快閃陣列之包括該數個記憶體胞元之一區塊;將一第一程式化脈衝施加至該數個記憶體胞元;判定該NAND快閃陣列之該數個記憶體胞元之至少一部分具有小於一低讀取位準值之一胞元讀取位準;及將一第二程式化脈衝施加至該NAND快閃陣列之該數個記憶體胞元。
在實例15中,如實例14之標的物視情況包含進一步包括以下各者之操作:在將該第二程式化脈衝施加至該NAND快閃陣列之該數個記憶體胞元之後,使用一第三讀取位準讀取該NAND快閃陣列處之該數個記憶體胞元以產生一第三原始串;判定來自該第三原始串之具有邏輯0之一值之位元之一數目與來自該第一原始串之具有邏輯1之一值之位元之一數目之間的一差不大於一臨限值;及使用該第三原始串應用一密碼函數以產生一第二資料值。
在實例16中,如實例15之標的物視情況包含進一步包括使用該NAND快閃陣列之該數個記憶體胞元之一胞元讀取位準分佈選擇該第三讀取位準之操作。
實例17係一種其上具有指令之非暫時性電腦可讀媒體,當該等指令由至少一個處理器執行時導致該處理器執行包括以下各者之操作:使用一初始讀取位準讀取一NAND快閃陣列處之數個記憶體胞元以產生一第一原始串;判定來自該第一原始串之具有邏輯0之一值之位元之一數目與來自該第一原始串之具有邏輯1之一值之位元之一數目之間的一差大於一臨限值;使用一第二讀取位準讀取該NAND快閃陣列處之該數個記憶體胞元以產生一第二原始串;判定來自該第二原始串之具有邏輯0之一值之位元之一數目與來自該第二原始串之具有邏輯1之一值之位元之一數目之間的一差不大於一臨限值;及使用該第二原始串應用一密碼函數以產生一第一資料值。
在實例18中,如實例17之標的物視情況包含其中使用該初始讀取位準讀取該NAND快閃陣列處之該數個記憶體胞元係回應於該NAND快閃陣列之一通電。
在實例19中,如實例17至18中任何一或多者之標的物視情況包含進一步包括以下各者之操作:選擇低於該初始讀取位準之一候選第二讀取位準;使用該候選第二讀取位準讀取該NAND快閃陣列處之該數個記憶體胞元以產生一候選原始串;判定來自該候選原始串之具有邏輯0之一值之位元之一數目與來自該候選原始串之具有邏輯1之一值之位元之一數目之間的一差大於該臨限值;判定來自該候選原始串之具有邏輯0之一值之位元之數目與來自該候選原始串之具有邏輯1之一值之位元之數目之間的差比來自該第一原始串之具有邏輯0之一值之位元之數目與來自該第一原始串之具有邏輯1之一值之位元之一數目之間的差更接近於該臨限值;及選擇低於該候選第二讀取位準之一隨後候選第二讀取位準。
在實例20中,如實例17至19中任何一或多者之標的物視情況包含進一步包括以下各者之操作:使用該第二讀取位準重讀該NAND快閃陣列處之該數個記憶體胞元以產生一第三原始串;判定來自該第三原始串之具有邏輯0之一值之位元之一數目與來自該第二原始串之具有邏輯1之一值之位元之一數目之間的一差大於該臨限值;及判定對下一讀取位準之一搜尋已失敗。
上文描述旨在為闡釋性且非限制性。例如,上文描述之實例(或其等之一或多個樣態)可與彼此組合使用。諸如一般技術者在審閱上文描述後可使用其他實施例。其係在其不會用於解釋或限制發明申請專利範圍之範疇或含義之理解下提交。而且,在上文實施方式中,可將各種特徵分組在一起以簡化本發明。此不應被解釋為意在一未主張所揭示特徵對任何請求項而言係必不可少的。實情係,發明標的可在於少於一特定揭示之實施例之所有特徵。因此,下列發明申請專利範圍特此併入實施方式中,其中每一請求項獨立地作為一單獨實施例,且預期此等實施例可以各種組合或排列彼此組合。本發明之範疇應參考隨附發明申請專利範圍連同此發明申請專利範圍所授權之等效物之全部範疇判定。
100:環境 105:主機裝置/主機 110:記憶體裝置 115:記憶體控制器 120:記憶體陣列 125:記憶體管理器 130:管理表 135:陣列控制器 140:錯誤校正碼(ECC)組件 150:產品 160:PUF值 162:臨限值電壓分佈 200:3D NAND架構半導體記憶體陣列 201A:區塊A 201B:區塊B 201A0:子區塊A0 201An:子區塊An 201B0:子區塊B0 201Bn:子區塊Bn 205A0至207A0:第一至第三A0記憶體串 205An至207An:第一至第三An記憶體串 205B0至207B0:第一至第三B0記憶體串 205Bn至207Bn:第一至第三Bn記憶體串 220至222:位元線BL0至BL2 210A至217A:字線WL00至WL70 210B至217B:字線WL01至WL71 225A0A0:汲極側選擇閘極(SGD)線SGDA0 225AnAn:汲極側選擇閘極(SGD)線SGDAn 225B0B0:汲極側選擇閘極(SGD)線SGDB0 225BnBn:汲極側選擇閘極(SGD)線SGDBn 226A0至228A0:第一至第三A0汲極側選擇閘極(SGD) 226An至228An:第一至第三An汲極側選擇閘極(SGD) 226B0至228B0:第一至第三B0汲極側選擇閘極(SGD) 226Bn至228Bn:第一至第三Bn汲極側選擇閘極(SGD) 230A:閘極選擇線SGS0 230B:閘極選擇線SGS1 231A0至233A0:第一至第三A0源極側選擇閘極(SGS) 231An至233An:第一至第三An源極側選擇閘極(SGS) 231B0至233B0:第一至第三B0源極側選擇閘極(SGS) 231Bn至233Bn:第一至第三Bn源極側選擇閘極(SGS) 235:源極線(SRC) 300:NAND架構半導體記憶體陣列 302:記憶體胞元 305至307:第一串至第三串 310至317:字線WL0至WL7 320至322:第一至第三位元線BL0至BL2 325:汲極側選擇閘極(SGD)線 326至328:第一至第三汲極側選擇閘極(SGD)/資料線BL0至BL2 330:源極側選擇閘極(SGS)線 331至333:第一至第三源極側選擇閘極(SGS) 341至343:第一至第三控制閘極 360:感測放大器或裝置 400:記憶體裝置 402:記憶體陣列 402A:第一區塊 402B:第二區塊 402A0:第一子區塊 402An:第二子區塊 402B0:第一子區塊 402Bn:第二子區塊 404:記憶體胞元 406:存取線 408:I/O線 410:第一資料線 412:列解碼器 414:行解碼器 416:位址線 418:第二資料線 420:感測放大器 422:頁緩衝器 424:選擇器 426:輸入/輸出(I/O)電路 428:調節器 430:記憶體控制單元 432:控制線 434:供應電壓(Vcc) 436:負供應電壓(Vss) 500:環境 501A:區塊 501B:區塊 501C:區塊 515:記憶體控制器 520:記憶體陣列 522:雜湊壓縮器 524:PUF值 526:曲線圖 528:臨限值電壓分佈 528A:分佈 528B:分佈 528C:分佈 600:程序流程 602:操作 604:操作 606:操作 608:操作 610:操作 612:操作 800:程序流程 802:操作 804:操作 806:操作 808:操作 810:操作 812:操作 814:操作 816:操作 1000:程序流程 1002:操作 1004:操作 1006:操作 1008:操作 1100:機器 1102:硬體處理器 1104:主記憶體 1106:靜態記憶體 1108:互連 1110:顯示單元 1112:字母數字輸入裝置 1114:使用者介面(UI)導覽裝置 1117:感測器 1118:信號產生裝置 1120:網路介面裝置 1121:儲存裝置 1122:機器可讀媒體 1124:指令 1126:通信網路 1128:輸出控制器
在不必按比例繪製之圖式中,相似數字在不同視圖中可描述類似組件。具有不同字母後綴之相似數字可表示類似組件之不同例項。圖式通常藉由實例(但非限制性)繪示本文件中論述之各種實施例。
圖1繪示包含一記憶體裝置之一環境之一實例。
圖2至圖3繪示例示性NAND架構半導體記憶體陣列之示意圖。
圖4繪示一記憶體模組之一例示性方塊圖。
圖5繪示包含一記憶體陣列及記憶體控制器且示範用於產生一PUF值之技術之一例示性環境。
圖6係展示可由記憶體控制器執行以產生PUF值之一程序流程之一個實例之一流程圖。
圖7繪示圖5之環境之一實例,其中記憶體胞元之臨限值電壓之分佈已衰減。
圖8係展示可由記憶體控制器執行以產生下一讀取位準之一程序流程之一個實例之一流程圖。
圖9繪示圖5之環境之一實例,其中重新程式化記憶體胞元。
圖10係展示可由記憶體控制器執行以重新程式化記憶體胞元以產生一PUF值之一程序流程之一個實例之一流程圖。
圖11係繪示可在其上實施一或多項實施例之一機器之一實例之一方塊圖。
500:環境
501A:區塊
501B:區塊
501C:區塊
515:記憶體控制器
520:記憶體陣列
522:雜湊壓縮器
524:PUF值
526:曲線圖
528:臨限值電壓分佈

Claims (20)

  1. 一種用於使用一NAND快閃陣列產生一資料值之方法,該方法包括: 使用一初始讀取位準讀取該NAND快閃陣列處之數個記憶體胞元以產生一第一原始串; 判定來自該第一原始串之具有邏輯0之一值之位元之一數目與來自該第一原始串之具有邏輯1之一值之位元之一數目之間的一差大於一臨限值; 使用一第二讀取位準讀取該NAND快閃陣列處之該數個記憶體胞元以產生一第二原始串; 判定來自該第二原始串之具有邏輯0之一值之位元之一數目與來自該第二原始串之具有邏輯1之一值之位元之一數目之間的一差不大於一臨限值;及 使用該第二原始串應用一密碼函數以產生一第一資料值。
  2. 如請求項1之方法,其中使用該初始讀取位準讀取該NAND快閃陣列處之該數個記憶體胞元係回應於該NAND快閃陣列之一通電。
  3. 如請求項1之方法,其進一步包括: 選擇低於該初始讀取位準之一候選第二讀取位準; 使用該候選第二讀取位準讀取該NAND快閃陣列處之該數個記憶體胞元以產生一候選原始串; 判定來自該候選原始串之具有邏輯0之一值之位元之一數目與來自該候選原始串之具有邏輯1之一值之位元之一數目之間的一差大於該臨限值; 判定來自該候選原始串之具有邏輯0之一值之位元之該數目與來自該候選原始串之具有邏輯1之一值之位元之一數目之間的該差比來自該第一原始串之具有邏輯0之一值之位元之該數目與來自該第一原始串之具有邏輯1之一值之位元之一數目之間的該差更接近於該臨限值;及 選擇低於該候選第二讀取位準之一隨後候選第二讀取位準。
  4. 如請求項1之方法,其進一步包括: 使用該第二讀取位準重讀該NAND快閃陣列處之該數個記憶體胞元以產生一第三原始串; 判定來自該第三原始串之具有邏輯0之一值之位元之一數目與來自該第二原始串之具有邏輯1之一值之位元之一數目之間的一差大於該臨限值;及 判定對下一讀取位準之一搜尋已失敗。
  5. 如請求項4之方法,其中判定對該下一讀取位準之該搜尋已失敗包括判定該NAND快閃陣列處之該數個記憶體胞元之至少一部分具有小於0之一胞元讀取位準。
  6. 如請求項4之方法,其進一步包括: 擦除該NAND快閃陣列之包括該數個記憶體胞元之一區塊; 將一第一程式化脈衝施加至該數個記憶體胞元; 判定該NAND快閃陣列之該數個記憶體胞元之至少一部分具有小於一低讀取位準值之一胞元讀取位準;及 將一第二程式化脈衝施加至該NAND快閃陣列之該數個記憶體胞元。
  7. 如請求項6之方法,其進一步包括: 在將該第二程式化脈衝施加至該NAND快閃陣列之該數個記憶體胞元之後,使用一第三讀取位準讀取該NAND快閃陣列處之該數個記憶體胞元以產生一第三原始串; 判定來自該第三原始串之具有邏輯0之一值之位元之一數目與來自該第一原始串之具有邏輯1之一值之位元之一數目之間的一差不大於一臨限值;及 使用該第三原始串應用一密碼函數以產生一第二資料值。
  8. 如請求項7之方法,其進一步包括使用該NAND快閃陣列之該數個記憶體胞元之一胞元讀取位準分佈選擇該第三讀取位準。
  9. 一種用於產生資料值之系統,其包括: 一NAND快閃陣列;及 一記憶體控制器,其經組態以執行包括以下各者之操作: 使用一初始讀取位準讀取該NAND快閃陣列處之數個記憶體胞元以產生一第一原始串; 判定來自該第一原始串之具有邏輯0之一值之位元之一數目與來自該第一原始串之具有邏輯1之一值之位元之一數目之間的一差大於一臨限值; 使用一第二讀取位準讀取該NAND快閃陣列處之該數個記憶體胞元以產生一第二原始串; 判定來自該第二原始串之具有邏輯0之一值之位元之一數目與來自該第二原始串之具有邏輯1之一值之位元之一數目之間的一差不大於一臨限值;及 使用該第二原始串應用一密碼函數以產生一第一資料值。
  10. 如請求項9之系統,其中使用該初始讀取位準讀取該NAND快閃陣列處之該數個記憶體胞元係回應於該NAND快閃陣列之一通電。
  11. 如請求項9之系統,該等操作進一步包括: 選擇低於該初始讀取位準之一候選第二讀取位準; 使用該候選第二讀取位準讀取該NAND快閃陣列處之該數個記憶體胞元以產生一候選原始串; 判定來自該候選原始串之具有邏輯0之一值之位元之一數目與來自該候選原始串之具有邏輯1之一值之位元之一數目之間的一差大於該臨限值; 判定來自該候選原始串之具有邏輯0之一值之位元之該數目與來自該候選原始串之具有邏輯1之一值之位元之一數目之間的該差比來自該第一原始串之具有邏輯0之一值之位元之該數目與來自該第一原始串之具有邏輯1之一值之位元之一數目之間的該差更接近於該臨限值;及 選擇低於該候選第二讀取位準之一隨後候選第二讀取位準。
  12. 如請求項9之系統,該等操作進一步包括: 使用該第二讀取位準重讀該NAND快閃陣列處之該數個記憶體胞元以產生一第三原始串; 判定來自該第三原始串之具有邏輯0之一值之位元之一數目與來自該第二原始串之具有邏輯1之一值之位元之一數目之間的一差大於該臨限值;及 判定對下一讀取位準之一搜尋已失敗。
  13. 如請求項12之系統,其中判定對該下一讀取位準之該搜尋已失敗包括判定該NAND快閃陣列處之該數個記憶體胞元之至少一部分具有小於0之一胞元讀取位準。
  14. 如請求項12之系統,該等操作進一步包括: 擦除該NAND快閃陣列之包括該數個記憶體胞元之一區塊; 將一第一程式化脈衝施加至該數個記憶體胞元; 判定該NAND快閃陣列之該數個記憶體胞元之至少一部分具有小於一低讀取位準值之一胞元讀取位準;及 將一第二程式化脈衝施加至該NAND快閃陣列之該數個記憶體胞元。
  15. 如請求項14之系統,該等操作進一步包括: 在將該第二程式化脈衝施加至該NAND快閃陣列之該數個記憶體胞元之後,使用一第三讀取位準讀取該NAND快閃陣列處之該數個記憶體胞元以產生一第三原始串; 判定來自該第三原始串之具有邏輯0之一值之位元之一數目與來自該第一原始串之具有邏輯1之一值之位元之一數目之間的一差不大於一臨限值;及 使用該第三原始串應用一密碼函數以產生一第二資料值。
  16. 如請求項15之系統,該等操作進一步包括使用該NAND快閃陣列之該數個記憶體胞元之一胞元讀取位準分佈選擇該第三讀取位準。
  17. 一種其上具有指令之非暫時性電腦可讀媒體,當該等指令由至少一個處理器執行時導致該處理器執行包括以下各者之操作: 使用一初始讀取位準讀取一NAND快閃陣列處之數個記憶體胞元以產生一第一原始串; 判定來自該第一原始串之具有邏輯0之一值之位元之一數目與來自該第一原始串之具有邏輯1之一值之位元之一數目之間的一差大於一臨限值; 使用一第二讀取位準讀取該NAND快閃陣列處之該數個記憶體胞元以產生一第二原始串; 判定來自該第二原始串之具有邏輯0之一值之位元之一數目與來自該第二原始串之具有邏輯1之一值之位元之一數目之間的一差不大於一臨限值;及 使用該第二原始串應用一密碼函數以產生一第一資料值。
  18. 如請求項17之電腦可讀媒體,其中使用該初始讀取位準讀取該NAND快閃陣列處之該數個記憶體胞元係回應於該NAND快閃陣列之一通電。
  19. 如請求項17之電腦可讀媒體,該等操作進一步包括: 選擇低於該初始讀取位準之一候選第二讀取位準; 使用該候選第二讀取位準讀取該NAND快閃陣列處之該數個記憶體胞元以產生一候選原始串; 判定來自該候選原始串之具有邏輯0之一值之位元之一數目與來自該候選原始串之具有邏輯1之一值之位元之一數目之間的一差大於該臨限值; 判定來自該候選原始串之具有邏輯0之一值之位元之該數目與來自該候選原始串之具有邏輯1之一值之位元之一數目之間的該差比來自該第一原始串之具有邏輯0之一值之位元之該數目與來自該第一原始串之具有邏輯1之一值之位元之一數目之間的該差更接近於該臨限值;及 選擇低於該候選第二讀取位準之一隨後候選第二讀取位準。
  20. 如請求項17之電腦可讀媒體,該等操作進一步包括: 使用該第二讀取位準重讀該NAND快閃陣列處之該數個記憶體胞元以產生一第三原始串; 判定來自該第三原始串之具有邏輯0之一值之位元之一數目與來自該第二原始串之具有邏輯1之一值之位元之一數目之間的一差大於該臨限值;及 判定對下一讀取位準之一搜尋已失敗。
TW108147298A 2018-12-28 2019-12-24 使用反及閘記憶體陣列之物理不可複製函數 TWI756603B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US16/236,005 2018-12-28
US16/236,005 US11469909B2 (en) 2018-12-28 2018-12-28 Physical unclonable function with NAND memory array

Publications (2)

Publication Number Publication Date
TW202042241A true TW202042241A (zh) 2020-11-16
TWI756603B TWI756603B (zh) 2022-03-01

Family

ID=71122178

Family Applications (1)

Application Number Title Priority Date Filing Date
TW108147298A TWI756603B (zh) 2018-12-28 2019-12-24 使用反及閘記憶體陣列之物理不可複製函數

Country Status (6)

Country Link
US (2) US11469909B2 (zh)
EP (1) EP3903314A4 (zh)
KR (1) KR20210095956A (zh)
CN (1) CN113366575A (zh)
TW (1) TWI756603B (zh)
WO (1) WO2020139690A1 (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11469909B2 (en) 2018-12-28 2022-10-11 Micron Technology, Inc. Physical unclonable function with NAND memory array
TWI805486B (zh) * 2022-02-14 2023-06-11 旺宏電子股份有限公司 記憶體裝置以及記憶體晶片的記憶體陣列資訊的讀取方法

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11288007B2 (en) * 2019-05-16 2022-03-29 Western Digital Technologies, Inc. Virtual physical erase of a memory of a data storage device
US11240047B2 (en) 2019-12-16 2022-02-01 Analog Devices International Unlimited Company Capacitor based physical unclonable function
KR20210077839A (ko) * 2019-12-17 2021-06-28 삼성전자주식회사 메모리 장치 및 이를 포함하는 메모리 시스템
US11209993B2 (en) * 2020-03-24 2021-12-28 Sandisk Technologies Llc Physical unclonable function (PUF) for NAND operator
US11734459B2 (en) * 2020-08-05 2023-08-22 Analog Devices International Unlimited Company Monitoring a physical unclonable function
US11394566B2 (en) * 2020-08-05 2022-07-19 Analog Devices International Unlimited Company Physical unclonable function configuration and readout
TWI792764B (zh) * 2021-12-13 2023-02-11 華邦電子股份有限公司 記憶體陣列及其操作方法
US12112067B2 (en) * 2022-03-21 2024-10-08 Everspin Technologies, Inc. Persistent xSPI STT-MRAM with optional erase operation

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101618311B1 (ko) * 2010-02-08 2016-05-04 삼성전자주식회사 플래시 메모리 장치 및 그것의 읽기 방법
US9093128B2 (en) 2012-11-05 2015-07-28 Infineon Technologies Ag Electronic device with a plurality of memory cells and with physically unclonable function
KR101489758B1 (ko) 2013-08-26 2015-02-04 한국전자통신연구원 플래시 메모리의 동작 제어 방법 및 장치
US9659636B2 (en) * 2014-07-22 2017-05-23 Peter Wung Lee NAND memory array with BL-hierarchical structure for concurrent all-BL, all-threshold-state program, and alternative-WL program, odd/even read and verify operations
KR101575810B1 (ko) 2014-09-30 2015-12-08 고려대학교 산학협력단 물리적 복제 방지 기능을 갖는 플래시 메모리 장치 및 그 구현 방법
US9576671B2 (en) 2014-11-20 2017-02-21 Western Digital Technologies, Inc. Calibrating optimal read levels
US9653161B2 (en) 2014-11-21 2017-05-16 Panasonic Intellectual Property Management Co., Ltd. Tamper-resistant non-volatile memory device comprising an arithmetic circuit that, in operation, calculates a binary reference value based on at least a part of the pieces of resistance value information, a read circuit that, in operation, selectively assigns, based on the binary reference value, one of two values to each of the pieces of resistance value information, and a write circuit that, in operation, performs a write operation corresponding to one of the two values among memory cells
KR101575807B1 (ko) 2014-11-28 2015-12-08 고려대학교 산학협력단 물리적 복제 방지 기능을 갖는 플래시 메모리 장치 및 그 구현 방법
US9985791B2 (en) 2015-08-13 2018-05-29 Arizona Board Of Regents Acting For And On Behalf Of Northern Arizona University Physically unclonable function generating systems and related methods
US10032521B2 (en) 2016-01-08 2018-07-24 Synopsys, Inc. PUF value generation using an anti-fuse memory array
US9972383B2 (en) 2016-03-08 2018-05-15 Macronix International Co., Ltd. Reading memory cells
US10404478B2 (en) 2016-08-04 2019-09-03 Macronix International Co., Ltd. Physical unclonable function using divided threshold distributions in non-volatile memory
KR20180059217A (ko) 2016-11-25 2018-06-04 주식회사 아이씨티케이 홀딩스 메모리 데이터 보안 처리 장치 및 방법
EP3407335B1 (en) * 2017-05-22 2023-07-26 Macronix International Co., Ltd. Non-volatile memory based physically unclonable function with random number generator
US10121551B1 (en) 2017-08-31 2018-11-06 Micron Technology, Inc. Detecting power loss in NAND memory devices
US11469909B2 (en) 2018-12-28 2022-10-11 Micron Technology, Inc. Physical unclonable function with NAND memory array

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11469909B2 (en) 2018-12-28 2022-10-11 Micron Technology, Inc. Physical unclonable function with NAND memory array
US11722323B2 (en) 2018-12-28 2023-08-08 Micron Technology, Inc. Physical unclonable function with NAND memory array
TWI805486B (zh) * 2022-02-14 2023-06-11 旺宏電子股份有限公司 記憶體裝置以及記憶體晶片的記憶體陣列資訊的讀取方法
US11960769B2 (en) 2022-02-14 2024-04-16 Macronix International Co., Ltd. High performance secure read in secure memory providing a continuous output of encrypted information and specific context

Also Published As

Publication number Publication date
EP3903314A4 (en) 2022-09-14
CN113366575A (zh) 2021-09-07
US11469909B2 (en) 2022-10-11
US20200213138A1 (en) 2020-07-02
TWI756603B (zh) 2022-03-01
WO2020139690A1 (en) 2020-07-02
KR20210095956A (ko) 2021-08-03
US20230039804A1 (en) 2023-02-09
US11722323B2 (en) 2023-08-08
EP3903314A1 (en) 2021-11-03

Similar Documents

Publication Publication Date Title
US11385838B2 (en) Host accelerated operations in managed NAND devices
TWI756603B (zh) 使用反及閘記憶體陣列之物理不可複製函數
US11409651B2 (en) Host accelerated operations in managed NAND devices
US11321468B2 (en) Systems for providing access to protected memory
US11704254B2 (en) Host side caching security for flash memory
CN112654993B (zh) 安全存储器系统编程
US11886339B2 (en) Secure logical-to-physical caching
TWI681395B (zh) 抹除頁面檢查
KR20210125092A (ko) 리플로우-보호
TW201923554A (zh) 用於快閃記憶體之日誌資料儲存
CN111684529B (zh) 读取重试暂存空间
CN112997254A (zh) 用于筛选容易出现缺陷的存储器块的基于度量的反应性读取
CN114093406A (zh) 一种存储器装置、系统、信息处理方法及可读存储介质