Verilog
平凡的世界_
润叶姐
展开
-
verilog的“==”与“===”
以下内容对于System Verilog也是适用的。verilog中有两种类型的等式运算符:logical equality/inequality和case equality/inequality首先上述表格中四种等式运算符具有相同的优先级,四种运算符会将两个操作数做逐位比较,如果两个操作数的位宽不一致,那么位宽较小的操作数高位补0,然后再进行比较对于logical equality和logical inequality运算符(“==”和“!=”),如果操作数中出现x态位或z态位(高阻.原创 2021-03-14 10:40:35 · 17129 阅读 · 3 评论 -
verilog中assign和always@(*)的区别和易忽略的点
今天在做IC的模块验证时,发现某个模块的输出信号为x态,一般遇到x态首先思考以下几种情况:变量未进行初始化 多个相同驱动强度的信号同时驱动1和0 代码中直接赋值的x态 如果是PAD电路上的X态,则另外考虑两个同类型的输入方向的PAD连接在一起,并且其中一个PAD为上拉,一个PAD为下拉但这个模块中既没有发现同时驱动1和0,也没有在代码中直接赋值x态,产生x态值的信号是在always(*)中赋值,赋值语句类似如下:module test;reg tmp0;reg tmp1;wire原创 2021-03-13 22:56:34 · 8400 阅读 · 3 评论