DSP数字信号处理和通用的CPU的区别是什么?
以微处理器解度看,两者似乎没什么差别. 但二者所专注的邻域却完全不一样. 通用的CPU专注的事务处理,对实时性的支持相对DSP差了很多.虽然一些通用CPU也在加入一些高性能的运算支持,但它和DSP相比还是天差地远.
比如现在的通用DSP可以在几个us内完成1024点的复数FFT,通用处理器是咋都达不到这水平(现在的情况),虽然其系统时钟有可能比DSP高出一个数量级.但一个周期完成多个复杂操作和多个周期完成一个操作的差别是很大的.
DSP完成的都是算法密集性的事务,可能工作比较单一而简单,但对实时要求很高很高.必需要某个确定的时间内(有可能就那么几us)完成所需要的所有操作.
通用CPU对事务管理很突出, 在这方面的能力比DSP支持得要好得多.
所以大多数的高性能系统会是DSP和通用CPU的结合.充分利用各自的优点.
由于DSP特注重高性能,其结构在同等条件比通用CPU要复杂得多,设计上也更困难.因此其价格相比通用CPU要贵那么一些(只是通用DSP和通用CPU相比),一些很单一功能的DSP可是很便宜的,比通用CPU还便宜. 通用DSP因为要考虑通用,所以结构和专用的也是不一样的.
|
|