KR20200087104A - Memory programing method and device performing the same - Google Patents

Memory programing method and device performing the same Download PDF

Info

Publication number
KR20200087104A
KR20200087104A KR1020200082066A KR20200082066A KR20200087104A KR 20200087104 A KR20200087104 A KR 20200087104A KR 1020200082066 A KR1020200082066 A KR 1020200082066A KR 20200082066 A KR20200082066 A KR 20200082066A KR 20200087104 A KR20200087104 A KR 20200087104A
Authority
KR
South Korea
Prior art keywords
memory
data
rewrite pattern
cells
unit
Prior art date
Application number
KR1020200082066A
Other languages
Korean (ko)
Other versions
KR102247375B1 (en
Inventor
유범선
윤태일
유대영
Original Assignee
매그나칩 반도체 유한회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 매그나칩 반도체 유한회사 filed Critical 매그나칩 반도체 유한회사
Priority to KR1020200082066A priority Critical patent/KR102247375B1/en
Publication of KR20200087104A publication Critical patent/KR20200087104A/en
Application granted granted Critical
Publication of KR102247375B1 publication Critical patent/KR102247375B1/en

Links

Images

Classifications

    • 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
    • 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

Landscapes

  • Read Only Memory (AREA)

Abstract

A memory programming device comprises: a memory reading unit reading read data in a plurality of cells associated with a specific address of a programmable memory; and a memory writing unit writing write data to the plurality of cells before the reading and generating a rewrite pattern by comparing the write data with the read data after the reading to correct at least one mismatched cell among the plurality of cells. Therefore, the memory programming device may reduce memory programming process time and increase the yield.

Description

메모리 프로그래밍 방법 및 이를 수행하는 장치{MEMORY PROGRAMING METHOD AND DEVICE PERFORMING THE SAME}MEMORY PROGRAMING METHOD AND DEVICE PERFORMING THE SAME

본 발명은 메모리 프로그래밍 방법 및 이를 수행하는 장치에 관한 것으로, 보다 상세하게는, 일회 프로그램 가능한(One-time Programmable) 메모리에 대한 멀티 비트 프로그램 방법 및 이를 수행하는 장치에 관한 것이다.The present invention relates to a memory programming method and an apparatus for performing the same, and more particularly, to a multi-bit programming method for a one-time programmable memory and an apparatus for performing the same.

일회 프로그램 가능한(One-time Programmable, 이하 "OTP"라 함) 메모리는 행 방향(row direction)과 열 방향(column direction)으로 전개되는 복수의 OTP 단위 셀들을 포함한다.One-time programmable (hereinafter referred to as "OTP") memory includes a plurality of OTP unit cells that are deployed in a row direction and a column direction.

OTP 단위 셀은 DRAM, EEPROM, FLASH와 같은 휘발성 또는 비휘발성 메모리 소자 내에 형성되어 메모리 리페어(repair) 용도로 사용된다. 또한, 아날로그 칩(analog chip)과 디지털 칩(digital chip)이 혼합된 혼합 신호 칩(mixed-signal chip)에서는 내부 동작 전압과 주파수 트리밍(trimming)을 목적으로 사용된다.The OTP unit cell is formed in a volatile or nonvolatile memory device such as DRAM, EEPROM, and FLASH, and is used for memory repair. In addition, a mixed-signal chip in which an analog chip and a digital chip are mixed is used for the purpose of internal operating voltage and frequency trimming.

일반적으로, OTP 단위 셀은 MOSFET(Metal-Oxide-Semiconductor Field Effect Transistor)(이하, MOS 트랜지스터라 함)으로 이루어진 안티 퓨즈(Anti-fuse)와, 하나 또는 복수 개의 MOS 트랜지스터를 포함한다. 이러한 OTP 단위 셀은 각 메모리 칩 내에서 단일(single) 또는 어레이(array) 형태로 형성되어 리페어 또는 트리밍에 사용되고 있다.In general, an OTP unit cell includes an anti-fuse made of a metal-oxide-semiconductor field effect transistor (MOSFET) (hereinafter referred to as a MOS transistor) and one or a plurality of MOS transistors. These OTP unit cells are formed in a single (single) or array (array) form in each memory chip is used for repair or trimming.

한국등록특허 제10-0845407호(2008.07.03.)는 원-타임-프로그래머블 셀 및 이를 구비하는 OTP 메모리에 관한 것으로, 보다 적은 MOS 트랜지스터로 구현되어 적은 면적 및 짧은 액세스 타임을 가지며, 인버터 타입의 감지증폭기를 구비하여 누설 전류 및 면적 소모를 중일 수 있는 효과가 있다.Korean Registered Patent No. 10-0845407 (2008.07.03.) relates to a one-time-programmable cell and an OTP memory having the same, implemented with fewer MOS transistors, having a small area and short access time, and an inverter type Equipped with a sense amplifier, there is an effect that can be used for leakage current and area consumption.

한국등록특허 제10-1051673호(2011.07.19.)는 안티퓨즈 및 그 형성방법, 이를 구비한 비휘발성 메모리소자의 단위 셀에 관한 것으로, MOS 트랜지스터로 이루어진 안티퓨즈의 게이트 절연막을 안정적으로 파괴시켜 읽기 동작시 데이터 감지 여유를 개선시켜 동작 신뢰성을 향상시킬 수 있다.Korean Registered Patent No. 10-1051673 (2011.07.19.) relates to an antifuse and a method of forming the unit cell of a nonvolatile memory device having the same, and stably destroys an antifuse gate insulating film made of a MOS transistor. Operation reliability can be improved by improving data detection margin during read operation.

도 1은 종래 기술에 따른 OTP 메모리의 프로그래밍 방법을 설명하기 위해 도시된 단면도이다.1 is a cross-sectional view illustrating a programming method of an OTP memory according to the prior art.

도 1을 참조하면, OTP 메모리의 프로그래밍은 OTP 단위 셀(100)의 안티퓨즈(CMOS 안티퓨즈)에 고전압(OTPV)을 인가하여, CMOS 게이트 절연막(Gate Oxide, 103)를 파괴하고, 게이트(104)와 기판(101)간 저항 값을 일정 저항 값(예를 들어, 수 MΩ)으로 낮추는 방식이다.Referring to FIG. 1, programming of an OTP memory applies a high voltage (OTPV) to the antifuse (CMOS antifuse) of the OTP unit cell 100, thereby destroying the CMOS gate insulating layer 103 and gate 104 ) And lowers the resistance value between the substrate 101 to a constant resistance value (for example, several MΩ).

보다 구체적으로, 종래기술에 따른 OTP 단위 셀(100)의 안티퓨즈는 기판(101) 상에 형성된 게이트 전극(104), 게이트 전극(104)의 측벽으로 노출된 기판 내에 형성된 접합영역(105) 및 게이트 전극(104)과 기판(101) 사이에 비교적 얇은 두께로 형성된 게이트 절연막(103)을 포함한다.More specifically, the antifuse of the OTP unit cell 100 according to the prior art includes a gate electrode 104 formed on the substrate 101, a junction region 105 formed in the substrate exposed to the sidewalls of the gate electrode 104, and And a gate insulating layer 103 formed with a relatively thin thickness between the gate electrode 104 and the substrate 101.

접합영역(105)과 픽-업(pick up) 영역(웰(102)에 바이어스를 인가하기 위한 영역, 106)은 상호 접속되어 접지 전압단(VSS)과 접속된다. 그리고, 금속배선을 통해 게이트 전극(104)으로 쓰기 전압(OTPV)이 인가된다. 이에 따라, 게이트 전극(104)과 기판(101) 간에는 고전계가 형성되어 게이트 절연막(103)이 파괴(breakdown)되고, 게이트 전극(104)과 기판(101)은 전기적으로 단락 된다.The junction region 105 and the pick-up region (area for applying bias to the well 102, 106) are interconnected and connected to the ground voltage terminal (VSS). Then, the write voltage OTPV is applied to the gate electrode 104 through the metal wiring. Accordingly, a high electric field is formed between the gate electrode 104 and the substrate 101 to break down the gate insulating layer 103, and the gate electrode 104 and the substrate 101 are electrically shorted.

종래의 OTP 메모리의 프로그래밍 방법은 쓰기 과정을 수행한 후, OTP 메모리에 기록된 데이터를 읽어 기록할 데이터와 비교하여 모든 비트(Bit)가 통과(pass, 기록할 데이터와 동일)할 때가지 반복적으로 수행한다. 예를 들어, OPT 메모리의 8비트 단위 셀들에 쓰기를 수행하고 8비트 전부가 통과하지 못한 경우, 8비트 단위 셀들 전체에 대한 다시 쓰기(Re-writing)을 수행한다.In the conventional programming method of OTP memory, after the writing process is performed, data recorded in the OTP memory is read and compared with the data to be written repeatedly until all bits (pass) are the same. Perform. For example, if writing is performed on 8-bit unit cells of the OPT memory and all 8 bits have not passed, re-writing of all 8-bit unit cells is performed.

여기에서, 이미 게이트 절연막이 파괴된 경로(path)에 대해서 고전류의 에너지가 집중되므로, 파괴되지 않은 단위 셀에 대해서 상대적으로 에너지의 집중도가 감소된다. 따라서, 쓰기 공정이 길어지며, 절연막의 파괴가 제대로 이루어지지 않아 수율(Yield)이 감소되는 문제점이 있다.Here, since the energy of the high current is concentrated in the path where the gate insulating film has already been destroyed, the concentration of energy is reduced relative to the unbroken unit cell. Accordingly, there is a problem in that the writing process is lengthened and the yield of the insulating film is not properly broken, so that the yield is reduced.

