引言
当前信号处理领域内阵列信号处理技术正在迅速发展,各种新的算法及新的处理技术不断出现,要求信号处理系统具有快速适应各种新算法和新技术的能力,采用传统的基于专用硬件的设计方法所开发出来的信号处理系统无法满足这样的要求。开发具有通用性的计算平台,尽可能通过软件来实现信号处理功能,成为信号处理的新趋势,“软件雷达”、“软件无线电”等概念都是基于这一思想。
通过灵活的软件编程来适应算法的变化,通过简单的硬件扩展来适应规模的变化,使系统的灵活性大大提高,研制周期、费用大为减少。要支持这种设计思路,必须研制出组成通用计算平台的信号处理模块,该模块既能满足系统实时处理需求,又具备通用性、可扩展性。
本文提出了一种基于TMS320C6701信号处理器的高性能信号处理模块的设计方案,设计了具有一定通用性的并行信号处理模块,该模块具有高速互连接口,可以根据应用系统的需求构成不同的并行系统,完成各种信号处理任务。
1系统结构
随着微电子技术的突飞猛进,处理器的速度不断得以提高,但实际应用对于计算能力的需求还是远远超出了单个处理器可以提供的范围,采用并行处理技术构成多处理器系统满足需要较强计算能力的应用是一种行之有效的技术途径。
并行处理的目的是通过采用多个处理单元同时对任务进行处理,加速整个计算的过程,从而减少任务的执行时间。整个任务可分解成一些小的任务,分别分配给并行处理系统中各个处理单元执行。一般而言,这些并行执行的任务都不能完全独立执行,一个任务中的计算可能需要用到另一个任务中的数据,各处理单元之间存在进行数据交换的要求。因为交换数据而必须等待的时间,反映了处理单元之间的同步开销。因此不难看出,并行处理额外增加了数据通信和同步等待等开销。
为使任务执行时间减少增加处理单元个数成为首要手段,同时要将任务进行更细粒度的划分以增加任务的并行度,但在增加处理单元和任务细粒度化的同时将带来总通信量的增加,再加上同步时间和任务分配不均所造成的空等待时间开销,增加处理单元的个数对增加系统处理能力得不偿失。这使得在设计并行处理系统时必须着重考虑以下两个方面:处理单元性能的提高以及处理单元间通信技术的改进。
1.1处理单元的选择
在通信、语音、图像处理中信号的动态范围有限,一般采用定点运算就可以满足要求,雷达、声纳信号需要较大的数据动态范围和数据精度,若按定点处理会发生数据上溢出或下溢出,严重时处理将无法进行,如果使用移位定标或用定点模拟浮点运算,程序的执行速度将大大降低,为增强计算平台的适用性,该通用信号处理平台使用浮点处理器。