[go: up one dir, main page]

KR19990064045A - Integrated circuit for storing and retrieving a plurality of digital bits per nonvolatile memory cell - Google Patents

Integrated circuit for storing and retrieving a plurality of digital bits per nonvolatile memory cell Download PDF

Info

Publication number
KR19990064045A
KR19990064045A KR1019980702523A KR19980702523A KR19990064045A KR 19990064045 A KR19990064045 A KR 19990064045A KR 1019980702523 A KR1019980702523 A KR 1019980702523A KR 19980702523 A KR19980702523 A KR 19980702523A KR 19990064045 A KR19990064045 A KR 19990064045A
Authority
KR
South Korea
Prior art keywords
memory cell
data
voltage
array
circuit
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
KR1019980702523A
Other languages
Korean (ko)
Other versions
KR100303549B1 (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 애거트 세미컨덕터, 인코포레이티드
Publication of KR19990064045A publication Critical patent/KR19990064045A/en
Application granted granted Critical
Publication of KR100303549B1 publication Critical patent/KR100303549B1/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • 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
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C8/00Arrangements for selecting an address in a digital store
    • G11C8/12Group selection circuits, e.g. for memory block selection, chip selection, array selection
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/56Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency
    • G11C11/5621Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency using charge storage in a floating gate
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/56Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency
    • G11C11/5621Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency using charge storage in a floating gate
    • G11C11/5628Programming or writing circuits; Data input circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/56Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency
    • G11C11/5621Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency using charge storage in a floating gate
    • G11C11/5642Sensing or reading circuits; Data output circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/26Sensing or reading circuits; Data output circuits
    • G11C16/28Sensing or reading circuits; Data output circuits using differential sensing or reference cells, e.g. dummy cells
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C19/00Digital stores in which the information is moved stepwise, e.g. shift registers
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C2211/00Indexing scheme relating to digital stores characterized by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C2211/56Indexing scheme relating to G11C11/56 and sub-groups for features not covered by these groups
    • G11C2211/562Multilevel memory programming aspects
    • G11C2211/5624Concurrent multilevel programming and programming verification
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C2211/00Indexing scheme relating to digital stores characterized by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C2211/56Indexing scheme relating to G11C11/56 and sub-groups for features not covered by these groups
    • G11C2211/563Multilevel memory reading aspects
    • G11C2211/5632Multilevel reading using successive approximation
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C2211/00Indexing scheme relating to digital stores characterized by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C2211/56Indexing scheme relating to G11C11/56 and sub-groups for features not covered by these groups
    • G11C2211/563Multilevel memory reading aspects
    • G11C2211/5634Reference cells
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C2211/00Indexing scheme relating to digital stores characterized by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C2211/56Indexing scheme relating to G11C11/56 and sub-groups for features not covered by these groups
    • G11C2211/564Miscellaneous aspects
    • G11C2211/5642Multilevel memory with buffers, latches, registers at input or output
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C2211/00Indexing scheme relating to digital stores characterized by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C2211/56Indexing scheme relating to G11C11/56 and sub-groups for features not covered by these groups
    • G11C2211/564Miscellaneous aspects
    • G11C2211/5644Multilevel memory comprising counting devices
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C8/00Arrangements for selecting an address in a digital store
    • G11C8/04Arrangements for selecting an address in a digital store using a sequential addressing device, e.g. shift register, counter

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Read Only Memory (AREA)
  • Dram (AREA)
  • Static Random-Access Memory (AREA)

Abstract

An integrated circuit storing multiple bits per memory cell is described. The amount of charge stored in a memory cell corresponds to the multiple bits in a memory cell. Latches (60-63, 65-67) are arranged in banks (A, B) and connected to the cells. The latches are controlled by control means (145, 146) so as to transfer data into the cells and to data terminals (25, 26). During writing and reading the data is transferred in parallel and serial modes.

Description

비휘발성 메모리셀 당 복수의 디지털 비트를 저장 및 검색하기 위한 집적회로Integrated circuit for storing and retrieving a plurality of digital bits per nonvolatile memory cell

EEPROM, EPROM 및 FLASH 집적 회로와 같은 비휘발성 반도체 메모리는 통상적으로 메모리 셀당 단일 디지털 비트를 저장하는데 사용되어 왔다. 이것은 메모리 셀의 부동 게이트상에서 일정 전하량을 유지하므로써 셀의 임계전압(도전) 특성을 변경하므로써 수행되어 왔다. 이 임계전압 범위는 일반적으로 메모리 셀당 하나의 디지털 비트의 저장을 표현하기 위해 두 레벨(도전 대 비도전)로 분할된다.Nonvolatile semiconductor memories such as EEPROM, EPROM, and FLASH integrated circuits have typically been used to store a single digital bit per memory cell. This has been done by changing the threshold voltage (conduction) characteristics of the cell by maintaining a constant amount of charge on the floating gate of the memory cell. This threshold voltage range is typically divided into two levels (conductive versus non-conductive) to represent the storage of one digital bit per memory cell.

넓은 범위의 전하가 임계전압의 범위를 표현하기 위해 부동게이트상에서 신뢰성 있게 저장될 수 있다. 부동게이트상에서 전하의 보유는 다수의 임계전압 범위를 표현하도록 분할될 수 있고 임계전압 범위는 메모리 셀당 하나 이상의 디지털 데이터 비트의 저장을 표현하기 위해 복수 범위로 분할될 수 있다. 예를들어, 4개의 임계전압 분할부분이 메모리 주소위치당 2개의 디지털 비트의 저장을 표현하는데 사용될 수 있고 16개의 분할부분이 메모리 주소위치당 4개의 디지털 비트의 저장을 표현하는데 사용될 수 있다. 더욱이, 임계전압범위는 메모리 셀당 아날로그 정보의 직접 저장을 표현하기 위해 더욱 정교한 레졸루션으로 분할될 수 있다.A wide range of charges can be reliably stored on the floating gate to represent a range of threshold voltages. The retention of charge on the floating gate can be divided to represent multiple threshold voltage ranges and the threshold voltage range can be divided into multiple ranges to represent storage of one or more digital data bits per memory cell. For example, four threshold voltage divisions may be used to represent storage of two digital bits per memory address location and sixteen divisions may be used to represent storage of four digital bits per memory address location. Moreover, the threshold voltage range can be divided into more sophisticated resolutions to represent the direct storage of analog information per memory cell.

메모리 셀당 복수의 디지털 비트를 저장할 수 있는 성능은 유닛 영역당 유효 저장 밀도를 증대시키고 디지털 비트당 저장 비용을 감소시킨다. 그밖에, 반도체 메모리 분야에서, 현대식 제조설비의 비용은 10억 달러를 상회한다. 기존의 메모리 제조 프로세스 및 설비에 대한 셀당 복수 비트의 저장에 대한 응용기술은 동일 제조 설비에서 다음 세대의 고밀도 저장 디바이스의 제조를 가능케하므로써, 유용성을 증가시키고 다시 투자하게 된다.The ability to store multiple digital bits per memory cell increases the effective storage density per unit area and reduces the storage cost per digital bit. In addition, in the semiconductor memory sector, the cost of modern manufacturing equipment exceeds $ 1 billion. The application of multiple bits of storage per cell to existing memory manufacturing processes and facilities enables the manufacture of the next generation of high density storage devices in the same manufacturing facility, thereby increasing usability and reinvesting.

그럼에도 불구하고, 동작속도 즉, 판독 및 기록 동작의 문제는 아직까지 메모리 셀 당 복수 비트를 갖는 디바이스에 대해 만족스럽게 설명되지 않았다. 관련 문제는 파워 분산문제이다. 더 많은 파워가 동작속도를 향상시키기 위해 사용됨에 따라, 파워 소비도 증가된다. 또다른 문제는 신뢰성이다. 전하가 매우 오랜 동안 메모리 셀의 부동 게이트에 저장될 수 있는 반면에, 전하의 소거 및 재기록은 메모리 셀에 저장된 비트의 확실성에 대해 장기간 문제를 야기한다. 그리고, 물론 임의의 집적회로는 공간문제를 야기한다. 셀당 복수 비트를 갖는 집적회로에서, 추가회로가 새로운 요구조건을 취급하기 위해 추가되어야 한다. 이것은 부분적으로 메모리 셀 당 증가된 비트의 이점을 무효화시킨다.Nevertheless, the operating speed, i.e., the problem of read and write operations, has not been satisfactorily described for a device having multiple bits per memory cell. The related problem is power dissipation. As more power is used to improve operating speed, power consumption also increases. Another problem is reliability. While charge can be stored in the floating gate of a memory cell for a very long time, erasing and rewriting of charge causes long-term problems with the certainty of the bits stored in the memory cell. And of course, any integrated circuit causes space problems. In integrated circuits with multiple bits per cell, additional circuitry has to be added to handle the new requirements. This partially negates the benefit of increased bits per memory cell.

본 발명은 이들 문제를 해결하고 실질적으로 완화시킨다. 파워 분배는 판독 동작에 대해 감소된다. 본 발명은 또한 장기간에 걸쳐 메모리 셀의 비트에 대한 신뢰성있는 결정을 허용하며 집적회로상에서 공간을 절약한다.The present invention solves and substantially alleviates these problems. Power distribution is reduced for read operations. The present invention also allows for reliable determination of the bits of a memory cell over a long period of time and saves space on integrated circuits.

본 발명은 일반적으로 반도체 메모리에 관한 것으로, 특히 메모리 셀당 복수의 디지털 비트를 저장할 수 있는 비휘발성 반도체 메모리에 관한 것이다.BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention generally relates to semiconductor memories, and more particularly to nonvolatile semiconductor memories capable of storing a plurality of digital bits per memory cell.

도 1은 본 발명에 따라 단일 집적회로 칩상에서 구현된 주요 회로 블록을 예시하는 도.1 illustrates the main circuit block implemented on a single integrated circuit chip in accordance with the present invention.

도 2A는 도 1의 메모리 셀의 전류-모드 판독을 개괄적으로 예시하는 도.FIG. 2A schematically illustrates the current-mode readout of the memory cell of FIG. 1. FIG.

도 2B는 도 1의 메모리 셀의 전압-모드 판독을 개괄적으로 예시하는 회로도.FIG. 2B is a circuit diagram schematically illustrating a voltage-mode read of the memory cell of FIG. 1. FIG.

도 3은 블록내의 어레이 셀과 기준셀의 구성과 임계 분할 전압 기준 발생블록을 이들의 각각의 어레이에 연결한 구성도.3 is a configuration diagram in which the configuration of array cells and reference cells in a block and a threshold division voltage reference generation block are connected to their respective arrays;

도 4는 도 1의 멀티레벨 듀얼 모드 시프트 레지스터의 블록도.4 is a block diagram of the multilevel dual mode shift register of FIG.

도 5는 도 1의 두 개의 Y-드라이버의 일반적인 구성을 예시하는 도.5 illustrates the general configuration of the two Y-drivers of FIG.

도 6은 도 4의 멀티레벨 듀얼 시프트 레지스터의 상세도로서 듀얼 시프트 레지스터가 기록 및 판독동작 동안 사용되어 질 수 있는 회로를 나타낸 도.FIG. 6 is a detailed view of the multilevel dual shift register of FIG. 4 showing a circuit in which a dual shift register can be used during write and read operations. FIG.

도 7은 각각의 Y-드라이버에 대해 도 5의 기준 멀티플렉서를 예시하는 도.7 illustrates the reference multiplexer of FIG. 5 for each Y-driver.

도 8A는 각각의 Y-드라이버에 대해 공통인 전압 비교기, 랫치, 프로그램 및 판독 제어 블록과 고전압 스위치의 상세 회로도.8A is a detailed circuit diagram of a voltage comparator, latch, program and read control block and high voltage switch common for each Y-driver.

도 8B는 블록의 모든 기준 셀이 병렬로 판독될 수 있게 하는 추가 회로를 갖춘 기준 Y-드라이버를 위한 전압 비교기, 랫치, 프로그램 및 판독 제어 블록과 고전압 스위치 및 판독 모드 경로에 대한 상세 회로도.8B is a detailed circuit diagram of a voltage comparator, latch, program and read control block and high voltage switch and read mode path for a reference Y-driver with additional circuitry that allows all reference cells in the block to be read in parallel.

도 8C는 기준 Y-드라이버와 Y-멀티플렉서로 된 Y-멀티플렉서 회로의 상세도.8C is a detailed view of a Y-multiplexer circuit with a reference Y-driver and a Y-multiplexer.

도 9A는 모든 Y-드라이버에 공통인 Y-멀티플렉서, X-디코더 블록, 각각의 X-디코더에 공통인 X-멀티플렉서 및 기준 Y-멀티플렉서와 기준 셀 어레이에 대한 결선부를 갖춘 하나의 Y-드라이버 및 하나의 X-디코더에 공통인 메모리 셀의 상세도.9A shows a Y-multiplexer common to all Y-drivers, an X-decoder block, an X-multiplexer common to each X-decoder, and one Y-driver with connections to the reference Y-multiplexer and the reference cell array; Detail view of memory cells common to one X-decoder.

도 9B는 본 발명의 일 실시예에 따른 단일 트랜지스터 메모리 셀의 회로도.9B is a circuit diagram of a single transistor memory cell in accordance with an embodiment of the present invention.

도 10은 기준 메모리 셀과 데이터 저장 메모리 셀에 대한 다양한 프로그램 임계 분할 전압에 대한 0 볼트로부터 Vmax 볼트까지의 스케일을 나타낸 도.10 shows a scale from 0 volts to Vmax volts for various program threshold division voltages for the reference memory cell and the data storage memory cell.

도 11은 임계 분할 전압 기준 발생 블록의 상세도.11 is a detailed view of a threshold division voltage reference generation block.

도 12A는 선택된 메모리 셀을 저장하는 디지털 비트를 결정하기 위해 판독 동작에서 2진 탐색 알고리즘에서의 트리 디코딩을 나타내는 도.12A illustrates tree decoding in a binary search algorithm in a read operation to determine digital bits that store selected memory cells.

도 12B는 판독 동작에 대한 2진 탐색 알고리즘을 위한 흐름도.12B is a flow chart for a binary search algorithm for a read operation.

본 발명은 각각의 메모리 셀이 정보의 다수 비트를 저장하는 메모리 셀 어레이와 적어도 하나의 단자를 갖는 집적회로를 제공한다. 이 집적회로는 또한 제 1 뱅크 및 제 2 뱅크를 구성하는 랫치를 갖춘 메모리 셀 어레이에 연결된 복수의 랫치를 갖는다. 메모리 셀 어레이로 부터의 판독 및 메모리 셀 어레이로의 기록동안, 랫치 및 메모리 셀 어레이는 제 1 뱅크가 메모리 셀 어레이에 연결되고 제 2 뱅크가 데이터 단자에 연결되도록 제어된다. 대안으로 제 2 뱅크가 메모리 셀 어레이에 연결되고 제 1 뱅크가 데이터 단자에 연결된다. 이러한 교대 연결은 데이터가 랫치의 일 뱅크와 메모리 셀 어레이 사이에서 동시에 전송되어지는 것을 허용하고 고속 판독 및 기록 동작을 위해 데이터 단자와 랫치의 또다른 뱅크 사이에서 전송될 수 있게 한다.The present invention provides an integrated circuit having a memory cell array in which each memory cell stores multiple bits of information and at least one terminal. The integrated circuit also has a plurality of latches connected to a memory cell array having latches that constitute the first bank and the second bank. During reading from and writing to the memory cell array, the latch and the memory cell array are controlled such that the first bank is connected to the memory cell array and the second bank is connected to the data terminals. Alternatively, the second bank is connected to the memory cell array and the first bank is connected to the data terminal. This alternating connection allows data to be transferred simultaneously between one bank of latches and a memory cell array and allows transfer between data terminals and another bank of latches for high speed read and write operations.

파워 소실을 감소시키기 위해, 어레이의 메모리 셀은 전압-모드 동작에 의해 판독된다. 더우기, 기록 동작 동안, 선택된 메모리 셀에 저장된 전하량에 대응하는 전압은 메모리 셀의 고전압 프로그래밍이 계속되어야 하는 지의 여부를 결정하기 위해 기준전압과 비교된다. 메모리 셀의 프로그래밍은 대응 전압이 기준 전압과 매치할 때 종료한다.To reduce power dissipation, the memory cells of the array are read by voltage-mode operation. Furthermore, during the write operation, the voltage corresponding to the amount of charge stored in the selected memory cell is compared with the reference voltage to determine whether high voltage programming of the memory cell should continue. Programming of the memory cell ends when the corresponding voltage matches the reference voltage.

판독 동작 동안, 선택된 메모리 셀에 저장된 전하량에 대응하는 전압은 메모리 셀에 저장된 복수의 비트를 결정하기 위해 2진 탐색 패턴으로 기준 전압 시퀀스와 비교된다.During a read operation, the voltage corresponding to the amount of charge stored in the selected memory cell is compared with the reference voltage sequence in a binary search pattern to determine a plurality of bits stored in the memory cell.

첨부도면은 동일 부재번호가 동일 엘리먼트를 나타냄을 유의해야 한다. 이것은 엘리먼트의 유사한 구조 또는 동작을 강조한다. 더우기 MOS 트랜지스터의 기호는 직선이 트랜지스터의 소스 및 드레인을 표현하고 점선은 트랜지스터의 게이트를 표현하기 위해 소스/드레인 라인에 병렬이도록 수정된다.It should be noted that in the accompanying drawings, like reference numerals refer to like elements. This emphasizes the similar structure or behavior of the element. Moreover, the symbol of the MOS transistor is modified such that the straight line represents the source and drain of the transistor and the dotted line is parallel to the source / drain lines to represent the gate of the transistor.

집적회로에 대한 개괄적인 설명Overview of Integrated Circuits

본 발명의 바람직한 실시예의 주요 블록이 도 1에 도시되어 있다. 비휘발성 메모리 어레이(1) 및 기준 메모리 어레이(2)는 행 및 열로 이루어진 2차원 어레이에 연결된 메모리 셀을 갖는다. 이 메모리 셀은 종래의 기술에서 알려진, EPROM, EEPROM, FLASH와 같은 임의의 디바이스 구조, 또는 단일 트랜지스터, 두 트랜지스터, 스플릿-게이트, NAND, AND 및 DINOR 셀 구조와 같은 기존의 셀 구조, 또는 표준 및 버츄얼 접지 구조를 포함하는 접지 어레이 구조일 수 있다. 디바이스 구조에 좌우되어, 셀 구조 또는 접지 어레이 구조가 선택되고, 비휘발성 멤리 셀 당 하나이상의 디지털 비트의 저장을 용이하게 하기 위해 셀의 전기 단자의 각각에 필요한 특정 전압을 포함하여, 특정 프로그래밍, 소거 및 판독 알고리즘이 용이하게 개발될 수 있다. 셀은 이미 종래 기술에서 알려진 NAND, DINOR 또는 AND 셀 구조와 같은 하나 이상의 비휘발성 디바이스를 유지할 수 있다. 디바이스, 어레이 구조 또는 셀 구조 및 알고리즘에 대한 특정사항은 본 발명의 범위가 아니다.The main block of the preferred embodiment of the present invention is shown in FIG. The nonvolatile memory array 1 and the reference memory array 2 have memory cells connected to a two-dimensional array of rows and columns. This memory cell may be any device structure, such as EPROM, EEPROM, FLASH, or conventional cell structures, such as single transistors, two transistors, split-gates, NAND, AND, and DINOR cell structures, known in the art, and standards and It may be a ground array structure including a virtual ground structure. Depending on the device structure, a cell structure or ground array structure is selected, including specific voltages required for each of the cell's electrical terminals to facilitate storage of one or more digital bits per non-volatile memory cell. And reading algorithms can be easily developed. The cell may hold one or more nonvolatile devices such as NAND, DINOR or AND cell structures already known in the art. Specifics to device, array structure or cell structure and algorithms are not within the scope of the present invention.

메모리 어레이(1 및 2)의 각각은 단일 또는 다수 행을 갖는 블록을 구성한다. 각각의 블록은 메모리 어레이(1 및 2)의 모든 열 또는 일부의 열로 이루어진다. 도 1에서 단일 행에서 모든 열을 갖춘 메모리 블록이 도시되어 있다. 각각의 메모리 블록은 기준 어레이(2)로부터의 셀과 메모리 어레이(1)로 부터의 셀로 이루어진다.Each of the memory arrays 1 and 2 constitutes a block having single or multiple rows. Each block consists of all or some columns of memory arrays 1 and 2. In FIG. 1 a memory block is shown with all columns in a single row. Each memory block consists of a cell from the reference array 2 and a cell from the memory array 1.

에러 교정 어레이(3)는 메모리 어레이(1)와 기준 어레이(2)에 사용되는 것과 마찬가지의 비휘발성 메모리를 갖는다. 일 실시에에서, 에러 교정 어레이(3)는 종래기술에서 에러 교정 코드(ECC;Error Correction Code)로 알려진 온-칩 ECC에 필요한 추가의 코딩 정보를 포함한다. 또다른 실시에에서, 에러 교정 코드(3)는 판독 또는 기록 동작 동안 방지되어야 할 결함있는 셀의 전체주소를 포함한다. 에러 교정 어레이(3)의 크기는 교정될 수 있는 결함있는 셀의 최대 수에 좌우된다. 산출 확인 페이즈 동안, 메모리 어레이(1)는 임의의 결함있는 셀을 식별하기 위해 테스트된다. 이들 결함있는 셀의 주소는 칩이 공장에서 적하되기 전에 에러 교정 어레이(3)에 프로그래밍된다. 에러 교정 어레이(3)는 메모리 셀 당 하나 이상의 비트를 이용하여 프로그램될 수 있거나 셀 당 단일 비트를 이용하여 프로그래밍될 수 있다. 만일 ECC 교정이 구현되면, 에러 교정 어레이(3)는 온-칩 ECC 회로와 함께 코딩 비트가 자동으로 로딩된다. 에러 교정 제어 및 로직 블록(16)은 상기한 바와 같은 에러 교정 실시예중의 하나를 구현하기 위해 필요한 모든 주소지정, 디코딩 및 시퀀싱 회로를 포함한다.The error correction array 3 has a nonvolatile memory similar to that used for the memory array 1 and the reference array 2. In one embodiment, the error correction array 3 contains additional coding information required for on-chip ECC, known in the art as an Error Correction Code (ECC). In another embodiment, the error correction code 3 includes the full address of the defective cell to be prevented during a read or write operation. The size of the error correction array 3 depends on the maximum number of defective cells that can be corrected. During the output verification phase, the memory array 1 is tested to identify any defective cells. The addresses of these defective cells are programmed into the error correction array 3 before the chip is factory loaded. The error correction array 3 can be programmed using one or more bits per memory cell or can be programmed using a single bit per cell. If ECC correction is implemented, the error correction array 3 is automatically loaded with coding bits along with the on-chip ECC circuit. The error correction control and logic block 16 includes all addressing, decoding and sequencing circuitry necessary to implement one of the error correction embodiments as described above.

메모리 관리 어레이(4)는 임의의 시간에 추가기록을 위해 이용가능한 블록을 위한 주소정보와 메모리에서 반드시 물리적으로 연속일 필요는 없지만 논리적으로 연속적인 다수 블록의 순차 기록 또는 판독 동안 블록을 위한 물리적 주소 정보를 포함한다. 어레이의 메모리 관리는 제품의 장기간 신뢰성을 개선시키며 가변길이의 직렬 데이터가 빈번하게 소거 및 재기록되는 환경에서 메모리의 더욱 효율적인 사용을 허용한다. 이러한 동작에서, 블록 주소의 시작 및 끝 만이 제공되며 이 데이터는 클록킹을 통해 액세스된다. 블록 주소의 끝을 제공하는 대신, 정지신호는 가변블록 직렬 데이터의 끝을 알리기 위해 사용될 수 있다. 이 모드는 "직렬 기록 및 판독 액세스" 모드라 불리우며 일반적으로 디지털 오디오 레코드 및 플레이 백 시스템을 위해 사용되며, 또한 기계적 디스크를 대체하는 반도체 메모리 시스템을 위해 사용된다. 에러 교정 및 메모리 관리에 의한 직렬기록 및 판독 액세스 모드는 본 발명이 디지털 오디오 레코드 및 플레이 백 시스템과 일반적인 디지털 데이터 저장 시스템을 위한 집적회로 메모리를 대체할 수 있게 한다. 메모리 관리 로직 블록(24)은 메모리 관리 어레이(4)와 결합하여 메모리 관리 기능을 수행하기 위해 필요한 시퀀싱 회로를 포함한다. 메모리 관리 어레이(4)내의 데이터는 어레이(1 및 2)에서와 같이 셀 당 하나 이상의 디지털 비트 또는 메모리 셀 당 단순히 단일 비트일 수 있다.The memory management array 4 does not necessarily have to be physically contiguous in memory and address information for a block available for additional writes at any time, but the physical address for the block during sequential writes or reads of multiple logically contiguous blocks. Contains information. Memory management of the array improves long-term reliability of the product and allows for more efficient use of memory in environments where variable length serial data is frequently erased and rewritten. In this operation, only the start and end of the block address are provided and this data is accessed via clocking. Instead of providing the end of the block address, a stop signal can be used to signal the end of the variable block serial data. This mode is called "serial write and read access" mode and is generally used for digital audio record and playback systems, and also for semiconductor memory systems replacing mechanical disks. Serial write and read access modes with error correction and memory management allow the present invention to replace integrated circuit memory for digital audio record and playback systems and general digital data storage systems. Memory management logic block 24 includes sequencing circuitry necessary to perform memory management functions in conjunction with memory management array 4. The data in memory management array 4 may be one or more digital bits per cell or simply a single bit per memory cell as in arrays 1 and 2.

여분 블록(5)은 사용될 수 없는 셀의 전체 블록을 수리하기 위해 사용될 수 있는 추가의 메모리 셀 블록을 갖는다. 이러한 종류의 블록 여분은 메모리 집적 회로의 설계자에게 공지되어 있다. 여분블록(5)의 블록 수는 포함된 수리 페이즈 동안 현장에서 또는 제조 확인 페이즈 동안 수리될 수 있는 블록의 최대 수를 정의한다.The spare block 5 has an additional block of memory cells that can be used to repair the entire block of cells that cannot be used. This kind of block redundancy is known to designers of memory integrated circuits. The block number of the spare block 5 defines the maximum number of blocks that can be repaired in the field during the included repair phase or during the manufacturing confirmation phase.

어레이(1)의 메모리 셀에 대한 주소지정은 외부에 연결된 직렬 인터페이스 블록(14)에 결합된 주소 디코더(13)에 의해 제공된다. 디코딩된 주소는 디코더(13)로부터 Y-카운터 블록(12) 및 X-카운터 블록(11)에 전달된다. Y-카운터 블록(12)으로 부터의 출력은 어레이(1)의 메모리 셀의 소망 블록을 선택하는 Y-멀티플렉서 블록(8)에 전달된다. X-카운터 블록(11)의 출력은 메모리 어레이(1)에서 선택된 블록의 소망 행을 선택하기 위해 X-디코더 블록(7)과 X-멀티플렉서 블록(6)에서 디코딩된다.Addressing of the memory cells of the array 1 is provided by an address decoder 13 coupled to an externally connected serial interface block 14. The decoded address is passed from the decoder 13 to the Y-counter block 12 and the X-counter block 11. The output from the Y-counter block 12 is delivered to a Y-multiplexer block 8 that selects the desired block of memory cells of the array 1. The output of the X-counter block 11 is decoded in the X-decoder block 7 and the X-multiplexer block 6 to select the desired row of the block selected in the memory array 1.

주소 디코드 블록(13)은 선택된 행의 시작주소를 발생시킨다. 디코딩된 주소는 데이터 스트림의 임의의 길이에 대한 각각의 새로운 액세스 동작의 시작에서 X-카운터(11)와 Y-카운터(12)에 설정된다. 시작주소가 제공된 후, 데이터는 클록 입력에 의해 칩에 직렬로 액세스된다. 직렬 인터페이스 블록(14)은 다른 외부 칩과 적절한 직렬 프로토콜을 수행하는데 필요한 회로를 포함한다. 직렬 프로토콜은 임의의 산업 표준 직렬 프로토콜 또는 독점 프로토콜일 수 있다. 직렬 인터페이스 블록(14)으로부터 이 블록으로 들어가는 일반적인 직렬 인터페이스 신호가 도 1에 도시되어 있다.The address decode block 13 generates the start address of the selected row. The decoded address is set in the X-counter 11 and the Y-counter 12 at the start of each new access operation for any length of the data stream. After the start address is provided, the data is serially accessed by the clock input to the chip. Serial interface block 14 includes circuitry necessary to perform the appropriate serial protocol with other external chips. The serial protocol can be any industry standard serial protocol or proprietary protocol. A typical serial interface signal entering the serial interface block 14 from this block is shown in FIG.

X-카운터 블록(11)은 클록신호(YOUT)에 의해 그들의 카운트를 증가시키는 디지털 카운터를 포함하고 라인(27)상에 있는 Y-카운터 블록(12)의 출력을 포함한다. Y-카운터 블록(12)은 입력라인(28)상의 신호(CLCK)에 의해 클록킹되고 라인상의 클록신호(SHFT CLK)를 Y-드라이버의 여러부분에 발생시킨다. Y-카운터 블록(12)은 교대로 라인(27)상의 클록신호(YOUT)를 X-카운터 블록(11)에 제공한다.X-counter block 11 includes a digital counter that increments their count by clock signal YOUT and includes the output of Y-counter block 12 on line 27. The Y-counter block 12 is clocked by a signal CLCK on the input line 28 and generates a clock signal SHFT CLK on the line at various parts of the Y-driver. The Y-counter block 12 alternately provides the clock signal YOUT on the line 27 to the X-counter block 11.

X-멀티플렉서 블록(6)은 선택적인 기준으로 X-디코더 블록(7)의 하나의 X-디코더 스테이지의 출력을 어레이의 복수 행에 제공한다. 이것은 X-디코더의 집적회로 레이아웃의 애스펙트비가 과도하게 커지는 것을 허용하지 않고 X-디코더의 회로를 수용한다. X-멀티플렉서 및 이들의 사용은 종래기술에서 공지되어 있다. X-디코더 블록(7)은 메모리 어레이(1 및 2)의 행을 선택하기 위해 사용된 X-디코더를 포함한다. X-디코더 블록(7) 및 X-멀티플렉서 블록(6)에 대한 상세사항은 아래에서 설명되고 도 9A에 도시되어 있다. Y-멀티플렉서 블록(8)은 X-멀티플렉서 블록(6)과 마찬가지이며, Y-드라이버 중의 하나의 출력을 선택하고, 아래에서 상세히 설명되는 바와 같이, 이 출력을 선택적인 기준으로 메모리 어레이의 다수의 열중의 임의의 하나에 제공한다. 이것은 열 방향으로 메모리 어레이와 Y-드라이버의 핏치를 맞추기 위해 또다시 수행된다.The X-multiplexer block 6 provides the output of one X-decoder stage of the X-decoder block 7 to a plurality of rows of the array on an optional basis. This accommodates the circuit of the X-decoder without allowing the aspect ratio of the integrated circuit layout of the X-decoder to become excessively large. X-multiplexers and their use are known in the art. X-decoder block 7 comprises an X-decoder used to select rows of memory arrays 1 and 2. Details of the X-decoder block 7 and the X-multiplexer block 6 are described below and shown in FIG. 9A. The Y-multiplexer block 8 is the same as the X-multiplexer block 6, selecting an output of one of the Y-drivers and selecting multiple outputs of the memory array on an optional basis, as described in detail below. To any one of the columns. This is done again to match the memory array and Y-driver pitch in the column direction.

판독-기록 회로 블록(9)은 어레이(1)로부터 및 어레이(1)로 데이터에 대한 고-전압 기록 및 저-전압 판독 동작을 수행하기 위해 필요한 회로를 포함한다. 판독-기록 회로 블록(9)에 대한 상세사항은 아래에서 제공된다.The read-write circuit block 9 comprises circuitry necessary for performing high-voltage write and low-voltage read operations on data from and into the array 1. Details of the read-write circuit block 9 are provided below.

직렬로 연결된 랫치를 갖는 멀티레벨 듀얼-시프트 레지스터 블록(10)은 데이터 입력 및 출력단자와 메모리 어레이(1 및 2)사이에 놓인다. 메모리 어레이(1)에 기록되는 데이터는 블록(10)에 대한 데이터 인(DATA IN)(25)라인을 통해 메모리 어레이(1)로 직렬로 이동된다. 메모리 어레이(1)로부터 판독되는 데이터는 메모리 어레이(1)로부터 블록(10)으로 이동되고 그후 블록(10)으로부터 데이터 아웃(DATA OUT)(26)라인을 통해 직렬로 전송된다. 시스템 제어 로직 블록(15)은 적절한 시스템 동작을 허용하기 위해 필요한 제어 및 시퀀싱 회로를 포함한다. 테스트 모드 제어 및 로직(17) 블록은 칩의 전체 기능 테스팅을 허용하는 회로를 포함한다. 테스트 모드의 사용을 통해, 칩은 칩에 대한 더욱 고속이고 효율적인 확인을 허용하는 다양한 대안 테스트 구성으로 재구성된다. 이들 테스트 모드는 일반적으로 공장에서 확인 페이즈에서 액세스되지만 여분블록(5)을 사용하여 어레이 테스트 모드와 같이, 어떠한 테스트 모드도 현장에서 액세스될 수 있다.A multilevel dual-shift register block 10 having a latch connected in series is placed between the data input and output terminals and the memory arrays 1 and 2. Data written to the memory array 1 is transferred in series to the memory array 1 through the line of data IN 25 for the block 10. Data read from the memory array 1 is moved from the memory array 1 to block 10 and then transferred serially from block 10 through the DATA OUT 26 line. System control logic block 15 includes the necessary control and sequencing circuitry to allow proper system operation. The test mode control and logic 17 block includes circuitry that allows full functional testing of the chip. Through the use of the test mode, the chip is reconfigured into various alternative test configurations that allow for faster and more efficient verification of the chip. These test modes are generally accessed at the factory confirmation phase, but any test mode can be accessed in the field, such as the array test mode using redundant block 5.

프로그램/소거/판독 알고리즘 블록(18)은 메모리 어레이(1)로부터 디지털 데이터의 지능 프로그래밍, 소거 및 판독을 수행하기 위한 모든 제어 및 시퀀싱회로를 제공한다.The program / erase / read algorithm block 18 provides all control and sequencing circuitry for performing intelligent programming, erasing and reading of digital data from the memory array 1.

오실레이터 블록(19)은 고전압 생성을 위한 클록 신호를 발생하며 프로그램/소거/판독 알고리즘 블록(18)을 위해 그리고 기타 시스템 클록킹 및 동기화 목적을 위해 클록신호를 제공한다. 대안으로, 오실레이터 블록(19)이 온-칩에 설비되지 않는다면, 이것의 출력신호는 반드시 집적회로의 외부에 공급되어야만 한다.Oscillator block 19 generates a clock signal for high voltage generation and provides a clock signal for program / erase / read algorithm block 18 and for other system clocking and synchronization purposes. Alternatively, if the oscillator block 19 is not equipped on-chip, its output signal must be supplied outside of the integrated circuit.

전하펌프(20) 블록은 온-칩에 고전압을 발생시킨다. 고전압 셰이핑 및 제어 블록(20)은 전하펌프 블록(20)의 출력신호를 수신하고 소정 상승 및 하강 시간으로 고전압 펄스를 적절히 성형한다. 고전압 펄스 셰이핑은 집적회로의 동작에 대한 장기간 신뢰성을 위해 매우 중요하다. 고정압 셰이핑된 펄스는 또한 외부적으로 제공될 수 있다. 또는 셰이핑되지 않은 고전압은 외부 소스로부터 제공될 수 있고, 온-칩 회로로 적절한 상승 및 하강 시간으로 펄스 셰이핑될 수 있다.The charge pump 20 block generates a high voltage on-chip. The high voltage shaping and control block 20 receives the output signal of the charge pump block 20 and properly shapes the high voltage pulses with predetermined rise and fall times. High voltage pulse shaping is very important for long term reliability of the operation of integrated circuits. High pressure shaped pulses may also be provided externally. Alternatively, the unshape high voltage may be provided from an external source and pulsed with the appropriate rise and fall times into the on-chip circuit.

비휘발성 스크래치 패드 메모리 및 레지스터 블록(22)은 비휘발성 메모리 어레이(1)의 메모리 셀과 마찬가지의 메모리 셀을 갖는다. 이들 메모리 셀은 외부 시스템 관리 및 특성 필요조건을 위해 적절히 구성되어 통상적으로 사용된다. 오디오 레코드 및 플레이 백 시스템에서, 예를들어, 비휘발성 스크래치 패드 메모리 및 레지스터 블록(22)은 메시지의 수에 대한 정보와 이들 메시지가 기록되는 시간을 포함한다. 비휘발성 스크래치 패드 메모리 및 레지스터내의 데이터는 메모리 셀당 단일 또는 다수 비트로서 저장될 수 있다.The nonvolatile scratch pad memory and the register block 22 have the same memory cells as the memory cells of the nonvolatile memory array 1. These memory cells are suitably configured and commonly used for external system management and characteristic requirements. In audio record and playback systems, for example, nonvolatile scratch pad memory and register block 22 include information about the number of messages and the time these messages are recorded. The data in nonvolatile scratch pad memory and registers may be stored as single or multiple bits per memory cell.

온-칩 밴드 갭 기준 블록(23)은 집적회로의 동작을 위해 필요한 아날로그 전압 및 전류 기준을 발생시킨다. 이들 전압 및 전류기준은 온도 및 파워 공급 변동사항을 보상한다. 시스템 성능은 넓은 범위의 온도 및 파워 공급 범위에 대해 안정화된다.The on-chip band gap reference block 23 generates the analog voltage and current references required for the operation of the integrated circuit. These voltage and current references compensate for temperature and power supply variations. System performance is stabilized over a wide range of temperature and power supply ranges.

메모리 셀의 일반적인 판독 동작Typical Read Operation of Memory Cells

이제부터, 전류-모드 동작이 메모리 셀당 복수 비트 판독에 대해 일반적으로 설명된다. 전류-모드 판독은 고속 액세스 시간이라는 이점을 갖는다. 도 2A는 단일 트랜지스터 메모리 셀을 이용하여, 전류-모드의 판독을 위한 일반적인 회로 배열을 갖는다. 이러한 일반적인 회로배열의 구조특징은 기타 셀 구조에도 응용될 수 있다.From now on, current-mode operation is generally described for multiple bit reads per memory cell. Current-mode reading has the advantage of fast access time. 2A has a general circuit arrangement for reading current-mode, using a single transistor memory cell. The structural features of this general circuit arrangement can be applied to other cell structures.

비휘발성 메모리 셀(30)은 전형적으로 인버터 모드로 연결된다. 셀(30)을 형성하는 트랜지스터의 소스(31)에서의 전압(Vs)은 접지된다. 메모리 셀(30)의 제어 게이트(36)는 적절한 전압(Vg)에 연결되거나, 파워 소스 전압에 스위칭된다. 메모리 셀(30)이 일부분인 메모리 어레이의 열 라인(32)의 일부를 형성하는 메모리 셀(30)의 드레인은 일반적으로 전류 센스 증폭기(33)에 연결된다. 비휘발성 메모리 셀(30)은 어떠한 선택회로(단순함을 위해 도면에 도시되지 않음)를 통해 열 라인(32)에 연결된다. 전류 센스 증폭기(33)는 일반적으로 비교를 목적으로 기준 전류 입력 라인(34)에 연결된다. 비휘발성 메모리 셀(30)을 통한 열 라인(32)과 기준 전류 라인(34)사이의 비교의 결과는 로직 출력 라인(35)에서 로직 레벨로서 발생된다.The nonvolatile memory cell 30 is typically connected in inverter mode. The voltage V s at the source 31 of the transistor forming the cell 30 is grounded. The control gate 36 of the memory cell 30 is connected to an appropriate voltage V g or switched to a power source voltage. The drain of the memory cell 30, which forms part of the column line 32 of the memory array in which the memory cell 30 is part, is generally connected to the current sense amplifier 33. The nonvolatile memory cell 30 is connected to the column line 32 via some selection circuit (not shown in the figure for simplicity). Current sense amplifier 33 is generally connected to reference current input line 34 for comparison purposes. The result of the comparison between the column line 32 and the reference current line 34 through the nonvolatile memory cell 30 is generated as a logic level at the logic output line 35.

셀 당 단일 비트에 대해, 메모리 셀(30)을 통한 단순한 전류의 존재 및 비존재가 결정된다. 메모리 셀 당 다수 비트에 대해, 셀(35)을 통과하는 전류량은 입력 라인(34)에서 기준전류를 변경하므로써 설정된 수의 전류와 비교된다. 로직 출력(35)에서의 신호는 저장된 비트를 결정하기 위해 디코딩된다. 예를들어, Mehrotra씨에 의한 미합중국 특허 제 5,172,338 호는 전류-모드 판독을 이용하여 복수비트 판독 체계를 설명하며 다양한 대안 실시예를 보여준다. 그러나, 전류-모드 판독이 본 발명에서 사용될 수 있는 반면에, 전압-모드에서의 메모리 셀의 판독이 바람직하다. 이것은 전류-모드 기술과 비교하여 파워 소비를 감소시키며 오디오 레코드 및 플레이백 시스템과 기계식 자석 디스크 대체 시스템과 같은 낮은 파워, 비교적 저속 액세스 응용에 더욱 적합한 메모리 집적회로 셀 당 다수 비트가 되게 한다.For a single bit per cell, the presence and absence of a simple current through the memory cell 30 is determined. For many bits per memory cell, the amount of current passing through the cell 35 is compared with a set number of currents by changing the reference current at the input line 34. The signal at logic output 35 is decoded to determine the stored bit. For example, US Pat. No. 5,172,338 by Mehrotra describes a multi-bit read scheme using current-mode readout and shows various alternative embodiments. However, while current-mode reading can be used in the present invention, reading of memory cells in voltage-mode is preferred. This reduces power consumption compared to current-mode technology and allows multiple bits per memory integrated circuit cell, which is more suitable for low power, relatively slow access applications such as audio record and playback systems and mechanical magnetic disk replacement systems.

전압-모드 판독에서, 비휘발성 메모리 셀(30)은 도 2B에 도시된 바와 같이, 단일 트랜지스터 메모리 셀을 이용하여 소스 폴로워 모드에서 연결된다. 일반적인 전압-모드 특징구조는 기타 셀 구조에도 응용될 수 있다. 셀(30)을 형성하는 트랜지스터의 소스(31)는 밴드 갭 기준과 같은 안정 전압 기준으로부터 조정 공급 전압(Vs)에 연결된다. 제어 게이트(36)는 또한 셀(30)의 드레인에서 최고 예상 전압(Vd)에 의한 정확한 판독을 허용하기에 충분히 높은 전압 또는 소스(31)와 동일한 공급전압에 연결된다. 안정한 일정한 바이어스 전류회로(37)는 접지와 트랜지스터의 드레인 사이에 연결되고, 또한 도 2A에서와 같이, 메모리 어레이의 열 라인(32)의 일부를 형성한다. 고정된 바이어스 전류의 양은 0.5 마이크로암페어 내지 5.0 마이크로암페어 사이의 범위로 그 양이 작다. 이 작은 전류량은 복수 판독 사이클 동안 전자의 지나친 누적 트래핑을 방지하므로써, 메모리 셀(30)의 오류 판독을 방지한다. 선택회로(도시되지 않음)를 통하여 열 라인(32)에 연결된 드레인 전압은 Vg-Vgd와 동일하고, 여기서 Vgd는 바이어스 전류회로(37)에 의해 초래된 전류원에 요구되는 메모리 셀(30)의 게이트-드레인 전압이다. 열라인(32)의 일부인 트랜지스터의 드레인은 전압 센스 증폭기(38)의 입력단자에 연결된다. 전압 센스 증폭기(38)는 또한 기준 전압 입력라인(39)과 로직 출력 라인(40)을 가진다. 트랜지스터 드레인, 열 라인(32)과 기준 전압 라인(39)에서의 전압은 비교되어 결과 로직 출력 신호가 로직 출력 라인(40)에 제공된다. 전압-모드에서의 판독을 위해 필요한 전류는 전류-모드에서 보다 훨씬 적다. 따라서 전압-모드에서의 판독은 더욱 낮은 파워 소실을 갖는다.In the voltage-mode readout, the nonvolatile memory cell 30 is connected in source follower mode using a single transistor memory cell, as shown in FIG. 2B. The general voltage-mode feature can also be applied to other cell structures. The source 31 of the transistor forming the cell 30 is connected to the regulated supply voltage V s from a stable voltage reference, such as a band gap reference. The control gate 36 is also connected to the same supply voltage as the source 31 or a voltage high enough to allow accurate reading by the highest expected voltage V d at the drain of the cell 30. A stable constant bias current circuit 37 is connected between ground and the drain of the transistor, and also forms part of the column line 32 of the memory array, as in FIG. 2A. The amount of fixed bias current is small in the range between 0.5 microamps and 5.0 microamps. This small amount of current prevents excessive cumulative trapping of electrons during multiple read cycles, thereby preventing error reading of the memory cell 30. The drain voltage connected to the column line 32 via a selection circuit (not shown) is equal to V g -V gd , where V gd is the memory cell 30 required for the current source caused by the bias current circuit 37. Is the gate-drain voltage. The drain of the transistor that is part of the column line 32 is connected to the input terminal of the voltage sense amplifier 38. The voltage sense amplifier 38 also has a reference voltage input line 39 and a logic output line 40. The voltages at transistor drain, column line 32 and reference voltage line 39 are compared so that the resulting logic output signal is provided to logic output line 40. The current required for reading in voltage-mode is much less than in current-mode. Thus, readings in voltage-mode have lower power dissipation.

라인(32)에서의 판독 전압은 비휘발성 메모리 셀(30)의 부동 게이트(36)상의 네거티브 전하(전자)량에 좌우된다. 부동 게이트상의 대량의 전하는 셀(30)의 임계전압을 증가시킨다. 더욱 높은 임계전압은 셀(30)의 게이트-드레인 전압을 증가시킨다. 라인(32)에서의 전압은 접지에 대해 하강된다. 역으로, 부동 게이트의 전하량이 작을 때, 셀(30)의 임계전압은 하강되고 Vgd는 감소된다. 따라서 라인(32)에서의 전압은 접지에 대해 상승한다. 부동 게이트상의 전하량을 제어하므로써, 적절한 역판독 전압이 라인(32)에서 발생된다. 네거티브 전하(전자)를 부동 게이트로 주입하는 프로세스는 부동 게이트 또는 메모리 셀을 "소거"하는 것으로 일컬어지고 부동게이트로부터 전하를 제거하는 것은 부동 게이트 또는 메모리 셀을 "프로그래밍"하는 것으로 일컬어진다.The read voltage at line 32 depends on the amount of negative charge (electrons) on the floating gate 36 of the nonvolatile memory cell 30. Large amounts of charge on the floating gate increase the threshold voltage of the cell 30. Higher threshold voltages increase the gate-drain voltage of the cell 30. The voltage at line 32 drops to ground. Conversely, when the charge amount of the floating gate is small, the threshold voltage of the cell 30 is lowered and V gd is decreased. Thus, the voltage at line 32 rises with respect to ground. By controlling the amount of charge on the floating gate, an appropriate reverse read voltage is generated in line 32. The process of injecting negative charge (electrons) into the floating gate is referred to as "erasing" the floating gate or memory cell, and removing the charge from the floating gate is referred to as "programming" the floating gate or memory cell.

단일 메모리 셀로부터 복수비트를 판독하는 동안, 트랜지스터의 드레인에서의 전압은 기준 전압라인(39)에서의 여러 전압과 비교된다. 라인(40)에서의 로직 출력은 그후 적절한 비트를 제공하기 위해 디코딩된다. 메모리 셀(30)에 대한 소스 폴로워 연결로, 데이터 액세스는 전체 열 라인(32)이 반드시 작은 메모리 셀을 통해 풀 업되어야 하기 때문에 느려지게 된다. 특정 응용에선, 이러한 저속 액세스율은 허용된다. 아래에서 설명되는 바와 같이, 멀티레벨 듀얼 시프트 레지스터는 효율적으로 판독 액세스 시간을 개선시킨다.During reading a plurality of bits from a single memory cell, the voltage at the drain of the transistor is compared with the various voltages at the reference voltage line 39. The logic output at line 40 is then decoded to provide the appropriate bits. With a source follower connection to memory cell 30, data access is slowed down because the entire column line 32 must be pulled up through a small memory cell. In certain applications, this slow access rate is allowed. As described below, the multilevel dual shift register effectively improves read access time.

메모리 어레이의 구성Memory Array Configuration

도 3은 비휘발성 메모리 어레이(1)와 비휘발성 기준 어레이(2)의 구조를 예시한다. 비휘발성 기준 어레이(2)내의 메모리 셀은 어레이(1)에서 선택된 메모리 셀에 저장된 비트를 결정하기 위해 전압 센스 증폭기에 대한 비교 기준 전압을 발생시키는데 사용된다. 본 명세서의 바람직한 실시예에서, 각각의 어레이(1 및 2)의 메모리 셀 당 4 비트가 저장된다. 상기한 바와 같이, 바람직한 실시예의 각각의 블록은 행으로 이루어진다. 각각의 행은 기준 메모리 셀 및 어레이 메모리 셀로 이루어진다. 행의 모든 셀은 동시에 소거되고, Y-멀티플렉서 멀티플렉싱 체계에 좌우되어 단지 행의 일부분만이 동시에 프로그램 및 판독된다. 메모리 셀 당 4개 비트가 저장되기 때문에, 행 당 16개 기준 메모리 셀이 존재한다. 본 실시예에서, 각각의 Y-드라이버는 8개의 메모리 셀을 구동하며 따라서 기준 어레이(2)내의 16개 셀로 된 행에 대해 두 개의 Y-드라이버(42)가 있다. 이들 Y-드라이버(42)는 REFY-드라이버로 표기된다. 도 3에서, 메모리 어레이(1)에 대해 단지 3개의 Y-드라이버(41)가 예시되어 있다. 이들은 M Y-드라이버(41)이다. 도시된 3개의 메모리 어레이 Y-드라이버는 Y-드라이버0 내지 Y-드라이버2로 표기되어 있다. 도 1의 밴드갭 기준 블록(23)의 일부분인 기준 임계 분할 전압 발생블록(23)은 각각이 기준전압 REFB0-REFB15중의 하나를 갖춘 16개 기준라인을 REFY-드라이버(42)내로 구동하고, 도 1의 블록(23)의 일부분인 어레이 임계 분할 전압 발생 블록(43)은 각각이 기준 전압 REFA0-REFA15중의 하나를 갖춘 16개 기준 라인을 어레이 Y-드라이버(41)내로 구동한다. REFA0-15과 REFB0-15 신호간의 전압관계는 도 10에 도시되어 있다.3 illustrates the structure of the nonvolatile memory array 1 and the nonvolatile reference array 2. The memory cells in the nonvolatile reference array 2 are used to generate a comparison reference voltage for the voltage sense amplifier to determine the bits stored in the memory cells selected in the array 1. In a preferred embodiment of the present specification, 4 bits are stored per memory cell of each array 1 and 2. As mentioned above, each block of the preferred embodiment consists of rows. Each row consists of a reference memory cell and an array memory cell. All cells in a row are erased at the same time, and depending on the Y-multiplexer multiplexing scheme, only a portion of the row is programmed and read simultaneously. Since 4 bits are stored per memory cell, there are 16 reference memory cells per row. In this embodiment, each Y-driver drives eight memory cells, so there are two Y-drivers 42 for a row of 16 cells in the reference array 2. These Y-drivers 42 are referred to as REFY-drivers. In FIG. 3, only three Y-drivers 41 are illustrated for the memory array 1. These are M Y-drivers 41. The three memory array Y-drivers shown are labeled Y-drivers 0 through Y-drivers2. Reference threshold division voltage generation block 23, which is part of bandgap reference block 23 of FIG. 1, drives sixteen reference lines, each with one of reference voltages REFB0-REFB15, into REFY-driver 42, and FIG. Array threshold division voltage generation block 43, which is part of block 23 of 1, drives sixteen reference lines, each with one of the reference voltages REFA0-REFA15, into array Y-driver 41. The voltage relationship between the REFA0-15 and REFB0-15 signals is shown in FIG.

기록 동작 동안, WR 라인(46)상의 기록(WRITE) 신호는 하이이고, N-채널 트랜지스터(45)(점선으로된 정방형으로 표시됨) 셋트를 턴 온시킨다. 블록(43)의 16개 REFA0-15 기준전압은 Y-드라이버 기준 전압라인 RFL015에 패스된다. 블록(43)으로 부터의 이들 기준 레벨 전압(REFA0-REFA15)는 메모리 어레이(1) 셀에 선택적으로 프로그래밍된다. 마찬가지로, 블록(44)으로 부터의 기준전압(REFB0-REFB15)은 어레이(2)의 기준 셀로 선택적으로 프로그래밍된다.During the write operation, the WRITE signal on the WR line 46 is high and turns on a set of N-channel transistors 45 (denoted by dotted squares). The 16 REFA0-15 reference voltages of block 43 are passed to the Y-driver reference voltage line RFL015. These reference level voltages REFA0-REFA15 from block 43 are selectively programmed into the memory array 1 cell. Similarly, the reference voltages REBB0-REFB15 from block 44 are selectively programmed into the reference cells of array 2.

판독 동작 동안, WR 라인(46)상의 기록(WRITE) 신호는 트랜지스터(45)를 턴 오프하도록 로우로 구동된다. 반면에, 트랜지스터(47) 셋트(점선 정방형으로 표시된)는 어레이(2)의 기준 셀에 저장된 기준 REFB0-15 출력 전압을 Y-드라이버(41) 기준 전압라인 RFL015에 패스하기 위해 턴 온된다. 기준 어레이(2)의 셀로부터 판독되고 저장된 REFB0-REFB15 전압은 아래에서 설명되는 2진 탐색 기술을 통해 메모리 어레이(1)의 셀에 저장된 디지털 비트를 확인하기 위해 기준전압으로서 사용된다. 바람직한 실시예에서의 행 또는, 블록 당 기준 셀의 사용은 온도 변동등을 공통모드에 배치시키므로써 파워 공급 및 온도 변동을 없앤다. 어레이(1 및 2)의 메모리 셀은 동일한 온도 변동에 영향을 받기 쉽다. 어레이(2)의 기준 셀은 또한 어레이(1)의 메모리 셀에서와 같은 동일 수의 프로그램 및 소거 사이클에 영향을 받기 쉬우며, 이렇게하여 공통모드의 행 또는 블록의 셀의 장기간 에이징 효과를 나타낸다. 이러한 기준 매커니즘은 낮은 전류 역판독모드를 낮추는 이점을 가지며 이미 설명된 기술과 비교하여, 디지털 비트에 대한 정확한 판독 및 더욱 장기간 양호한 신뢰도를 허용한다. 온-칩 임계 전압 발생(보상된 파워공급 및 온도)블록(44 및 43)은 이러한 분야에서의 종래 효과에 비해 더욱 높은 신뢰도를 생성한다. 블록(43 및 44)은 임계 분할 전압을 발생시키기 위해 비휘발성 메모리 셀을 사용하지 않지만, 레지스터, 연산증폭기 및 밴드갭 전압원과 같은 더욱 신뢰성 있고 안정한 성분에 좌우된다. 따라서 본 발명은 온도 및 파워 공급 변동에 대해 개선된 장기간의 신뢰도 및 정확도와 안정성을 갖는다.During the read operation, the write signal WRITE on the WR line 46 is driven low to turn off the transistor 45. On the other hand, a set of transistors 47 (indicated by dotted squares) are turned on to pass the reference REFB0-15 output voltage stored in the reference cell of the array 2 to the Y-driver 41 reference voltage line RFL015. The REFB0-REFB15 voltages read and stored from the cells of the reference array 2 are used as reference voltages to identify the digital bits stored in the cells of the memory array 1 through the binary search technique described below. The use of a reference cell per row or block in a preferred embodiment eliminates power supply and temperature variations by placing temperature fluctuations and the like in a common mode. Memory cells in arrays 1 and 2 are susceptible to the same temperature fluctuations. The reference cells of the array 2 are also susceptible to the same number of program and erase cycles as in the memory cells of the array 1, thus exhibiting the long-term aging effect of the cells of the common mode rows or blocks. This reference mechanism has the advantage of lowering the low current back-reading mode and allows for accurate readings of the digital bits and better long term reliability compared to the techniques already described. On-chip threshold voltage generation (compensated power supply and temperature) blocks 44 and 43 produce higher reliability than conventional effects in this field. Blocks 43 and 44 do not use nonvolatile memory cells to generate the threshold division voltage, but depend on more reliable and stable components such as resistors, operational amplifiers, and bandgap voltage sources. The present invention thus has improved long term reliability, accuracy and stability against temperature and power supply variations.

본 발명의 또다른 실시예에서, 기준 어레이(2)의 셀이 맨먼저 프로그래밍된다. 그러면 어레이(2)로부터의 프로그램된 기준 셀의 출력이, 도 10에 도시된 바와 같이 프로그램된 기준 레벨사이의 중간에 프로그램된 레벨을 두기 위한 오프셋트와 함께, 메모리 어레이(1)의 셀을 선택적으로 선택적으로 프로그램하는데 사용된다. 이 방법은 기준 셀을 맨처음 프로그램하기 위해 블록(43)을 필요로 하지 않지만 추가의 시간을 필요로 한다.In another embodiment of the invention, the cells of the reference array 2 are programmed first. The output of the programmed reference cell from the array 2 then selects the cells of the memory array 1 with an offset to place the programmed level in the middle between the programmed reference levels as shown in FIG. 10. Used to program selectively. This method does not require block 43 to initially program the reference cell but requires additional time.

데이터를 위한 듀얼 시프트 레지스터Dual Shift Registers for Data

도 4는 도 1에 도시된 멀티레벨 듀얼 시프트 레지스터 블록(10)에 대한 블록 레벨 표현이고 도 3의 Y-드라이버(41)의 각각의 일부분이다. 멀티레벨 듀얼 시프트 레지스터 블록(10)은 두 개의 뱅크(A 및 B)로 구성되는 랫치를 갖는다. 랫치로 이루어진 각각의 뱅크는 대형 시프트 레지스터를 형성하기 위해 직렬로 연결된다. 각각의 뱅크는 각각의 Y-드라이버(41)에 대해 4개의 랫치를 갖는다. 도 5에서, 각각의 Y-드라이버(41)에 대해 기록동작 동안 데이터는 블록(10)의 듀얼 시프트 레지스터를 통해 직렬로 입력되며 판독동작 동안 데이터는 블록(10)의 듀얼 시프트 레지스터를 통해 직렬로 출력된다. 데이터 정보는 기록 동작 동안 각각의 Y-드라이버(41)내에서 최상위(top)로부터 최하위(bottom)로 이동하고 판독 동작 동안 최하위(bottom)로부터 최상위(top)로 이동한다. 일반적으로, 모든 Y-드라이버(41)에 공통인 신호는 수평으로 이동한다.4 is a block level representation of the multilevel dual shift register block 10 shown in FIG. 1 and is a portion of each of the Y-drivers 41 of FIG. The multilevel dual shift register block 10 has a latch consisting of two banks A and B. Each bank of latches is connected in series to form a large shift register. Each bank has four latches for each Y-driver 41. In Fig. 5, for each Y-driver 41, data is serially input through the dual shift register of block 10 and data is read serially through the dual shift register of block 10 during the write operation. Is output. Data information moves from the top to the bottom in each Y-driver 41 during the write operation and from the bottom to the top during the read operation. In general, the signal common to all Y-drivers 41 moves horizontally.

물론, Y-드라이버 랫치의 깊이(depth)는 하나의 메모리 셀에 저장된 비트의 수에 좌우된다. 바람직한 실시예에서, 각각의 셀에 4개의 비트가 저장된다. 그러므로, 각각의 Y-드라이버(41)당 4개의 랫치가 존재한다. 예를들어, 도 4에서, Y-드라이버(0)는 4개의 직렬 연결된 랫치(60-63)를 가지며 Y-드라이버(1)는 4개의 랫치(65-67)를 가진다. 계속해서, Y-드라이버(M-1)는 직렬연결된 맨 마지막 4개의 랫치를 갖는다. M은 Y-드라이버의 갯수이므로, 랫치의 전체 수는 4 x M이다. 모든 랫치가 시프트 레지스터를 형성하도록 긴 직렬링크에서 모든 Y-드라이버(41)에 걸쳐 연결됨을 유의해야 한다. 모든 랫치의 진정한 보상출력은 도 6을 참조하여 아래에서 설명되는 바와 같이, 병렬이다.Of course, the depth of the Y-driver latch depends on the number of bits stored in one memory cell. In a preferred embodiment, four bits are stored in each cell. Therefore, there are four latches for each Y-driver 41. For example, in FIG. 4, the Y-driver 0 has four series connected latches 60-63 and the Y-driver 1 has four latches 65-67. Subsequently, the Y-driver M-1 has the last four latches connected in series. Since M is the number of Y-drivers, the total number of latches is 4 x M. Note that all latches are connected across all Y-drivers 41 in the long serial link to form a shift register. The true compensation output of all the latches is in parallel, as described below with reference to FIG. 6.

두 개의 시프트 레지스터, 뱅크A 및 뱅크B는 각각 전송 스위치(145 및 146)를 통해 데이터 인(DATA IN)라인(25)과 데이터 아웃(DATA OUT)라인(26)에 연결된다. REGSEL 제어라인(147)이 하이일 때, 데이터 인 라인(25)과 데이터 아웃라인(26)이 스위치(145)를 통해 뱅크A 시프트 레지스터에 연결된다. REGSEL 제어라인(147)이 로우일 때, 데이터 인 라인(25)과 데이터 아웃라인(26)이 스위치(146)를 통해 뱅크B 시프트 레지스터에 연결된다. 라인(29)상의 SHFT CLK 신호는 시프트 레지스터를 클록킹한다. SHFT CLK 신호의 모든 사이클로, 데이터 비트는 다음 랫치로 이동한다. 예를들어, 랫치(60)의 비트는 랫치(61)로 이동하고 랫치(61)의 비트는 이전에 랫치(62)로 이동하는 등이다. 듀얼 시프트 레지스터의 정상동작 동안, 하나의 뱅크가 항상 직렬모드에서 동작하며 다른 뱅크는 병렬모드에서 동작한다. 직렬모드에 있는 뱅크는 데이터 인 라인(25) 및 데이터 아웃 라인(26)에 연결된 데이터 단자로부터 데이터를 수신하거나 판독한다. 동시에, 병렬모드에 있는 기타 뱅크는 병렬로 어레이(10)의 메모리 셀로부터 데이터를 수신하거나 이 메모리 셀에 데이터를 적재한다. 직렬모드에 있는 뱅크가 데이터에 대해 자신의 직렬동작을 완료함에 따라, 다른 뱅크는 동시에 어레이(1)로부터 및 어레이(1)로 자신의 병렬동작을 완료한다. 그후 REGSEL 라인(147)의 상태를 변경하므로써 직렬뱅크는 병렬모드로 전환되고 병렬뱅크는 직렬모드로 전환된다. 이러한 직렬로부터 병렬로 및 그 역으로의 동기 스위칭은 메모리 어레이(1)로 부터의 판독 및 메모리 어레이(1)로의 기록 동안 연속적으로 발생한다. M Y-드라이버가 있으므로, M메모리 셀은 병렬로 기록된다. 셀 당 4개의 비트가 기록되므로, 전체 4 x M 비트가 병렬로 기록된다. 이것은 본질적으로 단일 비트 동작에 비해 4 x M 만큼의 고속 기록율을 제공한다. 마찬가지로 4 x M 비트가 병렬로 판독되고 그후 4 x M 만큼의 고속 판독율을 제공하도록 시프트된다. 사실상, 판독율은 고속 클록율로 시프트 레지스터를 클록킹하므로써 더욱 고속으로 수행된다. 최대 클록속도는 직렬 시프팅 동작 동안 병렬 데이터가 랫치로 적재되는데 필요한 시간에 의해 제한된다. 따라서, 상기한 바와 같이, 멀티레벨 듀얼 시프트 레지스터 블록(10)은 메모리 셀 어레이(1)에 대한 더욱 고속의 판독 및 기록 액세스 시간을 허용한다.The two shift registers, bank A and bank B, are connected to data in line 25 and data out line 26 via transfer switches 145 and 146, respectively. When the REGSEL control line 147 is high, the data in line 25 and the data outline 26 are connected to the bank A shift register through the switch 145. When REGSEL control line 147 is low, data in line 25 and data outline 26 are coupled to bank B shift registers via switch 146. The SHFT CLK signal on line 29 clocks the shift register. In every cycle of the SHFT CLK signal, the data bit moves to the next latch. For example, the bits of latch 60 move to latch 61 and the bits of latch 61 previously move to latch 62, and so on. During normal operation of the dual shift register, one bank always operates in serial mode and the other bank operates in parallel mode. Banks in serial mode receive or read data from data terminals connected to data in line 25 and data out line 26. At the same time, other banks in parallel mode receive or load data from the memory cells of the array 10 in parallel. As the banks in serial mode complete their serial operations on the data, the other banks simultaneously complete their parallel operations from and to array 1. The serial bank is then switched to parallel mode and the parallel bank is switched to serial mode by changing the state of the REGSEL line 147. This synchronous switching from serial to parallel and vice versa occurs continuously during reading from the memory array 1 and writing to the memory array 1. Since there are M Y-drivers, M memory cells are written in parallel. Since 4 bits are written per cell, all 4 x M bits are written in parallel. This essentially provides a fast write rate of 4 x M compared to single bit operation. Similarly, 4 x M bits are read in parallel and then shifted to provide a high read rate of 4 x M. In fact, the read rate is performed at a higher speed by clocking the shift register at a higher clock rate. The maximum clock rate is limited by the time required for the parallel data to load into the latch during serial shifting operation. Thus, as mentioned above, the multilevel dual shift register block 10 allows for faster read and write access times for the memory cell array 1.

판독 및 기록동작 동안 뱅크(A)와 뱅크(B)간의 스위칭은 비동기적일 수 있다. 예를들어, 기록 동작동안, 직렬모드의 뱅크의 랫치가 병렬모드에 있는 기타 뱅크의 랫치가 복수 비트로 메모리 셀을 프로그램할 수 있기 전에 적재된다면, 두 시프트 레지스터간의 직렬 및 병렬 모드의 스위치는 병렬모드 부분의 뱅크가 자신의 프로그래밍 동작을 완료할 때 까지 대기하여야만 한다. 역으로, 만일 병렬모드 프로그래밍 동작이 제 1 뱅크의 직렬 동작이 완료되기 이전에 완료된다면, 병렬모드 뱅크는 직렬모드 뱅크에 데이터가 적재될 때 까지 대기하여야 한다. 판독 동작에 대해서도 동일하다. 따라서 듀얼 시프트 레지스터 동작에 대한 동기 및 비동기 동작이 시스템 제어 로직 블록(15)(도 1에 도시된)의 적절한 회로 구현을 통해 가능하다. Y-드라이버(0)의 랫치(60-63) 및 Y-드라이버(1)의 랫치(64-67)에 대한 상세사항은 도 6에 도시되어 있다.Switching between bank A and bank B may be asynchronous during read and write operations. For example, during a write operation, if the latch of the bank in serial mode is loaded before the latch of the other bank in parallel mode can program memory cells with multiple bits, the switches of the serial and parallel modes between the two shift registers are in parallel mode. You must wait until the bank of the section completes its programming operation. Conversely, if the parallel mode programming operation is completed before the serial operation of the first bank is completed, the parallel mode bank must wait until data is loaded into the serial mode bank. The same applies to the read operation. Thus, synchronous and asynchronous operation for dual shift register operation is possible through proper circuit implementation of system control logic block 15 (shown in FIG. 1). Details of the latches 60-63 of the Y-driver 0 and the latches 64-67 of the Y-driver 1 are shown in FIG.

듀얼 시프트 레지스터와 메모리 어레이간의 데이터Data Between Dual Shift Registers and Memory Arrays

도 5는 멀티레벨 듀얼 시프트 레지스터 블록(10), 판독-기록 블록(9)과 Y-멀티플렉서 블록(8)을 갖춘 Y-드라이버(41)의 구성을 예시한다. 개별 Y-드라이버(41)는 각각 동작 및 회로 상세사항면에서 동일하다. 단지 Y-드라이버(0)와 Y-드라이버(1)만 도시되어 있다. 기타 Y-드라이버(M-1)는 점선으로 도시되어 있다.5 illustrates the configuration of a Y-driver 41 with a multilevel dual shift register block 10, a read-write block 9 and a Y-multiplexer block 8. The individual Y-drivers 41 are identical in operation and circuit details, respectively. Only Y-driver 0 and Y-driver 1 are shown. Other Y-drivers M-1 are shown in dashed lines.

도 7은 Y-드라이버(41)의 각각의 판독-기록 블록(9)의 기준 멀티플렉서(50)에 대한 회로 상세사항을 예시한다. Y-드라이버(41)내의 각각의 랫치의 진정한 보상 출력신호는 기준 멀티플렉서(50)에 전달된다. Y-드라이버(41)( 이경우엔 Y-드라이버(0))내의 4개 랫치의 특정 비트에 좌우되어, 기준 멀티플렉서(50)는 기준 전압라인(RFL0-RFL15)중의 하나를 멀티플렉서(50)의 RFLOUT 출력단자에 연결한다. 라인(60A,61A,62A,63A 및 60B,61B,62B,63B)상의 신호는 도 6에 도시된 바와 같이, 각각의 Y-드라이버(41)의 4개 랫치로부터 트루 및 보상 출력신호(AA,AB,BA,BB,CA, CB,DA 및 DB)를 운반한다.7 illustrates the circuit details for the reference multiplexer 50 of each read-write block 9 of the Y-driver 41. The true compensated output signal of each latch in the Y-driver 41 is passed to the reference multiplexer 50. Depending on the specific bits of the four latches in the Y-driver 41 (in this case Y-driver 0), the reference multiplexer 50 may pass one of the reference voltage lines RFL0-RFL15 to the RFLOUT of the multiplexer 50. Connect to the output terminal. Signals on lines 60A, 61A, 62A, 63A and 60B, 61B, 62B, 63B are provided with true and compensating output signals AA, from four latches of each Y-driver 41, as shown in FIG. AB, BA, BB, CA, CB, DA and DB).

