TMS320C62X DSP的混合编程研究
.L1 r_w1,r_w3,r_w2 ;这几步作了图a
中的操作过程
STW .D2 r_w1,pDst++2
STW .D1 r_w2,tmpDst++2 ;存储取得的两
个字
B .S2 loop ;延迟跳转到标号
loop处,实现循环 ……
LDW .D2T2 ++stack1,r_w4
LDW .D2T2 ++stack1,ocsr ;对被调用函数
中自己保护的寄
存器作恢复处理
MVC .S2 ocsr CSR ;恢复中断环境
B .S2 B3 ;返回到调用函数处
……
在TI CCS上用其库函数CLOCK()对这个算法的C语言程序和并行汇编程序分别进行了性能测试。在纯C语言中,运动矢量对4的偏移量的余数为0 时约为33个指令周期 余数为1时约为93个指令周期 余数为2 时约为 51个指令周期余数为3 时约为 93个指令周期平均约耗时 67个周期。而将其用并行汇编代码编写其周期数恒定为33个指令周期。33个指令周期的执行时间,对于这个函数基本上是达到了函数的最大优化。
由此可见,程序的核心算法的代码用并行汇编程序编写,而主体的C语言程序则以函数调用的形式调用这些核心算法的并行汇编函数,是提高程序代码执行效率的一种有效方法。
- 上一篇论文: 相位干涉仪测向算法及其在TMS320C6711上的实现
- 下一篇论文: 基于定点DSP的MP3间频编码算法研究及实现