KR19990012428A - Flash memory device and its programming method - Google Patents
Flash memory device and its programming method Download PDFInfo
- Publication number
- KR19990012428A KR19990012428A KR1019970035819A KR19970035819A KR19990012428A KR 19990012428 A KR19990012428 A KR 19990012428A KR 1019970035819 A KR1019970035819 A KR 1019970035819A KR 19970035819 A KR19970035819 A KR 19970035819A KR 19990012428 A KR19990012428 A KR 19990012428A
- Authority
- KR
- South Korea
- Prior art keywords
- signal
- program
- data bits
- buffers
- generating
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/10—Programming or data input circuits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/24—Bit-line control circuits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/34—Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
- G11C16/3436—Arrangements for verifying correct programming or erasure
- G11C16/3454—Arrangements for verifying correct programming or for detecting overprogrammed cells
- G11C16/3459—Circuits or methods to verify correct programming of nonvolatile memory cells
Landscapes
- Read Only Memory (AREA)
Abstract
본 발명에 따른 플래시 메모리 장치는 복수 개의 비트 라인들과; 복수 개의 메모리 셀들을 포함하는 셀 어레이와; 래치 신호에 응답하여 외부로부터 인가되는 데이터 비트들을 각각 래치하기 위한 버퍼들과; 프로그램 동작을 수행하기 위한 프로그램 활성화 신호를 발생하는 회로와; 상기 프로그램 활성화 신호에 응답하여 상기 버퍼들에 래치된 상기 데이터 비트들에 해당하는 전압 레벨들로 대응되는 비트 라인들을 구동하기 위한 구동기들 및; 상기 버퍼들에 각각 래치된 상기 데이터 비트들을 최하위 비트로부터 프로그램 상태를 나타내는 데이터 비트들의 일회 프로그램 가능한 데이터 비트들이 대응되는 구동기들로 공급된 후 상기 일회 프로그램 가능한 데이터 비트들에 대한 프로그램 동작이 수행되도록 상기 버퍼들 및 상기 프로그램 활성화 신호 발생 회로를 제어하는 회로를 포함한다.A flash memory device according to the present invention includes: a plurality of bit lines; A cell array including a plurality of memory cells; Buffers for respectively latching data bits applied from the outside in response to a latch signal; A circuit for generating a program activation signal for performing a program operation; Drivers for driving bit lines corresponding to the voltage levels corresponding to the data bits latched in the buffers in response to the program enable signal; After the data bits respectively latched in the buffers are supplied from the least significant bit to actuators corresponding to one-time programmable data bits of data bits representing a program state, a program operation for the once programmable data bits is performed Buffers and a circuit for controlling the program activation signal generating circuit.
Description
본 발명은 불 휘발성 반도체 메모리 장치에 관한 것으로서, 구체적으로는 전기적으로 소거 및 프로그래 가능한 셀들을 구비한 플래시 메모리 장치 및 그것의 프로그램 방법에 관한 것이다.The present invention relates to a nonvolatile semiconductor memory device, and more particularly, to a flash memory device having electrically erasable and programmable cells and a method of programming the same.
플래시 메모리 장치(flash memory device)는 전기적으로 프로그램 및 소거 동작이 가능한 불 휘발성 반도체 메모리 장치들과 비교할 경우 프로그램 및 읽기 동작에 있어서 속도가 월등히 빠르기 때문에 빠른 처리 속도를 요구하는 사용자들로부터 많은 호응을 받고 있다. 플래시 메모리 장치에는 낸드형 (NAND type)과 노어형 (NOR type) 플래시 메모리 장치로 분류될 수 있다. 이중 상기 노어형 플래시 메모리 장치의 셀 어레이는 하나의 비트 라인에 복수 개의 메모리 셀들이 병렬로 배열되는 구조를 갖는 반면에 상기 낸드형 플래시 메모리 장치의 셀 어레이는 하나의 비트 라인에 복수 개의 메모리 셀들이 직렬로 배열되는 구조를 갖는다.Since a flash memory device is much faster in program and read operations than a nonvolatile semiconductor memory device capable of electrically programming and erasing operations, have. A flash memory device can be classified into a NAND type and a NOR type flash memory device. The cell array of the NOR type flash memory device has a structure in which a plurality of memory cells are arranged in parallel on one bit line while a cell array of the NAND type flash memory device has a structure in which a plurality of memory cells are connected in series As shown in Fig.
도 1을 참조하면, 일반적인 플래시 메모리 셀의 구조를 보여주는 단면도가 도시되어 있다. 플래시 메모리 셀은, 도 1에 도시된 바와같이, P형 반도체 기판 (2)의 표면에 채널 영역을 사이에 두고 N+ 불순물로 형성된 소오스 (3) 및 드레인 (4)과, 상기 채널 영역 상에 100Å 이하의 얇은 절연막 (7)을 사이에 두고 형성된 플로팅 게이트 (floating gate) (6)와, 상기 플로팅 게이트 (floating gate) (6) 상에 절연막 (예를들면, ONO막) (9)을 사이에 두고 콘트롤 게이트 (control gate) (8)가 형성되어 있다. 그리고, 상기 소오스 (3), 상기 드레인 (4), 상기 콘트롤 게이트 (8), 그리고 상기 반도체 기판 (2)에는 각각 프로그램, 소거, 그리고 독출 동작시 요구되는 전압들을 인가하기 위한 전원 단자들 (Vs), (Vd), (Vg), 그리고 (Vb)이 접속되어 있다.Referring to FIG. 1, a cross-sectional view illustrating a structure of a general flash memory cell is shown. As shown in FIG. 1, the flash memory cell includes a source 3 and a drain 4 formed on the surface of a P-type semiconductor substrate 2 with a channel region therebetween and made of N + impurities, A floating gate 6 formed with a thin insulating film 7 therebetween and an insulating film (for example, an ONO film) 9 on the floating gate 6 And a control gate 8 is formed. The source 3, the drain 4, the control gate 8 and the semiconductor substrate 2 are provided with power supply terminals Vs (Vs) for applying voltages required in programming, erasing and reading operations, ), (Vd), (Vg), and (Vb) are connected.
통상적인 플래시 메모리의 프로그램 동작에 의하면, 드레인 영역 (4)과 인접한 채널 영역에서 플로팅 게이트 (8)로의 핫 일렉트론 인젝션 (hot electron injection)이 발생되도록 함으로써 플래시 메모리 셀은 프로그램된다. 상기한 전자 주입은 상기 소오스 영역 (3)과 상기 P형 반도체 기판 (2)을 접지시키고, 상기 콘트롤 게이트 전극 (Vg)에 높은 고전압 (예를들면, +10V)을 인가하고, 그리고 상기 드레인 영역 (4)에 핫 일렉트론을 발생시키기 위해 적당한 양의 전압 (예를들면, 5V∼6V)를 인가함으로써 이루어진다. 이러한 전압 인가 조건에 따라 플래시 메모리 셀이 프로그램되면, 즉 음의 전하 (negative charge)가 상기 플로팅 게이트 (6)에 충분히 축적되면, 상기 플로팅 게이트 (6)에 축적된(또는 포획된) (-) 전하는 일련의 독출 동작이 수행되는 동안 상기 프로그램된 플래시 메모리 셀의 드레솔드 전압 (threshold voltage)을 높이는 역할을 한다.According to the program operation of the conventional flash memory, the flash memory cell is programmed by causing hot electron injection to occur in the floating gate 8 in the channel region adjacent to the drain region 4. The electron injection is performed by grounding the source region 3 and the P-type semiconductor substrate 2, applying a high voltage (for example, + 10V) to the control gate electrode Vg, (For example, 5 V to 6 V) in order to generate hot electrons in the cathode 4. When the flash memory cell is programmed according to the voltage application conditions, that is, when a negative charge is sufficiently accumulated in the floating gate 6, the negative (-) charge accumulated in the floating gate 6 The charge serves to increase the threshold voltage of the programmed flash memory cell during a series of read operations.
통상적으로, 독출 동작의 전압 인가 조건은 플래시 메모리 셀의 상기 드레인 영역 (4)에 양의 전압 (예를들면, 1V)을 인가하고, 그것의 콘트롤 게이트 (8)에 소정 전압 (예를들면, 전원 전압 또는 약 4.5V)을 인가하고, 그리고 그것의 소오스 영역 (3)에 0V를 인가하는 것이다. 상기한 조건에 따라 독출 동작이 수행되면, 상기한 핫 일렉트론 인젝션 방법에 의해서 그것의 드레솔드 전압이 높아진, 즉 프로그램된 플래시 메모리 셀은 그것의 드레인 영역 (4)으로부터 그것의 소오스 영역 (3)으로 전류가 주입되는 것이 방지된다. 이때, 상기 프로그램된 플래시 메모리 셀은 오프 (off)되었다고 하며, 그것의 드레솔드 전압은, 통상적으로, 약 6V∼7V 사이의 분포를 갖는다.Typically, the voltage application condition of the read operation is such that a positive voltage (for example, 1 V) is applied to the drain region 4 of the flash memory cell and a predetermined voltage (for example, A power supply voltage or about 4.5 V), and then applying 0 V to its source region 3. When the read operation is performed according to the above-described conditions, the programmed flash memory cell has its drain voltage increased by the hot electron injection method described above, that is, from its drain region 4 to its source region 3 Current is prevented from being injected. At this time, the programmed flash memory cell is said to be off, and its drain voltage is typically between about 6V and 7V.
계속해서, 플래시 메모리 셀의 소거 동작에 의하면, 상기 반도체 기판 (2), 즉 벌크 영역, 에서 상기 콘트롤 게이트 (8)로의 F-N 터널링 (Fowler-Nordheim tunneling)을 발생시킴으로써 메모리 셀은 소거된다. 일반적으로, 상기 F-N 터널링은 음의 고전압 (예를들면, -10V)를 상기 콘트롤 게이트 (8)에 인가하고, 상기 벌크 영역 (2)과 상기 콘트롤 게이트 (8) 사이의 F-N 터널링을 발생시키기 위해 적당한 양의 전압 (예를들면, 5V)을 인가함으로써 이루어진다. 이때, 그것의 드레인 영역 (4)은 소거의 효과를 극대화시키기 위해 고 임피던스 상태 (high impedance state) (예를들면, 플로팅 상태)로 유지된다. 이러한 소거 조건에 따른 전압들을 대응하는 전원 단자들 (Vg), (Vd), (Vs) 및 (Vb)로 인가하면, 상기 콘트롤 게이트 (8)와 상기 벌크 영역 (2) 사이에 강한 전계가 형성된다. 이로인해 상기한 F-N 터널링이 발생되고, 그 결과 프로그램된 셀의 플로팅 게이트 (6) 내의 음의 전하는 그것의 소오스 영역 (3)으로 방출된다.Subsequently, the erase operation of the flash memory cell causes F-N tunneling (F-N tunneling) from the semiconductor substrate 2, that is, the bulk region, to the control gate 8, thereby erasing the memory cell. Generally, the FN tunneling is used to apply a negative high voltage (e.g., -10 V) to the control gate 8 and to generate FN tunneling between the bulk region 2 and the control gate 8 By applying a suitable amount of voltage (for example, 5 V). At this time, its drain region 4 is kept in a high impedance state (for example, a floating state) in order to maximize the effect of erasing. Applying voltages according to such erase conditions to corresponding power terminals Vg, Vd, Vs and Vb creates a strong electric field between the control gate 8 and the bulk region 2 do. This causes the F-N tunneling to occur, so that the negative charge in the floating gate 6 of the programmed cell is discharged into its source region 3.
통상적으로, 상기 F-N 터널링은 6∼7MV/cm의 전계 (electric field)가 상기 절연막 (7) 사이에 형성되었을 때 발생된다. 이는 플로팅 게이트 (6)와 벌크 영역 (2) 사이에 100Å 이하의 상기 얇은 절연막 (7)이 형성되어 있기 때문에 가능하다. 상기 F-N 터널링에 따른 소거 방법에 의해서 음의 전하가 플로팅 게이트 (6)로부터 벌크 영역 (2)으로 방전 (또는 방출)되는 것은, 일련의 독출 동작이 수행되는 동안, 상기 소거된 플래시 메모리 셀의 드레솔드 전압을 낮추는 역할을 한다.Typically, the F-N tunneling occurs when an electric field of 6 to 7 MV / cm is formed between the insulating films 7. This is possible because the thin insulating film 7 of 100 Å or less is formed between the floating gate 6 and the bulk region 2. The negative charge is discharged (or emitted) from the floating gate 6 to the bulk region 2 by the erase method according to the FN tunneling, because the drain of the erased flash memory cell during the series of read operations It serves to lower the solder voltage.
일반적인 플래시 메모리 셀 어레이 구성에 있어서, 각각의 벌크 영역은 메모리 장치의 고집적화를 위해 복수 개의 셀들이 함께 연결되며, 이로인해 상기한 소거 방법에 따라 소거 동작이 수행될 경우 복수 개의 메모리 셀들이 동시에 소거된다. 소거 단위는 각각의 벌크 영역 (2)이 분리된 영역에 따라 결정된다. {예를들면, 64K byte : 이하, 섹터(sector)라 칭한다.} 일련의 독출 동작이 수행되는 동안 상기 소거 동작에 의해 드레솔드 전압이 낮아진 플래시 메모리 셀은 콘트롤 게이트 (8)에 일정 전압을 인가하면, 드레인 영역 (4)으로부터 소오스 영역 (3)으로 전류 통로 (current path)가 형성된다. 이러한 플래시 메모리 셀은 온 (on)되었다고 하며, 그것의 드레솔드 전압은 약 1V∼3V 사이의 분포를 갖는다. 표 1은 플래시 메모리 셀에 대한 프로그램, 소거, 및 독출 동작시 각 전원 단자들 (Vg), (Vd), (Vs) 및 (Vb)에 인가되는 전압 레벨을 보여준다.In a general flash memory cell array configuration, each of the bulk areas is connected together for high integration of the memory device, so that when a cancellation operation is performed according to the above-mentioned erase method, a plurality of memory cells are simultaneously erased . The erase unit is determined according to the area in which each of the bulk areas 2 is separated. (For example, 64 Kbytes: hereinafter referred to as a sector). While a series of read operations are performed, the flash memory cell whose drain threshold voltage is lowered by the erase operation applies a constant voltage to the control gate 8 A current path is formed from the drain region 4 to the source region 3. This flash memory cell is said to be turned on, and its drainsolted voltage has a distribution between about 1V and 3V. Table 1 shows the voltage levels applied to the power supply terminals Vg, Vd, Vs and Vb during programming, erasing and reading operations for the flash memory cell.
[표 1][Table 1]
도 2는 프로그램 동작시 메모리 셀의 상태를 보여주는 도면이다. 일반적으로, 프로그램 동작은 메모리 셀의, 약 5볼트의 전원이 인가된, 드레인 단자에서 접속된 소오스 단자로 흐르는 많은 양의 전류 (예를들면, 400μA)로 인해 한 번에 프로그램될 수 있는 비트 수가 한정되기 때문에, 바이트 단위(즉, 8비트) 또는 워드 단위(즉, 16비트)로 수행된다. 상기한 프로그램 동작시 바이트 단위로 프로그램을 수행할 경우 3.2mA(400μA×8)의 전류가 소모되고, 워드 단위로 프로그램을 수행할 경우 6.4mA(400μA×16)의 전류가 소모된다.2 is a view showing a state of a memory cell during a program operation. In general, the program operation is performed in a memory cell in which the number of bits that can be programmed at one time due to the large amount of current (e.g., 400 [mu] A) flowing from the drain terminal to the connected source terminal, to which about 5 volts of power is applied (I.e., 8 bits) or word units (i.e., 16 bits). 3.2mA (400μA × 8) current is consumed when the program is executed in byte unit, and 6.4mA (400μA × 16) is consumed when the program is executed in word unit.
하지만, 프로그램 동작시 메모리 셀의 드레인 단자에 인가되는 약 5V 정도의 전압을 칩 내부의 펌프 회로를 사용하여 발생시키기 위해 많은 수의 챠아지 펌프 회로(charge pump circuit, 또는 internal drain pump라 칭함)가 요구된다. 이러한 경우, 챠아지 펌프 회로의 수가 증가하면 할수록 칩의 레이 아웃 면적이 증가하게 된다. 그리고, 상기 챠아지 펌프 회로를 구동하기 위한 회로의 동작으로 인해 전원 전압에서 그라운드 전위로 흐르는 많은 양의 액티브 전류(active current)가 발생하게 되는 문제점이 생겼다.However, in order to generate a voltage of about 5 V applied to the drain terminal of the memory cell during the program operation by using the pump circuit inside the chip, a large number of charge pump circuits (also referred to as an internal drain pump) Is required. In this case, as the number of charger pump circuits increases, the layout area of the chip increases. Also, due to the operation of the circuit for driving the charger pump circuit, a large amount of active current flowing from the power supply voltage to the ground potential is generated.
따라서, 이러한 문제점을 해결하기 위해 하나의 워드를 프로그램하기 위해 4-비트 단위로 4번에 걸쳐 프로그램 동작을 수행하는 기술이 AMD(advanced micro devices)사에 의해 96' VLSI circuit의 A 2.7V only 8Mb×16 NOR Flash Memory(p172-p173)라는 제목으로 게재되었다. 그러나, 상기 문헌에 게재된 기술을 사용하여 프로그램 동작을 수행하게 되면 프로그램 성능이 저하되는 문제점이 발생하기 때문에 이를 또 다시 해결하기 위해 AMD사에서는 특별한 프로그램 알고리즘(algorithm)을 제안하였다.Therefore, in order to solve such a problem, a technology for performing a program operation four times in 4-bit units to program one word has been developed by advanced micro devices (AMD) in a 96 VLSI circuit of A 2.7 V only 8 Mb × 16 NOR Flash Memory (p172-p173). However, when the program operation is performed using the techniques disclosed in the above document, the program performance is deteriorated. Therefore, in order to solve this problem again, AMD has proposed a special program algorithm.
도 3을 참조하면, 이러한 프로그램 알고리즘을 이용한 종래의 플래시 메모리 장치의 구성을 보여주는 블럭도가 도시되어 있다. 프로그램 동작에 진입하게 되면 데이터 입력 버퍼들(Dinbuf0)∼(Dinbuf15)은 외부 입출력 핀들 (I/O0)∼(I/O15)에 각각 대응되는 프로그램 데이터 비트들을 저장하며, 상기 데이터 비트들에 의해 적당한 양의 프로그램 전압을 선택된 메모리 셀의 드레인 단자에 인가할 것인지를 결정하게 된다. 상기 데이터 입력 버퍼들 (Dinbuf0)∼(Dinbuf15)은 4 개의 그룹들로 구분된다. 상기 각 그룹들은 프로그램 제어 상태 장치 (program control state machine) (10)에서 발생된 프로그램 활성화 신호들 (S0)∼(S3)에 의해 선택된다.Referring to FIG. 3, a block diagram illustrating a configuration of a conventional flash memory device using such a program algorithm is shown. The data input buffers Dinbuf0 to Dinbuf15 store the program data bits corresponding to the external input / output pins I / O0 to I / O15, respectively, And determines whether to apply a positive program voltage to the drain terminal of the selected memory cell. The data input buffers Dinbuf0 to Dinbuf15 are divided into four groups. The groups are selected by the program activation signals S0 to S3 generated in the program control state machine 10.
또한 세 개의 검출기들 (low byte detector), (high byte detector) 및 (word detector) (12), (14) 및 (16)은 상기 데이터 입력 버퍼들 (Dinbuf0)∼(Dinbuf15)에 저장된 데이터 비트들 중 프로그램될 비트들의 수를 제어하여 프로그램 시간(program time)을 최적화하기 위해 사용된다. 프로그램될 비트의 수가 4 개 또는 그 이하인 경우, 상기 검출기들 (12)∼(16)의 출력 신호들 (4bdetL), (4bdetH) 및 (4bdetW)은 모두 하이 레벨 (high level)로 설정되고, 그렇지 않을 경우 모두 로우 레벨 (low level)로 유지된다.In addition, three (low byte) detectors, (word detectors) 12, (14) and (16) are connected to the data input buffers Dinbuf0 to Dinbuf15 / RTI > is used to control the number of bits to be programmed to optimize the program time. If the number of bits to be programmed is 4 or less, the output signals 4bdetL, 4bdetH and 4bdetW of the detectors 12-16 are all set to high level, All remain at a low level.
도 4를 참조하면, 검출기들 (12), (14) 및 (16)의 출력 신호들 (4bdetL), (4bdetH) 및 (4bdetW)에 대한 개념을 보여주기 위한 도면이 도시되어 있다. 그리고, 도 5는 모든 가능한 워드 프로그램 조건에 따른 프로그램 활성화 신호의 변화를 보여주는 도면이다.4, there is shown a diagram for illustrating the concept of the output signals 4bdetL, 4bdetH, and 4bdetW of the detectors 12, 14, and 16. 5 is a diagram showing changes in the program activation signal according to all possible word program conditions.
상기 프로그램 제어 상태 장치 (10)는 상기 검출기들 (12), (14) 및 (16)의 출력들 (4bdetL), (4bdetH) 및 (4bdetW)을 입력으로하여 프로그램 활성화 신호들 (S0)∼(S3)를 발생한다. 만약, 상기 검출기들 (12)∼(16)의 출력 신호들 (4bdetL), (4bdetH) 및 (4bdetW)이 모두 로우 레벨 (low level)이면 하위 바이트 (low byte)와 상위 바이트 (high byte)에 각각 4 개 이상의 프로그램될 데이터 비트들이 포함되어 있음을 의미한다. 이때, 상기 장치 (10)는 프로그램 활성화 신호 (S0)∼(S3)를 적당한 타이밍 시퀀스 (timing sequence)에 따라 활성화시키게 된다. 그리고, 상기 검출기들 (12), (14) 및 (16)의 출력 신호들 (4bdetL), (4bdetH) 및 (4bdetW)이 하이 레벨이면 하위 바이트와 상위 바이트를 모두 합친 워드의 총 프로그램될 데이터 비트들의 수가 4 개 또는 그 이하라는 것을 의미한다. 이때, 상기 장치 (10)는 (S0)∼(S3)를 동시에 활성화시키게 된다.The program control status device 10 receives the program activation signals S0 to S6 by receiving the outputs 4bdetL, 4bdetH and 4bdetW of the detectors 12, 14, S3. If all of the output signals 4bdetL, 4bdetH and 4bdetW of the detectors 12 to 16 are low level, a low byte and a high byte Each of which includes at least four data bits to be programmed. At this time, the device 10 activates the program activation signals S0 to S3 according to a proper timing sequence. If the output signals 4bdetL, 4bdetH and 4bdetW of the detectors 12, 14 and 16 are at the high level, the sum of the lower byte and the upper byte together, Quot; means that there are four or less. At this time, the device 10 simultaneously activates (S0) to (S3).
또한 챠아지 펌프 회로의 램프-업 시간 (ramp-up time)을 보상하기 위해, 도 5에 도시된 바와같이, 초기 펄스는 4.8μs 정도로 길게 유지되고, 상기 챠아지 펌프 회로의 출력인 프로그램이 가능한 적당한 양의 전압에 도달한 후 다음 펄스는 2.6μs 정도로 유지된다. 즉, 패턴의 형태에 따라 프로그램 펄스는 4.8μs에서 12.6μs까지 변화될 수 있다. 상기의 기술은 3.4μs의 프로그램 검증 시간 (program verify time) 및 다른 오버헤드 시간 (overhead time)을 포함하여 최대 16μs의 프로그램 시간을 가지게 된다. 이와같이, 상기한 종래 기술의 프로램 방법에 의하면, 하위 바이트 (I/O0)∼(I/O7)와 상위 바이트 (I/O8)∼(I/O15)에 적어도 4 개의 프로그램될 데이터 비트들이 포함되는 경우 4 번에 걸쳐 프로그램 동작이 수행되어야 하기 때문에 전체적인 플래시 메모리 장치의 프로그램 성능이 저하된다.In order to compensate for the ramp-up time of the charger pump circuit, the initial pulse is maintained as long as 4.8 mu s as shown in Fig. 5, and the program which is the output of the charger pump circuit After reaching the proper amount of voltage, the next pulse is maintained at about 2.6 μs. That is, the program pulse may vary from 4.8 μs to 12.6 μs depending on the pattern type. The above description has a maximum program time of 16 μs including a program verify time of 3.4 μs and another overhead time. Thus, according to the above-described conventional programming method, at least four data bits to be programmed are included in the lower bytes I / O0 to I / O7 and the upper bytes I / O8 to I / The program operation of the entire flash memory device is deteriorated because the program operation must be performed four times.
따라서 본 발명의 목적은 프로그램 성능이 향상된 플래시 메모리 장치 및 그것의 프로그램 방법을 제공하는 것이다.It is therefore an object of the present invention to provide a flash memory device with improved program performance and a program method thereof.
도 1은 일반적인 플래시 메모리 셀의 구조를 보여주는 단면도;1 is a cross-sectional view showing the structure of a general flash memory cell;
도 2는 프로그램 동작시 메모리 셀의 상태를 보여주는 도면;FIG. 2 illustrates a state of a memory cell during a program operation; FIG.
도 3은 종래의 노어형 플래시 메모리 장치의 구성을 보여주는 블럭도;3 is a block diagram showing a configuration of a conventional NOR flash memory device;
도 4는 도 3의 검출기들의 출력 신호들에 대한 개념을 보여주기 위한 도면;4 is a diagram illustrating a concept of output signals of the detectors of FIG. 3;
도 5는 모든 가능한 워드 프로그램 조건에 따른 프로그램 활성화 신호의 변화를 보여주는 도면;5 is a diagram showing changes in a program activation signal according to all possible word program conditions;
도 6은 본 발명에 따른 노어형 플래시 메모리 장치의 구성을 보여주는 블록도;6 is a block diagram showing the configuration of a NOR flash memory device according to the present invention;
도 7은 도 6의 데이터 입력 버퍼 회로 및 기입 드라이버 회로에 대한 상세한 구성을 보여주는 블럭도;FIG. 7 is a block diagram showing a detailed configuration of the data input buffer circuit and the write driver circuit of FIG. 6; FIG.
도 8은 본 발명의 바람직한 실시예에 따른 데이터 입력 버퍼 회로를 보여주는 회로도;FIG. 8 is a circuit diagram showing a data input buffer circuit according to a preferred embodiment of the present invention; FIG.
도 9A 및 도 9B는 도 6의 프로그램 제어 회로 내의 계수부의 회로 구성을 보여주는 회로도;9A and 9B are circuit diagrams showing a circuit configuration of a coefficient section in the program control circuit of Fig. 6;
도 10은 도 9A의 계수부 내의 하나의 카운터 회로를 보여주는 회로도;FIG. 10 is a circuit diagram showing one counter circuit in the counting portion of FIG. 9A; FIG.
도 11은 도 6의 비교부의 구성을 보여주는 블럭도;11 is a block diagram showing the configuration of the comparison unit of FIG. 6;
도 12는 본 발명에 따른 프로그램 제어 회로의 프로그램 제어 신호 발생부의 구성을 보여주는 블럭도;12 is a block diagram showing a configuration of a program control signal generating unit of the program control circuit according to the present invention;
도 13은 도 12의 플립플롭의 상세 회로를 보여주는 회로도;13 is a circuit diagram showing a detailed circuit of the flip-flop of FIG. 12;
도 14는 본 발명의 바람직한 실시예에 따른 플래시 메모리 장치의 프로그램 방법을 보여주는 흐름도;FIG. 14 is a flow chart showing a programming method of a flash memory device according to a preferred embodiment of the present invention; FIG.
도 15는 본 발명의 바람직한 실시예에 따른 프로그램 동작을 위한 신호들의 타이밍을 보여주는 동작 타이밍도;15 is an operation timing diagram showing the timing of signals for a program operation according to a preferred embodiment of the present invention;
도 16은 종래 및 본 발명에 따른 프로그램 성능을 비교하기 위한 도면,16 is a diagram for comparing program performance according to the related art and the present invention,
*도면의 주요 부분에 대한 부호 설명DESCRIPTION OF REFERENCE NUMERALS
100 : 셀 어레이 110 : 행 및 열 어드레스 버퍼100: cell array 110: row and column address buffer
120 : 행 디코더 130 : 열 디코더120: row decoder 130: column decoder
140 : 열 패스 게이트 회로 150 : 데이터 입력 버퍼 회로140: thermal pass gate circuit 150: data input buffer circuit
160 : 기입 드라이버 회로 170 : 프로그래 활성화 신호 발생 회로160: write driver circuit 170: program activation signal generating circuit
180 : 계수부 190 : 비교부180: counting section 190: comparing section
200 : 프로그래 제어 신호 발생부 210 : 프로그램 제어 회로200: a program control signal generator 210: a program control circuit
상술한 바와같은 목적을 달성하기 위한 본 발명의 일특징에 의하면, 플래시 메모리 장치에 있어서, 복수 개의 비트 라인들과; 복수 개의 메모리 셀들을 포함하는 셀 어레이와; 상기 메모리 셀들 각각은 부유 게이트 및 제어 게이트를 구비하며, 상기 부유 게이트에 전하를 축적하거나 상기 축적된 전하를 방출함으로써 전기적으로 소거 및 프로그램 가능한 트랜지스터들을 포함하며; 래치 신호에 응답하여 외부로부터 인가되는 데이터 비트들을 각각 래치하기 위한 버퍼들과; 프로그램 동작을 수행하기 위한 프로그램 활성화 신호를 발생하는 수단과; 상기 프로그램 활성화 신호에 응답하여 상기 버퍼들에 래치된 상기 데이터 비트들에 해당하는 전압 레벨들로 대응되는 비트 라인들을 구동하기 위한 구동기들과; 발진 신호에 응답하여 상기 래치된 데이터 비트들을 각각 나타내는 입출력 포인터 신호를 순차적으로 발생하는 수단과; 상기 버퍼들은 상기 입출력 포인터 신호에 의해서 그것에 래치된 데이터 비트를 순차적으로 대응되는 구동기로 출력하며; 상기 입출력 포인터 신호에 대응되는 데이터 비트가 프로그램 상태를 나타내는 데이터 비트일 때 숏 펄스 신호를 발생하는 수단 및; 상기 숏 펄스 신호가 일회 프로그램 가능한 수만큼 발생될 때 상기 프로그램 활성화 신호 발생 수단을 활성화시키기 위한 제어 신호 (ONfin)를 발생하는 수단을 포함한다.According to an aspect of the present invention, there is provided a flash memory device including: a plurality of bit lines; A cell array including a plurality of memory cells; Each of the memory cells having a floating gate and a control gate and including electrically erasable and programmable transistors by accumulating charge on the floating gate or discharging the accumulated charge; Buffers for respectively latching data bits applied from the outside in response to a latch signal; Means for generating a program activation signal for performing a program operation; Drivers for driving bit lines corresponding to the voltage levels corresponding to the data bits latched in the buffers in response to the program enable signal; Means for sequentially generating an input / output pointer signal representative of said latched data bits in response to an oscillating signal; The buffers sequentially output the data bits latched in the input / output pointer signal to the corresponding driver; Means for generating a short pulse signal when a data bit corresponding to the input / output pointer signal is a data bit representing a program state; And means for generating a control signal (ON fin ) for activating the program activation signal generating means when the short pulse signal is generated by a one-time programmable number.
이 실시예에 있어서, 상기 제어 신호 발생 수단은 상기 프로그램 활성화 신호가 비활성화될 때 동기된 신호에 의해서 초기화되는 것을 특징으로 한다.In this embodiment, the control signal generating means is initialized by a signal synchronized when the program activation signal is inactivated.
이 실시예에 있어서, 상기 래치 신호는 기입 활성화 신호에 동기된 신호인 것을 특징으로 한다.In this embodiment, the latch signal is a signal synchronized with the write enable signal.
이 실시예에 있어서, 상기 버퍼들 각각은 상기 래치 신호에 응답하여 대응되는 데이터 비트를 래치하기 위한 제 1 래치 및; 상기 입출력 포인터 신호에 응답하여 상기 제 1 래치로부터 상기 데이터 비트를 받아들어서 래치하기 위한 제 2 래치를 포함하는 것을 특징으로 한다.In this embodiment, each of the buffers comprises: a first latch for latching a corresponding data bit in response to the latch signal; And a second latch for receiving and latching the data bit from the first latch in response to the input / output pointer signal.
본 발명의 다른 특징에 의하면, 복수 개의 비트 라인들과; 복수 개의 메모리 셀들을 포함하는 셀 어레이와; 상기 메모리 셀들 각각은 부유 게이트 및 제어 게이트를 구비하며, 상기 부유 게이트에 전하를 축적하거나 상기 축적된 전하를 방출함으로써 전기적으로 소거 및 프로그램 가능한 트랜지스터들을 포함하며; 래치 신호에 응답하여 외부로부터 인가되는 데이터 비트들을 각각 래치하기 위한 버퍼들과; 프로그램 동작을 수행하기 위한 프로그램 활성화 신호를 발생하는 수단과; 상기 프로그램 활성화 신호에 응답하여 상기 버퍼들에 래치된 상기 데이터 비트들에 해당하는 전압 레벨들로 대응되는 비트 라인들을 구동하기 위한 구동기들 및; 상기 버퍼들에 각각 래치된 상기 데이터 비트들을 최하위 비트로부터 프로그램 상태를 나타내는 데이터 비트들의 일회 프로그램 가능한 데이터 비트들이 대응되는 구동기들로 공급된 후 상기 일회 프로그램 가능한 데이터 비트들에 대한 프로그램 동작이 수행되도록 상기 버퍼들 및 상기 프로그램 활성화 신호 발생 수단을 제어하는 수단을 포함한다.According to another aspect of the present invention, there is provided a semiconductor memory device including: a plurality of bit lines; A cell array including a plurality of memory cells; Each of the memory cells having a floating gate and a control gate and including electrically erasable and programmable transistors by accumulating charge on the floating gate or discharging the accumulated charge; Buffers for respectively latching data bits applied from the outside in response to a latch signal; Means for generating a program activation signal for performing a program operation; Drivers for driving bit lines corresponding to the voltage levels corresponding to the data bits latched in the buffers in response to the program enable signal; After the data bits respectively latched in the buffers are supplied from the least significant bit to actuators corresponding to one-time programmable data bits of data bits representing a program state, a program operation for the once programmable data bits is performed Buffers and means for controlling the program activation signal generating means.
이 실시예에 있어서, 상기 프로그램 제어 수단은, 발진 신호에 응답하여 상기 래치된 데이터 비트들을 각각 나타내는 입출력 포인터 신호를 순차적으로 발생하는 수단과; 상기 입출력 포인터 신호에 대응되는 데이터 비트가 프로그램 상태를 나타내는 데이터 비트일 때 숏 펄스 신호를 발생하는 수단 및; 상기 숏 펄스 신호가 일회 프로그램 가능한 수만큼 발생될 때 상기 프로그램 활성화 신호 발생 수단을 활성화시키기 위한 제어 신호 (ONfin)를 발생하는 수단을 구비해서, 상기 버퍼들이 상기 입출력 포인터 신호에 의해서 그것에 래치된 데이터 비트를 순차적으로 대응되는 구동기로 출력하도록 한다.In this embodiment, the program control means comprises: means for sequentially generating an input / output pointer signal each representing the latched data bits in response to an oscillating signal; Means for generating a short pulse signal when a data bit corresponding to the input / output pointer signal is a data bit representing a program state; And means for generating a control signal (ON fin ) for activating the program activation signal generating means when the short pulse signal is generated by a one-time programmable number, wherein the buffers are provided with data So that the bits are sequentially output to the corresponding drivers.
이 실시예에 있어서, 상기 제어 신호 발생 수단은 상기 프로그램 활성화 신호가 비활성화될 때 동기된 신호에 의해서 초기화된다.In this embodiment, the control signal generating means is initialized by a synchronized signal when the program activating signal is inactivated.
이 실시예에 있어서, 상기 래치 신호는 기입 활성화 신호에 동기된 신호이다.In this embodiment, the latch signal is a signal synchronized with the write enable signal.
이 실시예에 있어서, 상기 버퍼들 각각은 상기 래치 신호에 응답하여 대응되는 데이터 비트를 래치하기 위한 제 1 래치 및; 상기 입출력 포인터 신호에 응답하여 상기 제 1 래치로부터 상기 데이터 비트를 받아들어서 래치하기 위한 제 2 래치를 포함한다.In this embodiment, each of the buffers comprises: a first latch for latching a corresponding data bit in response to the latch signal; And a second latch for receiving and latching the data bits from the first latch in response to the input / output pointer signal.
본 발명의 또 다른 특징에 의하면, 복수 개의 비트 라인들과; 복수 개의 메모리 셀들을 포함하는 셀 어레이와; 래치 신호에 응답하여 외부로부터 인가되는 데이터 비트들을 각각 래치하기 위한 버퍼들과; 프로그램 동작을 수행하기 위한 프로그램 활성화 신호를 발생하는 프로그램 활성화 신호 발생 회로와; 상기 프로그램 활성화 신호에 응답하여 상기 버퍼들에 래치된 상기 데이터 비트들에 해당하는 전압 레벨들로 대응되는 비트 라인들을 구동하기 위한 구동기들을 포함하는 플래시 메모리 장치의 프로그램 방법에 있어서, 상기 래치된 데이터 비트들을 각각 나타내는 입출력 포인터 신호를 순차적으로 발생하는 단계와; 상기 입출력 포인터 신호에 응답해서 상기 버퍼들에 래치된 데이터 비트를 대응되는 구동기로 순차적으로 출력하는 단계와; 상기 입출력 포인터 신호에 대응되는 데이터 비트가 프로그램 상태를 나타내는 데이터 비트일 때 숏 펄스 신호를 발생하는 단계와; 상기 숏 펄스 신호가 일회 프로그램 가능한 수만큼 발생될 때 상기 프로그램 활성화 신호 발생 수단을 활성화시키기 위한 제어 신호 (ONfin)를 발생하여 프로그램 동작을 수행하는 단계를 포함한다.According to another aspect of the present invention, there is provided a semiconductor memory device including: a plurality of bit lines; A cell array including a plurality of memory cells; Buffers for respectively latching data bits applied from the outside in response to a latch signal; A program activation signal generating circuit for generating a program activation signal for performing a program operation; And a driver for driving bit lines corresponding to the voltage levels corresponding to the data bits latched in the buffers in response to the program enable signal, the method comprising: Sequentially generating an input / output pointer signal indicating the input / output pointer signal; Sequentially outputting the data bits latched in the buffers to the corresponding driver in response to the input / output pointer signal; Generating a short pulse signal when a data bit corresponding to the input / output pointer signal is a data bit indicating a program state; And generating a control signal (ON fin ) for activating the program activation signal generating means when the number of the short pulse signals is once programmable, thereby performing a program operation.
이와같은 장치 및 방법에 의해서, 데이터 버퍼들에 래치된 데이터 비트들 중 최하위 비트로부터 프로그램 상태의 비트들만이 대응되는 기입 드라이버들로 전달되도록 제어할 수 있다.With such an apparatus and method, it is possible to control so that only the bits of the program state from the least significant bit of the data bits latched in the data buffers are transferred to the corresponding write drivers.
이하 본 발명의 실시예에 따른 참조도면들 도 6 내지 도 16에 의거하여 상세히 설명한다.Reference will now be made in detail to the preferred embodiments of the present invention with reference to the accompanying drawings.
도 6을 참조하면, 본 발명의 신규한 플래시 메모리 장치는 프로그램 제어 회로 (program controlling circuit) (210)를 제공하며, 상기 프로그램 제어 회로 (210)는 버퍼들 (Dinbufi)에 각각 래치된 데이터 비트들 (DINi) 중 최하위 비트로부터 일회 프로그램 가능한 프로그램 상태의 데이터 비트들을 대응되는 구동기들 (WDi)로 공급한 후 상기 일회 프로그램 가능한 데이터 비트들에 대한 프로그램 동작이 수행되도록 상기 버퍼들 (Dinbufi) 및 프로그램 활성화 신호 발생 회로 (170)를 제어하기 위한 제어 신호 (ONfin)를 발생한다. 상기 프로그램 활성화 신호 발생 회로 (170)는 상기 프로그램 제어 신호 (ONfin)에 제어되어서 상기 구동기들 (WDi)을 활성화시키기 위한 프로그래 활성화 신호 (
도 6을 참조하면, 본 발명에 따른 플래시 메모리 장치의 구성을 보여주는 블록도가 도시되어 있다. 본 발명의 플래시 메모리 장치는 메모리 셀 어레이 (memory cell array) (100), 행 및 열 어드레스 버퍼 회로 (row and column address buffer circuit) (110), 행 디코더 (row decoder) (120), 열 디코더 (column decoder) (130), 열 패스 게이트 회로 (Y-pass gate circuit) (140), 데이터 입력 버퍼 회로 (data input buffer circuit) (150), 기입 드라이버 회로 (write driver circuit) (160), 프로그램 활성화 신호 발생 회로 (program enable signal generating circuit) (170), 그리고 프로그램 제어 회로 (program control circuit) (210)을 포함한다.Referring to FIG. 6, a block diagram illustrating a configuration of a flash memory device according to the present invention is shown. The flash memory device of the present invention includes a memory cell array 100, a row and column address buffer circuit 110, a row decoder 120, a column decoder a column decoder 130, a Y-pass gate circuit 140, a data input buffer circuit 150, a write driver circuit 160, A program enable signal generating circuit 170, and a program control circuit 210. [
상기 메모리 셀 어레이 (100), 행 및 열 어드레스 버퍼 회로 (110), 행 디코더 (120), 열 디코더 (130) 및 열 패스 게이트 회로 (140)는 이 분야의 통상적인 지식을 습득한 자들에게 잘 알려져 있는 것으로서, 여기서 그것들에 대한 설명은 생략된다.The memory cell array 100, the row and column address buffer circuit 110, the row decoder 120, the column decoder 130 and the thermal pass gate circuit 140 are well known to those skilled in the art. As is known, descriptions thereof are omitted here.
상기 데이터 입력 버퍼 회로 (150)는 신호 (nDlch)에 응답하여 입출력 핀들(미도시된)을 통해 외부로부터 인가되는 데이터 비트들 (DINi, 여기서 i=0∼15)을 래치한다. 여기서, 상기 신호 (nDlch)는 기입 활성화 신호 (
상기 기입 드라이버 회로 (160)는 상기 데이터 입력 버퍼 회로 (150)로부터 순차적으로 출력된 데이터 비트들 (DINi)을 입력받아 프로그램 활성화 신호 (
상기 프로그램 제어 회로 (210)는 상기 데이터 입력 버퍼들에 각각 래치된 상기 데이터 비트들 (DINi)을 최하위 비트로부터 프로그램 상태를 나타내는 데이터 비트들의 일회 프로그램 가능한 그룹으로 분할하여 상기 그룹의 데이터 비트들에 대응되는 비트 라인들이 상기 데이터 비트들에 각각 해당하는 전압 레벨들로 구동되도록 상기 데이터 입력 버퍼 회로 (150) 및 상기 프로그램 활성화 신호 발생 회로 (170)을 제어한다. 상기 프로그램 제어 회로 (210)은 계수부 (count section) (180), 비교부 (comparating section) (190), 그리고 프로그램 제어 신호 발생부 (program control signal generating section) (200)을 포함한다.The program control circuit 210 divides the data bits DINi latched in the data input buffers into a programmable group of data bits representing a program state from the least significant bit to correspond to the data bits of the group And controls the data input buffer circuit 150 and the program activation signal generation circuit 170 such that bit lines to be programmed are driven at voltage levels corresponding to the data bits. The program control circuit 210 includes a count section 180, a comparating section 190, and a program control signal generating section 200.
상기 계수부 (180)는 발진 신호 (OSC)에 응답하여 상기 입출력 핀들을 각각 나타내기 위한 상기 입출력 포인터 신호 (IOfgi)을 발생하며, 프로그램 동작 모드를 알리는 신호 (
계속해서, 상기 비교부 (190)는 상기 입출력 포인터 신호 (IOfgi)에 대응되는 상기 입출력 버퍼들에 래치된 데이터 비트들 (DINi)과 상기 입출력 포인터 신호 (IOfgi)을 순차적으로 비교하여 상기 데이터 비트들 (DINi)이 프로그램 상태를 나타내는 데이터 비트일 때 숏 펄스 신호 (SRB)를 발생한다. 그리고, 상기 프로그램 제어 신호 발생부 (200)는 상기 숏 펄스 신호 (SRB)가 일회 프로그램 가능한 데이터 비트수(예를들면, 4비트 또는 그 보다 적은 비트)에 해당하는 수만큼 발생될 때 프로그램 동작 수행을 알리는 제어 신호 (ONfin)을 발생한다.Subsequently, the comparison section 190 compares the input and output pointer signal (IO fgi) the data bits (DINi) and the output pointer signal (IO fgi) latched to the output buffer corresponding to the sequentially the data And generates a short pulse signal SRB when the bits DINi are data bits representing a program state. When the short pulse signal SRB is generated by a number corresponding to the number of data bits that can be programmed once (for example, 4 bits or less), the program control signal generator 200 performs a program operation And generates a control signal (ON fin ) indicating the ON state.
그리고, 상기 제어 신호 (ONfin)가 상기 프로그램 활성화 신호 발생 회로 (170)로 인가되면 상기 프로그램 활성화 신호 (
도 7을 참조하면, 도 6의 데이터 입력 버퍼 회로 (150) 및 기입 드라이버 회로 (150)을 좀 더 상세히 설명하기 위한 구성도가 도시되어 있다.Referring to FIG. 7, a configuration diagram for illustrating the data input buffer circuit 150 and the write driver circuit 150 of FIG. 6 in more detail is shown.
도 7을 참조하면, 데이터 입력 버퍼 회로 (150)는 신호 (nDlch)에 의해서 외부로부터의 데이터 비트들 (DINi, i=0∼15)이 입출력 핀들을 통해 인가되는 16 개의 데이터 입력 버퍼들 (Dinbuf0)∼(Dinbuf15)로 구성된다. 그리고, 상기 기입 드라이버 회로 (160)는 상기 데이터 입력 버퍼들 (Dinbuf0)∼(Dinbuf15)에 각각 대응되는 기입 드라이버들 (WDi)로 구성된다. 상기 데이터 입력 버퍼들 (Dinbuf0)∼(Dinbuf15)은 도 6의 프로그램 제어 회로 (210)로부터 출력되는 각각 대응되는 입출력 포인터 신호 (IOfgi)에 의해서 순차적으로 래치된 데이터 비트들 (LDi)을 대응되는 상기 기입 드라이버들 (WDi)로 출력한다. 계속해서, 상기 기입 드라이버들 (WDi)은 도 6의 프로그램 활성화 신호 발생부 (170)로부터의 신호 (
도 8은 본 발명의 바람직한 실시예에 따른 데이터 입력 버퍼 회로를 보여주는 회로도이다. 도 8을 참조하면, 데이터 입력 버퍼 회로 (150)는, 도 7에 도시된 바와같이, 입출력 핀들에 각각 대응되는 복수 개의 데이터 입력 버퍼들 (Dinbufi)로 구성되며, 도 8의 데이터 입력 버퍼 회로 (150)는 데이터 입력 버퍼들 (DinbufI) 중 하나에 해당하는 회로만을 도시하였지만, 나머지 버퍼들 역시 이와 동일한 구성을 갖는다.8 is a circuit diagram showing a data input buffer circuit according to a preferred embodiment of the present invention. Referring to FIG. 8, the data input buffer circuit 150 includes a plurality of data input buffers (Dinbufi) corresponding to input / output pins, as shown in FIG. 7, 150 only illustrate circuits corresponding to one of the data input buffers Dinbuf1, but the remaining buffers have the same configuration.
다시 8을 참조하면, 데이터 입력 버퍼 (Dinbufi)는 대응되는 데이터 비트 (DINi)와 신호 (nCEf)을 입력으로 하는 노어 게이트 (G52), 3 개의 인버터들 (IV27), (IV28) 및 (IV35), 상기 신호 (nDlch)에 제어되고 인버터들 (IV29), (IV30) 및 (IV31)과 전달 게이트 (G53)으로 구성된 제 1 래치 (152), 그리고 신호 (IOfgi)에 제어되고 인버터들 (IV32), (IV33) 및 (IV34)과 전달 게이트 (G54)으로 구성되며 상기 인버터 (IV35)을 통해 대응되는 기입 드라이버 (WDi)에 접속되는 제 2 래치 (154)을 포함한다. 이러한 구성을 갖는 데이터 입력 버퍼 (Dinbufi)는 상기 신호 (nDlch)에 응답하여 외부로부터 인가되는 데이터 비트 (DINi)를 상기 제 1 래치 (152)에 래치한 후, 상기 데이터 비트 (DINi)에 대응되는 입출력 포인터 신호 (IOfgi)가 활성화될 때 상기 제 1 래치 (152)에 저장된 데이터 비트는 상기 인버터 (IV35)를 통해 대응되는 기입 드라이버 (WDi)로 전달된다. 여기서, 상기 신호 (nCEf)는 스탠바이시 전류 소모를 막기 위한 신호로서 인가된다.Referring again to FIG. 8, the data input buffer Dinbufi includes NOR gate G52 having a corresponding data bit DINi and a signal nCE f as input, three inverters IV27, IV28, and IV35 ), to be controlled to the signal (nD lch) inverters (IV29), (IV30) and (IV31), and a transfer gate (G53) to the configured first is controlled to first latch 152, and signal (IOfgi) inverter ( And a second latch 154 formed of a transfer gate G54 and a transfer driver WDi through the inverter IV35. The data input buffer Dinbufi having such a configuration latches the data bit DINi applied from the outside in response to the signal nDlch to the first latch 152 and then outputs the data bit DINi corresponding to the data bit DINi The data bits stored in the first latch 152 are transferred to the corresponding write driver WDi through the inverter IV35 when the input / output pointer signal IOfgi is activated. Here, the signal nCE f is applied as a signal to prevent current consumption during standby.
도 9A 및 도 9B을 참조하면, 도 6의 프로그램 제어 회로 내의 계수부의 회로 구성을 보여주는 회로도가 도시되어 있다. 그리고, 도 10은 도 9A의 계수부 (180) 내의 하나의 카운터 회로를 보여주는 회로도이다. 도 9A 및 도 9B에 도시된 바와같이, 상기 계수부 (180)는 카운터 (182) 및 디코더 (184)로 구성되어 있다.Referring to Figs. 9A and 9B, a circuit diagram showing a circuit configuration of a coefficient section in the program control circuit of Fig. 6 is shown. FIG. 10 is a circuit diagram showing one counter circuit in the counting unit 180 of FIG. 9A. As shown in FIGS. 9A and 9B, the counting unit 180 includes a counter 182 and a decoder 184.
다시 도 9A을 참조하면, 상기 카운터 (182)는 발진 신호 (OSC) 및 그것의 상보 신호 (
상기 카운터 (182)는, 도 10에 도시된 바와같이, 2 개의 낸드 게이트들 (G1) 및 (G2), 4 개의 전달 게이트들 (G3)∼(G6) 및 2 개의 인버터 회로들 (IV1) 및 (IV2)로 구성되어 있다. 이에 대한 동작은 이 분야의 통상적인 지식을 습득한 자들에게 잘 알려져 있기 때문에 그것에 대한 설명은 생략된다.The counter 182 includes two NAND gates G1 and G2 as well as four transfer gates G3 to G6 and two inverter circuits IV1 and G2, (IV2). The operation thereof is well known to those of ordinary skill in the art, so an explanation thereof is omitted.
도 9B을 참조하면, 상기 디코더 (184)는 상기 카운터 (182)로부터 출력된 신호들 (IOp0)∼(IPp3)을 입력받아 입출력 핀들을 각각 나타내기 위한 입출력 포인터 신호 (IOfgi)을 출력한다. 여기서, 상기 신호 (IOfgi)는, 앞서 설명된 바와같이, 상기 발진 신호 (OSC)가 토글되기 이전에 가장 먼저 신호 (IOfg0)가 활성화되고, 이후 계속되는 상기 신호 (OSC)의 토글에 따라 순차적으로 활성화되는 신호들 (IOfg1)∼(IOfg15)을 출력하게 된다. 그리고, 상기 발진 신호 (OSC)는, 도면에는 도시되지 않았지만, 상기 제어 신호 (ONfin)가 발생될 때 홀드 상태로 유지된다.9B, the decoder 184 receives the signals IOp0 through IPp3 output from the counter 182 and outputs an input / output pointer signal IOfgi for indicating the input / output pins, respectively. Here, as described above, the signal IOfgi is activated first before the oscillation signal OSC is toggled, and then sequentially activated according to the following toggle of the signal OSC, And outputs the signals IOfg1 to IOfg15. The oscillation signal OSC is held in a hold state when the control signal ON fin is generated, although it is not shown in the figure.
상기 디코더 (184)는 상기 신호들 (IOfg0)∼(IOfg15)에 대응되도록 인버터들 (IV7)∼(IV22) 및 낸드 게이트들 (G7)∼(G22)과 상기 카운터 (182)로부터 출력된 2진 카운터 신호들 (IOp0)∼(IOp3)을 반전시키기 위한 인버터들 (IV3)∼(IV6)을 이용하여 상기 신호들 (IOp0)∼(IOp3)을 디코딩한 신호들 (IOfg0)∼(IOfg15)을 출력한다. 여기서, 도 9A 및 도 9B에 도시된 회로 구성이 다르게 변형될 수 있음은 이 분야의 통상적인 지식을 습득한 자들에게 자명하다. 따라서, 그것들에 대한 일예로서의 회로 구성은 도 9A 및 도 9B을 참조한다.The decoder 184 outputs the inverters IV7 to IV22 and the NAND gates G7 to G22 corresponding to the signals IOfg0 to IOfg15 and the binary And outputs signals IOfg0 to IOfg15 obtained by decoding the signals IOp0 to IOp3 using inverters IV3 to IV6 for inverting the counter signals IOp0 to IOp3 do. It will be apparent to those skilled in the art that the circuit configurations shown in Figs. 9A and 9B can be modified differently. Therefore, referring to Figs. 9A and 9B, a circuit configuration as an example thereof.
도 11을 참조하면, 도 6의 비교부의 구성을 보여주는 블럭도가 도시되어 있다. 상기 비교부 (190)는 판별부 (192), 펄스 발생부 (194) 및 2 개의 인버터들 (IV23) 및 (IV24)을 포함한다. 상기 판별부 (192)는 상기 데이터 입력 버퍼 회로 (150)로 인가되는 데이터 비트들 (DINi)과 상기 계수부 (180)로부터 출력되며 순차적으로 활성화되는 입출력 포인터 신호 (IOfgi)을 입력받아, 상기 입출력 포인터 신호 (IOfgi)와 상기 데이터 비트 (DINi)을 비교하여 상기 데이터 비트 (DINi)가 프로그램 상태 (여기서, '1'로 정의함.)를 나타내는 데이터 비트일 경우 활성화되는 검출 신호 (Det)를 발생한다. 즉, 신호 (IOfg0)가 활성화될 때 그에 대응되는 데이터 비트 (DIN0)가 프로그램 상태(예를들면, '1')를 나타내는 경우 하이 레벨로 천이되는 상기 신호 (Det)를 출력한다. 그리고, 상기 펄스 발생부 (194)는 상기 검출 신호 (Det)가 로우 레벨에서 하이 레벨로 천이될 때 소정 폭을 갖는 숏 펄스 신호 (SRG)을 발생한다. 계속해서, 상기 숏 펄스 신호 (SPG)는 상기 인버터 (IV23)을 통해 신호 (SRB)로서 출력되고, 상기 인버터들 (IV23) 및 (IV24)을 통해 상기 신호 (SRB)의 상보 신호 (
상기 판별부 (192)는 각각 대응되는 입출력 포인터 신호 (IOfgi)와 데이터 비트 (DINi)을 입력으로 하는 낸드 게이트들 (G23)∼(G38)과, 최하위 비트로부터 4 개씩 하나의 그룹에 해당하는 낸드 게이트들 (G23)∼(G26), (G27)∼(G30), (G31)∼(G34) 및 (G35)∼(G38)을 입력으로 하는 4 개의 낸드 게이트들 (G39)∼(G43)과, 상기 4 개의 낸드 게이트들 (G39)∼(G43) 중 2 개의 낸드 게이트들 (G39)와 (G40) 그리고 (G42)와 (G43)을 입력으로 하는 노어 게이트들 (G41) 및 (G44), 그리고 상기 노어 게이트들 (G41) 및 (G44)의 출력들을 입력으로 하는 하나의 낸드 게이트 (G45)를 포함한다.The determination unit 192 includes NAND gates G23 to G38 for receiving the input / output pointer signal IOfgi and the data bit DINi, Four NAND gates G39 to G43 which are supplied with the gates G23 to G26, G27 to G30, G31 to G34 and G35 to G38 as inputs, NOR gates G41 and G44 which receive two NAND gates G39 and G40 among the four NAND gates G39 to G43 as inputs and G42 and G43, And one NAND gate G45 for receiving the outputs of the NOR gates G41 and G44.
도 12은 본 발명에 따른 프로그램 제어 회로의 프로그램 제어 신호 발생부의 구성을 보여주는 블럭도이다.12 is a block diagram showing the configuration of a program control signal generator of the program control circuit according to the present invention.
도 12을 참조하면, 프로그램 제어 신호 발생부 (200)는 4 개의 플립플롭들 (DFF0)∼(DFF3)로 구성되고, 도 6의 비교부 (190)로부터 출력되는 숏 펄스 신호 (SRB)에 의해서 한단계씩 오른쪽으로 이동하기 위한 쉬프트 레지스터 (shift register : SR)로서 동작한다. 즉, 상기 쉬프트 레지스터 (SR)의 입력이 전원 전압 (Vcc)인 하이 레벨이기 때문에, 상기 레지스터 (SR)는 상기 숏 펄스 신호 (SRB) 및 그것의 상보 신호 (
따라서, 상기 프로그램 동작은 최대 프로그램될 비트들의 수가 4 개로 제한되며, 이는 레이 아웃적으로 제한된 챠아지 펌프 회로의 동작에 의해서도 메모리 셀의 프로그램이 가능함을 의미한다. 이때, 상기 프로그램 동작이 진행되는 동안에는 상기 입출력 포인터 신호 (IOfgi)에 대한 스캐닝 동작은 정지된다. 이후, 상기 쉬프트 레지스터 (SR)의 플립플롭들 (DFF0)∼(DFF3)은 도 6의 프로그램 활성화 신호 발생부 (170)로부터의 신호 (
도 14는 본 발명의 바람직한 실시예에 따른 플래시 메모리 장치의 프로그램 방법을 보여주는 흐름도이다. 도 15는 본 발명의 바람직한 실시예에 따른 프로그램 동작을 위한 신호들의 파형을 보여주는 타이밍도이다. 그리고, 도 16은 종래 및 본 발명에 따른 프로그램 성능을 비교하기 위한 도면이다. 도 14 및 도 15에 의거하여, 본 발명에 따른 프로그램 동작이 참조도면들 도6 내지 도 13 및 도 16을 참조하여 이하 설명된다.14 is a flowchart showing a programming method of a flash memory device according to a preferred embodiment of the present invention. 15 is a timing chart showing waveforms of signals for a program operation according to a preferred embodiment of the present invention. FIG. 16 is a diagram for comparing program performance according to the related art and the present invention. Referring to Figs. 14 and 15, the program operation according to the present invention will be described below with reference to Figs. 6 to 13 and Fig.
외부로부터 프로그램 명령, 즉 기입 활성화 신호 (
계속해서, 다음 단계 (S20)에서는 입출력 포인터, 즉 입출력 핀을 스캐닝하기 시작한다. 즉, 프로그램 제어 회로 (210)의 계수부 (180)는 발진 신호 (OSC)에 응답하여 입출력 핀들을 각각 나타내는 입출력 포인터 신호 (IOfgi)을 순차적으로 활성화시키게 된다. 상기 발진 신호 (OSC)가 토글하기 이전에 최하위 비트에 대응되는 입출력 핀을 나타내는 신호 (IOfg0)가 가장 먼저 활성화된다. 여기서, 상기 신호 (IOfgi)가 순차적으로 활성화됨에 따라 상기 버퍼 (Dinbufi)에 래치된 데이터 비트 (LDi)는 대응되는 데이터 입력 버퍼 (Dinbufi)로부터 대응되는 기입 드라이버 (WDi)로 전달된다.Subsequently, in the next step S20, scanning of the input / output pointers, that is, the input / output pins, starts. That is, the counting unit 180 of the program control circuit 210 sequentially activates the input / output pointer signal IOfgi indicating the input / output pins in response to the oscillation signal OSC. The signal IOfg0 indicating the input / output pin corresponding to the least significant bit is first activated before the oscillation signal OSC is toggled. As the signal IOfgi is sequentially activated, the data bits LDi latched in the buffer Dinbufi are transferred from the corresponding data input buffer Dinbufi to the corresponding write driver WDi.
그 다음에, 상기 단계 (S10)에서 데이터 입력 버퍼들 (Dinbufi)에 래치된 데이터 비트들은 비교 단계 (S30)에서 순차적으로 활성화되는 상기 신호 (IOfgi)과 비교된다. 상기 데이터 비트가 프로그램 상태일 때, 도 6의 비교부 (190)는 숏 펄스 신호 (SRB)을 발생한다.Then, the data bits latched in the data input buffers Dinbufi in the step S10 are compared with the signal IOfgi sequentially activated in the comparison step S30. When the data bit is in a program state, the comparator 190 of FIG. 6 generates a short pulse signal SRB.
이어, 일회 프로그램 가능한 데이터 비트수가 소정 수 (바람직한 실시예의 경우 4)와 같은지를 판별하여 프로그램 가능한 데이터 비트수가 4개이면 다음 단계의 프로그램 동작을 수행하게 된다. 즉, 도 6에서 알 수 있듯이, 상기 데이터 비트수가 4 개이면, 프로그램 제어 신호 발생부 (210)로부터 프로그램 동작을 알리는 제어 신호 (ONfin)가 발생된다. 따라서, 도 6의 프로그램 활성화 신호 발생부 (170)는 상기 신호 (ONfin)에 동기된 프로그램 활성화 신호 (
이후, 상기 프로그램 활성화 신호 (
여기서, 프로그램 동작이 수행되는 동안, 도면에는 도시되지 않았지만, 발진 신호 (OSC)을 발생하는 회로는 상기 신호 (ONfin)에 의해서 홀드 상태로 유지되기 때문에 상기 프로그램 동작 동안에 입출력 포인터 스캐닝 동작 단계 (S20)은 중지된다. 그리고, 상기 프로그램 동작이 완료되면, 도 15에 도시된 바와같이, 비활성화되는 상기 신호 (
이러한 일련의 동작을 통해 프로그램 동작이 수행되면, 도 16에 도시된 바와같이, 종래의 경우 4 번의 프로그램 사이클이 수행되는 반면에 본 발명의 경우 3 번의 프로그램 사이클만이 수행되기 때문에, 프로그램 성능이 향상될 수 있음은 자명하다.When the program operation is performed through such a series of operations, as shown in FIG. 16, four program cycles are performed in the conventional case, whereas in the present invention, only three program cycles are performed. It is obvious that it can be.
상기한 바와같이, 프로그램될 데이터 비트들을 최하위 비트로부터 스캐닝하여 일회 프로그램 가능한 데이터 비트들이 검출되었을 때, 프로그램 동작을 수행함으로써 플래시 메모리 장치의 프로그램 성능을 향상시킬 수 있다.As described above, when the data bits to be programmed are scanned from the least significant bit and the once programmable data bits are detected, the program performance of the flash memory device can be improved by performing the program operation.
Claims (10)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1019970035819A KR100255955B1 (en) | 1997-07-29 | 1997-07-29 | Flash memory device and programmble method thereof |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1019970035819A KR100255955B1 (en) | 1997-07-29 | 1997-07-29 | Flash memory device and programmble method thereof |
Publications (2)
Publication Number | Publication Date |
---|---|
KR19990012428A true KR19990012428A (en) | 1999-02-25 |
KR100255955B1 KR100255955B1 (en) | 2000-05-01 |
Family
ID=19516100
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1019970035819A KR100255955B1 (en) | 1997-07-29 | 1997-07-29 | Flash memory device and programmble method thereof |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR100255955B1 (en) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100729351B1 (en) * | 2004-12-31 | 2007-06-15 | 삼성전자주식회사 | Nand flash memory device and program method thereof |
US7379372B2 (en) | 2004-09-15 | 2008-05-27 | Samsung Electronics Co., Ltd. | Non-volatile memory device with scanning circuit and method |
CN114203242A (en) * | 2021-12-02 | 2022-03-18 | 普冉半导体(上海)股份有限公司 | NOR type flash memory programming circuit |
-
1997
- 1997-07-29 KR KR1019970035819A patent/KR100255955B1/en not_active IP Right Cessation
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7379372B2 (en) | 2004-09-15 | 2008-05-27 | Samsung Electronics Co., Ltd. | Non-volatile memory device with scanning circuit and method |
KR100729351B1 (en) * | 2004-12-31 | 2007-06-15 | 삼성전자주식회사 | Nand flash memory device and program method thereof |
CN114203242A (en) * | 2021-12-02 | 2022-03-18 | 普冉半导体(上海)股份有限公司 | NOR type flash memory programming circuit |
Also Published As
Publication number | Publication date |
---|---|
KR100255955B1 (en) | 2000-05-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR100332001B1 (en) | Semiconductor nonvolatile memory device | |
US5555204A (en) | Non-volatile semiconductor memory device | |
US5299162A (en) | Nonvolatile semiconductor memory device and an optimizing programming method thereof | |
US5532960A (en) | Negative voltage generator for flash EPROM design | |
US8565019B2 (en) | Method for controlling threshold value in nonvolatile semiconductor memory device | |
US5136541A (en) | Programmable read only memory using stacked-gate cell erasable by hole injection | |
EP0558404A2 (en) | Single transistor flash electrically programmable memory | |
US7489566B2 (en) | High voltage generator and related flash memory device | |
US20050265111A1 (en) | High voltage generation and regulation circuit in a memory device | |
KR100287545B1 (en) | Nonvolatile Semiconductor Memory Devices | |
KR100286720B1 (en) | Non-volatile semiconductor memory | |
KR100258574B1 (en) | Semiconductor memory device and its program/erase verifying method | |
US6031774A (en) | Internal power supply voltage generating ciruit and the method for controlling thereof | |
US6477092B2 (en) | Level shifter of nonvolatile semiconductor memory | |
JP4068247B2 (en) | Nonvolatile semiconductor memory device for selecting program operation | |
KR100591773B1 (en) | Nonvolatile semiconductor memory device and voltage generating circuit for the same | |
US6229736B1 (en) | Method of erasing flash memory and substrate voltage supply circuit | |
US6954379B2 (en) | Power-on reset circuit for erasing of split gate flash memory reference cells | |
KR19990012426A (en) | Flash memory device enables stable read operation at low supply voltages | |
KR19990013057A (en) | Read and write method of flash memory device for selectively storing single bit data and multiple bit data on same chip | |
KR19990012428A (en) | Flash memory device and its programming method | |
US5253200A (en) | Electrically erasable and programmable read only memory using stacked-gate cell | |
US6973003B1 (en) | Memory device and method | |
US20050213382A1 (en) | Nonvolatile semiconductor memory and driving method the same | |
US6229735B1 (en) | Burst read mode word line boosting |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20080201 Year of fee payment: 9 |
|
LAPS | Lapse due to unpaid annual fee |