네트워크 온 칩 (Network-on-Chip, NoC) 기술은 기존 시스템-온-칩(System-on-Chip, SoC) 설계에서 IP 블록 수 증가와 이에 수반된 상호 연결 네트워크 복잡화 및 데이터 대역폭 제한 등의 문제점을 해결하기 위한 새로운 설계 패러다임이다. 더불어 동작 주파수 증가에 따른 급격한 전력 소모 클럭 신호의 분배와 동기화 문제 역시 중요한 이슈이며, 이에 대한 대안으로 광역적으로는 비동기, 국부적으로는 동기식 (Globally Asynchronous Locally Synchronous, GALS) 인 시스템 설계 방법론이 저전력 기술과 결합되어 에너지 소모를 줄이고 모듈적인 설계를 위해서 고려되어 왔다 GALS 방식의 설계 스타일은 정밀한 시스템 수준 전력 관리를 적용하기 위해 최근 소개되고 있는 전압 주파수 구역 (Voltage-Frequency-Island, VFI) 의 개념과 매우 잘 어울린다. 본 논문에서는 VFI를 적용한 NoC 시스템에서 최적의 전압선택을 통해 에너지 소모를 최소화하는 효율적인 알고리즘을 제시한다. 최적의 코어(또는 처리 소자) 전압과 VFI를 찾기 위해 통신량을 고려한 코어 그래프 분할, 통신-경쟁 시간을 고려한 타일 매핑, 전력 변화량을 고려한 코어의 동적 전압 조절 그리고 효율적인 VFI 병합 및 VFI 동적 전압 재 조절을 포함한다. 본 논문에서 제안한 설계 방법론은 기존 연구결과 대비 평균적으로 10.3%의 에너지 효율 향상이 있다는 것을 실험 결과를 통해 보여준다.
네트워크 온 칩 (Network-on-Chip, NoC) 기술은 기존 시스템-온-칩(System-on-Chip, SoC) 설계에서 IP 블록 수 증가와 이에 수반된 상호 연결 네트워크 복잡화 및 데이터 대역폭 제한 등의 문제점을 해결하기 위한 새로운 설계 패러다임이다. 더불어 동작 주파수 증가에 따른 급격한 전력 소모 클럭 신호의 분배와 동기화 문제 역시 중요한 이슈이며, 이에 대한 대안으로 광역적으로는 비동기, 국부적으로는 동기식 (Globally Asynchronous Locally Synchronous, GALS) 인 시스템 설계 방법론이 저전력 기술과 결합되어 에너지 소모를 줄이고 모듈적인 설계를 위해서 고려되어 왔다 GALS 방식의 설계 스타일은 정밀한 시스템 수준 전력 관리를 적용하기 위해 최근 소개되고 있는 전압 주파수 구역 (Voltage-Frequency-Island, VFI) 의 개념과 매우 잘 어울린다. 본 논문에서는 VFI를 적용한 NoC 시스템에서 최적의 전압선택을 통해 에너지 소모를 최소화하는 효율적인 알고리즘을 제시한다. 최적의 코어(또는 처리 소자) 전압과 VFI를 찾기 위해 통신량을 고려한 코어 그래프 분할, 통신-경쟁 시간을 고려한 타일 매핑, 전력 변화량을 고려한 코어의 동적 전압 조절 그리고 효율적인 VFI 병합 및 VFI 동적 전압 재 조절을 포함한다. 본 논문에서 제안한 설계 방법론은 기존 연구결과 대비 평균적으로 10.3%의 에너지 효율 향상이 있다는 것을 실험 결과를 통해 보여준다.
Due to high levels of integration and complexity, the Network-on-Chip (NoC) approach has emerged as a new design paradigm to overcome on-chip communication issues and data bandwidth limits in conventional SoC(System-on-Chip) design. In particular, exponentially growing of energy consumption caused b...
Due to high levels of integration and complexity, the Network-on-Chip (NoC) approach has emerged as a new design paradigm to overcome on-chip communication issues and data bandwidth limits in conventional SoC(System-on-Chip) design. In particular, exponentially growing of energy consumption caused by high frequency, synchronization and distributing a single global clock signal throughout the chip have become major design bottlenecks. To deal with these issues, a globally asynchronous, locally synchronous (GALS) design combined with low power techniques is considered. Such a design style fits nicely with the concept of voltage-frequency-islands (VFI) which has been recently introduced for achieving fine-grain system-level power management. In this paper, we propose an efficient design methodology that minimizes energy consumption by VFI partitioning on an NoC architecture as well as assigning supply and threshold voltage levels to each VFI. The proposed algorithm which find VFI and appropriate core (or processing element) supply voltage consists of traffic-aware core graph partitioning, communication contention delay-aware tile mapping, power variation-aware core dynamic voltage scaling (DVS), power efficient VFI merging and voltage update on the VFIs Simulation results show that average 10.3% improvement in energy consumption compared to other existing works.
Due to high levels of integration and complexity, the Network-on-Chip (NoC) approach has emerged as a new design paradigm to overcome on-chip communication issues and data bandwidth limits in conventional SoC(System-on-Chip) design. In particular, exponentially growing of energy consumption caused by high frequency, synchronization and distributing a single global clock signal throughout the chip have become major design bottlenecks. To deal with these issues, a globally asynchronous, locally synchronous (GALS) design combined with low power techniques is considered. Such a design style fits nicely with the concept of voltage-frequency-islands (VFI) which has been recently introduced for achieving fine-grain system-level power management. In this paper, we propose an efficient design methodology that minimizes energy consumption by VFI partitioning on an NoC architecture as well as assigning supply and threshold voltage levels to each VFI. The proposed algorithm which find VFI and appropriate core (or processing element) supply voltage consists of traffic-aware core graph partitioning, communication contention delay-aware tile mapping, power variation-aware core dynamic voltage scaling (DVS), power efficient VFI merging and voltage update on the VFIs Simulation results show that average 10.3% improvement in energy consumption compared to other existing works.
* AI 자동 식별 결과로 적합하지 않은 문장이 있을 수 있으니, 이용에 유의하시기 바랍니다.
문제 정의
본 논문에서는 NoC 기반 시스템에서 GALS 패러다임을 활용한 VFI의 효과를 극대화하여 에너지 소모를 최적화 할 수 있는 알고리즘을 제안하였다. 제안된 알고리즘은 VFI-고려한 코어 분할, 통신-경쟁시간을 고려한 타일 매핑, 각 코어 기준 전력 변화량을 고려한 동적 전압 조절과 효율적인 VFI 병합과 VFI-동적 전압조절 등 다양한 설계 단계에서 VFI의 효율을 높여 에너지 소모를 최적화한다.
본 논문에서는 위 연구의 문제점을 개선하는 것까지 포함하여 해결한 보다 효율적인 VFI 분할을 수행하는 새로운 NoC 설계 방법론을 제안한다. 이를 위해 통신량을 고려한 코어 그래프 분할이 수행된 후 그것을 바탕으로 통신-경쟁 시간을 고려한 타일 매핑, 전력 변화량을 고려한 코어의 동적 전압 조절 그리고 효율적인 VFI 병합과 그 이후의 VFI 전압 재 조절을 수행한다.
서로 다른 전압을 사용하는 인접한 (상, 하, 좌, 우) 타일들을 같은 전압을 사용하도록 VFI 병합해 보면서 에너지 소모를 최소화하는 것이 이 단계에서의 목표이다. 다시 말해, VFI 병합은 서로 다른 전압을 사용하는 타일들을 같은 전압을 사용하도록 하나의 VFI로 만드는 것을 의미한다.
이 단계에서는 엄격한 성능 제약 조건을 만족하면서 통신 에너지 소모를 최소화하기 위해 각각의 코어들이 어떤 타일에 매핑되어야 하는지를 결정하는 것이 목표이다. 본 논문에서는 기본적으로 [13] 의 타일 매핑 알고리즘에 기반을 두지만 이 알고리즘은 통신이 필요한 태스크 들이 다른 타일에 있을 경우 라우팅 경로 할당에서 발생하는 통신-경쟁 시간을 고려하지 않으므로 어플리케이션의 실행시간이 증가하여 타일 매핑 다음 단계에서 이루어지는 동적 전압 조절 단계에서 효과적인 전압 조절을 하지 못 한다.
이 단계의 목표는 에너지 소모를 최소화하기 위해 어떻게 코어들이 분할되어야 하는지 결정하는 것이다. 전체 에너지 소모는 수식 (4) 에서 보는 것과 같이 수식 (1)에 의해 구한 어플리케이션에서 소모되는 에너지와 수식 (2) 에 의해 구한 통신이 필요한 코어들이 서로 다른 전압을 사용하는 타일에 있으면 MCMF와 VIC를통해 통신을 할 때 발생하는 추가적인 缶初의 합으로 이루어진다.
가설 설정
병합 이후 그림 3(b)과 비교해서 그림 3(a)의 에너지 소모가 상당히 클 것이다. 왜냐하면 통신량이 많은 코어들이 떨어져 있어 사용하는 전압이 다른 타일과 통신을 할 때 필요한 다수의 MCMF(Mixed Clock/Mixed FIFO)와 VLC(Voltage Level Converter)를 통과하기 때문이다.
2(b) 와 같이 태스크가 할당된 코어 그래프로 변환하고 이때 각각의 코어들이 마감 시간(deadline)을 갖고 있다고 가정한다. 이러한 성능 제약 조건을 만족시키면서 최적의 에너지 소모를 갖도록 각 코어의 공급전압, 문턱 전압 그리고 동작 주파수를 구하고 그것을 바탕으로 VFI 분할을 하게 된다.
이 같은 방법을 이용하여 효율적인 VFI 분할, 타일 매핑 그리고 라우팅을 구한다. 하지만 그림 2(b)와 같은 코어 그래프의 각 코어들이 마감 시간을 갖고 있다는 가정은 사실상 불가능하다. 왜냐하면 수식 (1) 과 같이 어플리케이션에서 소모되는 에너지는 코어들의 실행 에너지와 통신 에너지의 합으로 구성되는데, 타일 매핑과 라우팅 경로 할당이 수행되지 않았기 때문에 통신 에너지의 값을 알 수 없기 때문이다.
예를 들어 그림 3은 9개(3×3)의 타일들로 구성된 NoC 구조를 보여주고 있다. 각 타일들은 자신들의 최적의 전압인 A, B, C 또는 D 전압에서 동작한다고 가정한다. 그림 3(a)는 통신량을 고려하지 않은 타일매핑이고 그림 3(b)는 통신량을 고려한 타일 매 用이다.
제안 방법
그림 8은 이 단계의 이해를 도와주는 예제이다. 그림8(a)는 VFI 병합 단계로 그림 7에서 보는 것과 같이 GPP1 과 ASICe 할당된 전압의 차이가 크지 않아 VFI 병합 후에 증가하는 어플리케이션 에너지(功")가 가장 작으면서 통신량은 많아 줄어드는 玲”의 에너지가 크므로 VFI 병합이 이루어졌다. 그림 8(b)는 제안된 최적화 방법론의 마지막 단계를 보여주는 것으로 VFI 병합 후에 발생한 여유시간을 제거하기 위한 VFI-동적 전압조절을 하는 단계이다.
전체 에너지 소모는 수식 (4) 에서 보는 것과 같이 수식 (1)에 의해 구한 어플리케이션에서 소모되는 에너지와 수식 (2) 에 의해 구한 통신이 필요한 코어들이 서로 다른 전압을 사용하는 타일에 있으면 MCMF와 VIC를통해 통신을 할 때 발생하는 추가적인 缶初의 합으로 이루어진다. VFI의 최대 수를 mctx{n(VFI)}로 나타내고, 코어 그래프 G=<C, 称)로 나타낸다고 가정할 때 전체 에너지 소모를 최소화하기 위해서는 VFI의 최대 수를 넘지 않는 범위에서 통신량이 많은 코어들은 되도록 같은 VFI가 될 수 있도록 분할되도록 했다.
본 논문에서는 기본적으로 [13] 의 타일 매핑 알고리즘에 기반을 두지만 이 알고리즘은 통신이 필요한 태스크 들이 다른 타일에 있을 경우 라우팅 경로 할당에서 발생하는 통신-경쟁 시간을 고려하지 않으므로 어플리케이션의 실행시간이 증가하여 타일 매핑 다음 단계에서 이루어지는 동적 전압 조절 단계에서 효과적인 전압 조절을 하지 못 한다. 그래서 이를 보완하는 통신-경쟁 시간을 고려하는 알고리즘을 추가하였다.
그것을 바탕으로 타일 매핑을 진행하는데 이때 각 코어들이 같은 링크를 사용해서 발생하는 통신-경쟁 시간을 최소화 하는 알고리즘이 적용된다. 다음으로 수식 (3) 를 이용하여 각 코어들의 전력 변화량을 고려한 동적 전압 조절을 수행하고 마지막으로 효율적인 VFI 병합과 그 이후의 VFI 전압 재조절을 포함하는 방법론을 제공한다.
실험에서는 E3S[16] 벤치마크 어플리케이션을 이용하여 제안된 NoC 설계 기법과 [12] 의 알고리즘 비교도 했다. E3S 벤치마크 어플리케이션은 consumer, network, auto-industry 그리고 telecom으로 이루어져 있고 각각 12, 13, 24 그리고 30개의 태스크를 포함한다.
실험에서는 통신량을 고려한 코어 그래프 분할, 통신-경쟁 시간을 고려한 타일매핑, 전력변화량을 고려한 코어 동적 전압 조절, 효율적인 VFI 병합과 VFI-동적 전압 재조절의 각 단계에서의 최적화 기법의 효과를 측정해 보았다. 실험에서는 크게 2가지 형태의 벤치마크를 사용하였는데, 하나는 무작위로 생성된 가상의 태스크 그래프들이며 다른 하나는 [16] 이 소개한 E3S 이다.
이러한 성능 제약 조건을 만족시키면서 최적의 에너지 소모를 갖도록 각 코어의 공급전압, 문턱 전압 그리고 동작 주파수를 구하고 그것을 바탕으로 VFI 분할을 하게 된다. 이 같은 방법을 이용하여 효율적인 VFI 분할, 타일 매핑 그리고 라우팅을 구한다. 하지만 그림 2(b)와 같은 코어 그래프의 각 코어들이 마감 시간을 갖고 있다는 가정은 사실상 불가능하다.
그림 8(b)는 제안된 최적화 방법론의 마지막 단계를 보여주는 것으로 VFI 병합 후에 발생한 여유시간을 제거하기 위한 VFI-동적 전압조절을 하는 단계이다. 이 단계를 통해 최종의 결과물인, 최적의 에너지 소모를 하는 각각의 코어에 할당된 공급전압과 VFI를 구한다.
이러한 성능 제약 조건을 만족시키면서 최적의 에너지 소모를 갖도록 각 코어의 공급전압, 문턱 전압 그리고 동작 주파수를 구하고 그것을 바탕으로 VFI 분할을 하게 된다. 이 같은 방법을 이용하여 효율적인 VFI 분할, 타일 매핑 그리고 라우팅을 구한다.
NoC 설계 방법론을 제안한다. 이를 위해 통신량을 고려한 코어 그래프 분할이 수행된 후 그것을 바탕으로 통신-경쟁 시간을 고려한 타일 매핑, 전력 변화량을 고려한 코어의 동적 전압 조절 그리고 효율적인 VFI 병합과 그 이후의 VFI 전압 재 조절을 수행한다. 제안한 저전력 NoC 알고리즘을 적용하면 적용되지 않은 것보다 평균적으로 34.
할 수 있는 알고리즘을 제안하였다. 제안된 알고리즘은 VFI-고려한 코어 분할, 통신-경쟁시간을 고려한 타일 매핑, 각 코어 기준 전력 변화량을 고려한 동적 전압 조절과 효율적인 VFI 병합과 VFI-동적 전압조절 등 다양한 설계 단계에서 VFI의 효율을 높여 에너지 소모를 최적화한다. 제안한 알고리즘을 통해 평균 34.
제안한 알고리즘은 기본적으로 [15] 의 동적 전압 조절 방법을 사용하지만 태스크 단위로 최적의 전압을 조절하는 것은 VFI를 고려한 NoC 구조에서 적합하지 않으므로 본 논문에서는 코어 단위로 전력 변화량을 고려하는 것을 제안한다. 그래서 전력 변화량 측정은 수식 (5)과 같이 At만큼의 시간을 변경했을 때, 코어에 포함되어 있는 모든 태스크들을 동시에 전압이 변경하여 얻은 전력의 차이가 가장 큰 순서대로 전압을 낮추는 것이다.
대상 데이터
측정해 보았다. 실험에서는 크게 2가지 형태의 벤치마크를 사용하였는데, 하나는 무작위로 생성된 가상의 태스크 그래프들이며 다른 하나는 [16] 이 소개한 E3S 이다. 무작위로 생성된 가상의 그래프는 다양한 형태의 그래프에 대해서 실험해 보기가 유용하다.
이론/모형
본 논문은 NoC 설계에서 VFI을 적용할 때 에너지 소모에 많은 영향을 주는 부분에만 집중하기 위해 라우팅 경로 할당은 [13] 이 제안한 방법을, 그리고 스케줄링은 [14] 가 제안한 Earliest Deadline First(EDF)와 Energy Aware Scheduling(EAS)을 그대로 이용하였다. NoC 최적화 방법론을 완성하여 VFI 전압 재 조절까지 모두 완료된 후에는 에너지 소모와 성능을 계산하여 만족하면 에너지 효율이 가장 높은 것을 선택하고 만족하지 않으면 VFI의 수를 감소시키면서 반복하게 된다.
사용 불가능하게 된다. 이를 해결하기 위해, 칩 전체적으로는 비동기식이고 지역적으로는 동기식으로 작동하는 GALS 방식®을 사용하게 되었다. 더욱이, GALS에 기초한 설계 스타일은 정밀한 시스템-수준 전력 관리를 성취하기 위해 같은 전압과 주파수를 사용하는 인접 타일들을 동일 구역(island)으로 묶어주는 전압 -주파수-구역 (Voltage-FrequencyTsland, VFI)의 개념과 결합이 용이하다.
성능/효과
표 1은 두 알고리즘의 에너지 소모 비교를 보여주고 있으며 VFI 병합을 하지 않고 구해진 에너지 소모에 정규화 되어있다. 결과는 본 논문에서 제안한 VFI를 고려한 알고리즘이 VFI 병합 단계만을 비교하여도 평균 10.3% 에너지 소모 절약 효과가 있다는 것을 보여준다.
마지막으로 네 번째 막대는 본 논문에서 제안한 모든 최적화 알고리즘들이 적용되었을 때의 에너지 소모를 나타낸다(OPTcp+cd+pd+vfi). 에너지 소모는 OPTcp, OPTcp+cd, OPTcp+cd+pd, OPTcp+cd+pd, vfi 단계별로 진행되면서 7.5%, 17.2%, 25.4%, 34.5%로 지속적으로 줄어들었다. 에너지 소모감소는 태스크 그래프의 특성^, 여유 시간, 통신 부하량 그리고 코어 수 등)과 무작위 설정의 성능에 의해 좌우된다.
제안된 알고리즘은 VFI-고려한 코어 분할, 통신-경쟁시간을 고려한 타일 매핑, 각 코어 기준 전력 변화량을 고려한 동적 전압 조절과 효율적인 VFI 병합과 VFI-동적 전압조절 등 다양한 설계 단계에서 VFI의 효율을 높여 에너지 소모를 최적화한다. 제안한 알고리즘을 통해 평균 34.5%의 NoC 에너지 감소 효과를 보이며 기존 [12] 의 연구 결과와 비교해서도 평균 10.3%의 에너지 절감 우수성을 보였다.
이를 위해 통신량을 고려한 코어 그래프 분할이 수행된 후 그것을 바탕으로 통신-경쟁 시간을 고려한 타일 매핑, 전력 변화량을 고려한 코어의 동적 전압 조절 그리고 효율적인 VFI 병합과 그 이후의 VFI 전압 재 조절을 수행한다. 제안한 저전력 NoC 알고리즘을 적용하면 적용되지 않은 것보다 평균적으로 34.5% 그리고 기존의 VFI 기반 NoC 저전력 연구 결과와 비교하여 평균적으로 10.3% 의 에너지 절감 효과가 있다는 것을 모의실험결과를 통해 보여준다.
몇 가지 한계점이 있다. 첫째로 VFI 병합 과정이 타일 매핑과 라우팅 경로 할당 그리고 태스크 스케줄링을 모두 완료하고 각 코어의 공급전압, 문턱전압 그리고 동작 주파수까지 모두 결정된 후에 이루어진다는 것이다. 이와 같은 접근 방법은 VFI 병합의 추가적인 최적화 기회를 놓칠 수 있다.
참고문헌 (16)
International Technology Roadmap for Semiconductors Report, 2006
D. Wingard, 'micronetwork-based integration for SoCs,' in Proc. of Design Automation Conference, pp. 673-677, Las Vegas, United States, June 2001
L. Benini, G. De Micheli. 'Networks on chips: A new SoC prardigm,' IEEE Computer, Vo. 35, no. 1, pp. 70-78, January 2002
W. Dally, B. Towles, 'Route Packets, Not Wires: On-Chip Interconnection Networks,' In Proc. of Design Automation Conference, pp. 684-689, Las Vegas, United States, June 2001
A. Jantsch, H. Tenhunen (Eds.). Networks on Chip. Kluwer, 2003
H. G. Lee, N. Chang, U. Y. Ogras and R. Marculescu, ' On-Chip Communication Architecture Exploration: A Quantitative Evaluation of Point-to-Point, Bus, and Network-on-Chip Approaches,' to appear ACM TODAES, Vol. 12, no. 3, Article 23, August 2007
M. Coppola, et al. 'OCCN: A Network-On-Chip Modeling and Simulation Framework,' in Proc. of Design, Automation and Test in Europe, pp. 174-179, Paris, France, February, 2004
D. M. Chapiro, 'Globally asynchronous locally synchronous systems,' PhD thesis, Stanford University, 1984
D. Bertozzi, et. al., 'NoC Synthesis Flow for Customized Domain Specific Multiprocessor Systems-on-Chip,' IEEE Transactions on Paralledl and Distributed Systems, Vol. 16, no. 2, pp. 113-129, February 2005
M. Millberg, E. Nilsson, R. Thid, and A. Jantsch, 'Guaranteed Bandwidth using Looped Containers, in Temporally Disjoint Networks within the Nostrum Network on Chip,' in Proc. of Design, Automation and Test in Europe, pp. 174-179, Paris, France, February, 2004
Y. S. Dhillon, A. U. Diril, A. Chatterjee and H. S. Lee, 'Algorithm for achieving minimum energy consumption in CMOS circuits using multiple supply and threshold voltages at the module level,' in Proc. of ICCAD, pp. 693-700, San Jose, CA, USA, November 2003
U. Y. Ogras, R. Marcuescu, P. Choudhary and D. Marculescu, 'Voltage-Frequency Island Partitioning for GALS-based Networks-on-Chip,' in Proc. of Design Automation Conference, pp. 110-115, San Diego, CA, USA, June 2007
W. Jang, D. Ding, and D. Z. Pan, 'A voltage-Frequency lsland Aware Energy Optimization Framework for Networks-on-Chip,' in Proc. of ICCAD, pp. 264-269, San Jose, CA, USA, November 2008
J. Hu and R. Marculescu, 'Communication and task scheduling of application-specific networks-on-chip,' In IEE Proc. Comuters & Digital Techniques, Vol. 152, no. 5, pp. 643-651, September 2005
M. T. Schmitz, B. M. Al-Hashimi, 'Considering Power Variations of DVS Processing Elements for Energy Minimisation in Distributed Systems,' In Proc. of International Symposium on System Synthesis, pp. 250-255, Montreal, Quebec, Canada, September 2001
Robert P. Dick, 'Embedded System Synthesis Benchmarks Suite,' http://ziyang.eecs.umich.edu/~dickrp/e3s/
※ AI-Helper는 부적절한 답변을 할 수 있습니다.