KR100255955B1 - Flash memory device and programmble method thereof - Google Patents

Flash memory device and programmble method thereof Download PDF

Info

Publication number
KR100255955B1
KR100255955B1 KR1019970035819A KR19970035819A KR100255955B1 KR 100255955 B1 KR100255955 B1 KR 100255955B1 KR 1019970035819 A KR1019970035819 A KR 1019970035819A KR 19970035819 A KR19970035819 A KR 19970035819A KR 100255955 B1 KR100255955 B1 KR 100255955B1
Authority
KR
South Korea
Prior art keywords
signal
program
generating
data bits
input
Prior art date
Application number
KR1019970035819A
Other languages
Korean (ko)
Other versions
KR19990012428A (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

Images

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

Abstract

PURPOSE: A flash memory device and a program method thereof are provided to improve a program performance. CONSTITUTION: The flash memory device includes: a plurality of bit lines; a cell array(100) including a plurality of memory cells including electrically erasable programmable transistors comprising a floating gate and a control gate and accumulating charges to the floating gate or emitting the accumulated charges; buffers to latch data bits applied from the external in response to a latch signal; a unit(170) generating a program activation signal to perform a program operation; drivers to drive corresponding bit lines with voltage levels corresponding to the data bits latched in the buffers in response to the program activation signal; a unit(180) generating an input/output point signal sequentially indicating the latched data bits in response to an oscillation signal, where the buffers output data bit sequentially to the driver by the input/output point signal; a unit(190) generating a short pulse signal when a data bit corresponding to the input/output point signal is a data bit indicating a program state; and a unit(200) generating a control signal(ONfin) to activate the program activation signal generation unit when the short pulse signal is generated as many as the number to be programmed at one time.

Description

플래시 메모리 장치 및 그것의 프로그램 방법(flash memory device and programming method thereof)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 program method thereof.

플래시 메모리 장치(flash memory device)는 전기적으로 프로그램 및 소거 동작이 가능한 불 휘발성 반도체 메모리 장치들과 비교할 경우 프로그램 및 읽기 동작에 있어서 속도가 월등히 빠르기 때문에 빠른 처리 속도를 요구하는 사용자들로부터 많은 호응을 받고 있다. 플래시 메모리 장치에는 낸드형 (NAND type)과 노어형 (NOR type) 플래시 메모리 장치로 분류될 수 있다. 이중 상기 노어형 플래시 메모리 장치의 셀 어레이는 하나의 비트 라인에 복수 개의 메모리 셀들이 병렬로 배열되는 구조를 갖는 반면에 상기 낸드형 플래시 메모리 장치의 셀 어레이는 하나의 비트 라인에 복수 개의 메모리 셀들이 직렬로 배열되는 구조를 갖는다.Flash memory devices have received a lot of attention from users who demand high processing speed because they are much faster in program and read operations than nonvolatile semiconductor memory devices that can electrically program and erase. have. Flash memory devices may be classified into NAND type and NOR type flash memory devices. A cell array of the NOR flash memory device has a structure in which a plurality of memory cells are arranged in parallel on one bit line, whereas a cell array of the NAND flash memory device has a plurality of memory cells in one bit line. It has a structure that is arranged as.

도 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)이 접속되어 있다.1, there is shown a cross-sectional view showing the structure of a typical flash memory cell. As shown in Fig. 1, a flash memory cell has a source 3 and a drain 4 formed of N + impurities with a channel region interposed therebetween on a surface of a P-type semiconductor substrate 2, and 100 kHz on the channel region. A floating gate 6 formed with the following thin insulating film 7 interposed therebetween, and an insulating film (for example, an ONO film) 9 on the floating gate 6. In addition, a control gate 8 is formed. Power terminals Vs are applied to the source 3, the drain 4, the control gate 8, and the semiconductor substrate 2 to apply voltages required for program, erase, and read operations, respectively. ), (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 a conventional flash memory program operation, a flash memory cell is programmed by causing hot electron injection to the floating gate 8 in the channel region adjacent to the drain region 4. The electron injection grounds the source region 3 and the P-type semiconductor substrate 2, applies a high high voltage (eg, + 10V) to the control gate electrode Vg, and then drains the drain region. This is achieved by applying a suitable amount of voltage (for example, 5V to 6V) to generate hot electrons in (4). When a flash memory cell is programmed according to this voltage application condition, that is, a negative charge is sufficiently accumulated in the floating gate 6, (-) accumulated (or trapped) in the floating gate 6 The charge increases 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 applies a positive voltage (e.g., 1V) to the drain region 4 of the flash memory cell, and applies a predetermined voltage (e.g., to its control gate 8) Power supply voltage, or about 4.5V), and 0V to its source region 3. When a read operation is performed in accordance with the above conditions, its threshold voltage is increased by the hot electron injection method described above, that is, the programmed flash memory cell is moved from its drain region 4 to its source region 3. Injection of current is prevented. At this time, the programmed flash memory cell is said to be " off ", and its threshold voltage typically has a distribution 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, according to the erase operation of the flash memory cell, the memory cell is erased by generating F-N tunneling (Fowler-Nordheim tunneling) to the control gate 8 in the semiconductor substrate 2, that is, the bulk region. In general, the FN tunneling applies a negative high voltage (e.g., -10V) to the control gate 8 and generates FN tunneling between the bulk region 2 and the control gate 8. By applying an appropriate amount of voltage (eg 5V). At this time, its drain region 4 is maintained in a high impedance state (e.g., a floating state) in order to maximize the effect of the erase. When voltages corresponding to such an erasing condition are applied to corresponding power terminals Vg, Vd, Vs, and Vb, a strong electric field is formed between the control gate 8 and the bulk region 2. do. This results in the F-N tunneling described above, as a result of which negative charge in the floating gate 6 of the programmed cell is released 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-7 MV / cm is formed between the insulating film 7. This is possible because the thin insulating film 7 of 100 kPa or less is formed between the floating gate 6 and the bulk region 2. The discharge (or discharge) of the negative charge from the floating gate 6 to the bulk region 2 by the erase method according to the FN tunneling means that the erase of the erased flash memory cell is performed during a 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 bulk area is connected to a plurality of cells together for high integration of the memory device, so that when the erase operation is performed according to the above-described erase method, the plurality of memory cells are simultaneously erased. . The erasing unit is determined according to the area in which each bulk area 2 is separated. {For example, 64K byte: hereinafter referred to as a sector.} During a series of read operations, a flash memory cell whose threshold voltage is lowered by the erase operation is applied with a constant voltage to the control gate 8. In this case, a current path is formed from the drain region 4 to the source region 3. Such a flash memory cell is said to be "on" and its threshold voltage has a distribution between about 1V and 3V. Table 1 shows the voltage levels applied to the respective power supply terminals Vg, Vd, Vs, and Vb during the program, erase, and read operations of the flash memory cell.

[표 1]TABLE 1

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

도 2는 프로그램 동작시 메모리 셀의 상태를 보여주는 도면이다. 일반적으로, 프로그램 동작은 메모리 셀의, 약 5볼트의 전원이 인가된, 드레인 단자에서 접속된 소오스 단자로 흐르는 많은 양의 전류 (예를들면, 400μA)로 인해 한 번에 프로그램될 수 있는 비트 수가 한정되기 때문에, 바이트 단위(즉, 8비트) 또는 워드 단위(즉, 16비트)로 수행된다. 상기한 프로그램 동작시 바이트 단위로 프로그램을 수행할 경우 3.2mA(400μA×8)의 전류가 소모되고, 워드 단위로 프로그램을 수행할 경우 6.4mA(400μA×16)의 전류가 소모된다.2 is a diagram illustrating a state of a memory cell during a program operation. In general, program operation results in a large number of bits that can be programmed at one time due to the large amount of current (eg 400 μA) flowing from the drain terminal to the connected source terminal to which the memory cell is powered by about 5 volts. Because it is limited, it is performed in byte units (ie 8 bits) or word units (ie 16 bits). In the above program operation, 3.2 mA (400 μA × 8) current is consumed when the program is executed in byte unit, and 6.4 mA (400 μA × 16) current is consumed when the program is executed in the word unit.

