噪声调频的设计、仿真与实现:simulink & sysgen

——缘起——

某个项目需要用到FPGA内部实现噪声调频信号,且调频带宽可配置。
——2020年9月5日


文章目录

  • ——缘起——
  • 一、理论准备
    • 1. Matlab帮助comm.FMModulator
    • 2. 文献:郑慧芳,邓云凯.随机噪声调频信号带宽分析[J].科学技术与工程,2009,9(15):4351-4357.
      • ——基本描述
      • ——带宽分析
      • ——论文的仿真频谱
  • 二、仿真&设计:Simulink
    • 1. 噪声源:窄带白噪声
    • 2. FM:128*x Ksps
    • 3. 上采样128倍到工作时钟 16.384*x MHz的速率上
    • 4. 仿真模型
    • 5. 仿真结果
  • 三、实现&验证:System Generator
  • 四、总结


提示:以下是本篇文章正文内容,下面案例可供参考

一、理论准备

FM原理似乎很简单,白噪声生成也很简单,但真动起手来还是从理论开始。

1. Matlab帮助comm.FMModulator

  • Simulink通信系统工具箱的FM Modulator Baseband模块
  • matlab通信系统工具箱的comm.FMModulator
    数字FM算法描述很清楚,如下截个图。
    噪声调频的设计、仿真与实现:simulink & sysgen_第1张图片
    我的仿真验证就使用Simulink的FM Modulator Baseband模块来进行。

2. 文献:郑慧芳,邓云凯.随机噪声调频信号带宽分析[J].科学技术与工程,2009,9(15):4351-4357.

CNKI上随便搜了一篇论文,还挺好,理论和仿真图都有。

——基本描述

噪声调频的设计、仿真与实现:simulink & sysgen_第2张图片

——带宽分析

整理了一下作者的结论,做了一个表。目标是通过简单设置调制指数即可控制输出FM带宽,所以用了窄带白噪声,方差设置为1。
噪声调频的设计、仿真与实现:simulink & sysgen_第3张图片

——论文的仿真频谱

固定噪声方差和调制指数,改变噪声BB带宽,输出FM频谱的图形状,基本符合其理论。
噪声调频的设计、仿真与实现:simulink & sysgen_第4张图片

二、仿真&设计:Simulink

1. 噪声源:窄带白噪声

Band-Limited White Noise模块,x Ksps,上采样128倍到960Ksps上做调制。

上采样分三个阶段的FIR插值实现:8倍 * 8倍 * 3倍,设计如下:
噪声调频的设计、仿真与实现:simulink & sysgen_第5张图片

2. FM:128*x Ksps

照着公式来:噪声用调制指数放大后做积分,乘以2*pi作为相位,相位转化为COS+SIN,即基带的FM调制信号。

3. 上采样128倍到工作时钟 16.384*x MHz的速率上

上采样设计与噪声上采样方案类似。

4. 仿真模型

直接上个图:
噪声调频的设计、仿真与实现:simulink & sysgen_第6张图片

5. 仿真结果

128*x ksps上的频谱:多挡带宽比较
噪声调频的设计、仿真与实现:simulink & sysgen_第7张图片

自搭建FM调制与“FM Modulator Baseband”模块输出一致:说明理解正确。
噪声调频的设计、仿真与实现:simulink & sysgen_第8张图片
上采样到16.384*x MHz上的频谱:比较自建分阶段FIR上采样与“FIR Interpolator”输出,符合预期。
噪声调频的设计、仿真与实现:simulink & sysgen_第9张图片

三、实现&验证:System Generator

方案通过了,照着用Sysgen搭建出来即可:
噪声调频的设计、仿真与实现:simulink & sysgen_第10张图片
在时钟频率上仿真sysgen不太可行(too slow),去掉最后一级的128倍上采样,在128*x Ksps的速率上比较sysgen和simulink的仿真输出:25kHz带宽噪声调频,符合预期。
噪声调频的设计、仿真与实现:simulink & sysgen_第11张图片

四、总结

解决问题的大致步骤:

  1. 分析技术需求,确认掌握所需理论;
  2. 贴合需求,设计方案,仿真验证;
  3. 实现方案,检验结果。

你可能感兴趣的:(FPGA,经验分享,fpga,simulink,matlab)