KR20130077401A - 반도체 메모리 장치 및 그 구동 방법 - Google Patents

반도체 메모리 장치 및 그 구동 방법 Download PDF

Info

Publication number
KR20130077401A
KR20130077401A KR1020110146089A KR20110146089A KR20130077401A KR 20130077401 A KR20130077401 A KR 20130077401A KR 1020110146089 A KR1020110146089 A KR 1020110146089A KR 20110146089 A KR20110146089 A KR 20110146089A KR 20130077401 A KR20130077401 A KR 20130077401A
Authority
KR
South Korea
Prior art keywords
data
data distribution
location information
memory device
voltage
Prior art date
Application number
KR1020110146089A
Other languages
English (en)
Inventor
노준례
최석환
Original Assignee
에스케이하이닉스 주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 에스케이하이닉스 주식회사 filed Critical 에스케이하이닉스 주식회사
Priority to KR1020110146089A priority Critical patent/KR20130077401A/ko
Priority to US13/591,941 priority patent/US8953375B2/en
Publication of KR20130077401A publication Critical patent/KR20130077401A/ko

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • 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/06Auxiliary circuits, e.g. for writing into memory
    • 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/3436Arrangements for verifying correct programming or erasure
    • G11C16/3454Arrangements for verifying correct programming or for detecting overprogrammed cells
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C29/08Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
    • G11C29/12Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
    • G11C29/38Response verification devices
    • G11C29/42Response verification devices using error correcting codes [ECC] or parity check

Abstract

판단 전압을 이용하여 다수의 데이터 분포를 구분하는 반도체 메모리 장치에 관한 것으로, 중첩된 데이터 분포에 포함되는 데이터의 위치를 판단 전압을 기준으로 변환하여 다수의 위치 정보 코드로 생성하기 위한 정보 생성부, 및 상기 다수의 위치 정보 코드를 순차적으로 입력받아 에러 수정 동작을 수행하기 위한 에러 수정부를 구비하는 반도체 메모리 장치가 제공된다.

Description

