目录

一、半减器

二、全减器

三、减法器

四、Verilog设计


减法器可由基础的半减器和全减器模块组成,或者基于加法器和控制信号搭建。

定义N比特被减数X,减数Y,差为D(difference);

来自低比特借位Bi,向高比特借位Bi+1,i为比特序号;

所以,有以下结论:

一、半减器

半减器用于计算两比特Xi和Yi的减法,输出结果Di和向高位的借位Bo(Borrow output)。其真值表、逻辑表达式、Verilog描述和门电路图如下:

真值表

逻辑表达式

xor表示异或。

Verilog设计

门电路图

二、全减器

全减器不同于半减器在于,全减器输入来自低位的借位Bi(Borrow input),另外两个输入Xi,Yi,输出为Di和向高位的借位Bo。其真值表、逻辑表达式、Verilog描述和门电路图如下:

真值表

逻辑表达式

Verilog设计

门电路图

三、减法器

此前,我们介绍了相当数量的加法器设计,而减法器与加法器具有相同的设计方法。

用如下符合表示全减器:

根据此全减器搭建16比特减法器,如下图所示,姑且称之为行波借位减法器。

“行波借位减法器”

除了使用半减器和全减器搭建减法器外,减法器使用控制信号便可以与加法器共用相同的结构。X与Y均采用二进制补码表示,则:

其中~Y表示对Y按比特取反。

加减法器

以上是基于行波进位加法器修改的电路结构,使其同时具有加法和减法的功能。由加或者减的控制信号,决定该部件的功能。输入c0=0时表示加法;c0=1时表示减法。为了溢出与符号位考虑,以上结构最后进位输出需要与控制信号进行异或以满足减法器的需求。比如0-0的情况。

以下两条RISC-V算术指令:ADD和SUB

ADD rd, rs1, rs2

SUB rd, rs1, rs2

处理器根据指令译码,判断ADD或者SUB,来共用加法减法单元。

四、Verilog设计

设计一个16比特的减法器

(1)基于全减器设计“行波借位减法器”,基础的全减器模块

行波借位减法器

(2)根据行波进位加法器,通过控制信号,使其同时具有加法和减法的功能,注意进位。

加减法器

测试波形

源码公众号回复“00b”。

欢迎批评指正,更多阅读,关注“纸上谈芯”,不定期更新,共同学习:

【HDL系列】半减器、全减器和减法器原理和设计相关推荐

  1. 【VHDL】半减器 and 或门 组成 全减器

    建议先把课本上的 半加器与全加器理解一下,再来写 半减器和全减器 点这里查看 哔哩哔哩上的视频 <半加器与全加器>(讲得挺清晰的) 点这里查看 哔哩哔哩上的视频 <什么是全减器> ...

  2. Verilog 半减器和全减器

    系列目录 Verilog 半加器和全加器 Verilog 半减器和全减器 串行加法器 11位全加器verilog设计 目录 系列目录 文章目录 前言 一.什么是半减器和全减器 半减器 全减器 二.半减 ...

  3. EDA技术与应用上机任务 电子信息类 Quartus II或Quartus Prime D触发器、半减器、全减器、可加减控制的50进制加减计数器。

    EDA技术与应用上机任务书 上机目的 熟悉掌握Quartus II或Quartus Prime开发工具的使用. 掌握利用硬件描述语言(Verilog)设计简单程序的步骤及方法. 掌握若干组合逻辑电路及 ...

  4. 【VHDL】【作业】2八选一、半减器、全减器

    [VHDL][作业]2 基于CASE语句的4选1多路选择器表述 文章目录 [VHDL][作业]2 基于CASE语句的4选1多路选择器表述 前言 1.八选一多路选择器 仿真波形 2.半减器 a.什么是半 ...

  5. 【FPGA】Verilog 实践:半加器与全加器 | 半减器与全减器 | Code Converter

    写在前面:本章主要理解加法器和减法器的概念,并了解 Code converter 的概念.使用 Verilog 实现多种加法器.减法器和代码转换器,通过 FPGA 验证 Verilog 实现的电路的行 ...

  6. java音乐播放器文库_微机原理课程设计报告——音乐播放器.doc

    微机原理课程设计报告--音乐播放器.doc 微机 应用系统 课程设计报告 题 目 电子音乐播放器 专业班级 电子信息科学与技术 1001 班 设计学生 完成时间 2012 年 6 月 27 日 湖南文 ...

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

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

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

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

  9. 流行和声(7)min7b5/半减七和弦

    流行和声(7)min7b5/半减七和弦 构成:1.b3.b5.b7 不能省略五音 张力音以及命名 b9音.9音.11音.b13音(从洛克利亚调式来) 随着张力音的出现, Cm7b5:1.b3.b5.b ...

  10. ARMCortex系列仿真调试器

    主流的调试工具 1. J-Link J-Link是最著名的ARM开发调试工具,J-Link由SEGGER公司生产.提供对市面上几乎所有ARM内核芯片的支持.目前最新版本的J-Link产品为V8,支持J ...

最新文章

  1. 人工智能的另一方向:基于忆阻器的存算一体技术
  2. Quartz-任务调度概述及Quartz(2.2.X)快速入门
  3. EAGER的获取是代码的味道
  4. Python高级——用多线程实现UDP聊天器
  5. 诗和远方:无题(四十七)
  6. Tampermonkey版Vimium
  7. oracle除了什么之外,Oracle翻译
  8. 1.13 单用户模式;1.14 救援模式;1.15 克隆虚拟机;1.16 Linux机器相互登录
  9. docker elasticsearch安装
  10. python 股票行情_十分钟学会用Python交易股票
  11. 服务器上行带宽和下行带宽指的是什么
  12. 【上海房价预测】代码实现——利用BP神经网络进行上海二手房价预测
  13. Poseidon(海神号)
  14. 剑指 Offer 41-50
  15. 谁动了我的奶酪佳句欣赏
  16. 大数据查询分析引擎比较
  17. html5多屏互动游戏,2017TFC深度盘点:未来H5游戏的发展趋势 重度化强社交多屏互动...
  18. 我的世界java版_我的世界Java版1.16.5
  19. vue实现全选和反选
  20. oracle数据库服务器01

热门文章

  1. [BScroll warn]: Can not resolve the wrapper DOM. Vue better-scroll
  2. 利用交换机搭建局域网并实现PC机或者带网口设备的通信
  3. 窗口电压比较器电路设计
  4. 目标检测 | 火焰烟雾检测论文(实验部分)
  5. [挑战杯] 火焰检测
  6. arcgis10.0 sp5下载
  7. 广州网站建设哪些公司好
  8. 从招聘信息看-数据分析师(数据分析报告)
  9. java中final类调用_Java中final的使用
  10. AI技术的苹果iPhone XS Max双卡双待7纳米6.5寸512GB顶配12799元(公号回复“苹果AI”下载PDF资料)