打印
[FPGA]

基于TD软件的4位全加器实现

[复制链接]
607|1
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
一、全加器
全加器英语名称为full-adder,是用门电路实现两个二进制数相加并求出和的组合线路,称为一位全加器。一位全加器可以处理低位进位,并输出本位加法进位。多个一位全加器进行级联可以得到多位全加器。
二、vhdl代码
module f_add(a,b,cin,sum,count);

input a,b,cin;
output sum,count;

wire s1,t1,t2,t3;
xor
        ux1(s1,a,b),
        ux2(sum,s1,cin);
       
and
        ua1(t3,a,b),
        ua2(t2,b,cin),
        ua3(t1,a,cin);
or
        uo1(count,t1,t2,t3);
       

endmodule



module four_f_add(fa,fb,fcin,fsum,fcount);

parameter size=4;
input [size:1]fa,fb;
output[size:1]fsum;
input fcin;
output fcount;

wire [size-1:1]ftemp;

f_add
       
        ufa1(.a(fa[1]),.b(fb[1]),.cin(fcin),.sum(fsum[1]),.count(ftemp[1])),
       
        ufa2(.a(fa[2]),.b(fb[2]),.cin(ftemp[1]),.sum(fsum[2]),.count(ftemp[2])),
       
        ufa3(.a(fa[3]),.b(fb[3]),.cin(ftemp[2]),.sum(fsum[3]),.count(ftemp[3])),
       
        ufa4(fa[4],fb[4],ftemp[3],fsum[4],fcount);

endmodule




三、RTL




使用特权

评论回复

相关帖子

沙发
雷北城| | 2020-9-9 17:28 | 只看该作者
谢谢分享,学习了!

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

67

主题

1962

帖子

14

粉丝