기준 멀티플렉서(50)는 종래기술에서 흔히 알려진 바와 같이, 본질적으로16입력-1출력(16-to-1) 멀티플렉서이다. 도 7에서 알 수 있는 바와 같이, RFL0-15중의 단지 하나만이 랫치의 출력단자(60A 내지 63B)로부터, 신호(60A 내지 63B)에 좌우되어, 출력신호(RFLOUT)신호로서 나타난다. 트랜지스터(T11 내지 T16)는 N형 트랜지스터이고 멀티플렉서(50)의 동작이 이해되어야 한다. 멀티플렉서의 사이즈는 하나의 메모리 셀에 저장되는 비트의 수에 좌우된다. 예를들어, 메모리 셀 당 6비트 저장 시스템은 64입력-1출력 멀티플렉서를 필요로 한다.The reference multiplexer 50 is essentially a 16 input-1 output (16-to-1) multiplexer, as is commonly known in the art. As can be seen in Fig. 7, only one of the RFL0-15 is shown as an output signal RFLOUT signal from the output terminals 60A to 63B of the latches, depending on the signals 60A to 63B. Transistors T11 to T16 are N-type transistors and the operation of multiplexer 50 should be understood. The size of the multiplexer depends on the number of bits stored in one memory cell. For example, a 6-bit storage system per memory cell requires a 64-in-1-output multiplexer.

