DOI QR코드

DOI QR Code

VLIW (Very Long Instruction Word) 형식 드론 FCC(Flight Control Computer)의 실시간성 개선을 위한 소프트웨어 성능 가속화 연구

A Study on software performance acceleration for improving real time constraint of a VLIW type Drone FCC

  • Cho, Doo-San (Dept. of Electrical & Electronic Engineering, Sunchon National University)
  • 투고 : 2016.12.23
  • 심사 : 2017.02.14
  • 발행 : 2017.03.31

초록

Most conventional processors execute program instructions in a sequential manner. On the other hand, VLIW processor can execute multiple instructions at the same time. It exploits instruction level parallelism to improve system performance. To that end, program code should be rearranged to VLIW instruction format by a compiler. The compiler determine an optimal execution order of instructions of a program code. This instruction ordering is also called instruction scheduling. The scheduling is an algorithm that decides the execution order for instruction codes in loop parts of a program so that the instruction level parallelism can be maximized. In this research, we apply an existing scheduling algorithm to a VLIW FCC and describe analysis results to further improve its performance. And, we present a solution to solve some limitation of the existing scheduling technique. By using our solution, FCC's performance can be improved upto 32% compared to the existing scheduling only setting.

키워드

참고문헌

  1. M. Lam : Software pipelining: an effective scheduling technique for VLIW machines. Proceedings of the SIGPLAN Conference on Programming Language Design and Implementation, pp.318-328, (1988).
  2. H. Allan, B. Jones, M. Lee, J. Allan : Software Pipelining. ACM Computing Surveys, 27, 3, (1995).
  3. B. Rau : Iterative modulo scheduling. HP Laboratories Technical Report, HPL94115, (1995).
  4. D. Lavery and W. Hwu : Unrolling-Based Optimizations for Modulo Scheduling. Proceedings of the 28th annual international symposium on Microarchitecture, pp.327-337, (1995).
  5. R. Huff : Lifetime-Sensitive Modulo Scheduling. Proceedings of the SIGPLAN Conference on Programming Language Design and Implementation, pp.258-267, (1993).
  6. B. Rau and D. Glaser : Some scheduling techniques and an easily schedulable horizontal architecture for high performance scientific computing. Proceedings of the 14th Microprogramming Workshop, pp.183-198, (1981).
  7. J. Hennessy and D. Patterson : Computer Architecture - a Quantitative Approach. Morgan Kaufmann, (2011).