a_biao 发表于 2012-9-8 17:03:18

verilog语句中“|”和“&”的含义?

最近看到IP核中用到的一些语句不知道什么意思,也不知道该在哪里去查找语法含义,下面语句中用到的“|”和“&”,请用到过的前辈指点哈!谢谢!
reg bank_hit;
reg two_t_enable_r;
bank_conflict_r <= (~(|bank_hit));//“|”在这表示什么意思?
assign conflict_detect = (MULTI_BANK_EN) ?
                           ((|(row_conflict_r & bank_hit_r))////“|”在这表示什么意思?
                            | bank_conflict_r) & af_valid_r2 :
                           row_conflict_r & af_valid_r2;

if(&two_t_enable_r)//"&"表示什么意思?

sky5566 发表于 2012-9-8 17:23:36

亂翻書都有

"|" OR
"&" AND

xyz543 发表于 2012-9-8 21:33:38

与 C 语言无异, [ | ] 是 OR, [ & ] 是 AND{:smile:}

useisbb 发表于 2012-9-8 21:35:21

还真没见过

pular0820 发表于 2012-9-8 21:55:12

还真没见过,翻了些资料,也没有找到这种用法

ifuleu 发表于 2012-9-8 23:01:55

这个没见过,“I”“or”都不是单目操作符,怎么能这么用

a_biao 发表于 2012-9-10 18:52:05

sky5566 发表于 2012-9-8 17:23 static/image/common/back.gif
亂翻書都有

"|" OR


您看到有用到单个变量前面的嘛?

lcofjp 发表于 2012-9-10 19:48:14

据说是把这个变量的所有位进行与或者或操作,我记不清了。

a_biao 发表于 2012-9-12 16:04:00

lcofjp 发表于 2012-9-10 19:48 static/image/common/back.gif
据说是把这个变量的所有位进行与或者或操作,我记不清了。

谢谢!你说的是正确的,我已经查到了,是多位运算并成一位的

电子小生 发表于 2012-9-12 19:39:44

一元约简运算符,具体工作过程是:先将操作数的第1位与第2位进行与、或、非运算;然后将运算结果与第3位进行与、或非运算,依次类推,直到最后一位。

study_yu 发表于 2012-9-13 07:24:45

按位与、或

ieee911 发表于 2012-9-13 08:03:40

&, |如果作为双目操作符表是,按位与,按位或,例如
a=3'b110;
b=3'b010;

那么,按位与的结果为:a&b = 3'b010;,按位或的结果为:a|b=3'b110;

这是最常用的方式,

如果用做单目操作符,就是只有一个操作数,如楼主所示的情况

叫做缩减操作符,分别称为缩减与,缩减或,当然还有缩减异或,缩减同或等
&a=1'b0;//等价于&a)&a,缩减与
|a=1'b1; //等价于(a|a)|a,缩减或

usingavr 发表于 2012-9-13 08:37:08

还真没这样用过,学习了
页: [1]
查看完整版本: verilog语句中“|”和“&”的含义?