반도체 메모리 장치 및 그 구동 방법{SEMICONDUCTOR MEMORY DEVICE AND OPERATING METHOD THEREOF}
본 발명은 반도체 설계 기술에 관한 것으로, 보다 구체적으로는 판단 전압을 이용하여 다수의 데이터 분포를 구분하는 반도체 메모리 장치에 관한 것이다.
일반적으로 반도체 메모리 장치는 DRAM(Dynamic Random Access Memory), SRAM(Static Random Access Memory) 등과 같은 휘발성 메모리 장치(volatile memory device)와 PROM(Programmable Read Only Memory), EPROM(Erasable PROM), EEPROM(Electrically EPROM), 플래시 메모리 장치(flash memory device) 등과 같은 비휘발성 메모리 장치(nonvolatile memory device)로 구분된다. 휘발성 메모리 장치와 비휘발성 메모리 장치를 구분하는 가장 큰 특징은 일정 시간 이후 메모리 셀에 저장된 데이터의 보존 여부이다.
다시 말하면, 휘발성 메모리 장치는 일정 시간 이후 메모리 셀에 저장된 데이터가 보존되지 않지만, 비휘발성 메모리 장치는 일정 시간 이후 메모리 셀에 저장된 데이터가 보존된다. 따라서, 휘발성 메모리 장치의 경우 데이터를 보존하기 위하여 리플레쉬 동작이 필수로 이루어져야 하며, 비휘발성 메모리 장치의 경우 이러한 리플레쉬 동작이 필요 없다. 비휘발성 메모리 장치의 이러한 특징은 저전력화 및 고집적화에 적합하기 때문에 요즈음 휴대용 장치의 저장 매체로 널리 사용되고 있다.
한편, 비휘발성 메모리 장치 중 플래시 메모리 장치는 프로그래밍 동작(programming operation)과 소거 동작(erasing operation)을 통해 메모리 셀에 데이터를 저장한다. 여기서, 프로그램 동작은 메모리 셀을 구성하는 트랜지스터의 플로팅 게이트(floating gate)에 전자를 축적하기 위한 동작을 의미하며, 소거 동작은 트랜지스터의 플로팅 게이트에 축적된 전자를 기판으로 방출하기 위한 동작을 의미한다. 플래시 메모리 장치는 이러한 동작을 통해 메모리 셀에 '0' 또는 '1' 의 데이터를 저장하고, 리드 동작시 플로팅 게이트에 축적된 전자의 양을 감지하여 그 결과에 따라 메모리 셀에 저장된 데이터가 '0' 데이터 인지 '1' 데이터 인지를 판단한다.
이어서, 위에서 설명하였듯이 하나의 메모리 셀에는 '0' 또는 '1' 의 데이터가 저장된다. 즉, 하나의 메모리 셀에는 하나의 비트 데이터가 저장되며 이 메모리 셀을 싱글 레벨 셀(single level cell)이라 한다. 요즘에는 하나의 메모리 셀에 하나 이상의 비트 데이터를 저장하는 방식이 채택되고 있으며, 이 메모리 셀을 멀티 레벨 셀(multi level cell)이라 한다. 싱글 레벨 셀의 경우 메모리 셀에 저장된 '0', '1' 의 데이터를 판단하기 위하여 하나의 판단 전압인 싱글 문턱 전압(single threshold voltage)이 필요하며, 멀티 레벨 셀의 경우 메모리 셀에 저장된 예컨대, '00', '01', '10', '11' 의 데이터를 판단하기 위하여 적어도 3 개의 판단하기 위하여 적어도 3 개의 판단 전압이 필요하다.
한편, 플래시 메모리 장치에 저장되는 데이터는 해당 데이터 값에 따라 예정된 데이터 분포를 가지게 된다. 하지만, 이러한 데이터 분포는 인접한 데이터 분포와 중첩될 수 있으며, 이로 인하여 읽기 동작시 판단 전압에 의하여 출력되는 데이터와 실질적으로 저장되어 있는 데이터가 서로 다른 경우가 발생한다.. 따라서, 플래시 메모리 장치는 이를 보완하기 위한 방법이 제공되고 있으며, 이중 하나가 에러 수정 코드(Error Correction Code : ECC)의 이용이다. 에러 수정 코드는 데이터와 함께 입력되는 추가적인 코드로써, 플래시 메모리 장치는 에러 수정 코드를 이용한 에러 수정 동작을 통해 잘못 판단된 데이터에 대한 검출 동작 및 수정 동작을 수행한다.
요즈음 기술 발달에 따라 각각의 데이터 분포가 점점 좁아지고 있으나, 저전력 소모에 따른 동작에 의하여 서로 인접한 데이터 분포의 간격 역시 좁아지고 있다. 데이터 분포의 간격이 좁아진다는 것은 인접한 데이터 분포와 중첩되는 부분이 많다는 것을 의미하며, 이는 데이터 출력시 에러가 발생할 확률이 보다 크다는 것을 의미한다. 에러 수정 동작을 통해 수정될 수 있는 데이터의 개수는 한정되어 있는 상황에서 에러 수정 코드를 효율적으로 이용할 수 있는 대책이 절실하다.
본 발명의 실시예는 예정된 데이터 분포 내에 위치한 데이터의 위치를 다수의 위치 정보 코드로 변환하고 이를 이용하여 에러 수정 동작을 수행하는 반도체 메모리 장치를 제공한다.
본 발명의 실시예에 따른 반도체 메모리 장치는, 중첩된 데이터 분포에 포함되는 데이터의 위치를 판단 전압을 기준으로 변환하여 다수의 위치 정보 코드로 생성하기 위한 정보 생성부; 및 상기 다수의 위치 정보 코드를 순차적으로 입력받아 에러 수정 동작을 수행하기 위한 에러 수정부를 구비할 수 있다.
본 발명의 다른 실시예에 따른 반도체 메모리 장치 시스템은, 중첩된 데이터 분포에 포함되는 데이터의 위치를 판단 전압에 따라 다수의 위치 정보 코드로 변환하고, 상기 다수이 위치 정보 코드를 읽기 명령에 응답하여 순차적으로 출력하기 위한 메모리부; 상기 다수의 위치 정보 코드에 대한 에러 보정 동작을 수행하는 에러 수정부; 및 상기 에러 수정부의 출력 신호에 응답하여 상기 읽기 명령을 생성하기 위한 제어부를 구비할 수 있다.
본 발명의 또 다른 실시예에 따른 반도체 메모리 장치의 동작 방법은, 중첩된 데이터 분포 사이의 다수의 판단 전압을 설정하는 단계; 상기 다수의 판단 전압을 기준으로 데이터의 위치를 다수의 위치 정보 코드로 변환하는 단계; 읽기 명령에 응답하여 상기 다수의 위치 정보 코드 중 어느 하나의 위치 정보 코드에 대한 에러 수정 동작을 수행하는 단계; 및 상기 에러 수정 동작을 수행하는 단계의 출력 신호에 응답하여 상기 데이터의 불량 여부를 검출하는 단계를 포함할 수 있다.
본 발명의 또 다른 실시예에 따른 반도체 메모리 장치의 동작 방법은, 반도체 메모리 장치의 동작 방법은, 중첩된 데이터 분포를 제1 내지 제3 판단 전압으로 오버 샘플링하는 반도체 메모리 장치의 동작 방법에 있어서, 상기 제2 판단 전압을 기준으로 일측 데이터 분포와 다른측 데이터 분포에 데이터 값을 설정하여 제1 위치 정보 코드를 생성하는 단계; 상기 제1 판단 전압과 상기 제3 판단 전압 사이의 데이터 분포와 이외의 데이터 분포에 데이터 값을 설정하여 제2 위치 정보 코드를 생성하는 단계; 및 상기 제1 및 제2 위치 정보 코드를 순차적으로 입력받아 에러 수정 동작을 수행하는 단계를 포함할 수 있다.
본 발명의 또 다른 실시예에 따른 반도체 메모리 장치의 동작 방법은, 반도체 메모리 장치의 동작 방법은, 중첩된 데이터 분포를 제1 내지 제7 판단 전압으로 오버 샘플링하는 반도체 메모리 장치의 동작 방법에 있어서, 상기 제4 판단 전압을 기준으로 데이터 값을 설정하여 제1 위치 정보 코드를 생성하는 단계; 상기 제2 판단 전압과 상기 제6 판단 전압 사이의 데이터 분포와 이외의 데이터 분포에 데이터 값을 설정하여 제2 위치 정보 코드를 생성하는 단계; 상기 제3 판단 전압과 상기 제5 판단 전압 사이의 데이터 분포와 이외의 데이터 분포에 제1 데이터 값을 설정하고, 상기 제1 판단 전압과 상기 제7 판단 전압 사이의 데이터 분포와 이외의 데이터 분포에 제2 데이터 값을 설정하고, 상기 제1 및 제2 데이터 값에 예정된 함수를 반영하여 제3 위치 정보 코드를 생성하는 단계; 및 상기 제1 내지 제3 위치 정보 코드를 순차적으로 입력받아 에러 수정 동작을 수행하는 단계를 포함할 수 있다.
본 발명의 또 다른 실시예에 따른 반도체 메모리 장치의 동작 방법은, 중첩된 제1 및 제2 데이터 분포를 제1 내지 제7 판단 전압으로 오버 샘플링하고, 중첩된 제3 및 제4 데이터 분포를 제8 내지 제14 판단 전압으로 오버 샘플링하는 반도체 메모리 장치의 동작 방법에 있어서, 상기 제4 판단 전압과 상기 제11 판단 전압 사이의 데이터 분포와 이외의 데이터 분포에 데이터 값을 설정하여 제1 위치 정보 코드를 생성하는 단계; 상기 제6 판단 전압과 상기 제9 판단 전압 사이의 데이터 분포와 이외의 데이터 분포에 제1 데이터 값을 설정하고, 상기 제2 판단 전압과 상기 제13 판단 전압 사이의 데이터 분포와 이외의 데이터 분포에 제2 데이터 값을 설정하고, 상기 제1 및 제2 데이터 값에 예정된 함수를 반영하여 제2 위치 정보 코드를 생성하는 단계; 상기 제7 판단 전압과 상기 제8 판단 전압 사이의 데이터 분포와 이외의 데이터 분포에 제3 데이터 값을 설정하고, 상기 제5 판단 전압과 상기 제10 판단 전압 사이의 데이터 분포와 이외의 데이터 분포에 제4 데이터 값을 설정하고, 상기 제3 판단 전압과 상기 제12 판단 전압 사이의 데이터 분포와 이외의 데이터 분포에 제5 데이터 값을 설정하고, 상기 제1 판단 전압과 상기 제14 판단 전압 사이의 데이터 분포와 이외의 데이터 분포에 제6 데이터 값을 설정하고, 상기 제3 내지 제6 데이터 값에 예정된 함수를 반영하여 제3 위치 정보 코드를 생성하는 단계; 및 상기 제1 내지 제3 위치 정보 코드를 순차적으로 입력받아 에러 수정 동작을 수행하는 단계를 포함할 수 있다.
본 발명의 실시예는 예정된 데이터 분포 내에 위치한 데이터의 위치를 다수의 위치 정보 코드로 변환하고 이를 이용하여 에러 수정 동작을 수행함으로써, 에러 수정 동작 효율을 극대화하는 것이 가능하다.
에러 수정 동작 효율을 극대화시켜 줌으로써, 반도체 메모리 장치의 전반적인 읽기 동작을 보다 빠르게 수행할 수 있는 효과를 얻을 수 있다.
도 1 은 본 발명의 실시예에 따른 데이터 분포와 판단 전압을 설명하기 위한 도면이다.
도 2 은 본 발명의 실시예에 따른 데이터 분포와 판단 전압을 설명하기 위한 도면으로써, 최상위 비트(MSB)에 대응하는 도면이다.
도 3 은 본 발명의 실시예에 따른 반도체 메모리 장치의 회로 동작을 설명하기 위한 동작 흐름도이다.
도 4 는 본 발명의 실시예에 따른 반도체 메모리 장치 시스템을 설명하기 위한 블록도이다.
이하, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 본 발명의 기술적 사상을 용이하게 실시할 수 있을 정도로 상세히 설명하기 위하여, 본 발명의 가장 바람직한 실시예를 첨부 도면을 참조하여 설명하기로 한다.
도 1 은 본 발명의 실시예에 따른 데이터 분포와 판단 전압을 설명하기 위한 도면으로써, 최하위 비트(LSB)에 대응하는 도면이다.
도 1 에는 '11' 데이터 분포와 '01' 데이터 분포와 '00' 데이터 분포와 '10' 데이터 분포가 개시되어 있으며, 최하위 비트(LSB)를 구분하기 위하여 '01' 데이터 분포와 '00' 데이터 분포가 중첩된 데이터 분포를 오버 샘플링(over sampling)한다. 즉, '01' 데이터 분포와 '00' 데이터 분포가 중첩된 부분을 제1 내지 제7 LSB 판단 전압(VR21, VR22, ... , VR27)으로 나누어 샘플링하여 센싱하고, 이를 [표 1] 과 같이 예컨대, 3 비트로 인코딩한다.
VR21 VR22 VR23 VR23 VR25 VR26 VR27
INF_LB
<1>