한국등록특허 제10-0845407호(2008.07.03.)Korean Registered Patent No. 10-0845407 (2008.07.03.) 한국등록특허 제10-1051673호(2011.07.19.)Korean Registered Patent No. 10-1051673 (2011.07.19.)

본 발명은 메모리 프로그래밍 공정 시간을 감축시키고 수율을 증가시킬 수 있는 메모리 프로그래밍 방법 및 이를 수행하는 장치를 제공하고자 한다.The present invention is to provide a memory programming method and an apparatus for performing the same, which can reduce the memory programming process time and increase the yield.

본 발명은 메모리 프로그래밍 루프에 대한 제어가 가능한 메모리 프로그래밍 방법 및 이를 수행하는 장치를 제공하고자 한다.The present invention is to provide a memory programming method capable of controlling a memory programming loop and an apparatus for performing the same.

실시예들 중에서 메모리 프로그래밍 장치는 프로그램 가능한 메모리의 특정 주소와 연관된 복수의 셀들에 있는 독출 데이터를 독출하는 메모리 독출부; 및 상기 독출 전에 상기 복수의 셀들에 미리 기록 데이터를 기록하고, 상기 독출 후에 상기 기록 데이터와 상기 독출 데이터를 비교하여 재기록 패턴을 생성하여 상기 복수의 셀들 중 적어도 하나의 불일치 셀을 정정하는 메모리 기록부를 포함한다.Among embodiments, a memory programming apparatus includes a memory reading unit for reading read data in a plurality of cells associated with a specific address of a programmable memory; And a memory recording unit which records recording data in advance in the plurality of cells before the reading, and corrects at least one mismatched cell among the plurality of cells by generating a rewriting pattern by comparing the reading data with the reading data after the reading. Includes.

여기에서, 상기 메모리 독출부는 상기 정정 후에 상기 특정 주소를 통해 상기 복수의 셀들에 있는 재독출 데이터를 재독출하는 재독출 연산을 수행하고, 상기 메모리 기록부는 상기 재독출 데이터를 통해 상기 재기록 패턴을 갱신하여 상기 적어도 하나의 불일치 셀 중 적어도 하나의 재불일치 셀을 재정정하는 재정정 연산을 수행할 수 있다.Here, the memory reading unit performs a re-reading operation to re-read data in the plurality of cells through the specific address after the correction, and the memory recording unit updates the re-writing pattern through the re-reading data Accordingly, a re-arrangement operation for re-arranging at least one re-mismatched cell among the at least one mismatched cell may be performed.

일 실시예에서, 상기 메모리 독출부와 상기 메모리 기록부는 상기 복수의 셀들에 기록된 내용에 오류가 발생하지 않을 때까지 상기 재독출 연산과 상기 재정정 연산을 순차적으로 반복할 수 있다.In one embodiment, the memory reading unit and the memory recording unit may sequentially repeat the re-reading operation and the redefinition operation until no error occurs in the contents recorded in the plurality of cells.

일 실시예에서, 상기 메모리 기록부는 상기 생성된 재기록 패턴을 저장하는 재기록 패턴 저장 모듈을 더 포함할 수 있다.In one embodiment, the memory recording unit may further include a rewrite pattern storage module for storing the generated rewrite pattern.

일 실시예에서, 상기 메모리 기록부는 퓨징 전압을 생성하는 전압 생성 모듈; 및 상기 재기록 패턴을 기초로 상기 적어도 하나의 불일치 셀에 상기 생성된 퓨징 전압을 인가하는 전압 인가 모듈을 더 포함할 수 있다. 여기에서, 상기 전압 인가 모듈은 상기 재기록 패턴을 기초로 제어되고 상기 복수의 셀들에 상기 퓨징 전압을 인가할 수 있는 복수의 스위치들을 포함할 수 있다.In one embodiment, the memory recording unit is a voltage generation module for generating a fusing voltage; And a voltage application module that applies the generated fusing voltage to the at least one mismatched cell based on the rewrite pattern. Here, the voltage application module may include a plurality of switches that are controlled based on the rewrite pattern and can apply the fusing voltage to the plurality of cells.

일 실시예에서, 메모리 프로그래밍 장치는 상기 재정정 연산에 대한 반복 횟수를 카운팅하여 특정 횟수를 초과하는 지 여부를 판단하는 제어부를 더 포함할 수 있다.In one embodiment, the memory programming apparatus may further include a control unit that counts the number of iterations for the re-alignment operation and determines whether or not a specific number is exceeded.

일 실시예에서, 메모리 프로그래밍 장치는 외부로부터 프로그래밍 데이터를 수신하여 메모리의 특정 주소에 해당하는 셀 선택 정보를 추출하는 주소 디코딩부를 더 포함할 수 있다.In one embodiment, the memory programming apparatus may further include an address decoding unit that receives programming data from the outside and extracts cell selection information corresponding to a specific address of the memory.

실시예들 중에서, 메모리 프로그래밍 방법은 메모리 프로그래밍 장치에서 수행된다. 메모리 프로그래밍 방법은 프로그램 가능한 메모리의 특정 주소와 연관된 복수의 셀들에 기록 데이터를 기록하는 단계; 상기 복수의 셀들에 있는 독출 데이터를 독출하는 단계; 및 상기 기록 데이터와 상기 독출 데이터를 비교하여 재기록 패턴을 생성하여 상기 복수의 셀들 중 적어도 하나의 불일치 셀을 정정하는 단계를 포함한다.Among embodiments, a memory programming method is performed in a memory programming device. A memory programming method includes writing write data to a plurality of cells associated with a specific address of a programmable memory; Reading read data in the plurality of cells; And comparing the recorded data with the read data to generate a rewrite pattern to correct at least one mismatched cell among the plurality of cells.

실시예들 중에서, 메모리 테스터는 프로그램 가능한 메모리를 수용하는 메모리 수용부; 및 상기 메모리의 프로그래밍을 수행하는 메모리 프로그래밍 장치를 포함하고, 상기 메모리 프로그래밍 장치는 프로그램 가능한 메모리의 특정 주소와 연관된 복수의 셀들에 있는 독출 데이터를 독출하는 메모리 독출부; 및 상기 독출 전에 상기 복수의 셀들에 미리 기록 데이터를 기록하고, 상기 독출 후에 상기 기록 데이터와 상기 독출 데이터를 비교하여 재기록 패턴을 생성하여 상기 복수의 셀들 중 적어도 하나의 불일치 셀을 정정하는 메모리 기록부를 포함한다.Among the embodiments, the memory tester includes a memory accommodating portion accommodating a programmable memory; And a memory programming device that performs programming of the memory, wherein the memory programming device comprises: a memory reading unit that reads read data in a plurality of cells associated with a specific address of a programmable memory; And a memory recording unit which records recording data in advance in the plurality of cells before the reading, and corrects at least one mismatched cell among the plurality of cells by generating a rewriting pattern by comparing the reading data with the reading data after the reading. Includes.

개시된 기술은 다음의 효과를 가질 수 있다. 다만, 특정 실시예가 다음의 효과를 전부 포함하여야 한다거나 다음의 효과만을 포함하여야 한다는 의미는 아니므로, 개시된 기술의 권리범위는 이에 의하여 제한되는 것으로 이해되어서는 아니 될 것이다.The disclosed technology can have the following effects. However, since a specific embodiment does not mean that all of the following effects should be included or only the following effects are included, the scope of rights of the disclosed technology should not be understood as being limited thereby.

본 발명의 일 실시예에 따른 메모리 프로그래밍 기술은 재기록 패턴의 생성 및 갱신을 통해 메모리 프로그래밍 공정 시간을 감축시키고 수율을 증가시킬 수 있다.The memory programming technique according to an embodiment of the present invention may reduce memory programming process time and increase yield through generation and update of a rewrite pattern.

본 발명의 일 실시예에 따른 메모리 프로그래밍 기술은 기록 데이터와 독출 데이터의 비교 연산을 통해 메모리 프로그래밍 루프에 대한 제어가 가능할 수 있다.The memory programming technique according to an embodiment of the present invention may be capable of controlling a memory programming loop through a comparison operation between write data and read data.

도 1은 종래의 OTP 메모리의 프로그래밍 방법을 설명하기 위해 도시된 단면도이다.
도 2는 본 발명의 일 실시예에 따른 메모리 프로그래밍 장치의 블록도이다.
도 3은 도 2에 있는 메모리 프로그래밍 장치의 동작을 설명하기 위해 도시된 회로도이다.
도 4는 메모리 프로그래밍 방법의 타이밍 블록도이다.
도 5는 도 2에 있는 메모리 프로그래밍 장치에서 수행되는 메모리 프로그래밍 방법의 흐름도이다.
1 is a cross-sectional view illustrating a conventional OTP memory programming method.
2 is a block diagram of a memory programming apparatus according to an embodiment of the present invention.
FIG. 3 is a circuit diagram illustrating the operation of the memory programming device of FIG. 2.
4 is a timing block diagram of a memory programming method.
5 is a flowchart of a memory programming method performed in the memory programming device of FIG. 2.

