【FPGA & Verilog】各种加法器Verilog

1bit半加器adder设计实例

cpp 复制代码
module adder(cout,sum,a,b);
output cout;
output sum;
input a,b;
wire cout,sum;
assign {cout,sum}=a+b;
endmodule

解释说明

(1)assign {cout,sum}=a+b 是连续性赋值

对于线网wire进行赋值,必须以assign或者deassign开始

assign [delay] wire_net = expression

assign 语句逻辑结构就是右边驱动左边。某个值被指派给线网变量,右边操作数可以是标量或者向量的wire或reg;也可以是 function函数,无论何时,右边表达式都重新计算,在指定的延时时间后赋值;

(2){cout,sum}是为拼接操作符,例如两个3bit的a,b拼接在一起后,{a,b}就相当于6bit数

同步4bit全加器adder4

cpp 复制代码
module adder4(cout,sum,ina,inb,cin,clk);
output reg [3:0]sum;
output reg cout;
input [3:0]ina,inb;
input cin,clk;
reg [3:0] tempa,tempb;
reg tempc;
always@(posedge clk)
begin
 tempa=ina;
 tempb=inb;
 tempc=cin;
end

always@(posedge clk)
begin
{cout,sum}=tempa+tempb+tempc;
end

endmodule
相关推荐
千穹凌帝36 分钟前
SpinalHDL之结构(八)
开发语言·前端·mcu·fpga开发·fpga
自控0941 小时前
紫光 FPGA固化RAM位置的操作流程
fpga开发
今朝无言2 小时前
verilog实现FIR滤波系数生成(阶数,FIR滤波器类型及窗函数可调)
fpga开发
芯冰乐18 小时前
跑lvs出现soft connect怎么处理?
后端·fpga开发
北京太速科技股份有限公司2 天前
太速科技-383-基于kintex UltraScale XCKU060的双路QSFP+光纤PCIe 卡
fpga开发
碎碎思2 天前
FPGA在汽车电子中应用-ADAS
fpga开发·汽车
日晨难再2 天前
Verilog基础:时序调度中的竞争(四)(描述时序逻辑时使用非阻塞赋值)
fpga开发·硬件工程·verilog·fpga·数字ic
szxinmai主板定制专家2 天前
基于AM62x/AM64x+FPGA的电力低压保护主控板解决方案
fpga开发
szxinmai主板定制专家2 天前
基于AM64X+FPGA的电力特高压输电控保解决方案,支持VXWORKS
fpga开发
IM_DALLA2 天前
【Verilog学习日常】—牛客网刷题—Verilog企业真题—VL64
学习·fpga开发·verilog学习