利用FPGA来对OQPSK进行系统仿真

    发送端主要工作过程如下:将信号通过成形滤波器,然后将信号和SIN,COS相乘,然后进行混频处理,将信号发送出去。

5.1.1 成形滤波器设计

    这里成形滤波器的设计主要通过IP核来设计,通过MATLAB我们可以得到滤波器的系数:

Radix = 10;

Coefficient_Width = 18;

CoefData = 0.02022066,

  0.00443409,

 -0.03751318,

 -0.07842133,

 -0.05305165,

  0.07842133,

  0.28931623,

  0.48724768,

  0.56830989,

  0.48724768,

  0.28931623,

  0.07842133,

 -0.05305165,

 -0.07842133,

 -0.03751318,

  0.00743409,

  0.02022066;

这里是IP核所要调用的COE文件的文件格式,这些数据是FIR滤波器所采用的系数,这些系数是通过MATLAB来得到的。

具体IP核参数设置如下所示:

     通过这个设置,我们可以得到FIR滤波器的基本参数功能如下所示:

     以上我们基本完成了RRC滤波器的设计过程。

5.1.2 NCO设计

这里要设计一个NCO来完成发送端的调制过程,主要利用ISE的NCO-IP核来完成。这里的参数设置比较简单,就不做具体介绍了,新建一个IP核,打开NCO核生成器。

其基本参数的设置如下:

图5-4 NOC参数设置1

图5-5 NOC参数设置2

    通过以上设置,我们基本完成了NOC模块的设置,通过NCO-IP核可以得到SIN,COS两个载波的波形。

5.2 COSTAS设计

    接收端COSTAS环的RRC滤波器的设计思路和发送端的设计思路相同。具体参数设置就不做介绍了。接收端COSTAS环的NCO的设计思路和发送端的设计思路相同。具体参数设置就不做介绍了。

5.3 基于FPGAOQPSK发送接收模块的仿真及分析

首先,信号通过成形滤波器后得到的波形如下图所示:

图5-7 发送的01信号

由上图可以看到,1,0,1,0信号通过滤波器后可以得到滤波信号。从而验证了这个模块的正确性。

同时发送段产生载波,这里产生SIN,COS载波。

图5-8 本地载波

同时将信号和载波进行相乘,得到调制信号。

图5-9 调制信号

 

下面的波形就是信号通过COSTAS滤波器后的信号。通过COSTAS后,信号基本和原来的信号匹配了,说明COSTAS是正确的。

图5-10 解调以后的信号

     以上结果表明:信号通过COSTAS后,得到了基本的还原。

本文首先介绍了OQPSK调制解调技术的原理,并用MATLAB对其算法实现过程进行了仿真。在Xilinx ISE10.1中用verilog语言完成了OQPSK调制解调算法的软件设计,实现了数字上下变频、载波恢复、定时恢复、以太网发送等功能。根据系统设计指标,给出了调制解调器的硬件实现框图,完成了调制解调器的设计。最后将编译好的程序下载到FPGA芯片以及电路调试,测试结果证明该调制解调器可正常工作。在实际侦收环境下,通过了现场测试。

在近一年的课题研究中,本人对数字通信系统有了比较深刻的认识,对各种同步算法有了较深入的了解;掌握了运用VHDL语言进行FPGA开发的方法,对Xilinx公司的Spartan 3AN系列FPGA有了一定程度的了解,能够较熟练的使用ISE、和Modelsim的开发工具。在硬件电路设计过程中,对理论和实际设计之间的差别也有了一定的认识,对今后的学习和工作必将会起到很多积极作用,为进一步研究打下了较坚实的基础。

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

fpga和matlab

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值