hdlbits系列verilog解答(32位加法器)-25

文章目录


一、问题描述

您将获得一个执行 16 位加法的模块 add16 。实例化其中两个以创建一个 32 位加法器。一个 add16 模块在接收到第一个加法器的进位结果后,计算加法结果的低 16 位,而第二个 add16 模块计算结果的高16 位。 32 位加法器不需要处理进出(假设为 0)或进出(忽略),但内部模块需要处理才能正常运行。(换句话说,模块 add16 执行 16 位 a + b + cin,而您的模块执行 32 位 a + b)。

如下图所示将模块连接在一起。提供的模块 add16 具有以下声明:

module add16 ( input[15:0] a, input[15:0] b, input cin, output[15:0] sum, output cout );

二、verilog源码

module top_module(

input [31:0] a,

input [31:0] b,

output [31:0] sum

);

wire c1, c2;

复制代码
add16 u1 (a[15:0], b[15:0], 1'b0, sum[15:0], c1);
add16 u2 (a[31:16], b[31:16], c1, sum[31:16], c2);

endmodule

三、仿真结果

转载请注明出处!

相关推荐
第二层皮-合肥8 小时前
FPGA硬件设计-基础流程
fpga开发
第二层皮-合肥9 小时前
FPGA硬件开发-Xilinx产品介绍
fpga开发
XINVRY-FPGA10 小时前
XCVP1902-2MSEVSVA6865 AMD 赛灵思 XilinxVersal Premium FPGA
人工智能·嵌入式硬件·神经网络·fpga开发·云计算·腾讯云·fpga
热爱学习地派大星10 小时前
FPGA实现CRC校验
fpga开发
芒果树技术12 小时前
MT-PXle RIO模块【高性能FPGA+ LVDS】采用FPGA实现高效LVDS通讯
fpga开发·模块测试·fpga
明月清了个风13 小时前
STM32初始化串口重定向后printf调试信息不输出的问题
stm32·单片机·fpga开发·嵌入式软件
通信小呆呆17 小时前
电路思维下的 Verilog:如何区分组合逻辑与时序逻辑
fpga开发·电路·时序逻辑·跨时钟域·组合逻辑
嵌入式-老费17 小时前
Zynq开发实践(FPGA之uart接收)
fpga开发
ShiMetaPi1 天前
操作【GM3568JHF】FPGA+ARM异构开发板 使用指南:蓝牙
arm开发·嵌入式硬件·fpga开发·rk3568
知识充实人生2 天前
静态时序分析详解之时序路径类型
fpga开发·时序路径·关键路径