KR20230032052A - 메모리 컨트롤러 및 메모리 시스템 - Google Patents

메모리 컨트롤러 및 메모리 시스템 Download PDF

Info

Publication number
KR20230032052A
KR20230032052A KR1020210114407A KR20210114407A KR20230032052A KR 20230032052 A KR20230032052 A KR 20230032052A KR 1020210114407 A KR1020210114407 A KR 1020210114407A KR 20210114407 A KR20210114407 A KR 20210114407A KR 20230032052 A KR20230032052 A KR 20230032052A
Authority
KR
South Korea
Prior art keywords
address
hammer
command
row
memory device
Prior art date
Application number
KR1020210114407A
Other languages
English (en)
Inventor
조성용
김혜란
Original Assignee
삼성전자주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 삼성전자주식회사 filed Critical 삼성전자주식회사
Priority to KR1020210114407A priority Critical patent/KR20230032052A/ko
Priority to US17/692,447 priority patent/US20230067144A1/en
Priority to TW111111084A priority patent/TWI828094B/zh
Priority to EP22166491.5A priority patent/EP4141872A1/en
Priority to CN202210541085.9A priority patent/CN115731983A/zh
Publication of KR20230032052A publication Critical patent/KR20230032052A/ko

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/21Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
    • G11C11/34Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
    • G11C11/40Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
    • G11C11/401Digital 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/406Management or control of the refreshing or charge-regeneration cycles
    • G11C11/40611External triggering or timing of internal or partially internal refresh operations, e.g. auto-refresh or CAS-before-RAS triggered refresh
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/061Improving I/O performance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0659Command handling arrangements, e.g. command buffers, queues, command scheduling
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/21Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
    • G11C11/34Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
    • G11C11/40Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
    • G11C11/401Digital 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/406Management or control of the refreshing or charge-regeneration cycles
    • G11C11/40603Arbitration, priority and concurrent access to memory cells for read/write or refresh operations
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/21Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
    • G11C11/34Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
    • G11C11/40Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
    • G11C11/401Digital 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/406Management or control of the refreshing or charge-regeneration cycles
    • G11C11/40615Internal triggering or timing of refresh, e.g. hidden refresh, self refresh, pseudo-SRAMs
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/21Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
    • G11C11/34Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
    • G11C11/40Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
    • G11C11/401Digital 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/406Management or control of the refreshing or charge-regeneration cycles
    • G11C11/40622Partial refresh of memory arrays
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/21Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
    • G11C11/34Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
    • G11C11/40Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
    • G11C11/401Digital 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/4063Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing
    • G11C11/407Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing for memory cells of the field-effect type
    • G11C11/4078Safety or protection circuits, e.g. for preventing inadvertent or unauthorised reading or writing; Status cells; Test cells
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/21Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
    • G11C11/34Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
    • G11C11/40Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
    • G11C11/401Digital 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/4063Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing
    • G11C11/407Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing for memory cells of the field-effect type
    • G11C11/408Address circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/21Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
    • G11C11/34Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
    • G11C11/40Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
    • G11C11/401Digital 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/4063Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing
    • G11C11/407Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing for memory cells of the field-effect type
    • G11C11/408Address circuits
    • G11C11/4087Address decoders, e.g. bit - or word line decoders; Multiple line decoders
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/21Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
    • G11C11/34Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
    • G11C11/40Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
    • G11C11/401Digital 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/4063Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing
    • G11C11/407Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing for memory cells of the field-effect type
    • G11C11/409Read-write [R-W] circuits 
    • G11C11/4096Input/output [I/O] data management or control circuits, e.g. reading or writing circuits, I/O drivers or bit-line switches 
    • HELECTRICITY
    • H01ELECTRIC ELEMENTS
    • H01LSEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
    • H01L25/00Assemblies consisting of a plurality of individual semiconductor or other solid state devices ; Multistep manufacturing processes thereof
    • H01L25/03Assemblies consisting of a plurality of individual semiconductor or other solid state devices ; Multistep manufacturing processes thereof all the devices being of a type provided for in the same subgroup of groups H01L27/00 - H01L33/00, or in a single subclass of H10K, H10N, e.g. assemblies of rectifier diodes
    • H01L25/04Assemblies consisting of a plurality of individual semiconductor or other solid state devices ; Multistep manufacturing processes thereof all the devices being of a type provided for in the same subgroup of groups H01L27/00 - H01L33/00, or in a single subclass of H10K, H10N, e.g. assemblies of rectifier diodes the devices not having separate containers
    • H01L25/065Assemblies consisting of a plurality of individual semiconductor or other solid state devices ; Multistep manufacturing processes thereof all the devices being of a type provided for in the same subgroup of groups H01L27/00 - H01L33/00, or in a single subclass of H10K, H10N, e.g. assemblies of rectifier diodes the devices not having separate containers the devices being of a type provided for in group H01L27/00
    • H01L25/0657Stacked arrangements of devices