도 8A는 판독-기록 블록(9)의 고전압 스위치(54), 프로그램/판독 제어회로(53), 랫치(52) 및 전압 비교기(51)의 상세사항을 도시한다. 도 8A의 회로는 Y-드라이버(41)의 각각에 공통이다. 전압 비교기(51)는 트랜지스터(70-76)를 갖는다. 트랜지스터(70 및 71)는 P-채널 트랜지스터이고 나머지는 N-채널 트랜지스터이다. 도 1의 블록(23)으로 부터의 라인(198)상의 VBIAS 전압은 전압비교기(51)를 위해 적절한 전류 바이어싱을 제공한다. 전압비교기(51)의 회로는 종래기술에서 공지되어 있다. 트랜지스터(73)의 게이트에 대한 신호 라인(200)상에서의 전압이 트랜지스터(72)의 게이트에 대한 신호 라인상에서의 RFLOUT 전압 보다 약간 높을 때 마다, 전압비교기 출력 라인(199)상의 SET 전압도 약간 높고, 그 반대도 마찬가지이다. 트랜지스터(73)의 게이트는 일반적으로 비반전 입력단으로 칭해지고 트랜지스터(72)의 게이트는 일반적으로 반전 입력단으로 칭해진다. 아래에서 설명되는 신호 라인(200 및 206)은 비반전 입력단을 Y-멀티플렉서(55)에 연결한다. 두 라인(200 및 206)은 어레이(1)의 셀에 저장된 복수 비트를 판독하기 위해 경로를 형성한다. 상기한 바와 같이, 반전 입력단은 RFLOUT 신호와 기준 멀티플렉서(50)의 출력을 수신한다. 전압비교기(51)의 SET 출력라인(199)은 랫치(52)의 트랜지스터(80)의 게이트, 입력 단자에 연결된다.8A shows details of the high voltage switch 54, program / read control circuit 53, latch 52 and voltage comparator 51 of the read-write block 9. The circuit of FIG. 8A is common to each of the Y-drivers 41. The voltage comparator 51 has transistors 70-76. Transistors 70 and 71 are P-channel transistors and the rest are N-channel transistors. The VBIAS voltage on line 198 from block 23 of FIG. 1 provides proper current biasing for voltage comparator 51. The circuit of the voltage comparator 51 is known in the art. Whenever the voltage on signal line 200 to the gate of transistor 73 is slightly higher than the RFLOUT voltage on the signal line to the gate of transistor 72, the SET voltage on voltage comparator output line 199 is also slightly higher. And vice versa. The gate of transistor 73 is generally referred to as a non-inverting input stage and the gate of transistor 72 is generally referred to as an inverting input stage. The signal lines 200 and 206 described below connect the non-inverting input terminal to the Y-multiplexer 55. Two lines 200 and 206 form a path for reading a plurality of bits stored in the cells of array 1. As described above, the inverting input stage receives the RFLOUT signal and the output of the reference multiplexer 50. The SET output line 199 of the voltage comparator 51 is connected to a gate and an input terminal of the transistor 80 of the latch 52.

