Application-specific customization of instruction-set in configurable processors brings dramatic energy efficiency. This energy efficiency comes mainly from the reduced number of execution cycles to perform specific applications. The reduced execution cycles are directly exploitable to Dynamic Voltage and Frequency Scaling (DVFS) to reduce dynamic energy consumption. Recent Multiprocessor Systems-on-Chips (MPSoCs) under DVFS can lower dynamic energy consumption by maximizing parallelism. Despite the potential of significant energy efficiency, there is no research that has incorporated MPSoCs with configurable processors to DVFS. In this paper, we propose a Mixed-Integer Linear Programming (MILP)-based approach to synthesize configurable MPSoCs by instruction customization so that the total dynamic energy consumption is minimized under the given silicon area budget when Dynamic Voltage and Frequency Scaling (DVFS) is employed. We have evaluated the proposed method using real-life applications and commercial configurable processors. The results show that the optimally configured multiprocessors by our method has up to 23.2% reduction of the energy consumption in comparison with the conventional approach.
최근 프로세서 아키텍처 중 구성 가능한 프로세서 (Configurable processors)는 기존의 GPP (General Purpose Processor)의 flexibility와 ASIC (Application-specific Integrated Circuit)의 efficiency의 두 가지 장점을 모두 가짐으로써 주목을 받고 있다. 또한 자동화된 tool-chain을 이용한 짧은 TTM (Time-to Market)은 소비자의 다양한 요구 변화에 빠르게 대처할 수 있다. 구성 가능한 프로세서의 경우 특정 application에 맞추어서 custom instruction을 추가하여 configuration하면 에너지 측면에서 상당한 이득을 볼 수 있다. 이 이득은 주로 application의 수행시간 단축에 의한 것이다. 이 단축된 수행시간을 이용하여 system level에서 에너지 소모를 줄이는 기술인 DVFS (Dynamic Voltage and Frequency Scaling)를 적용하면 에너지 소모를 급격히 줄일 수 있다. 또한 최근 실시간 임베디드 시스템의 경우 멀티 프로세서를 하나의 칩으로 구현하여 (MPSoC) 주어진 application을 수행하는데 성능을 더욱 향상시키고 에너지 소모를 더욱 낮출 수 있다. 본 논문에서는 구성 가능한 프로세서로 구성된 실시간 MPSoC를 합성하는 방법에 관하여 다루고자 한다. 이때 시스템을 구성하는 프로세서들이 동적으로 전압을 바꿀 수 있는 경우 (DVFS) 시스템 레벨에서 에너지를 최소화 할 수 있게 MPSoC를 합성하는 알고리즘을 제안한다. 제안하는 방법은 Mixed-Integer Linear Programming (MILP) 을 이용하여 최적의 프로세서 구성을 찾는다. 실제 c 코드로 된 application과 상용의 구성가능 한 프로세서를 이용하여 제안하는 방법을 검증하였고 기존의 configuration 알고리즘대비 최대 23.2%의 에너지 절감 효과가 있는 것을 확인하였다.