CN109493902B - 随机码产生器及其相关控制方法 - Google Patents

随机码产生器及其相关控制方法 Download PDF

Info

Publication number
CN109493902B
CN109493902B CN201810971268.8A CN201810971268A CN109493902B CN 109493902 B CN109493902 B CN 109493902B CN 201810971268 A CN201810971268 A CN 201810971268A CN 109493902 B CN109493902 B CN 109493902B
Authority
CN
China
Prior art keywords
puf memory
puf
random code
memory cells
memory cell
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.)
Active
Application number
CN201810971268.8A
Other languages
English (en)
Other versions
CN109493902A (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.)
eMemory Technology Inc
Original Assignee
eMemory Technology Inc
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 eMemory Technology Inc filed Critical eMemory Technology Inc
Publication of CN109493902A publication Critical patent/CN109493902A/zh
Application granted granted Critical
Publication of CN109493902B publication Critical patent/CN109493902B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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/86Secure or tamper-resistant housings
    • 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
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/04Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS
    • G11C16/0483Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS comprising cells having several storage transistors connected in series
    • GPHYSICS
    • 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
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services
    • 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/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/71Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information
    • G06F21/72Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information in cryptographic circuits
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/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/76Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information in application-specific integrated circuits [ASIC] or field-programmable devices, e.g. field-programmable gate arrays [FPGA] or programmable logic devices [PLD]
    • 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/21Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
    • G11C11/34Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
    • G11C11/40Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/21Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
    • G11C11/34Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
    • G11C11/40Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
    • G11C11/401Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors forming cells needing refreshing or charge regeneration, i.e. dynamic cells
    • G11C11/4063Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing
    • 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
    • G11C17/00Read-only memories programmable only once; Semi-permanent stores, e.g. manually-replaceable information cards
    • G11C17/14Read-only memories programmable only once; Semi-permanent stores, e.g. manually-replaceable information cards in which contents are determined by selectively establishing, breaking or modifying connecting links by permanently altering the state of coupling elements, e.g. PROM
    • G11C17/16Read-only memories programmable only once; Semi-permanent stores, e.g. manually-replaceable information cards in which contents are determined by selectively establishing, breaking or modifying connecting links by permanently altering the state of coupling elements, e.g. PROM using electrically-fusible links
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C17/00Read-only memories programmable only once; Semi-permanent stores, e.g. manually-replaceable information cards
    • G11C17/14Read-only memories programmable only once; Semi-permanent stores, e.g. manually-replaceable information cards in which contents are determined by selectively establishing, breaking or modifying connecting links by permanently altering the state of coupling elements, e.g. PROM
    • G11C17/18Auxiliary circuits, e.g. for writing into memory
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/06Sense amplifiers; Associated circuits, e.g. timing or triggering circuits
    • G11C7/062Differential amplifiers of non-latching type, e.g. comparators, long-tailed pairs
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K3/00Circuits for generating electric pulses; Monostable, bistable or multistable circuits
    • H03K3/84Generating pulses having a predetermined statistical distribution of a parameter, e.g. random pulse generators
    • 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/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0869Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds
    • 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]
    • HELECTRICITY
    • H10SEMICONDUCTOR DEVICES; ELECTRIC SOLID-STATE DEVICES NOT OTHERWISE PROVIDED FOR
    • H10BELECTRONIC MEMORY DEVICES
    • H10B20/00Read-only memory [ROM] devices
    • H10B20/20Programmable ROM [PROM] devices comprising field-effect components
    • 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
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K19/00Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
    • H03K19/20Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits characterised by logic function, e.g. AND, OR, NOR, NOT circuits
    • H03K19/21EXCLUSIVE-OR circuits, i.e. giving output if input signal exists at only one input; COINCIDENCE circuits, i.e. giving output only if all input signals are identical
    • 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/12Details relating to cryptographic hardware or logic circuitry
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y04INFORMATION OR COMMUNICATION TECHNOLOGIES HAVING AN IMPACT ON OTHER TECHNOLOGY AREAS
    • Y04SSYSTEMS INTEGRATING TECHNOLOGIES RELATED TO POWER NETWORK OPERATION, COMMUNICATION OR INFORMATION TECHNOLOGIES FOR IMPROVING THE ELECTRICAL POWER GENERATION, TRANSMISSION, DISTRIBUTION, MANAGEMENT OR USAGE, i.e. SMART GRIDS
    • Y04S40/00Systems for electrical power generation, transmission, distribution or end-user application management characterised by the use of communication or information technologies, or communication or information technology specific aspects supporting them
    • Y04S40/20Information technology specific aspects, e.g. CAD, simulation, modelling, system security

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Software Systems (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • Mathematical Physics (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • Read Only Memory (AREA)
  • Storage Device Security (AREA)
  • Semiconductor Integrated Circuits (AREA)
  • Semiconductor Memories (AREA)
  • Design And Manufacture Of Integrated Circuits (AREA)
  • Electronic Switches (AREA)
  • Fuses (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

一种半导体芯片中的随机码产生器,包括:PUF记忆单元阵列、控制电路与验证电路。PUF记忆单元阵列包括m×n个PUF记忆单元。控制电路与验证电路连接至该PUF记忆单元阵列。于编程动作时,该控制电路编程该PUF记忆单元阵列。于验证动作时,该验证电路由该PUF记忆单元阵列中判断出p个PUF记忆单元为正常PUF记忆单元,并对应的产生映射信息,且p小于m×n。当该半导体芯片开始运作时,该控制电路根据该映射信息来读取该PUF记忆单元阵列中的该p个正常PUF记忆单元的储存状态,并组成随机码。

Description

随机码产生器及其相关控制方法
技术领域
本发明是一种随机码产生器与相关控制方法,且特别涉及一种利用物理不可复制技术(physically unclonable function,简称PUF技术)的随机码产生器及其相关控制方法。
背景技术
物理不可复制技术(physically unclonable function,简称PUF技术)是一种创新的方式用来保护半导体芯片内部的数据,防止半导体芯片的内部数据被窃取。根据PUF技术,半导体芯片内的随机码产生器(random code generator)能够提供随机码(randomcode)。此随机码可作为半导体芯片(semiconductor chip)上特有的身份码(ID code),用来保护内部的数据。
一般来说,PUF技术是利用半导体芯片的制造变异(manufacturing variation)来获得独特的随机码。此制造变异包括半导体的制程变异(process variation)。也即,就算有精确的制程步骤可以制作出半导体芯片,但是其随机码几乎不可能被复制(duplicate)。因此,具有PUF技术的半导体芯片通常被运用于高安全防护的应用(applications withhigh security requirements)。
美国专利号US 9,613,714公开利用一次编程记忆单元(one time programmablecell,简称OTP记忆单元,OTP cell)来组成随机码产生器,用来产生随机码(random code)。
在随机码产生器中包括OTP记忆单元,OTP记忆单元中包括两个储存电路(storingcircuit)。其中,每个储存电路中具有反熔丝晶体管(antifuse transistor)。再者,OTP记忆单元又可称为物理不可复制记忆单元(简称PUF记忆单元,PUF cell),且每个PUF记忆单元中可储存一个位的随机码。
一般来说,当反熔丝晶体管的栅极端(gate terminal)与源漏端(source/drainterminal)之间的电压差未超过其耐压时,反熔丝晶体管维持在高电阻值状态。反之,当反熔丝晶体管的栅极端与漏源端之间的电压差超过其耐压时,反熔丝晶体管的栅极氧化层会破裂(rupture),使得反熔丝晶体管由高电阻值状态改变为低电阻值状态。
在美国专利号US 9,613,714中提出多种可产生随机码的PUF记忆单元。举例来说,请参照图1A与图1B,其所示出为现有PUF记忆单元及相关偏压示意图。
PUF记忆单元c1包括:选择晶体管S1、反熔丝晶体管A1、反熔丝晶体管A2以及选择晶体管S2。其中,选择晶体管S1的第一源/漏端连接至位线BL,选择晶体管S1的栅极端连接至字线WL;反熔丝晶体管A1的第一源/漏端连接至选择晶体管S1的第二源/漏端,反熔丝晶体管A1的栅极端连接至反熔丝控制线AF1;反熔丝晶体管A2的第一源/漏端连接至反熔丝晶体管A1的第二源/漏端,反熔丝晶体管A2的栅极端连接至反熔丝控制线AF2;选择晶体管S2的第一源/漏端连接至反熔丝晶体管A2的第二源/漏端,选择晶体管S2的栅极端连接至字线WL,选择晶体管S2的第二源/漏端连接至位线BL。
如图1B所示,于编程动作(program action)时,提供接地电压(0V)至位线BL,提供选择电压(Vdd)至字线WL,提供编程电压(Vpp)至反熔丝控制线AF1、AF2。另外,在编程动作时,字线WL的电压范围也可设计在选择电压(Vdd)及Vdd2电压之间,其中Vdd2电压大小介于选择电压(Vdd)~编程电压(Vpp)之间。再者,在PUF技术领域中,编程动作(programaction)与另一种编程动作(enroll action)是相同的意思。也即,PUF记忆单元可被编程(programmed),也可以说PUF记忆单元可被编程(enrolled)。
于进行编程动作时,选择晶体管S1与S2开启,反熔丝晶体管A1与A2会同时接收到编程电压(Vpp)。因此,反熔丝晶体管A1与A2其中之一会改变其状态。举例来说,反熔丝晶体管A1改变为低电阻值状态,而反熔丝晶体管A2维持在高电阻值状态。或者,反熔丝晶体管A2改变为低电阻值状态,而反熔丝晶体管A1维持在高电阻值状态。换句话说,由于反熔丝晶体管A1与A2的制造变异,于编程动作时并无法预测哪个反熔丝晶体管A1与A2会改变其状态。
于进行读取动作(read action)时,提供接地电压(0V)至位线BL,提供选择电压(Vdd)至字线WL,提供读取电压(Vr)至反熔丝控制线AF1。另外,在读取动作时,字线WL及读取电压(Vr)的电压范围也可设计在选择电压(Vdd)及Vdd2电压之间,其中Vdd2电压大小介于选择电压(Vdd)~编程电压(Vpp)之间。
于进行读取动作时,选择晶体管S1、S2开启。而反熔丝晶体管A1产生读取电流至位线BL。一般来说,具低电阻值状态的反熔丝晶体管A1所产生的读取电流会远大于具高电阻值状态的反熔丝晶体管A1所产生的读取电流。举例来说,具低电阻值状态的反熔丝晶体管A1所产生的读取电流约为10μA,具高电阻值状态的反熔丝晶体管A1所产生的读取电流约为0.1μA。
换言之,于进行读取动作时,后续的处理电路(未示出)会判断反熔丝晶体管A1的读取电流的大小来决定PUF记忆单元c1的储存状态。举例来说,反熔丝晶体管A1产生较大的读取电流时,可判断PUF记忆单元c1为第一储存状态。反之,反熔丝晶体管A1较小的读取电流时,可判断PUF记忆单元c1为第二储存状态。
由以上的说明可知,由于反熔丝晶体管A1与A2的制造变异,于编程动作时,并无法预测哪一个反熔丝晶体管A1与A2会改变其状态。因此,编程后的PUF记忆单元c1,其储存状态即可作为随机码(random code)的一个位(bit)。
另外,随机码产生器中更包括多个PUF记忆单元。因此,编程多个PUF记忆单元后,随机码产生器即可根据多个PUF记忆单元的储存状态来产生随机码。举例来说,随机码产生器中有8个PUF记忆单元。而编程8个PUF记忆单元后,随机码产生器即根据8个PUF记忆单元的储存状态来产生一个位组(byte)的随机码。
由于随机码是半导体芯片(semiconductor chip)上特有的身份码(ID code),所以随机码产生器必须保持随机码的正确性。当随机码产生器产生错误的随机码时,将造成错误的身份码(ID code)。因此,半导体芯片将无法根据错误的随机码来取得受保护的内部数据,而半导体芯片也无法正常运作。
发明内容
本发明的主要目的在于提出一种随机码产生器,包括:PUF记忆单元阵列,包括m×n个PUF记忆单元;控制电路,连接至该PUF记忆单元阵列,其中于编程动作时,该控制电路编程该PUF记忆单元阵列;以及验证电路,连接至该记忆单元阵列;其中,于验证动作时,该验证电路由该PUF记忆单元阵列中判断出p个PUF记忆单元为正常PUF记忆单元,并对应的产生映射信息,且p小于m×n;其中,当该半导体芯片开始运作时,该控制电路根据该映射信息来读取该PUF记忆单元阵列中的该p个正常PUF记忆单元的储存状态,并组成随机码。
本发明涉及一种随机码产生器的控制方法,该随机码产生器包括:PUF记忆单元阵列,具有m×n个PUF记忆单元。该控制方法包括下列步骤:编程该PUF记忆单元阵列;由该PUF记忆单元阵列中判断出p个PUF记忆单元为正常PUF记忆单元,并对应的产生映射信息,且p小于m×n;以及当半导体芯片开始运作时,根据该映射信息来读取该PUF记忆单元阵列中的该p个正常PUF记忆单元的储存状态,并组成随机码。
为了对本发明的上述及其他方面有更佳的了解,下文特举实施例,并配合附图详细说明如下。
附图说明
图1A与图1B为现有PUF记忆单元及相关偏压示意图。
图2为本发明随机码产生器示意图。
图3为投票电路示意图。
图4A为本发明随机码产生器的编程动作与验证动作的控制流程。
图4B为本发明随机码产生器产生随机码的流程示意图。
图5A与图5B为本发明验证动作的控制流程的一个范例。
符号说明
200:随机码产生器
205:控制电路
210、510:PUF记忆单元阵列
215:验证电路
220:感测电路
230:投票电路
240、540:信息区块
310、320:缓冲器
330:判断电路
331~33n:异或非门
340:与门
具体实施方式
一般来说,PUF记忆单元在编程动作后,在理想状况下仅会造成一反熔丝晶体管的栅极氧化层破裂而改变其状态,而另一个反熔丝晶体管的栅极氧化层不会破裂而不会改变其状态。而此PUF记忆单元即为正常PUF记忆单元。
然而,在少数状况下,PUF记忆单元在进行编程动作后,PUF记忆单元内部会有两个反熔丝晶体管的栅极氧化层皆破裂的情形、或者两个反熔丝记忆单元的栅极氧化层皆未破裂的情形、或者反熔丝晶体管的栅极氧化层破裂不完全的情形发生。因此,上述PUF记忆单元即为低可信度PUF记忆单元(low reliability PUF cell),而低可信度PUF记忆单元可能会造成位翻转(bit flipping),而无法准确的判断其储存状态。也就是说,在某些状况下PUF记忆单元会呈现第一储存状态,在其他状况下PUF记忆单元会呈现第二储存状态。
由以上的说明可知,当随机码产生器中有低可信度PUF记忆单元时,随机码产生器可能会产生错误的随机码,使得半导体芯片无法正常运作。
请参照图2,其所示出为本发明随机码产生器示意图。随机码产生器200配置于半导体芯片中,随机码产生器200包括:控制电路205、PUF记忆单元阵列(PUF array)210与验证电路(verification circuit)215。其中,PUF记忆单元阵列210包括m×n个PUF记忆单元pc1,1~pcm,n。
控制电路205连接至PUF记忆单元阵列210用以控制PUF记忆单元阵列210进行编程动作、读取动作或者验证动作。
根据本发明的实施例,图2的PUF记忆单元阵列210中,每个PUF记忆单元pc1,1~pcm,n的结构类似图1A的PUF记忆单元。也即,每个PUF记忆单元pc1,1~pcm,n连接至一条字线、一条位线、与两条反熔丝控制线。因此,PUF记忆单元阵列210连接至m条字线WL1~WLm、n条位线BL1~BLn以及2n条反熔丝控制线AF1~AF2n。
当然,本发明的PUF记忆单元阵列210也可以由差动PUF记忆单元(differentialPUF cell)所组成,每个差动PUF记忆单元可产生一位的随机码。此时,每个差动PUF记忆单元连接至一条字线、一位线对(bit line pair)、与两条反熔丝控制线。
再者,验证电路215包括:感应电路(sensing circuit)220、投票电路(votingcircuit)230与信息区块(information block)240。
感测电路220中包括n个感测放大器(sense amplifier)SA_1~SA_n连接至对应的位线BL1~BLn。感测电路220于编程动作时,可提供适当的电压(例如,0V)至位线BL1~BLn。另外,于读取动作时,感测电路220的感测放大器SA_1~SA_n可以根据位线BL1~BLn上的读取电流大小来判断对应PUF记忆单元的储存状态,并产生数据信号D1~Dn。
投票电路230连接至感测电路220以接收数据信号D1~Dn。根据本发明的实施例,于随机码产生器200的验证动作时,投票电路230根据数据信号D1~Dn来判断对应的PUF记忆单元中是否有低可信度PUF记忆单元,并且产生结果信号S。
再者,数据区块240根据结果信号S来产生映射信息(mapping information)。根据本发明的实施例,信息区块240中有多个标记(flag)fg_1~fg_m,且每个标记fg_1~fg_m皆为非易失性存储器(nonvolatile memory)。再者,投票电路230根据结果信号S来可选择性地设定标记fg_1~fg_m,并组成映射信息。也就是说,信息区块240中的映射信息记录PUF记忆单元210中正常PUF记忆单元的位置。因此,控制电路205可根据信息区块240中的映射信息,由PUF记忆单元阵列210中的正常PUF记忆单元来组成随机码。
请参照图3,其所示出为投票电路示意图。投票电路230中包括第一缓冲器(buffer)310、第二缓冲器320与判断电路330。根据本发明的实施例,于验证动作的第一验证环境下,第一缓冲器310接收感测电路220输出的数据信号D1~Dn,成为第一读取数据D1a~Dna。于验证动作的第二验证环境下,第二缓冲器320接收感测电路220输出的数据信号D1~Dn,成为第二读取数据D1b~Dnb。
再者,判断电路330判断第一读取数据是否等于第二读取数据,并产生结果信号S。判断电路330中包括n个异或非门(XNOR gate)331~33n与一与门(AND gate)340。第一异或非门331接收第一缓冲器310的第一位D1a以及第二缓冲器320的第一位D1b,并输出第一投票信号(voting signal)V1;第二异或非门332接收第一缓冲器310的第二位D2a以及第二缓冲器320的第二位D2b,并输出第二投票信号V2;依此类推。另外,与门340接收所有n个投票信号V1~Vn,并产生结果信号S。
明显地,当第一读取数据等于第二读取数据时,所有n个投票信号V1~Vn皆为逻辑高电位,而结果信号S为逻辑高电位。反之,当第一读取数据不等于第二读取数据时,至少有一个投票信号为逻辑低电位,使得结果信号S为逻辑低电位。也就是说,当结果信号S为逻辑高电位时,代表第一读取数据等于第二读取数据;当结果信号S为逻辑低电位时,代表第一读取数据不等于第二读取数据。
再者,本发明并未限定判断电路330的结构。举例来说,判断电路330中包括n个异或门(XOR gate)以及一或门(OR gate)。第一异或门接收第一缓冲器310的第一位D1a以及第二缓冲器320的第一位D1b,并输出第一投票信号V1;第二异或门接收第一缓冲器310的第二位D2a以及第二缓冲器320的第二位D2b,并输出第二投票信号V2;依此类推。另外,或门接收所有的n个投票信号V1~Vn,并产生结果信号S。因此,当结果信号S为逻辑低电位时,代表第一读取数据等于第二读取数据;当结果信号S为逻辑高电位时,代表第一读取数据不等于第二读取数据。
请参照图4A,其所示出为本发明随机码产生器的编程动作与验证动作的控制流程。首先,编程PUF记忆单元阵列210(步骤S310)。根据本发明的实施例,进行编程动作以编程PUF记忆单元阵列210时,提供编程电压Vpp至反熔丝控制线AF1~AF2n,提供接地电压(0V)至位线BL1~BLn。接着,依序提供选择电压Vdd至字线WL1~WLm,使得字线WL1~WLm依序动作。因此,记忆单元阵列210中的所有PUF记忆单元pc1,1~pcm,n皆被编程。
举例来说,当选择电压Vdd提供至字线WL1时,字线WL1动作,而第一列为选定列(selected row)。因此,选定列上的n个PUF记忆单元pc1,1~pc1,n被编程。同理,当选择电压Vdd提供至字线WL2时,字线WL2动作,而第二列为选定列。因此,选定列上的n个PUF记忆单元pc2,1~pc2,n被编程。依此类推,当所有字线WL1~WLm皆动作之后,PUF记忆单元阵列210中的所有PUF记忆单元pc1,1~pcm,n皆被编程。
另外,步骤S310之后即为验证动作。根据本发明的实施例,于验证动作时会提供不同的验证环境,并判断在不同的验证环境下,相同的PUF记忆单元能否呈现相同的储存状态。举例来说,不同的验证环境可为提供不同的读取电压Vr来进行读取动作,或者在不同的运作温度下进行读取动作,又或利用不同的读取速度(sensing speed)进行读取动作等等。
如图4A所示,设定x等于1(步骤S312)。
接着,于第一验证环境下,动作字线WLx,使得感测电路220判断选定列上PUF记忆单元的储存状态,并将产生的第一读取数据暂存于投票电路230(步骤S316)。举例来说,控制电路205提供第一读取电压Vr1至奇数的反熔丝控制线,提供接地电压(0V)至偶数的反熔丝控制线后,使得感测电路220产生第一读取数据。
接着,于第二验证环境下,动作字线WLx,使得感测电路220判断选定列上PUF记忆单元的储存状态,并将产生的第二读取数据暂存于投票电路230(步骤S320)。举例来说,控制电路205提供第二读取电压Vr2至奇数的反熔丝控制线,提供接地电压(0V)至偶数的反熔丝控制线后,使得感测电路220产生第二读取数据。
当第一读取数据相异于第二读取数据时(步骤S322),代表选定列中存在低可信度PUF记忆单元。此时,投票电路230会设定信息区块240中的标记fg_x(步骤S324)。接着,先判断x是否等于m(步骤S326)。若x等于m则代表所有列(对应字线WL1~WLm)的PUF记忆单元皆已被验证。此时,结束验证动作。若x不等于m(步骤S326),则设定x=x+1(步骤S328)后,回到步骤S316。
反之,当第一读取数据相同于第二读取数据时(步骤S322),代表选定列中皆为正常PUF记忆单元。接着先判断x是否等于m(步骤S326),若x等于m则代表所有列(对应字线WL1~WLm)的PUF记忆单元皆已被验证。此时,结束验证动作。反之,若x不等于m(步骤S326),则设定x=x+1(步骤S328)后,回到步骤S316。
请参照图4B,其所示出为本发明随机码产生器产生随机码的流程示意图。当验证动作完成后,随机码产生器已经可以产生随机码。首先,控制电路205读取信息区块240中的映射信息(步骤S330)。接着,控制电路205根据映射信息,读取PUF记忆单元阵列210中对应的PUF记忆单元,并产生随机码(步骤S332)。也就是说,控制电路205根据映射信息来读取PUF记忆单元阵列210中的正常PUF记忆单元的储存状态,并组成随机码。因此,当半导体芯片开始运作时,随机码产生器200即可输出随机码。
以下以m=16及n=128所组成16×128的PUF记忆单元阵列210为例来说明本发明的随机码产生器200,且随机码产生器200可产生128位的随机码。
请参照图5A与图5B,其所示出为本发明验证动作的控制流程的一个范例。如图5A所示,PUF记忆单元阵列510中的第一列为选定列。举例来说,于不同的验证环境下,选定列所产生的第一读取数据相异于第二读取数据,因此信息区块540中的标记fg_1被设定(set),例如被设定为第一储存状态。换句话说,第一列的128个记忆单元pc1,1~pc1,128中存在低可信度PUF记忆单元,感测电路产生的数据信号中可能会有错误位(error bit),所以控制电路不会利用第一列来产生随机码。
如图5B所示,PUF记忆单元阵列510中的第二列为选定列。举例来说,于不同的验证环境下,选定列所产生的第一读取数据相异于第二读取数据,因此信息区块540中的标记fg_2被设定(set),例如被设定为第一储存状态。换句话说,第二列的128个记忆单元pc2,1~pc2,128中存在低可信度PUF记忆单元,感测电路产生的数据信号中可能会有错误位,所以控制电路不会利用第二列来产生随机码。
再者,假设PUF记忆单元阵列510中的第三列为选定列时,于不同的验证环境下,选定列所产生的第一读取数据相同于第二读取数据。因此,信息区块540中的标记fg_3未被设定,例如维持在第二储存状态,且结束验证动作。也就是说,标记fg_3所对应的第三列中的128个记忆单元pc3,1~pc3,128中皆为正常PUF记忆单元。
再者,PUF记忆单元阵列510中的其他列也是以相同的方式来进行验证,并选择性地设定对应的标记。其详细动作不在赘述。
当半导体芯片开始运作时,控制电路读取信息区块540中的映射信息。根据本发明的实施例,控制电路依序搜索信息区块540中第一个未被设定的标记。如图5B所示,控制电路搜索到未被设定的标记fg_3。因此,控制电路动作标记fg_3所对应的第三字线WL3,而感测电路即根据位线上的电流大小来判断PUF记忆单元阵列510中第三列的128个PUF记忆单元pc3,1~pc3,128的储存状态,并产生128位的随机码。
再者,于图4A中的编程动作与验证动作的控制流程中,控制电路先编程PUF记忆单元阵列中的所有记忆单元后,才进行验证动作。当然,本发明也可以编程PUF记忆单元阵列中的一列PUF记忆单元后,即验证被编程的该列PUF记忆单元。
再者,图4A中的验证动作的控制流程中是验证所有列的PUF记忆单元并选择性地设定对应的标记。然而,本发明并不限定于此。
举例来说,假设随机码产生器具有16×128尺寸的PUF记忆单元阵列,且随机码产生器产生256位的随机码。此时,于验证动作中时需要验证两列的PUF记忆单元为正常的PUF记忆单元,并记录于信息区块后即可结束验证动作。因此,当半导体芯片开始运作时,控制电路根据映射信息来依序动作两条字线,并产生256位的随机码。也即,当验证结束动作结束后,PUF记忆单元阵列中可能有尚未被编程的PUF记忆单元。
再者,由于投票电路230中的判断电路330可判断选定列上的低可信度PUF记忆单元与正常PUF记忆单元的位置。因此,也可以由PUF记忆单元阵列510中其他列的正常PUF记忆单元来替代(substitute)选定列中的低可信度PUF记忆单元。举例来说,经过验证动作后,PUF记忆单元阵列510中的第一列中被判断出12个低可信度PUF记忆单元以及116个正常记忆单元,其对应位置被记录于信息区块540。另外,PUF记忆单元阵列510中的第二列可以判断出12个正常PUF记忆单元,其对应位置被记录于信息区块540。因此,当半导体芯片开始运作时,控制电路根据映射信息由PUF记忆单元阵列510中第一列的116个正常PUF记忆单元与第二列的12个正常PUF记忆单元来组成128位的随机码。
由以上的说明可知,本发明的随机码产生器与相关控制方中,随机码产生器内具备m×n尺寸的PUF记忆单元阵列。当PUF记忆单元阵列进行编程动作后,即进行验证动作。在验证动作时,提供不同的验证环境,并由PUF记忆单元阵列中判断出p个PUF记忆单元为正常PUF记忆单元,并对应的记录于映射信息中,其中p小于m×n。因此,当半导体芯片开始运作时,随机码产生器中的控制电路即根据映射信息来读取PUF记忆单元阵列中的p个正常PUF记忆单元的储存状态,并组成随机码。
综上所述,虽然本发明已以实施例公开如上,然而其并非用以限定本发明。本发明所属技术领域中的技术人员,在不脱离本发明的精神和范围的情况下,应当可以作各种的更动与润饰。因此,本发明的保护范围应当视所附的权利要求所界定的为准。

Claims (13)

1.一种随机码产生器,配置于半导体芯片中,该随机码产生器包括:
PUF记忆单元阵列,包括m×n个PUF记忆单元;
控制电路,连接至该PUF记忆单元阵列,其中于编程动作时,该控制电路编程该PUF记忆单元阵列;以及
验证电路,连接至该记忆单元阵列;
其中,于验证动作时,该验证电路由该PUF记忆单元阵列中判断出p个PUF记忆单元为正常PUF记忆单元,并对应的产生映射信息,且p小于m×n;
其中,当该半导体芯片开始运作时,该控制电路根据该映射信息来读取该PUF记忆单元阵列中的该p个正常PUF记忆单元的储存状态,并组成随机码;以及
其中,该验证电路包括:感测电路,连接至该PUF记忆单元阵列,用以感测该PUF记忆单元阵列中选定列的n个PUF记忆单元的储存状态,并产生数据信号;投票电路,接收该数据信号并产生结果信号;以及,信息区块,包括多个标记用以组成该映射信息,且该投票电路根据该结果信号选择性地设定该多个标记。
2.如权利要求1所述的随机码产生器,其中于第一验证环境下,该投票电路接收该数据信号成为第一读取数据;于第二验证环境下,该投票电路接收该数据信号成为第二读取数据;且当该第一读取数据相异于该第二读取数据时,该选定列中至少包括低可信度PUF记忆单元,且该信息区块中对应的标记被设定。
3.如权利要求2所述的随机码产生器,其中当该第一读取数据相同于该第二读取数据时,该选定列皆为正常的PUF记忆单元。
4.如权利要求2所述的随机码产生器,其中于该第一验证环境时,该控制电路提供第一读取电压至该选定列,并使得感测电路产生该数据信号;以及,于该第二验证环境时,该控制电路提供第二读取电压至该选定列,并使得感测电路产生该数据信号。
5.如权利要求2所述的随机码产生器,其中于该第一验证环境时,该感测电路于第一环境温度下产生该数据信号;以及,于该第二验证环境时,该感测电路于第二环境温度下产生该数据信号。
6.如权利要求2所述的随机码产生器,其中于该第一验证环境时,该感测电路于第一读取速度下产生该数据信号;以及,于该第二验证环境时,该感测电路于第二读取速度下产生该数据信号。
7.如权利要求2所述的随机码产生器,其中当该半导体芯片开始运作时,该控制电路依序搜索该信息区块中未被设定的标记,以动作该PUF记忆单元阵列中对应列的PUF记忆单元,并使得该感测电路产生该随机码。
8.一种随机码产生器的控制方法,该随机码产生器包括:PUF记忆单元阵列与信息区块,该PUF记忆单元阵列具有m×n个PUF记忆单元,且该信息区块中包括多个标记以组成映射信息,该控制方法包括下列步骤:
编程该PUF记忆单元阵列;
于第一验证环境下,读取该PUF记忆单元阵列的选定列,并产生第一读取数据;
于第二验证环境下,读取该PUF记忆单元阵列的该选定列,并产生第二读取数据;
当该第一读取数据相异于该第二读取数据时,该选定列中至少包括低可信度PUF记忆单元,且设定该信息区块中的对应标记;由该PUF记忆单元阵列中判断出p个PUF记忆单元为正常PUF记忆单元,并对应的产生该映射信息,且p小于m×n;以及
当半导体芯片开始运作时,根据该映射信息来读取该PUF记忆单元阵列中的该p个正常PUF记忆单元的储存状态,并组成随机码。
9.如权利要求8所述的随机码产生器的控制方法,更包括:当该第一读取数据相同于该第二读取数据时,该选定列皆为正常的PUF记忆单元。
10.如权利要求8所述的随机码产生器的控制方法,其中于该第一验证环境时,提供第一读取电压至该选定列,以产生该第一读取数据;以及,于该第二验证环境时,提供第二读取电压至该选定列,以产生该第二读取数据。
11.如权利要求8所述的随机码产生器的控制方法,其中于该第一验证环境时,于第一环境温度下产生该第一读取数据;以及,于该第二验证环境时,于第二环境温度下产生该第二读取数据。
12.如权利要求8所述的随机码产生器的控制方法,其中于该第一验证环境时,于第一读取速度下产生该第一读取数据;以及,于该第二验证环境时,于第二读取速度下产生该第二读取数据。
13.如权利要求8所述的随机码产生器的控制方法,其中当该半导体芯片开始运作时,搜索该信息区块中未被设定的标记,以读取该PUF记忆单元阵列中对应列的PUF记忆单元,并产生该随机码。
CN201810971268.8A 2017-09-12 2018-08-24 随机码产生器及其相关控制方法 Active CN109493902B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US201762557170P 2017-09-12 2017-09-12
US62/557,170 2017-09-12

Publications (2)

Publication Number Publication Date
CN109493902A CN109493902A (zh) 2019-03-19
CN109493902B true CN109493902B (zh) 2020-07-28

Family

ID=63244513

Family Applications (5)

Application Number Title Priority Date Filing Date
CN201810945512.3A Active CN109495243B (zh) 2017-09-12 2018-08-20 使用随机数位的安全系统及安全系统的操作方法
CN201810971534.7A Active CN109493898B (zh) 2017-09-12 2018-08-24 物理不可克隆函数单元
CN201810971268.8A Active CN109493902B (zh) 2017-09-12 2018-08-24 随机码产生器及其相关控制方法
CN201811041352.6A Active CN109558339B (zh) 2017-09-12 2018-09-07 安全系统及安全系统的操作方法
CN201811050013.4A Active CN109493908B (zh) 2017-09-12 2018-09-10 非易失性存储器胞的编程方法

Family Applications Before (2)

Application Number Title Priority Date Filing Date
CN201810945512.3A Active CN109495243B (zh) 2017-09-12 2018-08-20 使用随机数位的安全系统及安全系统的操作方法
CN201810971534.7A Active CN109493898B (zh) 2017-09-12 2018-08-24 物理不可克隆函数单元

Family Applications After (2)

Application Number Title Priority Date Filing Date
CN201811041352.6A Active CN109558339B (zh) 2017-09-12 2018-09-07 安全系统及安全系统的操作方法
CN201811050013.4A Active CN109493908B (zh) 2017-09-12 2018-09-10 非易失性存储器胞的编程方法

Country Status (5)

Country Link
US (4) US10649735B2 (zh)
EP (3) EP3454318B1 (zh)
JP (3) JP6538908B2 (zh)
CN (5) CN109495243B (zh)
TW (5) TWI697809B (zh)

Families Citing this family (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
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
CN111201533B (zh) * 2018-08-10 2023-06-23 深圳市为通博科技有限责任公司 物理不可克隆函数puf装置
US11263331B2 (en) * 2018-09-27 2022-03-01 Taiwan Semiconductor Manufacturing Company, Ltd. Electronic device for checking randomness of identification key device, random key checker circuit, and method of checking randomness of electronic device
EP3640945B1 (en) * 2018-10-15 2021-03-17 Nxp B.V. Non-volatile memory with physical unclonable function
CN111723408B (zh) * 2019-03-21 2023-06-02 中芯国际集成电路制造(上海)有限公司 用于生成puf特征码的装置
US11121884B2 (en) * 2019-06-10 2021-09-14 PUFsecurity Corporation Electronic system capable of self-certification
CN110309574B (zh) * 2019-06-25 2023-01-06 北京智涵芯宇科技有限公司 可感知芯片电路物理完整性的puf电路及芯片
EP3770751B1 (en) 2019-07-25 2023-10-18 PUFsecurity Corporation High speed encryption key generating engine
US20210051010A1 (en) * 2019-08-16 2021-02-18 PUFsecurity Corporation Memory Device Providing Data Security
CN110491434B (zh) * 2019-08-23 2021-04-02 上海华虹宏力半导体制造有限公司 一种闪存存储器装置及其编程方法
US11456867B2 (en) * 2019-10-25 2022-09-27 International Business Machines Corporation Trust-anchoring of cryptographic objects
US11296096B2 (en) * 2019-11-08 2022-04-05 Zhuhai Chuangfeixin Technology Co., Ltd. Antifuse OTP structure with hybrid junctions
US11217595B2 (en) * 2020-01-15 2022-01-04 Zhuhai Chuangfeixin Technology Co., Ltd. Antifuse OTP structure with hybrid device and hybrid junction for select transistor
US11158641B2 (en) * 2020-02-12 2021-10-26 Zhuhai Chuangfeixin Technology Co., Ltd. Antifuse OTP structures with hybrid devices and hybrid junctions
US11018143B1 (en) * 2020-03-12 2021-05-25 Zhuhai Chuangfeixin Technology Co., Ltd. Antifuse OTP structures with hybrid low-voltage devices
CN113496988B (zh) * 2020-04-08 2023-12-12 长鑫存储技术有限公司 反熔丝单元及反熔丝阵列
US11233663B1 (en) * 2020-07-22 2022-01-25 Nxp Usa, Inc. Physically unclonable function having source bias transistors
US11380379B2 (en) 2020-11-02 2022-07-05 Macronix International Co., Ltd. PUF applications in memories
CN113009817B (zh) * 2021-02-08 2022-07-05 浙江大学 一种基于控制器输出状态安全熵的工控系统入侵检测方法
US20230139712A1 (en) * 2021-11-04 2023-05-04 National Yang Ming Chiao Tung University Circuit apparatus and methods for puf source and generating random digital sequence
CN116092623B (zh) * 2023-04-12 2023-07-28 四川执象网络有限公司 一种基于基层医学质控的健康数据管理方法

Family Cites Families (62)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5541996A (en) * 1994-12-12 1996-07-30 Itt Corporation Apparatus and method for a pseudo-random number generator for high precision numbers
US6292394B1 (en) 2000-06-29 2001-09-18 Saifun Semiconductors Ltd. Method for programming of a semiconductor memory cell
EP1359550A1 (fr) 2001-11-30 2003-11-05 STMicroelectronics S.A. Régéneration d'une quantité secrète à partir d'un identifiant d'un circuit intégré
US7136304B2 (en) 2002-10-29 2006-11-14 Saifun Semiconductor Ltd Method, system and circuit for programming a non-volatile memory array
US7177199B2 (en) 2003-10-20 2007-02-13 Sandisk Corporation Behavior based programming of non-volatile memory
US7149114B2 (en) * 2004-03-17 2006-12-12 Cypress Semiconductor Corp. Latch circuit and method for writing and reading volatile and non-volatile data to and from the latch
US6970394B2 (en) 2004-04-22 2005-11-29 Taiwan Semiconductor Manufacturing Co., Ltd. Programming method for electrical fuse cell and circuit thereof
US7133316B2 (en) 2004-06-02 2006-11-07 Macronix International Co., Ltd. Program/erase method for P-channel charge trapping memory device
US7253496B2 (en) * 2005-06-28 2007-08-07 Cypress Semiconductor Corporation Antifuse circuit with current regulator for controlling programming current
US20070061595A1 (en) * 2005-09-14 2007-03-15 Huang-Chung Chen Apparatus and method for protecting data
KR100763353B1 (ko) * 2006-04-26 2007-10-04 삼성전자주식회사 인접하는 메모리셀과의 커플링 노이즈를 저감시키는불휘발성 반도체 메모리 장치
JP2008047702A (ja) * 2006-08-16 2008-02-28 Nec Electronics Corp 半導体記憶装置
KR101193348B1 (ko) * 2006-12-22 2012-10-19 싸이던스 코포레이션 마스크 프로그램 가능한 안티-퓨즈 아키텍처
TWI430275B (zh) * 2008-04-16 2014-03-11 Magnachip Semiconductor Ltd 用於程式化非揮發性記憶體裝置之方法
WO2010096915A1 (en) * 2009-02-27 2010-09-02 Sidense Corp. Low power antifuse sensing scheme with improved reliability
US8304835B2 (en) * 2009-03-27 2012-11-06 National Semiconductor Corporation Configuration and fabrication of semiconductor structure using empty and filled wells
CN102783028B (zh) * 2010-01-15 2016-02-03 三菱电机株式会社 比特列生成装置以及比特列生成方法
KR101614950B1 (ko) * 2010-04-12 2016-04-25 삼성전자주식회사 저장 장치에 물리적 식별자를 생성하는 방법 및 기계로 읽을 수 있는 저장 매체
US20120314474A1 (en) * 2011-06-09 2012-12-13 Hsin-Ming Chen Non-volatile memory cell structure and method for programming and reading the same
CN102393890B (zh) * 2011-10-09 2014-07-16 广州大学 一种抗物理入侵和旁路攻击的密码芯片系统及其实现方法
JP5831203B2 (ja) * 2011-12-20 2015-12-09 富士通株式会社 個体別情報生成装置、暗号化装置、認証システム、及び個体別情報生成方法
WO2013101085A1 (en) * 2011-12-29 2013-07-04 Intel Corporation Secure key storage using physically unclonable functions
DE102012102254B4 (de) * 2012-03-16 2020-09-24 Infineon Technologies Ag Vorrichtung und Verfahren zur Rekonstruktion einer Bitfolge unter Vorkorrektur
US9304944B2 (en) * 2012-03-29 2016-04-05 Broadcom Corporation Secure memory access controller
CA2816237C (en) * 2012-05-18 2014-09-30 Sidense Corp. Circuit and method for reducing write disturb in a non-volatile memory device
US8928347B2 (en) * 2012-09-28 2015-01-06 Intel Corporation Integrated circuits having accessible and inaccessible physically unclonable functions
JP6267207B2 (ja) * 2012-10-04 2018-01-24 イントリンシツク・イー・デー・ベー・ベー 物理的クローン不能関数として使用されるメモリから暗号化キーを生成するためのシステム
CN103020549B (zh) * 2012-11-26 2016-05-11 北京华大信安科技有限公司 存储器的保护装置以及存储装置
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
US9281074B2 (en) * 2013-05-16 2016-03-08 Ememory Technology Inc. One time programmable memory cell capable of reducing leakage current and preventing slow bit response
TWI640863B (zh) 2013-07-26 2018-11-11 Ict韓國有限公司 測試隨機性的儀器以及方法
US9992031B2 (en) * 2013-09-27 2018-06-05 Intel Corporation Dark bits to reduce physically unclonable function error rates
JP6354172B2 (ja) * 2014-01-20 2018-07-11 富士通株式会社 半導体集積回路及び認証システム
WO2015148659A1 (en) * 2014-03-25 2015-10-01 Mai Kenneth Wei-An Methods for generating reliable responses in physical unclonable functions (pufs) and methods for designing strong pufs
US10216484B2 (en) * 2014-06-10 2019-02-26 Texas Instruments Incorporated Random number generation with ferroelectric random access memory
KR102169197B1 (ko) * 2014-09-16 2020-10-22 에스케이하이닉스 주식회사 향상된 프로그램 효율을 갖는 안티퓨즈 오티피 메모리 셀 및 셀 어레이
US10129036B2 (en) 2014-09-18 2018-11-13 Intel Corporation Post-processing mechanism for physically unclonable functions
US9460797B2 (en) * 2014-10-13 2016-10-04 Ememory Technology Inc. Non-volatile memory cell structure and non-volatile memory apparatus using the same
EP3207539B1 (en) 2014-10-13 2021-03-17 Intrinsic ID B.V. Cryptographic device comprising a physical unclonable function
US10353638B2 (en) * 2014-11-18 2019-07-16 Microsemi SoC Corporation Security method and apparatus to prevent replay of external memory data to integrated circuits having only one-time programmable non-volatile memory
CN105632543B (zh) * 2014-11-21 2018-03-30 松下知识产权经营株式会社 具有防篡改性的非易失性存储装置及集成电路卡
WO2016102164A1 (en) * 2014-12-24 2016-06-30 Intrinsic Id B.V. Cryptographic key production from a physical unclonable function
US11115022B2 (en) * 2015-05-07 2021-09-07 Northwestern University System and method for integrated circuit usage tracking circuit with fast tracking time for hardware security and re-configurability
CN104836669B (zh) * 2015-05-08 2018-04-06 东南大学 一种基于sram puf的安全认证方法及一种终端、认证系统
JP6587188B2 (ja) * 2015-06-18 2019-10-09 パナソニックIpマネジメント株式会社 乱数処理装置、集積回路カード、および乱数処理方法
JP6617924B2 (ja) * 2015-06-18 2019-12-11 パナソニックIpマネジメント株式会社 耐タンパ性を有する不揮発性メモリ装置および集積回路カード、不揮発性メモリ装置の認証方法、個体識別情報生成方法
EP3113409A1 (en) * 2015-07-01 2017-01-04 Secure-IC SAS Embedded test circuit for physically unclonable function
KR102656990B1 (ko) * 2015-08-06 2024-04-12 인트린직 아이디 비브이 물리적 복제 방지 기능을 갖는 암호화 디바이스
WO2017025597A1 (en) 2015-08-11 2017-02-16 Koninklijke Philips N.V. Key sharing device and method
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
CN105007285B (zh) * 2015-08-19 2018-07-24 南京万道电子技术有限公司 一种基于物理不可克隆函数的密钥保护方法和安全芯片
US10142103B2 (en) * 2015-12-07 2018-11-27 The Boeing Company Hardware assisted fast pseudorandom number generation
WO2017117663A1 (en) * 2016-01-08 2017-07-13 Sidense Corp. Puf value generation using an anti-fuse memory array
US9613714B1 (en) * 2016-01-19 2017-04-04 Ememory Technology Inc. One time programming memory cell and memory array for physically unclonable function technology and associated random code generating method
CN105743645B (zh) * 2016-01-25 2019-06-18 清华大学 基于puf的流秘钥生成装置、方法及数据加密、解密方法
CN106020771B (zh) 2016-05-31 2018-07-20 东南大学 一种基于puf的伪随机序列发生器
US10438025B2 (en) * 2016-10-04 2019-10-08 Taiwan Semiconductor Manufacturing Co., Ltd. Self-destruct SRAM-based authentication circuit
US10122538B2 (en) * 2016-10-12 2018-11-06 Ememory Technology Inc. Antifuse physically unclonable function unit and associated control method
US9779832B1 (en) 2016-12-07 2017-10-03 Sandisk Technologies Llc Pulsed control line biasing in memory
JP2018113415A (ja) * 2017-01-13 2018-07-19 ルネサスエレクトロニクス株式会社 半導体装置
US11522724B2 (en) * 2017-12-11 2022-12-06 International Business Machines Corporation SRAM as random number generator

Also Published As

Publication number Publication date
JP6538908B2 (ja) 2019-07-03
JP2019054233A (ja) 2019-04-04
US10664239B2 (en) 2020-05-26
EP3454318A3 (en) 2019-10-23
TW201913442A (zh) 2019-04-01
US10649735B2 (en) 2020-05-12
CN109493908B (zh) 2021-03-05
EP3454319A3 (en) 2019-10-23
JP6609354B2 (ja) 2019-11-20
TW201914141A (zh) 2019-04-01
US20190079732A1 (en) 2019-03-14
EP3454319B1 (en) 2022-11-23
JP2019054509A (ja) 2019-04-04
EP3454320B1 (en) 2021-03-17
US20190080778A1 (en) 2019-03-14
EP3454318A1 (en) 2019-03-13
TWI677152B (zh) 2019-11-11
US20190081804A1 (en) 2019-03-14
TWI673714B (zh) 2019-10-01
TW201913443A (zh) 2019-04-01
CN109493902A (zh) 2019-03-19
EP3454319A1 (en) 2019-03-13
TWI693530B (zh) 2020-05-11
CN109493908A (zh) 2019-03-19
TW201913674A (zh) 2019-04-01
US10177924B1 (en) 2019-01-08
EP3454320A3 (en) 2019-10-23
CN109493898A (zh) 2019-03-19
CN109495243A (zh) 2019-03-19
CN109558339A (zh) 2019-04-02
EP3454320A1 (en) 2019-03-13
US10691414B2 (en) 2020-06-23
CN109495243B (zh) 2022-03-08
CN109493898B (zh) 2020-11-24
JP2019054504A (ja) 2019-04-04
TW201913446A (zh) 2019-04-01
TWI697809B (zh) 2020-07-01
JP6593501B2 (ja) 2019-10-23
EP3454318B1 (en) 2022-05-11
CN109558339B (zh) 2023-06-09
TWI684893B (zh) 2020-02-11

Similar Documents

Publication Publication Date Title
CN109493902B (zh) 随机码产生器及其相关控制方法
JP6479226B2 (ja) 物理複製困難関数技術のためのワンタイムプログラミングメモリセルおよびメモリアレイならびに関連するランダムコード生成方法
EP3576341B1 (en) Random code generator and associated random code generating method
CN108701486B (zh) 使用反熔丝存储器阵列的puf值生成
JP5279899B2 (ja) 安全な乱数生成器
CN107944301B (zh) 反熔丝物理不可复制电路以及相关控制方法
JP4921985B2 (ja) 不揮発性半導体記憶装置
US9984767B2 (en) Semiconductor device having capability of generating chip identification information
EP3471102B1 (en) Random code generator with differential cells and associated control method
US9418763B2 (en) Memory array, memory device, and methods for reading and operating the same
US20180232267A1 (en) Memory device, memory controller and operation method thereof
JP2006294085A (ja) 半導体装置
US10657294B2 (en) Non-volatile memory with physical unclonable function
EP3136286B1 (en) Data processing system with secure key generation
US8755215B2 (en) Resistive memory device
US11327860B2 (en) Memory device and methods for programming and reading memory device
JP2019160371A (ja) メモリ回路および電子機器

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