KR101548875B1 - 메모리의 오류검사정정 성능 향상방법 - Google Patents

메모리의 오류검사정정 성능 향상방법 Download PDF

Info

Publication number
KR101548875B1
KR101548875B1 KR1020140113454A KR20140113454A KR101548875B1 KR 101548875 B1 KR101548875 B1 KR 101548875B1 KR 1020140113454 A KR1020140113454 A KR 1020140113454A KR 20140113454 A KR20140113454 A KR 20140113454A KR 101548875 B1 KR101548875 B1 KR 101548875B1
Authority
KR
South Korea
Prior art keywords
spare
memory cell
memory
column
defective
Prior art date
Application number
KR1020140113454A
Other languages
English (en)
Inventor
양준성
한현승
Original Assignee
성균관대학교산학협력단
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 성균관대학교산학협력단 filed Critical 성균관대학교산학협력단
Priority to KR1020140113454A priority Critical patent/KR101548875B1/ko
Priority to US14/839,223 priority patent/US9779838B2/en
Application granted granted Critical
Publication of KR101548875B1 publication Critical patent/KR101548875B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/52Protection of memory contents; Detection of errors in memory contents
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1008Adding 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/1048Adding 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
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C29/08Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
    • G11C29/12Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
    • G11C29/44Indication or identification of errors, e.g. for repair
    • G11C29/4401Indication or identification of errors, e.g. for repair for self repair
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/70Masking faults in memories by using spares or by reconfiguring
    • G11C29/76Masking faults in memories by using spares or by reconfiguring using address translation or modifications
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C15/00Digital stores in which information comprising one or more characteristic parts is written into the store and in which information is read-out by searching for one or more of these characteristic parts, i.e. associative or content-addressed stores

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • For Increasing The Reliability Of Semiconductor Memories (AREA)

Abstract

메모리의 오류검사정정 성능 향상방법이 개시된다. 메모리의 오류검사정정 성능 향상방법은 메모리셀들로 이루어진 매트릭스 구조의 메모리셀 어레이와 상기 메모리셀에 결함이 발생한 결함 메모리셀을 대체하여 주기 위한 스페어 메모리셀들로 이루어진 매트릭스 구조의 스페어셀 어레이에서, 상기 결함 메모리셀을 가지는 상기 메모리셀 어레이의 결함컬럼을 상기 스페어셀 어레이의 스페어컬럼으로 대체하는 단계; 상기 결함컬럼 내의 하나 이상의 메모리셀에 오류정정부호의 체크비트를 저장하는 단계; 상기 결함 메모리셀에 대한 결함정보를 저장하는 단계; 상기 결함정보를 이용하여 상기 체크비트를 저장한 메모리셀을 메모리의 오류검사정정에 사용할지 여부를 선택하는 단계; 및 상기 선택결과에 따라 선택된 메모리셀을 이용하여 메모리의 오류검사정정을 수행하는 단계를 포함한다.

Description

