下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
在蜂窝式无线电基础架构中实现软件可编程数字预失真蜂窝网络运营商正努力通过使用最新空中接口、采用最新传输频率、提高带宽以及增加天线数量和蜂窝基站数量的方式提高网络容量,为此他们需要大量削减设备成本。此外,运营商们还要提高设备效率和网络集成度,以便减少运营成本。为了提供可满足这些不同需求的设备,无线基础设施设备制造商正在寻找具备更高集成度、性能和灵活性且功耗与成本更低的解决方案。另外,设备制造商在实现以上目标的同时还要缩短产品上市时间。减少设备总体成本的关键是集成,但减少运营成本则需要采用高级数字算法来改善功率放大器效率。其中最常用的一种算法就是数字预失真(DPD)。在设备配置变得越发复杂的同时提高设备效率,这本身就是一种挑战。无线电传输带宽凭借先进的长期演进(LTE-A)技术正在接近100MHz,而且随着厂商试图在一个非连续频谱中采用多个空中接口,这一数字甚至会更高。同时有源天线阵列(AAA)和支持MIMO的远端射频单元(RRU)也不断对算法的计算带宽提出更高要求。本文我们将研究如何利用Zynq-7000AllProgrammableSoC(APSoC)来提高当前及未来DPD系统的性能,同时为设备厂商提供具有完全可编程功能的低成本、低功耗解决方案,帮助他们以最快的速度向市场推出产品。实现蜂窝无线电APSoC采用包含串行收发器(SERDES)和DSP模块的高性能可编程逻辑(PL)架构和一个与其紧密集成的硬化处理子系统(PS)。该处理子系统又包含一个双核ARMCortexA9、浮点单元(FPU)和NEON媒体加速器,并配有实现完整无线电操作和控制所必需的UART、SPI、I2C、以太网和存储控制器等多种外设。与外部通用处理器或DSP处理器不同,由于PL与PS之间有大量的连接,因此其间的接口需要极高的带宽,这是单个解决方案所无法实现的。凭借这些软/硬件组合,APSoC器件能够在单个芯片上实现RRU所需的全部功能,如图1所示。
图1.典型无线电基础架构,所有数字功能都被集中到单个器件中PL中丰富的DSP资源可用于实现数字上变频(DUC)、数字下变频(DDC)、峰值因数降低(CFR)和DPD等数字信号处理功能。此外,SERDES能够支持9.8GbpsCPRI和12.5GbpsJESD204B接口,分别用于连接基带转换器和数字转换器。PS支持对称多处理(SMP)和非对称多处理(AMP)。在本案例中,假设采用AMP模式,其中的一个ARMA9处理器用于实现下传消息、调度、校准和警报等板级控制功能,用以运行裸金属架构,更可能的是Linux等操作系统。而另一个处理器则用于实现部分所需的DPD算法,因为并非算法的所有部分都支持纯硬件解决方案。DPD可通过扩大线性范围来提高功率放大器效率。加强对放大器的驱动以改善输出功率,从而提高效率,同时静态功耗保持相对不变。为了扩大线性范围,DPD利用放大器的模拟反馈路径以及大量信号处理操作来计算系数(该系数为放大器非线性的倒数);然后利用这些系数对所发送的功率放大器驱动信号进行预修正,最终达到扩大放大器线性范围的目的。DPD算法可分解为如下多个功能块,如图2所示。
图2.数字预失真被分解为多个功能区DPD是一个闭环系统,可捕捉之前发送的信号,以确定放大器根据发送信号所表现出的行为。DPD的首个任务是在校准模块(alignmentblock)中将放大器的输出与之前的发送信号进行校准。在开始任何后续算法操作之前,需要利用存储器来校准数据。一旦数据校准后,就可用自相关矩阵计算(AMC)和系数计算(CC)算法来创建代表PA非线性倒数近似值的系数;获得系数后,数据路径预失真器会利用这些数据对发送到PA的信号进行预修正。加速DPD系数估算这些功能可以通过多种不同方式来实现。有的功能适合用软件,有的则适合用硬件,还有的则既可用软件也可用硬件来实现,但最终还是由性能来决定采用何种实现方式。有了APSoC器件,设计人员就可自主决定采用硬件还是软件来实现功能。对于DPD算法而言,包含高速滤波功能的数据路径预失真器由于需要极高的采样率,一般应在PL中实现,而用于生成DPD系数的校准引擎与估算引擎则可以在PS中的ARMA9上运行。为了确定到底用软件还是硬件来实现功能,必须首先对软件进行特性分析,确定其耗时情况。图3显示了图2中DPD算法用于实现三个可识别功能的软件特性。根据分析结果显示,赛灵思DPD算法中97%的时间都用于AMC处理,因此首先对该功能进行加速意义最大。
图3.DPD处理中软件任务的特性分析ARMA9可用于执行一些附加功能,这样也有助于提高这类应用的性能。例如,作为PS的一部分,每个ARMA9都有一个浮点单元和一个NEON媒体加速器。NEON单元是一种128位单指令多数据(SIMD)矢量协处理器,可同时执行两个32x32b乘法运算,非常适合以乘法累加(MAC)运算为主的AMC功能的要求。充分利用NEON模块,就能发挥软件的内在优势,从而无需用汇编语言进行低层次编程。因此,相对采用Microblaze或外部DSP等软处理器而言,使用PS中的附加功能可以显著提高性能。为了进一步提高DPD性能,最好将这些功能移植到采用PL的硬件内。然而软件由C或C++编写,要将C或C++转换为能够在采用VHDL或Verilog语言的PL中运行的硬件内,需要花费一些时间。随着高层次综合(HLS)工具(例如C-to-RTL)的推出,这个问题现在已经得到解决。这些工具让有C/C++编程经验的程序员能够以FPGA的形式进行硬件转换。VivadoHLS工具使设计人员和系统架构师可以轻松将C/C++代码映射到可编程逻辑,以实现代码重用、尽可能移植以及简单的设计空间探索机制,从而最大限度地提高生产力。
图4.Vivado高层次综合(HLS)设计流程图4显示了C/C++的典型VivadoHLS高层次综合设计流程。该工具的输出为RTL,能够轻松地与现有硬件设计集成,例如数据路径预失真器或上游处理部分,当然还包括数据转换器接口。利用这种工具可以将算法快速移植到硬件,在这里算法必须通过AXI接口与PS连接,如图5所示。
图5.将基于可编程逻辑的AMC硬件加速器算法与处理系统集成在PL中以高时钟速率运行AMC算法能够显著提高性能(如图6所示),与在软件中实现相同的功能相比,可以实现70倍的性能提升,且只占用不到3%的APSoC器件逻辑资源。
图6.采用纯软件和软硬件相结合加速方案的性能提升对比对原始C/C++参考代码进行基本的优化后,新代码在ARMA9处理器上的运行更加高效,将纯软件实现方案的性能提升至原始代码的至少2至3倍。此时,启用NEON媒体协处理器,可以获得额外的性能优势。图6的最终结果是通过在可编程逻辑中运行AMC算法(参见图5)获得的,其与最初的软件法相比,仅AMC功能就实现了高达70倍的总体性能提升。最终是由无线电性能定义所需DPD在硬件与软件之间的分区。追求更高级别的频谱修正可以实现更高的效率,这可能会成为影响性能的一个因素。由于提高了用于表达放大器非线性的精确度,因而实现更高的修正水平需要更强大的处理能力。其他影响性能的因素是更大的传输带宽或在多个天线之间共享估算引擎。这种方式仅需一个处理器外加可选的硬件加速器即可为多个数据路径预失真器计算系数,从而实现面积(和成本)方面的节省。在某些情况下,在ARMA9+NEON单元上运行软件所获得的性能就足够了,例如窄带传输带宽配置,或在设计中只有1或2个天线路径需要进行数据处理的情况,这既可以减少无线电配置的面积也可降低成本。为了将性能进一步提升至图6以上的水平,可为AMC功能的实现添加额外并行机制,但这需要以增加逻辑实现为代价才能缩短更新时间。此外,对软件进行更深入的分析可能会表明算法中其他可从硬件加速受益的部分。无论要求是什么,现在的工具和芯片都能帮助设计人员在追求更高效率的过程中轻而易举地在性能、面积以及功耗之间进行利弊取舍,而且不必受特定分立器件或编程风格的制约。总结无线电基础设施要求低成本、低功耗和高可靠性,而集成则是实现这些目标的关键,但直到现在也无法在不降低灵活性或减慢上市进程的前提下做到。此外,宽带无线电和对更高效率的追求正在促使处理要求不断提升。凭借双核处理器子系统、高性能和低功耗可编程逻辑优势,Zynq-7000AllPro
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
评论
0/150
提交评论