본 발명에 관한 설명은 구조적 내지 기능적 설명을 위한 실시 예에 불과하므로, 본 발명의 권리범위는 본문에 설명된 실시 예에 의하여 제한되는 것으로 해석되어서는 아니 된다. 즉, 실시 예는 다양한 변경이 가능하고 여러 가지 형태를 가질 수 있으므로 본 발명의 권리범위는 기술적 사상을 실현할 수 있는 균등물들을 포함하는 것으로 이해되어야 한다.Since the description of the present invention is only an example for structural or functional description, the scope of the present invention should not be interpreted as being limited by the examples described in the text. That is, since the embodiments can be variously modified and have various forms, it should be understood that the scope of the present invention includes equivalents capable of realizing technical ideas.

한편, 본 발명에서 서술되는 용어의 의미는 다음과 같이 이해되어야 할 것이다.Meanwhile, the meaning of terms described in the present invention should be understood as follows.

"제1", "제2" 등의 용어는 하나의 구성요소를 다른 구성요소로부터 구별하기 위한 것으로, 이들 용어들에 의해 권리범위가 한정되어서는 아니 된다. 예를 들어, 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다.Terms such as “first” and “second” are for distinguishing one component from other components, and the scope of rights should not be limited by these terms. For example, the first component may be referred to as the second component, and similarly, the second component may also be referred to as the first component.

어떤 구성요소가 다른 구성요소에 "연결되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결될 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다고 언급된 때에는 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다. 한편, 구성요소들 간의 관계를 설명하는 다른 표현들, 즉 "~사이에"와 "바로 ~사이에" 또는 "~에 이웃하는"과 "~에 직접 이웃하는" 등도 마찬가지로 해석되어야 한다.When a component is said to be "connected" to another component, it may be understood that other components may exist in the middle, although they may be directly connected to the other component. On the other hand, when a component is said to be "directly connected" to another component, it should be understood that no other component exists in the middle. On the other hand, other expressions describing the relationship between the components, that is, "between" and "immediately between" or "adjacent to" and "directly neighboring to" should be interpreted similarly.

단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한 복수의 표현을 포함하는 것으로 이해되어야 하고, "포함하다" 또는 "가지다" 등의 용어는 설시된 특징, 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것이 존재함을 지정하려는 것이며, 하나 또는 그 이상의 다른 특징이나 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.Singular expressions are to be understood as including plural expressions unless the context clearly indicates otherwise, and terms such as “comprises” or “having” refer to the features, numbers, steps, actions, components, parts, or components described. It is to be understood that a combination is intended to indicate the existence, and does not preclude the existence or addition possibility of one or more other features or numbers, steps, operations, components, parts or combinations thereof.

각 단계들에 있어 식별부호(예를 들어, a, b, c 등)는 설명의 편의를 위하여 사용되는 것으로 식별부호는 각 단계들의 순서를 설명하는 것이 아니며, 각 단계들은 문맥상 명백하게 특정 순서를 기재하지 않는 이상 명기된 순서와 다르게 일어날 수 있다. 즉, 각 단계들은 명기된 순서와 동일하게 일어날 수도 있고 실질적으로 동시에 수행될 수도 있으며 반대의 순서대로 수행될 수도 있다.In each step, the identification code (for example, a, b, c, etc.) is used for convenience of explanation. The identification code does not describe the order of each step, and each step clearly identifies a specific order in context. Unless stated, it may occur in a different order than specified. That is, each step may occur in the same order as specified, or may be performed substantially simultaneously, or in the reverse order.

본 발명은 컴퓨터가 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 코드로서 구현될 수 있고, 컴퓨터가 읽을 수 있는 기록 매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록 장치를 포함한다. 컴퓨터가 읽을 수 있는 기록 매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피 디스크, 광 데이터 저장 장치 등이 있으며, 또한, 캐리어 웨이브(예를 들어 인터넷을 통한 전송)의 형태로 구현되는 것도 포함한다. 또한, 컴퓨터가 읽을 수 있는 기록 매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산 방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다.The present invention can be embodied as computer readable code on a computer readable recording medium, and the computer readable recording medium includes all kinds of recording devices in which data readable by a computer system is stored. . Examples of computer-readable recording media include ROM, RAM, CD-ROM, magnetic tapes, floppy disks, optical data storage devices, etc., and are also implemented in the form of carrier waves (eg, transmission over the Internet). Also includes. In addition, the computer-readable recording medium can be distributed over network coupled computer systems so that the computer readable code is stored and executed in a distributed fashion.

여기서 사용되는 모든 용어들은 다르게 정의되지 않는 한, 본 발명이 속하는 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가진다. 일반적으로 사용되는 사전에 정의되어 있는 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 것으로 해석되어야 하며, 본 발명에서 명백하게 정의하지 않는 한 이상적이거나 과도하게 형식적인 의미를 지니는 것으로 해석될 수 없다.All terms used herein have the same meaning as generally understood by a person skilled in the art to which the present invention pertains, unless otherwise defined. The terms defined in the commonly used dictionary should be interpreted to be consistent with meanings in the context of related technologies, and cannot be interpreted as having ideal or excessively formal meanings unless explicitly defined in the present invention.

도 2는 본 발명의 일 실시예에 따른 메모리 프로그래밍 장치(200)의 블록도이다.2 is a block diagram of a memory programming apparatus 200 according to an embodiment of the present invention.

도 2를 참조하면, 메모리 프로그래밍 장치(200)는 메모리 기록부(220), 메모리 독출부(210), 주소 디코딩부(230) 및 제어부(240)를 포함한다.Referring to FIG. 2, the memory programming device 200 includes a memory recording unit 220, a memory reading unit 210, an address decoding unit 230, and a control unit 240.

메모리 독출부(210)는 프로그램 가능한 메모리의 특정 주소와 연관된 복수의 셀들에 있는 독출 데이터(Read Data)를 독출(Reading)한다. 여기에서, 프로그램 가능한 메모리는 앞서 설명한 OTP 메모리에 해당할 수 있고, 독출 데이터는 메모리의 특정 주소에 실제 기록된 데이터(Written Data)에 해당한다.The memory reading unit 210 reads read data in a plurality of cells associated with a specific address of a programmable memory. Here, the programmable memory may correspond to the OTP memory described above, and the read data corresponds to data actually written to a specific address of the memory (Written Data).

일 실시예에서, 메모리 독출부(210)는 메모리에 기록 데이터가 기록되면, 메모리의 특정 주소를 통해 복수의 셀들에 있는 재독출 데이터를 재독출하는 재독출 연산을 수행할 수 있다. 여기에서, 재독출이란, 동일한 주소의 기록된 데이터를 다시 독출하는 것에 해당한다.In one embodiment, when the write data is recorded in the memory, the memory reading unit 210 may perform a re-reading operation to re-read the read data in a plurality of cells through a specific address of the memory. Here, the re-reading corresponds to reading the recorded data of the same address again.

메모리 독출부(210)는 앞서 설명한 OTP 메모리 단위 셀 각각의 CMOS 게이트와 접지(GND) 간의 전압을 센싱하여 기준전압과 비교하여 출력하는 방식으로 구현될 수 있다.The memory reading unit 210 may be implemented by sensing a voltage between the CMOS gate and the ground (GND) of each of the OTP memory unit cells described above and comparing the voltage with a reference voltage.

메모리 기록부(220)는 프로그램 가능한 메모리의 특정 주소와 연관된 복수의 셀들에 기록 데이터를 기록하고, 기록 데이터와 메모리 독출부(210)로부터 수신한 독출 데이터를 비교하여 재기록 패턴을 생성하여 상기 복수의 셀들 중 적어도 하나의 불일치 셀을 정정한다.The memory recorder 220 writes write data to a plurality of cells associated with a specific address of a programmable memory, and compares the write data and read data received from the memory readout unit 210 to generate a rewrite pattern to generate the rewrite pattern. Correct at least one mismatched cell.

예를 들어, 메모리 기록부(220)는 메모리의 특정 8개의 셀들에 대한 8비트에 기록 데이터를 외부로부터 수신하여 해당 셀들에 기록한다. 이후, 메모리 기록부(220)는 기록 데이터와 메모리 독출부(210)로부터 수신한 독출 데이터를 비교하여 일치하지 않는 경우, 재기록 패턴-기록되지 않은(기록 실패한) 기록 데이터-를 생성하여 해당 셀들에 대한 기록을 재수행할 수 있다. 여기에서, 재기록 패턴 생성은 기록 데이터에 대한 갱신으로 수행될 수 있다.For example, the memory recording unit 220 receives write data in 8 bits for 8 specific cells in the memory and writes the data to the cells. Thereafter, the memory recording unit 220 compares the read data and the read data received from the memory read unit 210, and if they do not match, generates a rewrite pattern-unrecorded (write failed) write data-for the corresponding cells Records can be redone. Here, rewrite pattern generation can be performed by updating the record data.

일 실시예에서, 메모리 기록부(220)는 재독출 데이터를 통해 재기록 패턴을 갱신하여 적어도 하나의 불일치 셀 중 적어도 하나의 재불일치 셀을 재정정하는 재정정 연산을 수행할 수 있다.In one embodiment, the memory recording unit 220 may perform a re-arrangement operation to re-define at least one re-mismatched cell among at least one mismatched cell by updating the re-write pattern through re-read data.

