KR102511903B1 - 고정된 에러정정능력의 에러정정코드 엔진을 이용하여 재구성할 수 있는 에러정정동작을 수행하는 메모리 시스템 - Google Patents
고정된 에러정정능력의 에러정정코드 엔진을 이용하여 재구성할 수 있는 에러정정동작을 수행하는 메모리 시스템 Download PDFInfo
- Publication number
- KR102511903B1 KR102511903B1 KR1020180023020A KR20180023020A KR102511903B1 KR 102511903 B1 KR102511903 B1 KR 102511903B1 KR 1020180023020 A KR1020180023020 A KR 1020180023020A KR 20180023020 A KR20180023020 A KR 20180023020A KR 102511903 B1 KR102511903 B1 KR 102511903B1
- Authority
- KR
- South Korea
- Prior art keywords
- error correction
- ecc
- row
- product
- column
- Prior art date
- Legal status (The legal status 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 status listed.)
- Active
Links
- 238000012937 correction Methods 0.000 title claims abstract description 411
- 238000000034 method Methods 0.000 claims abstract description 109
- 230000008569 process Effects 0.000 claims abstract description 97
- 238000013523 data management Methods 0.000 claims description 33
- 230000004044 response Effects 0.000 claims description 25
- 238000006243 chemical reaction Methods 0.000 claims description 2
- 238000010586 diagram Methods 0.000 description 69
- 101000608720 Helianthus annuus 10 kDa late embryogenesis abundant protein Proteins 0.000 description 32
- 101000608734 Helianthus annuus 11 kDa late embryogenesis abundant protein Proteins 0.000 description 19
- 101000600488 Pinus strobus Putative phosphoglycerate kinase Proteins 0.000 description 13
- 101000617728 Homo sapiens Pregnancy-specific beta-1-glycoprotein 9 Proteins 0.000 description 12
- 102100021983 Pregnancy-specific beta-1-glycoprotein 9 Human genes 0.000 description 12
- 101150102573 PCR1 gene Proteins 0.000 description 9
- 230000008859 change Effects 0.000 description 9
- 101100519160 Arabidopsis thaliana PCR4 gene Proteins 0.000 description 7
- 238000012545 processing Methods 0.000 description 5
- 230000006870 function Effects 0.000 description 3
- 101100519159 Arabidopsis thaliana PCR3 gene Proteins 0.000 description 2
- 230000008901 benefit Effects 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
Images
Classifications
-
- 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
-
- 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/1012—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 codes or arrangements adapted for a specific type of error
-
- 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/1012—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 codes or arrangements adapted for a specific type of error
- G06F11/1032—Simple parity
-
- 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
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C11/00—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C11/02—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using magnetic elements
- G11C11/16—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using magnetic elements using elements in which the storage effect is based on magnetic spin effect
- G11C11/165—Auxiliary circuits
- G11C11/1653—Address circuits or decoders
- G11C11/1655—Bit-line or column circuits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C11/00—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C11/02—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using magnetic elements
- G11C11/16—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using magnetic elements using elements in which the storage effect is based on magnetic spin effect
- G11C11/165—Auxiliary circuits
- G11C11/1653—Address circuits or decoders
- G11C11/1657—Word-line or row circuits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C11/00—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C11/21—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
- G11C11/34—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
- G11C11/40—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
- G11C11/401—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors forming cells needing refreshing or charge regeneration, i.e. dynamic cells
- G11C11/4063—Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing
- G11C11/407—Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing for memory cells of the field-effect type
- G11C11/409—Read-write [R-W] circuits
-
- 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
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/03—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
- H03M13/05—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
- H03M13/11—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits using multiple parity bits
- H03M13/1102—Codes on graphs and decoding on graphs, e.g. low-density parity check [LDPC] codes
- H03M13/1105—Decoding
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/29—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes combining two or more codes or code structures, e.g. product codes, generalised product codes, concatenated codes, inner and outer codes
- H03M13/2906—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes combining two or more codes or code structures, e.g. product codes, generalised product codes, concatenated codes, inner and outer codes using block codes
- H03M13/2909—Product codes
-
- 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/0409—Online test
-
- 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
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C7/00—Arrangements for writing information into, or reading information out from, a digital store
- G11C7/10—Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
- G11C7/1006—Data managing, e.g. manipulating data before writing or reading out, data bus switches or control circuits therefor
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Probability & Statistics with Applications (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
- Detection And Correction Of Errors (AREA)
Abstract
Description
도 2는 도 1의 메모리 시스템의 메모리 미디어를 구성하는 메모리 어레이의 일 예 및 로우 프로덕트 코드와 컬럼 프로덕트 코드의 예를 나타내 보인 도면이다.
도 3은 도 1의 메모리 시스템의 에러정정모드 전환 과정을 설명하기 위해 나타내 보인 플로 챠트이다.
도 4는 도 1의 메모리 시스템에서 제1 에러정정모드로 수행되는 에러정정동작을 설명하기 위해 복수개의 코드워드들의 일 예를 나타내 보인 도면이다.
도 5는 도 3의 메모리 시스템에서 제2 에러정정모드로 수행되는 에러정정동작을 나타내 보인 플로챠트이다.
도 6은 도 1의 메모리 시스템에서 제2 에러정정모드에서의 에러정정동작을 위해 생성된 프로덕트 코드의 일 예를 나타내 보인 도면이다.
도 7은 도 5의 제2 에러정정모드에서의 에러정정동작 중 단계 442에서 로우 프로덕트 코드워드들을 생성하는 단계를 보다 상세하게 나타내 보인 플로 챠트이다.
도 8은 도 7의 단계 442-2 내지 단계 442-5를 수행하는 과정에서 도 1의 메모리 시스템의 메모리 컨트롤러 내에서의 데이터 이동을 나타내 보인 도면이다.
도 9는 도 7의 로우 프로덕트 코드워드들을 생성하는 단계들이 수행된 후에 메모리 컨트롤러 내의 제1 버퍼에 저장된 로우 프로덕트 코드워드들의 일 예를 나타내 보인 도면이다.
도 10은 도 5의 제2 에러정정모드에서의 에러정정동작 중 단계 443에서 컬럼 프로덕트 코드워드들을 생성하는 단계를 보다 상세하게 나타내 보인 플로 챠트이다.
도 11은 도 10의 단계 443-2 내지 단계 443-4를 수행하는 과정에서 도 1의 메모리 시스템의 메모리 컨트롤러 내에서의 데이터 이동을 나타내 보인 도면이다.
도 12는 도 10의 컬럼 프로덕트 코드워드들을 생성하는 단계들이 수행된 후에 메모리 컨트롤러 내의 제1 버퍼에 저장된 로우 프로덕트 코드워드들 및 컬럼 프로덕트 코드워드들의 일 예를 나타내 보인 도면이다.
도 13은 도 5의 제2 에러정정모드에서의 에러정정동작 중 단계 444에서 프로덕트 코드워드를 메모리 미디어에 쓰는 단계를 보다 상세하게 나타내 보인 플로 챠트이다.
도 14는 도 13의 단계 444-2 내지 단계 444-3을 수행하는 과정에서 도 1의 메모리 시스템의 메모리 컨트롤러 내에서의 데이터 이동을 나타내 보인 도면이다.
도 15는 도 13의 프로덕트 코드워드를 메모리 미디어에 쓰는 단계가 수행된 후에 메모리 미디어에 저장된 로우 프로덕트 코드워드들 및 컬럼 프로덕트 코드워드들의 일 예를 나타내 보인 도면이다.
도 16은 도 1의 메모리 시스템에서 프로덕트 코드워드를 구성하는 데이터에 대한 읽기 명령에 응답하여 제2 에러정정모드에서의 읽기 동작을 나타내 보인 플로챠트이다.
도 17은 도 16의 프로덕트 코드워드에 대한 읽기 동작에서 로우 방향의 ECC 디코딩을 수행하는 단계를 보다 상세하게 나타내 보인 플로 챠트이다.
도 18은 도 17의 단계 452-2 내지 단계 452-6을 수행하는 과정에서 도 1의 메모리 시스템의 메모리 컨트롤러 내에서의 데이터 이동을 나타내 보인 도면이다.
도 19는 도 17의 단계 452-2 내지 단계 452-6이 수행된 후에 메모리 컨트롤러 내의 제2 버퍼에 저장된 데이터심볼들 및 패리티심볼들의 일 예를 나타내 보인 도면이다.
도 20은 단계 452-7을 수행하는 과정에서 도 1의 메모리 시스템의 메모리 컨트롤러 내에서의 데이터 이동을 나타내 보인 도면이다.
도 21은 도 17의 단계 452-7이 수행된 후에 메모리 컨트롤러 내의 제2 버퍼에 저장된 데이터심볼들 및 패리티심볼들의 일 예를 나타내 보인 도면이다.
도 22는 도 16의 프로덕트 코드워드에 대한 읽기 동작에서 컬럼 방향의 ECC 디코딩을 수행하는 단계 453을 보다 상세하게 나타내 보인 플로 챠트이다.
도 23 및 도 24는 도 22의 단계 453-2 내지 단계 453-6을 수행하는 과정에서 도 1의 메모리 시스템의 메모리 컨트롤러 내에서의 데이터 이동을 나타내 보인 도면이다.
도 25 내지 도 30은, 각각 도 17의 단계 452-2 내지 단계 452-6 각각이 수행된 후에 메모리 컨트롤러 내의 제2 버퍼에 저장된 데이터심볼들 및 패리티심볼들의 일 예를 나타내 보인 도면들이다.
도 31은 도 16의 프로덕트 코드워드에 대한 읽기 동작에서 컬럼 방향의 ECC 디코딩을 수행하는 단계 454를 보다 상세하게 나타내 보인 플로 챠트이다.
도 32는 도 31의 단계 454-1 내지 단계 454-3을 수행하는 과정에서 도 1의 메모리 시스템의 메모리 컨트롤러 내에서의 데이터 이동을 나타내 보인 도면이다.
도 33 내지 도 35는 본 개시의 일 예에 따른 메모리 시스템에서 고정된 ECC 엔진을 이용하여 에러정정능력 이상으로 발생된 에러들을 정정하는 과정을 설명하기 위해 나타내 보인 도면들이다.
도 36은 도 1의 메모리 시스템에서 프로덕트 코드워드를 구성하는 데이터 저장영역에 대한 쓰기 명령에 응답하여 제2 에러정정모드에서의 쓰기 동작을 나타내 보인 플로챠트이다.
도 37은 도 36의 프로덕트 코드워드에 대한 쓰기 동작에서 단계 462의 첫번째 로우 방향의 ECC 디코딩을 수행하는 단계를 보다 상세하게 나타내 보인 플로 챠트이다.
도 38은 도 37의 단계 462-2 내지 단계 462-6을 수행하는 과정에서 도 1의 메모리 시스템의 메모리 컨트롤러 내에서의 데이터 이동을 나타내 보인 도면이다.
도 39는 도 37의 단계 462-2 내지 단계 462-6이 수행된 후에 메모리 컨트롤러 내의 제2 버퍼에 저장된 데이터심볼들 및 패리티심볼들의 일 예를 나타내 보인 도면이다.
도 40은 도 37의 단계 462-7을 수행하는 과정에서 도 1의 메모리 시스템의 메모리 컨트롤러 내에서의 데이터 이동을 나타내 보인 도면이다.
도 41은 도 37의 단계 462-7이 수행된 후에 메모리 컨트롤러 내의 제2 버퍼에 저장된 데이터심볼들 및 패리티심볼들의 일 예를 나타내 보인 도면이다.
도 42는 도 36의 프로덕트 코드워드에 대한 쓰기 동작에서 컬럼 방향의 ECC 디코딩을 수행하는 단계 463을 보다 상세하게 나타내 보인 플로 챠트이다.
도 43 및 도 44는 도 42의 단계 463-2 내지 단계 463-6을 수행하는 과정에서 도 1의 메모리 시스템의 메모리 컨트롤러 내에서의 데이터 이동을 나타내 보인 도면들이다.
도 45는, 도 37의 단계 462-2 내지 단계 462-6이 수행된 후에 메모리 컨트롤러 내의 제2 버퍼에 저장된 데이터심볼들 및 패리티심볼들의 일 예를 나타내 보인 도면이다.
도 46은 도 36의 프로덕트 코드워드에 대한 쓰기 동작에서 쓰기 데이터 병합을 수행하는 단계 464를 보다 상세하게 나타내 보인 플로 챠트이다.
도 47은 도 46의 단계 464-2 내지 단계 464-4를 수행하는 과정에서 도 1의 메모리 시스템의 메모리 컨트롤러 내에서의 데이터 이동을 나타내 보인 도면이다.
도 48은 도 46의 단계 464-5가 수행되기 전의 데이터 관리부에 임시 저장된 데이터의 일 예를 나타내 보인 도면이다.
도 49는 도 46의 단계 464-5가 수행된 후에 데이터 관리부에 저장되는 데이터의 일 예를 나타내 보인 도면이다.
도 50은 도 36의 프로덕트 코드워드에 대한 쓰기 동작에서 로우 방향의 ECC 인코딩을 수행하는 단계 466을 보다 상세하게 나타내 보인 플로 챠트이다.
도 51은 도 50의 단계 466-1 내지 단계 466-6을 수행하는 과정에서 도 1의 메모리 시스템의 메모리 컨트롤러 내에서의 데이터 이동을 나타내 보인 도면이다.
도 52는 도 36의 단계 프로덕트 코드워드에 대한 쓰기 동작에서 로우 방향의 ECC 인코딩을 수행하는 단계 466을 수행한 후의 제1 버퍼에 저장된 데이터의 일 예를 나타내 보인 도면이다.
도 53은 도 36의 프로덕트 코드워드에 대한 쓰기 동작에서 컬럼 방향의 ECC 인코딩을 수행하는 단계 467을 보다 상세하게 나타내 보인 플로 챠트이다.
도 54는 도 53의 단계 467-2 내지 단계 467-6을 수행하는 과정에서 도 1의 메모리 시스템의 메모리 컨트롤러 내에서의 데이터 이동을 나타내 보인 도면이다.
도 55는 도 36의 단계 프로덕트 코드워드에 대한 쓰기 동작에서 컬럼 방향의 ECC 인코딩을 수행하는 단계 467을 수행한 후의 제1 버퍼에 저장된 데이터의 일 예를 나타내 보인 도면이다.
도 56은 도 36의 프로덕트 코드워드에 대한 쓰기 동작에서 메모리 미디어로의 쓰기를 수행하는 단계 468을 보다 상세하게 나타내 보인 플로 챠트이다.
도 57은 도 56의 단계 468-2 내지 단계 468-5를 수행하는 과정에서 도 1의 메모리 시스템의 메모리 컨트롤러 내에서의 데이터 이동을 나타내 보인 도면이다.
도 58은 도 36의 프로덕트 코드워드에 대한 쓰기 동작에서 메모리 미디어로의 쓰기를 수행하는 단계 468을 수행한 후의 메모리 미디어에 저장된 데이터의 일 예를 나타내 보인 도면이다.
도 59는 도 1의 메모리 시스템에서 제2 에러정정모드로 수행되는 에러정정동작의 다른 예를 나타내 보인 플로챠트이다.
도 60 내지 도 62는 도 59의 에러정정동작의 일 예를 설명하기 위해 나타내 보인 도면들이다.
도 63은 도 1의 메모리 시스템에서 제2 에러정정모드로 수행되는 에러정정동작의 또 다른 예를 나타내 보인 플로챠트이다.
도 64 및 도 65는 도 63의 에러정정동작의 일 예를 설명하기 위해 나타내 보인 도면들이다.
300...메모리 컨트롤러 301...미디어측 물리층
302...호스트측 물리층 310...ECC 엔진
311...ECC 인코더 312...ECC 디코더
320...데이터 관리부 331...제1 버퍼
332...제2 버퍼 341-343...제1 내지 제3 멀티플렉서
344-346...제1 내지 제3 디멀티플렉서
350...명령제어부 360...스케줄러
370...PC(Product Code) 제어부 380...마이크로컨트롤러(MCU)
390...에러 로그 PC...프로덕트 코드
PCR...로우 프로덕트 코드 PCC...컬럼 프로덕트 코드
PCW...프로덕트 코드워드 PCWR...로우 프로덕트 코드워드
PCWC...컬럼 프로덕트 코드워드 DS...데이터심볼
PS...패리티심볼
Claims (26)
- 복수개의 로우들 및 컬럼들의 교차점들 각각에 데이터심볼 또는 패리티심볼이 배치되어 구성되는 메모리 미디어; 및
상기 메모리 미디어에 대한 액세스 과정에서 고정된 에러정정레벨에 따른 에러정정동작을 수행하도록 설계된 에러정정코드(ECC) 엔진을 갖는 메모리 컨트롤러를 포함하되,
상기 메모리 컨트롤러는,
제1 에러정정모드에서 상기 에러정정코드(ECC) 엔진을 이용하여 상기 고정된 에러정정레벨에 따른 에러정정동작을 수행하고, 그리고
일정 조건에서 상기 제1 에러정정모드에서 제2 에러정정모드로 전환하고, 상기 제2 에러정정모드에서 상기 에러정정코드(ECC) 엔진을 이용하여 상기 고정된 에러정정레벨보다 높은 에러정정레벨의 에러정정동작을 수행하도록 구성되며,
상기 메모리 컨트롤러는, 상기 제2 에러정정모드에서의 에러정정동작을 수행하여, 데이터심볼들 및 패리티심볼들로 구성되는 M개(M은 자연수)의 로우 프로턱트 코드워드와 패리티심볼들로 구성되는 i개(i는 자연수)의 로우 프로덕트 코드워드들, 및 데이터심볼들 및 패리티심볼들로 구성되는 N개(N은 자연수)의 컬럼 프로덕트 코드워드와 패리티심볼들로 구성되는 j개(j는 자연수)의 컬럼 프로덕트 코드워드들로 구성되는 프로덕트 코드워드를 상기 메모리 미디어에 저장하되,
상기 M개의 로우 프로덕트 코드워드들 중 L번(L은 M보다 같거나 작은 자연수)째 로우 프로덕트 코드워드의 데이터심볼들에 대한 읽기 명령이 발생되면,
상기 M개의 로우 프로덕트 코드워드들 각각에 대한 로우 방향의 에러정정코드(ECC) 디코딩을 수행하고,
상기 (N+j)개의 컬럼 프로덕트 코드워드들 각각에 대한 컬럼 방향의 에러정정코드(ECC) 디코딩을 수행하며, 그리고
상기 컬럼 방향의 에러정정코드(ECC) 디코딩된 결과에서 상기 L번째 로우 프로덕트 코드워드에 대한 로우 방향의 에러정정코드(ECC) 디코딩을 수행하여 호스트로 전송하는 메모리 시스템. - ◈청구항 2은(는) 설정등록료 납부시 포기되었습니다.◈제1항에 있어서,
상기 메모리 미디어의 로우들 중 적어도 M개의 로우들 각각은 데이터심볼들 및 패리티심볼들로 구성되고, i개의 로우들 각각은 패리티심볼들로만 구성되며, 그리고
상기 메모리 미디어의 컬럼들 중 적어도 N개의 컬럼들 각각은 데이터심볼들 및 패리티심볼들로 구성되고, j개의 컬럼들 각각은 패리티심볼들로만 구성되는 메모리 시스템. - ◈청구항 3은(는) 설정등록료 납부시 포기되었습니다.◈제1항에 있어서, 상기 메모리 컨트롤러는,
상기 메모리 미디어에 대한 액세스 과정에서 발생되는 에러 개수가 설정값보다 작은 경우 상기 제1 에러정정모드의 에러정정동작을 수행하고, 그리고
상기 메모리 미디어에 대한 액세스 과정에서 발생되는 에러 개수가 설정값 이상인 경우 상기 제2 에러정정모드의 에러정정동작을 수행하는 메모리 시스템. - ◈청구항 4은(는) 설정등록료 납부시 포기되었습니다.◈제3항에 있어서,
상기 설정값은 상기 고정된 에러정정레벨에 의해 고정된 에러정정능력보다 같거나 작은값으로 설정되는 메모리 시스템. - ◈청구항 5은(는) 설정등록료 납부시 포기되었습니다.◈제1항에 있어서, 상기 에러정정코드(ECC) 엔진은,
상기 메모리 미디어에 대한 쓰기 과정에서, 쓰기 데이터심볼들에 대한 에러정정코드(ECC) 인코딩을 수행하여 상기 쓰기 데이터심볼들 및 패리티심볼들을 포함하는 코드워드를 출력하는 에러정정코드(ECC) 인코더; 및
상기 메모리 미디어에 대한 읽기 과정에서, 상기 코드워드에 대한 에러정정코드(ECC) 디코딩을 수행하여 에러가 정정된 읽기 데이터심볼들을 출력하는 에러정정코드(ECC) 디코더를 포함하는 메모리 시스템. - ◈청구항 6은(는) 설정등록료 납부시 포기되었습니다.◈제5항에 있어서,
상기 에러정정코드(ECC) 인코딩에 의해 생성되는 상기 패리티심볼들의 개수와, 상기 에러정정코드(ECC) 디코딩에 의해 에러가 정정될 수 있는 데이터심볼의 개수는 상기 고정된 에러정정레벨에 의해 고정값으로 정해져 있는 메모리 시스템. - ◈청구항 7은(는) 설정등록료 납부시 포기되었습니다.◈제1항에 있어서, 상기 메모리 컨트롤러는,
어느 하나의 로우를 구성하는 데이터심볼들 및 패리티심볼들에 대해 상기 제1 에러정정모드에서의 에러정정동작을 수행하고, 그리고
상기 복수개의 로우들 각각을 공유하는 데이터심볼들 및 패리티심볼들과, 복수개의 컬럼들 각각을 공유하는 데이터심볼들 또는 패리티심볼들로 구성되는 프로덕트 코드에 대해 상기 제2 에러정정모드에서의 에러정정동작을 수행하는 메모리 시스템. - ◈청구항 8은(는) 설정등록료 납부시 포기되었습니다.◈제1항에 있어서,
상기 메모리 컨트롤러는, 상기 제1 에러정정모드에서 상기 제2 에러정정모드로 전환되면, (M+i)개의 로우 프로덕트 코드들 및 (N+j)개의 컬럼 프로덕트 코드들로 구성되는 프로덕트 코드를 생성하되,
M개의 로우 프로덕트 코드들 각각은 로우를 공유하는 데이터심볼들 및 패리티심볼들로 구성되고,
i개의 로우 프로덕트 코드들 각각은 패리티 비트값을 갖지 않은 패리티심볼들로 구성되고,
N개의 컬럼 프로덕트 코드들 각각은 컬럼을 공유하는 데이터심볼들 및 패리티 비트값을 갖지 않는 패리티심볼들로 구성되며, 그리고
j개의 컬럼 프로덕트 코드들 각각은 컬럼을 공유하는 패리티심볼들로 구성되는 메모리 시스템. - ◈청구항 9은(는) 설정등록료 납부시 포기되었습니다.◈제8항에 있어서, 상기 메모리 컨트롤러는,
상기 M개의 로우 프로덕트 코드들 각각에 대한 로우 방향의 에러정정코드(ECC) 디코딩, 및 에러정정코드(ECC) 디코딩된 데이터심볼들에 대한 로우 방향의 에러정정코드(ECC) 인코딩을 수행하여, M개의 로우 프로덕트 코드워드들을 생성하는 메모리 시스템. - ◈청구항 10은(는) 설정등록료 납부시 포기되었습니다.◈제9항에 있어서, 상기 메모리 컨트롤러는,
제1 버퍼에 저장된 N개의 컬럼들 각각의 데이터심볼들 및 j개의 컬럼들 각각의 패리티심볼에 대해 컬럼 방향의 에러정정코드(ECC) 인코딩을 수행하여, (N+j)개의 컬럼 프로덕트 코드워드들 및 i개의 로우 프로덕트 코드워드들을 생성하는 메모리 시스템. - ◈청구항 11은(는) 설정등록료 납부시 포기되었습니다.◈제10항에 있어서, 상기 메모리 컨트롤러는,
상기 (M+i)개의 로우 프로덕트 코드워드들 및 상기 (N+j)개의 컬럼 프로덕트 코드워드들로 구성되는 프로덕트 코드워드를 상기 메모리 미디어에 저장하는 메모리 시스템. - ◈청구항 12은(는) 설정등록료 납부시 포기되었습니다.◈제11항에 있어서, 상기 메모리 컨트롤러는,
상기 제2 에러정정모드에서, 상기 (M+i)개의 로우 프로덕트 코드워드들에 대한 로우 방향의 에러정정동작들 및 상기 (N+j)개의 컬럼 프로덕트 코드워드들에 대한 컬럼 방향의 에러정정동작들을 순차적으로 수행하는 메모리 시스템. - ◈청구항 13은(는) 설정등록료 납부시 포기되었습니다.◈제11항에 있어서, 상기 메모리 컨트롤러는,
상기 제2 에러정정모드에서, 상기 (N+j)개의 컬럼 프로덕트 코드워드들에 대한 컬럼 방향의 에러정정동작들 및 상기 (M+i)개의 로우 프로덕트 코드워드들에 대한 로우 방향의 에러정정동작들을 순차적으로 수행하는 메모리 시스템. - ◈청구항 14은(는) 설정등록료 납부시 포기되었습니다.◈제11항에 있어서, 상기 메모리 컨트롤러는,
상기 제2 에러정정모드에서, 상기 M개의 로우 프로덕트 코드워드들 중 적어도 하나 이상의 로우 프로덕트 코드워드의 데이터심볼을 로우 방향으로 쉬프트시킨 후에 상기 제2 에러정정모드에서의 에러정정동작을 수행하는 메모리 시스템. - 삭제
- ◈청구항 16은(는) 설정등록료 납부시 포기되었습니다.◈제1항에 있어서,
상기 M개의 로우 프로덕트 코드워드들 중 L번째(L은 M보다 같거나 작은 자연수) 로우 프로덕트 코드워드의 로우 어드레스를 갖는 저장영역으로의 쓰기 명령이 발생되면,
상기 M개의 로우 프로덕트 코드워드들 각각에 대한 첫번째 로우 방향의 에러정정코드(ECC) 디코딩을 수행하고,
상기 (N+j)개의 컬럼 프로덕트 코드워드들 각각에 대한 컬럼 방향의 에러정정코드(ECC) 디코딩을 수행하고,
상기 M개의 로우 프로덕트 코드워드들 각각에 대한 두번째 로우 방향의 에러정정코드(ECC) 디코딩을 수행하고,
상기 두번째 로우 방향의 에러정정코드(ECC) 디코딩된 데이터심볼들 중 L번째 로우의 데이터심볼들에 쓰기 데이터심볼들을 병합시키고,
병합이 이루어진 데이터심볼들에 대해 로우를 공유하는 데이터심볼들 단위로 로우 방향의 에러정정코드(ECC) 인코딩을 수행하고,
상기 로우 방향의 에러정정코드(ECC) 인코딩된 데이터심볼들 및 패리티심볼들에 대해 컬럼을 공유하는 데이터심볼들 및 패리티심볼들 단위로 컬럼 방향의 에러정정코드(ECC) 인코딩을 수행하며, 그리고
상기 컬럼 방향의 에러정정코드(ECC) 인코딩된 데이터심볼들 및 패리티심볼들을 상기 메모리 미디어에 전송하는 메모리 시스템. - ◈청구항 17은(는) 설정등록료 납부시 포기되었습니다.◈제1항에 있어서, 상기 메모리 컨트롤러는,
상기 메모리 미디어에 대한 액세스 과정에서 데이터를 임시로 저장하는 데이터 관리부;
상기 메모리 미디어에 대한 쓰기 과정에서, 쓰기 데이터심볼들에 대한 에러정정코드(ECC) 인코딩을 수행하여 상기 쓰기 데이터심볼들 및 패리티심볼들을 포함하는 코드워드를 출력하는 에러정정코드(ECC) 인코더;
상기 메모리 미디어에 대한 읽기 과정에서, 상기 코드워드에 대한 에러정정코드(ECC) 디코딩을 수행하여 에러가 정정된 읽기 데이터심볼들을 출력하는 에러정정코드(ECC) 디코더;
상기 에러정정코드(ECC)에 의한 에러정정코드(ECC) 디코딩에 의한 에러 관련 정보를 입력받아 저장하는 에러 로그;
상기 에러 로그에 저장된 에러 관련 정보를 분석하여 상기 제1 에러정정모드에서 상기 제2 에러정정모드로의 전환 여부를 결정하는 마이크로컨트롤러;
상기 마이크로컨트롤러에 의한 제2 에러정정모드로의 전환에 따라 상기 제2 에러정정모드에서의 에러정정동작에 필요한 제어신호들을 발생시키는 프로덕트 코드 제어부;
상기 제2 에러정정모드에서 상기 에러정정코드(ECC) 인코더로부터 출력되는 데이터를 저장하는 제1 버퍼; 및
상기 제2 에러정정모드에서 상기 에러정정코드(ECC) 디코더로부터 출력되는 데이터를 저장하는 제2 버퍼를 포함하는 메모리 시스템. - ◈청구항 18은(는) 설정등록료 납부시 포기되었습니다.◈제17항에 있어서,
상기 제1 버퍼 및 제2 버퍼는 로우 방향으로의 데이터 액세스 및 컬럼 방향으로의 데이터 액세스가 모두 가능하도록 구성되는 메모리 시스템. - ◈청구항 19은(는) 설정등록료 납부시 포기되었습니다.◈제17항에 있어서,
상기 프로덕트 코드 제어부로부터의 제어신호에 응답하여, 상기 메모리 미디어로부터의 데이터 또는 상기 제2 버퍼로부터의 데이터를 상기 에러정정코드(ECC) 디코더로 입력시키는 제1 멀티플렉서;
상기 프로덕트 코드 제어부로부터의 제어신호에 응답하여, 상기 에러정정코드(ECC) 인코더로부터의 데이터를 상기 제1 버퍼 또는 상기 메모리 미디어로 전송하는 제1 디멀티플렉서;
상기 프로덕트 코드 제어부로부터의 제어신호에 응답하여, 상기 에러정정코드(ECC) 디코더로부터 출력되는 데이터를 입력받아 제1 출력라인을 통해 상기 제2 버퍼에 전송하거나 제2 출력라인으로 출력시키는 제2 디멀티플렉서;
상기 프로덕트 코드 제어부로부터의 제어신호에 응답하여, 상기 제2 디멀티플렉서의 상기 제2 출력라인으로부터 출력되는 데이터를 입력받아 제1 출력라인을 통해 상기 데이터 관리부로 전송하거나 제2 출력라인으로 출력시키는 제3 디멀티플렉서;
상기 프로덕트 코드 제어부로부터의 제어신호에 응답하여, 상기 제3 디멀티플렉서의 상기 제2 출력라인으로부터 출력되는 데이터 또는 상기 데이터 관리부로부터 출력되는 데이터를 출력하는 제2 멀티플렉서; 및
상기 프로덕트 코드 제어부로부터의 제어신호에 응답하여, 상기 제2 멀티플렉서로부터 출력되는 데이터 또는 상기 제1 버퍼로부터 출력되는 데이터를 상기 에러정정코드(ECC) 인코더에 입력시키는 제3 멀티플렉서를 더 포함하는 메모리 시스템. - ◈청구항 20은(는) 설정등록료 납부시 포기되었습니다.◈제18항에 있어서,
상기 에러정정코드(ECC) 인코더는, 상기 프로덕트 코드 제어부로부터의 인코딩 디스에이블 제어신호에 응답하여, 입력되는 데이터에 대한 에러정정코드(ECC) 인코딩을 수행하지 않고 출력시키도록 구성되고, 그리고
상기 에러정정코드(ECC) 디코더는, 상기 프로덕트 코드 제어부로부터의 디코딩 디스에이블 제어신호에 응답하여, 입력되는 데이터에 대한 에러정정코드(ECC) 디코딩을 수행하지 않고 출력시키도록 구성되는 메모리 시스템. - 복수개의 로우들 및 컬럼들의 교차점들 각각에 데이터심볼 또는 패리티심볼이 배치되어 구성되는 메모리 미디어; 및
상기 메모리 미디어에 대한 액세스 과정에서 고정된 에러정정레벨에 따른 제1 에러정정모드에서의 에러정정동작을 수행하도록 설계된 에러정정코드(ECC) 엔진을 갖는 메모리 컨트롤러를 포함하되,
상기 메모리 컨트롤러는,
상기 제1 에러정정모드에서 에러가 정정되지 않는 경우 제2 에러정정모드로 전환하여, 데이터심볼들 및 패리티심볼들로 구성되는 M개(M은 자연수)의 로우 프로턱트 코드워드와 패리티심볼들로 구성되는 i개(i는 자연수)의 로우 프로덕트 코드워드들, 및 데이터심볼들 및 패리티심볼들로 구성되는 N개(N은 자연수)의 컬럼 프로덕트 코드워드와 패리티심볼들로 구성되는 j개(j는 자연수)의 컬럼 프로덕트 코드워드들로 구성되는 프로덕트 코드워드를 생성하고, 생성된 상기 프로덕트 코드워드를 대상으로 에러정정코드(ECC) 엔진을 이용한 에러정정동작을 수행하도록 구성되며,
상기 메모리 컨트롤러는,
상기 M개의 로우 프로덕트 코드워드들 중 L번째(L은 M보다 같거나 작은 자연수) 로우 프로덕트 코드워드의 로우 어드레스를 갖는 저장영역으로의 쓰기 명령이 발생되면,
상기 M개의 로우 프로덕트 코드워드들 각각에 대한 첫번째 로우 방향의 에러정정코드(ECC) 디코딩을 수행하고,
상기 (N+j)개의 컬럼 프로덕트 코드워드들 각각에 대한 컬럼 방향의 에러정정코드(ECC) 디코딩을 수행하고,
상기 M개의 로우 프로덕트 코드워드들 각각에 대한 두번째 로우 방향의 에러정정코드(ECC) 디코딩을 수행하고,
상기 두번째 로우 방향의 에러정정코드(ECC) 디코딩된 데이터심볼들 중 L번째 로우의 데이터심볼들에 쓰기 데이터심볼들을 병합시키고,
병합이 이루어진 데이터심볼들에 대해 로우를 공유하는 데이터심볼들 단위로 로우 방향의 에러정정코드(ECC) 인코딩을 수행하고,
상기 로우 방향의 에러정정코드(ECC) 인코딩된 데이터심볼들 및 패리티심볼들에 대해 컬럼을 공유하는 데이터심볼들 및 패리티심볼들 단위로 컬럼 방향의 에러정정코드(ECC) 인코딩을 수행하며, 그리고
상기 컬럼 방향의 에러정정코드(ECC) 인코딩된 데이터심볼들 및 패리티심볼들을 상기 메모리 미디어에 전송하는 메모리 시스템. - ◈청구항 22은(는) 설정등록료 납부시 포기되었습니다.◈제21항에 있어서, 상기 메모리 컨트롤러는,
(M+i)개의 로우 프로덕트 코드들 및 (N+j)개의 컬럼 프로덕트 코드들로 구성되는 프로덕트 코드를 생성하고,
상기 로우 프로덕트 코드들 중 데이터심볼을 포함하는 로우 프로덕트 코드들에 대한 로우 방향의 에러정정코드(ECC) 인코딩을 수행하여 상기 로우 프로덕트 코드워드들을 생성하고,
상기 컬럼 프로덕트 코드들에 대한 컬럼 방향의 에러정정코드(ECC) 인코딩을 수행하여 상기 컬럼 프로덕트 코드워드들을 생성하며, 그리고
상기 로우 프로덕트 코드워드들 및 컬럼 프로덕트 코드워드들로 이루어진 프로덕트 코드워드를 상기 메모리 미디어에 쓰도록 구성되는 메모리 시스템. - ◈청구항 23은(는) 설정등록료 납부시 포기되었습니다.◈제21항에 있어서, 상기 메모리 컨트롤러는,
상기 M개의 로우 프로덕트 코드워드들 중 L번(L은 M보다 같거나 작은 자연수)째 로우 프로덕트 코드워드의 데이터심볼들에 대한 읽기 명령이 발생되면,
상기 M개의 로우 프로덕트 코드워드들 각각에 대한 제1 로우 방향의 에러정정코드(ECC) 디코딩을 수행하고,
상기 (N+j)개의 컬럼 프로덕트 코드워드들 각각에 대한 컬럼 방향의 에러정정코드(ECC) 디코딩을 수행하며, 그리고
상기 컬럼 방향의 에러정정코드(ECC) 디코딩된 결과에서 상기 L번째 로우 프로덕트 코드워드에 대한 제2 로우 방향의 에러정정코드(ECC) 디코딩을 수행하여 호스트로 전송하는 메모리 시스템. - 삭제
- 삭제
- 삭제
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020180023020A KR102511903B1 (ko) | 2018-02-26 | 2018-02-26 | 고정된 에러정정능력의 에러정정코드 엔진을 이용하여 재구성할 수 있는 에러정정동작을 수행하는 메모리 시스템 |
TW107142019A TWI787401B (zh) | 2018-02-26 | 2018-11-26 | 使用具有固定的錯誤校正能力的錯誤校正碼引擎來執行可重組態的錯誤校正操作之記憶體系統 |
US16/203,362 US10847246B2 (en) | 2018-02-26 | 2018-11-28 | Memory systems performing reconfigurable error correction operation using ECC engine with fixed error correction capability |
CN201811477683.4A CN110196783B (zh) | 2018-02-26 | 2018-12-05 | 使用ecc引擎执行可重配置的错误校正操作的存储系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020180023020A KR102511903B1 (ko) | 2018-02-26 | 2018-02-26 | 고정된 에러정정능력의 에러정정코드 엔진을 이용하여 재구성할 수 있는 에러정정동작을 수행하는 메모리 시스템 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20190102533A KR20190102533A (ko) | 2019-09-04 |
KR102511903B1 true KR102511903B1 (ko) | 2023-03-21 |
Family
ID=67751419
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020180023020A Active KR102511903B1 (ko) | 2018-02-26 | 2018-02-26 | 고정된 에러정정능력의 에러정정코드 엔진을 이용하여 재구성할 수 있는 에러정정동작을 수행하는 메모리 시스템 |
Country Status (4)
Country | Link |
---|---|
US (1) | US10847246B2 (ko) |
KR (1) | KR102511903B1 (ko) |
CN (1) | CN110196783B (ko) |
TW (1) | TWI787401B (ko) |
Families Citing this family (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20210010718A (ko) * | 2019-07-17 | 2021-01-28 | 에스케이하이닉스 주식회사 | 메모리 시스템 및 메모리 시스템에서의 에러정정방법 |
US10963336B2 (en) | 2019-08-29 | 2021-03-30 | Micron Technology, Inc. | Semiconductor device with user defined operations and associated methods and systems |
US11200118B2 (en) | 2019-08-29 | 2021-12-14 | Micron Technology, Inc. | Semiconductor device with modified command and associated methods and systems |
US11042436B2 (en) | 2019-08-29 | 2021-06-22 | Micron Technology, Inc. | Semiconductor device with modified access and associated methods and systems |
KR102784280B1 (ko) * | 2019-10-31 | 2025-03-21 | 삼성전자주식회사 | 메모리 컨트롤러, 메모리 시스템 및 메모리 모듈 |
DE102020134945A1 (de) | 2020-02-27 | 2021-09-02 | Taiwan Semiconductor Manufacturing Co., Ltd. | Dynamische fehlerüberwachung und -reparatur |
CN113495674B (zh) | 2020-04-01 | 2023-10-10 | 长鑫存储技术有限公司 | 读写方法及存储器装置 |
CN113495671B (zh) | 2020-04-01 | 2023-10-17 | 长鑫存储技术有限公司 | 读写方法及存储器装置 |
EP3985494B1 (en) | 2020-04-01 | 2024-01-17 | Changxin Memory Technologies, Inc. | Read-write method and memory device |
CN113495675B (zh) | 2020-04-01 | 2023-08-11 | 长鑫存储技术有限公司 | 读写方法及存储器装置 |
EP3936996A4 (en) | 2020-04-01 | 2022-07-06 | Changxin Memory Technologies, Inc. | READ-WRITE METHOD AND STORAGE DEVICE |
EP3964941B1 (en) | 2020-04-01 | 2024-02-28 | Changxin Memory Technologies, Inc. | Read-write method and memory device |
EP3964940A4 (en) | 2020-04-01 | 2022-08-17 | Changxin Memory Technologies, Inc. | READ/WRITE METHOD AND STORAGE DEVICE |
CN113495672B (zh) | 2020-04-01 | 2023-08-11 | 长鑫存储技术有限公司 | 读写方法及存储器装置 |
US11675731B2 (en) * | 2020-08-20 | 2023-06-13 | Global Unichip Corporation | Data protection system and method thereof for 3D semiconductor device |
US11972822B2 (en) | 2021-09-24 | 2024-04-30 | Sandisk Technologies Llc | Programmable ECC for MRAM mixed-read scheme |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20150169397A1 (en) * | 2013-12-16 | 2015-06-18 | International Business Machines Corporation | Extension of product codes with applications to tape and parallel channels |
US20150309875A1 (en) * | 2014-04-25 | 2015-10-29 | International Business Machines Corporation | Error-correction encoding and decoding |
Family Cites Families (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4653051A (en) * | 1983-09-14 | 1987-03-24 | Matsushita Electric Industrial Co., Ltd. | Apparatus for detecting and correcting errors on product codes |
US6048090A (en) * | 1997-04-23 | 2000-04-11 | Cirrus Logic, Inc. | Error correction and concurrent verification of a product code |
JP2000349652A (ja) * | 1999-06-07 | 2000-12-15 | Hitachi Ltd | 誤り訂正手段を備えた記憶装置 |
EP1223578A3 (en) * | 2000-12-12 | 2008-07-16 | Kabushiki Kaisha Toshiba | Data processing method using error-correcting code and an apparatus using the same method |
JP2005242797A (ja) * | 2004-02-27 | 2005-09-08 | Oki Electric Ind Co Ltd | エラー訂正回路 |
US20070283223A1 (en) * | 2006-06-01 | 2007-12-06 | International Business Machines Corporation | Systems, methods, and computer program products for providing a two-bit symbol bus error correcting code with all checkbits transferred last |
US8046660B2 (en) * | 2006-08-07 | 2011-10-25 | Marvell World Trade Ltd. | System and method for correcting errors in non-volatile memory using product codes |
KR20080076613A (ko) * | 2007-02-16 | 2008-08-20 | 삼성전자주식회사 | 연접코드를 이용한 인코더/디코더 및 그의 인코딩/디코딩방법 |
US8230305B2 (en) * | 2009-04-02 | 2012-07-24 | Micron Technology, Inc. | Extended single-bit error correction and multiple-bit error detection |
US8996958B2 (en) * | 2010-01-28 | 2015-03-31 | International Business Machines Corporation | Method, device and computer program product for decoding a codeword |
US8806295B2 (en) * | 2012-05-24 | 2014-08-12 | International Business Machines Corporation | Mis-correction and no-correction rates for error control |
KR101550762B1 (ko) * | 2013-11-29 | 2015-09-08 | 한국과학기술원 | 연접 오류 정정 장치 |
US10146482B2 (en) * | 2014-08-01 | 2018-12-04 | Toshiba Memory Corporation | Global error recovery system |
US9606868B2 (en) * | 2015-05-04 | 2017-03-28 | International Business Machines Corporation | Encoding and writing of data on multitrack tape |
KR20170001777A (ko) | 2015-06-25 | 2017-01-05 | 에스케이하이닉스 주식회사 | 컨트롤러, 반도체 메모리 시스템 및 그것의 동작 방법 |
US10193576B2 (en) * | 2015-10-30 | 2019-01-29 | Toshiba Memory Corporation | Memory system and memory device |
US9946596B2 (en) * | 2016-01-29 | 2018-04-17 | Toshiba Memory Corporation | Global error recovery system |
US10439649B2 (en) * | 2016-02-03 | 2019-10-08 | SK Hynix Inc. | Data dependency mitigation in decoder architecture for generalized product codes for flash storage |
US10201026B1 (en) * | 2016-06-30 | 2019-02-05 | Acacia Communications, Inc. | Forward error correction systems and methods |
US10348334B2 (en) * | 2016-10-25 | 2019-07-09 | International Business Machines Corporation | Reducing a decoding error floor by post-processing codewords encoded by binary symmetry-invariant product codes |
US10291258B2 (en) * | 2017-05-25 | 2019-05-14 | Advanced Micro Devices, Inc. | Error correcting code for correcting single symbol errors and detecting double bit errors |
-
2018
- 2018-02-26 KR KR1020180023020A patent/KR102511903B1/ko active Active
- 2018-11-26 TW TW107142019A patent/TWI787401B/zh active
- 2018-11-28 US US16/203,362 patent/US10847246B2/en active Active
- 2018-12-05 CN CN201811477683.4A patent/CN110196783B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20150169397A1 (en) * | 2013-12-16 | 2015-06-18 | International Business Machines Corporation | Extension of product codes with applications to tape and parallel channels |
US20150309875A1 (en) * | 2014-04-25 | 2015-10-29 | International Business Machines Corporation | Error-correction encoding and decoding |
Also Published As
Publication number | Publication date |
---|---|
CN110196783A (zh) | 2019-09-03 |
US20190385693A1 (en) | 2019-12-19 |
TW201937368A (zh) | 2019-09-16 |
US10847246B2 (en) | 2020-11-24 |
KR20190102533A (ko) | 2019-09-04 |
TWI787401B (zh) | 2022-12-21 |
CN110196783B (zh) | 2023-05-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102511903B1 (ko) | 고정된 에러정정능력의 에러정정코드 엔진을 이용하여 재구성할 수 있는 에러정정동작을 수행하는 메모리 시스템 | |
US10762007B2 (en) | Storage device and interface chip thereof | |
US10884848B2 (en) | Memory device, memory system including the same and operation method of the memory system | |
US20130179748A1 (en) | Systems and methods for error checking and correcting for memory module | |
EP3629482B1 (en) | Decoding data using a polar code list decoder and a neural network | |
CN110597654A (zh) | 用于超快的具有奇偶校验的纠错码的系统和方法 | |
US11030040B2 (en) | Memory device detecting an error in write data during a write operation, memory system including the same, and operating method of memory system | |
US9627092B2 (en) | Semiconductor device performing error correction operation | |
US20140169091A1 (en) | Memory controller, storage device, and memory control method | |
TWI869503B (zh) | 記憶體元件以及資料讀取方法 | |
WO2015016877A1 (en) | Memory unit | |
US9037948B2 (en) | Error correction for memory systems | |
US11188417B2 (en) | Memory system, memory module, and operation method of memory system | |
JP7157516B2 (ja) | 階層デコーダを使用したエラー訂正 | |
US8683308B2 (en) | Semiconductor device, information processing apparatus, and method of detecting error | |
US11392457B2 (en) | Error correction method of a memory system | |
US8103934B2 (en) | High speed memory error detection and correction using interleaved (8,4) LBCs | |
JP2020150515A (ja) | 誤り訂正回路及びメモリシステム | |
GB2531783A (en) | Method and device for removing error patterns in binary data | |
EP4571517A2 (en) | Memory device that changes type of codeword stored in memory area and method for operating the same | |
US11336296B2 (en) | Controller and memory system having the controller | |
US10365966B1 (en) | Methods and systems for wordline based encoding and decoding in NAND flash | |
US20240022263A1 (en) | Memory, memory module, memory system, and operation method of memory system | |
KR101734623B1 (ko) | 메모리 제어 장치 및 방법 | |
KR20250075409A (ko) | 메모리 영역에 저장되는 코드워드의 타입을 변경하는 메모리 장치 및 그 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PA0109 | Patent application |
Patent event code: PA01091R01D Comment text: Patent Application Patent event date: 20180226 |
|
PG1501 | Laying open of application | ||
A201 | Request for examination | ||
PA0201 | Request for examination |
Patent event code: PA02012R01D Patent event date: 20210208 Comment text: Request for Examination of Application Patent event code: PA02011R01I Patent event date: 20180226 Comment text: Patent Application |
|
E902 | Notification of reason for refusal | ||
PE0902 | Notice of grounds for rejection |
Comment text: Notification of reason for refusal Patent event date: 20221117 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: 20230215 |
|
GRNT | Written decision to grant | ||
PR0701 | Registration of establishment |
Comment text: Registration of Establishment Patent event date: 20230315 Patent event code: PR07011E01D |
|
PR1002 | Payment of registration fee |
Payment date: 20230316 End annual number: 3 Start annual number: 1 |
|
PG1601 | Publication of registration |