메모리의 오류검사정정 성능 향상방법{METHOD FOR IMPROVING ERROR CHECKING AND CORRECTION PERFORMANCE OF MEMORY}
본 발명은 메모리에 관한 것으로서, 보다 상세하게는 메모리의 오류검사정정(error check and correct, ECC) 성능을 향상시키는 방법에 관한 것이다.
메모리 집적도가 높아지면서 소프트 에러(soft error)의 발생률이 높아지고 이를 해결하기 위해 ECC 메모리의 비중이 높아지게 되었다. 소프트 에러는 전자기적인 간섭, 정전기, 우주선(cosmic ray) 등에 의하여 발생될 수 있다. 메모리 내의 오류검사정정은 오류정정부호를 통하여 수행된다.
메모리에서 발생되는 에러를 극복하기 위하여는 오류검사정정(error check and correct)이 필수적이고, SEC-DED 코드와 SEC-DED-DAEC 코드와 같은 메모리의 오류정정부호(error correction code)는 메모리 설계에 필수적인 부분이 되었다.
메모리의 고집적화는 공정 결함(defect) 발생률을 높이게 되었고 메모리셀 에레이에서 결함이 발생한 메모리셀을 수리하기 위해 스페어 로우(spare row) 또는 스페어 컬럼(spare column)을 사용하는 방식이 보편화되었다.
도 1a 및 도 1b는 종래 결함 메모리셀을 가지는 메모리셀 어레이의 결함컬럼을 스페어셀 어레이의 스페어컬럼으로 대체하는 것을 설명하기 위한 도면이다.
도 1a 및 도 1b에서 메모리셀 어레이는 16×2 행렬 구조를 가지고 있고, 스페어셀 어레이는 4×2 행렬 구조를 가지고 있다.
도 1a를 참조하면, 메모리셀 어레이의 첫번째 로우는 로우방향을 따라 11번째 메모리셀에 결함이 발생되어 검은색으로 표시되어 있고, 두번째 로우는 로우방향을 따라 8번째 메모리셀에 결함이 발생되어 검은색으로 표시되어 있다. 결함이 없는 메모리셀은 흰색으로 표시되어 있고, 스페어셀 어레이의 스페어 메모리셀은 회색으로 표시되어 있다.
도 1b를 참조하면, 첫번째 로우의 결함 메모리셀을 가지는 결함컬럼은 스페어셀 어레이의 로우방향을 따라 네번째 스페어 컬럼으로 대체되었고, 두번째 로우의 결함 메모리셀을 가지는 결함컬럼은 스페어셀 어레이의 로우방향을 따라 세번째 스페어 컬럼으로 대체되었다. 이 경우 빗금으로 표시된 메모리셀은 대체된 후 일반적으로 사용되지 않고 방치되는 메모리셀을 표시하고 있다. 대체가 한번 수행되면, 대체된 결함컬럼은 사용되지 않는 상태로 방치된다. 그러나, 결함컬럼 내에는 여전히 정상 동작할 수 있는 메모리셀들이 존재하고 있지만 메모리 셀들은 메모리 동작과 관련하여 전혀 사용되지 않는다. 따라서 결함컬럼을 스페어컬럼으로 대체하는 종래의 방법은 결함컬럼 내의 메모리셀을 이용할 수 없는 문제점이 있다.
본 발명이 해결하고자 하는 기술적 과제는, 대체에 사용되지 않은 스페어 컬럼과 결함컬럼 내의 하나 이상의 메모리셀에 오류정정부호의 추가적인 체크비트를 저장하고, 체크비트를 저장한 메모리셀을 이용함으로써 메모리의 오류검사정정(error check and correct, ECC) 성능을 향상시킬 수 있는 방법을 제공하는 것이다.
상기와 같은 기술적 과제를 해결하기 위해, 본 발명의 실시예에 따른 메모리의 오류검사정정 성능 향상방법은 메모리셀들로 이루어진 매트릭스 구조의 메모리셀 어레이와 상기 메모리셀에 결함이 발생한 결함 메모리셀을 대체하여 주기 위한 스페어 메모리셀들로 이루어진 매트릭스 구조의 스페어셀 어레이에서, 상기 결함 메모리셀을 가지는 상기 메모리셀 어레이의 결함컬럼을 상기 스페어셀 어레이의 스페어컬럼으로 대체하는 단계; 대체에 사용되지 않은 스페어 컬럼 및/또는 상기 결함컬럼 내의 하나 이상의 메모리셀에 오류정정부호의 체크비트를 저장하는 단계; 상기 결함 메모리셀에 대한 결함정보를 저장하는 단계; 상기 결함정보를 이용하여 상기 체크비트를 저장한 메모리셀을 메모리의 오류검사정정에 사용할지 여부를 선택하는 단계; 및 상기 선택결과에 따라 선택된 메모리셀을 이용하여 메모리의 오류검사정정을 수행하는 단계를 포함할 수 있다.
오류검사정정(error checking and correction)은 오류정정코드(error correction code)를 이용하여 데이터의 오류를 검사하고 정정하는 방법을 말한다. 일반적으로 검사는 정정보다는 넓은 범위에 걸쳐 수행될 수 있다.
오류정정부호로는 선형 블록 코드인 SEC-DED 코드 또는 SEC-DED-DAEC(Single-error-correcting, Double-error-detecting and Double-adjacent-error-correcting) 코드가 사용될 수 있으나 이에 한정되는 것은 아니다.
하나의 실시예로 상기 결함정보를 저장하는 단계는, 상기 스페어셀 어레이의 스페어컬럼 중 대체에 사용되지 않은 스페어컬럼인 정보저장용 스페어컬럼에 상기 결함정보를 저장하는 단계를 포함할 수 있다. 정보저장용 스페어컬럼은 스페어셀 어레이에 포함된 스페어컬럼들 중 하나일 수 있다.
결함정보는 펌웨어(firmware) 또는 내장된 자기-정정(built-in self-repair, BISR) 로직(logic)에 의한 리셋 과정 또는 부팅(booting) 과정 중에 기록될 수 있다.
하나의 실시예로 상기 결함정보는, 상기 결함컬럼 내의 결함 메모리셀이 배치된 위치에 대한 정보일 수 있다. 결함 메모리셀이 배치된 위치에 대한 정보는 결함 컬럼이 대체된 후의 스페어셀 어레이의 로우 또는 컬럼 방향을 따라 결함 메모리셀을 가지는 결함로우 또는 결함컬럼에서 결함 메모리셀이 배치된 위치에 대한 정보일 수 있다.
하나의 실시예로 상기 정보저장용 스페어컬럼에 상기 결함정보를 저장하는 단계는, 상기 결함 메모리셀이 존재하는 경우에는 상기 결함 메모리셀이 존재하는 해당 로우방향에 배치된 상기 정보저장용 스페어컬럼의 스페어 메모리셀에 1이 저장되고, 상기 결함 메모리셀이 존재하지 않는 경우에는 상기 결함 메모리셀이 존재하지 않는 해당 로우방향에 배치된 상기 정보저장용 스페어컬럼의 스페어 메모리셀에 0이 저장되는 단계를 포함할 수 있다.
하나의 실시예로 상기 결함정보를 이용하여 상기 체크비트를 저장한 메모리셀을 메모리의 오류검사정정에 사용할지 여부를 선택하는 단계는, 상기 정보저장용 스페어컬럼의 스페어 메모리셀에 1이 저장된 경우에는, 상기 1이 저장된 상기 스페어 메모리셀이 위치한 로우방향을 따라 배치된 상기 결함컬럼 내의 메모리셀을 선택하지 않는 단계를 포함할 수 있다.
하나의 실시예로 상기 결함정보를 이용하여 상기 체크비트를 저장한 메모리셀을 메모리의 오류검사정정에 사용할지 여부를 선택하는 단계는, 상기 정보저장용 스페어컬럼의 스페어 메모리셀에 0이 저장된 경우에는, 상기 0이 저장된 상기 스페어 메모리셀이 위치한 로우방향을 따라 배치된 상기 결함컬럼 내의 메모리셀을 선택하는 단계를 포함할 수 있다.
본 발명의 다른 실시예에 따른 메모리의 오류검사정정 성능 향상방법은 메모리셀들로 이루어진 매트릭스 구조의 메모리셀 어레이와 상기 메모리셀에 결함이 발생한 결함 메모리셀을 대체하여 주기 위한 스페어 메모리셀들로 이루어진 매트릭스 구조의 스페어셀 어레이에서, 상기 결함 메모리셀을 가지는 상기 메모리셀 어레이의 결함컬럼을 상기 스페어셀 어레이의 스페어컬럼으로 대체하는 단계; 상기 결함컬럼 내의 하나 이상의 메모리셀에 오류정정부호의 체크비트를 저장하는 단계; 상기 결함 메모리셀에 대한 결함정보를 저장부에 저장하는 단계; 상기 결함정보를 이용하여 상기 체크비트를 저장한 메모리셀을 메모리의 오류검사정정에 사용할지 여부를 선택하는 단계; 및 상기 선택결과에 따라 선택된 메모리셀을 이용하여 메모리의 오류검사정정을 수행하는 단계를 포함할 수 있다.
하나의 실시예로 상기 결함정보는, 로우방향을 따라 상기 결함 메모리셀을 가지는 결함로우에 대한 주소정보일 수 있다. 결함로우는 결함컬럼이 스페어 컬럼으로 대체된 후 결함 메모리셀을 가지는 스페어셀 어레이 내의 해당 로우일 수 있다.
하나의 실시예로 상기 결함정보를 이용하여 상기 체크비트를 저장한 메모리셀을 메모리의 오류검사정정에 사용할지 여부를 선택하는 단계는, 상기 저장부에 주소정보가 저장된 결함로우의 로우방향을 따라 배치된 상기 결함컬럼 내의 메모리셀을 선택하지 않는 단계를 포함할 수 있다.
하나의 실시예로 상기 저장부는, 상기 결함컬럼을 식별할 수 있는 영역들로 구분되어 있을 수 있다.
하나의 실시예로 상기 영역들의 구분은, 대체되기 전의 스페어컬럼이 상기 스페어셀 어레이에 배치된 상태에 따라 구분되어 있을 수 있다.
하나의 실시예로 상기 영역들 각각에, 상기 결함정보가 저장될 수 있다.
하나의 실시예로 상기 결함정보를 이용하여 상기 체크비트를 저장한 메모리셀을 메모리의 오류검사정정에 사용할지 여부를 선택하는 단계는, 상기 저장부에 주소정보가 저장되지 않은 정상로우의 로우방향을 따라 배치된 상기 결함컬럼 내의 메모리셀을 선택하는 단계를 포함할 수 있다.
하나의 실시예로 상기 결함정보를 이용하여 상기 체크비트를 저장한 메모리셀을 메모리의 오류검사정정에 사용할지 여부를 선택하는 단계는, 상기 저장부에 주소정보가 저장된 결함로우의 로우방향을 따라 배치된 상기 결함컬럼 내의 메모리셀 중 상기 메모리셀 어레이와 상기 결함 메모리셀 사이에 배치된 메모리셀을 선택하는 단계를 포함할 수 있다.
하나의 실시예로 상기 저장부는, CAM(Content Addressable Memory)일 수 있다. CAM은 매우 빠른 속도를 요하는 탐색 애플리케이션에서 사용되는 특수한 메모리로서 연관 메모리(associative memory)라고도 하며, 저장부는 상기 메모리셀 어레이와 상기 스페어셀 어레이의 외부에 배치될 수 있다. 별도의 저장부를 두고 결함정보를 저정하는 것에 대하여는 아래에서 상세히 설명하기로 한다.
상기와 같은 본 발명은, 대체되지 않은 스페어 컬럼 내의 메모리셀 및/또는 대체된 결함컬럼 내의 메모리셀에 추가적인 체크비트를 저장하여 이를 오류검사정정에 활용할 수 있는 효과가 있다.
또한, 대체되지 않은 스페어 컬럼 내의 메모리셀 및/또는 대체된 결함컬럼 내의 메모리셀에 추가적인 체크비트를 저장하고 이를 오류검사정정에 활용할 수 있기 때문에 메모리의 오류검사정정 성능을 향상시킬 수 있는 효과가 있다.
또한, 체크비트를 저장한 메모리셀을 오류검사정정에 사용할지 여부를 결정할 수 있는 효과가 있다.
도 1a 및 도 1b는 종래 결함 메모리셀을 가지는 메모리셀 어레이의 결함컬럼을 스페어셀 어레이의 스페어컬럼으로 대체하는 것을 설명하기 위한 도면이다.
도 2는 본 발명의 실시예에 따른 메모리의 오류검사정정 성능 향상방법을 설명하기 위한 흐름도이다.
도 3은 본 발명의 다른 실시예에 따른 메모리의 오류검사정정 성능 향상방법을 설명하기 위한 흐름도이다.
도 4는 결함 메모리셀을 가지는 메모리셀 어레이와 결함 메모리셀을 가지는 결함컬럼을 대체하여 주기 위한 스페어컬럼으로 이루어진 스페어셀 어레이의 구조를 나타낸 도면이다.
도 5는 도 4의 메모리셀 어레이와 스페어셀 어레이에 본 발명의 실시예에 따른 메모리의 오류검사정정 성능 향상방법에 따라 체크비트를 저장한 메모리셀을 선택하는 것을 설명하기 위한 도면이다.
도 6a는 본 발명의 다른 실시예에 따른 메모리의 오류검사정정 성능 향상방법에 따라 체크비트를 저장한 메모리셀을 선택하는 것을 설명하기 위한 도면이다.
도 6b는 본 발명의 또 다른 실시예에 따른 메모리의 오류검사정정 성능 향상방법에 따라 체크비트를 저장한 메모리셀을 선택하는 것을 설명하기 위한 도면이다.
본 발명은 다양한 변경을 가할 수 있고 여러가지 실시예를 가질 수 있는바, 특정 실시예들을 도면에 예시하고 상세한 설명에 상세하게 설명하고자 한다. 그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.
이하, 첨부된 도면을 참조하여 본 발명에 따른 바람직한 일실시예를 상세히 설명한다. 도면상에서 동일 부호는 동일한 요소를 지칭한다.
도 2는 본 발명의 실시예에 따른 메모리의 오류검사정정 성능 향상방법을 설명하기 위한 흐름도이다.
도 2를 참조하면, 본 발명의 실시예에 따른 메모리의 오류검사정정 성능 향상방법은 메모리셀들로 이루어진 매트릭스(matrix) 구조의 메모리셀(memory cell) 어레이(array)와 상기 메모리셀에 결함이 발생한 결함 메모리셀을 대체하여 주기 위한 스페어(spare) 메모리셀들로 이루어진 매트릭스 구조의 스페어셀(spare cell) 어레이에서, 상기 결함 메모리셀을 가지는 상기 메모리셀 어레이의 결함컬럼을 상기 스페어셀 어레이의 스페어컬럼으로 대체하는 단계(S110), 대체에 사용되지 않은 스페어 컬럼 및/또는 상기 결함컬럼 내의 하나 이상의 메모리셀에 오류정정부호의 체크비트를 저장하는 단계(S120), 상기 결함 메모리셀에 대한 결함정보를 저장하는 단계(S130), 상기 결함정보를 이용하여 상기 체크비트를 저장한 메모리셀을 메모리의 오류검사정정에 사용할지 여부를 선택하는 단계(S140) 및 상기 선택결과에 따라 선택된 메모리셀을 이용하여 메모리의 오류검사정정을 수행하는 단계(S150)를 포함할 수 있다.
메모리의 오류검사정정 성능을 향상시키기 위하여, 메모리셀들로 이루어진 매트릭스(matrix) 구조의 메모리셀 어레이(array)와 상기 메모리셀에 결함이 발생한 결함 메모리셀을 대체하여 주기 위한 스페어 메모리셀들로 이루어진 매트릭스 구조의 스페어셀 어레이에서, 상기 결함 메모리셀을 가지는 상기 메모리셀 어레이의 결함컬럼을 상기 스페어셀 어레이의 스페어컬럼으로 대체한다(S110). 일 예로 결함컬럼과 스페어컬럼의 대체는 결함컬럼과 스페어컬럼을 연결하는 신호선의 온(On)/오프(Off)를 통하여 수행될 수 있다.
일 예로 메모리셀들로 이루어진 매트릭스(행렬) 구조의 메모리셀 어레이는 M(row)×N(column) 구조일 수 있고, 스페어 메모리셀들로 이루어진 매트릭스 구조의 스페어셀 어레이는 M(row, 행)×L(column, 열) 구조일 수 있다.
메모리셀 어레이의 로우(row)의 개수와 스페어셀 어레이의 로우(row)의 개수는 동일할 수 있고, 이는 메모리셀 어레이 내의 메모리셀에 결함이 발생하는 경우 해당 결함 메모리셀을 가지는 메모리셀 어레이의 컬럼(column)인 결함컬럼(defective column)을 스페어 에레이의 컬럼인 스페어컬럼(spare column)으로 대체하기 위함이다.
다음으로, 대체에 사용되지 않은 스페어 컬럼 및/또는 상기 결함컬럼 내의 하나 이상의 메모리셀에 오류정정부호의 체크비트를 저장한다(S120). 일 예로 대체된 결함컬럼 내에는 결함 메모리셀을 제외하면 정상적으로 동작할 수 있는 메모리셀이 존재하며 이러한 메모리셀에 오류정정부호의 체크비트를 저장한다.
또한, 대체에 사용되지 않은 스페어 컬럼은 모두 정상적으로 동작할 수 있는 메모리셀을 포함하고 있으므로 이러한 메모리셀에 오류정정부호의 체크비트를 저장한다.
다음으로, 상기 결함 메모리셀에 대한 결함정보를 저장한다(S130). 일 예로 상기 결함정보는 결함컬럼 내의 결함 메모리셀이 배치된 위치에 대한 정보일 수 있다. 이러한 결함정보는 상기 스페어셀 어레이의 스페어컬럼 중 결함컬럼을 대체하는데 사용되지 않은 스페어컬럼인 정보저장용 스페어컬럼에 저장될 수 있다.
일 예로, 상기 결함 메모리셀이 존재하는 경우에는 상기 결함 메모리셀이 존재하는 해당 로우방향에 배치된 상기 정보저장용 스페어컬럼의 스페어 메모리셀에 1이 저장되고, 상기 결함 메모리셀이 존재하지 않는 경우에는 상기 결함 메모리셀이 존재하지 않는 해당 로우방향에 배치된 상기 정보저장용 스페어컬럼의 스페어 메모리셀에 0이 저장됨으로써 정보저장용 스페어컬럼에 결함정보가 저장될 수 있다.
일 예로 정보저장용 스페어컬럼은 스페어 어레이에 배치된 스페어 컬럼들 중 메모리셀 어레이로부터 가장 먼 곳에 배치된 스페어 컬럼일 수 있다. 예를 들면 스페어셀 어레이는 복수 개의 스페어컬럼들로 이루어질 수 있고, 메모리셀 어레이로부터 가장 먼 곳에 배치된 스페어 컬럼이 정보저장용 스페어컬럼이 될 수 있다.
결합컬럼 내의 결함 메모리셀이 배치된 위치에 대한 정보는 결함 메모리셀을 가지는 스페어셀 어레이의 결함로우 각각에 대한 주소 정보일 수 있다. 이러한 결함정보는 결함로우 각각에 대한 주소 정보를 포함하고 있기 때문에 스페어셀 어레이에서 결함 메모리셀을 가지는 결함로우를 결함 메모리셀을 가지지 않는 정상로우와 구별할 수 있고 스페어셀 어레이에서 결함로우가 배치되어 있는 상태를 확인할 수 있다.
다음으로, 상기 결함정보를 이용하여 상기 체크비트를 저장한 메모리셀을 메모리의 오류검사정정에 사용할지 여부를 선택한다(S140).
일 예로 상기 정보저장용 스페어컬럼의 스페어 메모리셀에 1이 저장된 경우에는, 상기 1이 저장된 상기 스페어 메모리셀이 위치한 로우방향을 따라 배치된 상기 결함컬럼 내의 메모리셀을 선택하지 않고, 상기 정보저장용 스페어컬럼의 스페어 메모리셀에 0이 저장된 경우에는, 상기 0이 저장된 상기 스페어 메모리셀이 위치한 로우방향을 따라 배치된 상기 결함컬럼 내의 메모리셀을 선택할 수 있다.
즉, 스페어 메모리셀에 0이 저장되어 있는 경우에는 해당 스페어 메모리셀의 로우 방향을 따라 배치되어 있는 결함컬럼 내의 메모리셀을 모두 오류검사정정에 사용할 수 있다. 이러한 과정을 통하여 결함컬럼 내의 메모리셀을 오류검사정정에 활용함으로써 오류검사정정의 확률을 증가시킬 수 있다.
스페어셀 어레이의 스페어컬럼 중 정보저장용 스페어컬럼에 결함정보를 저장함으로써 오류정정부호의 체크비트를 저장할 수 있는 스페어 메모리셀의 개수가 줄어들 수 있다. 따라서 스페어 메모리셀의 개수를 줄이지 않으면서도 체크비트를 저장할 수 있도록 하기 위하여 결함정보는 스페어셀 어레이 외부의 저장부에 별도로 저장될 수 있다. 이에 대하여는 도 3을 참조하여 설명하기로 한다.
다음으로 상기 선택결과에 따라 선택된 메모리셀을 이용하여 메모리의 오류검사정정을 수행한다(S150).
도 3은 본 발명의 다른 실시예에 따른 메모리의 오류검사정정 성능 향상방법을 설명하기 위한 흐름도이다.
도 3을 참조하면, 본 발명의 다른 실시예에 따른 메모리의 오류검사정정 성능 향상방법은 메모리셀들로 이루어진 매트릭스 구조의 메모리셀 어레이와 상기 메모리셀에 결함이 발생한 결함 메모리셀을 대체하여 주기 위한 스페어 메모리셀들로 이루어진 매트릭스 구조의 스페어셀 어레이에서, 상기 결함 메모리셀을 가지는 상기 메모리셀 어레이의 결함컬럼을 상기 스페어셀 어레이의 스페어컬럼으로 대체하는 단계(S210); 상기 결함컬럼 내의 하나 이상의 메모리셀에 오류정정부호의 체크비트를 저장하는 단계(S220); 및 상기 결함 메모리셀에 대한 결함정보를 저장부에 저장하는 단계(S230); 상기 결함정보를 이용하여 상기 체크비트를 저장한 메모리셀을 메모리의 오류검사정정에 사용할지 여부를 선택하는 단계(S240); 및 상기 선택결과에 따라 선택된 메모리셀을 이용하여 메모리의 오류검사정정을 수행하는 단계(S250)를 포함할 수 있다.
메모리의 오류검사정정 성능을 향상시키기 위하여, 메모리셀들로 이루어진 매트릭스 구조의 메모리셀 어레이와 상기 메모리셀에 결함이 발생한 결함 메모리셀을 대체하여 주기 위한 스페어 메모리셀들로 이루어진 매트릭스 구조의 스페어셀 어레이에서, 상기 결함 메모리셀을 가지는 상기 메모리셀 어레이의 결함컬럼을 상기 스페어셀 어레이의 스페어컬럼으로 대체한다(S210).
다음으로, 상기 결함컬럼 내의 하나 이상의 메모리셀에 오류정정부호의 체크비트를 저장한다(S220). S210 및 S220 단계는 각각 위에서 설명한 S110 및 S120 단계와 동일하므로 자세한 설명은 생략하기로 한다.
다음으로, 상기 결함 메모리셀에 대한 결함정보를 저장부에 저장한다(S230).
일 예로 상기 결함정보는 로우방향을 따라 상기 결함 메모리셀을 가지는 결함로우에 대한 주소정보일 수 있다. 결함로우는 결함 메모리셀을 가지는 결함컬럼을 스페어컬럼으로 대체한 후, 스페어셀 어레이 내에 포함된 결함 메모리셀을 가지는 로우일 수 있다. 이러한 결함로우에 대한 주소정보를 이용함으로써 스페어셀 어레이에 포함된 복수 개의 결함로우를 서로 식별할 수 있다.
저장부는 결함정보를 저장할 수 있고, 일 예로 저장부로는 CAM(Content Addressable Memory)이 사용될 수 있다.
저장부는 스페어셀 어레이에 포함된 결함컬럼을 식별할 수 있는 영역들로 구분되어 있을 수 있고, 영역들은 대체되기 전의 스페어컬럼이 스페어셀 어레이에 배치된 상태에 따라 구분되어 있을 수 있다. 또한, 저장부의 영역들 각각에는 결함정보가 저장될 수 있다.
다음으로, 상기 결함정보를 이용하여 상기 체크비트를 저장한 메모리셀을 메모리의 오류검사정정에 사용할지 여부를 선택한다(S240).
일 예로 상기 결함정보를 이용하여 상기 체크비트를 저장한 메모리셀을 메모리의 오류검사정정에 사용할지 여부를 선택하는 것은 상기 저장부에 주소정보가 저장되지 않은 정상로우의 로우방향을 따라 배치된 상기 결함컬럼 내의 메모리셀을 오류검사정정에 사용하기 위하여 선택할 수 있다.
또한, 상기 저장부에 주소정보가 저장된 결함로우의 로우방향을 따라 배치된 상기 결함컬럼 내의 메모리셀 중 상기 메모리셀 어레이와 상기 결함 메모리셀 사이에 배치된 메모리셀을 오류검사정정에 사용하기 위하여 선택할 수 있다.
S230 및 S240 단계에 대하여는 아래에서 실시예를 통하여 상세히 설명하기로 한다.
다음으로, 상기 선택결과에 따라 선택된 메모리셀을 이용하여 메모리의 오류검사정정을 수행한다(S250).
실시예 1
도 4는 결함 메모리셀을 가지는 메모리셀 어레이와 결함 메모리셀을 가지는 결함컬럼을 대체하여 주기 위한 스페어컬럼으로 이루어진 스페어셀 어레이의 구조를 나타낸 도면이고, 도 5는 도 4의 메모리셀 어레이와 스페어셀 어레이에 본 발명의 실시예에 따른 메모리의 오류검사정정 성능 향상방법에 따라 체크비트를 저장한 메모리셀을 선택하는 것을 설명하기 위한 도면이다.
도 4 및 5에서 메모리셀 어레이는 16×7 행렬 구조를 가지고 있고, 스페어셀 어레이는 4×7 행렬 구조를 가지고 있다.
도 4를 참조하면, ith 내지 (i+6)th는 메모리셀 어레이 및 스페어셀 어5레이의 7개의 로우를 각각 식별하기 위한 주소 정보를 나타내고, SP1 내지 SP4는 스페어셀 어레이의 4개의 스페어컬럼을 식별하기 위한 주소 정보를 나타낸다.
(i+1)th 로우는 로우방향을 따라 4번째 메모리셀에 결함이 발생되어 검은색으로 표시되어 있고, (i+5)th 로우는 로우방향을 따라 8번째 메모리셀에 결함이 발생되어 검은색으로 표시되어 있다. 결함이 없는 메모리셀은 흰색으로 표시되어 있고, 스페어셀 어레이의 스페어 메모리셀은 회색으로 표시되어 있다.
도 4 및 도 5를 참조하면, (i+1)th 로우의 결함 메모리셀을 가지는 결함컬럼은 스페어셀 어레이의 스페어컬럼(SP2)으로 대체되었고, (i+5)th 로우의 결함 메모리셀을 가지는 결함컬럼은 스페어셀 어레이의 스페어컬럼(SP3)으로 대체되었다.
대체가 완료된 후, 대체에 사용되지 않은 스페어 컬럼(SP1)과 결함컬럼 내의 하나 이상의 메모리셀에 오류정정부호의 체크비트를 저장될 수 있다. 즉, 대체된 후에 스페어셀 어레이에 포함되는 결함컬럼 및 스페어 컬럼 내에서 결함 메모리셀이 아닌 정상 메모리셀에는 모두 오류정정부호의 체크비트가 저장될 수 있다.
ith, (i+2)th, (i+3)th, (i+4)th 및 (i+6)th 로우에는 스페어 컬럼(SP1)과 결함컬럼 내의 메모리셀에 각각 체크비트가 저장될 수 있으므로, ith, (i+2)th, (i+3)th, (i+4)th 및 (i+6)th 로우에는 각각 3개의 체크비트가 저장될 수 있다.
정보저장용 스페어컬럼 내의 스페어 메모리셀에 저장되는 결함정보는 결함컬럼 내의 결함 메모리셀의 위치에 대한 정보일 수 있다. 결함정보의 저장은 결함 메모리셀이 존재하는 경우에는 결함 메모리셀이 존재하는 해당 로우방향에 배치된 상기 정보저장용 스페어컬럼의 스페어 메모리셀에 1이 저장되고, 결함 메모리셀이 존재하지 않는 경우에는 상기 결함 메모리셀이 존재하지 않는 해당 로우방향에 배치된 상기 정보저장용 스페어컬럼의 스페어 메모리셀에 0이 저장됨으로써 정보저장용 스페어컬럼에 결함정보가 저장될 수 있다.
스페어셀 어레이의 스페어컬럼(SP4)은 정보저장용 스페어컬럼으로써 스페어 어레이에 배치된 스페어컬럼들 중 메모리셀 어레이로부터 가장 먼 곳에 배치된 스페어컬럼일 수 있다.
0이 저장된 해당 로우 방향의 ith, (i+2)th, (i+3)th, (i+4)th 및 (i+6)th 로우는 각 로우마다 체크비트가 저장된 3개의 메모리셀이 오류검사정정에 사용되도록 선택될 수 있다. 그러나 1이 저장된 해당 로우 방향의 (i+1)th, 및 (i+5)th 로우는 체크비트가 저장된 스페어컬럼(SP1) 내의 메모리셀만이 오류검사정정에 사용되도록 선택될 수 있다.
일 예로 상기 정보저장용 스페어컬럼의 스페어 메모리셀에 1이 저장된 경우에는, 상기 1이 저장된 상기 스페어 메모리셀이 위치한 로우방향을 따라 배치된 상기 결함컬럼 내의 메모리셀을 선택하지 않고, 상기 정보저장용 스페어컬럼의 스페어 메모리셀에 0이 저장된 경우에는, 상기 0이 저장된 상기 스페어 메모리셀이 위치한 로우방향을 따라 배치된 상기 결함컬럼 내의 메모리셀을 선택할 수 있다. 다음으로, 체크비트를 저장한 선택된 메모리셀을 이용하여 오류검사정정을 수행한다.
실시예 2
도 6a는 본 발명의 다른 실시예에 따른 메모리의 오류검사정정 성능 향상방법에 따라 체크비트를 저장한 메모리셀을 선택하는 것을 설명하기 위한 도면이다.
도 6a를 참조하면, (i+1)th 로우의 결함 메모리셀을 가지는 결함컬럼은 스페어셀 어레이의 스페어컬럼(SP3)으로 대체되었고, (i+5)th 로우의 결함 메모리셀을 가지는 결함컬럼은 스페어셀 어레이의 스페어컬럼(SP4)으로 대체되었으며, (i+6)th 로우의 결함 메모리셀을 가지는 결함컬럼은 스페어셀 어레이의 스페어컬럼(SP2)으로 대체되었다.
도 5를 참조하여 설명한 방법과 같이 결함정보를 스페어셀 어레이의 스페어컬럼 중 하나인 정보저장용 스페어컬럼에 저장하는 경우에는 스페어 메모리셀에 체크비트를 저장할 수 있는 영역이 줄어들 수 있다. 따라서 이를 해결하기 위하여 별도의 결함정보를 저장할 수 있는 별도의 저장부가 사용될 수 있다. 일 예로 저장부로는 CAM(Content Addressable Memory)이 사용될 수 있다.
저장부에는 로우방향을 따라 결함 메모리셀을 가지는 결함로우에 대한 주소정보가 저장될 수 있다. 결함로우는 결함 메모리셀을 가지는 결함컬럼을 스페어컬럼으로 대체한 후, 스페어셀 어레이 내에 포함된 결함 메모리셀을 가지는 로우일 수 있다. 이러한 결함로우에 대한 주소정보를 이용함으로써 스페어셀 어레이에 포함된 복수 개의 결함로우를 서로 식별할 수 있다.
ith, (i+2)th, (i+3)th 및 (i+4)th 로우는 결함 메모리셀을 포함하고 있지 않기 때문에 저장부에 해당 로우에 대한 결함정보인 주소정보가 저장되지 않고, (i+1)th, (i+5)th 및 (i+6)th 로우는 해당 로우방향을 따라 결함 메모리셀을 포함하고 있기 때문에 저장부에 해당 로우에 대한 결함정보인 주소정보가 저장될 수 있다.
ith, (i+2)th, (i+3)th 및 (i+4)th 로우는 각각 스페어컬럼(SP1) 내의 메모리셀과 각 결함컬럼내의 3개의 메모리셀에 각각 오류정정코드의 체크비트가 저장되어 있고, 결함정보가 저장되어 있지 않은 로우에 해당하므로 4개의 메모리셀이 오류검사정정에 사용될 수 있도록 선택될 수 있다.
그러나, (i+1)th, (i+5)th 및 (i+6)th 로우는 각각 저장부에 해당 로우에 대한 결함정보가 저장되어 있으므로 스페어컬럼(SP1) 내의 메모리셀만이 오류검사정정에 사용될 수 있도록 선택될 수 있다. 다음으로, 체크비트를 저장한 선택된 메모리셀을 이용하여 오류검사정정을 수행한다.
실시예 3
도 6b는 본 발명의 또 다른 실시예에 따른 메모리의 오류검사정정 성능 향상방법에 따라 체크비트를 저장한 메모리셀을 선택하는 것을 설명하기 위한 도면이다. 도 6a를 참조하여 설명한 것과 동일한 내용에 대하여는 자세한 설명은 생략하기로 한다.
도 6b를 참조하면, (i+1)th 로우의 결함 메모리셀을 가지는 결함컬럼은 스페어셀 어레이의 스페어컬럼(SP3)으로 대체되었고, (i+5)th 로우의 결함 메모리셀을 가지는 결함컬럼은 스페어셀 어레이의 스페어컬럼(SP4)으로 대체되었으며, (i+6)th 로우의 결함 메모리셀을 가지는 결함컬럼은 스페어셀 어레이의 스페어컬럼(SP2)으로 대체되었다.
도 6a를 참조하여 설명한 방법과 같이 결함정보를 저장할 수 있는 별도의 저장부가 사용될 수 있다. 일 예로 저장부로는 CAM(Content Addressable Memory)이 사용될 수 있다.
저장부는 스페어셀 어레이에 포함된 결함컬럼을 식별할 수 있는 영역들로 구분되어 있을 수 있고, 영역들은 대체되기 전의 스페어컬럼이 스페어셀 어레이에 배치된 상태에 따라 구분되어 있을 수 있다.
결함컬럼을 식별할 수 있는 영역들은 결함컬럼과 스페어 컬럼을 대체하기 전에 스페어컬럼이 배치되어 있는 위치를 기준으로 저장부의 영역들이 구분되어 있을 수 있다. 도 6b에 도시된 바와 같이 저장부는 점선으로 표시된 4개의 영역으로 구분되어 있을 수 있고, 각 영역은 대체되기 전의 스페어컬럼이 배치된 위치를 나타낸다. 저장부에서 구분되는 영역의 개수는 스페어셀 어레이에 포함된 스페어컬럼의 개수와 동일할 수 있다.
스페어컬럼(SP4)은 메모리셀 어레이로부터 가장 멀리 배치되어 있었으므로 4개의 영역 중 가장 하부에 위치한 영역으로 구분될 수 있고, 스페어컬럼(SP1)은 메모리셀 어레이로부터 가장 가까이 배치되어 있었으므로 4개의 영역 중 가장 상부에 위치한 영역으로 구분될 수 있다. 이러한 영역의 구분에 의하여 결함 메모리셀이 결함 메모리셀을 가지는 결함로우의 로우 방향을 따라 어느 위치에 배치되어 있는지 확인할 수 있다.
또한, 스페어컬럼(SP4)과 대체된 결함컬럼의 결함 메모리셀을 가지는 결함로우는 (i+5)th 로우이므로 결함정보인 (i+5)th에 대한 주소정보가 4개의 영역 중 가장 하부에 위치한 영역에 저장될 수 있다. 이에 반하여 스페어컬럼(SP1)은 대체에 사용되지 않았으며, 결함 메모리셀을 가지고 있지 않으므로 저장부에서 가장 상부에 위치한 영역에는 결함정보가 저장되지 않을 수 있다. 이러한 방식을 통하여 각 영역에 저장된 결함정보를 이용하면 결함로우가 어느 것인지를 확인할 수 있고, 결함 메모리셀이 결함로우의 어느 위치에 배치되어 있는지 확인할 수 있다.
저장부에 저장되어 있지 않은 ith, (i+2)th, (i+3)th 및 (i+4)th 로우는 각각 체크비트를 저장한 대체에 사용되지 않은 스페어컬럼(SP1)의 메모리셀과 각 해당 로우 방향을 따라 배치된 결함컬럼 내의 3개의 메모리셀이 각각 오류검사정정에 사용되도록 선택될 수 있다.
이에 반하여, 결함 메모리셀을 가지고 있는 (i+1)th 로우는 스페어컬럼(SP1) 내의 체크비트를 저장한 1개의 메모리셀과 해당 로우 방향을 따라 메모리셀 어레이와 결함 메모리셀 사이에 배치된 체크비트를 저장한 메모리셀만이 오류검사정정에 사용되도록 선택될 수 있다.
결함 메모리셀을 가지고 있는 (i+5)th 로우는 스페어컬럼(SP1) 내의 체크비트를 저장한 1개의 메모리셀과 해당 로우 방향을 따라 메모리셀 어레이와 결함 메모리셀 사이에 배치된 체크비트를 저장한 2개의 메모리셀만이 오류검사정정에 사용되도록 선택될 수 있다.
결함 메모리셀을 가지고 있는 (i+6)th 로우는 스페어컬럼(SP1) 내의 체크비트를 저장한 1개의 메모리셀만이 오류검사정정에 사용되도록 선택될 수 있다. 다음으로, 체크비트를 저장한 선택된 메모리셀을 이용하여 오류검사정정을 수행한다.
이러한 방법을 사용하는 경우에는 도 5a를 참조하여 설명한 방법에 비하여 (i+1)th 로우는 체크비트를 저장한 결함컬럼 내의 1개의 메모리셀이 추가된 상태로 오류검사정정이 수행될 수 있고, (i+5)th 로우는 체크비트를 저장한 결함컬럼 내의 2개의 메모리셀에 추가된 상태로 오류검사정정이 수행될 수 있다. 이 경우에는 체크비트를 저장한 메모리셀이 증가된 경우에 해당하기 때문에 오류검사정정의 확률이 더욱 증가할 수 있는 효과가 있다.
실험예
본 발명의 실시예에 따른 메모리의 오류검사정정 성능 향상방법의 효과를 확인하기 위하여 다음과 같은 실험을 진행하였다.
실험을 위하여 트리플-오류(triple error), 연속적이지 않은 더블-오류(non-adjacent double-error) 및 랜덤한 더블-오류(연속적이지 않은 더블-오류 또는 연속적인 더블-오류)가 발생되는 경우를 가정하였다.
아래 [표 1] 내지 [표 4]는 0 내지 4개의 체크비트를 사용하여 1억번의 실험을 진행한 결과를 나타낸 표이다.
[표 1]은 트리플-오류가 발생한 SEC-DED 코트의 오정정확률(miscorrection probability)을 나타낸 표이다.
Word Size Number of Check Bits
0 1 2 3 4
16-bit 65.190% 28.367% 12.389% 5.455% 2.422%
32-bit 59.663% 27.571% 12.812% 5.925% 2.766%
64-bit 55.594% 26.662% 12.781% 6.148% 2.947%
[표 2]는 트리플-오류가 발생한 SEC-DED-DAEC 코트의 오정정확률(miscorrection probability)을 나타낸 표이다.
Word Size Number of Check Bits
0 1 2 3 4
16-bit 65.178% 33.497% 16.319% 7.934% 3.839%
32-bit 59.655% 30.374% 15.032% 7.421% 3.649%
64-bit 55.567% 28.110% 14.007% 6.989% 3.472%
[표 3]은 연속적이지 않은 더블-오류가 발생한 SEC-DED-DAEC 코트의 오정정확률(miscorrection probability)을 나타낸 표이다.
Word Size Number of Check Bits
0 1 2 3 4
16-bit 64.300% 29.293% 13.359% 6.127% 2.807%
32-bit 57.351% 27.201% 12.921% 6.151% 2.917%
64-bit 54.564% 26.519% 12.913% 6.277% 3.054%
[표 4]는 랜덤한 더블-오류가 발생한 SEC-DED-DAEC 코트의 오정정확률(miscorrection probability)을 나타낸 표이다.
Word Size Number of Check Bits
0 1 2 3 4
16-bit 58.441% 26.724% 12.272% 5.608% 2.609%
32-bit 54.391% 25.803% 12.267% 5.856% 2.775%
64-bit 53.042% 25.767% 12.573% 6.117% 2.978%
본 발명의 실시예에 따른 메모리의 오류검사정정 성능 향상방법의 효과를 확인하기 위하여 Pclean 을 정의하였다. Pclean은 전체 메모리셀에서 데이터를 독출하는 경우, 오류검사정정 수행 시 오류가 전혀없이 완벽하게 오류검사정정이 수행되는 확률을 의미한다.
여기에서 Pmis는 오정정확률(miscorrection probability)은 [표 1] 내지 [표 4]로부터 얻을 수 있는 오정정확률의 의미하고, RER(row error rate)은 메모리셀 어레이의 로우에서 특정한 오류가 발생할 수 있는 확률을 의미한다. 실험을 위하여 트리플-오류와 랜덤한 더블-오류의 RER은 0.001로 정하였다.
메모리셀 어레이의 로우에서 데이터가 독출되고 정정과정이 수행되는 경우에 오류가 전혀 발생되지 않거나 발생한 모든 오류가 정정되거나 검사되는 것을 의미하는 Pne 는 아래 [수학식 1]과 같이 표시될 수 있다.
Figure 112014082415212-pat00001
또한, Pclean은 아래 [수학식 2]와 같이 표시될 수 있다.
Figure 112014082415212-pat00002
여기에서,
Nrow는 메모리셀 어레이를 이루고 있는 로우의 개수를 의미하고, Nrepair는 대체된 스페어컬럼의 개수를 의미한다.
Pclean을 계산하기 위하여 스페어셀 어레이의 스페어컬럼이 4개인 경우를 고려하여 세가지 케이스를 설정하였다.
케이스A(CASE A)는 하나의 스페어컬럼이 대체에 사용되고 나머지 3개의 스페어컬럼은 사용되지 않은 상태에서 종래방법, 실시예1, 실시예2 및 실시예3을 통하여 메모리의 오류검사정정을 수행한 경우를 의미한다.
케이스B(CASE B)는 두개의 스페어컬럼이 대체에 사용되고 나머지 3개의 스페어컬럼은 사용되지 않은 상태에서 종래방법, 실시예1, 실시예2 및 실시예3을 통하여 메모리의 오류검사정정을 수행한 경우를 의미한다.
케이스C(CASE C)는 세개의 스페어컬럼이 대체에 사용되고 나머지 3개의 스페어컬럼은 사용되지 않은 상태에서 종래방법, 실시예1, 실시예2 및 실시예3을 통하여 메모리의 오류검사정정을 수행한 경우를 의미한다.
케이스A 내지 케이스C에 대하여 SEC-DED-DAEC 코트에 트리플-오류와 랜덤한 더블-오류를 발생시킨 후 Pclean을 계산하였다. 1K와 8K 메모리 로우 사이즈를 가지고 있고 각가에 대한 워드(word) 사이즈는 16-bit, 32-bit 및 64-bit를 사용하였다.
[표 5]는 케이스A 내지 케이스C에 트리플-오류가 발생한 경우에 Pclean을 계산한 결과이다.
1Kx16 8Kx16 1Kx32 8Kx32 1Kx64 8Kx64
케이스A 종래방법 92.197% 52.206% 92.682% 54.447% 93.093% 56.408%
실시예1 92.189% 52.201% 92.675% 54.442% 93.087% 56.404%
실시예2 96.141% 73.013% 96.329% 74.158% 96.504% 75.242%
실시예3 96.141% 73.013% 96.329% 74.158% 96.504% 75.242%
케이스B 종래방법 84.610% 26.264% 85.732% 29.185% 86.637% 31.742%
실시예1 92.149% 52.179% 92.640% 54.422% 93.054% 56.384%
실시예2 96.121% 72.997% 96.310% 74.144% 96.487% 75.228%
실시예3 96.129% 73.004% 96.318% 74.150% 96.494% 75.234%
케이스C 종래방법 70.959% 6.428% 73.266% 8.302% 74.985% 9.995%
실시예1 92.038% 52.116% 92.537% 54.361% 92.958% 56.326%
실시예2 96.060% 72.951% 96.255% 74.102% 96.436% 75.189%
실시예3 96.191% 72.982% 96.292% 74.130% 96.470% 75.215%
[표 6]은 케이스A 내지 케이스C에 랜덤한 더블-오류가 발생한 경우에 Pclean을 계산한 결과이다.
1Kx16 8Kx16 1Kx32 8Kx32 1Kx64 8Kx64
케이스A 종래방법 94.419% 63.165% 94.180% 61.895% 93.928% 60.585%
실시예1 94.413% 63.161% 94.174% 61.891% 93.922% 60.581%
실시예2 97.361% 80.754% 97.195% 79.663% 96.993% 78.349%
실시예3 97.361% 80.754% 97.195% 79.663% 96.993% 78.349%
케이스B 종래방법 88.190% 36.590% 88.195% 36.605% 87.919% 35.699%
실시예1 94.379% 63.138% 94.142% 61.870% 93.891% 60.561%
실시예2 97.345% 80.741% 97.180% 79.651% 96.978% 78.337%
실시예3 97.351% 80.746% 97.186% 79.656% 96.984% 78.342%
케이스C 종래방법 76.057% 11.197% 76.778% 12.075% 76.806% 12.110%
실시예1 94.269% 63.065% 94.042% 61.804% 93.796% 60.500%
실시예2 97.293% 80.698% 97.131% 79.611% 96.930% 78.298%
실시예3 97.328% 80.727% 97.164% 79.637% 96.962% 78.324%
[표 5] 및 [표 6]을 참조하면, 메모리의 용량이 증가하고 워드 사이즈가 커질수록 실시예1 내지 실시예3의 Pcleand의 수치가 증가하는 것을 확인할 수 있다.
실시예1의 경우 하나의 스페어컬럼에 결함정보가 저장되기 때문에 실시예 2 및 실시예3에 비하여 오류정정부호의 체크비트를 저장할 수 있는 메모리셀의 수가 적고, 오류검사정정에 사용할 수 있는 오류정정코드의 체크비트를 저장한 메모리셀이 적게 사용되기 때문에 실시예1의 Pcleand의 수치가 실시예2 및 실시예3 보다 작은 것을 확인할 수 있다.
또한, 실시예3이 실시예2보다 Pclean의 수치가 큰 것을 확인할 수 있다. 이는 실시예3의 경우 실시예2보다 오류정정코드의 체크비트를 저장한 더욱 많은 메모리셀을 오류검사정정에 사용할 수 있기 때문이다.
이상에서 본 발명에 따른 실시예들이 설명되었으나, 이는 예시적인 것에 불과하며, 당해 분야에서 통상적 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 범위의 실시예가 가능하다는 점을 이해할 것이다. 따라서, 본 발명의 진정한 기술적 보호 범위는 다음의 특허청구범위에 의해서 정해져야 할 것이다.