랫치(52)는 트랜지스터(80 내지 85)를 갖는다. 트랜지스터(82 및 83)는 P-채널 트랜지스터이고 나머지는 N-채널 트랜지스터이다. 랫치(52)는 SET 출력라인(199)에 연결된 트랜지스터(80)의 게이트인 입력노드와 RESET 입력라인(202)에 연결된 트랜지스터(85)의 게이트인 또다른 입력노드를 갖춘 고전적인 크로스 결합된 인버터 유형이다. 이 랫치회로 및 랫치회로의 동작은 집적회로 설계자들에겐 공지되어 있다. 트랜지스터(81 및 82)는 하나의 인버터를 형성하고 트랜지스터(83 및 84)는 다른 인버터를 형성한다. 랫치(52)의 출력노드는 신호라인(201)에 의해 프로그램 판독 제어회로(53)에 연결된다. SET 라인(199)상의 신호가 하이이면, 출력라인(201)상의 랫치 출력은 하이이다. RESET 라인(202)이 하이 또는 펄스된 하이이면, 랫치 출력라인(201)상의 신호는 로우이다. SET 라인(199) 및 RESET 라인(202)상의 신호는 절대로 동시에 하이가 아니다.The latch 52 has transistors 80 to 85. Transistors 82 and 83 are P-channel transistors and the rest are N-channel transistors. Latch 52 is a classic cross coupled inverter with an input node that is the gate of transistor 80 connected to SET output line 199 and another input node that is the gate of transistor 85 connected to RESET input line 202. It is a type. This latch circuit and its operation are known to integrated circuit designers. Transistors 81 and 82 form one inverter and transistors 83 and 84 form another inverter. The output node of the latch 52 is connected to the program read control circuit 53 by the signal line 201. If the signal on the SET line 199 is high, the latch output on the output line 201 is high. If the RESET line 202 is high or pulsed high, the signal on the latch output line 201 is low. The signals on SET line 199 and RESET line 202 are never high at the same time.

프로그램/판독 제어회로(53)는 두 개의 AND 게이트(88 및 89) 및 두 개의 인버터(86 및 87)를 갖는다. PROG(프로그램) 라인(204)은 이 회로에 대한 입력이다. PROG(프로그램) 라인(204)상의 신호는 기록모드가 액티브일 때 즉, 기록동작일 때 하이이고, 판독모드가 액티브일 때 즉 판독동작일 때 로우이다. PROG가 하이(기록모드가 액티브일 때)일 때, AND 게이트(88)의 출력은 랫치(202)로부터의 출력라인(201)의 상태에 좌우된다. 랫치 출력라인(201)이 로우이면, 라인(205)상의 AND 게이트(88)의 출력은 하이이고, 라인(204)상의 PROG 신호가 하이이면 그 반대이다. PROG 라인(204)상의 PROG 신호가 하이(기록 모드가 액티브)이면, AND 게이트(89)의 출력은 로우이다. AND 게이트(89)의 출력라인은 트랜지스터(100)의 게이트에 연결된다. 기록 동작 동안, 트랜지스터(100)는 턴 오프되고 신호가 Y-멀티플렉서(55)에 연결된 라인(206)으로부터 라인(200)으로 통과하는 것을 허용치 않는다. 라인(200 및 206)은 판독 경로의 일부를 형성한다.The program / read control circuit 53 has two AND gates 88 and 89 and two inverters 86 and 87. PROG (program) line 204 is the input to this circuit. The signal on the PROG (program) line 204 is high when the write mode is active, i.e., during the write operation, and low when the read mode is active, i.e. during the read operation. When PROG is high (when the write mode is active), the output of the AND gate 88 depends on the state of the output line 201 from the latch 202. If the latch output line 201 is low, then the output of the AND gate 88 on line 205 is high and vice versa if the PROG signal on line 204 is high. If the PROG signal on the PROG line 204 is high (write mode is active), the output of the AND gate 89 is low. The output line of AND gate 89 is connected to the gate of transistor 100. During the write operation, transistor 100 is turned off and does not allow a signal to pass from line 206 to line 200 connected to Y-multiplexer 55. Lines 200 and 206 form part of the read path.

고전압 스위치(54)는 인버터(90), 두 개의 N-채널 트랜지스터(91 및 94), 커패시터(92) 및 고전압 트랜지스터(93)를 갖는다. 고전압 스위치(54)는 라인(205)이 하이일 때 HV 라인(209)상의 고전압이 고전압 셰이핑 및 제어블록(21)(도 1)으로부터 라인(206)으로 통과하는 것을 허용치 않거나, 라인(205)이 로우일 때 HV 라인(209)상의 고전압이 라인(206)으로 흐르는 것을 봉쇄하는 전송게이트로서 작동한다.The high voltage switch 54 has an inverter 90, two N-channel transistors 91 and 94, a capacitor 92 and a high voltage transistor 93. High voltage switch 54 does not allow high voltage on HV line 209 to pass from high voltage shaping and control block 21 (FIG. 1) to line 206 when line 205 is high, or line 205. When this is low, it acts as a transfer gate to block high voltage on HV line 209 from flowing to line 206.

신호라인(200 및 206)에 의해 형성된 판독 경로에 연결된 트랜지스터(101 및 102)는 전류부하를 판독동작 동안 선택된 비휘발성 메모리에 제공한다. VB 라인(208)은 밴드갭 기준 블록(23)(도 1)으로부터 트랜지스터(102)의 게이트로 발생된 전류 바이어스 라인이다. 트랜지스터(102)는 판독모드 동안 부하 전류의 소스로서 동작한다. VCTL 라인(207)에 연결된 자신의 제어 게이트를 갖춘 트랜지스터(101)는 부하전류를 턴 온 및 턴 오프시키기 위한 스위치로서 작용한다. 인버터(103 및 104)는 전압비교기(51)로부터 라인(199)상의 SET출력을 버퍼링하며 판독동작 동안 판독 데이터 라인(210)상에 출력신호를 제공한다. 라인(210)은 자신의 대응 랫치에 연결되고(도 6을 참조) 라인(206)은 자신의 대응 Y-멀티플렉서(55)에 연결된다. 따라서 전압모드에서의 판독동작을 위해 트랜지스터(101 및 102)는 바이어스 전류회로(37)로서의 역할을 하고 전압비교기(51)는 도 2B의 전압 센스 증폭기(38)로서의 역할을 한다.Transistors 101 and 102 coupled to the read path formed by signal lines 200 and 206 provide a current load to the selected nonvolatile memory during the read operation. VB line 208 is a current bias line generated from the bandgap reference block 23 (FIG. 1) to the gate of transistor 102. Transistor 102 operates as a source of load current during read mode. Transistor 101 with its control gate connected to VCTL line 207 acts as a switch to turn the load current on and off. Inverters 103 and 104 buffer the SET output on line 199 from voltage comparator 51 and provide an output signal on read data line 210 during a read operation. Line 210 is connected to its corresponding latch (see FIG. 6) and line 206 is connected to its corresponding Y-multiplexer 55. Therefore, the transistors 101 and 102 serve as the bias current circuit 37 and the voltage comparator 51 serves as the voltage sense amplifier 38 of FIG. 2B for the read operation in the voltage mode.

도 8B는 기준 Y-드라이버(42)의 판독-기록 블록(9)을 도시한다. 전압비교기(51), 랫치(52), 프로그램 판독 제어회로(53) 및 고전압 스위치(54)는 메모리 어레이(1)를 위한 Y-드라이버(41)에서와 동일하지만, 한번에 8개의 기준 메모리 셀을 판독하기 위한 수정사항이 존재한다. 판독 동작동안, 기준 Y-드라이버(42)는 이 드라이버에 연결된 모든 기준 셀을 판독한다. 본 실시예의 각각의 기준 Y-드라이버를 위한 8개의 기준 셀이 있으므로, 트랜지스터(111 및 112)에 의해 형성된 8개의 전류부하가 있으며, 각각의 트랜지스터 출력 셋트는 점선상자로 나타나 있다. 8개의 VCTL0-VCTL07 라인은 전류부하를 그들의 각각의 판독 라인(220-227)에 연결시키기 위해 하이로 강제된다.8B shows the read-write block 9 of the reference Y-driver 42. The voltage comparator 51, the latch 52, the program read control circuit 53 and the high voltage switch 54 are the same as in the Y-driver 41 for the memory array 1 but with eight reference memory cells at a time. There is a modification for reading. During the read operation, the reference Y-driver 42 reads all reference cells connected to this driver. Since there are eight reference cells for each reference Y-driver of this embodiment, there are eight current loads formed by transistors 111 and 112, and each transistor output set is shown by a dashed box. The eight VCTL0-VCTL07 lines are forced high to connect current loads to their respective read lines 220-227.

기록 동작 동안, REF Y-멀티플렉서(56)에 의해 선택되는 바와 같은 기준 셀중의 단 하나만이, 도 8에 도시된 바와 같이, 기준 Y-드라이버(42)에 기록된다. 제어라인(MCTL0-MCTL7)중의 임의의 하나가 하이일 때, 비트 라인 측 RVD(도 9A)는 도 8B의 판독 경로 라인(260-267)에 연결된다.During the write operation, only one of the reference cells as selected by the REF Y-multiplexer 56 is written to the reference Y-driver 42, as shown in FIG. When any one of the control lines MCTL0-MCTL7 is high, the bit line side RVD (FIG. 9A) is connected to the read path line 260-267 of FIG. 8B.

판독 동작 동안, 모든 VCTL0-VCTL07 및 MCTL0-MCTL07 제어라인이 하이이고; 이것은 모든 기준 셀이 병렬로 판독될 수 있게 한다. 모든 VCTL0-VCTL07 제어라인은 하이이고 또한 기준 셀의 각각의 판독 경로상에 전류부하를 둔다. 판독 동작에서 판독신호(219)도 기준 셀로 부터의 판독 전압이 RFL라인으로 전달되어 질 수 있도록 하이이다. 기준셀(0-7)로부터 판독된 8개 기준전압은 기준 Y-드라이버(0)를 통해 각각 RFL(0-7)신호 라인에 전달되며 기준셀(8-15)로부터 병렬로 판독된 8개 기준전압은 기준 Y-드라이버(1)를 통해 각각 RFL(8-15)신호 라인에 전달된다. 본 실시예에서 전압(REFB015)(도 10)은 각각 기준 셀(0-15)로 프로그래밍된다. 하이인 라인(219)상의 판독 신호로, 트랜지스터(211)는 오프이고 따라서 판독 전압신호는 비교기 입력라인(200)에 전달되지 않는다. 트랜지스터(110 및 93)가 Y-드라이버(41)를 통해 어레이(1)의 메모리 셀에 대해 발생하는 바와 같이 모든 기준 셀에 대해 기록 동작 모드 동안 동일한 기능성을 허용하도록 모든 라인상에 마찬가지로 위치됨을 주목하라.During the read operation, all VCTL0-VCTL07 and MCTL0-MCTL07 control lines are high; This allows all reference cells to be read in parallel. All VCTL0-VCTL07 control lines are high and also put a current load on each read path of the reference cell. In the read operation, the read signal 219 is also high so that the read voltage from the reference cell can be transferred to the RFL line. The eight reference voltages read from the reference cells (0-7) are passed through the reference Y-driver (0) to the RFL (0-7) signal lines, respectively, and eight read in parallel from the reference cells (8-15). The reference voltage is transmitted to the RFL 8-15 signal line through the reference Y-driver 1, respectively. In this embodiment, the voltage REREF015 (FIG. 10) is programmed to the reference cells 0-15, respectively. With the read signal on line 219 being high, transistor 211 is off and therefore no read voltage signal is transmitted to comparator input line 200. Note that transistors 110 and 93 are likewise positioned on all lines to allow the same functionality during the write mode of operation for all reference cells as occurs for memory cells of array 1 via Y-driver 41. do it.

도 8C에 도시된 기준 Y-멀티플렉서(56)에서, 각각의 MCTL신호는 3개의 일련의 트랜지스터(M1,M2,M3)를 구동한다. 이 배열은 메모리 어레이(1) 셀이 Y-멀티플렉서(55)에 선택될 때 마다 일련의 3개의 트랜지스터가 있으므로, 어레이(1)에 대해 Y-멀티플렉서(55)에 의해 제공되는 바와 같은 동일한 임피던스를 라인상에 제공한다. 이것은 메모리 어레이(1)와 기준 어레이(2)의 셀 사이에 더욱 양호한 기록 및 판독 모드 매칭 특성을 달성한다. 도 8A의 인버터(103 및 104)는 도 8B에서 제거되었다. 이것은 판독 동작에서 디지털 비트가 메모리 어레이(1)의 셀로부터 판독되고, 반면에 기준 전압레벨은 기준 어레이(2)의 셀로부터 판독되기 때문이다.In the reference Y-multiplexer 56 shown in Fig. 8C, each MCTL signal drives three series of transistors M1, M2, M3. This arrangement has the same impedance as provided by the Y-multiplexer 55 for the array 1 since there is a series of three transistors each time the memory array 1 cell is selected in the Y-multiplexer 55. Provide on line. This achieves better write and read mode matching characteristics between the cells of the memory array 1 and the reference array 2. Inverters 103 and 104 of Figure 8A have been removed from Figure 8B. This is because in the read operation, the digital bits are read from the cells of the memory array 1, while the reference voltage levels are read from the cells of the reference array 2.

도 9A는 메모리 어레이(1)에 대한 Y-드라이버(41)를 위한 Y-멀티플렉서(55)를 도시한다. Y-멀티플렉서(55)는 기준 멀티플렉서(50)와 마찬가지이다. 본 실시예에서 Y-멀티플렉서(55)는 8입력-1출력 멀티플렉서이다. 멀티플렉서의 유형은 셀 사이즈 및 Y-드라이버의 회로크기에 좌우되어 변한다.(N 내지 1) 설명된 Y-멀티플렉서에 대해, 단일 전송경로는 Y-카운터로 부터의 Y-주소 신호(M0A-M2A 및 M0B-M2B)에 좌우되어 VD0 내지 VD7인 라인중의 하나와 라인(206)사이에 연결된다. VD0 내지 VD7는 메모리 어레이(1)의 열 라인이다. 프로그램 및 소거 동작 동안, 신호는 라인(206)으로부터 라인(VD0-7) 으로 전달된다. 판독동작 동안, 신호는 라인(VD0-7) 으로부터 라인(206)으로 전달된다.9A shows a Y-multiplexer 55 for a Y-driver 41 for the memory array 1. Y-multiplexer 55 is the same as reference multiplexer 50. In this embodiment, the Y-multiplexer 55 is an 8 input-1 output multiplexer. The type of multiplexer varies depending on the cell size and the circuit size of the Y-driver. (N to 1) For the Y-multiplexer described, a single transmission path is used for the Y-address signals (M0A-M2A and M-A). It is connected between line 206 and one of the lines VD0 to VD7 depending on M0B-M2B). VD0 to VD7 are column lines of the memory array 1. During program and erase operations, a signal is transferred from line 206 to line VD0-7. During the read operation, a signal is transferred from line VD0-7 to line 206.

도 9A는 어레이(1)의 임의의 갯수에 대한 비휘발성 메모리 셀에 대한 결선을 도시한다. 본 실시예에서, 하나의 X-디코더는 어레이(1)의 4개 행을 구동하며 하나의 Y-드라이버는 8개의 열을 구동한다. 각각의 행은 본 실시예에서 블록으로 고려된다. 기타 실시예에서, 복수 행은 하나의 단일 블록을 형성할 수 있다. 단일 X-디코더에 의한 행의 선택은 상기한 바와 같이, X-카운터로부터 PA 내지 PD인 4개의 X-주소 신호를 수신하는 X-멀티플렉서(58)에 의해 수행된다. 이러한 기본 토폴로지는 어레이의 사이즈를 증대시키기 위해, 어레이의 행의 수를 증가시키도록 X-방향으로 확장되고 어레이의 열의 수를 증대시키기 위해 Y-방향으로 확장된다.9A shows the connection to a nonvolatile memory cell for any number of arrays 1. In this embodiment, one X-decoder drives four rows of the array 1 and one Y-driver drives eight columns. Each row is considered a block in this embodiment. In other embodiments, multiple rows may form one single block. The selection of rows by a single X-decoder is performed by an X-multiplexer 58 which receives four X-address signals from the X-counter, PA to PD, as described above. This basic topology is extended in the X-direction to increase the number of rows in the array and to the Y-direction to increase the number of columns in the array to increase the size of the array.

도 9A는 또한 기준 어레이(2)와 기준 멀티플렉서(56)를 도시한다. 블록 당 기준 어레이로부터 16개 기준 셀이 있다. 블록이 X-멀티플렉서(58)를 통해 선택될 때 마다, 기준 및 어레이 셀이 선택된다. MCTL0-MCTL7 라인은 기준 Y-멀티플렉서를 구동한다.9A also shows reference array 2 and reference multiplexer 56. There are 16 reference cells from the reference array per block. Each time a block is selected through the X-multiplexer 58, the reference and array cells are selected. The MCTL0-MCTL7 line drives the reference Y-multiplexer.

본 명세서에서 설명되는 실시예에 대해, 한번에 프로그래밍되는 수보다 하나의 행에 8배 이상의 셀이 있다. Y-드라이버(42 및 41)는 행에 모든 8번째 셀을 프로그래밍한다. 전체 8개 프로그래밍 사이클이 행의 모든 셀을 프로그래밍하는 데 필요로 된다. 따라서 셀 0, 8, 16...은 제 1 프로그래밍 사이클에서 프로그래밍된다. 셀 1, 9, 17...은 제 2 프로그래밍 사이클에서 프로그래밍되는 등으로 모든 셀이 프로그래밍된다. 8개 프로그래밍 사이클은 하나의 행을 프로그래밍한다. 동시에, 기준 셀(0 및 8)은 제 1 프로그래밍 사이클에서 프로그래밍된다. 기준 셀(1 및 9)은 제 2 프로그래밍 사이클에서 프로그래밍되고 8개의 프로그래밍 사이클이 모든 16개의 기준 셀에 대한 프로그래밍을 완료할 때 까지 셀에 대한 프로그래밍이 계속된다.For the embodiments described herein, there are eight times more cells in one row than the number programmed at a time. Y-drivers 42 and 41 program every eighth cell in a row. A total of eight programming cycles are needed to program all the cells in a row. Thus cells 0, 8, 16 ... are programmed in the first programming cycle. Cells 1, 9, 17 ... are programmed in the second programming cycle and so on, all the cells are programmed. Eight programming cycles program one row. At the same time, the reference cells 0 and 8 are programmed in the first programming cycle. Reference cells 1 and 9 are programmed in a second programming cycle and programming for the cell continues until eight programming cycles complete programming for all 16 reference cells.

REF Y-드라이버0 및 REF Y-드라이버1의 랫치는 제 1 프로그래밍 사이클 동안 각각 출력 0 및 출력 8에 설정되고, 제 2 프로그래밍 사이클 동안 각각 출력 1 및 출력 9에 설정되며, 이에 따라 도 3에 도시된 기준 발생 블록(44)에 의해 제공된 REFB0-15로부터 멀티플렉서의 50 출력단자에서 적절한 RFLOUT 전압을 선택하기 위해 기준 Y-드라이버(42)의 기준 멀티플렉서를 설정한다. 이러한 기록 동작 동안, 기준 Y-드라이버(42)의 랫치는 적절한 전압을 어레이(2)의 선택된 위치에서 기준 셀 내부로 프로그래밍하도록 내부적으로 설정된다. 동시에, Y-드라이버(41)의 랫치는 메모리 어레이(1)에 저장되어야 할 데이터에 의해 외부적으로 설정된다. 물론, 행에 대한 프로그래밍 사이클의 수는 Y-멀티플렉서의 비율에 좌우된다. 8:1 Y-멀티플렉서는 8개의 프로그래밍 사이클을 필요로 하는 반면에 16:1 멀티플렉서는 16 프로그래밍 사이클을 필요로 한다.The latches of REF Y-driver 0 and REF Y-driver 1 are set at output 0 and output 8 respectively during the first programming cycle, and are set at output 1 and output 9 respectively during the second programming cycle, as shown in FIG. The reference multiplexer of reference Y-driver 42 is set to select the appropriate RFLOUT voltage at 50 output terminals of the multiplexer from REFB0-15 provided by reference generation block 44. During this write operation, the latch of the reference Y-driver 42 is internally set to program the appropriate voltage into the reference cell at the selected location of the array 2. At the same time, the latch of the Y-driver 41 is set externally by the data to be stored in the memory array 1. Of course, the number of programming cycles for a row depends on the ratio of the Y-multiplexer. The 8: 1 Y-multiplexer requires eight programming cycles, while the 16: 1 multiplexer requires 16 programming cycles.

메모리 어레이로 부터의 판독 동작Read Operation from Memory Array

