您当前的位置:五五电子网电子知识单片机-工控设备DSP/FPGA技术基于DSP芯的片嵌入式系统的混合编程设计 正文
基于DSP芯的片嵌入式系统的混合编程设计

基于DSP芯的片嵌入式系统的混合编程设计

点击数:7117 次   录入时间:03-04 11:51:14   整理:http://www.55dianzi.com   DSP/FPGA技术

  保留函数

76

  ③使用volatile变量避免优化。一个定义为volatile的变量是说这个变量可能会被意想不到地改变,比如,并行设备的硬件寄存器(如状态寄存器),一个中断服务子程序中会访问到的非自动变量,多线程应用中被几个任务共享的变量。采用volatile限定词,优化器在用到这个变量时必须每次都重新读取这个变量的值,而不是使用保存在寄存器里的备份。

  ④C语言程序应尽量避免使用指针运算。指针转换会在一定程度上降低运行效率。

  ⑤在“-ipa'’使能的情况下,在循环前使用#pragmann_alias可以起到进一步优化程序的功能。一般来说,对于循环中不存在迭代运算(使用上一次结果)的情况,优化效果很好。

  ⑥使用PM限定词定义数据块。默认情况下数组存放在DM区,即第一块数据区(0x80000-0x8ffff)中。使用PM限定的数组放在第二块数据区(0x100000-0x10ffff)中。由于两块数据区有独立的128位数据总线相连,因此可以实现单周期内的双数据同时访问。

  4 混合编程在系统程序管理中的应用

  下面是一个嵌入式系统管理实例。系统由4片DSP构成,作为系统管理的DSP0负责通过IRQ0接收控制台从RS232串口传来的控制字,译码,并通过控制flag3产生下降沿触发IRQ3中断来启动其他各片DSP。这里用C搭建框架,汇编控制底层硬件,效率高,可读性强。由于篇幅限制,这里略去了串口初始化、串口数据接收函数以及其他芯片的处理程序。

  以下是系统管理中的混合编程。

  Main.c文件:

1
 

1
 

1
 
   5 总 结

  实践证明,采用混合编程的软件更加符合一般系统对时间和空间的严格约束。设计良好的混合编程软件既能有效满足嵌入式系统对功能与性能的需求,也可以为程序的扩展和移植预留足够的空间。总之混合编程是嵌入式系统软件优化的重要途径。



上一页  [1] [2] 


本文关键字:嵌入式  DSP/FPGA技术单片机-工控设备 - DSP/FPGA技术