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 }逻辑才对。

相关推荐
碎碎思7 小时前
升级版流水灯:用FPGA控制上千颗RGB LED
fpga开发
FPGA-ADDA9 小时前
第二篇:Xilinx 7系列FPGA详解——从Spartan到Virtex
fpga开发·fpga·sdr·rfsoc
逐步前行12 小时前
STM32_SysTick_寄存器操作
stm32·嵌入式硬件·fpga开发
良许Linux19 小时前
FPGA的选型和应用
数据库·图像处理·计算机视觉·fpga开发
上班最快乐19 小时前
基于FPGA的APS6404L-3SQR QSPI PSRAM驱动设计(3)
fpga开发
CoderIsArt19 小时前
FPGA实现量子计算机仿真器重要论文
fpga开发·量子计算
上班最快乐21 小时前
基于FPGA的APS6404L-3SQR QSPI PSRAM驱动设计(4)
fpga开发
LCMICRO-133108477462 天前
长芯微LDC64115完全P2P替代AD4115,是一款低功耗、低噪声、24位、Σ-Δ(Σ-Δ)模数转换器(ADC)
stm32·单片机·嵌入式硬件·fpga开发·硬件工程·模数转换器
inquisiter2 天前
plic中断级联设计和使用
fpga开发·riscv
JSMSEMI112 天前
JSM3488E RS‑485/RS‑422 收发器芯片
fpga开发