在线咨询
eetop公众号 创芯大讲堂 创芯人才网
切换到宽版

EETOP 创芯网论坛 (原名:电子顶级开发网)

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
查看: 2285|回复: 3

[求助] 怎样比较两个时钟频率

[复制链接]
发表于 2012-2-16 21:57:09 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?注册

x
如题,想比较两个时钟频率(二者相差不大,而且和标准时钟也很相近)。

我考虑对时钟在一段时间计数并最终保持这个数据,写了如下代码,请问问题在哪?
always@(negedge cnt_rst or posedge ro_out)
   begin
     if(!cnt_rst)
       begin
         ro_numb <= 8'h0;
         flag<=0;
       end
     else
       if(ro_numb==8'h77)
          flag<=1;
       else
          ro_numb <= ro_numb+1;
   end
always@(negedge cnt_rst or posedge clk_std)
   begin
      if(!cnt_rst)
         cnt_numb<=0;
      else
        if(flag==0)         
           cnt_numb<=cnt_numb+1;
        else ;
  end
发表于 2012-2-17 08:29:04 | 显示全部楼层
是想当flag==1时,比较cnt_numb与ro_numb的值吗?
若是,应该把 if(ro_numb==8'h77)改成 if(ro_numb>8'h77)
而且要确保两个计数器的值都没有发生溢出
发表于 2012-2-17 09:19:31 | 显示全部楼层
可以将这两个时钟分频到很低的频率后,例如1KHz,再用同一个时钟对其高电平计数,比较即可得。
 楼主| 发表于 2012-2-18 18:03:19 | 显示全部楼层
回复 2# qlengyu


    是的,谢谢。两个always block中的时钟信号不同,那么是不是要考虑跨时钟域的异步复位问题啊,不是很懂这个?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐 上一条 /1 下一条

X

小黑屋| 手机版| 关于我们| 联系我们| 隐私声明| EETOP 创芯网
( 京ICP备:10050787号 京公网安备:11010502037710 )

GMT+8, 2025-6-8 22:43 , Processed in 0.027074 second(s), 9 queries , Gzip On, MemCached On.

eetop公众号 创芯大讲堂 创芯人才网
快速回复 返回顶部 返回列表