KR100721444B1 - 네트워크-온-칩 전력 제어 장치 및 그 방법 - Google Patents
네트워크-온-칩 전력 제어 장치 및 그 방법 Download PDFInfo
- Publication number
- KR100721444B1 KR100721444B1 KR1020060082205A KR20060082205A KR100721444B1 KR 100721444 B1 KR100721444 B1 KR 100721444B1 KR 1020060082205 A KR1020060082205 A KR 1020060082205A KR 20060082205 A KR20060082205 A KR 20060082205A KR 100721444 B1 KR100721444 B1 KR 100721444B1
- Authority
- KR
- South Korea
- Prior art keywords
- noc
- transaction
- clock
- modules
- packet
- 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/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/3237—Power saving characterised by the action undertaken by disabling clock generation or distribution
-
- 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/3287—Power saving characterised by the action undertaken by switching off individual functional units in the computer system
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
NoC 전력 제어 장치 및 그 방법이 개시된다. 본 발명의 NoC 전력 제어 장치는 마스터 또는 및 상기 마스터에 상응하는 모듈 중 어느 하나 이상으로부터 발생된 트랜잭션(transaction)을 모니터링하는 트랜잭션 모니터링부 및 상기 모니터링된 트랜잭션을 기반으로 하여 NoC(Network-on-Chip)를 구성하는 모듈들에 대한 클럭(clock)을 선택적으로 제어하는 클럭 제어부를 포함하는 것을 특징으로 한다. 따라서, 본 발명은 NoC의 소비 전력을 감소시킬 수 있다.
NoC, 버스, 클럭, AXI, 트랜잭션, NoC 패킷, 모니터링
Description
도 1은 일반적인 NoC의 구성에 대한 일 실시예도이다.
도 2는 본 발명에 따른 NoC 전력 제어 장치의 일 실시예 구성에 대한 블록도이다.
도 3은 본 발명에 따른 트랜잭션 발생 여부에 의한 클럭 제어를 설명하기 위한 일 예시도이다.
도 4는 본 발명에 따른 트랜잭션 발생 시 라우팅 경로에 따른 클럭 제어를 설명하기 위한 일 예시도이다.
도 5는 본 발명에 따른 NoC 전력 제어 장치의 다른 일 실시예 구성에 대한 블록도이다.
도 6은 도 5에 도시한 본 발명에 따른 NoC 전력 제어 장치에 대한 동작을 설명하기 위한 일 예시도이다.
도 7은 본 발명에 따른 NoC 전력 제어 방법에 대한 일 실시예 동작 흐름도이다.
도 8은 본 발명에 따른 NoC 전력 제어 방법에 대한 다른 일 실시예 동작 흐름도이다.
도 9는 본 발명에 따른 NoC 전력 제어 방법에 대한 또 다른 일 실시예 동작 흐름도이다.
도 10은 도 9에 도시한 S970 단계에 대한 일 실시예의 상세 동작 흐름도이다.
<도면의 주요 부분에 대한 부호의 설명>
220,520: NIM 230,530: 라우터 백본
240,540: NIS 260,560: 트랜잭션 모니터링부
270,570: 클럭 제어부 580: 패킷 모니터링부
본 발명은 NoC(Network-on-Chip) 전력 제어에 관한 것으로, 더욱 상세하게는 NoC를 구성하는 모듈들에 대한 클럭을 제어하는 NoC 전력 제어 장치 및 그 방법에 관한 것이다.
컴퓨터, 통신, 방송 등이 점차 통합되는 컨버전스(Convergence)화에 따라, 기존 ASIC(Application Specific IC: 주문형 반도체)과 ASSP(Application-Specific Standard Product: 특정용도 표준제품)의 수요가 SoC(System-on-Chip)로 전환되어 가고 있는 추세이다. 또한, IT(Information Technology)기기의 경박 단소화 및 고기능화 추세도 SoC 산업을 촉진시키는 요인이 되고 있다.
SoC는 기존의 여러가지 기능을 가진 복잡한 시스템을 하나의 칩으로 구현한 기술 집약적 반도체 기술이다. SoC의 현실화를 위해 많은 기술들이 연구되고 있으며, 특히 칩 내에 내재되어 있는 여러 지능소자(intellectual property: IP)들을 연결하는 방안이 매우 중요한 사항으로 대두되고 있다.
IP들을 연결하기 위한 기술로는 버스를 기반으로 한 연결 방식이 주를 이루고 있는 실정이다. 그러나, 칩의 집적도가 높아지고 IP간의 정보 흐름의 양이 급격히 증가함에 따라, 버스구조를 이용한 SoC는 그 구조적 한계에 도달하였다.
이와 같이 버스구조를 이용한 SoC의 구조적 한계를 해소하기 위한 방안으로, 일반적인 네트워크 기술을 칩 내에 응용하여 IP들을 연결하는 방식인 NoC(Network-on-Chip) 기술이 새롭게 제시되었다.
NoC는 기존 버스 구조의 구조적 한계를 극복하고자 만들어진 네트워크 형태의(network style) OCI(On-Chip Interconnect)로서, NoC를 통해 고속/고성능/저전력의 SoC를 구현할 수 있다.
SoC의 저전력화를 위해 종래에는 버스에 연결된 IP들의 클럭을 제어하는 방법이 제안되었다. 즉, 버스에 연결된 IP들 중 동작하지 않는 IP에 대한 클럭을 비활성화시킴으로써, 동적 전력 소비를 최소화하였다.
하지만, 종래 기술은 버스와 연결된 IP에 대한 전력 제어만을 고려할 뿐 버스 자체에서 불필요하게 소비되는 전력에 대해서는 전혀 고려하지 않았다.
따라서, 최신 버스의 일종인 NoC의 소비 전력을 최소화하여 SoC의 동적 소비 전력을 최소화할 수 있는 NoC 전력 제어 장치에 대한 필요성이 대두된다.
본 발명은 상술한 바와 같은 종래기술의 문제점을 해결하기 위해 안출된 것으로서, NoC로 입력되는 AXI(Advanced Extensible Interface) 트랜잭션을 모니터링하여 NoC의 구성 모듈들에 대한 클럭을 선택적으로 제어할 수 있는 NoC 전력 제어 장치 및 그 방법을 제공하는 것을 목적으로 한다.
또한, 본 발명은 라우터로 입력되는 NoC 패킷을 모니터링하여 구성 모듈들에 대한 클럭을 선택적으로 제어할 수 있는 것을 목적으로 한다.
또한, 본 발명은 AXI 트랜잭션이 발생한 경우 NoC 구성 모듈들에 대한 클럭을 활성화시키고, AXI 트랜잭션이 발생하지 않은 경우 NoC 구성 모듈들에 대한 클럭을 비활성화시켜 NoC에서 불필요하게 소모되는 전력을 줄이는 것을 목적으로 한다.
또한, 본 발명은 AXI 트랜잭션의 라우팅 경로에 포함된 모듈들에 대해서만 클럭만을 활성화시켜 NoC의 소비 전력을 줄이는 것을 목적으로 한다.
또한, 본 발명은 NoC 패킷의 라우팅 경로에 포함된 모듈들 중 NoC 패킷을 출력하는 모듈 및 NoC 패킷을 입력받는 모듈에 대한 클럭만을 활성화시켜 NoC의 소비 전력을 줄이는 것을 목적으로 한다.
상기의 목적을 달성하고 종래기술의 문제점을 해결하기 위하여, 본 발명의 NoC 전력 제어 장치는 마스터 또는 및 상기 마스터에 상응하는 모듈 중 어느 하나 이상으로부터 발생된 트랜잭션(transaction)을 모니터링하는 트랜잭션 모니터링부 및 상기 모니터링된 트랜잭션을 기반으로 하여 NoC(Network-on-Chip)를 구성하는 모듈들에 대한 클럭(clock)을 선택적으로 제어하는 클럭 제어부를 포함하는 것을 특징으로 한다.
이때, 상기 클럭 제어부는 상기 트랜잭션이 감지된 경우 상기 모듈들에 대한 클럭을 활성화시키고, 상기 트랜잭션이 감지되지 않은 경우 상기 모듈들에 대한 클럭을 비활성화시킬 수 있다.
이때, 상기 클럭 제어부는 상기 감지된 트랜잭션의 라우팅 경로에 포함된 모듈들에 대한 클럭만을 활성화시킬 수 있다.
이때, 상기 NoC는 정적 라우팅 기반으로 동작할 수 있다.
이때, 상기 트랜잭션은 AXI(Advanced Extensible Interface) 트랜잭션일 수 있다.
본 발명의 일 실시예에 따른 NoC 전력 제어 장치는 라우터로 입력되는 NoC 패킷을 모니터링하는 패킷 모니터링부 및 상기 모니터링된 NoC 패킷을 기반으로 하여 NoC를 구성하는 모듈들에 대한 클럭을 선택적으로 제어하는 클럭 제어부를 포함하는 것을 특징으로 한다.
이때, 상기 클럭 제어부는 상기 감지된 NoC 패킷의 라우팅 경로에 포함된 모듈들 중 상기 NoC 패킷을 출력하는 모듈 및 상기 출력된 NoC 패킷을 입력받는 모듈에 대한 클럭만을 활성화시킬 수 있다.
이때, 상기 네트워크-온-칩 전력 제어 장치는 마스터 또는 및 상기 마스터에 상응하는 모듈 중 어느 하나 이상으로부터 발생된 트랜잭션(transaction)을 모니터링하는 트랜잭션 모니터링부를 더 포함하고, 상기 클럭 제어부는 상기 모니터링된 트랜잭션을 기반으로 하여 NoC를 구성하는 모듈들에 대한 클럭을 선택적으로 제어할 수 있다.
본 발명의 일 실시예에 따른 NoC 전력 제어 방법은 마스터 또는 및 상기 마스터에 상응하는 모듈 중 어느 하나 이상으로부터 발생된 트랜잭션을 모니터링하는 단계 및 상기 모니터링된 트랜잭션을 기반으로 하여 NoC를 구성하는 모듈들에 대한 클럭을 선택적으로 제어하는 단계를 포함하는 것을 특징으로 한다.
이때, 상기 모니터링된 트랜잭션을 기반으로 하여 NoC를 구성하는 모듈들에 대한 클럭을 선택적으로 제어하는 단계는 상기 트랜잭션이 감지된 경우 상기 모듈들에 대한 클럭을 활성화시키고, 상기 트랜잭션이 감지되지 않은 경우 상기 모듈들에 대한 클럭을 비활성화시킬 수 있다.
이때, 상기 모니터링된 트랜잭션을 기반으로 하여 NoC를 구성하는 모듈들에 대한 클럭을 선택적으로 제어하는 단계는 상기 감지된 트랜잭션의 라우팅 경로에 포함된 모듈들에 대한 클럭만을 활성화시킬 수 있다.
본 발명의 일 실시예에 따른 NoC 전력 제어 방법은 라우터로 입력되는 NoC 패킷을 모니터링하는 단계 및 상기 모니터링된 NoC 패킷을 기반으로 하여 상기 NoC를 구성하는 모듈들에 대한 클럭을 선택적으로 제어하는 단계를 포함하는 것을 특징으로 한다.
이때, 상기 모니터링된 NoC 패킷을 기반으로 하여 상기 NoC를 구성하는 모듈들에 대한 클럭을 선택적으로 제어하는 단계는 상기 감지된 NoC 패킷의 라우팅 경로에 포함된 모듈들 중 상기 NoC 패킷을 출력하는 모듈 및 상기 출력된 NoC 패킷을 입력받는 모듈에 대한 클럭만을 활성화시킬 수 있다.
이때, 상기 네트워크-온-칩 전력 제어 방법은 마스터 또는 및 상기 마스터에 상응하는 모듈 중 어느 하나 이상으로부터 발생된 트랜잭션을 모니터링하는 단계 및 상기 모니터링된 트랜잭션을 기반으로 하여 NoC를 구성하는 모듈들에 대한 클럭을 선택적으로 제어하는 단계를 더 포함하고, 상기 두 단계는 상기 라우터로 입력되는 NoC 패킷을 모니터링하는 단계 전에 수행될 수 있다.
이하, 본 발명에 따른 바람직한 실시예를 첨부된 도면을 참조하여 상세하게 설명한다.
도 1은 일반적인 NoC의 구성에 대한 일 실시예도이다.
도 1을 참조하면, NoC(100)는 네트워크 인터페이스(NI: network interface)(111~114, 121~124) 및 라우터(router) 백본(backbone)(130)을 포함한다.
NI는 IP로부터 입력되는 트랜잭션 예를 들어, AHB(AMBA High-Performance Bus), OCP(Open Core Protocol), AXI 트랜잭션을 NoC 패킷으로 변환하여 라우터로 출력하거나 라우터로부터 입력된 NoC 패킷을 트랜잭션으로 변환하여 IP로 출력한다. NI는 마스터 IP와 라우터를 연결하는 NI(이하, 'NIM'이라 칭함) (111~114)와 슬레이브 IP와 라우터를 연결하는 NI(이하, 'NIS'라 칭함) (121~124)로 구성된다. 이하, 트랜잭션을 AXI 트랜잭션으로 제한하여 설명한다. 하지만, 본 발명이 AXI 트랜잭션에 한정되는 것이 아님은 자명하다.
이때, 마스터 IP는 능동적인 동작을 수행하는 기기로서, 중앙 처리 장 치(CPU) 등을 예로 들 수 있고, 슬레이브 IP는 능동적인 동작을 수행하지 못하는 기기로서, 메모리 등을 예로 들 수 있다.
라우터 백본(130)은 본 실시 예에서 네 개의 라우터(131~134)로 구성되는데, 각 라우터는 NI로부터 NoC 패킷을 입력받아 다른 NI 또는 다른 라우터로 NoC 패킷을 전송한다.
도 2는 본 발명에 따른 NoC 전력 제어 장치의 일 실시예 구성에 대한 블록도이다.
도 2를 참조하면, 본 발명에 따른 NoC 전력 제어 장치는 트랜잭션 모니터링부(260) 및 클럭 제어부(270)를 포함한다.
트랜잭션(transaction) 모니터링부(260)는 마스터 IP(210) 또는 및 마스터 IP와 상응하는 모듈로부터 발생된 AXI 트랜잭션을 모니터링하여 이에 대한 활성화 신호를 출력한다.
이때, 트랜잭션 모니터링부(260)는 마스터 IP로부터 발생된 읽기(Read) 또는 쓰기(Write) AXI 트랜잭션이 발생한 순간부터 슬레이브 IP(250)로부터 응답(Response) AXI 트랜잭션을 수신하는 시점까지 트랜잭션 발생에 대한 활성화 신호를 출력한다.
클럭 제어부(270)는 트랜잭션 모니터링부에서 출력한 활성화 신호를 기초로 하여 NoC를 구성하는 모듈인 라우터 백본(230)의 라우터(R) 및 NIS(240)에 대한 클럭(CLK)을 선택적으로 제어한다.
이때, 클럭 제어부(270)는 NoC를 구성하는 모듈들에 대해 클럭을 활성화시키 거나 비활성화시킬 수 있다. 즉, NoC에 트랜잭션이 발생하지 않는 경우에는 NoC의 구성 모듈들 중 NIM(220)을 제외한 모든 모듈들에 대한 클럭을 비활성화시켜 NoC의 소비 전력을 감소시킬 수 있다.
이때, 클럭 제어부(270)는 NoC를 구성하는 모듈들 중 AXI 트랜잭션에 대한 라우팅 경로에 포함된 모듈들에 대한 클럭만을 활성화시킬 수 있다. 즉, 라우팅 경로에 포함되지 않는 모듈들에 대한 클럭을 비활성화시켜 NoC의 소비 전력을 감소시킬 수 있다.
도 3은 본 발명에 따른 트랜잭션 발생 여부에 의한 클럭 제어를 설명하기 위한 일 예시도로서, 도 2에 도시한 트랜잭션 모니터링부에서 AXI 트랜잭션의 발생 여부에 대한 활성화 신호를 출력하는 경우에 관한 것이다.
도 3을 참조하면, 트랜잭션 모니터링부에서 마스터 IP와 NIM(310~340) 사이를 모니터링한 결과, 마스터 IP에서 슬레이브 IP로 읽기 또는 쓰기 AXI 트랜잭션이 발생한 경우 AXI 트랜잭션 발생에 대한 활성화 신호 예를 들어, 활성화 신호 '1'을 출력하고, 클럭 제어부는 활성화 신호 '1'을 수신하여 NoC의 구성 모듈들(370)에 대한 클럭을 활성화시킨다. 즉, 모든 라우터(360)와 NIS(350)에 대한 클럭을 활성화시켜 NoC의 모든 구성 모듈을 동작시킨다.
반면, 트랜잭션 모니터링부의 모니터링 결과, AXI 트랜잭션이 종료된 경우 즉, AXI 트랜잭션이 발생하지 않는 경우 이에 대한 활성화 신호 예를 들어, 활성화 신호 '0'을 출력하고, 클럭 제어부는 활성화 신호 '0'을 수신하여 NoC의 구성 모듈들(370)에 대한 클럭을 비활성화시킨다. 즉, NIM을 제외한 모든 라우터와 NIS 모 듈들에 대한 클럭을 비활성화시켜 모듈들을 휴면 상태(Sleep Mode)로 전환시킴으로써, NoC에 의해 소비되는 불필요한 전력을 감소시킬 수 있다.
이와 같은 일 실시예에서 알 수 있듯이, 비록 그 구성은 단순하나 NoC를 사용하지 않는 로컬 통신이 많은 경우에는 NoC의 동작에 의해 불필요하게 소비되는 전력을 크게 감소시킬 수 있는 장점이 있다.
도 4는 본 발명에 따른 트랜잭션 발생 시 라우팅 경로에 따른 클럭 제어를 설명하기 위한 일 예시도로서, 도 2에 도시한 트랜잭션 모니터링부에서 라우팅 경로에 대한 활성화 신호를 출력하는 경우에 관한 것이다. 이때, NoC는 정적 라우팅(static routing) 기반으로 동작한다 가정한다.
도 4를 참조하면, 트랜잭션 모니터링부에서 AXI 트랜잭션 모니터링 결과, 마스터 IP0와 NIM(410) 사이에 AXI 트랜잭션이 발생하면, AXI 트랜잭션으로부터 트랜잭션의 출발지와 목적지를 확인하여 이에 대한 활성화 신호를 출력한다. 즉, 발생된 AXI 트랜잭션으로부터 NoC의 라우팅 경로를 확인하여 이에 대한 활성화 신호를 출력한다.
[표 1]은 도 4에 도시한 출발지 라우터와 목적지 라우터간의 라우팅 경로에 따른 활성화 신호의 일 예를 나타낸 표이다.
[표 1]에서 알 수 있듯이, 트랜잭션 모니터링부에서 출력하는 활성화 신호는 4[bit] 길이를 가지며, 각 비트는 NoC를 구성하는 라우터에 대한 라우팅 경로를 포함하고 있다. 즉, 4[bit] 중 좌측부터 우측까지 순차적으로 라우터 R3, R2, R1, R0에 대한 것으로, 비트 값이 '1'인 경우에는 해당 라우터가 라우팅 경로에 포함된다는 것이고, 비트 값이 '0'인 경우에는 해당 라우터가 라우팅 경로에 포함되지 않는다는 의미이다. 예를 들어, 활성화 신호가 "0011"인 경우에는 발생된 AXI 트랜잭션이 라우터 R0(440)과 라우터 R1(450)을 포함한다는 의미이다. 물론, 활성화 신호의 길이가 4[bit]로 한정되는 것은 아니며, 활성화 신호의 길이는 NoC를 구성하는 라우터 개수에 따라 달라질 수 있다.
[표 1]에 도시된 것과 같은 라우팅 경로에 따른 활성화 신호는 트랜잭션 모니터링부에 구비되고, 트랜잭션 모니터링부에서 발생된 AXI 트랜잭션으로부터 라우팅 경로의 라우터 출발지 및 목적지를 추출하여 이에 대한 활성화 신호를 출력한다.
예컨대, 도 4에 도시한 일 예의 경우에는 출발지 라우터가 R0(440)이고, 목적지 라우터가 R1(450)이기 때문에 트랜잭션 모니터링부에서 출력되는 활성화 신호는 "0011"이 된다.
클럭 제어부는 활성화 신호 "0011"을 수신하여 라우터 R0 및 라우터 R1과 관련된 모듈들(420~450)에 대한 클럭을 활성화시키고, 라우터 R2 및 R3과 관련된 모듈들(460)에 대한 클럭을 비활성화시킨다. 즉, 라우터 R0(440)과 라우터 R1(450)을 활성화시킬 뿐만 아니라 R0 및 R1과 관련된 NIS들(420, 430) 또한 활성화시킨다. 물론, 활성화 신호로부터 라우팅 경로의 출발지 및 목적지를 알 수 있는 경우에는 라우팅 경로에 포함된 라우터 및 그 라우터와 관련된 NIS에 대한 클럭을 각각 제어할 수 있다. 예컨대, 도 4의 경우 라우터 R0과 관련된 NIS는 동작할 필요가 없기 때문에 라우터 R0과 관련된 NIS에 대한 클럭을 비활성화시킬 수 있다.
반면, 트랜잭션 모니터링부의 모니터링 결과, AXI 트랜잭션이 종료된 경우 즉, 마스터 IP0과 슬레이브 IP1 사이의 AXI 트랜잭션이 종료된 경우 이에 대한 활성화 신호 예를 들어, 활성화 신호 "0000"을 출력하고, 클럭 제어부는 활성화 신호 "0000"을 수신하여 클럭이 활성화된 NoC의 구성 모듈 즉, 라우터 R0 및 라우터 R1과 관련된 모듈들에 대한 클럭을 비활성화시킨다.
이와 같은 일 실시예는 라우팅 경로에 포함된 NoC의 구성 모듈들에 대한 클럭만을 활성화시키고, 나머지 구성 모듈들에 대한 클럭을 비활성화시킴으로써, 라우팅 경로에 포함되지 않는 모듈들의 동작에 의해 불필요하게 소비되는 전력을 감소시킬 수 있다.
도 5는 본 발명에 따른 NoC 전력 제어 장치의 다른 일 실시예 구성에 대한 블록도이다.
도 5를 참조하면, 본 발명에 따른 NoC 전력 제어 장치는 트랜잭션 모니터링부(560), 패킷 모니터링부(580) 및 클럭 제어부(570)를 포함한다.
트랜잭션 모니터링부(560)는 도 2에 도시한 트랜잭션 모니터링부와 동일한 기능을 수행한다. 즉, 마스터 IP(510) 또는 및 마스터 IP와 상응하는 모듈로부터 발생된 AXI 트랜잭션을 모니터링하여 이에 대한 활성화 신호를 출력한다.
패킷 모니터링부(580)는 라우터로 입력되는 NoC 패킷을 모니터링하여 이에 대한 활성화 신호를 출력한다.
이때, 패킷 모니터링부(580)는 NIM(520)과 라우터 사이, 라우터 백본(530)을 구성하는 라우터와 라우터 사이 그리고 NIS(540)와 라우터 사이에 위치하여 NIM(520)으로부터 입력되는 NoC 패킷, 라우터로부터 입력되는 NoC 패킷 및 NIS로부터 입력되는 NoC 패킷을 모니터링한다.
클럭 제어부(570)는 트랜잭션 모니터링부(560)에서 출력한 활성화 신호를 기초로 하여 NoC를 구성하는 모듈인 라우터 및 NIS에 대한 클럭(CLK)을 선택적으로 제어하고, 패킷 모니터링부(580)에서 출력한 활성화 신호를 기초로 하여 NoC를 구성하는 모듈인 라우터 및 NIS에 대한 클럭(CLK)을 선택적으로 제어한다. 여기서, 클럭 제어부는 트랜잭션 모니터링부에서 출력한 활성화 신호에 의한 클럭 제어와 패킷 모니터링부에서 출력한 활성화 신호에 의한 클럭 제어를 복합적으로 수행할 수 있으나, 순차적으로 수행하는 것이 바람직하다.
이때, 클럭 제어부(570)는 NoC를 구성하는 모듈들에 대해 클럭을 활성화시키거나 비활성화시킬 수 있고, NoC를 구성하는 모듈들 중 AXI 트랜잭션에 대한 라우팅 경로에 포함된 모듈들에 대한 클럭만을 활성화시킬 수 있다.
이때, 클럭 제어부(570)는 라우팅 경로에 포함된 모듈들 중 NoC 패킷을 출력하는 모듈 및 상기 출력된 NoC 패킷을 입력받는 모듈에 대한 클럭만을 활성화시킬 수 있다.
물론, 트랜잭션 모니터링부(560)의 구성을 제외한 패킷 모니터링부(580) 및 클럭 제어부(570)만을 포함하여 본 발명에 따른 NoC 전력 제어 장치를 구성할 수도 있다.
도 6은 도 5에 도시한 본 발명에 따른 NoC 전력 제어 장치에 대한 동작을 설명하기 위한 일 예시도로서, 마스터 IP0과 슬레이브 IP1 사이에 AXI 트랜잭션이 발생한 경우에 대한 것이다. 이하, 도 6에 대한 동작을 트랜잭션 모니터링부에서 라우팅 경로에 대한 활성화 신호를 출력하는 것으로 가정하여 설명한다.
도 6을 참조하면, 마스터 IP0에서 AXI 트랜잭션이 발생하면, 트랜잭션 모니터링부(560)에서 AXI 트랜잭션으로부터 라우팅 경로에 대한 활성화 신호를 클럭 제어부(570로 출력한다. 즉, 트랜잭션 모니터링부(560)는 [표 1]을 참조하여 출발지 라우터가 R0이고 목적지 라우터가 R1인 활성화 신호 "0011"을 출력하고, 클럭 제어부(570)는 활성화 신호 "0011"을 수신하여 라우터 R0 및 라우터 R1과 관련된 모듈들(620, 630)에 대한 클럭을 활성화시키고, 라우터 R2 및 라우터 R3과 관련된 모듈들(650, 640)에 대한 클럭을 비활성화시킨다.
라우터 R0 및 라우터 R1과 관련된 모듈들에 대한 클럭만이 활성화된 상태에서 NIM(610)에서 변환된 NoC 패킷이 출력되면 패킷 모니터링부(580)에서 ⓐ지점의 NoC 패킷을 모니터링하고, 이에 대한 활성화 신호를 클럭 제어부로 출력한다. 예컨대, 본 발명에 따른 NoC가 정적 라우팅 기법을 기반으로 하고, XY 라우팅 기법을 사용한다 가정하면, 패킷 모니터링부에서 출력하는 활성화 신호는 "XY" 2[bit]의 활성화 신호를 출력한다. 즉, ⓐ지점에 대한 활성화 신호 "10"을 출력하고, 클럭 제어부는 라우팅 경로에 포함된 구성 모듈들 중 라우터 R0과 관련된 모듈들(620)에 대한 클럭만을 활성화시킨다. 따라서, 라우터 R0과 관련된 모듈들(620)에 대한 클럭만이 활성화되고, 나머지 라우터 R1, R2 및 R3과 관련된 모듈들(630~650)에 대한 클럭은 비활성화된다.
패킷 모니터링부에 의해 NoC 패킷이 ⓑ지점에서 모니터링되면 이에 대한 활성화 신호 "10"을 출력하여 클럭 제어부에서 라우터 R1과 관련된 모듈들에 대한 클럭을 활성화시킨다. 이때, 라우터 R0과 관련된 모듈들은 ⓐ지점에서 NoC 패킷의 입력이 종료되더라도 라우터 R1으로 NoC 패킷이 입력되는 중인 경우에는 클럭의 활성화 상태를 그대로 유지한다. 따라서, ⓑ지점에서 NoC 패킷이 모니터링된 경우에는 라우터 R0 및 라우터 R1과 관련된 모듈들(620, 630)에 대한 클럭이 활성화되고, 라우터 R2 및 라우터 R3과 관련된 모듈들(650, 640)에 대한 클럭은 비활성화된다.
ⓑ지점에서 NoC 패킷이 라우터 R1으로 모두 입력되고, ⓒ지점에서 NoC 패킷이 모니터링되면 라우터 R0과 관련된 모듈들(620)에 대한 클럭을 비활성화시키고, 라우터 R1과 관련된 모듈들(630)에 대한 클럭만을 활성화 상태로 유지한다. 즉, 라우터 R1과 관련된 모듈들에 대한 클럭만이 활성화되고, 나머지 라우터 R0, R2 및 R3과 관련된 모듈들에 대한 클럭은 비활성화된다.
이와 같은 ⓐ, ⓑ 및 ⓒ지점에서의 NoC 패킷에 의한 클럭 제어 과정이 슬레이브 IP1에서 마스터 IP0으로 응답에 대한 NoC 패킷을 전송하는 과정에서 동일하게 이루어진다. 즉, ⓒ, ⓑ 및 ⓐ지점의 역순으로 NoC 패킷 모니터링에 의한 클럭 제어 과정이 이루어진다.
또한, 트랜잭션 모니터링부에서 응답에 대한 AXI 트랜잭션을 모니터링하면 라우팅 경로에 포함된 NoC 구성 모듈들에 대한 클럭을 비활성화시킨다.
상술한 바와 같이 도 6에 도시한 본 발명에 따른 NoC 전력 제어 장치는 NoC 패킷에 의한 클럭 제어 기능에 AXI 트랜잭션에 의한 클럭 제어 기능을 추가 구성하여 소비 전력을 최소화할 수 있다. 물론, 본 발명에 따른 NoC 전력 제어 장치는 NoC 패킷에 의한 클럭 제어 기능만으로 구성할 수도 있다.
도 7은 본 발명에 따른 NoC 전력 제어 방법에 대한 일 실시예 동작 흐름도로서, 마스터 IP로부터 AXI 트랜잭션 발생 여부를 모니터링하는 단계 및 AXI 트랜잭션이 발생한 경우에만 NoC를 구성하는 모듈들에 대한 클럭을 활성화시키는 단계를 포함한다.
도 7을 참조하면, 마스터 IP 또는 마스터 IP와 상응하는 모듈로부터 AXI 트랜잭션 발생 여부를 모니터링한다(S710).
모니터링 결과(S720), AXI 트랜잭션이 발생하지 않은 상태이면 NoC를 구성하는 모듈들에 대한 클럭을 비활성화시킨다(S730).
반면, 모니터링 결과(S720), AXI 트랜잭션이 발생하면 NoC를 구성하는 모듈들 즉, 라우터 백본 및 NI에 대한 클럭을 활성화시킨다(S740).
AXI 트랜잭션에 대한 모니터링 결과, AXI 트랜잭션이 종료되면(S750) NoC를 구성하는 모듈들에 대한 클럭을 비활성화시켜 소비 전력을 감소시킨다(S760).
즉, 도 7은 AXI 트랜잭션의 발생 여부에 따른 NoC를 구성하는 전체 모듈들에 대한 클럭을 활성화 또는 비활성화시켜 NoC를 사용하지 않는 로컬 통신 시 소비 전력을 감소시킬 수 있는 장점이 있다.
도 8은 본 발명에 따른 NoC 전력 제어 방법에 대한 다른 일 실시예 동작 흐름도로서, 마스터 IP로부터 AXI 트랜잭션 발생 여부를 모니터링하는 단계 및 AXI 트랜잭션이 발생한 경우 AXI 트랜잭션의 라우팅 경로에 포함된 NoC의 구성 모듈들에 대한 클럭만을 활성화시키는 단계를 포함한다.
도 8을 참조하면, 마스터 IP 또는 마스터 IP와 상응하는 모듈로부터 AXI 트랜잭션 발생 여부를 모니터링한다(S810).
모니터링 결과(S820), AXI 트랜잭션이 발생하지 않은 상태이면 NoC를 구성하는 모듈들에 대한 클럭을 비활성화시킨다(S830).
반면, 모니터링 결과(S820), AXI 트랜잭션이 발생하면 AXI 트랜잭션으로부터 라우팅 경로를 추출한다(S840). 이때, 라우팅 경로는 AXI 트랜잭션의 출발지 및 목적지를 통해 알 수 있다. 예컨대, NoC가 정적 라우팅 기반으로 동작하면, 출발지 및 목적지에 따른 라우팅 경로는 기 설정될 수 있는데, 출발지 및 목적지에 따른 라우팅 경로는 룩업(look-up) 테이블로 구성될 수 있다.
추출된 라우팅 경로를 따라, 라우팅 경로에 포함된 NoC의 구성 모듈들에 대한 클럭만을 활성화시킨다(S850). 즉, 라우팅 경로에 포함되지 않은 NoC 구성 모듈들에 대한 클럭은 비활성화시킨다.
AXI 트랜잭션에 대한 모니터링 결과, AXI 트랜잭션이 종료되면(S860) 라우팅 경로에 포함된 NoC의 구성 모듈들에 대한 클럭을 비활성화시킨다(S870). 즉, 마스터 IP에서 발생된 AXI 트랜잭션에 대한 응답 AXI 트랜잭션이 수신되면 NoC를 구성하는 모듈들에 대한 클럭을 비활성화시켜 NoC에 의해 소비되는 전력을 감소시킨다.
도 9는 본 발명에 따른 NoC 전력 제어 방법에 대한 또 다른 일 실시예 동작 흐름도로서, AXI 트랜잭션을 모니터링하고, AXI 트랜잭션이 발생한 경우 라우팅 경로에 포함된 NoC 구성 모듈들에 대한 클럭만을 활성화시키는 단계, NoC 패킷의 발생 여부를 모니터링하는 단계 및 NoC 패킷이 발생한 경우 NoC 패킷을 기반으로 NoC 구성 모듈들에 대한 클럭을 선택적으로 제어하는 단계를 포함한다.
도 9에 도시한 본 발명에 따른 NoC 전력 제어 방법은 도 8에 도시한 NoC 전력 제어 방법에 NoC 패킷 모니터링을 기반으로 NoC 구성 모듈들에 대한 클럭을 제어하는 기능이 포함된 것이다. 물론, AXI 트랜잭션 모니터링에 의한 NoC 구성 모듈들에 대한 클럭 제어 기능 및 NoC 패킷 모니터링에 의한 NoC 구성 모듈들에 대한 클럭 제어 기능을 함께 적용할 수도 있지만, NoC 패킷 모니터링에 의한 NoC 구성 모듈들에 대한 클럭 제어 기능만으로도 본 발명에 대한 NoC 전력 제어 방법을 구성할 수 있다.
도 9를 참조하면, 본 발명에 따른 S910~S950 단계는 도 8에 도시한 S810~S850 단계와 동일하다. 즉, 마스터 IP 또는 마스터 IP와 상응하는 모듈로부터 AXI 트랜잭션 발생 여부를 모니터링한다(S910).
모니터링 결과(S920), AXI 트랜잭션이 발생하지 않은 상태이면 NoC를 구성하는 모듈들에 대한 클럭을 비활성화시킨다(S930).
반면, 모니터링 결과(S920), AXI 트랜잭션이 발생하면 AXI 트랜잭션으로부터 라우팅 경로를 추출한다(S940).
추출된 라우팅 경로를 따라, 라우팅 경로에 포함된 NoC의 구성 모듈들에 대한 클럭만을 활성화시킨다(S950).
AXI 트랜잭션의 변환된 NoC 패킷을 모니터링한다. 즉, NoC 패킷의 발생 여부를 모니터링한다(S960). 이때, NoC 패킷의 발생 여부는 NoC 패킷이 입력되는 모듈들 사이 예를 들어, NIM과 라우터 사이, 라우터와 라우터 사이, 라우터와 NIS 사이에서 모니터링된다.
발생된 NoC 패킷을 기반으로 NoC 구성 모듈들에 대한 클럭을 제어한다(S970).
S970 단계에 대한 동작을 도 10을 참조하여 상세히 설명하면 다음과 같다.
도 10은 도 9에 도시한 S970 단계에 대한 상세 동작 흐름도이다.
도 10을 참조하면, NoC 패킷을 기반으로 NoC 구성 모듈들에 대한 클럭을 제어하는 단계는 NoC 패킷이 발생하면(S1010) 그 발생한 NoC 패킷을 입력받을 모듈에 대한 클럭 활성화시킨다. 이때, NoC 패킷을 모두 입력받은 모듈에서 NoC 패킷을 그 다음 라우팅 경로에 포함된 모듈로 NoC 패킷을 출력하는 경우에는 NoC 패킷을 입력받는 모듈 뿐만 아니라 NoC 패킷을 출력하는 모듈에 대한 클럭도 활성화시킨다(S1020). 다시 말해, NoC 패킷이 라우팅 경로에 따라 이동할 때 라우팅 경로에 포함된 구성 모듈들 중 NoC 패킷이 입출력되는 모듈들에 대한 클럭만을 활성화시켜 소비 전력을 줄이고자 하는 것이다. 이는 라우터 개수가 많은 경우 소비 전력을 효과적으로 줄일 수 있는 장점이 있다.
이와 같은 과정이 모듈들 사이에서 NoC 패킷이 발생하지 않을 때까지 반복 수행된다. 즉, NoC 발생 여부를 판단하여(S1030) NoC 패킷이 발생하면 S1020를 다시 수행하고 발생된(또는 모니터링된) NoC 패킷이 더 이상 존재하지 않으면 도 9에 도시된 S980 단계를 수행한다.
도 9를 다시 참조하여, NoC 패킷 기반에 의한 NoC 구성 모듈들에 대한 클럭 제어 기능이 완료되면, AXI 트랜잭션에 대한 모니터링을 수행하여 AXI 트랜잭션의 종료 여부를 판단한다(S980).
AXI 트랜잭션의 종료 판단 결과, AXI 트랜잭션이 종료되면 즉, 슬레이브 IP로부터 응답에 대한 AXI 트랜잭션을 수신하면 라우팅 경로에 포함된 NoC의 구성 모듈들에 대한 클럭을 비활성화시킨다(S990).
이와 같은 과정을 통해 NoC에서 소비하는 전력을 최소화할 수 있다.
본 발명에 따른 NoC 전력 제어 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 상기 매체는 프로그램 명령, 데이터 구조 등을 지정하는 신호를 전송하는 반송파를 포함하는 광 또는 금속선, 도파관 등의 전송 매체일 수도 있다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 본 발명의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
이상과 같이 본 발명은 비록 한정된 실시예와 도면에 의해 설명되었으나, 본 발명은 상기의 실시예에 한정되는 것은 아니며, 본 발명이 속하는 분야에서 통상의 지식을 가진 자라면 이러한 기재로부터 다양한 수정 및 변형이 가능하다.
그러므로, 본 발명의 범위는 설명된 실시예에 국한되어 정해져서는 아니 되며, 후술하는 특허청구범위뿐 아니라 이 특허청구범위와 균등한 것들에 의해 정해져야 한다.
본 발명의 NoC 전력 제어 장치 및 그 방법은, NoC로 입력되는 AXI 트랜잭션을 모니터링하고, 그 모니터링된 AXI 트랜잭션을 기반으로 NoC의 구성 모듈들에 대한 클럭을 선택적으로 제어하여 NoC의 소비 전력을 감소시킬 수 있다.
또한, 본 발명은 라우터로 입력되는 NoC 패킷을 모니터링하고, 그 모니터링된 NoC 패킷을 기반으로 NoC의 구성 모듈들에 대한 클럭을 선택적으로 제어하여 NoC의 소비 전력을 감소시킬 수 있다.
또한, 본 발명은 AXI 트랜잭션이 발생한 경우 NoC 구성 모듈들에 대한 클럭을 활성화시키고, AXI 트랜잭션이 발생하지 않은 경우 NoC 구성 모듈들에 대한 클럭을 비활성화시켜 NoC에서 불필요하게 소모되는 전력을 줄일 수 있다.
또한, 본 발명은 AXI 트랜잭션의 라우팅 경로에 포함된 모듈들에 대해서만 클럭만을 활성화시켜 NoC의 소비 전력을 줄일 수 있다.
또한, 본 발명은 NoC 패킷의 라우팅 경로에 포함된 모듈들 중 NoC 패킷을 출력하는 모듈 및 NoC 패킷을 입력받는 모듈에 대한 클럭만을 활성화시켜 NoC의 소비 전력을 줄일 수 있다.
Claims (19)
- 마스터 또는 및 상기 마스터에 상응하는 모듈 중 어느 하나 이상으로부터 발생된 트랜잭션(transaction)을 모니터링하는 트랜잭션 모니터링부; 및상기 모니터링된 트랜잭션을 기반으로 하여 NoC(Network-on-Chip)를 구성하는 모듈들에 대한 클럭(clock)을 선택적으로 제어하는 클럭 제어부를 포함하는 것을 특징으로 하는 네트워크-온-칩 전력 제어 장치.
- 제1항에 있어서,상기 클럭 제어부는상기 트랜잭션이 감지된 경우 상기 모듈들에 대한 클럭을 활성화시키고, 상기 트랜잭션이 감지되지 않은 경우 상기 모듈들에 대한 클럭을 비활성화시키는 것을 특징으로 하는 네트워크-온-칩 전력 제어 장치.
- 제1항에 있어서,상기 클럭 제어부는상기 감지된 트랜잭션의 라우팅 경로에 포함된 모듈들에 대한 클럭만을 활성화시키는 것을 특징으로 하는 네트워크-온-칩 전력 제어 장치.
- 제1항에 있어서,상기 NoC는정적 라우팅 기반으로 동작하는 것을 특징으로 하는 네트워크-온-칩 전력 제어 장치.
- 제1항에 있어서,상기 트랜잭션은AXI(Advanced Extensible Interface) 트랜잭션인 것을 특징으로 하는 네트워크-온-칩 전력 제어 장치.
- 라우터로 입력되는 NoC 패킷을 모니터링하는 패킷 모니터링부; 및상기 모니터링된 NoC 패킷을 기반으로 하여 NoC를 구성하는 모듈들에 대한 클럭을 선택적으로 제어하는 클럭 제어부를 포함하는 것을 특징으로 하는 네트워크-온-칩 전력 제어 장치.
- 제6항에 있어서,상기 클럭 제어부는상기 감지된 NoC 패킷의 라우팅 경로에 포함된 모듈들 중 상기 NoC 패킷을 출력하는 모듈 및 상기 출력된 NoC 패킷을 입력받는 모듈에 대한 클럭만을 활성화시키는 것을 특징으로 하는 네트워크-온-칩 전력 제어 장치.
- 제6항에 있어서,상기 네트워크-온-칩 전력 제어 장치는마스터 또는 및 상기 마스터에 상응하는 모듈 중 어느 하나 이상으로부터 발생된 트랜잭션(transaction)을 모니터링하는 트랜잭션 모니터링부를 더 포함하고,상기 클럭 제어부는 상기 모니터링된 트랜잭션을 기반으로 하여 NoC를 구성하는 모듈들에 대한 클럭을 선택적으로 제어하는 것을 특징으로 하는 네트워크-온-칩 전력 제어 장치.
- 제6항에 있어서,상기 NoC는정적 라우팅 기반으로 동작하는 것을 특징으로 하는 네트워크-온-칩 전력 제어 장치.
- 마스터 또는 및 상기 마스터에 상응하는 모듈 중 어느 하나 이상으로부터 발생된 트랜잭션을 모니터링하는 단계; 및상기 모니터링된 트랜잭션을 기반으로 하여 NoC를 구성하는 모듈들에 대한 클럭을 선택적으로 제어하는 단계를 포함하는 것을 특징으로 하는 네트워크-온-칩 전력 제어 방법.
- 제10항에 있어서,상기 모니터링된 트랜잭션을 기반으로 하여 NoC를 구성하는 모듈들에 대한 클럭을 선택적으로 제어하는 단계는상기 트랜잭션이 감지된 경우 상기 모듈들에 대한 클럭을 활성화시키고, 상기 트랜잭션이 감지되지 않은 경우 상기 모듈들에 대한 클럭을 비활성화시키는 것을 특징으로 하는 네트워크-온-칩 전력 제어 방법.
- 제10항에 있어서,상기 모니터링된 트랜잭션을 기반으로 하여 NoC를 구성하는 모듈들에 대한 클럭을 선택적으로 제어하는 단계는상기 감지된 트랜잭션의 라우팅 경로에 포함된 모듈들에 대한 클럭만을 활성화시키는 것을 특징으로 하는 네트워크-온-칩 전력 제어 방법.
- 제10항에 있어서,상기 NoC는정적 라우팅 기반으로 동작하는 것을 특징으로 하는 네트워크-온-칩 전력 제어 방법.
- 제10항에 있어서,상기 트랜잭션은AXI(Advanced Extensible Interface) 트랜잭션인 것을 특징으로 하는 네트워 크-온-칩 전력 제어 방법.
- 라우터로 입력되는 NoC 패킷을 모니터링하는 단계; 및상기 모니터링된 NoC 패킷을 기반으로 하여 상기 NoC를 구성하는 모듈들에 대한 클럭을 선택적으로 제어하는 단계를 포함하는 것을 특징으로 하는 네트워크-온-칩 전력 제어 방법.
- 제15항에 있어서,상기 모니터링된 NoC 패킷을 기반으로 하여 상기 NoC를 구성하는 모듈들에 대한 클럭을 선택적으로 제어하는 단계는상기 감지된 NoC 패킷의 라우팅 경로에 포함된 모듈들 중 상기 NoC 패킷을 출력하는 모듈 및 상기 출력된 NoC 패킷을 입력받는 모듈에 대한 클럭만을 활성화시키는 것을 특징으로 하는 네트워크-온-칩 전력 제어 방법.
- 제15항에 있어서,상기 네트워크-온-칩 전력 제어 방법은마스터 또는 및 상기 마스터에 상응하는 모듈 중 어느 하나 이상으로부터 발생된 트랜잭션을 모니터링하는 단계; 및상기 모니터링된 트랜잭션을 기반으로 하여 NoC를 구성하는 모듈들에 대한 클럭을 선택적으로 제어하는 단계를 더 포함하고,상기 두 단계는 상기 라우터로 입력되는 NoC 패킷을 모니터링하는 단계 전에 수행되는 것을 특징으로 하는 네트워크-온-칩 전력 제어 방법.
- 제15항에 있어서,상기 NoC는정적 라우팅 기반으로 동작하는 것을 특징으로 하는 네트워크-온-칩 전력 제어 방법.
- 제10항 내지 제18항 중 어느 한 항의 방법을 실행하기 위한 프로그램이 기록되어 있는 것을 특징으로 하는 컴퓨터에서 판독 가능한 기록 매체.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020060082205A KR100721444B1 (ko) | 2006-08-29 | 2006-08-29 | 네트워크-온-칩 전력 제어 장치 및 그 방법 |
US11/644,905 US20080057896A1 (en) | 2006-08-29 | 2006-12-26 | Apparatus for controlling electric power of network-on-chip and method using the same |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020060082205A KR100721444B1 (ko) | 2006-08-29 | 2006-08-29 | 네트워크-온-칩 전력 제어 장치 및 그 방법 |
Publications (1)
Publication Number | Publication Date |
---|---|
KR100721444B1 true KR100721444B1 (ko) | 2007-05-23 |
Family
ID=38278094
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020060082205A KR100721444B1 (ko) | 2006-08-29 | 2006-08-29 | 네트워크-온-칩 전력 제어 장치 및 그 방법 |
Country Status (2)
Country | Link |
---|---|
US (1) | US20080057896A1 (ko) |
KR (1) | KR100721444B1 (ko) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101053903B1 (ko) * | 2007-10-19 | 2011-08-04 | 삼성전자주식회사 | 네트워크온칩에서 전압 및 주파수 제어 장치 및 방법 |
KR102381361B1 (ko) * | 2021-11-17 | 2022-04-01 | (주)가온칩스 | 다이나믹 클럭 게이팅 장치 |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2026493A1 (en) * | 2007-08-16 | 2009-02-18 | STMicroelectronics S.r.l. | Method and systems for mesochronous communications in multiple clock domains and corresponding computer program product |
JP2014082713A (ja) * | 2012-10-18 | 2014-05-08 | Canon Inc | データ処理装置及びその制御方法 |
US9628333B2 (en) | 2013-12-04 | 2017-04-18 | International Business Machines Corporation | Operating a dual chipset network interface controller (‘NIC’) that includes a high performance media access control chipset and a low performance media access control chipset |
US9891964B2 (en) | 2014-11-19 | 2018-02-13 | International Business Machines Corporation | Network traffic processing |
US10452124B2 (en) * | 2016-09-12 | 2019-10-22 | Netspeed Systems, Inc. | Systems and methods for facilitating low power on a network-on-chip |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20050054072A (ko) * | 2003-12-03 | 2005-06-10 | 삼성전자주식회사 | 전자 기기의 클럭 공급 장치 및 그 방법 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5677849A (en) * | 1993-11-08 | 1997-10-14 | Cirrus Logic, Inc. | Selective low power clocking apparatus and method |
US6560240B1 (en) * | 1998-09-04 | 2003-05-06 | Advanced Micro Devices, Inc. | System-on-a-chip with variable clock rate |
US6724772B1 (en) * | 1998-09-04 | 2004-04-20 | Advanced Micro Devices, Inc. | System-on-a-chip with variable bandwidth |
US6812739B2 (en) * | 2002-09-26 | 2004-11-02 | International Business Machines Corporation | Method of transparently reducing power consumption of a high-speed communication link |
KR100539251B1 (ko) * | 2004-03-08 | 2005-12-27 | 삼성전자주식회사 | 독출-변경-기입 기능을 가지는 메모리 컨트롤러 및 이를구비하는 soc |
-
2006
- 2006-08-29 KR KR1020060082205A patent/KR100721444B1/ko not_active IP Right Cessation
- 2006-12-26 US US11/644,905 patent/US20080057896A1/en not_active Abandoned
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20050054072A (ko) * | 2003-12-03 | 2005-06-10 | 삼성전자주식회사 | 전자 기기의 클럭 공급 장치 및 그 방법 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101053903B1 (ko) * | 2007-10-19 | 2011-08-04 | 삼성전자주식회사 | 네트워크온칩에서 전압 및 주파수 제어 장치 및 방법 |
US8190298B2 (en) | 2007-10-19 | 2012-05-29 | Samsung Electronics Co., Ltd. | Apparatus and method for controlling voltage and frequency in network on chip |
KR102381361B1 (ko) * | 2021-11-17 | 2022-04-01 | (주)가온칩스 | 다이나믹 클럭 게이팅 장치 |
Also Published As
Publication number | Publication date |
---|---|
US20080057896A1 (en) | 2008-03-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR100737943B1 (ko) | 네트워크-온-칩 응답 신호 제어 장치 및 그 방법 | |
KR100721444B1 (ko) | 네트워크-온-칩 전력 제어 장치 및 그 방법 | |
KR100687659B1 (ko) | Axi 프로토콜에 따른 락 오퍼레이션을 제어하는네트워크 인터페이스, 상기 네트워크 인터페이스가 포함된패킷 데이터 통신 온칩 인터커넥트 시스템, 및 상기네트워크 인터페이스의 동작 방법 | |
WO2022166425A1 (zh) | 互联裸芯与mpu的接口***及其通信方法 | |
JP4524310B2 (ja) | ハブベースのメモリシステムにおける書込みコマンドを終了させる方法とシステム | |
US8332552B2 (en) | Supporting multiple high bandwidth I/O controllers on a single chip | |
US8051228B2 (en) | Physical interface macros (PHYS) supporting heterogeneous electrical properties | |
US20180181174A1 (en) | Automatic generation of power management sequence in a soc or noc | |
US9882801B2 (en) | Providing full point-to-point communications among compute nodes of an operational group in a global combining network of a parallel computer | |
US20110085550A1 (en) | Zero-latency network on chip (NoC) | |
KR100785472B1 (ko) | 긴급 NoC 패킷 대기시간 관리 장치 및 그 방법 | |
CN112711550A (zh) | Dma自动配置模块和片上***soc | |
EP2038728B1 (en) | Controlling power consumption in a data processing apparatus | |
CN114328350B (zh) | 一种基于axi总线的通讯方法、装置以及介质 | |
JP2007534052A (ja) | 集積回路及びトランザクション撤回方法 | |
JP4436902B2 (ja) | 割り込みをクリアするロジック・ユニット及び集積回路 | |
CN218068843U (zh) | 一种axi主端口转apb从端口的桥接电路结构及一种soc*** | |
KR101061187B1 (ko) | 버스 시스템 및 그 제어 장치 | |
KR100846739B1 (ko) | 네트워크-온-칩 인터페이스 장치 및 이를 이용한네트워크-온-칩 패킷 인코딩 방법 | |
KR100797468B1 (ko) | 시스템 버스와 아이피간 인터페이싱 장치와 방법 및 컴퓨터프로그램을 저장하는 컴퓨터로 읽을 수 있는 기록 매체 | |
KR20170112775A (ko) | 듀얼 스위칭 네트워크 모드들에서 네트워킹 가능한 온칩 네트워크 장치 및 그것의 동작 방법 | |
JP2002215333A (ja) | データ転送システム及びそれを備えるコンピュータ | |
KR102381361B1 (ko) | 다이나믹 클럭 게이팅 장치 | |
CN112527717B (zh) | 一种区分主机写入操作的AHB-to-APB转换桥 | |
JPH0895902A (ja) | データ通信アダプタ内の別のバスのテンプレートを使用して周辺回路をriscバスにインターフェースするためのシステムおよび方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
LAPS | Lapse due to unpaid annual fee |