欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 科技 > 名人名企 > fpga系列 HDL:verilog 常见错误与注意事项 位宽不匹配+case 语句中没有覆盖所有情况

fpga系列 HDL:verilog 常见错误与注意事项 位宽不匹配+case 语句中没有覆盖所有情况

2025/4/16 10:42:28 来源:https://blog.csdn.net/ResumeProject/article/details/144788966  浏览:    关键词:fpga系列 HDL:verilog 常见错误与注意事项 位宽不匹配+case 语句中没有覆盖所有情况

位宽不匹配问题

  • 信号或操作数的位宽不匹配,可能导致仿真或综合错误。
module top (input wire [3:0] a,output wire [7:0] b
);assign b = a; 
endmodule

在这里插入图片描述

case 语句中没有覆盖所有情况

module top (input wire [1:0] sel,input wire [7:0] a,input wire [7:0] b,input wire [7:0] c,output reg [7:0] y
);always @(*) begincase (sel)2'b00: y = a;2'b01: y = b;// 缺少默认分支,未定义的 sel 值会导致 y 的值不确定(可能为高阻态或保持旧值)。// 默认分支:覆盖所有未定义的情况	default: y = c; endcaseend
endmodule
  • case 语句中没有覆盖所有情况,如下图综合工具可能会推断出锁存器(Latch),以保持 y 的旧值,导致设计行为不符合预期。

在这里插入图片描述

  • 使用default:
    在这里插入图片描述

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

热搜词