进行dsp系统设计?这些知识点不可错过

描述

DSP系统设计开发流程

DSP平台

  在设计需求规范,确定设计目标时,其实要解决二个方面的问题:即信号处理方面和非信号处理的问题。

  信号处理的问题包括:输入、输出结果特性的分析,DSP算法的确定,以及按要求对确定的性能指标在通用机上用高级语言编程仿真。

  非信号处理问题包括:应用环境、设备的可靠性指标,设备的可维护性,功耗、体积重量、成本、性能价格比等项目。

  算法研究与仿真这是DSP应用实际系统设计中重要的一步。这种仿真是在通用机上用高级语言编程实现的,编程时最好能仿DSP处理器形式运行,以达到更好的真实性。

  DSP芯片选择中通常有下列几条应注意的:

  (1)精度:表数格式(定点或浮点),通常可以用定点器件解决的问题,尽量用定点器件,因为它经济、速度快、成本低,功耗小。但是在编程时要关注信号的动态范围,在代码中增加限制信号动态范围的定标运算。

  (2)字长的选择:一般浮点DSP芯片都用32位的数据字,大多数定点DSP芯片是16位数据字。而MOTOROLA公司定点芯片用24位数据字,以便在定点和浮点精度之间取得折中。字长大小是影响成本的重要因素,它影响芯片的大小、引脚数以及存储器的大小,设计时在满足性能指标的条件下,尽可能选用最小的数据字。

  (3)存储器安排:包括存储器的大小,片内存储器的数量,总线寻址空间等。片内存储器的大小决定了芯片运行速度和成本,例如TI公司同一系列的DSP芯片,不同种类芯片存储器的配置等硬件资源各不相同。

  (4)开发工具:在DSP系统设计中,开发工具是必不可少的,一个复杂的DSP系统,必须有功能强大的开发工具支持。

  开发工具包括软件和硬件两部分。在确定DSP算法后,编写的程序代码通过软件仿真器进行仿真运行,来确定必要的性能指标。硬件开发工具包括在线硬件仿真器和系统开发板。在线硬件仿真器通常是JTAG周边扫描接口板,可以对设计的硬件进行在线调试;在硬件系统完成之前,不同功能的开发板上实时运行设计的DSP软件,可以提高开发效率。甚至在有的数量小的产品中,直接将开发板当作最终产品。

  (5)功耗与电源管理:在一些手提便携式的消费类电子产品中,供电电源的节省是很重要的问题,因而目前DSP生产厂商越来越重视这方面。它通常包括供电电压的选择和电源的管理功能。

  供电电压一般取得比较低,实施芯片的低电压供电,通常有3.3V,2.5V,1.8V,0.9V等,在同样的时钟频率下,它们的功耗将远远低于5V供电电压的芯片。

  加强了对电源的管理后,通常用休眠、等待模式等方式节省功率消耗。例如TI公司提供了详细的、功能随指令类型和处理器配置而改变的应用说明。

  (6)成本和厂家的销售后服务:特别要注意DSP芯片的生产和主推产品,以便以低的成本实施来要求产品。但低价位的芯片必然是功能较少、片内存储器少、性能上差一些的,这就带给编程一定的困难。

  (7)支持多处理器:近来各类软件在无线电产品及雷达中的应用中,都需要能处理高数据率、大运算量的应用系统。单一的处理器系统已难以承担这类复杂任务,因而采用多个处理器并行工作。这种情况下,各处理器之间连接和通讯功能是必须要作为主要因素予以考虑的。近年新推出的DSP芯片系列都改善了这方面性能,注意增加专门的接口或DMA通道,来支持多处理器的DSP运行。

  DSP处理器软、硬件开发工具简介

DSP平台

  随着DSP处理器的功能不断强化和系统开发周期不断缩短,设计和调试DSP系统越来越依赖于DSP开发系统和开发工具,图2为DSP处理器开发流程图。

  虽然厂家不同,但提供的开发调试工具大致类同,一般有下列几种:

  ◆C语言编译器(C Compiler)

  一般厂家为了开发DSP系统方便、减小编写汇编程序的难度,都提供了高级语言设计方法。开发系统针对DSP库函数、头文件及编写的C程序,自动生成对应的汇编语言,这一步称为C编译。C编译器通常符合ANSI C标准,可以对编写的程序进行不同等级的优化,以产生高效的汇编代码;C编译器还具有对存储器的配置、分配及部分链接功能;并应具有灵活的汇编语言接口等多种功能。

  C编程方法易学易用,但编译出的汇编程序比手工汇编程序长得多,因而效率一般只有20%~40%。为了克服C编译器低效率,在提供标准C库函数同时,开发系统也提供了许多针对DSP运算的高效库函数,它们都是手工汇编的,带有高级语言调用/返回接口。

  一般为了得到高效编程,在系统软件开发中,关键的DSP运算程序都是自行手工用汇编语言编写,按照规定的接口约定,由C程序进行调用,这样极大提高编程效率。

  ◆链接器(Linker)

  将主程序、库函数和子程序等,由汇编器产生的目标文件链接在一起,产生一个可执行的模块,形成DSP目标代码。

  ◆硬件仿真器(Emulator)

  在线仿真工具,它用JTAG接口电缆把DSP硬件目标系统和装有仿真软件/仿真卡的PC接口板连接起来,用PC平台对实际硬件目标系统进行调试,能真实地仿真程序在实际硬件环境下的功能。

  ◆汇编器(Assembler)

  将汇编语言原文件转变为基于公用目标文件格式的机器语言目标文件。

  ◆软件模拟器(Simulator)

  是脱离硬件的纯软件仿真工具。将程序代码加载后,在一个窗口工作环境中,可以模拟DSP的运行程序,同时对程序进行单步执行、设置断点,对寄存器/存储器进行观察、修改,统计某段程序的执行时间等。通常在程序编写完以后,都会在软件仿真器上进行调试,以初步确定程序的可运行性。软件仿真器的主要欠缺是对外部接口的仿真不够完善。

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分