KR101689185B1 - 반도체 메모리 장치 및 데이터 처리 방법 - Google Patents
반도체 메모리 장치 및 데이터 처리 방법 Download PDFInfo
- Publication number
- KR101689185B1 KR101689185B1 KR1020150117396A KR20150117396A KR101689185B1 KR 101689185 B1 KR101689185 B1 KR 101689185B1 KR 1020150117396 A KR1020150117396 A KR 1020150117396A KR 20150117396 A KR20150117396 A KR 20150117396A KR 101689185 B1 KR101689185 B1 KR 101689185B1
- Authority
- KR
- South Korea
- Prior art keywords
- data
- bit string
- specific bit
- input
- read
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/061—Improving I/O performance
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/10—Programming or data input circuits
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0638—Organizing or formatting or addressing of data
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0673—Single storage device
- G06F3/0679—Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
-
- 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/04—Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS
- G11C16/0483—Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS comprising cells having several storage transistors connected in series
-
- 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/08—Address circuits; Decoders; Word-line control circuits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/24—Bit-line control circuits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/26—Sensing or reading circuits; Data output circuits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/34—Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
- G11C16/3418—Disturbance prevention or evaluation; Refreshing of disturbed memory data
- G11C16/3427—Circuits or methods to prevent or reduce disturbance of the state of a memory cell when neighbouring cells are read or written
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C7/00—Arrangements for writing information into, or reading information out from, a digital store
- G11C7/10—Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
- G11C7/1006—Data managing, e.g. manipulating data before writing or reading out, data bus switches or control circuits therefor
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Read Only Memory (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
소거 후의 데이터인지 프로그램된 데이터인지를 식별하는 식별 정보를 부가하지 않고 데이터 스크램블을 수행하고, 또한 신뢰성을 향상시키는 반도체 메모리 장치를 제공한다.
본 발명의 플래시 메모리는 입출력 버퍼(110)와 페이지 버퍼(160) 사이에 데이터 스크램블을 실시하는 스크램블부(120)를 포함한다. 스크램블부(120)는 기입 인코더(200)와 독출 디코더(220)를 포함하고, 기입 인코더(200)는 입력 데이터가 일정한 비트열에 해당하는 경우, 그 입력 데이터 스크램블을 스킵하고, 독출 디코더(220)는 페이지 버퍼(160)의 독출 데이터가 일정한 비트열에 해당하는 경우, 그 독출 데이터의 디스크램블을 스킵한다.
본 발명의 플래시 메모리는 입출력 버퍼(110)와 페이지 버퍼(160) 사이에 데이터 스크램블을 실시하는 스크램블부(120)를 포함한다. 스크램블부(120)는 기입 인코더(200)와 독출 디코더(220)를 포함하고, 기입 인코더(200)는 입력 데이터가 일정한 비트열에 해당하는 경우, 그 입력 데이터 스크램블을 스킵하고, 독출 디코더(220)는 페이지 버퍼(160)의 독출 데이터가 일정한 비트열에 해당하는 경우, 그 독출 데이터의 디스크램블을 스킵한다.
Description
본 발명은 NAND형 플래시 메모리 등의 반도체 메모리 장치에 관한 것으로, 특히 NAND형 플래시 메모리에 있어서의 데이터 스크램블 방법에 관한 것이다.
NAND형 플래시 메모리는 복수의 블록으로 구성된 메모리 어레이를 가지고, 하나의 블록에는 복수의 메모리 셀이 직렬로 접속된 NAND 스트링이 형성된다. 전형적으로 데이터 독출(read)이나 프로그램(program)은 페이지 단위로 행해지고, 데이터 소거(erase)는 블록 단위로 행해진다.
특허문헌 1은, NAND형 플래시 메모리의 동작 신뢰성을 향상시키는 데이터 쓰기 방법을 개시하고 있다. 이 쓰기 방법은 워드라인의 어드레스에 따라 스크램블 방식을 선택하고, 선택한 스크램블 방식에 따라 기입(write)해야 할 데이터를 스크램블하며, 스크램블된 데이터를 대응되는 페이지에 기입하는 것이다.
NAND형 플래시 메모리의 메모리 셀은 플로팅 게이트(전하 축적층)와 컨트롤 게이트를 구비한 N형의 MOS 구조로 구성된다. 플로팅 게이트에 전자가 축적되면, 메모리 셀의 문턱값이 양의 방향으로 시프트되고, 이 상태는 데이터 "0"이다. 한편, 플로팅 게이트로부터 전자가 방출되면, 문턱값이 음의 방향으로 시프트되며, 이 상태는 데이터 "1"이다. 블록이 일괄 소거되었을 때, 당해 블록 내의 모든 메모리 셀은 데이터 "1"이다.
이러한 플래시 메모리에 있어서, 프로그램(기입)이나 소거가 반복되었을 때, 데이터에 의존한 신뢰성의 악화가 발생할 수 있다. 예컨대, 프로그램할 때, 데이터 "0"의 비율이 데이터 "1" 보다 압도적으로 많은 경우, 또는 그와 반대로 데이터 "1"의 비율이 데이터 "0" 보다 압도적으로 많은 경우이다. 메모리 셀의 미세화, 고집적화에 의해, 메모리 셀간의 거리가 짧아지고, 인접한 메모리 셀이 용량적으로 결합되어 서로 간섭될 수 있는 상황이다. 하나의 메모리 셀을 둘러싸는 주변 메모리 셀이 모두 데이터 "0"이면, 중심 메모리 셀에는 주변 메모리 셀의 전하가 영향을 주어 모두 데이터 "1"인 경우에 비해 문턱값이 높아진다. 데이터 "0" 또는 데이터 "1"의 편재는 데이터 독출시의 소스 라인 전압의 플로팅 전압의 차이에 따라 센스 앰프의 특성에도 악영향을 미칠 수 있다.
그러므로, 신뢰성의 관점에서 데이터 "0"과 데이터 "1"의 비율은 대략 0.5인 것이 바람직하다. 이를 실현하는 하나의 방법으로 데이터 스크램블 스킴이 있다. 즉, 프로그램해야 할 데이터를, 난수를 이용하여 스크램블하고, 스크램블한 데이터를 메모리 어레이에 프로그램한다. 스크램블은, 예컨대 프로그램할 어드레스를 기본으로 이용하여 어드레스마다 난수를 바꿀 수 있고, 이에 따라, 메모리 어레이의 행 방향 및 열 방향에 있어서, 데이터 "0"과 데이터 "1"을 랜덤하게 배치할 수 있다. 또한, 독출 동작에서는 메모리 어레이로부터 독출된 데이터를 스크램블하였을 때의 난수에 의해 디스크램블함으로써, 스크램블된 데이터는 원래의 데이터로 변환된다.
NAND형 플래시 메모리에서 데이터를 소거한 후의 메모리 셀은 데이터 "1"이고, 소거 후의 독출 동작에서는, 예컨대 "FFh"의 데이터가 출력되어야 한다. 이에 따라, 데이터 스크램블을 NAND형 플래시 메모리에 이용한 경우에는 소거 후의 데이터가 모두 "1"이 되도록 디스크램블을 금지할 필요가 있다. 한편, 확률적으로는 매우 작지만, 데이터 스크램블에 의해 프로그램된 데이터가 모두 "1"이 되는 경우가 있다. 이러한 데이터를 독출하는 경우에는 디스크램블할 필요가 있다. 이러한 제약으로부터, NAND형 플래시 메모리에서는 메모리 어레이의 리던던시 영역 등에, 당해 페이지가 소거된 상태의 것인지, 또는 프로그램된 상태의 것인지를 판정하기 위한 플래그 비트를 설치하고 있다. 플래그 비트는 당해 페이지를 포함하는 블록이 소거되었을 때 데이터 "1", 당해 페이지가 프로그램되었을 때 데이터 "0"으로 변경된다.
도 1의 (A)는 프로그램 동작시의 플로우, 도 1의 (B)는 독출 동작시의 플로우이다. 먼저, 프로그램 동작에서는 외부의 콘트롤러로부터 프로그램 커멘드가 수취되고(S10), 이어서, 어드레스 및 프로그램해야 할 데이터가 수취된다(S12). 수취된 데이터는 스크램블되고(S14), 또한 선택된 페이지가 프로그램된 것을 나타내도록 플래그가 데이터 "1"로부터 "0"으로 변경된다(S16). 이어서, 스크램블된 데이터 및 플래그가 선택된 페이지에 프로그램된다(S18).
독출 동작에서는 외부의 콘트롤러로부터 독출 커멘드 및 어드레스가 입력되면(S20), 메모리 어레이의 선택된 페이지로부터 데이터가 독출되고(S22), 이어서, 플래그 판정이 행해진다(S24). 플래그가 "0"이면, 만일 모든 데이터가 "1"이라 하더라도, 그 데이터는 프로그램된 데이터이기 때문에, 독출한 데이터가 디스크램블되고(S26), 원래 데이터로 변환되어 출력된다(S28). 한편, 플래그가 "1"이면, 독출한 데이터는 소거 후의 데이터이기 때문에, 디스크램블 처리를 하지 않고 그대로 데이터를 출력한다(S28).
이와 같이 종래의 NAND형 플래시 메모리에 있어서 데이터 스크램블 스킴을 실현하기 위해서는, 소거된 데이터인지 프로그램된 데이터인지를 판별하기 위한 플래그 비트를 저장하기 위한 메모리 용량이 필요하고, 또한 데이터 독출시의 플래그 비트 판정 시간이 더 소요된다는 과제가 있다.
본 발명은 이러한 종래의 과제를 해결하고, 소거 후의 데이터인지 프로그램된 데이터인지를 식별하는 식별 정보를 부가하지 않고 데이터 스크램블을 수행하고, 또한 신뢰성을 향상시키는 반도체 메모리 장치 및 그 데이터 처리 방법을 제공하는 것을 목적으로 한다.
본 발명의 반도체 메모리 장치는, 메모리 어레이; 상기 메모리 어레이로부터 독출한 데이터를 홀딩하거나, 또는 상기 메모리 어레이에 프로그램하는 데이터를 홀딩하는 홀딩 수단; 데이터를 입력하는 입력 수단; 및 상기 입력 수단으로부터의 데이터가 제1 특정 비트열 또는 제2 특정 비트열인 경우에는, 상기 입력 수단으로부터의 데이터를 상기 홀딩 수단에 제공하고, 상기 입력 수단으로부터의 데이터가 제1 특정 비트열 및 제2 특정 비트열 중 어느 것도 아닌 경우에는 상기 입력 수단으로부터의 데이터를 스크램블하고, 스크램블한 데이터를 상기 홀딩 수단에 제공하는 부호화 수단;을 포함하고, 상기 제1 특정 비트열은 상기 메모리 어레이 소거시의 데이터와 동일하고, 제2 특정 비트열은 상기 제1 스크램블 수단에 의해 스크램블된 경우에 상기 제1 특정 비트열이다.
바람직하게는, 반도체 메모리 장치는, 데이터를 더 출력하는 출력 수단; 및 상기 홀딩 수단으로부터의 데이터가 상기 제1 특정 비트열 또는 상기 제2 특정 비트열인 경우에는, 상기 홀딩 수단으로부터의 데이터를 상기 출력 수단에 제공하고, 상기 홀딩 수단으로부터의 데이터가 상기 제1 특정 비트열 및 제2 특정 비트열 중 어느 것도 아닌 경우에는, 상기 홀딩 수단으로부터의 데이터를 디스크램블하며, 디스크램블한 데이터를 상기 출력 수단에 제공하는 복호화 수단;을 포함한다. 바람직하게는, 상기 부호화 수단은, 상기 입력 수단으로부터 데이터를 수신하고, 당해 데이터에 상기 제1 특정 비트열이 포함되는지 여부를 검출하는 제1 검출기; 상기 입력 수단으로부터 데이터를 수신하고, 당해 데이터를 스크램블하는 스크램블 회로; 상기 스크램블 회로에 의해 스크램블된 데이터를 수신하고, 당해 데이터에 상기 제2 특정 비트열이 포함되는지 여부를 검출하는 제2 검출기; 및 상기 제1 검출기 및 상기 제2 검출기의 검출 결과에 따라 상기 입력 수단으로부터의 데이터 또는 상기 스크램블 회로에 의해 스크램블된 데이터를 선택하는 제1 선택부;를 포함한다. 바람직하게는, 상기 복호화 수단은, 상기 홀딩 수단으로부터 데이터를 수신하고, 당해 데이터에 상기 제1 특정 비트열이 포함되는지 여부를 검출하는 제3 검출기; 상기 홀딩 수단으로부터 데이터를 수신하고, 당해 데이터를 디스크램블하는 디스크램블 회로; 상기 디스크램블 회로에 의해 디스크램블된 데이터를 수신하고, 당해 데이터에 상기 제2 특정 비트열이 포함되는지 여부를 검출하는 제4 검출기; 및 상기 제3 검출기 및 상기 제4 검출기의 검출 결과에 따라 상기 홀딩 수단으로부터의 데이터 또는 상기 디스크램블 회로에 의해 디스크램블된 데이터를 선택하는 제2 선택부;를 포함한다. 예컨대, 상기 제1 특정 비트열은 논리 1로 이루어진 비트열이다.
본 발명의 데이터 처리 방법은, NAND형 메모리 어레이를 갖는 반도체 메모리 장치의 것으로서, 외부로부터 프로그램해야 할 데이터를 입력하는 단계; 및 상기 입력된 데이터가 제1 특정 비트열 또는 제2 특정 비트열인 경우, 상기 입력된 데이터를 상기 메모리 어레이에 제공하고, 상기 입력된 데이터가 제1 특정 비트열 및 제2 특정 비트열 중 어느 것도 아닌 경우에는, 상기 입력된 데이터를 스크램블하고, 스크램블한 데이터를 상기 메모리 어레이에 제공하는 부호화 단계;을 포함하고, 상기 제1 특정 비트열은 상기 메모리 어레이 소거시의 데이터와 동일하고, 제2 특정 비트열은 상기 스크램블된 경우에 상기 제1 특정 비트열이 되는 것이다.
바람직한 데이터 처리 방법은 또한 상기 메모리 어레이로부터 데이터를 독출하는 단계; 및 독출된 데이터가 상기 제1 특정 비트열 또는 상기 제2 특정 비트열인 경우, 상기 독출된 데이터를 출력 수단에 제공하고, 상기 독출된 데이터가 상기 제1 특정 비트열 및 제2 특정 비트열 중 어느 것도 아닌 경우에는, 상기 독출된 데이터를 디스크램블하고, 디스크램블한 데이터를 상기 출력 수단에 제공하는 복호화 단계;을 포함한다. 바람직한 상기 부호화 단계는, 상기 입력된 데이터에 상기 제1 특정 비트열이 포함되는지 여부를 검출하는 제1 검출 단계; 상기 입력된 데이터를 스크램블하는 스크램블 단계; 스크램블 단계에 의해 스크램블된 데이터에 상기 제1 특정 비트열이 포함되는지 여부를 검출하는 제2 검출 단계; 및 상기 제1 검출 단계 및 상기 제2 검출 단계의 검출 결과에 따라 상기 입력된 데이터 또는 상기 스크램블된 데이터를 선택하는 제1 선택 단계부;를 포함한다. 바람직한 상기 복호화 단계는, 상기 메모리 어레이로부터 독출된 데이터에 상기 제1 특정 비트열이 포함되는지 여부를 검출하는 제3 검출 단계; 상기 독출된 데이터를 디스크램블하는 디스크램블 스텝; 상기 디스크램블된 데이터에 상기 제1 특정 비트열이 포함되는지 여부를 검출하는 제4 검출 단계; 및 상기 제3 검출 단계 및 상기 제4 검출 단계의 검출 결과에 따라 상기 독출된 데이터 또는 상기 디스크램블된 데이터를 선택하는 제2 선택 단계;을 포함한다. 예컨대 상기 특정 비트열은 논리 1로 이루어진 비트열이다.
본 발명에 의하면, 메모리 어레이 소거시와 동일한 제1 특정 비트열, 및 스크램블하였을 때 제1 특정 비트열이 되는 제2 특정 비트열 중 어느 하나에 해당하는 경우, 입력된 데이터를 스크램블하지 않고 메모리 어레이에 프로그램하고, 메모리 어레이로부터 독출된 데이터가 제1 특정 비트열 또는 제2 특정 비트열에 해당하는 경우에는, 독출된 데이터를 디스크램블하지 않고 출력하도록 하였기 때문에, 소거시의 데이터인지 프로그램된 데이터인지를 식별하기 위한 플래그 등의 식별 정보를 부가할 필요가 없다. 이에 따라, 메모리 어레이의 메모리 용량을 다른 자원에 유효하게 활용할 수 있고, 또한 데이터 스크램블을 실시하였을 때의 데이터의 독출 시간을 단축할 수 있다.
도 1은 데이터 스크램블을 실시하는 NAND형 플래시 메모리의 동작 플로우로서, 도 1의 (A)는 프로그램 동작시의 플로우, 도 1의 (B)는 독출 동작시의 플로우이다.
도 2는 본 발명의 실시예에 따른 NAND형 플래시 메모리의 전체의 개략 구성을 나타내는 도면이다.
도 3은 본 발명의 실시예에 따른 메모리 셀 어레이의 NAND 스트링 구성을 나타내는 회로도이다.
도 4는 본 발명의 실시예에 따른 플래시 메모리의 프로그램시에 각 부에 인가되는 전압의 일예를 나타내는 도면이다.
도 5는 본 발명의 실시예에 의한 스크램블부의 내부 구성을 나타내는 도면이다.
도 6의 (A)는 기입 인코더의 스크램블 판정 기준, 도 6의 (B)는 독출 디코더의 디스크램블 판정 기준을 나타낸다.
도 7의 (A)는 본 실시예의 기입 인코더의 내부 구성을 나타내고, 도 7의 (B)는 본 실시예에 의한 독출 디코더의 내부 구성을 나타낸다.
도 2는 본 발명의 실시예에 따른 NAND형 플래시 메모리의 전체의 개략 구성을 나타내는 도면이다.
도 3은 본 발명의 실시예에 따른 메모리 셀 어레이의 NAND 스트링 구성을 나타내는 회로도이다.
도 4는 본 발명의 실시예에 따른 플래시 메모리의 프로그램시에 각 부에 인가되는 전압의 일예를 나타내는 도면이다.
도 5는 본 발명의 실시예에 의한 스크램블부의 내부 구성을 나타내는 도면이다.
도 6의 (A)는 기입 인코더의 스크램블 판정 기준, 도 6의 (B)는 독출 디코더의 디스크램블 판정 기준을 나타낸다.
도 7의 (A)는 본 실시예의 기입 인코더의 내부 구성을 나타내고, 도 7의 (B)는 본 실시예에 의한 독출 디코더의 내부 구성을 나타낸다.
이하, 본 발명의 실시의 형태에 대해 도면을 참조하여 상세하게 설명한다. 또한 도면은 이해를 돕기 위해 각 부를 강조하여 도시하고 있고, 실제 디바이스의 스케일과는 동일하지 않은 점에 유의해야 한다.
본 발명의 실시예에 따른 플래시 메모리의 전형적인 구성을 도 2에 도시한다. 단, 여기에 도시한 플래시 메모리의 구성은 예시로서, 본 발명이 반드시 이러한 구성에 한정되는 것은 아니다. 본 실시예의 플래시 메모리(10)는 복수의 메모리 셀이 행렬 형상으로 배열된 메모리 어레이(100), 외부 입출력 단자 I/O에 접속되어 입출력 데이터를 홀딩하는 입출력 버퍼(110), 메모리 어레이(100)에 프로그램하는 데이터 스크램블(scramble)이나 거기로부터 독출된 데이터의 디스크램블(descramble)을 실시하는 스크램블부(120), 입출력 버퍼(110)로부터의 어드레스 데이터를 받는 어드레스 레지스터(130), 입출력 버퍼(110)로부터의 커멘드 데이터나 외부로부터의 제어 신호를 받아, 각 부를 제어하는 제어부(140), 어드레스 레지스터(130)로부터 행 어드레스 정보(Ax)를 받아 행 어드레스 정보(Ax)를 디코드하고, 디코드 결과에 따라 블록의 선택 및 워드라인의 선택 등을 실시하는 워드라인 선택 회로(150), 워드라인 선택 회로(150)에 의해 선택된 페이지로부터 독출된 데이터를 홀딩하거나, 선택된 페이지로의 기입 데이터를 홀딩하는 페이지 버퍼(160), 어드레스 레지스터(130)로부터 열 어드레스 정보(Ay)를 받아 열 어드레스 정보(Ay)를 디코드하고, 당해 디코드 결과에 따라 페이지 버퍼(160) 내의 데이터의 선택 등을 실시하는 열 선택 회로(170), 및 데이터의 독출, 프로그램 및 소거 등을 위해 필요한 다양한 전압(기입 전압(Vpgm), 패스 전압(Vpass), 독출 패스 전압(Vread), 소거 전압(Vers) 등)을 생성하는 내부 전압 발생 회로(180)를 포함하여 구성된다.
메모리 어레이(100)는 열 방향으로 배치된 m개의 메모리 블록(BLK(0),BLK(1),···,BLK(m-1))을 갖는다. 블록(BLK(0))에 근접하여 페이지 버퍼(160)가 배치된다. 이러한 구성 이외에도, 페이지 버퍼(160)는 블록의 다른 일방의 단부, 혹은 양측 단부에 배치될 수도 있다.
하나의 메모리 블록에는 도 3에 도시한 바와 같이, 복수의 메모리 셀을 직렬로 접속한 NAND 스트링 유닛(NU)이 복수개 형성되고, 하나의 메모리 블록 내에 n+1개의 NAND 스트링 유닛(NU)이 행 방향으로 배열되어 있다. NAND 스트링 유닛(NU)은 직렬로 접속된 복수의 메모리 셀(MCi)(i=0, 1,···, 31)과, 일단부인 메모리 셀(MC31)의 드레인측에 접속된 선택 트랜지스터(TD)와, 타단부인 메모리 셀(MC0)의 소스측에 접속된 선택 트랜지스터(TS)를 포함하고, 선택 트랜지스터(TD)의 드레인은 대응되는 하나의 비트선(GBL)에 접속되고, 선택 트랜지스터(TS)의 소스는 공통의 소스선(SL)에 접속된다.
메모리 셀(MCi)의 컨트롤 게이트는 워드라인(WLi)에 접속되고, 선택 트랜지스터(TD, TS)의 게이트는 워드라인(WL)과 평행한 선택 게이트선(SGD, SGS)에 접속된다. 워드라인 선택 회로(150)는 행 어드레스(Ax) 또는 변환된 어드레스에 따라 블록 선택시에 블록의 선택 게이트선(SGS, SGD)을 통해 선택 트랜지스터(TD, TS)를 선택적으로 구동한다. 도 3은 전형적인 셀 유닛의 구성을 나타내고 있지만, 셀 유닛은 NAND 스트링 내에 하나 또는 복수의 더미 셀을 포함할 수도 있다.
메모리 셀은 전형적으로 P웰 내에 형성된 N형의 확산 영역인 소스/드레인과, 소스/드레인간의 채널 상에 형성된 터널 산화막과 터널 산화막 상에 형성된 플로팅 게이트(전하 축적층)와, 플로팅 게이트 상에 유전체막을 통해 형성된 컨트롤 게이트를 포함하는 MOS 구조를 갖는다. 플로팅 게이트에 전하가 축적되어 있지 않을 때, 즉 데이터 "1"이 기입되어 있을 때, 문턱값은 음(또는 부(負))의 상태에 있고, 메모리 셀은 노멀리 온이다. 플로팅 게이트에 전자가 축적되었을 때, 즉 데이터 "0"이 기입되어 있을 때, 문턱값은 양(또는 정(正))으로 시프트되고, 메모리 셀은 노멀리 오프이다. 단, 메모리 셀은 1비트(2치 데이터)를 저장하는 SLC 타입일 수도 있고, 다중 비트를 저장하는 MLC 타입일 수도 있다.
도 4는 플래시 메모리의 각 동작시에 인가되는 바이어스 전압의 일예를 나타낸 테이블이다. 독출 동작에서는 비트선에 어떤 양의 전압을 인가하고, 선택된 워드라인에 어떤 전압(예컨대 0V)을 인가하며, 비선택 워드라인에 패스 전압(Vpass)(예컨대 4.5V)를 인가하고, 선택 게이트선(SGD, SGS)에양의 전압(예컨대 4.5V)를 인가하여 비트선 선택 트랜지스터(TD), 소스선 선택 트랜지스터(TS)를 온 시켜 공통 소스선에 0V를 인가한다. 프로그램(기입) 동작에서는 선택된 워드라인에 고전압의 프로그램 전압(Vpgm)(15~20V)을 인가하고, 비선택 워드라인에 중간 전위(예컨대, 10V)를 인가하여 비트선 선택 트랜지스터(TD)를 온 시키며, 소스선 선택 트랜지스터(TS)를 오프시켜 "0" 또는 "1"의 데이터에 따른 전위를 비트선(GBL)에 공급한다. 소거 동작에서는 블록 내의 선택된 워드라인에 0V를 인가하고, P웰에 고전압(예컨대, 20V)을 인가하여 플로팅 게이트의 전자를 기판에 뽑아 냄으로써 블록 단위로 데이터를 소거한다.
이어서, 본 실시예의 데이터 스크램블 처리의 상세에 대해 설명하기로 한다. 스크램블부(120)는 도 5에 도시한 바와 같이, 입출력 버퍼(110)와 페이지 버퍼(160) 사이에 배치되고, 프로그램 동작시 기입 인코더(200)가 입출력 버퍼(110)로부터 입력된 데이터를 스크램블하고, 스크램블된 데이터를 페이지 버퍼(160)에 제공하며, 독출 동작시 독출 디코더(220)가 페이지 버퍼(160)로부터 독출된 데이터를 디스크램블하며, 디스크램블된 데이터를 입출력 버퍼(110)에 제공한다. 통상, 스크램블 처리는 입력된 데이터에 대해 어드레스 등에서 생성한 난수 시드(seed)와 XOR 연산을 실시한다. 이 경우, 스크램블 처리된 데이터에 대해 동일한 난수 시드와의 XOR 연산을 다시 실시함으로써, 원래의 입력 데이터, 즉 디스크램블된 데이터를 얻을 수 있다. 이에 따라, 스크램블 처리를 실시하는 기입 인코더(200)와, 디스크램블 처리를 실시하는 독출 디코더(220)는 동일한 회로로 구성되고, 각각 스크램블 처리 및 디스크램블 처리를 수행할 수 있다.
NAND형 플래시 메모리에서 데이터 스크램블을 실시하는 경우, 소거 후의 독출에서는 데이터 "1"이 출력되어야 한다. 따라서, 소거 후의 데이터를 독출할 때, 데이터 스크램블은 금지된다. 한편, 스크램블된 데이터가 모두 "1"인 데이터가 프로그램되었을 때, 이 데이터는 소거 후의 데이터와 달리, 스크램블된 상태로 메모리 셀 어레이에 격납되어 있고, 독출시에는 디스크램블되어야 하므로, 소거 후의 데이터와 구별되어야 한다. 종래에는 양 데이터를 구별하기 위해 플래그 비트를 준비하였지만, 본 실시예에서는 플래그 비트를 이용하지 않고, 프로그램되는 데이터 또는 독출되는 데이터의 구성에 따라 스크램블을 제어한다.
기입 인코더(200)는 상기한 바와 같이, 입출력 버퍼(110)로부터 입력된 프로그램해야 할 데이터 스크램블을 수행하고, 독출 디코더(220)는 페이지 버퍼(160)에 홀딩된 독출 데이터의 디스크램블을 실시한다. 도 6의 (A)는 기입 인코더(200)의 스크램블의 판정 기준을 나타내고 있다. 먼저, 입출력 버퍼(110)로부터의 입력 데이터가 모두 "1"일 때(여기서는 편의상 FFh라 함), 입력 데이터 "FFh"의 스크램블을 실시하지 않고, 입력 데이터 "FFh"가 그대로 메모리 어레이에 프로그램된다. 입력 데이터가 "XXh"인 경우에도, 입력 데이터 "XXh"의 스크램블을 실시하지 않고, 입력 데이터 "XXh"가 그대로 메모리 어레이에 프로그램된다. 여기서, "XXh"는 스크램블되었을 때 "FFh"가 되는 데이터이다. 입력 데이터가 "FFh" 및 "XXh" 중 어느 것도 아닐 때(이를 "YYh"라 총칭함), 입력 데이터 "YYh"를 스크램블하고, 스크램블된 데이터 "ZZh"가 메모리 어레이에 프로그램된다.
도 6의 (B)는 독출 디코더(220)의 디스크램블 판정 기준을 나타내고 있다. 페이지 버퍼(160)에 독출된 데이터가 "FFh"일 때, 디스크램블은 실시하지 않고, 그대로 "FFh"가 입출력 버퍼(110)로 출력된다. 독출된 데이터가 "XXh"인 경우에도, 디스크램블하지 않고 그대로 "XXh"가 입출력 버퍼(110)로 출력된다. 독출된 데이터가 "YYh"일 때, 독출된 데이터 "YYh"를 디스크램블하고, 디스크램블된 데이터 "ZZh"가 입출력 버퍼(110)로 출력된다.
도 7의 (A)는 기입 인코더(200)의 구성예를 나타내고, 도 7의 (B)는 독출 디코더(220)의 구성예를 나타낸다. 기입 인코더(200)는 입력 데이터를 수신하고, 당해 입력 데이터가 "FFh"에 해당되는지 여부를 검출하는 제1 검출기(202)와, 입력 데이터를 수신하고, 당해 입력 데이터를 스크램블하는 스크램블 회로(204)와, 스크램블 회로(204)로부터 출력된 스크램블된 데이터를 수신하고, 당해 스크램블된 데이터가 "FFh"에 해당되는지 여부를 검출하는 제2 검출기(206)와, 제1 검출기(202) 및 제2 검출기(206)의 검출 결과를 받고, 그 논리합을 출력하는 OR 회로(208)와, 입출력 버퍼(110)로부터의 입력 데이터 및 스크램블 회로(204)로부터 출력되는 데이터를 받고, OR 회로(208)의 출력에 따라 하나의 데이터를 선택하는 멀티플렉서(210)를 갖는다. 멀티플렉서(210)는 OR 회로(208)의 출력이 H레벨일 때, 즉, 제1 검출기(202) 또는 제2 검출기(206) 중 어느 하나에 의해 "FFh"가 검출되었을 때, 입출력 버퍼(110)로부터의 입력 데이터를 선택하고, 선택한 데이터를 페이지 버퍼(160)로 출력하며, OR 회로(208)의 출력이 L레벨일 때, 스크램블 회로(204)에 의해 스크램블된 데이터를 선택하고, 선택한 데이터를 페이지 버퍼(160)로 출력한다.
독출 디코더(220)는 기입 인코더(200)와 동일한 처리를 실시한다. 즉, 독출 디코더(220)는 페이지 버퍼(160)로부터의 독출 데이터를 수신하고, 당해 독출 데이터가 "FFh"에 해당되는지 여부를 검출하는 제3 검출기(222)와, 독출 데이터를 수신하고, 당해 독출 데이터를 디스크램블하는 디스크램블 회로(224)와, 디스크램블 회로(224)로부터 출력된 디스크램블된 데이터를 수신하고, 당해 디스크램블된 데이터가 "FFh"에 해당되는지 여부를 검출하는 제4 검출기(226)와, 제3 검출기(222) 및 제4 검출기(226)의 검출 결과를 받고, 그 논리합을 출력하는 OR 회로(228)와, 페이지 버퍼(160)의 독출 데이터 및 디스크램블 회로(224)로부터 출력되는 데이터를 받고, OR 회로(228)의 출력에 따라 하나의 데이터를 선택하는 멀티플렉서(230)를 갖는다. 멀티플렉서(230)는 OR 회로(228)의 출력이 H레벨일 때, 즉 제3 검출기(222) 또는 제4 검출기(226) 중 어느 하나에 의해 "FFh"가 검출되었을 때, 독출 데이터를 선택하고, 선택한 데이터를 입출력 버퍼(110)로 출력하고, OR 회로(228)의 출력이 L레벨일 때, 디스크램블 회로(224)에 의해 디스크램블된 데이터를 선택하고, 선택한 데이터를 입출력 버퍼(110)로 출력한다.
본 실시예에서는 프로그램해야 할 데이터가 "FFh"일 때, "FFh"는 스크램블되지 않고 메모리 어레이에 프로그램된다. 프로그램해야 할 데이터 "FFh"는 메모리 어레이 내에서 소거 후의 데이터와 동일하게 되지만, 독출 데이터가 "FFh"인 경우, "FFh"가 그대로 출력되므로, 소거 후의 데이터 및 "FFh"의 프로그램해야 할 데이터의 독출에는 문제가 발생하지 않는다.
또한, 프로그램해야 할 데이터가 "XXh"일 때, "XXh"는 스크램블되지 않고 메모리 어레이에 프로그램된다. 즉, 메모리 어레이에는 소거 후의 데이터와 동일한 구성의 데이터가 프로그램되지 않기 때문에, 소거 후의 데이터로부터 구별된다. 예컨대, 어떤 블록이 소거되었을 때, 그 블록 내의 각 페이지의 메모리 셀은 모두 데이터 "1"이다. 소거된 블록 내의 어떤 선택된 페이지에 프로그램 데이터 "XXh"가 프로그램될 때, "XXh"가 그대로 선택된 페이지에 프로그램되게 된다. 만약, "XXh"가 스크램블된 경우에는 "FFh"가 프로그램되게 되고, 그렇다면, 프로그램해야 할 데이터 "FFh"를 프로그램하였을 때의 데이터와 구별되지 않게 된다.
이와 같이 본 실시예에서는, 데이터가 "FFh", "XXh"인 경우에 스크램블을 스킵함으로써, 종래와 같이 페이지마다 플래그 비트를 기입할 필요가 없고, 또한 데이터 독출시에 플래그를 판정할 필요가 없어지기 때문에, 메모리 어레이의 메모리 용량을 다른 자원에 유효하게 이용할 수 있고, 데이터의 독출 속도를 향상시킬 수 있다. 또한, 본 실시예에서는 "FFh", "XXh"의 데이터에 대해 스크램블을 실시하지 않지만, 이들 데이터의 발생 빈도는 매우 적고, 전체적으로 신뢰성에 미치는 영향은 한정적이다.
이어서, 본 발명의 다른 실시예에 대해 설명하기로 한다. NAND형 플래시 메모리에서는 동일 페이지에 n회(n는 2 이상의 자연수) 연속적으로 데이터를 프로그램하는 기능(이하, 편의상 파셜(partial) 페이지 프로그램이라 함)을 실행할 수 있다. 메모리 셀의 고집적화가 진행되면, 1 페이지의 사이즈도 증가되어, 프로그램할 데이터량이 1 페이지의 사이즈에 못 미치는 경우가 있다. 만일, 동일 페이지에 1회만 데이터 프로그램이 가능하다면, 각 페이지의 이용 효율이 저하되고, 반면에, 1 페이지에 프로그램 가능한 복수의 데이터가 있을 때, 그러한 데이터를 복수의 페이지에 프로그램해야 한다면, 프로그램에 소요되는 시간이 큰폭으로 증가하게 된다. 한편, 동일 페이지에 n회 연속적으로 프로그램한다는 것은, 그 페이지에 n회의 높은 프로그램 전압이 인가되게 되므로, 프로그램의 회수에 제한이 있다. 예컨대, n=4라면, 동일 페이지에 4회 연속하여 데이터를 프로그램할 수 있다.
파셜 페이지 프로그램은, 예컨대 외부의 콘트롤러로부터 프로그램 커멘드를 받은 후, 행 어드레스(Ax) 및 열 어드레스(Ay1)를 받고, 이어서 파셜 데이터(D1)를 받아 행 어드레스(Ax)에 의해 선택된 페이지의 열 어드레스(Ay1)를 선두로 파셜 데이터(D1)를 프로그램하고, 이어서, 열 어드레스(Ay2) 및 파셜 데이터(D2)를 받아 동일 페이지의 열 어드레스(Ay2)를 선두로 파셜 데이터(D2)를 프로그램하며, 이러한 처리가 n회 반복되어 결과적으로, 하나의 페이지에는 n개의 파셜 데이터(D1, D2,…, Dn)가 프로그램된다.
이러한 파셜 페이지 프로그램을 실행 가능한 NAND형 플래시 메모리에 있어서, 데이터 스크램블 스킴을 채용한 경우에는 페이지 내의 파셜 데이터가 프로그램된 것인지, 혹은 소거된 것인지를 판정해야 한다. 파셜 페이지 프로그램에 의해 프로그램되는 파셜 데이터의 사이즈는 고정이 아닌 가변이기 때문에, 파셜 데이터의 경계가 판명되지 않으면, 데이터 스크램블을 적절히 실행할 수 없다.
본 실시예에 따른 스크램블부(120)를 이용한 경우에는 파셜 페이지 프로그램이 실행된 경우라도, 파셜 데이터의 경계를 판별하지 않고, 적절히 데이터 스크램블을 실시할 수 있다.
상기 실시예에서는 입출력 버퍼(110)와 페이지 버퍼(160) 사이에 스크램블부(120)를 배치하는 예를 나타냈지만, 스크램블부(120)는, 예컨대 페이지 버퍼(160) 내에 설치되는 구성으로 할 수도 있다.
이상과 같이 본 발명의 바람직한 실시의 형태에 대해 상술하였지만, 본 발명은 특정의 실시 형태에 한정되는 것은 아니며, 특허 청구의 범위에 기재된 본 발명의 요지의 범위 내에서 다양한 변형·변경이 가능하다.
10 플래시 메모리 100 메모리 어레이
110 입출력 버퍼 120 스크램블부
130 어드레스 레지스터 140 제어부
150 워드라인 선택 회로 160 페이지 버퍼
170 열 선택 회로 180 내부 전압 발생 회로
200 기입 인코더 202 제1 검출기
204 스크램블 회로 206 제2 검출기
208 OR 회로 210 멀티플렉서
220 독출 디코더 222 제3 검출기
224 디스크램블 회로 226 제4 검출기
228 OR 회로 230 멀티플렉서
110 입출력 버퍼 120 스크램블부
130 어드레스 레지스터 140 제어부
150 워드라인 선택 회로 160 페이지 버퍼
170 열 선택 회로 180 내부 전압 발생 회로
200 기입 인코더 202 제1 검출기
204 스크램블 회로 206 제2 검출기
208 OR 회로 210 멀티플렉서
220 독출 디코더 222 제3 검출기
224 디스크램블 회로 226 제4 검출기
228 OR 회로 230 멀티플렉서
Claims (10)
- 메모리 어레이;
상기 메모리 어레이로부터 독출한 데이터를 홀딩하거나, 또는 상기 메모리 어레이에 프로그램하는 데이터를 홀딩하는 홀딩 수단;
데이터를 입력하는 입력 수단; 및
상기 입력 수단으로부터의 데이터가 제1 특정 비트열 또는 제2 특정 비트열인 경우에는, 상기 입력 수단으로부터의 데이터를 상기 홀딩 수단에 제공하고, 상기 입력 수단으로부터의 데이터가 제1 특정 비트열 및 제2 특정 비트열 중 어느 것도 아닌 경우에는, 상기 입력 수단으로부터의 데이터를 스크램블하고, 스크램블한 데이터를 상기 홀딩 수단에 제공하는 부호화 수단;을 포함하고,
상기 제1 특정 비트열은 상기 메모리 어레이를 소거하였을 때의 데이터와 동일하고, 제2 특정 비트열은 상기 부호화 수단에 의해 스크램블된 경우에 상기 제1 특정 비트열이 되는 반도체 메모리 장치. - 제1항에 있어서,
반도체 메모리 장치는 데이터를 더 출력하는 출력 수단; 및
상기 홀딩 수단으로부터의 데이터가 상기 제1 특정 비트열 또는 상기 제2 특정 비트열인 경우에는, 상기 홀딩 수단으로부터의 데이터를 상기 출력 수단에 제공하고, 상기 홀딩 수단으로부터의 데이터가 상기 제1 특정 비트열 및 제2 특정 비트열 중 어느 것도 아닌 경우에는, 상기 홀딩 수단으로부터의 데이터를 디스크램블하고, 디스크램블한 데이터를 상기 출력 수단에 제공하는 복호화 수단;을 포함하는 반도체 메모리 장치. - 제1항에 있어서,
상기 부호화 수단은, 상기 입력 수단으로부터 데이터를 수신하고, 당해 데이터에 상기 제1 특정 비트열이 포함되는지 여부를 검출하는 제1 검출기; 상기 입력 수단으로부터 데이터를 수신하고, 당해 데이터를 스크램블하는 스크램블 회로; 상기 스크램블 회로에 의해 스크램블된 데이터를 수신하고, 당해 데이터에 상기 제2 특정 비트열이 포함되는지 여부를 검출하는 제2 검출기; 및 상기 제1 검출기 및 상기 제2 검출기의 검출 결과에 따라 상기 입력 수단으로부터의 데이터 또는 상기 스크램블 회로에 의해 스크램블된 데이터를 선택하는 제1 선택부;를 포함하는 반도체 메모리 장치. - 제2항에 있어서,
상기 복호화 수단은, 상기 홀딩 수단으로부터 데이터를 수신하고, 당해 데이터에 상기 제1 특정 비트열이 포함되는지 여부를 검출하는 제3 검출기; 상기 홀딩 수단으로부터 데이터를 수신하고, 당해 데이터를 디스크램블하는 디스크램블 회로; 상기 디스크램블 회로에 의해 디스크램블된 데이터를 수신하고, 당해 데이터에 상기 제2 특정 비트열이 포함되는지 여부를 검출하는 제4 검출기; 및 상기 제3 검출기 및 상기 제4 검출기의 검출 결과에 따라 상기 홀딩 수단으로부터의 데이터 또는 상기 디스크램블 회로에 의해 디스크램블된 데이터를 선택하는 제2 선택부;를 포함하는 반도체 메모리 장치. - 제1항 내지 제4항 중 어느 한 항에 있어서,
상기 제1 특정 비트열은 논리 1로 이루어진 비트열인 반도체 메모리 장치. - NAND형 메모리 어레이를 갖는 반도체 메모리 장치의 데이터 처리 방법으로서,
외부로부터 프로그램해야 할 데이터를 입력하는 단계; 및
상기 입력된 데이터가 제1 특정 비트열 또는 제2 특정 비트열인 경우에는, 상기 입력된 데이터를 상기 메모리 어레이에 제공하고, 상기 입력된 데이터가 제1 특정 비트열 및 제2 특정 비트열 중 어느 것도 아닌 경우에는, 상기 입력된 데이터를 스크램블하고, 스크램블한 데이터를 상기 메모리 어레이에 제공하는 부호화 단계;을 포함하고,
상기 제1 특정 비트열은 상기 메모리 어레이를 소거하였을 때의 데이터와 동일하고, 제2 특정 비트열은 상기 스크램블된 경우에 상기 제1 특정 비트열이 되는 것인 반도체 메모리 장치의 데이터 처리 방법. - 제6항에 있어서,
반도체 메모리 장치의 데이터 처리 방법은 또한,
상기 메모리 어레이로부터 데이터를 독출하는 단계;
독출된 데이터가 상기 제1 특정 비트열 또는 상기 제2 특정 비트열인 경우에는, 상기 독출된 데이터를 출력 수단에 제공하고, 상기 독출된 데이터가 상기 제1 특정 비트열 및 제2 특정 비트열 중 어느 것도 아닌 경우에는, 상기 독출된 데이터를 디스크램블하고, 디스크램블한 데이터를 상기 출력 수단에 제공하는 복호화 단계를 포함하는 반도체 메모리 장치의 데이터 처리 방법. - 제6항에 있어서,
상기 부호화 단계는, 상기 입력된 데이터에 상기 제1 특정 비트열이 포함되는지 여부를 검출하는 제1 검출 단계; 상기 입력된 데이터를 스크램블하는 스크램블 단계; 스크램블 단계에 의해 스크램블된 데이터에 상기 제2 특정 비트열이 포함되는지 여부를 검출하는 제2 검출 단계; 및 상기 제1 검출 단계 및 상기 제2 검출 단계의 검출 결과에 따라 상기 입력된 데이터 또는 상기 스크램블된 데이터를 선택하는 제1 선택 단계;을 포함하는 반도체 메모리 장치의 데이터 처리 방법. - 제7항에 있어서,
상기 복호화 단계는, 상기 메모리 어레이로부터 독출된 데이터에 상기 제1 특정 비트열이 포함되는지 여부를 검출하는 제3 검출 단계; 상기 독출된 데이터를 디스크램블하는 디스크램블 단계; 상기 디스크램블된 데이터에 상기 제2 특정 비트열이 포함되는지 여부를 검출하는 제4 검출 단계; 및 상기 제3 검출 단계 및 상기 제4 검출 단계의 검출 결과에 따라 상기 독출된 데이터 또는 상기 디스크램블된 데이터를 선택하는 제2 선택 단계;을 포함하는 반도체 메모리 장치의 데이터 처리 방법. - 제6항 내지 제9항 중 어느 한 항에 있어서,
상기 제1 특정 비트열은 논리 1로 이루어진 비트열인 반도체 메모리 장치의 데이터 처리 방법.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JPJP-P-2015-064388 | 2015-03-26 | ||
JP2015064388A JP5940704B1 (ja) | 2015-03-26 | 2015-03-26 | 半導体記憶装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20160115649A KR20160115649A (ko) | 2016-10-06 |
KR101689185B1 true KR101689185B1 (ko) | 2016-12-23 |
Family
ID=56244667
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020150117396A KR101689185B1 (ko) | 2015-03-26 | 2015-08-20 | 반도체 메모리 장치 및 데이터 처리 방법 |
Country Status (5)
Country | Link |
---|---|
US (1) | US9612753B2 (ko) |
JP (1) | JP5940704B1 (ko) |
KR (1) | KR101689185B1 (ko) |
CN (1) | CN106024058B (ko) |
TW (1) | TWI564899B (ko) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11380416B2 (en) | 2020-10-12 | 2022-07-05 | SK Hynix Inc. | Storage device and operating method thereof |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6181218B2 (ja) * | 2016-02-09 | 2017-08-16 | ウィンボンド エレクトロニクス コーポレーション | 半導体記憶装置 |
US11462278B2 (en) * | 2020-05-26 | 2022-10-04 | Samsung Electronics Co., Ltd. | Method and apparatus for managing seed value for data scrambling in NAND memory |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080158948A1 (en) | 2006-12-31 | 2008-07-03 | Sandisk Il Ltd. | Avoiding errors in a flash memory by using substitution transformations |
KR101082650B1 (ko) | 2009-01-21 | 2011-11-14 | 주식회사 하이닉스반도체 | 불휘발성 메모리 장치 및 그 동작 방법 |
US8127200B2 (en) | 2006-12-24 | 2012-02-28 | Sandisk Il Ltd. | Flash memory device and system with randomizing for suppressing errors |
Family Cites Families (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH09162859A (ja) * | 1995-12-07 | 1997-06-20 | Fujitsu Ltd | スクランブル方法及び装置、デスクランブル方法及び装置、並びに、データ伝達方法及びシステム |
US7603413B1 (en) * | 2005-04-07 | 2009-10-13 | Aol Llc | Using automated agents to facilitate chat communications |
US8370561B2 (en) * | 2006-12-24 | 2013-02-05 | Sandisk Il Ltd. | Randomizing for suppressing errors in a flash memory |
KR100813627B1 (ko) * | 2007-01-04 | 2008-03-14 | 삼성전자주식회사 | 멀티-비트 데이터를 저장할 수 있는 플래시 메모리 장치를제어하는 메모리 제어기와 그것을 포함한 메모리 시스템 |
JP4498370B2 (ja) * | 2007-02-14 | 2010-07-07 | 株式会社東芝 | データ書き込み方法 |
US8301912B2 (en) * | 2007-12-31 | 2012-10-30 | Sandisk Technologies Inc. | System, method and memory device providing data scrambling compatible with on-chip copy operation |
US7826277B2 (en) * | 2008-03-10 | 2010-11-02 | Hynix Semiconductor Inc. | Non-volatile memory device and method of operating the same |
KR101517185B1 (ko) * | 2008-04-15 | 2015-05-04 | 삼성전자주식회사 | 메모리 시스템 및 그것의 동작 방법 |
KR101504338B1 (ko) * | 2009-03-04 | 2015-03-23 | 삼성전자주식회사 | 불휘발성 메모리 장치의 동작 방법 |
US8413016B2 (en) * | 2009-04-28 | 2013-04-02 | Panasonic Corporation | Nonvolatile memory device and controller for judging a normal or anomalous condition of an error-corrected bit pattern |
JP2011134125A (ja) * | 2009-12-24 | 2011-07-07 | Toshiba Corp | コントローラ及びデータストレージシステム |
CN102208210B (zh) * | 2010-03-31 | 2016-04-27 | 深圳市朗科科技股份有限公司 | 闪存设备及其数据存储方法 |
KR20120002760A (ko) * | 2010-07-01 | 2012-01-09 | 삼성전자주식회사 | 낸드 플래쉬 메모리의 동작 신뢰성을 향상시키는 데이터 기록 방법 및 데이터 기록 장치 |
JP2012133835A (ja) * | 2010-12-20 | 2012-07-12 | Samsung Yokohama Research Institute Co Ltd | 不揮発性半導体記憶装置及び方法 |
CN102682848B (zh) * | 2011-03-16 | 2016-12-07 | 三星电子株式会社 | 存储器装置、存储器卡、固态驱动器、系统及其操作方法 |
KR101893143B1 (ko) * | 2011-03-16 | 2018-08-31 | 삼성전자주식회사 | 비휘발성 메모리 장치, 그것의 프로그램 방법 및 읽기 방법, 및 그것을 포함하는 메모리 시스템 |
US8843693B2 (en) * | 2011-05-17 | 2014-09-23 | SanDisk Technologies, Inc. | Non-volatile memory and method with improved data scrambling |
US8666068B2 (en) * | 2011-10-20 | 2014-03-04 | Sandisk Technologies Inc. | Method for scrambling shaped data |
KR20140023609A (ko) * | 2012-08-16 | 2014-02-27 | 삼성전자주식회사 | 비휘발성 메모리 장치 및 그 동작 방법 |
-
2015
- 2015-03-26 JP JP2015064388A patent/JP5940704B1/ja active Active
- 2015-07-03 TW TW104121663A patent/TWI564899B/zh active
- 2015-07-22 CN CN201510434090.XA patent/CN106024058B/zh active Active
- 2015-08-20 KR KR1020150117396A patent/KR101689185B1/ko active IP Right Grant
- 2015-10-27 US US14/923,452 patent/US9612753B2/en active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8127200B2 (en) | 2006-12-24 | 2012-02-28 | Sandisk Il Ltd. | Flash memory device and system with randomizing for suppressing errors |
US20080158948A1 (en) | 2006-12-31 | 2008-07-03 | Sandisk Il Ltd. | Avoiding errors in a flash memory by using substitution transformations |
KR101082650B1 (ko) | 2009-01-21 | 2011-11-14 | 주식회사 하이닉스반도체 | 불휘발성 메모리 장치 및 그 동작 방법 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11380416B2 (en) | 2020-10-12 | 2022-07-05 | SK Hynix Inc. | Storage device and operating method thereof |
Also Published As
Publication number | Publication date |
---|---|
JP2016184448A (ja) | 2016-10-20 |
US9612753B2 (en) | 2017-04-04 |
JP5940704B1 (ja) | 2016-06-29 |
US20160283113A1 (en) | 2016-09-29 |
CN106024058A (zh) | 2016-10-12 |
KR20160115649A (ko) | 2016-10-06 |
TW201635297A (zh) | 2016-10-01 |
TWI564899B (zh) | 2017-01-01 |
CN106024058B (zh) | 2018-06-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101790632B1 (ko) | 반도체 메모리 장치 및 그 스크램블 방법 | |
KR101121346B1 (ko) | 반도체 메모리에 대한 데이터 기록 방법 및 메모리 컨트롤러 | |
US6958940B2 (en) | Nonvolatile semiconductor memory device capable of realizing optimized erasing operation in a memory array | |
KR101689306B1 (ko) | 반도체 기억 장치 및 데이터 처리 방법 | |
EP1720168A1 (en) | Integrated circuit device, flash memory array, nonvolatile memory device and operating method | |
JP2010170685A (ja) | 不揮発性メモリ装置、そのプログラム方法及び読出し方法 | |
US20160086672A1 (en) | Access line management in a memory device | |
JP2011040124A (ja) | 半導体記憶装置のデータ読み出し方法 | |
KR101689185B1 (ko) | 반도체 메모리 장치 및 데이터 처리 방법 | |
JP5657063B2 (ja) | 半導体記憶装置 | |
KR101047577B1 (ko) | 서로 다른 사전충전 인에이블 전압들을 사용함으로써 프로그램 디스터브가 감소된 비휘발성 메모리 프로그래밍 | |
JP2011146088A (ja) | 半導体記憶装置 | |
KR102148569B1 (ko) | 반도체 장치 | |
JP2011048871A (ja) | Nand型フラッシュメモリとその消去方法 | |
KR101141258B1 (ko) | 워드 라인 데이터에 대한 사전충전 의존성을 제거함으로써 프로그램 디스터브가 감소된 비휘발성 메모리 프로그래밍 | |
US20120243331A1 (en) | Semiconductor memory device | |
KR20120005943A (ko) | 반도체 메모리 장치 및 이의 동작 방법 | |
JP2015109123A (ja) | 半導体記憶装置 |
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: 20191010 Year of fee payment: 4 |