KR102244848B1 - 온도-효과-역전 현상을 사용하는 네트워크-온-칩 및 그것의 동작 방법 - Google Patents

온도-효과-역전 현상을 사용하는 네트워크-온-칩 및 그것의 동작 방법 Download PDF

Info

Publication number
KR102244848B1
KR102244848B1 KR1020170023687A KR20170023687A KR102244848B1 KR 102244848 B1 KR102244848 B1 KR 102244848B1 KR 1020170023687 A KR1020170023687 A KR 1020170023687A KR 20170023687 A KR20170023687 A KR 20170023687A KR 102244848 B1 KR102244848 B1 KR 102244848B1
Authority
KR
South Korea
Prior art keywords
routers
temperature
network
chip
frequency
Prior art date
Application number
KR1020170023687A
Other languages
English (en)
Other versions
KR20180041039A (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 US15/644,434 priority Critical patent/US10326647B2/en
Publication of KR20180041039A publication Critical patent/KR20180041039A/ko
Application granted granted Critical
Publication of KR102244848B1 publication Critical patent/KR102244848B1/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/32Means for saving power
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/16Constructional details or arrangements
    • G06F1/20Cooling means
    • G06F1/206Cooling means comprising thermal management
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K19/00Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
    • H03K19/0008Arrangements for reducing power consumption
    • 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)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Human Computer Interaction (AREA)
  • Power Sources (AREA)
  • Semiconductor Integrated Circuits (AREA)

Abstract

본 발명에 따른 네트워크-온-칩은, 각각 파워 게이팅 스위치를 통해서 전원을 공급받는 복수의 라우터들, 그리고 상기 복수의 라우터들 각각으로부터 제공되는 온도 정보를 기반으로 상기 복수의 라우터들 각각의 파워 게이팅 스위치를 제어하고, 상기 복수의 라우터들의 구동 클록을 제어하는 컨트롤러를 포함하되, 상기 컨트롤러는 상기 온도 정보를 참조하여 적어도 하나의 제 1 라우터를 턴오프시키도록 상기 파워 게이팅 스위치를 제어하고, 턴온된 적어도 하나의 제 2 라우터의 클록 주파수를 오버-스케일링(Over-scaling)한다.

Description