1

1

1

1

0

0

0

0
INF_LB
<2>

1

1

0

0

0

0

1

1
INF_LB
<3>

1

0

0

1

1

0

0

1
이렇게 생성된 각각의 코드 값은 해당 데이터의 위치를 판단하기 위한 정보가 된다.
이하, [표 2] 내지 [표 4]를 통해 제1 LSB 위치 정보 코드(INF_LB<1>)와, 제2 LSB 위치 정보 코드(INF_LB<2>), 및 제3 LSB 위치 정보 코드(INF_LB<3>) 각각을 생성하기 하는 방법을 알아보기로 한다.
우선, 제1 LSB 위치 정보 코드(INF_LB<1>)는 제4 LSB 판단 전압(VR24)을 기준으로 해당 데이터 분포를 센싱한다. 아래 [표 2]에서 볼 수 있듯이, 제4 LSB 판단 전압(VR24)을 기준으로 해당 데이터가 왼쪽에 분포(도 1 참조)하는 경우에는 제1 LSB 위치 정보 코드(INF_LB<1>)가 '1' 값을 갖게 되고, 오른쪽에 분포(도 1 참조)하는 경우에는 제1 LSB 위치 정보 코드(INF_LB<1>)가 '0' 값을 갖게 된다.
VR24
INF_LB
<1>

1

1

1

1

0

0

0

0
다음으로, 제2 LSB 위치 정보 코드(INF_LB<2>)는 제2 및 제6 LSB 판단 전압(VR22, VR26)을 기준으로 해당 데이터 분포를 센싱한다. 아래 [표 3]에서 볼 수 있듯이, 제2 LSB 판단 전압(VR22)과 제6 LSB 판단 전압(VR26)을 기준으로 해당 데이터가 제2 LSB 판단 전압(VR22)과 제6 LSB 판단 전압(VR26) 사이에 분포하는 경우에는 제2 LSB 위치 정보 코드(INF_LB<2>)가 '0' 값을 갖게 되고, 그 외에 분포하는 경우에는 '1' 값을 갖게 된다.
V22 V26
INF_LB
<2>