하지만, 프로그램 동작시 메모리 셀의 드레인 단자에 인가되는 약 5V 정도의 전압을 칩 내부의 펌프 회로를 사용하여 발생시키기 위해 많은 수의 챠아지 펌프 회로(charge pump circuit, 또는 internal drain pump라 칭함)가 요구된다. 이러한 경우, 챠아지 펌프 회로의 수가 증가하면 할수록 칩의 레이 아웃 면적이 증가하게 된다. 그리고, 상기 챠아지 펌프 회로를 구동하기 위한 회로의 동작으로 인해 전원 전압에서 그라운드 전위로 흐르는 많은 양의 액티브 전류(active current)가 발생하게 되는 문제점이 생겼다.However, in order to generate a voltage of about 5V applied to the drain terminal of the memory cell by using the pump circuit inside the chip during the program operation, a large number of charge pump circuits (called an internal drain pump) are used. Required. In this case, as the number of charge pump circuits increases, the layout area of the chip increases. The operation of the circuit for driving the charge pump circuit causes a large amount of active current flowing from the power supply voltage to the ground potential.

따라서, 이러한 문제점을 해결하기 위해 하나의 워드를 프로그램하기 위해 4-비트 단위로 4번에 걸쳐 프로그램 동작을 수행하는 기술이 AMD(advanced micro devices)사에 의해 96' VLSI circuit의 "A 2.7V only 8Mb×16 NOR Flash Memory"(p172-p173)라는 제목으로 게재되었다. 그러나, 상기 문헌에 게재된 기술을 사용하여 프로그램 동작을 수행하게 되면 프로그램 성능이 저하되는 문제점이 발생하기 때문에 이를 또 다시 해결하기 위해 AMD사에서는 특별한 프로그램 알고리즘(algorithm)을 제안하였다.Therefore, to solve this problem, the technique of performing program operation four times in 4-bit units in order to program one word is described by AMD (advanced micro devices), which uses "A 2.7V only" of 96 'VLSI circuit. 8Mb × 16 NOR Flash Memory ”(p172-p173). However, when the program operation is performed using the technique disclosed in the above document, a problem occurs that the program performance is degraded. Thus, AMD has proposed a special program algorithm to solve the problem again.

도 3을 참조하면, 이러한 프로그램 알고리즘을 이용한 종래의 플래시 메모리 장치의 구성을 보여주는 블럭도가 도시되어 있다. 프로그램 동작에 진입하게 되면 데이터 입력 버퍼들(Dinbuf0)∼(Dinbuf15)은 외부 입출력 핀들 (I/O0)∼(I/O15)에 각각 대응되는 프로그램 데이터 비트들을 저장하며, 상기 데이터 비트들에 의해 적당한 양의 프로그램 전압을 선택된 메모리 셀의 드레인 단자에 인가할 것인지를 결정하게 된다. 상기 데이터 입력 버퍼들 (Dinbuf0)∼(Dinbuf15)은 4 개의 그룹들로 구분된다. 상기 각 그룹들은 프로그램 제어 상태 장치 (program control state machine) (10)에서 발생된 프로그램 활성화 신호들 (S0)∼(S3)에 의해 선택된다.3, there is shown a block diagram showing the configuration of a conventional flash memory device using such a program algorithm. When entering a program operation, the data input buffers Dinbuf0 to Dinbuf15 store program data bits corresponding to the external input / output pins I / O0 to I / O15, respectively. It is determined 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. Each of these groups is selected by program activation signals S0-S3 generated in a 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)로 유지된다.Also, three detectors (low byte detector), (high byte detector) and (word detector) 12, 14 and 16 are data bits stored in the data input buffers Dinbuf0 to Dinbuf15. It is used to optimize the program time by controlling the number of bits to be programmed. If the number of bits to be programmed is four or less, the output signals 4bdetL, 4bdetH and 4bdetW of the detectors 12 to 16 are all set to a high level, otherwise If not, they are all kept at low level.

도 4를 참조하면, 검출기들 (12), (14) 및 (16)의 출력 신호들 (4bdetL), (4bdetH) 및 (4bdetW)에 대한 개념을 보여주기 위한 도면이 도시되어 있다. 그리고, 도 5는 모든 가능한 워드 프로그램 조건에 따른 프로그램 활성화 신호의 변화를 보여주는 도면이다.Referring to Fig. 4, there is shown a diagram to illustrate the concept of output signals 4bdetL, 4bdetH and 4bdetW of detectors 12, 14 and 16. 5 is a diagram showing the change of 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 state device 10 receives the outputs 4bdetL, 4bdetH, and 4bdetW of the detectors 12, 14, and 16 as inputs, and activates the program activation signals S0 to (4). S3) occurs. If the output signals 4bdetL, 4bdetH and 4bdetW of the detectors 12 to 16 are all at the low level, they are stored in the low byte and the high byte. It means that each contains four or more data bits to be programmed. At this time, the apparatus 10 activates the program activation signals S0 to S3 according to an appropriate timing sequence. And if the output signals 4bdetL, 4bdetH, and 4bdetW of the detectors 12, 14, and 16 are at high level, the total data bits to be programmed of the word in which both the lower byte and the upper byte are added together; Means four or less. At this time, the device 10 activates (S0) to (S3) simultaneously.

