KR101910999B1 - 전력-인지 cpu 전력 그리드 설계 - Google Patents

전력-인지 cpu 전력 그리드 설계 Download PDF

Info

Publication number
KR101910999B1
KR101910999B1 KR1020187012231A KR20187012231A KR101910999B1 KR 101910999 B1 KR101910999 B1 KR 101910999B1 KR 1020187012231 A KR1020187012231 A KR 1020187012231A KR 20187012231 A KR20187012231 A KR 20187012231A KR 101910999 B1 KR101910999 B1 KR 101910999B1
Authority
KR
South Korea
Prior art keywords
power
subsystem
providing
domain
memory
Prior art date
Application number
KR1020187012231A
Other languages
English (en)
Other versions
KR20180051648A (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 KR20180051648A publication Critical patent/KR20180051648A/ko
Application granted granted Critical
Publication of KR101910999B1 publication Critical patent/KR101910999B1/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/26Power supply means, e.g. regulation thereof
    • G06F1/266Arrangements to supply power to external peripherals either directly from the computer or under computer control, e.g. supply of power through the communication port, computer controlled power-strips
    • 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
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0806Multiuser, multiprocessor or multiprocessing cache systems
    • G06F12/0811Multiuser, multiprocessor or multiprocessing cache systems with multilevel cache hierarchies
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C5/00Details of stores covered by group G11C11/00
    • G11C5/14Power supply arrangements, e.g. power down, chip selection or deselection, layout of wirings or power grids, or multiple supply levels
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/60Details of cache memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/62Details of cache specific to multiprocessor cache arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2213/00Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F2213/0038System on Chip

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Power Engineering (AREA)
  • Computer Hardware Design (AREA)
  • Memory System Of A Hierarchy Structure (AREA)
  • Power Sources (AREA)
  • Semiconductor Integrated Circuits (AREA)

Abstract

전력 그리드를 제공하기 위한 방법 및 장치가 제공된다. 장치는 적어도 하나의 SoC 메모리 및 적어도 하나의 캐시 메모리를 포함하는 복수의 메모리 유닛들을 포함한다. 장치는 제1 전력 도메인과 연관된 적어도 하나의 SoC 메모리에 커플링된 제1 서브시스템을 포함한다. 장치는 제2 전력 도메인과 연관된 적어도 하나의 캐시 메모리에 커플링된 제2 서브시스템을 더 포함한다. 제2 서브시스템은 CPU 서브시스템일 수 있다. 제1 전력 도메인이 공유 전력원으로부터 전력을 소싱하기 때문에, 제1 전력 도메인은 메모리 회로들의 동작이 요구하는 것보다 더 높은 전압 레벨로 동작할 수 있다. 적어도 하나의 캐시 메모리를 제1 전력 도메인으로부터 제2 전력 도메인으로 이동시킴으로써, 제1 전력 도메인의 컴포넌트들에 대한 LDO 효율 손실이 감소될 수 있다.

Description

전력-인지 CPU 전력 그리드 설계
[0001] 본 출원은, "POWER-AWARE CPU POWER GRID DESIGN"라는 명칭으로 2015년 9월 28일자로 출원된 인도 특허 출원 번호 제5180/CHE/2015호, 및 "POWER-AWARE CPU POWER GRID DESIGN"라는 명칭으로 2016년 6월 3일자로 출원된 미국 특허 출원 번호 제15/173,004호를 우선권으로 주장하며, 이 특허 출원들은 명백하게 그들 전체가 인용에 의해 본원에 포함된다.
[0002] 본 개시내용은 일반적으로, 집적 회로들의 설계에 관한 것으로, 더 구체적으로는 중앙 프로세싱 유닛(CPU; central processing unit) 서브시스템에 대한 전력 그리드 설계에 관한 것이다.
[0003] 반도체 장치들, 이를테면, 집적 회로들은, 반도체 재료들 상에 형성되고 회로 배선과 상호연결되는 전자 컴포넌트들로 구성된다. 이러한 회로 배선들의 네트워크는 컴포넌트들의 그룹을 연결하고 특정 전압 레벨의 전력을 컴포넌트들에 제공할 수 있다. 전력 그리드(전력 분배 네트워크)는 일반적으로, 전력 공급부를 각각의 컴포넌트에 연결하는 회로 배선들의 네트워크들을 나타낸다. 전력 그리드 설계는 이러한 네트워크들의 분석 및 설계를 포함한다.
[0004] 집적 회로(IC; integrated circuit)는 컴포넌트들의 1개 초과의 그룹을 가질 수 있으며, 컴포넌트들의 각각의 그룹은 상이한 전압 레벨로 동작하도록 설계된다. 예컨대, 컴포넌트들의 제1 그룹은 제1 전압 레벨로 동작하도록 설계될 수 있고, 컴포넌트들의 제2 그룹은 상이한 제2 전압 레벨로 동작하도록 설계될 수 있다. 1개 초과의 전압 레벨로 동작하는 컴포넌트들의 그룹들로 설계된 집적 회로들은 다수의 전력 도메인들을 갖는다고 알려져 있으며, 각각의 전력 도메인은 특정 전압 레벨과 연관된다. 동작에서, 특정 전력 도메인은, 그 전력 도메인의 컴포넌트들의 그룹을 연결하는 회로 배선들의 네트워크로의 전력을 제어함으로써, 선택적으로 파워 업 또는 파워 다운될 수 있다.
[0005] 메모리 회로들과 로직 회로들은 상이한 전압 요건들을 갖기 때문에, 메모리 회로들 및 로직 회로들은 일반적으로, 상이한 전력 도메인들에 상주한다. CPU 캐시 메모리는 메모리 회로의 하나의 타입이다. 따라서, CPU 캐시 메모리는 다른 타입들의 메모리 회로들과 함께 메모리 전력 도메인에 상주한다. 메모리 전력 도메인은 일반적으로, CPU 캐시 메모리보다 더 높은 전압 요건을 가질 수 있는 몇몇 다른 컴포넌트들에 의해 공유되는 전력 공급기로부터 자신의 전력을 소싱(source)한다. 그러한 다른 컴포넌트들을 지원하기 위해, 공유 전력 공급기(shared power supplier)는 CPU 캐시 메모리가 요구하는 것보다 더 높은 전압 레벨을 유지할 필요가 있다. 이는, CPU 캐시 메모리에 대한 상당한 전력 비효율성을 초래한다.
[0006] 본 개시내용의 양상에서, 전력 그리드를 제공하기 위한 방법 및 장치가 제공된다. 장치는 적어도 하나의 시스템 온 칩(SoC; system on a chip) 메모리 및 적어도 하나의 캐시 메모리를 포함하는 복수의 메모리 유닛들을 포함한다. 장치는 적어도 하나의 SoC 메모리에 커플링된 제1 서브시스템을 포함한다. 적어도 하나의 SoC 메모리는 제1 전력 도메인과 연관될 수 있다. 장치는 적어도 하나의 캐시 메모리에 커플링된 제2 서브시스템을 포함한다. 적어도 하나의 캐시 메모리는 제2 전력 도메인과 연관될 수 있다.
[0007] 본 개시내용의 다른 양상에서, 장치는 제1 전력 도메인을 적어도 하나의 SoC 메모리에 제공할 수 있다. 적어도 하나의 SoC 메모리는 제1 서브시스템에 커플링될 수 있다. 장치는 추가로, 제2 전력 도메인을 적어도 하나의 캐시 메모리에 제공할 수 있다. 적어도 하나의 캐시 메모리는 제2 서브시스템에 커플링될 수 있다.
[0008] 도 1은 집적 회로에 대한 전력 그리드 설계의 예를 예시하는 다이어그램이다.
[0009] 도 2는 집적 회로의 전력 그리드의 예를 예시하는 다이어그램이다.
[0010] 도 3은 집적 회로에 대한 전력 그리드 설계의 예를 예시하는 다이어그램이다.
[0011] 도 4는 전력 그리드를 제공하는 방법의 흐름도이다.
[0012] 도 5는 도 4의 방법을 구현하도록 구성된 집적 회로를 예시하는 다이어그램이다.
[0013] 첨부된 도면들과 관련하여 아래에 기재된 상세한 설명은 다양한 구성들의 설명으로서 의도되며, 본원에서 설명된 개념들이 실시될 수 있는 구성들만을 표현하도록 의도되지 않는다. 상세한 설명은 다양한 개념들의 완전한 이해를 제공하려는 목적을 위한 특정 세부사항들을 포함한다. 그러나, 이들 개념들은 이들 특정 세부사항들 없이 실시될 수 있음이 당업자에게 명백할 것이다. 일부 경우들에서, 잘 알려진 구조들 및 컴포넌트들은 그러한 개념들을 모호하게 하는 것을 방지하기 위해 블록 다이어그램 형태로 도시된다.
[0014] 전력 그리드 설계의 몇몇 양상들은 이제, 다양한 장치 및 방법들을 참조하여 제시될 것이다. 이러한 장치 및 방법들은 다음의 상세한 설명에서 설명될 것이며 첨부 도면들에서 (통칭하여 "엘리먼트들"로 지칭되는) 다양한 블록들, 컴포넌트들, 회로들, 단계들, 프로세스들, 알고리즘들 등으로 예시될 것이다. 이들 엘리먼트들은 전자 하드웨어, 컴퓨터 소프트웨어, 또는 이들의 임의의 조합을 사용하여 구현될 수 있다. 그러한 엘리먼트들이 하드웨어로 구현되는지 또는 소프트웨어로 구현되는지는 특정 애플리케이션 및 전체 시스템에 부과된 설계 제약들에 따른다.
[0015] 예로서, 엘리먼트, 또는 엘리먼트의 임의의 부분, 또는 엘리먼트들의 임의의 조합은, 하나 또는 그 초과의 프로세서들을 포함하는 "프로세싱 시스템"으로 구현될 수 있다. 프로세서들의 예들은 마이크로프로세서들, 마이크로제어기들, 디지털 신호 프로세서(DSP; digital signal processor)들, 필드 프로그램가능 게이트 어레이(FPGA; field programmable gate array)들, 프로그램가능 로직 디바이스(PLD; programmable logic device)들, 상태 머신들, 게이트 로직(gated logic), 이산 하드웨어 회로들, 및 본 개시내용 전반에 걸쳐 설명된 다양한 기능을 수행하도록 구성된 다른 적절한 하드웨어를 포함한다. 프로세싱 시스템의 하나 또는 그 초과의 프로세서들은 소프트웨어를 실행할 수 있다. 소프트웨어는, 소프트웨어로 지칭되든, 펌웨어로 지칭되든, 미들웨어로 지칭되든, 마이크로코드로 지칭되든, 하드웨어 디스크립션 언어로 지칭되든, 또는 다르게 지칭되든, 명령들, 명령 세트들, 코드, 코드 세그먼트들, 프로그램 코드, 프로그램들, 서브프로그램들, 소프트웨어 컴포넌트들, 애플리케이션들, 소프트웨어 애플리케이션들, 소프트웨어 패키지들, 루틴들, 서브루틴들, 오브젝트들, 실행가능한 것들, 실행 스레드들, 프로시저들, 함수들 등을 의미하는 것으로 광범위하게 해석될 것이다.
[0016] 따라서, 하나 또는 그 초과의 예시적인 실시예들에서, 설명된 기능들은 하드웨어, 소프트웨어, 펌웨어, 또는 이들의 임의의 조합으로 구현될 수 있다. 소프트웨어로 구현되는 경우, 기능들은 컴퓨터-판독가능 매체 상에 하나 또는 그 초과의 명령들 또는 코드로서 저장되거나 이들로서 인코딩될 수 있다. 컴퓨터-판독가능 매체들은 컴퓨터 저장 매체들을 포함한다. 저장 매체들은 컴퓨터에 의해 액세스될 수 있는 임의의 이용가능한 매체들일 수 있다. 제한이 아닌 예로서, 이러한 컴퓨터-판독가능 매체들은, 랜덤-액세스 메모리(RAM: random-access memory), 판독-전용 메모리(ROM: read-only memory), 전기적 소거가능 프로그램가능 ROM(EEPROM: electrically erasable programmable ROM), 콤팩트 디스크 ROM(CD-ROM: compact disc ROM) 또는 다른 광학 디스크 저장소, 자기 디스크 저장소 또는 다른 자기 저장 디바이스들, 위에서 언급된 타입들의 컴퓨터-판독가능 매체들의 조합들, 또는 컴퓨터에 의해 액세스될 수 있는 명령들 또는 데이터 구조들의 형태로 컴퓨터 실행가능 코드를 저장하는 데 사용될 수 있는 임의의 다른 매체를 포함할 수 있다.
[0017] 서브시스템은 더 큰 시스템의 부분인 유닛 또는 디바이스이다. 본 개시내용의 서브시스템은 하나 또는 그 초과의 하드웨어 컴포넌트들을 나타낸다. CPU는, 컴퓨터 프로그램의 명령들에 의해 특정된 기본 산술, 논리, 제어 및 입력/출력(I/O) 동작들을 수행함으로써 컴퓨터 프로그램의 명령들을 수행하는 컴퓨터 내의 전자 회로이다. 대부분의 최신 CPU들은 단일 IC 칩 상에 포함된다. CPU를 포함하는 IC는 또한, 메모리, 주변기기 인터페이스들, 및 컴퓨터의 다른 컴포넌트들을 포함할 수 있으며; 이러한 통합된 디바이스들은, 마이크로제어기들 또는 시스템 온 칩(SoC; System on a Chip)으로 다양하게 지칭된다. 일부 컴퓨터들은 멀티-코어 프로세서를 이용하며, 멀티-코어 프로세서는 "코어들"로 지칭되는 2개 또는 그 초과의 CPU들을 포함하는 단일 칩이다.
[0018] CPU 서브시스템은 CPU 기능들을 수행하는 전자 컴포넌트들의 그룹이다. CPU 서브시스템은 다수의 코어들 및 캐시 메모리 회로들을 포함할 수 있다. 도 1은 집적 회로(150)에 대한 전력 그리드 설계의 예를 예시하는 다이어그램(100)이다. 일 구성에서, IC(150)는 SoC일 수 있다. IC(150)는 CPU 서브시스템(102)을 포함한다. CPU 서브시스템(102)에 추가하여, IC(150)는 GPU 서브시스템, I/O 서브시스템 등과 같은 추가의 서브시스템들(도시되지 않음)을 포함할 수 있다.
[0019] 도시된 바와 같이, CPU 서브시스템(102)은 2개의 쿼드-코어 클러스터들(110, 130) 및 캐시 코히어런트 인터커넥트(CCI; Cache Coherent Interconnect)(104)를 포함한다. 쿼드-코어 클러스터(110)는 4개의 코어 로직 회로들(112, 114, 116, 118) 및 레벨2(L2; level-two) 캐시 메모리(120)를 포함한다. 쿼드-코어 클러스터(130)는 4개의 코어 로직 회로들(132, 134, 136, 138) 및 L2 캐시 메모리(140)를 포함한다. 코어 로직 회로들(112, 114, 116, 118, 132, 134, 136, 및 138) 각각은 레벨1(L1; level-one) 캐시 메모리(122, 124, 126, 128, 142, 144, 146, 및 148)에 각각 커플링된다.
[0020] CPU 캐시 메모리는 CPU 코어 상의 또는 CPU 코어 가까이의 작은 메모리이다. CPU 캐시 메모리는 훨씬 더 큰 메인 메모리보다 더 빠르게 동작할 수 있다. 다수의 레벨들의 캐시 메모리들이 존재할 수 있다. L1 캐시 메모리는 가장 빠른 캐시 메모리이며 코어 로직 회로 가까이에 커플링된다. L2 캐시 메모리는 다음으로 가장 빠른 캐시 메모리이며, 그 하위 레벨 L1 캐시 메모리에 대한 체크가 누락된 경우에만 체크된다. 예컨대, L2 캐시(120)는, L1 캐시 메모리(122, 124, 126 또는 128)에 대한 체크가 누락된 경우에만 체크된다. 유사하게, L2 캐시(140)는, L1 캐시 메모리(142, 144, 146 또는 148)에 대한 체크가 누락된 경우에만 체크된다.
[0021] 코어 로직 회로들(112, 114, 116, 118, 132, 134, 136, 및 138) 각각은, 그것의 각각의 코어에 대한 동작들을 수행하고, 데이터 액세스를 위해 그것의 각각의 L1 및 L2 캐시들을 체크한다. 예컨대, 코어 로직 회로(112)는 먼저 특정 데이터에 대해 L1 캐시(122)를 체크할 수 있다. L1 캐시(122)에 대한 체크가 누락되면, 코어 로직 회로(112)는 그 특정 데이터에 대해 L2 캐시(120)를 체크할 수 있다.
[0022] 하나의 데이터는 상이한 캐시 메모리들에 다수의 카피들을 가질 수 있다. CCI(104)는 쿼드-코어 클러스터들(110 및 130)의 캐시 메모리들 사이의 충돌들을 관리하고 일관성을 유지한다. CCI(104)는 쿼드-코어 클러스터(110)의 캐시 메모리들에 저장된 데이터와 쿼드-코어 클러스터(130)의 캐시 메모리들에 저장된 데이터를 동기화할 수 있다.
[0023] 일 구성에서, CPU 서브시스템(102)은 컴포넌트들을 3개의 전력 도메인들, 즉, 칩 로직 도메인(예컨대, 도 2를 참조하여 아래에서 설명되는 칩 로직 도메인(208)), 메모리 도메인(예컨대, 도 2를 참조하여 아래에서 설명되는 메모리 도메인(212)), 및 코어 로직 도메인(예컨대, 도 2를 참조하여 아래에서 설명되는 코어 로직 도메인(210))에 배치할 수 있다. 이들 3개의 전력 도메인들은 상이한 배경 패턴들로 도 1에 예시된다. 예컨대, 코어 로직 회로들(112, 114, 116, 118, 132, 134, 136 및 138), L1 캐시 메모리들(122, 124, 126, 128, 142, 144, 146 및 148), 및 CCI(104)는 코어 로직 도메인으로 그룹화된다. L2 캐시 메모리들(120 및 140)은 메모리 도메인으로 그룹화된다. CPU 서브시스템(102)의 다른 컴포넌트들(예컨대, CPU 래퍼(wrapper)(106))은 칩 로직 도메인으로 그룹화된다. 일 구성에서, IC(150) 상의 추가의 서브시스템과 연관된 SoC 메모리는 메모리 도메인에 배치될 수 있다. 이러한 구성에서, 추가의 서브시스템의 로직 회로들은 칩 로직 도메인에 배치될 수 있다.
[0024] 동일한 전력 도메인의 전자 컴포넌트들은 일반적으로 동일한 전압 레벨로 동작하며, 동일한 전력 도메인의 전자 컴포넌트들에는 동일한 전압 레벨의 전력이 제공된다. 일 구성에서, 메모리 회로들(예컨대, L1 및 L2 캐시 메모리들) 및 로직 회로들(예컨대, 코어 로직 회로들)은 상이한 전압 레벨들로 동작한다. 따라서, 메모리 회로들 및 로직 회로들은 상이한 전력 도메인들에 상주할 수 있다. 예컨대, L2 캐시 메모리들은 메모리 도메인에 상주하고, 코어 로직 회로들은 코어 로직 도메인에 상주한다.
[0025] 일 구성에서, 메모리 도메인에 상주하는 대신에, L1 캐시 메모리들은 코어 로직 도메인에 상주한다. 이러한 구성에서, L1 캐시 메모리들(예컨대, 122, 124, 126, 128, 142, 144, 146 및 148) 및 코어 로직 회로들(예컨대, 112, 114, 116, 118, 132, 134, 136 및 138)은 CPU 타이밍 요건을 충족시키기 위해, 동일한 전력 도메인(즉, 코어 로직 도메인)에 배치된다.
[0026] 도 2는 집적 회로(250)의 전력 그리드(200)의 예를 예시하는 다이어그램이다. 일 구성에서, 이 IC(250)는 SoC일 수 있고, 이 예는 SoC 전력 그리드의 서브세트를 도시할 수 있다. 이 예에서 도시된 바와 같이, 전력 그리드(200)는, 3개의 전력원들, 즉, 전력을 3개의 전력 도메인들(칩 로직 도메인(208), 코어 로직 도메인(210), 및 메모리 도메인(212))의 컴포넌트들에 제공하는 스위치-모드 전력 공급부(SMPS; switched-mode power supply)들(202, 204, 및 206), 저전력 더블 데이터 레이트 동기식 DRAM(LPDDR; low-power double data rate synchronous DRAM)(214), 및 무선 로컬 영역 네트워크(WLAN; wireless local area network) 라디오 주파수(RF; radio frequency) 컴포넌트(216)를 포함한다. SMPS(202, 204 및 206)는 호스트 시스템의 전력 요건들을 관리하기 위한 전력 관리 집적 회로(PMIC; power management integrated circuit)들의 부분일 수 있다.
[0027] 칩 로직 도메인(208)은, 코어 로직 회로들, 캐시 메모리, 또는 CCI가 아닌, CPU 서브시스템(102)의 컴포넌트들을 포함할 수 있다. 칩 로직 도메인(208)은 CPU 서브시스템(102) 외부의 로직 회로들, 예컨대, I/O 서브시스템, 그래픽스 프로세싱 유닛(GPU; graphics processing unit) 서브시스템 등과 같은 다른 서브시스템의 로직 회로들을 포함할 수 있다. 일 구성에서, 칩 로직 도메인(208)의 컴포넌트들은 0.95V 내지 1.25V 범위의 전압 레벨들로 동작한다. 전용 전력원(dedicated power source), 즉, SMPS(202)는 칩 로직 도메인(208)의 컴포넌트들에 전력을 공급한다. 일 구성에서, SMPS(202)는 0.95V 내지 1.25V 범위의 전압 레벨로 칩 로직 도메인(208)의 컴포넌트들에 전력을 제공할 수 있다.
[0028] 코어 로직 도메인(210)은 CPU 서브시스템(102)의 코어 로직 회로들(예컨대, 112, 114, 116, 118, 132, 134, 136 및 138), L1 캐시 메모리들(예컨대, 122, 124, 126, 128, 142, 144, 146 및 148) 및 CCI(예컨대, 104)를 포함할 수 있다. 일 구성에서, 코어 로직 도메인(210)의 컴포넌트들은 1.05V 내지 1.25V 범위의 전압 레벨들로 동작한다. 코어 로직 회로들은 0.95V만큼 낮은 전압 레벨로 동작할 수 있다. L1 캐시 메모리들이 코어 로직 도메인(210)에 상주하고, L1 캐시 메모리들이 동작하는 데 1.05V의 최소 전압을 요구할 수 있기 때문에, 코어 로직 도메인의 최소 전압은 1.05V로 설정될 수 있다. 전용 전력원, 즉, SMPS(204)는 코어 로직 도메인(210)의 컴포넌트들에 전력을 공급한다. 일 구성에서, SMPS(204)는 1.05V 내지 1.25V 범위의 전압 레벨로 코어 로직 도메인(210)의 컴포넌트들에 전력을 제공할 수 있다.
[0029] 칩 로직 도메인(208) 및 코어 로직 도메인(210)을 위한 전용 전력원을 갖는 것은, 성능 요건들에 기반한 무결절성 전압 스케일링(seamless voltage scaling)을 가능하게 한다. 전력을 절약하기 위해 전압을 감소시키기 위한 동적 전압 스케일링일이 수행될 수 있으며; 시스템 성능을 증가시키거나 신뢰성을 증가시키기 위해 전압을 증가시키기 위한 동적 스케일링이 수행될 수 있다. 예컨대, 코어 로직 도메인(210)을 위한 전용 전력원(즉, SMPS(204))을 갖는 것은, CPU 성능 요건들에 기반하여 코어 로직 도메인(210)의 컴포넌트들에 대한 동적 전압 스케일링을 가능하게 한다. 코어 로직 도메인(210)의 모든 컴포넌트들에 공급되는 전압은 전력을 절약하기 위해, 예컨대 1.05V로 감소될 수 있거나; 또는 CPU 서브시스템(102)의 성능을 증가시키기 위해, 예컨대 1.25V로 증가될 수 있다.
[0030] 메모리 도메인(212)은 L2 캐시 메모리들(예컨대, 120 및 140) 및 다른 SoC 메모리들을 포함할 수 있다. 일 구성에서, 다른 SoC 메모리들은 CPU 서브시스템 외부의 온-칩 정적 랜덤-액세스 메모리(SRAM; static random-access memory)일 수 있다. 일 구성에서, 다른 SoC 메모리들은, 모뎀 DSP L2 캐시, 오디오 DSP L2 캐시, 그래픽스 내부 (SoC) RAM, 디스플레이 내부 (SoC) RAM, 카메라 내부 (SoC) RAM, 비디오 내부 (SoC) RAM, 주변기기들(예컨대, USB, 크립토(Crypto), eMMC) 내부 (SoC) RAM, 공유 메모리 등 중 하나 또는 그 초과일 수 있다. 일 구성에서, 그러한 다른 SoC 메모리들은 (예컨대, I/O 서브시스템, GPU 서브시스템 등과 같은 다른 서브시스템에 커플링된) CPU 서브시스템(102) 외부의 컴포넌트들에 커플링될 수 있다. 일 구성에서, 메모리 도메인(212)의 컴포넌트들은 1.05V 내지 1.25V 범위의 전압 레벨들로 동작한다. 메모리들은 동작하는 데 1.05V의 최소 전압을 요구할 수 있기 때문에, 코어 로직 도메인의 최소 전압은 1.05V로 설정될 수 있다.
[0031] 공유 전력원, 즉, SMPS(206)는 메모리 도메인(212)의 컴포넌트들에 전력을 공급한다. 일 구성에서, 메모리 도메인(212)의 컴포넌트들은 SMPS(206)로부터 소싱되는 로우-드롭아웃(LDO; low-dropout) 레귤레이터(220)를 통해 서브-레귤레이팅될(sub-regulated) 수 있다. IC(250)의 많은 다른 컴포넌트들은 SMPS(206)로부터 소싱되는 다른 LDO 레귤레이터들을 통해 서브-레귤레이팅될 수 있다. 예컨대, LPDDR(214)은 SMPS(206)로부터 소싱되는 LDO 레귤레이터(222)를 통해 서브-레귤레이팅될 수 있고, WLAN RF 컴포넌트(216)는 SMPS(206)로부터 소싱되는 LDO 레귤레이터(224)를 통해 서브-레귤레이팅될 수 있다.
[0032] LDO 레귤레이터들(220, 222, 및 224) 각각은, 자신이 전력을 공급하는 컴포넌트들의 적절한 동작을 보장하기 위해, 전압 요건을 갖는다. 예컨대, 메모리 도메인(212)의 메모리들은 동작하는 데 1.05V의 최소 전압을 요구할 수 있기 때문에, LDO 레귤레이터(220)의 전압 요건은 1.05V일 수 있다. 유사하게, LPDDR(214)은 동작하는 데 1.2V의 전압을 요구할 수 있기 때문에, LDO 레귤레이터(222)의 전압 요건은 1.2V일 수 있다. WLAN RF 컴포넌트(216)는 동작하는 데 1.35V의 전압을 요구할 수 있기 때문에, LDO 레귤레이터(224)의 전압 요건은 1.35V일 수 있다.
[0033] SMPS(206)는, LDO 레귤레이터들(220, 222 및 224)이 전력을 제공하는 모든 컴포넌트들이 적절히 동작할 수 있도록 보장하기 위해, LDO 레귤레이터들(220, 222, 및 224) 사이에서 요구되는 최고 전압으로 자신의 전압을 설정할 수 있다. 일 구성에서, LDO 레귤레이터들(220, 222, 및 224)은 신뢰성있는 전압 레귤레이션을 위해 적어도 62.5 mV의 헤드룸(headroom)을 필요로 할 수 있다. LPDDR(214)은 항상 온(on)이기 때문에, SMPS(206)의 전압 출력은 1.27V와 동일하거나 또는 그 초과일 수 있는데, 이는 LDO 레귤레이터(222)의 전압 요건(1.2V)과 62.5mV 헤드룸의 합이다. 일 구성에서, SMPS(206)는 1.27V 내지 1.42V 범위의 전압 레벨로 전력을 제공할 수 있다. 메모리 도메인(212)의 메모리들이 1.05V만큼 낮은 전압에서 동작할 수 있기 때문에, 메모리 도메인(212)의 메모리들(예컨대, L2 캐시 메모리들(120 및 140))에 대해 상당한 LDO 효율 손실이 존재할 수 있다.
[0034] 도 3은 집적 회로(360)에 대한 전력 그리드 설계의 예를 예시하는 다이어그램(300)이다. IC(360)는 CPU 서브시스템(302) 및 추가의 서브시스템(350)을 포함한다. 일 구성에서, IC(360)는 SoC일 수 있다. 서브시스템(350)은 GPU 서브시스템, I/O 서브시스템, 또는 CPU 서브시스템(302) 이외의 임의의 서브시스템일 수 있다. 도시된 바와 같이, CPU 서브시스템(302)은 2개의 쿼드-코어 클러스터들(310, 330) 및 CCI(304)를 포함한다. 쿼드-코어 클러스터(310)는 4개의 코어 로직 회로들(312, 314, 316, 318) 및 L2 캐시 메모리(320)를 포함한다. 쿼드-코어 클러스터(330)는 4개의 코어 로직 회로들(332, 334, 336, 338) 및 L2 캐시 메모리(340)를 포함한다. 코어 로직 회로들(312, 314, 316, 318, 332, 334, 336 및 338) 각각은 L1 캐시 메모리(322, 324, 326, 328, 342, 344, 346 및 348)에 각각 커플링된다.
[0035] 서브시스템(350)은 SoC 메모리(352)를 포함한다. 일 구성에서, SoC 메모리(352)는 CPU 서브시스템(302) 외부의 온-칩 SRAM일 수 있다. 일 구성에서, SoC 메모리(352)는, 모뎀 DSP L2 캐시, 오디오 DSP L2 캐시, 그래픽스 내부 (SoC) RAM, 디스플레이 내부 (SoC) RAM, 카메라 내부 (SoC) RAM, 비디오 내부 (SoC) RAM, 주변기기들(예컨대, USB, 크립토, eMMC) 내부 (SoC) RAM, 공유 메모리 등 중 하나 또는 그 초과일 수 있다. 일 구성에서, SoC 메모리(352)는 서브시스템(350)의 부분일 수 있다. 다른 구성에서, SoC 메모리(352)는 서브시스템(350)의 외부에 있을 수 있지만, 서브시스템(350)의 컴포넌트들(예컨대, 로직 회로들(354))에 커플링되거나 연관될 수 있다.
[0036] 코어 로직 회로들(312, 314, 316, 318, 332, 334, 336, 및 338) 각각은, 그것의 각각의 코어에 대한 동작들을 수행하고, 데이터 액세스를 위해 그것의 각각의 L1 및 L2 캐시들을 체크한다. 예컨대, 코어 로직 회로(312)는 먼저 특정 데이터에 대해 L1 캐시(322)를 체크할 수 있다. L1 캐시(322)에 대한 체크가 누락되면, 코어 로직 회로(312)는 그 특정 데이터에 대해 L2 캐시(320)를 체크할 수 있다.
[0037] 하나의 데이터는 상이한 캐시 메모리들에 다수의 카피들을 가질 수 있다. CCI(304)는 쿼드-코어 클러스터들(310 및 330)의 캐시 메모리들 사이의 충돌들을 관리하고 일관성을 유지한다. CCI(304)는 쿼드-코어 클러스터(310)의 캐시 메모리들에 저장된 데이터와 쿼드-코어 클러스터(330)의 캐시 메모리들에 저장된 데이터를 동기화할 수 있다.
[0038] 일 구성에서, CPU 서브시스템(302) 및 서브시스템(350)은 컴포넌트들을 3개의 전력 도메인들, 즉, 칩 로직 도메인(예컨대, 도 2를 참조하여 위에서 설명된 칩 로직 도메인(208)), 메모리 도메인(예컨대, 도 2를 참조하여 위에서 설명된 메모리 도메인(212)), 및 코어 로직 도메인(예컨대, 도 2를 참조하여 위에서 설명된 코어 로직 도메인(210))에 배치할 수 있다. 이들 3개의 전력 도메인들은 상이한 배경 패턴들로 도 3에 예시된다. 예컨대, 코어 로직 회로들(312, 314, 316, 318, 332, 334, 336 및 338), L1 캐시 메모리들(322, 324, 326, 328, 342, 344, 346, 및 348), L2 캐시 메모리들(320 및 340), 및 CCI(304)는 코어 로직 도메인으로 그룹화된다. SoC 메모리(352)는 메모리 도메인에 배치된다. CPU 서브시스템(302) 및 서브시스템(350)의 다른 컴포넌트들(예컨대, CPU 서브시스템(302)의 CPU 래퍼(306), 서브시스템(350)의 로직 회로들(354))은 칩 로직 도메인으로 그룹화된다.
[0039] 도 1에서 전술한 전력 그리드 설계와 비교하여, L2 캐시 메모리들(320 및 340)은 메모리 도메인으로부터 코어 로직 도메인으로 이주된다(migrated). 이는, L1 캐시 메모리들(예컨대, 322, 324, 326, 328, 342, 344, 346 및 348)이 이미 코어 로직 도메인에 있고 L2 캐시 메모리가 L1 캐시 메모리와 유사한 전압 요건들을 가지므로, 코어 로직 도메인에 어떤 추가의 전압 제약들도 부과하지 않는다.
[0040] L2 캐시 메모리를 메모리 도메인으로부터 코어 로직 도메인으로 이동시키는 것은, 모든 CPU 로직 및 메모리에 대해 단일 전압/전력 도메인을 가능하게 하고, 더 양호한 전력 분배 네트워크를 제공한다. L2 캐시 메모리를 메모리 도메인으로부터 코어 로직 도메인으로 이동시키는 것은 또한, 코어 로직 도메인이 IC(360)의 나머지와 독립적인 "트루 전압 아일랜드(true voltage island)"가 되는 것을 가능하게 한다. 따라서, L2 캐시 메모리를 메모리 도메인으로부터 코어 로직 도메인으로 이동시키는 것은, 코어 로직 도메인에 대한 더 양호한 전압 격리를 가능하게 할 수 있다.
[0041] 일 구성에서, L2 캐시 메모리들(320 및 340)이 메모리 도메인으로부터 코어 로직 도메인으로 이동되기 때문에, L2 캐시 메모리들(320 및 340)은 SMPS(206) 대신 SMPS(204)로부터 전력을 소싱한다. 도 2를 참조하여 위에서 설명된 바와 같이, SMPS(204)는 1.05V 내지 1.25V 범위의 전압 레벨로 전력을 제공하고, SMPS(206)는 1.27V 내지 1.42V 범위의 전압 레벨로 전력을 제공한다. 따라서, SMPS(204)는 SMPS(206)가 제공하는 것보다 더 낮은 전압으로 전력을 제공한다. 따라서, SMPS(206) 대신 SMPS(204)로부터 전력을 소싱함으로써, L2 캐시 메모리들(320 및 340)은, SMPS(206)에 비해 SMPS(204)의 더 낮은 전압으로 인해, 배터리에서의 전력 소비를 감소시킨다. L2 캐시 메모리들(320 및 340)을 메모리 도메인으로부터 코어 로직 도메인으로 스위칭함으로써, 캐시 메모리들(320 및 340)에 대한 LDO 효율 손실이 더 적을 수 있다.
[0042] L2 캐시 메모리를 메모리 도메인으로부터 코어 로직 도메인으로 이동시키는 것은, 코어 로직 도메인 동작 모드들과 메모리 도메인 전압 사이의 종속성을 제거한다. 메모리 회로들(예컨대, 메모리 도메인의 컴포넌트들)에 제공된 전원 전압은 로직 회로들(예컨대, 코어 로직 도메인 및 칩 로직 도메인의 컴포넌트들)에 제공되는 전원 전압보다 더 크거나 또는 동일할 수 있다. 코어 로직 도메인 또는 칩 로직 도메인의 전압이 더 높게 풀링되면(pulled higher), 메모리 도메인의 전압이 또한 높게 풀링된다. 이는, L2 캐시 메모리가 메모리 도메인에 배치되는 경우, L2 캐시 메모리에 대한 더 큰 LDO 효율 손실을 야기한다. L2 캐시 메모리를 메모리 도메인으로부터 코어 로직 도메인으로 이동시킴으로써, 칩 로직 도메인의 전압을 더 높게 풀링하는 것(pulling higher)은 L2 캐시 메모리에 대한 더 큰 LDO 효율 손실을 야기하지 않을 수 있으며, 따라서, 배터리의 전력을 절약할 수 있다.
[0043] L2 캐시 메모리를 메모리 도메인으로부터 코어 로직 도메인으로 이동시키는 것은, 더 낮은 피크 전류 요건으로 인해 메모리 도메인 LDO(예컨대, LDO 레귤레이터(220)) 헤드룸을 개선할 수 있다. 더 낮은 LDO 헤드룸 요건은 또한, 전력 절약들을 유발한다.
[0044] CPU 서브시스템(302)이 저전력 모드에 진입할 때, 모든 코어들이 턴 오프될 수 있다. SMPS(204)는 L1 및 L2 캐시 메모리들에 전력을 제공하기 위해 온(on)을 유지할 수 있다. SMPS(204)의 출력 전압은, 단지 콘텐츠를 캐시 메모리들에 유지(retain)하기에만 충분한 정도의 유지 전압(retention voltage)으로 감소될 수 있다. 이와 대조적으로, L2 캐시가 메모리 도메인에 상주하는 경우, SMPS(206)의 출력 전압은 다른 종속성들(예컨대, LPDDR(214))로 인해 감소될 수 없다. 따라서, L2 캐시 메모리를 메모리 도메인으로부터 코어 로직 도메인으로 이동시키는 것은 전력 절약을 유도한다.
[0045] L2 캐시 메모리가 코어 로직 도메인으로 이동되기 때문에, 코어 로직 도메인과 L2 캐시 메모리 사이의 레벨 시프터들이 제거될 수 있다. 레벨 시프터들을 제거하면 다이 면적이 더 작아질 수 있다. 레벨 시프터들이 지연을 추가하고, 최대 주파수를 획득하는 것을 더 어렵게 만들기 때문에, 레벨 시프터들을 제거하는 것은 또한, 최대 주파수를 획득하기 위한 타이밍 제약들을 개선할 수 있다. 일 구성에서, L2 캐시 메모리를 메모리 도메인으로부터 코어 로직 도메인으로 이동시키는 것은, L2 캐시 메모리의 전력 소비를 20% 감소시킬 수 있다.
[0046] 도 4는 전력 그리드를 제공하는 방법의 흐름도(400)이다. 방법은 IC(예컨대, IC(150, 250 또는 360))에 의해 수행될 수 있다. 일 구성에서, 이 방법을 수행하는 IC는 SoC일 수 있다. 402에서, SoC는 제1 전력 도메인을 적어도 하나의 SoC 메모리에 제공한다. 적어도 하나의 SoC 메모리는 SoC의 제1 서브시스템에 커플링된다. 일 구성에서, 제1 전력 도메인은 메모리 도메인(예컨대, 메모리 도메인(212 또는 510))일 수 있다. 일 구성에서, 제1 서브시스템은 도 3의 서브시스템(350) 또는 도 5의 서브시스템(550)일 수 있다. 적어도 하나의 SoC 메모리는 도 3의 SoC 메모리(352) 또는 도 5의 SoC 메모리(552)일 수 있다. 다른 구성에서, 제1 서브시스템은 추가의 서브시스템일 수 있고, 적어도 하나의 SoC 메모리는 도 1을 참조하여 위에서 설명된 추가의 서브시스템과 연관된 메모리일 수 있다.
[0047] 일 구성에서, 제1 전력 도메인은 공유 전력원(예컨대, SMPS(206 또는 508))으로부터 전력을 소싱한다. 이러한 구성에서, 공유 전력원은 추가로, LPDDR(예컨대, LPDDR(214)) 또는 WLAN RF 컴포넌트(예컨대, WLAN RF 컴포넌트(216)) 중 적어도 하나에 전력을 공급하도록 구성될 수 있다.
[0048] 404에서, SoC는 제2 전력 도메인을, 제2 서브시스템에 커플링된 적어도 하나의 캐시 메모리 및 제2 서브시스템의 로직 회로들에 제공한다. 일 구성에서, 제2 전력 도메인은 코어 로직 도메인(예컨대, 코어 로직 도메인(210 또는 506))일 수 있다. 일 구성에서, 제2 서브시스템은 도 3의 CPU 서브시스템(302) 또는 도 5의 CPU 서브시스템(530)일 수 있다. 이러한 구성에서, 제2 서브시스템에 커플링된 적어도 하나의 캐시 메모리는 도 3 또는 도 5를 참조하여 설명된 L2 캐시 메모리들 및/또는 L1 캐시 메모리들일 수 있고, 제2 서브시스템의 로직 회로들은 도 3 또는 도 5를 참조하여 설명된 코어 로직 회로들일 수 있다. 다른 구성에서, 제2 서브시스템은 CPU 서브시스템(102)일 수 있다. 이러한 구성에서, 제2 서브시스템에 커플링된 적어도 하나의 캐시 메모리는 도 1을 참조하여 위에서 설명된 L1 캐시 메모리들일 수 있고, 제2 서브시스템의 로직 회로들은 도 1을 참조하여 위에서 설명된 코어 로직 회로들(예컨대, 112, 114, 116, 118, 132, 134, 136, 및 138)일 수 있다.
[0049] 일 구성에서, 제2 전력 도메인은 전용 전력원(예컨대, SMPS(204 또는 506))으로부터 전력을 소싱한다. 일 구성에서, 제2 서브시스템이 저전력 모드에 진입할 때, 제2 전력 도메인은 적어도 하나의 캐시 메모리에 데이터를 유지하는 데 필요한 최소 전압을 유지할 수 있다.
[0050] 406에서, SoC는 제3 전력 도메인을 제1 서브시스템의 로직 회로들에 제공한다. 일 구성에서, 제3 전력 도메인은 칩 로직 도메인(예컨대, 칩 로직 도메인(208 또는 520))일 수 있다. 일 구성에서, 제1 서브시스템의 로직 회로들은 도 3을 참조하여 위에서 설명된 서브시스템(350)의 로직 회로들(354), 또는 도 5를 참조하여 아래에서 설명되는 서브시스템(550)의 로직 회로들(554)일 수 있다. 다른 구성에서, 제1 서브시스템의 로직 회로들은 도 1을 참조하여 위에서 설명된 추가의 서브시스템의 로직 회로들일 수 있다. 일 구성에서, 제3 전력 도메인은 전용 전력원(예컨대, SMPS(202 또는 504))으로부터 전력을 소싱한다.
[0051] 도 5는 도 4의 방법을 구현하도록 구성된 집적 회로(502)를 예시하는 다이어그램(500)이다. 일 구성에서, IC(502)의 각각의 컴포넌트는 도 2를 참조하여 위에서 설명된 IC(250), 도 3을 참조하여 위에서 설명된 IC(360), 및 도 1을 참조하여 위에서 설명된 IC(150)의 대응하는 컴포넌트와 유사한 기능을 수행한다. 일 구성에서, IC(502)는 SoC이다.
[0052] 도시된 바와 같이, IC(502)는 CPU 서브시스템(530) 및 추가의 서브시스템(550)을 포함할 수 있다. 서브시스템(550)은 GPU 서브시스템, I/O 서브시스템, 또는 CPU 서브시스템(530) 이외의 임의의 서브시스템일 수 있다. CPU 서브시스템(530)은 몇몇 코어 로직 회로들(예컨대, 코어 로직 회로(536)), 몇몇 L1 캐시 메모리들(예컨대, L1 캐시 메모리(538)), L2 캐시 메모리들(540 및 542), 및 CCI(534)를 포함한다. 서브시스템(550)은 SoC 메모리(552)를 포함한다. 일 구성에서, SoC 메모리(552)는 CPU 서브시스템(530) 외부의 온-칩 SRAM일 수 있다. 일 구성에서, SoC 메모리(552)는, 모뎀 DSP L2 캐시, 오디오 DSP L2 캐시, 그래픽스 내부 (SoC) RAM, 디스플레이 내부 (SoC) RAM, 카메라 내부 (SoC) RAM, 비디오 내부 (SoC) RAM, 주변기기들(예컨대, USB, 크립토, eMMC) 내부 (SoC) RAM, 공유 메모리 등 중 하나 또는 그 초과일 수 있다. 일 구성에서, SoC 메모리(552)는 서브시스템(550)의 부분일 수 있다. 다른 구성에서, SoC 메모리(552)는 서브시스템(550)의 외부에 있을 수 있지만, 서브시스템(550)의 컴포넌트들(예컨대, 로직 회로들(554))에 커플링되거나 연관될 수 있다.
[0053] IC(502)는 3개의 전력 도메인들(칩 로직 도메인(520), 코어 로직 도메인(522), 및 메모리 도메인(524))의 컴포넌트들에 전력을 제공하는 SMPS(504, 506, 및 508)를 포함한다. 3개의 LDO 레귤레이터들(510, 512 및 514)은 SMPS(508)로부터 전력을 소싱한다. 일 구성에서, 메모리 도메인(524)의 컴포넌트들은 SMPS(508)로부터 소싱되는 LDO 레귤레이터(510)를 통해 서브-레귤레이팅될 수 있다. IC(502)의 많은 다른 컴포넌트들은 SMPS(508)로부터 소싱되는 LDO 레귤레이터들(512 및 514)을 통해 서브-레귤레이팅될 수 있다.
[0054] 일 구성에서, CPU 서브시스템(530) 및 서브시스템(550)은 컴포넌트들을 3개의 전력 도메인들, 즉, 칩 로직 도메인(520), 메모리 도메인(524), 및 코어 로직 도메인(522)에 배치할 수 있다. 예컨대, 코어 로직 회로들(예컨대, 536), L1 캐시 메모리들(예컨대, 538), L2 캐시 메모리들(540 및 542), 및 CCI(534)는 코어 로직 도메인(522)으로 그룹화된다. SoC 메모리(552)는 메모리 도메인(524)에 배치된다. CPU 서브시스템(530) 및 서브시스템(550)의 다른 컴포넌트들(예컨대, CPU 서브시스템(530)의 CPU 래퍼(532), 서브시스템(550)의 로직 회로들(554))은 칩 로직 도메인(520)으로 그룹화된다.
[0055] IC(502)는 제1 전력 도메인을 적어도 하나의 SoC 메모리에 제공하기 위한 수단을 포함할 수 있다. 적어도 하나의 SoC 메모리는 SoC의 제1 서브시스템에 커플링된다. 일 구성에서, 제1 전력 도메인은 메모리 도메인(524)일 수 있다. 일 구성에서, 제1 서브시스템은 서브시스템(550)일 수 있고, 적어도 하나의 SoC 메모리는 SoC 메모리(552)일 수 있다. 일 구성에서, 제 1 전력 도메인을 적어도 하나의 SoC 메모리에 제공하기 위한 수단은, SMPS(508), LDO 레귤레이터(510), 및 SMPS(508), LDO 레귤레이터(510) 및 적어도 하나의 SoC 메모리를 연결하는 회로 배선들일 수 있다. 일 구성에서, 제1 전력 도메인을 제공하기 위한 수단은 도 4의 402와 관련하여 위에서 설명된 동작들을 수행한다.
[0056] IC(502)는 제2 전력 도메인을, 제2 서브시스템에 커플링된 적어도 하나의 캐시 메모리 및 제2 서브시스템의 로직 회로들에 제공하기 위한 수단을 포함할 수 있다. 일 구성에서, 제2 전력 도메인은 코어 로직 도메인(522)일 수 있다. 일 구성에서, 제2 서브시스템은 CPU 서브시스템(530)일 수 있다. 이러한 구성에서, 제2 서브시스템에 커플링된 적어도 하나의 캐시 메모리는 L2 캐시 메모리들(예컨대, 540 및/또는 542) 및/또는 L1 캐시 메모리들(예컨대, 538)일 수 있고, 제2 서브시스템의 로직 회로들은 코어 로직 회로들(예컨대, 536)일 수 있다. 일 구성에서, 제2 전력 도메인을, 제2 서브시스템에 커플링된 적어도 하나의 캐시 메모리 및 제2 서브시스템의 로직 회로들에 제공하기 위한 수단은 SMPS(506) 및 SMPS(506)를 적어도 하나의 캐시 메모리 및 제2 서브시스템의 로직 회로들에 연결하는 회로 배선들일 수 있다. 일 구성에서, 제2 전력 도메인을 제공하기 위한 수단은 도 4의 404와 관련하여 위에서 설명된 동작들을 수행한다.
[0057] IC(502)는 제3 전력 도메인을 제1 서브시스템의 로직 회로들에 제공하기 위한 수단을 포함할 수 있다. 일 구성에서, 제3 전력 도메인은 칩 로직 도메인(520)일 수 있다. 일 구성에서, 제1 서브시스템의 로직 회로들은 서브시스템(550)의 로직 회로들(554)일 수 있다. 일 구성에서, 제3 전력 도메인을 제1 서브시스템의 로직 회로들에 제공하기 위한 수단은 SMPS(504) 및 SMPS(504)를 제 1 서브시스템의 로직 회로들에 연결하는 회로 배선들일 수 있다. 이러한 구성에서, 제3 전력 도메인을 제공하기 위한 수단은 도 4의 406과 관련하여 위에서 설명된 동작들을 수행한다.
[0058] 개시된 프로세스들/흐름도들의 블록들의 특정 순서 또는 계층은 예시적인 접근방식들의 예시임이 이해된다. 설계 선호도들에 기반하여, 프로세스들/흐름도들의 블록들의 특정 순서 또는 계층이 재배열될 수 있음이 이해된다. 또한, 일부 블록들은 결합되거나 생략될 수 있다. 첨부한 방법 청구항들은 다양한 블록들의 엘리먼트들을 예시적인 순서로 제시하며, 제시된 특정 순서 또는 계층으로 제한되도록 의도되는 것은 아니다.
[0059] 이전의 설명은 임의의 당업자로 하여금, 본원에서 설명되는 다양한 양상들을 실시하는 것을 가능하게 하기 위해 제공된다. 이러한 양상들에 대한 다양한 수정들이 당업자들에게 용이하게 명백할 것이며, 본원에서 정의된 일반 원리들은 다른 양상들에 적용될 수 있다. 따라서, 청구항들은 본원에서 도시된 양상들로 제한되도록 의도되는 것이 아니라, 청구항 문언과 일치하는 전체 범위에 따르는 것이며, 여기서 엘리먼트에 대한 단수 언급은 구체적으로 그렇게 언급하지 않는 한 "하나 및 단 하나"를 의미하도록 의도되는 것이 아니라, 그보다는 "하나 또는 그 초과"를 의미하는 것이다. "예시적인"이라는 용어는 "예, 경우 또는 예시로서 기능하는" 것을 의미하도록 본원에서 사용된다. 본원에서 "예시적인" 것으로 설명되는 임의의 양상은 반드시 다른 양상들에 비해 선호되거나 유리한 것으로 해석될 필요는 없다. 구체적으로 달리 언급되지 않는 한, "일부"라는 용어는 하나 또는 그 초과를 의미한다. "A, B, 또는 C 중 적어도 하나", "A, B, 및 C 중 적어도 하나", 그리고 "A, B, C, 또는 이들의 임의의 조합"과 같은 조합들은, A, B, 및/또는 C의 임의의 조합을 포함하며, 다수의 A, 다수의 B, 또는 다수의 C를 포함할 수 있다. 구체적으로는, "A, B 또는 C 중 적어도 하나," "A, B 및 C 중 적어도 하나," 그리고 "A, B, C, 또는 이들의 임의의 조합"과 같은 조합들은 A만, B만, C만, A와 B, A와 C, B와 C, 또는 A와 B와 C일 수 있으며, 여기서 이러한 임의의 조합들은 A, B 또는 C 중 하나 또는 그 초과의 멤버 또는 멤버들을 포함할 수 있다. 당업자들에게 알려졌거나 추후에 알려지게 될 본 개시내용 전반에 걸쳐 설명된 다양한 양상들의 엘리먼트들에 대한 모든 구조적 및 기능적 등가물들은, 인용에 의해 본원에 명백히 포함되고, 청구항들에 의해 포함되도록 의도된다. 더욱이, 본원에서 개시된 어떤 내용도, 청구항들에 그러한 개시내용이 명시적으로 기재되어 있는지 여부와 관계없이, 공중이 사용하도록 의도되는 것은 아니다. 청구항 엘리먼트가 명백히 "~을 위한 수단"이라는 문구를 사용하여 언급되지 않는 한, 어떤 청구항 엘리먼트도 수단 + 기능으로서 해석되어야 하는 것은 아니다.

Claims (27)

  1. 장치로서,
    적어도 하나의 시스템 온 칩(SoC; system on a chip) 메모리 및 적어도 하나의 캐시 메모리를 포함하는 복수의 메모리 유닛들;
    상기 적어도 하나의 SoC 메모리에 커플링된 제1 서브시스템 ― 상기 적어도 하나의 SoC 메모리는 제1 전력 도메인과 연관된 저전력 더블 데이터 레이트 동기식 DRAM(LPDDR; low-power double data rate synchronous DRAM)임 ―; 및
    상기 적어도 하나의 캐시 메모리에 커플링된 제2 서브시스템을 포함하며,
    상기 적어도 하나의 캐시 메모리는 적어도 하나의 레벨1(L1; level one) 캐시 메모리 및 적어도 하나의 레벨2(L2; level two) 캐시 메모리를 포함하고, 상기 적어도 하나의 L1 캐시 메모리 및 상기 적어도 하나의 L2 캐시 메모리는 제2 전력 도메인과 연관되는,
    장치.
  2. 제1 항에 있어서,
    상기 제2 서브시스템은 중앙 프로세싱 유닛(CPU; central processing unit) 서브시스템인,
    장치.
  3. 제2 항에 있어서,
    상기 CPU 서브시스템은 하나 또는 그 초과의 프로세서 클러스터들을 포함하고, 상기 L2 캐시 메모리는 상기 하나 또는 그 초과의 프로세서 클러스터들 중 하나에 커플링되는,
    장치.
  4. 제2 항에 있어서,
    상기 CPU 서브시스템은 복수의 프로세서들을 포함하고, 상기 L1 캐시 메모리는 상기 복수의 프로세서들 중 하나에 커플링되는,
    장치.
  5. 제1 항에 있어서,
    상기 제1 서브시스템은 제1 로직 회로를 포함하고, 상기 제1 로직 회로는 제3 전력 도메인과 연관되는,
    장치.
  6. 제5 항에 있어서,
    상기 제2 서브시스템은 제2 로직 회로를 포함하고, 상기 제2 로직 회로는 상기 제2 전력 도메인과 연관되는,
    장치.
  7. 제1 항에 있어서,
    상기 제1 서브시스템 및 상기 제2 서브시스템은 SoC 상에 상주하는,
    장치.
  8. 제1 항에 있어서,
    제1 전력원 및 제2 전력원을 더 포함하며,
    상기 제1 전력원은 상기 제1 전력 도메인에 전력을 공급하도록 구성되고 그리고 상기 제2 전력원은 상기 제2 전력 도메인에 전력을 공급하도록 구성되는,
    장치.
  9. 제8 항에 있어서,
    무선 로컬 영역 네트워크(WLAN; wireless local area network) 라디오 주파수(RF; radio frequency) 컴포넌트를 더 포함하며,
    상기 제1 전력원은 추가로, 상기 LPDDR 또는 상기 WLAN RF 컴포넌트에 전력을 공급하도록 구성되는,
    장치.
  10. 제1 항에 있어서,
    상기 제2 서브시스템이 저전력 모드에 진입할 때, 상기 제2 전력 도메인은 상기 적어도 하나의 캐시 메모리에 데이터를 유지하는 데 필요한 최소 전압을 유지하는,
    장치.
  11. 전력 그리드를 제공하는 방법으로서,
    제1 전력 도메인을 적어도 하나의 시스템 온 칩(SoC; system on a chip) 메모리에 제공하는 단계 ― 상기 적어도 하나의 SoC 메모리는 저전력 더블 데이터 레이트 동기식 DRAM(LPDDR; low-power double data rate synchronous DRAM)이고 그리고 제1 서브시스템에 커플링됨 ―; 및
    제2 전력 도메인을 적어도 하나의 캐시 메모리에 제공하는 단계를 포함하며,
    상기 적어도 하나의 캐시 메모리는 적어도 하나의 레벨1(L1; level one) 캐시 메모리 및 적어도 하나의 레벨2(L2; level two) 캐시 메모리를 포함하고, 상기 적어도 하나의 L1 캐시 메모리 및 상기 적어도 하나의 L2 캐시 메모리는 제2 서브시스템에 커플링되는,
    전력 그리드를 제공하는 방법.
  12. 제11 항에 있어서,
    상기 제2 서브시스템은 중앙 프로세싱 유닛(CPU; central processing unit) 서브시스템인,
    전력 그리드를 제공하는 방법.
  13. 제12 항에 있어서,
    상기 CPU 서브시스템은 하나 또는 그 초과의 프로세서 클러스터들을 포함하고, 상기 L2 캐시 메모리는 상기 하나 또는 그 초과의 프로세서 클러스터들 중 하나에 커플링되는,
    전력 그리드를 제공하는 방법.
  14. 제12 항에 있어서,
    상기 CPU 서브시스템은 복수의 프로세서들을 포함하고, 상기 L1 캐시 메모리는 상기 복수의 프로세서들 중 하나에 커플링되는,
    전력 그리드를 제공하는 방법.
  15. 제11 항에 있어서,
    상기 제1 서브시스템은 제1 로직 회로를 포함하고,
    상기 방법은,
    제3 전력 도메인을 상기 제1 로직 회로에 제공하는 단계를 더 포함하는,
    전력 그리드를 제공하는 방법.
  16. 제15 항에 있어서,
    상기 제2 서브시스템은 제2 로직 회로를 포함하고,
    상기 방법은,
    상기 제2 전력 도메인을 상기 제2 로직 회로에 제공하는 단계를 더 포함하는,
    전력 그리드를 제공하는 방법.
  17. 제11 항에 있어서,
    상기 제1 서브시스템 및 상기 제2 서브시스템은 SoC 상에 상주하는,
    전력 그리드를 제공하는 방법.
  18. 제11 항에 있어서,
    제1 전력원은 상기 제1 전력 도메인에 전력을 공급하도록 구성되고 그리고 제2 전력원은 상기 제2 전력 도메인에 전력을 공급하도록 구성되는,
    전력 그리드를 제공하는 방법.
  19. 제18 항에 있어서,
    상기 제1 전력원은 추가로, 상기 저전력 DDR(LPDDR; low-power DDR) 또는 무선 로컬 영역 네트워크(WLAN; wireless local area network) 라디오 주파수(RF; radio frequency) 컴포넌트에 전력을 공급하도록 구성되는,
    전력 그리드를 제공하는 방법.
  20. 전력 그리드를 제공하기 위한 장치로서,
    제1 전력 도메인을 적어도 하나의 시스템 온 칩(SoC; system on a chip) 메모리에 제공하기 위한 수단 ― 상기 적어도 하나의 SoC 메모리는 저전력 더블 데이터 레이트 동기식 DRAM(LPDDR; low-power double data rate synchronous DRAM)이고 그리고 제1 서브시스템에 커플링됨 ―; 및
    제2 전력 도메인을 적어도 하나의 캐시 메모리에 제공하기 위한 수단을 포함하며,
    상기 적어도 하나의 캐시 메모리는 적어도 하나의 레벨1(L1; level one) 캐시 메모리 및 적어도 하나의 레벨2(L2; level two) 캐시 메모리를 포함하고, 상기 적어도 하나의 L1 캐시 메모리 및 상기 적어도 하나의 L2 캐시 메모리는 제2 서브시스템에 커플링되는,
    전력 그리드를 제공하기 위한 장치.
  21. 제20 항에 있어서,
    상기 제2 서브시스템은 중앙 프로세싱 유닛(CPU; central processing unit) 서브시스템인,
    전력 그리드를 제공하기 위한 장치.
  22. 제21 항에 있어서,
    상기 CPU 서브시스템은 하나 또는 그 초과의 프로세서 클러스터들을 포함하고, 상기 L2 캐시 메모리는 상기 하나 또는 그 초과의 프로세서 클러스터들 중 하나에 커플링되는,
    전력 그리드를 제공하기 위한 장치.
  23. 제21 항에 있어서,
    상기 CPU 서브시스템은 복수의 프로세서들을 포함하고, 상기 L1 캐시 메모리는 상기 복수의 프로세서들 중 하나에 커플링되는,
    전력 그리드를 제공하기 위한 장치.
  24. 제20 항에 있어서,
    상기 제1 서브시스템은 제1 로직 회로를 포함하고,
    상기 장치는,
    제3 전력 도메인을 상기 제1 로직 회로에 제공하기 위한 수단을 더 포함하는,
    전력 그리드를 제공하기 위한 장치.
  25. 제24 항에 있어서,
    상기 제2 서브시스템은 제2 로직 회로를 포함하며,
    상기 제2 전력 도메인을 상기 적어도 하나의 캐시 메모리에 제공하기 위한 수단은 추가로, 상기 제2 전력 도메인을 상기 제2 로직 회로에 제공하도록 구성되는,
    전력 그리드를 제공하기 위한 장치.
  26. 제20 항에 있어서,
    상기 제1 서브시스템 및 상기 제2 서브시스템은 SoC 상에 상주하는,
    전력 그리드를 제공하기 위한 장치.
  27. 제20 항에 있어서,
    상기 제1 전력 도메인을 제공하기 위한 수단은 상기 제1 전력 도메인에 전력을 공급하도록 구성된 제1 전력원을 포함하고, 그리고
    상기 제2 전력 도메인을 제공하기 위한 수단은 상기 제2 전력 도메인에 전력을 공급하도록 구성된 제2 전력원을 포함하는,
    전력 그리드를 제공하기 위한 장치.
KR1020187012231A 2015-09-28 2016-09-13 전력-인지 cpu 전력 그리드 설계 KR101910999B1 (ko)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
IN5180CH2015 2015-09-28
IN5180/CHE/2015 2015-09-28
US15/173,004 US9658671B2 (en) 2015-09-28 2016-06-03 Power-aware CPU power grid design
US15/173,004 2016-06-03
PCT/US2016/051470 WO2017058509A1 (en) 2015-09-28 2016-09-13 Power-aware cpu power grid design

Publications (2)

Publication Number Publication Date
KR20180051648A KR20180051648A (ko) 2018-05-16
KR101910999B1 true KR101910999B1 (ko) 2018-10-23

Family

ID=58409235

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020187012231A KR101910999B1 (ko) 2015-09-28 2016-09-13 전력-인지 cpu 전력 그리드 설계

Country Status (6)

Country Link
US (1) US9658671B2 (ko)
EP (1) EP3356910B1 (ko)
JP (2) JP6567769B2 (ko)
KR (1) KR101910999B1 (ko)
CN (1) CN108139791B (ko)
WO (1) WO2017058509A1 (ko)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6351722B2 (ja) * 2013-12-23 2018-07-04 インテル・コーポレーション クラスタ化されたワイド実行機械におけるメモリアクセス用の命令およびロジック
US10466766B2 (en) * 2017-11-09 2019-11-05 Qualcomm Incorporated Grouping central processing unit memories based on dynamic clock and voltage scaling timing to improve dynamic/leakage power using array power multiplexers
US20220293170A1 (en) * 2021-03-10 2022-09-15 Invention And Collaboration Laboratory Pte. Ltd. Integrated scaling and stretching platform for optimizing monolithic integration and/or heterogeneous integration in a single semiconductor die
US11803472B2 (en) 2021-07-30 2023-10-31 Qualcomm Incorporated Integrated circuits (IC) employing subsystem shared cache memory for facilitating extension of low-power island (LPI) memory and related methods

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030101362A1 (en) 2001-11-26 2003-05-29 Xiz Dia Method and apparatus for enabling a self suspend mode for a processor
US20030120962A1 (en) 2001-12-20 2003-06-26 Xia Dai Method and apparatus for enabling a low power mode for a processor
US20040117678A1 (en) 2002-12-13 2004-06-17 Soltis Donald C. System, method and apparatus for conserving power consumed by a system having a processor integrated circuit
US20140095777A1 (en) 2012-09-28 2014-04-03 Apple Inc. System cache with fine grain power management
US20140359044A1 (en) 2009-10-30 2014-12-04 Iii Holdings 2, Llc Remote memory access functionality in a cluster of data processing nodes

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1855181A2 (en) * 2006-05-10 2007-11-14 Marvell World Trade Ltd. System with high power and low power processors and thread transfer
US8335122B2 (en) 2007-11-21 2012-12-18 The Regents Of The University Of Michigan Cache memory system for a data processing apparatus
US9411390B2 (en) 2008-02-11 2016-08-09 Nvidia Corporation Integrated circuit device having power domains and partitions based on use case power optimization
JP5237739B2 (ja) * 2008-09-29 2013-07-17 株式会社日立製作所 情報処理装置
US8601302B2 (en) * 2009-06-22 2013-12-03 Amazon Technologies, Inc. Processor system in low power state retention mode with linear regulator off and switch regulator low in power management IC
US9405357B2 (en) * 2013-04-01 2016-08-02 Advanced Micro Devices, Inc. Distribution of power gating controls for hierarchical power domains
JP6135276B2 (ja) * 2013-04-23 2017-05-31 富士通株式会社 ストレージ装置、制御装置、および制御プログラム
JP2015064676A (ja) * 2013-09-24 2015-04-09 株式会社東芝 情報処理装置、半導体装置、情報処理方法およびプログラム
US10523585B2 (en) * 2014-12-19 2019-12-31 Amazon Technologies, Inc. System on a chip comprising multiple compute sub-systems

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030101362A1 (en) 2001-11-26 2003-05-29 Xiz Dia Method and apparatus for enabling a self suspend mode for a processor
US20030120962A1 (en) 2001-12-20 2003-06-26 Xia Dai Method and apparatus for enabling a low power mode for a processor
US20040117678A1 (en) 2002-12-13 2004-06-17 Soltis Donald C. System, method and apparatus for conserving power consumed by a system having a processor integrated circuit
US20140359044A1 (en) 2009-10-30 2014-12-04 Iii Holdings 2, Llc Remote memory access functionality in a cluster of data processing nodes
US20140095777A1 (en) 2012-09-28 2014-04-03 Apple Inc. System cache with fine grain power management

Also Published As

Publication number Publication date
EP3356910B1 (en) 2021-06-02
EP3356910A1 (en) 2018-08-08
US20170090539A1 (en) 2017-03-30
KR20180051648A (ko) 2018-05-16
JP2019192264A (ja) 2019-10-31
JP6567769B2 (ja) 2019-08-28
CN108139791A (zh) 2018-06-08
WO2017058509A1 (en) 2017-04-06
BR112018006274A2 (pt) 2018-10-16
CN108139791B (zh) 2020-07-03
JP2018536214A (ja) 2018-12-06
US9658671B2 (en) 2017-05-23

Similar Documents

Publication Publication Date Title
US9223383B2 (en) Guardband reduction for multi-core data processor
KR101910999B1 (ko) 전력-인지 cpu 전력 그리드 설계
US11360543B2 (en) USB Type-C subsystem power management
US11353914B2 (en) Workload based adaptive voltage and frequency control apparatus and method
US11842202B2 (en) Apparatus and method for dynamic selection of an optimal processor core for power-up and/or sleep modes
CN115514036A (zh) 自适应突发功率和快速电池充电装置和方法
CN114090227A (zh) 高能效核心电压选择装置和方法
CN115378253A (zh) 计算型电流传感器
EP2853983B1 (en) Utilization of processor capacity at low operating frequencies
CN114253382A (zh) 统一保留和唤醒夹钳装置和方法
JP2021193544A (ja) 高速で動的なキャパシタンス、周波数、及び/又は電圧スロットリング装置及び方法
EP4047605A1 (en) Memory power management method and apparatus
US11791819B2 (en) Low power flip-flop with reduced parasitic capacitance
KR20220027824A (ko) 억제된 메모리 리프레시들에 기초한 배터리 수명의 개선
US11054470B1 (en) Double edge triggered Mux-D scan flip-flop
BR112018006274B1 (pt) Projeto de rede elétrica de cpu ciente de energia
US11705750B2 (en) Power negotiation sequence to improve user experience and battery life
US20210208668A1 (en) Apparatus and method to reduce standby power for systems in battery mode with a connected bus powered device
US20220413876A1 (en) Apparatus and method for restoring a password-protected endpoint device to an operational state from a low power state
US20240007087A1 (en) Integrated clock gate with circuitry to facilitate clock frequency division
US20210090635A1 (en) Register file with write pre-charge
EP4010980A1 (en) Low power sequential circuit apparatus

Legal Events

Date Code Title Description
A201 Request for examination
A302 Request for accelerated examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant