查看: 137|回复: 0

[经验] 每日一练6.30#基于FPGA的AM信号的调制与解调

[复制链接]

主题

好友

1301

积分

管理员

该用户从未签到

发表于 2020-6-30 10:58:20 |显示全部楼层
  为鼓励大家动手动脑,早日成为技术大牛。电路城论坛现在推出#每日一练#栏目,由版块版主出题及提供答案,内容涉及电源,射频,单片机等各种技术话题。我们会在周一至周五的早上10:30更新问题和前天问题的解题思路及答案。欢迎大家参与。

本期内容来源于:



       Casper.T,电子与通信工程专业,在读硕士,对模拟通信,智能电子设计以及FPGA图像处理和加速器有丰富的设计经验。现主要从事电子信息技术运营方面的工作。




  1.  AM信号:(A+ma*cos(w0t))*cos(wct)
   首先要产生两个频率不同的余弦波cos(w0t),cos(wct)。可调用系统自带的DDS IP核来实现,这也是最简单的方法。
    产生两个余弦波后,再来两个乘法器、一个加法器(后面程序直接用的“+”号,没有用加法器ip 核),运算一把不就搞定了吗。

    2.AM信号生成中的注意点(这个有点绕)
    首先看一下调制深度的问题。调制深度通常为已调波的最大振幅与最小振幅之差对载波最大振幅与最小振幅之和的比。就是生成AM波包络的最大值与最小值之差除以最大值与最小值之和。包络其实就是(A+ma*cos(w0t))。它的最大值是A+ma,最小值是A-ma。最后可以算出调制深度就是ma/A。A为1时,调制深度就是ma,其实只要A的值和后面的余弦波的最大值是相同的,调制深度就会为ma,为0~1之间。
    但是有一个重要的问题不要忘了,就是在硬件描述语言中表示小数并不像C语言那么简单直接(其实所谓的小数只是我们对每个字节中的0和1的解释方式不同而已,在硬件描述语言中,我们会很自然的会把0和1两种状态直接转换为十进制,比如8'b0000_0011,我们会很自然的把它看做3,那么这样的话,硬件描述语言中是没有小数的)。我们上面生成的余弦信号cos(w0t)并不是在0~1范围内。假如我们让DDS的输出位宽为8位,那么这个余弦信号的幅度大小-128~127。我们就当做是-127~127,那么这里先假设A为127。再来再算一下调制深度。这时包络最大值为127+ma*127,最小值为127-ma*127。最后调制深度还会是ma,这个ma的范围还是0~1。ma是从0~1之间变的话,还是有不能直接表示小数这个问题。有两种解决方法:
    1.让A=1270,也就是包络最大值为1270+ma*127,最小值1270+ma*127。算出调制深度最后应该为ma/10的。这时便可以设定ma为1~10来改变调制深度了。
    2.下面的程序是用的是以下这种方法。比如说(127*256)>>8(要知道右移一位相等于除2,右移8位的话等于除以256),就相当于127*1。而(127*128)>>8就相当于127*0.5=63。也就是这样产生我们的小数ma的,通过设定一个8位的变量depth_con乘以127,然后将得到的结果右移8位,那么我们就可以通过depth_con来控制调制深度depth了。他们的关系也就是depth=depth_con/256。当然这些推理是在保持A=127的情况下进行的,也就是AM信号包络为127+(depth_con*COS)>>8。(COS是DDS产生的8位信号)
    前面的127+(depth_con*COS)>>8得到后,再经过乘法器乘以8位的载波就行了,这个乘法器的输出的就是我们要的AM信号了。这里还有一点就是127+(depth_con*COS)>>8的结果的范围是0~256。这时可以将乘法器的一个输入改为8无符号数,正好可以满足0~256的范围。乘以8位的载波信号后,得到的AM波正好是我们要求的那样,输出16位的AM波。(主要就是因为这才选的这种方法)

    3.AM信号的解调

    首先来谈一下解调方法:
    相干解调,就是在AM波的基础上再乘以载波一次,然后经过低通滤波,隔直便可以得到我们要的解调信号。在频域分析也就是乘以载波后有了会产生一个w0的频率分量和几个高频分量,将这几个高频分量滤除便可以得到原始的调制信号。


4.AM信号调制和解调功能要求

具体要求如下:
(1)载波信号频率范围:1M-10MHz,分辨率0.01MHz;
(2)调制信号为单频正弦波信号,频率范围:1kHz-10kHz,分辨率0.01kHz;
(3)调制深度0-1.0,步进0.1,精度优于5%;
(4)调制信号和解调信号位宽为8位,AM信号16位,其他信号位宽自定义。

问:根据上面提到的方法试着将调制解调过程码出来吧?


答:
游客,如果您要查看本帖隐藏内容请回复



参与讨论,即可快速获取以下几本电源书籍(电子版)

想成为论坛版主?想在#每日一练#展现你的技术才华?请联系工程师小助手Q:2740521371或邮箱:yanfen.mo@supplyframe.cncaihong.xiao@supplyframe.cn



回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

关闭

站长推荐上一条 /5 下一条



手机版|电路城

GMT+8, 2020-7-12 04:19 , Processed in 0.072856 second(s), 13 queries , MemCache On.

ICP经营许可证 苏B2-20140176  苏ICP备14012660号-2   苏州灵动帧格网络科技有限公司 版权所有.

苏公网安备 32059002001037号

Powered by Discuz!

返回顶部