verilog代码:将一跟控制线与一个多位的输入端相与
本帖最后由 fpgaw 于 2010-6-28 01:06 编辑将一跟控制线与一个多位的输入端相与,有下面这段代码:<br>
module u(a,en,b);<br>
input a;<br>
input en;<br>
output b;<br>
<br>
assign b=a&en;<br>
assign b=a&en;<br>
assign b=a&en;<br>
assign b=a&en;<br>
endmodule<br>
<br>
但是这样每位都写出来好麻烦哦,可以写成:assign b=a&en;吗?<br>
还有其它写法吗? 其结果是等效于b=a&en;<br>
那到底该怎样写才行呢? always @(a)<br>
if (en) b <=#TP a; 是什么意思啊? a有变化就看en是不是1,是的话a给b assign b=a&{en,en,en,en}; 学习学习~~~~~~~~~ assign b = en ? a : 4'b0000; assign b = a & {4(en)}; 逻辑上相同,但是综合结果可能不一样。<br>
原来的综合成与门,这样综合出来就是MUX了
页:
[1]
2