FPGA|CPLD|ASIC论坛
直播中

胡秋阳

13年用户 5435经验值
私信 关注
[经验]

测相位差-输入频率范围100HZ-100KHZ,相差0-90度

参数设计:采用50MHz晶振的FPGA实验板搭建。分两档测量,150MHZ档位测试4KHZ-100KHz频率之间信号;3MHZ档位测试100HZ-4KHZ之间信号。计数器采用16位。
思路一:构造两个计数器,一个测信号周期,另一个测相差周期。
一、输入10KHz正弦波,经过RC移相网络后有大约36度相移。需要用FPGA测相差。
代码如下
ContractedBlock.gif View Code
RTL级视图
2011080416564166.jpg
RTL仿真波形
2011080416570761.jpg
思路二:构造一个计数器,根据控制信号分别读取信号周期和相差。
模块构造分析:
1、PLL模块。提供150MHz时钟。
2、频率档位选择模块。通过Sel信号为计数器选择150M或3M时钟信号。150MHZ信号通过分频后添加测试引脚。
3、定制16位计数器,具有高电平清零端aclr。
4、触发信号。将两路信号相与产生脉冲信号,通过D触发器后输出给模块6。
5、极性判断信号。判断信号2是超前信号1还是滞后。
6、计数器控制模块。通过模块4脉冲信号控制计数器清零和计数值读取。
7、数据输出模块。将计数器的值送到外围引脚。

回帖(1)

胡鹏飞

2013-8-2 19:40:23
这个我也正在做
举报

更多回帖

发帖
×
20
完善资料,
赚取积分