文章目录
一、1位二进制数全加器
(1)创建项目
点击file,newproject wizard,然后按图进行相应配置。
按上述配置创建好项目后,点击file->new->按下图选择
(2) 半加器原理图
仿真结果
(2)全加器原理图
仿真结果
(3)Verilog实现一位全加器
代码如下:
这里需要注意module名字跟文件名字一样。
module full_add(
//输入信号,ain表示被加数,bin表示加数,cin表示低位向高位的进位
input ain,bin,cin,
//输出信号,cout表示向高位的进位,sum表示本位的相加和
output reg cout,sum
);
reg s1,s2,s3;
always @(ain or bin or cin) begin
sum=(ain^bin)^cin;//本位和输出表达式
s1=ain&cin;
s2=bin&cin;
s3=ain&bin;
cout=(s1|s2)|s3;//高位进位输出表达式
end
endmodule
编译后可查看RTL图
仿真结果
(4)上板结果
二、4位全加器
(1)原理图实现
其中元件为一位全加器,需要把之前的一位全加器保存为元件。
RTL图
仿真结果
(2)Verilog实现
代码如下:
module four_adder(
input[3:0] a,b,
input cin,
output[3:0] sum,
output cout
);
assign{cout,sum} = a+b+cin;
endmodule
RTL图
仿真结果
三、总结
本次实验,分别使用原理图方式和verilog编程方式实现了一位全加器和四位全加器,同时实际上手了FPGA开发板,学习了引脚配置的方法和烧录的方法。