assign emif_oen_o = ((nn_mode == 2'b00) & nor_en | (nn_mode == 2'b01) & nand_en);
其中 emif_oen_o , nor_en , nand_en 均为1bit的
我想问的是这局话是啥意思呢~~~
还有就是,emif_oen_o 是1 bit的,而nn_mode 2 bit的,运算后怎么连接呢~~
我是新学verilo,还请各位大哥教教小弟~~
您看我这样理解对么:
如果nn_mode == 2'b00 , 那么 emif_oen_o = nor_en
不是。其实你的式子是想表达下面这个意思,与的优先级比或高。
assign emif_oen_o = (((nn_mode == 2'b00) & nor_en) | ((nn_mode == 2'b01) & nand_en));
所以,如果nn_mode == 2'b00 , 那么 :
emif_oen_o = ((1 & nor_en)|(0 & nand_en));
所以,如果nn_mode == 2'b01 , 那么 :
emif_oen_o = ((0 & nor_en)|(1 & nand_en));
嗯啊,
所以,如果nn_mode == 2'b00 , 那么 :
emif_oen_o = ((1 & nor_en)|(0 & nand_en)) = nor_en
所以,如果nn_mode == 2'b01 , 那么 :
emif_oen_o = ((0 & nor_en)|(1 & nand_en))= nand_en
那个 “0 & 一个数” ,结果不是0么~~,先与最后才或
我这样理解对么~~
第二次回答是,打错了!very good!~