- module MUT4B(R,A,B);
- parameter S=4;
- input[S:1] A,B;
- output[2*S:1] R;
- reg[2*S:1] R,AT;
- reg[S:1] BT,CT;
- always @(A,B)
- begin
- R=0;AT={{S{1'B0}},A};
- BT=B;CT=S;
- for(CT=S;CT>0;CT=CT-1)
- begin
- if(BT[1]) R=R+AT;
- AT=AT<<1;BT=BT>>1;
- end
- end
- endmodule
这个程序里面有一句话不知道怎么理解,就是AT={{S(1'B0)},A};这是关于4位乘法器的程序,希望有懂的朋友给我讲解下,最好能举个例子,这样理解的更好一些.谢谢大家啦.
|