KR102387463B1 - 메모리 장치, 전자 장치 및 메모리 장치의 동작 방법 - Google Patents
메모리 장치, 전자 장치 및 메모리 장치의 동작 방법 Download PDFInfo
- Publication number
- KR102387463B1 KR102387463B1 KR1020210141366A KR20210141366A KR102387463B1 KR 102387463 B1 KR102387463 B1 KR 102387463B1 KR 1020210141366 A KR1020210141366 A KR 1020210141366A KR 20210141366 A KR20210141366 A KR 20210141366A KR 102387463 B1 KR102387463 B1 KR 102387463B1
- Authority
- KR
- South Korea
- Prior art keywords
- data
- error
- volatile memory
- bit
- test
- Prior art date
Links
- 238000011017 operating method Methods 0.000 title description 3
- 230000015654 memory Effects 0.000 claims abstract description 273
- 238000011084 recovery Methods 0.000 claims abstract description 82
- 238000000034 method Methods 0.000 claims abstract description 27
- 230000004044 response Effects 0.000 claims abstract description 22
- 238000012937 correction Methods 0.000 claims abstract description 16
- 238000012360 testing method Methods 0.000 claims description 163
- 239000000872 buffer Substances 0.000 claims description 47
- 208000011580 syndromic disease Diseases 0.000 claims description 22
- 230000008859 change Effects 0.000 claims description 6
- 238000001514 detection method Methods 0.000 claims description 5
- 230000007423 decrease Effects 0.000 claims description 3
- 230000007547 defect Effects 0.000 description 30
- 238000010586 diagram Methods 0.000 description 26
- 230000005540 biological transmission Effects 0.000 description 9
- 238000012546 transfer Methods 0.000 description 7
- 230000002950 deficient Effects 0.000 description 6
- 230000000295 complement effect Effects 0.000 description 5
- 230000008569 process Effects 0.000 description 4
- 238000012545 processing Methods 0.000 description 4
- 239000004065 semiconductor Substances 0.000 description 3
- 238000004891 communication Methods 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 230000010354 integration Effects 0.000 description 2
- 238000013507 mapping Methods 0.000 description 2
- 239000003990 capacitor Substances 0.000 description 1
- CXOXHMZGEKVPMT-UHFFFAOYSA-N clobazam Chemical compound O=C1CC(=O)N(C)C2=CC=C(Cl)C=C2N1C1=CC=CC=C1 CXOXHMZGEKVPMT-UHFFFAOYSA-N 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 229940044442 onfi Drugs 0.000 description 1
- 230000008439 repair process Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/52—Protection of memory contents; Detection of errors in memory contents
-
- 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/0614—Improving the reliability of storage systems
- G06F3/0619—Improving the reliability of storage systems in relation to data integrity, e.g. data losses, bit errors
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1008—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
- G06F11/1048—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices using arrangements adapted for a specific error detection or correction feature
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1008—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
- G06F11/1044—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices with specific ECC/EDC distribution
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1008—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
- G06F11/1068—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices in sector programmable memories, e.g. flash disk
-
- 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/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0659—Command handling arrangements, e.g. command buffers, queues, command scheduling
-
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30003—Arrangements for executing specific machine instructions
- G06F9/30007—Arrangements for executing specific machine instructions to perform operations on data operands
- G06F9/30029—Logical and Boolean instructions, e.g. XOR, NOT
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30098—Register arrangements
- G06F9/3012—Organisation of register space, e.g. banked or distributed register file
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/04—Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
- G11C29/08—Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
- G11C29/12—Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
- G11C29/38—Response verification devices
- G11C29/42—Response verification devices using error correcting codes [ECC] or parity check
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/04—Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
- G11C29/08—Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
- G11C29/12—Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
- G11C29/44—Indication or identification of errors, e.g. for repair
- G11C29/4401—Indication or identification of errors, e.g. for repair for self repair
-
- H01L27/108—
-
- H01L27/11—
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/04—Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
- G11C2029/0411—Online error correction
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Computer Security & Cryptography (AREA)
- For Increasing The Reliability Of Semiconductor Memories (AREA)
- Software Systems (AREA)
- Quality & Reliability (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
Description
도 2는 본 개시의 일 실시예에 따른 휘발성 메모리를 설명하기 위한 도면이다.
도 3은 본 개시의 일 실시예에 따른 메모리 셀의 일 실시예를 설명하기 위한 도면이다.
도 4는 본 개시의 일 실시예에 따라 데이터를 에러 정정하는 실시예를 설명하기 위한 개념도이다.
도 5는 본 개시의 일 실시예에 따라 데이터를 에러 정정하는 실시예를 구체적으로 설명하기 위한 도면이다.
도 6은 본 개시의 일 실시예에 따른 메모리 장치의 동작 방법을 설명하기 위한 흐름도이다.
도 7은 본 개시의 일 실시예에 따른 하드 디펙 테스트를 설명하기 위한 흐름도이다.
도 8은 본 개시의 일 실시예에 따른 소프트 디펙 테스트를 설명하기 위한 흐름도이다.
도 9a 내지 도 9c는 본 개시의 일 실시예에 따른 힌트 데이터를 설명하기 위한 도면이다.
도 10은 본 개시의 일 실시예에 따른 ECC 디코더를 설명하기 위한 도면이다.
도 11a 내지 도 11c는 본 개시의 일 실시예에 따른 힌트 데이터 적용기의 동작을 설명하기 위한 도면이다.
도 12는 본 개시의 다른 실시예에 따른 전자 장치를 설명하기 위한 도면이다.
도 13은 본 개시의 또 다른 실시예에 따른 전자 장치를 설명하기 위한 도면이다.
도 14는 내부 전압 및 클럭의 주파수에 따라 발생되는 에러 경향성을 슈모 조건(Shmoo condition)으로 나타낸 도면이다.
도 15는 각 세그먼트의 어드레스에서 발생 가능한 에러 현상을 설명하기 위한 도면이다.
도 16은 본 개시의 다른 실시예에 따른 힌트 데이터를 설명하기 위한 도면이다.
도 17은 본 발명의 일 실시예에 따른 UFS 시스템에 대해 설명하기 위한 도면이다.
Claims (20)
- 호스트와 통신 가능한 메모리 장치에 있어서,
복수의 워드 라인들과 복수의 비트 라인들에 의해 정의되는 복수의 메모리 셀들을 포함하고, 상기 호스트로부터 수신된 제1 리드 커맨드 및 어드레스에 응답하여 상기 복수의 메모리 셀들 중 상기 어드레스에 대응되는 타겟 메모리 셀들에 저장된 출력 데이터를 제공하도록 구성된 휘발성 메모리;
상기 복수의 비트 라인들 중 상기 출력 데이터에서 2 비트의 에러가 발생한 불량 셀들이 각각 연결된 비트 라인들에 대한 정보와 노멀 셀들이 연결된 비트 라인들에 대한 정보를 포함하는 힌트 데이터를 제공하도록 구성된 복구 로직 회로; 및
상기 출력 데이터 및 상기 힌트 데이터를 기초로 상기 출력 데이터에서 발생한 에러를 정정하고, 상기 에러가 정정된 데이터인 정정 데이터를 상기 호스트에 전달하도록 구성된 에러 정정 회로(Error Correction Circuit, ECC) 엔진을 포함하는 메모리 장치. - 제1 항에 있어서,
상기 복구 로직 회로는,
테스트 패턴 데이터를 상기 타겟 메모리 셀들에 저장하도록 상기 휘발성 메모리를 제어하고, 상기 테스트 패턴 데이터를 리드하도록 상기 휘발성 메모리를 제어하고, 상기 휘발성 메모리로부터 제공된 테스트 데이터를 기초로 상기 힌트 데이터를 생성하는 복구 컨트롤러;
상기 힌트 데이터를 임시 저장하는 힌트 데이터 버퍼; 및
상기 테스트 데이터를 임시 저장하는 테스트 데이터 버퍼를 포함하는 것을 특징으로 하는, 메모리 장치. - 제2 항에 있어서,
상기 복구 컨트롤러는,
제1 라이트 커맨드, 제1 테스트 패턴 데이터, 및 상기 어드레스를 상기 휘발성 메모리에 전달하고,
제2 리드 커맨드 및 상기 어드레스를 상기 휘발성 메모리에 전달하고,
상기 휘발성 메모리로부터 출력된 제1 테스트 데이터를 상기 테스트 데이터 버퍼에 저장하고,
제2 라이트 커맨드, 제2 테스트 패턴 데이터, 및 상기 어드레스를 상기 휘발성 메모리에 전달하고,
제3 리드 커맨드 및 상기 어드레스를 상기 휘발성 메모리에 전달하고,
상기 휘발성 메모리로부터 출력된 제2 테스트 데이터를 상기 테스트 데이터 버퍼에 저장하는 것을 특징으로 하는, 메모리 장치. - 제3 항에 있어서,
상기 복구 컨트롤러는,
상기 제1 테스트 데이터 및 상기 제2 테스트 데이터를 XOR 연산하고,
XOR 연산의 결과, 적어도 하나의 제1 값을 갖는 제1 결과 데이터를 상기 힌트 데이터로서 상기 힌트 데이터 버퍼에 저장하는 것을 특징으로 하는, 메모리 장치. - 제4 항에 있어서,
상기 복구 컨트롤러는,
XOR 연산으로 생성된 제2 결과 데이터의 모든 값이 상기 제1 값과 다른 제2 값인 경우, 상기 휘발성 메모리를 동작하기 위한 내부 전압 및 클럭 주파수 중 적어도 하나를 변경할 것을 요청하는 세팅 요청 신호를 상기 호스트에 전달하고,
상기 내부 전압 및 상기 클럭 주파수 중 적어도 하나가 변경되면, 상기 제1 테스트 패턴 데이터에 대한 쓰기 동작, 상기 제1 테스트 데이터에 대한 읽기 동작, 상기 제2 테스트 패턴 데이터에 대한 쓰기 동작 및 상기 제2 테스트 데이터에 대한 읽기 동작을 수행하도록 상기 휘발성 메모리를 제어하는 것을 특징으로 하는, 메모리 장치. - 제5 항에 있어서,
상기 복구 컨트롤러는,
상기 제2 결과 데이터의 모든 값이 상기 제2 값인 경우, 상기 내부 전압의 레벨보다 낮은 레벨을 갖는 내부 전압을 생성할 것을 상기 호스트에 요청하는 것을 특징으로 하는, 메모리 장치. - 제5 항에 있어서,
상기 복구 컨트롤러는,
상기 제2 결과 데이터의 모든 값이 상기 제2 값인 경우, 상기 클럭 주파수보다 큰 클럭 주파수를 갖는 클럭을 생성할 것을 상기 호스트에 요청하는 것을 특징으로 하는, 메모리 장치. - 제2 항에 있어서,
상기 복구 컨트롤러는,
상기 출력 데이터를 상기 테스트 데이터 버퍼에 백업한 다음, 상기 테스트 패턴 데이터를 상기 타겟 메모리 셀들에 저장하도록 상기 휘발성 메모리를 제어하고,
상기 힌트 데이터가 생성된 다음, 백업된 출력 데이터를 상기 타겟 메모리 셀들에 저장하도록 상기 휘발성 메모리를 제어하는 것을 특징으로 하는, 메모리 장치. - 제1 항에 있어서,
상기 ECC 엔진은,
상기 호스트로부터 수신되는 데이터에 대하여 패리티 비트를 생성하는 ECC 인코더; 및
상기 힌트 데이터를 이용하여 상기 출력 데이터를 정정하고 상기 정정 데이터를 상기 호스트에 전달하는 ECC 디코더를 포함하고,
상기 ECC 디코더는,
상기 출력 데이터와 상기 힌트 데이터를 XOR 연산함으로써, 적어도 하나의 에러 비트가 정정된 데이터를 출력하는 힌트 데이터 적용기;
상기 적어도 하나의 에러 비트가 정정된 데이터를 기초로 신드롬 데이터를 생성하는 신드롬 생성기;
상기 신드롬 데이터를 기초로 에러 비트의 역수를 근으로 하는 오류 위치 방정식의 계수를 산출하는 계수 계산기;
상기 신드롬 데이터 및 상기 오류 위치 방정식의 계수를 이용하여, 상기 적어도 하나의 에러 비트가 정정된 데이터에서 에러 비트의 위치를 계산하는 1 비트 에러 검출기; 및
상기 1 비트 에러 검출기의 검출 결과를 기초로 에러 비트의 값을 반전시킴으로써 에러를 정정하고, 상기 정정 데이터를 출력하는 에러 정정기를 포함하는 것을 특징으로 하는 메모리 장치. - 제1 리드 커맨드 및 어드레스를 출력하는 어플리케이션 프로세서;
복수의 휘발성 메모리들, 상기 복수의 휘발성 메모리들 중 상기 어드레스에 대응되는 휘발성 메모리를 선택하는 멀티플렉서, 및 제1 리드 커맨드에 응답하여 리드 동작을 수행하는 선택된 휘발성 메모리로부터 출력된 출력 데이터에서 발생한 에러를 정정하는 ECC 엔진을 포함하는 버퍼; 및
상기 출력 데이터에서 2 비트의 에러가 발생한 불량 셀들이 각각 연결된 비트 라인들에 대한 정보와 노멀 셀들이 연결된 비트 라인들에 대한 정보를 포함하는 힌트 데이터를 제공하도록 구성된 복구 로직 회로를 포함하되,
상기 ECC 엔진은,
상기 선택된 휘발성 메모리에 대한 제1 힌트 데이터 및 상기 출력 데이터를 기초로 상기 에러를 정정하고, 정정 데이터를 상기 어플리케이션 프로세서에 전달하는 것을 특징으로 하는, 전자 장치. - 제10 항에 있어서,
상기 복구 로직 회로는,
테스트 패턴 데이터를 저장하도록 상기 선택된 휘발성 메모리를 제어하고, 상기 테스트 패턴 데이터를 리드하도록 상기 선택된 휘발성 메모리를 제어하고, 상기 선택된 휘발성 메모리로부터 제공된 테스트 데이터를 기초로 상기 제1 힌트 데이터를 생성하는 복구 컨트롤러;
상기 제1 힌트 데이터를 임시 저장하는 힌트 데이터 버퍼; 및
상기 테스트 데이터를 임시 저장하는 테스트 데이터 버퍼를 포함하는 것을 특징으로 하는, 전자 장치. - 제11 항에 있어서,
상기 복구 컨트롤러는,
제1 라이트 커맨드, 제1 테스트 패턴 데이터, 및 상기 어드레스를 상기 선택된 휘발성 메모리에 전달하고,
제2 리드 커맨드 및 상기 어드레스를 상기 선택된 휘발성 메모리에 전달하고,
상기 선택된 휘발성 메모리로부터 출력된 제1 테스트 데이터를 상기 테스트 데이터 버퍼에 저장하고,
제2 라이트 커맨드, 제2 테스트 패턴 데이터, 및 상기 어드레스를 상기 선택된 휘발성 메모리에 전달하고,
제3 리드 커맨드 및 상기 어드레스를 상기 선택된 휘발성 메모리에 전달하고,
상기 선택된 휘발성 메모리로부터 출력된 제2 테스트 데이터를 상기 테스트 데이터 버퍼에 저장하는 것을 특징으로 하는, 전자 장치. - 제12 항에 있어서,
상기 복구 컨트롤러는,
상기 제1 테스트 데이터 및 상기 제2 테스트 데이터를 XOR 연산하고,
XOR 연산의 결과, 적어도 하나의 제1 값을 갖는 제1 결과 데이터를 상기 제1 힌트 데이터로서 상기 힌트 데이터 버퍼에 저장하는 것을 특징으로 하는, 전자 장치. - 제13 항에 있어서,
내부 전압을 공급하는 전력 공급기를 더 포함하고,
상기 어플리케이션 프로세서는,
상기 내부 전압의 레벨을 감소시킬 것을 요청하는 세팅 요청 신호에 응답하여 상기 전력 공급기의 동작을 제어하고,
상기 복구 컨트롤러는,
XOR 연산으로 생성된 제2 결과 데이터의 모든 값이 상기 제1 값과 다른 제2 값인 경우, 상기 세팅 요청 신호를 상기 어플리케이션 프로세서에 전달하고,
상기 내부 전압의 레벨이 변경되면, 상기 제1 테스트 패턴 데이터에 대한 쓰기 동작, 상기 제1 테스트 데이터에 대한 읽기 동작, 상기 제2 테스트 패턴 데이터에 대한 쓰기 동작 및 상기 제2 테스트 데이터에 대한 읽기 동작을 수행하도록 상기 선택된 휘발성 메모리를 제어하는 것을 특징으로 하는, 전자 장치. - 제13 항에 있어서,
클럭을 출력하는 클럭 생성기를 더 포함하고,
상기 어플리케이션 프로세서는,
상기 클럭의 클럭 주파수를 증가시킬 것을 요청하는 세팅 요청 신호에 응답하여 상기 클럭 생성기의 동작을 제어하고,
상기 복구 컨트롤러는,
XOR 연산으로 생성된 제2 결과 데이터의 모든 값이 상기 제1 값과 다른 제2 값인 경우, 상기 세팅 요청 신호를 상기 어플리케이션 프로세서에 전달하고,
상기 클럭 주파수가 변경되면, 상기 제1 테스트 패턴 데이터에 대한 쓰기 동작, 상기 제1 테스트 데이터에 대한 읽기 동작, 상기 제2 테스트 패턴 데이터에 대한 쓰기 동작 및 상기 제2 테스트 데이터에 대한 읽기 동작을 수행하도록 상기 선택된 휘발성 메모리를 제어하는 것을 특징으로 하는, 전자 장치. - 제11 항에 있어서,
상기 복구 컨트롤러는,
상기 출력 데이터를 상기 테스트 데이터 버퍼에 백업한 다음, 상기 테스트 패턴 데이터를 저장하도록 상기 선택된 휘발성 메모리를 제어하고,
상기 힌트 데이터가 생성된 다음, 백업된 출력 데이터를 저장하도록 상기 선택된 휘발성 메모리를 제어하는 것을 특징으로 하는, 전자 장치. - 제10 항에 있어서,
상기 ECC 엔진은,
상기 어플리케이션 프로세서로부터 수신되는 데이터에 대하여 패리티 비트를 생성하는 ECC 인코더; 및
상기 제1 힌트 데이터를 이용하여 상기 출력 데이터를 정정하고 상기 정정 데이터를 상기 어플리케이션 프로세서에 전달하는 ECC 디코더를 포함하고,
상기 ECC 디코더는,
상기 출력 데이터와 상기 제1 힌트 데이터를 XOR 연산함으로써, 적어도 하나의 에러 비트가 정정된 데이터를 출력하는 힌트 데이터 적용기;
상기 적어도 하나의 에러 비트가 정정된 데이터를 기초로 신드롬 데이터를 생성하는 신드롬 생성기;
상기 신드롬 데이터를 기초로 에러 비트의 역수를 근으로 하는 오류 위치 방정식의 계수를 산출하는 계수 계산기;
상기 신드롬 데이터 및 상기 오류 위치 방정식의 계수를 이용하여, 상기 적어도 하나의 에러 비트가 정정된 데이터에서 에러 비트의 위치를 계산하는 1 비트 에러 검출기; 및
상기 1 비트 에러 검출기의 검출 결과를 기초로 에러 비트의 값을 반전시킴으로써 에러를 정정하고, 상기 정정 데이터를 출력하는 에러 정정기를 포함하는 것을 특징으로 하는 전자 장치. - 호스트와 통신 가능한 메모리 장치의 동작 방법에 있어서,
상기 호스트로부터 수신된 리드 커맨드 및 어드레스를 수신하는 단계;
복수의 휘발성 메모리들 중 상기 어드레스에 대응되는 휘발성 메모리에 저장된 데이터를 리드하는 단계;
상기 휘발성 메모리로부터 리드된 리드 데이터에서 2 비트의 에러를 검출하는 단계;
상기 휘발성 메모리에 대한 힌트 데이터와 상기 리드 데이터를 기초로 상기 2 비트의 에러를 정정하는 단계; 및
상기 2 비트의 에러가 정정된 데이터인 정정 데이터를 상기 호스트에 제공하는 단계를 포함하는 메모리 장치의 동작 방법. - 제18 항에 있어서,
상기 2 비트의 에러가 검출된 이후, 상기 리드 데이터를 백업하는 단계;
미리 저장된 제1 테스트 패턴 데이터, 제1 라이트 커맨드, 및 상기 어드레스를 상기 휘발성 메모리에 전달하는 단계;
제2 리드 커맨드 및 상기 어드레스를 상기 휘발성 메모리에 전달하고, 상기 휘발성 메모리로부터 제1 테스트 데이터를 획득하는 단계;
미리 저장된 제2 테스트 패턴 데이터, 제2 라이트 커맨드, 및 상기 어드레스를 상기 휘발성 메모리에 전달하는 단계;
제3 리드 커맨드 및 상기 어드레스를 상기 휘발성 메모리에 전달하고, 상기 휘발성 메모리로부터 제2 테스트 데이터를 획득하는 단계;
상기 제1 테스트 데이터 및 상기 제2 테스트 데이터를 XOR 연산하여, 결과 데이터를 생성하는 단계;
결과 데이터의 값에 따라 힌트 데이터를 생성하는 단계를 더 포함하는 메모리 장치의 동작 방법. - 제19 항에 있어서,
상기 2 비트의 에러를 정정하는 단계는,
상기 리드 데이터와 상기 힌트 데이터를 XOR 연산함으로써, 적어도 하나의 에러 비트가 정정된 데이터를 출력하는 단계;
상기 적어도 하나의 에러 비트가 정정된 데이터를 기초로 신드롬 데이터를 생성하는 단계;
상기 신드롬 데이터를 기초로 에러 비트의 역수를 근으로 하는 오류 위치 방정식의 계수를 산출하는 단계;
상기 신드롬 데이터 및 상기 오류 위치 방정식의 계수를 이용하여, 상기 적어도 하나의 에러 비트가 정정된 데이터에서 에러 비트의 위치를 계산하는 단계; 및
상기 에러 비트의 위치를 기초로 에러 비트의 값을 반전시킴으로써 에러를 정정하고, 상기 정정 데이터를 출력하는 단계를 포함하는 것을 특징으로 하는, 메모리 장치의 동작 방법.
Priority Applications (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020210141366A KR102387463B1 (ko) | 2021-10-21 | 2021-10-21 | 메모리 장치, 전자 장치 및 메모리 장치의 동작 방법 |
US17/733,559 US11989422B2 (en) | 2021-10-21 | 2022-04-29 | Memory device, electronic device and operating method of memory device |
EP22176963.1A EP4170660A1 (en) | 2021-10-21 | 2022-06-02 | Memory device comprising an ecc for error correction based on hint data |
CN202210890699.8A CN116013396A (zh) | 2021-10-21 | 2022-07-27 | 存储器装置、电子装置和存储器装置的操作方法 |
TW111128054A TW202318432A (zh) | 2021-10-21 | 2022-07-27 | 記憶體裝置、電子裝置以及操作記憶體裝置的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020210141366A KR102387463B1 (ko) | 2021-10-21 | 2021-10-21 | 메모리 장치, 전자 장치 및 메모리 장치의 동작 방법 |
Publications (1)
Publication Number | Publication Date |
---|---|
KR102387463B1 true KR102387463B1 (ko) | 2022-04-15 |
Family
ID=81212202
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020210141366A KR102387463B1 (ko) | 2021-10-21 | 2021-10-21 | 메모리 장치, 전자 장치 및 메모리 장치의 동작 방법 |
Country Status (5)
Country | Link |
---|---|
US (1) | US11989422B2 (ko) |
EP (1) | EP4170660A1 (ko) |
KR (1) | KR102387463B1 (ko) |
CN (1) | CN116013396A (ko) |
TW (1) | TW202318432A (ko) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20080046973A (ko) * | 2006-11-24 | 2008-05-28 | 삼성전자주식회사 | 메모리 세팅 조건을 결정하는 메모리 테스트 장치 및 그방법 |
KR101862379B1 (ko) * | 2013-04-19 | 2018-07-05 | 삼성전자주식회사 | Ecc 동작과 리던던시 리페어 동작을 공유하는 메모리 장치 |
KR20210012177A (ko) * | 2019-07-24 | 2021-02-03 | 삼성전자주식회사 | 반도체 메모리 장치 및 이의 동작 방법 |
KR20210026487A (ko) * | 2019-08-30 | 2021-03-10 | 삼성전자주식회사 | 휘발성 메모리 장치의 리페어 제어 방법 및 이를 수행하는 스토리지 장치 |
KR20210092391A (ko) * | 2020-01-16 | 2021-07-26 | 삼성전자주식회사 | 반도체 메모리 장치의 에러 정정 회로 및 반도체 메모리 장치 |
KR20210109085A (ko) * | 2020-02-26 | 2021-09-06 | 삼성전자주식회사 | 메모리 장치에 대한 테스트 방법, 메모리 장치를 테스트하는 테스트 장치의 동작 방법, 및 셀프-테스트 기능을 구비한 메모리 장치 |
Family Cites Families (26)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5195098A (en) * | 1991-05-10 | 1993-03-16 | Echelon Corporation | Binary data error correction using hint signal |
US5761220A (en) * | 1994-09-19 | 1998-06-02 | Cirrus Logic, Inc. | Minimum latency asynchronous data path controller in a digital recording system |
KR100259297B1 (ko) | 1997-08-28 | 2000-06-15 | 구자홍 | 데이터 디코딩 장치 |
US7171591B2 (en) | 2003-12-23 | 2007-01-30 | International Business Machines Corporation | Method and apparatus for encoding special uncorrectable errors in an error correction code |
US7581154B2 (en) | 2005-06-30 | 2009-08-25 | Intel Corporation | Method and apparatus to lower operating voltages for memory arrays using error correcting codes |
KR100833600B1 (ko) | 2006-08-25 | 2008-05-30 | 삼성전자주식회사 | 에러 정정 회로, 그 방법 및 상기 회로를 구비하는 반도체메모리 장치 |
US8117519B2 (en) * | 2008-01-15 | 2012-02-14 | Micron Technology, Inc. | Memory apparatus and method using erasure error correction to reduce power consumption |
KR101543245B1 (ko) | 2009-03-18 | 2015-08-11 | 삼성전자주식회사 | 에러 교정 장치와 이를 포함하는 메모리 장치와 데이터 처리 시스템 |
US9459955B2 (en) * | 2012-05-24 | 2016-10-04 | Sandisk Technologies Llc | System and method to scramble data based on a scramble key |
US9146807B2 (en) * | 2012-12-04 | 2015-09-29 | Sandisk Technologies Inc. | Bad column handling in flash memory |
US8898544B2 (en) * | 2012-12-11 | 2014-11-25 | International Business Machines Corporation | DRAM error detection, evaluation, and correction |
US9262263B2 (en) * | 2013-11-25 | 2016-02-16 | Qualcomm Incorporated | Bit recovery system |
US9780809B2 (en) * | 2015-04-30 | 2017-10-03 | Sandisk Technologies Llc | Tracking and use of tracked bit values for encoding and decoding data in unreliable memory |
US9484114B1 (en) * | 2015-07-29 | 2016-11-01 | Sandisk Technologies Llc | Decoding data using bit line defect information |
US9710329B2 (en) * | 2015-09-30 | 2017-07-18 | Sandisk Technologies Llc | Error correction based on historical bit error data |
KR101860809B1 (ko) | 2015-09-30 | 2018-07-06 | 서울대학교산학협력단 | 메모리 시스템 및 메모리 에러 정정 방법 |
FR3044817B1 (fr) * | 2015-12-02 | 2017-12-22 | St Microelectronics Rousset | Procede de gestion d'une ligne de bits defectueuse du plan memoire d'une memoire non volatile et dispositif de memoire correspondant |
US9823964B2 (en) * | 2015-12-08 | 2017-11-21 | Nvidia Corporation | Method for memory scrub of DRAM with internal error correcting code (ECC) bits during either memory activate and/or precharge operation |
US20190081640A1 (en) * | 2017-09-08 | 2019-03-14 | Intel Corporation | Faulty word line and faulty bit line information in error correcting coding |
KR102553780B1 (ko) | 2018-05-10 | 2023-07-10 | 에스케이하이닉스 주식회사 | 메모리 장치, 이를 포함하는 메모리 시스템 및 메모리 시스템의 동작 방법 |
US10761927B2 (en) | 2018-07-16 | 2020-09-01 | Taiwan Semiconductor Manufacturing Co., Ltd. | Detection and correction of data bit errors using error correction codes |
US10884940B2 (en) | 2018-12-21 | 2021-01-05 | Advanced Micro Devices, Inc. | Method and apparatus for using compression to improve performance of low voltage caches |
KR102748832B1 (ko) | 2019-08-29 | 2025-01-02 | 삼성전자주식회사 | 반도체 메모리 장치, 이를 포함하는 메모리 시스템 및 이의 리페어 제어 방법 |
JP7442386B2 (ja) | 2020-05-14 | 2024-03-04 | 東京エレクトロン株式会社 | 基板処理装置 |
KR20220102793A (ko) * | 2021-01-14 | 2022-07-21 | 에스케이하이닉스 주식회사 | 메모리 |
US11610640B1 (en) * | 2021-08-30 | 2023-03-21 | Taiwan Semiconductor Manufacturing Company Limited | Method for error correction coding with multiple hash groupings and device for performing the same |
-
2021
- 2021-10-21 KR KR1020210141366A patent/KR102387463B1/ko active IP Right Grant
-
2022
- 2022-04-29 US US17/733,559 patent/US11989422B2/en active Active
- 2022-06-02 EP EP22176963.1A patent/EP4170660A1/en active Pending
- 2022-07-27 CN CN202210890699.8A patent/CN116013396A/zh active Pending
- 2022-07-27 TW TW111128054A patent/TW202318432A/zh unknown
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20080046973A (ko) * | 2006-11-24 | 2008-05-28 | 삼성전자주식회사 | 메모리 세팅 조건을 결정하는 메모리 테스트 장치 및 그방법 |
KR101862379B1 (ko) * | 2013-04-19 | 2018-07-05 | 삼성전자주식회사 | Ecc 동작과 리던던시 리페어 동작을 공유하는 메모리 장치 |
KR20210012177A (ko) * | 2019-07-24 | 2021-02-03 | 삼성전자주식회사 | 반도체 메모리 장치 및 이의 동작 방법 |
KR20210026487A (ko) * | 2019-08-30 | 2021-03-10 | 삼성전자주식회사 | 휘발성 메모리 장치의 리페어 제어 방법 및 이를 수행하는 스토리지 장치 |
KR20210092391A (ko) * | 2020-01-16 | 2021-07-26 | 삼성전자주식회사 | 반도체 메모리 장치의 에러 정정 회로 및 반도체 메모리 장치 |
KR20210109085A (ko) * | 2020-02-26 | 2021-09-06 | 삼성전자주식회사 | 메모리 장치에 대한 테스트 방법, 메모리 장치를 테스트하는 테스트 장치의 동작 방법, 및 셀프-테스트 기능을 구비한 메모리 장치 |
Also Published As
Publication number | Publication date |
---|---|
US11989422B2 (en) | 2024-05-21 |
CN116013396A (zh) | 2023-04-25 |
US20230126954A1 (en) | 2023-04-27 |
EP4170660A1 (en) | 2023-04-26 |
TW202318432A (zh) | 2023-05-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11239960B2 (en) | Characterization of in-chip error correction circuits and related semiconductor memory devices/memory systems | |
KR102648774B1 (ko) | 랜더마이즈 동작을 수행하는 반도체 메모리 장치 | |
US9368234B2 (en) | Nonvolatile memory device and method of operating the same | |
KR102258140B1 (ko) | 반도체 메모리 장치의 에러 정정 회로, 반도체 메모리 장치 및 메모리 시스템 | |
US10795603B2 (en) | Systems and methods for writing zeros to a memory array | |
US10803971B2 (en) | Device for supporting error correction code and test method thereof | |
KR20170121798A (ko) | 반도체 메모리 장치 및 이의 동작 방법 | |
JP6164712B1 (ja) | フラッシュメモリ | |
KR20100093739A (ko) | 비휘발성 메모리 장치의 읽기 방법 | |
KR20190052754A (ko) | 적응적 온-다이 에러 체크 및 정정을 위한 반도체 메모리 장치 및 이를 포함하는 메모리 시스템 | |
US10748638B2 (en) | Memory controller and memory system having the same | |
US11515898B2 (en) | Error correction decoder, error correction circuit having the same, and method of operating the same | |
US11994945B2 (en) | Managing write disturb for units of memory in a memory sub-system | |
CN112542201A (zh) | 存储设备及操作该存储设备的方法 | |
TWI808098B (zh) | 用於支持錯誤更正碼的裝置及其測試方法 | |
US11003544B2 (en) | Memory system and method of operating the same | |
KR20160110774A (ko) | 메모리 장치 및 이를 포함하는 시스템 | |
KR102290032B1 (ko) | 컬럼 리던던시를 포함하는 메모리 장치 | |
CN110032466A (zh) | 数据存储装置及其操作方法 | |
KR102387463B1 (ko) | 메모리 장치, 전자 장치 및 메모리 장치의 동작 방법 | |
CN111108560B (zh) | 用于将零写入到存储器阵列的系统和方法 | |
US10923211B1 (en) | Efficient scrambling and encoding for copyback procedures in a memory subsystem | |
KR20220165482A (ko) | 메모리 장치, 그것을 포함하는 메모리 시스템 및 그것의 동작 방법 | |
CN118053467A (zh) | 存储器件、存储器件的操作方法和存储系统 | |
CN116798490A (zh) | 存储器系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PA0109 | Patent application |
Patent event code: PA01091R01D Comment text: Patent Application Patent event date: 20211021 |
|
PA0201 | Request for examination | ||
PA0302 | Request for accelerated examination |
Patent event date: 20211109 Patent event code: PA03022R01D Comment text: Request for Accelerated Examination Patent event date: 20211021 Patent event code: PA03021R01I Comment text: Patent Application |
|
PE0902 | Notice of grounds for rejection |
Comment text: Notification of reason for refusal Patent event date: 20211123 Patent event code: PE09021S01D |
|
E701 | Decision to grant or registration of patent right | ||
PE0701 | Decision of registration |
Patent event code: PE07011S01D Comment text: Decision to Grant Registration Patent event date: 20220216 |
|
GRNT | Written decision to grant | ||
PR0701 | Registration of establishment |
Comment text: Registration of Establishment Patent event date: 20220412 Patent event code: PR07011E01D |
|
PR1002 | Payment of registration fee |
Payment date: 20220413 End annual number: 3 Start annual number: 1 |
|
PG1601 | Publication of registration |