또한 챠아지 펌프 회로의 램프-업 시간 (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 addition, to compensate for the ramp-up time of the charge pump circuit, as shown in FIG. 5, the initial pulse is maintained as long as 4.8 μs, and is programmable as the output of the charge pump circuit. After reaching the right amount of voltage, the next pulse is held at 2.6µs. That is, the program pulse can vary from 4.8 μs to 12.6 μs depending on the shape of the pattern. The above technique has a program time of up to 16 μs, including a program verify time of 3.4 μs and other overhead time. As described above, according to the conventional program method, at least four data bits to be programmed are included in the lower byte (I / O0) to (I / O7) and the upper byte (I / O8) to (I / O15). If the program operation is performed four times, the overall program performance of the flash memory device is degraded.

따라서 본 발명의 목적은 프로그램 성능이 향상된 플래시 메모리 장치 및 그것의 프로그램 방법을 제공하는 것이다.It is therefore an object of the present invention to provide a flash memory device having improved program performance and a program method thereof.

도 1은 일반적인 플래시 메모리 셀의 구조를 보여주는 단면도;1 is a cross-sectional view showing the structure of a typical flash memory cell;

도 2는 프로그램 동작시 메모리 셀의 상태를 보여주는 도면;2 illustrates a state of a memory cell during a program operation;

도 3은 종래의 노어형 플래시 메모리 장치의 구성을 보여주는 블럭도;3 is a block diagram showing the 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 shows a change in program activation signal according to all possible word program conditions;

도 6은 본 발명에 따른 노어형 플래시 메모리 장치의 구성을 보여주는 블록도;6 is a block diagram showing a configuration of a NOR flash memory device according to the present invention;

도 7은 도 6의 데이터 입력 버퍼 회로 및 기입 드라이버 회로에 대한 상세한 구성을 보여주는 블럭도;7 is a block diagram showing a detailed configuration of the data input buffer circuit and the write driver circuit of FIG.

도 8은 본 발명의 바람직한 실시예에 따른 데이터 입력 버퍼 회로를 보여주는 회로도;8 is a circuit diagram showing a data input buffer circuit according to a preferred embodiment of the present invention;

도 9A 및 도 9B는 도 6의 프로그램 제어 회로 내의 계수부의 회로 구성을 보여주는 회로도;9A and 9B are circuit diagrams showing a circuit configuration of a counting unit in the program control circuit of Fig. 6;

도 10은 도 9A의 계수부 내의 하나의 카운터 회로를 보여주는 회로도;10 is a circuit diagram showing one counter circuit in the counter portion of FIG. 9A;

도 11은 도 6의 비교부의 구성을 보여주는 블럭도;11 is a block diagram showing a configuration of a comparison unit of FIG. 6;

도 12는 본 발명에 따른 프로그램 제어 회로의 프로그램 제어 신호 발생부의 구성을 보여주는 블럭도;12 is a block diagram showing a configuration of a program control signal generator of a 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.

도 14는 본 발명의 바람직한 실시예에 따른 플래시 메모리 장치의 프로그램 방법을 보여주는 흐름도;14 is a flowchart showing a program method of a flash memory device according to a preferred embodiment of the present invention;

도 15는 본 발명의 바람직한 실시예에 따른 프로그램 동작을 위한 신호들의 타이밍을 보여주는 동작 타이밍도;15 is an operation timing diagram showing timing of signals for a program operation according to a preferred embodiment of the present invention;

도 16은 종래 및 본 발명에 따른 프로그램 성능을 비교하기 위한 도면,16 is a view for comparing the program performance according to the prior art and the present invention,

*도면의 주요 부분에 대한 부호 설명* Explanation of symbols on the main parts of the drawings

100 : 셀 어레이 110 : 행 및 열 어드레스 버퍼100: cell array 110: row and column address buffer

120 : 행 디코더 130 : 열 디코더120: row decoder 130: column decoder

140 : 열 패스 게이트 회로 150 : 데이터 입력 버퍼 회로140: column pass gate circuit 150: data input buffer circuit

160 : 기입 드라이버 회로 170 : 프로그래 활성화 신호 발생 회로160: write driver circuit 170: program activation signal generation circuit

180 : 계수부 190 : 비교부180: counter 190: comparison

200 : 프로그래 제어 신호 발생부 210 : 프로그램 제어 회로200: program control signal generator 210: program control circuit

상술한 바와같은 목적을 달성하기 위한 본 발명의 일특징에 의하면, 플래시 메모리 장치에 있어서, 복수 개의 비트 라인들과; 복수 개의 메모리 셀들을 포함하는 셀 어레이와; 상기 메모리 셀들 각각은 부유 게이트 및 제어 게이트를 구비하며, 상기 부유 게이트에 전하를 축적하거나 상기 축적된 전하를 방출함으로써 전기적으로 소거 및 프로그램 가능한 트랜지스터들을 포함하며; 래치 신호에 응답하여 외부로부터 인가되는 데이터 비트들을 각각 래치하기 위한 버퍼들과; 프로그램 동작을 수행하기 위한 프로그램 활성화 신호를 발생하는 수단과; 상기 프로그램 활성화 신호에 응답하여 상기 버퍼들에 래치된 상기 데이터 비트들에 해당하는 전압 레벨들로 대응되는 비트 라인들을 구동하기 위한 구동기들과; 발진 신호에 응답하여 상기 래치된 데이터 비트들을 각각 나타내는 입출력 포인터 신호를 순차적으로 발생하는 수단과; 상기 버퍼들은 상기 입출력 포인터 신호에 의해서 그것에 래치된 데이터 비트를 순차적으로 대응되는 구동기로 출력하며; 상기 입출력 포인터 신호에 대응되는 데이터 비트가 프로그램 상태를 나타내는 데이터 비트일 때 숏 펄스 신호를 발생하는 수단 및; 상기 숏 펄스 신호가 일회 프로그램 가능한 수만큼 발생될 때 상기 프로그램 활성화 신호 발생 수단을 활성화시키기 위한 제어 신호 (ONfin)를 발생하는 수단을 포함한다.According to one aspect of the present invention for achieving the above object, a flash memory device comprising: a plurality of bit lines; A cell array including a plurality of memory cells; Each of the memory cells has a floating gate and a control gate, and includes transistors electrically erasable and programmable by accumulating charge or releasing the accumulated charge in the floating gate; Buffers for respectively latching data bits applied from outside in response to the latch signal; Means for generating a program activation signal for performing a program operation; Drivers for driving bit lines corresponding to voltage levels corresponding to the data bits latched in the buffers in response to the program activation signal; Means for sequentially generating an input / output pointer signal representing each of the latched data bits in response to an oscillation signal; The buffers sequentially output data bits latched thereto by the input / output pointer signal to corresponding drivers; Means for generating a short pulse signal when the data bit corresponding to the input / output pointer signal is a data bit indicating a program state; Means for generating a control signal (ON fin ) for activating said program activation signal generating means when said short pulse signal is generated by one programmable number.

이 실시예에 있어서, 상기 제어 신호 발생 수단은 상기 프로그램 활성화 신호가 비활성화될 때 동기된 신호에 의해서 초기화되는 것을 특징으로 한다.In this embodiment, the control signal generating means is initialized by a synchronized signal when the program activation signal is deactivated.

이 실시예에 있어서, 상기 래치 신호는 기입 활성화 신호에 동기된 신호인 것을 특징으로 한다.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 feature of the invention, a plurality of bit lines; A cell array including a plurality of memory cells; Each of the memory cells has a floating gate and a control gate, and includes transistors electrically erasable and programmable by accumulating charge or releasing the accumulated charge in the floating gate; Buffers for respectively latching data bits applied from outside in response to the latch signal; Means for generating a program activation signal for performing a program operation; Drivers for driving bit lines corresponding to voltage levels corresponding to the data bits latched in the buffers in response to the program activation signal; The program operation for the one programmable data bits is performed after the one programmable data bits of the data bits representing the program state from the least significant bit are supplied to the corresponding drivers from the least significant bits respectively. Means for controlling buffers and means for generating said program activation signal.

이 실시예에 있어서, 상기 프로그램 제어 수단은, 발진 신호에 응답하여 상기 래치된 데이터 비트들을 각각 나타내는 입출력 포인터 신호를 순차적으로 발생하는 수단과; 상기 입출력 포인터 신호에 대응되는 데이터 비트가 프로그램 상태를 나타내는 데이터 비트일 때 숏 펄스 신호를 발생하는 수단 및; 상기 숏 펄스 신호가 일회 프로그램 가능한 수만큼 발생될 때 상기 프로그램 활성화 신호 발생 수단을 활성화시키기 위한 제어 신호 (ONfin)를 발생하는 수단을 구비해서, 상기 버퍼들이 상기 입출력 포인터 신호에 의해서 그것에 래치된 데이터 비트를 순차적으로 대응되는 구동기로 출력하도록 한다.In this embodiment, the program control means comprises: means for sequentially generating an input / output pointer signal representing each of the latched data bits in response to an oscillation signal; Means for generating a short pulse signal when the data bit corresponding to the input / output pointer signal is a data bit indicating a program state; Means for generating a control signal (ON fin ) for activating said program activation signal generating means when said short pulse signal is generated by one programmable number, so that said buffers are data latched to it by said input / output pointer signal; The bits are sequentially output to the corresponding driver.

이 실시예에 있어서, 상기 제어 신호 발생 수단은 상기 프로그램 활성화 신호가 비활성화될 때 동기된 신호에 의해서 초기화된다.In this embodiment, the control signal generating means is initialized by a signal synchronized when the program activation signal is deactivated.

이 실시예에 있어서, 상기 래치 신호는 기입 활성화 신호에 동기된 신호이다.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.

본 발명의 또 다른 특징에 의하면, 복수 개의 비트 라인들과; 복수 개의 메모리 셀들을 포함하는 셀 어레이와; 래치 신호에 응답하여 외부로부터 인가되는 데이터 비트들을 각각 래치하기 위한 버퍼들과; 프로그램 동작을 수행하기 위한 프로그램 활성화 신호를 발생하는 프로그램 활성화 신호 발생 회로와; 상기 프로그램 활성화 신호에 응답하여 상기 버퍼들에 래치된 상기 데이터 비트들에 해당하는 전압 레벨들로 대응되는 비트 라인들을 구동하기 위한 구동기들을 포함하는 플래시 메모리 장치의 프로그램 방법에 있어서, 상기 래치된 데이터 비트들을 각각 나타내는 입출력 포인터 신호를 순차적으로 발생하는 단계와; 상기 입출력 포인터 신호에 응답해서 상기 버퍼들에 래치된 데이터 비트를 대응되는 구동기로 순차적으로 출력하는 단계와; 상기 입출력 포인터 신호에 대응되는 데이터 비트가 프로그램 상태를 나타내는 데이터 비트일 때 숏 펄스 신호를 발생하는 단계와; 상기 숏 펄스 신호가 일회 프로그램 가능한 수만큼 발생될 때 상기 프로그램 활성화 신호 발생 수단을 활성화시키기 위한 제어 신호 (ONfin)를 발생하여 프로그램 동작을 수행하는 단계를 포함한다.According to another feature of the invention, a plurality of bit lines; A cell array including a plurality of memory cells; Buffers for respectively latching data bits applied from outside in response to the latch signal; A program activation signal generation circuit for generating a program activation signal for performing a program operation; 17. A method of programming a flash memory device comprising drivers for driving bit lines corresponding to voltage levels corresponding to the data bits latched in the buffers in response to the program activation signal. Sequentially generating input and output pointer signals respectively representing the signals; Sequentially outputting data bits latched in the buffers to corresponding drivers in response to the input / output pointer signal; Generating a short pulse signal when the 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 short pulse signal is generated by one programmable number.

이와같은 장치 및 방법에 의해서, 데이터 버퍼들에 래치된 데이터 비트들 중 최하위 비트로부터 프로그램 상태의 비트들만이 대응되는 기입 드라이버들로 전달되도록 제어할 수 있다.By such an apparatus and method, it is possible to control that only the bits of the program state from the least significant of the data bits latched in the data buffers are transferred to the corresponding write drivers.

이하 본 발명의 실시예에 따른 참조도면들 도 6 내지 도 16에 의거하여 상세히 설명한다.Reference drawings according to embodiments of the present invention will be described in detail with reference to FIGS. 6 to 16.

도 6을 참조하면, 본 발명의 신규한 플래시 메모리 장치는 프로그램 제어 회로 (program controlling circuit) (210)를 제공하며, 상기 프로그램 제어 회로 (210)는 버퍼들 (Dinbufi)에 각각 래치된 데이터 비트들 (DINi) 중 최하위 비트로부터 일회 프로그램 가능한 프로그램 상태의 데이터 비트들을 대응되는 구동기들 (WDi)로 공급한 후 상기 일회 프로그램 가능한 데이터 비트들에 대한 프로그램 동작이 수행되도록 상기 버퍼들 (Dinbufi) 및 프로그램 활성화 신호 발생 회로 (170)를 제어하기 위한 제어 신호 (ONfin)를 발생한다. 상기 프로그램 활성화 신호 발생 회로 (170)는 상기 프로그램 제어 신호 (ONfin)에 제어되어서 상기 구동기들 (WDi)을 활성화시키기 위한 프로그래 활성화 신호 (

Figure 1019970035819_B1_M0001
)를 발생하여 프로그램 동작을 수행한다. 이로써, 플래시 메모리 장치의 프로그램 성능이 향상된다.Referring to FIG. 6, the novel flash memory device of the present invention provides a program controlling circuit 210, which program bits are respectively latched in buffers (Dinbufi). The buffers (Dinbufi) and program activation are performed such that a program operation is performed on the one-time programmable data bits after supplying data bits of a one-time programmable state from the least significant bit of DINi to corresponding drivers WDi. A control signal ON fin for controlling the signal generation circuit 170 is generated. The program activation signal generation circuit 170 is controlled by the program control signal ON fin to activate the program activation signal (WDi) for activating the drivers WDi.
Figure 1019970035819_B1_M0001
To execute 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)을 포함한다.6, there is shown a block diagram showing the configuration of a flash memory device according to the present invention. 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 ( column decoder 130, Y-pass gate circuit 140, data input buffer circuit 150, write driver circuit 160, program activation 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 column pass gate circuit 140 are well known to those who have acquired the general knowledge in this field. As is known, the description of them is omitted here.

상기 데이터 입력 버퍼 회로 (150)는 신호 (nDlch)에 응답하여 입출력 핀들(미도시된)을 통해 외부로부터 인가되는 데이터 비트들 (DINi, 여기서 i=0∼15)을 래치한다. 여기서, 상기 신호 (nDlch)는 기입 활성화 신호 (

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

Figure 1019970035819_B1_M0001
)에 응답하여 상기 열 패스 게이트 회로 (140)에 의해서 선택되는 비트 라인들을 상기 데이터 비트들에 해당하는 전압 레벨들로 구동한다.The write driver circuit 160 receives data bits DINi sequentially output from the data input buffer circuit 150 and receives a program activation signal (
Figure 1019970035819_B1_M0001
Drive the bit lines selected by the column pass gate circuit 140 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 one programmable group of data bits representing a program state from the least significant bit to correspond to the data bits of the group. The data input buffer circuit 150 and the program activation signal generation circuit 170 are controlled so that the bit lines 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)을 발생하며, 프로그램 동작 모드를 알리는 신호 (

Figure 1019970035819_B1_M0006
)에 의해서 초기화된다. 상기 입출력 포인터 신호 (IOfgi)는 최하위 비트에 관련된 입출력 핀으로부터 상기 발진 신호 (OSC)에 따라 순차적으로 2진 데이터 비트로서 활성화되는 특성을 갖는다. 아울러, 상기 신호 (IOfgi)가 인가되는 상기 데이터 입력 버퍼 회로 (150)는 상기 신호 (IOfgi)가 활성화될 때 대응되는 데이터 입력 버퍼에 래치된 데이터 비트를 대응되는 기입 드라이버로 출력한다. 이에 관한 설명은 이후 설명된다.The counting unit 180 generates the input / output pointer signal IO fgi for indicating the input / output pins, respectively, in response to the oscillation signal OSC, and outputs a signal indicating a program operation mode (
Figure 1019970035819_B1_M0006
Is initialized by The input / output pointer signal IO fgi has a characteristic of being activated as a binary data bit sequentially in accordance with the oscillation signal OSC from the 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 data bits latched to the corresponding data input buffer to the corresponding write driver when the signal IO fgi is activated. Description of this 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 The short pulse signal SRB is generated when the bits DINi are data bits representing a program state. The program control signal generator 200 performs a program operation when the short pulse signal SRB is generated by a number corresponding to the number of programmable data bits (eg, 4 bits or less) once. Generate a control signal (ON fin ) that informs you.

그리고, 상기 제어 신호 (ONfin)가 상기 프로그램 활성화 신호 발생 회로 (170)로 인가되면 상기 프로그램 활성화 신호 (

Figure 1019970035819_B1_M0001
)는 활성화되며, 그 결과 상기 신호 (
Figure 1019970035819_B1_M0001
)에 제어되는 기입 드라이버 회로 (160)는 상기 데이터 입력 버퍼 회로 (150)로부터 출력된 데이터 비트들에 해당하는 전압 레벨로 상기 열 패스 게이트 회로 (140)을 통해 비트 라인들을 구동하게 된다. 계속해서, 상기 데이터 비트들에 대한 프로그램 동작이 완료됨에 따라 상기 신호 (
Figure 1019970035819_B1_M0001
)가 비활성화될 때 발생되는 신호 (
Figure 1019970035819_B1_M0010
)에 의해서 상기 프로그램 제어 신호 발생부 (200)는 초기화된다.When the control signal ON fin is applied to the program activation signal generating circuit 170, the program activation signal (
Figure 1019970035819_B1_M0001
) Is activated, resulting in the signal (
Figure 1019970035819_B1_M0001
The write driver circuit 160, which is controlled by the < RTI ID = 0.0 > 1, < / RTI > Subsequently, as the program operation on the data bits is completed, the signal (
Figure 1019970035819_B1_M0001
Signal that is generated when) is deactivated
Figure 1019970035819_B1_M0010
The program control signal generator 200 is initialized.

도 7을 참조하면, 도 6의 데이터 입력 버퍼 회로 (150) 및 기입 드라이버 회로 (150)을 좀 더 상세히 설명하기 위한 구성도가 도시되어 있다.Referring to FIG. 7, a configuration diagram for describing 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)로부터의 신호 (

Figure 1019970035819_B1_M0001
)에 동시에 활성화됨에 따라 열 패스 게이트 회로 (140)에 의해서 선택된 비트 라인들을 상기 입출력 포인터 신호 (IOfgi)에 의해서 전달된 데이터 비트들에 대응되는 전압 레벨들로 구동한다.Referring to FIG. 7, the data input buffer circuit 150 includes 16 data input buffers in which data bits DINi, i = 0 to 15 from the outside are applied through input / output pins by a signal nD lch . 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 correspond to the data bits LDi sequentially latched by corresponding input / output pointer signals IOfgi output from the program control circuit 210 of FIG. 6. Output to write drivers (WDi). Subsequently, the write drivers WDi receive the signal from the program activation signal generator 170 of FIG.
Figure 1019970035819_B1_M0001
As shown in FIG. 2, the bit lines selected by the column pass gate circuit 140 are driven to voltage levels corresponding to the data bits transmitted 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, as illustrated in FIG. 7, the data input buffer circuit 150 includes a plurality of data input buffers (Dinbufi) corresponding to the input / output pins, respectively. 150 illustrates only a circuit corresponding to one of the data input buffers DinbufI, but the other 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 8, the data input buffer (Dinbufi) comprises a NOR gate (G52), three inverters (IV27), (IV28) and (IV35) which input the corresponding data bits (DINi) and the signal (nCE f ). ), A first latch 152 controlled by the signal nD lch and composed of inverters IV29, IV30 and IV31 and a transfer gate G53, and a signal IOfgi and controlled by inverters ( And a second latch 154 consisting of IV32, IV33 and IV34 and a transfer gate G54 and connected to the corresponding write driver WDi via the inverter IV35. The data input buffer Dinbufi having the above configuration latches the data bit DINi applied from the outside in response to the signal nD lch in the first latch 152 and then corresponds to the data bit DINi. When the input / output pointer signal IOfgi is activated, the data bits stored in the first latch 152 are transferred to the corresponding write driver WDi through the inverter IV35. Here, the signal nCE f is applied as a signal for preventing current consumption in standby.

도 9A 및 도 9B을 참조하면, 도 6의 프로그램 제어 회로 내의 계수부의 회로 구성을 보여주는 회로도가 도시되어 있다. 그리고, 도 10은 도 9A의 계수부 (180) 내의 하나의 카운터 회로를 보여주는 회로도이다. 도 9A 및 도 9B에 도시된 바와같이, 상기 계수부 (180)는 카운터 (182) 및 디코더 (184)로 구성되어 있다.9A and 9B, a circuit diagram showing a circuit configuration of the counter portion in the program control circuit of FIG. 6 is shown. 10 is a circuit diagram showing one counter circuit in the counter 180 of FIG. 9A. As shown in Figs. 9A and 9B, the counting unit 180 is composed of a counter 182 and a decoder 184.

다시 도 9A을 참조하면, 상기 카운터 (182)는 발진 신호 (OSC) 및 그것의 상보 신호 (

Figure 1019970035819_B1_M0012
)에 동기된 4 개의 카운터들 (182a), (182b), (182c) 및 (182d)로 구성되며, 상기 카운터들 (182a), (182b), (182c) 및 (182d)은 프로그램 모드를 알리는 신호 (
Figure 1019970035819_B1_M0006
)의 반전된 신호에 의해서 초기화된다. 상기 카운터들 (182a), (182b), (182c) 및 (182d)은 전단의 카운터 출력의 주기를 2배로 출력하도록 구성되어 있다. 이러한 구성에 의해서, 상기 카운터들 (182a), (182b), (182c) 및 (182d)의 병렬 출력들 (IOp0)∼(IPp3)은, 도 15에 도시된 바와같이, 발진 신호 (OSC)을 기준으로 배주기 신호로서 출력된다.Referring again to FIG. 9A, the counter 182 is an oscillation signal (OSC) and its complementary signal (
Figure 1019970035819_B1_M0012
It consists of four counters 182a, 182b, 182c and 182d synchronized to the above, and the counters 182a, 182b, 182c and 182d indicate the program mode. signal (
Figure 1019970035819_B1_M0006
Is initialized by the inverted signal of. The counters 182a, 182b, 182c and 182d are configured to double the period of the counter output of the front end. By this arrangement, the parallel outputs IOp0 to IPp3 of the counters 182a, 182b, 182c and 182d are configured to generate the oscillation signal OSC as shown in FIG. It is output as a cycle signal as a reference.

상기 카운터 (182)는, 도 10에 도시된 바와같이, 2 개의 낸드 게이트들 (G1) 및 (G2), 4 개의 전달 게이트들 (G3)∼(G6) 및 2 개의 인버터 회로들 (IV1) 및 (IV2)로 구성되어 있다. 이에 대한 동작은 이 분야의 통상적인 지식을 습득한 자들에게 잘 알려져 있기 때문에 그것에 대한 설명은 생략된다.The counter 182 includes two NAND gates G1 and G2, four transfer gates G3 to G6 and two inverter circuits IV1, as shown in FIG. It consists of (IV2). Since the operation thereof is well known to those who have acquired the general knowledge in this field, the description 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 to IPp3 output from the counter 182 and outputs an input / output pointer signal IOfgi for indicating the input / output pins, respectively. Here, the signal IOfgi is activated sequentially in accordance with the toggle of the signal OSC, which is activated first after the signal IOfg0 is activated before the oscillation signal OSC is toggled, as described above. The output signals IOfg1 to IOfg15 are output. The oscillation signal OSC is held in the hold state when the control signal ON fin is generated, although not shown in the drawing.

상기 디코더 (184)는 상기 신호들 (IOfg0)∼(IOfg15)에 대응되도록 인버터들 (IV7)∼(IV22) 및 낸드 게이트들 (G7)∼(G22)과 상기 카운터 (182)로부터 출력된 2진 카운터 신호들 (IOp0)∼(IOp3)을 반전시키기 위한 인버터들 (IV3)∼(IV6)을 이용하여 상기 신호들 (IOp0)∼(IOp3)을 디코딩한 신호들 (IOfg0)∼(IOfg15)을 출력한다. 여기서, 도 9A 및 도 9B에 도시된 회로 구성이 다르게 변형될 수 있음은 이 분야의 통상적인 지식을 습득한 자들에게 자명하다. 따라서, 그것들에 대한 일예로서의 회로 구성은 도 9A 및 도 9B을 참조한다.The decoder 184 is a binary output from the inverters IV7 to IV22 and the NAND gates G7 to G22 and the counter 182 so as to correspond to the signals IOfg0 to IOfg15. Output signals IOfg0 to IOfg15 that decode the signals IOp0 to IOp3 using inverters IV3 to IV6 for inverting the counter signals IOp0 to IOp3. do. Here, it will be apparent to those skilled in the art that the circuit configuration shown in FIGS. 9A and 9B may be modified differently. Therefore, the circuit configurations as an example thereof are referred to Figs. 9A and 9B.

도 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)의 상보 신호 (

Figure 1019970035819_B1_M0014
)로서 출력된다.Referring to FIG. 11, a block diagram showing the configuration of the comparison unit of FIG. 6 is shown. The comparison unit 190 includes a determination unit 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 that are sequentially activated and output from the counting unit 180. Comparing a pointer signal (IOfgi) with the data bit (DINi) generates a detection signal (Det) that is activated when the data bit (DINi) is a data bit indicating a program state (here, defined as '1'). do. That is, when the signal IO fg0 is activated, the signal Det that transitions to the high level is output when the corresponding data bit DIN0 indicates a program state (eg, '1'). The pulse generator 194 generates a short pulse signal SRG having a predetermined width when the detection signal Det transitions from a low level to a high level. Subsequently, the short pulse signal SPG is output as the signal SRB through the inverter IV23 and the complementary signal (SB) of the signal SRB through the inverters IV23 and IV24.
Figure 1019970035819_B1_M0014
Is output as

상기 판별부 (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 may include NAND gates G23 to G38 that input and output corresponding input / output pointer signals IOfgi and data bits DINi, and NAND corresponding to one group of four from the least significant bit. Four NAND gates G39 to G43 that input the gates G23 to G26, G27 to G30, G31 to G34, and G35 to G38; NOR gates G41 and G44 having two NAND gates G39 and G40 and G42 and G43 of the four NAND gates G39 to G43, And one NAND gate G45 that receives the outputs of the NOR gates G41 and G44.

도 12은 본 발명에 따른 프로그램 제어 회로의 프로그램 제어 신호 발생부의 구성을 보여주는 블럭도이다.12 is a block diagram showing a configuration of a program control signal generator of a program control circuit according to the present invention.

도 12을 참조하면, 프로그램 제어 신호 발생부 (200)는 4 개의 플립플롭들 (DFF0)∼(DFF3)로 구성되고, 도 6의 비교부 (190)로부터 출력되는 숏 펄스 신호 (SRB)에 의해서 한단계씩 오른쪽으로 이동하기 위한 쉬프트 레지스터 (shift register : SR)로서 동작한다. 즉, 상기 쉬프트 레지스터 (SR)의 입력이 전원 전압 (Vcc)인 하이 레벨이기 때문에, 상기 레지스터 (SR)는 상기 숏 펄스 신호 (SRB) 및 그것의 상보 신호 (

Figure 1019970035819_B1_M0014
)에 동기된 4 개의 플립플롭들 (DFF0)∼(DFF3)에 의해서 순차적으로 오른쪽으로 상기 전원 전압 (Vcc)의 하이 레벨을 이동시키게 된다. 따라서, 상기 신호들 (SRB) 및 (
Figure 1019970035819_B1_M0014
)이 4 번에 걸쳐 펄스로서 입력되면 상기 쉬프트 레지스터 (SR)의 출력 신호 (ONfin)는 로우 레벨에서 하이 레벨로 천이된다. 다시말해서, 외부로부터 입력된 데이터 비트들 (DINi)은 상기 비교부 (190)에서 순차적으로 검사되어 프로그램될 데이터로서 논리적으로 '1'의 수가 4 개가 되면 상기 쉬프트 레지스터 (SR)의 출력 신호 (ONfin)는 하이 레벨이 됨을 알 수 있다. 여기서, 상기 신호 (ONfin)은 도 6의 프로그램 활성화 신호 발생부 (170)로 인가됨으로써 그것의 출력 신호 (
Figure 1019970035819_B1_M0001
)가 활성화되고, 그 결과 프로그램 동작이 수행된다.Referring to FIG. 12, the program control signal generator 200 includes four flip-flops DFF0 to DFF3, and is configured by the short pulse signal SRB output from the comparator 190 of FIG. 6. It acts as a shift register (SR) to move right one step at a time. That is, since the input of the shift register SR is a high level which is a power supply voltage Vcc, the resistor SR is the short pulse signal SRB and its complementary signal (
Figure 1019970035819_B1_M0014
The four flip-flops DFF0 to DFF3 synchronized to the second level sequentially move the high level of the power supply voltage Vcc to the right. Thus, the signals SRB and (
Figure 1019970035819_B1_M0014
) Is input as a pulse 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 inspected and programmed in the comparing unit 190, and when the number of logically '1' becomes four, the output signal ON of the shift register SR is ON. fin ) is high level. Here, the signal ON fin is applied to the program activation signal generator 170 of FIG.
Figure 1019970035819_B1_M0001
) Is activated, and as a result, a program operation is performed.

따라서, 상기 프로그램 동작은 최대 프로그램될 비트들의 수가 4 개로 제한되며, 이는 레이 아웃적으로 제한된 챠아지 펌프 회로의 동작에 의해서도 메모리 셀의 프로그램이 가능함을 의미한다. 이때, 상기 프로그램 동작이 진행되는 동안에는 상기 입출력 포인터 신호 (IOfgi)에 대한 스캐닝 동작은 정지된다. 이후, 상기 쉬프트 레지스터 (SR)의 플립플롭들 (DFF0)∼(DFF3)은 도 6의 프로그램 활성화 신호 발생부 (170)로부터의 신호 (

Figure 1019970035819_B1_M0001
)가 비활성화될 때 발생된 숏 펄스 신호 (
Figure 1019970035819_B1_M0019
)에 의해서 초기화되며, 도 13에 도시된 바와같이, 각각의 플립플롭들 (DFF0)∼(DFF3)은 도 10의 그것과 동일한 회로 구성을 갖는다.Thus, the program operation is limited to the maximum number of bits to be programmed to four, which means that the memory cell can be programmed even by the operation of the layout-limited charge pump circuit. At this time, the scanning operation on the input / output pointer signal IO fgi is stopped while the program operation is in progress. Afterwards, the flip-flops DFF0 to DFF3 of the shift register SR receive signals from the program activation signal generator 170 of FIG. 6.
Figure 1019970035819_B1_M0001
Short pulse signal generated when
Figure 1019970035819_B1_M0019
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 illustrating a program method of a flash memory device according to an exemplary embodiment of the present invention. 15 is a timing diagram showing waveforms of signals for a program operation according to an exemplary embodiment of the present invention. And, Figure 16 is a view for comparing the program performance according to the prior art and the present invention. 14 and 15, the program operation according to the present invention is described below with reference to the reference figures 6 to 13 and 16.

외부로부터 프로그램 명령, 즉 기입 활성화 신호 (

Figure 1019970035819_B1_M0002
)가 활성화되면, 상기 신호 (
Figure 1019970035819_B1_M0002
)가 활성화되고 소정 시간이 경과한 후 활성화되는 신호 (nDlch)에 응답하여 외부로부터 인가되는 데이터 비트들 (DINi)은 각각 대응되는 데이터 입력 버퍼들 (Dinbufi)의 제 1 래치 (152)에 저장된다. 이것은 도 14의 입력 데이터 래치 단계 (S10)에서 수행된다.Program command, i.e., write enable signal (
Figure 1019970035819_B1_M0002
) Is activated, the signal (
Figure 1019970035819_B1_M0002
) And the data bits DINi applied from the outside in response to the activated signal nD lch after a predetermined time elapses are stored in the first latch 152 of the corresponding data input buffers DINbufi, respectively. do. This is done in the input data latch 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 pointer, that is, the input / output pin starts. That is, the counter 180 of the program control circuit 210 sequentially activates the input / output pointer signal IOfgi representing the input / output pins in response to the oscillation signal OSC. Before the oscillation signal OSC toggles, the signal IOfg0 indicating the input / output pin corresponding to the least significant bit is activated first. Here, 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)에 동기된 프로그램 활성화 신호 (

Figure 1019970035819_B1_M0001
)을 발생하게 된다.Then, it is determined whether the number of once programmable data bits is equal to a predetermined number (4 in the preferred embodiment), and if the number of programmable data bits is four, the next program operation is performed. That is, as shown in FIG. 6, when the number of data bits is four, a control signal ON fin for notifying a program operation is generated from the program control signal generator 210. Therefore, the program activation signal generator 170 of FIG. 6 may generate a program activation signal (synchronized with the signal ONfin).
Figure 1019970035819_B1_M0001
) Will occur.

이후, 상기 프로그램 활성화 신호 (

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

여기서, 프로그램 동작이 수행되는 동안, 도면에는 도시되지 않았지만, 발진 신호 (OSC)을 발생하는 회로는 상기 신호 (ONfin)에 의해서 홀드 상태로 유지되기 때문에 상기 프로그램 동작 동안에 입출력 포인터 스캐닝 동작 단계 (S20)은 중지된다. 그리고, 상기 프로그램 동작이 완료되면, 도 15에 도시된 바와같이, 비활성화되는 상기 신호 (

Figure 1019970035819_B1_M0001
)에 동기된 신호 (
Figure 1019970035819_B1_M0019
)에 의해서 프로그램 제어 신호 발생부 (200)는 초기화된다.Here, while the program operation is performed, although not shown in the figure, the circuit generating the oscillation signal OSC is held by the signal ON fin , and thus the input / output pointer scanning operation step (S20) during the program operation. ) Is stopped. When the program operation is completed, as shown in FIG. 15, the signal (
Figure 1019970035819_B1_M0001
Signal synchronized to
Figure 1019970035819_B1_M0019
), The program control signal generator 200 is initialized.

이러한 일련의 동작을 통해 프로그램 동작이 수행되면, 도 16에 도시된 바와같이, 종래의 경우 4 번의 프로그램 사이클이 수행되는 반면에 본 발명의 경우 3 번의 프로그램 사이클만이 수행되기 때문에, 프로그램 성능이 향상될 수 있음은 자명하다.When a program operation is performed through this series of operations, as shown in FIG. 16, since four program cycles are performed in the conventional case, only three program cycles are performed in the present invention, thereby improving program performance. It can be obvious.

상기한 바와같이, 프로그램될 데이터 비트들을 최하위 비트로부터 스캐닝하여 일회 프로그램 가능한 데이터 비트들이 검출되었을 때, 프로그램 동작을 수행함으로써 플래시 메모리 장치의 프로그램 성능을 향상시킬 수 있다.As described above, when the programmable data bits are detected by scanning the data bits to be programmed from the least significant bit, the program performance of the flash memory device may be improved by performing a 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 has a floating gate and a control gate, and includes transistors electrically erasable and programmable by accumulating charge or releasing the accumulated charge in the floating gate; 래치 신호에 응답하여 외부로부터 인가되는 데이터 비트들을 각각 래치하기 위한 버퍼들과;Buffers for respectively latching data bits applied from outside in response to the latch signal; 프로그램 동작을 수행하기 위한 프로그램 활성화 신호를 발생하는 수단과;Means for generating a program activation signal for performing a program operation; 상기 프로그램 활성화 신호에 응답하여 상기 버퍼들에 래치된 상기 데이터 비트들에 해당하는 전압 레벨들로 대응되는 비트 라인들을 구동하기 위한 구동기들과;Drivers for driving bit lines corresponding to voltage levels corresponding to the data bits latched in the buffers in response to the program activation signal; 발진 신호에 응답하여 상기 래치된 데이터 비트들을 각각 나타내는 입출력 포인터 신호를 순차적으로 발생하는 수단과;Means for sequentially generating an input / output pointer signal representing each of the latched data bits in response to an oscillation signal; 상기 버퍼들은 상기 입출력 포인터 신호에 의해서 그것에 래치된 데이터 비트를 순차적으로 대응되는 구동기로 출력하며;The buffers sequentially output data bits latched thereto by the input / output pointer signal to corresponding drivers; 상기 입출력 포인터 신호에 대응되는 데이터 비트가 프로그램 상태를 나타내는 데이터 비트일 때 숏 펄스 신호를 발생하는 수단 및;Means for generating a short pulse signal when the data bit corresponding to the input / output pointer signal is a data bit indicating a program state; 상기 숏 펄스 신호가 일회 프로그램 가능한 수만큼 발생될 때 상기 프로그램 활성화 신호 발생 수단을 활성화시키기 위한 제어 신호 (ONfin)를 발생하는 수단을 포함하는 것을 특징으로 하는 플래시 메모리 장치.And means for generating a control signal (ON fin ) for activating said program activation signal generating means when said short pulse signal is generated by one programmable number. 제 1 항에 있어서,The method of claim 1, 상기 제어 신호 발생 수단은 상기 프로그램 활성화 신호가 비활성화될 때 동기된 신호에 의해서 초기화되는 것을 특징으로 하는 플래시 메모리 장치.And the control signal generating means is initialized by a synchronized signal when the program activation signal is deactivated. 제 1 항에 있어서,The method of claim 1, 상기 래치 신호는 기입 활성화 신호에 동기된 신호인 것을 특징으로 하는 플래시 메모리 장치.And the latch signal is a signal synchronized with a write activation signal. 제 1 항에 있어서,The method of claim 1, 상기 버퍼들 각각은 상기 래치 신호에 응답하여 대응되는 데이터 비트를 래치하기 위한 제 1 래치 및; 상기 입출력 포인터 신호에 응답하여 상기 제 1 래치로부터 상기 데이터 비트를 받아들어서 래치하기 위한 제 2 래치를 포함하는 것을 특징으로 하는 플래시 메모리 장치.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. 복수 개의 비트 라인들과;A plurality of bit lines; 복수 개의 메모리 셀들을 포함하는 셀 어레이와;A cell array including a plurality of memory cells; 상기 메모리 셀들 각각은 부유 게이트 및 제어 게이트를 구비하며, 상기 부유 게이트에 전하를 축적하거나 상기 축적된 전하를 방출함으로써 전기적으로 소거 및 프로그램 가능한 트랜지스터들을 포함하며;Each of the memory cells has a floating gate and a control gate, and includes transistors electrically erasable and programmable by accumulating charge or releasing the accumulated charge in the floating gate; 래치 신호에 응답하여 외부로부터 인가되는 데이터 비트들을 각각 래치하기 위한 버퍼들과;Buffers for respectively latching data bits applied from outside in response to the latch signal; 프로그램 동작을 수행하기 위한 프로그램 활성화 신호를 발생하는 수단과;Means for generating a program activation signal for performing a program operation; 상기 프로그램 활성화 신호에 응답하여 상기 버퍼들에 래치된 상기 데이터 비트들에 해당하는 전압 레벨들로 대응되는 비트 라인들을 구동하기 위한 구동기들 및;Drivers for driving bit lines corresponding to voltage levels corresponding to the data bits latched in the buffers in response to the program activation signal; 상기 버퍼들에 각각 래치된 상기 데이터 비트들을 최하위 비트로부터 프로그램 상태를 나타내는 데이터 비트들의 일회 프로그램 가능한 데이터 비트들이 대응되는 구동기들로 공급된 후 상기 일회 프로그램 가능한 데이터 비트들에 대한 프로그램 동작이 수행되도록 상기 버퍼들 및 상기 프로그램 활성화 신호 발생 수단을 제어하는 수단을 포함하는 플래시 메모리 장치.The program operation for the one programmable data bits is performed after the one programmable data bits of the data bits representing the program state from the least significant bit are supplied to the corresponding drivers from the least significant bits respectively. Means for controlling buffers and means for generating the program activation signal. 제 5 항에 있어서,The method of claim 5, 상기 프로그램 제어 수단은,The program control means, 발진 신호에 응답하여 상기 래치된 데이터 비트들을 각각 나타내는 입출력 포인터 신호를 순차적으로 발생하는 수단과;Means for sequentially generating an input / output pointer signal representing each of the latched data bits in response to an oscillation signal; 상기 입출력 포인터 신호에 대응되는 데이터 비트가 프로그램 상태를 나타내는 데이터 비트일 때 숏 펄스 신호를 발생하는 수단 및;Means for generating a short pulse signal when the data bit corresponding to the input / output pointer signal is a data bit indicating a program state; 상기 숏 펄스 신호가 일회 프로그램 가능한 수만큼 발생될 때 상기 프로그램 활성화 신호 발생 수단을 활성화시키기 위한 제어 신호 (ONfin)를 발생하는 수단을 구비해서, 상기 버퍼들이 상기 입출력 포인터 신호에 의해서 그것에 래치된 데이터 비트를 순차적으로 대응되는 구동기로 출력하도록 하는 플래시 메모리 장치.Means for generating a control signal (ON fin ) for activating said program activation signal generating means when said short pulse signal is generated by one programmable number, so that said buffers are data latched to it by said input / output pointer signal; Flash memory device to sequentially output the bits to the corresponding driver. 제 6 항에 있어서,The method of claim 6, 상기 제어 신호 발생 수단은 상기 프로그램 활성화 신호가 비활성화될 때 동기된 신호에 의해서 초기화되는 플래시 메모리 장치.And the control signal generating means is initialized by a synchronized signal when the program activation signal is deactivated. 제 6 항에 있어서,The method of claim 6, 상기 래치 신호는 기입 활성화 신호에 동기된 신호인 플래시 메모리 장치.And the latch signal is a signal synchronized with a write enable signal. 제 6 항에 있어서,The method of claim 6, 상기 버퍼들 각각은 상기 래치 신호에 응답하여 대응되는 데이터 비트를 래치하기 위한 제 1 래치 및; 상기 입출력 포인터 신호에 응답하여 상기 제 1 래치로부터 상기 데이터 비트를 받아들어서 래치하기 위한 제 2 래치를 포함하는 플래시 메모리 장치.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. 복수 개의 비트 라인들과; 복수 개의 메모리 셀들을 포함하는 셀 어레이와; 래치 신호에 응답하여 외부로부터 인가되는 데이터 비트들을 각각 래치하기 위한 버퍼들과; 프로그램 동작을 수행하기 위한 프로그램 활성화 신호를 발생하는 프로그램 활성화 신호 발생 회로와; 상기 프로그램 활성화 신호에 응답하여 상기 버퍼들에 래치된 상기 데이터 비트들에 해당하는 전압 레벨들로 대응되는 비트 라인들을 구동하기 위한 구동기들을 포함하는 플래시 메모리 장치의 프로그램 방법에 있어서,A plurality of bit lines; A cell array including a plurality of memory cells; Buffers for respectively latching data bits applied from outside in response to the latch signal; A program activation signal generation circuit for generating a program activation signal for performing a program operation; A program method of a flash memory device including drivers for driving bit lines corresponding to voltage levels corresponding to the data bits latched in the buffers in response to the program activation signal. 상기 래치된 데이터 비트들을 각각 나타내는 입출력 포인터 신호를 순차적으로 발생하는 단계와;Sequentially generating an input / output pointer signal representing each of the latched data bits; 상기 입출력 포인터 신호에 응답해서 상기 버퍼들에 래치된 데이터 비트를 대응되는 구동기로 순차적으로 출력하는 단계와;Sequentially outputting data bits latched in the buffers to corresponding drivers in response to the input / output pointer signal; 상기 입출력 포인터 신호에 대응되는 데이터 비트가 프로그램 상태를 나타내는 데이터 비트일 때 숏 펄스 신호를 발생하는 단계와;Generating a short pulse signal when the data bit corresponding to the input / output pointer signal is a data bit indicating a program state; 상기 숏 펄스 신호가 일회 프로그램 가능한 수만큼 발생될 때 상기 프로그램 활성화 신호 발생 수단을 활성화시키기 위한 제어 신호 (ONfin)를 발생하여 프로그램 동작을 수행하는 단계를 포함하는 것을 특징으로 하는 프로그램 방법.And generating a control signal (ON fin ) for activating the program activation signal generating means when the short pulse signal is generated as many as one programmable number to perform 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 KR19990012428A (en) 1999-02-25
KR100255955B1 true 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 (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7443728B2 (en) 2004-12-31 2008-10-28 Samsung Electronic Co., Ltd. NAND flash memory device and method of programming same

Families Citing this family (1)

* 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

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7443728B2 (en) 2004-12-31 2008-10-28 Samsung Electronic Co., Ltd. NAND flash memory device and method of programming same

Also Published As

Publication number Publication date
KR19990012428A (en) 1999-02-25

Similar Documents

Publication Publication Date Title
KR100332001B1 (en) Semiconductor nonvolatile memory device
US5555204A (en) Non-volatile semiconductor memory device
JP4510031B2 (en) Efficient verification for coarse / fine programming of non-volatile memory
US6426894B1 (en) Method and circuit for writing data to a non-volatile semiconductor memory device
JP3583703B2 (en) Semiconductor device
US6411551B1 (en) Multi-state nonvolatile semiconductor memory device which is capable of regularly maintaining a margin between threshold voltage distributions
US7489566B2 (en) High voltage generator and related flash memory device
US6128231A (en) Nonvolatile semiconductor memory device capable of optimizing program time
JP2007520029A (en) Variable current sinking for non-volatile memory miscellaneous / fine programming
JP2007520028A (en) Charge packet measurement for non-volatile memory miscellaneous / fine programming
JP3820330B2 (en) Semiconductor memory device
US20160012900A1 (en) Semiconductor device
JP4426082B2 (en) Nonvolatile semiconductor memory device for shortening read time
US6256702B1 (en) Nonvolatile memory device with extended storage and high reliability through writing the same data into two memory cells
KR100605275B1 (en) Semiconductor storage device
KR100274590B1 (en) Flash memory device capable of operating stably read-out at low power supply voltage
KR100268442B1 (en) Program method of non-volatile semiconductor memory device
US6711062B1 (en) Erase method of split gate flash memory reference cells
KR100255955B1 (en) Flash memory device and programmble method thereof
KR100449864B1 (en) Boosting circuit
JP3862092B2 (en) Nonvolatile memory device
US6229735B1 (en) Burst read mode word line boosting
JPH1186573A (en) Non-volatile semiconductor memory
JP3722372B2 (en) System and device having nonvolatile memory
KR100222575B1 (en) Dummy cell driving circuit

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