面向5G的高阶滤波器的研究与VLSI设计_第1页
面向5G的高阶滤波器的研究与VLSI设计_第2页
面向5G的高阶滤波器的研究与VLSI设计_第3页
面向5G的高阶滤波器的研究与VLSI设计_第4页
面向5G的高阶滤波器的研究与VLSI设计_第5页
已阅读5页,还剩41页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、学士学位论文面向5G的高阶滤波器的研究与VLSI设计院系:微电子学院专业:微电子学姓名:王也学号:12307110166指导教师:陈赟 副教授完成日期:2016年5月16日目 录目 录II摘 要4Abstract5第一章 绪 论61.1 本课题的研究意义61.2 国内外研究现状61.3 课题来源和本文工作71.4 本文结构和内容安排7第二章5G竞争技术介绍92.1新空口之调制方式92.2新空口波形技术102.2.1 FBMC(Filter Bank Multi-Carrier)102.2.2 UFMC(Universal Filter Multi Carrier)112.2.3 GFDM(Ge

2、neralized Frequency Division Multiplexing)122.2.4 F-OFDM(Filtered/Flexible OFDM)132.3本章小结15第三章 滤波器的设计与实现方式163.1 FIR数字滤波器163.2 窗函数法设计FIR数字滤波器163.3仿真结果及分析193.3.1 发射机带外泄漏抑制性能193.3.2 F-OFDM下不同窗函数性能203.4滤波器实现方法选择213.4.1实现方案分析223.4.2 实现方案选择24第四章 MATLAB算法实现254.1 算法介绍254.2 MATLAB下算法实现274.3 Overlap-save Meth

3、od的定点仿真28第五章 基于Overlap-Save算法滤波器的设计315.1无线通信领域基于FPGA进行设计验证的优势315.2 滤波器具体实现335.2.1 FFT IP核的选择和例化335.2.2 复数乘法器的实现355.2.3 RAM IP核的选择和例化365.2.4 指数处理模块的实现375.2.5 输入/输出数据调整的实现395.3 仿真结果395.4 结果分析与后续进一步工作的方向42结论与体会43参考文献44致谢46摘要摘 要2015年国内公司提出filtered-OFDM(F-OFDM)作为可能的5G空中接口技术备选方案。F-OFDM技术实质上将系统带宽划分若干子带,每种子

4、带根据实际业务场景需求配置不同的波形参数。各子带通过滤波器进行滤波,从而实现各子带波形的解耦。所以F-OFDM技术的核心就是各个子带发送和接收端滤波器的设计。本文以F-OFDM中使用的高阶滤波器为应用背景,着重于滤波器的研究和实现。主要完成了以下几方面的工作:1. 分析了解5G技术调制技术竞争态势,重点观察研究F-OFDM系统,了解构造,了解F-OFDM测试系统。 2. 在F-OFDM系统中测试不同的滤波器。分析比较不同滤波器作用下F-OFDM系统的性能。3. 选择实现的合适方式(OLS算法),在MATLAB上进行滤波器算法实现,并分析误差、定点仿真。4. 基于FPGA在频域实现(overla

5、p-save算法)滤波器,对设计实例用ModelSim软件进行了仿真,并用MATLAB对仿真结果进行了分析。关键词:filtered-OFDM,窗口设计,数字滤波器,overlap add/save46AbstractAbstractIn 2015, Chinese companies posed filtered-OFDM (F-OFDM) as a possible modulation to 5G. F-OFDM system divide bandwidth into several sub-bands, each sub-bands with a different configur

6、ation of waveform parameters according to the reality. Each sub-band pass the filter, in order to decouple each sub-band waveform. So the core of F-OFDM is the designing of the sender and receiver filter of the sub-bands.This paper focuses on the implementation technology of digital filters based on

7、 FPGA,with the background of the application in F-OFDM systemIt contains main parts:1. Learning and Analyzing 5G system, focusing on researching F-OFDM system, and then try to understand the structure, and understand F-OFDM test systems.2. Testing different kinds of the filter in the F-OFDM system.

8、analyzing and comparing these filters performance in F-OFDM system I use. Finally choose a method to achieve (OLS algorithm)3. Use MATLAB to implement the algorithm, and then use the program to Error Analysis and fixed-point simulation.4. Implement the filter in the frequency domain (overlap-add alg

9、orithm) based on FPGA. And run the demo with ModelSim to get the result data. Finally use MATLAB to analyze the result data.Keywords: filtered-OFDM, window design, FPGA, digital filters, overlap add/save method第一章 绪 论第一章 绪 论1.1 本课题的研究意义OFDM一直是通信领域中占据主导地位的波形技术。在过去的很多年里,OFDM技术被广泛关注和研究,并被应用在有线和无线宽带通信中。

10、其主要思想是将信道分成若干个正交的子信道,同时将高速串行数据转换成多路低速的并行子数据流,分别调制到每个子信道上进行传输。但OFDM技术有诸如灵活度较低,带外泄露严重等缺点。F-OFDM技术作为5G技术的待选方案,支持丰富的业务场景,每种业务场景对波形参数的需求各不相同,F-OFDM能够根据业务场景来动态地选择和配置波形参数,同时又能兼顾传统OFDM的优点。F-OFDM即Filtered-OFDM,将系统带宽划分若干子带,子带之间只存在极低的保护带开销,每种子带根据实际业务场景需求配置不同的波形参数。各子带通过滤波器进行滤波,从而实现各子带波形的解耦。所以F-OFDM技术的核心就是各个子带发送

