KR102086719B1 - 메모리 컨트롤러 및 이를 포함하는 메모리 시스템 - Google Patents

메모리 컨트롤러 및 이를 포함하는 메모리 시스템 Download PDF

Info

Publication number
KR102086719B1
KR102086719B1 KR1020140028099A KR20140028099A KR102086719B1 KR 102086719 B1 KR102086719 B1 KR 102086719B1 KR 1020140028099 A KR1020140028099 A KR 1020140028099A KR 20140028099 A KR20140028099 A KR 20140028099A KR 102086719 B1 KR102086719 B1 KR 102086719B1
Authority
KR
South Korea
Prior art keywords
signal
frequency
reference time
threshold value
level
Prior art date
Application number
KR1020140028099A
Other languages
English (en)
Other versions
KR20150106076A (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 KR1020140028099A priority Critical patent/KR102086719B1/ko
Priority to US14/589,660 priority patent/US9568941B2/en
Publication of KR20150106076A publication Critical patent/KR20150106076A/ko
Application granted granted Critical
Publication of KR102086719B1 publication Critical patent/KR102086719B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/04Generating or distributing clock signals or signals derived directly therefrom
    • G06F1/08Clock generators with changeable or programmable clock frequency
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3206Monitoring of events, devices or parameters that trigger a change in power modality
    • G06F1/3215Monitoring of peripheral devices
    • G06F1/3225Monitoring of peripheral devices of memory devices
    • 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/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4204Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus
    • G06F13/4234Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being a memory bus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/04Generating or distributing clock signals or signals derived directly therefrom
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/04Generating or distributing clock signals or signals derived directly therefrom
    • G06F1/10Distribution of clock signals, e.g. skew
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/22Read-write [R-W] timing or clocking circuits; Read-write [R-W] control signal generators or management 
    • G11C7/222Clock generating, synchronizing or distributing circuits within memory device
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Power Sources (AREA)

Abstract

메모리 컨트롤러는 클럭 스케일러, 버스 컴포넌트 및 레벨 모니터를 포함한다. 클럭 스케일러는 제1 클럭 신호, 제1 주파수 제어 신호 및 제2 주파수 제어 신호에 기초하여 주파수가 가변되는 제2 클럭 신호를 발생한다. 버스 컴포넌트는 제2 클럭 신호에 기초하여 동작하고, 현재 동작 상태에 상응하는 레벨 신호를 발생한다. 레벨 모니터는 레벨 신호, 제1 문턱 값, 제2 문턱 값, 제1 기준 시간 및 제2 기준 시간에 기초하여, 제2 클럭 신호의 주파수를 증가시키는 제1 주파수 제어 신호 및 제2 클럭 신호의 주파수를 감소시키는 제2 주파수 제어 신호를 발생한다.

Description

메모리 컨트롤러 및 이를 포함하는 메모리 시스템{MEMORY CONTROLLER AND MEMORY SYSTEM INCLUDING THE SAME}
본 발명은 반도체 장치에 관한 것으로서, 더욱 상세하게는 메모리 컨트롤러 및 상기 메모리 컨트롤러를 포함하는 메모리 시스템에 관한 것이다.
반도체 장치의 집적도가 향상됨에 따라 더 많은 부품들이 하나의 칩에 집적되고 반도체 장치의 동작 속도도 점진적으로 증가하는 추세이다. 또한, 최근에는 반도체 장치의 전력 소모를 줄이기 위한 다양한 기술이 연구되고 있으며, 특히 반도체 장치의 동작 상태에 따라서 동작 주파수 및 동작 전압을 동적으로 변경하는 동적 전압 주파수 스케일링(Dynamic Voltage Frequency Scaling; DVFS) 기술이 제시되고 있다.
본 발명의 일 목적은 효과적으로 주파수 조절이 가능한 클럭 신호를 발생하는 메모리 컨트롤러를 제공하는 것이다.
본 발명의 다른 목적은 상기 메모리 컨트롤러를 포함하는 메모리 시스템을 제공하는 것이다.
상기 일 목적을 달성하기 위해, 본 발명의 실시예들에 따른 메모리 컨트롤러는 클럭 스케일러, 버스 컴포넌트 및 레벨 모니터를 포함한다. 상기 클럭 스케일러는 제1 클럭 신호, 제1 주파수 제어 신호 및 제2 주파수 제어 신호에 기초하여 주파수가 가변되는 제2 클럭 신호를 발생한다. 상기 버스 컴포넌트는 상기 제2 클럭 신호에 기초하여 동작하고, 현재 동작 상태에 상응하는 레벨 신호를 발생한다. 상기 레벨 모니터는 상기 레벨 신호, 제1 문턱 값, 제2 문턱 값, 제1 기준 시간 및 제2 기준 시간에 기초하여, 상기 제2 클럭 신호의 주파수를 증가시키는 상기 제1 주파수 제어 신호 및 상기 제2 클럭 신호의 주파수를 감소시키는 상기 제2 주파수 제어 신호를 발생한다.
일 실시예에서, 상기 레벨 신호를 기초로 상기 버스 컴포넌트의 현재 동작 상태를 판단하여 상기 제2 클럭 신호의 주파수를 가변하는 피드백(feedback) 동작 및 상기 제1 기준 시간 또는 상기 제2 기준 시간이 경과한 이후에 상기 제2 클럭 신호의 주파수를 가변하는 에이징(aging) 동작에 기초하여 상기 제2 클럭 신호의 주파수가 조절될 수 있다.
일 실시예에서, 상기 레벨 모니터는 비교부, 제1 제어부 및 제2 제어부를 포함할 수 있다. 상기 비교부는 상기 레벨 신호와 상기 제1 문턱 값을 비교하여 제1 비교 신호를 발생하고, 상기 레벨 신호와 상기 제2 문턱 값을 비교하여 제2 비교 신호를 발생할 수 있다. 상기 제1 제어부는 상기 제1 비교 신호 및 상기 제1 기준 시간에 기초하여 상기 제1 주파수 제어 신호를 선택적으로 활성화시킬 수 있다. 상기 제2 제어부는 상기 제2 비교 신호 및 상기 제2 기준 시간에 기초하여 상기 제2 주파수 제어 신호를 선택적으로 활성화시킬 수 있다.
상기 비교부는 상기 레벨 신호의 값이 상기 제1 문턱 값보다 큰 경우에 상기 제1 비교 신호를 활성화시키고, 상기 레벨 신호의 값이 상기 제2 문턱 값보다 작은 경우에 상기 제2 비교 신호를 활성화시킬 수 있다.
상기 제1 제어부는 상기 제1 비교 신호가 활성화 상태를 유지하는 제1 활성화 시간이 상기 제1 기준 시간보다 긴 경우에 상기 제1 주파수 제어 신호를 활성화시킬 수 있다.
일 실시예에서, 상기 제1 제어부는 상기 제1 활성화 시간을 측정하는 제1 타이머를 포함할 수 있다.
상기 제2 제어부는 상기 제2 비교 신호가 활성화 상태를 유지하는 제1 활성화 시간이 상기 제2 기준 시간보다 긴 경우에 상기 제2 주파수 제어 신호를 활성화시킬 수 있다.
일 실시예에서, 상기 레벨 모니터는 상기 제1 문턱 값, 상기 제2 문턱 값, 상기 제1 기준 시간 및 상기 제2 기준 시간을 저장하는 저장부를 더 포함할 수 있다.
일 실시예에서, 상기 버스 컴포넌트는 적어도 하나의 리퀘스트(request) 버퍼를 포함할 수 있다. 상기 레벨 신호는 상기 적어도 하나의 리퀘스트 버퍼에 현재 입력되는 리퀘스트의 양에 상응하는 값을 가질 수 있다.
일 실시예에서, 상기 버스 컴포넌트는 적어도 하나의 데이터 버퍼를 포함할 수 있다. 상기 레벨 신호는 상기 적어도 하나의 데이터 버퍼에 현재 입력되는 데이터의 양에 상응하는 값을 가질 수 있다.
상기 제1 문턱 값, 상기 제2 문턱 값, 상기 제1 기준 시간 및 상기 제2 기준 시간은 변경 가능할 수 있다.
일 실시예에서, 사용자 입력 신호에 기초하여 상기 제1 문턱 값, 상기 제2 문턱 값, 상기 제1 기준 시간 및 상기 제2 기준 시간이 결정될 수 있다.
일 실시예에서, 트레이닝(training) 동작에 기초하여 상기 제1 문턱 값, 상기 제2 문턱 값, 상기 제1 기준 시간 및 상기 제2 기준 시간이 적응적으로 조절될 수 있다.
상기 메모리 컨트롤러는 직접 메모리 액세스(Direct Memory Access; DMA) 컨트롤러일 수 있다.
상기 다른 목적을 달성하기 위해, 본 발명의 실시예들에 따른 메모리 시스템은 적어도 하나의 메모리 장치 및 메모리 컨트롤러를 포함한다. 상기 적어도 하나의 메모리 장치는 입력 데이터를 저장하거나 저장된 데이터를 출력한다. 상기 메모리 컨트롤러는 상기 적어도 하나의 메모리 장치의 동작을 제어한다. 상기 메모리 컨트롤러는 클럭 스케일러, 버스 컴포넌트 및 레벨 모니터를 포함한다. 상기 클럭 스케일러는 제1 클럭 신호, 제1 주파수 제어 신호 및 제2 주파수 제어 신호에 기초하여 주파수가 가변되는 제2 클럭 신호를 발생한다. 상기 버스 컴포넌트는 상기 제2 클럭 신호에 기초하여 동작하고, 현재 동작 상태에 상응하는 레벨 신호를 발생한다. 상기 레벨 모니터는 상기 레벨 신호, 제1 문턱 값, 제2 문턱 값, 제1 기준 시간 및 제2 기준 시간에 기초하여, 상기 제2 클럭 신호의 주파수를 증가시키는 상기 제1 주파수 제어 신호 및 상기 제2 클럭 신호의 주파수를 감소시키는 상기 제2 주파수 제어 신호를 발생한다.
상기와 같은 본 발명의 실시예들에 따른 메모리 컨트롤러는, IP 레벨에서 자신의 트래픽을 직접 체크하는 자동 주파수 스케일링 방식에 기초하여 동작하며, 상기와 같이 IP 레벨에서 트래픽을 체크하는 레벨 모니터를 포함하여 구현될 수 있다. 또한, 메모리 컨트롤러는 레벨 신호에 기초한 피드백 동작 및 기준 시간들에 기초한 에이징 동작에 기초하여 클럭 신호의 주파수를 현재 동작 상태에 상응하도록 효과적으로 조절할 수 있으며, 이에 따라 메모리 컨트롤러의 전력 소모를 최소화시킬 수 있다.
도 1은 본 발명의 실시예들에 따른 메모리 컨트롤러를 나타내는 블록도이다.
도 2는 도 1의 메모리 컨트롤러에 포함되는 레벨 모니터의 일 예를 나타내는 블록도이다.
도 3은 도 1의 메모리 컨트롤러의 동작을 나타내는 순서도이다.
도 4는 도 3의 단계 S300의 일 예를 나타내는 순서도이다.
도 5a 및 5b는 도 1의 메모리 컨트롤러에 포함되는 버스 컴포넌트의 예들을 나타내는 블록도들이다.
도 6은 본 발명의 실시예들에 따른 메모리 컨트롤러를 나타내는 블록도이다.
도 7 및 8은 본 발명의 실시예들에 따른 메모리 컨트롤러를 포함하는 메모리 시스템들을 나타내는 블록도들이다.
도 9는 본 발명의 실시예들에 따른 메모리 시스템을 포함하는 컴퓨팅 시스템을 나타내는 블록도이다.
도 10은 클럭 스케일러 및 레벨 모니터를 포함하는 본 발명의 실시예들에 따른 IP를 나타내는 블록도이다.
도 11은 본 발명의 실시예들에 따른 IP를 포함하는 디스플레이 시스템을 나타내는 블록도이다.
도 12는 본 발명의 실시예들에 따른 IP를 포함하는 이미지 센서를 나타내는 블록도이다.
본문에 개시되어 있는 본 발명의 실시예들에 대해서, 특정한 구조적 내지 기능적 설명들은 단지 본 발명의 실시예를 설명하기 위한 목적으로 예시된 것으로, 본 발명의 실시예들은 다양한 형태로 실시될 수 있으며 본문에 설명된 실시예들에 한정되는 것으로 해석되어서는 아니 된다.
본 발명은 다양한 변경을 가할 수 있고 여러 가지 형태를 가질 수 있는바, 특정 실시예들을 도면에 예시하고 본문에 상세하게 설명하고자 한다. 그러나 이는 본 발명을 특정한 개시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.
제 1, 제 2 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로 사용될 수 있다. 예를 들어, 본 발명의 권리 범위로부터 이탈되지 않은 채 제 1 구성요소는 제 2 구성요소로 명명될 수 있고, 유사하게 제 2 구성요소도 제 1 구성요소로 명명될 수 있다.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다. 구성요소들 간의 관계를 설명하는 다른 표현들, 즉 "~사이에"와 "바로 ~사이에" 또는 "~에 이웃하는"과 "~에 직접 이웃하는" 등도 마찬가지로 해석되어야 한다.
본 출원에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 설시된 특징, 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미이다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 의미인 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
한편, 어떤 실시예가 달리 구현 가능한 경우에 특정 블록 내에 명기된 기능 또는 동작이 순서도에 명기된 순서와 다르게 일어날 수도 있다. 예를 들어, 연속하는 두 블록이 실제로는 실질적으로 동시에 수행될 수도 있고, 관련된 기능 또는 동작에 따라서는 상기 블록들이 거꾸로 수행될 수도 있다.
이하, 첨부한 도면들을 참조하여, 본 발명의 바람직한 실시예를 보다 상세하게 설명하고자 한다. 도면상의 동일한 구성요소에 대해서는 동일한 참조부호를 사용하고 동일한 구성요소에 대해서 중복된 설명은 생략한다.
도 1은 본 발명의 실시예들에 따른 메모리 컨트롤러를 나타내는 블록도이다.
도 1을 참조하면, 메모리 컨트롤러(100)는 클럭 스케일러(110), 버스 컴포넌트(120) 및 레벨 모니터(130)를 포함한다.
클럭 스케일러(110)는 제1 클럭 신호(SCLK), 제1 주파수 제어 신호(FCS1) 및 제2 주파수 제어 신호(FCS2)에 기초하여 주파수가 가변되는 제2 클럭 신호(BCLK)를 발생한다. 예를 들어, 클럭 스케일러(110)는 제1 클럭 신호(SCLK)를 스케일링하여 초기 주파수를 가지는 제2 클럭 신호(BCLK)를 발생하고, 제1 주파수 제어 신호(FCS1) 및 제2 주파수 제어 신호(FCS2)에 기초하여 제2 클럭 신호(BCLK)의 주파수를 가변시킬 수 있다. 제1 주파수 제어 신호(FCS1)에 기초하여 상기 제2 클럭 신호(BCLK)의 주파수가 증가되고, 제2 주파수 제어 신호(FCS2)에 기초하여 상기 제2 클럭 신호(BCLK)의 주파수가 감소될 수 있다.
제1 클럭 신호(SCLK)는 메모리 컨트롤러(100)의 외부(예를 들어, 프로세서)에서 제공되는 시스템 클럭 신호일 수 있다. 도 1에서는 클럭 스케일러(110)가 하나의 클럭 신호(SCLK)에 기초하여, 즉 하나의 클럭 신호(SCLK)를 스케일링하여 제2 클럭 신호(BCLK)를 발생하는 것으로 도시하였으나, 실시예에 따라서 상기 클럭 스케일러는 외부에서 제공되는 복수의 클럭 신호들을 스케일링하여 상기 제2 클럭 신호를 발생할 수도 있다.
버스 컴포넌트(120)는 제2 클럭 신호(BCLK)에 기초하여 동작하고, 버스 컴포넌트(120)의 현재 동작 상태에 상응하는 레벨 신호(LS)를 발생한다. 제2 클럭 신호(BCLK)는 버스 컴포넌트(120)를 구동하기 위한 버스 클럭 신호일 수 있다. 예를 들어, 버스 컴포넌트(120)는 제2 클럭 신호(BCLK)에 기초하여 상기 메모리 컨트롤러(100)의 외부(예를 들어, 프로세서)에서 제공되는 리퀘스트(REQ) 및/또는 데이터(DAT)를 처리할 수 있다. 레벨 신호(LS)는 리퀘스트(REQ) 및/또는 데이터(DAT)에 대한 버스 컴포넌트(120)의 실시간 처리 능력 또는 실시간 수용 능력에 상응하는 값을 가질 수 있다. 한편, 도 5a 및 5b를 참조하여 후술하는 바와 같이, 버스 컴포넌트(120)는 리퀘스트(REG)를 저장하는 리퀘스트 버퍼 및/또는 데이터(DAT)를 저장하는 데이터 버퍼를 포함하여 구현될 수 있다.
레벨 모니터(130)는 레벨 신호(LS), 제1 문턱 값, 제2 문턱 값, 제1 기준 시간 및 제2 기준 시간에 기초하여 제1 주파수 제어 신호(FCS1) 및 제2 주파수 제어 신호(FCS2)를 발생한다. 예를 들어, 레벨 모니터(130)는 레벨 신호(LS)와 상기 제1 및 제2 문턱 값들을 비교하여, 그리고 상기 비교 결과 및 상기 제1 및 제2 기준 시간들에 기초하여, 제1 및 제2 주파수 제어 신호들(FCS1, FCS2) 중 하나를 선택적으로 활성화시킬 수 있다. 버스 컴포넌트(120)가 상기 리퀘스트 버퍼 및/또는 상기 데이터 버퍼를 포함하는 경우에, 레벨 모니터(130)는 상기 버퍼의 처리 능력 또는 수용 능력을 실시간으로 모니터링하는 버퍼 레벨 모니터일 수 있다. 레벨 모니터(130)의 구체적인 구조 및 동작에 대해서는 도 2 및 4를 참조하여 후술하도록 한다.
일 실시예에서, 메모리 컨트롤러(100)는 피드백(feedback) 동작 및 에이징(aging) 동작에 기초하여 상기 제2 클럭 신호(BCLK)의 주파수를 조절할 수 있다. 상기 피드백 동작은 레벨 신호(LS)를 기초로 상기 버스 컴포넌트(120)의 현재 동작 상태를 판단하여 상기 제2 클럭 신호(BCLK)의 주파수를 가변하는 동작을 나타내며, 상기 에이징 동작은 상기 판단 결과가 미리 정해진 조건을 만족하고 상기 제1 기준 시간이 경과한 이후에 또는 상기 판단 결과가 미리 정해진 조건을 만족하고 상기 제2 기준 시간이 경과한 이후에 상기 제2 클럭 신호(BCLK)의 주파수를 가변하는 동작을 나타낼 수 있다.
일 실시예에서, 메모리 컨트롤러(100)는 주변 장치들(미도시)이 메모리 장치(미도시)에 직접 접근하도록 동작하는 직접 메모리 액세스(Direct Memory Access; DMA) 컨트롤러일 수 있다. 다른 실시예에서, 메모리 컨트롤러(100)는 상기 주변 장치들이 프로세서(미도시)를 통하여 상기 메모리 장치에 접근하도록 동작하는 일반적인 방식의 컨트롤러일 수 있다.
본 발명의 실시예들에 따른 메모리 컨트롤러(100)는, 자동 주파수 스케일링(Auto Frequency Scaling; AFS) 방식에 기초하여 동작할 수 있다. 구체적으로, 시스템 레벨에서 프로세서가 메모리 컨트롤러(100)의 트래픽(traffic)을 체크하지 않고 IP(Intellectual Property, 재이용 가능한 기능 블록) 레벨에서 메모리 컨트롤러(100)가 자신의 트래픽을 직접 체크하며, 메모리 컨트롤러(100)는 상기와 같이 IP 레벨에서 트래픽을 체크하는 레벨 모니터(130)를 포함하여 구현될 수 있다. 제2 클럭 신호(BCLK)가 최적의 주파수를 가질 수 있도록, 메모리 컨트롤러(100)는 상기 제2 클럭 신호(BCLK)의 주파수를 현재 동작 상태에 상응하도록 효과적으로 조절할 수 있다.
도 2는 도 1의 메모리 컨트롤러에 포함되는 레벨 모니터의 일 예를 나타내는 블록도이다.
도 2를 참조하면, 레벨 모니터(130)는 비교부(132), 제1 제어부(134) 및 제2 제어부(136)를 포함할 수 있다. 레벨 모니터(130)는 저장부(138)를 더 포함할 수 있다.
비교부(132)는 레벨 신호(LS)와 제1 문턱 값(TH1)을 비교하여 제1 비교 신호(CS1)를 발생하고, 레벨 신호(LS)와 제2 문턱 값(TH1)을 비교하여 제2 비교 신호(CS2)를 발생할 수 있다. 예를 들어, 비교부(132)는 상기 레벨 신호(LS)의 값이 제1 문턱 값(TH1)보다 큰 경우에 제1 비교 신호(CS1)를 활성화시키고, 상기 레벨 신호(LS)의 값이 제2 문턱 값(TH2)보다 작은 경우에 제2 비교 신호(CS2)를 활성화시킬 수 있다. 제1 문턱 값(TH1)은 버스 컴포넌트(120)의 최대 처리 능력 또는 최대 수용 능력에 상응하는 상한 문턱 값(upper threshold)일 수 있고, 제2 문턱 값(TH2)은 버스 컴포넌트(120)의 최소 처리 능력 또는 최소 수용 능력에 상응하는 하한 문턱 값(lower threshold)일 수 있다.
제1 제어부(134)는 제1 비교 신호(CS1) 및 제1 기준 시간(RT1)에 기초하여 제1 주파수 제어 신호(FCS1)를 선택적으로 활성화시킬 수 있다. 예를 들어, 제1 제어부(134)는 제1 비교 신호(CS1)가 활성화 상태를 유지하는 제1 활성화 시간이 제1 기준 시간(RT1)보다 긴 경우에 제1 주파수 제어 신호(FCS1)를 활성화시킬 수 있다. 예를 들어, 제1 기준 시간(RT1)이 제2 클럭 신호(BCLK)의 약 100 클럭 사이클(clock cycle, 1 클럭 사이클은 제2 클럭 신호(BCLK)의 한 주기(period))에 상응하는 것으로 가정하면, 제1 비교 신호(CS1)가 상기 100 클럭 사이클을 초과하는 동안 활성화되는 경우에, 즉 상기 100 클럭 사이클을 초과하는 동안 상기 레벨 신호(LS)의 값이 제1 문턱 값(TH1)보다 큰 경우에 제1 주파수 제어 신호(FCS1)가 활성화될 수 있다.
일 실시예에서, 제1 제어부(134)는 상기 제1 활성화 시간을 측정하는 제1 타이머를 포함할 수 있다. 예를 들어, 제1 기준 시간(RT1)이 제2 클럭 신호(BCLK)의 약 100 클럭 사이클에 상응하는 것으로 가정하면, 제1 비교 신호(CS1)가 활성화되는 시점에 상기 제1 타이머가 구동되기 시작하고, 상기 제1 타이머가 구동되고 상기 100 클럭 사이클을 초과하는 시간이 경과한 경우에 상기 제1 타이머의 구동이 종료되며, 상기 제1 타이머의 구동이 종료되는 경우에 제1 주파수 제어 신호(FCS1)가 활성화될 수 있다. 상기 제1 타이머가 구동되고 상기 100 클럭 사이클을 초과하는 시간이 경과하기 이전에 제1 비교 신호(CS1)가 비활성화되는 경우에, 상기 제1 타이머는 초기화될 수 있다.
다른 실시예에서, 제1 제어부(134)는 상기 클럭 사이클의 개수를 카운팅하여 상기 제1 활성화 시간을 측정하는 제1 카운터를 포함할 수 있다.
제2 제어부(136)는 제2 비교 신호(CS2) 및 제2 기준 시간(RT2)에 기초하여 제2 주파수 제어 신호(FCS2)를 선택적으로 활성화시킬 수 있다. 예를 들어, 제2 제어부(136)는 제2 비교 신호(CS2)가 활성화 상태를 유지하는 제2 활성화 시간이 제2 기준 시간(RT2)보다 긴 경우에 제2 주파수 제어 신호(FCS2)를 활성화시킬 수 있다. 실시예에 따라서, 제2 기준 시간(RT2)은 제1 기준 시간(RT1)과 상이하거나 제1 기준 시간(RT1)과 실질적으로 동일할 수 있다.
일 실시예에서, 제2 제어부(136)는 상기 제2 활성화 시간을 측정하는 제2 타이머를 포함할 수 있다. 다른 실시예에서, 제2 제어부(136)는 상기 클럭 사이클의 개수를 카운팅하여 상기 제2 활성화 시간을 측정하는 제2 카운터를 포함할 수 있다.
저장부(138)는 제1 문턱 값(TH1), 제2 문턱 값(TH2), 제1 기준 시간(RT1) 및 제2 기준 시간(RT2)을 저장할 수 있다. 예를 들어, 저장부(138)는 DRAM(Dynamic Random Access Memory), SRAM(Static Random Access Memory) 등과 같은 적어도 하나의 휘발성 메모리 또는 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) 등과 같은 적어도 하나의 비휘발성 메모리를 포함할 수 있다.
일 실시예에서, 제1 문턱 값(TH1), 제2 문턱 값(TH2), 제1 기준 시간(RT1) 및 제2 기준 시간(RT2)은 변경 가능할 수 있다. 이 경우, 제1 문턱 값(TH1), 제2 문턱 값(TH2), 제1 기준 시간(RT1) 및 제2 기준 시간(RT2)은 룩업 테이블의 형태로 저장될 수 있다. 예를 들어, 저장부(138)는 사용자 설정 값을 포함하는 사용자 입력 신호(UIS)를 수신하며, 사용자 입력 신호(UIS)에 기초하여 제1 문턱 값(TH1), 제2 문턱 값(TH2), 제1 기준 시간(RT1) 및 제2 기준 시간(RT2)이 결정될 수 있다. 다른 예에서, 저장부(138)는 메모리 컨트롤러(도 1의 100)를 포함하는 시스템의 트레이닝(training) 동작의 결과에 상응하는 트레이닝 결과 신호(TRS)를 수신하며, 상기 트레이닝 동작에 기초하여, 즉 트레이닝 결과 신호(TRS)에 기초하여 제1 문턱 값(TH1), 제2 문턱 값(TH2), 제1 기준 시간(RT1) 및 제2 기준 시간(RT2)이 적응적으로 조절될 수 있다.
다른 실시예에서, 제1 문턱 값(TH1), 제2 문턱 값(TH2), 제1 기준 시간(RT1) 및 제2 기준 시간(RT2)은 고정된 값을 가질 수 있다.
일 실시예에서, 레벨 모니터(130)에 포함되는 비교부(132), 제1 제어부(134) 및 제2 제어부(136)의 일부 또는 전부는 프로그램 또는 소프트웨어의 형태로 구현될 수 있다. 다른 실시예에서, 레벨 모니터(130)에 포함되는 비교부(132), 제1 제어부(134) 및 제2 제어부(136)의 일부 또는 전부는 하드웨어로 구현될 수 있다. 한편, 도 2에서는 저장부(138)가 레벨 모니터(130)에 포함되는 것으로 도시하였으나, 실시예에 따라서, 저장부(138)는 메모리 컨트롤러(도 1의 100) 내의 레벨 모니터(130) 외부에 구현되거나 메모리 컨트롤러(도 1의 100)의 외부에 구현될 수도 있다.
도 3은 도 1의 메모리 컨트롤러의 동작을 나타내는 순서도이다. 도 4는 도 3의 단계 S300의 일 예를 나타내는 순서도이다.
도 1 및 3을 참조하면, 제1 클럭 신호(SCLK)에 기초하여 제2 클럭 신호(BCLK)를 발생한다(단계 S100). 예를 들어, 클럭 스케일러(110)는 제1 클럭 신호(SCLK)를 스케일링하여 상기 초기 주파수를 가지는 제2 클럭 신호(BCLK)를 발생할 수 있다. 제2 클럭 신호(BCLK)에 기초하여 버스 컴포넌트(120)가 구동된다(단계 S200). 예를 들어, 버스 컴포넌트(120)는 제2 클럭 신호(BCLK)에 기초하여 리퀘스트(REQ) 및/또는 데이터(DAT)를 처리할 수 있다.
상기 버스 컴포넌트(120)의 현재 동작 상태에 상응하는 레벨 신호(LS)에 기초하여 제1 및 제2 주파수 제어 신호들(FCS1, FCS2)을 발생한다(단계 S300). 예를 들어, 레벨 모니터(130)는 레벨 신호(LS)와 상기 제1 및 제2 문턱 값들을 비교하여, 그리고 상기 비교 결과 및 상기 제1 및 제2 기준 시간들에 기초하여, 제1 및 제2 주파수 제어 신호들(FCS1, FCS2) 중 하나를 선택적으로 활성화시킬 수 있다.
제1 및 제2 주파수 제어 신호들(FCS1, FCS2)에 기초하여 제2 클럭 신호(BCLK)의 주파수를 변경한다(단계 S400). 예를 들어, 클럭 스케일러(110)는 제1 주파수 제어 신호(FCS1)가 활성화된 경우에 제2 클럭 신호(BCLK)의 주파수를 증가시키고, 제2 주파수 제어 신호(FCS2)가 활성화된 경우에 제2 클럭 신호(BCLK)의 주파수를 감소시킬 수 있다. 한편, 제1 및 제2 주파수 제어 신호들(FCS1, FCS2)이 모두 비활성화된 경우에는, 제2 클럭 신호(BCLK)의 주파수가 현재의 주파수로 유지될 수 있다.
주파수가 변경된 제2 클럭 신호(BCLK) 또는 주파수가 유지된 제2 클럭 신호(BCLK)에 기초하여 단계 S200, S300 및 S400이 반복 수행될 수 있다. 메모리 컨트롤러(100)가 정상적으로 동작하는 동안에, 즉 메모리 컨트롤러(100)에 전원 전압이 인가되어 메모리 컨트롤러(100)가 리퀘스트(REQ) 및/또는 데이터(DAT)를 처리하는 동안에 상술한 메모리 컨트롤러(100)의 동작이 반복될 수 있다.
도 2 및 4를 참조하면, 제1 및 제2 주파수 제어 신호들(FCS1, FCS2)을 발생하는데 있어서, 레벨 신호(LS)와 제1 문턱 값(TH1)을 비교하는 제1 비교 동작을 수행하고(단계 S310), 레벨 신호(LS)와 제2 문턱 값(TH1)을 비교하는 제2 비교 동작을 수행할 수 있다(단계 S350). 예를 들어, 비교부(132)는 상기 제1 및 제2 비교 동작들을 수행할 수 있다. 레벨 신호(LS)가 제1 문턱 값(TH1)과 제2 문턱 값(TH2) 사이의 값을 가지는 경우에, 즉 상기 레벨 신호(LS)의 값이 제1 문턱 값(TH1)보다 작거나 같은 경우(단계 S310: 아니오) 또는 상기 레벨 신호(LS)의 값이 제2 문턱 값(TH2)보다 크거나 같은 경우에(단계 S350: 아니오), 비교부(132)는 상술한 제1 및 제2 비교 동작들을 반복적으로 수행할 수 있다.
상기 레벨 신호(LS)의 값이 제1 문턱 값(TH1)보다 큰 경우에(단계 S310: 예), 제1 비교 신호(CS1)를 활성화시킬 수 있다(단계 S320). 예를 들어, 비교부(132)는 제1 비교 신호(CS1)를 활성화시킬 수 있다.
제1 비교 신호(CS1)가 활성화된 이후에, 제1 비교 신호(CS1)가 활성화 상태를 유지하는 제1 활성화 시간(ENT1)과 제1 기준 시간(RT1)을 비교하는 제3 비교 동작을 수행할 수 있다(단계 S330). 예를 들어, 제1 제어부(134)는 상기 제1 타이머 또는 상기 제1 카운터에 기초하여 상기 제3 비교 동작을 수행할 수 있다.
제1 활성화 시간(ENT1)이 제1 기준 시간(RT1)보다 짧거나 같은 경우에(단계 S330: 아니오), 제1 비교 신호(CS1)는 비활성화되며, 비교부(132)는 상술한 제1 및 제2 비교 동작들을 다시 수행할 수 있다. 제1 활성화 시간(ENT1)이 제1 기준 시간(RT1)보다 긴 경우에(단계 S330: 예), 제1 주파수 제어 신호(FCS1)를 활성화시킬 수 있다(단계 S340). 예를 들어, 제1 제어부(134)는 제1 주파수 제어 신호(FCS1)를 활성화시킬 수 있다. 이 경우, 도 3의 단계 S400에서 제2 클럭 신호(BCLK)의 주파수가 증가될 수 있다.
상기 레벨 신호(LS)의 값이 제2 문턱 값(TH2)보다 작은 경우에(단계 S350: 예), 제2 비교 신호(CS2)를 활성화시킬 수 있다(단계 S360). 예를 들어, 비교부(132)는 제2 비교 신호(CS2)를 활성화시킬 수 있다.
제2 비교 신호(CS2)가 활성화된 이후에, 제2 비교 신호(CS2)가 활성화 상태를 유지하는 제2 활성화 시간(ENT2)과 제1 기준 시간(RT2)을 비교하는 제4 비교 동작을 수행할 수 있다(단계 S370). 예를 들어, 제2 제어부(136)는 상기 제2 타이머 또는 상기 제2 카운터에 기초하여 상기 제4 비교 동작을 수행할 수 있다.
제2 활성화 시간(ENT2)이 제2 기준 시간(RT2)보다 짧거나 같은 경우에(단계 S370: 아니오), 제2 비교 신호(CS2)는 비활성화되며, 비교부(132)는 상술한 제1 및 제2 비교 동작들을 다시 수행할 수 있다. 제2 활성화 시간(ENT2)이 제2 기준 시간(RT2)보다 긴 경우에(단계 S370: 예), 제2 주파수 제어 신호(FCS2)를 활성화시킬 수 있다(단계 S380). 예를 들어, 제2 제어부(136)는 제2 주파수 제어 신호(FCS2)를 활성화시킬 수 있다. 이 경우, 도 3의 단계 S400에서 제2 클럭 신호(BCLK)의 주파수가 감소될 수 있다.
상술한 바와 같이, 메모리 컨트롤러(100)는 레벨 신호(LS)에 기초한 상기 피드백 동작 및 기준 시간들(RT1, RT2)에 기초한 상기 에이징 동작에 기초하여 상기 제2 클럭 신호(BCLK)의 주파수를 상기 현재 동작 상태에 상응하도록 효과적으로 조절할 수 있으며, 이에 따라 메모리 컨트롤러(100)의 전력 소모(즉, 동작 전압)를 최소화시킬 수 있다.
도 5a 및 5b는 도 1의 메모리 컨트롤러에 포함되는 버스 컴포넌트의 예들을 나타내는 블록도들이다.
도 5a를 참조하면, 버스 컴포넌트(120a)는 적어도 하나의 리퀘스트 버퍼(122)를 포함할 수 있다. 리퀘스트 버퍼(122)는 제2 클럭 신호(BCLK)에 기초하여 상기 메모리 컨트롤러(100)의 외부에서 제공되는 리퀘스트(REQ)를 처리(예를 들어, 저장 및/또는 출력)할 수 있다. 이 경우, 레벨 신호(LS)는 리퀘스트 버퍼(122)에 현재 입력되는 리퀘스트(REQ)의 양에 상응하는 값을 가지고, 제1 문턱 값(TH1)은 리퀘스트(REQ)에 대한 최대 처리 능력 또는 최대 수용 능력에 상응하는 리퀘스트 상한 값이며, 제2 문턱 값(TH2)은 리퀘스트(REQ)에 대한 최소 처리 능력 또는 최소 수용 능력에 상응하는 리퀘스트 하한 값일 수 있다.
도 5b를 참조하면, 버스 컴포넌트(120b)는 적어도 하나의 데이터 버퍼(124)를 포함할 수 있다. 데이터 버퍼(124)는 제2 클럭 신호(BCLK)에 기초하여 상기 메모리 컨트롤러(100)의 외부에서 제공되는 데이터(DAT)를 처리(예를 들어, 저장 및/또는 출력)할 수 있다. 이 경우, 레벨 신호(LS)는 데이터 버퍼(124)에 현재 입력되는 데이터(DAT)의 양에 상응하는 값을 가지고, 제1 문턱 값(TH1)은 데이터(DAT)에 대한 최대 처리 능력 또는 최대 수용 능력에 상응하는 데이터 상한 값이며, 제2 문턱 값(TH2)은 데이터(DAT)에 대한 최소 처리 능력 또는 최소 수용 능력에 상응하는 데이터 하한 값일 수 있다.
실시예에 따라서, 도 1의 버스 컴포넌트(120)는 적어도 하나의 리퀘스트 버퍼(도 5a의 122) 및 적어도 하나의 데이터 버퍼(도 5b의 124)를 모두 포함하여 구현될 수도 있다.
도 6은 본 발명의 실시예들에 따른 메모리 컨트롤러를 나타내는 블록도이다.
도 6을 참조하면, 메모리 컨트롤러(200)는 제1 클럭 스케일러(210), 제1 버스 컴포넌트(220), 제1 레벨 모니터(230), 제2 클럭 스케일러(240), 제2 버스 컴포넌트(250) 및 제2 레벨 모니터(260)를 포함한다.
도 6에 도시된 것처럼, 메모리 컨트롤러(200)가 두 개의 버스 컴포넌트들(220, 250)을 포함하는 경우에, 제1 버스 컴포넌트(220)에 인가되는 클럭 신호(BCLK1)의 주파수를 조절하기 위한 구성 및 제2 버스 컴포넌트(250)에 인가되는 클럭 신호(BCLK2)의 주파수를 조절하기 위한 구성이 별도로 형성될 수 있다.
구체적으로, 제1 클럭 스케일러(210)는 제1 클럭 신호(SCLK), 제1 주파수 제어 신호(FCS1a) 및 제2 주파수 제어 신호(FCS2a)에 기초하여 주파수가 가변되는 제2 클럭 신호(BCLK1)를 발생한다. 제1 버스 컴포넌트(220)는 제2 클럭 신호(BCLK1)에 기초하여 리퀘스트(REQ1) 및/또는 데이터(DAT1)를 처리하고, 제1 버스 컴포넌트(220)의 현재 동작 상태에 상응하는 제1 레벨 신호(LS1)를 발생한다. 제1 레벨 모니터(230)는 제1 레벨 신호(LS1), 제1 문턱 값, 제2 문턱 값, 제1 기준 시간 및 제2 기준 시간에 기초하여 제1 및 제2 주파수 제어 신호(FCS1a, FCS2a)들을 발생한다. 제2 클럭 스케일러(240)는 제1 클럭 신호(SCLK), 제3 주파수 제어 신호(FCS1b) 및 제4 주파수 제어 신호(FCS2b)에 기초하여 주파수가 가변되는 제3 클럭 신호(BCLK2)를 발생한다. 제2 버스 컴포넌트(250)는 제3 클럭 신호(BCLK2)에 기초하여 리퀘스트(REQ2) 및/또는 데이터(DAT2)를 처리하고, 제2 버스 컴포넌트(250)의 현재 동작 상태에 상응하는 제2 레벨 신호(LS2)를 발생한다. 제2 레벨 모니터(260)는 제2 레벨 신호(LS2), 제3 문턱 값, 제4 문턱 값, 제3 기준 시간 및 제4 기준 시간에 기초하여 제3 및 제4 주파수 제어 신호(FCS1b, FCS2b)들을 발생한다.
도 6의 제1 및 제2 클럭 스케일러들(210, 240)은 각각 도 1의 클럭 스케일러(110)와 실질적으로 동일하고, 도 6의 제1 및 제2 버스 컴포넌트들(220, 250)은 각각 도 1의 버스 컴포넌트(120)와 실질적으로 동일하며, 도 6의 제1 및 제2 레벨 모니터들(230, 260)은 각각 도 1의 레벨 모니터(130)와 실질적으로 동일할 수 있다.
도시하지는 않았지만, 메모리 컨트롤러가 두 개의 버스 컴포넌트들을 포함하는 경우에, 실시예에 따라서 상기 버스 컴포넌트들이 하나의 클럭 스케일러를 공유하고 레벨 모니터들은 두 개로 구분되도록 구현될 수도 있고, 상기 버스 컴포넌트들이 하나의 클럭 스케일러를 공유하고 동시에 하나의 레벨 모니터를 공유하도록 구현될 수도 있다. 또한, 실시예에 따라서 메모리 컨트롤러는 복수 개의 버스 컴포넌트들을 포함하여 구현될 수 있으며, 이 경우 상기 복수 개의 버스 컴포넌트들 중 적어도 일부는 클럭 스케일러 및/또는 레벨 모니터를 공유하도록 구현될 수도 있다.
이상, 버스 컴포넌트에 인가되는 클럭 신호의 주파수를 조절하도록 레벨 모니터가 동작하는 것에 기초하여 메모리 컨트롤러의 실시예들을 설명하였으나, 본 발명의 실시예들에 따른 메모리 컨트롤러에 포함되는 레벨 모니터는, 메모리 컨트롤러 내에 포함되고 데이터와 관련된 트래픽이 존재하는 임의의 구성요소에 인가되는 클럭 신호의 주파수를 조절하도록 동작할 수 있다.
도 7 및 8은 본 발명의 실시예들에 따른 메모리 컨트롤러를 포함하는 메모리 시스템들을 나타내는 블록도들이다.
도 7을 참조하면, 메모리 시스템(300)은 메모리 컨트롤러(310) 및 메모리 모듈(320)을 포함한다.
메모리 모듈(320)은 버퍼(BUF) 및 적어도 하나의 메모리 장치(VM)를 포함할 수 있다. 실시예에 따라서, 메모리 모듈(320)은 UDIMM(Unbuffered Dual In-line Memory Module), RDIMM(Registered Dual In-line Memory Module), FBDIMM(Fully Buffered Dual In-line Memory Module), LRDIMM(Load Reduced Dual In-line Memory Module) 또는 다른 메모리 모듈일 수 있다.
적어도 하나의 메모리 장치(VM)는 커맨드 및 어드레스에 기초하여 데이터를 저장하거나 저장된 데이터를 출력할 수 있다. 메모리 장치(VM)는 DRAM, SRAM 등과 같은 휘발성 메모리 장치일 수 있다. 버퍼(BUF)는 상기 커맨드, 상기 어드레스 및 상기 데이터를 버퍼링하여 메모리 장치(VM)에 제공할 수 있다.
버퍼(BUF)와 메모리 장치(VM) 사이의 데이터 전송선들은 포인트-투-포인트 방식으로 연결될 수 있다. 또한, 버퍼(BUF)와 메모리 장치(VM) 사이의 커맨드/어드레스 전송선들은 멀티-드롭 방식, 데이지-체인 방식, 또는 플라이-바이 데이지-체인 방식으로 연결될 수 있다. 버퍼(BUF)가 상기 커맨드, 상기 어드레스 및 상기 데이터를 모두 버퍼링하므로, 메모리 컨트롤러(310)는 버퍼(BUF)의 로드만을 구동함으로써 메모리 모듈(320)과 인터페이스 할 수 있다. 이에 따라, 메모리 모듈(320)은 보다 많은 수의 메모리 장치들(VM) 및 메모리 랭크들을 포함할 수 있고, 메모리 시스템은 보다 많은 수의 메모리 모듈들(320)을 포함할 수 있다.
메모리 컨트롤러(310)는 메모리 모듈(320)의 동작, 즉 적어도 하나의 메모리 장치(VM)의 동작을 제어할 수 있다. 메모리 컨트롤러(310)는 도 1 및 6의 메모리 컨트롤러들 중 하나일 수 있다. 구체적으로, 메모리 컨트롤러(310)는 AFS 방식에 기초하여 동작하며, IP 레벨에서 자신의 트래픽을 직접 체크하는 레벨 모니터를 포함함으로써, 내부의 버스 컴포넌트에 인가되는 클럭 신호의 주파수를 현재 동작 상태에 상응하도록 효과적으로 조절할 수 있고 메모리 컨트롤러(310)의 전력 소모를 최소화시킬 수 있다.
도 8을 참조하면, 메모리 시스템(400)은 메모리 컨트롤러(410) 및 적어도 하나의 메모리 장치(420)를 포함한다.
적어도 하나의 메모리 장치(420)는 커맨드 및 어드레스에 기초하여 데이터를 저장하거나 저장된 데이터를 출력할 수 있다. 메모리 장치(420)는 EEPROM, 플래시 메모리, PRAM, RRAM, NFGM, PoRAM, MRAM, FRAM 등과 같은 비휘발성 메모리 장치일 수 있다.
메모리 컨트롤러(410)는 적어도 하나의 메모리 장치(420)의 동작을 제어할 수 있다. 메모리 컨트롤러(410)는 도 1 및 6의 메모리 컨트롤러들 중 하나일 수 있다. 구체적으로, 메모리 컨트롤러(410)는 AFS 방식에 기초하여 동작하며, IP 레벨에서 자신의 트래픽을 직접 체크하는 레벨 모니터를 포함함으로써, 내부의 버스 컴포넌트에 인가되는 클럭 신호의 주파수를 현재 동작 상태에 상응하도록 효과적으로 조절할 수 있고 메모리 컨트롤러(410)의 전력 소모를 최소화시킬 수 있다.
도시하지는 않았지만, 메모리 시스템(400)은 메모리 장치(420)에 저장되거나 메모리 장치(420)로부터 출력되는 데이터를 일시 저장하는 적어도 하나의 휘발성 메모리 장치를 더 포함할 수 있다.
실시예에 따라서, 메모리 시스템(400)은 SSD(Solid State Drive) 또는 메모리 카드와 같은 저장 장치일 수 있다. 예를 들어, 상기 메모리 카드는 멀티미디어 카드(MultiMedia Card; MMC), 임베디드 멀티미디어 카드(embedded MultiMedia Card; eMMC), 하이브리드 임베디드 멀티미디어 카드(hybrid embedded MultiMedia Card; hybrid eMMC), SD(Secure Digital) 카드, 마이크로 SD 카드, 메모리 스틱(Memory Stick), ID 카드, PCMCIA(Personal Computer Memory Card International Association) 카드, 칩 카드(Chip Card), USB 카드, 스마트 카드(Smart Card), CF 카드(Compact Flash Card)등과 같은 메모리 카드일 수 있다.
실시예에 따라서, 상기 메모리 카드는 컴퓨터(computer), 노트북(laptop), 핸드폰(cellular), 스마트 폰(smart phone), MP3 플레이어, 피디에이(Personal Digital Assistants; PDA), 피엠피(Portable Multimedia Player; PMP), 디지털 TV, 디지털 카메라, 포터블 게임 콘솔(portable game console) 등과 같은 호스트에 장착될 수 있다.
도 9는 본 발명의 실시예들에 따른 메모리 시스템을 포함하는 컴퓨팅 시스템을 나타내는 블록도이다.
도 9를 참조하면, 컴퓨팅 시스템(1000)은 프로세서(1010), 시스템 컨트롤러(1020) 및 메모리 시스템(1030)을 포함한다. 컴퓨팅 시스템(1000)은 입력 장치(1050), 출력 장치(1060) 및 저장 장치(1070)를 더 포함할 수 있다.
메모리 시스템(1030)은 복수의 메모리 모듈들(1034) 및 메모리 모듈들(1034)을 제어하기 위한 메모리 컨트롤러(1032)를 포함한다. 메모리 모듈들(1034)은 DRAM, SRAM 등과 같은 적어도 하나의 휘발성 메모리 장치 또는 EEPROM, 플래시 메모리, PRAM, RRAM, NFGM, PoRAM, MRAM, FRAM 등과 같은 적어도 하나의 비휘발성 메모리 장치를 포함하며, 메모리 컨트롤러(1032)는 시스템 컨트롤러(1020)에 포함될 수 있다.
프로세서(1010)는 특정 계산들 또는 태스크들을 실행하는 특정 소프트웨어를 실행하는 것과 같이 다양한 컴퓨팅 기능들을 실행할 수 있다. 예를 들어, 프로세서(1010)는 마이크로프로세서 또는 중앙 처리 장치(Central Processing Unit; CPU)일 수 있다. 프로세서(1010)는 어드레스 버스, 제어 버스 및/또는 데이터 버스를 포함하는 프로세서 버스를 통하여 시스템 컨트롤러(1020)에 연결될 수 있다. 시스템 컨트롤러(1020)는 주변 구성요소 상호연결(peripheral component interconnect, PCI) 버스와 같은 확장 버스에 연결된다. 이에 따라, 프로세서(1010)는 시스템 컨트롤러(1020)를 통하여 키보드 또는 마우스와 같은 하나 이상의 입력 장치(1050), 프린터 또는 디스플레이 장치와 같은 하나 이상의 출력 장치(1060), 또는 하드 디스크 드라이브 또는 CD-ROM과 같은 하나 이상의 저장 장치(1070)를 제어할 수 있다.
메모리 컨트롤러(1032)는 도 1 및 6의 메모리 컨트롤러들 중 하나일 수 있다. 구체적으로, 메모리 컨트롤러(1032)는 AFS 방식에 기초하여 동작하며, IP 레벨에서 자신의 트래픽을 직접 체크하는 레벨 모니터를 포함함으로써, 내부의 버스 컴포넌트에 인가되는 클럭 신호의 주파수를 현재 동작 상태에 상응하도록 효과적으로 조절할 수 있고 메모리 컨트롤러(1032)의 전력 소모를 최소화시킬 수 있다.
일 실시예에 따른 컴퓨팅 시스템(1000)은 데스크탑 컴퓨터, 노트북 컴퓨터, 워크 스테이션, 핸드헬드 디바이스 등일 수 있다.
도 10은 클럭 스케일러 및 레벨 모니터를 포함하는 본 발명의 실시예들에 따른 IP를 나타내는 블록도이다.
도 10을 참조하면, IP(1100)는 클럭 스케일러(1110), 버퍼(1120) 및 레벨 모니터(1130)를 포함한다.
클럭 스케일러(1110)는 제1 클럭 신호(SCLK), 제1 주파수 제어 신호(FCS1) 및 제2 주파수 제어 신호(FCS2)에 기초하여 주파수가 가변되는 제2 클럭 신호(BCLK)를 발생한다. 예를 들어, 클럭 스케일러(1110)는 제1 클럭 신호(SCLK)를 스케일링하여 초기 주파수를 가지는 제2 클럭 신호(BCLK)를 발생하고, 제1 주파수 제어 신호(FCS1)에 기초하여 제2 클럭 신호(BCLK)의 주파수를 증가시키며, 제2 주파수 제어 신호(FCS2)에 기초하여 상기 제2 클럭 신호(BCLK)의 주파수를 감소시킬 수 있다.
버퍼(1120)는 제2 클럭 신호(BCLK)에 기초하여 동작하고, 버퍼(1120)의 현재 동작 상태에 상응하는 레벨 신호(LS)를 발생한다. 예를 들어, 버퍼(1120)는 제2 클럭 신호(BCLK)에 기초하여 IP(1100)의 외부에서 제공되는 데이터(DAT)를 처리할 수 있다. 레벨 신호(LS)는 데이터(DAT)에 대한 버퍼(1120)의 처리 능력 또는 수용 능력에 상응하는 값을 가질 수 있다.
레벨 모니터(1130)는 레벨 신호(LS), 제1 문턱 값, 제2 문턱 값, 제1 기준 시간 및 제2 기준 시간에 기초하여 제1 주파수 제어 신호(FCS1) 및 제2 주파수 제어 신호(FCS2)를 발생한다. 예를 들어, 레벨 모니터(1130)는 레벨 신호(LS)와 상기 제1 및 제2 문턱 값들을 비교하고 상기 비교 결과 및 상기 제1 및 제2 기준 시간들에 기초하여 제1 및 제2 주파수 제어 신호들(FCS1, FCS2) 중 하나를 선택적으로 활성화시킬 수 있다.
도 10의 레벨 모니터(1130)는 도 2에 도시된 레벨 모니터(130)와 유사한 구조를 가질 수 있으며, 도 10의 IP(1100) 및 레벨 모니터(1130)는 도 3 및 도 4를 참조하여 상술한 것과 유사한 동작을 수행할 수 있다.
본 발명의 실시예들에 따른 IP(1100)는 외부에서 제공되는 데이터를 처리하고 데이터와 관련된 트래픽이 존재하는 임의의 IP일 수 있다. 예를 들어, IP(1100)는 타이밍 컨트롤러, 마이크로프로세서 또는 CPU 등일 수 있다.
본 발명의 실시예들에 따른 IP(1100)는, AFS 방식에 기초하여 동작할 수 있다. 구체적으로, IP(1100)는 IP 레벨에서 자신의 트래픽을 직접 체크하는 레벨 모니터(1130)를 포함하여 구현될 수 있다. 따라서, 제2 클럭 신호(BCLK)가 최적의 주파수를 가질 수 있도록, IP(1100)는 상기 제2 클럭 신호(BCLK)의 주파수를 현재 동작 상태에 상응하도록 효과적으로 조절할 수 있고 IP(1100)의 전력 소모를 최소화시킬 수 있다.
도 11은 본 발명의 실시예들에 따른 IP를 포함하는 디스플레이 시스템을 나타내는 블록도이다.
도 11을 참조하면, 디스플레이 시스템(1400)은 디스플레이 패널(1410) 및 디스플레이 구동 집적 회로(Display Driver Integrated Circuit; DDI)(1420)를 포함한다.
디스플레이 패널(1410)은 복수의 게이트 라인들과 복수의 데이터 라인들을 포함하며, 각 게이트 라인과 각 데이터 라인이 교차하는 영역에 정의되는 복수의 화소(pixel)들을 포함한다. 상기 복수의 화소들은 매트릭스 형태로 배열되어 화소 어레이를 형성할 수 있다. 디스플레이 패널(1410)은 LCD(Liquid Crystal Display) 패널, LED(Light Emitting Diode) 패널, OLED(Organic LED) 패널, FED(Field Emission Display) 패널 등을 포함할 수 있다.
DDI(1420)는 디스플레이 패널(1410)의 구동을 제어한다. DDI(1420)는 타이밍 컨트롤러(1430), 게이트 드라이버(1440) 및 데이터 드라이버(1450)를 포함할 수 있다.
타이밍 컨트롤러(1430)는 그래픽 처리 장치(Graphic Processing Unit; GPU)와 같은 외부 장치로부터 수신된 영상 데이터 신호 및 시스템 제어 신호에 기초하여, 게이트 드라이버 제어 신호, 데이터 드라이버 제어 신호 및 데이터를 발생한다. 게이트 드라이버(1440)는 상기 게이트 드라이버 제어 신호를 기초로 디스플레이 패널(1410)의 상기 게이트 라인들을 선택적으로 활성화하여 상기 화소 어레이의 행을 선택한다. 데이터 드라이버(1450)는 상기 데이터 드라이버 제어 신호 및 상기 데이터에 기초하여 디스플레이 패널(1410)의 상기 데이터 라인들에 복수의 구동 전압들을 인가한다. 디스플레이 패널(1410)은 상기와 같은 게이트 드라이버(1440) 및 데이터 드라이버(1450)의 동작에 의하여 구동되며, 상기 영상 데이터 신호에 상응하는 이미지를 표시할 수 있다.
타이밍 컨트롤러(1430)는 본 발명의 실시예들에 따른 IP의 형태로 구현될 수 있다. 예를 들어, 타이밍 컨트롤러(1430)는 AFS 방식에 기초하여 동작하며, IP 레벨에서 자신의 트래픽을 직접 체크하는 레벨 모니터를 포함함으로써, 내부의 버퍼에 인가되는 클럭 신호의 주파수를 현재 동작 상태에 상응하도록 효과적으로 조절할 수 있고 타이밍 컨트롤러(1430)의 전력 소모를 최소화시킬 수 있다.
도 12는 본 발명의 실시예들에 따른 IP를 포함하는 이미지 센서를 나타내는 블록도이다.
도 12를 참조하면, 이미지 센서(1500)는 픽셀 어레이(1510) 및 신호 처리부(1520)를 포함한다.
픽셀 어레이(1510)는 입사광을 변환하여 전기 신호를 발생한다. 픽셀 어레이(1510)는 매트릭스 형태로 배치된 복수의 단위 픽셀들을 포함할 수 있다. 상기 복수의 단위 픽셀들은 컬러 영상 정보를 제공하는 컬러 픽셀들 및/또는 피사체(미도시)까지의 거리 정보를 제공하는 거리 픽셀들을 포함할 수 있다. 픽셀 어레이(1510)가 상기 거리 픽셀들을 포함하는 경우에, 이미지 센서(1500)는 상기 피사체에 광을 조사하는 광원부(미도시)를 더 포함할 수 있다.
신호 처리부(1520)는 상기 전기 신호를 처리하여 이미지 데이터를 발생한다. 신호 처리부(1520)는 로우 드라이버(RD)(1530), 아날로그-디지털 변환기(ADC)(1540), 디지털 신호 처리기(DSP)(1550) 및 타이밍 컨트롤러(1560)를 포함할 수 있다.
로우 드라이버(1530)는 픽셀 어레이(1510)의 각 로우에 연결되고, 상기 각 로우를 구동하는 구동 신호를 생성할 수 있다. ADC(1540)는 픽셀 어레이(1510)의 각 컬럼에 연결되고, 픽셀 어레이(1510)로부터 출력되는 아날로그 신호를 디지털 신호로 변환할 수 있다. 실시예에 따라서, ADC(1540)는 유효 신호 성분을 추출하기 위한 상관 이중 샘플링(CDS)부를 포함할 수 있다. 상기 CDS부는 아날로그 더블 샘플링을 수행하거나, 디지털 더블 샘플링을 수행하거나, 아날로그 및 디지털 더블 샘플링을 모두 수행하는 듀얼 상관 이중 샘플링을 수행할 수 있다. DSP(1550)는 ADC(1540)로부터 출력된 디지털 신호를 수신하고, 상기 디지털 신호에 대하여 이미지 데이터 처리를 수행할 수 있다. 타이밍 컨트롤러(1560)는 로우 구동부(1530), ADC(1540) 및 DSP(1550)를 제어하기 위한 제어 신호들을 공급할 수 있다.
타이밍 컨트롤러(1560)는 본 발명의 실시예들에 따른 IP의 형태로 구현될 수 있다. 예를 들어, 타이밍 컨트롤러(1560)는 AFS 방식에 기초하여 동작하며, IP 레벨에서 자신의 트래픽을 직접 체크하는 레벨 모니터를 포함함으로써, 내부의 버퍼에 인가되는 클럭 신호의 주파수를 현재 동작 상태에 상응하도록 효과적으로 조절할 수 있고 타이밍 컨트롤러(1560)의 전력 소모를 최소화시킬 수 있다. 한편, DSP(1550)도 본 발명의 실시예들에 따른 IP의 형태로 구현될 수 있다.
실시예에 따라서, 어플리케이션 프로세서, 통신부, 휘발성 메모리 장치, 비휘발성 메모리 장치, 사용자 인터페이스 및 파워 서플라이를 포함하는 모바일 시스템, 및 프로세서, 입출력 허브, 입출력 컨트롤러 허브, 적어도 하나의 메모리 모듈 및 그래픽 카드를 포함하는 컴퓨팅 시스템은 본 발명의 실시예들에 따른 IP를 적어도 하나 포함하여 구현될 수 있다. 상기와 같은 모바일 시스템, 컴퓨팅 시스템 또는 상기 시스템들의 구성요소들은 다양한 형태들의 패키지를 이용하여 실장될 수 있는데, 예를 들어, 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 Wafer 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(Wafer-level Fabricated Package), WSP(Wafer-Level Processed Stack Package) 등과 같은 패키지들을 이용하여 실장될 수 있다.
본 발명은 메모리 컨트롤러 및 이를 포함하는 임의의 장치 및 전자 기기에 적용될 수도 있고, 임의의 IP를 포함하는 시스템에 적용될 수도 있다. 예를 들어, 본 발명은 휴대폰, 스마트 폰, PDA, PMP, 디지털 카메라, 캠코더, PC, 서버 컴퓨터, 워크스테이션, 노트북, 디지털 TV, 셋-탑 박스, 음악 재생기, 휴대용 게임 콘솔, 네비게이션 시스템, 스마트 카드, 프린터 등과 같은 다양한 전자 기기에 유용하게 이용될 수 있다.
상기에서는 본 발명의 바람직한 실시예를 참조하여 설명하였지만, 해당 기술분야의 숙련된 당업자는 하기의 특허청구범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 것이다.

