KR20170133545A - 반도체장치 및 반도체시스템 - Google Patents

반도체장치 및 반도체시스템 Download PDF

Info

Publication number
KR20170133545A
KR20170133545A KR1020160063857A KR20160063857A KR20170133545A KR 20170133545 A KR20170133545 A KR 20170133545A KR 1020160063857 A KR1020160063857 A KR 1020160063857A KR 20160063857 A KR20160063857 A KR 20160063857A KR 20170133545 A KR20170133545 A KR 20170133545A
Authority
KR
South Korea
Prior art keywords
signal
data
error
correction
circuit
Prior art date
Application number
KR1020160063857A
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 KR1020160063857A priority Critical patent/KR20170133545A/ko
Priority to US15/377,024 priority patent/US20170344422A1/en
Publication of KR20170133545A publication Critical patent/KR20170133545A/ko

Links

Images

Classifications

    • 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
    • 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
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1008Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
    • G06F11/1048Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices using arrangements adapted for a specific error detection or correction feature
    • GPHYSICS
    • 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
    • G06F3/064Management of blocks
    • 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/52Protection of memory contents; Detection of errors in memory contents
    • 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/785Masking faults in memories by using spares or by reconfiguring using programmable devices with redundancy programming schemes
    • G11C29/789Masking faults in memories by using spares or by reconfiguring using programmable devices with redundancy programming schemes using non-volatile cells or latches
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C8/00Arrangements for selecting an address in a digital store
    • G11C8/06Address interface arrangements, e.g. address buffers
    • 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
    • G11C2029/0411Online error correction

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Quality & Reliability (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Computer Security & Cryptography (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • For Increasing The Reliability Of Semiconductor Memories (AREA)
  • Read Only Memory (AREA)

Abstract

반도체장치는 메모리장치에 포함된 메모리어레이로부터 전송데이터신호를 통해 입력되는 제1 리드데이터의 에러를 정정한 제1 정정데이터를 정정데이터신호로 출력하고, 상기 제1 리드데이터의 에러갯수에 따라 라이트제어신호를 생성하는 에러정정회로; 및 상기 라이트제어신호에 응답하여 상기 정정데이터신호를 통해 제1 정정데이터를 입력받아 내부정정데이터신호를 통해 출력하고, 상기 제1 정정데이터를 상기 메모리어레이에 저장하기 위한 내부커맨드신호를 생성하는 검증동작제어회로를 포함한다.

Description

반도체장치 및 반도체시스템{SEMICONDUCTOR DEVICE AND SEMICONDUCTOR SYSTEM}
본 발명은 하드에러판별을 위한 반도체장치를 포함하는 반도체시스템에 관한 것이다.
최근 반도체장치의 동작속도를 증가시키기 위해 클럭 사이클(cycle)마다 4비트 또는 8비트의 데이터를 입/출력하는 DDR2, DDR3 방식 등이 사용되고 있다. 데이터의 입/출력 속도가 빨라지는 경우 데이터가 전송되는 과정 중 발생되는 오류의 발생 확률도 증가 되므로, 데이터 전송의 신뢰성을 보장하기 위한 별도의 장치와 방법이 추가적으로 요구되고 있다.
데이터 전송시마다 오류 발생 여부를 확인할 수 있는 오류코드를 생성하여 데이터와 함께 전송함으로써, 데이터 전송의 신뢰성을 보장하는 방법을 사용하고 있다. 오류코드에는 발생한 오류를 검출할 수 있는 오류검출코드(Error Detection Code, EDC)와, 오류 발생시 이를 자체적으로 정정할 수 있는 오류정정코드(Error Correction Code, ECC) 등이 있다.
본 발명은 메모리장치의 하드에러를 판별할 수 있는 반도체장치를 포함하는 반도체시스템을 제공한다.
이를 위해 본 발명은 메모리장치에 포함된 메모리어레이로부터 전송데이터신호를 통해 입력되는 제1 리드데이터의 에러를 정정한 제1 정정데이터를 정정데이터신호로 출력하고, 상기 제1 리드데이터의 에러갯수에 따라 라이트제어신호를 생성하는 에러정정회로 및 상기 라이트제어신호에 응답하여 상기 정정데이터신호를 통해 제1 정정데이터를 입력받아 내부정정데이터신호를 통해 출력하고, 상기 제1 정정데이터를 상기 메모리어레이에 저장하기 위한 내부커맨드신호를 생성하는 검증동작제어회로를 포함하는 반도체장치를 제공한다.
또한, 본 발명은 전송데이터신호를 통해 입력되는 제1 리드데이터의 에러를 정정한 제1 정정데이터를 정정데이터신호로 출력하고, 상기 제1 리드데이터의 에러갯수에 따라 라이트제어신호를 생성하며, 상기 라이트제어신호에 응답하여 상기 정정데이터신호에 포함된 상기 제1 정정데이터를 상기 전송데이터신호를 통해 출력하고, 라이트커맨드 및 리드커맨드를 포함하는 커맨드신호를 출력하는 제1 반도체장치; 및 상기 커맨드신호에 응답하여 메모리어레이로부터 상기 전송데이터신호를 통해 상기 제1 리드데이터를 출력하고, 상기 제1 정정데이터를 상기 메모리어레이에 저장하는 제2 반도체장치를 포함하는 반도체시스템을 제공한다.
본 발명에 의하면 동일한 메모리어레이로부터 제1 리드데이터 및 제2 리드데이터를 출력하고, 제1 리드데이터의 에러위치와 제2 리드데이터의 에러위치를 비교하여 메모리어레이에 발생한 하드에러를 판별할 수 있는 효과가 있다.
도 1은 본 발명의 일 실시예에 따른 반도체시스템의 구성을 도시한 블럭도이다.
도 2는 도 1에 도시된 반도체시스템에 포함된 에러정정회로의 일 실시예에 따른 블럭도이다.
도 3은 도 1에 도시된 반도체시스템에 포함된 검증동작제어회로의 일 실시예에 따른 블럭도이다.
도 4는 본 발명의 다른 실시예에 따른 반도체장치의 구성을 도시한 블럭도이다.
도 5는 도 1 내지 도 4에 도시된 반도체시스템 및 반도체장치가 적용된 전자시스템의 일 실시예에 따른 구성을 도시한 도면이다.
이하, 실시예를 통하여 본 발명을 더욱 상세히 설명하기로 한다. 이들 실시예는 단지 본 발명을 예시하기 위한 것이며, 본 발명의 권리 보호 범위가 이들 실시예에 의해 제한되는 것은 아니다.
도 1에 도시된 바와 같이, 본 발명의 일실시예에 따른 반도체시스템은 호스트장치(11), 제1 반도체장치(12) 및 제2 반도체장치(13)을 포함할 수 있다.
호스트장치(11)는 커맨드어드레스신호(CA)를 출력하고, 정정데이터신호(DATA_COR)를 입력받을 수 있다. 호스트장치(11)는 커맨드어드레스신호(CA)를 통해 커맨드 및 어드레스를 출력할 수 있다. 커맨드어드레스신호(CA)는 다수의 비트를 포함할 수 있다. 호스트장치(11)는 제2 반도체장치(13)에 대한 리드동작을 수행하는 경우 커맨드어드레스신호(CA)를 통해 리드커맨드 및 어드레스를 출력하고, 정정데이터신호(DATA_COR)를 입력받을 수 있다. 정정데이터신호(DATA_COR)는 커맨드어드레스신호(CA)를 통해 출력된 어드레스에 대응하는 제2 반도체장치에 포함된 메모리어레이(미도시)로부터 출력된 전송데이터신호(TDATA)의 에러를 정정한 데이터를 포함할 수 있다. 호스트장치(11)는 제2 반도체장치(13)에 대한 라이트동작을 수행하는 경우 커맨드어드레스신호(CA)를 통해 라이트커맨드 및 어드레스를 출력하고, 라이트데이터(미도시)를 출력할 수 있다.
제1 반도체장치(12)는 에러정정회로(121), 검증동작제어회로(122), 데이터전송회로(123) 및 커맨드어드레스생성회로(124)를 포함할 수 있다. 제1 반도체장치는 제2 반도체장치(13)의 입출력을 제어하는 컨트롤러일 수 있다.
에러정정회로(121)는 리드동작이 수행되는 경우 전송데이터신호(TDATA)를 입력받아 에러정정동작을 수행하여 정정데이터신호(DATA_COR), 라이트제어신호(WT_CNT) 및 제1 내지 제3 동작제어신호(OP_CNT<1:3>)를 생성할 수 있다. 리드동작시 전송데이터신호(TDATA)는 제2 반도체장치(13)에 포함된 메모리어레이(미도시)로부터 출력된 리드데이터 및 에러정정코드를 포함할 수 있다. 리드데이터 및 에러정정코드는 다수의 비트를 포함할 수 있다. 에러정정코드는 리드데이터의 논리레벨에 대한 정보를 포함하여 리드데이터의 에러정정을 위해 사용되는 코드일 수 있다. 에러정정회로(121)는 리드동작시 어드레스신호(ADD)에 응답하여 제2 반도체장치(13)에 포함된 메모리어레이(미도시)로부터 전송데이터신호(TDATA)를 통해 제1 리드데이터를 입력받을 수 있다. 에러정정회로(121)는 제1 리드데이터의 에러를 정정하여 생성된 제1 정정데이터를 정정데이터신호(DATA_COR)를 통해 출력할 수 있다. 에러정정회로(121)는 제1 리드데이터의 에러갯수에 따라 라이트제어신호(WT_CNT)를 생성할 수 있다. 에러정정회로(121)는 제1 리드데이터의 에러갯수가 설정갯수 이상인 경우 라이트제어신호(WT_CNT)를 생성하여 하드에러판별동작에 진입할 수 있다. 하드에러판별동작은 제1 검증동작 및 제2 검증동작을 포함하고, 제1 리드데이터의 에러위치에 대한 소프트에러(Soft Error) 또는 하드에러(Hard Error)를 판별하는 동작일 수 있다. 소프트에러는 데이터가 전송되는 라인 또는 데이터가 저장되어 있던 메모리어레이에서 온도변화나 노이즈에 의해 일시적으로 발생하는 에러일 수 있다. 하드에러는 데이터가 전송되는 라인 또는 데이터가 저장되어 있던 메모리어레이에 불량이 발생되어 계속적으로 잘못된 데이터가 출력되는 에러일 수 있다. 제1 에러정정회로(121)는 하드에러판별동작에 진입하여 제1 검증동작을 수행하는 경우 제1 리드데이터의 에러위치를 저장할 수 있다. 설정갯수는 에러정정회로(121)가 한번에 정정할 수 있는 에러갯수보다 작게 설정될 수 있다. 예를 들어, 제1 리드데이터가 N개의 비트들을 포함하고, 에러정정회로(121)가 N보다 작은 최대 M개의 비트들의 에러를 정정할 수 있는 경우 설정갯수는 M보다 작은 K개로 설정될 수 있다. N, M 및 K는 자연수 일 수 있다.
에러정정회로(121)는 제1 검증동작시 제1 리드데이터가 저장되어 있던 메모리어레이로부터 출력된 제2 리드데이터를 전송데이터신호(TDATA)를 통해 입력받을 수 있다. 제2 리드데이터는 제1 검증동작에 진입하여 제1 리드데이터의 에러를 정정한 제1 정정데이터를 제1 리드데이터가 출력된 메모리어레이에 저장하고, 저장된 제1 정정데이터를 출력한 데이터일 수 있다. 에러정정회로(121)는 제1 검증동작시 제2 리드데이터의 에러를 정정하여 생성된 제2 정정데이터를 정정데이터신호(DARA_COR)를 통해 출력할 수 있다. 에러정정회로(121)는 내부에 저장된 제1 리드데이터의 에러위치와 제2 리드데이터의 에러위치를 비교하여 제1 내지 제3 동작제어신호(OP_CNT<1:3>)를 생성할 수 있다. 에러정정회로(121)는 제1 리드데이터의 에러위치와 제2 리드데이터의 에러위치가 전부 불일치하는 경우 인에이블되는 제1 동작제어신호(OP_CNT<1>)을 생성할 수 있다. 에러정정회로(121)는 제1 리드데이터의 에러위치와 제2 리드데이터의 에러위치가 전부 일치하는 경우 인에이블되는 제2 동작제어신호(OP_CNT<2>)을 생성할 수 있다. 에러정정회로(121)는 제1 리드데이터의 에러위치와 제2 리드데이터의 에러위치가 일부만 일치하는 경우 인에이블되는 제3 동작제어신호(OP_CNT<3>)을 생성할 수 있다. 제1 동작제어신호(OP_CNT<1>)가 인에이블되는 경우는 제1 리드데이터의 에러위치가 소프트에러로 판단되어 하드에러검증동작을 중단할 수 있다. 제2 동작제어신호(OP_CNT<2>)가 인에이블되는 경우 제1 리드데이터의 에러위치가 하드에러로 판단되어 제1 리드데이터의 위치에 대응하는 어드레스(ADD)를 레지스터(도 3의 33)에 저장할 수 있다. 레지스터(도 3의 33)에 저장된 어드레스(ADD)는 리페어동작을 통해 복구될 수 있다. 제3 동작제어신호(OP_CNT<3>)가 인에이블되는 경우 제2 검증동작에 진입할 수 있다. 에러정정회로(121)는 제2 검증동작에 진입하는 경우 제2 리드데이터의 에러위치를 저장할 수 있다.
에러정정회로(121)는 제2 검증동작시 제2 리드데이터가 저장되어 있던 메모리어레이로(미도시)부터 출력된 제3 리드데이터를 전송데이터신호(TDATA)를 통해 입력받을 수 있다. 제3 리드데이터는 제2 검증동작에 진입하여 제2 리드데이터의 에러를 정정한 제2 정정데이터를 제2 데이터가 출력된 메모리어레이(미도시)에 저장하고, 저장된 제2 정정데이터를 출력한 데이터일 수 있다. 에러정정회로(121)는 제2 검증동작시 제3 리드데이터의 에러를 정정하여 생성된 제3 정정데이터를 정정데이터신호(DARA_COR)를 통해 출력할 수 있다. 에러정정회로(121)는 내부에 저장된 제2 리드데이터의 에러위치와 제3 리드데이터의 에러위치를 비교하여 제1 내지 제3 동작제어신호(OP_CNT<1:3>)를 생성할 수 있다. 에러정정회로(121)는 제2 리드데이터의 에러위치와 제3 리드데이터의 에러위치가 전부 불일치하는 경우 인에이블되는 제1 동작제어신호(OP_CNT<1>)을 생성할 수 있다. 에러정정회로(121)는 제2 리드데이터의 에러위치와 제3 리드데이터의 에러위치가 전부 일치하는 경우 인에이블되는 제2 동작제어신호(OP_CNT<2>)을 생성할 수 있다. 에러정정회로(121)는 제2 리드데이터의 에러위치와 제3 리드데이터의 에러위치가 일부만 일치하는 경우 인에이블되는 제3 동작제어신호(OP_CNT<3>)을 생성할 수 있다. 제1 동작제어신호(OP_CNT<1>)가 인에이블되는 경우는 제1 리드데이터의 에러위치가 소프트에러로 판단되어 하드에러검증동작을 중단할 수 있다. 제2 동작제어신호(OP_CNT<2>) 및 제3 동작제어신호(OP_CNT<3>)가 인에이블되는 경우 제1 리드데이터의 에러위치가 하드에러로 판단되어 제1 리드데이터의 위치에 대응하는 어드레스(ADD)를 레지스터(도 3의 33)에 저장할 수 있다. 레지스터(도 3의 33)에 저장된 어드레스는 리페어동작을 통해 복구될 수 있다.
검증동작제어회로(122)는 라이트제어신호(WT_CNT) 및 동작제어신호(OP_CNT<1:3>)에 응답하여 정정데이터신호(DATA_COR)를 입력받아 내부정정데이터신호(IDATA_COR) 및 내부커맨드신호(ICMD)를 생성할 수 있다. 검증동작제어회로(122)는 라이트제어신호(WT_CNT)가 인에이블되어 제1 검증동작에 진입하는 경우 정정데이터신호(DATA_COR)에 포함된 제1 정정데이터를 내부정정데이터신호(IDATA_COR)를 통해 출력할 수 있다. 검증동작제어회로(122)는 제1 검증동작에 진입하는 경우 내부정정데이터신호(IDATA_COR)에 포함된 제1 정정데이터를 제2 반도체장치(13)에 라이트하기 위한 내부커맨드신호(ICMD)를 생성할 수 있다. 내부커맨드신호(ICMD)는 제1 정정데이터를 제2 반도체장치(13)에 라이트하기 위한 라이트커맨드를 포함할 수 있다. 검증동작제어회로(122)는 내부정정데이터신호(IDATA_COR)에 포함된 제1 정정데이터가 제2 반도체장치(13)에 저장된 후 저장된 제1 정정데이터를 리드하기 위한 내부커맨드신호(ICMD)를 생성할 수 있다. 내부커맨드신호(ICMD)는 저장된 제1 정정데이터를 제2 반도체장치(13)로부터 리드하기 위한 리드커맨드를 포함할 수 있다. 검증동작제어회로(122)는 제1 내지 제3 동작제어신호(OP_CNT<1:3>)에 응답하여 제2 검증동작을 수행하거나 하드에러판별동작을 중단할 수 있다. 검증동작제어회로(122)는 제1 검증동작에서 제1 동작제어신호(OP_CNT<1>)가 인에이블되는 경우 제1 리드데이터가 저장되어 있던 메모리어레이(미도시)는 소프트에러로 판단하여 하드에러판별동작을 중단할 수 있다. 검증동작제어회로(122)는 제1 검증동작에서 제2 동작제어신호(OP_CNT<2>)가 인에이블되는 경우 제1 리드데이터가 저장되어 있던 메모리어레이(미도시)는 하드에러로 판단되여 제1 리드데이터가 저장되어 있던 어드레스(ADD)를 레지스터(도 3의 33)에 저장할 수 있다. 검증동작제어회로(122)는 제1 검증동작에서 제3 동작제어신호(OP_CNT<3>)가 인에이블되는 경우 제2 검증모드에 진입하여 정정데이터신호(DATA_COR)에 포함된 제2 정정데이터를 내부정정데이터신호(IDATA_COR)를 통해 출력할 수 있다. 검증동작제어회로(122)는 제2 검증동작에서 제1 동작제어신호(OP_CNT<1>)가 인에이블되는 경우 제1 리드데이터가 저장되어 있던 메모리어레이(미도시)는 소프트에러로 판단하여 하드에러판별동작을 중단할 수 있다. 검증동작제어회로(122)는 제2 검증동작에서 제2 및 제3 동작제어신호(OP_CNT<2:3>)가 인에이블되는 경우 제1 리드데이터가 저장되어 있던 메모리어레이(미도시)는 하드에러로 판단되여 제1 리드데이터가 저장되어 있던 어드레스(ADD)를 레지스터(도 3의 33)에 저장할 수 있다.
데이터전송회로(123)는 내부정정데이터신호(IDATA_COR)를 입력받아 전송데이터신호(TDATA)로 출력할 수 있다. 데이터전송회로(123)는 내부정정데이터신호(IDATA_COR)에 포함된 정정데이터를 전송데이터신호(TDATA)를 통해 출력할 수 있다. 데이터전송회로(123)는 정정데이터신호(DATA_COR)로부터 에러정정코드를 생성하는 에러정정코드생성회로(미도시)를 포함할 수 있다. 데이터전송회로(123)는 내부정정데이터신호(IDATA_COR)에 포함된 정정데이터의 에러정정을 위한 에러정정코드를 생성하고, 정정데이터 및 에러정정코드를 전송데이터신호(TDATA)를 통해 제2 반도체장치(13)로 출력할 수 있다. 데이터전송회로(123)는 제1 검증동작시 내부정정데이터신호(IDATA_COR)를 통해 입력되는 제1 정정데이터로부터 에러정정코드를 생성하고, 제1 정정데이터 및 에러정정코드를 전송데이터신호(TDATA)를 통해 출력할 수 있다. 데이터전송회로(123)는 제2 검증동작시 내부정정데이터신호(IDATA_COR)를 통해 입력되는 제2 정정데이터로부터 에러정정코드를 생성하고, 제2 정정데이터 및 에러정정코드를 전송데이터신호(TDATA)를 통해 출력할 수 있다.
커맨드어드레스생성회로(124)는 커맨드어드레스신호(CA) 및 내부커맨드신호(ICMD)를 입력받아 커맨드신호(CMD) 및 어드레스신호(ADD)를 생성할 수 있다. 커맨드어드레스생성회로(124)는 커맨드어드레스신호(CA)에 포함된 라이트커맨드 또는 리드커맨드를 커맨드신호(CMD)를 통해 출력하고, 커맨드어드레스신호(CA)에 포함된 어드레스를 어드레스신호(ADD)를 통해 출력할 수 있다. 커맨드어드레스생성회로(124)는 내부커맨드신호(ICMD)에 포함된 라이트커맨드 또는 리드커맨드를 커맨드신호(CMD)를 통해 출력할 수 있다. 커맨드어드레스생성회로(124)는 리드동작시 커맨드어드레스신호(CA)를 통해 입력받은 어드레스를 래치하고, 제1 검증동작 및 제2 검증동작시 래치된 어드레스를 어드레스신호(ADD)를 통해 출력할 수 있다.
제2 반도체장치(13)는 커맨드신호(CMD) 및 어드레스(ADD)에 응답하여 전송데이터신호(TDATA)를 통해 데이터를 입력받아 메모리어레이(미도시)에 저장하거나 메모리어레이(미도시)에 저장된 데이터를 전송데이터신호(TDATA)를 통해 출력할 수 있다. 제2 반도체장치(13)는 커맨드신호(CMD)를 통해 리드커맨드가 입력되는 경우 전송데이터신호(TDATA)를 통해 입력되는 데이터를 어드레스신호(ADD)를 통해 입력되는 어드레스에 대응하는 메모리어레이(미도시)에 저장할 수 있다. 제2 반도체장치(13)는 커맨드신호(CMD)를 통해 라이트커맨드가 입력되는 경우 어드레스신호(ADD)를 통해 입력되는 어드레스에 대응하는 메모리어레이(미도시)로부터 출력된 데이터를 전송데이터신호(TDATA)를 통해 출력할 수 있다. 제2 반도체장치(13)는 다수의 메모리어레이를 포함하는 메모리장치일 수 있다. 제2 반도체장치(13)는 플래쉬메모리(Flash memory) 및 상변환메모리(Phase Change RAM)와 같은 비휘발성 메모리장치일수 있고, 디램(DRAM) 및 에스램(SRAM)과 같은 휘발성 메모리장치일 수 있다.
도 2를 참고하면, 에러정정회로(121)는 전송데이터신호입력회로(21), 에러위치저장회로(22) 및 에러위치비교회로(23)를 포함할 수 있다.
전송데이터신호입력회로(21)는 전송데이터신호(TDATA)를 입력받아 에러정정동작을 수행하여 정정데이터신호(DATA_COR), 라이트제어신호(WT_CNT), 에러위치정보신호(E_INF) 및 제1 저장제어신호(S_CNT1<1:2>)를 생성할 수 있다. 에러위치정보신호(E_INF)는 전송데이터신호(TDATA)에 포함된 리드데이터의 에러위치에 대한 정보를 포함할 수 있다. 제1 저장제어신호(S_CNT1<1:2>)는 논리레벨조합에 따라 에러위치정보신호(E_INF)를 에러위치저장회로(22)에 저장하거나 에러위치에 저장된 에러위치에 대한 정보를 에러위치정보출력신호(E_INF_OUT)로 출력할 수 있다. 예를들어, 전송데이터신호입력회로(21)는 에러위치정보신호(E_INF)를 에러위치저장회로(22)에 저장하기 위해 제1 논리레벨조합을 갖는 제1 저장제어신호(S_CNT<1:2>)를 생성하고, 에러위치저장회로에 저장되어 있는 에러위치에 대한 정보를 에러위치정보출력신호(E_INF_OUT)로 출력하기 위해 제2 논리레벨조합을 갖는 제1 저장제어신호(S_CNT<1:2>)를 생성할 수 있다. 전송데이터신호입력회로(21)는 리드동작시 전송데이터신호(TDATA)를 통해 제1 리드데이터를 입력받을 수 있다. 전송데이터신호입력회로(21)는 리드동작시 전송데이터신호(TDATA)를 통해 입력된 제1 리드데이터의 에러를 정정하여 제1 정정데이터를 생성할 수 있다. 제1 정정데이터는 정정데이터신호(DATA_COR)를 통해 출력할 수 있다. 전송데이터신호입력회로(21)는 제1 리드데이터의 에러갯수에 따라 라이트제어신호(WT_CNT)를 생성할 수 있다. 전송데이터신호입력회로(21)는 제1 리드데이터의 에러갯수가 설정갯수 이상인 경우 하드에러판별동작에 진입하여 라이트제어신호(WT_CNT)를 생성할 수 있다. 하드에러판별동작은 제1 리드데이터의 에러위치에 대한 소프트에러(Soft Error) 또는 하드에러(Hard Error)를 판별하는 동작일 수 있다. 전송데이터신호입력회로(21)는 하드에러판별동작에 진입하여 제1 검증동작을 수행하는 경우 제1 리드데이터의 에러위치에 대한 정보를 포함하는 에러정보신호(E_INF)를 출력할 수 있다. 전송데이터신호입력회로(21)는 제1 검증동작에 진입하는 경우 제1 논리레벨조합을 갖는 제1 저장제어신호(S_CNT1<1:2>)를 생성할 수 있다. 전송데이터신호입력회로(21)는 제1 검증동작에서 전송데이터를 통해 제2 리드데이터가 입력되는 경우 제2 리드데이터의 에러를 정정하여 제2 정정데이터를 생성할 수 있다. 제2 정정데이터는 정정데이터신호를 통해 출력될 수 있다. 전송데이터신호입력회로(21)는 제2 리드데이터의 에러위치에 대한 정보를 포함하는 에러정보신호(E_INF)를 출력할 수 있다. 전송데이터신호입력회로(21)는 제2 논리레벨조합을 갖는 제1 저장제어신호(S_CNT<1:2>)를 생성할 수 있다. 전송데이터신호입력회로(21)는 제2 검증동작에서 전송데이터(TDATA)를 통해 제3 리드데이터가 입력되는 경우 제3 리드데이터의 에러를 정정하여 제3 정정데이터를 생성할 수 있다. 제3 정정데이터는 정정데이터신호(DATA_COR)를 통해 출력될 수 있다. 전송데이터신호입력회로(21)는 제3 리드데이터의 에러위치에 대한 정보를 포함하는 에러정보신호(E_INF)를 출력할 수 있다. 전송데이터신호입력회로(21)는 제2 논리레벨조합을 갖는 제1 저장제어신호(S_CNT<1:2>)를 생성할 수 있다.
에러위치저장회로(22)는 제1 저장제어신호(S_CNT1<1:2>) 및 제2 저장제어신호(S_CNT2)에 응답하여 에러위치정보신호(E_INF) 또는 내부에러위치저장신호(IE_INF)에 포함된 에러위치에 대한 정보를 저장하거나 저장된 에러위치에 대한 정보를 에러위치출력신호(E_INF_OUT)를 통해 출력할 수 있다. 에러위치저장회로(22)는 제1 저장제어신호(S_CNT1<1:2>)에 응답하여 에러위치정보신호(E_INF)를 저장하거나, 저장된 에러위치정보신호(E_INF)를 에러위치출력신호(E_INF_OUT)로 출력할 수 있다. 에러위치저장회로(22)는 제1 저장제어신호(S_CNT<1:2>)가 제1 논리레벨조합을 갖는 경우 에러위치정보신호(E_INF)에 포함된 에러위치에 대한 정보를 저장할 수 있다. 에러위치저장회로(22)는 제1 저장제어신호(S_CNT<1:2>)가 제2 논리레벨조합을 갖는 경우 저장된에러위치에 대한 정보를 에러위치출력신호(E_INF_OUT)를 통해 출력할 수 있다. 에러위치저장회로(22)는 제2 저장제어신호(S_CNT)가 인에이블되는 경우 내부에러위치정보신호(IE_INF)에 포함된 에러위치에 대한 정보를 저장할 수 있다. 에러위치저장회로(22)는 래치회로로 구현될 수 있다.
에러위치비교회로(23)는 에러위치정보신호(E_INF) 및 에러위치출력정보신호(E_INF_OUT)를 비교하여 제1 내지 제3 동작제어신호(OP_CNT<1:3>), 제2 저장제어신호(S_CNT2) 및 내부에러위치정보신호(IE_INF)를 생성할 수 있다. 에러위치비교회로(23)는 에러위치정보신호(E_INF)에 포함된 에러위치에 대한 정보와 에러위치출력정보신호(E_INF_OUT)에 포함된 에러위치에 대한 정보가 전부 불일치하는 경우 인에이블되는 제1 동작제어신호(OP_CNT<1>)를 생성할 수 있다. 에러위치비교회로(23)는 에러위치정보신호(E_INF)에 포함된 에러위치에 대한 정보와 에러위치출력정보신호(E_INF_OUT)에 포함된 에러위치에 대한 정보가 전부 일치하는 경우 인에이블되는 제2 동작제어신호(OP_CNT<1>)를 생성할 수 있다. 에러위치비교회로(23)는 에러위치정보신호(E_INF)에 포함된 에러위치에 대한 정보와 에러위치출력정보신호(E_INF_OUT)에 포함된 에러위치에 대한 정보가 일부 일치하는 경우 인에이블되는 제3 동작제어신호(OP_CNT<3>) 및 제2 저장제어신호(S_CNT2)를 생성하고, 에러위치정보신호(E_INF)에 포함된 에러위치에 대한 정보를 내부에러위치정보신호(IE_INF)를 통해 출력할 수 있다.
이상 에러정정회로(121)의 동작을 살펴보면, 리드동작시 전송데이터신호입력회로(21)는 전송데이터신호(TDATA)에 포함된 제1 리드데이터의 에러를 정정하여 제1 정정데이터를 생성할 수 있다. 제1 정정데이터는 정정데이터신호(DATA_COR)를 통해 출력될 수 있다. 전송데이터신호입력회로는 제1 리드데이터의 에러가 설정갯수 이상인 경우 제1 검증동작에 진입하여 라이트제어신호(WT_CNT)를 생성하고, 제1 리드데이터의 에러위치에 대한 정보를 포함하는 에러위치정보신호(E_INF)를 생성하며, 제1 논리레벨조합을 갖는 제1 저장제어신호(S_CNT1<1:2>)를 생성할 수 있다. 에러위치저장회로는 제1 논리레벨조합을 갖는 제1 저장제어신호(S_CNT<1:2>)에 응답하여 에러위치정보신호(E_INF)에 포함된 제1 리드데이터의 에러위치에 대한 정보를 저장할 수 있다. 전송데이터입력회로(21)는 제1 정정데이터가 제2 반도체장치(13)에 라이트된 후 리드된 제2 리드데이터를 전송데이터를 통해 입력받는 경우 제2 리드데이터의 에러를 정정하여 제2 정정데이터를 생성할 수 있다. 제2 정정데이터는 정정데이터신호(DATA_COR)를 통해 출력될 수 있다. 전송데이터입력회로(21)는 제2 리드데이터의 에러위치에 대한 정보를 포함하는 에러위치정보신호(E_INF)를 생성하고, 제2 논리레벨조합을 갖는 제1 저장제어신호(S_CNT1<1:2>)를 생성할 수 있다. 에러위치저장회로(22)는 제2 논리레벨조합을 갖는 제1 저장제어신호(S_CNT1<1:2>)에 응답하여 내부에 저장된 제1 리드데이터의 에러위치에 대한 정보를 에러위치정보출력신호(E_INF_OUT)를 통해 출력할 수 있다. 에러위치비교회로(23)는 에러위치비교회로(23)는 에러위치정보신호(E_INF)에 포함된 제2 리드데이터의 에러위치에 대한 정보와 에러위치출력정보신호(E_INF_OUT)에 포함된 제1 리드데이터의 에러위치에 대한 정보를 비교하여 제1 내지 제3 동작제어신호(OP_CNT<1:3>)를 생성할 수 있다. 에러위치비교회로(23)는 에러위치정보신호(E_INF)에 포함된 제2 리드데이터의 에러위치에 대한 정보와 에러위치출력정보신호(E_INF_OUT)에 포함된 제1 리드데이터의 에러위치에 대한 정보가 일부 일치하는 경우 인에이블되는 제3 동작제어신호(OP_CNT<3>) 및 제2 저장제어신호(S_CNT2)를 생성하고, 에러위치정보신호(E_INF)에 포함된 제2 리드데이터의 에러위치에 대한 정보를 내부에러위치정보신호(IE_INF)를 통해 출력할 수 있다. 에러위치저장회로(22)는 제2 저장제어신호(S_CNT2)에 응답하여 내부에러위치정보신호(IE_INF)에 포함된 제2 리드데이터의 에러위치에 대한 정보를 저장할 수 있다. 전송데이터입력회로(21)는 제2 검증동작시 제2 정정데이터가 제2 반도체장치(13)에 라이트된 후 리드된 제3 리드데이터를 전송데이터신호(TDATA)를 통해 입력받는 경우 제3 리드데이터의 에러를 정정하여 제3 정정데이터를 생성할 수 있다. 제3 정정데이터는 정정데이터신호(DATA_COR)를 통해 출력될 수 있다. 전송데이터입력회로(21)는 제3 리드데이터의 에러위치에 대한 정보를 포함하는 에러위치정보신호(E_INF)를 생성하고, 제2 논리레벨조합을 갖는 제1 저장제어신호(S_CNT1<1:2>)를 생성할 수 있다. 에러위치저장회로(22)는 제2 논리레벨조합을 갖는 제1 저장제어신호(S_CNT1<1:2>)에 응답하여 내부에 저장된 제2 리드데이터의 에러위치에 대한 정보를 에러위치정보출력신호(E_INF_OUT)를 통해 출력할 수 있다. 에러위치비교회로(23)는 에러위치비교회로(23)는 에러위치정보신호(E_INF)에 포함된 제3 리드데이터의 에러위치에 대한 정보와 에러위치출력정보신호(E_INF_OUT)에 포함된 제2 리드데이터의 에러위치에 대한 정보를 비교하여 제1 내지 제3 동작제어신호(OP_CNT<1:3>)를 생성할 수 있다.
도 3을 참고하면, 검증동작제어회로(122)는 내부커맨드생성회로(31) 및 레지스터(32)를 포함할 수 있다.
내부커맨드생성회로(31)는 라이트제어신호(WT_CNT), 정정데이터신호(DATA_COR) 및 제1 내지 제3 동작제어신호(OP_CNT<1:3>)에 응답하여 내부커맨드(ICMD) 및 내부정정데이터신호(IDATA_COR)를 생성할 수 있다. 내부커맨드생성회로(31)는 라이트제어신호(WT_CNT)가 인에이블되는 경우 정정데이터신호(DATA_COR)에 포함된 정정데이터를 내부정정데이터신호(IDATA_COR)를 통해 출력하고, 정정데이터를 제2 반도체장치(13)에 포함된 메모리어레이에 라이트한 후 리드하기 위한 내부커맨드(ICMD)를 생성할 수 있다. 내부커맨드생성회로(31)는 제1 동작제어신호(OP_CNT<1>)가 인에이블되는 경우 인에이블되는 어드레스저장제어신호(ADD_CNT)를 생성할 수 있다. 내부커맨드생성회로(31)는 제2 동작제어신호(OP_CNT<2>)가 인에이블되는 경우 하드에러판별동작이 종료되어 출력신호를 생성하지 않을 수 있다. 내부커맨드생성회로(31)는 제1 검증동작에서 제3 동작제어신호(OP_CNT<3>)가 인에이블되는 경우 정정데이터신호(DATA_COR)에 포함된 정정데이터를 내부정정데이터신호(IDATA_COR)를 통해 출력하고, 정정데이터를 제2 반도체장치(13)에 포함된 메모리어레이에 라이트한 후 리드하기 위한 내부커맨드(ICMD)를 생성할 수 있다. 내부커맨드생성회로(31)는 제2 검증동작에서 제3 동작제어신호(OP_CNT<3>)가 인에이블되는 경우 인에이블되는 어드레스저장제어신호(ADD_CNT)를 생성할 수 있다.
레지스터(32)는 어드레스저장제어신호(ADD_CNT)에 응답하여 어드레스신호(ADD)를 저장할 수 있다. 레지스터(32)는 어드레스신호(ADD)를 저장할 수 있는 비휘발성 메모리 또는 퓨즈어레이로 구성될 수 있다. 어드레스신호(ADD)를 통해 레지스터(32)에 저장된 어드레스는 리페어동작을 통해 복구될 수 있다.
이상 살펴본 바와 같이, 본 실시예에 따른 반도체시스템은 리드동작시 전송데이터신호(TDATA)를 통해 제1 리드데이터가 입력되는 경우 에러정정동작을 수행할 수 있다. 제1 리드데이터의 에러갯수가 설정갯수 이상인 경우 라이트제어신호(WT_CNT)를 생성하여 제1 검증동작에 진입할 수 있다. 제1 검증동작은 제1 리드데이터의 에러위치를 에러정정회로(121)에 저장하고, 제1 리드데이터의 에러를 정정한 제1 정정데이터를 제1 리드데이터가 저장되어 있던 메모리어레이에 저장한 후 제2 리드데이터로 출력할 수 있다. 제1 검증동작에서 제1 리드데이터의 에러위치와 제2 리드데이터의 에러위치를 비교하여 하드에러를 판별할 수 있다. 제1 리드데이터의 에러위치와 제2 리드데이터의 에러위치가 전부 일치하는 경우 제1 리드데이터가 저장되어 있던 메모리어레이는 하드에러로 판단될 수 있다. 제1 리드데이터의 에러위치와 제2 리드데이터의 에러위치가 전부 불일치하는 경우 제1 리드데이터가 저장되어 있던 메모리어레이는 소프트에러로 판단될 수 있다. 제1 리드데이터의 에러위치와 제2 리드데이터의 에러위치가 일부만 일치하는 경우 제2 검증동작에 진입할 수 있다. 제2 검증동작은 제2 리드데이터의 에러위치를 에러정정회로(121)에 저장하고, 제2 리드데이터의 에러를 정정한 제2 정정데이터를 제1 리드데이터가 저장되어 있던 메모리어레이에 저장한 후 제3 리드데이터로 출력할 수 있다. 제2 검증동작에서 제2 리드데이터의 에러위치와 제3 리드데이터의 에러위치를 비교하여 하드에러를 판별할 수 있다. 제2 리드데이터의 에러위치와 제3 리드데이터의 에러위치가 전부 일치하거나 일부 일치한 경우 제1 리드데이터가 저장되어 있던 메모리어레이는 하드에러로 판단될 수 있다. 제1 리드데이터의 에러위치와 제2 리드데이터의 에러위치가 불일치하는 경우 제1 리드데이터가 저장되어 있던 메모리어레이는 소프트에러로 판단될 수 있다. 이와 같이, 리드동작에서 리드데이터가 설정갯수 이상의 에러가 발생한 경우 리드데이터의 에러를 정정한 정정데이터를 라이트 및 리드하는 동작을 반복하여 동일한 위치에 에러가 발생하는지 테스트함으로써, 메모리어레이에 하드에러가 발생했는지 판단할 수 있다.
도 4에 도시된 바와 같이, 다른 실시예에 따른 반도체장치는 에러정정회로(41), 검증동작제어회로(42), 데이터전송회로(43), 커맨드어드레스생성회로(44) 및 메모리코어회로(45)를 포함할 수 있다.
에러정정회로(41)는 리드동작이 수행되는 경우 전송데이터신호(TDATA)를 입력받아 에러정정동작을 수행하여 정정데이터신호(DATA_COR), 라이트제어신호(WT_CNT) 및 제1 내지 제3 동작제어신호(OP_CNT<1:3>)를 생성할 수 있다. 리드동작시 전송데이터신호(TDATA)는 메모리코어회로(45)에 포함된 메모리어레이(미도시)로부터 출력된 리드데이터 및 에러정정코드를 포함할 수 있다. 리드데이터 및 에러정정코드는 다수의 비트를 포함할 수 있다. 에러정정코드는 리드데이터의 논리레벨에 대한 정보를 포함하여 리드데이터의 에러정정을 위해 사용되는 코드일 수 있다. 에러정정회로(41)는 리드동작시 어드레스신호(ADD)에 응답하여 메모리코어회로(45)에 포함된 메모리어레이(미도시)로부터 전송데이터신호(TDATA)를 통해 제1 리드데이터를 입력받을 수 있다. 에러정정회로(41)는 제1 리드데이터의 에러를 정정하여 생성된 제1 정정데이터를 정정데이터신호(DATA_COR)를 통해 출력할 수 있다. 에러정정회로(41)는 제1 데이터의 에러갯수에 따라 라이트제어신호(WT_CNT)를 생성할 수 있다. 에러정정회로(41)는 제1 리드데이터의 에러갯수가 설정갯수 이상인 경우 라이트제어신호(WT_CNT)를 생성하여 하드에러판별동작에 진입할 수 있다. 하드에러판별동작은 제1 검증동작 및 제2 검증동작을 포함하고, 제1 데이터의 에러위치에 대한 소프트에러(Soft Error) 또는 하드에러(Hard Error)를 판별하는 동작일 수 있다. 제1 에러정정회로(41)는 하드에러판별동작에 진입하여 제1 검증동작을 수행하는 경우 제1 리드데이터의 에러위치를 저장할 수 있다. 에러정정회로(41)는 제1 검증동작시 제1 리드데이터가 저장되어 있던 메모리어레이로부터 출력된 제2 리드데이터를 전송데이터신호(TDATA)를 통해 입력받을 수 있다. 제2 리드데이터는 제1 검증동작에 진입하여 제1 리드데이터의 에러를 정정한 제1 정정데이터를 제1 리드데이터가 출력된 메모리어레이에 저장하고, 저장된 제1 정정데이터를 출력한 데이터일 수 있다. 에러정정회로(41)는 제1 검증동작시 제2 리드데이터의 에러를 정정하여 생성된 제2 정정데이터를 정정데이터신호(DARA_COR)를 통해 출력할 수 있다. 에러정정회로(41)는 내부에 저장된 제1 리드데이터의 에러위치와 제2 리드데이터의 에러위치를 비교하여 제1 내지 제3 동작제어신호(OP_CNT<1:3>)를 생성할 수 있다. 에러정정회로(41)는 제2 검증동작시 제2 리드데이터가 저장되어 있던 메모리어레이로(미도시)부터 출력된 제3 리드데이터를 전송데이터신호(TDATA)를 통해 입력받을 수 있다. 제3 리드데이터는 제2 검증동작에 진입하여 제2 리드데이터의 에러를 정정한 제2 정정데이터를 제2 데이터가 출력된 메모리어레이(미도시)에 저장하고, 저장된 제2 정정데이터를 출력한 데이터일 수 있다. 에러정정회로(41)는 제2 검증동작시 제3 리드데이터의 에러를 정정하여 생성된 제3 정정데이터를 정정데이터신호(DARA_COR)를 통해 출력할 수 있다. 에러정정회로(41)는 내부에 저장된 제2 리드데이터의 에러위치와 제3 리드데이터의 에러위치를 비교하여 제1 내지 제3 동작제어신호(OP_CNT<1:3>)를 생성할 수 있다. 에러정정회로(41)의 구성 및 동작은 도 1에 도시된 에러정정회로(121)와 동일하므로 구체적인 설명은 생략한다.
검증동작제어회로(42)는 라이트제어신호(WT_CNT) 및 동작제어신호(OP_CNT<1:3>)에 응답하여 정정데이터신호(DATA_COR)를 입력받아 내부정정데이터신호(IDATA_COR) 및 내부커맨드신호(ICMD)를 생성할 수 있다. 검증동작제어회로(42)는 라이트제어신호(WT_CNT)가 인에이블되어 제1 검증동작에 진입하는 경우 정정데이터신호(DATA_COR)에 포함된 제1 정정데이터를 내부정정데이터신호(IDATA_COR)를 통해 출력할 수 있다. 검증동작제어회로(42)는 제1 검증동작에 진입하는 경우 제1 정정데이터를 메모리코어회로(45)에 라이트 또는 리드하기 위한 내부커맨드신호(ICMD)를 생성할 수 있다. 검증동작제어회로(42)는 제1 내지 제3 동작제어신호(OP_CNT<1:3>)에 응답하여 제2 검증동작을 수행하거나 하드에러판별동작을 중단할 수 있다. 검증동작제어회로(42)의 구성 및 동작은 도 1에 도시된 검증동작제어회로(122)와 동일하므로 구체적인 설명은 생략한다.
데이터전송회로(43)는 내부정정데이터신호(IDATA_COR)를 입력받아 전송데이터신호(TDATA)로 출력할 수 있다. 데이터전송회로(43)는 내부정정데이터신호(IDATA_COR)에 포함된 정정데이터를 전송데이터신호(TDATA)를 통해 출력할 수 있다. 데이터전송회로(43)는 정정데이터신호(DATA_COR)로부터 에러정정코드를 생성하는 에러정정코드생성회로(미도시)를 포함할 수 있다. 데이터전송회로(43)는 내부정정데이터신호(IDATA_COR)에 포함된 정정데이터의 에러정정을 위한 에러정정코드를 생성하고, 정정데이터 및 에러정정코드를 전송데이터신호(TDATA)를 통해 메모리코어회로(45)로 출력할 수 있다. 데이터전송회로(43)는 제1 검증동작시 내부정정데이터신호(IDATA_COR)를 통해 입력되는 제1 정정데이터로부터 에러정정코드를 생성하고, 제1 정정데이터 및 에러정정코드를 전송데이터신호(TDATA)를 통해 출력할 수 있다. 데이터전송회로(43)는 제2 검증동작시 내부정정데이터신호(IDATA_COR)를 통해 입력되는 제2 정정데이터로부터 에러정정코드를 생성하고, 제2 정정데이터 및 에러정정코드를 전송데이터신호(TDATA)를 통해 출력할 수 있다.
커맨드어드레스생성회로(44)는 커맨드어드레스신호(CA) 및 내부커맨드신호(ICMD)를 입력받아 커맨드신호(CMD) 및 어드레스신호(ADD)를 생성할 수 있다. 커맨드어드레스생성회로(44)는 커맨드어드레스신호(CA)에 포함된 라이트커맨드 또는 리드커맨드를 커맨드신호(CMD)를 통해 출력하고, 커맨드어드레스신호(CA)에 포함된 어드레스를 어드레스신호(ADD)를 통해 출력할 수 있다. 커맨드어드레스생성회로(44)는 내부커맨드신호(ICMD)에 포함된 라이트커맨드 또는 리드커맨드를 커맨드신호(CMD)를 통해 출력할 수 있다. 커맨드어드레스생성회로(44)는 리드동작시 커맨드어드레스신호(CA)를 통해 입력받은 어드레스를 래치하고, 제1 검증동작 및 제2 검증동작시 래치된 어드레스를 어드레스신호(ADD)를 통해 출력할 수 있다.
이상 살펴본 바와 같이 도 4에 도시된 반도체장치는 도 1에 도시된 반도체시스템과 달리 메모리코어회로(45)를 포함하는 반도체장치 내부에 에러정정회로(41) 및 검증동작제어회로(42)를 포함할 수 있다. 따라서, 도 4에 도시된 반도체장치는 내부적으로 하드에러판별동작을 수행할 수 있다.
앞서, 도 1 내지 도 4에서 살펴본 반도체장치 및 반도체시스템은 메모리시스템, 그래픽시스템, 컴퓨팅시스템 및 모바일시스템 등을 포함하는 전자시스템에 적용될 수 있다. 예를 들어, 도 5를 참고하면 본 발명의 일 실시예에 따른 전자시스템(1000)은 데이터저장부(1001), 메모리컨트롤러(1002), 버퍼메모리(1003) 및 입출력인터페이스(1004)를 포함할 수 있다.
데이터저장부(1001)는 메모리컨트롤러(1002)로부터의 제어신호에 따라 메모리컨트롤러(1002)로부터 인가되는 데이터를 저장하고 저장된 데이터를 판독하여 메모리컨트롤러(1002)에 출력한다. 데이터저장부(1001)는 도 1에 도시된 제2 반도체장치(13) 및 도 4에 도시된 반도체장치를 포함할 수 있다. 한편, 데이터저장부(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에 도시된 제1 반도체장치(12)를 포함할 수 있다. 도 5에서는 메모리컨트롤러(1002)가 하나의 블록으로 표시되었으나, 메모리컨트롤러(1002)는 비휘발성 메모리(1001)를 제어하기 위한 컨트롤러와 휘발성 메모리인 버퍼메모리(1003)를 제어하기 위한 컨트롤러가 독립적으로 구성될 수 있다.
버퍼메모리(1003)는 메모리컨트롤러(1002)에서 처리할 데이터 즉 데이터저장부(1001)에 입출력되는 데이터를 임시적으로 저장할 수 있다. 버퍼메모리(1003)는 제어신호에 따라 메모리컨트롤러(1002)에서 인가되는 데이터(DATA)를 저장할 수 있다. 버퍼메모리(1003)는 저장된 데이터를 판독하여 메모리컨트롤러(1002)에 출력한다. 버퍼메모리(1003)는 DRAM(Dynamic Random Access Memory), Moblie 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) 등을 포함할 수 있다.
11: 호스트장치 12: 제1 반도체장치
13: 제2 반도체장치 121: 에러정정회로
122: 검증동작제어회로 123: 데이터전송회로
124: 커맨드어드레스생성회로 21: 전송데이터신호입력회로
22: 에러위치저장회로 23: 에러위치비교회로
31: 내부커맨드생성회로 32: 레지스터
41: 에러정정회로 42: 검증동작제어회로
43: 데이터전송회로 44: 커맨드어드레스생성회로
45: 메모리코어회로 1001: 데이터저장부
1002: 메모리컨트롤러 1003: 버퍼메모리
1004: 입출력인터페이스

Claims (20)

  1. 메모리장치에 포함된 메모리어레이로부터 전송데이터신호를 통해 입력되는 제1 리드데이터의 에러를 정정한 제1 정정데이터를 정정데이터신호로 출력하고, 상기 제1 리드데이터의 에러갯수에 따라 라이트제어신호를 생성하는 에러정정회로; 및
    상기 라이트제어신호에 응답하여 상기 정정데이터신호를 통해 제1 정정데이터를 입력받아 내부정정데이터신호를 통해 출력하고, 상기 제1 정정데이터를 상기 메모리어레이에 저장하기 위한 내부커맨드신호를 생성하는 검증동작제어회로를 포함하는 반도체장치.
  2. 제 1 항에 있어서, 상기 에러정정회로는 상기 제1 리드데이터의 에러갯수가 설정갯수 이상인 경우 제1 검증동작에 진입하여 라이트제어신호를 생성하는 반도체장치.
  3. 제 2 항에 있어서, 상기 설정갯수는 상기 에러정정회로가 한번에 정정할 수 있는 에러갯수보다 작게 설정되는 반도체장치.
  4. 제 2 항에 있어서, 상기 에러정정회로는 상기 제1 검증동작에 진입하는 경우 상기 제1 정정데이터의 에러위치를 저장하는 반도체장치.
  5. 제 1 항에 있어서, 상기 검증동작제어회로는 상기 메모리어레이에 상기 제1 정정데이터가 저장된 후 저장된 상기 제1 정정데이터를 상기 전송데이터를 통해 제2 리드데이터로 리드하기 위한 내부커맨드신호를 생성하는 반도체장치.
  6. 제 5 항에 있어서, 상기 에러정정회로는 상기 전송데이터신호를 통해 입력되는 제2 리드데이터의 에러위치와 상기 제1 리드데이터의 에러위치를 비교하여 제1 내지 제3 동작제어신호를 생성하는 반도체장치.
  7. 제 6 항에 있어서, 상기 제1 동작제어신호는 상기 제1 리드데이터의 에러위치와 상기 제2 리드데이터의 에러위치가 모두 불일치하는 경우 인에이블되고, 상기 제2 동작제어신호는 상기 제1 리드데이터의 에러위치와 상기 제2 리드데이터의 에러위치가 모두 일치 하는 경우 인에이블되는 반도체장치.
  8. 제 6 항에 있어서, 상기 검증동작제어회로는 상기 제2 동작제어신호가 인에이블되는 경우 상기 메모리어레이의 어드레스를 저장하는 반도체장치.
  9. 제 6 항에 있어서, 상기 제3 동작제어신호는 상기 제1 에러위치와 상기 제2 에러위치 중 일부가 일치하는 경우 인에이블되는 반도체장치.
  10. 제 9 항에 있어서, 상기 검증동작제어회로는 상기 제3 동작제어신호가 인에이블되는 경우 제2 검증동작에 진입하여 상기 정정데이터신호를 통해 상기 제2 데이터의 에러를 정정한 제2 정정데이터를 입력받아 상기 내부정정데이터신호로 출력하고, 상기 제2 정정데이터를 상기 메모리어레이에 저장하기 위해 내부커맨드신호를 생성하는 반도체장치.
  11. 제 10 항에 있어서, 상기 검증동작제어회로는 상기 메모리어레이에 상기 제2 정정데이터가 저장된 후 저장된 상기 제2 정정데이터를 상기 전송데이터신호를 통해 제3 리드데이터로 리드하기 위한 내부커맨드신호를 생성하는 반도체장치.
  12. 제 11 항에 있어서, 상기 에러정정회로는 상기 전송데이터신호를 통해 입력되는 제3 리드데이터의 에러위치와 상기 제2 리드데이터의 에러위치를 비교하여 상기 제1 내지 제3 동작제어신호를 생성하는 반도체장치.
  13. 제 12 항에 있어서, 상기 제2 및 제3 동작제어신호가 인에이블되는 경우 상기 메모리어레이의 어드레스를 저장하는 반도체장치.
  14. 제 1 항에 있어서, 상기 에러정정제어회로는
    상기 전송데이터신호를 입력받아 상기 제1 리드데이터의 에러를 정정하여 정정데이터신호, 라이트제어신호, 에러위치정보신호 및 제1 저장제어신호를 생성하는 전송데이터신호입력회로;
    상기 제1 저장제어신호 및 제2 저장제어신호에 응답하여 에러위치정보신호 또는 내부에러위치정보신호를 저장하거나 에러위치정보출력신호를 출력하는 에러위치저장회로; 및
    상기 에러위치정보신호 및 상기 에러위치정보출력신호를 비교하여 제1 내지 제3 동작제어신호 및 상기 제2 저장제어신호를 생성하고, 상기 에러위치정보신호로부터 상기 내부에러정보신호를 생성하는 에러위치비교회로를 포함하는 반도체장치.
  15. 제 1 항에 있어서, 상기 검증동작제어회로는
    상기 라이트제어신호 및 제1 내지 제3 동작제어신호에 응답하여 상기 정정데이터신호를 입력받아 상기 내부커맨드신호 및 내부정정데이터신호를 생성하거나 상기 제2 및 제3 동작제어신호에 응답하여 어드레스저장제어신호를 생성하는 내부커맨드생성회로; 및
    상기 어드레스저장제어신호에 응답하여 상기 메모리어레이의 어드레스를 저장하는 레지스터를 포함하는 반도체장치.
  16. 전송데이터신호를 통해 입력되는 제1 리드데이터의 에러를 정정한 제1 정정데이터를 정정데이터신호로 출력하고, 상기 제1 리드데이터의 에러갯수에 따라 라이트제어신호를 생성하며, 상기 라이트제어신호에 응답하여 상기 정정데이터신호에 포함된 상기 제1 정정데이터를 상기 전송데이터신호를 통해 출력하고, 라이트커맨드 또는 리드커맨드를 포함하는 커맨드신호를 출력하는 제1 반도체장치; 및
    상기 커맨드신호에 응답하여 메모리어레이로부터 상기 전송데이터신호를 통해 상기 제1 리드데이터를 출력하고, 상기 제1 정정데이터를 상기 메모리어레이에 저장하는 제2 반도체장치를 포함하는 반도체시스템.
  17. 제 16 항에 있어서, 상기 제1 반도체장치는 상기 제1 리드데이터의 에러갯수가 설정갯수 이상인 경우 검증동작에 진입하여 라이트제어신호를 생성하는 반도체시스템.
  18. 제 17 항에 있어서, 상기 제1 반도체장치는 상기 검증동작에서 상기 메모리어레이로부터 상기 전송데이터신호를 통해 입력되는 제2 리드데이터의 에러위치와 상기 제1 리드데이터의 에러위치를 비교하여 제1 내지 제3 동작제어신호를 생성하는 반도체시스템.
  19. 제 18 항에 있어서, 상기 제1 동작제어신호는 상기 제1 리드데이터의 에러위치와 상기 제2 리드데이터의 에러위치가 모두 불일치하는 경우 인에이블되고, 상기 제2 동작제어신호는 상기 제1 리드데이터의 에러위치와 상기 제2 리드데이터의 에러위치가 모두 일치 하는 경우 인에이블되는 반도체시스템.
  20. 제 19 항에 있어서, 상기 제2 반도체장치는 상기 제2 동작제어신호가 인에이블되는 경우 상기 메모리어레이의 어드레스를 저장하는 반도체장치.
KR1020160063857A 2016-05-25 2016-05-25 반도체장치 및 반도체시스템 KR20170133545A (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020160063857A KR20170133545A (ko) 2016-05-25 2016-05-25 반도체장치 및 반도체시스템
US15/377,024 US20170344422A1 (en) 2016-05-25 2016-12-13 Semiconductor devices and semiconductor systems

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020160063857A KR20170133545A (ko) 2016-05-25 2016-05-25 반도체장치 및 반도체시스템

Publications (1)

Publication Number Publication Date
KR20170133545A true KR20170133545A (ko) 2017-12-06

Family

ID=60417906

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020160063857A KR20170133545A (ko) 2016-05-25 2016-05-25 반도체장치 및 반도체시스템

Country Status (2)

Country Link
US (1) US20170344422A1 (ko)
KR (1) KR20170133545A (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11615011B2 (en) 2021-02-18 2023-03-28 Ajou University Industry-Academic Cooperation Foundation Apparatus and method for optimizing reliability of satellite system considering both hard error stability and soft error stability

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110839021B (zh) * 2019-10-29 2021-02-19 深圳市高德信通信股份有限公司 一种可防止信息误传的通讯传输系统
US20240028247A1 (en) * 2022-07-19 2024-01-25 Micron Technology, Inc. Efficient error signaling by memory

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2001022232A1 (fr) * 1999-09-17 2001-03-29 Hitachi, Ltd. Memoire dans laquelle le nombre de corrections d'erreurs est enregistre
JP5453948B2 (ja) * 2009-06-18 2014-03-26 富士通セミコンダクター株式会社 データ受信処理方法及びデータ受信処理装置
KR101712619B1 (ko) * 2011-01-19 2017-03-06 삼성전자주식회사 에러 정정 코드의 인코딩 및 디코딩 방법
JP2014140111A (ja) * 2013-01-21 2014-07-31 Sony Corp コントローラ、情報処理システム、コントローラの制御方法およびプログラム
GB2519140B (en) * 2013-10-11 2021-03-10 Advanced Risc Mach Ltd Cumulative error detection in data transmission
US9477550B2 (en) * 2013-10-24 2016-10-25 Globalfoundries Inc. ECC bypass using low latency CE correction with retry select signal
US9495232B2 (en) * 2014-03-28 2016-11-15 Intel IP Corporation Error correcting (ECC) memory compatibility

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11615011B2 (en) 2021-02-18 2023-03-28 Ajou University Industry-Academic Cooperation Foundation Apparatus and method for optimizing reliability of satellite system considering both hard error stability and soft error stability

Also Published As

Publication number Publication date
US20170344422A1 (en) 2017-11-30

Similar Documents

Publication Publication Date Title
KR20170082066A (ko) 반도체시스템
US10572341B2 (en) Semiconductor devices
US10379947B2 (en) Semiconductor device
US10162703B2 (en) Methods of correcting data errors and semiconductor devices used therein
US20170286218A1 (en) Semiconductor devices, and semiconductor systems
US10579472B2 (en) Semiconductor devices
KR20180038339A (ko) 셀어레이 불량 테스트 방법 및 이를 수행하는 반도체장치
KR20190060258A (ko) 에러스크럽방법 및 이를 이용한 반도체모듈
KR20170133545A (ko) 반도체장치 및 반도체시스템
US10261860B2 (en) Semiconductor systems
US10552277B2 (en) Electronic devices
US10460826B2 (en) Test methods of semiconductor devices and semiconductor systems used therein
US10379786B2 (en) Semiconductor devices
US11429477B2 (en) Semiconductor devices
US10360105B2 (en) Semiconductor devices and semiconductor systems including the same
US10290333B2 (en) Semiconductor device
US10288677B2 (en) Semiconductor device method relating to latch circuit testing
US11599413B2 (en) Electronic system including error calculation circuit for performing error correction operation
US11636910B2 (en) Apparatus configured to perform a test operation
US20170235634A1 (en) Semiconductor devices and semiconductor systems including the same
KR20180086817A (ko) 반도체장치
US10014073B2 (en) Semiconductor devices
US10024915B2 (en) Semiconductor devices
KR20190067669A (ko) 전자장치
KR20170140931A (ko) 반도체장치 및 반도체시스템