KR20060028983A - 불휘발성 메모리 장치 및 그것의 프로그램 방법 - Google Patents

불휘발성 메모리 장치 및 그것의 프로그램 방법 Download PDF

Info

Publication number
KR20060028983A
KR20060028983A KR1020040077926A KR20040077926A KR20060028983A KR 20060028983 A KR20060028983 A KR 20060028983A KR 1020040077926 A KR1020040077926 A KR 1020040077926A KR 20040077926 A KR20040077926 A KR 20040077926A KR 20060028983 A KR20060028983 A KR 20060028983A
Authority
KR
South Korea
Prior art keywords
data
program
data bits
bits
scanning unit
Prior art date
Application number
KR1020040077926A
Other languages
English (en)
Other versions
KR100645045B1 (ko
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 KR1020040077926A priority Critical patent/KR100645045B1/ko
Priority to US11/025,016 priority patent/US7161839B2/en
Priority to JP2005285363A priority patent/JP2006107719A/ja
Publication of KR20060028983A publication Critical patent/KR20060028983A/ko
Application granted granted Critical
Publication of KR100645045B1 publication Critical patent/KR100645045B1/ko
Priority to US11/567,162 priority patent/US7925820B2/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/04Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS
    • G11C16/0483Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS comprising cells having several storage transistors connected in series
    • 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
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • G11C7/1078Data input circuits, e.g. write amplifiers, data input buffers, data input registers, data input level conversion circuits
    • G11C7/1096Write circuits, e.g. I/O line write drivers

Abstract

여기에 개시된 불휘발성 메모리 장치 및 방법은, 데이터를 스캐닝하여 실제 프로그램될 데이터 비트를 찾아내고, 이를 소정의 개수 만큼씩 동시에 프로그램 한다. 특히, 본 발명에서는 상기 데이터 스캐닝 과정과 상기 프로그램 과정을 파이프라인 방식으로 수행하기 때문에, 데이터를 프로그램 하는데 걸리는 평균 시간이 효과적으로 단축된다.

Description

불휘발성 메모리 장치 및 그것의 프로그램 방법{NON-VOLATILE MEMORY DEVICE AND PROGRAM METHOD THEREOF}
도 1은 본 발명의 바람직한 실시예에 따른 반도체 메모리 장치의 구성을 보여주는 블록도;
도 2는 본 발명의 바람직한 실시예에 따른 프로그램 방법을 보여주는 흐름도;
도 3은 일반적인 비트 스캐닝 프로그램 과정과, 이 때 필요로 하는 프로그램 시간을 보여주는 도면; 그리고
도 4는 본 발명에 따른 비트 스캐닝 프로그램 과정과, 이 때 필요로 하는 시간을 보여주는 도면이다.
*도면의 주요 부분에 대한 부호의 설명*
10 : 메모리 셀 어레이 20 : 입출력 버퍼
30 : 데이터 스캐닝부 35 : 스캔 래치
40 : 기입 드라이버 50 : 열 선택부
60 : 감지 증폭부 90 : 제어 로직
본 발명은 불휘발성 메모리 장치에 관한 것으로, 좀 더 구체적으로는 프로그램 시간을 단축할 수 있는 불휘발성 메모리 장치에 관한 것이다.
불휘발성 메모리 장치는 드라이브 전원이 공급되지 않아도 셀에 기록된 데이터가 소멸되지 않고 남아있다. 불휘발성 메모리들 중에서도 플래시 메모리는 전기적으로 셀의 데이터를 일괄적으로 소거하는 기능을 가지고 있기 때문에 컴퓨터 및 메모리 카드 등에 널리 사용되고 있다.
플래시 메모리는 셀과 비트 라인의 연결 상태에 따라 NOR형과 NAND형으로 구분된다. NOR형 플래시 메모리는 1개의 비트 라인에 2개 이상의 셀 트랜지스터가 병렬로 연결된 형태로서, 채널 핫 일렉트론(channel hot electron) 방식을 사용하여 데이터를 저장하고, F-N 터널링(Fowler-Nordheim tunneling) 방식을 사용하여 데이터를 소거한다. 그리고, NAND형 플래시 메모리는 1개의 비트 라인에 2개 이상의 셀 트랜지스터가 직렬로 연결된 형태로서, F-N 터널링 방식을 사용하여 데이터를 저장 및 소거한다. 일반적으로, NOR형 플래시 메모리는 전류 소모가 크기 때문에 고집적화에는 불리하지만, 고속화에 용이하게 대처할 수 있는 장점이 있고, NAND형 플래시 메모리는 NOR형 플래시 메모리에 비해 적은 셀 전류를 사용하기 때문에, 고집적화에 유리한 장점이 있다.
NOR 플래시 메모리의 셀 어레이(cell array)는, 크게 복수 개의 뱅크(bank)로 구성되고, 각각의 뱅크는 복수 개의 섹터(sector)로 구성되며, 각각의 섹터는 복수개의 메모리 셀(memory cell)로 구성된다. 일반적으로, NOR 플래시 메모리의 소거(erase) 동작은 상기 섹터 단위로 수행되고, 프로그램(program)은 워드(word) 단위(또는, 바이트(byte) 단위)로 수행된다.
NOR 플래시 메모리의 셀 어레이에 데이터를 프로그램하기 위해서는, 먼저 플래시 메모리에 프로그램 명령어(program command)가 입력된 후, 프로그램 어드레스와 프로그램 데이터가 플래시 메모리에 입력된다. 입력된 프로그램 어드레스와 프로그램 데이터는 칩 내부에 임시로 저장되고, 프로그램 어드레스에 대응되는 메모리 셀이 선택된다. 이어서, 프로그램 데이터에 대응되는 프로그램 전압이 비트 라인으로 인가되어, 실질적인 프로그램이 수행된다. 그리고 나서, 내부적으로 미리 정해진 소정의 프로그램 수행 시간(program execution timing)이 경과하게 되면, 선택된 메모리 셀에 데이터가 프로그램되었는 지의 여부를 판별하는 검증(verify) 동작이 수행된다. 이 같은 프로그램 및 검증 동작은, 선택된 메모리 셀에 데이터가 정상적으로 프로그램될 때까지 반복 수행된다.
일반적으로, NOR 플래시 메모리를 프로그램하는데 사용되는 채널 핫 일렉트론 방식에서는, 메모리 셀의 드레인(drain)에 4V 내지 6V 정도의 고전압이 인가되기 때문에 일정 수준 이상의 프로그램 전류(current)를 필요로 한다. 그리고, 드레인에 인가되는 고전압은 칩 내부에 구비된 챠지 펌프(charge pump)를 통해 생성되기 때문에, 동시에 프로그램할 수 있는 메모리의 개수는 통상 2개 내지 4개로 제한된다. 예를 들어, 동시에 프로그램할 수 있는 비트의 수가 4개일 때, 16 비트의 데이터는 4 비트씩 분할된 후, 총 4회에 걸쳐 메모리 셀에 프로그램된다.
플래시 메모리의 프로그램 특성을 살펴보면, 플래시 메모리에서 프로그램을 수행하기 위해서는 사전에 해당 어드레스 부분을 반드시 소거(erase)(즉, 데이터 값을 "1"로 만듦)하여야 하기 때문에, 프로그램 데이터가 "1"이라는 것은, 프로그램시 아무런 프로그램 동작을 수행하지 않아도 원하는 데이터를 프로그램한 것과 같다고 할 수 있다. 이와 같은 플래시 메모리의 프로그램 특성에도 불구하고, 대부분의 플래시 메모리는 프로그램될 데이터의 값이 "0"인지 "1"인지에 상관없이 각 데이터 그룹에 대해 일정한 프로그램 시간을 일률적으로 할당한다. 따라서, 프로그램 데이터 값에 상관없이 데이터를 프로그램하는데 걸리는 시간은 항상 일정하게 소요되는 문제가 있다.
따라서, 본 발명의 목적은 상술한 제반 문제점을 해결하기 위해 제안된 것으로, 프로그램 시간을 단축시킬 수 있는 불휘발성 메모리 장치 및 방법을 제공하는데 있다.
상기의 과제를 이루기 위하여 본 발명에 의한 불휘발성 메모리 장치의 프로그램 방법은, 입력된 데이터 비트들 중 프로그램 될 데이터 비트들을 검색하는 단계; 및 상기 검색된 데이터 비트들을 프로그램하는 단계를 포함하며, 상기 프로그램이 수행되는 동안, 다음에 프로그램 될 데이터 비트들이 나머지 데이터 비트들로부터 검색되는 것을 특징으로 한다.
바람직한 실시예에 있어서, 상기 프로그램 및 검색은 파이프라인 방식으로 수행되는 것을 특징으로 한다.
상기의 과제를 이루기 위하여 본 발명에 의한 불휘발성 메모리 장치는, 입력된 데이터 비트들 중 프로그램 될 데이터 비트들을 검색하는 데이터 스캐닝부; 및 상기 검색된 데이터 비트들을 프로그램하는 기입 드라이버를 포함하며, 상기 데이터 스캐닝부는 상기 프로그램이 수행되는 동안, 나머지 데이터 비트들로부터 다음에 프로그램 될 데이터 비트들을 검색하는 것을 특징으로 한다.
바람직한 실시예에 있어서, 상기 프로그램 및 상기 검색은 파이프라인 방식으로 수행되는 것을 특징으로 한다.
바람직한 실시예에 있어서, 상기 기입 드라이버 및 상기 데이터 스캐닝부의 데이터 입출력을 제어하는 제어 로직을 더 포함하는 것을 특징으로 한다.
바람직한 실시예에 있어서, 외부로부터 입력된 상기 데이터 비트들을 저장하고, 상기 데이터 비트들을 상기 데이터 스캐닝부로 제공하는 입출력 버퍼를 더 포함하는 것을 특징으로 한다.
바람직한 실시예에 있어서, 상기 데이터 스캐닝부는, 상기 버퍼로부터 상기 검색에 사용될 복수개의 데이터 비트들을 받아들여 저장하는 스캔 래치를 포함하는 것을 특징으로 한다.
바람직한 실시예에 있어서, 상기 데이터 스캐닝부는, 소정의 동시 프로그램 비트수 만큼 상기 프로그램 될 데이터 비트들을 검색하고, 상기 기입 드라이버는 상기 검색된 데이터 비트들을 상기 동시 프로그램 비트수 단위로 프로그램하는 것을 특징으로 한다.
바람직한 실시예에 있어서, 상기 데이터 스캐닝부는, 상기 검색된 데이터 비 트들과 상기 데이터 비트들의 어드레스 정보를 상기 기입 드라이버로 제공하는 것을 특징으로 한다.
이하 본 발명에 따른 실시예를 첨부된 도면을 참조하여 상세히 설명한다.
본 발명의 신규한 불휘발성 메모리 장치는 프로그램 데이터 중 실제 프로그램 될 데이터 비트만 골라내어 소정 비트 단위로 프로그램한다. 이와 같은 프로그램 방식을 "비트 스캐닝 프로그램 방식(Bit Scanning Program Scheme)이라 칭한다. 특히, 본 발명에서는 실제 프로그램될 데이터 비트를 찾아내는 스캐닝 과정과, 찾아낸 데이터 비트만을 선별적으로 프로그램하는 프로그램 과정을 파이프라인 방식으로 수행한다. 따라서, 데이터를 프로그램 하는데 걸리는 평균 시간이 효과적으로 단축된다.
플래시 메모리와 같은 불휘발성 메모리에서 프로그램을 수행하기 위해서는 사전에 해당 어드레스 부분을 반드시 소거(데이터 값을 "1"의 상태로 만듦)하도록 되어 있다. 불휘발성 메모리에서 수행되는 프로그램 동작은 데이터 "1"을 데이터 "0"으로 변환시키는 것을 의미한다. 따라서, 프로그램 데이터가 "1"이라는 것은 프로그램시 아무런 프로그램 동작을 수행하지 않더라도 원하는 데이터를 프로그램한 것과 같다고 할 수 있다. 그러므로, 본 발명에서는 프로그램 시간이 효과적으로 단축될 수 있도록 데이터 값이 "0"인 것만 골라내어 프로그램을 수행한다. 특히, 본 발명에서는 프로그램에 소요되는 시간을 더욱 단축시킬 수 있도록, 상기 스캐닝 과정과 상기 프로그램 과정을 파이프라인 방식으로 동시에 수행한다.
도 1은 본 발명의 바람직한 실시예에 따른 반도체 메모리 장치(100)의 구성 을 보여주는 블록도이다.
일반적으로, 반도체 메모리 장치는 메모리 셀들로 구성된 어레이 영역과, 상기 어레이 영역의 행 및 열을 선택하기 위한 주변 회로들을 구비하게 된다. 만일, 상기 어레이 영역이 복수 개의 어레이 블록들로 분리되는 경우, 그에 따라 해당되는 주변 회로들 역시 그것에 각각 대응되도록 분리된다. 이와 같은 어레이 영역의 구성은 이 분야의 통상적인 지식을 가진 자들에게 자명하다. 이하 설명될 어레이 영역은 복수 개의 어레이 블록들 중 하나의 어레이 블록 및 이에 관련된 주변 회로들(특히, 프로그램과 관련된 주변회로들)만을 도시하였다. 특히, 도 1에 도시된 반도체 메모리 장치(100)는 NOR 타입의 플래시 메모리를 예로 든 것으로서, 본 발명에 따른 병렬 비트 스캐닝 프로그램 방식은 NOR 타입의 플래시 메모리가 아닌 타 불휘발성 메모리에도 적용 가능하다.
도 1을 참조하면, 본 발명에 따른 반도체 메모리 장치(100)는 메모리 셀 어레이(10), 입출력 버퍼(Input/Output buffer ; 20), 데이터 스캐닝부(data scanning unit ; 30), 기입 드라이버(write driver ; 40), 열 선택부(50), 감지 증폭부(sense amplifier ; 60), 및 제어 로직(90)을 포함한다.
메모리 셀 어레이(10)는 복수개의 노어형 플래시 메모리 셀들로 구성된다. 입출력 버퍼(20)는 메모리 셀 어레이(10)에 기입될 데이터와, 메모리 셀 어레이(10)로부터 감지된 데이터를 저장한다. 데이터 스캐닝부(30)는 입출력 버퍼(20)로부터 입력된 데이터를 스캐닝하여, "0"의 값을 갖는 비트를 찾아낸다. 데이터 스캐닝부(30)는 찾아낸 "0"의 비트의 개수가 소정의 동시 프로그램 비트 수(BitMax)에 이르게 되면, 제어 로직(90)의 제어에 응답해서 검색된 해당 데이터 비트와 어드레스 정보를 기입 드라이버(40)로 전송한다. 여기서, 동시 프로그램 비트 수(BitMax)는 기입 드라이버(40)가 동시에 프로그램할 수 있는 최대 비트 수를 나타낸다. 상기 동시 프로그램 비트 수(BitMax)는 회로의 구성에 따라 다양하게 구성될 수 있으나, 본 발명에서는 4 비트로 구성되는 경우를 예를 들어 설명하고자 한다.
데이터 스캐닝부(30)는, 스캔 동작을 수행하기 위해 내부에 스캔 래치(35)를 구비한다. 스캔 래치(35)는 입출력 버퍼(20)로부터 입력된 데이터를 저장한다. 스캔 래치(35)에 저장된 데이터는 데이터 스캐닝부(30)의 스캐닝 동작에 사용된다. 데이터 스캐닝부(30)는 동시 프로그램 비트 수(BitMax) 만큼의 "0"의 비트가 검색되거나 스캐닝 동작이 끝나게 되면, 제어 로직(90)의 제어에 응답해서 해당 데이터 비트와 어드레스를 기입 드라이버(40)로 전송한다. 스캔 래치(35)의 사이즈는 바람직하게는 입출력 버퍼(20)의 전체 사이즈 보다는 작게 구성된다. 예를 들면, 입출력 버퍼(20)가 32워드의 크기를 갖도록 구성되는 경우, 스캔 래치(35)는 8 워드의 크기를 갖도록 구성된다. 이와 같은 입출력 버퍼(20) 및 스캔 래치(35)의 크기는 회로의 구성에 따라 변경 가능하다.
기입 드라이버(40)는 데이터 스캐닝부(30)로부터 입력된 스캔 결과(즉, 소정 갯수의 "0"의 데이터 비트와 어드레스 정보)를 이용하여 셀 어레이(10)에 대한 프로그램 동작을 수행한다. 기입 드라이버(40) 내부에는 입출력 버퍼(20)로부터 받아들인 프로그램될 데이터를 저장하는 래치(미 도시됨)가 구비되어 있다. 열 선택부(50)는 기입 드라이버(40)에 의해 프로그램될 셀 어레이(10)의 비트라인(미도시 됨 , 데이터 스캐닝부(30)로부터 발생된 어드레스 정보에 대응됨)을 선택한다.
기입 드라이버(40)는 프로그램시 모든 데이터를 프로그램하지 않고, 실제 프로그램되는 데이터 비트(즉, "0"의 값을 가지는 데이터 비트)만을 선별적으로 프로그램하며, 소거 상태의 데이터 비트(즉, "1"의 값을 갖는 데이터 비트)는 프로그램하지 않는다. 이 때, 한 번에 프로그램 될 수 있는 비트 수를 동시 프로그램 비트 수(BitMax)라 한다.
아래에서 상세히 설명되겠지만, 본 발명에 따른 데이터 스캐닝부(30)의 스캐닝 동작과 기입 드라이버(40)의 프로그램 동작은 파이프 라인 방식으로 동시에 수행된다. 예를 들면, 기입 드라이버(40)가 데이터 스캐닝부(30)로부터 발생된 (i-1)번째 스캔 결과를 프로그램을 수행하는 동안, 데이터 스캐닝부(30)는 다음에 프로그램 될 "0"의 데이터들을 찾아내는 i번째 데이터 스캐닝을 수행한다. 이와 같은 파이프 라인 방식의 데이터 스캐닝 및 프로그램에 의하면, 데이터의 스캐닝과 프로그램이 동시에 수행되기 때문에, 데이터를 프로그램 하는데 걸리는 시간이 줄어들게 된다.
메모리 셀 어레이(10)에 데이터가 기입되고 나면, 메모리 셀 어레이(10)에 기입된 데이터는 감지 증폭부(60)를 통해 감지 및 증폭된다. 감지 증폭부(60)에 의해 감지 및 증폭된 데이터는 입출력 버퍼(20)의 해당 어드레스에 저장된 후, 외부로 출력된다. 감지 증폭부(60)를 통해 감지 및 증폭된 데이터는, 이 분야에 대한 통상의 지식을 가진 이들에게 잘 알려져 있는 바와 같이, 프로그램 검증부(미 도시됨)를 통해 프로그램이 올바로 수행되었는지(pass인지 fail인지) 여부를 검증 (verify)하는 데 사용될 수 있다. 그리고, 검증 결과 프로그램이 올바로 수행되지 않은 것으로 판명되면(즉, fail이면), 해당 데이터는 재 프로그램 된다. 본 발명에 따른 비트 스캐닝 프로그램 방법은 초기 프로그램 뿐만 아니라, 재 프로그램시에도 적용 가능하다.
앞에서 설명한 바와 같이, 본 발명에 따른 반도체 메모리 장치(100)에서는, 실제 프로그램될 데이터 비트를 찾아내는 데이터 스캐닝과, 스캐닝된 결과에 대한 프로그램 동작이 파이프라인 방식으로 동시에 수행된다. 그 결과, 프로그램에 소요되는 시간이 최소화 된다.
도 2는 본 발명의 바람직한 실시예에 따른 프로그램 방법을 보여주는 흐름도이다. 도 2에는 동시 프로그램 비트 수(BitMax)가 4인 경우를 예로 든 것으로서, 설명의 편의를 위해 3회의 스캔 동작 및 프로그램 동작이 예시되어 있다. 도 2에 도시된 스캔 동작 및 프로그램 동작의 횟수는, 동시 프로그램 비트 수(BitMax), 스캔 래치(35) 등의 구성에 따라 조절 가능하다.
도 2를 참조하면, 본 발명에 따른 프로그램 방법은 먼저 데이터 스캐닝부(30)를 통해 첫번 째 비트 스캔 동작을 수행한다(310 단계).
310 단계에서 데이터 스캐닝부(30)는 제어 로직(90)의 제어에 응답해서 입출력 버퍼(20)로부터 입력된 데이터를 스캔 래치(35)에 저장한다. 그리고 나서, 스캔 래치(35)에 저장된 데이터를 스캐닝 하여 "0"의 값을 갖는 데이터 비트를 검색한다. 동시 프로그램 비트 수(BitMax) 만큼의 "0"의 데이터 비트가 검색되면, 데이터 스캐닝부(30)는 검색된 데이터 비트 및 어드레스 정보를 기입 드라이버(40)로 전달 한다. 본 발명에서는 이와 같은 일련의 과정을 통틀어 비트 스캔 동작이라 칭한다.
310 단계에서 첫 번째 비트 스캔이 수행되고 나면, 기입 드라이버(40)는 310 단계에서 얻어진 소정 개수(즉, 동시 프로그램 비트 수(BitMax))의 "0"의 데이터 비트들을 메모리 셀 어레이(10)의 해당 어드레스로 프로그램한다(410 단계). 그리고, 410 단계에서 프로그램이 수행되는 동안, 데이터 스캐닝부(30)는 두 번째 비트 스캐닝 동작을 수행한다(320 단계). 여기서, 두 번째 비트 스캔 동작은 앞에서 설명된 첫 번째 비트 스캔 동작과 동일한 과정으로 수행된다. 그리고, 320 단계 및 410 단계에서 수행되는 두 번째 비트 스캔 동작과 첫번째 비트 스캔 결과에 대한 프로그램 동작은, 파이프라인 방식으로 동시에 수행된다.
계속해서, 기입 드라이버(40)는 320 단계에서 얻어진 두 번째 비트 스캔 결과를 프로그램한다(420 단계). 그리고, 420 단계에서 프로그램이 수행되는 동안, 데이터 스캐닝부(30)는 세 번째 비트 스캐닝 동작을 수행한다(330 단계). 여기서, 세 번째 비트 스캔 동작 역시 앞에서 설명된 첫 번째 비트 스캔 동작과 동일한 과정으로 수행된다. 그리고, 330 단계 및 420 단계에서 수행되는 세 번째 비트 스캔 동작과, 두 번째 비트 스캔 결과에 대한 프로그램 동작은, 파이프라인 방식으로 동시에 수행된다.
330 단계에서 수행된 세 번째 비트 스캔 동작으로 인해 데이터 스캐닝부(30)의 스캔 래치(35)에 저장된 데이터들이 모두 스캔되었으면, 기입 드라이버(40)는 330 단계에서 얻어진 세 번째 비트 스캔 결과를 프로그램한다(430 단계). 이와 같은 파이프라인 방식의 스캔 및 프로그램 동작은, 설명의 편의를 위해 3회의 스캔 동작 및 프로그램 동작을 예로 들어 설명한 것에 불과할 뿐, 스캔 횟수 및 프로그램 횟수가 증가할수록 본 발명에 따른 프로그램 시간의 단축 효과는 더욱 커지게 된다.
도 3은 일반적인 비트 스캐닝 프로그램 과정과, 이 때 필요로 하는 프로그램 시간을 보여주는 도면이다. 그리고, 도 4는 본 발명에 따른 비트 스캐닝 프로그램 과정과, 이 때 필요로 하는 시간을 보여주는 도면이다.
먼저 도 3을 참조하면, 일반적인 비트 스캐닝 프로그램 방식에서는 "0"의 데이터를 찾아 내는 데이터 스캐닝 과정과, 스캐닝에 의해 찾아낸 데이터 비트들에 대한 프로그램 과정이 순차적으로 수행된다. 따라서, 3회의 스캔 동작 및 프로그램 동작을 수행하기 위해서는 3회의 스캔 시간과 3회의 프로그램 시간이 필요하다.
그러나, 도 4에 도시되어 있는 바와 같이, 본 발명에 따른 비트 스캐닝 프로그램 방식에서는 "0"의 데이터를 찾아 내는 데이터 스캐닝 과정과, 스캐닝에 의해 찾아낸 데이터 비트들에 대한 프로그램 과정이 파이프라인 방식으로 수행된다. 그 결과, 2번째 및 3번째 데이터 스캐닝 과정이 1번째 및 2번째 프로그래밍 과정과 각각 오버랩 된다. 이와 같은 특성에 따라, 본 발명에서는 3회의 스캔 동작 및 프로그램 동작을 수행하는데 1회의 스캔 시간과 3회의 프로그램 시간을 필요로 하게 된다. 이와 같은 프로그램 시간의 단축 효과는 프로그램 될 데이터의 양이 증가할 수록 더욱 커지게 된다.
이상에서 알 수 있는 바와 같이, 본 발명에 따른 비트 스캐닝 방법은 실제로 프로그램될 데이터 비트를 찾아내는 데이터 스캐닝 동작과, 스캐닝된 결과에 대한 프로그램 동작을 파이프 라인 방식으로 수행한다. 따라서, 프로그램에 소요되는 시간을 현저히 줄일 수 있게 된다.
이상에서와 같이 도면과 명세서에서 최적 실시예가 개시되었다. 여기서 특정한 용어들이 사용되었으나, 이는 단지 본 발명을 설명하기 위한 목적에서 사용된 것이지 의미한정이나 특허청구범위에 기재된 본 발명의 범위를 제한하기 위하여 사용된 것은 아니다. 그러므로 본 기술 분야의 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시예가 가능하다는 점을 이해할 것이다. 따라서, 본 발명의 진정한 기술적 보호 범위는 첨부된 특허청구범위의 기술적 사상에 의해 정해져야 할 것이다.
이상과 같은 본 발명에 의하면, 불휘발성 반도체 메모리 장치에서 데이터를 프로그램 하는데 걸리는 평균 시간이 효과적으로 단축된다.

Claims (10)

  1. 입력된 데이터 비트들 중 프로그램 될 데이터 비트들을 검색하는 단계; 및
    상기 검색된 데이터 비트들을 프로그램하는 단계를 포함하며,
    상기 프로그램이 수행되는 동안, 다음에 프로그램 될 데이터 비트들이 나머지 데이터 비트들로부터 검색되는 것을 특징으로 하는 불휘발성 메모리 장치의 프로그램 방법.
  2. 제 1 항에 있어서,
    상기 프로그램 및 검색은 파이프라인 방식으로 수행되는 것을 특징으로 하는 불휘발성 메모리 장치의 프로그램 방법.
  3. 입력된 데이터 비트들 중 프로그램 될 데이터 비트들을 검색하는 데이터 스캐닝부; 및
    상기 검색된 데이터 비트들을 프로그램하는 기입 드라이버를 포함하며,
    상기 데이터 스캐닝부는 상기 프로그램이 수행되는 동안, 나머지 데이터 비트들로부터 다음에 프로그램 될 데이터 비트들을 검색하는 것을 특징으로 하는 불휘발성 메모리 장치.
  4. 제 3 항에 있어서,
    상기 프로그램 및 상기 검색은 파이프라인 방식으로 수행되는 것을 특징으로 하는 불휘발성 메모리 장치.
  5. 제 3 항에 있어서,
    상기 기입 드라이버 및 상기 데이터 스캐닝부의 데이터 입출력을 제어하는 제어 로직을 더 포함하는 것을 특징으로 하는 불휘발성 메모리 장치.
  6. 제 3 항에 있어서,
    외부로부터 입력된 상기 데이터 비트들을 저장하고, 상기 데이터 비트들을 상기 데이터 스캐닝부로 제공하는 입출력 버퍼를 더 포함하는 것을 특징으로 하는 불휘발성 메모리 장치.
  7. 제 3 항에 있어서,
    상기 데이터 스캐닝부는, 상기 버퍼로부터 상기 검색에 사용될 복수개의 데이터 비트들을 받아들여 저장하는 스캔 래치를 포함하는 것을 특징으로 하는 불휘발성 메모리 장치.
  8. 제 3 항에 있어서,
    상기 데이터 스캐닝부는, 소정의 동시 프로그램 비트수 만큼 상기 프로그램 될 데이터 비트들을 검색하는 것을 특징으로 하는 불휘발성 메모리 장치.
  9. 제 8 항에 있어서,
    상기 데이터 스캐닝부는, 상기 검색된 데이터 비트들과 상기 데이터 비트들의 어드레스 정보를 상기 기입 드라이버로 제공하는 것을 특징으로 하는 불휘발성 메모리 장치.
  10. 제 8 항에 있어서,
    상기 기입 드라이버는, 상기 검색된 데이터 비트들을 상기 동시 프로그램 비트수 단위로 프로그램하는 것을 특징으로 하는 불휘발성 메모리 장치.
KR1020040077926A 2004-09-30 2004-09-30 불휘발성 메모리 장치 및 그것의 프로그램 방법 KR100645045B1 (ko)

Priority Applications (4)

Application Number Priority Date Filing Date Title
KR1020040077926A KR100645045B1 (ko) 2004-09-30 2004-09-30 불휘발성 메모리 장치 및 그것의 프로그램 방법
US11/025,016 US7161839B2 (en) 2004-09-30 2004-12-28 Non-volatile memory device and program method thereof
JP2005285363A JP2006107719A (ja) 2004-09-30 2005-09-29 不揮発性メモリ装置及びそれのプログラム方法
US11/567,162 US7925820B2 (en) 2004-09-30 2006-12-05 Nonvolatile semiconductor memory device and program method therefor

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020040077926A KR100645045B1 (ko) 2004-09-30 2004-09-30 불휘발성 메모리 장치 및 그것의 프로그램 방법

Publications (2)

Publication Number Publication Date
KR20060028983A true KR20060028983A (ko) 2006-04-04
KR100645045B1 KR100645045B1 (ko) 2006-11-10

Family

ID=36098859

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020040077926A KR100645045B1 (ko) 2004-09-30 2004-09-30 불휘발성 메모리 장치 및 그것의 프로그램 방법

Country Status (3)

Country Link
US (1) US7161839B2 (ko)
JP (1) JP2006107719A (ko)
KR (1) KR100645045B1 (ko)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100706245B1 (ko) * 2005-04-13 2007-04-11 삼성전자주식회사 비트 스캔 방식을 사용한 노어 플래시 메모리 장치 및그것의 프로그램 방법
KR100733954B1 (ko) * 2006-06-15 2007-06-29 삼성전자주식회사 향상된 스캔 구조를 갖는 플래시 메모리 장치
KR100866957B1 (ko) * 2007-02-08 2008-11-05 삼성전자주식회사 데이터 프로그램 시간을 단축시킨 불휘발성 메모리 장치 및그 구동방법
US7826276B2 (en) 2006-12-22 2010-11-02 Samsung Electronics Co., Ltd. Non-volatile memory device reducing data programming and verification time, and method of driving the same
US8432736B2 (en) 2010-03-16 2013-04-30 Samsung Electronics Co., Ltd. Nonvolatile memory device and method of programming the same

Families Citing this family (6)

* 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
KR100645047B1 (ko) * 2004-10-12 2006-11-10 삼성전자주식회사 불휘발성 메모리 장치 및 그것의 고속 프로그램 방법
WO2008063999A2 (en) * 2006-11-13 2008-05-29 Britax Child Safety, Inc. Adaptor device and latch sensor circuit for child safety seat
JP2009146555A (ja) * 2007-11-20 2009-07-02 Toshiba Corp 不揮発性半導体記憶装置
US8243532B2 (en) * 2010-02-09 2012-08-14 Infineon Technologies Ag NVM overlapping write method
CN111951870B (zh) * 2019-05-15 2023-06-20 兆易创新科技集团股份有限公司 一种非易失性存储器的编程方法及控制装置

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5267190A (en) * 1991-03-11 1993-11-30 Unisys Corporation Simultaneous search-write content addressable memory
KR0164188B1 (ko) 1995-12-26 1999-01-15 배순훈 중복시청자를 위한 비디오컴팩트디스크 플레이어
KR100258574B1 (ko) * 1997-12-30 2000-06-15 윤종용 반도체 메모리 장치 및 그 장치의 프로그램/소거 검증 방법
JP4154771B2 (ja) 1998-11-10 2008-09-24 ソニー株式会社 不揮発性半導体記憶装置およびそのデータ書き込み方法
US6362990B1 (en) * 1999-09-10 2002-03-26 Sibercore Technologies Three port content addressable memory device and methods for implementing the same
JP4774613B2 (ja) 2001-03-19 2011-09-14 ソニー株式会社 不揮発性半導体記憶装置とそのプログラム方法

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100706245B1 (ko) * 2005-04-13 2007-04-11 삼성전자주식회사 비트 스캔 방식을 사용한 노어 플래시 메모리 장치 및그것의 프로그램 방법
KR100733954B1 (ko) * 2006-06-15 2007-06-29 삼성전자주식회사 향상된 스캔 구조를 갖는 플래시 메모리 장치
US7826276B2 (en) 2006-12-22 2010-11-02 Samsung Electronics Co., Ltd. Non-volatile memory device reducing data programming and verification time, and method of driving the same
KR100866957B1 (ko) * 2007-02-08 2008-11-05 삼성전자주식회사 데이터 프로그램 시간을 단축시킨 불휘발성 메모리 장치 및그 구동방법
US8432736B2 (en) 2010-03-16 2013-04-30 Samsung Electronics Co., Ltd. Nonvolatile memory device and method of programming the same

Also Published As

Publication number Publication date
US20060067131A1 (en) 2006-03-30
JP2006107719A (ja) 2006-04-20
KR100645045B1 (ko) 2006-11-10
US7161839B2 (en) 2007-01-09

Similar Documents

Publication Publication Date Title
JP4965106B2 (ja) 不揮発性メモリ装置及びそれの高速プログラム方法
US8539144B2 (en) Nonvolatile semiconductor memory device with advanced multi-page program operation
US6963501B2 (en) Nonvolatile memory
US8520436B2 (en) Programming memory devices
US7564718B2 (en) Method for programming a block of memory cells, non-volatile memory device and memory card device
JP2006107719A (ja) 不揮発性メモリ装置及びそれのプログラム方法
US6967896B2 (en) Address scramble
US6937513B1 (en) Integrated NAND and nor-type flash memory device and method of using the same
US6826081B2 (en) Nonvolatile semiconductor memory device, nonvolatile semiconductor memory device-integrated system, and defective block detecting method
US7925820B2 (en) Nonvolatile semiconductor memory device and program method therefor
US6400624B1 (en) Configure registers and loads to tailor a multi-level cell flash design
JP2006024347A (ja) ビットスキャニングプログラムを実行する不揮発性メモリ装置
US6490197B1 (en) Sector protection circuit and method for flash memory devices
JP3143161B2 (ja) 不揮発性半導体メモリ
US8296499B2 (en) Flash memory device and program method thereof
KR100874914B1 (ko) 데이터 프로그램 및 검증 시간을 단축시킨 불휘발성메모리 장치 및 그 구동방법
KR20080074360A (ko) 데이터 프로그램 시간을 단축시킨 불휘발성 메모리 장치 및그 구동방법
JP2003152117A (ja) 不揮発性半導体記憶装置

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20121031

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20131031

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20141031

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20151030

Year of fee payment: 10

FPAY Annual fee payment

Payment date: 20181031

Year of fee payment: 13

FPAY Annual fee payment

Payment date: 20191031

Year of fee payment: 14