11、和接收端滤波器的设计。图1-1 F-OFDM收发端filter框图1.2 国内外研究现状5G时代即将到来。新的标准必须足够灵活,才能处理预期的多样化通信类型,在第四代无线网络(如cellular LTE和wifi802.11ac),正交频分复用(OFDM)已经被广泛采用7,它有各种优点,比如对于LTE优良的向后兼容性、易于在硬件上实现、time-localized低延迟传输可以以及可以和多天线传播简单结合4,所以基于OFDM的技术在5G中仍将占据优势。然而,OFDM也有不足,这时filtered-OFDM(F-OFDM)就作为一个重要的候选波形出现了。在F-OFDM技术中,滤波器对性能的影响非

12、常重要。窗函数设计法是FIR滤波器的一种常用设计方法。窗处理的宗旨是减小频谱泄漏,但因为需要兼顾多种条件,需要达到一个性能的均衡最优点。因此,对窗函数的研究对解决这个矛盾是很重要的。串行乘法、并行乘法和采用分布式算法的乘法是基于FPGA设计高阶FIR滤波器的基本方法。但是本文决定采用用高速块卷积的方法,较为新颖。卷积运算在数字信号处理中占据重要的地位。但用一般方法实现高阶卷积(时域),需要使用大量的乘累加器,增大工程实现的难度,进而影响高阶卷积的实际应用。但是基于FFT的快速卷积算法的使这种现象大大改观。FFT算法的出现使得卷积运算可更加方便的由傅里叶变换算法转到频域相乘,再经过傅里叶反变换反

13、转到时域得出结果,降低了工程实现的难度,使得其应用和前景都更加宽广。1.3 课题来源和本文工作本课题来源于F-OFDM的工程实践,团队需要分析各种滤波器的需要将设计的波形算法进行硬件实现,本文主要研究实现了对于系统性能十分重要的高阶滤波器的FPGA实现。工作体现在:1.介绍5G空口波形技术的的竞争态势,以及国内公司提出的5G技术的备选(F-OFDM)。分析了一套完整的F-OFDM仿真系统,系统介绍了F-OFDM技术,包括F-OFDM的历史沿革、产生、优点、发展、实现原理、以及本实验所使用的开发环境。2.系统介绍FIR滤波器的窗函数设计法的原理、要点,理论分析各种滤波器在系统中的性能,并使用MA

14、TLAB编写各种滤波器代码,在F-OFDM系统中仿真测试,综合比较确定要硬件实现的滤波器的参数;3.最后从工程实现出发,分析系统所需求的高阶滤波器的系统实现的各类方法、原理介绍,并作出比较。选择使用FFT的高速overlap save系统介绍了基于FFT的快速卷积算法,包括两个有限长序列的线性卷积与有限长和无限长序列的卷积;并用较大精力研究基于FFT的高阶高速块卷积FIR滤波器的FPGA实现,包括所使用模块的功能、结构、性能,实现思路,注意要点等等。1.4 本文结构和内容安排第一章为绪论,阐述了课题的来源、背景和意义。第二章介绍5G波形技术的竞争态势。着重介绍国内公司提出的F-OFDM技术,以

15、及本文所使用的F-OFDM的仿真平台。第三章介绍、分析所使用的滤波器,使用MATLAB软件生成符合要求的滤波器,基于F-OFDM平台对仿真所选用滤波器的性能进行测试、比较、筛选,并选择对于FPGA实现的最佳方案。第四章介绍高速块卷积在MATLAB平台进行的软件实现,数的定点处理,预先进行的仿真、精度分析。第五章着重介绍基于高速快速卷积算法滤波器的FPGA设计与实现。包括硬件实现的关键模块设计思路描述,FFT模块的分析选用,以及最后实现的overlap-save滤波器的仿真测试、结果的比较与分析。第二章5G竞争技术介绍第二章 5G竞争技术介绍空口就是“空中接口”的简称,这是相对于有线通信中的“线

16、路接口”概念而言的。在移动通信领域,“空中接口”是作为基站和终端用户间的无线传输规范存在的,包括物理层,链路层和网络层。5G在“空中接口”领域的标准之争,主要是在物理层。因为各种移动通信技术标准的区别也体现在空中接口的物理层,而且物理层涉及的技术种类繁多(包括调制,编码,接入,双工,天线),实线复杂度也更高。因此,对于移动通信领域的从业者而言,物理层技术的发展就是移动通信系统发展的标志。而对于空口而言,除了Massive MIMO涉及的空间信号处理,最重要的就是我们常说的调制技术、纠错技术(通过编码实现)、以及我们处理多用户时遇到的多址接入技术。5G在这些方面都有了新的表现形式,所以我们将5G

