FM调制的FPGA实现

一、前言

1.1. 平台

  • Vivado 2017.4;
  • Matlab 2016b;

1.2. 参数

  • 载波频率:5M;
  • 频率偏移:-75KHz ~ 75KHz;
  • 系统时钟:100M;
  • AD位宽:12位;

二、关于FM调制

在这里插入图片描述

简单来说就是:幅度改变频率
与之相对应的是AM:幅度改变幅度

怎么理解呢?对FM来说:调制信号的幅度大小决定了已调信号的频率。当调制信号的幅度改变时,已调信号的频率也会随之改变,而且只有频率会改变,幅度是保持不变的。

这里对FM调制的理论部分不过多讲述,有兴趣的可以自行上网查阅。

三、FM调制的FPGA实现

一个完整的FM调制系统主要分为以下几个部分:

  • AD模块
  • FM调制模块
  • DA模块

其中,AD模块将模拟调制信号转换成数字调制信号。调制信号可以通过信号发生器产生。在本工程中,将在FPGA内部通过DDS产生一个正弦信号来模拟AD采样数据。FM调制模块的功能就是将调制信号变成FM已调信号。已调信号通过DA模块变成模拟信号后就可以通过天线发送出去。

3.1. 产生调制信号

调制信号是用DDS产生正弦信号来模拟实现的。DDS的实现需要用到ROM IP核,在配置ROM IP核之前需要用Matlab生成IP核所需要的.coe文件。

  1. 生成.coe配置文件

Matlab代码部分参考本人之前的博客:
AM调制的FPGA实现

其中只需要把位宽(改成12)和文件生成路径作相应修改即可。

  1. 调用一个单口ROM IP核

关于IP核的配置如下

评论 24
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值