Landscapes

  • Engineering & Computer Science (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Computer Hardware Design (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • Computer Security & Cryptography (AREA)
  • Dram (AREA)
  • Read Only Memory (AREA)

Abstract

반도체 메모리 장치를 제어하는 메모리 컨트롤러는 로우 해머 관리 회로 및 스케쥴러를 포함한다. 상기 로우 해머 관리 회로는 상기 반도체 메모리 장치의 복수의 메모리 셀 로우들의 액세스와 관련된 액세스 어드레스들을 각각 카운팅하여 카운팅 값들을 내부에 저장하고, 상기 카운팅 값들에 기초하여 상기 메모리 셀 로우들 중 집중적으로 액세스되는 적어도 하나의 메모리 셀 로우와 관련되는 해머 어드레스 및 상기 해머 어드레스 관리의 긴급도와 관련된 상기 해머 어드레스의 타입을 결정한다. 상기 스케쥴러는 상기 해머 어드레스의 타입에 기초하여 서로 다른 커맨드 프로토콜을 통하여 상기 해머 어드레스를 상기 반도체 메모리 장치에 전송한다.

Description

메모리 컨트롤러 및 메모리 시스템{Memory controller and memory system including the same}
본 발명은 메모리 분야에 관한 것으로, 보다 상세하게는 해머 이벤트를 감지하는 메모리 컨트롤러 및 이를 포함하는 메모리 시스템에 관한 것이다.
반도체 메모리 장치는 크게 휘발성 메모리 장치(Volatile memory device)와 불휘발성 메모리 장치(Nonvolatile memory device)로 구분될 수 있다. 휘발성 메모리 장치는 전원 공급이 차단되면 저장하고 있던 데이터가 소멸되는 메모리 장치이다. 휘발성 메모리 장치 중 동적 랜덤 엑세스 메모리(DRAM; dynamic random access memory)는 모바일 시스템, 서버, 그래픽 장치 등 다양한 분야에서 사용되고 있다.
디램 등의 휘발성 메모리 장치에서는 누설 전류에 의해 메모리 셀에 저장된 셀 전하가 소실될 수 있다. 또한 워드라인이 액티브 상태와 프리차지 상태 사이에서 빈번하게 천이하는 경우에, 즉 워드라인 또는 행이 집중적으로 액세스되는 경우에 인접 워드라인에 연결된 메모리 셀들에 영향을 미쳐 셀 전하가 소실될 수 있다. 셀 전하가 소실되어 데이터가 완전히 손상되기 전에 다시 메모리 셀의 전하를 재충전해야 하고, 이러한 셀 전하의 재충전을 리프레쉬 동작이라고 한다. 이러한 리프레쉬 동작은 셀 전하가 소실되기 전에 반복적으로 수행되어야 한다.
본 발명의 일 목적은 집중적으로 액세스되는 메모리 셀 로우에 대한 해머 리프레쉬 동작을 효율적으로 수행하기 위하여 반도체 메모리 장치를 제어하는 메모리 컨트롤러를 제공하는 것이다.
본 발명의 일 목적은 해머 리프레쉬 동작을 효율적으로 수행하기 위한 메모리 시스템을 제공하는 것이다.
상기 일 목적을 달성하기 위한 본 발명의 실시예들에 따른 반도체 메모리 장치를 제어하는 메모리 컨트롤러는 로우 해머 관리 회로 및 스케쥴러를 포함한다. 상기 로우 해머 관리 회로는 상기 반도체 메모리 장치의 복수의 메모리 셀 로우들의 액세스와 관련된 액세스 어드레스들을 각각 카운팅하여 카운팅 값들을 내부에 저장하고, 상기 카운팅 값들에 기초하여 상기 메모리 셀 로우들 중 집중적으로 액세스되는 적어도 하나의 메모리 셀 로우와 관련되는 해머 어드레스 및 상기 해머 어드레스 관리의 긴급도와 관련된 상기 해머 어드레스의 타입을 결정한다. 상기 스케쥴러는 상기 해머 어드레스의 타입에 기초하여 서로 다른 커맨드 프로토콜을 통하여 상기 해머 어드레스를 상기 반도체 메모리 장치에 전송한다.
상기 일 목적을 달성하기 위한 본 발명의 실시예들에 따른 메모리 시스템은 반도체 메모리 장치 및 메모리 컨트롤러를 포함한다. 상기 반도체 메모리 장치는 각각이 복수의 휘발성 메모리 셀들을 구비하는 복수의 메모리 셀 로우들을 구비하는 메모리 셀 어레이를 포함한다. 상기 메모리 컨트롤러는 상기 복수의 메모리 셀 로우들의 액세스와 관련된 액세스 어드레스들을 각각 카운팅하고, 상기 카운팅에 기초하여 상기 복수의 메모리 셀 로우들 중 집중적으로 액세스되는 적어도 하나의 메모리 셀 로우와 관련되는 해머 어드레스 및 상기 해머 어드레스 관리의 긴급도와 관련된 상기 해머 어드레스의 타입을 결정하고, 상기 해머 어드레스의 타입에 기초하여 서로 다른 커맨드 프로토콜을 통하여 상기 해머 어드레스를 상기 반도체 메모리 장치에 전송한다.
상기 일 목적을 달성하기 위한 본 발명의 실시예들에 따른 메모리 시스템은 반도체 메모리 장치 및 메모리 컨트롤러를 포함한다. 상기 반도체 메모리 장치는 각각이 복수의 휘발성 메모리 셀들을 구비하는 복수의 메모리 셀 로우들을 구비하는 메모리 셀 어레이를 포함한다. 상기 메모리 컨트롤러는 상기 복수의 메모리 셀 로우들의 액세스와 관련된 액세스 어드레스들을 각각 카운팅하고, 상기 카운팅에 기초하여 상기 복수의 메모리 셀 로우들 중 집중적으로 액세스되는 적어도 하나의 메모리 셀 로우와 관련되는 해머 어드레스 및 상기 해머 어드레스 관리의 긴급도와 관련된 상기 해머 어드레스의 타입을 결정하고, 상기 해머 어드레스의 타입에 기초하여 서로 다른 커맨드 프로토콜을 통하여 상기 해머 어드레스를 상기 반도체 메모리 장치에 전송한다. 상기 메모리 컨트롤러는 상기 액세스 어드레스들을 각각 카운팅하여 카운팅 값들을 내부에 저장하고, 상기 카운팅 값들에 기초하여 상기 해머 어드레스 및 상기 해머 어드레스의 타입을 결정하는 로우 해머 관리 회로 및 상기 해머 어드레스의 타입에 기초하여 상기 서로 다른 커맨드 프로토콜을 통하여 상기 해머 어드레스를 상기 반도체 메모리 장치에 전송하는 스케쥴러를 포함한다. 상기 반도체 메모리 장치는 상기 해머 어드레스에 기초하여 상기 해머 어드레스에 상응하는 메모리 셀 로우에 물리적으로 인접한 빅팀 메모리 셀 로우들의 어드레스들을 나타내는 해머 리프레쉬 어드레스 신호를 생성하는 리프레쉬 제어 회로를 포함한다.
본 발명의 실시예들에 따른 메모리 컨트롤러 및 메모리 시스템에서는 해머 어드레스 처리의 긴급도에 따라 제2 타입의 해머 어드레스인 경우에는 추가적인 직접 리프레쉬 관리 커맨드를 반도체 메모리 장치 인가하여 빅팀 메모리 셀 로우들에 대한 해머 리프레쉬 동작을 즉시 수행하도록 하고, 제1 타입의 해머 어드레스인 경우에는 추가적인 직접 리프레쉬 관리 커맨드를 인가하지 않고 반도체 메모리 장치내부적으로 리프레쉬 타이밍에 빅팀 메모리 셀 로우들에 대한 해머 리프레쉬 동작을 수행하도록 한다. 따라서 메모리 시스템의 성능을 감소시키지 않고, 커맨드 스케쥴링의 제약 조건을 초래하지 않을 수 있다.
도 1은 본 발명의 실시예들에 따른 메모리 시스템을 나타내는 블록도이다.
도 2는 본 발명의 실시예들에 따른 도 1의 메모리 시스템에서 메모리 컨트롤러의 구성을 나타내는 블록도이다.
도 3은 본 발명의 실시예들에 따른 도 2의 메모리 컨트롤러에서 로우 해머 관리 회로의 구성을 나타내는 블록도이다.
도 4는 도 3의 로우 해머 관리 회로에 포함되는 액세스 스토리지의 예를 나타내는 블록도이다.
도 5는 본 발명의 실시예들에 따른 도 4의 액세스 스토리지 컨트롤러의 구성을 나타내는 블록도이다.
도 6은 본 발명의 실시예들에 따른 도 3의 로우 해머 관리 회로에 포함될 수 있는 탐색 회로를 나타내는 블록도이다.
도 7는 도 6의 탐색 회로에 포함되는 내용 주소화 메모리의 개략적인 구조를 나타낸다.
도 8은 본 발명의 실시예들에 따른 도 1의 메모리 시스템에서 반도체 메모리 장치의 구성을 나타내는 블록도이다.
도 9는 본 발명의 실시예들에 따른 도 8의 반도체 메모리 장치에서 제1 뱅크 어레이를 나타낸다.
도 10a는 본 발명의 실시예들에 따른 도 8의 반도체 메모리 장치에서 데이터 클럭 버퍼의 구성을 나타내는 블록도이다.
도 10b는 본 발명의 실시예들에 따른 도 8의 반도체 메모리 장치에서 데이터 클럭 신호가 클럭 교정 회로에 집적 입력되는 것을 나타낸다.
도 11은 본 발명의 실시예들에 따른 도 8의 반도체 메모리 장치에서 리프레쉬 제어 회로의 구성을 나타내는 블록도이다.
도 12는 본 발명의 실시예들에 따른 도 11의 리프레쉬 제어 회로에서 리프레쉬 클럭 생성기의 일 예를 나타낸다.
도 13은 본 발명의 실시예들에 따른 도 11의 리프레쉬 제어 회로에서 리프레쉬 클럭 생성기의 일 예를 나타낸다.
도 14 내지 도 17은 본 발명의 실시예들에 따른 도 1의 메모리 시스템의 커맨드들을 나타낸다.
도 18은 본 발명의 실시예들에 따른 해머 어드레스의 타입이 제1 타입인 경우에 메모리 컨트롤러의 제1 커맨드 프로토콜을 나타낸다.
도 19는 본 발명의 실시예들에 따른 해머 어드레스의 타입이 제2 타입인 경우에 메모리 컨트롤러의 제2 커맨드 프로토콜을 나타낸다.
도 20은 제1 타입의 해머 어드레스에 대하여 해머 리프레쉬 어드레스를 생성하는 것을 설명하기 위해 메모리 셀 어레이의 일부를 나타낸다.
도 21은 제2 타입의 해머 어드레스에 대하여 해머 리프레쉬 어드레스를 생성하는 것을 설명하기 위해 메모리 셀 어레이의 일부를 나타낸다.
도 22a, 도 22b 및 도 23은 본 발명의 실시예들에 따른 도 11의 리프레쉬 제어 회로의 동작 예들을 나타내는 타이밍도들이다.
도 24는 본 발명의 실시예들에 따른 도 1의 메모리 시스템에서 메모리 컨트롤러가 해머 어드레스를 처리하는 것을 나타내는 흐름도이다.
도 25는 본 발명의 실시예들에 따른 도 1의 메모리 시스템에서 메모리 컨트롤러가 해머 리프레쉬 동작을 수행하는 것을 나타내는 흐름도이다.
도 26은 본 발명의 실시예들에 따른 메모리 시스템의 동작 방법을 나타내는 흐름도이다.
도 27은 본 발명의 실시예들에 따른 반도체 메모리 장치를 보여주는 예시적인 블록도이다.
도 28은 본 발명의 실시예들에 따른 스택형 메모리 장치를 포함하는 반도체 패키지의 예를 나타내는 구조도이다.
이하, 첨부한 도면들을 참조하여, 본 발명의 바람직한 실시예를 보다 상세하게 설명하고자 한다. 도면상의 동일한 구성요소에 대해서는 동일한 참조부호를 사용하고 동일한 구성요소에 대해서 중복된 설명은 생략한다.
도 1은 본 발명의 실시예들에 따른 메모리 시스템을 나타내는 블록도이다.
도 1을 참조하면, 메모리 시스템(20)은 메모리 컨트롤러(30) 및 반도체 메모리 장치(200)를 포함할 수 있다.
메모리 컨트롤러(Memory Controller; 30)는 메모리 시스템(Memory System; 20)의 동작을 전반적으로 제어하며, 외부의 호스트와 반도체 메모리 장치(200) 사이의 전반적인 데이터 교환을 제어한다. 예컨대, 메모리 컨트롤러(100)는 호스트의 요청에 따라 반도체 메모리 장치(200)를 제어하여 데이터를 기입하거나 데이터를 독출한다.
또한, 메모리 컨트롤러(30)는 반도체 메모리 장치(200)를 제어하기 위한 동작 커맨드(command)들을 인가하여, 반도체 메모리 장치(200)의 동작을 제어한다. 실시예에 따라, 반도체 메모리 장치(200)는 휘발성 메모리 셀들을 구비하는 DRAM(dynamic random access), DDR5(double data rate 5) SDRAM(synchronous DRAM) 또는 LPDDR5(low power DDR5) SDRAM일 수 있다.
메모리 컨트롤러(30)는 반도체 메모리 장치(200)에 클럭 신호(CK, 또는, 커맨드 클럭 신호)와 커맨드(CMD) 및 어드레스(ADDR)를 전송할 수 있다. 메모리 컨트롤러(30)는 반도체 메모리 장치(200)에 데이터 신호(DQ)를 기입하거나 반도체 메모리 장치(200)로부터 데이터 신호(DQ)를 독출할 때, 데이터 클럭 신호(WCK)를 반도체 메모리 장치(200)에 제공할 수 있다.
메모리 컨트롤러(30)는 반도체 메모리 장치(200)의 메모리 셀 로우들 중 집중적으로 액세스되는 메모리 셀 로우와 관련된 해머 어드레스(HADDR)를 검출하는 해머 어드레스 관리 회로(100)를 포함하여 해머 어드레스(HADDR)를 반도체 메모리 장치(200)에 제공할 수 있다. 메모리 컨트롤러(30)는 해머 어드레스(HADDR) 관리의 긴급도에 기초하여 서로 다른 커맨드 프로토콜로 어드레스(ADDR)는 해머 어드레스(HADDR)를 반도체 메모리 장치(200)에 전송할 수 있다. 어드레스(ADDR)는 커맨드(CMD)에 수반될 수 있고, 본 명세서에서 어드레스(ADDR)는 액세스 어드레스라 호칭될 수 있다.
반도체 메모리 장치(200)는 데이터 신호(DQ)가 저장되는 메모리 셀 어레이(300), 제어 로직 회로(210) 및 리프레쉬 제어 회로(400)를 포함할 수 있다. 제어 로직 회로(210)는 반도체 메모리 장치(200)의 동작을 제어할 수 있다. 리프레쉬 제어 회로(400)는 해머 어드레스(HADDR)를 수신하고, 해머 어드레스(HADDR)에 상응하는 메모리 셀 로우와 물리적으로 인접한 빅팀(victim) 메모리 셀 로우들에 대하여 해머 리프레쉬 동작을 수행하는 리프레쉬 제어 회로(400)를 포함할 수 있다. 리프레쉬 제어 회로(400)는 또한 메모리 셀 로우들에 대한 리프레쉬 동작을 제어할 수 있다.
반도체 메모리 장치(200)는 데이터를 저장하는 메모리 셀의 전하 누설(charge leakage) 때문에 주기적으로 리프레쉬를 해야 한다. 디램의 공정 미세화에 따라서 메모리 셀의 저장 커패시턴스가 작아지고 리프레쉬 주기가 짧아지고 있다. 또한 반도체 메모리 장치(200)의 전체 메모리 용량이 증가함에 따라서 반도체 메모리 장치(200) 전체를 리프레쉬하기 위해 소요되는 시간이 길어지므로 리프레쉬 주기가 더욱 짧아지고 있다.
특정 메모리 셀 로우에 대한 집중적인 액세스에 의한 인접 셀의 열화(degradation)을 보상하기 위해 종래에는 TRR(Target Row Refresh) 방식을 채용하였고, 그 이후 시스템의 부담(burden)을 줄이기 위해 인-메모리 리프레쉬(In-memory refresh) 방식이 개발되어 사용되고 있다. TRR 방식은 집중적으로 액세스되는 해머 어드레스에 관한 해머 리프레쉬 동작에 관한 부담을 전적으로 메모리 컨트롤러가 책임지는 것이고, 인-메모리 리프레쉬 방식은 상기 부담을 전적으로 반도체 메모리 장치가 책임지는 것이다.
장래에 반도체 메모리 장치가 더욱 고용량화, 저전력화가 되면서 인-메모리 리프레쉬를 위한 칩 사이즈 오버헤드(chip size overhead) 그리고 특정 행이 집중되지 않은 상황임에도 이를 고려(care)하기 위한 전력 소모 증가의 문제가 발생할 수 있다.
본 발명의 실시예들에 따른 메모리 시스템(20), 해머 어드레스의 검출 및 리프레쉬 수행을 메모리 컨트롤러(30) 및 반도체 메모리 장치(200)에서 각각 수행하여 해머 리프레쉬 동작에 관한 부담(burden)을 분산함으로써 반도체 메모리 장치(200)의 사이즈를 감소하고 메모리 시스템(30)의 전체적인 성능을 향상시킬 수 있다.
도 2는 본 발명의 실시예들에 따른 도 1의 메모리 시스템에서 메모리 컨트롤러의 구성을 나타내는 블록도이다.
도 2를 참조하면, 메모리 컨트롤러(30)는 버스(31)를 통하여 서로 연결되는 중앙 처리 장치(central processing unit, 이하 'CPU')(35), 로우 해머 관리 회로(100), 리프레쉬 로직(40), 호스트 인터페이스(45), 직접 리프레쉬 관리(direct refresh management, 이하 'DRFM') 제어 로직(50), 스케쥴러(55) 및 메모리 인터페이스(60)를 포함할 수 있다.
CPU(35)는 메모리 컨트롤러(30)의 제반 동작을 제어한다. CPU(35)는 로우 해머 관리 회로(100), 리프레쉬 로직(40), 호스트 인터페이스(45), DRFM 제어 로직(50), 스케쥴러(55) 및 메모리 인터페이스(60)를 제어할 수 있다.
로우 해머 관리 회로(100)는 복수의 메모리 셀 로우들의 액세스와 관련된 액세스 어드레스들을 각각 카운팅하여 카운팅 값들을 내부에 저장하고, 상기 카운팅 값들에 기초하여 상기 메모리 셀 로우들 중 집중적으로 액세스되는 적어도 하나의 메모리 셀 로우와 관련되는 해머 어드레스 및 상기 해머 어드레스 관리의 긴급도와 관련된 상기 해머 어드레스의 타입을 결정할 수 있다.
리프레쉬 로직(40)은 복수의 메모리 셀 로우들을 순차적으로 리프레쉬하기 위한 오토 리프레쉬 커맨드를 리프레쉬 주기에 따라 생성할 수 있다.
호스트 인터페이스(45)는 호스트와 인터페이싱을 수행할 수 있다. DRFM 제어 로직(50)는 로우 해머 관리 회로(100)에서 결정된 해머 어드레스의 타입에 기초하여 DRFM 커맨드를 생성할 수 있다.
스케쥴러(55)는 메모리 컨트롤러(30) 내에서 생성된 커맨드들의 시퀀스들의 스케쥴링 및 전송을 관리할 수 있다. 특히 스케쥴러(55)는 해머 어드레스 관리의 긴급도에 기초하여 서로 다른 커맨드 프로토콜로 해머 어드레스를 메모리 인터페이스(60)를 통하여 반도체 메모리 장치(200)에 제공할 수 있다.
메모리 인터페이스(60)는 반도체 메모리 장치(200)와 인터페이싱을 수행할 수 있다.
도 3은 본 발명의 실시예들에 따른 도 2의 메모리 컨트롤러에서 로우 해머 관리 회로의 구성을 나타내는 블록도이고, 도 4는 도 3의 로우 해머 관리 회로에 포함되는 액세스 스토리지의 예를 나타내는 블록도이다.
도 3을 참조하면, 로우 해머 관리 회로(100)는 액세스 스토리지(120) 및 액세스 스토리지 컨트롤러(140)를 포함할 수 있다.
액세스 스토리지(120)는 집중적으로 액세스되는 해머 어드레스(HADDR)에 관한 정보를 저장한다. 일 실시예에서, 액세스 스토리지(120)는 도 4에 도시된 바와 같이 복수의 저장 블록들(SBK_A~SBK_S) (120a~120s, s는 3이상의 자연수)을 포함할 수 있고, 저장 블록들(120a~120s) 각각은 복수의 저장 유닛들(SU1~SUN, N은 4 이상의 자연수)을 포함할 수 있다. 저장 블록들(120a~120s)은 동일한 구성을 가질 수 있으며, 이하에서는 저장 블록(120a)에 대해서 설명한다.
저장 유닛들(SU1~SUk)은 메모리 셀 로우들의 액세스와 관련된 로우 어드레스들을 저장하는 어드레스 레지스터들(AREG1~AREGN) 및 상기 로우 어드레스들에 상응하는 액세스 카운트 값들을 각각 저장하는 카운트 레지스터들(CREG1~CREGN)을 포함할 수 있다.
액세스 스토리지 컨트롤러(140)는 메모리 컨트롤러(30)로부터 반도체 메모리 장치(200)로 전송되는 액세스 어드레스(ADDR)에 기초하여 액세스 스토리지(120)를 제어할 수 있다. 액세스 어드레스(ADDR)는 뱅크 어드레스(BANK_ADDR) 및 로우 어드레스(ROW_ADDR)를 포함할 수 있다. 액세스 스토리지 컨트롤러(140)는 액세스 카운트 값들에 기초하여 저장된 로우 어드레스들 중에서 해머 어드레스(HADDR)와 해머 어드레스(HADDR) 처리의 긴급도와 관련된 해머 어드레스의 타입을 결정하고, 해머 어드레스(HADDR)와 해머 어드레스의 타입을 스케쥴러(55)에 제공할 수 있다.
도 5는 본 발명의 실시예들에 따른 도 4의 액세스 스토리지 컨트롤러의 구성을 나타내는 블록도이다.
도 5를 참조하면, 액세스 스토리지 컨트롤러(140)는 어드레스 비교기(150), 카운터(155), 모니터 로직(160) 및 레지스터(165)를 포함할 수 있다.
어드레스 비교기(150)는 현재 액세스되는 메모리 셀 로우의 타겟 로우 어드레스(T_ROW_ADDR)와 액세스 스토리지(120)에 저장된 이전 로우 어드레스들 각각을 비교하고, 타겟 로우 어드레스(T_ROW_ADDR)와 이전 로우 어드레스들의 매치 여부를 나타내는 매칭 신호(MAT)를 생성할 수 있다. 어드레스 비교기(150)는 매칭 신호(MAT)를 모니터 로직(160)과 카운터(155)에 제공할 수 있다. 매칭 신호(MAT)는 복수의 비트들을 포함하여, 타겟 로우 어드레스(T_ROW_ADDR)가 이전 로우 어드레스들 중 하나와 일치하는 경우, 하이 레벨이 되는 비트를 포함할 수 있다.
카운터(155)는 매칭 신호(MAT)의 비트들 중 하나가 제로가 아닌 경우에, 액세스 스토리지(120)에서 타겟 로우 어드레스(T_ROW_ADDR)에 해당하는 카운팅 값(액세스 카운팅 값, CV)을 증가시킬 수 있다.
레지스터(165)는 제1 기준 횟수(NTH1) 및 제2 기준 횟수(NTH2)를 저장하고, 제1 기준 횟수(NTH1) 및 제2 기준 횟수(NTH2)를 모니터 로직(160)에 제공할 수 있다. 제2 기준 횟수(NTH2)는 제1 기준 횟수(NTH1)보다 클 수 있다. 제1 기준 횟수(NTH1) 및 제2 기준 횟수(NTH2)는 변경가능하다.
모니터 로직(160)은 액세스 스토리지(120)와 연결되고, 매칭 신호(MTS)가 제로가 아닌 경우, 현재 액세스되는 메모리 셀 로우의 타겟 로우 어드레스(T_ROW_ADDR)를 기초로 액세스 스토리지(120)에 저장된 타겟 로우 어드레스(T_ROW_ADDR)에 해당하는 카운팅 값을 제1 기준 횟수(NTH1) 및 제2 기준 횟수(NTH2)와 비교하고, 상기 비교의 결과에 기초하여 타겟 로우 어드레스(T_ROW_ADDR)가 해머 어드레스인지 여부를 판단하고, 타겟 로우 어드레스(T_ROW_ADDR)가 해머 어드레스인 경우에, 해머 어드레스의 타입을 나타내는 비교 신호(CS)와 해머 어드레스(HADDR)를 스케쥴러(55)에 제공할 수 있다.
타겟 로우 어드레스(T_ROW_ADDR)에 해당하는 카운팅 값이 제1 기준 횟수(NTH1)보다 작은 경우에, 모니터 로직(160)은 '00'의 비교 신호(CS)를 스케쥴러(55)에 제공하고, 해머 어드레스(HADDR)를 스케쥴러(55)에 제공하지 않을 수 있다.
타겟 로우 어드레스(T_ROW_ADDR)에 해당하는 카운팅 값이 제1 기준 횟수(NTH1) 이상이고, 제2 기준 횟수(NTH2)보다 경우에, 모니터 로직(160)은 '01'의 비교 신호(CS)를 스케쥴러(55)에 제공하고, 해머 어드레스(HADDR)를 스케쥴러(55)에 제공할 수 있다. 스케쥴러(55)는 '01'의 비교 신호(CS)에 응답하여 해머 어드레스(HADDR)의 타입을 제1 타입으로 판단하고, 제1 커맨드 프로토콜을 통하여 제1 타입의 해머 어드레스를 반도체 메모리 장치(200)에 제공할 수 있다.
타겟 로우 어드레스(T_ROW_ADDR)에 해당하는 카운팅 값이 제2 기준 횟수(NTH2) 이상인 경우에, 모니터 로직(160)은 '10'의 비교 신호(CS)를 스케쥴러(55)에 제공하고, 해머 어드레스(HADDR)를 스케쥴러(55)에 제공할 수 있다. 스케쥴러(55)는 '10'의 비교 신호(CS)에 응답하여 해머 어드레스(HADDR)의 타입을 제2 타입으로 판단하고, 제1 커맨드 프로토콜과는 다른 제2 커맨드 프로토콜을 통하여 제2 타입의 해머 어드레스를 반도체 메모리 장치(200)에 제공할 수 있다.
모니터 로직(160)은 매칭 신호(MTS)가 제로인 경우, 타겟 로우 어드레스(T_ROW_ADDR)를 액세스 스토리지(120)에 저장하고, 타겟 로우 어드레스(T_ROW_ADDR)의 카운팅 값을 '1'로 증가시킬 수 있다.
도 5에서 하나의 카운터(155)가 도시되었지만 메모리 셀 로우들의 수에 해당하는 카운터들이 액세스 스토리지 컨트롤러(140)에 포함될 수 있다.
도 6은 본 발명의 실시예들에 따른 도 3의 로우 해머 관리 회로에 포함될 수 있는 탐색 회로를 나타내는 블록도이다.
도 6을 참조하면, 탐색 회로(170)는 내용 주소화 메모리(CAM, content addressable memory)(180) 및 캠 컨트롤러(190)을 포함한다.
내용 주소화 메모리(180)는 복수의 엔트리 데이터들(ENT1~ENTN)을 저장할 수 있다. 도 2를 참조하여 후술하는 바와 같이 내용 주소화 메모리(180) 최상위 비트에 해당하는 제K 비트 내지 최하위 비트에 해당하는 제1 비트에 해당하는 K개의 비트들을 각각 포함하는 복수의 엔트리 데이터들을 저장하는 복수의 캠 셀들을 포함할 수 있다.
내용 주소화 메모리(180)는 캠 컨트롤러(190)로부터 타겟 로우 어드레스(T_ROW_ADDR)를 수신하고 복수의 엔트리 데이터들(ENT1~ENTN)이 탐색 타겟 로우 어드레스(T_ROW_ADDR)와 일치하는지 여부를 나타내는 복수의 매칭 신호들(MAT1~MATN)을 제공할 수 있다.
캠 컨트롤러(190)는 복수의 매칭 신호들(MAT1~MATN)에 기초하여 복수의 엔트리 데이터들(ENT1~ENTN) 중 타겟 엔트리 데이터를 탐색할 수 있다.
캠 컨트롤러(190)는 탐색 데이터 드라이버(SDD), 독출-기입 회로(RWC) 및 컨트롤 로직(CLG)를 포함할 수 있다.
독출-기입 회로(RWC)는 복수의 비트 라인들(BLS) 및 복수의 워드 라인들(WLS)을 통하여 내용 주소화 메모리(180)와 연결되고, 내용 주소화 메모리(180)에 엔트리 데이터를 기입하거나 내용 주소화 메모리(180)에 저장된 엔트리 데이터를 독출할 수 있다. 내용 주소화 메모리(180)에 포함된 캠 셀들은 다양한 구성을 가질 수 있으며, 독출-기입 회로(RWC)는 이러한 내용 주소화 메모리(180)의 구성에 적합하도록 다양한 구성을 가질 수 있다.
컨트롤 로직(CLG)은 부분 탐색 동작을 제어할 수 있다. 컨트롤 로직(CLG)은 탐색하고자 하는 타겟 엔트리 데이터에 기초하여 부분 탐색 동작을 위한 비교 대상 비트들을 결정하고 상기 비교 대상 비트들에 상응하는 타겟 로우 어드레스(T_ROW_ADDR)를 탐색 데이터 드라이버(SDD)에 제공할 수 있다. 컨트롤 로직(CLG)은 복수의 매칭 라인들(ML1~MLN)을 통하여 내용 주소화 메모리(180)에 연결되고, 복수의 매칭 라인들(ML1~MLN)을 통해 제공되는 복수의 매칭 신호들(MAT1~MATN)에 기초하여 복수의 엔트리 데이터들(ENT1~ENTN) 중에서 타겟 엔트리 데이터를 탐색할 수 있다.
탐색 데이터 드라이버(SDD)는 복수의 탐색 라인들(SL1~SLK)을 통하여 내용 주소화 메모리(180)에 연결될 수 있다. 탐색 데이터 드라이버(SDD)는 컨트롤 로직(CLG)으로부터 제공되는 타겟 로우 어드레스(T_ROW_ADDR)를 래치하고 복수의 탐색 라인들(SL1~SLK)을 통하여 내용 주소화 메모리(180)에 인가할 수 있다.
이러한 부분 탐색 동작을 이용하여, 내용 주소화 메모리(180)에 저장된 복수의 엔트리 데이터들(ENT1~ENTN) 중에서 다양한 조건을 만족하는 타겟 엔트리 데이터를 탐색할 수 있다. 캠 컨트롤러(190)는 상기 타겟 엔트리 데이터가 결정될 때까지 상기 비교 대상 비트들을 변경하면서 상기 부분 탐색 동작을 반복하여 수행할 수 있다. 본 명세서에서 타겟 엔트리 데이터를 탐색한다는 것은 상기 타겟 엔트리 데이터가 저장된 내용 주소화 메모리(180)의 타겟 위치를 검출한다는 것을 나타낸다. 상기 타겟 위치는 어드레스 또는 포인터 등의 형태로 표현될 수 있다. 상기 타겟 위치에 관한 정보는 독출-기입 회로(RWC)에 제공될 수 있고, 독출-기입 회로(RWC)는 제공된 타겟 위치 정보에 기초하여 타겟 엔트리 데이터를 내용 주소화 메모리(180)로부터 독출할 수 있다.
일 실시예서, 캠 컨트롤러(190)는 상기 비교 대상 비트들을 상기 제K 비트부터 하위 비트 방향으로 1개씩 순차적으로 증가시키면서 상기 부분 탐색 동작을 반복하여 수행할 수 있다.
이와 같이, 본 발명의 실시예들에 따른 탐색 회로는 내용 주소화 메모리에 대한 부분 탐색 동작을 이용하여 특정 조건을 만족하는 데이터를 탐색함으로써 상기 특정 조건의 판별을 위한 비교기들과 같은 부가적인 회로들을 대체할 수 있고 다양한 집적 회로들의 사이즈를 감소할 수 있다.
도 7는 도 6의 탐색 회로에 포함되는 내용 주소화 메모리의 개략적인 구조를 나타낸다.
도 7을 참조하면, 내용 주소화 메모리(180)는 복수의 캠 셀들(C11~CNK), 프리차지 회로(TP) 및 복수의 감지 증폭기들(SA1~SAN)을 포함할 수 있다.
복수의 캠 셀들(C11~CNK)은 N행 K열의 매트릭스 형태로 배열될 수 있고, 하나의 행에 상응하는 K개의 캠 셀들이 최상위 비트에 해당하는 제K 비트 내지 최하위 비트에 해당하는 제1 비트에 해당하는 K개의 비트들을 각각 포함하는 하나의 엔트리 데이터를 저장할 수 있다. 즉 제1 행의 캠 셀들(C11~C1K)은 K개의 비트들을 포함하는 제1 엔트리 데이터(ENT1)를 저장하고, 제2 행의 캠 셀들(C21~C2K)은 K개의 비트들을 포함하는 제2 엔트리 데이터(ENT2)를 저장하고, 이와 같은 방식으로 제N 행의 캠 셀들(CN1~CNK)은 K개의 비트들을 포함하는 제N 엔트리 데이터(ENTN)를 저장할 수 있다.
동일한 행의 캠 셀들은 동일한 매칭 라인에 공통으로 연결될 수 있다. 즉 제1 행의 캠 셀들(C11~C1K)은 제1 매칭 라인(ML1)에 공통으로 연결되고, 제2 행의 캠 셀들(C21~C2K)은 제2 매칭 라인(ML2)에 공통으로 연결되고, 이와 같은 방식으로 제N 행의 캠 셀들(CN1~CNK)은 제N 매칭 라인(MLN)에 공통으로 연결될 수 있다.
동일한 열의 캠 셀들은 동일한 탐색 라인에 공통으로 연결될 수 있다. 즉 제1 열의 캠 셀들(C11~CN1)은 제1 탐색 라인(SL1)에 공통으로 연결되고, 제2 열의 캠 셀들(C12~CN2)은 제2 탐색 라인(SL2)에 공통으로 연결되고, 이와 같은 방식으로 제K 열의 캠 셀들(C1K~CNK)은 제K 탐색 라인(SLK)에 공통으로 연결될 수 있다.
복수의 감지 증폭기들(SA1~SAN)은 복수의 매칭 라인들(ML1~MLN)의 전압들을 각각 센싱하여 복수의 매칭 신호들(MAT1~MATN)을 제공할 수 있다. 실시예에 따라서, 센스 증폭기들(SA1~SAN)은 생략될 수도 있고, 도 6의 컨트롤 로직(CLG)에 포함될 수도 있다.
프리차지 회로(TP)는 프리차지 신호(PRCH)에 응답하여 복수의 매칭 라인들(ML1~MLN)을 프리차지 전압(VPR)으로 프리차지할 수 있다.
도 7은 내용 주소화 메모리(180)의 단순화된 구성을 도시하고 있다. 제1 내지 제K 비트들(B1~BK)을 포함하는 탐색 데이터(SDT)가 제1 내지 제K 탐색 라인들(SL1~SLK)을 통하여 브로드캐스팅되고, 복수의 캠 셀들(C11~CNK)에 저장된 복수의 엔트리 데이터들(ENT1~ENTN)과 탐색 데이터(SDT)의 각 비교 결과가 복수의 매칭 라인들(ML1~MLN)을 통해 복수의 복수의 감지 증폭기들(SA1~SAN)로 제공된다.
상기 비교 결과는 타겟 로우 어드레스(T_ROW_ADDR)의 비교 대상 비트들이 각 엔트리 데이터(ENTi)의 상응하는 비트들과 일치하는 경우에는 각 매칭 신호(MATi)는 매치 경우(match case)를 나타내는 제1 논리 레벨(예를 들어, 논리 하이 레벨)을 갖고 불일치하는 경우에는 각 매칭 신호(MATi)는 미스매치 경우(mismatch case)를 나타내는 제2 논리 레벨(예를 들어, 논리 로우 레벨)을 가질 수 있다. 본 명세서에서 논리 하이 레벨은 1의 값과 동일하고 논리 로우 레벨은 0의 값과 동일한 의미로 사용될 수 있다.
매치 경우에는 매칭 라인에 연결된 모든 캠 셀들의 풀다운 경로들이 디스에이블되고 매치 라인은 프리차지된 논리 하이 레벨을 유지한다. 즉 매칭 신호는 논리 하이 레벨 또는 1의 값을 가진다.
미스매치 경우에는 매칭 라인에 연결된 캠 셀들 중 적어도 하나의 풀다운 경로가 인에이블되고 매치 라인은 접지 전압 레벨로 디스차지된다. 즉 매칭 신호는 논리 로우 레벨 또는 0의 값을 가진다.
도 6의 탐색 회로(170)는 도 4의 어드레스 레지스터들(AREG1~AREGN)과 도 5의 어드레스 비교기(150)를 대체할 수 있다.
도 8은 본 발명의 실시예들에 따른 도 1의 메모리 시스템에서 반도체 메모리 장치의 구성을 나타내는 블록도이다.
도 8을 참조하면, 반도체 메모리 장치(200)는 제어 로직 회로(210), 어드레스 레지스터(220), 뱅크 제어 로직(230), 리프레시 제어 회로(400), 로우 어드레스 멀티플렉서(240), 칼럼 어드레스 래치(250), 로우 디코더(260), 칼럼 디코더(270), 메모리 셀 어레이(310), 센스 앰프부(285), 입출력 게이팅 회로(290), ECC 엔진(390), 클럭 버퍼(225), 데이터 클럭 버퍼(235), 클럭 교정 회로(610), 클럭 생성 회로(630) 및 데이터 입출력 버퍼(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)와 리프레쉬 제어 회로(400)에 제공하며, 수신된 칼럼 어드레스(COL_ADDR)를 칼럼 어드레스 래치(250)에 제공할 수 있다.
뱅크 제어 로직(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)로부터의 제3 제어 신호(CTL3)에 응답하여 노멀 리프레쉬 모드에서는 리프레쉬 로우 어드레스(REF_ADDR)를 순차적으로 증가시키거나 감소시킬 수 있다. 리프레쉬 제어 회로(400)는 제어 로직 회로(210)로부터의 제3 제어 신호(CTL3)에 응답하여 해머 리프레쉬 모드에서는 로우 어드레스(ROW_ADDR)를 해머 어드레스로 판단하고, 해머 어드레스에 해당하는 메모리 셀 로우에 물리적으로 인접하는 메모리 셀 로우들의 해머 리프레쉬 로우 어드레스를 리프레쉬 로우 어드레스(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 엔진(390)에 의하여 ECC 디코딩이 수행되어 데이터(DTA)로서 데이터 입출력 버퍼(320)에 제공되고, 데이터 입출력 버퍼(320)는 데이터(DTA)를 출력 클럭 신호(OCLK)에 기초하여 데이터 신호(DQ)로 변환하고 데이터 신호(DQ)를 스트로브 신호(DQS)와 함께 메모리 컨트롤러(100)로 제공할 수 있다.
제1 내지 제16 뱅크 어레이들(310a~310s) 중 하나의 뱅크 어레이에 기입될 데이터 신호(DQ)는 데이터 입출력 버퍼(320)에 의하여 데이터(DTA)로 변환되어 ECC 엔진(390)에 제공되고, ECC 엔진(390)은 데이터(DTA)에 기초하여 패리티 비트들을 생성하고, 상기 데이터(DTA)와 상기 패리티 비트들을 포함하는 코드워드(CW)를 입출력 게이팅 회로(290)에 제공할 수 있다. 입출력 게이팅 회로(290)는 상기 기입 드라이버들을 통하여 상기 코드워드(CW)를 상기 하나의 뱅크 어레이의 타겟 페이지에 기입할 수 있다.
데이터 입출력 버퍼(320)는 기입 동작에서는 데이터 신호(DQ)를 데이터(DTA)로 변환하여 ECC 엔진(390)에 제공하고, 독출 동작에서는 클럭 생성 회로(630)에서 제공되는 출력 클럭 신호(OCLK)에 기초하여 ECC 엔진(390)으로부터 제공되는 데이터(DTA)를 데이터 신호(DQ)로 변환하고, 데이터 신호(DQ)와 스트로브 신호(DQS)를 메모리 컨트롤러(30)에 제공할 수 있다.
ECC 엔진(390)은 제어 로직 회로(210)로부터의 제1 제어 신호(CTL1)에 기초하여 데이터(DTA)에 대한 ECC 인코딩과 코드워드(CW)에 대한 ECC 디코딩을 수행할 수 있다.
클럭 버퍼(225)는 클럭 신호(CK)를 수신하고, 클럭 신호(CK)를 버퍼링하여 내부 클럭 신호(ICK)를 생성하고, 내부 클럭 신호(ICK)는 커맨드(CMD)와 어드레스(ADDR)를 처리하는 구성 요소들에 제공할 수 있다.
데이터 클럭 버퍼(235)는 차동 클럭 신호 쌍(WCK_t, WCK_t)을 포함하는 데이터 클럭 신호(WCK)를 수신하고, 데이터 클럭 신호(WCK)를 기초로 180도의 위상 차이를 가지는 제1 클럭 신호(CLKI)와 제2 클럭 신호(CLKIB)를 생성하고, 제1 클럭 신호(CLKI)와 제2 클럭 신호(CLKIB)를 클럭 교정 회로(610)에 제공할 수 있다.
클럭 교정 회로(610)는 제1 클럭 신호(CLKI)와 제2 클럭 신호(CLKIB)를 기초로 서로 90도의 위상 차이를 가지는 제1 내지 제4 분주 클럭 신호들을 생성하고, 상기 제1 내지 제4 분주 클럭 신호들 각각의 스큐를 조절하여 제1 내지 제4 조정 클럭 신호들(ACLKI, ACLKQ, ACLKIB, ACLKQB)을 생성하고, 상기 제1 내지 제4 조정 클럭 신호들(ACLKI, ACLKQ, ACLKIB, ACLKQB)을 클럭 생성 회로(630)에 제공할 수 있다.
클럭 생성 회로(630)는 제1 내지 제4 조정 클럭 신호들(ACLKI, ACLKQ, ACLKIB, ACLKQB)에 기초하여 출력 클럭 신호(OCLK)와 스트로브 신호(DQS)를 생성하고, 출력 클럭 신호(OCLK)와 스트로브 신호(DQS)를 데이터 입출력 버퍼(320)에 제공할 수 있다.
제어 로직 회로(210)는 반도체 메모리 장치(200)의 동작을 제어할 수 있다. 예를 들어, 제어 로직 회로(210)는 반도체 메모리 장치(200)가 기입 동작, 독출 동작 및 리프레쉬 동작을 수행하도록 제어 신호들을 생성할 수 있다. 제어 로직 회로(210)는 상기 메모리 컨트롤러(100)로부터 수신되는 커맨드(CMD)를 디코딩하는 커맨드 디코더(211) 및 반도체 메모리 장치(200)의 동작 모드를 설정하기 위한 모드 레지스터 세트(MRS, 212)를 포함할 수 있다.
예를 들어, 커맨드 디코더(211)는 칩 선택 신호 및 커맨드/어드레스 신호 등을 디코딩하여 커맨드(CMD)에 상응하는 상기 제어 신호들을 생성할 수 있다. 특히 제어 로직 회로(210)는 커맨드(CMD)를 디코딩하여 ECC 엔진(390)을 제어하는 제1 제어 신호(CTL1), 클럭 교정 회로(400)를 제어하는 제2 제어 신호(CTL2) 및 리프레쉬 제어 회로(400)를 제어하는 제3 제어 신호(CTL3)를 생성할 수 있다.
도 9는 본 발명의 실시예들에 따른 도 8의 반도체 메모리 장치에서 제1 뱅크 어레이를 나타낸다.
도 9를 참조하면, 제1 뱅크 어레이(310a)는 복수개의 워드라인들(WL1~WL2m, m은 2이상의 정수), 복수개의 비트라인들(BL1~BL2n, n은 2이상의 정수), 그리고 워드라인들(WL1~WL2m)과 비트라인들(BL1~BL2n) 사이의 교차점에 배치되는 복수개의 메모리 셀들(MCs)을 포함한다. 메모리 셀들(MCs) 각각은 워드라인들(WL1~WL2m) 각각과 비트라인들(BL1~BL2n) 각각에 연결되는 셀 트랜지스터 및 상기 셀 트랜지스터에 연결되는 셀 커패시터를 포함할 수 있다.
메모리 셀들(MCs)이 연결되는 제1 방향(D1)으로 연장된 워드라인들(WL1~WL2m)을 제1 뱅크 어레이(310a)의 로우들(rows)이라고 정의하고, 메모리 셀들(MCs)이 연결되는 제2 방향(D2)으로 연장된 비트라인들(BL1~BL2n)을 제1 뱅크 어레이(310a)의 칼럼들(columns)이라고 정할 수 있다.
도 10a는 본 발명의 실시예들에 따른 도 8의 반도체 메모리 장치에서 데이터 클럭 버퍼의 구성을 나타내는 블록도이다.
도 10a를 참조하면, 데이터 클럭 버퍼(235)는 전류 모드 로직(current mode logic, CML) 드라이버(237) 및 전류 모드 로직-CMOS 레벨 변환기(C2C converter, 239)를 포함할 수 있다.
CML 드라이버(237)는 차동 클럭 신호 쌍(WCK_t, WCK_c)을 포함하며 CML 레벨을 가지는 데이터 클럭 신호(WCK)를 구동하여 각각이 90도의 위상차이를 가지는 내부 클럭 신호들(CKI, CKQ, CKI, CQB)를 생성하고, C2C 변환기(239)는 내부 클럭 신호들(CKI, CKQ, CKI, CQB)에 기초하여 서로 180도의 위상 차이와 CMOS 레벨을 가지는 제1 클럭 신호(CLKI)와 제2 클럭 신호(CLKIB)를 생성할 수 있다. C2C 변환기(239)는 제1 클럭 신호(CLKI)와 제2 클럭 신호(CLKIB)를 도 2의 클럭 교정 회로(400)에 제공할 수 있다.
도 10b는 본 발명의 실시예들에 따른 도 8의 반도체 메모리 장치에서 데이터 클럭 신호가 클럭 교정 회로에 집적 입력되는 것을 나타낸다.
도 10b를 참조하면, 차동 클럭 신호 쌍(WCK_t, WCK_c)을 포함하는 데이터 클럭 신호(WCK)이 클럭 교정 회로(400)에 집적 입력될 수 있다, 차동 클럭 신호 쌍(WCK_t, WCK_c) 중 차동 클럭 신호(WCK_t)는 제1 데이터 클럭 신호로 호칭될 수 있고, 차동 클럭 신호(WCK_c)는 제2 데이터 클럭 신호로 호칭될 수 있다.
도 11은 본 발명의 실시예들에 따른 도 8의 반도체 메모리 장치에서 리프레쉬 제어 회로의 구성을 나타내는 블록도이다.
도 11을 참조하면, 리프레쉬 제어 회로(400)는 리프레쉬 제어 로직(410), 리프레쉬 클럭 생성기(420), 리프레쉬 카운터(430) 및 해머 리프레쉬 어드레스 생성기(440)를 포함할 수 있다. 리프레쉬 어드레스 생성기(440)는 해머 어드레스 스토리지(450) 및 맵퍼(460)를 포함할 수 있다.
리프레쉬 제어 로직(410)은 현재 액세스되는 메모리 셀 로우의 로우 어드레스(ROW_ADDR)를 수신하고, 로우 어드레스(ROW_ADDR)를 임시로 저장하고, 후속 커맨드에 의하여 로우 어드레스(ROW_ADDR)가 해머 어드레스에 해당함을 나타내는 로우 해머 이벤트 검출 신호(HED)에 응답하여 로우 어드레스(ROW_ADDR)를 해머 어드레스(HADDR)로서 해머 리프레쉬 어드레스 생성기(440)에 제공하고 모드 신호(MS)를 리프레쉬 클럭 생성기(420)에 제공할 수 있다.
또한 리프레쉬 제어 로직(410)은 로우 해머 이벤트 검출 신호(HED)가 수신된 시점으로부터 기준 시간 내에 직접 리프레쉬 관리 신호(DRMS)가 수신되면, 해머 어드레스(HADDR)가 제2 타입의 해머 어드레스임을 나타내는 타입 신호(TYS)를 해머 리프레쉬 어드레스 생성기(440)에 제공할 수 있다. 또한 리프레쉬 제어 로직(410)은 로우 해머 이벤트 검출 신호(HED)가 수신된 시점으로부터 기준 시간 내에 직접 리프레쉬 관리 신호(DRMS)가 수신되지 않으면, 해머 어드레스(HADDR)가 제1 타입의 해머 어드레스임을 나타내는 타입 신호(TYS)를 해머 리프레쉬 어드레스 생성기(440)에 제공할 수 있다. 또한 리프레쉬 제어 로직(410)은 로우 해머 이벤트 검출 신호(HED)와 직접 리프레쉬 관리 신호(DRMS)에 기초하여 해머 어드레스의 출력 타이밍을 제어하는 타이밍 제어 신호(TCS)를 해머 리프레쉬 어드레스 생성기(440)에 제공할 수 있다.
리프레쉬 클럭 생성기(420)는 제1 리프레쉬 제어 신호(IREF1), 제2 리프레쉬 제어 신호(IREF2) 및 모드 신호(MS)에 기초하여 노멀 리프레쉬 동작의 타이밍을 나타내는 리프레쉬 클럭 신호(RCK)를 생성할 수 있다. 리프레쉬 클럭 생성기(420)는 제1 리프레쉬 제어 신호(IREF1)가 인가될 때마다 또는 제2 리프레쉬 제어 신호(IREF2)가 활성화되는 동안에 리프레쉬 클럭 신호(RCK)를 생성할 수 있다.
도 8의 제어 로직 회로(210)는 메모리 컨트롤러(30)로부터의 커맨드(CMD)가 오토 리프레쉬 커맨드인 경우에, 오토 리프레쉬 커맨드가 인가될 때마다 제1 리프레쉬 제어 신호(IREF1)를 리프레쉬 제어 회로(400)에 인가할 수 있다. 제어 로직 회로(210)는 메모리 컨트롤러(100)로부터의 커맨드(CMD)가 셀프 리프레쉬 진입 커맨드인 경우에, 셀프 리프레쉬 진입 커맨드의 수신 후 셀프 리프레쉬 탈출 커맨드가 인가될 때까지 활성화되는 제2 리프레쉬 제어 신호(IREF2)를 리프레쉬 제어 회로(400)에 인가할 수 있다.
리프레쉬 카운터(420)는 리프레쉬 클럭 신호(RCK)의 주기마다 카운팅 동작을 수행하여 메모리 셀 로우들 각각을 지정하는 카운터 리프레쉬 어드레스(CREF_ADDR)를 생성하고, 카운터 리프레쉬 어드레스(CREF_ADDR)를 리프레쉬 로우 어드레스(REF_ADDR)로서 도 8의 로우 어드레스 멀티플렉서(240)에 제공할 수 있다.
해머 리프레쉬 어드레스 생성기(440)는 해머 어드레스 스토리지(450) 및 맵퍼(460)를 포함할 수 있다.
해머 어드레스 스토리지(450)는 해머 어드레스(HADDR)을 저장하고, 타이밍 제어 신호(TMS)에 기초하여 저장된 해머 어드레스(HADDR)를 맵퍼(460)에 출력할 수 있다. 맵퍼(460)는 해머 어드레스(HADDR)에 상응하는 메모리 셀 로우에 물리적으로 인접한 빅팀 메모리 셀 로우들의 어드레스들을 나타내는 해머 리프레쉬 어드레스들(HREF_ADDR)을 생성할 수 있다.
예를 들어, 타입 신호(TYS)가 해머 어드레스(HADDR)가 제1 타입의 해머 어드레스임을 나타내는 것에 응답하여 맵퍼(460)는 해머 어드레스(HADDR)에 상응하는 메모리 셀 로우에 물리적으로 인접한 제1 수의 빅팀 메모리 셀 로우들의 어드레스들을 나타내는 해머 리프레쉬 어드레스들(HREF_ADDR)을 생성할 수 있다. 예를 들어, 제1 수는 2일 수 있다. 예를 들어, 타입 신호(TYS)가 해머 어드레스(HADDR)가 제2 타입의 해머 어드레스임을 나타내는 것에 응답하여 맵퍼(460)는 해머 어드레스(HADDR)에 상응하는 메모리 셀 로우에 물리적으로 인접한 제2 수의 빅팀 메모리 셀 로우들의 어드레스들을 나타내는 해머 리프레쉬 어드레스들(HREF_ADDR)을 생성할 수 있다. 예를 들어, 제2 수는 4일 수 있다.
해머 리프레쉬 어드레스 생성기(440)는 해머 리프레쉬 어드레스들(HREF_ADDR)을 리프레쉬 로우 어드레스(REF_ADDR)로서 도 8의 로우 어드레스 멀티플렉서(240)에 제공할 수 있다.
해머 어드레스 스토리지(450)는 도 4의 액세스 스토리지(120)와 유사한 구성을 가질 수 있다. 또한 리프레쉬 제어 로직(410)은 로우 어드레스(ROW_ADDR)를 임시로 저장하는 버퍼 및 해머 어드레스(HADDR)를 카운팅하는 카운터를 포함할 수 있다.
도 12는 본 발명의 실시예들에 따른 도 11의 리프레쉬 제어 회로에서 리프레쉬 클럭 생성기의 일 예를 나타낸다.
도 12를 참조하면, 리프레쉬 클럭 생성기(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)로서 출력한다.
도 13은 본 발명의 실시예들에 따른 도 11의 리프레쉬 제어 회로에서 리프레쉬 클럭 생성기의 일 예를 나타낸다.
도 13을 참조하면, 리프레쉬 클럭 생성기(420b)는 디코더(425b), 바이어스부(426) 및 발진기(427)를 포함할 수 있다. 디코더(425b)는 제1 리프레쉬 제어 신호(IREF1), 제2 리프레쉬 제어 신호(IREF2) 및 모드 신호(MS)를 디코딩하여 클럭 제어 신호(RCS2)를 출력할 수 있다. 바이어스부(426)는 클럭 제어 신호(RCS2)에 응답하여 제어 전압(VCON)을 발생할 수 있다. 발진기(427)는 제어 전압(VCON)에 따라, 그 주기가 가변되는 리프레쉬 클럭 신호(RCK)를 발생할 수 있다.
도 14 내지 도 17은 본 발명의 실시예들에 따른 도 1의 메모리 시스템의 커맨드들을 나타낸다.
도 14에는 제1 액티브 커맨드(ACT1) 제2 액티브 커맨드(ACT2)를 나타내는 칩 선택 신호(CS) 및 제1 내지 제7 커맨드/어드레스 신호들(CA0~CA6)의 조합이 도시되어 있고, 도 15에는 프리차지 커맨드(PRE) 리프레쉬 커맨드(REF)를 나타내는 칩 선택 신호(CS) 및 제1 내지 제7 커맨드/어드레스 신호들(CA0~CA6)의 조합이 도시되어 있고, 도 16에는 16 버스트 길이 기입 커맨드(WR16), 기입 커맨드(WR) 및 32 버스트 길이 기입 커맨드(WR32)를 나타내는 선택 신호(CS) 및 제1 내지 제7 커맨드/어드레스 신호들(CA0~CA6)의 조합이 도시되어 있고, 도 17에는 16 버스트 길이 독출 커맨드(RD16), 독출 커맨드(RD) 및 32 버스트 길이 독출 커맨드(RD32)를 나타내는 선택 신호(CS) 및 제1 내지 제7 커맨드/어드레스 신호들(CA0~CA6)의 조합이 도시되어 있다.
도 14 내지 도 17에서, H는 논리 하이 레벨을 나타내고, L은 논리 로우 레벨을 나타내고, X는 논리 레벨이 정의되지 않음을 나타내고, R0~R17은 로우 어드레스의 비트들을 나타내고, BG는 뱅크 그룹 모드를 나타내고, 16B는 16 뱅크 모드를 나타내고, 8B는 8 뱅크 모드를 나타내고, BA0~BA3는 뱅크 어드레스의 비트들을 나타내고, BG0 및 BG1은 뱅크 그룹 어드레스의 비트들을 나타내고, RE는 클럭 신호(CK)의 상승 에지를 나타내고, FE는 클럭 신호(CK)의 상승 에지를 나타낸다. 또한, 도 16 및 도 17에서 C0~C5는 컬럼 어드레스의 비트들을 나타낸다.
도 14를 참조하면, 제1 액티브 커맨드(ACT1) 및 제2 액티브 커맨드(ACT2)는 각각 복수의 클럭 사이클(예를 들어, 4 클럭 사이클) 동안에 전송될 수 있다. 제1 액티브 커맨드(ACT1) 및 제2 액티브 커맨드(ACT2)는 액세스 어드레스, 즉 뱅크 어드레스(BA0~BA3) 및 로우 어드레스(R0~R17)을 포함할 수 있다.
도 15를 참조하면, 프리차지 커맨드(PRE)의 제6 커맨드/어드레스 신호(CA5)를 로우 레벨로 지정하여 프리차지 커맨드(PRE)의 제6 커맨드/어드레스 신호(CA5)를 해머 플래그 정보로 이용할 수 있다. 즉, 메모리 컨트롤러(30)의 스케쥴러(55)는 프리차지 커맨드(PRE)의 제6 커맨드/어드레스 신호(CA5)를 로우 레벨로 설정하여 제1 액티브 커맨드(ACT1) 및 제2 액티브 커맨드(ACT2)에 수반되는 로우 어드레스(R0~R17)가 해머 어드레스에 해당함을 반도체 메모리 장치(200)에 통보할 수 있다.
도 15를 계속 참조하면, 프리차지 커맨드(PRE)의 제4커맨드/어드레스 신호(CA3)는 리프레쉬 관리(RFM) 플래그로 이용될 수 있다.
도 15에서 AB는 모든 뱅크들을 나타내고, SB는 동일 뱅크를 나타낸다.
도 16을 참조하면, 기입 커맨드(WR, WR16, WR32)는 제7 커맨드/어드레스 신호(CA6)는 오토 프리차지 정보(AP)를 포함하는데, 메모리 컨트롤러(30)의 스케쥴러(55)는 오토 프리차지 정보(AP)를 이용하여 제1 액티브 커맨드(ACT1) 및 제2 액티브 커맨드(ACT2)에 수반되는 로우 어드레스(R0~R17)가 해머 어드레스에 해당함을 반도체 메모리 장치(200)에 통보할 수 있다.
도 17을 참조하면, 독출 커맨드(RD, RD16, RD32)는 제7 커맨드/어드레스 신호(CA6)는 오토 프리차지 정보(AP)를 포함하는데, 메모리 컨트롤러(30)의 스케쥴러(55)는 오토 프리차지 정보(AP)를 이용하여 제1 액티브 커맨드(ACT1) 및 제2 액티브 커맨드(ACT2)에 수반되는 로우 어드레스(R0~R17)가 해머 어드레스에 해당함을 반도체 메모리 장치(200)에 통보할 수 있다.
즉, 도 2의 메모리 컨트롤러(30)의 스케쥴러(55)는 제1 액티브 커맨드(ACT1) 및 제2 액티브 커맨드(ACT2) 이후에 인가되는 후속 커맨드를 이용하여 제1 액티브 커맨드(ACT1) 및 제2 액티브 커맨드(ACT2)에 수반되는 로우 어드레스(R0~R17)가 해머 어드레스에 해당함을 반도체 메모리 장치(200)에 통보할 수 있다.
도 18은 본 발명의 실시예들에 따른 해머 어드레스의 타입이 제1 타입인 경우에 메모리 컨트롤러의 제1 커맨드 프로토콜을 나타낸다.
도 2, 도 5 및 도 18을 참조하면, 타겟 로우 어드레스(T_ROW_ADDR)가 제1 타입의 해머 어드레스인 경우, 스케쥴러(55)는 클럭 신호(CK_t)의 에지에 동기하여 제1 액티브 커맨드(ACT1) 및 제2 액티브 커맨드(ACT2)를 연속적으로 반도체 메모리 장치(200)에 인가하고, 액티브 to 프리차지 시간에 해당하는 tRAS 후, 제1 액티브 커맨드(ACT1) 및 제2 액티브 커맨드(ACT2)에 수반되는 타겟 로우 어드레스(T_ROW_ADDR)가 해머 어드레스에 해당함을 통지하는 프리차지 커맨드(PRE)를 반도체 메모리 장치(200)에 인가한다. 이 경우, 스케쥴러(55)는 프리차지 커맨드(PRE)의 제6 커맨드/어드레스 신호(CA5)를 로우 레벨로 설정할 수 있다.
프리차지 동작에 소요되는 시간(tRP) 이후에, 스케쥴러(55)는 클럭 신호(CK_t)의 에지에 동기하여 제1 액티브 커맨드(ACT1) 및 제2 액티브 커맨드(ACT2)를 연속적으로 반도체 메모리 장치(200)에 인가한다. 그 이후에, 스케쥴러(55)는 리프레쉬 커맨드(REF)를 반도체 메모리 장치(200)에 인가하는데, 리프레쉬 커맨드(REF)에 응답하여 반도체 메모리 장치(200)는 해머 어드레스에 해당하는 메모리 셀 로우에 인접한 두 개의 빅팀 메모리 셀 로우들에 대하여 해머 리프레쉬 동작을 수행한다.
도 19는 본 발명의 실시예들에 따른 해머 어드레스의 타입이 제2 타입인 경우에 메모리 컨트롤러의 제2 커맨드 프로토콜을 나타낸다.
도 2, 도 5 및 도 19를 참조하면, 타겟 로우 어드레스(T_ROW_ADDR)가 제2 타입의 해머 어드레스인 경우, 스케쥴러(55)는 클럭 신호(CK_t)의 에지에 동기하여 제1 액티브 커맨드(ACT1) 및 제2 액티브 커맨드(ACT2)를 연속적으로 반도체 메모리 장치(200)에 인가하고, 액티브 to 프리차지 시간에 해당하는 tRAS 후, 제1 액티브 커맨드(ACT1) 및 제2 액티브 커맨드(ACT2)에 수반되는 타겟 로우 어드레스(T_ROW_ADDR)가 해머 어드레스에 해당함을 통지하는 프리차지 커맨드(PRE)를 반도체 메모리 장치(200)에 인가한다. 이 경우, 스케쥴러(55)는 프리차지 커맨드(PRE)의 제6 커맨드/어드레스 신호(CA5)를 로우 레벨로 설정할 수 있다.
프리차지 동작에 소요되는 시간(tRP) 이후에, 스케쥴러(55)는 다른 커맨드들의 개재없이 클럭 신호(CK_t)의 에지에 동기하여 직접 리프레쉬 관리 커맨드(DRFM)를 반도체 메모리 장치(200)에 인가한다. 반도체 메모리 장치(200)는 리프레쉬 사이클 구간(tRFC) 동안에 직접 리프레쉬 관리 커맨드(DRFM)에 응답하여 해머 어드레스에 해당하는 메모리 셀 로우에 인접한 네 개의 빅팀 메모리 셀 로우들에 대하여 해머 리프레쉬 동작을 수행한다. 리프레쉬 사이클 구간(tRFC) 동안에는 반도체 메모리 장치(200)가 직접 리프레쉬 관리 커맨드(DRFM)를 수신한 시점부터 다른 커맨드의 발생이 금지된다.
도 20은 제1 타입의 해머 어드레스에 대하여 해머 리프레쉬 어드레스를 생성하는 것을 설명하기 위해 메모리 셀 어레이의 일부를 나타낸다.
도 20에는 메모리 셀 어레이 내에서 로우 방향(D1)으로 신장되고(extended) 컬럼 방향(D2)으로 인접하여 순차적으로 배열된(arranged) 3개의 워드라인들(WLt-1, WLt, WLt+1), 컬럼 방향(D2)으로 신장되고 로우 방향(D1)으로 인접하여 순차적으로 배열된 3개의 비트라인들(BLg-1, BLg, BLg+1) 및 이들에 각각 결합된 메모리 셀들(MC)이 도시되어 있다.
예를 들어, 가운데 워드라인(WLt)이 집중적으로 액세스되는 해머 어드레스(HADD)에 상응할 수 있다. 여기서 집중적으로 액세스된다는 것은 워드라인의 액티브 회수가 많거나 액티브 빈도가 높다는 것을 말한다. 해머 워드라인(WLt)이 액세스되어 액티브 및 프리차지되면, 즉 해머 워드라인(WLt)의 전압이 상승 및 하강하면, 인접 워드라인들(WLt-1, WLt+1) 사이에 발생하는 커플링 현상으로 인해 인접 워드라인들(WLt-1, WLt+1)의 전압이 함께 상승 및 하강하면서 인접 워드라인들(WLt-1, WLt+1)에 연결된 메모리 셀들(MC)에 충전된 셀 전하에 영향을 미친다. 해머 워드라인(WLs)이 빈번하게 액세스될수록 빅팀 워드라인들(WLt-1, WLt+1)에 연결된 메모리 셀들(MC)의 셀 전하가 소실되고 저장된 데이터가 손상될 가능성이 높아진다.
도 11의 해머 리프레쉬 어드레스 생성기(440)는 해머 어드레스(HADDR)에 상응하는 워드라인(WLt)과 물리적으로 인접하는 워드라인들(WLt-1, WLt+1)의 어드레스(HREF_ADDRa, HREF_ADDRb)를 나타내는 해머 리프레쉬 어드레스(HREF_ADDR)를 제공하고, 이러한 해머 리프레쉬 어드레스(HREF_ADDR)에 기초하여 인접 워드라인들(WLt-1, WLt+1)에 대한 해머 리프레쉬 동작을 추가적으로 수행함으로써 집중적인 액세스에 의한 메모리 셀들의 데이터 손상을 방지할 수 있다.
도 21은 제2 타입의 해머 어드레스에 대하여 해머 리프레쉬 어드레스를 생성하는 것을 설명하기 위해 메모리 셀 어레이의 일부를 나타낸다.
도 21에는 메모리 셀 어레이 내에서 로우 방향(D1)으로 신장되고 컬럼 방향(D2)으로 인접하여 순차적으로 배열된 5개의 워드라인들(WLt-2, WLt-1, WLt, WLt+1, WLt+2), 컬럼 방향(D2)으로 신장되고 로우 방향(D1)으로 인접하여 순차적으로 배열된 3개의 비트라인들(BLg-1, BLg, BLg+1) 및 이들에 각각 결합된 메모리 셀들(MC)이 도시되어 있다.
도 11의 해머 리프레쉬 어드레스 생성기(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)에 대한 해머 리프레쉬 동작을 추가적으로 수행함으로써 집중적인 액세스에 의한 메모리 셀들의 데이터 손상을 방지할 수 있다.
도 22a, 도 22b 및 도 23은 본 발명의 실시예들에 따른 도 11의 리프레쉬 제어 회로의 동작 예들을 나타내는 타이밍도들이다.
도 22a 및 도 22b에서는 t1~t15 또는 t1~t10에서 펄스 형태로 활성화되는 리프레쉬 제어 신호(IREF)에 대하여 리프레쉬 클럭 신호(RCK), 직접 리프레쉬 관리 신호(DRMS), 카운터 리프레쉬 어드레스(CREF_ADDR) 및 해머 리프레쉬 어드레스(HREF_ADDR)의 발생에 관한 실시예들이 도시되어 있다. 리프레쉬 제어 신호(IREF)의 활성화 시점들(t1~t15) 사이의 간격은 규칙적일 수도 있고 불규칙적일 수도 있다.
도 11 및 도 22a를 참조하면, 리프레쉬 제어 로직(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)는 타이밍 제어 신호(TCS)의 활성화 시점들(t5, t11)에 동기하여 전술한 해머 어드레스(HADDR)에 상응하는 메모리 셀 로우와 물리적으로 인접하는 빅팀 메모리 셀 로우들의 어드레스(Ha1, Ha2)를 나타내는 해머 리프레쉬 어드레스(HREF_ADDR)를 발생한다.
도 11 및 도 22b를 참조하면, 리프레쉬 제어 로직(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)는 타이밍 제어 신호(TCS)의 활성화 시점들(t5, t6)에 동기하여 전술한 해머 어드레스(HADDR)에 상응하는 메모리 셀 로우와 물리적으로 인접하는 빅팀 메모리 셀 로우들의 어드레스(Ha1, Ha2)를 나타내는 해머 리프레쉬 어드레스(HREF_ADDR)를 발생한다.
도 22a 및 도 22b는 해머 어드레스가 제1 타입인 경우에 리프레쉬 제어 회로(400)의 동작을 나타낸다.
도 11 및 도 23을 참조하면, 해머 리프레쉬 어드레스 생성기(440)는 타이밍 제어 신호(TCS)의 활성화 시점들(t5, t6, t7, t8)에 동기하여 전술한 해머 어드레스(HADDR)에 상응하는 메모리 셀 로우와 물리적으로 인접하는 빅팀 메모리 셀 로우들의 어드레스들(Ha1, Ha2, Ha3, Ha4)를 나타내는 해머 리프레쉬 어드레스(HREF_ADDR)를 발생한다.
도 23은 해머 어드레스가 제2 타입인 경우에 리프레쉬 제어 회로(400)의 동작을 나타낸다.
도 24는 본 발명의 실시예들에 따른 도 1의 메모리 시스템에서 메모리 컨트롤러가 해머 어드레스를 처리하는 것을 나타내는 흐름도이다.
도 1 내지 도 5, 도 14 내지 도 19 및 도 24를 참조하면, 스케쥴러(55)는 현재 액세스하고자 하는 메모리 셀 로우의 타겟 로우 어드레스(RA[i])를 활성화시킨다(S110). 액세스 스토리지 컨트롤러(140)는 타겟 로우 어드레스(RA[i])가 액세스 스토리지(120)에 저장된 이전 로우 어드레스들 중 하나와 일치하는지를 판단한다(S120).
타겟 로우 어드레스(RA[i])가 액세스 스토리지(120)에 저장된 이전 로우 어드레스들 중 하나와 일치하지 않으면(S120에서 NO), 액세스 스토리지 컨트롤러(140)는 타겟 로우 어드레스(RA[i])를 새로운 엔트리로서 액세스 스토리지(120)에 저장하고(S130), 타겟 로우 어드레스(RA[i])의 카운팅 값을 1 만큼 증가시킨다(S140).
타겟 로우 어드레스(RA[i])가 액세스 스토리지(120)에 저장된 이전 로우 어드레스들 중 하나와 일치하면(S120에서 YES), 액세스 스토리지 컨트롤러(140)는 타겟 로우 어드레스(RA[i])의 카운팅 값(CNT)이 제2 기준 횟수(NTH2) 이상인지 여부를 판단한다(S150).
타겟 로우 어드레스(RA[i])의 카운팅 값(CNT)이 제2 기준 횟수(NTH2) 이상이 아닌 경우(S150에서 NO), 액세스 스토리지 컨트롤러(140)는 타겟 로우 어드레스(RA[i])의 카운팅 값(CNT)이 제1 기준 횟수(NTH1) 이상인지 여부를 판단한다(S155). 타겟 로우 어드레스(RA[i])의 카운팅 값(CNT)이 제1 기준 횟수(NTH1) 이상이 아닌 경우(S155에서 NO), 액세스 스토리지 컨트롤러(140)는 타겟 로우 어드레스(RA[i])의 카운팅 값을 1 만큼 증가시킨다(S140).
타겟 로우 어드레스(RA[i])의 카운팅 값(CNT)이 제1 기준 횟수(NTH1) 이상인 경우(S155에서 YES), 스케쥴러(155)는 타겟 로우 어드레스(RA[i])가 리프레쉬 인터벌 동안에 해머 어드레스로서 반도체 메모리 장치로 통지되었는지 여부를 판단한다(S160).
타겟 로우 어드레스(RA[i])가 리프레쉬 인터벌 동안에 해머 어드레스로서 반도체 메모리 장치로 통지되었으면(S160에서 YES), 액세스 스토리지 컨트롤러(140)는 타겟 로우 어드레스(RA[i])의 카운팅 값을 1 만큼 증가시킨다(S140).
타겟 로우 어드레스(RA[i])가 리프레쉬 인터벌 동안에 해머 어드레스로서 반도체 메모리 장치로 통지되지 않았으면(S160에서 NO), 스케쥴러(155)는 프리차지 커맨드(PRE)와 같은 후속 커맨드를 이용하여 타겟 로우 어드레스(RA[i])가 해머 어드레스(HADDR)에 해당함을 반도체 메모리 장치(200)에 통지하고(S165), 타겟 로우 어드레스(RA[i])와 관련된 카운터를 리셋시키고, 반도체 메모리 장치(200)에 리프레쉬 커맨드를 인가하여(S170)하여 반도체 메모리 장치(200)가 타겟 로우 어드레스(RA[i])에 해당하는 메모리 셀 로우에 인접한 빅팀 메모리 셀 로우들에 대하여 해머 리프레쉬 동작을 수행하도록 한다. 여기서 수행되는 해머 리프레쉬 동작은 메모리 컨트롤러(30)에 대하여는 숨겨진(hidden) 리프레쉬 동작일 수 있다.
타겟 로우 어드레스(RA[i])의 카운팅 값(CNT)이 제2 기준 횟수(NTH2) 이상인 경우(S150에서 YES), 스케쥴러(155)는 프리차지 커맨드(PRE)와 같은 후속 커맨드를 이용하여 타겟 로우 어드레스(RA[i])가 해머 어드레스(HADDR)에 해당함을 반도체 메모리 장치(200)에 통지하고(S175), 타겟 로우 어드레스(RA[i])와 관련된 카운터를 리셋시키고, 다른 커맨드들의 개재없이 반도체 메모리 장치(200)에 즉시 리프레쉬 동작을 지시하는 직접 리프레쉬 커맨드(DRFM)를 인가하여(S180), 반도체 메모리 장치(200)가 타겟 로우 어드레스(RA[i])에 해당하는 메모리 셀 로우에 인접한 빅팀 메모리 셀 로우들에 대하여 해머 리프레쉬 동작을 수행하도록 한다.
도 25는 본 발명의 실시예들에 따른 도 1의 메모리 시스템에서 메모리 컨트롤러가 해머 리프레쉬 동작을 수행하는 것을 나타내는 흐름도이다.
도 1, 도 8, 도 11, 도 14 내지 도 19 및 도 25를 참조하면, 리프레쉬 제어 회로(400)는 후속 커맨드에 의하여 타겟 로우 어드레스(RA[i])가 해머 어드레스(HADDR)에 해당함을 통지받는다(S210).
리프레쉬 제어 로직(410)은 타겟 로우 어드레스(RA[i])가 해머 어드레스 스토리지(450)에 저장된 이전 해머 어드레스들 중 하나와 일치하는지 여부를 판단한다(S220).
타겟 로우 어드레스(RA[i])가 해머 어드레스 스토리지(450)에 저장된 이전 해머 어드레스들 중 하나와 일치하지 않으면(S220에서 NO), 리프레쉬 제어 로직(410)은 타겟 로우 어드레스(RA[i])를 새로운 엔트리로서 해머 어드레스 스토리지(450)에 저장하고(S230), 타겟 로우 어드레스(RA[i])의 카운팅 값을 1 만큼 증가시킨다(S240).
타겟 로우 어드레스(RA[i])가 해머 어드레스 스토리지(450)에 저장된 이전 해머 어드레스들 중 하나와 일치하면(S220에서 YES), 리프레쉬 제어 로직(410)은 타겟 로우 어드레스(RA[i])의 카운팅 값(CNT)이 기준 횟수(NTH) 이상인지 여부를 판단한다(S250). 여기서 기준 횟수(NTH)는 4일 수 있다.
타겟 로우 어드레스(RA[i])의 카운팅 값(CNT)이 기준 횟수(NTH) 이상이 아닌 경우(S250에서 NO), 해머 리프레쉬 어드레스 생성기(440)는 타겟 로우 어드레스(RA[i])에 해당하는 메모리 셀 로우에 인접한 두 개의 빅팀 메모리 셀 로우들의 해머 리프레쉬 어드레스(HREF_ADDR)을 생성하고(S260), 리프레쉬 제어 로직(410)은 타겟 로우 어드레스(RA[i])의 카운팅 값을 1 만큼 증가시킨다(S240).
타겟 로우 어드레스(RA[i])의 카운팅 값(CNT)이 기준 횟수(NTH) 이상인 경우(S250에서 YES), 해머 리프레쉬 어드레스 생성기(440)는 타겟 로우 어드레스(RA[i])에 해당하는 메모리 셀 로우에 인접한 네 개의 빅팀 메모리 셀 로우들의 해머 리프레쉬 어드레스(HREF_ADDR)을 생성하고(S270), 리프레쉬 제어 로직(410)은 타겟 로우 어드레스(RA[i])와 관련된 카운터를 리셋시킬 수 있다.
상술한 바와 같이, 본 발명의 실시예들에 따른 메모리 컨트롤러(30) 및 메모리 시스템(20)에서는 해머 어드레스의 검출을 메모리 컨트롤러(30)가 담당하고, 해머 리프레쉬의 수행을 반도체 메모리 장치(200)가 담당하여 해머 리프레쉬 동작에 관한 부담(burden)을 분산하되, 해머 어드레스 처리의 긴급도에 따라 제2 타입의 해머 어드레스인 경우에는 추가적인 직접 리프레쉬 관리 커맨드(DRFM)를 반도체 메모리 장치(200)에 인가하여 빅팀 메모리 셀 로우들에 대한 해머 리프레쉬 동작을 즉시 수행하도록 하고, 제1 타입의 해머 어드레스인 경우에는 추가적인 직접 리프레쉬 관리 커맨드(DRFM)를 인가하지 않고 반도체 메모리 장치(200) 내부적으로 리프레쉬 타이밍에 빅팀 메모리 셀 로우들에 대한 해머 리프레쉬 동작을 수행하도록 한다. 따라서 메모리 시스템(20)의 성능을 감소시키지 않고, 커맨드 스케쥴링의 제약 조건을 초래하지 않을 수 있다.
도 26은 본 발명의 실시예들에 따른 메모리 시스템의 동작 방법을 나타내는 흐름도이다.
도 1 내지 도 26을 참조하면, 각각이 복수의 휘발성 메모리 셀들을 구비하는 복수의 메모리 셀 로우들을 구비하는 메모리 셀 어레이(310)를 포함하는 반도체 메모리 장치(200)와 반도체 메모리 장치(200)를 제어하는 메모리 컨트롤러(30)를 구비하는 메모리 시스템(20)의 동작 방법이 제공된다.
상기 방법에 따르면, 메모리 컨트롤러(30)에서 복수의 메모리 셀 로우들 중 집중적으로 액세스되는 해머 어드레스와 상기 해머 어드레스의 타입을 결정한다(S310). 메모리 컨트롤러(30)의 로우 해머 관리 회로(100)는 상기 복수의 메모리 셀 로우들의 액세스와 관련된 액세스 어드레스들을 각각 카운팅하고, 상기 카운팅에 기초하여 해머 어드레스 및 상기 해머 어드레스 관리의 긴급도와 관련된 상기 해머 어드레스의 타입을 결정할 수 있다.
메모리 컨트롤러(30)의 스케쥴러(55)는 상기 해머 어드레스의 타입에 따라 서로 다른 커맨드 프로토콜로 해머 어드레스를 반도체 메모리 장치(200)에 전송할 수 있다(S330). 해머 어드레스의 관리가 권장되는 제1 타입의 해머 어드레스인 경우, 스케쥴러(55)는 제1 커맨드 프로토콜을 통하여 해머 어드레스를 반도체 메모리 장치(200)에 전송할 수 있다. 해머 어드레스의 관리가 즉시 요구되는 제2 타입의 해머 어드레스인 경우, 스케쥴러(55)는 제2 커맨드 프로토콜을 통하여 해머 어드레스를 반도체 메모리 장치(200)에 전송할 수 있다.
반도체 메모리 장치(200)는 커맨드 프로토콜에 기초하여 해머 어드레스에 상응하는 메모리 셀 로우와 물리적으로 인접한 빅팀 메모리 셀 로우들에 대하여 해머 리프레쉬 동작을 수행한다(S350).
도 27은 본 발명의 실시예들에 따른 반도체 메모리 장치를 보여주는 예시적인 블록도이다.
도 27을 참조하면, 반도체 메모리 장치(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)를 포함할 수 있다. 셀 코어(821)는 DRAM 셀 구조를 가지는 복수의 메모리 셀들을 포함할 수 있다.
리프레쉬 제어 회로(825)는 도 11의 리프레쉬 제어 회로(400)를 채용하여 메모리 컨트롤러(30)로부터 해머 어드레스를 수신하고, 해머 어드레스의 타입에 따라 서로 다른 수의 빅팀 메모리 셀 로우들에 대한 해머 리프레쉬 동작을 수행할 수 있다.
버퍼 다이(810)는 상기 복수의 TSV 라인들을 통해 수신되는 전송 데이터에 전송 에러가 발생된 경우에 전송 패리티 비트들을 이용하여 전송 에러를 정정함에 의해 에러 정정된 데이터를 생성하는 비아 ECC 엔진(812)을 포함할 수 있다.
버퍼 다이(810)는 또한 클럭 관리 유닛(814) 및 데이터 입출력 버퍼(816)를 포함할 수 있다. 클럭 관리 유닛(814)은 도 8의 클럭 교정 회로(610) 클럭 생성 회로(630)를 포함하여 데이터 클럭 신호(WCK)를 기초로 위상 스큐가 교정된 조정 클럭 신호들을 생생하고, 조정 클럭 신호들을 기초로 출력 클럭 신호(OCLK)를 생성할 수 있다. 데이터 입출력 버퍼(816)는 출력 클럭 신호(OCLK)게 기초하여 제2 타입 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)를 통해 외부의 메모리 컨트롤러에 연결될 수 있다.
본 발명의 실시예들에서는 도 27에서와 같이 메모리 다이에는 셀 코어 ECC 엔진을 설치하고, 버퍼 다이에는 비아 ECC 엔진을 설치함으로써 소프트 데이터 페일의 검출 및 정정을 검증할 수 있다. 소프트 데이터 페일은 쓰루 실리콘 비아 라인들을 통해 데이터가 전송될 시에 노이즈에 기인하여 발생된 전송 에러를 포함할 수 있다.
도 28은 본 발명의 실시예들에 따른 스택형 메모리 장치를 포함하는 반도체 패키지의 예를 나타내는 구조도이다.
도 28을 참조하면, 반도체 패키지(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) 내부로 제공될 수 있다.
본 발명은 복수의 휘발성 메모리 셀들을 포함하는 반도체 메모리 장치를 사용하는 다양한 시스템에 적용될 수 있다. 즉 본 발명은 스마트 폰, 내비게이션 시스템, 노트북 컴퓨터, 데스크 탑 컴퓨터, 게임 콘솔 등과 같은 반도체 메모리 장치를 동작 메모리로 사용하는 다양한 시스템에 적용될 수 있다.
상술한 바와 같이, 본 발명의 실시예들을 참조하여 설명하였지만, 해당 기술 분야에서 통상의 지식을 가진 자는 하기의 특허청구범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 것이다.

Claims (20)

  1. 반도체 메모리 장치를 제어하는 메모리 컨트롤러로서,
    상기 반도체 메모리 장치의 복수의 메모리 셀 로우들의 액세스와 관련된 액세스 어드레스들을 각각 카운팅하여 카운팅 값들을 내부에 저장하고, 상기 카운팅 값들에 기초하여 상기 메모리 셀 로우들 중 집중적으로 액세스되는 적어도 하나의 메모리 셀 로우와 관련되는 해머 어드레스 및 상기 해머 어드레스 관리의 긴급도와 관련된 상기 해머 어드레스의 타입을 결정하는 로우 해머 관리 회로; 및
    상기 해머 어드레스의 타입에 기초하여 서로 다른 커맨드 프로토콜을 통하여 상기 해머 어드레스를 상기 반도체 메모리 장치에 전송하는 스케쥴러를 포함하는 메모리 컨트롤러.
  2. 제1항에 있어서, 상기 로우 해머 관리 회로는
    상기 메모리 셀 로우들 중 현재 액세스되는 타겟 메모리 셀 로우와 관련된 타겟 액세스 어드레스에 대한 제1 카운팅 값이 제1 기준 횟수 이상인 것에 응답하여 상기 타겟 액세스 어드레스를 제1 타입의 해머 어드레스로 판단하고,
    상기 타겟 액세스 어드레스에 대한 상기 제1 카운팅 값이 상기 제1 기준 회수보다 큰 제2 기준 횟수 이상이 것에 응답하여 상기 타겟 액세스 어드레스를 제2 타입의 해머 어드레스로 판단하고,
    상기 제1 타입의 해머 어드레스는 상기 해머 어드레스와 관리가 권장되고 상기 제2 타입의 해머 어드레스는 상기 해머 어드레스의 관리가 즉시인 것을 특징으로 하는 메모리 컨트롤러.
  3. 제2항에 있어서,
    상기 스케쥴러는 상기 반도체 메모리 장치의 액세스 동작을 위한 연속적인 제1 액티브 커맨드 및 제2 액티브 커맨드를 이용하여 상기 타겟 액세스 어드레스를 상기 반도체 메모리 장치에 제공하고,
    상기 제2 액티브 커맨드 이후의 제1 후속 커맨드를 이용하여 상기 타겟 액세스 어드레스가 상기 해머 어드레스에 해당함을 상기 반도체 메모리 장치에 통지하는 것을 특징으로 하는 메모리 컨트롤러.
  4. 제3항에 있어서,
    상기 제1 후속 커맨드는 상기 제2 액티브 커맨드 이후에 상기 메모리 컨트롤러가 상기 반도체 메모리 장치에 인가하는 프리차지 커맨드이고,
    상기 스케쥴러는 상기 프리차지 커맨드의 제1 내지 제7 커맨드/어드레스 신호들 중 제6 커맨드/어드레스 신호를 로우 레벨로 설정하여 상기 액세스 어드레스가 상기 해머 어드레스에 해당함을 통지하는 것을 특징으로 하는 메모리 컨트롤러.
  5. 제3항에 있어서,
    상기 제1 후속 커맨드는 상기 제2 액티브 커맨드 이후에 상기 메모리 컨러가 상기 반도체 메모리 장치에 인가하는 오토 프리차지를 포함하는 기입 커맨드 또는 오토 프리차지를 포함하는 독출 커맨드이고,
    상기 스케쥴러는 상기 기입 커맨드 또는 상기 독출 커맨드의 제1 내지 제7 커맨드/어드레스 신호들 중 제7 커맨드/어드레스 신호의 오토 프리차지 정보를 이용하여 상기 타겟 액세스 어드레스가 상기 해머 어드레스에 해당함을 통지하는 것을 특징으로 하는 메모리 컨트롤러.
  6. 제3항에 있어서,
    상기 해머 어드레스가 상기 제2 타입인 것에 응답하여 상기 스케쥴러는 상기 제1 후속 커맨드 이후에 다른 커맨드의 개재없이 리프레쉬 관리 커맨드를 상기 반도체 메모리 장치에 인가하여 상기 반도체 메모리 장치가 상기 해머 어드레스에 상응하는 메모리 셀 로우에 물리적으로 인접한 빅팀(victim) 메모리 셀 로우들에 대하여 해머 리프레쉬 동작을 수행하도록 하는 것을 특징으로 하는 메모리 컨트롤러.
  7. 제3항에 있어서,
    상기 해머 어드레스가 상기 제1 타입인 것에 응답하여 상기 스케쥴러는 상기 후속 제1 커맨드 이후에 제2 후속 커맨드를 상기 반도체 메모리 장치에 인가하고 상기 반도체 메모리 장치는 오토 리프레쉬 커맨드 또는 셀프 리프레쉬 진입 커맨드에 응답하여 상기 해머 어드레스에 상응하는 메모리 셀 로우에 물리적으로 인접한 빅팀 메모리 셀 로우들에 대하여 해머 리프레쉬 동작을 수행하는 것을 특징으로 하는 메모리 컨트롤러.
  8. 제1항에 있어서, 상기 로우 해머 관리 회로는
    상기 액세스와 관련된 상기 액세스 어드레스들과 상기 액세스 어드레스들 각각에 대응되는 상기 카운팅 값들을 저장하는 액세스 스토리지; 및
    상기 액세스 스토리지를 제어하고, 상기 카운팅 값들에 기초하여 상기 해머 어드레스와 상기 해머 어드레스의 타입을 결정하는 액세스 스토리지 컨트롤러를 포함하는 메모리 컨트롤러.
  9. 제8항에 있어서, 상기 액세스 스토리지 컨트롤러는
    상기 메모리 셀 로우들 중 현재 액세스되는 타겟 메모리 셀 로우와 관련된 타겟 액세스 어드레스에 타겟 액세스 어드레스의 타겟 로우 어드레스를 상기 액세스 스토리지에 저장된 로우 어드레스들 각각과 비교하여 매치 신호를 생성하는 어드레스 비교기;
    상기 매치 신호에 기초하여 카운팅 값을 생성하고, 상기 카운팅 값을 상기 액세스 스토리지에 저장하는 카운터;
    상기 액세스 스토리지에 연결되고, 상기 매치 신호에 기초하여 선택적으로 상기 타겟 로우 어드레스를 상기 액세스 스토리지에 저장하고, 상기 타겟 로우 어드레스를 제1 기준 횟수 및 제2 기준 횟수와 비교하여 비교 신호를 생성하고, 상기 비교에 기초하여 상기 해머 어드레스를 결정하고, 상기 해머 어드레스와 상기 비교 신호를 상기 스케쥴러로 제공하는 모니터 로직을 포함하는 것을 특징으로 하는 메모리 컨트롤러.
  10. 제9항에 있어서,
    상기 모니터 로직은 상기 매치 신호가 상기 타겟 로우 어드레스가 상기 액세스 스토리지에 저장된 로우 어드레스들과 일치하지 않음을 나타내는 것에 응답하여 상기 타겟 로우 어드레스를 상기 액세스 스토리지에 저장하는 것을 특징으로 하는 메모리 컨트롤러.
  11. 제9항에 있어서,
    상기 스케쥴러는 상기 비교 신호가 상기 타겟 로우 어드레스와 관련된 상기 카운팅 값이 상기 제1 기준 횟수 이상이고, 상기 제2 기준 횟수보다 작음을 나타내는 것에 응답하여 제1 커맨드 프로토콜을 통하여 상기 타겟 로우 어드레스가 상기 제1 타입의 해머 어드레스임을 상기 반도체 메모리 장치에 통지하는 것을 특징으로 하는 메모리 컨트롤러.
  12. 제9항에 있어서,
    상기 스케쥴러는 상기 비교 신호가 상기 타겟 로우 어드레스와 관련된 상기 카운팅 값이 상기 제2 기준 횟수 이상임을 나타내는 것에 응답하여 제1 커맨드 프로토콜과는 다른 제2 커맨드 프로토콜을 통하여 상기 타겟 로우 어드레스가 상기 제2 타입의 해머 어드레스임을 상기 반도체 메모리 장치에 통지하는 것을 특징으로 하는 메모리 컨트롤러.
  13. 각각이 복수의 휘발성 메모리 셀들을 구비하는 복수의 메모리 셀 로우들을 구비하는 메모리 셀 어레이를 포함하는 반도체 메모리 장치; 및
    상기 복수의 메모리 셀 로우들의 액세스와 관련된 액세스 어드레스들을 각각 카운팅하고, 상기 카운팅에 기초하여 상기 복수의 메모리 셀 로우들 중 집중적으로 액세스되는 적어도 하나의 메모리 셀 로우와 관련되는 해머 어드레스 및 상기 해머 어드레스 관리의 긴급도와 관련된 상기 해머 어드레스의 타입을 결정하고, 상기 해머 어드레스의 타입에 기초하여 서로 다른 커맨드 프로토콜을 통하여 상기 해머 어드레스를 상기 반도체 메모리 장치에 전송하는 메모리 컨트롤러를 포함하는 메모리 시스템.
  14. 제13항에 있어서, 상기 메모리 컨트롤러는
    상기 액세스 어드레스들을 각각 카운팅하여 카운팅 값들을 내부에 저장하고, 상기 카운팅 값들에 기초하여 상기 해머 어드레스 및 상기 해머 어드레스의 타입을 결정하는 로우 해머 관리 회로; 및
    상기 해머 어드레스의 타입에 기초하여 상기 서로 다른 커맨드 프로토콜을 통하여 상기 해머 어드레스를 상기 반도체 메모리 장치에 전송하는 스케쥴러를 포함하고,
    상기 로우 해머 관리 회로는
    상기 액세스 어드레스들 중 타겟 액세스 어드레스에 대한 제1 카운팅 값이 제1 기준 횟수 이상인 것에 응답하여 상기 타겟 액세스 어드레스를 제1 타입의 해머 어드레스로 판단하고,
    상기 타겟 액세스 어드레스에 대한 상기 제1 카운팅 값이 상기 제1 기준 횟수보다 큰 제2 기준 횟수 이상이 것에 응답하여 상기 제1 액세스 어드레스를 제2 타입의 해머 어드레스로 판단하고,
    상기 제1 타입의 해머 어드레스는 상기 해머 어드레스와 관리가 권장되고 상기 제2 타입의 해머 어드레스는 상기 해머 어드레스의 관리가 즉시인 것을 특징으로 하는 메모리 시스템.
  15. 제14항에 있어서,
    상기 스케쥴러는 상기 반도체 메모리 장치의 액세스 동작을 위한 연속적인 제1 액티브 커맨드 및 제2 액티브 커맨드를 이용하여 상기 액세스 어드레스를 상기 반도체 메모리 장치에 제공하고,
    상기 제2 액티브 커맨드 이후의 제1 후속 커맨드를 이용하여 상기 액세스 어드레스가 상기 해머 어드레스에 해당함을 상기 반도체 메모리 장치에 통지하고,
    상기 스케쥴러는 상기 반도체 메모리 장치의 액세스 동작을 위한 연속적인 제1 액티브 커맨드 및 제2 액티브 커맨드를 이용하여 상기 타겟 액세스 어드레스를 상기 반도체 메모리 장치에 제공하고,
    상기 제2 액티브 커맨드 이후의 제1 후속 커맨드를 이용하여 상기 액세스 어드레스가 상기 해머 어드레스에 해당함을 상기 반도체 메모리 장치에 통지하는 것을 특징으로 하는 메모리 시스템.
  16. 제15항에 있어서,
    상기 반도체 메모리 장치는 상기 제1 후속 커맨드에 포함되는 해머 플래그 정보에 기초하여 상기 제1 액티브 커맨드 및 상기 제2 액티브 커맨드에 수반되는 상기 타겟 액세스 어드레스를 상기 해머 어드레스로서 저장할지 여부를 결정하는 것을 특징으로 하는 메모리 시스템.
  17. 제14항에 있어서,
    상기 스케쥴러는 상기 해머 어드레스가 상기 제2 타입인 것에 응답하여 상기 제1 후속 커맨드 이후에 다른 커맨드의 개재없이 직접 리프레쉬 관리 커맨드를 상기 반도체 메모리 장치에 인가하고,
    상기 반도체 메모리 장치는 상기 직접 리프레쉬 관리 커맨드에 응답하여 상기 해머 어드레스에 상응하는 메모리 셀 로우에 물리적으로 인접한 빅팀 메모리 셀 로우들에 대하여 해머 리프레쉬 동작을 수행하는 것을 특징으로 하는 메모리 시스템.
  18. 제14항에 있어서,
    상기 스케쥴러는 상기 해머 어드레스가 상기 제1 타입인 것에 응답하여 상기 후속 커맨드 이후에 제2 후속 커맨드를 상기 반도체 메모리 장치에 인가하고,
    상기 반도체 메모리 장치는 오토 리프레쉬 커맨드 또는 셀프 리프레쉬 커맨드에 응답하여 상기 해머 어드레스에 상응하는 메모리 셀 로우에 물리적으로 인접한 빅팀 메모리 셀 로우들에 대하여 해머 리프레쉬 동작을 수행하는 것을 특징으로 하는 메모리 시스템.
  19. 제13항에 있어서, 상기 반도체 메모리 장치는
    상기 메모리 셀 로우들에 대한 리프레쉬 동작과 상기 해머 어드레스와 관련된 해머 리프레쉬 동작을 수행하는 리프레쉬 제어 회로를 포함하고,
    상기 리프레쉬 제어 회로는
    상기 커맨드 프로토콜에 기초한 해머 이벤트 검출 신호 및 리프레쉬 관리 신호에 응답하여 타이밍 제어 신호 및 상기 해머 어드레스의 타입을 나타내는 타입 신호를 생성하는 리프레쉬 제어 로직;
    상기 메모리 컨트롤러로부터 제공되는 상기 해머 어드레스를 저장하고, 상기 타이밍 제어 신호에 기초하여 상기 해머 어드레스를 출력하는 해머 어드레스 스토리지; 및
    상기 해머 어드레스 스토리지로부터 출력되는 상기 해머 어드레스에 상기 해머 어드레스에 상응하는 메모리 셀 로우에 물리적으로 인접한 빅팀 메모리 셀 로우들의 어드레스들을 나타내는 해머 리프레쉬 어드레스들을 생성하는 맵퍼를 포함하고,
    상기 맵퍼는 상기 타입 신호에 기초하여
    상기 해머 어드레스의 타입이 제1 타입인 것에 응답하여 제1 수의 상기 해머 리프레쉬 어드레스들을 생성하고,
    상기 해머 어드레스의 타입이 제2 타입인 것에 응답하여 상기 제1 수보다 큰 제2 수의 상기 해머 리프레쉬 어드레스들을 생성하는 것을 특징으로 하는 메모리 시스템.
  20. 각각이 복수의 휘발성 메모리 셀들을 구비하는 복수의 메모리 셀 로우들을 구비하는 메모리 셀 어레이를 포함하는 반도체 메모리 장치; 및
    상기 복수의 메모리 셀 로우들의 액세스와 관련된 액세스 어드레스들을 각각 카운팅하고, 상기 카운팅에 기초하여 상기 복수의 메모리 셀 로우들 중 집중적으로 액세스되는 적어도 하나의 메모리 셀 로우와 관련되는 해머 어드레스 및 상기 해머 어드레스 관리의 긴급도와 관련된 상기 해머 어드레스의 타입을 결정하고, 상기 해머 어드레스의 타입에 기초하여 서로 다른 커맨드 프로토콜을 통하여 상기 해머 어드레스를 상기 반도체 메모리 장치에 전송하는 메모리 컨트롤러를 포함하고,
    상기 메모리 컨트롤러는
    상기 액세스 어드레스들을 각각 카운팅하여 카운팅 값들을 내부에 저장하고, 상기 카운팅 값들에 기초하여 상기 해머 어드레스 및 상기 해머 어드레스의 타입을 결정하는 로우 해머 관리 회로; 및
    상기 해머 어드레스의 타입에 기초하여 상기 서로 다른 커맨드 프로토콜을 통하여 상기 해머 어드레스를 상기 반도체 메모리 장치에 전송하는 스케쥴러를 포함하고,
    상기 반도체 메모리 장치는
    상기 해머 어드레스에 기초하여 상기 해머 어드레스에 상응하는 메모리 셀 로우에 물리적으로 인접한 빅팀 메모리 셀 로우들의 어드레스들을 나타내는 해머 리프레쉬 어드레스 신호를 생성하는 리프레쉬 제어 회로를 포함하는 메모리 시스템.
KR1020210114407A 2021-08-30 2021-08-30 메모리 컨트롤러 및 메모리 시스템 KR20230032052A (ko)

Priority Applications (5)

Application Number Priority Date Filing Date Title
KR1020210114407A KR20230032052A (ko) 2021-08-30 2021-08-30 메모리 컨트롤러 및 메모리 시스템
US17/692,447 US20230067144A1 (en) 2021-08-30 2022-03-11 Memory controller and memory system including the same
TW111111084A TWI828094B (zh) 2021-08-30 2022-03-24 記憶體控制器及包括其的記憶體系統
EP22166491.5A EP4141872A1 (en) 2021-08-30 2022-04-04 Memory controller and memory system including the same
CN202210541085.9A CN115731983A (zh) 2021-08-30 2022-05-17 存储器控制器和包括其的存储器系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020210114407A KR20230032052A (ko) 2021-08-30 2021-08-30 메모리 컨트롤러 및 메모리 시스템

Publications (1)

Publication Number Publication Date
KR20230032052A true KR20230032052A (ko) 2023-03-07

Family

ID=81326066

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020210114407A KR20230032052A (ko) 2021-08-30 2021-08-30 메모리 컨트롤러 및 메모리 시스템

Country Status (5)

Country Link
US (1) US20230067144A1 (ko)
EP (1) EP4141872A1 (ko)
KR (1) KR20230032052A (ko)
CN (1) CN115731983A (ko)
TW (1) TWI828094B (ko)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11869567B2 (en) * 2021-03-15 2024-01-09 Changxin Memory Technologies, Inc. Refresh control circuit and memory
KR20230056339A (ko) * 2021-10-20 2023-04-27 에스케이하이닉스 주식회사 스마트 리프레쉬 동작을 수행하기 위한 메모리 장치 및 이를 포함하는 메모리 시스템
CN115906087B (zh) * 2023-03-09 2023-07-07 长鑫存储技术有限公司 行锤攻击保护方法与存储器

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20160035444A (ko) * 2014-09-23 2016-03-31 에스케이하이닉스 주식회사 스마트 리프레쉬 장치
JP2017182854A (ja) * 2016-03-31 2017-10-05 マイクロン テクノロジー, インク. 半導体装置
US10490251B2 (en) * 2017-01-30 2019-11-26 Micron Technology, Inc. Apparatuses and methods for distributing row hammer refresh events across a memory device
KR102308778B1 (ko) * 2017-05-24 2021-10-05 삼성전자주식회사 디스터브 로우를 케어하는 메모리 장치 및 그 동작방법
JP6622843B2 (ja) * 2018-04-19 2019-12-18 華邦電子股▲ふん▼有限公司Winbond Electronics Corp. メモリデバイス及びそのリフレッシュ方法
US11152050B2 (en) * 2018-06-19 2021-10-19 Micron Technology, Inc. Apparatuses and methods for multiple row hammer refresh address sequences
US10943637B2 (en) * 2018-12-27 2021-03-09 Micron Technology, Inc. Apparatus with a row-hammer address latch mechanism
US11264079B1 (en) * 2020-12-18 2022-03-01 Micron Technology, Inc. Apparatuses and methods for row hammer based cache lockdown

Also Published As

Publication number Publication date
TWI828094B (zh) 2024-01-01
EP4141872A1 (en) 2023-03-01
US20230067144A1 (en) 2023-03-02
CN115731983A (zh) 2023-03-03
TW202324404A (zh) 2023-06-16

Similar Documents

Publication Publication Date Title
CN108154895B (zh) 执行锤击刷新操作和关联操作的存储器设备和存储器系统
US11681579B2 (en) Semiconductor memory devices and memory systems including the same
EP4141872A1 (en) Memory controller and memory system including the same
US20230141789A1 (en) Semiconductor memory device and method of operating the same
US11508429B2 (en) Memory system performing hammer refresh operation and method of controlling refresh of memory device
US20230185460A1 (en) Semiconductor memory device and methods of operation
US11955159B2 (en) Semiconductor memory device and memory system including the same
US20230420033A1 (en) Semiconductor memory device and memory system including the same
US11901025B2 (en) Semiconductor memory device and method of operating semiconductor memory device
US20230326511A1 (en) Semiconductor memory device and memory system including the same
CN117316231A (zh) 半导体存储器件和包括该半导体存储器件的存储器系统
EP4312216A1 (en) Semiconductor memory device and memory system including the same
US20240038292A1 (en) Semiconductor memory device and memory system including the same
EP4312218A1 (en) Semiconductor memory device and memory system including the same
US20230418487A1 (en) Semiconductor memory devices and memory systems including the same
KR20230068232A (ko) 반도체 메모리 장치 및 이의 동작 방법
KR20230175081A (ko) 반도체 메모리 장치 및 메모리 시스템
KR20230014032A (ko) 반도체 메모리 장치 및 메모리 시스템
CN117457047A (zh) 半导体存储器装置和包括半导体存储器装置的存储器系统
KR20240014439A (ko) 반도체 메모리 장치 및 이를 포함하는 메모리 시스템
TW202410039A (zh) 半導體記憶體裝置和包括其的記憶體系統
KR20240002114A (ko) 반도체 메모리 장치 및 메모리 시스템
KR20240057588A (ko) 반도체 메모리 장치 및 이를 포함하는 메모리 시스템
KR20230145889A (ko) 반도체 메모리 장치 및 메모리 시스템
CN117275540A (zh) 半导体存储器装置和包括半导体存储器装置的存储器系统