KR20230072336A - 반도체장치 - Google Patents

반도체장치 Download PDF

Info

Publication number
KR20230072336A
KR20230072336A KR1020210158952A KR20210158952A KR20230072336A KR 20230072336 A KR20230072336 A KR 20230072336A KR 1020210158952 A KR1020210158952 A KR 1020210158952A KR 20210158952 A KR20210158952 A KR 20210158952A KR 20230072336 A KR20230072336 A KR 20230072336A
Authority
KR
South Korea
Prior art keywords
ecs
signal
command
generating
input
Prior art date
Application number
KR1020210158952A
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 KR1020210158952A priority Critical patent/KR20230072336A/ko
Priority to US17/695,150 priority patent/US20230153194A1/en
Priority to CN202210540329.1A priority patent/CN116137177A/zh
Publication of KR20230072336A publication Critical patent/KR20230072336A/ko

Links

Images

Classifications

    • 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
    • G06F11/106Correcting systematically all correctable errors, i.e. scrubbing
    • 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
    • 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
    • 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/1044Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices with specific ECC/EDC distribution
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1008Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
    • G06F11/1048Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices using arrangements adapted for a specific error detection or correction feature
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/52Protection of memory contents; Detection of errors in memory contents
    • 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/0409Online test
    • 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

Abstract

반도체장치는 리프레쉬커맨드를 토대로 발생하는 ECS 커맨드가 입력될 때 에러체크동작을 수행하기 위한 에러체크수행신호를 생성하는 에러체크수행신호생성회로 및 상기 ECS 커맨드 및 상기 에러체크수행신호를 토대로 상기 에러체크동작을 수행하기 위한 ECS 액티브커맨드와 ECS 리드커맨드를 생성하되, 상기 에러체크동작을 수행하기 위해 상기 ECS 리드커맨드를 연속적으로 생성하는 ECS 제어회로를 포함한다.

Description

