KR101642208B1 - 동적 메모리 성능 스로틀링 - Google Patents

동적 메모리 성능 스로틀링 Download PDF

Info

Publication number
KR101642208B1
KR101642208B1 KR1020147017866A KR20147017866A KR101642208B1 KR 101642208 B1 KR101642208 B1 KR 101642208B1 KR 1020147017866 A KR1020147017866 A KR 1020147017866A KR 20147017866 A KR20147017866 A KR 20147017866A KR 101642208 B1 KR101642208 B1 KR 101642208B1
Authority
KR
South Korea
Prior art keywords
rank
memory
memory device
misalignment
ranks
Prior art date
Application number
KR1020147017866A
Other languages
English (en)
Other versions
KR20140098832A (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 인텔 코포레이션
Publication of KR20140098832A publication Critical patent/KR20140098832A/ko
Application granted granted Critical
Publication of KR101642208B1 publication Critical patent/KR101642208B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/04Arrangements for writing information into, or reading information out from, a digital store with means for avoiding disturbances due to temperature effects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/1668Details of memory controller
    • 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/402Digital 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 with charge regeneration individual to each memory cell, i.e. internal refresh
    • 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
    • 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
    • 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/4076Timing 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/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
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C2207/00Indexing scheme relating to arrangements for writing information into, or reading information out from, a digital store
    • G11C2207/22Control and timing of internal memory operations
    • G11C2207/2254Calibration
    • 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/025Geometric lay-out considerations of storage- and peripheral-blocks in a semiconductor storage device

Abstract

동적 메모리 성능 스로틀링. 메모리 장치의 일 실시예는 복수의 연결된 메모리 엘리먼트를 포함하는 메모리 스택 - 메모리 엘리먼트들은 다수의 랭크들을 포함하고, 복수의 랭크는 제1 랭크 및 제2 랭크를 포함함 - , 및 메모리 제어기를 포함하는 로직 장치를 포함한다. 메모리 제어기는 제1 랭크에 대한 판독 요청 및 제2 랭크에 대한 판독 요청에 관한 데이터 신호들 사이의 오정렬의 양을 결정하고, 제1 랭크와 제2 랭크 사이의 오정렬이 임계값보다 더 크다고 결정할 때, 메모리 제어기는 제1 랭크에 대한 데이터 신호와 제2 랭크에 대한 데이터 신호 사이에 타임 시프트를 삽입한다.

Description

동적 메모리 성능 스로틀링{DYNAMIC MEMORY PERFORMANCE THROTTLING}
본 발명의 실시예들은 일반적으로 전자 장치들에 관한 것으로, 특히, 동적 메모리 성능 스로틀링에 관한 것이다.
각종 종류의 컴퓨팅 동작들에 대한 추가 밀도를 메모리에 제공하기 위해, 복수의 근접 연결 메모리 엘리먼트(3D 스택 메모리 또는 스택 메모리라고 할 수 있음)을 가진 메모리 장치들이 개발중이다.
3D 스택 메모리는 메모리 스택이라고 할 수 있는 DRAM(dynamic random-access memory) 메모리 엘리먼트들의 연결된 층들 또는 패키지들을 포함할 수 있다. 스택 메모리는 단일 장치 또는 패키지에서 막대한 양의 컴퓨터 메모리를 제공하는데 사용될 수 있으며, 장치 또는 패키지는 메모리 제어기 및 CPU(central processing unit) 또는 다른 시스템 엘리먼트들 등의 시스템 컴포넌트들을 더 포함할 수 있다.
그러나, 스택 메모리 장치 등의 더 큰 메모리 구조에서, 신호들은 정렬되지 않을 수 있다. 종래의 장치 또는 동작에서, 신호들을 재정렬하기 위해 메모리 신호들이 중단될 수 있지만, 신호 재정렬을 위한 동작의 중단은 메모리 장치를 사용하는 장치 또는 시스템에 대한 성능 비용을 야기한다.
본 발명의 실시예들은 첨부 도면들의 도면들에서 제한이 아니라 일례로서 도시되며, 도면들에서 유사한 참조 부호들은 유사한 요소들을 나타낸다.
도 1은 스택 메모리 장치의 실시예의 도면이다.
도 2는 성능 스로틀링을 제공하는 3D 스택 메모리의 일 실시예를 도시한다.
도 3은 메모리 장치의 일 실시예의 타이밍을 도시하는 타이밍 도면이다.
도 4는 랭크 대 랭크(rank-to-rank) 판독 요청들의 재정렬을 도시하는 타이밍 도면이다.
도 5는 오정렬을 다루기 위한 성능 스로틀링의 일 실시예를 도시하는 타이밍 도면이다.
도 6은 신호들의 오정렬을 다루기 위한 메모리 동작들의 스로틀링 방법의 일 실시예를 도시한 흐름도이다.
도 7은 스택 메모리 장치를 포함하는 이동 컴퓨팅 장치의 일 실시예를 도시하는 블록도이다.
도 8은 스택 메모리를 포함하는 컴퓨팅 시스템의 일 실시예를 도시한다.
본 발명의 실시예들은 일반적으로 열 데이터를 사용하는 3D 스택 메모리에 대한 동적 동작들에 관한 것이다.
본 명세서에서 사용된 바와 같이:
"3D 스택 메모리"(여기서, 3D는 3차원을 나타냄) 또는 "스택 메모리"는 다수의 연결된 메모리 층들, 메모리 패키지들 또는 다른 메모리 엘리먼트들을 포함하는 컴퓨터 메모리를 의미한다. 3D 스택 메모리는 WideIO 메모리 장치를 포함할 수 있다. 메모리는 수직으로 스택되거나 또는 수평으로(예를 들어, 나란히) 스택될 수 있으며, 또는 달리 함께 연결된 메모리 엘리먼트들을 포함할 수 있다. 특히, 스택 메모리 DRAM 장치 또는 시스템은 복수의 DRAM 다이 층을 가진 메모리 장치를 포함할 수 있다. 스택 메모리 장치는 본 명세서에서 시스템 층이라고 할 수 있는, 장치 내의 시스템 엘리먼트들을 또한 포함할 수 있으며, 여기서, 시스템 층은 CPU(중앙 처리 장치), 메모리 제어기(예를 들어, WideIO 메모리 제어기) 및 다른 관련 시스템 엘리먼트들 등의 엘리먼트들을 포함한다. 시스템 층은 시스템 온 칩(SoC)을 포함할 수 있다. 일부 실시예들에서, 로직 칩은 애플리케이션 프로세서 또는 그래픽 프로세싱 유닛(GPU)일 수 있다. 3D 스택 메모리는 WideIO 메모리 장치를 포함할 수 있지만, 이로만 제한되지는 않는다.
동작시, 스택 메모리 장치의 트래픽은 시간이 지남에 따라 정렬되지 않게 될 수 있다. 스택 메모리 장치에 의해 생성된 상이한 열 증감들(unequal heat gradients)은 신호 정렬시 시프트들을 야기한다. 예를 들어, WideIO DRAM 다이는 동작시 가열되어, 결과로서의 열 증감들이 메모리 장치의 상이한 랭크들이 정렬되지 않게 한다. 그러나, 오정렬은 메모리 장치의 타이밍 특성들을 포함하는 다른 요인들에 의해 야기될 수 있으며, 실시예들은 열 증감들 또는 오정렬의 다른 특정 원인에 의해 야기된 오정렬로 제한되지 않는다. 오정렬이 너무 크게 되면, 결과는 데이터 오류들을 야기할 수 있으며, 특정 표준 요구 사항들을 어길 수 있다. 일례에서, WideIO DRAM들은 PVT(process, voltage & temperature) 변화들에 걸쳐 랭크들 사이에 500 psec(피코세컨드) 이내의 랭크 대 랭크 타이밍 정확도를 제공할 필요가 있다.
시스템을 튜닝할 때, WideIO DRAM들은 정렬을 유지하기 위해 DQ(Data) 및 DQS(Data Strobe Signal) 생성 회로들에 가변 지연들을 삽입할 수 있다. WideIO 제어기들은 상이한 DQ 라인들에서 2개의 펄스들의 상대적인 도착 시간들을 (100 psec 내에서) 결정하기 위한 위상 판별 회로들을 포함한다. 그러나, 메모리 스택의 열 증감 또는 다른 요인들이 여전히 오정렬을 야기할 수 있다. 종래의 동작에서, 특정 임계값보다 큰 데이터의 검출된 오정렬은 재정렬을 위해 데이터 트래픽을 중단함으로써 처리된다. WideIO 시스템에서, 종래의 기능은 상이한 DRAM 랭크 데이터 및 데이터 스트로브 신호들이 오정렬되면 일정 시간 기간 동안 WideIO DRAM 트래픽이 정지될 것을 요구하며, 여기서, DRAM 트래픽의 중단은 상이한 랭크 데이터 및 데이터 스트로브의 재정렬을 가능케 한다. 그러나, 데이터 트래픽의 중단은 메모리의 동작시 성능 페널티를 야기한다.
일부 실시예들에서, 장치 또는 시스템은 DRAM 트래픽을 중단하지 않고 메모리 장치의 스로틀링 동작에 의해 메모리 장치의 랭크들 사이의 데이터의 오정렬을 다루도록 동작한다. 일부 실시예들에서, 메모리 장치의 스로틀링 동작은 동작을 계속하면서 정렬 변경을 가능케 하기 위해 메모리 제어기에 의해 "버블"을 삽입하는 것을 포함한다. 일부 실시예들에서, 버블은 랭크들 사이의 정렬을 변경하기 위한 랭크 대 랭크 판독 요청들 사이의 임시 1-사이클 타임 시프트이다. 일부 실시예들에서, 장치 또는 시스템은 보류(pending) DRAM 트래픽이 긴 재정렬 프로세스 동안 멈추지 않고 진행되게 한다.
일부 실시예들에서, 메모리 동작들이 감소 또는 안정될 때, 장치 또는 시스템은 버블을 제거한다. 일부 실시예들에서, WideIO DRAM 트래픽 등의 메모리 트래픽이 감소되었고, 감소된 트래픽에 응답해서 WideIO 메모리 제어기가 DRAM 인터페이스를 파워다운시키거나 또는 DRAM을 셀프-리프레시 상태로 하는 등의 동작을 취하고자 시도할 때, 메모리 제어기는 랭크 재정렬 프로세스를 실행하고, 상이한 랭크 판독 요청들에 대한 1-사이클 버블을 제거한다.
일부 실시예들에서, 메모리 장치는 연결된 메모리 엘리먼트들을 포함하는 메모리 스택 - 메모리 엘리먼트들은 다수의 랭크를 포함하며, 복수의 랭크는 제1 랭크 및 제2 랭크를 포함함 -, 및 메모리 제어기를 포함하는 로직 장치를 포함한다. 메모리 제어기는 제1 랭크에 대한 판독 요청과 제2 랭크에 대한 판독 요청에 관한 데이터 신호들 사이의 오정렬의 양을 결정하고, 제1 랭크과 제2 랭크 사이의 오정렬이 임계값보다 더 크다고 결정할 때, 메모리 제어기는 제1 랭크에 대한 데이터 신호와 제2 랭크에 대한 데이터 신호 사이에 타임 시프트를 삽입한다.
일부 실시예들에서, 방법은 스택 메모리 장치를 동작하는 단계를 포함하고, 메모리 장치는 복수의 연결된 메모리 엘리먼트를 포함하는 메모리 스택을 포함하며, 메모리 엘리먼트들은 복수의 랭크를 포함하고, 복수의 랭크는 제1 랭크 및 제2 랭크를 포함한다. 본 방법은 제1 랭크에 대한 판독 요청 및 제2 랭크에 대한 판독 요청에 관한 데이터 신호들 사이의 오정렬의 양을 결정하는 단계; 및 제1 랭크와 제2 랭크 사이의 오정렬이 임계값보다 더 크다고 결정할 때, 제1 랭크에 대한 데이터 신호와 제2 랭크에 대한 데이터 신호 사이에 타임 시프트를 삽입하는 단계를 포함한다.
도 1은 스택 메모리 장치의 실시예의 도면이다. 일부 실시예들에서, 스택 메모리 장치(100)(예를 들어, WideIO 메모리 장치)는, SoC 또는 다른 시스템 엘리먼트일 수 있는, 로직 칩(110)에 밀접하게 연결된 하나 이상의 DRAM 다이 층들(120)을 포함하는 메모리 스택을 포함한다. 일부 실시예들에서, 로직 칩(110)은 메모리 제어기를 포함할 수 있다. 일부 실시예들에서, 메모리 제어기는 신호들의 오정렬을 다루기 위한 메모리의 동작의 스로틀링을 제공한다.
도 2는 성능 스로틀링을 제공하기 위한 3D 스택 메모리의 일 실시예를 도시한다. 본 도면에서, 3D 스택 메모리 장치(200)는 본 명세서에서 메모리 스택이라고도 하는 하나 이상의 DRAM 메모리 다이 층들(220)에 연결된 로직 칩 시스템 엘리먼트(210)를 포함하며, 메모리 다이 층들은 하나 이상의 슬라이스들 또는 일부분들을 포함할 수 있고, 하나 이상의 채널들을 포함할 수 있다. 일부 실시예들에서, 로직 칩(210)은 시스템 온 칩(SoC) 또는 다른 유사한 엘리먼트일 수 있다. 각각의 다이 층은 열 문제를 다루기 위해 온도 보상 셀프-리프레시(TCSR) 회로를 포함할 수 있으며, TCSR 및 모드 레지스터(MR)는 장치의 관리 로직의 일부일 수 있고, MC는 TCSR에 의한 리프레시 비율의 조정을 위한 열 오프셋 비트(들)를 포함할 수 있다. 다이 층들 및 시스템 엘리먼트는 함께 열적으로 연결될 수 있다. 본 도면 및 이하의 도면들의 엘리먼트들은 설명을 위해 제시된 것으로, 일정한 비율로 그려진 것은 아니다.
도 2는 로직 칩(210)이 하나 이상의 메모리 다이 층들(220)의 메모리 스택 아래에 연결된 구현을 도시하지만, 실시예들은 이러한 구성으로 제한되지 않는다. 예를 들어, 일부 실시예들에서, 시스템 엘리먼트(210)는 메모리 스택(220)에 인접해서 위치할 수 있으며, 따라서, 메모리 스택(220)과 나란한 구성으로 연결될 수 있다.
본 도면에서, DRAM 메모리 다이 층들은 4개의 메모리 다이 층들을 포함하고, 이 층들은 제1 메모리 다이 층(230), 제2 메모리 다이 층(240), 제3 메모리 다이 층(250) 및 제4 메모리 다이 층(260)이다. 그러나, 실시예들은 메모리 스택(220)의 임의의 특정 수의 메모리 다이 층들로 제한되지 않으며, 더 많은 수의 또는 더 적은 수의 메모리 다이 층들을 포함할 수 있다. 다른 엘리먼트들 중에, 시스템 엘리먼트(210)는 메모리 스택(220)을 위한 메모리 제어기(212)를 포함할 수 있다. 일부 실시예들에서, 각각의 메모리 다이 층(상부 또는 가장 바깥쪽 메모리 다이 층, 예를 들어, 본 도면에서는 제4 메모리 다이 층(260)은 제외될 수 있음)은 메모리 다이 층들의 실리콘 기판을 통하는 경로들을 제공하기 위한 복수의 실리콘 관통 전극(TSV들)(205)을 포함한다.
그러나, 동작시, 메모리(200)는 하나 이상의 온도 증감들을 발생시킬 수 있으며, 온도 증감들은 냉각 핀들 또는 다른 냉각 엘리먼트들에 더 가까운, 더 시원한 영역 등의 수직 증감들(270), 및 메모리 스택(220)의 더 뜨거운 더 내부의 코어와 더 시원한 외부 부분들 사이의 차이들 등의 수평 온도 증감들(275)을 포함할 수 있다. 다른 영향들 중에, 열 증감들은 메모리의 랭크들 사이의 신호들의 오정렬을 야기할 수 있다. 또한, 메모리 스택의 메모리 엘리먼트들의 타이밍 특성들을 포함하는 다른 요인들이 신호들의 오정렬을 야기할 수 있다.
일부 실시예들에서, 로직 칩(210)은 WideIO 메모리 제어기 등의 메모리 제어기를 포함할 수 있다. 일부 실시예들에서, 메모리 제어기는 메모리 동작의 중단보다는 성능 스로틀링에 의해 랭크들 사이의 오정렬를 다룰 수 있다. 지연 일부 실시예들에서, 성능 스로틀링은 정렬을 조정하기 위한 타임 시프트의 삽입을 포함하고, 지연은 구체적으로 신호 정렬을 시프트하기 위한 1-사이클 버블일 수 있다.
도 3은 메모리 장치의 일 실시예의 타이밍을 도시하는 타이밍 도면이다. 본 도면에서, 타이밍 도면(300)은 최적화된 랭크 대 랭크 판독들을 도시하며, 여기서, 랭크들(Rk0 및 Rk1) 사이의 타이밍은 tRDRD_d = 2 이다. 이러한 동작에서, 각각의 랭크에 대한 데이터 판독들의 타이밍을 맞추기 위한 데이터 DQ 및 스트로브 신호들 DQS은 연속해서 발생한다. 그러나, 랭크 대 랭크 신호 관계가 충분히 오정렬되면, 타이밍 기준을 만족시키지 않는 데이터 오류 또는 동작의 위험이 있다. 일부 실시예들에서, 재정렬을 위해 데이터 트래픽을 중단하지 않고 오정렬을 다루기 위해 1-사이클 버블이 삽입된다.
도 4는 랭크 대 랭크 판독 요청들의 재정렬을 도시하는 타이밍 도면이다. DRAM 랭크 재정렬이 요구되면, 종래의 동작에서, 400에 도시된 바와 같이, DRAM 트래픽은 재정렬을 위해 차단된다. 성능 비용은 재정렬 중의 모든 데이터 트래픽의 손실이다.
도 5는 오정렬을 다루기 위한 성능 스로틀링의 일 실시예를 도시하는 타이밍 도면이다. 일부 실시예들에서, DRAM 랭크 정렬이 요구되지만, 메모리 제어기는, DRAM 트래픽을 차단하는 대신, 메모리의 성능을 스로틀링한다. 도시된 바와 같이, 제어기는 랭크 0 데이터 리턴들과 랭크 1 데이터 리턴들 사이에 1-사이클 버블을 삽입한다. 500에 도시된 바와 같이, 버블의 삽입은 랭크 0 메모리들과 랭크 1 메모리들 사이의 DQ 또는 DQS 라인들 상에 전기 컨텐션(electrical contention)이 없음을 보장한다.
도 6은 신호들의 오정렬을 다루기 위한 메모리 동작들의 스로틀링 방법의 일 실시예를 도시한 흐름도이다(600). 본 도면에서, 컴퓨터 시스템의 한 동작은 스택 메모리 장치의 동작을 포함하고(600), 스택 메모리 장치는 WideIO 메모리 장치를 포함할 수 있다. 동작 중에, 스택 메모리 장치의 가열은 메모리 장치를 통한 열 증감들을 야기하며, 판독 신호들에 대한 랭크들 사이의 정렬시 시프트들을 야기할 수 있다(610). 그러나, 다른 요인들도 오정렬을 야기할 수 있으며, 실시예들은 열 증감들에 의해 야기된 오정렬로 제한되지 않는다.
일부 실시예들에서, 신호들 사이의 오정렬이 특정 임계값, 예를 들어, WideIO 메모리 장치의 경우 500 psec보다 크면(615), 메모리 장치의 메모리 제어기는 오정렬의 정정을 위해 충분한 시간 시프트를 생성하기 위해 하나 이상의 1-사이클 버블들을 삽입함으로써 메모리 동작을 스로틀링하도록 동작한다(620). 일부 실시예들에서, 메모리 장치는 판독 요청들을 재정렬하기 위해 중단하지 않고 동작을 계속한다(625).
일부 실시예들에서, 컴퓨팅 시스템이 파워 다운 시점, 셀프-리프레시, 또는 메모리 동작들이 감소되는 다른 상태에 도달할 때(630), 메모리 제어기는, 메모리에 대한 메모리 랭크 타이밍들의 재정렬(635)과 판독 요청들 사이의 하나 이상의 버블들의 제거(640)를 포함해서, 메모리를 재정렬하도록 동작할 수 있다.
도 7은 스택 메모리 장치를 포함하는 이동 컴퓨팅 장치의 일 실시예를 도시한 블록도이다. 컴퓨팅 장치(700)는 랩탑 또는 노트북 컴퓨터, 넷북, 태블릿 컴퓨터(별개의 키보드 없이 터치스크린을 갖는 장치; 터치스크린 및 키보드 둘다를 갖는 장치; "즉각 구동(instant on)" 동작이라고 하는 신속 개시(quick initiation)를 갖는 장치; 및 "항상 연결(always connected)"이라고 하는, 동작시 네트워크에 일반적으로 연결된 장치), 이동 전화 또는 스마트폰, 무선 인에이블 전자책 단말기 또는 다른 무선 이동 장치 등의 이동 컴퓨팅 장치를 포함하는 컴퓨팅 장치를 나타낸다. 컴포넌트들 중 특정 컴포넌트들이 일반적으로 도시되어 있으며, 이 장치의 모든 컴포넌트들이 장치(700) 내에 도시되어 있는 것은 아님을 알 것이다. 컴포넌트들은 하나 이상의 버스들 또는 다른 커넥션들(705)에 의해 연결될 수 있다.
장치(700)는 장치(700)의 주요 처리 동작들을 실행하는 프로세서(710)를 포함한다. 프로세서(710)는 마이크로프로세서들, 애플리케이션 프로세서들, 마이크로컨트롤러들, 프로그래밍 가능 로직 장치들 또는 다른 처리 수단 등의 하나 이상의 물리 장치들을 포함할 수 있다. 프로세서(710)에 의해 실행되는 처리 동작들은 애플리케이션들, 장치 기능들 또는 둘다가 실행되는 동작 플랫폼 또는 운영 체제의 실행을 포함한다. 처리 동작들은 인간 사용자 또는 다른 장치들과의 I/O(입력/출력)와 관련된 동작들, 전력 관리와 관련된 동작들, 다른 장치에 대한 연결 장치(700)와 관련된 동작들을 포함한다. 처리 동작들은 오디오 I/O, 디스플레이 I/O, 또는 둘다와 관련된 동작들을 또한 포함할 수 있다.
일 실시예에서, 장치(700)는 컴퓨팅 장치에 오디오 기능들을 제공하는 것과 연관된 하드웨어(예를 들어, 오디오 하드웨어 및 오디오 회로들) 및 소프트웨어(예를 들어, 드라이버들 및 코덱들) 컴포넌트들을 나타내는 오디오 서브시스템(720)을 포함한다. 오디오 기능들은 마이크로폰 입력뿐만 아니라 스피커, 헤드폰, 또는 그러한 오디오 출력 둘다를 포함할 수 있다. 그러한 기능들을 위한 장치들은 장치(700)에 통합되거나, 또는 장치(700)에 연결될 수 있다. 일 실시예에서, 사용자는 프로세서(710)에 의해 수신 및 처리된 오디오 커맨드들을 제공함으로써 장치(700)와 상호 작용한다.
디스플레이 서브시스템(730)은 사용자가 컴퓨팅 장치와 상호 작용하기 위한 시각, 촉각, 또는 둘다의 엘리먼트들을 가진 디스플레이를 제공하는 하드웨어(예를 들어, 디스플레이 장치들) 및 소프트웨어(예를 들어, 드라이버들) 컴포넌트들을 나타낸다. 디스플레이 서브시스템(730)은 사용자에게 디스플레이를 제공하는데 사용되는 특정 스크린 또는 하드웨어 장치를 포함하는 디스플레이 인터페이스(732)를 포함한다. 일 실시예에서, 디스플레이 인터페이스(732)는 디스플레이와 관련된 적어도 일부 처리를 실행하기 위해 프로세서(710)와 별개인 로직를 포함한다. 일 실시예에서, 디스플레이 서브시스템(730)은 사용자에게 출력 및 입력 둘다를 제공하는 터치스크린 장치를 포함한다.
I/O 제어기(740)는 사용자와의 상호 작용과 관련된 하드웨어 장치들 및 소프트웨어 컴포넌트들을 나타낸다. I/O 제어기(740)는 오디오 서브시스템(720), 디스플레이 서브시스템(730) 또는 양 서브시스템들의 일부인 하드웨어를 관리하도록 동작할 수 있다. 또한, I/O 제어기(740)는 사용자가 장치와 상호 작용할 수 있기 위한, 장치(700)에 연결된 추가 장치들을 위한 연결 지점을 도시한다. 예를 들어, 장치(700)에 부착될 수 있는 장치들은 마이크로폰 장치들, 스피커 또는 스테레오 시스템들, 비디오 시스템들 또는 다른 디스플레이 장치, 키보드 또는 키패드 장치들, 또는 카드 판독기들 또는 다른 장치들 등의 특정 애플리케이션들과의 사용을 위한 다른 I/O 장치들을 포함할 수 있다.
상술된 바와 같이, I/O 제어기(740)는 오디오 서브시스템(720), 또는 디스플레이 서브시스템(730), 또는 양 서브시스템들과 상호 작용할 수 있다. 예를 들어, 마이크로폰 또는 다른 오디오 장치를 통한 입력은 장치(700)의 하나 이상의 애플리케이션들 또는 기능들에 대한 입력 또는 커맨드들을 제공할 수 있다. 또한, 오디오 출력은 디스플레이 출력 대신 또는 외에 제공될 수 있다. 다른 일례에서, 디스플레이 서브시스템이 터치스크린을 포함하면, 디스플레이 장치는 I/O 제어기(740)에 의해 적어도 부분적으로 관리될 수 있는 입력 장치로서 또한 동작한다. 또한, I/O 제어기(740)에 의해 관리되는 I/O 기능들을 제공하기 위해 장치(700)에 추가 버튼들 또는 스위치들이 존재할 수 있다.
일 실시예에서, I/O 제어기(740)는 가속도계들, 카메라들, 광 센서들 또는 다른 환경 센서들, 또는 장치(700)에 포함될 수 있는 다른 하드웨어 등의 장치들을 관리한다. 입력은 장치에 환경 입력을 제공하여 동작들(예를 들어, 잡음에 대한 필터링, 휘도 검출에 대한 디스플레이들의 조정, 카메라에 대한 플래시의 적용 또는 다른 특징들)에 영향을 줄 뿐만 아니라, 직접 사용자 상호 작용의 일부일 수 있다.
일 실시예에서, 장치(700)는 배터리 전력 사용, 배터리 충전, 및 전력 절약 동작과 관련된 특징들을 관리하는 전력 관리(750)를 포함한다.
일부 실시예들에서, 메모리 서브시스템(760)은 장치(700)에 정보를 저장하기 위한 메모리 장치들을 포함한다. 프로세서(710)는 데이터를 판독하고 메모리 서브시스템(760)의 엘리먼트들에 기록할 수 있다. 메모리는 비휘발성(메모리 장치로의 전력이 인터럽트되는 경우 변하지 않는 상태를 가짐), 휘발성(메모리 장치로의 전력이 인터럽트되는 경우 쉽게 가늠할 수 없는 상태를 가짐) 메모리 장치들 또는 그러한 메모리들 둘다를 포함할 수 있다. 메모리(760)는 장치(700)의 애플리케이션들 및 기능들의 실행과 관련된 장치 데이터(장기이든 또는 일시적이든)뿐만 아니라, 애플리케이션 데이터, 사용자 데이터, 음악, 사진, 문서 또는 다른 데이터를 저장할 수 있다.
일부 실시예들에서, 메모리 서브시스템(760)은 하나 이상의 메모리 다이 층의 메모리 스택을 포함하고 판독 요청들의 오정렬을 다루기 위한 성능 스로틀링(764)을 포함하는 스택 메모리 장치(762)를 포함할 수 있으며, 성능 스로틀링은 랭크들 사이의 정렬의 부족을 다루기 위한 1-사이클 버블의 삽입을 포함한다.
연결(770)은 장치(700)가 외부 장치들과 통신할 수 있게 하기 위한 하드웨어 장치들(예를 들어, 무선 통신, 유선 통신 또는 둘다를 위한 커넥터들 및 통신 하드웨어) 및 소프트웨어 컴포넌트들(예를 들어, 드라이버들, 프로토콜 스택들)을 포함한다. 장치는 다른 컴퓨팅 장치들, 무선 액세스 포인트들 또는 기지국들뿐만 아니라, 헤드셋, 프린터 또는 다른 장치들 등의 주변 장치들 등의 별개의 장치들일 수 있다.
연결(770)은 다수의 상이한 타입의 연결을 포함할 수 있다. 일반적으로, 장치(700)는 셀룰러 연결(772) 및 무선 연결(774)로 도시된다. 셀룰러 연결(772)은 일반적으로 4G/LTE(Long Term Evolution), GSM(global system for mobile communications) 또는 변화들 또는 파생들, CDMA(code division multiple access) 또는 변화들 또는 파생들, TDM(time division multiplexing) 또는 변화들 또는 파생들, 또는 다른 셀룰러 서비스 표준들 등의 무선 캐리어들에 의해 제공된 셀룰러 네트워크 연결을 말한다. 무선 연결(774)은 셀룰러가 아닌 무선 연결을 말하며, 개인 통신망(예를 들어, 블루투스), 근거리 통신망(예를 들어, Wi-Fi), 광역 통신망(예를 들어, WiMax) 및 다른 무선 통신들을 포함할 수 있다. 연결은 하나 이상의 전방향 또는 지향성 안테나들(776)을 포함할 수 있다.
주변 커넥션들(780)은 주변 커넥션들을 달성하기 위한 하드웨어 인터페이스들 및 커넥터들뿐만 아니라, 소프트웨어 컴포넌트들(예를 들어, 드라이버들, 프로토콜 스택들)을 포함한다. 장치(700)는 다른 컴퓨팅 장치들의 주변 장치("~로"(782))일 수 있을 뿐만 아니라, 그에 연결된 주변 장치들("~로부터"(784))을 가질 수도 있음을 알 것이다. 장치(700)는 장치(700) 상의 콘텐츠를 관리(예를 들어, 다운로드, 업로드, 변경 또는 동기화)하는 등의 목적으로 다른 컴퓨팅 장치들에 연결하기 위한 "도킹(docking)" 커넥터를 통상 포함할 수 있다. 또한, 도킹 커넥터는 장치(700)로 하여금 예를 들어 시청각 또는 다른 시스템들에 대한 콘텐츠 출력을 제어할 수 있게 해주는 특정 주변 장치들에 장치(700)가 연결될 수 있게 할 수 있다.
독점적인 도킹 커넥터 또는 다른 독점적인 연결 하드웨어 외에, 장치(700)는 공통 또는 표준 기반 커넥터들을 통해 주변 커넥션들(780)을 달성할 수 있다. 공통 타입들은 USB(Universal Serial Bus) 커넥터(다수의 상이한 하드웨어 인터페이스들 중 임의의 하드웨어 인터페이스들을 포함할 수 있음), 미니디스플레이포트(MDP)를 포함하는 디스플레이포트, 고화질 멀티미디어 인터페이스(HDMI), 파이어와이어 또는 다른 타입을 포함할 수 있다.
도 8은 스택 메모리를 포함하는 컴퓨팅 시스템의 일 실시예를 도시한다. 컴퓨팅 시스템은 컴퓨터, 서버, 게임 콘솔 또는 다른 컴퓨팅 장치를 포함할 수 있다. 본 도면에서, 본 설명과 밀접한 관계가 없는 특정 표준 및 널리 공지된 컴포넌트들은 도시되어 있지 않다. 일부 실시예들에서, 컴퓨팅 시스템(800)은 데이터의 송신을 위한 인터커넥트 또는 크로스바(805) 또는 다른 통신 수단을 포함한다. 컴퓨팅 시스템(800)은 정보를 처리하기 위해 인터커넥트(805)와 연결된 하나 이상의 프로세서들(810) 등의 처리 수단을 포함할 수 있다. 프로세서들(810)은 하나 이상의 물리 프로세서들 및 하나 이상의 논리 프로세서들을 포함할 수 있다. 인터커넥트(805)는 간단함을 위해 단일 인터커넥트로서 도시되어 있지만, 다수의 상이한 인터커넥트들 또는 버스들을 나타낼 수 있으며, 이러한 인터커넥트들에 대한 컴포넌트 연결들은 변할 수 있다. 도 8에 도시된 인터커넥트(805)는 적합한 브리지들, 어댑터들 또는 제어기들에 의해 연결된 임의의 하나 이상의 별개의 물리 버스들, 점대점 커넥션들 또는 둘다를 나타내는 추상적 개념이다.
일부 실시예들에서, 컴퓨팅 시스템(800)은 프로세서들(810)에 의해 실행될 정보 및 명령어들을 저장하기 위한 메인 메모리(812)로서 랜덤 액세스 메모리(RAM) 또는 다른 동적 기억 장치 또는 엘리먼트를 더 포함한다. RAM 메모리는 메모리 콘텐츠의 리프레시를 요구하는 동적 랜덤 액세스 메모리(DRAM) 및 콘텐츠 리프레시를 요구하지 않지만 비용이 증가하는 정적 랜덤 액세스 메모리(SRAM)를 포함한다. 일부 실시예들에서, 메인 메모리는 컴퓨팅 시스템의 사용자에 의한 네트워크 브라우징 활동들에서 사용될 브라우저 애플리케이션을 포함하는 애플리케이션들의 액티브 스토리지를 포함할 수 있다. DRAM 메모리는 신호들을 제어하기 위한 클록 신호를 포함하는 동기 동적 랜덤 액세스 메모리(SDRAM) 및 확장 데이터-아웃 동적 랜덤 액세스 메모리(EDO DRAM)를 포함할 수 있다. 일부 실시예들에서, 시스템의 메모리는 특정 레지스터들 또는 다른 특수 목적 메모리를 포함할 수 있다.
일부 실시예들에서, 메인 메모리(812)는 스택 메모리(814)를 포함하고, 스택 메모리는 랭크 정렬을 위한 성능 스로틀링(815)을 제공하기 위한 메모리 제어기를 포함한다.
컴퓨팅 시스템(800)은 프로세서들(810)에 대한 정적 정보 및 명령어들을 저장하기 위한 판독 전용 메모리(ROM)(816) 또는 다른 정적 기억 장치를 또한 포함할 수 있다. 컴퓨팅 시스템(800)은 특정 엘리먼트들의 저장을 위한 하나 이상의 비휘발성 메모리 엘리먼트들(818)을 포함할 수 있다.
일부 실시예들에서, 컴퓨팅 시스템(800)은 하나 이상의 입력 장치들(830)을 포함하고, 입력 장치들은 키보드, 마우스, 터치 패드, 음성 커맨드 인식, 제스처 인식, 또는 입력을 컴퓨팅 시스템에 제공하기 위한 다른 장치 중 하나 또는 그 이상을 포함한다.
컴퓨팅 시스템(800)은 인터커넥트(805)를 통해 출력 디스플레이(840)에 또한 연결될 수 있다. 일부 실시예들에서, 디스플레이(840)는 사용자에게 정보 또는 콘텐츠를 디스플레이하기 위한 액정 디스플레이(LCD) 또는 임의의 다른 디스플레이 기술을 포함할 수 있다. 일부 환경들에서, 디스플레이(840)는 입력 장치의 적어도 일부로서도 사용되는 터치스크린을 포함할 수 있다. 일부 환경들에서, 디스플레이(840)는 오디오 정보를 제공하기 위한 스피커 등의 오디오 장치이거나 또는 오디오 장치를 포함할 수 있다.
하나 이상의 송신기들 또는 수신기들(845)이 또한 인터커넥트(805)에 연결될 수 있다. 일부 실시예들에서, 컴퓨팅 시스템(800)은 데이터의 수신 또는 송신을 위한 하나 이상의 포트들(850)을 포함할 수 있다. 컴퓨팅 시스템(800)은 무선 신호들을 통한 데이터의 수신을 위한 하나 이상의 전방향 또는 지향성 안테나들(855)을 더 포함할 수 있다.
컴퓨팅 시스템(800)은 전원, 배터리, 태양 전지, 연료 전지, 또는 전력을 제공 또는 생성하기 위한 다른 시스템 또는 장치를 포함할 수 있는 전원 장치 또는 시스템(860)을 또한 포함할 수 있다. 전원 장치 또는 시스템(860)에 의해 제공된 전력은 컴퓨팅 시스템(800)의 엘리먼트들에 필요에 따라 분배될 수 있다.
상술된 설명에서, 설명을 위해, 다수의 특정 세부 사항들이 본 발명의 철저한 이해를 제공하기 위해 기술된다. 그러나, 이러한 특정 세부 사항들 없이 본 발명이 실시될 수 있음을 당업자는 알 것이다. 다른 실례들에서, 널리 공지된 구조들 및 장치들은 블록도 형태로 도시된다. 도시된 컴포넌트들 사이에 중간 구조가 있을 수 있다. 본 명세서에 기술 또는 도시된 컴포넌트들은 도시 또는 기술되지 않은 추가 입력들 또는 출력들을 가질 수 있다.
각종 실시예들은 각종 프로세스들을 포함할 수 있다. 이 프로세스들은 하드웨어 컴포넌트들에 의해 실행될 수 있으며, 또는 범용 또는 특수 목적 프로세서 또는 로직 회로들이 프로세스들을 실행하기 위한 명령어들로 프로그래밍되도록 야기하는데 사용될 수 있는 컴퓨터 프로그램 또는 기계 실행 가능 명령어들로 구현될 수 있다. 대안으로, 프로세스들은 하드웨어 및 소프트웨어의 조합에 의해 실행될 수 있다.
각종 실시예들의 일부분들은 특정 실시예들에 따라 프로세스를 실행하기 위해 하나 이상의 프로세서들에 의해 실행되도록 컴퓨터(또는 다른 전자 장치들)를 프로그래밍하는데 사용될 수 있는 컴퓨터 프로그램 명령어들이 저장되어 있는 비일시 컴퓨터 판독 가능 기억 매체를 포함할 수 있는 컴퓨터 프로그램 제품으로서 제공될 수 있다. 컴퓨터 판독 가능 매체는 플로피 디스켓들, 광 디스크들, 콤팩트 디스크 판독 전용 메모리(CD-ROM), 및 광 자기 디스크들, 판독 전용 메모리(ROM), 랜덤 액세스 메모리(RAM), 소거 가능 프로그래밍 가능 판독 전용 메모리(EPROM), 전기적 소거 가능 프로그래밍 가능 판독 전용 메모리(EEPROM), 자기 또는 광 카드들, 플래시 메모리, 또는 전자 명령어들을 저장하기에 적합한 다른 타입의 컴퓨터 판독 가능 매체를 포함할 수 있지만, 이들로만 제한되지 않는다. 더욱이, 실시예들은 컴퓨터 프로그램 제품으로서 다운로드될 수 있으며, 프로그램은 원격 컴퓨터로부터 요청 컴퓨터로 전송될 수 있다.
방법들 중 다수의 방법들이 가장 기본적인 형태로 기술되지만, 본 발명의 기봄 범위로부터 벗어나지 않은 채로, 프로세스들은 방법들 중 임의의 방법에 추가되거나 또는 그로부터 삭제될 수 있으며, 정보는 기술된 메시지들 중 임의의 메시지에 추가되거나 또는 그로부터 공제될 수 있다. 다수의 다른 변경들 및 적응들이 달성될 수 있음이 당업자에게 명백할 것이다. 특정 실시예들은 본 발명을 제한하려고 제공되는 것이 아니며 설명을 위해 제공된 것이다. 본 발명의 실시예들의 범위는 제공된 상기 특정 일례들에 의해 결정되는 것이 아니며, 오직 이하의 청구항들에 의해서만 결정된다.
요소 "A"가 요소 "B"에 연결된다고 하면, 요소 A는 요소 B에"직접 연결될 수 있으며, 또는 예를 들어, 요소 C를 통해 간접적으로 연결될 수도 있다. 컴포넌트, 특징, 구조, 프로세스 또는 특성 A가 컴포넌트, 특징, 구조, 프로세스 또는 특성 B를 "야기한다"고 본 설명 또는 청구항들이 기술할 때, "A"는 "B"의 적어도 부분적인 원인이지만 "B"를 야기하는 것을 보조하는 적어도 하나의 다른 컴포넌트, 특징, 구조, 프로세스 또는 특성이 있을 수도 있음을 의미한다. 컴포넌트, 특징, 구조, 프로세스 또는 특성이 포함될 수 있다("may", "might", "could")고 본 설명이 나타내면, 해당 특정 컴포넌트, 특징, 구조, 프로세스 또는 특성은 반드시 포함될 필요는 없다. 본 설명 또는 청구항들이 "a(한, 하나의)" 또는 "an(한, 하나의)" 요소를 말하면, 이는 기술된 요소가 오직 하나만 존재함을 의미하는 것은 아니다.
일 실시예는 본 발명의 구현 또는 일례이다. 본 명세서에서 "an embodiment(일 실시예)", "one embodiment(일 실시예)", "some embodiments(일부 실시예들)" 또는 "other embodiments(다른 실시예들)"의 언급은, 본 실시예와 관련하여 기술된 특정 특징, 구조 또는 특성이 반드시 모든 실시예들이 아니라, 적어도 일부 실시예들에 포함됨을 의미한다. "an embodiment(일 실시예)", "one embodiment(일 실시예)" 또는 "some embodiments(일부 실시예들)"의 각종 출현은 반드시 동일한 실시예와 관련되는 것은 아니다. 본 발명의 일례의 실시예들의 상기 설명에서, 본 발명을 간소화하고 본 발명의 각종 양상들 중 하나 이상의 양상들의 이해를 돕기 위해 각종 특징들은 때때로 단일 실시예, 도면 또는 설명으로 함께 그룹지어짐을 알아야만 한다. 그러나, 본 발명의 본 방법은 청구된 발명이 각각의 청구항에 명백히 인용된 것보다 더 많은 특징을 요구한다는 의도를 반영하는 것으로 해석되지 않을 것이다. 오히려, 이하의 청구항들에 반영하는 바와 같이, 본 발명의 양상들은 상술된 단일 실시예의 모든 특징들보다 더 적게 있다. 따라서, 청구항들은 본 명세서에서 본 설명에 명백히 포함되며, 각각의 청구항은 본 발명의 별개의 실시예로서 독립적이다.

Claims (23)

  1. 복수의 연결된 메모리 엘리먼트를 포함하는 메모리 스택 - 상기 메모리 엘리먼트들은 복수의 랭크를 포함하고, 상기 복수의 랭크는 제1 랭크 및 제2 랭크를 포함함 - ; 및
    메모리 제어기를 포함하는 로직 장치
    를 포함하고,
    상기 메모리 제어기는 상기 제1 랭크에 대한 판독 요청과 상기 제2 랭크에 대한 판독 요청에 관한 데이터 신호들 사이의 오정렬의 양을 결정하며,
    상기 제1 랭크와 상기 제2 랭크 사이의 오정렬이 임계값보다 더 크다고 결정할 때, 상기 메모리 제어기는 상기 제1 랭크에 대한 데이터 신호와 상기 제2 랭크에 대한 데이터 신호 사이에 타임 시프트를 삽입하는 메모리 장치.
  2. 제1항에 있어서,
    상기 메모리 장치가 감소된 동작들의 상태일 때 상기 메모리 제어기는 상기 복수의 랭크 사이의 판독 요청들의 재정렬을 실행하는 메모리 장치.
  3. 제2항에 있어서,
    상기 재정렬은 상기 제1 랭크와 상기 제2 랭크 사이의 타임 시프트의 제거를 포함하는 메모리 장치.
  4. 제2항에 있어서,
    상기 메모리 제어기는 상기 메모리 장치의 인터페이스가 파워 다운(powered down)되거나 또는 상기 메모리 장치가 셀프-리프레시 상태에 진입할 때 재정렬을 실행하는 메모리 장치.
  5. 제1항에 있어서,
    상기 오정렬은 상기 메모리 장치의 열 증감(heat gradient)의 결과인 메모리 장치.
  6. 제1항에 있어서,
    상기 오정렬은 상기 메모리 스택의 메모리 엘리먼트들의 타이밍 특성들의 결과인 메모리 장치.
  7. 제1항에 있어서,
    상기 메모리 장치는 WideIO 호환 장치인 메모리 장치.
  8. 스택 메모리 장치를 동작시키는 단계 - 상기 메모리 장치는 복수의 연결된 메모리 엘리먼트를 포함하는 메모리 스택을 포함하고, 상기 메모리 엘리먼트들은 복수의 랭크를 포함하며, 상기 복수의 랭크는 제1 랭크 및 제2 랭크를 포함함 -;
    상기 제1 랭크에 대한 판독 요청과 상기 제2 랭크에 대한 판독 요청에 관한 데이터 신호들 사이의 오정렬의 양을 결정하는 단계; 및
    상기 제1 랭크와 상기 제2 랭크 사이의 오정렬이 임계값보다 더 크다고 결정할 때, 상기 제1 랭크에 대한 데이터 신호와 상기 제2 랭크에 대한 데이터 신호 사이에 타임 시프트를 삽입하는 단계
    를 포함하는 방법.
  9. 제8항에 있어서,
    상기 메모리 장치가 감소된 동작들의 상태일 때 상기 복수의 랭크 사이의 판독 요청들의 재정렬을 실행하는 단계를 더 포함하는 방법.
  10. 제9항에 있어서,
    상기 재정렬을 실행하는 단계는 상기 제1 랭크와 상기 제2 랭크 사이의 타임 시프트를 제거하는 단계를 포함하는 방법.
  11. 제9항에 있어서,
    상기 재정렬은 상기 메모리 장치의 인터페이스가 파워 다운되거나 또는 상기 메모리 장치가 셀프-리프레시 상태에 진입할 때 실행되는 방법.
  12. 제8항에 있어서,
    상기 오정렬은 상기 메모리 장치의 열 증감의 결과인 방법.
  13. 제8항에 있어서,
    상기 오정렬은 상기 메모리 스택의 메모리 엘리먼트들의 타이밍 특성들의 결과인 방법.
  14. 시스템의 데이터를 처리하기 위한 프로세서;
    데이터를 송신하거나, 데이터를 수신하거나, 또는 둘다를 실행하기 위해 전방향 안테나와 연결된 송신기, 수신기 또는 그 둘다; 및
    데이터를 저장하기 위한 메모리를 포함하고, 상기 메모리는 스택 메모리 장치를 포함하며, 상기 스택 메모리 장치는
    복수의 연결된 메모리 엘리먼트를 포함하는 메모리 스택 - 상기 메모리 엘리먼트들은 복수의 랭크를 포함하고, 상기 복수의 랭크는 제1 랭크 및 제2 랭크를 포함함 - , 및
    메모리 제어기를 포함하는 로직 장치를 포함하고,
    상기 메모리 제어기는 상기 제1 랭크에 대한 판독 요청과 상기 제2 랭크에 대한 판독 요청에 관한 데이터 신호들 사이의 오정렬의 양을 결정하며,
    상기 제1 랭크와 상기 제2 랭크 사이의 오정렬이 임계값보다 더 크다고 결정할 때, 상기 메모리 제어기는 상기 제1 랭크에 대한 데이터 신호와 상기 제2 랭크에 대한 데이터 신호 사이에 타임 시프트를 삽입하는
    시스템.
  15. 제14항에 있어서,
    상기 메모리 제어기는 상기 메모리 장치가 감소된 동작들의 상태일 때 상기 복수의 랭크 사이의 판독 요청들의 재정렬을 실행하는 시스템.
  16. 제15항에 있어서,
    상기 재정렬은 상기 제1 랭크와 상기 제2 랭크 사이의 타임 시프트의 제거를 포함하는 시스템.
  17. 제15항에 있어서,
    상기 메모리 제어기는 상기 메모리 장치의 인터페이스가 파워 다운되거나 또는 상기 메모리 장치가 셀프-리프레시 상태에 진입할 때 재정렬을 실행하는 시스템.
  18. 제14항에 있어서,
    상기 시스템은 이동 장치인 시스템.
  19. 제18항에 있어서,
    상기 이동 장치는 태블릿 컴퓨터인 시스템.
  20. 명령어들의 시퀀스들을 나타내는 데이터를 저장한 비일시적 컴퓨터 판독 가능 기억 매체로서, 상기 명령어들은, 프로세서에 의해 실행될 때, 상기 프로세서로 하여금,
    스택 메모리 장치를 동작시키는 단계 - 상기 메모리 장치는 복수의 연결된 메모리 엘리먼트를 포함하는 메모리 스택을 포함하고, 상기 메모리 엘리먼트들은 복수의 랭크를 포함하며, 상기 복수의 랭크는 제1 랭크 및 제2 랭크를 포함함 - ;
    상기 제1 랭크에 대한 판독 요청과 상기 제2 랭크에 대한 판독 요청에 관한 데이터 신호들 사이의 오정렬의 양을 결정하는 단계; 및
    상기 제1 랭크와 상기 제2 랭크 사이의 오정렬이 임계값보다 더 크다고 결정할 때, 상기 제1 랭크에 대한 데이터 신호와 상기 제2 랭크에 대한 데이터 신호 사이에 타임 시프트를 삽입하는 단계
    를 포함하는 동작들을 실행하도록 하는 비일시적 컴퓨터 판독 가능 기억 매체.
  21. 제20항에 있어서,
    상기 프로세서에 의해 실행될 때, 상기 프로세서가 상기 메모리 장치가 감소된 동작들의 상태일 때 상기 복수의 랭크 사이의 판독 요청들의 재정렬을 실행하는 단계를 포함하는 동작들을 실행하도록 하는 명령어들을 더 포함하는 비일시적 컴퓨터 판독 가능 기억 매체.
  22. 제21항에 있어서,
    상기 재정렬을 실행하는 단계는 상기 제1 랭크와 상기 제2 랭크 사이의 타임 시프트를 제거하는 단계를 포함하는 비일시적 컴퓨터 판독 가능 기억 매체.
  23. 제21항에 있어서,
    상기 재정렬은 상기 메모리 장치의 인터페이스가 파워 다운되거나 또는 상기 메모리 장치가 셀프-리프레시 상태에 진입할 때 실행되는 비일시적 컴퓨터 판독 가능 기억 매체.
KR1020147017866A 2011-12-23 2011-12-23 동적 메모리 성능 스로틀링 KR101642208B1 (ko)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/US2011/067285 WO2013095675A1 (en) 2011-12-23 2011-12-23 Dynamic memory performance throttling

Publications (2)

Publication Number Publication Date
KR20140098832A KR20140098832A (ko) 2014-08-08
KR101642208B1 true KR101642208B1 (ko) 2016-07-22

Family

ID=48669314

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020147017866A KR101642208B1 (ko) 2011-12-23 2011-12-23 동적 메모리 성능 스로틀링

Country Status (6)

Country Link
US (1) US9104540B2 (ko)
KR (1) KR101642208B1 (ko)
CN (1) CN104115229B (ko)
DE (1) DE112011106018B4 (ko)
TW (1) TWI518681B (ko)
WO (1) WO2013095675A1 (ko)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9490003B2 (en) 2011-03-31 2016-11-08 Intel Corporation Induced thermal gradients
US9658678B2 (en) 2011-03-31 2017-05-23 Intel Corporation Induced thermal gradients
WO2013095674A1 (en) 2011-12-23 2013-06-27 Intel Corporation Memory operations using system thermal sensor data
US10007441B2 (en) 2014-04-30 2018-06-26 Hewlett Packard Enterprise Development Lp Storage system bandwidth adjustment
WO2016008090A1 (en) * 2014-07-15 2016-01-21 Microsoft Technology Licensing, Llc Managing data ingestion
US10254814B2 (en) 2014-09-04 2019-04-09 Hewlett Packard Enterprise Development Lp Storage system bandwidth determination
US10249312B2 (en) 2015-10-08 2019-04-02 Qualcomm Incorporated Quantization of spatial vectors
US9961475B2 (en) 2015-10-08 2018-05-01 Qualcomm Incorporated Conversion from object-based audio to HOA
US9961467B2 (en) 2015-10-08 2018-05-01 Qualcomm Incorporated Conversion from channel-based audio to HOA
US10236035B1 (en) * 2017-12-04 2019-03-19 Nanya Technology Corporation DRAM memory device adjustable refresh rate method to alleviate effects of row hammer events
US11829281B2 (en) * 2021-06-16 2023-11-28 Sandisk Technologies Llc Semi receiver side write training for non-volatile memory system

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002215455A (ja) 2001-01-19 2002-08-02 Sony Corp インタリーブ装置
US20050289292A1 (en) 2004-06-29 2005-12-29 Morrow Warren R System and method for thermal throttling of memory modules
US20060007759A1 (en) 2004-07-08 2006-01-12 Micron Technology, Inc. Alignment of memory read data and clocking

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6714156B1 (en) 2002-11-22 2004-03-30 Visteon Global Technologies, Inc. Method for correcting radar misalignment
US7095245B2 (en) * 2003-11-14 2006-08-22 Intel Corporation Internal voltage reference for memory interface
US7064994B1 (en) 2004-01-30 2006-06-20 Sun Microsystems, Inc. Dynamic memory throttling for power and thermal limitations
US7642125B2 (en) * 2007-09-14 2010-01-05 Macronix International Co., Ltd. Phase change memory cell in via array with self-aligned, self-converged bottom electrode and method for manufacturing
US7978721B2 (en) * 2008-07-02 2011-07-12 Micron Technology Inc. Multi-serial interface stacked-die memory architecture
JP2010170597A (ja) * 2009-01-20 2010-08-05 Elpida Memory Inc 半導体記憶装置及びそのリードプリアンブル信号の制御方法、並びにデータ伝送システム
KR101751045B1 (ko) * 2010-05-25 2017-06-27 삼성전자 주식회사 3d 반도체 장치

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002215455A (ja) 2001-01-19 2002-08-02 Sony Corp インタリーブ装置
US20050289292A1 (en) 2004-06-29 2005-12-29 Morrow Warren R System and method for thermal throttling of memory modules
US20060007759A1 (en) 2004-07-08 2006-01-12 Micron Technology, Inc. Alignment of memory read data and clocking

Also Published As

Publication number Publication date
CN104115229B (zh) 2017-03-08
CN104115229A (zh) 2014-10-22
KR20140098832A (ko) 2014-08-08
TWI518681B (zh) 2016-01-21
DE112011106018B4 (de) 2017-08-03
WO2013095675A1 (en) 2013-06-27
DE112011106018T5 (de) 2014-12-04
US9104540B2 (en) 2015-08-11
TW201342376A (zh) 2013-10-16
US20140013070A1 (en) 2014-01-09

Similar Documents

Publication Publication Date Title
KR101642208B1 (ko) 동적 메모리 성능 스로틀링
US9396787B2 (en) Memory operations using system thermal sensor data
US10347354B2 (en) Boundary scan chain for stacked memory
US10489083B2 (en) Flexible command addressing for memory
KR101678751B1 (ko) 스택 메모리 아키텍처의 별개의 마이크로채널 전압 도메인들
US8924786B2 (en) No-touch stress testing of memory I/O interfaces
KR20150023820A (ko) 성능 및 전력을 위해 구성가능한 3d 메모리
US9953694B2 (en) Memory controller-controlled refresh abort
KR101757995B1 (ko) 메모리 감지 증폭기 전압 변조
US11901039B2 (en) Multiple differential write clock signals with different phases

Legal Events

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