管道符号“ |”是什么意思 在变量前面


10

我正在分析一些Verilog代码,发现类似

wire z = |a & b;

模拟时,代码的行为就像

wire z = a & b;

所以我想知道|(管道)符号的含义是什么?它对模拟/合成有影响吗?

Answers:


17

这是按位归约运算符|a & b表示您对a(产生一个位)的所有位应用逻辑或,然后对该位和进行逻辑与b|aa为1 时无效。

但是,看到逐位减少应用于单个位值是很普遍的。一种典型的情况是自动生成的代码,其中的实际宽度a可能取决于配置。另一个可能性是这是a曾经有几个位的遗留代码。当a变为单个位值时,此行在技术上仍然正确,因此现在不需要的归约运算符保留下来。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.