KR20180081282A - 반도체장치 - Google Patents
반도체장치 Download PDFInfo
- Publication number
- KR20180081282A KR20180081282A KR1020170002330A KR20170002330A KR20180081282A KR 20180081282 A KR20180081282 A KR 20180081282A KR 1020170002330 A KR1020170002330 A KR 1020170002330A KR 20170002330 A KR20170002330 A KR 20170002330A KR 20180081282 A KR20180081282 A KR 20180081282A
- Authority
- KR
- South Korea
- Prior art keywords
- signal
- bank
- error scrub
- error
- active
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C7/00—Arrangements for writing information into, or reading information out from, a digital store
- G11C7/10—Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
- G11C7/1048—Data bus control circuits, e.g. precharging, presetting, equalising
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C11/00—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C11/21—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
- G11C11/34—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
- G11C11/40—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
- G11C11/401—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors forming cells needing refreshing or charge regeneration, i.e. dynamic cells
- G11C11/406—Management or control of the refreshing or charge-regeneration cycles
- G11C11/40615—Internal triggering or timing of refresh, e.g. hidden refresh, self refresh, pseudo-SRAMs
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1008—Adding 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/1048—Adding 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/106—Correcting systematically all correctable errors, i.e. scrubbing
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C11/00—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C11/21—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
- G11C11/34—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
- G11C11/40—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
- G11C11/401—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors forming cells needing refreshing or charge regeneration, i.e. dynamic cells
- G11C11/406—Management or control of the refreshing or charge-regeneration cycles
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C11/00—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C11/21—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
- G11C11/34—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
- G11C11/40—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
- G11C11/401—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors forming cells needing refreshing or charge regeneration, i.e. dynamic cells
- G11C11/406—Management or control of the refreshing or charge-regeneration cycles
- G11C11/40618—Refresh operations over multiple banks or interleaving
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/04—Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
- G11C29/08—Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
- G11C29/12—Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
- G11C29/38—Response verification devices
- G11C29/42—Response verification devices using error correcting codes [ECC] or parity check
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/52—Protection of memory contents; Detection of errors in memory contents
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C11/00—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C11/21—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
- G11C11/34—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
- G11C11/40—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
- G11C11/401—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors forming cells needing refreshing or charge regeneration, i.e. dynamic cells
- G11C11/4063—Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing
- G11C11/407—Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing for memory cells of the field-effect type
- G11C11/409—Read-write [R-W] circuits
- G11C11/4094—Bit-line management or control circuits
Landscapes
- Engineering & Computer Science (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Computer Hardware Design (AREA)
- Theoretical Computer Science (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Dram (AREA)
Abstract
반도체장치는 리프레쉬신호에 응답하여 생성되는 뱅크액티브신호 및 로우어드레스신호에 응답하여 뱅크에 포함된 메모리셀들에 대한 에러스크럽동작을 수행하기 위한 에러스크럽프리차지신호, 에러스크럽뱅크신호, 에러스크럽리드신호, 에러스크럽라이트신호 및 컬럼어드레스신호를 생성하는 에러스크럽제어회로; 및 상기 에러스크럽뱅크신호에 응답하여 상기 뱅크액티브신호 및 상기 에러스크럽프리차지신호로부터 액티브구간신호를 생성하는 액티브구간신호생성회로를 포함한다.
Description
본 발명은 에러스크럽 동작을 수행하는 반도체장치에 관한 것이다.
최근 반도체장치의 동작속도를 증가시키기 위해 클럭 사이클(cycle)마다 4비트 또는 8비트의 데이터를 입/출력하는 DDR2, DDR3 방식 등이 사용되고 있다. 데이터의 입/출력 속도가 빨라지는 경우 데이터가 전송되는 과정 중 발생되는 에러의 발생 확률도 증가 되므로, 데이터 전송의 신뢰성을 보장하기 위한 별도의 장치와 방법이 추가적으로 요구되고 있다.
데이터 전송 시마다 에러 발생 여부를 확인할 수 있는 에러코드를 생성하여 데이터와 함께 전송함으로써, 데이터 전송의 신뢰성을 보장하는 방법을 사용하고 있다. 에러코드에는 발생한 에러를 검출할 수 있는 에러검출코드(Error Detection Code, EDC)와, 에러 발생시 이를 자체적으로 정정할 수 있는 에러정정코드(Error Correction Code, ECC) 등이 있다.
본 발명은 에러코드를 이용하여 에러스크럽동작을 수행하는 반도체장치를 제공한다.
이를 위해 본 발명은 리프레쉬신호에 응답하여 생성되는 뱅크액티브신호 및 로우어드레스신호에 응답하여 뱅크에 포함된 메모리셀들에 대한 에러스크럽동작을 수행하기 위한 에러스크럽프리차지신호, 에러스크럽뱅크신호, 에러스크럽리드신호, 에러스크럽라이트신호 및 컬럼어드레스신호를 생성하는 에러스크럽제어회로; 및 상기 에러스크럽뱅크신호에 응답하여 상기 뱅크액티브신호 및 상기 에러스크럽프리차지신호로부터 액티브구간신호를 생성하는 액티브구간신호생성회로를 포함하는 반도체장치를 제공한다.
또한, 본 발명은 리프레쉬신호에 응답하여 생성되는 제1 뱅크액티브신호, 제2 뱅크액티브신호 및 로우어드레스신호에 응답하여 뱅크에 포함된 메모리셀들에 대한 에러스크럽동작을 수행하기 위한 에러스크럽뱅크신호를 생성하는 에러스크럽제어회로; 상기 에러스크럽뱅크신호에 응답하여 상기 제1 뱅크액티브신호 및 에러스크럽프리차지신호에 응답하여 제1 액티브구간신호를 생성하는 제1 액티브구간신호생성회로; 및 상기 에러스크럽뱅크신호에 응답하여 상기 제1 뱅크액티브신호, 상기 제2 뱅크액티브신호 및 상기 에러스크럽프리차지신호에 응답하여 제2 액티브구간신호를 생성하는 제2 액티브구간신호생성회로를 포함하는 반도체장치를 제공한다.
본 발명에 의하면 리프레쉬동작 중 에러코드를 이용한 에러스크럽동작을 수행함으로써, 데이터에 포함된 에러를 정정할 수 있는 효과가 있다.
도 1은 본 발명의 일 실시예에 따른 반도체장치의 구성을 도시한 블럭도이다.
도 2는 도 1에 도시된 반도체장치에 포함된 에러스크럽제어회로의 일 실시예에 따른 블럭도이다.
도 3은 도 1에 도시된 반도체장치에 포함된 액티브구간신호생성회로의 일 실시예에 따른 블럭도이다.
도 4는 도 1에 도시된 반도체장치에 포함된 에러스크럽동작회로의 일 실시예에 따른 블럭도이다.
도 5는 본 발명의 일 실시예에 따른 반도체장치에 포함된 뱅크들의 일 실시예에 따른 구조를 도시한 도면이다.
도 6 및 도 7은 본 발명의 일 실시예에 따른 반도체장치의 에러스크럽동작을 설명하기 위한 타이밍도이다.
도 8은 도 1 내지 도 7에 도시된 반도체장치가 적용된 전자시스템의 일 실시예에 따른 구성을 도시한 도면이다.
도 9는 도 1 내지 도 7에 도시된 반도체장치가 적용된 전자시스템의 다른 실시예에 따른 구성을 도시한 도면이다.
도 2는 도 1에 도시된 반도체장치에 포함된 에러스크럽제어회로의 일 실시예에 따른 블럭도이다.
도 3은 도 1에 도시된 반도체장치에 포함된 액티브구간신호생성회로의 일 실시예에 따른 블럭도이다.
도 4는 도 1에 도시된 반도체장치에 포함된 에러스크럽동작회로의 일 실시예에 따른 블럭도이다.
도 5는 본 발명의 일 실시예에 따른 반도체장치에 포함된 뱅크들의 일 실시예에 따른 구조를 도시한 도면이다.
도 6 및 도 7은 본 발명의 일 실시예에 따른 반도체장치의 에러스크럽동작을 설명하기 위한 타이밍도이다.
도 8은 도 1 내지 도 7에 도시된 반도체장치가 적용된 전자시스템의 일 실시예에 따른 구성을 도시한 도면이다.
도 9는 도 1 내지 도 7에 도시된 반도체장치가 적용된 전자시스템의 다른 실시예에 따른 구성을 도시한 도면이다.
이하, 실시예를 통하여 본 발명을 더욱 상세히 설명하기로 한다. 이들 실시예는 단지 본 발명을 예시하기 위한 것이며, 본 발명의 권리 보호 범위가 이들 실시예에 의해 제한되는 것은 아니다.
도 1에 도시된 바와 같이, 본 발명의 일실시예에 따른 반도체장치는 커맨드디코더(1), 리프레쉬제어회로(2), 에러스크럽제어회로(3), 액티브구간신호생성회로(4), 에러스크럽디코더(5) 및 에러스크럽동작회로(6)를 포함할 수 있다.
커맨드디코더(1)는 외부제어신호(CA<1:L>)에 응답하여 리프레쉬신호(REF)를 생성할 수 있다. 외부제어신호(CA<1:L>)는 커맨드 및 어드레스 중 적어도 하나를 포함할 수 있다. 커맨드디코더(1)는 외부제어신호(CA<1:L>)에 포함된 커맨드를 디코딩하여 리프레쉬신호(REF)를 생성할 수 있다. 리프레쉬신호(REF)는 에러스크럽동작을 포함한 리프레쉬동작을 위해 인에이블될 수 있다. 리프레쉬신호(REF)는 인에이블되는 경우 발생되는 펄스를 포함할 수 있다. 외부제어신호(CA<1:L>)의 비트 수(L)는 실시예에 따라서 다양하게 설정될 수 있다.
리프레쉬제어회로(2)는 리프레쉬신호(REF)에 응답하여 제1 내지 제4 뱅크액티브신호(BACT<1:4>) 및 로우어드레스신호(RA<1:M>)를 생성할 수 있다. 리프레쉬제어회로(2)는 리프레쉬신호(REF)가 인에이블되는 경우 에러스크럽동작을 위해 선택적으로 인에이블되는 비트를 포함하는 제1 내지 제4 뱅크액티브신호(BACT<1:4>) 및 로우어드레스신호(RA<1:M>)를 생성할 수 있다. 제1 내지 제4 뱅크액티브신호(BACT<1:4>)는 각각 인에이블되는 경우 발생되는 펄스를 포함할 수 있다. 예를 들어, 리프레쉬제어회로(2)는 에러스크럽동작을 위해 제1 뱅크액티브신호(BACT<1>)가 인에이블된 상태에서 로우어드레스신호(RA<1:M>)에 포함된 비트들의 논리레벨조합에 따라 액티브동작이 수행되는 뱅크(미도시)에 포함된 워드라인들(미도시)을 순차적으로 활성화될 수 있다. 워드라인들(미도시) 각각을 활성화시키는 로우어드레스신호(RA<1:M>)에 포함된 비트들의 논리레벨조합은 실시예에 따라서 다양하게 설정할 수 있다. 본 실시예에 따른 반도체장치는 4개의 뱅크를 포함하는 경우로 한정하여 설명하였지만 실시예에 따라서 다양한 개수의 뱅크가 포함되도록 구현될 수도 있다. 로우어드레스신호(RA<1:M>)에 포함된 비트 수(M)는 실시예에 따라서 다양하게 설정될 수 있다.
에러스크럽제어회로(3)는 제1 뱅크액티브신호(BACT<1>) 및 로우어드레스신호(RA<1:M>)에 응답하여 에러스크럽프리차지신호(ES_PRE), 제1 및 제2 에러스크럽뱅크신호(ES_BANK<1:2>), 에러스크럽리드신호(ES_RD), 에러스크럽라이트신호(ES_WT) 및 컬럼어드레스신호(COL<1:N>)를 생성할 수 있다. 에러스크럽제어회로(3)는 제1 뱅크액티브신호(BACT<1>)에 응답하여 에러스크럽리드신호(ES_RD), 에러스크럽라이트신호(ES_WT) 및 에러스크럽프리차지신호(ES_PRE)를 생성할 수 있다. 에러스크럽제어회로(3)는 제1 뱅크액티브신호(BACT<1>)를 지연시켜 순차적으로 인에이블되는 에러스크럽리드신호(ES_RD), 에러스크럽라이트신호(ES_WT) 및 에러스크럽프리차지신호(ES_PRE)를 생성할 수 있다. 에러스크럽리드신호(ES_RD), 에러스크럽라이트신호(ES_WT) 및 에러스크럽프리차지신호(ES_PRE) 각각은 인에이블되는 경우 발생되는 펄스를 포함할 수 있다. 실시예에 따라서 에러스크럽제어회로(3)는 제2 내지 제4 뱅크액티브신호(BACT<2:4>) 중 적어도 하나의 신호에 응답하여 에러스크럽리드신호(ES_RD), 에러스크럽라이트신호(ES_WT) 및 에러스크럽프리차지신호(ES_PRE)를 생성하도록 구현할 수도 있다. 에러스크럽제어회로(3)는 로우어드레스신호(RA<1:M>)에 응답하여 제1 및 제2 에러스크럽뱅크신호(ES_BANK<1:2>)와 컬럼어드레스신호(COL<1:N>)를 생성할 수 있다. 에러스크럽제어회로(3)는 로우어드레스신호(RA<1:M>)를 감지하여 액티브동작이 수행되는 뱅크(미도시)에 포함된 모든 워드라인이 순차적으로 활성화되는 경우 제1 및 제2 에러스크럽뱅크신호(ES_BANK<1:2>)를 카운팅할 수 있다. 예를 들어, 제1 및 제2 에러스크럽뱅크신호(ES_BANK<1:2>)가 'L,L'인 상태에서 에러스크럽동작이 수행되는 뱅크에 포함된 모든 로우어드레스가 순차적으로 인에이블되어 로우어드레스신호(RA<1:M>)에 포함된 비트들이 기설정된 논리레벨조합으로 감지되는 경우 제1 및 제2 에러스크럽뱅크신호(ES_BANK<1:2>)가 'L,H'로 카운팅된다. 에러스크럽제어회로(3)는 제1 및 제2 에러스크럽뱅크신호(ES_BANK<1:2>)를 감지하여 컬럼어드레스신호(COL<1:N>)를 카운팅할 수 있다. 예를 들어, 제1 및 제2 에러스크럽뱅크신호(ES_BANK<1:2>)가 'L,L', 'L,H', 'H,L', 'H,H'로 순차적으로 카운팅되어 제1 및 제2 에러스크럽뱅크신호(ES_BANK<1:2>)가 'H,H'로 설정됨이 감지되는 경우 에러스크럽제어회로(3)는 컬럼어드레스신호(COL<1:N>)를 카운팅할 수 있다. 컬럼어드레스신호(COL<1:N>)가 카운팅됨에 따라 액티브동작이 수행되는 뱅크(미도시)에 포함된 모든 비트라인들(미도시)이 순차적으로 엑세스될 수 있다. 비트라인이 엑세스되는 경우라 함은 비트라인에 데이터가 실려 외부로 출력되거나 비트라인에 실려 메모리셀에 입력될 수 있는 상태를 의미한다. 제1 및 제2 에러스크럽뱅크신호(ES_BANK<1:2>)가 'L,H'로 설정된 경우라 함은 제1 에러스크럽뱅크신호(ES_BANK<1>)가 로직하이레벨이고, 제2 에러스크럽뱅크신호(ES_BANK<2>)가 로직로우레벨로 설정됨을 의미한다.
액티브구간신호생성회로(4)는 제1 및 제2 에러스크럽뱅크신호(ES_BANK<1:2>)에 응답하여 제1 내지 제4 뱅크액티브신호(BACT<1:4>) 및 에러스크럽프리차지신호(ES_PRE)로부터 제1 내지 제4 액티브구간신호(ACT_PD<1:4>)를 생성할 수 있다. 액티브구간신호생성회로(4)는 제1 및 제2 에러스크럽뱅크신호(ES_BANK<1:2>)의 논리레벨조합에 따라 제1 뱅크액티브신호(BACT<1>) 및 에러스크럽프리차지신호(ES_PRE)로부터 제1 내지 제4 액티브구간신호(ACT_PD<1:4>) 중 하나의 인에이블구간을 설정할 수 있다. 액티브구간신호생성회로(4)는 제1 및 제2 에러스크럽뱅크신호(ES_BANK<1:2>)의 논리레벨조합이 'L,L'인 경우 제1 뱅크액티브신호(BACT<1>)에 동기하여 인에이블되고, 에러스크럽프리차지신호(ES_PRE)에 동기하여 디스에이블되는 제1 액티브구간신호(ACT_PD<1>)를 생성할 수 있다. 액티브구간신호생성회로(4)는 제1 및 제2 에러스크럽뱅크신호(ES_BANK<1:2>)의 논리레벨조합이 'L,H'인 경우 제1 뱅크액티브신호(BACT<1>)에 동기하여 인에이블되고, 에러스크럽프리차지신호(ES_PRE)에 동기하여 디스에이블되는 제2 액티브구간신호(ACT_PD<2>)를 생성할 수 있다. 액티브구간신호생성회로(4)는 제1 및 제2 에러스크럽뱅크신호(ES_BANK<1:2>)의 논리레벨조합이 'H,L'인 경우 제1 뱅크액티브신호(BACT<1>)에 동기하여 인에이블되고, 에러스크럽프리차지신호(ES_PRE)에 동기하여 디스에이블되는 제3 액티브구간신호(ACT_PD<3>)를 생성할 수 있다. 액티브구간신호생성회로(4)는 제1 및 제2 에러스크럽뱅크신호(ES_BANK<1:2>)의 논리레벨조합이 'H,H'인 경우 제1 뱅크액티브신호(BACT<1>)에 동기하여 인에이블되고, 에러스크럽프리차지신호(ES_PRE)에 동기하여 디스에이블되는 제4 액티브구간신호(ACT_PD<4>)를 생성할 수 있다. 액티브구간신호생성회로(4)는 에러스크럽동작이 수행되지 않고 일반적인 리프레쉬동작이 수행되는 경우에는 제1 내지 제4 뱅크액티브신호(BACT<1:4>)로부터 제1 내지 제4 액티브구간신호(ACT_PD<1:4>)를 생성할 수 있다. 에러스크럽동작이 수행되지 않는 경우 제1 및 제2 에러스크럽뱅크신호(ES_BANK<1:2>)는 논리레벨조합을 갖지 않는 상태, 예를 들어 Hi-z 상태 등으로 설정될 수 있다. 액티브구간신호생성회로(4)는 에러스크럽동작이 수행되지 않는 경우 제1 뱅크액티브신호(BACT<1>)에 의해 인에이블구간이 설정되는 제1 액티브구간신호(ACT_PD<1>)를 생성할 수 있고, 제2 뱅크액티브신호(BACT<2>)에 의해 인에이블구간이 설정되는 제2 액티브구간신호(ACT_PD<2>)를 생성할 수 있으며, 제3 뱅크액티브신호(BACT<3>)에 의해 인에이블구간이 설정되는 제3 액티브구간신호(ACT_PD<3>)를 생성할 수 있고, 제4 뱅크액티브신호(BACT<4>)에 의해 인에이블구간이 설정되는 제4 액티브구간신호(ACT_PD<4>)를 생성할 수 있다.
에러스크럽디코더(5)는 제1 및 제2 에러스크럽뱅크신호(ES_BANK<1:2>), 에러스크럽리드신호(ES_RD) 및 에러스크럽라이트신호(ES_WT)에 응답하여 제1 내지 제4 디코딩리드신호(ES_R<1:4>)와 제1 내지 제4 디코딩라이트신호(ES_W<1:4>)를 생성할 수 있다. 에러스크럽디코더(5)는 제1 및 제2 에러스크럽뱅크신호(ES_BANK<1:2>)의 논리레벨조합에 따라 제1 내지 제4 뱅크(미도시)에 대한 리드동작 또는 라이트동작을 수행하기 위해 선택적으로 인에이블되는 비트를 포함하는 제1 내지 제4 디코딩리드신호(ES_R<1:4>)와 제1 내지 제4 디코딩라이트신호(ES_W<1:4>)를 생성할 수 있다. 에러스크럽디코더(5)는 제1 및 제2 에러스크럽뱅크신호(ES_BANK<1:2>)의 논리레벨조합이 'L,L'인 경우 제1 뱅크(미도시)의 리드동작을 위해 인에이블되는 제1 디코딩리드신호(ES_R<1>)와 제1 뱅크(미도시)의 라이트동작을 위해 인에이블되는 제1 디코딩라이트신호(ES_W<1>)를 순차적으로 생성할 수 있다. 에러스크럽디코더(5)는 제1 및 제2 에러스크럽뱅크신호(ES_BANK<1:2>)의 논리레벨조합이 'L,H'인 경우 제2 뱅크(미도시)의 리드동작을 위해 인에이블되는 제2 디코딩리드신호(ES_R<2>)와 제2 뱅크(미도시)의 라이트동작을 위해 인에이블되는 제2 디코딩라이트신호(ES_W<2>)를 순차적으로 생성할 수 있다. 에러스크럽디코더(5)는 제1 및 제2 에러스크럽뱅크신호(ES_BANK<1:2>)의 논리레벨조합이 'H,L'인 경우 제3 뱅크(미도시)의 리드동작을 위해 인에이블되는 제3 디코딩리드신호(ES_R<3>)와 제3 뱅크(미도시)의 라이트동작을 위해 인에이블되는 제3 디코딩라이트신호(ES_W<3>)를 순차적으로 생성할 수 있다. 에러스크럽디코더(5)는 제1 및 제2 에러스크럽뱅크신호(ES_BANK<1:2>)의 논리레벨조합이 'H,H'인 경우 제4 뱅크(미도시)의 리드동작을 위해 인에이블되는 제4 디코딩리드신호(ES_R<4>)와 제4 뱅크(미도시)의 라이트동작을 위해 인에이블되는 제4 디코딩라이트신호(ES_W<4>)를 순차적으로 생성할 수 있다.
에러스크럽동작회로(6)는 제1 내지 제4 디코딩리드신호(ES_R<1:4>), 제1 내지 제4 디코딩라이트신호(ES_W<1:4>), 로우어드레스신호(RA<1:M>) 및 컬럼어드레스신호(COL<1:N>)에 응답하여 제1 내지 제4 뱅크(미도시)에 대한 에러스크럽동작을 수행할 수 있다. 에러스크럽동작회로(6)는 제1 디코딩리드신호(ES_R<1>) 및 제1 디코딩라이트신호(ES_W<1>)가 순차적으로 인에이블되는 경우 제1 뱅크(미도시)에 포함된 비트라인들(미도시) 중 컬럼어드레스신호(COL<1:N>)에 의해 엑세스되는 비트라인(미도시)을 통해 리드동작 및 라이트동작을 순차적으로 수행할 수 있다. 에러스크럽동작회로(6)는 제2 디코딩리드신호(ES_R<2>) 및 제2 디코딩라이트신호(ES_W<2>)가 순차적으로 인에이블되는 경우 제2 뱅크(미도시)에 포함된 비트라인들(미도시) 중 컬럼어드레스신호(COL<1:N>)에 의해 엑세스되는 비트라인(미도시)을 통해 리드동작 및 라이트동작을 순차적으로 수행할 수 있다. 에러스크럽동작회로(6)는 제3 디코딩리드신호(ES_R<3>) 및 제3 디코딩라이트신호(ES_W<3>)가 순차적으로 인에이블되는 경우 제3 뱅크(미도시)에 포함된 비트라인들(미도시) 중 로우어드레스신호(RA<1:M>) 및 컬럼어드레스신호(COL<1:N>)에 의해 엑세스되는 비트라인(미도시)을 통해 리드동작 및 라이트동작을 순차적으로 수행할 수 있다. 에러스크럽동작회로(6)는 제4 디코딩리드신호(ES_R<4>) 및 제4 디코딩라이트신호(ES_W<4>)가 순차적으로 인에이블되는 경우 제4 뱅크(미도시)에 포함된 비트라인들(미도시) 중 로우어드레스신호(RA<1:M>) 및 컬럼어드레스신호(COL<1:N>)에 의해 엑세스되는 비트라인(미도시)을 통해 리드동작 및 라이트동작을 순차적으로 수행할 수 있다.
도 2를 참고하면 에러스크럽제어회로(3)는 에러스크럽커맨드생성회로(31) 및 에러스크럽어드레스생성회로(32)를 포함할 수 있다.
에러스크럽커맨드생성회로(31)는 제1 지연회로(311), 제2 지연회로(312) 및 제3 지연회로(313)를 포함할 수 있다. 제1 지연회로(311)는 제1 뱅크액티브신호(BACT<1>)를 기설정된 제1 지연구간만큼 지연시켜 에러스크럽리드신호(ES_RD)를 생성할 수 있다. 제2 지연회로(312)는 에러스크럽리드신호(ES_RD)를 기설정된 제2 지연구간만큼 지연시켜 에러스크럽라이트신호(ES_WT)를 생성할 수 있다. 제3 지연회로(313)는 에러스크럽라이트신호(ES_WT)를 기설정된 제3 지연구간만큼 지연시켜 에러스크럽프리차지신호(ES_PRE)를 생성할 수 있다. 에러스크럽리드신호(ES_RD)는 제1 뱅크액티브신호(BACT<1>)가 인에이블된 시점부터 제1 지연구간이 경과된 시점에서 인에이블될 수 있다. 에러스크럽라이트신호(ES_WT)는 에러스크럽리드신호(ES_RD)가 인에이블된 시점부터 제2 지연구간이 경과된 시점에서 인에이블될 수 있다. 에러스크럽프리차지신호(ES_PRE)는 에러스크럽라이트신호(ES_WT)가 인에이블된 시점부터 제3 지연구간이 경과된 시점에서 인에이블될 수 있다. 제1 내지 제3 지연구간은 실시예에 따라서 다양하게 설정될 수 있다.
에러스크럽어드레스생성회로(32)는 제1 감지회로(321), 제1 카운터(322), 제2 감지회로(323) 및 제2 카운터(324)를 포함할 수 있다. 제1 감지회로(321)는 로우어드레스신호(RA<1:M>)에 응답하여 제1 감지신호(DET1)를 생성할 수 있다. 제1 감지회로(321)는 로우어드레스신호(RA<1:M>)의 논리레벨조합이 각각의 뱅크(미도시)에 포함된 마지막 워드라인에 대응하는 경우 인에이블되는 제1 감지신호(DET1)를 생성할 수 있다. 로우어드레스신호(RA<1:M>)의 제1 논리레벨조합이 각각의 뱅크(미도시)에 포함된 첫번째 워드라인에 대응하고, 로우어드레스신호(RA<1:M>)의 제K 논리레벨조합이 각각의 뱅크(미도시)에 포함된 마지막 워드라인에 대응하는 경우 제1 감지회로(321)는 로우어드레스신호(RA<1:M>)의 제K 논리레벨조합이 입력될 때 인에이블되는 제1 감지신호(DET1)를 생성할 수 있다. 제1 감지신호(DET1)는 인에이블될 때마다 발생되는 펄스를 포함할 수 있다. 제1 카운터(322)는 제1 감지신호(DET1)에 응답하여 제1 및 제2 에러스크럽뱅크신호(ES_BANK<1:2>)를 생성할 수 있다. 제1 카운터(322)는 제1 감지신호(DET1)가 인에이블되는 시점에 동기하여 순차적으로 카운팅되는 제1 및 제2 에러스크럽뱅크신호(ES_BANK<1:2>)를 생성할 수 있다. 제1 및 제2 에러스크럽뱅크신호(ES_BANK<1:2>)는 'L,L', 'L,H', 'H,L', 'H,H'의 순서로 순차적으로 카운팅될 수 있다. 제2 감지회로(323)는 제1 및 제2 에러스크럽뱅크신호(ES_BANK<1:2>)에 응답하여 제2 감지신호(DET2)를 생성할 수 있다. 제2 감지회로(323)는 제1 및 제2 에러스크럽뱅크신호(ES_BANK<1:2>)의 논리레벨조합이 마지막 뱅크(미도시)에 대응하는 경우 인에이블되는 제2 감지신호(DET2)를 생성할 수 있다. 제2 감지회로(323)는 제1 및 제2 에러스크럽뱅크신호(ES_BANK<1:2>)의 논리레벨조합이 'H,H'인 경우 인에이블되는 제2 감지신호(DET2)를 생성할 수 있다. 제2 감지신호(DET2)는 인에이블될 때마다 발생되는 펄스를 포함할 수 있다. 제2 카운터(324)는 제1 감지신호(DET1) 및 제2 감지신호(DET2)에 응답하여 컬럼어드레스신호(COL<1:N>)를 생성할 수 있다. 제2 카운터(324)는 제1 감지신호(DET1) 및 제2 감지신호(DET2)가 인에이블되는 시점에 동기하여 순차적으로 카운팅되는 컬럼어드레스신호(COL<1:N>)를 생성할 수 있다. 컬럼어드레스신호(COL<1:N>)는 각각의 뱅크(미도시)에 포함된 비트라인들(미도시)을 순차적으로 엑세스하기 위해 1비트씩 증가되도록 카운팅될 수 있다.
도 3을 참고하면 액티브구간신호생성회로(4)는 제1 액티브구간신호생성회로(41), 제2 액티브구간신호생성회로(42), 제3 액티브구간신호생성회로(43) 및 제4 액티브구간신호생성회로(44)를 포함할 수 있다.
제1 액티브구간신호생성회로(41)는 제1 선택기(411), 제1 구간신호생성기(412), 제1 구간설정기(413) 및 제2 선택기(414)를 포함할 수 있다. 제1 선택기(411)는 제1 및 제2 에러스크럽뱅크신호(ES_BANK<1:2>)에 응답하여 제1 뱅크액티브신호(BACT<1>)로부터 제1 뱅크액티브선택신호(BASEL<1>)를 생성할 수 있다. 제1 선택기(411)는 제1 및 제2 에러스크럽뱅크신호(ES_BANK<1:2>)의 논리레벨조합이 'L,L'인 경우 제1 뱅크액티브신호(BACT<1>)를 제1 뱅크액티브선택신호(BASEL<1>)로 선택하여 출력할 수 있다. 제1 선택기(411)는 제1 및 제2 에러스크럽뱅크신호(ES_BANK<1:2>)가 논리레벨조합을 갖지 않는 상태에서 제1 뱅크액티브신호(BACT<1>)를 제1 뱅크액티브선택신호(BASEL<1>)로 선택하여 출력할 수 있다. 제1 구간신호생성기(412)는 제1 뱅크액티브선택신호(BASEL<1>) 및 제1 프리차지선택신호(PSEL<1>)에 응답하여 제1 액티브구간신호(ACT_PD<1>)를 생성할 수 있다. 제1 액티브구간신호(ACT_PD<1>)는 제1 뱅크액티브선택신호(BASEL<1>)가 인에이블되는 시점에 동기하여 인에이블되고, 제1 프리차지선택신호(PSEL<1>)가 인에이블되는 시점에 동기하여 디스에이블되도록 구현될 수 있다. 제1 구간설정기(413)는 제1 액티브구간신호(ACT_PD<1>)를 기설정된 제1 액티브구간만큼 지연시켜 제1 프리차지신호(PRE<1>)를 생성할 수 있다. 제1 액티브구간은 실시예에 따라서 다양하게 설정될 수 있다. 제2 선택기(414)는 제1 및 제2 에러스크럽뱅크신호(ES_BANK<1:2>)에 응답하여 제1 프리차지신호(PRE<1>) 또는 에러스크럽프리차지신호(ES_PRE)를 제1 프리차지선택신호(PSEL<1>)로 출력할 수 있다. 제2 선택기(414)는 제1 및 제2 에러스크럽뱅크신호(ES_BANK<1:2>)의 논리레벨조합이 'L,L'인 경우 에러스크럽프리차지신호(ES_PRE)를 제1 프리차지선택신호(PSEL<1>)로 출력할 수 있다. 제2 선택기(414)는 제1 및 제2 에러스크럽뱅크신호(ES_BANK<1:2>)가 논리레벨조합을 갖지 않는 상태에서 제1 프리차지신호(PRE<1>)를 제1 프리차지선택신호(PSEL<1>)로 출력할 수 있다.
제2 액티브구간신호생성회로(42)는 제3 선택기(421), 제2 구간신호생성기(422), 제2 구간설정기(423) 및 제4 선택기(424)를 포함할 수 있다. 제3 선택기(421)는 제1 및 제2 에러스크럽뱅크신호(ES_BANK<1:2>)에 응답하여 제1 뱅크액티브신호(BACT<1>) 또는 제2 뱅크액티브신호(BACT<2>)로부터 제2 뱅크액티브선택신호(BASEL<2>)를 생성할 수 있다. 제3 선택기(421)는 제1 및 제2 에러스크럽뱅크신호(ES_BANK<1:2>)의 논리레벨조합이 'L,H'인 경우 제1 뱅크액티브신호(BACT<1>)를 제2 뱅크액티브선택신호(BASEL<2>)로 선택하여 출력할 수 있다. 제3 선택기(421)는 제1 및 제2 에러스크럽뱅크신호(ES_BANK<1:2>)가 논리레벨조합을 갖지 않는 상태에서 제2 뱅크액티브신호(BACT<2>)를 제2 뱅크액티브선택신호(BASEL<2>)로 선택하여 출력할 수 있다. 제2 구간신호생성기(422)는 제2 뱅크액티브선택신호(BASEL<2>) 및 제2 프리차지선택신호(PSEL<2>)에 응답하여 제2 액티브구간신호(ACT_PD<2>)를 생성할 수 있다. 제2 액티브구간신호(ACT_PD<2>)는 제2 뱅크액티브선택신호(BASEL<2>)가 인에이블되는 시점에 동기하여 인에이블되고, 제2 프리차지선택신호(PSEL<2>)가 인에이블되는 시점에 동기하여 디스에이블되도록 구현될 수 있다. 제2 구간설정기(423)는 제2 액티브구간신호(ACT_PD<2>)를 기설정된 제2 액티브구간만큼 지연시켜 제2 프리차지신호(PRE<2>)를 생성할 수 있다. 제2 액티브구간은 실시예에 따라서 다양하게 설정될 수 있다. 제4 선택기(424)는 제1 및 제2 에러스크럽뱅크신호(ES_BANK<1:2>)에 응답하여 제2 프리차지신호(PRE<2>) 또는 에러스크럽프리차지신호(ES_PRE)를 제2 프리차지선택신호(PSEL<2>)로 출력할 수 있다. 제4 선택기(424)는 제1 및 제2 에러스크럽뱅크신호(ES_BANK<1:2>)의 논리레벨조합이 'L,H'인 경우 에러스크럽프리차지신호(ES_PRE)를 제2 프리차지선택신호(PSEL<2>)로 출력할 수 있다. 제4 선택기(424)는 제1 및 제2 에러스크럽뱅크신호(ES_BANK<1:2>)가 논리레벨조합을 갖지 않는 상태에서 제2 프리차지신호(PRE<2>)를 제2 프리차지선택신호(PSEL<2>)로 출력할 수 있다.
제3 액티브구간신호생성회로(43)는 제5 선택기(431), 제3 구간신호생성기(432), 제3 구간설정기(433) 및 제6 선택기(434)를 포함할 수 있다. 제5 선택기(431)는 제1 및 제2 에러스크럽뱅크신호(ES_BANK<1:2>)에 응답하여 제1 뱅크액티브신호(BACT<1>) 또는 제3 뱅크액티브신호(BACT<3>)로부터 제3 뱅크액티브선택신호(BASEL<3>)를 생성할 수 있다. 제5 선택기(431)는 제1 및 제2 에러스크럽뱅크신호(ES_BANK<1:2>)의 논리레벨조합이 'H,L'인 경우 제1 뱅크액티브신호(BACT<1>)를 제3 뱅크액티브선택신호(BASEL<3>)로 선택하여 출력할 수 있다. 제5 선택기(431)는 제1 및 제2 에러스크럽뱅크신호(ES_BANK<1:2>)가 논리레벨조합을 갖지 않는 상태에서 제3 뱅크액티브신호(BACT<3>)를 제3 뱅크액티브선택신호(BASEL<3>)로 선택하여 출력할 수 있다. 제3 구간신호생성기(432)는 제3 뱅크액티브선택신호(BASEL<3>) 및 제3 프리차지선택신호(PSEL<3>)에 응답하여 제3 액티브구간신호(ACT_PD<3>)를 생성할 수 있다. 제3 액티브구간신호(ACT_PD<3>)는 제3 뱅크액티브선택신호(BASEL<3>)가 인에이블되는 시점에 동기하여 인에이블되고, 제3 프리차지선택신호(PSEL<3>)가 인에이블되는 시점에 동기하여 디스에이블되도록 구현될 수 있다. 제3 구간설정기(433)는 제3 액티브구간신호(ACT_PD<3>)를 기설정된 제3 액티브구간만큼 지연시켜 제3 프리차지신호(PRE<3>)를 생성할 수 있다. 제3 액티브구간은 실시예에 따라서 다양하게 설정될 수 있다. 제6 선택기(434)는 제1 및 제2 에러스크럽뱅크신호(ES_BANK<1:2>)에 응답하여 제3 프리차지신호(PRE<3>) 또는 에러스크럽프리차지신호(ES_PRE)를 제3 프리차지선택신호(PSEL<3>)로 출력할 수 있다. 제6 선택기(434)는 제1 및 제2 에러스크럽뱅크신호(ES_BANK<1:2>)의 논리레벨조합이 'H,L'인 경우 에러스크럽프리차지신호(ES_PRE)를 제3 프리차지선택신호(PSEL<3>)로 출력할 수 있다. 제6 선택기(434)는 제1 및 제2 에러스크럽뱅크신호(ES_BANK<1:2>)가 논리레벨조합을 갖지 않는 상태에서 제3 프리차지신호(PRE<3>)를 제3 프리차지선택신호(PSEL<3>)로 출력할 수 있다.
제4 액티브구간신호생성회로(44)는 제7 선택기(441), 제4 구간신호생성기(442), 제4 구간설정기(443) 및 제8 선택기(444)를 포함할 수 있다. 제7 선택기(441)는 제1 및 제2 에러스크럽뱅크신호(ES_BANK<1:2>)에 응답하여 제1 뱅크액티브신호(BACT<1>) 또는 제4 뱅크액티브신호(BACT<4>)로부터 제4 뱅크액티브선택신호(BASEL<4>)를 생성할 수 있다. 제7 선택기(441)는 제1 및 제2 에러스크럽뱅크신호(ES_BANK<1:2>)의 논리레벨조합이 'H,H'인 경우 제1 뱅크액티브신호(BACT<1>)를 제4 뱅크액티브선택신호(BASEL<4>)로 선택하여 출력할 수 있다. 제7 선택기(441)는 제1 및 제2 에러스크럽뱅크신호(ES_BANK<1:2>)가 논리레벨조합을 갖지 않는 상태에서 제4 뱅크액티브신호(BACT<4>)를 제4 뱅크액티브선택신호(BASEL<4>)로 선택하여 출력할 수 있다. 제4 구간신호생성기(442)는 제4 뱅크액티브선택신호(BASEL<4>) 및 제4 프리차지선택신호(PSEL<4>)에 응답하여 제4 액티브구간신호(ACT_PD<4>)를 생성할 수 있다. 제4 액티브구간신호(ACT_PD<4>)는 제4 뱅크액티브선택신호(BASEL<4>)가 인에이블되는 시점에 동기하여 인에이블되고, 제4 프리차지선택신호(PSEL<4>)가 인에이블되는 시점에 동기하여 디스에이블되도록 구현될 수 있다. 제4 구간설정기(443)는 제4 액티브구간신호(ACT_PD<4>)를 기설정된 제4 액티브구간만큼 지연시켜 제4 프리차지신호(PRE<4>)를 생성할 수 있다. 제4 액티브구간은 실시예에 따라서 다양하게 설정될 수 있다. 제8 선택기(444)는 제1 및 제2 에러스크럽뱅크신호(ES_BANK<1:2>)에 응답하여 제4 프리차지신호(PRE<4>) 또는 에러스크럽프리차지신호(ES_PRE)를 제4 프리차지선택신호(PSEL<4>)로 출력할 수 있다. 제8 선택기(444)는 제1 및 제2 에러스크럽뱅크신호(ES_BANK<1:2>)의 논리레벨조합이 'H,H'인 경우 에러스크럽프리차지신호(ES_PRE)를 제4 프리차지선택신호(PSEL<4>)로 출력할 수 있다. 제8 선택기(444)는 제1 및 제2 에러스크럽뱅크신호(ES_BANK<1:2>)가 논리레벨조합을 갖지 않는 상태에서 제4 프리차지신호(PRE<4>)를 제4 프리차지선택신호(PSEL<4>)로 출력할 수 있다.
도 4를 참고하면 에러스크럽동작회로(6)는 입출력제어회로(61), 데이터저장회로(62) 및 에러정정회로(63)를 포함할 수 있다.
입출력제어회로(61)는 제1 내지 제4 디코딩리드신호(ES_R<1:4>), 제1 내지 제4 디코딩라이트신호(ES_W<1:4>), 컬럼어드레스신호(COL<1:N>) 및 로우어드레스신호(RA<1:M>)에 응답하여 리드제어신호(RD_CNT<1:X>) 및 라이트제어신호(WT_CNT<1:Y>)를 생성할 수 있다. 입출력제어회로(61)는 리드동작 시 제1 내지 제4 디코딩리드신호(ES_R<1:4>) 중 하나가 입력되는 경우 컬럼어드레스신호(COL<1:N>) 및 로우어드레스신호(RA<1:M>)에 의해 논리레벨조합이 결정되는 리드제어신호(RD_CNT<1:X>)를 생성할 수 있다. 예를 들어, 입출력제어회로(61)는 제2 디코딩리드신호(ES_R<2>)가 인에이블되는 경우 제2 뱅크(미도시)에 포함된 메모리셀에 저장된 데이터를 출력하기 위한 리드제어신호(RD_CNT<1:X>)를 생성한다. 리드제어신호(RD_CNT<1:X>)에 포함된 비트들의 논리레벨조합은 컬럼어드레스신호(COL<1:N>) 및 로우어드레스신호(RA<1:M>)의 논리레벨조합으로부터 결정될 수 있다. 리드제어신호(RD_CNT<1:X>)는 선택된 뱅크(미도시)에서 컬럼어드레스신호(COL<1:N>) 및 로우어드레스신호(RA<1:M>)의 논리레벨조합에 따라 엑세스되는 메모리셀(미도시)에서 데이터가 출력되는 동작을 제어하기 위한 신호들을 포함할 수 있다. 리드제어신호(RD_CNT<1:X>)는 하나의 신호로 표시되어 있지만 실시예에 따라서 데이터 출력을 위한 제어동작 별로 분리된 복수의 신호들로 표시될 수도 있다. 입출력제어회로(61)는 라이트동작 시 제1 내지 제4 디코딩라이트신호(ES_W<1:4>) 중 하나가 입력되는 경우 컬럼어드레스신호(COL<1:N>) 및 로우어드레스신호(RA<1:M>)에 의해 논리레벨조합이 결정되는 라이트제어신호(WT_CNT<1:Y>)를 생성할 수 있다. 예를 들어, 입출력제어회로(61)는 제3 디코딩라이트신호(ES_W<3>)가 인에이블되는 경우 제3 뱅크(미도시)에 포함된 메모리셀에 데이터를 저장하기 위한 라이트제어신호(WT_CNT<1:Y>)를 생성할 수 있다. 라이트제어신호(WT_CNT<1:Y>)에 포함된 비트들의 논리레벨조합은 컬럼어드레스신호(COL<1:N>) 및 로우어드레스신호(RA<1:M>)의 논리레벨조합으로부터 결정될 수 있다. 라이트제어신호(WT_CNT<1:Y>)는 선택된 뱅크(미도시)에서 컬럼어드레스신호(COL<1:N>) 및 로우어드레스신호(RA<1:M>)의 논리레벨조합에 따라 엑세스되는 메모리셀(미도시)에 데이터를 입력하는 동작을 제어하기 위한 신호들을 포함할 수 있다. 라이트제어신호(WT_CNT<1:Y>)는 하나의 신호로 표시되어 있지만 실시예에 따라서 데이터 입력을 위한 제어동작 별로 분리된 복수의 신호들로 표시될 수도 있다.
데이터저장회로(62)는 리드제어신호(RD_CNT<1:X>)에 응답하여 저장데이터(SD<1:H>)를 출력할 수 있다. 데이터저장회로(62)는 다수의 뱅크들(미도시)을 포함할 수 있다. 다수의 뱅크들(미도시)에 포함된 메모리셀들(미도시) 각각은 리드제어신호(RD_CNT<1:X>)의 논리레벨조합에 따라 엑세스되고, 엑세스된 메모리셀에 저장된 데이터는 저장데이터(SD<1:H>)로 출력될 수 있다. 데이터저장회로(62)는 라이트제어신호(WT_CNT<1:Y>)에 응답하여 정정데이터(CD<1:J>)를 입력받아 저장할 수 있다. 다수의 뱅크들(미도시)에 포함된 메모리셀들(미도시) 각각은 라이트제어신호(WT_CNT<1:Y>)의 논리레벨조합에 따라 엑세스되고, 엑세스된 메모리셀에 정정데이터(CD<1:J>)가 저장될 수 있다. 데이터가 입출력되는 동작은 일반적인 리드동작 및 라이트동작을 수행하는 회로와 동일하게 구현할 수 있으므로, 자세한 구성 및 동작에 대한 설명은 생략한다.
에러정정회로(63)는 저장데이터(SD<1:H>)에 포함된 에러를 정정하여 정정데이터(CD<1:J>)를 생성할 수 있다. 에러정정회로(63)는 에러정정코드(Error Correction Code, ECC)를 사용하여 정정데이터(CD<1:J>)를 생성할 수 있다. 에러정정회로(63)는 리드동작 시 데이터저장회로(62)에서 출력된 저장데이터(SD<1:H>)로부터 생성된 패러티 및 신드롬을 이용하여 정정데이터(CD<1:J>)를 생성할 수 있다. 패러티 및 신드롬은 에러정정코드를 이용하여 저장데이터(SD<1:H>)로부터 생성될 수 있다.
도 5를 참고하면 데이터저장회로(62)에서 리드제어신호(RD_CNT<1:X>) 및 라이트제어신호(WT_CNT<1:Y>)에 따라 엑세스되는 메모리셀들을 포함하는 제1 뱅크(BANK1), 제2 뱅크(BANK2), 제3 뱅크(BANK3) 및 제4 뱅크(BANK4)의 구성을 확인할 수 있다. 제1 뱅크(BANK1)는 제1 내지 제K 워드라인(WL1~WLK) 및 제1 내지 제P 비트라인(BL1~BLP)에 연결된 다수의 메모리셀들(미도시)을 포함할 수 있다. 제1 뱅크(BANK1)에 포함된 제1 내지 제K 워드라인(WL1~WLK) 각각은 리드제어신호(RD_CNT<1:X>) 또는 라이트제어신호(WT_CNT<1:Y>)의 논리레벨조합에 따라 선택적으로 활성화될 수 있다. 제1 뱅크(BANK1)에 포함된 제1 내지 제P 비트라인(BL1~BLP) 각각은 리드제어신호(RD_CNT<1:X>) 또는 라이트제어신호(WT_CNT<1:Y>)의 논리레벨조합에 따라 선택적으로 엑세스될 수 있다. 제2 뱅크(BANK2)는 제1 내지 제K 워드라인(WL1~WLK) 및 제1 내지 제P 비트라인(BL1~BLP)에 연결된 다수의 메모리셀들(미도시)을 포함할 수 있다. 제2 뱅크(BANK2)에 포함된 제1 내지 제K 워드라인(WL1~WLK) 각각은 리드제어신호(RD_CNT<1:X>) 또는 라이트제어신호(WT_CNT<1:Y>)의 논리레벨조합에 따라 선택적으로 활성화될 수 있다. 제2 뱅크(BANK2)에 포함된 제1 내지 제P 비트라인(BL1~BLP) 각각은 리드제어신호(RD_CNT<1:X>) 또는 라이트제어신호(WT_CNT<1:Y>)의 논리레벨조합에 따라 선택적으로 엑세스될 수 있다. 제3 뱅크(BANK3)는 제1 내지 제K 워드라인(WL1~WLK) 및 제1 내지 제P 비트라인(BL1~BLP)에 연결된 다수의 메모리셀들(미도시)을 포함할 수 있다. 제3 뱅크(BANK3)에 포함된 제1 내지 제K 워드라인(WL1~WLK) 각각은 리드제어신호(RD_CNT<1:X>) 또는 라이트제어신호(WT_CNT<1:Y>)의 논리레벨조합에 따라 선택적으로 활성화될 수 있다. 제3 뱅크(BANK3)에 포함된 제1 내지 제P 비트라인(BL1~BLP) 각각은 리드제어신호(RD_CNT<1:X>) 또는 라이트제어신호(WT_CNT<1:Y>)의 논리레벨조합에 따라 선택적으로 엑세스될 수 있다. 제4 뱅크(BANK4)는 제1 내지 제K 워드라인(WL1~WLK) 및 제1 내지 제P 비트라인(BL1~BLP)에 연결된 다수의 메모리셀들(미도시)을 포함할 수 있다. 제4 뱅크(BANK4)에 포함된 제1 내지 제K 워드라인(WL1~WLK) 각각은 리드제어신호(RD_CNT<1:X>) 또는 라이트제어신호(WT_CNT<1:Y>)의 논리레벨조합에 따라 선택적으로 활성화될 수 있다. 제4 뱅크(BANK4)에 포함된 제1 내지 제P 비트라인(BL1~BLP) 각각은 리드제어신호(RD_CNT<1:X>) 또는 라이트제어신호(WT_CNT<1:Y>)의 논리레벨조합에 따라 선택적으로 엑세스될 수 있다. 본 실시예에 따른 반도체장치는 4개의 뱅크를 포함하는 것으로 구현되었으나 실시예에 따라서 4개보다 많거나 적은 뱅크를 포함하도록 반도체장치를 구현할 수도 있다.
이상 살펴본 바와 같이 구성된 반도체장치의 동작을 도 6 및 도 7을 참고하여 살펴보면 다음과 같다.
도 6을 참고하면 제1 뱅크(도 5의 BANK1)에 대한 에러스크럽동작을 위해 순차적으로 카운팅되는 로우어드레스신호(RA<1:M>)를 확인할 수 있고, 로우어드레스신호(RA<1:M>)의 논리레벨 조합별로 순차적으로 인에이블되는 에러스크럽리드신호(ES_RD), 에러스크럽라이트신호(ES_WT) 및 에러스크럽프리차지신호(ES_PRE)를 확인할 수 있으며 제1 뱅크액티브신호(BACT<1>) 및 에러스크럽프리차지신호(ES_PRE)에 의해 액티브구간이 설정되는 제1 액티브구간신호(ACT_PD<1>)를 확인할 수 있다.
T11 시점에서 리프레쉬신호(REF)의 첫번째 펄스가 발생되면 제1 뱅크액티브신호(BACT<1>)가 인에이블된 상태에서 제1 뱅크(도 5의 BANK1)의 첫번째 워드라인을 활성화시키기 위해 로우어드레스신호(RA<1:M>)는 제1 논리레벨조합(RA1)으로 설정된다. 제1 뱅크액티브신호(BACT<1>)에 동기하여 제1 액티브구간신호(ACT_PD<1>)가 인에이블된 상태에서 제1 뱅크액티브신호(BACT<1>)를 지연시켜 순차적으로 인에이블되는 에러스크럽리드신호(ES_RD), 에러스크럽라이트신호(ES_WT) 및 에러스크럽프리차지신호(ES_PRE)가 발생된다. 제1 액티브구간신호(ACT_PD<1>)는 제1 뱅크액티브신호(BACT<1>)에 동기하여 인에이블되고, 에러스크럽프리차지신호(ES_PRE)의 펄스에 동기하여 디스에이블된다.
T12 시점에서 리프레쉬신호(REF)의 두번째 펄스가 발생되면 제1 뱅크액티브신호(BACT<1>)가 인에이블된 상태에서 제1 뱅크(도 5의 BANK1)의 두번째 워드라인을 활성화시키기 위해 로우어드레스신호(RA<1:M>)는 제2 논리레벨조합(RA2)으로 설정된다. 제1 뱅크액티브신호(BACT<1>)에 동기하여 제1 액티브구간신호(ACT_PD<1>)가 인에이블된 상태에서 제1 뱅크액티브신호(BACT<1>)를 지연시켜 순차적으로 인에이블되는 에러스크럽리드신호(ES_RD), 에러스크럽라이트신호(ES_WT) 및 에러스크럽프리차지신호(ES_PRE)가 발생된다. 제1 액티브구간신호(ACT_PD<1>)는 제1 뱅크액티브신호(BACT<1>)에 동기하여 인에이블되고, 에러스크럽프리차지신호(ES_PRE)의 펄스에 동기하여 디스에이블된다.
T13 시점에서 리프레쉬신호(REF)의 K번째 펄스가 발생되면 제1 뱅크액티브신호(BACT<1>)가 인에이블된 상태에서 제1 뱅크(도 5의 BANK1)의 K번째 워드라인을 활성화시키기 위해 로우어드레스신호(RA<1:M>)는 제K 논리레벨조합(RAK)으로 설정된다. 제1 뱅크액티브신호(BACT<1>)에 동기하여 제1 액티브구간신호(ACT_PD<1>)가 인에이블된 상태에서 제1 뱅크액티브신호(BACT<1>)를 지연시켜 순차적으로 인에이블되는 에러스크럽리드신호(ES_RD), 에러스크럽라이트신호(ES_WT) 및 에러스크럽프리차지신호(ES_PRE)가 발생된다. 제1 액티브구간신호(ACT_PD<1>)는 제1 뱅크액티브신호(BACT<1>)에 동기하여 인에이블되고, 에러스크럽프리차지신호(ES_PRE)의 펄스에 동기하여 디스에이블된다.
도 7을 참고하면 제1 뱅크(도 5의 BANK1), 제2 뱅크(도 5의 BANK2), 제3 뱅크(도 5의 BANK3) 및 제4 뱅크(도 5의 BANK4)에서 순차적으로 에러스크럽동작을 수행하기 위해 컬럼어드레스신호(COL<1:N>)가 카운팅되는 동작을 확인할 수 있다.
T21 시점에서 제1 뱅크(도 5의 BANK1)에 대한 리프레쉬신호(REF)의 첫번째 펄스가 발생하면 제1 뱅크(도 5의 BANK1)의 첫번째 워드라인(미도시)을 활성화시키기 위해 로우어드레스신호(RA<1:M>)는 제1 논리레벨조합(RA1)으로 설정되고, 에러스크럽뱅크신호(ES_BANK<1:2>)는 제1 논리레벨조합(BANK1)으로 설정된다. 이때, 제1 뱅크(도 5의 BANK1)의 첫번째 비트라인(미도시)에 엑세스하기 위해 컬럼어드레스신호(COL<1:N>)는 제1 논리레벨조합(COL1)으로 설정된다.
T22 시점에서 제1 뱅크(도 5의 BANK1)에 대한 리프레쉬신호(REF)의 두번째 펄스가 발생하면 제1 뱅크(도 5의 BANK1)의 두번째 워드라인(미도시)을 활성화시키기 위해 로우어드레스신호(RA<1:M>)는 제2 논리레벨조합(RA2)으로 설정된다.
T23 시점에서 제1 뱅크(도 5의 BANK1)에 대한 리프레쉬신호(REF)의 K번째 펄스가 발생하면 제1 뱅크(도 5의 BANK1)의 K번째 워드라인(미도시)을 활성화시키기 위해 로우어드레스신호(RA<1:M>)는 제K 논리레벨조합(RAK)으로 설정된다.
T24 시점에서 제2 뱅크(도 5의 BANK2)에 대한 리프레쉬신호(REF)의 첫번째 펄스가 발생하면 제2 뱅크(도 5의 BANK2)의 첫번째 워드라인(미도시)을 활성화시키기 위해 로우어드레스신호(RA<1:M>)는 제1 논리레벨조합(RA1)으로 설정되고, 에러스크럽뱅크신호(ES_BANK<1:2>)는 제2 논리레벨조합(BANK2)으로 설정된다.
T24 시점부터 T25 시점까지의 구간동안 제2 뱅크(도 5의 BANK2)에 대한 리프레쉬신호(REF)의 두번째 펄스부터 K번째 펄스까지 발생되어 로우어드레스신호(RA<1:M>)는 순차적으로 제2 논리레벨조합(RA2)부터 제K 논리레벨조합(RAK)으로 설정된다. 또한, 제3 뱅크(도 5의 BANK3)에 대한 리프레쉬신호(REF)의 첫번째 펄스부터 K번째 펄스까지 발생되어 에러스크럽뱅크신호(ES_BANK<1:2>)는 제3 논리레벨조합(BANK3)으로 설정되고, 로우어드레스신호(RA<1:M>)는 순차적으로 제1 논리레벨조합(RA1)부터 제K 논리레벨조합(RAK)으로 설정된다. 또한, 제4 뱅크(도 5의 BANK4)에 대한 리프레쉬신호(REF)의 첫번째 펄스부터 K-1번째 펄스까지 발생되어 에러스크럽뱅크신호(ES_BANK<1:2>)는 제4 논리레벨조합(BANK4)으로 설정되고, 로우어드레스신호(RA<1:M>)는 순차적으로 제1 논리레벨조합(RA1)부터 제K-1 논리레벨조합(RAK-1)으로 설정된다.
T25 시점에서 제4 뱅크(도 5의 BANK4)에 대한 리프레쉬신호(REF)의 K번째 펄스가 발생하면 제4 뱅크(도 5의 BANK4)의 K번째 워드라인(미도시)을 활성화시키기 위해 로우어드레스신호(RA<1:M>)는 제K 논리레벨조합(RAK)으로 설정된다. 제4 논리레벨조합(BANK4)으로 설정된 에러스크럽뱅크신호(ES_BANK<1:2>) 및 제K 논리레벨조합(RAK)으로 설정된 로우어드레스신호(RA<1:M>)에 의해 컬럼어드레스신호(COL<1:N>)는 제2 논리레벨조합(COL2)으로 설정된다.
T26 시점에서 제1 뱅크(도 5의 BANK1)에 대한 리프레쉬신호(REF)의 첫번째 펄스가 발생하면 제1 뱅크(도 5의 BANK1)의 첫번째 워드라인(미도시)을 활성화시키기 위해 로우어드레스신호(RA<1:M>)는 제1 논리레벨조합(RA1)으로 설정되고, 에러스크럽뱅크신호(ES_BANK<1:2>)는 제1 논리레벨조합(BANK1)으로 설정된다.
T26 시점이후 컬럼어드레스신호(COL<1:N>)의 제2 논리레벨조합(COL2)부터 제P 논리레벨조합(COLP)까지 로우어드레스신호(RA<1:M>) 및 에러스크럽뱅크신호(ES_BANK<1:2>)가 순차적으로 카운팅되는 동작이 반복 수행된다.
이상 살펴본 바와 같이 본 발명의 일 실시예에 따른 반도체장치는 리프레쉬동작 중 에러코드를 이용한 에러스크럽동작을 수행함으로써, 데이터에 포함된 에러를 정정한다.
앞서, 도 1 내지 도 7에서 살펴본 반도체장치는 메모리시스템, 그래픽시스템, 컴퓨팅시스템 및 모바일시스템 등을 포함하는 전자시스템에 적용될 수 있다. 예를 들어, 도 8을 참고하면 본 발명의 일 실시예에 따른 전자시스템(1000)은 데이터저장부(1001), 메모리컨트롤러(1002), 버퍼메모리(1003) 및 입출력인터페이스(1004)를 포함할 수 있다.
데이터저장부(1001)는 메모리컨트롤러(1002)로부터의 제어신호에 따라 메모리컨트롤러(1002)로부터 인가되는 데이터를 저장하고 저장된 데이터를 판독하여 메모리컨트롤러(1002)에 출력한다. 데이터저장부(1001)는 도 1에 도시된 반도체장치를 포함할 수 있다. 한편, 데이터저장부(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)에 대한 데이터 입출력을 제어한다. 도 8에서는 메모리컨트롤러(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) 등을 포함할 수 있다.
도 9를 참고하면 본 발명의 다른 실시예에 따른 전자시스템(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)는 실시예에 따라서 동일한 칩으로 구현될 수 있다.
1: 커맨드디코더
2: 리프레쉬제어회로
3: 에러스크럽제어회로 4: 액티브구간신호생성회로
5: 에러스크럽디코더 6: 에러스크럽동작회로
31: 에러스크럽커맨드생성회로 32: 에러스크럽어드레스생성회로
311: 제1 지연회로 312: 제2 지연회로
313: 제3 지연회로 321: 제1 감지회로
322: 제1 카운터 323: 제2 감지회로
324: 제2 카운터 41: 제1 액티브구간신호생성회로
42: 제2 액티브구간신호생성회로 43: 제3 액티브구간신호생성회로
44: 제4 액티브구간신호생성회로 411: 제1 선택기
412: 제1 구간신호생성기 413: 제1 구간설정기
414: 제2 선택기 421: 제3 선택기
422: 제2 구간신호생성기 423: 제2 구간설정기
424: 제4 선택기 431: 제5 선택기
432: 제3 구간신호생성기 433: 제3 구간설정기
434: 제6 선택기 441: 제7 선택기
442: 제4 구간신호생성기 443: 제4 구간설정기
444: 제8 선택기 61: 입출력제어회로
62: 데이터저장회로 63: 에러정정회로
3: 에러스크럽제어회로 4: 액티브구간신호생성회로
5: 에러스크럽디코더 6: 에러스크럽동작회로
31: 에러스크럽커맨드생성회로 32: 에러스크럽어드레스생성회로
311: 제1 지연회로 312: 제2 지연회로
313: 제3 지연회로 321: 제1 감지회로
322: 제1 카운터 323: 제2 감지회로
324: 제2 카운터 41: 제1 액티브구간신호생성회로
42: 제2 액티브구간신호생성회로 43: 제3 액티브구간신호생성회로
44: 제4 액티브구간신호생성회로 411: 제1 선택기
412: 제1 구간신호생성기 413: 제1 구간설정기
414: 제2 선택기 421: 제3 선택기
422: 제2 구간신호생성기 423: 제2 구간설정기
424: 제4 선택기 431: 제5 선택기
432: 제3 구간신호생성기 433: 제3 구간설정기
434: 제6 선택기 441: 제7 선택기
442: 제4 구간신호생성기 443: 제4 구간설정기
444: 제8 선택기 61: 입출력제어회로
62: 데이터저장회로 63: 에러정정회로
Claims (20)
- 리프레쉬신호에 응답하여 생성되는 뱅크액티브신호 및 로우어드레스신호에 응답하여 뱅크에 포함된 메모리셀들에 대한 에러스크럽동작을 수행하기 위한 에러스크럽프리차지신호, 에러스크럽뱅크신호, 에러스크럽리드신호, 에러스크럽라이트신호 및 컬럼어드레스신호를 생성하는 에러스크럽제어회로; 및
상기 에러스크럽뱅크신호에 응답하여 상기 뱅크액티브신호 및 상기 에러스크럽프리차지신호로부터 액티브구간신호를 생성하는 액티브구간신호생성회로를 포함하는 반도체장치.
- 제 1 항에 있어서, 상기 리프레쉬신호는 상기 에러스크럽동작을 포함하는 리프레쉬동작을 위해 인에이블되는 반도체장치.
- 제 1 항에 있어서, 상기 리프레쉬신호가 인에이블되는 경우 상기 뱅크액티브신호에 포함된 비트들 중 하나의 비트가 인에이블된 상태에서 상기 로우어드레스신호에 포함된 비트들의 논리레벨조합들이 순차적으로 생성되는 반도체장치.
- 제 1 항에 있어서, 상기 에러스크럽제어회로는 상기 뱅크액티브신호를 지연시켜 순차적으로 인에이블되는 상기 에러스크럽리드신호, 상기 에러스크럽라이트신호 및 상기 에러스크럽프리차지신호를 생성하는 반도체장치.
- 제 1 항에 있어서, 상기 에러스크럽제어회로는 상기 로우어드레스신호에 포함된 비트들의 논리레벨조합이 기설정된 논리레벨조합인 경우 상기 에러스크럽뱅크신호를 카운팅하는 반도체장치.
- 제 1 항에 있어서, 상기 에러스크럽제어회로는 상기 로우어드레스신호에 포함된 비트들의 논리레벨조합이 기설정된 논리레벨조합이고, 상기 에러스크럽뱅크신호에 포함된 비트들의 논리레벨조합이 기설정된 논리레벨조합인 경우 상기 컬럼어드레스신호를 카운팅하는 반도체장치.
- 제 1 항에 있어서, 상기 에러스크럽제어회로는
상기 뱅크액티브신호에 응답하여 상기 에러스크럽리드신호, 상기 에러스크럽라이트신호 및 상기 에러스크럽프리차지신호를 생성하는 에러스크럽커맨드생성회로; 및
상기 로우어드레스신호에 응답하여 상기 에러스크럽뱅크신호를 카운팅하고, 상기 로우어드레스신호 및 상기 에러스크럽뱅크신호에 응답하여 상기 컬럼어드레스신호를 카운팅하는 에러스크럽어드레스생성회로를 포함하는 반도체장치.
- 제 7 항에 있어서, 상기 에러스크럽커맨드생성회로는
상기 뱅크액티브신호를 지연시켜 상기 에러스크럽리드신호를 생성하는 제1 지연회로;
상기 에러스크럽리드신호를 지연시켜 상기 에러스크럽라이트신호를 생성하는 제2 지연회로; 및
상기 에러스크럽라이트신호를 지연시켜 상기 에러스크럽프리차지신호를 생성하는 제3 지연회로를 포함하는 반도체장치.
- 제 7 항에 있어서, 상기 에러스크럽어드레스생성회로는
상기 로우어드레스신호를 감지하여 제1 감지신호를 생성하는 제1 감지회로;
상기 제1 감지신호에 응답하여 상기 에러스크럽뱅크신호를 카운팅하는 제1 카운터;
상기 에러스크럽뱅크신호를 감지하여 제2 감지신호를 생성하는 제1 감지회로;
상기 제1 감지신호 및 상기 제2 감지신호에 응답하여 상기 컬럼어드레스신호를 카운팅하는 제2 카운터를 포함하는 반도체장치.
- 제 1 항에 있어서, 상기 뱅크액티브신호는 제1 뱅크액티브신호 및 제2 뱅크액티브신호를 포함하고, 상기 액티브구간신호는 제1 액티브구간신호 및 제2 액티브구간신호를 포함하며,
상기 액티브구간신호생성회로는
상기 에러스크럽뱅크신호에 응답하여 상기 제1 뱅크액티브신호 및 상기 에러스크럽프리차지신호에 응답하여 상기 제1 액티브구간신호를 생성하는 제1 액티브구간신호생성회로; 및
상기 에러스크럽뱅크신호에 응답하여 상기 제1 뱅크액티브신호, 상기 제2 뱅크액티브신호 및 상기 에러스크럽프리차지신호에 응답하여 상기 제2 액티브구간신호를 생성하는 제2 액티브구간신호생성회로를 포함하는 반도체장치.
- 제 10 항에 있어서, 상기 제1 액티브구간신호생성회로는
상기 에러스크럽뱅크신호에 포함된 비트들이 제1 논리레벨조합인 경우 상기 제1 뱅크액티브신호에 응답하여 인에이블되고, 상기 에러스크럽프리차지신호에 응답하여 디스에이블되는 상기 제1 액티브구간신호를 생성하는 반도체장치.
- 제 10 항에 있어서, 상기 제1 액티브구간신호생성회로는
상기 에러스크럽뱅크신호에 응답하여 상기 제1 뱅크액티브신호를 뱅크액티브선택신호로 출력하는 제1 선택기;
상기 뱅크액티브선택신호 및 프리차지선택신호에 응답하여 상기 제1 액티브구간신호를 생성하는 구간신호생성기;
상기 제1 액티브구간신호를 지연시켜 프리차지신호를 생성하는 구간설정기; 및
상기 에러스크럽뱅크신호에 응답하여 상기 에러스크럽프리차지신호 또는 상기 프리차지신호를 상기 프리차지선택신호로 출력하는 제2 선택기를 포함하는 반도체장치.
- 제 10 항에 있어서, 상기 제2 액티브구간신호생성회로는
상기 에러스크럽뱅크신호에 포함된 비트들이 제2 논리레벨조합인 경우 상기 제1 뱅크액티브신호에 응답하여 인에이블되고, 상기 에러스크럽프리차지신호에 응답하여 디스에이블되는 상기 제2 액티브구간신호를 생성하는 반도체장치.
- 제 10 항에 있어서, 상기 제2 액티브구간신호생성회로는
상기 에러스크럽뱅크신호에 응답하여 상기 제1 뱅크액티브신호 또는 상기 제2 뱅크액티브신호를 뱅크액티브선택신호로 출력하는 제1 선택기;
상기 뱅크액티브선택신호 및 프리차지선택신호에 응답하여 상기 제2 액티브구간신호를 생성하는 구간신호생성기;
상기 제2 액티브구간신호를 지연시켜 프리차지신호를 생성하는 구간설정기; 및
상기 에러스크럽뱅크신호에 응답하여 상기 에러스크럽프리차지신호 또는 상기 프리차지신호를 상기 프리차지선택신호로 출력하는 제2 선택기를 포함하는 반도체장치.
- 제 1 항에 있어서,
상기 에러스크럽뱅크신호에 응답하여 상기 에러스크럽리드신호 및 상기 에러스크럽라이트신호로부터 디코딩리드신호와 디코딩라이트신호를 생성하는 에러스크럽디코더; 및
상기 디코딩리드신호, 상기 디코딩라이트신호, 상기 로우어드레스신호 및 상기 컬럼어드레스신호에 응답하여 상기 에러스크럽동작을 수행하는 에러스크럽동작회로를 더 포함하는 반도체장치.
- 제 15 항에 있어서, 상기 에러스크럽동작회로는
상기 디코딩리드신호, 상기 디코딩라이트신호, 상기 로우어드레스신호 및 상기 컬럼어드레스신호에 응답하여 리드제어신호 및 라이트제어신호를 생성하는 입출력제어회로;
상기 리드제어신호에 응답하여 저장데이터를 출력하고, 상기 라이트제어신호에 응답하여 정정데이터를 입력받아 저장하는 데이터저장회로; 및
상기 저장데이터에 포함된 에러를 정정하여 상기 정정데이터를 생성하는 에러정정회로를 포함하는 반도체장치.
- 리프레쉬신호에 응답하여 생성되는 제1 뱅크액티브신호 및 로우어드레스신호에 응답하여 뱅크에 포함된 메모리셀들에 대한 에러스크럽동작을 수행하기 위한 에러스크럽뱅크신호를 생성하는 에러스크럽제어회로;
상기 에러스크럽뱅크신호에 응답하여 상기 제1 뱅크액티브신호 및 에러스크럽프리차지신호에 응답하여 제1 액티브구간신호를 생성하는 제1 액티브구간신호생성회로; 및
상기 에러스크럽뱅크신호에 응답하여 상기 제1 뱅크액티브신호, 제2 뱅크액티브신호 및 상기 에러스크럽프리차지신호에 응답하여 제2 액티브구간신호를 생성하는 제2 액티브구간신호생성회로를 포함하는 반도체장치.
- 제 17 항에 있어서, 상기 에러스크럽동작을 포함하는 리프레쉬동작을 위해 상기 리프레쉬신호가 인에이블되는 경우 상기 제1 뱅크액티브신호가 인에이블된 상태에서 상기 로우어드레스신호에 포함된 비트들의 논리레벨조합들이 순차적으로 생성된 후 상기 제2 상기 뱅크액티브신호가 인에이블된 상태에서 상기 로우어드레스신호에 포함된 비트들의 논리레벨조합들이 순차적으로 생성되는 반도체장치.
- 제 17 항에 있어서, 상기 에러스크럽제어회로는 상기 제1 뱅크액티브신호를 지연시켜 순차적으로 인에이블되는 에러스크럽리드신호, 에러스크럽라이트신호 및 에러스크럽프리차지신호를 생성하는 반도체장치.
- 제 17 항에 있어서, 상기 에러스크럽제어회로는
상기 로우어드레스신호에 포함된 비트들의 논리레벨조합이 기설정된 논리레벨조합인 경우 상기 에러스크럽뱅크신호를 카운팅하고, 상기 로우어드레스신호에 포함된 비트들의 논리레벨조합이 기설정된 논리레벨조합이고, 상기 에러스크럽뱅크신호에 포함된 비트들의 논리레벨조합이 기설정된 논리레벨조합인 경우 컬럼어드레스신호를 카운팅하는 반도체장치.
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020170002330A KR20180081282A (ko) | 2017-01-06 | 2017-01-06 | 반도체장치 |
US15/609,219 US10153028B2 (en) | 2017-01-06 | 2017-05-31 | Semiconductor devices |
CN201710833271.9A CN108281162B (zh) | 2017-01-06 | 2017-09-15 | 半导体器件 |
TW106140270A TWI752120B (zh) | 2017-01-06 | 2017-11-21 | 半導體裝置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020170002330A KR20180081282A (ko) | 2017-01-06 | 2017-01-06 | 반도체장치 |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20180081282A true KR20180081282A (ko) | 2018-07-16 |
Family
ID=62783337
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020170002330A KR20180081282A (ko) | 2017-01-06 | 2017-01-06 | 반도체장치 |
Country Status (4)
Country | Link |
---|---|
US (1) | US10153028B2 (ko) |
KR (1) | KR20180081282A (ko) |
CN (1) | CN108281162B (ko) |
TW (1) | TWI752120B (ko) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20220060156A (ko) * | 2020-11-04 | 2022-05-11 | 삼성전자주식회사 | 반도체 메모리 장치 및 반도체 메모리 장치의 동작 방법 |
KR20220081644A (ko) | 2020-12-09 | 2022-06-16 | 삼성전자주식회사 | 메모리 장치 및 이를 포함하는 메모리 시스템 |
CN115223615B (zh) * | 2022-09-20 | 2022-12-09 | 睿力集成电路有限公司 | 一种译码电路、译码方法和半导体存储器 |
Family Cites Families (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4888773A (en) * | 1988-06-15 | 1989-12-19 | International Business Machines Corporation | Smart memory card architecture and interface |
US5495491A (en) * | 1993-03-05 | 1996-02-27 | Motorola, Inc. | System using a memory controller controlling an error correction means to detect and correct memory errors when and over a time interval indicated by registers in the memory controller |
US6560725B1 (en) * | 1999-06-18 | 2003-05-06 | Madrone Solutions, Inc. | Method for apparatus for tracking errors in a memory system |
US6838331B2 (en) | 2002-04-09 | 2005-01-04 | Micron Technology, Inc. | Method and system for dynamically operating memory in a power-saving error correction mode |
US6859407B1 (en) * | 2004-01-14 | 2005-02-22 | Infineon Technologies Ag | Memory with auto refresh to designated banks |
US20080183916A1 (en) * | 2007-01-30 | 2008-07-31 | Mark David Bellows | Using Extreme Data Rate Memory Commands to Scrub and Refresh Double Data Rate Memory |
WO2009011052A1 (ja) * | 2007-07-18 | 2009-01-22 | Fujitsu Limited | メモリリフレッシュ装置およびメモリリフレッシュ方法 |
US8255772B1 (en) * | 2008-06-18 | 2012-08-28 | Cisco Technology, Inc. | Adaptive memory scrub rate |
KR101212738B1 (ko) * | 2010-10-29 | 2012-12-14 | 에스케이하이닉스 주식회사 | 리프레쉬 제어회로 및 이를 포함하는 반도체 메모리 장치 및 리프레쉬 제어방법 |
KR101873526B1 (ko) | 2011-06-09 | 2018-07-02 | 삼성전자주식회사 | 에러 정정회로를 구비한 온 칩 데이터 스크러빙 장치 및 방법 |
KR101877818B1 (ko) * | 2012-05-30 | 2018-07-13 | 에스케이하이닉스 주식회사 | 리페어 제어 회로 및 이를 이용한 반도체 집적회로 |
US9268637B2 (en) * | 2013-03-15 | 2016-02-23 | Silicon Space Technology Corporation | Memory circuit incorporating error detection and correction (EDAC), method of operation, and system |
GB2516831B (en) * | 2013-07-31 | 2020-10-21 | Advanced Risc Mach Ltd | Error code management in systems permitting partial writes |
KR20160000626A (ko) * | 2014-06-25 | 2016-01-05 | 에스케이하이닉스 주식회사 | 메모리 장치 |
KR20180060084A (ko) * | 2016-11-28 | 2018-06-07 | 삼성전자주식회사 | 반도체 메모리 장치의 스크러빙 컨트롤러, 반도체 메모리 장치 및 반도체 메모리 장치의 동작 방법 |
-
2017
- 2017-01-06 KR KR1020170002330A patent/KR20180081282A/ko unknown
- 2017-05-31 US US15/609,219 patent/US10153028B2/en active Active
- 2017-09-15 CN CN201710833271.9A patent/CN108281162B/zh active Active
- 2017-11-21 TW TW106140270A patent/TWI752120B/zh active
Also Published As
Publication number | Publication date |
---|---|
CN108281162B (zh) | 2021-07-27 |
TW201826286A (zh) | 2018-07-16 |
CN108281162A (zh) | 2018-07-13 |
US10153028B2 (en) | 2018-12-11 |
TWI752120B (zh) | 2022-01-11 |
US20180197597A1 (en) | 2018-07-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11231992B2 (en) | Memory systems for performing failover | |
US9990251B2 (en) | Semiconductor system with a column control circuit | |
US10572341B2 (en) | Semiconductor devices | |
US10614871B2 (en) | Semiconductor devices and semiconductor systems including the semiconductor devices | |
KR102561346B1 (ko) | 반도체장치 | |
KR20190074006A (ko) | 반도체장치 및 반도체시스템 | |
TWI729239B (zh) | 半導體裝置 | |
KR102243582B1 (ko) | 반도체장치 | |
KR20180000594A (ko) | 반도체장치 및 반도체시스템 | |
KR20180029803A (ko) | 반도체장치 및 반도체시스템 | |
KR20190060258A (ko) | 에러스크럽방법 및 이를 이용한 반도체모듈 | |
CN108281162B (zh) | 半导体器件 | |
KR20180106495A (ko) | 반도체장치 | |
US10319455B2 (en) | Semiconductor device | |
US9653133B2 (en) | Semiconductor device and semiconductor system | |
KR20180009076A (ko) | 반도체장치 및 반도체시스템 | |
KR20180035068A (ko) | 반도체장치 | |
KR20180026868A (ko) | 집적회로 | |
KR102697484B1 (ko) | 반도체장치 | |
KR20180027655A (ko) | 테스트방법 및 이를 이용한 반도체시스템 | |
KR20180068661A (ko) | 반도체장치 | |
KR20170143084A (ko) | 반도체장치 및 반도체시스템 | |
KR20210023317A (ko) | 반도체장치 | |
KR102686058B1 (ko) | 반도체장치 | |
KR102504176B1 (ko) | 반도체장치 |