회로의 상세사항에서 전압 모드 판독 방법을 더욱 이해하기 위해, 도 9A를 참조한다. 본 실시예에서 어레이(1 및 2)에 공통인 소스라인은 조정된 공급전압(Vs)에 연결된다. 어레이(1 및 2)의 셀의 트랜지스터에 대한 연결은 도 9B에 도시되어 있다. 어레이(1)의 원으로 둘러쌓이고 XX로 표시된 셀은 판독되는 것으로 가정한다. X-멀티플렉서(58)는 워드라인으로 칭해지는 라인(VG2)을 통해 블록(2)을 선택한다. 워드라인은 블록의 각각의 메모리 셀의 제어 게이트에 연결된다. 선택된 워드 라인은 접지에 대해 열 라인(VD4)에서 최고 예상 전압에 대한 정확한 판독을 허용할 수 있을 만큼 충분히 높은 전압 또는 Vs인 소스에 연결된 것과 동일한 공급전압에 연결된다. Y-멀티플렉서(55)는 열 라인(VD4)을 라인(206)에 연결한다. 이제 도 8A를 참조하면, 라인(206)은 턴 온된 트랜지스터(100)를 통해 라인(200)에 연결된다. 판독 동작동안, PROG라인(204)은 로우이고 RESET 라인(202)은 하이이다. 이것은 트랜지스터(100)를 턴 온시키기 위해 하이가 되도록 트랜지스터(100)의 게이트를 강제한다. 트랜지스터(101 및 102)의 조합은 라인(200)과 접지 사이에 전류원(도 2B에 바이어스 전류회로(37)로서 표현된)을 형성한다. 라인(200)은 또한 전압비교기(51)(도 2B에 전압센스 증폭기(38)로서 표시된)의 비반전입력단에 연결된다. 트랜지스터(101)는 전류원에 대한 스위치로서 작용한다. 트랜지스터(101)는 단지 전압비교기(51)에 의한 적절한 전압비교를 달성하기 위해 짧은 주기동안 턴온된다. 전력소실과 메모리 셀 트랜지스터의 산화물층에 포획된 전하를 위한 전위는 최소화된다. 전압비교기(51)의 반전 입력단자에 연결된 RFLOUT 입력(도 2B에서 기준전압(39)으로서 표현된)은 도 5 및 도 7에 도시된 바와 같이 라인(RFL0-15)중의 하나로부터 기준 멀티플렉서(50)를 통해 선택된 바와 같은 적절한 기준 셀로부터 판독된 전압이다. 전압비교기(51)에서 비교의 결과는 판독 데이터 라인(210)(도 2B의 로직 출력으로 도시된)상에 놓인다. 판독 동작 동안, 고전압 스위치(54)는 턴 오프되고 고전압라인(209)은 고전압 트랜지스터(93)에 의해 라인(206)으로부터 분리된다.To further understand the voltage mode reading method in the details of the circuit, reference is made to FIG. 9A. In this embodiment, the source lines common to the arrays 1 and 2 are connected to the regulated supply voltage V s . Connections to the transistors of the cells of arrays 1 and 2 are shown in FIG. 9B. It is assumed that the cell surrounded by the circle of array 1 and marked XX is read. X-multiplexer 58 selects block 2 through line VG2, which is called a word line. The word line is connected to the control gate of each memory cell of the block. The selected word line is connected to the same supply voltage as well connected to the high voltage V s of the source or enough to allow the accurate reading of the highest expected voltage at the column line (VD4) with respect to the ground. Y-multiplexer 55 connects column line VD4 to line 206. Referring now to FIG. 8A, line 206 is connected to line 200 through turned on transistor 100. During the read operation, PROG line 204 is low and RESET line 202 is high. This forces the gate of transistor 100 to go high to turn on transistor 100. The combination of transistors 101 and 102 forms a current source (represented as bias current circuit 37 in FIG. 2B) between line 200 and ground. Line 200 is also connected to the non-inverting input terminal of voltage comparator 51 (indicated as voltage sense amplifier 38 in FIG. 2B). Transistor 101 acts as a switch for the current source. Transistor 101 is only turned on for a short period to achieve proper voltage comparison by voltage comparator 51. The potential for power dissipation and the charge trapped in the oxide layer of the memory cell transistor is minimized. The RFLOUT input (represented as reference voltage 39 in Fig. 2B) connected to the inverting input terminal of the voltage comparator 51 is the reference multiplexer 50 from one of the lines RFL0-15 as shown in Figs. Is the voltage read from the appropriate reference cell as selected via < RTI ID = 0.0 > The result of the comparison in the voltage comparator 51 lies on the read data line 210 (shown as the logic output of FIG. 2B). During the read operation, high voltage switch 54 is turned off and high voltage line 209 is separated from line 206 by high voltage transistor 93.

상기한 바와 같이, 블록(10)의 듀얼 시프트 레지스터는 집적회로의 디바이스 수를 감소시키기 위해 기록 및 판독 동작에 이용된다. 기록 동작 동안 듀얼 시프트 레지스터의 동작은 이미 설명되었다. 판독 동작(도 6을 참조)에서, Y-드라이버(41)의 4개의 랫치는 2진 탐색 알고리즘을 통하여 프리셋트된다. 신호(비트3,비트2,비트1,비트0)는 도 12A 및 12B에 도시된 2진 탐색 알고리즘에 따라 순차적으로 강제로 하이가 된다. 동작은 멀티레벨 듀얼 시프트 레지스터의 하나의 뱅크의 리셋트B(RESETB) 라인상의 리셋트(RESET) 펄스로 시작한다. RESET 펄스는 듀얼 시프트 레지스터의 하나의 뱅크상의 모든 랫치를 리셋트시킨다. 2진 탐색 알고리즘에 따라, 비트3 신호는 하이로 강제된다. 이것은 모든 Y-드라이버(41)에서 비트3 신호 라인에 연결된 모든 랫치(랫치0, 4, 8 등)에 대해 라인(63A)을 하이로 셋트시키고 라인(63B)를 로우로 셋트시킨다. 기준 멀티플렉서(50)의 RFL8 라인상의 전압은 각각의 Y-드라이버(41)의 RFLOUT 단자를 위해 선택된다.As noted above, the dual shift register in block 10 is used for write and read operations to reduce the number of devices in the integrated circuit. The operation of the dual shift register during the write operation has already been described. In the read operation (see FIG. 6), four latches of the Y-driver 41 are preset through a binary search algorithm. The signals (bit 3, bit 2, bit 1, bit 0) are forced to be sequentially high in accordance with the binary search algorithm shown in Figs. 12A and 12B. Operation begins with a RESET pulse on the RESETB line of one bank of a multilevel dual shift register. The RESET pulse resets all latches on one bank of the dual shift register. According to the binary search algorithm, the bit 3 signal is forced high. This sets line 63A high and sets line 63B low for all latches (Latch 0, 4, 8, etc.) connected to the bit 3 signal line in all Y-drivers 41. The voltage on the RFL8 line of the reference multiplexer 50 is selected for the RFLOUT terminal of each Y-driver 41.

동시에 이러한 판독 동작동안, RFL0-15 라인은 상기한 바와 같이, 기준 어레이(2)의 셀로부터 판독된 전압에 의해 병렬로 구동된다. 2진 탐색 알고리즘에 따라, 메모리 셀로 부터의 판독 전압이 각각의 드라이버내의 RFLOUT상의 선택된 전압 보다 높다면, 각각의 Y-드라이버(41)의 판독 데이터 라인상의 데이터 출력은 하이이다. 이것은 NAND 게이트(600)의 출력단자(601)를 로우로 강제하며(도 6을 참조), 이것은 비트3 라인에 연결된 랫치를 셋트시킨다. 랫치의 출력단자(602)에서의 신호는 라인(210)상의 데이터가 제거되는 경우에도 하이로 존재한다. 일단 랫치가 셋트되면, 심지어 라인 비트3가 강제로 로우로 되는 경우에도, 출력단자(63A 및 63B)에서의 신호는 각각 하이 및 로우로 존재한다. 만일 메모리 셀로 부터의 판독 전압이 RFLOUT 단자에서의 전압 보다 낮으면, 판독 데이터 라인(210)상의 신호는 로우이다. 이것은 NAND 게이트(600)의 출력단자에서의 신호를 하이로 유지하도록 그리고 랫치가 리셋트상태에 있도록 강제한다. 따라서, 신호 비트3가 로우로 강제되면, 랫치 출력단자(63A 및 63B)에서의 신호는 각각 로우 및 하이로 되고, 랫치의 상태는 리셋트된다. 2진 탐색 알고리즘은 비트2, 비트1 및 비트0라인을 각각 하이로 강제시키므로써 계속된다. 각각의 Y-드라이버(41)내의 RFLOUT 라인과 판독 데이터 라인(210)상의 전압에 대한 비교 동작을 행한다. 연결된 랫치는 만일 판독 데이터 라인(210)이 하이이면 셋트상태에 있거나 만일 리셋트 데이터 라인(210)이 로우이면 리셋트 상태로 남아 있다. 각각의 Y-드라이버(41)내의 랫치의 셋트 또는 리셋트 상태에 종속하여, RFL0-15 라인으로 부터의 상이한 전압이 기준 멀티플렉서(50) 입력(63A,B 내지 60A,B)(랫치의 출력)을 통해 RFLOUT 단자상에서 선택된다.At the same time during this read operation, the RFL0-15 lines are driven in parallel by the voltage read from the cells of the reference array 2, as described above. According to the binary search algorithm, if the read voltage from the memory cell is higher than the selected voltage on RFLOUT in each driver, the data output on the read data line of each Y-driver 41 is high. This forces the output terminal 601 of the NAND gate 600 low (see FIG. 6), which sets the latch connected to the bit 3 line. The signal at the output terminal 602 of the latch remains high even when data on the line 210 is removed. Once the latch is set, the signals at output terminals 63A and 63B are high and low, respectively, even if line bit 3 is forced low. If the read voltage from the memory cell is lower than the voltage at the RFLOUT terminal, the signal on read data line 210 is low. This forces the signal at the output terminal of the NAND gate 600 high and the latch is in the reset state. Therefore, when signal bit 3 is forced low, the signals at latch output terminals 63A and 63B go low and high, respectively, and the state of the latch is reset. The binary search algorithm continues by forcing the bit 2, bit 1, and bit 0 lines high, respectively. A comparison operation is performed on the voltages on the RFLOUT line and the read data line 210 in each Y-driver 41. The connected latch remains in the set state if the read data line 210 is high or remains in the reset state if the reset data line 210 is low. Depending on the set or reset state of the latches in each Y-driver 41, different voltages from the RFL0-15 line may cause the reference multiplexer 50 inputs 63A, B to 60A, B (outputs of the latches). Is selected on the RFLOUT terminal.

단일 메모리 셀로 부터의 4개 비트가 각각의 Y-드라이버내의 4개의 랫치로 순차적으로 판독된다. 만일 메모리 셀당 N개 비트가 저장되었다면, Y-드라이버(41) 당 N개 랫치 및 Y-드라이버 당 N비트가 2진 탐색 알고리즘의 N사이클에서 판독된다. 모든 M Y-드라이버는 동시에 그들의 각각의 랫치를 로딩시킨다. 듀얼 시프트 레지스터의 하나의 뱅크상의 랫치가 로딩된 후, 뱅크는 시프트 모드에 있게 되고 랫치된 데이터는 그후 직렬로 이 뱅크로부터 클로킹 아웃된다. 데이터가 시프트 아웃되는 동안, 듀얼 시프트 레지스터의 기타 뱅크는 병렬 판독 모드에 있고 기타 M 셀의 데이터는 이 뱅크의 랫치내로 판독된다. 이 뱅크가 자신의 랫치를 로딩하는 것을 완료함에 따라, 이전 뱅크는 동시에 자신의 시프팅 동작을 완료한다. 메모리 셀로 부터의 데이터의 병렬조딩 및 데이터의 질렬 시프팅에 대한 교대 동작은 매우 고속의 판독 액세스 시간을 제공한다.Four bits from a single memory cell are read sequentially into four latches in each Y-driver. If N bits per memory cell are stored, N latches per Y-driver 41 and N bits per Y-driver are read in N cycles of the binary search algorithm. All M Y-drivers simultaneously load their respective latches. After the latch on one bank of the dual shift register is loaded, the bank is in shift mode and the latched data is then clocked out of this bank in series. While the data is shifted out, the other banks of the dual shift register are in parallel read mode and the data of the other M cells are read into the latches of this bank. As this bank completes loading its latches, the previous bank simultaneously completes its shifting operation. Alternate operations for parallel joding of data from memory cells and for orderly shifting of data provide very fast read access times.

판독 동작동안, 각각의 기준 Y-드라이버(42)내의 4개 랫치의 상태는 사용되지 않는다. RFLOUT 라인은 기준 Y-드라이버(42)내에서 사용되지 않는다. 대신에, 모든 기준 셀로 부터의 판독전압은 상기 설명되고 도 8B에 도시된 바와 같이 RFL0-15 라인상에 위치된다.During the read operation, the states of the four latches in each reference Y-driver 42 are not used. The RFLOUT line is not used in the reference Y-driver 42. Instead, the read voltages from all reference cells are located on the RFL0-15 line as described above and shown in Figure 8B.

메모리 어레이로의 기록 동작Write Operation to Memory Array

기록동작을 위해, 종래기술에서 공지된 바와 같이, 프로그래밍 및 소거 알고리즘은 전형적으로 고정확도로 비휘발성 메모리 셀의 임계전압을 셋트시키기 위해 정규 판독 사이클이 뒤따르는 반복적인 고전압 펄스된 프로그램 사이클을 사용한다. 프로그래밍 알고리즘의 개시 이전에, 충분한 진폭 및 지속시간으로 된 소거 펄스가 메모리 셀의 소거를 완료하도록 인가된다. 일 소거 펄스 대신에, 몇몇 알고리즘은 소거 기능을 위해 필요한 것으로서 판독 동작이 뒤따르는 고전압 소거 펄스를 반복한다. 본 발명에서, 단일 소거 펄스가 사용되어 반복적인 고전압 펄스 프로그래밍 알고리즘이 정확히 임계전압을 셋트하기 위해 인가된다. 또한 본 실시예에서 소거 프로그래밍 및 판독은 고속 기록 및 판독 액세스 시간을 위해 블록에 기초하여 발생한다. 따라서 4배 M 디지털 비트를 나타내는 M메모리 셀은 동시에 기록되거나 판독된다.For write operations, as is known in the art, programming and erasing algorithms typically use repetitive high voltage pulsed program cycles followed by regular read cycles to set the threshold voltage of a nonvolatile memory cell with high accuracy. . Prior to the start of the programming algorithm, an erase pulse of sufficient amplitude and duration is applied to complete the erase of the memory cell. Instead of one erase pulse, some algorithms repeat the high voltage erase pulse followed by a read operation as needed for the erase function. In the present invention, a single erase pulse is used so that an iterative high voltage pulse programming algorithm is applied to accurately set the threshold voltage. Also in this embodiment erase programming and reading takes place on a block basis for fast write and read access times. Thus M memory cells representing 4 times M digital bits are written or read simultaneously.

소거 사이클이 블록의 모든 메모리 셀을 소거한 후, 프로그래밍 사이클이 수행된다. 초기에 각각의 Y-드라이버의 랫치(52)(도 8A 및 도 8B)는 리셋트(202)라인을 펄싱하므로써 리셋트된다. 그후, 반복적인 기초로 각 프로그래밍 펄스의 인가 후 판독 사이클이 수행된다. 각각의 Y-드라이버(41) 및 기준 Y-드라이버(42)내에서, 판독사이클은 메모리 셀이 기준 멀티플렉서(50)의 RFLOUT 출력에서 설정된 소망 전압 레벨에 도달하였는 지의 여부를 판정하기 위해 수행된다. 만일 라인(200)상에서 판독된 전압 레벨이 RFLOUT 레벨에 도달하지 않았다면, 랫치(52)는 리셋트상태에 있고 추가의 고전압 펄스가 메모리 셀에 가해진다. 고전압 펄스의 소스는 도 1에 도시된 고전압 셰이핑 및 제어 블록(21)이다.After the erase cycle erases all memory cells in the block, a programming cycle is performed. Initially the latch 52 (FIGS. 8A and 8B) of each Y-driver is reset by pulsing the reset 202 line. Thereafter, a read cycle is performed after the application of each programming pulse on an iterative basis. Within each Y-driver 41 and reference Y-driver 42, a read cycle is performed to determine whether the memory cell has reached the desired voltage level set at the RFLOUT output of the reference multiplexer 50. If the voltage level read on line 200 has not reached the RFLOUT level, latch 52 is in the reset state and an additional high voltage pulse is applied to the memory cell. The source of the high voltage pulse is the high voltage shaping and control block 21 shown in FIG.

임의의 반복 동안, 라인(200)상에서 판독된 전압이 RFLOUT 라인상에서의 전압 보다 높으면, 랫치(52)는 셋트되고 각각의 Y-드라이버(41)(및 기준 Y-드라이버(42))의 고전압 스위치는 턴 오프된다. 이것은 특정 Y-드라이버에 연결된 메모리 셀에 고전압 펄스의 추가 전송을 정지시킨다. 어떤 Y-드라이버가 그들의 각각의 연결된 메모리 셀에 추가의 고전압 전송을 정지하는 반면에, 기타 Y-드라이버는 적절한 판독 전압 레벨을 프로그래밍하기 위해 그들의 각각의 메모리 셀에 고전압 펄스를 전달할 수 있다. 프로그래밍 동안 이 판독 모드는 판독 데이터 라인(210)상의 출력신호가 블록(10)의 랫치에 의해 저장되지 않는 것을 제외하고, 정상 판독 모드 동안 정확히 동일 하다. 프로그래밍 및 판독 모드 동안 동일한 판독 회로의 사용은 더욱 정교하고 신뢰성있는 데이터 저장 및 검색을 제공한다.During any iteration, if the voltage read on line 200 is higher than the voltage on RFLOUT line, latch 52 is set and the high voltage switch of each Y-driver 41 (and reference Y-driver 42) Is turned off. This stops further transmission of high voltage pulses to memory cells connected to a particular Y-driver. While some Y-drivers stop sending additional high voltages to their respective connected memory cells, other Y-drivers may deliver high voltage pulses to their respective memory cells to program the appropriate read voltage level. During programming, this read mode is exactly the same during normal read mode, except that the output signal on read data line 210 is not stored by the latch of block 10. The use of the same readout circuit during programming and readout mode provides more sophisticated and reliable data storage and retrieval.

도 10은 비휘발성 메모리 어레이(1) 메모리 셀과 비휘발성 메모리 어레이(2) 메모리 셀을 위해 임계 분할 기준 레벨사이의 관계를 도시한다. 분할된 임계전압 범위는 0V 내지 Vmax로 도시되어 있다. REFA0 내지 REFA15는 비휘발성 메모리 어레이(1) 셀을 위한 임계 분할 전압이고 REFB0 내지 REFB15는 비휘발성 기준 어레이(2) 셀을 위한 임계 분할 전압이다. REFA0 내지 REFA15 레벨은 REFB0 내지 REFB15 레벨 사이의 중간에 있다. 이것은 임계레벨에 대한 정확하고 신뢰성있는 장기간의 판독 비교를 보장한다.10 shows the relationship between the threshold division reference levels for nonvolatile memory array 1 memory cells and nonvolatile memory array 2 memory cells. The divided threshold voltage range is shown from 0V to Vmax. REFA0 to REFA15 are threshold division voltages for the nonvolatile memory array 1 cells and REFB0 to REFB15 are threshold division voltages for the nonvolatile reference array 2 cells. The REFA0 through REFA15 levels are in the middle between the REFB0 through REFB15 levels. This ensures accurate and reliable long term readout of the threshold level.

도 11은 비휘발성 메모리 어레이(1) 및 비휘발성 기준 어레이(2)를 위한 임계 분할 전압 발생 블록을 위한 회로 상세사항을 도시한다. 밴드갭 전압 기준 유닛(300)은 온-칩 온도 및 파워 공급 전압원이다. 연산 증폭기(OPAMP)(301)는 고 이득, 무조건 보상 증폭기이다. 기준유닛(300)과 연산 증폭기(301)를 위한 회로는 집적회로 설계자에게 공지되어 있다. 레지스터(302 내지 318)는 도시된 바와 같이 연결된 등가 레지스터이다.FIG. 11 shows circuit details for a threshold division voltage generation block for nonvolatile memory array 1 and nonvolatile reference array 2. Bandgap voltage reference unit 300 is an on-chip temperature and power supply voltage source. The operational amplifier (OPAMP) 301 is a high gain, unconditional compensation amplifier. Circuits for the reference unit 300 and the operational amplifier 301 are known to the integrated circuit designer. Registers 302 through 318 are equivalent registers coupled as shown.

비휘발성 메모리 어레이(1)를 위한 임계분할 발생 블록은 레지스터(318)가 레지스터(317)에 병렬로 연결되지 않을 때 형성된다. 출력은 REFA0 내지 REFA15로 참조된다. 레지스터(318)가 레지스터(317)와 병렬로 연결될 때, 비휘발성 기준 어레이(2) 임계 분할 발생 블록이 형성되고 출력은 REFB0 내지 REFB15로 참조된다. 프로그래밍 알고리즘을 통해, 바람직한 실시에에서 블록 당 16개 기준 셀이 임계 분할 전압(REFB0 내지 REFB15)의 각각에 프로그램된다. 비휘발성 메모리 어레이(1)는 각각의 Y-드라이버(41)내에서 랫치의 각각의 비트에 의해 정의되는 바와 같이 REFA0 내지 REFA15 임계 분할 전압 레벨 중의 하나에 프로그램된다.The threshold division generating block for the nonvolatile memory array 1 is formed when the register 318 is not connected in parallel to the register 317. The output is referred to as REFA0 through REFA15. When the register 318 is connected in parallel with the register 317, a non-volatile reference array 2 threshold division generating block is formed and the output is referred to as REFB0 through REFB15. Through a programming algorithm, in a preferred embodiment 16 reference cells per block are programmed to each of the threshold division voltages REB0 through REFB15. The nonvolatile memory array 1 is programmed to one of the REFA0 to REFA15 threshold division voltage levels as defined by each bit of the latch in each Y-driver 41.

설명되는 실시예에서, 한 번에 프로그램될 수 있는 수 보다 8배 이상의 셀이 한 행에 있다. Y-멀티플렉서(55)는 행에 8 셀 마다 프로그래밀한다. 행의 모든 셀을 프로그래밍 완료하기 위해선 총 8개 프로그램 사이클이 요구된다. 따라서, 셀 0, 8, 16 등은 제 1 프로그램 사이클 동안 프로그램된다. 셀 1, 9, 17등은 제 2 프로그램 사이클 동안 프로그램되는 등으로 한 행에 대한 프로그래밍을 완료하기 위해 8개 프로그램 사이클이 수행된다.In the described embodiment, there are eight times more cells in a row than the number that can be programmed at one time. Y-multiplexer 55 is programmed every 8 cells in a row. A total of eight program cycles are required to program all the cells in a row. Thus, cells 0, 8, 16 and the like are programmed during the first program cycle. Cells 1, 9, 17, etc. are programmed during the second program cycle, and so on, eight program cycles are performed to complete programming for one row.

동시에, 기준 Y-멀티플렉서(56)를 통해 선택되는 바와 같이, 기준 셀(0 및 8)은 제 1 사이클 동안 두 기준 드라이버(42)를 통해 프로그램되고, 셀(1 및 9)은 제 2 사이클 동안 프로그램되는 등으로 계속된다. 기준 Y-드라이버(42)의 기준 멀티플렉서(50)를 셋트하기 위해 REFY-드라이버0 및 REFY-드라이버1의 랫치는 제 1 사이클 동안 각각 2진 값 "0" 및 "8"로 셋트되고, 제 2 사이클 동안 각각 2진 값 "1" 및 "9"로 셋트된다. 멀티플렉서(50)는 RFLOUT 출력 전압을 위해 기준 임계분할 전압 발생 블록(44)에 의해 제공된 REFB0-15 전압으로부터 적절한 전압을 선택한다. 다른 말로 하면, 기록 동작 동안, 각각의 기준 Y-드라이버(42)의 블록(10)의 랫치는 적절한 전압을 선택된 셀 위치의 기준 셀로 프로그램하기 위해 초기에 셋트되는 반면에, 메모리 어레이(1)를 위한 Y-드라이버(41)의 블록(10)의 랫치는 메모리 어레이(1)에 저장된 데이터로부터 외부적으로 셋트된다. 행 당 프로그램 사이클의 수는 Y-멀티플렉서(55 및 56)의 깊이에 좌우된다. 예를들어, 상기한 바와 같이, Y-멀티플렉서(55)를 위한 8:1 멀티플렉서는 8개 프로그램 사이클을 필요로 하는 반면에, 16:1 멀티플렉서는 전체 행에 대한 프로그래밍을 완료하기 위해 16개 프로그램 사이클을 필요로 한다.At the same time, as selected through the reference Y-multiplexer 56, the reference cells 0 and 8 are programmed through two reference drivers 42 during the first cycle, and the cells 1 and 9 during the second cycle. Being programmed and so on. The latches of REFY-driver0 and REFY-driver1 are set to binary values "0" and "8" for the first cycle, respectively, to set the reference multiplexer 50 of the reference Y-driver 42, and the second It is set to binary values "1" and "9", respectively, during the cycle. Multiplexer 50 selects an appropriate voltage from the REFB0-15 voltage provided by reference threshold division voltage generation block 44 for the RFLOUT output voltage. In other words, during the write operation, the latch of block 10 of each reference Y-driver 42 is initially set to program the appropriate voltage to the reference cell at the selected cell location, while the memory array 1 is turned on. The latch of the block 10 of the Y-driver 41 for is set externally from the data stored in the memory array 1. The number of program cycles per row depends on the depth of the Y-multiplexers 55 and 56. For example, as described above, an 8: 1 multiplexer for the Y-multiplexer 55 requires eight program cycles, while a 16: 1 multiplexer requires 16 programs to complete programming for the entire row. Requires a cycle.

본 발명에 대한 다양하고 바람직한 대안 실시예가 상세히 개시된 반면에, 본 발명은 상기한 실시예에 대해 적절한 수정을 가하므로써 동일하게 응용가능함이 명백하다. 그러므로, 상기 설명은 첨부된 청구항의 범위에 의해 정의된 본 발명의 범위를 제한하는 것으로 여겨져서는 안된다.While various preferred embodiments of the invention have been disclosed in detail, it is evident that the invention is equally applicable by making appropriate modifications to the above embodiments. Therefore, the above description should not be taken as limiting the scope of the invention as defined by the appended claims.