1

1

0

0

0

0

1

1
마지막으로, 제3 LSB 위치 정보 코드(INF_LB<3>)는 제1, 제3, 제5, 제7 LSB 판단 전압(VR21, VR23, VR25, VR27)을 기준으로 해당 데이터 분포를 센싱한다. 아래 [표 4]에서 볼 수 있듯이, 제3 LSB 위치 정보 코드(INF_LB<3>)는 세 가지 동작을 거쳐 생성된다. 우선, 제3 LSB 판단 전압(VR23)과 제5 LSB 판단 전압(VR25)을 기준으로 해당 데이터가 제3 LSB 판단 전압(VR23)과 제5 LSB 판단 전압(VR25) 사이에 분포하는 경우에는 'VR23/VR25'가 '0' 값을 갖게 되고, 그외에 분포하는 경우에는 '1' 값을 갖게 된다. 그리고, 제1 LSB 판단 전압(VR21)과 제7 LSB 판단 전압(VR27)을 기준으로 해당 데이터가 제1 LSB 판단 전압(VR21)과 제7 LSB 판단 전압(VR27) 사이에 분포하는 경우에는 'VR21/VR27'이 '0' 값을 갖게 되고, 그외에 분포하는 경우에는 '1' 값을 갖게 된다.
이어서, 제3 LSB 위치 정보 코드(INF_LB<3>)는 'VR23/VR25' 값과 'VR21/VR27' 값에 오드 패리티(odd parity) 기법을 이용하여 설정한다.
V21 V23 V25 V27
VR23
/
VR25

1

1

1

0

0

1

1

1
VR21/
VR27

1

0

0

0

0

0

0

1
INF_LB<3>
1

0

0

1

1

0

0

1
이렇게 설정된 제1 내지 제3 LSB 위치 정보 코드(INF_LB<1:3>)는 해당 데이터가 데이터 분포의 어디에 위치하는지에 대한 정보에 대응한다. 본 발명의 실시예에 따른 반도체 메모리 장치는 이렇게 생성된 제1 내지 제3 위치 정보 코드(INF_LB<1:3>)를 에러 수정 동작을 위한 회로로 순차적으로 전달한다.
도 2 은 본 발명의 실시예에 따른 데이터 분포와 판단 전압을 설명하기 위한 도면으로써, 최상위 비트(MSB)에 대응하는 도면이다.
도 2 에는 '11' 데이터 분포와 '01' 데이터 분포와 '00' 데이터 분포와 '10' 데이터 분포가 개시되어 있으며, 최상위 비트(MSB)를 구분하기 위하여, '11' 데이터 분포와 '01' 데이터 분포가 중첩되는 부분과 '00' 데이터 분포와 '10' 데이터 분포가 중첩되는 부분을 오버 샘플링한다. 즉, '11' 데이터 분포와 '01' 데이터 분포가 중첩되는 부분을 제1 내지 제7 MSB 판단 전압(VR11, VR12, ... , VR17)으로 나누어 샘플링하여 센싱하고, '00' 데이터 분포와 '10' 데이터 분포가 중첩되는 분분을 제8 내지 제14 MSB 판단 전압(VR31, VR32, ... , VR37)으로 나누어 샘플링하여 센싱한다. 그리고, 이렇게 센싱된 값을 예컨대, 3비트로 인코딩한다. 이렇게 생성된 각각의 코드 값은 마찬가지로 해당 데이터의 위치를 판단하기 위한 정보가 된다.
이하, [표 5] 내지 [표 7]을 통해 제1 MSB 위치 정보 코드(INF_MB<1>)와, 제2 MSB 위치 정보 코드(INF_MB<2>), 및 제3 MSB 위치 정보 코드(INF_MB<3>) 각각을 생성하는 방법을 알아보기로 한다. 이후, 설명하겠지만, 제1 내지 제3 MSB 위치 정보 코드(INF_MB<1:3>)는 제1 내지 제3 LSB 위치 정보 코드(INF_LB<1:3>)와 다른 방법을 통해 생성된다.
우선, 제1 MSB 위치 정보 코드(INF_MB<1>)는 '11' 데이터 분포와 '01' 데이터 분포 사이의 제4 MSB 판단 전압(VR14)과 '00' 데이터 분포와 '10' 데이터 분포 사이의 제11 MSB 판단 전압(VR34)을 기준으로 해당 데이터 분포를 센싱한다. 아래 [표 5]에서 볼 수 있듯이, 제4 MSB 판단 전압(VR14)과 제11 MSB 판단 전압(VR34)을 기준으로 해당 데이터가 제4 MSB 판단 전압(VR14)과 제11 MSB 판단 전압(VR34) 사이에 분포하는 경우에는 제1 MSB 위치 정보 코드(INF_MB<1>)가 '0' 값을 갖게 되고, 그외에 분포하는 경우에는 '1' 값을 갖게 된다.
VR14 VR34
INF
_MB
<1>

1

1

1

1

0

0

0

0

0

0

0

0

1

1

1

