Verilog语法——按位取反“~“和位宽扩展的优先级

前言

先说结论,如下图所示,在Verilog中"~ "按位取反的优先级是最高的,但是在等式计算时,有时候会遇到位宽扩展,此时需要注意的是位宽扩展的优先级高于"~"。

验证

仿真代码,下面代码验证的是"~"按位取反和符号扩展的优先级。

verilog 复制代码
module tb();
    reg [7:0] a;
    reg b;
    wire [7:0] b1;
    wire [7:0] b2;
    wire [7:0] b3;
    
    initial begin
        a=0;b=0;
        repeat(10)begin
            #10
            a={$random}%256;
            b={$random}%2;
        end
    end
    assign b1=a+~b;
    assign b2=a+~{7'b0,b};
    assign b3=a+{~b};
endmodule

仿真结果

如上所示,b1=a+ ~ b相当于b2=a+ ~ {7'b0,b}$,但是实际应该是按照逻辑b3=a+{~ b}或者是b2=a+{ 7'b0,~ b }逻辑才对。

相关推荐
诚实可靠小郎君95276 小时前
FPGA IO延迟的约束与脚本
fpga开发·fpga·数字电路
GGGLF20 小时前
FPGA-UART串口接收模块的理解
fpga开发
北京太速科技股份有限公司1 天前
太速科技-495-定制化仪器户外便携式手提触摸一体机
fpga开发
9527华安1 天前
FPGA实现PCIE图片采集转HDMI输出,基于XDMA中断架构,提供3套工程源码和技术支持
fpga开发·pcie·xdma·hdmi
水饺编程1 天前
简易CPU设计入门:取指令(三),ip_buf与rd_en的非阻塞赋值
fpga开发
楠了个难2 天前
SPI通信——FPGA学习笔记14
笔记·学习·fpga开发
IM_DALLA2 天前
【Verilog学习日常】—牛客网刷题—Verilog企业真题—VL72、VL73
学习·fpga开发·verilog学习
辣个蓝人QEX2 天前
【FPGA开发】Xilinx FPGA差分输入时钟的使用方法
fpga开发·fpga·xilinx原语
芯冰乐2 天前
Library介绍(三)
后端·fpga开发
IM_DALLA3 天前
【Verilog学习日常】—牛客网刷题—Verilog企业真题—VL65
学习·fpga开发·verilog学习