锁相环技术及FPGA实现

本文参考《锁相环技术原理及FPGA实现》杜勇这本书

  1. 1.锁相环综述

锁相环一般分为三部分,鉴相器、环路滤波器和电压振荡器。其中环路滤波器是决定锁相环的性能的重要器件,设计比较复杂,所以先搞明白鉴相器和电压振荡器,再说环路滤波器,整体来看。

  1. 1.2一阶环简化

由鉴相器和电压振荡器可以组成一阶环路。鉴相器由混频器和低通滤波器组成,主要使用的是鉴相器成线性这一段函数,给到锁相环一个增益Kd。

电压振荡器是一个积分器的作用,在我们数字系统中更常知道的是NCO,数字振荡器,一个简单的数字振荡器的实现是查表法,把所有的值放在一个table里面,相应高级一些的是Cordic算法。

NCO输出的值是按照比例分散在[-pi,pi]或者说[0,2*pi]这个周期中,比如说一个NCO的位数是8位,我的频率控制字是M位,那形成的频率是f=2^M*fclk/2^8,在整个区间进行映射。

以鉴相器和NCO组成的一阶锁相环,我们可以推导出稳态相位误差:

1.3环路滤波器

最简单的环路滤波器-RC滤波器

RC低通滤波器的频率特性

RC低通滤波器会产生超前的相位,降低相位裕度,不利于环路的稳定,所以考虑无源比例积分滤波器和有源比例积分滤波器。

无源比例积分滤波器的稳态相位误差不太好

之后考虑有源比例积分滤波器,

做有源比例积分滤波器的仿真:

带宽宽[200 600]

带宽[350 600]

带宽[500 600]

参考文献:最终代码有参考南京大学的一位大佬,但是我找不到他博客地址了,如果看到在此感谢

相关推荐
ZYNQRFSOC1 天前
基于XCKU5P纯逻辑 NVME测试
fpga开发
FPGA小迷弟1 天前
使用FPGA开发高速AD/DA芯片的接口学习
fpga开发
stars-he1 天前
FPGA学习笔记(6)逻辑设计小结与以太网发送前置
笔记·学习·fpga开发
燎原星火*1 天前
FPGA 逻辑级数
fpga开发
175063319452 天前
Vivado Zynq7020 生成正弦波(查表法) + 行为级仿真
fpga开发
Terasic友晶科技2 天前
4-DE10-Nano的HDMI方块移动案例——I2C通信协议
fpga开发·i2c·hdmi·de10-nano·i2c通信协议
云雾J视界2 天前
FPGA在AI时代的角色重塑:硬件可重构性与异构计算的完美结合
fpga开发·边缘计算·gpu·vitis·ai推理·azure云·异构编程
s09071363 天前
FPGA中CIC设计注意事项
算法·fpga开发·cic滤波器
Aaron15883 天前
RFSOC+VU13P在无线信道模拟中的技术应用分析
数据结构·人工智能·算法·fpga开发·硬件架构·硬件工程·射频工程
碎碎思3 天前
BerkeleyLab Bedrock:为 FPGA 与加速计算打造的开源基石
fpga开发·开源