KR20210117557A - 반도체 메모리 장치 및 반도체 메모리 장치에서의 리페어 방법 - Google Patents

반도체 메모리 장치 및 반도체 메모리 장치에서의 리페어 방법 Download PDF

Info

Publication number
KR20210117557A
KR20210117557A KR1020200033926A KR20200033926A KR20210117557A KR 20210117557 A KR20210117557 A KR 20210117557A KR 1020200033926 A KR1020200033926 A KR 1020200033926A KR 20200033926 A KR20200033926 A KR 20200033926A KR 20210117557 A KR20210117557 A KR 20210117557A
Authority
KR
South Korea
Prior art keywords
bira
address
fsm
spare pivot
memory
Prior art date
Application number
KR1020200033926A
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 KR1020200033926A priority Critical patent/KR20210117557A/ko
Priority to US17/024,396 priority patent/US11621050B2/en
Priority to CN202110156395.4A priority patent/CN113496757A/zh
Publication of KR20210117557A publication Critical patent/KR20210117557A/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/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
    • 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/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/2053Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant
    • G06F11/2094Redundant storage or storage space
    • 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
    • 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/14Implementation of control logic, e.g. test mode decoders
    • G11C29/16Implementation of control logic, e.g. test mode decoders using microprogrammed units, e.g. state machines
    • 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/38Response verification devices
    • 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
    • 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
    • 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/78Masking faults in memories by using spares or by reconfiguring using programmable devices
    • G11C29/80Masking faults in memories by using spares or by reconfiguring using programmable devices with improved layout
    • G11C29/808Masking faults in memories by using spares or by reconfiguring using programmable devices with improved layout using a flexible replacement scheme
    • 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/78Masking faults in memories by using spares or by reconfiguring using programmable devices
    • G11C29/80Masking faults in memories by using spares or by reconfiguring using programmable devices with improved layout
    • G11C29/814Masking faults in memories by using spares or by reconfiguring using programmable devices with improved layout for optimized yield
    • 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/78Masking faults in memories by using spares or by reconfiguring using programmable devices
    • G11C29/80Masking faults in memories by using spares or by reconfiguring using programmable devices with improved layout
    • G11C29/816Masking faults in memories by using spares or by reconfiguring using programmable devices with improved layout for an application-specific layout
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/85Active fault masking without idle spares
    • 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
    • G11C2029/1208Error catch memory
    • 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/36Data generation devices, e.g. data inverters
    • G11C2029/3602Pattern generator
    • 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
    • G11C2029/4402Internal storage of test result, quality data, chip identification, repair information
    • 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/78Masking faults in memories by using spares or by reconfiguring using programmable devices
    • G11C29/80Masking faults in memories by using spares or by reconfiguring using programmable devices with improved layout
    • G11C29/81Masking faults in memories by using spares or by reconfiguring using programmable devices with improved layout using a hierarchical redundancy scheme

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