온도-효과-역전 현상을 사용하는 네트워크-온-칩 및 그것의 동작 방법{NETWORK-ON-CHIP USING TEMPERATURE-EFFECT-INVERSION AND OPERATION METHOD THEREOF}
본 발명은 전자 회로에 관한 것으로, 더욱 상세하게는 온도-효과-역전을 사용하는 네트워크-온-칩(NoC) 및 그것의 동작 방법에 관한 것이다.
최근, 시스템-온-칩(SoC)에 집적되는 하드웨어 모듈(Intellectual Property: IP)의 수가 급격히 증가하고 있다. 따라서, 하드웨어 모듈들을 연결해주는 커뮤니케이션 아키텍처의 중요성도 높아지고 있다. 시스템-온-칩(SoC)에서는 버스(Bus)를 시스템-온-칩(SoC) 내부의 인터커넥터로 사용하였다. 하지만, 버스의 데이터 교환 프로토콜은 데이터 전송 속도 및 처리량에 있어서 한계를 보이고 있다. 이러한 한계에 대한 돌파구로 하드웨어 모듈의 급격한 증가에도 높은 확장성을 제공하는 네트워크-온-칩(NoC)이 제안 되었고, 점차 일반화되고 있다.
하지만, 하드웨어 모듈의 수가 많아지고, 그에 따른 커뮤니케이션 처리량도 증가함에 따라 네트워크-온-칩이 사용하는 전력량은 전체 단일칩 시스템의 30~40%나 되는 것으로 알려져 있다. 따라서, 시스템의 소모 전력을 줄이기 위해서는 네트워크-온-칩이 소모하는 전력을 줄이는 것이 중요한 이슈로 떠오르고 있다.
본 발명의 목적은 온도-효과-역전(Temperature-Effect-Inversion: 이하, TEI) 현상을 이용하여, 소모 전력을 줄일 수 있는 네트워크-온-칩을 제공하는데 있다. 더불어, 본 발명은 온도-효과-역전(TEI) 현상을 사용하여 네트워크-온-칩의 설정을 최적화할 수 있는 방법을 제공하는데 있다.
본 발명의 실시 예에 따른 네트워크-온-칩은, 각각 파워 게이팅 스위치를 통해서 전원을 공급받는 복수의 라우터, 그리고 상기 복수의 라우터 각각으로부터 제공되는 온도 정보를 기반으로 상기 복수의 라우터 각각의 파워 게이팅 스위치를 제어하고, 상기 복수의 라우터의 구동 클록을 제어하는 컨트롤러를 포함하되, 상기 컨트롤러는 상기 온도 정보를 참조하여 적어도 하나의 제 1 라우터를 턴오프시키도록 상기 파워 게이팅 스위치를 제어하고, 턴온된 적어도 하나의 제 2 라우터의 클록 주파수를 오버-스케일링(Over-scaling)한다.
이 실시 예에서, 상기 오버-스케일링 된 클록 주파수는 온도가 증가함에 따라 신호 지연이 감소하는 온도-효과 역전(Temperature-Effect-Inversion) 현상을 기반으로 상기 적어도 하나의 제 1 라우터의 기능까지 수행할 수 있는 성능을 제공하기 위한 값으로 결정된다.
이 실시 예에서, 상기 복수의 라우터는 각각의 온도 정보를 제공하기 위한 온도 센서를 각각 포함한다.
본 발명의 실시 예에 따른 네트워크-온-칩의 동작 방법은, 상기 네트워크-온-칩에 포함되는 복수의 라우터들의 온도를 검출하는 단계, 상기 검출된 온도를 기반으로 소비 전력을 감소시키기 위하여 상기 복수의 라우터들 중에서 턴오프될 라우터들을 결정하는 단계, 그리고 상기 검출된 온도를 기반으로 상기 복수의 라우터들 중 턴온된 라우터들의 클록 주파수를 설계 최대 주파수보다 높은 값으로 오버-스케일링하는 단계를 포함하되, 상기 복수의 라우터들은 온도가 증가함에 따라 신호 지연이 감소하는 회로 소자를 포함한다.
이 실시 예에서, 상기 턴온된 라우터들 중에서 최적의 라우팅 경로를 결정하기 위한 가변 라우팅(Configurable routing)을 수행하는 단계를 더 포함한다.
이 실시 예에서, 상기 턴오프될 라우터들을 결정하는 단계에서, 상기 네트워크-온-칩의 중심으로부터 먼 거리에 있는 라우터들이 우선적으로 턴오프되도록 선택된다.
본 발명에 따르면, 온도-효과-역전(TEI) 현상이 생기는 영역에서 발생하는 속도의 이익만큼 다른 영역의 전력을 줄이도록 네트워크-온-칩을 설정할 수 있다. 따라서, 네트워크-온-칩의 성능을 그대로 유지하면서 소모 전력을 줄일 수 있다.
도 1 및 도 2는 온도-효과-역전 현상을 보여주는 그래프들이다.
도 3은 본 발명의 실시 예에 따른 네트워크-온-칩의 토폴로지를 예시적으로 보여주는 도면이다.
도 4는 본 발명의 다른 실시 예에 따른 네트워크-온-칩의 토폴로지를 보여주는 도면이다.
도 5는 본 발명의 실시 예에 따른 라우터의 예시적인 구조를 간략히 보여주는 블록도이다.
도 6은 도 3 또는 도 4에 도시된 노드의 구조를 예시적으로 보여주는 블록도이다.
도 7은 본 발명의 컨트롤러의 구조를 간략히 보여주는 블록도이다.
도 8은 본 발명의 네트워크-온-칩의 파워 게이팅(PG), 전압 스케일링(VS), 주파수 오버-스케일링(FOS)을 적용하는 방식을 예시적으로 보여주는 블록도이다.
도 9는 본 발명의 온도-효과-역전(TEI) 현상을 이용하는 파워 게이팅 및 주파수 오버-스케일링 방법을 간략히 보여주는 순서도이다.
도 10은 본 발명의 주파수 오버-스케일링 기법을 예시적으로 보여주는 테이블이다.
도 11은 도 10에서 설명된 온도-효과-역전 알고리즘을 예시적으로 보여주는 순서도이다.
도 12는 본 발명의 온도-효과-역전 효과를 이용하여 네트워크-온-칩의 소모 전력을 줄이기 위한 PGFOS 알고리즘을 보여준다.
도 13은 도 12에서 언급된 최적 라우팅 경로(Routing path)를 찾는 함수 'FIND_ROUTING _PATHS(rpg)'의 동작을 예시적으로 보여주는 도면이다.
도 14는 온도-효과-역전 효과를 이용하여 네트워크-온-칩의 소모 전력을 줄이기 위한 PGFOS 알고리즘의 다른 예를 보여준다.
이하에서, 첨부된 도면들을 참조하여 본 발명의 실시 예들이 상세하게 설명된다. 이하의 설명에서, 상세한 구성들 및 구조들과 같은 세부적인 사항들은 단순히 본 발명의 실시 예들의 전반적인 이해를 돕기 위하여 제공된다. 그러므로 본 발명의 기술적 사상 및 범위로부터의 벗어남 없이 본문에 기재된 실시 예들의 변형들은 당업자에 의해 수행될 수 있다. 더욱이, 잘 알려진 기능들 및 구조들에 대한 설명들은 명확성 및 간결성을 위하여 생략된다. 본문에서 사용된 용어들은 본 발명의 기능들을 고려하여 정의된 용어들이며, 특정 기능에 한정되지 않는다. 용어들의 정의는 상세한 설명에 기재된 사항을 기반으로 결정될 수 있다.
이하의 도면들 또는 상세한 설명에서의 모듈들은 도면에 도시되거나 또는 상세한 설명에 기재된 구성 요소 이외에 다른 것들과 연결될 수 있다. 모듈들 또는 구성 요소들 사이의 연결은 각각 직접적 또는 비직접적일 수 있다. 모듈들 또는 구성 요소들 사이의 연결은 각각 통신에 의한 연결이거나 또는 물리적인 접속일 수 있다.
상세한 설명에서 사용되는 부 또는 유닛(unit), 모듈(module), 계층(layer) 등의 용어를 참조하여 설명되는 구성 요소들은 소프트웨어, 또는 하드웨어, 또는 그것들의 조합의 형태로 구현될 수 있다. 예시적으로, 소프트웨어는 기계 코드, 펌웨어, 임베디드 코드, 및 애플리케이션 소프트웨어일 수 있다. 예를 들어, 하드웨어는 전기 회로, 전자 회로, 프로세서, 컴퓨터, 집적 회로, 집적 회로 코어들, 압력 센서, 관성 센서, 멤즈(MEMS; microelectromechanical system), 수동 소자, 또는 그것들의 조합을 포함할 수 있다.
다르게 정의되지 않는 한, 본문에서 사용되는 기술적 또는 과학적인 의미를 포함하는 모든 용어들은 본 발명이 속하는 기술 분야에서의 당업자에 의해 이해될 수 있는 의미를 갖는다. 일반적으로 사전에서 정의된 용어들은 관련된 기술 분야에서의 맥락적 의미와 동등한 의미를 갖도록 해석되며, 본문에서 명확하게 정의되지 않는 한, 이상적 또는 과도하게 형식적인 의미를 갖도록 해석되지 않는다.
도 1 및 도 2는 온도-효과-역전 현상을 보여주는 그래프들이다. 도 1은 온도와 반도체 회로의 지연의 관계를, 도 2는 온도와 반도체 회로에서의 전력의 크기 관계를 예시적으로 보여주는 그래프들이다.
온도-효과-역전(TEI) 현상은 반도체 회로에서 온도와 지연 간의 관계가 일반적으로 알려진 것과 정반대로 나타나는 현상을 의미한다. 일반적으로 온도-효과-역전(TEI) 현상은 MOSFET 기반, 그리고 1V 이하의 초저전압(ULV; Ultra Low Voltage)으로 구동되는 회로 또는 차세대 반도체 공정인 FinFET(Fin-Field Effect Transistor) 기반의 회로에서 발생한다. 일반적인 회로에서는 온도가 높아질수록 지연이 증가하여 회로의 속도가 낮아진다. 하지만, 상술한 초저전압 회로나 FinFET 회로에서는 온도가 높아질수록 지연이 줄어들고, 그 결과로 회로의 속도가 증가하는 현상이 발생한다. 본 발명에서는 이러한 온도-효과-역전(TEI) 현상이 네트워크-온-칩(NoC)의 성능의 감소없이도 저전력화를 구현하기 위한 대안으로 사용될 것이다.
도 1을 참조하면, 회로의 구동 전압(Vdd)별 온도와 지연의 상대적 특징을 복수의 곡선들(C11, C12, C13, C14)로 도시하였다. 구동 전압(Vdd=0.35V)에서 온도에 따른 지연의 크기를 도시한 곡선(C11)을 참조하면, 100℃ 이상의 온도에서는 온도에 따른 지연의 크기 변화가 거의 관찰되지 않는다. 하지만, 25℃ 이하에서는 상대적으로 온도에 변화에 따른 지연의 크기 변화는 커진다. 구동 전압(Vdd=0.40V)에서 온도에 따른 지연의 크기를 도시한 곡선(C12)을 참조하면, 50℃ 이하의 온도에서는 온도에 따른 지연의 크기 변화가 관찰된다. 이러한 특성은 구동 전압(Vdd)의 크기가 낮을수록 현저하게 관찰된다.
상술한 온도에 따른 지연의 크기 특성은 회로의 구동 온도가 상승하는 경우, 구동 전압(Vdd)을 낮게 스케일링하면, 회로의 성능을 일정하게 유지시킬 수 있음을 의미한다. 또한, 초저전압 회로에서 온도가 높아질수록 지연이 줄어들게 되며, 따라서 회로의 구동 클록 주파수를 더 높게 제공하여 성능을 향상시킬 수 있음을 의미한다.
도 2를 참조하면, 회로의 구동 전압(Vdd)별 온도와 소비 전력의 상대적 특징을 복수의 곡선들(C21, C22, C23, C24)로 도시하였다. 구동 전압(Vdd=0.35V)에서 온도에 따른 소모 전력의 크기를 도시한 곡선(C21)을 참조하면, 온도가 증가할수록 소모되는 전력도 증가한다. 하지만, 곡선(C21)은 구동 전압(Vdd=0.50)에서 온도에 따른 소모 전력의 크기를 도시한 곡선(C24)보다 전력의 증가폭이 적다. 이것은 초저전압 회로에서는 온도가 증가하더라도 상대적인 소모 전력의 증가는 크지 않음을 의미한다.
본 발명에서는 상술한 온도-효과-역전(TEI) 현상을 이용하여 칩 내에서 상대적으로 많은 전력을 소모하는 네트워크-온-칩(NoC)의 전력을 줄일 수 있는 기술이 제공될 것이다.
도 3은 본 발명의 실시 예에 따른 네트워크-온-칩의 토폴로지를 예시적으로 보여주는 도면이다. 도 3을 참조하면, 본 발명의 일 실시 예에 따른 네트워크-온-칩(100a)은 복수의 라우터들(R1~R16)과 적어도 하나의 컨트롤러(130)를 포함한다. 노드(120)는 네트워크를 구성하지는 않지만, 본 발명의 효과를 설명하기 위해 도시하였다.
복수의 라우터들(R1~R16)에 연결된 노드(120)는 예를 들면 특정 기능을 가진 하드웨어 블록(IP)들일 수 있다. 그리고 복수의 라우터들(R1~R16) 각각은 실시간으로 구동 온도를 센싱하여 네트워크를 통해서 전송할 수 있다. 이를 위하여 복수의 라우터들(R1~R16) 각각은 온도 센서를 포함할 것이다. 복수의 라우터들(R1~R16) 각각이 센싱한 온도 정보는 전송하는 라우터의 식별 정보와 함께 컨트롤러(130)에 전달될 수 있다.
컨트롤러(130)는 네트워크를 통해서 실시간으로 또는 주기적으로 전달되는 복수의 라우터들(R1~R16)의 온도 정보를 분석한다. 그리고 컨트롤러(130)는 분석된 정보를 이용하여 온도-효과-역전(TEI) 현상의 정도를 파악할 수 있다. 컨트롤러(130)는 파악된 정보를 기초로 복수의 라우터들(R1~R16) 중 일부의 전력을 차단하는 파워 게이팅을 조정한다. 그리고 조정된 파워 게이팅 상태에서의 최적의 성능을 위해 주파수 스케일링(Frequency scaling)을 수행할 수 있다. 더불어, 최적의 성능을 위해 전압 스케일링(Voltage scaling)이 사용될 수 있음은 잘 이해될 것이다. 전압 스케일링은 파워 도메인(Power domain) 단위로 수행될 수 있으며, 주파수 스케일링은 주파수 도메인 단위로 수행될 수 있을 것이다.
본 발명의 컨트롤러(130)는 복수의 라우터들(R1~R16)의 온도 정보를 사용하여 최적의 통신 경로들을 선택할 수 있다. 즉, 최적의 통신 경로를 제외한 라우터들의 전원을 차단하는 방식으로 파워 게이팅을 수행할 수 있다. 그리고 컨트롤러(130)는 파워 게이팅을 통해서 제공되는 전력의 이득을 선택된 라우터들의 동작 속도를 높이는데 기여하도록 주파수 스케일링 또는 전압 스케일링을 수행할 수 있다. 이러한 온도-효과-역전(TEI) 현상을 사용하는 네트워크-온-칩의 파워 게이팅, 전압 또는 주파수 스케일링 방법은 후술하는 도면들을 통해서 상세히 설명될 것이다.
상술한 도면의 기재된 네트워크-온-칩의 구성에 따르면, 컨트롤러(130)는 복수의 라우터들(R1~R16) 중 적어도 하나에 연결될 수 있다. 컨트롤러(130)가 연결되는 라우터는 복수의 라우터들(R1~R16) 중 최적의 연결 조건을 갖는 하나일 수 있다. 이 경우, 컨트롤러는 하나의 전용(Dedicated) 기능을 가진 하드웨어 블록(IP)으로 구현될 수 있다.
도 4는 본 발명의 다른 실시 예에 따른 네트워크-온-칩의 토폴로지를 보여주는 도면이다. 도 4를 참조하면, 본 발명의 다른 실시 예에 따른 네트워크-온-칩(100b)은 복수의 라우터들(R1~R16)과 적어도 하나의 컨트롤러(130)를 포함한다. 컨트롤러(130)는 이미 존재하는 노드를 사용하여 구현될 수 있다. 복수의 라우터들(R1~R16)은 온도 센서를 구비하고 있으며, 실시간으로 또는 주기적으로 센싱된 온도 정보를 컨트롤러(130)에 전송한다.
컨트롤러(130)는 복수의 라우터들(R1~R16)로부터 제공되는 온도 정보를 사용하여 최적의 통신 경로들을 선택할 수 있다. 즉, 컨트롤러(130)는 최적의 통신 경로를 제외한 라우터들의 전원을 차단하는 방식으로 파워 게이팅(Power Gating)을 수행할 수 있다. 그리고 컨트롤러(130)는 파워 게이팅을 통해서 제공되는 전력의 이득을 선택된 라우터들의 동작 속도를 높이는데 기여하도록 주파수 스케일링(Frequency Scaling: FS) 및 전압 스케일링(Voltage Scaling: VS)을 수행할 수 있다.
상술한 도면의 기재된 네트워크-온-칩(100b)의 구성에 따르면, 컨트롤러(130)는 복수의 라우터들(R1~R16)에 연결되는 노드들 중 어느 하나로 구현될 수 있다. 이 경우, 컨트롤러(130)를 구현하기 위해 어느 하나의 동작을 정의하는 소프트웨어로 본 발명의 컨트롤러(130)가 구현될 수 있을 것이다.
이상의 도 3 및 도 4를 통해서 본 발명의 네트워크-온-칩(100)의 예시적인 토폴로지가 설명되었다. 하지만, 본 발명의 네트워크-온-칩(100)을 구현하는데 토폴로지(Topology)의 제약은 존재하지 않는다. 상술한 예시에서는 4x4의 2차원 매시(2D Mesh) 구조의 네트워크-온-칩에 컨트롤러를 부가하여 온도-효과-역전 네트워크-온-칩(TEI-NoC)를 구성하였다. 하지만, 네트워크-온-칩의 형태는 1차원(1D), 2차원(2D), 3차원(3D)과 같이 차원의 제한 없이 구성될 수 있다. 더불어, 링(ring), 토러스(torus), 트리(tree) 형태의 네트워크-온-칩의 토폴로지에서도 본 발명의 구현이 가능하다. 그리고 4x4가 아닌 8x8이나 16x16 등 크기와 무관하게 도 3 및 도 4의 네트워크-온-칩의 구현이 가능함은 잘 이해될 것이다.
도 5는 본 발명의 실시 예에 따른 라우터의 예시적인 구조를 간략히 보여주는 블록도이다. 도 5를 참조하면, 라우터(110)는 크로스바 스위치(111), 입력 버퍼들(112, 1113, 114, 115, 116)을 포함할 수 있다. 더불어, 본 발명의 온도-효과-역전(TEI) 현상을 검출하기 위한 온도 센서(118)를 포함할 수 있다. 라우터(110)는 파워 게이팅 신호(PGC)에 따라 전원 라인(PL)으로부터 전원을 차단하는 파워 게이팅 스위치(PGS)를 더 포함할 수 있다. 그리고 스케일링된 주파수의 클록 신호(CLK)에 따라 라우터(110)가 동작할 것이다.
크로스바 스위치(111)는 입력 버퍼들(112, 1113, 114, 115, 116)로 수신되는 데이터를 라우팅 정책에 따라 출력단으로 전달한다. 입출력단의 스위칭은 도시되지는 않았지만 크로스바 스케줄러(미도시)를 통해서 스케줄링될 수 있다. 크로스바 스케줄러는 응용에 따라 여러 가지 스케줄링 알고리즘으로 구현될 수 있다. 예를 들면, 크로스바 스케줄러는 보편적으로 공평성을 최우선으로 중요시하는 라운드-로빈(Round-Robin) 알고리즘을 사용할 수 있다. 또는, 크로스바 스케줄러는 미리 정의된 우선순위를 따르는 고정-우선순위(FixedPriority) 알고리즘을 사용할 수도 있을 것이다.
입력 버퍼들(112, 1113, 114, 115, 116)은 복수의 채널들(E, W, S, N, L)로부터 제공되는 데이터를 버퍼링한다. 입력 버퍼들(112, 1113, 114, 115, 116)에 저장된 데이터는 크로스바 스위치(111)에 의해서 선택된 채널로 전달될 것이다.
온도 센서(118)는 네트워크-온-칩(100)의 특정 위치의 온도를 센싱한다. 특히, 온도 센서(118)는 라우터(110)가 위치한 국부의 온도를 센싱한다. 온도 센서(118)는 주기적으로 센싱된 온도 정보를 크로스바 스위치(111)를 통해서 컨트롤러(130)에 전송된다. 이때, 전송되는 온도 정보에는 해당 라우터(110)의 식별 정보가 포함될 것이다. 온도 센서(118)는, 예를 들면, 온도에 따라 변하는 기전력을 사용하는 열기전력형(또는, 열전쌍) 센서, 온도에 따라 변화하는 저항의 크기를 감지하는 열도전형 센서 등이 사용될 수 있다. 하지만, 온도 센서(118)의 온도 측정 방식은 여기에 국한되지 않으며 다양하게 적용될 수 있음은 잘 이해될 것이다.
파워 게이팅 스위치(PGS)는 컨트롤러(130)에서 제공되는 파워 게이팅 제어 신호(PGC)에 응답하여 라우터(110)의 전원을 차단한다. 파워 게이팅 스위치(PGS)는 네트워크-온-칩(100)을 구성하는 모든 라우터들에 포함될 수 있다. 그리고 컨트롤러(130)에 의해서 라우터들 각각의 파워 게이팅 스위치(PGS)가 제어될 수 있다. 파워 게이팅 스위치(PGS)가 비록 PMOS 트랜지스터로 도시되어 있으나, 본 발명은 여기에 국한되지 않는다. 다양한 스위칭 소자를 통해서 파워 게이팅 스위치(PGS)가 구현될 수 있음은 잘 이해될 것이다.
도 6은 도 3 또는 도 4에 도시된 노드의 구조를 예시적으로 보여주는 블록도이다. 도 6을 참조하면, 노드(120)는 기능 블록(IP)이나 복수의 기능 블록들을 포함하는 프로세서로 구성될 수 있다. 예를 들면, 노드(120)는 코어(121), L1 캐시(122), 기능 블록(IP, 123), L2 캐시(124), 그리고 네트워크 인터페이스(125), 버스(126)를 포함할 수 있다.
코어(121), L1 캐시들(122), L2 캐시(124)는 처리 요청되는 태스크를 처리할 수 있다. 코어(121)는 네트워크 인터페이스(125)를 통해서 처리 요청되는 다양한 태스크를 처리하여 네트워크 인터페이스(125)를 통해 출력할 수 있다. 출력된 데이터는 라우터(110)를 통해서 타깃 노드로 제공될 것이다. 기능 블록(IP, 123)은 다양한 목적에 부합되는 기능을 갖도록 제공될 수 있다. 노드(120)는 본 발명의 네트워크-온-칩의 구성에 포함되지 않는다. 그리고 라우터들의 전압 및 주파수 스케일링과는 별도로 관리되므로, 노드에 대한 구체적인 설명은 생략하기로 한다.
하지만, 도 4에서 설명된 토폴로지의 네트워크-온-칩(100b) 구조에서, 노드(120)에 로드되는 소프트웨어를 통해서 본 발명의 컨트롤러(110)의 기능이 수행될 수 있을 것이다.
도 7은 본 발명의 컨트롤러의 구조를 간략히 보여주는 블록도이다. 도 7을 참조하면, 컨트롤러(130)는 라우터 성능 모니터(131), 온도 조건 모니터(132), 최적화부(133), 파워 게이트 제어부(134), 전압 제어부(135), 그리고 주파수 제어부(136)를 포함한다.
라우터 성능 모니터(131)는 각 라우터들로부터 전송되는 성능 정보를 수신한다. 라우터 성능 모니터(131)는 최적화부(133)에 의해서 선택되고 전압 및 주파수가 조정된 라우터들의 성능을 피드백 받을 수 있다. 라우터 성능 모니터(131)는 피드백 받은 라우터들 각각의 성능을 취합하여 라우터 성능 정보(R_PI)로 생성할 수 있다. 생성된 라우터 성능 정보(R_PI)는 최적화부(133)에 제공될 것이다.
온도 조건 모니터(132)는 각각의 라우터들의 온도 정보를 수신한다. 라우터들 각각의 위치에는 대응하는 온도 센서가 포함된다. 따라서, 온도 조건 모니터(132)는 각각의 라우터들의 온도 정보를 수신하여 라우터 온도 정보(R_TI)로 최적화부(133)에 제공한다. 온도 조건 모니터(132)는 온도 센서들로부터 제공되는 온도 정보를 실시간으로 받을 수도 있지만, 주기적으로 수신할 수 있다.
최적화부(133)는 라우터들 각각의 온도 정보를 이용하여 네트워크-온-칩의 전력 제어 및 성능 제어를 수행한다. 즉, 최적화부(133)는 라우터들 각각의 온도 정보를 이용하여 칩 또는 네트워크-온-칩의 온도 분포를 파악할 수 있다. 칩의 온도 분포를 알면, 라우터들 각각의 온도 정보로부터 네트워크-온-칩을 구성하는 라우터들의 온도-효과-역전(TEI)의 정도를 파악할 수 있다. 그리고 최적화부(133)는 파악된 결과를 사용하여 특정 라우터들의 파워를 차단하도록 파워 게이트 제어부(134)를 제어한다. 이어서, 최적화부(133)는 가상 채널을 구성하는 라우터들의 동작 속도를 제어하기 위하여 전압 제어부(135)나 주파수 제어부(136)를 제어할 것이다. 최적화부(133)에 의한 온도-효과-역전(TEI) 현상을 고려한 라우터들의 파워 차단, 전압 또는 주파수의 결정 동작은 후술하는 도면들을 통해서 상세히 설명될 것이다.
최적화부(133)는 칩의 온도 분포를 사용하여 온도-효과-역전(TEI)의 정도를 검출할 수 있다. 그리고 최적화부(133)는 검출 결과를 이용하여 특정 라우터들의 전원을 차단하기 위하여 파워 게이트 제어부(134)를 제어할 수 있다. 또는, 최적화부(133)는 파워 도메인과 클록 도메인을 제어하는 방식으로 라우터들의 특정 부분의 동작 속도를 높이거나 낮추도록 전압 제어부(136) 또는 주파수 제어부(136)를 제어할 수 있다.
파워 도메인과 클록 도메인은 네트워크-온-칩이나 이것을 포함하는 칩을 설계할 때 결정되며, 최적화부(133)는 파워 도메인과 클록 도메인 단위로 전압 및 주파수를 제어할 수 있다. 하지만, 최적화부(133)가 파워 도메인이나 클록 도메인 단위가 아닌 개별 라우터들의 클록 주파수 또는 구동 전압의 레벨을 제어할 수도 있음은 잘 이해될 것이다. 최적화부(133)는 결정된 상태(Status)로 네트워크-온-칩을 설정하도록 파워 게이트 제어부(134), 전압 제어부(135), 그리고 주파수 제어부(136)에 통지할 것이다. 그리고 최적화부(133)는 설정된 이후의 네트워크-온-칩의 성능은 라우터 성능 모니터(131)를 통해서 피드백 받을 수 있다.
파워 게이트 제어부(134)는 최적화부(133)의 결정에 따라 네트워크-온-칩을 구성하는 라우터들의 전원을 차단하거나 연결한다. 즉, 파워 게이트 제어부(134)는 선택된 라우터들의 파워 게이팅 스위치를 제어하여 선택된 라우터들을 턴-오프(Turn-off)시킬 수 있다. 예시적으로 파워 게이트 제어부(134)는 네트워크-온-칩을 구성하는 라우터들 각각의 파워 게이팅 스위치(PSG)를 개별적으로 스위칭할 수도 있을 것이다. 또는, 파워 게이트 제어부(134)는 미리 결정된 구역 단위로 라우터들의 파워 게이팅 스위치(PGS)를 제어할 수 있을 것이다. 파워 게이트 제어부(134)에서 제공되는 파워 게이트 제어 신호들(PGSs)의 수는 l 개(l은 자연수)로 나타내었다.
전압 제어부(135)는 온도-효과-역전(TEI) 현상에 따라 가상 채널을 구성하는 라우터들에 공급되는 전압을 스케일링할 수 있다. 턴오프된 라우터들이 수행하지 못하는 일을 턴온된 라우터들이 수행해야 하기 때문에, 전압 제어부(135)는 턴온 상태로 유지되는 라우터들의 전압을 높여서 동작 속도를 높일 수 있다. 전압 제어부(135)에서 제공되는 전압 제어 신호(VSC)는 파워 도메인의 수에 해당하는 m 개(m은 자연수)로 출력될 수 있다.
주파수 제어부(136)는 온도-효과-역전(TEI) 현상에 따라 가상 채널을 구성하는 라우터들에 공급되는 클록 신호의 주파수를 스케일링할 수 있다. 턴오프된 라우터들이 수행하지 못하는 일을 턴온된 라우터들이 수행해야 하기 때문에, 주파수 제어부(136)는 온도-효과-역전(TEI) 현상을 이용하는 경우 턴온 상태로 유지되는 라우터들의 클록 주파수를 높여서 성능을 최대로 높일 수 있다. 이때의 주파수는 라우터의 설계시 결정된 주파수 이상의 주파수로 제공될 것이다. 이러한 주파수 제어부(136)의 클록 주파수 제어 방식을 주파수 오버-스케일링(Frequency over-scaling: 이하, FOS)이라 칭하기로 한다. 주파수 제어부(136)에서 생성되는 클록의 주파수 제어 신호(FSC)는 클록 도메인의 수에 해당하는 n 개(n은 자연수)로 제공될 수 있을 것이다.
본 발명의 온도-효과-역전(TEI) 현상을 이용하여 특정 라우터들의 전원을 차단하고, 차단되지 않은 라우터들의 성능을 극대화하기 위하여 전압 스케일링(VS) 또는 주파수 오버-스케일링(FOS)이 수행될 수 있다.
도 8은 본 발명의 네트워크-온-칩의 파워 게이팅(PG), 전압 스케일링(VS), 주파수 오버-스케일링(FOS)을 적용하는 방식을 예시적으로 보여주는 블록도이다. 도 8을 참조하면, 컨트롤러(130)는 온도-효과-역전(TEI) 현상을 이용하여 전력을 줄이고도 성능을 유지하거나 높일 수 있도록 파워 게이팅과 주파수 오버-스케일링을 동시에 수행하는 동작을 수행할 수 있다. 이러한 동작을 이하에서는 PGFOS(Power Gating with Frequency Over-Scaling)이라 칭하기로 한다.
컨트롤러(130)는 먼저 온도-효과-역전(TEI) 현상을 참조하여 결정된 라우터들의 전원을 차단하기 위한 파워 게이팅 제어 신호(PGSs)를 생성할 것이다. 그리고 생성된 파워 게이팅 제어 신호들(PGSs)을 사용하여 라우터들 각각의 파워 게이팅 스위치(PGS)를 제어할 것이다. 그러면, 전력 소모를 줄이기 위해 선택된 최적 가상 채널을 구성하는 라우터들을 제외한 일부 라우터들이 턴-오프될 것이다.
컨트롤러(130)는 이어서 턴온 상태로 유지되는 라우터들의 전압 및 클록 주파수를 제어하기 위한 전압 제어 신호(VSC) 및 주파수 제어 신호(FSC)를 도메인 단위로 출력한다. 파워 도메인과 주파수 도메인은 동일하지 않게 할당될 수 있다. 하지만, 설명의 편의를 위해 본 발명에서는 동일한 영역으로 할당되는 것으로 가정하기로 한다. 예를 들면, 라우터들은 제 1 도메인(146)과 제 2 도메인(156)으로 분리되어 전압 및 클록 주파수가 제공될 수 있다.
제 1 도메인(146)의 제 1 주파수 도메인 및 제 1 파워 도메인으로 간주될 수 있다. 즉, 제 1 도메인(146)의 라우터들(R1~R8)에 제공되는 전압은 제 1 DC-DC 컨버터(142)로부터 생성된다. 따라서, 제 1 도메인(146)의 라우터들(R1~R8) 중에서 턴온 상태로 유지되는 라우터들에는 제 1 DC-DC 컨버터(142)가 제공하는 제 1 전원 전압(VN1)이 제공될 것이다. 제 1 도메인(146)의 라우터들(R1~R8)에 제공되는 제 1 구동 클록(CLK1)은 제 1 클록 생성기(144)에서 생성된다.
제 2 도메인(156)의 제 2 주파수 도메인 및 제 2 파워 도메인으로 간주될 수 있다. 즉, 제 2 도메인(156)의 라우터들(R9~R16)에 제공되는 전압은 제 2 DC-DC 컨버터(152)로부터 생성된다. 따라서, 제 2 도메인(156)의 라우터들(R9~R16) 중에서 턴온 상태로 유지되는 라우터들에는 제 2 DC-DC 컨버터(152)가 제공하는 제 2 전원 전압(VN2)이 제공될 것이다. 제 2 도메인(156)의 라우터들(R9~R16)에 제공되는 제 2 구동 클록(CLK2)은 제 2 클록 생성기(154)에서 생성된다.
컨트롤러(130)는 온도-효과-역전(TEI) 현상을 참조하여 선택된 라우터들의 성능을 높이기 위하여 도메인 단위로 전압 또는 구동 클록의 주파수를 제어할 것이다. 제 1 도메인(146)의 전압을 높이기 위해서는 컨트롤러(130)는 제 1 DC-DC 컨버터(142)에 제공되는 전압 제어 신호(VSC)를 사용하여 높은 레벨의 구동 전압(VN1)을 생성하도록 제어할 것이다. 마찬가지로, 컨트롤러는 온도-효과-역전(TEI) 현상을 검출하여 제 2 도메인(156)에서 선택된 라우터들의 클록 주파수를 높이기 위해서, 클록 신호의 주파수를 타깃 레벨로 상승하도록 제 2 클록 생성기(154)를 제어할 수 있을 것이다.
상술한 본 발명의 컨트롤러(130)의 특징에 따르면, 온도-효과-역전(TEI) 현상을 사용한 PGFOS(Power Gating with Frequency Over-Scaling)를 수행할 수 있다. 라우터들 중에서 온도-효과-역전(TEI) 현상이 감지되면, 감지된 라우터들을 활용하기 위하여 턴오프되는 최적의 라우터들이 선택된다. 그리고 턴온된 라우터들을 통해서 최적의 성능을 도출할 수 있는 전압이나 주파수가 도출될 수 있다. 턴오프된 라우터들의 업무를 턴온된 라우터들이 감당할 수 있기 위해서는 온도-효과-역전(TEI) 현상을 활용한 최대 대역의 주파수가 설정될 수 있다. 따라서, 본 발명의 PGFOS에 따르면, 턴오프된 라우터들이 감당할 업무를 턴온 상태의 라우터들의 주파수 오버-스케일링을 통해서 처리될 수 있다. 따라서, 본 발명의 온도-효과-역전(TEI) 현상을 이용하여, 파워 게이팅 및 주파수 오버-스케일링을 사용하면, 성능의 저하없이 소모 전력을 높일 수 있다. 또는, 본 발명의 온도-효과-역전(TEI) 현상을 이용하여, 파워 게이팅 및 주파수 오버-스케일링을 사용하면, 소모 전력의 증가없이 네트워크-온-칩의 성능을 높일 수 있을 것이다.
도 9는 본 발명의 온도-효과-역전(TEI) 현상을 이용하는 파워 게이팅 및 주파수 오버-스케일링 방법을 간략히 보여주는 순서도이다. 도 9를 참조하면, 본 발명의 컨트롤러(130)가 수행하는 거시적인 PGFOS 동작이 예시적으로 도시되어 있다.
S110 단계에서, 컨트롤러(130, 도 8 참조) 또는 좀더 구체적으로는 컨트롤러(130) 내부의 최적화부(133)는 네트워크-온-칩의 각 라우터들로부터 제공되는 온도 정보를 수신한다. 앞서 설명되었듯이, 네트워크-온-칩의 라우터들 각각에는 온도 센서(118, 도 5 참조)가 구비되어 있다. 라우터들 각각에 구비된 온도 센서(118)에 의해서 실시간으로 획득된 온도 정보는 컨트롤러(130)에 전달된다. 그러면, 컨트롤러(130)의 온도 조건 모니터(132)에서 취합하여 최적화부(133)에 전달한다.
S120 단계에서, 최적화부(133)는 네트워크-온-칩의 각 라우터들의 현재 온도에 변화가 있는지 판단한다. 이전의 PGFOS 동작에 의해서 설정된 전압 및 주파수 상태에서 더이상 온도의 변화가 존재하지 않는 것으로 판단되면(No 방향), 절차는 S140 단계로 이동한다. 반면, 이전의 PGFOS 동작에 의해서 설정된 전압 및 주파수 상태에서 추가적인 온도 변화가 감지되면(Yes 방향), 절차는 S130 단계로 이동한다.
S130 단계에서, 최적화부(133)는 온도-효과-역전(TEI) 현상을 이용한 네트워크-온-칩의 파워 게이팅, 전압 스케일링, 주파수 스케일링을 수행하기 위한 최적화 동작을 수행한다. 이러한 최적화 동작을 온도-효과-역전(TEI) 알고리즘이라 칭하기로 한다. 즉, 최적화부(133)는 온도-효과-역전(TEI) 현상을 사용하여 라우터들의 소모 전력을 줄이고, 일부 라우터들의 성능을 최대한으로 높이기 위한 최적의 파라미터를 찾기 위한 최적화 연산을 수행한다. 그리고 최적화부(133)는 최적화 연산의 결과로 생성되는 라우터들의 파워 게이팅, 전압, 그리고 클록 주파수를 생성하도록 파워 게이트 제어부(134), 전압 제어부(135), 그리고 주파수 제어부(136)를 제어할 것이다.
S140 단계에서, 최적화부(133)는 이전의 PGFOS 사이클에 의해서 설정된 전압 및 주파수 상태에서 온도의 변화가 없기 때문에, 일정 간격을 두고 온도 정보를 수신할 것이다. 즉, 최적화부(133)는 실시간으로 획득된 온도 정보를 다시 수신하기 위해 경과 시간이 기준 시간(Tref)을 초과했는지 판단할 것이다. 만일, 경과 시간이 기준 시간(Tref)을 초과하지 못한 경우(No 방향), 대기한다. 반면, 경과 시간이 기준 시간(Tref)을 초과한 경우(Yes 방향), 절차는 S110 단계로 복귀하여 실시간으로 획득된 온도 정보를 다시 수신할 것이다.
최적화 연산의 결과로 생성되는 라우터들의 파워 게이팅, 전압, 그리고 클록 주파수로 설정이 완료되면, 온도-효과-역전(TEI)을 활용하기 위한 하나의 제어 사이클이 완료된다. 하지만, 이러한 제어 사이클은 지속적으로 반복됨에 따라 온도 변화에 따라 최적 조건들은 변화하게 될 것이다.
도 10은 본 발명의 주파수 오버-스케일링 기법을 예시적으로 보여주는 테이블이다. 도 10을 참조하면, 네트워크-온-칩에서 성능을 유지하기 위한 파워 게이팅과 주파수 오버-스케일링의 관계를 예시적으로 보여준다. 여기서, 라우터들의 수가 64개 존재하고, 설계할 당시에 정의된 라우터의 최대 주파수가 50MHz라 가정하기로 한다.
만일, 파워 게이팅에 의해서 전원이 차단되는 라우터의 수가 존재하지 않는다면(0 개), 주파수 오버-스케일링은 수행될 필요가 없다. 즉, 전원이 공급되는 전체 64개의 라우터들 모두 50MHz로 구동되어도 성능은 유지된다.
반면, 전체 라우터들 중에서 4개의 라우터들(6%)이 파워 게이팅에 의해서 턴오프되면, 성능을 유지하기 위해서는 남아있는 라우터들(60 개)의 주파수는 60MHz로 오버 스케일링 되어야 한다. 이러한 방식으로, 파워 게이팅에 의해서 24개의 라우터들(38%)이 턴오프되면, 성능을 유지하기 위해서는 남아있는 라우터들은 75MHz의 클록 주파수로 오버-스케일링 되어야 한다.
본 발명에서는 이러한 성능을 유지하기 위한 주파수 오버-스케일링을 사용하여 감소된 전력에도 불구하고 성능은 유지될 수 있는 파워 게이팅 및 주파수 오버-스케일링(PGFOS)을 수행할 수 있다.
도 11은 도 10에서 설명된 온도-효과-역전 알고리즘을 예시적으로 보여주는 순서도이다. 도 11을 참조하면, 컨트롤러(130, 도 7)는 검출된 온도 분포에서의 전력 감소 또는 성능 향상을 위한 주파수 스케일링을 수행할 수 있다.
S210 단계에서, 컨트롤러(130)는 온도 분포 정보(dt)와 타깃 전력(tp)을 제공받을 수 있다. 컨트롤러(130)는 온도 분포 정보(dt)를 각 라우터들로부터 주기적으로 제공받을 수 있다. 더불어, 컨트롤러(130)는 외부에서 제공되거나 자체적으로 결정한 타깃 전력(tp)의 크기를 수신한다.
S220 단계에서, 컨트롤러(130)는 다양한 파워 게이팅, 전압, 클록 주파수 조건에서 소모 전력의 크기(p)를 계산하는 방법으로 온도-효과-역전 알고리즘을 수행한다. 예를 들면, 주어진 온도 분포 정보(dt) 하에서 다양한 전압 조건(v) 및 주파수 조건(f), 그리고 다양한 파워 게이팅 조건을 변경하면서 소모 전력을 계산할 수 있다. 이때, 주파수는 설계된 허용 주파수 이상으로 높이는 오버-스케일링 기법을 사용할 수 있다.
S230 단계에서, 컨트롤러(130)는 최적화 계산을 통해 도출된 소모 전력들 중에서 타깃 전력보다 낮은 전력을 도출할 수 있는 파워 게이팅, 전압, 클록 주파수가 선택될 수 있다. 그리고 컨트롤러(130)는 선택된 파워 게이팅 조건, 전압, 클록 주파수 조건들 중에서 최적의 성능이나 전력 특성에 대응하는 조건을 선택할 것이다.
S240 단계에서, 컨트롤러(130)는 선택된 파워 게이팅 조건에 대응하는 라우터들을 턴오프시킬 것이다. 즉, 컨트롤러(130)는 턴오프될 라우터들의 파워 게이팅 스위치(PGS)를 턴오프하도록 파워 게이팅 제어 신호(PGS)를 출력할 것이다.
S250 단계에서, 컨트롤러(130)는 라우터들의 파워 게이팅 조건, 전압, 클록 주파수를 저장하는 라우팅 테이블을 현재 설정된 조건으로 업데이트할 것이다.
이상에서는 컨트롤러(130)에 수행되는 온도-효과-역전 알고리즘의 절차를 예시적으로 살펴보았다. 하지만, 온도-효과-역전 알고리즘은 상술한 예시에 국한되지 않으며, 네트워크-온-칩의 소모 전력과 주파수 간의 다양한 옵션 조정이 가능함을 잘 이해될 것이다.
도 12는 본 발명의 온도-효과-역전 현상을 이용하여 네트워크-온-칩의 소모 전력을 줄이기 위한 PGFOS 알고리즘을 보여준다. 도 12를 참조하면, 본 발명의 컨트롤러에서 수행되는 온도-효과-역전 현상을 이용하는 PGFOS 알고리즘의 가장 기본적인 절차(TEI_NOC_BASIC)가 도시되어 있다. 여기서, PGFOS 알고리즘에서는 전압 스케일링(Voltage scaling) 절차까지 설명되어 있으나, 본 발명은 전압 스케일링은 고려하지 않아도 무관하다.
알고리즘의 라인 2 내지 6에는 변수들에 대한 정의가 설명되어 있다. 변수 'tv'는 타깃 공급 전압, 변수 'tf'는 타깃 클록 주파수, 변수 'tr'은 턴오프되는 타깃 라우터들의 셋, 변수 'tri'는 타깃 라우터 정보, 변수 'tp'는 타깃 전력을 가리킨다. 알고리즘의 구동이 시작되면, 컨트롤러(130)는 온도 분포 정보(dt)와 타깃 전력(tp)을 각 라우터들로부터 전달받을 수 있다. 이러한 동작은 라인 8 및 라인 9에 도시되어 있다.
이어서, 라인 10 내지 라인 19에서는 현재의 온도 분포 정보(dt)에서 네트워크-온-칩의 소모 전력을 최소화시킬 수 있는 조건을 계산하는 반복문이 도시되어 있다. 여기서, 주어진 온도 조건에서 성능 감소없이 최소 전력을 구현할 수 있는 전압 스케일링, 파워 게이팅, 그리고 주파수 스케일링의 설정이 결정될 수 있다.
각각의 반복문들은 기본적으로 모든 전압 스케일링 조건, 주파수 스케일링 조건, 그리고 파워 게이팅 조건에 대해서 최소 전력을 구현하기 위한 최적의 조건을 찾는 최소 전력 함수 'FIND_A_SOLUTION(dt, v, f, rpg)'를 반복적으로 실행한다. 최소 전력 함수 'FIND_A_SOLUTION(dt, v, f, rpg)'에 대해서는 라인 25 내지 라인 45에 그 동작이 구체적으로 기술되어 있다. 최소 전력 함수 'FIND_A_SOLUTION(dt, v, f, rpg)'를 통해서 계산된 전압(v), 주파수(f), 턴오프되는 라우터 셋(rpg), 라우팅 정보(ri), 그리고 소모 전력(p)은 앞서 설명된 타깃 값들(tv, tf, tr, tri, tp)로 결정될 수 있다.
타깃 값들(tv, tf, tr, tri, tp)이 결정되면, 라우터들에 제공되는 전압(v) 및 주파수(f)가 타깃 전압(tv) 및 타깃 주파수(tf)로 설정된다. 이러한 전압과 주파수의 설정은 앞서 설명된 바와 같이 파워 도메인 또는 클록 도메인 단위로 수행될 수도 있을 것이다. 이러한 동작은 라인 20에서 설명하고 있다.
이어서, 컨트롤러(130)는 턴오프되는 라우터 셋(rpg)에 해당하는 라우터들의 파워 게이팅 스위치를 차단할 것이다. 그리고 컨트롤러(130)는 라우팅 테이블을 타깃 라우팅 정보(tri)로 업데이트할 것이다. 이러한 동작은 라인 21 및 라인 22에 설명되어 있다.
라인 25 내지 라인 45에서 기술된 최소 전력을 보장하기 위한 최소 전력 함수 'FIND_A_SOLUTION(dt, v, f, rpg)'는 설계 당시에 정의된 라우터의 최대 클록 주파수(fmax)보다 높은 주파수(f)에서 최적 라우팅 경로(Routing path)를 찾는 함수 'FIND_ROUTING _PATHS(rpg)'를 포함한다. 이러한 최적 라우팅 경로(Routing path)를 찾는 함수 'FIND_ROUTING _PATHS(rpg)' 후술하는 도 13에서 설명하기로 한다.
이상에서는 본 발명의 온도-효과-역전 현상을 사용하여 최소 전력을 달성하기 위한 본 발명의 PGFOS 알고리즘이 간략히 설명되었다. 여기서, 전압 스케일링 동작도 함께 설명되어 있으나, 본 발명은 전압 스케일링 동작을 동반하는 경우나 동반하지 않는 모든 경우에도 네트워크-온-칩의 저전력화를 효과적으로 달성할 수 있다.
도 13은 도 12에서 언급된 최적 라우팅 경로(Routing path)를 찾는 함수 'FIND_ROUTING _PATHS(rpg)'의 동작을 예시적으로 보여주는 도면이다. 도 13을 참조하면, 턴오프된 라우터들을 피해서 소스 노드에서 타깃 노드까지의 경로를 결정하고 라우터들을 설정하는 알고리즘이다. 이러한 알고리즘을 가변 라우팅(Configurable routing) 알고리즘이라 칭하기로 한다.
라인 2 내지 라인 4에는 변수들에 대한 정의가 설명되어 있다. 변수 'rpg'는 턴오프되는 라우터들의 셋을 나타내고, 변수 'b'는 구현 가능성(feasibility), 변수 'ri'는 라우터들의 정보를 가리킨다.
라인 7 내지 라인 12에서는 함수 'FIND_ROUTING _PATHS(rpg)'가 호출되면 반복되는 동작이 설명되어 있다. 모든 소스 노드(nodesrc)와 모든 타깃 노드(nodetgt) 사이에 형성될 수 있는 단일 경로를 찾기 위한 단일 경로 검색 함수 'FIND_SINGLE_PATH(rpg, nodesrc, nodetgt)'가 호출된다. 단일 경로 검색 함수 'FIND_SINGLE_PATH(rpg, nodesrc, nodetgt)'에 의해서 검색된 경로(path)는 라우팅 정보(ri)로 취합된다. 그리고 많은 후보 경로들(path) 중에서 사이즈가 상대적으로 작은 구현 가능한 라우팅 경로가 최적 라우팅 경로로 선택될 수 있다.
상술한 가변 라우팅(Configurable routing) 알고리즘에 따르면, 데드락이 걸리지 않도록 가상 채널의 개수를 고려하여 라우팅 경로를 결정할 수 있다. 그리고 결정된 경로에 따라 라우터의 동작이 설정될 것이다. 상술한 가변 라우팅은 다이나믹 프로그래밍 기법을 이용한 예시이다.
도 14는 온도-효과-역전 효과를 이용하여 네트워크-온-칩의 소모 전력을 줄이기 위한 PGFOS 알고리즘의 다른 예를 보여준다. 도 12의 알고리즘을 수행하기 위해서는 변수의 크기에 따라 이론적으로 기하급수적인 시간(Exponential time)이 걸려서 수행하는데 실용적으로 문제가 있을 수 있다. 일반적인 칩의 온도 분포에 따르면, 칩의 중간 부분이 가장자리 부분보다 온도가 높다. 그리고 네트워크-온-칩의 중간 부분에 위치하는 라우터를 턴오프하는 것보다 가장자리의 라우터를 턴오프하는 것이 경로 길이를 더 줄이는 것으로 알려져 있다. 이러한 사실을 이용하면 턴오프시킬 라우터를 고를 때 임의로 선택을 하는 것이 아니라, 가장자리의 차가운 라우터들부터 먼저 선택하도록 PGFOS 알고리즘을 최적화할 수 있다. 이렇게 최적화된 PGFOS 알고리즘에 따르면, 알고리즘은 다항시간(polynomial time) 알고리즘이 되어 구현 가능성이 높아질 수 있다.
최적화된 PGFOS 알고리즘에서는 도 12의 알고리즘에 변수 'listr'이 추가된다. 변수 'listr'는 칩의 가장자리 부분의 라우터들을 위치를 의미한다. 즉, 파워 게이팅시 라우터의 위치가 칩의 가장자리 부분일때 우선적으로 턴오프될 수 있음을 의미한다.
이상에서는 본 발명의 온도-효과-역전 현상을 사용하여 최소 전력을 달성하기 위한 본 발명의 최적화된 PGFOS 알고리즘이 간략히 설명되었다. 여기서, 전압 스케일링 동작도 함께 설명되어 있으나, 본 발명은 전압 스케일링 동작을 동반하는 경우나 동반하지 않는 모든 경우에도 네트워크-온-칩의 저전력화를 효과적으로 달성할 수 있다.
본 발명의 상세한 설명에서는 구체적인 실시 예에 관하여 설명하였으나, 본 발명의 기술적 사상에서 벗어나지 않는 범위 내에서 여러 가지 변형이 가능하다. 그러므로 본 발명의 범위는 상술한 실시 예에 국한되어 정해져서는 안되며 후술하는 특허청구범위뿐만 아니라 이 발명의 특허청구범위와 균등한 것들에 의해 정해져야 할 것이다.
100, 100a, 100b, 100c : 네트워크-온-칩
110 : 라우터
111 : 크로스바 스위치
112, 113, 114, 115, 116 : 입력 버퍼
118 : 온도 센서
120 : 노드
121 : 코어
122 : L1 캐시
123 : 기능 블록(IP)
124 : L2 캐시
125 : 네트워크 인터페이스
126 : 버스
130 : 컨트롤러
131 : 라우터 성능 모니터
132 : 온도 조건 모니터
133 : 최적화부
134 : 파워 게이트 제어부
135 : 전압 제어부
136 : 주파수 제어부
142 : 제 1 DC-DC 컨버터
144 : 제 1 클록 생성기
146 : 제 1 도메인
152 : 제 2 DC-DC 컨버터
154 : 제 2 클록 생성기
156 : 제 2 도메인