17、的新物理层空口技术称之为“新型空中接口”。图2-1 5G技术介绍2.1 新空口之调制方式调制在通信系统中占有十分重要的地位。现有主流的移动通信技术,调制分成两大类,一类是单载波的扩频技术,以CDMA为代表;一类是多载波调制技术,以OFDM为代表。OFDM(正交频分复用)是一种非常优秀的多载波调制技术,已经被广泛用于多种无线系统中,譬如现在主流的LTE和广电的DVB,都是用的OFDM。OFDM的主要优点是:频谱利用率高;能够很好地克服多径传播的影响;从基带处理的角度看,实现复杂度低。但也存在峰均比高,对频率和时间敏感,容易引入载波干扰(ICI)和符号干扰(ICI)等问题。2.2 新空口波形技术根

18、据现有各大厂商提交的候选波形来看:OFDM作为一种重要的多载波技术,不仅仅在4G系统中得到了广泛的应用,而且作为5G系统的重要候选波形之一仍然被众多研究人员所推崇。但是与前几代移动通信系统相比,5G系统设计时不仅要考虑移动宽带业务,同时也会考虑未来对于海量机器连接以及高可靠低时延业务的支持。OFDM原来固有的一些缺陷,对于未来更加多样化的业务,更高的频谱效率以及海量连接,是远远不够的。因此为了满足未来应用的需求,同时考虑到对于低时延,零碎频谱使用,非严格同步以及在高速情况下系统鲁棒性等5G系统所面临的挑战,许多新的多载波波形方案被提出,比如:FBMC,UFMC,GFDM以及F-OFDM等。2.

19、2.1 FBMC(Filter Bank Multi-Carrier)FBMC和OFDM在历史并没有关系。60年代中期提出FBMC基本概念的时候,OFDM还未出现,不过由于FBMC复杂度太高一直未被重视。但是随着5G的兴起,FBMC也进入了热门候选波形的行列。对于OFDM系统而言,系统带宽内只有一个滤波器,所有的子载波都在这个滤波器内,而且需要子载波完全正交来保证子载波之间没有干扰。但在FBMC系统内,给每个子载波都根据需要加了一个单独的滤波器,目的很简单为了消除子载波之间的干扰。最开始的FBMC压根不需要子载波完全正交,而且在FBMC系统中,只要滤波器足够好,根本不需要所谓的CP来对抗载波干

20、扰,所以大大提高了频谱效率2。但是对于FBMC还有很重要的一点就是它增加了OQAM的调制方式,来保证正交,最后做到完全的不依赖于CP和正交子载波来对抗ISI和ICI。而且可以根据设计的滤波器形式,满足未来5G高速率和低时延的广泛的应用需求。图2-2 FBMC示意图优点:提高了频谱效率,且不要求正交,还能通过滤波器抑制带外辐射、满足不同场合需求。缺点:因为滤波器设计的需要,首先增加了设计系统的复杂度和增加了设备的硬件开销;其次,因为FBMC没有通过CP而仅仅通过滤波器来抵抗ICI,在信道估计时存在很大困难,所以与MIMO结合存在很大的困难,这对FBMC而言,是个致命的缺点;最后,因为子载波的带宽

21、很窄,所以相应滤波器的冲激响应通常很长,阶数要很多,所以对于某些短突发传输的场合并不适用。2.2.2 UFMC(Universal Filter Multi Carrier)从FBMC我们可以看到,虽然FBMC有一些优势,但在MIMO传输和低突发场景中存在的问题可能会降低FBMC的有效性。一种针对FBMC的改进方案应运而生,这就是通用滤波多载波UFMC。UFMC不是像FBMC那样对每个子载波独立进行滤波操作,而是对一组连续的子载波进行滤波处理。很想然,当每组子载波的数目变成1时,对应的就是FBMC。对一组连续子载波进行滤波可以使UFMC具有更大的灵活性,它除开具有FBMC传输的优点外,从低带宽

22、、低功率的物联网设备到高带宽的视频传输,UFMC都可以支持。相比于FBMC的滤波器长度,UFMC技术可以使用较短滤波器长度,这样可以支持短突发通信,可以作为未来5G无线系统支持大量MTC(机器通信)和低成本IOT(物联网)传输的一个潜在候选技术。而UFMC只需控制一组连续子载波的旁瓣和带外抑制,可以明显减少旁瓣对邻道的干扰,并降低滤波器实现的复杂度5。图2-3 UFMC示意图同时,在UFMC中,我们可以选择支持增加CP。这会带来两个好处:首先,由于增加了CP,提高了抵抗ICI的能力,更方便的实现信道估计,进而和MIMO技术相结合;另外,根据CP配置的不同,UFMC可以提供不同的子载波带宽和符号

23、长度,可以满足不同业务的视频资源要求。不过,虽然UFMC比FMBC有更多的优势,但在实际应用中,大尺度的时延拓展,需要更高阶的滤波器来实现。同时,在接收机处也需要更复杂的算法,而增加系统的复杂度。而因为CP并不是必须要添加,所以也会引起符号干扰和子载波间的干扰。2.2.3 GFDM(Generalized Frequency Division Multiplexing)虽然UFMC相比于OFDM和FBMC有了很多的优势,但因为CP的添加并不是必选项,所以对于一些需要松散时间同步以节约能源的应用并不适合。因此,另外一种灵活的多载波调制方法走入了我们的视野,这就是广义频分复用GFDM。根据GFDM

