【Verilog】加法器减法器的设计
一、要求
用16位的加法器设计一个加法器,减法器。当sub为1时,是减法;当sub为0时是加法。
二、原理
- 当sub为1的时候:
第一个加法器的进位输入为1,经过异或门,将b和sub按位取异或其实是将b按位取反,相当于进行的运算是: a + ~b + 1,得到的结果就是a-b。
- 当sub为0的时候:
第一个加法器的进位输入为0,经过异或门,将b和sub按位取异或,b的人值不变。相当于进行的运算是: a + b + 0,得到的结果就是a+b。
代码
module top_module(input [31:0] a,input [31:0] b,input sub,output [31:0]sum);
wire [31:0]xor_1;
wire [15:0]sum_1;
wire [15:0]sum_2;
wire cout_1,cout_2;
//xor xor_gate(xor_1,b,sub);//逻辑或,我们这里的设计不应该是逻辑或,应该是下边的按位取或
assign xor_1 = b^{32{sub}} ;//按位异或
assign sum = {sum_2,sum_1};
add16 u1_add16(.a(a[15:0]),.b(xor_1[15:0]),.cin(sub),.sum(sum_1),.cout(cout_1));
add16 u2_add16(.a(a[31:16]),.b(xor_1[31:16]),.cin(cout_1),.sum(sum_2),.cout(cout_2));endmodule
四、仿真波形
可以看出,当sub为0时,结果为a+b;当sub为1时,结果为a-b;
【Verilog】加法器减法器的设计相关推荐
- Verilog 加法器/减法器
目录 1位加法器 8位加法器 8位补码加减法器 32位补码加减法器 1位加法器 // //创建日期:2022/09/21 19:05:50 //设计名称:一位加法器 //课程名称:adder_1 // ...
- 超前进位加法器原理与设计
超前进位加法器原理与设计 一.行波进位加法器关键路径分析 N比特行波进位加法器可由N个全加器级联而成,电路的延迟包括门延迟和线延迟等,分析忽略线延迟. 单比特全加器门电路图 从输入a,b,cin到输出 ...
- 四位行波进位加法器_【HDL系列】Sklansky加法器原理与设计
Sklansky加法器是另一种并行高速的树形加法器,由Sklansky于1959年发表,该加法器对比特位进位层级分组,根据对不同比特组所有可能的进位计算所有可选的和与进位,所以也叫Conditiona ...
- HDLBits答案(8)_Verilog半加器、全加器和行波进位加法器原理与设计
半加器.全加器和行波进位加法器原理与设计 HDLBits链接 半加器 定义: 半加器用于计算2个单比特二进制数a与b的和,输出结果sum(s)和进位carry(c).在多比特数的计算中,进位c将作为下 ...
- 基于verilog贪吃蛇游戏设计
概述 基于verilog贪吃蛇游戏设计.使用verilog语言 小游戏主要分为以下几个模块:顶层模块.VGA显示模块.蛇身控制模块.苹果控制模块. 系统主要分为顶层模块.VGA显示模块.蛇身控制模块. ...
- (96)Verilog HDL:点灯设计
(96)Verilog HDL:点灯设计 1.1 目录 1)目录 2)FPGA简介 3)Verilog HDL简介 4)Verilog HDL:点灯设计 5)结语 1.2 FPGA简介 FPGA(Fi ...
- (50)Verilog HDL SPI发送设计
(50)Verilog HDL SPI发送设计 1.1 目录 1)目录 2)FPGA简介 3)Verilog HDL简介 4)Verilog HDL SPI发送设计 5)结语 1.2 FPGA简介 F ...
- (47)Verilog HDL UART接收设计
(47)Verilog HDL UART接收设计 1.1 目录 1)目录 2)FPGA简介 3)Verilog HDL简介 4)Verilog HDL UART接收设计 5)结语 1.2 FPGA简介 ...
- (46)Verilog HDL 自动饮料机设计
(46)Verilog HDL 自动饮料机设计 1.1 目录 1)目录 2)FPGA简介 3)Verilog HDL简介 4)Verilog HDL 自动饮料机设计 5)结语 1.2 FPGA简介 F ...
最新文章
- CDN的工作原理以及其中的一些技术-阿里
- Five ways to maximize Java NIO and NIO.2--转
- Java程序员的典型工作过程有哪些_Java程序员都要经历哪些阶段
- php $handle,laravel $kernel-handle 报错的解决办法_PHP开发框架教程
- AC_Dream 1211 Reactor Cooling
- [SAP2000] 简单桁架受力求解过程
- 7-3 欢迎参加贵工程2021年C语言程序设计大赛! (5 分)
- php 检查路劲是否存在,php 检查文件或目录是否存在代码总结
- 破解文件系统telnet密码【ZT】
- 2016: 神殿(求二进制1的个数最多的那个数)
- tomcat源码分析--初始化与启动
- 同一个事务里面对同一条数据做2次修改_MySQL事务与MVCC如何实现的隔离级别
- Android项目Tab类型主界面大总结
- matlab页面背景颜色改变为黑底白字
- Elasticsearch实战 | 必要的时候,还得空间换时间!
- ContextCapture | 无人机倾斜摄影技术在农村不动产确权中的应用
- python数字替换 携程校招
- python中的if判断,和while循环的用法
- 【无标题】c++日常练习(16)——从中序与前序遍历序列构造二叉树
- h5跳转微信公众号文章,小程序,任意站跳转链接制作方法?