如何正确的选择dsp芯片?
扫描二维码
随时随地手机看文章
DSP应用系统的运算量是确定选用处理能力为多大的DSP芯片的基础。运算量小则可以选用处理能力不是很强的DSP芯片,从而可以降低系统成本。相反,运算量大的DSP系统则必须选用处理能力强的DSP芯片,如果DSP芯片的处理能力达不到系统要求,则必须用多个DSP芯片并行处理。那么如何确定DSP系统的运算量以选择DSP芯片呢?
1.按样点处理
所谓按样点处理就是DSP算法对每一个输入样点循环一次。数字滤波就是这种情况。在数字滤波器中,通常需要对每一个输入样点计算一次。例如,一个采用LMS算法的256 抽头的自适应FIR滤波器,假定每个抽头的计算需要3个MAC周期,则256抽头计算需要256×3=768个MAC周期。如果采样频率为8kHz,即样点之间的间隔为125ms,DSP芯片的MAC周期为200ns,则768个MAC周期需要153.6ms的时间,显然无法实时处理,需要选用速度更高的DSP芯片。
2.按帧处理
有些数字信号处理算法不是每个输入样点循环一次,而是每隔一定的时间间隔(通常称为帧)循环一次。例如,中低速语音编码算法通常以10ms或20ms为一帧,每隔10ms或20ms语音编码算法循环一次。所以,选择DSP芯片时应该比较一帧内DSP芯片的处理能力和DSP算法的运算量。假设DSP芯片的指令周期为 p(ns),一帧的时间为Dt (ns),则该DSP芯片在一帧内所能提供的最大运算量为 Dt/p条指令。例如TMS320LC549-80的指令周期为12.5ns,设帧长为20ms,则一帧内TMS320LC549-80所能提供的最大运算量为160万条指令。因此,只要语音编码算法的运算量不超过160万条指令,就可以在TMS320LC549-80上实时运行。
3、字长的选择
一般浮点DSP芯片都用32位的数据字,大多数定点DSP芯片是16位数据字。而Motorola公司定点芯片用24位数据字,以便在定点和浮点精度之间取得折衷。字长大小是影响成本的重要因素,它影响芯片的大小、引脚数以及存储器的大小,设计时在满足性能指标的条件下,尽可能选用最小的数据字。
4、存储器等片内硬件资源安排
包括存储器的大小,片内存储器的数量,总线寻址空间等。片内存储器的大小决定了芯片运行速度和成本,例如TI公司同一系列的DSP芯片,不同种类芯片存储器的配置等硬件资源各不相同。通过对算法程序和应用目标的仔细分析可以大体判定对DSP芯片片内资源的要求。几个重要的考虑因素是片内RAM和ROM的数量、可否外扩存储器、总线接口/中断/串行口等是否够用、是否具有A/D转换等。
5、开发调试工具
完善、方便的的开发工具和相关支持软件是开发大型、复杂DSP系统的必备条件,对缩短产品的开发周期有很重要的作用。开发工具包括软件和硬件两部分。软件开发工具主要包括:C编译器、汇编器、链接器、程序库、软件仿真器等,在确定DSP算法后,编写的程序代码通过软件仿真器进行仿真运行,来确定必要的性能指标。硬件开发工具包括在线硬件仿真器和系统开发板。在线硬件仿真器通常是JTAG周边扫描接口板,可以对设计的硬件进行在线调试;在硬件系统完成之前,不同功能的开发板上实时运行设计的DSP软件,可以提高开发效率。甚至在有的数量小的产品中,直接将开发板当作最终产品。
选择DSP可以根据以下几方面决定:
1)速度: DSP速度一般用MIPS或FLOPS表示,即百万次/秒钟。根据您对处理速度的要求选择适合的器件。一般选择处理速度不要过高,速度高的DSP,系统实现也较困难。
2)精度: DSP芯片分为定点、浮点处理器,对于运算精度要求很高的处理,可选择浮点处理器。定点处理器也可完成浮点运算,但精度和速度会有影响。
3)寻址空间: 不同系列DSP程序、数据、I/O空间大小不一,与普通MCU不同,DSP在一个指令周期内能完成多个操作,所以DSP的指令效率很高,程序空间一般不会有问题,关键是数据空间是否满足。数据空间的大小可以通过DMA的帮助,借助程序空间扩大。
4)成本: 一般定点DSP的成本会比浮点DSP的要低,速度也较快。要获得低成本的DSP系统,尽量用定点算法,用定点DSP。
5)实现方便: 浮点DSP的结构实现DSP系统较容易,不用考虑寻址空间的问题,指令对C语言支持的效率也较高。
6)内部部件:根据应用要求,选择具有特殊部件的DSP。如:C2000适合于电机控制;OMAP适合于多媒体等。
以上便是此次小编带来的DSP芯片相关内容,通过本文,希望大家对DSP芯片已经具备一定的了解。如果你喜欢本文,不妨持续关注我们网站哦,小编将于后期带来更多精彩内容。