KR20230068232A - 반도체 메모리 장치 및 이의 동작 방법 - Google Patents
반도체 메모리 장치 및 이의 동작 방법 Download PDFInfo
- Publication number
- KR20230068232A KR20230068232A KR1020220000084A KR20220000084A KR20230068232A KR 20230068232 A KR20230068232 A KR 20230068232A KR 1020220000084 A KR1020220000084 A KR 1020220000084A KR 20220000084 A KR20220000084 A KR 20220000084A KR 20230068232 A KR20230068232 A KR 20230068232A
- Authority
- KR
- South Korea
- Prior art keywords
- hammer
- address
- row
- refresh
- addresses
- Prior art date
Links
- 239000004065 semiconductor Substances 0.000 title claims abstract description 86
- 238000000034 method Methods 0.000 title claims description 26
- 230000015654 memory Effects 0.000 claims abstract description 214
- 230000004044 response Effects 0.000 claims description 38
- 239000000872 buffer Substances 0.000 claims description 22
- 238000010586 diagram Methods 0.000 description 28
- 238000013416 safety cell bank Methods 0.000 description 13
- 238000003491 array Methods 0.000 description 11
- 238000012545 processing Methods 0.000 description 11
- 230000004913 activation Effects 0.000 description 9
- 230000005540 biological transmission Effects 0.000 description 9
- 102100023882 Endoribonuclease ZC3H12A Human genes 0.000 description 6
- 101710112715 Endoribonuclease ZC3H12A Proteins 0.000 description 6
- 101001122448 Rattus norvegicus Nociceptin receptor Proteins 0.000 description 6
- 230000006870 function Effects 0.000 description 6
- QGVYYLZOAMMKAH-UHFFFAOYSA-N pegnivacogin Chemical compound COCCOC(=O)NCCCCC(NC(=O)OCCOC)C(=O)NCCCCCCOP(=O)(O)O QGVYYLZOAMMKAH-UHFFFAOYSA-N 0.000 description 6
- 230000008859 change Effects 0.000 description 5
- 238000011017 operating method Methods 0.000 description 5
- 101000702718 Homo sapiens Phosphatidylcholine:ceramide cholinephosphotransferase 1 Proteins 0.000 description 4
- 101000825940 Homo sapiens Phosphatidylcholine:ceramide cholinephosphotransferase 2 Proteins 0.000 description 4
- 101001074602 Homo sapiens Protein PIMREG Proteins 0.000 description 4
- 102100030919 Phosphatidylcholine:ceramide cholinephosphotransferase 1 Human genes 0.000 description 4
- 102100022771 Phosphatidylcholine:ceramide cholinephosphotransferase 2 Human genes 0.000 description 4
- 102100036258 Protein PIMREG Human genes 0.000 description 4
- 101150102752 MTC2 gene Proteins 0.000 description 3
- 101000994634 Rattus norvegicus Potassium voltage-gated channel subfamily A member 1 Proteins 0.000 description 3
- 101001026212 Rattus norvegicus Potassium voltage-gated channel subfamily A member 3 Proteins 0.000 description 3
- 101001026190 Rattus norvegicus Potassium voltage-gated channel subfamily A member 6 Proteins 0.000 description 3
- 238000004891 communication Methods 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 239000000758 substrate Substances 0.000 description 3
- 229920001621 AMOLED Polymers 0.000 description 2
- 102100033041 Carbonic anhydrase 13 Human genes 0.000 description 2
- 102100035954 Choline transporter-like protein 2 Human genes 0.000 description 2
- 102100039497 Choline transporter-like protein 3 Human genes 0.000 description 2
- 241000600039 Chromis punctipinnis Species 0.000 description 2
- 101000867860 Homo sapiens Carbonic anhydrase 13 Proteins 0.000 description 2
- 101000948115 Homo sapiens Choline transporter-like protein 2 Proteins 0.000 description 2
- 101000889279 Homo sapiens Choline transporter-like protein 3 Proteins 0.000 description 2
- 108700012361 REG2 Proteins 0.000 description 2
- 101150108637 REG2 gene Proteins 0.000 description 2
- 101100120298 Rattus norvegicus Flot1 gene Proteins 0.000 description 2
- 101100412403 Rattus norvegicus Reg3b gene Proteins 0.000 description 2
- 238000012937 correction Methods 0.000 description 2
- 230000008878 coupling Effects 0.000 description 2
- 238000010168 coupling process Methods 0.000 description 2
- 238000005859 coupling reaction Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000004806 packaging method and process Methods 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 229910052710 silicon Inorganic materials 0.000 description 2
- 239000010703 silicon Substances 0.000 description 2
- 229910000679 solder Inorganic materials 0.000 description 2
- 101100274417 Arabidopsis thaliana CID3 gene Proteins 0.000 description 1
- 102100021723 Arginase-1 Human genes 0.000 description 1
- 102100031699 Choline transporter-like protein 1 Human genes 0.000 description 1
- 102100039496 Choline transporter-like protein 4 Human genes 0.000 description 1
- 101100301524 Drosophila melanogaster Reg-5 gene Proteins 0.000 description 1
- 102100026620 E3 ubiquitin ligase TRAF3IP2 Human genes 0.000 description 1
- 101710140859 E3 ubiquitin ligase TRAF3IP2 Proteins 0.000 description 1
- 101000752037 Homo sapiens Arginase-1 Proteins 0.000 description 1
- 101000940912 Homo sapiens Choline transporter-like protein 1 Proteins 0.000 description 1
- 101000889282 Homo sapiens Choline transporter-like protein 4 Proteins 0.000 description 1
- 101000800287 Homo sapiens Tubulointerstitial nephritis antigen-like Proteins 0.000 description 1
- 241000724291 Tobacco streak virus Species 0.000 description 1
- 239000003990 capacitor Substances 0.000 description 1
- 230000015556 catabolic process Effects 0.000 description 1
- 238000006731 degradation reaction Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 230000001788 irregular Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 230000001537 neural effect Effects 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 238000012549 training Methods 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
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/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/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
- 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)
- Computer Security & Cryptography (AREA)
- Dram (AREA)
Abstract
본 발명의 실시예들에 따른 반도체 메모리 장치는 메모리 셀 어레이, 로우 해머 관리 회로 및 리프레쉬 제어 회로를 포함한다. 상기 메모리 셀 어레이는 각각이 복수의 휘발성 메모리 셀들을 구비하는 복수의 메모리 셀 로우들을 포함한다. 상기 로우 해머 관리 회로는 기준 구간 동안에, 균일한 제1 선택 확률을 가지는, 외부의 메모리 컨트롤러로부터의 액티브 커맨드들 중 랜덤하게 선택된 제1 액티브 커맨들에 수반되는 로우 어드레스들을 캡쳐하고, 상기 캡쳐된 로우 어드레스들을 중 적어도 하나의 로우 어드레스를, 상기 기준 구간 동안에 상기 적어도 하나의 로우 어드레스에 대응되는 액티브 커맨드의 액세스 카운트에 비례하는 횟수만큼 해머 어드레스로 선택한다. 상기 리프레쉬 제어 회로는 상기 해머 어드레스를 수신하고, 상기 해머 어드레스에 상응하는 메모리 셀 로우에 물리적으로 인접한 빅팀(victim) 메모리 셀 로우들에 대하여 해머 리프레쉬 동작을 수행한다.
Description
본 발명은 메모리 분야에 관한 것으로, 보다 상세하게는 해머 리프레쉬 동작을 수행하는 반도체 메모리 장치 및 이의 동작 방법에 관한 것이다.
반도체 메모리 장치는 크게 휘발성 메모리 장치(Volatile memory device)와 불휘발성 메모리 장치(Nonvolatile memory device)로 구분될 수 있다. 휘발성 메모리 장치는 전원 공급이 차단되면 저장하고 있던 데이터가 소멸되는 메모리 장치이다. 휘발성 메모리 장치 중 동적 랜덤 엑세스 메모리(DRAM; dynamic random access memory)는 모바일 시스템, 서버, 그래픽 장치 등 다양한 분야에서 사용되고 있다.
디램 등의 휘발성 메모리 장치에서는 누설 전류에 의해 메모리 셀에 저장된 셀 전하가 소실될 수 있다. 또한 워드라인이 액티브 상태와 프리차지 상태 사이에서 빈번하게 천이하는 경우에, 즉 워드라인 또는 행이 집중적으로 액세스되는 경우에 인접 워드라인에 연결된 메모리 셀들에 영향을 미쳐 셀 전하가 소실될 수 있다. 셀 전하가 소실되어 데이터가 완전히 손상되기 전에 다시 메모리 셀의 전하를 재충전해야 하고, 이러한 셀 전하의 재충전을 리프레쉬 동작이라고 한다. 이러한 리프레쉬 동작은 셀 전하가 소실되기 전에 반복적으로 수행되어야 한다.
본 발명의 일 목적은 메모리 셀 로우들에 대한 액세스 비율에 기초하여 로우 해머를 관리하는 반도체 메모리 장치를 제공하는 것이다.
본 발명의 일 목적은 메모리 셀 로우들에 대한 액세스 비율에 기초하여 로우 해머를 관리하는 반도체 메모리 장치의 동작 방법을 제공하는 것이다.
상기 일 목적을 달성하기 위한 본 발명의 실시예들에 따른 반도체 메모리 장치는 메모리 셀 어레이, 로우 해머 관리 회로 및 리프레쉬 제어 회로를 포함한다. 상기 메모리 셀 어레이는 각각이 복수의 휘발성 메모리 셀들을 구비하는 복수의 메모리 셀 로우들을 포함한다. 상기 로우 해머 관리 회로는 기준 구간 동안에, 균일한 제1 선택 확률을 가지는, 외부의 메모리 컨트롤러로부터의 액티브 커맨드들 중 랜덤하게 선택된 제1 액티브 커맨들에 수반되는 로우 어드레스들을 캡쳐하고, 상기 캡쳐된 로우 어드레스들을 중 적어도 하나의 로우 어드레스를 상기 액티브 커맨드들에 기초한 액세스 비율에 비례하도록 해머 어드레스로 선택한다. 상기 리프레쉬 제어 회로는 상기 해머 어드레스를 수신하고, 상기 해머 어드레스에 상응하는 메모리 셀 로우에 물리적으로 인접한 빅팀(victim) 메모리 셀 로우들에 대하여 해머 리프레쉬 동작을 수행한다.
상기 일 목적을 달성하기 위한 본 발명의 실시예들에 따른 각각이 복수의 휘발성 메모리 셀들을 포함하는 복수의 메모리 셀 로우들을 구비하는 메모리 셀 어레이를 구비하는 반도체 메모리 장치의 동작 방법에서는 기준 구간 동안에, 균일한 선택 확률을 가지는, 외부의 메모리 컨트롤러로부터의 액티브 커맨드들 중 랜덤하게 선택된 제1 액티브 커맨들에 수반되는 로우 어드레스들을 캡쳐하고, 상기 캡쳐된 로우 어드레스들을 중 적어도 하나의 로우 어드레스를 상기 액티브 커맨드들에 기초한 액세스 비율에 비례하도록 해머 어드레스로 선택한다. 상기 해머 어드레스에 상응하는 메모리 셀 로우에 물리적으로 인접한 빅팀(victim) 메모리 셀 로우들에 대하여 해머 리프레쉬 동작을 수행한다.
상기 일 목적을 달성하기 위한 본 발명의 실시예들에 따른 반도체 메모리 장치는 메모리 셀 어레이, 로우 해머 관리 회로 및 리프레쉬 제어 회로를 포함한다. 상기 메모리 셀 어레이는 각각이 복수의 휘발성 메모리 셀들을 구비하는 복수의 메모리 셀 로우들을 포함한다. 상기 로우 해머 관리 회로는 기준 구간 동안에, 균일한 제1 선택 확률을 가지는, 외부의 메모리 컨트롤러로부터의 액티브 커맨드들 중 랜덤하게 선택된 제1 액티브 커맨들에 수반되는 로우 어드레스들을 캡쳐하고, 상기 캡쳐된 로우 어드레스들을 중 적어도 하나의 로우 어드레스를 상기 액티브 커맨드들에 기초한 액세스 비율에 비례하도록 해머 어드레스로 선택한다. 상기 리프레쉬 제어 회로는 상기 해머 어드레스를 수신하고, 상기 해머 어드레스에 상응하는 메모리 셀 로우에 물리적으로 인접한 빅팀(victim) 메모리 셀 로우들에 대하여 해머 리프레쉬 동작을 수행한다. 상기 선택 확률은 상기 리프레쉬 주기 동안에 상기 복수의 메모리 셀 로우들에 대한 평균 액세스 횟수에 대한 상기 리프레쉬 주기 동안에 상기 복수의 메모리 셀 로우들에 대하여 수행될 수 있는 상기 해머 리프레쉬 동작의 횟수의 비에 해당하고, 상기 로우 해머 관리 회로는 랜덤하게 변화하는 랜덤 이진 코드와 기준 이준 코드가 일치하는 것에 기초하여 선택된 상기 제1 액티브 커맨드들에 수반되는 상기 로우 어드레스들 중 적어도 일부를 상기 해머 어드레스로 선택한다.
본 발명의 실시예들에 따른 반도체 메모리 장치 및 반도체 메모리 장치의 동작 방법에 따르면, 기준 구간 동안에 동일한 선택 확률을 가지는 액티브 커맨드들 중 랜덤하게 선택된 제1 액티브 커맨드들에 수반되는 로우 어드레스들에 기초하여 메모리 셀 로우들에 대한 액세스 비율에 비례하도록 해머 어드레스를 생성하고, 상기 해머 어드레스에 기초하여 해머 어드레스에 상응하는 메모리 셀 로우에 물리적으로 인접한 빅팀(victim) 메모리 셀 로우들에 대하여 해머 리프레쉬 동작을 메모리 셀 로우들에 대한 액세스 비율에 비례하도록 수행함으로써, Blacksmith와 같은 비균일 공격 패턴에 의한 로우 해머를 방지할 수 있다.
도 1은 본 발명의 실시예들에 따른 메모리 시스템을 나타내는 블록도이다.
도 2는 본 발명의 실시예들에 따른 도 1의 메모리 시스템에서 메모리 컨트롤러의 구성을 나타내는 블록도이다.
도 3은 본 발명의 실시예들에 따른 도 1의 메모리 시스템에서 반도체 메모리 장치의 구성을 나타내는 블록도이다.
도 4는 본 발명의 실시예들에 따른 도 3의 반도체 메모리 장치에서 제1 뱅크 어레이를 나타낸다.
도 5는 본 발명의 실시예들에 따른 도 3의 반도체 메모리 장치에서 로우 해머 관리 회로의 예를 나타내는 블록도이다.
도 6은 본 발명의 실시예들에 따른 도 5의 로우 해머 관리 회로에 포함되는 어드레스 스토리지의 예를 나타내는 블록도이다.
도 7은 본 발명의 실시예들에 따른 액세스 비율에 따른 해머 리프레쉬를 설명하기 위한 도면이다.
도 8은 본 발명의 실시예들에 따른 도 5의 랜덤 비트 생성기의 예를 나타내는 회로도이다.
도 9는 본 발명의 실시예들에 따른 도 5의 로우 해머 관리 회로의 동작을 나타낸다.
도 10은 본 발명의 실시예들에 따른 도 3의 반도체 메모리 장치에서 로우 해머 관리 회로의 예를 나타내는 블록도이다.
도 11은 본 발명의 실시예들에 따른 도 5의 로우 해머 관리 회로의 동작을 나타낸다.
도 12는 본 발명의 실시예들에 따른 도 3의 반도체 메모리 장치에서 로우 해머 관리 회로의 예를 나타내는 블록도이다.
도 13은 본 본 발명의 실시예들에 따른 도 3의 반도체 메모리 장치에서 리프레쉬 제어 회로의 구성을 나타내는 블록도이다.
도 14는 본 발명의 실시예들에 따른 도 13의 리프레쉬 제어 회로에서 리프레쉬 클럭 생성기의 일 예를 나타낸다.
도 15는 본 발명의 실시예들에 따른 도 13의 리프레쉬 제어 회로에서 리프레쉬 클럭 생성기의 일 예를 나타낸다.
도 16은 본 발명의 실시예들에 따른 도 3의 반도체 메모리 장치에서 제1 뱅크 어레이를 나타낸다.
도 17은 본 발명의 실시예들에 따른 도 16의 제1 뱅크 어레이의 부분을 보다 상세히 나타낸다.
도 18 및 도 19는 본 발명의 실시예들에 따른 도 1의 메모리 시스템의 커맨드들을 나타낸다.
도 20은 본 발명의 실시예들에 따른 메모리 시스템이 프리차지 커맨드를 이용하여 해머 어드레스 결정하는 경우에 메모리 시스템의 커맨드 프로토콜을 나타낸다.
도 21은 본 발명의 실시예들에 따라 해머 어드레스에 대하여 해머 리프레쉬 어드레스를 생성하는 것을 설명하기 위해 메모리 셀 어레이의 일부를 나타낸다.
도 22 및 도 23은 본 발명의 실시예들에 따른 도 13의 리프레쉬 제어 회로의 동작 예들을 나타내는 타이밍도들이다.
도 24은 본 발명의 실시예들에 따라 해머 리프레쉬 어드레스를 생성하는 것을 설명하기 위해 메모리 셀 어레이의 일부를 나타낸다.
도 25는 본 발명의 실시예들에 따른 반도체 메모리 장치의 동작 방법을 나타내는 흐름도이다.
도 26은 본 발명의 실시예들에 따른 반도체 메모리 장치를 보여주는 예시적인 블록도이다.
도 27은 본 발명의 실시예들에 따른 스택형 메모리 장치를 포함하는 반도체 패키지의 예를 나타내는 구조도이다.
도 28은 본 발명의 실시예들에 따른 모바일 시스템을 나타내는 블록도이다.
도 2는 본 발명의 실시예들에 따른 도 1의 메모리 시스템에서 메모리 컨트롤러의 구성을 나타내는 블록도이다.
도 3은 본 발명의 실시예들에 따른 도 1의 메모리 시스템에서 반도체 메모리 장치의 구성을 나타내는 블록도이다.
도 4는 본 발명의 실시예들에 따른 도 3의 반도체 메모리 장치에서 제1 뱅크 어레이를 나타낸다.
도 5는 본 발명의 실시예들에 따른 도 3의 반도체 메모리 장치에서 로우 해머 관리 회로의 예를 나타내는 블록도이다.
도 6은 본 발명의 실시예들에 따른 도 5의 로우 해머 관리 회로에 포함되는 어드레스 스토리지의 예를 나타내는 블록도이다.
도 7은 본 발명의 실시예들에 따른 액세스 비율에 따른 해머 리프레쉬를 설명하기 위한 도면이다.
도 8은 본 발명의 실시예들에 따른 도 5의 랜덤 비트 생성기의 예를 나타내는 회로도이다.
도 9는 본 발명의 실시예들에 따른 도 5의 로우 해머 관리 회로의 동작을 나타낸다.
도 10은 본 발명의 실시예들에 따른 도 3의 반도체 메모리 장치에서 로우 해머 관리 회로의 예를 나타내는 블록도이다.
도 11은 본 발명의 실시예들에 따른 도 5의 로우 해머 관리 회로의 동작을 나타낸다.
도 12는 본 발명의 실시예들에 따른 도 3의 반도체 메모리 장치에서 로우 해머 관리 회로의 예를 나타내는 블록도이다.
도 13은 본 본 발명의 실시예들에 따른 도 3의 반도체 메모리 장치에서 리프레쉬 제어 회로의 구성을 나타내는 블록도이다.
도 14는 본 발명의 실시예들에 따른 도 13의 리프레쉬 제어 회로에서 리프레쉬 클럭 생성기의 일 예를 나타낸다.
도 15는 본 발명의 실시예들에 따른 도 13의 리프레쉬 제어 회로에서 리프레쉬 클럭 생성기의 일 예를 나타낸다.
도 16은 본 발명의 실시예들에 따른 도 3의 반도체 메모리 장치에서 제1 뱅크 어레이를 나타낸다.
도 17은 본 발명의 실시예들에 따른 도 16의 제1 뱅크 어레이의 부분을 보다 상세히 나타낸다.
도 18 및 도 19는 본 발명의 실시예들에 따른 도 1의 메모리 시스템의 커맨드들을 나타낸다.
도 20은 본 발명의 실시예들에 따른 메모리 시스템이 프리차지 커맨드를 이용하여 해머 어드레스 결정하는 경우에 메모리 시스템의 커맨드 프로토콜을 나타낸다.
도 21은 본 발명의 실시예들에 따라 해머 어드레스에 대하여 해머 리프레쉬 어드레스를 생성하는 것을 설명하기 위해 메모리 셀 어레이의 일부를 나타낸다.
도 22 및 도 23은 본 발명의 실시예들에 따른 도 13의 리프레쉬 제어 회로의 동작 예들을 나타내는 타이밍도들이다.
도 24은 본 발명의 실시예들에 따라 해머 리프레쉬 어드레스를 생성하는 것을 설명하기 위해 메모리 셀 어레이의 일부를 나타낸다.
도 25는 본 발명의 실시예들에 따른 반도체 메모리 장치의 동작 방법을 나타내는 흐름도이다.
도 26은 본 발명의 실시예들에 따른 반도체 메모리 장치를 보여주는 예시적인 블록도이다.
도 27은 본 발명의 실시예들에 따른 스택형 메모리 장치를 포함하는 반도체 패키지의 예를 나타내는 구조도이다.
도 28은 본 발명의 실시예들에 따른 모바일 시스템을 나타내는 블록도이다.
이하, 첨부한 도면들을 참조하여, 본 발명의 바람직한 실시예를 보다 상세하게 설명하고자 한다. 도면상의 동일한 구성요소에 대해서는 동일한 참조부호를 사용하고 동일한 구성요소에 대해서 중복된 설명은 생략한다.
도 1은 본 발명의 실시예들에 따른 메모리 시스템을 나타내는 블록도이다.
도 1을 참조하면, 메모리 시스템(20)은 메모리 컨트롤러(30) 및 반도체 메모리 장치(200)를 포함할 수 있다.
메모리 컨트롤러(Memory Controller; 30)는 메모리 시스템(Memory System; 20)의 동작을 전반적으로 제어하며, 외부의 호스트와 반도체 메모리 장치(200) 사이의 전반적인 데이터 교환을 제어한다. 예컨대, 메모리 컨트롤러(30)는 호스트의 요청에 따라 반도체 메모리 장치(200)를 제어하여 데이터를 기입하거나 데이터를 독출한다.
또한, 메모리 컨트롤러(30)는 반도체 메모리 장치(200)를 제어하기 위한 동작 커맨드(command)들을 인가하여, 반도체 메모리 장치(200)의 동작을 제어한다. 실시예에 따라, 반도체 메모리 장치(200)는 휘발성 메모리 셀들을 구비하는 DRAM(dynamic random access), DDR5(double data rate 5) SDRAM(synchronous DRAM) 또는 DDR6 SDRAM일 수 있다.
메모리 컨트롤러(30)는 반도체 메모리 장치(200)에 클럭 신호(CK, 또는, 커맨드 클럭 신호)와 커맨드(CMD) 및 어드레스(ADDR)를 전송할 수 있다. 메모리 컨트롤러(30)는 반도체 메모리 장치(200)에 데이터 신호(DQ)를 기입하거나 반도체 메모리 장치(200)로부터 데이터 신호(DQ)를 독출할 때, 데이터 스트로브 신호(DQS)를 반도체 메모리 장치(200)와 교환할 수 있다. 어드레스(ADDR)는 커맨드(CMD)에 수반될 수 있고, 본 명세서에서 어드레스(ADDR)는 액세스 어드레스라 호칭될 수 있다.
메모리 컨트롤러(30)는 반도체 메모리 장치(200)의 메모리 셀 로우들 중 로우 해머와 관련된 리프레쉬 관리(refresh management, RFM) 커맨드를 생성하는 RFM 제어 로직(100)을 포함할 수 있다.
반도체 메모리 장치(200)는 데이터 신호(DQ)가 저장되는 메모리 셀 어레이(300), 제어 로직 회로(210) 및 로우 해머 관리 회로(500)를 포함할 수 있다.
제어 로직 회로(210)는 반도체 메모리 장치(200)의 동작을 제어할 수 있다. 메모리 셀 어레이(310)는 각각이 복수의 휘발성 메모리 셀들을 구비하는 복수의 메모리 셀 로우들을 포함할 수 있다.
로우 해머 관리 회로(RH management circuit, 500)는 기준 구간 동안에, 균일한 제1 선택 확률을 가지는, 메모리 컨트롤러(30)로부터의 액티브 커맨드들 중 랜덤하게 선택된 제1 액티브 커맨들에 수반되는 로우 어드레스들을 캡쳐하고, 상기 캡쳐된 로우 어드레스들 중 적어도 하나의 로우 어드레스를, 상기 기준 구간 동안에 상기 적어도 하나의 로우 어드레스에 대응되는 액티브 커맨드의 액세스 카운트에 비례하는 횟수만큼 해머 어드레스로 선택할 수 있다.
실시예에 있어서, 상기 기준 구간은 상기 복수의 메모리 셀 로우들을 리프레쉬하는 반도체 메모리 장치(200)의 리프레쉬 사이클 사이의 리프레쉬 인터벌(refresh interval)에 해당할 수 있다. 상기 제1 선택 확률은 상기 기준 구간 동안에 상기 복수의 메모리 셀 로우들에 대한 평균 액세스 횟수에 대한 상기 리프레쉬 주기 동안에 상기 복수의 메모리 셀 로우들에 대하여 수행될 수 있는 상기 해머 리프레쉬 동작의 횟수의 비에 해당할 수 있다.
예를 들어, 상기 기준 구간 동안에 상기 복수의 메모리 셀 로우들에 대한 평균 액세스 횟수가 K(K는 3이상의 자연수)이고, 상기 리프레쉬 주기 동안에 상기 복수의 메모리 셀 로우들에 대하여 수행될 수 있는 상기 해머 리프레쉬 동작의 횟수가 L(L은 K 보다 작은 2 이상의 자연수)인 경우에, 상기 제1 확률은 L/K에 해당할 수 있다.
반도체 메모리 장치(200)는 데이터를 저장하는 메모리 셀의 전하 누설(charge leakage) 때문에 주기적으로 리프레쉬를 해야 한다. 디램의 공정 미세화에 따라서 메모리 셀의 저장 커패시턴스가 작아지고 리프레쉬 주기가 짧아지고 있다. 또한 반도체 메모리 장치(200)의 전체 메모리 용량이 증가함에 따라서 반도체 메모리 장치(200) 전체를 리프레쉬하기 위해 소요되는 시간이 길어지므로 리프레쉬 주기가 더욱 짧아지고 있다.
특정 메모리 셀 로우에 대한 집중적인 액세스에 의한 인접 셀의 열화(degradation)을 보상하기 위해 종래에는 TRR(Target Row Refresh) 방식을 채용하였고, 그 이후 시스템의 부담(burden)을 줄이기 위해 인-메모리 리프레쉬(In-memory refresh) 방식이 개발되어 사용되고 있다. TRR 방식은 집중적으로 액세스되는 해머 어드레스에 관한 해머 리프레쉬 동작에 관한 부담을 전적으로 메모리 컨트롤러가 책임지는 것이고, 인-메모리 리프레쉬 방식은 상기 부담을 전적으로 반도체 메모리 장치가 책임지는 것이다.
장래에 반도체 메모리 장치가 더욱 고용량화, 저전력화가 되면서 인-메모리 리프레쉬를 위한 칩 사이즈 오버헤드(chip size overhead) 그리고 특정 메모리 셀 로우가 집중되지 않은 상황임에도 이를 고려(care)하기 위한 전력 소모 증가의 문제가 발생할 수 있다. 또한 비균일 공격 패턴에 의하여 메모리 셀들에서 로우 해머가 발생할 수 있다.
본 발명의 실시예들에 따른 반도체 메모리 장치(20)에서는 메모리 셀 로우들 각각에 대한 액세스 횟수(카운트)에 비례하도록 해머 어드레스를 생성하고, 상기 해머 어드레스에 기초하여 해머 어드레스에 상응하는 메모리 셀 로우에 물리적으로 인접한 빅팀(victim) 메모리 셀 로우들에 대하여 해머 리프레쉬 동작을 메모리 셀 로우들에 대한 액세스 횟수에 비례하도록 수행함으로써, 비균일 공격 패턴에 의한 로우 해머를 방지할 수 있다.
도 2는 본 발명의 실시예들에 따른 도 1의 메모리 시스템에서 메모리 컨트롤러의 구성을 나타내는 블록도이다.
도 2를 참조하면, 메모리 컨트롤러(30)는 버스(31)를 통하여 서로 연결되는 중앙 처리 장치(central processing unit, 이하 'CPU')(35), RFM 제어 로직(100), 리프레쉬 로직(40), 호스트 인터페이스(50), 스케쥴러(55) 및 메모리 인터페이스(60)를 포함할 수 있다.
CPU(35)는 메모리 컨트롤러(30)의 제반 동작을 제어한다. CPU(35)는 RFM 제어 로직(100), 리프레쉬 로직(40), 호스트 인터페이스(50), 스케쥴러(55) 및 메모리 인터페이스(60)를 제어할 수 있다.
리프레쉬 로직(40)은 복수의 메모리 셀 로우들을 순차적으로 리프레쉬하기 위한 오토 리프레쉬 커맨드를 리프레쉬 주기에 따라 생성할 수 있다.
호스트 인터페이스(50)는 호스트와 인터페이싱을 수행할 수 있다. 메모리 인터페이스(60)는 반도체 메모리 장치(200)와 인터페이싱을 수행할 수 있다.
스케쥴러(55)는 메모리 컨트롤러(30) 내에서 생성된 커맨드들의 시퀀스들의 스케쥴링 및 전송을 관리할 수 있다. 특히 스케쥴러(55)는 액티브 커맨드와 후속 커맨드를 메모리 인터페이스(60)를 통하여 반도체 메모리 장치(200)에 제공할 수 있다.
도 3은 본 발명의 실시예들에 따른 도 1의 메모리 시스템에서 반도체 메모리 장치의 구성을 나타내는 블록도이다.
도 3을 참조하면, 반도체 메모리 장치(200)는 제어 로직 회로(210), 어드레스 레지스터(220), 뱅크 제어 로직(230), 리프레시 제어 회로(400), 로우 어드레스 멀티플렉서(240), 칼럼 어드레스 래치(250), 로우 디코더(260), 칼럼 디코더(270), 메모리 셀 어레이(310), 센스 앰프부(285), 입출력 게이팅 회로(290), ECC 엔진(350), 클럭 버퍼(225), 스트로브 신호 생성기(235), 로우 해머 관리 회로(500) 및 데이터 입출력 버퍼(320)를 포함할 수 있다.
상기 메모리 셀 어레이(310)는 제1 내지 제16 뱅크 어레이들(310a~310s)을 포함할 수 있다. 또한, 상기 로우 디코더(260)는 제1 내지 제16 뱅크 어레이들(310a~310s)에 각각 연결된 제1 내지 제16 로우 디코더들(260a~260s)을 포함하고, 상기 칼럼 디코더(270)는 제1 내지 제16 뱅크 어레이들(310a~310s)에 각각 연결된 제1 내지 제16 칼럼 디코더들(270a~270s)을 포함하며, 상기 센스 앰프부(285)는 제1 내지 제16 뱅크 어레이들(310a~310s)에 각각 연결된 제1 내지 제16 센스 앰프들(285a~285s)을 포함할 수 있다.
제1 내지 제16 뱅크 어레이들(310a~310s), 제1 내지 제16 센스 앰프들(285a~285s), 제1 내지 제16 칼럼 디코더들(270a~270s) 및 제1 내지 제16 로우 디코더들(260a~260s)은 제1 내지 제16 뱅크들을 각각 구성할 수 있다. 제1 내지 제16 뱅크 어레이들(310a~310s) 각각은 복수의 워드라인(WL)들과 복수의 비트라인(BTL)들 및 워드라인(WL)들과 비트라인(BTL)들이 교차하는 지점에 형성되는 복수의 메모리 셀(MC)들을 포함할 수 있다.
어드레스 레지스터(220)는 메모리 컨트롤러(100)로부터 뱅크 어드레스(BANK_ADDR), 로우 어드레스(ROW_ADDR) 및 칼럼 어드레스(COL_ADDR)를 포함하는 어드레스(ADDR)를 수신할 수 있다. 어드레스 레지스터(220)는 수신된 뱅크 어드레스(BANK_ADDR)를 뱅크 제어 로직(230)에 제공하고, 수신된 로우 어드레스(ROW_ADDR)를 로우 어드레스 멀티플렉서(240)에 제공하며, 수신된 칼럼 어드레스(COL_ADDR)를 칼럼 어드레스 래치(250)에 제공할 수 있다. 또한, 어드레스 레지스터(220)는 뱅크 어드레스(BANK_ADDR) 및 로우 어드레스(ROW_ADDR)를 로우 해머 관리 회로(500)에 제공할 수 있다.
뱅크 제어 로직(230)은 뱅크 어드레스(BANK_ADDR)에 응답하여 뱅크 제어 신호들을 생성할 수 있다. 상기 뱅크 제어 신호들에 응답하여, 제1 내지 제16 로우 디코더들(260a~260s) 중 뱅크 어드레스(BANK_ADDR)에 상응하는 로우 디코더가 활성화되고, 제1 내지 제16 칼럼 디코더들(270a~270s) 중 뱅크 어드레스(BANK_ADDR)에 상응하는 칼럼 디코더가 활성화될 수 있다.
로우 어드레스 멀티플렉서(240)는 어드레스 레지스터(220)로부터 로우 어드레스(ROW_ADDR)를 수신하고, 리프레쉬 카운터(245)로부터 리프레쉬 로우 어드레스(REF_ADDR)를 수신할 수 있다. 로우 어드레스 멀티플렉서(240)는 로우 어드레스(ROW_ADDR) 또는 리프레쉬 로우 어드레스(REF_ADDR)를 로우 어드레스(SRA)로서 선택적으로 출력할 수 있다. 로우 어드레스 멀티플렉서(240)로부터 출력된 로우 어드레스(SRA)는 제1 내지 제16 로우 디코더들(260a~260s)에 각각 인가될 수 있다.
리프레쉬 제어 회로(400)는 제어 로직 회로(210)로부터의 리프레쉬 신호들(IREF1, IREF2)에 응답하여 노멀 리프레쉬 모드에서는 리프레쉬 로우 어드레스(REF_ADDR)를 순차적으로 증가시키거나 감소시킬 수 있다. 리프레쉬 제어 회로(400)는 해머 리프레쉬 모드에서는 해머 어드레스(HADDR)을 수신하고, 해머 어드레스(HADDR)에 해당하는 메모리 셀 로우에 물리적으로 인접하는 메모리 셀 로우들의 어드레스들인 해머 리프레쉬 로우 어드레스를 리프레쉬 로우 어드레스(REF_ADDR)로 출력할 수 있다.
제1 내지 제16 로우 디코더들(260a~260s) 중 뱅크 제어 로직(230)에 의해 활성화된 로우 디코더는 로우 어드레스 멀티플렉서(240)로부터 출력된 로우 어드레스(RA)를 디코딩하여 상기 로우 어드레스에 상응하는 워드라인을 활성화할 수 있다. 예를 들어, 상기 활성화된 로우 디코더는 로우 어드레스에 상응하는 워드라인에 워드라인 구동 전압을 인가할 수 있다.
칼럼 어드레스 래치(250)는 어드레스 레지스터(220)로부터 칼럼 어드레스(COL_ADDR)를 수신하고, 수신된 칼럼 어드레스(COL_ADDR)를 일시적으로 저장할 수 있다. 또한, 칼럼 어드레스 래치(250)는, 버스트 모드에서, 수신된 칼럼 어드레스(COL_ADDR)를 점진적으로 증가시킬 수 있다. 칼럼 어드레스 래치(250)는 일시적으로 저장된 또는 점진적으로 증가된 칼럼 어드레스(COL_ADDR')를 제1 내지 제16 칼럼 디코더들(270a~270s)에 각각 인가할 수 있다.
제1 내지 제16 칼럼 디코더들(270a~270s) 중 뱅크 제어 로직(230)에 의해 활성화된 칼럼 디코더는 상응하는 입출력 게이팅 회로(290)를 통하여 뱅크 어드레스(BANK_ADDR) 및 칼럼 어드레스(COL_ADDR)에 상응하는 센스 앰프를 활성화시킬 수 있다.
입출력 게이팅 회로(290)는 입출력 데이터를 게이팅하는 회로들과 함께, 입력 데이터 마스크 로직, 제1 내지 제16 뱅크 어레이들(310a~310s)로부터 출력된 코드워드를 저장하기 위한 독출 데이터 래치들, 및 제1 내지 제16 뱅크 어레이들(310a~310s)에 데이터를 기입하기 위한 기입 드라이버들을 포함할 수 있다.
제1 내지 제16 뱅크 어레이들(310a~310s) 중 하나의 뱅크 어레이에서 독출된 코드워드(CW)는 상기 하나의 뱅크 어레이에 상응하는 센스 앰프에 의해 감지되고, 상기 독출 데이터 래치들에 저장될 수 있다. 상기 독출 데이터 래치들에 저장된 코드워드(CW)는 ECC 엔진(350)에 의하여 ECC 디코딩이 수행되어 데이터(DTA)로서 데이터 입출력 버퍼(320)에 제공되고, 데이터 입출력 버퍼(320)는 데이터(DTA)를 기초하여 데이터 신호(DQ)로 변환하고 데이터 신호(DQ)를 스트로브 신호(DQS)와 함께 메모리 컨트롤러(100)로 제공할 수 있다.
제1 내지 제16 뱅크 어레이들(310a~310s) 중 하나의 뱅크 어레이에 기입될 데이터 신호(DQ)는 스트로브 신호(DQS)와 함께 데이터 입출력 버퍼(320)에 의하여 수신된다. 데이터 입출력 버퍼(320)는 데이터 신호(DQ)를 데이터 데이터(DTA)로 변환하여 ECC 엔진(390)에 제공하고, ECC 엔진(350)은 데이터(DTA)에 기초하여 패리티 비트들(또는 패리티 데이터)을 생성하고, 상기 데이터(DTA)와 상기 패리티 비트들을 포함하는 코드워드(CW)를 입출력 게이팅 회로(290)에 제공할 수 있다. 입출력 게이팅 회로(290)는 상기 기입 드라이버들을 통하여 상기 코드워드(CW)를 상기 하나의 뱅크 어레이의 타겟 페이지에 기입할 수 있다.
데이터 입출력 버퍼(320)는 기입 동작에서는 데이터 신호(DQ)를 데이터(DTA)로 변환하여 ECC 엔진(350)에 제공하고, 독출 동작에서는 ECC 엔진(350)으로부터 제공되는 데이터(DTA)를 데이터 신호(DQ)로 변환하고, 데이터 신호(DQ)와 스트로브 신호(DQS)를 메모리 컨트롤러(30)에 제공할 수 있다.
ECC 엔진(350)은 제어 로직 회로(210)로부터의 제2 제어 신호(CTL2)에 기초하여 데이터(DTA)에 대한 ECC 인코딩과 코드워드(CW)에 대한 ECC 디코딩을 수행할 수 있다.
클럭 버퍼(225)는 클럭 신호(CK)를 수신하고, 클럭 신호(CK)를 버퍼링하여 내부 클럭 신호(ICK)를 생성하고, 내부 클럭 신호(ICK)는 커맨드(CMD)와 어드레스(ADDR)를 처리하는 구성 요소들에 제공할 수 있다.
스트로브 신호 생성기(235)는 클럭 신호(CK)를 수신하고, 클럭 신호(CK)에 기초하여 스트로브 신호(DQS)를 생성하고, 스트로브 신호(DQS)를 데이터 입출력 버퍼(320)에 제공할 수 있다.
제어 로직 회로(210)는 반도체 메모리 장치(200)의 동작을 제어할 수 있다. 예를 들어, 제어 로직 회로(210)는 반도체 메모리 장치(200)가 기입 동작, 독출 동작, 노멀 리프레쉬 동작 및 해머 리프레쉬 동작을 수행하도록 제어 신호들을 생성할 수 있다. 제어 로직 회로(210)는 상기 메모리 컨트롤러(100)로부터 수신되는 커맨드(CMD)를 디코딩하는 커맨드 디코더(211) 및 반도체 메모리 장치(200)의 동작 모드를 설정하기 위한 모드 레지스터 세트(MRS, 212)를 포함할 수 있다.
예를 들어, 커맨드 디코더(211)는 칩 선택 신호 및 커맨드/어드레스 신호 등을 디코딩하여 커맨드(CMD)에 상응하는 상기 제어 신호들을 생성할 수 있다. 특히 제어 로직 회로(210)는 커맨드(CMD)를 디코딩하여 입출력 게이팅 회로(290)를 제어하는 제1 제어 신호(CTL1), ECC 엔진(350)을 제어하는 제2 제어 신호(CTL2), 리프레쉬 제어 회로(400)를 제어하는 제3 제어 신호(CTL3) 및 로우 해머 관리 회로(500)를 제어하는 제4 제어 신호(CTL4)를 생성할 수 있다.
로우 해머 관리 회로(500)는 커맨드(CMD) 및 어드레스(ADDR(뱅크 어드레스(BANK_ADDR) 및 로우 어드레스(ROW_ADDR)을 포함)를 수신하고, 커맨드(CMD)가 액티브 커맨드에 해당하는 경우, 액티브 커맨드들 중 랜덤하게 선택된 제1 액티브 커맨들에 수반되는 로우 어드레스들을 캡쳐하고, 상기 캡쳐된 로우 어드레스들 중 적어도 하나의 로우 어드레스를, 상기 기준 구간 동안에 상기 적어도 하나의 로우 어드레스에 대응되는 액티브 커맨드의 액세스 카운트에 비례하는 횟수만큼 해머 어드레스(HADDR)로 출력할 수 있다.
도 4는 본 발명의 실시예들에 따른 도 3의 반도체 메모리 장치에서 제1 뱅크 어레이를 나타낸다.
도 4를 참조하면, 제1 뱅크 어레이(310a)는 도 3을 참조하면, 제1 뱅크 어레이(310)는 복수개의 워드라인들(WL0~WLm-1, m은 2이상의 짝수인 정수), 복수개의 비트라인들(BL0~BLn-1, n은 2이상의 짝수인 정수), 그리고 워드라인들(WL0~WLm-1)과 비트라인들(BL0~BLn-1) 사이의 교차점에 배치되는 복수개의 메모리 셀들(MCs)을 포함한다.
각 메모리 셀(MC)은 DRAM 셀 구조를 갖는다. 또한, 짝수 워드라인(WL0) 각각과 홀수 워드라인(WL1)에 연결되는 메모리 셀들(MCs)의 배치가 서로 다름을 알 수 있다. 메모리 셀들(MCs) 각각은 워드라인들 워드라인들(WL0~WLm-1) 각각과 비트라인들(BL0~BLn-1) 각각에 연결되는 셀 트랜지스터 및 상기 셀 트랜지스터에 연결되는 셀 커패시터를 포함할 수 있다.
메모리 셀들(MCs)이 연결되는 제1 방향(D1)으로 연장된 워드라인들(WL0~WLm-1)을 제1 뱅크 어레이(310a)의 로우들(rows)이라고 정의하고, 메모리 셀들(MCs)이 연결되는 제2 방향(D2)으로 연장된 비트라인들(BL0~BLn-1)을 제1 뱅크 어레이(310a)의 칼럼들(columns)이라고 정할 수 있다.
도 5는 본 발명의 실시예들에 따른 도 3의 반도체 메모리 장치에서 로우 해머 관리 회로의 예를 나타내는 블록도이다.
도 5를 참조하면, 로우 해머 관리 회로(500a)는 어드레스 캡쳐기(510a), 어드레스 스토리지(520), 해머 어드레스 선택기(530), 비교기(540) 및 랜덤 비트 생성기(550) 및 제어 로직(590a)를 포함할 수 있다.
랜덤 비트 생성기(550)는 액티브 커맨드(ACT)들에 응답하여 랜덤하게 변화하며 복수의 비트들을 포함하는 랜덤 이진 코드(RBC)를 출력할 수 있다. 랜덤 비트 생성기(550)는 액티브 커맨드(ACT)가 인가될 때마다, 랜덤 이진 코드(RBC)를 출력할 수 있다. 랜덤 이진 코드(RBC)는 수도 랜덤 시퀀스(pseudo random sequence)일 수 있다. 랜덤 이진 코드(RBC)는 수도 랜덤 시퀀스인 경우, 액티브 커맨드(ACT)에 따라 랜덤 비트 생성기(550)로부터 출력되는 랜덤 이진 코드(RBC)는 주기적으로 반복될 수 있다.
비교기(540)는 랜덤 비트 생성기(550)로부터 출력된 랜덤 이진 코드(RBC)와 미리 저장된 기준 이진 코드(PBC)를 비교할 수 있다. 기준 이진 코드(PBC)는 랜덤 비트 생성기(550)로부터 출력 가능한 랜덤 이진 코드(RBC)의 값들 중 적어도 하나와 동일할 수 있다.
예를 들어, 기준 이진 코드(PBC)는 외부의 레지스터로부터 비교기(540)로 제공되거나, 비교기(540) 내부의 레지스터에 저장될 수 있다. 랜덤 이진 코드(RBC)의 비트들과 기준 이진 코드(PBC)의 비트들이 일치되는 경우(즉, 랜덤 이진 코드(RBC)와 기준 이진 코드(PBC)가 동일한 경우), 비교기(540)는 매칭 신호(MTC1)를 출력할 수 있다. 예를 들어, 랜덤 이진 코드(RBC)가 주기적으로 반복되는 경우, 랜덤 이진 코드(RBC)와 기준 이진 코드(PBC)에 대한 비교 결과가 주기적으로 반복되므로 비교기(540)는 랜덤 이진 코드(RBC)에 따라 주기적으로 반복되는 매칭 신호(MTC)를 출력할 수 있다.
예시적인 실시 예에서, 비교기(540)는 랜덤 이진 코드(RBC)를 복수의 기준 이진 코드(PBC)와 비교할 수 있다. 이 경우, 기준 이진 코드(PBC)의 개수에 따라 매칭 신호(MTC1)가 생성되는 빈도수가 달라질 수 있다. 예를 들어, 기준 이진 코드(PBC)의 개수가 증가되는 경우, 매칭 신호(MTC1)가 생성되는 빈도수가 증가될 수 있다.
어드레스 캡쳐기(510a)는 로우 어드레스(ROW_ADDR)를 수반하는 액티브 커맨드(ACT)들을 수신하고, 매칭 신호(MTC1)에 기초하여 액티브 커맨드(ACT)들 중 랜덤하게 선택된 제1 액티브 커맨드들에 수반되는 로우 어드레스들을 캡쳐된 로우 어드레스(CRA)들로서 출력할 수 있다. 액티브 커맨드(ACT)들은 확률 정보(PBI)에 의하여 균일한 제1 선택 확률로 선택될 수 있다.
어드레스 스토리지(520)는 캡쳐된 로우 어드레스(CRA)들을 순차적으로 저장할 수 있다.
해머 어드레스 선택기(530)는 어드레스 스토리지(520)에 저장된 캡쳐된 로우 어드레스(CRA)들 중에서 적어도 하나를 선택하여 해머 어드레스(HADDR)로 출력할 수 있다.
제어 로직(590a)은 어드레스 스토리지(520)와 해머 어드레스 선택기(530)를 제어할 수 있다. 제어 로직(590a)은 캡쳐된 로우 어드레스(CRA)들이 어드레스 스토리지(520)에 저장되는 것을 제어하고, 어드레스 스토리지(520)를 관리할 수 있다.
제어 로직(590a)은 선택 모드 신호(SMS1)를 해머 어드레스 선택기(530)에 제공하여 해머 어드레스 선택기(530)가 해머 어드레스(HADDR)를 선택하는 모드를 제어할 수 있다. 제어 로직(590a)은 또한 해머 어드레스 선택기(530)가 해머 어드레스(HADDR)을 출력할 때, 이를 나타내는 해머 어드레스 발생 신호(HAG)를 도 3의 리프레쉬 제어 회로(400)에 제공할 수 있다.
예를 들어, 선택 모드 신호(SMS1)가 제1 로직 레벨을 가지는 것에 응답하여 해머 어드레스 선택기(530)는 어드레스 스토리지(520)에 저장된 캡쳐된 로우 어드레스(CRA)들을 저장된 순서대로 해머 어드레스(HADDR)로 출력할 수 있다. 예를 들어, 선택 모드 신호(SMS1)가 제2 로직 레벨을 가지는 것에 응답하여 해머 어드레스 선택기(530)는 어드레스 스토리지(520)에 저장된 캡쳐된 로우 어드레스(CRA)들을 동일한 제2 확률로 랜덤하게 해머 어드레스(HADDR)로 출력할 수 있다.
해머 어드레스 선택기(530)는 내부에 랜덤 비트 생성기(535)를 포함할 수 있다. 랜덤 비트 생성기(535)는 제2 로직 레벨을 가지는 선택 모드 신호(SMS1)에 응답하여 랜덤 이진 코드(RBC1)을 어드레스 스토리지(520)에 제공할 수 있다. 어드레스 스토리지(520)는 랜덤 이진 코드(RBC1)에 응답하여 저장된 캡쳐된 로우 어드레스(CRA)들 중 하나를 해머 어드레스 선택기(530)에 제공할 수 있다.
즉, 도 5의 해머 어드레스 관리 회로(500a)는 액티브 커맨드(ACT)들에 응답하여 랜덤하게 변화하는 랜덤 이진 코드(RBC)와 기준 이준 코드(PBC)가 일치하는 것에 기초하여 선택된 제1 액티브 커맨드들에 수반되는 상기 로우 어드레스(ROW_ADDR)들 중 적어도 일부를 상기 해머 어드레스(HADDR)로 선택할 수 있다.
도 6은 본 발명의 실시예들에 따른 도 5의 로우 해머 관리 회로에 포함되는 어드레스 스토리지의 예를 나타내는 블록도이다.
도 6을 참조하면, 어드레스 스토리지(520)는 복수의 저장 블록들(SBK_A~SBK_S) (520a~520s, s는 3이상의 자연수)을 포함할 수 있고, 저장 블록들(520a~520s) 각각은 복수의 저장 유닛들(SU1~SUH, H은 4 이상의 자연수)을 포함할 수 있다. 저장 블록들(520a~520s)은 동일한 구성을 가질 수 있으며, 이하에서는 저장 블록(520a)에 대해서 설명한다.
저장 유닛들(SU1~SUH)은 메모리 셀 로우들의 액세스와 관련된 로우 어드레스들을 저장하는 어드레스 레지스터들(AREG1~AREGH)을 포함할 수 있다.
도 7은 본 발명의 실시예들에 따른 액세스 비율에 따른 해머 리프레쉬를 설명하기 위한 도면이다.
도 7을 참조하면, 상술한 기준 구간 동안에, 로우 어드레스(R0)에 대한 액세스 횟수가 10000번이고, 로우 어드레스(R1)에 대한 액세스 횟수가 6000이고, 로우 어드레스(R0)에 대한 액세스 횟수가 4000인 경우, 로우 어드레스들(R0, R1, R2)에 대한 액세스 횟수에 비례하여, 로우 어드레스들(R0, R1, R2)에 각각에 인접한 빅팀 메모리 셀 로우들에 대하여 해머 리프레쉬(FREF)가 각각 100회, 60회 및 40회가 수행된다.
도 8은 본 발명의 실시예들에 따른 도 5의 랜덤 비트 생성기의 예를 나타내는 회로도이다.
도 8을 참조하면, 랜덤 비트 생성기(550)는 레지스터 회로(551) 및 논리 연산 회로(553)를 포함할 수 있다. 예시적인 실시 예에서, 랜덤 비트 생성기(530)는 선형 피드백 쉬프트 레지스터(Linear Feedback Shift Register)로 구현될 수 있다. 즉, 레지스터 회로(551C) 및 논리 연산 회로(553)는 선형 피드백 쉬프트 레지스터를 구성할 수 있다.
선형 피드백 쉬프트 레지스터는 계수가 0 또는 1인 특성 다항식에 기초하여 피드백 비트를 결정할 수 있다. 피드백 비트는 선형 피드백 쉬프트 레지스터의 피드백 경로로 출력되고, 피드백 비트를 기반으로 논리 연산에 의해 생성된 비트가 선형 피드백 쉬프트 레지스터의 입력 단으로 입력될 수 있다. 선형 피드백 쉬프트 레지스터는 입력 단으로 입력된 비트를 기반으로 쉬프트 동작을 수행하여 수도 랜덤 시퀀스를 생성할 수 있다.
예를 들어, 도 8에 도시된 바와 같이, 랜덤 비트 생성기(550)가 x11+x9+x7+x2+1의 다항식을 기반으로 구현되는 경우, 레지스터 회로(551)는 제1 내지 제11 레지스터들(REG1~REG11)을 포함하고, 논리 연산 회로(553)는 제1 내지 제3 논리 회로들(XOR1~XOR3)을 포함할 수 있다.
예를 들어, 제1 내지 제11 레지스터들(REG1~REG11)에는 제1 내지 제11 비트들(b1~b11)이 각각 저장될 수 있다. 제1 내지 제11 비트들(b1~b11)의 비트 값들은 시프트 동작에 따라 달라질 수 있다. 예를 들어, 제1 내지 제3 논리 회로들(XOR1~XOR3) 각각은 배타적 논리합(XOR) 연산을 수행할 수 있다.
랜덤 비트 생성기(550)는 레지스터 회로(551)를 통해 랜덤 이진 코드(RBC)를 출력할 수 있다. 랜덤 비트 생성기(550)는 미리 정해진 개수의 비트들을 가지는 랜덤 이진 코드(RBC)를 출력할 수 있다. 예를 들어, 랜덤 비트 생성기(550)는 제1 내지 제5 레지스터들(REG1~REG5)에 저장된 제1 내지 제5 비트들(b1~b5)을 기반으로 5개의 비트들을 가지는 랜덤 이진 코드(RBC)를 출력할 수 있다.
논리 연산 회로(553)는 랜덤 비트 생성기(550)의 피드백 경로 상에 위치할 수 있다. 제1 논리 회로(XOR1)는 제2 레지스터(REG2)의 출력 단에 위치하고, 제2 논리 회로(XOR2)는 제7 레지스터(REG7)의 출력 단에 위치하고, 제3 논리 회로(XOR3)는 제9 레지스터(REG9) 및 제11 레지스터(REG11)의 공통 출력 단에 위치할 수 있다.
예를 들어, 도 8에 도시된 바와 같이, 제3 논리 회로(XOR3)는 제9 레지스터(REG9)의 제9 비트(b9) 및 제11 레지스터(REG11)의 제11 비트(b11)를 기반으로 논리 연산을 수행할 수 있다. 제2 논리 회로(XOR2)는 제7 레지스터(REG7)의 제7 비트(b7) 및 제3 논리 회로(XOR3)로부터 출력되는 비트를 기반으로 논리 연산을 수행할 수 있다. 제1 논리 회로(XOR1)는 제2 레지스터(REG2)의 제2 비트(b2) 및 제2 논리 회로(XOR2)로부터 출력되는 비트를 기반으로 논리 연산을 수행할 수 있다.
이 경우, 제1 논리 회로(XOR1)로부터 출력되는 비트는 제2 비트(b2), 제7 비트(b7), 제9 비트(b9), 및 제11 비트(b11) 값들에 따라 달라질 수 있다. 즉, 제2 비트(b2), 제7 비트(b7), 제9 비트(b9), 및 제11 비트(b11) 각각은 피드백 비트일 수 있다. 제1 논리 회로(XOR1)로부터 출력되는 비트는 제1 레지스터(REG1)의 입력 단으로 입력될 수 있다.
이에 따라, 제1 레지스터(REG1)는 피드백 경로를 통해 입력 단으로 입력된 비트를 제1 비트(b1)로서 저장할 수 있다. 피드백 경로를 통해 입력된 비트는 제어 신호에 기초하여 제1 내지 제11 레지스터들(REG1~REG11)을 통해 쉬프트될 수 있다.
도 9는 본 발명의 실시예들에 따른 도 5의 로우 해머 관리 회로의 동작을 나타낸다.
도 9에서는 설명의 편의를 위하여 노멀 리프레쉬 동작(NREF)들 사이의 기준 구간(RINT) 동안에, 로우 어드레스들(R0, R1, R3, R1, R0, R2)이 액세스되고, 기준 이진 코드(PBC)가 [01001]인 것으로 가정한다. 즉, 기준 구간(RINT)은 반도체 메모리 장치(200)의 리프레쉬 인터벌에 해당할 수 있다.
도 5 및 도 9를 참조하면, 랜덤 비트 생성기(550)가 5비트의 랜덤 이진 코드(RBC)를 생성하고, 어드레스 캡쳐기(510a)는 랜덤 이진 코드(RBC)가 [01001]인 경우에 활성화되는 매칭 신호(MTC1)에 응답하여 액티브 커맨드(CMD)에 수반되는 로우 어드레스(R3)를 캡쳐하여 어드레스 스토리지(520)에 저장한다. 어드레스 스토리지(520)에 저장된 캡쳐된 로우 어드레스(R3)에 인접한 빅팀 메모리 셀 로우들에 대하여는 노멀 리프레쉬 동작(NREF) 이후에 액세스되는 로우 어드레스들(R7, R5, R1, R2) 다음의 리프레쉬 타이밍에 해머 리프레쉬(FREF) 동작이 수행될 수 있다.
도 10은 본 발명의 실시예들에 따른 도 3의 반도체 메모리 장치에서 로우 해머 관리 회로의 예를 나타내는 블록도이다.
도 10을 참조하면, 로우 해머 관리 회로(500a)는 어드레스 캡쳐기(510a), 어드레스 스토리지(520), 해머 어드레스 선택기(530), 비교기(540a) 및 난수 생성기(550a), 액티브 카운터(545) 및 제어 로직(590a)를 포함할 수 있다.
어드레스 스토리지(520), 해머 어드레스 선택기(530) 및 제어 로직(590a) 각각의 동작은 도 5의 로우 해머 관리 회로(500a)의 대응되는 구성 요소들과 동일하므로 도 5와 중복되는 설명은 생략한다.
난수 발생기(550a)는 액티브 커맨드(ACT)들에 응답하여 랜덤하게 변화하며 난수(RN)를 출력할 수 있다. 난수 발생기(550a)는 액티브 커맨드(ACT)가 인가될 때마다, 난수(RN)를 출력할 수 있다.
액티브 카운터(545)는 액티브 커맨드(ACT)들을 카운팅하여 상응하는 카운팅 값(CV)을 출력할 수 있다.
비교기(540a)는 난수 발생기(550a)로부터 출력된 난수(RN)와 액티브 카운터(545)로부터 출력되는 카운팅 값(CV)를 비교하고, 난수(RN)와 카운팅 값(CV)이 일치하는 경우, 매칭 신호(MTC2)를 출력할 수 있다.
어드레스 캡쳐기(510b)는 로우 어드레스(ROW_ADDR)를 수반하는 액티브 커맨드(ACT)들을 수신하고, 매칭 신호(MTC2)에 기초하여 액티브 커맨드(ACT)들 중 랜덤하게 선택된 제1 액티브 커맨드들에 수반되는 로우 어드레스들을 캡쳐된 로우 어드레스(CRA)들로서 출력할 수 있다. 액티브 커맨드(ACT)들은 확률 정보(PBI)에 의하여 균일한 제1 선택 확률로 선택될 수 있다.
따라서, 도 10의 해머 어드레스 관리 회로(500b)는 액티브 커맨드(ACT)들에 응답하여 랜덤하게 변화하는 난수(RN)와 액티브 커맨드(ACT)들의 카운팅에 기초한 카운팅 값(CV)이 일치하는 것에 기초하여 선택된 제1 액티브 커맨드들에 수반되는 상기 로우 어드레스(ROW_ADDR)들 중 적어도 일부를 대응되는 제1 액티브 커맨드들 각각의 액세스 카운트에 비례하는 횟수만큼 상기 해머 어드레스(HADDR)로 선택할 수 있다.
도 11은 본 발명의 실시예들에 따른 도 5의 로우 해머 관리 회로의 동작을 나타낸다.
도 11에서는 설명의 편의를 위하여 노멀 리프레쉬 동작(NREF)들 사이의 기준 구간(RINT) 동안에, 로우 어드레스들(R0, R1, R3, R1, R0, R2)이 액세스되고, 로우 어드레스들(R0, R1, R3, R1, R0, R2) 각각에 대한 액티브 커맨드의 카운팅 값(CV)이 각각 0, 1, 2, 3, 4, 5이고, 난수(RN)가 5인 경우를 가정한다.
도 10 및 도 11을 참조하면, 난수 발생기(550a)가 '5'에 해당하는 난수(RN)를 생성하고, 어드레스 캡쳐기(510a)는 로우 어드레스(R2)에 해당하는 액티브 커맨드의 카운팅 값(CV)이 5인 경우에 활성화되는 매칭 신호(MTC2)에 응답하여 액티브 커맨드(CMD)에 수반되는 로우 어드레스(R2)를 캡쳐하여 어드레스 스토리지(520)에 저장한다. 어드레스 스토리지(520)에 저장된 캡쳐된 로우 어드레스(R3)에 인접한 빅팀 메모리 셀 로우들에 대하여는 노멀 리프레쉬 동작(NREF) 이후에 액세스되는 로우 어드레스들(R7, R5, R1, R2) 다음의 리프레쉬 타이밍에 해머 리프레쉬(FREF) 동작이 수행될 수 있다. 로우 어드레스들(R7, R5)에 대한 액티브 커맨드의 카운팅 값(CV)은 각각 '6'과 '7'에 해당할 수 있다.
도 12는 본 발명의 실시예들에 따른 도 3의 반도체 메모리 장치에서 로우 해머 관리 회로의 예를 나타내는 블록도이다.
도 12를 참조하면, 로우 해머 관리 회로(500c)는 어드레스 캡쳐기(510a), 후보 어드레스 레지스터(560), 어드레스 선택기(570), 어드레스 스토리지(580), 해머 어드레스 선택기(530a), 비교기(540) 및 랜덤 비트 생성기(550) 및 제어 로직(590a)를 포함할 수 있다.
랜덤 비트 생성기(550)는 액티브 커맨드(ACT)들에 응답하여 랜덤하게 변화하며 복수의 비트들을 포함하는 랜덤 이진 코드(RBC)를 출력할 수 있다. 랜덤 비트 생성기(550)는 액티브 커맨드(ACT)가 인가될 때마다, 랜덤 이진 코드(RBC)를 출력할 수 있다. 랜덤 이진 코드(RBC)는 수도 랜덤 시퀀스(pseudo random sequence)일 수 있다. 랜덤 이진 코드(RBC)는 수도 랜덤 시퀀스인 경우, 액티브 커맨드(ACT)에 따라 랜덤 비트 생성기(550)로부터 출력되는 랜덤 이진 코드(RBC)는 주기적으로 반복될 수 있다.
비교기(540)는 랜덤 비트 생성기(550)로부터 출력된 랜덤 이진 코드(RBC)와 미리 저장된 기준 이진 코드(PBC)를 비교할 수 있다. 기준 이진 코드(PBC)는 랜덤 비트 생성기(550)로부터 출력 가능한 랜덤 이진 코드(RBC)의 값들 중 적어도 하나와 동일할 수 있다. 랜덤 이진 코드(RBC)의 비트들과 기준 이진 코드(PBC)의 비트들이 일치되는 경우(즉, 랜덤 이진 코드(RBC)와 기준 이진 코드(PBC)가 동일한 경우), 비교기(540)는 매칭 신호(MTC1)를 출력할 수 있다.
어드레스 캡쳐기(510a)는 로우 어드레스(ROW_ADDR)를 수반하는 액티브 커맨드(ACT)들을 수신하고, 매칭 신호(MTC1)에 기초하여 액티브 커맨드(ACT)들 중 랜덤하게 선택된 N(N은 2 이상의 개의 제1 액티브 커맨드들에 수반되는 N 개의 로우 어드레스들을 캡쳐된 로우 어드레스(CRA)들로서 출력할 수 있다.
후보 어드레스 레지스터(560)는 캡쳐된 로우 어드레스(CRA)을 순차적으로 제1 후보 어드레스들(CDRA1)로 저장할 수 있다.
어드레스 선택기(560)는 후보 어드레스 레지스터(560)가 풀(full)인 경우, 제1 후보 어드레스들(CDRA1)의 일부를 일정한 제3 확률로 선택하여 제2 후보 어드레스들(CDRA2)를 출력할 수 있다.
어드레스 스토리지(580)는 제2 후보 어드레스들(CDRA2)을 순차적으로 저장할 수 있다.
해머 어드레스 선택기(580)는 어드레스 스토리지(520)에 저장된 제2 후보 어드레스들(CDRA2) 중에서 적어도 하나를 선택하여 해머 어드레스(HDAAR)로서 출력할 수 있다.
제어 로직(590b)은 후보 어드레스 레지스터(560), 어드레스 스토리지(580) 및 해머 어드레스 선택기(530a)를 제어할 수 있다.
제어 로직(590b)은 후보 어드레스 레지스터(560)와 어드레스 스토리지(580)가 비어있는지 풀(full)인지 여부를 판단하고, 후보 어드레스 레지스터(560)와 어드레스 스토리지(580)의 저장 동작을 제어할 수 있다.
제어 로직(590b)은 선택 모드 신호(SMS2)를 해머 어드레스 선택기(530a)에 제공하여 해머 어드레스 선택기(530a)가 해머 어드레스(HADDR)를 선택하는 모드를 제어할 수 있다. 제어 로직(590b)은 또한 해머 어드레스 선택기(530)가 해머 어드레스(HADDR)을 출력할 때, 이를 나타내는 해머 어드레스 발생 신호(HAG)를 도 3의 리프레쉬 제어 회로(400)에 제공할 수 있다.
예를 들어, 선택 모드 신호(SMS2)가 제1 로직 레벨을 가지는 것에 응답하여 해머 어드레스 선택기(530a)는 어드레스 스토리지(580)에 저장된 제2 후보 어드레스들(CDRA2)을 저장된 순서대로 해머 어드레스(HADDR)로 출력할 수 있다. 예를 들어, 선택 모드 신호(SMS2)가 제2 로직 레벨을 가지는 것에 응답하여 어 해머 어드레스 선택기(530a)는 드레스 스토리지(580)에 저장된 제2 후보 어드레스들(CDRA2)을 동일한 제2 확률로 랜덤하게 해머 어드레스(HADDR)로 출력할 수 있다.
해머 어드레스 선택기(530a)는 내부에 랜덤 비트 생성기(535b)를 포함할 수 있다. 랜덤 비트 생성기(535b)는 제2 로직 레벨을 가지는 선택 모드 신호(SMS2)에 응답하여 랜덤 이진 코드(RBC2)을 어드레스 스토리지(580)에 제공할 수 있다. 어드레스 스토리지(580)는 랜덤 이진 코드(RBC2)에 응답하여 저장된 제2 어드레스들(CDRA2) 중 하나를 해머 어드레스 선택기(530a)에 제공할 수 있다.
해머 어드레스 선택기(530a)는 메모리 컨트롤러(30)부터의 리프레쉬 관리 커맨드에 응답하여 상기 해머 리프레쉬의 수행 시점에 상기 해머 어드레스 큐가 비어있는 것에 응답하여 후보 어드레스 레지스터(560)에 저장된 상기 제1 후보 로우 어드레스들(CDRA1) 중에서 적어도 하나를 선택하여 해머 어드레스(HADDR)로서 출력할 수 있다.
즉, 도 12의 로우 해머 관리 회로(500c)는 액티브 커맨드(ACT)들에 응답하여 랜덤하게 변화하는 랜덤 이진 코드(RBC)와 기준 이준 코드(PBC)가 일치하는 것에 기초하여 상기 액티브 커맨드들 중 N 개의 제1 액티브 커맨드들을 선택하고, 상기 제1 액티브 커맨드들에 수반되는 N 개의 로우 어드레스들을 제1 후보 로우 어드레스들(CDRA1)로 저장하고, 제1 후보 로우 어드레스들(CDRA1) 중 적어도 일부를 해머 어드레스(HADDR)로 선택할 수 있다.
도 13은 본 본 발명의 실시예들에 따른 도 3의 반도체 메모리 장치에서 리프레쉬 제어 회로의 구성을 나타내는 블록도이다.
도 13을 참조하면, 리프레쉬 제어 회로(400)는 리프레쉬 제어 로직(410), 리프레쉬 클럭 생성기(420), 리프레쉬 카운터(430) 및 해머 리프레쉬 어드레스 생성기(440)를 포함할 수 있다. 해머 리프레쉬 어드레스 생성기(440)는 해머 어드레스 스토리지(450) 및 맵퍼(460)를 포함할 수 있다.
리프레쉬 제어 로직(410)은 해머 리프레쉬 발생 신호(HAG)에 응답하여 모드 신호(MS)를 리프레쉬 클럭 생성기(420)에 제공할 수 있다. 리프레쉬 제어 로직(410)은 제1 리프레쉬 신호(IREF1)와 제2 리프레쉬 신호(IREF) 중 하나에 기초하여 해머 어드레스의 출력 타이밍을 제어하는 해머 리프레쉬 신호(HREF)를 해머 리프레쉬 어드레스 생성기(440)에 제공할 수 있다.
리프레쉬 클럭 생성기(420)는 제1 리프레쉬 제어 신호(IREF1), 제2 리프레쉬 제어 신호(IREF2) 및 모드 신호(MS)에 기초하여 노멀 리프레쉬 동작의 타이밍을 나타내는 리프레쉬 클럭 신호(RCK)를 생성할 수 있다. 리프레쉬 클럭 생성기(420)는 제1 리프레쉬 제어 신호(IREF1)가 인가될 때마다 또는 제2 리프레쉬 제어 신호(IREF2)가 활성화되는 동안에 리프레쉬 클럭 신호(RCK)를 생성할 수 있다. 제1 리프레쉬 제어 신호(IREF1) 및 제2 리프레쉬 제어 신호(IREF2)는 도 3의 제3 제어 신호(CTL3)에 포함될 수 있다.
도 3의 제어 로직 회로(210)는 메모리 컨트롤러(30)로부터의 커맨드(CMD)가 오토 리프레쉬 커맨드인 경우에, 오토 리프레쉬 커맨드가 인가될 때마다 제1 리프레쉬 제어 신호(IREF1)를 리프레쉬 제어 회로(400)에 인가할 수 있다. 제어 로직 회로(210)는 메모리 컨트롤러(100)로부터의 커맨드(CMD)가 셀프 리프레쉬 진입 커맨드인 경우에, 셀프 리프레쉬 진입 커맨드의 수신 후 셀프 리프레쉬 탈출 커맨드가 인가될 때까지 활성화되는 제2 리프레쉬 제어 신호(IREF2)를 리프레쉬 제어 회로(400)에 인가할 수 있다.
리프레쉬 카운터(420)는 리프레쉬 클럭 신호(RCK)의 주기마다 카운팅 동작을 수행하여 메모리 셀 로우들 각각을 지정하는 카운터 리프레쉬 어드레스(CREF_ADDR)를 생성하고, 카운터 리프레쉬 어드레스(CREF_ADDR)를 리프레쉬 로우 어드레스(REF_ADDR)로서 도 3의 로우 어드레스 멀티플렉서(240)에 제공할 수 있다.
해머 리프레쉬 어드레스 생성기(440)는 해머 어드레스 스토리지(450) 및 맵퍼(460)를 포함할 수 있다.
해머 어드레스 스토리지(450)는 해머 어드레스(HADDR)을 저장하고, 해머 리프레쉬 신호(HREF)에 기초하여 저장된 해머 어드레스(HADDR)를 맵퍼(460)에 출력할 수 있다. 맵퍼(460)는 해머 어드레스(HADDR)에 상응하는 메모리 셀 로우에 물리적으로 인접한 빅팀 메모리 셀 로우들의 어드레스들을 나타내는 해머 리프레쉬 어드레스들(HREF_ADDR)을 생성할 수 있다.
예를 들어, 맵퍼(460)는 해머 어드레스(HADDR)에 상응하는 메모리 셀 로우에 물리적으로 인접한 적어도 빅팀 메모리 셀 로우들의 어드레스들을 나타내는 해머 리프레쉬 어드레스들(HREF_ADDR)을 생성할 수 있다.
해머 리프레쉬 어드레스 생성기(440)는 해머 리프레쉬 어드레스들(HREF_ADDR)을 리프레쉬 로우 어드레스(REF_ADDR)로서 도 3의 로우 어드레스 멀티플렉서(240)에 제공할 수 있다.
도 14는 본 발명의 실시예들에 따른 도 13의 리프레쉬 제어 회로에서 리프레쉬 클럭 생성기의 일 예를 나타낸다.
도 14를 참조하면, 리프레쉬 클럭 생성기(420a)는 복수의 발진기들(421, 422, 423), 멀티플렉서(424) 및 디코더(425a)를 포함할 수 있다.
디코더(425a)는 제1 리프레쉬 제어 신호(IREF1), 제2 리프레쉬 제어 신호(IREF2) 및 모드 신호(MS)를 디코딩하여 클럭 제어 신호(RCS1)를 출력할 수 있다. 복수의 발진기들(421, 422, 423)은 서로 다른 주기를 가지는 리프레쉬 클럭 신호들(RCK1, RCK2, RCK3)을 발생한다. 멀티플렉서(424)는 클럭 제어 신호(RCS1)에 응답하여 복수의 리프레쉬 클럭 신호들(RCK1, RCK2, RCK3) 중에서 어느 하나를 선택하여, 리프레쉬 클럭 신호(RCK)로서 출력한다.
모드 신호(MS)는 해머 어드레스가 발생하였음을 나타낼 수 있으므로, 리프레쉬 클럭 생성기(420a)는 클럭 제어 신호(RCS1)에 응답하여 복수의 리프레쉬 클럭 신호들(RCK1, RCK2, RCK3) 중에서 어느 하나를 선택함으로써 리프레쉬 사이클을 조절할 수 있다.
도 15는 본 발명의 실시예들에 따른 도 13의 리프레쉬 제어 회로에서 리프레쉬 클럭 생성기의 일 예를 나타낸다.
도 15를 참조하면, 리프레쉬 클럭 생성기(420b)는 디코더(425b), 바이어스부(426) 및 발진기(427)를 포함할 수 있다.
디코더(425b)는 제1 리프레쉬 제어 신호(IREF1), 제2 리프레쉬 제어 신호(IREF2) 및 모드 신호(MS)를 디코딩하여 클럭 제어 신호(RCS2)를 출력할 수 있다. 바이어스부(426)는 클럭 제어 신호(RCS2)에 응답하여 제어 전압(VCON)을 발생할 수 있다. 발진기(427)는 제어 전압(VCON)에 따라, 그 주기가 가변되는 리프레쉬 클럭 신호(RCK)를 발생할 수 있다.
모드 신호(MS)는 해머 어드레스가가 발생하였음을 나타낼 수 있으므로, 리프레쉬 클럭 생성기(420b)는 클럭 제어 신호(RCS1)에 응답하여 리프레쉬 클럭 신호(RCK)의 주기를 가변하여 리프레쉬 사이클을 조절할 수 있다.
도 16은 본 발명의 실시예들에 따른 도 3의 반도체 메모리 장치에서 제1 뱅크 어레이를 나타낸다.
도 16을 참조하면, 제1 뱅크 어레이(310a)에는 제1 방향(D1)으로 I개, 제2 방향(D2)으로 J개의 서브 어레이 블록(SCB)들이 배치될 수 있다.
하나의 로우에서 제1 방향(D1)으로 배치되는 I개의 서브 어레이 블록(SCB)을 로우 블록이라 부를 수 있다. 서브 어레이 블록(SCB)들 각각에는 복수의 비트라인들과, 복수의 워드라인들과, 비트라인들과 워드라인들이 교차하는 지점에 위치하는 메모리 셀들이 배치될 수 있다.
제1 방향(D1)으로 상기 서브 어레이 블록(SCB)들 사이에 I+1개의 서브 워드라인 드라이버 영역(SWB)들이 배치될 수 있다. 서브 워드라인 드라이버 영역(SWB)에는, 서브 워드라인 드라이버들이 배치될 수 있다. 제2 방향(D2)으로 상기 서브 어레이 블록(SCB)들 사이에 J+1개의 비트라인 감지 증폭기 영역(BLSAB)들이 배치될 수 있다. 상기 비트라인 감지 증폭기 영역(BLSAB)에는 복수의 비트라인 감지 증폭기들이 배치될 수 있다.
서브 워드라인 드라이버 영역(SWB)들 각각에는 복수의 서브 워드라인 드라이버들이 배치된다. 하나의 서브 워드라인 드라이버 영역(SWB)은 제1 방향(D1)으로 두 개의 서브 어레이 블록(SCB)을 담당할 수 있다.
서브 워드라인 드라이버 영역(SWB)들과 비트라인 감지 증폭기 영역(BLSAB)들에 인접하여 복수의 컨졍션 영역(CONJ)들이 배치될 수 있다. 상기 컨졍션 영역(CONJ)들 각각에는 전압 생성기가 배치될 수 있다. 제1 뱅크 어레이(310)의 부분(390)은 도 17을 참조하여 상세히 설명한다.
도 17은 본 발명의 실시예들에 따른 도 16의 제1 뱅크 어레이의 부분을 보다 상세히 나타낸다.
도 16 및 도 17을 참조하면, 제1 뱅크 어레이(310)의 부분(390)에는 서브 어레이 블록(SCB), 비트라인 감지 증폭기 영역들(BLSA) 서브 워드라인 드라이버 영역들(SWB) 및 컨졍션(conjunction) 영역들(CONJ)이 배치될 수 있다.
서브 어레이 블록(SCB)은 행 방향(제1 방향(D1))으로 연장되는 복수의 워드라인들(WL1~WL4) 및 열 방향(제2 방향(D2))으로 연장되는 복수의 비트라인 쌍들(BTL1~BTL2, BTLB1~BTLB2)을 포함한다. 서브 어레이 블록(SCB)은 복수의 워드라인들(WL1~WL4)과 복수의 비트라인 쌍들(BTL1~BTL2, BTLB1~BTLB2)이 교차하는 지점에 배치되는 메모리 셀들(MC)을 포함한다.
서브 워드라인 드라이버 영역(SWB)들은 워드라인들(WL1~WL4)을 각각 구동하기 위한 서브 워드라인 드라이버들(651, 652, 653, 654)을 포함한다. 도 17에 도시된 바와 같이, 서브 워드라인 드라이버들(651, 652, 653, 654)은 교대로 서브 어레이 블록(SCB)의 좌측과 우측에 배치될 수 있다.
비트라인 감지 증폭기 영역(BLSAB)은 비트라인 쌍들(BTL1~BTL2, BTLB1~BTLB2)에 연결되는 비트라인 감지 증폭기들(660, 670) 및 로컬 감지 증폭기 회로들(680, 690)을 포함한다. 비트라인 감지 증폭기(660)는 비트라인 쌍(BTL1, BTLB1)에 감지되는 전압 레벨의 차이를 증폭하고, 증폭된 전압 레벨의 차이를 로컬입출력 라인 쌍(LIO1, LIOB1)에 제공할 수 있다.
로컬 감지 증폭기 회로(680)는 로컬입출력 라인 쌍(LIO1, LIOB1)과 글로벌 입출력 라인 쌍(GIO1, GIOB1) 사이의 연결을 제어하고, 로컬 감지 증폭기 회로(690)는 로컬 입출력 라인 쌍(LIO2, LIOB2)과 글로벌 입출력 라인 쌍(GIO2, GIOB2) 사이의 연결을 제어한다.
도 17에 도시된 바와 같이, 비트라인 감지 증폭기들(660, 670)은 교대로 서브 어레이 블록(SCB)의 위쪽과 아래쪽에 배치될 수 있다. 비트라인 감지 증폭기 영역(BLSAB)들, 서브 워드라인 드라이버 영역(SWB)들 및 서브 어레이 블록(SCB)에 인접하여 컨졍션 영역(CONJ)들이 배치된다. 컨졍션 영역(CONJ)들에는 전압 생성기들(610, 620, 630, 640)이 배치될 수 있다.
도 18 및 도 19는 본 발명의 실시예들에 따른 도 1의 메모리 시스템의 커맨드들을 나타낸다.
도 18에는 액티브 커맨드(ACT), 기입 커맨드(WR) 및 독출 커맨드(RD)를 나타내는 나타내는 칩 선택 신호(CS_n) 및 제1 내지 제14 커맨드/어드레스 신호들(CA0~CA13)의 조합이 도시되어 있고, 도 19에는 프라차지 커맨드들(PREab, PREsb, PPREpb)를 나타내는 칩 선택 신호(CS_n) 및 제1 내지 제14 커맨드/어드레스 신호들(CA0~CA13)의 조합이 도시되어 있다.
도 18 및 도 19에서, H는 논리 하이 레벨을 나타내고, L은 논리 로우 레벨을 나타내고, V는 논리 하이 레벨이나 논리 로우 레벨 중 하나인 유효한 논리 레벨을 나타내고, R0~R17은 로우 어드레스의 비트들을 나타내고, BA0 및 BA1은 뱅크 어드레스의 비트들을 나타내고, BG0~BA2는 뱅크 그룹 어드레스의 비트들을 나타내고, CID0~CID3는 도 1의 반도체 메모리 장치(200)가 적층형 메모리 장치로 구성되는 경우의 메모리 다이의 칩 식별자를 나타낸다. 또한 도 18에서 C2~C10은 컬럼 어드레스의 비트들을 나타내고, BL은 버스트 길이 플래그를 나타낸다.
도 18을 참조하면, 액티브 커맨드(ACT), 기입 커맨드(WR) 및 독출 커맨드(RD)는 칩 선택 신호(CS_n)의 하이 레벨과 로우 레벨에서 전송되는 두 개의 사이클 커맨드이고, 액티브 커맨드(ACT)는 뱅크 어드레스(BA0, BA1) 및 로우 어드레스(R0~R17)을 포함할 수 있다.
도 19에서 PREpb는 특정한 뱅크 그룹 내의 특정한 뱅크를 프리차지하라는 프리차지 커맨드이고, PREab는 모든 뱅크 그룹들의 모든 뱅크들을 프리차지하라는 올 뱅크(all bnak) 프리차지 커맨드이고, PREsb는 모든 뱅크 그룹들에서 동일한 뱅크를 프리차지하라는 동일 뱅크(same bank) 프라치지 커맨드이다.
도 19을 참조하면, PREab와 PREsb의 제9 커맨드/어드레스 신호(CA8) 또는 제10 커맨드/어드레스 신호(CA9)는 해머 어드레스를 결정하는 플래그로 이용될 수 있다.
도 20은 본 발명의 실시예들에 따른 메모리 시스템이 프리차지 커맨드를 이용하여 해머 어드레스 결정하는 경우에 메모리 시스템의 커맨드 프로토콜을 나타낸다.
도 1, 도 2, 도 19 및 도 20를 참조하면, 스케쥴러(55)는 클럭 신호(CK_t)의 에지에 동기하여 제1 액티브 커맨드(ACT1)를 반도체 메모리 장치(200)에 인가하고, 액티브 to 프리차지 시간에 해당하는 tRAS 후, 제1 액티브 커맨드(ACT1)에 수반되는 로우 어드레스가 지정하는 메모리 셀 로우가 해머 어드레스에 해당하는지 여부의 판단을 지시하는 프리차지 커맨드(PRE)를 반도체 메모리 장치(200)에 인가한다. 이 경우, 스케쥴러(55)는 프리차지 커맨드(PRE)의 제10 커맨드/어드레스 신호(CA5)를 로우 레벨로 설정할 수 있다.
프리차지 동작에 소요되는 시간(tRP) 이후에, 스케쥴러(55)는 다른 커맨드들의 개재없이 클럭 신호(CK_t)의 에지에 동기하여 직접 리프레쉬 관리 커맨드(DRFM)를 반도체 메모리 장치(200)에 인가한다. 반도체 메모리 장치(200)는 리프레쉬 사이클 구간(tRFC) 동안에 직접 리프레쉬 관리 커맨드(DRFM)에 응답하여 해머 어드레스에 해당하는 메모리 셀 로우에 인접한 빅팀 메모리 셀 로우들에 대하여 해머 리프레쉬 동작을 수행한다. 리프레쉬 사이클 구간(tRFC) 동안에는 반도체 메모리 장치(200)가 직접 리프레쉬 관리 커맨드(DRFM)를 수신한 시점부터 다른 커맨드의 발생이 금지된다.
도 21은 본 발명의 실시예들에 따라 해머 어드레스에 대하여 해머 리프레쉬 어드레스를 생성하는 것을 설명하기 위해 메모리 셀 어레이의 일부를 나타낸다.
도 21에는 메모리 셀 어레이 내에서 로우 방향(제1 방향, D1)으로 연장되고(extended) 컬럼 방향(제2 방향, D2)으로 인접하여 순차적으로 배열된(arranged) 3개의 워드라인들(WLt-1, WLt, WLt+1), 컬럼 방향(D2)으로 신장되고 로우 방향(D1)으로 인접하여 순차적으로 배열된 3개의 비트라인들(BTLg-1, BTLg, BTLg+1) 및 이들에 각각 결합된 메모리 셀들(MC)이 도시되어 있다.
예를 들어, 가운데 워드라인(WLt)이 집중적으로 액세스되는 해머 어드레스(HADDR)에 상응할 수 있다. 여기서 집중적으로 액세스된다는 것은 워드라인의 액티브 회수가 많거나 액티브 빈도가 높다는 것을 말한다. 해머 워드라인(WLt)이 액세스되어 액티브 및 프리차지되면, 즉 해머 워드라인(WLt)의 전압이 상승 및 하강하면, 인접 워드라인들(WLt-1, WLt+1) 사이에 발생하는 커플링 현상으로 인해 인접 워드라인들(WLt-1, WLt+1)의 전압이 함께 상승 및 하강하면서 인접 워드라인들(WLt-1, WLt+1)에 연결된 메모리 셀들(MC)에 충전된 셀 전하에 영향을 미친다. 해머 워드라인(WLs)이 빈번하게 액세스될수록 빅팀 워드라인들(WLt-1, WLt+1)에 연결된 메모리 셀들(MC)의 셀 전하가 소실되고 저장된 데이터가 손상될 가능성이 높아진다.
도 13의 해머 리프레쉬 어드레스 생성기(440)는 해머 어드레스(HADDR)에 상응하는 워드라인(WLt)과 물리적으로 인접하는 워드라인들(WLt-1, WLt+1)의 어드레스(HREF_ADDRa, HREF_ADDRb)를 나타내는 해머 리프레쉬 어드레스(HREF_ADDR)를 제공하고, 이러한 해머 리프레쉬 어드레스(HREF_ADDR)에 기초하여 인접 워드라인들(WLt-1, WLt+1)에 대한 해머 리프레쉬 동작을 추가적으로 수행함으로써 집중적인 액세스에 의한 메모리 셀들의 데이터 손상을 방지할 수 있다.
도 22 및 도 23은 본 발명의 실시예들에 따른 도 13의 리프레쉬 제어 회로의 동작 예들을 나타내는 타이밍도들이다.
도 22 및 도 23에서는 t1~t15 또는 t1~t10에서 펄스 형태로 활성화되는 리프레쉬 제어 신호(IREF)에 대하여 리프레쉬 클럭 신호(RCK), 해머 리프레쉬 신호(HERF), 카운터 리프레쉬 어드레스(CREF_ADDR) 및 해머 리프레쉬 어드레스(HREF_ADDR)의 발생에 관한 실시예들이 도시되어 있다. 리프레쉬 제어 신호(IREF)의 활성화 시점들(t1~t15) 사이의 간격은 규칙적일 수도 있고 불규칙적일 수도 있다.
도 13 및 도 22를 참조하면, 리프레쉬 제어 로직(410)은 리프레쉬 제어 신호(IREF)의 활성화 시점들(t1~t15) 중 일부(t1~t4, t6~t10, t12~t15)에 동기하여 리프레쉬 클럭 신호(RCK)를 활성화하고 리프레쉬 제어 신호(IREF)의 활성화 시점들(t1~t15) 중 나머지 일부(t5, t11)에 동기하여 해머 리프레쉬 어드레스(HERF_ADDR)를 활성화할 수 있다.
리프레쉬 카운터(430)는 리프레쉬 클럭 신호(RCK)의 활성화 시점들(t1~t4, t6~t10, t12~t15)에 동기하여 순차적으로 변화하는 어드레스(X+1~X+12)를 나타내는 카운터 리프레쉬 어드레스(CREF_ADDR)를 발생한다. 해머 리프레쉬 어드레스 생성기(440)는 해머 리프레쉬 신호(HREF)의 활성화 시점들(t5, t11)에 동기하여 전술한 해머 어드레스(HADDR)에 상응하는 메모리 셀 로우와 물리적으로 인접하는 빅팀 메모리 셀 로우들의 어드레스(Ha1, Ha2)를 나타내는 해머 리프레쉬 어드레스(HREF_ADDR)를 발생한다.
도 13 및 도 23을 참조하면, 리프레쉬 제어 로직(410)은 리프레쉬 제어 신호(IREF)의 활성화 시점들(t1~t10) 중 일부(t1~t4, t7~t10)에 동기하여 리프레쉬 클럭 신호(RCK)를 활성화하고 리프레쉬 제어 신호(IREF)의 활성화 시점들(t1~t10) 중 나머지 일부(t5, t6)에 동기하여 해머 리프레쉬 어드레스(HERF_ADDR)를 활성화할 수 있다.
리프레쉬 카운터(430)는 리프레쉬 클럭 신호(RCK)의 활성화 시점들(t1~t4, t7~t10)에 동기하여 순차적으로 변화하는 어드레스(X+1~X+7)를 나타내는 카운터 리프레쉬 어드레스(CREF_ADDR)를 발생한다. 해머 리프레쉬 어드레스 생성기(440)는 해머 리프레쉬 신호(HREF)의 활성화 시점들(t5, t6)에 동기하여 전술한 해머 어드레스(HADDR)에 상응하는 메모리 셀 로우와 물리적으로 인접하는 빅팀 메모리 셀 로우들의 어드레스(Ha1, Ha2)를 나타내는 해머 리프레쉬 어드레스(HREF_ADDR)를 발생한다.
도 24은 본 발명의 실시예들에 따라 해머 리프레쉬 어드레스를 생성하는 것을 설명하기 위해 메모리 셀 어레이의 일부를 나타낸다.
도 24에는 메모리 셀 어레이 내에서 로우 방향(D1)으로 신장되고 컬럼 방향(D2)으로 인접하여 순차적으로 배열된 5개의 워드라인들(WLt-2, WLt-1, WLt, WLt+1, WLt+2), 컬럼 방향(D2)으로 신장되고 로우 방향(D1)으로 인접하여 순차적으로 배열된 3개의 비트라인들(BLg-1, BLg, BLg+1) 및 이들에 각각 결합된 메모리 셀들(MC)이 도시되어 있다.
도 13의 해머 리프레쉬 어드레스 생성기(440)는 해머 어드레스(HADDR)에 상응하는 워드라인(WLt)과 물리적으로 인접하는 워드라인들(WLt-1, WLt+1, WLt-2, WLt+2)의 어드레스(HREF_ADDRa, HREF_ADDRb, REF_ADDRc, HREF_ADDRd)를 나타내는 해머 리프레쉬 어드레스(HREF_ADDR)를 제공하고, 이러한 해머 리프레쉬 어드레스(HREF_ADDR)에 기초하여 인접 워드라인들(WLt-1, WLt+1, WLt-2, WLt+2)에 대한 해머 리프레쉬 동작을 추가적으로 수행함으로써 집중적인 액세스에 의한 메모리 셀들의 데이터 손상을 방지할 수 있다.
도 25는 본 발명의 실시예들에 따른 반도체 메모리 장치의 동작 방법을 나타내는 흐름도이다.
도 3 내지 도 25를 참조하면, 각각이 복수의 휘발성 메모리 셀들을 포함하는 복수의 메모리 셀 로우들을 구비하는 메모리 셀 어레이(310)를 구비하는 반도체 메모리 장치(200)의 동작 방법이 제공된다.
상기 방법에 의하면, 로우 해머 관리 회로(500)에서 기준 구간 동안에, 균일한 선택 확률을 가지는, 외부의 메모리 컨트롤러로부터의 액티브 커맨드들 중 랜덤하게 선택된 제1 액티브 커맨들에 수반되는 로우 어드레스들을 캡쳐한다(S100).
로우 해머 관리 회로(500)에서 상기 캡쳐된 로우 어드레스들을 중 적어도 하나의 로우 어드레스를, 상기 기준 구간 동안에 상기 적어도 하나의 로우 어드레스에 대응되는 액티브 커맨드의 액세스 카운트에 비례하는 횟수만큼 해머 어드레스(HADDR)로 선택한다(S200).
리프레쉬 관리 회로(400)에서 해머 어드레스(HADDR)에 상응하는 메모리 셀 로우에 물리적으로 인접한 빅팀(victim) 메모리 셀 로우들에 대하여 해머 리프레쉬 동작을 수행한다(S300).
따라서, 본 발명의 실시예들에 따른 반도체 메모리 장치 및 반도체 메모리 장치의 동작 방법에 의하면, 기준 구간 동안에 동일한 선택 확률을 가지는 액티브 커맨드들 중 랜덤하게 선택된 제1 액티브 커맨드들에 수반되는 로우 어드레스들에 기초하여 메모리 셀 로우들에 대한 액세스 카운트 비례하는 횟수만큼 해머 어드레스를 생성하고, 상기 해머 어드레스에 기초하여 해머 어드레스에 상응하는 메모리 셀 로우에 물리적으로 인접한 빅팀(victim) 메모리 셀 로우들에 대하여 해머 리프레쉬 동작을 메모리 셀 로우들에 대한 액세스 비율에 비례하도록 수행함으로써, Blacksmith와 같은 비균일 공격 패턴에 의한 로우 해머를 방지할 수 있다.
도 26은 본 발명의 실시예들에 따른 반도체 메모리 장치를 보여주는 예시적인 블록도이다.
도 26을 참조하면, 반도체 메모리 장치(800)는, 스택드 칩 구조에서 소프트 데이터 페일의 분석 및 구제 기능을 제공하기 위해 적어도 하나의 버퍼 다이(810) 및 복수의 메모리 다이들(820-1,820-2,...,820-p, p는 3 이상의 자연수)을 포함할 수 있다.
복수의 메모리 다이들(820-1,820-2,...,820-p)은 버퍼 다이(810) 사상부에 순차적으로 적층되고 복수의 쓰루 실리콘 비아(이하 TSV) 라인들을 통해 데이터를 통신할 수 있다.
상기 복수의 메모리 다이들(820-1,820-2,...,820-p) 각각은 데이터를 저장하는 셀 코어(821), 버퍼 다이(810)로 전송되는 전송 데이터를 이용하여 전송 패리티 비트들을 생성하는 셀 코어 ECC 엔진(823), 리프레쉬 제어 회로(RCC, 825) 및 로우 해머 관리 회로(RHMC, 827)을 포함할 수 있다. 셀 코어(821)는 DRAM 셀 구조를 가지는 복수의 메모리 셀들을 포함할 수 있다.
리프레쉬 제어 회로(825)는 도 13의 리프레쉬 제어 회로(400)를 채용할 수 있고, 로우 해머 관리 회로(827)는 도 5의 로우 해머 관리 회로(500a), 도 10의 로우 해머 관리 회로(500b) 및 도 12의 로우 해머 관리 회로(500c) 중 하나를 채용할 수 있다. 따라서, 로우 해머 관리 회로(827)는 기준 구간 동안에 동일한 선택 확률을 가지는 액티브 커맨드들 중 랜덤하게 선택된 제1 액티브 커맨드들에 수반되는 로우 어드레스들에 기초하여 메모리 셀 로우들에 대한 액세스 횟수에 비례하는 횟수만큼 해머 어드레스를 생성하고, 상기 해머 어드레스에 기초하여 해머 어드레스에 상응하는 메모리 셀 로우에 물리적으로 인접한 빅팀(victim) 메모리 셀 로우들에 대하여 해머 리프레쉬 동작을 메모리 셀 로우들에 대한 액세스 비율에 비례하도록 수행할 수 있다.
버퍼 다이(810)는 상기 복수의 TSV 라인들을 통해 수신되는 전송 데이터에 전송 에러가 발생된 경우에 전송 패리티 비트들을 이용하여 전송 에러를 정정함에 의해 에러 정정된 데이터를 생성하는 비아 ECC 엔진(812)을 포함할 수 있다.
버퍼 다이(810)는 데이터 입출력 버퍼(816)를 포함할 수 있다. 데이터 입출력 버퍼(816)는 비아 ECC ECC 엔진(812)으로부터 제공되는 데이터(DTA)를 샘플링하여 데이터 신호(DQ)를 생성하고 데이터 신호(DQ)를 외부로 출력할 수 있다.
반도체 메모리 장치(800)는 상기 TSV 라인들을 통해 상기 데이터 및 제어 신호들을 통신하는 스택 칩 타입 메모리 장치 혹은 스택드 메모리 장치일 수 있다. 상기 TSV 라인들은 실리콘 관통 전극들로도 칭해질 수 있다.
셀 코어 ECC 엔진(822)은 전송 데이터가 전송되기 이전에 메모리 다이(820-p)로부터 출력되는 데이터에 대한 에러 정정도 수행할 수 있다.
하나의 메모리 다이(820-p)에 형성되는 데이터 TSV 라인 그룹(832)은 TSV 라인들(L1~Lp)로 구성될 수 있고, 패리티 TSV 라인 그룹(834)은 TSV 라인들(L10~Lq)로 구성될 수 있다. 데이터 TSV 라인 그룹(832)의 TSV 라인들라인들(L1~Lp)과 패리티 TSV 라인 그룹(834)의 TSV 라인들(L10~Lq)은 복수의 메모리 다이들(820-1~820-p)의 사이에 대응적으로 형성된 마이크로 범프(MCB)들에 연결될 수 있다.
반도체 메모리 장치(800)는 데이터 버스(B10)를 통해 외부의 메모리 컨트롤러와 통신하기 위해 3D 칩 구조 또는 2.5D 칩 구조를 가질 수 있다. 상기 버퍼 다이(810)는 데이터 버스(B10)를 통해 외부의 메모리 컨트롤러에 연결될 수 있다.
본 발명의 실시예들에서는 도 30에서와 같이 메모리 다이에는 셀 코어 ECC 엔진을 설치하고, 버퍼 다이에는 비아 ECC 엔진을 설치함으로써 소프트 데이터 페일의 검출 및 정정을 검증할 수 있다. 소프트 데이터 페일은 쓰루 실리콘 비아 라인들을 통해 데이터가 전송될 시에 노이즈에 기인하여 발생된 전송 에러를 포함할 수 있다.
도 27은 본 발명의 실시예들에 따른 스택형 메모리 장치를 포함하는 반도체 패키지의 예를 나타내는 구조도이다.
도 27을 참조하면, 반도체 패키지(900)는 하나 이상의 스택형 메모리 장치(910)와 그래픽 프로세싱 유닛(graphic processing unit, GPU)(920)를 포함할 수 있다. 상기 스택형 메모리 장치(910)와 GPU(920)는 인터포저(Interposer, 930) 상에 장착되고, 스택형 메모리 장치(910)와 GPU(920)가 장착된 인터포저(930)는 패키지 기판(940) 상에 장착될 수 있다. 패키지 기판(940)은 솔더 볼(950) 상에 장착될 수 있다. GPU(920)는 메모리 컨트롤러 기능을 수행할 수 있는 반도체 장치에 해당할 수 있으며, 일 예로서 GPU(920)는 어플리케이션 프로세서로 구현될 수 있다. GPU(920)는 또한 상술한 스케쥴러를 구비하는 메모리 컨트롤러를 포함할 수 있다.
스택형 메모리 장치(910)는 다양한 형태로 구현이 가능하며, 일 실시예에 따라 스택형 메모리 장치(910)는 다수 개의 레이어들이 적층된 HBM(High Bandwidth Memory) 형태의 메모리 장치일 수 있다. 이에 따라, 스택형 메모리 장치(910)는 버퍼 다이 및 복수의 메모리 다이들을 포함하고, 복수의 메모리 다이들 각각은 상술한 리프레쉬 제어 회로와 로우 해머 관리 회로를 포함할 수 있다.
인터포저(930) 상에는 다수 개의 스택형 메모리 장치(910)들이 장착될 수 있으며, GPU (920)는 다수개의 스택형 메모리 장치(910)들과 통신할 수 있다. 일 예로서, 스택형 메모리 장치(910)들 각각과 GPU(920)는 물리(PHY) 영역을 포함할 수 있으며, 물리(PHY) 영역을 통해 스택형 메모리 장치(910)들과 GPU(920) 사이에서 통신이 수행될 수 있다.
한편, 스택형 메모리 장치(910)가 직접 액세스 영역을 포함하는 경우, 패키지 기판(940)의 하부에 장착되는 도전 수단(예컨대, 솔더볼(950)) 및 직접 액세스 영역을 통해 테스트 신호가 스택형 메모리 장치(910) 내부로 제공될 수 있다.
도 28은 본 발명의 실시예들에 따른 모바일 시스템을 나타내는 블록도이다.
도 28을 참조하면, 모바일 시스템(2000)은 카메라(2100), 디스플레이(2200), 오디오 처리부(2300), 입출력 장치(2400), 메모리 장치(2500), 스토리지 장치(2600), 안테나(2700), 및 어플리케이션 프로세서(Application Processor, 이하 "AP")(2800)를 포함할 수 있다.
모바일 시스템(2000)은 랩탑 컴퓨터, 휴대용 단말기, 스마트폰(smart phone), 태블릿 PC(tablet personal computer), 웨어러블 기기, 헬스케어 기기, 또는 IOT 기기로 구현될 수 있다. 또한, 모바일 시스템(2000)은 서버, 또는 개인용 컴퓨터(Personal Computer)로 구현될 수 있다.
카메라(2100)는 사용자의 제어에 따라 이미지 또는 동영상을 촬영할 수 있다. 카메라(2100)는 카메라 인터페이스(2870)를 통해 AP(2800)와 통신할 수 있다.
디스플레이(2200)는 LCD(Liquid Crystal Display), OLED(Organic Light Emitting Diodes) 디스플레이, AM-OLED(Active-Matrix Organic Light-Emitting Diode), PDP(Plasma Display Panel) 등과 같은 다양한 형태로 구현될 수 있다. 예시적인 실시 예에서, 디스플레이(2200)는 사용자의 터치를 통한 입력 신호를 수신하여 모바일 시스템(2000)의 입력 장치로 사용될 수 있다. 디스플레이(2200)는 디스플레이 인터페이스(2860)를 통해 AP(2800)와 통신할 수 있다.
오디오 처리부(2300)는 메모리 장치(2500) 또는 스토리지 장치(2600)로부터 전달된 컨텐츠에 포함된 오디오 데이터를 처리할 수 있다. 예를 들어, 오디오 처리부(2300)는 오디오 데이터에 대한 인코딩/디코딩, 노이즈 필터링 등과 같은 다양한 처리를 수행할 수 있다.
입출력 장치(2400)는 사용자로부터의 입력을 생성하는 장치, USB, 스토리지, 디지털 카메라, SD 카드, DVD, 네트워크 어댑터(Network adapter) 등과 같은 디지털 입력 및 출력 기능을 제공하는 기기들을 포함할 수 있다. 오디오 처리부(2300)와 입출력 장치(2400)는 주변장치 인터페이스(2850)를 통해 AP(2800)와 통신할 수 있다.
AP(2800)는 중앙처리장치(2810)를 통해서 모바일 시스템(2000)의 전반적인 동작을 제어할 수 있다. 예를 들어, AP(2800)는 스토리지 장치(2600)에 저장된 컨텐츠의 일부가 디스플레이(2200)에 표시되도록 디스플레이(2200)를 제어할 수 있다. 또한, AP(2800)는 입출력 장치(2400) 등을 통해 사용자 입력이 수신되면, 사용자 입력에 대응하는 제어 동작을 수행할 수 있다. 또한, AP(2800)는 버스(2890)를 포함할 수 있으며, 버스(2890)를 통해 중앙처리장치(2810), 메모리 인터페이스(2830), 스토리지 인터페이스(2840), 주변장치 인터페이스(2850), 디스플레이 인터페이스(2860), 카메라 인터페이스(2870) 등과 같은 다양한 구성 요소들을 서로 연결할 수 있다.
AP(2800)는 응용 프로그램, 운영 체제(Operating System, OS) 등을 구동하는 시스템 온 칩(System-on-Chip, 이하 "SoC")으로 구현될 수 있다. 또는 AP(2800) 및 다른 반도체 부품(예를 들어, 메모리 장치(2500), 스토리지 장치(2600))은 다양한 형태들의 패키징 기법을 기반으로 실장될 수 있다. 예를 들어, AP(2800) 및 다른 반도체 부품은 PoP(Package on Package), Ball grid arrays(BGAs), Chip scale packages(CSPs), System In Package(SIP), Multi Chip Package(MCP), Wafer-level Fabricated Package(WFP), Wafer-Level Processed Stack Package(WSP) 등과 같은 패키징 기법들을 이용하여 실장될 수 있다.
예시적인 실시 예에서, AP(2800)는 가속기(2820)를 더 포함할 수 있다. 가속기(2820)는 AP(2800)의 특정 기능을 수행하는 기능 블록일 수 있다. 예를 들어, 가속기(2820)는 그래픽 데이터를 처리하는 기능 블럭인 GPU(Graphics Processing Unit), AI 연산(예를 들어, 훈련(training) 및/또는 추론(Inference))을 수행하기 위한 기능 블럭인 NPU(Neural Processing Unit) 등을 포함할 수 있다.
예시적인 실시 예에서, AP(2800)는 모뎀(2880)을 포함하거나 AP(2800) 외부에 별도로 위치하는 모뎀 칩을 구비할 수 있다. 모뎀(2880)은 안테나(2700)를 통해서 무선 데이터를 송수신하고, 안테나(2700)로부터 전송되는 신호를 변조하거나 안테나(2700)로 수신되는 신호를 복조할 수 있다.
예시적인 실시 예에서, AP(2800)는 메모리 장치(2500)와의 통신을 위한 메모리 인터페이스(2830)를 포함할 수 있다. 메모리 인터페이스(2830)에 메모리 장치(2500)를 제어하기 위한 메모리 컨트롤러가 내장될 수 있다. 이에 따라, 메모리 장치(2500)는 AP(2800)와 직접 연결될 수 있다. 예를 들어, 메모리 인터페이스(2830)에 내장된 메모리 컨트롤러는 중앙처리장치(2810), 가속기(2820), 모뎀(2880) 등에서 발행되는 메모리 읽기/쓰기 명령을 메모리 장치(2500)를 제어하기 위한 커맨드로 변경하여 메모리 장치(2500)를 제어할 수 있다.
AP(2800)는 메모리 장치(2500)와 미리 정해진 인터페이스 규약을 기반으로 통신할 수 있다. 예를 들어, AP(2800)는 LPDDR4, LPDDR5 등의 JEDEC 표준 규격에 맞는 인터페이스를 기반으로 메모리 장치(2500)와 통신할 수 있다. 또한, AP(2800)는 HBM, HMC, Wide I/O와 같은 고대역폭 JEDEC 표준 규격에 맞는 인터페이스를 기반으로 메모리 장치(2500)와 통신할 수 있다.
예시적인 실시 예에서, 메모리 장치(2500)는 DRAM을 기반으로 구현될 수 있다. 그러나, 본 발명이 이에 한정되는 것은 아니며, 메모리 장치(2500)는 PRAM, SRAM, MRAM, RRAM, FRAM, 또는 Hybrid RAM을 기반으로 구현될 수 있다.
메모리 장치(2500)는 입출력 장치(2400)나 스토리지 장치(2600)보다 상대적으로 작은 레이턴시(latency)와 대역폭(bandwidth)을 가질 수 있다. 메모리 장치(2500)는 모바일 시스템(2000)의 파워 온 시점에 초기화되고, 운영 체제와 어플리케이션 데이터가 메모리 장치(2500)에 로딩될 수 있다. 이에 따라, 메모리 장치(2500)는 운영 체제와 어플리케이션 데이터의 임시 저장 장소로 사용되거나 각종 소프트웨어 코드의 실행 공간으로 사용될 수 있다.
예시적인 실시 예에서, 메모리 장치(2500)는 도 1 내지 10을 참조하여 설명한 메모리 장치(200)에 대응할 수 있다. 예를 들어, 메모리 장치(2500)는 AP(2800)의 메모리 컨트롤러로부터 수신된 커맨드(CMD) 및 어드레스(ADD)를 기초로 하여 기준 구간 동안의 액세스 횟수에 비례하도록 해머 리프레쉬를 선택하고, 상기 선택된 해머 리프레쉬에 대한 해머 리프레쉬 동작을 수행할 수 있다.
예시적인 실시 예에서, AP(2800)는 스토리지 장치(2600)와의 통신을 위한 스토리지 인터페이스(2840)를 포함할 수 있다. 이에 따라, 스토리지 장치(2600)는 AP(2800)와 직접 연결될 수 있다. 예를 들어, 스토리지 장치(2600)는 별도의 칩으로 구현될 수 있으며, AP(2800)와 스토리지 장치(2600)는 하나의 패키지(package)로 조립될 수 있다. 예를 들어, 스토리지 장치(2600)는 낸드 플래시 메모리를 기반으로 구현될 수 있으나, 본 발명이 이에 한정되는 것은 아니다.
본 발명은 복수의 휘발성 메모리 셀들을 포함하는 반도체 메모리 장치를 사용하는 다양한 시스템에 적용될 수 있다. 즉 본 발명은 스마트 폰, 내비게이션 시스템, 노트북 컴퓨터, 데스크 탑 컴퓨터, 게임 콘솔 등과 같은 반도체 메모리 장치를 동작 메모리로 사용하는 다양한 시스템에 적용될 수 있다.
상술한 바와 같이, 본 발명의 실시예들을 참조하여 설명하였지만, 해당 기술 분야에서 통상의 지식을 가진 자는 하기의 특허청구범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 것이다.
Claims (20)
- 각각이 복수의 휘발성 메모리 셀들을 구비하는 복수의 메모리 셀 로우들을 포함하는 메모리 셀 어레이;
기준 구간 동안에, 균일한 제1 선택 확률을 가지는, 외부의 메모리 컨트롤러로부터의 액티브 커맨드들 중 랜덤하게 선택된 제1 액티브 커맨들에 수반되는 로우 어드레스들을 캡쳐하고, 상기 캡쳐된 로우 어드레스들을 중 적어도 하나의 로우 어드레스를, 상기 기준 구간 동안에 상기 적어도 하나의 로우 어드레스에 대응되는 액티브 커맨드의 액세스 카운트에 비례하는 횟수만큼 해머 어드레스로 선택하는 로우 해머 관리 회로; 및
상기 해머 어드레스를 수신하고, 상기 해머 어드레스에 상응하는 메모리 셀 로우에 물리적으로 인접한 빅팀(victim) 메모리 셀 로우들에 대하여 해머 리프레쉬 동작을 수행하는 리프레쉬 제어 회로를 포함하는 반도체 메모리 장치. - 제1항에 있어서,
상기 기준 구간은 상기 복수의 메모리 셀 로우들을 리프레쉬하는 상기 반도체 메모리 장치의 리프레쉬 사이클 사이의 리프레쉬 인터벌에 해당하고,
상기 제1 선택 확률은 상기 기준 구간 동안에 상기 복수의 메모리 셀 로우들에 대한 평균 액세스 횟수에 대한 상기 반도체 메모리 장치의 리프레쉬 주기 동안에 상기 복수의 메모리 셀 로우들에 대하여 수행될 수 있는 상기 해머 리프레쉬 동작의 횟수의 비에 해당하는 반도체 메모리 장치. - 제1항에 있어서, 상기 로우 해머 관리 회로는
상기 액티브 커맨드들에 응답하여 랜덤하게 변화하는 랜덤 이진 코드와 기준 이준 코드가 일치하는 것에 기초하여 선택된 상기 제1 액티브 커맨드들에 수반되는 상기 로우 어드레스들 중 적어도 일부를 상기 해머 어드레스로 선택하는 것을 특징으로 하는 반도체 메모리 장치. - 제3항에 있어서, 상기 로우 해머 관리 회로는
상기 액티브 커맨드들에 응답하여 상기 랜덤 이진 코드를 출력하는 랜덤 비트 생성기;
상기 랜덤 이진 코드와 상기 기준 이진 코드를 비교하고 상기 비교의 결과에 기초하여 매칭 신호를 출력하는 비교기;
상기 매칭 신호에 기초하여 상기 랜덤하게 선택된 상기 제1 액티브 커맨들에 수반되는 로우 어드레스들을 상기 캡쳐된 로우 어드레스들로 출력하는 어드레스 캡쳐기;
상기 캡쳐된 로우 어드레스들을 순차적으로 저장하는 어드레스 스토리지;
상기 어드레스 스토리지에 저장된 상기 캡쳐된 로우 어드레스들 중에서 적어도 하나를 선택하여 상기 해머 어드레스로서 출력하는 해머 어드레스 선택기; 및
상기 어드레스 스토리지 및 상기 해머 어드레스 선택기를 제어하는 제어 로직을 포함하는 반도체 메모리 장치. - 제4항에 있어서,
상기 해머 어드레스 선택기는 상기 캡쳐된 로우 어드레스들을 저장된 순서대로 상기 해머 어드레스로서 출력하는 반도체 메모리 장치. - 제4항에 있어서,
상기 해머 어드레스 선택기는 상기 캡쳐된 로우 어드레스들을 동일한 제2 선택 확률로 랜덤하게 상기 해머 어드레스로서 출력하는 반도체 메모리 장치. - 제1항에 있어서, 상기 로우 해머 관리 회로는 상기 액티브 커맨드들에 응답하여 랜덤하게 변화하는 난수와 상기 액티브 커맨드들의 카운팅에 기초하여 카운팅 값이 일치하는 것에 기초하여 선택된 상기 제1 액티브 커맨드들에 수반되는 상기 로우 어드레스들 중 적어도 일부를 상기 해머 어드레스로 선택하는 것을 특징으로 하는 반도체 메모리 장치.
- 제7항에 있어서, 상기 로우 해머 관리 회로는
상기 액티브 커맨드들에 응답하여 상기 난수를 출력하는 난수 발생기;
상기 액티브 커맨드들을 카운팅하여 상기 카운팅 값을 출력하는 액티브 카운터;
상기 난수와 상기 카운팅 값을 비교하고, 상기 비교의 결과에 기초하여 매칭 신호를 출력하는 비교기;
상기 매칭 신호에 기초하여 상기 액티브 커맨드들 중 상기 제1 액티브 커맨들에 수반되는 로우 어드레스들을 상기 캡쳐된 로우 어드레스들로 출력하는 어드레스 캡쳐기;
상기 캡쳐된 로우 어드레스들을 순차적으로 저장하는 어드레스 스토리지;
상기 어드레스 스토리지에 저장된 상기 캡쳐된 로우 어드레스들 중에서 적어도 하나를 선택하여 상기 해머 어드레스로서 출력하는 해머 어드레스 선택기; 및
상기 어드레스 스토리지 및 상기 해머 어드레스 선택기를 제어하는 제어 로직을 포함하는 반도체 메모리 장치. - 제8항에 있어서,
상기 해머 어드레스 선택기는 상기 캡쳐된 로우 어드레스들을 저장된 순서대로 상기 해머 어드레스로서 출력하는 반도체 메모리 장치. - 제8항에 있어서,
상기 해머 어드레스 선택기는 상기 캡쳐된 로우 어드레스들을 동일한 제2 선택 확률로 랜덤하게 상기 해머 어드레스로서 출력하는 반도체 메모리 장치. - 제1항에 있어서, 상기 로우 해머 관리 회로는
상기 액티브 커맨드들에 응답하여 랜덤하게 변화하는 랜덤 이진 코드와 기준 이준 코드가 일치하는 것에 기초하여 상기 액티브 커맨드들 중 N(N은 2 이상의 자연수) 개의 제1 액티브 커맨드들을 선택하고, 상기 제1 액티브 커맨드들에 수반되는 N 개의 로우 어드레스들을 제1 후보 로우 어드레스들로 저장하고, 상기 제1 후보 로우 어드레스들 중 적어도 일부를 상기 해머 어드레스로 선택하는 것을 특징으로 하는 반도체 메모리 장치. - 제11항에 있어서, 상기 로우 해머 관리 회로는
상기 액티브 커맨드들에 응답하여 상기 랜덤 이진 코드를 출력하는 랜덤 비트 생성기;
상기 랜덤 이진 코드와 상기 기준 이진 코드를 비교하고 상기 비교의 결과에 기초하여 매칭 신호를 출력하는 비교기;
상기 매칭 신호에 기초하여 상기 액티브 커맨드들 중 상기 제1 액티브 커맨들에 수반되는 상기 N 개의 로우 어드레스들을 상기 캡쳐된 로우 어드레스들로 출력하는 어드레스 캡쳐기;
상기 캡쳐된 로우 어드레스들을 순차적으로 상기 제1 후보 로우 어드레스들로 저장하는 후보 어드레스 레지스터;
상기 후보 어드레스 레지스터가 풀(full)인 경우, 상기 제1 후보 로우 어드레스들 중 일부를 일정한 확률로 선택하여 제2 후보 로우 어드레스들을 출력하는 어드레스 선택기;
상기 제2 후보 로우 어드레스들을 저장하는 어드레스 스토리지;
상기 어드레스 스토리지 및 상기 후보 어드레스 레지스터에 연결되고, 상기 제2 로우 후보 어드레스들 중에서 적어도 하나를 선택하여 상기 해머 어드레스로서 출력하는 해머 어드레스 선택기; 및
상기 후보 어드레스 레지스터, 상기 어드레스 스토리지 및 상기 해머 어드레스 선택기를 제어하는 제어 로직을 포함하는 반도체 메모리 장치. - 제12항에 있어서,
상기 해머 어드레스 선택기는 상기 메모리 컨트롤러로부터의 리프레쉬 관리 커맨드에 응답하여 상기 해머 리프레쉬의 수행 시점에 상기 어드레스 스토리지가 비어있는 것에 응답하여 상기 후보 어드레스 레지스터에 저장된 상기 제1 후보 로우 어드레스들 중에서 적어도 하나를 선택하여 상기 해머 어드레스로서 출력하는 반도체 메모리 장치. - 제12항에 있어서,
상기 해머 어드레스 선택기는 상기 제2 후보 어드레스들을 저장된 순서대로 상기 해머 어드레스로서 출력하는 반도체 메모리 장치. - 제12항에 있어서,
상기 해머 어드레스 선택기는 상기 제2 후보 어드레스들을 동일한 제2 선택 확률로 랜덤하게 상기 해머 어드레스로서 출력하는 반도체 메모리 장치. - 제1항에 있어서, 상기 리프레쉬 제어 회로는
상기 로우 해머 관리 회로로부터의 해머 어드레스 발생 신호에 응답하여 해머 리프레쉬 신호를 생성하는 리프레쉬 제어 로직;
리프레쉬 신호에 응답하여 리프레쉬 클럭 신호를 생성하는 리프레쉬 클럭 생성기;
상기 리프레쉬 클럭 신호에 기초하여 상기 복수의 메모리 셀 로우들의 노멀 리프레쉬 동작과 관련된 카운터 리프레쉬 어드레스를 생성하는 리프레쉬 카운터;
상기 해머 어드레스를 저장하고, 상기 해머 리프레쉬 신호에 응답하여 상기 해머 어드레스를 출력하는 해머 어드레스 스토리지; 및
상기 해머 어드레스 스토리지로부터 출력되는 상기 해머 어드레스에 기초하여 상기 빅팀 메모리 셀 로우들의 어드레스들을 나타내는 해머 리프레쉬 어드레스들을 생성하는 맵퍼를 포함하는 반도체 메모리 장치. - 제1항에 있어서, 상기 반도체 메모리 장치는
적어도 하나의 버퍼 다이; 및
상기 적어도 하나의 버퍼 다이 상부에 적층되고 복수의 관통 라인들을 통해 데이터를 통신하는 복수의 메모리 다이들을 포함하며,
상기 복수의 메모리 다이들 중 적어도 하나는 상기 메모리 셀 어레이, 상기 로우 해머 관리 회로 및 상기 리프레쉬 제어 회로를 포함하는 반도체 메모리 장치. - 각각이 복수의 휘발성 메모리 셀들을 포함하는 복수의 메모리 셀 로우들을 구비하는 메모리 셀 어레이를 구비하는 반도체 메모리 장치의 동작 방법으로서,
기준 구간 동안에, 균일한 선택 확률을 가지는, 외부의 메모리 컨트롤러로부터의 액티브 커맨드들 중 랜덤하게 선택된 제1 액티브 커맨들에 수반되는 로우 어드레스들을 캡쳐하는 단계;
상기 캡쳐된 로우 어드레스들을 중 적어도 하나의 로우 어드레스를, 상기 기준 구간 동안에 상기 적어도 하나의 로우 어드레스에 대응되는 액티브 커맨드의 액세스 카운트에 비례하는 횟수만큼 해머 어드레스로 선택하는 단계; 및
상기 해머 어드레스에 상응하는 메모리 셀 로우에 물리적으로 인접한 빅팀(victim) 메모리 셀 로우들에 대하여 해머 리프레쉬 동작을 수행하는 단계를 포함하는 반도체 메모리 장치의 동작 방법. - 제18항에 있어서,
상기 기준 구간은 상기 복수의 메모리 셀 로우들을 리프레쉬하는 상기 반도체 메모리 장치의 리프레쉬 사이클 사이의 리프레쉬 인터벌에 해당하고,
상기 선택 확률은 상기 기준 동안에 상기 복수의 메모리 셀 로우들에 대한 평균 액세스 횟수와 상기 반도체 메모리 장치의 리프레쉬 주기 동안에 상기 복수의 메모리 셀 로우들에 대하여 수행될 수 있는 상기 해머 리프레쉬 동작의 횟수의 비에 해당하는 반도체 메모리 장치의 동작 방법. - 각각이 복수의 휘발성 메모리 셀들을 구비하는 복수의 메모리 셀 로우들을 포함하는 메모리 셀 어레이;
기준 구간 동안에, 균일한 제1 선택 확률을 가지는, 외부의 메모리 컨트롤러로부터의 액티브 커맨드들 중 랜덤하게 선택된 제1 액티브 커맨들에 수반되는 로우 어드레스들을 캡쳐하고, 상기 캡쳐된 로우 어드레스들을 중 적어도 하나의 로우 어드레스를, 상기 기준 구간 동안에 상기 적어도 하나의 로우 어드레스에 대응되는 액티브 커맨드의 액세스 카운트에 비례하는 횟수만큼 해머 어드레스로 선택하는 로우 해머 관리 회로; 및
상기 해머 어드레스를 수신하고, 상기 해머 어드레스에 상응하는 메모리 셀 로우에 물리적으로 인접한 빅팀(victim) 메모리 셀 로우들에 대하여 해머 리프레쉬 동작을 수행하는 리프레쉬 제어 회로를 포함하고,
상기 제1 선택 확률은 상기 기준 구간 동안에 상기 복수의 메모리 셀 로우들에 대한 평균 액세스 횟수에 대한 상기 반도체 메모리 장치의 리프레쉬 주기 동안에 상기 복수의 메모리 셀 로우들에 대하여 수행될 수 있는 상기 해머 리프레쉬 동작의 횟수의 비에 해당하고,
상기 로우 해머 관리 회로는 랜덤하게 변화하는 랜덤 이진 코드와 기준 이준 코드가 일치하는 것에 기초하여 선택된 상기 제1 액티브 커맨드들에 수반되는 상기 로우 어드레스들 중 적어도 일부를 상기 해머 어드레스로 선택하는 반도체 메모리 장치.
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US17/864,736 US20230141789A1 (en) | 2021-11-10 | 2022-07-14 | Semiconductor memory device and method of operating the same |
EP22184960.7A EP4181129A1 (en) | 2021-11-10 | 2022-07-14 | Semiconductor memory device and method of operating the same |
CN202211323041.5A CN116107921A (zh) | 2021-11-10 | 2022-10-27 | 半导体存储器装置及其操作方法 |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020210153972 | 2021-11-10 | ||
KR20210153972 | 2021-11-10 |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20230068232A true KR20230068232A (ko) | 2023-05-17 |
Family
ID=86547369
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020220000084A KR20230068232A (ko) | 2021-11-10 | 2022-01-03 | 반도체 메모리 장치 및 이의 동작 방법 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR20230068232A (ko) |
-
2022
- 2022-01-03 KR KR1020220000084A patent/KR20230068232A/ko unknown
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP4181129A1 (en) | Semiconductor memory device and method of operating the same | |
KR102699088B1 (ko) | 해머 리프레쉬 동작을 수행하는 메모리 시스템 | |
KR20140113191A (ko) | 반도체 메모리 장치 및 이의 리프레쉬 방법 | |
KR20220021097A (ko) | 반도체 메모리 장치 및 반도체 메모리 장치의 동작 방법 | |
US20220130841A1 (en) | Semiconductor device using different types of through-silicon-vias | |
EP4141872A1 (en) | Memory controller and memory system including the same | |
EP4123650A1 (en) | Semiconductor memory device and memory system including the same | |
US20220383932A1 (en) | Word line driver circuits for memory devices and methods of operating same | |
US12020739B2 (en) | Memory device for reducing row hammer disturbance, and a method of refreshing the same | |
CN114840451A (zh) | 存储装置、存储系统和操作存储装置的方法 | |
US11901025B2 (en) | Semiconductor memory device and method of operating semiconductor memory device | |
US12080332B2 (en) | Memory device, a memory system having the same and an operating method thereof in which a row address is not separated depending on pages in a byte mode operation | |
KR20230068232A (ko) | 반도체 메모리 장치 및 이의 동작 방법 | |
US20240144988A1 (en) | Memory device, memory system including memory device, and method of operating memory device | |
US11615829B1 (en) | Memory device performing refresh operation based on a random value and method of operating the same | |
KR20240057588A (ko) | 반도체 메모리 장치 및 이를 포함하는 메모리 시스템 | |
KR102458340B1 (ko) | 메모리 장치 | |
US20240071446A1 (en) | Apparatuses and methods for providing command having on-the-fly (otf) latency to memory | |
KR20230014032A (ko) | 반도체 메모리 장치 및 메모리 시스템 | |
EP4312216A1 (en) | Semiconductor memory device and memory system including the same | |
KR20230175081A (ko) | 반도체 메모리 장치 및 메모리 시스템 | |
KR20240014439A (ko) | 반도체 메모리 장치 및 이를 포함하는 메모리 시스템 | |
KR20230087339A (ko) | 반도체 메모리 장치 | |
CN117457047A (zh) | 半导体存储器装置和包括半导体存储器装置的存储器系统 | |
KR20230145889A (ko) | 반도체 메모리 장치 및 메모리 시스템 |