• 中国计算机学会会刊
  • 中国科技核心期刊
  • 中文核心期刊

J4 ›› 2013, Vol. 35 ›› Issue (8): 25-30.

• 论文 • 上一篇    下一篇

基于表调度的Matrix DSP指令调度算法的实现

罗杰,陈跃跃,孙海燕,阳柳,淡孝强,辛乃军,王霁   

  1. (国防科学技术大学计算机学院,湖南 长沙 410073)
  • 收稿日期:2012-01-14 修回日期:2012-04-30 出版日期:2013-08-25 发布日期:2013-08-25
  • 基金资助:

    核高基重大专项资助项目(2009ZX01034001006)

Implementation of instruction scheduling algorithm
based on list scheduling for Matrix  DSP

LUO Jie,CHEN Yueyue,SUN Haiyan,YANG Liu,DAN Xiaoqiang,XIN Naijun,WANG Ji   

  1. (School of Computer Science,National University of Defense Technology,Changsha 410073,China)
  • Received:2012-01-14 Revised:2012-04-30 Online:2013-08-25 Published:2013-08-25

摘要:

指令调度是gcc实现指令并行、提高性能的一种优化策略,gcc目前支持的调度算法主要有表调度算法与模调度算法。主要根据Matrix芯片的体系结构特点,对现有的表调度算法进行了改进,实现了Matrix指令调度算法。实验结果表明,改进后的表调度算法能够编译出正确的指令,充分挖掘指令间的并行性,显式标注指令间的并行关系,指令字间的延迟关系符合硬件要求。关键词:gcc;超长指令字;Matrix; 表调度算法

Abstract:

Instruction scheduling is an optimization strategy for gcc to achieve instruction level parallelism and to improve performance. At present, the scheduling algorithm that gcc supports are list scheduling algorithm and swing model scheduling. According to the architecture feature of Matrix DSP, an improved instruction scheduling algorithm based on the list scheduling algorithm is implemented. The experiment results show that the improved algorithm can compile the c code into correct assemble codes, improve the performance of instruction parallelism, explicitly mark the parallelism between instructions, and the delay between instructions meets the hardware demands.

Key words: gcc;very long instruction word;Matrix;list scheduling algorithm