보다 구체적으로, 메모리 기록부(220)는 재기록 패턴을 재독출 데이터와 비교하여 재기록 패턴 중 기록되지 않은 부부만을 재기록 패턴으로 갱신하고, 재기록 패턴이 기록되지 않은 해당 셀에 대해 기록을 재수행할 수 있다.More specifically, the memory recording unit 220 may compare the rewrite pattern with the re-read data to update only the couple who have not been recorded among the rewrite patterns with the rewrite pattern, and perform rewriting for a corresponding cell in which the rewrite pattern is not recorded.

일 실시예에서, 메모리 독출부(210)와 메모리 기록부(220)는 복수의 셀들에 기록된 내용에 오류가 발생하지 않을 때까지 재독출 연산과 재정정 연산을 순차적으로 반복할 수 있다.In one embodiment, the memory reading unit 210 and the memory recording unit 220 may sequentially repeat the re-reading operation and the re-fixing operation until no error occurs in the contents recorded in the plurality of cells.

다시 말해, 메모리 독출부(210)와 메모리 기록부(220)는 메모리에 최초 기록 데이터가 기록될 때까지 독출과 기록을 반복적으로 수행할 수 있다.In other words, the memory reading unit 210 and the memory recording unit 220 may repeatedly perform reading and writing until the first write data is recorded in the memory.

이와 달리, 메모리 독출부(210)와 메모리 기록부(220)는 특정 횟수에 한정하여 재독출 연산과 재정정 연산을 순차적으로 반복할 수 있으며, 이는 제품 적용예에 따라 달리 적용될 수 있음은 통상의 기술자에게 자명하다 할 것이다.On the other hand, the memory reading unit 210 and the memory recording unit 220 may repeat the re-reading operation and the re-alignment operation sequentially for a specific number of times, and it can be applied differently according to a product application example. Will be self-evident.

본 발명의 일 실시예에 따른 메모리 프로그래밍 장치(200)는 기록 데이터가 기록되지 않는 셀들에 대해서만 기록 데이터의 기록을 수행함에 따라 종래 기술 대비 프로그래밍 시간 단축 및 수율을 증가시킬 수 있다.The memory programming apparatus 200 according to an embodiment of the present invention can reduce programming time and increase yield compared to the prior art by performing recording of write data only for cells in which no write data is recorded.

일 실시예에서, 메모리 기록부(220)는 독출 데이터를 기초로 마스크 데이터를 생성하고, 마스크 데이터와 기록 데이터 간의 논리적 앤드(AND) 연산을 수행하여 재기록 패턴을 생성하는 재기록 패턴 생성 모듈(222)을 포함할 수 있다.In one embodiment, the memory recording unit 220 generates a mask data based on the read data, and performs a logical AND operation between the mask data and the write data to generate a rewrite pattern generating module 222 It can contain.

재기록 패턴 생성모듈은 외부로부터 기록 데이터를, 메모리 독출부(210)로부터 독출 데이터를 각각 수신하고, 기록 데이터와 독출 데이터와 비교하여 재기록 패턴을 생성한다.The rewrite pattern generation module receives the read data from the outside and the read data from the memory reading unit 210, respectively, and compares the write data with the read data to generate a rewrite pattern.

예를 들어, 기록 데이터 및 독출 데이터가 8비트 2진 데이터로서 각각 [11110000], [11000000]에 해당하는 경우, 재기록 패턴 생성모듈은 독출 데이터를 마스크 데이터로 하여 [1]에 해당하는 비트는 패스, [0]에 해당하는 비트는 데이터를 그대로 유지시켜 [00110000]과 같은 재기록 패턴을 생성할 수 있다.For example, when the write data and read data correspond to [11110000] and [11000000], respectively, as 8-bit binary data, the rewrite pattern generation module uses the read data as mask data and the bit corresponding to [1] passes , Bits corresponding to [0] may retain data and generate a rewrite pattern such as [00110000].

다른 예를 들어, 재기록 패턴 생성모듈은 독출 데이터를 반전시켜 마스크 데이터 [00111111]을 생성할 수 있고, 마스크 데이터 [00111111]과 기록 데이터[11110000]을 논리적 앤드 연산을 수행하여 [00110000]과 같은 재기록 패턴을 생성할 수 있다.For another example, the rewrite pattern generation module may generate the mask data [00111111] by inverting the read data, and perform a logical AND operation on the mask data [00111111] and the record data [11110000] to rewrite as [00110000] You can create patterns.

일 실시예에서, 메모리 기록부(220)는 생성된 재기록 패턴을 저장하는 재기록 패턴 저장 모듈(224)을 더 포함할 수 있다.In one embodiment, the memory recording unit 220 may further include a rewrite pattern storage module 224 for storing the generated rewrite pattern.

재기록 패턴 저장 모듈(224)은 재기록 패턴을 일시적으로 저장하고, 저장된 재기록 패턴은 다음 주기의 재기록 패턴을 생성하는데 이용될 수 있다.The rewrite pattern storage module 224 temporarily stores the rewrite pattern, and the stored rewrite pattern can be used to generate a rewrite pattern of the next cycle.

한편, 일실시예에서, 재기록 패턴 생성모듈은 재기록 패턴 저장 모듈(224)로부터 재기록 패턴을, 메모리 독출부(210)로부터 재독출 데이터를 각각 수신하고, 재기록 패턴과 재독출 데이터를 비교하여 재기록 패턴을 갱신할 수 있다.Meanwhile, in one embodiment, the rewrite pattern generation module receives the rewrite pattern from the rewrite pattern storage module 224 and the reread data from the memory reading unit 210, respectively, and compares the rewrite pattern with the reread data to rewrite the pattern. Can be updated.

재기록 패턴 생성모듈은 앞서 설명한 재기록 패턴 생성과 동일하게 재기록 패턴을 갱신할 수 있다.The rewrite pattern generation module may update the rewrite pattern in the same way as the rewrite pattern generation described above.

*다시 말해, 재기록 패턴 생성모듈은 기록 데이터와 독출 데이터를 비교하여 갱신된 기록 데이터에 해당하는 재기록 패턴을 생성하고, 메모리에 대한 기록을 재수행한 이후에, 저장된 재기록 패턴(갱신된 기록 데이터)와 재독출 데이터(메모리에 기록된 데이터)를 비교하여 재기록 패턴을 갱신(갱신된 기록 데이터를 재갱신)할 수 있다.In other words, the rewrite pattern generation module compares the record data and read data to generate a rewrite pattern corresponding to the updated record data, and after re-recording the memory, the stored rewrite pattern (updated record data) and The rewrite data (data recorded in the memory) can be compared to update the rewrite pattern (renew the updated record data).

앞서 설명한 메모리 기록부(220)의 재독출 연산과 재정정 연산의 반복 수행에 따라, 재기록 패턴 생성모듈은 재기록 패턴의 생성 및 갱신을 반복적으로 수행한다.In accordance with the repetition of the re-reading operation and the re-alignment operation of the memory recording unit 220 described above, the rewrite pattern generation module repeatedly generates and updates the rewrite pattern.

일 실시예에서, 재기록 패턴 생성 모듈(222)은 기록 데이터 선택 모듈(미도시)을 더 포함할 수 있다.In one embodiment, the rewrite pattern generation module 222 may further include a record data selection module (not shown).

재기록 패턴 생성 모듈(222)은 재기록 패턴 저장 모듈(224)에 저장된 재기록 패턴을 수신하여 독출 데이터와 비교하는 비교 연산을 수행하되, 외부로부터 기록 데이터가 수신되면 기록 데이터와 독출 데이터간 비교 연산을 수행하도록, 기록 데이터와 재기록 패턴 중 하나를 선택하는 기록 데이터 선택 모듈을 포함할 수 있다.The rewrite pattern generation module 222 receives a rewrite pattern stored in the rewrite pattern storage module 224 and performs a comparison operation to compare the read data, but when record data is received from the outside, performs a comparison operation between the record data and the read data To do this, it may include a recording data selection module for selecting one of the recording data and the rewrite pattern.

일 실시예에서, 메모리 기록부(220)는 퓨징 전압을 생성하는 전압 생성 모듈(226) 및 재기록 패턴을 기초로 적어도 하나의 불일치 셀에 생성된 퓨징 전압을 인가하는 전압 인가 모듈(228)을 더 포함할 수 있다.In one embodiment, the memory recording unit 220 further includes a voltage generation module 226 for generating a fusing voltage and a voltage application module 228 for applying the generated fusing voltage to at least one mismatched cell based on the rewrite pattern. can do.

보다 구체적으로, 메모리 기록부(220)는 OTP 메모리에 대한 프로그래밍 방법에 따라 OTP 메모리 단위 셀에 인가할 퓨징 전압을 생성하는 전압 생성 모듈(226)과 기록 데이터 패턴 또는 재기록 패턴(갱신된 기록 데이터)를 기초로 데이터를 포함하는 해당 셀에 대해 퓨징 전압을 인가하는 전원 인가 모듈을 포함할 수 있다.More specifically, the memory recording unit 220 may include a voltage generation module 226 for generating a fusing voltage to be applied to the OTP memory unit cell according to a programming method for the OTP memory and a write data pattern or a rewrite pattern (updated write data). On the basis, a power supply module that applies a fusing voltage to a corresponding cell including data may be included.

