KR19990012428A - Flash memory device and its programming method - Google Patents

Flash memory device and its programming method Download PDF

Info

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
Application number
KR1019970035819A
Other languages
Korean (ko)
Other versions
KR100255955B1 (en
Inventor
박종민
Original Assignee
윤종용
삼성전자 주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 윤종용, 삼성전자 주식회사 filed Critical 윤종용
Priority to KR1019970035819A priority Critical patent/KR100255955B1/en
Publication of KR19990012428A publication Critical patent/KR19990012428A/en
Application granted granted Critical
Publication of KR100255955B1 publication Critical patent/KR100255955B1/en

Links

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/10Programming or data input circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/24Bit-line control circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/34Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
    • G11C16/3436Arrangements for verifying correct programming or erasure
    • G11C16/3454Arrangements for verifying correct programming or for detecting overprogrammed cells
    • G11C16/3459Circuits 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

플래시 메모리 장치 및 그것의 프로그램 방법(flash memory device and programming method thereof)A flash memory device and its programming method (flash memory device and programming method thereof)

본 발명은 불 휘발성 반도체 메모리 장치에 관한 것으로서, 구체적으로는 전기적으로 소거 및 프로그래 가능한 셀들을 구비한 플래시 메모리 장치 및 그것의 프로그램 방법에 관한 것이다.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]

동작 모드Operation mode VgVg VdVd VsVs VbVb 프로그램program +10V+ 10V +5V∼+6V+ 5V to + 6V 0V0V 0V0V 소 거Bog -10V-10V FloatingFloating FloatingFloating +5V+ 5V 독 출Reading +4.5V+ 4.5V +1V+ 1V 0V0V 0V0V

도 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)을 활성화시키기 위한 프로그래 활성화 신호 ( )를 발생하여 프로그램 동작을 수행한다. 이로써, 플래시 메모리 장치의 프로그램 성능이 향상된다.Referring to FIG. 6, the novel flash memory device of the present invention provides a program controlling circuit 210, which receives data bits latched in buffers Dinbufi, (DINi) to the corresponding drivers (WDi) after the data bits of the program state that are once programmable from the least significant bit of the data bits DINi, And generates a control signal (ON fin ) for controlling the signal generating circuit 170. The program activation signal generating circuit 170 is controlled by the program control signal ON fin to generate a program activation signal for activating the drivers WDi ) To perform the program operation. This improves the program performance of the flash memory device.

도 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)는 기입 활성화 신호 ( )에 동기된 신호이다. 즉, 상기 신호 (nDlch)상기 신호 ( )가 활성화되고 소정의 시간이 경과한 후 활성화되고 상기 ( )가 비활성화될 때 비활성화되는 특성을 갖는다. 그리고, 상기 데이터 입력 버퍼 회로 (150)는 상기 프로그램 제어 회로 (210)로부터 출력되는 입출력 포인터 신호 (IOfgi)에 따라 상기 기입 드라이버 회로 (160)로 상기 저장된 데이터 비트들을 순차적으로 출력한다.The data input buffer circuit 150 latches externally applied data bits DINi (where i = 0 to 15) through input / output pins (not shown ) in response to the signal nD1ch. Here, the signal nD lch is a write enable signal ). That is, the signal (nD lch ) Is activated and is activated after a predetermined time has elapsed and the ( Lt; / RTI > is deactivated. The data input buffer circuit 150 sequentially outputs the stored data bits to the write driver circuit 160 according to the input / output pointer signal IO fgi output from the program control circuit 210.

상기 기입 드라이버 회로 (160)는 상기 데이터 입력 버퍼 회로 (150)로부터 순차적으로 출력된 데이터 비트들 (DINi)을 입력받아 프로그램 활성화 신호 ( )에 응답하여 상기 열 패스 게이트 회로 (140)에 의해서 선택되는 비트 라인들을 상기 데이터 비트들에 해당하는 전압 레벨들로 구동한다.The write driver circuit 160 receives the data bits DINi sequentially output from the data input buffer circuit 150, The bit lines selected by the column pass gate circuit 140 are driven to voltage levels corresponding to the data bits.

상기 프로그램 제어 회로 (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)을 발생하며, 프로그램 동작 모드를 알리는 신호 ( )에 의해서 초기화된다. 상기 입출력 포인터 신호 (IOfgi)는 최하위 비트에 관련된 입출력 핀으로부터 상기 발진 신호 (OSC)에 따라 순차적으로 2진 데이터 비트로서 활성화되는 특성을 갖는다. 아울러, 상기 신호 (IOfgi)가 인가되는 상기 데이터 입력 버퍼 회로 (150)는 상기 신호 (IOfgi)가 활성화될 때 대응되는 데이터 입력 버퍼에 래치된 데이터 비트를 대응되는 기입 드라이버로 출력한다. 이에 관한 설명은 이후 설명된다.The counting unit 180 generates the input / output pointer signal IO fgi for indicating the input / output pins in response to the oscillation signal OSC, and outputs a signal ). The input / output pointer signal IO fgi has a characteristic of being sequentially activated as binary data bits according to the oscillation signal OSC from an input / output pin associated with the least significant bit. In addition, the data input buffer circuit 150 to which the signal IO fgi is applied outputs the data bits latched in the corresponding data input buffer to the corresponding write driver when the signal IO fgi is activated. An explanation thereof will be described later.

