整合度
整合度系指在单个组件上整合多项功能,由此缩小数字无线子系统的尺寸并降低硬件的复杂度。ASIC组件在软件无线电架构设计中的另一劣势即是整合度较低。随着ASIC、DSP和FPGA开发技术的不断进步,在单个组件中整合的功能也急剧增加。但对于ASIC,灵活性将随整合度的增加而降低。例如,当数字收发器的ASIC芯片完全适用于多种无线接口标准,包括GSM、IS-136、CDMA2000和UMTS W-CDMA,如果在ASIC中添加了CDMA码片率处理器(chip rate processor),那么该ASIC就不再适用于GSM和IS-136;如果在ASIC中添加一个支持QPSK、8PSK和16QAM调变方案的调变器或解调器,就能使其成为实现CDMA高速数据速率(HDR)规范的有效解决方案,但不再适用于其它任何标准。因此,需要多个ASIC组件支持多个无线接口标准,但这通常是不切实际的。与ASIC组件相比,多种数字无线功能可轻松地整合到DSP或FPGA组件中,并且不会降低组件的灵活性。
在上例中,CDMA2000 HDR ASIC提供的大多数功能均能在Xilinx公司的XCV1000E上实现,如表一所示。FPGA提供的高整合度使这些产品与基于ASIC的组件相比,具有更小的尺寸以及更高的灵活性。
开发周期
开发、实现及测试特定组件的数字无线功能所需花费的时间即为开发周期。ASIC组件并不是一无是处,例如:它具有处理速度最快、不需要过多的软件支持、用电省等优点。而且ASIC组件的不够灵活在软件无线电产品的开发中也具有其优势,因为现有的ASIC算法已经开发的相当完善,这有助于缩短产品的上市时间。
硬件设计是ASIC开发进度的关键所在,而软件则只需开发出能撷取组件编程性能的链接库即可。DSP或FPGA的设计开发周期则要复杂很多,因为其软件开发所需要的资源通常比硬件开发多很多。在市场上销售且经过最佳化的通用算法链接库是可以加速DSP和FPGA的软件开发,但这些算法必须整合在一起以实现所期望的数字无线功能,因此需要完整和冗长的软件开发周期。
DSP与FPGA软件开发
设计人员还必须注意到DSP和FPGA 2种软件的开发方法仍然存有差异。在DSP上编译算法的时间通常以秒计算,而在FPGA上合成(synthesis)处理并对类似算法进行布线(route)的时间则需要数小时。例如Xilinx公司的典型FPGA布线速率为每小时400,000个闸电路,因此带有2百万个闸电路的XCV2000E的编译可能需要半天的时间才能完成。
这使得FPGA的设计除错成为一项昂贵的过程,因此FPGA的设计周期通常需要在对组件算法进行布线之前,进行更多的先期分析(up-front analysis),包括多路仿真和模型测试。
性能
性能的评估主要从组件在要求的时间内完成指定功能的能力中判断,包含数据传输速度。在软件无线电架构中,任何信号处理组件的鉴定必须包括衡量该组件是否能在指定的时间内完成所需的功能。在这类评估中,一种最基本的基准点测量就是1,024点快速傅利叶变换(FFT)处理时间的测量,参见(表二)。
在表二中,可程序ASIC明显地胜过DSP或FPGA。通常ASIC可为任何指定的功能提供最佳性能。对DSP和FPGA的性能进行比较是很困难的,因为这些组件的架构分别被用在处理不同类型的问题。DSP在非常高的速率下工作,但在一个时间内只能完成有限的作业。相反的,FPGA的工作速率通常比DSP慢,但它可以同时完成的作业量几乎没有限制。
为了说明上述的差异,可使用如(图二)所示的具有16个抽头(tap)的简单FIR滤波器做测试。该滤波器要求在每次取样中完成16次乘积和累加(multiply-and- accumulate;MAC)作业。德州仪器公司的TMS320C6203 DSP具有300MHz的频率频率,在合理的最佳化设计中,每秒可完成大约4亿至5亿次MAC作业。这意味着C6203系列组件的FIR滤波具有最大为每秒31万次取样的输入速率。
但在FPGA中,所有16次MAC作业均可平行执行。对于Xilinx的Virtex组件,16位MAC作业大约需要160个可重置逻辑块(configurable-logic-block;CLB),因此,16个MAC并行操作的设计将需要大约2,560个可重置逻辑块。XCV300E可轻松地实现上述配置,并使FIR滤波器的输入取样速率达到每秒1亿次取样(100MSps)以上。