您当前的位置:首页 > 行业资讯

基于TI C6000系列DSP的C/C++程序优化技术

时间:2015-04-02  来源:扁平线圈电感厂家  点击:

摘 要:在现代DSP的开发中,越来越多地采用C/c++作为开发语言,而C/C++程序的优化成为DSP’软件开发的重要环节。在此介绍TI C6000的软件开发流程,重点讨论C6000系列的C/C++程序优化技术,包括优化流程,C/C++代码优化方法,编写线形汇编代码优化方法等。为DSP的C/C++软件开发提供了全面的程序优化技术和方法,对实际系统的开发具有重要的现电感器生产实意义。
关键词:C6000;程序优化;软件流水;线性汇编


0 引 言
目前在DSP平台上编程多使用汇编语言与C语言,为了追求代码的高效,过去一般用汇编语言来编制。DSP程序汇编语言简洁高效,能够直接操作DSP的内部寄存器、存储空间、外设,但可读性、可修改性、可移植性较差;随着DSP应用范围不断延伸,应用的日趋复杂,汇编语言程序在可读性、可修改性、可移植性和可重用性的缺点日益突出,软件需求与软件生产力之间的矛盾日益严重。引入高级语言(如C语言,C++,Java),可以解决该矛盾。在高级语言中,C语言是一种较为高效的高级语言,在可读性、可移植性等方面优于汇编指令。各个DSP芯片公司都相继推出了相应的C语言编译器。
但由于DSF结构的特殊性,使得该平台上的C语言编译器无法充分发挥DSP器件的性能优势。同样功能的C语言程序,效率往往只有直接书写的汇编程序的几分之一甚至几十分之一,因此有必要根据DSP的特性对C语言编写的程序进行进一步的优化。


l TMS320C6000处理器介绍
TMS320C6000是TMS320系列产品中的新一代高性能DSP芯片,共分为两大系列。其中定点系列为TMS320C62xx和TMS320C64xx;浮点系列为TMS320C67xx。由于TMS320C6000的开发主要面向数据密集型算法,它有着丰富的内部资源和强大的运算能力,所以被广泛地应用于数字通信和图像处理等领域。
C6000系列CPU中的8个功能单元可以并行操作,并且其中两个功能单元为硬件乘法运算单元,大大地提高了乘法速度。DSP采用具有独立程序总线和数据总线的哈佛总线结构,仅片内程序总线宽度就可达到256位,即每周期可并行执行8条32位指令;片内两套数据总线的宽度分别为32位;此外,DSP还有一套32位DMA专用总线用于传输。灵活的总线结构使得数据瓶颈对系统性能的限制大大缓解。C6000的通用寄存器组能支持32位和40位定点数据操作,另外C67xx和C64xx还分别支持64位双精度数据和64位双字定点数据操作。除了多功能单元外,流水技术是提高DSP程序执行效率的另一主要手段。由于TMS320C6000的特殊结构,功能单元同时执行的各种操作可由VLlW长指令分配模块来同步执行,使8条并行指令同时通过流水线的每个节拍,极大地提高了机器的吞吐量。


2 C6000软件开发流程
图1为C6000的软件开发流程图。图中阴影部分是开发C代码的常规流程,其他部分用于辅助和加速开发讨程.

C/C++源文件首先经过C/C电感镇流器++编译器(C/C++cornpiler)转换为C6000汇编源代码。编译器、优化器(optimizer)和交叠工具是C/C++编译器的组成部分。编译器使用户能一步完成编译、汇编和连接;优化器调整合修改代码以提高C程序的效率;交叠工具把C/C++语句和对应的汇编语句交叠列出。
汇编源代码再经过汇编器(Assembier)翻译为机共模电感器器语言目标文件。机器语言是基于通用目标文件格式(Common Object File Format,COFF)的。
连接器(Linker)连接目标文件,生成一个可执行文件。它要完成地址的重分配(Relocation)和解析外部引用(Resolve External References)。
得到可执行文件之后就可以进行调试。可用软件仿真器(Simulator)在PC机上对指令和运行时间进行精确仿真;用XDS硬件仿真器(Emulator)在目标板上进行调试。
调试通过后即可下载到目标板进行独立运行。


3 程序优化流程及方法
3.1 程序优化阶段
由于DSP应用的复杂度,在用C语言进行DSP软件开发时,一般先在基于通用微处理器的PC机或工作站上对算法进行仿真,仿真通过后再将C程序移植到DSP平台中。
所以,DSP的软件开发与优化流程主要分为3个阶段:C代码开发阶段;C代码优化阶段;手工汇编代码重编写阶段。如图2所示。

大电流电感

ABB开发出无需高架电线的电动公交车15秒闪充技
全球领先的电力和自动化技术集团ABB已开发出一项全新的快速充电技术,为世界上第一个大容量闪充电动公交系统提供动力。
在日内瓦召开的第60届公共交通国际联会(UITP)上,AB

EG8011驱动光耦加负压/upload/community/2020/06/05/1591346669-88148.pdf,EG8001驱动光耦加负压,兄弟们看看哪里不对

2.5 GHz高线性度瓦级CMOS功率放大器的设计 摘 要: 设计了一个工作于2.5 GHz、最高输出功率达到31.8 dBm的CMOS功率放大器(PA),该PA由两级放大器组成,两级放大器均采用全差分电路结构。为了实现1 W以上的输出功率,第二

注塑加工厂


上一篇基于ADSP—BF533的μClinux嵌入式系统移植与开发

下一篇充满信心地设计军用SDR产品


  
  温馨提示
网站首页 | 产品展示 | 科技前沿 | 行业资讯
本公司专业研发、设计、生产、销售贴片电感、插件电感、功率电感、大电流电感、扁平线圈电感、一体成型电感。
专业电感生产制造商,品质优异、交期快。
在线客服
热线电话