今天在工程中遇到了单目运算符,一查才知道是verilog基本操作符,又称一元约简运算符。
(一)内容:
与 &
或 |
非 ~
(二)用法:
把操作符放在前面
&a
(三)表示的意义:
首先将操作数a的第一位和第二位进行与计算,将得到的计算结果进行和第三位与计算,依次类推,直到最后一位。
同理,或,非的计算。
工程具体例子:
// 作为一个计数器
always@(posedge clk or negedge rst_n)
if(!rst_n)
cnt<=0;
else if(cnt_stop)
cnt<=0;
else if(din_vld_pdg)
cnt<=13'd1;
else if( | cnt) //在不全为0 的时候开始加1
cnt<=cnt+1'b1;