KR20110099566A - 메모리 시스템 및 그것의 동작 방법 - Google Patents

메모리 시스템 및 그것의 동작 방법 Download PDF

Info

Publication number
KR20110099566A
KR20110099566A KR1020100018660A KR20100018660A KR20110099566A KR 20110099566 A KR20110099566 A KR 20110099566A KR 1020100018660 A KR1020100018660 A KR 1020100018660A KR 20100018660 A KR20100018660 A KR 20100018660A KR 20110099566 A KR20110099566 A KR 20110099566A
Authority
KR
South Korea
Prior art keywords
read
memory cell
memory cells
memory
read data
Prior art date
Application number
KR1020100018660A
Other languages
English (en)
Other versions
KR101710663B1 (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 KR1020100018660A priority Critical patent/KR101710663B1/ko
Priority to US13/016,063 priority patent/US8587997B2/en
Publication of KR20110099566A publication Critical patent/KR20110099566A/ko
Priority to US14/068,143 priority patent/US20140056064A1/en
Priority to US14/196,366 priority patent/US9595341B2/en
Application granted granted Critical
Publication of KR101710663B1 publication Critical patent/KR101710663B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/56Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency
    • G11C11/5621Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency using charge storage in a floating gate
    • G11C11/5642Sensing or reading circuits; Data output 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/26Sensing or reading circuits; Data output 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/3418Disturbance prevention or evaluation; Refreshing of disturbed memory data
    • 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/3418Disturbance prevention or evaluation; Refreshing of disturbed memory data
    • G11C16/3427Circuits or methods to prevent or reduce disturbance of the state of a memory cell when neighbouring cells are read or written

Landscapes

  • Engineering & Computer Science (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Computer Hardware Design (AREA)
  • Read Only Memory (AREA)

Abstract

본 발명은 메모리 시스템 및 그것의 동작 방법에 관한 것이다. 본 발명에 의하면,불휘발성 메모리 장치를 포함하는 메모리 시스템이 동작하는 방법은 읽기 전압을 달리하여 관찰 메모리 셀을 적어도 1번 읽어 제 1 읽기 데이터 심볼을 형성하는 단계, 읽기 전압을 달리하여 상기 관찰 메모리 셀에 인접한 간섭 메모리 셀들을 적어도 1번 읽어 제 2 읽기 데이터 심볼들을 형성하는 단계, 및 상기 제 1 읽기 데이터 심볼과 상기 제 2 읽기 데이터 심볼들에 기반하여, 상기 관찰 메모리 셀의 논리값을 판별하는 단계로 구성된다.

Description

메모리 시스템 및 그것의 동작 방법{MEMORY SYSTEM AND OPERATING METHOD THEREOF}
본 발명은 반도체 메모리 장치에 관한 것으로, 좀 더 구체적으로는 불휘발성 메모리 장치를 포함하는 메모리 시스템 및 그것의 데이터 처리 방법에 관한 것이다.
반도체 메모리 장치는 위성에서 소비자 전자 기술까지의 범위에 속하는, 마이크로프로세서를 기반으로 한 응용 및 컴퓨터와 같은 디지털 로직 설계의 가장 필수적인 마이크로 전자 소자이다. 반도체 메모리 장치는 크게 휘발성 반도체 메모리 장치와 불휘발성 반도체 메모리 장치로 나누어진다. 불휘발성 반도체 메모리 장치는 전원이 차단되어도 데이터를 저장할 수 있다. 불휘발성 메모리에 저장되는 데이터는 메모리 제조 기술에 따라 영구적이거나 재프로그램 가능하다. 불휘발성 반도체 메모리 장치는 컴퓨터, 항공 전자 공학, 통신, 그리고 소비자 전자 기술 산업과 같은 넓은 범위의 응용에서 데이터 및 프로그램 코드의 저장을 위해서 사용된다.
불휘발성 메모리 장치의 대표적인 예로 플래시 메모리 장치가 있다. 최근 들어 메모리 장치에 대한 고용량 요구가 증가함에 따라, 하나의 메모리 셀에 멀티 비트를 저장하는 멀티-비트 메모리 장치들이 보편화되고 있다. 멀티-비트 플래시 메모리 장치의 메모리 셀들은 문턱 전압 분포들 간의 간격이 조밀하게 제어되어야 한다. 또한, 고용량 요구에 부합하기 위하여 불휘발성 메모리 장치의 단위 면적당 메모리 셀들의 수를 증가시키기 위한 집적도의 향상을 위한 기술들이 연구되고 있다.
그러나, 상술한 고용량화의 노력에 동반하는 문제가 메모리 셀들에 저장되는 데이터의 신뢰성 저하이다. 불휘발성 메모리 장치의 고용량화 실현과 불휘발성 메모리 장치에 대한 신뢰성 향상을 동시에 달성할 수 있는 기술이 절실한 실정이다.
본 발명의 목적은 불휘발성 메모리 장치의 메모리 셀들이 주변 메모리 셀들로부터 받는 간섭량의 차이로 인한 읽기 에러를 방지하는 메모리 시스템 및 그것의 동작 방법을 제공함에 있다.
본 발명의 실시 예에 따르면, 불휘발성 메모리 장치를 포함하는 메모리 시스템이 동작하는 방법에 있어서, 메모리 시스템은 읽기 전압을 달리하여 관찰 메모리 셀을 적어도 1번 읽어 제 1 읽기 데이터 심볼을 형성하는 단계; 읽기 전압을 달리하여 상기 관찰 메모리 셀에 인접한 간섭 메모리 셀들을 적어도 1번 읽어 제 2 읽기 데이터 심볼들을 형성하는 단계; 및 상기 제 1 읽기 데이터 심볼과 상기 제 2 읽기 데이터 심볼들에 기반하여, 상기 관찰 메모리 셀의 논리값을 판별하는 단계를 포함한다.
실시 예로서, 상기 제 1 읽기 데이터 심볼과 상기 제 2 읽기 데이터 심볼들에 기반하여, 상기 관찰 메모리 셀의 논리값을 판별하는 단계는 상기 제 1 읽기 데이터 심볼을 제 1 비트 심볼로 변환하는 단계; 상기 제 2 읽기 데이터 심볼들을 제 2 비트 심볼들로 변환하는 단계; 및 상기 제 1 비트 심볼과 상기 제 2 비트 심볼들을 비교하여, 상기 관찰 메모리 셀의 논리값을 판별하는 단계를 포함할 수 있다.
실시 예로서, 상기 제 1 비트 심볼과 상기 제 2 비트 심볼들을 비교하여, 상기 관찰 메모리 셀의 논리값을 판별하는 단계는 상기 제 1 비트 심볼과 상기 제 2 비트 심볼들을 비교하여, 상기 관찰 메모리 셀이 받는 간섭량을 계산하는 단계; 및 상기 제 1 비트 심볼과 상기 계산된 간섭량을 참조하여 상기 관찰 메모리 셀의 논리값을 판별하는 단계를 포함할 수 있다.
실시 예로서, 상기 제 1 비트 심볼과 상기 계산된 간섭량을 참조하여 상기 관찰 메모리 셀의 논리값을 판별하는 단계는 상기 제 1 비트 심볼과 상기 계산된 간섭량을 참조하여 우도비를 계산하는 단계; 및 상기 계산된 우도비를 이용하여 상기 관찰 메모리 셀의 논리값을 판별하는 단계를 포함할 수 있다.
실시 예로서, 상기 제 2 읽기 데이터 심볼들을 형성하는 단계는 상기 관찰 메모리 셀과 워드 라인을 공유하는 간섭 메모리 셀들을 읽기 전압을 달리하여 적어도 1번 읽어, 상기 간접 메모리 셀들의 상기 제 2 읽기 데이터 심볼들을 형성하는 단계를 포함할 수 있다.
실시 예로서, 상기 제 1 읽기 데이터 심볼을 형성하는 단계와 상기 제 2 읽기 데이터 심볼들을 형성하는 단계는 함께 수행될 수 있다.
실시 예로서, 상기 제 2 읽기 데이터 심볼들을 형성하는 단계는 상기 관찰 메모리 셀의 워드 라인에 인접한 비선택 워드 라인을 공유하는 간섭 메모리 셀들을 읽기 전압을 달리하여 적어도 1번 읽어, 상기 간섭 메모리 셀들의 상기 제 2 읽기 데이터 심볼들을 형성하는 단계를 포함할 수 있다.
본 발명의 실시 예에 따른 메모리 시스템은 관찰 메모리 셀과 상기 관찰 메모리 셀에 인접한 간섭 메모리 셀들을 포함하는 불휘발성 메모리 장치; 및 상기 불휘발성 메모리 장치를 제어하도록 구성되는 컨트롤러를 포함하고, 상기 불휘발성 메모리 장치는 읽기 전압을 달리하여 적어도 1번 상기 관찰 메모리 셀 및 상기 간섭 메모리 셀들을 읽도록 구성되는 읽기 및 쓰기 회로를 포함하고, 상기 컨트롤러는 상기 읽어진 관찰 메모리 셀의 데이터들로 형성된 제 1 읽기 데이터 심볼을 저장하는 제 1 데이터 버퍼부; 상기 읽어진 각각의 간섭 메모리 셀들의 데이터들로 형성된 제 2 읽기 데이터 심볼들을 저장하는 제 2 데이터 버퍼부; 및 상기 제 1 읽기 데이터 심볼과 상기 제 2 읽기 데이터 심볼들에 기반하여, 상기 관찰 메모리 셀의 논리값을 판별하는 판정부를 포함한다.
실시 예로서, 상기 간섭 메모리 셀들은 상기 관찰 메모리 셀과 워드 라인을 공유하는 인접 메모리 셀들을 포함할 수 있다.
실시 예로서, 상기 간섭 메모리 셀들은 상기 관찰 메모리 셀과 워드 라인을 공유하는 인접 메모리 셀들; 및 상기 관찰 메모리 셀과 워드 라인을 공유하지 않는 인접 메모리 셀들을 포함할 수 있다.
실시 예로서, 상기 판정부는, 상기 제 1 데이터 버퍼부에 저장된 상기 제 1 읽기 데이터 심볼을 수신하여, 제 1 비트 심볼로 변환하도록 구성되는 제 1 비트 심볼 컨버터; 및 상기 제 2 데이터 버퍼부에 저장된 상기 제 2 읽기 데이터 심볼들을 수신하여, 제 2 비트 심볼들로 변환하도록 구성되는 제 2 비트 심볼 컨버터를 더 포함하고, 상기 판정부는 상기 제 1 비트 심볼과 상기 제 2 비트 심볼들을 비교하여, 상기 관찰 메모리 셀의 논리값을 판별하도록 구성될 수 있다.
실시 예로서, 상기 판정부는 상기 제 1 비트 심볼과 상기 제 2 비트 심볼들을 비교하여, 상기 관찰 메모리 셀이 받는 간섭량을 계산하는 간섭 계산부를 더 포함하며, 상기 제 1 비트 심볼과 상기 계산된 간섭량을 참조하여 상기 관찰 메모리 셀의 논리값을 판별하도록 구성될 수 있다.
실시 예로서, 상기 판정부는 상기 제 1 비트 심볼과 상기 계산된 간섭량을 참조하여 상기 관찰 메모리 셀의 우도비(likelihood ratio)를 계산하는 우도비 계산부; 및 상기 계산된 우도비를 수신하며, 상기 계산된 우도비를 참조하여 상기 관찰 메모리 셀의 논리값을 판별하도록 구성되는 ECC(Error Correction Code) 디코더를 더 포함할 수 있다.
본 발명의 실시 예에 따른 메모리 시스템은 관찰 메모리 셀과 상기 관찰 메모리 셀에 인접한 간섭 메모리 셀들을 포함하는 불휘발성 메모리 장치; 및 상기 불휘발성 메모리 장치를 제어하도록 구성되는 컨트롤러를 포함하고, 상기 불휘발성 메모리 장치는 읽기 전압을 달리하여 적어도 1번 관찰 메모리 셀 또는 간섭 메모리 셀들을 읽도록 구성되는 읽기 및 쓰기 회로; 상기 읽어진 관찰 메모리 셀의 데이터들로 형성된 제 1 읽기 데이터 심볼을 저장하는 제 1 데이터 버퍼부; 상기 읽어진 각각의 간섭 메모리 셀들의 데이터들로 형성된 제 2 읽기 데이터 심볼들을 저장하는 제 2 데이터 버퍼부; 및 상기 컨트롤러는 상기 제 1 읽기 데이터 심볼과 상기 제 2 읽기 데이터 심볼들에 기반하여, 상기 관찰 메모리 셀의 논리값을 판별하는 판정부를 포함한다.
실시 예로서, 상기 불휘발성 메모리 장치 및 상기 컨트롤러는 반도체 드라이브(SSD, Solid State Drive)를 형성할 수 있다.
실시 예로서, 상기 불휘발성 메모리 장치 및 상기 컨트롤러는 메모리 카드를 형성할 수 있다.
본 발명에 의하면, 각각의 메모리 셀들마다 개별적으로 고려된 문턱 전압 산포를 이용하여 정확한 우도비(likelihood ratio)가 계산되고, 메모리 셀의 논리값이 판별된다. 결과적으로, 메모리 셀에 저장된 데이터의 신뢰도가 향상되는 메모리 시스템 및 그것의 동작 방법이 제공된다.
도 1은 에러가 포함되는 멀티-비트 불휘발성 메모리 장치의 문턱 전압 산포를 예시적으로 보여주는 도면이다.
도 2는 본 발명의 실시 예에 따른 불휘발성 메모리 장치를 보여주는 블록도이다.
도 3은 도 2의 메모리 셀 어레이의 메모리 셀들의 문턱 전압 산포의 일부를 보여주는 다이어그램이다.
도 4는 제 1 내지 제 7 읽기 전압들이 순차적으로 인가된 경우, 읽기 데이터 심볼에 대응되는 3 비트 심볼을 보여준다.
도 5는 인접 셀들의 간섭으로 변동된 메모리 셀들의 문턱 전압 산포를 예시적으로 보여주는 도면이다.
도 6은 불휘발성 메모리 장치를 포함하는 메모리 시스템을 보여주는 블록도이다.
도 7은 도 6의 연판정 로직의 제 1 실시 예를 보여주는 블록도이다.
도 8은 도 6의 연판정 로직의 제 2 실시 예를 보여주는 블록도이다.
도 9는 도 2의 메모리 셀 어레이를 구체적으로 보여주는 다이어그램이다.
도 10은 도 8의 연판정 로직이 관찰 메모리 셀에 저장된 논리값을 판별하는 방법을 보여주는 순서도이다.
도 11은 도 8의 연판정 로직이 관찰 메모리 셀에 저장된 논리값을 판별하는 방법을 보여주는 순서도이다.
도 12는 도 6의 메모리 시스템의 응용 예를 보여주는 블록도이다.
도 13은 도 12를 참조하여 설명된 메모리 시스템을 포함하는 컴퓨팅 시스템을 보여주는 블록도이다.
이하에서, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자가 본 발명의 기술적 사상을 용이하게 실시할 수 있을 정도로 상세히 설명하기 위하여, 본 발명의 실시 예를 첨부된 도면을 참조하여 설명하기로 한다.
아래에서, 플래시 메모리 장치가 본 발명의 특징 및 기능을 설명하기 위한 불휘발성 메모리의 한 예로서 사용된다. 하지만, 이 기술 분야에 정통한 사람은 여기에 기재된 내용에 따라 본 발명의 다른 이점들 및 성능을 쉽게 이해할 수 있을 것이다. 예를 들면, 저장 매체로서 PRAM, MRAM, ReRAM, FRAM, NOR 플래시 메모리 등이 사용될 수 있으며, 이종의 메모리 장치들이 혼용되는 메모리 시스템에도 적용될 수 있다.
또한, 본 발명은 다른 실시 예들을 통해 구현되거나 적용될 수 있을 것이다. 게다가, 상세한 설명은 본 발명의 범위, 기술적 사상 그리고 다른 목적으로부터 상당히 벗어나지 않고 관점 및 사용에 따라 수정되거나 변경될 수 있다.
도 1은 에러가 포함되는 멀티-비트 불휘발성 메모리 장치의 문턱 전압 산포를 예시적으로 보여주는 도면이다. 도 1에, 예시적으로 하나의 메모리 셀에 2-비트가 저장되는 메모리 셀들의 문턱 전압 산포가 도시되어 있다. 도 2에서, 가로축은 메모리 셀들의 문턱 전압을 나타내며, 세로축은 메모리 셀들의 수를 나타낸다.
불휘발성 메모리 장치에서, 메모리 셀들은 기준 산포들(10, 20, 30, 40)로 프로그램된다. 하지만, 다양한 요인들로 인하여 메모리 셀들의 문턱 전압은 기준 산포들(10, 20, 30, 40)의 형태를 유지하지 못할 수 있다. 그리고 이러한 메모리 셀들의 문턱 전압 변화는 읽기 에러의 원인이 된다.
문턱 전압의 변화의 예로, 인접 메모리 셀들에 의한 간섭에 의한 효과를 예로 들 수 있다. 이러한 간섭의 예로는 에프-폴리 커플링(F-Poly Coupling)과 측면 전하 확산(Lateral Charge Spreading) 등이 있다. 불휘발성 메모리 장치에서 인접한 메모리 셀과 다른 문턱 전압을 갖는 경우 메모리 셀들은 서로 영향을 미친다. 예를 들면, 에프-폴리 커플링(F-Poly Coupling)이나 측면 전하 확산(Lateral Charge Spreading)과 같이 인접한 메모리 셀의 문턱 전압에 따라 메모리 셀의 문턱 전압은 증가하거나 낮아질 수 있다. 특히, 메모리 셀들 중 소거 상태(E0)로 프로그램된 메모리 셀과 가장 높은 문턱 전압을 갖는 프로그램 상태(P3)로 프로그램된 메모리 셀 사이에서 이러한 측면 전하 확산(Lateral Charge Spreading)이나 에프-폴리 커플링(F-Poly Coupling) 현상이 현저하다.
최초 메모리 셀이 프로그램되면, 메모리 셀들의 문턱 전압은 실선으로 도시된 기준 산포들(10, 20, 30, 40)을 형성하게 될 것이다. 그러나 측면 전하 확산이나 에프-폴리 커플링에 따라 산포 (10)에 대응하는 메모리 셀들의 산포는 산포(15)로 이동할 수 있다. 산포 (40)에 대응하는 메모리 셀들은 측면 전하 확산이나 에프-폴리 커플링에 따라 산포 (45)로 이동할 수 있다. 즉, 에프-폴리 커플링 또는 측면 전하 확산에 따라, 소거 상태 (E0)로 프로그램된 메모리 셀들의 문턱 전압이 높아질 수 있다. 그리고 프로그램 상태 (P3)로 프로그램된 메모리 셀들의 문턱 전압은 측면 전하 확산에 의하여 낮아질 수 있다.
이상에서는 불휘발성 메모리 장치의 문턱 전압 산포의 확산이 읽기 에러의 요인으로서 설명되었다. 그러나 불휘발성 메모리 장치를 비롯한 스토리지들에서 읽기 에러는 다양한 요인들로부터 발생할 수 있다. 인접 셀들간의 간섭이나 공정적인 결함, 외부로부터 오는 다양한 노이즈들에 의한 신호의 간섭, 채널의 불안정성으로 인한 왜곡, 시간의 경과에 따른 메모리 셀의 전하량 감소, 프로그램 디스터브(disturb), 리드 디스터브 등의 요인들로 읽기 에러가 발생할 수 있다. 본 발명에서는 이러한 에러로부터 원래 프로그램된 데이터의 신뢰성을 높일 수 있는 메모리 시스템 및 데이터 처리 방법을 제공하고자 한다.
도 2는 본 발명의 실시 예에 따른 불휘발성 메모리 장치(200)를 보여주는 블록도이다.
도 2를 참조하면, 본 발명의 실시 예에 따른 불휘발성 메모리 장치(200)는 메모리 셀 어레이(210), 어드레스 디코더(220), 읽기 및 쓰기 회로(230), 데이터 입출력 회로(240), 제어 로직(250), 및 부분 읽기 제어부(260)를 포함한다.
메모리 셀 어레이(210)는 워드 라인들(WL)을 통해 어드레스 디코더(220)에 연결되고, 비트 라인들(BL)을 통해 읽기 및 쓰기 회로(230)에 연결된다. 메모리 셀 어레이(210)는 복수의 메모리 셀들을 포함한다. 예시적으로, 행 방향으로 배열되는 메모리 셀들은 워드 라인들(WL)에 연결된다. 열 방향으로 배열되는 메모리 셀들은 비트 라인들(BL)에 연결된다. 예시적으로, 메모리 셀 어레이(210)는 셀 당 하나 또는 그 이상의 비트를 저장할 수 있도록 구성된다.
어드레스 디코더(220)는 워드 라인들(WL)을 통해 메모리 셀 어레이(210)에 연결된다. 어드레스 디코더(220)는 제어 로직(250)의 제어에 응답하여 동작하도록 구성된다. 어드레스 디코더(220)는 외부로부터 어드레스(ADDR)를 수신한다.
어드레스 디코더(220)는 수신된 어드레스(ADDR) 중 블록 어드레스를 디코딩하도록 구성된다. 어드레스 디코더(220)는 디코딩된 블록 어드레스를 이용하여 하나의 메모리 블록 또는 복수의 메모리 블록들을 활성화할 수 있다. 어드레스 디코더(220)는 수신된 어드레스(ADDR) 중 행 어드레스를 디코딩하도록 구성된다. 어드레스 디코더(220)는 디코딩된 행 어드레스를 이용하여 워드 라인들(WL)을 선택할 수 있다. 어드레스 디코더(220)는 전달된 어드레스(ADDR) 중 열 어드레스를 디코딩하도록 구성된다. 디코딩된 열 어드레스는 읽기 및 쓰기 회로(230)에 전달된다. 예시적으로, 어드레스 디코더(220)는 블록 디코더, 행 디코더, 열 디코더, 어드레스 버퍼 등을 포함할 수 있다.
읽기 및 쓰기 회로(230)는 비트 라인들(BL)을 통해 메모리 셀 어레이(210)에 연결되고, 데이터 라인들(DL)을 통해 데이터 입출력 회로(240)에 연결된다. 읽기 및 쓰기 회로(230)는 제어 로직(250)의 제어에 응답하여 동작한다. 읽기 및 쓰기 회로(230)는 어드레스 디코더(220)로부터 디코딩된 열 어드레스를 수신하도록 구성된다. 디코딩된 열 어드레스를 이용하여, 읽기 및 쓰기 회로(230)는 비트 라인들(BL)을 선택한다.
읽기 및 쓰기 회로(230)에는 데이터 입출력 회로(240)로부터 한 페이지 분량의 데이터가 수신되며, 수신된 데이터는 프로그램 시에 선택된 페이지에 동시에 프로그램된다. 읽기 및 쓰기 회로(230)는 읽기 동작 시에 선택된 페이지 데이터를 읽고, 데이터 입출력 회로(240)에 전달한다. 예시적으로, 읽기 및 쓰기 회로(230)는 페이지 버퍼(또는 페이지 레지스터), 열 선택 회로 등을 포함할 수 있다.
데이터 입출력 회로(240)는 데이터 라인들(DL)을 통해 읽기 및 쓰기 회로(230)에 연결된다. 데이터 입출력 회로(240)는 제어 로직(250)의 제어에 응답하여 동작한다. 데이터 입출력 회로(240)는 외부와 데이터(DATA)를 교환하도록 구성된다. 데이터 입출력 회로(240)는 외부로부터 전달되는 데이터를 데이터 라인들(DL)을 통해 읽기 및 쓰기 회로(230)에 전달하도록 구성된다. 데이터 입출력 회로(240)는 읽기 및 쓰기 회로로부터 데이터 라인들(DL)을 통해 전달되는 데이터를 외부로 출력하도록 구성된다. 예시적으로, 데이터 입출력 회로(240)는 데이터 버퍼 등을 포함할 수 있다.
읽기 및 쓰기 회로(230)로부터 전달된 데이터는 한 페이지 단위씩 외부에 출력하도록 구성될 수 있다. 읽기 및 쓰기 회로(230)로부터 전달된 데이터는 버퍼 회로(미도시)에 저장된 뒤, 패킷단위로 외부에 전송될 수 있다. 패킷은 복수의 페이지들을 포함한다(예를 들어, 1 패킷은 3 페이지). 예를 들면, 버퍼회로(미도시)는 데이터 입출력 회로(240)일 수 있다. 예를 들면, 버퍼회로(미도시)는 데이터 입출력 회로(240) 외의 별도의 회로로 구성될 수 있다.
제어 로직(250)은 어드레스 디코더(220), 읽기 및 쓰기 회로(230), 그리고 데이터 입출력 회로(240)에 연결된다. 제어 로직(250)은 플래시 메모리 장치(200)의 제반 동작을 제어하도록 구성된다. 제어 로직(250)은 외부로부터 전달되는 제어 신호(CTRL)에 응답하여 동작한다.
제어 로직(250)은 부분 읽기 제어부(260)를 포함한다. 부분 읽기 제어부(260)는 불휘발성 메모리 장치(200)의 부분 읽기 동작을 제어하도록 구성된다. 부분 읽기 제어부(260)의 기능은 도 2 및 도 3을 참조하여 더 상세하게 설명된다.
예시적으로, 부분 읽기 제어부(260)는 디지털 회로, 아날로그 회로, 또는 디지털 및 아날로그 회로들이 결합된 형태로 구현된다. 다른 예로서, 부분 읽기 제어부(260)는 제어 로직(250)에서 구동되는 소프트웨어의 형태로 구현된다. 다른 예로서, 부분 읽기 제어부(260)는 하드웨어 및 소프트웨어가 결합된 형태로 구현된다.
도 3은 도 2의 메모리 셀 어레이(210)의 메모리 셀들의 문턱 전압 산포의 일부를 보여주는 다이어그램이다. 도 3에서, 가로 축은 메모리 셀들의 문턱 전압을 나타내며, 세로 축은 메모리 셀들의 수를 나타낸다.
도 3에서, 메모리 셀들의 제 1 및 제 2 상태들(S1, S2)이 도시되어 있다. 그러나, 메모리 셀들은 제 1 및 제 2 상태들(S1, S2)을 갖는 것으로 한정되지 않는다. 메모리 셀들은 셀 당 적어도 하나의 비트를 저장하도록 구성된다. 즉, 메모리 셀들은 적어도 두 개의 상태들을 갖도록 구성된다.
도 3에서, 메모리 셀들의 문턱 전압 산포가 도시되어 있다. 그러나, 메모리 셀들은 문턱 전압을 이용하여 데이터를 저장하는 것으로 한정되지 않는다. 메모리 셀들이 저항값을 이용하여 데이터를 저장하도록 구성되면, 도 3의 가로축은 메모리 셀들의 저항값을 나타내도록 수정될 것이다. 즉, 메모리 셀들의 저항값 산포가 도 3에 도시될 것이다.
제 1 상태(S1)의 메모리 셀들은 제 1 전압(V1) 주변으로 산포된다. 제 2 상태(S2)의 메모리 셀들은 제 2 전압(V2) 주변으로 산포된다.
이하에서, 제 1 내지 제 7 읽기 전압들(Vr1~Vr7)을 기준으로, 왼쪽에 위치된 메모리 셀들은 로직 하이 "1"에 대응하고, 오른쪽에 위치된 메모리 셀들은 로직 로우 "0"에 대응한다고 가정한다. 그러나, 본 발명은 이 가정에 한정되지 않는다. 예시적으로, 제 1 상태(S1) 및 제 2 상태(S2)는 각각 "1" 및 "0"에 대응하도록 응용될 수 있다.
도 2 및 도 3를 참조하면, 부분 읽기 제어부(260)는 부분 읽기 동작을 제어하도록 구성된다. 부분 읽기 동작 시에, 부분 읽기 제어부(260)는 선택된 메모리 셀을 적어도 1번 읽도록 읽기 및 쓰기 회로(230)를 제어한다. 예를 들면, 부분 읽기 제어부(260)는 i 비트 부분 읽기를 수행하도록 읽기 및 쓰기 회로(230)를 제어한다. i 비트 부분 읽기 시에, 읽기 및 쓰기 회로(230)는 선택 메모리 셀을 최대 2^i-1 번 읽는다. 즉, 읽기 및 쓰기 회로(230)는 하나의 메모리 셀로부터 최대 2^i-1 비트를 읽는다. 하나의 메모리 셀로부터 읽어지는 최대 2^i-1 비트는 하나의 심볼을 형성한다. 이하에서, 선택 메모리 셀로부터 읽어지는 심볼을 "읽기 데이터 심볼"이라 부르기로 한다.
예시적으로, 부분 읽기 제어부(260)는 3 비트 부분 읽기가 수행되도록 읽기 및 쓰기 회로(230)를 제어하는 것으로 가정한다. 즉, 부분 읽기 시에, 선택 메모리 셀은 최대 7번 읽어진다. 그러나, 부분 읽기 제어부(260)는 3 비트 부분 읽기가 수행되도록 읽기 및 쓰기 회로(230)를 제어하는 것으로 한정되지 않는다.
부분 읽기 시에, 부분 읽기 제어부(260)는 선택 메모리 셀에 인가되는 읽기 전압이 조절되도록 제어한다. 예시적으로, 부분 읽기 시에 선택 메모리 셀에 인가되는 제 1 내지 제 7 읽기 전압들(Vr1~Vr7)이 도 2에 도시되어 있다. 부분 읽기 시에, 제 1 내지 제 7 읽기 전압들(Vr1~Vr7)이 선택 메모리 셀에 인가된다. 제 1 내지 제 7 읽기 전압들(Vr1~Vr7)에 대응하는 읽기 데이터들은 읽기 데이터 심볼을 구성한다.
예시적으로, 제 1 내지 제 7 읽기 전압들(Vr1~Vr7)은 순차적으로 선택 메모리 셀에 인가될 수 있다. 예시적으로, 제 1 내지 제 7 읽기 전압들(Vr1~Vr7)은 역순으로 선택 메모리 셀에 인가될 수 있다.
제 1 내지 제 7 읽기 전압들(Vr1~Vr7)이 인가되어 얻어진 읽기 데이터 심볼은 3 비트 심볼에 대응될 수 있다. 예시적으로, 도 4는 제 1 내지 제 7 읽기 전압들(Vr1~Vr7)이 순차적으로 인가된 경우, 읽기 데이터 심볼에 대응되는 3 비트 심볼을 보여준다.
도 4는 제 1 내지 제 7 읽기 전압들(Vr1~Vr7)이 순차적으로 인가된 경우, 읽기 데이터 심볼에 대응되는 3 비트 심볼을 보여준다. 도 4에서, 세로축은 선택 메모리 셀의 문턱 전압을 나타내며, 가로축은 제 1 내지 제 7 읽기 전압들(Vr1~Vr7)이 순차적으로 인가될 때의 읽기 데이터 심볼 및 3 비트 심볼을 나타낸다.
선택 메모리 셀이 제 1 전압 영역(VA1)에 대응하는 문턱 전압을 갖는 것으로 가정한다. 도 2에 도시된 바와 같이, 제 1 전압 영역(VA1)은 제 1 읽기 전압(Vr1)보다 낮은 레벨에 대응한다. 따라서, 선택 메모리 셀에 제 1 내지 제 7 읽기 전압들(Vr1~Vr7)이 순차적으로 인가될 때, 선택 메모리 셀은 턴-온 된다. 즉, 도 3에 도시된 바와 같이, 읽기 데이터 심볼의 제 1 내지 제 7 비트는 각각 "1"에 대응한다.
선택 메모리 셀이 제 2 전압 영역(VA2)에 대응하는 문턱 전압을 갖는 것으로 가정한다. 도 2에 도시된 바와 같이, 제 2 전압 영역(VA2)은 제 1 읽기 전압(Vr1)보다 높고 제 2 읽기 전압(Vr2)보다 낮은 레벨에 대응한다. 따라서, 선택 메모리 셀에 제 1 읽기 전압(Vr1)이 인가될 때, 선택 메모리 셀은 턴-오프 된다. 그리고, 선택 메모리 셀에 제 2 내지 제 7 읽기 전압들(Vr2~Vr7)이 인가될 때, 선택 메모리 셀은 턴-온 된다. 즉, 도 3에 도시된 바와 같이, 읽기 데이터 심볼의 제 1 비트는 "1"에 대응하고, 제 2 내지 제 7 비트는 "0"에 대응한다.
마찬가지로, 선택 메모리 셀의 문턱 전압이 제 3 내지 제 8 전압 영역들(VA3~VA8)에 각각 대응할 때의 읽기 데이터 심볼들의 패턴들이 도 3에 도시되어 있다.
각각의 읽기 데이터 심볼은 3 비트 심볼에 대응될 수 있다. 예시적으로, "1"의 개수에 따라 3 비트 심볼이 표현된다.
선택 메모리 셀이 제 1 전압 영역(VA1)에 대응하는 문턱 전압을 갖는 것으로 가정한다. 그리고, 선택 메모리 셀에 제 1 내지 제 7 읽기 전압들(Vr2~Vr7)이 순차적으로 인가될 때, 읽기 데이터 심볼은 "1111111"에 대응한다. 이 읽기 데이터 심볼에서 "1"이 7개이므로, 3 비트 심볼은 "111"로 표현될 수 있다.
선택 메모리 셀이 제 4 전압 영역(VA4)에 대응하는 문턱 전압을 갖는 것으로 가정한다. 그리고, 선택 메모리 셀에 제 1 내지 제 7 읽기 전압들(Vr2~Vr7)이 순차적으로 인가될 때, 읽기 데이터 심볼은 "0001111"에 대응한다. 이 읽기 데이터 심볼에서 "1"이 4개이므로, 3 비트 심볼은 "100"로 표현될 수 있다.
마찬가지로, 읽기 데이터 심볼들 각각에 대응되는 예시적인 3 비트 심볼들이 도 3에 도시되어 있다.
도 4에 도시된 바와 같이, 선택 메모리 셀을 적어도 1번 읽음으로써 획득되는 읽기 데이터 심볼은 비트 심볼에 대응될 수 있다. 비트 심볼에 선택 메모리 셀의 문턱 전압 정보가 표현된다. 비트 심볼은 연판정과 같은 후속 동작 시에 사용될 수 있다. 즉, 읽기 데이터 심볼은 연판정과 같은 후속 동작 시에 사용될 수 있다.
도 5는 인접 셀들의 간섭으로 변동된 메모리 셀들의 문턱 전압 산포를 예시적으로 보여주는 도면이다. 도 5에서, 가로축은 메모리 셀들의 문턱 전압을 나타내며, 세로축은 메모리 셀들의 수를 나타낸다.
도 5에서, 메모리 셀들의 제 1 및 제 2 상태들(S1, S2)이 도시되어 있다. 그러나, 메모리 셀들은 제 1 및 제 2 상태들(S1, S2)을 갖는 것으로 한정되지 않는다. 메모리 셀들은 셀 당 적어도 하나의 비트를 저장하도록 구성된다. 즉, 메모리 셀들은 적어도 두 개의 상태들을 갖도록 구성된다.
산포 (510), 산포 (530) 및 산포 (550)은 제 1 상태(S1)를 갖는 메모리 셀들에 대응된다. 산포 (520), 산포 (540) 및 산포 (560)은 제 2 상태(S2)를 갖는 메모리 셀들에 대응된다.
이하, 도 5를 참조하는 동안, 산포들 (510,520)에 대응하는 메모리 셀들이 주변 메모리 셀들의 문턱 전압보다 비교적 낮은 문턱 전압을 갖는다고 가정한다. 산포들 (510,520)에 대응하는 메모리 셀들이 주변 메모리 셀들의 간섭을 받으면, 산포들 (510,520)에 대응하는 메모리 셀들의 문턱 전압은 측면 전하 확산 또는 에프-폴리 커플링(F-Poly Coupling) 현상에 의해 상승한다.
산포 (510) 및 산포 (520) 중 주변 셀들의 간섭을 적게 받은 메모리 셀들의 문턱 전압은 상대적으로 낮게 유지될 것이다. 산포 (510) 및 산포 (520) 중 주변 셀들의 간섭을 많이 받은 메모리 셀들의 문턱 전압은 상대적으로 상승될 것이다.
따라서, 산포 (510) 및 산포(520)에 대응하는 메모리 셀들 중 주변 메모리 셀들의 간섭을 적게 받는 메모리 셀들의 문턱 전압은 산포 (530) 및 산포 (540)을 형성한다. 반면에, 산포 (510) 및 산포(520)에 대응하는 메모리 셀들 중 주변 메모리 셀들의 간섭을 많이 받는 메모리 셀들의 문턱 전압은 산포 (550) 및 산포 (560)을 형성한다.
산포 (530)를 이루는 메모리 셀들과 산포 (550)를 이루는 메모리 셀들을 합하면 산포(510)가 형성된다. 산포 (540)를 이루는 메모리 셀들과 산포 (560)를 이루는 메모리 셀들을 합하면 산포(520)가 형성된다.
한편, 선택 메모리 셀이 A에 대응하는 문턱 전압을 갖는 것으로 가정한다. 선택 메모리 셀은 제 1 상태(S1) 또는 제 2 상태(S2)일 수 있다. 선택 메모리 셀이 제 1 상태(S1)일 확률은 A에 대응하는 문턱 전압을 갖는 메모리 셀들의 수와, 제 1 상태(S1)인 메모리 셀들의 수의 비율로 표현될 수 있다. 선택 메모리 셀이 제 2 상태(S2)일 확률은 A에 대응하는 문턱 전압을 갖는 메모리 셀들의 수와, 제 2 상태(S2)인 메모리 셀들의 수의 비율로 표현될 수 있다.
도 5의 A에 대응하는 문턱 전압을 갖는 선택 메모리 셀이 제 1 상태(S1)일 확률은 y/(x+y)로 표현될 수 있다. A에 대응하는 문턱 전압을 갖는 선택 메모리 셀이 제 2 상태(S2)일 확률은 x/(x+y)로 표현될 수 있다. 한편, y/(x+y)는 x/(x+y)보다 크다. 즉, A에 대응하는 문턱 전압을 갖는 선택 메모리 셀은 제 2 상태(S2)인 메모리 셀일 확률보다 제 1 상태(S1)를 갖는 메모리 셀일 확률이 높은 것으로 계산된다.
예시적으로, 다시 도 3을 참조하면, 제 1 전압 영역(VA1)에 대응되는 문턱 전압을 갖는 메모리 셀들은 제 1 상태(S1)인 메모리 셀일 확률이 높다. 제 8 전압 영역(VA8)에 대응되는 문턱 전압을 갖는 메모리 셀들은 제 2 상태(S2)인 메모리 셀일 확률이 높다.
계산된 결과는 도 3 및 4를 참조하여 설명된 비트 심볼에 대응되어 설명될 수 있다. 도 4는 예시적으로 읽기 데이터 심볼에 대응되는 3 비트 심볼을 보여준다. 도 3 및 도 4를 참조하면, 3 비트 심볼이 "111"인 경우, 선택 메모리 셀의 문턱 전압은 제 1 전압 영역(VA1)에 포함된다. 따라서, 선택 메모리 셀의 상태는 제 1 상태(S1)일 확률이 높다. 즉, 3 비트 심볼이 "111"인 경우는 제 1 상태(S1)의 메모리 셀일 확률과 대응될 수 있다.
3 비트 심볼이 "000"인 경우, 선택 메모리 셀의 문턱 전압은 제 8 전압 영역(VA8)에 포함된다. 따라서, 선택 메모리 셀의 상태는 제 1 상태(S1)의 메모리 셀일 확률은 낮다. 즉, 3 비트 심볼이 "000"인 경우는 제 1 상태(S1)의 메모리 셀일 확률과 대응될 수 있다. 마찬가지로, 3 비트 심볼이 "001" 내지 "110"인 경우, 각각 제 1 상태(S1)의 메모리 셀일 확률과 대응될 수 있다.
다만 비트 심볼은 제 1 상태(S1)의 메모리 셀일 확률에만 대응되는 것으로 한정되지 않는다. 비트 심볼이 제 2 상태(S2)의 메모리 셀일 확률과 대응될 수도 있다.
즉, 제 1 상태(S1)일 확률, 또는 제 2 상태(S2)일 확률은 비트 심볼로 표현될 수 있다. 비트 심볼은 우도비(likelihood ratio) 계산 및 연판정과 같은 후속 동작 시에 사용될 수 있다.
산포 (530) 및 산포 (540)에서, A에 대응하는 문턱 전압을 갖는 선택 메모리 셀은 제 1 상태(S1)의 메모리 셀일 확률보다 제 2 상태(S2)의 메모리 셀일 확률이 높은 것으로 계산된다. 그러나, 산포 (550) 및 산포 (560)에서, A에 대응하는 문턱 전압을 갖는 선택 메모리 셀은 제 2 상태(S2)의 메모리 셀일 확률보다 제 1 상태(S1)의 메모리 셀일 확률이 높은 것으로 계산된다. 산포 (510) 및 산포 (520)에서, A에 대응하는 문턱 전압을 갖는 선택 메모리 셀은 제 2 상태(S2)의 메모리 셀일 확률보다 제 1 상태(S1)의 메모리 셀일 확률이 높은 것으로 계산된다. 따라서, A에 대응하는 문턱 전압을 갖는 선택 메모리 셀은 인접 셀들로부터 받는 간섭량의 크기에 따라 확률이 다르게 계산된다.
마찬가지로, 산포 (550) 및 산포 (560)에서, B에 대응하는 문턱 전압을 갖는 선택 메모리 셀은 제 2 상태(S2)의 메모리 셀일 확률보다 제 1 상태(S1)의 메모리 셀일 확률이 높은 것으로 계산된다. 그러나, 산포 (530) 및 산포 (550)에서, B에 대응하는 문턱 전압을 갖는 선택 메모리 셀은 제 1 상태(S1)의 메모리 셀일 확률보다 제 2 상태(S2)의 메모리 셀일 확률이 높은 것으로 계산된다. 산포 (510) 및 산포 (520)에서, B에 대응하는 문턱 전압을 갖는 선택 메모리 셀은 제 1 상태(S1)의 메모리 셀일 확률보다 제 2 상태(S2)의 메모리 셀일 확률이 높은 것으로 계산된다. 따라서, B에 대응하는 문턱 전압을 갖는 선택 메모리 셀은 인접 셀들로부터 받는 간섭량의 크기에 따라 확률이 다르게 계산된다.
도 6은 불휘발성 메모리 장치(610)를 포함하는 메모리 시스템(600)을 보여주는 블록도이다. 메모리 시스템(600)은 불휘발성 메모리 장치(610) 및 컨트롤러(620)를 포함한다. 불휘발성 메모리 장치(610)는 도 2를 참조하여 설명된 불휘발성 메모리 장치(210)과 마찬가지로 구성된다.
컨트롤러(620)는 호스트(Host) 및 불휘발성 메모리 장치(610)에 연결된다. 호스트(Host)로부터의 요청에 응답하여, 컨트롤러(620)는 불휘발성 메모리 장치(610)를 액세스하도록 구성된다. 예를 들면, 컨트롤러(620)는 불휘발성 메모리 장치(610)의 읽기, 쓰기, 그리고 소거 동작을 제어하도록 구성된다. 컨트롤러(620)는 불휘발성 메모리 장치(610) 및 호스트(Host) 사이에 인터페이스를 제공하도록 구성된다. 컨트롤러(620)는 불휘발성 메모리 장치(610)를 제어하기 위한 펌웨어(firmware)를 구동하도록 구성된다.
예시적을, 도 1 및 도 5를 참조하여 설명된 바와 같이, 컨트롤러(620)는 불휘발성 메모리 장치(610)에 제어 신호(CTRL), 어드레스(ADDR)를 제공하도록 구성된다. 그리고, 컨트롤러(620)는 불휘발성 메모리 장치(610)와 데이터(DATA)를 교환하도록 구성된다.
컨트롤러(620)는 연판정 로직(630)을 포함한다. 컨트롤러(620)는 연판정 로직(630)을 제어한다. 연판정 로직(630)은 불휘발성 메모리 장치(610)로부터 선택 메모리 셀에 저장된 데이터를 수신한다. 연판정 로직(630)은 수신된 데이터의 우도비를 계산한다. 연판정 로직(630)은 불휘발성 메모리 장치(610)로부터 수신되는 읽기 데이터 심볼의 연판정을 수행하도록 구성된다. 예시적으로, 연판정 로직(630)은 디지털 회로, 아날로그 회로, 또는 디지털 및 아날로그 회로들이 결합된 형태로 구현된다. 다른 예로서, 연판정 로직(630)은 컨트롤러(620)에서 구동되는 소프트웨어의 형태로 구현된다. 다른 예로서, 연판정 로직(630)은 하드웨어 및 소프트웨어가 결합된 형태로 구현된다. 연판정 로직(630)은 도 7 내지 도 10을 참조하여 더 상세하게 설명된다.
연판정 로직(630)은 ECC(Error Correction Code) 디코더(미도시)를 추가적으로 포함하도록 구성될 수 있다. ECC(Error Correction Code) 디코더(750)는 관찰 메모리 셀의 우도비를 참조하여 관찰 메모리 셀에 저장된 논리값를 판별하고, 정정하도록 구성된다.
예시적으로, 컨트롤러(620)는 램(RAM, Ramdon Access Memory), 프로세싱 유닛(processing unit), 호스트 인터페이스(host interface), 그리고 메모리 인터페이스(memory interface)와 같은 잘 알려진 구성 요소들을 더 포함한다. 램(RAM)은 프로세싱 유닛의 동작 메모리, 불휘발성 메모리 장치(610) 및 호스트(Host) 사이의 캐시 메모리, 그리고 불휘발성 메모리 장치(610) 및 호스트(Host) 사이의 버퍼 메모리 중 적어도 하나로서 이용된다. 프로세싱 유닛은 컨트롤러(620)의 제반 동작을 제어한다.
호스트 인터페이스는 호스트(Host) 및 컨트롤러(620) 사이의 데이터 교환을 수행하기 위한 프로토콜을 포함한다. 예시적으로, 컨트롤러(620)는 USB (Universal Serial Bus) 프로토콜, MMC (multimedia card) 프로토콜, PCI (peripheral component interconnection) 프로토콜, PCI-E (PCI-express) 프로토콜, ATA (Advanced Technology Attachment) 프로토콜, Serial-ATA 프로토콜, Parallel-ATA 프로토콜, SCSI (small computer small interface) 프로토콜, ESDI (enhanced small disk interface) 프로토콜, 그리고 IDE (Integrated Drive Electronics) 프로토콜 등과 같은 다양한 인터페이스 프로토콜들 중 적어도 하나를 통해 외부(호스트)와 통신하도록 구성된다. 메모리 인터페이스는 불휘발성 메모리 장치(610)와 인터페이싱한다. 예를 들면, 메모리 인터페이스는 낸드 인터페이스 또는 노어 인터페이스를 포함한다.
컨트롤러(620) 및 불휘발성 메모리 장치(610)는 하나의 반도체 장치로 집적될 수 있다. 예시적으로, 컨트롤러(620) 및 불휘발성 메모리 장치(610)는 하나의 반도체 장치로 집적되어, 메모리 카드를 구성한다. 예를 들면, 컨트롤러(620) 및 불휘발성 메모리 장치(610)는 하나의 반도체 장치로 집적되어 PC 카드(PCMCIA, personal computer memory card international association), 컴팩트 플래시 카드(CF), 스마트 미디어 카드(SM, SMC), 메모리 스틱, 멀티미디어 카드(MMC, RS-MMC, MMCmicro), SD 카드(SD, miniSD, microSD, SDHC), 유니버설 플래시 기억장치(UFS) 등과 같은 메모리 카드를 구성한다.
컨트롤러(620) 및 불휘발성 메모리 장치(610)는 하나의 반도체 장치로 집적되어 반도체 드라이브(SSD, Solid State Drive)를 구성한다. 반도체 드라이브(SSD)는 반도체 메모리에 데이터를 저장하도록 구성되는 저장 장치를 포함한다. 메모리 시스템(600)이 반도체 드라이브(SSD)로 이용되는 경우, 메모리 시스템(600)에 연결된 호스트(Host)의 동작 속도는 획기적으로 개선된다.
다른 예로서, 메모리 시스템(600)은 컴퓨터, 휴대용 컴퓨터, UMPC (Ultra Mobile PC), 워크스테이션, 넷북(net-book), PDA, 웹 타블렛(web tablet), 무선 전화기(wireless phone), 모바일 폰(mobile phone), 스마트폰(smart phone), 디지털 카메라(digital camera), 디지털 음성 녹음기(digital audio recorder), 디지털 음성 재생기(digital audio player), 디지털 영상 녹화기(digital picture recorder), 디지털 영상 재생기(digital picture player), 디지털 동영상 녹화기(digital video recorder), 디지털 동영상 재생기(digital video player), 정보를 무선 환경에서 송수신할 수 있는 장치, 홈 네트워크를 구성하는 다양한 전자 장치들 중 하나, 컴퓨터 네트워크를 구성하는 다양한 전자 장치들 중 하나, 텔레매틱스 네트워크를 구성하는 다양한 전자 장치들 중 하나, RFID 장치, 또는 컴퓨팅 시스템을 구성하는 다양한 구성 요소들 중 하나 등과 같은 전자 장치의 다양한 구성 요소들 중 하나로 제공된다.
예시적으로, 불휘발성 메모리 장치(610) 또는 메모리 시스템(600)은 다양한 형태들의 패키지로 실장될 수 있다. 예를 들면, 불휘발성 메모리 장치(610) 또는 메모리 시스템(600)은 PoP(Package on Package), Ball grid arrays(BGAs), Chip scale packages(CSPs), Plastic Leaded Chip Carrier(PLCC), Plastic Dual In-Line Package(PDIP), Die in Waffle Pack, Die in Wafer Form, Chip On Board(COB), Ceramic Dual In-Line Package(CERDIP), Plastic Metric Quad Flat Pack(MQFP), Thin Quad Flatpack(TQFP), Small Outline(SOIC), Shrink Small Outline Package(SSOP), Thin Small Outline(TSOP), Thin Quad Flatpack(TQFP), System In Package(SIP), Multi Chip Package(MCP), Wafer-level Fabricated Package(WFP), Wafer-Level Processed Stack Package(WSP) 등과 같은 방식으로 패키지화되어 실장된다.
도 7은 도 6의 연판정 로직(630)의 제 1 실시 예(700)를 보여주는 블록도이다.
도 7을 참조하면, 연판정 로직(700)은 데이터 버퍼부(710), 비트 심볼 컨버터(720), 간섭 계산부(730), 우도비 계산부(740) 및 ECC(Error Correction Code) 디코더(750)를 포함한다.
데이터 버퍼부(710)는 도 6의 불휘발성 메모리 장치(610)로부터 읽기 데이터 심볼을 수신 및 저장하도록 구성된다. 데이터 버퍼부(710)는 제 1 내지 제 j 데이터 버퍼(711~71j)를 포함한다.
예시적으로, 낸드 플래시 메모리의 경우, 하나의 읽기 전압이 워드 라인에 인가되어, 한 페이지 단위로 읽기 동작이 수행된다. 선택 워드 라인의 메모리 셀들에 제 1 읽기 전압 내지 제 j 읽기 전압이 인가되면 j개의 페이지가 읽어진다.
예시적으로, 선택 워드 라인의 메모리 셀들에 제 1 읽기 전압(Vr1)을 인가하여 읽어지는 읽기 데이터들은 제 1 데이터 버퍼(711)에 저장된다. 마찬가지로, 선택 워드 라인의 메모리 셀들에 제 2 내지 제 j 읽기 전압(Vr2~Vrj)을 인가하여 읽어지는 읽기 데이터들은 제 2 내지 제 j 데이터 버퍼(712~71j) 각각에 저장된다.
제 1 내지 제 j 읽기 전압을 이용하여 읽어진 하나의 메모리 셀의 읽기 데이터들은 하나의 읽기 데이터 심볼을 형성한다.
인접한 메모리 셀들의 간섭을 받는 메모리 셀(이하, "관찰 메모리 셀"이라 한다)은 선택 워드 라인을 공유하는 메모리 셀들에 포함된다. 관찰 메모리 셀과 인접한 메모리 셀들(이하, "간섭 메모리 셀들"이라 한다)은 선택 워드 라인을 공유하는 메모리 셀들에 포함된다.
비트 심볼 컨버터(720)는 데이터 버퍼부(710)의 읽기 데이터 심볼을 비트 심볼로 변환하도록 구성된다. 예시적으로, 비트 심볼 컨버터(720)는 읽기 데이터 심볼을 i 비트 심볼로 변환한다. 여기서, j는 2^i-1일 수 있다. 예시적으로, 도 4를 참조하여 상세히 설명된 바와 같이, 3 비트 부분 읽기가 수행될 때, 비트 심볼 컨버터(720)는 읽기 데이터 심볼을 3 비트 심볼로 변환한다. 예를 들면, 비트 심볼 컨버터(720)는 읽기 데이터 심볼의 "1"의 수를 카운트함으로써, 읽기 데이터 심볼을 3비트 심볼로 변환한다.
간섭 계산부(730)는 비트 심볼 컨버터(720)에 의해 변환된 메모리 셀들의 비트 심볼을 수신한다. 변환된 메모리 셀들의 비트 심볼은 문턱 전압 정보를 포함한다. 간섭 계산부(730)는 제 1 내지 제 n 간섭 계산기(731~73n)를 포함한다.
본 발명의 실시 예에 따르면, 관찰 메모리 셀의 문턱 전압이 인접 메모리 셀들의 간섭으로 인해 변화된 정도가 참조되어 관찰 메모리 셀의 우도비가 계산된다. 관찰 메모리 셀은 선택 워드 라인을 공유하는 메모리 셀들 중 하나이다. 간섭 메모리 셀들도 선택 워드 라인을 공유하는 메모리 셀들 중 하나이다.
제 1 간섭 계산기(731)에서 간섭 메모리 셀들의 비트 심볼이 참조되어, 관찰 메모리 셀이 간섭 메모리 셀들로부터 받는 간섭량이 계산된다. 예시적으로, 관찰 메모리 셀과 워드 라인을 공유하는 간섭 메모리 셀들의 비트 심볼이 참조되어, 제 1 관찰 메모리 셀이 받는 간섭량이 계산된다.
마찬가지로, 제 2 간섭 계산기(732) 내지 제 n 간섭 계산기(73n)에서, 제 2 내지 제 n 관찰 메모리 셀들이 간섭 메모리 셀들으로부터 받는 간섭량이 각각 계산된다.
예시적으로, 관찰 메모리 셀이 소거 상태(E0, 도 1 참조)에서 소거 상태(E0, 도 1 참조)로 프로그램된다고 가정한다. 간섭 메모리 셀은 소거 상태(E0, 도 1 참조)에서 프로그램 상태(P3, 도 1 참조)로 프로그램된다고 가정한다. 이 경우, 관찰 메모리 셀에서, 에프-폴리 커플링(F-Poly Coupling) 현상이 현저하다.
예시적으로, 관찰 메모리 셀이 소거 상태(E0, 도 1 참조)에서 소거 상태(E0, 도 1 참조)로 프로그램된다고 가정한다. 간섭 메모리 셀은 소거 상태(E0, 도 1 참조)에서 프로그램 상태(P1, 도 1 참조)로 프로그램된다고 가정한다. 이 경우의 관찰 메모리 셀이 받는 간섭량은 간섭 메모리 셀이 프로그램 상태(P3, 도 1 참조)로 프로그램되는 경우 관찰 메모리 셀이 받는 간섭량보다 작다.
우도비 계산부(740)는 관찰 메모리 셀의 비트 심볼과 관찰 메모리 셀이 받는 간섭량을 참조하여 관찰 메모리 셀의 우도비(likelihood ratio)를 계산한다. 예를 들면, 우도비 계산부(740)는 관찰 메모리 셀의 로그 우도비(logarithmic likelihood ratio)를 계산한다. 예를 들면, 우도비 계산부(740)는 관찰 메모리 셀의 비트 심볼의 제 1 상태(S1, 도 3 참조) 및 제 2 상태(S2, 도 3 참조)에 대한 우도비들을 각각 계산한다.
예시적으로, 우도비 계산부(740)는 메모리 셀들의 문턱 전압 산포에 대한 정보를 저장하도록 구성된다. 예시적으로, 우도비 계산부(740)는 간섭량을 고려한 문턱 전압 산포에 대한 정보를 저장하도록 구성된다. 저장되어 있는 정보에 기반하여, 우도비 계산부(740)는 관찰 메모리 셀의 제 1 및 제 2 상태들(S1, S2)에 대한 우도비들을 각각 계산하도록 구성된다.
예시적으로, 우도비는 두 개의 조건부 확률의 비율로 계산된다. 예시적으로, 수학식 1 또는 수학식 2와 같이, 우도비는 우도비 계산부(740)에 수신된 비트 심볼에 대응되는 메모리 셀이 제 1 상태(S1)일 확률과 수신된 비트 심볼에 대응되는 메모리 셀이 제 2 상태(S2)일 확률의 비율로 계산된다. 예를 들면, 수신된 비트 심볼에 대응되는 메모리 셀이 제 1 상태(S1) 또는 제 2 상태(S2)일 확률은 간섭량을 고려한 문턱 전압 산포에 대한 정보에 기반하여 계산될 수 있다.
Figure pat00001
수학식 1을 참조하면, 우도비 계산부(740)에 수신된 비트 심볼 데이터에 대응되는 메모리 셀이 제 1 상태(S1)로 프로그램되었을 확률을 우도비 계산부(740)에 수신된 비트 심볼 데이터가 제 2 상태(S2)로 프로그램되었을 확률로 나누어 우도비가 계산될 수 있다.
Figure pat00002
수학식 2에서, 우도비는 우도비 계산부(740)에 수신된 비트 심볼 데이터에 대응되는 메모리 셀이 제 2 상태(S2)일 확률을 제 1 상태(S1)일 확률로 나누어 계산될 수 있다.
예시적으로, 문턱 전압 산포의 정보는 측정을 통해 제공된다. 예를 들면, 컨트롤러(300)는 불휘발성 메모리 장치(610)의 메모리 셀들의 문턱 전압 산포를 측정하고, 측정된 산포를 우도비 계산부(740)에 저장한다. 메모리 셀들의 문턱 전압 산포가 변할 때, 우도비 계산부(740)에 저장되는 문턱 전압 산포에 대한 정보는 갱신된다. 예를 들면, 메모리 셀들의 문턱 전압 산포가 가변될 때, 컨트롤러(620)는 불휘발성 메모리 장치(610)의 메모리 셀들의 문턱 전압 산포를 재측정한다. 예시적으로, 재측정은 불휘발성 메모리 장치(610)의 메모리 셀들의 열화(예를 들면, 프로그램 및 소거 횟수)에 기반하여 수행된다. 예시적으로, 문턱 전압 산포의 측정은 부분 읽기에 의해 수행된다.
다른 예로서, 간섭량을 고려한 문턱 전압의 정보는 미리 설정된 테이블의 형태로 제공된다. 우도비 계산부(740)는 미리 설정되어 있는 테이블에 기반하여, 비트 심볼의 우도비를 계산하도록 구성된다.
ECC(Error Correction Code) 디코더(750)는 우도비 계산부(740)로부터 계산된 관찰 메모리 셀의 우도비를 수신한다. ECC(Error Correction Code) 디코더(750)는 관찰 메모리 셀의 우도비를 참조하여 관찰 메모리 셀에 저장된 논리값을 판별한다. 예를 들면, ECC(Error Correction Code) 디코더(750)는 제 1 상태(S1, 도 3 참조) 및 제 2 상태(S2, 도 3 참조)에 대한 우도비들을 비교하여, 최대 우도비에 대응하는 상태를 선택한다. ECC(Error Correction Code) 디코더(750)에 의해 결정된 논리값은 호스트(Host)가 요청한 읽기 데이터(Read data)로 제공될 수 있다.
도 8은 도 6의 연판정 로직(630)의 제 2 실시 예(800)를 보여주는 블록도이다.
도 8을 참조하면, 연판정 로직(800)은 제 1 데이터 버퍼부(810), 제 2 데이터 버퍼부(820), 제 1 비트 심볼 컨버터(830), 제 2 비트 심볼 컨버터(840), 간섭 계산부(850), 우도비 계산부(860), 및 ECC 디코더(870)를 포함한다.
제 1 데이터 버퍼부(810) 및 제 1 비트 심볼 컨버터(830)는 도 7의 데이터 버퍼부(710) 및 비트 심볼 컨버터(720)과 마찬가지로 구성된다.
제 2 데이터 버퍼부(820)는 선택 워드 라인과 인접한 비선택 워드 라인의 메모리 셀들로부터 읽기 데이터 심볼을 수신 및 저장하도록 구성된다. 제 2 데이터 버퍼부(820)는 제 1 내지 제 j 데이터 버퍼(711~71j)를 포함한다.
예시적으로, 낸드 플래시 메모리의 경우, 하나의 읽기 전압이 워드 라인에 인가되어, 한 페이지 단위로 읽기 동작이 수행된다. 선택 워드 라인의 메모리 셀들에 제 1 읽기 전압 내지 제 j 읽기 전압이 인가되면 j개의 페이지가 읽어진다.
예시적으로, 선택 워드 라인의 메모리 셀들에 제 1 읽기 전압(Vr1)을 인가하여 읽어지는 읽기 데이터들은 제 1 데이터 버퍼(711)에 저장된다. 마찬가지로, 선택 워드 라인의 메모리 셀들에 제 2 내지 제 j 읽기 전압(Vr2~Vrj)을 인가하여 읽어지는 읽기 데이터들은 제 2 내지 제 j 데이터 버퍼(712~71j) 각각에 저장된다.
제 1 내지 제 j 읽기 전압을 이용하여 읽어진 하나의 메모리 셀의 읽기 데이터들은 하나의 읽기 데이터 심볼을 형성한다. 비선택 워드 라인의 메모리 셀들로부터 수신된 읽기 데이터 심볼은 간섭 메모리 셀들이 관찰 메모리 셀에 미치는 간섭량을 계산하는데 이용된다.
제 2 비트 심볼 컨버터(840)는 제 2 데이터 버퍼부(820)의 읽기 데이터 심볼을 비트 심볼로 변환하도록 구성된다. 제 1 비트 심볼 컨버터(830)가 읽기 데이터 심볼을 수신하여 i 비트 심볼로 변환하는 것과 마찬가지로 구성된다. 여기서, j는 2^i-1일 수 있다.
즉, 제 1 비트 심볼 컨버터(830)에 선택 워드 라인의 메모리 셀들의 문턱 전압 정보가 저장된다. 제 2 비트 심볼 컨버터(840)에 선택 워드 라인과 인접한 비선택 워드 라인의 메모리 셀들의 문턱 전압 정보가 저장된다.
여기에서, 관찰 메모리 셀은 선택 워드 라인을 공유하는 메모리 셀들에 포함된다. 간섭 메모리 셀들은 관찰 메모리 셀과 워드 라인을 공유하는 메모리 셀들 및 관찰 메모리 셀과 워드 라인을 공유하지 않는 메모리 셀들에 포함된다.
간섭 계산부(850)는 제 1 비트 심볼 컨버터(830) 및 제 2 비트 심볼 컨버터(840)에 의해 변환된 메모리 셀들의 비트 심볼을 수신한다. 변환된 메모리 셀들의 비트 심볼은 문턱 전압 정보를 포함한다. 간섭 계산부(850)는 제 1 내지 제 n 간섭 계산기(851~85n)를 포함한다.
제 1 간섭 계산기(810) 내지 제 n 간섭 계산기(820)에서, 제 1 내지 제 n 관찰 메모리 셀들이 간섭 메모리 셀들으로부터 받는 간섭량이 각각 계산된다. 도 7을 참조하여 설명된 제 1 실시 예(700)는 선택 워드 라인을 공유하는 간섭 메모리 셀들의 간섭량이 계산된다. 그러나, 도 8을 참조하여 설명된 제 2 실시 예(800)는 선택 워드 라인을 공유하는 간섭 메모리 셀들의 간섭량 및 선택 워드 라인을 공유하지 않는 간섭 메모리 셀들의 간섭량이 계산된다. 이는 도 9를 참조하여 더 상세하게 설명된다.
도 9는 도 2의 메모리 셀 어레이(210)를 보여주는 블록도이다.
예시적으로, 관찰 메모리 셀을 메모리 셀(MC12) 라고 가정한다. x1 및 x2 방향에 위치한 간섭 메모리 셀(MC13) 및 간섭 메모리 셀(MC11)은 관찰 메모리 셀(MC12)과 워드 라인을 공유하는 메모리 셀들이다. 따라서 x1 및 x2 방향에 위치한 간섭 메모리 셀(MC13) 및 간섭 메모리 셀(MC11)이 관찰 메모리 셀(MC12)에 미치는 간섭량은 도 7을 참조하여 설명된 바와 같이 계산된다.
간섭 메모리 셀(MC22)의 문턱 전압 정보는 도 8의 제 2 비트 심볼 컨버터(840)에 저장된다. 따라서, y 방향에 위치한 간섭 메모리 셀(MC22)이 관찰 메모리 셀(MC12)에 미치는 간섭량이 계산될 수 있다.
간섭 메모리 셀(MC23) 및 간섭 메모리 셀(MC21)의 문턱 전압 정보는 도 8의 제 2 비트 심볼 컨버터(840)에 저장된다. 따라서, xy1 및 xy2 방향에 위치한 간섭 메모리 셀(MC23) 및 간섭 메모리 셀(MC21)이 관찰 메모리 셀(MC12)에 미치는 간섭량이 계산될 수 있다.
계산된 각각의 간섭량이 합산되면 관찰 메모리 셀(MC12)가 간섭 메모리 셀들로부터 받는 간섭량이 계산된다.
다시 도 8을 참조하면, 우도비 계산부(860)는 도 7을 참조하여 설명된 우도비 계산부(740)와 마찬가지로 구성된다. 즉, 비트 심볼과 계산된 간섭량들을 참조하여 우도비(likelihood ratio)를 계산한다. 예를 들면, 우도비 계산부(860)는 비트 심볼과 계산된 간섭량을 참조하여 로그 우도비(logarithmic likelihood ratio)를 계산한다. 예를 들면, 우도비 계산부(860)는 변환된 비트 심볼의 제 1 상태(S1, 도 3 참조) 및 제 2 상태(S2, 도 3 참조)에 대한 우도비들을 각각 계산한다. 예시적으로, 우도비 계산부(860)는 간섭량을 고려한 문턱 전압 산포에 대한 정보를 저장하도록 구성된다. 저장되어 있는 정보에 기반하여, 우도비 계산부(860)는 비트 심볼의 제 1 및 제 2 상태들(S1, S2)에 대한 우도비들을 각각 계산하도록 구성된다.
다른 예로서, 간섭량을 고려한 문턱 전압의 정보는 미리 설정된 테이블의 형태로 제공된다. 우도비 계산부(860)는 미리 설정되어 있는 테이블에 기반하여, 비트 심볼의 우도비를 계산하도록 구성된다.
ECC(Error Correction Code) 디코더(870)는 우도비 계산부(860)로부터 계산된 우도비를 수신한다. ECC(Error Correction Code) 디코더(870)는 도 7을 참조하여 설명된 ECC(Error Correction Code) 디코더(750)과 마찬가지로 구성된다. ECC(Error Correction Code) 디코더(870)는 관찰 메모리 셀의 우도비를 참조하여 관찰 메모리 셀에 저장된 논리값을 판별한다. 예를 들면, 제 1 상태(S1, 도 3 참조) 및 제 2 상태(S2, 도 3 참조)에 대한 우도비들을 비교하여, 최대 우도비에 대응하는 상태를 선택한다. ECC(Error Correction Code) 디코더(870)에 의해 결정된 논리값은 호스트(Host)가 요청한 읽기 데이터(Read data)로 제공될 수 있다.
한편, 제 1 및 제 2 데이터 버퍼부(810,820) 및 제 1 및 제 2 비트 심볼 컨버터(830,840)는 도 6의 불휘발성 메모리 장치(610)에 구비될 수 있다. 마찬가지로, 도 7을 참조하여 설명된 데이터 버퍼부(710) 및 비트 심볼 컨버터(720)도 도 6의 불휘발성 메모리 장치(610)에 구비될 수 있다.
불휘발성 메모리 장치(610)에 데이터 버퍼부(710) 및 비트 심볼 컨버터(720)가 구비된 경우, 데이터 버퍼부(710) 및 비트 심볼 컨버터(720)는 도 7을 참조하여 설명된 것과 마찬가지로 구성된다. 이 경우, 데이터 버퍼부(710) 및 비트 심볼 컨버터(720)는 도 2의 컨트롤 로직(250)의 제어를 받아 동작한다.
불휘발성 메모리 장치(610)에 제 1 및 제 2 데이터 버퍼부(810,820) 및 제 1 및 제 2 비트 심볼 컨버터(830,840)가 구비된 경우, 제 1 및 제 2 데이터 버퍼부(810,820) 및 제 1 및 제 2 비트 심볼 컨버터(830,840)는 도 8을 참조하여 설명된 것과 마찬가지로 구성된다. 이 경우, 제 1 및 제 2 데이터 버퍼부(810,820) 및 제 1 및 제 2 비트 심볼 컨버터(830,840)는 도 2의 컨트롤 로직(250)의 제어를 받아 동작한다.
예시적으로, 불휘발성 메모리 장치(610)에 포함된 제 1 데이터 버퍼부(810)에 최대 2^i-1번 읽힌 선택 워드 라인의 메모리 셀들의 데이터가 저장된다. 그리고 불휘발성 메모리 장치(610)에 포함된 제 1 비트 심볼 컨버터(830)에서, 선택 워드 라인의 메모리 셀들의 데이터가 i 비트 심볼들로 변환된다. 변환된 각각의 비트 심볼 데이터는 컨트롤러(620)의 간섭 계산부(850) 및 우도비 계산부(860)에 전송된다. i 비트 심볼에서 하나의 데이터를 비트 심볼 데이터로 정의할 때, 선택 워드 라인의 메모리 셀들의 비트 심볼 데이터들이 컨트롤러(620)에 전송될 수 있다. 이 경우, i 비트 심볼은 i번에 걸쳐 컨트롤러(620)에 전송될 수 있다.
제 2 데이터 버퍼부(820)는 선택 워드 라인과 인접한 비선택 워드 라인의 메모리 셀들의 데이터를 저장한다는 것을 제외하면, 제 2 데이터 버퍼부(820)도 제 1 데이터 버퍼부(810)과 마찬가지로 구성될 것이다. 그리고 제 2 비트 심볼 컨버터(840)에서, 선택 워드 라인과 인접한 비선택 워드 라인의 메모리 셀들의 데이터가 i 비트 심볼 데이터로 변환될 것이다. 변환된 각각의 비트 심볼 데이터는 컨트롤러(620)의 간섭 계산부(850)에 전송될 것이다.
예시적으로, 불휘발성 메모리 장치(610)와 컨트롤러(620)간의 인터페이스가 아날로그인 경우, 제 1 비트 심볼 컨버터(830) 및 제 2 비트 심볼 컨버터(840)는 컨트롤러(620)에 포함될 수 있다. 이 경우, 컨트롤러(620)는 아날로그-디지털 변환부(ADC,미도시)를 추가적으로 포함할 수 있다. 선택 워드 라인을 1 번 읽은 데이터들의 아날로그 값이 컨트롤러(620)에서 수신되고, 컨트롤러(620)는 아날로그-디지털 변환부(ADC,미도시)를 이용하여 수신된 아날로그 값을 디지털 데이터들로 변환하여 저장한다. 불휘발성 메모리 장치(610)에서 선택 워드 라인의 데이터들은 2^i-1번 읽히고, 컨트롤러(620)는 2^i-1번 선택 워드 라인의 아날로그 데이터들을 수신할 것이다. 그리고 컨트롤러(620)는 아날로그-디지털 변환부(ADC)를 구비하여 수신된 아날로그 데이터들 디지털 데이터들로 변환하여 저장할 것이다. 아날로그-디지털 변환부(ADC)에 저장된 선택 워드 라인의 디지털 데이터들은 제 1 비트 심볼 컨버터(830)에 의해 i 비트 심볼로 변환될 것이다. 제 2 비트 심볼 컨버터(840)도 마찬가지로 구성될 것이다.
도 10은 도 8의 연판정 로직(800)이 관찰 메모리 셀에 저장된 논리값을 판별하는 방법을 보여주는 순서도이다.
도 8 및 도 10을 참조하면, S110에서, 제 1 데이터 버퍼부(810)는 i 비트 부분 읽기 방법을 통해 읽은 선택 워드 라인의 메모리 셀들의 데이터들을 수신한다. 제 1 데이터 버퍼부(810)가 1 페이지 단위로 데이터들을 수신한다고 가정했을 때, 최대 2^i-1 번 데이터들을 수신할 수 있다. 하나의 메모리 셀에 대응되는 2^i-1 개의 데이터들은 읽기 데이터 심볼을 형성한다.
S120에서, 제 1 데이터 버퍼부(810)에 저장된 읽기 데이터 심볼은 비트 심볼로 변환된다.
S130에서, 제 2 데이터 버퍼부(820)는 i 비트 부분 읽기 방법을 통해 읽은 선택 워드 라인과 인접한 비선택 워드 라인의 메모리 셀들의 데이터들을 수신한다. 그리고 제 1 데이터 버퍼부(810)는 i 비트 부분 읽기 방법을 통해 읽은 선택 워드 라인의 메모리 셀들의 데이터를 수신한다.
연판정 로직(630)이 1 페이지 단위로 데이터들을 수신한다고 가정했을 때, 제 1 데이터 버퍼부(810)는 최대 2^i-1 번 데이터들을 수신할 수 있다. 하나의 메모리 셀에 대응되는 2^i-1 개의 데이터들은 읽기 데이터 심볼을 형성한다.
도 9를 참조하면, 관찰 메모리 셀에 인접한 간섭 메모리 셀들은 관찰 메모리 셀과 워드 라인을 공유할 수 있다. 관찰 메모리 셀에 인접한 간섭 메모리 셀들은 관찰 메모리 셀과 워드 라인을 공유하지 않을 수 있다. 따라서, 페이지 단위로 읽기 동작이 수행되는 낸드 플래시 메모리에서, 관찰 메모리 셀을 읽는 단계(S110)와 관찰 메모리 셀과 워드 라인을 공유하는 간섭 메모리 셀을 읽는 단계는 동시에 수행될 수 있다. 단, 관찰 메모리 셀을 읽는 단계(S110)와, 관찰 메모리 셀의 워드 라인을 공유하지 않는 간접 메모리 셀들을 읽는 단계는 동시에 수행되지 않을 수 있다.
S140에서, 제 1 데이터 버퍼부(810)에 저장된 읽기 데이터 심볼은 비트 심볼로 변환된다.
S150에서, S120에서 계산된 비트 심볼과 S140에서 계산된 비트 심볼을 고려하여, 간섭 계산부(850)는 관찰 메모리 셀이 간섭 메모리 셀들로부터 받는 간섭량을 계산한다. 도 7 및 도 8을 참조하여 설명된 바와 같이, 간섭 계산부(850)는 간섭 메모리 셀들이 가지는 문턱 전압, 간섭 메모리 셀들의 방향, 및 간섭 메모리 셀들의 거리 등을 고려하여 간섭량을 계산한다.
S160에서, 우도비 계산부(860)는 S120에서 계산된 비트 심볼 및 S150에서 계산된 간섭량을 고려하여 우도비(likelihood ratio)를 계산한다. 예를 들면, 우도비 계산부(860)는 비트 심볼과 간섭량을 참조하여 로그 우도비(logarithmic likelihood ratio)를 계산한다. 예시적으로, 우도비 계산부(860)는 저장된 메모리 셀들의 문턱 전압 산포에 대한 정보를 이용해 우도비를 계산한다. 예시적으로, 우도비 계산부(860)는 간섭량을 고려한 메모리 셀들의 문턱 전압 산포를 저장하고, 이를 이용해 우도비를 계산한다. 예시적으로, 우도비 계산부(860)는 저장되어 있는 정보에 기반하여, 비트 심볼의 제 1 및 제 2 상태들(S1, S2, 도 3 참조)에 대한 우도비들을 각각 계산한다.
S170에서, ECC(Error Correction Code) 디코더(870)는 S160에서 계산된 우도비에 기반하여, 관찰 메모리 셀에 저장된 논리값을 판별한다. 예를 들면, 제 1 상태(S1, 도 3 참조) 및 제 2 상태(S2, 도 3 참조)에 대한 우도비들을 비교하여, ECC(Error Correction Code) 디코더(870)는 최대 우도비에 대응하는 상태를 선택한다. ECC(Error Correction Code) 디코더(870)에 의해 결정된 논리값은 호스트(Host)가 요청한 읽기 데이터(Read data)로 제공될 수 있다.
도 11은 도 8의 연판정 로직(800)이 관찰 메모리 셀에 저장된 논리값을 판별하는 방법을 보여주는 순서도이다.
도 8 및 도 10을 참조하면, S210에서, 제 1 데이터 버퍼부(810)는 i 비트 부분 읽기 방법을 통해 읽은 선택 워드 라인의 메모리 셀들의 데이터들을 수신한다. 하나의 메모리 셀에 대응되는 최대 2^i-1 개의 데이터들은 읽기 데이터 심볼을 형성한다.
S220에서, 제 1 데이터 버퍼부(810)에 저장된 읽기 데이터 심볼은 비트 심볼로 변환된다. 즉, S210 및 S220은 도 8 및 도 10를 참조하여 설명된 바와 마찬가지로 설명된다.
S230에서, 우도비 계산부(860)는 S220에서 계산된 비트 심볼을 고려하여 우도비(likelihood ratio)를 계산한다. 예를 들면, 우도비 계산부(860)는 비트 심볼과 간섭량을 참조하여 로그 우도비(logarithmic likelihood ratio)를 계산한다. 예를 들면, 우도비 계산부(740)는 변환된 비트 심볼의 제 1 상태(S1, 도 3 참조) 및 제 2 상태(S2, 도 3 참조)에 대한 우도비들을 각각 계산한다. 예시적으로, 우도비 계산부(860)는 저장된 문턱 전압 산포에 대한 정보에 기반하여, 비트 심볼의 제 1 및 제 2 상태들(S1, S2)에 대한 우도비들을 각각 계산한다. 이때, 우도비 계산부(860)는 간섭 메모리 셀들의 간섭량은 고려되지 않은 우도비를 계산한다.
S240에서, ECC(Error Correction Code) 디코더(870)는 S230에서 계산된 우도비에 기반하여, 관찰 메모리 셀에 저장된 논리값을 판별한다. 예를 들면, ECC(Error Correction Code) 디코더(870)는 제 1 상태(S1, 도 3 참조) 및 제 2 상태(S2, 도 3 참조)에 대한 우도비들을 비교하여 최대 우도비에 대응하는 상태를 선택한다. 그리고 ECC(Error Correction Code) 디코더(870)는 읽기 에러를 검출, 정정한다.
S250에서, ECC(Error Correction Code) 디코더(870)는 비트 에러를 정정할 수 있는지 판단한다.
만약, 에러가 정정되면 선택 워드 라인의 연판정 동작 및 ECC(Error Correction Code) 디코딩은 완료된다.
S260은 S250의 ECC(Error Correction Code) 디코딩이 실패한 경우 수행된다. S260에서, 제 2 데이터 버퍼는 i비트 부분 읽기를 통해 선택 워드 라인과 인접한 비선택 워드 라인의 메모리 셀들의 데이터들을 수신한다. S260은 도 10을 참조하여 설명된 S130과 마찬가지로 수행된다. 즉, 수신된 데이터들은 읽기 데이터 심볼을 형성한다.
도 9를 참조하면, 관찰 메모리 셀에 인접한 간섭 메모리 셀들은 관찰 메모리 셀과 워드 라인을 공유할 수 있다. 관찰 메모리 셀에 인접한 간섭 메모리 셀들은 관찰 메모리 셀과 워드 라인을 공유하지 않을 수 있다. 따라서, 페이지 단위로 읽기 동작이 수행되는 낸드 플래시 메모리에서, 관찰 메모리 셀을 읽는 단계(S210)와 관찰 메모리 셀과 워드 라인을 공유하는 간섭 메모리 셀을 읽는 단계는 동시에 수행될 수 있다. 단, 관찰 메모리 셀을 읽는 단계(S210)와, 관찰 메모리 셀의 워드 라인을 공유하지 않는 간접 메모리 셀들을 읽는 단계는 동시에 수행되지 않을 수 있다.
S270에서, 제 2 비트 심볼 컨버터(840)는 간섭 메모리 셀들의 읽기 데이터 심볼들을 비트 심볼로 변환한다.
S280에서, 간섭 계산부(850)는 S220에서 계산된 비트 심볼과 S270에서 계산된 비트 심볼을 비교하여, 관찰 메모리 셀이 간섭 메모리 셀들로부터 받는 간섭량을 계산한다. 도 7 및 도 8을 참조하여 설명된 바와 같이, 간섭 계산부(850)는 간섭 메모리 셀들이 가지는 문턱 전압, 간섭 메모리 셀들의 방향, 및 간섭 메모리 셀들의 거리 등을 고려하여 간섭량을 계산한다.
S290에서, 우도비 계산부(860)는 S220에서 계산된 비트 심볼 및 S280에서 계산된 간섭량을 고려하여 우도비(likelihood ratio)를 다시 계산한다. 예를 들면, 우도비 계산부(860)는 비트 심볼과 간섭량을 참조하여 로그 우도비(logarithmic likelihood ratio)를 계산한다. 예시적으로, 우도비 계산부(860)는 간섭량을 고려한 메모리 셀들의 문턱 전압 산포를 저장하고, 저장된 문턱 전압 산포를 이용하여 우도비를 계산한다. 예시적으로, 우도비 계산부(860)는 저장되어 있는 정보에 기반하여, 비트 심볼의 제 1 및 제 2 상태들(S1, S2, 도 3 참조)에 대한 우도비들을 각각 계산한다.
ECC(Error Correction Code) 디코더(870)는 S290에서 다시 계산된 우도비에 기반하여, 관찰 메모리 셀에 저장된 논리값을 판별한다. 예를 들면, 제 1 상태(S1, 도 3 참조) 및 제 2 상태(S2, 도 3 참조)에 대한 우도비들을 비교하여, 최대 우도비에 대응하는 상태를 선택한다. 그리고, ECC(Error Correction Code) 디코더(870)는 다시 계산된 우도비(likelihood ratio)에 기반하여, 소정의 비트 에러를 검출하고, 정정한다.(S240)
도 12는 도 6의 메모리 시스템(600)의 응용 예를 보여주는 블록도이다.
컨트롤러(1200)는 도 7을 참조하여 설명된 컨트롤러(620)와 같다.
도 12를 참조하면, 메모리 시스템(1000)은 불휘발성 메모리 장치(1100) 및 컨트롤러(1200)를 포함한다. 불휘발성 메모리 장치(1100)는 복수의 불휘발성 메모리 칩들을 포함한다. 복수의 불휘발성 메모리 칩들은 복수의 그룹들로 분할된다. 복수의 불휘발성 메모리 칩들의 각 그룹은 하나의 공통 채널을 통해 컨트롤러(1200)와 통신하도록 구성된다. 도 8에서, 복수의 불휘발성 메모리 칩들은 제 1 내지 제 k 채널들(CH1~CHk)을 통해 컨트롤러(1200)와 통신하는 것으로 도시되어 있다. 각 불휘발성 메모리 칩은 도 1을 참조하여 설명된 불휘발성 메모리 장치(1100)와 같이 구성된다. 그리고, 컨트롤러(1200)는 도 7을 참조하여 설명된 컨트롤러(1200)와 같이 구성된다.
도 13은 도 12를 참조하여 설명된 메모리 시스템(1000)을 포함하는 컴퓨팅 시스템(2000)을 보여주는 블록도이다.
도 13을 참조하면, 컴퓨팅 시스템(2000)은 중앙 처리 장치(2100), 램(2200, RAM, Random Access Memory), 사용자 인터페이스(2300), 전원(2400), 그리고 메모리 시스템(1000)을 포함한다.
메모리 시스템(1000)은 시스템 버스(2500)를 통해, 중앙처리장치(2100), 램(2200), 사용자 인터페이스(2300), 그리고 전원(2400)에 전기적으로 연결된다. 사용자 인터페이스(2300)를 통해 제공되거나, 중앙 처리 장치(2100)에 의해서 처리된 데이터는 메모리 시스템(1000)에 저장된다. 메모리 시스템(1000)은 컨트롤러(1200) 및 불휘발성 메모리 장치(1100)를 포함한다.
도 13에서, 불휘발성 메모리 장치(1100)는 컨트롤러(1200)를 통해 시스템 버스(2500)에 연결되는 것으로 도시되어 있다. 그러나, 불휘발성 메모리 장치(1100)는 시스템 버스(2500)에 직접 연결되도록 구성될 수 있다. 이때, 도 6 및 도 12 을 참조하여 설명된 컨트롤러(620, 1200)의 기능은 중앙처리장치(2500)에 의해 수행된다.
도 13에서, 도 12를 참조하여 설명된 메모리 시스템(1000)이 제공되는 것으로 도시되어 있다. 그러나, 메모리 시스템(1000)은 도 6을 참조하여 설명된 메모리 시스템(600)으로 대체될 수 있다.
예시적으로, 컴퓨팅 시스템(2000)은 도 6 및 도 12를 참조하여 설명된 메모리 시스템들(600, 1000)을 모두 포함하도록 구성될 수 있다.
관찰 메모리 셀이 간섭 메모리 셀들로부터 받는 간섭량은 각각의 메모리 셀마다 차이가 있다. 본 발명의 실시 예에 따르면, 각각의 메모리 셀들과 대응되는 문턱 전압 산포가 개별적으로 고려된다. 개별적으로 고려된 문턱 전압 산포를 이용하여, 정확한 우도비(likelihood ratio)가 계산된다. 따라서, 오류 정정 기능이 향상된다. 결과적으로, 메모리 셀에 저장된 데이터의 신뢰도가 향상된다.
한편, 본 발명의 범위 또는 기술적 사상을 벗어나지 않고 본 발명의 구조가 다양하게 수정되거나 변경될 수 있음은 이 분야에 숙련된 자들에게 자명하다. 상술한 내용을 고려하여 볼 때, 만약 본 발명의 수정 및 변경이 아래의 청구항들 및 동등물의 범주 내에 속한다면, 본 발명이 이 발명의 변경 및 수정을 포함하는 것으로 여겨진다.
200:불휘발성 메모리 장치
210:메모리 셀 어레이
220:어드레스 디코더
230:읽기 및 쓰기 회로
240:데이터 입출력 회로
250:제어 로직
260:부분 읽기 제어부
VA1~VA8:제 1 내지 제 8 전압 영역들.
Vr1~Vr7:제 1 내지 제 7 읽기 전압들.
610:불휘발성 메모리 장치
620:컨트롤러
630:연판정 로직
710:데이터 버퍼부
720:비트 심볼 컨버터
810:제 1 데이터 버퍼부
820:제 2 데이터 버퍼부
830:제 1 비트 심볼 컨버터
840:제 2 비트 심볼 컨버터
730,850:간섭 계산부
740,860:우도비 계산부
750,870:ECC 디코더

Claims (10)

  1. 불휘발성 메모리 장치를 포함하는 메모리 시스템이 동작하는 방법에 있어서,
    읽기 전압을 달리하여 관찰 메모리 셀을 적어도 1번 읽어 제 1 읽기 데이터 심볼을 형성하는 단계;
    읽기 전압을 달리하여 상기 관찰 메모리 셀에 인접한 간섭 메모리 셀들을 적어도 1번 읽어 제 2 읽기 데이터 심볼들을 형성하는 단계; 및
    상기 제 1 읽기 데이터 심볼과 상기 제 2 읽기 데이터 심볼들에 기반하여, 상기 관찰 메모리 셀의 논리값을 판별하는 단계를 포함하는 메모리 시스템의 동작 방법.
  2. 제 1항에 있어서,
    상기 제 1 읽기 데이터 심볼과 상기 제 2 읽기 데이터 심볼들에 기반하여, 상기 관찰 메모리 셀의 논리값을 판별하는 단계는
    상기 제 1 읽기 데이터 심볼을 제 1 비트 심볼로 변환하는 단계;
    상기 제 2 읽기 데이터 심볼들을 제 2 비트 심볼들로 변환하는 단계; 및
    상기 제 1 비트 심볼과 상기 제 2 비트 심볼들을 비교하여, 상기 관찰 메모리 셀의 논리값을 판별하는 단계를 포함하는 메모리 시스템의 동작 방법.
  3. 제 2항에 있어서,
    상기 제 1 비트 심볼과 상기 제 2 비트 심볼들을 비교하여, 상기 관찰 메모리 셀의 논리값을 판별하는 단계는
    상기 제 1 비트 심볼과 상기 제 2 비트 심볼들을 비교하여, 상기 관찰 메모리 셀이 받는 간섭량을 계산하는 단계; 및
    상기 제 1 비트 심볼과 상기 계산된 간섭량을 참조하여 상기 관찰 메모리 셀의 논리값을 판별하는 단계를 포함하는 메모리 시스템의 동작 방법.
  4. 제 3항에 있어서,
    상기 제 1 비트 심볼과 상기 계산된 간섭량을 참조하여 상기 관찰 메모리 셀의 논리값을 판별하는 단계는
    상기 제 1 비트 심볼과 상기 계산된 간섭량을 참조하여 우도비를 계산하는 단계; 및
    상기 계산된 우도비를 이용하여 상기 관찰 메모리 셀의 논리값을 판별하는 단계를 포함하는 메모리 시스템의 동작 방법.
  5. 제 1항에 있어서,
    상기 제 2 읽기 데이터 심볼들을 형성하는 단계는
    상기 관찰 메모리 셀과 워드 라인을 공유하는 간섭 메모리 셀들을 읽기 전압을 달리하여 적어도 1번 읽어, 상기 간접 메모리 셀들의 상기 제 2 읽기 데이터 심볼들을 형성하는 단계를 포함하는 메모리 시스템의 동작 방법.
  6. 제 5항에 있어서,
    상기 제 1 읽기 데이터 심볼을 형성하는 단계와 상기 제 2 읽기 데이터 심볼들을 형성하는 단계는 함께 수행되는 메모리 시스템의 동작 방법.
  7. 제 1항에 있어서,
    상기 제 2 읽기 데이터 심볼들을 형성하는 단계는
    상기 관찰 메모리 셀의 워드 라인에 인접한 비선택 워드 라인을 공유하는 간섭 메모리 셀들을 읽기 전압을 달리하여 적어도 1번 읽어, 상기 간섭 메모리 셀들의 상기 제 2 읽기 데이터 심볼들을 형성하는 단계를 포함하는 메모리 시스템의 동작 방법.
  8. 관찰 메모리 셀과 상기 관찰 메모리 셀에 인접한 간섭 메모리 셀들을 포함하는 불휘발성 메모리 장치; 및
    상기 불휘발성 메모리 장치를 제어하도록 구성되는 컨트롤러를 포함하고,
    상기 불휘발성 메모리 장치는
    읽기 전압을 달리하여 적어도 1번 상기 관찰 메모리 셀 및 상기 간섭 메모리 셀들을 읽도록 구성되는 읽기 및 쓰기 회로를 포함하고,
    상기 컨트롤러는
    상기 읽어진 관찰 메모리 셀의 데이터들로 형성된 제 1 읽기 데이터 심볼을 저장하는 제 1 데이터 버퍼부;
    상기 읽어진 각각의 간섭 메모리 셀들의 데이터들로 형성된 제 2 읽기 데이터 심볼들을 저장하는 제 2 데이터 버퍼부; 및
    상기 제 1 읽기 데이터 심볼과 상기 제 2 읽기 데이터 심볼들에 기반하여, 상기 관찰 메모리 셀의 논리값을 판별하는 판정부를 포함하는 메모리 시스템.
  9. 관찰 메모리 셀과 상기 관찰 메모리 셀에 인접한 간섭 메모리 셀들을 포함하는 불휘발성 메모리 장치; 및
    상기 불휘발성 메모리 장치를 제어하도록 구성되는 컨트롤러를 포함하고,
    상기 불휘발성 메모리 장치는
    읽기 전압을 달리하여 적어도 1번 관찰 메모리 셀 또는 간섭 메모리 셀들을 읽도록 구성되는 읽기 및 쓰기 회로;
    상기 읽어진 관찰 메모리 셀의 데이터들로 형성된 제 1 읽기 데이터 심볼을 저장하는 제 1 데이터 버퍼부;
    상기 읽어진 각각의 간섭 메모리 셀들의 데이터들로 형성된 제 2 읽기 데이터 심볼들을 저장하는 제 2 데이터 버퍼부; 및
    상기 컨트롤러는
    상기 제 1 읽기 데이터 심볼과 상기 제 2 읽기 데이터 심볼들에 기반하여, 상기 관찰 메모리 셀의 논리값을 판별하는 판정부를 포함하는 메모리 시스템.
  10. 제 9 항에 있어서,
    상기 불휘발성 메모리 장치 및 상기 컨트롤러는 메모리 카드를 형성하는 메모리 시스템.
KR1020100018660A 2010-03-02 2010-03-02 메모리 시스템 및 그것의 동작 방법 KR101710663B1 (ko)

Priority Applications (4)

Application Number Priority Date Filing Date Title
KR1020100018660A KR101710663B1 (ko) 2010-03-02 2010-03-02 메모리 시스템 및 그것의 동작 방법
US13/016,063 US8587997B2 (en) 2010-03-02 2011-01-28 Memory system to determine interference of a memory cell by adjacent memory cells, and operating method thereof
US14/068,143 US20140056064A1 (en) 2010-03-02 2013-10-31 Memory system and operating method thereof
US14/196,366 US9595341B2 (en) 2010-03-02 2014-03-04 Memory system to determine interference of a memory cell by adjacent memory cells, and operating method thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020100018660A KR101710663B1 (ko) 2010-03-02 2010-03-02 메모리 시스템 및 그것의 동작 방법

Publications (2)

Publication Number Publication Date
KR20110099566A true KR20110099566A (ko) 2011-09-08
KR101710663B1 KR101710663B1 (ko) 2017-02-28

Family

ID=44531234

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020100018660A KR101710663B1 (ko) 2010-03-02 2010-03-02 메모리 시스템 및 그것의 동작 방법

Country Status (2)

Country Link
US (2) US8587997B2 (ko)
KR (1) KR101710663B1 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20150040615A (ko) * 2013-10-07 2015-04-15 에스케이하이닉스 주식회사 메모리 시스템 및 이의 동작 방법
KR20180018069A (ko) * 2016-08-12 2018-02-21 에스케이하이닉스 주식회사 메모리 컨트롤러, 반도체 메모리 시스템 및 그것의 동작 방법

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9595341B2 (en) * 2010-03-02 2017-03-14 Samsung Electronics Co., Ltd. Memory system to determine interference of a memory cell by adjacent memory cells, and operating method thereof
US8693257B2 (en) 2011-10-18 2014-04-08 Seagate Technology Llc Determining optimal read reference and programming voltages for non-volatile memory using mutual information
US8737133B2 (en) 2011-10-18 2014-05-27 Seagate Technology Llc Shifting cell voltage based on grouping of solid-state, non-volatile memory cells
US8760932B2 (en) 2011-10-18 2014-06-24 Seagate Technology Llc Determination of memory read reference and programming voltages
US8711619B2 (en) 2011-10-18 2014-04-29 Seagate Technology Llc Categorizing bit errors of solid-state, non-volatile memory
CN103811077B (zh) * 2012-11-12 2017-03-29 光宝电子(广州)有限公司 闪存中的资料补偿方法
CN103811074B (zh) * 2012-11-15 2017-05-03 光宝电子(广州)有限公司 闪存的储存状态决定方法及其相关系统
US9171620B2 (en) * 2012-11-29 2015-10-27 Sandisk Technologies Inc. Weighted read scrub for nonvolatile memory
US9135109B2 (en) 2013-03-11 2015-09-15 Seagate Technology Llc Determination of optimum threshold voltage to read data values in memory cells
US8924824B1 (en) 2013-03-12 2014-12-30 Western Digital Technologies, Inc. Soft-decision input generation for data storage systems
KR102081415B1 (ko) 2013-03-15 2020-02-25 삼성전자주식회사 비휘발성 메모리 장치의 llr 최적화 방법 및 비휘발성 메모리 장치의 에러 정정 방법
CN104112477B (zh) * 2013-04-19 2017-07-07 光宝科技股份有限公司 用于固态储存装置中晶体单元的群组区分方法
US9690697B2 (en) * 2014-07-10 2017-06-27 Kabushiki Kaisha Toshiba Memory controller, storage device and memory control method
US10157093B2 (en) 2015-05-27 2018-12-18 Nxp Usa, Inc. Data integrity check within a data processing system
KR102369307B1 (ko) * 2015-12-02 2022-03-03 에스케이하이닉스 주식회사 데이터 저장 장치 및 그것의 동작 방법
US10468112B1 (en) * 2018-08-10 2019-11-05 Micron Technology, Inc. Disturb-optimized codeword layout

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20040091583A (ko) * 2003-04-22 2004-10-28 가부시끼가이샤 도시바 불휘발성 반도체 기억 장치 및 이것을 이용한 전자 장치
US20080158973A1 (en) * 2006-12-28 2008-07-03 Man Lung Mui Complete word line look ahead with efficient data latch assignment in non-volatile memory read operations
US7453723B2 (en) * 2006-03-01 2008-11-18 Micron Technology, Inc. Memory with weighted multi-page read
US20090067276A1 (en) * 2007-09-11 2009-03-12 Micron Technology, Inc. Storing Operational Information in an Array of Memory Cells

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5657332A (en) * 1992-05-20 1997-08-12 Sandisk Corporation Soft errors handling in EEPROM devices
US5867429A (en) * 1997-11-19 1999-02-02 Sandisk Corporation High density non-volatile flash memory without adverse effects of electric field coupling between adjacent floating gates
US7196928B2 (en) 2005-04-05 2007-03-27 Sandisk Corporation Compensating for coupling during read operations of non-volatile memory
WO2008026203A2 (en) * 2006-08-27 2008-03-06 Anobit Technologies Estimation of non-linear distortion in memory devices
JP5177991B2 (ja) 2006-10-25 2013-04-10 株式会社東芝 不揮発性半導体記憶装置
WO2008053472A2 (en) * 2006-10-30 2008-05-08 Anobit Technologies Ltd. Reading memory cells using multiple thresholds
US7898863B2 (en) * 2007-08-01 2011-03-01 Micron Technology, Inc. Method, apparatus, and system for improved read operation in memory
KR20080052288A (ko) 2007-08-09 2008-06-11 삼성전자주식회사 연접 부호화를 이용한 멀티 레벨 셀 메모리 장치
US8031526B1 (en) * 2007-08-23 2011-10-04 Marvell International Ltd. Write pre-compensation for nonvolatile memory
WO2010002945A1 (en) * 2008-07-01 2010-01-07 Lsi Corporation Methods and apparatus for intercell interference mitigation using modulation coding
KR101468149B1 (ko) * 2008-09-19 2014-12-03 삼성전자주식회사 플래시 메모리 장치 및 시스템들 그리고 그것의 읽기 방법
US8429498B1 (en) * 2009-03-25 2013-04-23 Apple Inc. Dual ECC decoder
US7990767B2 (en) * 2009-12-30 2011-08-02 Sandisk Il Ltd. Flash memory system having cross-coupling compensation during read operation

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20040091583A (ko) * 2003-04-22 2004-10-28 가부시끼가이샤 도시바 불휘발성 반도체 기억 장치 및 이것을 이용한 전자 장치
US7453723B2 (en) * 2006-03-01 2008-11-18 Micron Technology, Inc. Memory with weighted multi-page read
US20080158973A1 (en) * 2006-12-28 2008-07-03 Man Lung Mui Complete word line look ahead with efficient data latch assignment in non-volatile memory read operations
US20090067276A1 (en) * 2007-09-11 2009-03-12 Micron Technology, Inc. Storing Operational Information in an Array of Memory Cells

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20150040615A (ko) * 2013-10-07 2015-04-15 에스케이하이닉스 주식회사 메모리 시스템 및 이의 동작 방법
US9256494B2 (en) 2013-10-07 2016-02-09 SK Hynix Inc. Memory system and operating method thereof
KR20180018069A (ko) * 2016-08-12 2018-02-21 에스케이하이닉스 주식회사 메모리 컨트롤러, 반도체 메모리 시스템 및 그것의 동작 방법

Also Published As

Publication number Publication date
US8587997B2 (en) 2013-11-19
KR101710663B1 (ko) 2017-02-28
US20110216598A1 (en) 2011-09-08
US20140056064A1 (en) 2014-02-27

Similar Documents

Publication Publication Date Title
KR101710663B1 (ko) 메모리 시스템 및 그것의 동작 방법
US8255643B2 (en) Memory system and data processing method thereof
US8203881B2 (en) Nonvolatile memory device, method of operating nonvolatile memory device and memory system including nonvolatile memory device
JP6202972B2 (ja) メモリシステム及びそれの読み出し校正方法
KR102025193B1 (ko) 메모리 컨트롤러 및 그것의 동작 방법, 메모리 컨트롤러를 포함하는 메모리 시스템
US8386860B2 (en) Methods of calculating compensation voltage and adjusting threshold voltage and memory apparatus and controller
KR101414494B1 (ko) 메모리 장치 및 메모리 데이터 읽기 방법
US8184480B2 (en) Multi-level nonvolatile memory device with reduced number of read voltages based on a cell address and method for operating the same
US20140337688A1 (en) Switchable on-die memory error correcting engine
US20100238705A1 (en) Nonvolatile memory device and method system including the same
US8432735B2 (en) Memory system and related method of programming
KR101678404B1 (ko) 사전 확률 정보를 사용하는 메모리 시스템 및 그것의 데이터 처리 방법
KR20110092091A (ko) 플래시 메모리 장치 및 그것의 읽기 방법
KR101923157B1 (ko) 메모리 시스템 및 그것의 프로그램 방법
US9342447B2 (en) Data storage system and method of operating data storage system
CN106250054B (zh) 包括多个存储器区域的存储器系统和操作该存储器系统的方法
KR20100124087A (ko) 메모리 컨트롤러, 그것을 포함하는 메모리 시스템 그리고 그것의 동작 방법
CN106920575B (zh) 数据存储装置及其操作方法
US11295824B2 (en) Memory controller and storage device including the same
KR20150072517A (ko) 불휘발성 메모리 장치 및 그것을 포함한 메모리 시스템
KR101601849B1 (ko) 불휘발성 메모리 장치, 그것의 읽기 방법, 그리고 그것을 포함하는 메모리 시스템
US9460782B2 (en) Method of operating memory controller and devices including memory controller
KR20100109223A (ko) 불휘발성 메모리 장치, 그것을 포함하는 메모리 시스템, 그리고 그것의 동작 방법
US9595341B2 (en) Memory system to determine interference of a memory cell by adjacent memory cells, and operating method thereof
KR20100120991A (ko) 이레이저 조작을 수행하는 메모리 시스템 및 그것의 읽기 방법

Legal Events

Date Code Title Description
A201 Request for examination
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
FPAY Annual fee payment

Payment date: 20200131

Year of fee payment: 4