基于 TI C6000 系列 DSP 的 C/C++ 程序优化技术
http://www.61ic.com/Article/C6000/C64X/200906/23286.html
来源:现代电子技术 作者:杨光宇,高晓蓉,王 黎,王泽勇 西南交通大学理学院
【摘 要】:在现代 DSP的开发中,越来越多地采用 C/ C++作为开发语言,而 C/ C++程序的优化成为 DSP’软件开发的重要环节。在此介绍 TI C6000的软件开发流程,重点讨论 C6000系列的 C/ C++程序优化技术,包括优化流程, C/ C++代码优化方法等。为 DSP的 C/C++软件开发提供了全面的程序优化技术和方法,对实际系统的开发具有重要的现实意义。
【关键词】: C6000;程序优化;软件流水;线性汇编
0 引 言
由于 DSP 结构的特殊性,使得该平台上的 C 语言编译器无法充分发挥 DSP 器件的性能优势。 同样功能的 C语言程序,效率往往只有直接书写的汇编程序的几分之一甚至几十分之一,因此有必要根据 DSP的特性对 C语言编写的程序进行进一步的优化。
l TMS320C6000处理器介绍
TMS320C6000是 TMS320系列产品中的新一代高性能 DSP芯片,共分为两大系列。其中定点系列为 TMS320C62xx 和 TMS320C64xx ;浮点系列为 TMS320C67xx 。 由于 TMS320C6000的开发主要面向数据密集型算法,它有着丰富的内部资源和强大的运算能力,所以被广泛地应用于数字通信和图像处理等领域 。
C6000系列 CPU中的 8 个功能单元可以并行操作 ,并且其中两个功能单元为硬件乘法运算单元,大大地提高了乘法速度。 DSP 采用具有独立程序总线和数据总线的哈佛总线结构,仅片内程序总线宽度就可达到 256 位