KR20150001570A - 리프레쉬 동작을 제어하는 버퍼 칩을 장착하는 메모리 모듈 - Google Patents

리프레쉬 동작을 제어하는 버퍼 칩을 장착하는 메모리 모듈 Download PDF

Info

Publication number
KR20150001570A
KR20150001570A KR1020130110621A KR20130110621A KR20150001570A KR 20150001570 A KR20150001570 A KR 20150001570A KR 1020130110621 A KR1020130110621 A KR 1020130110621A KR 20130110621 A KR20130110621 A KR 20130110621A KR 20150001570 A KR20150001570 A KR 20150001570A
Authority
KR
South Korea
Prior art keywords
refresh
memory
command
chip
address
Prior art date
Application number
KR1020130110621A
Other languages
English (en)
Other versions
KR102171260B1 (ko
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 US14/299,548 priority Critical patent/US20150003172A1/en
Publication of KR20150001570A publication Critical patent/KR20150001570A/ko
Application granted granted Critical
Publication of KR102171260B1 publication Critical patent/KR102171260B1/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/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/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/4093Input/output [I/O] data interface arrangements, e.g. data buffers
    • 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 
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C5/00Details of stores covered by group G11C11/00
    • G11C5/02Disposition of storage elements, e.g. in the form of a matrix array
    • G11C5/04Supports for storage elements, e.g. memory modules; Mounting or fixing of storage elements on such supports

Abstract

본 발명은 리프레쉬 동작을 제어하는 버퍼 칩을 장착하는 메모리 모듈에 대하여 개시된다. 버퍼 칩은 메모리 콘트롤러와 무관하게 메모리 칩들의 리프레쉬 동작을 제어하는 히든 리프레쉬 명령을 발행할 수 있다. 버퍼 칩은 히든 리프레쉬 명령에 따라 메모리 칩들이 리프레쉬 중임을 나타내는 웨이트 신호를 출력할 수 있다. 버퍼 칩은 히든 리프레쉬 명령에 따라 메모리 칩들의 뱅크들을 뱅크별로 또는 뱅크 그룹별로 리프레쉬할 수 있다. 버퍼 칩은 히든 리프레쉬 명령에 따라 메모리 칩들의 위크 셀 로우를 리프레쉬 주기보다 짧은 주기로 리프레쉬할 수 있다. 버퍼 칩은 모니터링된 온도 정보에 따라 메모리 칩들의 리프레쉬 주기를 변경할 수 있다.

Description

리프레쉬 동작을 제어하는 버퍼 칩을 장착하는 메모리 모듈 {Buffer chip controlling refresh operation of memory device mounted memory module}
본 발명은 메모리 시스템에 관한 것으로, 특히 메모리 모듈에 장착되는 버퍼 칩에서 메모리 칩의 리프레쉬 동작을 제어하여 메모리 시스템의 성능을 향상시키는 것에 관한 것이다.
DRAM 과 같은 휘발성 메모리 장치는 저장된 데이터를 유지하기 위하여 리프레쉬 동작을 수행한다. DRAM 메모리 용량이 증가할수록 메모리 셀의 리프레쉬 시간 (tRFC)이 길어지고 있다. 메모리 셀의 리프레쉬 시간 (tRFC)이 길어짐에 따라, 전체 메모리 셀들을 리프레쉬하는 시간도 길어진다. 리프레쉬 수행 동안에는 DRAM 억세스 동작이 블락킹(blocking) 되기 때문에, 메모리 시스템의 성능이 저하될 수 있다. 메모리 시스템의 성능 향상을 위하여, DRAM의 리프레쉬 동작을 효율적으로 제어할 수 있는 방안이 요구된다.
본 발명이 이루고자 하는 기술적 과제는, 메모리 칩의 리프레쉬 동작을 제어하는 버퍼 칩과 이를 장착하는 메모리 모듈을 제공하는 데 있다.
본 발명의 일면에 따른 메모리 모듈은, 다수개의 메모리 칩들과, 메모리 칩들의 리프레쉬 동작을 제어하는 히든 리프레쉬 명령을 발행하고, 히든 리프레쉬 명령에 따라 메모리 칩이 리프레쉬 중임을 나타내는 웨이트 신호를 발생하여 메모리 콘트롤러로 출력하는 버퍼 칩을 포함한다.
본 발명의 실시예들에 따라, 버퍼 칩은 메모리 콘트롤러와 무관하게 히든 리프레쉬 명령을 발행할 수 있다.
본 발명의 실시예들에 따라, 웨이트 신호는 메모리 모듈에 할당된 웨이트 신호 핀을 통하여 메모리 콘트롤러로 전달될 수 있다.
본 발명의 실시예들에 따라, 웨이트 신호는 메모리 칩이 리프레쉬 중일 때 상기 메모리 콘트롤러로부터 수신된 커맨드로부터 리프레쉬 레이턴시 후에 발생될 수 있다.
본 발명의 실시예들에 따라, 웨이트 신호를 수신하는 메모리 콘트롤러는 웨이트 신호에 응답하여 웨이트 신호 수신 이전에 발행했던 커맨드를 재발행할 수 있다. 재발행되는 커맨드는 이전에 발행했던 커맨드로부터 메모리 셀을 리프레쉬하는 데 소요되는 리프레쉬 시간 후에 발행될 수 있다.
본 발명의 실시예들에 따라, 웨이트 신호를 수신하는 메모리 콘트롤러는 웨이트 신호 수신 이전에 발행했던 제1 커맨드로부터 제1 시간 지연 후, 제1 커맨드와 연관되는 제2 커맨드를 발행할 수 있다. 제1 시간은 메모리 셀 하나를 리프레쉬하는 데 소요되는 리프레쉬 시간에다가 라스-투-카스 지연 시간(tRCD)을 합한 시간으로 설정될 수 있다.
본 발명의 실시예들에 따라, 웨이트 신호는 메모리 모듈에 할당된 데이터 입출력 핀을 통하여 메모리 콘트롤러로 전달될 수 있다.
본 발명의 실시예들에 따라, 웨이트 신호는 메모리 콘트롤러로부터 수신되는 커맨드가 메모리 칩의 리프레쉬 동작으로 인해 지연될 수 있음을 알리는 커맨드 식별 신호로 출력되어 데이터 입출력 핀을 통해 메모리 콘트롤러로 전달될 수 있다. 커맨드 식별 신호는 메모리 콘트롤러의 독출 커맨드에 응답하여 데이터 입출력 핀으로 출력되는 독출 데이터에 이어서 출력될 수 있다.
본 발명의 다른 일면에 따른 메모리 모듈은 다수개의 메모리 칩들과, 메모리 칩들의 리프레쉬 동작을 제어하는 히든 리프레쉬 명령을 발행하고, 히든 리프레쉬 명령에 따라 메모리 칩의 뱅크 단위로 리프레쉬하는 버퍼 칩을 포함한다.
본 발명의 실시예들에 따라, 버퍼 칩은 메모리 칩들의 뱅크별 리프레쉬에 관한 정보를 프리차아지 커맨드에 실어서 메모리 칩들로 전달할 수 있다.
본 발명의 실시예들에 따라, 버퍼 칩은 메모리 칩의 뱅크들 중 액티브 동작 중이지 않은 뱅크를 우선적으로 리프레쉬하고, 나머지 뱅크들을 순차적으로 리프레쉬할 수 있다.
본 발명의 실시예들에 따라, 버퍼 칩은 메모리 칩의 뱅크들을 소정의 뱅크 그룹들로 나누어, 액티브 동작 중이지 않은 뱅크 그룹을 우선적으로 리프레쉬하고, 나머지 뱅크 그룹들을 순차적으로 리프레쉬할 수 있다.
본 발명의 또 다른 일면에 따른 메모리 모듈은 다수개의 메모리 칩들과, 메모리 칩들의 리프레쉬 동작을 제어하는 히든 리프레쉬 명령을 발행하고, 히든 리프레쉬 명령에 따라 메모리 칩의 위크 셀 로우를 리프레쉬 주기보다 짧은 주기로 리프레쉬하는 버퍼 칩을 포함한다.
본 발명의 실시예들에 따라, 버퍼 칩은 메모리 칩들의 위크 셀 로우 개수 정보를 저장할 수 있다.
본 발명의 실시예들에 따라, 메모리 칩들 각각은 해당 메모리 칩의 위크 셀 로우를 저장하는 어드레스 저장부를 포함할 수 있다.
본 발명의 실시예들에 따라, 메모리 칩 각각은 버퍼 칩에서 제공되는 선택 신호에 응답하여 리프레쉬 동작이 수행될 리프레쉬 어드레스를 발생하는 리프레쉬 어드레스 발생부를 포함할 수 있다. 리프레쉬 어드레스 발생부는 카운트 동작을 수행하여 리프레쉬 로우 어드레스를 발생하는 리프레쉬 카운터와, 선택 신호에 응답하여 리프레쉬 로우 어드레스 또는 위크 셀 로우 어드레스를 선택하여 리프레쉬 어드레스로 출력하는 어드레스 변환부를 포함할 수 있다.
본 발명의 실시예들에 따라, 리프레쉬 카운터는 버퍼 칩에서 제공되는 리셋 신호에 응답하여 초기화될 수 있다.
본 발명의 또 다른 일면에 따른 메모리 모듈은 다수개의 메모리 칩들과, 메모리 칩들의 리프레쉬 동작을 제어하는 히든 리프레쉬 명령을 발행하고, 히든 리프레쉬 명령에 따라 모니터링된 온도 정보에 따라 메모리 칩의 리프레쉬 주기를 변경하는 버퍼 칩을 포함한다.
본 발명의 실시예들에 따라, 버퍼 칩은 온도 센서를 포함하고 온도 센서로부터 온도 정보를 수신할 수 있다.
본 발명의 실시예들에 따라, 메모리 칩들 각각은 온도 센서를 포함하고, 버퍼 칩은 메모리 칩들의 온도 센서들로부터 온도 정보들을 수신할 수 있다.
본 발명의 실시예들에 따라, 버퍼 칩은 수신된 온도 정보들 중 가장 높은 온도 정보에 따라 메모리 칩들의 리프레쉬 주기를 변경할 수 있다.
본 발명의 실시예들에 따라, 버퍼 칩은 메모리 칩들 각각의 온도 정보에 따라 해당 메모리 칩의 리프레쉬 주기를 변경할 수 있다.
본 발명의 실시예들에 따라, 버퍼 칩은 온도 정보가 기준 온도보다 높을 경우, 메모리 칩들의 리프레쉬 주기를 기준 온도일 때의 리프레쉬 주기보다 짧게 변경할 수 있다.
본 발명의 또 다른 일면에 따른 메모리 모듈은 다수개의 메모리 칩들과, 메모리 칩들의 리프레쉬 동작을 제어하는 리프레쉬 명령을 발행하고 메모리 콘트롤러로부터 커맨드 신호와 어드레스 신호 중 적어도 하나의 신호를 수신하여 메모리 칩들로 전송하는 커맨드/어드레스 레지스터 칩을 포함한다.
본 발명의 실시예들에 따라, 커맨드/어드레스 레지스터 칩은 메모리 콘트롤러와 무관하게 리프레쉬 명령을 발행할 수 있다.
본 발명의 실시예들에 따라, 커맨드/어드레스 레지스터 칩은 온도 센서를 포함하고 온도 센서로부터 온도 정보를 수신할 수 있다.
본 발명의 실시예들에 따라, 메모리 칩들 각각은 온도 센서를 포함하고, 커맨드/어드레스 레지스터 칩은 메모리 칩들의 온도 센서들로부터 온도 정보들을 수신할 수 있다.
본 발명의 실시예들에 따라, 커맨드/어드레스 레지스터 칩은 수신된 온도 정보들 중 가장 높은 온도 정보에 따라 메모리 칩들의 리프레쉬 주기를 변경할 수 있다.
본 발명의 실시예들에 따라, 커맨드/어드레스 레지스터 칩은 메모리 칩들 각각의 온도 정보에 따라 해당 메모리 칩의 리프레쉬 주기를 변경할 수 있다.
본 발명의 실시예들에 따라, 커맨드/어드레스 레지스터 칩은 온도 정보가 기준 온도보다 높을 경우, 메모리 칩들의 리프레쉬 주기를 기준 온도일 때의 리프레쉬 주기보다 짧게 변경할 수 있다.
본 발명의 실시예들에 따라, 커맨드/어드레스 레지스터 칩은 리프레쉬 명령에 따라 메모리 칩이 리프레쉬 중임을 나타내는 웨이트 신호를 발생하여 메모리 콘트롤러로 출력할 수 있다.
상술한 본 발명의 메모리 모듈은 메모리 모듈 상의 버퍼 칩에서 메모리 칩들에 대한 리프레쉬 스케쥴링 권한을 갖고, 메모리 콘트롤러와 무관하게 메모리 칩들의 리프레쉬 동작을 제어하는 히든 리프레쉬 명령을 발행한다. 버퍼 칩의 히든 리프레쉬 명령에 따라 메모리 칩들의 리프레쉬 동작이 효율적으로 제어되어 메모리 시스템의 성능이 향상된다.
도 1은 본 발명의 실시예들에 따른 버퍼 칩을 포함하는 메모리 모듈을 보여주는 블락 다이어그램이다.
도 2a 내지 도 2c는 본 발명의 실시예들에 따른 메모리 모듈의 버스 경로 및 배선 형태를 설명하는 도면들이다.
도 3은 본 발명의 실시예들에 따른 버퍼 칩을 설명하는 도면이다.
도 4는 본 발명의 실시예들에 따른 버퍼 칩에 의해 히든 리프레쉬를 수행하는 메모리 칩을 설명하는 도면이다.
도 5는 본 발명의 실시예들에 따른 도 4의 리프레쉬 어드레스 발생부를 설명하는 제1 예의 도면이다.
도 6은 본 발명의 실시예들에 따른 도 4의 리프레쉬 어드레스 발생부를 설명하는 제2 예의 도면이다.
도 7은 본 발명의 실시예들에 따른 버퍼 칩에 의한 메모리 칩의 리프레쉬 방법을 설명하는 제1 예의 순서도이다.
도 8은 본 발명의 일실시예에 따른 메모리 칩의 리프레쉬 방법을 설명하는 제2 예의 순서도이다.
도 9는 본 발명의 실시예들에 따른 버퍼 칩에 의한 메모리 칩의 리프레쉬 방법을 설명하는 제3 예의 순서도이다.
도 10은 본 발명의 실시예들에 따른 버퍼 칩에 의한 메모리 칩의 리프레쉬 방법을 설명하는 제4 예의 순서도이다.
도 11 내지 도 14는 본 발명의 실시예들에 따른 버퍼 칩에 의한 메모리 칩의 리프레쉬 동작을 설명하는 타이밍도들이다.
도 15는 본 발명의 실시예들에 따른 버퍼 칩과 메모리 칩을 모바일 시스템에 응용한 예를 나타내는 블록도이다.
도 16는 본 발명의 실시예들에 따른 메모리 칩과 버퍼 칩을 장착한 메모리 모듈을 컴퓨팅 시스템에 응용한 예를 나타내는 블록도이다.
이하, 첨부한 도면을 참조하여 본 발명의 실시예에 대해 상세히 설명한다. 본 발명의 실시예는 당 업계에서 평균적인 지식을 가진 자에게 본 발명을 보다 완전하게 설명하기 위하여 제공되는 것이다. 본 발명은 다양한 변경을 가할 수 있고 여러 가지 형태를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세하게 설명하고자 한다. 그러나, 이는 본 발명을 특정한 개시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 각 도면을 설명하면서 유사한 참조부호를 유사한 구성요소에 대해 사용한다. 첨부된 도면에 있어서, 구조물들의 치수는 본 발명의 명확성을 기하기 위하여 실제보다 확대하거나 축소하여 도시한 것이다.
본 출원에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 명세서 상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성 요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 갖는다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
반도체 메모리 장치, 예컨대 DRAM (dynamic Random Access Memory) 칩의 메모리 셀은 셀 커패시터에 저장된 전하에 의하여 데이터를 기록하는 방식으로 동작한다. DRAM의 공정 스케일링이 지속됨에 따라, 셀 커패시터의 커패시턴스 값이 작아지고 있다. 또한, 셀 커패시터의 누설 전류가 발생되어, 독출 및 기입 동작이 없는 동안에도 시간이 흐름에 따라 셀 커패시터에 저장된 전하가 소멸되게 된다. 이에 따라, 비트 에러율 (BER: Bit Error Rate)이 증가함으로써, 메모리 셀에 저장된 데이터의 신뢰성이 저하될 수 있다. 이를 방지하기 위하여, DRAM은 메모리 셀에 저장된 데이터를 유지하기 위하여 리프레쉬 동작을 수행한다.
DRAM의 리프레쉬 동작이 필요한 소정의 시간 간격을 리프레쉬 주기 (tREF)라 정의한다. DRAM의 표준에는 8K개의 메모리 셀 로우들을 64ms 동안 리프레쉬하도록 또는 4K개의 메모리 셀 로우들을 32ms 동안 리프레쉬하도록 하는 리프레쉬 주기(tREF)에 대하여 규정하고 있다.
DRAM 메모리 용량이 증가할수록 리프레쉬 전류 소모가 증가하여 리프레쉬 전력 소모가 증가할 수 있다. 리프레쉬 전력 소모에 따른 전원 안정화 동작이 수반될 수 있다. 이에 따라, 메모리 셀 하나를 리프레쉬하는 데 소요되는 리프레쉬 시간 (tRFC)이 길어지고 있다. 리프레쉬 시간 (tRFC) 동안에는 DRAM의 독출 동작과 기입 동작을 포함하는 노멀 동작이 블락킹될 수 있다.
다수의 DRAMs을 PCB 상에 탑재하는 메모리 모듈은 메모리 콘트롤러에 의해 제어될수 있다. 메모리 콘트롤러와 메모리 모듈은 메모리 시스템을 구성할 수 있다. 최근 메모리 시스템의 고속화와 고용량화를 위해 메모리 모듈에 대한 연구와 활용이 증가하고 있다. 메모리 콘트롤러의 DRAM 억세스시, DRAM이 리프레쉬 중일 때에는 DRAM을 억세스할 수 없다. 이에 따라, 메모리 콘트롤러 입장에서 DRAM이 리프레쉬 종료 후 억세스 가능한 상태인지를 모니터링할 필요가 있다. 본 발명의 실시예들에서는 메모리 모듈에서 DRAM의 리프레쉬 동작을 제어하여 메모리 시스템의 성능이 향상될 수 있도록 한다.
도 1은 본 발명의 실시예들에 따른 메모리 모듈을 보여주는 블락 다이어그램이다.
도 1을 참조하면, 메모리 모듈(100)은 다수개의 메모리 칩들(400a-400h)과 버퍼 칩(300)을 포함한다. 메모리 모듈(100)은 LR-DIMM (Load Reduced Dual In-Line Memory Module) 또는 다른 메모리 모듈일 수 있다.
메모리 모듈(100)은 실제적으로 메모리 칩들(400a-400h)과 데이터를 주고받기 위한 데이터 버스, 데이터의 독출 또는 기입 동작을 지시하기 위한 커맨드/어드레스/클럭을 전송하는 제어 버스를 통하여 메모리 콘트롤러(120)와 연결될 수 있다. 메모리 콘트롤러(120)는 주로 CPU (Central Processing Unit)와 직접 연결될 수 있다. 다른 실시예로, 메모리 콘트롤러(120)는 CPU 자체의 일부분으로 제조될 수 있다. 메모리 콘트롤러(120)와 메모리 모듈(100)은 메모리 시스템을 구성할 수 있다.
버퍼 칩(300)은 메모리 콘트롤러(120)로부터 커맨드, 어드레스, 클럭 및 데이터를 수신하고, 수신된 커맨드, 어드레스, 클럭 및 데이터를 메모리 칩들(400a-400h)에 제공할 수 있다. 버퍼 칩(300)이 커맨드, 어드레스, 클럭 및 데이터를 모두 버퍼링하므로, 메모리 콘트롤러(120)는 버퍼 칩(300)의 로드(load)만을 구동함으로써 메모리 모듈(100)과 인터페이스할 수 있다.
버퍼 칩(300)은 메모리 콘트롤러(120)로부터 리프레쉬 커맨드를 수신하고, 메모리 칩들(400a-400h)의 리프레쉬 동작을 제어할 수 있다. 리프레쉬 동작에는 오토 리프레쉬 동작과 셀프 리프레쉬 동작을 포함할 수 있다. 오토 리프레쉬 동작은 실제적으로 주기적으로 인가되는 리프레쉬 커맨드(REF)에 응답하여 리프레쉬 로우 어드레스를 생성하고, 리프레쉬 로우 어드레스에 상응하는 메모리 셀 로우를 리프레쉬하는 동작이다. 셀프 리프레쉬 동작은 셀프 리프레쉬 진입 커맨드(SRE)에 응답하여 셀프 리프레쉬 모드로 진입하고, 셀프 리프레쉬 모드에서 빌트-인 타이머를 이용하여 메모리 셀 로우를 주기적으로 리프레쉬하는 동작이다.
버퍼 칩(300)은, 메모리 콘트롤러(120)의 리프레쉬 커맨드(REF, SRE)와는 별개로, 자체적으로 메모리 칩들(400a-400h)의 리프레쉬 동작을 제어하는 히든 리프레쉬 커맨드(HREF)를 발행할 수 있다. 히든 리프레쉬 커맨드(HREF)는 뱅크 어드레스와 함께 메모리 칩들(400a-400h)로 제공될 수 있다. 메모리 칩들(400a-400h)은 히든 리프레쉬 커맨드(HREF)에 응답하여 뱅크 어드레스에 해당하는 뱅크에 대하여 리프레쉬 로우 어드레스를 생성하고, 리프레쉬 로우 어드레스에 상응하는 메모리 셀 로우를 리프레쉬할 수 있다.
버퍼 칩(300)은, 메모리 칩들(400a-400h)이 히든 리프레쉬 명령(HREF)에 응답하여 리프레쉬 동작을 수행하는 동안 메모리 콘트롤러(120)로부터 액티브 명령(ACT)을 수신하게 되면, 메모리 칩들(400a-400h)이 리프레쉬 동작 중임을 나타내는 신호(WAIT)를 메모리 콘트롤러(120)로 출력할 수 있다. 메모리 칩들(400a-400h)은 리프레쉬 동작 중에는 메모리 콘트롤러(120)의 액티브 명령(ACT)에 따른 동작을 수행하지 못할 수 있다. 이에 따라, 액티브 명령(ACT)에 대한 대기 상태임을 알리는 웨이트 신호(WAIT)를 출력할 수 있다.
버퍼 칩(300)의 웨이트 신호(WAIT)를 메모리 콘트롤러(120)로 전달하기 위하여, 메모리 모듈(100)에 새로운 핀을 할당하거나 기존에 존재하는 입출력 핀을 사용할 수 있다. 새로운 핀을 할당하는 경우에는 1개의 핀만을 이용하여 웨이트 신호(WAIT)를 메모리 콘트롤러(120)로 전달하거나, 여러 개의 핀을 할당한 병렬 통신 또는 하나의 핀을 할당한 직렬 통신 등으로 웨이트 신호(WAIT)를 메모리 콘트롤러(120)로 전달할 수 있다.
메모리 콘트롤러(120)는 메모리 모듈(100)의 버퍼 칩(300)에서 출력되는 웨이트 신호(WAIT)를 수신하고, 웨이트 신호(WAIT)에 응답하여 소정 시간 지연 후 액티브 명령(ACT)을 재발행할 수 있다. 또한, 메모리 콘트롤러(120)는 웨이트 신호(WAIT)를 수신하고, 액티브 명령(ACT)에 따른 메모리 칩들(400a-400h)의 동작이 소정 시간 지연 후에 수행될 것임을 기대할 수 있다.
도 2a 내지 도 2c는 본 발명의 실시예들에 따른 메모리 모듈의 버스 경로 및 배선 형태를 설명하는 도면들이다.
도 2a를 참조하면, 메모리 모듈(100)은 버스(210, 220)에 의해 메모리 콘트롤러(120)와 연결될 수 있다. 메모리 모듈(100)은 메모리 시스템의 소켓 커넥터에 삽입될 수 있다. 메모리 모듈(100)의 전기 콘넥터 (또는 핀, 210a, 220a)는 소켓 커넥터 내의 전기 콘택과 접속될 수 있다. 전기 콘넥터(210a, 220a) 및 전기 콘택과 연결되는 버스(210, 220)는 메모리 모듈(100) 상의 버퍼 칩(300)과 메모리 칩들(400a-400h)을 억세스할 수 있게 한다. 버스(210, 220)는 데이터 버스(210)와 제어 버스(220)로 크게 구분될 수 있다. 데이터 버스(210)는 데이터 입출력 신호(DQ) 라인을 포함하고, 제어 버스(220)는 커맨드(CMD) 라인, 어드레스(ADDR) 라인 중 적어도 하나를 포함할 수 있다.
데이터 버스(210)와 제어 버스(220)는 버퍼 칩(300)과 연결될 수 있다. 버퍼 칩(300)은 버퍼 칩(300)의 포트로부터 메모리 칩들(400a-400h)의 포트로의 제1 및 제2 버스(230, 240a-240h)에 의해 메모리 칩들(400a-400h)과 연결될 수 있다. 버퍼 칩(300)은 제어 버스(220)에 의해 메모리 콘트롤러(120)로부터 수신된 커맨드(CMD) 및 어드레스(ADDR)을 제1 버스(230)를 통해 메모리 칩들(400a-400h)로 전달할 수 있다. 또한, 버퍼 칩(300)은 히든 리프레쉬 커맨드(HREF)를 제1 버스(230)를 통해 통해 메모리 칩들(400a-400h)로 전달할 수 있다.
버퍼 칩(300)은 데이터 버스(210)에 의해 메모리 콘트롤러(120)로부터 수신된 데이터(DQ)를 제2 버스(240a-240h)를 통해 메모리 칩들(400a-400h)로 전달할 수 있다. 또한, 버퍼 칩(300)은 제2 버스(240a-240h)에 의해 메모리 칩들(400a-400h)로부터 수신되는 데이터(DQ)를 데이터 버스(210)를 통해 메모리 콘트롤러(120)로 전달할 수 있다.
버퍼 칩(300)은 신호 재생 회로 및 신호 동기 회로와 같은, 이 기술 분야에서 공지된 회로를 포함할 수 있다. 버퍼 칩(300)은 예컨대, 용량성 분리 회로, 전압 상승 기능 및 전압 하강 기능을 포함하는 전압 변환 회로, 멀티플렉싱(multiplexing) 기능 및 디-멀티플렉싱(de-multiplexing) 기능을 포함하는 멀티플렉싱/디멀티플렉싱 블록 등을 포함할 수 있다.
용량성 분리 회로는 버퍼 칩(300)과 버스(210, 220)의 끝단에 연결된 송수신기/수신기 사이에 포인트-투-포인트 커넥션을 제공할 수 있다. 버스(210, 220)로부터 버퍼 칩(300)으로 전달된 데이터는 버퍼 칩(300)의 데이터 체인형 포트로 전송될 수 있다. 용량성 분리 회로는 버스(210, 220)에 대해 종단(termination)을 제공하고, 버스(210, 220) 상에서 매우 제한된 임피던스 불연속성으로 인해 버스(210, 220)가 보다 높은 주파수를 달성할 수 있도록 할 수 있다. 임피던스 불연속성은 버스(210, 220) 상에서의 최대 주파수를 제한하는 파형에서 반사(reflection)를 야기할 수 있다. 버스(210, 220) 상에서의 보다 낮은 불연속성에 따라, 버스(210, 220)의 주파수는 보다 높은 비율로 증가될 수 있다. 버퍼 칩(300)의 버퍼링이 고속 인터페이스를 포함하는 경우, 메모리 칩들(400a-400h)은 고속 로직을 갖는 부담에서 벗어나고, 보다 덜 비싸게 만들어질 수 있다.
전압 변환 블록은 버스(210, 220)로부터 버퍼 칩(300)으로 입력되는 각각의 개별 신호의 전압 범위를 변환할 수 있다. 전압 변환 블록은 메모리 콘트롤러(120)로부터의 출력에 대응하는 범위로부터 메모리 칩(400a-400h)으로의 입력에 대응하는 범위로 변환하기 위한 전압 상승 회로를 포함할 수 있다. 전원 변환 블록은 메모리 칩(400a-400h)으로부터 출력되는 각각의 개별 신호의 전압 범위를 변환할 수 있다. 전원 변환 블록은 메모리 칩(400a-400h)으로부터의 출력에 대응하는 범위로부터 메모리 콘트롤러(120)로의 입력에 대응하는 범위로 변환하기 위한 전압 하강 회로를 포함할 수 있다.
멀티플렉싱/디멀티플렉싱 블록의 디멀티플렉싱 회로는 n개 라인을 갖는 입력을 처리하고 그 입력을 디멀티플렉싱하여, 그 출력이 m개 라인을 갖도록 한다 (여기서, n은 m보다 작다). 따라서, 각 라인 상의 입력 비트율은 입력 측에서의 대역폭을 디멀티플렉싱 회로의 출력 측에서와 동일한 대역폭으로 유지하기 위해, n/m 비율로 감소될 수 있다. 이에 따라, 메모리 칩들(400a-400h)에 비해 보다 작은 수의 버퍼 칩(300)으로의 데이터 입력 라인이 보다 좁은 버스(210, 220)가 허용될 수 있다. 이것은 메모리 모듈에 대해 필요한 핀의 수를 줄일 수 있다.
멀티플렉싱/디멀티플렉싱 블록의 멀티플렉싱 회로는 m개 라인을 갖는 입력을 처리하고 그 입력을 멀티플렉싱하여, 그 출력이 n개 라인을 갖도록 한다(여기서, n은 m보다 작다). 따라서, 각 라인 상의 입력 비트율은 입력 측에서의 대역폭을 멀티플렉싱 회로의 출력 측에서와 동일한 대역폭으로 유지하기 위해, m/n 비율로 증가될 수 있다. 이에 따라, 메모리 칩들(400a-400h)에 비해 보다 작은 수의 버퍼 칩(300)으로의 데이터 라인 입력이 필요하도록 할 수 있다. 이것은 메모리 모듈에 대해 필요한 핀의 수를 줄일 수 있다.
버퍼 칩(300)으로부터, 데이터(DQ)가 개별적인 제2 버스(240a-240h)를 통해 메모리 칩(400a-400h) 각각으로 입력 및 출력되고, 커맨드/어드레스/클럭 (CMD/ADDR/CLK)은 제1 버스(230)를 통해 메모리 칩들(400a-400h)에 입력될 수 있다. 전압 변환 및 멀티플렉싱/디멀티플렉싱에 대해 가능한 상이한 요건으로 인해, 신호 조건 개별 커맨드/어드레스 및 신호 조건 데이터 라인에 대한 필요성이 상이할 수 있다. 따라서, 상이한 멀티플렉싱 회로, 디멀티플렉싱 회로 및 전압 변환 회로가 각각 사용될 수 있다. 다른 실시예들은 데이터(DQ) 및 커맨드/어드레스/클럭 (CMD/ADDR/CLK) 모두에 대한 멀티플렉싱/디멀티플렉싱 기능, 전압 변환 기능 또는 분리 기능을 적용하지 않을 수 있다.
상술한 메모리 모듈(100)은 버퍼 칩(300)을 통하여 메모리 콘트롤러(120)로부터 수신된 커맨드(CMD), 어드레스(ADDR) 및 데이터(DQ)를 버퍼링하여 메모리 칩들(400a-400h)로 제공하는 버스 경로 및 배선을 보여준다. 실시예들에 따라, 데이터 신호 충실도를 보장하기 위해, 데이터(DQ)는 버퍼 칩(300)을 통하여 배선되기 보다는 메모리 콘트롤러(120)로부터 메모리 칩(400a-400h) 각각에 대응적으로 연결되는 데이터 버퍼를 통하거나 직접 배선을 메모리 칩들(400a-400h)로 제공될 수 있다.
도 2b를 참조하면, 메모리 모듈(100a)은 다수개의 메모리 칩들(400a-400h)과 커맨드/어드레스 레지스터 칩(300a), 그리고 메모리 칩들(400a-400h)에 대응적으로 연결되는 데이터 버퍼 칩들(250a-250h)을 포함한다. 커맨드/어드레스 레지스터 칩(300a)은 제어 버스(220)를 통해 메모리 콘트롤러(120)로부터 커맨드(CMD) 및 어드레스(ADDR)을 수신하고, 수신된 커맨드(CMD) 및 어드레스(ADDR)을 버퍼링하고 재구동하는 기능을 가질 수 있다. 커맨드/어드레스 레지스터 칩(300a)에서 출력되는 커맨드(CMD) 및 어드레스(ADDR)는 제1 버스(230)를 통해 메모리 칩들(400a-400h)로 제공될 수 있다.
커맨드/어드레스 레지스터 칩(300a)은 메모리 콘트롤러(120)의 리프레쉬 커맨드(REF, SRE)와는 별개로, 자체적으로 메모리 칩들(400a-400h)의 리프레쉬 동작을 제어하는 히든 리프레쉬 커맨드(HREF)를 발행할 수 있다. 히든 리프레쉬 커맨드(HREF)는 제1 버스(230)를 통해 뱅크 어드레스와 함께 메모리 칩들(400a-400h)로 제공될 수 있다.
데이터 버퍼 칩(250a-250h) 각각은 메모리 칩(400a-400h) 각각과 대응적으로 연결될 수 있다. 데이터 버퍼 칩(250a-250h) 각각은 데이터 버스(210)를 통해 메모리 콘트롤러(120)로부터 해당 메모리 칩(400a-400h)의 데이터(DQ)를 수신하고 버퍼링하여 해당 메모리 칩(400a-400h)로 전달할 수 있다. 또한, 데이터 버퍼 칩(250a-250h) 각각은 해당 메모리 칩(400a-400h)로부터 수신되는 데이터를 데이터 버스(210)를 통해 메모리 콘트롤러(120)로 전달할 수 있다.
도 2c를 참조하면, 메모리 모듈(100a)은 다수개의 메모리 칩들(400a-400h)과 커맨드/어드레스 레지스터 칩(300a)을 포함한다. 커맨드/어드레스 레지스터 칩(300a)은 제어 버스(220)를 통해 메모리 콘트롤러(120)로부터 커맨드(CMD) 및 어드레스(ADDR)을 수신하고, 수신된 커맨드(CMD) 및 어드레스(ADDR)을 버퍼링하고 재구동하는 기능을 가질 수 있다. 커맨드/어드레스 레지스터 칩(300a)에서 출력되는 커맨드(CMD) 및 어드레스(ADDR)는 제1 버스(230)를 통해 메모리 칩들(400a-400h)로 제공될 수 있다.
커맨드/어드레스 레지스터 칩(300a)은 메모리 콘트롤러(120)의 리프레쉬 커맨드(REF, SRE)와는 별개로, 자체적으로 메모리 칩들(400a-400h)의 리프레쉬 동작을 제어하는 히든 리프레쉬 커맨드(HREF)를 발행할 수 있다. 히든 리프레쉬 커맨드(HREF)는 제1 버스(230)를 통해 뱅크 어드레스와 함께 메모리 칩들(400a-400h)로 제공될 수 있다.
메모리 칩(400a-400h) 각각은 메모리 콘트롤러(120)로부터 직접 배선된 데이터 버스(210a-210h)를 통해 메모리 콘트롤러(120)와 연결될 수 있다. 메모리 칩(400a-400h) 각각은 대응적으로 연결되는 데이터 버스(210a-210h)를 통해 메모리 콘트롤러(120)로부터 데이터(DQ)를 수신할 수 있다. 메모리 칩(400a-400h) 각각에서 출력되는 데이터(DQ)는 데이터 버스(210a-210h, 210)를 통해 메모리 콘트롤러(120)로 전달될 수 있다.
상술한 커맨드/어드레스 레지스터 칩(300a)은, 이후에 설명될 도 3의 버퍼 칩(300)과 같이, 메모리 칩의 리프레쉬 동작을 제어하는 히든 리프레쉬 명령을 발행하고, 히든 리프레쉬 명령에 따라 메모리 칩이 리프레쉬 중임을 나타내는 웨이트 신호를 출력할 수 있다. 또한, 커맨드/어드레스 레지스터 칩(300a)은, 히든 리프레쉬 명령에 응답하여 메모리 칩의 뱅크들을 순차 순환 방식으로 리프레쉬하고, 메모리 칩의 위크 셀 로우를 리프레쉬 주기보다 짧은 주기로 리프레쉬하고, 모니터링된 온도 정보에 따라 메모리 칩의 리프레쉬 주기를 변경하는 기능을 수행하도록 구현될 수 있다.
도 3은 본 발명의 실시예들에 따른 버퍼 칩을 설명하는 도면이다.
도 3을 참조하면, 버퍼 칩(300)은 메모리 모듈 레벨에서 메모리 칩들의 리프레쉬 동작을 제어할 수 있다. 버퍼 칩(300)은 리프레쉬 커맨드 스케쥴링에 대한 권한을 가질 수 있다. 버퍼 칩(300)은 메모리 시스템의 메모리 콘트롤러 모르게, 즉 메모리 콘트롤러와 무관하게 메모리 칩들의 리프레쉬 동작을 제어하므로, 버퍼 칩(300)에 의한 리프레쉬를 일명 "히든 리프레쉬"라고 칭할 수 있다. 버퍼 칩(300)은 히든 리프레쉬를 수행하기 위하여, 리프레쉬 동기화부(310), 리프레쉬 제어부(320) 그리고 리프레쉬 관리부(330)를 포함할 수 있다.
리프레쉬 동기화부(310)는 메모리 칩의 리프레쉬 어드레스 발생부를 초기화하기 위하여 리셋 신호(RESET)를 발생할 수 있다. 리셋 신호(RESET)는 리프레쉬 어드레스 발생부 내 리프레쉬 카운터를 초기화할 수 있다.
리프레쉬 제어부(320)는 메모리 칩의 메모리 셀 어레이의 리프레쉬 동작을 뱅크 별로 제어할 수 있다. 리프레쉬 제어부(320)는 메모리 칩의 히든 리프레쉬를 알리는 히든 리프레쉬 커맨드(HREF)와 뱅크 어드레스(BANK_ADDR)를 발생할 수 있다. 뱅크 어드레스(BANK_ADDR)는 현재 독출 또는 기입 동작을 수행하고 있지 않는 즉, 액티브 동작 중이지 않는 뱅크를 선택하기 위하여 제공될 수 있다. 메모리 칩의 메모리 셀 어레이가 다수개의 뱅크들을 포함하는 경우, 리프레쉬 제어부(320)는 전체 뱅크 리프레쉬 대신에, 액티브 동작 중인 뱅크를 제외한 나머지 뱅크들에 대해 뱅크별 히든 리프레쉬를 스케쥴링할 수 있다.
리프레쉬 제어부(320)는 뱅크별 리프레쉬 동작을 수행함에 있어서, 순차 순환(round-robin) 방식으로 뱅크 리프레쉬를 스케쥴링할 수 있다. 순차 순환 방식의 뱅크 리프레쉬는 액티브 동작 중이지 않는 뱅크를 우선적으로 리프레쉬하고, 나머지 뱅크들을 순차적으로 리프레쉬하여, 액티브 동작이 끝나는 뱅크도 리프레쉬되어 모든 뱅크들이 리프레쉬되게끔 할 수 있다. 순차 순환 방식의 뱅크별 리프레쉬는 반복적으로 수행될 수 있다.
리프레쉬 제어부(320)는 메모리 칩의 메모리 셀 어레이의 리프레쉬 동작을 뱅크 그룹으로 제어할 수 있다. 뱅크 어드레스(BANK_ADDR)의 최상위 비트(MSB)는 뱅크 어레이들을 예컨대, 상부와 하부와 같이 구분할 수 있다. 즉, 뱅크 어레이들을 크게 2 그룹으로 구분할 수 있다. 리프레쉬 제어부(320)는 히든 리프레쉬 커맨드(HREF)와 2개의 뱅크 그룹으로 구분하는 뱅크 어드레스(BANK_ADRR)를 발생할 수 있다. 실시예에 따라, 뱅크 어드레스(BANK_ADDR)의 최상위 2 비트(MSB, MSB-1)는 뱅크 어레이들을 예컨대, 4개 그룹으로 구분할 수 있다. 리프레쉬 제어부(320)는 히든 리프레쉬 커맨드(HREF)와 4개의 뱅크 그룹으로 구분하는 뱅크 어드레스(BANK_ADRR)를 발생할 수 있다.
리프레쉬 제어부(320)는 뱅크 그룹별 리프레쉬 동작을 수행함에 있어서, 순차 순환 방식으로 뱅크 그룹 리프레쉬를 스케쥴링할 수 있다. 순차 순환 방식의 뱅크 그룹 리프레쉬는 액티브 동작 중이지 않는 뱅크 그룹을 우선적으로 리프레쉬하고, 나머지 뱅크 그룹들을 순차적으로 리프레쉬하여 모든 뱅크들이 리프레쉬되게끔 할 수 있다. 순차 순환 방식의 뱅크 그룹별 리프레쉬는 반복적으로 수행될 수 있다.
리프레쉬 제어부(320)는 뱅크별 또는 뱅크 그룹별 리프레쉬 동작을 수행함에 있어서, 커맨드 발생 횟수를 줄이기 위해, 메모리 칩의 뱅크별 또는 뱅크 그룹별 리프레쉬에 관한 정보를 프리차아지 커맨드에 실어서 메모리 칩으로 전달할 수 있다.
리프레쉬 제어부(320)는, 메모리 칩이 히든 리프레쉬 명령(HREF)에 응답하여 히든 리프레쉬를 수행하는 동안, 메모리 콘트롤러로부터 커맨드를 수신하게 되면, 메모리 칩이 리프레쉬 동작 중임을 알리는 웨이트 신호(WAIT)를 발생할 수 있다. 웨이트 신호(WAIT)는 메모리 칩이 리프레쉬 중이라 메모리 콘트롤러의 커맨드에 따른 동작을 수행할 수 없기 때문에, 메모리 콘트롤러가 커맨드를 재발행하거나, 커맨드에 따른 메모리 칩의 동작이 소정 시간 지연 후에 수행될 것이라 기대하거나, 커맨드에 따른 메모리 칩의 동작이 소정 시간 지연될 수 있음을 알리는 커맨드 식별 신호를 출력하도록 할 수 있다.
리프레쉬 관리부(330)는 메모리 칩의 리프레쉬 동작의 리프레쉬 레버리징을 제어할 수 있다. 리프레쉬 관리부(330)는 위크 셀 로우 어드레스(WEAK_ADDR)의 리프레쉬 레버리징을 지시하는 선택 신호(SEL)를 발생할 수 있다. 선택 신호(SEL)는 노멀 리프레쉬 동작 동안 로직 로우 레벨을 갖도록 설정되고, 리프레쉬 레버리징 동작 동안 로직 하이 레벨을 갖도록 설정될 수 있다.
리프레쉬 관리부(330)는 메모리 칩의 위크 셀 로우 어드레스(WEAK_ADDR)를 저장하는 어드레스 저장부(332)를 포함할 수 있다. 어드레스 저장부(332)는 전기적 프로그래머블 퓨즈 메모리, 레이저-프로그래머블 퓨즈 메모리, 안티-퓨즈 메모리, 원-타임 프로그래머블 메모리, 플래쉬 메모리 등과 같은 다양한 종류의 불휘발성 메모리 장치들로 구현될 수 있다.
실시예에 따라, 리프레쉬 관리부(330)는 어드레스 저장부(332)를 포함하지 않을 수도 있다. 이 경우, 도 6처럼 어드레스 저장부는 메모리 칩의 리프레쉬 어드레스 발생부에 포함될 수 있다. 리프레쉬 관리부(330)는 메모리 칩의 위크 셀 로우 어드레스(WEAK_ADDR) 개수 정보를 저장할 수 있다. 리프레쉬 관리부(330)는 메모리 칩의 표준에 정의된 리프레쉬 주기(tREF) 동안 위크 셀 로우 어드레스 개수만큼 더 리프레쉬하도록 리프레쉬 동작을 제어할 수 있다. 예컨대, 리프레쉬 관리부(330)에 저장된 위크 셀 로우 어드레스 개수 정보가 128이고 메모리 칩의 표준에 의해 64ms 동안 8K개의 메모리 셀 로우를 리프레쉬하는 경우, 64ms 동안 8K+128 번의 리프레쉬 동작이 수행되도록 제어할 수 있다.
리프레쉬 관리부(330)는 버퍼 칩(300)이 장착된 메모리 모듈의 온도를 모니터링하는 온도 정보 레지스터(334)를 포함할 수 있다. 온도 정보 레지스터(334)는 필요한 온도 모니터링 주기에 따라서 소정의 주기로 조절할 수 있다. 온도 정보 레지스터(334)는 온도 센서를 포함할 수 있다. 온도 센서는 버퍼 칩(300)의 온도를 검출한다. 버퍼 칩(300)의 온도는 메모리 모듈의 메모리 칩들의 온도와 동일하다고 볼 수 있다. 온도 정보 레지스터(334)는 온도 센서로부터 제공되는 온도 정보를 읽어들인다.
실시예에 따라, 리프레쉬 관리부(330)는 온도 정보 레지스터(334)에 온도 센서를 포함하지 않을 수도 있다. 이 경우, 도 4처럼 온도 센서는 메모리 칩에 포함될 수 있다.
리프레쉬 관리부(330)는 메모리 칩의 DQ 패드와 연결되는 신호 라인을 통하여 온도 센서(425, 도 4)의 온도 정보를 수신하거나, 메모리 칩의 TI 패드와 연결되는 신호 라인을 통하여 온도 센서(425)의 온도 정보를 수신할 수 있다. 리프레쉬 관리부(330)는 온도 센서(425)의 온도 정보를 하나의 DQ 패드 또는 TI 패드를 통해 1 비트 정보로 수신하거나, 시리얼 비트 정보로 수신하고 해석(decode)할 수 있다. 리프레쉬 관리부(330)는 메모리 칩으로부터 수신된 온도 정보가 기준 온도(TBD) 보다 높은지 또는 낮은지를 판단할 수 있다.
리프레쉬 관리부(330)는 기준 온도(TBD) 보다 높다고 판단되면, 메모리 칩의 리프레쉬 주기를 기준 온도(TBD) 일 때의 리프레쉬 주기(tREF) 보다 짧게 리프레쉬할 수 있다. 기준 온도(TBD) 보다 낮다고 판단되면, 리프레쉬 관리부(330)는 메모리 칩의 메모리 칩의 리프레쉬 주기를 기준 온도(TBD) 일 때의 리프레쉬 주기(tREF)로 리프레쉬할 수 있다.
상술한 바와 같이, 버퍼 칩(300)은 메모리 콘트롤러와 무관하게 메모리 칩들의 리프레쉬 동작을 제어하는 히든 리프레쉬 명령(HREF)을 발행할 수 있다. 버퍼 칩(300)은 히든 리프레쉬 명령(HREF)에 따라 메모리 칩이 리프레쉬 중임을 나타내는 웨이트 신호를 발생하여 메모리 콘트롤러로 출력할 수 있다. 버퍼 칩(300)은 히든 리프레쉬 명령(HREF)에 따라 메모리 칩의 위크 셀 로우를 리프레쉬 주기보다 짧은 주기로 리프레쉬할 수 있다. 버퍼 칩(300)은 히든 리프레쉬 명령(HREF)에 따라 모니터링된 온도 정보에 따라 메모리 칩의 리프레쉬 주기를 변경할 수 있다.
도 4는 본 발명의 실시예들에 따른 버퍼 칩에 의해 히든 리프레쉬를 수행하는 메모리 칩을 설명하는 도면이다.
도 4를 참조하면, 메모리 칩(400)는 도 1의 메모리 모듈(100)에 장착된 다수개의 메모리 칩들(400a-400h) 중 어느 하나인 것으로 설명된다. 메모리 칩(400)은 제어 로직(410), 어드레스 버퍼(420), 온도 센서(425), 뱅크 제어 로직(430), 로우 어드레스 멀티플렉서(440), 칼럼 어드레스 래치(450), 로우 디코더, 메모리 셀 어레이, 센스 앰프부, 입출력 게이팅 회로(490), 데이터 입출력 버퍼(495) 및 리프레쉬 어드레스 발생부(500)를 포함할 수 있다.
메모리 셀 어레이는 제1 내지 제4 뱅크 어레이들(480a, 480b, 480c, 480d)을 포함할 수 있다. 로우 디코더는 제1 내지 제4 뱅크 어레이들(480a, 480b, 480c, 480d)에 각각 연결된 제1 내지 제4 뱅크 로우 디코더들(460a, 460b, 460c, 460d)을 포함할 수 있다. 칼럼 디코더는 제1 내지 제4 뱅크 어레이들(480a, 480b, 480c, 480d)에 각각 연결된 제1 내지 제4 뱅크 칼럼 디코더들(470a, 470b, 470c, 470d)을 포함할 수 있다. 센스 앰프부는 제1 내지 제4 뱅크 어레이들(480a, 480b, 480c, 480d)에 각각 연결된 제1 내지 제4 뱅크 센스 앰프들(485a, 485b, 485c, 485d)을 포함할 수 있다. 제1 내지 제4 뱅크 어레이들(480a, 480b, 480c, 480d), 제1 내지 제4 뱅크 로우 디코더들(460a, 460b, 460c, 460d), 제1 내지 제4 뱅크 칼럼 디코더들(470a, 470b, 470c, 470d) 및 제1 내지 제4 뱅크 센스 앰프들(485a, 485b, 485c, 485d)은 제1 내지 제4 뱅크들을 각각 구성할 수 있다. 도 4에는 4개의 뱅크들을 포함하는 메모리 칩(400)의 예가 도시되어 있으나, 실시예에 따라, 메모리 칩(400)은 임의의 수의 뱅크들을 포함할 수 있다.
또한, 실시예에 따라, 메모리 칩(400)는 DDR SDRAM (Double Data Rate Synchronous Dynamic Ramdom Access Memory), LPDDR (Low Power Double Data Rate) SDRAM, GDDR (Graphics Double Data Rate) SDRAM, RDRAM (Rambus Dynamic Ramdom Access Memory) 등과 같은 동적 랜덤 억세스 메모리 (Dynamic Ramdom Access Memory): DRAM) 이거나, 리프레쉬 동작이 필요한 임의의 휘발성 메모리 장치일 수 있다.
제어 로직(410)은 메모리 칩(400)의 동작을 제어할 수 있다. 예를 들어, 제어 로직(410)은 메모리 칩(400)이 기입 동작 또는 독출 동작을 수행하도록 제어 신호들을 생성할 수 있다. 제어 로직(410)은 메모리 콘트롤러로부터 수신되는 커맨드(CMD)를 디코딩하는 커맨드 디코더(411) 및 메모리 칩(400)의 동작 모드를 설정하기 위한 모드 레지스터(412)를 포함할 수 있다. 예를 들어, 커맨드 디코더(411)는 기입 인에이블 신호(/WE), 로우 어드레스 스트로브 신호(/RAS), 칼럼 어드레스 스트로브 신호(/CAS), 칩 선택 신호(/CS)등을 디코딩하여 커맨드(CMD)에 상응하는 제어 신호들을 생성할 수 있다.
제어 로직(410)은 동기 방식으로 메모리 칩(400)을 구동하기 위한 클럭(CLK) 및 클럭 인에이블 신호(CKE)를 더 수신할 수 있다. 제어 로직(410)은 리프레쉬 커맨드(REF)에 응답하여 리프레쉬 어드레스 발생부(500)가 오토 리프레쉬 동작을 수행하도록 제어하거나, 셀프 리프레쉬 진입 커맨드(SRE)에 응답하여 리프레쉬 어드레스 발생부(500)가 셀프 리프레쉬 동작을 수행하도록 제어할 수 있다. 또한, 제어 로직(410)은 히든 리프레쉬 커맨드(HREF)에 응답하여 리프레쉬 어드레스 발생부(500)가 히든 리프레쉬 동작을 수행하도록 제어할 수 있다.
어드레스 버퍼(420)는 메모리 콘트롤러로부터 뱅크 어드레스(BANK_ADDR), 로우 어드레스(ROW_ADDR) 및 칼럼 어드레스(COL_ADDR)를 포함하는 어드레스(ADDR)를 수신할 수 있다. 또한, 어드레스 버퍼(420)는 수신된 뱅크 어드레스(BANK_ADDR)를 뱅크 제어 로직(430)에 제공하고, 수신된 로우 어드레스(ROW_ADDR)를 로우 어드레스 멀티플렉서(440)로 제공하고, 수신된 칼럼 어드레스(COL_ADDR)를 칼럼 어드레스 래치(450)에 제공할 수 있다.
온도 센서(425)는 메모리 칩(400)의 온도 정보를 제공할 수 있다. 온도 센서(425)는 메모리 칩(400)의 온도를 검출하여 버퍼 칩으로 제공할 수 있다. 온도 센서(425)로부터 제공되는 온도 정보는 이들 다수개의 신호 라인들 중 어느 하나의 신호 라인을 통해 버퍼 칩으로 제공될 수 있다. 메모리 칩(400)은 온도 센서(425)의 온도 정보를 예컨대, 하나의 DQ 패드로 출력할 수 있다.
다른 방법으로, 메모리 칩(400)은 온도 센서(425)의 온도 정보를 출력하는 별도의 패드를 구비할 수 있다. 메모리 칩(400)은 예컨대, 온도 정보(Temperature Information: TI) 패드를 갖고, TI 패드와 연결되는 신호 라인을 통하여 온도 센서(425)의 온도 정보를 버퍼 칩으로 제공할 수 있다.
온도 센서(425)의 온도 정보가 하나의 DQ 패드 또는 TI 패드로 출력되는 경우, 온도 정보는 1 비트로 표시될 수 있다. 하나의 DQ 패드 또는 TI 패드는 온도 센서(425)의 온도 정보가 기준 온도(TBD) 보다 높은 경우 로직 하이 레벨을 출력하고, 기준 온도(TBD) 보다 낮은 경우 로직 로우 레벨을 출력할 수 있다. 하나의 DQ 패드 또는 TI 패드는 그 반대의 로직 레벨로 출력될 수도 있다.
또 다른 방법으로, 하나의 DQ 패드 또는 TI 패드로 출력되는 온도 정보는 시리얼 비트 정보로 출력될 수 있다. 메모리 칩(400)은 클럭 신호 에지에 따라 DQ 패드 또는 TI 패드로 시리얼 비트 정보, 예컨대 `0110010100` 출력할 수 있다. DQ 패드 또는 TI 패드로 출력되는 시리얼 비트 정보는 버퍼 칩으로 제공될 수 있다.
뱅크 제어 로직(430)은 뱅크 어드레스(BANK_ADDR)에 응답하여 뱅크 제어 신호들을 생성할 수 있다. 뱅크 제어 신호들에 응답하여, 제1 내지 제4 뱅크 로우 디코더들(460a, 460b, 460c, 460d) 중 뱅크 어드레스(BANK_ADDR)에 상응하는 뱅크 로우 디코더가 활성화되고, 제1 내지 제4 뱅크 칼럼 디코더들(470a, 470b, 470c, 470d) 중 뱅크 어드레스(BANK_ADDR)에 상응하는 뱅크 칼럼 디코더가 활성화될 수 있다.
뱅크 제어 로직(430)은 뱅크 그룹을 결정하는 뱅크 어드레스(BANK_ADDR)에 응답하여 뱅크 그룹 제어 신호들을 생성할 수 있다. 뱅크 그룹 제어 신호들에 응답하여, 제1 내지 제4 뱅크 로우 디코더들(460a, 460b, 460c, 460d) 중 뱅크 어드레스(BANK_ADDR)에 상응하는 뱅크 그룹의 로우 디코더들이 활성화되고, 제1 내지 제4 뱅크 칼럼 디코더들(470a, 470b, 470c, 470d) 중 뱅크 어드레스(BANK_ADDR)에 상응하는 뱅크 그룹의 칼럼 디코더들이 활성화될 수 있다.
로우 어드레스 멀티플렉서(440)는 어드레스 버퍼(420)로부터 로우 어드레스(ROW_ADDR)를 수신하고, 리프레쉬 어드레스 발생부(500)로부터 리프레쉬 로우 어드레스(REF_ADDR)를 수신할 수 있다. 로우 어드레스 멀티플렉스(440)는 로우 어드레스(ROW_ADDR) 또는 리프레쉬 로우 어드레스(REF_ADDR)를 선택적으로 출력할 수 있다. 로우 어드레스 멀티플렉서(440)에서 출력되는 로우 어드레스는 제1 내지 제4 뱅크 로우 디코더들(460a, 460b, 460c, 460d)에 각각 인가될 수 있다.
제1 내지 제4 뱅크 로우 디코더들(460a, 460b, 460c, 460d) 중 뱅크 제어 로직(430)에 의해 활성화된 뱅크 로우 디코더는 로우 어드레스 멀티플렉서(440)에서 출력된 로우 어드레스를 디코딩하여, 로우 어드레스에 상응하는 워드라인을 활성화할 수 있다. 예를 들어, 활성화된 뱅크 로우 디코더는 로우 어드레스에 상응하는 워드라인에 워드라인 구동 전압을 인가할 수 있다.
칼럼 어드레스 래치(450)는 어드레스 버퍼(420)로부터 칼럼 어드레스(COL_ADDR)를 수신하고, 수신된 칼럼 어드레스(COL_ADDR)를 일시적으로 저장할 수 있다. 칼럼 어드레스 래치(450)는, 버스트 모드에서, 수신된 칼럼 어드레스(COL_ADDR)를 점진적으로 증가시킬 수 있다. 칼럼 어드레스 래치(450)는 일시적으로 저장된 또는 점진적으로 증가된 칼럼 어드레스(COL_ADDR)를 제1 내지 제4 뱅크 칼럼 디코더들(470a, 470b, 470c, 470d)에 각각 인가할 수 있다.
제1 내지 제4 뱅크 칼럼 디코더들(470a, 470b, 470c, 470d) 중 뱅크 제어 로직(430)에 의해 활성화된 뱅크 칼럼 디코더는 입출력 게이팅 회로(490)를 통하여 뱅크 어드레스(BANK_ADDR) 및 칼럼 어드레스(COL_ADDR)에 상응하는 센스 앰프를 활성화시킬 수 있다.
입출력 게이팅 회로(490)는 입출력 데이터를 게이팅하는 회로들과 함께, 입력 데이터 마스크 로직, 제1 내지 제4 뱅크 어레이들(480a, 480b, 480c, 480d)로부터 출력된 데이터를 저장하기 위한 독출 데이터 래치들, 그리고 제1 내지 제4 뱅크 어레이들(480a, 480b, 480c, 480d)에 데이터를 기입하기 위한 기입 드라이버를 포함할 수 있다.
제1 내지 제4 뱅크 어레이들(480a, 480b, 480c, 480d) 중 하나의 뱅크 어레이에서 독출될 데이터는 센스 앰프에 의해 감지 증폭되고, 독출 데이터 래치들에 저장될 수 있다. 독출 데이터 래치에 저장된 데이터(DQ)는 데이터 입출력 버퍼(495)를 통하여 메모리 콘트롤러에 제공될 수 있다. 제1 내지 제4 뱅크 어레이들(480a, 480b, 480c, 480d) 중 하나의 뱅크 어레이에 기입될 데이터(DQ)는 메모리 콘트롤러로부터 데이터 입출력 버퍼(495)로 제공될 수 있다. 데이터 입출력 버퍼(495)에 제공된 데이터(DQ)는 기입 드라이버를 통하여 하나의 뱅크 어레이에 기입될 수 있다.
리프레쉬 어드레스 발생부(500)는 리프레쉬 동작이 수행될 메모리 셀 로우에 해당하는 리프레쉬 어드레스(REF_ADDR)를 생성할 수 있다. 리프레쉬 동작은 메모리 셀 로우들 각각을 순차적으로 한번씩 리프레쉬하는 노멀 리프레쉬 동작과 위크 셀 로우들을 리프레쉬하는 리프레쉬 레버리징 동작을 포함할 수 있다. 노멀 리프레쉬 동작은 CBR (Cas Before Ras) 리프레쉬라고도 불린다. CBR 리프레쉬는 외부에서 로우 어드레스가 입력되지 않고 대신에 리프레쉬 요구가 있을 때마다 메모리 칩(400) 내부의 카운터에서 리프레쉬 어드레스(REF_ADDR)가 생성되는 스킴을 일컫는다.
리프레쉬 어드레스 발생부(500)는 버퍼 칩에서 제공되는 리셋 신호와 선택 신호에 응답하여 리프레쉬 어드레스(REF_ADDR)를 생성할 수 있다. 리프레쉬 어드레스 발생부(500)는 카운트 동작으로 CBR 리프레쉬 로우 어드레스를 발생하는 리프레쉬 카운터를 포함하고, 리셋 신호에 응답하여 리프레쉬 카운터를 초기화시킬 수 있다. 리프레쉬 어드레스 발생부(500)는 선택 신호에 응답하여 CBR 리프레쉬 로우 어드레스 또는 버퍼 칩에서 제공되는 위크 셀 로우 어드레스를 선택하여 리프레쉬 어드레스(REF_ADDR)로 출력할 수 있다.
도 5는 본 발명의 실시예들에 따른 도 4의 리프레쉬 어드레스 발생부를 설명하는 제1 예의 도면이다.
도 5를 참조하면, 리프레쉬 어드레스 발생부(500a)는 버퍼 칩으로부터 제공되는 리셋 신호(RESET), 선택 신호(SEL) 그리고 위크 셀 로우 어드레스(WEAK_ADDR)에 응답하여 리프레쉬 어드레스(REF_ADDR)로 생성할 수 있다. 리프레쉬 어드레스 발생부(500a)는 리프레쉬 카운터(510)와 어드레스 변환부(530)를 포함할 수 있다.
리프레쉬 카운터(510)는 리프레쉬 동작의 노멀 리프레쉬 동작에서 카운팅 동작을 수행하여 CBR 리프레쉬 로우 어드레스(CBR_ADDR)를 생성할 수 있다. 리프레쉬 카운터(510)는 리셋 신호(RESET)에 의해 초기화되고, CBR 리프레쉬 로우 어드레스(CBR_ADDR)를 "0"으로 리셋시킬 수 있다. 리셋 신호(RESET)는 버퍼 칩의 리프레쉬 동기화부에서 제공될 수 있다.
리프레쉬 카운터(510)는 CBR 리프레쉬 로우 어드레스(CBR_ADDR)를 점진적으로 증가시키고, CBR 리프레쉬 로우 어드레스(CBR_ADDR)가 최대 로우 어드레스보다 커진 경우 CBR 리프레쉬 로우 어드레스(CBR_ADDR)를 최소 로우 어드레스 "0"으로 초기화할 수 있다.
어드레스 변환부(530)는 CBR 리프레쉬 로우 어드레스(CREF_ADDR)와 위크 셀 로우 어드레스(WEAK_ADDR)를 수신하고, 선택 신호(SEL)에 응답하여 리프레쉬 어드레스(REF_ADDR)를 생성할 수 있다. 리프레쉬 어드레스(REF_ADDR)는 리프레쉬 동작이 수행될 메모리 셀 로우를 의미한다. 위크 셀 로우 어드레스(WEAK_ADDR)와 선택 신호(SEL)는 버퍼 칩의 리프레쉬 관리부로부터 제공될 수 있다. 위크 셀 로우 어드레스(WEAK_ADDR)는 리프레쉬 관리부 내 어드레스 저장부로부터 제공될 수 있다.
어드레스 변환부(530)는 선택 신호(SEL)가 로직 로우 레벨일 때 CBR 리프레쉬 로우 어드레스(CREF_ADDR)를 리프레쉬 어드레스(REF_ADDR)로 생성할 수 있다. 또한, 어드레스 변환부(530)는 선택 신호(SEL)가 로직 하이 레벨일 때 위크 셀 로우 어드레스(WEAK_ADDR)를 리프레쉬 어드레스(REF_ADDR)로 생성할 수 있다.
상술한 바와 같이, 본 실시예의 리프레쉬 어드레스 발생부(500a)는 노멀 리프레쉬 동작 동안 리프레쉬 카운터(510)에서 제공되는 CBR 리프레쉬 로우 어드레스(CREF_ADDR)가 리프레쉬 되도록 하고, 리프레쉬 레버리징 동작 동안 버퍼 칩의 어드레스 저장부에서 제공되는 위크 셀 로우 어드레스(WEAK_ADDR)가 리프레쉬 되도록 할 수 있다.
도 6은 본 발명의 실시예들에 따른 도 4의 리프레쉬 어드레스 발생부를 설명하는 제2 예의 도면이다.
도 6을 참조하면, 리프레쉬 어드레스 발생부(500b)는, 도 5의 리프레쉬 어드레스 발생부(500a)와 비교하여, 어드레스 저장부(620)를 더 포함한다는 점에서 차이가 있다. 리프레쉬 어드레스 발생부(500b)는 버퍼 칩에 저장된 위크 셀 로우 어드레스(WEAK_ADDR) 개수 정보와 연계하여 리프레쉬 어드레스(REF_ADDR)를 생성할 수 있다. 리프레쉬 어드레스 발생부(500b)는 버퍼 칩의 위크 셀 로우 어드레스 개수 정보와 어드레스 저장부(620)에 저장된 위크 셀 어드레스(WEAK_ADDR)에 따라 결정되는 리프레쉬 레버리지 사이클마다 선택 신호(SEL)를 내부적으로 발생할 수 있다. 리프레쉬 어드레스 발생부(500b)는 리프레쉬 카운터(610), 어드레스 저장부(620) 그리고 어드레스 변환부(630)를 포함할 수 있다.
리프레쉬 카운터(610)는 리프레쉬 동작의 노멀 리프레쉬 동작에서 카운팅 동작을 수행하여 CBR 리프레쉬 로우 어드레스(CBR_ADDR)를 생성할 수 있다. 리프레쉬 카운터(610)는 리셋 신호(RESET)에 의해 초기화되고, CBR 리프레쉬 로우 어드레스(CBR_ADDR)를 "0"으로 리셋시킬 수 있다. 리셋 신호(RESET)는 버퍼 칩의 리프레쉬 동기화부에서 제공될 수 있다. 리프레쉬 카운터(610)는 CBR 리프레쉬 로우 어드레스(CBR_ADDR)를 점진적으로 증가시키고, CBR 리프레쉬 로우 어드레스(CBR_ADDR)가 최대 로우 어드레스보다 커진 경우 CBR 리프레쉬 로우 어드레스(CBR_ADDR)를 최소 로우 어드레스 "0"으로 초기화할 수 있다.
실시예에 따라, 리프레쉬 카운터(610)는 카운트 동작에 따른 임의의 CBR 리프레쉬 로우 어드레스(CREF_ADDR)를 출력할 수 있다. 리프레쉬 카운터(610)는 CBR 리프레쉬 로우 어드레스(CREF_ADDR)를 점진적으로 증가시키고, CBR 리프레쉬 로우 어드레스(CREF_ADDR)가 최대 로우 어드레스보다 커진 경우 CBR 리프레쉬 로우 어드레스(CREF_ADDR)를 최소 로우 어드레스 "0"으로 초기화할 수 있다. 이 후, 리프레쉬 카운터(610)는 최소 로우 어드레스 "0" 부터 점진적으로 증가되는 CBR 리프레쉬 로우 어드레스(CREF_ADDR)를 생성할 수 있다.
어드레스 저장부(620)는 적어도 하나의 위크 셀 로우 어드레스(WEAK_ADDR)를 저장할 수 있다. 어드레스 저장부(620)은 리프레쉬 카운터(610)와 연동하여 리프레쉬 명령의 적합한 순서에 따라 위크 셀 어드레스(WEAK_ADDR)의 리프레쉬를 위한 선택신호(SEL)를 발생할 수 있다. 어드레스 저장부(620)에 저장된 위크 셀 로우 어드레스(WEAK_ADDR)의 수는 메모리 칩(400, 도 4) 내 메모리 셀 어레이(480a-480d, 도 4)에 포함된 위크 셀 로우의 수에 상응한다. 어드레스 저장부(620)에 저장된 위크 셀 로우 어드레스(WEAK_ADDR)는 리프레쉬 동작의 리프레쉬 레버리지 동작 시점에서 순차적으로 리프레쉬될 수 있다.
위크 셀 로우 어드레스(WEAK_ADDR)는 메모리 칩(400, 도 4)의 패키징 전에 어드레스 저장부(620)에 저장될 수 있다. 또한, 위크 셀 로우 어드레스(WEAK_ADDR)는 메모리 칩의 패키킹 후에 어드레스 저장부(620)에 저장될 수 있다. 어드레스 저장부(620)는 전기적 프로그래머블 퓨즈 메모리, 레이저-프로그래머블 퓨즈 메모리, 안티-퓨즈 메모리, 원-타임 프로그래머블 메모리, 플래쉬 메모리 등과 같은 다양한 종류의 불휘발성 메모리 장치들로 구현될 수 있다.
어드레스 변환부(630)는 CBR 리프레쉬 로우 어드레스(CREF_ADDR)와 위크 셀 로우 어드레스(WEAK_ADDR)를 수신하고, 선택 신호(SEL)에 응답하여 리프레쉬 어드레스(REF_ADDR)를 생성할 수 있다. 어드레스 변환부(630)는 선택 신호(SEL)가 로직 로우 레벨일 때 CBR 리프레쉬 로우 어드레스(CREF_ADDR)를 리프레쉬 어드레스(REF_ADDR)로 생성할 수 있다. 또한, 어드레스 변환부(630)는 선택 신호(SEL)가 로직 하이 레벨일 때 위크 셀 로우 어드레스(WEAK_ADDR)를 리프레쉬 어드레스(REF_ADDR)로 생성할 수 있다.
상술한 바와 같이, 본 실시예의 리프레쉬 어드레스 발생부(500b)는 노멀 리프레쉬 동작 동안 리프레쉬 카운터(510)에서 제공되는 CBR 리프레쉬 로우 어드레스(CREF_ADDR)가 리프레쉬 되도록 하고, 리프레쉬 레버리징 동작 동안 메모리 칩의 어드레스 저장부(620)에서 제공되는 위크 셀 로우 어드레스(WEAK_ADDR)가 리프레쉬 되도록 할 수 있다.
도 7은 본 발명의 실시예들에 따른 버퍼 칩에 의한 메모리 칩의 리프레쉬 방법을 설명하는 제1 예의 순서도이다.
도 7을 참조하면, 메모리 칩이 턴온되면, 리프레쉬 동작이 개시된다(S710). 예를 들어, 파워-업 시퀀스가 완료된 후, 또는 파워-다운 모드가 종료된 후, 리프레쉬 동작이 개시될 수 있다. 실시예에 따라, 실제적으로 주기적으로 인가되는 리프레쉬 커맨드(REF)에 응답하여 리프레쉬 로우 어드레스를 생성하고, 리프레쉬 로우 어드레스에 상응하는 메모리 셀 로우를 리프레쉬하는 오토 리프레쉬 동작이거나, 셀프 리프레쉬 진입 커맨드(SRE)에 응답하여 셀프 리프레쉬 모드로 진입하고, 셀프 리프레쉬 모드에서 빌트-인 타이머를 이용하여 메모리 셀 로우를 주기적으로 리프레쉬하는 셀프 리프레쉬 동작일 수 있다. 또는, 히든 리프레쉬 커맨드(HREF)에 응답하여 리프레쉬 로우 어드레스를 생성하고, 리프레쉬 로우 어드레스에 상응하는 메모리 셀 로우를 리프레쉬하는 히든 리프레쉬 동작일 수 있다.
리프레쉬 동작이 개시되면, 적어도 하나의 위크 셀 로우는 리프레쉬 주기 (tREF) 보다 짧은 주기로 리프레쉬된다(S720). 이는 위크 셀들을 구제하는 리프레쉬 레버리징 동작을 의미한다.
리프레쉬 동작이 개시되면, 위크 셀 로우를 제외한 메모리 셀 로우는 리프레쉬 주기(tREF)로 리프레쉬된다(S730). 이는 리프레쉬 카운터에서 점진적으로 증가되는 CBR 리프레쉬 로우 어드레스(CBR_ADDR)에 대응하는 메모리 셀 로우들을 리프레쉬하는 노멀 리프레쉬 동작을 의미한다.
한편, 연속되는 노멀 리프레쉬 동작에서 CBR 리프레쉬 로우 어드레스(CREF_ADDR)가 위크 셀 로우와 일치할 수 있다. 이 때, 노멀 리프레쉬 동작으로 해당 위크 셀 로우가 한번 더 리프레쉬될 수 있다. 예컨대, 64ms 리프레쉬 주기(tREF) 동안 16ms 리프레쉬 레버리지 사이클이 4회 균등하게 설정될 수 있다. 이 경우, 위크 셀 로우는 16ms 리프레쉬 레버리지 사이클 보다 짧게 이중적으로 리프레쉬될 수 있다.
상술한 바와 같이, 메모리 칩의 리프레쉬 방법에서 데이터 보유 시간이 짧은 위크 셀들을 표준에 규정된 리프레쉬 주기(tREF)보다 짧게 리프레쉬함으로써 위크 셀 로우가 리던던시 셀 오루로 대체되지 않을 수 있다. 이에 따라, 메모리 칩의 리던던시 셀 어레이 및 리던던시 회로의 사이즈를 감소시킬 수 있다.
도 8은 본 발명의 일실시예에 따른 메모리 칩의 리프레쉬 방법을 설명하는 제 2 예의 순서도이다. 도 8은 도 5 및 도 6의 리프레쉬 어드레스 발생부(500a, 500b)와 연계되어 설명될 수 있다.
도 8을 참조하면, 리프레쉬 동작이 개시되면, 리프레쉬 카운터(510, 610)가 초기화될 수 있다(S810). 리프레쉬 카운터(510, 610)는 버퍼 칩의 리프레쉬 동기화부에서 제공되는 리셋 신호(RESET)에 응답하여 CBR 리프레쉬 로우 어드레스(CBR_ADDR)를 "0"으로 리셋할 수 있다. CBR 리프레쉬 로우 어드레스 "0"에 해당하는 메모리 셀 로우를 리프레쉬한다(S820). 리프레쉬 카운터(510, 610)는 "1"만큼 증가된 CBR 리프레쉬 로우 어드레스(CBR_ADDR)를 생성할 수 있다(S830).
버퍼 칩의 리프레쉬 관리부에서 제공되는 선택 신호(SEL)가 로직 로우 레벨이면(S840: 예), CBR 리프레쉬 로우 어드레스(CBR_ADDR)에 해당하는 메모리 셀 로우가 리프레쉬될 수 있다(S850). 버퍼 칩의 리프레쉬 관리부에서 제공되는 선택 신호(SEL)가 로직 하이 레벨이면(S840: 아니오), 위크 셀 로우 어드레스(WEAK_ADDR)에 해당하는 위크 셀 로우가 리프레쉬될 수 있다(S860).
CBR 리프레쉬 로우 어드레스(CBR_ADDR)가 메모리 셀 어레이에 포함된 메모리 셀 로우들의 로우 어드레스들의 최대 로우 어드레스(MAX_ADDR) 보다 커지 않다면(S870: 아니오), 리프레쉬 카운터는 "1"만큼 증가된 CBR 리프레쉬 로우 어드레스(CBR_ADDR)를 생성하고(S830), S840, S850 단계들을 포함하는 CBR 리프레쉬 동작을 반복 수행할 수 있다.
CBR 리프레쉬 로우 어드레스(CBR_ADDR)가 메모리 셀 어레이에 포함된 메모리 셀 로우들의 로우 어드레스들의 최대 로우 어드레스(MAX_ADDR) 보다 커지면(S870: 예), CBR 리프레쉬 로우 어드레스(CBR_ADDR)가 다시 초기화된다(S810). CBR 리프레쉬 로우 어드레스(CBR_ADDR)가 초기화됨에 따라, 메모리 셀 어레이에 포함된 메모리 셀 로우들이 다시 순차적으로 리프레쉬될 수 있다.
도 9는 본 발명의 실시예들에 따른 버퍼 칩에 의한 메모리 칩의 리프레쉬 방법을 설명하는 제3 예의 순서도이다. 도 9는 메모리 모듈의 온도를 모니터링하는 온도 센서가 버퍼 칩의 온도 정보 레지스터에 포함되는 경우에 대한 리프레쉬 방법을 설명한다. 온도 모니터링 주기는 온도 정보 레지스터에 설정된 소정의 주기로 조절될 수 있다.
도 9를 참조하면, 버퍼 칩은 버퍼 칩 내부의 온도 센서로부터 온도 센서들로부터 온도 정보들을 수신한다(S910). 버퍼 칩은 수신된 온도 정보(T)가 기준 온도(TBD) 보다 높다고 판단되면(S930), 메모리 칩들의 리프레쉬 주기를 기준 온도의 리프레쉬 주기(tREF) 보다 짧게 적용한다(S940). 버퍼 칩은 수신된 온도 정보(T)가 기준 온도(TBD) 보다 낮다고 판단되면(S930), 버퍼 칩은 메모리 칩들의 리프레쉬 주기를 기준 온도의 리프레쉬 주기(tREF)로 적용한다(S950).
도 10은 본 발명의 실시예들에 따른 버퍼 칩에 의한 메모리 칩의 리프레쉬 방법을 설명하는 제4 예의 순서도이다. 도 10은 메모리 모듈의 온도를 모니터링하는 온도 센서가 메모리 칩들에 포함되는 경우에 대한 리프레쉬 방법을 설명한다.
도 10을 참조하면, 버퍼 칩은 메모리 칩들의 온도 센서들로부터 온도 정보들을 수신한다(S1010). 버퍼 칩은 수신된 온도 정보들 중 가장 높은 온도 정보를 선택한다(S1020). 버퍼 칩은 선택된 온도 정보(T)가 기준 온도(TBD) 보다 높다고 판단되면(S1030), 메모리 칩들의 리프레쉬 주기를 기준 온도의 리프레쉬 주기(tREF) 보다 짧게 적용한다(S1040). 버퍼 칩은 수신된 온도 정보(T)가 기준 온도(TBD) 보다 낮다고 판단되면(S1030), 버퍼 칩은 메모리 칩들의 리프레쉬 주기를 기준 온도의 리프레쉬 주기(tREF)로 적용한다(S1050).
도 10의 리프레쉬 방법은 버퍼 칩에서 메모리 칩들의 온도 정보들 중 가장 높은 온도 정보를 선택하고, 가장 높은 온도 정보에 따라 리프레쉬 주기 변경을 설명하였다. 이와는 달리, 버퍼 칩이 메모리 칩들 각각의 온도 센서로부터 온도 정보를 수신하고, 각각의 온도 정보에 따라 해당 메모리 칩의 리프레쉬 주기를 변경할 수 있다. 버퍼 칩은 메모리 칩 각각에 대하여 메모리 칩의 온도 정보(T)가 기준 온도(TBD) 보다 높다고 판단되면, 해당 메모리 칩의 리프레쉬 주기를 기준 온도의 리프레쉬 주기(tREF) 보다 짧게 적용하고, 메모리 칩의 온도 정보(T)가 기준 온도(TBD) 보다 낮다고 판단되면, 해당 메모리 칩의 리프레쉬 주기를 기준 온도의 리프레쉬 주기(tREF)로 적용할 수 있다.
도 11 내지 도 14는 본 발명의 실시예들에 따른 버퍼 칩에 의한 메모리 칩의 리프레쉬 동작을 설명하는 타이밍도들이다.
도 11 내지 도 14을 참조하면, 버퍼 칩의 히든 리프레쉬 커맨드에 의해 메모리 칩이 히든 리프레쉬 동작 중일 때 버퍼 칩과 메모리 콘트롤러와의 동작 타이밍을 알 수 있다. 도 11 및 도 12는 버퍼 칩의 웨이트 신호(WAIT)가 새로운 핀으로 할당된 경우에 대한 설명이고, 도 13은 기존에 존재하는 데이터 입출력 핀(DQ)으로 할당된 경우에 대한 설명이다.
도 11을 참조하면, 메모리 모듈 상의 메모리 칩들이 버퍼 칩에 의해 히든 리프레쉬 동작 중일 때, 메모리 콘트롤러로부터 액티브 커맨드(ACT)가 발행될 수 있다. 메모리 콘트롤러는 액티브 커맨드(ACT)와 함께 액티브 커맨드(ACT)가 수행될 뱅크 어드레스 신호(BA)를 출력할 수 있다.
버퍼 칩은 클럭(CLK)에 동기되어 액티브 커맨드(ACT)와 뱅크 어드레스 신호(BA)를 수신하고, 제1 소정 시간(FL) 지연 후 로직 로우 레벨의 웨이트 신호(WAIT)를 발생할 수 있다. 웨이트 신호(WAIT)는 반대의 로직 레벨로 발생될 수도 있다.
여기에서, 제1 소정 시간(FL)은 리프레쉬 레이턴시(Refresh Latency)에 해당하는 시간으로 정의될 수 있다. 리프레쉬 레이턴시는 임의의 클럭(CLK) 사이클 수 예컨대, 4 클럭 사이클로 설정될 수 있다.
버퍼 칩의 웨이트 신호(WAIT)는 메모리 콘트롤러로 전송되고, 메모리 콘트롤러는 웨이트 신호(WAIT)에 응답하여 T0 시간에서 발행했던 액티브 커맨드(ACT)를 무시할 수 있다. 메모리 콘트롤러는 T0 시간으로부터 제2 소정 시간(tRTRY) 지연 후 T1 시간에서 액티브 커맨드(ACT)를 재발행할 수 있다. 메모리 콘트롤러는 T1 시간에서 액티브 커맨드(ACT)와 함께 뱅크 어드레스 신호(BA)를 출력할 수 있다.
여기에서, 제2 소정 시간(tRTRY)은 메모리 셀 하나를 리프레쉬하는 데 소요되는 리프레쉬 시간(tRFC)으로 설정될 수 있다. 리프레쉬 시간(tRFC)은 DRAM 메모리 용량에 따라 길어지는 경향을 가질 수 있다. 이에 따라, 제2 소정 시간의 최소 시간(tRTRYmin)은 리프레쉬 시간의 최소 시간(tRFCmin)으로 설정될 수 있다.
상술한 도 11의 리프레쉬 동작 타이밍에서, 버퍼 칩은 메모리 칩이 리프레쉬 중일 때 메모리 콘트롤러로부터 액티브 커맨드 수신하면, 리프레쉬 레이턴시 후에 웨이트(WAIT)를 발생할 수 있다. 웨이트 신호(WAIT)를 수신하는 메모리 콘트롤러는 웨이트 신호(WAIT) 수신 이전에 발행했던 액티브 커맨드(ACT)를 무시하고, 이전에 발행했던 액티브 커맨드(ACT)로부터 메모리 셀 하나를 리프레쉬하는 데 소요되는 리프레쉬 시간(tRFC) 후에 액티브 커맨드(ACT)를 재발행할 수 있다.
도 12를 참조하면, 메모리 모듈 상의 메모리 칩들이 버퍼 칩에 의해 히든 리프레쉬 동작 중일 때, 메모리 콘트롤러로부터 액티브 커맨드(ACT)가 발행될 수 있다. 메모리 콘트롤러는 액티브 커맨드(ACT)와 함께 액티브 커맨드(ACT)가 수행될 뱅크 어드레스 신호(BA)를 출력할 수 있다.
버퍼 칩은 클럭(CLK)에 동기되어 액티브 커맨드(ACT)와 뱅크 어드레스 신호(BA)를 수신하고, 리프레쉬 레이턴시 (FL) 지연 후 로직 로우 레벨의 웨이트 신호(WAIT)를 발생할 수 있다. 웨이트 신호(WAIT)는 반대의 로직 레벨로 발생될 수 있다. 버퍼 칩의 웨이트 신호(WAIT)는 메모리 콘트롤러로 전송될 수 있다.
메모리 콘트롤러는 웨이트 신호(WAIT)에 응답하여 액티브 커맨드(ACT)를 발행했던 T0 시간으로부터 제3 소정 시간(tRCDFL) 지연 후 T2 시간에서 액티브 커맨드(ACT)와 연관되는 독출 커맨드(RD)를 발행할 수 있다. 메모리 콘트롤러는 T2 시간에서 독출 커맨드(RD)와 함께 뱅크 어드레스 신호(BA)를 출력할 수 있다. 실시예들에 따라, 메모리 콘트롤러는 T2 시간에서 독출 커맨드(RD) 대신에 기입 커맨드를 뱅크 어드레스 신호(BA)와 함께 발행할 수 있다.
여기에서, 제3 소정 시간(tRCDFL)은 메모리 셀 하나를 리프레쉬하는 데 소요되는 리프레쉬 시간(tRFC)에다가 라스-투-카스 지연 시간(/RAS to /CAS delay, tRCD)을 합한 시간(tRFC+tRCD)으로 설정될 수 있다. 라스-투-카스 지연 시간(tRCD)은 /RAS 신호 인가 후 /CAS 신호 인가 사이의 시간을 나타내고, 리프레쉬 시간(tRFC)은 DRAM 메모리 용량에 따라 길어지는 경향을 가질 수 있다. 이에 따라, 제3 소정 시간의 최소 시간(tRCDFLmin)은 리프레쉬 시간의 최소 시간과 라스-투-카스 지연 시간의 최소 시간의 합한 시간(tRFCmin+tRCDmin)으로 설정될 수 있다.
상술한 도 12의 리프레쉬 동작 타이밍에서, 버퍼 칩은 메모리 칩이 리프레쉬 중일 때 메모리 콘트롤러로부터 액티브 커맨드 수신하면, 리프레쉬 레이턴시 후에 웨이트(WAIT)를 발생할 수 있다. 웨이트 신호(WAIT)를 수신하는 메모리 콘트롤러는 웨이트 신호(WAIT) 수신 이전에 발행했던 액티브 커맨드(ACT)로부터 메모리 셀 하나를 리프레쉬하는 데 소요되는 리프레쉬 시간(tRFC)에다가 라스-투-카스 지연 시간(tRCD)을 합한 시간(tRFC+tRCD=tRCDFL) 지연 후, 액티브 커맨드(ACT)와 연관되는 독출 또는 기입 명령(RD or WR)을 발행할 수 있다.
도 13을 참조하면, 메모리 모듈 상의 메모리 칩들이 버퍼 칩에 의해 히든 리프레쉬 동작 중일 때, 메모리 콘트롤러로부터 수신되는 커맨드가 메모리 칩들의 리프레쉬 동작으로 인해 지연될 수 있음을 알리는 신호(CID)를 기존의 데이터 입출력 핀(DQ)을 통해 메모리 콘트롤러로 전송할 수 있다. 버퍼 칩은 지연될 수 있는 메모리 콘트롤러의 커맨드를 식별하여 메모리 콘트롤러에 알려주기 위하여, 커맨드 식별 신호(CID)를 데이터 입출력 핀(DQ)으로 출력할 수 있다. 커맨드 식별 신호(CID)는 도 11 및 도 12의 웨이트 신호(WAIT)와 동일하게, 메모리 칩들이 리프레쉬 동작 중임을 나타내는 신호로 작용할 수 있다.
버퍼 칩은 메모리 콘트롤러로부터 제1 독출 커맨드(RD0)를 수신하고, 클럭(CLK)에 동기시켜 제1 독출 커맨드(RD0)를 메모리 칩들로 전달할 수 있다. 제1 독출 커맨드(RD0)에 응답하여 메모리 칩들은 버스트 길이 BL에 해당하는 독출 데이터를 데이터 입출력 패드(DQ)로 출력할 수 있다. 예컨대, 버스트 길이 BL=8에 해당하는 독출 데이터 (BL0-BL7)를 클럭 (CLK)의 상승 및 하강 에지에 맞추어 데이터 입출력 패드(DQ)로 출력할 수 있다.
버퍼 칩은 지연될 수 있는 메모리 콘트롤러의 커맨드에 대한 커맨드 식별 신호(CID)를 독출 데이터 (BL0-BL7)에 이어서 데이터 입출력 패드(DQ)로 출력할 수 있다. 커맨드 식별 신호(CID)는 예컨대, 직렬 2 비트 데이터로 클럭 (CLK)의 상승 및 하강 에지에 맞추어 출력될 수 있다. 실시예에 따라, 커맨드 식별 신호(CID)는 직렬 2 비트 데이터 대신에 다양한 직렬 데이터 비트들로 구현될 수 있다. 실시예들에 따라, 커맨드 식별 신호(CID)는 다수개의 데이터 입출력 패드들(DQs)로 출력되는 병렬 데이터 비트들로 구현될 수 있다.
제1 독출 커맨드(RD0)가 메모리 칩들의 리프레쉬 동작 중에 수신된 경우, 버퍼 칩은 제1 독출 커맨드(RD0)에 대한 커맨드 식별 신호(CID)를 독출 데이터 (BL0-BL7)에 이어서 데이터 입출력 패드(DQ)로 출력할 수 있다.
데이터 입출력 패드(DQ)로 출력되는 첫번째 버스트 길이에 해당하는 독출 데이터 BL0은 tRCDFL 시간에다가 리드 레이턴시 RL 를 합한 시간 (tRCDFL+RL) 후에 독출될 수 있다. tRCDFL 시간은 도 12에서 설명한 바와 같이, 액티브 커맨드(ACT)로부터 메모리 셀 하나를 리프레쉬하는 데 소요되는 리프레쉬 시간(tRFC)에다가 라스-투-카스 지연 시간(tRCD)을 합한 시간(tRFC+tRCD=tRCDFL)으로 설정될 수 있다.
메모리 콘트롤러는 제1 독출 커맨드(RD0) 발행 후 제4 소정 시간(tCCDFL) 후에 제2 독출 커맨드(RD1)를 발행할 수 있다. 제4 소정 시간(tCCDFL)은 tCCD 시간에다가 메모리 칩의 리프레쉬 동작에 따른 지연을 감안한 시간으로 설정될 수 있다. tCCD 시간은 /CAS 신호 인가 후 /CAS 신호 인가 사이의 시간을 나타낸다. 제4 소정 시간의 최소 시간(tCCDFLmin)은 버스트 길이 BL=8에 해당하는 독출 데이터 출력 시간에다가 커맨드 식별 신호 출력 시간을 합한 시간으로 설정될 수 있다. 본 실시예에서, 제4 소정 시간의 최소 시간(tCCDFLmin)은 독출 데이터의 4 클럭 사이클과 커맨드 식별 신호의 1 클럭 사이클을 더하여 5 클럭 사이클로 설정될 수 있다.
상술한 도 13의 리프레쉬 동작 방법에서, 버퍼 칩은 메모리 콘트롤러로부터 수신되는 제1 독출 커맨드(RD0)가 메모리 칩의 리프레쉬 동작으로 인해 지연될 수 있음을 알리는 커맨드 식별 신호(CID)를 출력할 수 있다. 커맨드 식별 신호(CID)는 제1 독출 커맨드(RD0)에 응답하여 데이터 입출력 핀(DQ)으로 출력되는 독출 데이터에 이어서 출력되어 메모리 콘트롤러로 전달될 수 있다.
도 14를 참조하면, 버퍼 칩은 메모리 칩들의 히든 리프레쉬 동작을 제어함에 있어서 뱅크별 리프레쉬를 스케쥴링 할 수 있다. 버퍼 칩은 메모리 칩들의 뱅크별 리프레쉬 커맨드를 프리차아지 커맨드(PRE)에 실어서 메모리 칩들로 전달할 수 있다. 이러한 프리차아지 커맨드를 복합 프리차아지 커맨드(PREPBR) 라고 칭할 수 있다.
복합 프리차아지 커맨드(PREPBR)는 클럭(CLK)에 동기되고 리프레쉬할 뱅크 어드레스(BANK_ADDR)와 함께 메모리 칩들로 전달될 수 있다. 뱅크 어드레스(BANK_ADDR)가 예컨대, 5 비트들로 제공되는 경우, 4 비트는 리프레쉬할 뱅크의 어드레스를 나타내고, 1 비트는 해당 뱅크가 뱅크별 리프레쉬를 수행하는 것인지 아닌지를 나타내는 뱅크별 리프레쉬 정보로 설정될 수 있다.
복합 프리차아지 커맨드(PREPBR) 발행 후, 다음 액티브 명령(ACT)을 준비하기 위하여 비트라인을 프리차아지시키는 시간(tRPPBR)이 필요하다. tRPPBR 시간은 복합 로우 프리차아지 시간이라 칭할 수 있다. 복합 로우 프리차아지 시간(tRPPBR)은 로우 프리차아지 시간(tRP)에다가 메모리 셀 하나를 리프레쉬하는 데 소요되는 리프레쉬 시간(tRFC)을 합한 시간(tRP+tRFC)으로 설정될 수 있다.
실시예에 따라, 버퍼 칩은 프리차아지 커맨드(PRE)에 뱅크별 리프레쉬를 싣지 않을 수 있다. 이 경우, 프리차아지 커맨드(PRE) 발행 후 다음 액티브 명령(ACT)까지의 시간은 로우 프리차아지 시간(tRP)으로 설정될 수 있다.
상술한 도 14의 리프레쉬 동작 방법에서, 버퍼 칩은 메모리 칩들의 뱅크별 리프레쉬에 관한 정보를 프리차아지 커맨드에 실어서 메모리 칩들로 전달할 수 있다. 이에 따라, 프리차아지 커맨드와 뱅크별 리프레쉬 커맨드를 머지(Merge)함에 따라 커맨드 발생 횟수를 줄일 수 있다. 이에 따라, 커맨드 밴드 위스를 확보할 수 있다.
도 15는 본 발명의 실시예들에 따른 버퍼 칩과 메모리 칩을 모바일 시스템에 응용한 예를 나타내는 블록도이다.
도 15를 참조하면, 모바일 시스템(1500)은 어플리케이션 프로세서(1510), 통신(Connectivity)부(1520), 휘발성 메모리 장치(1530), 비휘발성 메모리 장치(1540), 사용자 인터페이스(1550) 및 파워 서플라이(1560)를 포함할 수 있다. 실시예에 따라, 모바일 시스템(1500)은 휴대폰(Mobile Phone), 스마트 폰(Smart Phone), 개인 정보 단말기(Personal Digital Assistant; PDA), 휴대형 멀티미디어 플레이어(Portable Multimedia Player; PMP), 디지털 카메라(Digital Camera), 음악재생기(Music Player), 휴대용 게임 콘솔(Portable Game Console), 네비게이션(Navigation)시스템 등과 같은 임의의 모바일 시스템일 수 있다.
어플리케이션 프로세서(1510)는 인터넷 브라우저, 게임, 동영상 등을 제공하는 어플리케이션들을 실행할 수 있다. 실시예에 따라, 어플리케이션 프로세서(1510)는 하나의 프로세서 코어(Single Core)를 포함하거나, 복수의 프로세서 코어들(Multi-Core)을 포함할 수 있다. 예를 들어, 어플리케이션 프로세서(1510)는 듀얼 코어(Dual-Core), 퀴드 코어(Quid-Core), 헥사 코어(Hexa-Core)를 포함할 수 있다. 또한, 실시예에 따라, 어플리케이션 프로세서(1510)는 내부 또는 외부에 위치한 캐시 메모리(Cache Memory)를 더 포함할 수 있다.
통신부(1520)는 외부 장치와 무선 통신 또는 유선 통신을 수행할 수 있다. 예를 들어, 통신부(1520)는 이더넷(Ethernet) 통신, 근거리 자기장 통신(Near Field Communication; NFC), 무선 식별(Radio Frequency Identification; RFID) 통신, 이동 통신(Mobile Telecommunication), 메모리 카드 통신, 범용 직렬 버스(Universal Serial Bus; USB) 통신 등을 수행할 수 있다. 예를 들어, 통신부(1520)는 베이스밴드 칩 셋(Baseband Chipset)을 포함할 수 있고, GSM, GRPS, WCDMA, HSxPA 등의 통신을 지원할 수 있다.
휘발성 메모리 장치(1530)는 어플리케이션 프로세서(1510)에 의해 처리되는 데이터를 저장하거나, 동작 메모리(Working Memory)로서 작동할 수 있다. 휘발성 메모리 장치(1530)는 메모리 칩과 메모리 칩과 연결되는 버퍼 칩을 포함할 수 있다. 예를 들어, 메모리 칩은 DDR SDRAM, LPDDR SDRAM, GDDR SDRAM, RDRAM 등과 같은 동적 램덤 엑세스 메모리이거나, 리프레쉬 동작이 필요한 임의의 휘발성 메모리 칩일 수 있다. 버퍼 칩은 메모리 칩의 리프레쉬 동작을 제어하는 히든 리프레쉬 명령을 발행할 수 있다. 버퍼 칩은 히든 리프레쉬 명령에 따라 메모리 칩이 리프레쉬 중임을 나타내는 웨이트 신호를 출력하고, 메모리 칩의 뱅크들을 순차 순환 방식으로 리프레쉬하고, 메모리 칩의 위크 셀 로우를 리프레쉬 주기보다 짧은 주기로 리프레쉬하고, 모니터링된 온도 정보에 따라 메모리 칩의 리프레쉬 주기를 변경할 수 있다.
비휘발성 메모리 장치(1540)는 모바일 시스템(1500)을 부팅하기 위한 부트 이미지를 저장할 수 있다. 예를 들어, 비휘발성 메모리 장치(1540)는 EEPROM(Electrically Erasable Programmable Read-Only Memory), 플레시 메모리(Flash Memory), PRAM(Phase Change Random Access Memory), RRAM(Resistance Random Access Memory), NFGM(Nano Floating Gate Memory), PoRAM(Polymer Random Access Memory), MRAM(Magnetic Random Access Memory), FRAM(Ferroelectric Random Access Memory) 또는 이와 유사한 메모리로 구현될 수 있다.
사용자 인터페이스(1550)는 키패드, 터치 스크린과 같은 하나 이상의 입력 장치, 및/또는 스피커, 디스플레이 장치와 하나 이상의 출력 장치를 포함할 수 있다. 파워 서플라이(1560)의 동작 전압을 공급할 수 있다. 또한, 실시예에 따라, 모바일 시스템(1500)은 카메라 이미지 프로세서(Camera Image Processor; CIP)를더 포함할 수 있고, 메모리 카드(Memory Card), 솔리드 스테이트 드라이브(Solid State Drive; SSD), 하드 디스크 드라이브(Hard Disk Drive; HDD), 씨디롬(CD-ROM) 등과 같은 저장 장치를 더 포함할 수 있다.
모바일 시스템(1500) 또는 모바일 시스템(1500)의 구성요소들은 다양한 형태들의 패키지를 이용하여 실장될 수 있는데, 예를 들어, PoP(Package on Package), BGAs(Ball grid arrays), CSPs(Chip scale packages), PLCC(Plastic Leaded Chip Carrier), PDIP(Plastic Dual In-Line Package), Die in Waffle Pack, Die in Water Form, COB(Chip On Board), CERDIP(Ceramic Dual In-Line Package), MQFP(Plastic Metric Quad Flat Pack), TQFP(Thin Quad Flat- Pack), SOIC(Small Outline Integrated Circuit), SSOP(Shrink Small Outline Package), TSOP(Thin Small Outline Package), TQFP(Thin Quad Flat-Pack), SIP(System In Package), MCP(Multi Chip Package), WFP(Water-level Fabricated Package), WSP(Water-level Processed Stack Package) 등과 같은 패키지들을 이용하여 실장될 수 있다.
도 16는 본 발명의 실시예들에 따른 메모리 칩과 버퍼 칩을 장착한 메모리 모듈을 컴퓨팅 시스템에 응용한 예를 나타내는 블록도이다.
도 16를 참조하면, 컴퓨터 시스템(1600)은 프로세서(1610), 입출력 허브(1620), 입출력 컨트롤러 허브(1630), 적어도 하나의 메모리 모듈(1640) 및 그래픽 카드(1650)를 포함한다. 실시예에 따라, 컴퓨터 시스템(1600)은 개인용 컴퓨터(Personal Computer: PC), 서버 컴퓨터(Server Computer), 워크스테이션(Workstation), 노트북(Laptop), 휴대폰(Mobile Phone), 스마트 폰(Smart Phone), 개인 정보 단말기(Personal digital assistant: PDA), 휴대형 멀티미디어 플레이어(Portable Multimedia Player: PMP), 디지털 카메라(Digital Camera), 디지털 TV(Digital Television), 셋-탑 박스(Set-Top Box), 음악 재생기(Music Player), 휴대용 게임 콘솔(Portable game console), 네비게이션(Navigation) 시스템 등과 같은 임의의 컴퓨팅 시스템일 수 있다.
프로세서(1610)는 특정 계산들 또는 태스크들과 같은 다양한 컴퓨팅 기능들을 실행할 수 있다. 예를 들어, 프로세서(1610)는 마이크로 프로세서 또는 중앙 처리 장치(Central Processing Uint: CPU) 일 수 있다. 실시예에 따라, 프로세서(1610)는 하나의 프로세서 코어(Single Core)를 포함하거나, 복수의 프로세서 코어들(Multi-Core)을 포함할 수 있다. 예를 들어, 프로세서(1610)는 듀얼 코어(Dual-Core), 쿼드 코어(Quad-Core), 헥사 코드(Hexa-Core) 등을 포함할 수 있다. 또한, 도 16에는 하나의 프로세서(1610)를 포함하는 컴퓨팅 시스템(1600)이 도시되어 있으나, 실시예에 따라, 컴퓨팅 시스템(1600)은 복수의 프로세서들을 포함할 수 있다. 또한 실시예에 따라, 프로세서(1610)는 내부 또는 외부네 위치한 캐시 메모리(Cache Memory)를 더 포함할 수 있다.
프로세서(1610)는 메모리 모듈(1640)의 동작을 제어하는 메모리 콘트로러(1611)를 포함할 수 있다. 프로세서(1610)에 포함된 메모리 콘트롤러(1611)는 집적 메모리 콘트롤러(Intergrated Memory Controller: IMC) 라 불릴 수 있다. 메모리 콘트롤러(1611)와 메모리 모듈(1640) 사이의 메모리 인터페이스는 복수의 신호선들을 포함하는 하나의 채널로 구현되거나, 복수의 채널들로 구현될 수 있다. 또한, 각 채널에는 하나 이상의 메모리 모듈(1640)이 연결될 수 있다. 실시예에 따라, 메모리 콘트롤러(1611)는 입출력 허브(1620) 내에 위치할 수 있다. 메모리 콘트롤러(1611)를 포함하는 입출력 허브(1620)는 메모리 콘트롤러 허브(memory Controller Hub: MCH)라 불릴 수 있다.
메모리 모듈(1640)는 메모리 콘트롤러로부터 제공된 데이터를 저장하는 복수의 메모리 칩들과 버퍼 칩을 포함할 수 있다. 메모리 칩들은 예컨대, DDR SDRAM, LPDDR SDRAM, GDDR SDRAM, RDRAM 등과 같은 동적 램덤 엑세스 메모리이거나, 리프레쉬 동작이 필요한 임의의 휘발성 메모리 칩일 수 있다. 버퍼 칩은 메모리 칩들의 리프레쉬 동작을 제어하는 히든 리프레쉬 명령을 발행할 수 있다. 버퍼 칩은 히든 리프레쉬 명령에 따라 메모리 칩들이 리프레쉬 중임을 나타내는 웨이트 신호를 출력하고, 메모리 칩들의 뱅크들을 순차 순환 방식으로 리프레쉬하고, 메모리 칩들의 위크 셀 로우를 리프레쉬 주기보다 짧은 주기로 리프레쉬하고, 모니터링된 온도 정보에 따라 메모리 칩들의 리프레쉬 주기를 변경할 수 있다.
입출력 허브(1620)는 그래픽 카드(1650)와 같은 장치들과 프로세서(1610) 사이의 데이터 전송을 관리할 수 있다. 입출력 허브(1620)는 다양한 방식의 인터페이스를 통하여 프로세서(1610)에 연결될 수 있다. 예를 들어, 입출력 허브(1620)와 프로세서(1610)는, 프론트 사이드 버스(Front Side Bus; FSB), 시스템 버스(System Bus), 하이퍼트랜스포트(HyperTransport), 라이트닝 데이터 트랜스포트(Lighting Data Transport; LDT), 퀵패스 인터커넥트(QuickPath Interconnect; QPI), 공통 시스템 인터페이스, 주변 구성요소 인터페이스-익스프레스(Peripheral Component Interface-Express; CSI 등의 다양한 표준의 인터페이스로 연결할 수 있다. 도 16에는 하나의 입출력 허브(1620)를 포함하는 컴퓨팅 시스템(1600)이 도시되어 있으나, 실시예에 따라, 컴퓨팅 시스템(1600)은 복수의 입출력 허브들을 포함할 수 있다.
입출력 허브(1620)는 장치들과의 다양한 인터페이스들을 제공할 수 있다. 예를 들어, 입출력 허브(1620)는 가속 그래픽 포트(Accelerated Graphics Port;AGP) 인터페이스, 주변 구성요소 인터페이스-익스프레스(Peripheral Component Interface-Express; PCIe), 통신 스트리밍 구조(Communications Streaming Architecture; CSA) 인터페이스 등을 제공할 수 있다.
그래픽 카드(1650)는 AGP 또는 PCIe를 통하여 입출력 허브(1620)와 연결될 수 있다. 그래픽 카드(1650)는 영상을 표시하기 위한 디스플레이 장치(미도시)를 제어할 수 있다. 그래픽카드(1650)는 이미지 데이터 처리를 위한 내부 프로세서 및 내부 프로세서 및 내부 반도체 메모리 장치를 포함할 수 있다. 실시예에 따라, 입출력 허브(1620)는, 입출력 허브(1620)의 외부에 위치한 그래픽 카드(1650)와 함께, 또는 그래픽 카드(1650) 대신에 입출력 허브(1620)의 내부에 그래픽 장치를 포함할 수 있다. 입출력 허브(1620)에 포함된 그래픽 장치는 집적 그래픽(Integrated Graphics)이라 불릴 수 있다. 또한, 메모리 컨트롤러 및 그래픽 장치를 포함하는 입출력 허브(1620)는 그래픽 및 메모리 컨트롤러 허브(Graphics and Memory Controller Hub; GMCH)라 불릴 수 있다.
입출력 컨트롤러 허브(1630)는 다양한 시스템 인터페이스들이 효율적으로 동작하도록 데이터 버퍼링 및 인터페이스 중재를 수행할 수 있다. 입출력 컨트롤러 허브(1630)는 내부 버스를 통하여 입출력 허브(1620)와 연결될 수 있다. 예를 들어, 입출력 허브(1620)와 입출력 컨트롤러 허브(1630)는 다이렉트 미디어 인터페이스(Direct Media Interface; DMI), 허브 인터페이스, 엔터프라이즈 사우스브릿지 인터페이스(Enterprise Southbridge interface; ESI), PCIe 등을 통하여 연결될 수 있다.
입출력 컨트롤러 허브(1630)는 주변 장치들과의 다양한 인터페이스들을 제공할 수 있다. 예를 들어, 입출력 컨트롤러 허브(1630)는 범용 직렬 버스(Universal Serial Bus; USB)포트, 직렬 ATA(Serial Advanced Technology Attachment; SATA) 포트, 범용 입출력(General Purpose Input/output; GPIO), 로우 핀 카운트(Low Pin Count; LPC) 버스, 직렬 주변 인터페이스(Serial Peripheral Interface; SPI), PCI, PCIe 등을 제공할 수 있다.
실시예에 따라, 프로세서(1610), 입출력 허브(1620) 또는 입출력 컨트롤러 허브(1630) 중 2 이상의 구성 요소들이 하나의 칩셋으로 구현될 수 있다.
본 발명은 도면에 도시된 실시예를 참고로 설명되었으나 이는 예시적인 것에 불과하며, 본 기술 분야의 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 다른 실시예가 가능하다는 점을 이해할 것이다. 따라서, 본 발명의 진정한 기술적 보호 범위는 첨부된 특허청구범위의 기술적 사상에 의하여 정해져야 할 것이다.

Claims (20)

  1. 다수개의 메모리 칩들; 및
    상기 메모리 칩들의 리프레쉬 동작을 제어하는 히든 리프레쉬 명령을 발행하고, 상기 히든 리프레쉬 명령에 따라 상기 메모리 칩이 리프레쉬 중임을 나타내는 웨이트 신호를 발생하여 메모리 콘트롤러로 출력하는 버퍼 칩을 구비하는 것을 특징으로 하는 메모리 모듈.
  2. 제1항에 있어서, 상기 버퍼 칩은
    상기 메모리 콘트롤러와 무관하게 상기 히든 리프레쉬 명령을 발행하는 것을 특징으로 하는 메모리 모듈.
  3. 제1항에 있어서,
    상기 웨이트 신호는 상기 메모리 모듈에 할당된 웨이트 신호 핀을 통하여 상기 메모리 콘트롤러로 전달되는 것을 특징으로 하는 메모리 모듈.
  4. 제1항에 있어서,
    상기 웨이트 신호는 상기 메모리 칩이 리프레쉬 중일 때 상기 메모리 콘트롤러로부터 수신된 커맨드로부터 리프레쉬 레이턴시 후에 발생되는 것을 특징으로 하는 메모리 모듈.
  5. 제1항에 있어서,
    상기 웨이트 신호를 수신하는 상기 메모리 콘트롤러는 상기 웨이트 신호 에 응답하여 상기 웨이트 신호 수신 이전에 발행했던 커맨드를 재발행하는 것을 특징으로 하는 메모리 모듈.
  6. 제1항에 있어서,
    상기 웨이트 신호를 수신하는 상기 메모리 콘트롤러는 상기 웨이트 신호 수신 이전에 발행했던 제1 커맨드로부터 제1 시간 지연 후, 상기 제1 커맨드와 연관되는 제2 커맨드를 발행하는 것을 특징으로 하는 메모리 모듈.
  7. 제1항에 있어서,
    상기 웨이트 신호는 상기 메모리 모듈에 할당된 데이터 입출력 핀을 통하여 상기 메모리 콘트롤러로 전달되는 것을 특징으로 하는 메모리 모듈.
  8. 다수개의 메모리 칩들; 및
    상기 메모리 칩들의 리프레쉬 동작을 제어하는 히든 리프레쉬 명령을 발행하고, 상기 히든 리프레쉬 명령에 따라 상기 메모리 칩의 뱅크 단위로 리프레쉬하는 버퍼 칩을 구비하는 것을 특징으로 하는 메모리 모듈.
  9. 제8항에 있어서, 상기 버퍼 칩은
    메모리 콘트롤러와 무관하게 상기 히든 리프레쉬 명령을 발행하는 것을 특징으로 하는 메모리 모듈.
  10. 제8항에 있어서, 상기 버퍼 칩은
    상기 메모리 칩들의 뱅크별 리프레쉬에 관한 정보를 프리차아지 커맨드에 실어서 상기 메모리 칩들로 전달하는 것을 특징으로 하는 메모리 모듈.
  11. 제8항에 있어서, 상기 버퍼 칩은
    상기 메모리 칩의 뱅크들 중 액티브 동작 중이지 않은 뱅크를 우선적으로 리프레쉬하고, 나머지 뱅크들을 순차적으로 리프레쉬하는 것을 특징으로 하는 메모리 모듈.
  12. 다수개의 메모리 칩들; 및
    상기 메모리 칩들의 리프레쉬 동작을 제어하는 히든 리프레쉬 명령을 발행하고, 상기 히든 리프레쉬 명령에 따라 상기 메모리 칩의 위크 셀 로우를 리프레쉬 주기보다 짧은 주기로 리프레쉬하는 버퍼 칩을 구비하는 것을 특징으로 하는 메모리 모듈.
  13. 제12항에 있어서, 상기 버퍼 칩은
    메모리 콘트롤러와 무관하게 상기 히든 리프레쉬 명령을 발행하는 것을 특징으로 하는 메모리 모듈.
  14. 제12항에 있어서, 상기 버퍼 칩은
    상기 메모리 칩들의 위크 셀 로우 개수 정보를 저장하는 것을 특징으로 하는 메모리 모듈.
  15. 제12항에 있어서, 상기 메모리 칩들 각각은
    해당 메모리 칩의 상기 위크 셀 로우를 저장하는 어드레스 저장부를 구비하는 것을 특징으로 하는 메모리 모듈.
  16. 다수개의 메모리 칩들; 및
    상기 메모리 칩들의 리프레쉬 동작을 제어하는 히든 리프레쉬 명령을 발행하고, 상기 히든 리프레쉬 명령에 응답하여 상기 메모리 칩들로부터 모니터링된 온도 정보에 따라 상기 메모리 칩들의 리프레쉬 주기를 변경하는 버퍼 칩을 구비하는 것을 특징으로 하는 메모리 모듈.
  17. 제16항에 있어서, 상기 버퍼 칩은
    메모리 콘트롤러와 무관하게 상기 히든 리프레쉬 명령을 발행하는 것을 특징으로 하는 메모리 모듈.
  18. 제16항에 있어서,
    상기 버퍼 칩은 상기 모니터링된 온도 정보 중 가장 높은 온도 정보에 따라 상기 메모리 칩들의 리프레쉬 주기를 변경하는 것을 특징으로 하는 메모리 모듈.
  19. 다수개의 메모리 칩들; 및
    상기 메모리 칩들의 리프레쉬 동작을 제어하는 리프레쉬 명령을 발행하고, 메모리 콘트롤러로부터 커맨드 신호와 어드레스 신호 중 적어도 하나의 신호를 수신하여 상기 메모리 칩들로 전송하는 커맨드/어드레스 레지스터 칩을 구비하는 것을 특징으로 하는 메모리 모듈.
  20. 제19항에 있어서, 상기 커맨드/어드레스 레지스터 칩은
    상기 메모리 콘트롤러와 무관하게 상기 리프레쉬 명령을 발행하고, 상기 리프레쉬 명령에 따라 상기 메모리 칩이 리프레쉬 중임을 나타내는 웨이트 신호를 발생하여 상기 메모리 콘트롤러로 출력하는 것을 특징으로 하는 메모리 모듈.
KR1020130110621A 2013-06-26 2013-09-13 리프레쉬 동작을 제어하는 버퍼 칩을 장착하는 메모리 모듈 KR102171260B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US14/299,548 US20150003172A1 (en) 2013-06-26 2014-06-09 Memory module including buffer chip controlling refresh operation of memory devices

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US201361839400P 2013-06-26 2013-06-26
US61/839,400 2013-06-26

Publications (2)

Publication Number Publication Date
KR20150001570A true KR20150001570A (ko) 2015-01-06
KR102171260B1 KR102171260B1 (ko) 2020-10-28

Family

ID=52475300

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020130110621A KR102171260B1 (ko) 2013-06-26 2013-09-13 리프레쉬 동작을 제어하는 버퍼 칩을 장착하는 메모리 모듈

Country Status (1)

Country Link
KR (1) KR102171260B1 (ko)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20160147509A (ko) * 2015-06-15 2016-12-23 삼성전자주식회사 저장 장치의 온도별 데이터 관리 방법
US10032687B2 (en) 2016-10-25 2018-07-24 SK Hynix Inc. Temperature control device, semiconductor device including the same, and method for controlling the semiconductor device
KR20190091097A (ko) * 2018-01-26 2019-08-05 삼성전자주식회사 메모리 모듈의 정보를 실시간으로 모니터링하는 방법 및 시스템
EP3824467A4 (en) * 2018-07-21 2022-04-13 Advanced Micro Devices, Inc. CONFIGURATION OF DYNAMIC UPDATES OF RANDOM ACCESS STORAGE FOR SYSTEMS WITH MULTIPLE CLASSES OF STORAGE

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7088632B2 (en) * 2004-05-26 2006-08-08 Freescale Semiconductor, Inc. Automatic hidden refresh in a dram and method therefor

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7088632B2 (en) * 2004-05-26 2006-08-08 Freescale Semiconductor, Inc. Automatic hidden refresh in a dram and method therefor

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20160147509A (ko) * 2015-06-15 2016-12-23 삼성전자주식회사 저장 장치의 온도별 데이터 관리 방법
US10032687B2 (en) 2016-10-25 2018-07-24 SK Hynix Inc. Temperature control device, semiconductor device including the same, and method for controlling the semiconductor device
KR20190091097A (ko) * 2018-01-26 2019-08-05 삼성전자주식회사 메모리 모듈의 정보를 실시간으로 모니터링하는 방법 및 시스템
EP3824467A4 (en) * 2018-07-21 2022-04-13 Advanced Micro Devices, Inc. CONFIGURATION OF DYNAMIC UPDATES OF RANDOM ACCESS STORAGE FOR SYSTEMS WITH MULTIPLE CLASSES OF STORAGE

Also Published As

Publication number Publication date
KR102171260B1 (ko) 2020-10-28

Similar Documents

Publication Publication Date Title
US11282561B2 (en) Refresh command control for host assist of row hammer mitigation
US10755753B2 (en) Memory device with flexible internal data write control circuitry
US10636476B2 (en) Row hammer mitigation with randomization of target row selection
US10679698B2 (en) Memory preset adjustment based on adaptive calibration
US20150003172A1 (en) Memory module including buffer chip controlling refresh operation of memory devices
KR102329673B1 (ko) 해머 리프레쉬 동작을 수행하는 메모리 장치 및 이를 포함하는 메모리 시스템
KR101974108B1 (ko) 리프레쉬 어드레스 생성기, 이를 포함하는 휘발성 메모리 장치 및 휘발성 메모리 장치의 리프레쉬 방법
KR20160056056A (ko) 반도체 메모리 장치 및 이를 포함하는 메모리 시스템
US20200151070A1 (en) Inline buffer for in-memory post package repair (ppr)
US11210167B2 (en) Memory wordline isolation for improvement in reliability, availability, and scalability (RAS)
KR102223007B1 (ko) 반도체 메모리 장치, 이의 리프레쉬 방법 및 반도체 메모리 장치의 리프레쉬 카운터
US20140237177A1 (en) Memory module and memory system having the same
US11200113B2 (en) Auto-increment write count for nonvolatile memory
US20220121398A1 (en) Perfect row hammer tracking with multiple count increments
NL2031713B1 (en) Double fetch for long burst length memory data transfer
KR102171260B1 (ko) 리프레쉬 동작을 제어하는 버퍼 칩을 장착하는 메모리 모듈
KR20230032052A (ko) 메모리 컨트롤러 및 메모리 시스템
US20220012173A1 (en) Flexible configuration of memory module data width
US20220093202A1 (en) Adaptive dram (dynamic random access memory) burst length for inline ecc (error checking and correction)
US20220012195A1 (en) Enabling logic for flexible configuration of memory module data width

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant