KR101468026B1 - 메모리 셀 프로그래밍 방법 및 반도체 장치 - Google Patents
메모리 셀 프로그래밍 방법 및 반도체 장치 Download PDFInfo
- Publication number
- KR101468026B1 KR101468026B1 KR1020070046662A KR20070046662A KR101468026B1 KR 101468026 B1 KR101468026 B1 KR 101468026B1 KR 1020070046662 A KR1020070046662 A KR 1020070046662A KR 20070046662 A KR20070046662 A KR 20070046662A KR 101468026 B1 KR101468026 B1 KR 101468026B1
- Authority
- KR
- South Korea
- Prior art keywords
- data
- bit
- memory
- memory block
- block groups
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 49
- 239000004065 semiconductor Substances 0.000 title abstract description 23
- 239000000872 buffer Substances 0.000 claims description 8
- 238000009826 distribution Methods 0.000 description 11
- 102100021568 B-cell scaffold protein with ankyrin repeats Human genes 0.000 description 7
- 101000971155 Homo sapiens B-cell scaffold protein with ankyrin repeats Proteins 0.000 description 7
- 238000010586 diagram Methods 0.000 description 7
- 101001084254 Homo sapiens Peptidyl-tRNA hydrolase 2, mitochondrial Proteins 0.000 description 4
- 102100030867 Peptidyl-tRNA hydrolase 2, mitochondrial Human genes 0.000 description 4
- 238000013500 data storage Methods 0.000 description 4
- 230000005641 tunneling Effects 0.000 description 3
- 101100102849 Saccharomyces cerevisiae (strain ATCC 204508 / S288c) VTH1 gene Proteins 0.000 description 2
- 101150088150 VTH2 gene Proteins 0.000 description 2
- 238000013524 data verification Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000005684 electric field Effects 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 239000000758 substrate Substances 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H01—ELECTRIC ELEMENTS
- H01L—SEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
- H01L29/00—Semiconductor devices adapted for rectifying, amplifying, oscillating or switching, or capacitors or resistors with at least one potential-jump barrier or surface barrier, e.g. PN junction depletion layer or carrier concentration layer; Details of semiconductor bodies or of electrodes thereof ; Multistep manufacturing processes therefor
- H01L29/66—Types of semiconductor device ; Multistep manufacturing processes therefor
- H01L29/68—Types of semiconductor device ; Multistep manufacturing processes therefor controllable by only the electric current supplied, or only the electric potential applied, to an electrode which does not carry the current to be rectified, amplified or switched
- H01L29/76—Unipolar devices, e.g. field effect transistors
- H01L29/772—Field effect transistors
- H01L29/78—Field effect transistors with field effect produced by an insulated gate
- H01L29/788—Field effect transistors with field effect produced by an insulated gate with floating gate
- H01L29/7881—Programmable transistors with only two possible levels of programmation
- H01L29/7883—Programmable transistors with only two possible levels of programmation charging by tunnelling of carriers, e.g. Fowler-Nordheim tunnelling
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/10—Programming or data input circuits
Abstract
다수의 메모리 블록들에 대하여 데이터의 하나의 비트를 기입한 다음에 다른 하나의 비트를 기입하는 메모리 셀 프로그래밍 방법 및 반도체 장치가 개시된다. 본 발명에 따른 메모리 프로그래밍 방법은, 다수의 메모리 블록들 각각에, M(M은 자연수)비트 데이터를 기입하는 메모리 프로그래밍 방법으로써, 데이터 구분 단계 및 데이터 기입 단계를 구비한다. 데이터 구분 단계는, 상기 다수의 메모리 블록들을 복수개의 메모리 블록 그룹으로 구분한다. 데이터 기입 단계는, 상기 복수개의 메모리 블록 그룹들 중에서 2개 이상의 메모리 블록 그룹에 대하여 상기 데이터의 i(i는 M미만의 자연수)번째 비트를 동시에 기입한 다음에, 상기 2개 이상의 메모리 블록 그룹에 대하여 상기 데이터의 i+1번째 비트를 동시에 기입한다.
Description
본 발명의 상세한 설명에서 인용되는 도면을 보다 충분히 이해하기 위하여 각 도면의 간단한 설명이 제공된다.
도 1은 불휘발성 메모리 셀의 구조와 동작을 설명하는 도면이다.
도 2는 불휘발성 멀티 레벨 셀의 동작을 설명하는 도면이다.
도 3은 2개의 매트(MAT)를 포함하는 반도체 장치의 블록도이다.
도 4는 본 발명에 따른 메모리 프로그래밍 방법을 나타내는 흐름도이다.
도 5는 본 발명에 따른 메모리 프로그래밍 방법에 따라 도 3의 반도체 장치에 데이터의 첫 번째 비트를 기입하는 모습을 나타내는 도면이다.
도 6은 본 발명에 따른 메모리 프로그래밍 방법에 따라 도 3의 반도체 장치에 데이터의 두 번째 비트를 기입하는 모습을 나타내는 도면이다.
도 7은 n개의 매트를 포함하는 반도체 장치의 블록도이다.
본 발명은 메모리 셀 프로그래밍 방법 및 반도체 장치에 관한 것으로써, 특히 다수의 메모리 블록 그룹들을 동시에 프로그래밍 하는 메모리 셀 프로그래밍 방법 및 반도체 장치에 관한 것이다.
전기적으로 소거 및 프로그램이 가능한 불휘발성 메모리 장치는 전원이 공급되지 않는 상태에서도 데이터를 보존할 수 있는 특징을 가지고 있으며, 대표적인 것으로 플래시 메모리가 있다.
플래시 메모리를 구성하는 메모리 셀들은 제어 게이트, 플로팅 게이트, 소스, 및 드레인을 구비하는 셀 트랜지스터로 구성된다. 플래시 메모리의 셀 트랜지스터는 F-N 터널링 메커니즘에 의해서 프로그램 되거나 소거된다.
셀 트랜지스터의 소거 동작은 셀 트랜지스터의 제어 게이트에 접지 전압을 인가하고, 반도체 기판(또는 벌크)에 전원 전압보다 높은 고전압을 인가함으로써 수행된다. 이러한 소거 바이어스 조건에 따르면, 플로팅 게이트와 벌크 사이의 큰 전압 차에 의해 이들 사이에 강한 전계가 형성되며, 그 결과 부유 게이트에 존재하는 전자들은 F-N 터널링 효과에 의해서 벌크로 방출된다. 이 때, 소거된 셀 트랜지스터의 임계 전압은 음의 방향으로 이동된다.
셀 트랜지스터의 프로그램 동작은 제어 게이트에 전원 전압보다 높은 고전압을 인가하고, 드레인 및 벌크에 접지 전압을 인가함으로써 이루어진다. 이러한 바이어스 조건 하에서, 전자들이 F-N 터널링 효과에 의해서 셀 트랜지스터의 플로팅 게이트에 주입된다. 이 때 프로그램 된 셀 트랜지스터의 임계 전압은 양의 방향으로 이동된다.
도 1은 불휘발성 메모리 장치에 포함되는 메모리 셀의 구조와 동작을 설명하는 도면이다.
도 1에는, 불휘발성 메모리 장치에 포함되는 메모리 셀의 플로팅 게이트(FG)에 전자가 주입된 모습이 도시되어 있다. 플로팅 게이트(FG)에 전자가 주입된 상태를 프로그램(program) 상태라고 하고, 플로팅 게이트(FG)에 전자가 없어진 상태를 소거(erase) 상태라고 한다. 프로그램 상태의 임계 전압은 0보다 크고, 소거 상태의 임계 전압은 0보다 작다.
최근에는 플래시 메모리의 집적도를 더욱 향상시키기 위해서 한 개의 메모리 셀에 복수의 데이터를 저장하는 멀티-레벨 플래시 메모리에 대한 연구가 활발히 진행되고 있다. 멀티-레벨 플래시 메모리의 메모리 셀에는 2비트 이상의 멀티-비트가 저장될 수 있다. 이렇게 멀티-비트를 저장하는 메모리 셀을 멀티-레벨 셀(multi-level cell)이라 하고, 이에 대해 단일-비트를 저장하는 메모리 셀을 단일-레벨 셀(single-level cell)이라 한다. 멀티-레벨 셀은 2비트 이상을 저장하므로, 4개 이상의 임계 전압 분포를 가지며 이에 대응되는 4개 이상의 데이터 저장 상태를 갖는다. 이하에서는 멀티-레벨 플래시 메모리의 메모리 셀에 2비트의 데이터가 저장되는 예가 설명된다. 그러나, 멀티-레벨 플래시 메모리의 메모리 셀에는 3비트 이상의 데이터가 멀티-레벨 셀에 저장될 수도 있다.
2비트를 저장하는 멀티-레벨 셀은 4개의 데이터 저장 상태, 즉 11, 01, 10, 00 을 가질 수 있다. 예를 들어, 11은 소거된 상태이고, 01, 10, 및 00은 프로그램 된 상태를 나타낼 수 있다.
4개의 데이터 저장 상태의 분포는 멀티-레벨 셀의 임계 전압 분포들에 대응된다. 예를 들어, 멀티-레벨 셀의 임계 전압 분포들이 각각 VTH1~VTH2, VTH3~VTH4, VTH5~VTH6, VTH7~VTH8 이라 가정하면, 데이터 저장상태 11, 01, 10, 00 은 각각 VTH1~VTH2, VTH3~VTH4, VTH5~VTH6, VTH7~VTH8 에 대응된다. 즉, 멀티-레벨 셀의 임계 전압이 4가지 임계 전압 분포들 중 어느 하나에 대응되면, 11, 01, 10, 00 중 해당하는 2비트의 데이터가 멀티-레벨 셀에 저장된다.
도 2는 불휘발성 메모리 장치에 포함되는 멀티 레벨 셀의 동작을 설명하는 도면이다.
도 2에는, 멀티 레벨 셀의 플로팅 게이트(FG)에 전자가 없는 소거 상태, 플로팅 게이트(FG)에 전자가 일부 주입된 제1 프로그램 상태, 플로팅 게이트(FG)에 전자가 더 많이 주입된 제2 프로그램 상태 및 플로팅 게이트(FG)에 전자가 가장 많이 주입된 제3 프로그램 상태가 도시되어 있다. 소거 상태, 제1 프로그램 상태, 제2 프로그램 상태 및 제3 프로그램 상태로 갈수록, 임계 전압이 점점 커진다.
일반적인 메모리 프로그램 방법은 첫 번째 메모리 블록에 데이터의 모든 비트들을 순차적으로 기입한 다음에, 두 번째 메모리 블록에 데이터의 모든 비트들을 순차적으로 기입한다. 즉, 첫 번째 메모리 블록에 대한 데이터 기입이 완료된 다음에, 두 번째 메모리 블록에 대한 데이터 기입을 수행한다. 이 경우, 첫 번째 메모리 블록에 대한 데이터 기입이 완료될 때까지, 두 번째 메모리 블록에 대한 데이터 기입을 수행하지 못하므로, 데이터 기입 속도를 향상시키는 데 제약이 있다. 그러므로, 데이터 기입 속도를 향상시키기 위하여, 새로운 메모리 프로그램 방법이 요 구된다.
본 발명이 이루고자 하는 기술적 과제는 다수의 메모리 블록 그룹들을 동시에 프로그래밍 하는 메모리 셀 프로그래밍 방법을 제공하는 데 있다.
본 발명이 이루고자 하는 다른 기술적 과제는 다수의 메모리 블록 그룹들을 동시에 프로그래밍 하는 반도체 장치를 제공하는 데 있다.
상기 기술적 과제를 달성하기 위한 본 발명에 따른 메모리 프로그래밍 방법은, 다수의 메모리 블록들 각각에, M(M은 자연수)비트 데이터를 기입하는 메모리 프로그래밍 방법으로써, 데이터 구분 단계 및 데이터 기입 단계를 구비한다. 데이터 구분 단계는, 상기 다수의 메모리 블록들을 복수개의 메모리 블록 그룹으로 구분한다. 데이터 기입 단계는, 상기 복수개의 메모리 블록 그룹들 중에서 2개 이상의 메모리 블록 그룹에 대하여 상기 데이터의 i(i는 M미만의 자연수)번째 비트를 동시에 기입한 다음에, 상기 2개 이상의 메모리 블록 그룹에 대하여 상기 데이터의 i+1번째 비트를 동시에 기입한다.
본 발명과 본 발명의 동작상의 이점 및 본 발명의 실시에 의하여 달성되는 목적을 충분히 이해하기 위해서는 본 발명의 바람직한 실시예를 예시하는 첨부 도면 및 도면에 기재된 내용을 참조하여야 한다.
이하, 첨부한 도면을 참조하여 본 발명의 바람직한 실시예를 설명함으로써, 본 발명을 상세히 설명한다. 각 도면에 제시된 동일한 참조부호는 동일한 부재를 나타낸다.
도 3은 2개의 매트(MAT)를 포함하는 반도체 장치의 블록도이다.
도 3의 반도체 장치는 적어도 하나의 메모리 블록을 각각 포함하는 2개의 매트(MAT1, MAT2)를 포함한다. 각각의 매트(MAT1, MAT2)는 적어도 하나의 메모리 블록을 각각 포함하는 복수개의 뱅크들(BANK1~BANK4)을 포함할 수 있다. 각각의 매트 중앙에는 로우 디코더들(RD1, RD2)이 배치될 수 있다. 로우 디코더들(RD1, RD2)이 매트의 중앙에 배치되지 않고 다른 쪽에 배치될 수 있다는 점은 당업자라면 쉽게 알 수 있을 것이다. 도 3의 반도체 장치는 복수개의 페이지 버퍼들(PB1, PB2)을 구비할 수 있다. 복수개의 페이지 버퍼들(PB1, PB2)은 복수개의 매트들(MAT1, MAT2)에 각각 대응되고, 데이터를 수신하여 대응되는 매트들(MAT1, MAT2)로 전송한다. 도 3의 반도체 장치는 컨트롤러(CTRL)를 구비할 수 있다. 컨트롤러(CTRL)는 매트들(MAT1, MAT2)에 포함되는 메모리 블록들에 데이터를 기입하는 동작을 제어한다.
본 발명에 따른 메모리 프로그래밍 방법은, 다수의 메모리 블록에 첫 번째 비트를 동시에 기입한 다음에, 두 번째 비트를 동시에 기입한다. 예를 들어, 도 3의 첫 번째 매트(MAT1)와 두 번째 매트(MAT2)에 첫 번째 비트를 동시에 기입한 다음에, 첫 번째 매트(MAT1)와 두 번째 매트(MAT2)에 두 번째 비트를 동시에 기입한다. 반면에, 일반적인 메모리 프로그래밍 방법은, 하나의 메모리 블록에 첫 번째 비트와 두 번째 비트를 기입한 다음에, 다른 메모리 블록에 첫 번째와 두 번째 비트를 기입한다. 즉, 본 발명에 따른 메모리 프로그래밍 방법은 일반적인 메모리 프로그래밍 방법에 비하여 프로그래밍 속도를 향상시킬 수 있다.
이하에서 도 3 내지 도 6을 참조하여, 본 발명에 따른 메모리 프로그래밍 방법이 자세히 설명된다.
도 4는 본 발명에 따른 메모리 프로그래밍 방법을 나타내는 흐름도이다.
도 4를 참조하면, 본 발명에 따른 메모리 프로그래밍 방법은, 복수개의 메모리 블록 그룹들에 복수 비트 데이터를 기입하는 메모리 프로그래밍 방법이다. 메모리 블록 그룹은 다수의 메모리 블록을 하나의 그룹으로 묶은 것으로써, 도 3의 매트들(MAT1, MAT2)일 수도 있다.
본 발명에 따른 메모리 프로그래밍 방법은, 첫 번째 메모리 블록 그룹과 두 번째 메모리 블록 그룹(예를 들어, 도 3 MAT1, MAT2)에, 데이터의 첫 번째 비트를 동시에 기입한다(S410). 그 다음, 첫 번째 메모리 블록 그룹과 두 번째 메모리 블록 그룹(예를 들어, 도 3의 MAT1, MAT2)에 데이터의 두 번째 비트를 동시에 기입한다(S470).
좀 더 설명하면, 첫 번째 메모리 블록 그룹과 두 번째 메모리 블록 그룹에 속하는 메모리 블록에 데이터의 첫 번째 비트를 동시에 기입하기 시작한다. 다음으로 첫 번째 메모리 블록 그룹과 두 번째 메모리 블록 그룹의 메모리 블록에 두 번째 비트를 기입한다. 여기서 메모리 블록 그룹 내의 프로그램 하고자 하는 블록의 선택은 콘트롤러에 의해 정해질 수 있다.
첫 번째 비트의 기입이 완료되면, 데이터의 두 번째 비트를 첫 번째 메모리 블록 그룹과 두 번째 메모리 블록 그룹으로 동시에 기입한다. 또한, 데이터는 여러 개의 메모리 블록들에 동시에 기입될 수도 있다. 예를 들어, 첫 번째 메모리 블록 그룹에 속하는 다수의 메모리 블록과 두 번째 메모리 블록 그룹에 속하는 다수의 메모리 블록에 데이터가 동시에 기입될 수도 있다.
도 5는 본 발명에 따른 메모리 프로그래밍 방법에 따라 도 3의 반도체 장치에 데이터의 첫 번째 비트를 기입하는 모습을 나타내는 도면이다.
도 5(a)를 참조하면, 컨트롤러(CTRL)는 데이터 버스(DATABUS)를 통하여 첫 번째 매트(MAT1)에 대응되는 페이지 버퍼(PB1)와 두 번째 매트(MAT2)에 대응되는 페이지 버퍼(PB2)로 첫 번째 비트(BIT1)를 전송한다. 페이지 버퍼(PB1, PB2)는 첫 번째 매트(MAT1)에 속하는 뱅크들(BANK1, BANK2)과 두 번째 매트(MAT2)에 속하는 뱅크들(BANK3, BANK4)로 첫 번째 비트(BIT1)를 전송한다. 상기 데이터의 비트들은 여러 개의 뱅크(BANK1, BANK2, BANK3, BANK4)로 동시에 전송될 수 있다. 상기 데이터의 비트들은 복수개의 비트라인들을 통하여 여러 개의 뱅크(BANK1, BANK2, BANK3, BANK4)로 동시에 전송될 수 있다. 한편, 프로그래밍 되기 이전에, 반도체 장치의 블록들은 모두 소거(erase)되어 있는 것이 바람직하다.
도 5(b)를 참조하면, 전송된 첫 번째 비트(BIT1) 값에 따라 대응되는 임계전압분포를 가지도록, 뱅크들(BANK1~BANK4)에 포함되는 메모리 셀들은 프로그래밍 된다.
도 6은 본 발명에 따른 메모리 프로그래밍 방법에 따라 도 3의 반도체 장치에 데이터의 두 번째 비트를 기입하는 모습을 나타내는 도면이다.
도 6(a)를 참조하면, 컨트롤러(CTRL)는 데이터 버스(DATABUS)를 통하여 두 번째 비트(BIT2)를 페이지 버퍼(PB1, PB2)로 전송하고, 페이지 버퍼(PB1, PB2)는 두 번째 비트를 첫 번째 매트(MAT1)와 두 번째 매트(MAT2)에 속하는 뱅크들(BANK1~BANK4)로 두 번째 비트(BIT2)를 전송한다. 컨트롤러(CTRL)는, 도 5(a)의 첫 번째 비트(BIT1)를 전송한 다음에, 도 6(a)의 두 번째 비트(BIT2)를 전송하는 동작을 수행한다.
도 6(b)를 참조하면, 전송된 두 번째 비트(BIT2) 값에 따라 그에 대응되는 임계전압분포를 가지도록, 뱅크들(BANK1, BANK2)에 포함되는 메모리 셀들이 프로그래밍된다. 좀 더 설명하면, 첫 번째 비트 값에 따른 임계전압분포에 따라, 두 번째 비트를 프로그래밍한다. 예를 들어, 첫 번째 비트가 "1"인 경우에 "11"에서 "01"로 프로그래밍 하고, 첫 번째 비트가 "0"일때 "10"에서 "00"으로 프로그래밍 한다.
본 발명에 따른 메모리 프로그래밍 방법은, 첫 번째 비트를 기입하는 단계(S410) 및 두 번째 비트를 기입하는 단계(S420) 이후에, 메모리 블록 그룹에 데이터의 몇 번째 비트까지 기입되어 있는지에 관한 정보를 저장하는 단계를 더 구비할 수 있다. 상기 저장된 정보를 통하여, 메모리 블록 그룹의 데이터 기입이 몇 번째 비트까지 진행되었는지를 알 수 있다.
예를 들어, 상기 저장된 정보는 데이터 검증(verify) 단계에서 이용될 수 있다. 좀 더 설명하면, 본 발명에 따른 메모리 프로그래밍 방법은, 첫 번째 비트를 기입하는 단계(S410, S460) 이후에 기입된 첫 번째 비트를 검증(verify)하는 단계를 더 구비할 수 있고, 두 번째 비트를 기입하는 단계(S420, S470) 이후에, 기입된 두 번째 비트를 검증(verify)하는 단계를 더 구비할 수 있다. 이 경우, 첫 번째 비트를 검증하는 단계와 두 번째 비트를 검증하는 단계는, 정보를 저장하는 단계에서 저장된 비트까지만 검증할 수 있다. 즉, 첫 번째 비트를 검증하는 단계는 두 번째 비트를 검증할 필요 없이 이미 기입된 첫 번째 비트만을 검증한다. 그러므로, 데이터 검증 시간을 줄일 수 있다. 데이터의 몇 번째 비트까지 기입되어 있는지에 관한 정보를 저장하기 위하여, 본 발명에 따른 반도체 장치의 각각의 메모리 블록은, 플래그 셀을 구비할 수 있다. 상기 플래그 셀은, 상기 플래그 셀이 속하는 메모리 블록에 데이터의 몇 번째 비트까지 기입되어 있는지에 관한 정보를 저장한다. 본 발명에 따른 반도체 장치는, 데이터의 첫 번째 비트를 저장한 다음에 플래그 셀의 비트를 '0'으로 프로그래밍 할 수 있다.
이상에서는, 2개의 매트를 포함하는 반도체 장치를 기준으로 하여 설명되었으나, 본 발명에 따른 메모리 프로그래밍 방법은 3개 이상의 매트를 포함하는 반도체 장치(예를 들어, 도 7에 도시된 n개의 매트들을 포함하는 반도체 장치)에도 적용될 수 있다. 본 발명에 따른 메모리 프로그래밍 방법은, n개의 메모리 매트들 전체에 대하여 첫 번째 비트를 동시에 기입한 다음에, n개의 메모리 매트들 전체에 대하여 두 번째 비트를 동시에 기입할 수 있다.
또한, 본 발명에 따른 메모리 프로그래밍 방법은, 2개 이상의 메모리 블록 그룹에 대한 데이터 기입을 완료한 이후에, 상기 2개 이상의 메모리 블록 그룹을 제외한 다른 2개 이상의 메모리 블록 그룹에 대하여 데이터의 첫 번째 비트를 동시에 기입한 다음에, 상기 다른 2개 이상의 메모리 블록 그룹에 대하여 데이터의 두 번째 비트를 동시에 기입할 수 있다. 예를 들어, 첫 번째 매트(MAT1)와 두 번째 매트(미도시)에 첫 번째 비트를 동시에 기입한 다음에, 두 번째 비트를 동시에 기입 할 수 있다. 그 다음에, 세 번째 매트(미도시)와 네 번째 매트(미도시)에 첫 번째 비트를 동시에 기입하고, 두 번째 비트를 동시에 기입할 수 있다. 또한, 본 발명에 따른 메모리 프로그래밍 방법은, n개의 메모리 그룹들 전체에 대한 데이터 기입을 완료할 때까지, 2개 이상의 메모리 블록 그룹에 대한 데이터 기입 단계를 반복할 수 있다.
또한, 본 발명에 따른 메모리 프로그래밍 방법이 2개의 메모리 블록 그룹씩 데이터 기입을 수행할 필요가 없다는 점은 당업자라면 인식할 수 있을 것이다. 예를 들어, 3개의 메모리 블록 그룹에 대하여 동시에 데이터 기입을 수행할 수도 있다. 나아가, 1개의 메모리 블록 그룹에 속하는 다수의 메모리 블록에 동시에 데이터 기입할 수도 있다. 또한, 서로 다른 개수의 메모리 블록 그룹 별로, 데이터 기입을 동시에 수행할 수 있다. 예를 들어, 2개의 메모리 블록 그룹에 대하여 동시에 데이터 기입을 수행한 다음에, 3개의 메모리 블록 그룹에 대하여 동시에 데이터 기입을 수행할 수도 있다.
이상에서는, 메모리 블록에 2개의 비트를 저장하는 것을 설명하였으나, 본 발명에 따른 메모리 프로그래밍 방법은 메모리 블록에 3개 이상의 비트를 저장할 수도 있다. 예를 들어, 첫 번째 메모리 블록 그룹과 두 번째 메모리 블록 그룹에 첫 번째 비트를 동시에 저장한 다음에, 두 번째 비트를 동시에 저장한다. 그 다음, 첫 번째 메모리 블록 그룹과 두 번째 메모리 블록 그룹에 세 번째 비트를 동시에 저장하고, 이어서 네 번째 비트를 동시에 저장할 수 있다.
또한, 본 발명에 따른 메모리 프로그래밍 방법은, 다수의 싱글-레벨 셀(Single-Level Cell ; SLC)들을 포함하는 싱글-레벨 메모리 블록들, 및 다수의 멀티-레벨 셀(Multi-Level Cell ; MLC)들을 포함하는 멀티-레벨 메모리 블록들을 구비하는 반도체 장치에도 적용될 수 있다. 이 경우, 본 발명에 따른 메모리 프로그래밍 방법은, 각각의 멀티-레벨 메모리 블록에 포함되는 멀티-레벨 셀들 전체에 첫 번째 비트를 기입한 다음에, 두 번째 비트를 기입한다. 반면에, 싱글-레벨 메모리 블록에는 일반적인 프로그래밍 방법이 적용될 수 있다.
본 발명에 따른 메모리 프로그래밍 방법은, LSB(Least Significant Bit)를 먼저 기입하고, MSB(Most Significant Bit)를 나중에 기입할 수 있다. 예를 들어, 앞서 설명된 첫 번째 비트는 LSB일 수 있고, 두 번째 비트는 MSB일 수 있다.
본 발명에 따른 메모리 프로그래밍 방법이 적용되는 반도체 장치의 메모리 블록에 포함되는 메모리 셀들은, M비트의 데이터가 저장되는 멀티-레벨 플래시 메모리 셀일 수 있다. 또한, 메모리 블록에 포함되는 메모리 셀들은, 임계 전압을 기준으로 구분되는 2M개의 임계 전압 분포를 구비할 수 있다. 예를 들어, 도 6(b)에는 멀티-레벨 플래시 메모리 셀이 4개의 임계 전압 분포를 가지는 모습이 도시되어 있다. 4개의 임계 전압 분포를 가지는 멀티-레벨 플래시 메모리 셀은, 2비트의 데이터를 저장할 수 있다.
본 발명의 다른 면에 따른 메모리 프로그래밍 방법은, 다수의 메모리 블록들 각각에, M(M은 자연수)비트 데이터를 기입하는 메모리 프로그래밍 방법으로써, 데이터 구분 단계와 데이터 기입 단계를 구비할 수 있다. 데이터 구분 단계는 다수의 메모리 블록들을 복수개의 메모리 블록 그룹으로 구분한다. 데이터 기입 단계는 각각의 메모리 그룹 별로, 각각의 메모리 블록 그룹에 포함되는 메모리 블록들 전체에 데이터의 i(i는 M미만의 자연수)번째 비트를 각각 기입한 다음에, 각각의 메모리 블록 그룹에 포함되는 메모리 블록들 전체에 데이터의 i+1번째 비트를 각각 기입한다. 도 7을 예로 들어 설명하면, 데이터 구분 단계는 다수의 메모리 블록들을 n개의 매트들(MAT1~MATn)로 구분할 수 있다.
데이터 기입 단계는, 각각의 메모리 블록 그룹에 포함되는 메모리 블록들 전체에 대하여, 동시에 데이터의 i번째 비트 또는 i+1번째 비트를 기입할 수 있다. 데이터 기입 단계는, 복수개의 메모리 블록 그룹들에 대하여, 데이터 기입 단계를 순차적으로 수행할 수 있다.
본 발명의 다른 면에 따른 메모리 프로그래밍 방법은, 메모리 블록 그룹에 상기 데이터의 몇 번째 비트가 기입되어 있는지에 관한 정보를 저장하는 단계를 더 구비할 수 있다. 이 경우, 기입된 데이터를 검증할 때, 정보를 저장하는 단계에서 저장된 비트까지만 데이터를 검증할 수 있다.
이상에서와 같이 도면과 명세서에서 최적 실시예가 개시되었다. 여기서 특정한 용어들이 사용되었으나, 이는 단지 본 발명을 설명하기 위한 목적에서 사용된 것이지 의미한정이나 특허청구범위에 기재된 본 발명의 범위를 제한하기 위하여 사용된 것은 아니다. 그러므로 본 기술분야의 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시예가 가능하다는 점을 이해할 것이다. 따라서, 본 발명의 진정한 기술적 보호범위는 첨부된 특허청구범위의 기술적 사상에 의해 정해 져야 할 것이다.
상술한 바와 같이 본 발명에 따른 메모리 셀 프로그래밍 방법 및 반도체 장치는, 다수의 메모리 블록 그룹들을 동시에 프로그래밍 함으로써, 프로그래밍 속도를 향상시킬 수 있는 장점이 있다.
Claims (22)
- 다수의 메모리 블록들 각각에, M(M은 자연수)비트 데이터를 기입하는 메모리 프로그래밍 방법에 있어서,상기 다수의 메모리 블록들을 복수개의 메모리 블록 그룹으로 구분하는, 데이터 구분 단계;상기 복수개의 메모리 블록 그룹들 중에서 2개 이상의 메모리 블록 그룹에 대하여 상기 데이터의 i(i는 M미만의 자연수)번째 비트를 동시에 기입한 다음에, 상기 2개 이상의 메모리 블록 그룹에 대하여 상기 데이터의 i+1번째 비트를 동시에 기입하는, 데이터 기입 단계; 및상기 메모리 블록 그룹에 상기 데이터의 몇 번째 비트가 기입되어 있는지에 관한 정보를 저장하는 단계를 구비하는 것을 특징으로 하는 메모리 프로그래밍 방법.
- 제1항에 있어서, 상기 데이터 기입 단계는,상기 복수개의 메모리 블록 그룹들 전체에 대하여 상기 i번째 비트를 동시에 기입한 다음에, 상기 복수개의 메모리 블록 그룹들 전체에 대하여 상기 i+1번째 비트를 동시에 기입하는 것을 특징으로 하는 메모리 프로그래밍 방법.
- 제1항에 있어서, 상기 데이터 기입 단계는,상기 2개 이상의 메모리 블록 그룹에 대한 데이터 기입을 완료한 이후에,상기 2개 이상의 메모리 블록 그룹을 제외한 다른 2개 이상의 메모리 블록 그룹에 대하여 상기 데이터의 i번째 비트를 동시에 기입한 다음에, 상기 다른 2개 이상의 메모리 블록 그룹에 대하여 상기 데이터의 i+1번째 비트를 동시에 기입하는 것을 특징으로 하는 메모리 프로그래밍 방법.
- 제3항에 있어서, 상기 메모리 프로그래밍 방법은,상기 복수개의 메모리 블록 그룹들 전체에 대한 데이터 기입을 완료할 때까지,2개 이상의 메모리 블록 그룹에 대한 상기 데이터 기입 단계를 반복하는 것을 특징으로 하는 메모리 프로그래밍 방법.
- 삭제
- 제1항에 있어서,상기 정보를 저장하는 단계에서 저장된 비트까지만 상기 데이터를 검증하는 단계를 더 구비하는 것을 특징으로 하는 메모리 프로그래밍 방법.
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 다수의 메모리 블록들을 각각 포함하는 복수개의 메모리 블록 그룹들; 및상기 복수개의 메모리 블록 그룹들 중에서 2개 이상의 메모리 블록 그룹들에 M(M은 자연수)비트 데이터를 기입하는 동작에서, 상기 데이터의 i(i는 M미만의 자연수)번째 비트를 동시에 기입한 다음에, 상기 2개 이상의 메모리 블록 그룹들에 대하여 상기 데이터의 i+1번째 비트를 동시에 기입하는 컨트롤러를 구비하고,상기 각각의 메모리 블록은 상기 메모리 블록에 상기 데이터의 몇 번째 비트까지 기입되어 있는지에 관한 정보를 저장하는 플래그 셀을 구비하는 것을 특징으로 하는 반도체 장치.
- 삭제
- 제18항에 있어서,상기 복수개의 메모리 블록 그룹들에 각각 대응되고, 상기 데이터의 비트들을 수신하여 대응되는 메모리 블록 그룹으로 전송하는 복수개의 페이지 버퍼들을 더 구비하는 것을 특징으로 하는 반도체 장치.
- 삭제
- 제18항에 있어서, 상기 복수개의 메모리 블록 그룹들은,다수의 싱글-레벨 셀(Single-Level Cell ; SLC)들을 포함하는 싱글-레벨 메모리 블록들 및 다수의 멀티-레벨 셀(Multi-Level Cell ; MLC)들을 포함하는 멀티-레벨 메모리 블록들을 구비하고,상기 컨트롤러는, 상기 각각의 멀티-레벨 메모리 블록에 포함되는 상기 멀티-레벨 셀들 전체에 상기 i번째 비트를 기입한 다음에 상기 i+1번째 비트를 기입하는 것을 특징으로 하는 반도체 장치.
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020070046662A KR101468026B1 (ko) | 2007-05-14 | 2007-05-14 | 메모리 셀 프로그래밍 방법 및 반도체 장치 |
US12/081,568 US7911842B2 (en) | 2007-05-14 | 2008-04-17 | Memory cell programming method and semiconductor device for simultaneously programming a plurality of memory block groups |
JP2008126365A JP2008282521A (ja) | 2007-05-14 | 2008-05-13 | 多数のメモリブロックグループを同時にプログラミングするメモリセルプログラミング方法及び半導体装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020070046662A KR101468026B1 (ko) | 2007-05-14 | 2007-05-14 | 메모리 셀 프로그래밍 방법 및 반도체 장치 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20080100671A KR20080100671A (ko) | 2008-11-19 |
KR101468026B1 true KR101468026B1 (ko) | 2014-12-02 |
Family
ID=40027304
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020070046662A KR101468026B1 (ko) | 2007-05-14 | 2007-05-14 | 메모리 셀 프로그래밍 방법 및 반도체 장치 |
Country Status (3)
Country | Link |
---|---|
US (1) | US7911842B2 (ko) |
JP (1) | JP2008282521A (ko) |
KR (1) | KR101468026B1 (ko) |
Families Citing this family (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8508998B2 (en) * | 2009-02-09 | 2013-08-13 | Rambus Inc. | Multiple plane, non-volatile memory with synchronized control |
US8266503B2 (en) * | 2009-03-13 | 2012-09-11 | Fusion-Io | Apparatus, system, and method for using multi-level cell storage in a single-level cell mode |
KR101594030B1 (ko) * | 2009-05-13 | 2016-02-29 | 삼성전자주식회사 | 플래시 메모리 장치의 프로그램 방법 |
US8238166B2 (en) * | 2009-10-12 | 2012-08-07 | Macronix International Co., Ltd. | Methods of programming and reading single-level trapped-charge memory cells using second-bit threshold detection |
US8661184B2 (en) | 2010-01-27 | 2014-02-25 | Fusion-Io, Inc. | Managing non-volatile media |
US8854882B2 (en) | 2010-01-27 | 2014-10-07 | Intelligent Intellectual Property Holdings 2 Llc | Configuring storage cells |
KR20110099883A (ko) * | 2010-03-03 | 2011-09-09 | 삼성전자주식회사 | 홀수의 매트들을 갖는 비휘발성 메모리 장치, 그것을 포함하는 메모리 시스템 및 그것의 배속 동작 방법 |
KR101691097B1 (ko) * | 2010-02-19 | 2016-12-30 | 삼성전자주식회사 | 홀수의 매트들을 구비한 비휘발성 메모리 장치, 그것의 블록 설정 방법, 그것을 포함하는 메모리 시스템 |
US9245653B2 (en) | 2010-03-15 | 2016-01-26 | Intelligent Intellectual Property Holdings 2 Llc | Reduced level cell mode for non-volatile memory |
TWI566249B (zh) * | 2014-11-21 | 2017-01-11 | 慧榮科技股份有限公司 | 快閃記憶體的資料寫入方法與其控制裝置 |
TWI576846B (zh) | 2014-12-17 | 2017-04-01 | 慧榮科技股份有限公司 | 快閃記憶體的資料寫入方法與其控制裝置 |
US9953703B2 (en) | 2015-10-16 | 2018-04-24 | Samsung Electronics Co., Ltd. | Programming method of non volatile memory device |
JP6818664B2 (ja) | 2017-09-14 | 2021-01-20 | キオクシア株式会社 | 半導体記憶装置 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001325796A (ja) * | 2000-03-08 | 2001-11-22 | Toshiba Corp | 不揮発性半導体記憶装置 |
KR20020092261A (ko) * | 2002-08-31 | 2002-12-11 | 지인정보기술 주식회사 | 멀티-플레인 구조의 플래시 메모리 관리 방법 |
JP2004192789A (ja) * | 2002-11-29 | 2004-07-08 | Toshiba Corp | 半導体記憶装置 |
KR100630405B1 (ko) * | 2004-03-16 | 2006-10-02 | 가부시끼가이샤 도시바 | 불휘발성 반도체 메모리 |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2519593B2 (ja) * | 1990-10-24 | 1996-07-31 | 三菱電機株式会社 | 半導体記憶装置 |
JP3293935B2 (ja) * | 1993-03-12 | 2002-06-17 | 株式会社東芝 | 並列ビットテストモード内蔵半導体メモリ |
KR970005644B1 (ko) * | 1994-09-03 | 1997-04-18 | 삼성전자 주식회사 | 불휘발성 반도체 메모리장치의 멀티블럭 소거 및 검증장치 및 그 방법 |
JPH09161476A (ja) * | 1995-10-04 | 1997-06-20 | Toshiba Corp | 半導体メモリ及びそのテスト回路、並びにデ−タ転送システム |
US5920573A (en) * | 1996-07-22 | 1999-07-06 | Texas Istruments Incorporated | Method and apparatus for reducing area and pin count required in design for test of wide data path memories |
JPH10177797A (ja) * | 1996-12-17 | 1998-06-30 | Toshiba Corp | 半導体記憶装置 |
JP3570879B2 (ja) * | 1997-07-09 | 2004-09-29 | 富士通株式会社 | 不揮発性半導体記憶装置 |
JP2000132981A (ja) * | 1998-10-26 | 2000-05-12 | Nec Corp | 不揮発性半導体記憶装置の書込み装置とその書込み方法 |
US6457094B2 (en) * | 1999-01-22 | 2002-09-24 | Winbond Electronics Corporation | Memory array architecture supporting block write operation |
TW504694B (en) * | 2000-01-12 | 2002-10-01 | Hitachi Ltd | Non-volatile semiconductor memory device and semiconductor disk device |
JP4709525B2 (ja) * | 2004-10-14 | 2011-06-22 | 株式会社東芝 | 不揮発性半導体記憶装置 |
JP4883570B2 (ja) * | 2006-09-27 | 2012-02-22 | ルネサスエレクトロニクス株式会社 | 半導体記憶装置、不揮発性半導体記憶装置、及びそれらの動作方法 |
-
2007
- 2007-05-14 KR KR1020070046662A patent/KR101468026B1/ko not_active IP Right Cessation
-
2008
- 2008-04-17 US US12/081,568 patent/US7911842B2/en not_active Expired - Fee Related
- 2008-05-13 JP JP2008126365A patent/JP2008282521A/ja active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001325796A (ja) * | 2000-03-08 | 2001-11-22 | Toshiba Corp | 不揮発性半導体記憶装置 |
KR20020092261A (ko) * | 2002-08-31 | 2002-12-11 | 지인정보기술 주식회사 | 멀티-플레인 구조의 플래시 메모리 관리 방법 |
JP2004192789A (ja) * | 2002-11-29 | 2004-07-08 | Toshiba Corp | 半導体記憶装置 |
KR100630405B1 (ko) * | 2004-03-16 | 2006-10-02 | 가부시끼가이샤 도시바 | 불휘발성 반도체 메모리 |
Also Published As
Publication number | Publication date |
---|---|
US7911842B2 (en) | 2011-03-22 |
US20080285343A1 (en) | 2008-11-20 |
JP2008282521A (ja) | 2008-11-20 |
KR20080100671A (ko) | 2008-11-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101468026B1 (ko) | 메모리 셀 프로그래밍 방법 및 반도체 장치 | |
KR100771882B1 (ko) | 멀티-레벨 불휘발성 메모리 장치의 프로그램 방법 | |
KR100771883B1 (ko) | 멀티-레벨 불휘발성 메모리 장치 및 프로그램 방법 | |
KR101871546B1 (ko) | 개선된 제 1 패스 프로그래밍을 갖는 비휘발성 메모리 및 방법 | |
US7548457B2 (en) | Multi-bit nonvolatile memory device and related programming method | |
EP2210256B1 (en) | Non-equal threshold voltage ranges in mlc nand | |
US7633798B2 (en) | M+N bit programming and M+L bit read for M bit memory cells | |
US7876614B2 (en) | Multi-bit flash memory device and program and read methods thereof | |
KR101177278B1 (ko) | 비휘발성 메모리 셀 프로그래밍 방법 | |
US20100265771A1 (en) | Method of programming memory cells of series strings of memory cells | |
US7768827B2 (en) | Data verification method and semiconductor memory | |
JP4746658B2 (ja) | 半導体記憶システム | |
KR20080114386A (ko) | 비휘발성 메모리 시스템, 및 비휘발성 메모리 시스템의프로그램 방법 | |
US8422312B2 (en) | Systems and methods for erasing a memory | |
US20120243310A1 (en) | Method of programming a multi-bit per cell non-volatile memory | |
KR101303177B1 (ko) | 불휘발성 메모리 소자 및 그 동작 방법 | |
KR101227368B1 (ko) | 낸드 플래시 메모리 소자의 프로그래밍 방법 및 데이터읽기 방법. | |
KR20080022394A (ko) | 멀티 레벨 셀을 갖는 플래쉬 메모리 소자의 프로그램 방법 | |
KR20100106761A (ko) | 플래시 소자의 프로그램 동작 방법 | |
KR20110001570A (ko) | 플래시 메모리 소자의 프로그램 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E902 | Notification of reason for refusal | ||
E90F | Notification of reason for final refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
LAPS | Lapse due to unpaid annual fee |