首页 > 其他分享 >Xilinx VIvado学习-01 数值处理之减法器

Xilinx VIvado学习-01 数值处理之减法器

时间:2023-10-23 23:33:08浏览次数:42  
标签:减法器 sub clk unsigned sys VIvado 01 carry un

Verilog 数值处理,在处理减法的时候,需要注意溢出问题。

实例:a-b=c

 

module un_sub(
input unsigned [7:0] a,
input unsigned [7:0] b,
output [7:0]  sub,
output carry
    );
 assign {carry,sub}=a-b;

endmodule
View Code

仿真代码:

`timescale 1ns / 1ps
//////////////////////////////////////////////////////////////////////////////////
// Company: 
// Engineer: 
// 
// Create Date: 2023/10/23 23:08:10
// Design Name: 
// Module Name: un_sub_tb
// Project Name: 
// Target Devices: 
// Tool Versions: 
// Description: 
// 
// Dependencies: 
// 
// Revision:
// Revision 0.01 - File Created
// Additional Comments:
// 
//////////////////////////////////////////////////////////////////////////////////


module un_sub_tb;
reg           sys_clk;
reg           unsigned [7:0] a;
reg           unsigned [7:0] b;
wire          signed [8:0] c;
wire   [7:0] sub;
wire   carry;
initial  sys_clk =1;
always #1 sys_clk = ~sys_clk;
//a = 8'h7f;
//b = 8'h2;

un_sub u_sub(
.a (a),
.b (b),
.sub (sub),
.carry(carry)
);
initial begin
a=0;b=0;
#2
a=49;b=73;

#2
a=116;b=108;
#2
a=61;b=108;
#2
a=63;b=125;
end
assign c = a-b;
  
endmodule
View Code

Vivado仿真结果如下:

 

 

 两个N位无符号数相减 ,差用N+1位有符号数表示时,与实际结果相符。

标签:减法器,sub,clk,unsigned,sys,VIvado,01,carry,un
From: https://www.cnblogs.com/gym-2017/p/17783764.html

相关文章

  • 01_移除链表元素
    移除链表元素题意:删除链表中等于给定值val的所有节点。示例1:输入:head=[1,2,6,3,4,5,6],val=6输出:[1,2,3,4,5]示例2:输入:head=[],val=1输出:[]示例3:输入:head=[7,7,7,7],val=7输出:[]203.移除链表元素实现代码如下:(本代码是通过带头节点的单链表来实现......
  • [20231013]为什么刷新缓存后输出记录顺序发生变化3.txt
    [20231013]为什么刷新缓存后输出记录顺序发生变化3.txt--//当年提的问题,链接http://blog.itpub.net/267265/viewspace-2763181/=>[20210316]为什么刷新缓存后输出记录顺序发生变化.txt,--//正好别人问我,顺便我重复看了一下,顺便解答这个问题,实际上也许解答不对,许多行为我仅仅是猜测......
  • [20231013]rename IDL_UB1$的恢复.txt
    [20231013]renameIDL_UB1$的恢复.txt--//看了https://www.anbob.com/archives/7545.html链接,对方rename操作,导致无法建立表操作.--//idl_ub1$表是用来存储PL/SQL的代码单元的,包括DIANA等,IDL在这里代表InterfaceDefinitionLanguage.--//这个对象的含义可以从Ixora找到一点提示......
  • [20231016]增加字段与统计分析问题.txt
    [20231016]增加字段与统计分析问题.txt--//oracle从12c引入了volatiletables概念,所谓volatiletables可以理解为频繁DML的表,通过sys.optstat_snapshot$了解生产系统验--//证一些dml比较多的表的操作情况。但是通过修改表结构,增加字段也可能在特定情况下触发统计分析,自己通过......
  • [20231019]rename IDL_UB1$的恢复测试前准备.txt
    [20231019]renameIDL_UB1$的恢复测试前准备.txt--//前几天看了https://www.anbob.com/archives/7545.html链接,对方renameIDL_UB1$表操作,导致无法建立表操作使用包的语句都有问题.--//测试时遇到许多其他事情打断了恢复工作,最后我仅仅简单尝试了修改数据字典obj$的恢复方式。--......
  • 基于ZCU104的PS和PL数据交互例程(二):vivado中封装现有工程成IP
    基于ZCU104的PS和PL数据交互例程(二):vivado中封装现有工程成IP设计DUT功能正常创建一个vivado工程,添加一个dut.v的文件功能:读入100个输入数据,每个数据依次加0,1,2,...,然后输出。比如输入是0到99,则输出是0,2,4,到198,如下图所示。状态机:时序图:端口情况:创建vivado工程正常创建新......
  • Visual Studio 2017标准库、 Windows SDK 10标准库目录
    VisualStudio2017标准库VC\Tools\MSVC\14.16.27023\include目录包含了VisualC++14.16.27023版本的标准库头文件(也就是VC++2017版本),包括、、等常用头文件。这些头文件定义了各种数据类型、函数、类等,供程序员使用。如果你使用VisualStudio2017或更高版本进行开发......
  • 01_jmeter安装与说明
    一、jmeter简介JMeter,一个100%的纯Java桌面应用,由Apache组织的开放源代码项目,它是功能和性能测试的工具。具有高可扩展性、支持Web(HTTP/HTTPS)、SOAP、FTP、JAVA等多种协议的特点。官方网站:https://jmeter.apache.org/二、Jmeter安装与配置1、本机配置好Java环境变量2......
  • 01-蓝牙基础知识
    目录一.蓝牙广播1.蓝牙信道一.蓝牙广播1.蓝牙信道低功耗蓝牙一共有40个信道,范围从2402MHz-2480MHz每2MHz一个信道.......
  • 01. 网络基础
    一、什么网络通信  计算机网络把分布在不同地理区域的计算机与专门的外部设备用通信线路互联成一个规模大、功能强的网络系统,从而使众多的计算机可以方便的互相传递信息、共享硬件、软件、数据信息等资源。网络编程直接或间接地通过网络协议与其它计算机实现数据交换,进行通信。......