完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
TDSDM642是ti公司推出的定点DSP芯片,具有性价比高、运算速度快的优点,但是定点DSP对于浮点运算比较困难,因此在系统实现时需要对算法进行浮点到定点的移植。同时,为了使DSP上的代码获得最好的性能,还应该根据TDSDM642芯片片内资源的特征进行优化。优化的方法有编译优化、软件流水、内联函数等。通过优化可以明显提高代码执行速度,并减小代码尺寸。 说话人识别当中,计算耗时最长的是MFCC参数的提取和参数模型的训练,本文采用以下优化方法。 3.1 编译器优化 TI公司的CCS编译器可以对C代码进行不同级别的优化,通过打开不同的优化选项,可以针对具体的硬件平台进行不同程度的优化,包括代码的大小、运行的速度等。通常经过CCS优化的程序,运行速度已经相当快,结构设计良好的程序能实现90%的优化。如果还没有达到系统设计的要求,则需要对代码进行手工优化。 3.2 软件流水优化 TDSDM642处理器采用C64x系列芯片,其内部共有8条软件流水线,可以8条指令并行执行,能够大大提高系统性能。恰当地设计软件结构,并配合合适的编译优化选项,可以充分利用芯片内的软件流水优化提高系统性能。CCS的编译优化一般只针对最内层的循环进行流水 优化,并且在循环中代码应该尽量简单,如果循环中含有大量判断、跳转等指令,那么编译出来的软件流水会大打折扣,有时甚至无法进行流水执行指令,这样处理器的性能就不能充分地发挥出来。 3.3 循环展开优化 循环展开是另一种优化程序的方法。为了充分利用芯片内的硬件资源,使尽可能多的指令同时并行执行,可以采用将小循环展开的方式,使片内资源的性能得到最大的发挥。CCS优化编译器通常情况下会根据程序的情况自动展开循环,编程人员也可以采用编译指令或手工方式展开循环优化程序。 3.4 采用内联函数 TI公司的C6000编译器含有大量的内联函数,支持从C语言里直接调用汇编程序,从而大大提高程序的执行速度。系统提供的内联函数还可以支持C64x系列DSP特有指令的执行,例如数据打包相乘等操作,可以进一步提高系统数据处理能力。 (本文由Cogo商城-IC元器件在线采购平台搜集整理,浏览http://www.cogobuy.com/product/2-1-1-1.html 了解更多详细信息) |
|
相关推荐 |
|
只有小组成员才能发言,加入小组>>
842浏览 0评论
212浏览 0评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-26 09:20 , Processed in 1.223279 second(s), Total 43, Slave 34 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号