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

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

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

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

[讨论] Verilog的赋值有什么用处,见下图

[复制链接]
发表于 2019-11-26 15:04:42 | 显示全部楼层 |阅读模式

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

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

x
在下面代码中,我觉得add_cnt完全多余啊,为什么不直接用hsync,非要加一个赋值语句用add_cnt来代替hsync,请路过的大神指点迷津
always @(posedge pclk or negedge rst_n)begin
    if(!rst_n)begin
        cnt <= 0;
    end
    else if(add_cnt)begin
        if(end_cnt)
            cnt <= 0;
        else
            cnt <= cnt + 1;
    end
end
assign  add_cnt     =       hsync;      
assign  end_cnt     =       add_cnt && cnt == 3-1;  

发表于 2019-11-26 15:37:45 | 显示全部楼层
我觉得是出于代码易读性和可维护性考虑。
add_cnt表示计数条件;end_cnt表示计满清零条件。
如果后面计数条件变化了,只需要以下语句:
assign add_cnt = hsync;
计数部分代码不用修改。
 楼主| 发表于 2019-11-26 16:08:15 | 显示全部楼层


jankong 发表于 2019-11-26 15:37
我觉得是出于代码易读性和可维护性考虑。
add_cnt表示计数条件;end_cnt表示计满清零条件。
如果后面计数条 ...


谢谢您的指导,我觉得您说的有道理,源代码确实是需要根据实际情况再修改的
发表于 2020-5-14 10:44:43 | 显示全部楼层
这代码最后一句可读性也太差了,后面几个条件混在一起,什么也看不出来
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

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


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

GMT+8, 2024-12-22 13:10 , Processed in 0.016218 second(s), 7 queries , Gzip On, Redis On.

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