계속해서, 상기 비교부 (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)로 인가되면 상기 프로그램 활성화 신호 ( )는 활성화되며, 그 결과 상기 신호 ( )에 제어되는 기입 드라이버 회로 (160)는 상기 데이터 입력 버퍼 회로 (150)로부터 출력된 데이터 비트들에 해당하는 전압 레벨로 상기 열 패스 게이트 회로 (140)을 통해 비트 라인들을 구동하게 된다. 계속해서, 상기 데이터 비트들에 대한 프로그램 동작이 완료됨에 따라 상기 신호 ( )가 비활성화될 때 발생되는 신호 ( )에 의해서 상기 프로그램 제어 신호 발생부 (200)는 초기화된다.When the control signal (ON fin ) is applied to the program activation signal generation circuit 170, the program activation signal Is activated, and as a result the signal ) Drives the bit lines through the thermal pass gate circuit 140 at a voltage level corresponding to the data bits output from the data input buffer circuit 150. [ Subsequently, as the program operation for the data bits is completed, the signal ) ≪ / RTI > The program control signal generator 200 is initialized.

도 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)로부터의 신호 ( )에 동시에 활성화됨에 따라 열 패스 게이트 회로 (140)에 의해서 선택된 비트 라인들을 상기 입출력 포인터 신호 (IOfgi)에 의해서 전달된 데이터 비트들에 대응되는 전압 레벨들로 구동한다.7, the data input buffer circuit 150 is a signal (lch nD) 16 of the data input buffer data bits from the outside (DINi, i = 0~15) is applied through the input-output pins by the ( Dinbuf0 to Dinbuf15. The write driver circuit 160 includes write drivers WDi corresponding to the data input buffers Dinbuf0 to Dinbuf15, respectively. The data input buffers Dinbuf0 to Dinbuf15 latch the data bits LDi sequentially latched by the corresponding input / output pointer signals IOfgi output from the program control circuit 210 of FIG. And outputs it to the write drivers WDi. Subsequently, the write drivers WDi receive signals (see FIG. 6) from the program activation signal generator 170 And drives the bit lines selected by the thermal pass gate circuit 140 to the voltage levels corresponding to the data bits transferred by the input / output pointer signal IOfgi.

도 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) 및 그것의 상보 신호 ( )에 동기된 4 개의 카운터들 (182a), (182b), (182c) 및 (182d)로 구성되며, 상기 카운터들 (182a), (182b), (182c) 및 (182d)은 프로그램 모드를 알리는 신호 ( )의 반전된 신호에 의해서 초기화된다. 상기 카운터들 (182a), (182b), (182c) 및 (182d)은 전단의 카운터 출력의 주기를 2배로 출력하도록 구성되어 있다. 이러한 구성에 의해서, 상기 카운터들 (182a), (182b), (182c) 및 (182d)의 병렬 출력들 (IOp0)∼(IPp3)은, 도 15에 도시된 바와같이, 발진 신호 (OSC)을 기준으로 배주기 신호로서 출력된다.Referring again to FIG. 9A, the counter 182 receives the oscillation signal OSC and its complementary signal The counters 182a, 182b, 182c, and 182d are made up of four counters 182a, 182b, 182c, and 182d that are synchronized to the program mode signal ( ) ≪ / RTI > The counters 182a, 182b, 182c, and 182d are configured to output twice the cycle of the counter output of the previous stage. With this arrangement, the parallel outputs IOp0 to IPp3 of the counters 182a, 182b, 182c and 182d are set to the oscillation signal OSC as shown in Fig. And output as a multiplication signal based on the reference.

