双混频时差(DMTD)原理的仿真

1. 输入:两个有相位噪声的10MHz正弦信号。

2. 输出:互方差(Cross-Variance)和互频谱(Cross-Spectrum)

3. 信号处理过程:

如图1所示,输入信号经功分器(Splitter)分成两路,分别经ADC模数转换器输出到数字下变频器DDC,DDC内的数控振荡器NCO产生10MHz正弦和余弦信号将输入信号下变频为同相(I)和正交(Q)两个拍频信号,经过抽取和滤波输出到鉴相器(Phase Detection),做反正切运算得到相位信号。一个32MHz晶振给所有的ADC和DDC中的NCO提供采样频率。

输入信号A和B是两路同频率但相噪不同的信号,即有一路信号需加噪声仿真。输入信号A的一路相位信号与输入信号B的一路相位信号相减得到AB两信号的相位差信号,输入信号A的另一路相位信号与输入信号B的另一路相位信号相减也得到AB两信号的相位差信号。再分别对两个相位差信号做两个运算就得到最终结果,即互相关和互频谱运算。

 

正弦输入:

首先通过MATLAB,产生带相噪的正弦信号,然后在FPGA中进行调用输出。

仿真结果如下所示:

 

功分器(Splitter)及DDC,仿真效果如下所示:

 

Tan计算相位:

    一般情况,计算tanh我们使用cordic算法实现:

带相位噪声仿真效果如下所示:

 

最后我们要得到的图,先声明一下俩个注意点,论文中的时间单位是s,也就是那个图其仿真了10^5s,一天也就是8万多秒吧,所以我们在这里不可能仿真那么久时间,这里我们仿真单位用ms表示的,

然后,在FPGA中,是没法显示这种波形效果的,只能将最后的相位导入到MATLAB,然后用MATLAB来显示。

仿真之后,我们将dat1.txt和dat2.txt两个数据复制到我们所提供的另外一个MATLAB文件夹中,然后运行MATLAB,最后得到的仿真结果如下所示:

 

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

fpga和matlab

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

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

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

打赏作者

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

抵扣说明:

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

余额充值