实验内容:
1.改变乘法器的输入位宽为8比特,编译,波形仿真,观察信号毛刺的时间长度。
2.选一款没有硬件乘法器的FPGA芯片(例如Cyclone EP1C6)对比8比特的乘法器和加法器两者编译之后的资源开销(Logic Cell的数目)
3.编写一个输入和输出都有D触发器的流水线乘法器代码,编译后波形仿真,观察组合逻辑延迟和毛刺的时间,和不带流水线的情况下对比。
第一部分:
1.代码
无符号的乘法器 /
module top(
IN1 ,
IN2 ,
OUT );
input [3:0] IN1, IN2;
output [7:0] OUT;
reg [7:0] OUT;
always@(IN1 or IN2) begin // 生成组合逻辑的always 块
OUT = IN1 * IN2;
end
endmodule
有符号的2补码乘法器 /
module top(
IN1 ,
IN2 ,
OUT );
input signed[3:0] IN1, IN2;
output signed [7:0] OUT;
reg signed[7:0] OUT;
always@(IN1 or IN2) begin // 生成组合逻辑的always 块
OUT = IN1 * IN2;
end
endmodule
2.RTL视图