상기 카운터 (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)의 상보 신호 ( )로서 출력된다.Referring to Fig. 11, there is shown a block diagram showing the configuration of the comparison unit of Fig. The comparator 190 includes a discriminator 192, a pulse generator 194 and two inverters IV23 and IV24. The determination unit 192 receives the data bits DINi applied to the data input buffer circuit 150 and the input / output pointer signal IOfgi sequentially output from the counting unit 180, A pointer signal IOfgi is compared with the data bit DINi to generate a detection signal Det which is activated when the data bit DINi is a data bit representing a program state (herein, defined as '1') do. That is, when the signal IO fg0 is activated, it outputs the signal Det which transits to the high level when the corresponding data bit DIN0 indicates the program state (for example, '1'). The pulse generator 194 generates a short pulse signal SRG having a predetermined width when the detection signal Trans is transitioned from a low level to a high level. Subsequently, the short pulse signal SPG is output as a signal SRB through the inverter IV23, and the complementary signal of the signal SRB through the inverters IV23 and IV24 .

상기 판별부 (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 개의 플립플롭들 (DFF0)∼(DFF3)에 의해서 순차적으로 오른쪽으로 상기 전원 전압 (Vcc)의 하이 레벨을 이동시키게 된다. 따라서, 상기 신호들 (SRB) 및 ( )이 4 번에 걸쳐 펄스로서 입력되면 상기 쉬프트 레지스터 (SR)의 출력 신호 (ONfin)는 로우 레벨에서 하이 레벨로 천이된다. 다시말해서, 외부로부터 입력된 데이터 비트들 (DINi)은 상기 비교부 (190)에서 순차적으로 검사되어 프로그램될 데이터로서 논리적으로 '1'의 수가 4 개가 되면 상기 쉬프트 레지스터 (SR)의 출력 신호 (ONfin)는 하이 레벨이 됨을 알 수 있다. 여기서, 상기 신호 (ONfin)은 도 6의 프로그램 활성화 신호 발생부 (170)로 인가됨으로써 그것의 출력 신호 ( )가 활성화되고, 그 결과 프로그램 동작이 수행된다.12, the program control signal generator 200 includes four flip-flops DFF0 to DFF3 and is controlled by the short pulse signal SRB output from the comparator 190 of FIG. 6 And operates as a shift register (SR) for shifting to the right by one step. That is, since the input of the shift register SR is a high level which is the power supply voltage Vcc, the register SR outputs the short pulse signal SRB and its complementary signal The high level of the power supply voltage Vcc is sequentially shifted to the right by the four flip-flops DFF0 to DFF3 synchronized with the flip-flops DFF0 to DFF3. Therefore, the signals SRB and Is input as a pulse over four times, the output signal (ON fin ) of the shift register SR transitions from a low level to a high level. In other words, the data bits DINi input from the outside are sequentially checked by the comparator 190 and the data to be programmed is written into the shift register SR when the number of logical '1' fin ) is at a high level. Here, the signal ON fin is applied to the program activation signal generator 170 of FIG. 6 so that its output signal Is activated, and as a result, the program operation is performed.

따라서, 상기 프로그램 동작은 최대 프로그램될 비트들의 수가 4 개로 제한되며, 이는 레이 아웃적으로 제한된 챠아지 펌프 회로의 동작에 의해서도 메모리 셀의 프로그램이 가능함을 의미한다. 이때, 상기 프로그램 동작이 진행되는 동안에는 상기 입출력 포인터 신호 (IOfgi)에 대한 스캐닝 동작은 정지된다. 이후, 상기 쉬프트 레지스터 (SR)의 플립플롭들 (DFF0)∼(DFF3)은 도 6의 프로그램 활성화 신호 발생부 (170)로부터의 신호 ( )가 비활성화될 때 발생된 숏 펄스 신호 ( )에 의해서 초기화되며, 도 13에 도시된 바와같이, 각각의 플립플롭들 (DFF0)∼(DFF3)은 도 10의 그것과 동일한 회로 구성을 갖는다.Thus, the program operation is limited to four maximum number of bits to be programmed, which means that the memory cell can be programmed by the operation of the charger pump circuit limited in layout. At this time, while the program operation is being performed, the scanning operation for the input / output pointer signal IO fgi is stopped. Then, the flip-flops DFF0 to DFF3 of the shift register SR receive the signal (see FIG. 6) from the program activation signal generator 170 ) Is deactivated, the short pulse signal ( ). As shown in FIG. 13, each of the flip-flops DFF0 to DFF3 has the same circuit configuration as that of FIG.

