KR102259928B1 - 오류 관리 시스템 및 이를 포함하는 데이터 처리 시스템 - Google Patents
오류 관리 시스템 및 이를 포함하는 데이터 처리 시스템 Download PDFInfo
- Publication number
- KR102259928B1 KR102259928B1 KR1020170080536A KR20170080536A KR102259928B1 KR 102259928 B1 KR102259928 B1 KR 102259928B1 KR 1020170080536 A KR1020170080536 A KR 1020170080536A KR 20170080536 A KR20170080536 A KR 20170080536A KR 102259928 B1 KR102259928 B1 KR 102259928B1
- Authority
- KR
- South Korea
- Prior art keywords
- error
- management
- block
- signal
- block information
- Prior art date
Links
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/1076—Parity data used in redundant arrays of independent storages, e.g. in RAID systems
-
- 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/0703—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
- G06F11/0706—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
- G06F11/073—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in a memory management context, e.g. virtual memory or cache management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1008—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
- G06F11/1048—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices using arrangements adapted for a specific error detection or correction feature
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1008—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
- G06F11/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/1024—Identification of the type of error
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/0223—User address space allocation, e.g. contiguous or non contiguous base addressing
- G06F12/023—Free address space management
- G06F12/0238—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
- G06F12/0246—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/0223—User address space allocation, e.g. contiguous or non contiguous base addressing
- G06F12/023—Free address space management
- G06F12/0253—Garbage collection, i.e. reclamation of unreferenced memory
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/04—Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
- G11C29/08—Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
- G11C29/12—Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
- G11C29/38—Response verification devices
- G11C29/42—Response verification devices using error correcting codes [ECC] or parity check
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/04—Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
- G11C29/08—Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
- G11C29/12—Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
- G11C29/44—Indication or identification of errors, e.g. for repair
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/04—Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
- G11C29/08—Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
- G11C29/12—Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
- G11C29/44—Indication or identification of errors, e.g. for repair
- G11C29/4401—Indication or identification of errors, e.g. for repair for self repair
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/52—Protection of memory contents; Detection of errors in memory contents
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/70—Masking faults in memories by using spares or by reconfiguring
- G11C29/76—Masking faults in memories by using spares or by reconfiguring using address translation or modifications
-
- 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
- G11C2029/4402—Internal storage of test result, quality data, chip identification, repair information
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
- For Increasing The Reliability Of Semiconductor Memories (AREA)
Abstract
본 기술은 복수의 관리 블록 각각의 오류 정정 발생을 카운팅하여 오류 정정 카운팅 값을 생성하고, 상기 오류 정정 카운팅 값과 적어도 하나의 기준 값을 비교하여 상기 복수의 관리 블록 각각에서 발생된 오류가 영구 오류인지 아니면 일시 오류 인지를 정의하기 위한 영구 오류 블록 정보를 생성하도록 구성된 오류 분석부; 및 상기 복수의 관리 블록 중에서 어드레스 신호에 따라 선택된 관리 블록이 상기 영구 오류 블록 정보에 이미 지정되어 있으면 상기 어드레스 신호를 새로운 어드레스 신호로 대체하는 블록 제어부를 포함할 수 있다.
Description
본 발명은 반도체 회로에 관한 것으로서, 특히 오류 관리 시스템 및 이를 포함하는 데이터 처리 시스템에 관한 것이다.
일반적인 메모리 시스템은 제조 단계에서 충분한 테스트를 통해 제품으로 출하하더라도 실제 사용 환경에서 추가로 다양한 데이터 오류(이하, 오류)가 발생할 수 있다.
이때 오류는 일시적인 오류(이하, 일시 오류)와 영구적인 오류(이하, 영구 오류)로 구분할 수 있다.
일시 오류는 일시적인 동작 또는 동작 환경에 따라 일시적으로 발생되는 오류일 수 있으며, 영구 오류는 메모리 셀의 물리적인 오류 예를 들어, 게이트-옥사이드 파괴 등과 같이 정상상태로 복원이 불가능한 오류일 수 있다.
메모리 시스템은 오류로 인한 데이터 비트를 수정하기 위한 ECC(Error Correction Code) 회로를 포함할 수 있다.
메모리를 대량으로 사용하는 시스템 예를 들어 서버 시스템의 경우, 메모리 용량에 비례하여 많은 오류가 발생할 수 있으나, 발생된 오류가 일시 오류 인지 아니면 영구 오류인지 확인할 방법이 없으므로 이를 효율적으로 관리할 수 없다.
따라서 오류를 분석하여 그에 맞도록 메모리 영역을 효율적으로 관리하기 위한 기술 개발이 요구된다.
본 발명의 실시예는 메모리 영역을 효율적으로 관리할 수 있는 오류 제어 시스템 및 이를 포함하는 데이터 처리 시스템을 제공한다.
본 발명의 실시예는 복수의 관리 블록 각각의 오류 정정 발생을 카운팅하여 오류 정정 카운팅 값을 생성하고, 상기 오류 정정 카운팅 값과 적어도 하나의 기준 값을 비교하여 상기 복수의 관리 블록 각각에서 발생된 오류가 영구 오류인지 아니면 일시 오류 인지를 정의하기 위한 영구 오류 블록 정보를 생성하도록 구성된 오류 분석부; 및 상기 복수의 관리 블록 중에서 어드레스 신호에 따라 선택된 관리 블록이 상기 영구 오류 블록 정보에 이미 지정되어 있으면 상기 어드레스 신호를 새로운 어드레스 신호로 대체하는 블록 제어부를 포함할 수 있다.
본 발명의 실시예는 입/출력 버스를 통해 연결된 프로세서, 메모리 시스템, 메모리 컨트롤러 및 오류 관리 시스템을 포함하며, 상기 메모리 시스템의 메모리 영역은 복수의 관리 블록으로 구분되고, 오류 정정 코드 회로에 의한 오류 정정이 발생할 때마다 오류 정정 발생 신호를 생성하며, 상기 오류 관리 시스템은 상기 오류 정정 발생 신호를 이용하여 상기 복수의 관리 블록들 각각에서 발생되는 오류를 분석하여 일시 오류/영구 오류로 구분하며, 상기 복수의 관리 블록 중에서 상기 영구 오류에 해당하는 관리 블록을 지정하는 어드레스 신호를 새로운 어드레스로 대체함으로써 상기 영구 오류에 해당하는 관리 블록을 사용 차단하도록 구성될 수 있다.
본 기술은 오류를 분석하여 메모리 영역을 효율적으로 관리할 수 있다.
도 1은 본 발명의 실시예에 따른 데이터 처리 시스템(100)의 구성을 나타낸 도면,
도 2는 도 1의 오류 관리 시스템(107)의 구성을 나타낸 도면,
도 3은 도 2의 블록 컨버터(200)의 구성을 나타낸 도면,
도 4는 도 2의 오류 분석 주기 신호 생성부(400)의 구성을 나타낸 도면,
도 5는 도 2의 오류 종류 판단부(500)의 구성을 나타낸 도면,
도 6은 도 2의 블록 제어부(700)의 구성을 나타낸 도면,
도 7은 본 발명의 실시예에 따른 오류 관리 방법을 나타낸 플로우챠트이고,
도 8은 본 발명의 실시예에 따른 오류 관리 시스템(107)의 동작을 설명하기 위한 타이밍도이다.
도 2는 도 1의 오류 관리 시스템(107)의 구성을 나타낸 도면,
도 3은 도 2의 블록 컨버터(200)의 구성을 나타낸 도면,
도 4는 도 2의 오류 분석 주기 신호 생성부(400)의 구성을 나타낸 도면,
도 5는 도 2의 오류 종류 판단부(500)의 구성을 나타낸 도면,
도 6은 도 2의 블록 제어부(700)의 구성을 나타낸 도면,
도 7은 본 발명의 실시예에 따른 오류 관리 방법을 나타낸 플로우챠트이고,
도 8은 본 발명의 실시예에 따른 오류 관리 시스템(107)의 동작을 설명하기 위한 타이밍도이다.
이하에서는 첨부된 도면을 참조하여 본 발명의 실시예를 보다 상세히 설명하기로 한다.
본 발명의 실시예에 따른 데이터 처리 시스템(100)은 메모리 시스템, 입/출력 버스(103), 메모리 컨트롤러(104), 프로세서(106) 및 오류 관리 시스템(107)을 포함할 수 있다.
메모리 시스템은 메인 메모리(101) 및 캐시 메모리(102)를 포함할 수 있다.
프로세서(106)는 데이터 처리 시스템(100)의 전반적인 동작을 제어할 수 있다.
메인 메모리(101)는 메모리 영역(110), ECC(Error Correction Code) 회로(111) 및 리페어 회로(112)를 포함할 수 있다.
메인 메모리(101)는 휘발성 메모리 또는/및 비휘발성 메모리로 구성될 수 있다.
ECC 회로(111)는 메모리 영역(110)의 입/출력 데이터의 오류 정정 동작을 수행할 수 있다.
리페어 회로(112)는 메모리 영역(110)의 리페어 동작 즉, 메모리 영역(110)의 결함 메모리 셀을 여분 메모리 셀로 대체할 수 있다.
메인 메모리(101)는 자신의 오류 정정 발생 신호(ECC_INF)를 입/출력 버스(103)를 통해 메인 메모리 컨트롤러(160) 또는/및 캐시 메모리 컨트롤러(150)에 제공할 수 있다.
이때 오류 정정 발생 신호(ECC_INF)는 ECC 회로(111)가 메모리 영역(110)의 입/출력 데이터의 오류 정정 동작을 수행할 때마다 생성될 수 있다.
캐시 메모리(102)는 사이즈와 용도에 맞도록 복수의 레벨로 구분된 캐시 클러스트들(Cache Clusters LV1 ~ Cache Clusters LVn), ECC 회로(121) 및 리페어 회로(122)를 포함할 수 있다.
ECC 회로(121)는 캐시 클러스트들(Cache Clusters LV1 ~ Cache Clusters LVn)의 입/출력 데이터의 오류 정정 동작을 수행할 수 있다.
리페어 회로(122)는 캐시 클러스트들(Cache Clusters LV1 ~ Cache Clusters LVn)의 리페어 동작을 수행할 수 있다.
캐시 메모리(102)는 자신의 오류 정정 발생 신호(ECC_INF)를 입/출력 버스(103)를 통해 캐시 메모리 컨트롤러(150) 또는/및 메인 메모리 컨트롤러(160)에 제공할 수 있다.
이때 오류 정정 발생 신호(ECC_INF)는 ECC 회로(121)가 캐시 클러스트들(Cache Clusters LV1 ~ Cache Clusters LVn)의 입/출력 데이터의 오류 정정 동작을 수행한 횟수를 포함할 수 있다.
메모리 컨트롤러(104)는 캐시 메모리 컨트롤러(150) 및 메인 메모리 컨트롤러(160)를 포함할 수 있다.
캐시 메모리 컨트롤러(150)는 캐시 메모리(102)의 데이터 입/출력 동작을 제어할 수 있다. 캐시 메모리 컨트롤러(150)는 프로세서(106)에서 데이터 리드/라이트 명령이 전송되면 캐시 메모리(102)와 메인 메모리(101) 중에서 우선적으로 사용되어야 할 메모리를 선택하는 것을 포함하는 제어 동작을 수행할 수 있다.
메인 메모리 컨트롤러(160)는 메인 메모리(101)의 데이터 입/출력 동작을 제어할 수 있다.
본 발명의 실시예는 메인 메모리(101) 및 캐시 메모리(102)의 메모리 영역을 복수의 관리 블록들로 구분하고, 각 관리 블록의 크기는 메모리 아키텍쳐, 사용 환경 또는 프로세스 등에 따라 사용자가 정의할 수 있다.
오류 관리 시스템(107)은 입/출력 버스(103)를 통해 전송된 오류 정정 발생 신호(ECC_INF)를 이용하여 복수의 관리 블록들 각각에서 발생되는 오류를 분석하여 일시 오류/영구 오류로 구분하며, 영구 오류에 해당하는 관리 블록을 사용금지 처리할 수 있다.
오류 관리 시스템(107)은 현재 입력된 어드레스 신호(ADD)가 영구 오류에 해당하여 사용금지 처리된 관리 블록인 경우 어드레스 신호(ADD)를 새로운 어드레스 신호로 대체할 수 있다.
이때 복수의 관리 블록들은 메인 메모리(101)와 캐시 메모리(102)에 대하여 독립적으로 설정하거나, 메인 메모리(101)와 캐시 메모리(102)를 구분하지 않고 설정할 수 있다.
복수의 관리 블록들은 랭크(Rank), 뱅크(Bank), 페이지(Page) 단위 또는 그에 비해 작은 영역 단위로 필요에 맞도록 설정될 수 있다.
도 2에 도시된 바와 같이, 본 발명의 실시예에 따른 오류 관리 시스템(107)은 블록 컨버터(200), 오류 분석부(300) 및 블록 제어부(700)를 포함할 수 있다.
블록 컨버터(200)는 복수의 관리 블록들 중에서 어드레스 신호(ADD)에 대응되는 관리 블록을 정의하는 액티브 관리 블록 정보(BLK_NUM_A)를 생성할 수 있다.
이때 복수의 관리 블록이 N개일 경우, 액티브 관리 블록 정보(BLK_NUM_A)는 log2(N)만큼의 비트(bit)들을 포함할 수 있다.
예를 들어, N=64라면, 액티브 관리 블록 정보(BLK_NUM_A)는 6 비트로 구성될 수 있다.
즉, 액티브 관리 블록 정보(BLK_NUM_A)가 '000000'이면 N 개의 관리 블록 중에서 1번 관리 블록(이하, 제 1 관리 블록)을 정의할 수 있고, 액티브 관리 블록 정보(BLK_NUM_A)가 '000001'이면 N 개의 관리 블록 중에서 제 2 관리 블록을 정의할 수 있으며, 이런 식으로 액티브 관리 블록 정보(BLK_NUM_A)가 '111111'이면 N 개의 관리 블록 중에서 마지막인 제 64 관리 블록을 정의할 수 있다.
블록 컨버터(200)는 칩 선택 신호(CS)가 활성화되면 어드레스 신호(ADD)에 대응되는 관리 블록을 정의하는 액티브 관리 블록 정보(BLK_NUM_A)를 생성할 수 있다.
추후 설명하기 앞서, 어드레스 신호(ADD)는 외부에서 입력된 어드레스 신호일 수 있으며, 어드레스 신호(ADD)의 신호 비트들 중에서 일부가 액티브 관리 블록 정보(BLK_NUM_A) 생성에 사용될 수 있다.
오류 분석부(300)는 복수의 관리 블록 각각의 오류 정정 발생을 카운팅하여 오류 정정 카운팅 값을 생성하고, 상기 오류 정정 카운팅 값과 적어도 하나의 기준 값을 비교하여 상기 복수의 관리 블록 각각에서 발생된 오류가 영구 오류인지 아니면 일시 오류 인지를 정의하기 위한 영구 오류 블록 정보(BLK_NUM_B<1:N>)를 생성할 수 있다.
오류 분석부(300)는 액티브 관리 블록 정보(BLK_NUM_A)가 지정하는 관리 블록에서 발생된 오류의 종류를 오류 분석 주기 신호(P_CLK<1:N>)에 따라 판별하여, 영구 오류가 발생된 관리 블록들을 정의하는 영구 오류 블록 정보(BLK_NUM_B<1:N>)를 생성할 수 있다.
오류 분석부(300)는 오류 분석 주기 신호 생성부(400) 및 오류 종류 판단부(500)를 포함할 수 있다.
오류 분석 주기 신호 생성부(400)는 리드 태그(RD_TAG), 액티브 관리 블록 정보(BLK_NUM_A) 및 제 1 기준값(REF1)에 따라 오류 분석 주기 신호(P_CLK<1:N>)를 생성할 수 있다.
리드 태그(RD_TAG)는 외부의 리드 명령(RD)에 따라 내부적으로 생성된 신호일 수 있다.
제 1 기준값(REF1)은 리드 명령(RD)의 입력 횟수를 판단하기 위한 기준 값일 수 있다.
오류 분석 주기 신호(P_CLK<1:N>) 각각은 복수의 관리 블록 각각에 대응될 수 있다.
즉, 오류 분석 주기 신호(P_CLK<1:N>) 각각이 N개의 관리 블록 각각에 대응될 수 있다.
오류 종류 판단부(500)는 오류 정정 발생 신호(ECC_INF), 오류 분석 주기 신호(P_CLK<1:N>)와 제 2 및 제 3 기준 값(REF<2:3>)에 따라 영구 오류 블록 정보(BLK_NUM_B<1:N>)를 생성할 수 있다.
블록 제어부(700)는 액티브 관리 블록 정보(BLK_NUM_A), 영구 오류 블록 정보(BLK_NUM_B<1:N>), 칩 선택 신호(CS) 및 어드레스 신호(ADD)에 따라 제어된 어드레스 신호(ADDN)를 생성할 수 있다.
제어된 어드레스 신호(ADDN)는 어드레스 신호(ADD)와 동일한 값을 갖거나, 어드레스 신호(ADD)와 다른 값을 가질 수 있다.
도 3에 도시된 바와 같이, 블록 컨버터(200)는 라운딩 오프 로직(Rounding off logic)(210) 및 계산 로직(220)을 포함할 수 있다.
라운딩 오프 로직(210)은 칩 선택 신호(CS)가 활성화되면 어드레스 신호(ADD)의 신호 비트들 중에서 일부를 제거하여 출력할 수 있다.
이미 언급한 바와 같이, 본 발명의 실시예에서 복수의 관리 블록은 랭크, 뱅크 또는 페이지 등의 단위로 구분되는데 반하여, 어드레스 신호(ADD)는 메모리 셀 단위까지를 지정하기 위한 신호 비트들을 포함하므로 전체 신호 비트들 중에서 일부는 필요 없다.
따라서 라운딩 오프 로직(210)은 어드레스 신호(ADD)의 신호 비트들 중에서 액티브 관리 블록 정보(BLK_NUM_A) 생성과 연관되지 않은 일부를 제거하여 출력할 수 있다.
계산 로직(220)은 라운딩 오프 로직(210)에서 제공된 어드레스 신호의 비트들이 복수의 관리 블록들 중에서 어떤 관리 블록에 대응되는지 계산하여 액티브 관리 블록 정보(BLK_NUM_A)로서 출력할 수 있다.
도 4에 도시된 바와 같이, 오류 분석 주기 신호 생성부(400)는 선택부(410), 복수의 카운터(CNT1 ~ CNTN) 및 복수의 비교기(CMP1 ~ CMPN)를 포함할 수 있다.
이때 복수의 카운터(CNT1 ~ CNTN) 및 복수의 비교기(CMP1 ~ CMPN)는 번호 순으로 하나의 카운터와 하나의 비교기가 복수의 관리 블록 각각에 할당될 수 있다.
즉, 카운터(CNT1)와 비교기(CMP1)가 첫 번째 관리 블록(예를 들어, 관리 블록 1)에 할당되고, 다른 카운터(CNT2)와 다른 비교기(CMP2)가 관리 블록 2에 할당되며, 이런 식으로 또 다른 카운터(CNTN)와 또 다른 비교기(CMPN)가 관리 블록 N에 할당될 수 있다.
선택부(410)는 액티브 관리 블록 정보(BLK_NUM_A)가 정의하는 관리 블록에 할당된 카운터(CNTi)(이때 i는 1 ~ N 중의 하나로서, i = 1로 가정)에 리드 태그(RD_TAG)를 제공할 수 있다.
카운터(CNT1)는 리드 태그(RD_TAG)를 카운트하여 그 카운팅 값을 출력할 수 있다.
비교기(CMP1)는 카운터(CNT1)에서 출력된 카운팅 값이 제 1 기준값(REF1) 이상이면 오류 분석 주기 신호(P_CLK<1:N>) 중에서 관리 블록 1에 대응되는 P_CLK<1>를 활성화시킬 수 있다. 즉, 펄스 형태로 생성할 수 있다.
예를 들어, 제 1 기준값(REF1)이 '10'이라 가정하면, 비교기(CMP1)는 리드 태그(RD_TAG)가 10회 발생되면 즉, 리드 명령이 10 회 입력되면 P_CLK<1>를 활성화시킬 수 있다.
또한 비교기(CMP1)는 카운터(CNT1)에서 출력된 카운팅 값이 제 1 기준값(REF1) 이상이면 리셋 신호(RST)를 활성화시킴으로써 카운터(CNT1)를 초기화시킬 수 있다.
상술한 방식으로, 복수의 카운터(CNT2 ~ CNTN) 및 복수의 비교기(CMP2 ~ CMPN)는 오류 분석 주기 신호(P_CLK<2:N>)를 생성할 수 있다.
도 5에 도시된 바와 같이, 오류 종류 판단부(500)는 복수의 오류 종류 판단 유닛(510-1 ~ 510-N) 및 레지스터 어레이(520)를 포함할 수 있다.
복수의 오류 종류 판단 유닛(510-1 ~ 510-N)은 서로 동일하게 구성될 수 있다.
복수의 오류 종류 판단 유닛(510-1 ~ 510-N) 중에서 제 1 관리 블록에 대응되는 오류 종류 판단 유닛(510-1)은 카운터(ECC CNT)(511), 제 1 및 제 2 레지스터(REG1, REG2)(512, 513), 감산기(514) 및 비교기(CMP)(515)를 포함할 수 있다.
카운터(511)는 오류 정정 발생 신호(ECC_INF)를 카운트할 수 있다.
카운터(511)는 오류 분석 주기 신호(P_CLK<1>)가 활성화(예를 들어, 하이 레벨로 토글)되면 오류 정정 발생 신호(ECC_INF)를 카운트한 카운팅 값(R1)을 제 1 레지스터(512)로 쉬프트 시키고, 카운팅 값(R1)을 초기화시킬 수 있다.
제 1 및 제 2 레지스터(512, 513)는 오류 분석 주기 신호(P_CLK<1>)가 활성화되면 자신의 저장 값을 다음 단으로 쉬프트시키고, 입력 신호를 저장할 수 있다.
감산기(514)는 제 2 레지스터(513)의 출력 값(R3)에서 제 1 레지스터(512)의 출력 값(R2)을 감산한 값을 차이 값(SUBOUT)으로서 출력할 수 있다.
비교기(515)는 차이 값(SUBOUT)과 제 2 레지스터(513)의 출력 값(R3)을 제 2 및 제 3 기준 값(REF<2:3>)과 비교하여 영구 오류 블록 정보(BLK_NUM_B<1>)를 생성할 수 있다.
이때 영구 오류 블록 정보(BLK_NUM_B<1>)는 제 1 관리 블록에서 발생된 오류가 영구 오류인지 여부를 정의할 수 있다.
제 1 관리 블록에서 발생된 오류가 영구 오류일 경우 시간의 경과에 따른 오류 정정 발생 횟수가 임시 오류인 경우에 비해 증가할 것이므로 이를 판단하기 적절한 값으로 제 2 기준 값(REF<2>)을 설정할 수 있다.
또한 제 1 관리 블록의 오류 정정 횟수의 절대값이 크지 않을 경우 리페어 동작 등을 통해 사용 가능하지만, 제 1 관리 블록의 오류 정정 횟수의 절대값이 일정 수준 이상인 경우 제 1 관리 블록의 사용이 어려울 수 있으므로 이를 판단하기 적절한 값으로 제 3 기준 값(REF3)을 설정할 수 있다.
따라서 비교기(515)는 차이 값(SUBOUT)이 제 2 기준 값(REF<2>)을 초과하고 제 2 레지스터(513)의 출력 값(R3)이 제 3 기준 값(REF<3>)을 초과하는 경우 영구 오류 블록 정보(BLK_NUM_B<1>)를 제 1 관리 블록에 발생된 오류가 영구 오류임을 정의하는 레벨(예를 들어, 하이 레벨)로 출력할 수 있다.
한편, 비교기(515)는 차이 값(SUBOUT)이 제 2 기준 값(REF<2>) 이하이거나, 제 2 레지스터(513)의 출력 값(R3)이 제 3 기준 값(REF<3>) 이하인 경우 영구 오류 블록 정보(BLK_NUM_B<1>)를 제 1 관리 블록에 발생된 오류가 일시 오류임을 정의하는 레벨(예를 들어, 로우 레벨)로 출력할 수 있다.
상술한 방식으로 나머지 오류 종류 판단 유닛들(510-2 ~ 510-N) 또한 영구 오류 블록 정보(BLK_NUM_B<2:N>) 각각을 해당 관리 블록에 발생된 오류가 영구 오류 또는 일시 오류임을 정의하는 레벨로 출력할 수 있다.
레지스터 어레이(520)는 영구 오류 블록 정보(BLK_NUM_B<1:N>)를 저장할 수 있다.
도 6에 도시된 바와 같이, 블록 제어부(700)는 검출부(710) 및 블록 차단부(720)를 포함할 수 있다.
검출부(710)는 칩 선택 신호(CS)가 활성화되면 액티브 관리 블록 정보(BLK_NUM_A)와 영구 오류 블록 정보(BLK_NUM_B<1:N>)를 비교하여 영구 오류 플래그(FAIL_BLK)를 생성할 수 있다.
이때 액티브 관리 블록 정보(BLK_NUM_A)는 N개의 복수의 관리 블록 중에서 현재 선택된 특정 관리 블록을 지정하는 정보이다.
한편, 영구 오류 블록 정보(BLK_NUM_B<1:N>)는 복수의 관리 블록 각각의 영구 오류 발생 여부에 관한 정보이므로 N개의 비트 중에서 복수개가 하이 레벨을 가질 수 있다.
따라서 검출부(710)는 액티브 관리 블록 정보(BLK_NUM_A)가 지정하는 관리 블록에 해당하는 영구 오류 블록 정보(BLK_NUM_B<1:N>)의 비트가 하이 레벨이면 영구 오류 플래그(FAIL_BLK)를 활성화시킬 수 있다.
즉, 영구 오류 플래그(FAIL_BLK)를 활성화시켜 현재 선택된 관리 블록이 이미 이전의 오류 분석을 통해 영구 오류로 판정된 관리 블록과 동일한 관리 블록임을 알릴 수 있다.
블록 차단부(720)는 영구 오류 플래그(FAIL_BLK)가 활성화되면(예를 들어, 하이 레벨이면) 어드레스 신호(ADD)를 메모리 사용 정보를 기반으로 새로운 값을 갖는 제어된 어드레스 신호(ADDN)로 대체함으로써 액티브 관리 블록 정보(BLK_NUM_A)에 해당하는 관리 블록을 사용 차단할 수 있다.
한편, 블록 차단부(720)는 영구 오류 플래그(FAIL_BLK)가 비 활성화 상태이면(예를 들어, 로우 레벨이면) 어드레스 신호(ADD)를 바이패스(bypass) 시킨다.
도 7 및 도 8을 참조하여, 본 발명의 실시예에 따른 오류 관리 방법을 설명하면 다음과 같다.
먼저, 리드 명령 카운팅 및 오류 정정 카운팅을 수행한다(S1).
클럭 신호(CLK)를 기준으로 칩 선택 신호(CS)가 활성화되고, 리드 명령(RD) 및 해당 어드레스 신호(ADD)가 입력될 수 있다. 이때 리드 명령 카운팅 및 오류 정정 카운팅은 복수의 관리 블록을 구분하지 않고 리드 명령(RD)에 따라 특정 관리 블록이 지정될 때마다 실시간으로 이루어질 수 있다. 다만, 설명의 편의를 위하여 어드레스 신호(ADD)에 따라 관리 블록 43이 선택된 것으로 가정한다.
또한 리드 명령(RD)에 따른 데이터 리드 동작이 이루어짐에 따라 오류 정정 발생 신호(ECC_INF)가 생성될 수 있다.
이때 리드 명령 카운팅은 관리 블록 43을 지정하여 입력되는 리드 명령에 따라 생성된 리드 태그(RD_TAG)을 카운팅하는 동작(CNT43)일 수 있으며, 오류 정정 카운팅은 관리 블록 43에 대하여 오류 정정이 수행될 때마다 발생되는 오류 정정 발생 신호(ECC_INF)를 카운팅하는 동작일 수 있다.
이어서 리드 명령 카운팅 값이 제 1 기준 값(REF1) 보다 큰지 여부를 판단한다(S2).
판단 결과(S2), 리드 명령 카운팅 값이 제 1 기준 값(REF1) 보다 크면(REF1 + 1), 오류 분석 주기 신호(P_CLK<43>)가 생성될 때까지 누적된 오류 정정 카운팅 값을 쉬프팅시킨다(S3)(도 5 참조).
이때 카운터(ECC CNT)는 오류 정정 발생 신호(ECC_INF)를 카운트하여 자신의 카운팅 값을 증가시키고(D0 - D1), 오류 분석 주기 신호(P_CLK<43>)에 따라 '0'으로 초기화시킨다. 또한 제 1 및 제 2 레지스터(REG1, REG2)는 오류 분석 주기 신호(P_CLK<43>)에 따라 각각의 저장 값을 다음 단으로 쉬프트시킬 수 있다(D2 - D1, D3 - D2).
그리고 현재 주기의 오류 정정 카운팅 값 즉, 제 1 레지스터(512)의 출력 값(R2)과 이전 주기의 오류 정정 카운팅 값 즉, 제 2 레지스터(513)의 출력 값(R3) 의 차이 값(SUBOUT)을 계산한다(S4)(도 5 참조).
이어서 차이 값(SUBOUT)이 제 2 기준 값(REF<2>)을 초과하고 제 2 레지스터(513)의 출력 값(R3)이 제 3 기준 값(REF<3>)을 초과하는지 비교한다(S5).
비교 결과(S5), 차이 값(SUBOUT)이 제 2 기준 값(REF<2>)을 초과하고 제 2 레지스터(513)의 출력 값(R3)이 제 3 기준 값(REF<3>)을 초과하면 관리 블록 43을 영구 오류로 판단한다(S6).
한편, 비교 결과(S5), 차이 값(SUBOUT)이 제 2 기준 값(REF<2>) 이하이거나, 제 2 레지스터(513)의 출력 값(R3)이 제 3 기준 값(REF<3>) 이하이면 관리 블록 43을 임시 오류로 판단한다(S7).
그리고 액티브 관리 블록 정보(BLK_NUM_A)과 영구 오류 블록 정보(BLK_NUM_B<1:N>)를 비교하여, 관리 블록 43이 이미 이전의 오류 분석을 통해 영구 오류로 판정된 관리 블록과 동일한 관리 블록인지 여부를 판단한다(S8).
판단결과(S8), 관리 블록 43이 이미 이전의 오류 분석을 통해 영구 오류로 판정된 관리 블록과 동일한 관리 블록이면 관리 블록 43을 사용차단하고 현재 입력된 어드레스를 새로운 어드레스로 대체한다(S9).
한편, 판단결과(S8), 관리 블록 43이 이미 이전의 오류 분석을 통해 영구 오류로 판정된 관리 블록과 동일한 관리 블록이 아니면 현재 입력된 어드레스를 바이패스시킨다(S10).
대체된 어드레스 또는 현재 입력된 어드레스는 캐시 메모리 컨트롤러(150) 또는/및 메인 메모리 컨트롤러(160)를 통해 캐시 메모리(102) 또는 메인 메모리(101)에 제공되어 명령(CMD)에 해당하는 동작이 수행될 수 있다.
이와 같이, 본 발명이 속하는 기술분야의 당업자는 본 발명이 그 기술적 사상이나 필수적 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적인 것이 아닌 것으로서 이해해야만 한다. 본 발명의 범위는 상기 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 그 등가개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다.
Claims (19)
- 복수의 관리 블록 중에서 어드레스 신호에 따라 선택된 관리 블록이 영구 오류 블록 정보에 이미 지정되어 있으면 상기 어드레스 신호를 새로운 어드레스 신호로 대체하는 블록 제어부;
리드 명령, 액티브 관리 블록 정보 및 제 1 기준값에 따라 오류 분석 주기 신호를 생성하도록 구성된 오류 분석 주기 신호 생성부; 및
오류 정정 발생 신호, 상기 오류 분석 주기 신호와 제 2 및 제 3 기준 값에 따라 상기 영구 오류 블록 정보를 생성하도록 구성된 오류 종류 판단부를 포함하며,
상기 오류 종류 판단부는
상기 복수의 관리 블록 각각에 대응되는 복수의 오류 종류 판단 유닛을 포함하며,
상기 복수의 오류 종류 판단 유닛은 각각
상기 오류 정정 발생 신호를 카운트 한 값을 상기 오류 분석 주기 신호가 활성화되면 다음 단으로 쉬프팅시키도록 구성된 카운터,
상기 오류 분석 주기 신호에 따라 상기 카운터의 출력을 순차적으로 쉬프팅시키도록 구성된 복수의 레지스터,
상기 복수의 레지스터의 출력 값들의 차이 값을 생성하도록 구성된 감산기, 및
상기 차이 값과 상기 복수의 레지스터 중에서 어느 하나의 출력 값을 상기 제 2 및 제 3 기준 값과 비교하여 상기 영구 오류 블록 정보를 생성하도록 구성된 비교기를 포함하는 오류 관리 시스템. - ◈청구항 2은(는) 설정등록료 납부시 포기되었습니다.◈제 1 항에 있어서,
상기 어드레스 신호에 따라 상기 복수의 관리 블록 중에서 어느 하나를 정의하는 상기 액티브 관리 블록 정보를 생성하는 블록 컨버터를 더 포함하는 오류 관리 시스템. - ◈청구항 3은(는) 설정등록료 납부시 포기되었습니다.◈제 2 항에 있어서,
상기 블록 컨버터는
상기 어드레스 신호의 신호 비트들 중에서 일부를 제거하여 출력하도록 구성된 라운딩 오프 로직, 및
상기 라운딩 오프 로직의 출력이 상기 복수의 관리 블록들 중에서 어떤 관리 블록에 대응되는지 계산한 결과를 상기 액티브 관리 블록 정보로서 출력하도록 구성된 계산 로직을 포함하는 오류 관리 시스템. - ◈청구항 4은(는) 설정등록료 납부시 포기되었습니다.◈제 2 항에 있어서,
상기 블록 제어부는
상기 영구 오류 블록 정보와 상기 액티브 관리 블록 정보를 비교하여 상기 어드레스 신호를 상기 새로운 어드레스 신호로 대체하도록 구성되는 오류 관리 시스템. - 삭제
- ◈청구항 6은(는) 설정등록료 납부시 포기되었습니다.◈제 1 항에 있어서,
상기 오류 분석 주기 신호의 각 비트는 상기 복수의 관리 블록 각각에 대응되는 오류 관리 시스템. - ◈청구항 7은(는) 설정등록료 납부시 포기되었습니다.◈제 1 항에 있어서,
상기 오류 분석 주기 신호 생성부는
하나의 카운터 및 이와 연결된 하나의 비교기가 상기 복수의 관리 블록 각각에 할당되는 복수의 카운터와 복수의 비교기, 및
상기 복수의 카운터 중에서 상기 액티브 관리 블록 정보가 정의하는 관리 블록에 할당된 카운터에 상기 리드 명령을 제공하도록 구성된 선택부를 포함하며,
상기 복수의 비교기 각각은 자신과 연결된 카운터에서 출력된 카운팅 값이 상기 제 1 기준값 이상이면 상기 오류 분석 주기 신호의 비트들 중에서 자신이 할당된 관리 블록에 대응되는 신호 비트를 활성화시키도록 구성되는 오류 관리 시스템. - 삭제
- ◈청구항 9은(는) 설정등록료 납부시 포기되었습니다.◈제 1 항에 있어서,
상기 블록 제어부는
상기 액티브 관리 블록 정보와 상기 영구 오류 블록 정보를 비교하여 영구 오류 플래그를 생성하도록 구성된 검출부, 및
상기 영구 오류 플래그가 활성화되면 상기 어드레스 신호를 새로운 어드레스 신호로 대체함으로써 상기 액티브 관리 블록 정보에 해당하는 관리 블록을 사용 차단하도록 구성된 블록 차단부를 포함하는 오류 관리 시스템. - 입/출력 버스를 통해 연결된 프로세서, 메모리 시스템, 메모리 컨트롤러 및 오류 관리 시스템을 포함하며,
상기 메모리 시스템의 메모리 영역은 복수의 관리 블록으로 구분되고, 오류 정정 코드 회로에 의한 오류 정정이 발생할 때마다 오류 정정 발생 신호를 생성하며,
상기 오류 관리 시스템은
복수의 관리 블록 중에서 어드레스 신호에 따라 선택된 관리 블록이 영구 오류 블록 정보에 이미 지정되어 있으면 상기 어드레스 신호를 새로운 어드레스 신호로 대체하는 블록 제어부;
리드 명령, 액티브 관리 블록 정보 및 제 1 기준값에 따라 오류 분석 주기 신호를 생성하도록 구성된 오류 분석 주기 신호 생성부; 및
오류 정정 발생 신호, 상기 오류 분석 주기 신호와 제 2 및 제 3 기준 값에 따라 상기 영구 오류 블록 정보를 생성하도록 구성된 오류 종류 판단부를 포함하며,
상기 오류 종류 판단부는
상기 복수의 관리 블록 각각에 대응되는 복수의 오류 종류 판단 유닛을 포함하며,
상기 복수의 오류 종류 판단 유닛은 각각
상기 오류 정정 발생 신호를 카운트 한 값을 상기 오류 분석 주기 신호가 활성화되면 다음 단으로 쉬프팅시키도록 구성된 카운터,
상기 오류 분석 주기 신호에 따라 상기 카운터의 출력을 순차적으로 쉬프팅시키도록 구성된 복수의 레지스터,
상기 복수의 레지스터의 출력 값들의 차이 값을 생성하도록 구성된 감산기, 및
상기 차이 값과 상기 복수의 레지스터 중에서 어느 하나의 출력 값을 상기 제 2 및 제 3 기준 값과 비교하여 상기 영구 오류 블록 정보를 생성하도록 구성된 비교기를 포함하는 데이터 처리 시스템. - 삭제
- ◈청구항 12은(는) 설정등록료 납부시 포기되었습니다.◈제 10 항에 있어서,
상기 어드레스 신호에 따라 상기 복수의 관리 블록 중에서 어느 하나를 정의하는 상기 액티브 관리 블록 정보를 생성하는 블록 컨버터를 더 포함하는 데이터 처리 시스템. - ◈청구항 13은(는) 설정등록료 납부시 포기되었습니다.◈제 12 항에 있어서,
상기 블록 컨버터는
상기 어드레스 신호의 신호 비트들 중에서 일부를 제거하여 출력하도록 구성된 라운딩 오프 로직, 및
상기 라운딩 오프 로직의 출력이 상기 복수의 관리 블록들 중에서 어떤 관리 블록에 대응되는지 계산한 결과를 상기 액티브 관리 블록 정보로서 출력하도록 구성된 계산 로직을 포함하는 데이터 처리 시스템. - ◈청구항 14은(는) 설정등록료 납부시 포기되었습니다.◈제 12 항에 있어서,
상기 블록 제어부는
상기 영구 오류 블록 정보와 상기 액티브 관리 블록 정보를 비교하여 상기 어드레스 신호를 상기 새로운 어드레스 신호로 대체하도록 구성되는 데이터 처리 시스템. - 삭제
- ◈청구항 16은(는) 설정등록료 납부시 포기되었습니다.◈제 10 항에 있어서,
상기 오류 분석 주기 신호의 각 비트는 상기 복수의 관리 블록 각각에 대응되는 데이터 처리 시스템. - ◈청구항 17은(는) 설정등록료 납부시 포기되었습니다.◈제 10 항에 있어서,
상기 오류 분석 주기 신호 생성부는
하나의 카운터 및 이와 연결된 하나의 비교기가 상기 복수의 관리 블록 각각에 할당되는 복수의 카운터와 복수의 비교기, 및
상기 복수의 카운터 중에서 상기 액티브 관리 블록 정보가 정의하는 관리 블록에 할당된 카운터에 상기 리드 명령을 제공하도록 구성된 선택부를 포함하며,
상기 복수의 비교기 각각은 자신과 연결된 카운터에서 출력된 카운팅 값이 상기 제 1 기준값 이상이면 상기 오류 분석 주기 신호의 비트들 중에서 자신이 할당된 관리 블록에 대응되는 신호 비트를 활성화시키도록 구성되는 데이터 처리 시스템. - 삭제
- ◈청구항 19은(는) 설정등록료 납부시 포기되었습니다.◈제 10 항에 있어서,
상기 블록 제어부는
상기 액티브 관리 블록 정보와 상기 영구 오류 블록 정보를 비교하여 영구 오류 플래그를 생성하도록 구성된 검출부, 및
상기 영구 오류 플래그가 활성화되면 상기 어드레스 신호를 새로운 어드레스 신호로 대체함으로써 상기 액티브 관리 블록 정보에 해당하는 관리 블록을 사용 차단하도록 구성된 블록 차단부를 포함하는 데이터 처리 시스템.
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020170080536A KR102259928B1 (ko) | 2017-06-26 | 2017-06-26 | 오류 관리 시스템 및 이를 포함하는 데이터 처리 시스템 |
US15/854,191 US10733049B2 (en) | 2017-06-26 | 2017-12-26 | Semiconductor device and error management method |
CN201810145664.5A CN109119126B (zh) | 2017-06-26 | 2018-02-12 | 半导体器件和错误管理方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020170080536A KR102259928B1 (ko) | 2017-06-26 | 2017-06-26 | 오류 관리 시스템 및 이를 포함하는 데이터 처리 시스템 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20190001099A KR20190001099A (ko) | 2019-01-04 |
KR102259928B1 true KR102259928B1 (ko) | 2021-06-03 |
Family
ID=64693278
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020170080536A KR102259928B1 (ko) | 2017-06-26 | 2017-06-26 | 오류 관리 시스템 및 이를 포함하는 데이터 처리 시스템 |
Country Status (3)
Country | Link |
---|---|
US (1) | US10733049B2 (ko) |
KR (1) | KR102259928B1 (ko) |
CN (1) | CN109119126B (ko) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20180135628A (ko) * | 2017-06-13 | 2018-12-21 | 에스케이하이닉스 주식회사 | 전원 게이팅 회로를 포함하는 반도체 장치 |
KR20210026487A (ko) * | 2019-08-30 | 2021-03-10 | 삼성전자주식회사 | 휘발성 메모리 장치의 리페어 제어 방법 및 이를 수행하는 스토리지 장치 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2012146129A (ja) | 2011-01-12 | 2012-08-02 | Mega Chips Corp | メモリアクセス制御装置 |
US20130139033A1 (en) * | 2011-11-28 | 2013-05-30 | Cisco Technology, Inc. | Techniques for embedded memory self repair |
US20170147416A1 (en) * | 2015-11-25 | 2017-05-25 | Stmicroelectronics International N.V. | Electronic device having fault monitoring for a memory and associated methods |
Family Cites Families (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3898444A (en) * | 1973-12-28 | 1975-08-05 | Ibm | Binary counter with error detection and transient error correction |
US7197670B2 (en) * | 2003-12-31 | 2007-03-27 | Intel Corporation | Methods and apparatuses for reducing infant mortality in semiconductor devices utilizing static random access memory (SRAM) |
DE102004046611A1 (de) * | 2004-09-25 | 2006-03-30 | Robert Bosch Gmbh | Verfahren zur Abarbeitung eines Computerprogramms auf einem Computersystem |
US7610544B2 (en) * | 2005-05-18 | 2009-10-27 | Telegent Systems, Inc. | Erasure generation in a forward-error-correcting communication system |
US8930779B2 (en) * | 2009-11-20 | 2015-01-06 | Rambus Inc. | Bit-replacement technique for DRAM error correction |
FR2961613B1 (fr) * | 2010-06-18 | 2012-07-27 | Commissariat Energie Atomique | Procede de protection memoire configurable contre les erreurs permanentes et transitoires et dispositif apparente |
KR101991900B1 (ko) * | 2013-03-13 | 2019-06-24 | 삼성전자주식회사 | 메모리 장치의 동작 방법, 이를 이용한 메모리 장치 및 이를 포함하는 메모리 시스템 |
US20150067444A1 (en) * | 2013-09-04 | 2015-03-05 | Kabushiki Kaisha Toshiba | Semiconductor storage device and memory system |
JP6488541B2 (ja) * | 2013-12-18 | 2019-03-27 | 富士通株式会社 | 論理回路及び論理回路の制御方法 |
US9208024B2 (en) * | 2014-01-10 | 2015-12-08 | Freescale Semiconductor, Inc. | Memory ECC with hard and soft error detection and management |
KR20150084244A (ko) | 2014-01-13 | 2015-07-22 | 삼성전자주식회사 | 메모리 장치, 메모리 시스템 및 메모리 장치의 동작 방법 |
US9575862B1 (en) * | 2014-01-30 | 2017-02-21 | Altera Corporation | Integrated circuits with error handling capabilities |
KR102262909B1 (ko) * | 2014-12-18 | 2021-06-10 | 에스케이하이닉스 주식회사 | 메모리 시스템 동작 방법 |
US9691505B2 (en) * | 2015-03-27 | 2017-06-27 | Intel Corporation | Dynamic application of error correction code (ECC) based on error type |
-
2017
- 2017-06-26 KR KR1020170080536A patent/KR102259928B1/ko active IP Right Grant
- 2017-12-26 US US15/854,191 patent/US10733049B2/en active Active
-
2018
- 2018-02-12 CN CN201810145664.5A patent/CN109119126B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2012146129A (ja) | 2011-01-12 | 2012-08-02 | Mega Chips Corp | メモリアクセス制御装置 |
US20130139033A1 (en) * | 2011-11-28 | 2013-05-30 | Cisco Technology, Inc. | Techniques for embedded memory self repair |
US20170147416A1 (en) * | 2015-11-25 | 2017-05-25 | Stmicroelectronics International N.V. | Electronic device having fault monitoring for a memory and associated methods |
Also Published As
Publication number | Publication date |
---|---|
US20180373594A1 (en) | 2018-12-27 |
KR20190001099A (ko) | 2019-01-04 |
CN109119126B (zh) | 2022-05-24 |
US10733049B2 (en) | 2020-08-04 |
CN109119126A (zh) | 2019-01-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9189326B2 (en) | Detecting and correcting hard errors in a memory array | |
US9685217B2 (en) | Memory device with over-refresh and method thereof | |
US10614907B2 (en) | Short detection and inversion | |
US9535785B2 (en) | ECC method for flash memory | |
US9507662B2 (en) | Expanded error correction codes | |
KR20190027388A (ko) | 확률론적 데이터 구조에 기초한 메모리 내의 사전적인 교정 조치 | |
US9330788B2 (en) | Semiconductor integrated circuit capable of performing self-test | |
KR20080070248A (ko) | 반도체 메모리 장치 및 그것의 메모리 셀 억세스 방법 | |
KR102389259B1 (ko) | 메모리 장치 및 메모리 장치의 동작 방법 | |
US10157093B2 (en) | Data integrity check within a data processing system | |
KR20160024962A (ko) | 온-디맨드 블록 관리 | |
KR102259928B1 (ko) | 오류 관리 시스템 및 이를 포함하는 데이터 처리 시스템 | |
CN109716439A (zh) | 用于以电流积分感测产生概率信息的设备及方法 | |
KR20140134497A (ko) | 메모리 시스템 및 그것의 캐시 관리 방법 | |
KR20210029661A (ko) | 메모리 액세스와 관련하여 결함 있는 비트 라인 관리 | |
US9298614B2 (en) | Combined rank and linear address incrementing utility for computer memory test operations | |
US10338984B2 (en) | Storage control apparatus, storage apparatus, and storage control method | |
CN104809031A (zh) | 操作存储器的方法及存储器装置 | |
CN100437527C (zh) | 存储器装置 | |
CN113742123A (zh) | 内存故障信息记录方法及设备 | |
CN111831486B (zh) | 半导体装置和包括该半导体装置的半导体*** | |
US7082490B2 (en) | Method and system for enhancing the endurance of memory cells | |
CN108962322B (zh) | 使用非易失性存储器来实施非易失性计数器的方法和*** | |
US11532375B2 (en) | Latch circuit and memory device including the same | |
AU604101B2 (en) | High availability cache organization |
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 |