Claims (18)

  1. 네트워크-온-칩에 있어서:
    각각 대응하는 파워 게이팅 스위치를 통해서 전원을 공급받는 복수의 라우터들; 그리고
    상기 복수의 라우터들 각각으로부터 제공되는 온도 정보를 기반으로 상기 복수의 라우터들 각각의 파워 게이팅 스위치를 제어하고, 상기 복수의 라우터들의 구동 클록을 제어하는 컨트롤러를 포함하되,
    상기 컨트롤러는 상기 온도 정보를 참조하여 적어도 하나의 제 1 라우터를 턴오프시키도록 상기 파워 게이팅 스위치를 제어하고, 턴온된 적어도 하나의 제 2 라우터의 클록 주파수를 오버-스케일링(Over-scaling)하며,
    상기 오버-스케일링된 클록 주파수는 적어도 하나의 상기 제 2 라우터의 설계 최대 주파수보다 높고, 온도가 증가함에 따라 신호 지연이 감소하는 온도-효과 역전(Temperature-Effect-Inversion) 현상을 기반으로 상기 적어도 하나의 제 1 라우터의 기능까지 수행할 수 있는 성능을 제공하기 위한 값으로 결정되는 네트워크-온-칩.
  2. 삭제
  3. 삭제
  4. 제 1 항에 있어서,
    상기 복수의 라우터들은 상기 온도 정보를 제공하기 위한 온도 센서를 각각 포함하는 네트워크-온-칩.
  5. 제 1 항에 있어서,
    상기 복수의 라우터들은 핀펫(FinFET) 또는 1V 이하의 초저전압(ULV: Ultra Low Voltage)으로 구동되는 트랜지스터를 포함하는 네트워크-온-칩.
  6. 제 1 항에 있어서,
    상기 컨트롤러는 상기 복수의 라우터들 중 어느 하나와 연결되며, 상기 어느 하나의 라우터에 연결되는 노드와는 별도로 제공되는 네트워크-온-칩.
  7. 제 1 항에 있어서,
    상기 컨트롤러는 상기 복수의 라우터들 중 어느 하나의 라우터에 연결되는 노드에 상기 파워 게이팅 스위치 및 상기 구동 클록의 주파수를 제어하기 위한 소프트웨어로 로드되는 네트워크-온-칩.
  8. 제 1 항에 있어서,
    상기 컨트롤러는:
    상기 온도 정보를 모니터링하는 온도 조건 모니터;
    상기 복수의 라우터들 각각의 성능을 모니터링하는 라우터 성능 모니터; 그리고
    상기 온도 정보 및 상기 성능을 참조하여 상기 파워 게이팅 스위치 및 상기 구동 클록의 주파수를 결정하는 최적화부를 포함하는 네트워크-온-칩.
  9. 제 8 항에 있어서,
    상기 최적화부는 턴온된 상기 적어도 하나의 제 2 라우터가 최적의 신호 경로를 구성하도록 조정하는 가변 라우팅(Configurable routing)을 수행하는 네트워크-온-칩.
  10. 제 8 항에 있어서,
    상기 최적화부는 상기 복수의 라우터들에 제공되는 구동 전압의 레벨을 조정하는 전압 스케일링을 수행하는 네트워크-온-칩.
  11. 제 10 항에 있어서,
    상기 최적화부는 주파수 도메인 단위로 상기 구동 클록의 주파수를 제어하고, 파워 도메인 단위로 상기 전압 스케일링을 수행하는 네트워크-온-칩.
  12. 제 8 항에 있어서,
    상기 컨트롤러는:
    상기 최적화부의 제어에 따라 상기 적어도 하나의 제 1 라우터의 파워 게이팅 스위치를 턴오프시키고, 상기 적어도 하나의 제 2 라우터의 파워 게이팅 스위치를 턴온시키는 파워 게이트 제어부; 그리고
    상기 구동 클록의 주파수를 제어하는 주파수 제어부를 더 포함하는 네트워크-온-칩.
  13. 네트워크-온-칩의 동작 방법에 있어서:
    상기 네트워크-온-칩에 포함되는 복수의 라우터들의 온도를 검출하는 단계;
    상기 검출된 온도가 온도-효과-역전(TEI) 현상의 적용이 가능한 레벨인지 판단하는 단계;
    상기 검출된 온도를 기반으로 소비 전력을 감소시키기 위하여 상기 복수의 라우터들 중에서 턴오프될 라우터들을 결정하는 단계; 그리고
    상기 검출된 온도를 기반으로 상기 복수의 라우터들 중 턴온된 라우터들의 클록 주파수를 설계 최대 주파수보다 높은 값으로 오버-스케일링하는 단계를 포함하되,
    상기 복수의 라우터들은 온도가 증가함에 따라 신호 지연이 감소하는 회로 소자를 포함하는 동작 방법.
  14. 제 13 항에 있어서,
    상기 턴온된 라우터들 중에서 최적의 라우팅 경로를 결정하기 위한 가변 라우팅(Configurable routing)을 수행하는 단계를 더 포함하는 동작 방법.
  15. 제 13 항에 있어서,
    상기 오버-스케일링되는 주파수의 크기는 상기 턴오프될 라우터의 수에 따라 결정되는 동작 방법.
  16. 제 13 항에 있어서,
    상기 검출된 온도를 기반으로 상기 라우터들 각각에 제공되는 구동 전압의 레벨을 조정하는 단계를 더 포함하는 동작 방법.
  17. 삭제
  18. 제 13 항에 있어서,
    상기 턴오프될 라우터들을 결정하는 단계에서, 상기 네트워크-온-칩의 중심으로부터 먼 거리에 있는 라우터들이 우선적으로 선택되는 동작 방법.