24、的实现原理:输入数据在变成时域信号后,插入CP,然后再通过发射机发出。根据滤波,信号和业务的变化要求,理论上GFDM可以插入不同类型的CP,允许低复杂度的均衡,因而具有CP-OFDM的简单性。同时,GFDM将若干个时隙和若干个子载波上的统一的处理对象,也是基于多个子载波和符号来实现调制,因而具有UFMC的灵活性3。同时GFDM通过尾比特操作将调制过程由线性卷积转化为循环卷积,增加了带外抑制能力,因而具备FBMC的抗子载波干扰能力。而且,GFDM的每一个或每一组子载波处理都可以当成是单载波的频域均衡,所以在减少信号的峰均比上有明显优势。性能上来看,GFDM比FBMC和UFMC更适合未来5G的传输

25、需求。当然,它是以增加复杂度作为代价的。图2-3 GFDM示意图2.2.4 F-OFDM(Filtered/Flexible OFDM)重点介绍本文使用的的F-OFDM仿真系统,F-OFDM本质上是为了进一步扩展OFDM的应用范围而进行的升级和更新。对于传统的OFDM,频域子载波带宽核时域符号周期长度是固定的,CP和保护时隙(GP)也是固定的。但是对于5G的广泛应用范围,单一的固定参数就无法满足要求。例如高速的车联网和低速的物联网,对系统的要求是相互矛盾的。因此,F-OFDM就提出了一个新的理念面对各种不同的应用需求,OFDM应该能够灵活的配置各种参数(如子载波带宽,符号长度,CP和GP长度)

26、如图2-45所示。图2-4 F-OFDM的应用F-OFDM的实现是基于子带的切割和滤波,使其形成相互独立的OFDM信号(甚至是其他可能的波形)。子带之间的正交被完全的放弃的了,主要是为了实现以下几点:l 减少同步开销,并在相邻的子带之间支持异步传输。l 最小化子带之间保护频带的消耗,增加频率的利用率。l 为特定的服务灵活配置波形。下行链路的收发器结构的F-OFDM在图中所描绘的,独立OFDM系统具有不同配置,即,副载波(SC)的间距,循环前缀的长度(CP)和传输时间隔(TTI),都被包含在不同的子带,通过滤波器分开。子带不互相重叠。子带之间,一个小的保护带被保留以容纳子带间干扰。在如4G LT

27、E4G LTE上行链路中所用的波形中,即,SCFDM,也可以和子带滤波以相类似的方式结合图2-5 F-OFDM收发端示意图如在图2-5所示中,F-OFDM的时间频率配置是非常灵活的。下面给出应用的两个实例:l 为了避免快速移动的车辆之间的碰撞,需要较短的通信TTI,扩大子载波间隔就可以降低时延.l 对于机器类型通信,可启用单载波波形,做到广覆盖,低功耗,同时将TTI延长来提高准静态信道的可靠性。在一般情况下,不同的波形和配置可以在F-OFDM的框架下共存,时间-频率安排也可以被动态地调整。在设计上,为了实现基于子带滤波,从而享受用F-OFDM的益处,适当地设计滤波器是需要的。在一般情况下,滤波

28、器的设计涉及到折衷时域和频域特性。之间一些设计准则已归纳如下:l 限制在时域中的能量扩散,降低通过过滤引入的符号间干扰的影响。l 为了在频域上上严格限制其传输,推荐使用保护带。l 为了降低计算复杂性,建议采用重叠保留方法来实现在频域中的滤波器。2.3本章小结这些新波形方案一个共同点是通过滤波器的方式来降低带外泄露以及减小对于时频同步的要求。FBMC原理方案中所使用的滤波器组是以每个子载波为粒度的。通过优化的原型滤波器设计,FBMC可以极大的抑制信号的旁瓣,而且与UFMC类似FBMC也通过去掉CP的方式来降低开销。而UFMC和F-OFDM方案中的滤波器组都是以一个子带为粒度的。两者的主要差别是:

29、一方面,UFMC使用的滤波器阶数较少,相比而言F-OFDM需要使用较长的滤波器阶数;另一方面,UFMC不需要使用CP,而考虑到后向兼容的问题F-OFDM仍然需要CP,其信号处理流程与传统的OFDM基本相同。对于GFDM方案而言,根据一个GFDM块中不同的子载波以及子符号数配置,该方案可以把OFDM以及单载波的频域均衡作为它的一个特例。除此之外,与OFDM中每个符号添加CP不同,GFDM通过在一个GFDM块前统一添加一个CP的方式来降低开销。同时,在FBMC以及GFDM中通常使用OQAM调制,来减小邻道干扰以及降低实现复杂度。由此可以看出,对于5G系统来说,实现一个高性能、低复杂度的滤波器是一件

30、值得的事。第三章 滤波器的设计与实现方式第三章 滤波器的设计与实现方式3.1 FIR数字滤波器FIR滤波器是数字信号处理系统中最常用的组件之一,他能完成信号滤波,频带选择,信号预调等功能。虽然在FIR数字滤波器在频带陡峭性方面等性能方面不如IIR滤波器,但是FIR滤波器具有严格的线性相位特性而不像IIR滤波器存在稳定性方面的问题。虽然FIR滤波器也存在着乘法器需求较多,输出延迟长等缺点,但是随着FPGA的发展,FIR的缺点将被逐渐克服,所以FIR滤波器能得到了广泛的应用21。设一个FIR滤波器单位冲激响应h(n)的长度为N,其系统函数为: (3-1)H(z)为N-1次多项式,它在z平面上有N-