Claims (20)

정보의 복수 비트를 저장할 수 있는 각각의 메모리 셀의 어레이와 적어도 하나의 데이터 단자를 갖는 집적회로에 있어서,An integrated circuit having an array of each memory cell capable of storing a plurality of bits of information and at least one data terminal, 상기 메모리 셀의 어레이에 연결되고, 제 1 뱅크 및 제 2 뱅크를 구성하는 복수 개의 랫치; 및A plurality of latches connected to the array of memory cells and constituting a first bank and a second bank; And 교대로, 상기 제 1 뱅크를 상기 메모리 셀의 어레이에 연결하고 상기 제 2 뱅크를 상기 하나의 데이터 단자에 연결하고, 제 2 뱅크를 상기 메모리 셀의 어레이에 연결하고 상기 제 1 뱅크를 상기 하나의 데이터 단자에 연결하므로써 고속 판독 및 기록 동작을 위해 데이터가 동시에 하나의 랫치 뱅크와 상기 메모리 셀의 어레이간 및 다른 랫치 뱅크와 상기 데이터 단자간에 전송되고, 각각의 랫치 뱅크를 상기 어레이의 메모리 셀 블록에 연결시키는 제어수단을 포함하며, 상기 메모리 셀 블록은 M 메모리 셀을 가지며, 각각의 랫치 뱅크는 N X M 메모리 셀을 가지며, N 랫치는 각각의 메모리 셀에 연결되는 것을 특징으로 하는 집적회로.Alternately, connect the first bank to the array of memory cells, the second bank to the one data terminal, connect a second bank to the array of memory cells, and connect the first bank to the one By connecting to data terminals, data is simultaneously transferred between one latch bank and the array of memory cells and between the other latch bank and the data terminals for high-speed read and write operations, and each latch bank to a memory cell block of the array. And control means for coupling, said memory cell block having M memory cells, each latch bank having NXM memory cells, and N latches being connected to each memory cell. 제 1 항에 있어서, 상기 제어수단은 랫치 뱅크를 상기 데이터 단자에 직렬로 연결하고,The method of claim 1, wherein the control means is connected in series with a latch bank to the data terminal, 기록동작 동안, 상기 제어수단은 교대로 하나의 랫치 뱅크로부터 상기 메모리 셀 블록으로 데이터를 병렬전송시키기 위해 상기 랫치 뱅크를 상기 메모리 셀 블록과 연결시키고, 상기 데이터 단자로부터 다른 랫치 뱅크로 데이터를 직렬전송하기 위해 상기 다른 랫치 뱅크를 상기 데이터 단자에 연결시키며,During a write operation, the control means alternately connects the latch bank with the memory cell block to parallel transfer data from one latch bank to the memory cell block, and serially transfers data from the data terminal to the other latch bank. To connect the other latch bank to the data terminal, 판독동작 동안, 상기 제어수단은 교대로 상기 메모리 셀 블록으로부터 하나의 랫치 뱅크로 데이터를 병렬전송시키기 위해 상기 하나의 랫치 뱅크를 상기 메모리 셀 블록과 연결시키고, 다른 랫치 뱅크로부터 상기 데이터 단자로 데이터를 직렬 전송하기 위해 상기 다른 랫치 뱅크를 상기 데이터 단자에 연결시키는 것을 특징으로 하는 집적회로.During a read operation, the control means alternately connects one latch bank with the memory cell block to parallel transfer data from the memory cell block to one latch bank, and transfers data from the other latch bank to the data terminal. And connect the other latch bank to the data terminal for serial transmission. 제 1 항에 있어서, 제 1 및 제 2 데이터 단자를 더 포함하며,2. The apparatus of claim 1, further comprising first and second data terminals, 기록동작 동안, 상기 제어수단은 교대로 하나의 랫치 뱅크로부터 상기 메모리 셀 블록으로 데이터를 병렬 전송시키기 위해 상기 하나의 랫치 뱅크를 상기 메모리 셀 블록으로 연결시키고, 상기 제 1 데이터 단자로부터 다른 랫치 뱅크로 데이터를 직렬전송하기 위해 상기 다른 랫치 뱅크를 상기 제 1 데이터 단자에 연결시키며,During a write operation, the control means alternately connect the one latch bank to the memory cell block to transfer data in parallel from one latch bank to the memory cell block, and from the first data terminal to the other latch bank. Connect the other latch bank to the first data terminal for serial transmission of data; 판독동작 동안, 상기 제어수단은 교대로 상기 메모리 셀 블록으로부터 하나의 랫치 뱅크로 데이터를 병렬 전송시키기 위해 상기 하나의 랫치 뱅크를 상기 메모리 셀 블록과 연결시키고, 다른 랫치 뱅크로부터 상기 제 2 데이터 단자로 데이터를 직렬전송하기 위해 상기 다른 랫치 뱅크를 상기 제 2 데이터 단자에 연결시키는 것을 특징으로 하는 집적회로.During a read operation, the control means alternately connects the one latch bank with the memory cell block to parallel transfer data from the memory cell block to one latch bank, and from the other latch bank to the second data terminal. And connect the other latch bank to the second data terminal for serial transmission of data. 복수개 비트를 저장하고 제 1 및 제 2 단자를 갖는 각각의 메모리 셀의 어레이와 제어단자를 갖는 집적회로의 상기 복수개 비트를 판독하는 회로에 있어서,A circuit for storing a plurality of bits and reading the plurality of bits of an integrated circuit having a control terminal and an array of respective memory cells having first and second terminals, 상기 선택된 메모리 셀에 저장된 복수개 비트와 무관하게 선택된 메모리 셀을 통해 바이어스 전류를 발생시키는 바이어스 전류 기준회로;A bias current reference circuit for generating a bias current through the selected memory cell irrespective of the plurality of bits stored in the selected memory cell; 상기 어레이의 상기 선택된 메모리 셀을 상기 바이어스 전류 기준회로에 연결시키기 위해 주소신호에 응답하는 멀티플렉서 회로; 및A multiplexer circuit responsive to an address signal to couple the selected memory cell of the array to the bias current reference circuit; And 상기 선택된 메모리 셀의 상기 제 2 단자와 상기 바이어스 전류 기준회로 사이의 노드에 연결되고, 상기 메모리 셀에 저장된 비트를 결정하기 위해 상기 바이어스 전류에 대한 상기 선택된 메모리 셀에 저장된 상기 복수개 비트에 유일하게 대응하는 상기 노드에서의 전압과 기준 전압을 비교하기 위해 상기 기준 전압에 추가로 연결되는 전압 비교기 회로를 포함하는 것을 특징으로 하는 회로.A node coupled to the node between the second terminal of the selected memory cell and the bias current reference circuit and uniquely corresponding to the plurality of bits stored in the selected memory cell for the bias current to determine a bit stored in the memory cell And a voltage comparator circuit further coupled to said reference voltage for comparing a voltage at said node with a reference voltage. 제 4 항에 있어서,The method of claim 4, wherein 상기 선택된 메모리 회로에 저장된 복수개 비트를 결정하기 위해 순서화된 시퀀스로 상기 기준 전압을 순차적으로 변경시키는 수단 및Means for sequentially changing the reference voltage in an ordered sequence to determine a plurality of bits stored in the selected memory circuit; 복수 개의 기준 전압을 저장하는 복수 개의 메모리 셀을 갖는 제 2 메모리 어레이를 포함하며, 상기 순차적으로 변경시키는 수단은 상기 제 2 메모리 어레이의 선택된 메모리 셀을 상기 순서화된 시퀀스로 상기 전압 비교기에 연결시키는 것을 특징으로 하는 회로.And a second memory array having a plurality of memory cells storing a plurality of reference voltages, wherein said means for sequentially changing connects selected memory cells of said second memory array to said voltage comparator in said ordered sequence. Characterized by a circuit. 메모리 셀 어레이를 갖는 집적회로에서 복수개 비트에 대응하는 선택된 메모리 셀에 전하량을 프로그래밍하는 회로에 있어서,A circuit for programming an amount of charge in a selected memory cell corresponding to a plurality of bits in an integrated circuit having a memory cell array, comprising: 메모리 셀을 프로그래밍하기 위해 고전압을 발생시키는 고전압 회로;A high voltage circuit for generating a high voltage to program a memory cell; 바이어스 전류 기준회로;Bias current reference circuit; 선택된 메모리 셀에 저장된 복수개 비트와 무관하게 상기 선택된 메모리 셀을 통해 바이어스 전류를 발생시키는 상기 바이어스 전류 기준회로에 상기 선택된 메모리 셀을 연결시키는 멀티플렉서 회로;A multiplexer circuit for coupling the selected memory cell to the bias current reference circuit for generating a bias current through the selected memory cell irrespective of a plurality of bits stored in the selected memory cell; 상기 바이어스 전류를 위해 상기 선택된 메모리 셀에 저장된 상기 전하량에 유일하게 대응하는 상기 선택된 메모리 셀과 상기 바이어스 전류 기준회로사이에 있는 노드에서의 전압을 결정하기 위해 상기 노드에 연결된 전압 비교기; 및A voltage comparator coupled to the node for determining a voltage at a node between the selected memory cell and the bias current reference circuit that uniquely corresponds to the amount of charge stored in the selected memory cell for the bias current; And 상기 고전압 회로와 상기 전압 비교기에 연결되고, 상기 선택된 메모리 셀에 저장된 상기 전하량에 대응하는 상기 전압이 상기 기준 전압과 매칭할 때 까지 상기 선택된 메모리 셀을 프로그래밍하기 위해 상기 고전압 회로를 인게이징하는 상기 전압 비교기에 응답하는 프로그래밍회로를 포함하는 것을 특징으로 하는 회로.The voltage coupled to the high voltage circuit and the voltage comparator and engaging the high voltage circuit to program the selected memory cell until the voltage corresponding to the amount of charge stored in the selected memory cell matches the reference voltage. And a programming circuit responsive to the comparator. 정보의 복수개 비트를 저장할 수 있는 각각의 메모리 셀의 어레이와, 상기 메모리 셀의 어레이에 연결되고 제 1 및 제 2 뱅크를 구성하는 복수 개의 랫치와, 적어도 하나의 데이터 단자를 가지는 집적회로를 동작시키는 방법에 있어서,Operating an integrated circuit having an array of respective memory cells capable of storing a plurality of bits of information, a plurality of latches connected to the array of memory cells and forming first and second banks, and at least one data terminal; In the method, 교대로, 상기 제 1 뱅크를 상기 메모리 셀의 어레이에 연결시키고 상기 제 2 뱅크를 상기 제 1 데이터 단자에 연결시키고, 상기 제 2 뱅크를 상기 메모리 셀의 어레이에 연결시키고 상기 제 1 뱅크를 상기 제 1 데이터 단자에 연결시키는 단계인데, 각각의 랫치 뱅크는 상기 어레이의 메모리 셀 블록에 연결되고, 상기 메모리 셀 블록은 M 메모리 셀을 가지고, 상기 각각의 랫치 뱅크는 N X M 메모리 셀을 가지고, N 랫치는 각각의 메모리 셀에 연결되며; 및Alternatively, the first bank is connected to the array of memory cells, the second bank is connected to the first data terminal, the second bank is connected to the array of memory cells, and the first bank is connected to the first bank. Connecting to one data terminal, each latch bank connected to a memory cell block of the array, the memory cell block having M memory cells, each latch bank having NXM memory cells, and N latch Is connected to each memory cell; And 고속 판독 및 기록을 위해 데이터를 동시에 하나의 랫치 뱅크와 상기 메모리 셀 어레이간 및 다른 랫치 뱅크와 상기 데이터 단자 사이에 전송하는 단계를 포함하는 것을 특징으로 하는 방법.And simultaneously transferring data between one latch bank and said memory cell array and between another latch bank and said data terminal for high speed read and write. 제 7 항에 있어서, 상기 연결시키는 단계는,The method of claim 7, wherein the connecting step, 랫치의 뱅크가 상기 데이터 단자에 직렬로 연결되고;A bank of latches is connected in series with the data terminal; 기록 동작 동안, 하나의 랫치 뱅크는 상기 랫치 뱅크로부터 상기 메모리 셀 블록으로 데이터를 병렬전송 하기 위해 교대로 상기 메모리 셀 블록에 연결되고, 다른 랫치 뱅크는 상기 데이터 단자로부터 상기 다른 랫치 뱅크로 데이터를 직렬 전송하기 위해 교대로 상기 데이터 단자에 연결되며; 및During a write operation, one latch bank is alternately connected to the memory cell block to parallel transfer data from the latch bank to the memory cell block, and another latch bank serializes data from the data terminal to the other latch bank. Alternately connected to the data terminal for transmission; And 판독 동작 동안, 하나의 랫치 뱅크는 상기 메모리 셀 블록으로부터 상기 랫치 뱅크로 데이터를 병렬전송 하기 위해 교대로 상기 메모리 셀 블록에 연결되고, 다른 랫치 뱅크는 상기 다른 랫치 뱅크로부터 상기 데이터 단자로 데이터를 직렬 전송하기 위해 교대로 상기 데이터 단자에 연결되는 것을 특징으로 하는 방법.During a read operation, one latch bank is alternately connected to the memory cell block to parallel transfer data from the memory cell block to the latch bank, and another latch bank serializes data from the other latch bank to the data terminal. Alternately connected to the data terminals for transmission. 제 1 및 제 2 단자와 제어단자를 가지며 복수개 비트를 저장하는 각각의 메모리 셀의 어레이를 갖는 집적회로의 상기 메모리 셀의 복수개 비트를 판독하는 방법에 있어서,A method of reading a plurality of bits of said memory cells of an integrated circuit having first and second terminals and a control terminal and an array of respective memory cells storing a plurality of bits, the method comprising: 상기 메모리 샐의 상기 제 1 단자를 제 1 전압원에 연결시키는 단계;Coupling the first terminal of the memory cell to a first voltage source; 상기 제 2 단자를 상기 제 1 단자에 전기적으로 연결시키기 위해 상기 메모리 셀의 상기 제어단자를 전압원에 연결시키는 단계;Coupling the control terminal of the memory cell to a voltage source to electrically connect the second terminal to the first terminal; 상기 제 2 단자와 상기 선택된 메모리 셀을 통해 상기 선택된 메모리 셀에 저장된 복수개 비트와 무관하게 일정한 바이어스 전류를 발생시키는 바이어스 전류 회로에 상기 제 2 단자를 연결시키는 단계; 및Coupling the second terminal through the second terminal and the selected memory cell to a bias current circuit that generates a constant bias current independent of a plurality of bits stored in the selected memory cell; And 상기 바이어스 전류를 위해 상기 선택된 메모리 셀에 저장된 상기 복수개 비트에 유일하게 대응하는 소정 기준 전압에 대해 상기 제 2 단자에서의 전압을 감지하고 상기 제 2 단자에서의 상기 감지된 전압에 대응하는 디지털 출력을 발생시키는 회로에 상기 제 2 단자를 연결시키는 단계를 포함하는 것을 특징으로 하는 방법.Sense a voltage at the second terminal for a predetermined reference voltage uniquely corresponding to the plurality of bits stored in the selected memory cell for the bias current and output a digital output corresponding to the sensed voltage at the second terminal. Coupling the second terminal to a generating circuit. 각각의 메모리 셀에 저장된 논리상태를 지시하는 전하량을 유지할 수 있는 부동 게이트를 갖는 상기 각각의 메모리 셀의 어레이를 갖는 집적회로의 상기 어레이로부터 선택된 메모리 셀을 판독하는 방법에 있어서,A method of reading a selected memory cell from said array of integrated circuits having said array of each memory cell having a floating gate capable of holding a charge amount indicative of a logic state stored in each memory cell, the method comprising: 바이어스 전류가 상기 메모리 셀 부동 게이트상의 상기 전하량에 무관하게 상기 메모리 셀을 통해 발생되도록 그리고 메모리 셀 단자에서의 전압이 바이어스 전류를 위해 상기 메모리 셀 부동 게이트상의 상기 전하량에 유일하게 대응하도록 상기 메모리 셀을 상기 메모리 셀의 단자에 의해 바이어스 전류 기준회로에 연결시키므로써 상기 메모리 셀의 부동 게이트상의 상기 전하량에 응답하는 메모리 셀 전압을 발생시키는 단계; 및The memory cell so that a bias current is generated through the memory cell independent of the amount of charge on the memory cell floating gate and the voltage at a memory cell terminal uniquely corresponds to the amount of charge on the memory cell floating gate for bias current. Generating a memory cell voltage responsive to the amount of charge on the floating gate of the memory cell by connecting to a bias current reference circuit by a terminal of the memory cell; And 상기 메모리 셀 전압을 복수 개의 기준전압의 하나에 대해 순차적으로 비교하는 단계를 포함하며, 순차적으로 비교하는 단계의 각각은 상기 메모리 셀에 저장된 상기 전하량에 응답하는 복수개 비트를 결정하기 위해 하나의 비트를 결정하는 것을 특징으로 하는 방법.Sequentially comparing the memory cell voltages with respect to one of a plurality of reference voltages, wherein each of the sequentially comparing steps includes one bit to determine a plurality of bits responsive to the amount of charge stored in the memory cell. Determining. 제 10 항에 있어서, 상기 순차적으로 비교하는 단계는 상기 메모리 셀을 위한 4 비트를 결정하기 위해 상기 메모리 셀 전압을 4개 기준 전압에 순차적으로 비교하는 단계를 포함하는 것을 특징으로 하는 방법.11. The method of claim 10, wherein said sequentially comparing comprises sequentially comparing said memory cell voltages to four reference voltages to determine four bits for said memory cells. 각각의 메모리 셀에 저장된 복수개 비트를 지시하는 전하량을 유지할 수 있는 부동 게이트를 갖는 상기 각각의 메모리 셀의 어레이를 갖는 집적회로의 상기 어레이로부터 선택된 메모리 셀에 기록하는 방법에 있어서,A method of writing to a memory cell selected from said array of integrated circuits having said array of each memory cell having a floating gate capable of holding a charge amount indicative of a plurality of bits stored in each memory cell. 상기 선택된 메모리 셀에 저장되어야 할 다수 비트를 나타내는 복수개 비트를 수신하는 단계;Receiving a plurality of bits representing a plurality of bits to be stored in the selected memory cell; 상기 메모리 셀의 부동 게이트상의 전하량에 응답하여 메모리 셀 전압을 발생시키는 단계;Generating a memory cell voltage in response to an amount of charge on the floating gate of the memory cell; 상기 집적회로의 복수개 기준 전압을 발생시키는 단계;Generating a plurality of reference voltages of the integrated circuit; 상기 메모리 셀의 전압이 상기 복수개 비트에 대응하는 복수개 기준 전압중의 하나의 기준 전압과 매칭하도록 상기 메모리 셀의 부동 게이트를 프로그래밍하는 단계를 포함하며, 상기 프로그래밍하는 단계는,Programming the floating gate of the memory cell such that the voltage of the memory cell matches one of the plurality of reference voltages corresponding to the plurality of bits, wherein the programming comprises: 상기 메모리 셀의 부동 게이트로부터 임의의 전하를 소거시키는 과정;Erasing any charge from the floating gate of the memory cell; 상기 부동 게이트를 고전압 펄스에 종속시키는 과정;Subjecting the floating gate to a high voltage pulse; 상기 선택된 메모리 셀의 부동 게이트상의 전하량과 무관하게 상 기 선택된 메모리 셀을 통해 바이어스 전류를 발생시키므로써 상기 메모 리 셀 전압을 결정하는 과정인데, 상기 메모리 셀 전압은 상기 바이어 스 전류를 위해 상기 선택된 메모리 셀의 부동 게이트상의 전하량에 유 일하게 대응하며;The memory cell voltage is determined by generating a bias current through the selected memory cell irrespective of the amount of charge on the floating gate of the selected memory cell, wherein the memory cell voltage is the selected memory for the bias current. Uniquely corresponds to the amount of charge on the floating gate of the cell; 상기 메모리 셀 전압과 상기 하나의 기준 전압을 비교하는 과정; 및Comparing the memory cell voltage with the one reference voltage; And 상기 메모리 셀 전압이 상기 하나의 기준전압과 맷치될 때 까지 상기 종속시키는 과정, 결정하는 과정 및 비교하는 과정을 반복하는 과정 을 포함하는 것을 특징으로 하는 방법.Repeating the step of determining, determining, and comparing until the memory cell voltage is matched with the one reference voltage. 기준 메모리 셀과 데이터 메모리 셀을 갖는 각각의 블록을 구성하며, 복수개 비트에 대응하는 전압을 유지할 수 있는 각각의 메모리 셀의 어레이;An array of memory cells each constituting a block having a reference memory cell and a data memory cell, the array of memory cells capable of holding voltages corresponding to a plurality of bits; 제 1 및 제 2 기준 전압 레벨 셋트를 발생시키는 전압 발생회로;A voltage generator circuit for generating a first and second reference voltage level sets; 동시에 상기 제 1 기준전압 레벨 셋트에 대해 상기 데이터 메모리 셀의 전압을 셋팅시키고 상기 기준 메모리 셀의 상기 제 2 기준전압 레벨 셋트를 셋팅하는 프로그래밍회로인데, 상기 데이터 메모리 셀의 전압은 데이터 비트에 대응하고; 및A programming circuit that simultaneously sets the voltage of the data memory cell for the first reference voltage level set and the second reference voltage level set of the reference memory cell, the voltage of the data memory cell corresponding to a data bit and ; And 상기 데이터 메모리 셀의 상기 셋팅된 전압에 대응하는 데이터 비트를 결정하기 위해 상기 기준 메모리 셀의 상기 제 2 기준 전압 레벨 셋트에 대해 상기 데이터 메모리 셀에 셋팅된 전압을 비교하는 판독회로를 포함하는 것을 특징으로 하는 집적회로.And a readout circuit for comparing the voltage set in the data memory cell against the second reference voltage level set in the reference memory cell to determine a data bit corresponding to the set voltage of the data memory cell. Integrated circuit. 기준 메모리 셀과 데이터 메모리 셀을 갖는 각각의 블록을 구성하며, 복수개 비트에 대응하는 전압을 유지할 수 있는 각각의 메모리 셀의 어레이;An array of memory cells each constituting a block having a reference memory cell and a data memory cell, the array of memory cells capable of holding voltages corresponding to a plurality of bits; 기준 전압 레벨 셋트를 발생시키는 전압 발생회로;A voltage generation circuit for generating a reference voltage level set; 상기 기준 메모리 셀에 상기 기준 전압레벨 셋트를 셋팅시키고 상기 기준 전압 레벨 셋트에 대해 상기 데이터 메모리 셀에 전압을 셋팅시키는 프로그래밍회로인데, 상기 데이터 메모리 셀에 셋팅된 전압은 데이터 비트에 대응하고; 및A programming circuit for setting the reference voltage level set in the reference memory cell and setting a voltage in the data memory cell with respect to the reference voltage level set, wherein the voltage set in the data memory cell corresponds to a data bit; And 상기 데이터 메모리 셀의 상기 셋팅된 전압에 대응하는 데이터 비트를 결정하기 위해 상기 기준 메모리 셀의 상기 기준 전압 레벨 셋트에 대해 상기 데이터 메모리 셀에 셋팅된 전압을 비교하는 판독회로를 포함하는 것을 특징으로 하는 집적회로.And a read circuit for comparing a voltage set in said data memory cell against said reference voltage level set in said reference memory cell to determine a data bit corresponding to said set voltage in said data memory cell. Integrated circuits. 기준 메모리 셀과 데이터 메모리 셀을 가지며 복수개 비트에 대응하는 전압을 유지할 수 있는 각각의 메모리 셀의 어레이를 갖는 집적회로의 동작방법에 있어서,A method of operating an integrated circuit having an array of memory cells each having a reference memory cell and a data memory cell and capable of maintaining a voltage corresponding to a plurality of bits, 복수개 데이터 비트를 수신하는 단계;Receiving a plurality of data bits; 제 1 기준 전압 레벨 셋트를 참조하여 상기 데이터 메모리 셀의 전압을 프로그래밍하는 단계인데, 각각의 전압은 복수개 데이터 비트에 대응하며;Programming a voltage of the data memory cell with reference to a first reference voltage level set, each voltage corresponding to a plurality of data bits; 동시에 상기 기준 메모리 셀의 제 2 기준 전압레벨 셋트를 프로그래밍하는 단계; 및Simultaneously programming a second reference voltage level set of said reference memory cell; And 상기 데이터 메모리 셀에 프로그래밍된 상기 전압에 대응하여 데이터 비트를 결정하기 위해 상기 기준 메모리 셀의 상기 제 2 기준 전압레벨 셋트에 대해 상기 데이터 메모리 셀에 프로그래밍된 전압을 비교하는 과정을 포함하는 것을 특징으로 하는 방법.Comparing the voltage programmed in the data memory cell against the second reference voltage level set in the reference memory cell to determine a data bit corresponding to the voltage programmed in the data memory cell. How to. 제 15 항에 있어서,The method of claim 15, 상기 전압을 프로그래밍하는 단계는 동시에 상기 어레이의 소정 유닛의 모든 상기 데이터 메모리 셀의 전압과 상기 유닛의 모든 상기 기준 메모리 셀의 상기 기준 전압 레벨 셋트를 프로그래밍하는 과정을 포함하며;Programming said voltage simultaneously programming the voltage of all said data memory cells of a given unit of said array and said reference voltage level set of all said reference memory cells of said unit; 상기 비교하는 단계는 동시에 상기 유닛의 모든 상기 데이터 메모리 셀의 전압을 상기 유닛의 모든 상기 기준 메모리 셀의 상기 기준 전압 레벨 셋트에 대해 비교하는 단계를 포함하는 것을 특징으로 하는 방법.And said comparing step comprises simultaneously comparing the voltages of all said data memory cells of said unit against said reference voltage level set of all said reference memory cells of said unit. 기준 메모리 셀과 데이터 메모리 셀을 가지며, 복수개 비트에 대응하는 전압을 유지할 수 있는 각각의 메모리 셀의 어레이를 갖는 집적회로의 동작방법에 있어서,A method of operating an integrated circuit having a reference memory cell and a data memory cell and having an array of memory cells each capable of maintaining a voltage corresponding to a plurality of bits, 복수개 데이터 비트를 수신하는 단계;Receiving a plurality of data bits; 상기 기준 메모리 셀의 기준 전압 레벨 셋트를 프로그래밍하는 단계;Programming a reference voltage level set of the reference memory cell; 상기 기준 전압 레벨 셋트를 참조하여 상기 데이터 메모리 셀의 전압을 프로그래밍하는 단계인데, 각각의 전압은 복수개 데이터 비트에 대응하며; 및Programming a voltage of the data memory cell with reference to the reference voltage level set, each voltage corresponding to a plurality of data bits; And 상기 데이터 메모리 셀에 프로그래밍된 상기 전압에 대응하여 데이터 비트를 결정하기 위해 상기 기준 메모리 셀의 상기 제 2 기준 전압 레벨 셋트에 대해 상기 데이터 메모리 셀에 프로그래밍된 전압을 비교하는 단계를 포함하는 것을 특징으로 하는 방법.Comparing the voltage programmed in the data memory cell against the second reference voltage level set in the reference memory cell to determine a data bit corresponding to the voltage programmed in the data memory cell. How to. 제 17 항에 있어서,The method of claim 17, 상기 전압을 프로그래밍하는 단계는 동시에 상기 어레이의 소정 유닛의 모든 상기 데이터 메모리 셀의 전압과 상기 유닛의 모든 상기 기준 메모리 셀의 상기 기준 전압 레벨 셋트를 프로그래밍하는 과정을 포함하며,Programming said voltage simultaneously programming the voltage of all said data memory cells of a given unit of said array and said reference voltage level set of all said reference memory cells of said unit, 상기 비교하는 단계는 동시에 상기 유닛의 모든 상기 데이터 메모리 셀의 전압을 상기 유닛의 모든 상기 기준 메모리 셀의 상기 기준 전압 레벨 셋트에 대해 비교하는 과정을 포함하는 것을 특징으로 하는 방법.And the comparing step comprises simultaneously comparing the voltages of all the data memory cells of the unit with respect to the reference voltage level set of all the reference memory cells of the unit. 기준 메모리 셀과 데이터 메모리 셀을 갖는 각각의 블록을 구성하며, 복수개 비트에 대응하는 전압을 유지할 수 있는 각각의 메모리 셀의 어레이;An array of memory cells each constituting a block having a reference memory cell and a data memory cell, the array of memory cells capable of holding voltages corresponding to a plurality of bits; 제 1 및 제 2 기준 전압 레벨 셋트를 발생시키는 전압 발생회로;A voltage generator circuit for generating a first and second reference voltage level sets; 동시에 상기 데이터 메모리 셀의 상기 제 1 기준전압 레벨 셋트에 대해 데이터 비트에 대응하는 전압을 셋팅시키고 상기 기준 메모리 셀의 상기 제 2 기준전압 레벨 셋트를 셋팅하는 프로그래밍회로; 및Programming circuitry for simultaneously setting a voltage corresponding to a data bit for said first reference voltage level set in said data memory cell and setting said second reference voltage level set in said reference memory cell; And 선택적으로 상기 데이터 메모리 셀에 저장된 전압을, 상기 데이터 메모리 셀의 상기 셋팅된 전압에 대응하는 데이터 비트를 결정하기 위해 상기 기준 메모리 셀의 상기 제 2 기준 전압 레벨 셋트에 대해 비교하고, 상기 데이터 메모리 셀의 상기 제 1 기준 전압 레벨 셋트에 대해 전압을 셋팅하기 위해 상기 프로그래밍회로로 동작시키도록 상기 제 1 기준 전압 레벨 셋트에 대해 비교하는 판독회로를 포함하는 것을 특징으로 하는 집적회로.Optionally comparing the voltage stored in the data memory cell to the second reference voltage level set of the reference memory cell to determine a data bit corresponding to the set voltage of the data memory cell, the data memory cell And a readout circuit for comparing with said first reference voltage level set to operate with said programming circuit to set a voltage for said first reference voltage level set of the < Desc / Clms Page number 12 > 기준 메모리 셀과 데이터 메모리 셀을 가지는 각각의 블록을 구성하며, 복수개 비트에 대응하는 전압을 유지할 수 있는 각각의 메모리 셀의 어레이;An array of each memory cell constituting each block having a reference memory cell and a data memory cell, the respective memory cells being capable of holding voltages corresponding to a plurality of bits; 기준 전압 레벨 셋트를 발생시키는 전압 발생회로;A voltage generation circuit for generating a reference voltage level set; 상기 기준 메모리 셀의 상기 기준 전압레벨 셋트를 셋팅시키고, 상기 데이터 메모리 셀의 상기 기준 전압 레벨 셋트에 대해 전압을 셋팅시키는 프로그래밍회로인데, 상기 전압은 데이터 비트에 대응하고; 및A programming circuit for setting the reference voltage level set of the reference memory cell and setting a voltage for the reference voltage level set of the data memory cell, the voltage corresponding to a data bit; And 상기 데이터 메모리 셀의 상기 셋팅된 전압에 대응하는 데이터 비트를 결정하기 위해 그리고 상기 데이터 메모리 셀의 상기 기준 전압레벨 셋트에 대해 전압을 셋팅시키기 위해 상기 프로그래밍회로로 동작하도록 상기 기준 메모리 셀의 상기 기준 전압 레벨 셋트에 대해 상기 데이터 메모리 셀에 셋팅된 전압을 선택적으로 비교하는 판독회로를 포함하는 것을 특징으로 하는 집적회로.The reference voltage of the reference memory cell to operate with the programming circuit to determine a data bit corresponding to the set voltage of the data memory cell and to set a voltage with respect to the reference voltage level set of the data memory cell. And a read circuit for selectively comparing the voltage set in said data memory cell with respect to a level set.
KR1019980702523A 1995-10-06 1996-10-03 Integrated circuit for storage and retrieval of multiple digital bits per nonvolatile memory cell Expired - Lifetime KR100303549B1 (en)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US8/540117 1995-10-06
US08/540,117 US5687114A (en) 1995-10-06 1995-10-06 Integrated circuit for storage and retrieval of multiple digital bits per nonvolatile memory cell
US08/540117 1995-10-06
PCT/US1996/015924 WO1997013250A1 (en) 1995-10-06 1996-10-03 Integrated circuit for storage and retrieval of multiple digital bits per nonvolatile memory cell

