电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

先行进位加法器课件

11页
  • 卖家[上传人]:好**
  • 文档编号:99523908
  • 上传时间:2019-09-19
  • 文档格式:DOC
  • 文档大小:325.51KB
  • / 11 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • 1、实验四 32位先行进位加法器一、 功能概述串行进位加法器延时很大,每级的输出结果都要等上一级的进位到来才可以求和算出结果,这次实验对普通全加器进行改良,改良为先行进位加法器。 先行进位加法器,各级的进位彼此是独立产生,只与输入数据A,B和C_in有关,将各级间的进位级联传播给去掉了,这样就可以减小进位产生的延时。每个等式与只有三级延迟的电路对应,第一级延迟对应进位产生信号和进位传递信号,后两级延迟对应上面的积之和。通过这种进位方式实现的加法器称为超前进位加法器。因为各个进位是并行产生的,所以是一种并行进位加法器。二、 实验原理1、设二进制加法器第i位为Ai,Bi,输出为Si,进位输入为Ci,进位输出为Ci+1,则有: Si=AiBiCi (1-1) Ci+1=Ai *Bi+ Ai *Ci+ Bi*Ci=Ai *Bi+(Ai+Bi)* Ci (1-2)令Gi= Ai* Bi, Pi= Ai+Bi,则Ci+1= Gi+ Pi *Ci当Ai和Bi都为1时,Gi= 1, 产生进位Ci+1= 1当Ai和Bi有一个为1时,Pi= 1,传递进位Ci+1= Ci因此Gi定义为进位产生信号,Pi定义为进

      2、位传递信号。Gi的优先级比Pi高,也就是说:当Gi = 1时(当然此时也有Pi = 1),无条件产生进位,而不管Ci是多少;当Gi=0而Pi=1时,进位输出为Ci,跟Ci之前的逻辑有关。 下面推导4位超前进位加法器。设4位加数和被加数为A和B,进位输入为Cin,进位输出为Cout,对于第i位的进位产生Gi = AiBi ,进位传递Pi=Ai+Bi , i=0,1,2,3。于是这各级进位输出,递归的展开Ci,有:C0 = CinC1=G0 + P0C0C2=G1 + P1C1 = G1 + P1G0 + P1P0 C0C3=G2 + P2C2 = G2 + P2G1 + P2P1G0 + P2P1P0C0C4=G3 + P3C3 = G3 + P3G2 + P3P2G1 + P3P2P1G0 + P3P2P1P0C0 (1-3)Cout=C4由此可以看出,各级的进位彼此独立产生,只与输入数据Ai、Bi和Cin有关。2、接口说明表1: 32位超前进位加法器接口信号说明表序号接口信号名称方向说明备注1A31:0I输入数据2B31:0I输入数据3S31:0O加法结果4countO最高位进位3、

      3、结构框图三、 实验方案方案一:分为两个模块:1个4位add_4和1个add_32,其中add_32调用4个add_4.首先设计4位超前进位加法器:框图如下:设计好四位的之后,开始调用四位的实现32位的。方案二:分为五个模块:(1)计算传播值和产生值模块:pg模块(2)超前进位模块:cla模块 (3)加法求和模块:sum模块(4)求和并按输出a,b,c_in分组:bit_slice模块(5)32位超前进位加法器总模块:cla_32总框图:四、 验证方案:对32位的两个输入赋值:当a=32b1000_0001_0111_1011_1101_1001_1101_1000;b=32b0111_1000_0001_1000_1100_0111_0101_0001;c_in=1b0;结果:s=32b1111_1001_1001_0100_1010_0001_0010_1001;当 a=32b1000_0001_0111_1011_1101_1001_1101_1000;b=32b0111_1000_0001_1000_1100_0111_0101_0001;c_in=1b1;结果:s=32b111

      4、1_1001_1001_0100_1010_0001_0010_1010;来对波形进行观察,看波形是否正确。五、 实验代码:方案一:(1)add_32模块顶层模块:(2)4位add_4模块方案二:(1)cla_32顶层模块:module cla_32(a,b,c_in,s,count ); input 31:0 a,b; input c_in; output 31:0 s; output count; wire 7:0 gg,gp,gc; wire 3:0 ggg,ggp,ggc; wire gggg,gggp; bit_slice b1(.a(a3:0),.b(b3:0),.c_in(gc0),.s(s3:0),.gp(gp0),.gg(gg0); bit_slice b2(.a(a7:4),.b(b7:4),.c_in(gc1),.s(s7:4),.gp(gp1),.gg(gg1); bit_slice b3(.a(a11:8),.b(b11:8),.c_in(gc2),.s(s11:8),.gp(gp2),.gg(gg2); bit_slice b4(.a(a15:12),.b(

      5、b15:12),.c_in(gc3),.s(s15:12),.gp(gp3),.gg(gg3); bit_slice b5(.a(a19:16),.b(b19:16),.c_in(gc4),.s(s19:16),.gp(gp4),.gg(gg4); bit_slice b6(.a(a23:20),.b(b23:20),.c_in(gc5),.s(s23:20),.gp(gp5),.gg(gg5); bit_slice b7(.a(a27:24),.b(b27:24),.c_in(gc6),.s(s27:24),.gp(gp6),.gg(gg6); bit_slice b8(.a(a31:28),.b(b31:28),.c_in(gc7),.s(s31:28),.gp(gp7),.gg(gg7); clac0(.p(gp3:0),.g(gg3:0),.c_in(ggc0),.c(gc3:0),.gp(ggp0),.gg(ggg0);cla c1(.p(gp7:4),.g(gg7:4),.c_in(ggc1),.c(gc7:4),.gp(ggp1),.gg(ggg1);assign ggp

      6、3:2=2b11;assign ggg3:2=2b00;cla c2(.p(ggp),.g(ggg),.c_in(c_in),.c(ggc),.gp(gggp),.gg(gggg);assign count=gggg|(gggp&c_in);endmodule(2)pg模块:module pg(a,b,p,g);input 3:0 a,b;output 3:0 p,g;assign p=ab;assign g=a&b;endmodule(3)cla模块:module cla(p,g,c_in,c,gp,gg);input 3:0 p,g;input c_in;output 3:0 c;output gp,gg;function 99:0 do_cla; input 3:0 p,g; input c_in; begin:label integer i; reg gp,gg; reg 3:0 c; gp=p0; gg=g0; c0=c_in; for(i=1;i4;i=i+1) begin gp=gpπgg=(gg&pi)|gi;ci=(ci-1&pi-1)|gi-1; enddo_

      7、cla=c,gp,gg;end endfunctionassign c,gp,gg=do_cla(p,g,c_in);endmodule(4)sum模块:module sum(a,b,c,s );input 3:0 a,b,c;output 3:0 s;wire 3:0 t=ab;assign s=tc;endmodule(5)bit_slice模块:module bit_slice(a,b,c_in,s,gp,gg );input 3:0 a,b;input c_in;output 3:0 s;output gp,gg;wire 3:0p,g,c;pg i1(a,b,p,g);cla i2(p,g,c_in,c,gp,gg);sum i3(a,b,c,s);endmodule(6)激励代码:module cla32_tb;/ Inputsreg 31:0 a;reg 31:0 b;reg c_in;/ Outputswire 31:0 s;wire count;/ Instantiate the Unit Under Test (UUT)cla_32 uut (.a(a), .b(b

      8、), .c_in(c_in), .s(s), .count(count);initial begin/ Initialize Inputsa = 0;b = 0;c_in = 0;/ Wait 100 ns for global reset to finish#10 a=32b1000_0001_0111_1011_1101_1001_1101_1000;b=32b0111_1000_0001_1000_1100_0111_0101_0001;c_in=1b0;#10 a=32b1000_0001_0111_1011_1101_1001_1101_1000;b=32b0111_1000_0001_1000_1100_0111_0101_0001;c_in=1b1; / Add stimulus hereend endmodule六、波形图说明1、仿真波形2、结果说明对于三个输入: a=32b1000_0001_0111_1011_1101_1001_1101_1000; b=32b0111_1000_0001_1000_1100_0111_0101_0001; c_in=1b0;结果与实验方案的相同,结果仿真正确.七、 实验总结 对于这次实验,自己在老师布置完,努力做了几个下午,不断调试才得到正确结果波形,是非常有收获的。同时我也采用了两种方案来设计,真正的对先行进位加法器有了全新的认识

      《先行进位加法器课件》由会员好**分享,可在线阅读,更多相关《先行进位加法器课件》请在金锄头文库上搜索。

      点击阅读更多内容
    最新标签
    发车时刻表 长途客运 入党志愿书填写模板精品 庆祝建党101周年多体裁诗歌朗诵素材汇编10篇唯一微庆祝 智能家居系统本科论文 心得感悟 雁楠中学 20230513224122 2022 公安主题党日 部编版四年级第三单元综合性学习课件 机关事务中心2022年全面依法治区工作总结及来年工作安排 入党积极分子自我推荐 世界水日ppt 关于构建更高水平的全民健身公共服务体系的意见 空气单元分析 哈里德课件 2022年乡村振兴驻村工作计划 空气教材分析 五年级下册科学教材分析 退役军人事务局季度工作总结 集装箱房合同 2021年财务报表 2022年继续教育公需课 2022年公需课 2022年日历每月一张 名词性从句在写作中的应用 局域网技术与局域网组建 施工网格 薪资体系 运维实施方案 硫酸安全技术 柔韧训练 既有居住建筑节能改造技术规程 建筑工地疫情防控 大型工程技术风险 磷酸二氢钾 2022年小学三年级语文下册教学总结例文 少儿美术-小花 2022年环保倡议书模板六篇 2022年监理辞职报告精选 2022年畅想未来记叙文精品 企业信息化建设与管理课程实验指导书范本 草房子读后感-第1篇 小数乘整数教学PPT课件人教版五年级数学上册 2022年教师个人工作计划范本-工作计划 国学小名士经典诵读电视大赛观后感诵读经典传承美德 医疗质量管理制度 2 2022年小学体育教师学期工作总结 2022年家长会心得体会集合15篇
    关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
    手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
    ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.