2307|1

3836

帖子

19

TA的资源

纯净的硅(中级)

楼主
 

图像算法移植到DSP及其优化步骤 [复制链接]

当需要把已经写好的算法,移植到DSP开发板上并很好的跑起来,需要做哪些工作呢?

下面分两部分来讲,第一分部是移植,第二部分为算法优化

移植:
1)如果算法是基本opencv这样的基本上开发的,需要脱离opencv的环境。

2)如果算法是C++语言,请你改成标准的C语言。虽然DSP的开发环境是支持C++的,但是不建议你这么做。

3)修改算法的内存分配,尽量内存一次分配好,DSP在算法不断的申请和释放时会有隐患。优先使用静态数组,会减轻很多工作量。

4)在CCS下建立工程,来调试算法,内存分配函数需要使用TI提供的函数。如果算法能够长期稳定的运行,那么恭喜,算法移植就完成了。

优化:
算法优化,需要你能懂算法,也懂DSP。如果只会写DSP程序,而不会算法,这对整个产品来说,是不能达到最优的。有些公司怕算法泄密,给优化人员一段或几段程序让其优化。觉得这样做是很不合理的。除非自己能控制大局,精通优化,这样才可行。

1)需要对算法原理做一个深刻苦的理解,阅读相关的文章。

2)对拿到的算法做全方位的熟悉。

3)做好上面的准备工作后,要对算法的结构做重新的整理。依据DSP的特点,比如内存的分布。算法结构调整完成后,算法在DSP上速度应该有一个明显的提高了。

4)结构调整完成后,找到算法中比较费时的部分。确定需要优化的重点,这部分内容多是每张图像都要处理一次或多次的部分。对于算法启动时初始化部分的内容,一般不需要优化。

5)确定优化内容后,首先考虑从语言结构上去做优化,这个时候应该还是C语言的。不建议大家用TI提供的在C语言中使用优化嵌入的C库函数。

6)把需要优化的函数改写为线性汇编或汇编函数。不断的调整软件流水,提高速率。

这个整个移植优化的工作就基本上做完了,其实实际工作中,移植优化的工作量往往会比较大,要不断的反复,找更好的方法。移植优化跟算法开发一样,是个细致的活。需要静下心来,仔细研究,欢迎大家一起来探讨。

最新回复

  详情 回复 发表于 2019-4-18 08:43
 
点赞 关注(1)

回复
举报

173

帖子

0

TA的资源

宇宙尘埃

沙发
 
 
个人签名服务器大全
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/6 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表