여기에서, 퓨징 전압은 약 8 [V]에 해당하고, 단위 셀들의 배치(및 패스 저항)에 따라 단위 셀들에 인가되는 퓨징 전압은 7.5 내지 8 [V]에 해당할 수 있다.Here, the fusing voltage corresponds to about 8 [V], and the fusing voltage applied to the unit cells according to the arrangement (and pass resistance) of the unit cells may correspond to 7.5 to 8 [V].

일 실시예에서, 전압 인가 모듈(228)은 재기록 패턴(또는 기록 데이터)을 기초로 제어되고 상기 복수의 셀들에 상기 퓨징 전압을 인가할 수 있는 복수의 스위치들을 포함할 수 있다.In one embodiment, the voltage application module 228 may be controlled based on a rewrite pattern (or write data) and include a plurality of switches capable of applying the fusing voltage to the plurality of cells.

여기에서, 복수의 스위치들 각각은 OTP 메모리 단위 셀들과 전원 생성 모듈을 각각 연결할 수 있다.Here, each of the plurality of switches may connect the OTP memory unit cells and the power generation module, respectively.

주소 디코딩부(230)는 외부로부터 프로그래밍 데이터를 수신하여 메모리의 특정 주소에 해당하는 셀 선택 정보를 추출한다.The address decoding unit 230 receives programming data from the outside and extracts cell selection information corresponding to a specific address in memory.

예를 들어, 메모리는 8(행, row) * 16(열, column) 단위 셀들을 포함하는 OTP 메모리에 해당하는 경우, 주소 디코딩부(230)는 외부로부터 메모리의 특정 셀들에 대한 주소 정보를 포함하는 프로그래밍 데이터(4비트)를 수신하여, 해당 메모리를 선택하는 16비트 셀 선택 정보를 디코딩할 수 있다.For example, if the memory corresponds to an OTP memory including 8 (row, row) * 16 (column, column) unit cells, the address decoding unit 230 includes address information for specific cells of the memory from the outside. Receiving the programming data (4 bits) to decode the 16-bit cell selection information for selecting the corresponding memory.

주소 디코딩부(230)는 해당 셀 선택 정보를 메모리 기록부(220)에 제공할 수 있고, 메모리 기록부(220)는 해당 셀 선택 정보와 대응되는 특정 주소의 셀들을 선택하여 기록 데이터의 기록을 수행할 수 있다.The address decoding unit 230 may provide the cell selection information to the memory recording unit 220, and the memory recording unit 220 selects cells of a specific address corresponding to the cell selection information to perform recording of the recording data Can.

제어부(240)는 클럭 신호(Clock)와 재기록 패턴을 기초로 메모리 독출부(210), 메모리 기록부(220) 및 주소 디코딩부(230)를 제어한다. 여기에서, 클럭은 구형파에 해당하고, 외부로부터 수신하거나 또는 제어부(240) 내에서 생성될 수 있다.The control unit 240 controls the memory reading unit 210, the memory recording unit 220, and the address decoding unit 230 based on the clock signal (Clock) and the rewrite pattern. Here, the clock corresponds to a square wave, and may be received from the outside or generated in the controller 240.

일 실시예에서, 제어부(240)는 메모리 기록부(220)에서 생성된 재기록 패턴을 수신하여 특정 데이터에 해당하는지 여부를 판단하여 특정 데이터에 해당하는 경우 해당 주소에 대한 기록 데이터의 기록을 종료시킬 수 있다.In one embodiment, the control unit 240 may receive the rewrite pattern generated by the memory recorder 220 to determine whether it corresponds to specific data, and if it corresponds to the specific data, may end the recording of the record data for the address. have.

예를 들어, 제어부(240)는 메모리 기록부(220)에서 생성된 8비트 재기록 패턴이 [00000000]에 해당하는 경우, 기록 데이터(또는 저장된 재기록 패턴)와 독출 데이터가 동일, 즉 최초 기록 데이터가 OTP 메모리의 해당 주소에 정상적으로 프로그램된 것으로 판단하여 해당 주소에 대한 프로그래밍을 종료시킬 수 있다.For example, if the 8-bit rewrite pattern generated by the memory recorder 220 corresponds to the control unit 240, the record data (or stored rewrite pattern) and read data are the same, that is, the first record data is OTP The program for the corresponding address can be terminated by determining that it is normally programmed in the corresponding address in the memory.

일 실시예에서, 제어부(240)는 메모리 기록부(220)에서 생성된 재기록 패턴이 특정 데이터에 해당하지 않으면, 메모리 독출부(210)와 메모리 기록부(220)로 하여금 각각 독출 및 정정 연산을 반복적으로 수행하도록 제어할 수 있다.In one embodiment, if the rewrite pattern generated by the memory recording unit 220 does not correspond to specific data, the control unit 240 causes the memory reading unit 210 and the memory recording unit 220 to repeatedly read and correct operations, respectively. It can be controlled to perform.

일 실시예에서, 제어부(240)는 메모리 기록부(220)의 정정 연산(또는 재정정 연산)에 대한 반복 횟수를 카운팅하고, 특정 횟수를 초과하는 경우 해당 주소에 대한 기록 데이터의 기록을 종료시킬 수 있다. 여기에서, 특정 횟수는 메모리 프로그래밍 장치(200)의 사용자에 의해 설정된 횟수에 해당할 수 있다.In one embodiment, the control unit 240 counts the number of repetitions for the correction operation (or re-arrangement operation) of the memory recording unit 220 and, if it exceeds a certain number of times, may end the recording of the record data for the address. have. Here, the specific number of times may correspond to the number of times set by the user of the memory programming device 200.

이를 통해, 메모리 프로그래밍 장치(200)는 복수의 셀들에 기록된 내용에 오류가 발생하지 않을 때까지 재독출 연산과 재정정 연산을 반복함에 따라 길어지는 공정 시간을 제어할 수 있다.Through this, the memory programming apparatus 200 may control a process time that is lengthened by repeating the rereading operation and the redefinition operation until no error occurs in the contents written in the plurality of cells.

일 실시예에서, 제어부(240)는 복수의 셀들에 기록된 내용에 오류가 발생하지 않거나 또는 반복 동작 횟수가 특정 횟수(max count)를 초과하면, 주소 디코딩부(230)로 하여금 프로그래밍 데이터를 수신하여 다른 셀 선택 정보를 추출하도록 제어하고, 메모리 기록부(220)로 하여금 특정 주소에 대한 기록 데이터를 갱신하도록 제어할 수 있다.In one embodiment, the control unit 240 receives the programming data from the address decoding unit 230 when an error does not occur in the contents recorded in the plurality of cells or the number of repetitive operations exceeds a certain number (max count) By controlling to extract other cell selection information, it is possible to control the memory recorder 220 to update the record data for a specific address.

보다 구체적으로, 제어부(240)는 복수의 셀들에 기록된 내용에 오류가 발생하지 않거나 또는 반복 동작 횟수가 특정 횟수를 초과하면 해당 주소에 대한 기록 데이터의 기록을 종료시키고, 다른 주소에 대한 기록 데이터의 기록을 수행하기 위해 주소 디코딩부(230)와 메모리 기록부(220)에 대한 제어를 수행할 수 있다.More specifically, the control unit 240 ends the recording of the record data for the corresponding address when no error occurs in the contents recorded in the plurality of cells or the number of repetitive operations exceeds a certain number, and the record data for other addresses In order to perform the recording, the address decoding unit 230 and the memory recording unit 220 may be controlled.

도 3은 도 2에 있는 메모리 프로그래밍 장치(200)의 동작을 설명하기 위해 도시된 회로도이다.3 is a circuit diagram illustrating the operation of the memory programming device 200 of FIG. 2.

도 3을 참조하면, 데이터 기록부는 8비트 단위로 OTP 메모리의 단위 셀들을 퓨징하는 방식으로 기록 데이터를 기록하며, 전압 생성 모듈(226) 및 전압 인가 모듈(228)을 포함한다.Referring to FIG. 3, the data recording unit records recording data by fusing unit cells of an OTP memory in 8-bit units, and includes a voltage generation module 226 and a voltage application module 228.

전압 생성 모듈(226)은 8 [V] 퓨징 전압을 생성하고, 전압 인가 모듈(228)은 전압 생성 모듈(226)과 8개의 단위 셀들을 일대일로 연결할 수 있는 8개의 스위치들을 포함할 수 있다. 여기에서, 스위치들은 단위 셀들 각각에 기록할 기록 데이터(또는 재기록 패턴, RD)에 따라 동작하며, 예를 들어, 해당 단위 셀에 기록할 기록 데이터가 [1]에 해당하는 경우 스위치는 턴온(Turn-On)되고, 해당 단위 셀에 기록할 기록 데이터가 [0]에 해당하는 경우 스위치는 턴오프(Turn-Off) 상태를 유지한다.The voltage generation module 226 generates an 8 [V] fusing voltage, and the voltage application module 228 may include eight switches capable of connecting the voltage generation module 226 and eight unit cells one-to-one. Here, the switches operate according to the write data (or rewrite pattern, RD) to be written in each of the unit cells, for example, when the write data to be written to the corresponding unit cell corresponds to [1], the switch is turned on (Turn -On), and when the write data to be written to the corresponding unit cell corresponds to [0], the switch maintains a turn-off state.

