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

 找回密码
 注册

手机号码,快捷登录

手机号码,快捷登录

搜帖子
楼主: 呱呱年

[求助] 问个语法verilog问题哦

[复制链接]
发表于 2019-11-25 15:58:06 | 显示全部楼层


   
glace12123 发表于 2019-11-11 18:00
楼上那么多抠语法的,也不问清楚情况,这里分种情况:
1、2个if里操作同一个寄存器,第一,不推荐这种写法 ...


说的对。
发表于 2019-11-25 23:07:27 | 显示全部楼层
always @(posedge clk or negedge rst_n) begin
        if (!rst_n) begin
            A <= xxxx;
        end else begin
            if (condition1 == xxx) begin
                A <= yyy;
            end
        end
end

always @(posedge clk or negedge rst_n) begin
        if (!rst_n) begin
            B <= xxxx;
        end else begin
            if (condition2 == xxx) begin
                B <= yyy;
            end
        end
end
发表于 2019-11-28 14:09:18 | 显示全部楼层
刚好这几天遇到有这种写法的,同样也是不推荐这种做法
发表于 2019-11-28 19:52:04 | 显示全部楼层


   
glace12123 发表于 2019-11-11 18:00
楼上那么多抠语法的,也不问清楚情况,这里分种情况:
1、2个if里操作同一个寄存器,第一,不推荐这种写法 ...


的确是分两种情况,一般的编码规范要求/强烈建议操作不同的寄存器,放到不同的always块里面。其次,如果是操作同一个寄存器,第一个if会被综合器优化掉,可以去看看网表就知道了。
发表于 2020-5-14 10:15:26 | 显示全部楼层
如果你的代码都是这种风格的,那么验证人员会抓狂的;
发表于 2020-7-12 04:11:43 | 显示全部楼层
very good
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-5-26 06:18 , Processed in 0.044158 second(s), 6 queries , Gzip On, Redis On.

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