Claims (15)

  1. 메모리셀들로 이루어진 매트릭스 구조의 메모리셀 어레이와 상기 메모리셀에 결함이 발생한 결함 메모리셀을 대체하여 주기 위한 스페어 메모리셀들로 이루어진 매트릭스 구조의 스페어셀 어레이에서, 상기 결함 메모리셀을 가지는 상기 메모리셀 어레이의 결함컬럼을 상기 스페어셀 어레이의 스페어컬럼으로 대체하는 단계;
    대체에 사용되지 않은 스페어 컬럼 및/또는 상기 결함컬럼 내의 하나 이상의 메모리셀에 오류정정부호의 체크비트를 저장하는 단계;
    상기 스페어셀 어레이의 스페어컬럼 중 대체에 사용되지 않은 스페어컬럼인 정보저장용 스페어컬럼에 상기 결함컬럼 내의 결함 메모리셀이 배치된 위치에 대한 정보인 결함정보를 저장하는 단계;
    상기 결함정보를 이용하여 상기 체크비트를 저장한 메모리셀을 메모리의 오류검사정정에 사용할지 여부를 선택하는 단계; 및
    상기 선택결과에 따라 선택된 메모리셀을 이용하여 메모리의 오류검사정정을 수행하는 단계를 포함하고,
    상기 정보저장용 스페어컬럼에 상기 결함정보를 저장하는 단계는,
    상기 결함 메모리셀이 존재하는 경우에는 상기 결함 메모리셀이 존재하는 해당 로우방향에 배치된 상기 정보저장용 스페어컬럼의 스페어 메모리셀에 1이 저장되고, 상기 결함 메모리셀이 존재하지 않는 경우에는 상기 결함 메모리셀이 존재하지 않는 해당 로우방향에 배치된 상기 정보저장용 스페어컬럼의 스페어 메모리셀에 0이 저장되는 단계를 포함하는, 메모리의 오류검사정정 성능 향상방법.
  2. 삭제
  3. 삭제
  4. 삭제
  5. 제1항에 있어서,
    상기 결함정보를 이용하여 상기 체크비트를 저장한 메모리셀을 메모리의 오류검사정정에 사용할지 여부를 선택하는 단계는,
    상기 정보저장용 스페어컬럼의 스페어 메모리셀에 1이 저장된 경우에는,
    상기 1이 저장된 상기 스페어 메모리셀이 위치한 로우방향을 따라 배치된 상기 결함컬럼 내의 메모리셀을 선택하지 않는 단계를 포함하는, 메모리의 오류검사정정 성능 향상방법.
  6. 제1항에 있어서,
    상기 결함정보를 이용하여 상기 체크비트를 저장한 메모리셀을 메모리의 오류검사정정에 사용할지 여부를 선택하는 단계는,
    상기 정보저장용 스페어컬럼의 스페어 메모리셀에 0이 저장된 경우에는,
    상기 0이 저장된 상기 스페어 메모리셀이 위치한 로우방향을 따라 배치된 상기 결함컬럼 내의 메모리셀을 선택하는 단계를 포함하는, 메모리의 오류검사정정 성능 향상방법.
  7. 메모리셀들로 이루어진 매트릭스 구조의 메모리셀 어레이와 상기 메모리셀에 결함이 발생한 결함 메모리셀을 대체하여 주기 위한 스페어 메모리셀들로 이루어진 매트릭스 구조의 스페어셀 어레이에서, 상기 결함 메모리셀을 가지는 상기 메모리셀 어레이의 결함컬럼을 상기 스페어셀 어레이의 스페어컬럼으로 대체하는 단계;
    대체에 사용되지 않은 스페어 컬럼 및/또는 상기 결함컬럼 내의 하나 이상의 메모리셀에 오류정정부호의 체크비트를 저장하는 단계;
    상기 결함 메모리셀에 대한 결함정보를 저장부에 저장하는 단계;
    상기 결함정보를 이용하여 상기 체크비트를 저장한 메모리셀을 메모리의 오류검사정정에 사용할지 여부를 선택하는 단계; 및
    상기 선택결과에 따라 선택된 메모리셀을 이용하여 메모리의 오류검사정정을 수행하는 단계를 포함하고,
    상기 결함정보는 로우방향을 따라 상기 결함 메모리셀을 가지는 결함로우에 대한 주소정보이고,
    상기 결함정보를 이용하여 상기 체크비트를 저장한 메모리셀을 메모리의 오류검사정정에 사용할지 여부를 선택하는 단계는, 상기 저장부에 주소정보가 저장된 결함로우의 로우방향을 따라 배치된 상기 결함컬럼 내의 메모리셀을 선택하지 않는 단계를 포함하는, 메모리의 오류검사정정 성능 향상방법.
  8. 삭제
  9. 삭제
  10. 제7항에 있어서,
    상기 저장부는,
    상기 결함컬럼을 식별할 수 있는 영역들로 구분되어 있는, 메모리의 오류검사정정 성능 향상방법.
  11. 제10항에 있어서,
    상기 영역들의 구분은,
    대체되기 전의 스페어컬럼이 상기 스페어셀 어레이에 배치된 상태에 따라 구분되어 있는, 메모리의 오류검사정정 성능 향상방법.
  12. 제11항에 있어서,
    상기 영역들 각각에,
    상기 결함정보가 저장될 수 있는, 메모리의 오류검사정정 성능 향상방법.
  13. 제12항에 있어서,
    상기 결함정보를 이용하여 상기 체크비트를 저장한 메모리셀을 메모리의 오류검사정정에 사용할지 여부를 선택하는 단계는,
    상기 저장부에 주소정보가 저장되지 않은 정상로우의 로우방향을 따라 배치된 상기 결함컬럼 내의 메모리셀을 선택하는 단계를 포함하는, 메모리의 오류검사정정 성능 향상방법.
  14. 제13항에 있어서,
    상기 결함정보를 이용하여 상기 체크비트를 저장한 메모리셀을 메모리의 오류검사정정에 사용할지 여부를 선택하는 단계는,
    상기 저장부에 주소정보가 저장된 결함로우의 로우방향을 따라 배치된 상기 결함컬럼 내의 메모리셀 중 상기 메모리셀 어레이와 상기 결함 메모리셀 사이에 배치된 메모리셀을 선택하는 단계를 포함하는, 메모리의 오류검사정정 성능 향상방법.
  15. 제7항에 있어서,
    상기 저장부는,
    CAM(Content Addressable Memory)인, 메모리의 오류검사정정 성능 향상방법.
