- 멀티모드 멀티태스크 임베디드 어플리케이션을 위한 HW/SW 분할 기법
- ㆍ 저자명
- 김영준,김태환,Kim. Young-Jun,Kim. Tae-Whan
- ㆍ 간행물명
- 정보과학회논문지. Journal of KIISE. 시스템 및 이론
- ㆍ 권/호정보
- 2007년|34권 8호|pp.337-347 (11 pages)
- ㆍ 발행정보
- 한국정보과학회
- ㆍ 파일정보
- 정기간행물| PDF텍스트
- ㆍ 주제분야
- 기타
시스템의 기능을 바꾸어 가면서 여러 개의 어플리케이션을 작동시키는 임베디드 시스템을 멀티모드(multi-mode) 임베디드 시스템이라 부른다. 더 나아가서 하나의 모드가 여러 개의 태스크로 구성된 임베디드 시스템을 멀티모드 멀티태스크(multi-task) 임베디드 시스템이라 부른다. 본 논문에서는 시간제한 조건을 가지고 있는 멀티모드 멀티태스크 임베디드 어플리케이션을 대상으로 하는 HW/SW 분할 방법에 대한 연구이다. 시간제한 조건을 만족하는 스케줄과 함께 태스크의 기능모듈(functional module)을 동작시킬 효율적인 처리 자원(processing resource)을 할당/매핑하여 시스템의 비용(가격)을 최대한 낮추는 것이 목적이다. 이 문제를 잘 풀기 위해 중요한 것은 모듈사이의 병렬성을 최대한 이용하여 실행시키는 것이다. 그러나 이전의 HW/SW 분할 방법은 모듈의 병렬 실행 가능성을 최대한 이용하지 않았는데, 병렬성 이용을 위한 탐색 계산이 복잡할 뿐 아니라 스케줄 가능성(schedulability) 검사를 단순하게 하려고 하였기 때문이다. 기존 방법의 한계를 극복하기 위해서 우리는 다음의 세 개의 세부문제를 동시에 고려하는 HW/SW 분할 기법을 제안한다: (1) 처리 자원의 할당 (2) 태스크 모듈에 대한 처리 자원 매핑 (3) 모듈실행 스케줄의 결정. 특별히 모듈의 병렬 실행과 실행 가능성을 간결하게 측정하는데 바탕을 둔 단순모드(single-mode) 멀티태스크 어플리케이션에 대한 반복 개선 방식을 갖는 분할 기법을 만들었다. 다시 이 기법을 확장하여 멀티모드 멀티태스크 어플리케이션의 분할 기법을 만들었다. 실제 사용되는 어플리케이션을 대상으로 한 실험에서 제안된 우리의 기법이 기존의 방법에 비해서 단순모드와 멀티모드 멀티태스크 어플리케이션에 대해서 각각 17.0%와 19.0%의 가격을 낮추는 것이 확인되었다.
An embedded system is called a multi-mode embedded system if it performs multiple applications by dynamically reconfiguring the system functionality. Further, the embedded system is called a multi-mode multi-task embedded system if it additionally supports multiple tasks to be executed in a mode. In this Paper, we address a HW/SW partitioning problem, that is, HW/SW partitioning of multi-mode multi-task embedded applications with timing constraints of tasks. The objective of the optimization problem is to find a minimal total system cost of allocation/mapping of processing resources to functional modules in tasks together with a schedule that satisfies the timing constraints. The key success of solving the problem is closely related to the degree of the amount of utilization of the potential parallelism among the executions of modules. However, due to an inherently excessively large search space of the parallelism, and to make the task of schedulabilty analysis easy, the prior HW/SW partitioning methods have not been able to fully exploit the potential parallel execution of modules. To overcome the limitation, we propose a set of comprehensive HW/SW partitioning techniques which solve the three subproblems of the partitioning problem simultaneously: (1) allocation of processing resources, (2) mapping the processing resources to the modules in tasks, and (3) determining an execution schedule of modules. Specifically, based on a precise measurement on the parallel execution and schedulability of modules, we develop a stepwise refinement partitioning technique for single-mode multi-task applications. The proposed techniques is then extended to solve the HW/SW partitioning problem of multi-mode multi-task applications. From experiments with a set of real-life applications, it is shown that the proposed techniques are able to reduce the implementation cost by 19.0% and 17.0% for single- and multi-mode multi-task applications over that by the conventional method, respectively.