31、1个零点,原点z=0是N-1阶重极点。因此,H(z)永远稳定,稳定和线性相位特性是FIR滤波器突出的优点27。设计FIR滤波器的主要任务是如何选择有限长度的h(n),使系统传输函数H(ejw)满足既定的要求14。3.2 窗函数法设计FIR数字滤波器设计滤波器时,最理想的实现当然就是“理想滤波器的特性”。即:在通带内振幅特性为1,在阻带内为0;且在通带内的具有线相位的特性。即 (3-2)它对应的理想单位冲击响应为 (3-3) 由此可见,理想低通滤波器的单位冲激响应是无限长的非因果序列。但是我们要设计的FIR滤波器,其单位冲击响应必然是有限长的,为了能在物理上可实现,我们就用窗函数截取长度为N的一

32、段,或者参看公式,即用一个有限长度窗口函数序列来截取,目前使用较多的几种窗函数分别为。矩形窗、汉宁窗、三角形窗、哈明窗、布莱克曼窗和凯泽窗等具体性能参看图3-1和表3-1。图3-1 不同窗函数的幅度频谱响应曲线表3-1 主要窗函数性能FIR滤波器窗函数的选择对实际结果有着重要的影响。在工程实现时针对不同的处理目的和不同的信号和来确定窗函数的选择才能收到良好的实现效果。在一般情况下,窗函数选择的原则是:1.要从消除旁瓣和保持最大信息的综合效果出发来考虑问题。窗函数频谱中的主瓣宽度尽量窄,能量要尽可能集中在主瓣内,从而获得较高的频率分辨力,并且获得较小的过渡带。2.窗函数频谱的旁瓣高度应尽可能小而

33、且随频率尽快衰减,以减小带外泄露。还应在设计数字滤波器时考虑减小通带的波动,提高阻带的衰减。但是,主瓣既窄,旁瓣又小衰减又快的窗函数是很难找到的,比如矩形窗虽然主瓣宽度是最窄的,但其旁瓣很大。因此,在设计滤波器时,要综合考虑多种因素。3.在应用窗函数时,还应当充分考虑实际信号的特点以及具体的处理要求。例如要考虑信号中信息量的分布,以增强信号中所需要的信息部分,过滤不需要的部分。如果要分析具有较强的干扰噪声的窄带信号时,应选用旁瓣幅度较小的窗函数,如Hamming窗等。而如果干扰距离信号较远,则可以选用旁瓣衰减速度较快的窗函数,如Papoulis窗等。4.对于实际要处理的信号,往往情况复杂,不知

34、选用哪一种时窗函数时,多用几种窗函数进行处理,之后比较用几种窗处理的结果,再试验验证调整参数综合考虑该采取什么窗函数15。窗函数参数值采用FDATOOL工具自动生成。3.3 仿真结果及分析3.3.1 发射机带外泄漏抑制性能我们使用的是512阶和1024阶的汉宁窗,分别画出了在不同的子带保护间隔下,未加窗和加窗后的带外泄漏情况。图3-2 N1=0,N2=1发射机带外泄漏(OOB)抑制图3-2是在N1=0和N2=1的配置下带外泄漏情况。(a)是未加窗时的带外泄漏情况,可以看到在未加窗时,子带1的带外泄漏对子带2的影响比较严重,(d)是(a)的放大图。(b)是在加512阶汉宁窗后的带外泄漏情况,(c

35、)是在加1024阶汉宁窗后的带外泄漏情况,可以看到在使用子带滤波器后,带外泄漏性能可以被大幅度抑制,减少相邻子带间的干扰。为更加清晰的看到两个子带间的保护间隔,(e)、(f)分别是(b)、(c)按比例放大后的图。图3-3 N1=0,N2=1发射机带外泄漏(OOB)抑制图3-3是在N1=0和N2=3的配置下带外泄漏情况。(d)(e)(f)分别是对(a)(b)(c)的放大图,可以看到相比于N1=0、N2=1配置的情况下,在N2=3时,两个子带之间有明显的保护间隔。在零频处,子带1有一个凹陷,是因为零频处的子载波并没有映射数据。3.3.2 F-OFDM下不同窗函数性能本小节结果是在 N1=0,N2=

36、1的条件下替换不同滤波器的性能对比的性能对比,其中为了排除干扰,每种参数的滤波器均作了20次测试,取平均值。图3-4 15kHz子带性能图3-5 30 kHz子带性能本F-OFDM系统仿真将带宽分为15kHz和30kHz两个进行,在分别添加如图3-4和图3-5所示相同阶数不同参数滤波器时,可以看到性能并没有太大差别。图3-6 不同阶数Hamming窗性能对比接下来尝试不同阶数的滤波器,可以看到,随着滤波器的阶数的增加,性能有显著的提升。鉴于实现难度和性能上的综合考虑,采取512阶的汉宁窗作为选用的参数。3.4 滤波器实现方法选择由于滤波器用加窗截断的方式设计,因此我们可以采用FIR结构来实现,

