关注公众号

关注公众号

手机扫码查看

手机查看

喜欢作者

打赏方式

微信支付微信支付
支付宝支付支付宝支付
×

DSP处理器开发的简便性

2021.9.05

  对不同的应用来说,对开发简便性的要求不一样。对于研究和样机的开发,一般要求系统工具能便于开发。而如果公司在开发下一代手机产品,成本是最重要的因素,只要能降低最终产品的成本,一般他们愿意承受很烦琐的开发,采用复杂的开发工具(当然如果大大延迟了产品上市的时间则是另一回事)。

  因此选择DSP时需要考虑的因素有软件开发工具(包括汇编、链接、仿真、调试、编译、代码库以及实时操作系统等部分)、硬件工具(开发板和仿真机)和高级工具(例如基于框图的代码生成环境)。

  选择DSP器件时常有如何实现编程的问题。一般设计工程师选择汇编语言或高级语言(如C或Ada),或两者相结合的办法。大部分的DSP程序采用汇编语言,由于编译器产生的汇编代码一般未经最优化,需要手动进行程序优化,降低程序代码大小和使流程更合理,进一步加快程序的执行速度。这样的工作对于消费类电子产品很有意义,因为通过代码的优化能弥补DSP性能的不足。

  使用高级语言编译器的设计工程师会发现,浮点DSP编译器的执行效果比定点DSP好,这有几个原因:首先,多数的高级语言本身并不支持小数算法;其次,浮点处理器一般比定点处理器具有更规则的指令,指令限制少,更适合编译器处理;第三,由于浮点处理器支持更大的存储器,能提供足够的空间。编译器产生的代码一般比手动生成的代码更大。

  不管是用高级语言还是汇编语言实现编程,都必须注意调试和硬件仿真工具的使用,因为很大一部分的开发时间会花在这里。几乎所有的生产商都提供指令集仿真器,在硬件完成之前,采用指令集仿真器对软件调试很有帮助。如果所用的是高级语言,对高级语言调试器功能进行评估很重要,包括能否与模拟机和/或硬件仿真器一起运行等性能。

  大多数DSP销售商提供硬件仿真工具,许多处理器具有片上调试/仿真功能,通过采用IEEE1149.1JTAG标准的串行接口访问。该串行接口允许基于扫描的仿真,即程序员通过该接口加载断点,然后通过扫描处理器内部寄存器来查看处理器到达断点后寄存器的内容并进行修改。

  很多的生产商都可以提供现成的DSP开发系统板。在硬件没有开发完成之前可用开发板实现软件实时运行调试,这样可以提高最终产品的可制造性。对于一些小批量系统甚至可以用开发板作为最终产品电路板。

推荐
关闭