반도체장치{SEMICONDUCTOR DEVICE}
본 발명은 메모리셀에 저장된 코드워드의 에러를 정정할 수 있는 반도체장치에 관한 것이다.
최근 반도체장치의 동작속도를 증가시키기 위해 클럭 사이클(cycle)마다 다수 비트의 데이터를 입/출력하는 DDR2, DDR3, DDR4, DDR5 방식 등이 사용되고 있다. 데이터의 입/출력 속도가 빨라지는 경우 데이터가 전송되는 과정 중 발생되는 에러의 발생 확률도 증가 되므로, 데이터 전송의 신뢰성을 보장하기 위한 별도의 장치와 방법이 추가적으로 요구되고 있다.
데이터 전송 시마다 에러 발생 여부를 확인할 수 있는 에러체크코드를 생성하여 데이터와 함께 전송함으로써, 데이터 전송의 신뢰성을 보장하는 방법을 사용하고 있다. 에러체크코드에는 발생한 에러를 검출할 수 있는 에러검출코드(Error Detection Code, EDC)와, 에러 발생시 이를 자체적으로 정정할 수 있는 에러정정코드(Error Correction Code, ECC) 등이 있다.
본 발명은 메모리셀들에 저장된 코드워드의 에러를 정정하고, 에러가 정정된 코드워드를 메모리셀들에 저장하는 동작을 수행하는 반도체장치를 제공한다.
이를 위해 본 발명은 리프레쉬커맨드를 토대로 발생하는 ECS 커맨드가 입력될 때 에러체크동작을 수행하기 위한 에러체크수행신호를 생성하는 에러체크수행신호생성회로 및 상기 ECS 커맨드 및 상기 에러체크수행신호를 토대로 상기 에러체크동작을 수행하기 위한 ECS 액티브커맨드와 ECS 리드커맨드를 생성하되, 상기 에러체크동작을 수행하기 위해 상기 ECS 리드커맨드를 연속적으로 생성하는 ECS 제어회로를 포함하는 반도체장치를 제공한다.
또한, 본 발명은 ECS 커맨드 및 에러체크수행신호를 토대로 에러체크동작을 수행하기 위한 ECS 액티브커맨드를 생성한 이후 ECS 리드커맨드를 연속적으로 생성하는 ECS 제어회로 및 상기 에러체크동작 시 상기 ECS 액티브커맨드 및 상기 ECS 리드커맨드가 입력될 때마다 순차적으로 카운팅되는 로우어드레스 및 컬럼어드레스를 선택로우어드레스 및 선택컬럼어드레스로 출력하되, 에러플래그신호가 입력될 때 카운팅된 상기 로우어드레스 및 컬럼어드레스를 저장하는 선택어드레스생성회로를 제공한다.
본 발명에 의하면 메모리셀들에 저장된 코드워드의 에러를 감지하는 에러체크동작을 수행한 이후 코드워드의 에러를 정정하여 재저장하는 에러 체크 및 스크럽(error check and scrub, 이하 'ECS') 동작을 수행함으로써, 메모리셀들에 저장된 코드워드의 에러를 정정하고, 에러가 정정된 코드워드를 다시 메모리셀들에 저장할 수 있는 ECS 동작을 수행할 수 있는 효과가 있다.
또한, 본 발명에 의하면 메모리셀들에 저장된 코드워드의 에러를 감지하는 에러체크동작을 수행한 이후 에러가 발생한 코드워드가 저장된 영역만을 ECS 동작을 수행함으로써 전력소모를 절감할 수 있는 효과도 있다.
도 1은 본 발명의 일 실시 예에 따른 반도체장치의 구성을 도시한 블록도이다.
도 2는 도 1에 도시된 반도체장치에 포함된 ECS 커맨드생성회로의 일 예에 따른 구성을 도시한 블럭도이다.
도 3은 도 1에 도시된 반도체장치에 포함된 체크플래그신호생성회로의 일 예에 따른 구성을 도시한 회로도이다.
도 4는 도 1에 도시된 반도체장치에 포함된 ECS 제어회로의 일 예에 따른 구성을 도시한 블럭도이다.
도 5는 도 4에 도시된 ECS 제어회로에 포함된 클럭코드생성회로의 일 예에 따른 구성을 도시한 블럭도이다.
도 6은 도 5에 도시된 클럭코드생성회로에 포함된 ECS 모드신호생성회로의 일 예에 따른 구성을 도시한 회로도이다.
도 7은 도 5에 도시된 클럭코드생성회로에 포함된 주기신호생성회로의 일 예에 따른 구성을 도시한 회로도이다.
도 8은 도 1에 도시된 반도체장치에 포함된 선택어드레스생성회로의 일 예에 따른 구성을 도시한 블럭도이다.
도 9는 도 1에 도시된 반도체장치에 포함된 메모리뱅크 및 센싱증폭회로의 구성을 도시한 블럭도이다.
도 10 내지 도 13은 본 발명의 일 실시예에 따른 반도체장치의 에러체크동작 및 ECS 동작을 설명하기 위한 타이밍도이다.
도 14는 도 1 내지 도 13에 도시된 반도체장치가 적용된 전자시스템의 일 실시예에 따른 구성을 도시한 도면이다.
"기 설정된"이라는 용어는 프로세스나 알고리즘에서 매개변수를 사용할 때 매개변수의 수치가 미리 결정되어 있음을 의미한다. 매개변수의 수치는 실시예에 따라서 프로세스나 알고리즘이 시작할 때 설정되거나 프로세스나 알고리즘이 수행되는 구간 동안 설정될 수 있다.
다양한 구성요소들을 구별하는데 사용되는 "제1" 및 "제2" 등의 용어는 구성요소들에 의해 한정되지 않는다. 예를 들어, 제1 구성요소는 제2 구성요소로 명명될 수 있고, 반대로 제2 구성요소는 제1 구성요소로 명명될 수 있다.
하나의 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 할 때 직접적으로 연결되거나 중간에 다른 구성요소를 매개로 연결될 수도 있다고 이해되어야 한다. 반면 "직접 연결되어" 및 "직접 접속되어"라는 기재는 하나의 구성요소가 다른 구성요소에 또 다른 구성요소를 사이에 두지 않고 직접 연결된다고 이해되어야 한다.
"로직하이레벨" 및 "로직로우레벨"은 신호들의 로직레벨들을 설명하기 위해 사용된다. "로직하이레벨"을 갖는 신호는 "로직로우레벨"을 갖는 신호와 구별된다. 예를 들어, 제1 전압을 갖는 신호가 "로직하이레벨"에 대응할 때 제2 전압을 갖는 신호는 "로직로우레벨"에 대응할 수 있다. 일 실시예에 따라 "로직하이레벨"은 "로직로우레벨"보다 큰 전압으로 설정될 수 있다. 한편, 신호들의 로직레벨들은 실시예에 따라서 다른 로직레벨 또는 반대의 로직레벨로 설정될 수 있다. 예를 들어, 로직하이레벨을 갖는 신호는 실시예에 따라서 로직로우레벨을 갖도록 설정될 수 있고, 로직로우레벨을 갖는 신호는 실시예에 따라서 로직하이레벨을 갖도록 설정될 수 있다.
이하, 실시예를 통하여 본 발명을 더욱 상세히 설명하기로 한다. 이들 실시예는 단지 본 발명을 예시하기 위한 것이며, 본 발명의 권리 보호 범위가 이들 실시예에 의해 제한되는 것은 아니다.
도 1은 반도체장치(10)의 일 실시 예에 따른 구성을 도시한 블럭도이다. 반도체장치(10)는 커맨드디코더(101), ECS 커맨드생성회로(103), 에러체크수행신호생성회로(105), 체크플래그신호생성회로(107), ECS 제어회로(109), 선택어드레스생성회로(111), 메모리뱅크(131), 센싱증폭회로(133), 로우제어회로(151), 컬럼제어회로(153), 입출력제어회로(155), 에러정정회로(170) 및 데이터버퍼(190)를 포함할 수 있다.
커맨드디코더(101)는 커맨드(CMD)를 디코딩하여 리프레쉬커맨드(REF)를 생성할 수 있다. 리프레쉬커맨드(REF)는 리프레쉬동작을 수행하기 위해 발생될 수 있다. 커맨드(CMD)는 리프레쉬커맨드(REF)를 발생시키기 위한 로직레벨조합을 갖는 다수의 비트들을 포함할 수 있다.
ECS 커맨드생성회로(103)는 리프레쉬커맨드(REF)를 토대로 ECS 커맨드(AECS)를 생성할 수 있다. ECS 커맨드생성회로(103)는 리프레쉬커맨드(REF)가 기 설정된 횟수만큼 발생될 때마다 ECS 커맨드(AECS)를 발생시킬 수 있다. 예를 들어, ECS 커맨드생성회로(103)는 리프레쉬커맨드(REF)가 K번 발생될 때마다 ECS 커맨드(AECS)를 발생시킬 수 있다. K는 자연수로 설정될 수 있다.
에러체크수행신호생성회로(105)는 ECS 커맨드(AECS) 및 체크플래그신호(CHK_FLAG)를 토대로 에러체크수행신호(ECS_EXE)를 생성할 수 있다. 에러체크수행신호생성회로(105)는 초기화동작 시 디스에이블되는 에러체크수행신호(ECS_EXE)를 생성할 수 있다. 에러체크수행신호생성회로(105)는 ECS 커맨드(AECS)가 입력되고 체크플래그신호(CHK_FLAG)가 입력될 때 인에이블되는 에러체크수행신호(ECS_EXE)를 생성할 수 있다. 초기화동작은 반도체장치(10)가 동작을 시작하는 파워업구간 및 리셋동작으로 설정될 수 있다.
체크플래그신호생성회로(107)는 에러플래그신호(EFLAG) 및 초기화체크신호(INIT_CHK)를 토대로 체크플래그신호(CHK_FLAG)를 생성할 수 있다. 체크플래그신호생성회로(107)는 에러플래그신호(EFLAG)가 입력될 때 인에이블되는 체크플래그신호(CHK_FLAG)를 생성할 수 있다. 체크플래그신호생성회로(107)는 초기화체크신호(INIT_CHK)가 입력될 때 디스에이블되는 체크플래그신호(CHK_FLAG)를 생성할 수 있다.
ECS 제어회로(109)는 ECS 커맨드(AECS) 및 에러체크수행신호(ECS_EXE)를 토대로 초기화체크신호(INIT_CHK), ECS 액티브커맨드(EACT), ECS 리드커맨드(ERD), ECS 라이트커맨드(EWT), ECS 프리차지커맨드(EPCG) 및 종료신호(END)를 생성할 수 있다. 초기화체크신호(INIT_CHK)는 체크플래그신호(CHK_FLAG)를 디스에이블시키기 위해 발생될 수 있다. ECS 액티브커맨드(EACT)는 ECS 액티브동작을 위해 발생될 수 있다. ECS 리드커맨드(ERD)는 에러체크동작 및 ECS 리드동작을 위해 발생될 수 있다. ECS 라이트커맨드(EWT)는 ECS 라이트동작을 위해 발생될 수 있다. ECS 프리차지커맨드(EPCG)는 에러체크동작 및 ECS 동작이 수행된 메모리셀들의 프리차지동작을 위해 발생될 수 있다. 종료신호(END)는 에러체크동작 및 ECS 동작을 종료하기 위해 발생될 수 있다.
ECS 제어회로(109)는 체크플래그신호(CHK_FLAG)를 디스에이블시키기 위해 초기화체크신호(INIT_CHK)를 발생시킬 수 있다. ECS 제어회로(109)는 ECS 액티브커맨드(EACT), ECS 리드커맨드(ERD), ECS 라이트커맨드(EWT), ECS 프리차지커맨드(EPCG)가 기 설정된 횟수로 반복 생성된 이후 체크플래그신호(CHK_FLAG)를 디스에이블시키기 위해 초기화체크신호(INIT_CHK)를 발생시킬 수 있다.
ECS 제어회로(109)는 에러체크수행신호(ECS_EXE)가 디스에이블되는 구간 동안 메모리셀들에 저장된 코드워드(CW)들의 에러 포함 여부를 판단하기 위해 ECS 액티브커맨드(EACT)를 발생시킨 후 메모리셀들에 저장된 코드워드(CW)를 출력하기 위해 ECS 리드커맨드(ERD)를 반복적으로 발생시킬 수 있다. ECS 제어회로(109)는 에러체크수행신호(ECS_EXE)가 인에이블되는 구간 동안 에러가 발생된 코드워드(CW)가 저장된 메모리셀들에 대한 ECS 동작이 수행되도록 하기 위해 ECS 액티브커맨드(EACT), ECS 리드커맨드(ERD), ECS 라이트커맨드(EWT), ECS 프리차지커맨드(EPCG) 및 종료신호(END)를 순차적으로 발생시킬 수 있다.
선택어드레스생성회로(111)는 ECS 액티브커맨드(EACT), ECS 리드커맨드(ERD), ECS 라이트커맨드(EWT) 및 체크플래그신호(CHK_FLAG)를 토대로 선택컬럼어드레스(SCADD) 및 선택로우어드레스(SRADD)를 생성할 수 있다. 선택어드레스생성회로(111)는 ECS 액티브커맨드(EACT), ECS 리드커맨드(ERD)가 발생될 때마다 ECS 동작이 수행되는 메모리셀들에 엑세스하기 위한 선택컬럼커맨드(SCADD) 및 선택로우어드레스(SRADD)를 순차적으로 생성할 수 있다. 선택어드레스생성회로(111)는 ECS 액티브커맨드(EACT), ECS 라이트커맨드(EWT)가 발생될 때마다 ECS 동작이 수행되는 메모리셀들에 엑세스하기 위한 선택컬럼커맨드(SCADD) 및 선택로우어드레스(SRADD)를 순차적으로 생성할 수 있다. 선택어드레스생성회로(111)는 에러체크동작 시 에러가 발생한 코드워드(CW)가 저장된 메모리셀을 엑세스하기 위한 어드레스를 저장할 수 있다. 선택어드레스생성회로(111)는 체크플래그신호(CHK_FLAG)가 발생되는 구간 동안 저장된 어드레스를 선택로우어드레스(SRADD) 및 선택컬럼커맨드(SCADD)로 출력할 수 있다. 저장되는 어드레스는 로우어드레스(도 8의 RADD) 및 컬럼어드레스(도 8의 CADD)를 포함할 수 있다.
메모리뱅크(131)는 메모리셀들을 포함하고, 메모리셀들 각각은 워드라인과 비트라인에 연결될 수 있다. 메모리뱅크(131)에 포함된 메모리셀들에 연결된 워드라인들 중 적어도 하나가 선택로우어드레스(SRADD)에 의해 선택될 수 있다. 메모리뱅크(131)에 포함된 메모리셀들에 연결된 비트라인들 중 적어도 하나가 선택컬럼커맨드(SCADD)에 의해 선택될 수 있다. 메모리뱅크(131)에 포함된 메모리셀들은 적어도 하나의 워드라인과 적어도 하나의 비트라인이 선택되어 엑세스될 수 있다. 메모리뱅크(131)에 포함된 메모리셀들에 연결된 워드라인들과 비트라인들의 수는 실시 예에 따라서 다양하게 설정될 수 있다. 메모리뱅크(131)에 포함된 메모리셀들에는 데이터 및 패러티(parity)를 포함하는 코드워드(CW)가 저장될 수 있다.
센싱증폭회로(133)는 다수의 센스앰프(미도시)를 포함할 수 있다. 센싱증폭회로(133)에 포함된 센스앰프들은 메모리뱅크(131)에 포함된 메모리셀들에 연결된 비트라인들에 연결되고, 비트라인들에 실린 데이터를 센싱증폭할 수 있다.
로우제어회로(151)는 선택로우어드레스(SRADD)에 의해 선택된 메모리뱅크(131)에 포함된 메모리셀들에 연결된 워드라인들 중 적어도 하나를 로우경로로 선택할 수 있다. 로우제어회로(151)는 선택로우어드레스(SRADD)에 의해 선택된 로우경로의 메모리셀들에 저장된 데이터 및 패러티를 센싱증폭회로(133)에서 센싱 및 증폭하기 위해 비트라인들에 싣는 ECS 액티브동작을 수행할 수 있다.
컬럼제어회로(153)는 로우경로의 메모리셀들에 연결된 센스앰프들 중 선택컬럼커맨드(SCADD)에 의해 선택된 센스앰프들에서 데이터가 입출력되도록 입출력제어회로(155)를 제어할 수 있다. 컬럼제어회로(153)는 ECS 액티브동작이 수행된 메모리뱅크(131)에 포함된 메모리셀들 중 선택컬럼커맨드(SCADD)에 의해 선택된 센스앰프들에 연결된 메모리셀들에 대한 ECS 리드동작 및 ECS 라이트동작이 수행되도록 입출력제어회로(155)를 제어할 수 있다.
입출력제어회로(155)는 ECS 리드커맨드(ERD) 및 ECS 라이트커맨드(EWT)를 토대로 센싱증폭회로(133)와 에러정정회로(170) 사이의 데이터 입출력을 제어할 수 있다. 입출력제어회로(155)는 ECS 리드동작에서 메모리뱅크(131)에서 출력된 코드워드(CW)를 에러정정회로(170)로 출력할 수 있다. 입출력제어회로(155)는 ECS 라이트동작에서 에러정정회로(170)로부터 수신된 코드워드(CW)를 메모리뱅크(131)에 저장할 수 있다. 에러정정회로(170)로부터 수신된 코드워드(CW)에는 에러가 정정된 데이터 및 패러티를 포함할 수 있다.
에러정정회로(170)는 ECS 리드커맨드(ERD) 및 ECS 라이트커맨드(EWT)를 토대로 입출력제어회로(155)와 코드워드(CW)를 상호 송수신하거나 데이터버퍼(190)와 전송데이터(TD)를 상호 송수신할 수 있다. 에러정정회로(170)는 코드워드(CW)를 토대로 에러플래그신호(EFLAG)를 생성할 수 있다. 에러정정회로(170)는 에러체크동작에서 ECS 리드동작이 수행될 때 입출력제어회로(155)를 통해 출력되는 코드워드(CW)를 수신하고, 코드워드(CW)를 디코딩하여 코드워드(CW)에 포함된 데이터 및 패러티에 에러가 확인되었을 때 에러플래그신호(EFLAG)를 생성할 수 있다. 에러정정회로(170)는 ECS 동작에서 ECS 리드동작이 수행될 때 에러정정동작을 수행하여 에러가 정정된 코드워드(CW)를 생성할 수 있다. 에러정정회로(170)는 에러정정동작을 통해 에러가 정정된 코드워드(CW)를 생성하고, ECS 라이트동작이 수행될 때 에러가 정정된 코드워드(CW)를 입출력제어회로(155)에 전달하여 메모리뱅크(131)에 저장할 수 있다. 에러정정회로(170)는 에러정정코드(ECC)를 이용하여 코드워드(CW)에 포함된 에러를 정정하도록 구현될 수 있다.
데이터버퍼(190)는 ECS 리드커맨드(ERD) 및 ECS 라이트커맨드(EWT)를 토대로 에러정정회로(170)와 전송데이터(TD)를 상호 송수신하거나 컨트롤러(미도시)와 전송데이터(TD)를 상호 송수신할 수 있다.
본 실시 예에 따른 반도체장치(10)는 에러체크동작을 수행하여 에러가 포함된 코드워드(CW)를 저장하는 메모리셀들을 감지하고 에러가 발생한 코드워드(CW)를 저장하는 메모리셀들에 대해서만 ECS 동작이 수행되도록 제어하여 전력소모를 절감할 수 있다.
도 2는 ECS 커맨드생성회로(103)의 일 실시 예에 따른 구성을 도시한 블럭도이다. 도 2에 도시된 바와 같이, ECS 커맨드생성회로(103)는 리프레쉬카운터(21) 및 코드디코더(23)를 포함할 수 있다.
리프레쉬카운터(21)는 리프레쉬커맨드(REF)를 카운팅하여 리프레쉬코드(RC)를 생성할 수 있다. 리프레쉬카운터(21)는 ECS 커맨드(AECS)가 입력될 때 초기화되는 리프레쉬코드(RC)를 생성할 수 있다. 리프레쉬카운터(21)는 리프레쉬커맨드(REF)가 입력될 때마다 카운팅되는 리프레쉬코드(RC)를 생성할 수 있다. 리프레쉬카운터(31)는 리프레쉬커맨드(REF)가 입력될 때마다 리프레쉬코드(RC)에 포함된 비트들의 로직레벨조합들을 다르게 설정할 수 있다. 예를 들어, 리프레쉬코드(RC)가 2 비트로 설정될 때 리프레쉬커맨드(REF)가 입력될 때마다 리프레쉬코드(RC)의 로직레벨조합이 '00', '01','10', '11'로 변화될 수 있다. 리프레쉬코드(RC)의 로직레벨조합인 '01'은 리프레쉬코드의 제2 비트(RC<2>)가 로직로우레벨이고, 리프레쉬코드의 제1 비트(RC<1>)가 로직하이레벨임을 의미한다. 리프레쉬코드(RC)에 포함된 비트 수는 실시 예에 따라서 다양하게 설정될 수 있다.
코드디코더(23)는 리프레쉬코드(RC)를 토대로 ECS 커맨드(AECS)를 생성할 수 있다. 코드디코더(23)는 리프레쉬코드(RC)가 기설정된 로직레벨조합으로 카운팅될 때 ECS 커맨드(AECS)를 발생시킬 수 있다. 코드디코더(23)는 리프레쉬코드(RC)가 기설정된 로직레벨조합일 때 ECS 커맨드(AECS)를 발생시킬 수 있다. 예를 들어, 코드디코더(23)는 리프레쉬커맨드(REF)가 3 번째 발생되어 설정되는 리프레쉬코드(RC<2:1>)의 로직레벨조합이 '10'일 때 ECS 커맨드(AECS)를 발생시킬 수 있다.
도 3은 체크플래그신호생성회로(107)의 일 실시 예에 따른 구성을 도시한 회로도이다. 도 3에 도시된 바와 같이, 체크플래그신호생성회로(107)는 노어게이트(107_1), 인버터(107_2) 및 노어게이트(107_3)를 포함할 수 있다.
체크플래그신호생성회로(107)는 에러플래그신호(EFLAG) 및 초기화체크신호(INIT_CHK)를 토대로 체크플래그신호(CHK_FLAG)를 생성할 수 있다. 체크플래그신호생성회로(107)는 에러플래그신호(EFLAG)가 로직하이레벨로 입력될 때 로직하이레벨로 인에이블되는 체크플래그신호(CHK_FLAG)를 생성할 수 있다. 체크플래그신호생성회로(107)는 초기화체크신호(INIT_CHK)가 로직하이레벨로 입력될 때 로직로우레벨로 디스에이블되는 체크플래그신호(CHK_FLAG)를 생성할 수 있다. 체크플래그신호생성회로(107)는 에러플래그신호(EFLAG)가 로직하이레벨로 입력된 이후 초기화체크신호(INIT_CHK)가 로직하이레벨로 입력될 때까지 로직하이레벨로 인에이블되는 체크플래그신호(CHK_FLAG)를 생성할 수 있다. 체크플래그신호생성회로(107)는 SR 래치회로로 구현될 수 있다.
도 4는 ECS 제어회로(109)의 일 실시 예에 따른 구성을 도시한 블럭도이다. 도 4에 도시된 바와 같이, ECS 제어회로(109)는 클럭코드생성회로(41), 체크디코더(43) 및 동작디코더(45)를 포함할 수 있다.
클럭코드생성회로(41)는 ECS 커맨드(AECS) 및 종료신호(END)를 토대로 클럭코드(CLC)를 생성할 수 있다. 클럭코드생성회로(41)는 ECS 커맨드(AECS)가 발생되는 시점부터 종료신호(END)가 발생되는 시점까지의 구간 동안 발생되는 주기신호(도 5의 OSC)에 동기 하여 로직레벨조합이 조절되는 클럭코드(CLC)를 생성할 수 있다. 클럭코드생성회로(41)는 ECS 커맨드(AECS)가 발생되는 시점부터 종료신호(END)가 발생되는 시점까지의 구간 동안 발생되는 주기신호(도 5의 OSC)가 발생할 때마다 카운팅되는 클럭코드(CLC)를 생성할 수 있다.
체크디코더(43)는 체크플래그신호(CHK_FLAG)를 디스에이블시키기 위해 초기화체크신호(INIT_CHK)를 발생시킬 수 있다. 체크디코더(43)는 ECS 액티브커맨드(EACT), ECS 리드커맨드(ERD), ECS 라이트커맨드(EWT), ECS 프리차지커맨드(EPCG)가 4회 반복 생성된 이후 체크플래그신호(CHK_FLAG)를 디스에이블시키기 위해 초기화체크신호(INIT_CHK)를 발생시킬 수 있다.
체크디코더(43)는 에러체크수행신호(ECS_EXE) 및 클럭코드(CLC)를 토대로 ECS 액티브커맨드(EACT), ECS 리드커맨드(ERD), ECS 프리차지커맨드(EPCG) 및 종료신호(END)를 생성할 수 있다. 체크디코더(43)는 에러체크수행신호(ECS_EXE)가 디스에이블되는 구간 동안 클럭코드(CLC)에 동기 하여 ECS 액티브커맨드(EACT), ECS 리드커맨드(ERD), ECS 프리차지커맨드(EPCG) 및 종료신호(END)를 순차적으로 발생시킬 수 있다. 체크디코더(43)는 에러체크수행신호(ECS_EXE)가 디스에이블되는 구간 동안 클럭코드(CLC)를 토대로 ECS 액티브커맨드(EACT), ECS 리드커맨드(ERD), ECS 프리차지커맨드(EPCG) 및 종료신호(END)를 순차적으로 생성할 수 있다. 체크디코더(43)는 에러체크수행신호(ECS_EXE)가 디스에이블되는 구간 동안 코드워드(CW)들의 에러 포함 여부를 판단하기 위해 ECS 리드커맨드(ERD)를 반복적으로 생성할 수 있다. ECS 리드커맨드(ERD)가 반복적으로 생성되는 횟수는 실시예에 따라 다양하게 설정될 수 있다. 체크디코더(43)는 ECS 리드커맨드(ERD)를 반복적으로 생성한 이후 ECS 프리차지커맨드(EPCG) 및 종료신호(END)를 순차적으로 생성할 수 있다. ECS 액티브커맨드(EACT), ECS 리드커맨드(ERD), ECS 프리차지커맨드(EPCG) 및 종료신호(END)를 생성하기 위한 클럭코드(CLC)의 로직레벨조합은 서로 상이하게 설정될 수 있다. 예를 들어, 클럭코드(CLC)가 10회 카운팅되어 생성될 때 ECS 액티브커맨드(EACT)가 발생할 수 있고, 클럭코드(CLC)가 20회, 24회, 28회 및 30회로 카운팅되어 생성될 때 마다 ECS 리드커맨드(ERD)가 발생할 수 있다.
동작디코더(45)는 에러체크수행신호(ECS_EXE) 및 클럭코드(CLC)를 토대로 ECS 액티브커맨드(EACT), ECS 리드커맨드(ERD), ECS 라이트커맨드(EWT), ECS 프리차지커맨드(EPCG) 및 종료신호(END)를 생성할 수 있다. 동작디코더(45)는 에러체크수행신호(ECS_EXE)가 인에이블되는 구간 동안 클럭코드(CLC)에 동기 하여 ECS 액티브커맨드(EACT), ECS 리드커맨드(ERD), ECS 라이트커맨드(EWT), ECS 프리차지커맨드(EPCG) 및 종료신호(END)를 순차적으로 발생시킬 수 있다. 동작디코더(45)는 코드워드(CW)가 저장된 메모리셀들에 대한 ECS 동작을 수행하기 위해 ECS 액티브커맨드(EACT), ECS 리드커맨드(ERD), ECS 라이트커맨드(EWT), ECS 프리차지커맨드(EPCG) 및 종료신호(END)를 순차적으로 발생시킬 수 있다. ECS 액티브커맨드(EACT), ECS 리드커맨드(ERD), ECS 프리차지커맨드(EPCG) 및 종료신호(END)를 생성하기 위한 클럭코드(CLC)의 로직레벨조합은 서로 상이하게 설정될 수 있다. 예를 들어, 클럭코드(CLC)가 10회 카운팅되어 생성될 때 ECS 액티브커맨드(EACT)가 발생할 수 있고, 클럭코드(CLC)가 20회 카운팅되어 생성될 때 ECS 리드커맨드(ERD)가 발생할 수 있으며, 클럭코드(CLC)가 28회 카운팅되어 생성될 때 ECS 라이트커맨드(EWT)가 발생할 수 있다.
도 5는 클럭코드생성회로(41)의 일 실시 예에 따른 구성을 도시한 블럭도이다. 도 5에 도시된 바와 같이, 클럭코드생성회로(41)는 ECS 모드신호생성회로(411), 주기신호생성회로(413) 및 클럭카운터(415)를 포함할 수 있다.
ECS 모드신호생성회로(411)는 ECS 커맨드(AECS) 및 종료신호(END)를 토대로 ECS 모드신호(ECS_MD)를 생성할 수 있다. ECS 모드신호생성회로(411)는 ECS 커맨드(AECS)가 발생되는 시점부터 종료신호(END)가 발생되는 시점까지 인에이블되는 ECS 모드신호(ECS_MD)를 생성할 수 있다.
주기신호생성회로(413)는 ECS 모드신호(ECS_MD)를 토대로 주기신호(OSC)를 생성할 수 있다. 주기신호생성회로(413)는 ECS 모드신호(ECS_MD)가 로직하이레벨로 발생될 때 기설정된 주기마다 토글링(toggling)되는 주기신호(OSC)를 발생시킬 수 있다. 주기신호생성회로(413)는 ECS 모드신호(ECS_MD)가 로직하이레벨로 생성되는 구간 동안 토글링(toggling)되는 주기신호(OSC)를 발생시킬 수 있다.
클럭카운터(415)는 주기신호(OSC)를 토대로 클럭코드(CLC)를 생성할 수 있다. 클럭카운터(415)는 주기신호(OSC)가 입력될 때마다 카운팅되는 클럭코드(CLC)를 생성할 수 있다. 클럭카운터(415)는 주기신호(OSC)를 카운팅하여 클럭코드(CLC)의 로직레벨조합을 조절할 수 있다. 예를 들어, 클럭코드(CLC)가 3 비트를 포함할 때 클럭카운터(415)는 주기신호(OSC)가 로직로우레벨에서 로직하이레벨로 천이하는 시점(이하, '라이징에지')에 동기 하여 순차적으로 '001', '010', '011', '100', '101', '110' 및 '111'의 로직레벨조합을 갖는 클럭코드(CLC)를 생성할 수 있다. 클럭코드(CLC)의 로직레벨조합이 '110'이라함은 클럭코드의 제3 비트(CLC<3>) 및 클럭코드의 제2 비트(CLC<2>)가 로직하이레벨이고, 클럭코드의 제1 비트(CLC<1>)가 로직로우레벨임을 의미한다. 클럭카운터(415)는 주기신호(OSC)의 펄스가 입력되지 않을 때 초기화되는 클럭코드(CLC)를 생성할 수 있다.
도 6은 ECS 모드신호생성회로(411)의 일 실시 예에 따른 구성을 도시한 회로도이다. 도 6에 도시된 바와 같이, ECS 모드신호생성회로(411)는 노어게이트(411_1), 인버터(411_2) 및 노어게이트(411_3)를 포함할 수 있다.
ECS 모드신호생성회로(411)는 ECS 커맨드(AECS), 종료신호(END) 및 리셋신호(RST)를 토대로 ECS 모드신호(ECS_MD)를 생성할 수 있다. ECS 모드신호생성회로(411)는 ECS 커맨드(AECS)가 로직하이레벨로 입력될 때 로직하이레벨로 인에이블되는 ECS 모드신호(ECS_MD)를 생성할 수 있다. ECS 모드신호생성회로(411)는 종료신호(END)가 로직하이레벨로 입력될 때 로직로우레벨로 디스에이블되는 ECS 모드신호(ECS_MD)를 생성할 수 있다. ECS 모드신호생성회로(411)는 리셋신호(RST)가 로직하이레벨로 입력될 때 로직로우레벨로 디스에이블되는 ECS 모드신호(ECS_MD)를 생성할 수 있다. ECS 모드신호생성회로(411)는 ECS 커맨드(AECS)가 로직하이레벨로 입력된 이후 종료신호(END)가 로직하이레벨로 입력될 때까지 로직하이레벨로 인에이블되는 ECS 모드신호(ECS_MD)를 생성할 수 있다. ECS 모드신호생성회로(411)는 SR 래치회로로 구현될 수 있다. 리셋신호(RST)는 반도체장치(10)의 리셋동작에서 로직하이레벨로 인에이블되는 신호로 설정될 수 있다.
도 7은 주기신호생성회로(413)의 일 실시 예에 따른 구성을 도시한 회로도이다. 도 7에 도시된 바와 같이, 주기신호생성회로(413)는 낸드게이트(413_1), 인버터들(413_2,413_3,413_4,413_5)을 포함할 수 있다.
주기신호생성회로(413)는 ECS 모드신호(ECS_MD)가 로직하이레벨로 입력될 때 기설정된 주기마다 토글링(toggling)되는 주기신호(OSC)를 발생시킬 수 있다. 주기신호생성회로(413)에 포함된 낸드게이트(413_1)는 ECS 모드신호(ECS_MD)가 로직하이레벨로 입력될 때 인버터로 동작할 수 있다. 주기신호생성회로(413)는 ECS 모드신호(ECS_MD)가 로직하이레벨로 입력될 때 링오실레이터로 동작하여 기설정된 주기마다 토글링(toggling)되는 주기신호(OSC)를 발생시킬 수 있다. 주기신호생성회로(413)는 ECS 모드신호(ECS_MD)가 로직하이레벨로 생성되는 구간 동안 링오실레이터로 동작하여 토글링(toggling)되는 주기신호(OSC)를 발생시킬 수 있다.
도 8은 선택어드레스생성회로(111)의 일 실시 예에 따른 구성을 도시한 블럭도이다. 도 8에 도시된 바와 같이, 선택어드레스생성회로(111)는 어드레스카운터(51), 입출력제어신호생성회로(53), 어드레스파이프(55) 및 어드레스선택회로(57)를 포함할 수 있다.
어드레스카운터(51)는 ECS 액티브커맨드(EACT), ECS 리드커맨드(ERD) 및 ECS 라이트커맨드(EWT)를 토대로 로우어드레스(RADD) 및 컬럼어드레스(CADD)를 생성할 수 있다. 어드레스카운터(651)는 ECS 액티브커맨드(EACT)가 입력된 이후 ECS 리드커맨드(ERD) 및 ECS 라이트커맨드(EWT) 중 어느 하나가 입력될 때마다 순차적으로 카운팅되는 로우어드레스(RADD) 및 컬럼어드레스(CADD)를 생성할 수 있다. 어드레스카운터(51)는 ECS 액티브커맨드(EACT)가 입력된 이후 ECS 리드커맨드(ERD) 및 ECS 라이트커맨드(EWT) 중 어느 하나가 입력될 때마다 다른 메모리셀에 엑세스할 수 있는 로우어드레스(RADD) 및 컬럼어드레스(CADD)를 생성할 수 있다.
입출력제어신호생성회로(53)는 에러체크동작 시 ECS 리드커맨드(ERD) 및 에러플래그신호(EFLAG)를 토대로 입력제어신호(PIN)를 생성할 수 있다. 예를 들어, 입출력제어신호생성회로(53)는 ECS 리드커맨드(ERD)가 발생하고, 에러플래그신호(EFLAG)가 발생할 때 입력제어신호의 제1 비트(PIN<1>)를 발생시키고, 에러플래그신호(EFLAG)가 발생할 때마다 입력제어신호의 제2 비트(PIN<2>), 입력제어신호의 제3 비트(PIN<3>) 및 입력제어신호의 제4 비트(PIN<4>)를 순차적으로 발생시킬 수 있다. 입력제어신호(PIN)의 비트 수는 실시 예에 따라서 다양하게 설정될 수 있다.
입출력제어신호생성회로(53)는 ECS 동작 시 ECS 리드커맨드(ERD)를 토대로 출력제어신호(POUT)를 생성할 수 있다. 예를 들어, 입출력제어신호생성회로(53)는 ECS 동작 시 ECS 리드커맨드(ERD)가 발생할 때 출력제어신호의 제1 비트(POUT<1>)를 발생시키고, ECS 리드커맨드(ERD)가 발생할 때마다 출력제어신호의 제2 비트(POUT<2>), 출력제어신호의 제3 비트(POUT<3>) 및 출력제어신호의 제4 비트(POUT<4>)를 순차적으로 발생시킬 수 있다. 출력제어신호(POUT)의 비트 수는 실시 예에 따라서 다양하게 설정될 수 있다.
어드레스파이프(55)는 입력제어신호(PIN)를 토대로 로우어드레스(RADD) 및 컬럼어드레스(CADD)를 저장하고, 출력제어신호(POUT)를 토대로 저장된 로우어드레스(RADD) 및 컬럼어드레스(CADD)를 파이프로우어드레스(PRADD) 및 파이프컬럼어드레스(PCADD)로 출력할 수 있다. 예를 들어, 어드레스파이프(55)는 입력제어신호의 제J 비트(PIN<J>)가 발생될 때 저장된 로우어드레스(RADD) 및 컬럼어드레스(CADD)를 출력제어신호의 제J 비트(POUT<J>)가 발생될 때 파이프로우어드레스(PRADD) 및 파이프컬럼어드레스(PCADD)로 출력할 수 있다. 여기서, 'J'는 자연수로 설정될 수 있다.
어드레스선택회로(57)는 체크플래그신호(CHK_FLAG)를 토대로 로우어드레스(RADD), 컬럼어드레스(CADD), 파이프로우어드레스(PRADD) 및 파이프컬럼어드레스(PCADD)로부터 선택로우어드레스(SRADD) 및 선택컬럼어드레스(SCADD)를 생성할 수 있다. 어드레스선택회로(57)는 체크플래그신호(CHK_FLAG)가 디스에이블되는 구간 동안 로우어드레스(RADD) 및 컬럼어드레스(CADD)를 선택로우어드레스(SRADD) 및 선택컬럼어드레스(SCADD)로 선택하여 출력할 수 있다. 어드레스선택회로(57)는 체크플래그신호(CHK_FLAG)가 인에이블되는 구간 동안 파이프로우어드레스(PRADD) 및 파이프컬럼어드레스(PCADD)를 선택로우어드레스(SRADD) 및 선택컬럼어드레스(SCADD)로 선택하여 출력할 수 있다.
도 9는 메모리뱅크(131) 및 센싱증폭회로(133)의 구성을 도시한 블럭도이다. 도 9에 도시된 바와 같이, 메모리뱅크(131)는 제1 영역(131_1) 및 제2 영역(131_2)를 포함할 수 있다.
제1 영역(131_1)은 제1 내지 제M 워드라인(WL1 ~ WLm)을 포함할 수 있다. 제2 영역(131_2)은 제M+1 내지 제N 워드라인(WLm+1 ~ WLn)을 포함할 수 있다. 제1 영역(131_1) 및 제2 영역(131_2)에 포함된 다수의 워드라인들의 수는 실시예에 따라 다양하게 설정될 수 있다.
도 9를 참고하여 제1 영역(131_1)에 대한 에러체크동작(Error Check)을 설명하되 에러가 발생한 경우(Error)를 설명하면 다음과 같다.
제1 영역(131_1)은 에러체크동작 시 반복적으로 발생하는 ECS 리드커맨드(ERD)에 의해 메모리셀(미도시)에 저장된 코드워드(CW)를 출력할 수 있다.
센싱증폭회로(133)는 코드워드(CW)를 센싱증폭하여 출력할 수 있다. 이때, 코드워드(CW)에 에러가 발생하므로 ECS 동작 시 리드모디파이라이트동작(RMW)이 수행될 수 있다. 리드모디파이라이트동작(RMW)은 ECS 동작 시 ECS 리드커맨드(ERD)가 발생할 때 코드워드(CW)를 출력하고, ECS 라이트커맨드(EWT)가 발생할 때 에러가 정정된 코드워드(CW)를 동일한 위치에 재 저장하는 동작을 의미한다.
도 9를 참고하여 제1 영역(131_1)에 대한 에러체크동작을 설명하되 에러가 없는 경우(NO Error)를 설명하면 다음과 같다.
제1 영역(131_1)은 에러체크동작 시 반복적으로 발생하는 ECS 리드커맨드(ERD)에 의해 메모리셀(미도시)에 저장된 코드워드(CW)를 출력할 수 있다.
센싱증폭회로(133)는 코드워드(CW)를 센싱증폭하여 출력할 수 있다. 이때, 코드워드(CW)는 에러가 없으므로 에러체크동작(Error Check)만 수행될 수 있다.
도 9를 참고하여 제2 영역(131_2)에 대한 에러체크동작(Error Check)을 설명하되 에러가 발생한 경우(Error)를 설명하면 다음과 같다.
제2 영역(131_2)은 에러체크동작 시 반복적으로 발생하는 ECS 리드커맨드(ERD)에 의해 메모리셀(미도시)에 저장된 코드워드(CW)를 출력할 수 있다.
센싱증폭회로(133)는 코드워드(CW)를 센싱증폭하여 출력할 수 있다. 이때, 코드워드(CW)에 에러가 발생하므로 ECS 동작 시 리드모디파이라이트동작(RMW)이 수행될 수 있다. 리드모디파이라이트동작(RMW)은 ECS 동작 시 ECS 리드커맨드(ERD)가 발생할 때 코드워드(CW)를 출력하고, ECS 라이트커맨드(EWT)가 발생할 때 에러가 정정된 코드워드(CW)를 동일한 위치에 재 저장하는 동작을 의미한다.
도 9를 참고하여 제2 영역(131_2)에 대한 에러체크동작을 설명하되 에러가 없는 경우(NO Error)를 설명하면 다음과 같다.
제2 영역(131_2)은 에러체크동작 시 반복적으로 발생하는 ECS 리드커맨드(ERD)에 의해 메모리셀(미도시)에 저장된 코드워드(CW)를 출력할 수 있다.
센싱증폭회로(133)는 코드워드(CW)를 센싱증폭하여 출력할 수 있다. 이때, 코드워드(CW)는 에러가 없으므로 에러체크동작(Error Check)만 수행될 수 있다.
제2 영역(131_2)에 대한 에러체크동작(Error Check)은 제1 영역(131_1)에 대한 에러체크동작(Error Check)이 완료된 이후 수행될 수 있다.
도 10은 도 1에 도시된 반도체장치(10)의 동작을 설명하기 위한 타이밍도들이다.
도 10에 도시된 바와 같이, 리프레쉬커맨드(REF)가 K번 발생될 때마다 ECS 커맨드(AECS)가 발생된다.
T1 시점은 에러체크동작 시 코드워드(CW)에 에러가 발생하지 않는 경우의 동작이다.
T1 시점에서, 에러체크수행신호생성회로(105)는 초기화동작 시 로직로우레벨(L)로 디스에이블되는 에러체크수행신호(ECS_EXE)를 생성한다.
체크플래그신호생성회로(107)는 코드워드(CW)에 에러가 발생하지 않을 때 에러플래그신호(EFLAG)를 수신하여 로직로우레벨(L)로 디스에이블되는 체크플래그신호(CHK_FLAG)를 생성한다.
에러체크동작 시 코드워드(CW)에 에러가 발생하지 않는 경우의 동작은 후술하는 도 11에서 구체적으로 설명하도록 한다.
T2 시점은 에러체크동작 시 코드워드(CW)에 에러가 발생하는 경우의 동작이다.
T2 시점에서, 에러체크수행신호생성회로(105)는 초기화동작 시 로직로우레벨(L)로 디스에이블되는 에러체크수행신호(ECS_EXE)를 생성한다.
체크플래그신호생성회로(107)는 코드워드(CW)에 에러가 발생할 때 생성되는 에러플래그신호(EFLAG)를 수신하여 로직하이레벨(H)로 인에이블되는 체크플래그신호(CHK_FLAG)를 생성한다.
에러체크동작 시 코드워드(CW)에 에러가 발생하는 경우의 동작은 후술하는 도 12에서 구체적으로 설명하도록 한다.
T3 시점은 에러체크동작 시 코드워드(CW)에 에러가 발생하여 ECS 동작을 수행하는 경우의 동작이다.
T3 시점에서, 에러체크수행신호생성회로(105)는 로직하이레벨(H)의 ECS 커맨드(AECS)와 로직하이레벨(H)의 체크플래그신호(CHK_FLAG)가 입력될 때 로직하이레벨(H)로 인에이블되는 에러체크수행신호(ECS_EXE)를 생성한다.
ECS 제어회로(109)는 에러가 발생된 코드워드(CW)가 저장된 메모리셀들에 대한 ECS 동작이 수행되도록 하기 위해 ECS 액티브커맨드(EACT), ECS 리드커맨드(ERD), ECS 라이트커맨드(EWT), ECS 프리차지커맨드(EPCG) 및 종료신호(END)를 순차적으로 발생시킨다. 여기서, ECS 리드커맨드(ERD)를 토대로 코드워드(CW)를 에러정정회로(170)로 출력하고, ECS 라이트커맨드(EWT)에 의해 에러가 정정된 코드워드(CW)를 저장하는 동작은 리드모디파이라이트동작(RMW)으로 설정된다.
에러체크동작 시 코드워드(CW)에 에러가 발생하여 ECS 동작을 수행하는 동작은 후술하는 도 13에서 구체적으로 설명하도록 한다.
도 11은 에러체크동작 시 코드워드(CW)에 에러가 발생하지 않는 경우의 동작을 설명하기 위한 타이밍도이다. 도 11에 도시된 에러체크동작은 도 10의 T1시점의 동작을 의미한다.
T11 시점에, ECS 커맨드생성회로(103)는 리프레쉬커맨드(REF)가 기 설정된 횟수(K 번)만큼 발생될 때 ECS 커맨드(AECS)를 발생시킨다.
에러체크수행신호생성회로(105)는 초기화동작 시 로직로우레벨로 디스에이블되는 에러체크수행신호(ECS_EXE)를 생성한다.
클럭코드생성회로(41)의 ECS 모드신호생성회로(411)는 ECS 커맨드(AECS)가 발생되는 시점에 로직하이레벨로 인에이블되는 ECS 모드신호(ECS_MD)를 생성한다.
클럭코드생성회로(41)의 주기신호생성회로(413)는 ECS 모드신호(ECS_MD)가 로직하이레벨로 발생될 때 기설정된 주기마다 토글링(toggling)되는 주기신호(OSC)를 발생시킨다.
ECS 제어회로(109)는 에러체크수행신호(ECS_EXE)가 디스에이블되는 구간 동안 체크플래그신호(CHK_FLAG)를 디스에이블시키기 위해 초기화체크신호(INIT_CHK)를 발생시킨다.
T12 시점에, ECS 제어회로(109)는 에러체크수행신호(ECS_EXE)가 디스에이블되는 구간 동안 ECS 동작이 수행되는 메모리셀들에 저장된 코드워드(CW)들의 에러 포함 여부를 판단하기 위해 ECS 액티브커맨드(EACT)를 발생시킨다.
T13 시점부터 T16 시점까지 ECS 제어회로(109)는 메모리셀들에 저장된 코드워드(CW)를 출력하기 위해 ECS 리드커맨드(ERD)를 반복적으로 발생시킨다. ECS 제어회로(109)는 ECS 리드커맨드(ERD)를 4회 발생시키도록 구현되지만 실시예에 따라 ECS 리드커맨드(ERD)를 다양한 횟수로 발생시킬 수 있다.
T13 시점부터 T16 시점까지 에러정정회로(170)는 에러체크동작에서 ECS 리드동작이 수행될 때 입출력제어회로(155)를 통해 출력되는 코드워드(CW)를 수신하고, 코드워드(CW)를 디코딩하여 코드워드(CW)에 포함된 데이터 및 패러티에 에러가 없을때 로직로우레벨로 디스에이블되는 에러플래그신호(EFLAG)를 생성한다.
체크플래그신호생성회로(107)는 코드워드(CW)에 에러가 발생하지 않을 때 생성되는 로직로우레벨의 에러플래그신호(EFLAG)를 수신하여 로직로우레벨로 디스에이블되는 체크플래그신호(CHK_FLAG)를 생성한다.
T17 시점에, ECS 제어회로(109)는 에러체크수행신호(ECS_EXE)가 디스에이블되는 구간 동안 에러체크동작이 수행된 메모리셀들에 대한 프리차지동작을 수행하기 위해 ECS 프리치지커맨드(EPCG)를 발생시킨다.
도 12는 에러체크동작 시 코드워드(CW)에 에러가 발생하는 경우의 동작을 설명하기 위한 타이밍도이다. 도 12에 도시된 에러체크동작은 도 10의 T2시점의 동작을 의미한다.
T21 시점에, ECS 커맨드생성회로(103)는 리프레쉬커맨드(REF)가 기 설정된 횟수(K 번)만큼 발생될 때 ECS 커맨드(AECS)를 발생시킨다.
에러체크수행신호생성회로(105)는 초기화동작 시 로직로우레벨로 디스에이블되는 에러체크수행신호(ECS_EXE)를 생성한다.
클럭코드생성회로(41)의 ECS 모드신호생성회로(411)는 ECS 커맨드(AECS)가 발생되는 시점에 로직하이레벨로 인에이블되는 ECS 모드신호(ECS_MD)를 생성한다.
클럭코드생성회로(41)의 주기신호생성회로(413)는 ECS 모드신호(ECS_MD)가 로직하이레벨로 발생될 때 기설정된 주기마다 토글링(toggling)되는 주기신호(OSC)를 발생시킨다.
ECS 제어회로(109)는 에러체크수행신호(ECS_EXE)가 디스에이블되는 구간 동안 체크플래그신호(CHK_FLAG)를 디스에이블시키기 위해 초기화체크신호(INIT_CHK)를 발생시킨다.
T22 시점에, ECS 제어회로(109)는 에러체크수행신호(ECS_EXE)가 디스에이블되는 구간 동안 ECS 동작이 수행되는 메모리셀들에 저장된 코드워드(CW)들의 에러 포함 여부를 판단하기 위해 ECS 액티브커맨드(EACT)를 발생시킨다.
T23 시점부터 T26 시점까지 ECS 제어회로(109)는 메모리셀들에 저장된 코드워드(CW)를 출력하기 위해 ECS 리드커맨드(ERD)를 반복적으로 발생시킨다. ECS 제어회로(109)는 ECS 리드커맨드(ERD)를 4회 발생시키도록 구현되지만 실시예에 따라 ECS 리드커맨드(ERD)를 다양한 횟수로 발생시킬 수 있다.
T25 시점에 에러정정회로(170)는 에러체크동작에서 ECS 리드동작이 수행될 때 입출력제어회로(155)를 통해 출력되는 코드워드(CW)를 수신하고, 코드워드(CW)를 디코딩하여 코드워드(CW)에 포함된 데이터 및 패러티에 에러가 확인될 때 로직하이레벨로 인에이블되는 에러플래그신호(EFLAG)를 생성한다.
선택어드레스생성회로(111)는 로직하이레벨의 에러플래그신호(EFLAG)를 수신하여 에러체크동작 시 에러가 발생한 코드워드(CW)가 저장된 메모리셀을 엑세스하기 위한 어드레스를 저장한다.
체크플래그신호생성회로(107)는 코드워드(CW)에 에러가 발생할 때 생성되는 로직하이레벨의 에러플래그신호(EFLAG)를 수신하여 로직하이레벨로 인에이블되는 체크플래그신호(CHK_FLAG)를 생성한다.
T27 시점에, ECS 제어회로(109)는 에러체크수행신호(ECS_EXE)가 디스에이블되는 구간 동안 에러체크동작이 수행된 메모리셀들에 대한 프리차지동작을 수행하기 위해 ECS 프리치지커맨드(EPCG)를 발생시킨다.
도 13은 에러체크동작 시 코드워드(CW)에 에러가 발생하여 ECS 동작을 수행하는 경우의 동작을 설명하기 위한 타이밍도이다. 도 13에 도시된 에러체크동작은 도 10의 T3시점의 동작을 의미한다.
T31 시점에, ECS 커맨드생성회로(103)는 리프레쉬커맨드(REF)가 기 설정된 횟수(K 번)만큼 발생될 때 ECS 커맨드(AECS)를 발생시킨다.
에러체크수행신호생성회로(105)는 로직하이레벨의 ECS 커맨드(AECS) 및 로직하이레벨의 체크플래그신호(CHK_FLAG)를 수신하여 로직하이레벨로 인에이블되는 에러체크수행신호(ECS_EXE)를 생성한다.
클럭코드생성회로(41)의 ECS 모드신호생성회로(411)는 ECS 커맨드(AECS)가 발생되는 시점에 로직하이레벨로 인에이블되는 ECS 모드신호(ECS_MD)를 생성한다.
클럭코드생성회로(41)의 주기신호생성회로(413)는 ECS 모드신호(ECS_MD)가 로직하이레벨로 발생될 때 기설정된 주기마다 토글링(toggling)되는 주기신호(OSC)를 발생시킨다.
T32 시점에, ECS 제어회로(109)는 에러체크수행신호(ECS_EXE)가 인에이블되는 구간 동안 ECS 동작이 수행되는 메모리셀들에 저장된 코드워드(CW)들의 에러 포함 여부를 판단하기 위해 ECS 액티브커맨드(EACT)를 발생시킨다.
T33 시점에, ECS 제어회로(109)는 ECS 동작이 수행되는 메모리셀들에 저장된 코드워드(CW)를 출력하기 위해 ECS 리드커맨드(ERD)를 발생시킨다.
선택어드레스생성회로(111)는 로직하이레벨의 체크플래그신호(CHK_FLAG)를 수신하여 에러체크동작 시 에러가 발생한 코드워드(CW)가 저장된 메모리셀을 엑세스하기 위해 저장된 어드레스를 선택로우어드레스(SRADD) 및 선택컬럼커맨드(SCADD)로 출력한다.
메모리뱅크(131)는 선택로우어드레스(SRADD) 및 선택컬럼커맨드(SCADD)에 의해 선택된 메모리셀에 저장된 코드워드(CW)를 입출력제어회로(155)를 통해 에러정정회로(170)로 출력한다.
에러정정회로(170)는 코드워드(CW)를 수신하여 에러정정동작을 수행하고, 에러가 정정된(Corrected Error) 코드워드(CW)를 생성한다.
T34 시점에, ECS 제어회로(109)는 ECS 동작이 수행되는 메모리셀들에 코드워드(CW)를 저장하기 위해 ECS 라이트커맨드(EWT)를 발생시킨다.
선택어드레스생성회로(111)는 로직하이레벨의 체크플래그신호(CHK_FLAG)를 수신하여 에러체크동작 시 에러가 발생한 코드워드(CW)가 저장된 메모리셀을 엑세스하기 위해 저장된 어드레스를 선택로우어드레스(SRADD) 및 선택컬럼커맨드(SCADD)로 출력한다.
에러정정회로(170)는 에러가 정정된 코드워드(CW)를 입출력제어회로(155)에 전달하여 메모리뱅크(131)에 저장한다.
T35 시점에, ECS 제어회로(109)는 에러체크수행신호(ECS_EXE)가 인에이블되는 구간 동안 ECS 동작이 수행된 메모리셀들에 대한 프리차지동작을 수행하기 위해 ECS 프리치지커맨드(EPCG)를 발생시킨다.
이와 같은 본 발명의 일 실시예에 따른 반도체장치(10)는 메모리셀들에 저장된 코드워드의 에러를 감지하는 에러체크동작을 수행한 이후 코드워드의 에러를 정정하여 재저장하는 에러 체크 및 스크럽(error check and scrub, 이하 'ECS') 동작을 수행함으로써, 메모리셀들에 저장된 코드워드의 에러를 정정하고, 에러가 정정된 코드워드를 다시 메모리셀들에 저장할 수 있는 ECS 동작을 수행할 수 있다. 또한, 본 발명의 일 실시예에 따른 반도체장치(10)는 메모리셀들에 저장된 코드워드의 에러를 감지하는 에러체크동작을 수행한 이후 에러가 발생한 코드워드가 저장된 영역만을 ECS 동작을 수행함으로써 전력소모를 절감할 수 있다.
도 14는 본 발명의 일 실시 예에 따른 전자시스템(1000)의 일 실시 예에 따른 구성을 도시한 블럭도이다. 도 14에 도시된 바와 같이, 전자시스템(1000)은 호스트(1100) 및 반도체시스템(1200)을 포함할 수 있다.
호스트(1100) 및 반도체시스템(1200)은 인터페이스 프로토콜을 사용하여 상호 신호들을 전송할 수 있다. 호스트(1100) 및 반도체시스템(1200) 사이에 사용되는 인터페이스 프로토콜에는 MMC(Multi-Media Card), ESDI(Enhanced Small Disk Interface), IDE(Integrated Drive Electronics), PCI-E(Peripheral Component Interconnect - Express), ATA(Advanced Technology Attachment), SATA(Serial ATA), PATA(Parallel ATA), SAS(serial attached SCSI), USB(Universal Serial Bus) 등이 있다.
반도체시스템(1200)은 컨트롤러(1300)와 반도체장치들(1400(K:1))을 포함할 수 있다. 컨트롤러(1300)는 반도체장치들(1400(K:1))이 리프레쉬커맨드(REF)를 토대로 에러체크동작 및 ECS 동작을 수행하하도록 반도체장치들(1400(K:1))을 제어할 수 있다. 반도체장치들(1400(K:1)) 각각은 리프레쉬커맨드를 토대로 에러체크동작 및 ECS 동작을 수행하여 에러가 포함된 코드워드(CW)가 저장된 메모리셀들에 대해서만 ECS 동작을 수행할 수 있다.
반도체장치들(1400(K:1)) 각각은 도 1에 도시된 반도체장치(10)로 구현될 수 있다. 실시 예에 따라서 반도체장치(10) 각각은 DRAM(dynamic random access memory), PRAM(Phase change Random Access Memory), RRAM(Resistive Random Access Memory), MRAM(Magnetic Random Access Memory) 및 FRAM(Ferroelectric Random Access Memory) 중 하나로 구현될 수 있다.
10: 반도체장치 101: 커맨드디코더
103: ECS 커맨드생성회로 105: 에러체크수행신호생성회로
107. 체크플래그신호생성회로 109: ECS 제어회로
111: 선택어드레스생성회로 131: 메모리뱅크
133: 센싱증폭회로 151: 로우제어회로
153: 컬럼제어회로 155: 입출력제어회로
170: 에러정정회로 190: 데이터버퍼
21. 리프레쉬카운터 23. 코드디코더
41. 클럭코드생성회로 42. 체크디코더
43. 동작디코더 411. ECS 모드신호생성회로
413. 주기신호생성회로 415. 클럭카운터
51. 어드레스카운터 53. 입출력제어신호생성회로
55. 어드레스파이프 57. 어드레스선택회로
131_1. 제1 영역 131_2. 제2 영역