37、下面主要介绍滤波器结构的选择。3.4.1 实现方案分析1)直接型的FIR常采用乘累加(MAC)结构,如下图所示25:图3-7 FIR滤波器实现原理但是上面的结构会因为使用较多的乘法器而占用的面积较大,一个优化的方式是将滤波器的系数分解,用加法和移位代替乘法单元,如下图蓝框所示:图3-8 优化的FIR滤波器实现原理如果滤波器的系数较多,就不便于处理25 DA(Distributed Arithmetic)DA(Distributed Arithmetic)结构的滤波器主要采用查表然后累加的方式计算输出24。由于滤波器的输入数据常用有符号的数,可以表示为: (3-5)(B-1代表最高位,代表数据位

38、)则滤波器对应的输出就可以写为: (3-6)是滤波器的系数,代表系数的组合,因此可以用查表来实现,如下图所示,一个串行的DA结构的FIR为:图3-8 查表法FIR滤波器实现原理(3)通过频域实现(overlap add/save method)实际上是通过循环卷积来计算线性卷积12,如果滤波器的长度为P,输入数据的分段大小为L,则实现过程如下图3-10 FIR滤波器频域实现原理硬件实现需要的结构为:3.4.2 实现方案选择本文将选择overlap save method的方法实现滤波器,理由如下:l 傅立叶变换是数字信号处理中两个最常用,最基本的运算之一。FFT算法作为DFT的快速算法,可使D

39、FT的运算时间缩短一到两个数量级,进而推动了其在工程应用中更广泛应用。l FFT的实际理论算法有很多种,例如库利图基(Cooley-Tukey)算法、混合基算法、基-4FFT算法、分裂基FFT算法、素因子算法(Prime Factor Algorithm,PFA)、WFTA算法等1011,当然相应地也出现了一些FFT算法的实现。卷积也是数字信号处理中最常用最基本的运算之一。但用一般方法实现高阶卷积(时域),需要使用大量的乘累加器,增大工程实现的难度,进而影响高阶卷积的实际应用。但是基于FFT的快速卷积算法的提出改变了这一切。FFT算法的出现使得卷积运算可更加方便的由傅里叶变换算法转到频域相乘,

40、再经过傅里叶反变换反转到时域得出结果,降低了工程实现的难度,使得其应用和前景都更加宽广。l 另外,在频域实现该滤波器,也能利用到现代FPGA系统的DSP blocks,节约算数单元和memory,提升器件使用效率,降低实现复杂度。综合考虑,本文将基于快速卷积算法(overlap add/save method)进行具体的实现描述并且给出系统且详细的算法原理、实现过程和相应的结果。第四章 MATLAB算法实现第四章 MATLAB算法实现4.1 算法介绍快速循环卷积12: (4-1)y(n)也可以这样计算 运算开销12:l 直接计算N2(复数乘法)N (N 1)(复数加法)l 经 FFTs(乘法)

41、(复数乘法)(复数加法)实际上在实际情况当中H(k)可以被提前计算,那运算开销可以被进一步降低至。快速线性卷积12:DFT产生循环卷积。对于线性卷积,我们必须在序列后加零。要使用快速循环卷积实现线性卷积,必须用零填充使序列长度大于NL+M1。图4-1 快速线性卷积示意图通常选择 (4-2)说明:虽然添加0序列之后运算开销增大了,但是相比直接计算还是有O复杂度可以被节省下来12。Overlap-Save(OLS)Method假设L=,比如在一个实时滤波器应用,或。这有一种更有效率的计算方法-Overlap-Save(OLS)Method如果一个长度为M的滤波器h(n)和x(n)的一个长度为N的一

42、截相卷积,最开始的M1的是不准确的。但是对于,这是线性卷积的一部分,这些数据是准确的,所以每个长度为N循环卷积有 个良好输出。Overlap-Save(OLS)Method:把超过信号转换成每块有N个样本的连续块,每个块由M-1样品前一块重叠。执行与网络连接?滤波器h(m)每个块的循环卷积。在每个输出块,舍掉段落开始的M-1个点,并连接剩余的点,生成y(n)。对于每一个长度为N的片段,运算花销为(假设 已被预先处理好)直接计算每个点需要 ,相比之下,OLS可以根据给定的M,选择N的大小,通常对每一段分割块的数据数目。图4-2 Overlap-Add(OLA)Method(重叠保留法图解)18O

43、verlap-Add(OLA)Method也是相类似的原理。4.2 MATLAB下算法实现现对一个很长的 的输入序列建立一个MATLAB函数实现Overlap-save Method,这个算法中关键一步是要对这个分段有一个合适的编号,已知 作为开始批处理,必须置前(M-1)个样本为零,令这个增扩序列为: (4-3)并令,那么第块就是给出为: (4-4)总的块数给出为: (4-5)其中是的长度是截断运算。现在每一块都能与基于FFTs进行快速卷积: (4-7)最后,从每个中丢弃前个样本,并将余下的样本串接在一起得到线性卷积119。4.3 Overlap-save Method的定点仿真数的定标:在

