FPGA组合逻辑电路
半加器
加法器是数字电路中经常用到的一种基本器件,主要用于两个数或者多个数的加和,加法器又分为半加器(half adder)和全加器(full adder)。半加器电路是指对两个输入数据位相加,输出一个结果位和进位,没有进位输入的加法器电路。是实现两个一位二进制数的加法运算电路。
1.编写HDL描述文件
module half_adder
(
input wire in_1 , //加数1
input wire in_2 , //加数2
output wire sum , //两个数的加和
output wire cout //加和后的进位
);
assign {cout, sum} = in_1 + in_2;
endmodule
2.编写测试脚本(testbench)
`timescale 1ns/1ns
module tb_half_adder();
reg in_1;
reg in_2;
wire sum;
wire count;
//初始化输入信号
initial
begin
in_1 <= 1'b0;
in_2 <= 1'b0;
end
//模拟信号in_1和in_2的输入情况
always #10 in_1 <= {$random} % 2;//取模求余数,产生1or0,每隔10ns产生一次
always #10 in_2 <= {$random} % 2;
half_adder half_adder_inst//模块例化
(
.in_1(in_1),
.in_2(in_2),
.sum(sum),
.count(count)
);
endmodule
仿真结果