编译器环境:Quartus Il 14.0(64-bit)
仿真环境:Quartus Il 14.0(64-bit)自带的Modelsim.exe
什么是全加器?半加器又是什么?
半加器: 加数、被加数为输入input,和数与进位为输出out;
全加器: 加数、被加数与低位的进位数为输入input,和数与进位为输出out。
四位加法器的仿真实现(仿真环境:Quartus II)
1、四位半加器的实现:
module add4(a,b,sum,cout);
input [3:0] a,b; //a、b 加数、被加数<--输入
output [3:0] sum; //sum和数-->输出变量
output cout; //cout-->输出变量
assign {cout,sum}=a+b; //a+b,再使用拼接运算符,将进位保存至cout,和数保存至sum
endmodule
2、 四位全加器的实现:
module adder_4(a,b,cin,cout,dout);
input [3:0] a,b; //a,b为4位输入
input cin; //cin为进位输入
output cout;
output [3:0] dout;
assign {cout,dout} = a+b+cin; //a+b+cin 加法操作
//使用拼接运算符将cout、dout拼接,dout取结果中的低四位
endmodule
下面是四位全加器的仿真实现(四位半加器,同理):
进行RTL仿真(也即Modelsim仿真)
手动输入修改a、b、c的值。
3、 四位半加法器的实现(与全加器的仿真实现步骤类似)