44、MATLAB仿真过程中,内部数据的处理都是采用浮点型,而在实际FPGA处理数据的过程中,并不能对浮点数进行直接处理,所以在仿真的过程中,如果要得到与PFGA可以相比较的结果就必须进行定点数的仿真13。整型数只要字长给定,那么这个整形数的取值的范围也就确定了。因此可知,随着字长的变长,整型数能够表示的数值的范围就越大,计算精度也就越高。首先以16位的字长进行分析,FPGA芯片中数据是以补码的形式存放的,用15位表示数值本身的大小,用最左边的一位来表示符号位(1表示为负数,0表示正数)。如下所示:0010000000000111b=8199 1111111111111100b=-4在FPGA处理过

45、程中,芯片不能识别小数。但在许多情况下,数学运算过程中的数不一定都是整数,处理的关键就必须由程序员指定小数点的位置在数据中的哪一位,这个过程就是数据的定标。数的定标实质上就是一个将浮点数进行人为的扩大,并将数据取整的过程。经过定标的数就可以送入FPGA当中进行运算,只需在最后对运算结果再进行相应的倍数进行缩小,就可以得到实际的浮点数运算的结果了。这对于二进制数来说,实质上就是小数点位置的移动过程。在FPGA芯片中,数据一般就是以二进制数表示,而长度取决于给定的字长。将FPGA的输入输出数据进行移位,所得到的结果就是将原始数据扩大或缩小了2的幂次方倍的结果。目前,一般都是用S表示法和Q来表示数据

46、的定标。以16位的数据为例来说他们是相同的表示方法。见下表。表4-1 Q表示、S表示以及数字范围综上可知在定点数中,所得到的数据的范围和精度是互相矛盾的。所以在实际的处理过程中,必须将数据的精度和范围都兼顾,才能得到好的处理性能性能。在实际的处理过程中,若要将浮点数和定点数进行转换,其转换的关系可以表示如下:浮点数转换为定点数(xq)定点数(xq)转换为浮点数(x)根据上面的转换关系,对于浮点数转换到定点,将数据乘以就可以得到相应的定点表示。例如,浮点数x=0.5,定标Q=15,则定点数xq=0.5*32768=16384,式中表示下取整。反之,一个用Q=15表示的定点数16384,其浮点数为

47、。浮点数转换为定点数时,为了降低截尾误差,在取整前可以先加上0.5。本次实现将数字定标为Q=15。利用程序处理输入输出数据,模拟FPGA中精度有限的定点运算,以此验证程序的准确度以及合理性。下面是仿真的误差值,归一化总值为“1”。图4-3 算法MATLAB定点仿真结果计算得平均误差率:0.237%。精度在接受范围内,可以以此为基础在FPGA上实现。第五章 基于Overlap-Save算法滤波器的FPGA频域实现第五章 基于Overlap-Save算法滤波器的设计FPGA具有密度高、功耗低、速度快、可配置性强和ASIC的快速性等优点,已在许多领域得到广泛的应用,包括数字信号处理方面。本章首先介绍

48、FPGA技术,主要其应用在无线通信领域方面的具有的优势。余下部分重点讨论了基于Overlap-Save算法滤波器的FPGA频域实现过程,主要包括FFTIP核的调用、复数乘法器的实现、RAM的模块的实现、参数调整模块的的实现,参数的选择等等。采用数字方式实现滤波器时,不可避免会产生量化误差或舍入误差。在前面章节的研究中,是利用模拟的模型假设,进行软件上的精度计算,利用了连续数学的优点但是当实际高阶滤波器用数字方式实现时,模块数据的输入和在模块内部所进行的运算都必是有限精度的,在量化的过程中,由于存在着尾数的截取或者是舍入偏差,所以得到的实际输出值也会与理论值存在着偏差。本章也用MATLAB对FP

49、GA滤波器产生的测试结果进行了分析。5.1 无线通信领域基于FPGA进行设计验证的优势FPGA是Xilinx公司在1984年首先开发出来的一种通用性的用户可编程器件,它具有门阵列器件和可编程逻辑器件两方的优点,也就是高度集成度和用户可编程的灵活性。FPGA属于ASIC中的一种半定制电路,在同一片FPGA芯片中,可以通过硬件描述语言或原理图的输入产生不同的电路功能。目前,FPGA已在从航天军工到民生科技的各个行业中占据了重要的地位。随着EDA软件的完善,FPGA器件性能的提高、成本和功耗的降低,FPGA必将在更多领域中发挥越来越重要的功能。FPGA具有ASIC外的优点:(1)FPGA的可编程性在

50、项目开发中遇到设计BUG或者需求更改时,可以迅速更改设计,降低开发风险;方便设备的升级,升级时设备不需改动硬件,直接更新代码文件即可,降低升级成本;做到缩短产品的上市时间,抢占先机。(2)高集成度随着工艺的进步,FPGA的规模越来越大,采用FPGA的设备也能实现更强大的功能。(3)高可靠性市场上的FPGA芯片是经过芯片厂商全面测试后发布的商品,减少了投片的风险,具有较高的可靠性。FPGA在许多领域有广泛的应用,特别是在无线通信领域。由于其具有极强的实时性和并行处理能力,使系统对信号的实时处理成为可能。FPGA全称是是现场可编程门阵列,它由N输入的查找表,存储数据的复路器和触发器等组成基本功能模

