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

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

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
12
返回列表 发新帖
楼主: 乐烁橙

[求助] 谁能帮我看看这个计数器的逻辑如何控制?

[复制链接]
发表于 2012-4-4 00:14:55 | 显示全部楼层
本帖最后由 higoogle 于 2012-4-4 00:35 编辑

你这个输出是不是循环输出的? 还是每次来一个bfw高电平就仅仅输出一次ctr高? 如果仅仅输出一次,代码如下:
reg   [3:0]  cnt  ;
reg            ctr   ;  


always @( posedge clk or negedge rst )  begin
    if( !rst )
        cnt <= 4'b0000    ;
    else if( bfw )
        cnt <= 4'b0100    ;       //  这个数值开始计数,cnt最高位就是要输出的控制信号
    else if( cnt == 4'b0000 )   
        cnt <= cnt           ;        
    else
        cnt <= cnt + 4'b1 ;
end

always @( posedge clk ) begin
  if( !rst )
      ctr <= 0 ;
  else
      ctr <= cnt[3] ;   

// 等同    ctr <= cnt[3]  &&  rst  ;
end





//  -----   不需要rst信号更简单  -----


reg    [3:0]   cnt  ;
wire             ctr   ;  




always @( posedge clk or negedge rst )  begin
    if( bfw )
        cnt <= 4'b0011    ;          //  这种写法,数值就要提前一个  
    else if( cnt == 4'b0000 )   
        cnt <= cnt           ;       //  这两行删了吧
    else
        cnt <= cnt + 4'b1 ;
end

assign  ctr  =  cnt[3]  ;   

发表于 2012-4-4 15:57:49 | 显示全部楼层
学习一下!!!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

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

X

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

GMT+8, 2025-6-3 10:26 , Processed in 0.016695 second(s), 7 queries , Gzip On, MemCached On.

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