도 3에서, 전압 인가 모듈(228)은 기록 데이터 [00101100]에 따라, 3번째, 5번째 및 6번째 단위 셀들과 전원 생성 모듈(226)을 연결하는 스위치만 턴온된 상태를 나타낸다.In FIG. 3, the voltage application module 228 represents a state in which only a switch connecting the 3rd, 5th and 6th unit cells and the power generation module 226 is turned on.

이를 통해, 메모리 프로그래밍 장치(200)는 재기록 패턴(또는 기록 데이터)를 갱신하고, 기록 데이터의 기록이 이루어지지 않은(실패한 또는 불일치) 단위 셀에 대해서만 퓨징 전압을 인가하여, 전류 에너지(high current energy)를 집중을 통해 정정 연산(또는 재정정 연산)의 반복 횟수를 감소시키고 수율을 증가시킬 수 있다.Through this, the memory programming apparatus 200 updates the rewrite pattern (or write data) and applies a fusing voltage only to the unit cell in which the write data is not written (failure or mismatch), thereby providing high current energy. ) To reduce the number of iterations of the correction operation (or re-arrangement operation) and increase the yield.

도 4는 메모리 프로그래밍 방법의 타이밍 블록도이다.4 is a timing block diagram of a memory programming method.

도 4를 참조하면, X축은 시간을 나타내고, Y축은 위에서부터 아래로 각각 OTP 메모리의 주소(OTP_ADD), 기록 데이터(Write Data), 메모리 기록부(220)의 동작 펄스(OTP_WR), 재기록 패턴(또는 갱신된 기록 데이터, OTP_WDAT), 메모리 독출부(210)의 동작 펄스(OTP_RD) 및 독출 데이터(또는 해당 단위 셀들에 기록된 데이터, OTP_RDAT)를 나타낸다.Referring to FIG. 4, the X-axis represents time, and the Y-axis is the address of the OTP memory (OTP_ADD), write data, write pulse of the OTP memory, and the operation pulse (OTP_WR) of the memory recording unit 220, rewrite pattern (or It indicates updated write data, OTP_WDAT, operation pulse OTP_RD of the memory reading unit 210 and read data (or data recorded in the corresponding unit cells, OTP_RDAT).

제1 주기(1st Cycle)에서, 메모리 기록부(220)는 특정 주소 [0]과 제1 기록 데이터 [11111111]을 수신한다. 메모리 독출부(210)는 동작 펄스가 하이레벨에 해당하는 동안, 해당 주소[0]에 대한 독출 데이터 [00000000]을 독출하여 메모리 기록부(220)에 제공한다.In the first cycle, the memory recording unit 220 receives a specific address [0] and first recording data [11111111]. The memory reading unit 210 reads the reading data for the corresponding address [0] and provides it to the memory recording unit 220 while the operation pulse corresponds to the high level.

메모리 기록부(220)는 제1 기록 데이터 [11111111]과 [00000000]을 비교하여 재기록 패턴을 생성(또는 기록 데이터를 갱신)하고, 기록 데이터의 기록을 수행한다.The memory recording unit 220 compares the first recording data [11111111] with [00000000] to generate a rewrite pattern (or update the recording data), and records the recording data.

메모리 기록부(220)의 작업이 종료되면, 메모리 독출부(210)는 해당 셀들에 기록된 데이터, 즉 독출 데이터 [11010011]을 독출한다.When the operation of the memory recording unit 220 is finished, the memory reading unit 210 reads data recorded in the corresponding cells, that is, reading data [11010011].

여기에서, 메모리 독출부(210)은 독출 데이터의 독출을 제1 주기의 종료 직전 시점에 수행되거나, 제2 주기의 시작 직후 시점 또는 두 시점 모두에서 수행할 수 있다.Here, the memory reading unit 210 may perform reading of the reading data at a time just before the end of the first cycle, or at a time immediately after the start of the second cycle, or both.

제2 주기에서, 메모리 기록부(220)는 재기록 패턴 [11111111]과 독출 데이터 [11010011]을 비교하여 재기록 패턴을 [00101100]으로 갱신할 수 있고, 재기록 패턴 중 [1]에 해당하는 단위 셀들(불일치 셀들)에 대해서만 재기록 패턴의 기록(또는 정정)을 수행한다. 여기에서, 불일치 셀들은 3번째, 5번째 및 6번째 단위 셀들에 해당한다.In the second cycle, the memory recording unit 220 may compare the rewrite pattern [11111111] and the read data [11010011] to update the rewrite pattern to [00101100], and unit cells corresponding to [1] of the rewrite pattern (mismatch) Cells) are recorded (or corrected) only for the rewrite pattern. Here, the mismatched cells correspond to the 3rd, 5th and 6th unit cells.

메모리 독출부(210)는 해당 셀들에 기록된 데이터, 즉 독출 데이터 [11110111]을 독출한다.The memory reading unit 210 reads data recorded in the corresponding cells, that is, reading data [11110111].

제3 주기에서, 메모리 기록부(220)는 다른 주기와 동일하게 재기록 패턴을 [00001000]으로 갱신하여 해당 5번째 셀에 대해 재정정 연산을 수행한다. 메모리 독출부(210)에 의하여 독출 데이터 [11111111]이 독출되면 해당 주소에 대한 프로그래밍은 종료된다. 여기에서, 해당 프로그램의 종료는 앞서 설명한 바와 같이 제어부(240)에 의해 결정될 수 있다.In the third cycle, the memory recording unit 220 updates the rewrite pattern to [00001000] in the same way as the other cycles, and performs a re-arrangement operation on the fifth cell. When the read data [11111111] is read by the memory reading unit 210, programming of the corresponding address is ended. Here, the termination of the corresponding program may be determined by the control unit 240 as described above.

제4 주기에서, 제어부(240)는 다음 특정 주소 [1]에 대해 제2 기록 데이터 [00010001]의 프로그래밍을 수행하도록 제어할 수 있으며, 앞서 설명한 바와 같다.In the fourth cycle, the control unit 240 may control to perform programming of the second record data [00010001] for the next specific address [1], as described above.

메모리 독출부(210)는 제1 주기와 동일하게 독출 데이터 [00000000]을 독출하고, 메모리 기록부(220)는 제1 주기와 동일하게 독출 데이터와 제2 기록 데이터를 비교하여 재기록 패턴을 [00010001]로 갱신하여 해당 주소에 대한 제2 기록 데이터의 기록을 수행한다.The memory reading unit 210 reads the reading data in the same manner as the first cycle, and the memory recording unit 220 compares the reading data and the second recording data in the same manner as the first cycle to read the rewrite pattern. Update to to record the second record data for the address.

메모리 독출부(210)에 의하여 독출 데이터 [00010001]이 독출되면 해당 주소 [1]에 대한 프로그래밍은 종료된다.When the read data [00010001] is read by the memory reading unit 210, programming of the corresponding address [1] ends.

제5 주기 및 제 7주기는 다음 특정 주소 [2]에 대해 제3 기록 데이터 [01101001]을 프로그래밍 하는 과정으로 재기록 패턴과 독출 데이터는 각각 [01101001] -> [01000001] -> [01000000], [00101000] -> [00101001] -> [01101001]로 갱신되며, 해당 주소 [2]에 대한 재독출 연산 및 재정정 연산이 반복적으로 수행됨을 알 수 있다.The fifth cycle and the seventh cycle are the processes of programming the third recording data [01101001] for the next specific address [2]. The rewrite pattern and read data are [01101001] -> [01000001] -> [01000000], [ 00101000] -> [00101001] -> It is updated to [01101001], and it can be seen that the re-reading operation and the re-fixing operation for the corresponding address [2] are repeatedly performed.

도 5는 도 2에 있는 메모리 프로그래밍 장치(200)에서 수행되는 메모리 프로그래밍 방법의 흐름도이다.5 is a flowchart of a memory programming method performed in the memory programming device 200 of FIG. 2.

도 5를 참조하면, 메모리 프로그래밍 장치(200)는 메모리의 특정 주소와 연관된 복수의 셀들에 기록 데이터를 기록한다(S510).Referring to FIG. 5, the memory programming apparatus 200 writes write data to a plurality of cells associated with a specific address of the memory (S510).

일 실시예에서, 메모리 프로그래밍 장치(200)는 상기 기록 데이터를 기록하기 전에 프리 테스트(Pre-Test)를 수행할 수 있다. 여기에서, 프리 테스트는 메모리 프로그래밍 장치(200)의 동작 파라미터(예를 들어, 동작 주파수 등)에 대한 테스트에 해당할 수 있다.In one embodiment, the memory programming device 200 may perform a pre-test before recording the write data. Here, the pre-test may correspond to a test for operating parameters (eg, operating frequency, etc.) of the memory programming device 200.

일 실시예에서, 메모리 프로그래밍 장치(200)는 상기 프리 테스트 이후 기록 데이터를 검색할 수 있다. 여기에서, 기록 데이터의 검색은 주소 디코딩부(230)를 통해 디코딩된 특정 주소에 해당하는 셀 선택 정보를 기초로 해당 주소에 기록할 기록 데이터를 검색할 수 있다.In one embodiment, the memory programming device 200 may retrieve record data after the pre-test. Here, in search of the record data, the record data to be written to the corresponding address may be searched based on cell selection information corresponding to a specific address decoded through the address decoding unit 230.