Claims (10)

  1. 제1 클럭 신호, 제1 주파수 제어 신호 및 제2 주파수 제어 신호에 기초하여 주파수가 가변되는 제2 클럭 신호를 발생하는 클럭 스케일러;
    상기 제2 클럭 신호에 기초하여 동작하고, 현재 동작 상태에 상응하는 레벨 신호를 발생하는 버스 컴포넌트; 및
    상기 레벨 신호, 제1 문턱 값, 제2 문턱 값, 제1 기준 시간 및 제2 기준 시간에 기초하여, 상기 제2 클럭 신호의 주파수를 증가시키는 상기 제1 주파수 제어 신호 및 상기 제2 클럭 신호의 주파수를 감소시키는 상기 제2 주파수 제어 신호를 발생하는 레벨 모니터를 포함하고,
    상기 레벨 모니터는,
    상기 레벨 신호와 상기 제1 문턱 값을 비교하여 제1 비교 신호를 발생하고, 상기 레벨 신호와 상기 제2 문턱 값을 비교하여 제2 비교 신호를 발생하는 비교부;
    상기 제1 비교 신호 및 상기 제1 기준 시간에 기초하여 상기 제1 주파수 제어 신호를 선택적으로 활성화시키는 제1 제어부; 및
    상기 제2 비교 신호 및 상기 제2 기준 시간에 기초하여 상기 제2 주파수 제어 신호를 선택적으로 활성화시키는 제2 제어부를 포함하는 메모리 컨트롤러.
  2. 제 1 항에 있어서,
    상기 레벨 신호를 기초로 상기 버스 컴포넌트의 현재 동작 상태를 판단하여 상기 제2 클럭 신호의 주파수를 가변하는 피드백(feedback) 동작 및 상기 제1 기준 시간 또는 상기 제2 기준 시간이 경과한 이후에 상기 제2 클럭 신호의 주파수를 가변하는 에이징(aging) 동작에 기초하여 상기 제2 클럭 신호의 주파수가 조절되는 것을 특징으로 하는 메모리 컨트롤러.
  3. 삭제
  4. 제 1 항에 있어서,
    상기 비교부는 상기 레벨 신호의 값이 상기 제1 문턱 값보다 큰 경우에 상기 제1 비교 신호를 활성화시키고, 상기 레벨 신호의 값이 상기 제2 문턱 값보다 작은 경우에 상기 제2 비교 신호를 활성화시키는 것을 특징으로 하는 메모리 컨트롤러.
  5. 제 4 항에 있어서,
    상기 제1 제어부는 상기 제1 비교 신호가 활성화 상태를 유지하는 제1 활성화 시간이 상기 제1 기준 시간보다 긴 경우에 상기 제1 주파수 제어 신호를 활성화시키는 것을 특징으로 하는 메모리 컨트롤러.
  6. 제 1 항에 있어서, 상기 레벨 모니터는,
    상기 제1 문턱 값, 상기 제2 문턱 값, 상기 제1 기준 시간 및 상기 제2 기준 시간을 저장하는 저장부를 더 포함하는 것을 특징으로 하는 메모리 컨트롤러.
  7. 제 1 항에 있어서,
    상기 버스 컴포넌트는 적어도 하나의 리퀘스트(request) 버퍼를 포함하고,
    상기 레벨 신호는 상기 적어도 하나의 리퀘스트 버퍼에 현재 입력되는 리퀘스트의 양에 상응하는 값을 가지는 것을 특징으로 하는 메모리 컨트롤러.
  8. 제 1 항에 있어서,
    상기 버스 컴포넌트는 적어도 하나의 데이터 버퍼를 포함하고,
    상기 레벨 신호는 상기 적어도 하나의 데이터 버퍼에 현재 입력되는 데이터의 양에 상응하는 값을 가지는 것을 특징으로 하는 메모리 컨트롤러.
  9. 제 1 항에 있어서,
    상기 제1 문턱 값, 상기 제2 문턱 값, 상기 제1 기준 시간 및 상기 제2 기준 시간은 변경 가능한 것을 특징으로 하는 메모리 컨트롤러.
  10. 입력 데이터를 저장하거나 저장된 데이터를 출력하는 적어도 하나의 메모리 장치; 및
    상기 적어도 하나의 메모리 장치의 동작을 제어하는 메모리 컨트롤러를 포함하고,
    상기 메모리 컨트롤러는,
    제1 클럭 신호, 제1 주파수 제어 신호 및 제2 주파수 제어 신호에 기초하여 주파수가 가변되는 제2 클럭 신호를 발생하는 클럭 스케일러;
    상기 제2 클럭 신호에 기초하여 동작하고, 현재 동작 상태에 상응하는 레벨 신호를 발생하는 버스 컴포넌트; 및
    상기 레벨 신호, 제1 문턱 값, 제2 문턱 값, 제1 기준 시간 및 제2 기준 시간에 기초하여, 상기 제2 클럭 신호의 주파수를 증가시키는 상기 제1 주파수 제어 신호 및 상기 제2 클럭 신호의 주파수를 감소시키는 상기 제2 주파수 제어 신호를 발생하는 레벨 모니터를 포함하는 메모리 시스템.