KR1020140113454A 2014-08-28 2014-08-28 메모리의 오류검사정정 성능 향상방법 KR101548875B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020140113454A KR101548875B1 (ko) 2014-08-28 2014-08-28 메모리의 오류검사정정 성능 향상방법
US14/839,223 US9779838B2 (en) 2014-08-28 2015-08-28 Method of improving error checking and correction performance of memory

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020140113454A KR101548875B1 (ko) 2014-08-28 2014-08-28 메모리의 오류검사정정 성능 향상방법

Publications (1)

Publication Number Publication Date
KR101548875B1 true KR101548875B1 (ko) 2015-09-01

Family

ID=54246806

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020140113454A KR101548875B1 (ko) 2014-08-28 2014-08-28 메모리의 오류검사정정 성능 향상방법

Country Status (2)

Country Link
US (1) US9779838B2 (ko)
KR (1) KR101548875B1 (ko)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10671497B2 (en) 2018-01-19 2020-06-02 International Business Machines Corporation Efficient and selective sparing of bits in memory systems

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6469945B2 (en) * 2000-05-25 2002-10-22 Tachyon Semiconductor Corp. Dynamically configurated storage array with improved data access
US7178072B2 (en) 2001-06-08 2007-02-13 Renesas Technology America, Inc. Methods and apparatus for storing memory test information
US7881133B2 (en) * 2003-11-11 2011-02-01 Samsung Electronics Co., Ltd. Method of managing a flash memory and the flash memory
KR20070072228A (ko) 2005-12-31 2007-07-04 삼성전자주식회사 Eds 라이트 구조에서 미사용 셀을 대체 셀로 사용하는반도체 메모리 장치
TW200828328A (en) * 2006-12-28 2008-07-01 Genesys Logic Inc Method of improving accessing reliability of flash memory
KR100842680B1 (ko) * 2007-01-08 2008-07-01 삼성전자주식회사 플래시 메모리 장치의 오류 정정 컨트롤러 및 그것을포함하는 메모리 시스템
US8086913B2 (en) * 2008-09-11 2011-12-27 Micron Technology, Inc. Methods, apparatus, and systems to repair memory
US7835207B2 (en) * 2008-10-07 2010-11-16 Micron Technology, Inc. Stacked device remapping and repair
KR20110093257A (ko) * 2010-02-12 2011-08-18 삼성전자주식회사 불휘발성 메모리 장치 및 그것의 동작 방법
KR101373668B1 (ko) 2012-06-22 2014-03-13 연세대학교 산학협력단 메모리 수리 장치 및 방법
TWI545582B (zh) * 2013-11-15 2016-08-11 慧榮科技股份有限公司 存取快閃記憶體中儲存單元的方法以及使用該方法的裝置