반도체 메모리 장치 및 반도체 메모리 장치에서의 리페어 방법{Semiconductor memory device and method of repairing in the semiconductor memory device}
본 개시의 여러 실시예들은 반도체 메모리 장치에 관한 것으로서, 특히 리페어 로직을 포함하는 반도체 메모리 장치 및 반도체 메모리 장치에서의 리페어 방법에 관한 것이다.
반도체 기술이 진보함에 따라 자료를 저장하는 메모리 소자의 대용량화 및 고성능화가 빠르게 진행되고 있다. 최근의 메모리 소자의 양산에 있어서, 수율과 품질을 만족시키기 위해서는 고장 셀(faulty cell)을 정상적인 스페어 셀(spare cell)로 대체하여 리페어(repair)하는 방식의 채택이 불가피하다. 대부분의 SOC(System On Chip)의 내부에 사용되는 내장 메모리(embedded memory)에 대해서는 외부의 비싼 테스트 장치를 이용하여 테스트와 리페어를 진행하는 것이 많은 비용을 요구한다. 이에 따라 빌트-인 자체 테스트 회로(Built-in Self Test; 이하 BIST)를 통한 고장 정보 취득과, 빌트-인 리던던시 분석 회로(Built-in Redundancy Analysis; 이하 BIRA)를 이용한 리페어 방법이 많이 사용되고 있다.
내장 메모리의 경우, 상대적으로 작은 사이즈(size)와 상대적으로 적은 스페어(spare)의 개수로 인해, BIST에서 취득된 고장 어드레스들(faulty addresses)을 BIRA 내의 주소화 메모리(Content Addressable Memory; 이하 CAM)에 저장함으로써, 리페어 분석(repair analysis) 시간을 단축시킬 수 있다. 그런데 사이즈가 크고, 그에 따라 많은 개수의 스페어를 갖는 메모리의 경우, 예컨대 디램(DRAM)이 패키지(package) 형태로 구현되는 듀얼-인-라인 모듈(Dual-In-Line Module; DIMM)의 경우, 증가된 고장 어드레스들을 저장하는 CAM이 차지하는 면적이 크게 증가하게 된다. 이에 따라 메모리 컨트롤러의 리페어 부분에 있어서의 면적 오버헤드(area overhead)가 증가한다.
본 출원이 해결하고자 하는 과제는, 메모리 리페어를 위해 제공되는 리페어 회로의 면적 오버헤드(area overhead)를 감소시킬 수 있는 반도체 메모리 장치를 제공하는 것이다.
본 출원이 해결하고자 하는 다른 과제는, 위와 같은 반도체 메모리 장치에서의 리페어 방법을 제공하는 것이다.
본 개시의 일 예에 따른 반도체 메모리 장치는, 메모리, 및 메모리를 제어하는 메모리 컨트롤러를 포함한다. 메모리 컨트롤러는, 메모리의 정상 동작을 제어하는 정상 동작 제어부와, 메모리의 리페어 동작을 제어하는 리페어부를 포함한다. 메모리 컨트롤러의 정상 동작 제어부는, 정상 동작의 제어 과정에서 사용되는 복수개의 저장공간들을 포함한다. 그리고 메모리 컨트롤러의 리페어부는, 리페어 동작의 제어 과정에서 검출된 고장 어드레스가 정상 동작 제어부 내의 저장공간들에 저장되도록 구성된다.
본 개시의 일 예에 따른 반도체 메모리 장치의 리페어 방법은, 메모리와, 상기 메모리의 정상 동작에 대한 제어 과정에 사용되는 복수개의 저장공간들을 포함하는 메모리 컨트롤러를 포함하는 반도체 메모리 장치의 리페어 방법에 있어서, 저장공간들을 파이프-라인 방식으로 배치되는 복수개의 공유공간들로 재배치시키는 단계와, 메모리에 대한 테스트를 통해 고장 셀의 고장 어드레스를 검출하는 단계와, 검출된 고장 어드레스를 상기 공유공간에 저장하는 단계와, 그리고 저장된 고장 어드레스를 이용하여 리페어 솔루션을 도출시키는 단계를 포함한다.
여러 실시예들에 따르면, 메모리에 대한 리페어 동작의 제어 과정에서 메모리의 고장 어드레스가 정상 동작 제어부 내의 저장공간들에 저장되도록 구성됨으로써 메모리 컨트롤러 내의 리페어부의 면적 오버헤드를 감소시킬 수 있다는 이점이 제공된다. 더욱이 리페어 과정에서 메모리 컨트롤러의 정상 동작 제어부 내의 저장공간들을 이용하는데 있어서, 저장공간들 및 BIRA FSM들을 파이프라인(pipeline) 구조로 구현시킴으로써 리페어 속도를 향상시킬 수 있다는 이점도 제공된다.
도 1은 본 개시의 일 예에 따른 반도체 메모리 장치를 나타내 보인 블록도이다.
도 2는 본 개시의 일 예에 따른 반도체 메모리 장치를 구성하는 메모리 구성의 일 예를 나타내 보인 도면이다.
도 3은 본 개시의 일 예에 따른 반도체 메모리 장치를 구성하는 메모리 컨트롤러의 정상 동작 제어부 구성의 일 예를 나타내 보인 도면이다.
도 4는 본 개시의 일 예에 따른 반도체 메모리 장치를 구성하는 메모리 컨트롤러의 정상 동작 제어부 내의 저장공간부가 파이프-라인 방식으로 구성되고, 이를 운영하기 위한 리페어부의 BIRA 구성의 일 예를 나타낸 보인 도면이다.
도 5는 본 개시의 일 예에 따른 반도체 메모리 장치의 리페어 동작을 위한 제1 공유공간 구성의 일 예를 나타내 보인 도면이다.
도 6은 본 개시의 일 예에 따른 반도체 메모리 장치의 리페어 동작 중 BIRA의 제1 BIRA FSM 동작을 설명하기 위해 나타내 보인 플로 차트이다.
도 7은 본 개시의 일 예에 따른 반도체 메모리 장치의 리페어 동작을 수행하기 위한 스페어 피봇 고장 및 비-스페어 피봇 고장을 설명하기 위해 나타내 보인 도면이다.
도 8은 본 개시의 일 예에 따른 반도체 메모리 장치의 리페어 동작 중 제2 스테이지의 제2 공유공간 구성의 일 예를 나타내 보인 도면이다.
도 9는 도 8의 제2 공유공간의 제1 저장영역에서의 데이터 저장 형식의 일 예를 나타내 보인 도면이다.
도 10은 본 개시의 일 예에 따른 반도체 메모리 장치의 리페어 동작 중 공유공간으로의 고장 어드레스 저장 방식의 다른 예를 나타내 보인 도면이다.
도 11 내지 도 13은 본 개시의 일 예에 따른 반도체 메모리 장치의 리페어 동작 중 BIRA의 제2 BIRA FSM 동작을 설명하기 위해 나타내 보인 플로 챠트들이다.
도 13는 본 개시의 일 예에 따른 반도체 메모리 장치의 리페어 동작 중 제4 스테이지의 제4 공유공간 구성의 일 예를 나타내 보인 도면이다.
도 15는 도 14의 제4 공유공간의 제1 저장영역에서의 데이터 저장 형식의 일 예를 나타내 보인 도면이다.
도 16은 본 개시의 일 예에 따른 반도체 메모리 장치의 리페어 동작 중 BIRA의 제4 BIRA FSM 동작을 설명하기 위해 나타내 보인 플로 챠트이다.
도 17 내지 도 25는 본 개시의 일 예에 따른 반도체 메모리 장치의 리페어 방법을 설명하기 위해 나타내 보인 도면들이다.
본 출원의 예의 기재에서 "제1" 및 "제2"와 같은 기재는 요소를 구분하기 위한 것이며, 부재 자체를 한정하거나 특정한 순서를 의미하는 것으로 사용된 것은 아니다. 어느 한 구성 요소가 다른 구성 요소에 "연결되어 있다"거나 "접속되어 있다"의 기재는, 다른 구성 요소에 전기적 또는 기계적으로 직접 연결되어 있거나 또는 접속되어 있을 수 있으며, 또는, 중간에 다른 별도의 구성 요소들이 개재되어 연결 관계 또는 접속 관계를 구성할 수도 있다. "기 설정된"이라는 용어는 프로세스나 알고리즘에서 매개변수를 사용할 때 매개변수의 수치가 미리 결정되어 있음을 의미한다. 매개변수의 수치는 실시예에 따라서 프로세스나 알고리즘이 시작할 때 설정되거나 프로세스나 알고리즘이 수행되는 구간 동안 설정될 수 있다. "로직하이레벨" 및 "로직로우레벨"은 신호들의 로직레벨들을 설명하기 위해 사용된다. "로직하이레벨"을 갖는 신호는 "로직로우레벨"을 갖는 신호와 구별된다. 예를 들어, 제1 전압을 갖는 신호가 "로직하이레벨"에 대응할 때 제2 전압을 갖는 신호는 "로직로우레벨"에 대응할 수 있다. 일 실시예에 따라 "로직하이레벨"은 "로직로우레벨"보다 큰 전압으로 설정될 수 있다. 한편, 신호들의 로직레벨들은 실시예에 따라서 다른 로직레벨 또는 반대의 로직레벨로 설정될 수 있다. 예를 들어, 로직하이레벨을 갖는 신호는 실시예에 따라서 로직로우레벨을 갖도록 설정될 수 있고, 로직로우레벨을 갖는 신호는 실시예에 따라서 로직하이레벨을 갖도록 설정될 수 있다.
이하, 실시예를 통하여 본 발명을 더욱 상세히 설명하기로 한다.
도 1은 본 개시의 일 예에 따른 반도체 메모리 장치(10)를 나타내 보인 블록도이다. 도 1을 참조하면, 반도체 메모리 장치(10)는, 메모리(memory)(100) 및 메모리 컨트롤러(memory controller)(200)를 포함한다. 일 예에서 반도체 메모리 장치(10)는, 메모리(100)와 메모리 컨트롤러(200)가 하나의 기판에 집적되는 DIMM 구조로 구현될 수 있다. 메모리(100)는, 데이터 저장 공간을 갖는다. 메모리 컨트롤러(200)의 라이트(write) 동작 제어에 의해, 메모리(100)의 데이터 저장 공간 내에는 데이터가 쓰여질 수 있다. 또한 메모리 컨트롤러(200)의 리드(read) 동작 제어에 의해, 메모리(100)의 데이터 저장 공간 내에 쓰여져 있는 데이터는 메모리(100) 외부로 읽혀질 수 있다. 일 예에서 메모리(100)는, 디램(DRAM)과 같은 휘발성 메모리를 포함할 수 있다. 일 예에서 메모리(100)는, 플래시(flash) 메모리, 상변화 메모리(PCRAM), 저항 변화 메모리(ReRAM), 강유전체 메모리(FeRAM), 자기저항 메모리(MRAM)와 같은 비휘발성 메모리를 포함할 수도 있다.
메모리 컨트롤러(200)는, 메모리(100)의 정상 동작을 제어하는 정상 동작 제어부(normal operation control part)(210)와, 메모리(100)에 대한 리페어 동작을 제어하는 리페어부(repair part)(220)와, 그리고 선택부(230)를 포함한다. 본 실시예에서 메모리(100)의 "정상 동작"은, 메모리(100)에 대한 리드 동작 및 라이트 동작으로 정의될 수 있다. 그리고 메모리(100)에 대한 "리페어 동작"은, 메모리(100)의 고장 셀을 스페어 셀로 대체하는 동작으로 정의될 수 있다. 정상 동작 제어부(210)는, 호스트로부터의 커맨드(command)에 대응하여 메모리(100)에 대한 액세스 동작을 제어한다. 정상 동작 제어부(210)는, 호스트로부터 리드 커맨드 및 어드레스가 전송되는 경우 메모리(100)에 대한 리드 동작을 제어한다. 정상 동작 제어부(210)는, 호스트로부터 라이트 커맨드, 어드레스, 및 라이트 데이터가 전송되는 경우 메모리(100)에 대한 라이트 동작을 제어한다.
정상 동작 제어부(210)는, 저장공간들(storage spaces)(212)을 포함할 수 있다. 일 예에서 저장공간들(212)은, 메모리(100)에 대한 정상 동작 제어 과정에서 리드 데이터 또는 라이트 데이터를 임시로 저장하는 기능을 수행할 수 있다. 일 예에서 저장공간들(212)은, 메모리(100)에 대한 정상 동작 제어 과정에서 정상 동작 제어부(210) 내에서의 데이터 입출력 값을 저장하는 기능을 수행할 수도 있다. 일 예에서 저장공간들(212)은, 레지스터들(registers)을 포함할 수 있다. 레지스터들은, 여러 형태의 플립-플롭(flip-flop)들의 조합으로 구성될 수 있거나, 또는 에스램(SRAM)들로 구성될 수도 있다. 일 예에서 저장공간들(212)은, 단일의 에스램을 포함할 수도 있다.
리페어부(220)는, BIST(222) 및 BIRA(224)를 포함할 수 있다. BIST(222)는, 메모리(100) 내의 고장 셀들이 검출되도록 하는 테스트 패턴들을 생성한다. BIST(222)는 생성된 테스트 패턴들을 이용하여 메모리(100)를 테스트한다. 이 과정에서 고장 셀이 검출되면, BIST(222)는 고장 어드레스(fault address)(메모리 내의 고장 셀의 어드레스)를 BIRA(224)로 전송한다. BIRA(224)는, BIST(222)로부터 전송되는 고장 어드레스를 저장한다. 이 과정에서 BIRA(224)는, 전송되는 고장 어드레스를 이미 저장되어 있는 고장 어드레스들과 비교하고, 비교 결과에 따라 적절한 방식으로 고장 어드레스를 저장한다. BIST(222)의 동작과 BIRA(224)의 동작은 동시에 이루어질 수 있다. 즉 BIST(222)에 의한 테스트 동작이 수행되는 동안, BIRA(224)는 고장 어드레스의 저장 동작을 수행할 수 있다. BIST(222)에 의한 테스트가 종료되면, BIRA(224)는, 저장된 고장 어드레스를 분석하여 리페어 솔루션(repair solution)을 구하는 리던던시 분석(Redundancy Analysis; 이하 RA)을 수행한다. 본 예에서 BIRA(224)는, BIST(222)로부터 전송되는 고장 어드레스를 저장하는 공간으로서 정상 동작 제어부(210) 내의 저장공간들(212)을 이용한다. 즉 BIRA(224) 내에 고장 어드레스 저장을 위한 별도의 저장공간이 요구되지 않는다.
선택부(230)는, 메모리 컨트롤러(200)의 정상 동작 제어부(210) 및 메모리(100) 사이의 제1 신호 전송 패스와, 메모리 컨트롤러(200)의 리페어부(220) 및 메모리(100) 사이의 제2 신호 전송 패스 중 어느 하나를 선택하여 인에이블(enable)시킨다. 선택되지 않은 다른 신호 전송 패스는 차단된다. 일 예에서 선택부(230)는, 모드 선택 제어 신호에 응답하여 동작할 수 있다. 예컨대 정상 동작을 요청하는 제1 모드 선택 제어 신호가 선택부(230)로 입력되는 경우, 선택부(230)는 정상 동작 제어부(210) 및 메모리 사이의 제1 신호 전송 패스를 선택적으로 인에이블시킨다. 이에 따라 메모리 컨트롤러(200)의 정상 동작 제어부(210)와 메모리(100) 사이로 커맨드, 어드레스, 데이터 등이 전송될 수 있다. 반면에 메모리 컨트롤러(200)의 리페어부(220)와 메모리(100) 사이의 신호 전송은 차단된다. 예컨대 리페어 동작을 요청하는 제2 모드 선택 제어 신호가 선택부(230)로 입력되는 경우, 선택부(230)는 리페어부(220) 및 메모리 사이의 제2 신호 전송 패스를 선택적으로 인에이블시킨다. 이에 따라 메모리 컨트롤러(200)의 리페어부(220)와 메모리(100) 사이로 커맨드, 어드레스, 데이터 등이 전송될 수 있다. 반면에 메모리 컨트롤러(200)의 정상 동작 제어부(210)와 메모리(100) 사이의 신호 전송은 차단된다.
도 2는 본 개시의 일 예에 따른 반도체 메모리 장치(10)를 구성하는 메모리(100) 구성의 일 예를 나타내 보인 도면이다. 도 2를 참조하면, 메모리(100)는, 복수개의 메모리 블록들(BL0, BL1, …)을 포함할 수 있다. 메모리 블록들(BL0, BL1, …) 각각의 구조는 동일하며, 이에 따라 이하에서 설명되는 제1 메모리 블록(BL0)의 구조는 나머지 메모리 블록들(BL1, …) 각각에 대해서 동일하게 적용된다. 또한 본 예에서 제시하고 있는 제1 메모리 블록(BL0)의 구조는, 단지 하나의 예시일 뿐이며, 메모리의 종류 또는 메모리의 기능에 따라 메모리(100)는 여러 가지 다양한 형태의 구조로 구성될 수 있다.
제1 메모리 블록(BL0)은, 셀 어레이(cell array)와, 로우 스페어들(row spares)과, 그리고 컬럼 스페어들(column spares)을 포함한다. 셀 어레이 내에는 복수개의 메인 메모리 셀들이 배치된다. 메인 메모리 셀들 각각은, 복수개의 로우들(rows) 및 컬럼들(columns)에 의해 한정되는 매트릭스 형태로 배치된다. 본 예에서는 8개의 로우들 및 8개의 컬럼들을 전제로 하지만, 이는 단지 하나의 예시에 불과하다. 8개의 로우들 각각의 로우에 배치되는 메인 메모리 셀들은 로우 어드레스(row address)에 의해 특정될 수 있다. 예컨대 첫번째 로우에 배치되는 8개의 메인 메모리 셀들은, 로우 어드레스 "0"에 의해 특정된다. 마찬가지로 8개의 컬럼들 각각의 컬럼에 배치되는 메인 메모리 셀들은 컬럼 어드레스(column address)에 의해 특정될 수 있다. 예컨대 첫번째 컬럼에 배치되는 8개의 메인 메모리 셀들은, 컬럼 어드레스 "0"에 의해 특정될 수 있다. 이에 따라, 예컨대 두번째 로우 및 세번째 컬럼에 배치되는 메인 메모리 셀은, 로우 어드레스 "1" 및 컬럼 어드레스 "2"에 의해 특정된다.
로우 스페어들은, 셀 어레이 내의 메인 메모리 셀들 중 고장 셀을 포함하는 로우의 메인 메모리 셀들을 대체할 수 있다. 예컨대 셀 어레이 내에서 네번째 로우의 메인 메모리 셀들, 즉 로우 어드레스 "3"에 의해 특정되는 메인 메모리 셀들 중 하나가 고장 셀인 경우, 네번째 로우의 메인 메모리 셀들은, 로우 스페어들 중 하나의 로우 스페어의 스페어 셀들로 대체될 수 있다. 본 예에서 로우 스페어들의 개수는 2개이지만, 이는 단지 하나의 예시일 뿐, 2개보다 더 적거나 많을 수 있다. 본 예의 경우, 로우 스페어들에 의해 리페어할 수 있는 셀 어레이 내의 로우의 개수는 2개이다. 이에 따라 셀 어레이 내에서 고장 셀을 갖는 로우의 개수가 2개를 초과하는 경우, 로우 스페어들에 의한 리페어는 수행될 수 없다. 각각의 로우 스페어에서의 컬럼 개수는, 셀 어레이에서의 컬럼 개수와 동일하다.
컬럼 스페어들은, 셀 어레이 내의 메인 메모리 셀들 중 고장 셀을 포함하는 컬럼의 메인 메모리 셀들을 대체할 수 있다. 예컨대 셀 어레이 내에서 세번째 컬럼의 메인 메모리 셀들, 즉 컬럼 어드레스 "2"에 의해 특정되는 메인 메모리 셀들 중 하나가 고장 셀인 경우, 세번째 컬럼의 메인 메모리 셀들은, 컬럼 스페어들 중 하나의 컬럼 스페어의 스페어 셀들로 대체될 수 있다. 본 예에서 컬럼 스페어들의 개수는 2개이지만, 이는 단지 하나의 예시일 뿐, 2개보다 더 적거나 많을 수 있다. 본 예의 경우, 컬럼 스페어들에 의해 리페어할 수 있는 셀 어레이 내의 컬럼의 개수는 2개이다. 이에 따라 셀 어레이 내에서 고장 셀을 갖는 컬럼의 개수가 2개를 초과하는 경우, 컬럼 스페어들에 의한 리페어는 수행될 수 없다. 각각의 컬럼 스페어에서의 로우 개수는, 셀 어레이에서의 로우 개수와 동일하다.
도 3은 본 개시의 일 예에 따른 반도체 메모리 장치(10)를 구성하는 메모리 컨트롤러(200)의 정상 동작 제어부(210) 구성의 일 예를 나타내 보인 도면이다. 도 3을 참조하면, 메모리 컨트롤러(도 1의 200)의 정상 동작 제어부(210)는, 저장공간부(212)와, 멀티플렉서(214)와, 그리고 디멀티플렉서(216)를 포함한다. 본 예에서 저장공간부(212)은, 정상 동작 제어부(210)를 구성하는 여러 요소들 중 복수개의 저장공간들(212-1, 212-2, …)을 포함하는 부분으로 정의된다. 메모리 컨트롤러(도 1의 200)가 메모리(도 1의 100)에 대한 정상 동작을 제어하는 경우, 저장공간부(212) 내의 저장공간들(212-1, 212-2, …)은, 정상 동작 제어부(210) 내에서 메모리(도 1의 100)에 대한 정상 동작 과정에서의 데이터 저장 기능을 수행한다. 반면에 메모리 컨트롤러(도 1의 200)가 메모리(도 1의 100)에 대한 리페어 동작을 제어하는 경우, 리페어부(도 1의 220)의 BIRA(224) 동작 과정에서의 고장 어드레스를 저장하는데 이용된다. 일 예에서 제1 저장공간(212-1)은 레지스터일 수 있다. 그리고 제2 저장공간(212-2)은 에스램(SRAM)일 수 있다. 저장공간부(212) 내의 제1 저장공간(212-1) 및 제2 저장공간(212-2)은, 멀티플렉서(214)를 통해 데이터가 선택적으로 입력되고, 디멀티플렉서(216)를 통해 데이터를 선택된 경로로 출력시킬 수 있다.
멀티플렉서(214)는, 저장공간부(212)로 입력하는 데이터를 선택하는 기능을 수행한다. 멀티플렉서(214)의 제1 입력단자에는 정상 동작 입력(normal operation input)이 입력된다. 멀티플렉서(214)의 제2 입력단자에는 리페어 동작 입력(repair operation input), 구체적으로는 BIRA 동작 입력(BIRA operation input)이 입력된다. 멀티플렉서(214)의 제어단자에는 모드 선택 제어 신호(mode selection control signal)가 입력된다. 멀티플렉서(214)는, 정상 동작 입력 및 BIRA 동작 입력 중 모드 선택 제어 신호에 의해 선택되는 어느 하나의 입력을 출력단자를 통해 출력시킨다. 일 예에서 모드 선택 제어 신호가 정상 동작 모드에 해당하는 경우, 멀티플렉서(214)는 정상 동작 입력을 출력시킨다. 반면에 모드 선택 제어 신호가 BIRA 동작 모드에 해당하는 경우, 멀티플렉서(214)는 BIRA 동작 입력을 출력시킨다. 멀티플렉서(214)로부터의 출력은 저장공간부(212)로 입력된다.
디멀티플렉서(216)는, 저장공간부(212)로부터 출력되는 데이터의 전송 경로를 선택하는 기능을 수행한다. 디멀티플렉서(216)의 입력단자로는 저장공간부(212)의 출력이 입력된다. 디멀티플렉서(216)는, 입력단자로 입력되는 저장공간부(212)의 출력을 제1 출력단자 및 제2 출력단자 중 선택된 하나의 출력단자로 출력시킨다. 디멀티플렉서(216)의 제1 출력단자는, 정상 동작 제어부(normal operation control part)(도 1의 210) 내의 전송 경로와 결합된다. 디멀티플렉서(216)의 제2 출력단자는 리페어부(도 1의 220) 내의 BIRA(224)와 결합된다. 디멀티플렉서(216)의 출력단자의 선택은, 디멀티플렉서(216)의 제어단자로 입력되는 모드 선택 제어 신호에 의해 이루어질 수 있다. 일 예에서 모드 선택 제어 신호가 정상 동작 모드에 해당하는 경우, 디멀티플렉서(216)는 제1 출력단자를 인에이블시킨다. 이 경우 저장공간부(212)로부터 출력되는 데이터는, 정상 동작 제어부(210) 내에서 메모리(도 1의 100)에 대한 정상 동작 제어를 수행하는데 사용된다. 반면에 모드 선택 제어 신호가 BIRA 동작 모드에 해당하는 경우, 디멀티플렉서(216)는 제2 출력단자를 인에이블시킨다. 이 경우 저장공간부(212)로부터 출력되는 데이터는, 리페어부(220)의 BIRA(224) 내에서 리페어 동작을 수행하는데 사용된다.
도 4는 본 개시의 일 예에 따른 반도체 메모리 장치(10)를 구성하는 메모리 컨트롤러(200)의 정상 동작 제어부(210) 내의 저장공간부(212)가 파이프-라인 방식으로 구성되고, 이를 운영하기 위한 리페어부(220)의 BIRA(224) 구성의 일 예를 나타낸 보인 도면이다. 도 4를 참조하면, 메모리 컨트롤러(200)의 정상 동작 제어부(210) 내의 저장공간부(212)는, 상호 구분되는 제1 내지 제5 공유공간(shared space)(213-1, …, 213-5)을 포함한다. 본 예에서 공유공간들(213-1, …, 213-5)의 개수는 5개이지만, 이는 단지 하나의 예시로서 더 적거나 더 많을 수도 있다. 일 예에서 제1 내지 제5 공유공간(213-1, …, 213-5)은, 각각 도 3을 참조하여 설명한 제1 저장공간(도 3의 212-1) 또는 제2 저장공간(도 3의 212-2)일 수 있다. 이에 따라 제1 내지 제5 공유공간(213-1, …, 213-5)은, 각각 레지스터 또는 에스램(SRAM)일 수 있다.
다른 예에서 제1 내지 제5 공유공간(213-1, …, 213-5)은, 정상 동작 제어부(도 3의 210)의 저장공간부(212) 내의 저장공간들(도 3의 212-1, 212-2, …) 중 일부가 조합되어 구성될 수도 있다. 예컨대 제1 공유공간(213-1)은, 제1 저장공간(212-1) 및 제2 저장공간(212-2)의 조합에 해당될 수 있다. 또 다른 예에서 제1 내지 제5 공유공간(213-1, …, 213-5)은, 정상 동작 제어부(도 3의 210)의 저장공간부(212) 내의 저장공간들(도 3의 212-1, 212-2, …) 각각이 논리적으로 분리되어 구성될 수도 있다. 예컨대 제1 저장공간(도 3의 212-1)은 제1 공유공간(212-1) 및 제2 공유공간(212-2)으로 논리적으로 분할될 수 있다.
리페어부(도 1의 220)의 BIRA(224)는, 복수개, 예컨대 제1 내지 제5 BIRA 유한 상태 머신(Finite State Machine; 이하 FSM)(224-1, …, 224-5)과, BIRA 아비터(BIRA arbiter)(225)를 포함하여 구성될 수 있다. 일 예에서, BIRA(224) 내에 배치되는 BIRA FSM들(224-1, …, 224-5)의 개수는, 정상 동작 제어부(도 1의 210)의 저장공간부(212)를 구성하는 공유공간들(213-1, …, 213-5)의 개수와 동일하다. 도면에서 점선 박스로 나타낸 바와 같이, BIRA(224) 내의 BIRA FSM들(224-1, …, 224-5) 각각은 공유공간들(213-1, …, 213-5) 중 하나와 함께 하나의 스테이지(stage)를 구성한다. 예컨대 BIST(도 1의 222)로부터 고장 어드레스(ADDR_F)를 전송받는 제1 BIRA FSM(224-1)은, 제1 공유공간(213-1)과 제1 스테이지(STAGE1)를 구성한다. 제2 BIRA FSM(224-2)은, 제2 공유공간(213-2)과 제2 스테이지(STAGE2)를 구성한다. 제3 BIRA FSM(224-3)은, 제3 공유공간(213-3)과 제3 스테이지(STAGE3)를 구성한다. 제4 BIRA FSM(224-4)은, 제4 공유공간(213-4)과 제4 스테이지(STAGE4)를 구성한다. 그리고 제5 BIRA FSM(224-5)은, 제5 공유공간(213-5)과 제5 스테이지(STAGE5)를 구성한다.
BIRA FSM들(224-1, …, 224-5) 각각은, 각각의 BIRA FSM과 함께 스테이지를 구성하는 공유공간으로부터 그 공유공간에 저장되어 있는 데이터, 예컨대 저장되어 있는 고장 어드레스를 리드할 수 있다. 또한 BIRA FSM들(224-1, …, 224-5) 각각은, 각각의 BIRA FSM과 함께 스테이지를 구성하는 공유공간으로 데이터, 예컨대 고장 어드레스(ADDR_F)를 라이트할 수 있다. 즉 BIRA FSM들(224-1, …, 224-5) 각각은, 다른 스테이지를 구성하는 공유공간들에 대한 리드 동작 및 라이트 동작을 수행할 수 없다. 예컨대 제1 스테이지(STAGE1)의 제1 BIRA FSM(224-1)은, 제1 스테이지(STAGE1)의 제1 공유공간(213-1)으로만 고장 어드레스(ADDR_F)를 라이트할 수 있고, 제1 공유공간(213-1)에 대해서만 리드 동작을 수행할 수 있다. 마찬가지로 제2 스테이지(STAGE2)의 제2 BIRA FSM(224-2)은, 제2 스테이지(STAGE2)의 제2 공유공간(213-2)으로만 고장 어드레스(ADDR_F)를 라이트할 수 있고, 제2 공유공간(213-2)에 대해서만 리드 동작을 수행할 수 있다.
본 예에서 제1 내지 제5 스테이지들(STAGE0, …, STAGE5)은, BIRA(220)의 입력단과 출력단 사이에서 순차적으로 배열되는 파이프-라인(pipe-line) 방식으로 배치된다. 일 예에서 가장 앞에 배치되는 제1 스테이지(STAGE1)는 버퍼(buffer)로 사용된다. 본 예에 따른 반도체 메모리 장치(10)는, 리페어 동작 과정에서 고장 어드레스(ADDR_F)의 저장 장소로 CAM을 사용하지 않고, 정상 동작 제어부(도 1의 210) 내에 존재하는 레지스터나 에스램(SRAM)과 같은 저장공간들을 사용한다. 이에 따라 뒤에 있는 스테이지에서의 BIRA 동작이 완료될 때까지 BIST(도 1의 222)로부터 전송되는 고장 어드레스(ADDR_F)를 임시로 저장하고 있어야 할 필요가 있다. 일 예에서 제1 스테이지(STAGE1)의 제1 공유공간(213-1)은, 데이터의 입력 순서대로 출력되는 FIFO(First-In, First-Out) 방식으로 버퍼 기능을 수행할 수 있도록 구성될 수 있다. 제1 스테이지(STAGE1)의 제1 BIRA FSM(224-1)은, 리페어부(220)의 BIST(도 1의 222)로부터 고장 어드레스(ADDR_F)를 입력받고, 제1 공유공간(213-1)에 저장시킨다. 제1 BIRA FSM(224-1)는, 제2 스테이지(STAGE2)의 제2 BIRA FSM(224-2)으로부터 입력되는 리드요청신호(RD)에 응답하여 가장 먼저 입력되어 저장되고 있는 고장 어드레스(ADDR_F)를 출력시킨다.
제1 BIRA FSM(224-1)로부터 출력되는 고장 어드레스(ADDR_F)는, 그 다음 스테이지, 즉 제2 스테이지(STAGE2)의 제2 BIRA FSM(224-2)으로 입력된다. 제2 BIRA FSM(224-2)은, 제2 공유공간(231-2)을 이용하여 BIRA 동작을 수행한다. 제2 BIRA FSM(224-2)에 의한 BIRA 동작이 수행되면, 제2 BIRA FSM(224-2)은 고장 어드레스(ADDR_F) 및 상태 신호(STATUS)를 출력시킨다. 여기서 고장 어드레스(ADDR_F)는 제2 BIRA FSM(224-2)에 의해 수행된 BIRA 동작 대상에 해당하며, 상태 신호(STATUS)는 제2 BIRA FSM(224-2)의 BIRA 동작 후의 상태에 해당한다. 제2 BIRA FSM(224-2)로부터 출력되는 고장 어드레스(ADDR_F) 및 상태 신호(STATUS)는, 제3 스테이지(STAGE3)의 제3 BIRA FSM(224-3)으로 입력된다.
제3 BIRA FSM(224-3)은, 위에서 설명한 제2 BIRA FSM(224-2)과 동일한 BIRA 동작을 수행한다. 이에 따라 제3 BIRA FSM(224-3)으로부터 고장 어드레스(ADDR_F) 및 상태 신호(STATUS)가 제4 BIRA FSM(224-4)로 전송된다. 마찬가지로 제4 BIRA FSM(224-4)도 동일한 BIRA 동작을 수행한 후, 고장 어드레스(ADDR_F) 및 상태 신호(STATUS)를 제5 BIRA FSM(224-5)로 전송한다. 제2 내지 제5 BIRA FSM(224-2, …, 224-5)에 의해 수행되는 BIRA 동작은, BIRA 알고리즘에 따라 다양하게 정의될 수 있다. 일 예에서 제2 스테이지(STAGE2) 및 제3 스테이지(STAGE3)는, 스페어 피봇(spare pivot)에 대한 BIRA 동작을 수행하도록 구성할 수 있다. 또한 제4 스테이지(STAGE4) 및 제5 스테이지(STAGE5)는, 비-스페어 피봇(non spare pivot)에 대한 BIRA 동작을 수행할 수 있다. 스페어 피봇에 대한 BIRA 동작 및 비-스페어 피봇에 대한 BIRA 동작에 대해서는 아래에서 보다 상세하게 설명하기로 한다.
BIST(도 1의 222)에 의한 테스트 동작이 종료하고, 또한 제2 내지 제5 BIRA FSM(224-2, …, 224-5)에 의한 BIRA 동작이 끝나면, RA 동작이 수행된다. 일 예에서 RA 동작은 BIRA(224)의 BIRA 아비터(225)에 의해 수행될 수 있다. BIRA 아비터(225)는, 제2 내지 제5 BIRA FSM(224-2, …, 224-5)을 통해 제2 내지 제5 공유공간들(213-2, …, 213-5) 내에 저장되어 있는 고장 어드레스(ADDR_F)들의 분포를 파악한다. 그리고 파악된 고장 어드레스(ADDR_F)들의 분포에 따라 적절한 리페어 솔루션(REPAIR SOLUTION)을 결정하여 출력시킨다. BIRA 아비터(225)에 의한 리페어 솔루션(REPAIR SOLUTION) 결정은, 어떤 리페어 알고리즘을 채택하는가에 따라서 다양하게 이루어질 수 있다.
도 5는 본 개시의 일 예에 따른 반도체 메모리 장치(10)의 저장공간부(212)를 구성하는 제1 공유공간(213-1) 구성의 일 예를 나타내 보인 도면이다. 도 5를 참조하면, 제1 스테이지(STAGE1)의 제1 공유공간(213-1)은, 복수개의 저장영역들(213-11, 213-12, …)을 갖는다. 일 예에서 복수개의 저장영역들(213-11, 213-12, …)은, 인덱스(index)에 의해 구분될 수 있다. 제1 공유공간(213-1)의 저장영역들(213-11, 213-12, …) 각각에는 고장 어드레스(ADDR_F)가 저장될 수 있다. 또한 제1 공유공간(213-1)의 저장영역들(213-11, 213-12, …) 각각에 저장되어 있는 고장 어드레스(ADDR_F)들은 일정 조건에서 제1 공유공간(213-1)으로부터 출력될 수 있다. 제1 공유공간(213-1)으로의 고장 어드레스(ADDR_F) 입력 및 출력은, 제1 BIRA FSM(224-1)의 상태 변화에 응답하여 이루어질 수 있다.
도 6은 본 개시의 일 예에 따른 반도체 메모리 장치(10)에 있어서 제1 스테이지(STAGE1)의 제1 BIRA FSM(224-1)의 상태 변화 동작을 나타내 보인 플로 챠트이다. 도 6을 도 4 및 도 5와 함께 참조하면, 단계 301에서 제1 BIRA FSM(224-1)은 BIST로부터 고장 어드레스(ADDR_F)가 입력되는지를 판단한다. 고장 어드레스(ADDR_F)가 입력되면, 단계 302에서 고장 어드레스(ADDR_F)를 제1 공유공간(213-1)에 저장한다. 일 예에서 고장 어드레스(ADDR_F)는, 제1 공유공간(213-1)의 비어 있는 저장영역들 중 가장 낮은 인덱스를 갖는 저장영역에 저장될 수 있다. 이 경우 고장 어드레스(ADDR_F)가 저장되는 저장영역에는 저장 순서를 정의하는 포인터(pointer)가 설정될 수 있다. 단계 303에서 제1 BIRA FSM(224-1)은 제2 BIRA FSM(224-2)로부터 리드요청신호(RD)가 입력되는지를 판단한다. 리드요청신호(RD)가 입력되면, 단계 304에서 제1 공유공간(213-1) 내에 저장되어 있는 고장 어드레스(ADDR_F)들 중 가장 먼저 저장된 고장 어드레스(ADDR_F)를 제2 BIRA FSM(224-2)으로 출력시킨다. 제1 공유공간(213-1)에서 가장 먼저 저장된 고장 어드레스(ADDR_F)는, 제1 공유공간(213-1)의 (213-11, 213-12, …) 각각에 설정된 포인터를 통해 ??을 수 있다.
도 7은 본 개시의 일 예에 따른 반도체 메모리 장치(10)의 리페어 동작을 수행하기 위한 스페어 피봇 고장 및 비-스페어 피봇 고장을 설명하기 위해 나타내 보인 도면이다. 본 예에서는 도 2를 참조하여 설명한 메모리(100)의 제1 메모리 블록(BL0)에 대한 메모리 테스트 및 리페어을 수행하는 것을 전제로 한다. 이하에서 설명되는 내용은 다른 블록들 각각에 대해서도 동일하게 적용될 수 있다. 도 7을 참조하면, 제1 메모리 블록(BL0)은 8개의 로우들 및 8개의 컬럼들로 구성되는 셀 어레이와, 각각 2개의 로우 스페어들 및 컬럼 스페어들을 갖는 것을 전제로 한다. BIST에 의한 제1 메모리 블록(BL0)의 테스트 과정에서, 도면에서 원으로 나타낸 바와 같이 8개의 고장 셀들이 검출되는 것으로 전제한다. 고장 셀들의 검출 순서는 고장 셀의 상부 왼쪽 모서리에 숫자로 표기하였다. BIST에 의해 고장 셀이 검출되면, 실시간으로 고장 셀의 어드레스, 즉 고장 어드레스가 BIRA에 전송된다.
본 예에서는 고장 셀을 스페어 피봇 및 비-스페이 피봇으로 구분한다. 스페어 피봇은, 이전에 검출된 고장 셀의 고장 어드레스와 중복되지 않는 로우 어드레스 및 컬럼 어드레스를 갖는 고장 셀로 정의될 수 있다. 반면에 비-스페어 피봇은, 이전에 검출된 고장 셀의 로우 어드레스 및 컬럼 어드레스 중 적어도 어느 하나와 중복되는 어드레스를 갖는 고장 셀로 정의될 수 있다. 예컨대 첫번째 고장 셀로 검출된 로우 어드레스 "2" 및 컬럼 어드레스 "1"(이하 (2, 1)로 표기)의 고장 셀인 경우, 스페어 피봇에 해당한다. 두번째 고장 셀로 검출된 (5, 3)의 고장 셀의 경우, 로우 어드레스 "5" 및 컬럼 어드레스 "3"이 이전에 검출된 고장 어드레스와 중복되지 않으므로 스페어 피봇에 해당한다. 반면에 세번째 고장 셀로 검출된 (5, 1)의 고장 셀의 경우, 이미 검출된 첫번째 고장 셀과는 중복된 컬럼 어드레스를 갖고, 또한 이미 검출된 두번째 고장 셀과는 중복된 로우 어드레스를 갖는다. 따라서 (5, 1)의 고장 셀은 비-스페어 피봇에 해당한다. 이와 같은 방식에 따라서, 다섯번째 고장 셀로 검출된 (1, 4)의 고장 셀과, 여섯번째 고장 셀로 검출된 (7, 7)의 고장 셀은 스페어 피봇에 해당한다. 그리고 네번째 고장 셀로 검출된 (2, 3)의 고장셀과, 일곱번째 고장 셀로 검출된 (7, 4)의 고장 셀과, 그리고 여덟번째 고장 셀로 검출된 (5, 7)의 고장 셀은 비-스페어 피봇에 해당한다.
비-스페어 피봇은, 스페어 피봇과 크로스 상태이거나, 또는 크로스 상태이지 않을 수 있다. 크로스 상태의 비-스페어 피봇은, 비-스페어 피봇의 로우 어드레스 및 컬럼 어드레스가 스페어 피봇의 로우 어드레스들 및 컬럼 어드레스들과 중복되는 경우로 정의될 수 있다. 이에 따라 크소스 상태의 비-스페어 피봇의 로우 어드레스는 스페어 피봇의 로우 어드레스들 중 어느 하나와 중복되고, 또한 컬럼 어드레스는 스페어 피봇의 컬럼 어드레스들 중 하나와 중복된다. 반면에 크로스 상태가 아닌 비-스페어 피봇은, 비-스페어 피봇의 로우 어드레스 또는 컬럼 어드레스가 스페어 피봇의 로우 어드레스들 또는 컬럼 어드레스들과 중복되지 않는 경우로 정의될 수 있다. 이에 따라 크로스 상태가 아닌 비-스페어 피봇의 로우 어드레스 및 컬럼 어드레스 중 하나만이 스페어 피봇의 로우 어드레스들 또는 컬럼 어드레스들과 중복되며, 나머지는 중복되지 않는다.
도 8은 본 개시의 일 예에 따른 반도체 메모리 장치(10)의 리페어 동작 중 제2 스테이지(STAGE2)의 제2 공유공간(213-2) 구성의 일 예를 나타내 보인 도면이다. 도 4를 참조하여 설명한 바와 같이, 제2 스테이지(STAGE2) 및 제3 스테이지(STAGE3)는 모두 스페어 피봇에 대한 BIRA 동작을 수행한다. 따라서 이하에서는 제2 스테이지(STAGE2)에서의 BIRA 동작을 설명하기로 하며, 이는 스페어 피봇에 대한 BIRA 동작을 수행하는 제3 스테이지(STAGE3)에 대해서도 동일하게 적용된다. 도 8을 참조하면, "D"의 용량을 갖는 제2 공유공간(213-2)은, "N"개의 저장영역들(213-21, 213-22, 213-23, …)로 분할된다. 이에 따라 저장영역들(213-21, …) 각각은 "D/N"의 용량을 가질 수 있다. 제2 공유공간(213-2)은, 저장영역들(213-21, …) 각각에 메모리(100)를 구성하는 복수개의 블록들(BL0, BL1, BL2, …) 중 하나의 블록에서 검출되는 고장 어드레스(ADDR_F)가 저장되도록 구성된다. 예컨대 제1 저장영역(213-21)에는 제1 메모리 블록(BL0)에서 검출되는 고장 어드레스(ADDR_F_BL0)가 저장된다. 제2 저장영역(213-22)에는 제2 메모리 블록(BL1)에서 검출되는 고장 어드레스(ADDR_F_BL1)가 저장된다. 유사하게 제3 저장영역(213-23)에는 제3 메모리 블록(BL2)에서 검출되는 고장 어드레스(ADDR_F_BL2)가 저장된다.
도 9는 도 8의 제2 공유공간(213-2)의 제1 저장영역(213-21)에서의 데이터 저장 형식의 일 예를 나타내 보인 도면이다. 도 8을 참조하여 설명한 바와 같이, 제1 저장영역(213-21)에는 메모리(100)의 제1 메모리 블록(BL0)에서 검출되는 고장 어드레스(ADDR_F_BL0)가 저장된다. 도 9에 나타낸 바와 같이, 제1 저장영역(213-21)에는, 스페어 피봇 유효 데이터(spare pivot valid)와, 로우 어드레스(row address)와, 그리고 컬럼 어드레스(column address)가 저장된다. 스페어 피봇 유효 데이터는 "1" 또는 "0"의 값을 가질 수 있다. 스페어 피봇 유효 데이터가 "1"인 경우, 저장된 로우 어드레스 및 컬럼 어드레스를 갖는 고장 셀이 유효한 스페어 피봇인 것을 나타낸다. 로우 어드레스 및 컬럼 어드레스는, 스페어 피봇의 로우 어드레스 및 컬럼 어드레스를 의미한다. 제1 저장영역(213-21)에 고장 어드레스(ADDR_F_BL0)가 저장되는 스페어 피봇의 개수는, 제1 메모리 블록(BL0)의 로우 스페어의 개수와 컬럼 스페어의 개수에 따라 결정될 수 있다. 제1 메모리 블록(BL0)이 R개의 로우 스페어들과 C개의 컬럼 스페어들을 갖는 경우, 제1 저장영역(213-21)에 고장 어드레스(ADDR_F_BL0)가 저장되는 스페어 피봇의 개수는 (R*C)개로 한정된다. 본 예의 경우 제1 메모리 블록(BL0)이 각각 2개의 로우 스페어들 및 컬럼 스페어들을 갖는 경우를 전제로 하며, 이 경우 제1 저장영역(213-21)에 고장 어드레스(ADDR_F_BL0)가 저장되는 스페어 피봇의 개수는 2*2=4개가 된다.
도 10은 본 개시의 일 예에 따른 반도체 메모리 장치(10)의 리페어 동작 중 공유공간으로의 고장 어드레스 저장 방식의 다른 예를 나타내 보인 도면이다. 도 10을 참조하면, 메모리(100)를 구성하는 블록들 중 하나의 블록, 예컨대 제2 메모리 블록(BL0)에서 검출되는 고장 셀의 고장 어드레스는, 제2 스테이지(STAGE2)의 제2 공유공간(212-2)과 제3 공유공간(212-3)에 분산되어 저장되도록 구성될 수도 있다. 파이프-라인으로 구성된 각각의 스테이지마다 BIRA 동작을 수행하는데 있어서 일정 수의 클럭들이 요구된다. 즉 제2 스테이지(STAGE2)에서의 제1 메모리 블록(BL0)에 대한 BIRA 동작을 수행하는데 있어서 요구되는 클럭들 수는 제2 공유공간(213-2)의 제1 저장영역(213-21)에 저장되는 데이터양에 비례한다. 이는 제1 메모리 블록(BL0)에 대한 BIRA 동작을 수행하기 위해서는, 제2 공유공간(213-2)의 제1 저장영역(213-21)에 저장되어 있는 데이터를 리드한 후, 리드한 데이터를 전송되는 고장 어드레스와 비교하는 과정이 수행되어야 하기 때문이다. 따라서 본 예에서와 같이, 제1 메모리 블록(BL0)의 스페어 피봇의 고장 어드레스들이 저장될 저장영역을 제2 스테이지(STAGE2)를 구성하는 제2 공유공간(213-2)의 제1 저장영역(213-21)과 제3 스테이지(STAGE3)를 구성하는 제3 공유공간(213-3)의 제1 저장영역(213-31)으로 분산시킴으로써, 각 스테이지에서의 BIRA 동작에 요구되는 클럭들 수를 감소시킬 수 있다. 일 예에서, 제1 메모리 블록(BL0)이 "R"개의 로우 스페어들과, "C"개의 컬럼 스페어들을 갖는 경우, 제2 공유공간(213-2)의 제1 저장영역(213-21)과 제3 공유공간(213-3)의 제1 저장영역(213-31)에 각각 (R*C/2)개의 고장 어드레스들이 저장되도록 할 수 있다.
도 11 내지 도 13은 본 개시의 일 예에 따른 반도체 메모리 장치(10)의 리페어 동작 중 BIRA(224)의 제2 BIRA FSM(224-2) 동작을 설명하기 위해 나타내 보인 플로 챠트들이다. 먼저 도 11을 도 4와 함께 참조하면, 단계 311에서 고장 어드레스(ADDR_F)가 입력되는지를 판단한다. 고장 어드레스(ADDR_F)는 버퍼 기능을 수행하는 제1 스테이지(STAGE1)의 제1 BIRA FSM(224-1)으로부터 전송될 수 있다. 단계 311에서 고장 어드레스(ADDR_F)가 전송되면, 전송된 고장 어드레스(ADDR_F)의 고장 셀이 스페어 피봇에 해당되는지의 여부를 확인한다. 이를 위해 단계 312에서 제2 공유공간(213-21)에 저장되어 있는 고장 어드레스(ADDR_F)를 리드한다. 단계 313에서 전송된 고장 어드레스(ADDR_F)와 리드한 고장 어드레스(ADDR_F)를 비교한다. 단계 314에서, 새로운 스페어 피봇인지의 여부를 판단한다. 단계 314의 판단은, 단계 313에서의 비교 결과에 따라 이루어질 수 있다. 즉 단계 313에서의 비교 결과, 전송된 고장 어드레스(ADDR_F)의 로우 어드레스 및 컬럼 어드레스가 모두, 리드한 로우 어드레스들 및 컬럼 어드레스들과 중복되지 않는 경우 단계 314에서 새로운 스페어 피봇인 것으로 판정한다. 이 경우 도 12의 단계 321을 수행한다. 반면에 단계 313에서의 비교 결과, 전송된 고장 어드레스(ADDR_F)의 로우 어드레스 및 컬럼 어드레스 중 적어도 어느 하나가 리드한 로우 어드레스들 및 컬럼 어드레스들과 중복되지 않는 경우 단계 314에서 새로운 스페어 피봇이 아닌 경우, 즉 비-스페어 피봇인 경우로 판정하여 도 13의 단계 331을 수행한다.
도 12를 참조하면, 도 11의 단계 314에서 스페어 피봇인 것으로 판정되면, 단계 321에서 제2 공유공간(213-2)의 제1 저장영역(213-21)이 풀(full) 상태인지의 여부를 판단한다. 제2 공유공간(213-2)의 제1 저장영역(213-21)이 풀 상태가 아닌 경우, 즉 스페어 피봇의 고장 어드레스가 추가적으로 저장될 공간이 제1 저장영역(213-21) 내에 남아 있는 경우, 단계 322에서, 전송된 스페어 피봇의 고장 어드레스(ADDR_F)를 제1 저장영역(213-21)에 라이트한다. 제1 저장영역(213-21)에는, 도 9를 참조하여 설명한 바와 같이, 스페어 피봇 유효 데이터로서 "1"과, 전송된 스페어 피봇의 로우 어드레스 및 컬럼 어드레스가 각각 저장된다. 단계 323에서 다음 BIRA FSM, 즉 제3 BIRA FSM(224-3)으로 고장 어드레스(ADDR_F) 및 제2 BIRA FSM(224-2)의 상태정보(STATUS)로서 제1 상태정보를 전송한다. 여기서 제1 상태정보에는, 제2 공유공간(213-2)의 제1 저장영역(213-21)에 제1 메모리 블록(BL0)의 새로운 스페어 피봇을 저장했다는 정보가 포함될 수 있다.
단계 321에서 제2 공유공간(213-2)의 제1 저장영역(213-21)이 풀 상태인 경우, 단계 324에서 여분의 저장영역이 존재하는지의 여부를 판단한다. 단계 324의 판단은, 하나의 블록의 스페어 피봇에 대한 고장 어드레스를 복수의 공유공간들에 분산하여 저장시킨 경우에 수행된다. 예컨대 도 10을 참조하여 설명한 바와 같이 제1 메모리 블록(BL0)의 스페어 피봇의 고장 어드레스들이 저장될 저장영역을 제2 스테이지(STAGE2)의 제2 공유공간(213-2)과 제3 스테이지(STAGE3)의 제3 공유공간(213-3)으로 분산시킬 수 있다. 이 경우 비록 제2 공유공간(213-2) 내에서 제1 메모리 블록(BL0)의 스페어 피봇의 고장 어드레스가 저장될 제1 저장공간(213-21)이 모두 풀 상태이더라도, 제3 공유공간(213-3) 내에 제1 메모리 블록(BL0)의 스페어 피봇의 고장 어드레스를 저장할 여분의 공간이 존재할 수 있다.
이와 같이 단계 324에서 여분의 저장영역이 존재하는 경우, 단계 325에서 다음 BIRA FSM, 즉 제3 BIRA FSM(224-3)으로 스페어 피봇의 고장 어드레스(ADDR_F) 및 제2 BIRA FSM(224-2)의 상태정보(STATUS)로서 제2 상태정보를 전송한다. 여기서 제2 상태정보에는, 새로운 스페어 피봇이지만, 스페어 피봇의 고장 어드레스가 다른 스테이지의 공유공간 내에 저장될 수 있다는 정보가 포함될 수 있다. 단계 324에서 여분의 저장영역이 존재하지 않는 경우, 즉 전송된 스페어 피봇의 고장 어드레스를 저장할 수 없는 경우는, 리페어 능력을 초과하여 고장 셀들이 발생했다는 것을 의미한다. 따라서 이 경우 단계 326에서 BIRA 아비터(도 4의 225)로 제1 메모리 블록(BL0)에 대한 리페어 불가 정보를 전송한다. 그리고 다음 BIRA FSM, 즉 제3 BIRA FSM(224-3)으로 스페어 피봇의 고장 어드레스(ADDR_F) 및 제2 BIRA FSM(224-2)의 상태정보(STATUS)로서 제3 상태정보를 전송한다. 여기서 제3 상태정보에는, 제1 메모리 블록(BL0)에 대한 리페어 불가 정보가 포함될 수 있다.
도 13을 참조하면, 도 11의 단계 314에서 스페어 피봇이 아닌 것으로 판정되면, 전송되는 고장 어드레스를 갖는 고장 셀이 비-스페어 피봇에 속하는 경우에 해당된다. 이 경우 단계 331에서 전송되는 고장 어드레스가 저장되어 있는 스페어 피봇 고장 어드레스와 중복되는지의 여부를 판정한다. 이는 비-스페어 피봇이 크로스 상태인지의 여부를 판단하기 위한 것이다. 단계 331에서 비-스페어 피봇의 고장 어드레스가 저장되어 있는 스페어 피봇 고장 어드레스와 중복되는 경우, 즉 크로스 상태의 비-스페어 피봇인 경우, 단계 332에서, 다음 BIRA FSM, 즉 제3 BIRA FSM(224-3)으로 비-스페어 피봇의 고장 어드레스(ADDR_F) 및 제2 BIRA FSM(224-2)의 상태정보(STATUS)로서 제4 상태정보를 전송한다. 여기서 제4 상태정보에는, 전송되는 비-스페어 피봇이 크로스 상태의 비-스페어 피봇에 해당된다는 정보가 포함될 수 있다. 단계 331에서 비-스페어 피봇의 고장 어드레스가 저장되어 있는 스페어 피봇 고장 어드레스와 중복되지 않는 경우, 즉 크로스 상태가 아닌 비-스페어 피봇인 경우, 단계 333에서, 다음 BIRA FSM, 즉 제3 BIRA FSM(224-3)으로 비-스페어 피봇의 고장 어드레스(ADDR_F) 및 제2 BIRA FSM(224-2)의 상태정보(STATUS)로서 제5 상태정보를 전송한다. 여기서 제5 상태정보에는, 전송되는 비-스페어 피봇이 크로스 상태가 아닌 비-스페어 피봇에 해당된다는 정보가 포함될 수 있다.
지금까지 설명한 제2 스테이지(STAGE2)와 마찬가지로 스페어 피봇에 대한 BIRA 동작을 수행하는 제3 스테이지(STAGE3)도 도 11 내지 도 13을 참조하여 설명한 BIRA 동작과 동일한 동작을 수행한다. 다만 제2 스테이지(STAGE2)의 제2 BIRA FSM(224-2)로부터 전달되는 상태정보(STATUS)에 따라서 별도의 동작 수행 없이 단지 고장 어드레스(ADDR_F) 및 상태 정보(STATUS)를 전달하는 기능만을 수행한다. 예컨대 제2 BIRA FSM(224-2)으로부터 전달되는 상태정보(STATUS)가 제1 상태정보, 제3 상태정보, 제4 상태정보, 제5 상태정보인 경우, 제3 스테이지(STAGE3)의 제3 BIRA FSM(224-3)은 도 11 내지 도 13을 참조하여 설명한 BIRA 동작을 수행하지 않고 단지 제4 BIRA FSM(224-4)로 고장 어드레스(ADDR_F) 및 상태 정보(STATUS)를 전달한다. 반면에 제2 BIRA FSM(224-2)으로부터 전달되는 상태정보(STATUS)가 제2 상태정보인 경우는 도 12의 단계 321에서 제1 저장영역이 풀 상태가 아닌 경우에 해당되므로, 도 12의 단계 322 및 단계 323을 수행한다.
도 14는 본 개시의 일 예에 따른 반도체 메모리 장치(10)의 리페어 동작 중 제4 스테이지(STAGE4)의 제4 공유공간(213-4) 구성의 일 예를 나타내 보인 도면이다. 도 4를 참조하여 설명한 바와 같이, 제4 스테이지(STAGE4) 및 제5 스테이지(STAGE5)는 모두 비-스페어 피봇에 대한 BIRA 동작을 수행한다. 따라서 이하에서는 제4 스테이지(STAGE4)에서의 BIRA 동작을 설명하기로 하며, 이는 비-스페어 피봇에 대한 BIRA 동작을 수행하는 제5 스테이지(STAGE5)에 대해서도 동일하게 적용된다. 도 13을 참조하면, "D"의 용량을 갖는 제4 공유공간(213-4)은, "N"개의 저장영역들(213-41, 213-42, 213-43, …)로 분할된다. 이에 따라 저장영역들(213-41, …) 각각은 "D/N"의 용량을 가질 수 있다. 제4 공유공간(213-4)은, 저장영역들(213-41, …) 각각에 메모리(100)를 구성하는 복수개의 메모리 블록들(BL0, BL1, BL2, …) 중 하나의 블록에서 검출되는 비-스페어 피봇의 고장 어드레스(ADDR_F)가 저장되도록 구성된다. 예컨대 제1 저장영역(213-21)에는 제1 메모리 블록(BL0)에서 검출되는 비-스페어 피봇의 고장 어드레스(ADDR_F_BL0)가 저장된다. 제2 저장영역(213-22)에는 제2 메모리 블록(BL1)에서 검출되는 비-스페어 피봇의 고장 어드레스(ADDR_F_BL1)가 저장된다. 유사하게 제3 저장영역(213-23)에는 제3 메모리 블록(BL2)에서 검출되는 비-스페어 피봇의 고장 어드레스(ADDR_F_BL2)가 저장된다.
도 15는 도 14의 제4 공유공간(213-4)의 제1 저장영역(213-41)에서의 데이터 저장 형식의 일 예를 나타내 보인 도면이다. 도 14를 참조하여 설명한 바와 같이, 제4 저장영역(213-41)에는 메모리(100)의 제1 메모리 블록(BL0)에서 검출되는 비-스페어 피봇 중 크로스 상태의 비-스페어 피봇의 고장 어드레스(ADDR_F_BL0)가 저장된다. 도 15에 나타낸 바와 같이, 제4 저장공간(213-4)의 제1 저장영역(213-41)에는, 복수개의 로우 어드레스들(R1-R4) 및 컬럼 어드레스들(C1-C4)에 의해 구성되는 매트릭스 형식으로 크로스 상태의 비-스페어 피봇의 고장 어드레스가 저장된다. 매트릭스의 열에 해당하는 로우 어드레스들(R1-R4)은, 제1 메모리 블록(BL0)에서 검출된 스페어 피봇의 로우 어드레스이다. 매트릭스의 행에 해당하는 컬럼 어드레스들(C1-C4)은, 제1 메모리 블록(BL0)에서 검출된 스페어 피봇의 컬럼 어드레스이다. 따라서 비-스페어 피봇의 고장 어드레스가 제4 BIRA FSM(224-4)에 전송되는 시점에서, 제4 저장공간(213-4)의 제1 저장영역(213-41)에서의 복수개의 로우 어드레스들(R1-R4) 및 컬럼 어드레스들(C1-C4)은, 이전에 검출되는 스페어 피봇의 개수에 따라서 모두 특정되거나, 모두 특정되지 않거나, 또는 일부만 특정될 수 있다.
도 16은 본 개시의 일 예에 따른 반도체 메모리 장치(10)의 리페어 동작 중 BIRA(224)의 제4 BIRA FSM(224-4) 동작을 설명하기 위해 나타내 보인 플로 챠트이다. 도 16을 도 4와 함께 참조하면, 단계 341에서 고장 어드레스(ADDR_F)가 입력되는지를 판단한다. 고장 어드레스(ADDR_F)는 이전 스테이지의 BIRA FSM, 즉 제3 스테이지(STAGE3)의 제3 BIRA FSM(224-3)로부터 상태정보(STATUS)와 함께 전송될 수 있다. 단계 341에서 고장 어드레스(ADDR_F)가 전송되면, 전송된 고장 어드레스(ADDR_F)가 스페어 피봇의 고장 어드레스에 해당되는지의 여부를 판단한다. 단계 341의 판단은, 제3 BIRA FSM(224-3)으로부터 전송되는 상태정보(STATUS)를 통해 이루어질 수 있다. 도 12를 참조하여 설명한 바와 같이, 제3 BIRA FSM(224-3)으로부터 제1 상태정보, 제2 상태정보, 또는 제3 상태정보가 전송되면, 제3 BIRA FSM(224-3)으로부터 전송되는 고장 어드레스는 스페어 피봇의 고장 어드레스에 해당한다. 이 경우 단계 343에서 스페어 피봇의 고장 어드레스 정보를 제4 공유공간(213-4)의 제1 저장영역(213-41)에 저장한다. 스페어 피봇의 고장 어드레스 정보를 저장하는 방식은, 도 15를 참조하여 설명한 바와 같다. 이어서 단계 344에서 다음 스테이지의 BIRA FSM, 즉 제5 스테이지(STAGE5)의 제5 BIRA FSM(224-5)으로 고장 어드레스(ADDR_F) 및 상태정보(STATUS)로서 제6 상태 정보를 전송한다. 제6 상태 정보는, 스페어 피봇의 고장 어드레스 정보가 비-스페어 피봇의 BIRA 동작을 수행하는 공유공간 내에 저장되었다는 정보를 포함할 수 있다.
도 13을 참조하여 설명한 바와 같이, 제3 BIRA FSM(224-3)으로부터 제4 상태정보 또는 제5 상태정보가 전송되면, 제3 BIRA FSM(224-3)으로부터 전송되는 고장 어드레스는 비-스페어 피봇의 고장 어드레스에 해당한다. 즉 단계 342에서 비-스페어 피봇의 고장 어드레스인 것으로 판정한다. 이 경우 단계 345에서 비-스페어 피봇이 크로스 상태인지의 여부를 판단한다. 제3 BIRA FSM(224-3)으로부터 상태정보(STATUS)로서 제4 상태정보가 전송되면, 제3 BIRA FSM(224-3)으로부터 전송되는 고장 어드레스는 크로스 상태인 비-스페어 피봇의 고장 어드레스에 해당한다. 이 경우 단계 346에서 비-스페어 피봇의 고장 어드레스 정보를 제4 공유공간(213-4)의 제1 저장영역(213-41)에 저장한다. 다음에 단계 347에서 다음 스테이지의 BIRA FSM, 즉 제5 스테이지(STAGE5)의 제5 BIRA FSM(224-5)으로 고장 어드레스(ADDR_F) 및 상태정보(STATUS)로서 제8 상태 정보를 전송한다. 제8 상태 정보는, 제3 BIRA FSM(224-3)으로부터 전송되는 제4 상태정보와 동일할 수 있다.
제3 BIRA FSM(224-3)으로부터 상태정보(STATUS)로서 제5 상태정보가 전송되면, 제3 BIRA FSM(224-3)으로부터 전송되는 고장 어드레스는 크로스 상태가 아닌 비-스페어 피봇의 고장 어드레스에 해당한다. 즉 단계 345에서 비-스페어 피봇이 크로스 상태가 아닌 것으로 판정한다. 이 경우 단계 348에서 다음 스테이지의 BIRA FSM, 즉 제5 스테이지(STAGE5)의 제5 BIRA FSM(224-5)으로 고장 어드레스(ADDR_F) 및 상태정보(STATUS)로서 제7 상태 정보를 전송한다. 제7 상태 정보는, 제3 BIRA FSM(224-3)으로부터 전송되는 제5 상태정보와 동일할 수 있다.
도 17 내지 도 25는 본 개시의 일 예에 따른 반도체 메모리 장치(10)의 리페어 방법을 설명하기 위해 나타내 보인 도면들이다. 도 17 내지 도 24에서 왼쪽에는 제1 메모리 블록(BL0)이 도시되어 있고, 오른쪽 상부에는 스페어 피봇에 대한 BIRA 동작을 위한 제2 공유공간(213-2)의 제1 저장영역(213-21)이 도시되어 있으며, 그리고 오른쪽 하부에는 크로스 상태의 비-스페어 피봇에 대한 BIRA 동작을 위한 제4 공유공간(213-4)의 제1 저장영역(213-41)이 도시되어 있다. 도 17에 나타낸 바와 같이, BIST(도 1의 222)에 의한 제1 메모리 블록(BL0)의 테스트 과정에서, (2, 1)의 고장 셀이 가장 먼저 검출되는 경우를 전제로 한다. 이 경우 BIST(222)는 BIRA(도 1의 224)로 고장 셀의 고장 어드레스 (2, 1)을 전송한다. 이 고장 어드레스 (2, 1)는 BIRA(224)의 제1 BIRA FSM(224-1)의 제어 동작에 의해 제1 공유공간(213-1)에 임시로 저장된 후, BIRA(224)의 제2 BIRA FSM(224-2)으로 전송된다.
고장 어드레스 (2, 1)의 고장 셀은 스페어 피봇에 해당된다. 제2 BIRA FSM(224-2)은, 제2 공유공간(213-2)의 제1 저장영역(213-21)에 스페어 피봇 유효 데이터, 로우 어드레스, 및 컬럼 어드레스로 각각 "1", "2", "1"이 저장되도록 한다. 그리고 고장 어드레스 (2, 1)과 제1 상태정보를 제3 BIRA FSM(224-3)으로 전송한다. 제3 BIRA FSM(224-3)은, 스페어 피봇의 고장 어드레스 (2, 1)이 이미 제2 공유공간(213-2)의 제1 저장영역(213-21)에 저장되었으므로, 별도의 동작 없이 고장 어드레스 (2, 1)과 제1 상태정보를 제4 BIRA FSM(224-4)으로 전송한다. 제4 BIRA FSM(224-1)은 스페어 피봇의 고장 어드레스 (2, 1)을 제4 공유공간(213-4)의 제1 저장영역(213-41)에 저장한다. 이에 따라 제4 공유공간(213-4)의 제1 저장영역(213-41)의 첫번째 로우 어드레스(R1) 및 첫번째 컬럼 어드레스(C1)는 각각 "2" 및 "1"로 기록된다.
다음에 도 18에 나타낸 바와 같이, BIST(도 1의 222)에 의한 제1 메모리 블록(BL0)의 테스트 과정에서, (5, 3)의 고장 셀이 두번째로 검출되는 경우를 전제로 한다. 이 경우 BIST(222)는 BIRA(도 1의 224)로 고장 셀의 고장 어드레스 (5, 3)을 전송한다. 이 고장 어드레스 (5, 3)는 BIRA(224)의 제1 BIRA FSM(224-1)의 제어 동작에 의해 제1 공유공간(213-1)에 임시로 저장된 후, BIRA(224)의 제2 BIRA FSM(224-2)으로 전송된다. 고장 어드레스 (5, 3)의 로우 어드레스(5)와 컬럼 어드레스(3)는, 첫번째 고장 셀의 로우 어드레스(2) 및 컬럼 어드레스(1)와 중복되지 않으므로, 고장 어드레스 (5, 3)의 고장 셀은 스페어 피봇에 해당된다. 제2 BIRA FSM(224-2)은, 제2 공유공간(213-2)의 제1 저장영역(213-21)에 스페어 피봇 유효 데이터, 로우 어드레스, 및 컬럼 어드레스로 각각 "1", "5", "3"이 저장되도록 한다. 그리고 고장 어드레스 (2, 1)과 제1 상태정보를 제3 BIRA FSM(224-3)으로 전송한다. 제3 BIRA FSM(224-3)은, 스페어 피봇의 고장 어드레스 (5, 3)이 이미 제2 공유공간(213-2)의 제1 저장영역(213-21)에 저장되었으므로, 별도의 동작 없이 고장 어드레스 (5, 3)과 제1 상태정보를 제4 BIRA FSM(224-4)으로 전송한다. 제4 BIRA FSM(224-1)은 스페어 피봇의 고장 어드레스 (5, 3)을 제4 공유공간(213-4)의 제1 저장영역(213-41)에 저장한다. 이에 따라 제4 공유공간(213-4)의 제1 저장영역(213-41)의 두번째 로우 어드레스(R2) 및 두번째 컬럼 어드레스(C2)는 각각 "5" 및 "3"으로 기록된다.
다음에 도 19에 나타낸 바와 같이, BIST(도 1의 222)에 의한 제1 메모리 블록(BL0)의 테스트 과정에서, (5, 1)의 고장 셀이 세번째로 검출되는 경우를 전제로 한다. 이 경우 BIST(222)는 BIRA(도 1의 224)로 고장 셀의 고장 어드레스 (5, 1)을 전송한다. 이 고장 어드레스 (5, 1)는 BIRA(224)의 제1 BIRA FSM(224-1)의 제어 동작에 의해 제1 공유공간(213-1)에 임시로 저장된 후, BIRA(224)의 제2 BIRA FSM(224-2)으로 전송된다. 고장 어드레스 (5, 1)의 로우 어드레스(5)와 컬럼 어드레스(1)는, 두번째 고장 셀의 로우 어드레스(5) 및 첫번째 고장 셀의 컬럼 어드레스(1)와 중복된다. 이에 따라 고장 어드레스 (5, 1)의 고장 셀은, 크로스 상태의 비-스페어 피봇에 해당된다. 스페어 피봇에 대한 BIRA 동작을 수행하는 제2 BIRA FSM(224-2) 및 제3 BIRA FSM(224-3)은, 별도의 동작 없이 고장 어드레스 (5, 1)과 제4 상태정보를 제4 BIRA FSM(224-4)으로 전송한다. 제4 BIRA FSM(224-1)은 크로스 상태의 비-스페어 피봇의 고장 어드레스 (5, 1)을 제4 공유공간(213-4)의 제1 저장영역(213-41)에 저장한다. 이에 따라 제4 공유공간(213-4)의 제1 저장영역(213-41)의 두번째 로우 어드레스(5) 및 첫번째 컬럼 어드레스(1)가 교차하는 영역에 "1"이 기록된다.
다음에 도 20에 나타낸 바와 같이, BIST(도 1의 222)에 의한 제1 메모리 블록(BL0)의 테스트 과정에서, (2, 3)의 고장 셀이 네번째로 검출되는 경우를 전제로 한다. 이 경우 BIST(222)는 BIRA(도 1의 224)로 고장 셀의 고장 어드레스 (2, 3)을 전송한다. 이 고장 어드레스 (2, 3)는 BIRA(224)의 제1 BIRA FSM(224-1)의 제어 동작에 의해 제1 공유공간(213-1)에 임시로 저장된 후, BIRA(224)의 제2 BIRA FSM(224-2)으로 전송된다. 고장 어드레스 (2, 3)의 로우 어드레스(2)와 컬럼 어드레스(3)는, 첫번째 고장 셀의 로우 어드레스(2) 및 두번째 고장 셀의 컬럼 어드레스(3)와 중복된다. 이에 따라 고장 어드레스 (2, 3)의 고장 셀은, 크로스 상태의 비-스페어 피봇에 해당된다. 스페어 피봇에 대한 BIRA 동작을 수행하는 제2 BIRA FSM(224-2) 및 제3 BIRA FSM(224-3)은, 별도의 동작 없이 고장 어드레스 (2, 3)과 제4 상태정보를 제4 BIRA FSM(224-4)으로 전송한다. 제4 BIRA FSM(224-1)은 크로스 상태의 비-스페어 피봇의 고장 어드레스 (2, 3)을 제4 공유공간(213-4)의 제1 저장영역(213-41)에 저장한다. 이에 따라 제4 공유공간(213-4)의 제1 저장영역(213-41)의 첫번째 로우 어드레스(2) 및 두번째 컬럼 어드레스(3)가 교차하는 영역에 "1"이 기록된다.
다음에 도 21에 나타낸 바와 같이, BIST(도 1의 222)에 의한 제1 메모리 블록(BL0)의 테스트 과정에서, (1, 4)의 고장 셀이 다섯번째로 검출되는 경우를 전제로 한다. 이 경우 BIST(222)는 BIRA(도 1의 224)로 고장 셀의 고장 어드레스 (1, 4)을 전송한다. 이 고장 어드레스 (1, 4)는 BIRA(224)의 제1 BIRA FSM(224-1)의 제어 동작에 의해 제1 공유공간(213-1)에 임시로 저장된 후, BIRA(224)의 제2 BIRA FSM(224-2)으로 전송된다. 고장 어드레스 (1, 4)의 로우 어드레스(1)와 컬럼 어드레스(4)는, 각각 지금까지 검출된 고장 셀들의 로우 어드레스들(2, 5) 및 컬럼 어드레스들(1, 3)와 중복되지 않으므로, 고장 어드레스 (1, 4)의 고장 셀은 스페어 피봇에 해당된다. 제2 BIRA FSM(224-2)은, 제2 공유공간(213-2)의 제1 저장영역(213-21)에 스페어 피봇 유효 데이터, 로우 어드레스, 및 컬럼 어드레스로 각각 "1", "1", "4"가 저장되도록 한다. 그리고 고장 어드레스 (1, 4)과 제1 상태정보를 제3 BIRA FSM(224-3)으로 전송한다. 제3 BIRA FSM(224-3)은, 스페어 피봇의 고장 어드레스 (1, 4)가 이미 제2 공유공간(213-2)의 제1 저장영역(213-21)에 저장되었으므로, 별도의 동작 없이 고장 어드레스 (1, 4)와 제1 상태정보를 제4 BIRA FSM(224-4)으로 전송한다. 제4 BIRA FSM(224-1)은 스페어 피봇의 고장 어드레스 (1, 4)를 제4 공유공간(213-4)의 제1 저장영역(213-41)에 저장한다. 이에 따라 제4 공유공간(213-4)의 제1 저장영역(213-41)의 세번째 로우 어드레스(R3) 및 세번째 컬럼 어드레스(C3)는 각각 "1" 및 "4"로 기록된다.
다음에 도 22에 나타낸 바와 같이, BIST(도 1의 222)에 의한 제1 메모리 블록(BL0)의 테스트 과정에서, (7, 7)의 고장 셀이 여섯번째로 검출되는 경우를 전제로 한다. 이 경우 BIST(222)는 BIRA(도 1의 224)로 고장 셀의 고장 어드레스 (7, 7)을 전송한다. 이 고장 어드레스 (7, 7)은 BIRA(224)의 제1 BIRA FSM(224-1)의 제어 동작에 의해 제1 공유공간(213-1)에 임시로 저장된 후, BIRA(224)의 제2 BIRA FSM(224-2)으로 전송된다. 고장 어드레스 (7, 7)의 로우 어드레스(7)과 컬럼 어드레스(7)은, 각각 지금까지 검출된 고장 셀들의 로우 어드레스들(2, 5, 1) 및 컬럼 어드레스들(1, 3, 4)와 중복되지 않으므로, 고장 어드레스 (7, 7)의 고장 셀은 스페어 피봇에 해당된다. 제2 BIRA FSM(224-2)은, 제2 공유공간(213-2)의 제1 저장영역(213-21)에 스페어 피봇 유효 데이터, 로우 어드레스, 및 컬럼 어드레스로 각각 "1", "7", "7"이 저장되도록 한다. 그리고 고장 어드레스 (7, 7)과 제1 상태정보를 제3 BIRA FSM(224-3)으로 전송한다. 제3 BIRA FSM(224-3)은, 스페어 피봇의 고장 어드레스 (7, 7)이 이미 제2 공유공간(213-2)의 제1 저장영역(213-21)에 저장되었으므로, 별도의 동작 없이 고장 어드레스 (7, 7)과 제1 상태정보를 제4 BIRA FSM(224-4)으로 전송한다. 제4 BIRA FSM(224-1)은 스페어 피봇의 고장 어드레스 (7, 7)을 제4 공유공간(213-4)의 제1 저장영역(213-41)에 저장한다. 이에 따라 제4 공유공간(213-4)의 제1 저장영역(213-41)의 네번째 로우 어드레스(R4) 및 네번째 컬럼 어드레스(C4)는 모두 "7"로 기록된다.
다음에 도 23에 나타낸 바와 같이, BIST(도 1의 222)에 의한 제1 메모리 블록(BL0)의 테스트 과정에서, (7, 4)의 고장 셀이 네번째로 검출되는 경우를 전제로 한다. 이 경우 BIST(222)는 BIRA(도 1의 224)로 고장 셀의 고장 어드레스 (7, 4)를 전송한다. 이 고장 어드레스 (7, 4)는 BIRA(224)의 제1 BIRA FSM(224-1)의 제어 동작에 의해 제1 공유공간(213-1)에 임시로 저장된 후, BIRA(224)의 제2 BIRA FSM(224-2)으로 전송된다. 고장 어드레스 (7, 4)의 로우 어드레스(7)과 컬럼 어드레스(4)는, 각각 여섯번째 고장 셀의 로우 어드레스(7) 및 다섯번째 고장 셀의 컬럼 어드레스(4)와 중복된다. 이에 따라 고장 어드레스 (7, 4)의 고장 셀은, 크로스 상태의 비-스페어 피봇에 해당된다. 스페어 피봇에 대한 BIRA 동작을 수행하는 제2 BIRA FSM(224-2) 및 제3 BIRA FSM(224-3)은, 별도의 동작 없이 고장 어드레스 (7, 4)와 제4 상태정보를 제4 BIRA FSM(224-4)으로 전송한다. 제4 BIRA FSM(224-1)은 크로스 상태의 비-스페어 피봇의 고장 어드레스 (7, 4)를 제4 공유공간(213-4)의 제1 저장영역(213-41)에 저장한다. 이에 따라 제4 공유공간(213-4)의 제1 저장영역(213-41)의 네번째 로우 어드레스(7) 및 세번째 컬럼 어드레스(4)가 교차하는 영역에 "1"이 기록된다.
다음에 도 24에 나타낸 바와 같이, BIST(도 1의 222)에 의한 제1 메모리 블록(BL0)의 테스트 과정에서, (5, 7)의 고장 셀이 여덟번째로 검출되는 경우를 전제로 한다. 이 경우 BIST(222)는 BIRA(도 1의 224)로 고장 셀의 고장 어드레스 (5, 7)을 전송한다. 이 고장 어드레스 (5, 7)은 BIRA(224)의 제1 BIRA FSM(224-1)의 제어 동작에 의해 제1 공유공간(213-1)에 임시로 저장된 후, BIRA(224)의 제2 BIRA FSM(224-2)으로 전송된다. 고장 어드레스 (5, 7)의 로우 어드레스(5)와 컬럼 어드레스(7)은, 두번째 고장 셀의 로우 어드레스(5) 및 여섯번째 고장 셀의 컬럼 어드레스(7)과 중복된다. 이에 따라 고장 어드레스 (5, 7)의 고장 셀은, 크로스 상태의 비-스페어 피봇에 해당된다. 스페어 피봇에 대한 BIRA 동작을 수행하는 제2 BIRA FSM(224-2) 및 제3 BIRA FSM(224-3)은, 별도의 동작 없이 고장 어드레스 (5, 7)과 제4 상태정보를 제4 BIRA FSM(224-4)으로 전송한다. 제4 BIRA FSM(224-1)은 크로스 상태의 비-스페어 피봇의 고장 어드레스 (5, 7)을 제4 공유공간(213-4)의 제1 저장영역(213-41)에 저장한다. 이에 따라 제4 공유공간(213-4)의 제1 저장영역(213-41)의 두번째 로우 어드레스(5) 및 네번째 컬럼 어드레스(7)이 교차하는 영역에 "1"이 기록된다.
다음에 도 25에 나타낸 바와 같이, BIRA 아비터(도 4의 225)는, 제2 내지 제5 BIRA FSM(224-2, …, 224-5)을 통해 제2 내지 제5 공유공간(213-2, …, 213-5)에 저장된 데이터를 취합하여 리페어 솔루션을 도출한다. 본 예에서는 BIRA 아비터(225)에 의한 리페어 솔루션 도출 동작 이전에 BIST(도 1의 222)의 메모리(100)에 대한 테스트 동작은 완료된 것으로 간주한다. 구체적으로 도면의 왼쪽에 나타낸 표와 같이, 제4 공유공간(213-4)의 제1 저장영역(213-41)에 저장된 데이터에 스페어 피봇의 고장 어드레스 정보를 추가시킨다. 도면에서 추가된 스페어 피봇의 고장 어드레스 정보는 "x"로 표기하였다. 이에 따라 취합된 데이터에는 4개의 스페어 피봇의 고장 어드레스 정보와 4개의 크로스 상태의 비-스페어 피봇의 고장 어드레스 정보가 모두 포함된다. BIRA 아비터(225)는, 취합된 데이터를 분석하여 가장 고장 셀의 고장 어드레스를 가장 많이 공유하는 로우 어드레스 또는 컬럼 어드레스를 먼저 선택한다. 본 예의 경우 로우 어드레스 "5"의 경우, 하나의 스페어 피봇과 2개의 크로스 상태의 비-스페어 피봇들에 의해 공유된다. 따라서 로우 어드레스 "5"를 로우 스페어들 중 하나, 예컨대 제1 로우 스페어(R1)에 할당한다.
다음에 로우 어드레스 "2"와, 컬럼 어드레스 "4"와, 그리고 컬럼 어드레스 "7"이 각각 1개의 스페어 피봇과 1개의 크로스 상태의 비-스페어 피봇들에 의해 공유된다. 따라서 로우 어드레스 "2"를 로우 스페어들 중 남은 하나, 예컨대 제2 로우 스페어(R2)에 할당한다. 그리고 컬럼 어드레스 "4" 및 컬럼 어드레스 "7"을 각각의 컬럼 스페어들, 즉 제1 컬럼 스페어(C1) 및 제2 컬럼 스페어(C2)에 각각 할당한다. 도면에서 오른쪽에 나타낸 바와 같이, 제1 메모리 블록(BL0)에서 셀 어레이의 로우 어드레스 "5"를 갖는 3개의 고장 셀들은 제1 스페어 로우(R1)를 이용하여 리페어될 수 있다. 셀 어레이의 로우 어드레스 "2"를 갖는 2개의 고장 셀들은 제2 스페어 로우(R2)를 이용하여 리페어될 수 있다. 셀 어레이의 컬럼 어드레스 "4"를 갖는 2개의 고장 셀들은 제1 스페어 컬럼(C1)을 이용하여 리페어될 수 있다. 그리고 셀 어레이의 컬럼 어드레스 "7"을 갖는 2개의 고장 셀들은 제2 스페어 컬럼(C2)을 이용하여 리페어될 수 있다.
이제까지 본 출원 기술에 대하여 실시예들을 중심으로 살펴보았다. 본 출원 기술이 속하는 기술분야에서 통상의 지식을 가진 자는 본 출원 기술이 본 출원 기술의 본질적인 특성에서 벗어나지 않는 범위에서 변형된 형태로 구현될 수 있음을 이해할 수 있을 것이다. 그러므로 개시된 실시예들은 한정적인 관점이 아니라 설명적인 관점에서 고려되어야 한다. 본 출원 기술의 범위는 전술한 설명이 아니라 특허청구범위에 나타나 있으며, 그와 동등한 범위 내에 있는 모든 차이점은 본 출원 기술에 포함된 것으로 해석되어야 할 것이다.
10...반도체 메모리 장치 100...메모리
200...메모리 컨트롤러 210...정상 동작 제어부
212...저장공간들 220...리페어부
222...BIST 224...BIRA
230...선택부