KR1020140028099A 2014-03-11 2014-03-11 메모리 컨트롤러 및 이를 포함하는 메모리 시스템 KR102086719B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020140028099A KR102086719B1 (ko) 2014-03-11 2014-03-11 메모리 컨트롤러 및 이를 포함하는 메모리 시스템
US14/589,660 US9568941B2 (en) 2014-03-11 2015-01-05 Memory controller, memory system including the same and method of operating memory controller

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020140028099A KR102086719B1 (ko) 2014-03-11 2014-03-11 메모리 컨트롤러 및 이를 포함하는 메모리 시스템

Publications (2)

Publication Number Publication Date
KR20150106076A KR20150106076A (ko) 2015-09-21
KR102086719B1 true KR102086719B1 (ko) 2020-03-09

Family

ID=54068805

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020140028099A KR102086719B1 (ko) 2014-03-11 2014-03-11 메모리 컨트롤러 및 이를 포함하는 메모리 시스템

Country Status (2)

Country Link
US (1) US9568941B2 (ko)
KR (1) KR102086719B1 (ko)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10416910B1 (en) * 2016-09-20 2019-09-17 Altera Corporation Apparatus and method to reduce memory subsystem power dynamically
US11403241B2 (en) 2017-10-02 2022-08-02 Micron Technology, Inc. Communicating data with stacked memory dies
US10355893B2 (en) 2017-10-02 2019-07-16 Micron Technology, Inc. Multiplexing distinct signals on a single pin of a memory device
US10446198B2 (en) 2017-10-02 2019-10-15 Micron Technology, Inc. Multiple concurrent modulation schemes in a memory system
US10490245B2 (en) 2017-10-02 2019-11-26 Micron Technology, Inc. Memory system that supports dual-mode modulation
US10725913B2 (en) * 2017-10-02 2020-07-28 Micron Technology, Inc. Variable modulation scheme for memory device access or operation
KR20220079196A (ko) 2020-12-04 2022-06-13 삼성전자주식회사 Dvfs 동작을 수행하는 집적 회로 및 이의 동작 방법

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070083701A1 (en) * 2005-10-12 2007-04-12 Sun Microsystems, Inc. Power throttling in a memory system

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100238188B1 (ko) 1997-09-12 2000-01-15 윤종용 비디오 콘트롤러에서 메모리클럭 발생방법 및 그 장치
US6263448B1 (en) * 1997-10-10 2001-07-17 Rambus Inc. Power control system for synchronous memory device
US6460125B2 (en) 1998-08-07 2002-10-01 Ati Technologies, Inc. Dynamic memory clock control system and method
US6820209B1 (en) * 1999-07-15 2004-11-16 Apple Computer, Inc. Power managed graphics controller
US7606960B2 (en) 2004-03-26 2009-10-20 Intel Corporation Apparatus for adjusting a clock frequency of a variable speed bus
JP2006099569A (ja) 2004-09-30 2006-04-13 Kyocera Mita Corp メモリインタフェース回路及びクロック制御方法
JP2007241785A (ja) 2006-03-10 2007-09-20 Renesas Technology Corp データ処理装置
JP4808108B2 (ja) 2006-08-29 2011-11-02 パナソニック株式会社 プロセッサシステム
TWI466018B (zh) 2007-08-24 2014-12-21 Via Tech Inc 降低電腦系統耗能的方法、電腦系統、及控制裝置
JP5119882B2 (ja) 2007-11-21 2013-01-16 富士通株式会社 メモリクロック設定機能を有する情報処理装置およびメモリクロック設定方法
US8438410B2 (en) 2010-06-23 2013-05-07 Intel Corporation Memory power management via dynamic memory operation states
US8650423B2 (en) 2011-10-12 2014-02-11 Qualcomm Incorporated Dynamic voltage and clock scaling control based on running average, variant and trend
CN103246340A (zh) 2012-02-06 2013-08-14 索尼公司 动态调整中央处理单元的频率的装置和方法

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070083701A1 (en) * 2005-10-12 2007-04-12 Sun Microsystems, Inc. Power throttling in a memory system