메모리 프로그래밍 장치(200)는 해당 복수의 셀들에 있는 독출 데이터를 독출한다(S520).The memory programming device 200 reads read data in the plurality of cells (S520).

메모리 프로그래밍 장치(200)는 상기 독출 후에 상기 기록 데이터와 상기 독출 데이터를 비교한다(S530).The memory programming device 200 compares the read data with the read data after the read (S530).

상기 비교 결과가 동일한 경우, 즉 기록 데이터가 오류 없이 해당 복수의 셀들에 기록된 경우 해당 복수의 셀들에 대한 프로그래밍 작업은 종료된다.When the comparison result is the same, that is, when the write data is written in the plurality of cells without error, the programming operation for the plurality of cells is ended.

상기 비교 결과가 동일하지 않은 경우, 메모리 프로그래밍 장치(200)는 재기록 패턴을 생성(또는 갱신)한다(S540).If the comparison result is not the same, the memory programming device 200 generates (or updates) a rewrite pattern (S540).

메모리 프로그래밍 장치(200)는 재기록 패턴을 기초로 상기 복수의 셀들 중 적어도 하나의 불일치 셀을 정정한다.The memory programming apparatus 200 corrects at least one mismatched cell among the plurality of cells based on the rewrite pattern.

메모리 프로그래밍 장치(200)는 해당 복수의 셀들에 기록된 내용에 오류가 발생하지 않을 때까지 S310 내지 340 단계를 반복적으로 수행할 수 있다.The memory programming apparatus 200 may repeatedly perform steps S310 to 340 until no error occurs in the contents written in the plurality of cells.

따라서, 본 발명의 일 실시예에 따른 메모리 프로그래밍 방법은 기록 데이터(또는 재기록 패턴)과 독출 데이터를 비교하고, 기록 실패한(Fail) 단위 셀에 대해서만 재기록(Re-write)를 반복적으로 수행하여, 종래의 메모리 프로그래밍 방법보다 공정 시간 감축 및 수율을 증가시킬 수 있다.Accordingly, the memory programming method according to an embodiment of the present invention compares write data (or rewrite pattern) with read data, and repeatedly performs re-write only for a unit cell that has failed to write. It can reduce process time and increase yield than memory programming method.

프로그램 가능한 메모리 테스터는 프로그램 가능한 메모리를 수용하는 메모리 수용부 및 메모리의 프로그래밍을 수행하는 메모리 프로그래밍 장치(200)를 포함한다. 여기에서 메모리 프로그래밍 장치(200)는 앞서 설명한 메모리 프로그래밍 장치(200)에 해당한다.The programmable memory tester includes a memory accommodating portion accommodating a programmable memory and a memory programming device 200 performing programming of the memory. Here, the memory programming device 200 corresponds to the memory programming device 200 described above.

상기에서는 본 출원의 바람직한 실시예를 참조하여 설명하였지만, 해당 기술 분야의 숙련된 당업자는 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.Although described above with reference to preferred embodiments of the present application, those skilled in the art variously modify and change the present invention without departing from the spirit and scope of the present invention as set forth in the claims below. You can understand that you can.

100 : OTP 메모리
200 : 메모리 프로그래밍 장치
210 : 메모리 독출부 220 : 메모리 기록부
222 : 재기록 패턴 생성 모듈 224 : 재기록 패턴 저장 모듈
226 : 전압 생성 모듈 228 : 전압 인가 모듈
230 : 주소 디코딩부 240 : 제어부
100: OTP memory
200: memory programming device
210: memory reading unit 220: memory recording unit
222: rewrite pattern generation module 224: rewrite pattern storage module
226: voltage generation module 228: voltage application module
230: address decoding unit 240: control unit

Claims (17)

프로그램 가능한 메모리의 특정 주소와 연관된 복수의 셀들에 있는 기록된 데이터를 독출하는 메모리 독출부; 및
상기 독출 전에 상기 복수의 셀들에 미리 기록 데이터를 기록하고, 상기 독출 데이터에 기초하여 마스크 데이터를 생성하고, 상기 마스크 데이터와 상기 기록 데이터에 기초하여 재기록 패턴을 생성하고, 상기 복수의 셀들 중 적어도 하나의 불일치 셀에만 상기 재기록 패턴을 기록하여 상기 적어도 하나의 불일치 셀을 정정하는 메모리 기록부를 포함하고,
상기 메모리 기록부는 상기 생성된 재기록 패턴을 저장하는 재기록 패턴 저장 모듈을 더 포함하며, 상기 정정 후에 상기 메모리 독출부에서 재독출 과정을 통해 생성된 재독출 데이터와 상기 모듈에 저장된 재기록 패턴을 연산하여 갱신된 재기록 패턴을 생성하는 메모리 프로그래밍 장치.
A memory reading unit for reading recorded data in a plurality of cells associated with a specific address of a programmable memory; And
Before the read, record data is previously recorded in the plurality of cells, mask data is generated based on the read data, a rewrite pattern is generated based on the mask data and the record data, and at least one of the plurality of cells is generated. And a memory recording unit that corrects the at least one mismatched cell by recording the rewrite pattern only in the mismatched cell of
The memory recording unit further includes a rewrite pattern storage module for storing the generated rewrite pattern, and after the correction, the memory read unit calculates and updates the reread data generated through the reread process and the rewrite pattern stored in the module Programming device for generating an old rewrite pattern.
제1항에 있어서, 상기 메모리 기록부는
상기 갱신된 재기록 패턴에 기초하여 상기 적어도 하나의 불일치 셀 중 적어도 하나의 재불일치 셀을 재정정하는 재정정 연산을 수행하는 것을 특징으로 하는 메모리 프로그래밍 장치.
The method of claim 1, wherein the memory recording unit
And re-aligning the at least one re-mismatched cell among the at least one mismatched cell based on the updated rewrite pattern.
제2항에 있어서, 상기 메모리 독출부와 상기 메모리 기록부는
상기 복수의 셀들에 기록된 내용에 오류가 발생하지 않을 때까지 상기 재독출 과정과 상기 재정정 연산을 순차적으로 반복하는 것을 특징으로 하는 메모리 프로그래밍 장치.
The memory reading unit and the memory recording unit of claim 2
A memory programming apparatus characterized by sequentially repeating the re-reading process and the redefinition operation until no error occurs in the contents recorded in the plurality of cells.
제1항에 있어서, 상기 메모리 기록부는
상기 마스크 데이터와 상기 기록 데이터 간의 논리적 앤드(AND) 연산을 수행하여 상기 재기록 패턴을 생성하는 재기록 패턴 생성 모듈을 포함하는 것을 특징으로 하는 메모리 프로그래밍 장치.
The method of claim 1, wherein the memory recording unit
And a rewrite pattern generation module generating a rewrite pattern by performing a logical AND operation between the mask data and the write data.
제1항에 있어서, 상기 메모리 기록부는
퓨징 전압을 생성하는 전압 생성 모듈; 및
상기 재기록 패턴을 기초로 상기 적어도 하나의 불일치 셀에 상기 생성된 퓨징 전압을 인가하는 전압 인가 모듈을 더 포함하는 것을 특징으로 하는 메모리 프로그래밍 장치.
The method of claim 1, wherein the memory recording unit
A voltage generation module that generates a fusing voltage; And
And a voltage application module that applies the generated fusing voltage to the at least one mismatched cell based on the rewrite pattern.
제5항에 있어서, 상기 전압 인가 모듈은
상기 재기록 패턴을 기초로 제어되고 상기 복수의 셀들에 상기 퓨징 전압을 인가할 수 있는 복수의 스위치들을 포함하는 것을 특징으로 하는 메모리 프로그래밍 장치.
The method of claim 5, wherein the voltage application module
And a plurality of switches controlled based on the rewrite pattern and capable of applying the fusing voltage to the plurality of cells.
제3항에 있어서,
상기 재정정 연산에 대한 반복 횟수를 카운팅하여 특정 횟수를 초과하는 지 여부를 판단하는 제어부를 더 포함하는 메모리 프로그래밍 장치.
According to claim 3,
And a control unit for counting the number of repetitions for the re-arrangement operation to determine whether a certain number of times is exceeded.
제7항에 있어서,
외부로부터 프로그래밍 데이터를 수신하여 메모리의 특정 주소에 해당하는 셀 선택 정보를 추출하는 주소 디코딩부를 더 포함하는 것을 특징으로 하는 메모리 프로그래밍 장치.
The method of claim 7,
And an address decoding unit receiving programming data from the outside and extracting cell selection information corresponding to a specific address of the memory.
제8항에 있어서, 상기 제어부는
상기 복수의 셀들에 기록된 내용에 오류가 발생하지 않거나 상기 반복 횟수가 특정 횟수를 초과하면, 상기 주소 디코딩부로 하여금 상기 프로그래밍 데이터를 수신하여 상기 복수의 셀들과 다른 셀에 대한 셀 선택 정보를 추출하도록 제어하고, 상기 특정 주소에 대한 기록 데이터를 상기 다른 셀에 대한 기록 데이터로 갱신하는 것을 특징으로 하는 메모리 프로그래밍 장치.
The method of claim 8, wherein the control unit
When an error does not occur in the contents recorded in the plurality of cells or the number of repetitions exceeds a specific number, the address decoding unit receives the programming data and extracts cell selection information for cells different from the plurality of cells And controlling and updating the write data for the specific address with the write data for the other cell.
셀 선택 정보를 수신하는 메모리;
상기 셀 선택 정보에 대응되는 특정 주소와 연관된 복수의 셀들에 있는 기록된 데이터를 독출 하는 메모리 독출부; 및
상기 독출 전에 상기 복수의 셀들에 미리 기록 데이터를 기록하는 메모리 기록부를 포함하고,
상기 메모리 기록부는 상기 독출 데이터를 기초로 마스크 데이터를 생성하고 상기 마스크 데이터와 상기 기록 데이터에 기초하여 재기록 패턴을 생성하는 재기록 패턴 생성 모듈;
상기 생성된 재기록 패턴을 기초로 상기 복수의 셀들 중 적어도 하나의 불일치 셀에 퓨징 전압을 인가하여 상기 적어도 하나의 불일치 셀을 정정하는 전압 인가 모듈;
상기 생성된 재기록 패턴을 저장하는 재기록 패턴 저장 모듈을 포함하며, 상기 재기록 패턴 생성 모듈은 상기 정정 후에 상기 메모리 독출부에서 재독출 과정을 통해 생성된 재독출 데이터와 상기 저장된 재기록 패턴을 연산하여 갱신된 재기록 패턴을 생성하는 메모리 프로그래밍 장치.
A memory for receiving cell selection information;
A memory reading unit for reading recorded data in a plurality of cells associated with a specific address corresponding to the cell selection information; And
And a memory recording unit for recording recording data in advance to the plurality of cells before the reading,
The memory recording unit may generate a mask data based on the read data, and a rewrite pattern generation module that generates a rewrite pattern based on the mask data and the write data;
A voltage application module correcting the at least one mismatched cell by applying a fusing voltage to at least one mismatched cell among the plurality of cells based on the generated rewrite pattern;
And a rewrite pattern storage module for storing the generated rewrite pattern, wherein the rewrite pattern generation module is updated by calculating the reread data generated through the reread process in the memory reading unit and the stored rewrite pattern after the correction. A memory programming device that generates a rewrite pattern.
제10항에 있어서, 상기 메모리 기록부는
상기 갱신된 재기록 패턴에 기초하여 상기 적어도 하나의 불일치 셀 중 적어도 하나의 재불일치 셀을 재정정하는 재정정 연산을 수행하는 것을 특징으로 하는 메모리 프로그래밍 장치.
The method of claim 10, wherein the memory recording unit
And re-aligning the at least one re-mismatched cell among the at least one mismatched cell based on the updated rewrite pattern.
제11항에 있어서, 상기 메모리 독출부와 상기 메모리 기록부는
상기 복수의 셀들에 기록된 내용에 오류가 발생하지 않을 때까지 상기 재독출 과정과 상기 재정정 연산을 순차적으로 반복하는 것을 특징으로 하는 메모리 프로그래밍 장치.
The method of claim 11, wherein the memory reading unit and the memory recording unit
A memory programming apparatus characterized by sequentially repeating the re-reading process and the redefinition operation until no error occurs in the contents recorded in the plurality of cells.
제12항에 있어서,
상기 재정정 연산에 대한 반복 횟수를 카운팅하여 특정 횟수를 초과하거나 상기 재독출 데이터와 상기 기록 데이터가 동일할 경우 상기 특정 주소에 대한 기록을 종료시키는 제어부를 더 포함하는 것을 특징으로 하는 메모리 프로그래밍 장치.
The method of claim 12,
And counting the number of repetitions for the re-arrangement operation, and further comprising a control unit for terminating the recording of the specific address when the re-reading data and the write data are the same.
제10항에 있어서, 상기 재기록 패턴 생성 모듈은
상기 독출 데이터를 반전시켜 상기 마스크 데이터를 생성하고,
상기 마스크 데이터와 상기 기록 데이터 간의 논리적 앤드(AND) 연산을 수행하여 상기 재기록 패턴을 생성하는 것을 특징으로 하는 메모리 프로그래밍 장치.
The method of claim 10, wherein the rewrite pattern generation module
Generating the mask data by inverting the read data,
And performing a logical AND operation between the mask data and the write data to generate the rewrite pattern.
제10항에 있어서,
외부로부터 프로그래밍 데이터를 수신하여 상기 메모리로 상기 셀 선택 정보를 추출하는 주소 디코딩부를 더 포함하는 것을 특징으로 하는 메모리 프로그래밍 장치.
The method of claim 10,
And an address decoding unit receiving programming data from the outside and extracting the cell selection information into the memory.
제10항에 있어서, 상기 메모리 기록부는
상기 퓨징 전압을 생성하는 전압 생성 모듈을 더 포함하는 것을 특징으로 하는 메모리 프로그래밍 장치.
The method of claim 10, wherein the memory recording unit
And a voltage generation module generating the fusing voltage.
제16항에 있어서, 상기 전압 인가 모듈은
상기 재기록 패턴을 기초로 제어되고 상기 복수의 셀들에 상기 퓨징 전압을 인가할 수 있는 복수의 스위치들을 포함하는 것을 특징으로 하는 메모리 프로그래밍 장치.
The method of claim 16, wherein the voltage application module
And a plurality of switches controlled based on the rewrite pattern and capable of applying the fusing voltage to the plurality of cells.
KR1020200082066A 2020-07-03 2020-07-03 Memory programing method and device performing the same KR102247375B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020200082066A KR102247375B1 (en) 2020-07-03 2020-07-03 Memory programing method and device performing the same

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020200082066A KR102247375B1 (en) 2020-07-03 2020-07-03 Memory programing method and device performing the same

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
KR20130108737A Division KR20150029848A (en) 2013-09-10 2013-09-10 Memory programing method and device performing the same