도 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.

외부로부터 프로그램 명령, 즉 기입 활성화 신호 ( )가 활성화되면, 상기 신호 ( )가 활성화되고 소정 시간이 경과한 후 활성화되는 신호 (nDlch)에 응답하여 외부로부터 인가되는 데이터 비트들 (DINi)은 각각 대응되는 데이터 입력 버퍼들 (Dinbufi)의 제 1 래치 (152)에 저장된다. 이것은 도 14의 입력 데이터 래치 단계 (S10)에서 수행된다.A program command, that is, a write enable signal ( Is activated, the signal < RTI ID = 0.0 > Is applied to the first latch 152 of the corresponding data input buffers Dinbufi in response to a signal nD1ch which is activated after a predetermined time has elapsed, do. This is performed in the input data latching step S10 of 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)에 동기된 프로그램 활성화 신호 ( )을 발생하게 된다.If the number of programmable data bits is equal to a predetermined number (4 in the preferred embodiment), the program operation of the next step is performed if the number of programmable data bits is four. 6, if the number of data bits is four, a control signal (ON fin ) for notifying the program operation is generated from the program control signal generation unit 210. [ Therefore, the program activation signal generator 170 of FIG. 6 generates the program activation signal (FIG. 6) synchronized with the signal ONfin ).

이후, 상기 프로그램 활성화 신호 ( )가 발생될 때까지 순차적으로 활성화된 상기 신호 (IOfgi)에 제어되는 데이터 입력 버퍼들 (Dinbufi)은 그것에 래치된 데이터 비트들 (LDi)을 대응되는 기입 드라이버들 (WDi)로 출력하기 때문에, 상기 신호 (IOfgi)에 의해서 현재까지 전달된 데이터 비트들에 대응되는 비트 라인들을 프로그램 상태에 대응되는 전압 레벨들로 구동하게 된다. 이로써, 이 분야의 통상적인 지식을 습득한 자들에게 잘 알려진 프로그램 동작이 수행된다.Thereafter, the program activation signal ( Since the data input buffers Dinbufi controlled to the sequentially activated signal IOfgi output the data bits LDi latched thereto to the corresponding write drivers WDi, The bit lines corresponding to the data bits transmitted to the present by the signal IOfgi are driven at the voltage levels corresponding to the program state. Thus, program operations well known to those of ordinary skill in the art are performed.

여기서, 프로그램 동작이 수행되는 동안, 도면에는 도시되지 않았지만, 발진 신호 (OSC)을 발생하는 회로는 상기 신호 (ONfin)에 의해서 홀드 상태로 유지되기 때문에 상기 프로그램 동작 동안에 입출력 포인터 스캐닝 동작 단계 (S20)은 중지된다. 그리고, 상기 프로그램 동작이 완료되면, 도 15에 도시된 바와같이, 비활성화되는 상기 신호 ( )에 동기된 신호 ( )에 의해서 프로그램 제어 신호 발생부 (200)는 초기화된다.Since the circuit generating the oscillation signal OSC is held in the hold state by the signal ON fin during the program operation, although not shown in the figure, the input / output pointer scanning operation step S20 ) Is stopped. When the program operation is completed, as shown in FIG. 15, ) ≪ / RTI > The program control signal generator 200 is initialized.

이러한 일련의 동작을 통해 프로그램 동작이 수행되면, 도 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)