Claims (20)

  1. 리프레쉬커맨드를 토대로 발생하는 ECS 커맨드가 입력될 때 에러체크동작을 수행하기 위한 에러체크수행신호를 생성하는 에러체크수행신호생성회로; 및
    상기 ECS 커맨드 및 상기 에러체크수행신호를 토대로 상기 에러체크동작을 수행하기 위한 ECS 액티브커맨드와 ECS 리드커맨드를 생성하되, 상기 에러체크동작을 수행하기 위해 상기 ECS 리드커맨드를 연속적으로 생성하는 ECS 제어회로를 포함하는 반도체장치.
  2. 제 1 항에 있어서, 상기 에러체크수행신호생성회로는
    상기 에러체크동작에서 코드워드에 에러가 포함될 때 발생하는 체크플래그신호를 토대로 디스에이블되는 상기 에러체크수행신호를 생성하는 반도체장치.
  3. 제 1 항에 있어서, 상기 에러체크동작은 메모리뱅크에 저장된 상기 코드워드를 연속적으로 출력하고, 상기 코드워드의 에러 유무를 감지하는 동작인 반도체장치.
  4. 제 1 항에 있어서,
    상기 코드워드는 제1 코드워드 및 제2 코드워드를 포함하고, 메모리뱅크에 포함된 제1 영역에 저장된 상기 제1 코드워드에 대한 상기 에러체크동작을 수행한 이후 상기 메모리뱅크에 포함된 제2 영역에 저장된 상기 제2 코드워드에 대한 상기 에러체크동작을 수행하는 반도체장치.
  5. 제 1 항에 있어서, 상기 ECS 제어회로는
    상기 ECS 커맨드 및 상기 에러체크수행신호를 토대로 ECS 동작을 수행하기 위한 상기 ECS 액티브커맨드, 상기 ECS 리드커맨드, ECS 라이트커맨드, ECS 프리차지신호 및 종료신호를 생성하는 반도체장치.
  6. 제 1 항에 있어서, 상기 ECS 제어회로는
    상기 에러체크수행신호가 디스에이블되는 구간 동안 상기 ECS 커맨드가 입력될 때 상기 ECS 액티브커맨드를 생성한 이후 상기 ECS 리드커맨드를 연속적으로 생성하며, ECS 프리차지신호 및 종료신호를 생성하고,
    상기 에러체크수행신호가 인에이블되는 구간 동안 상기 ECS 커맨드가 입력될 때 상기 ECS 액티브커맨드, 상기 ECS 리드커맨드, ECS 라이트커맨드, 상기 ECS 프리차지신호 및 상기 종료신호를 순차적으로 생성하는 반도체장치.
  7. 제 6 항에 있어서, 상기 ECS 제어회로는
    상기 ECS 커맨드가 입력될 때 마다 카운팅되는 클럭코드신호를 생성하고, 상기 종료신호가 입력될 때 초기화되는 상기 클럭코드신호를 생성하는 클럭코드생성회로;
    상기 에러체크수행신호가 디스에이블되는 구간 동안 상기 클럭코드신호의 로직레벨조합에 따라 상기 ECS 액티브커맨드, 상기 ECS 리드커맨드, 상기 ECS 프리차지신호 및 상기 종료신호를 생성하는 체크디코더; 및
    상기 에러체크수행신호가 인에이블되는 구간 동안 상기 클럭코드신호의 로직레벨조합에 따라 상기 ECS 액티브커맨드, 상기 ECS 리드커맨드, 상기 ECS 라이트커맨드, 상기 ECS 프리차지신호 및 상기 종료신호를 생성하는 동작디코더를 포함하는 반도체장치.
  8. 제 7 항에 있어서, 상기 클럭코드생성회로는
    상기 ECS 커맨드가 입력되는 시점부터 상기 상기 종료신호가 입력되는 시점까지 인에이블되는 ECS 모드신호를 생성하는 ECS 모드신호생성회로;
    상기 ECS 모드신호의 인에이블 구간 동안 토글링하는 주기신호를 생성히는 주기신호생성회로; 및
    상기 주기신호의 펄스가 입력될 때 마다 카운팅되는 상기 클럭코드를 생성하고, 상기 주기신호의 펄스가 입력되지 않을 때 상기 클럭코드를 초기화하는 클럭카운터를 포함하는 반도체장치.
  9. 제 1 항에 있어서,
    상기 리프레쉬커맨드가 기 설정된 횟수로 입력될 때 마다 발생하는 상기 ECS 커맨드를 생성하는 ECS 커맨드생성회로를 더 포함하는 반도체장치.
  10. 제 9 항에 있어서, 상기 ECS 커맨드생성회로는
    상기 리프레쉬커맨드가 입력될 때 마다 카운팅되는 리프레쉬카운팅코드를 생성하고, 상기 ECS 커맨드가 입력될 때 초기화되는 상기 리프레쉬카운팅코드를 생성하는 리프레쉬카운터; 및
    상기 리프레쉬카운팅코드가 기 설정된 횟수로 카운팅될 때 발생하는 상기 ECS 커맨드를 생성하는 코드디코더를 포함하는 반도체장치.
  11. ECS 커맨드 및 에러체크수행신호를 토대로 에러체크동작을 수행하기 위한 ECS 액티브커맨드를 생성한 이후 ECS 리드커맨드를 연속적으로 생성하는 ECS 제어회로; 및
    상기 에러체크동작 시 상기 ECS 액티브커맨드 및 상기 ECS 리드커맨드가 입력될 때마다 순차적으로 카운팅되는 로우어드레스 및 컬럼어드레스를 선택로우어드레스 및 선택컬럼어드레스로 출력하되, 에러플래그신호가 입력될 때 카운팅된 상기 로우어드레스 및 컬럼어드레스를 저장하는 선택어드레스생성회로를 포함하는 반도체장치.
  12. 제 11 항에 있어서, 상기 에러체크동작은 메모리뱅크에 저장된 코드워드를 연속적으로 출력하고, 상기 코드워드의 에러 유무를 감지하는 동작인 반도체장치.
  13. 제 11 항에 있어서, 상기 ECS 제어회로는
    상기 ECS 커맨드 및 상기 에러체크수행신호를 토대로 ECS 동작을 수행하기 위한 상기 ECS 액티브커맨드, 상기 ECS 리드커맨드, ECS 라이트커맨드, ECS 프리차지신호 및 종료신호를 생성하는 반도체장치.
  14. 제 11 항에 있어서, 상기 선택어드레스생성회로는
    상기 체크플래그신호가 디스에이블될 때 순차적으로 카운팅되는 상기 로우어드레스 및 상기 컬럼어드레스를 상기 선택로우어드레스 및 상기 선택컬럼어드레스로 출력하고,
    상기 체크플래그신호가 인에이블될 때 저장된 상기 로우어드레스와 상기 컬럼어드레스를 상기 선택로우어드레스 및 상기 선택컬럼어드레스로 출력하는 반도체장치.
  15. 제 11 항에 있어서, 상기 ECS 제어회로는
    상기 에러체크수행신호가 디스에이블되는 구간 동안 상기 ECS 커맨드가 입력될 때 상기 ECS 액티브커맨드를 생성한 이후 상기 ECS 리드커맨드를 연속적으로 생성하며, ECS 프리차지신호 및 종료신호를 생성하고,
    상기 에러체크수행신호가 인에이블되는 구간 동안 상기 ECS 커맨드가 입력될 때 상기 ECS 액티브커맨드, 상기 ECS 리드커맨드, ECS 라이트커맨드, 상기 ECS 프리차지신호 및 상기 종료신호를 순차적으로 생성하는 반도체장치.
  16. 제 15 항에 있어서, 상기 ECS 제어회로는
    상기 ECS 커맨드가 입력될 때 마다 카운팅되는 클럭코드신호를 생성하고, 상기 종료신호가 입력될 때 초기화되는 상기 클럭코드신호를 생성하는 클럭코드생성회로;
    상기 에러체크수행신호가 디스에이블되는 구간 동안 상기 클럭코드신호의 로직레벨조합에 따라 상기 ECS 액티브커맨드, 상기 ECS 리드커맨드, 상기 ECS 프리차지신호 및 상기 종료신호를 생성하는 체크디코더; 및
    상기 에러체크수행신호가 인에이블되는 구간 동안 상기 클럭코드신호의 로직레벨조합에 따라 상기 ECS 액티브커맨드, 상기 ECS 리드커맨드, 상기 ECS 라이트커맨드, 상기 ECS 프리차지신호 및 상기 종료신호를 생성하는 동작디코더를 포함하는 반도체장치.
  17. 제 16 항에 있어서, 상기 클럭코드생성회로는
    상기 ECS 커맨드가 입력되는 시점부터 상기 상기 종료신호가 입력되는 시점까지 인에이블되는 ECS 모드신호를 생성하는 ECS 모드신호생성회로;
    상기 ECS 모드신호의 인에이블 구간 동안 토글링하는 주기신호를 생성히는 주기신호생성회로; 및
    상기 주기신호의 펄스가 입력될 때 마다 카운팅되는 상기 클럭코드를 생성하고, 상기 주기신호의 펄스가 입력되지 않을 때 상기 클럭코드를 초기화하는 클럭카운터를 포함하는 반도체장치.
  18. 제 11 항에 있어서, 상기 선택어드레스생성회로는
    상기 ECS 액티브커맨드, 상기 ECS 리드커맨드 및 ECS 라이트커맨드가 입력될 때마다 순차적으로 카운팅되는 상기 로우어드레스 및 상기 컬럼어드레스를 생성하는 어드레스카운터;
    에러플래그신호가 인에이블되는 구간 동안 상기 ECS 리드커맨드를 토대로 입력제어신호 및 출력제어신호를 생성하는 입출력제어신호생성회로;
    상기 입력제어신호가 입력될 때 상기 로우어드레스 및 상기 컬럼어드레스를저장하고, 상기 출력제어신호가 입력될 때 저장된 상기 로우어드레스 및 상기 컬럼어드레스를 파이프로우어드레스 및 파이프컬럼어드레스로 출력하는 어드레스파이프; 및
    상기 체크플래그신호의 로직레벨에 따라 상기 로우어드레스 및 상기 컬럼어드레스를 상기 선택로우어드레스 및 상기 선택컬럼어드레스로로 출력하거나 상기 파이프로우어드레스 및 상기 파이프컬럼어드레스를 상기 선택로우어드레스 및 상기 선택컬럼어드레스로로 출력하는 어드레스선택회로를 포함하는 반도체장치.
  19. 제 11 항에 있어서,
    상기 선택로우어드레스 및 상기 선택컬럼어드레스에 의해 선택적으로 활성화되는 다수의 워드라인에 저장된 코드워드를 출력하거나 상기 코드워드를 저장하는메모리뱅크를 더 포함하는 반도체장치.
  20. 제 19 항에 있어서, 상기 코드워드는 제1 코드워드 및 제2 코드워드를 포함하고,
    상기 메모리뱅크는 상기 선택로우어드레스 및 상기 선택컬럼어드레스에 의해 선택적으로 활성화되는 제1 워드라인에 저장된 상기 제1 코드워드 출력하거나 상기 제1 코드워드를 저장하는 제1 영역; 및
    상기 메모리뱅크는 상기 선택로우어드레스 및 상기 선택컬럼어드레스에 의해 선택적으로 활성화되는 제2 워드라인에 저장된 상기 제2 코드워드 출력하거나 상기 제2 코드워드를 저장하는 제2 영역을 포함하는 반도체장치.