1
다음으로, 제2 MSB 위치 정보 코드(INF_MB<2>)는 제2, 제6, 제9, 및 제13 MSB 판단 전압(VR12, VR16, VR32, VR36)을 기준으로 해당 데이터 분포를 센싱한다. 아래 [표 6]에서 볼 수 있듯이, 제2 MSB 위치 정보 코드(INF_MB<2>)는 세 가지 동작을 거쳐 생성된다. 우선, 제6 MSB 판단 전압(VR16)과 제9 MSB 판단 전압(VR32)을 기준으로 해당 데이터가 제6 MSB 판단 전압(VR16)과 제9 MSB 판단 전압(VR32) 사이에 분포하는 경우에는 'VR16/VR32'가 '0' 값을 갖게 되고, 그외에 분포하는 경우에는 '1' 값을 갖게 된다. 그리고, 제2 MSB 판단 전압(VR12)과 제13 MSB 판단 전압(VR36)을 기준으로 해당 데이터가 제2 MSB 판단 전압(VR12)과 제13 MSB 판단 전압(VR36) 사이에 분포하는 경우에는 'VR12/VR36'이 '0' 값을 갖게 되고, 그외에 분포하는 경우에는 '1' 값을 갖게 된다.
이어서, 제2 MSB 위치 정보 코드(INF_MB<2>)는 'VR16/VR32' 값과 'VR12/VR36' 값에 오드 패리티 기법을 이용하여 설정한다.
VR12 VR16 VR32 VR36
VR16/VR32
1

1

1

1

1

1

0

0

0

0

1

1

1

1

1

1
VR12/VR36
1

1

0

0

0

0

0

0

0

0

0

0

0

0

1

1
INF
_MB
<2>

1

1

0

0

0

0

1

1

1

1

0

0

0

0

1

1
마지막으로, 제3 MSB 위치 정보 코드(INF_MB<3>)는 제1, 제3, 제5, 제7, 제8, 제10, 제12, 및 제14 MSB 판단 전압(VR11, VR13, VR15, VR17, VR31, VR33, VR35, VR37)을 기준으로 해당 데이터 분포를 센싱한다. 아래 [표 7]에서 볼 수 있듯이, 제3 MSB 위치 정보 코드(INF_MB<3>)는 다섯 가지 동작을 거쳐 생성된다. 우선, 제7 MSB 판단 전압(VR17)과 제8 MSB 판단 전압(VR31)을 기준으로 해당 데이터가 제7 MSB 판단 전압(VR17)과 제8 MSB 판단 전압(VR31) 사이에 분포하는 경우에는 'VR17/VR31'가 '0' 값을 갖게 되고, 그외에 분포하는 경우에는 '1' 값을 갖게 된다. 이와 같은 방식으로, 제5 및 제10 MSB 판단 전압(VR15, VR33), 제3 및 제12 MSB 판단 전압(V13, VR35), 및 제1 및 제14 MSB 판단 전압(VR11, VR37)에 대응하는 'VR15/VR33', 'VR13/VR35', 'VR11, VR37' 값이 정해진다.
이어서, 제3 MSB 위치 정보 코드(INF_MB<3>)는 'VR17/VR31', 'VR15/VR33', 'VR13/VR35', 'VR11, VR37' 값에 오드 패리티 기법을 이용하여 설정한다.
VR11 VR13 VR15 VR17 VR31 VR33 VR35 VR37
VR17/VR31
1

1

1

1

1

1

1

0

0

1

1

1

1

1

1

1
VR15/VR33
1

1

1

1

1

0

0

0

0

0

0

1

1

1

1

1
VR13/VR35
1

1

1

0

0

0

0

0

0

0

0

0

0

1

1

1
VR11/VR37
1

0

0

0

0

0

0

0

0

0

0

0

0

0

0

1
INF
_MB
<3>

1

0

0

1

1

0

0

1

1

0

0

1

1

0

0