플래시 메모리 장치에 있어서,In a flash memory device, 복수 개의 비트 라인들과;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; 상기 숏 펄스 신호가 일회 프로그램 가능한 수만큼 발생될 때 상기 프로그램 활성화 신호 발생 수단을 활성화시키기 위한 제어 신호 (ONfin)를 발생하는 수단을 포함하는 것을 특징으로 하는 플래시 메모리 장치.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. 제 1 항에 있어서,The method according to claim 1, 상기 제어 신호 발생 수단은 상기 프로그램 활성화 신호가 비활성화될 때 동기된 신호에 의해서 초기화되는 것을 특징으로 하는 플래시 메모리 장치.Wherein the control signal generating means is initialized by a synchronized signal when the program activation signal is inactivated. 제 1 항에 있어서,The method according to claim 1, 상기 래치 신호는 기입 활성화 신호에 동기된 신호인 것을 특징으로 하는 플래시 메모리 장치.Wherein the latch signal is a signal synchronized with the write enable signal. 제 1 항에 있어서,The method according to claim 1, 상기 버퍼들 각각은 상기 래치 신호에 응답하여 대응되는 데이터 비트를 래치하기 위한 제 1 래치 및; 상기 입출력 포인터 신호에 응답하여 상기 제 1 래치로부터 상기 데이터 비트를 받아들어서 래치하기 위한 제 2 래치를 포함하는 것을 특징으로 하는 플래시 메모리 장치.Each of the buffers comprising: 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. 복수 개의 비트 라인들과;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. 제 5 항에 있어서,6. The method of claim 5, 상기 프로그램 제어 수단은,Wherein the program control means comprises: 발진 신호에 응답하여 상기 래치된 데이터 비트들을 각각 나타내는 입출력 포인터 신호를 순차적으로 발생하는 수단과;Means for sequentially generating an input / output pointer signal representative of said 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; 상기 숏 펄스 신호가 일회 프로그램 가능한 수만큼 발생될 때 상기 프로그램 활성화 신호 발생 수단을 활성화시키기 위한 제어 신호 (ONfin)를 발생하는 수단을 구비해서, 상기 버퍼들이 상기 입출력 포인터 신호에 의해서 그것에 래치된 데이터 비트를 순차적으로 대응되는 구동기로 출력하도록 하는 플래시 메모리 장치.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 And sequentially output the bits to a corresponding driver. 제 6 항에 있어서,The method according to claim 6, 상기 제어 신호 발생 수단은 상기 프로그램 활성화 신호가 비활성화될 때 동기된 신호에 의해서 초기화되는 플래시 메모리 장치.Wherein the control signal generating means is initialized by a synchronized signal when the program enable signal is inactivated. 제 6 항에 있어서,The method according to claim 6, 상기 래치 신호는 기입 활성화 신호에 동기된 신호인 플래시 메모리 장치.Wherein the latch signal is a signal synchronized with a write enable signal. 제 6 항에 있어서,The method according to claim 6, 상기 버퍼들 각각은 상기 래치 신호에 응답하여 대응되는 데이터 비트를 래치하기 위한 제 1 래치 및; 상기 입출력 포인터 신호에 응답하여 상기 제 1 래치로부터 상기 데이터 비트를 받아들어서 래치하기 위한 제 2 래치를 포함하는 플래시 메모리 장치.Each of the buffers comprising: 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. 복수 개의 비트 라인들과; 복수 개의 메모리 셀들을 포함하는 셀 어레이와; 래치 신호에 응답하여 외부로부터 인가되는 데이터 비트들을 각각 래치하기 위한 버퍼들과; 프로그램 동작을 수행하기 위한 프로그램 활성화 신호를 발생하는 프로그램 활성화 신호 발생 회로와; 상기 프로그램 활성화 신호에 응답하여 상기 버퍼들에 래치된 상기 데이터 비트들에 해당하는 전압 레벨들로 대응되는 비트 라인들을 구동하기 위한 구동기들을 포함하는 플래시 메모리 장치의 프로그램 방법에 있어서,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, 상기 래치된 데이터 비트들을 각각 나타내는 입출력 포인터 신호를 순차적으로 발생하는 단계와;Sequentially generating input / output pointer signals each representing the latched data bits; 상기 입출력 포인터 신호에 응답해서 상기 버퍼들에 래치된 데이터 비트를 대응되는 구동기로 순차적으로 출력하는 단계와;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; 상기 숏 펄스 신호가 일회 프로그램 가능한 수만큼 발생될 때 상기 프로그램 활성화 신호 발생 수단을 활성화시키기 위한 제어 신호 (ONfin)를 발생하여 프로그램 동작을 수행하는 단계를 포함하는 것을 특징으로 하는 프로그램 방법.Generating a control signal (ON fin ) for activating the program activation signal generating means when the short pulse signal is generated by a number that can be programmed once, thereby performing a program operation.
KR1019970035819A 1997-07-29 1997-07-29 Flash memory device and programmble method thereof KR100255955B1 (en)

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)

* Cited by examiner, † Cited by third party
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

Cited By (3)

* Cited by examiner, † Cited by third party
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