Also Published As

Publication number Publication date
US20150261250A1 (en) 2015-09-17
US9568941B2 (en) 2017-02-14
KR20150106076A (ko) 2015-09-21

Similar Documents

Publication Publication Date Title
KR102086719B1 (ko) 메모리 컨트롤러 및 이를 포함하는 메모리 시스템
US20140184619A1 (en) System-on-chip performing dynamic voltage and frequency scaling
KR102649324B1 (ko) 적응 인터럽트 제어를 수행하는 컴퓨터 시스템 및 그것의 인터럽트 제어 방법
US11693466B2 (en) Application processor and system on chip
KR102107470B1 (ko) 메모리 장치 및 메모리 장치의 리프레시 방법
US20140063026A1 (en) Soc performing dynamic voltage and frequency scaling policies using 3d workload, and method using the same
US11126246B2 (en) Apparatus, method, and system for power consumption management of system-on-chip
KR102222752B1 (ko) 프로세서의 동적 전압 주파수 스케일링 방법
TWI652692B (zh) 用於減少喚醒時間之系統單晶片、操作系統單晶片之方法以及包括系統單晶片之電腦系統
US20160104418A1 (en) Timing controller, organic light-emitting diode (oled) display having the same and method for driving the oled display
US11157064B2 (en) Techniques to dynamically enable and disable accelerator devices in compute environments
KR102002899B1 (ko) 시스템-온 칩, 이의 동작 방법, 및 이를 포함하는 장치
US20160154449A1 (en) System on chips for controlling power using workloads, methods of operating the same, and computing devices including the same
CN111833939A (zh) 电源管理集成电路pmic和包括pmic的存储器模块
US11385811B2 (en) Storage device and method of operating the same
KR102429903B1 (ko) 비휘발성 메인 메모리 시스템의 페이지 폴트 처리 방법
US11797196B2 (en) Solid state drive (SSD) and operating method
US20190146699A1 (en) Dynamic configuration of compressed virtual memory
EP4390650A1 (en) Electronic device including ufs storage device, method, non-transitory computer-readable storage medium, and ufs card
TW201629760A (zh) 使用工作負載控制電力的系統晶片、其操作方法以及包含上述的計算裝置
US10319300B2 (en) Display device and electronic device having the same
US10558255B2 (en) Hybrid hardware/firmware power management controller for media devices
US11543871B2 (en) Storage device, multi-component device and method of controlling operation of the same
US20140028692A1 (en) System on chip and electronic system including the same
US10628367B2 (en) Techniques for dynamically modifying platform form factors of a mobile device

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