KR102308778B1 - 디스터브 로우를 케어하는 메모리 장치 및 그 동작방법 - Google Patents
디스터브 로우를 케어하는 메모리 장치 및 그 동작방법 Download PDFInfo
- Publication number
- KR102308778B1 KR102308778B1 KR1020170064386A KR20170064386A KR102308778B1 KR 102308778 B1 KR102308778 B1 KR 102308778B1 KR 1020170064386 A KR1020170064386 A KR 1020170064386A KR 20170064386 A KR20170064386 A KR 20170064386A KR 102308778 B1 KR102308778 B1 KR 102308778B1
- Authority
- KR
- South Korea
- Prior art keywords
- row
- period
- rows
- adjacent
- refresh
- Prior art date
Links
Images
Classifications
-
- 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/40615—Internal triggering or timing of refresh, e.g. hidden refresh, self refresh, pseudo-SRAMs
-
- 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/40611—External triggering or timing of internal or partially internal refresh operations, e.g. auto-refresh or CAS-before-RAS triggered refresh
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C7/00—Arrangements for writing information into, or reading information out from, a digital store
- G11C7/24—Memory cell safety or protection circuits, e.g. arrangements for preventing inadvertent reading or writing; Status cells; Test cells
-
- 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/4078—Safety or protection circuits, e.g. for preventing inadvertent or unauthorised reading or writing; Status cells; Test cells
-
- 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/408—Address circuits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C8/00—Arrangements for selecting an address in a digital store
- G11C8/06—Address interface arrangements, e.g. address buffers
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C8/00—Arrangements for selecting an address in a digital store
- G11C8/20—Address safety or protection circuits, i.e. arrangements for preventing unauthorized or accidental access
Landscapes
- Engineering & Computer Science (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Dram (AREA)
Abstract
디스터브 로우를 케어하는 메모리 장치 및 그 동작방법이 개시된다. 본 개시의 기술적 사상의 일측면에 따른 메모리 장치는, 다수의 로우들을 포함하는 메모리 셀 어레이와, 상기 다수의 로우들에 대한 리프레쉬를 수행하는 리프레쉬 제어기 및 서로 다른 주기를 갖는 제1 주기 및 제2 주기에 대해, 상기 제1 주기 동안의 상기 로우들의 억세스 회수에 기반하여 제1 로우에 가장 인접한 제1 인접 영역에 대한 케어 동작을 제어하고, 상기 제2 주기 동안의 상기 로우들의 억세스 회수에 기반하여 제2 로우에 두 번째로 인접한 제2 인접 영역에 대한 케어 동작을 제어하는 제어 로직을 구비하는 것을 특징으로 한다.
Description
본 개시의 기술적 사상은 메모리 장치 및 그 동작방법에 관한 것으로서, 상세하게는 디스터브 로우를 케어하는 메모리 장치 및 그 동작방법에 관한 것이다.
고성능 전자 시스템에 널리 사용되고 있는 메모리 장치는 그 집적도 및 속도가 증가하고 있다. DRAM(Dynamic Random Access Memory) 등의 메모리 장치에서 특정 메모리 셀들의 억세스 빈도가 증가하는 경우, 이에 인접한 메모리 셀들의 스트레스를 받게 되고, 이에 따라 인접한 메모리 셀들의 데이터 리텐션 특성이 저하됨에 따라 데이터 신뢰성이 낮아지게 된다. 일 예로, 특정 워드라인에 연결된 메모리 셀들이 집중적으로 억세스되는 경우, 이에 인접한 워드라인에 연결된 메모리 셀들의 데이터 리텐선 특성이 저하될 수 있는 문제가 있다. 또한, DRAM 등의 메모리 장치의 제조 공정이 미세화됨에 따라, 억세스 빈도의 증가에 의해 데이터 리텐션 특성이 저하되는 메모리 셀들의 개수가 증가될 수 있는 문제가 있다.
본 발명의 기술적 사상이 해결하려는 과제는, 집중적으로 억세스되는 로우에 인접한 로우들을 효과적으로 케어함으로써 데이터 신뢰성을 향상할 수 있는 메모리 장치 및 그 동작방법을 제공하는 데 있다.
상기와 같은 목적을 달성하기 위하여, 본 개시의 기술적 사상의 일측면에 따른 메모리 장치는, 다수의 로우들을 포함하는 메모리 셀 어레이와, 상기 다수의 로우들에 대한 리프레쉬를 수행하는 리프레쉬 제어기 및 서로 다른 주기를 갖는 제1 주기 및 제2 주기에 대해, 상기 제1 주기 동안의 상기 로우들의 억세스 회수에 기반하여 제1 로우에 가장 인접한 제1 인접 영역에 대한 케어 동작을 제어하고, 상기 제2 주기 동안의 상기 로우들의 억세스 회수에 기반하여 제2 로우에 두 번째로 인접한 제2 인접 영역에 대한 케어 동작을 제어하는 제어 로직을 구비하는 것을 특징으로 한다.
한편, 본 개시의 기술적 사상의 일측면에 따른 메모리 장치의 동작방법에 있어서, 상기 메모리 장치는 다수의 로우들을 포함하는 메모리 셀 어레이를 포함하고, 상기 메모리 셀 어레이는 제1 로우에 인접한 정도에 따라 제1 내지 제n 인접 영역들을 포함하며, 상기 다수의 로우들의 억세스 회수에 대한 카운팅 동작을 수행함으로써 집중적으로 억세스된 로우를 상기 제1 로우로 판단하는 단계와, 상기 카운팅 동작의 수행 조건에 따라, 상기 제1 내지 제n 인접 영역들 중 어느 하나의 인접 영역을 선택하는 단계 및 상기 선택된 인접 영역에 포함되는 하나 이상의 로우들에 대한 케어 리프레쉬를 수행하는 단계를 구비하는 것을 특징으로 한다.
본 발명의 기술적 사상의 메모리 장치 및 그 동작방법에 따르면, 집중적으로 억세스되는 로우에 대해 그 인접 정도에 따라 다수 개의 인접 영역들이 설정되고, 설정된 인접 영역들의 케어 동작이 달리 수행되므로, 인접 영역의 디스터브되는 정도에 따라 최적화된 케어 동작을 수행할 수 있는 효과가 있다.
도 1은 본 발명의 예시적인 실시예에 따른 반도체 시스템을 나타내는 블록도이다.
도 2a,b 및 도 3a,b는 인접 정도에 따라 다수 개로 분류되는 인접 영역 또는 인접 로우의 일 예를 나타내는 도면이다.
도 4는 본 발명의 예시적인 실시예에 따른 메모리 장치를 나타내는 블록도이다.
도 5a,b는 케어 동작을 위한 다양한 주기들이 설정되는 예를 나타내는 도면이다.
도 6 및 도 7은 본 발명의 예시적인 실시예들에 따른 메모리 장치의 동작방법을 나타내는 플로우차트이다.
도 8은 도 4의 리프레쉬 제어기에 의해 수행되는 리프레쉬 동작의 일 예를 나타내는 도면이다.
도 9 및 도 10은 본 발명의 예시적인 실시예에 따른 억세스 회수 판단기를 구현하는 일 예를 나타내는 블록도이다.
도 11a,b는 본 발명의 변형 가능한 실시예에 따른 억세스 회수 판단기를 구현하는 일 예를 나타내는 블록도이다.
도 12a,b는 도 11a,b에서의 카운터 블록에 의한 리프레쉬 동작의 일 예를 나타내는 도면이다.
도 13a,b,c는 본 발명의 실시예에 따른 케어 리프레쉬가 적용되는 경우의 리프레쉬 주기를 나타내는 도면이다.
도 14는 케어 리프레쉬 수행을 위한 주기들을 설정하는 일 예를 나타내는 도면이다.
도 15는 본 발명의 변형 가능한 실시예에 따른 메모리 장치의 동작방법을 나타내는 플로우차트이다.
도 16은 도 15의 실시예에 따라 카운팅 동작을 수행하는 억세스 회수 판단기의 일 구현 예를 나타내는 블록도이다.
도 17은 본 발명의 다른 변형 가능한 실시예에 따른 메모리 장치의 동작방법을 나타내는 플로우차트이다.
도 18a,b는 다수의 인접 로우들에 대해 임계값을 설정한 예 및 억세스 회수 판단기의 일 구현 예를 나타내는 도면이다.
도 19은 케어 리프레쉬 수행을 위한 주기들을 설정하는 다른 일 예를 나타내는 도면이다.
도 20은 본 발명의 다른 예시적인 실시예에 따른 반도체 시스템을 나타내는 블록도이다.
도 21은 본 발명의 다른 예시적인 메모리 시스템을 나타내는 블록도이다.
도 2a,b 및 도 3a,b는 인접 정도에 따라 다수 개로 분류되는 인접 영역 또는 인접 로우의 일 예를 나타내는 도면이다.
도 4는 본 발명의 예시적인 실시예에 따른 메모리 장치를 나타내는 블록도이다.
도 5a,b는 케어 동작을 위한 다양한 주기들이 설정되는 예를 나타내는 도면이다.
도 6 및 도 7은 본 발명의 예시적인 실시예들에 따른 메모리 장치의 동작방법을 나타내는 플로우차트이다.
도 8은 도 4의 리프레쉬 제어기에 의해 수행되는 리프레쉬 동작의 일 예를 나타내는 도면이다.
도 9 및 도 10은 본 발명의 예시적인 실시예에 따른 억세스 회수 판단기를 구현하는 일 예를 나타내는 블록도이다.
도 11a,b는 본 발명의 변형 가능한 실시예에 따른 억세스 회수 판단기를 구현하는 일 예를 나타내는 블록도이다.
도 12a,b는 도 11a,b에서의 카운터 블록에 의한 리프레쉬 동작의 일 예를 나타내는 도면이다.
도 13a,b,c는 본 발명의 실시예에 따른 케어 리프레쉬가 적용되는 경우의 리프레쉬 주기를 나타내는 도면이다.
도 14는 케어 리프레쉬 수행을 위한 주기들을 설정하는 일 예를 나타내는 도면이다.
도 15는 본 발명의 변형 가능한 실시예에 따른 메모리 장치의 동작방법을 나타내는 플로우차트이다.
도 16은 도 15의 실시예에 따라 카운팅 동작을 수행하는 억세스 회수 판단기의 일 구현 예를 나타내는 블록도이다.
도 17은 본 발명의 다른 변형 가능한 실시예에 따른 메모리 장치의 동작방법을 나타내는 플로우차트이다.
도 18a,b는 다수의 인접 로우들에 대해 임계값을 설정한 예 및 억세스 회수 판단기의 일 구현 예를 나타내는 도면이다.
도 19은 케어 리프레쉬 수행을 위한 주기들을 설정하는 다른 일 예를 나타내는 도면이다.
도 20은 본 발명의 다른 예시적인 실시예에 따른 반도체 시스템을 나타내는 블록도이다.
도 21은 본 발명의 다른 예시적인 메모리 시스템을 나타내는 블록도이다.
이하, 첨부한 도면을 참조하여 본 발명의 실시 예에 대해 상세히 설명한다.
도 1은 본 발명의 예시적인 실시예에 따른 반도체 시스템을 나타내는 블록도이다.
도 1을 참조하면, 메모리 시스템(10)은 메모리 컨트롤러(100) 및 메모리 장치(200)를 포함할 수 있다. 메모리 장치(200)은 메모리 셀 어레이(210), 리프레쉬 제어기(220) 및 제어 로직(230)을 포함할 수 있다. 또한, 본 발명의 예시적인 실시예에 따라, 제어 로직(230)은 디스터브 로우 매니저(231)를 포함할 수 있다. 디스터브 로우 매니저(231)는 하나 이상의 디스터브된 로우에 대한 관리 동작을 수행할 수 있다. 디스터브 로우 매니저(231)는 디스터브된 로우에 대한 관리를 소프트웨어적으로 수행하거나, 또는 하드웨어적으로 수행할 수 있다. 또는, 디스터브 로우 매니저(231)는 디스터브된 로우에 대한 관리를 하드웨어 및 소프트웨어의 조합에 의해 수행할 수 있다. 제어 로직(230)은 디스터브 로우 매니저(231) 이외에도 메모리 동작을 제어하기 위한 다른 구성 요소들을 더 포함할 수도 있다. 즉, 제어 로직(230)은 다양한 종류의 구성 요소들을 포함하는 개념으로 정의될 수 있다.
메모리 컨트롤러(100)는 메모리 인터페이스(미도시)를 통해 각종 신호를 메모리 장치(200)로 제공하여 기록 및 독출 등의 메모리 동작을 제어한다. 예컨대, 메모리 컨트롤러(100)는 커맨드(CMD) 및 어드레스(ADD)를 메모리 장치(200)로 제공하여 메모리 셀 어레이(210)의 데이터(DATA)를 억세스한다. 커맨드(CMD)는 데이터 기록 및 독출 등 노멀 메모리 동작을 위한 커맨드를 포함할 수 있다. 또한, 메모리 장치(200)가 DRAM(Dynamic Random Access Memory) 셀을 포함하는 경우, 커맨드(CMD)는 DRAM에 관련된 고유한 각종 동작들, 예컨대 메모리 셀들을 리프레쉬 하기 위한 리프레쉬 커맨드를 포함할 수 있다.
메모리 컨트롤러(100)는 호스트(HOST)로부터의 요청에 따라 메모리 장치(200)를 억세스할 수 있다. 메모리 컨트롤러(100)는 다양한 프로토콜을 사용하여 호스트(HOST)와 통신할 수 있다. 메모리 셀 어레이(210)는 다수 개의 메모리 셀들을 포함할 수 있으며, 일 예로 메모리 셀 어레이(210)는 다수 개의 워드라인들을 포함하고 각각의 워드라인에는 다수 개의 메모리 셀들이 연결될 수 있다. 일 예로서, 하나의 워드라인에 연결된 메모리 셀들은 로우로 지칭될 수 있다. 즉, 메모리 셀 어레이(210)는 다수 개의 로우들을 포함할 수 있다.
한편, 본 발명의 예시적인 실시예에 따라, 어느 하나의 로우가 집중적으로 또는 빈번하게 억세스(또는, 액티브)될 때, 집중적으로 억세스된 로우에 대해 그 인접 정도에 따라 다수의 인접 영역들이 검출될 수 있다. 예컨대, 집중적으로 억세스된 로우에 가장 인접한 제1 인접 영역과 그 다음으로 인접한 제2 인접 영역이 검출될 수 있다. 또는, 집중적으로 억세스된 로우에 인접하는 다수 개(예컨대, n 개)의 인접 영역들이 검출될 수 있으며, 이 때 제1 인접 영역은 집중적으로 억세스된 로우에 상대적으로 가장 인접한 로우들(예컨대, 인접 로우들)을 포함할 수 있으며, 제n 인접 영역은 상대적으로 가장 덜 인접한 로우들을 포함할 수 있다. 또한, 각각의 인접 영역은 하나의 로우를 포함하거나 또는 두 개 이상의 로우들을 포함하여도 무방하다. 이하의 설명에서는, 인접 영역이 하나의 로우를 포함하는 것으로 가정될 것이나, 전술한 바와 같이 각각의 인접 영역은 두 개 이상의 로우들을 포함하여도 무방할 것이다.
한편, 리프레쉬 제어기(220)는 메모리 컨트롤러(100)로부터의 리프레쉬 커맨드에 응답하여 메모리 셀 어레이(210)의 로우들에 대한 리프레쉬를 수행할 수 있다. 또는, 리프레쉬 제어기(220)는 셀프 리프레쉬 모드에서 메모리 컨트롤러(100)의 개입 없이 메모리 셀 어레이(210)의 로우들을 리프레쉬할 수 있다. 또한, 일 실시예에 따라, 특정 로우가 집중적으로 억세스될 때, 리프레쉬 제어기(220)는 제어 로직(230)의 제어에 기반하여 집중적으로 억세스된 로우에 인접한 하나 이상의 로우들을 리프레쉬할 수 있다.
메모리 동작이 수행되는 동안 특정 로우(예컨대, 제1 로우)가 집중적으로 억세스될 수 있으며, 이 때 제1 로우에 인접한 로우들이 디스터브(disturbed)될 수 있으며, 상기 제1 로우에 인접한 정도에 따라 그 디스터브되는 정도는 달라질 수 있다. 예컨대, 제1 로우에 가장 가까이 위치한 로우(예컨대, 제2 로우)는 가장 크게 디스터브될 수 있으며, 반면에 제2 로우에 비해 상대적으로 덜 가까이 위치한 로우(예컨대, 제3 로우)는 그 디스터브되는 정도가 상대적으로 작을 수 있다. 상기 제2 및 제3 로우들은 제1 로우가 집중적으로 억세스됨에 따라 디스터브되는 로우로서, 디스터브 로우(disturbed row)로 지칭될 수 있다.
상기와 같이, 집중적으로 억세스된 로우에 인접한 정도에 따라 다수 개의 디스터브 로우들이 발생될 수 있다. 제어 로직(230)은 집중적으로 억세스된 로우에 인접한 로우들에 대해, 그 인접 정도에 따라 서로 다른 방식에 기반하여 데이터 신뢰성을 유지하기 위한 디스터브 로우 관리 동작을 수행할 수 있다. 일 예로서, 디스터브 로우 관리 동작은, 집중적으로 억세스된 로우를 판단하는 동작, 집중적으로 억세스된 로우에 대해 그 인접한 정도를 달리하는 다수 개의 디스터브 로우들을 검출하는 동작을 포함할 수 있으며, 또한 상기 검출된 다수 개의 디스터브 로우들에 대해 서로 다른 방식에 따른 케어를 수행하는 동작을 포함할 수 있다.
일 실시예에 따라, 디스터브 로우 매니저(231)는 메모리 컨트롤러(100)로부터의 커맨드(CMD) 및 어드레스(ADD)에 따라 로우들의 억세스되는(또는, 액티브되는) 회수를 카운팅할 수 있다. 또한, 디스터브 로우 매니저(231)는 특정 구간에서 가장 많이 억세스된 제1 로우에 대해 서로 인접 정도를 달리하는 다수 개의 인접 영역들을 검출할 수 있다. 예컨대, 3 개의 인접 영역들이 검출될 때, 디스터브 로우 매니저(231)는 제1 로우에 가장 인접한 제1 인접 영역과 그 다음으로 인접한 제2 인접 영역 및 그 다음으로 인접한 제3 인접 영역을 검출할 수 있다.
또한, 제1 로우에 대해 인접한 로우들로서, 평행하게 배치되는 다수의 로우들에 대해 위측으로 인접한 로우와 아래측으로 인접한 로우가 존재할 것이다. 일 실시예에 따라, 상기 제1 인접 영역은 제1 로우에 가장 인접한 제1 인접 로우를 포함할 수 있으며, 이 때 상기 제1 인접 로우는 제1 로우에 대해 위측 및 아래측으로 인접한 두 개의 인접 로우들을 포함할 수 있다. 이와 유사하게, 상기 제1 및 제2 인접 영역들 각각은 제2 및 제3 인접 로우를 포함하고, 상기 제2 및 제3 인접 로우들 또한 각각 두 개의 인접 로우들을 포함할 수 있을 것이다.
전술한 예에서, 상기 집중적으로 억세스된 로우는 소정의 구간에서 가장 많이 억세스된 로우에 해당하는 것으로 설명되었으나, 본 발명의 실시예들은 이에 국한될 필요는 없다. 상기 집중적으로 억세스된 로우는 다양한 기준에 의해 판단될 수 있으며, 변형 가능한 실시예로서 많이 억세스된 두 개 이상의 로우들이 집중적으로 억세스된 로우로 판단되거나, 소정의 기준값 이상으로 연속하게 억세스가 수행된 로우가 집중적으로 억세스된 로우로 판단되는 등 다양한 방법에 의해 판단 동작이 수행될 수도 있을 것이다.
또한, 디스터브 로우 매니저(231)는 검출된 인접 영역들에 대한 케어 동작의 일 예로서 리프레쉬 동작(예컨대, 케어 리프레쉬)을 제어할 수 있다. 일 실시예에 따라, 제1 인접 영역은 집중적으로 억세스되는 제1 로우에 의해 가장 크게 디스터브되는 로우들을 포함하고, 이에 따라 제1 인접 영역은 가장 짧은 주기로서 케어 리프레쉬가 수행될 수 있다. 반면에, 제3 인접 영역은 제1 로우에 의해 상대적으로 작게 디스터브되는 로우들을 포함하고, 이에 따라 제3 인접 영역은 제1 인접 영역에 비해 상대적으로 긴 주기로서 케어 리프레쉬가 수행될 수 있다.
제어 로직(230)은 검출된 인접 영역에 포함되는 로우의 어드레스를 리프레쉬 제어기(220)로 제공할 수 있으며, 리프레쉬 제어기(220)는 이에 응답하여 케어 리프레쉬를 수행할 수 있다. 예컨대, 리프레쉬 제어기(220)는 그 내부에 노멀 리프레쉬(또는, 오토 리프레쉬)를 수행하기 위한 카운팅 어드레스를 생성하는 카운터(미도시)를 포함하고, 노멀 리프레쉬를 수행함과 함께 소정의 주기에 따라 디스터브 로우를 케어하기 위한 케어 리프레쉬를 수행할 수 있다. 어느 하나의 리프레쉬 주기에서, 노멀 리프레쉬를 수행함에 의해 메모리 셀 어레이에 구비되는 로우들이 적어도 1 회 리프레쉬될 수 있으며, 또한 집중 억세스에 의해 디스터브된 하나 이상의 로우들이 추가로 리프레쉬될 수 있다.
상기와 같은 본 발명의 실시예에 따르면, 특정 로우가 집중적으로 억세스된 경우 공정 미세화에 의해 디스터브되는 영역들이 확장되더라도, 그 인접 정도에 따라 최적화된 케어 동작이 수행됨으로써 데이터의 신뢰성을 효과적으로 향상할 수 있다.
한편, 전술한 실시예에서는 케어 동작으로서 리프레쉬 동작이 예시되었으나, 본 발명의 실시예는 이에 국한될 필요가 없다. 예컨대, 디스터브 로우의 데이터의 신뢰성을 향상하기 위한 다양한 종류의 케어 동작이 본 발명의 실시예들에 적용될 수 있으며, 일 예로 데이터의 이동, 카피 등 다양한 동작을 통해 케어 동작이 수행될 수 있을 것이다.
한편, 메모리 장치(200)는 DDR SDRAM(Double Data Rate Synchronous Dynamic Random Access Memory), LPDDR(Low Power Double Data Rate) SDRAM, GDDR(Graphics Double Data Rate) SDRAM, RDRAM(Rambus Dynamic Random Access Memory) 등과 같은 동적 랜덤 억세스 메모리일 수 있다. 그러나, 본 발명의 실시예들은 이에 국한될 필요가 없으며, 일 예로서 MRAM(Magnetic RAM), FeRAM(Ferroelectric RAM), PRAM(Phase change RAM) 및 ReRAM(Resistive RAM) 등의 불휘발성 메모리로서, 리프레쉬에 상응하는 데이터 유지 동작을 수행하는 메모리 장치에 본 발명의 실시예들이 적용되어도 무방하다.
한편, 메모리 장치(200)는 하나 이상의 메모리 칩들을 포함하는 반도체 패키지일 수 있으며, 또는 모듈 보드 상에 다수의 메모리 칩들이 장착된 메모리 모듈일 수도 있다. 또는, 도 1에서 메모리 컨트롤러(100)와 메모리 장치(200)가 서로 구분된 구성인 것으로 도시되었으나, 본 발명의 메모리 장치(200)는 메모리 컨트롤 기능과 메모리 셀 어레이가 하나의 반도체 패키지에 집적된 메모리 시스템으로 구현될 수도 있을 것이다.
도 2a,b 및 도 3a,b는 인접 정도에 따라 다수 개로 분류되는 인접 영역 또는 인접 로우의 일 예를 나타내는 도면이다.
도 2a를 참조하면, 메모리 셀 어레이(210)는 다수 개의 워드라인들(WL1 ~ WLm)을 포함하고, 소정의 주기에 따라 다수 개의 워드라인들(WL1 ~ WLm) 중 가장 많이 억세스된 로우를 판단할 수 있다. 일 실시예에 따라, 서로 다른 다수 개의 주기들이 설정되고, 각각의 주기마다 가장 많이 억세스된 로우가 판단될 수 있다.
제k 로우(예컨대, 제k 워드라인(WLk)에 연결된 메모리 셀들)가 가장 많이 억세스된 로우인 것으로 가정할 때, 제k 로우에 인접한 정도에 따라 다수 개의 인접 영역들이 검출될 수 있으며, 일 예로 도면 상에서 제k 로우의 위측 및 아래측으로 가장 인접한 제1 인접 영역(Region_Adj1)이 검출될 수 있다. 또한, 제k 로우에 두 번째로 인접한 제2 인접 영역(Region_Adj2)이 검출될 수 있다. 또한, 제k 로우에 인접한 하나 이상의 인접 영역들이 더 검출될 수 있다. 도 2a의 예에서는, 제k 로우의 위측으로 인접한 a 개의 인접 영역들(Region_Adj1 ~ Region_Adja)이 검출되고 아래측으로 인접한 b 개의 인접 영역들(Region_Adj1 ~ Region_Adjb)이 도시된다.
한편, 도 2a에 도시된 인접 영역들(Region_Adj1 ~ Region_Adja, Region_Adj1 ~ Region_Adjb) 각각은 하나 이상의 로우들을 포함할 수 있다. 제k 로우의 위측에 인접한 인접 영역들(Region_Adj1~ Region_Adja)을 예로 들면, 제k 로우가 집중적으로 억세스됨에 따라 제1 인접 영역(Region_Adj1)의 로우들이 가장 크게 디스터브될 수 있으며, 반면에 제a 인접 영역(Region_Adja)의 로우들은 상대적으로 작게 디스터브될 수 있다. 이와 같은 인접 정도에 따른 디스터브 특성을 고려하여, 상기 인접 영역들(Region_Adj1~ Region_Adja)에 대한 관리 동작을 수행함에 있어서, 인접 영역 별로 서로 다른 수집구간(예컨대, 가장 많이 억세스된 로우를 판단하기 위한 구간)이 적용될 수 있다. 또한, 인접 영역 별로 서로 다른 주기에 따라 케어 동작이 수행될 수 있다.
일 실시예에 따라, 상기 제k 로우가 상대적으로 가장 짧은 주기(예컨대, 제1 주기)에서 가장 많이 억세스된 로우인 경우, 제1 인접 영역(Region_Adj1)의 로우들이 리프레쉬될 수 있다. 또한, 상기 제k 로우가 제1 주기에 비해 긴 주기(예컨대, 제2 주기)에서 가장 많이 억세스된 로우인 경우, 제2 인접 영역(Region_Adj2)의 로우들이 리프레쉬될 수 있다. 또한, 다른 주기들에 비해 상대적으로 긴 주기(예컨대, 제a 주기)마다 가장 많이 억세스된 로우가 판단되고, 상기 제a 주기에서 제k 로우가 가장 많이 억세스된 로우로 판단된 경우, 제a 인접 영역(Region_Adja)의 로우들이 리프레쉬될 수 있다.
도 2b에는 메모리 셀 어레이의 일부의 로우들만이 다수 개의 인접 영역들로 분류되는 예가 도시된다. 또한, 도 2b에는 가장 많이 억세스된 로우의 위측 및 아래측으로 동일한 개수의 인접 영역들이 설정되는 경우가 예시된다.
도 2b를 참조하면, 가장 많이 억세스된 제k 로우가 판단되고, 또한 제k 로우의 위측 및 아래측으로 인접한 c 개의 인접 영역들(Region_Adj1~ Region_Adjc)이 검출될 수 있다. 전술한 도 2a의 예에서와 같이, 인접 영역들(Region_Adj1~ Region_Adjc) 각각은 하나 이상의 로우들을 포함할 수 있다. 제k 로우가 상대적으로 짧은 제1 주기 동안 가장 많이 억세스된 로우에 해당할 때, 제k 로우에 가장 인접한 제1 인접 영역(Region_Adj1)의 로우가 리프레쉬될 수 있다. 또한, 제k 로우가 상대적으로 긴 제2 주기 동안 가장 많이 억세스된 로우에 해당할 때, 제k 로우에 두 번째로 인접한 제2 인접 영역(Region_Adj2)의 로우가 리프레쉬될 수 있다.
한편, 도 3a,b는 인접 영역이 하나의 인접 로우를 포함하는 예를 나타낸다. 도 3a에는 가장 많이 억세스된 로우의 위측 및 아래측으로 각각 세 개의 인접 로우들이 검출되는 예가 도시되고, 도 3b에는 가장 많이 억세스된 로우의 위측 및 아래측으로 각각 n 개의 인접 로우들이 검출되는 예가 도시된다.
도 3a를 참조하면, 가장 많이 억세스된 제k 로우가 판단되고, 제k 로우에 가장 인접한 제1 인접 로우는 제(k-1) 워드라인(WL(k-1))에 대응하는 제(k-1) 로우 및 제(k+1) 워드라인(WL(k+1))에 대응하는 제(k+1) 로우를 포함할 수 있다. 또한, 제k 로우에 두 번째로 인접한 제2 인접 로우는 제(k-2) 워드라인(WL(k-2))에 대응하는 제(k-2) 로우 및 제(k+2) 워드라인(WL(k+2))에 대응하는 제(k+2) 로우에 해당할 수 있다. 이와 유사하게, 제3 인접 로우는 제(k-3) 로우 및 제(k+3) 로우를 포함할 수 있다.
제k 로우가 상대적으로 짧은 제1 주기 동안에 가장 많이 억세스된 경우에, 케어 동작은 제(k-1) 및 제(k+1) 로우들(예컨대, ±1 인접 로우)을 리프레쉬함에 의해 수행될 수 있다. 또한, 제k 로우가 상대적으로 긴 제3 주기 동안에 가장 많이 억세스된 경우에, 케어 동작은 제(k-3) 및 제(k+3) 로우들(예컨대, ±3 인접 로우)을 리프레쉬함에 의해 수행될 수 있다.
한편, 도 3b를 참조하면, 가장 많이 억세스된 제k 로우가 판단되고, 제k 로우에 대해 제1 내지 제n 인접 로우들이 검출될 수 있다. 이 때, 제n 인접 로우(±n 인접 로우)는 제1 인접 로우(±1 인접 로우)에 비해 제k 로우와의 인접 거리가 상대적으로 클 수 있다.
전술한 실시예들에 따라, 디스터브가 크게 발생될 수 있는 가장 인접한 로우들은 상대적으로 짧은 주기를 갖는 수집구간에서의 판단 결과에 따라 검출될 수 있으며, 이에 비해 상대적으로 덜 인접한 로우들은 상대적으로 긴 주기를 갖는 수집구간에서의 판단 결과에 따라 검출될 수 있다. 또한, ±1 인접 로우에 대한 케어 리프레쉬는 상대적으로 짧은 주기마다 수행될 수 있으며, 반면에 ±n 인접 로우에 대한 케어 리프레쉬는 상대적으로 긴 주기마다 수행될 수 있다.
이하, 본 발명의 예시적인 실시예들을 설명함에 있어서, 인접 영역이 하나의 인접 로우(예컨대, 위측 및 아래측으로 인접한 ± 인접 로우)를 포함하는 것으로 가정될 것이다. 또한, 실시예들에 따라, 설명의 편의상 케어 동작이 수행될 인접 영역 또는 인접 로우는 영역 또는 로우로서 지칭될 수도 있을 것이다.
도 4는 본 발명의 예시적인 실시예에 따른 메모리 장치를 나타내는 블록도이다.
도 4를 참조하면, 메모리 장치(300)는 억세스 회수 판단기(310), 인접 로우 어드레스 생성기(320) 및 리프레쉬 제어기(330)를 포함할 수 있다. 상기 구성 요소들은 메모리 장치(300) 내에서 다양하게 구현될 수 있다. 일 예로서, 억세스 회수 판단기(310) 및 인접 로우 어드레스 생성기(320)는 전술한 도 1의 제어 로직(230) 내에 포함되거나, 또는 디스터브 로우 매니저(231)에 포함될 수 있다.
억세스 회수 판단기(310)는 제1 내지 제N 카운터 블록(311_1 ~ 311_N)을 포함할 수 있다. 제1 내지 제N 카운터 블록(311_1 ~ 311_N) 각각은 다수 개의 카운터들(미도시)을 포함할 수 있다. 억세스 회수 판단기(310)는 커맨드(CMD)에 대응하여 억세스(또는, 액티브)되는 로우의 어드레스(ADD)에 기반하는 카운팅 동작을 수행하고, 카운팅 결과에 따라 집중적으로 억세스된 로우의 위치를 나타내는 어드레스를 출력할 수 있다. 일 예로서, 억세스 회수 판단기(310)는 소정의 주기에서 가장 많이 억세스된 로우에 대응하는 어드레스(예컨대, 최대 억세스 어드레스(ADD_max))를 출력할 수 있다.
일 실시예에 따라, 억세스 회수 판단기(310)는 주기 정보(Info_T)에 기반하는 카운팅 동작을 수행할 수 있다. 제1 카운터 블록(311_1)은 주기 정보(Info_T)에 기반하여 제1 주기 동안 카운팅 동작을 수행하고, 상기 제1 주기 동안 가장 많이 억세스된 로우에 대응하는 최대 억세스 어드레스(ADD_max)를 출력할 수 있다. 또한, 제2 카운터 블록(311_2)은 주기 정보(Info_T)에 기반하여 제2 주기 동안 카운팅 동작을 수행하고, 상기 제2 주기 동안 가장 많이 억세스된 로우에 대응하는 최대 억세스 어드레스(ADD_max)를 출력할 수 있다. 이와 유사하게, 제N 카운터 블록(311_N)은 주기 정보(Info_T)에 기반하여 제n 주기 동안 카운팅 동작을 수행하고, 상기 제n 주기 동안 가장 많이 억세스된 로우에 대응하는 최대 억세스 어드레스(ADD_max)를 출력할 수 있다.
인접 로우 어드레스 생성기(320)는 전술한 실시예들에 따라 인접 로우(또는, 그 위치)를 나타내는 인접 로우 어드레스(ADD_Ref_Adj)를 생성할 수 있다. 일 실시예에 따라, 다양한 주기들에 따라 인접 로우 어드레스 생성기(320)는 서로 인접한 정도가 다른 인접 로우를 나타내는 인접 로우 어드레스(ADD_Ref_Adj)를 생성할 수 있다. 예컨대, 인접 로우 어드레스 생성기(320)는 주기 정보(Info_T)에 기반하여 인접 로우 어드레스(ADD_Ref_Adj)를 생성할 수 있다.
만약, 제1 카운터 블록(311_1)이 제1 주기 동안의 카운팅 결과에 따라 최대 억세스 어드레스(ADD_max)를 출력할 때, 인접 로우 어드레스 생성기(320)는 상기 최대 억세스 어드레스(ADD_max)의 위측 및 아래측으로 가장 인접한 어드레스(예컨대, ±1 인접 로우의 어드레스)를 출력할 수 있다. 또한, 제2 카운터 블록(311_2)이 제2 주기 동안의 카운팅 결과에 따라 최대 억세스 어드레스(ADD_max)를 출력할 때, 인접 로우 어드레스 생성기(320)는 상기 최대 억세스 어드레스(ADD_max)의 위측 및 아래측으로 두 번째로 인접한 어드레스(예컨대, ±2 인접 로우의 어드레스)를 출력할 수 있다. 또한, 제N 카운터 블록(311_N)이 제n 주기 동안의 카운팅 결과에 따라 최대 억세스 어드레스(ADD_max)를 출력할 때, 인접 로우 어드레스 생성기(320)는 상기 최대 억세스 어드레스(ADD_max)의 위측 및 아래측으로 n 번째로 인접한 어드레스(예컨대, ±n 인접 로우의 어드레스)를 출력할 수 있다.
리프레쉬 제어기(330)는 리프레쉬 어드레스 카운터(331) 및 선택기(332)를 포함할 수 있다. 리프레쉬 어드레스 카운터(331)는 메모리 셀 어레이의 로우들을 순차적으로 리프레쉬하기 위한 카운팅 어드레스(ADD_Ref_cnt)를 출력할 수 있다. 또한, 선택기(332)는 카운팅 어드레스(ADD_Ref_cnt) 및 인접 로우 어드레스(ADD_Ref_Adj)를 수신하고 이를 선택적으로 출력할 수 있다. 예컨대, 노멀 리프레쉬 수행시 선택기(332)는 카운팅 어드레스(ADD_Ref_cnt)를 출력하고, 제1 주기 내지 제n 주기가 도달할 때마다 선택기(332)는 인접 로우 어드레스(ADD_Ref_Adj)를 출력할 수 있다.
도 5a,b는 케어 동작을 위한 다양한 주기들이 설정되는 예를 나타내는 도면이다. 또한, 이하의 실시예들에서는 케어 동작이 케어 리프레쉬에 해당하는 것으로 가정한다.
도 5a를 참조하면, 제1 주기(P1)는 다른 주기들(P2 ~ Pn)에 비해 짧은 주기를 가지며, 제1 주기(P1) 마다 가장 많이 억세스된 로우가 판단되고, 판단된 로우에 가장 인접한 로우들(±1 인접 로우)에 대해 케어 리프레쉬가 수행될 수 있다. 또한, 제2 주기(P2)는 제1 주기(P1)에 비해 긴 주기를 가지며, 제2 주기(P2) 마다 가장 많이 억세스된 로우가 판단되고, 판단된 로우에 두 번째로 인접한 로우들(±2 인접 로우)에 대해 케어 리프레쉬가 수행될 수 있다. 이와 유사한 방식에 따라, 제n 주기(Pn)는 다른 주기들(P1 ~ P(n-1))에 비해 긴 주기를 가지며, 제n 주기(Pn) 마다 가장 많이 억세스된 로우가 판단되고, 판단된 로우에 n 번째로 인접한 로우들(±n 인접 로우)에 대해 케어 리프레쉬가 수행될 수 있다.
전술한 도 5a에서는 제1 내지 제n 주기들(P1 ~ Pn)의 시점이 동일한 것으로 예시되었으나, 본 발명의 실시예는 이에 국한될 필요가 없다. 예컨대, 도 5b를 참조하면, 제1 내지 제n 주기들(P1 ~ Pn)은 서로 다른 주기를 가지며, 각 주기의 시점(예컨대, 가장 많이 억세스된 로우가 판단되는 시점)은 서로 다를 수 있다.
도 6 및 도 7은 본 발명의 예시적인 실시예들에 따른 메모리 장치의 동작방법을 나타내는 플로우차트이다.
도 6을 참조하면, 메모리 장치는 메모리 컨트롤러로부터의 커맨드 및 어드레스에 응답하여 메모리 동작을 수행하고, 상기 메모리 동작에 의해 다수의 로우들에 대한 억세스(또는, 액티브) 동작이 수행될 수 있다. 메모리 장치는 억세스되는 로우들에 대한 카운팅 동작을 수행할 수 있으며, 일 예로서 다수의 주기들에 대해 카운팅 동작을 수행하고, 각각의 주기에서 집중적으로 억세스된 로우를 판단할 수 있다. 예컨대, n 개의 주기들이 설정되고, 각각의 주기에서 가장 많이 억세스된 로우가 판단될 수 있다.
제1 주기가 도달함에 따라, 메모리 장치는 제1 주기 동안 가장 많이 억세스된 로우(이하, 최대 억세스 로우로 지칭함)를 판단하고(S11), 판단 결과에 따라 하나 이상의 제1 인접 영역(예컨대, 위측 및 아래측으로 인접한 영역)을 리프레쉬할 수 있다(S12). 제1 인접 영역은 최대 억세스 로우에 가장 인접한 영역으로서, 하나 이상의 인접 로우들을 포함할 수 있다.
이후, 제2 주기가 도달함에 따라, 메모리 장치는 제2 주기에서의 최대 억세스 로우를 판단하고(S13), 최대 억세스 로우를 판단한 결과에 따라 하나 이상의 제2 인접 영역을 리프레쉬할 수 있다(S14). 제2 인접 영역은 최대 억세스 로우에 대해 두 번째로 인접한 영역일 수 있다. 이와 유사한 방식에 따라 다수의 주기들에 대해 전술한 판단 및 인접 영역의 리프레쉬 동작이 반복 수행되고, n 개의 주기들이 설정된 경우 제n 주기가 도달함에 따라, 메모리 장치는 제n 주기에서의 최대 억세스 로우를 판단하고(S15), 최대 억세스 로우를 검출한 결과에 따라 하나 이상의 제n 인접 영역을 리프레쉬할 수 있다(S16).
한편, 도 7에서는 가장 많이 억세스된 로우에 위측 및 아래측으로 인접한 3 개의 로우들에 대해 케어 리프레쉬가 수행되는 예가 설명된다.
먼저, 제1 주기가 도달함에 따라 제1 주기 동안에서의 최대 억세스 로우가 판단되고, 일 예로서 제h 로우가 최대 억세스 로우로서 판단될 수 있다(S21). 제1 주기마다 최대 억세스 로우에 가장 인접한 로우들(예컨대, ±1 인접 로우)에 대해 리프레쉬(예컨대, 케어 리프레쉬)가 수행될 수 있으며, 이에 따라 제(h-1) 로우 및 제(h+1) 로우에 대해 리프레쉬가 수행될 수 있다(S22).
한편, 제2 주기가 도달함에 따라 상기 제2 주기 동안에서의 최대 억세스 로우가 판단되고, 일 예로서 제i 로우가 최대 억세스 로우로서 판단될 수 있다(S23). 제2 주기마다 최대 억세스 로우에 두 번째로 인접한 ±2 인접 로우에 대해 리프레쉬가 수행될 수 있으며, 이에 따라 제(i-2) 로우 및 제(i+2) 로우에 대해 리프레쉬가 수행될 수 있다(S24).
또한, 제3 주기가 도달함에 따라 상기 제3 주기 동안에서의 최대 억세스 로우가 판단되고, 일 예로서 제j 로우가 최대 억세스 로우로서 판단될 수 있다(S25). 제3 주기마다 최대 억세스 로우에 세 번째로 인접한 ±3 인접 로우에 대해 리프레쉬가 수행될 수 있으며, 이에 따라 제(j-3) 로우 및 제(j+3) 로우에 대해 리프레쉬가 수행될 수 있다(S26).
도 8은 도 4의 리프레쉬 제어기에 의해 수행되는 리프레쉬 동작의 일 예를 나타내는 도면이다. 이하에서는 제1 내지 제3 주기에 따라 ±1 인접 로우, ±2 인접 로우 및 ±3 인접 로우에 대한 케어 리프레쉬가 수행되는 예가 도시된다.
도 4 및 도 8을 참조하면, 리프레쉬 제어기(330)는 노멀 리프레쉬 동작 시 그 내부의 리프레쉬 어드레스 카운터(331)에서 생성된 카운팅 어드레스(ADD_Ref_cnt)를 리프레쉬 어드레스(ADD_Ref)로서 출력할 수 있으며, 소정의 설정된 주기에 따라 케어 리프레쉬를 수행하기 위한 인접 로우 어드레스(ADD_Ref_Adj)를 리프레쉬 어드레스(ADD_Ref)로서 출력할 수 있다. 일 예로서, 제1 내지 제7 로우들에 대한 노멀 리프레쉬(R1 ~ R7)가 수행되고 난 후, 제1 주기가 도달함에 따라 제1 주기 동안 가장 많이 억세스된 로우에 가장 인접한 로우들(±1 인접 로우)에 대한 케어 리프레쉬(C1)가 수행된다. 이후, 노멀 리프레쉬가 이어서 수행되고(예컨대, 제8 및 제9 로우들에 대한 노멀 리프레쉬(R8 ~ R9))가 수행되고 난 후, 제2 주기가 도달함에 따라 제2 주기 동안 가장 많이 억세스된 로우에 두 번째로 인접한 로우들(±2 인접 로우)에 대한 케어 리프레쉬(C2)가 수행된다.
이와 유사하게, 다시 노멀 리프레쉬가 이어서 수행되고(예컨대, 제10 로우에 대한 노멀 리프레쉬(R10))가 수행되고 난 후, 제3 주기가 도달함에 따라 제3 주기 동안 가장 많이 억세스된 로우에 세 번째로 인접한 로우들(±3 인접 로우)에 대한 케어 리프레쉬(C3)가 수행된다. 도 8에서는 제1 주기가 8 회의 노멀 리프레쉬가 수행되는 간격에 해당하고, 제2 주기가 16 회의 노멀 리프레쉬가 수행되는 간격에 해당하며, 제3 주기가 32 회의 노멀 리프레쉬가 수행되는 간격에 해당하는 예가 도시되었으나, 본 발명의 실시예는 이에 국한될 필요가 없이 상기 제1 내지 제3 주기는 다양하게 설정될 수 있다.
도 9 및 도 10은 본 발명의 예시적인 실시예에 따른 억세스 회수 판단기를 구현하는 일 예를 나타내는 블록도이다.
도 9를 참조하면, 억세스 회수 판단기(400)는 제1 내지 제3 카운터 블록들(410 ~ 430)을 포함할 수 있다. 제1 내지 제3 카운터 블록들(410 ~ 430) 각각은 다수의 어드레스 레지스터들 및 이에 대응하는 다수의 카운터들을 포함할 수 있다. 또한, 제1 내지 제3 카운터 블록들(410 ~ 430) 각각으로 억세스되는 로우를 나타내는 어드레스(ADD)와, 다수의 주기들에 대한 정보를 갖는 주기 정보(Info_T)가 제공될 수 있다.
제1 카운터 블록(410)은 제1 주기(Period 1) 동안 로우들의 억세스 회수를 카운팅하고, 제1 주기(Period 1) 동안 가장 많이 억세스된 로우의 어드레스를 최대 억세스 어드레스(ADD_max)로서 출력할 수 있다. 이와 유사하게, 제2 카운터 블록(420)은 제2 주기(Period 2) 동안 가장 많이 억세스된 로우의 어드레스를 최대 억세스 어드레스(ADD_max)로서 출력할 수 있다. 또한, 제3 카운터 블록(430)은 제3 주기(Period 3) 동안 가장 많이 억세스된 로우의 어드레스를 최대 억세스 어드레스(ADD_max)로서 출력할 수 있다.
카운터 블록 내의 구성을 제1 카운터 블록(410)을 참조하여 설명하면 다음과 같다. 제1 카운터 블록(410)은 다수 개의 어드레스 레지스터들(411_1 ~ 411_p)과 이에 대응하는 카운터들(412_1 ~ 412_p)을 포함할 수 있다. 상기 어드레스 레지스터들(411_1 ~ 411_p)의 개수는 메모리 셀 어레이에 구비되는 로우들의 개수 이하일 수 있다. 일 실시예로서, 상기 메모리 셀 어레이에 구비되는 로우들에 대해 빈번하게 억세스되는 일부 로우들(예컨대, 후보 로우들)이 소정의 알고리즘을 통해 선택될 수 있으며, 선택된 후보 로우들의 어드레스가 어드레스 레지스터들(411_1 ~ 411_p)에 저장될 수 있다. 그리고, 제1 카운터 블록(410)으로 제공되는 어드레스(ADD)에 따라, 수신된 어드레스(ADD)와 동일한 어드레스가 저장된 어드레스 레지스터에 대응하는 카운터가 카운팅 동작을 수행할 수 있다.
도 10은 도 9에 도시된 억세스 회수 판단기(400)의 카운팅 동작의 일 예를 나타낸다. 제1 카운터 블록(410)을 참조하여 카운팅 동작의 일 예를 설명하면 다음과 같다.
제1 카운터 블록(410)은 제1 주기 동안 가장 많이 억세스된 로우를 판단할 수 있다. 일 예로서, 제1 주기 동안 제2 어드레스(ADD 2)에 대응하는 제2 로우가 가장 많이 억세스되고, 제1 어드레스 레지스터(411_1)에 저장된 어드레스에 대응하는 로우의 억세스 회수는 A이고, 제3 어드레스 레지스터(411_3)에 저장된 어드레스에 대응하는 로우의 억세스 회수는 B이며, 제p 어드레스 레지스터(411_p)에 저장된 어드레스에 대응하는 로우의 억세스 회수는 C 일 수 있다. 이에 따라, 제1 카운터 블록(410)은 제2 어드레스 레지스터(411_2)에 저장된 제2 어드레스(ADD 2)를 최대 억세스 어드레스(ADD_max)로서 출력할 수 있다. 이에 따라, 제2 로우에 가장 인접하는 로우들(예컨대, ±1 인접 로우)에 대해 케어 리프레쉬가 수행될 수 있다.
이후, 제2 어드레스 레지스터(411_2)에 대응하는 카운터(412_2)의 값이 리셋되고, 다음의 제1 주기 동안 가장 많이 억세스된 로우가 다시 판단될 수 있다. 이 때, 제2 로우를 제외한 나머지 로우들에 인접한 로우들은 케어 리프레쉬가 수행되지 않았으므로, 나머지 어드레스 레지스터들(411_1, 411_4 ~ 411_p)에 대응하는 카운터들의 카운팅 값은 리셋되지 않고 그 값이 유지될 수 있다. 예컨대, 다음의 제1 주기가 시작될 때 제3 어드레스 레지스터(411_3)에 대응하는 카운팅 값은 B의 값을 가지며 카운팅 동작이 시작되고, 다음의 제1 주기 동안 제3 어드레스 레지스터(411_3)에 대응하는 카운터(412_3)의 카운팅 값이 가장 클 때, 다음의 제1 주기에서 제1 카운터 블록(410)은 제3 어드레스(ADD 3)를 최대 억세스 어드레스(ADD_max)로서 출력할 수 있다.
도 11a,b는 본 발명의 변형 가능한 실시예에 따른 억세스 회수 판단기를 구현하는 일 예를 나타내는 블록도이다. 도 11a,b에서는 어느 하나의 카운터 블록이 다수 개의 주기들의 카운팅 동작들에 공유되는 예가 도시된다. 또한, 도 11a,b에서는 설명의 편의상 제1 내지 제3 주기들(Period 1 ~ Period 3)이 예시된다.
도 11a를 참조하면, 억세스 회수 판단기(310)는 다수의 주기들에 대한 최대 억세스 어드레스(ADD_max) 판단에 공유되는 카운터 블록(500A)을 포함할 수 있다. 카운터 블록(500A)은 다수 개의 어드레스 레지스터들(510_1 ~ 510_p)과 이에 대응하는 카운터들(520_1 ~ 520_p)을 포함할 수 있다.
전술한 실시예에서와 유사하게, 카운터 블록(500A)은 제1 주기 동안 가장 많이 억세스된 로우를 판단하고, 판단 결과에 따라 최대 억세스 어드레스(ADD_max 1)를 출력할 수 있다. 상기 최대 억세스 어드레스(ADD_max1)의 ±1 인접 로우에 대한 케어 리프레쉬가 수행되고, 대응하는 카운터의 카운팅 값이 리셋될 수 있다.
다수의 제1 주기들에 대해 카운팅 결과에 기반하는 최대 억세스 어드레스(ADD_max1)가 출력될 수 있으며, 제2 주기가 도달함에 따라 카운터 블록(500A)은 ±2 인접 로우에 대한 케어 리프레쉬를 위한 최대 억세스 어드레스(ADD_max2)를 출력할 수 있다. 일 실시예에 따라, 상기 최대 억세스 어드레스(ADD_max2)는 제2 주기가 도달한 시점에서 카운터들(520_1 ~ 520_p)의 카운팅 값을 확인함으로써 판단될 수 있다. 예컨대, 제2 주기가 도달한 시점에서 가장 큰 카운팅 값을 갖는 카운터에 대응하는 어드레스가 최대 억세스 어드레스(ADD_max2)로서 출력될 수 있다. 이와 유사하게, 카운터 블록(500A)은 제3 주기가 도달한 시점에서 카운터들(520_1 ~ 520_p)의 카운팅 값을 확인하고, 이에 기반하여 ±3 인접 로우에 대한 케어 리프레쉬를 위한 최대 억세스 어드레스(ADD_max3)를 출력할 수 있다.
한편, 도 11b는 도 11a의 변형 실시예로서, 카운터 블록(500B)은 도 11a에 도시된 구성과 함께 추가의 어드레스 레지스터(530)를 더 포함할 수 있다. 전술한 실시예에서와 동일 또는 유사하게, 카운터 블록(500B)은 제1 내지 제3 주기들(Period 1 ~ Period 3)에 대한 최대 억세스 어드레스(ADD_max1~3)를 출력할 수 있다.
일 실시예에 따라, 카운터 블록(500B)은 제1 주기 동안 가장 많이 억세스된 로우를 판단하고, 판단 결과에 따라 최대 억세스 어드레스(ADD_max1)를 출력할 수 있다. 또한, 다수의 제1 주기들이 경과한 후 제2 주기가 도달하므로, 제2 주기에 대한 최대 억세스 어드레스(ADD_max2)를 출력하는 시점에서 그 이전의 다수의 제1 주기들에서의 판단 결과가 존재할 수 있다.
일 실시예에 따라, 다수의 제1 주기들에서 판단된 하나 이상의 최대 억세스 로우들 중 어느 하나의 최대 억세스 로우에 대응하는 어드레스가 제2 주기에 대한 최대 억세스 어드레스(ADD_max2)로서 출력될 수 있다. 예컨대, 집중적으로 억세스되는 로우에 대해서는, ±1 인접 로우에 대한 케어 리프레쉬가 먼저 수행되고 난 후 ±2 인접 로우에 대한 케어 리프레쉬가 수행될 필요가 있다. 이에 따라, 본 실시예에서는, 제2 주기가 도달하는 시점에서 그 이전에 ±1 인접 로우가 케어된 하나 이상의 로우들 중 어느 하나의 로우가 선택되고 이에 대응하는 어드레스가 제2 주기에서의 최대 억세스 어드레스(ADD_max2)로서 출력될 수 있다.
일 실시예에 따라, 제1 주기들에서 판단된 다수의 최대 억세스 로우들 중 임의의 최대 억세스 로우가 제2 주기에서의 최대 억세스 로우로서 선택될 수 있다. 예컨대, 다수의 제1 주기들 중 가장 먼저 최대 억세스 로우로서 판단된 로우가 제2 주기에서의 최대 억세스 로우로서 판단될 수 있다. 또는, 다수의 제1 주기들 중 특정 순서의 제1 주기에서 판단된 최대 억세스 로우가 제2 주기에서의 최대 억세스 로우로서 판단되거나, 또는 가장 마지막의 제1 주기에서 판단된 최대 억세스 로우가 제2 주기에서의 최대 억세스 로우로서 판단될 수 있다.
또는, 변형 가능한 실시예에 따라, 제1 주기마다 판단된 최대 억세스 로우에 대응하는 카운터의 카운팅 값이 리셋되고, 리셋된 최대 억세스 로우들에 대해 이후의 억세스 요청되는 어드레스(ADD)에 따라 카운팅 동작이 수행될 수 있다. 제2 주기가 도달하는 시점에서 이전의 제1 주기들에서 최대 억세스 로우로서 판단된 로우들의 카운팅 값이 서로 비교될 수 있으며, 이들 중 가장 큰 카운팅 값을 갖는 로우가 제2 주기에서의 최대 억세스 로우로서 판단될 수 있다.
도 11b의 어드레스 레지스터(530)는 제2 주기 및/또는 제3 주기에서 최대 억세스 로우로 판단될 하나 이상의 로우들의 어드레스를 저장할 수 있다. 일 예로서, 어드레스 레지스터(530)는 하나 이상의 로우들의 어드레스를 저장하는 레지스터들을 포함할 수 있다. 예컨대, 다수의 제1 주기들에서 판단된 최대 억세스 로우들 중 어느 하나의 최대 억세스 로우에 대응하는 어드레스가 어드레스 레지스터(530)에 저장되고, 제2 주기가 도달하는 시점에서 어드레스 레지스터(530)에 저장된 어드레스가 최대 억세스 어드레스(ADD_max2)로서 출력될 수 있다.
이와 유사하게, 제3 주기에서의 최대 억세스 어드레스(ADD_max3)가 카운터 블록(500B)에서 출력될 수 있다. 예컨대, 다수의 제2 주기들마다 최대 억세스 어드레스(ADD_max2)가 출력될 수 있으며, 어느 하나의 제2 주기에서 판단된 최대 억세스 어드레스가 제3 주기에서의 최대 억세스 어드레스(ADD_max3)로서 출력될 수 있다.
도 12a,b는 도 11a,b에서의 카운터 블록에 의한 리프레쉬 동작의 일 예를 나타내는 도면이다. 이하에서는 제1 내지 제3 주기에 따라 ±1 인접 로우, ±2 인접 로우 및 ±3 인접 로우들에 대한 케어 리프레쉬가 수행되는 예가 도시된다.
도 12a를 참조하면, 다수의 ±1 인접 로우에 대한 케어 리프레쉬(C1)가 연속하게 수행되고, 소정 주기에 따라 ±2 인접 로우에 대한 케어 리프레쉬(C2)가 수행될 수 있다. 3 회의 ±1 인접 로우에 대한 케어 리프레쉬(C1)가 수행된 후 ±2 인접 로우에 대한 케어 리프레쉬(C2)가 수행되는 것으로 가정할 때, 일 실시예에 따라, 3 회의 제1 주기(P1)에서 제1 내지 제3 로우(1 ~ 3)가 순차적으로 최대 억세스 로우로 판단된 경우, 가장 먼저 판단된 제1 로우(1)가 이후의 제2 주기(P2)에서의 최대 억세스 로우로서 판단될 수 있다. 또한, 다음의 3 회의 제1 주기(P1)에서 제2, 제1 및 제5 로우(2, 1, 5)가 순차적으로 최대 억세스 로우로 판단된 경우 제2 로우(2)가 이후의 제2 주기(P2)에서의 최대 억세스 로우로서 판단될 수 있다.
이와 유사하게, 제3 주기(P3)가 도달함에 따라, 이전의 다수의 제2 주기(P2)들에서 선택된 최대 억세스 로우들 중 어느 하나의 로우가 제3 주기(P3)에서의 최대 억세스 로우로서 판단될 수 있다. 도 12a의 예에서는, 다수의 제2 주기(P2)들 중 첫 번째 선택된 제1 로우(1)가 이후의 제3 주기(P3)에서의 최대 억세스 로우로서 판단되는 예가 도시된다.
한편, 도 12b를 참조하면, 다수의 제1 주기(P1)들 중 마지막의 제1 주기(P1)에서 판단된 최대 억세스 로우가 이후의 제2 주기(P2)에서의 최대 억세스 로우로서 판단되는 예가 도시된다. 또한, 다수의 제2 주기(P2)들 중 마지막의 제2 주기(P2)에서 판단된 최대 억세스 로우가 이후의 제3 주기(P3)에서의 최대 억세스 로우로서 판단될 수 있다. 도 12b에 도시된 바와 같이, 다수의 제1 주기(P1)에서 제1 내지 제3 로우(1 ~ 3)가 순차적으로 최대 억세스 로우에서 판단된 경우 마지막으로 판단된 제3 로우(3)가 이후의 제2 주기(P2)에서의 최대 억세스 로우로서 판단될 수 있다. 또한, 다수의 제1 주기(P1)에서 제2, 제1 및 제5 로우(2, 1, 5)가 순차적으로 최대 억세스 로우에서 판단된 경우, 제5 로우(5)가 이후의 제2 주기(P2)에서의 최대 억세스 로우로서 판단될 수 있다.
도 13a,b,c는 본 발명의 실시예에 따른 케어 리프레쉬가 적용되는 경우의 리프레쉬 주기를 나타내는 도면이다. 도 13a,b,c에서는 일반적인 DRAM의 리프레쉬 규격으로서, 리프레쉬 간격은 15.6μ초(sec)을 가지며 전체 로우들의 개수는 4096 개를 가짐에 따라 리프레쉬 주기가 64 ms에 해당하는 예가 도시된다.
일 실시예에 따라, 노멀 리프레쉬(R)가 리프레쉬 간격에 따라 순차적으로 수행되고, 케어 리프레쉬를 수행하기 위한 주기가 도달함에 따라 특정 리프레쉬 시점에서 노멀 리프레쉬와 케어 리프레쉬가 함께 수행될 수 있다(R+C). 케어 리프레쉬를 수행하는 타이밍에서 노멀 리프레쉬 및 케어 리프레쉬를 함께 수행함에 따라 상기 리프레쉬 주기를 64 ms로 유지하면서 케어 리프레쉬가 수행될 수 있다. 케어 리프레쉬(C)는 전술한 실시예들에서 설명된 다수의 주기들 중 어느 하나의 주기에서의 리프레쉬일 수 있다.
한편, 도 13b를 참조하면, 노멀 리프레쉬(R)가 리프레쉬 간격에 따라 순차적으로 수행되고, 케어 리프레쉬를 수행하기 위한 주기가 도달함에 따라 케어 리프레쉬(C)가 수행될 수 있다. 이 때, 하나의 리프레쉬 주기 내에서 케어 리프레쉬(C)가 수행되는 횟수에 따라 리프레쉬 주기가 64 ms보다 α의 시간 만큼 증가될 수 있다.
한편, 도 13c를 참조하면, 노멀 리프레쉬(R)가 리프레쉬 간격에 따라 순차적으로 수행되며, 일 예로서 노멀 리프레쉬(R)가 수행되는 다수의 시점들 중 적어도 일부에서 두 개 이상의 로우들이 함께 리프레쉬될 수 있다. 또한, 케어 리프레쉬를 수행하기 위한 주기가 도달함에 따라 케어 리프레쉬(C)가 수행될 수 있다. 하나의 리프레쉬 시점에서 리프레쉬되는 로우들의 개수를 조절함에 의해 상기 리프레쉬 주기를 64 ms로 유지하면서 케어 리프레쉬가 수행될 수 있다.
도 14는 케어 리프레쉬 수행을 위한 주기들을 설정하는 일 예를 나타내는 도면이다.
전술한 실시예에서는 시간을 기준으로 하여 케어 리프레쉬 수행을 위한 제1 내지 제n 주기들(P1 ~ Pn)이 설정되는 예가 도시되었으나, 본 발명의 실시예는 이에 국한될 필요가 없다. 예컨대, 도 14에 도시된 바와 같이, 제1 내지 제n 주기들 각각은 커맨드들의 인가 회수(또는, 액티브 회수)에 기반하여 설정될 수 있다.
일 실시예에 따라, 제1 주기(P1)는 상대적으로 적은 액티브 회수에 상응하는 주기를 가질 수 있으며, 반면에 제n 주기(Pn)는 상대적으로 많은 액티브 회수에 상응하는 주기를 가질 수 있다. 일 예로서, A 번의 액티브 회수 동안 가장 많이 억세스된 로우가 판단되고, 판단 결과에 따라 ±1 인접 로우에 대해 케어 리프레쉬가 수행될 수 있다. 또한, B 번의 액티브 회수 동안 가장 많이 억세스된 로우가 판단되고, 판단 결과에 따라 ±2 인접 로우에 대해 케어 리프레쉬가 수행될 수 있다.또한, C 번의 액티브 회수 동안 가장 많이 억세스된 로우가 판단되고, 판단 결과에 따라 ±3 인접 로우에 대해 케어 리프레쉬가 수행될 수 있다. A 의 값은 B 나 C 값에 비해 작으므로 제1 주기(P1)는 제2 내지 제n 주기(P2 ~ Pn) 보다 짧은 시간 간격을 가질 수 있다. 또한, 커맨드들은 비주기적으로 인가될 수 있으므로, 같은 주기(예컨대, 제1 주기(P1))에 해당하더라도 이전의 제1 주기(P1)와 다음의 제1 주기(P1)는 그 시간 간격이 서로 다를 수 있다.
도 15는 본 발명의 변형 가능한 실시예에 따른 메모리 장치의 동작방법을 나타내는 플로우차트이다.
도 15를 참조하면, 다수의 주기들 각각에 대해 가장 많이 억세스된 로우를 판단하기 위해 다수 개의 카운터 블록들이 메모리 장치에 구비되고, 상기 카운터 블록들은 서로 다른 카운팅 동작에 따라 카운팅 결과를 발생할 수 있다. 설명의 편의상 도 15에는 제1 주기에서 가장 많이 억세스된 로우를 판단하는 제1 카운터 블록과 제2 주기에서 가장 많이 억세스된 로우를 판단하는 제2 카운터 블록을 예로 들어 설명한다.
제1 카운터 블록은 다수 개의 어드레스 레지스터들과 이에 대응하는 카운터들을 포함할 수 있다. 또한, 제1 주기마다 제1 카운터 블록은 카운팅 동작에 기반하여 최대 억세스 로우를 판단할 수 있으며, 일 예로서 외부로부터의 어드레스를 이용한 카운팅 동작을 수행할 수 있다(S31). 메모리 장치는 제1 카운터 블록의 판단 결과에 기반하여 하나 이상의 제1 인접 영역(예컨대, ±1 인접 로우)를 리프레쉬할 수 있다(S32).
상기 제1 카운터 블록에서 제1 주기마다 발생되는 최대 억세스 로우에 대한 판단 결과는 제2 카운터 블록에 업데이트될 수 있다(S33). 예컨대, 어느 하나의 제1 주기에서 제1 카운터 블록에 의해 제1 로우가 최대 억세스 로우로서 판단된 경우, 제2 카운터 블록에서 상기 제1 로우가 저장된 어드레스 레지스터에 대응하는 카운팅 값이 증가될 수 있다. 만약, 상기 제2 카운터 블록에 제1 로우의 어드레스가 저장되지 않는 경우, 제2 카운터 블록의 어느 하나의 어드레스 레지스터에 제1 로우의 어드레스가 저장되고, 이에 대응하는 카운팅 값이 증가될 수 있다.
상기와 같은 제2 카운터 블록의 카운팅 결과에 따라, 제2 주기마다 제2 카운터 블록은 최대 억세스 로우를 판단할 수 있다(S34). 만약, 제2 주기가 제1 주기에 비해 D 배 만큼 긴 주기를 갖는 경우, 제2 주기마다 제2 카운터 블록은 D 회의 카운팅 동작을 수행할 수 있다. 상기 D 회의 카운팅 동작의 결과에 기반하여 제2 카운터 블록은 최대 억세스 로우를 판단하며, 메모리 장치는 제2 카운터 블록의 판단 결과에 기반하여 하나 이상의 제2 인접 영역(예컨대, ±2 인접 로우)를 리프레쉬할 수 있다(S35).
상기와 같은 실시예에 따르면, 제2 카운터 블록에서 수행되는 카운팅 횟수를 감소할 수 있으며, 이에 따라 메모리 장치 내의 카운터 블록들에서 소모되는 전력이 감소될 수 있다.
도 16은 도 15의 실시예에 따라 카운팅 동작을 수행하는 억세스 회수 판단기의 일 구현 예를 나타내는 블록도이다.
도 16을 참조하면, 억세스 회수 판단기(600)는 제1 내지 제N 카운터 블록들(610_1 ~ 610_N)을 포함할 수 있다. 제1 카운터 블록(610_1)은 제1 주기에서 가장 많이 억세스된 로우를 판단하고, 제N 카운터 블록(610_N)은 제n 주기에서 가장 많이 억세스된 로우를 판단할 수 있다. 또한, 제1 내지 제N 카운터 블록들(610_1 ~ 610_N) 각각은 다수 개의 어드레스 레지스터들 및 이에 대응하는 다수 개의 카운터들을 포함할 수 있다.
제1 카운터 블록(610_1)은 제1 주기 동안 제2 어드레스(ADD 2)에 대응하는 제2 로우를 최대 억세스 로우로 판단하고 그 판단 결과를 제공할 수 있다. 또한, 상기 판단 결과에 따라, ±1 인접 로우에 대한 케어 리프레쉬가 수행될 수 있다. 또한, 제1 카운터 블록(610_1)의 판단 결과는 제2 내지 제N 카운터 블록들(610_2 ~ 610_N)에 업데이트될 수 있다.
일 예로서, 제2 로우가 최대 억세스 로우로 판단됨에 따라, 제2 내지 제N 카운터 블록들(610_2 ~ 610_N) 각각에서 제2 어드레스(ADD 2)가 저장된 어드레스 레지스터에 대응하는 카운터의 카운팅 값이 1 만큼 증가될 수 있다. 상기와 같은 업데이트 동작은 제1 주기가 도달할 때마다 수행될 수 있다.
한편, 제2 주기가 도달함에 따라, 제2 카운터 블록(610_2)은 그 내부의 카운팅 결과에 기반하여 최대 억세스 로우를 판단한 결과를 제공할 수 있다. 또한, 제2 카운터 블록(610_2)으로부터의 카운팅 결과에 따라, 최대 억세스 로우의 ±2 인접 로우에 대한 케어 리프레쉬가 수행될 수 있다. 일 예로서, D 회의 제1 주기들이 하나의 제2 주기에 상응하는 구간에 해당할 때, 제2 카운터 블록(610_2)은 제2 주기 동안 D 회의 카운팅 동작을 수행하고, 카운팅 결과에 따라 최대 억세스 로우를 판단할 수 있다.
이와 유사하게, 제n 주기가 도달함에 따라, 제N 카운터 블록(610_N)은 그 내부의 카운팅 결과에 기반하여 최대 억세스 로우를 판단한 결과를 제공할 수 있다. 또한, 제N 카운터 블록(610_N)으로부터의 카운팅 결과에 따라, 최대 억세스 로우의 ±n 인접 로우에 대한 케어 리프레쉬가 수행될 수 있다. 일 예로서, E 회의 제1 주기들이 하나의 제n 주기에 상응하는 구간에 해당할 때, 제N 카운터 블록(610_N)은 제n 주기 동안 E 회의 카운팅 동작을 수행하고, 카운팅 결과에 따라 최대 억세스 로우를 판단할 수 있다.
한편, 도 16에서는 제1 카운터 블록(610_1)의 판단 결과가 제2 내지 제N 카운터 블록들(610_2 ~ 610_N)에 업데이트되는 예가 도시되었으나, 본 발명의 실시예는 이에 국한될 필요가 없다. 일 예로서, 제1 카운터 블록(610_1)의 판단 결과는 제2 카운터 블록(610_2)에 업데이트되고, 제2 카운터 블록(610_2)의 판단 결과는 제3 카운터 블록(610_3)에 업데이트될 수 있다. 이와 유사하게, 제(N-1) 카운터 블록(610_(N-1))의 판단 결과는 제N 카운터 블록(610_N)에 업데이트될 수 있다.
도 17은 본 발명의 다른 변형 가능한 실시예에 따른 메모리 장치의 동작방법을 나타내는 플로우차트이다.
일 실시예에 따라, 집중적으로 억세스된 로우의 인접 로우들에 대한 케어 리프레쉬를 수행함에 있어서, 집중적으로 억세스된 로우로부터 인접한 정도에 따라 서로 다른 값을 갖는 임계값이 설정될 수 있다. 일 예로서, 집중적으로 억세스된 로우에서 가장 인접한 제1 인접 로우(예컨대, ±1 인접 로우)은 그 디스터브 정도가 크기 때문에, 상기 제1 인접 로우에 대해서는 상대적으로 작은 제1 임계값이 설정될 수 있다. 집중적으로 억세스된 로우의 억세스 회수가 제1 임계값에 도달할 때 상기 제1 인접 로우에 대한 케어 리프레쉬가 수행될 수 있다. 또한, 집중적으로 억세스된 로우에서 다음으로 인접한 제2 인접 로우(예컨대, ±2 인접 로우)은 그 디스터브 정도가 제1 인접 로우에 비해 작기 때문에, 상기 제2 인접 로우에 대해서는 상대적으로 큰 제2 임계값이 설정될 수 있다. 집중적으로 억세스된 로우의 억세스 회수가 제2 임계값에 도달할 때 상기 제2 인접 로우에 대한 케어 리프레쉬가 수행될 수 있다.
도 17을 참조하면, 제1 인접 로우에 대한 케어 리프레쉬 조건으로서 제1 임계값(Th1)이 설정되고, 로우들의 억세스 회수가 카운팅되며(S41), 카운팅 값이 제1 임계값(Th1)을 초과하는 로우가 존재하는지가 판단될 수 있다(S42). 판단 결과에 따라, 제1 임계값(Th1)을 초과하는 로우가 존재하지 않는 경우 카운팅 동작이 계속 수행되고, 특정 로우에 대응하는 카운팅 값이 제1 임계값(Th1)을 초과할 때, 상기 특정 로우의 제1 인접 로우에 대한 케어 리프레쉬가 수행될 수 있다.
이와 유사하게, 제2 인접 로우에 대한 케어 리프레쉬 조건으로서 제2 임계값(Th2)이 설정되고, 로우들의 억세스 회수가 카운팅되며(S43), 카운팅 값이 제2 임계값(Th2)을 초과하는 로우가 존재하는지가 판단될 수 있다(S44). 판단 결과에 따라, 특정 로우에 대응하는 카운팅 값이 제2 임계값(Th2)을 초과할 때, 상기 특정 로우의 제2 인접 로우에 대한 케어 리프레쉬가 수행될 수 있다. 이와 유사한 방식에 따라, 제3 인접 로우와 관련하여 로우들의 억세스 회수를 카운팅하는 동작(S45), 및 특정 로우에 대응하는 카운팅 값이 제3 임계값(Th3)을 초과하는지 판단하는 동작(S46)이 수행될 수 있으며, 또한 제n 인접 로우와 관련하여 로우들의 억세스 회수를 카운팅하는 동작(S47), 및 특정 로우에 대응하는 카운팅 값이 제n 임계값(Thn)을 초과하는지 판단하는 동작(S48)이 수행될 수 있다.
도 18a,b는 다수의 인접 로우들에 대해 임계값을 설정한 예 및 억세스 회수 판단기의 일 구현 예를 나타내는 도면이다.
도 18a에서는 집중적으로 억세스되는 로우(예컨대, 제k 로우)에 인접하는 3 개의 인접 로우들이 예시되며, 일 예로서 ±1 인접 로우를 케어 리프레쉬하기 위한 제1 임계값(Th1)이 1000으로 설정되고, ±2 인접 로우를 케어 리프레쉬하기 위한 제2 임계값(Th2)이 2000으로 설정되며, ±3 인접 로우를 케어 리프레쉬하기 위한 제3 임계값(Th3)이 3000으로 설정되는 예가 도시된다.
제k 로우가 집중적으로 억세스됨에 따라, 이에 인접한 인접 로우들이 디스터브될 수 있으며, 그 인접한 정도에 따라 디스터브 정도가 다를 수 있다. 제k 로우의 억세스 회수가 제1 임계값(Th1)인 1000을 초과할 때 ±1 인접 로우는 크게 디스터브되어 데이터 신뢰성이 저하될 수 있는 반면에, ±2 인접 로우의 디스터브 정도는 여전히 작을 수 있다. 이에 따라, ±1 인접 로우에 대한 케어 리프레쉬가 먼저 수행될 수 있다.
이후, 제k 로우가 계속하여 집중적으로 억세스되고, 이에 따라 제k 로우의 억세스 회수가 제2 임계값(Th2)인 2000을 초과할 수 있다. 이에 따라 ±2 인접 로우에 대한 케어 리프레쉬가 수행될 수 있다. 이와 유사하게, 제k 로우가 계속하여 집중적으로 억세스되어 그 억세스 회수가 제3 임계값(Th3)인 3000을 초과할 때 ±3 인접 로우에 대한 케어 리프레쉬가 수행될 수 있다.
한편, 도 18b를 참조하면, 억세스 회수 판단기(700)는 제1 내지 제3 카운터 블록(710 ~ 730)을 포함할 수 있으며, 제1 카운터 블록(710)은 로우들에 대한 억세스 회수를 카운팅함으로써 제1 임계값(Th1)을 초과하여 억세스된 로우의 어드레스(ADD)를 출력할 수 있다. 이와 유사하게, 제2 카운터 블록(720)은 제2 임계값(Th2)을 초과하여 억세스된 로우의 어드레스(ADD)를 출력하고, 제3 카운터 블록(730)은 제3 임계값(Th3)을 초과하여 억세스된 로우의 어드레스(ADD)를 출력할 수 있다.
일 예로서, 제1 카운터 블록(710)은 특정 로우의 억세스 회수가 제1 임계값(Th1)을 초과하는 경우, 이에 대응하는 어드레스(ADD)를 출력하고 그 카운팅 값을 리셋할 수 있다. 또한, 제2 카운터 블록(720)은 특정 로우의 억세스 회수가 제2 임계값(Th2)을 초과하는 경우, 이에 대응하는 어드레스(ADD)를 출력하고 그 카운팅 값을 리셋할 수 있다. 또한, 제3 카운터 블록(730)은 특정 로우의 억세스 회수가 제3 임계값(Th3)을 초과하는 경우, 이에 대응하는 어드레스(ADD)를 출력하고 그 카운팅 값을 리셋할 수 있다.
상기와 같은 실시예에 따르면, 인접 로우들에 대한 케어 리프레쉬는 주기적으로 수행될 필요가 없다. 예컨대, 메모리 셀 어레이의 다수의 로우들이 균등하게 억세스되는 경우 케어 리프레쉬의 수행 필요성이 적을 수 있으며, 이에 따라 억세스 회수가 상기 임계값들(Th1 ~ Th3)을 초과하기 전까지 케어 리프레쉬가 수행되지 않을 수 있다.
한편, 변형 가능한 예로서, 메모리 셀 어레이의 다수의 로우들이 집중적으로 억세스됨이 없이 균등하게 억세스되는 경우에는 케어 리프레쉬를 수행할 필요가 없을 수 있다. 이에 따라, 제1 내지 제3 카운터 블록(710 ~ 730) 각각에 소정의 주기가 설정되고, 상기 설정된 주기 동안 임계값들(Th1 ~ Th3)을 초과하여 억세스된 로우가 존재하지 않는 경우, 제1 내지 제3 카운터 블록(710 ~ 730) 내의 카운팅 값을 리셋하는 방식으로 본 발명의 실시예가 구현될 수도 있을 것이다.
도 19은 케어 리프레쉬 수행을 위한 주기들을 설정하는 다른 일 예를 나타내는 도면이다. 도 19에서는 다수의 인접 영역들에 대한 케어 리프레쉬 조건이 서로 다르게 설정되는 예가 도시된다.
일 예로, 제1 인접 영역(예컨대, ±1 인접 로우)에 대한 케어 리프레쉬를 수행하기 위해 제1 주기(P1)가 설정될 수 있으며, 또한 제2 인접 영역(예컨대, ±2 인접 로우)에 대한 케어 리프레쉬를 수행하기 위해 제2 주기(P2)가 설정될 수 있다. 일 예로서, 제1 주기(P1)는 전술한 실시예들에 따라 일정한 시간 간격을 갖는 주기일 수 있다. 이에 따라, 상기 제1 주기(P1) 동안 가장 많이 억세스된 로우의 제1 인접 영역에 대한 케어 리프레쉬가 수행될 수 있다.
또한, 일 예로서, 제2 주기(P2)는 전술한 실시예들에 따라 소정의 커맨드 인가 회수(또는, 액티브 회수)에 상응하는 주기일 수 있다. 이에 따라, 상기 제2 주기(P2) 동안 가장 많이 억세스된 로우의 제2 인접 영역에 대한 케어 리프레쉬가 수행될 수 있다. 또한, 다수의 제2 주기(P2)들의 시간 간격은 서로 상이할 수 있다.
한편, 제n 인접 영역(예컨대, ±n 인접 로우)에 대한 케어 리프레쉬를 수행하기 위해 소정의 임계값(Thn)이 설정될 수 있으며, 특정 로우의 억세스 회수가 상기 임계값(Thn)을 초과할 때, 상기 특정 로우의 제n 인접 영역에 대한 케어 리프레쉬가 수행될 수 있다.
도 20은 본 발명의 다른 예시적인 실시예에 따른 반도체 시스템을 나타내는 블록도이다.
도 20을 참조하면, 메모리 시스템(800)은 메모리 컨트롤러(810) 및 메모리 장치(820)를 포함할 수 있다. 메모리 장치(820)은 메모리 셀 어레이(821), 리프레쉬 제어기(822) 및 제어 로직(823)을 포함할 수 있다. 또한, 메모리 컨트롤러(810)는 억세스 회수 판단기(811)를 포함하고, 제어 로직(823)은 인접 로우 어드레스 생성기(823_1)를 포함할 수 있다.
전술한 실시예에 따른 각종 카운팅 동작, 판단 동작 및 인접 로우 어드레스 생성 동작들 중 적어도 일부는 메모리 컨트롤러(810)에서 수행될 수 있다. 도 20의 예에서는, 메모리 컨트롤러(810)가 로우들에 대한 억세스 회수를 카운팅하여 가장 많이 억세스된 로우의 어드레스(예컨대, 최대 억세스 어드레스(ADD_max))를 메모리 장치(820)로 제공하는 예가 도시되었으나, 본 발명의 실시예는 이에 국한될 필요가 없을 것이다. 일 예로서, 메모리 컨트롤러(810)가 인접 로우의 어드레스를 생성하여 메모리 장치(820)로 제공하도록 본 발명이 구현될 수도 있을 것이다.
억세스 회수 판단기(811)는 다수의 주기들에 대해 판단된 최대 억세스 어드레스(ADD_max)를 메모리 장치(820)로 제공할 수 있다. 억세스 회수 판단기(811)는 호스트로부터 제공되는 어드레스를 이용하여 카운팅 동작을 수행할 수 있다. 또한, 인접 로우 어드레스 생성기(823_1)는 다수의 주기들 각각에 대해 그 인접 정도를 달리하는 인접 로우 어드레스를 생성할 수 있다. 예컨대, 전술한 실시예들에 따라, 인접 로우 어드레스 생성기(823_1)는 제1 주기에서 최대 억세스 어드레스(ADD_max)의 ±1 인접 로우에 해당하는 어드레스를 생성할 수 있으며, 제2 주기에서 최대 억세스 어드레스(ADD_max)의 ±2 인접 로우에 해당하는 어드레스를 생성할 수 있다.
리프레쉬 제어기(822)는 그 내부에서 생성되는 카운팅 어드레스를 이용하여 노멀 리프레쉬를 수행할 수 있으며, 또한 인접 로우 어드레스 생성기(823_1)에서 생성되는 인접 로우 어드레스를 이용하여 케어 리프레쉬를 수행할 수 있을 것이다.
도 21은 본 발명의 다른 예시적인 메모리 시스템을 나타내는 블록도이다. 도 21에서는 어플리케이션 프로세서(Application Processor, 910)와 메모리 장치(920)를 포함하는 데이터 처리 시스템(900)이 도시되며, 어플리케이션 프로세서(910) 내의 메모리 컨트롤 모듈(911)과 메모리 장치(920)가 메모리 시스템을 구성할 수 있다. 또한, 메모리 장치(920)는 메모리 셀 어레이(921), 리프레쉬 제어기(922) 및 제어 로직(923)을 포함할 수 있다. 또한, 제어 로직(923)은 디스터브 로우 매니저(923_1)를 포함할 수 있다.
어플리케이션 프로세서(910)는 시스템 온 칩(System on Chip, SoC)으로 구현될 수 있다. 시스템 온 칩(SoC)은 소정의 표준 버스 규격을 갖는 프로토콜이 적용된 시스템 버스(미도시)를 포함할 수 있으며, 상기 시스템 버스에 연결되는 각종 IP(Intellectual Property)들을 포함할 수 있다. 시스템 버스의 표준 규격으로서, ARM(Advanced RISC Machine) 사의 AMBA(Advanced Microcontroller Bus Architecture) 프로토콜이 적용될 수 있다. AMBA 프로토콜의 버스 타입에는 AHB(Advanced High-Performance Bus), APB(Advanced Peripheral Bus), AXI(Advanced eXtensible Interface), AXI4, ACE(AXI Coherency Extensions) 등이 포함될 수 있다. 이외에도, 소닉사(SONICs Inc.)의 uNetwork 이나 IBM의 CoreConnect, OCP-IP의 오픈 코어 프로토콜(Open Core Protocol) 등 다른 타입의 프로토콜이 적용되어도 무방하다.
메모리 장치(920)는 전술한 실시예에서의 케어 동작(예컨대, 케어 리프레쉬)에 관련된 각종 기능을 수행할 수 있다. 일 예로서, 디스터브 로우 매니저(923_1)는 로우들에 대한 억세스 회수를 카운팅하고, 다수 개로 설정되는 주기들에 대해 각각 최대 억세스 로우를 판단하며, 판단된 로우에 대해 그 인접한 정도를 달리하는 다수 개의 디스터브 로우들을 검출할 수 있다. 또한, 상기 검출된 다수 개의 디스터브 로우들에 대해 서로 다른 방식에 따라 케어 동작을 수행할 수 있다.
이상에서와 같이 도면과 명세서에서 예시적인 실시예들이 개시되었다. 본 명세서에서 특정한 용어를 사용하여 실시예들을 설명되었으나, 이는 단지 본 개시의 기술적 사상을 설명하기 위한 목적에서 사용된 것이지 의미 한정이나 특허청구범위에 기재된 본 개시의 범위를 제한하기 위하여 사용된 것은 아니다. 그러므로 본 기술분야의 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시예가 가능하다는 점을 이해할 것이다. 따라서, 본 개시의 진정한 기술적 보호범위는 첨부된 특허청구범위의 기술적 사상에 의해 정해져야 할 것이다.
Claims (20)
- 다수의 로우들을 포함하는 메모리 셀 어레이;
상기 다수의 로우들에 대한 리프레쉬를 수행하는 리프레쉬 제어기; 및
서로 다른 시간 길이를 갖고 서로 오버랩되는 제1 주기 및 제2 주기에 대해, 상기 제1 주기 동안의 상기 로우들의 억세스 회수에 기반하여 제1 로우에 가장 인접한 제1 인접 영역에 대한 케어 동작을 제어하고, 상기 제2 주기 동안의 상기 로우들의 억세스 회수에 기반하여 제2 로우에 두 번째로 인접한 제2 인접 영역에 대한 케어 동작을 제어하는 제어 로직을 구비하고,
상기 제2 주기는 상기 제1 주기에 비해 길고, 상기 제1 주기에서 상기 제1 로우에 대한 억세스 회수를 판단하는 동안, 상기 제2 주기에서 상기 제2 로우에 대한 억세스 회수를 판단하는 동작이 함께 수행되는 메모리 장치. - 제1항에 있어서,
상기 제1 로우는 상기 제1 주기 동안 가장 많이 억세스된 로우이고, 상기 제2 로우는 상기 제1 주기보다 긴 상기 제2 주기 동안 가장 많이 억세스된 로우인 것을 특징으로 하는 메모리 장치. - 제1항에 있어서,
상기 제1 인접 영역 및 상기 제2 인접 영역 각각은 하나 이상의 인접 로우들을 포함하는 것을 특징으로 하는 메모리 장치. - 제3항에 있어서,
상기 제1 인접 영역은 상기 제1 로우에 위측 및 아래측으로 가장 인접한 ±1 인접 로우를 포함하고,
상기 제2 인접 영역은 상기 제2 로우에 위측 및 아래측으로 두 번째로 인접한 ±2 인접 로우를 포함하는 것을 특징으로 하는 메모리 장치. - 제1항에 있어서,
상기 케어 동작은, 상기 제1 인접 영역 또는 상기 제2 인접 영역에 포함되는 하나 이상의 인접 로우들에 대한 케어 리프레쉬 동작인 것을 특징으로 하는 메모리 장치. - 제1항에 있어서, 상기 제어 로직은,
상기 제1 주기 동안 상기 로우들의 억세스 회수를 카운팅하고 가장 많이 억세스된 상기 제1 로우의 어드레스를 출력하는 제1 카운터 블록과, 상기 제2 주기 동안 상기 로우들의 억세스 회수를 카운팅하고 가장 많이 억세스된 상기 제2 로우의 어드레스를 출력하는 제2 카운터 블록을 포함하는 억세스 회수 판단기; 및
상기 제1 카운터 블록의 카운팅 결과에 따라 상기 제1 인접 영역에 포함되는 로우들의 어드레스를 생성하고, 상기 제2 카운터 블록의 카운팅 결과에 따라 상기 제2 인접 영역에 포함되는 로우들의 어드레스를 생성하는 인접 로우 어드레스 생성기를 구비하는 것을 특징으로 하는 메모리 장치. - 제6항에 있어서,
상기 제1 카운터 블록 및 상기 제2 카운터 블록 각각은 다수 개의 어드레스 레지스터들 및 이에 대응하는 카운터들을 포함하고,
상기 제1 인접 영역에 대한 케어 동작이 수행된 후, 상기 제1 카운터 블록에서 상기 제1 로우의 어드레스가 저장된 어드레스 레지스터에 대응하는 카운터의 카운팅 값이 리셋되고,
상기 제2 인접 영역에 대한 케어 동작이 수행된 후, 상기 제2 카운터 블록에서 상기 제2 로우의 어드레스가 저장된 어드레스 레지스터에 대응하는 카운터의 카운팅 값이 리셋되는 것을 특징으로 하는 메모리 장치. - 제6항에 있어서,
상기 제1 주기마다 상기 제1 카운터 블록의 카운팅 결과가 상기 제2 카운터 블록에 업데이트되고,
상기 제2 카운터 블록은, 상기 제1 주기마다 가장 많이 억세스된 것으로 판단된 로우에 대응하는 카운터의 카운팅 값을 1 만큼 증가시키는 것을 특징으로 하는 메모리 장치. - 제1항에 있어서,
상기 제어 로직은, 다수의 제1 주기들 각각에 대해 가장 많이 억세스된 로우를 판단하고 이에 대응하는 어드레스를 출력하며, 상기 제2 주기가 도달할 때 상기 다수의 제1 주기들에서 판단된 로우들 중 어느 하나의 로우의 어드레스를 출력하는 카운터 블록을 포함하는 것을 특징으로 하는 메모리 장치. - 제1항에 있어서, 상기 제어 로직은,
제3 주기 내지 제n 주기들에 대해(단, n은 3 이상의 정수), 각각의 주기 동안 가장 많이 억세스된 로우를 판단하고, 상기 주기들에서 판단된 로우들에 대해 서로 다른 정도로 인접한 인접 영역에 대한 케어 동작을 제어하는 것을 특징으로 하는 메모리 장치. - 메모리 장치의 동작방법에 있어서,
상기 메모리 장치는 다수의 로우들을 포함하는 메모리 셀 어레이를 포함하고, 상기 메모리 셀 어레이는 제1 로우에 인접한 정도에 따라 제1 내지 제n 인접 영역들을 포함하며(단, n은 2 이상의 정수),
상기 다수의 로우들의 억세스 회수에 대한 카운팅 동작을 수행함으로써 집중적으로 억세스된 로우를 판단하는 단계;
상기 카운팅 동작의 수행 조건에 따라, 상기 제1 내지 제n 인접 영역들 중 어느 하나의 인접 영역을 선택하는 단계;
상기 선택된 인접 영역에 포함되는 하나 이상의 로우들에 대한 케어 리프레쉬를 수행하는 단계; 및
제1 내지 제n 임계값을 설정하는 단계를 구비하고,
상기 제1 임계값은 상기 제n 임계값보다 작은 값으로 설정되고,
상기 제1 로우의 억세스 회수가 상기 제1 임계값을 초과한 것으로 판단된 경우 상기 제1 인접 영역이 선택되고, 상기 제1 로우의 억세스 회수가 상기 제n 임계값을 초과한 것으로 판단된 경우 상기 제n 인접 영역이 선택되는 것을 특징으로 하는 메모리 장치의 동작방법. - 제11항에 있어서,
상기 선택하는 단계는, 상기 선택된 인접 영역에 포함되는 하나 이상의 로우들의 어드레스를 리프레쉬 어드레스로서 출력하는 단계를 포함하는 것을 특징으로 하는 메모리 장치의 동작방법. - 제11항에 있어서,
상기 제1 로우는 소정의 설정된 주기 동안 가장 많이 억세스된 로우인 것을 특징으로 하는 메모리 장치의 동작방법. - 삭제
- 제11항에 있어서,
상기 제1 인접 영역은 상기 제1 로우에 가장 가까이 인접한 영역이고, 상기 제n 인접 영역은 다른 인접 영역들에 비해 상대적으로 덜 인접한 영역이며, 상대적으로 짧은 구간을 갖는 제1 주기 내지 상대적으로 긴 구간을 갖는 제n 주기가 설정되고,
상기 수행 조건으로서, 상기 카운팅 동작이 상기 제1 주기 동안 수행된 경우 상기 제1 인접 영역이 선택되고, 상기 카운팅 동작이 상기 제n 주기 동안 수행된 경우 상기 제n 인접 영역이 선택되는 것을 특징으로 하는 메모리 장치의 동작방법. - 제11항에 있어서,
상기 메모리 장치는 상기 제1 내지 제n 인접 영역들에 대응하여 제1 내지 제N 카운터 블록들을 포함하고(단, N은 2 이상의 정수),
상기 수행 조건으로서, 상기 카운팅 동작이 상기 제1 카운터 블록에 의해 수행된 경우 상기 제1 인접 영역이 선택되고, 상기 카운팅 동작이 상기 제N 카운터 블록에 의해 수행된 경우 상기 제n 인접 영역이 선택되는 것을 특징으로 하는 메모리 장치의 동작방법. - 메모리 장치의 동작방법에 있어서, 상기 메모리 장치는 제1 내지 제m 로우들을 포함하는 메모리 셀 어레이를 구비하고,
제1 주기 동안 상기 로우들에 대한 억세스 회수를 카운팅한 결과에 기반하여 제h 로우를 판단하는 단계;
상기 제h 로우에 인접한 로우들 중 제(h-1) 로우 및 제(h+1) 로우를 리프레쉬하는 단계;
제2 주기 동안 상기 로우들에 대한 억세스 회수를 카운팅한 결과에 기반하여 제i 로우를 판단하는 단계; 및
상기 제i 로우에 인접한 로우들 중 제(i-2) 로우 및 제(i+2) 로우를 리프레쉬하는 단계를 구비하고,
상기 제2 주기는 상기 제1 주기에 비해 길고 서로 오버랩되며, 상기 제1 주기에서 상기 로우들에 대한 억세스 회수를 카운팅하는 동안, 상기 제2 주기에서 상기 로우들에 대한 억세스 회수를 카운팅하는 동작이 함께 수행되는 메모리 장치의 동작방법(단, h 및 i는 m 미만의 정수). - 제17항에 있어서,
제3 주기 동안 상기 로우들에 대한 억세스 회수를 카운팅한 결과에 기반하여 제j 로우를 판단하는 단계(단, j는 M 미만의 정수); 및
상기 제j 로우에 인접한 로우들 중 제(j-3) 로우 및 제(j+3) 로우를 리프레쉬하는 단계를 구비하고,
상기 제1 주기 내지 상기 제3 주기는 서로 다른 시간 길이를 갖고 서로 오버랩되는 것을 특징으로 하는 메모리 장치의 동작방법. - 제18항에 있어서,
상기 제3 주기는 상기 제2 주기보다 긴 것을 특징으로 하는 메모리 장치의 동작방법. - 제18항에 있어서,
상기 제h 로우는 상기 제1 주기 동안 상기 제1 내지 제m 로우들 중 가장 많이 억세스된 로우이고,
상기 제i 로우는 상기 제2 주기 동안 상기 제1 내지 제m 로우들 중 가장 많이 억세스된 로우이며,
상기 제j 로우는 상기 제3 주기 동안 상기 제1 내지 제m 로우들 중 가장 많이 억세스된 로우인 것을 특징으로 하는 메모리 장치의 동작방법.
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020170064386A KR102308778B1 (ko) | 2017-05-24 | 2017-05-24 | 디스터브 로우를 케어하는 메모리 장치 및 그 동작방법 |
US15/869,803 US10497422B2 (en) | 2017-05-24 | 2018-01-12 | Memory device performing care operation for disturbed row and operating method thereof |
CN201810131724.8A CN108932959B (zh) | 2017-05-24 | 2018-02-09 | 针对被干扰行执行照顾操作的存储器装置及其操作方法 |
JP2018078995A JP7244999B2 (ja) | 2017-05-24 | 2018-04-17 | ディスターブ・ロウをケアするメモリ装置及びその動作方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020170064386A KR102308778B1 (ko) | 2017-05-24 | 2017-05-24 | 디스터브 로우를 케어하는 메모리 장치 및 그 동작방법 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20180128800A KR20180128800A (ko) | 2018-12-04 |
KR102308778B1 true KR102308778B1 (ko) | 2021-10-05 |
Family
ID=64401711
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020170064386A KR102308778B1 (ko) | 2017-05-24 | 2017-05-24 | 디스터브 로우를 케어하는 메모리 장치 및 그 동작방법 |
Country Status (4)
Country | Link |
---|---|
US (1) | US10497422B2 (ko) |
JP (1) | JP7244999B2 (ko) |
KR (1) | KR102308778B1 (ko) |
CN (1) | CN108932959B (ko) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10866899B2 (en) * | 2017-10-02 | 2020-12-15 | Arm Ltd | Method and apparatus for control of a tiered memory system |
US11361811B2 (en) * | 2020-06-23 | 2022-06-14 | Upmem | Method and circuit for protecting a DRAM memory device from the row hammer effect |
FR3111731B1 (fr) * | 2020-06-23 | 2023-01-06 | Upmem | Procédé et circuit de protection d’un dispositif de mémoire DRAM de l’effet de martelagede rang |
JP6975298B1 (ja) * | 2020-09-03 | 2021-12-01 | 華邦電子股▲ふん▼有限公司Winbond Electronics Corp. | 半導体記憶装置 |
KR20230032052A (ko) * | 2021-08-30 | 2023-03-07 | 삼성전자주식회사 | 메모리 컨트롤러 및 메모리 시스템 |
US11948656B1 (en) * | 2022-09-21 | 2024-04-02 | Micron Technology, Inc. | Counter management for memory systems |
Family Cites Families (35)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6603683B2 (en) * | 2001-06-25 | 2003-08-05 | International Business Machines Corporation | Decoding scheme for a stacked bank architecture |
US7565479B2 (en) | 2005-08-04 | 2009-07-21 | Rambus Inc. | Memory with refresh cycle donation to accommodate low-retention-storage rows |
US7362640B2 (en) * | 2005-12-29 | 2008-04-22 | Mosaid Technologies Incorporated | Apparatus and method for self-refreshing dynamic random access memory cells |
JP2009205724A (ja) * | 2008-02-27 | 2009-09-10 | Toshiba Corp | 半導体記憶装置 |
US8174881B2 (en) * | 2009-11-24 | 2012-05-08 | Micron Technology, Inc. | Techniques for reducing disturbance in a semiconductor device |
US8392650B2 (en) | 2010-04-01 | 2013-03-05 | Intel Corporation | Fast exit from self-refresh state of a memory device |
US11024352B2 (en) * | 2012-04-10 | 2021-06-01 | Samsung Electronics Co., Ltd. | Memory system for access concentration decrease management and access concentration decrease method |
KR101881366B1 (ko) * | 2012-06-04 | 2018-07-24 | 에스케이하이닉스 주식회사 | 반도체 장치 및 그 동작 방법 |
US9236110B2 (en) * | 2012-06-30 | 2016-01-12 | Intel Corporation | Row hammer refresh command |
KR20140007989A (ko) * | 2012-07-09 | 2014-01-21 | 삼성전자주식회사 | 불휘발성 램을 포함하는 사용자 장치 및 그것의 설정 방법 |
KR101977665B1 (ko) * | 2012-07-12 | 2019-08-28 | 삼성전자주식회사 | 리프레쉬 주기를 조절하는 반도체 메모리 장치, 메모리 시스템 및 그 동작방법 |
US9299400B2 (en) * | 2012-09-28 | 2016-03-29 | Intel Corporation | Distributed row hammer tracking |
US9384821B2 (en) | 2012-11-30 | 2016-07-05 | Intel Corporation | Row hammer monitoring based on stored row hammer threshold value |
US9032141B2 (en) * | 2012-11-30 | 2015-05-12 | Intel Corporation | Row hammer monitoring based on stored row hammer threshold value |
US9202547B2 (en) * | 2013-03-15 | 2015-12-01 | Intel Corporation | Managing disturbance induced errors |
KR20140139849A (ko) | 2013-05-28 | 2014-12-08 | 에스케이하이닉스 주식회사 | 메모리 및 이를 포함 하는 메모리 시스템 |
US9515970B2 (en) * | 2013-07-17 | 2016-12-06 | Cisco Technology, Inc. | Techniques for auto-detecting positions in a multi-resource login control of instant messaging |
US9047978B2 (en) * | 2013-08-26 | 2015-06-02 | Micron Technology, Inc. | Apparatuses and methods for selective row refreshes |
KR20150033950A (ko) * | 2013-09-25 | 2015-04-02 | 에스케이하이닉스 주식회사 | 어드레스 검출회로, 메모리 및 메모리 시스템 |
US9396786B2 (en) | 2013-09-25 | 2016-07-19 | SK Hynix Inc. | Memory and memory system including the same |
KR102182368B1 (ko) * | 2013-12-19 | 2020-11-24 | 에스케이하이닉스 주식회사 | 어드레스 검출회로 및 이를 포함하는 메모리 |
US9548137B2 (en) | 2013-12-26 | 2017-01-17 | Intel Corporation | Integrated circuit defect detection and repair |
KR102193993B1 (ko) | 2014-02-21 | 2020-12-22 | 삼성전자주식회사 | 메모리 장치 및 이를 포함하는 메모리 시스템 |
JP5983665B2 (ja) * | 2014-03-17 | 2016-09-06 | 日本電気株式会社 | アクセス回数カウント装置、メモリシステム、および、アクセス回数カウント方法 |
US9431085B2 (en) | 2014-03-28 | 2016-08-30 | Synopsys, Inc. | Most activated memory portion handling |
KR102116980B1 (ko) * | 2014-07-02 | 2020-05-29 | 삼성전자 주식회사 | 리던던시 메모리 셀의 리프레쉬 동작을 제어하는 반도체 메모리 장치 |
KR20160035444A (ko) * | 2014-09-23 | 2016-03-31 | 에스케이하이닉스 주식회사 | 스마트 리프레쉬 장치 |
WO2016083865A1 (zh) * | 2014-11-25 | 2016-06-02 | 三星电子株式会社 | 基于概率信息检测半导体存储器的被最频繁存取的地址的方法 |
KR20160069213A (ko) * | 2014-12-08 | 2016-06-16 | 에스케이하이닉스 주식회사 | 반도체 메모리 장치 |
KR20170024307A (ko) * | 2015-08-25 | 2017-03-07 | 삼성전자주식회사 | 내장형 리프레쉬 콘트롤러 및 이를 포함하는 메모리 장치 |
KR102373544B1 (ko) * | 2015-11-06 | 2022-03-11 | 삼성전자주식회사 | 요청 기반의 리프레쉬를 수행하는 메모리 장치, 메모리 시스템 및 메모리 장치의 동작방법 |
KR102434053B1 (ko) * | 2015-11-16 | 2022-08-19 | 삼성전자주식회사 | 반도체 메모리 장치, 이를 포함하는 메모리 시스템 및 이의 동작 방법 |
KR20180060091A (ko) * | 2016-11-28 | 2018-06-07 | 삼성전자주식회사 | 메모리 장치의 구동 방법 및 메모리 시스템의 구동 방법 |
US10019350B1 (en) * | 2017-08-02 | 2018-07-10 | Nanya Technology Corporation | Dram and method for accessing a dram |
US10825534B2 (en) * | 2018-10-26 | 2020-11-03 | Intel Corporation | Per row activation count values embedded in storage cell array storage cells |
-
2017
- 2017-05-24 KR KR1020170064386A patent/KR102308778B1/ko active IP Right Grant
-
2018
- 2018-01-12 US US15/869,803 patent/US10497422B2/en active Active
- 2018-02-09 CN CN201810131724.8A patent/CN108932959B/zh active Active
- 2018-04-17 JP JP2018078995A patent/JP7244999B2/ja active Active
Also Published As
Publication number | Publication date |
---|---|
JP2018198107A (ja) | 2018-12-13 |
KR20180128800A (ko) | 2018-12-04 |
US20180342283A1 (en) | 2018-11-29 |
JP7244999B2 (ja) | 2023-03-23 |
US10497422B2 (en) | 2019-12-03 |
CN108932959B (zh) | 2023-06-02 |
CN108932959A (zh) | 2018-12-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102308778B1 (ko) | 디스터브 로우를 케어하는 메모리 장치 및 그 동작방법 | |
US11610623B2 (en) | Apparatus with a row-hammer address latch mechanism | |
CN107017015B (zh) | 执行基于请求的刷新的存储装置和存储***及操作方法 | |
US9691466B1 (en) | Memory device including refresh controller | |
US9293188B2 (en) | Memory and memory controller for high reliability operation and method | |
KR102157769B1 (ko) | 메모리 시스템 및 이의 동작 방법 | |
JP5063041B2 (ja) | 向上されたリフレッシュメカニズムを有するダイナミック半導体メモリ | |
US10318420B2 (en) | Draining a write queue based on information from a read queue | |
KR101049312B1 (ko) | 휘발성 메모리 성능에 대한 리프레쉬 동작들의 영향을 최소화하기 위한 방법 및 시스템 | |
CN112669889A (zh) | 用于动态目标刷新窃取的设备和方法 | |
US20150243339A1 (en) | Apparatuses and methods for selective row refreshes | |
WO2014142254A1 (ja) | 半導体記憶装置及びこれを備えるシステム | |
KR20150105054A (ko) | 반도체 메모리 장치 | |
KR20150064953A (ko) | 반도체 메모리 장치 | |
JP5034551B2 (ja) | メモリコントローラ、半導体メモリのアクセス制御方法およびシステム | |
US10475503B2 (en) | Circuit for selecting row to be refreshed | |
KR102143291B1 (ko) | 반도체 메모리 디바이스 | |
KR102468291B1 (ko) | 반도체 장치 | |
KR20200055190A (ko) | 메모리 장치 및 그것의 동작 방법 | |
KR101989860B1 (ko) | 메모리 컨트롤러 및 이를 포함하는 메모리 시스템 | |
KR102501651B1 (ko) | 리프레쉬 제어 장치 | |
KR20170093053A (ko) | 리프레시 정보 생성기를 포함하는 휘발성 메모리 장치 및 전자 장치, 그것의 정보 제공 방법, 그리고 그것의 리프레시 제어 방법 | |
KR102161311B1 (ko) | 메모리 컨트롤러 | |
JP4753637B2 (ja) | メモリ | |
TWI740773B (zh) | 半導體記憶裝置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |