KR101210274B1 - 전력 소모 스케일링이 가능한 프로세서 - Google Patents
전력 소모 스케일링이 가능한 프로세서 Download PDFInfo
- Publication number
- KR101210274B1 KR101210274B1 KR1020080130619A KR20080130619A KR101210274B1 KR 101210274 B1 KR101210274 B1 KR 101210274B1 KR 1020080130619 A KR1020080130619 A KR 1020080130619A KR 20080130619 A KR20080130619 A KR 20080130619A KR 101210274 B1 KR101210274 B1 KR 101210274B1
- Authority
- KR
- South Korea
- Prior art keywords
- pipeline register
- bypass
- processor
- instruction
- function unit
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/04—Generating or distributing clock signals or signals derived directly therefrom
- G06F1/08—Clock generators with changeable or programmable clock frequency
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/04—Generating or distributing clock signals or signals derived directly therefrom
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
- G06F1/3234—Power saving characterised by the action undertaken
- G06F1/324—Power saving characterised by the action undertaken by lowering clock frequency
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline, look ahead
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline, look ahead
- G06F9/3867—Concurrent instruction execution, e.g. pipeline, look ahead using instruction pipelines
- G06F9/3869—Implementation aspects, e.g. pipeline latches; pipeline synchronisation and clocking
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline, look ahead
- G06F9/3867—Concurrent instruction execution, e.g. pipeline, look ahead using instruction pipelines
- G06F9/3873—Variable length pipelines, e.g. elastic pipeline
-
- Y—GENERAL 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
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE 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/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Abstract
본 발명은 전력 소모 스케일링이 가능한 프로세서에 관한 것으로, 보다 상세하게는 파이프라인 레지스터가 바이패스 기능을 갖도록 함으로써 프로세서의 동작 주파수를 조절 가능하게 하여 공급되는 에너지 용량에 따라 프로세서의 에너지 소모량을 가변적으로 조절할 수 있도록 하는 기술에 관한 것이다.
전력 소모 스케일링, 스케일러블 프로세서, 파이프라인, 에너지
Description
본 발명은 전력 소모 스케일링이 가능한 프로세서에 관한 것으로, 보다 상세하게는 파이프라인 레지스터가 바이패스 기능을 갖도록 함으로써 프로세서의 동작 주파수를 조절 가능하게 하여 공급되는 에너지 용량에 따라 프로세서의 에너지 소모량을 가변적으로 조절할 수 있도록 하는 기술에 관한 것이다.
본 발명은 지식경제부 및 정보통신연구진흥원의 IT원천기술개발사업의 일환으로 수행한 연구로부터 도출된 것이다[과제관리번호: 2006-S-048-03, 과제명: 오디오 비디오 신호처리용 임베디드 DSP Platform].
분산 자율 시스템(Distributed Autonomous System)은 독립적인 전원 공급 장치 및 판단, 데이터 송수신 기능을 갖춘 시스템을 말한다. 이러한 시스템의 예로서 무선 센서 네트워크(Wireless Sensor Network; WSN) 또는 초소형 전자장치(Smart Dust) 등을 들 수 있다.
무선 센서 네트워크는 초기에는 군사용(military application)으로 개발되었으나, 현재는 환경 또는 날씨 모니터링, 헬스케어, 교통 제어 등의 어플리케이션에 사용되고 있으며, 다수의 장소에서 온도, 소리, 진동, 압력, 움직임 등을 관측(sensing)하는데 사용될 수 있다.
무선 센서 네트워크는 외부에서 전원을 무한히 공급받을 수 없다는 제약 조건이 있다. 그러므로, 외부환경에서 에너지를 얻는 에너지 수집 (Energy Harvesting, Energy Scavenging) 장치가 장착되어야 하고, 무선 송수신 장치 및 기능 수행을 위한 프로세서가 장착된다.
또한, 태양전지(Photovoltaic device) 등에서 공급받은 수집된 에너지 (Harvested Energy)는 외부에서 공급은 가능하나 시간에 따라 충전된 에너지 용량 (Charged Energy Capacity)이 가변적이라는 단점이 있다.
따라서, 충전된 에너지 용량 및 앞으로 사용 가능한 에너지 용량에 따라 프로세서의 에너지 소모를 동적으로 조절할 필요가 있으며, 이로써 프로세서의 복잡한 처리 성능은 유지하면서 에너지가 충분히 공급되지 않더라도 시스템이 동작할 수 있도록 하는 기술이 필수적이다.
따라서 본 발명은 상기와 같은 종래 기술의 문제점을 해결하기 위한 것으로, 파이프라인 레지스터가 바이패스 기능을 갖도록 함으로써 프로세서의 동작 주파수를 조절 가능하게 하여 공급되는 에너지 용량에 따라 프로세서의 에너지 소모량을 가변적으로 조절할 수 있도록 하는 전력 소모 스케일링이 가능한 프로세서를 제공하기 위한 것이다.
상기한 목적을 달성하기 위한 본 발명의 일 실시예에 의한 전력 소모 스케일링이 가능한 프로세서는, 순차적으로 기능을 수행하는 복수개의 기능유닛; 상기 복수개의 기능 유닛들 사이에 각각 형성되어 파이프라인의 전 단계에 해당하는 기능유닛의 연산 결과값을 저장하며, 바이패스 기능을 갖는 복수개의 파이프라인 레지스터 집합; 상기 복수개의 파이프라인 레지스터 집합 각각에 클럭 신호를 인가하는 시스템 클럭 제어부; 및 상기 복수개의 파이프라인 레지스터 집합 중 기 설정된 조건에 따라 선택된 파이프라인 레지스터 집합에 바이패스 신호를 인가하는 바이패스 제어부를 포함한다.
상기 복수개의 기능유닛은, 명령어 메모리로부터 명령어를 읽어오기 위한 요청을 하는 프리페치 (Prefetch) 기능유닛; 상기 명령어 메모리로부터 명령어를 읽어오는 페치(Fetch) 기능유닛; 상기 명령어 메모리로부터 읽어온 명령어를 분석하 는 디코드(Decode) 기능유닛; 분석한 명령어의 실행에 필요한 피연산자를 읽어오기 위한 요청을 하는 액세스(Access) 기능유닛; 메모리로부터 명령어의 실행에 필요한 피연산자를 읽어오는 리드(Read) 기능유닛; 읽어온 피연산자를 이용하여 명령어를 실행하는 실행(Execution) 기능유닛; 및 명령어 실행 결과를 메모리에 저장하는 라이트(Write) 기능유닛을 포함하는 것을 특징으로 한다.
또한, 상기 복수개의 파이프라인 레지스터 집합을 구성하는 각각의 파이프라인 레지스터는, D 플립 플롭; 및 인가되는 바이패스 신호에 따라 상기 D 플립 플롭의 출력과 상기 파이프라인 레지스터로 입력되는 신호 중 어느 하나를 선택하는 멀티플렉서를 포함하도록 구성된다.
상기 각각의 파이프라인 레지스터에서, 상기 바이패스 신호가 비활성화된 경우 상기 멀티플렉서는 상기 D 플립 플롭에 저장된 데이터를 선택하여 출력한다. 반면, 상기 바이패스 신호가 활성화된 경우 상기 멀티플렉서는 상기 파이프라인 레지스터로 입력되는 신호를 선택하여 출력한다.
상기 시스템 클럭 제어부는, 바이패스 신호가 활성화된 파이프라인 레지스터 집합에 대해서는 클럭 신호를 발생시키지 않는다.
상기 바이패스 제어부는, 상기 프로세서가 장착된 장치의 가용 전력량이 소정 레벨 이하인 경우 상기 복수개의 파이프라인 레지스터 집합 중 기 설정된 조건에 따라 선택된 파이프라인 레지스터 집합에 바이패스 신호를 인가하여 상기 프로세서의 에너지 소모량을 조절한다.
본 발명에 의하면, 공급되는 에너지 용량에 따라 일부 파이프라인 레지스터 집합에만 바이패스 신호를 인가하고, 바이패스 신호가 인가되는 파이프라인 레지스터 집합에 해당하는 클럭 신호를 비 활성화시킴으로써, 파이프라인 레지스터와 클럭 네트워크에서 소모되는 에너지를 감소시킬 수 있다.
또한, 바이패스 신호의 인가에 따라 프로세서의 동작 주파수가 낮아지게 되고 따라서 프로세서의 동작 전압이 감소되며 그 결과 프로세서의 에너지 소모량이 감소하게 된다.
이하, 첨부된 도면을 참조하여 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자가 본 발명을 용이하게 실시할 수 있도록 바람직한 실시예를 상세히 설명한다. 다만, 본 발명의 바람직한 실시예를 상세하게 설명함에 있어, 관련된 공지 기능 또는 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략한다. 또한, 유사한 기능 및 작용을 하는 부분에 대해서는 도면 전체에 걸쳐 동일한 부호를 사용한다.
덧붙여, 명세서 전체에서, 어떤 부분이 다른 부분과 '연결'되어 있다고 할 때, 이는 '직접적으로 연결'되어 있는 경우뿐만 아니라, 그 중간에 다른 소자를 사이에 두고 '간접적으로 연결'되어 있는 경우도 포함한다. 또한, 어떤 구성요소를 '포함'한다는 것은, 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것 이 아니라 다른 구성요소를 더 포함할 수 있다는 것을 의미한다.
도 1은 본 발명의 일 실시예에 의한 전력 소모 스케일링이 가능한 프로세서의 구성도이다.
본 발명의 일 실시예에 의한 전력 소모 스케일링이 가능한 프로세서는, 순차적으로 기능을 수행하는 복수개의 기능유닛(111, 112, 113, 114, 115, 116, 117), 상기 복수개의 기능유닛들(111, 112, 113, 114, 115, 116, 117) 사이에 각각 형성되어 전 단계의 기능유닛의 연산 결과값을 저장하며, 바이패스 기능을 갖는 복수개의 파이프라인 레지스터 집합(121, 122, 123, 124, 125, 126), 상기 복수개의 파이프라인 레지스터 집합(121, 122, 123, 124, 125, 126) 각각에 클럭 신호를 인가하는 시스템 클럭 제어부(130) 및 상기 복수개의 파이프라인 레지스터 집합(121, 122, 123, 124, 125, 126) 중 기 설정된 조건에 따라 선택된 파이프라인 레지스터 집합에 바이패스 신호를 인가하는 바이패스 제어부(140)를 포함하여 구성된다.
구체적으로, 순차적으로 기능을 수행하는 복수개의 기능유닛(111, 112, 113, 114, 115, 116, 117)은, 명령어 메모리(미도시)로부터 명령어를 읽어오기 위한 요청을 하는 프리페치 (Prefetch) 기능유닛(111), 명령어 메모리 (미도시)로부터 명령어를 읽어오는 페치 (Fetch) 기능유닛(112), 명령어 메모리 (미도시)로부터 읽어온 명령어를 분석하는 디코드 (Decode) 기능유닛(113), 분석한 명령어의 실행에 필요한 피연산자를 읽어오기 위한 요청을 하는 액세스 (Access) 기능유닛(114), 메모 리(미도시)로부터 피연산자를 읽어오는 리드 (Read) 기능유닛(115), 읽어온 피연산자를 이용하여 명령어를 실행하는 실행 (Execution) 기능유닛(116) 및 명령어 실행 결과를 메모리에 저장하는 라이트 (Write) 기능유닛(117)을 포함한다. 이때, 상기 복수개의 기능유닛(111, 112, 113, 114, 115, 116, 117) 각각은 프로세서의 파이프라인 단계들을 구성한다.
복수개의 파이프라인 레지스터 집합(121, 122, 123, 124, 125, 126)은 프로세서의 파이프라인 단계를 구성하는 상기 복수개의 기능유닛들(111, 112, 113, 114, 115, 116, 117) 사이에 각각 형성되어, 파이프라인의 전 단계에 해당하는 기능유닛의 연산 결과값을 저장한다.
도 1에서 각각의 파이프라인 레지스터는 Pr(i, j)로 표기되는데, 여기서, i는 파이프라인 단계를 의미하고, j는 해당 파이프라인 단계에서의 파이프라인 레지스터의 순서를 의미한다.
프로세서를 구성하는 파이프라인 레지스터의 개수는 프로세서의 구현 방법에 따라 달라질 수 있다. 도 1에 도시된 실시예에서는, 프리페치와 페치 기능유닛 사이에는 n0 개, 페치와 디코드 기능유닛 사이에는 n1 개, 디코드와 액세스 기능유닛 사이에는 n2 개, 액세스와 리드 기능유닛 사이에는 n3 개, 리드와 실행 기능유닛 사이에는 n4 개, 실행과 라이트 기능유닛 사이에는 n5 개의 파이프라인 레지스터가 배치된다.
본 발명에서, 각각의 파이프라인 레지스터는 바이패스 기능을 갖는데, 바이패스 기능을 갖는 파이프라인 레지스터의 상세 구성은 추후 도 2를 참조하여 설명한다.
시스템 클럭 제어부(130)는 클럭 신호를 생성하여 복수개의 파이프라인 레지스터 집합(121, 122, 123, 124, 125, 126) 각각으로 클럭 신호(131, 132, 133, 134, 135, 136)를 인가한다. 즉, 복수개의 파이프라인 레지스터 집합(121, 122, 123, 124, 125, 126)에는 각 단계별로 독립적인 클럭 신호가 입력된다. 한편, 시스템 클럭 제어부(130)는 바이패스 신호가 활성화된 파이프라인 레지스터 집합에 대해서는 클럭 신호를 발생시키지 않는다.
바이패스 제어부(140)는 바이패스 신호를 생성하여 복수개의 파이프라인 레지스터 집합(121, 122, 123, 124, 125, 126) 중 기 설정된 조건에 따라 선택된 파이프라인 레지스터 집합에 바이패스 신호를 인가한다.
이처럼, 바이패스 제어부(140)는 모든 파이프라인 레지스터 집합에 바이패스 신호를 인가하는 것이 아니라, 기 설정된 조건에 따라 선택된 파이프라인 레지스터 집합에만 바이패스 신호를 인가한다. 이는, 본 발명에 의한 프로세서(100)가 작동하고 있는 장치의 가용 전력량에 따라 프로세서(100)의 동작 주파수를 조절하여 에너지 소모량을 가변적으로 조절하기 위한 것이다. 따라서, 바이패스 제어부(140)는 프로세서(100)가 장착된 장치의 가용 전력량이 소정 레벨 이하여서 프로세서의 에 너지 소모량을 조절할 필요가 있는 경우 선택적으로 바이패스 신호를 인가하며, 상기 기 설정된 조건은 프로세서(100)가 장착된 장치에 따라 적절하게 결정될 수 있다.
상술한 바와 같이 프로세서를 복수개의 파이프라인 단계로 구성함으로써 프로세서의 성능을 올릴 수 있다. 즉, 한 개의 명령어가 수행하는 기능을 파이프라인 단계별로 구분함으로써 동작 주파수를 높일 수 있고, 매 클럭 신호마다 한 개의 명령어가 수행되어 출력 성능(throughput)이 증대되는 효과가 있다.
그러나, 프로세서를 파이프라인으로 구성하면, 파이프라인 레지스터 및 파이프라인 레지스터를 구동하기 위한 클럭 네트워크에서 많은 에너지가 소모하게 되므로, 본 발명에서는 장치의 가용 전력량에 따라 파이프라인을 조절하여 동작 주파수를 조절하고 이에 따라 프로세서의 에너지 소모량을 조절할 수 있도록 한다.
도 2는 본 발명에 의한 전력 소모 스케일링이 가능한 프로세서에 포함되는 바이패스 기능을 갖는 파이프라인 레지스터의 구성도이다. 본 발명에 의한 파이프라인 레지스터(200)는 D 플립 플롭(210)과 멀티플렉서(220)를 포함하며, 멀티플렉서(220)에는 바이패스 제어부(도 1의 140)로부터의 바이패스 신호가 인가될 수 있도록 구성된다.
바이패스 신호(221)가 비활성화된 경우 파이프라인 레지스터(200)의 동작을 살펴보면, 파이프라인 레지스터(200)의 입력 신호(211)는 시스템 클럭 제어부(도 1의 130)로부터 인가되는 클럭 신호(212)에 따라서 D 플립 플롭 (210)에 저장되고, 멀티플렉서(220)에 의해 D 플립 플롭(210)에 저장된 데이터가 선택되어 파이프라인 레지스터(200)의 출력(222)이 된다.
반면, 바이패스 신호(221)가 활성화된 경우 파이프라인 레지스터(200)의 동작을 살펴보면, 파이프라인 레지스터(200)의 입력 신호(211)가 멀티플렉서 (220)에 의해 바로 선택되어 파이프라인 레지스터(200)의 출력(222)이 된다. 이 경우, 파이프라인 레지스터(200)의 출력(222)은 클럭 신호(212)와는 무관하다. 따라서, 시스템 클럭 제어부(도 1의 130)는 특정 파이프라인 레지스터 집합에 대한 바이패스 신호가 활성화된 경우 해당 파이프라인 레지스터 집합에 대한 클럭 신호는 발생시키지 않는다.
도 3은 모든 파이프라인 단계의 바이패스 신호가 비활성화된 경우의 파이프라인 전개도이다.
도 3에서, 클럭 신호(300)는 모든 파이프라인 단계의 바이패스 신호가 비활성화 된 경우 시스템 클럭 제어부(도 1의 130)가 생성하는 각 파이프라인 단계의 클럭 신호들의 타이밍을 나타낸다. 도 3에 도시된 바와 같이, 바이패스 신호가 모두 비활성화 된 경우에는 각 파이프라인 단계의 클럭 신호들은 모두 동일한 타이밍을 갖는다.
매 클럭 신호마다 명령어(310, 311, 312, 313, 314)들이 프리페치 기능유닛(도 1의 111)으로 입력되고, 하나의 클럭 신호가 지날 때 마다 명령어들이 다음 파이프라인 단계로 넘어가게 되어, 결과적으로 파이프라인 단계에 해당하는 숫자만큼 의 클럭 신호가 경과되면 각 명령어들(320, 321, 322, 323, 324)은 최종 파이프라인 단계인 라이트 단계를 완료하게 된다.
도 4는 프리페치 기능유닛과 페치 기능유닛 사이, 및 액세스 기능유닛과 리드 기능유닛 사이의 바이패스 신호는 비활성화되고, 나머지 바이패스 신호는 활성화된 경우의 파이프라인 전개도이다.
도 4에서와 같이 바이패스 신호가 선택적으로 활성화 또는 비활성화되면, 시스템 클럭 제어부(도 1의 130)는 바이패스 신호가 활성화된 파이프라인 레지스터 집합에 대한 클럭 신호는 생성하지 않고, 그 외의 클럭 신호만을 생성한다.
도 4에서, 클럭 신호(400)는 시스템 클럭 제어부(도 1의 130)에서 생성된 클럭 신호들의 타이밍을 나타낸다. 클럭 신호(400)는 도 3에 도시된 클럭 신호(300)에 비해 1/3 이하의 동작 주파수를 갖는다.
이 경우, 매 클럭 신호마다 명령어가 프리페치 기능유닛(도 1의 111)으로 입력되고, 다음 클럭 신호에서는 도 4에 도시된 바와 같이 페치, 디코드 및 액세스 기능 유닛(도 1의 112, 113, 114)이 하나의 클럭 신호에서 실행되며, 그 다음 클럭 신호에서는 리드, 실행 및 라이트 기능 유닛(도 1의 115, 116, 117)이 하나의 클럭 신호에서 실행된다.
이처럼 본 발명에서는 프로세서가 장착된 장치의 에너지 공급 상황에 따라 각 단계의 파이프라인 레지스터에 인가되는 바이패스 신호를 조절함으로써 프로세 서의 동작 주파수를 조절하고 이에 따라 프로세서의 에너지 소모량을 조절할 수 있게 된다.
본 발명은 전술한 실시예 및 첨부된 도면에 의해 한정되는 것이 아니다. 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 있어, 본 발명의 기술적 사상을 벗어나지 않는 범위 내에서 본 발명에 따른 구성요소를 치환, 변형 및 변경할 수 있다는 것이 명백할 것이다.
도 1은 본 발명의 일 실시예에 의한 전력 소모 스케일링이 가능한 프로세서의 구성도,
도 2는 본 발명에 의한 전력 소모 스케일링이 가능한 프로세서에 포함되는 바이패스 기능을 갖는 파이프라인 레지스터의 구성도,
도 3은 모든 파이프라인 단계의 바이패스 신호가 비활성화된 경우의 파이프라인 전개도, 그리고
도 4는 프리페치 기능유닛과 페치 기능유닛 사이, 및 액세스 기능유닛과 리드 기능유닛 사이의 바이패스 신호는 비활성화되고, 나머지 바이패스 신호는 활성화된 경우의 파이프라인 전개도이다.
Claims (7)
- 순차적으로 기능을 수행하는 복수개의 기능유닛;상기 복수개의 기능 유닛들 사이에 각각 형성되어 파이프라인의 전 단계에 해당하는 기능유닛의 연산 결과값을 저장하며, 바이패스 기능을 갖는 복수개의 파이프라인 레지스터 집합;상기 복수개의 파이프라인 레지스터 집합 각각에 클럭 신호를 인가하는 시스템 클럭 제어부; 및상기 복수개의 파이프라인 레지스터 집합 중 기 설정된 조건에 따라 선택된 하나 이상의 파이프라인 레지스터 집합에 선택적으로 바이패스 신호를 인가하여 프로세서의 구조를 변경하는 바이패스 제어부를 포함하는 것을 특징으로 하는 전력 소모 스케일링이 가능한 프로세서.
- 제 1 항에 있어서, 상기 복수개의 기능유닛은,명령어 메모리로부터 명령어를 읽어오기 위한 요청을 하는 프리페치 (Prefetch) 기능유닛;상기 명령어 메모리로부터 명령어를 읽어오는 페치(Fetch) 기능유닛;상기 명령어 메모리로부터 읽어온 명령어를 분석하는 디코드(Decode) 기능유닛;분석한 명령어의 실행에 필요한 피연산자를 읽어오기 위한 요청을 하는 액세 스(Access) 기능유닛;메모리로부터 명령어의 실행에 필요한 피연산자를 읽어오는 리드(Read) 기능유닛;읽어온 피연산자를 이용하여 명령어를 실행하는 실행(Execution) 기능유닛; 및명령어 실행 결과를 메모리에 저장하는 라이트(Write) 기능유닛을 포함하는 것을 특징으로 하는 전력 소모 스케일링이 가능한 프로세서.
- 제 1 항에 있어서, 상기 복수개의 파이프라인 레지스터 집합을 구성하는 각각의 파이프라인 레지스터는,D 플립 플롭; 및인가되는 바이패스 신호에 따라 상기 D 플립 플롭의 출력과 상기 파이프라인 레지스터로 입력되는 신호 중 어느 하나를 선택하는 멀티플렉서를 포함하는 것을 특징으로 하는 전력 소모 스케일링이 가능한 프로세서.
- 제 3 항에 있어서,상기 바이패스 신호가 비활성화된 경우 상기 멀티플렉서는 상기 D 플립 플롭에 저장된 데이터를 선택하여 출력하는 것을 특징으로 하는 전력 소모 스케일링이 가능한 프로세서.
- 제 3 항에 있어서,상기 바이패스 신호가 활성화된 경우 상기 멀티플렉서는 상기 파이프라인 레지스터로 입력되는 신호를 선택하여 출력하는 것을 특징으로 하는 전력 소모 스케일링이 가능한 프로세서.
- 제 1 항에 있어서, 상기 시스템 클럭 제어부는,바이패스 신호가 활성화된 파이프라인 레지스터 집합에 대해서는 클럭 신호를 발생시키지 않는 것을 특징으로 하는 전력 소모 스케일링이 가능한 프로세서.
- 제 1 항에 있어서, 상기 바이패스 제어부는,상기 프로세서가 장착된 장치의 가용 전력량이 소정 레벨 이하인 경우 상기 복수개의 파이프라인 레지스터 집합 중 기 설정된 조건에 따라 선택된 파이프라인 레지스터 집합에 바이패스 신호를 인가하여 상기 프로세서의 에너지 소모량을 조절하는 것을 특징으로 하는 전력 소모 스케일링이 가능한 프로세서.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020080130619A KR101210274B1 (ko) | 2008-12-19 | 2008-12-19 | 전력 소모 스케일링이 가능한 프로세서 |
US12/479,691 US20100161943A1 (en) | 2008-12-19 | 2009-06-05 | Processor capable of power consumption scaling |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020080130619A KR101210274B1 (ko) | 2008-12-19 | 2008-12-19 | 전력 소모 스케일링이 가능한 프로세서 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20100071784A KR20100071784A (ko) | 2010-06-29 |
KR101210274B1 true KR101210274B1 (ko) | 2012-12-10 |
Family
ID=42267804
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020080130619A KR101210274B1 (ko) | 2008-12-19 | 2008-12-19 | 전력 소모 스케일링이 가능한 프로세서 |
Country Status (2)
Country | Link |
---|---|
US (1) | US20100161943A1 (ko) |
KR (1) | KR101210274B1 (ko) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101359717B1 (ko) * | 2010-11-08 | 2014-02-07 | 한국전자통신연구원 | 에너지 타일 프로세서 |
US9823719B2 (en) | 2013-05-31 | 2017-11-21 | Intel Corporation | Controlling power delivery to a processor via a bypass |
US11256657B2 (en) * | 2019-03-26 | 2022-02-22 | Intel Corporation | System, apparatus and method for adaptive interconnect routing |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001092658A (ja) * | 1999-09-22 | 2001-04-06 | Sanyo Electric Co Ltd | データ処理回路及びデータ処理装置 |
US20050223262A1 (en) | 2002-01-05 | 2005-10-06 | Yung-Huei Chen | Pipeline module circuit structure with reduced power consumption and method of operating the same |
JP2007299355A (ja) | 2006-05-08 | 2007-11-15 | Oki Electric Ind Co Ltd | マイクロプロセッサ |
JP2008192124A (ja) * | 2006-07-25 | 2008-08-21 | Univ Nagoya | 演算処理装置 |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH081599B2 (ja) * | 1988-02-24 | 1996-01-10 | 三菱電機株式会社 | データ処理装置 |
US6446143B1 (en) * | 1998-11-25 | 2002-09-03 | Compaq Information Technologies Group, L.P. | Methods and apparatus for minimizing the impact of excessive instruction retrieval |
US20030105799A1 (en) * | 2001-12-03 | 2003-06-05 | Avaz Networks, Inc. | Distributed processing architecture with scalable processing layers |
US7318164B2 (en) * | 2001-12-13 | 2008-01-08 | International Business Machines Corporation | Conserving energy in a data processing system by selectively powering down processors |
US7260106B2 (en) * | 2002-01-24 | 2007-08-21 | Intel Corporation | Method and apparatus for managing energy usage of processors while executing protocol state machines |
US7174469B2 (en) * | 2003-09-30 | 2007-02-06 | International Business Machines Corporation | Processor power and energy management |
US7386739B2 (en) * | 2005-05-03 | 2008-06-10 | International Business Machines Corporation | Scheduling processor voltages and frequencies based on performance prediction and power constraints |
WO2008012874A1 (fr) * | 2006-07-25 | 2008-01-31 | National University Corporation Nagoya University | Dispositif de traitement d'opération |
-
2008
- 2008-12-19 KR KR1020080130619A patent/KR101210274B1/ko active IP Right Grant
-
2009
- 2009-06-05 US US12/479,691 patent/US20100161943A1/en not_active Abandoned
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001092658A (ja) * | 1999-09-22 | 2001-04-06 | Sanyo Electric Co Ltd | データ処理回路及びデータ処理装置 |
US20050223262A1 (en) | 2002-01-05 | 2005-10-06 | Yung-Huei Chen | Pipeline module circuit structure with reduced power consumption and method of operating the same |
JP2007299355A (ja) | 2006-05-08 | 2007-11-15 | Oki Electric Ind Co Ltd | マイクロプロセッサ |
JP2008192124A (ja) * | 2006-07-25 | 2008-08-21 | Univ Nagoya | 演算処理装置 |
Also Published As
Publication number | Publication date |
---|---|
US20100161943A1 (en) | 2010-06-24 |
KR20100071784A (ko) | 2010-06-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI599960B (zh) | 在多核心處理器中執行電源管理 | |
US10656697B2 (en) | Processor core power event tracing | |
JP6143872B2 (ja) | 装置、方法、およびシステム | |
US10216693B2 (en) | Computer with hybrid Von-Neumann/dataflow execution architecture | |
KR102496402B1 (ko) | 사용자-레벨 포크 및 조인 프로세서, 방법, 시스템, 및 명령어 | |
US20190303297A1 (en) | Apparatus, methods, and systems for remote memory access in a configurable spatial accelerator | |
US20190004878A1 (en) | Processors, methods, and systems for a configurable spatial accelerator with security, power reduction, and performace features | |
US20190004945A1 (en) | Processors, methods, and systems for a configurable spatial accelerator with transactional and replay features | |
US20190102338A1 (en) | Processors, methods, and systems with a configurable spatial accelerator having a sequencer dataflow operator | |
US9606797B2 (en) | Compressing execution cycles for divergent execution in a single instruction multiple data (SIMD) processor | |
KR101713815B1 (ko) | 고효율의 내장형 동종 멀티코어 플랫폼용 타일 기반 프로세서 구조 모델 | |
JP5336830B2 (ja) | ワークロード実行特徴に基づく性能低下のない低パワーのための動的なプロセッサを再構成するための方法、プログラム、およびシステム | |
KR20210082058A (ko) | 콘볼루션 신경망들을 구현하기 위한 구성 가능형 프로세서 엘리먼트 어레이들 | |
CN109844776B (zh) | 具有片上学习和随机时间步长控制的可编程神经元核心 | |
US20170003725A1 (en) | Internal communication interconnect scalability | |
KR20070061086A (ko) | 동적 전압 스케일링을 적용한 고효율 프로세서 | |
US10409350B2 (en) | Instruction optimization using voltage-based functional performance variation | |
US20190286971A1 (en) | Reconfigurable prediction engine for general processor counting | |
KR101210274B1 (ko) | 전력 소모 스케일링이 가능한 프로세서 | |
CN110806900B (zh) | 一种访存指令处理方法及处理器 | |
US9501132B2 (en) | Instruction and logic for store broadcast and power management | |
EP1623318B1 (en) | Processing system with instruction- and thread-level parallelism | |
US20220113975A1 (en) | Vector dataflow architecture for embedded systems | |
JP2005527037A (ja) | 構成可能なプロセッサ | |
JP2013161484A (ja) | 再構成可能コンピューティング装置、その第1メモリ制御器及び第2メモリ制御器、並びにそのデバッギング用のトレースデータを処理する方法 |
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: 20151127 Year of fee payment: 4 |
|
FPAY | Annual fee payment |
Payment date: 20161121 Year of fee payment: 5 |
|
FPAY | Annual fee payment |
Payment date: 20181025 Year of fee payment: 7 |