1
이렇게 설정된 제1 내지 제3 MSB 위치 정보 코드(INF_MB<1:3>)는 해당 데이터가 데이터 분포의 어디에 위치하는지에 대한 정보에 대응한다. 본 발명의 실시예에 따른 반도체 메모리 장치는 이렇게 생성된 제1 내지 제3 위치 정보 코드(INF_LB<1:3>)를 에러 수정 동작을 위한 회로로 순차적으로 전달한다.
도 3 은 본 발명의 실시예에 따른 반도체 메모리 장치의 회로 동작을 설명하기 위한 동작 흐름도이다. 본 발명의 실시예에 따른 반도체 메모리 장치는 이러한 동작을 통해 불량 데이터의 검출이 가능하다.
도 3 을 참조하면, 반도체 메모리 장치의 데이터 불량 검출 동작은 제1 위치 정보 코드를 읽는 단계(S310)와, ECC 결과 불량 데이터가 있는지 판단하는 단계(S320)와, 데이터 정상 보고를 하는 단계(S330)와, 제2 위치 정보 코드를 읽는 단계(S340)와, ECC 결과 불량 데이터가 있는지 판단하는 단계(S350)와, 제3 위치 정보 코드를 읽는 단계(S360)와, ECC 결과 불량 데이터가 있는지 판단하는 단계(S370), 및 데이터 오류를 보고하는 단계(S380)를 포함한다. 여기서, 'ECC'는 에러 수정 동작을 의미한다.
이하, 설명의 편의를 위하여, 3 비트의 제1 내지 제3 LSB 위치 정보 코드(INF_LB<1:3>)를 일례로 본 발명의 실시예에 반도체 메모리 장치의 불량 검출 동작을 설명하기로 한다.
'S310' 단계에서는 제1 LSB 위치 정보 코드(INF_LB<1>)를 읽는다. 이후, 'S320' 단계에는 제1 LSB 위치 정보 코드(INF_LB<1>)에 대한 ECC 동작을 수행하고, 그 결과 불량 데이터가 있는지를 판단한다. 'S320' 단계의 판단 결과 불량 데이터의 개수가 ECC 동작에 의하여 보정될 정도라면 'S330' 단계를 통해 읽은 데이터가 정상이라는 보고를 예컨대, 호스트나 컨트롤러에 통보한다. 이어서, 'S340' 단계와 'S350' 단계 그리고, 'S360' 단계와 'S370' 단계는 위의 'S310' 단계와 'S320' 단계와 유사한 동작을 수행하며, 각각 제2 LSB 위치 정보 코드(INF_LB<2>)와 제3 LSB 위치 정보 코드(INF_LB<3>)에 대응하는 동작을 수행한다.
한편, 제1 LSB 위치 정보 코드(INF_LB<1>)에서부터 제3 LSB 위치 정보 코드(INF_LB<3>)에 대응하는 ECC 동작을 수행한 이후에는 더 이상 보정 동작이 불가능하기 때문에, 'S380' 단계를 통해 데이터가 오류라는 보고를 예컨대, 호스트나 컨트롤러에 통보한다.
본 발명의 실시예에 따른 반도체 메모리 장치는 데이터의 위치를 코드 정보로 변환하고 이 코드 정보를 순차적으로 입력받아 ECC 동작 즉, 에러 수정 동작을 수행한다. 만약 'S310' 단계에서 제1 LSB 위치 정보 코드(INF_LB<1>)를 읽은 다음 'S320' 단계에서 불량 데이터의 개수가 보정 범위 안에 포함되는 경우 바로 'S330' 단계를 통해 데이터가 모두 정상으로 판단되기 때문에 이후 제2 및 제2 LSB 위치 정보 코드(INF_LB<1:2>)에 대한 읽기 동작(S340, S360) 및 ECC 동작(S350, S370)을 수행할 필요가 없다.
도 4 는 본 발명의 실시예에 따른 반도체 메모리 장치 시스템을 설명하기 위한 블록도이다.
도 4 를 참조하면, 반도체 메모리 장치 시스템은 반도체 메모리 장치(410)와, 에러 수정부(420), 및 제어부(430)를 구비한다. 여기서, 에러 수정부(420)는 설계에 따라 반도체 메모리 장치(410)에 포함되거나 제어부(430)에 포함될 수 있다.
반도체 메모리 장치(410)는 제어부(430)로부터 입력되는 읽기 명령(RD)에 따라 저장된 데이터에 대응하는 다수의 위치 정보 코드(INF_B)를 순차적으로 출력하기 위한 것으로, 메모리 셀(411), 및 정보 생성부(412)를 구비한다. 여기서, 메모리 셀(411)은 예정된 데이터 분포의 데이터를 저장되어 있으며, 정보 생성부(412)는 읽기 명령(RD)에 응답하여 예정된 판단 전압에 대응하는 다수의 위치 정보 코드(INF_B)를 생성하고 이를 순차적으로 출력한다. 여기서, 읽기 명령(RD)은 다수의 위치 정보 코드(INF_B) 각각을 읽기 위한 신호가 될 수 있다.
이어서, 에러 수정부(420)는 정보 생성부(412)에서 전달되는 다수의 위치 정보 코드(INF_B)를 순차적으로 입력받아 에러 수정 동작 이후 ECC 결과(INF_ECC)를 출력한다. 여기서, ECC 결과(INF_ECC)는 불량 데이터의 개수가 보정 범위 안에 있는지 없는지에 대한 정보가 될 수 있다. 그리고, 제어부(430)는 ECC 결과(INF_ECC)에 응답하여 다수의 위치 정보 코드(INF_B) 중 다음 위치 정보 코드에 대한 읽기 동작 여부를 결정하고, 또한 ECC 결과(INF_ECC)에 응답하여 반도체 메모리 장치(410)로부터 출력되는 데이터(DAT)를 입력받아 처리한다.
전술한 바와 같이, 본 발명의 실시예에 따른 반도체 메모리 장치는 예정된 데이터 분포 내에 위치한 데이터의 위치를 다수의 위치 정보 코드로 변환하고 이를 이용하여 에러 수정 동작을 수행함으로써, 에러 수정 동작 효율을 극대화하는 것이 가능하다.
본 발명의 기술 사상은 상기 바람직한 실시예에 따라 구체적으로 기술되었으나, 이상에서 설명한 실시예는 그 설명을 위한 것이며 그 제한을 위한 것이 아님을 주의하여야 한다. 또한, 본 발명의 기술 분야의 통상의 전문가라면 본 발명의 기술 사상의 범위 내에서 여러 가지 치환, 변형 및 변경으로 다양한 실시예가 가능함을 이해할 수 있을 것이다.
S310 : 제1 위치 정보 코드를 읽는 단계
S320 : ECC 결과 불량 데이터가 있는지 판단하는 단계
S330 : 데이터 정상 보고를 하는 단계
S340 : 제2 위치 정보 코드를 읽는 단계
S350 : ECC 결과 불량 데이터가 있는지 판단하는 단계
S360 : 제3 위치 정보 코드를 읽는 단계
S370 : ECC 결과 불량 데이터가 있는지 판단하는 단계
S380 : 데이터 오류를 보고하는 단계