Claims (20)

  1. 메모리; 및
    상기 메모리를 제어하는 메모리 컨트롤러를 포함하며,
    상기 메모리 컨트롤러는,
    상기 메모리의 정상 동작을 제어하되, 상기 정상 동작의 제어 과정에서 사용되는 복수개의 저장공간들을 포함하는 정상 동작 제어부; 및
    상기 메모리의 리페어 동작을 제어하되, 상기 리페어 동작의 제어 과정에서 검출된 고장 어드레스가 상기 정상 동작 제어부 내의 저장공간들에 저장되도록 구성되는 리페어부를 포함하는 반도체 메모리 장치.
  2. 제1항에 있어서,
    상기 메모리 및 메모리 컨트롤러는, 하나의 기판에 집적되는 모듈 구조로 구성되는 반도체 메모리 장치.
  3. 제1항에 있어서,
    상기 메모리의 정상 동작은, 상기 메모리에 대한 리드 동작 및 라이트 동작을 포함하고, 그리고
    상기 메모리의 리페어 동작은, 상기 메모리에 대한 테스트 및 상기 테스트를 통해 검출된 고장 셀을 스페어 셀로 대체하는 동작을 포함하는 반도체 메모리 장치.
  4. 제1항에 있어서,
    상기 복수개의 저장공간들 각각은, 레지스터 또는 에스램(SRAM)으로 구성되는 반도체 메모리 장치.
  5. 제1항에 있어서,
    상기 리페어부는 빌트-인 자체 테스트 회로(BIST) 및 빌트-인 리던던시 분석 회로(BIRA)를 포함하되,
    상기 BIST는 상기 메모리에 대한 테스트를 수행하고, 검출된 고장 셀의 고장 어드레스를 상기 BIRA로 전송하고,
    상기 BIRA는 상기 BIST로부터 전송된 고장 어드레스를 상기 정상 동작 제어부 내의 저장공간들에 저장하고, 저장된 고장 어드레스 정보를 통해 리페어 솔루션을 도출시키는 반도체 메모리 장치.
  6. 제1항에 있어서,
    상기 정상 동작 제어부 및 메모리 사이의 제1 신호 전송 패스와, 상기 리페어부 및 메모리 사이의 제2 신호 전송 패스 중 어느 하나를 선택하여 인에이블시키는 선택부를 더 포함하는 반도체 메모리 장치.
  7. 제1항에 있어서, 상기 정상 동작 제어부는,
    제1 입력단자 및 제2 입력단자로 각각 정상 동작 입력 및 리페어 동작 입력이 전송되고, 모드 선택 제어 신호에 응답하여 상기 정상 동작 입력 및 리페어 동작 입력 중 하나의 입력을 상기 저장공간들에 전송하는 멀티플렉서; 및
    제1 출력단자 및 제2 출력단자가 각각 상기 정상 동작 제어부 내의 전송 경로 및 상기 리페어부로 각각 연결되고, 상기 모드 선택 제어 신호에 응답하여 상기 저장공간들로부터 출력되는 데이터를 상기 제1 출력단자 및 제2 출력단자 중 하나의 출력단자로 출력시키는 디멀티플렉서를 포함하는 반도체 메모리 장치.
  8. 제1항에 있어서,
    상기 저장공간들은, 파이프-라인 방식으로 상호 구분되도록 배치되는 복수개의 공유공간들을 구성하고,
    상기 리페어부는, 각각이 상기 공유공간들 중 하나와 하나의 스테이지를 구성하여, 동일한 스테이지의 공유공간을 이용한 BIRA 동작을 수행하는 복수개의 BIRA 유한 상태 머신(BIRA FSM)들을 포함하는 반도체 메모리 장치.
  9. 제8항에 있어서,
    상기 BIST로부터 고장 어드레스를 전송받는 제1 스테이지의 공유공간 및 BIRA FSM은 버퍼 기능을 수행하는 반도체 메모리 장치.
  10. 제8항에 있어서,
    상기 고장 셀은, 이전에 검출된 고장 셀의 로우 어드레스 및 컬럼 어드레스와 중복되지 않는 어드레스를 갖는 스페어 피봇과, 상기 스페어 피봇 외의 비-스페어 피봇으로 구분되고,
    상기 비-스페어 피봇은, 검출된 상기 스페어 피봇의 로우 어드레스들 및 컬럼 어드레스들과 중복되는 어드레스를 갖는 크로스 상태의 비-스페어 피봇과, 검출된 상기 스페어 피봇의 로우 어드레스들 또는 컬럼 어드레스들과 중복되지 않는 어드레스를 갖는 크로스 상태가 아닌 비-스페어 피봇으로 구분되며,
    상기 BIRA FSM들 중 일부는 상기 스페어 피봇에 대한 BIRA 동작을 수행하고, 상기 BIRA FSM들 중 다른 일부는 상기 크로스 상태의 비-스페어 피봇에 대한 BIRA 동작을 수행하도록 구성되는 반도체 메모리 장치.
  11. 제10항에 있어서,
    상기 스페어 피봇에 대한 BIRA 동작을 수행하는 BIRA FSM은, 상기 크로스 상태의 비-스페어 피봇에 대한 BIRA 동작을 수행하는 BIRA FSM보다 앞선 스테이지에 배치되는 반도체 메모리 장치.
  12. 제10항에 있어서,
    상기 스페어 피봇에 대한 BIRA 동작을 수행하는 BIRA FSM은, 상기 BIRA FSM과 함께 스테이지를 구성하는 공유공간 내에 상기 스페어 피봇의 로우 어드레스 및 컬럼 어드레스를 저장시키도록 구성되는 반도체 메모리 장치.
  13. 제10항에 있어서,
    상기 스페어 피봇에 대한 BIRA 동작을 수행하는 BIRA FSM은, 앞선 스테이지의 BIRA FSM으로부터 고장 어드레스가 전송되면, 상기 BIRA FSM과 함께 스테이지를 구성하는 공유공간 내에 저장되어 있는 고장 어드레스를 리드하고, 상기 전송된 고장 어드레스와 상기 리드한 고장 어드레스를 비교하여 상기 스페어 피봇에 해당되는지의 여부를 판단하도록 구성되는 반도체 메모리 장치.
  14. 제13항에 있어서,
    상기 스페어 피봇에 대한 BIRA 동작을 수행하는 BIRA FSM은, 상기 판단 결과 스페어 피봇에 해당하는 경우, 상기 BIRA FSM과 함께 스테이지를 구성하는 공유공간 내에 여유 공간이 남아 있으면 상기 스페어 피봇의 고장 어드레스를 상기 공유공간 내에 저장하고, 상기 여유 공간이 남아 있지 않으면 리페어 불가 정보를 발생시키도록 구성되는 반도체 메모리 장치.
  15. 제13항에 있어서,
    상기 크로스 상태의 비-스페어 피봇에 대한 BIRA 동작을 수행하는 BIRA FSM은,
    상기 판단 결과 스페어 피봇에 해당하는 경우, 상기 BIRA FSM과 함께 스테이지를 구성하는 공유공간 내에 상기 스페어 피봇들의 로우 어드레스들 및 컬럼 어드레스들을 저장하고,
    상기 판단 결과 비-스페어 피봇에 해당하는 경우, 상기 비-스페어 피봇이 크로스 상태인지 아닌지의 여부를 판단하도록 구성되는 반도체 메모리 장치.
  16. 제15항에 있어서,
    상기 크로스 상태의 비-스페어 피봇에 대한 BIRA 동작을 수행하는 BIRA FSM은, 상기 판단 결과 상기 크로스 상태의 비-스페어 피봇에 해당하는 경우, 상기 저장된 스페어 피봇들의 로우 어드레스들 및 컬럼 어드레스들이 교차하는 영역에 상기 크로스 상태의 비-스페어 피봇의 고장 어드레스 정보를 저장하도록 구성되는 반도체 메모리 장치.
  17. 제10항에 있어서,
    상기 스페어 피봇에 대한 BIRA 동작을 수행하는 BIRA FSM 및 상기 크로스 상태의 비-스페어 피봇에 대한 BIRA 동작을 수행하는 BIRA FSM의 상태 정보를 취합하여 상기 고장 셀들에 대한 리페어 솔루션을 도출하도록 구성되는 BIRA 아비터를 더 포함하는 반도체 메모리 장치.
  18. 메모리와, 상기 메모리의 정상 동작에 대한 제어 과정에 사용되는 복수개의 저장공간들을 포함하는 메모리 컨트롤러를 포함하는 반도체 메모리 장치의 리페어 방법에 있어서,
    상기 저장공간들을 파이프-라인 방식으로 배치되는 복수개의 공유공간들로 재배치시키는 단계;
    상기 메모리에 대한 테스트를 통해 고장 셀의 고장 어드레스를 검출하는 단계;
    상기 검출된 고장 어드레스를 상기 공유공간에 저장하는 단계; 및
    상기 저장된 고장 어드레스를 이용하여 리페어 솔루션을 도출시키는 단계를 포함하는 반도체 메모리 장치의 리페어 방법.
  19. 제18항에 있어서, 상기 검출된 고장 어드레스를 상기 공유공간에 저장하는 단계는,
    상기 공유공간에 저장되어 있는 고장 어드레스를 리드하는 단계;
    상기 검출된 고장 어드레스와 상기 리드한 고장 어드레스를 비교하여, 상기 검출된 고장 어드레스를 갖는 고장 셀이 이전에 검출된 고장 셀의 로우 어드레스 및 컬럼 어드레스와 중복되지 않는 어드레스를 갖는 스페어 피봇에 해당하는지를 판단하는 단계; 및
    상기 판단 결과 스페어 피봇에 해당하는 경우 상기 공유공간 내에 여유 공간이 남아 있는 경우 상기 스페어 피봇의 로우 어드레스 및 컬럼 어드레스를 상기 공유공간의 여유 공간에 라이트하는 단계를 포함하는 반도체 메모리 장치의 리페어 방법.
  20. 제19항에 있어서,
    상기 판단 결과 스페어 피봇 외의 비-스페어 피봇에 해당하는 경우 상기 공유공간 외의 다른 공유공간 내에 상기 비-스페어 피봇의 고장 어드레스 정보를 저장하는 단계를 더 포함하는 반도체 메모리 장치의 리페어 방법.
