//4位串行进位加法器
module cy4
(
input[n-1:0]A,B,//输入端口声明
input Cin,//输入端口声明
output reg[n-1:0]SUM,//输出端口及变量的数据类型声明
output reg Cout//输出端口及变量的数据类型声明
);
parameter n = 4;
reg[n:0] C;
integer k;//声明一个整型变量
always @(A,B,Cin)
begin
C[0] = Cin;
for(k = 0;k < n; k = k + 1)
begin
SUM[k] = A[k] ^ B[k] ^ C[k];//求和
C[k+1] = (A[k] & B[k])|(A[k] & C[k])|(B[k] & C[k]);//求进位
end
Cout = C[n];//输出进位号
end
endmodule
四位串行进位加法器(for循环对n为多位数加法器的行为进行描述)
猜你喜欢
转载自blog.csdn.net/qq_41982581/article/details/82661883
今日推荐
周排行