Publications (2)

Publication Number Publication Date
KR19990064045A true KR19990064045A (en) 1999-07-26
KR100303549B1 KR100303549B1 (en) 2001-09-29

Family

ID=24154077

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019980702523A Expired - Lifetime KR100303549B1 (en) 1995-10-06 1996-10-03 Integrated circuit for storage and retrieval of multiple digital bits per nonvolatile memory cell

Country Status (9)

Country Link
US (3) US5687114A (en)
EP (3) EP1246193A3 (en)
JP (1) JPH11507464A (en)
KR (1) KR100303549B1 (en)
CN (1) CN1146918C (en)
AT (1) ATE230152T1 (en)
DE (1) DE69625494T2 (en)
TW (1) TW303466B (en)
WO (1) WO1997013250A1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100942870B1 (en) * 2005-07-04 2010-02-17 마이크론 테크놀로지, 인크. Low power multiple bit sense amplifier

Families Citing this family (172)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7447069B1 (en) 1989-04-13 2008-11-04 Sandisk Corporation Flash EEprom system
DE69034227T2 (en) * 1989-04-13 2007-05-03 Sandisk Corp., Sunnyvale EEprom system with block deletion
US7071060B1 (en) 1996-02-28 2006-07-04 Sandisk Corporation EEPROM with split gate source side infection with sidewall spacers
US6222762B1 (en) 1992-01-14 2001-04-24 Sandisk Corporation Multi-state memory
US5657332A (en) * 1992-05-20 1997-08-12 Sandisk Corporation Soft errors handling in EEPROM devices
JPH06266596A (en) * 1993-03-11 1994-09-22 Hitachi Ltd Flash memory file storage device and information processor
KR100566464B1 (en) * 1995-01-31 2006-03-31 가부시끼가이샤 히다치 세이사꾸쇼 Semiconductor memory device
US5687114A (en) 1995-10-06 1997-11-11 Agate Semiconductor, Inc. Integrated circuit for storage and retrieval of multiple digital bits per nonvolatile memory cell
KR100253868B1 (en) * 1995-11-13 2000-05-01 니시무로 타이죠 Non-volatile semiconductor memory device
JP3062730B2 (en) * 1996-07-10 2000-07-12 株式会社日立製作所 Nonvolatile semiconductor memory device and writing method
US6320785B1 (en) 1996-07-10 2001-11-20 Hitachi, Ltd. Nonvolatile semiconductor memory device and data writing method therefor
US6857099B1 (en) 1996-09-18 2005-02-15 Nippon Steel Corporation Multilevel semiconductor memory, write/read method thereto/therefrom and storage medium storing write/read program
US6839875B2 (en) * 1996-10-18 2005-01-04 Micron Technology, Inc. Method and apparatus for performing error correction on data read from a multistate memory
US6031771A (en) * 1996-10-28 2000-02-29 Macronix International Co., Ltd. Memory redundancy circuit using single polysilicon floating gate transistors as redundancy elements
US6047352A (en) * 1996-10-29 2000-04-04 Micron Technology, Inc. Memory system, method and predecoding circuit operable in different modes for selectively accessing multiple blocks of memory cells for simultaneous writing or erasure
KR100226746B1 (en) * 1996-12-30 1999-10-15 구본준 Apparatus and method for data sensing of multiple bit cells
US5870335A (en) * 1997-03-06 1999-02-09 Agate Semiconductor, Inc. Precision programming of nonvolatile memory cells
US6487116B2 (en) 1997-03-06 2002-11-26 Silicon Storage Technology, Inc. Precision programming of nonvolatile memory cells
US5909449A (en) * 1997-09-08 1999-06-01 Invox Technology Multibit-per-cell non-volatile memory with error detection and correction
US6246347B1 (en) * 1997-10-27 2001-06-12 Philips Electronics North America Corporation Controller for a variable length decoder
US6606267B2 (en) * 1998-06-23 2003-08-12 Sandisk Corporation High data rate write process for non-volatile flash memories
JP3714969B2 (en) 1998-03-02 2005-11-09 レクサー・メディア・インコーポレイテッド Flash memory card with improved operating mode detection and user-friendly interfacing system
KR100339023B1 (en) * 1998-03-28 2002-09-18 주식회사 하이닉스반도체 Sensing circuit for threshold voltage regulatable flash memory device
US6243289B1 (en) 1998-04-08 2001-06-05 Micron Technology Inc. Dual floating gate programmable read only memory cell structure and method for its fabrication and operation
DE69820032D1 (en) * 1998-05-27 2004-01-08 St Microelectronics Srl Non-volatile memory with large capacity
US6442667B1 (en) * 1998-06-08 2002-08-27 Texas Instruments Incorporated Selectively powering X Y organized memory banks
US6041309A (en) * 1998-09-25 2000-03-21 Oneclip.Com, Incorporated Method of and system for distributing and redeeming electronic coupons
US6901457B1 (en) 1998-11-04 2005-05-31 Sandisk Corporation Multiple mode communications system
US6469955B1 (en) * 2000-11-21 2002-10-22 Integrated Memory Technologies, Inc. Integrated circuit memory device having interleaved read and program capabilities and methods of operating same
US6975539B2 (en) * 1999-01-14 2005-12-13 Silicon Storage Technology, Inc. Digital multilevel non-volatile memory system
US6282145B1 (en) * 1999-01-14 2001-08-28 Silicon Storage Technology, Inc. Array architecture and operating methods for digital multilevel nonvolatile memory integrated circuit system
US6307777B1 (en) * 1999-01-22 2001-10-23 Rohm Co., Ltd. Nonvolatile semiconductor storage device
US6147904A (en) * 1999-02-04 2000-11-14 Tower Semiconductor Ltd. Redundancy method and structure for 2-bit non-volatile memory cells
JP2001052495A (en) * 1999-06-03 2001-02-23 Toshiba Corp Semiconductor memory
US7391471B1 (en) * 1999-09-21 2008-06-24 General Instrument Corporation Apparatus and method for merging vertical blanking intervals
FR2799045B1 (en) * 1999-09-29 2002-02-08 St Microelectronics Sa INTEGRATED CIRCUIT MEMORY WITH SERIAL ACCESS
US7100061B2 (en) 2000-01-18 2006-08-29 Transmeta Corporation Adaptive power control
US6785860B1 (en) * 2000-05-31 2004-08-31 Robert Patti Error-correcting code adapted for memories that store multiple bits per storage cell
DE60037504T2 (en) 2000-05-31 2008-12-11 Stmicroelectronics S.R.L., Agrate Brianza Reference cell array arrangement for data reading in a nonvolatile memory device
DE60039587D1 (en) 2000-05-31 2008-09-04 St Microelectronics Srl Circuit arrangement for programming data in reference cells of a non-volatile multi-bit memory arrangement
JP2001344985A (en) * 2000-06-05 2001-12-14 Nec Corp Semiconductor memory
US6968469B1 (en) 2000-06-16 2005-11-22 Transmeta Corporation System and method for preserving internal processor context when the processor is powered down and restoring the internal processor context when processor is restored
US6721843B1 (en) * 2000-07-07 2004-04-13 Lexar Media, Inc. Flash memory architecture implementing simultaneously programmable multiple flash memory banks that are host compatible
US6396742B1 (en) 2000-07-28 2002-05-28 Silicon Storage Technology, Inc. Testing of multilevel semiconductor memory
US7155559B1 (en) 2000-08-25 2006-12-26 Lexar Media, Inc. Flash memory architecture with separate storage of overhead and user data
US6538922B1 (en) * 2000-09-27 2003-03-25 Sandisk Corporation Writable tracking cells
US7260731B1 (en) 2000-10-23 2007-08-21 Transmeta Corporation Saving power when in or transitioning to a static mode of a processor
US6498757B2 (en) * 2000-11-23 2002-12-24 Macronix International Co., Ltd. Structure to inspect high/low of memory cell threshold voltage using current mode sense amplifier
US6901007B2 (en) 2001-01-11 2005-05-31 Micron Technology, Inc. Memory device with multi-level storage cells and apparatuses, systems and methods including same
US6587372B2 (en) * 2001-01-11 2003-07-01 Micron Technology, Inc. Memory device with multi-level storage cells and apparatuses, systems and methods including same
KR100416792B1 (en) * 2001-03-27 2004-01-31 삼성전자주식회사 Semiconductor memory device and voltage generating method thereof
EP1251523B1 (en) * 2001-04-19 2007-08-15 STMicroelectronics S.r.l. Method and circuit for timing dynamic reading of a memory cell with control of the integration time
US6584034B1 (en) * 2001-04-23 2003-06-24 Aplus Flash Technology Inc. Flash memory array structure suitable for multiple simultaneous operations
US7151745B2 (en) * 2001-11-08 2006-12-19 Broadcom Corporation Scalable synchronous packet transmit scheduler
EP1324342B1 (en) * 2001-12-28 2008-07-16 STMicroelectronics S.r.l. Programming method for a multilevel memory cell
ITVA20020012A1 (en) * 2002-02-08 2003-08-08 St Microelectronics Srl MEMORY DEVICE AND METHOD OF SEQUENTIAL READING OF BIT GROUPS FROM A MEMORY DEVICE
US6940753B2 (en) * 2002-09-24 2005-09-06 Sandisk Corporation Highly compact non-volatile memory and method therefor with space-efficient data registers
US6754103B2 (en) * 2002-11-04 2004-06-22 Silicon Storage Technology, Inc. Method and apparatus for programming and testing a non-volatile memory cell for storing multibit states
JP4169592B2 (en) * 2002-12-19 2008-10-22 株式会社NSCore CMIS type semiconductor nonvolatile memory circuit
US6856569B2 (en) * 2003-01-10 2005-02-15 International Business Machines Corporation Method and system for merging multiple fuse decompression serial bitstreams to support auxiliary fuseblow capability
JP2004246754A (en) * 2003-02-17 2004-09-02 Renesas Technology Corp Semiconductor memory and its controller
US6906958B2 (en) * 2003-03-26 2005-06-14 Taiwan Semiconductor Manufacturing Co., Ltd. Word-line voltage generator
US6839281B2 (en) * 2003-04-14 2005-01-04 Jian Chen Read and erase verify methods and circuits suitable for low voltage non-volatile memories
US7237074B2 (en) * 2003-06-13 2007-06-26 Sandisk Corporation Tracking cells for a memory system
KR100535651B1 (en) * 2003-06-30 2005-12-08 주식회사 하이닉스반도체 Method for reading a flash memory cell and a flash memory equipment of NAND and NOR type
US7173852B2 (en) * 2003-10-03 2007-02-06 Sandisk Corporation Corrected data storage and handling methods
US7012835B2 (en) 2003-10-03 2006-03-14 Sandisk Corporation Flash memory data correction and scrub techniques
US7301807B2 (en) 2003-10-23 2007-11-27 Sandisk Corporation Writable tracking cells
US7366030B2 (en) * 2004-01-29 2008-04-29 Micron Technology, Inc. Simultaneous read circuit for multiple memory cells
US6933869B1 (en) * 2004-03-17 2005-08-23 Altera Corporation Integrated circuits with temperature-change and threshold-voltage drift compensation
US7038948B2 (en) * 2004-09-22 2006-05-02 Spansion Llc Read approach for multi-level virtual ground memory
US7068204B1 (en) 2004-09-28 2006-06-27 Spansion Llc System that facilitates reading multi-level data in non-volatile memory
US7315916B2 (en) * 2004-12-16 2008-01-01 Sandisk Corporation Scratch pad block
US7395404B2 (en) * 2004-12-16 2008-07-01 Sandisk Corporation Cluster auto-alignment for storing addressable data packets in a non-volatile memory array
ITMI20042538A1 (en) * 2004-12-29 2005-03-29 Atmel Corp METHOD AND SYSTEM FOR THE REDUCTION OF SOFT-WRITING IN A FLASH MEMORY AT MULTIPLE LEVELS
US7656710B1 (en) 2005-07-14 2010-02-02 Sau Ching Wong Adaptive operations for nonvolatile memories
ITMI20051628A1 (en) * 2005-09-02 2007-03-03 St Microelectronics Srl MEORIA ARCHITECTURE WITH VOLTAGE RAMP READING
US7616492B2 (en) * 2005-10-04 2009-11-10 Qimonda Ag Evaluation circuit and evaluation method for the assessment of memory cell states
JP4791806B2 (en) 2005-11-21 2011-10-12 株式会社東芝 Semiconductor memory device and data writing method thereof
WO2007076451A2 (en) * 2005-12-28 2007-07-05 Sandisk Corporation Body effect sensing method for non-volatile memories
US7349264B2 (en) * 2005-12-28 2008-03-25 Sandisk Corporation Alternate sensing techniques for non-volatile memories
US7616481B2 (en) * 2005-12-28 2009-11-10 Sandisk Corporation Memories with alternate sensing techniques
KR100725373B1 (en) * 2006-01-20 2007-06-07 삼성전자주식회사 Flash memory device
CN103280239B (en) * 2006-05-12 2016-04-06 苹果公司 Distortion estimation in memory device and elimination
WO2007132457A2 (en) 2006-05-12 2007-11-22 Anobit Technologies Ltd. Combined distortion estimation and error correction coding for memory devices
US8239735B2 (en) 2006-05-12 2012-08-07 Apple Inc. Memory Device with adaptive capacity
ITMI20061037A1 (en) * 2006-05-26 2007-11-27 St Microelectronics Srl METHOD OF READING A NON-VOLATILE ELECTRONIC DEVICE AND ITS DEVICE
JP5052070B2 (en) 2006-08-23 2012-10-17 ルネサスエレクトロニクス株式会社 Data reading circuit and data reading method
US8060806B2 (en) * 2006-08-27 2011-11-15 Anobit Technologies Ltd. Estimation of non-linear distortion in memory devices
US7716538B2 (en) * 2006-09-27 2010-05-11 Sandisk Corporation Memory with cell population distribution assisted read margining
US7886204B2 (en) * 2006-09-27 2011-02-08 Sandisk Corporation Methods of cell population distribution assisted read margining
WO2008053472A2 (en) 2006-10-30 2008-05-08 Anobit Technologies Ltd. Reading memory cells using multiple thresholds
CN100552652C (en) * 2006-11-17 2009-10-21 旺玖科技股份有限公司 Electronic device for judging type of memory and related method thereof
US7443753B2 (en) * 2006-11-21 2008-10-28 Macronix International Co., Ltd. Memory structure, programming method and reading method therefor, and memory control circuit thereof
US7440319B2 (en) * 2006-11-27 2008-10-21 Sandisk Corporation Apparatus with segmented bitscan for verification of programming
US7545681B2 (en) * 2006-11-27 2009-06-09 Sandisk Corporation Segmented bitscan for verification of programming
WO2008068747A2 (en) 2006-12-03 2008-06-12 Anobit Technologies Ltd. Automatic defect management in memory devices
US7529149B2 (en) * 2006-12-12 2009-05-05 Mosaid Technologies Incorporated Memory system and method with serial and parallel modes
US8151166B2 (en) 2007-01-24 2012-04-03 Anobit Technologies Ltd. Reduction of back pattern dependency effects in memory devices
JP2008192232A (en) * 2007-02-05 2008-08-21 Spansion Llc Semiconductor device and its control method
US8369141B2 (en) 2007-03-12 2013-02-05 Apple Inc. Adaptive estimation of memory cell read thresholds
US7477547B2 (en) * 2007-03-28 2009-01-13 Sandisk Corporation Flash memory refresh techniques triggered by controlled scrub data reads
US7573773B2 (en) * 2007-03-28 2009-08-11 Sandisk Corporation Flash memory with data refresh triggered by controlled scrub data reads
US20080247217A1 (en) * 2007-04-04 2008-10-09 Bernhard Ruf Integrated circuit, memory cell array, memory module, method of operating an integrated circuit, and computing system
KR100873825B1 (en) * 2007-05-02 2008-12-15 삼성전자주식회사 Multibit Programming Device and Method of Nonvolatile Memory
US8429493B2 (en) * 2007-05-12 2013-04-23 Apple Inc. Memory device with internal signap processing unit
US8234545B2 (en) 2007-05-12 2012-07-31 Apple Inc. Data storage with incremental redundancy
US8812824B2 (en) 2007-06-13 2014-08-19 International Business Machines Corporation Method and apparatus for employing multi-bit register file cells and SMT thread groups
US9250899B2 (en) 2007-06-13 2016-02-02 International Business Machines Corporation Method and apparatus for spatial register partitioning with a multi-bit cell register file
US8259497B2 (en) * 2007-08-06 2012-09-04 Apple Inc. Programming schemes for multi-level analog memory cells
CN101425333B (en) * 2007-09-13 2012-08-22 林殷茵 High density resistor conversion memory and memory operation method thereof
US8174905B2 (en) 2007-09-19 2012-05-08 Anobit Technologies Ltd. Programming orders for reducing distortion in arrays of multi-level analog memory cells
US8527819B2 (en) 2007-10-19 2013-09-03 Apple Inc. Data storage in analog memory cell arrays having erase failures
US8068360B2 (en) 2007-10-19 2011-11-29 Anobit Technologies Ltd. Reading analog memory cells using built-in multi-threshold commands
US8270246B2 (en) 2007-11-13 2012-09-18 Apple Inc. Optimized selection of memory chips in multi-chips memory devices
US8225181B2 (en) 2007-11-30 2012-07-17 Apple Inc. Efficient re-read operations from memory devices
US8209588B2 (en) 2007-12-12 2012-06-26 Anobit Technologies Ltd. Efficient interference cancellation in analog memory cell arrays
US8456905B2 (en) * 2007-12-16 2013-06-04 Apple Inc. Efficient data storage in multi-plane memory devices
US8085586B2 (en) 2007-12-27 2011-12-27 Anobit Technologies Ltd. Wear level estimation in analog memory cells
US8156398B2 (en) 2008-02-05 2012-04-10 Anobit Technologies Ltd. Parameter estimation based on error correction code parity check equations
KR101515122B1 (en) * 2008-02-15 2015-04-27 삼성전자주식회사 Memory data detecting apparatus and method for controlling reference voltage based on error of stored data
US8230300B2 (en) 2008-03-07 2012-07-24 Apple Inc. Efficient readout from analog memory cells using data compression
US8059457B2 (en) * 2008-03-18 2011-11-15 Anobit Technologies Ltd. Memory device with multiple-accuracy read commands
US8400858B2 (en) 2008-03-18 2013-03-19 Apple Inc. Memory device with reduced sense time readout
US8498151B1 (en) 2008-08-05 2013-07-30 Apple Inc. Data storage in analog memory cells using modified pass voltages
US8949684B1 (en) 2008-09-02 2015-02-03 Apple Inc. Segmented data storage
US8169825B1 (en) 2008-09-02 2012-05-01 Anobit Technologies Ltd. Reliable data storage in analog memory cells subjected to long retention periods
US8482978B1 (en) 2008-09-14 2013-07-09 Apple Inc. Estimation of memory cell read thresholds by sampling inside programming level distribution intervals
US8239734B1 (en) 2008-10-15 2012-08-07 Apple Inc. Efficient data storage in storage device arrays
US8713330B1 (en) 2008-10-30 2014-04-29 Apple Inc. Data scrambling in memory devices
US8208304B2 (en) 2008-11-16 2012-06-26 Anobit Technologies Ltd. Storage at M bits/cell density in N bits/cell analog memory cell devices, M>N
US8248831B2 (en) 2008-12-31 2012-08-21 Apple Inc. Rejuvenation of analog memory cells
US8397131B1 (en) 2008-12-31 2013-03-12 Apple Inc. Efficient readout schemes for analog memory cell devices
US8924661B1 (en) 2009-01-18 2014-12-30 Apple Inc. Memory system including a controller and processors associated with memory devices
US8228701B2 (en) * 2009-03-01 2012-07-24 Apple Inc. Selective activation of programming schemes in analog memory cell arrays
US8832354B2 (en) 2009-03-25 2014-09-09 Apple Inc. Use of host system resources by memory controller
US8259506B1 (en) 2009-03-25 2012-09-04 Apple Inc. Database of memory read thresholds
US8238157B1 (en) 2009-04-12 2012-08-07 Apple Inc. Selective re-programming of analog memory cells
US8479080B1 (en) 2009-07-12 2013-07-02 Apple Inc. Adaptive over-provisioning in memory systems
US8495465B1 (en) 2009-10-15 2013-07-23 Apple Inc. Error correction coding over multiple memory pages
KR20200096317A (en) * 2009-11-20 2020-08-11 가부시키가이샤 한도오따이 에네루기 켄큐쇼 Semiconductor device
US8677054B1 (en) 2009-12-16 2014-03-18 Apple Inc. Memory management schemes for non-volatile memory devices
US8694814B1 (en) 2010-01-10 2014-04-08 Apple Inc. Reuse of host hibernation storage space by memory controller
US8677203B1 (en) 2010-01-11 2014-03-18 Apple Inc. Redundant data storage schemes for multi-die memory systems
US8694853B1 (en) 2010-05-04 2014-04-08 Apple Inc. Read commands for reading interfering memory cells
US8416624B2 (en) 2010-05-21 2013-04-09 SanDisk Technologies, Inc. Erase and programming techniques to reduce the widening of state distributions in non-volatile memories
US8572423B1 (en) 2010-06-22 2013-10-29 Apple Inc. Reducing peak current in memory systems
JP5485816B2 (en) 2010-06-28 2014-05-07 ラピスセミコンダクタ株式会社 Nonvolatile semiconductor memory
US8595591B1 (en) 2010-07-11 2013-11-26 Apple Inc. Interference-aware assignment of programming levels in analog memory cells
US9104580B1 (en) 2010-07-27 2015-08-11 Apple Inc. Cache memory for hybrid disk drives
US8645794B1 (en) 2010-07-31 2014-02-04 Apple Inc. Data storage in analog memory cells using a non-integer number of bits per cell
US8856475B1 (en) 2010-08-01 2014-10-07 Apple Inc. Efficient selection of memory blocks for compaction
US8493781B1 (en) 2010-08-12 2013-07-23 Apple Inc. Interference mitigation using individual word line erasure operations
US8694854B1 (en) 2010-08-17 2014-04-08 Apple Inc. Read threshold setting based on soft readout statistics
KR101277479B1 (en) * 2010-08-31 2013-06-21 에스케이하이닉스 주식회사 Semiconductor memory device
US9021181B1 (en) 2010-09-27 2015-04-28 Apple Inc. Memory management for unifying memory cell conditions by using maximum time intervals
US8687421B2 (en) 2011-11-21 2014-04-01 Sandisk Technologies Inc. Scrub techniques for use with dynamic read
US9230689B2 (en) 2014-03-17 2016-01-05 Sandisk Technologies Inc. Finding read disturbs on non-volatile memories
US9552171B2 (en) 2014-10-29 2017-01-24 Sandisk Technologies Llc Read scrub with adaptive counter management
US9978456B2 (en) 2014-11-17 2018-05-22 Sandisk Technologies Llc Techniques for reducing read disturb in partially written blocks of non-volatile memory
US9349479B1 (en) 2014-11-18 2016-05-24 Sandisk Technologies Inc. Boundary word line operation in nonvolatile memory
US9449700B2 (en) 2015-02-13 2016-09-20 Sandisk Technologies Llc Boundary word line search and open block read methods with reduced read disturb
US9653154B2 (en) 2015-09-21 2017-05-16 Sandisk Technologies Llc Write abort detection for multi-state memories
US10340010B2 (en) * 2016-08-16 2019-07-02 Silicon Storage Technology, Inc. Method and apparatus for configuring array columns and rows for accessing flash memory cells
US9779796B1 (en) * 2016-09-07 2017-10-03 Micron Technology, Inc. Redundancy array column decoder for memory
US10685733B2 (en) * 2016-12-27 2020-06-16 SK Hynix Inc. Electronic device for changing short-type defective memory cell to open-type defective memory cell by applying stress pulse
JP2020047326A (en) * 2018-09-18 2020-03-26 キオクシア株式会社 Semiconductor memory device, memory system, and method
CN113053442B (en) * 2021-03-18 2024-04-02 华南师范大学 Low-power-consumption EEPROM memory
US11556416B2 (en) 2021-05-05 2023-01-17 Apple Inc. Controlling memory readout reliability and throughput by adjusting distance between read thresholds
US11847342B2 (en) 2021-07-28 2023-12-19 Apple Inc. Efficient transfer of hard data and confidence levels in reading a nonvolatile memory
CN116935938A (en) * 2022-04-02 2023-10-24 长鑫存储技术有限公司 Detection circuit
US11837304B2 (en) 2022-04-02 2023-12-05 Changxin Memory Technologies, Inc. Detection circuit