KR1020170023687A 2016-10-13 2017-02-22 온도-효과-역전 현상을 사용하는 네트워크-온-칩 및 그것의 동작 방법 KR102244848B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US15/644,434 US10326647B2 (en) 2016-10-13 2017-07-07 Network-on-chip using temperature-effect-inversion and operation method thereof

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020160133025 2016-10-13
KR20160133025 2016-10-13

Publications (2)

Publication Number Publication Date
KR20180041039A KR20180041039A (ko) 2018-04-23
KR102244848B1 true KR102244848B1 (ko) 2021-04-27

Family

ID=62089222

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020170023687A KR102244848B1 (ko) 2016-10-13 2017-02-22 온도-효과-역전 현상을 사용하는 네트워크-온-칩 및 그것의 동작 방법

Country Status (1)

Country Link
KR (1) KR102244848B1 (ko)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102603299B1 (ko) 2017-12-08 2023-11-17 한국전자통신연구원 그래픽 처리 장치 및 이의 동작 방법
US12003146B2 (en) * 2020-03-02 2024-06-04 Falcon Power, LLC Cascade MosFet design for variable torque generator/motor gear switching
KR102462577B1 (ko) * 2021-02-16 2022-11-03 숭실대학교산학협력단 네트워크 온 칩 통신 장치 및 네트워크 온 칩 통신을 위한 라우터 장치

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090102534A1 (en) * 2004-07-19 2009-04-23 Technische Universitat Wien Decentralised fault-tolerant clock pulse generation in vlsi chips
US20120159496A1 (en) * 2010-12-20 2012-06-21 Saurabh Dighe Performing Variation-Aware Profiling And Dynamic Core Allocation For A Many-Core Processor
US20120175696A1 (en) * 2010-11-09 2012-07-12 North Carolina State University Multilayer floating gate field-effect transistor (fet) devices and related methods

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8661274B2 (en) * 2009-07-02 2014-02-25 Qualcomm Incorporated Temperature compensating adaptive voltage scalers (AVSs), systems, and methods
KR101975409B1 (ko) * 2012-07-26 2019-05-08 삼성전자주식회사 시스템 온 칩 및 그것의 온도 제어 방법

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090102534A1 (en) * 2004-07-19 2009-04-23 Technische Universitat Wien Decentralised fault-tolerant clock pulse generation in vlsi chips
US20120175696A1 (en) * 2010-11-09 2012-07-12 North Carolina State University Multilayer floating gate field-effect transistor (fet) devices and related methods
US20120159496A1 (en) * 2010-12-20 2012-06-21 Saurabh Dighe Performing Variation-Aware Profiling And Dynamic Core Allocation For A Many-Core Processor