Claims (12)

  1. 중첩된 데이터 분포에 포함되는 데이터의 위치를 판단 전압을 기준으로 변환하여 다수의 위치 정보 코드로 생성하기 위한 정보 생성부; 및
    상기 다수의 위치 정보 코드를 순차적으로 입력받아 에러 수정 동작을 수행하기 위한 에러 수정부
    를 구비하는 반도체 메모리 장치.
  2. 제1항에 있어서,
    상기 판단 전압은 상기 중첩된 데이터 분포 사이의 적어도 두 개 이상의 기준 전압을 포함하는 것을 특징으로 하는 반도체 메모리 장치.
  3. 중첩된 데이터 분포에 포함되는 데이터의 위치를 판단 전압에 따라 다수의 위치 정보 코드로 변환하고, 상기 다수이 위치 정보 코드를 읽기 명령에 응답하여 순차적으로 출력하기 위한 메모리부;
    상기 다수의 위치 정보 코드에 대한 에러 보정 동작을 수행하는 에러 수정부; 및
    상기 에러 수정부의 출력 신호에 응답하여 상기 읽기 명령을 생성하기 위한 제어부
    를 구비하는 반도체 메모리 장치 시스템.
  4. 제3항에 있어서,
    상기 제어부는 상기 메모리부로부터 출력되는 데이터를 입력받아 처리하는 것을 특징으로 하는 반도체 메모리 장치 시스템.
  5. 제3항에 있어서,
    상기 판단 전압은 중첩된 데이터 분포 사이의 적어도 두 개 이상의 기준 전압을 포함하는 것을 특징으로 하는 반도체 메모리 장치 시스템.
  6. 중첩된 데이터 분포 사이의 다수의 판단 전압을 설정하는 단계;
    상기 다수의 판단 전압을 기준으로 데이터의 위치를 다수의 위치 정보 코드로 변환하는 단계;
    읽기 명령에 응답하여 상기 다수의 위치 정보 코드 중 어느 하나의 위치 정보 코드에 대한 에러 수정 동작을 수행하는 단계; 및
    상기 에러 수정 동작을 수행하는 단계의 출력 신호에 응답하여 상기 데이터의 불량 여부를 검출하는 단계
    를 포함하는 반도체 메모리 장치의 동작 방법.
  7. 제6항에 있어서,
    상기 불량 여부를 검출하는 단계의 출력 신호에 응답하여 다음 읽기 명령을 생성하는 단계; 및
    상기 다음 읽기 명령에 응답하여 상기 다수의 위치 정보 코드 중 나머지 위치 정보 코드에 대한 에러 수정 동작을 수행하는 단계를 더 포함하는 반도체 메모리 장치의 동작 방법.
  8. 중첩된 데이터 분포를 제1 내지 제3 판단 전압으로 오버 샘플링하는 반도체 메모리 장치의 동작 방법에 있어서,
    상기 제2 판단 전압을 기준으로 일측 데이터 분포와 다른측 데이터 분포에 데이터 값을 설정하여 제1 위치 정보 코드를 생성하는 단계;
    상기 제1 판단 전압과 상기 제3 판단 전압 사이의 데이터 분포와 이외의 데이터 분포에 데이터 값을 설정하여 제2 위치 정보 코드를 생성하는 단계; 및
    상기 제1 및 제2 위치 정보 코드를 순차적으로 입력받아 에러 수정 동작을 수행하는 단계
    를 포함하는 반도체 메모리 장치의 동작 방법.
  9. 중첩된 데이터 분포를 제1 내지 제7 판단 전압으로 오버 샘플링하는 반도체 메모리 장치의 동작 방법에 있어서,
    상기 제4 판단 전압을 기준으로 데이터 값을 설정하여 제1 위치 정보 코드를 생성하는 단계;
    상기 제2 판단 전압과 상기 제6 판단 전압 사이의 데이터 분포와 이외의 데이터 분포에 데이터 값을 설정하여 제2 위치 정보 코드를 생성하는 단계;
    상기 제3 판단 전압과 상기 제5 판단 전압 사이의 데이터 분포와 이외의 데이터 분포에 제1 데이터 값을 설정하고, 상기 제1 판단 전압과 상기 제7 판단 전압 사이의 데이터 분포와 이외의 데이터 분포에 제2 데이터 값을 설정하고, 상기 제1 및 제2 데이터 값에 예정된 함수를 반영하여 제3 위치 정보 코드를 생성하는 단계; 및
    상기 제1 내지 제3 위치 정보 코드를 순차적으로 입력받아 에러 수정 동작을 수행하는 단계
    를 포함하는 반도체 메모리 장치의 동작 방법.
  10. 제9항에 있어서,
    상기 예정된 함수는 패리티 기법에 대응하는 것을 특징으로 하는 반도체 메모리 장치의 동작 방법.
  11. 중첩된 제1 및 제2 데이터 분포를 제1 내지 제7 판단 전압으로 오버 샘플링하고, 중첩된 제3 및 제4 데이터 분포를 제8 내지 제14 판단 전압으로 오버 샘플링하는 반도체 메모리 장치의 동작 방법에 있어서,
    상기 제4 판단 전압과 상기 제11 판단 전압 사이의 데이터 분포와 이외의 데이터 분포에 데이터 값을 설정하여 제1 위치 정보 코드를 생성하는 단계;
    상기 제6 판단 전압과 상기 제9 판단 전압 사이의 데이터 분포와 이외의 데이터 분포에 제1 데이터 값을 설정하고, 상기 제2 판단 전압과 상기 제13 판단 전압 사이의 데이터 분포와 이외의 데이터 분포에 제2 데이터 값을 설정하고, 상기 제1 및 제2 데이터 값에 예정된 함수를 반영하여 제2 위치 정보 코드를 생성하는 단계;
    상기 제7 판단 전압과 상기 제8 판단 전압 사이의 데이터 분포와 이외의 데이터 분포에 제3 데이터 값을 설정하고, 상기 제5 판단 전압과 상기 제10 판단 전압 사이의 데이터 분포와 이외의 데이터 분포에 제4 데이터 값을 설정하고, 상기 제3 판단 전압과 상기 제12 판단 전압 사이의 데이터 분포와 이외의 데이터 분포에 제5 데이터 값을 설정하고, 상기 제1 판단 전압과 상기 제14 판단 전압 사이의 데이터 분포와 이외의 데이터 분포에 제6 데이터 값을 설정하고, 상기 제3 내지 제6 데이터 값에 예정된 함수를 반영하여 제3 위치 정보 코드를 생성하는 단계; 및
    상기 제1 내지 제3 위치 정보 코드를 순차적으로 입력받아 에러 수정 동작을 수행하는 단계
    를 포함하는 반도체 메모리 장치의 동작 방법.
  12. 제11항에 있어서,
    상기 예정된 함수는 패리티 기법에 대응하는 것을 특징으로 하는 반도체 메모리 장치의 동작 방법.