Family Cites Families (83)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4054864A (en) * 1973-05-04 1977-10-18 Commissariat A L'energie Atomique Method and device for the storage of analog signals
US4181980A (en) * 1978-05-15 1980-01-01 Electronic Arrays, Inc. Acquisition and storage of analog signals
US4415992A (en) * 1981-02-25 1983-11-15 Motorola, Inc. Memory system having memory cells capable of storing more than two states
US4417325A (en) * 1981-07-13 1983-11-22 Eliyahou Harari Highly scaleable dynamic ram cell with self-signal amplification
US4448400A (en) * 1981-07-13 1984-05-15 Eliyahou Harari Highly scalable dynamic RAM cell with self-signal amplification
US4627027A (en) * 1982-09-01 1986-12-02 Sanyo Electric Co., Ltd. Analog storing and reproducing apparatus utilizing non-volatile memory elements
JPS59111370A (en) 1982-12-16 1984-06-27 Seiko Instr & Electronics Ltd Nonvolatile semiconductor memory
US4771404A (en) 1984-09-05 1988-09-13 Nippon Telegraph And Telephone Corporation Memory device employing multilevel storage circuits
US4667217A (en) * 1985-04-19 1987-05-19 Ncr Corporation Two bit vertically/horizontally integrated memory cell
US4794565A (en) 1986-09-15 1988-12-27 The Regents Of The University Of California Electrically programmable memory device employing source side injection
US5222047A (en) * 1987-05-15 1993-06-22 Mitsubishi Denki Kabushiki Kaisha Method and apparatus for driving word line in block access memory
US5440518A (en) * 1991-06-12 1995-08-08 Hazani; Emanuel Non-volatile memory circuits, architecture and methods
US5268870A (en) 1988-06-08 1993-12-07 Eliyahou Harari Flash EEPROM system and intelligent programming and erasing methods therefor
US5198380A (en) 1988-06-08 1993-03-30 Sundisk Corporation Method of highly compact EPROM and flash EEPROM devices
US5293560A (en) 1988-06-08 1994-03-08 Eliyahou Harari Multi-state flash EEPROM system using incremental programing and erasing methods
US5043940A (en) * 1988-06-08 1991-08-27 Eliyahou Harari Flash EEPROM memory systems having multistate storage cells
US4890259A (en) * 1988-07-13 1989-12-26 Information Storage Devices High density integrated circuit analog signal recording and playback system
US4989179A (en) * 1988-07-13 1991-01-29 Information Storage Devices, Inc. High density integrated circuit analog signal recording and playback system
US5150327A (en) * 1988-10-31 1992-09-22 Matsushita Electric Industrial Co., Ltd. Semiconductor memory and video signal processing circuit having the same
US5042009A (en) 1988-12-09 1991-08-20 Waferscale Integration, Inc. Method for programming a floating gate memory device
JPH02260298A (en) 1989-03-31 1990-10-23 Oki Electric Ind Co Ltd Non-volatile multilevel memory device
US5172338B1 (en) * 1989-04-13 1997-07-08 Sandisk Corp Multi-state eeprom read and write circuits and techniques
US5029130A (en) 1990-01-22 1991-07-02 Silicon Storage Technology, Inc. Single transistor non-valatile electrically alterable semiconductor memory device
US5218571A (en) 1990-05-07 1993-06-08 Cypress Semiconductor Corporation EPROM source bias circuit with compensation for processing characteristics
JP2709751B2 (en) 1990-06-15 1998-02-04 三菱電機株式会社 Nonvolatile semiconductor memory device and data erasing method thereof
US5371031A (en) 1990-08-01 1994-12-06 Texas Instruments Incorporated Method of making EEPROM array with buried N+ windows and with separate erasing and programming regions
US5241494A (en) * 1990-09-26 1993-08-31 Information Storage Devices Integrated circuit system for analog signal recording and playback
US5258949A (en) 1990-12-03 1993-11-02 Motorola, Inc. Nonvolatile memory with enhanced carrier generation and method for programming the same
US5220531A (en) * 1991-01-02 1993-06-15 Information Storage Devices, Inc. Source follower storage cell and improved method and apparatus for iterative write for integrated circuit analog signal recording and playback
US5243239A (en) * 1991-01-22 1993-09-07 Information Storage Devices, Inc. Integrated MOSFET resistance and oscillator frequency control and trim methods and apparatus
US5218569A (en) * 1991-02-08 1993-06-08 Banks Gerald J Electrically alterable non-volatile memory with n-bits per memory cell
US5388064A (en) * 1991-11-26 1995-02-07 Information Storage Devices, Inc. Programmable non-volatile analog voltage source devices and methods
US5313421A (en) 1992-01-14 1994-05-17 Sundisk Corporation EEPROM with split gate source side injection
US5369609A (en) 1992-03-13 1994-11-29 Silicon Storage Technology, Inc. Floating gate memory array with latches having improved immunity to write disturbance, and with storage latches
US5336936A (en) * 1992-05-06 1994-08-09 Synaptics, Incorporated One-transistor adaptable analog storage element and array
US5657332A (en) 1992-05-20 1997-08-12 Sandisk Corporation Soft errors handling in EEPROM devices
US5592415A (en) 1992-07-06 1997-01-07 Hitachi, Ltd. Non-volatile semiconductor memory
US5283761A (en) * 1992-07-22 1994-02-01 Mosaid Technologies Incorporated Method of multi-level storage in DRAM
US5315541A (en) 1992-07-24 1994-05-24 Sundisk Corporation Segmented column memory array
US5412601A (en) * 1992-08-31 1995-05-02 Nippon Steel Corporation Non-volatile semiconductor memory device capable of storing multi-value data in each memory cell
JP3302796B2 (en) 1992-09-22 2002-07-15 株式会社東芝 Semiconductor storage device
US5479170A (en) 1992-10-16 1995-12-26 California Institute Of Technology Method and apparatus for long-term multi-valued storage in dynamic analog memory
US5258759A (en) 1992-10-16 1993-11-02 California Institute Of Technology Method and apparatus for monotonic algorithmic digital-to-analog and analog-to-digital conversion
US5294819A (en) * 1992-11-25 1994-03-15 Information Storage Devices Single-transistor cell EEPROM array for analog or digital storage
US5365486A (en) 1992-12-16 1994-11-15 Texas Instruments Incorporated Method and circuitry for refreshing a flash electrically erasable, programmable read only memory
KR960000616B1 (en) * 1993-01-13 1996-01-10 삼성전자주식회사 Nonvolatile Semiconductor Memory Device
EP0616333B1 (en) 1993-03-18 1999-06-23 STMicroelectronics S.r.l. Method of biasing a nonvolatile flash-EEPROM memory array
US5357476A (en) 1993-06-01 1994-10-18 Motorola, Inc. Apparatus and method for erasing a flash EEPROM
US5422842A (en) * 1993-07-08 1995-06-06 Sundisk Corporation Method and circuit for simultaneously programming and verifying the programming of selected EEPROM cells
US5563823A (en) 1993-08-31 1996-10-08 Macronix International Co., Ltd. Fast FLASH EPROM programming and pre-programming circuit design
JPH07130166A (en) * 1993-09-13 1995-05-19 Mitsubishi Electric Corp Semiconductor memory device and synchronous semiconductor memory device
US5477499A (en) 1993-10-13 1995-12-19 Advanced Micro Devices, Inc. Memory architecture for a three volt flash EEPROM
US5511020A (en) 1993-11-23 1996-04-23 Monolithic System Technology, Inc. Pseudo-nonvolatile memory incorporating data refresh operation
JPH07230696A (en) 1993-12-21 1995-08-29 Toshiba Corp Semiconductor memory device
US5440505A (en) 1994-01-21 1995-08-08 Intel Corporation Method and circuitry for storing discrete amounts of charge in a single memory element
GB9401227D0 (en) 1994-01-22 1994-03-16 Deas Alexander R Non-volatile digital memory device with multi-level storage cells
JP3476952B2 (en) * 1994-03-15 2003-12-10 株式会社東芝 Nonvolatile semiconductor memory device
US5485422A (en) * 1994-06-02 1996-01-16 Intel Corporation Drain bias multiplexing for multiple bit flash cell
US5523972A (en) * 1994-06-02 1996-06-04 Intel Corporation Method and apparatus for verifying the programming of multi-level flash EEPROM memory
US5539690A (en) * 1994-06-02 1996-07-23 Intel Corporation Write verify schemes for flash memory with multilevel cells
US5487033A (en) 1994-06-28 1996-01-23 Intel Corporation Structure and method for low current programming of flash EEPROMS
GB9415539D0 (en) 1994-08-02 1994-09-21 Deas Alexander R Bit resolution optimising mechanism
US5629890A (en) 1994-09-14 1997-05-13 Information Storage Devices, Inc. Integrated circuit system for analog signal storing and recovery incorporating read while writing voltage program method
US5508958A (en) * 1994-09-29 1996-04-16 Intel Corporation Method and apparatus for sensing the state of floating gate memory cells by applying a variable gate voltage
US5694356A (en) 1994-11-02 1997-12-02 Invoice Technology, Inc. High resolution analog storage EPROM and flash EPROM
JP3281215B2 (en) 1995-03-16 2002-05-13 株式会社東芝 Dynamic semiconductor memory device
US5663923A (en) 1995-04-28 1997-09-02 Intel Corporation Nonvolatile memory blocking architecture
US5590076A (en) 1995-06-21 1996-12-31 Advanced Micro Devices, Inc. Channel hot-carrier page write
US5627784A (en) 1995-07-28 1997-05-06 Micron Quantum Devices, Inc. Memory system having non-volatile data storage structure for memory control parameters and method
US5973956A (en) 1995-07-31 1999-10-26 Information Storage Devices, Inc. Non-volatile electrically alterable semiconductor memory for analog and digital storage
JP3247034B2 (en) 1995-08-11 2002-01-15 シャープ株式会社 Nonvolatile semiconductor memory device
JPH0969295A (en) 1995-08-31 1997-03-11 Sanyo Electric Co Ltd Non-volatile multi-value memory device
KR0172831B1 (en) 1995-09-18 1999-03-30 문정환 How to Program Nonvolatile Memory
KR0170296B1 (en) 1995-09-19 1999-03-30 김광호 Non-volatile memory element
US5687114A (en) 1995-10-06 1997-11-11 Agate Semiconductor, Inc. Integrated circuit for storage and retrieval of multiple digital bits per nonvolatile memory cell
US5615159A (en) 1995-11-28 1997-03-25 Micron Quantum Devices, Inc. Memory system with non-volatile data storage unit and method of initializing same
KR0185611B1 (en) 1995-12-11 1999-04-15 김광호 High voltage level optimization circuit of eeprom and its method
KR100186300B1 (en) 1996-04-04 1999-04-15 문정환 Semiconductor memory device with hierarchical word line structure
US5712815A (en) 1996-04-22 1998-01-27 Advanced Micro Devices, Inc. Multiple bits per-cell flash EEPROM capable of concurrently programming and verifying memory cells and reference cells
JPH1065948A (en) 1996-08-21 1998-03-06 Hitachi Ltd Electronic camera with LCD display
US5764586A (en) 1996-10-10 1998-06-09 Catalyst Semiconductor, Inc. Intermediate size non-volatile electrically alterable semiconductor memory device
JP3890647B2 (en) 1997-01-31 2007-03-07 ソニー株式会社 Nonvolatile semiconductor memory device
US5896340A (en) 1997-07-07 1999-04-20 Invox Technology Multiple array architecture for analog or multi-bit-cell memory

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100942870B1 (en) * 2005-07-04 2010-02-17 마이크론 테크놀로지, 인크. Low power multiple bit sense amplifier

Also Published As

Publication number Publication date
JPH11507464A (en) 1999-06-29
EP0853806B1 (en) 2002-12-18
EP1239490A3 (en) 2003-05-28
EP0853806A4 (en) 1998-10-14
ATE230152T1 (en) 2003-01-15
US5687114A (en) 1997-11-11
TW303466B (en) 1997-04-21
DE69625494D1 (en) 2003-01-30
US5905673A (en) 1999-05-18
CN1146918C (en) 2004-04-21
EP1246193A3 (en) 2003-05-28
WO1997013250A1 (en) 1997-04-10
CN1198834A (en) 1998-11-11
US6462986B1 (en) 2002-10-08
DE69625494T2 (en) 2003-10-30
EP0853806A1 (en) 1998-07-22
KR100303549B1 (en) 2001-09-29
EP1239490A2 (en) 2002-09-11
US20020101778A1 (en) 2002-08-01
EP1246193A2 (en) 2002-10-02

Similar Documents

Publication Publication Date Title
KR100303549B1 (en) Integrated circuit for storage and retrieval of multiple digital bits per nonvolatile memory cell
US5539690A (en) Write verify schemes for flash memory with multilevel cells
KR100697053B1 (en) Nonvolatile Memory and Nonvolatile Memory Recording Method
US5796667A (en) Bit map addressing schemes for flash memory
US8270213B2 (en) Flash memory array system including a top gate memory cell
JP2008535140A (en) Nonvolatile memory and method using compensation for source line bias error
KR20010032309A (en) Memory apparatus including programmable non-volatile multi-bit memory cell, and apparatus and method for demarcating memory states of the cell
JP2008535141A (en) Nonvolatile memory and method using control gate compensation for source line bias error
EP1729302A1 (en) A circuit for retrieving data stored in semiconductor memory cells
US7596037B2 (en) Independent bi-directional margin control per level and independently expandable reference cell levels for flash memory sensing
US6404679B1 (en) Multiple level floating-gate memory
Cernea et al. A 34 Mb 3.3 V serial flash EEPROM for solid-state disk applications
US6992934B1 (en) Read bitline inhibit method and apparatus for voltage mode sensing
KR19990003406A (en) Memory device having multi-level cells and data writing method thereof

Legal Events

Date Code Title Description
PA0105 International application

Patent event date: 19980406

Patent event code: PA01051R01D

Comment text: International Patent Application

A201 Request for examination
PA0201 Request for examination

Patent event code: PA02012R01D

Patent event date: 19980714

Comment text: Request for Examination of Application

PG1501 Laying open of application
E902 Notification of reason for refusal
PE0902 Notice of grounds for rejection

Comment text: Notification of reason for refusal

Patent event date: 20000825

Patent event code: PE09021S01D

E701 Decision to grant or registration of patent right
PE0701 Decision of registration

Patent event code: PE07011S01D

Comment text: Decision to Grant Registration

Patent event date: 20010420

GRNT Written decision to grant
PR0701 Registration of establishment

Comment text: Registration of Establishment

Patent event date: 20010712

Patent event code: PR07011E01D

PR1002 Payment of registration fee

Payment date: 20010713

End annual number: 3

Start annual number: 1

PG1601 Publication of registration
PR1001 Payment of annual fee

Payment date: 20040809

Start annual number: 4

End annual number: 4

PR1001 Payment of annual fee

Payment date: 20050630

Start annual number: 5

End annual number: 5

PR1001 Payment of annual fee

Payment date: 20060711

Start annual number: 6

End annual number: 6

PR1001 Payment of annual fee

Payment date: 20070710

Start annual number: 7

End annual number: 7

PR1001 Payment of annual fee

Payment date: 20080701

Start annual number: 8

End annual number: 8

PR1001 Payment of annual fee

Payment date: 20090708

Start annual number: 9

End annual number: 9

PR1001 Payment of annual fee

Payment date: 20100712

Start annual number: 10

End annual number: 10

PR1001 Payment of annual fee

Payment date: 20110620

Start annual number: 11

End annual number: 11

PR1001 Payment of annual fee

Payment date: 20120620

Start annual number: 12

End annual number: 12

FPAY Annual fee payment

Payment date: 20130626

Year of fee payment: 13

PR1001 Payment of annual fee

Payment date: 20130626

Start annual number: 13

End annual number: 13

FPAY Annual fee payment

Payment date: 20140626

Year of fee payment: 14

PR1001 Payment of annual fee

Payment date: 20140626

Start annual number: 14

End annual number: 14

FPAY Annual fee payment

Payment date: 20150625

Year of fee payment: 15

PR1001 Payment of annual fee

Payment date: 20150625

Start annual number: 15

End annual number: 15

FPAY Annual fee payment

Payment date: 20160629

Year of fee payment: 16

PR1001 Payment of annual fee

Payment date: 20160629

Start annual number: 16

End annual number: 16

EXPY Expiration of term
PC1801 Expiration of term

Termination date: 20170403

Termination category: Expiration of duration