Also Published As

Publication number Publication date
KR20180041039A (ko) 2018-04-23

Similar Documents

Publication Publication Date Title
US10326647B2 (en) Network-on-chip using temperature-effect-inversion and operation method thereof
KR102244848B1 (ko) 온도-효과-역전 현상을 사용하는 네트워크-온-칩 및 그것의 동작 방법
US8559315B2 (en) Communication network and method for operating a communication network
Chen et al. MP3: Minimizing performance penalty for power-gating of Clos network-on-chip
Chang et al. Regional ACO-based cascaded adaptive routing for traffic balancing in mesh-based network-on-chip systems
DiTomaso et al. Machine learning enabled power-aware network-on-chip design
KR102203669B1 (ko) NoC 구조의 반도체 장치 및 그의 라우팅 방법
JP2007179358A (ja) 情報処理装置及び再構成デバイスの利用方法
CA2437035A1 (en) Global interrupt and barrier networks
Mondal et al. Adaptive multi-voltage scaling in wireless NoC for high performance low power applications
JP2021506174A5 (ko)
CN107800570A (zh) 基于蝙蝠算法的sdn控制器部署方法
Farrokhbakht et al. UBERNoC: Unified buffer power-efficient router for network-on-chip
SB et al. Design and analysis of buffer and bufferless routing based NoC for high throughput and low latency communication on FPGA
Egidius et al. Programmable node in software-defined wireless sensor networks: A review
Narayana An artificial neural networks based temperature prediction framework for network-on-chip based multicore platform
Zhou et al. A router architecture with dual input and dual output channels for Networks-on-Chip
CN107135165B (zh) 一种软件定义网络中分布式控制器的自适应选择方法
Wu et al. NoC power optimization using combined routing algorithms
Alonso et al. Reducing power consumption in interconnection networks by dynamically adjusting link width
Mulajkar et al. 3D Torus Router Architecture For Efficient Network on Chip Design
Sangwan et al. Coverage and connectivity preserving routing in wireless sensor networks: A new approach
Wu et al. Q-Learning Based Bi-Objective Deadlock-Free Routing Optimization for Optical NoCs
US9336172B2 (en) Parallel computer system, data transfer device, and method for controlling parallel computer system for performing arbitration
Nguyen et al. The design of on-the-fly virtual channel allocation for low cost high performance on-chip routers

Legal Events

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