一. 全加器 & 半加器

引用《电子技术基础(数字部分)》的说法:

1.全加器能进行被加数、加数和来自低位的进位信号相加,并根据结果给出该位的进位信号。
用逻辑表达式可描述为:
S = A ⊕ B ⊕ C S = A\oplus B \oplus C S=A⊕B⊕C
C o u t = A B + ( A ⊕ B ) C i n C_{out} = AB + (A \oplus B)C_{in} Cout​=AB+(A⊕B)Cin​
2.半加器仅考虑两个加数本身,而没有考虑低位进位的加法运算。由真值表可以得到逻辑表达式:
S = A ˉ B + A B ˉ S = \bar{A}B + A\bar{B} S=AˉB+ABˉ
C = A B C = AB C=AB

二. 行波进位加法器(串行进位加法器)

  1. 设计思想:按照正常的加法运算逻辑,由低位向高位依次进行计算,进位依次从低位传递到高位。

  2. 公示推导:

    3.架构图:

    加法器整体由全加器串联构成,每一位的计算对应一个全加器,进位输入由相邻低位产生。

  3. 关键路径
    图中红色路径为此加法器的关键路径,加法器的延迟和操作数尾数成正比。

三、verilog 代码

  1. 设计代码

module adder_TWC //行波进位加法器
#(parameter N  = 64)
(input  [N-1:0]A,B,input  C_in,output [N-1:0]Y,output C_out//Y = (A + B) % (1<<N)  //C = (A + B)>>N
); wire [N:0]C_mid;assign C_mid[0] = C_in; assign C_out = C_mid[N];generate genvar i;for(i=0;i<N;i=i+1)begin: add_unitadder_full a1(A[i] , B[i] ,C_mid[i] ,Y[i] , C_mid[i+1] );endendgenerateendmodulemodule adder_full(input A,B,C_in,output S,C_out);assign C_out = (A&B)|((A^B)&C_in);assign S = A ^ B ^ C_in;
endmodule
  1. tb

module adder_TWC_tb();reg [63:0]a,b;reg cin;wire cout;wire [63:0]y;adder_TWC  T1 (.A(a),.B(b),.C_in(cin),.Y(y),.C_out(cout));integer i = 0;initial begincin = 1;for(i=0;i<16;i=i+1)begina = $random;b = $random;#10;endend
endmodule

行波进位加法器设计 Verilog实现相关推荐

  1. 【HDL系列】半加器、全加器和行波进位加法器原理与设计

    目录 一.半加器 二.全加器 三.行波进位加法器 加法器是算术运算的一种,在计算机和一些处理器中被运用于算术逻辑单元ALU中或者处理器的其他部分如计算地址,加减操作等类似操作.今天.我们来重温下数字电 ...

  2. 四位行波进位加法器_【HDL系列】半加器、全加器和行波进位加法器原理与设计...

    加法器是算术运算的一种,在计算机和一些处理器中被运用于算术逻辑单元ALU中或者处理器的其他部分如计算地址,加减操作等类似操作.今天.我们来重温下数字电路中的加法器. 一.半加器 半加器用于计算2个单比 ...

  3. 四位行波进位加法器_【HDL系列】超前进位加法器原理与设计

    上期介绍了半加器.全加器以及行波进位加法器(RCA),本文介绍超前进位加法器(Lookahead Carry Adder,简称LCA).在介绍超前进位加法器前,我们先来分析下行波进位加法器的关键路径. ...

  4. 四位行波进位加法器_【HDL系列】进位选择加法器原理与设计

    前期已介绍了行波进位加法器(Ripple Carry Adder, RCA)依赖于低位进位,所以具有超长的进位链和关键路径.对于RCA的改进中,进位选择加法器(Carry Select Adder)是 ...

  5. 四位行波进位加法器_【HDL系列】进位旁边加法器原理与设计

    一.进位旁边加法器 进位旁路加法器(Carry Skip Adder,CSA),也称Carry Bypass Adder.需要注意的是,CSA也是另外一种加法器--进位保存加法器(Carry Save ...

  6. 四位行波进位加法器_【HDL系列】Sklansky加法器原理与设计

    Sklansky加法器是另一种并行高速的树形加法器,由Sklansky于1959年发表,该加法器对比特位进位层级分组,根据对不同比特组所有可能的进位计算所有可选的和与进位,所以也叫Conditiona ...

  7. HDLBits答案(8)_Verilog半加器、全加器和行波进位加法器原理与设计

    半加器.全加器和行波进位加法器原理与设计 HDLBits链接 半加器 定义: 半加器用于计算2个单比特二进制数a与b的和,输出结果sum(s)和进位carry(c).在多比特数的计算中,进位c将作为下 ...

  8. 四位行波进位加法器_【HDL系列】硬件加法器原理与设计小结

    硬件加法器种类繁多,对于不同的设计,加法器的需求也不一样.在前端设计中,使用符号"+"便可轻而易举地实现加法器.只是在特殊的情况下,指定选择加法器类型,或许可以用到.其他情况,可以 ...

  9. (萌新的数电学习)用VHDL语言设计4位行波进位加法器

    实验背景: 全加器是实现三位数相加的组合逻辑电路,共有三个输入,两个输出.输入变量中的两个用 X 和 Y 表示,代表两个加数,第三个输入 Z 表示低位产生的进位.两个输出用 S(和)与 C(进位)来表 ...

最新文章

  1. Laravel 5.0 的新特性
  2. node的包管理工具:yarn和npm
  3. mysql 2003报错_为什么不建议在 MySQL 中使用 UTF-8?
  4. 第三课 泛型+反射封装数据库访问层 2019-04-02
  5. 快速掌握MATLAB应用,从这一步开始
  6. Java面试知识点总结宝典助你通关!成功入职字节跳动
  7. Typescript学习笔记(五) 模块机制
  8. Possible iteration over unexpected (custom / inherited) members, probably missing hasOwnProperty che
  9. PHP+SQLite3简约网址导航、书签管理器网站源码
  10. 论述计算机与外设的访问控制方法,试论述计算机与外设访问控制的方法有多少种各有什么优缺点...
  11. Outlook 2013中 IMAP配置
  12. Node.js API方法
  13. FTP已登录,读取目录列表失败
  14. 如何在手机上新建html文件夹,用手机怎么制作网页
  15. rsync报错:rsync: chgrp .hejian.txt.D1juHb (in backup) failed: Operation not permitted (1)
  16. sql注入漏洞,应屏蔽SQL注入攻击
  17. IT桔子 - 千里马俱乐部
  18. 6、springboot-防止xxs攻击
  19. NSPredicate的本地模糊查询
  20. ping服务器ip地址ping不通

热门文章

  1. Vijos - Car的旅行路线(最短路)
  2. A2-1 利用stb_image.h来进行图片的绘制与显示
  3. 大学恋爱常见的几种心理因素?
  4. 以太坊gas、gaslimit、gasPrice说明
  5. mysql将查询结果写入另一张表_将一张表的查询结果插入到另一张表(转)
  6. 生信分析-手把手做nature新冠文章分析
  7. 信息安全-零信任-SDP技术到底有多能打?
  8. iOS 地图定位 地图
  9. bwapp通关(全完结)
  10. AB 液体发泡硅胶(双组份发泡硅胶)IOTA 663A,B