KR1020110146089A 2011-12-29 2011-12-29 반도체 메모리 장치 및 그 구동 방법 KR20130077401A (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020110146089A KR20130077401A (ko) 2011-12-29 2011-12-29 반도체 메모리 장치 및 그 구동 방법
US13/591,941 US8953375B2 (en) 2011-12-29 2012-08-22 Semiconductor memory device and operation method thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020110146089A KR20130077401A (ko) 2011-12-29 2011-12-29 반도체 메모리 장치 및 그 구동 방법

Publications (1)

Publication Number Publication Date
KR20130077401A true KR20130077401A (ko) 2013-07-09

Family

ID=48694685

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020110146089A KR20130077401A (ko) 2011-12-29 2011-12-29 반도체 메모리 장치 및 그 구동 방법

Country Status (2)

Country Link
US (1) US8953375B2 (ko)
KR (1) KR20130077401A (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110750305A (zh) * 2019-09-02 2020-02-04 福州谛听科技有限公司 一种数据驱动的制作存储方法、系统、设备和存储介质

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102112559B1 (ko) * 2014-04-08 2020-05-21 에스케이하이닉스 주식회사 반도체 장치 및 그 동작방법
TW202318426A (zh) * 2021-09-17 2023-05-01 南韓商三星電子股份有限公司 經組態以控制記憶體裝置的記憶體控制器的操作方法

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4036552B2 (ja) * 1998-12-17 2008-01-23 富士通株式会社 不揮発性半導体記憶装置
JP4256198B2 (ja) * 2003-04-22 2009-04-22 株式会社東芝 データ記憶システム
US20080192544A1 (en) * 2007-02-13 2008-08-14 Amit Berman Error correction coding techniques for non-volatile memory
KR101406279B1 (ko) 2007-12-20 2014-06-13 삼성전자주식회사 반도체 메모리 장치 및 그것의 읽기 페일 분석 방법
US8000135B1 (en) * 2008-09-14 2011-08-16 Anobit Technologies Ltd. Estimation of memory cell read thresholds by sampling inside programming level distribution intervals
US7859932B2 (en) * 2008-12-18 2010-12-28 Sandisk Corporation Data refresh for non-volatile storage
KR20100090439A (ko) * 2009-02-06 2010-08-16 주식회사 하이닉스반도체 불휘발성 메모리 장치의 독출 방법 및 이를 구현하는 불휘발성 메모리 장치
JP5204069B2 (ja) * 2009-09-18 2013-06-05 株式会社東芝 不揮発性半導体記憶装置
KR101616100B1 (ko) * 2009-09-25 2016-04-28 삼성전자주식회사 메모리 시스템 및 그것의 동작 방법
US8203879B2 (en) * 2010-07-12 2012-06-19 Macronix International Co., Ltd. Non-volatile memory and operation method thereof
JP2013069367A (ja) * 2011-09-21 2013-04-18 Toshiba Corp 不揮発性半導体記憶装置
KR101892038B1 (ko) * 2012-01-30 2018-08-27 삼성전자주식회사 비휘발성 메모리 장치의 데이터 독출 방법
KR102050475B1 (ko) * 2013-01-14 2020-01-08 삼성전자주식회사 플래시 메모리, 플래시 메모리 장치 및 이의 동작 방법
US20140269054A1 (en) * 2013-03-12 2014-09-18 Macronix International Co., Ltd. Non-volatile memory and method of operation thereof

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110750305A (zh) * 2019-09-02 2020-02-04 福州谛听科技有限公司 一种数据驱动的制作存储方法、系统、设备和存储介质

Also Published As

Publication number Publication date
US20130170295A1 (en) 2013-07-04
US8953375B2 (en) 2015-02-10

Similar Documents

Publication Publication Date Title
KR100842680B1 (ko) 플래시 메모리 장치의 오류 정정 컨트롤러 및 그것을포함하는 메모리 시스템
US8112689B2 (en) ECC controller for use in flash memory device and memory system including the same
CN107133122B (zh) 存储器控制方法
KR100681429B1 (ko) 반도체 메모리 장치 및 그것의 비트 에러 검출 방법
JP5399403B2 (ja) マルチレベルフラッシュメモリの系統誤差訂正
US8321765B2 (en) Method of reading data in non-volatile memory device
CN107408069B (zh) 用于检测和缓解闪速存储器中的位线开路的装置和方法
US9465552B2 (en) Selection of redundant storage configuration based on available memory space
US20100313099A1 (en) Semiconductor storage device, method of controlling the same, and error correction system
US20160372161A1 (en) Data storage device and operating method thereof
US8347183B2 (en) Flash memory device using ECC algorithm and method of operating the same
JP2012137994A (ja) メモリシステムおよびその制御方法
US9136012B1 (en) Reliable readout of fuse data in an integrated circuit
US10795763B2 (en) Memory system and error correcting method thereof
US7747926B2 (en) Methods and apparatus for a memory device with self-healing reference bits
KR20130077401A (ko) 반도체 메모리 장치 및 그 구동 방법
US20130104003A1 (en) Memory system and method for recording/reproducing data thereof
KR20050064887A (ko) 오류 검출 능력이 강화된 플래시 메모리 및 다비트 오류검출 방법
KR20180123207A (ko) 메모리 장치, 이를 포함하는 메모리 시스템 및 메모리 시스템의 동작 방법
US9104596B2 (en) Memory system
JP2003100095A (ja) 半導体集積回路装置
JP2008305507A (ja) フラッシュメモリの状態検出方法
JPH11213692A (ja) メモリ装置
JP2012190538A (ja) 記憶装置、記憶媒体再生方法および記憶媒体再生プログラム
JP2009087491A (ja) 半導体メモリ

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
AMND Amendment
E601 Decision to refuse application
AMND Amendment
E90F Notification of reason for final refusal