KR101429990B1 - 저 전력 메모리 액세스를 위한 버스 중재 방법들 - Google Patents

저 전력 메모리 액세스를 위한 버스 중재 방법들 Download PDF

Info

Publication number
KR101429990B1
KR101429990B1 KR1020127029869A KR20127029869A KR101429990B1 KR 101429990 B1 KR101429990 B1 KR 101429990B1 KR 1020127029869 A KR1020127029869 A KR 1020127029869A KR 20127029869 A KR20127029869 A KR 20127029869A KR 101429990 B1 KR101429990 B1 KR 101429990B1
Authority
KR
South Korea
Prior art keywords
memory
requests
power
bus masters
bus
Prior art date
Application number
KR1020127029869A
Other languages
English (en)
Other versions
KR20130029395A (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 KR20130029395A publication Critical patent/KR20130029395A/ko
Application granted granted Critical
Publication of KR101429990B1 publication Critical patent/KR101429990B1/ko

Links

Images

Classifications

    • 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/1605Handling requests for interconnection or transfer for access to memory bus based on arbitration
    • G06F13/161Handling requests for interconnection or transfer for access to memory bus based on arbitration with latency improvement
    • 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
    • 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
    • G06F13/1684Details of memory controller using multiple buses
    • 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/18Handling requests for interconnection or transfer for access to memory bus based on priority control
    • 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

Abstract

메모리 액세스들의 전력 소비를 감소시키기 위해 공유 메모리 시스템에 대한 요청들을 중재하기 위한 시스템들 및 방법은 공유 메모리 시스템의 메모리 채널들에 연관된 전력 모드들을 결정하고, 상기 전력 모드들에 적어도 부분적으로 기초하여 상기 요청들에 우선순위들을 할당하고, 상기 할당된 우선순위들에 기초하여 상기 요청들을 스케줄링하는 것을 포함한다. 우선순위들을 할당하기 위해 레이턴시 특성들 및 페이지 히트 레이트가 또한 고려된다.

Description

저 전력 메모리 액세스를 위한 버스 중재 방법들{METHODS OF BUS ARBITRATION FOR LOW POWER MEMORY ACCESS}
본 특허 출원은 다음의 동시 계속 미국 특허 출원에 관련된다: 대리인 관리 번호 092055호를 가지며, 본 출원과 동시에 제출되었고, 본 출원의 양수인에게 양도되었으며, 인용에 의해 본 명세서에 명백히 포함되는, Wang Feng에 의한 "BUS ARBITRATION TECHNIQUES TO REDUCE ACCESS LATENCY"
개시되는 실시예들은 버스 중재 기술들에 관한 것이다. 특히, 개시되는 실시예들은 공유 메모리 시스템들에서 메모리 액세스 전력을 감소시키기 위한 기술들을 대상으로 한다.
공유 메모리 구조들을 갖는 시스템 아키텍처들이 해당 기술분야에 잘 알려져 있다. 공유 또는 전역 메모리 공간이 버스 또는 상호 접속 시스템을 통해 다수의 프로세서들 또는 처리 엘리먼트들에 의해 액세스될 수 있다. 처리 엘리먼트들은 개념상 상호 접속 시스템의 "버스 마스터들"로 지칭되며, 공유 메모리 구조가 "슬레이브" 단에 상주한다. 버스 마스터들은 공유 메모리 자원으로의 판독/기록 요청들을 한다. 요청들은 슬레이브 단에서 "메모리 제어기들"에 의해 서비스된다. 일반적으로, 메모리 제어기들은 데이터의 이송을 용이하게 하기 위해 상호 접속 시스템에서 버스 마스터와 공통 메모리 공간 사이의 점 대 점 접속을 완료한다.
메모리 액세스 속도를 높이기 위해, 공유 메모리 공간은 일반적으로 인터리브된다. 인터리브 메모리 시스템(interleaved memory system)은 2개 또는 그보다 많은 메모리 채널들을 포함한다. 메모리 채널은 일반적으로 컴퓨터 시스템과 주변 장치들 간의 경로를 의미한다. 서로 다른 메모리 채널들의 데이터 워드들이 병렬로 액세스될 수 있도록 메모리 데이터가 메모리 채널들 사이에 분산된다.
임의의 주어진 시점에 메모리 제어기에 의해 단 하나의 액세스 요청이 서비스 가능할 수도 있기 때문에, 다수의 버스 마스터들이 공유 메모리 공간에 액세스하기 위해 서로 경쟁하는 것이 상당히 일반적이다. 따라서 다른 버스 마스터가 서비스되고 있는 동안 버스 마스터가 액세스 승인을 받지 않도록 공유 메모리의 액세스가 동기화된다. 경쟁들을 피하기 위해 서로 다른 버스 마스터들로부터의 요청들을 동기화하고 스케줄링하도록 스케줄링 메커니즘들 또는 "중재 방식들"이 이용된다. "버스 중재기"가 중재 작업을 수행한다.
버스 중재기는 임의의 주어진 시점에 어느 버스 마스터가 메모리에 대한 액세스 승인을 받을 수 있는지를 결정한다. 2개 또는 그보다 많은 버스 마스터들이 동시에 특정 메모리 제어기에 요청들을 전달할 때, 단 하나의 마스터만이 액세스 승인을 받는 한편, 다른 마스터들은 대기해야 한다. 중재기들이 직면하는 과제들 중 하나는 특정 버스 마스터들이 메모리에 액세스할 수 있도록 이들의 우선순위를 정하는 것이, 액세스 획득시 더 낮은 우선순위를 갖는 버스 마스터들이 무한정 로크아웃되거나 지나친 지연들을 겪게 하지 않도록 함을 보장하는 것이다. 에러 없는 시스템 동작을 보장하면서 버스 마스터에 의해 발생될 수 있는 최대 지연은 일반적으로 버스 마스터의 "레이턴시 특성" 또는 "레이턴시 요건"으로 지칭된다.
일반적인 중재 방식은 라운드 로빈(round robin) 중재 방식인데, 여기서는 이용 가능한 대역폭이 모든 버스 마스터들 사이에 균등하게 할당된다. 개별 버스 마스터들의 레이턴시 요건들을 고려하지 않고 미리 결정된 순서에 따라 메모리 액세스가 승인된다. 예를 들어, 음성 통신들을 처리하는 디지털 신호 프로세서(DSP: Digital Signal Processor)는 저 레이턴시 통신들을 필요로 할 수 있지만, 기본적인 라운드 로빈 방식은 이러한 레이턴시 특성들을 수용하기에 매우 비효율적임을 입증할 수 있다.
다른 잘 알려진 접근 방식은 네트워크에 "토큰"이 돌려지고 토큰을 보유하는 버스 마스터만이 액세스가 허용될 수 있는 토큰 기반 접근 방식이다. 우선순위 및 레이턴시 요건들의 개념들이 이러한 방식들의 구현들에 짜맞춰 진다. 토큰 기반 중재 방식은 버스 마스터들의 레이턴시 특성들을 기초로 우선순위를 할당함으로써 레이턴시 요건들의 보장을 꾀한다.
그러나 이러한 그리고 다른 잘 알려진 중재 방식들은 중재 프로세스에서 버스 마스터들의 레이턴시 요건들만을 고려하고, 상호 접속 시스템의 슬레이브 단에서의 트랜잭션들을 고려하지 않는다. 이는 종종 시스템 성능의 저하 및 증가된 전력 소비를 초래한다. 예를 들어, 해당 기술분야에서 통상의 지식을 가진 자는 전력 소비를 감소시키는 일반적인 기술은 임의의 주어진 시점에 활동적으로 사용되지 않는 시스템의 로직 엘리먼트들을 "슬립" 또는 "전력 차단(powered down)" 모드로 유지하는 것임을 인식할 것이다. "전력 차단" 모드는 액티브 상태들에서 유지되는 로직 엘리먼트들에 인가되는 전력에 비해 더 적은 인가 전력으로 또는 인가 전력 없이 유지되는 로직 엘리먼트들로서 정의될 수 있다. 따라서 메모리 채널들이 액세스되지 않을 때 이들을 전력 차단 모드로 유지하도록 잘 알려진 기술들이 이용된다. 그러나 메모리 채널들의 전력 차단 및 이후의 전력 상승(power up) 프로세스는 그 자체가 비용이 많이 든다. 따라서 메모리 셀이 지속적으로 전력 차단 모드인 시간의 듀레이션(duration)을 증가시키고, "웨이크업" 동작들의 횟수를 감소시킴으로써 전력 소비가 감소된다.
종래의 중재 방식에서, 버스 중재기는 어느 버스 마스터가 액세스 승인되어야 하는지의 결정시, 전력 차단되는 메모리 채널들과 현재 액세스되고 있는(액티브) 메모리 채널들 사이를 구별하지 않는다. 따라서 특정 버스 마스터에 대한 액세스 승인이 지금까지 전력 차단 모드였던 메모리 채널의 웨이크업을 일으키게 되는 상황들이 일반적으로 닥치게 된다. 그러나 메모리 시스템에서는, 버스 마스터들의 작은 서브세트만이 저 레이턴시 요건들을 갖고, 여기서 액세스 요청들은 즉시 이행될 필요가 있다는 점도 역시 일반적이다. 나머지 버스 마스터들은 더 큰 레이턴시 요건들을 갖는다. 따라서 메모리 채널은 서비스되기 전에 더 오래 기다릴 수 있는 버스 마스터로부터의 요청을 서비스하기 위해 자주 웨이크업될 수 있다.
특정 메모리 채널이 전력 차단됨을 고려함으로써, 버스 중재기는, 메모리 채널이 서비스가 완료되어야 하기 이전에 가능한 한 가장 긴 지속시간 동안 전력 차단 모드로 유지되도록, 고 레이턴시 특성들을 갖는 버스 마스터들로부터의 그 메모리 채널에 대한 액세스 요청들의 서비스를 지연시킬 수 있다. 그 결과, 전력 차단된 메모리 채널들보다 액티브 메모리 채널들에 대한 메모리 액세스 요청들에 우선순위를 부여함으로써, 이미 액티브 상태인 메모리 채널들에 대한 활동성이 최대화될 수 있다. 버스 시스템의 슬레이브 측에서 메모리 채널들의 "전력 모드"를 고려하는 이러한 중재 방식들을 이용함으로써 상당한 전력 절약들이 달성될 수 있다. 따라서 이러한 기술들의 필요성이 해당 기술분야에 존재한다.
예시적인 실시예들은 메모리 액세스들의 전력 소비 감소에 적어도 부분적으로 기초하여 공유 메모리 시스템에 대한 요청들을 중재하기 위한 시스템들 및 방법에 관한 것이다.
예를 들어, 예시적인 실시예는 처리 시스템에서 공유 메모리에 대한 액세스를 위한 버스 마스터들로부터의 요청들을 중재하는 방법에 관한 것으로, 이 방법은 상기 공유 메모리를 메모리 채널들로 분할하는 단계, 상기 메모리 채널들과 연관된 전력 모드들을 결정하는 단계, 상기 전력 모드들에 적어도 부분적으로 기초하여 상기 요청들에 우선순위들을 할당하는 단계, 및 상기 할당된 우선순위들을 기초로 상기 요청들을 스케줄링하는 단계를 포함한다.
다른 예시적인 실시예는 메모리 채널들로 분할되는 공유 메모리 시스템, 상기 공유 메모리 시스템에 대한 요청들을 생성하도록 구성된 버스 마스터들, 상기 메모리 채널들과 연관된 전력 모드들을 결정하도록 구성된 메모리 제어기들, 및 상기 전력 모드들에 적어도 부분적으로 기초하여 상기 요청들에 우선순위들을 할당하도록 구성된 버스 중재기들을 포함하는 처리 시스템에 관한 것이다.
또 다른 예시적인 실시예는 메모리 채널들로 분할되는 공유 메모리 시스템, 버스 마스터 수단에 의해 생성되는 공유 메모리 시스템에 대한 요청들, 상기 메모리 채널들과 연관된 전력 모드들을 결정하기 위한 수단, 상기 전력 모드들에 적어도 부분적으로 기초하여 상기 요청들에 우선순위들을 할당하기 위한 수단, 및 상기 할당된 우선순위들을 기초로 상기 요청들을 스케줄링하기 위한 수단을 포함하는 처리 시스템에 관한 것이다.
다른 예시적인 실시예는 처리 시스템에서 공유 메모리에 대한 액세스를 위한 버스 마스터들로부터의 요청들을 중재하는 방법에 관한 것으로, 이 방법은 상기 공유 메모리를 메모리 채널들로 분할하기 위한 단계, 상기 메모리 채널들과 연관된 전력 모드들을 결정하기 위한 단계, 상기 전력 모드들에 적어도 부분적으로 기초하여 상기 요청들에 우선순위들을 할당하기 위한 단계, 및 상기 할당된 우선순위들을 기초로 상기 요청들을 스케줄링하기 위한 단계를 포함한다.
첨부 도면들은 실시예들의 설명에 도움이 되도록 제시되며 실시예들의 한정이 아닌 실시예들의 설명을 위해서만 제공된다.
도 1은 다수의 버스 마스터들에 의한 공유 메모리 시스템의 액세스를 용이하게 하기 위한 종래의 버스 상호 접속 시스템을 나타낸다.
도 2는 버스 상호 접속 시스템의 예시적인 실시예를 나타내며, 여기서 중재는 공유 메모리 시스템의 메모리 채널들의 전력 모드에 적어도 부분적으로 기초한다.
도 3은 예시적인 버스 중재 방식에 대한 흐름도를 나타내며, 여기서 중재는 공유 메모리 시스템의 메모리 채널들의 전력 모드에 적어도 부분적으로 기초한다.
특정 실시예들에 관련된 다음의 설명 및 관련 도면들에서 본 발명의 양상들이 개시된다. 본 발명의 범위를 벗어나지 않으면서 대안적인 실시예들이 안출될 수 있다. 추가로, 실시예들의 잘 알려진 엘리먼트들은 다양한 실시예들의 관련 세부 사항들을 모호하게 하지 않도록 상세히 설명되지 않거나 생략될 것이다.
"예시적인"이라는 단어는 본 명세서에서 "예시, 실례 또는 예증으로서의 역할"을 의미하는데 사용된다. 본 명세서에서 "예시적인" 것으로서 설명되는 어떠한 실시예도 다른 실시예들에 비해 반드시 바람직하거나 유리한 것으로 해석되는 것은 아니다. 마찬가지로, "실시예들" 또는 "발명의 실시예들"이라는 용어는 모든 실시예들이 개시된 특징, 이점 또는 동작 모드를 포함할 것을 요구하는 것은 아니다.
본 명세서에서 사용되는 용어는 특정 실시예들을 설명할 목적일 뿐이며 다양한 실시예들의 한정인 것으로 의도되지는 않는다. 본 명세서에서 사용되는 바와 같이, "하나의"라는 단수 형태들("a", "an" 및 "the")은 문맥상 명백하게 달리 표시하지 않는 한, 복수 형태들도 포함하는 것으로 의도된다. 또한, "포함하는"("comprises", "comprising,", "includes" 및/또는 "including")이라는 용어들은 본 명세서에서 사용될 때, 언급되는 특징들, 정수들, 단계들, 동작들, 엘리먼트들 및/또는 컴포넌트들의 존재를 특정하지만, 하나 또는 그보다 많은 다른 특징들, 정수들, 단계들, 동작들, 엘리먼트들, 컴포넌트들, 및/또는 이들의 그룹들의 존재 또는 부가를 배제하는 것은 아닌 것으로 이해될 것이다.
또한, 많은 실시예들은 예를 들어, 컴퓨팅 디바이스의 엘리먼트들에 의해 수행될 동작들의 시퀀스들에 관해 설명된다. 본 명세서에서 설명되는 다양한 동작들은 특정 회로들(예를 들어, 주문형 집적 회로(ASIC: application specific integrated circuit)들)에 의해, 하나 또는 그보다 많은 프로세서들에 의해 실행되는 프로그램 명령들에 의해, 또는 이 둘의 조합에 의해 수행될 수 있는 것으로 인식될 것이다. 추가로, 본 명세서에서 설명되는 동작들의 이러한 시퀀스는 실행시 연관된 프로세서로 하여금 본 명세서에서 설명되는 기능을 수행하게 할 대응하는 한 세트의 컴퓨터 명령들이 저장된 임의의 형태의 컴퓨터 판독 가능 저장 매체 내에 그 전체가 구현되는 것으로 간주될 수 있다. 따라서 본 발명의 다양한 양상들은 다수의 다양한 형태들로 구현될 수 있으며, 이들 모두 청구 대상의 범위 내에 있는 것으로 여겨졌다. 또한, 본 명세서에서 설명되는 실시예들 각각에 대해, 이러한 임의의 실시예들의 대응하는 형태는 본 명세서에서, 예를 들어 설명되는 동작을 수행"하도록 구성된 로직"으로서 설명될 수 있다.
도 1은 종래의 공유 메모리 시스템(100)을 나타낸다. 버스 마스터들(M1-MN)은 상호 접속(102)을 매개로 메모리 액세스 요청들을 한다. 버스 중재기들(A1, A2)은 라운드 로빈이나 토큰 기반 스케줄링과 같은 종래의 기술들에 따라 요청들을 스케줄링한다. 슬레이브 메모리 제어기들(MC1, MC2)은 2배속 데이터(DDR: Double Data Rate) 메모리(104)와 같은 공유 메모리 자원과 통신함으로써, 스케줄링된 요청들을 서비스한다. 시스템(100)은 특정 메모리 액세스 요청을 서비스하기 위해 메모리 채널들이 전력 차단 모드로부터 웨이크업될 필요가 있는지 여부를 고려하지 않는다.
도 2는 다양한 실시예들의 기술들이 유리하게 이용되는 처리 시스템(200)의 예시적인 실시예를 나타낸다. 인터리브 메모리(204)는 메모리 채널들(Ch1, Ch2)을 포함하는 것으로 도시된다. 채널들(Ch1, Ch2)은 적어도 2개의 모드들, 즉 슬립 모드(또는 전력 차단 모드) 및 액티브 모드(또는 전력 상승 모드)로 동작 가능하다.
비-한정적인 예에서, 메모리 채널들의 동작을 2개의 전력 모드들로 구성하기 위해 클록 게이팅 메커니즘이 이용될 수 있다. 선택적 클록 게이팅에 의하면, 특정 메모리 채널에 의해 이용되는 클록 네트워크의 한 섹션이 오프 전환될 수 있어, 해당 메모리 채널을 효율적으로 전력 차단할 수 있다. 이러한 전력 차단 기능들은 하드웨어나 소프트웨어에서 실행될 수 있다. 메모리 채널이 전력 차단되면, 메모리 채널은 판독/기록 동작들을 위해 액세스 가능하지 않을 수 있다. 메모리 채널은 전력 차단 모드에서 고정 전력을 소비할 수 있지만, 전력 소비는 전력 상승 모드에서보다 상당히 더 낮다.
액티브 또는 전력 상승 모드는 본래, 메모리 채널이 그 안에 포함된 데이터에 대한 판독/기록 요청들을 처리하도록 액세스될 수 있는 동작 모드이다. 메모리 채널은 이 모드에서 고정 및 동적 전력을 둘 다 소비하며, 동적 또는 전환 전력은 일반적으로 전력 차단 모드에서 소비되는 고정 전력보다 훨씬 더 크다. 전력 상승 모드에서 전력 차단 모드로, 그리고 그 반대로 전이하는 프로세스는 그 자체가 전력 소모적일 수 있으며, 또한 완료를 위해 여러 클록 주기들을 필요로 할 수도 있다. 따라서 전력 절약들을 최대화하기 위해, 메모리 채널을 가능한 한 오랫동안 전력 차단 모드로 유지하는 것이 바람직하다.
예시적인 실시예에 따르면, 각각의 메모리 채널의 전력 모드에 관한 정보가 전문화된 로직에 의해 추적된다. 전문화된 로직은 예시적인 실시예들에 따른 메모리 제어기들에 포함될 수 있다. 도 2는 메모리 채널들(Ch1, Ch2) 각각의 현재 전력 모드(전력 차단/전력 상승)를 유지하는 전력 모드 레지스터(206)를 나타낸다. 각각의 메모리 채널에 대해 레지스터에 단일 비트가 유지되는데, 해당 채널에 대해 이진값 "0"은 전력 차단 모드를 나타내고 이진값 "1"은 전력 상승 모드를 나타낸다. 메모리 제어기들(MC1, MC2)은 대응하는 메모리 채널(Ch1, Ch2)의 전력 모드가 한 모드에서 다른 모드로 전이할 때마다 레지스터(206)를 업데이트한다.
전력 모드 레지스터(206)는 각각의 메모리 채널의 전력 모드 정보를 버스 중재기들(A1, A2)에 전달한다. 버스 중재기들(A1, A2)이 버스 마스터들(M1-MN) 중 하나로부터 메모리 액세스에 대한 요청을 수신할 때마다, 버스 중재기들(A1, A2)은 다른 요소들 중에서도, 요청을 서비스하기 위해 액세스되어야 하는 메모리 채널의 전력 모드, 및 버스 마스터의 레이턴시 요건을 고려한다.
실례가 되는 예에서는, 시간상 특정 인스턴스에서 채널(Ch2)은 전력 차단 모드이고, 채널(Ch1)은 액티브 상태이며 중재기(A1)에 의해 할당된 메모리 요청을 현재 처리하고 있다. 이때, 버스 마스터(M5)는 M3이 가까이 뒤따르는 요청을 중재기(A1)에 행한다. 2개의 요청들을 순서대로 서비스하는 것은 메모리 채널(Ch2)의 액세스 다음에 채널(Ch1)이 뒤따를 것을 요구할 것이다. M3과 M5 모두의 레이턴시 요건들은 높은 것으로 알려져 있다. 이 시나리오에서, M3을 서비스하는 것은 이미 액티브 상태인 메모리 채널(Ch1)에 액세스하는 것을 필요로 하지만, 다른 한편으로 M5를 서비스하는 것은 전력 차단 모드인 Ch2를 웨이크업하는 것을 필요로 하므로, 중재기(A1)는 M5보다 M3을 서비스하는데 우선순위를 둘 것이다. M5의 레이턴시가 만료하기 전에 채널(Ch1)에 대한 버스 마스터(M2)로부터의 또 다른 요청이 중재기(A1)에 도착한다면, 중재기(A1)는 M5가 훨씬 더 일찍 도착했다 해도, M5보다 M2를 서비스하는데 우선순위를 둘 것이다.
이에 따라, 메모리 채널들의 현재 전력 모드를 고려함으로써, 예시적인 실시예들은 메모리 채널들을 최대 지속시간 동안 전력 차단 모드로 유지하는 방식으로 메모리 액세스 요청들의 서비스에 우선순위를 부여한다. 상기의 실례가 되는 예시에서, 모든 버스 마스터들(M2, M3, M5)이 동일한 레이턴시 요건들을 가졌다면, 버스 중재기(A1)는 요청들이 수신되었던 순서대로 요청들에 우선순위를 부여했을 수도 있다. 따라서 M5가 처음에 서비스되어, 채널(Ch2)이 웨이크업되게 했을 것이다. 이는 M5로부터의 요청을 서비스하는 동안 채널(Ch1)이 인액티브 상태였다면 이를 슬립 모드로 보냈을 수도 있다. 그러나 채널(Ch1)은 M3로부터의 요청을 서비스하기 위해, 바로 뒤에 웨이크업되어야 했을 것이다. 이런 식으로 메모리 채널들에 대한 전력 모드들 사이를 전환하는 것은 전력 소비를 증가시킨다. 본 발명의 기술들은 채널들(Ch1, Ch2)의 전력 모드들을 추적하고 전력 모드들을 중재 프로세스에 통합함으로써 전력 소비를 유리하게 감소시킨다.
본 발명의 기술들의 예시적인 실시예가 도 3의 흐름도에 예시된다. 블록(302)에서 하나 또는 그보다 많은 버스 마스터들이 메모리 액세스 요청을 한다. 블록(304)에서, 요청들이 전달(direct)되는 메모리 채널(들)과 연관된 버스 중재기가 전력 모드 레지스터로부터 메모리 채널들의 전력 모드에 관한 피드백을 수신한다. 블록(306)에서, 중재기는 버스 마스터들의 레이턴시 요건들 및 메모리 채널들의 전력 모드를 고려하는 미리 결정된 알고리즘들을 기초로 메모리 요청에 우선순위를 할당한다. 미리 결정된 알고리즘들은 슬립 모드에 있는 메모리 채널이, 버스 마스터의 레이턴시 요건들을 충족하기 위해 절대적으로 중대하지 않은 한 웨이크업하지 않을 것임을 보장한다. 블록(308)에서, 다음으로 서비스되는 것으로 결정되었던 요청이 메모리 채널의 웨이크업을 수반할 것인지 여부의 결정이 이루어진다. 요청을 서비스하기 위해 메모리 채널이 웨이크업될 필요가 있다면, 블록(310)에서 웨이크업 동작이 수행된다. 블록(312)에서는, 요청을 서비스하도록 요청된 메모리 채널이 액티브 전력 상승 상태이고, 연관된 메모리 제어기가 요청을 서비스하게 된다.
본 명세서에서 개시된 기술들은 본 출원에 포함된 동시 계속 출원에서 설명되는 기술들과 쉽게 조합될 수 있다. 예를 들어, 동시 계속 출원은 버스 중재기가 메모리 액세스 요청들에 대한 페이지 히트 레이트를 최대화할 수 있는 기술들을 설명한다. 페이지 히트들의 최대화는 전력 갈구(power hungry) 프로세스인 새로운 페이지들의 오픈 빈도를 감소시키기 때문에 전력 절약들에 기여한다. 예시적인 실시예들의 버스 중재기들은 메모리 액세스 요청들에 대한 우선순위들의 할당시 전력 모드 정보 및 버스 마스터들의 레이턴시 특성들과 함께, 페이지 히트 레이트를 최대화하기 위한 파라미터들을 포함하도록 구성된다. 이에 따라, 개시된 실시예들은 종래의 방식들에 비해 더 낮은 전력 소비 및 더 높은 성능을 특징으로 한다.
해당 기술분야에서 통상의 지식을 가진 자들은 정보 및 신호들이 다양한 다른 기술들 및 기법들 중 임의의 것을 이용하여 표현될 수 있음을 이해할 것이다. 예를 들어, 상기 설명 전반에 걸쳐 참조될 수 있는 데이터, 명령들, 지시들, 정보, 신호들, 비트들, 심벌들 및 칩들은 전압들, 전류들, 전자파들, 자기 필드들 또는 자기 입자들, 광 필드들 또는 광 입자들, 또는 이들의 임의의 조합으로 표현될 수 있다.
본 명세서에서 설명된 처리 시스템(200)의 실시예들은 모바일 전화, 휴대용 컴퓨터, 핸드헬드 개인 통신 시스템(PCS: hand-held personal communication system) 유닛, 개인 디지털 보조기기(PDA: personal data assistant)들과 같은 휴대용 데이터 유닛들, GPS 가능 디바이스들, 네비게이션 디바이스들, 셋톱박스들, 뮤직 플레이어들, 비디오 플레이어들, 엔터테인먼트 유닛들, 검침(meter reading) 장비와 같은 고정 위치 데이터 유닛들, 또는 데이터나 컴퓨터 명령들을 저장 또는 검색(retrieve)하는 임의의 다른 디바이스, 또는 이들의 임의의 조합 내에 포함될 수 있는 것으로 인식될 것이다.
또한, 해당 기술분야에서 통상의 지식을 가진 자들은 본 명세서에 개시된 실시예들과 관련하여 설명된 다양한 예시적인 로직 블록들, 모듈들, 회로들 및 알고리즘 단계들이 전자 하드웨어, 컴퓨터 소프트웨어, 또는 이 둘의 조합들로 구현될 수 있음을 인식할 것이다. 이러한 하드웨어와 소프트웨어의 상호 호환성을 명확히 설명하기 위해, 각종 예시적인 컴포넌트들, 블록들, 모듈들, 회로들 및 알고리즘 단계들은 일반적으로 이들의 기능과 관련하여 위에서 설명되었다. 이러한 기능이 하드웨어로 구현되는지 아니면 소프트웨어로 구현되는지는 전체 시스템에 부과된 설계 제약들 및 특정 애플리케이션에 좌우된다. 해당 기술분야에서 통상의 지식을 가진 자들은 설명된 기능을 특정 애플리케이션마다 다른 방식들로 구현할 수도 있지만, 이러한 구현 결정들이 다양한 실시예들의 범위를 벗어나게 하는 것으로 해석되지 않아야 한다.
본 명세서에 개시된 실시예들과 관련하여 설명된 방법들, 시퀀스들 및/또는 알고리즘들은 직접 하드웨어로, 프로세서에 의해 실행되는 소프트웨어 모듈로, 또는 이 둘의 조합으로 구현될 수 있다. 소프트웨어 모듈은 RAM 메모리, 플래시 메모리, ROM 메모리, EPROM 메모리, EEPROM 메모리, 레지스터들, 하드디스크, 착탈식 디스크, CD-ROM, 또는 해당 기술분야에 공지된 임의의 다른 형태의 저장 매체에 상주할 수 있다. 예시적인 저장 매체는 프로세서가 저장 매체로부터 정보를 읽고 저장 매체에 정보를 기록할 수 있도록 프로세서에 연결될 수 있다. 대안으로, 저장 매체는 프로세서에 통합될 수도 있다.
이에 따라, 실시예는 메모리 액세스 전력을 감소시키기 위한 버스 중재 방법을 구현하는 컴퓨터 판독 가능 매체를 포함할 수 있다. 따라서 다양한 실시예들은 설명된 예시들로 한정되지 않으며, 본 명세서에서 설명된 기능을 수행하기 위한 임의의 수단이 다양한 실시예들에 포함된다.
상기의 개시는 본 발명의 예시적인 실시예들을 보여주지만, 첨부된 청구항들에 의해 정의된 대로 다양한 실시예들의 범위를 벗어나지 않으면서 본 명세서에 다양한 변경들 및 수정들이 이루어질 수 있다는 점에 유의해야 한다. 본 명세서에서 설명된 다양한 실시예들에 따른 방법 청구항들의 기능들, 단계들 및/또는 동작들은 어떠한 특정 순서로 수행될 필요는 없다. 더욱이, 다양한 실시예들의 엘리먼트들은 단수로 설명 또는 청구될 수 있지만, 단수로의 한정이 명시적으로 언급되지 않는 한 다수가 고려된다.

Claims (22)

  1. 처리 시스템에서 공유 메모리에 대한 액세스를 위한 버스 마스터들로부터의 요청들을 중재하는 방법으로서,
    상기 공유 메모리를 메모리 채널들로 분할하는 단계;
    상기 메모리 채널들과 연관된 전력 모드들을 판정하는 단계;
    상기 전력 모드들에 적어도 부분적으로 기초하여 상기 요청들에 우선순위들을 할당하는 단계; 및
    상기 할당된 우선순위들에 기초하여 상기 요청들을 스케줄링하는 단계를 포함하는,
    버스 마스터들로부터의 요청들을 중재하는 방법.
  2. 제 1 항에 있어서,
    메모리 채널과 연관된 상기 전력 모드는 상기 메모리 채널에 대한 전력 상승(powered up) 모드 및 전력 차단(powered down) 모드를 포함하는,
    버스 마스터들로부터의 요청들을 중재하는 방법.
  3. 제 2 항에 있어서,
    상기 전력 모드들에 적어도 부분적으로 기초하여 상기 요청들에 우선순위들을 할당하는 단계는, 상기 전력 차단 모드의 지속시간을 최대화하는 단계를 포함하는,
    버스 마스터들로부터의 요청들을 중재하는 방법.
  4. 제 1 항에 있어서,
    상기 버스 마스터들에 레이턴시(latency) 특성들을 연관시키는 단계, 및
    상기 버스 마스터들의 레이턴시 특성들에 기초하여 상기 요청들에 우선순위들을 할당하는 단계를 더 포함하는,
    버스 마스터들로부터의 요청들을 중재하는 방법.
  5. 제 1 항에 있어서,
    상기 요청들에 상기 공유 메모리의 페이지들을 연관시키는 단계, 및
    페이지 히트 레이트의 최대화에 기초하여 상기 요청들에 우선순위들을 할당하는 단계를 더 포함하는,
    버스 마스터들로부터의 요청들을 중재하는 방법.
  6. 제 1 항에 있어서,
    상기 처리 시스템은,
    상기 버스 마스터들을 상기 메모리 채널들에 연결하기 위한 버스 상호 접속 시스템;
    상기 메모리 채널들에 대한 액세스를 제어하고 상기 메모리 채널들의 전력 모드들을 모니터링하기 위한 메모리 제어기들;
    상기 메모리 채널들에 연결되고, 상기 메모리 채널들의 전력 모드 정보를 저장하기 위한 전력 모드 레지스터; 및
    상기 메모리 제어기들 및 상기 전력 모드 레지스터에 연결되고, 상기 전력 모드들에 적어도 부분적으로 기초하여 상기 요청들에 우선순위들을 할당하기 위한 버스 중재기들을 더 포함하는,
    버스 마스터들로부터의 요청들을 중재하는 방법.
  7. 처리 시스템으로서,
    메모리 채널들로 분할되는 공유 메모리 시스템;
    상기 공유 메모리 시스템에 대한 요청들을 생성하도록 구성된 버스 마스터들;
    상기 메모리 채널들과 연관된 전력 모드들을 판정하도록 구성된 메모리 제어기들; 및
    상기 전력 모드들에 적어도 부분적으로 기초하여 상기 요청들에 우선순위들을 할당하도록 구성된 버스 중재기들을 포함하는,
    처리 시스템.
  8. 제 7 항에 있어서,
    메모리 채널과 연관된 상기 전력 모드는 상기 메모리 채널에 대한 전력 상승 모드 및 전력 차단 모드를 포함하는,
    처리 시스템.
  9. 제 8 항에 있어서,
    상기 전력 모드들에 적어도 부분적으로 기초하여 상기 요청들에 우선순위들을 할당하는 것은, 상기 전력 차단 모드의 지속시간을 최대화하는 것을 포함하는,
    처리 시스템.
  10. 제 7 항에 있어서,
    상기 전력 모드들에 적어도 부분적으로 기초하여 상기 요청들에 우선순위들을 할당하는 것은, 상기 버스 마스터들에 레이턴시 특성들을 연관시키는 것 및 상기 버스 마스터들의 레이턴시 특성들에 기초하여 상기 요청들에 우선순위들을 할당하는 것을 더 포함하는,
    처리 시스템.
  11. 제 7 항에 있어서,
    상기 전력 모드들에 적어도 부분적으로 기초하여 상기 요청들에 우선순위들을 할당하는 것은, 상기 요청들에 상기 공유 메모리의 페이지들을 연관시키는 것 및 페이지 히트 레이트의 최대화에 기초하여 상기 요청들에 우선순위들을 할당하는 것을 더 포함하는,
    처리 시스템.
  12. 제 7 항에 있어서,
    상기 메모리 채널들 및 버스 중재기들에 연결되고, 상기 메모리 채널들의 전력 모드 정보를 저장하기 위한 전력 모드 레지스터를 더 포함하는,
    처리 시스템.
  13. 처리 시스템으로서,
    메모리 채널들로 분할되는 공유 메모리 시스템;
    상기 공유 메모리 시스템에 요청들을 전송하기 위한 버스 마스터 수단;
    상기 메모리 채널들과 연관된 전력 모드들을 판정하기 위한 수단;
    상기 전력 모드들에 적어도 부분적으로 기초하여 상기 요청들에 우선순위들을 할당하기 위한 수단; 및
    상기 할당된 우선순위들에 기초하여 상기 요청들을 스케줄링하기 위한 수단을 포함하는,
    처리 시스템.
  14. 제 13 항에 있어서,
    메모리 채널과 연관된 상기 전력 모드는 상기 메모리 채널에 대한 전력 상승 모드 및 전력 차단 모드를 포함하는,
    처리 시스템.
  15. 제 14 항에 있어서,
    상기 전력 모드들에 적어도 부분적으로 기초하여 상기 요청들에 우선순위들을 할당하기 위한 수단은 상기 전력 차단 모드의 지속시간을 최대화하기 위한 수단을 포함하는,
    처리 시스템.
  16. 제 13 항에 있어서,
    상기 버스 마스터들에 레이턴시 특성들을 연관시키기 위한 수단, 및
    상기 버스 마스터들의 레이턴시 특성들에 기초하여 상기 요청들에 우선순위들을 할당하기 위한 수단을 더 포함하는,
    처리 시스템.
  17. 제 13 항에 있어서,
    상기 요청들에 상기 공유 메모리의 페이지들을 연관시키기 위한 수단, 및
    페이지 히트 레이트의 최대화에 기초하여 상기 요청들에 우선순위들을 할당하기 위한 수단을 더 포함하는,
    처리 시스템.
  18. 처리 시스템에서 공유 메모리에 대한 액세스를 위한 버스 마스터들로부터의 요청들을 중재하는 방법으로서,
    상기 공유 메모리를 메모리 채널들로 분할하기 위한 단계;
    상기 메모리 채널들과 연관된 전력 모드들을 결정하기 위한 단계;
    상기 전력 모드들에 적어도 부분적으로 기초하여 상기 요청들에 우선순위들을 할당하기 위한 단계; 및
    상기 할당된 우선순위들에 기초하여 상기 요청들을 스케줄링하기 위한 단계를 포함하는,
    버스 마스터들로부터의 요청들을 중재하는 방법.
  19. 제 18 항에 있어서,
    메모리 채널과 연관된 상기 전력 모드는 상기 메모리 채널에 대한 전력 상승 모드 및 전력 차단 모드를 포함하는,
    버스 마스터들로부터의 요청들을 중재하는 방법.
  20. 제 19 항에 있어서,
    상기 전력 모드들에 적어도 부분적으로 기초하여 상기 요청들에 우선순위들을 할당하기 위한 단계는 상기 전력 차단 모드의 지속시간을 최대화하기 위한 단계를 포함하는,
    버스 마스터들로부터의 요청들을 중재하는 방법.
  21. 제 18 항에 있어서,
    상기 버스 마스터들에 레이턴시 특성들을 연관시키기 위한 단계, 및
    상기 버스 마스터들의 레이턴시 특성들에 기초하여 상기 요청들에 우선순위들을 할당하기 위한 단계를 더 포함하는,
    버스 마스터들로부터의 요청들을 중재하는 방법.
  22. 제 18 항에 있어서,
    상기 요청들에 상기 공유 메모리의 페이지들을 연관시키기 위한 단계, 및
    페이지 히트 레이트의 최대화에 기초하여 상기 요청들에 우선순위들을 할당하기 위한 단계를 더 포함하는,
    버스 마스터들로부터의 요청들을 중재하는 방법.
KR1020127029869A 2010-04-14 2011-04-14 저 전력 메모리 액세스를 위한 버스 중재 방법들 KR101429990B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US12/760,240 2010-04-14
US12/760,240 US9842068B2 (en) 2010-04-14 2010-04-14 Methods of bus arbitration for low power memory access
PCT/US2011/032546 WO2011130548A1 (en) 2010-04-14 2011-04-14 Methods of bus arbitration for low power memory access

Publications (2)

Publication Number Publication Date
KR20130029395A KR20130029395A (ko) 2013-03-22
KR101429990B1 true KR101429990B1 (ko) 2014-08-14

Family

ID=44120991

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020127029869A KR101429990B1 (ko) 2010-04-14 2011-04-14 저 전력 메모리 액세스를 위한 버스 중재 방법들

Country Status (6)

Country Link
US (1) US9842068B2 (ko)
EP (1) EP2558944B1 (ko)
JP (1) JP5584821B2 (ko)
KR (1) KR101429990B1 (ko)
CN (1) CN102884514B (ko)
WO (1) WO2011130548A1 (ko)

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8539129B2 (en) * 2010-04-14 2013-09-17 Qualcomm Incorporated Bus arbitration techniques to reduce access latency
JP5932261B2 (ja) * 2010-09-17 2016-06-08 キヤノン株式会社 メモリ制御装置、メモリ制御方法
US9223373B2 (en) * 2012-03-21 2015-12-29 Hgst Technologies Santa Ana, Inc. Power arbitration for storage devices
JP6122682B2 (ja) * 2013-04-16 2017-04-26 ルネサスエレクトロニクス株式会社 半導体装置及びそれを備えたプロセッサシステム
KR102098246B1 (ko) * 2013-04-29 2020-04-07 삼성전자 주식회사 호스트, 저장 장치, 및 이를 포함하는 시스템의 동작 방법
US10318210B2 (en) * 2015-01-22 2019-06-11 Sony Corporation Memory controller, storage device, information processing system, and method of controlling memory
KR102450556B1 (ko) 2015-04-17 2022-10-04 삼성전자주식회사 불휘발성 메모리 장치들을 제어할 수 있는 데이터 저장 장치와 이를 포함하는 데이터 처리 시스템
KR102360214B1 (ko) 2015-08-26 2022-02-08 삼성전자주식회사 실시간 공유 인터페이스를 포함하는 시스템 온 칩의 스케쥴링 방법
KR101964300B1 (ko) 2017-11-14 2019-04-01 한국과학기술연구원 지식모델을 이용한 로봇의 동작 구현 장치 및 방법
US10877693B2 (en) * 2018-06-29 2020-12-29 Intel Corporation Architecture for dynamic transformation of memory configuration
JP2020027520A (ja) * 2018-08-15 2020-02-20 セイコーエプソン株式会社 制御装置、表示装置、メモリーの制御方法
JP7184632B2 (ja) * 2018-12-25 2022-12-06 ルネサスエレクトロニクス株式会社 半導体装置
KR20210012439A (ko) * 2019-07-25 2021-02-03 삼성전자주식회사 마스터 지능 소자 및 이의 제어 방법
US11334291B2 (en) 2020-03-31 2022-05-17 Nxp B.V. Method and apparatus for isolating a memory

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7581073B2 (en) * 2006-08-09 2009-08-25 International Business Machines Corporation Systems and methods for providing distributed autonomous power management in a memory system

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6385708B1 (en) 1998-11-16 2002-05-07 Infineon Technologies Ag Using a timing-look-up-table and page timers to determine the time between two consecutive memory accesses
US7127573B1 (en) 2000-05-04 2006-10-24 Advanced Micro Devices, Inc. Memory controller providing multiple power modes for accessing memory devices by reordering memory transactions
US6564304B1 (en) 2000-09-01 2003-05-13 Ati Technologies Inc. Memory processing system and method for accessing memory including reordering memory requests to reduce mode switching
US7093094B2 (en) 2001-08-09 2006-08-15 Mobilygen Corporation Random access memory controller with out of order execution
US6785793B2 (en) 2001-09-27 2004-08-31 Intel Corporation Method and apparatus for memory access scheduling to reduce memory access latency
US7069399B2 (en) 2003-01-15 2006-06-27 Via Technologies Inc. Method and related apparatus for reordering access requests used to access main memory of a data processing system
KR100518576B1 (ko) 2003-05-24 2005-10-04 삼성전자주식회사 버스 중재기 및 버스 중재방법
US7206866B2 (en) 2003-08-20 2007-04-17 Microsoft Corporation Continuous media priority aware storage scheduler
US7299324B2 (en) 2003-11-05 2007-11-20 Denali Software, Inc. Reactive placement controller for interfacing with banked memory storage
US20060112240A1 (en) 2004-11-24 2006-05-25 Walker Robert M Priority scheme for executing commands in memories
JP4827715B2 (ja) * 2006-12-19 2011-11-30 キヤノン株式会社 管理装置、管理方法、情報処理装置及びその制御方法、プログラム、記憶媒体
US20080162852A1 (en) 2006-12-28 2008-07-03 Surya Kareenahalli Tier-based memory read/write micro-command scheduler
JP2008287528A (ja) 2007-05-18 2008-11-27 Renesas Technology Corp リクエスト調停装置及びメモリコントローラ
US7724602B2 (en) * 2007-07-10 2010-05-25 International Business Machines Corporation Memory controller with programmable regression model for power control
KR101228934B1 (ko) * 2007-08-28 2013-02-01 삼성전자주식회사 컴퓨터 시스템, 그 제어 방법 및 데이터 처리 장치
US7734854B2 (en) 2008-01-04 2010-06-08 International Business Machines Corporation Device, system, and method of handling transactions
JP2009193107A (ja) 2008-02-12 2009-08-27 Panasonic Corp メモリアクセス装置
US8032678B2 (en) 2008-11-05 2011-10-04 Mediatek Inc. Shared resource arbitration
CN101639817B (zh) 2009-03-13 2012-01-25 青岛海信信芯科技有限公司 一种存储器的控制方法、存储器控制器和存储器控制系统
US8380916B2 (en) 2009-06-04 2013-02-19 Micron Technology, Inc. Control of page access in memory
JP2010287057A (ja) 2009-06-11 2010-12-24 Canon Inc メモリ制御回路

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7581073B2 (en) * 2006-08-09 2009-08-25 International Business Machines Corporation Systems and methods for providing distributed autonomous power management in a memory system

Also Published As

Publication number Publication date
CN102884514A (zh) 2013-01-16
EP2558944A1 (en) 2013-02-20
JP2013524389A (ja) 2013-06-17
JP5584821B2 (ja) 2014-09-03
US9842068B2 (en) 2017-12-12
KR20130029395A (ko) 2013-03-22
EP2558944B1 (en) 2014-09-17
US20110258354A1 (en) 2011-10-20
CN102884514B (zh) 2016-03-16
WO2011130548A1 (en) 2011-10-20

Similar Documents

Publication Publication Date Title
KR101429990B1 (ko) 저 전력 메모리 액세스를 위한 버스 중재 방법들
EP3238083B1 (en) Mitigating traffic steering inefficiencies in distributed uncore fabric
KR101461449B1 (ko) 액세스 레이턴시를 감소시키기 위한 버스 중재 기술들
JP4837780B2 (ja) マスタおよびスレーブを有するデータ処理デバイスにおける電力管理
US7870400B2 (en) System having a memory voltage controller which varies an operating voltage of a memory and method therefor
US9703493B2 (en) Single-stage arbiter/scheduler for a memory system comprising a volatile memory and a shared cache
EP2946301A1 (en) Arbitrating memory accesses via a shared memory fabric
US10649922B2 (en) Systems and methods for scheduling different types of memory requests with varying data sizes
US8484418B2 (en) Methods and apparatuses for idle-prioritized memory ranks
US10572183B2 (en) Power efficient retraining of memory accesses
US20150169494A1 (en) Data path configuration component, signal processing device and method therefor
EP2673684B1 (en) Integrated circuit device, power management module and method for providing power management
US11379388B1 (en) Credit scheme for multi-queue memory controllers
TWI763158B (zh) 記憶體共享
JP2012084123A (ja) メモリ制御装置、メモリ制御方法
JP6036806B2 (ja) バスアクセス調停回路およびバスアクセス調停方法
US20200004700A1 (en) System and Method for Communication Link Management in a Credit-Based System
Lin et al. System-level performance and power optimization for MPSoC: A memory access-aware approach

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
FPAY Annual fee payment

Payment date: 20170629

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20180628

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20190624

Year of fee payment: 6