大家看一下这个案件消除抖动的原理,我有点不明白

[复制链接]
2546|1
 楼主| 52228254 发表于 2010-11-30 22:53 | 显示全部楼层 |阅读模式
edge, POS, se, os, ge
assign key_out = key_reg;
always@( posedge clk )
if( key_in == 1'b0 )
count_low <= count_low + 1;
else
count_low <= 23'h 00_0000;

always@( posedge clk )
if( key_in == 1'b1 )
count_high <= count_high +1;
else
count_high <= 23'h 00_0000;
// deJitter key out
always@( posedge clk )
begin
if( count_high == 23'h 25_0000 )
  key_reg <= 1'b1;
else
  if( count_low == 23'h 25_0000 )
   key_reg <= 1'b0;
  else
   key_reg <= key_reg;
end
大家看一下这个案件消除抖动的原理,我有点不明白
麻烦高手给讲解一下
 楼主| 52228254 发表于 2010-11-30 23:24 | 显示全部楼层
我自问自答吧,我想了想明白了,clk是20ns的,就是说我按下的瞬间每个clk,count——low/high都在计数,完全有可能达到那么大,偶也~
您需要登录后才可以回帖 登录 | 注册

本版积分规则

46

主题

120

帖子

9

粉丝
快速回复 在线客服 返回列表 返回顶部