KR1020210158952A 2021-11-17 2021-11-17 반도체장치 KR20230072336A (ko)

Priority Applications (3)

Application Number Priority Date Filing Date Title
KR1020210158952A KR20230072336A (ko) 2021-11-17 2021-11-17 반도체장치
US17/695,150 US20230153194A1 (en) 2021-11-17 2022-03-15 Semiconductor device
CN202210540329.1A CN116137177A (zh) 2021-11-17 2022-05-17 半导体器件

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020210158952A KR20230072336A (ko) 2021-11-17 2021-11-17 반도체장치

Publications (1)

Publication Number Publication Date
KR20230072336A true KR20230072336A (ko) 2023-05-24

Family

ID=86323451

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020210158952A KR20230072336A (ko) 2021-11-17 2021-11-17 반도체장치

Country Status (3)

Country Link
US (1) US20230153194A1 (ko)
KR (1) KR20230072336A (ko)
CN (1) CN116137177A (ko)

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9170639B2 (en) * 2013-04-09 2015-10-27 International Business Machines Corporation Method and apparatus for mitigating effects of memory scrub operations on idle time power savings modes
US9817714B2 (en) * 2015-08-28 2017-11-14 Intel Corporation Memory device on-die error checking and correcting code
KR20180060084A (ko) * 2016-11-28 2018-06-07 삼성전자주식회사 반도체 메모리 장치의 스크러빙 컨트롤러, 반도체 메모리 장치 및 반도체 메모리 장치의 동작 방법
US20190161341A1 (en) * 2017-11-28 2019-05-30 Micron Technology, Inc. Systems and methods for temperature sensor access in die stacks
KR102393427B1 (ko) * 2017-12-19 2022-05-03 에스케이하이닉스 주식회사 반도체장치 및 반도체시스템
US11221910B2 (en) * 2018-07-24 2022-01-11 Micron Technology, Inc. Media scrubber in memory system
US11249843B2 (en) * 2019-11-07 2022-02-15 SK Hynix Inc. Semiconductor devices and semiconductor systems including the same
US11797215B2 (en) * 2021-12-09 2023-10-24 SK Hynix Inc. Memory device and memory system performing error check and scrub operation

