FPGA实现半加器
半加器
加法器是数字电路中经常用到的一种基本器件,主要用于两个数或者多个数的加和,加法器又分半加器和全加器。
半加器电路是指对两个输入数据位相加,输出一个结果位和进位,没有进位输入的加法器电路。是实现两个一位二进制的加法运算电路。
结构框图
真值表
时序图
代码实现
module harf_add(
input in1,
input in2,
output sum,
output count
);
assign {count,sum} = in1 + in2;
endmodule
RTL视图
仿真代码
module harf_add_tb(
);
reg in1;
reg in2;
wire sum;
wire count;
parameter CLK_PERO = 20;
initial begin
in1 <= 0;
in2 <= 0;
end
always #(CLK_PERO / 2) in1 <= {$random} % 2;
always #(CLK_PERO / 2) in2 <= {$random} % 2;
harf_add u_harf_add(
.in1 (in1 ),
.in2 (in2 ),
.sum (sum ),
.count (count)
);
initial begin
$timeformat(-9,0,"ns",6);
$monitor("@time %t:in1=%b in2=%b sum=%b count=%b",$time,in1,in2,sum,count);
end
endmodule
仿真波形