Also Published As

Publication number Publication date
US9779838B2 (en) 2017-10-03
US20160062860A1 (en) 2016-03-03

Similar Documents

Publication Publication Date Title
US10446253B2 (en) Semiconductor memory device and repair method thereof
US11385959B2 (en) Memory repair method and apparatus based on error code tracking
US10108509B2 (en) Dynamic enabling of redundant memory cells during operating life
US8276039B2 (en) Error detection device and methods thereof
US11921576B2 (en) Memory device and repair method with column-based error code tracking
US10198314B2 (en) Memory device with in-system repair capability
US9065481B2 (en) Bad wordline/array detection in memory
TWI331340B (en) Repair bits for a low voltage cache
US9396817B2 (en) Self-repairing memory and method of use
US20030023926A1 (en) Magnetoresistive solid-state storage device and data storage methods for use therewith
US10481973B2 (en) Memory module with dedicated repair devices
US20050240838A1 (en) Semiconductor memory device having code bit cell array
KR101548875B1 (ko) 메모리의 오류검사정정 성능 향상방법
US20220004472A9 (en) Memory module with dedicated repair devices
KR101566639B1 (ko) 3차원 메모리의 오류검사정정 성능 향상방법
CN210136722U (zh) 一种存储器
US20150121170A1 (en) Storing Data by an ECC Memory
CN103514961B (zh) 自修复存储器、包含该存储器的计算装置以及操作存储器的方法
TWI486961B (zh) 非揮發性記憶體的故障遮蔽方法

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20180820

Year of fee payment: 4