消费性产品与通讯产品都要能支援高运算量和资料转换的功能。这些产品对体积大小和耗电量的要求很严格,而数位讯号处理器(DSP),就是这些产品最核心的部份。为了支援这些产品的需求和应用,DSP应该是可程式化的、可设定的和可扩充的。因此高速可设定式DSP因此应运而生,它非常适合应用在需要高效能、低功率且可以弹性设计的消费性产品和通讯产品上。
消费性产品与通讯产品,基本上都要能支援高运算量和资料转换(transformation)的功能。例如:视讯影像的编码与解码、声音的压缩与解压缩,或者影像资料的处理及压缩、语音的播放以及通讯频道的编解码等应用。
这些产品对体积大小和耗电量的要求很严格,而且要求能针对特定的规格提供最佳的支援。而所谓特定的规格就是指产品的应用功能。例如:手提式视讯装置需要低功率和低成本,但影像品质并不高;不过,视讯广播市场所需要的视讯产品,则必须是高画质的,且其运算处理效能一定要高。
此外,目前许多产品都必须同时支援多
而数位讯号处理器(digital signal processing;DSP),就是这些产品最核心的部份,负责处理那些需要大量运算的资料。为了有效地支援这些产品的需求和应用,DSP应该是可程式化的(programmable)、可设定的(configurable/reconfigurable)和可扩充的(scalable)。高速的可设定式DSP因此应运而生,它非常适合应用在需要高效能、低功率且可以弹性设计的消费性产品和通讯产品上。
高速可设定式DSP的设计目的,简单说,就是要在单一的系统级单晶片(SoC)架构下,支援许多种应用和需求,而且使用者可以利用高阶语言来开发。为了能尽早完成产品的开发工作,使产品能提早上市,这种新技术将是无法抵挡的趋势。
必须了解的定义
有几个定义必须先了解。首先,所谓「可程式化」,是指它可以处理指令CONTROL ENGINEERING China版权所有,而不是指执行固定的函式(function)。对DSP而言,指令可以来自于高阶语言(C、Java、C++)的编译器(compiler),也可以经由手写程式(组合语言)产生。这有别于传统的DSP功能,因为可设定式DSP具有类似中央处理器(CPU)的功能。其实,正如DSP的原名──「数位讯号处理器」,它本来就应该是一种处理器;只不过,传统的DSP并没有将CPU核心纳入架构中,因此,「DSP只能执行固定的函式」就变成了一种刻板印象。
所谓可设定式,是指可以使用一种或数种方法,将可设定式DSP修改成客户想要的应用功能。不过,这些修改必须在它变成硅晶之前,就得完成。
而可扩充性,是指它可以增加或缩减功能,来支援不同种类的应用需求。在大多数的情况下,是专指增加功能而言控制工程网版权所有,这可以使它拥有数颗传统DSP的功能。
基本特性
可设定式DSP最明显的特性,就是能动态地执行最佳化作业。它以下列三种方式来强化运算效能。
扩充或缩小
藉由增加或减少DSP处理器里的可用资源,同一种应用就可以具有不同等级的运算效能。可扩充性可以藉由增加单一DSP的资源www.cechina.cn,或者使用数个DSP核心来达成。不过,为了能完善地利用这些新增的资源,以提高运算效能,还需要一个功能强大的编译器来配合才行。如果没有这种编译器的协助,则可设定式DSP只会使应用产品的开发时程增长而已。
位置与混合
藉由改变资源的组成结构(在不增加额外的资源之情况下),可设定式DSP可以依照不同的应用需求,提供不同等级的效能。例如,暂存器的位置(必须防止它的资料爆满溢出)会直接影响到程式运算迴圈的效能。同样地,功能强大的编译器在这里也扮演着举足轻重的角色。
自订指令(custom instruction)
每一种应用都具有一些特殊的运算作业(数学的、工程的或其它),但并不是全部都适合DSP去执行。因此,实际上,单一的DSP不可能包含所有的指令或运算函式。而且,DSP厂商也无法事先就完全知道,所有客户需要的全部运