软件无线电设计中ASIC、FPGA和DSP的选择策略
软件无线电(SDR)结构一直被认为是基站开发的灵丹妙药,而随着其适应新协议的能力不断增强,软件无线电结构已被一些设计人员视为在单个基础架构设计中支持多种无线协议的重要解决方案。
直到最近,软件无线电仍然只是大多数通信系统设计人员的规划蓝图而已,但这一局面正迅速得到改观。随着3G无线业务的日趋临近,设计人员又对在基础架构设计中实现软件无线电结构产生了浓厚的兴趣。
实现软件无线电
传统的无线基础架构设计可采用ASIC、DSP和FPGA器件的组合加以实现。在这些设计中,ASIC和FPGA通常负责处理高级编码机制,如Reed Solomon编码、Viterbi编码及Rake接收机,而DSP则负责语音编码及其他语音处理任务。
在由传统的无线架构设计转向软件无线电设计的过程中,DSP、FPGA和ASIC之间的功能划分也在发生变化。ASIC逐渐提供更多的可编程功能,而DSP和FPGA则开始具备ASIC的传统处理功能,三者之间的界限正变得日益模糊。因此,当设计人员设计软件无线电时,他们发现已很难划分ASIC、DSP和FPGA三者之间的功能界限。
现在设计人员必须耗费相当多的精力来权衡下面一些问题:传统上由ASIC实现的功能能否由FPGA或DSP更好地加以实现?或者传统上由DSP实现的功能是否由FPGA或ASIC实现更为合适?因此问题的核心是如何制订出正确的选择准则并对每种处理方案进行有效的评估。
准则选取
在选择任何准则之前,有必要给出软件无线电的精确定义。在底板各处,开发人员可为软件无线电结构的构成给出许多不同的定义,但本文将采用软件无线电论坛(www.sdRForum.org)的方法,将软件无线电定义为“在较大频率范围内,能对目前已有的以及将来会出现的诸多调制技术、宽带及窄带操作、通信安全功能(如跳频)和信号波形等的标准要求进行软件控制的无线电”。
历史上,采用单个空间接口标准设计的喷气式飞机中已经实现了数字无线系统,该设计在考虑成本的基础上(见图1),使用了任意可编程器件对系统进行评估。而在软件无线电中,无线电的每个主要功能器件(包括射频收发器)都具备在空中进行重配置以支持多种空间接口标准的特性。本文引用地址:http://www.amcfsurvey.com/article/157299.htm
可重配置特性要求软件无线电改变设计人员需要考虑的准则。由于纯处理能力在当前的2G无线环境中占据主导地位,可编程功能也逐渐成为软件无线电设计应用的焦点。
总之,当选择ASIC、FPGA或DSP时,设计人员应当考虑以下5个重要的选择准则。1. 可编程性:对于所有的目标空间接口标准,器件均能重新配置以执行所期望的功能。2. 集成度:在单个器件上集成多项功能,由此减小数字无线子系统的规格并降低硬件复杂度的能力。3. 开发周期:开发、实现及测试指定器件的数字无线功能的时间。4. 性能:器件在要求的时间内完成指定功能的能力。5. 功率:器件完成指定功能的功率利用率。
总之,当选择ASIC、FPGA或DSP时,设计人员应当考虑以下5个重要的选择准则。1. 可编程性:对于所有的目标空间接口标准,器件均能重新配置以执行所期望的功能。2. 集成度:在单个器件上集成多项功能,由此减小数字无线子系统的规格并降低硬件复杂度的能力。3. 开发周期:开发、实现及测试指定器件的数字无线功能的时间。4. 性能:器件在要求的时间内完成指定功能的能力。5. 功率:器件完成指定功能的功率利用率。
上述准则中的任何一条都会对设计人员选择DSP、ASIC或FPGA产生直接影响。
可编程性
DSP和FPGA可轻易地进行重配置,以实现软件无线电设计的各种功能。现有的通信ASIC虽然可以较低的成本提供更好的性能,但提供的可编程能力非常有限。
问题的关键是,在诸多的无线ASIC中是否有一种适合于特定要求的数字无线产品。在纯软件无线电结构中,显然没有一种ASIC具有这样的功能,但实际上也只有很少的数字无线设计需要这样高的灵活性。因此软件无线电产品开发的关键步骤就是确定系统每项功能所需的可编程特性,并确定现有的ASIC是否可以提供这项功能。
确定器件的处理功能可通过既支持W-CDMA也支持GSM的基站收发器结构来说明。由于W-CDMA采用了扩频通信技术,因此许多用户可共享一条射频(RF)信道。在上行链路1,920至1,980MHz之间和下行链路2,110至2,170 MHz之间,W-CDMA信号在每条信道中占据5MHz的带宽。
另一方面,在GSM系统的每条射频信道中,窄带TDMA技术一般只支持8个用户。在上行链路890至915MHz之间和下行链路935至960MHz之间,窄带TDMA的每条信道占据200kHz带宽。
为了在软件无线电结构中有效地兼顾上述标准间的差异,中频(IF)处理器的数字上行转换器和下行转换器都必须提供可编程的信道选择、滤波器配置和采样比调节。Intersil、Graychip和Analog Devices公司的新型多标准数字收发器ASIC均可提供许多可编程特性。
可编程性
DSP和FPGA可轻易地进行重配置,以实现软件无线电设计的各种功能。现有的通信ASIC虽然可以较低的成本提供更好的性能,但提供的可编程能力非常有限。
问题的关键是,在诸多的无线ASIC中是否有一种适合于特定要求的数字无线产品。在纯软件无线电结构中,显然没有一种ASIC具有这样的功能,但实际上也只有很少的数字无线设计需要这样高的灵活性。因此软件无线电产品开发的关键步骤就是确定系统每项功能所需的可编程特性,并确定现有的ASIC是否可以提供这项功能。
确定器件的处理功能可通过既支持W-CDMA也支持GSM的基站收发器结构来说明。由于W-CDMA采用了扩频通信技术,因此许多用户可共享一条射频(RF)信道。在上行链路1,920至1,980MHz之间和下行链路2,110至2,170 MHz之间,W-CDMA信号在每条信道中占据5MHz的带宽。
另一方面,在GSM系统的每条射频信道中,窄带TDMA技术一般只支持8个用户。在上行链路890至915MHz之间和下行链路935至960MHz之间,窄带TDMA的每条信道占据200kHz带宽。
为了在软件无线电结构中有效地兼顾上述标准间的差异,中频(IF)处理器的数字上行转换器和下行转换器都必须提供可编程的信道选择、滤波器配置和采样比调节。Intersil、Graychip和Analog Devices公司的新型多标准数字收发器ASIC均可提供许多可编程特性。
例如,Graychip的GC4016数字下行转换器可重配置为最大可用基带带宽为每信道2.25 MHz的4信道窄带下行转换器,也可重配置为最大可用基带带宽为9 MHz的单信道宽带下行转换器。此外,GC4016还将在每个信道中支持用户可编程的基带滤波器和重采样器,这使得该器件适用于指定结构的中频处理。
但如果要求这些器件在将来支持升级到尚未定义的4G无线结构,ASIC在数字无线设计中的适用度也将随之发生变化。例如在无线领域中,关于是否应在4G系统结构中采用正交频分多路复用(OFDM)技术还存在诸多分歧,很多设计人员认为OFDM在多径环境下具有较强的鲁棒性,并可兼容多种宽带标准,如局域多点分布式业务(LMDS)和多信道多点分布式业务(MMDS)。
然而,由于4G标准尚未定义,而且在该结构中任何ASIC信号处理器件的使用都将给未来的升级带来无法预料的风险,因此中频处理也必须使用FPGA或DSP器件。
随着信号处理越来越多的来自数字中频输入,4G结构中的处理算法也变得越来越专业化,这限制了单个ASIC器件满足所需可编程要求的能力。
在3G/GSM无线应用中,W-CDMA采用了由透平编码和卷积编码组合而成的纠错机制,由此满足所需的误码率(BER)性能要求。另一方面,GSM采用卷积编码和Fire编码的组合作为其纠错机制,因此定位于特定纠错算法的商用ASIC器件将不再适用于GSM平台,而FPGA或DSP实现则是一种更好的选择。
集成度
ASIC器件在软件无线电结构设计中的另一劣势是集成度。随着ASIC、DSP和FPGA开发技术的不断进步,在单个器件中集成的功能也急剧增加。但对于ASIC,灵活性将随集成度的增加而降低。
例如,充当数字收发器的ASIC芯片完全适用于多种空中接口标准,包括GSM、IS-136、CDMA2000和UMTS W-CDMA。如果在ASIC中添加了CDMA码片率处理器,那么该ASIC就不再适用于GSM和IS-136。如果在ASIC中添加一个支持QPSK、8PSK和16QAM调制方案的调制器或解调器,就能使其成为实现CDMA高速数据速率(HDR)规范的有效解决方案,但不再适用于任何其他标准。
在这一级集成度上,多个ASIC器件需要支持多个空间接口标准,但这通常有些不切实际。
与ASIC器件相比,DSP或FPGA器件可轻松地集成多种数字无线功能,并且不会显著降低器件的灵活性。
在上例中,CDMA2000 HDR ASIC提供的大多数功能均能在Xilinx公司的XCV1000E上实现,如表1所示。这样的集成度通常导致这些产品与基于ASIC的器件相比,具有更小的整体波形因数以及更高的灵活性。
然而,由于4G标准尚未定义,而且在该结构中任何ASIC信号处理器件的使用都将给未来的升级带来无法预料的风险,因此中频处理也必须使用FPGA或DSP器件。
随着信号处理越来越多的来自数字中频输入,4G结构中的处理算法也变得越来越专业化,这限制了单个ASIC器件满足所需可编程要求的能力。
在3G/GSM无线应用中,W-CDMA采用了由透平编码和卷积编码组合而成的纠错机制,由此满足所需的误码率(BER)性能要求。另一方面,GSM采用卷积编码和Fire编码的组合作为其纠错机制,因此定位于特定纠错算法的商用ASIC器件将不再适用于GSM平台,而FPGA或DSP实现则是一种更好的选择。
集成度
ASIC器件在软件无线电结构设计中的另一劣势是集成度。随着ASIC、DSP和FPGA开发技术的不断进步,在单个器件中集成的功能也急剧增加。但对于ASIC,灵活性将随集成度的增加而降低。
例如,充当数字收发器的ASIC芯片完全适用于多种空中接口标准,包括GSM、IS-136、CDMA2000和UMTS W-CDMA。如果在ASIC中添加了CDMA码片率处理器,那么该ASIC就不再适用于GSM和IS-136。如果在ASIC中添加一个支持QPSK、8PSK和16QAM调制方案的调制器或解调器,就能使其成为实现CDMA高速数据速率(HDR)规范的有效解决方案,但不再适用于任何其他标准。
在这一级集成度上,多个ASIC器件需要支持多个空间接口标准,但这通常有些不切实际。
与ASIC器件相比,DSP或FPGA器件可轻松地集成多种数字无线功能,并且不会显著降低器件的灵活性。
在上例中,CDMA2000 HDR ASIC提供的大多数功能均能在Xilinx公司的XCV1000E上实现,如表1所示。这样的集成度通常导致这些产品与基于ASIC的器件相比,具有更小的整体波形因数以及更高的灵活性。
开发周期
ASIC器件的灵活性在软件无线电产品的开发中也具有其优势:现有的ASIC算法开发已经相当完善,这有助于缩短产品的上市时间。硬件设计是基于ASIC功能的关键开发进程,而软件开发则受制于接入器件可编程特性的程序库生成。
基于DSP或FPGA的设计开发周期则要复杂得多,因为软件开发需要的资源通常比相应的硬件开发多得多。现有的经优化通用算法程序库有利于加速DSP和FPGA的软件开发,但这些算法必须集成在一起实现期望的数字无线功能,因此需要完整的软件开发周期。
设计人员还必须注意DSP和FPGA软件开发方法之间的主要差异。在DSP上编译算法的时间通常以秒计算,而在FPGA上综合处理并对类似算法进行布线的时间则需要数小时。例如Xilinx公司的典型FPGA布线速率为每小时400,000个门电路,因此带有2百万个门电路的XCV2000E的编译可能需要半天的时间才能完成。
这使得FPGA的设计调试成为一项昂贵的过程,因此FPGA的设计周期通常需要在对器件算法进行布线之前,进行更多的先期分析,包括多路仿真和模型测试。
性能
在软件无线电结构中,任何信号处理器件的鉴定必须包括衡量该器件是否能在指定的时间内完成所需的功能。这类评估中一种最基本的基准点测量就是1,024点快速傅立叶变换(FFT)处理时间的测量,参见表2中的突显部分。
ASIC器件的灵活性在软件无线电产品的开发中也具有其优势:现有的ASIC算法开发已经相当完善,这有助于缩短产品的上市时间。硬件设计是基于ASIC功能的关键开发进程,而软件开发则受制于接入器件可编程特性的程序库生成。
基于DSP或FPGA的设计开发周期则要复杂得多,因为软件开发需要的资源通常比相应的硬件开发多得多。现有的经优化通用算法程序库有利于加速DSP和FPGA的软件开发,但这些算法必须集成在一起实现期望的数字无线功能,因此需要完整的软件开发周期。
设计人员还必须注意DSP和FPGA软件开发方法之间的主要差异。在DSP上编译算法的时间通常以秒计算,而在FPGA上综合处理并对类似算法进行布线的时间则需要数小时。例如Xilinx公司的典型FPGA布线速率为每小时400,000个门电路,因此带有2百万个门电路的XCV2000E的编译可能需要半天的时间才能完成。
这使得FPGA的设计调试成为一项昂贵的过程,因此FPGA的设计周期通常需要在对器件算法进行布线之前,进行更多的先期分析,包括多路仿真和模型测试。
性能
在软件无线电结构中,任何信号处理器件的鉴定必须包括衡量该器件是否能在指定的时间内完成所需的功能。这类评估中一种最基本的基准点测量就是1,024点快速傅立叶变换(FFT)处理时间的测量,参见表2中的突显部分。
在表2的示例中,可编程ASIC明显胜过DSP或FPGA实现。通常ASIC可为任何指定的功能提供最佳性能,其执行时间可参见下述数据表单。
对DSP和FPGA功能实现的性能进行比较相当困难,因为这些器件的结构分别用于处理不同类型的问题。DSP工作于非常高的速率条件下,但在某一时刻只能完成有限的处理任务。另一方面FPGA的工作速率通常低于DSP的速率,但对同时可完成的处理任务则几乎没有限制。
为了说明上述这些差异,考虑如图2所示的具有16个抽头的简单FIR滤波器。该滤波器要求在每次采样中完成16次乘积和累加(MAC)操作。德州仪器公司的TMS320C6203
DSP具有300MHz的时钟频率,在合理的优化设计中,每秒可完成大约4亿至5亿次MAC操作。这意味着C6203系列器件的FIR滤波具有最大为每秒3,100万次采样的输入速率。
对DSP和FPGA功能实现的性能进行比较相当困难,因为这些器件的结构分别用于处理不同类型的问题。DSP工作于非常高的速率条件下,但在某一时刻只能完成有限的处理任务。另一方面FPGA的工作速率通常低于DSP的速率,但对同时可完成的处理任务则几乎没有限制。
为了说明上述这些差异,考虑如图2所示的具有16个抽头的简单FIR滤波器。该滤波器要求在每次采样中完成16次乘积和累加(MAC)操作。德州仪器公司的TMS320C6203
DSP具有300MHz的时钟频率,在合理的优化设计中,每秒可完成大约4亿至5亿次MAC操作。这意味着C6203系列器件的FIR滤波具有最大为每秒3,100万次采样的输入速率。
但在FPGA中,所有16次MAC操作均可并行执行。对于Xilinx的Virtex器件,16位MAC操作大约需要配置160个结构可重置的逻辑块(CLB),因此16个并发MAC操作的设计实现将需要大约2,560个CLB。XCV300E可轻松地实现上述配置,并允许FIR滤波器工作在每秒1亿个样本的输入采样速率下。
附加功率
ASIC器件的设计通常经过优化以提供卓越的功率性能。但大多数可编程器件的功率将随器件利用率和时钟频率的增加而急剧增长,因此在衡量整体设计的功率分配时,必须考虑这一因素。
例如,利用Altera公司的20K600可编程逻辑器件(PLD)实现的4信道下行转换器只需消耗不到2W的功率,即可实现每秒2,500万次采样的输入数据率。这样的功率虽然比较高,但对于指定的应用还是可以接受的。如果将输入数据率提高至每秒6,500万次采样,那么消耗的功率将达到5W,这超出了许多数字无线产品所能承受的功率门限。
与Altera 20K600相比,在相同的输入数据率条件下,Analog Devices 公司的AD66244信道下行转换器ASIC消耗的功率为700mW。
在较低的速率条件下,FPGA的功率利用率通常优于高端DSP。为对此加以说明,考虑Dish
Network公司在数字视频广播中采用的纠错机制。在该系统中速率高达27.647Mbps的多路复用数据采用Reed-Solomon纠错机制进行编码,该机制为每188个数据字节直接生成16个奇偶校验字节,并生成最大为30Mbps的合成数据率。
在5,000个时钟周期中,TMS320C6203可解码204个字节的Reed-Solomon代码字。为实现所需的数据吞吐量,在300 MHz频率下,CPU必须实现近50%的利用率,而消耗的功率约为1.53W。
与此相反,在Xilinx XCV100E上实现的Reed-Solomon解码器设计消耗的功率仅为200mW。这是一个巨大的改进,可以与商用Reed-Solomon ASIC(如Advanced Hardware Architectures公司的AHA4011C)具备的性能相媲美。
器件选择
表3总结了上述结果。表中每类器件按1至5的标度主观地设定功率极限,1表示该类较差的选择,而5则表示最佳选择。
附加功率
ASIC器件的设计通常经过优化以提供卓越的功率性能。但大多数可编程器件的功率将随器件利用率和时钟频率的增加而急剧增长,因此在衡量整体设计的功率分配时,必须考虑这一因素。
例如,利用Altera公司的20K600可编程逻辑器件(PLD)实现的4信道下行转换器只需消耗不到2W的功率,即可实现每秒2,500万次采样的输入数据率。这样的功率虽然比较高,但对于指定的应用还是可以接受的。如果将输入数据率提高至每秒6,500万次采样,那么消耗的功率将达到5W,这超出了许多数字无线产品所能承受的功率门限。
与Altera 20K600相比,在相同的输入数据率条件下,Analog Devices 公司的AD66244信道下行转换器ASIC消耗的功率为700mW。
在较低的速率条件下,FPGA的功率利用率通常优于高端DSP。为对此加以说明,考虑Dish
Network公司在数字视频广播中采用的纠错机制。在该系统中速率高达27.647Mbps的多路复用数据采用Reed-Solomon纠错机制进行编码,该机制为每188个数据字节直接生成16个奇偶校验字节,并生成最大为30Mbps的合成数据率。
在5,000个时钟周期中,TMS320C6203可解码204个字节的Reed-Solomon代码字。为实现所需的数据吞吐量,在300 MHz频率下,CPU必须实现近50%的利用率,而消耗的功率约为1.53W。
与此相反,在Xilinx XCV100E上实现的Reed-Solomon解码器设计消耗的功率仅为200mW。这是一个巨大的改进,可以与商用Reed-Solomon ASIC(如Advanced Hardware Architectures公司的AHA4011C)具备的性能相媲美。
器件选择
表3总结了上述结果。表中每类器件按1至5的标度主观地设定功率极限,1表示该类较差的选择,而5则表示最佳选择。
有了上述分析,也就不难得到采用ASIC、FPGA和DSP器件设计软件无线电的区分原则,这些原则归纳如下:1. ASIC只需提供可以接受的可编程性和集成水平,通常即可为指定的功能提供最佳解决方案。2.
FPGA可为高度并行或涉及线性处理的高速信号处理功能提供最佳的可编程解决方案。3. DSP可为涉及复杂分析或决策分析的功能提供最佳可编程解决方案。
随着技术的进步,DSP、ASIC和FPGA将在芯片上支持更多的功能,这进一步模糊了三者之间的界限。而对于软件无线电设计人员,这意味着他们在今后的设计中将面临更难的选择。
FPGA可为高度并行或涉及线性处理的高速信号处理功能提供最佳的可编程解决方案。3. DSP可为涉及复杂分析或决策分析的功能提供最佳可编程解决方案。
随着技术的进步,DSP、ASIC和FPGA将在芯片上支持更多的功能,这进一步模糊了三者之间的界限。而对于软件无线电设计人员,这意味着他们在今后的设计中将面临更难的选择。
评论