KR102638789B1 - 테스트방법 및 이를 이용한 반도체시스템 - Google Patents

테스트방법 및 이를 이용한 반도체시스템 Download PDF

Info

Publication number
KR102638789B1
KR102638789B1 KR1020160113705A KR20160113705A KR102638789B1 KR 102638789 B1 KR102638789 B1 KR 102638789B1 KR 1020160113705 A KR1020160113705 A KR 1020160113705A KR 20160113705 A KR20160113705 A KR 20160113705A KR 102638789 B1 KR102638789 B1 KR 102638789B1
Authority
KR
South Korea
Prior art keywords
data
address
error
spare
area
Prior art date
Application number
KR1020160113705A
Other languages
English (en)
Other versions
KR20180027655A (ko
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 KR1020160113705A priority Critical patent/KR102638789B1/ko
Priority to US15/467,373 priority patent/US10460826B2/en
Publication of KR20180027655A publication Critical patent/KR20180027655A/ko
Application granted granted Critical
Publication of KR102638789B1 publication Critical patent/KR102638789B1/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/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
    • G11C29/765Masking faults in memories by using spares or by reconfiguring using address translation or modifications in solid state disks
    • 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/18Address generation devices; Devices for accessing memories, e.g. details of addressing circuits
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0614Improving the reliability of storage systems
    • G06F3/0619Improving the reliability of storage systems in relation to data integrity, e.g. data losses, bit errors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • G06F3/0679Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
    • 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
    • G11C29/42Response verification devices using error correcting codes [ECC] or parity check
    • 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
    • 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
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • G11C7/1051Data output circuits, e.g. read-out amplifiers, data output buffers, data output registers, data output level conversion circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C5/00Details of stores covered by group G11C11/00
    • G11C5/02Disposition of storage elements, e.g. in the form of a matrix array
    • G11C5/04Supports for storage elements, e.g. memory modules; Mounting or fixing of storage elements on such supports

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • For Increasing The Reliability Of Semiconductor Memories (AREA)

Abstract

반도체시스템은 테스트모드에서 순차적으로 카운팅되는 어드레스를 출력하고, 상기 어드레스에 대응하는 데이터의 레벨을 감지하여 로우에러 및 칩에러를 판별하며, 상기 어드레스의 조합이 상기 칩에러에 대응하는 경우 호스트어드레스의 조합을 변환하여 스페어어드레스를 저장하는 미디어컨트롤러 및 다수의 반도체장치를 포함하고, 상기 다수의 반도체장치는 상기 어드레스의 조합이 상기 로우에러인 경우 상기 어드레스를 리페어하여 리던던시영역으로부터 상기 데이터를 출력하고, 상기 칩에러인 경우 상기 스페어어드레스에 의해 선택되는 스페어영역으로부터 상기 데이터를 출력하는 반도체모듈을 포함한다.

Description

테스트방법 및 이를 이용한 반도체시스템{TEST METHOD AND SEMICONDUCTOR SYSTEM USING THE SAME}
본 발명은 다수의 반도체칩에 대한 에러를 감지하는 테스트방법 및 이를 이용한 반도체시스템에 관한 것이다.
최근 반도체장치의 동작속도를 증가시키기 위해 클럭 사이클(cycle)마다 4비트 또는 8비트의 데이터를 입/출력하는 DDR2, DDR3 방식 등이 사용되고 있다. 데이터의 입/출력 속도가 빨라지는 경우 데이터가 전송되는 과정 중 발생되는 에러 발생 확률도 증가 되므로, 데이터 전송의 신뢰성을 보장하기 위한 별도의 장치와 방법이 추가적으로 요구되고 있다.
데이터 전송시마다 에러 발생 여부를 확인할 수 있는 에러코드를 생성하여 데이터와 함께 전송함으로써, 데이터 전송의 신뢰성을 보장하는 방법을 사용하고 있다. 에러코드에는 발생한 에러를 검출할 수 있는 에러검출코드(Error Detection Code, EDC)와, 에러 발생시 이를 자체적으로 정정할 수 있는 에러정정코드(Error Correction Code, ECC) 등이 있다.
본 발명은 다수의 반도체장치에 대한 에러를 감지하여 하나의 반도체장치에 에러가 발생한 경우 어드레스를 리페어하고, 다수의 반도체장치에 에러가 발생한 경우 어드레스를 변환하여 데이터를 입출력하는 테스트방법 및 이를 이용한 반도체시스템을 제공한다.
이를 위해 본 발명은 테스트모드에서 순차적으로 카운팅되는 어드레스를 출력하고, 상기 어드레스에 대응하는 데이터의 레벨을 감지하여 로우에러 및 칩에러를 판별하며, 상기 어드레스의 조합이 상기 칩에러에 대응하는 경우 호스트어드레스의 조합을 변환하여 스페어어드레스를 저장하는 미디어컨트롤러 및 다수의 반도체장치를 포함하고, 상기 다수의 반도체장치는 상기 어드레스의 조합이 상기 로우에러인 경우 상기 어드레스를 리페어하여 리던던시영역으로부터 상기 데이터를 출력하고, 상기 칩에러인 경우 상기 스페어어드레스에 의해 선택되는 스페어영역으로부터 상기 데이터를 출력하는 반도체모듈을 포함하는 반도체시스템을 제공한다.
또한, 본 발명은 테스트모드에서 순차적으로 카운팅되는 어드레스를 출력하고, 상기 어드레스에 대응하는 제1 및 제2 데이터의 레벨을 감지하여 로우에러 및 칩에러를 판별하는 미디어컨트롤러, 제1 메모리영역, 제1 리던던시영역 및 제1 스페어영역을 포함하고, 상기 테스트모드에서 제1 메모리영역으로부터 상기 제1 데이터를 출력하며, 상기 로우에러인 경우 상기 제1 리던던시영역을 통해 상기 제1 데이터를 입출력하고, 상기 칩에러인 경우 상기 제1 스페어영역으로부터 상기 제1 데이터를 입출력하는 제1 반도체장치 및 제2 메모리영역, 제2 리던던시영역 및 제2 스페어영역을 포함하고, 상기 테스트모드에서 제2 메모리영역으로부터 상기 제2 데이터를 출력하며, 상기 어드레스의 조합이 상기 로우에러에 대응하는 경우 상기 제2 리던던시영역을 통해 상기 제2 데이터를 입출력하고, 상기 칩에러인 경우 상기 제2 스페어영역으로부터 상기 제2 데이터를 입출력하는 제2 반도체장치를 포함하는 반도체시스템을 제공한다.
또한, 본 발명은 테스트모드에 진입하여 순차적으로 카운팅되는 어드레스의 조합에 따라 다수의 반도체장치로부터 데이터를 리드하는 리드단계, 상기 데이터의 레벨을 감지하여 로우에러 및 칩에러를 감지하는 에러감지단계, 상기 로우에러인 경우 상기 어드레스를 리페어하여 리페어영역으로부터 상기 데이터를 입출력하는 리페어단계 및 상기 칩에러인 경우 상기 어드레스의 조합을 변환하여 스페어영역으로부터 상기 데이터를 입출력하는 어드레스변환단계를 포함하는 테스트방법을 제공한다.
본 발명에 의하면 다수의 반도체장치에 대한 에러를 감지하여 하나의 반도체장치에 에러가 발생한 경우 어드레스를 리페어하고, 다수의 반도체장치에 에러가 발생한 경우 어드레스를 변환하여 데이터를 입출력함으로써 데이터 에러를 방지할 수 있는 효과가 있다.
도 1은 본 발명의 일 실시예에 따른 반도체시스템의 구성을 도시한 블럭도이다.
도 2는 도 1 에 도시된 반도체시스템에 포함된 미디어컨트롤러의 일 실시예에 따른 내부 구성을 도시한 블럭도이다.
도 3은 도 1 에 도시된 반도체시스템에 포함된 제1 반도체장치의 일 실시예에 따른 내부 구성을 도시한 도면이다.
도 4는 본 발명의 일 실시예에 따른 테스트방법을 도시한 순서도이다.
도 5는 도 1 내지 도 4에 도시된 테스트방법 및 이를 이용한 반도체시스템이 적용된 전자시스템의 일 실시예에 따른 구성을 도시한 도면이다.
도 6은 도 1 내지 도 4에 도시된 테스트방법 및 이를 이용한 반도체시스템이 적용된 전자시스템의 다른 실시예에 따른 구성을 도시한 도면이다.
이하, 실시예를 통하여 본 발명을 더욱 상세히 설명하기로 한다. 이들 실시예는 단지 본 발명을 예시하기 위한 것이며, 본 발명의 권리 보호 범위가 이들 실시예에 의해 제한되는 것은 아니다.
도 1에 도시된 바와 같이 본 발명의 일 실시예에 따른 반도체시스템은 호스트(10), 미디어컨트롤러(20) 및 반도체모듈(30)을 포함할 수 있다. 반도체모듈(30)은 제1 반도체장치(100), 제2 반도체장치(200), 제3 반도체장치(300) 및 제4 반도체장치(400)를 포함할 수 있다.
호스트(10)는 호스트어드레스(HADD<1:N>) 및 호스트데이터(HD)를 미디어컨트롤러(20)에 인가할 수 있다. 호스트(10)는 테스트모드에서 순차적으로 카운팅되는 호스트어드레스(HADD<1:N>)를 미디어컨트롤러(20)에 인가할 수 있다. 호스트(10)는 테스트모드 이후 호스트데이터(HD)를 미디어컨트롤러(20)에 인가할 수 있다. 호스트(10)는 테스트모드 이후 호스트데이터(HD)를 수신할 수 있다. 호스트어드레스(HADD<1:N>)의 비트 수 N은 자연수로 설정될 수 있다. 호스트어드레스(HADD<1:N>)의 비트 수 N은 실시예에 따라 다양한 비트 수로 설정될 수 있다. 호스트데이터(HD)는 하나의 신호로 도시되어 있지만 실시예에 따라 다양한 비트 수로 설정될 수 있다.
미디어컨트롤러(20)는 호스트어드레스(HADD<1:N>)를 인가 받아 어드레스(ADD<1:N>)로 출력할 수 있다. 미디어컨트롤러(20)는 테스트모드에서 제1 내지 제4 데이터(DQ<1:4>)의 레벨을 감지하여 로우에러 및 칩에러를 판별할 수 있다. 미디어컨트롤러(20)는 테스트모드에서 칩에러에 대응하는 경우 호스트어드레스(HADD<1:N>)의 조합을 변환하여 스페어어드레스(SADD<1:M>)를 저장할 수 있다. 미디어컨트롤러(20)는 로우에러인 경우 인에이블되는 로우에러신호(RER)를 반도체모듈(400)로 출력할 수 있다. 미디어컨트롤러(20)는 칩에러인 경우 인에이블되는 칩에러신호(CER)를 반도체모듈(400)로 출력할 수 있다. 제1 데이터(DQ<1>)는 제1 반도체장치(100)에서 입출력되는 데이터로 설정될 수 있다. 제2 데이터(DQ<2>)는 제2 반도체장치(200)에서 입출력되는 데이터로 설정될 수 있다. 제3 데이터(DQ<3>)는 제3 반도체장치(300)에서 입출력되는 데이터로 설정될 수 있다. 제4 데이터(DQ<4>)는 제4 반도체장치(100)에서 입출력되는 데이터로 설정될 수 있다. 제1 내지 제4 데이터(DQ<1:4>)는 다수 비트의 데이터로 구현될 수 있다. 제1 내지 제4 데이터(DQ<1:4>)는 순차적으로 출력되도록 설정될 수 있다. 로우에러는 제1 내지 제4 반도체장치(100~400) 중 어느 하나의 반도체장치에 에러가 발생한 경우로 설정될 수 있다. 칩에러는 제1 내지 제4 반도체장치(100~400) 중 적어도 둘 이상의 반도체장치에 에러가 발생한 경우로 설정될 수 있다.
제1 반도체장치(100)는 제1 메모리영역(도 3의 120), 제1 리던던시영역(130) 및 제1 스페어영역(150)을 포함할 수 있다. 제1 반도체장치(100)는 테스트모드에서 어드레스(ADD<1:N>)에 응답하여 제1 메모리영역(도 3의 120)으로부터 제1 데이터(DQ<1>)를 출력할 수 있다. 제1 반도체장치(100)는 테스트모드 이후 어드레스(ADD<1:N>)에 응답하여 제1 메모리영역(도 3의 120)으로부터 제1 데이터(DQ<1>)를 입출력 할 수 있다. 제1 반도체장치(100)는 테스트모드 이후 어드레스(ADD<1:N>)의 조합이 로우에러에 대응하는 경우 제1 리던던시영역(130)으로부터 제1 데이터(DQ<1>)를 입출력 할 수 있다. 제1 반도체장치(100)는 테스트모드 이후 로우에러신호(RER)에 응답하여 제1 리던던시영역(130)으로부터 제1 데이터(DQ<1>)를 입출력할 수 있다. 제1 반도체장치(100)는 테스트모드 이후 어드레스(ADD<1:N>)의 조합이 로우에러에 대응하는 경우 어드레스(ADD<1:N>)를 리페어 하여 제1 데이터(DQ<1>)를 입출력 할 수 있다. 제1 반도체장치(100)는 테스트모드 이후 어드레스(ADD<1:N>)의 조합이 칩에러에 대응하는 경우 제1 스페어영역(150)으로부터 제1 데이터(DQ<1>)를 입출력 할 수 있다. 제1 반도체장치(100)는 테스트모드 이후 칩에러신호(CER)에 응답하여 제1 스페어영역(150)으로부터 제1 데이터(DQ<1>)를 입출력 할 수 있다. 제1 반도체장치(100)는 테스트모드 이후 어드레스(ADD<1:N>)의 조합이 칩에러에 대응하는 경우 스페어어드레스(SADD<1:M>)에 응답하여 제1 스페어영역(150)으로부터 제1 데이터(DQ<1>)를 입출력 할 수 있다.
제2 반도체장치(200)는 제2 메모리영역(미도시), 제2 리던던시영역(230) 및 제2 스페어영역(250)을 포함할 수 있다. 제2 반도체장치(200)는 테스트모드에서 어드레스(ADD<1:N>)에 응답하여 제2 메모리영역(미도시)으로부터 제2 데이터(DQ<2>)를 출력할 수 있다. 제2 반도체장치(200)는 테스트모드 이후 어드레스(ADD<1:N>)에 응답하여 제2 메모리영역(미도시)으로부터 제2 데이터(DQ<2>)를 입출력 할 수 있다. 제2 반도체장치(200)는 테스트모드 이후 어드레스(ADD<1:N>)의 조합이 로우에러에 대응하는 경우 제2 리던던시영역(230)으로부터 제2 데이터(DQ<2>)를 입출력 할 수 있다. 제2 반도체장치(200)는 테스트모드 이후 로우에러신호(RER)에 응답하여 제2 리던던시영역(230)으로부터 제2 데이터(DQ<2>)를 입출력 할 수 있다. 제2 반도체장치(200)는 테스트모드 이후 어드레스(ADD<1:N>)의 조합이 로우에러에 대응하는 경우 어드레스(ADD<1:N>)를 리페어 하여 제2 데이터(DQ<2>)를 입출력 할 수 있다. 제2 반도체장치(200)는 테스트모드 이후 어드레스(ADD<1:N>)의 조합이 칩에러에 대응하는 경우 제2 스페어영역(250)으로부터 제2 데이터(DQ<2>)를 입출력 할 수 있다. 제2 반도체장치(200)는 테스트모드 이후 칩에러신호(CER)에 응답하여 제2 스페어영역(250)으로부터 제2 데이터(DQ<2>)를 입출력 할 수 있다. 제2 반도체장치(200)는 테스트모드 이후 어드레스(ADD<1:N>)의 조합이 칩에러에 대응하는 경우 스페어어드레스(SADD<1:M>)에 응답하여 제2 스페어영역(250)으로부터 제2 데이터(DQ<2>)를 입출력 할 수 있다.
제3 반도체장치(300)는 제3 메모리영역(미도시), 제3 리던던시영역(330) 및 제3 스페어영역(350)을 포함할 수 있다. 제3 반도체장치(300)는 테스트모드에서 어드레스(ADD<1:N>)에 응답하여 제3 메모리영역(미도시)으로부터 제3 데이터(DQ<3>)를 출력할 수 있다. 제3 반도체장치(300)는 테스트모드 이후 어드레스(ADD<1:N>)에 응답하여 제3 메모리영역(미도시)으로부터 제3 데이터(DQ<3>)를 입출력 할 수 있다. 제3 반도체장치(300)는 테스트모드 이후 어드레스(ADD<1:N>)의 조합이 로우에러에 대응하는 경우 제3 리던던시영역(330)으로부터 제3 데이터(DQ<3>)를 입출력 할 수 있다. 제3 반도체장치(300)는 테스트모드 이후 로우에러신호(RER)에 응답하여 제3 리던던시영역(330)으로부터 제3 데이터(DQ<3>)를 입출력 할 수 있다. 제3 반도체장치(300)는 테스트모드 이후 어드레스(ADD<1:N>)의 조합이 로우에러에 대응하는 경우 어드레스(ADD<1:N>)를 리페어 하여 제3 데이터(DQ<3>)를 입출력 할 수 있다. 제3 반도체장치(300)는 테스트모드 이후 어드레스(ADD<1:N>)의 조합이 칩에러에 대응하는 경우 제3 스페어영역(350)으로부터 제3 데이터(DQ<3>)를 입출력 할 수 있다. 제3 반도체장치(300)는 테스트모드 이후 칩에러신호(CER)에 응답하여 제3 스페어영역(350)으로부터 제3 데이터(DQ<3>)를 입출력 할 수 있다. 제3 반도체장치(300)는 테스트모드 이후 어드레스(ADD<1:N>)의 조합이 칩에러에 대응하는 경우 스페어어드레스(SADD<1:M>)에 응답하여 제3 스페어영역(350)으로부터 제3 데이터(DQ<3>)를 입출력 할 수 있다.
제4 반도체장치(400)는 제4 메모리영역(미도시), 제4 리던던시영역(430) 및 제4 스페어영역(450)을 포함할 수 있다. 제4 반도체장치(400)는 테스트모드에서 어드레스(ADD<1:N>)에 응답하여 제4 메모리영역(미도시)으로부터 제4 데이터(DQ<4>)를 출력할 수 있다. 제4 반도체장치(400)는 테스트모드 이후 어드레스(ADD<1:N>)에 응답하여 제4 메모리영역(미도시)으로부터 제4 데이터(DQ<4>)를 입출력 할 수 있다. 제4 반도체장치(400)는 테스트모드 이후 어드레스(ADD<1:N>)의 조합이 로우에러에 대응하는 경우 제4 리던던시영역(430)으로부터 제4 데이터(DQ<4>)를 입출력 할 수 있다. 제4 반도체장치(400)는 테스트모드 이후 로우에러신호(RER)에 응답하여 제4 리던던시영역(430)으로부터 제4 데이터(DQ<4>)를 입출력 할 수 있다. 제4 반도체장치(400)는 테스트모드 이후 어드레스(ADD<1:N>)의 조합이 로우에러에 대응하는 경우 어드레스(ADD<1:N>)를 리페어 하여 제4 데이터(DQ<4>)를 입출력 할 수 있다. 제4 반도체장치(400)는 테스트모드 이후 어드레스(ADD<1:N>)의 조합이 칩에러에 대응하는 경우 제4 스페어영역(450)으로부터 제4 데이터(DQ<4>)를 입출력 할 수 있다. 제4 반도체장치(400)는 테스트모드 이후 칩에러신호(CER)에 응답하여 제4 스페어영역(450)으로부터 제4 데이터(DQ<4>)를 입출력 할 수 있다. 제4 반도체장치(400)는 테스트모드 이후 어드레스(ADD<1:N>)의 조합이 칩에러에 대응하는 경우 스페어어드레스(SADD<1:M>)에 응답하여 제4 스페어영역(450)으로부터 제4 데이터(DQ<4>)를 입출력 할 수 있다.
도 2를 참고하면 본 발명의 일 실시예에 따른 미디어컨트롤러(20)는 버퍼회로(21), 에러감지회로(22) 및 어드레스변환회로(23)를 포함할 수 있다.
버퍼회로(21)는 어드레스버퍼(211) 및 데이터버퍼(212)를 포함할 수 있다.
어드레스버퍼(211)는 리드동작 및 라이트동작 시 호스트어드레스(HADD<1:N>)를 버퍼링하여 어드레스(ADD<1:N>)로 출력할 수 있다. 어드레스버퍼(211)는 리드동작 및 라이트동작 시 어드레스(ADD<1:N>)를 제1 내지 제4 반도체장치(100~400)로 인가할 수 있다.
데이터버퍼(212)는 라이트동작 시 호스트데이터(HD)를 버퍼링하여 제1 내지 제4 데이터(DQ<1:4>)로 출력할 수 있다. 데이터버퍼(212)는 라이트동작 시 제1 내지 제4 데이터(DQ<1:4>)를 제1 내지 제4 반도체장치(100~400)로 인가할 수 있다. 데이터버퍼(212)는 리드동작 시 제1 내지 제4 데이터(DQ<1:4>)를 버퍼링하여 호스트데이터(HD)로 출력할 수 있다. 데이터버퍼(212)는 리드동작 시 호스트데이터(HD)를 호스트(10)에 인가할 수 있다.
에러감지회로(22)는 신드롬생성회로(221), 로우에러감지회로(222) 및 칩에러감지회로(223)를 포함할 수 있다.
신드롬생성회로(221)는 제1 내지 제4 데이터(DQ<1:4>)에 응답하여 신드롬(S<1:J>)을 생성할 수 있다. 신드롬생성회로(221)는 제1 내지 제4 데이터(DQ<1:4>)에 포함된 에러에 대한 정보를 포함하는 신드롬(S<1:J>)을 생성할 수 있다. 신드롬(S<1:J>)의 비트 수는 제1 내지 제4 데이터(DQ<1:4>)에 포함된 에러정보를 포함하기 위한 다양한 비트 수로 설정될 수 있다. 신드롬(S<1:J>)은 에러정정코드(Error Correction Code, ECC) 방식을 사용하여 생성될 수 있다.
로우에러감지회로(222)는 신드롬(S<1:J>)에 응답하여 로우에러인 경우 인에이블되는 로우에러신호(RER)를 생성할 수 있다. 로우에러감지회로(222)는 신드롬(S<1:J>)에 포함된 제1 내지 제4 데이터(DQ<1:4>)의 에러정보로부터 로우에러신호(RER)를 생성할 수 있다. 예를 들어 로우에러감지회로(222)는 신드롬(S<1:J>)에 포함된 제1 내지 제4 데이터(DQ<1:4>)의 에러정보 중 하나의 데이터에서만 에러가 발생하는 경우 인에이블되는 로우에러신호(RER)를 생성할 수 있다.
칩에러감지회로(223)는 신드롬(S<1:J>)에 응답하여 칩에러인 경우 인에이블되는 칩에러신호(CER)를 생성할 수 있다. 칩에러감지회로(223)는 신드롬(S<1:J>)에 포함된 제1 내지 제4 데이터(DQ<1:4>)의 에러정보로부터 칩에러신호(CER)를 생성할 수 있다. 예를 들어 칩에러감지회로(223)는 신드롬(S<1:J>)에 에 포함된 제1 내지 제4 데이터(DQ<1:4>)의 에러정보 중 두 개 이상의 데이터에 에러가 발생하는 경우 인에이블되는 칩에러신호(CER)를 생성할 수 있다.
어드레스변환회로(23)는 테스트모드에서 칩에러신호(CER)에 응답하여 호스트어드레스(HADD<1:N>)의 조합을 변경하여 스페어어드레스(SADD<1:M>)를 저장할 수 있다. 어드레스변환회로(23)는 테스트모드 이후 칩에러신호(CER)에 응답하여 호스트어드레스(HADD<1:N>)의 조합이 칩에러가 발생한 조합인 경우 스페어어드레스(SADD<1:M>)를 출력할 수 있다.
도 3을 참고하면 본 발명의 일 실시예에 따른 제1 반도체장치(100)는 메모리제어회로(110), 메모리영역(120), 리던던시영역(130), 스페어제어회로(140) 및 스페어영역(150)을 포함할 수 있다.
메모리제어회로(110)는 로우에러신호(RER)에 응답하여 어드레스(ADD<1:N>)를 디코딩하여 제1 메모리영역(120)의 제1 워드라인들(WL<1:H>)을 선택적으로 활성화할 수 있다. 메모리제어회로(110)는 로우에러신호(RER)가 디스에이블되는 경우 어드레스(ADD<1:N>)를 디코딩하여 제1 메모리영역(120)의 제1 워드라인들(WL<1:H>)을 선택적으로 활성화할 수 있다. 메모리제어회로(110)는 로우에러신호(RER)에 응답하여 어드레스(ADD<1:N>)를 리페어하여 제1 리던던시영역(130)의 제1 리던던시워드라인들(RWL<1:I>)을 선택적으로 활성화할 수 있다. 메모리제어회로(110)는 로우에러신호(RER)가 인에이블되는 경우 어드레스(ADD<1:N>)를 리페어하여 제1 리던던시영역(130)의 제1 리던던시워드라인들(RWL<1:I>)을 선택적으로 활성화할 수 있다. 어드레스(ADD<1:N>)를 리페어하는 동작은 메모리제어회로(110)가 어드레스(ADD<1:N>)에 따라 제1 메모리영역(120)의 제1 워드라인들(WL<1:H>)을 활성화하지 않고 제1 리던던시영역(130)의 제1 리던던시워드라인들(RWL<1:I>)을 선택적으로 활성화하는 동작을 의미한다.
제1 메모리영역(120)은 라이트동작시 활성화되는 제1 워드라인(WL<1:H>)에 연결되는 메모리셀(미도시)에 제1 데이터(DQ<1>)를 저장할 수 있다. 제1 메모리영역(120)은 리드동작시 활성화되는 제1 워드라인(WL<1:H>)에 연결되는 메모리셀(미도시)에 저장된 제1 데이터(DQ<1>)를 출력할 수 있다.
제1 리던던시영역(130)은 라이트동작시 활성화되는 제1 리던던시워드라인(RWL<1:I>)에 연결되는 메모리셀(미도시)에 제1 데이터(DQ<1>)를 저장할 수 있다. 제1 리던던시영역(130)은 리드동작시 활성화되는 제1 리던던시워드라인(RWL<1:I>)에 연결되는 메모리셀(미도시)에 저장된 제1 데이터(DQ<1>)를 출력할 수 있다.
스페어제어회로(140)는 칩에러신호(CER)에 응답하여 스페어어드레스(SADD<1:M>)를 디코딩하여 제1 스페어영역(150)의 제1 스페어워드라인들(SWL<1:J>)을 선택적으로 활성화할 수 있다. 스페어제어회로(140)는 칩에러신호(CER)가 인에이블되는 경우 스페어어드레스(SADD<1:M>)를 디코딩하여 제1 스페어영역(150)의 제1 스페어워드라인들(SWL<1:J>)을 선택적으로 활성화할 수 있다.
제1 스페어영역(150)은 라이트동작시 활성화되는 제1 스페어워드라인(SWL<1:J>)에 연결되는 메모리셀(미도시)에 제1 데이터(DQ<1>)를 저장할 수 있다. 제1 스페어영역(150)은 리드동작시 활성화되는 제1 스페어워드라인(SWL<1:J>)에 연결되는 메모리셀(미도시)에 저장된 제1 데이터(DQ<1>)를 출력할 수 있다.
한편, 도 1에 도시된 제2 내지 제4 반도체장치(200~400)는 도 3에 도시된 제1 반도체장치(100)와 입출력 신호만 상이할 뿐 동일한 구성으로 구현되어 동일한 동작을 수행하므로 구체적인 설명은 생략한다.
도 4를 참고하여 본 발명의 일 실시예에 따른 테스트방법에서 에러가 없는 경우를 예를 들어 설명하면 다음과 같다.
우선, 테스트모드진입단계(S1)에서 미디어컨트롤러(20)는 순차적으로 카운팅되는 호스트어드레스(HADD<1:N>)를 인가 받아 어드레스(ADD<1:N>)로 출력한다.
다음으로, 리드단계(S2)에서 제1 반도체장치(100)는 어드레스(ADD<1:N>)에 응답하여 제1 메모리영역(도 3의 120)으로부터 제1 데이터(DQ<1>)를 출력한다.
제2 반도체장치(200)는 어드레스(ADD<1:N>)에 응답하여 제2 메모리영역(미도시)으로부터 제2 데이터(DQ<2>)를 출력한다.
제3 반도체장치(300)는 어드레스(ADD<1:N>)에 응답하여 제3 메모리영역(미도시)으로부터 제3 데이터(DQ<3>)를 출력한다.
제4 반도체장치(400)는 어드레스(ADD<1:N>)에 응답하여 제4 메모리영역(미도시)으로부터 제4 데이터(DQ<2>)를 출력한다.
이때, 제1 내지 제4 데이터(DQ<1:4>)는 순차적으로 출력된다.
다음으로, 에러감지단계(S3)에서 미디어컨트롤러(20)의 신드롬생성회로(221)는 제1 내지 제4 데이터(DQ<1:4>)에 대한 신드롬(S<1:J>)을 생성한다.
미디어컨트롤러(20)의 로우에러감지회로(222)는 신드롬(S<1:J>) 중 제1 내지제4 데이터(DQ<1:4>)에 대한 에러정보가 없으므로 디스에이블되는 로우에러신호(RER)를 생성한다.
미디어컨트롤러(20)의 칩에러감지회로(223)는 제1 내지제4 데이터(DQ<1:4>)에 대한 에러정보가 없으므로 디스에이블되는 칩에러신호(CER)를 생성한다.
다음으로, 에러감지단계(S3)는 에러가 없음을 판별하여 테스트모드종료감지단계(S6)로 진입한다.
다음으로, 테스트모드종료감지단계(S6)에서 어드레스(ADD<1:N>)의 모든 비트가 카운팅되지 않는 경우 리드단계(S2)로 재진입한다. 또한, 테스트모드종료감지단계(S6)에서 어드레스(ADD<1:N>)의 모든 비트가 카운팅되는 경우 테스트모드종료단계(S7)로 진입한다.
도 4를 참고하여 본 발명의 일 실시예에 따른 테스트방법에서 로우에러가 발생하는 경우를 설명하되 제1 내지 제4 반도체장치(100~400) 중 제1 반도체장치(100)에서만 에러가 발생하는 경우를 예를 들어 설명하면 다음과 같다.
우선, 테스트모드진입단계(S1)에서 미디어컨트롤러(20)는 순차적으로 카운팅되는 호스트어드레스(HADD<1:N>)를 인가 받아 어드레스(ADD<1:N>)로 출력한다.
다음으로, 리드단계(S2)에서 제1 반도체장치(100)는 어드레스(ADD<1:N>)에 응답하여 제1 메모리영역(도 3의 120)으로부터 제1 데이터(DQ<1>)를 출력한다.
제2 반도체장치(200)는 어드레스(ADD<1:N>)에 응답하여 제2 메모리영역(미도시)으로부터 제2 데이터(DQ<2>)를 출력한다.
제3 반도체장치(300)는 어드레스(ADD<1:N>)에 응답하여 제3 메모리영역(미도시)으로부터 제3 데이터(DQ<3>)를 출력한다.
제4 반도체장치(400)는 어드레스(ADD<1:N>)에 응답하여 제4 메모리영역(미도시)으로부터 제4 데이터(DQ<2>)를 출력한다.
이때, 제1 내지 제4 데이터(DQ<1:4>)는 순차적으로 출력된다.
다음으로, 에러감지단계(S3)에서 미디어컨트롤러(20)의 신드롬생성회로(221)는 제1 내지 제4 데이터(DQ<1:4>)에 포함된 에러에 대한 정보를 포함하는 신드롬(S<1:J>)을 생성한다. 이때, 신드롬(S<1:J>)은 제1 데이터(DQ<1>)에 대한 에러정보를 포함하도록 생성된다.
미디어컨트롤러(20)의 로우에러감지회로(222)는 신드롬(S<1:J>)에 제1 데이터(DQ<1>)에 대한 에러정보만 포함되므로 인에이블되는 로우에러신호(RER)를 생성한다.
미디어컨트롤러(20)의 칩에러감지회로(223)는 신드롬(S<1:J>)에 제1 데이터(DQ<1>)에 대한 에러정보만 포함되므로 디스에이블되는 칩에러신호(CER)를 생성한다.
다음으로, 에러감지단계(S3)는 로우에러가 감지되는 경우 리페어단계(S4)로 진입한다.
다음으로, 리페어단계(S4)에서 제1 반도체장치(100)의 메모리제어회로(110)는 로우에러신호(RER)에 응답하여 어드레스(ADD<1:N>)를 리페어하여 제1 리던던시영역(130)의 제1 리던던시워드라인들(RWL<1:I>)을 선택적으로 활성화하도록 설정된다.
다음으로, 테스트모드종료감지단계(S6)에서 어드레스(ADD<1:N>)의 모든 비트가 카운팅되지 않는 경우 리드단계(S2)로 재진입한다. 또한, 테스트모드종료감지단계(S6)에서 어드레스(ADD<1:N>)의 모든 비트가 카운팅되는 경우 테스트모드종료단계(S7)로 진입할 수 있다.
다음으로, 테스트모드 이후 제1 반도체장치(100)의 메모리제어회로(110)는 로우에러가 발생한 어드레스(ADD<1:N>)의 조합이 입력되는 경우 어드레스(ADD<1:N>)를 리페어하여 제1 리던던시영역(130)의 제1 리던던시워드라인들(RWL<1:I>)을 선택적으로 활성화한다. 제1 리던던시영역(130)은 활성화되는 제1 리던던시워드라인(RWL<1:I>)에 연결되는 메모리셀(미도시)로부터 제1 데이터(DQ<1>)를 입출력한다. 이때, 제1 메모리영역(120)은 어드레스(ADD<1:N>)에 대응하는 제1 워드라인들(WL<1:H>)은 활성화되지 않아 제1 데이터(DQ<1>)를 입출력하지 않는다.
도 4를 참고하여 본 발명의 일 실시예에 따른 테스트방법에서 칩에러가 발생하는 경우를 설명하되 제1 내지 제4 반도체장치(100~400) 모두에 에러가 발생하는 경우를 예를 들어 설명하면 다음과 같다.
우선, 테스트모드진입단계(S1)에서 미디어컨트롤러(20)는 순차적으로 카운팅되는 호스트어드레스(HADD<1:N>)를 인가 받아 어드레스(ADD<1:N>)로 출력한다.
다음으로, 리드단계(S2)에서 제1 반도체장치(100)는 어드레스(ADD<1:N>)에 응답하여 제1 메모리영역(도 3의 120)으로부터 제1 데이터(DQ<1>)를 출력한다.
제2 반도체장치(200)는 어드레스(ADD<1:N>)에 응답하여 제2 메모리영역(미도시)으로부터 제2 데이터(DQ<2>)를 출력한다.
제3 반도체장치(300)는 어드레스(ADD<1:N>)에 응답하여 제3 메모리영역(미도시)으로부터 제3 데이터(DQ<3>)를 출력한다.
제4 반도체장치(400)는 어드레스(ADD<1:N>)에 응답하여 제4 메모리영역(미도시)으로부터 제4 데이터(DQ<2>)를 출력한다.
이때, 제1 내지 제4 데이터(DQ<1:4>)는 순차적으로 출력된다.
다음으로, 에러감지단계(S3)에서 미디어컨트롤러(20)의 신드롬생성회로(221)는 제1 내지 제4 데이터(DQ<1:4>)에 포함된 에러에 대한 정보를 포함하는 신드롬(S<1:J>)을 생성한다. 이때, 신드롬(S<1:J>)은 제1 내지 제4 데이터(DQ<1:4>)에 대한 에러정보를 포함하도록 생성된다.
미디어컨트롤러(20)의 로우에러감지회로(222)는 신드롬(S<1:J>)에 제1 내지 제4 데이터(DQ<1:4>)에 대한 에러정보가 포함되므로 디스에이블되는 로우에러신호(RER)를 생성한다.
미디어컨트롤러(20)의 칩에러감지회로(223)는 신드롬(S<1:J>)에 제1 내지 제4 데이터(DQ<1:4>)에 대한 에러정보가 포함되므로 인에이블되는 칩에러신호(CER)를 생성한다.
다음으로, 에러감지단계(S3)는 칩에러가 감지되는 경우 어드레스변환단계(S5)로 진입한다.
다음으로, 어드레스변환단계(S5)에서 미디어컨트롤러(20)의 어드레스변환회로(23)는 호스트어드레스(HADD<1:N>)의 조합을 변환하여 스페어어드레스(SADD<1:M>)로 저장한다.
다음으로, 테스트모드종료감지단계(S6)에서 어드레스(ADD<1:N>)의 모든 비트가 카운팅되지 않는 경우 리드단계(S2)로 재진입한다. 또한, 테스트모드종료감지계(S6)에서 어드레스(ADD<1:N>)의 모든 비트가 카운팅되는 경우 테스트종료단계(S7)로 진입한다.
다음으로, 테스트모드 이후 미디어컨트롤러(20)의 어드레스변환회로(23)는 칩에러가 발생한 어드레스(ADD<1:N>)의 조합을 갖는 호스트어드레스(HADD<1:N>)가 입력되는 경우 스페어어드레스(SADD<1:M>)를 출력한다.
제1 내지 제4 반도체장치(100~400)의 스페어제어회로들은 스페어어드레스(SADD<1:M>)를 디코딩하여 스페어영역들(150,250,350,450)의 스페어워드라인들(SWL<1:J>)을 선택적으로 활성화한다. 스페어영역들(150,250,350,450)은 활성화되는 스페어워드라인(SWL<1:J>)에 연결되는 메모리셀(미도시)로부터 제1 내지 제4 데이터(DQ<1:4>)를 입출력한다. 이때, 메모리영역들 및 리던던시영역들은 제1 내지 제4 데이터(DQ<1:4>)를 입출력하지 않는다.
이와 같은 본 발명의 일 실시예에 따른 테스트방법을 이용한 반도체시스템은 다수의 반도체장치에 대한 에러를 감지하여 하나의 반도체장치에 에러가 발생한 경우 어드레스를 리페어하고, 다수의 반도체장치에 에러가 발생한 경우 어드레스를 변환하여 데이터를 입출력함으로써 데이터 에러를 방지할 수 있다.
앞서, 도 1 내지 도 4에서 살펴본 반도체장치 및 반도체시스템은 메모리시스템, 그래픽시스템, 컴퓨팅시스템 및 모바일시스템 등을 포함하는 전자시스템에 적용될 수 있다. 예를 들어, 도 5를 참고하면 본 발명의 일 실시예에 따른 전자시스템(1000)은 데이터저장부(1001), 메모리컨트롤러(1002), 버퍼메모리(1003) 및 입출력인터페이스(1004)를 포함할 수 있다.
데이터저장부(1001)는 메모리컨트롤러(1002)로부터의 제어신호에 따라 메모리컨트롤러(1002)로부터 인가되는 데이터를 저장하고 저장된 데이터를 판독하여 메모리컨트롤러(1002)에 출력한다. 데이터저장부(1001)는 도 1에 도시된 제1 내지 제4 반도체장치(100~400)를 포함할 수 있다. 한편, 데이터저장부(1001)는 전원이 차단되어도 데이터를 잃지 않고 계속 저장할 수 있는 비휘발성 메모리를 포함할 수 있다. 비휘발성 메모리는 플래쉬 메모리(Nor Flash Memory, NAND Flash Memory), 상변환 메모리(Phase Change Random Access Memory; PRAM), 저항 메모리(Resistive Random Access Memory;RRAM), 스핀 주입자화반전 메모리(Spin Transfer Torque Random Access Memory; STTRAM), 자기메모리(Magnetic Random Access Memory; MRAM)로 구현될 수 있다.
메모리컨트롤러(1002)는 입출력인터페이스(1004)를 통해 외부기기(호스트 장치)로부터 인가되는 명령어를 디코딩하고 디코딩된 결과에 따라 데이터저장부(1001) 및 버퍼메모리(1003)에 대한 데이터 입출력을 제어한다. 메모리컨트롤러(1002)는 도 1에 도시된 미디어컨트롤러(20)를 포함할 수 있다. 도 5에서는 메모리컨트롤러(1002)가 하나의 블록으로 표시되었으나, 메모리컨트롤러(1002)는 비휘발성 메모리를 제어하기 위한 컨트롤러와 휘발성 메모리인 버퍼메모리(1003)를 제어하기 위한 컨트롤러가 독립적으로 구성될 수 있다.
버퍼메모리(1003)는 메모리컨트롤러(1002)에서 처리할 데이터 즉 데이터저장부(1001)에 입출력되는 데이터를 임시적으로 저장할 수 있다. 버퍼메모리(1003)는 제어신호에 따라 메모리컨트롤러(1002)에서 인가되는 데이터를 저장할 수 있다. 버퍼메모리(1003)는 저장된 데이터를 판독하여 메모리컨트롤러(1002)에 출력한다. 버퍼메모리(1003)는 DRAM(Dynamic Random Access Memory), Mobile DRAM, SRAM(Static Random Access Memory) 등의 휘발성 메모리를 포함할 수 있다.
입출력인터페이스(1004)는 메모리컨트롤러(1002)와 외부기기(호스트) 사이의 물리적 연결을 제공하여 메모리컨트롤러(1002)가 외부기기로부터 데이터 입출력을 위한 제어신호를 수신하고 외부기기와 데이터를 교환할 수 있도록 해준다. 입출력인터페이스(1004)는 USB, MMC, PCI-E, SAS, SATA, PATA, SCSI, ESDI, 및 IDE 등과 같은 다양한 인터페이스 프로토콜들 중 하나를 포함할 수 있다.
전자시스템(1000)은 호스트 장치의 보조 기억장치 또는 외부 저장장치로 사용될 수 있다. 전자시스템(1000)은 고상 디스크(Solid State Disk; SSD), USB 메모리(Universal Serial Bus Memory), 씨큐어 디지털 카드(Secure Digital; SD), 미니 씨큐어 디지털 카드(mini Secure Digital card; mSD), 마이크로 씨큐어 디지털 카드(micro SD), 고용량 씨큐어 디지털 카드(Secure Digital High Capacity; SDHC), 메모리 스틱 카드(Memory Stick Card), 스마트 미디어 카드(Smart Media Card; SM), 멀티 미디어 카드(Multi Media Card; MMC), 내장 멀티 미디어 카드(Embedded MMC; eMMC), 컴팩트 플래시 카드(Compact Flash; CF) 등을 포함할 수 있다.
도 6을 참고하면 본 발명의 다른 실시예에 따른 전자시스템(2000)은 호스트(2001), 메모리컨트롤러(2002) 및 데이터저장부(2003)를 포함할 수 있다.
호스트(2001)는 데이터저장부(2003)를 억세스 하기 위해 메모리컨트롤러(2002)로 리퀘스트 및 데이터를 전송할 수 있다. 메모리컨트롤러(2002)는 리퀘스트에 응답하여 데이터, 데이터 스트로브, 커맨드, 어드레스 및 클럭 등을 데이터저장부(2003)에 제공하고, 이에 응답하여 데이터저장부(2003)는 라이트 또는 리드 동작을 수행하게 할 수 있다. 호스트(2001)는 데이터저장부(2003)로 데이터를 저장시키기 위해 데이터를 메모리컨트롤러(2002)로 전송할 수 있다. 또한, 호스트는 데이터저장부(2003)로부터 출력된 데이터를 메모리컨트롤러(2002)를 통해 수신할 수 있다. 호스트(2001)는 에러정정코드(Error Correction Code, ECC) 방식을 사용하여 데이터에 포함된 에러를 정정하는 회로를 포함할 수 있다.
메모리컨트롤러(2002)는 호스트(2001)와 데이터저장부(2003) 사이의 통신을 중계할 수 있다. 메모리컨트롤러(2002)는 호스트(2001)로부터 리퀘스트와 데이터를 수신하고, 데이터저장부(2003)의 동작을 제어하기 위하여 데이터, 데이터 스트로브, 커맨드, 어드레스 및 클럭 등을 생성하여 데이터저장부(2003)로 제공할 수 있다. 또한, 메모리컨트롤러(2002)는 데이터저장부(2003)로부터 출력된 데이터를 호스트(2001)로 제공할 수 있다.
데이터저장부(2003)는 다수의 메모리들을 포함할 수 있다. 데이터저장부(2003)는 메모리컨트롤러(2002)로부터 데이터, 데이터 스트로브, 커맨드, 어드레스 및 클럭 등을 수신하여 라이트 또는 리드 동작을 수행할 수 있다. 데이터저장부(2003)에 포함된 다수의 메모리들은 에러정정코드(Error Correction Code, ECC) 방식을 사용하여 데이터에 포함된 에러를 정정하는 회로를 포함할 수 있다.
호스트(2001)에 포함된 에러를 정정하는 회로 및 데이터저장부(2003) 내부의 다수의 메모리들에 포함된 에러를 정정하는 회로는 실시예에 따라서 모두 동작하거나 선택적으로 동작하도록 구현될 수 있다. 호스트(2001) 및 메모리컨트롤러(2002)는 실시예에 따라서 동일한 칩으로 구현될 수 있다. 메모리컨트롤러(2002) 및 데이터저장부(2003)는 실시예에 따라서 동일한 칩으로 구현될 수 있다.
10. 호스트 20. 미디어컨트롤러
30. 반도체모듈 100. 제1 반도체장치
110. 제1 메모리제어회로 120. 제1 메모리영역
130. 제1 리던던시영역 140. 제1 스페어제어회로
150. 제1 스페어영역 200. 제2 반도체장치
230. 제2 리던던시영역 250. 제2 스페어영역
300. 제3 반도체장치 330. 제3 리던던시영역
350. 제3 스페어영역 400. 제4 반도체장치
430. 제4 리던던시영역 450. 제4 스페어영역

Claims (20)

  1. 테스트모드에서 순차적으로 카운팅되는 호스트어드레스를 인가 받아 어드레스로 출력하고, 상기 어드레스에 대응하는 데이터의 레벨을 감지하여 로우에러 및 칩에러를 판별하며, 상기 어드레스의 조합이 상기 칩에러에 대응하는 경우 상기 호스트어드레스의 조합을 변환하여 생성되는 스페어어드레스를 출력하는 미디어컨트롤러; 및
    복수의 반도체장치를 포함하고, 상기 복수의 반도체장치는 리던던시영역, 스페어영역을 각각 포함하며,
    상기 미디어컨트롤러로부터 상기 스페어어드레스를 수신하는 반도체모듈을 포함하고,
    상기 복수의 반도체장치는 상기 어드레스의 조합이 상기 로우에러인 경우 상기 어드레스를 리페어하여 상기 리던던시영역으로부터 상기 데이터를 출력하고, 상기 칩에러인 경우 상기 스페어어드레스에 의해 선택되는 상기 스페어영역으로부터 상기 데이터를 출력하는 반도체모듈을 포함하되, 상기 로우에러는 상기 복수의 반도체장치 중 어느 하나의 반도체장치에 에러가 발생한 경우이고, 상기 칩에러는 상기 복수의 반도체장치 중 적어도 둘 이상의 반도체장치에 에러가 발생한 경우인 반도체시스템.
  2. 삭제
  3. ◈청구항 3은(는) 설정등록료 납부시 포기되었습니다.◈
    제 1 항에 있어서, 상기 복수의 반도체장치는 상기 테스트모드에서 상기 어드레스에 의해 선택되는 메모리영역으로부터 상기 데이터를 순차적으로 출력하는 반도체시스템.
  4. ◈청구항 4은(는) 설정등록료 납부시 포기되었습니다.◈
    제 1 항에 있어서, 상기 미디어컨트롤러는
    상기 호스트어드레스를 버퍼링하여 상기 어드레스를 생성하고, 호스트데이터를 버퍼링하여 상기 데이터로 출력하는 버퍼회로;
    상기 복수의 반도체장치에서 출력되는 상기 데이터의 레벨을 감지하여 상기 로우에러인 경우 인에이블되는 로우에러신호 및 상기 칩에러인 경우 인에이블되는 칩에러신호를 생성하는 에러감지회로; 및
    상기 테스트모드에서 상기 칩에러신호에 응답하여 상기 호스트어드레스의 조합을 변환하여 상기 스페어어드레스로 저장하고, 상기 테스트모드 이후 상기 호스트어드레스의 조합이 상기 칩에러에 대응하는 경우 저장된 상기 스페어어드레스를 출력하는 어드레스변환회로를 포함하는 반도체시스템.
  5. ◈청구항 5은(는) 설정등록료 납부시 포기되었습니다.◈
    제 4 항에 있어서, 상기 버퍼회로는
    상기 호스트어드레스를 버퍼링하여 상기 어드레스로 출력하는 어드레스버퍼; 및
    상기 호스트데이터를 버퍼링하여 상기 데이터로 출력하는 데이터버퍼를 포함하는 반도체시스템.
  6. ◈청구항 6은(는) 설정등록료 납부시 포기되었습니다.◈
    제 4 항에 있어서, 상기 에러감지회로는
    상기 테스트모드에서 상기 데이터의 레벨을 감지하여 상기 데이터의 에러정보를 포함하는 신드롬을 생성하는 신드롬생성회로;
    상기 신드롬에 응답하여 상기 로우에러인 경우 인에이블되는 상기 로우에러신호를 생성하는 로우에러감지회로; 및
    상기 신드롬에 응답하여 상기 칩에러인 경우 인에이블되는 상기 칩에러신호를 생성하는 칩에러감지회로를 포함하는 반도체시스템.
  7. ◈청구항 7은(는) 설정등록료 납부시 포기되었습니다.◈
    제 1 항에 있어서, 상기 반도체모듈은
    상기 어드레스에 응답하여 제1 메모리영역으로부터 제1 데이터를 출력하고, 상기 어드레스의 조합이 상기 로우에러에 대응하는 경우 제1 리던던시영역으로부터 상기 제1 데이터를 입출력하며, 상기 어드레스의 조합이 상기 칩에러에 대응하는 경우 제1 스페어영역으로부터 상기 제1 데이터를 입출력하는 제1 반도체장치; 및
    상기 어드레스에 응답하여 제2 메모리영역으로부터 제2 데이터를 출력하고, 상기 어드레스의 조합이 상기 로우에러에 대응하는 경우 제2 리던던시영역으로부터 상기 제2 데이터를 입출력하며, 상기 어드레스의 조합이 상기 칩에러에 대응하는 경우 제2 스페어영역으로부터 상기 제2 데이터를 입출력하는 제2 반도체장치를 포함하는 반도체시스템.
  8. 테스트모드에서 순차적으로 카운팅되는 어드레스를 출력하고, 상기 어드레스에 대응하는 제1 및 제 2 데이터의 레벨을 감지하여 로우에러 및 칩에러를 판별하는 미디어컨트롤러;
    제1 메모리영역, 제1 리던던시영역 및 제1 스페어영역을 포함하고, 상기 테스트모드에서 상기 어드레스에 응답하여 상기 제1 메모리영역으로부터 상기 제1 데이터를 출력하며, 상기 로우에러인 경우 상기 제1 리던던시영역을 통해 상기 제1 데이터를 입출력하고, 상기 칩에러인 경우 상기 제1 스페어영역으로부터 상기 제1 데이터를 입출력하는 제1 반도체장치; 및
    제2 메모리영역, 제2 리던던시영역 및 제2 스페어영역을 포함하고, 상기 테스트모드에서 상기 어드레스에 응답하여 상기 제2 메모리영역으로부터 상기 제2 데이터를 출력하며, 상기 어드레스의 조합이 상기 로우에러에 대응하는 경우 상기 제2 리던던시영역을 통해 상기 제2 데이터를 입출력하고, 상기 칩에러인 경우 상기 제2 스페어영역으로부터 상기 제2 데이터를 입출력하는 제2 반도체장치를 포함하되, 상기 로우에러는 상기 제1 및 제2 반도체장치 중 어느 하나에 에러가 발생한 경우이고, 상기 칩에러는 상기 제1 및 제2 반도체장치 모두 에러가 발생한 경우인 반도체시스템.
  9. 삭제
  10. ◈청구항 10은(는) 설정등록료 납부시 포기되었습니다.◈
    제 8 항에 있어서, 상기 미디어컨트롤러는
    호스트어드레스를 버퍼링하여 상기 어드레스를 생성하고, 호스트데이터를 버퍼링하여 상기 제1 및 제2 데이터로 출력하는 버퍼회로;
    상기 제1 및 제2 반도체장치에서 출력되는 상기 제1 및 제2 데이터의 레벨을 감지하여 상기 로우에러인 경우 인에이블되는 로우에러신호 및 상기 칩에러인 경우 인에이블되는 칩에러신호를 생성하는 에러감지회로; 및
    상기 테스트모드에서 상기 칩에러신호에 응답하여 상기 호스트어드레스의 조합을 변환하여 스페어어드레스로 저장하고, 상기 테스트모드 이후 상기 호스트어드레스의 조합이 상기 칩에러에 대응하는 경우 저장된 상기 스페어어드레스를 출력하는 어드레스변환회로를 포함하는 반도체시스템.
  11. ◈청구항 11은(는) 설정등록료 납부시 포기되었습니다.◈
    제 10 항에 있어서, 상기 버퍼회로는
    상기 호스트어드레스를 버퍼링하여 상기 어드레스로 출력하는 어드레스버퍼; 및
    상기 호스트데이터를 버퍼링하여 상기 제1 및 제2 데이터로 출력하는 데이터버퍼를 포함하는 반도체시스템.
  12. ◈청구항 12은(는) 설정등록료 납부시 포기되었습니다.◈
    제 10 항에 있어서, 상기 에러감지회로는
    상기 테스트모드에서 상기 제1 및 제2 데이터의 레벨을 감지하여 상기 제1 및 제2 데이터의 에러정보를 포함하는 신드롬을 생성하는 신드롬생성회로;
    상기 신드롬에 응답하여 상기 로우에러인 경우 인에이블되는 상기 로우에러신호를 생성하는 로우에러감지회로; 및
    상기 신드롬에 응답하여 상기 칩에러인 경우 인에이블되는 상기 칩에러신호를 생성하는 칩에러감지회로를 포함하는 반도체시스템.
  13. ◈청구항 13은(는) 설정등록료 납부시 포기되었습니다.◈
    제 8 항에 있어서, 상기 제1 반도체장치는
    로우에러신호에 응답하여 상기 어드레스를 디코딩하여 상기 제1 메모리영역의 제1 워드라인을 활성하거나 상기 어드레스를 리페어하여 상기 제1 리던던시영역의 제1 리던던시워드라인을 활성화하는 제1 메모리제어회로; 및
    칩에러신호에 응답하여 스페어어드레스를 디코딩하여 상기 제1 스페어영역의 제1 스페어워드라인을 활성화하는 제1 스페어제어회로를 더 포함하는 반도체시스템.
  14. ◈청구항 14은(는) 설정등록료 납부시 포기되었습니다.◈
    제 13 항에 있어서,
    상기 제1 메모리영역은 상기 제1 워드라인이 활성화되는 경우 상기 제1 데이터를 입출력하고,
    상기 제1 리던던시영역은 상기 제1 리던던시워드라인이 활성화되는 경우 상기 제1 데이터를 입출력하며,
    상기 제1 스페어영역은 상기 제1 스페어워드라인이 활성화되는 경우 상기 제1 데이터를 입출력하는 반도체시스템.
  15. ◈청구항 15은(는) 설정등록료 납부시 포기되었습니다.◈
    제 8 항에 있어서, 상기 제2 반도체장치는
    로우에러신호에 응답하여 상기 어드레스를 디코딩하여 상기 제2 메모리영역의 제2 워드라인을 활성하거나 상기 어드레스를 리페어하여 상기 제2 리던던시영역의 제2 리던던시워드라인을 활성화하는 제2 메모리제어회로; 및
    칩에러신호에 응답하여 스페어어드레스를 디코딩하여 상기 제2 스페어영역의 제2 스페어워드라인을 활성화하는 제2 스페어제어회로를 더 포함하는 반도체시스템.
  16. ◈청구항 16은(는) 설정등록료 납부시 포기되었습니다.◈
    제 15 항에 있어서,
    상기 제2 메모리영역은 상기 제2 워드라인이 활성화되는 경우 상기 제2 데이터를 입출력하고,
    상기 제2 리던던시영역은 상기 제2 리던던시워드라인이 활성화되는 경우 상기 제2 데이터를 입출력하며,
    상기 제2 스페어영역은 상기 제2 스페어워드라인이 활성화되는 경우 상기 제2 데이터를 입출력하는 반도체시스템.
  17. 테스트모드에 진입하여 순차적으로 카운팅되는 어드레스의 조합에 따라 복수의 반도체장치로부터 데이터를 리드하는 리드단계;
    상기 데이터의 레벨을 감지하여 로우에러 및 칩에러를 감지하는 에러감지단계;
    상기 로우에러인 경우 상기 어드레스를 리페어하여 상기 복수의 반도체장치에 포함된 리던던시영역으로부터 상기 데이터를 입출력하는 리페어단계; 및
    상기 칩에러인 경우 상기 어드레스의 조합을 변환하여 상기 복수의 반도체장치에 포함된 스페어영역으로부터 상기 데이터를 입출력하는 어드레스변환단계를 포함하되, 상기 로우에러는 상기 복수의 반도체장치 중 어느 하나의 반도체장치에 에러가 발생한 경우이고, 상기 칩에러는 상기 복수의 반도체장치 중 적어도 둘 이상의 반도체장치에 에러가 발생한 경우인 테스트방법.
  18. 삭제
  19. ◈청구항 19은(는) 설정등록료 납부시 포기되었습니다.◈
    제 17 항에 있어서,
    상기 리페어단계는 상기 어드레스에 대한 리페어동작이 완료되는 경우 테스트종료감지단계로 진입하고,
    상기 어드레스변환단계는 상기 어드레스의 조합을 변환하는 동작이 완료되는 경우 상기 테스트종료감지단계에 진입하는 테스트방법.
  20. ◈청구항 20은(는) 설정등록료 납부시 포기되었습니다.◈
    제 17 항에 있어서,
    상기 에러감지단계는 에러가 없는 경우 테스트종료감지단계에 진입하고, 상기 테스트종료감지단계는 상기 테스트모드가 종료되지 않는 경우 상기 리드단계에 재 진입하는 테스트방법.
KR1020160113705A 2016-09-05 2016-09-05 테스트방법 및 이를 이용한 반도체시스템 KR102638789B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020160113705A KR102638789B1 (ko) 2016-09-05 2016-09-05 테스트방법 및 이를 이용한 반도체시스템
US15/467,373 US10460826B2 (en) 2016-09-05 2017-03-23 Test methods of semiconductor devices and semiconductor systems used therein

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020160113705A KR102638789B1 (ko) 2016-09-05 2016-09-05 테스트방법 및 이를 이용한 반도체시스템

Publications (2)

Publication Number Publication Date
KR20180027655A KR20180027655A (ko) 2018-03-15
KR102638789B1 true KR102638789B1 (ko) 2024-02-22

Family

ID=61281043

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020160113705A KR102638789B1 (ko) 2016-09-05 2016-09-05 테스트방법 및 이를 이용한 반도체시스템

Country Status (2)

Country Link
US (1) US10460826B2 (ko)
KR (1) KR102638789B1 (ko)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11538546B2 (en) * 2019-12-16 2022-12-27 Micron Technology, Inc. Data compression for global column repair
KR20220081644A (ko) 2020-12-09 2022-06-16 삼성전자주식회사 메모리 장치 및 이를 포함하는 메모리 시스템

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090132876A1 (en) 2007-11-19 2009-05-21 Ronald Ernest Freking Maintaining Error Statistics Concurrently Across Multiple Memory Ranks
US20100064186A1 (en) 2008-09-11 2010-03-11 Micron Technology, Inc. Methods, apparatus, and systems to repair memory

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5179536A (en) * 1989-01-31 1993-01-12 Fujitsu Limited Semiconductor memory device having means for replacing defective memory cells
JP2853406B2 (ja) * 1991-09-10 1999-02-03 日本電気株式会社 半導体記憶装置
JP3301047B2 (ja) * 1993-09-16 2002-07-15 株式会社日立製作所 半導体メモリシステム
US5920515A (en) * 1997-09-26 1999-07-06 Advanced Micro Devices, Inc. Register-based redundancy circuit and method for built-in self-repair in a semiconductor memory device
KR19990069337A (ko) * 1998-02-06 1999-09-06 윤종용 복합 반도체 메모리장치의자기 테스트 회로 및 이를 이용한 자기 테스트 방법
US6408408B1 (en) * 1998-11-10 2002-06-18 Samsung Electronics Co., Ltd. Recording medium having spare area for defect management and information on defect management, and method of allocating spare area and method of managing defects
US7159141B2 (en) * 2002-07-01 2007-01-02 Micron Technology, Inc. Repairable block redundancy scheme
JP2006331571A (ja) * 2005-05-27 2006-12-07 Matsushita Electric Ind Co Ltd 半導体装置
US8041990B2 (en) 2007-06-28 2011-10-18 International Business Machines Corporation System and method for error correction and detection in a memory system
KR102076067B1 (ko) 2012-11-27 2020-02-11 삼성전자주식회사 메모리 모듈 및 메모리 시스템

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090132876A1 (en) 2007-11-19 2009-05-21 Ronald Ernest Freking Maintaining Error Statistics Concurrently Across Multiple Memory Ranks
US20100064186A1 (en) 2008-09-11 2010-03-11 Micron Technology, Inc. Methods, apparatus, and systems to repair memory

Also Published As

Publication number Publication date
US20180068743A1 (en) 2018-03-08
KR20180027655A (ko) 2018-03-15
US10460826B2 (en) 2019-10-29

Similar Documents

Publication Publication Date Title
KR20170082066A (ko) 반도체시스템
KR102692010B1 (ko) 셀어레이 불량 테스트 방법 및 이를 수행하는 반도체장치
KR102638790B1 (ko) 반도체장치 및 반도체시스템
KR102647418B1 (ko) 반도체장치 및 반도체시스템
US20170286218A1 (en) Semiconductor devices, and semiconductor systems
US10579472B2 (en) Semiconductor devices
US10162703B2 (en) Methods of correcting data errors and semiconductor devices used therein
KR102410022B1 (ko) 에러스크럽방법 및 이를 이용한 반도체모듈
US11456021B2 (en) Methods, semiconductor devices, and semiconductor systems
US10261860B2 (en) Semiconductor systems
KR102638789B1 (ko) 테스트방법 및 이를 이용한 반도체시스템
US20180197597A1 (en) Semiconductor devices
US10917111B2 (en) Error correction code unit and error correction method
US20170344422A1 (en) Semiconductor devices and semiconductor systems
US10552277B2 (en) Electronic devices
KR20180055148A (ko) 반도체장치 및 반도체시스템
US10360105B2 (en) Semiconductor devices and semiconductor systems including the same
US10181863B2 (en) Semiconductor devices and semiconductor systems
KR102697484B1 (ko) 반도체장치
US20170235634A1 (en) Semiconductor devices and semiconductor systems including the same
US10014073B2 (en) Semiconductor devices

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