Also Published As

Publication number Publication date
CN116137177A (zh) 2023-05-19
US20230153194A1 (en) 2023-05-18

Similar Documents

Publication Publication Date Title
US9990251B2 (en) Semiconductor system with a column control circuit
US11164651B2 (en) Semiconductor devices and semiconductor systems including the same
US10572341B2 (en) Semiconductor devices
US10379947B2 (en) Semiconductor device
US11354189B2 (en) Semiconductor devices and semiconductor systems including the same
US11249843B2 (en) Semiconductor devices and semiconductor systems including the same
KR20190060258A (ko) 에러스크럽방법 및 이를 이용한 반도체모듈
US11461167B2 (en) Semiconductor devices
TWI752120B (zh) 半導體裝置
US11145351B2 (en) Semiconductor devices
US10319455B2 (en) Semiconductor device
US20170344422A1 (en) Semiconductor devices and semiconductor systems
US11276451B2 (en) Error correction methods and semiconductor devices and semiconductor systems using the same
KR20230072336A (ko) 반도체장치
KR20180027655A (ko) 테스트방법 및 이를 이용한 반도체시스템
US10181863B2 (en) Semiconductor devices and semiconductor systems
US11599413B2 (en) Electronic system including error calculation circuit for performing error correction operation
US11921578B2 (en) Error correction methods and semiconductor devices and semiconductor systems using the error correction methods and the semiconductor devices
US10014073B2 (en) Semiconductor devices
KR20180086817A (ko) 반도체장치
KR20210070138A (ko) 반도체장치
US20170336471A1 (en) Semiconductor devices