【HDL系列】乘法器(5)——Radix-2 Booth乘法器
一、Booth乘法器原理
Booth算法可以减少乘法运算中加法/减法次数,是二进制乘法补码运算的高效算法。
我们已经很熟悉,在乘法运算中包含2部分:(1):生成部分和;(2)部分和累积
而Booth算法可以减少部分和个数和加速累积,在连续比特“0”或“1”将产生更少的部分和。
在介绍Booth算法前,我们来重新回忆下往期中数的表示:
N比特数B,将其展开,其中B-1=0:
将A与B相乘,则:
对于B的第n位和第n-1位,从上式可以发现,B可以通过相邻比特的减法和2的n次方相乘而得。
如果AB两数相乘,从B的-1和0位逐次向高位检查,累积A*B的结果的话:
当Bn=Bn-1,则可以省去B与A相乘和加法,只需要进行移位即可。
如果Bn=1,Bn-1=0,则为-A*2的n次;
如果Bn=0,Bn-1=1,则为+A*2的n次。
通过以上A*B两数的认识,结合以上原理,我们来看Booth算法的基本过程,下文的A为累积寄存器,与上文示例不同。
Booth算法的基本过程为:
1. 被乘数和乘数分别存入M和Q寄存器;
2. 中间结果存入A和Q寄存器;
3. A和Q-1寄存器初始为0;Q-1为1比特寄存器,索引为“-1”;
4. Q-1寄存器放置于Q寄存器最低比特Q0比特的右方;
5. 在每个周期,检查Q0和Q-1:
5.1. 如果Q0Q-1 = 00 或 11, {A,Q,Q-1}将直接右移1比特。
5.2. 如果Q0Q-1 = 01,则被乘数M与A相加,{A,Q,Q-1}右移1比特。
5.3. 如果Q0Q-1 = 10,则A减去M,{A,Q,Q-1}右移1比特。
Booth算法的流程图如下,其中M为被乘数,Q为乘数,N为M和Q的M的比特位数,A为与M位宽相等的寄存器:
以上是Radix-2 Booth算法,姑且翻译为基2布什算法,以下是一个例子:
7*(-5)= -35 ;
如果设计一个面积小,性能要求不高的乘法器,可以采用迭代的方法,根据流程图描述即可。
因在实际中基2 Booth算法使用较少,此处不特别展示基2 Booth算法的功能性Verilog设计,下期Radix-4 Booth再见。
原创不易,如果对您有帮助,记得点赞关注哦。欢迎批评指正,谢谢鼓励!
一起“纸上谈芯”,共同学习:
【HDL系列】乘法器(5)——Radix-2 Booth乘法器相关推荐
- 【HDL系列】乘法器(6)——Radix-4 Booth乘法器
目录 一.Radix-4 Booth乘法器原理 二.Verilog设计 一.Radix-4 Booth乘法器原理 上文中介绍了基2 Booth乘法器,本文继续介绍基4 Booth乘法器. 对于N比特数 ...
- 原码一位乘法器设计_数字IC校招基础知识点复习(七)——超前进位加法器、Wallace树、Booth乘法器...
1.超前进位加法器 看了一些面经,提到会让你用基础的门搭加法器,因此首先得熟悉半加器,全加器等最基础的加法器才能理解之后的超前进位加法器,树型加法器等复杂的加法器. 半加器的输入为a,b,输出为结果s ...
- 基于Basys2的Booth乘法器的设计
目录 一.设计指标(老样子,鲲鲲定的,我直接贴上来) 二.Booth乘法原理 三.Verilog代码 1.Booth乘法器: 2.显示转换模块: 3.数值位译码器: 4.符号位译码器: 5.时钟分频模 ...
- booth乘法器原理
在微处理器芯片中,乘法器是进行数字信号处理的核心,同时也是微处理器中进行数据处理的关键部件.乘法器完成一次操作的周期基本上决定了微处理器的主频.乘法器的速度和面积优化对于整个CPU的性能来说是非常重要 ...
- 计算机组成原理乘法器实验报告,Booth乘法器实验报告
计算机组成原理Booth乘法器实验报告及源码 运算器部件实验:Booth乘法器 班级:软件工程 一. 实验目的 理解并掌握乘法器的原理. 二. 实验原理 Booth算法是一种十分有效的计算有符号数乘法 ...
- Booth乘法器和wallace树乘法器的理解
<span style="font-family: FangSong_GB2312; color: rgb(51, 51, 51);"><span style=& ...
- booth乘法器 c语言,二进制乘法器的FPGA实现(常规和Booth乘法器)
二进制乘法器的主要操作就是加发法操作和移位操作. 我们知道计算机存储数据都是以二进制形式进行存储的,以4位数为例解释一下被乘数和乘数如何操作,首先把被乘数扩展成2倍的位宽,高4位为0,低4位为被乘数, ...
- (88)FPGA乘法器设计(移位相加乘法器)
(88)FPGA乘法器设计(移位相加乘法器) 1 文章目录 1)文章目录 2)FPGA入门与提升课程介绍 3)FPGA简介 4)FPGA乘法器设计(移位相加乘法器) 5)技术交流 6)参考资料 2 F ...
- 乘法器之五(混和式乘法器(Hybrid multiplication))
4) 混和式乘法器(Hybrid multiplication) 混合乘法器模式结合了半并行和乘加两种乘法器模式,它有不同的两个输入位流,并且乘以不同的系数. 这种模式在象FFTs这样的有复数乘 ...
最新文章
- Maya制作风格化的女性跑步动画学习教程
- javaWeb实现文件上传与下载 (转)
- java url 生成图片_JAVA 通过URL生成水印图
- [Java] System.arraycopy 数组复制
- python wms_webGIS实践:4_2_python django整合geoserver wms服务
- linux 踢出在线用户
- ie浏览器在线使用_关于登录深圳市住房公积金管理中心网站在线办理平台的温馨提示...
- 【编译原理笔记01】什么是编译,编译系统各结构作用
- 解决:fatal error: opencv2/xfeatures2d.hpp: No such file or directory
- 【docker】如何在docker中执行redis命令
- stagefright
- 通过Modbus转EtherNetIP网关连接AB PLC的配置案例
- mPaaS 月度小报|魔方卡片(Cube)公测,十个卡片模板任意使用
- 云服务器查看物理MAC地址的方法
- 开源java数据库库
- vue:监听浏览器地址栏变化
- 【vue3】vue3+ts+vite项目设置路径别名
- 周鸿祎《智能主义》读书笔记
- 基于MATLAB的矩阵基础(附例题与代码)
- Hadoop配置—完全分布式
热门文章
- 如何监控Windows进程的句柄资源
- 2021年中国油气储气阀市场趋势报告、技术动态创新及2027年市场预测
- 我的世界服务器清道夫配置文件,清道夫环保网分享:废液焚烧炉烟气处理标准配置...
- LOJ #109. 并查集
- 我们是如何将一个项目做烂的
- 苹果无线耳机连接不上_苹果AirPods Pro鉴别真伪最简单有效的方法
- 热经-北京中地时空数码科技有限公司-研发工程师(WEBGIS方向)
- 18 | 安全标准和框架:怎样依“葫芦”画出好“瓢”?
- 怎么申请好用的企业邮箱?外贸公司企业邮箱托管
- 成为软件行业的福尔摩斯,还是苏格兰场?