Publications (2)

Publication Number Publication Date
KR20200087104A true KR20200087104A (en) 2020-07-20
KR102247375B1 KR102247375B1 (en) 2021-04-30

Family

ID=71832035

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200082066A KR102247375B1 (en) 2020-07-03 2020-07-03 Memory programing method and device performing the same

Country Status (1)

Country Link
KR (1) KR102247375B1 (en)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100845407B1 (en) 2007-02-16 2008-07-10 매그나칩 반도체 유한회사 One-time-programmable cell and otp memory having it
KR20090110525A (en) * 2008-04-18 2009-10-22 창원대학교 산학협력단 OTP memory device
KR101051673B1 (en) 2008-02-20 2011-07-26 매그나칩 반도체 유한회사 Anti-fuse and method of forming the same, unit cell of nonvolatile memory device having same
JP2011181134A (en) * 2010-02-26 2011-09-15 Elpida Memory Inc Method of controlling nonvolatile semiconductor device

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100845407B1 (en) 2007-02-16 2008-07-10 매그나칩 반도체 유한회사 One-time-programmable cell and otp memory having it
KR101051673B1 (en) 2008-02-20 2011-07-26 매그나칩 반도체 유한회사 Anti-fuse and method of forming the same, unit cell of nonvolatile memory device having same
KR20090110525A (en) * 2008-04-18 2009-10-22 창원대학교 산학협력단 OTP memory device
JP2011181134A (en) * 2010-02-26 2011-09-15 Elpida Memory Inc Method of controlling nonvolatile semiconductor device

Also Published As

Publication number Publication date
KR102247375B1 (en) 2021-04-30

Similar Documents

Publication Publication Date Title
US10074443B2 (en) Semiconductor device including fuse circuit
US7417900B2 (en) Method and system for refreshing a memory device during reading thereof
US6836431B2 (en) Method of programming/reading multi-level flash memory using sensing circuit
US8139412B2 (en) Systematic error correction for multi-level flash memory
US6594181B1 (en) System for reading a double-bit memory cell
KR20150029848A (en) Memory programing method and device performing the same
US20060203580A1 (en) Programmable element latch circuit
KR20000062687A (en) Integrated circuit memory having a fuse detect circuit and method therefor
CN100498975C (en) Semiconductor memory device and semiconductor memory device test method
US4805151A (en) Nonvolatile semiconductor memory device
US7257012B2 (en) Nonvolatile semiconductor memory device using irreversible storage elements
US6538940B1 (en) Method and circuitry for identifying weak bits in an MRAM
CN111813373B (en) Random code generator with floating gate transistor type memory cells
US6459620B1 (en) Sense amplifier offset cancellation in non-volatile memory circuits by dedicated programmed reference non-volatile memory cells
US8614921B2 (en) Nonvolatile semiconductor memory device
KR102247375B1 (en) Memory programing method and device performing the same
US7177217B2 (en) Method and circuit for verifying and eventually substituting defective reference cells of a memory
KR100305215B1 (en) Circuit and method of erasing a flash memory cell
CN1252604A (en) Memory element testing circuit
JPH1145588A (en) Nonvolatile semiconductor memory
US20230395171A1 (en) One-time programmable (rotp) nvm
US20240145015A1 (en) Method and system for reading unknown data from non-volatile memory
JP3796054B2 (en) Semiconductor memory
KR20090119223A (en) Method for programming nonvolatile memory device
TW202314688A (en) Semiconductor memory apparatus

Legal Events

Date Code Title Description
A107 Divisional application of patent
A201 Request for examination
E902 Notification of reason for refusal
AMND Amendment
E601 Decision to refuse application
AMND Amendment
X701 Decision to grant (after re-examination)
GRNT Written decision to grant