51、块。由内部结构特点决定,FPGA可以很容易地实现分布式的算法,这一点对于高速数字信号处理尤为重要。通过FPGA来实现分布式的算术结构,就可以非常有效的实现高速信号处理中大量的滤波运算。目前,无线通信正向话音和数据综合的方向发展。随着无线移动通信系统的发展,以及市场对更为完善的便携式系统的期望,组成系统模块的处理器就必须更加强大。这一要求对无线通信的FPGA芯片提出了重要挑战,其中最重要的三个方面就是功耗、性能和成本。目前已有许多方法来平衡这三个要求。利用SOC(系统芯片)就是一个重要的方法。它可以将尽可能多的功能集成在一片FPGA芯片或芯片集上,做到提高速度,降低功耗,降低复杂性的目的。由于具

52、有极强的实时性,SOC在无线通信领域作用尤其重要,它使对话音进行实时处理成为可能。并且系统是通过面向芯片的软件编程来实现功能的,因而仅修改软件就可以改进系统原有设计方案或原有功能,给部署系统带来极大的灵活性;又由于其采用的FPGA并非特殊,可以利用规模优势将价格压得很低,所以FPGA将会越来越多地应用在无线通信系统中。OFDM技术,软件无线电,多用户检测等现有移动通信中的关键技术,都需要依靠并行处理器来实现。随着这些应用的发展,实际工程中FPGA已经演变成了构件内核,通过与专用逻辑组合在一起,形成专用的FPGA方案来满足今天的信号处理需要。目前一些中高端芯片将DSP核和FPGA集成在一起。特别

53、是调制解调器的使用,需要用到的复杂数学运算,并且对大小、重量、功耗特别关注,这就对FPGA提出更高的要求。但是,对于当今复杂的移动通信运算需求,一片FPGA难以达到系统级处理的能力。比如对于现在广泛使用的3G通信,一片FPGA只能进行信道和信源方面的物理层处理,而不能处理控制和高层信令。只有与另外的DSP或者CPU相结合才能完成整个任务。因此,基于DSP/CPU加FPGA的无线网络将成为市场的热点。总体来说,更加优良的FPGA性能将会促进无线通信的发展,而随之而来蓬勃发展的无线通信又将会进一步促进FPGA技术的不断进步,相辅相成。5.2 滤波器具体实现基于FPGA的Overlap-Save算高

54、阶滤波器的具体的实现过程。包括2个FFT单元和1个IFFT单元还有指数调整模块,存放滤波器参数的RAM和复数乘法器。IFFT单元与FFT单元是类似的,所以FFT单元是整个程序的核心。FFT有3种工程实现方法:用DSP芯片实现、用专ASIC芯片实现以及用FPGA实现。各有优劣。现代较为高阶的FPGA嵌入DSP模块,相比在时域实现滤波器,采用Overlap-Save算法实现滤波器可以利用到更多的DSP blocks,进而节省更多的MEMORY和乘法器。5.2.1 FFT IP核的选择和例化实际当中,为了节省开发时间,加速产品的投放,使用FFT IP核来实现FFT和IFFT功能是理想的选择。本设计使

55、用的Altera FFT IP核函数,这是一个参数化、高性能的快速傅里叶变换(FFT)处理器,支持Altera的FPGA全系列,可以完成变换长度为2m(6m14)的基2、基4按照频率抽选的高性能复数FFT以及IFFT运算。支持自然顺序输入自然顺序输出,给实现功能带来了很大的便利性。此外,该IP核还对实际波形作出优化(比如正弦波)在实际工程应用中,能兼顾效率与精度。FFT IP核支持4种数据流模式,突发(Burst)模式、缓冲突发模式(Buffered Burst)、流模式(streaming),可变流模式(variable streaming)。转换点数的设置可在初始化阶段完成。在实际使用时也

56、可以控制其变换方向(FFT/IFFT) 9.基于效率的考虑,我采用流模式(streaming)的FFTIP核。下面给出流模式的参数(Stratix III)23图5-1 流模式参数以及例化后的模块示意图图5-2 FFT/IFFT模块示意图参考FFT IP核datasheet,得知。为了在整个转换计算过程中保持较高信噪比和运算效率,该FFT IP核在全浮点结构与定点结构之间作了折中,使用块浮点结构(BFP)来表示转换结果。数据每次经过FFT核基数-2或基-4引擎时,加法和乘法运算都会导致数据比特宽度增加。换句话说,总数据比特宽度与FFT操作遍数成比例。而在FFT / IFFT运算的遍数则取决于数据的点数。定点架构FFT需要一个巨大的乘数和存储器模块,来容纳大比特宽度的增长来表示高的动态范围。虽然浮点在算术运算功能强大,但是也会带来较高的设计复杂性成本,如浮点乘法和一个浮点加法器。而 BFP算法结合浮点和定点算术的优点。在同样的硬件开销下, BFP算法提供了更好的信噪比(SNR)。在一个块浮点架构FFT,每个基2或基4计算通过共享相同的硬件,以将数据从内存中读取,传递通过核心发动机,并写回存储器。进入下一过程

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论