KR102014834B1 - 메모리 장치, 메모리 시스템 및 그 동작방법 - Google Patents
메모리 장치, 메모리 시스템 및 그 동작방법 Download PDFInfo
- Publication number
- KR102014834B1 KR102014834B1 KR1020120093113A KR20120093113A KR102014834B1 KR 102014834 B1 KR102014834 B1 KR 102014834B1 KR 1020120093113 A KR1020120093113 A KR 1020120093113A KR 20120093113 A KR20120093113 A KR 20120093113A KR 102014834 B1 KR102014834 B1 KR 102014834B1
- Authority
- KR
- South Korea
- Prior art keywords
- memory cell
- count value
- disturb
- memory
- 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/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/4072—Circuits for initialization, powering up or down, clearing memory or presetting
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Computer Hardware Design (AREA)
- Dram (AREA)
Abstract
메모리 장치, 메모리 시스템 및 그 동작 방법이 개시된다. 본 발명의 실시예에 따른 메모리 장치의 동작 방법은 (a)제1메모리 셀을 액세스할 때마다, 상기 제1메모리 셀에 인접한 제2 메모리 셀의 디스터브 양을 카운트하여 상기 제2 메모리 셀에 대한 디스터브 카운트값을 업데이트하는 단계, (b)상기 제2메모리 셀의 디스터브 카운트값을 기설정된 문턱값 및 최대 디스터브 카운트값과 비교한 결과에 따라 리프레쉬 동작 스케줄을 조정하는 단계 및 (c)상기 조정된 스케줄에 따라 상기 제2메모리 셀을 리프레쉬한 경우, 상기 제2메모리 셀의 디스터브 카운트값 및 상기 최대 디스터브 카운트값을 리셋하는 단계를 포함한다.
Description
본 발명은 메모리 장치에 관한 것으로서, 보다 상세하게는 리프레쉬 동작(Refresh)을 제어함으로써 메모리 셀에의 액세스시 발생하는 디스터브에 의한 동적 리프레쉬 특성 열화를 감소시킬 수 있는 메모리 장치, 메모리 시스템 및 그 동작방법에 관한 것이다.
DRAM(Dynamic random access memory) 등의 반도체 메모리 소자의 워드라인(Word Line; WL)에는 메모리 셀에 액세스하기 위한 트랜지스터를 인에이블(Enable)하기 위해 고전압이 인가된다. 이때 상기 고전압에 의해 발생하는 전기장(Field)은 인접 셀에 있는 액세스 트랜지스터의 문턱전압을 낮출 수 있다. 그 결과 상기 인접 셀의 누설량이 증가되는데 이를 패스 게이트 효과(Pass Gate Effect)라고 한다. 누설 전류로 인한 데이터의 손실을 막기 위해, DRAM은 셀에 저장된 데이터가 완전히 손실되기 이전에 데이터를 꺼내어 읽고 다시 셀에 써넣는 동작이 요구된다. 상기와 같은 동작을 리프레쉬(refresh) 동작이라고 하며, 리프레쉬 동작은 DRAM 내부에서 일정한 주기(periodically)로 수행하거나 시스템의 요청에 의해 수행될 수 있다.
리프레쉬 동작 특성에는 정적 리프레쉬(Static Refresh) 특성과 동적 리프레쉬(Dynamic Refresh) 특성이 있다. 이때 메모리 셀 어레이 중 소정의 셀에 대한 제1 리프레쉬 동작과 상기 셀에 대해 다음번에 수행되는 제2 리프레쉬 동작 사이의 시간 간격을 리프레쉬 인터벌(Refresh Interval)이라고 한다.
정적 리프레쉬 특성은 리프레쉬 인터벌 동안 DRAM에 대한 액세스가 적게 또는 수행되지 않았을 경우에 대한 셀의 리프레쉬 특성을 말한다. 동적 리프레쉬 특성은 리프레쉬 인터벌 동안 DRAM 셀에 대한 액세스가 정적 리프레쉬 특성에 비해 상대적으로 빈번히 수행되는 경우의 셀의 리프레쉬 특성을 말한다.
정적 리프레쉬의 경우 동적 리프레쉬에 비해 인접 셀 또는 인접 라인의 영향을 적게 받으며, 다른 셀을 액세스할 때 발생하는 파워 노이즈(Power Noise)에 의한 영향도 적다.
반면 동적 리프레쉬의 경우 DRAM 셀에 대한 액세스가 빈번하므로 액세스 빈도에 따라 각각의 셀이 받는 영향이 달라지게 된다. 이때 어느 하나의 DRAM 셀에 대한 액세스에 의해 나머지 각 셀들이 받는 영향의 정도를 디스터브(Disturb)라고 한다.
DRAM 메모리 셀 어레이의 셀들 간 간격이 넓은 경우에는 액세스가 나머지 각 셀에 디스터브 영향을 주는 경향이 작다. 그러나 스케일링(Scaling)으로 메모리 셀들 간 간격이 좁아질 경우 인접한 셀 또는 인접하여 지나가는 라인들에 의한 간섭, 즉, 디스터브(Disturb)가 영향을 주는 경향이 크다.
랜덤 액세스 메모리(일례로 DRAM)의 경우 특정 어드레스에 대한 액세스를 제한할 수 없으므로, 일부 특정 셀로 액세스가 집중될 수 있다. 액세스가 집중되면 디스터브의 영향을 받아 해당 셀의 리프레쉬 특성은 급격히 악화된다.
따라서, 리프레쉬 특성을 개선하기 위해 디스터브가 집중되는 셀에 대해 리프레쉬를 더 빈번하게 해 줄 필요가 있다.
본 발명이 이루고자 하는 기술적 과제는 디스터브가 집중된 셀에 대한 리프레쉬 동작을 제어함으로써 동적 리프레쉬 특성을 개선할 수 있는 메모리 장치, , 메모리 시스템 및 그 동작방법을 제공함에 있다.
상술한 기술적 과제를 해결하기 위하여, 본 발명의 일실시예에 따른 복수의 메모리셀들을 포함하는 메모리 장치의 동작방법은 (a)제1메모리 셀을 액세스할 때마다, 상기 제1메모리 셀에 인접한 제2 메모리 셀의 디스터브 양을 카운트하여 상기 제2 메모리 셀에 대한 디스터브 카운트값을 업데이트하는 단계, (b)상기 제2메모리 셀의 디스터브 카운트값을 기설정된 문턱값 및 최대 디스터브 카운트값과 비교한 결과에 따라 리프레쉬 동작 스케줄을 조정하는 단계 및 (c)상기 조정된 스케줄에 따라 상기 제2메모리 셀을 리프레쉬한 경우, 상기 제2메모리 셀의 디스터브 카운트값 및 상기 최대 디스터브 카운트값을 리셋하는 단계를 포함한다.
상기 디스터브 양은 상기 제1 메모리 셀에 대한 누적 액세스 타임(Access time)을 단위 시간으로 나눈 값일 수 있다.
상기 디스터브 카운트값은 상기 제1 메모리 셀이 액세스될 때마다, 이전 액세스 타임에 저장된 디스터브 카운트값에 상기 제1 메모리 셀의 현재 액세스 타임동안 주기적으로 카운트되는 값을 더하여 업데이트된다.
상기 (b)단계는 상기 제2메모리 셀의 디스터브 카운트값이 상기 문턱값 이상이고 상기 최대 디스터브 카운트값을 초과하는 경우, 상기 스케줄 내 상기 제2메모리 셀에 대한 리프레쉬 동작 순서를 앞당기는 단계 및 상기 최대 디스터브 카운트값을 상기 제2메모리 셀의 디스터브 카운트값으로 업데이트 하는 단계를 포함할 수 있다.
상기 (c)단계는 상기 메모리 장치가 파워업(Power Up)된 후 비정규 리프레쉬 플래그를 활성화하여 스케줄에 따라 리프레쉬 동작을 수행하도록 제어하고, 상기 메모리 장치가 테스트 모드인 경우 상기 비정규 리프레쉬 플래그는 비활성화하여 리프레쉬 동작을 정지시킬 수 있다.
상기 제2메모리 셀을 리프레쉬하는 경우 상기 비정규 리프레쉬 플래그는 리셋될 수 있다.
상기 동작방법은 상기 메모리 장치가 파워업(Power Up)되어 초기화될 경우 상기 메모리 장치의 상기 디스터브 카운트값들을 초기화하는 단계를 더 포함한다.
상술한 기술적 과제를 해결하기 위하여, 본 발명의 일실시예에 따른 메모리 장치는 복수의 메모리 셀들을 포함하는 메모리 셀 어레이, 상기 복수의 메모리 셀들 중 적어도 하나의 제1메모리 셀에 액세스할 때, 제1 메모리 셀에 인접한 제2 메모리 셀에 대한 현재 디스터브 카운트값을 리드하고 상기 현재 디스터브 카운트값을 기설정된 문턱값 및 최대 디스터브 카운트값과 비교하며, 상기 제1메모리 셀의 현재 액세스 타임 동안 상기 제2 메모리 셀의 디스터브 양을 카운트하여 상기 디스터브 카운트값을 업데이트하는 컨트롤 로직 및 상기 제2메모리 셀의 워드라인 어드레스를 계산하고, 상기 디스터브 카운트값의 비교결과에 따라 상기 제2메모리 셀에 대한 현재 리프레쉬 스케줄을 조정하여 상기 제2 메모리 셀의 리프레쉬 동작을 수행하고, 파워업신호에 기초하여 리프레쉬 동작 수행의 초기화 여부를 제어하는 리프레쉬 유닛을 포함한다.
상기 메모리셀 어레이는 데이터를 저장하는 복수의 상기 제1메모리 셀들을 포함하는 노말 셀 어레이 및 상기 디스터브 카운트값을 저장하는 복수의 디스터브 카운트 셀들을 포함하는 디스터브 카운트 셀 어레이를 포함할 수 있다.
적어도 하나의 상기 디스터브 카운트 셀은 상기 제1메모리 셀과 동일 워드라인에 속한다.
상기 컨트롤 로직은 호스트로부터 클락신호, 액티브 명령 및 어드레스를 수신하여 상기 클락신호에 기초하여 상기 명령에 상응하는 제어신호들로 디코딩하고, 상기 어드레스를 상기 제1메모리 셀에 액세스하기 위한 로우 어드레스와 컬럼 어드레스로 디코딩하는 어드레스 커맨드 디코더, 리드된 상기 현재 디스터브 카운트값을 상기 문턱값 및 최대 디스터브 카운트값과 비교하는 카운트값 비교부, 상기 제1 메모리 셀이 액세스될 때마다, 이전 액세스 타임에 저장된 디스터브 카운트값에 상기 제1 메모리 셀의 현재 액세스 타임동안 주기적으로 카운트되는 값을 더하여 업데이트하는 카운트값 업데이트부 및 상기 메모리 장치의 초기화 시점부터 현재 동작시점까지의 상기 제2메모리 셀에 대한 상기 디스터브 카운트값들 중 최대 디스터브 카운트값을 저장하고, 상기 업데이트된 디스터브 카운트값이 현재 최대 디스터브 카운트값보다 크면, 상기 업데이트된 디스터브 카운트값을 최대 디스터브 카운트값으로 업데이트하는 최대 디스터브 카운트값 저장부를 포함할 수 있다.
상기 리프레쉬 유닛은 상기 컨트롤 로직으로부터 수신한 상기 제1 메모리 셀에 대한 어드레스를 기초로 상기 제2 메모리 셀에 대한 어드레스를 계산하는 인접 어드레스 계산부, 상기 제2 메모리 셀에 대한 상기 현재 디스터브 카운트값이 상기 문턱값 이상이고 상기 최대 디스터브 카운트값을 초과하면, 상기 제2 메모리 셀의 상기 어드레스를 다음 비정규 리프레쉬 주소로 저장하고, 상기 제2 메모리 셀에 대한 비정규 리프레쉬 동작 수행 여부를 비정규 리프레쉬 플래그(Refresh Flag)에 반영하는 다음 비정규 리프레쉬 주소 및 비정규 리프레쉬 플래그 저장부, 상기 비정규 리프레쉬 플래그에 따라 상기 제2 메모리 셀의 비정규 리프레쉬 동작을 우선적으로 수행하도록 상기 현재 리프레쉬 스케줄을 조정하는 리프레쉬 컨트롤러를 포함할 수 있다.
상기 리프레쉬 유닛은 상기 파워업신호에 기초하여 상기 메모리 셀 어레이 전체를 모두 리프레쉬하고, 상기 디스터브 카운트값을 초기화하도록 제어하는 내부 리프레쉬 신호를 출력하는 주기적 내부 리프레쉬 커맨드 생성부를 더 포함할 수 있다.
상기 컨트롤 로직은 상기 내부 리프레쉬 신호에 따라 카운트 유효 플래그를 활성화하여 상기 카운트값 업데이트부, 상기 카운트값 비교부 및 상기 최대 디스터브 카운트값 저장부를 리셋하는 카운트 유효 플래그 유닛을 포함할 수 있다.
상기 카운트값 업데이트부는 상기 제2 메모리 셀에 대한 비정규 리프레쉬 동작 수행 후, 상기 제2 메모리 셀에 대한 디스터브 카운트값을 리셋할 수 있다
상기 리프레쉬 컨트롤러는 상기 제2 메모리 셀에 대한 상기 현재 디스터브 카운트값이 상기 문턱값 이상이고 상기 최대 디스터브 카운트값을 초과하면, 상기 제2 메모리 셀에 대한 비정규 리프레쉬 동작 순서를 상기 현재 리프레쉬 스케줄 사이에 삽입하여 우선처리할 수 있다.
상기 리프레쉬 컨트롤러는 상기 제2 메모리 셀에 대한 상기 현재 디스터브 카운트값이 상기 문턱값 이상이고 상기 최대 디스터브 카운트값을 초과하면, 상기 제2 메모리 셀에 대한 비정규 리프레쉬 동작 순서를 상기 현재 리프레쉬 스케줄과 병행처리되도록 스케줄링할 수 있다.
상기 카운트 유효 플래그 유닛은 상기 메모리 장치가 테스트 모드인 경우, 상기 제2 메모리 셀에 대한 비정규 리프레쉬 동작을 수행하지 않도록 상기 카운트 유효 플래그를 비활성화할 수 있다.
상기 메모리 장치는 상기 제2 메모리 셀에 대한 현재 디스터브 카운트값을 상기 디스터브 카운트 셀로부터 리드(Read)하고, 상기 업데이트된 디스터브 카운트값을 상기 디스터브 카운트 셀에 라이트(Write)하는 카운트 라이트 리드 블럭을 더 포함할 수 있다.
상술한 기술적 과제를 해결하기 위하여, 본 발명의 일실시예에 따른 복수의 메모리 셀들을 포함하는 메모리 시스템의 동작 방법은 (a)적어도 하나의 제1 메모리 셀에 액세스(Access) 하는 동안 상기 제1 메모리 셀의 워드라인에 인접한 제2 메모리 셀의 디스터브 양(Disturb Value)을 카운트하여 디스터브 카운트값을 업데이트(update)하는 단계, (b)상기 업데이트된 디스터브 양을 최대 디스터브 카운트값 및 기설정된 문턱값을 비교한 결과에 기초하여 상기 제2 메모리 셀에 대한 리프레쉬(Refresh) 동작의 순서를 변경하는 단계, (c)상기 순서에 따라 상기 제2 메모리 셀에 대한 리프레쉬 동작이 수행되면, 상기 제2 메모리 셀의 디스터브 카운트값을 리셋(Reset)하는 단계를 포함한다.
상기 디스터브 양은 상기 제1 메모리 셀에 대한 누적 액세스 타임(Access time)동안 카운터를 주기적으로 증가시킨 값이다.
상기 (b)단계는 상기 제2 메모리 셀의 디스터브 양이 상기 문턱값과 동일하거나 크고, 상기 최대 디스터브 카운트값보다 클 경우 상기 제2 메모리 셀의 리프레쉬 동작을 우선순위로 스케줄링하는 단계, 상기 제2 메모리 셀의 디스터브 양을 새로운 최대 디스터브 카운트값으로 업데이트 하는 단계 및 상기 제2 메모리 셀에 대한 리프레쉬 동작을 수행할지 여부를 나타내는 비정규 리프레쉬 플래그(Refresh Flag)를 업데이트 하는 단계를 포함할 수 있다.
상기 비정규 리프레쉬 플래그가 활성화 된 경우 상기 동작방법은 상기 제2메모리 셀에 대한 리프레쉬 동작을 수행하는 단계 및 상기 제2 메모리 셀의 최대 디스터브 카운트값 및 상기 제2 메모리 셀의 디스터브 양을 리셋한 후 상기 비정규 리프레쉬 플래그를 리셋하는 단계를 더 포함할 수 있다.
상기 동작방법은 상기 메모리 시스템을 파워업(Power Up)한 경우 상기 메모리 시스템의 모든 워드라인을 인에이블하여 모든 상기 디스터브 카운트값들을 리셋하는 단계를 더 포함한다.
본 발명의 메모리 장치, 메모리 시스템 및 그 동작방법에 의하면, 디스터브가 집중된 셀에 대해 리프레쉬 동작을 더 빈번하게 수행함으로써 해당 셀의 리프레쉬 특성을 개선하고 메모리 장치의 데이터 신뢰성을 향상시킬 수 있는 효과가 있다.
도 1은 본 발명의 실시예들에 따른 메모리 장치의 간단한 블록도이다.
도 2는 본 발명의 일실시예에 따른 메모리 장치를 구체적으로 나타낸 블록도이다.
도 3은 본 발명의 일실시예에 따른 메모리 장치의 동작방법을 나타낸 흐름도이다.
도 4는 도 3에 도시된 메모리 장치의 동작방법 중 초기화되는 경우를 나타낸 흐름도이다.
도 5는 도 3에 도시된 메모리 장치의 동작방법 중 액티브 상태인 경우를 나타낸 흐름도이다.
도 6은 도 3에 도시된 메모리 장치의 동작방법 중 리프레쉬 상태인 경우를 나타낸 흐름도이다.
도 7은 본 발명의 실시예들에 따른 메모리 셀의 리프레쉬 방법의 동작을 설명하기 위한 표이다.
도 8a 및 도 8b는 본 발명의 실시예들에 따른 메모리 셀의 리프레쉬 방법의 동작을 설명하기 위한 표이다.
도 9a 및 도 9b는 본 발명의 실시예들에 따른 메모리 셀의 리프레쉬 방법의 동작을 설명하기 위한 표이다.
도 10a 및 도 10b는 본 발명의 실시예들에 따른 메모리 셀의 리프레쉬 방법의 동작을 설명하기 위한 표이다.
도 11a 내지 도 11c는 본 발명의 실시예들에 따른 메모리 셀의 리프레쉬 방법의 동작을 설명하기 위한 표이다.
도 12는 도 1에 도시된 메모리 장치를 포함하는 컴퓨터 시스템의 일 실시 예를 나타낸다.
도 13은 도 1에 도시된 메모리 장치를 포함하는 컴퓨터 시스템의 다른 실시 예를 나타낸다.
도 14는 도 1에 도시된 메모리 장치를 포함하는 컴퓨터 시스템의 또 다른 실시 예를 나타낸다.
도 15는 도 1에 도시된 메모리 장치를 포함하는 컴퓨터 시스템의 또 다른 실시 예를 나타낸다.
도 16은 도 1에 도시된 메모리 장치를 포함하는 메모리 시스템의 또 다른 실시 예를 나타낸다.
도 17은 도 1에 도시된 메모리 장치를 포함하는 데이터 처리 시스템의 일 실시 예를 나타낸다.
도 18은 도 1에 도시된 메모리 장치를 포함하는 멀티-칩 패키지의 일실시예를 개략적으로 나타낸 개념도이다.
도 19는 도 18에 도시된 멀티-칩 패키지의 일실시예를 입체적으로 나타낸 개념도이다.
도 2는 본 발명의 일실시예에 따른 메모리 장치를 구체적으로 나타낸 블록도이다.
도 3은 본 발명의 일실시예에 따른 메모리 장치의 동작방법을 나타낸 흐름도이다.
도 4는 도 3에 도시된 메모리 장치의 동작방법 중 초기화되는 경우를 나타낸 흐름도이다.
도 5는 도 3에 도시된 메모리 장치의 동작방법 중 액티브 상태인 경우를 나타낸 흐름도이다.
도 6은 도 3에 도시된 메모리 장치의 동작방법 중 리프레쉬 상태인 경우를 나타낸 흐름도이다.
도 7은 본 발명의 실시예들에 따른 메모리 셀의 리프레쉬 방법의 동작을 설명하기 위한 표이다.
도 8a 및 도 8b는 본 발명의 실시예들에 따른 메모리 셀의 리프레쉬 방법의 동작을 설명하기 위한 표이다.
도 9a 및 도 9b는 본 발명의 실시예들에 따른 메모리 셀의 리프레쉬 방법의 동작을 설명하기 위한 표이다.
도 10a 및 도 10b는 본 발명의 실시예들에 따른 메모리 셀의 리프레쉬 방법의 동작을 설명하기 위한 표이다.
도 11a 내지 도 11c는 본 발명의 실시예들에 따른 메모리 셀의 리프레쉬 방법의 동작을 설명하기 위한 표이다.
도 12는 도 1에 도시된 메모리 장치를 포함하는 컴퓨터 시스템의 일 실시 예를 나타낸다.
도 13은 도 1에 도시된 메모리 장치를 포함하는 컴퓨터 시스템의 다른 실시 예를 나타낸다.
도 14는 도 1에 도시된 메모리 장치를 포함하는 컴퓨터 시스템의 또 다른 실시 예를 나타낸다.
도 15는 도 1에 도시된 메모리 장치를 포함하는 컴퓨터 시스템의 또 다른 실시 예를 나타낸다.
도 16은 도 1에 도시된 메모리 장치를 포함하는 메모리 시스템의 또 다른 실시 예를 나타낸다.
도 17은 도 1에 도시된 메모리 장치를 포함하는 데이터 처리 시스템의 일 실시 예를 나타낸다.
도 18은 도 1에 도시된 메모리 장치를 포함하는 멀티-칩 패키지의 일실시예를 개략적으로 나타낸 개념도이다.
도 19는 도 18에 도시된 멀티-칩 패키지의 일실시예를 입체적으로 나타낸 개념도이다.
본 명세서 또는 출원에 개시되어 있는 본 발명의 개념에 따른 실시 예들에 대해서 특정한 구조적 내지 기능적 설명들은 단지 본 발명의 개념에 따른 실시 예를 설명하기 위한 목적으로 예시된 것으로, 본 발명의 개념에 따른 실시 예들은 다양한 형태로 실시될 수 있으며 본 명세서 또는 출원에 설명된 실시 예들에 한정되는 것으로 해석되어서는 아니 된다.
본 발명의 개념에 따른 실시 예는 다양한 변경을 가할 수 있고 여러 가지 형태를 가질 수 있으므로 특정 실시 예들을 도면에 예시하고 본 명세서 또는 출원에 상세하게 설명하고자 한다. 그러나, 이는 본 발명의 개념에 따른 실시 예를 특정한 개시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.
제1 및/또는 제2 등의 용어는 다양한 구성 요소들을 설명하는데 사용될 수 있지만, 상기 구성 요소들은 상기 용어들에 의해 한정되어서는 안된다. 상기 용어들은 하나의 구성 요소를 다른 구성 요소로부터 구별하는 목적으로만, 예컨대 본 발명의 개념에 따른 권리 범위로부터 이탈되지 않은 채, 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소는 제1 구성요소로도 명명될 수 있다.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다. 구성요소들 간의 관계를 설명하는 다른 표현들, 즉 "~사이에"와 "바로 ~사이에" 또는 "~에 이웃하는"과 "~에 직접 이웃하는" 등도 마찬가지로 해석되어야 한다.
본 명세서에서 사용한 용어는 단지 특정한 실시 예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 명세서에서, "포함하다" 또는 "가지다" 등의 용어는 설시된 특징, 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 명세서에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
누설 전류로 인한 데이터의 손실을 막기 위해, DRAM은 셀에 저장된 데이터가 완전히 손실되기 이전에 데이터를 꺼내어 읽고 다시 셀에 써넣는 리프레쉬(Refresh) 동작이 요구된다. 메모리 셀의 리프레쉬 특성은 셀 자체의 특성에 의해서만 결정되지 않고, 셀에 인가되는 전압들의 다이나믹 노이즈(Dynamic Noise), 액세스 셀에 인접한 셀의 포텐셜(Potential), 또는 인접하여 지나가는 라인(Line)들의 포텐셜에 의해 영향을 받게 된다.
본 명세서에서 사용되는 "정규 리프레쉬 동작"과 "비정규 리프레쉬 동작"이란 용어는 단지 특정한 실시 예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 본 명세서에서 사용되는 정규 리프레쉬 동작(Regular Refresh Operation)은 디스터브(Disturb)와 관계없이 메모리 장치 내부 자체적으로 또는 외부 시스템의 제어명령에 따라 노말 셀을 리프레쉬 하는 것을 말하고, 비정규 리프레쉬 동작(Irregular Refresh Operation)은 메모리 셀 각각의 디스터브 양을 고려하여 리프레쉬 스케줄을 조정하고, 디스터브 양이 큰 메모리 셀에 대한 리프레쉬 동작을 정규 리프레쉬 동작보다 먼저 또는 병행하여 수행하는 것을 말한다고 하자.
이하, 첨부한 도면을 참조하여 본 발명의 바람직한 실시 예를 설명함으로써, 본 발명을 상세히 설명한다.
도 1은 본 발명의 실시예들에 따른 메모리 장치의 간단한 블록도이고, 도 2는 본 발명의 일실시예에 따른 메모리 장치를 구체적으로 나타낸 블록도이다.
도 1의 메모리 장치(100)는 다수의 셀 어레이(Cell Array, 10), 적어도 하나의 로우 멀티플렉서(ROW MUX, 31), 적어도 하나의 로우 버퍼(ROW Buffer, 32), 적어도 하나의 로우 디코더(ROW Decoder, 33), 뱅크 컨트롤 로직(Bank Control Logic, 40), 적어도 하나의 컬럼 버퍼(Column Buffer, 510), 적어도 하나의 컬럼 디코더(Column Decoder, 52), 센스앰프(Sense Amplifier, 61), 출력 드라이버(Output Driver, 65), 입력버퍼(Input buffer, 67), 입출력 컨트롤 유닛(I/O Control Unit, 70), 제어로직(Control Logic, 200) 및 리프레쉬 유닛(Refresh Unit, 250)을 포함한다.
셀 어레이(10)들 각각은 노말 셀 어레이(Normal Cell Array, 11) 및 디스터브 카운트 셀 어레이(Disturb Count Cell Array, 20)를 포함한다. 노말 셀 어레이(11)는 데이터를 저장하기 위한 셀들, 즉 복수의 노말 셀들을 포함한다. 디스터브 카운트 셀 어레이(20)는 노말 셀들 중 메모리 액세스가 집중되는 공격 셀(Aggressor cell)에 의해 상기 공격 셀에 인접/ 근접한 특정 셀(Victim cell)이 받는 디스터브 카운트값을 저장하기 위한 셀들을 포함한다. 또한 디스터브 카운트 셀 어레이(20)는 상기 공격 셀에 인접/ 근접한 상기 특정 셀(x=k)이 속해있는 워드라인(WLk)에 달려있는 다른 셀들이 받는 디스터브 카운트값들을 저장하기 위한 셀들을 포함한다.
예컨대, 다수의 셀 어레이(10) 각각은 동적 랜덤 액세스 메모리(Dynamic Random Access Memory; 이하 DRAM)로 구현될 수 있다. 그러나 본 발명의 개념은 메모리의 종류에 한정하는 것은 아니다.
컨트롤 로직(200)은 복수의 신호들(CK, Command, Add)에 응답하여 각 구성요소(elements; 250,31,40,51,70)를 제어한다.
클락 신호(CK)는 클락 드라이버(미도시)로부터 출력될 수 있다. 복수의 명령/주소 신호들(Command, Add)은 메모리 장치(100)에 연결된 메모리 컨트롤러(미도시)로부터 출력될 수 있다.
컨트롤 로직(200)은 어드레스 커맨드 디코더(Address Command Decoder, 210)와 디스터브 카운트 유닛(Disturb Count Unit; DC Unit, 220)을 포함한다.
어드레스 커맨드 디코더(210)는 복수의 신호들(CK, Command, Add)을 디코딩(decoding)하고, 디코딩 결과에 따라 각 구성요소들을 제어하기 위한 명령 및/또는 주소(예를 들면 Sel_WL)를 생성한다.
예컨대, 어드레스 커맨드 디코더(210)는 셀 어레이(10)의 데이터를 리드(Read)하기 위해, 액티브 명령(Active Command), 리드 명령(Read Command) 등을 출력하며 데이터가 저장된 대상 셀의 어드레스(Add)를 함께 출력할 수 있다. 예컨대, 어드레스 커맨드 디코더(210)는 셀 어레이(10)의 특정 셀의 데이터를 보존하기 위해, 리프레쉬 명령(Refresh command)를 출력하며 리프레쉬 대상 셀의 어드레스(Add)를 함께 출력할 수 있다.
뱅크 컨트롤 유닛(40)은 컨트롤 로직(200)으로부터 출력된 명령에 따라 리프레쉬 동작에 대한 스케줄(schedule)링을 하고, 각 뱅크(10-1 내지 10-k)는 상기 스케줄에 따라 리프레쉬 동작을 수행할 수 있다. 뱅크 컨트롤 로직(40)은 복수의 뱅크들 각각을 선택할 수 있다. 실시예에 따라 셀 어레이(10)를 포함한 뱅크들의 수는 달라질 수 있다.
디스터브 카운트 유닛(220)은 메모리 액세스가 집중되는 제1메모리 셀(Aggressor Cell)에 인접(또는 근접)한 제2 메모리셀들(Victim cell)이 받는 디스터브 양을 계산한다. 설명의 편의를 위해 디스터브 카운터 유닛(220)에 대한 보다 자세한 설명은 도 2에서 하기로 한다.
리프레쉬 유닛(250)은 리프레쉬 명령을 수행하기 위해 컨트롤 로직(200)으로부터 출력된 명령에 응답하여 로우 어드레스(ROW Add)를 생성한다.
즉, 메모리 셀 또는 뱅크 리프레쉬 명령에 응답하여, 뱅크 컨트롤 로직(40)은 리프레쉬 수행대상인 뱅크(Bank)가 다른 뱅크로 전환되기 이전에, 복수의 뱅크들 중에서 어느 하나에 포함된 로우들을 카운트한다. 설명의 편의를 위해 리프레쉬 유닛(250)에 대한 보다 자세한 설명은 도 2에서 하기로 한다.
로우 멀티플렉서(31)는 선택신호(미도시)에 응답하여 리프레쉬 유닛(250)에 의해 생성된 로우 어드레스(또는 워드라인 어드레스)와 컨트롤 로직(200)으로부터 출력되는 로우 어드레스 중에서 어느 하나를 선택한다. 리프레쉬 동작이 수행될 때, 로우 멀티플렉서(31)는 리프레쉬 유닛(250)에서 출력된 로우 어드레스를 선택한다. 라이트(Write) 동작 또는 리드(Read) 동작이 수행될 때, 로우 멀티플렉서(31)는 컨트롤 로직(200)으로부터 출력된 로우 어드레스를 선택한다.
적어도 하나의 로우 버퍼(32)는 로우 멀티플렉서(31)로부터 출력되는 로우 어드레스를 임시로 저장한다.
적어도 하나의 로우 디코더(33)는 뱅크 컨트롤 로직(40)에 의해 스위치된 뱅크에 대응할 경우 동작한다. 로우 디코더(33)는 상응하는 로우 버퍼(32)로부터 출력된 로우 어드레스를 디코딩하고, 디코딩 결과에 따라 복수의 로우들(또는 워드라인들) 중에서 어느 하나의 로우(또는 워드라인)를 선택한다.
복수의 뱅크들 각각은(10-1 내지 10-N, N은 자연수) 뱅크(Bank 1) 내지 뱅크(Bank N)으로 라벨된 복수의 셀 어레이들과 적어도 하나의 센스 앰프들(S/A, 61)을 포함한다.
복수의 셀 어레이들(10) 각각은 복수의 워드라인들(또는 로우들), 복수의 비트라인들(또는 컬럼들), 및 데이터를 저장하기 위한 복수의 노말 메모리 셀(11)들 및 디스터브 카운트값을 저장하기 위한 디스터브 카운트 셀 어레이들(20)을 포함한다.
센스 앰프(Sense Amplifer, 61)는 셀의 데이터 저장여부에 따라 각 비트라인의 전압변화를 감지하고 증폭한다.
적어도 하나의 컬럼 버퍼(51)는 컨트롤 로직(200)으로부터 출력되는 컬럼 어드레스를 임시 저장한다.
적어도 하나의 컬럼 디코더(52)는 뱅크 컨트롤 로직(40)에 의해 스위치된 뱅크에 대응할 경우 동작한다. 컬럼 디코더(52)는 상응하는 컬럼 버퍼(51)로부터 출력된 컬럼 어드레스를 디코딩하고, 디코딩 결과에 따라 복수의 컬럼들(또는 비트라인들) 중에서 어느 하나의 컬럼(또는 비트라인)를 선택한다.
입출력 컨트롤 유닛(70)은 컨트롤 로직(200)으로부터 출력된 제어신호에 따라, 센스 앰프(70)에 의해 감지 증폭된 복수의 신호들을 데이터로서 출력 드라이버(65) 또는 입력버퍼(67)로 전송한다.
라이트(Write) 동작동안, 입출력 컨트롤 유닛(70)은 컨트롤 로직(200)으로부터 출력된 제어신호에 따라, 입력버퍼(67)로부터 수신된 데이터(DQi; i는 자연수)를 드라이버(미도시)를 통해 노말 셀 어레이(11)로 전송한다.
리드(Read)동작 동안, 입출력 컨트롤 유닛(70)은 컨트롤 로직(200)으로부터 출력된 제어신호에 따라, 센스앰프(61)로부터 감지 증폭된 복수의 신호들을 데이터로서 출력 드라이버(65)로 전송한다. 출력드라이버(65)는 데이터를 메모리 컨트롤러(미도시)로 출력한다.
입출력 컨트롤 유닛(70)은 카운트 라이트 리드 블럭(Count Write Read Block,75)을 포함할 수 있다. 카운트 라이트 리드 블럭(75)은 디스터브 카운트 셀 어레이(10)에 액세스하여 디스터브 카운트 셀에 저장된 현재 디스터브 카운트값(count value)을 리드(Read)하고 업데이트된 디스터브 카운트값(updated count value)을 라이트(Write)한다.
도 2를 참조하면, 디스터브 카운트 유닛(Disturb Count Unit; DC Unit, 220)은 카운트값 업데이트부(Count value updater, 221), 카운트값 비교부(Count Value Comparator, 222), 최대 디스터브 카운트값 저장부(Max Count Value Storage, 223), 및 카운트 유효 플래그 유닛(Count Valid Flag, 224)를 포함한다.
카운트값 업데이트부(221)는 액티브(active) 구간(제1메모리 셀에 액세스하는 시간)동안 최소 tRC(Refresh time/Number of cycles)로 환산한 카운트값을 현재 디스터브 카운트값(current count value)에 더하여 업데이트 한다. 일례로 상기 제1 메모리 셀이 액세스될 때마다, 이전 액세스 타임에 저장된 디스터브 카운트값에 상기 제1 메모리 셀의 현재 액세스 타임동안 주기적으로 카운트되는 값을 더하여 업데이트할 수 있다.
카운트값 비교부(222)는 디스터브 카운트 셀 어레이(20)로부터 수신한 인접 또는 근접 셀의 현재 카운트값(Count value)을 기설정된 문턱값(Threshold) 또는 최대 디스터브 카운트값(Max Count Value)과 비교한다. 이때 기설정된 문턱값은 카운트값 비교부(222)에 셋팅되어 있고, 최대 디스터브 카운트값은 최대 디스터브 카운트값 저장부(223)로부터 수신된다. 카운트값 비교부(222)는 비교결과를 다음 비정규 리프레쉬 어드레스 및 비정규 리프레쉬 플래그 저장부(Next Irregular Refresh Address & Irregular Refresh Flag Storage; 252)로 전송한다.
예컨대, 현재 디스터브 카운트값(count value)이 상기 문턱값과 동일하거나 크고, 최대 디스터브 카운트값(Max Count Value)보다 크면(count value≥Threshold, count value>Max Count Value) 해당 제2메모리 셀을 다음 비정규 리프레쉬 동작의 대상으로 한다. 카운트값 비교부(222)는 상기 제2메모리 셀이 다음 비정규 리프레쉬 동작의 대상이 될 경우, 비정규 리프레쉬 어드레스 및 비정규 리프레쉬 플래그 저장부(252)로 알려준다.
그러나 현재 디스터브 카운트값이 상기 문턱값보다 작거나 최대 디스터브 카운트값보다 동일하거나 작으면(count value< Threshold, count value≤ Max Count Value) 해당 셀을 다음 비정규 리프레쉬 동작의 대상으로 하지 아니한다.
최대 디스터브 카운트값 저장부(223)는 메모리 장치(100)의 초기화 시점부터 현재 동작 시점까지의 제2 메모리 셀에 대한 디스터브 카운트값들 중 최대값을 저장한다.
예컨대, 디스터브 카운트 셀 어레이(20)로부터 카운트 라이트 리드 블럭(Count Write Read Block, 75)를 통해 출력된 제2 메모리 셀의 현재 디스터브 카운트값(Count Value)이 이전에 저장된 최대 디스터브 카운트값보다 크면(count value> current MAX count value), 상기 현재 디스터브 카운트값을 새로운 최대 디스터브 카운트값으로 저장(또는 업데이트)한다.
카운트 유효 플래그 유닛(224)은 카운트 유효 플래그의 활성화 여부에 따라 디스터브 카운트 동작에 대한 정지여부를 제어한다. 카운트 유효 플래그는 디스터브 카운트값이 비확정적일 때, 즉, 카운트값이 유효하지 않을 때 비활성화 된다. 또한 카운트 유효 플래그 유닛(224)는 메모리 장치(100)가 테스트 모드 등에서 메모리 셀의 다이나믹 리프레쉬(Dynamic Refresh) 특성을 측정할 경우, 카운트 유효 플래그를 비활성화 하여 디스터브 카운트 동작 또는 비정규 리프레쉬 동작에 대한 정지여부를 제어할 수 있다.
즉, 카운트 유효 플래그 유닛(224)는 디스터브 카운트 유닛(250)의 디스터브 카운트값들이 모두 리셋되면 카운트 유효 플래그를 활성화하여 디스터브 카운트 유닛(250)의 카운트 기능을 활성화시킨다.
메모리 장치(100)를 파워 업(Power Up)할 경우 카운트값들이 유효하지 않을 수 있다. 따라서 메모리 장치(100)를 초기화해야 하고, 초기화시 디스터브 카운트 셀 어레이(20)의 각 워드라인을 모두 인에이블시켜 리셋된 값으로 업데이트 해야한다. 이때 메모리 장치(100)의 특성마다 초기화 시간은 다를 수 있으나, 메모리 장치를 테스트하는 것과 같이 다수의 워드라인(WL)을 인에이블하여 동일한 데이터를 써넣는 방법으로 리셋할 수 있다.
일례로, 파워 업 마스터 신호(Power Up Master Signal)에 기초하여 주기적 내부 리프레쉬 커맨드 생성부(Periodic Internal Refresh Command Generator, 254)가 활성화되면, 주기적 내부 리프레쉬 커맨드 생성부(254)는 카운트 유효 플래그 유닛(224)에 제어신호를 전송한다. 카운트 유효 플래그 유닛(224)은 상기 제어신호에 따라 비활성화(disable)되어 디스터브 카운팅 기능을 정지시킨다. 즉, 각 구성요소들(221,222,223)에 저장된 값들을 리셋한다.
일례로, 주기적 내부 리프레쉬 커맨드 생성부(254)가 비활성화되면, 카운트 유효 플래그 유닛(224)은 카운트 유효 플래그(Enable)를 카운트값 비교부(222)로 전송하여 디스터브 카운팅 기능을 활성화시킨다.
도 2의 리프레쉬 유닛(250)은 메모리 장치(100) 내 구성요소들(elements; 220,75 등)의 리프레쉬 동작을 제어한다. 리프레쉬 유닛(250)은 인접 어드레스 계산부(Adjacent Address Calculator, 251), 다음 비정규 리프레쉬 주소 및 비정규 리프레쉬 플래그 저장부(Next Irregular Refresh Address & Ireegular Refresh Flag Storage, 252), 리프레쉬 컨트롤러(Refresh Controller,253) 및 주기적 내부 리프레쉬 커맨드 생성부(Periodic Internal Refresh Command Generator, 254)를 포함한다.
인접 어드레스 계산부(251)는 어드레스 커맨드 디코더(210)로부터 수신한 현재 셀(WLx), 즉, 제1메모리 셀의 주소를 기초로 인접 또는 근접한 워드라인의 셀들, 즉, 제2 메모리 셀들의 주소(WL(x±k), k는 자연수)를 계산한다.
다음 비정규 리프레쉬 주소 및 비정규 리프레쉬 플래그 저장부(252)는 비정규 리프레쉬 플래그(Refresh Flag)와 다음 리프레쉬 동작을 수행할 셀의 어드레스를 저장한다. 비정규 리프레쉬 플래그는 다음 비정규 리프레쉬 동작을 수행할지 여부를 알려준다. 즉, 상기 제2 메모리 셀에 대한 상기 현재 디스터브 카운트값이 상기 문턱값 이상이고 상기 최대 디스터브 카운트값을 초과하면, 상기 제2 메모리 셀의 상기 어드레스를 다음 비정규 리프레쉬 주소로 저장하고, 상기 제2 메모리 셀에 대한 리프레쉬 동작 수행 여부를 비정규 리프레쉬 플래그(Refresh Flag)에 반영한다.
리프레쉬 컨트롤러(253)는 메모리 장치(100)의 정규 리프레쉬 동작과 비정규 리프레쉬 동작을 조합하여 상기 메모리 장치(100)의 리프레쉬 동작을 전반적으로 제어한다. 예를 들면, 비정규 리프레쉬 플래그에 따라 리프레쉬 동작 순서를 스케줄링할 수 있다.
일례로 현재 스케줄 내에서 상기 비정규 리프레쉬 동작을 우선적으로 수행하도록, 현재 스케줄 내에 비정규 리프레쉬 동작 스케줄을 삽입할 수 있다. 또는 상기 현재 스케줄 내에서 비정규 리프레쉬 동작을 현재 스케줄과 병행하도록 할 수 있다.
일례로 리프레쉬 컨트롤러(253)는 주기적 내부 리프레쉬 커맨드 생성부(254)의 제어에 따라 리프레쉬 스케줄을 리셋할 수 있다.
주기적 내부 리프레쉬 커맨드 생성부(254)는 파워업 마스터 신호(PowerUp Master Signal)에 기초하여 메모리 장치 내부적으로 전체 워드라인 어드레스(또는 노말 메모리 셀 어레이 전체)에 대한 리프레쉬를 수행하고 디스터브 카운트값을 초기화한다.
보다 구체적으로 설명하면, 주기적 내부 리프레쉬 커맨드 생성부(254)는 파워업 마스터 신호에 따라 내부 리프레쉬 신호를 카운트 유효 플래그부(Count Valid Flag, 224)로 전송한다.
카운트 유효 플래그(224)는 상기 내부 리프레쉬 신호에 따라 각 구성요소(elements; 221,222,223)에 기저장되어 있던 디스터브 카운트값들을 리셋(Reset)하도록 제어한다. 이때 파워업 마스터 신호는 실시예에 따라 외부 시스템(미도시) 또는 메모리 컨트롤러(미도시)로부터 수신될 수 있다.
도 3은 본 발명의 일실시예에 따른 메모리 장치의 동작방법을 나타낸 흐름도이다.
도 3을 참고하면, 메모리 장치(100)에 전력이 공급되면 전원이 켜지고(S10), 메모리 장치(100)는 모든 워드라인을 인에이블하여 디스터브 카운트 셀 어레이의 모든 상기 디스터브 카운트값들을 초기화할 수 있다(S20). 예를 들면 메모리 장치(100)는 복수의 메모리셀들 각각의 워드라인을 모두 인에이블하여 동일한 데이터값으로 리셋하여 초기화할 수 있다.
메모리 장치가 초기화 된 후 유휴상태에서(S30), 메모리 장치(100)는 호스트(미도시)의 명령에 따라 동작하는 액티브 상태가 되거나(Active State,S40) 데이터 신뢰성을 위해 자체적으로 메모리 셀들을 리프레쉬 하는 리프레쉬 상태(Refresh State, S50)가 된다.
메모리 장치(100)가 액티브 상태가 되면, 메모리 장치(100)는 대상 메모리 셀에의 액세스 타임 동안 나머지 메모리 셀들에 대한 각각의 디스터브 양(Disturb value)을 카운트한다(S40). 그리고 메모리 장치(100)는 호스트의 명령에 따라 리드(Read) 동작/ 라이트(Write) 동작 / 이레이즈(Erase) 동작 등을 수행하며(S60), 디스터브 양을 카운트하는 동작을 반복적으로 수행한다. 메모리 장치(100)는 상기 명령에 따른 동작 수행이 끝나면, 대상 메모리 셀을 프리차지(Precharge)하여 다시 유휴상태(Idle State)가 된다.
메모리 장치(100)가 리프레쉬 상태가 되면, 메모리 장치(100)는 대상 메모리 셀을 제외한 나머지 메모리 셀들에 대하여 리프레쉬 동작을 수행한다(S50). 이때 리프레쉬 동작은 정규 리프레쉬 동작 및 비정규 리프레쉬 동작을 포함한다. 메모리 장치(100)는 메모리 셀들 각각에 대해 기설정된 규칙으로 정해지는 스케줄링에 따라 정규 리프레쉬 동작을 수행할 수 있다. 한편, 메모리 장치(100)는 메모리 셀들 각각의 디스터브 양을 고려하여, 최대 디스터브 양을 가진 메모리 셀의 경우 상기 스케줄링에 먼저 또는 병행하여 비정규 리프레쉬 동작을 수행할 수 있다(S50). 메모리 장치(100)는 리프레쉬 동작이 끝나면, 다시 유휴 상태(Idle State)가 된다.
도 4는 도 3에 도시된 메모리 장치의 동작방법 중 초기화되는 경우를 나타낸 흐름도이다.
도 3 및 도 4를 참조하면, 메모리 장치(100)에 전력이 공급되어 파워온(Power-On)된 경우, 주기적 내부 리프레쉬 명령 생성부(354)가 인에이블된다(S21). 파워 온인지 여부는 파워업 마스터 신호(Power Up Master Signal)에 따라 결정된다. 주기적 내부 리프레쉬 명령 생성부(254)가 인에이블되면, 리프레쉬 컨트롤러(253)는 현재 리프레쉬 주소(Current Refresh Address)에 상응하는 디스터브 카운트값이 리셋(또는 클리어(Clear))되도록(S22) 제어한다. 그리고 주기적 내부 리프레쉬 명령 생성부(254)는 카운트 유효 플래그를 비활성화 하여 카운트 유효 플래그를 비활성화하여 디스터브 카운트 유닛(250)의 카운트 기능을 비활성화시킨다. 이는 모든 메모리 셀의 디스터브 카운트값이 리셋될 때까지 반복된다(S23).도 5는 도 3에 도시된 메모리 장치의 동작방법 중 액티브 상태인 경우를 나타낸 흐름도이다.
도 5를 참고하면, 어드레스 커맨드 디코더(210)가 액티브 명령을 수신하면, 메모리 장치(100)는 노말 셀 어레이(11)에서 액티브 명령에 상응하는 해당 어드레스(대상 메모리 셀이라고 한다)의 워드라인을 인에이블 하고, 대상 메모리 셀의 워드라인에 연결된 디스터브 카운트 셀로부터 디스터브 카운트값을 읽어온다(S41). 디스터브 카운트값은 상기 대상 메모리 셀 외의 나머지 셀들, 예를 들면 상기 대상 메모리 셀에 인접(또는 근접)한 셀들,의 디스터브 양을 나타낸다.
예컨대, 디스터브 양은 상기 대상 메모리 셀의 워드라인(WLx)의 액세스 타임(Access time)을 단위시간, 즉, 최소 인에이블 사이클(Minimum tRC 또는 Minimum tRAS)로 나눈 값으로 나타낼 수 있다. 일례로 디스터브 카운트값(Disturb Count(x))은 인접 또는 근접 셀들(Disturb(x-k) 및 Disturb(x+k), 즉, 대상 메모리 셀의 왼쪽 또는 오른쪽 워드라인에 위치한 적어도 하나 이상의 셀들, 이하 나머지 메모리 셀, k는 1이상의 자연수)의 디스터브 카운트값으로 나누어 볼 수 있다. 나머지 메모리 셀(x-k 또는 x+k)들이 리프레쉬 될 경우, 상기 나머지 메모리 셀에 대한 디스터브 카운트값은 리프레쉬 동작 후 0으로 리셋(또는 클리어)된다.
메모리 장치(10)는 대상 메모리 셀(x)에 액세스하였으므로 나머지 메모리 셀들(x-k, x+k)은 누적적으로 디스터브를 더 받는다. 그래서 초기화 되지 않는 한, 디스터브 양을 카운트하고 대상 메모리셀(x)의 워드라인에 연결된 디스터브 카운트 셀에 저장된 디스터브 카운트값에 상기 카운트된 값을 더하여 디스터브 카운트값을 업데이트한다. 그리고, 업데이트된 디스터브 카운트값은 리드했던 상기 디스터브 카운트 셀에 라이트(Write)하여 저장한다(S42). 즉, 디스터브 양은 누적 액세스 타임을 단위 시간으로 나눈 값일 수 있다.
업데이트된 디스터브 카운트값은 소정의 값과 비교하여 그 비교결과에 따라 리프레쉬 동작 수행여부를 결정한다(S43). 일례로 업데이트된 디스터브 카운트값이 이전 단계에서 저장되어 있던 현재 최대 디스터브 카운트값 또는 기설정된 문턱값보다 크면, 상기 디스터브 카운트값에 상응하는 나머지 메모리 셀의 어드레스를 다음 비정규 리프레쉬 동작을 수행할 주소로 저장한다(S44). 그리고, 업데이트된 디스터브 카운트값을 새로운 최대 디스터브 카운트값으로 저장한다(S45).
일례로 업데이트된 디스터브 카운트값이 이전 단계에서 저장되어 있던 현재 최대 디스터브 카운트값 및 기설정된 문턱값보다 작으면, 리프레쉬 동작을 하지 아니하고, 다음 비정규 리프레쉬 동작의 어드레스 및 최대 디스터브 카운트값으로 저장하지 아니한다(S43).
즉, 액티브 명령 수행시, 메모리 장치(100)는 액티브 명령에 상응하는 대상 메모리 셀(x)의 워드라인(WLx)에만 액세스 가능하므로 인접 또는 근접한 셀들(x±k)(나머지 메모리 셀)의 디스터브 카운트값은 대상 메모리 셀(x)의 워드라인에 연결된 디스터브 카운트 셀(11)에 저장한다.
일례로, 나머지 메모리 셀들 중 어느 하나의 메모리 셀(x+k 또는 x-k)을 중심으로 양쪽(왼쪽, 오른쪽)에서 대상 메모리 셀(x)이 멀티-액세스 되는 경우(즉, 2개 이상의 대상 메모리 셀들의 각 워드라인이 집중적으로 액세스 되는 경우), 상기 나머지 메모리 셀이 받는 디스터브 양은 양측의 대상 메모리들 각각으로부터 받는 디스터브 양의 합이 된다. 이때 대상 메모리 셀의 워드라인에 연결된 디스터브 카운트 셀에 저장되는 나머지 메모리 셀에 대한 디스터브 양은 어느 한쪽의 디스터브 값만 저장하여 정확한 디스터브 양을 알 수 없어 오차가 발생할 수 있다.
그러나 이때에도 액티브 명령 수행을 계속하게 되면, 양측의 대상 메모리 셀 각각의 디스터브 카운트값이 증가하게 되어, 결국 나머지 메모리 셀이 비정규 리프레쉬 동작의 대상 셀이 될 수 있어, 최대 디스터브 카운트값 반영시 이러한 점을 고려하여 상기 오차를 줄일 수 있다. 보다 자세한 설명은 도 9A 이하의 설명에서 하기로 한다.
도 6은 도 3에 도시된 메모리 장치의 동작방법 중 리프레쉬 상태인 경우를 나타낸 흐름도이다.
도 6을 참조하면, 어드레스 커맨드 디코더(254)가 리프레쉬 명령을 받으면, 메모리 장치(100)는 리프레쉬 동작을 수행한다. 리프레쉬 동작은 정규 리프레쉬 동작과 비정규 리프레쉬 동작을 포함한다. 리프레쉬 명령에 따라, 메모리 장치(100)는 비정규 리프레쉬 동작의 수행여부를 판단한다(S51).
비정규 리프레쉬 동작을 하지 않을 경우, 즉, 메모리 장치(100)는 비정규 리프레쉬 플래그(Flag)가 비활성화(Off)하고, 기존의 스케줄에 따라 리프레쉬 동작을 수행한다(S52).
그러나 비정규 리프레쉬 동작을 수행할 경우, 메모리 장치(100)는 비정규 리프레쉬 플래그(Flag)를 활성화(On)하여, 리프레쉬 스케줄을 조정한다. 일례로 정규 리프레쉬 동작과 병행하여 나머지 메모리 셀에 대한 비정규 리프레쉬 동작을 수행할 수 있다. 일례로 정규 리프레쉬 동작 사이에 나머지 메모리 셀에 대한 비정규 리프레쉬 동작을 우선적으로 삽입하여 수행할 수 있다(S53).
상기 나머지 메모리 셀의 비정규 리프레쉬 동작이 완료되면, 메모리 장치(100)는 비정규 리프레쉬 동작을 위한 상기 나머지 메모리 셀의 주소를 클리어(또는 리셋)한다(S54). 또한 비정규 리프레쉬 동작 수행 후 이전에 저장된 상기 현재 최대 디스터브 카운트값을 클리어(또는 리셋)한다(S55).
그리고, 비정규 리프레쉬 동작을 한 나머지 메모리 셀의 디스터브 카운트값을 저장하고 있는 대상 메모리 셀(x)의 워드라인에 액세스하여 나머지 메모리 셀에 대한 디스터브 카운트값을 클리어(또는 리셋)한다(S56).
따라서, 메모리 셀 액세스 동작시 디스터브에 가장 취약한 메모리 셀(즉, 디스터브 양이 가장 큰 메모리 셀)에 대해 우선적으로 리프레쉬 동작을 수행하도록 리프레쉬 스케줄을 조정한다. 그 결과, 상기 메모리 셀의 리프레쉬 인터벌 타임(Refresh Interval time) 내 디스터브 양을 제한하여, 메모리 장치의 데이터 신뢰도가 높아져서 장치의 성능을 향상시킬 수 있다.
도 7은 본 발명의 실시예들에 따른 메모리 셀의 리프레쉬 방법의 동작을 설명하기 위한 표이다.
메모리 장치(100)는 액티브 명령에 기초하여 제1메모리 셀(대상 메모리 셀)에의 액세스를 수차례 반복하며 액세스되는 대상 메모리 셀에 인접/근접한 나머지 메모리 셀(제2 메모리 셀)들의 디스터브 양을 모니터링 한다. 메모리 장치(100)는 디스터브 양이 가장 높아서 리프레쉬 특성이 가장 취약한 제2 메모리 셀에 대해 비정규 리프레쉬 동작을 우선적으로 실행한다. 리프레쉬 인터벌 내 최대 디스터브 카운트값은 상기 비정규 리프레쉬 동작을 수행할 때마다 리셋되므로 계속하여 증가하지 아니하고 일정수준에서 제한된다.
도 7을 참조하면, 메모리 장치(100)가 ROW = 3에 위치한 제1메모리 셀(x)에 대해 집중적으로 액세스하고, 이때 문턱값(Threshold)은 159라고 가정하자. 제1 메모리 셀에의 첫번째 액세스 전(T=0)에 메모리 장치(100)가 파워 업(Power Up)되므로 장치에 이미 저장되어 있던 제2 메모리 셀들(ROW 2, ROW 4)의 디스터브 카운트값을 초기화한다. 즉, ROW=3에 연결된 디스터브 카운트 셀에 저장된 값(Disturb(x-1), Disturb(x+1))을 초기화 한다((ROW 2, ROW 4)=(0,0)).
메모리 장치(100)는 초기화 후 호스트의 명령에 따른 동작을 수행하기 위해 제1 메모리 셀에 액세스한다. 상기 제1 메모리 셀에 액세스가 집중적으로 반복되면(T=1~159), 메모리 장치(100)는 상기 제1 메모리 셀의 워드라인(ROW=3)의 액세스 타임 동안 디스터브 양을 카운트하며 증가시킨다. 예를 들면, T=1에서 제2 메모리셀들 ROW=2(Left)와 ROW=4(Right)에서의 디스터브 카운트값 (1,1)이 T=2에서 제2 메모리셀들 ROW=2와 ROW=4에서의 디스터브 카운트값 (2,2)로 증가되고, 상기 제2 메모리셀들의 각 디스터브 카운트값은 카운트될 때마다 ROW=3에 연결된 디스터브 카운트 셀(20)에 저장 및 업데이트 된다.
도 7의 표에서 회색부분(ROW=3)은 액세스되는 제1 메모리 셀(11)과 동일 워드라인에 연결된 디스터브 카운트 셀(20) 내에 저장되는 제2 메모리 셀들에 대한 디스터브 카운트값을 나타낸다. 즉, 액티브 명령이 수행되는 제1 메모리 셀의 제1 어드레스(ROW=3)만 액세스 가능하기 때문에 디스터브 카운트 셀들은 액세스 명령이 수행되는 제1 메모리 셀과 동일 워드라인 상에 위치한다.
저장되는 디스터브 카운트값은 제1 메모리 셀의 워드라인 인에이블 시간(액세스 되는 시간) 동안, 제1 메모리 셀에 인접한 제2 메모리 셀(ROW=2,4)들의 디스터브 양을 카운트하는 것이다.
상기 제1 메모리 셀에 대한 액티브 명령이 반복 수행되다 보면, 인접한 양쪽 제2 메모리 셀(ROW=2,Left and ROW=4,Right) 각각의 디스터브 카운트값이 증가하고, 결국 제2 메모리 셀들 중 적어도 하나가 비정규 리프레쉬의 대상이 된다.
비정규 리프레쉬 동작 수행여부를 결정하는 방법은, 디스터브 카운트 셀에 저장된 현재 디스터브 카운트값(Current Disturb Count Value)이 문턱값(threshold=159)보다 커지면(T=160), 도 7에서 ROW=2의 워드라인에 속한 인접한 제2 메모리셀에 대해 비정규 리프레쉬 동작을 우선적으로 스케줄링한다. 리프레쉬 스케줄에 따라 상기 제2 메모리셀의 리프레쉬 동작 순서가 오면 동작을 수행하고(Refresh 2), 상기 제2 메모리 셀의 디스터브 카운트값을 리셋한다(ROW=2, Disturb Count Value=0).
이후 계속하여 제1 메모리 셀(ROW=3)에 집중적으로 액세스하게 되면(T=161~319), 인접한 제2 메모리 셀의 디스터브 카운트값이 계속적으로 증가하게 된다(ROW=2의 경우 0부터 계속 카운트, ROW=4의 경우 160부터 계속 카운트된다). 제2 메모리 셀 중 ROW=2는 리프레쉬 동작이 수행되었지만, ROW=4는 리프레쉬 동작이 수행되지 않았기 때문에 ROW=4에 대한 디스터브 양은 점점 더 증가한다.
ROW=3에 있는 제1 메모리 셀에 계속 액세스가 집중되면(T=161~319) ROW=4인 에 있는 제2 메모리 셀은 최대 디스터브 카운트값을 초과하므로(T=320) 비정규 리프레쉬 동작을 우선적으로 스케줄링 한다. 리프레쉬 스케줄에 따라 순서에 이르면 ROW=4인 제2 메모리 셀에 대한 비정규 리프레쉬 동작을 수행한다(Refresh 4). 그리고, 제1 메모리 셀의 워드라인을 인에이블하여 디스터브 카운트 셀에 저장되었던 ROW=4인 제2 메모리셀의 디스터브 카운트값을 리셋한다.
이후의 제1 메모리 셀(ROW=3)를 액세스할 때마다 앞서 설명한 바와 같이 제2 메모리셀에 대한 디스터브 카운트값을 계속 카운트한다. 메모리 장치는 문턱값 또는 최대 디스터브 카운트값과 비교된 상기 디스터브 카운트값에 기초하여 제2 메모리셀에 대한 비정규 리프레쉬 동작을 수행하게 된다.
이와 같이 메모리 셀 어레이 중 중첩되지 않는 적어도 하나의 메모리 셀에 집중적으로 액세스 할 경우의 디스터브 최대량은 다음 식에 의한다. 이때 n은 집중적으로 액세스 되는 셀이 속한 워드라인(즉, ROW)의 수이다.
디스터브 양은 워드라인이 인에이블된 전체 시간이므로, 이를 정수화 하기 위해 누적적으로 인에이블된 시간을 합쳐서 단위시간(tRASmin 또는 tRCmin일 경우의 워드라인 액세스 타임)으로 나누어 정수화해야 한다. 예를 들어, tREF가 64ms, 리프레쉬 사이클 타임(Refresh cycle time)이 8K에서 제1메모리 셀에 집중적으로 액세스한다고 가정할 때, 제1메모리 셀이 속한 워드라인에의 액세스 타임(tRCmin)이 50ns라 하자. 이때 tREFI는 7.8us가 되므로 tREFI 동안 받는 최대 디스터브 량(MaxDisturb)은 수학식 1에 따라서 7.8us/50ns=160이 된다.
도 8a 및 도 8b는 본 발명의 실시예들에 따른 메모리 셀의 리프레쉬 방법의 동작을 설명하기 위한 표이다. 도 8a 및 도 8b의 실시예는 두 개의 워드라인에 액세스가 집중되는 점에서 하나의 워드라인만 집중적으로 액세스되는 도 7과 다르다.
메모리 장치(100)가 2 이상의 워드라인, 예를 들어 ROW=3, ROW=6에 위치한 제1 메모리 셀들에 대해 집중적으로 액세스하고, 이때 문턱값(threshold)은 159라고 가정하자.
도 8a에서 첫번째 액세스 전(T=0)에 메모리 장치(100)가 파워 업(Power Up)되므로 이미 저장되어 있던 제2 메모리셀들(ROW=2, ROW=4, ROW=5, ROW=7)에 대한 디스터브 카운트값을 초기화한다. 즉, ROW=3,6에 연결된 디스터브 카운트 셀에 저장된 값(Disturb(x-1), Disturb(x+1)) 각각을 초기화 한다(도 9a에서 (ROW 2, ROW 4)=(0,0) 및 (ROW 5, ROW 7)=(0,0)).
메모리 장치(100)는 초기화 후 ROW=3,6에 위치한 제1 메모리 셀(x=3,6)들에 액세스한다. 상기 제1메모리 셀에 액세스가 집중적으로 반복되면(T=1~159), 메모리 장치(100)는 제1 메모리 셀에 액세스할 때마다 제2 메모리셀(ROW=2,4,5,7)에 대한 디스터브 양을 카운트한다.
제2 메모리셀들의 디스터브 카운트값들 각각((ROW 2, ROW 4), (ROW 5, ROW 7))은 액세스 되는 제1 메모리 셀(ROW=3,6)의 디스터브 카운트 셀 각각에 저장된다. 메모리 장치(100)는 액티브 명령이 수행되는 제1어드레스(ROW=3,6)에 상응하는 제1메모리 셀만 인에이블하여 액세스하고, 나머지 셀들이 속한 ROW 2,4,5,7은 인에이블하지 않기 때문이다.
디스터브 카운트 셀로부터 리드된 나머지 셀들(ROW 2,4,5,7)의 현재 디스터브 카운트값(160)이 문턱값(threshold=159)보다 커지면(T=160), 메모리 장치는 ROW=2의 제2 메모리 셀을 리프레쉬한다(Refresh 2). 그리고 메모리 장치는 리프레쉬된 제 2메모리 셀(ROW=2)에 대한 디스터브 카운트값을 리셋한다(ROW=3에서 (ROW 2, ROW 4)=(0,160)).
계속하여 제1메모리 셀(ROW=3,6)에 집중적으로 액세스하게 되면(T=321~479), 제2메모리 셀의 디스터브 카운트값이 계속적으로 증가하게 된다(ROW=2의 경우 0부터 계속 카운트, ROW=4,5,7의 경우 160부터 계속 카운트된다).
제2 메모리 셀들 중 ROW=2는 리프레쉬 동작이 수행되었지만, ROW=4,5,7은 리프레쉬 동작이 수행되지 않았기 때문에 ROW=4,5,7에 대한 디스터브 카운트값은 계속하여 증가한다.
제1 메모리 셀(ROW=3, 6)에 계속 액세스가 집중되면(T=321~480) ROW=4인 제2 메모리 셀의 실제 디스터브 카운트값은 최대 디스터브 카운트값(240)에 이르게 되므로(T=480), 메모리 장치는 ROW=4인 제2 메모리 셀에 대한 리프레쉬 동작을 우선적으로 수행하도록 스케줄을 조정한다. 메모리 장치는 조정된 스케줄에 따라 ROW=4인 제2 메모리 셀에 대해 비정규 리프레쉬 동작을 수행하고(Refresh 4), ROW=4의 디스터브 카운트값을 리셋한다(ROW 3에서 (ROW 2, ROW 4)=(80,0)).
메모리 장치는 이어서 제1메모리 셀(ROW=3,6)에 액세스할 때마다 제2 메모리 셀에 대한 디스터브 카운트값을 계속 카운트한다. 제1 메모리 셀(ROW=3, 6)에 계속 액세스가 집중되면, 제1 메모리 셀 ROW=6에 의해 받은 T=640에서 ROW=5인 제2 메모리 셀의 디스터브 카운트값((ROW 2, ROW 4)=(320,320))은 문턱값(thereshold=159)를 초과할 뿐 아니라 최대 디스터브 카운트 값(240)을 초과한다. 이때 메모리 장치는 ROW=4인 제2메모리 셀에 대해 비정규 리프레쉬 동작을 수행한다(ROW 2, ROW 4)=(0,320).
도 8b에서도 마찬가지로 제1메모리 셀이 액세스될 때마다 제2 메모리 셀의 디스터브 카운트값을 계속 업데이트하고, 상기 디스터브 카운트값은 문턱값 또는 최대 디스터브 카운트값과의 비교된 결과, 비정규 리프레쉬 동작의 순서를 결정한다. 즉, 메모리 장치는 제2 메모리 셀에 대한 디스터브 카운트값에 기초하여 정규 리프레쉬 동작 중에도 비정규 리프레쉬 동작을 할 수 있도록 동작 순서의 스케줄을 조정할 수 있다.
그 결과 도 7의 실시예처럼 하나의 워드라인을 비중첩적으로 액세스할 때보다는 최대 디스터브 카운트값의 크기가 증가하나, 최대 디스터브 카운트값이 커지는 것을 고려하더라도 메모리 장치(100)가 현재 디스터브 카운트값에 기초하여 리프레쉬 스케줄을 조정하기 때문에, 제1메모리 셀에 계속하여 액세스가 집중되더라도 최대 디스터브 카운트값은 궁극적으로 제한된다(도 8b에서 최대 디스터브 카운트 값=400으로 제한됨).
이와 같이 메모리 장치가 적어도 둘 이상의 메모리 셀들에 집중적 액세스를 할 경우 적어도 하나의 인접/근접 메모리 셀들은 각각 디스터브를 받는데, 이때 디스터브 최대량은 다음 식에 의한다. 이때 n은 집중적으로 액세스하는 셀이 속한 워드라인의 수이다.
디스터브 양은 워드라인이 인에이블된 전체 시간이므로, 이를 정수화 하기 위해 누적적으로 인에이블된 시간을 합쳐서 단위시간(tRASmin 또는 tRCmin일 경우의 워드라인 액세스 타임)으로 나누어 정수화해야 한다. 상기 수학식 2는 증가함수로써 n이 무한대일 때 최대 디스터브 카운트값은 480에서 수렴한다. 480 x tRC 는 24us가 되고(이때 tRC=50ns), 이는 나머지 메모리 셀들 중 적어도 하나가 대상 메모리 셀로부터 중첩적으로 디스터브를 받지 않는 경우의 워스트 케이스(worst case)가 된다.
도 9a 및 도 9b는 본 발명의 실시예들에 따른 메모리 셀의 리프레쉬 방법의 동작을 설명하기 위한 표이다. 도 9a 및 도 9b의 실시예는 인접한 두 개의 워드라인에 액세스가 집중되는 점에서 인접하지 않은 두 개의 워드라인에 액세스가 집중되는 도 8a 및 도 8b와 다르다.
메모리 장치(100)가 2 이상의 워드라인, 예를 들어 ROW 3, ROW 5에 위치한 제1 메모리 셀들에 대해 집중적으로 액세스하고, 이때 문턱값(threshold)은 159라고 가정하자.
도 9a에서 첫번째 액세스 전(T=0)에 메모리 장치(100)가 파워 업(Power Up)되므로 이미 저장되어 있던 제2 메모리셀들(ROW=2, ROW=4, ROW=6)에 대한 디스터브 카운트값을 초기화한다. 즉, ROW=3,5에 연결된 디스터브 카운트 셀에 저장된 값(Disturb(x-1), Disturb(x+1)) 각각을 초기화 한다(도 9a에서 (ROW 2, ROW 4)=(0,0) 및 (ROW 4, ROW 6)=(0,0)).
메모리 장치(100)는 초기화 후 ROW=3에 위치한 제1 메모리 셀(x)에 액세스한다. 상기 제1메모리 셀에 액세스가 집중적으로 반복되면(T=1~159), 메모리 장치(100)는 제1 메모리 셀에 액세스할 때마다 제2 메모리셀(ROW=2,4,6)에 대한 디스터브 카운트값을 카운트한다. 도 7과 달리 본 실시예의 경우 액세스가 집중되는 워드라인들의 제2 메모리 셀들 중 ROW=4인 제2 메모리 셀은 ROW=3 및 ROW=5로부터 각각 중첩적으로 디스터브를 받는다.
제2 메모리셀들의 디스터브 카운트값들 각각((ROW 2, ROW 4), (ROW 4, ROW 6))은 액세스 되는 제1 메모리 셀(ROW=3,5)의 디스터브 카운트 셀 각각에 저장된다. 메모리 장치(100)는 액티브 명령이 수행되는 제1어드레스(ROW=3,5)에 상응하는 제1메모리 셀만 액세스 가능하기 때문이다. 이때 ROW=4의 제2 메모리 셀은 디스터브를 중첩적으로 받으므로, 제1 메모리 셀(ROW=3,5)의 디스터브 카운트 셀 각각에 저장된 디스터브 카운트값을 합산한 값이 실제의 디스터브 양(도 9a에서 Effective 4)이 된다.
디스터브 카운트 셀로부터 리드된 현재 디스터브 카운트값(160)이 문턱값(threshold=159)보다 커지면(T=160), 메모리 장치는 ROW=2의 제2 메모리 셀을 리프레쉬한다(Refresh 2). 그리고 메모리 장치는 리프레쉬된 제 2메모리 셀(ROW=2)에 대한 디스터브 카운트값을 리셋한다(ROW=2, Disturb Count Value=0).
계속하여 제1메모리 셀(ROW=3,5)에 집중적으로 액세스하게 되면(T=321~479), 제2메모리 셀의 디스터브 카운트값이 계속적으로 증가하게 된다(ROW=2의 경우 0부터 계속 카운트, ROW=4,6의 경우 160부터 계속 카운트된다).
제2 메모리 셀들 중 ROW=2는 리프레쉬 동작이 수행되었지만, ROW=4,6은 리프레쉬 동작이 수행되지 않았기 때문에 ROW=4,6에 대한 디스터브 카운트값은 계속하여 증가한다.
제1 메모리 셀(ROW=3, 5)에 계속 액세스가 집중되면(T=321~480) ROW=4인 제2 메모리 셀의 실제 디스터브 카운트값은 최대 디스터브 카운트값에 이르게 되므로(T=480), 메모리 장치는 ROW=4인 제2 메모리 셀에 대한 리프레쉬 동작을 우선적으로 수행하도록 스케줄을 조정한다. 메모리 장치는 조정된 스케줄에 따라 ROW=4인 제2 메모리 셀에 대해 비정규 리프레쉬 동작을 수행하고(Refresh 4), ROW=4의 디스터브 카운트값을 리셋한다(ROW 3에서 (ROW 2, ROW 4)=(80,0)).
메모리 장치는 이어서 제1메모리 셀(ROW=3,5)에 액세스할 때마다 제2 메모리 셀에 대한 디스터브 카운트값을 계속 카운트한다. 제1 메모리 셀(ROW=3, 5)에 계속 액세스가 집중되면, 제1 메모리 셀 ROW=5에 의해 받은 T=640에서 ROW=4인 제2 메모리 셀의 실제 디스터브 카운트값(effective 4=160)은 문턱값(thereshold=159)를 초과한다. 이때 메모리 장치는 ROW=4인 제2메모리 셀에 대해 비정규 리프레쉬 동작을 수행한다.
도 9b에서도 마찬가지로 제1메모리 셀이 액세스될 때마다 제2 메모리 셀의 디스터브 카운트값을 계속 업데이트하고, 상기 디스터브 카운트값은 문턱값 또는 최대 디스터브 카운트값과의 비교된 결과, 비정규 리프레쉬 동작의 순서를 결정한다. 즉, 메모리 장치는 제2 메모리 셀에 대한 디스터브 카운트값에 기초하여 정규 리프레쉬 동작 중에도 비정규 리프레쉬 동작을 할 수 있도록 동작 순서의 스케줄을 조정할 수 있다.
그 결과 도 7의 실시예처럼 적어도 하나의 워드라인을 비중첩적으로 액세스할 때보다는 최대 디스터브 카운트값의 크기가 증가하나, 제2 메모리 셀에 디스터브가 중첩되는 것을 고려하더라도 메모리 장치가 현재 디스터브 카운트값에 기초하여 리프레쉬 스케줄을 조정하기 때문에, 제1메모리 셀에 계속하여 액세스가 집중되더라도 최대 디스터브 카운트값은 궁극적으로 제한된다.
이와 같이 메모리 장치가 적어도 둘 이상의 메모리 셀들에 집중적 액세스를 할 경우 적어도 하나의 인접/근접 메모리 셀은 중첩된 디스터브를 받는데, 이때 최대 디스터브 카운트값(MaxDistrub)은 수학식 3에 의한다. 이때 n은 집중적으로 액세스하는 셀이 속한 워드라인의 수이다.
도 10a 및 도 10b는 본 발명의 실시예들에 따른 메모리 셀의 리프레쉬 방법의 동작을 설명하기 위한 표이다. 도 10a 및 도 10b의 실시예는 세 개의 워드라인에 액세스가 집중되는 점에서 하나의 워드라인만 집중적으로 액세스되는 도 7과 다르다.
메모리 장치(100)가 2 이상의 워드라인, 예를 들어 ROW=1, ROW=4, ROW=7에 위치한 제1 메모리 셀들에 대해 집중적으로 액세스하고, 이때 문턱값(threshold)은 159라고 가정하자.
도 10a에서 첫번째 액세스 전(T=0)에 메모리 장치(100)가 파워 업(Power Up)되므로 이미 저장되어 있던 제2 메모리셀들(ROW=0,2,3,5,6,8)에 대한 디스터브 카운트값을 초기화한다. 즉, ROW=1,4,7에 연결된 디스터브 카운트 셀에 저장된 값(Disturb(x-1), Disturb(x+1)) 각각을 초기화 한다(도 10a에서 (ROW 0, ROW 2)=(0,0), (ROW 3, ROW 5)=(0,0) 및 (ROW 6, ROW 8)=(0,0)).
메모리 장치(100)는 초기화 후 ROW=1,4,7에 위치한 제1 메모리 셀들(대상 메모리 셀들)에 액세스한다. 상기 제1메모리 셀에 액세스가 집중적으로 반복되면(T=1~480), 메모리 장치(100)는 제1 메모리 셀에 액세스할 때마다 제2 메모리셀(ROW=0,2,3,5,6,8)에 대한 디스터브 양을 카운트한다. 설명의 편의를 위하여 제2 메모리셀은 가장 인접한 워드라인의 제1 메모리 셀 외에 다른 제1 메모리 셀로부터는 중첩적으로 디스터브를 받지 않는다고 가정하자. 예를 들면 ROW=2에 있는 제2 메모리 셀은 ROW=4 또는 ROW=7로부터 중첩적으로 디스터브를 받지 않고, ROW=1에 의해서만 디스터브를 받는다고 가정한다.
제2 메모리셀들의 디스터브 카운트값들 각각((ROW 0, ROW 2), (ROW 3, ROW 5), (ROW 6, ROW 8))은 액세스 되는 제1 메모리 셀(ROW=1,4,7)의 디스터브 카운트 셀 각각에 저장된다. 메모리 장치(100)는 액티브 명령이 수행되는 제1어드레스(ROW=1,4,7)에 상응하는 제1메모리 셀만 인에이블하여 액세스하고, 나머지 셀들이 속한 ROW 0,2,3,5,6,8은 인에이블하지 않기 때문이다.
디스터브 카운트 셀로부터 리드된 나머지 셀들(ROW 0,2,3,5,6,8)의 현재 디스터브 카운트값(160)이 문턱값(threshold=159)보다 커지면(T=480), 메모리 장치는 ROW=0의 제2 메모리 셀을 리프레쉬한다(Refresh 0). 그리고 메모리 장치는 리프레쉬된 제 2메모리 셀(ROW=0)에 대한 디스터브 카운트값을 리셋한다(ROW=1에서 (ROW 0, ROW 2)=(0,160)).
계속하여 제1메모리 셀(ROW=1,4,7)에 집중적으로 액세스하게 되면(T=481~639), 제2메모리 셀의 디스터브 카운트값이 계속적으로 증가하게 된다(ROW=0의 경우 0부터 계속 카운트, ROW=2,3,5,6,8의 경우 160부터 계속 카운트된다). 제2 메모리 셀들 중 ROW=0는 리프레쉬 동작이 수행되었지만, ROW=2,3,5,6,8은 리프레쉬 동작이 수행되지 않았기 때문에 ROW=2,3,5,6,8에 대한 디스터브 카운트값은 계속하여 증가한다.
제1 메모리 셀(ROW=1,4,7)에 계속 액세스가 집중되면(T=481~640) ROW=2인 제2 메모리 셀의 실제 디스터브 카운트값은 최대 디스터브 카운트값(214)에 이르게 되므로(T=640), 메모리 장치는 ROW=2인 제2 메모리 셀에 대한 리프레쉬 동작을 우선적으로 수행하도록 스케줄을 조정한다. 메모리 장치는 조정된 스케줄에 따라 ROW=2인 제2 메모리 셀에 대해 비정규 리프레쉬 동작을 수행하고(Refresh 2), ROW=2의 디스터브 카운트값을 리셋한다(ROW 1에서 (ROW 0, ROW 2)=(54,0)).
도 10a 및 도 10b에서 메모리 장치(100)는 이어서 제1메모리 셀(ROW=1,4,7)에 액세스할 때마다 제2 메모리 셀에 대한 디스터브 카운트값을 계속 카운트한다. 제1 메모리 셀(ROW=1,4,7)에 계속 액세스가 집중되면, T=800,960,1120,1280 각각에서 제2 메모리 셀의 디스터브 카운트값들이 문턱값(thereshold=159)를 초과하거나 최대 디스터브 카운트 값(426)을 초과하여 제2메모리 셀에 대해 비정규 리프레쉬 동작을 수행한다(Refresh 3,5,6,8).
마찬가지로 제1메모리 셀이 액세스될 때마다 제2 메모리 셀의 디스터브 카운트값을 계속 업데이트하고, 상기 디스터브 카운트값은 문턱값 또는 최대 디스터브 카운트값과 비교된 결과, 비정규 리프레쉬 동작의 순서를 결정한다. 즉, 메모리 장치는 제2 메모리 셀에 대한 디스터브 카운트값에 기초하여 정규 리프레쉬 동작 중에도 비정규 리프레쉬 동작을 할 수 있도록 동작 순서의 스케줄을 조정할 수 있다.
그 결과 도 7의 실시예처럼 하나의 워드라인만 비중첩적으로 액세스할 때보다는 최대 디스터브 카운트값의 크기가 증가하나, 최대 디스터브 카운트값이 커지는 것을 고려하더라도 메모리 장치(100)가 현재 디스터브 카운트값에 기초하여 리프레쉬 스케줄을 조정하기 때문에, 제1메모리 셀에 계속하여 액세스가 집중되더라도 최대 디스터브 카운트값은 궁극적으로 제한된다(도 10b에서 최대 디스터브 카운트 값=426으로 제한됨).
이와 같이 메모리 장치가 적어도 둘 이상의 메모리 셀들에 집중적 액세스를 할 경우 적어도 하나의 인접/근접 메모리 셀들은 각각 디스터브를 받는데, 이때 제한되는 최대 디스터브 카운트 값은 수학식 4에 의한다. 이때 n은 집중적으로 액세스하는 셀이 속한 워드라인의 수이다.
디스터브 양은 워드라인이 인에이블된 전체 시간이므로, 이를 정수화 하기 위해 누적적으로 인에이블된 시간을 합쳐서 단위시간(tRASmin 또는 tRCmin일 경우의 워드라인 액세스 타임)으로 나누어 정수화해야 한다.
도 11a 내지 도 11c는 본 발명의 실시예들에 따른 메모리 셀의 리프레쉬 방법의 동작을 설명하기 위한 표이다. 도 11a 및 도 11b의 실시예는 세 개의 인접한 워드라인에 액세스가 집중되고, 나머지 메모리 셀들 중 적어도 3 개의 워드라인에 위치한 메모리 셀들이 중첩적으로 디스터브를 받는 점에서 하나의 워드라인만 집중적으로 액세스되는 도 10a 내지 도 10b와 다르다.
메모리 장치(100)가 4 개의 워드라인, 예를 들어 ROW=1,3,5,7에 위치한 제1 메모리 셀들에 대해 집중적으로 액세스하고, 이때 문턱값(threshold)은 159라고 가정하자.
도 11a에서 첫번째 액세스 전(T=0)에 메모리 장치(100)가 파워 업(Power Up)되므로 이미 저장되어 있던 제2 메모리셀들(ROW=0,2,4,6,8)에 대한 디스터브 카운트값을 초기화한다.
메모리 장치(100)는 초기화 후 ROW=1,3,5,7에 위치한 제1 메모리 셀들(대상 메모리 셀들)에 액세스한다. 상기 제1메모리 셀에 액세스가 집중적으로 반복되면, 메모리 장치(100)는 제1 메모리 셀(ROW=1,3,5,7)에 액세스할 때마다 제2 메모리셀(ROW=0,2,4,6,8)에 대한 디스터브 양을 카운트한다. 이때 ROW=2,4,6은 제1 메모리셀들의 중간에 위치하여 양쪽에서 각각 디스터브를 중첩적으로 받는다.
제2 메모리셀들의 디스터브 카운트값들 각각은 액세스 되는 제1 메모리 셀(ROW=1,3,5,7)의 디스터브 카운트 셀 각각에 저장된다. 이때 ROW=1,3,5,7에 각각 저장되는 ROW=2,4,6의 디스터브 카운트값은 ROW=1,3,5,7 각각에 의한 디스터브만 고려한 것이므로 ROW=2,4,6이 실제로 받은 디스터브는 ROW 1,3,5,7에 의해 받은 디스터브 양 각각의 합이 된다(예를 들어 T=640에서 ROW=2가 ROW=1에 의해 받은 디스터브 카운트값은 160, ROW=2가 ROW=3에 의해 받은 디스터브 카운트값이 160이므로, ROW=2가 받은 실제 디스터브 카운트값(E2)은 160+160=320이 된다)
디스터브 카운트 셀로부터 리드된 나머지 셀들(ROW=0,2,4,6,8)의 현재 디스터브 카운트값이 문턱값(threshold=159)보다 커지면, 메모리 장치는 ROW=0의 제2 메모리 셀을 리프레쉬한다(Refresh 0 at T=640). 그리고 메모리 장치는 리프레쉬된 제2 메모리 셀(ROW=0)에 대한 디스터브 카운트값을 리셋한다.
도 11a 내지 도 11c에서 메모리 장치(100)는 계속하여 제1메모리 셀(ROW=1,3,5,7)에 액세스할 때마다 제2 메모리 셀에 대한 디스터브 카운트값을 카운트하며 문턱값 또는 최대 디스터브 카운트 값과 비교하여 비정규 리프레쉬 순서를 조정한다. 제1 메모리 셀(ROW=1,3,5,7)에 계속 액세스가 집중되면, T=800,960,1120,1280,1440,1600,1760 각각에서 제2 메모리 셀의 디스터브 카운트값들이 문턱값(thereshold=159)를 초과하거나 최대 디스터브 카운트 값(720)을 초과하여 제2메모리 셀에 대해 비정규 리프레쉬 동작을 수행한다(T=800,960,1120,1280,1440,1600,1760 각각에서 Refresh 2,2,4,4,6,6,8). 즉, 중첩적으로 디스터브를 받는 제2 메모리셀들은 디스터브 카운트값을 양측의 워드라인마다 고려하므로 리프레쉬 동작도 중첩적으로 이루어질 수 있다.
그 결과 도 7의 실시예처럼 하나의 워드라인만 비중첩적으로 액세스할 때 또는 도 10a 및 도 10b의 실시예처럼 둘 이상의 워드라인을 비중첩적으로 액세스할 때보다는 최대 디스터브 카운트값의 크기가 증가하나, 최대 디스터브 카운트값이 커지는 것을 고려하더라도 메모리 장치(100)가 현재 디스터브 카운트값에 기초하여 리프레쉬 스케줄을 조정하기 때문에, 제1메모리 셀에 계속하여 액세스가 집중되더라도 최대 디스터브 카운트값은 궁극적으로 제한된다(도 11b에서 최대 디스터브 카운트 값=720으로 제한되고, 이후 반복되는 루프에서 최대 디스터브 카운트 값=560으로 제한됨).
이와 같이 메모리 장치가 적어도 둘 이상의 메모리 셀들에 집중적 액세스를 할 경우 적어도 하나의 인접/근접 메모리 셀들은 각각 디스터브를 받는데, 이때 제한되는 최대 디스터브 카운트 값은 수학식 5에 의한다. 이때 n은 집중적으로 액세스하는 셀이 속한 워드라인의 수이다.
디스터브 양은 워드라인이 인에이블된 전체 시간이므로, 이를 정수화 하기 위해 누적적으로 인에이블된 시간을 합쳐서 단위시간(tRASmin 또는 tRCmin일 경우의 워드라인 액세스 타임)으로 나누어 정수화해야 한다. 상기 수학식 5는 n의 전구간에서 증가함수로서 n이 무한대에서 960으로 수렴한다. tRC=50ns에서 n*tRC=960*50ns로써 48us가 되는데 이 경우가 워스트 케이스(worst case)가 된다.
도 12는 도 1에 도시된 메모리 장치를 포함하는 컴퓨터 시스템의 일 실시 예를 나타낸다.
도 12를 참조하면, 도 1에 도시된 메모리 장치(100)를 포함하는 컴퓨터 시스템(300)은 이동 전화기(cellular phone), 스마트 폰(smart phone), PDA(personal digital assistant), 또는 무선 통신 장치로 구현될 수 있다.
컴퓨터 시스템(300)은 메모리 장치(100)와 메모리 장치(100)의 동작을 제어할 수 있는 메모리 컨트롤러(320)를 포함한다. 메모리 컨트롤러(320)는 호스트(310)의 제어에 따라 메모리 장치(100)의 데이터 액세스 동작, 예컨대 라이트 동작 또는 리드 동작을 제어할 수 있다.
메모리 장치(100)에 데이터는 호스트(310)와 메모리 컨트롤러 (320)의 제어에 따라 디스플레이(330)를 통하여 디스플레이될 수 있다. 무선 송수신기(340)는 안테나(ANT)를 통하여 무선 신호를 주거나 받을 수 있다. 예컨대, 무선 송수신기(340)는 안테나(ANT)를 통하여 수신된 무선 신호를 호스트(310)에서 처리될 수 있는 신호로 변경할 수 있다. 따라서, 호스트(310)는 무선 송수신기(340)로부터 출력된 신호를 처리하고 처리된 신호를 메모리 컨트롤러(320) 또는 디스플레이(330)로 전송할 수 있다. 메모리 컨트롤러(320)는 호스트(310)에 의하여 처리된 신호를 메모리 장치(100)에 저장할 수 있다.
또한, 무선 송수신기(340)는 호스트(310)로부터 출력된 신호를 무선 신호로 변경하고 변경된 무선 신호를 안테나(ANT)를 통하여 외부 장치로 출력할 수 있다. 입력 장치(350)는 호스트(310)의 동작을 제어하기 위한 제어 신호 또는 호스트(310)에 의하여 처리될 데이터를 입력할 수 있는 장치로서, 터치 패드(touch pad)와 컴퓨터 마우스(computer mouse)와 같은 포인팅 장치(pointing device), 키패드(keypad), 또는 키보드로 구현될 수 있다.
호스트(310)는 메모리 컨트롤러(320)로부터 출력된 데이터, 무선 송수신기(340)로부터 출력된 데이터, 또는 입력 장치(350)로부터 출력된 데이터가 디스플레이(330)를 통하여 디스플레이될 수 있도록 디스플레이(330)의 동작을 제어할 수 있다.
실시 예에 따라, 메모리 장치(100)의 동작을 제어할 수 있는 메모리 컨트롤러(320)는 호스트(310)의 일부로서 구현될 수 있고 또한 호스트(310)와 별도의 칩으로 구현될 수 있다.
도 13은 도 1에 도시된 메모리 장치를 포함하는 컴퓨터 시스템의 다른 실시 예를 나타낸다.
도 13을 참조하면, 도 1에 도시된 메모리 장치(100)를 포함하는 컴퓨터 시스템(400)은 PC(personal computer), 네트워크 서버(Network Server), 태블릿 (tablet) PC, 넷-북(net-book), e-리더(e-reader), PDA(personal digital assistant), PMP(portable multimedia player), MP3 플레이어, 또는 MP4 플레이어로 구현될 수 있다.
컴퓨터 시스템(400)은 호스트(410), 메모리 장치(100)와 메모리 장치(100)의 데이터 처리 동작을 제어할 수 있는 메모리 컨트롤러(420), 디스플레이(430) 및 입력 장치(440)를 포함한다.
호스트(410)는 입력 장치(450)를 통하여 입력된 데이터에 따라 메모리 장치(420)에 저장된 데이터를 디스플레이(440)를 통하여 디스플레이할 수 있다. 예컨대, 입력 장치(450)는 터치 패드 또는 컴퓨터 마우스와 같은 포인팅 장치, 키패드, 또는 키보드로 구현될 수 있다. 호스트(410)는 컴퓨터 시스템(400)의 전반적인 동작을 제어할 수 있고 메모리 컨트롤러(420)의 동작을 제어할 수 있다.
실시 예에 따라 메모리 장치(100)의 동작을 제어할 수 있는 메모리 컨트롤러(420)는 호스트(410)의 일부로서 구현될 수 있고 또한 호스트(410)와 별도의 칩으로 구현될 수 있다.
도 14는 도 1에 도시된 메모리 장치를 포함하는 컴퓨터 시스템의 또 다른 실시 예를 나타낸다.
도 14를 참조하면, 도 1에 도시된 메모리 장치(100)를 포함하는 컴퓨터 시스템(500)은 이미지 처리 장치(Image Process Device), 예컨대 디지털 카메라 또는 디지털 카메라가 부착된 이동 전화기 또는 스마트 폰으로 구현될 수 있다.
컴퓨터 시스템(500)은 호스트(510), 메모리 장치(100)와 메모리 장치(100)의 데이터 처리 동작, 예컨대 라이트 동작 또는 리드 동작을 제어할 수 있는 메모리 컨트롤러(520)를 포함한다. 또한, 컴퓨터 시스템(500)은 이미지 센서(530) 및 디스플레이(540)를 더 포함한다.
컴퓨터 시스템(500)의 이미지 센서(530)는 광학 이미지를 디지털 신호들로 변환하고, 변환된 디지털 신호들은 호스트(510) 또는 메모리 컨트롤러(520)로 전송된다. 호스트(510)의 제어에 따라, 상기 변환된 디지털 신호들은 디스플레이(540)를 통하여 디스플레이되거나 또는 메모리 컨트롤러(520)를 통하여 메모리 장치(100)에 저장될 수 있다.
또한, 메모리 장치(100)에 저장된 데이터는 호스트(510) 또는 메모리 컨트롤러(520)의 제어에 따라 디스플레이(540)를 통하여 디스플레이된다.
실시 예에 따라 메모리 장치(100)의 동작을 제어할 수 있는 메모리 컨트롤러 (520)는 호스트(510)의 일부로서 구현될 수 있고 또한 호스트(510)와 별개의 칩으로 구현될 수 있다.
도 15은 도 1에 도시된 메모리 장치를 포함하는 컴퓨터 시스템의 또 다른 실시 예를 나타낸다.
도 15를 참조하면, 도 1에 도시된 메모리 장치(100)를 포함하는 컴퓨터 시스템(600)은 메모리 장치(100) 및 메모리 장치(100)의 동작을 제어할 수 있는 호스트(610)를 포함한다. 메모리 장치(100)는 플래시 메모리(Flash Memory)와 같은 비휘발성 메모리로 구현될 것을 예시한다. 또한, 컴퓨터 시스템 (600)은 시스템 메모리(620), 메모리 인터페이스(630), ECC 블록(640) 및 호스트 인터페이스(650)을 더 포함한다.
컴퓨터 시스템(600)은 호스트(610)의 동작 메모리(operation memory)로서 사용될 수 있는 시스템 메모리(620)를 포함한다. 시스템 메모리(620)는 ROM(read only memory)과 같은 비휘발성 메모리로 구현될 수 있고 SRAM(Static random access memory)과 같은 휘발성 메모리로 구현될 수 있다.
컴퓨터 시스템(600)에 접속된 호스트는 메모리 인터페이스(630)와 호스트 인터페이스(650)를 통하여 메모리 장치(100)와 데이터 통신을 수행할 수 있다.
호스트(610)의 제어에 따라 에러 정정 코드(error correction code(ECC)) 블록 (640)은 메모리 인터페이스(630)를 통하여 메모리 장치(100)로부터 출력된 데이터에 포함된 에러 비트를 검출하고, 상기 에러 비트를 정정하고, 에러 정정된 데이터를 호스트 인터페이스(650)를 통하여 호스트(HOST)로 전송할 수 있다. 호스트(610)는 버스(670)를 통하여 메모리 인터페이스(630), ECC 블럭(640), 호스트 인터페이스(650), 및 시스템 메모리(620) 사이에서 데이터 통신을 제어할 수 있다.
컴퓨터 시스템(600)은 플래시 메모리 드라이브, USB 메모리 드라이브, IC-USB 메모리 드라이브, 또는 메모리 스틱(memory stick)으로 구현될 수 있다.
도 16은 도 1에 도시된 메모리 장치를 포함하는 메모리 시스템의 또 다른 실시 예를 나타낸다.
도 16을 참조하면, 도 1에 도시된 메모리 장치(100)을 포함하는 메모리 시스템(700)은 호스트 컴퓨터(host computer;710)와 메모리 카드(memory card) 또는 스마트 카드(smart card)로 구현될 수 있다. 메모리 시스템(700)은 호스트 컴퓨터(710)와 메모리 카드(730)을 포함한다.
호스트 컴퓨터(710)는 호스트(740) 및 호스트 인터페이스(720)을 포함한다. 메모리 카드(730)는 메모리 장치(100), 메모리 컨트롤러(750), 및 카드 인터페이스(760)를 포함한다. 메모리 컨트롤러(750)는 메모리 장치(100)와 카드 인터페이스(760) 사이에서 데이터의 교환을 제어할 수 있다.
실시 예에 따라, 카드 인터페이스(760)는 SD(secure digital) 카드 인터페이스 또는 MMC(multi-media card) 인터페이스일 수 있으나 이에 한정되는 것은 아니다.
메모리 카드(730)가 호스트 컴퓨터(710)에 장착되면, 카드 인터페이스(570)는 호스트(740)의 프로토콜에 따라 호스트(740)와 메모리 컨트롤러(750) 사이에서 데이터 교환을 인터페이스할 수 있다.
실시 예에 따라 카드 인터페이스(760)는 USB(Universal Serial Bus) 프로토콜, IC(InterChip)-USB 프로토콜을 지원할 수 있다. 여기서, 카드 인터페이스라 함은 호스트 컴퓨터(710)가 사용하는 프로토콜을 지원할 수 있는 하드웨어, 상기 하드웨어에 탑재된 소프트웨어, 또는 신호 전송 방식을 의미할 수 있다.
메모리 시스템(700)이 PC, 태블릿 PC, 디지털 카메라, 디지털 오디오 플레이어, 이동 전화기, 콘솔 비디오 게임 하드웨어, 또는 디지털 셋-탑 박스와 같은 호스트 컴퓨터(710)의 호스트 인터페이스(720)와 접속될 때, 호스트 인터페이스(720)는 호스트(740)의 제어에 따라 카드 인터페이스(760)와 메모리 컨트롤러(750)를 통하여 메모리 장치(100)와 데이터 통신을 수행할 수 있다.
도 17은 도 1에 도시된 메모리 장치를 포함하는 데이터 처리 시스템의 일 실시 예를 나타낸다.
도 17에 도시된 MOD(E/O)는 전기 신호를 광 신호로 변환하는 전-광 변환기로서 사용되는 광 변조기를 의미하고, DEM(O/E)은 광 신호를 전기 신호로 변환하는 광-전 변환기로서 사용되는 광 복조기를 의미한다.
도 17을 참조하면, 데이터 처리 시스템(800)은 CPU(810), 복수의 데이터 버스들(801-1~801-3), 및 복수의 메모리 모듈들(840)을 포함한다.
복수의 메모리 모듈들(840) 각각은 복수의 데이터 버스들(801-1~801-3) 각각에 접속된 복수의 커플러들(811-1, 811-2, 및 811-3) 각각을 통하여 광신호를 주거나 받을 수 있다.
실시 예에 따라, 복수의 커플러들(811-1, 811-2, 및 811-3) 각각은 전기적인 커플러(electrical coupler) 또는 광학적인 커플러(optical coupler)로 구현될 수 있다.
CPU(810)는 적어도 하나의 광 변조기(MOD(E/O))와 적어도 하나의 광 복조기 (DEM(O/E))를 포함하는 제1광 송수신기(816), 및 메모리 컨트롤러(812)를 포함한다. 적어도 하나의 광 복조기(DEM(O/E))는 광-전 변환기로서 사용된다.
메모리 컨트롤러(812)는 CPU(810)의 제어하에 제1광 송수신기(816)의 동작, 예컨대 송신 동작 또는 수신 동작을 제어할 수 있다.
예컨대, 라이트 동작 시, 제1광 송수신기(816)의 제1광 변조기(MOD(E/O))는 메모리 컨트롤러(812)의 제어하에 어드레스들과 제어 신호들을 광 변조기들에 의해 변조된 광신호를 생성하고, 생성된 광신호(ADD/CTRL)를 광 통신 버스(801-3)로 전송할 수 있다.
제1광 송수신기(816)가 광신호(ADD/CTRL)를 광 통신 버스(801-3)로 전송한 후, 제1광 송수신기(816)의 제2광 변조기(MOD(E/O))는 변조된 광 라이트 데이터(WDATA)를 생성하고, 생성된 광 라이트 데이터(WDATA)를 광 통신 버스(801-2)로 전송할 수 있다.
각 메모리 모듈(840)은 제2광 송수신기(830) 및 복수의 메모리 장치들(80)을 포함한다.
각 메모리 모듈(840)은 광학적 DIMM(optical dual in-line memory module), 광학적 Fully Buffered DIMM, 광학적 SO-DIMM(small outline dual in-line memory module), Optical RDIMM(Registered DIMM), Optical LRDIMM(Load Reduced DIMM), UDIMM(Unbuffered DIMM), 광학적 MicroDIMM, 또는 광학적 SIMM(single in-line memory module)으로 구현될 수 있다.
도 17을 참조하면, 제2광 송수신기(830)에 구현된 광 복조기(DEM(O/E))는 광통신 버스(801-2)를 통하여 입력된 광 라이트 데이터(WDATA)를 복조하고 복조된 전기 신호를 복수의 메모리 장치들(80) 중에서 적어도 하나의 메모리 장치로 전송할 수 있다.
실시 예에 따라, 각 메모리 모듈(840)은 광 복조기(DEM(O/E))로부터 출력된 전기 신호를 버퍼링하기 위한 전기적인 버퍼(833)를 더 포함할 수 있다.
예컨대, 전기적인 버퍼(833)는 복조된 전기 신호를 버퍼링하고, 버퍼링된 전기 신호를 복수의 메모리 장치들(100) 중에서 적어도 하나의 메모리 장치로 전송할 수 있다.
리드 동작 시, 메모리 장치(100)로부터 출력된 전기 신호는 제2광 송수신기 (830)에 구현된 광 변조기(MOD(E/O))에 의하여 광 리드 데이터(RDATA)로 변조된다. 광 리드 데이터(RDATA)는 광통신 버스(801-1)를 통하여 CPU(810)에 구현된 제1광 복조기(DEM(O/E))로 전송된다. 제1광 복조기(DEM)는 광 리드 데이터(RDATA)를 복조하고 복조된 전기 신호를 메모리 컨트롤러(812)로 전송한다.
도 18은 도 1에 도시된 메모리 장치를 포함하는 멀티-칩 패키지의 일실시예를 개략적으로 나타낸 개념도이다.
도 18을 참조하면, 멀티-칩 패키지(900)는 패키지 기판(910)상에 순차적으로 적층되는 다수의 반도체 장치들(930~950, Chip #1~Chip #3)을 포함할 수 있다. 다수의 반도체 장치들(930~950) 각각은 상술한 메모리 장치(100)를 포함할 수 있다. 다수의 반도체 장치들(930~950) 각각의 동작을 제어하기 위한 메모리 컨트롤러(미도시)는 다수의 반도체 장치들(930~950) 중 하나 이상의 반도체 장치의 내부에 구비될 수도 있고, 패키지 기판(910) 상에 구현될 수도 있다. 다수의 반도체 장치들(930~950)간의 전기적 연결을 위해서, 실리콘 관통전극(TSV: Through-silicon via, 미도시), 연결선(미도시), 범프(bump, 미도시), 솔더 볼(920) 등이 사용될 수 있다.
일례로, 제1 반도체 장치(930)는 로직 다이(logic die)로, 입출력 인터페이스 장치 및 메모리 컨트롤러를 포함하고, 제2 반도체 장치(940)와 제3 반도체 장치(950)는 복수의 메모리 장치가 적층된 다이(die)들로 각각 메모리 셀 어레이를 포함할 수 있다. 이때 제2 반도체 장치(940)의 메모리 장치와 제3 반도체 장치(950)는 실시예에 따라, 동일한 종류의 메모리 장치일 수도 있고, 다른 종류의 메모리 장치일 수도 있다.
다른 일례로, 제1 반도체 장치 내지 제3 반도체 장치(930~950) 각각은 각각의 메모리 컨트롤러를 포함할 수 있다. 이때 메모리 컨트롤러는 실시예에 따라 메모리 셀 어레이와 동일한 다이(die)에 있을 수도 있고, 메모리 셀 어레이와 다른 다이(die)에 있을 수도 있다.
또다른 일례로, 제1 반도체 장치(Die 1, 930)는 광학 인터페이스 장치를 포함할 수 있다. 메모리 컨트롤러는 제1 반도체 장치(930) 또는 제2 반도체 장치(940)에 위치할 수 있고, 메모리 장치는 제2 반도체 장치(940) 또는 제3 반도체 장치(950)에 위치하여 메모리 컨트롤러와 실리콘 관통 전극(TSV)로 연결될 수 있다.
또한 상기 실시예들은 메모리 컨트롤러와 메모리 셀 어레이 다이가 적층된 구조의 하이브리드 메모리 큐브(Hybrid Memory Cube; 이하 HMC)로써 구현될 수 있다. HMC로 구현함으로써 대역폭 증가로 인한 메모리 장치의 성능 향상, 메모리 장치가 차지하는 면적을 최소화함으로써 전력 소모 및 생산 비용을 감소시킬 수 있다.
도 19는 도 18에 도시된 멀티-칩 패키지의 일실시예를 입체적으로 나타낸 개념도이다.
도 19를 참조하면, 멀티-칩 패키지(900')는 실리콘 관통전극(TSV, 960)을 통해 상호 연결된 적층 구조의 다수의 다이들(Die1~3, 930~950)을 포함한다. 다이들(Die1~3, 930~950) 각각은 메모리 장치(100)의 기능을 구현하기 위한 복수의 회로블록(미도시), 주변회로(Periphery circuit)를 포함할 수 있다. 상기 다이들(930~950)은 셀 레이어로 지칭될 수 있으며, 복수의 회로블록은 메모리 블록으로 구현될 수 있다.
실리콘 관통전극(960)은 구리(Cu) 등의 금속을 포함하는 전도성 물질로 이루어질 수 있고, 실리콘 기판의 중앙에 배치되며, 실리콘 기판은 실리콘 관통전극(960)을 둘러싸고 있는 구조를 갖는다. 실리콘 관통전극(960)과 실리콘 기판 사이에 절연영역(미도시)이 배치될 수 있다.
본 발명의 실시예들에 따른 메모리 장치의 동작방법은 또한 컴퓨터로 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 코드로서 구현하는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다.
컴퓨터가 읽을 수 있는 기록매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피 디스크, 광 데이터 저장장치 등이 있다.
또한 컴퓨터가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다. 그리고 본 발명을 구현하기 위한 기능적인(functional) 프로그램, 코드 및 코드 세그먼트들은 본 발명이 속하는 기술분야의 프로그래머들에 의해 용이하게 추론될 수 있다.
발명은 도면에 도시된 일 실시 예를 참고로 설명되었으나 이는 예시적인 것에 불과하며, 본 기술 분야의 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시 예가 가능하다는 점을 이해할 것이다. 따라서, 본 발명의 진정한 기술적 보호 범위는 첨부된 등록청구범위의 기술적 사상에 의해 정해져야 할 것이다.
10-1 내지 10-N : 메모리 셀 어레이
11 : 노말 셀 어레이 20 : 디스터브 카운트 셀 어레이
31 : ROW MUX 32 : ROW Buffer
33 : ROW Decoder 40 : Bank Control Logic
51 : Column Buffer 52 : Column Decoder
61 : Sense Amplifier 70 : 입출력 제어 유닛
100 : 메모리 장치
200 : 컨트롤 로직
210 : 어드레스 커맨드 디코더
220 : 디스터브 카운트 유닛
221 : 카운트값 업데이트부 222 : 카운트값 비교부
223 : 최대 디스터브 카운트값 저장부
224 : 카운트 유효 플래그 유닛
250 : 리프레쉬 유닛
251 : 인접 어드레스 계산부
252 : 다음 비정규 리프레쉬 어드레스 및 비정규 리프레쉬 플래그 저장부
253 : 리프레쉬 컨트롤러 254 : 주기적 내부 리프레쉬 명령 생성부
11 : 노말 셀 어레이 20 : 디스터브 카운트 셀 어레이
31 : ROW MUX 32 : ROW Buffer
33 : ROW Decoder 40 : Bank Control Logic
51 : Column Buffer 52 : Column Decoder
61 : Sense Amplifier 70 : 입출력 제어 유닛
100 : 메모리 장치
200 : 컨트롤 로직
210 : 어드레스 커맨드 디코더
220 : 디스터브 카운트 유닛
221 : 카운트값 업데이트부 222 : 카운트값 비교부
223 : 최대 디스터브 카운트값 저장부
224 : 카운트 유효 플래그 유닛
250 : 리프레쉬 유닛
251 : 인접 어드레스 계산부
252 : 다음 비정규 리프레쉬 어드레스 및 비정규 리프레쉬 플래그 저장부
253 : 리프레쉬 컨트롤러 254 : 주기적 내부 리프레쉬 명령 생성부
Claims (20)
- 복수의 메모리셀들을 포함하는 메모리 장치의 동작방법에 있어서,
(a)제1메모리 셀을 액세스할 때마다, 상기 제1메모리 셀에 인접한 제2 메모리 셀의 디스터브 양을 카운트하여 상기 제2 메모리 셀에 대한 디스터브 카운트값을 업데이트하는 단계;
(b)상기 제2메모리 셀의 디스터브 카운트값을 기설정된 문턱값 및 최대 디스터브 카운트값과 비교한 결과에 따라 리프레쉬 동작 스케줄을 조정하는 단계; 및
(c)상기 조정된 스케줄에 따라 상기 제2메모리 셀을 리프레쉬한 경우, 상기 제2메모리 셀의 디스터브 카운트값 및 상기 최대 디스터브 카운트값을 리셋하는 단계를 포함하는 메모리 장치의 동작방법. - 제1항에 있어서, 상기 디스터브 양은
상기 제1 메모리 셀에 대한 누적 액세스 타임(Access time)을 단위 시간으로 나눈 값인 메모리 장치의 동작방법. - 제1항에 있어서, 상기 디스터브 카운트값은
상기 제1 메모리 셀이 액세스될 때마다, 이전 액세스 타임에 저장된 디스터브 카운트값에 상기 제1 메모리 셀의 현재 액세스 타임동안 주기적으로 카운트되는 값을 더하여 업데이트되는 메모리 장치의 동작방법. - 제1항에 있어서 상기 (b)단계는
상기 제2메모리 셀의 디스터브 카운트값이 상기 문턱값 이상이고 상기 최대 디스터브 카운트값을 초과하는 경우, 상기 스케줄 내 상기 제2메모리 셀에 대한 리프레쉬 동작 순서를 앞당기는 단계; 및
상기 최대 디스터브 카운트값을 상기 제2메모리 셀의 디스터브 카운트값으로 업데이트 하는 단계를 포함하는 메모리 장치의 동작방법. - 제1항에 있어서, 상기 (c)단계는
상기 메모리 장치가 파워업(Power Up)된 후 비정규 리프레쉬 플래그를 활성화하여 스케줄에 따라 리프레쉬 동작을 수행하도록 제어하고, 상기 메모리 장치가 테스트 모드인 경우 상기 비정규 리프레쉬 플래그는 비활성화하여 리프레쉬 동작을 정지시키는 메모리 장치의 동작방법. - 제5항에 있어서, 상기 제2메모리 셀을 리프레쉬하는 경우 상기 비정규 리프레쉬 플래그는 리셋되는 메모리 장치의 동작방법.
- 제1항에 있어서, 상기 동작방법은
상기 메모리 장치가 파워업(Power Up)되어 초기화될 경우 상기 메모리 장치의 상기 디스터브 카운트값들을 초기화하는 단계를 더 포함하는 메모리 장치의 동작방법. - 복수의 메모리 셀들을 포함하는 메모리 셀 어레이;
상기 복수의 메모리 셀들 중 적어도 하나의 제1메모리 셀에 액세스할 때, 제1 메모리 셀에 인접한 제2 메모리 셀에 대한 현재 디스터브 카운트값을 리드하고 상기 현재 디스터브 카운트값을 기설정된 문턱값 및 최대 디스터브 카운트값과 비교하며, 상기 제1메모리 셀의 현재 액세스 타임 동안 상기 제2 메모리 셀의 디스터브 양을 카운트하여 상기 디스터브 카운트값을 업데이트하는 컨트롤 로직; 및
상기 제2메모리 셀의 워드라인 어드레스를 계산하고, 상기 디스터브 카운트값의 비교결과에 따라 상기 제2메모리 셀에 대한 현재 리프레쉬 스케줄을 조정하여 상기 제2 메모리 셀의 리프레쉬 동작을 수행하고, 파워업신호에 기초하여 리프레쉬 동작 수행의 초기화 여부를 제어하는 리프레쉬 유닛을 포함하는 메모리 장치. - 제8항에 있어서, 상기 메모리셀 어레이는
데이터를 저장하는 복수의 상기 제1메모리 셀들을 포함하는 노말 셀 어레이; 및
상기 디스터브 카운트값을 저장하는 복수의 디스터브 카운트 셀들을 포함하는 디스터브 카운트 셀 어레이를 포함하고,
적어도 하나의 상기 디스터브 카운트 셀은 상기 제1메모리 셀과 동일 워드라인에 속한 메모리 장치. - 제8항에 있어서, 상기 컨트롤 로직은
호스트로부터 클락신호, 액티브 명령 및 어드레스를 수신하여 상기 클락신호에 기초하여 상기 명령에 상응하는 제어신호들로 디코딩하고, 상기 어드레스를 상기 제1메모리 셀에 액세스하기 위한 로우 어드레스와 컬럼 어드레스로 디코딩하는 어드레스 커맨드 디코더;
리드된 상기 현재 디스터브 카운트값을 상기 문턱값 및 최대 디스터브 카운트값과 비교하는 카운트값 비교부;
상기 제1 메모리 셀이 액세스될 때마다, 이전 액세스 타임에 저장된 디스터브 카운트값에 상기 제1 메모리 셀의 현재 액세스 타임동안 주기적으로 카운트되는 값을 더하여 업데이트하는 카운트값 업데이트부; 및
상기 메모리 장치의 초기화 시점부터 현재 동작시점까지의 상기 제2메모리 셀에 대한 상기 디스터브 카운트값들 중 최대 디스터브 카운트값을 저장하고, 상기 업데이트된 디스터브 카운트값이 현재 최대 디스터브 카운트값보다 크면, 상기 업데이트된 디스터브 카운트값을 최대 디스터브 카운트값으로 업데이트하는 최대 디스터브 카운트값 저장부를 포함하는 메모리 장치. - 제10항에 있어서, 상기 리프레쉬 유닛은
상기 컨트롤 로직으로부터 수신한 상기 제1 메모리 셀에 대한 어드레스를 기초로 상기 제2 메모리 셀에 대한 어드레스를 계산하는 인접 어드레스 계산부;
상기 제2 메모리 셀에 대한 상기 현재 디스터브 카운트값이 상기 문턱값 이상이고 상기 최대 디스터브 카운트값을 초과하면, 상기 제2 메모리 셀의 상기 어드레스를 다음 비정규 리프레쉬 주소로 저장하고, 상기 제2 메모리 셀에 대한 비정규 리프레쉬 동작 수행 여부를 비정규 리프레쉬 플래그(Refresh Flag)에 반영하는 다음 비정규 리프레쉬 주소 및 비정규 리프레쉬 플래그 저장부; 및
상기 비정규 리프레쉬 플래그에 따라 상기 제2 메모리 셀의 비정규 리프레쉬 동작을 우선적으로 수행하도록 상기 현재 리프레쉬 스케줄을 조정하는 리프레쉬 컨트롤러를 포함하는 메모리 장치. - 제11항에 있어서, 상기 리프레쉬 유닛은
상기 파워업신호에 기초하여 상기 메모리 셀 어레이 전체를 모두 리프레쉬하고, 상기 디스터브 카운트값을 초기화하도록 제어하는 내부 리프레쉬 신호를 출력하는 주기적 내부 리프레쉬 커맨드 생성부를 더 포함하고,
상기 컨트롤 로직은
상기 내부 리프레쉬 신호에 따라 카운트 유효 플래그를 활성화하여 상기 카운트값 업데이트부, 상기 카운트값 비교부 및 상기 최대 디스터브 카운트값 저장부를 리셋하는 카운트 유효 플래그 유닛을 포함하는 메모리 장치. - 제10항에 있어서, 상기 카운트값 업데이트부는
상기 제2 메모리 셀에 대한 비정규 리프레쉬 동작 수행 후, 상기 제2 메모리 셀에 대한 디스터브 카운트값을 리셋하는 메모리 장치. - 제11항에 있어서, 상기 리프레쉬 컨트롤러는
상기 제2 메모리 셀에 대한 상기 현재 디스터브 카운트값이 상기 문턱값 이상이고 상기 최대 디스터브 카운트값을 초과하면, 상기 제2 메모리 셀에 대한 비정규 리프레쉬 동작 순서를 상기 현재 리프레쉬 스케줄 사이에 삽입하여 우선처리하는 메모리 장치. - 제11항에 있어서, 상기 리프레쉬 컨트롤러는
상기 제2 메모리 셀에 대한 상기 현재 디스터브 카운트값이 상기 문턱값 이상이고 상기 최대 디스터브 카운트값을 초과하면, 상기 제2 메모리 셀에 대한 비정규 리프레쉬 동작 순서를 상기 현재 리프레쉬 스케줄과 병행처리되도록 스케줄링하는 메모리 장치. - 제12항에 있어서 상기 카운트 유효 플래그 유닛은
상기 메모리 장치가 테스트 모드인 경우, 상기 제2 메모리 셀에 대한 비정규 리프레쉬 동작을 수행하지 않도록 상기 카운트 유효 플래그를 비활성화하는 메모리 장치. - 제9항에 있어서,
상기 제2 메모리 셀에 대한 현재 디스터브 카운트값을 상기 디스터브 카운트 셀로부터 리드(Read)하고, 상기 업데이트된 디스터브 카운트값을 상기 디스터브 카운트 셀에 라이트(Write)하는 카운트 라이트 리드 블럭을 더 포함하는 메모리 장치. - 복수의 메모리 셀들을 포함하는 메모리 시스템의 동작 방법에 있어서,
(a)적어도 하나의 제1 메모리 셀에 액세스(Access) 하는 동안 상기 제1 메모리 셀의 워드라인에 인접한 제2 메모리 셀의 디스터브 양(Disturb Value)을 카운트하여 디스터브 카운트값을 업데이트(update)하는 단계;
(b)상기 업데이트된 디스터브 양을 최대 디스터브 카운트값 및 기설정된 문턱값을 비교한 결과에 기초하여 상기 제2 메모리 셀에 대한 리프레쉬(Refresh) 동작의 순서를 변경하는 단계;
(c)상기 순서에 따라 상기 제2 메모리 셀에 대한 리프레쉬 동작이 수행되면, 상기 제2 메모리 셀의 디스터브 카운트값을 리셋(Reset)하는 단계를 포함하고,
상기 디스터브 양은
상기 제1 메모리 셀에 대한 누적 액세스 타임(Access time)동안 카운터를 주기적으로 증가시킨 값인 메모리 시스템의 동작방법. - 제18항에 있어서, 상기 (b)단계는
상기 제2 메모리 셀의 디스터브 양이 상기 문턱값과 동일하거나 크고, 상기 최대 디스터브 카운트값보다 클 경우 상기 제2 메모리 셀의 리프레쉬 동작을 우선순위로 스케줄링하는 단계;
상기 제2 메모리 셀의 디스터브 양을 새로운 최대 디스터브 카운트값으로 업데이트 하는 단계;
상기 제2 메모리 셀에 대한 리프레쉬 동작을 수행할지 여부를 나타내는 비정규 리프레쉬 플래그(Refresh Flag)를 업데이트 하는 단계;
상기 비정규 리프레쉬 플래그가 활성화 된 경우 상기 제2메모리 셀에 대한 리프레쉬 동작을 수행하는 단계; 및
상기 제2 메모리 셀의 최대 디스터브 카운트값 및 상기 제2 메모리 셀의 디스터브 양을 리셋한 후 상기 비정규 리프레쉬 플래그를 리셋하는 단계를 포함하는 메모리 시스템의 동작방법. - 제18항에 있어서, 상기 동작방법은
상기 메모리 시스템을 파워업(Power Up)한 경우 상기 메모리 시스템의 모든 워드라인을 인에이블하여 모든 상기 디스터브 카운트값들을 리셋하는 단계를 더 포함하는 메모리 시스템의 동작 방법.
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13/836,659 US9257169B2 (en) | 2012-05-14 | 2013-03-15 | Memory device, memory system, and operating methods thereof |
CN201310177482.3A CN103426467B (zh) | 2012-05-14 | 2013-05-14 | 存储装置、存储系统及其操作方法 |
JP2013102136A JP6108949B2 (ja) | 2012-05-14 | 2013-05-14 | メモリ装置、メモリシステム及びその動作方法 |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201261646410P | 2012-05-14 | 2012-05-14 | |
US61/646,410 | 2012-05-14 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20130127346A KR20130127346A (ko) | 2013-11-22 |
KR102014834B1 true KR102014834B1 (ko) | 2019-08-27 |
Family
ID=49854969
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020120093113A KR102014834B1 (ko) | 2012-05-14 | 2012-08-24 | 메모리 장치, 메모리 시스템 및 그 동작방법 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR102014834B1 (ko) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11967354B2 (en) | 2021-11-12 | 2024-04-23 | SK Hynix Inc. | Memory device and operating method for target refresh operation based on number of accesses |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20160011015A (ko) | 2014-07-21 | 2016-01-29 | 에스케이하이닉스 주식회사 | 어드레스 생성회로 및 이를 포함하는 메모리 장치 |
US9836277B2 (en) * | 2014-10-01 | 2017-12-05 | Samsung Electronics Co., Ltd. | In-memory popcount support for real time analytics |
US10475519B2 (en) * | 2018-03-23 | 2019-11-12 | Micron Technology, Inc. | Methods for detecting and mitigating memory media degradation and memory devices employing the same |
WO2020131457A1 (en) * | 2018-12-21 | 2020-06-25 | Micron Technology, Inc. | Methods for activity-based memory maintenance operations and memory devices and systems employing the same |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080165605A1 (en) | 2007-01-05 | 2008-07-10 | Innovative Silicon S.A. | Method and apparatus for variable memory cell refresh |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5715193A (en) * | 1996-05-23 | 1998-02-03 | Micron Quantum Devices, Inc. | Flash memory system and method for monitoring the disturb effect on memory cell blocks due to high voltage conditions of other memory cell blocks |
-
2012
- 2012-08-24 KR KR1020120093113A patent/KR102014834B1/ko active IP Right Grant
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080165605A1 (en) | 2007-01-05 | 2008-07-10 | Innovative Silicon S.A. | Method and apparatus for variable memory cell refresh |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11967354B2 (en) | 2021-11-12 | 2024-04-23 | SK Hynix Inc. | Memory device and operating method for target refresh operation based on number of accesses |
Also Published As
Publication number | Publication date |
---|---|
KR20130127346A (ko) | 2013-11-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6108949B2 (ja) | メモリ装置、メモリシステム及びその動作方法 | |
US11631449B2 (en) | Semiconductor memory device managing flexible refresh skip area | |
US9437255B2 (en) | Semiconductor device controlling refresh operation for preventing wordline disturbance | |
KR102282971B1 (ko) | 반도체 메모리 장치, 및 상기 반도체 메모리 장치를 포함하는 메모리 시스템 | |
US9335951B2 (en) | Memory device for reducing a write fail, a system including the same, and a method thereof | |
KR20130117198A (ko) | 메모리 셀의 리프레쉬 방법 및 이를 이용한 반도체 메모리 장치 | |
KR102254098B1 (ko) | 온도를 센싱할 수 있는 반도체 칩, 및 상기 반도체 칩을 포함하는 반도체 시스템 | |
KR102023487B1 (ko) | 오토 리프레쉬 커맨드를 사용하지 않고 리프레쉬를 수행할 수 있는 반도체 메모리 장치 및 이를 포함하는 메모리 시스템 | |
KR20140113191A (ko) | 반도체 메모리 장치 및 이의 리프레쉬 방법 | |
KR102014834B1 (ko) | 메모리 장치, 메모리 시스템 및 그 동작방법 | |
US20200204179A1 (en) | Apparatus for transmitting and receiving a signal, a method of operating the same, a memory device, and a method of operating the memory device | |
US10846220B2 (en) | Memory system and operation method thereof | |
US10199084B2 (en) | Techniques to use chip select signals for a dual in-line memory module | |
US9696941B1 (en) | Memory system including memory buffer | |
US9563384B2 (en) | Systems and methods for data alignment in a memory system | |
US9368236B2 (en) | Semiconductor memory apparatus and test method thereof | |
US10978131B2 (en) | Mobile device and operation method thereof | |
US11031068B2 (en) | Memory device receiving data clock signals and operation method thereof | |
US11216326B2 (en) | Memory system and operation method thereof | |
US8750068B2 (en) | Memory system and refresh control method thereof | |
CN105304119B (zh) | 刷新电路 | |
US11804254B2 (en) | Memory device and method of refreshing memory device based on temperature | |
KR20160110690A (ko) | 디램 메모리 어드레스 맵핑 방법 및 그 방법을 이용하는 메모리 시스템 | |
JP2012221534A (ja) | 半導体記憶装置および半導体記憶装置のリフレッシュ方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |