Nothing Special   »   [go: up one dir, main page]

CN107689237A - 电子装置及其存储器电路与其操作方法 - Google Patents

电子装置及其存储器电路与其操作方法 Download PDF

Info

Publication number
CN107689237A
CN107689237A CN201710655360.9A CN201710655360A CN107689237A CN 107689237 A CN107689237 A CN 107689237A CN 201710655360 A CN201710655360 A CN 201710655360A CN 107689237 A CN107689237 A CN 107689237A
Authority
CN
China
Prior art keywords
memory
memory cell
block
subset
storage
Prior art date
Legal status (The legal status 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 status listed.)
Granted
Application number
CN201710655360.9A
Other languages
English (en)
Other versions
CN107689237B (zh
Inventor
洪俊雄
张坤龙
陈耕晖
黄世昌
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Macronix International Co Ltd
Original Assignee
Macronix International Co Ltd
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 Macronix International Co Ltd filed Critical Macronix International Co Ltd
Publication of CN107689237A publication Critical patent/CN107689237A/zh
Application granted granted Critical
Publication of CN107689237B publication Critical patent/CN107689237B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • 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
    • 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/0408Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS comprising cells containing floating gate transistors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1008Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
    • G06F11/1068Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices in sector programmable memories, e.g. flash disk
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/023Free address space management
    • G06F12/0238Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
    • G06F12/0246Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/14Protection against unauthorised use of memory or access to memory
    • G06F12/1408Protection against unauthorised use of memory or access to memory by using cryptography
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/14Protection against unauthorised use of memory or access to memory
    • G06F12/1416Protection against unauthorised use of memory or access to memory by checking the object accessibility, e.g. type of access defined by the memory independently of subject rights
    • G06F12/1425Protection against unauthorised use of memory or access to memory by checking the object accessibility, e.g. type of access defined by the memory independently of subject rights the protection being physical, e.g. cell, word, block
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/604Tools and structures for managing or administering access control systems
    • 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/73Protecting 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 by creating or determining hardware identification, e.g. serial numbers
    • 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/75Protecting 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 by inhibiting the analysis of circuitry or operation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/062Securing storage systems
    • G06F3/0622Securing storage systems in relation to access
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0659Command handling arrangements, e.g. command buffers, queues, command scheduling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0683Plurality of storage devices
    • G06F3/0688Non-volatile semiconductor memory arrays
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/58Random or pseudo-random number generators
    • G06F7/588Random number generators, i.e. based on natural stochastic processes
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09CCIPHERING OR DECIPHERING APPARATUS FOR CRYPTOGRAPHIC OR OTHER PURPOSES INVOLVING THE NEED FOR SECRECY
    • G09C1/00Apparatus or methods whereby a given sequence of signs, e.g. an intelligible text, is transformed into an unintelligible sequence of signs by transposing the signs or groups of signs or by replacing them by others according to a predetermined system
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/02Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using magnetic elements
    • G11C11/16Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using magnetic elements using elements in which the storage effect is based on magnetic spin effect
    • G11C11/165Auxiliary circuits
    • G11C11/1673Reading or sensing circuits or methods
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/02Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using magnetic elements
    • G11C11/16Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using magnetic elements using elements in which the storage effect is based on magnetic spin effect
    • G11C11/165Auxiliary circuits
    • G11C11/1675Writing or programming circuits or methods
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/02Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using magnetic elements
    • G11C11/16Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using magnetic elements using elements in which the storage effect is based on magnetic spin effect
    • G11C11/165Auxiliary circuits
    • G11C11/1695Protection circuits or methods
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C13/00Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
    • G11C13/0002Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements
    • G11C13/0021Auxiliary circuits
    • G11C13/004Reading or sensing circuits or methods
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C13/00Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
    • G11C13/0002Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements
    • G11C13/0021Auxiliary circuits
    • G11C13/0059Security or protection circuits or methods
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C13/00Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
    • G11C13/0002Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements
    • G11C13/0021Auxiliary circuits
    • G11C13/0069Writing or programming circuits or methods
    • 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/08Address circuits; Decoders; Word-line control 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
    • 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
    • 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
    • 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/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
    • 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/24Accessing extra cells, e.g. dummy cells or redundant 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
    • 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
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • G11C7/1006Data managing, e.g. manipulating data before writing or reading out, data bus switches or control circuits therefor
    • 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
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C8/00Arrangements for selecting an address in a digital store
    • G11C8/20Address safety or protection circuits, i.e. arrangements for preventing unauthorized or accidental access
    • 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/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • 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
    • 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/088Usage controlling of secret information, e.g. techniques for restricting cryptographic keys to pre-authorized uses, different access levels, validity of crypto-period, different key- or password length, or different strong and weak cryptographic algorithms
    • 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/0894Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage
    • 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/14Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using a plurality of keys or algorithms
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/10Providing a specific technical effect
    • G06F2212/1052Security improvement
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/40Specific encoding of data in memory or cache
    • G06F2212/402Encrypted data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • G06F3/0679Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
    • 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
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/04Masking or blinding
    • H04L2209/046Masking or blinding of operations, operands or results of the operations
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/34Encoding or coding, e.g. Huffman coding or error correction

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Software Systems (AREA)
  • Human Computer Interaction (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Mathematical Physics (AREA)
  • Automation & Control Theory (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Read Only Memory (AREA)
  • Semiconductor Memories (AREA)
  • Non-Volatile Memory (AREA)

Abstract

本发明公开了一种利用存储于非易失性存储器中的安全密钥以及在包括例如闪存存储单元等非易失性存储器存储单元的集成电路上产生基于物理不可复制功能的数据集的系统及方法。该方法包括:将安全密钥存储于非易失性存储器阵列的多个区块中的特定区块中;在耦接至非易失性存储器阵列的安全逻辑电路中,在协议中利用存储于特定区块中的安全密钥来允许外部装置或通讯网络经由端口存取存储于多个区块中的各区块中的数据;以及允许安全逻辑电路特定区块进行只读存取以供在协议中使用,并阻止经由端口存取特定区块。

Description

电子装置及其存储器电路与其操作方法
技术领域
本发明属于集成电路存储器领域,涉及包括闪存阵列或其他非易失性 存储器阵列等存储器电路的集成电路、电子装置以及其操作方法,该集成 电路具有利用独有密钥或独有辨识码的安全特征。
背景技术
正在开发具有极高容量的包括非易失性存储器(例如闪存)的集成电 路存储器装置,某些技术被视为有可能会在集成电路上达成百万兆位级阵 列(terabit scalearray)。此外,存储器装置正被部署于通过网络内连的所 谓的「物联网(internetofthings,IoT)」装置中,所述网络是凭借例如因 特网协议通讯技术进行运作。对物联网装置及其他存储数据的装置的担忧 是数据安全性。因此,正在部署安全协议及查问/响应(challenge/response) 技术,该安全协议需要以独有密钥进行加密并以独有ID进行鉴认。
安全协议需要使用密钥管理技术来产生、更新、存储及保护所利用的 独有密钥及ID。
物理不可复制功能(physical unclonable function,PUF)是一种可用 于为物理实体(例如集成电路)创建独有随机密钥的程序。使用物理不可 复制功能是一种用于产生供支持硬件固有安全(hardware intrinsic security, HIS)技术的芯片ID使用的密钥的解决方案。在具有高安全要求的应用(例 如行动装置及嵌入式装置)中,已使用物理不可复制功能来创建密钥。一 种示例性物理不可复制功能是环形振荡器物理不可复制功能(ring-oscillator PUF),其使用栅的电路传播延迟所固有的制造变化性 (manufacturingvariability)。另一种示例性物理不可复制功能是静态随机 存取存储器(SRAM)物理不可复制功能,其中各晶体管中的临限电压差 使得静态随机存取存储器以逻辑「0」或逻辑「1」来接通电源。参见查尔 斯-赫尔德(Charles Herder)等人所著的「物理不可复制功能及应用:教 程(Physical Unclonable Functions and Applications:A Tutorial)」,第1126页至第1141页,电机电子工程师学会的学报(Proceedings of the IEEE)| 第102卷,第8期,2014年8月。
现有技术已提出一种使用电阻式随机存取存储器(resistive random accessmemory)的物理性质的物理不可复制功能。参见吉本(Yoshimoto) 等人所著的「10年后用于40纳米嵌入式应用且在125℃下具有<0.5%的 位错误率的基于电阻式随机存取存储器的物理不可复制功能(A ReRAM-based Physically Unclonable Function with Bit ErrorRate<0.5% after 10years at 125℃for 40nm embedded application)」,第198页至第199 页,2016VLSI技术论文科技文摘研讨会(2016Symposium on VLSI Technology Digestof Technical Papers)。在此论文中所呈现的应用提出了对 会因老化劣化而提高位错误率的电阻式随机存取存储器-物理不可复制功 能(ReRAM-PUF)的传统ID产生方法进行改良。然而,在此种基于电阻 式随机存取存储器的物理不可复制功能中,所创建的数据仍可能因存储器 存储单元的电阻漂移(drift)而受到破坏(corrupt),此可使得位错误率在 存取或使用所存储密钥时是不可接受的。此种电阻漂移于在集成电路的某 些应用中(例如在汽车应用中)所遇到的高温条件下可能更突出。
在使用利用物理不可复制功能电路产生的数据集时,由于高位错误率 的问题,先前技术已依赖于错误校正码来提高可靠性。例如,参见李(Lee) 等人在2016年6月2日发布的美国专利申请公开案第2016/0156476号「物 理不可复制功能电路及在物理不可复制功能电路中执行密钥登记的方法 (Physically Unclonable Function Circuits AndMethods Of Performing Key Enrollment In Physically Unclonable FunctionCircuits)」。
一种提供支持使用由物理不可复制功能产生的密钥及其他独有密钥 的技术的期望为包括非易失性存储器的集成电路是被期待的。
发明内容
可使利用物理不可复制功能且利用一般随机密钥的安全电路系统,并 可提高灵活性及可靠性的电子装置及系统被提出。本公开所述的装置及系 统适合用于物联网装置中,且可实际应用于各种各样的环境中。
举例而言,一种如所述的电子装置(存储器电路)被实际应用于包括 非易失性存储器阵列的单个封装式集成电路或多芯片模块,所述非易失性 存储器阵列包括由存储器存储单元形成的多个区块,所述多个区块中的特 定区块中存储有安全密钥。所述存储器电路包括用于自所述阵列进行外部 通讯的端口。所述存储器电路包括耦接至所述存储器阵列的安全逻辑 (security logic),以在协定中利用所述安全密钥来允许存取存储于所述多 个区块中的各区块中的数据、或允许对存储于所述多个区块中的各区块中 的数据进行解密或加密。所述存储器电路并包括访问控制电路(access control circuit),所述访问控制电路耦接至所述阵列,且包括用于允许所述 安全逻辑对存储所述安全密钥的所述特定区块进行只读存取,以供在协议 中使用、并阻止外部通讯网络或装置经由所述端口存取所述特定区块的逻 辑。所述访问控制电路可具有其中允许经由所述端口存取所述特定区块以 写入所述安全密钥的第一状态;以及其中禁止经由所述端口存取所述特定 区块来进行读取或写入;但允许所述安全逻辑在与主机或其他外部装置执 行安全协议期间存取所述特定区块来进行读取的第二状态。所述封装式集 成电路或多芯片模块可包括用于使用存储器阵列中的一组存储器存储单 元来执行功能(包括物理不可复制功能,例如本公开所述的依赖于电荷俘 获非易失性存储器存储单元作为物理电路的示例性功能)以生成安全密钥 的逻辑。在本公开所述的实施例中,多个安全密钥可存储于集成电路上的 特定区块中或不同区块中。此外,所述安全逻辑可被配置成使所述多个安 全密钥中的特定安全密钥被使用一次或有限数目的次数来允许存取存储 于所述多个区块中的各区块中的数据。在一些实施例中,存储于特定区块 中的安全密钥可为例如包括数千或数百万个位的大密钥。
本公开提供一种使用包括浮置栅极及介电电荷俘获技术的电荷俘获 非易失性存储器存储单元且在一些实施例中使用其他类型的非易失性存 储器存储单元在集成电路上,产生可用作独有辨识符或独有密钥的数据集 的操作方法。所述操作方法可包括物理不可复制功能,所述物理不可复制 功能会使得在一组中的存储器存储单元内建立相异临限值(例如临限电 压)。所述方法可用于生成可以零位错误率或极低位错误率而使用的基于物理不可复制功能的稳定数据集。
一种如所述的电子装置包括一组电荷俘获存储器存储单元,例如闪存 存储单元。包括电路系统,所述电路系统位于集成电路上、位于能够存取 所述集成电路的处理器系统上、或者在所述集成电路上及在所述处理器系 统上均包括某些部分,所述电路系统能够存取所述一组电荷俘获存储器存 储单元,以用于使用所述一组电荷俘获存储器存储单元来提供数据集。所 提供的数据集是所述一组电荷俘获存储器存储单元中的不同成员由于在所述存储器存储单元中的电荷存储结构中引发电荷俘获的共同处理而具 有的相异临限电压的函数。根据本技术的一个实施例,所述一组电荷俘获 存储器存储单元具有可由地址代表的次序,且所述相异临限电压具有起始 分布。根据本公开的此实施例,所述数据集是所述一组电荷俘获存储器存 储单元的具有处于所述起始分布的特定部分中的临限电压的子集按照所 述次序的位置的函数。
一种在包括可编程存储器存储单元(例如闪存存储单元)的集成电路 上产生数据集的操作方法被提出。所述操作方法包括:使曝露于所述集成 电路上具有地址的所述一组可编程存储器存储单元经过共同处理后引入 相异的临限值,且所述一组可编程存储器存储单元位于一个起始分布的范 围内。所述操作方法包括:查找所述一组可编程存储器存储单元的具有位 于所述分布的第一部分中的临限值的第一子集、以及所述一组可编程存储器存储单元的具有位于所述起始分布的第二部分中的临限值的第二子集。 所述操作方法包括使用所述第一子集及所述第二子集中的至少一者的地 址来产生数据集。
在一个实施例中,通过以下方式来产生所述数据集:使用所述地址来 选择所述第一子集及所述第二子集中的一者中的存储器存储单元,并对所 选择的存储器存储单元应用偏压施加操作以在存储器存储单元的所述第 一子集与所述第二子集的间建立感测容限。在一个实施例中,可通过以下 方式来建立所述感测容限:对所述子集中所选择的一者中的存储器存储单 元进行寻址,并对所述经寻址的存储器存储单元应用偏压施加操作,以使 其临限值改变成所述起始分布之外的临限值分布。此后,可通过使用处于 所述感测容限内的读取电压对所述一组可编程存储器存储单元中的存储 器存储单元进行读取来产生所述数据集。
在另一实施例中,通过根据所述第一子集及所述第二子集中的至少一 者中的成员身份,并根据所述至少一者中的存储器存储单元的地址将所述 存储器存储单元的地址进行组合来产生所述数据集。一种用于组合所述地 址的技术可包括依序对所述子集中的一者或每一者的地址进行数列 (concatenate)。可将包括经组合的地址的所述数据集存储于所述集成电路 上与所述一组可编程存储器存储单元不同的存储器中。
在本公开所述的另一种技术中,通过以下方式来产生所述数据集:查 找所述起始分布中的第一分界线及与所述第一分界线不同的第二分界线; 辨识所述一组可编程存储器存储单元的具有位于所述起始分布的第一部 分中所述第一分界线以下的临限值的第一子集、以及所述一组可编程存储 器存储单元的具有位于所述起始分布的第二部分中所述第二分界线以上 的临限值的第二子集;以及使用所述第一子集及所述第二子集中的至少一 者的地址来产生数据集。
一种用于查找所述分界线的方法包括:确定所述起始分布中的临限电 压,所述临限电压使具有低于所述临限电压的临限值的存储器存储单元的 计数,对具有高于所述临限电压的临限值的存储器存储单元的计数的比率 处于目标比率范围内;以及通过自所述临限电压减去第一常数来设定所述 第一分界线,并通过对所述临限电压加上第二常数来设定所述第二分界 线。另一种用于查找所述分界线的方法包括:使用移动的第一读取电压迭 代地读取所述一组可编程存储器存储单元中的所述数据值,并对所述一组 中具有低于所述第一读取电压的临限值的存储器存储单元进行计数,且使 用使所述计数处于第一目标计数范围内的所述第一读取电压来设定所述 分界线;以及使用移动的第二读取电压迭代地读取所述一组可编程存储器 存储单元中的所述数据值,并对所述一组中具有高于所述第二读取电压的 临限值的存储器存储单元进行计数,且使用使所述计数处于第二目标计数 范围内的所述第二读取电压来设定所述第二分界线。
一种根据本公开所提供的用于产生数据集的方法来制造集成电路的 方法也被提出。
一种电子装置被提出,其包括位于集成电路上的一组可编程存储器存 储单元以及用于通过本公开所述程序来产生数据集的逻辑。
在查阅附图、说明书具体实施方式及申请专利的权利要求后,可明白 本发明的其他实施例及优点。
附图说明
图1是根据本发明实施例包括多个闪存存储单元及控制器的装置的简 化方块图,所述控制器用于使用所述多个闪存存储单元来执行物理不可复 制功能以提供数据集。
图2是根据本发明实施例包括多个可编程存储器存储单元及控制器的 装置的另一实例,所述控制器用于使用所述多个可编程存储器存储单元来 执行物理不可复制功能以提供数据集。
图3说明集成电路上的闪存中的可编程存储器存储单元的区块,其中 包括物理不可复制功能区块。
图4A至图4D说明通过查找一组可编程存储器存储单元的第一子集 及第二子集并基于所辨识的第一子集及第二子集而建立稳定数据集来产 生数据集的实例。
图5A至图5D说明如参照图4A至图4D及表1所述来产生数据集的 另一实例,其示出即使应用相同程序,数据集中也存在变化(variation)。
图6示出如参照图4A至图4D及表1及图5A至5D及表2所述在包 括可编程存储器存储单元的集成电路上产生稳定数据集的示例性流程图。
图7A至图7D说明通过查找一组可编程存储器存储单元的第一子集、 第二子集及第三子集来产生数据集并为所述数据集构建地址映像的实例。
图8示出如参照图7A至图7D及表3所述在包括可编程存储器存储 单元的集成电路上产生数据集的示例性流程图。
图9示出如参照图7A至图7D及表3所述在包括可编程存储器存储 单元的集成电路上产生数据集的另一示例性流程图。
图10A至图10C说明将一组中的可编程存储器存储单元的临限值设 定成起始分布。
图10D至图10F说明可用于如本公开所述产生数据集的示例性闪存存 储单元技术。
图11示出应用初始化偏压施加操作以将一组中的可编程存储器存储 单元的临限值设定成起始分布的示例性流程图。
图12A至图12C说明可用于依赖于电荷俘获存储器存储单元中临限 电压的相异性来产生数据集的程序。
图13是参照图12A至图12C解释的方式在包括可编程电荷俘获存储 器存储单元的集成电路上产生稳定数据集的示例性流程图。
图14A至图14C说明可用于依赖于电荷俘获存储器存储单元中临限 电压的相异性来产生数据集的替代程序。
图15是参照图14A至图14C解释的方式在包括可编程电荷俘获存储 器存储单元的集成电路上产生稳定数据集的示例性流程图1500。
图16是根据本发明实施例包括闪存阵列及利用所述存储器阵列提供 数据集的控制器的集成电路的简化方块图。
图17是示出与登记系统(enrollment system)耦接的包括物理不可复 制功能电路系统及非易失性存储器的封装式集成电路或多芯片模块的系 统图。
图18说明可在类似图17所示系统那样的系统中使用的非易失性存储 器的替代配置。
图19说明可在类似图17所示系统那样的系统中使用的非易失性存储 器的另一替代配置。
图20说明可用于存储安全ID及地址映像的数据结构,所述安全ID 及地址映像是根据本公开所述物理不可复制功能的一些实施例而生成且 可存储于例如图17所示系统等的系统中。
图21是包括封装式集成电路或多芯片模块及主机的简化系统图,所 述主机将物理不可复制功能电路与非易失性存储器一起使用。
图22至图24是说明在各种实施例中类似图21所示系统那样的系统 的操作的简化流程图。
图25至图28是对本公开提供的物理不可复制电路系统与非易失性存 储器的组合的各种替代配置的简化说明。
【符号说明】
100、440、1600:集成电路;
110:任务功能电路;
111、116、131、141:总线;
115:访问控制区块;
120、181:输入/输出接口;
122、192、194:线路;
125:安全逻辑;
130:存储器;
140:物理不可复制功能程控器;
180:封装式集成电路或多芯片模块;
182、191:路径;
183:访问控制开关;
184:感测放大器/缓冲器;
185:存储器阵列;
186:地址译码器;
187:特定区块;
187A、187B、187C:子区块;
189:存储器存储单元;
190、1640、1713:安全逻辑;
193:快闪控制状态机;
195:其他电路系统;
198:登记系统;
198A:密钥数据库;
199:内联机;
200、300、800、900、1300、1500:流程图;
201、210、220、230、240、250、260、310、320、801、810、820、 830、832、834、835、901、910、920、930、1301、1310、1320、1330、 1340、1350、1360、1370、1501、1510、1512、1514、1516、1518、1520、 1522、1524、1526、1528、1730、1731、1732、1733、1734、1735、1750、 1751、1752、1753、1760、1761、1762:步骤;
410:处理器系统;
420:物理不可复制功能逻辑与驱动器;
430:装置搬运机/探测器;
450:安全电路;
460:闪存阵列;
470:大型闪存阵列;
471:物理不可复制功能区块;
472:引导区块;
473:参数区块;
474:保护逻辑;
475:周边电路系统;
500、700:起始临限值分布;
510、610、710:起始分布的第一部分;
520、620、720:起始分布的第二部分;
525:分布;
530:感测容限;
600:起始临限值分布;
625、735:临限值分布;
630、740:感测容限;
730:起始分布的第三部分;
750:第二感测容限;
816:初始临限值分布;
817:临限值范围/范围;
818:起始分布;
840、850、860:基板;
841、851:源极区;
842、852:漏极区;
843、853:控制栅极;
844、856:隧穿层;
845:浮置栅极;
846、848:氧化物层;
847:氮化物层;
857:电荷俘获层;
858:阻挡层;
863:垂直通道结构;
867:字线;
869:位线;
1200:起始临限值分布;
1210、1211、1220、1221:子分布;
1240:VR-与VR+之间的差值;
1400:起始分布;
1410、1420、1430:子分布;
1610:闪存阵列;
1620:存取与偏压电路;
1630:物理不可复制功能控制器;
1632:地址与参数存储器;
1633:状态机;
1710:集成电路或多芯片模块;
1711、1785:物理不可复制功能电路;
1712:控制器;
1714、1771、1776、1781、1787:非易失性存储器;
1720:主机;
1770:物理电路;
1775:电路/物理不可复制功能电路;
1780:随机数产生器;
1786:逻辑电路;
VR:读取电压;
VR+:上部读取电压;
VR-:下部读取电压。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,以下结合具体实 施例,并参照附图,对本发明进一步详细说明。
参照各图来提供对本技术实施例的详细说明。应理解,并非旨在将本 技术限制于所具体公开的结构性实施例及方法,而是可使用其他特征、元 件、方法、及实施例来实践本技术。阐述较佳实施例以对本技术进行说明, 而非对本技术的范围进行限制,其范围由申请专利的权利要求书来界定。 此项技术中具有本领域公知常识的技术人员将认识到以下说明的各种等 效变化形式。以相同的参考编号来共同指代各种实施例中相同的元件。
图1是根据本发明实施例包括多个可编程存储器存储单元及控制器的 装置的简化方块图,所述控制器用于执行使用所述多个可编程存储器存储 单元来提供数据集的程序。在此实例中,所述装置包括具有使用可编程存 储器存储单元形成的存储器的集成电路100。存储器130可由物理不可复 制功能用于提供独有数据集。以下参照图17阐述其中任务功能电路110 是包括多个存储器存储单元区块的闪存阵列的另一实施例。本公开也阐述其他实施例。
集成电路100包括任务功能电路(mission function circuit)110,任务 功能电路110可包括专用逻辑(有时称为应用专用集成电路逻辑 (application-specificintegrated circuit logic))、例如在微处理器及数字信号 处理器中所使用的数据处理器资源、大型(1arge-scale)存储器(例如闪存、 静态随机存取存储器、动态随机存取存储器(DRAM)、可编程电阻存储 器(programmable resistance memory))、以及各种类型的电路的组合(被 称为系统芯片(system-on-a-chip,SOC)配置或应用专用集成电路(application specific integrated circuit,ASIC))。集成电路100包括输入/ 输出接口120,输入/输出接口120可包括无线端口或有线端口,以提供对 其他装置或网络的存取。在本简化说明中,访问控制区块(access control block)115安置于输入/输出接口120与任务功能电路110之间。访问控制 区块115通过总线116耦接至输入/输出接口120且通过总线111耦接至任 务功能电路110。访问控制区块115执行访问控制协议,以允许或禁止在 任务功能电路110与输入/输出接口120之间进行通讯、提供对越过输入/ 输出接口120的数据的加密或解密、提供支持安全逻辑的其他服务、或提 供上述功能的组合。
为支持访问控制区块115,在此实例中,于芯片上安置安全逻辑125。 安全逻辑125耦接至可为存储器130(闪存阵列)一部分的一组闪存存储 单元。物理不可复制功能则提供或用于提供独有数据集,所述独有数据集 可由安全逻辑125在总线141上经由物理不可复制功能程控器(PUF program controller)140并在总线131上存取,且由所述安全逻辑125用于 与访问控制区块115在线路122上进行的通讯中。
在装置的此实例中,物理不可复制功能程控器140(例如被实际应用 为具有存储器130(闪存阵列)的集成电路上的状态机)提供信号以控制 偏压设置供电电压的应用,以实施用于产生数据集的程序、以及在存取存 储器130时所涉及的其他操作、及用于读取使用存储器130所提供的数据 集的其他操作。位于集成电路上的电路系统(例如位线、字线、用于位线 及字线的驱动器等)达成对一组电荷俘获存储器存储单元的存取,以使用 所述一组电荷俘获存储器存储单元来提供数据集。
集成电路上的物理不可复制功能程控器140包括用于执行用以产生数 据集的某些或全部操作的逻辑。在一个实施例中,集成电路上的物理不可 复制功能程控器140包括执行偏压施加操作所必需的逻辑且可响应于来自 外部源的设置命令(set up command)来执行所述逻辑,而无需由芯片外 系统(off-chip system)进行控制。
可包括此项技术中已知的使用状态机在内的专用逻辑电路系统来实 际应用所述控制器。在替代实施例中,所述控制器包括可被实际应用于同 一集成电路上的通用处理器,所述通用处理器执行计算机程序来控制装置 的操作。在又一些实施例中,可利用专用逻辑电路系统与通用处理器的组 合来实际应用控制器。
在一些实施例中,外部处理器系统可包括用于达成对集成电路及用于 产生数据集的逻辑的存取的电路系统。所述外部处理器系统可包括用于结 合集成电路上的电路系统来提供数据集的电路系统,例如晶圆探测电路 (wafer probe circuit)、控制总线、电压源等。用于对程序进行控制的能够 存取所述一组存储器存储单元的逻辑电路及偏压施加电路系统可包括外 部处理器系统上及在集成电路上的部分元件。
本公开所述的实例利用例如在某些种类的闪存中所利用的电荷俘获 存储器存储单元(charge trapping memory cell)。电荷俘获存储器存储单元 中的电荷存储结构可包括多晶硅浮置栅极结构、或者其他导电性或半导电 性浮置栅极结构,且可包括在闪存技术中已知的多层式介电电荷俘获结 构,例如氧化物-氮化物-氧化物(oxide-nitride-oxide,ONO);氧化物-氮 化物-氧化物-氮化物-氧化物(oxide-nitride-oxide-nitride-oxide,ONONO); 硅-氧化物-氮化物-氧化物-硅(silicon-oxide-nitride-oxide-silicon,SONOS); 能带工程设计硅-氧化物-氮化物-氧化物-硅(bandgap engineered silicon-oxide-nitride-oxide-silicon,BE-SONOS);氮化钽、氧化铝、氮化硅、 氧化硅、硅(tantalum nitride,aluminum oxide,silicon nitride,silicon oxide, silicon,TANOS);以及金属高介电常数能带工程设计硅-氧化物-氮化物- 氧化物-硅(metal-high-kbandgap-engineered silicon-oxide-nitride-oxide -silicon,MA BE-SONOS)。
在其他实施例中,物理不可复制功能存储器存储单元中用于提供数据 集的可编程存储器存储单元可包括可编程电阻存储器存储单元或其他类 型的存储器存储单元。用于提供数据集的可编程电阻存储器存储单元可包 括具有可参考临限电阻读取的可编程电阻的可编程元件。所述可编程电阻 元件可例如包含金属氧化物或相变材料。
图2是根据本发明实施例包括位于集成电路上的一组可编程存储器存 储单元,以及用于使用所述一组可编程存储器存储单元产生数据集的逻辑 的装置的另一实例。在此实例中,所述装置包括处理器系统410,以用于 在集成电路440上执行或引发执行如本公开所述产生数据集的程序。集成 电路440在制造期间于封装之前被连接至处理器系统410,例如在一些实 施例中是以晶圆形式进行连接。在其他实施例中,处理器系统410连接至 呈封装形式的集成电路。
用于执行在集成电路上产生基于物理不可复制功能的数据集的程序 的示例性系统可包括在生产线(manufacturing line)中使用测试用设备或 使用类似测试用设备那样的设备(其包括用于存取集成电路的电路系统, 例如晶圆探测电路、电压源等)而执行的经编程程序。举例而言,制造线 可具有被配置成与集成电路连接且可被配置成对本公开所述程序的执行 进行控制的多个装置测试机(device tester)、多个装置探测器(deviceprober)、多个装置搬运机(device handler)、及多个接口测试配接器 (interface testadapter)。作为另一选择,系统可被配置成与封装式集成电 路介接,且可被部署成远离集成电路的制造线,例如部署于利用集成电路 的原始设备制造商的总成安装处。
如图2中所示,示例性处理器系统410包括物理不可复制功能逻辑与 驱动器420及装置搬运机/探测器430。受到物理不可复制功能逻辑与驱动 器420作用的集成电路440耦接至装置搬运机/探测器430。集成电路440 包括安全电路450。在此实例中,安全电路450中的闪存阵列460用于使 用物理不可复制功能来产生数据集。
处理器系统410中的示例性集成电路可为如参照图1所示的集成电路 100。在制造集成电路100期间,处理器系统410执行本公开中所表示的 动作来生成数据集,且可保存所述数据集的复本或自所述数据集导出的数 据来作为集成电路与工厂中的处理器(例如,处理器系统410)之间的共 享秘密。在替代实施例中,在制造出集成电路之后,在现场,使用者可例 如使用处理器系统410在集成电路上的闪存阵列460中产生数据集,因此 可保存所述数据集来作为集成电路与现场(而非工厂中)的处理器(例如 处理器系统410)之间的共享秘密。
图3说明大型闪存阵列470,大型闪存阵列470可为与本公开所述安 全电路一起使用的集成电路上的任务功能电路或所述任务功能电路的一 部分。大型闪存阵列470可包括由快闪可编程存储器存储单元形成的区块 (例如,存储器区块0、1、…N)、物理不可复制功能区块471、引导区块 (boot block)472、及参数区块473。另外,闪存阵列可包括用于控制对 阵列中各种存储器区块的存取的保护逻辑474,保护逻辑474包括用于保 护位(protection bit)的存储器。物理不可复制功能区块471可为存储器 阵列中被保留以用以在一些实施例中被专门配置以存储安全密钥的目的 的特定区块。
在包括如图3所示闪存阵列的集成电路的实施例中,所述集成电路的 安全电路450中的闪存阵列460可包括大型闪存阵列470中,例如物理不 可复制功能区块471等区块。在其他实施例中,安全电路450中的闪存阵 列460与闪存阵列470分开,且可包括结构不同于大型闪存阵列470的存 储器存储单元以及架构不同于大型闪存阵列470。以下参照图17提出的包 括大型闪存的另一实施例。
大型闪存阵列470可包括异或(NOR)快闪架构、与非(NAND)快 闪架构、或其他类型的快闪架构。由于本公开所述的物理不可复制功能算 法是在一组存储器存储单元内执行,因而物理不可复制功能区块471可包 括足够的存储器存储单元以涵盖一个组或诸多个组,并提供供安全电路 450用于创建一个物理不可复制功能数据集或诸多物理不可复制功能数据 集。物理不可复制功能逻辑与驱动器420、或如上所述集成电路上的状态 机、或不可复制功能逻辑驱动器420与集成电路上的状态机的组合,可利 用与大型闪存阵列470相关联的周边电路系统475中的读取、编程与擦除 逻辑来根据本公开所述的物理不可复制功能程序应用偏压施加方案,以改 变物理不可复制功能区块471中的存储器存储单元的临限电压。
物理不可复制功能区块可由保护逻辑474支持,以阻止对基于物理不 可复制功能的数据集或对存储所述数据集的存储器存储单元进行意外性 存取或未经授权的存取。所述引导区块可包括写入锁定特征(write lock-out feature),以为包括存储器阵列的集成电路保证数据完整性(data integrity)。 所述引导区块可存储将集成电路初始化所必需的码,且在所述码丢失时调 用恢复例行程序(recovery routine)。所述引导区块可存储对集成电路中的 闪存阵列进行编程及擦除所必需的码。所述参数区块可存储参数数据。所述保护位被耦接至存储器区块及物理不可复制功能ID(识别)区块,以被 保护免遭意外性修改或未经授权的修改。保护存储器区块免遭修改(包括 利用保护码(rotection code))的一个实例示出于洪(Hung)等人在2015 年8月27日发布且名称为「使用非易失性保护码及挥发性保护码来进行 非易失性存储器数据保护(Nonvolatile Memory Data ProtectionUsing Nonvolatile Protection Codes and Volatile Protection Codes)」的美国专利申 请公开案第US 2015-0242158号中,所述美国专利申请公开案并入本公开 供参考,就像完全陈述于本公开中一样。
参照图4A至图4D来说明可用于依赖于已经历共同处理(例如制造 序列或共同偏压施加方案)的电荷俘获存储器存储单元中临限电压的相异 性来产生数据集的程序,所述共同处理会使得电荷隧穿进或隧穿出存储器 存储单元中的电荷存储结构,进而改变存储于所述电荷存储结构中的电荷 的量。使得起始分布被建立的共同处理在以下意义上可为「不可复制」的: 由此共同处理得到的临限电压基于各组中的个别电荷俘获存储单元中的程序、电压及温度(process,voltage and temperature)的变化而在一组电荷 俘获存储器存储单元与另一组电荷俘获存储器存储单元的间以及在一个 集成电路与另一集成电路之间不同。出于此种原因,即使知晓所述共同处 理,人们仍无法预测临限电压的变化,且因此无法预测根据彼等变化而产 生的所得数据集。
图4A是临限电压与存储单元计数关系的曲线图,其说明一组可编程 存储器存储单元中的各存储器存储单元的起始临限值分布500,起始临限 值分布500是在物理不可复制功能程序开始时建立的。出于示例性目的, 在所述分布内表示出某些点,以代表地址Addr=0、1、2、3、4、及5处 的存储器存储单元的临限电压。可看出,特定存储单元的临限电压与存储 器存储单元的地址无关。
本公开使用用语「地址」来代表可用于根据存储器存储单元的物理次 序来选择存储器存储单元的逻辑信号。在存储器技术中,对地址进行译码 以产生逻辑信号,进而对用于存取存储器存储单元的偏压施加电路系统进 行控制。在一些实施方案中,「地址」可为不需要进行译码的逻辑信号。 在一些实施方案中,存储单元的「地址」可为例如以下在图20所示的屏 蔽(mask)或映射表(mapping table)中的位。可通过形成屏蔽来对地址 进行组合,且可以屏蔽的形式存储经组合的地址,其中所述屏蔽中的每一 条目启用(enable)或停用(block)对应地址处的存储器存储单元。
起始临限值分布500可因作为刻蚀程序或沉积程序(例如在制造中使 用的涉及将集成电路暴露于电浆或离子中以在存储器存储单元上方形成 经图案化金属层的程序)的结果在制造完成时自然发生的电荷俘获而出 现。在替代实施例中,可例如使用由集成电路上的控制器控制的偏压施加 操作(例如以下所述的擦除操作等)来建立起始临限值分布500。在一个 实例中,起始分布是使用页面擦除操作或区块擦除操作针对一组可编程存 储器存储单元中的所有成员而建立,其中区块包括多个由可编程存储器存 储单元形成的页面。参见2016年9月29日发布且名称为「闪存中的页面 擦除(Page Erase in FlashMemory)」的美国专利申请公开案第 2016/0284413 A1号。使得起始分布被建立的程序是在未按照地址在一组 中的存储器存储单元中进行区分的情况下执行。使得起始分布被建立的程 序可为物理不可复制功能,以使起始分布对于经历所述程序的每一组可编 程存储器存储单元而言是独有的。
在本说明中,起始临限值分布500具有如图所示的上部临限标准 (upperthreshold level),所述上部临限标准表示使一组中的存储器存储单 元具有较高临限值的概率是极低的临限标准。可例如在用于建立起始临限 值分布500的算法中将此上部临限标准设定为例如擦除验证标准(erase verify level)。
图4B说明物理不可复制功能中的下一阶段,其中将具有位于分界线 以下的临限值的存储器存储单元辨识为具有处于起始分布的第一部分510 中的临限电压的存储器存储单元的子集中的成员。此外,将具有位于分界 线以上的临限值的存储器存储单元辨识为具有处于起始分布的第二部分 520中的临限电压的存储器存储单元的子集中的成员。因此,一组可编程 存储器存储单元具有临限值处于起始分布的第一部分中的第一子集(例如Addr=0、3、及4)、以及临限值处于起始分布的第二部分中的第二子集(例 如,Addr=1、2、及5)。
可通过以下方式来确立第一子集及第二子集中的存储器存储单元的 地址:使用分界线上的读取电压对可编程存储器存储单元应用扫描操作, 且将返回第一逻辑状态的存储器存储单元的地址记录为第一子集并将返 回第二逻辑状态的存储器存储单元的地址记录为第二子集。对所述地址的 记录可保存关于用于提供数据集的子集中的每一者中的存储器存储单元 的位置的信息。
在一些实施例中,可使用查找操作(finding operation)来确定分界线, 所述查找操作产生第一子集(具有位于分界线以下的临限值)中的可编程 存储器存储单元的计数及第二子集(具有位于分界线以上的临限值)中的 可编程存储器存储单元的计数。可将所述计数进行比较,以生成所述比率。 可将所述比率设定成能确保使数据集中0及1的数目足以维持安全数据集 的值。举例而言,可期望使0对1的比率接近1。对于实际的实施例,目 标比率范围可例如介于2/3与3/2之间,在此情形中,每一子集具有一整 组中存储器存储单元的40%至60%。可根据使用本公开所述技术的特定集 成电路的设计规格来调整目标比率范围。
一组中的个别电荷俘获存储单元的临限电压可随时间漂移,以致起始 临限值分布500代表的是仅在短时间内稳定的分布。因此,依赖于起始分 布来生成稳定数据集对于某些类型的存储器存储单元是不切实际的,在该 些类型的存储器存储单元中,此种漂移可使临限值位于分界线一侧上的某 些存储单元中的临限电压在一个时间点漂移至分界线的另一侧。因此,应 用某些技术来将起始分布转变成对临限电压的此种漂移不敏感的稳定数据集。
一种用于将起始分布转变成稳定数据集的技术涉及使用第一子集及 第二子集中的存储器存储单元的地址。在此种技术中,基于该些相异临限 值的数据集可包括子集中的一或二者的地址的数列、或包括对地址处的存 储单元进行停用或启用的条目的屏蔽。在图4A所示实例中,第一子集及 第二子集的地址的数列可为图中以二进制形式表达的0、3、4、…、1、2、 5…、或者此序列的变化形式。当然,在特定实施例中,在地址的数列中 可存在数百、数千、或数百万个地址。经数列化的地址可存储于集成电路 上的存储器(例如,与图4D所示一组不同的受保护存储器区块)中。此 种受保护存储器区块可为提供以极低位错误率、且在一些实例中于不使用 错误校正码的情况下递送数据集这一能力的非易失性稳定存储器。在替代 实施例中,第一子集及第二子集中的存储单元的地址可由例如以下参照图20所述的屏蔽表示。
如图中所示,根据另一种技术,可使用相同的组的非易失性存储器存 储单元来创建基于临限电压的稳定数据集。为达成此种实施例,可对第二 子集中的存储器存储单元执行编程操作以使其临限电压如在图4C所示, 被移动至第一验证标准以上的分布525中,在此实例中,所述第一验证标 准可高于起始临限值分布500的上部临限标准。在其他实施例中,第一验 证标准可低于起始临限值分布500的上部临限标准,只要可生成充足的感 测容限(read margin)即可。
在使用第一验证标准执行编程操作之后,可得到类似图4C所示分布 那样的改变后分布(changed distribution)。所述编程操作改变第二子集中 的存储器存储单元的临限电压,以在第一子集与第二子集之间建立感测容 限530。感测容限530可被设计成宽至足以确保以下操作的可靠性:读取 数据集,以判断特定存储器存储单元是第一子集中还是第二子集中的成 员。在建立图4C所示改变后分布之后,可使用处于感测容限530内的读 取电压VR来读取所述一组存储器存储单元。感测容限530可为显著(足 够大)的,以使读取操作中出现错误的可能性是极低的。
表1是代表存储于同一组存储器存储单元中的数据集的表,其在第一 行中示出所述一组中的存储器存储单元的顺序地址且在第二行中示出代 表由物理不可复制功能程序产生的数据集的数据值(或密钥)。在此表中, 对地址0至5处的存储器存储单元进行读取会得到数据值100110。在 实际的实施例中,数据集的长度可为数百、数千、或数百万个位。
表1
地址 密钥
….0000 1
….0001 0
….0010 0
….0011 1
….0100 1
….0101 0
…….. ……..
图5A至图5D是正如图4A至图4D及表1一样的附图序列,其代表 对一组电荷俘获存储器存储单元执行相同物理不可复制功能程序的另一 实例。在此实例中,即使物理不可复制功能程序相同,所得数据集也不同。
图5A说明包括地址Addr=0、1、2、3、4、及5处的存储器存储单元 在内的一组可编程存储器存储单元的起始临限值分布600。所述起始分布 具有上部临限标准。
图5B说明起始分布的第一部分610及第二部分620。所述一组可编 程存储器存储单元具有临限值处于起始分布的第一部分中的第一子集(例 如,Addr=1、2、3及4)、以及临限值处于起始分布的第二部分中的第二 子集(例如,Addr=0及5)。基于该些相异临限值的数据集可包括子集中 的一或二者中的某些或全部存储单元的地址的数列。在图5A所示实例中, 第一子集中的某些或全部存储单元的地址与第二子集中的某些或全部存 储单元的地址的数列可为以数字形式表达的(1,2,3,4,…);(0,5…)、或此 序列的变化形式。如上所述,经数列的地址可存储于集成电路上的存储器 (例如与其中以二进制形式示出地址的图5D所示一组不同的受保护存储 器区块)中。此种受保护存储器区块可为提供以极低位错误率、且在一些 实例中于不使用错误校正码的情况下递送数据集这一能力的非易失性稳 定存储器。
图5C说明在对可编程存储器存储单元的第二子集应用偏压施加操作 (例如,编程)以在第一子集与第二子集之间建立感测容限630之后所得 的结果。举例而言,当比率处于目标比率范围内时,第二子集可包括具有 位于分界线以上的临限值的可编程存储器存储单元。所述偏压施加操作将 第二子集中的可编程存储器存储单元的临限值改变成临限值分布625。临 限值分布625可位于第一验证标准以上。
图5D示出基于该些相异临限值的数据集,所述数据集包括子集中的 一或二者的地址的数列、或者包括关于所述地址处的存储单元的条目的屏 蔽。在图5B所示实例中,第一子集的地址与第二子集的地址的数列可为 图中以二进制形式表达的(1,2,3,4,…);(0,5…)、或此序列的变化形式。 当然,在特定实施例中,在地址的数列中可存在诸多地址。经数列地址可 存储于集成电路上的存储器(例如与图5D所示一组不同的受保护存储器 区块)中。此种受保护存储器区块可为提供以极低位错误率、且在一些实 例中于不使用错误校正码的情况下递送数据集这一能力的非易失性稳定 存储器。
表2是在第一行中示出所述一组中的存储器存储单元的顺序地址且在 第二行中示出代表由物理不可复制功能程序产生的数据集的数据值(或密 钥)的表。在此表中,对地址0至5处的存储器存储单元进行读取会得到 与图4A至图4D及表1所示实例中所产生的数据值不同的数据值01111 0。
表2
地址 密钥
….0000 0
….0001 1
….0010 1
….0011 1
….0100 1
….0101 0
…….. ……..
因此,所述数据集是所述一组电荷俘获存储器存储单元中的不同成员 由于在所述一组中引发电荷俘获的共同处理而具有的相异临限电压的函 数。可使用不同组的可编程存储器存储单元为物理不可复制功能程序的每 一实例来达成此种结果。对于某些类型的存储器存储单元,可使用同一组 可编程存储器存储单元通过为每一新的数据集创建新的起始分布来产生 多个数据集。此外,对于存储于与用于建立相异分布的一组相同的存储器 存储单元中的数据集,可由新的数据集来替换旧数据集。
图6是以参照图4A至图4D、表1及图5A至图5D及表2所解释的 方式在包括可编程电荷俘获存储器存储单元的集成电路上产生稳定数据 集的流程图200。在此实例中,程序以使一组闪存存储单元具有临限值的 起始分布而开始(201),所述起始分布是由如上所述得到相异临限电压的 共同物理不可复制功能程序而建立。在此实例中,所述程序包括查找存储 器存储单元,例如通过确定所述一组存储器存储单元内具有位于分界线以 上的临限值的第一子集的地址以及具有位于分界线以下的临限值的第二 子集的地址(210)。可凭经验来选取所述分界线并将其作为参数存储于对 物理不可复制功能的执行进行控制的系统中。作为另一选择,如此实例中 所说明,可根据起始分布的特性及数据集的期望特性来调整分界线。在此 种替代方案中,所述程序确定第一子集中存储器存储单元的计数对第二子集中存储器存储单元的计数的比率(220)。此比率可为例如1/1等的数值 或可例如落入根据数据集的预期用途而选取的可接受范围3/2至2/3中。
若所述比率是不可接受的(230),则所述程序调整分界线(240)并 返至步骤210以辨识第一子集及第二子集。若所述比率是可接受的(230), 则所述程序移动至基于存储器存储单元的被辨识出的第一子集及第二子 集来建立稳定数据集的步骤。如上所述,在一种替代方案中,所述程序可 按顺序存储第一子集中的地址并按顺序存储第二子集中的地址,且使用经 数列地址作为稳定数据集。
在图6所说明的替代方案中,用于建立稳定数据集的程序包括:对第 二集中的存储器存储单元应用偏压施加操作以在所述一组存储器存储单 元中建立改变后分布,所述改变后分布在第一子集中的存储器存储单元与 第二子集中的存储器存储单元的间具有感测容限(250)。对于电荷俘获存 储器存储单元,此偏压施加操作可包括使用充分高于临限电压的分界线的 验证标准来进行编程操作(例如递增步阶脉冲编程(incremental steppulsed programming,ISPP)),以建立感测容限。可仅对第二子集中具有地址的 存储器存储单元应用偏压施加操作。如此一来,可通过使用位于感测容限 内的读取电压进行读取操作来达成对第一子集中的存储器存储单元的辨 识及第二子集中的存储器存储单元的辨识。图6所示程序因此包括通过使 用感测容限中的读取电压读取所述一组中的存储器存储单元序列来输出 数据集的步骤(260)。可将所输出数据集提供至外部系统(例如对物理不可复制功能的执行进行控制的系统),以在安全协议中用作共享秘密。所 述数据集可稳定地存储于所述一组存储器存储单元中,乃因感测容限使以 下情形具有极低的可能性:最初被辨识为第二子集中的成员的存储器存储 单元将使其临限电压漂移至为第一子集所辨识的范围中。
图7A至图7D以及表3说明可用于基于临限值的起始分布来产生稳 定数据集的另一种技术。
图7A说明包括地址Addr=0、1、2、3、4、5及6处的存储器存储单 元在内的一组可编程存储器存储单元的起始临限值分布700。所述起始分 布可如以上所说明具有极不可能使起始分布中的任何存储器存储单元均 将具有临限值的上部临限标准。
图7B说明起始分布的第一部分710、第二部分720、及第三部分730。 起始分布的第一部分包括小于上部临限标准且位于第一分界线以下的临 限值,起始分布的第二部分包括小于上部临限标准且位于较第一分界线大 的第二分界线以上的临限值,且起始分布的第三部分包括位于第一分界线 与第二分界线之间的临限值。可包括用于基于数据集的期望特性来查找第 一分界线及第二分界线中的一或二者的程序。
所述一组可编程存储器存储单元具有临限值处于起始分布的第一部 分中的子集(例如,Addr=0及3)、临限值处于起始分布的第二部分中的 子集(例如,Addr=2及5)、以及临限值处于起始分布的位于第一读取标 准与第二读取标准的间的第三部分中的子集。
所述一组中的个别电荷俘获存储单元的临限电压可随时间漂移,以致 起始临限值分布700代表的是仅在短时间内稳定的分布。因此,依赖于起 始分布来生成稳定数据集对于某些类型的存储器存储单元是不切实际的, 在该些类型的存储器存储单元中,此种漂移可使临限值位于分界线一侧上 的某些存储单元中的临限电压在一个时间点漂移至分界线的另一侧。因 此,应用某些技术来将起始分布转变成对临限电压的此种漂移不敏感的稳定数据集。
如图7B中所示,一种用于基于临限电压来建立稳定数据集的技术可 使用同一组非易失性存储器存储单元。为达成此种实施例,可对具有位于 第一分界线与第二分界线之间的临限值的子集中的存储器存储单元执行 编程操作,以使其临限电压移动至第一验证标准以上,在此实例中,所述 第一验证标准高于起始临限值分布500的上部临限标准。在其他实施例中, 所述第一验证标准可小于起始临限值分布500的上部临限标准,只要可如 下所述生成充足的感测容限即可。
在使用第一验证标准执行编程操作之后,会得到类似图7C所示分布 那样的改变后分布。所述编程操作改变存储器存储单元的临限电压,以在 第一子集与第二子集之间建立感测容限740。感测容限740可被设计成宽 至足以确保以下操作的可靠性:使用感测容限中的读取电压来读取数据 集,以判断特定存储器存储单元是第一子集中还是第二子集中的成员。在 建立图7C所示改变后分布之后,可使用处于感测容限740内的读取电压 VR来读取所述一组存储器存储单元。感测容限740可为显著的,以使读 取操作中出现错误的可能性是极低的。
表3是代表存储于同一组存储器存储单元中的数据集的表,其在第一 行中示出所述一组中的存储器存储单元的顺序地址且在第二行中示出代 表由物理不可复制功能程序产生的数据集的数据值(或密钥)。在此表中, 对地址0至6处的存储器存储单元进行读取会得到数据值1 X 0 1 X 0 X, 其中「X」是随意值(don’t care),乃因其与对为建立感测容限而经历偏 压施加操作的子集中的存储器存储单元进行感测所得的结果相对应。在实 际的实施例中,所述数据集的长度可为数百或数千个位。
表3
地址 密钥
….0000 1
….0001 X
….0010 0
….0011 1
….0100 X
….0101 0
….0110 X
…….. ……..
在此实例中,使用所述一组可编程存储器存储单元的第一子集及第二 子集来提供数据集(例如,「密钥数据」)。举例而言,使用地址Addr=0、 2、3、及5处的第一子集及第二子集中的可编程存储器存储单元提供数据 集1010,其中数据「1」是使用地址Addr=0及3处的第一子集中的可编 程存储器存储单元而提供,且数据「0」是使用地址Addr=2及5处的第二 子集中的可编程存储器存储单元而提供。所述数据集并不包括所述一组可 编程存储器存储单元的用于建立感测容限的子集(例如,地址Addr=1、 4、及6处)中的数据,所述子集具有位于起始分布之外的临限值分布735 中的临限值。在此实例中,所示「X」表示不用于数据集的存储器存储单 元。
在一些实施例中,此实例中的偏压施加操作也可在子集中的其他者之 间建立第二感测容限750,第二感测容限750宽至足以甚至在其中程序、 电压、温度(process,voltage,temperature,PVT)变化相对较大的条件下 也能为感测可编程存储器存储单元的第二子集与第三子集的间的临限电 压差别确保可靠性。此信息可用于产生数据集。
地址映像(address map)可通过对所述一组可编程存储器存储单元中 的可编程存储器存储单元,应用扫描操作,以记录第一子集、第二子集、 及第三子集中用于提供数据集的可编程存储器存储单元的地址来构建。举 例而言,可用跳过旗标(skip flag)来标记第三子集中的可编程存储器存 储单元的地址,因此在提供数据集时将不读取第三子集中的可编程存储器 存储单元,所述数据集可用作鉴认协定或加密协议的安全密钥或者用作其 他类型的秘密数据值或独有数据值。作为另一选择,可如以下参照图20 所述来使用屏蔽逻辑。
响应于查问,物理不可复制功能ID电路(例如,安全逻辑125,图1; 安全电路450,图2)可使用以如下方式提供的数据集来提供安全密钥: 根据在地址映像中所记录的一组可编程存储器存储单元的第一子集及第 二子集的地址,使用具有在地址映像中所记录的地址的可编程存储器存储 单元,由此跳过或不使用所述一组可编程存储器存储单元的第三子集中具 有地址的可编程存储器存储单元。
如上所述,在替代程序中,基于该些相异临限值的数据集可包括子集 中的一或二者中的某些或全部存储单元的地址的组合(例如数列)。图7D 示出基于该些相异临限值的数据集,所述数据集包括子集中的一或多者的 地址的数列。在图7D所示实例中,包括存在于各分界线之间的存储器存 储单元的第一子集的地址与包括存在于第一分界线以下的存储器存储单 元的第二子集的地址的数列,其中可为图中以二进制形式表达的(1,4,5,…);(0,3,…),或此序列的变化形式。当然,在特定实施例中,在地址 的数列中可存在数百或数千个地址。经数列的地址可存储于集成电路上的 存储器(例如与具有起始分布的一组存储器存储单元不同的受保护存储器 区块)中。此种受保护存储器区块可为提供以极低位错误率、且在一些实 例中于不使用错误校正码的情况下递送数据集这一能力的非易失性稳定 存储器。
在图4D、图5D、及图7D所示实例中,数据集是各子集中的一或多 者(例如第一子集中的某些或全部存储单元、第二子集中的某些或全部存 储单元、以及第三子集中的某些或全部存储单元)的地址的数列,且可为 (0,3,…);(2,5…);(1,4,6,…)、或此序列的变化形式。在一些实施例中, 可使用各子集中仅一者(例如第三子集)中的存储器存储单元的地址作为 数据集。可使用不同于数列或除了数列之外的逻辑函数(例如哈希函数或 屏蔽形式)来组合地址,以形成包括地址组合的数据集。
图8是以参照图7A至图7D以及表3所解释的方式在包括可编程电 荷俘获存储器存储单元的集成电路上产生稳定数据集的流程图800。在此 实例中,程序以使一组闪存存储单元具有临限值的起始分布而开始(801), 所述起始分布是由如上所述得到相异临限电压的共同处理而建立。在此实 例中,所述程序包括确定所述一组存储器存储单元内具有位于第一分界线 以上的临限值的第一子集的地址、具有位于第二分界线以上的临限值的第 二子集的地址、以及具有位于所述分界线之间的临限值的第三子集的地址 (810)。所述分界线可凭经验或以其他方式来选取,并将其作为参数存储 于对物理不可复制功能的执行进行控制的系统中。作为另一选择,如此实 例中所说明,可根据起始分布的特性及数据集的期望特性来调整分界线。 在此种替代方案中,所述程序确定第一子集中存储器存储单元的计数对第 二子集中存储器存储单元的计数的比率(820)。接着,算法判断所述比率 是否与预期范围相匹配(830)。若在步骤830处判断出所述比率并不恰当, 则调整所述分界线(835),且所述程序返回至步骤810直至达成适当比率 为止。若在步骤830处所述比率是恰当的,则算法继续进行以建立代表所 述分布的可用作独有密钥的稳定数据集。如上所述,在一种替代方案中, 可组合各个子集中的存储器存储单元的地址以形成独有数据集,并将所述 独有数据集存储于受保护存储器中。在图8所说明的实施例中,所述程序 继续进行以对第三子集中的存储器存储单元应用偏压施加操作,进而建立 在第一子集与第二子集之间具有感测容限的临限值的改变后分布(832), 并且记录第三子集中的存储器存储单元的地址。如此一来,可通过第三子 集的地址以及自使用感测容限内的读取电压在跳过第三子集中的存储器 存储单元的同时感测的第一子集及第二子集所读取的数据值来代表稳定数据集(834)。可如以上在各种替代方案中所述使用信息的其他组合来建 立稳定数据集。此外,在一些实施例中,可省略偏压施加步骤832。
图9是在一组闪存存储单元中使用临限值的起始分布来建立稳定数据 集的流程图900。程序开始于使一组闪存存储单元具有临限值的起始分布 (901)。接下来,所述程序确定具有位于第一分界线以上的临限值的存储 器存储单元的第一子集的地址、具有位于第二分界线以下的临限值的存储 器存储单元的第二子集的地址、以及具有位于所述分界线之间的临限值的 存储器存储单元的第三子集的地址(910)。将各子集中的至少一者中的存 储器存储单元的地址序列存储于与所述一组存储器存储单元分开的存储 器中(920)。可输出作为存储于所述地址序列中的地址的函数或与存储于 所述地址序列中的地址相等的数据集(930)。
图10A至图10C说明一种可用于将一组存储器存储单元中的电荷俘 获存储器存储单元的临限值设定成具有相异临限电压的起始分布的程序。 图10A说明一组可编程存储器存储单元的初始临限值分布816。在此实例 中,所述初始临限值分布是在编程操作或擦除操作之前的分布,所述编程 操作引发电子或负电荷隧穿进电荷存储结构以增大存储单元的临限电压, 所述擦除操作引发电子隧穿出电荷存储结构或引发正电荷隧穿进电荷存 储结构以减小存储单元的临限电压。在此实例中,所述一组中的存储器存 储单元可具有任何初始临限值分布。在此实例中,所述初始临限值分布包 括位于第一验证标准以下的相对低的临限值范围。
图10B说明将所述一组可编程存储器存储单元中的所有成员编程至 较第一验证标准大的临限值范围817所得的结果。此类似在闪存中使用的 预编程操作。
图10C说明对所述一组可编程存储器存储单元中的所有成员进行擦 除以建立起始分布818中的临限值所得的结果,其中所述起始分布包括位 于第二验证标准以下的临限值。分布830可用作上述程序的起始分布,也 可应用其他技术,包括使用图10B所示范围817作为起始分布。
本公开所述的用于建立起始分布的技术(包括参照图10A至图10C 所述的技术)可应用于电荷俘获存储器存储单元。图10D、图10E、及图 10F中说明电荷俘获存储器存储单元的实例。
图10D是形成于基板840上的平坦浮置栅极存储器存储单元的简化 图。源极区841及漏极区842安置于电荷俘获结构的相对两侧上。控制栅 极843上覆于电荷俘获结构上,且可为例如字线的一部分。所述电荷俘获 结构包括通常由氧化硅形成的隧穿层844、通常由多晶硅形成的浮置栅极 845、包括多层式氧化物-氮化物-氧化物结构的阻挡介电结构,所述多层式 氧化物-氮化物-氧化物结构具有氧化物层846、氮化物层847、及氧化物层 848。对类似图10D所示浮置栅极存储器存储单元那样的浮置栅极存储器 存储单元进行编程及擦除等物理功能会引发电荷隧穿而改变被俘获于浮 置栅极845中的电荷。被俘获电荷的量根据每一存储单元的物理特性而有 所变化,包括程序变化、温度变化、电压变化等。因此,用于建立类似上 述起始临限值那样的起始临限值的操作会在单个装置上的海量存储器存储单元内得到处于相对宽广的分布中的临限电压。
图10E是形成于基板850上的平坦介电电荷俘获存储器存储单元的简 化图。源极区851及漏极区852安置于电荷俘获结构的相对两侧上。控制 栅极853上覆于所述电荷俘获结构上,且可为例如字线的一部分。所述电 荷俘获结构包括通常由氧化物或由多个薄介电层形成的隧穿856。在隧穿 层856上方安置有通常包含氮化硅或其他介电材料的电荷俘获层857。在 电荷俘获层857上方具有通常由另一种介电氧化物(例如氧化硅)形成的 阻挡层858。与浮置栅极存储器存储单元一样,对类似图10E所示存储器 存储单元那样的存储器存储单元进行编程及擦除等物理功能会引发电荷 隧穿而改变被俘获于电荷俘获层857中的电荷。被俘获电荷的量会根据每 一存储单元的物理特性而有所变化,包括程序变化、温度变化、电压变化 等。因此,用于建立类似上述起始临限值那样的起始临限值的操作会在单个装置上的海量存储器存储单元内得到处于相对宽广的分布中的临限电 压。
图10F是形成于基板860上的三维(3D)垂直与非闪存结构的简化图。 垂直通道结构(例如,863)安置于由字线(例如,867)形成的堆栈之间。 例如介电电荷俘获结构或浮置栅极结构等电荷存储结构安置于字线与垂 直通道结构863之间。垂直通道结构863耦接至位线869。在所述基板中, 安置有共享源极导体,进而经由垂直通道结构863在位线869与基板860 之间为与非串建立电流路径。图10F所示闪存结构也可用于使用编程操作 或擦除操作在装置上的海量存储器存储单元内建立临限电压的相对宽广 的分布。
其他类型的闪存存储单元结构(包括其他三维存储器技术)也可部署 本公开的物理不可复制功能程序。
图11示出应用初始化偏压施加操作将一组中的可编程存储器存储单 元的临限值设定成起始分布的示例性流程图300,所述初始化偏压施加操 作可应用于电荷存储存储器存储单元,包括类似上述存储器存储单元那样 的存储器存储单元。在步骤310处,将所述一组可编程存储器存储单元中 的所有成员编程至较第一验证标准大的临限值范围。在一个实例中,可使 用被称为递增步阶脉冲编程(ISPP)序列的编程算法来对所述一组可编程 存储器存储单元中的所有成员进行编程,其中增大脉冲高度并执行编程验 证步骤直至满足期望临限标准为止。在步骤320处,对所述一组可编程存 储器存储单元中的所有成员进行擦除,以建立起始分布中的临限值,所述 起始分布包括位于第二验证标准以下的临限值。
根据此种建立起始分布的程序用于编程操作或擦除操作的验证标准 可与用于对同一集成电路上的大型存储器所应用的编程操作及擦除操作 的验证标准相同。作为另一选择,可视特定实施方案的需要来调整用于建 立起始分布的验证标准,以使起始分布具有对于用于如本公开所述创建数 据集所期望的特性。虽然在此实例中使用其中将净正电荷添加至电荷俘获 结构以减小存储单元的临限值的「擦除」程序来生成起始分布,然而,也可使用其中将净负电荷添加至电荷俘获结构以增大存储单元的临限值的 「编程」程序。此外,如上所述,起始分布可为由制造程序或使一组存储 器存储单元经历的其他程序而得到的临限值的「初始」分布。「初始」分 布及由擦除操作或编程操作而得到的分布均可被视为物理不可复制功能。
此外,对于基于可编程电阻存储器存储单元的非易失性存储器,可使 用其中引起电阻的净减小以为存储单元的读取电流减小临限电压的「设定 (set)」程序来生成起始分布。作为另一选择,也可使用其中引起电阻的 净增大以为存储单元的读取电流增大临限电压的「重设(reset)」程序。 此外,如上所述,起始分布可为由制造程序或使一组可编程电阻存储器存 储单元经历的其他程序而得到的临限值的「初始」分布。「初始」分布及 由设定操作或重设操作得到的分布均可被视为物理不可复制功能。
图12A至图12C说明另一种用于使用物理不可复制功能来为参照图9 所述类型的电荷俘获存储器存储单元产生数据集的技术。在图12A中,说 明例如可使用物理不可复制功能(如使用擦除验证功能来使一组存储器存 储单元中的各存储器存储单元的临限值移动至上部临限标准以下的擦除 操作)生成的起始临限值分布1200。可将所述起始分布表征为具有图中所 示的上部临限标准及下部临限标准,且为便于进行本说明,可针对为存储器阵列而配置的标准读取操作将具有处于起始临限值分布1200内的临限 值的存储器存储单元表征为代表数据值「0」。
图12B说明在建立数据集时的下一步骤。在此实例中,使用自起始临 限值分布1200的一侧开始移动的读取电压VR的标准来读取所述一组中 的存储器存储单元。假定所述移动的读取电压是自下部临限标准开始,则 使用读取电压来读取所述一组存储器存储单元,并确定具有位于所述临限 值以上及以下的临限值的存储器存储单元的数目的计数。使此读取电压移 动直至处于所述读取电压以上及以下的存储器存储单元的数目与期望参数相匹配(例如约相等、或具有约为1的比率)为止。在此阶段,可将具 有在子分布1210内位于读取电压VR以下的临限值的存储器存储单元表 征为代表数据值「1」,且可将具有在子分布1220内位于读取电压VR以 上的临限值的存储器存储单元表征为具有数据值「0」。举例而言,读取操 作可持续进行至具有低于读取标准的临限标准的可编程存储器存储单元 的计数,具有高于读取标准的临限标准的可编程存储器存储单元的计数的 比率处于目标比率范围内为止。举例而言,当具有低于读取标准的临限标 准的可编程存储器存储单元的计数,对应于一组中的存储器存储单元的约 50%时,目标比率范围内的比率可实质上等于1。可建立使所述比率处于 目标比率范围(例如40%至60%)内的读取标准来作为用于对一组可编程 存储器存储单元中的各存储器存储单元进行读取以产生稳定数据集的读 取电压VR。
图12C说明在建立数据集时的下一步骤。根据此种技术,对上部读取 电压VR+及下部读取电压VR-进行选取,以界定起始临限值分布1200的 其中使存储器存储单元对数据值进行强存储的子分布。一旦如结合图12B 所述确定出读取电压VR,便可通过在读取电压VR周围建立感测容限, 而在分布中建立第一分界线及第二分界线,使得感测容限(VR-与VR+之间的差值1240)位于第一分界线与第二分界线之间,且使读取电压VR 处于感测容限内。例如,对于一种特定类型的闪存存储单元,第一分界线 可位于与读取标准减去300毫伏(mV)对应的临限标准处,而第二分界 线可位于与读取标准加上300毫伏对应的临限标准处。在另一实例中,第 一分界线可位于与读取电压VR的标准减去读取标准的30%对应的临限标 准(下部读取电压VR-)处,而第二分界线可位于与读取电压VR的标准 加上读取标准的30%对应的临限标准(上部读取电压VR+)处。
可使用子分布1211及子分布1221内对数据值「1」及「0」进行强存 储的存储器存储单元来产生数据集。将此种存储器存储单元的地址记录于 集成电路上的存储器中(例如稳定闪存区块中、不同类型的非易失性存储 器中、或例如静态随机存取存储器或动态随机存取存储器等挥发性存储器 中)以供集成电路在例如加密及鉴认等安全协议中使用。可使用中心的读 取电压值VR以及提供强感测容限的所记录地址来执行读取操作。如此一 来,仅利用了相对于读取电压对数据值进行强存储的存储器存储单元,进 而使在读取数据时,因临限值漂移而发生错误的概率是极低的。
图13是以参照图12A至图12C所解释的方式在包括可编程电荷俘获 存储器存储单元的集成电路上产生稳定数据集的示例性流程图1300。在此 实例中,程序以使一组闪存存储单元具有临限值的起始分布而开始 (1301),所述起始分布是由如上所述得到相异临限电压的共同处理而建 立。在此种替代方案中,使用移动的读取标准(读取电压VR)对所述一组中的存储器存储单元执行读取操作(步骤1310)。所述程序确定具有低 于当前读取标准的临限标准的可编程存储器存储单元的计数,对具有高于 当前读取标准的临限标准的可编程存储器存储单元的计数的比率(步骤 1320)。接着,所述程序判断所述比率是否处于目标比率范围内(步骤 1330)。例如,当具有低于当前读取标准的临限标准的可编程存储器存储 单元的计数,对应于一组中的存储器存储单元约130%时,目标比率范围 内的比率可实质上等于1。若所述比率并非处于目标比率范围内(步骤 1330,否),则可例如通过使读取标准递增来调整读取标准(步骤1340), 其中对于步骤1310的第一次迭代,所述读取标准可自位于分布的最小临 限标准处或以下的临限标准开始。接着,读取操作返回至步骤1310并持续进行至所述比率处于目标比率范围内(步骤1330,是)为止。建立使所 述比率处于目标比率范围内的读取标准,来作为用于对所述一组可编程存 储器存储单元中的各存储器存储单元进行读取以产生稳定数据集的读取 电压VR(图12B)(步骤1350)。
若在步骤1330处所述比率处于目标比率范围内,则所述程序继续进 行以基于数据集的期望特性来在分布中,建立第一分界线及第二分界线中 的一或二者(步骤1340)。例如,所述程序可在起始分布(图4B)中于读 取电压VR周围建立感测容限,以使感测容限(例如,530,图4C)位于 第一分界线与第二分界线之间,且使读取电压VR处于感测容限内。例如, 第一分界线可位于与读取标准减去300毫伏对应的临限标准(下部读取电 压VR-)处,而第二分界线可位于与读取标准加上300毫伏对应的临限标 准(上部读取电压VR+)处。例如,第一分界线可位于与读取标准减去 读取标准的30%对应的临限标准处,而第二分界线可位于与读取标准加上 读取标准的30%对应的临限标准处。
图13所示程序包括以下步骤1360:确定所述一组存储器存储单元内 具有由第一分界线界定的第一子集的地址、由第二分界线界定的第二子集 的地址、以及具有位于第一分界线与第二分界线之间的临限值的第三子集 的地址,并使用所确定地址来建立代表所述分布的可用作独有密钥的稳定 数据集。
图13所示程序包括以下步骤1370:通过使用感测容限530(图4)中 的读取电压VR对所述一组中的存储器存储单元序列进行读取来输出数据 集。可将所输出数据集提供至外部系统(例如对物理不可复制功能的执行 进行控制的系统),以在安全协议中用作共享秘密。所述数据集可稳定地 存储于所述一组存储器存储单元中,乃因感测容限使以下情形具有极低的 可能性:最初被辨识为第二子集中的成员的存储器存储单元将使其临限电 压漂移至为第一子集所辨识的范围中。
使用此种技术,数据集相依于被确定为对数据值进行强存储的存储器 存储单元的数目。此数目在一个起始分布与下一起始分布间可有所变化。 因此,在产生数据集时,若存储单元的数目大于数据集的期望大小,则可 截去存储器存储单元序列,或者若存储单元的数目小于数据集的期望大 小,则可填补存储器存储单元序列。
图14A至图14C说明使用物理不可复制功能来为参照图9所述类型 的电荷俘获存储器存储单元产生数据集的又一实例。在图14A中,说明例 如可如上所述使用物理不可复制功能生成的起始分布1400。起始分布1400 可为随着临限标准远离中心峰值延伸而具有相对对称的下降(drop-off)的 粗略高斯(Gaussian)分布。然而,所述分布不可能是实际上对称的。如 上所述,对称性的此种缺失可在参照图13所述的程序中使得不同数目的 存储器存储单元对数据进行「强」存储。根据图14A至图14C所示技术, 可对强存储数据的存储器存储单元的数目达成更严格控制。
如图14A中所说明,可通过使用第一读取操作并执行使用当前读取电 压迭代地读取所述一组存储器存储单元中的各存储器存储单元以及对具 有低于当前读取标准的临限值的存储器存储单元的数目进行计数的程序 来查找可被表征为对数据值「1」进行强存储的存储器存储单元的子分布 1410,所述第一读取操作施加以位于起始分布1400的下部边界处或附近 的临限值开始移动的读取标准。当所述计数达到所规定临限值时,则存储 当前读取标准作为第一下部分界线电压(下部读取电压VR-)。
如图14B中所说明,可通过使用第二读取操作并执行使用当前读取电 压迭代地读取所述一组存储器存储单元中的各存储器存储单元以及对具 有高于当前读取标准的临限值的存储器存储单元的数目进行计数来查找 可被表征为对数据值「0」进行强存储的存储器存储单元的第二子分布 1420,所述第二读取操作施加以位于起始分布1400的上部边界处或附近 的临限值开始移动的读取标准。当所述计数达到所规定临限值时,接着存 储当前读取标准作为第二上部分界线电压(上部读取电压VR+)。
如图14C中所说明,第三子分布1430包括具有位于第一分界线电压 (下部读取电压VR-)与第二分界线电压(上部读取电压VR+)的间的 临限值的存储器存储单元。使用落入对数据值「1」进行「强」存储的第 一子分布1410内以及落入对数据值「0」进行「强」存储的第二子分布1420 内的存储器存储单元的地址,可通过使用位于第一分界线与第二分界线的间的读取电压VR对存储器存储单元进行读取来产生数据集。在起始分布 可被表征为粗略高斯分布的情况下,可通过对第一分界线电压(下部读取 电压VR-)与第二分界线电压(上部读取电压VR+)求平均值来生成此 读取电压。在其中起始分布可朝更高临限值或更低临限值偏斜(skew)的 实施例中,则可使用将分布中的偏斜考虑在内的公式来生成所述读取电 压。
图15是以参照图14A至图14C所解释的方式在包括可编程电荷俘获 存储器存储单元的集成电路上产生稳定数据集的示例性流程图1500。在此 实例中,程序以使一组闪存存储单元具有临限值的起始分布而开始 (1501),所述起始分布是由如上所述得到相异临限电压的共同处理而建 立。在此实例中,所述程序包括确定所述一组存储器存储单元内,具有位 于第一分界线以下的临限值的第一子集的地址,及具有位于第二分界线以 上的临限值的第二子集的地址。以一种提供预定数目个对数据值「0」进 行强存储的存储器存储单元及预定数目个对数据值「1」进行强存储的存 储器存储单元的方式,来确定所述分界线。可将所述分界线作为参数存储 于对物理不可复制功能的执行进行控制的系统中。
在此种替代方案中,使用第一移动的读取标准对所述一组中的存储器 存储单元执行第一读取操作(步骤1510)。所述程序确定具有位于第一读 取标准(下部读取电压VR-)以下的临限标准的可编程存储器存储单元的 第一计数(步骤1512)。接着,所述程序判断所述第一计数是否与预定数 目相匹配或是否落入数目范围内(步骤1514)。
若第一计数不被接受(步骤1514,否),则可例如通过使第一读取标 准递增来调整第一读取标准(步骤1516),其中对于步骤1510的第一次迭 代,所述第一读取标准可自位于分布的下部临限标准处或以下的临限标准 开始。第一读取操作接着返回至步骤1510并持续进行至第一计数被接受 (步骤1514,是)为止。
图15所示程序包括在起始分布中建立第一分界线电压(下部读取电 压VR-)作为使第一计数是预定数目或接近预定数目的第一读取标准(步 骤1518)。可确定并存储具有位于第一分界线(下部读取电压VR-)以下 的临限标准的存储器存储单元的地址,以在此步骤处或在稍后的步骤处当 第二分界线被建立时建立代表所述分布的可用作独有密钥的稳定数据集。
图15所示程序包括使用第二移动的读取标准(上部读取电压VR+) 对所述一组中的存储器存储单元进行第二读取操作(步骤1520)。所述程 序确定具有高于第二读取标准的临限标准的可编程存储器存储单元的第 二计数(步骤1522)。接着,所述程序判断所述第二计数是否为可接受的, 例如其是否与预定数目相匹配或是否落入数目范围内(步骤1524)。在一 些实施例中,若第一读取操作中的计数与第二读取操作中的计数之和等于 数据集的目标位计数或数据集的目标地址数目或者处于所述目标位计数 的范围内或所述目标地址数目的范围内,则所述数目可被接受。
若第二计数不被接受(步骤1524,否),则可例如通过使第二读取标 准递减来调整第二读取标准(步骤1526),其中对于步骤1520的第一次迭 代,第二读取标准可自位于分布的上部临限标准处或以上的临限标准开 始。第二读取操作接着返回至步骤1520并持续进行至第二计数被接受(步 骤1524,是)为止。
图15所示程序包括在起始分布中建立第二分界线作为使第二计数被 接受的第二读取标准(上部读取电压VR+),并使用第一分界线及第二分 界线来建立读取电压VR,例如通过根据以下方程序求平均值:VR=(VR- +VR+)/2(步骤1528)。
虽然如图15中所示,用于建立第一分界线的包括步骤1510、1512、 1514、及1516的迭代是在用于建立第二分界线的包括步骤1520、1522、 1524、及1526的迭代之前执行,然而,在其他实施例中,用于建立第二 分界线的包括步骤1520、1522、1524、及1526的迭代可在用于建立第一 分界线的包括步骤1510、1512、1514、及1516的迭代之前执行。
图15所示程序可以类似图13所示程序的步骤1360那样的步骤继续: 确定所述一组存储器存储单元内由第一分界线界定的对数据值「1」进行 强存储的存储器存储单元的第一子集的地址以及由第二分界线界定的对 数据值「0」进行强存储的第二子集的地址。在一些实施例中,也可使用 具有位于第一分界线与第二分界线之间的临限值的不对数据值进行强存 储的存储器存储单元的第三子集的地址来建立数据集。
图15所示程序可以按照类似图13所示程序的步骤1340那样的步骤 继续:通过使用感测容限中的读取电压VR对所述一组中的存储器存储单 元序列进行读取来输出数据集。可将所输出数据集提供至外部系统(例如 对物理不可复制功能的执行进行控制的系统),以在安全协议中用作共享 秘密。所述数据集可稳定地存储于所述一组存储器存储单元中,因VR- 与VR+之间的感测容限使以下情形具有极低的可能性:最初被辨识为第 一子集及第二子集中的成员的存储器存储单元将使其临限电压漂移至为 另一子集所辨识的范围中。
在一个实施例中,通过将一组可编程存储器存储单元中的第一子集及 第二子集分别规定成第一预定长度T1及第二预定长度T0,而对欲使用的 完整数据集(以存储单元的数目来计算)的预定长度T,其中T=T1+T0, 其表示所述数据集中位的数目或所述一组可编程存储器存储单元中第一 子集及第二子集中的存储器存储单元的数目。例如,第一目标计数范围及 第二目标计数范围可包括第一预定长度T1及第二预定长度T0,以便可在 起始分布中建立第一分界线及第二分界线,以作为使第一计数及第二计数 分别与第一预定长度T1及第二预定长度T0相匹配的第一读取标准及第二 读取标准。当在数据集受此限制时各数目之和不与所规定长度相匹配时, 由于移动的读取操作的细微度(granularity)可大于一个存储单元,因而 可自数据集去除多余的存储单元或者可用数据来填补数据集,以形成经校 正的长度。
图16说明包括闪存阵列1610的集成电路1600,闪存阵列1610包括 一组物理不可复制功能存储器存储单元,所述一组物理不可复制功能存储 器存储单元可如上所述受到物理不可复制功能作用建立临限值的分布。集 成电路1600包括如以上结合图1所述的物理不可复制功能控制器1630及 安全逻辑1640。此外,提供使闪存阵列1610能够被使用的存取与偏压电 路1620,包括字线驱动器、感测放大器、位线驱动器、电压源、及其他位 于闪存阵列周边的电路。在此实例中,物理不可复制功能控制器1630连 接至闪存阵列1610的存取与偏压电路1620且包括用于实施本公开所述程 序(例如,包括图6、图8、图9、图11、图13、及图15所示程序中的某 些或全部程序)的逻辑及存储器资源。
在所说明的实施例中,物理不可复制功能控制器1630中包括状态机1633以及地址与参数存储器1632。状态机1633可包括用于基于对闪存阵 列1610中的所述一组存储器存储单元应用的物理不可复制功能来产生数 据集的逻辑。在本公开所述技术的实施例中,所述逻辑可执行以下步骤: 查找在产生数据集时所读取的存储器存储单元的子集或子分布,将参数 (例如用于上述分界线的临限值、用于自所辨识子集读取数据值的临限 值)记录于地址与参数存储器1632中,并将被辨识出供在产生数据集时 使用的存储器存储单元的地址记录于地址与参数存储器1632中。所述逻 辑也可执行以下步骤:应用存储于地址与参数存储器1632中的读取电压 及地址,以自闪存阵列1610生成数据值序列。
所述状态机也可包括用于引起对一组可编程存储器存储单元中的可 编程存储器存储单元进行扫描并应用本公开所述的程序以基于物理不可 复制功能产生稳定数据集的逻辑。
安全逻辑1640可包括用于处置查问输入并使用自闪存阵列1610或自 地址与参数存储器1632、或自其二者读取的数据集提供响应输出的逻辑。 安全逻辑1640可包括使用数据集的加密与解密资源,且可包括用于使用 数据集来控制鉴认协议的逻辑。在一些实施例中,响应可为在集成电路上 应用于启用例如任务功能电路的通过/失败(pass/fail)信号。在其他实施 例中,响应可应用于集成电路1600之外的在安全协议中会使用到所述数 据集的电路系统。在一些实施例中,所述安全逻辑包括使用专用逻辑、被 进行适当编程的通用处理器、被进行适当编程的可编程门阵列、或该些类 型的逻辑电路的组合来实际应用的状态机。此外,在一些实施方案中,安 全逻辑1640可共享用于实际应用状态机1633的逻辑。
可使用例如闪存、可编程电阻存储器、单次可编程存储器 (one-time-programmable memory)等非易失性存储器来实际应用地址与参 数存储器1632。此外,所述存储器可使用其他类型的存储器来实际应用, 包括例如静态随机存取存储器等挥发性存储器,其中所述地址及参数的备 份复本存储于闪存阵列1610中或存储于可由集成电路存取的其他存储器 中。
状态机1633可使用专用逻辑、被进行适当编程的通用处理器、被进 行适当编程的可编程门阵列、或该些类型的逻辑电路的组合来进行实际应 用。
因此,图16说明集成电路的实例,其包括:一组可编程存储器存储 单元,位于集成电路上,具有临限值的分布;存储器,存储所述一组可编 程存储器存储单元中具有处于临限值的所述分布的第一子分布中的临限 值的存储器存储单元的地址;以及逻辑,用于使用所存储地址产生数据集。
所述分布的特征可在于是使用物理不可复制功能而形成。
在一些实施例中,第一子分布通过感测容限与第二子分布分开,且所 述用于产生数据集的逻辑包括用于按照地址次序读取所述一组可编程存 储器存储单元中的各存储器存储单元以产生数据值的逻辑,所述数据集根 据是否为第一子分布中的成员身份而变化。
在一些实施例中,所述存储器另外存储所述一组存储器存储单元中临 限值处于所述一组中的存储器存储单元的临限值的分布的第二子分布中 的存储器存储单元的地址;且所述用于产生数据集的逻辑包括使用关于第 一子分布及第二子分布的所存储地址。
在一些实施例中,所述存储器另外为临限值的分布存储第一分界线及 与所述第一分界线不同的第二分界线;且第一子分布中的存储器存储单元 包括所述一组存储器存储单元中具有位于第一分界线以下的临限值的第 一子集,且第二子分布中的存储器存储单元包括所述一组存储器存储单元 中具有位于第二分界线以上的临限值的第二子集。
在一些实施例中,所述用于产生数据集的逻辑使用所述地址来选择第 一子集及第二子集中的一者中的存储器存储单元;以及使用第一分界线与 第二分界线的间的读取电压对所述一组可编程存储器存储单元中的存储 器存储单元进行读取。
在一些实施例中,所述一组中的可编程存储器存储单元是电荷俘获存 储器存储单元,且所述临限值是临限电压。
在一些实施例中,所述集成电路可包括用于使用偏压施加电路对集成 电路应用偏压施加操作的逻辑,所述偏压施加操作在所述一组中的可编程 存储器存储单元的电荷存储结构中引发电荷的改变以建立所述分布。
在一些实施例中,所述逻辑包括所述集成电路上的状态机。
在一些实施例中,所述集成电路包括对查问输入作出响应以使用数据 集产生响应输出的逻辑。
图17说明包括封装式集成电路或多芯片模块180的系统,封装式集 成电路或多芯片模块180包括输入/输出接口181及非易失性的存储器阵列 185。输入/输出接口181提供用于在外部装置或通讯网络与非易失性存储 器阵列185之间进行外部通讯的端口。存储器阵列185包括由存储器存储 单元形成的多个区块(例如,参见以上图3),所述多个区块中的特定区块 187中存储有安全密钥。安全逻辑190耦接至非易失性存储器阵列185, 以在协议中利用安全密钥来允许存取存储于所述多个区块中的各区块中 的数据。包括访问控制开关(access control switch)183的访问控制电路耦 接至所述阵列,且包括用于允许所述安全逻辑对特定区块进行只读存取以 供在协议中使用、并阻止外部装置或通讯网络经由所述端口存取特定区块 的逻辑。在各种实施例中,可使用存取规则的其他组合,进而容许安全逻 辑在对特定区块的利用方面具有更大灵活性。
在此实例中,非易失性存储器阵列185包括闪存。存储安全密钥的特 定区块187可在物理上位于阵列中的任何之处,但如所说明可在物理上位 于具有最低物理地址的顶部区块中或可邻近具有最低物理地址的引导区 块,此处仅举几例。
非易失性存储器阵列185耦接至感测放大器/缓冲器184,以使得数据 能够流入及流出闪存阵列,包括流入及流出存储安全密钥的特定区块187。 在此实例中,访问控制开关183安置于感测放大器/缓冲器184与输入/输 出接口181之间。自阵列185读取的数据可在路径182上被路由至输入/ 输出接口181或可在路径191上被路由至安全逻辑190。
在所说明的实施例中,地址译码器186连同区块锁位(block lock bit) 一起耦接至闪存阵列185,所述区块锁位用于控制在阵列中的对应区块(包 括特定区块187)中读取及写入数据的权限。用于所述特定区块187的区 块锁位可包括与用于阵列中的其他区块的区块锁位不同的逻辑结构且在 逻辑上执行不同的功能。举例而言,与存储安全密钥的特定区块187相关 联的区块锁位可控制耦接至访问控制开关183的逻辑,以在用于存取阵列 的地址对应于特定区块187的地址时阻止数据自特定区块187经由感测放 大器/缓冲器在线路形成的路径182上流至输入/输出接口181,同时容许数 据自特定区块187在线路形成的路径191上流至安全逻辑190。
此外,在所说明的实施例中,具有物理不可复制功能程控器的快闪控 制状态机193在线路194上耦接至存储器阵列185且在线路192上耦接至 安全逻辑190。出于生成用作安全密钥的数据集的目的,物理不可复制功 能可使用存储器阵列185中的特定一组存储器存储单元189中的存储器存 储单元来执行本公开所述的程序。在装置的此实例中,快闪控制状态机193 提供信号来控制偏压方案供电电压的施加,以实施用于产生数据集的程序以及在存取存储器阵列185时所涉及的其他操作。位于集成电路上的电路 系统(例如位线、字线、用于位线及字线的驱动器等)达成对所述一组闪 存存储单元的存取,以用于提供用于生成安全密钥的数据集。
如所说明,封装式集成电路或多芯片模块180也可包括例如可在系统 芯片系统(system-on-a-chip system)或电路系统与存储器的其他组合中遇 到的其他电路系统195。
在所示实例中,封装式集成电路或多芯片模块180通过内联机 (interconnect)199耦接至登记系统(enrollment system)198。登记系统 198可维持密钥数据库198A,密钥数据库198A中可维持有依赖于特定区 块187中所存储的安全密钥来执行安全协议所需的信息。在一些实施例中, 执行安全协议所需的信息包括安全密钥的复本。
在一种示例性操作方法中,在制造或封装期间,快闪控制状态机193 可如以上参照图2所述与登记系统198协作地执行物理不可复制功能。所 述物理不可复制功能可利用所述一组存储器存储单元189来生成可用于形 成安全密钥的数据集。在完成物理不可复制功能的执行后,可接着将数据 集自所述一组存储器存储单元189复制至被保留或被配置用于存储安全密 钥的特定区块187。所述系统可生成一个或诸多安全密钥以存储于为此目的而保留的特定区块187中。在此阶段,也可将安全密钥复制至登记系统 198中并维持于密钥数据库198A中。在执行物理不可复制功能且将安全 密钥复制至特定区块187中并将任何必需信息复制至登记系统中之后,可 使用熔丝(fuse)或其他类型的单次写入存储器元件(write once memory element)来设定与特定区块187相关联的锁位,以阻止外部电路或通讯网 络存取安全密钥。此外,在物理不可复制功能中使用的所述特定一组存储 器存储单元189可被擦除或被以其他方式覆写,以消除可存储于存储器阵 列185中的安全密钥的迹象。
图18及图19说明对于不同实施例,非易失性存储器阵列的配置的不 同实例。在图18中,其中存储有安全密钥的存储器存储单元的特定区块 包括第一子区块187A及第二子区块187B。在第一子区块187A中定位有 由物理不可复制功能用于生成安全密钥的一组存储器存储单元。此外,安 全密钥可保持于用于生成数据集的所述一组存储器存储单元中或被移动 至子区块187A中的另一组存储器存储单元。第二子区块187B维持在根 据例如参照图7A至图7D、图8、图12A至图12C、及图13所述程序等 的程序执行物理不可复制功能期间产生的一个存储单元映射或多个存储 单元映射。
图19是其中由物理不可复制功能使用的一组存储器存储单元189位 于存储器阵列185(闪存阵列)中以及用于存储安全密钥的特定区块187 之外的替代方案。在此实例中,用于存储安全密钥的特定区块包括其中在 存储器中维持所述一个安全密钥或多个安全密钥的第一子区块187C。第 二子区块187B维持在物理不可复制功能期间产生的所述一个存储单元映 射或多个存储单元映射。
图20说明在类似图17至图19所示实施例那样的实施例中可用于存 储安全密钥及存储单元映像的数据结构。用于生成安全密钥(在此实例中, 为安全ID)的一组存储器存储单元由安全ID产生器区块代表。在图中, 此区块具有辨识起始位置的「区块」地址且具有位地址1至10。在较佳系 统中,安全ID产生器区块可具有数千个位。此外,与每一位地址相关联 的是提供「码信息」的数据值,所述数据值表示使用例如图8所示程序或 例如图19所示程序所感测的数据值。在利用图20所示映射表或存储单元 映射来对数据集进行寻址的实施例中,某些存储单元中的数据值未被用于 密钥中且因此被视为「随意值」存储单元。所述映像表辨识「随意值」存 储单元的地址以及用于安全密钥的存储单元的地址。因此,此实例中的映 像表具有起始地址以及地址位1至10,所述地址位对应于安全ID产生器 区块中的存储单元的位地址1至10。在存储器存储单元中设定与地址位中 的每一者对应的旗标,进而指示安全ID产生器区块中的有效存储单元(用 于密钥中)或无效存储单元(未用于密钥中)。可通过对映像表与码信息 进行逻辑及(AND)运算来产生密钥数据,其中所述映像表用作屏蔽。如 上所述,安全ID产生器区块是可位于非易失性存储器阵列中任何的处或 位于用于存储安全ID的特定区块中的一组存储器存储单元。在其中所述 一组存储器存储单元是位于用于存储安全ID的特定区块的外的实施例中, 可接着将安全ID产生器区块中的数据复制至所述特定区块。
图21说明利用物理不可复制功能产生安全密钥且将所述密钥存储于 非易失性存储器中的系统的高级配置。所述系统包括耦接至集成电路或多 芯片模块1710的主机1720。集成电路或多芯片模块1710包括物理不可复 制功能电路1711、控制器1712、及安全逻辑1713。控制器1712耦接至物 理不可复制功能电路1711及非易失性存储器1714。
可参照图22针对一些实施例来理解图21所示系统的操作。因此,为 生成可使用的密钥,自物理不可复制功能电路1711产生密钥数据(步骤 1730)。对所述密钥进行分析,以判断其是否满足安全规范,例如是否具 有充足随机性(1731)。若所述密钥满足规范,则经由控制器1712将所述 密钥存储至非易失性存储器1714中(步骤1732)。若所述密钥不满足规范, 则程序循环至步骤1730,以重试物理不可复制功能,进而生成密钥。所述 物理不可复制功能可如以上所述使用一组非易失性存储器存储单元来生 成具有任何长度的安全密钥并重试基于物理不可复制功能的密钥生成程 序。如所说明,物理不可复制功能电路1711与控制器1712将协作来产生 另一密钥,进而循环回至步骤1730直至生成令人满意的密钥为止。否则, 密钥产生即完成,一或多个密钥被存储并准备好供安全逻辑利用。为使用 所述密钥,所述程序包括:自非易失性存储器获取密钥数据(1733),并 在协议中执行安全功能,所述协议涉及主机1720、以及非易失性存储器中 关于一或多个密钥的密钥数据(1734)。可由登记系统为主机1720提供执 行依赖于安全密钥的安全协议所需的数据,或者主机1720可为在设置密 钥期间所使用的系统。可与登记系统或通讯服务器协作地配置安全功能, 以利用多个安全密钥。在一些实施例中,所产生及所存储的安全密钥被利 用仅一次或有限数目的次数,以维持高安全性及高防窥探性。此外,在一 些实施例中,可以一种对于每一通讯会话依赖于单个大密钥的子集的方式 来利用所述大密钥。可根据特定使用环境的需要来实际应用其他安全协 议。在图22所示程序中,在安全程序利用密钥期间,可执行发出信号来 通知应对密钥进行更新的密钥更新协议。此可包括在一时间周期的后或在固定使用次数的后替换密钥。此外,若所使用的数次登入(log in)尝试均 失败或者侦测到表明正尝试猜测密钥的其他事件,则可替换密钥。因此, 图22所示程序包括判断是否更新密钥的步骤(1735)。若密钥需要更新, 则程序循环至步骤1730,且执行物理不可复制功能以更新一或多个密钥。 若在1735处密钥不需要更新,则程序循环至继续使用密钥来支持安全功 能的执行。
当在例如由图22的步骤1731及1735所示的循环中使用物理不可复 制功能来创建新的密钥时,可在一些实施例中使在物理不可复制功能中所 使用的参数移位,以提高在每一循环中生成实质上不同的密钥的可能性。 当然,在使用闪存存储单元的一些实施例中,对相同存储单元应用相同物 理不可复制功能参数可生成充分不同的密钥。在其他实例中,可为每一新 的物理不可复制功能循环改变用于生成初始分布的偏压电压。此外,作为 物理不可复制功能的一部分,可在生成各分布时改变在递增步阶脉冲编程 (ISPP)算法中施加的脉冲的数目。在又一些实例中,在生成脉冲时所利 用的存储器存储单元可自阵列的一个区域中的一组改变成阵列的另一区 域中不同的一组。
在例如图23及图24所示的一些实施例中,可以二个部分来考虑高级 功能。图23说明可在制造期间、或在运送至客户之前、或否则在安全密 钥由系统使用之前执行的功能。在图23中,程序以电源开启事件而开始 (1750)。执行物理不可复制功能,且撷取包括一或多个密钥的密钥数据, 并将所述密钥数据提供至登记系统或其他将需要所述密钥数据的外部系 统(1751)。将密钥数据存储于如上所述的非易失性存储器中(1752)。在 所述密钥数据已被存储于非易失性存储器中的后,保护所述密钥数据不被 外部通讯网络或装置存取(1753)。在现场,程序大体如图24所示而进行, 其中以电源开启事件而开始(1760)。所述程序包括:自非易失性存储器 获取受保护的密钥数据(1761),并使用密钥来与外部装置执行包括通讯 协议(例如查问-响应交换)的安全功能(1762)。
如图25中所说明,物理不可复制功能可使用物理电路1770,例如静 态随机存取存储器电路、可编程电阻存储器存储单元电路(RRAM)、基 于金属的电路、基于延迟的电路、基于振荡器的电路等。通常,在物理不 可复制功能中所使用的电路具有相对低的稳定性,因而需要特殊逻辑或错 误校正以可靠地使用密钥。用于存储安全密钥的非易失性存储器1771可 包括高度稳定的非易失性存储器,例如闪存、可编程电阻存储器(RRAM)、 相变存储器(PCRAM)、单次可编程存储器等。在其他实施例中,由物理 不可复制功能使用的电路1775可具有相对高的稳定性。然而,密钥也可 存储于非易失性存储器1776中,非易失性存储器1776也具有高稳定性, 而且可提供更佳的访问控制以及其他通常可不与物理不可复制功能电路 1775相关联的功能。
在一些实施例中,如图27所示,可利用随机数产生器(random number generator)1780来生成安全密钥,所述安全密钥接着可被存储于非易失性 存储器1781中并在例如本公开所述系统等的系统中使用。
在一些实施例中,如图28所示,物理不可复制功能电路1785可以第 一等级来生成具有例如1024个位的安全信息。可将此种处于第一等级的 安全信息提供至逻辑电路1786,逻辑电路1786使用例如哈希函数将第一 等级数据变换成具有例如128个位的第二等级信息、或者根据处于第一等 级的安全信息而产生的其他字节合。接着,可将第二等级信息存储至非易 失性存储器1787中。
在本公开的一个实施例中,对类似图6、图8、图9、图11、图13、 及图15所示程序那样的程序以及本公开所述的其他程序的执行进行控制 的计算机程序,可作为指令存储于一个计算机可读取存储器或多于一个存 储器上,其中所述存储器包括非暂时性计算机可读取数据存储介质。使用 所述计算机可读取存储器,物理不可复制功能机器(例如,处理器系统410, 图2)可引起对一组可编程存储器存储单元中的可编程存储器存储单元进 行扫描,且可应用本公开所述的程序来基于物理不可复制功能生成稳定数 据集。
此外,如上所述,包括所述一组可编程存储器存储单元的集成电路可 包括状态机或其他被配置成执行该些程序的逻辑资源。在其他一些替代方 案中,可利用由物理不可复制功能机器执行的计算机程序与在集成电路上 实际应用的逻辑的组合。
在本公开所述的实施例中,使用具有临限电压的起始分布的一组存储 器存储单元来建立稳定数据集。此一组存储器存储单元可为大型存储器阵 列的一部分,例如图3、图16、及图17中所示。作为另一选择,所述一 组存储器存储单元可为专门提供的一组存储器存储单元。在其中集成电路 的任务功能包括存储器阵列的实施例中,用于此种目的的所述一组存储器 存储单元可具有与所述阵列中的存储器存储单元相同的结构或者可具有 不同的结构。此外,所使用的所述一组存储器存储单元可在集成电路上安 置成任一图案,包括紧凑式阵列图案或分布式图案。
在实施例中,可多次重新使用用于建立起始分布的一组存储器存储单 元来生成具有相异内容的多个稳定数据集。因此,可在部署此种实施例的 系统中提供逻辑,以对一个集成电路上的存储器存储单元利用物理不可复 制功能程序,进而产生可在与所述一个集成电路进行通讯的其他装置中共 享的独有数据集。
如上所述,本公开所述的实例是基于使用电荷俘获存储器存储单元, 例如闪存。在一些实施例中(包括在如图3、图16、及图17所示而配置 的实施例中),所述技术可扩展至其他可编程存储器存储单元技术,包括 基于金属氧化物的可编程电阻存储单元、基于相变材料的可编程电阻存储 单元、磁阻式存储器(magneto-resistive memory)、以及其他种类的特征在 于能够用于建立起始分布的存储器存储单元技术,在所述起始分布中,作 为经历共同处理的结果,临限电压或临限电阻相对于存储器存储单元的地 址而随机地变化。
如本公开所述而产生的数据集可具有为特定集成电路所独有的内容。 例如在安全协议的实例中,所述数据集可用于形成对查问的回应。所述数 据集可用作加密协定中的密钥。所述数据集可用作独有辨识符。所述数据 集可用作随机密钥。
本公开所述技术的各种实施例包括以下实施例。
在一个实施例中,阐述一种在包括一组可编程存储器存储单元的集成 电路上产生数据集的方法。所述方法可包括:使曝露于所述集成电路上具 有地址的所述一组可编程存储器存储单元经过共同处理后引入相异的临 限值,且所述一组可编程存储器存储单元位于一个起始分布的范围内。所 述方法也可包括:(1)查找所述一组可编程存储器存储单元的具有处于所 述起始分布的第一部分中的临限值的第一子集、以及所述一组可编程存储 器存储单元的具有处于所述起始分布的第二部分中的临限值的第二子集; 以及(2)使用所述第一子集及所述第二子集中的至少一者的所述地址来 产生所述数据集。
所述共同处理可包括:在制造期间的刻蚀步骤或沉积步骤,所述刻蚀 步骤或所述沉积步骤在所述一组中的所述可编程存储器存储单元的电荷 存储结构中引发电荷被俘获。所述共同处理也可包括:使用所述集成电路 上的偏压施加电路进行偏压施加操作,以在所述一组中的所述可编程存储 器存储单元的电荷存储结构中引发电荷。
在一个实施例中,阐述一种制造集成电路的方法。所述方法可包括: 在所述集成电路上形成多个可编程存储器存储单元;将所述集成电路连接 至系统,所述系统被配置成与所述集成电路交换信号;以及使用所述系统 通过以下方式在所述多个可编程存储器存储单元中具有临限值的起始分 布的一组可编程存储器存储单元中产生数据集:(1)查找所述一组可编程 存储器存储单元的具有处于所述起始分布的第一部分中的临限值的第一子集、以及所述一组可编程存储器存储单元的具有处于所述起始分布的第 二部分中的临限值的第二子集;以及(2)使用所述第一子集及所述第二 子集中的至少一者的地址来产生所述数据集。
在一个实施例中,阐述一种电子装置。所述电子装置可包括:一组可 编程存储器存储单元,位于集成电路上;逻辑,用于使用所述一组可编程 存储器存储单元通过以下方式来产生数据集,其中所述一组可编程存储器 存储单元具有临限值的起始分布:(1)查找所述一组可编程存储器存储单 元的具有处于所述起始分布的第一部分中的临限值的第一子集、以及所述 一组可编程存储器存储单元的具有处于所述起始分布的第二部分中的临限值的第二子集;以及(2)使用所述第一子集及所述第二子集中的至少 一者的地址来产生所述数据集。
在一个实施例中,阐述一种产品。所述产品可包括计算机可读取非暂 时性数据存储介质,所述计算机可读取非暂时性数据存储介质存储用于在 包括一组可编程存储器存储单元的集成电路上产生数据集的程序的指令, 所述指令能够由被配置成连接至所述集成电路的系统执行。所述的程序可 包括:(1)查找所述一组可编程存储器存储单元的具有处于起始分布的第 一部分中的临限值的第一子集、以及所述一组可编程存储器存储单元的具 有处于所述起始分布的第二部分中的临限值的第二子集;以及(2)使用 所述第一子集及所述第二子集中的至少一者的地址来产生所述数据集。
实施例中所述的查找步骤可包括:确定所述起始分布的所述第一部分 与所述起始分布的所述第二部分之间的分界线,以使所述一组中具有位于 所述分界线以下的临限值的所述可编程存储器存储单元的计数对所述一 组中具有位于所述分界线以上的临限值的所述可编程存储器存储单元的 计数的比率处于目标比率范围内。
实施例中所述的使用地址步骤可包括:使用所述第一子集及所述第二 子集中的所述至少一者中的可编程存储器存储单元的所述地址来选择所 述可编程存储器存储单元;对所述所选择的可编程存储器存储单元应用偏 压施加操作,作为所述一组可编程存储器存储单元建立临限值的改变后分 布,所述改变后分布在所述第一子集与所述第二子集之间具有感测容限; 以及使用所述感测容限中的读取电压来读取所述一组中的所述可编程存 储器存储单元,以产生所述数据集。所述使用地址步骤也可包括:根据所 述第一子集及所述第二子集中的所述至少一者中的成员身份来组合所述 第一子集及所述第二子集中的所述至少一者中的存储器存储单元的所述 地址;以及使用所述经组合的地址作为所述数据集。
在一个实施例中,阐述一种在集成电路上产生数据集的方法。所述集 成电路包括一组可编程存储器存储单元,且所述可编程存储器存储单元具 有起始分布中的临限值。所述方法包括:查找所述一组可编程存储器存储 单元的具有处于所述起始分布的第一部分中的临限值的第一子集、以及所 述一组可编程存储器存储单元的具有处于所述起始分布的第二部分中的 临限值的第二子集。所述方法可包括:应用偏压施加操作,作为所述一组中的所述可编程存储器存储单元建立临限值的改变后分布,所述改变后分 布在所述第一子集与所述第二子集之间具有感测容限;以及使用所述改变 后分布来提供所述数据集。
在一个实施例中,阐述一种在集成电路上产生数据集的方法。所述集 成电路包括一组可编程存储器存储单元,且所述可编程存储器存储单元具 有起始分布中的临限值。所述方法包括:查找所述一组可编程存储器存储 单元的具有处于所述起始分布的第一部分中的临限值的第一子集、以及所 述一组可编程存储器存储单元的具有处于所述起始分布的第二部分中的 临限值的第二子集。所述方法可包括:组合所述第一子集及所述第二子集中的至少一者中的所述可编程存储器存储单元的地址;以及使用经组合的 地址来提供所述数据集。
在一个实施例中,阐述一种装置。所述装置可包括:一组电荷俘获存 储器存储单元;以及电路系统,能够存取所述一组电荷俘获存储器存储单 元,以使用所述一组电荷俘获存储器存储单元来提供数据集,所述数据集 是所述一组电荷俘获存储器存储单元的不同成员由于在所述一组中的所 述电荷俘获存储器存储单元中的电荷存储结构中引发电荷俘获的共同处 理而具有的相异临限电压的函数。所述的一组电荷俘获存储器存储单元具有次序且所述相异临限电压具有起始分布,并且所述数据集是所述一组电 荷俘获存储器存储单元的具有位于所述起始分布的一部分中的临限电压 的子集的按照所述次序的位置的函数。
在一个实施例中,阐述一种在包括一组可编程存储器存储单元的集成 电路上产生数据集的方法。所述方法包括:使曝露于所述集成电路上具有 地址的所述一组可编程存储器存储单元经过共同处理后引入相异的临限 值,且所述一组可编程存储器存储单元位于一个起始分布的范围内。所述 方法也包括:(1)查找所述起始分布中的第一分界线及与所述第一分界线 不同的第二分界线;(2)辨识所述一组可编程存储器存储单元的具有处于所述起始分布的第一部分中所述第一分界线以下的临限值的第一子集、以 及所述一组可编程存储器存储单元的具有处于所述起始分布的第二部分 中所述第二分界线以上的临限值的第二子集;以及(3)使用所述第一子 集及所述第二子集中的至少一者的地址来产生所述数据集。
在一个实施例中,阐述一种制造集成电路的方法。所述方法可包括: 在所述集成电路上形成多个可编程存储器存储单元;将所述集成电路连接 至系统,所述系统被配置成与所述集成电路交换信号;以及使用所述系统 通过以下方式在所述多个可编程存储器存储单元中具有临限值的起始分 布的一组可编程存储器存储单元中产生数据集:(1)查找所述起始分布中 的第一分界线及与所述第一分界线不同的第二分界线;(2)辨识所述一组可编程存储器存储单元的具有处于所述起始分布的第一部分中所述第一 分界线以下的临限值的第一子集、以及所述一组可编程存储器存储单元的 具有处于所述起始分布的第二部分中所述第二分界线以上的临限值的第 二子集;以及(3)使用所述第一子集及所述第二子集中的至少一者的地 址来产生所述数据集。
在一个实施例中,阐述一种装置。所述装置包括:一组可编程存储器 存储单元,位于集成电路上;以及逻辑,用于使用所述一组可编程存储器 存储单元通过以下方式来产生数据集,其中所述一组存储器存储单元具有 临限值的起始分布:(1)查找所述起始分布中的第一分界线及与所述第一 分界线不同的第二分界线;(2)辨识所述一组可编程存储器存储单元的具 有处于所述起始分布的第一部分中所述第一分界线以下的临限值的第一 子集、以及所述一组可编程存储器存储单元的具有处于所述起始分布的第 二部分中所述第二分界线以上的临限值的第二子集;以及(3)使用所述 第一子集及所述第二子集中的至少一者的地址来产生所述数据集。
在一个实施例中,阐述一种产品。所述产品包括计算机可读取非暂时 性数据存储介质,所述计算机可读取非暂时性数据存储介质存储用于在包 括可编程存储器存储单元的集成电路上产生数据集的程序的指令,所述指 令能够由被配置成连接至集成电路的系统执行。所述程序包括:(1)查找 所述起始分布中的第一分界线及与所述第一分界线不同的第二分界线; (2)辨识所述一组可编程存储器存储单元的具有处于所述起始分布的第一部分中所述第一分界线以下的临限值的第一子集、以及所述一组可编程 存储器存储单元的具有处于所述起始分布的第二部分中所述第二分界线 以上的临限值的第二子集;以及(3)使用所述第一子集及所述第二子集 中的至少一者的地址来产生所述数据集。
实施例中所述的查找所述第一分界线及所述第二分界线的步骤可包 括:确定所述起始分布中的临限电压,所述临限电压使具有低于所述临限 电压的临限值的存储器存储单元的计数对具有高于所述临限电压的临限 值的存储器存储单元的计数的比率处于目标比率范围内,并通过自所述临 限电压减去第一常数来设定所述第一分界线,并且通过对所述临限电压加 上第二常数来设定所述第二分界线。所述查找步骤也可包括:使用移动的第一读取电压来迭代地读取所述一组可编程存储器存储单元中的数据值, 并对所述一组中具有低于所述第一读取电压的临限值的存储器存储单元 进行计数,并且使用使所述计数处于第一目标计数范围内的所述第一读取 电压来设定所述第一分界线。所述查找步骤也可包括:使用移动的第二读 取电压迭代地读取所述一组可编程存储器存储单元中的数据值,并对所述 一组中具有高于所述第二读取电压的临限值的存储器存储单元进行计数,并且使用使所述计数处于第二目标计数范围内的所述第二读取电压来设 定所述第二分界线。
实施例中所述的产生所述数据集的步骤可包括:使用所述地址来选择 所述第一子集及所述第二子集中的一者中的所述可编程存储器存储单元; 以及使用所述第一分界线与所述第二分界线之间的读取电压来读取所述 一组可编程存储器存储单元中的所述可编程存储器存储单元。所述产生步 骤也可包括:根据所述第一子集及所述第二子集中的所述至少一者中的成 员身份来组合所述第一子集及所述第二子集中的所述至少一者中的所述 可编程存储器存储单元的所述地址。
实施例中所述的共同处理可包括在制造期间的刻蚀步骤或沉积步骤, 所述刻蚀步骤或所述沉积步骤在所述一组中的所述可编程存储器存储单 元的电荷存储结构中引发电荷俘获。所述共同处理也可包括:使用所述集 成电路上的偏压施加电路进行偏压施加操作,以在所述一组中的所述可编 程存储器存储单元的电荷存储结构中引发电荷。
在一个实施例中,阐述一种在包括可编程存储器存储单元的集成电路 上产生数据集的方法。所述方法包括:存储一组存储器存储单元中具有处 于所述一组中的存储器存储单元的临限值的分布的第一子分布中的临限 值的存储器存储单元的地址;以及使用所述所存储地址来产生所述数据 集。
在一个实施例中,阐述一种集成电路。所述集成电路包括:一组可编 程存储器存储单元,位于集成电路上且具有临限值的分布;存储器,存储 所述一组可编程存储器存储单元中具有处于临限值的所述分布的第一子 分布中的临限值的存储器存储单元的地址;以及逻辑,用于使用所述所存 储地址来产生数据集。
所述分布的特征在于是使用物理不可复制功能而形成。所述第一子分 布通过感测容限与第二子分布分开,且所述逻辑被配置成通过以下方式来 产生所述数据集:按照地址次序读取所述一组可编程存储器存储单元中的 所述存储器存储单元,以产生根据是否为所述第一子分布中的成员身份而 变化的数据值。所述存储器另外存储所述一组存储器存储单元中临限值处 于所述一组中的存储器存储单元的临限值的分布的第二子分布中的存储 器存储单元的地址;且所述逻辑被配置成产生所述数据集包括使用所述第 一子分布及所述第二子分布的所述所存储地址。所述存储器另外为临限值 的分布存储第一分界线及与所述第一分界线不同的第二分界线,其中所述 第一子分布中的所述存储器存储单元包括所述一组存储器存储单元的具 有位于所述第一分界线以下的临限值的第一子集,且所述第二子分布中的 所述存储器存储单元包括所述一组存储器存储单元的具有位于所述第二 分界线以上的临限值的第二子集。
实施例中所述的逻辑被配置成通过以下方式来产生所述数据集:使用 所述地址来选择所述第一子集及所述第二子集中的一者中的存储器存储 单元;以及使用所述第一分界线与所述第二分界线的间的读取电压来读取 所述一组可编程存储器存储单元中的存储器存储单元。所述的逻辑可被配 置成使用所述集成电路上的偏压施加电路应用在所述一组中的所述可编 程存储器存储单元的电荷存储结构中引发改变以建立所述分布的偏压施 加操作;以及对查问输入作出响应以使用所述数据集来产生响应输出。所 述逻辑可包括所述集成电路上的状态机。
在本公开所述的实施例中,所述一组中的所述可编程存储器存储单元 是电荷俘获存储器存储单元,且所述临限值是临限电压。
在一个实施例中,阐述一种存储器电路。所述存储器电路包括:(1) 非易失性存储器阵列,包括由存储器存储单元形成的多个区块且包括存储 于所述多个区块中的特定区块中的安全密钥;(2)端口,用于自所述阵列 进行外部通讯;(3)安全逻辑,耦接至所述存储器阵列,所述安全逻辑在 协议中利用所述安全密钥来允许存取存储于所述多个区块中的各区块中 的数据;以及(4)访问控制电路,耦接至所述阵列,所述访问控制电路 包括用于允许所述安全逻辑对所述特定区块进行只读存取以供在所述协 议中使用、并阻止经由所述端口存取所述特定区块的逻辑。
在一个实施例中,阐述一种包括封装式集成电路或多芯片模块的装 置。所述装置包括:(1)非易失性存储器阵列,包括由存储器存储单元形 成的多个区块且包括存储于所述多个区块中的特定区块中的安全密钥; (2)端口,用于自所述阵列进行外部通讯;(3)安全逻辑,耦接至所述 存储器阵列,所述安全逻辑在协议中利用所述安全密钥来允许存取存储于 所述多个区块中的各区块中的数据;以及(4)访问控制电路,耦接至所 述阵列,所述访问控制电路包括用于允许所述安全逻辑对所述特定区块进 行只读存取以供在所述协议中使用、并阻止经由所述端口存取所述特定区 块的逻辑。
在一个实施例中,阐述一种操作包括非易失性存储器阵列的电路的方 法。所述方法包括:(1)将安全密钥存储于所述非易失性存储器阵列的多 个区块中的特定区块中;(2)由外部装置或通讯网络使用端口自所述阵列 存取数据;(3)由耦接至所述非易失性存储器阵列的安全逻辑电路在协议 中利用存储于所述特定区块中的所述安全密钥来允许存取存储于所述多 个区块中的各区块中的数据;(4)允许所述安全逻辑对所述特定区块进行 只读存取以供在所述协议中使用,并阻止经由所述端口存取所述特定区 块。
本公开所述的协议包括查问/响应协议,所述查问/响应协议包括经由 所述端口进行数据交换。
本公开所述的访问控制电路具有其中允许经由所述端口存取所述特 定区块以写入所述安全密钥的第一状态、其中禁止经由所述端口存取所述 特定区块来进行读取或写入、并允许所述安全逻辑存取所述特定区块来进 行读取的第二状态。所述的访问控制电路包括允许或禁止存取所述多个区 块中的对应区块的区块锁位。
在实施例中,所述封装式集成电路或多芯片模块中包括逻辑。所述逻 辑可将使用所述一组存储器存储单元生成的安全密钥存储至所述特定区 块中,且可使用存储器阵列中的一组存储器存储单元来执行功能以生成所 述安全密钥。所述一组存储器存储单元位于所述特定区块中。
所述的安全密钥包括位于所述一组存储器存储单元的子集中的数据 值、以及辨识所述子集中的成员以供所述安全逻辑使用的地址映像。
所述存储器阵列、所述端口、所述安全逻辑、及所述访问控制电路可 安置于单个集成电路上。
尽管参照以上所详述的较佳实施例及实例公开了本发明,然而,应理 解,该些实例旨在具有说明性意义而非限制性意义。预期本领域技术人员 容易想到的润饰及组合,所述润饰及组合将处于本发明的精神及申请专利 的权利要求所保护的范围内。
以上所述的具体实施例,对本发明的目的、技术方案和有益效果进行 了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施例而 已,并不用于限制本发明,凡在本发明的精神和原则之内,所做的任何修 改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (30)

1.一种存储器电路,包括:
非易失性存储器阵列,包括由存储器存储单元形成的多个区块,且包括存储于所述多个区块中的特定区块中的第一安全密钥;
端口,用于自所述非易失性存储器阵列进行外部通讯;
安全逻辑,耦接至所述非易失性存储器阵列,所述安全逻辑在协议中利用所述第一安全密钥来允许存取存储于所述多个区块中的各区块中的数据;以及
访问控制电路,耦接至所述非易失性存储器阵列,所述访问控制电路包括允许所述第一安全逻辑对所述特定区块进行只读存取,以供在所述协议中使用、并阻止经由所述端口存取所述特定区块的逻辑。
2.根据权利要求1所述的电路,包括存储于所述特定区块中的多个安全密钥,所述多个安全密钥包括所述第一安全密钥。
3.根据权利要求2所述的电路,其中所述安全逻辑用以使所述多个安全密钥中的特定安全密钥被使用一次或有限数目的次数,来允许存取存储于所述多个区块中的各区块中的数据。
4.根据权利要求1所述的电路,其中所述协议包括查问/响应协议,所述查问/响应协议包括经由所述端口进行数据交换。
5.根据权利要求1所述的电路,其中所述访问控制电路具有其中允许经由所述端口存取所述特定区块以写入所述第一安全密钥的第一状态、其中禁止经由所述端口存取所述特定区块来进行读取或写入、且允许所述第一安全逻辑存取所述特定区块来进行读取的第二状态。
6.根据权利要求1所述的电路,包括用于使用所述非易失性存储器阵列中的一组存储器存储单元来执行功能以生成所述第一安全密钥的逻辑。
7.根据权利要求4所述的电路,其中所述一组存储器存储单元位于所述特定区块中。
8.根据权利要求4所述的电路,包括用于将使用所述一组存储器存储单元生成的所述第一安全密钥存储至所述特定区块中的逻辑。
9.根据权利要求1所述的电路,包括用于执行物理不可复制功能来生成所述第一安全密钥并将所述第一安全密钥存储于所述特定区块中的逻辑。
10.根据权利要求2所述的电路,包括用于使用所述非易失性存储器阵列中的一组存储器存储单元来执行物理不可复制功能以生成所述多个安全密钥并将所述多个安全密钥存储于所述特定区块中的逻辑。
11.根据权利要求10所述的电路,其中所述一组存储器存储单元位于所述特定区块中。
12.根据权利要求1所述的电路,其中所述安全密钥包括:
数据值,位于所述一组存储器存储单元的子集中;以及
地址映像,辨识所述子集中的成员以供所述第一安全逻辑使用。
13.根据权利要求1所述的电路,其中所述存储器阵列、所述端口、所述第一安全逻辑、及所述访问控制电路安置于单个集成电路上。
14.根据权利要求1所述的电路,其中所述访问控制电路包括区块锁位,所述区块锁位允许或禁止存取所述多个区块中的对应区块。
15.一种包括封装式集成电路或多芯片模块的电子装置,所述封装式集成电路或多芯片模块包括:
非易失性存储器阵列,包括由存储器存储单元形成的多个区块,且包括存储于所述多个区块中的特定区块中的第一安全密钥;
端口,用于自所述非易失性存储器阵列进行外部通讯;
安全逻辑,耦接至所述非易失性存储器阵列,所述第一安全逻辑在协议中利用所述第一安全密钥来允许存取存储于所述多个区块中的各区块中的数据;以及
访问控制电路,耦接至所述非易失性存储器阵列,所述访问控制电路包括用于允许所述第一安全逻辑对所述特定区块进行只读存取以供在所述协议中使用、并阻止经由所述端口存取所述特定区块的逻辑。
16.根据权利要求15所述的电子装置,包括存储于所述特定区块中的多个安全密钥,所述多个安全密钥包括所述第一安全密钥。
17.根据权利要求16所述的电子装置,其中所述安全逻辑用以使所述多个安全密钥中的特定安全密钥被使用一次或有限数目的次数,来允许存取存储于所述多个区块中的各区块中的数据。
18.根据权利要求15所述的电子装置,其中所述协议包括查问/响应协议,所述查问/响应协议包括经由所述端口进行数据交换。
19.根据权利要求15所述的电子装置,其中所述访问控制电路具有其中允许经由所述端口存取所述特定区块以写入所述第一安全密钥的第一状态、其中禁止经由所述端口存取所述特定区块来进行读取或写入、且允许所述第一安全逻辑存取所述特定区块来进行读取的第二状态。
20.根据权利要求15所述的电子装置,在所述封装式集成电路或多芯片模块中包括用于使用所述非易失性存储器阵列中的一组存储器存储单元来执行功能,以生成所述第一安全密钥的逻辑。
21.根据权利要求20所述的电子装置,其中所述一组存储器存储单元位于所述特定区块中。
22.根据权利要求20所述的电子装置,在所述封装式集成电路或多芯片模块中包括用于将使用所述一组存储器存储单元生成的所述第一安全密钥存储至所述特定区块中的逻辑。
23.根据权利要求15所述的电子装置,在所述封装式集成电路或多芯片模块中包括用于执行物理不可复制功能,以生成所述第一安全密钥并将所述第一安全密钥存储于所述特定区块中的逻辑。
24.根据权利要求16所述的电子装置,包括用于使用所述非易失性存储器阵列中的一组存储器存储单元来执行物理不可复制功能以生成所述多个安全密钥并将所述多个安全密钥存储于所述特定区块中的逻辑。
25.根据权利要求24所述的电子装置,其中所述一组存储器存储单元位于所述特定区块中。
26.根据权利要求15所述的电子装置,其中所述第一安全密钥包括:数据值,位于所述一组存储器存储单元的子集中;以及地址映像,辨识所述子集中的成员以供所述安全逻辑使用。
27.一种操作方法,适于操作包括非易失性存储器阵列的电路,包括:
将第一安全密钥存储于所述非易失性存储器阵列的多个区块中的特定区块中;
在耦接至所述非易失性存储器阵列的安全逻辑电路中,在协议中利用存储于所述特定区块中的所述第一安全密钥来允许外部装置或通讯网络经由端口存取存储于所述多个区块中的各区块中的数据;以及
允许所述安全电路对所述特定区块进行只读存取以供在所述协议中使用,并阻止经由所述端口存取所述特定区块。
28.根据权利要求27所述的操作方法,其中所述协议包括查问/响应协议,所述查问/响应协议包括经由所述端口进行数据交换。
29.根据权利要求27所述的操作方法,包括通过对所述特定区块中的一组存储器存储单元应用物理不可复制功能来产生所述安全密钥。
30.根据权利要求27所述的操作方法,包括产生多个安全密钥并将所述多个安全密钥存储于所述特定区块中,所述多个安全密钥包括所述第一安全密钥。
CN201710655360.9A 2016-08-04 2017-08-03 电子装置及其存储器电路与其操作方法 Active CN107689237B (zh)

Applications Claiming Priority (12)

Application Number Priority Date Filing Date Title
US201662370736P 2016-08-04 2016-08-04
US62/370,736 2016-08-04
US201662423753P 2016-11-17 2016-11-17
US62/423,753 2016-11-17
US201662430196P 2016-12-05 2016-12-05
US62/430,196 2016-12-05
US201662431835P 2016-12-09 2016-12-09
US62/431,835 2016-12-09
US201662435092P 2016-12-16 2016-12-16
US201662435337P 2016-12-16 2016-12-16
US62/435,337 2016-12-16
US62/435,092 2016-12-16

Publications (2)

Publication Number Publication Date
CN107689237A true CN107689237A (zh) 2018-02-13
CN107689237B CN107689237B (zh) 2021-03-05

Family

ID=61069224

Family Applications (3)

Application Number Title Priority Date Filing Date
CN201710658839.8A Active CN107689238B (zh) 2016-08-04 2017-08-03 电子装置、产品及制造集成电路方法及产生数据集的方法
CN201710655360.9A Active CN107689237B (zh) 2016-08-04 2017-08-03 电子装置及其存储器电路与其操作方法
CN201710659006.3A Active CN107689243B (zh) 2016-08-04 2017-08-03 电子装置、产品及制造集成电路方法及产生数据集的方法

Family Applications Before (1)

Application Number Title Priority Date Filing Date
CN201710658839.8A Active CN107689238B (zh) 2016-08-04 2017-08-03 电子装置、产品及制造集成电路方法及产生数据集的方法

Family Applications After (1)

Application Number Title Priority Date Filing Date
CN201710659006.3A Active CN107689243B (zh) 2016-08-04 2017-08-03 电子装置、产品及制造集成电路方法及产生数据集的方法

Country Status (3)

Country Link
US (4) US10715340B2 (zh)
CN (3) CN107689238B (zh)
TW (3) TWI685742B (zh)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110556144A (zh) * 2018-05-31 2019-12-10 旺宏电子股份有限公司 存储器装置的编程方法
CN110659226A (zh) * 2018-06-28 2020-01-07 晨星半导体股份有限公司 用以存取数据的方法以及相关电路
CN111723409A (zh) * 2019-03-22 2020-09-29 旺宏电子股份有限公司 集成电路、存储器电路以及用于操作集成电路的方法
US11044108B1 (en) 2019-12-24 2021-06-22 CERA Licensing Limited Temperature sensing physical unclonable function (PUF) authentication system
CN114444140A (zh) * 2020-11-02 2022-05-06 旺宏电子股份有限公司 存储器中的不可复制函数应用
CN115398544A (zh) * 2019-12-26 2022-11-25 美光科技公司 基于内容可寻址存储器架构的存储器装置数据安全
US11516028B2 (en) 2019-12-24 2022-11-29 CERA Licensing Limited Temperature sensing physical unclonable function (PUF) authentication system

Families Citing this family (42)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8314024B2 (en) * 2008-12-19 2012-11-20 Unity Semiconductor Corporation Device fabrication
US10855477B2 (en) 2016-08-04 2020-12-01 Macronix International Co., Ltd. Non-volatile memory with physical unclonable function and random number generator
US10715340B2 (en) 2016-08-04 2020-07-14 Macronix International Co., Ltd. Non-volatile memory with security key storage
US10680809B2 (en) 2016-08-04 2020-06-09 Macronix International Co., Ltd. Physical unclonable function for security key
US10911229B2 (en) 2016-08-04 2021-02-02 Macronix International Co., Ltd. Unchangeable physical unclonable function in non-volatile memory
US11258599B2 (en) 2016-08-04 2022-02-22 Macronix International Co., Ltd. Stable physically unclonable function
EP3435586B1 (en) * 2017-07-25 2019-08-07 Intrinsic ID B.V. Method to reduce aging of a cache memory
WO2019027839A1 (en) * 2017-08-03 2019-02-07 Arizona Board Of Regents On Behalf Of Northern Arizona University GENERATION OF NATIVE TERNARY RANDOM NUMBERS
US10340267B1 (en) 2017-12-29 2019-07-02 Micron Technology, Inc. Semiconductor devices including control logic levels, and related memory devices, control logic assemblies, electronic systems, and methods
US10297290B1 (en) 2017-12-29 2019-05-21 Micron Technology, Inc. Semiconductor devices, and related control logic assemblies, control logic devices, electronic systems, and methods
US10366983B2 (en) * 2017-12-29 2019-07-30 Micron Technology, Inc. Semiconductor devices including control logic structures, electronic systems, and related methods
US11265151B2 (en) * 2018-03-09 2022-03-01 Arizona Board Of Regents On Behalf Of Northern Arizona University Key exchange schemes with addressable elements
US11308239B2 (en) * 2018-03-30 2022-04-19 Seagate Technology Llc Jitter attack protection circuit
US10839872B2 (en) * 2018-07-03 2020-11-17 Ememory Technology Inc. Random bit cell using an initial state of a latch to generate a random bit
TWI663601B (zh) * 2018-07-23 2019-06-21 華邦電子股份有限公司 半導體裝置
US10727235B2 (en) * 2018-07-30 2020-07-28 Nscore, Inc. Secure fingerprint data generating device
TWI692763B (zh) 2018-09-07 2020-05-01 大陸商合肥沛睿微電子股份有限公司 記憶體控制裝置、快閃記憶體的控制方法及快閃記憶體的安全特徵的生成方法
US11449310B2 (en) 2018-09-07 2022-09-20 Raymx Microelectronics Corp. Random number generator, encryption/decryption secret key generator and method based on characteristics of memory cells
CN110908588B (zh) * 2018-09-14 2023-04-28 合肥沛睿微电子股份有限公司 记忆体控制装置、控制方法及其安全特征的生成方法
US11461525B2 (en) * 2018-10-31 2022-10-04 Taiwan Semiconductor Manufacturing Company, Ltd. PUF cell array, system and method of manufacturing same
US10361700B1 (en) * 2018-12-24 2019-07-23 Taiwan Semiconductor Manufacturing Co., Ltd. Testing method to quantify process variation distribution in physically unclonable function device, computer readable medium thereof
US11469909B2 (en) 2018-12-28 2022-10-11 Micron Technology, Inc. Physical unclonable function with NAND memory array
US11514174B2 (en) * 2019-01-23 2022-11-29 Micron Technology, Inc. Memory devices with cryptographic components
US10439829B1 (en) * 2019-02-01 2019-10-08 Winbond Electronics Corp. Physical unclonable function code generating method and providing apparatus thereof
US10910062B2 (en) 2019-02-12 2021-02-02 Ememory Technology Inc. Random bit cell with nonvolatile memory cell
FR3093231A1 (fr) * 2019-02-22 2020-08-28 Stmicroelectronics (Rousset) Sas Dispositif de fonction physiquement non clonable à transistors à grille flottante, et procédé de réalisation
US10838631B2 (en) * 2019-02-25 2020-11-17 International Business Machines Corporation Detection of alteration of storage keys used to protect memory
US11050569B2 (en) * 2019-08-14 2021-06-29 Macronix International Co., Ltd. Security memory scheme
CN112417528A (zh) * 2019-08-23 2021-02-26 雅特力科技(重庆)有限公司 用来管理支持数据存储的安全程序库的方法与电子装置
US12132832B2 (en) 2019-12-30 2024-10-29 Micron Technology, Inc. Secure key update for replay protected memory blocks
KR20210102740A (ko) * 2020-02-12 2021-08-20 삼성전자주식회사 물리적 복제 방지 기능에 기초하여 키를 생성하는 보안 장치 및 이의 동작 방법
US11209993B2 (en) * 2020-03-24 2021-12-28 Sandisk Technologies Llc Physical unclonable function (PUF) for NAND operator
US11501023B2 (en) 2020-04-30 2022-11-15 International Business Machines Corporation Secure chip identification using resistive processing unit as a physically unclonable function
CN111740965B (zh) * 2020-06-09 2022-08-19 河海大学常州校区 一种基于物理不可克隆方程的物联网设备认证方法
US11977856B2 (en) * 2021-01-25 2024-05-07 International Business Machines Corporation Random number generation from SRAM cells
CN114822640A (zh) 2021-01-28 2022-07-29 威比特纳诺有限公司 用于电阻式随机存取存储器编程的电流和电压限制电路
KR20220167979A (ko) 2021-06-15 2022-12-22 삼성전자주식회사 물리적 복제 방지 기능을 갖는 메모리 장치 및 이를 포함하는 메모리 시스템
US12126740B2 (en) 2021-06-25 2024-10-22 Arizona Board Of Regents On Behalf Of Northern Arizona University Systems and methods using search engines to generate cryptographic keys from erratic physical unclonable functions
CN114441922B (zh) * 2022-04-02 2022-06-14 深圳市赛元微电子有限公司 一种半导体器件测试装置
US20230397440A1 (en) * 2022-06-07 2023-12-07 Taiwan Semiconductor Manufacturing Company, Ltd. Novel selector for memory device
TWI822270B (zh) * 2022-08-24 2023-11-11 旺宏電子股份有限公司 記憶體裝置及其程式化方法
TWI828568B (zh) * 2023-03-27 2024-01-01 華邦電子股份有限公司 物理不可複製函數代碼產生裝置及物理不可複製函數代碼的產生方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5442704A (en) * 1994-01-14 1995-08-15 Bull Nh Information Systems Inc. Secure memory card with programmed controlled security access control
CN101681657A (zh) * 2007-06-12 2010-03-24 Nxp股份有限公司 安全存储器
CN102460458A (zh) * 2009-06-17 2012-05-16 微软公司 存储设备的远程访问控制
CN103201746A (zh) * 2010-11-08 2013-07-10 英特尔公司 用于数据存储装置处的安全管理供应的技术
US20160301534A1 (en) * 2015-04-07 2016-10-13 Globalfoundries Inc. Method, apparatus and system for security application for integrated circuit devices

Family Cites Families (91)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7043615B1 (en) 2000-06-02 2006-05-09 Renesas Technology Corp. Nonvolatile semiconductor memory and method of managing information in information distribution system
US6947556B1 (en) 2000-08-21 2005-09-20 International Business Machines Corporation Secure data storage and retrieval with key management and user authentication
JP2002073424A (ja) 2000-08-31 2002-03-12 Mitsubishi Electric Corp 半導体装置、端末装置および通信方法
US7840803B2 (en) 2002-04-16 2010-11-23 Massachusetts Institute Of Technology Authentication of integrated circuits
EP1629628B1 (en) 2003-05-21 2010-07-14 Koninklijke Philips Electronics N.V. Method and system for authentication of a physical object
US8391070B2 (en) 2008-12-02 2013-03-05 Spansion Llc Moving program verify level for programming of memory
CN101317361A (zh) 2005-11-29 2008-12-03 皇家飞利浦电子股份有限公司 使用cpuf的邻近证明
US8290150B2 (en) 2007-05-11 2012-10-16 Validity Sensors, Inc. Method and system for electronically securing an electronic device using physically unclonable functions
US8130955B2 (en) 2007-12-21 2012-03-06 Spansion Llc Random number generation through use of memory cell activity
US7979658B2 (en) 2008-03-25 2011-07-12 Spansion Llc Secure management of memory regions in a memory
WO2010030701A1 (en) 2008-09-12 2010-03-18 Sandisk Corporation Built in on-chip data scrambler for non-volatile memory
US8145855B2 (en) 2008-09-12 2012-03-27 Sandisk Technologies Inc. Built in on-chip data scrambler for non-volatile memory
US9158906B2 (en) 2008-09-26 2015-10-13 Koninklijke Philips N.V. Authenticating a device and a user
US8448256B2 (en) 2008-09-30 2013-05-21 Infineon Technologies Ag Secure partitioning of programmable devices
US8694856B2 (en) 2009-08-14 2014-04-08 Intrinsic Id B.V. Physically unclonable function with tamper prevention and anti-aging system
WO2011048126A1 (en) 2009-10-21 2011-04-28 Intrinsic Id B.V. Distribution system and method for distributing digital information
US20130051552A1 (en) * 2010-01-20 2013-02-28 Héléna Handschuh Device and method for obtaining a cryptographic key
WO2012001796A1 (ja) 2010-06-30 2012-01-05 富士通株式会社 個体別情報生成装置及び個体別情報生成方法
US8694778B2 (en) 2010-11-19 2014-04-08 Nxp B.V. Enrollment of physically unclonable functions
WO2012122994A1 (en) 2011-03-11 2012-09-20 Kreft Heinz Off-line transfer of electronic tokens between peer-devices
KR20120109203A (ko) 2011-03-28 2012-10-08 에스케이하이닉스 주식회사 플래시 메모리 장치 및 그의 독출 전압 생성 방법
CN103583013B (zh) * 2011-06-02 2016-04-13 三菱电机株式会社 密钥信息生成装置以及密钥信息生成方法
EP2789116B1 (en) 2011-12-06 2020-09-30 Intrinsic ID B.V. Soft decision error correction for memory based puf using a single enrollment
US9218477B2 (en) 2012-04-13 2015-12-22 Lewis Innovative Technologies Electronic physical unclonable functions
WO2013173729A1 (en) 2012-05-18 2013-11-21 Cornell University Methods and systems for providing hardware security functions using flash memories
US8928347B2 (en) * 2012-09-28 2015-01-06 Intel Corporation Integrated circuits having accessible and inaccessible physically unclonable functions
EP2904732B1 (en) 2012-10-04 2018-11-28 Intrinsic ID B.V. System for generating a cryptographic key from a memory used as a physically unclonable function
EP2722191B1 (en) * 2012-10-18 2015-05-06 Bundesdruckerei GmbH Identity card with physical unclonable function
US9093128B2 (en) 2012-11-05 2015-07-28 Infineon Technologies Ag Electronic device with a plurality of memory cells and with physically unclonable function
TWI606362B (zh) 2012-11-12 2017-11-21 慧榮科技股份有限公司 存取系統及方法
US20160028544A1 (en) 2012-11-15 2016-01-28 Elwha Llc Random number generator functions in memory
GB2507988A (en) * 2012-11-15 2014-05-21 Univ Belfast Authentication method using physical unclonable functions
US8861736B2 (en) 2012-11-19 2014-10-14 International Business Machines Corporation Reliable physical unclonable function for device authentication
US8885819B2 (en) 2012-12-27 2014-11-11 Intel Corporation Fuse attestation to secure the provisioning of secret keys during integrated circuit manufacturing
US8938792B2 (en) * 2012-12-28 2015-01-20 Intel Corporation Device authentication using a physically unclonable functions based key generation system
US9390291B2 (en) * 2012-12-29 2016-07-12 Intel Corporation Secure key derivation and cryptography logic for integrated circuits
US9001554B2 (en) 2013-01-10 2015-04-07 Intermolecular, Inc. Resistive random access memory cell having three or more resistive states
US9083323B2 (en) 2013-02-11 2015-07-14 Qualcomm Incorporated Integrated circuit identification and dependability verification using ring oscillator based physical unclonable function and age detection circuitry
US9082514B1 (en) 2013-04-22 2015-07-14 Xilinx, Inc. Method and apparatus for physically unclonable function burn-in
JP2015026358A (ja) 2013-06-20 2015-02-05 株式会社東芝 デバイス、ホスト装置、ホストシステム、及びメモリシステム
US9530009B2 (en) 2013-06-27 2016-12-27 Visa International Service Association Secure execution and update of application module code
US9953166B2 (en) 2013-07-04 2018-04-24 Microsemi SoC Corporation Method for securely booting target processor in target system using a secure root of trust to verify a returned message authentication code recreated by the target processor
JP6106043B2 (ja) 2013-07-25 2017-03-29 ルネサスエレクトロニクス株式会社 半導体集積回路装置
US9787480B2 (en) 2013-08-23 2017-10-10 Qualcomm Incorporated Applying circuit delay-based physically unclonable functions (PUFs) for masking operation of memory-based PUFs to resist invasive and clone attacks
KR101489758B1 (ko) * 2013-08-26 2015-02-04 한국전자통신연구원 플래시 메모리의 동작 제어 방법 및 장치
US9343135B2 (en) 2013-09-09 2016-05-17 Qualcomm Incorporated Physically unclonable function based on programming voltage of magnetoresistive random-access memory
US9298946B2 (en) * 2013-09-09 2016-03-29 Qualcomm Incorporated Physically unclonable function based on breakdown voltage of metal-insulator-metal device
US20150071432A1 (en) 2013-09-09 2015-03-12 Qualcomm Incorporated Physically unclonable function based on resistivity of magnetoresistive random-access memory magnetic tunnel junctions
US9792089B2 (en) 2013-09-10 2017-10-17 Verayo, Inc. Random number generator using an incrementing function
US8995169B1 (en) 2013-09-12 2015-03-31 Sandisk 3D Llc Method of operating FET low current 3D Re-RAM
US9966467B2 (en) 2013-09-27 2018-05-08 Phison Electronics Corp. Integrated circuit and code generating method
US9992031B2 (en) 2013-09-27 2018-06-05 Intel Corporation Dark bits to reduce physically unclonable function error rates
US20150143130A1 (en) 2013-11-18 2015-05-21 Vixs Systems Inc. Integrated circuit provisioning using physical unclonable function
US9189654B2 (en) 2013-12-04 2015-11-17 International Business Machines Corporation On-chip structure for security application
US10216965B2 (en) 2014-01-08 2019-02-26 Stc.Unm Systems and methods for generating physically unclonable functions from non-volatile memory cells
EP2911086A1 (en) 2014-02-19 2015-08-26 Renesas Electronics Europe GmbH Integrated circuit with parts activated based on intrinsic features
US9940048B2 (en) 2014-02-26 2018-04-10 Macronix International Co., Ltd. Nonvolatile memory data protection using nonvolatile protection codes and volatile protection codes
US9916884B2 (en) 2014-03-07 2018-03-13 Intel Corporation Physically unclonable function circuit using resistive memory device
US9436845B2 (en) 2014-03-25 2016-09-06 Globalfoundries Inc. Physically unclonable fuse using a NOR type memory array
US9485094B1 (en) * 2014-04-21 2016-11-01 Maxim Integrated Products, Inc. Systems and methods for stable physically unclonable functions
KR102207217B1 (ko) 2014-04-30 2021-01-25 삼성전자주식회사 플래시 메모리 장치, 플래시 메모리 시스템 및 이의 동작 방법
KR101593166B1 (ko) 2014-06-02 2016-02-15 한국전자통신연구원 물리적 복제 방지 함수의 오류를 방지하는 장치 및 그 방법
KR101575810B1 (ko) 2014-09-30 2015-12-08 고려대학교 산학협력단 물리적 복제 방지 기능을 갖는 플래시 메모리 장치 및 그 구현 방법
US9331989B2 (en) 2014-10-06 2016-05-03 Micron Technology, Inc. Secure shared key sharing systems and methods
US9646178B2 (en) 2014-10-15 2017-05-09 Empire Technology Development Llc Secure data storage based on physically unclonable functions
CN105632543B (zh) 2014-11-21 2018-03-30 松下知识产权经营株式会社 具有防篡改性的非易失性存储装置及集成电路卡
US9548113B2 (en) 2014-11-21 2017-01-17 Panasonic Intellectual Property Management Co., Ltd. Tamper-resistant non-volatile memory device
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
KR102201642B1 (ko) 2014-11-28 2021-01-13 삼성전자주식회사 Puf 회로 및 그것의 키 등록 방법
US9245925B1 (en) 2015-01-15 2016-01-26 Macronix International Co., Ltd. RRAM process with metal protection layer
US9583700B2 (en) 2015-01-23 2017-02-28 Macronix International Co., Ltd. RRAM process with roughness tuning technology
US9607702B2 (en) 2015-03-25 2017-03-28 Macronix International Co., Ltd. Sub-block page erase in 3D p-channel flash memory
US9722774B2 (en) 2015-04-29 2017-08-01 Samsung Electronics Co., Ltd. Non-leaky helper data: extracting unique cryptographic key from noisy F-PUF fingerprint
EP3304561B1 (en) 2015-06-02 2020-08-26 Cambou, Bertrand, F. Memory circuit using resistive random access memory arrays in a secure element
US9875378B2 (en) 2015-06-12 2018-01-23 QUALCOMOM Incorporated Physically unclonable function assisted memory encryption device techniques
EP3113409B1 (en) 2015-07-01 2024-09-18 Secure-IC SAS Embedded test circuit for physically unclonable function
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
US9971566B2 (en) 2015-08-13 2018-05-15 Arizona Board Of Regents Acting For And On Behalf Of Northern Arizona University Random number generating systems and related methods
US10181357B2 (en) 2015-08-18 2019-01-15 Ememory Technology Inc. Code generating apparatus and one time programming block
US9455403B1 (en) 2015-08-28 2016-09-27 Macronix International Co., Ltd. Semiconductor structure and method for manufacturing the same
US20170126414A1 (en) 2015-10-28 2017-05-04 Texas Instruments Incorporated Database-less authentication with physically unclonable functions
US10097348B2 (en) * 2016-03-24 2018-10-09 Samsung Electronics Co., Ltd. Device bound encrypted data
US10454691B2 (en) * 2016-05-24 2019-10-22 Arizona Board Of Regents On Behalf Of Northern Arizona University Systems implementing hierarchical levels of security
US10680809B2 (en) 2016-08-04 2020-06-09 Macronix International Co., Ltd. Physical unclonable function for security key
US10911229B2 (en) 2016-08-04 2021-02-02 Macronix International Co., Ltd. Unchangeable physical unclonable function in non-volatile memory
US10715340B2 (en) 2016-08-04 2020-07-14 Macronix International Co., Ltd. Non-volatile memory with security key storage
US10855477B2 (en) 2016-08-04 2020-12-01 Macronix International Co., Ltd. Non-volatile memory with physical unclonable function and random number generator
US10027472B2 (en) 2016-09-27 2018-07-17 Intel Corporation Non-linear physically unclonable function (PUF) circuit with machine-learning attack resistance
US9811689B1 (en) 2016-12-27 2017-11-07 Macronix International Co., Ltd. Chip ID generation using physical unclonable function
US20180191512A1 (en) 2016-12-30 2018-07-05 Intel Corporation Physically unclonable function generation with direct twin cell activation
US10311930B1 (en) * 2018-04-05 2019-06-04 Qualcomm Incorporated One-time programming (OTP) magneto-resistive random access memory (MRAM) bit cells in a physically unclonable function (PUF) memory in breakdown to a memory state from a previous read operation to provide PUF operations

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5442704A (en) * 1994-01-14 1995-08-15 Bull Nh Information Systems Inc. Secure memory card with programmed controlled security access control
CN101681657A (zh) * 2007-06-12 2010-03-24 Nxp股份有限公司 安全存储器
CN102460458A (zh) * 2009-06-17 2012-05-16 微软公司 存储设备的远程访问控制
CN103201746A (zh) * 2010-11-08 2013-07-10 英特尔公司 用于数据存储装置处的安全管理供应的技术
US20160301534A1 (en) * 2015-04-07 2016-10-13 Globalfoundries Inc. Method, apparatus and system for security application for integrated circuit devices

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110556144A (zh) * 2018-05-31 2019-12-10 旺宏电子股份有限公司 存储器装置的编程方法
CN110556144B (zh) * 2018-05-31 2021-04-06 旺宏电子股份有限公司 存储器装置的编程方法
CN110659226A (zh) * 2018-06-28 2020-01-07 晨星半导体股份有限公司 用以存取数据的方法以及相关电路
CN111723409A (zh) * 2019-03-22 2020-09-29 旺宏电子股份有限公司 集成电路、存储器电路以及用于操作集成电路的方法
US11044108B1 (en) 2019-12-24 2021-06-22 CERA Licensing Limited Temperature sensing physical unclonable function (PUF) authentication system
US11516028B2 (en) 2019-12-24 2022-11-29 CERA Licensing Limited Temperature sensing physical unclonable function (PUF) authentication system
US11652649B2 (en) 2019-12-24 2023-05-16 CERA Licensing Limited Sensor secured by physical unclonable function (PUF)
CN115398544A (zh) * 2019-12-26 2022-11-25 美光科技公司 基于内容可寻址存储器架构的存储器装置数据安全
CN115398544B (zh) * 2019-12-26 2023-11-07 美光科技公司 基于内容可寻址存储器架构的存储器装置数据安全
US12019780B2 (en) 2019-12-26 2024-06-25 Micron Technology, Inc. Memory device data security based on content-addressable memory architecture
CN114444140A (zh) * 2020-11-02 2022-05-06 旺宏电子股份有限公司 存储器中的不可复制函数应用

Also Published As

Publication number Publication date
TWI666547B (zh) 2019-07-21
US20180040356A1 (en) 2018-02-08
TWI732903B (zh) 2021-07-11
US10715340B2 (en) 2020-07-14
TWI685742B (zh) 2020-02-21
TW201805812A (zh) 2018-02-16
US20200036539A1 (en) 2020-01-30
CN107689243A (zh) 2018-02-13
CN107689238A (zh) 2018-02-13
CN107689243B (zh) 2020-09-15
TW201805817A (zh) 2018-02-16
US10749695B2 (en) 2020-08-18
CN107689238B (zh) 2020-10-16
TW201805813A (zh) 2018-02-16
US10404478B2 (en) 2019-09-03
US20180039581A1 (en) 2018-02-08
US20180039784A1 (en) 2018-02-08
US10469271B2 (en) 2019-11-05
CN107689237B (zh) 2021-03-05

Similar Documents

Publication Publication Date Title
CN107689237A (zh) 电子装置及其存储器电路与其操作方法
CN108958707A (zh) 具有puf及随机数产生器的电路及其操作方法
US11895236B2 (en) Unchangeable physical unclonable function in non-volatile memory
US10855477B2 (en) Non-volatile memory with physical unclonable function and random number generator
JP6474056B2 (ja) 耐タンパ性を有する不揮発性メモリ装置、集積回路カード、不揮発性メモリ装置の認証方法、不揮発性メモリ装置を用いた暗号化方法および復号化方法
JP6617924B2 (ja) 耐タンパ性を有する不揮発性メモリ装置および集積回路カード、不揮発性メモリ装置の認証方法、個体識別情報生成方法
JP2016105278A (ja) 耐タンパ性を有する不揮発性メモリ装置、および集積回路カード
CN108958650A (zh) 电子系统及其操作方法
TWI663604B (zh) 操作具非揮發性記憶胞電路的方法及使用所述方法的電路
TWI716685B (zh) 電子系統及其操作方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant