当前位置: 首页 > >

一位全加器的设计与仿真

发布时间:

若对你有帮助,记得点赞、关注我哦!


计算机组成原理期末复*【超实用】


八位比较器的设计与仿真


四位全加器的设计与仿真


简单运算器的设计与仿真


1/2分频器的设计和仿真


四选一多路选择器的设计与仿真


1. 实验题目


? ? ?? 一位全加器的设计与仿真 ?


2. 实验目的


? ? ? 设计一个一位全加器模型并编写测试程序进行仿真测试。


3. 实验要求


设计模块名称 fulladd,输入端口 a,b,c_in。输出端口 sum,c_out。编写的测试程序要保证测试充分。


利用公式:


??sum?= a?b?c_in


? c_out?=ab?+?(a?b)?c_in


4. 程序代码


VerilogHDL代码:
module full_adder(a,b,c_in,c_out,sum);
input a,b,c_in;
output c_out,sum;
wire sum,c_out;
assign {c_out,sum}=a+b+c_in;
endmodule

Test bench仿真代码:
`timescale 1ns/1ns
module full_adder_tb;
reg a,b,c_in;
wire c_out,sum;
integer i,j;
parameter delay=100;
full_adder U1(a,b,c_in,c_out,sum);
initial
begin
a=0;b=0;c_in=0;
for(i=0;i<2;i=i+1)
for(j=0;j<2;j=j+1)
begin
a=i;b=j;c_in=0;
#delay;
end
for(i=0;i<2;i=i+1)
for(j=0;j<2;j=j+1)
begin
a=i;b=j;c_in=1;
#delay;
end
end
endmodule

5. 运行结果



? ? ?? 全加器包含两个半加器和一个或门,半加器的端口a和b分别是两位相加的二进制输入信号,C是进位输出信号,构成的全加器中,A、B、C分别是该一位全加器的三个二进制输入端,Ci是进位端,Si是相加和输出信号的和,下面是波形图所对应的真值表:


信号输入端信号输出端
AiBiCiSiCi
00000
00110
01010
01101
10010
10101
11001
11111

?



友情链接: