# 基于FPGA的等精度频率计设计调试（带源码）

cnt2/(clk_sys) =time_gate 式2

clk_c0=cnt1*clk_sys/cnt2; 式3

module test ( input clk_sys,//系统时钟50M
input rst_n,  //系统复位
output reg[31:0]freq  //输出频率
);
//reg
reg gate;
reg gate_clk_c0_1;
reg gate_clk_c0_2;
reg gate_clk_sys_1;
reg gate_clk_sys_2;
reg [10:0]gate_cnt;
reg [10:0]cnt1;
reg [13:0]cnt2;
//wire
wire nege_clk_sys_gate;
wire nege_clk_c0_gate;
wire clk_c0;
pll_10M  pll_10M(
.inclk0(clk_sys),
.clk_c0(clk_c0)
);
//门控时钟计数，计数周期1020，门控前后个10个clk_c0时钟周期低电平
always@(posedge clk_c0 or negedge rst_n)begin
if(!rst_n)
gate_cnt<=0;
else if(gate_cnt==1019)
gate_cnt<=0;
else
gate_cnt<=gate_cnt+1'b1;
end
//门控高低电平设计，以被测时钟clk_c0为基准
always@(posedge clk_c0 or negedge rst_n)begin
if(!rst_n)
gate<=0;
else if(gate_cnt<10)
gate<=0;
else if(gate_cnt>1009)
gate<=0;
else
gate<=1;
end
//在clk_c0域打拍，寻找下降沿
always@(posedge clk_c0 or negedge rst_n)begin
if(!rst_n)
begin
gate_clk_c0_1<=0;
gate_clk_c0_2<=0;
end
else
begin
gate_clk_c0_1<=gate;
gate_clk_c0_2<=gate_clk_c0_1;
end
end
assign nege_clk_c0_gate=gate_clk_c0_2 &(!gate_clk_c0_1);
//在clk_sys域打拍，异步转同步，寻找下降沿
always@(posedge clk_sys or negedge rst_n)begin
if(!rst_n)
begin
gate_clk_sys_1<=0;
gate_clk_sys_2<=0;
end
else
begin
gate_clk_sys_1<=gate;
gate_clk_sys_2<=gate_clk_sys_1;
end
end
assign nege_clk_sys_gate=gate_clk_sys_2 &(!gate_clk_sys_1);
//对被测时钟clk_c0计数cnt1
always@(posedge clk_c0 or negedge rst_n)begin
if(!rst_n)
begin
cnt1<=0;
end
else if(gate)
cnt1<=cnt1+1'b1;
else if(nege_clk_c0_gate)
cnt1<=0;
end
//对系统基准时钟clk_sys计数cnt2
always@(posedge clk_sys or negedge rst_n)begin
if(!rst_n)
begin
cnt2<=0;
end
else if(gate_clk_sys_2)
cnt2<=cnt2+1'b1;
else if(nege_clk_sys_gate)
cnt2<=0;
end
//计算被测信号频率
always@(posedge clk_sys or negedge rst_n)begin
if(!rst_n)
freq<=32’d0;
else if(gate_clk_sys_2==0)
freq<=(cnt1*50000000)/cnt2;
end
endmodule



100050000000在计算机中存储位数为35bit,而程序编写时设为32bit

Freq<=50,000,000/cnt2
cnt1;

1010 0100 0011 1011 0111 0100 0000 0000

02-26 1589

09-29 1万+

#### 等精度测频法以及Verilog实现

©️2020 CSDN 皮肤主题: 大白 设计师: CSDN官方博客

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