软件:Quartus
语言:Verilog
代码功能:
11位全加器设计
代码功能:
先设计1位全加器、2位全加器、8位全加器
然后将上述3个全加器串联,组成11位加法器
FPGA代码Verilog/VHDL代码资源下载:www.hdlcode.com
演示视频:
设计文档:
11位全加器仿真
1.工程文件
2.程序文件
3.程序编译
4.程序结构(RTL图)
5.程序仿真
Testbench
十进制表示
11位加法器,最大值为2的11次方=2048,和大于2048时需要向前进位
25+8+进位=34
1620+1021=2641,大于2048,需要向前进位(cout=1),2641-2048=593
646+78+进位=725
部分代码展示:
//4位加法器 module adder_4bit(A, B, CIN, COUT, S); input [3:0] A;//输入A input [3:0] B;//输入B input CIN;//输入进位 output COUT;//输出进位 output [3:0] S;//输出和 wire [3:0] G; wire [3:0] P; wire [4:0] C; //根据并行四位加法器结构编写代码 assign G = A & B;//与 assign P = A ^ B;//异或 assign C[0] = CIN; assign C[1] = (CIN & P[0]) | G[0]; assign C[2] = (CIN & P[0] & P[1]) | (G[0] & P[1]) | G[1]; assign C[3] = (CIN & P[0] & P[1] & P[2]) | (G[0] & P[1] & P[2]) | (G[1] & P[2]) | G[2]; assign C[4] = (CIN & P[0] & P[1] & P[2] & P[3]) | (G[0] & P[1] & P[2] & P[3]) | (G[1] & P[2] & P[3]) | (G[2] & P[3]) | G[3]; assign COUT = C[4]; assign S = C ^ P;//异或 endmodule
点击链接获取代码文件:http://www.hdlcode.com/index.php?m=home&c=View&a=index&aid=1268
阅读全文
811