作者peterstun (彼得)
看板Electronics
标题[问题] verilog
时间Wed Jan 9 20:13:53 2008
a*data
a 为0或1 data为8bit ex: 0100 1011
想要 0*data=0
1*data=data
在verilog中 这是要用乘法器吗
用asaign out= a*data好像得不到我要的结果
请问我怎麽做 谢谢
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 163.22.18.90
1F:推 DinoZavolta:1-bit乘其实就是AND而已,把data的每个bit跟a作AND运算 01/09 20:28
2F:→ DinoZavolta:i.e., assign out[i] = a & data[i]; i= 0,1,2,...,7 01/09 20:30
3F:→ SILee:assign out = (a)? data : 8'h00; 01/09 21:11
4F:→ SILee:或是用Dino大的作法area更小 不过code会比较难看XD 01/09 21:13
5F:推 Jkson:assign out = a & data ; 不就好了吗? 01/09 22:21
6F:→ Aragom:assign out = {8{a}} & data; 01/09 22:27