KR101120346B1 - 반도체 메모리 장치 및 그의 제어 방법 - Google Patents
반도체 메모리 장치 및 그의 제어 방법 Download PDFInfo
- Publication number
- KR101120346B1 KR101120346B1 KR1020097018201A KR20097018201A KR101120346B1 KR 101120346 B1 KR101120346 B1 KR 101120346B1 KR 1020097018201 A KR1020097018201 A KR 1020097018201A KR 20097018201 A KR20097018201 A KR 20097018201A KR 101120346 B1 KR101120346 B1 KR 101120346B1
- Authority
- KR
- South Korea
- Prior art keywords
- error
- data
- correction
- errors
- corrected
- Prior art date
Links
Images
Classifications
-
- 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
-
- 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
-
- 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/1004—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's to protect a block of data words, e.g. CRC or checksum
-
- 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/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
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
- G06F13/1668—Details of memory controller
- G06F13/1673—Details of memory controller using buffers
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/40—Bus structure
- G06F13/4063—Device-to-bus coupling
- G06F13/4068—Electrical coupling
-
- 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
-
- 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
-
- 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/35—Unequal or adaptive error protection, e.g. by providing a different level of protection according to significance of source information or by adapting the coding according to the change of transmission channel characteristics
-
- 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/65—Purpose and implementation aspects
- H03M13/6561—Parallelized implementations
-
- 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
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- Probability & Statistics with Applications (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
- For Increasing The Reliability Of Semiconductor Memories (AREA)
- Detection And Correction Of Errors (AREA)
- Read Only Memory (AREA)
- Error Detection And Correction (AREA)
Abstract
반도체 메모리 장치는 복수의 데이터 항목들에서의 에러를 검출하기 위해 복수의 검출 코드들을 생성하도록 각각 구성된 복수의 검출 코드 생성기들, 복수의 제1 데이터 블록들에서의 에러들을 정정하기 위해 복수의 제1 정정 코드들을 생성하도록 각각 구성된 복수의 제1 정정 코드 생성기들 - 각각의 제1 데이터 블록들은 데이터 항목들 중 하나 및 대응하는 검출 코드를 포함함 -, 제1 데이터 블록들을 포함하는 제2 데이터 블록에서의 에러들을 정정하기 위해 제2 정정 코드를 생성하도록 구성된 제2 정정 코드 생성기들, 및 제2 데이터 블록, 제1 정정 코드들 및 제2 정정 코드를 비휘발적으로 저장하도록 구성된 반도체 메모리를 포함한다.
반도체 메모리 장치, 검출 코드 생성기, 에러 정정, 정정 코드 생성기
Description
본 발명은 반도체 메모리 장치 및 그 제어 방법에 관한 것이고, 예를 들어, 정보를 비휘발적으로 저장하고 에러 정정 회로를 갖는 메모리 장치 및 그 메모리 장치를 제어하는 방법에 관한 것이다.
일부 종류의 비휘발성 메모리 장치들에서, 데이터 저장을 제어하는 물리적 양의 상태는 시간의 경과에 따라 변한다. 경과 시간이 사전결정된 기간에 도달하면, 데이터가 손실될 수 있다. 그러한 독특한 특징을 갖는 각종 메모리 장치들이 존재한다. 그러한 메모리 장치들 중 하나는, 예를 들어, 메모리 셀들로서 소위 적층 게이트 구조로 불리는 구조를 갖는 트랜지스터들을 사용하는 비휘발성 반도체 메모리 장치이다.
적층 게이트 구조는 기판 상에 연속하여 적층되는 터널 절연막, 플로팅 게이트 전극, 전극간 절연막 및 제어 게이트 전극을 포함한다. 메모리 셀에 정보를 저장하기 위해, 터널 절연막을 통해 기판으로부터 플로팅 게이트 전극으로 전자들이 주입된다. 플로팅 게이트 전극에 축적된 전하들은 정보를 보유한다. 플로팅 게이트 전극에 축적된 전하들은 시간 경과에 따라 터널 절연막을 통해 기판으로 누설된 다. 그 이유는, 메모리 셀에 보유된 정보는 시간의 경과에 따라 손실될 수 있기 때문이다(정보에서 에러가 발생할 수 있다).
정보 저장 시간으로부터의 경과 시간이 짧다면, 정보에서 에러가 거의 발생할 수 없다. 한편, 정보 저장 이후에 긴 시간이 경과하면, 정보에서 에러가 발생할 수 있는 확률이 높다. 그러한 복수의 메모리 셀들을 갖는 메모리 장치는 때때로, 에러 정보를 올바른 상태로 복원하기 위한 에러 정정 메커니즘을 포함한다.
일반적으로, 예를 들어, 정보 기록으로부터의 시간 경과로 인한 복수의 비트로 형성된 데이터에 포함되는 다수의 에러들을 정정하기 위해서는, 높은 에러 정정 능력을 갖는 정정 메커니즘이 필요하다. 높은 에러 정정 능력을 갖는 정정 메커니즘은 대형 회로 규모를 갖고 높은 전력 소모 및 긴 처리 기간을 필요로 한다. 보통, 정보 저장으로부터 긴 시간이 경과한 후일지라도 정정 정보를 복원하는 것을 보장하기 위해, 메모리 장치는, 높은 에러 정정 능력을 갖는 정정 메커니즘을 사용한다. 고성능 에러 정정 메커니즘은 정보 저장으로부터의 경과 시간의 기간에 관계없이 동등하게 적용된다.
이 이유로 인해, 단지 짧은 시간 동안 저장된 정보를 판독하는데 있어서 조차, 고성능 에러 정정 메커니즘이 사용된다. 판독될 정보는 그렇게 많은 에러들을 포함하지 않기 때문에, 고성능 에러 정정 메커니즘의 사용은 비경제적이다. 이는 메모리 장치에 전력 낭비를 일으킨다.
에러 정정 능력을 증가시키기 위해, 일반적으로, 에러 정정 대상(target) 정보의 크기는 클 필요가 있다. 예를 들어, 512 바이트 데이터가 아니라 예를 들어, 복수의 512 바이트 데이터를 연관시킴으로써 획득되는 4 키로바이트(kbyte) 데이터에 대해 에러 정정 코드가 생성된다. 이는 에러 정정 능력을 증가시킨다. 그러나, 이러한 방법에서, 512 바이트 데이터를 판독하는데 있어서 조차 4 키로바이트 데이터를 항상 판독하는 것이 필수적이다. 이 역시 메모리 장치에서의 전력 낭비를 일으킨다.
본원과 관련된 종래 기술 참조 문헌 정보는 JP 공개 63-275225이다.
참조 문헌에, 높은 에러 정정 능력을 갖는 정정 기기가 개시된다.
본 발명의 양태에 따르면, 복수의 데이터 항목들 내의 에러들을 각각 검출하기 위한 복수의 검출 코드들을 생성하도록 구성된 복수의 검출 코드 생성기들; 복수의 제1 데이터 블록들 내의 에러들을 각각 정정하기 위한 복수의 제1 정정 코드들을 생성하도록 구성된 복수의 제1 정정 코드 생성기들 - 각각의 제1 데이터 블록들은 데이터 항목들 중 하나 및 대응하는 검출 코드를 포함함 - ; 제1 데이터 블록들을 포함하는 제2 데이터 블록 내의 에러들을 정정하기 위한 제2 정정 코드를 생성하도록 구성된 제2 정정 코드 생성기들; 및 제2 데이터 블록, 제1 정정 코드들 및 제2 정정 코드를 비휘발적으로 저장하도록 구성된 반도체 메모리를 포함하고, 제2 정정 코드의 에러 정정 능력은 제1 정정 코드의 에러 정정 능력보다 높은, 반도체 메모리 장치가 제공된다.
본 발명의 양태에 따르면, 복수의 데이터 항목들 내의 에러들을 각각 검출하기 위한 복수의 검출 코드들을 생성하는 단계; 복수의 제1 데이터 블록 내의 에러들을 각각 정정하기 위한 복수의 제1 정정 코드들을 생성하는 단계 - 각각의 제1 데이터 블록들은 데이터 항목들 중 하나 및 대응하는 검출 코드를 포함함 ; 제1 데이터 블록들을 포함하는 제2 데이터 블록 내의 에러들을 정정하기 위해 제2 정정 코드를 생성하는 단계; 및 제2 데이터 블록, 제1 정정 코드들 및 제2 정정 코드를 비휘발적으로 저장하는 단계를 포함하고, 제2 정정 코드의 오류 정정 능력은 제1 정정 코드의 오류 정정 능력보다 높은, 반도체 메모리 장치를 제어하는 방법이 제공된다.
도 1은 실시예에 따른 반도체 메모리 장치를 개략적으로 도시하는 블록도이다.
도 2는 데이터 기입과 연관된 에러 정정 회로의 주요 부분을 도시하는 블록도이다.
도 3은 기입 시 임시 저장 회로(3)의 데이터 상태를 도시하는 도면이다.
도 4는 도 3 다음의 상태를 도시하는 도면이다.
도 5는 도 4 다음의 상태를 도시하는 도면이다.
도 6은 데이터 판독과 연관된 에러 정정 회로의 주요 부분을 도시하는 블록도이다.
도 7은 제2 에러 정정부의 동작의 예를 도시하는 도면이다.
도 8은 필요한 정정 능력 및 기입으로부터의 경과 시간 간의 관계를 도시하는 그래프이다.
도 9는 제1 에러 정정부(11) 및 제2 에러 정정부(13)의 프로세스 범위의 개념을 도시하는 도면이다.
도 10은 제2 에러 정정부의 에러율과 사용 확률 간의 관계를 도시하는 그래프이다.
도 11은 제2 에러 정정부의 에러율과 평균 치엔 검색(Chien search) 간의 관계를 도시하는 그래프이다.
본 발명의 실시예는 첨부하는 도면을 참조하여 기술될 것이다. 다음 설명에서, 동일한 참조 번호들은 거의 동일한 기능 및 배열을 갖는 구성 요소들을 지칭하고, 반복적인 설명은 필요시에만 행해질 것이다.
아래 기술될 실시예들은 단지, 본 발명의 기술적 범위를 포함하는 기기 또는 방법의 예들이다. 본 발명의 기술적 범위는 그 구성요소들의 재료들, 형상들, 구조들 및 배열들을 아래 기술된 것들로 한정하지 않는다. 본 발명의 기술적 범위는 첨부된 특허청구범위에서의 다양한 변경 및 수정을 허여한다.
본 발명의 실시예들에 대한 기능 블록들은 하드웨어, 컴퓨터 소프트웨어 또는 그의 결합에 의해 구현될 수 있다. 블록들은 그들의 기능들의 관점에서 일반적으로 아래 기술될 것이지만, 그들은 하드웨어 및 소프트웨어 둘 다에 의해 구현될 수 있다는 것은 명백하다. 하드웨어 또는 소프트웨어로서 기능을 행하는지는 특정 실시예들 또는 전체 시스템의 설계 제한들에 의존한다. 본 기술분야의 당업자들은 특정 실시예들 각각에 대해 다양한 방법들로 그 기능을 구현할 수 있으며, 본 발명은 그러한 구현을 포함한다.
도 1은 실시예에 따른 반도체 메모리 장치를 개략적으로 도시하는 블록도이 다.
도 1에 도시된 바와 같이, 반도체 메모리 장치(10)는 에러 정정 회로(1) 및 반도체 메모리(2)를 포함한다. 에러 정정 회로(1) 및 반도체 메모리(2)는, 예를 들어, 단일 반도체 칩 상에 하나의 반도체 집적 회로로서 형성된다. 반도체 메모리(2)는, 그것이 정보를 비휘발적으로 저장할 수 있는 임의의 메모리 장치일 수 있으므로, 그 저장된 데이터가 변경될 수 있다. 반도체 메모리(2)의 예는 NAND 플래시 메모리이다.
NAND 플래시 메모리는 복수의 메모리 셀들을 포함한다. 각각의 메모리 셀은 소위 적층 게이트 구조를 갖는 MOSFET(금속 산화물 반도체 전계 효과 트랜지스터)로 형성된다. 적층 게이트 구조를 갖는 MOS 트랜지스터는 터널 절연막, 플로팅 게이트 전극, 전극간 절연막, 제어 게이트 전극 및 소스 및 드레인 확산층들을 포함한다. 각각의 메모리 셀 트랜지스터의 임계 전압은 플로팅 게이트 전극에 축적된 전하량에 따라 변화되고, 각각의 메모리 셀 트랜지스터는 그 임계 전압의 변화에 대응하는 정보를 저장한다. 메모리 셀 트랜지스터는 1비트 정보 또는 복수의 비트의 정보를 저장하도록 설계될 수 있다. 반도체 메모리(2)에서 감지 증폭기 및 전위 생성 회로를 포함하는 제어 회로는, 메모리 셀 트랜지스터들에 공급되는 데이터를 반도체 메모리(2)에 기입할 수 있거나 또는 메모리 셀 트랜지스터에 저장되는 데이터를 반도체 메모리(2) 외부로 출력할 수 있다.
동일 행(row)에 속하는 메모리 셀 트랜지스터들의 제어 게이트 전극들이 단일 워드선에 접속된다. 선택 게이트 트랜지스터는 동일 열(column)에 속하고 직렬 로 접속되는 메모리 셀 트랜지스터들의 종단들 각각에 제공된다. 하나의 선택 게이트 트랜지스터는 비트선에 접속된다. 이러한 규칙에 기초하여, 메모리 셀 트랜지스터들, 선택 게이트 트랜지스터들, 워드선들 및 비트선들이 제공된다. 복수의 메모리 셀 트랜지스터들의 각각의 세트에 대해 데이터 기입 및 판독이 행해진다. 메모리 셀 트랜지스터들의 세트로 형성되는 저장 영역은 1 페이지에 대응한다. 복수의 페이지들은 블록을 형성한다. NAND 플래시 메모리는 각각의 블록 내의 데이터를 소거한다.
반도체 메모리(2)에 기입되도록 요구되는 데이터(기입 데이터)는 외부에서 반도체 메모리 장치(10)에 공급된다. 에러 정정 회로(1)는 에러-정정 코드 및 에러-검출 코드를 기입 데이터에 추가하고, 그것을 반도체 메모리(2)에 공급한다. 반도체 메모리(2)는 에러-정정 코드 및 에러-검출 코드를 갖는 기입 데이터를 저장한다.
반도체 메모리 장치(10)에 공급되는 제어 신호에 응답하여, 반도체 메모리(2)는 판독되도록 요구되는 데이터(판독 데이터), 및 그 판독 데이터에 추가된 에러-정정 코드 및 에러-검출 코드를 에러 정정 회로(1)에 공급한다. 에러 정정 회로(1)는 판독 데이터의 에러를 검출하여 정정한다. 에러가 존재하면, 에러 정정 회로(1)는 그 에러를 정정하고, 에러-정정 코드 및 에러-검출 코드를 제거하여 외부 장치에 판독 데이터를 출력한다.
[기입 시스템 회로의 구성]
도 2는 데이터 기입과 연관된 에러 정정 회로(1)의 주요 부분을 도시하는 블 록도이다. 에러 정정 회로(1)는, 각각 사전결정된 크기를 갖는 각각의 복수의 기입 데이터에 대해 에러-정정 코드를 생성하고, 또한 복수의 기입 데이터의 세트에 대해 다른 에러-정정 코드를 생성한다. 기입 데이터의 수는 사용될 에러 정정 코드들 및 달성하기에 바람직한 에러 정정 능력에 따라 결정된다. 기입 데이터의 수가 8인 예가 아래 기술될 것이다.
도 2에 도시된 바와 같이, 에러 정정 회로(1)는 기입 데이터 항목들 Da1 내지 Da8을 수신한다. 제1 크기는 예를 들어, 반도체 메모리(2)의 기입 또는 판독 데이터의 크기와 매칭될 수 있다. 보다 구체적으로는, NAND 플래시 메모리가 반도체 메모리(2)로서 사용되면, 기입 데이터 크기는 예를 들어, 512 바이트인 1 페이지의 크기에 대응한다. 설명의 편의를 위해, 다음 예에서의 제1 크기는 512 바이트이다.
에러 정정 회로(1)는 임시 저장 회로(3)를 포함한다. 임시 저장 회로(3)는 예를 들어, 휘발성 저장 회로로 형성되고, 예를 들어, DRAM(동적 랜덤 액세스 메모리)일 수 있다. 임시 저장 회로(3)는 반도체 메모리(2)에 데이터를 기입하기 위해 에러-검출 코드 및 에러-정정 코드를 생성할 때, 기입 시 임시 저장 영역으로서의 역할을 한다. 기입 시, 임시 저장 회로(3)는 기입 데이터 항목들 Da1 내지 Da8을 수신한다. 임시 저장 회로(3)는 기입 데이터 항목들 Da1 내지 Da8을 저장한다.
기입 데이터 항목들 Da1 내지 Da8은 에러-검출 코드 생성부들(41 내지 48)(일부는 도시되지 않음) 각각에 공급된다.
에러-검출 코드 생성부들(41 내지 48)은 기입 데이터 항목들 Da1 내지 Da8에 대해 각각 에러-검출 코드들 Db1 내지 Db8(의 데이터)을 생성한다. 에러-검출 코드들 Db1 내지 Db8은 기입 데이터 항목들 Da1 내지 Da8에서의 에러들을 검출하는데 사용된다. 에러-검출 코드 생성부들이 코드들을 쉽게 산출하고 전력 소모를 줄이는 한편 상기 기술된 목적을 달성하도록 하는 코드는 에러-검출 코드들 Db1 내지 Db8로서 사용된다. 예를 들어, CRC(순환 중복 체크섬)(32) 또는 CRC16은 에러-검출 코드로서 이용가능하다. 에러-검출 코드들 Db1 내지 Db8은 임심 저장 회로(3)에 공급된다.
에러-검출 코드들 Db1 내지 Db8은 또한 제1 에러-정정 코드 생성부들(61 내지 68) 각각에 공급된다. 제1 에러-정정 코드 생성부들(61 내지 68)은 또한 기입 데이터 항목들 Da1 내지 Da8 각각을 수신한다.
제1 에러-정정 코드 생성부들(61 내지 68)은 기입 데이터 항목들 Da1 내지 Da8 및 에러-검출 코드들 Db1 내지 Db8을 사용하는 제1 에러-정정 코드들을 생성한다. 제1 에러-정정 코드 생성부(61)에 의해 생성된 제1 에러-정정 코드는 기입 데이터 항목 Da1 및 에러-검출 코드 데이터 Db1에서의 에러들을 정정하는데 사용된다. 마찬가지로, 제1 에러-정정 코드 생성부들(62 내지 68)에 의해 생성된 제1 에러-정정 코드들은 기입 데이터 항목들 Da2 내지 Da8 및 에러-검출 코드 데이터 Db2 내지 Db8에서의 에러들을 정정하는데 사용된다.
제1 에러-정정 코드로서, 예를 들어, 약 1비트의 상대적으로 낮은 에러 정정 능력을 갖고, 산출 시에 높은 전력 및 긴 시간을 요구하지 않으며, 단지 실행을 위한 작은 규모의 회로만을 필요로 하는 코드가 이용가능하다. 보다 구체적으로, 예 를 들어, 해밍 코드(Hamming code)가 제1 에러-정정 코드로서 이용가능하다.
제1 에러-정정 코드 생성부들(61 내지 68)은 제1 에러-정정 코드들 Dc1 내지 Dc8(의 데이터) 각각을 출력한다. 제1 에러-정정 코드들 Dc1 내지 Dc8은 임시 저장 회로(3)에 공급된다.
에러-검출 코드들 Db1 내지 Db8은 제2 에러-정정 코드 생성부(8)에 공급된다. 제2 에러-정정 코드 생성부(8)는 또한 기입 데이터 항목들 Da1 내지 Da8을 수신한다. 제2 에러-정정 코드 생성부(8)는 기입 데이터 항목들 Da1 내지 Da8 및 에러-검출 코드들 Db1 내지 Db8을 사용하는 제2 에러-정정 코드를 생성한다. 제2 에러-정정 코드는 기입 데이터 항목들 Da1 내지 Da8 및 에러-검출 코드들 Db1 내지 Db8에서의 에러들을 정정하는데 사용된다.
제2 에러-정정 코드로서, 예를 들어, 산출량이 크다하더라도, 제1 에러-정정 코드를 사용하는 에러 정정보다 더 높은 능력으로 에러 정정이 가능하고, 다수의 비트들의 에러들을 정정할 수 있는 코드가 이용가능하다. 보다 구체적으로, 예를 들어, BHC 코드, RS(리드-솔로몬) 코드, 또는 LDPC(저밀도 패리티 검사) 코드가 제2 에러-정정 코드로서 이용가능하다. 제2 에러-정정 코드 생성부(8)의 회로 규모, 전력 소모 및 산출 시간은, 큰 산출량으로 인해 제1 에러-정정 코드 생성부들(61 내지 68)의 것을 초과한다. 그러나, 제2 에러-정정 코드 생성부(8)는 제1 에러-정정 코드 생성부들(61 내지 68)보다 높은 에러 정정 능력을 갖는다.
제2 에러-정정 코드 생성부(8)는 제2 에러-정정 코드 Dd(의 데이터)를 임시 저장 회로(3)에 공급한다. 임시 저장 회로(3)는, 기입 데이터 항목들 Da1 내지 Da8, 에러-검출 코드들 Db1 내지 Db8, 제1 에러-정정 코드들 Dc1 내지 Dc8, 및 제2 에러-정정 코드 Dd를 반도체 메모리(2)에 공급하고, 그 구조들이 이후에 기술될 것이다.
[데이터 기입에서의 동작]
데이터 기입에서의 에러 정정 회로(1)의 동작은 도 3 내지 도 6을 참조하여 다음에 기술될 것이다. 도 3 내지 도 6은 기입 시의 임시 저장 회로(3)의 데이터 상태들을 순차적으로 개략적으로 도시한다.
우선, 도 3에 도시된 바와 같이, 반도체 메모리(2)에 기입될 8개의 기입 데이터 항목들 Da1 내지 Da8은 에러 정정 회로(1)에 공급된다. 기입 데이터 항목들 Da1 내지 Da8은 임시 저장 회로(3)에 저장된다.
다음으로, 도 4에 도시된 바와 같이, 기입 데이터 항목들 Da1 내지 Da8은 에러-검출 코드 생성부들(41 내지 48)에 각각 공급된다. 에러-검출 코드 생성부들(41 내지 48)은 기입 데이터 항목들 Da1 내지 Da8에 대해 각각 에러-검출 코드들 Db1 내지 Db8을 생성한다. CRC32가 에러-검출 코드들로서 사용될 때, 에러-검출 코드들 Db1 내지 Db8 각각은 32비트의 크기를 갖는다.
기입 데이터 항목 Da1 이후에 연결되는 기입 데이터 항목 Da1 및 에러-검출 코드 Db1은 에러 정정의 단위인 제1 데이터 블록 D1을 형성한다. 마찬가지로, 기입 데이터 항목들 Da2 내지 Da8 이후에 연결되는 기입 데이터 항목들 Da2 내지 Da8 및 에러-검출 코드들 Db2 내지 Db8은 제1 데이터 블록들 D2 내지 D8을 형성한다. 제1 데이터 블록들 D1 내지 D8은 임시 저장 회로(3)에 저장된다. 본 기술분야의 기술자들은 에러-검출 코드 생성부들(41 내지 48)의 상세 구성을 이미 알고 있어, 그에 대한 설명은 생략될 것이다. 이러한 실시예에서, 에러-검출 코드 생성부들(41 내지 48)은 검출 코드 생성 동작들을 병렬적으로 수행한다. 에러-검출 코드 생성부들(41 내지 48)의 병렬 동작들은 처리 시간을 단축시킨다.
다음으로, 도 5에 도시된 바와 같이, 제1 데이터 블록들 D1 내지 D8은 제1 에러-정정 코드 생성부들(61 내지 68) 각각에 공급된다. 제1 에러-정정 코드 생성부(61)는 제1 데이터 블록 D1을 사용하여, 제1 데이터 블록 D1에서의 에러들을 정정하기 위한 제1 에러 정정 코드 Dc1을 생성한다. 제1 에러-정정 코드 Dc1은 기입 데이터 항목 Da2 이전 및 에러-검출 코드 Db1 이후에 연결되어 임시 저장 회로(3)에 저장된다.
마찬가지로, 제1 에러-정정 코드 생성부들(62 내지 68)은 각각, 제1 데이터 블록들 D2 내지 D8을 사용하여, 제1 데이터 블록들 D2 내지 D8에서의 에러들을 정정하기 위한 제1 에러-정정 코드들 Dc2 내지 Dc8을 생성한다. 제1 에러-정정 코드 Dc2는 기입 데이터 항목 Da3 이전 및 에러-검출 코드 Db2 이후에 연결되어 임시 저장 회로(3)에 저장된다. 마찬가지로, 제1 에러-정정 코드들 Dc3 내지 Dc7은 기입 데이터 항목들 Da4 내지 Da8 이전 및 에러-검출 코드들 Db3 내지 Db7 이후에 각각 연결되어 임시 저장 회로(3)에 저장된다. 제1 에러-정정 코드 Dc8은 에러-검출 코드 Db8 이후에 연결되어 임시 저장 회로(3)에 저장된다.
해밍 코드가 제1 에러-정정 코드로서 사용될 때, 제1 데이터 블록들 D1 내지 D8 각각은 기입 데이터(4096비트)+에러-검출 코드(32비트)에 대응하는 크기를 갖는 다. 제1 데이터 블록 D1 내지 D8에서의 1비트 에러를 정정하기 위해, 제1 에러-정정 코드들 Dc1 내지 Dc8 각각은 예를 들어, 13비트의 크기를 갖는다. 본 기술분야의 기술자들은 제1 에러-정정 코드 생성부들(61 내지 68)의 상세 구성을 이미 알고 있어, 그에 대한 설명은 생략될 것이다. 이러한 실시예에서, 제1 에러-정정 코드 생성부들(61 내지 68)은 정정 코드 생성 동작들을 병렬로 수행한다. 제1 에러-정정 코드 생성부들(61 내지 68)의 병렬 동작들은 처리 시간을 단축시킨다.
제2 데이터 블록을 형성하기 위해 제1 데이터 블록들 D1 내지 D8이 연결된다. 제2 데이터 블록은 제2 에러-정정 코드 생성부(8)에 공급된다. 제2 데이터 블록은 제2 에러-정정 코드를 생성하기 위해 제2 에러-정정 코드 생성부에 의해 사용될 데이터의 단위이다. 제2 에러-정정 코드 생성부(8)는, 제2 데이터 블록을 사용하여, 제2 데이터 블록에서의 에러들을 정정하기 위한 제2 에러-정정 코드 Dd를 생성한다. 제2 에러-정정 코드 Dd는 제2 데이터 블록 이후에 연결되어 임시 저장 회로(3)에 저장된다.
RS 코드가 제2 에러-정정 코드로서 사용되면, 제2 데이터 블록은 기입 데이터(4096비트)×8 + 에러-검출 코드(32비트)×8에 대응하는 크기를 갖고, 제2 데이터 블록에서의 12비트 에러를 정정한다. 제2 데이터 블록에서 그러한 크기를 갖는 에러를 정정하기 위해, 제2 에러-정정 코드 Dd는 예를 들어, 192비트의 크기를 갖는다. 본 기술분야의 기술자들은 제2 에러-정정 코드 생성부(8)의 상세 구성을 이미 알고 있어, 그에 대한 설명은 생략될 것이다.
제2 에러-정정 코드 Dd는 상술된 프로세스에서 제2 데이터 블록 이후에 연결 되어 전송 데이터 블록(도 5에서의 임시 저장 회로(3)에서의 구조)을 획득한다. 전송 데이터 블록은 반도체 메모리(2)에 공급된다. 반도체 메모리(2)는 각각의 전송 데이터 블록을 저장한다.
[판독 시스템 회로의 구성]
도 6은 데이터 판독과 연관된 에러 정정 회로(1)의 주요 부분을 도시하는 블록도이다.
도 6에 도시된 바와 같이, 반도체 메모리(2)는 신호 S1을 제1 에러 정정부(11)에 공급한다. 신호 S1은 전송 데이터 블록(도 5에서의 임시 저장 회로(3)의 구조)으로 형성된다.
제1 데이터 블록들 D1 내지 D8이 에러들을 포함한다면, 제1 에러 정정부(11)는 제1 에러 정정부(11)의 능력 범위 내에서, 신호 S1의 제1 에러-정정 코드들 Dc1 내지 Dc8을 사용하여 제1 데이터 블록들 D1 내지 D8에서의 에러들을 각각 정정한다. 보다 구체적으로, 제1 에러 정정부(11)는 제1 에러-정정 코드 Dc1을 사용하여 제1 데이터 블록 D1에서의 에러들을 정정한다. 마찬가지로, 제1 에러 정정부(11)는, 제1 에러 정정부(11)의 능력 범위 내에서, 에러-정정 코드들 Dc2 내지 Dc8을 사용하여 제1 데이터 블록들 D2 내지 D8에서의 에러들을 정정한다.
제1 에러 정정부(11)는 제1 에러-정정 코드들을 사용하여 신호 S1에서의 에러들을 정정함으로써 획득되는 신호 S2를 출력한다. 에러 정정 이전의 제1 데이터 블록들 D1 내지 D8에서의 에러 비트들의 수가 제1 에러 정정부(11)의 에러 정정 능력 이하라면, 에러 정정 이후의 신호 S2의 제1 데이터 블록들 D1 내지 D8은 에러들 을 포함하지 않는다. 그러나, 에러 정정 이전의 제1 데이터 블록들 D1 내지 D8에서의 에러 비트들의 수가 제1 에러 정정부(11)의 에러 정정 능력을 초과한다면, 에러 정정 이후의 신호 S2의 제1 데이터 블록들 D1 내지 D8은 여전히 에러들을 포함한다.
신호 S2는 에러 검출부(12) 및 제2 에러 검출부(13)에 공급된다. 에러 검출부(12)는 에러-검출 코드들 Db1 내지 Db8을 사용하여 기입 데이터 항목들 Da1 내지 Da8에서의 에러들을 검출한다. 에러 검출부(12)는 선택부(14)에 신호 S2를 직접 공급한다. 에러 검출부(12)는 또한, 선택부(14)에, 제1 데이터 블록들 D1 내지 D8 모두에서의 에러 검출의 유무를 나타내는 신호 S3을 공급한다. 에러 검출부(12)는 제2 에러 정정부(13)에, 에러 검출의 유무에 부가하여 제1 데이터 블록들 D1 내지 D8에서의 에러 검출 위치들을 나타내는 정보를 포함하는 신호 S4를 공급한다.
제2 에러 정정부(13)는 신호 S4를 분석하여 에러들이 에러 검출부(12)에 의해 에러 검출 시 검출되지는 여부를 나타내는 정보를 획득한다. 에러들이 검출되지 않으면, 에러 정정은 더이상 필요없다. 예를 들어, 제2 에러 정정부(13)는 전원 회로(도시되지 않음)로부터의 전원 공급 또는 클록 회로(도시되지 않음)로부터의 클록 신호 공급이 중지됨에 따라 프로세스 대상의 신호 S2에 대한 동작을 중지한다.
신호 S4를 분석하여 에러들이 신호 S2에서 검출되는지를 나타내는 정보를 획득함에 따라, 제2 에러 정정부(13)는 제2 에러-정정 코드 Dd를 사용하여 제1 데이 터 블록들 D1 내지 D8에서의 에러들을 정정한다. 이 시점에서, 제2 에러 정정부(13)는 에러들을 포함하는 제1 데이터 블록들 D1 내지 D8에 대해서만 에러 정정을 실행하다. 도 7은 이러한 상태에 대한 예를 도시한다.
도 7은 에러들이 제1 데이터 블록들 D2, D4 및 D5에서 검출되는 예를 도시한다. 제2 에러 정정부(13)는 제1 데이터 블록들 D1 내지 D8 모두에 대해 제2 에러-정정 코드 Dd를 사용하여 신드롬 계산(syndrome calcualtion)을 실행한다. 한편, 제2 에러 정정부(13)는 검출된 에러들을 포함하는 제1 데이터 블록들 D2, D4 및 D5에 대해서만 치엔 검색을 실행한다. 제2 에러 정정부(13)는 제2 에러-정정 코드 Dd를 사용하여 제1 데이터 블록들 D2, D4 및 D5에서의 에러들을 정정한다. 제2 에러 정정부(13)는 제2 에러-정정 코드를 사용하여 신호 S2에서의 에러들을 정정함으로써 획득된 신호 S5를 출력한다.
제2 에러 정정부(13)에 의한 에러 정정은 종래 기술과는 다르게, 제1 데이터 블록들 D1 내지 D8에서 검출된 에러들에 대해 순차적으로 실행된다. 즉, 제1 데이터 블록들 D1 내지 D8 각각에 전용인 에러 정정 회로는 제공되지 않는다. 이는 제2 에러 정정부(13)의 전력 소모 및 회로 규모를 감소시킨다.
에러 정정을 받을 제1 데이터 블록들의 수에 따라, 필요한 시간은 제1 데이터 블록들 D1 내지 D8의 전용 회로들에 의한 병렬 에러 정정보다 더 길 수 있다. 이 실시예에서, 그러나, 제2 에러 정정부(13)는, 제1 데이터 블록들 D1 내지 D8 중 검출된 에러들을 포함하는 데이터 블록들에 대해서만 치엔 검색을 실행한다. 부가적으로, 제1 에러-정정 코드는 제1 에러-정정 코드를 사용하는 정정에 의해서만 제 1 데이터 블록들 D1 내지 D8에서의 에러들의 대부분 (거의 100%)을 정정할 수 있도록 설계된다. 이 이유는 제2 에러-정정 코드는 거의 사용되지 않기 때문이다. 이러한 실시예에서, 따라서, 제1 데이터 블록들 D1 내지 D8에 대해 에러 정정 회로를 공유함으로써 처리 시간의 임의의 증가 없이 제2 에러 정정부(13)의 전력 소모 및 회로 규모를 감소시키는 것이 가능하다.
메모리 장치로부터 소정의 전송 데이터 블록을 반복적으로 판독하는 프로세스에서, 에러 검출부(12)가 제1 시간 동안 판독되는 전송 데이터 블록에서 어떠한 에러도 검출하지 않는다고 가정하자. 이 경우에, 제2 및 이후 시간 동안 전송 데이터 블록을 판독할 때, 제2 에러 정정부(13)에 대한 전원 공급 및 클록 신호 공급 중 적어도 하나는 미리 중지된다. 이는 동일한 전송 데이터 블록을 판독할 때 에러 정정 회로(1)에서의 전력 소모를 크게 감소시킨다.
제1 에러 정정부(11)의 정정 능력 및 에러 검출부(12)의 정정 능력을 결정하는 방법이 다음에 기술될 것이다. 제1 에러 정정부(11)의 정정 능력은 또한 제1 에러-정정 코드 생성부들(61 내지 68)이 제1 에러-정정 코드들 Dc1 내지 Dc8을 생성하도록 하는 프로세스를 포함한다는 점에 주목한다. 마찬가지로, 제2 에러 정정부(13)의 정정 능력은 또한 제2 에러-정정 코드 생성부(8)가 제2 에러-정정 코드 Dd를 생성하도록 하는 프로세스를 포함한다.
도 8은 반도체 메모리(2)에서의 데이터 기입으로부터의 경과 시간과 필요한 정정 능력 간의 관계를 도시하는 그래프이다. 도 8에 도시된 바와 같이, 경과 시간이 길어짐에 따라, 반도체 메모리(2)에 기입된 데이터에서의 에러들의 수가 증가 한다. 에러 정정 능력은 에러들의 수의 증가에 따라 변화된다. 제1 에러 정정부(11)의 에러 정정 능력 및 제2 에러 정정부(13)의 에러 정정 능력은 지나치거나 또는 불충분한 에러 정정 능력이 사용되도록 결정된다. 보다 구체적으로, 제1 에러 정정부(11)의 에러 정정 능력 및 제2 에러 정정부(13)의 에러 정정 능력은, 경과 시간이 짧을 때는 에러 정정이 제1 에러 정정부(11)에 의해 단독으로 행해질 수 있는 한편, 경과 시간이 사전결정된 시간(에러들의 수가 갑자기 증가할 때의 시간)을 초과할 때는 제1 에러 정정부(11) 및 제2 에러 정정부(13)가 에러 정정을 실행할 수 있도록 결정된다.
도 9는 본 실시예에 따른 제1 에러 정정부(11)의 프로세스 범위 및 제2 에러 정정부(13)의 프로세스 범위에 대한 개념을 도시한다. 도 9에서의 횡좌표는 반도체 메모리(2)의 사전결정된 범위(NAND 플래시 메모리의 페이지) 내의 에러들의 수를 나타낸다. 세로좌표는 에러 발생 확률을 나타낸다. 점선은 (기입 바로 이후의) 반도체 메모리(2)의 성능저하(degradation) 이전의 관계를 나타낸다. 실선은 (보장된 데이터 유지 시간이 경과된 이후의) 반도체 메모리(2)의 성능저하 이후의 관계를 나타낸다.
도 9에 도시된 바와 같이, 제1 에러 정정부(11)의 에러 정정 능력은, 제1 에러 정정부(11)만이 사전결정된 범위 내의 에러들의 수가 작을 때 모든 에러들을 정정할 수 있도록 결정된다. 보다 구체적으로, 정정가능한 비트들의 수, 에러 정정 방법 및 에러 정정 코드의 비트들의 수가 결정된다. 예를 들어, 제1 에러 정정부(11)의 에러 정정 능력은, 제1 에러 정정부(11)가 성능저하 이전의 에러들의 거 의 100% 및 성능저하 이후의 에러들의 약 99%를 정정할 수 있도록 결정된다. 한편, 제2 에러 정정부(13)의 에러 정정 능력은 성능저하 이후의 에러들의 나머지 1%를 정정하도록 결정된다.
결과적으로, 제2 에러 정정부(13)의 사용 확률은 도 10에 도시된 바와 같이, 에러율의 증가에 따라 증가한다.
상술된 바와 같이, 더 낮은 에러 정정 능력을 갖지만 더 짧은 처리 시간 및 더 낮은 전력 소모를 요구하는 제1 에러 정정부(11)는 거의 모든 에러들을 정정한다. 더 긴 처리 시간 및 더 높은 전력 소모를 요구하지만 더 높은 에러 정정 능력을 갖는 제2 에러 정정부(13)는 나머지 에러들을 정정한다. 에러 정정 회로(1)는 따라서, 짧은 처리 시간, 낮은 전력 소모, 및 작은 회로 규모를 달성하는 한편 높은 에러 정정 능력을 유지할 수 있다.
도 11은 제2 에러 정정부(13)의 에러율과 평균 치엔 검색 범위 간의 관계를 도시한다. 본 실시예에서(실선), 제1 에러 정정부(11)의 에러 정정 능력은, 상술된 바와 같이, 대부분의 에러들이 제1 에러 정정부(11)에 의해서만 정정될 수 있도록 설정된다. 그 이유는, 종래 기술(점선)과 비교하여, 에러율이 높을 때 조차, 제2 에러 정정부(13)는 에러 정정에 거의 관여하지 않기 때문이다.
상술된 바와 같이, 본 실시예의 반도체 메모리 장치에 따르면, 각각 복수의 기입 데이터 항목들의 대응하는 항목을 포함하는 복수의 제1 데이터 블록들 D1 내지 D8이 형성된다. 복수의 제1 에러-정정 코드들 Dc1 내지 Dc8은 복수의 제1 데이터 블록들 D1 내지 D8에 대해 각각 생성된다. 부가적으로, 제2 에러-정정 코드 Dd 는 복수의 제1 데이터 블록들 D1 내지 D8로 형성된 제2 데이터 블록에 대해 생성된다. 에러 비트들의 수가 작으면, 낮은 능력을 갖지만 낮은 전력 소모 및 작은 회로 규모를 요구하는 제1 에러-정정 코드들 Dc1 내지 Dc8을 사용하여 정정이 행해진다. 에러 비트들의 수가 크면, 제1 에러-정정 코드들 Dc1 내지 Dc8 및 높은 전력 소모 및 큰 회로 규모를 요구하지만 높은 능력으로 정정을 허여하는 제2 에러-정정 코드 Dd를 사용하여 정정이 행해진다. 따라서, 적절한 회로 규모 및 전력 소모를 갖고 에러 정정 능력을 희생함 없이 에러 정정 시간을 단축하는 에러 정정 회로(1)를 갖는 반도체 메모리 장치가 제공된다.
이러한 실시예에서, 제1 데이터 블록들 D1 내지 D8 중 제1 에러-정정 코드들 Dc1 내지 Dc8을 사용한 에러 정정 이후 조차 에러들을 포함하는 데이터에 대해서만 제2 에러-정정 코드 Dd를 사용하는 에러 정정이 실행된다. 이는, 제2 에러-정정 코드 Dd를 사용하여 에러 정정을 실행하기 위한 회로들이 복수의 제1 데이터 블록들 D1 내지 D8와 대응하여 제공되는 예와 비교하여, 제2 에러 정정부(13)의 회로 규모를 크게 감소시킬 수 있다.
본 기술분야의 기술자들에게 있어 추가 이점들 및 수정들이 쉽게 일어날 수 있다. 따라서, 본 발명의 광범위한 양태들의 발명은 본원에 도시되고 기술된 특정 상세들 및 대표적인 실시예들로 제한되지 않는다. 따라서, 첨부된 특허청구범위 및 그의 등가물들에 의해 정의된 바와 같이 일반적인 발명의 개념에 대한 사항 또는 범위에서 벗어남 없이 다양한 수정들이 이루어질 수 있다.
Claims (17)
- 반도체 메모리 장치로서,복수의 데이터 항목들 내의 에러들을 각각 검출하기 위한 복수의 검출 코드들을 생성하도록 구성된 복수의 검출 코드 생성기들;복수의 제1 데이터 블록들 내의 에러들을 각각 정정하기 위한 복수의 제1 정정 코드들을 생성하도록 구성된 복수의 제1 정정 코드 생성기들 - 각각의 상기 제1 데이터 블록들은 상기 데이터 항목들 중 하나 및 대응하는 검출 코드를 포함함 - ;상기 제1 데이터 블록들을 포함하는 제2 데이터 블록 내의 에러들을 정정하기 위한 제2 정정 코드를 생성하도록 구성된 제2 정정 코드 생성기들; 및상기 제2 데이터 블록, 상기 제1 정정 코드들 및 상기 제2 정정 코드를 비휘발적으로 저장하도록 구성된 반도체 메모리를 포함하고,상기 제2 정정 코드의 에러 정정 능력은 상기 제1 정정 코드의 에러 정정 능력보다 높은, 반도체 메모리 장치.
- 제1항에 있어서,상기 제1 정정 코드들을 사용하여 상기 제1 데이터 블록들 내의 상기 에러들을 정정하도록 구성된 제1 정정기;상기 검출 코드들을 사용하여 상기 제1 정정기에 의해 정정된 상기 데이터 항목들 내의 에러들을 검출하고, 각각의 정정된 상기 데이터 항목들 내의 에러의 유무를 나타내는 제1 에러 정보를 생성하도록 구성된 검출기; 및상기 제1 에러 정보 및 상기 제2 정정 코드를 사용하여, 정정된 상기 데이터 항목들 중 상기 에러들을 포함하는 다수의 데이터 항목들 내의 에러들을 정정하도록 구성된 제2 정정기를 더 포함하는, 반도체 메모리 장치.
- 제2항에 있어서,상기 제1 정정기에 의해 정정된 상기 데이터 항목들로 형성된 제1 정정된 데이터 및 상기 제2 정정기에 의해 정정된 상기 데이터 항목들로 형성된 제2 정정된 데이터 중 하나를 선택하여 출력하도록 구성된 선택기를 더 포함하는, 반도체 메모리 장치.
- 제3항에 있어서,상기 검출기는 상기 제1 정정된 데이터 내의 에러의 유무를 나타내는 제2 에러 정보를 생성하고,상기 선택기는, 상기 제2 에러 정보에 기초하여, 상기 제1 정정된 데이터가 에러를 포함하지 않고 있지 않으면 상기 제1 정정된 데이터를 출력하고, 상기 제1 정정된 데이터가 에러를 포함하고 있으면 상기 제2 정정된 데이터를 출력하는, 반도체 메모리 장치.
- 제2항에 있어서,상기 검출기는 상기 정정된 데이터 항목들 내의 에러 검출 위치들을 나타내는 제3 에러 정보를 생성하고,상기 제2 정정기는, 상기 제1 에러 정보, 상기 제3 에러 정보 및 상기 제2 정정 코드를 사용하여, 상기 정정된 데이터 항목들 중 에러들을 포함하는 다수의 데이터 항목들에 대하여만 에러들을 정정하는, 반도체 메모리 장치.
- 제1항에 있어서,상기 반도체 메모리는 제1 크기를 최소 단위로서 사용하는 판독 또는 기입 데이터를 실행하고,각각의 상기 데이터 항목들은 상기 제1 크기와 동일한 크기를 갖는, 반도체 메모리 장치.
- 제1항에 있어서,상기 데이터 항목들 및 상기 검출 코드들을 임시로 저장하도록 구성된 임시 저장 회로를 더 포함하는, 반도체 메모리 장치.
- 제1항에 있어서,상기 검출 코드 생성기들은 상기 검출 코드들을 생성하는 프로세스들을 병렬로 실행하고,상기 제1 정정 코드 생성기들은 상기 제1 정정 코드들을 생성하는 프로세스들을 병렬로 실행하는, 반도체 메모리 장치.
- 제2항에 있어서,상기 제2 정정기는, 상기 제1 정정기에 의해 정정된 상기 데이터 항목들이 에러를 포함하고 있지 않으면 정정 프로세스를 중지하는, 반도체 메모리 장치.
- 제1항에 있어서,상기 반도체 메모리는 NAND 플래시 메모리인, 반도체 메모리 장치.
- 반도체 메모리 장치를 제어하는 방법으로서,복수의 데이터 항목들 내의 에러들을 각각 검출하기 위한 복수의 검출 코드들을 생성하는 단계;복수의 제1 데이터 블록 내의 에러들을 각각 정정하기 위한 복수의 제1 정정 코드들을 생성하는 단계 - 각각의 상기 제1 데이터 블록들은 상기 데이터 항목들 중 하나 및 대응하는 검출 코드를 포함함 ;상기 제1 데이터 블록들을 포함하는 제2 데이터 블록 내의 에러들을 정정하기 위해 제2 정정 코드를 생성하는 단계; 및상기 제2 데이터 블록, 상기 제1 정정 코드들 및 상기 제2 정정 코드를 비휘발적으로 저장하는 단계를 포함하고,상기 제2 정정 코드의 오류 정정 능력은 상기 제1 정정 코드의 오류 정정 능력보다 높은, 반도체 메모리 장치의 제어 방법.
- 제11항에 있어서,상기 제1 정정 코드들을 사용하여 상기 제1 데이터 블록들 내의 상기 에러들을 정정하는 단계;상기 검출 코드들을 사용하여, 상기 제1 정정 코드들을 사용하여 정정된 상기 데이터 항목들 내의 에러들을 검출하여 상기 정정된 데이터 항목들 각각에서의 에러의 유무를 나타내는 제1 에러 정보를 생성하는 단계; 및상기 제1 에러 정보 및 상기 제2 정정 코드를 사용하여, 상기 정정된 데이터 항목들 중 상기 에러들을 포함하는 다수의 데이터 항목들 내의 에러들을 정정하는 단계를 더 포함하는, 반도체 메모리 장치의 제어 방법.
- 제12항에 있어서,상기 제1 정정 코드들을 사용하여 정정된 상기 데이터 항목들로 형성된 제1 정정된 데이터 및 상기 제2 정정 코드를 사용하여 정정된 상기 데이터 항목들로 형성된 제2 정정된 데이터 중 하나를 선택하여 출력하는 단계를 더 포함하는, 반도체 메모리 장치의 제어 방법.
- 제13항에 있어서,상기 제1 정정된 데이터 내의 에러의 유무를 나타내는 제2 에러 정보를 생성하는 단계를 더 포함하고,상기 출력하는 단계에서, 상기 제2 에러 정보에 기초하여, 상기 제1 정정된 데이터가 에러를 포함하고 있지 않으면 상기 제1 정정된 데이터가 출력되고, 상기 제1 정정된 데이터가 에러를 포함하고 있으면 상기 제2 정정된 데이터가 출력되는, 반도체 메모리 장치의 제어 방법.
- 제12항에 있어서,상기 정정된 데이터 항목들 내의 에러 검출 위치들을 나타내는 제3 에러 정보를 생성하는 단계; 및상기 제1 에러 정보, 상기 제3 에러 정보 및 상기 제2 정정 코드를 사용하여, 상기 정정된 데이터 항목들 중 에러들을 포함하는 다수의 데이터 항목들에 대하여만 에러들을 정정하는 단계를 더 포함하는, 반도체 메모리 장치의 제어 방법.
- 제11항에 있어서,각각의 상기 데이터 항목들은 판독 데이터 또는 기입 데이터의 크기와 동일한 크기를 갖는, 반도체 메모리 장치의 제어 방법.
- 제11항에 있어서,상기 검출 코드 생성 단계에서, 상기 검출 코드들을 생성하는 프로세스들이 병렬로 실행되고,상기 제1 정정 코드 생성 단계에서, 상기 제1 정정 코드들을 생성하는 프로세스들이 병렬로 실행되는, 반도체 메모리 장치의 제어 방법.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JPJP-P-2007-225996 | 2007-08-31 | ||
JP2007225996A JP4564520B2 (ja) | 2007-08-31 | 2007-08-31 | 半導体記憶装置およびその制御方法 |
PCT/JP2008/063344 WO2009028281A1 (en) | 2007-08-31 | 2008-07-17 | Semiconductor memory device and method of controlling the same |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20090122219A KR20090122219A (ko) | 2009-11-26 |
KR101120346B1 true KR101120346B1 (ko) | 2012-02-27 |
Family
ID=40011049
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020097018201A KR101120346B1 (ko) | 2007-08-31 | 2008-07-17 | 반도체 메모리 장치 및 그의 제어 방법 |
Country Status (7)
Country | Link |
---|---|
US (12) | US8117517B2 (ko) |
EP (1) | EP2186004B1 (ko) |
JP (1) | JP4564520B2 (ko) |
KR (1) | KR101120346B1 (ko) |
CN (2) | CN101622603B (ko) |
TW (1) | TWI437571B (ko) |
WO (1) | WO2009028281A1 (ko) |
Families Citing this family (186)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101616765A (zh) * | 2007-01-08 | 2009-12-30 | 阿绍克·威施瓦那兹·赛泽 | 用于接合和脱开旋转工具架驱动的驱动连接器的启动系统 |
JP4564520B2 (ja) | 2007-08-31 | 2010-10-20 | 株式会社東芝 | 半導体記憶装置およびその制御方法 |
JP4538034B2 (ja) | 2007-09-26 | 2010-09-08 | 株式会社東芝 | 半導体記憶装置、及びその制御方法 |
US8738841B2 (en) | 2007-12-27 | 2014-05-27 | Sandisk Enterprise IP LLC. | Flash memory controller and system including data pipelines incorporating multiple buffers |
JP4461170B2 (ja) | 2007-12-28 | 2010-05-12 | 株式会社東芝 | メモリシステム |
WO2009084724A1 (en) * | 2007-12-28 | 2009-07-09 | Kabushiki Kaisha Toshiba | Semiconductor storage device |
JP4489127B2 (ja) * | 2008-02-29 | 2010-06-23 | 株式会社東芝 | 半導体記憶装置 |
JP4439569B2 (ja) | 2008-04-24 | 2010-03-24 | 株式会社東芝 | メモリシステム |
JP5056947B2 (ja) * | 2008-06-04 | 2012-10-24 | 富士通株式会社 | 情報処理装置、データ送信装置およびデータ送信装置のデータ転送方法 |
JP4551958B2 (ja) * | 2008-12-22 | 2010-09-29 | 株式会社東芝 | 半導体記憶装置および半導体記憶装置の制御方法 |
JP5317690B2 (ja) | 2008-12-27 | 2013-10-16 | 株式会社東芝 | メモリシステム |
JP5221332B2 (ja) | 2008-12-27 | 2013-06-26 | 株式会社東芝 | メモリシステム |
JP5268710B2 (ja) * | 2009-02-27 | 2013-08-21 | 株式会社東芝 | 半導体記憶装置 |
JP2010204828A (ja) * | 2009-03-02 | 2010-09-16 | Renesas Electronics Corp | データ保護回路及び方法、並びにデータ処理装置 |
JP5540969B2 (ja) * | 2009-09-11 | 2014-07-02 | ソニー株式会社 | 不揮発性メモリ装置、メモリコントローラ、およびメモリシステム |
EP2790132A3 (en) * | 2009-09-24 | 2014-10-29 | Terrara Code Research Institute, Inc. | RFID tag |
US9626243B2 (en) * | 2009-12-11 | 2017-04-18 | Advanced Micro Devices, Inc. | Data error correction device and methods thereof |
US8327225B2 (en) | 2010-01-04 | 2012-12-04 | Micron Technology, Inc. | Error correction in a stacked memory |
JP5039160B2 (ja) | 2010-03-02 | 2012-10-03 | 株式会社東芝 | 不揮発性半導体記憶システム |
JP2011198272A (ja) * | 2010-03-23 | 2011-10-06 | Toshiba Corp | 半導体記憶装置および半導体記憶装置の制御方法 |
JP5017407B2 (ja) | 2010-03-24 | 2012-09-05 | 株式会社東芝 | 半導体記憶装置 |
JP4686645B2 (ja) * | 2010-07-29 | 2011-05-25 | 株式会社東芝 | 半導体記憶装置およびその制御方法 |
JP5279785B2 (ja) | 2010-09-17 | 2013-09-04 | 株式会社東芝 | コントローラ、記憶装置、およびプログラム |
JP5039193B2 (ja) | 2010-09-22 | 2012-10-03 | 株式会社東芝 | 半導体記憶装置および制御方法 |
US8418026B2 (en) * | 2010-10-27 | 2013-04-09 | Sandisk Technologies Inc. | Hybrid error correction coding to address uncorrectable errors |
JP2012137994A (ja) | 2010-12-27 | 2012-07-19 | Toshiba Corp | メモリシステムおよびその制御方法 |
JP5269932B2 (ja) | 2011-03-01 | 2013-08-21 | 株式会社東芝 | コントローラ、データ記憶装置およびプログラム |
KR101678919B1 (ko) | 2011-05-02 | 2016-11-24 | 삼성전자주식회사 | 메모리 시스템 및 에러 정정 방법 |
KR101892251B1 (ko) * | 2011-05-09 | 2018-08-29 | 삼성전자주식회사 | 메모리 컨트롤러 및 메모리 컨트롤러의 동작 방법 |
KR101800445B1 (ko) * | 2011-05-09 | 2017-12-21 | 삼성전자주식회사 | 메모리 컨트롤러 및 메모리 컨트롤러의 동작 방법 |
JP5329689B2 (ja) * | 2011-06-08 | 2013-10-30 | パナソニック株式会社 | メモリコントローラ、不揮発性記憶装置 |
JP5364807B2 (ja) * | 2011-06-08 | 2013-12-11 | パナソニック株式会社 | メモリコントローラ及び不揮発性記憶装置 |
JP5426711B2 (ja) * | 2011-06-08 | 2014-02-26 | パナソニック株式会社 | メモリコントローラ及び不揮発性記憶装置 |
US8909982B2 (en) | 2011-06-19 | 2014-12-09 | Sandisk Enterprise Ip Llc | System and method for detecting copyback programming problems |
US8910020B2 (en) | 2011-06-19 | 2014-12-09 | Sandisk Enterprise Ip Llc | Intelligent bit recovery for flash memory |
US9032269B2 (en) * | 2011-07-22 | 2015-05-12 | Sandisk Technologies Inc. | Systems and methods of storing data |
JP2013029882A (ja) | 2011-07-26 | 2013-02-07 | Toshiba Corp | メモリコントローラ、半導体記憶装置および復号方法 |
US8640013B2 (en) | 2011-09-22 | 2014-01-28 | Kabushiki Kaisha Toshiba | Storage device |
US8938658B2 (en) | 2011-11-07 | 2015-01-20 | Sandisk Enterprise Ip Llc | Statistical read comparison signal generation for memory systems |
US8924815B2 (en) | 2011-11-18 | 2014-12-30 | Sandisk Enterprise Ip Llc | Systems, methods and devices for decoding codewords having multiple parity segments |
US8954822B2 (en) | 2011-11-18 | 2015-02-10 | Sandisk Enterprise Ip Llc | Data encoder and decoder using memory-specific parity-check matrix |
US9048876B2 (en) * | 2011-11-18 | 2015-06-02 | Sandisk Enterprise Ip Llc | Systems, methods and devices for multi-tiered error correction |
JP2013109567A (ja) | 2011-11-21 | 2013-06-06 | Toshiba Corp | ストレージデバイス及び誤り訂正方法 |
US8645789B2 (en) | 2011-12-22 | 2014-02-04 | Sandisk Technologies Inc. | Multi-phase ECC encoding using algebraic codes |
CN102567134B (zh) | 2012-01-06 | 2015-01-07 | 威盛电子股份有限公司 | 存储器模块的错误检查与校正系统以及方法 |
KR101297318B1 (ko) * | 2012-02-17 | 2013-08-16 | 조선대학교산학협력단 | 대소 비교 연산 유닛을 위한 확장형 오류검출코드 기반의 오류 검출 장치 및 그 오류 검출 장치를 포함하는 자가검사 대소 비교 연산 유닛 |
WO2013105709A1 (ko) * | 2012-01-10 | 2013-07-18 | 조선대학교산학협력단 | 확장형 오류검출코드 기반의 오류 검출 장치 및 그 오류 검출 장치를 포함하는 자가검사 프로그래머블 연산 유닛 |
US8996950B2 (en) | 2012-02-23 | 2015-03-31 | Sandisk Technologies Inc. | Erasure correction using single error detection parity |
JP5674700B2 (ja) | 2012-03-22 | 2015-02-25 | 株式会社東芝 | 符号化装置および符号化装置の制御方法、ならびに、記憶装置 |
US9699263B1 (en) | 2012-08-17 | 2017-07-04 | Sandisk Technologies Llc. | Automatic read and write acceleration of data accessed by virtual machines |
US9501398B2 (en) | 2012-12-26 | 2016-11-22 | Sandisk Technologies Llc | Persistent storage device with NVRAM for staging writes |
US9043674B2 (en) * | 2012-12-26 | 2015-05-26 | Intel Corporation | Error detection and correction apparatus and method |
US9239751B1 (en) | 2012-12-27 | 2016-01-19 | Sandisk Enterprise Ip Llc | Compressing data from multiple reads for error control management in memory systems |
US9612948B2 (en) | 2012-12-27 | 2017-04-04 | Sandisk Technologies Llc | Reads and writes between a contiguous data block and noncontiguous sets of logical address blocks in a persistent storage device |
US9454420B1 (en) | 2012-12-31 | 2016-09-27 | Sandisk Technologies Llc | Method and system of reading threshold voltage equalization |
US9003264B1 (en) | 2012-12-31 | 2015-04-07 | Sandisk Enterprise Ip Llc | Systems, methods, and devices for multi-dimensional flash RAID data protection |
JP5794240B2 (ja) * | 2013-02-05 | 2015-10-14 | ソニー株式会社 | 誤り検出訂正装置、誤り検出訂正方法、情報処理装置、および、プログラム |
US9214965B2 (en) | 2013-02-20 | 2015-12-15 | Sandisk Enterprise Ip Llc | Method and system for improving data integrity in non-volatile storage |
US9329928B2 (en) | 2013-02-20 | 2016-05-03 | Sandisk Enterprise IP LLC. | Bandwidth optimization in a non-volatile memory system |
US9124300B2 (en) * | 2013-02-28 | 2015-09-01 | Sandisk Technologies Inc. | Error correction coding in non-volatile memory |
US9870830B1 (en) | 2013-03-14 | 2018-01-16 | Sandisk Technologies Llc | Optimal multilevel sensing for reading data from a storage medium |
US9236886B1 (en) | 2013-03-15 | 2016-01-12 | Sandisk Enterprise Ip Llc | Universal and reconfigurable QC-LDPC encoder |
US9367246B2 (en) | 2013-03-15 | 2016-06-14 | Sandisk Technologies Inc. | Performance optimization of data transfer for soft information generation |
US9009576B1 (en) | 2013-03-15 | 2015-04-14 | Sandisk Enterprise Ip Llc | Adaptive LLR based on syndrome weight |
US9344117B2 (en) * | 2013-03-15 | 2016-05-17 | Mellanox Technologies, Ltd. | Methods and systems for error-correction decoding |
US9136877B1 (en) | 2013-03-15 | 2015-09-15 | Sandisk Enterprise Ip Llc | Syndrome layered decoding for LDPC codes |
US9244763B1 (en) | 2013-03-15 | 2016-01-26 | Sandisk Enterprise Ip Llc | System and method for updating a reading threshold voltage based on symbol transition information |
US9092350B1 (en) | 2013-03-15 | 2015-07-28 | Sandisk Enterprise Ip Llc | Detection and handling of unbalanced errors in interleaved codewords |
JP6174875B2 (ja) * | 2013-03-19 | 2017-08-02 | 日本放送協会 | 送信装置及び受信装置 |
US10049037B2 (en) | 2013-04-05 | 2018-08-14 | Sandisk Enterprise Ip Llc | Data management in a storage system |
US9170941B2 (en) | 2013-04-05 | 2015-10-27 | Sandisk Enterprises IP LLC | Data hardening in a storage system |
US9159437B2 (en) | 2013-06-11 | 2015-10-13 | Sandisk Enterprise IP LLC. | Device and method for resolving an LM flag issue |
US9043517B1 (en) | 2013-07-25 | 2015-05-26 | Sandisk Enterprise Ip Llc | Multipass programming in buffers implemented in non-volatile data storage systems |
US9384126B1 (en) | 2013-07-25 | 2016-07-05 | Sandisk Technologies Inc. | Methods and systems to avoid false negative results in bloom filters implemented in non-volatile data storage systems |
US9524235B1 (en) | 2013-07-25 | 2016-12-20 | Sandisk Technologies Llc | Local hash value generation in non-volatile data storage systems |
US9639463B1 (en) | 2013-08-26 | 2017-05-02 | Sandisk Technologies Llc | Heuristic aware garbage collection scheme in storage systems |
US9235509B1 (en) | 2013-08-26 | 2016-01-12 | Sandisk Enterprise Ip Llc | Write amplification reduction by delaying read access to data written during garbage collection |
US9442670B2 (en) | 2013-09-03 | 2016-09-13 | Sandisk Technologies Llc | Method and system for rebalancing data stored in flash memory devices |
US9519577B2 (en) | 2013-09-03 | 2016-12-13 | Sandisk Technologies Llc | Method and system for migrating data between flash memory devices |
US9158349B2 (en) | 2013-10-04 | 2015-10-13 | Sandisk Enterprise Ip Llc | System and method for heat dissipation |
US9323637B2 (en) | 2013-10-07 | 2016-04-26 | Sandisk Enterprise Ip Llc | Power sequencing and data hardening architecture |
US9442662B2 (en) | 2013-10-18 | 2016-09-13 | Sandisk Technologies Llc | Device and method for managing die groups |
US9298608B2 (en) | 2013-10-18 | 2016-03-29 | Sandisk Enterprise Ip Llc | Biasing for wear leveling in storage systems |
US9436831B2 (en) | 2013-10-30 | 2016-09-06 | Sandisk Technologies Llc | Secure erase in a memory device |
US9263156B2 (en) | 2013-11-07 | 2016-02-16 | Sandisk Enterprise Ip Llc | System and method for adjusting trip points within a storage device |
US9244785B2 (en) | 2013-11-13 | 2016-01-26 | Sandisk Enterprise Ip Llc | Simulated power failure and data hardening |
US9323609B2 (en) * | 2013-11-15 | 2016-04-26 | Intel Corporation | Data storage and variable length error correction information |
US9152555B2 (en) | 2013-11-15 | 2015-10-06 | Sandisk Enterprise IP LLC. | Data management with modular erase in a data storage system |
US9703816B2 (en) | 2013-11-19 | 2017-07-11 | Sandisk Technologies Llc | Method and system for forward reference logging in a persistent datastore |
US9520197B2 (en) | 2013-11-22 | 2016-12-13 | Sandisk Technologies Llc | Adaptive erase of a storage device |
US9280429B2 (en) | 2013-11-27 | 2016-03-08 | Sandisk Enterprise Ip Llc | Power fail latching based on monitoring multiple power supply voltages in a storage device |
US9122636B2 (en) | 2013-11-27 | 2015-09-01 | Sandisk Enterprise Ip Llc | Hard power fail architecture |
US9520162B2 (en) | 2013-11-27 | 2016-12-13 | Sandisk Technologies Llc | DIMM device controller supervisor |
US9582058B2 (en) | 2013-11-29 | 2017-02-28 | Sandisk Technologies Llc | Power inrush management of storage devices |
US9250676B2 (en) | 2013-11-29 | 2016-02-02 | Sandisk Enterprise Ip Llc | Power failure architecture and verification |
US9092370B2 (en) | 2013-12-03 | 2015-07-28 | Sandisk Enterprise Ip Llc | Power failure tolerant cryptographic erase |
US9235245B2 (en) | 2013-12-04 | 2016-01-12 | Sandisk Enterprise Ip Llc | Startup performance and power isolation |
US9129665B2 (en) | 2013-12-17 | 2015-09-08 | Sandisk Enterprise Ip Llc | Dynamic brownout adjustment in a storage device |
US9389956B2 (en) * | 2014-01-10 | 2016-07-12 | International Business Machines Corporation | Implementing ECC control for enhanced endurance and data retention of flash memories |
US9549457B2 (en) | 2014-02-12 | 2017-01-17 | Sandisk Technologies Llc | System and method for redirecting airflow across an electronic assembly |
US9497889B2 (en) | 2014-02-27 | 2016-11-15 | Sandisk Technologies Llc | Heat dissipation for substrate assemblies |
US9703636B2 (en) | 2014-03-01 | 2017-07-11 | Sandisk Technologies Llc | Firmware reversion trigger and control |
US9485851B2 (en) | 2014-03-14 | 2016-11-01 | Sandisk Technologies Llc | Thermal tube assembly structures |
US9348377B2 (en) | 2014-03-14 | 2016-05-24 | Sandisk Enterprise Ip Llc | Thermal isolation techniques |
US9519319B2 (en) | 2014-03-14 | 2016-12-13 | Sandisk Technologies Llc | Self-supporting thermal tube structure for electronic assemblies |
US9454448B2 (en) | 2014-03-19 | 2016-09-27 | Sandisk Technologies Llc | Fault testing in storage devices |
US9390814B2 (en) | 2014-03-19 | 2016-07-12 | Sandisk Technologies Llc | Fault detection and prediction for data storage elements |
US9448876B2 (en) | 2014-03-19 | 2016-09-20 | Sandisk Technologies Llc | Fault detection and prediction in storage devices |
US9626400B2 (en) | 2014-03-31 | 2017-04-18 | Sandisk Technologies Llc | Compaction of information in tiered data structure |
US9390021B2 (en) | 2014-03-31 | 2016-07-12 | Sandisk Technologies Llc | Efficient cache utilization in a tiered data structure |
US9626399B2 (en) | 2014-03-31 | 2017-04-18 | Sandisk Technologies Llc | Conditional updates for reducing frequency of data modification operations |
US9697267B2 (en) | 2014-04-03 | 2017-07-04 | Sandisk Technologies Llc | Methods and systems for performing efficient snapshots in tiered data structures |
US10146448B2 (en) | 2014-05-30 | 2018-12-04 | Sandisk Technologies Llc | Using history of I/O sequences to trigger cached read ahead in a non-volatile storage device |
US10114557B2 (en) | 2014-05-30 | 2018-10-30 | Sandisk Technologies Llc | Identification of hot regions to enhance performance and endurance of a non-volatile storage device |
US10656840B2 (en) | 2014-05-30 | 2020-05-19 | Sandisk Technologies Llc | Real-time I/O pattern recognition to enhance performance and endurance of a storage device |
US9093160B1 (en) | 2014-05-30 | 2015-07-28 | Sandisk Technologies Inc. | Methods and systems for staggered memory operations |
US10162748B2 (en) | 2014-05-30 | 2018-12-25 | Sandisk Technologies Llc | Prioritizing garbage collection and block allocation based on I/O history for logical address regions |
US10656842B2 (en) | 2014-05-30 | 2020-05-19 | Sandisk Technologies Llc | Using history of I/O sizes and I/O sequences to trigger coalesced writes in a non-volatile storage device |
US9070481B1 (en) | 2014-05-30 | 2015-06-30 | Sandisk Technologies Inc. | Internal current measurement for age measurements |
US9645749B2 (en) | 2014-05-30 | 2017-05-09 | Sandisk Technologies Llc | Method and system for recharacterizing the storage density of a memory device or a portion thereof |
US8891303B1 (en) | 2014-05-30 | 2014-11-18 | Sandisk Technologies Inc. | Method and system for dynamic word line based configuration of a three-dimensional memory device |
US9703491B2 (en) | 2014-05-30 | 2017-07-11 | Sandisk Technologies Llc | Using history of unaligned writes to cache data and avoid read-modify-writes in a non-volatile storage device |
US10372613B2 (en) | 2014-05-30 | 2019-08-06 | Sandisk Technologies Llc | Using sub-region I/O history to cache repeatedly accessed sub-regions in a non-volatile storage device |
US9733847B2 (en) * | 2014-06-02 | 2017-08-15 | Micron Technology, Inc. | Systems and methods for transmitting packets in a scalable memory system protocol |
US9762262B2 (en) * | 2014-06-18 | 2017-09-12 | Alcatel Lucent | Hardware-efficient syndrome extraction for entangled quantum states |
US9652381B2 (en) | 2014-06-19 | 2017-05-16 | Sandisk Technologies Llc | Sub-block garbage collection |
JP2016031626A (ja) * | 2014-07-29 | 2016-03-07 | ソニー株式会社 | メモリコントローラ、記憶装置、情報処理システム、および、それらにおける制御方法。 |
CN104269190B (zh) * | 2014-08-26 | 2017-10-17 | 上海华虹宏力半导体制造有限公司 | 存储器的数据校验方法 |
US9703632B2 (en) * | 2014-11-07 | 2017-07-11 | Nxp B. V. | Sleep mode operation for volatile memory circuits |
US9811417B2 (en) | 2015-03-12 | 2017-11-07 | Toshiba Memory Corporation | Semiconductor memory device |
US9768808B2 (en) | 2015-04-08 | 2017-09-19 | Sandisk Technologies Llc | Method for modifying device-specific variable error correction settings |
US9606737B2 (en) | 2015-05-20 | 2017-03-28 | Sandisk Technologies Llc | Variable bit encoding per NAND flash cell to extend life of flash-based storage devices and preserve over-provisioning |
US9639282B2 (en) | 2015-05-20 | 2017-05-02 | Sandisk Technologies Llc | Variable bit encoding per NAND flash cell to improve device endurance and extend life of flash-based storage devices |
JP6346123B2 (ja) | 2015-05-25 | 2018-06-20 | 東芝メモリ株式会社 | コントローラ、制御方法 |
US9830084B2 (en) | 2015-12-03 | 2017-11-28 | Sandisk Technologies Llc | Writing logical groups of data to physical locations in memory using headers |
US10013179B2 (en) | 2015-12-03 | 2018-07-03 | Sandisk Technologies Llc | Reading logical groups of data from physical locations in memory using headers |
US10558525B2 (en) | 2016-06-30 | 2020-02-11 | Taiwan Semiconductor Manufacturing Company, Ltd. | Method of correcting errors in a memory array and a system for implementing the same |
US9904595B1 (en) | 2016-08-23 | 2018-02-27 | Texas Instruments Incorporated | Error correction hardware with fault detection |
KR102563162B1 (ko) * | 2016-09-05 | 2023-08-04 | 에스케이하이닉스 주식회사 | 집적회로 |
US10403377B2 (en) * | 2017-06-26 | 2019-09-03 | Western Digital Technologies, Inc. | Non-volatile storage with adaptive redundancy |
US10496548B2 (en) | 2018-02-07 | 2019-12-03 | Alibaba Group Holding Limited | Method and system for user-space storage I/O stack with user-space flash translation layer |
CN108288489B (zh) * | 2018-04-24 | 2023-07-25 | 长鑫存储技术有限公司 | 半导体存储器循环冗余校验装置及半导体存储器 |
WO2019222958A1 (en) | 2018-05-24 | 2019-11-28 | Alibaba Group Holding Limited | System and method for flash storage management using multiple open page stripes |
US10921992B2 (en) | 2018-06-25 | 2021-02-16 | Alibaba Group Holding Limited | Method and system for data placement in a hard disk drive based on access frequency for improved IOPS and utilization efficiency |
CN111902804B (zh) | 2018-06-25 | 2024-03-01 | 阿里巴巴集团控股有限公司 | 用于管理存储设备的资源并量化i/o请求成本的系统和方法 |
US10996886B2 (en) | 2018-08-02 | 2021-05-04 | Alibaba Group Holding Limited | Method and system for facilitating atomicity and latency assurance on variable sized I/O |
US11327929B2 (en) | 2018-09-17 | 2022-05-10 | Alibaba Group Holding Limited | Method and system for reduced data movement compression using in-storage computing and a customized file system |
TWI714277B (zh) * | 2018-09-28 | 2020-12-21 | 台灣積體電路製造股份有限公司 | 記憶體錯誤偵測及校正 |
US11204826B2 (en) | 2018-09-28 | 2021-12-21 | Taiwan Semiconductor Manufacturing Company, Ltd. | Memory error detection and correction |
US11216333B2 (en) * | 2018-10-16 | 2022-01-04 | Micron Technology, Inc. | Methods and devices for error correction |
US10977122B2 (en) | 2018-12-31 | 2021-04-13 | Alibaba Group Holding Limited | System and method for facilitating differentiated error correction in high-density flash devices |
US11061735B2 (en) | 2019-01-02 | 2021-07-13 | Alibaba Group Holding Limited | System and method for offloading computation to storage nodes in distributed system |
US11132291B2 (en) | 2019-01-04 | 2021-09-28 | Alibaba Group Holding Limited | System and method of FPGA-executed flash translation layer in multiple solid state drives |
US11200337B2 (en) | 2019-02-11 | 2021-12-14 | Alibaba Group Holding Limited | System and method for user data isolation |
US11005501B2 (en) | 2019-02-19 | 2021-05-11 | Micron Technology, Inc. | Error correction on a memory device |
US11169873B2 (en) * | 2019-05-21 | 2021-11-09 | Alibaba Group Holding Limited | Method and system for extending lifespan and enhancing throughput in a high-density solid state drive |
US10860223B1 (en) | 2019-07-18 | 2020-12-08 | Alibaba Group Holding Limited | Method and system for enhancing a distributed storage system by decoupling computation and network tasks |
US11126561B2 (en) | 2019-10-01 | 2021-09-21 | Alibaba Group Holding Limited | Method and system for organizing NAND blocks and placing data to facilitate high-throughput for random writes in a solid state drive |
US11617282B2 (en) | 2019-10-01 | 2023-03-28 | Alibaba Group Holding Limited | System and method for reshaping power budget of cabinet to facilitate improved deployment density of servers |
US11449455B2 (en) | 2020-01-15 | 2022-09-20 | Alibaba Group Holding Limited | Method and system for facilitating a high-capacity object storage system with configuration agility and mixed deployment flexibility |
US11379447B2 (en) | 2020-02-06 | 2022-07-05 | Alibaba Group Holding Limited | Method and system for enhancing IOPS of a hard disk drive system based on storing metadata in host volatile memory and data in non-volatile memory using a shared controller |
US11200114B2 (en) | 2020-03-17 | 2021-12-14 | Alibaba Group Holding Limited | System and method for facilitating elastic error correction code in memory |
US11449386B2 (en) | 2020-03-20 | 2022-09-20 | Alibaba Group Holding Limited | Method and system for optimizing persistent memory on data retention, endurance, and performance for host memory |
US11385833B2 (en) | 2020-04-20 | 2022-07-12 | Alibaba Group Holding Limited | Method and system for facilitating a light-weight garbage collection with a reduced utilization of resources |
US11301173B2 (en) | 2020-04-20 | 2022-04-12 | Alibaba Group Holding Limited | Method and system for facilitating evaluation of data access frequency and allocation of storage device resources |
US11281575B2 (en) | 2020-05-11 | 2022-03-22 | Alibaba Group Holding Limited | Method and system for facilitating data placement and control of physical addresses with multi-queue I/O blocks |
US11461262B2 (en) | 2020-05-13 | 2022-10-04 | Alibaba Group Holding Limited | Method and system for facilitating a converged computation and storage node in a distributed storage system |
US11494115B2 (en) | 2020-05-13 | 2022-11-08 | Alibaba Group Holding Limited | System method for facilitating memory media as file storage device based on real-time hashing by performing integrity check with a cyclical redundancy check (CRC) |
US11218165B2 (en) | 2020-05-15 | 2022-01-04 | Alibaba Group Holding Limited | Memory-mapped two-dimensional error correction code for multi-bit error tolerance in DRAM |
US11556277B2 (en) | 2020-05-19 | 2023-01-17 | Alibaba Group Holding Limited | System and method for facilitating improved performance in ordering key-value storage with input/output stack simplification |
US11507499B2 (en) | 2020-05-19 | 2022-11-22 | Alibaba Group Holding Limited | System and method for facilitating mitigation of read/write amplification in data compression |
US11263132B2 (en) | 2020-06-11 | 2022-03-01 | Alibaba Group Holding Limited | Method and system for facilitating log-structure data organization |
US11422931B2 (en) | 2020-06-17 | 2022-08-23 | Alibaba Group Holding Limited | Method and system for facilitating a physically isolated storage unit for multi-tenancy virtualization |
US11354200B2 (en) | 2020-06-17 | 2022-06-07 | Alibaba Group Holding Limited | Method and system for facilitating data recovery and version rollback in a storage device |
KR20210157863A (ko) * | 2020-06-22 | 2021-12-29 | 에스케이하이닉스 주식회사 | 메모리, 메모리 시스템 및 메모리의 동작 방법 |
JP2022012874A (ja) * | 2020-07-02 | 2022-01-17 | キオクシア株式会社 | 受信端末、通信システム、およびプログラム |
US11354233B2 (en) | 2020-07-27 | 2022-06-07 | Alibaba Group Holding Limited | Method and system for facilitating fast crash recovery in a storage device |
US11372774B2 (en) | 2020-08-24 | 2022-06-28 | Alibaba Group Holding Limited | Method and system for a solid state drive with on-chip memory integration |
EP4227944A4 (en) | 2020-09-18 | 2024-06-19 | Changxin Memory Technologies, Inc. | STORAGE |
CN117079686A (zh) * | 2020-09-18 | 2023-11-17 | 长鑫存储技术有限公司 | 存储器 |
US11487465B2 (en) | 2020-12-11 | 2022-11-01 | Alibaba Group Holding Limited | Method and system for a local storage engine collaborating with a solid state drive controller |
US11734115B2 (en) | 2020-12-28 | 2023-08-22 | Alibaba Group Holding Limited | Method and system for facilitating write latency reduction in a queue depth of one scenario |
US11416365B2 (en) | 2020-12-30 | 2022-08-16 | Alibaba Group Holding Limited | Method and system for open NAND block detection and correction in an open-channel SSD |
US11726699B2 (en) | 2021-03-30 | 2023-08-15 | Alibaba Singapore Holding Private Limited | Method and system for facilitating multi-stream sequential read performance improvement with reduced read amplification |
US11461173B1 (en) | 2021-04-21 | 2022-10-04 | Alibaba Singapore Holding Private Limited | Method and system for facilitating efficient data compression based on error correction code and reorganization of data placement |
US11476874B1 (en) | 2021-05-14 | 2022-10-18 | Alibaba Singapore Holding Private Limited | Method and system for facilitating a storage server with hybrid memory for journaling and data storage |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000269824A (ja) * | 1999-01-12 | 2000-09-29 | Matsushita Electric Ind Co Ltd | データ符号化装置及びデータ復号化装置 |
JP2004501466A (ja) * | 2000-06-22 | 2004-01-15 | マイクロチップ テクノロジー インコーポレイテッド | 埋込みcrcを用いてeepromデータをチェックする方法 |
JP2005216437A (ja) * | 2004-01-30 | 2005-08-11 | Matsushita Electric Ind Co Ltd | 誤り訂正機能付き半導体記憶装置およびその誤り訂正方法 |
Family Cites Families (88)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3993445A (en) * | 1974-11-27 | 1976-11-23 | Allegheny Ludlum Industries, Inc. | Sintered ferritic stainless steel |
US3980444A (en) * | 1975-01-22 | 1976-09-14 | Allegheny Ludlum Industries, Inc. | Sintered liquid phase stainless steel |
US4014680A (en) * | 1975-01-22 | 1977-03-29 | Allegheny Ludlum Industries, Inc. | Prealloyed stainless steel powder for liquid phase sintering |
US4420336A (en) * | 1982-02-11 | 1983-12-13 | Scm Corporation | Process of improving corrosion resistance in porous stainless steel bodies and article |
US4535034A (en) * | 1983-12-30 | 1985-08-13 | Nippon Steel Corporation | High Al heat-resistant alloy steels having Al coating thereon |
US4562039A (en) * | 1984-06-27 | 1985-12-31 | Pall Corporation | Porous metal article and method of making |
JPS6151253A (ja) * | 1984-08-20 | 1986-03-13 | Nec Corp | 誤り訂正回路 |
EP0213725A3 (en) * | 1985-08-05 | 1987-07-29 | BREHK Ventures | Method and apparatus for trapping and incinerating particulate matter found in diesel engine exhaust |
JP2696212B2 (ja) | 1987-05-06 | 1998-01-14 | セイコーエプソン株式会社 | 誤り訂正装置 |
DE3818281A1 (de) * | 1988-03-10 | 1989-09-21 | Schwaebische Huettenwerke Gmbh | Abgasfilter |
SE461032B (sv) * | 1988-03-21 | 1989-12-18 | Roby Teknik Ab | Anordning vid en foerpackningsmaskin foer att ombesoerja en steril fyllningsatmosfaer |
US5019311A (en) * | 1989-02-23 | 1991-05-28 | Koslow Technologies Corporation | Process for the production of materials characterized by a continuous web matrix or force point bonding |
DE4021495A1 (de) * | 1990-07-05 | 1992-01-09 | Schwaebische Huettenwerke Gmbh | Abgasfilter |
DE4029749A1 (de) * | 1990-09-20 | 1992-03-26 | Schwaebische Huettenwerke Gmbh | Filter |
DE4110285A1 (de) * | 1991-03-28 | 1992-10-01 | Schwaebische Huettenwerke Gmbh | Filter- oder katalysatorkoerper |
US5204067A (en) * | 1991-07-11 | 1993-04-20 | Schwaebische Huettenwerke Gmbh | Filter |
JP2721099B2 (ja) * | 1991-12-18 | 1998-03-04 | インターナショナル・ビジネス・マシーンズ・コーポレイション | エラーバースト修正のための試行錯誤方法及びマルチバイトエラーの修正方法 |
DE4234930A1 (de) * | 1992-10-16 | 1994-04-21 | Schwaebische Huettenwerke Gmbh | Filter zum Abscheiden von Verunreinigungen aus Abgasen |
JPH07138713A (ja) * | 1993-11-15 | 1995-05-30 | Daido Steel Co Ltd | Fe基合金粉末及び高耐食性焼結体の製造方法 |
JP3366721B2 (ja) | 1994-03-11 | 2003-01-14 | 富士通株式会社 | 多数バイトのエラー訂正装置 |
JPH1097471A (ja) * | 1996-09-20 | 1998-04-14 | Toshiba Corp | メモリデータのエラー訂正方法、及びエラー訂正方式 |
JPH10207726A (ja) * | 1997-01-23 | 1998-08-07 | Oki Electric Ind Co Ltd | 半導体ディスク装置 |
DE19741498B4 (de) * | 1997-09-20 | 2008-07-03 | Evonik Degussa Gmbh | Herstellung eines Keramik-Edelstahlgewebe-Verbundes |
KR100287018B1 (ko) * | 1998-08-07 | 2001-04-16 | 윤종용 | 에러 정정 회로를 구비한 반도체 메모리 장치 |
JP2000101447A (ja) | 1998-09-24 | 2000-04-07 | Sanyo Electric Co Ltd | 誤り訂正装置および誤り訂正方法 |
JP2000181807A (ja) * | 1998-12-16 | 2000-06-30 | Murata Mach Ltd | 記録媒体のデータ検査方法及び装置 |
JP3871471B2 (ja) * | 1999-07-12 | 2007-01-24 | 松下電器産業株式会社 | Ecc回路搭載半導体記憶装置及びその検査方法 |
JP3975245B2 (ja) * | 1999-12-16 | 2007-09-12 | 株式会社ルネサステクノロジ | 記録再生装置および半導体メモリ |
JP2001297038A (ja) * | 2000-04-11 | 2001-10-26 | Toshiba Corp | データ記憶装置および記録媒体並びに記録媒体制御方法 |
US6322605B1 (en) * | 2000-05-31 | 2001-11-27 | Corning Incorporated | Diesel exhaust filters |
US6328779B1 (en) * | 2000-05-31 | 2001-12-11 | Corning Incorporated | Microwave regenerated diesel particular filter and method of making the same |
US6941505B2 (en) * | 2000-09-12 | 2005-09-06 | Hitachi, Ltd. | Data processing system and data processing method |
US7020811B2 (en) * | 2001-04-24 | 2006-03-28 | Sun Microsystems, Inc. | System and method for verifying error detection/correction logic |
SE0102102D0 (sv) * | 2001-06-13 | 2001-06-13 | Hoeganaes Ab | High density stainless steel products and method for the preparation thereof |
JP4437519B2 (ja) * | 2001-08-23 | 2010-03-24 | スパンション エルエルシー | 多値セルメモリ用のメモリコントローラ |
JP3981268B2 (ja) * | 2001-12-28 | 2007-09-26 | 日本電産サンキョー株式会社 | 不揮発性メモリ及びそのデータ更新方法 |
WO2003062483A1 (fr) * | 2002-01-24 | 2003-07-31 | Sumitomo Electric Industries, Ltd. | Fil d'acier pour ressorts thermoresistants, ressorts thermoresistants, et procede de production de ressorts thermoresistants |
CN1288658C (zh) * | 2002-04-25 | 2006-12-06 | 三洋电机株式会社 | 数据处理装置 |
US20040015771A1 (en) * | 2002-07-16 | 2004-01-22 | Menahem Lasser | Error correction for non-volatile memory |
EP1460542B1 (en) * | 2003-03-19 | 2018-10-31 | Micron Technology, INC. | Integrated memory system comprising at least a non-volatile memory and an automatic error corrector |
JP2005051739A (ja) * | 2003-07-16 | 2005-02-24 | Ricoh Co Ltd | 画像処理装置、画像処理方法および該画像処理方法による画像処理プログラムならびに該画像処理プログラムを収容した記録媒体 |
US7389465B2 (en) * | 2004-01-30 | 2008-06-17 | Micron Technology, Inc. | Error detection and correction scheme for a memory device |
JP2005267719A (ja) * | 2004-03-17 | 2005-09-29 | Sanyo Electric Co Ltd | 符号化装置 |
KR100539261B1 (ko) * | 2004-05-04 | 2005-12-27 | 삼성전자주식회사 | 디지털 데이터의 부호화 장치와 dvd로의 기록 장치 및그 방법 |
US7322002B2 (en) * | 2004-05-26 | 2008-01-22 | Micron Technology, Inc. | Erasure pointer error correction |
WO2006026645A2 (en) * | 2004-08-30 | 2006-03-09 | Silicon Storage Technology, Inc. | Systems and methods for providing nonvolatile memory management in wireless phones |
US7409623B2 (en) * | 2004-11-04 | 2008-08-05 | Sigmatel, Inc. | System and method of reading non-volatile computer memory |
US7849381B2 (en) * | 2004-12-21 | 2010-12-07 | Sandisk Corporation | Method for copying data in reprogrammable non-volatile memory |
KR100680473B1 (ko) * | 2005-04-11 | 2007-02-08 | 주식회사 하이닉스반도체 | 액세스 시간이 감소된 플래시 메모리 장치 |
US20060256615A1 (en) * | 2005-05-10 | 2006-11-16 | Larson Thane M | Horizontal and vertical error correction coding (ECC) system and method |
JP4734033B2 (ja) * | 2005-05-30 | 2011-07-27 | 株式会社東芝 | 記憶装置 |
EP1741685B1 (de) * | 2005-07-05 | 2014-04-30 | MANN+HUMMEL Innenraumfilter GmbH & Co. KG | Poröser beta-SiC-haltiger keramischer Formkörper und Verfahren zu dessen Herstellung. |
GB2428496A (en) * | 2005-07-15 | 2007-01-31 | Global Silicon Ltd | Error correction for flash memory |
JP2009510585A (ja) * | 2005-09-27 | 2009-03-12 | エヌエックスピー ビー ヴィ | 誤り検出/訂正回路及び方法 |
US7512864B2 (en) * | 2005-09-30 | 2009-03-31 | Josef Zeevi | System and method of accessing non-volatile computer memory |
KR100737912B1 (ko) * | 2005-10-11 | 2007-07-10 | 삼성전자주식회사 | 반도체 메모리 장치의 에러 검출 및 정정 회로 |
KR100681429B1 (ko) * | 2005-10-24 | 2007-02-15 | 삼성전자주식회사 | 반도체 메모리 장치 및 그것의 비트 에러 검출 방법 |
JP4660353B2 (ja) | 2005-11-01 | 2011-03-30 | 株式会社東芝 | 記憶媒体再生装置 |
JP4575288B2 (ja) | 2005-12-05 | 2010-11-04 | 株式会社東芝 | 記憶媒体、記憶媒体再生装置、記憶媒体再生方法および記憶媒体再生プログラム |
US7562283B2 (en) * | 2005-12-27 | 2009-07-14 | D.S.P. Group Ltd. | Systems and methods for error correction using binary coded hexidecimal or hamming decoding |
JP2007242162A (ja) * | 2006-03-09 | 2007-09-20 | Toshiba Corp | 半導体記憶装置 |
JP4662278B2 (ja) * | 2006-04-28 | 2011-03-30 | 富士通株式会社 | エラー訂正装置、符号器、復号器、方法及び情報記憶装置 |
US7707481B2 (en) * | 2006-05-16 | 2010-04-27 | Pitney Bowes Inc. | System and method for efficient uncorrectable error detection in flash memory |
US20070268905A1 (en) * | 2006-05-18 | 2007-11-22 | Sigmatel, Inc. | Non-volatile memory error correction system and method |
US7774684B2 (en) * | 2006-06-30 | 2010-08-10 | Intel Corporation | Reliability, availability, and serviceability in a memory device |
JP4896605B2 (ja) * | 2006-07-04 | 2012-03-14 | 株式会社東芝 | 不揮発性半導体記憶システム |
JP5052070B2 (ja) * | 2006-08-23 | 2012-10-17 | ルネサスエレクトロニクス株式会社 | データ読み出し回路及びデータ読み出し方法 |
US7739576B2 (en) * | 2006-08-31 | 2010-06-15 | Micron Technology, Inc. | Variable strength ECC |
US8171380B2 (en) * | 2006-10-10 | 2012-05-01 | Marvell World Trade Ltd. | Adaptive systems and methods for storing and retrieving data to and from memory cells |
TW200828328A (en) * | 2006-12-28 | 2008-07-01 | Genesys Logic Inc | Method of improving accessing reliability of flash memory |
KR100845529B1 (ko) * | 2007-01-03 | 2008-07-10 | 삼성전자주식회사 | 플래시 메모리 장치의 이씨씨 제어기 및 그것을 포함한메모리 시스템 |
KR100842680B1 (ko) * | 2007-01-08 | 2008-07-01 | 삼성전자주식회사 | 플래시 메모리 장치의 오류 정정 컨트롤러 및 그것을포함하는 메모리 시스템 |
US8051358B2 (en) * | 2007-07-06 | 2011-11-01 | Micron Technology, Inc. | Error recovery storage along a nand-flash string |
JP4564520B2 (ja) * | 2007-08-31 | 2010-10-20 | 株式会社東芝 | 半導体記憶装置およびその制御方法 |
JP4538034B2 (ja) * | 2007-09-26 | 2010-09-08 | 株式会社東芝 | 半導体記憶装置、及びその制御方法 |
JP5166074B2 (ja) * | 2008-02-29 | 2013-03-21 | 株式会社東芝 | 半導体記憶装置、その制御方法、および誤り訂正システム |
JP4672743B2 (ja) * | 2008-03-01 | 2011-04-20 | 株式会社東芝 | 誤り訂正装置および誤り訂正方法 |
US8276043B2 (en) | 2008-03-01 | 2012-09-25 | Kabushiki Kaisha Toshiba | Memory system |
JP2010009548A (ja) | 2008-06-30 | 2010-01-14 | Toshiba Corp | 記憶装置、制御装置、記憶システム、および記憶方法 |
JP2010015197A (ja) | 2008-06-30 | 2010-01-21 | Toshiba Corp | ストレージ制御装置、データ復元装置およびストレージシステム |
JP2010015195A (ja) | 2008-06-30 | 2010-01-21 | Toshiba Corp | 記憶制御装置及び記憶制御方法 |
JP5242264B2 (ja) | 2008-07-07 | 2013-07-24 | 株式会社東芝 | データ制御装置、ストレージシステムおよびプログラム |
US8296620B2 (en) * | 2008-08-26 | 2012-10-23 | Seagate Technology Llc | Data devices including multiple error correction codes and methods of utilizing |
JP4551958B2 (ja) | 2008-12-22 | 2010-09-29 | 株式会社東芝 | 半導体記憶装置および半導体記憶装置の制御方法 |
JP5268710B2 (ja) | 2009-02-27 | 2013-08-21 | 株式会社東芝 | 半導体記憶装置 |
US7941696B2 (en) * | 2009-08-11 | 2011-05-10 | Texas Memory Systems, Inc. | Flash-based memory system with static or variable length page stripes including data protection information and auxiliary protection stripes |
JP4660632B2 (ja) | 2010-07-29 | 2011-03-30 | 株式会社東芝 | 半導体記憶装置 |
JP2012137994A (ja) | 2010-12-27 | 2012-07-19 | Toshiba Corp | メモリシステムおよびその制御方法 |
-
2007
- 2007-08-31 JP JP2007225996A patent/JP4564520B2/ja not_active Expired - Fee Related
-
2008
- 2008-07-17 WO PCT/JP2008/063344 patent/WO2009028281A1/en active Application Filing
- 2008-07-17 KR KR1020097018201A patent/KR101120346B1/ko not_active IP Right Cessation
- 2008-07-17 CN CN2008800066548A patent/CN101622603B/zh not_active Expired - Fee Related
- 2008-07-17 CN CN201110252163.5A patent/CN102385538B/zh not_active Expired - Fee Related
- 2008-07-17 EP EP08791594.8A patent/EP2186004B1/en not_active Not-in-force
- 2008-07-24 TW TW097128194A patent/TWI437571B/zh not_active IP Right Cessation
-
2009
- 2009-03-16 US US12/404,861 patent/US8117517B2/en active Active
-
2011
- 2011-04-20 US US13/090,499 patent/US8069394B2/en active Active
- 2011-04-20 US US13/090,539 patent/US8196008B2/en active Active
-
2012
- 2012-05-07 US US13/465,624 patent/US8386881B2/en active Active
-
2013
- 2013-02-04 US US13/757,935 patent/US8732544B2/en active Active
-
2014
- 2014-03-31 US US14/231,140 patent/US8959411B2/en active Active
-
2015
- 2015-01-21 US US14/601,664 patent/US9384090B2/en active Active
- 2015-10-22 US US14/920,510 patent/US20160041875A1/en not_active Abandoned
-
2017
- 2017-02-01 US US15/421,746 patent/US20170141799A1/en not_active Abandoned
-
2019
- 2019-03-19 US US16/357,696 patent/US11038536B2/en active Active
-
2021
- 2021-05-11 US US17/317,280 patent/US11575395B2/en active Active
-
2022
- 2022-12-29 US US18/148,060 patent/US20230139971A1/en active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000269824A (ja) * | 1999-01-12 | 2000-09-29 | Matsushita Electric Ind Co Ltd | データ符号化装置及びデータ復号化装置 |
JP2004501466A (ja) * | 2000-06-22 | 2004-01-15 | マイクロチップ テクノロジー インコーポレイテッド | 埋込みcrcを用いてeepromデータをチェックする方法 |
JP2005216437A (ja) * | 2004-01-30 | 2005-08-11 | Matsushita Electric Ind Co Ltd | 誤り訂正機能付き半導体記憶装置およびその誤り訂正方法 |
Also Published As
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11575395B2 (en) | Semiconductor memory device and method of controlling the same | |
JP4538034B2 (ja) | 半導体記憶装置、及びその制御方法 | |
US8661312B2 (en) | Error detection and correction scheme for a memory device | |
JP4660632B2 (ja) | 半導体記憶装置 | |
JP4686645B2 (ja) | 半導体記憶装置およびその制御方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20141230 Year of fee payment: 4 |
|
FPAY | Annual fee payment |
Payment date: 20151223 Year of fee payment: 5 |
|
LAPS | Lapse due to unpaid annual fee |