一个跳频解码的实现方法.doc

  1. 1、本文档共5页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
一个跳频解码的实现方法

扩频通信报告 戚群 信息与通信工程 扩频通信报告 一种调频解码实现方法 载机通过向导弹传送目标、载机的相对位置和速度数据以及其他有用的信息,保证在制导过程中,目标机动时,导引系统仍能可靠的截获目标,这一过程实现需要完成大量的数据通信。数据链系统是增大制导距离的主要技术途径。数据链系统本质上是一个通信系统,包括弹上数据链系统和机载数据链设备。提高数据链系统的抗干扰能力是确保导弹性能的关键。通过将扩频通信技术引入数据链系统,提高了其抗干扰能力的背景下,针对扩频通信的解码问题进行研究。目前,信号的频域处理主要集中在FPGA中,利用IPcore自带的FFT核实现,但厂商自带的IPsore不能满足扩频通信中实时、连续FFT处理需求。本文从工程应用角度出发,利用FPGA丰富的硬件资源搭建满足工程需要的自定义FFT核,并通过硬件平台对自定义FFT核进行仿真验证。从仿真结果看,自定制FFT核满足工程应用需求。 数据链码元简介 数据链信息以二进制编码形式表示,经过m序列调制,形成待发送的二进制数据。为了增加发射的信号功率,增加系统的抗干扰能力,用DDSS产生不同频率的波形来表示0和1信号发出。所以,数据链通信的难点就是将接收的波形信号进行实时FFT处理,通过比较器准确的判断接收的信息为0还是为1,其中找出码元的起始位置是整个码元接收的关键。 以往,FFT都是用软件自带的IPsore实现,其收到本身设计的限制,点数越多,延时越大,并且不能实现连续的FFT处理。本系统要求对接收的信息以16个采样数据为一个单元进行FFT的频域变换处理,为了准确找出码元的起始位置,需要对每个采样数据与前面15个缓存的采样数据进行FFT处理,软件自带的FFT核无法实现。本系统提出了利用N点复数FFT计算2N点实数FFT的算法,设计自定制的FFT核,实现信号的频域处理,既避免浪费较多的硬件资源,又满足了系统的实时性要求。 FFT核设计 图1为自定义的FFT核的基本框图,从图中可以看出,核将A/D转换后的数据缓存到16个数据寄存器中,每一个时钟周期将高位数据寄存器内的数据用再次高位数据代替,最低位为本时钟周期内新进的数据。同时,将延时寄存器内数据传到FFT数据寄存器中进行运算,这样每个时钟周期都有16个数据输入,经过转换模块,将16个实数序列转换成8个复数序列,输出给FFT核,FFT核直接结算出16点实数FFT结果传送到下一个处理单元。 图1:自定义FFT核基本框图 图2为8点实时复数FFT变换模块的细化实现框图,本模块的设计思路就是用硬件资源来满足实时性要求,所以用了12个螺形运算单元,中间用缓冲寄存器连接。 图2:8点复数自定制实时FFT模块框图 1、N点复数实现2N点实数FFT公式推导 2N点实数序列x[n]构造N点复数序列,奇序列作为实数部分,偶序列作为虚数部分,如下式所示: 其FFT变换为: 由其周期性可以推出: 由和的奇偶性可以推出: 由上面的结构得: 由上式可实现用N点FFT计算2N点FFT。 2、8点FFT实现 图3给出了8点FFT的框图,传统FFT都是用一个螺形运算单元,通过缓存数据,同地址循环计算得到FFT结果。点数越多,需要的周期就越长。为了实现一个周期内完成运算的实时性要求,采用12个螺形运算单元,构成3级流水操作。由于本系统采用定点形式完成FFT运算,为了减小运算过程中截断误差引入的噪声影响,这里采用舍入法减小误差的影响。其算法实现在螺形模块的加法器模块中进行。表1给出了8点FFT权值。 图3: 8点FFT流程图 表1:8点FFT权值量化系数表 0 1 2 3 4 5 6 7 256 181 0 -181 -256 -181 0 181 0 -181 256 -181 0 181 256 181 三、仿真结果及分析 仿真时,以单频正弦序列经12位量化处理后数据作为输入进行仿真。从FFT核输出结果可以看出,经过8个周期的缓冲,以后每个周期都有FFT结果输出,新增数据与前15个数据再进行FFT处理,实现连续FFT操作,得到了码元变换后的频域信息,经过门限判断,可得出最大值所在数组为码元起始位置。图四为输出结果,经MTALAB程序导入后的图形输出,并与理想浮点运算进行比较,给出了误差曲线。从误差曲线中可以看出,最大误差为1e-3量级,在系统允许误差范围内。 图4:仿真结果和误差 结论 自定义的FFT核能满足系统的设计要求,每16点实时输出连续的FFT运算结果,且误差在系统允许的范围内,使后期数据链解码工作得以进行。但由于本方法是在牺牲硬件资源的前提下进行的,且变成复杂,只能针对FFT点数较少的系统,复杂系统本方法并不适宜。

文档评论(0)

haocen + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档