KR1020200033926A 2020-03-19 2020-03-19 반도체 메모리 장치 및 반도체 메모리 장치에서의 리페어 방법 KR20210117557A (ko)

Priority Applications (3)

Application Number Priority Date Filing Date Title
KR1020200033926A KR20210117557A (ko) 2020-03-19 2020-03-19 반도체 메모리 장치 및 반도체 메모리 장치에서의 리페어 방법
US17/024,396 US11621050B2 (en) 2020-03-19 2020-09-17 Semiconductor memory devices and repair methods of the semiconductor memory devices
CN202110156395.4A CN113496757A (zh) 2020-03-19 2021-02-04 半导体存储器件以及半导体存储器件的修复方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020200033926A KR20210117557A (ko) 2020-03-19 2020-03-19 반도체 메모리 장치 및 반도체 메모리 장치에서의 리페어 방법

Publications (1)

Publication Number Publication Date
KR20210117557A true KR20210117557A (ko) 2021-09-29

Family

ID=77748796

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200033926A KR20210117557A (ko) 2020-03-19 2020-03-19 반도체 메모리 장치 및 반도체 메모리 장치에서의 리페어 방법

Country Status (3)

Country Link
US (1) US11621050B2 (ko)
KR (1) KR20210117557A (ko)
CN (1) CN113496757A (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20240016013A (ko) * 2022-07-28 2024-02-06 와이아이케이 주식회사 반도체 테스트 방법 및 장치

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117334240A (zh) * 2021-06-04 2024-01-02 长江存储科技有限责任公司 用于三维nand存储器的固件修复
KR20230147684A (ko) * 2021-11-17 2023-10-23 구글 엘엘씨 공유된 물리 메모리를 사용한 논리 메모리 복구
KR20230135755A (ko) * 2022-03-17 2023-09-26 에스케이하이닉스 주식회사 반도체 메모리의 리던던시 처리 방법 및 장치
KR20230142230A (ko) * 2022-04-01 2023-10-11 에스케이하이닉스 주식회사 동적 폴트 클러스터링 방법 및 장치

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6242269B1 (en) * 1997-11-03 2001-06-05 Texas Instruments Incorporated Parallel scan distributors and collectors and process of testing integrated circuits
US6634003B1 (en) * 2000-02-10 2003-10-14 Lsi Logic Corporation Decoding circuit for memories with redundancy
US7143321B1 (en) * 2000-04-29 2006-11-28 Hewlett-Packard Development Company, L.P. System and method for multi processor memory testing
JP2006302464A (ja) * 2005-04-25 2006-11-02 Nec Electronics Corp 半導体記憶装置
US7757135B2 (en) * 2006-09-11 2010-07-13 Mentor Graphics Corporation Method and apparatus for storing and distributing memory repair information
KR101321481B1 (ko) 2011-11-04 2013-10-28 에스케이하이닉스 주식회사 반도체 메모리 장치 및 이를 위한 테스트 회로
KR102072449B1 (ko) * 2012-06-01 2020-02-04 삼성전자주식회사 불휘발성 메모리 장치를 포함하는 저장 장치 및 그것의 리페어 방법
KR102120825B1 (ko) * 2013-01-03 2020-06-09 삼성전자주식회사 메모리 장치 및 이를 포함하는 메모리 시스템

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20240016013A (ko) * 2022-07-28 2024-02-06 와이아이케이 주식회사 반도체 테스트 방법 및 장치

Also Published As

Publication number Publication date
US20210295944A1 (en) 2021-09-23
CN113496757A (zh) 2021-10-12
US11621050B2 (en) 2023-04-04

Similar Documents

Publication Publication Date Title
KR20210117557A (ko) 반도체 메모리 장치 및 반도체 메모리 장치에서의 리페어 방법
KR101095222B1 (ko) 반도체 기억 장치 및 시스템
US9190175B2 (en) Self-repair device
US6145092A (en) Apparatus and method implementing repairs on a memory device
KR102399014B1 (ko) 공유 에러 검출 및 정정 메모리
CN111312321A (zh) 一种存储器装置及其故障修复方法
US20110273948A1 (en) Semiconductor device and method of refreshing the same
US8208325B2 (en) Semiconductor device, semiconductor package and memory repair method
US8913451B2 (en) Memory device and test method thereof
US7940597B2 (en) Semiconductor memory device and parallel test method of the same
KR20170137326A (ko) 반도체 메모리 장치 및 그의 구동 방법
JPH1074396A (ja) 半導体記憶装置
KR100746389B1 (ko) 결함 메모리 셀의 어드레스를 저장하기 위한 메모리유닛을 갖춘 집적 반도체 메모리
US20070133325A1 (en) Semiconductor memory device, test system including the same and repair method of semiconductor memory device
US11651831B2 (en) Redundancy analysis circuit and memory system including the same
JP4257353B2 (ja) 半導体記憶装置
CN114333969A (zh) 具有bisr逻辑电路的存储器控制器、其操作方法及存储系统
US7681096B2 (en) Semiconductor integrated circuit, BIST circuit, design program of BIST circuit, design device of BIST circuit and test method of memory
US7549098B2 (en) Redundancy programming for a memory device
JP3967704B2 (ja) 半導体記憶装置とそのテスト方法
CN103310849A (zh) 测试电路、存储器系统以及存储器系统的测试方法
US6829736B1 (en) Method of testing a memory
KR20000077319A (ko) 반도체 메모리를 테스트하기 위한 방법 및 테스트디바이스를 가진 반도체 메모리
US20080151659A1 (en) Semiconductor memory device
TW531751B (en) Method and device to process the error-address