现在市面上的DSP产品很多,定点DSP有200多种,浮点DSP有100多种。主要生产:TI 公司、AD公司、Lucent、Motorola和LSI Logic公司。主导产品: TI 公司的TMS320C54xx(16bit 定点)、 TMS320C55xx(16bit 定点)、 TMS320C62xx(32bit 定点)、 TMS320C67xx(16bit 浮点)、Motorola公司的DSP68000系列。我们在DSP选型时需要注意什么?
1、DSP芯片概述
16bit定点DSP:最早以TMS320C10/C2X为代表,现在以TM320C2XX/C54XX为代表。
32 bit浮点DSP:代表产品ADSP21020、TMS320C3X
通用DSP芯片的代表性产品包括TI公司的TMS320系列、AD公司ADSP21xx系列、MOTOROLA公司的DSP56xx系列和DSP96xx系列、AT&T公司的DSP16/16A和DSP32/32C等单片器件。
TI的三大主力DSP产品系列为C2000系列主要用于数字控制系统;C5000(C54x、C55x)系列主要用于低功耗、便携的无线通信终端产品;C6000系列主要用于高性能复杂的通信系统。C5000系列中的TMS320C54x系列DSP芯片被广泛应用于通信和个人消费电子领域。
在DSP系统的设计流程中,选择合适的器件非常重要,在确定了系统功能需求之后,通过先期的算法确定及性能模拟,我们要选择性价比最高的器件才能够为下一步开发提供便利。
DSP系统的设计流程图
2,DSP芯片的选择方法
一般而言,定点DSP芯片的价格较便宜,功耗较低,但运算精度稍低。而浮点DSP芯片的优点是运算精度高,且C语言编程调试方便,但价格稍贵,功耗也较大。例如TI的TMS320C2XX/C54X系列属于定点DSP芯片,低功耗和低成本是其主要的特点。而TMS320C3X/C4X/C67X属于浮点DSP芯片,运算精度高,用C语言编程方便,开发周期短,但同时其价格和功耗也相对较高。
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芯片。表1.3示出了两种信号带宽对三种 DSP 芯片的处理要求,三种DSP芯片的MAC周期分别为200ns、50ns和25ns。从表中可以看出,对话带的应用,后两种DSP芯片可以实时实现,对声频应用,只有第三种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芯片选型时需要注意什么?
(1)速度指标:
DSP最基本的速度指标是MIPS(百万条指令每秒)和MFLOPS(百万次浮点运算每秒),还有FFT和FIR滤波器的速度及除法、求平房根等特殊运算的速度。
(2)输入输出的带宽
在运算速度达到要求时,还要考虑DSP输入/输出数据的速度是否足够快。
(3)精度和动态范围:精度和动态范围由DSP的数据字宽和定点/浮点数据格式决定。
(4)特定功能:若DSP上集成了多种上电加载功能、同步/异步串口、A/D、D/A、片内语音处理功能、编解码等,可以方便设计,降低成本。
(5)片内存储器
DSP片内存储器可用来放程序和数据,当程序和数据都放在片内时,DSP的运行速度要高得多,所以片内存储器越多越好。
(6)DSP开发工具
选择DSP芯片时必须注意其开发工具的支持情况,包括硬件和软件。
(7)功耗问题和硬件封装问题
(8)成本问题
定点DSP较便宜,功耗较低,但运算精度稍低。
浮点DSP稍贵,功耗较高,但运算精度高,C语言编程调试方便。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)