vivado中复数乘法器IP核使用小结

添加ip核

进入工程,点击IP Catalog,在弹出的窗口中点击数学功能–math functions,选择multipliers–complex multiplier,即复数乘法器。

根据设计需求对IP核进行修改

双击ip核,进行参数设置。

我们平时需要进行的参数设置为ip核名字,输入位宽,此处命名复数乘法器ip核为mult,设置两个乘数的位宽为12。
点击implementation details

可以看出,输入乘数[11:0]为实部,[27:16]为虚部,输出结果[24:0]为实部,[56:32]为虚部。
点击乘法器ip核下.v文件,查看例化

// This empty module with port declaration file causes synthesis tools to infer a black box for IP.
// The synthesis directives are for Synopsys Synplify support to prevent IO buffer insertion.
// Please paste the declaration into a Verilog source file or add the file as an additional source.
(* x_core_info = "cmpy_v6_0_15,Vivado 2018.2" *)
module mult(aclk, s_axis_a_tvalid, s_axis_a_tdata, s_axis_b_tvalid, s_axis_b_tdata, m_axis_dout_tvalid, m_axis_dout_tdata)
/* synthesis syn_black_box black_box_pad_pin="aclk,s_axis_a_tvalid,s_axis_a_tdata[31:0],s_axis_b_tvalid,s_axis_b_tdata[31:0],m_axis_dout_tvalid,m_axis_dout_tdata[63:0]" */;input aclk;input s_axis_a_tvalid;input [31:0]s_axis_a_tdata;input s_axis_b_tvalid;input [31:0]s_axis_b_tdata;output m_axis_dout_tvalid;output [63:0]m_axis_dout_tdata;
endmodule

输入信号位宽为32位,输出为64位,将输入乘数的虚部和实部按照相应的格式放进一个32位的寄存器中,其余位补零,然后输入至乘法器ip核中。

调用及结果验证

按照具体的设计对复数乘法器进行调用。

mult mult_r(.aclk                (clk),.s_axis_a_tvalid     (r_valid_r),.s_axis_a_tdata      (r_data),.s_axis_b_tvalid     (c_valid_r),.s_axis_b_tdata      (c_data),.m_axis_dout_tvalid  (weight_valid_1),.m_axis_dout_tdata   (out_data_1));

添加testbench文件,进行仿真模拟。

部分代码如下

    initialbeginvalid_1 <= 1'b1;      //产生参考信号r_re    <= 12'b000000000001;r_im    <= 12'b000000000110;valid_2 <= 1'b1;      //产生待校准信号c_re    <= 12'b000000000010;c_im    <= 12'b000000000010;end
      r_data[11:0]     <= r_data_re_r;r_data[15:12]    <= 4'b0000;r_data[27:16]    <= r_data_im_r;r_data[31:28]    <= 4'b0000;c_data[11:0]     <= c_data_re_r;c_data[15:12]    <= 4'b0000;c_data[27:16]    <= c_data_im_r;c_data[31:28]    <= 4'b0000;


此处进行了两次复数乘法运算,vivaido仿真结果如上,matlab测试验证如下:

结果正确可行,其他细节待究,有什么问题可评论私信一起讨论。

vivado中复数乘法器IP核使用小结相关推荐

  1. vivado中复数乘法器的ip核调用及其仿真的详细介绍

    复数乘法器的ip核可在下图的​​​​​中找到 ip核的输入配置和输出配置如下图所示 当我们在选择multplier construction的Use LUTs选项时,选择的是三次乘法的算法,相比于四次 ...

  2. Vivado中FFT9.1 IP核的使用(1)

    目录 1.xilinx FFT IP介绍 2.FFT IP接口介绍 3.xilinx FFT IP的仿真测试 4.修改 5.参考: 1.xilinx FFT IP介绍 1)正向和反向复数FFT,运行时 ...

  3. Vivado中的FFT IP核使用(含代码)

    本文介绍了Vidado中FFT IP核的使用,具体内容为:调用IP核>>配置界面介绍>>IP核端口介绍>>MATLAB生成测试数据>>测试verilog ...

  4. Vivado中RTL封装IP流程

    Vivado中RTL封装IP流程 前言 本文记录自己将RTL代码封装成IP的流程,以供之后查阅使用.最近一个月在做一个数据仲裁与转发的项目,已经完成功能仿真,准备将其封装成IP在Block Desig ...

  5. 【以前】ModelSim中仿真Xilinx IP核

    先对题目进行说明:ModelSim本身是一个独立的仿真环境,不需要依赖其他的软件.这里所说的" ModelSim仿真XilinxIP核"是指单独运行ModelSim 进行仿真,而不 ...

  6. vivado使用自带IP核和创建自己定义的IP核

    任务:使用vivado自带IP和创建IP 目的:学会使用Vivadao相关的IP组件 步骤: 1.使用自带IP 工程创建好之后,选择IP Catalog.软件就会列出自带的,自带的IP核有很多种,选择 ...

  7. Vivado 自定义VHDL的IP核

    自定义VHDL的IP核 本文介绍基于VHDL语言的IP核的创建. 说明:使用软件版本为Vivado 2019.2 文章目录 自定义VHDL的IP核 一.创建IP核 1.1 创建IP核管理工程 1.2 ...

  8. 基于xilinx vivado的GTX/GTP ip核设置与例程代码使用详解

    本文目录 1 概述 2 参考文档 3 GTX的IP设置 3.1 本例程使用环境 3.2 GTX IP界面的设置情况 3.2.1 GTX IP设置第1页 3.2.2 GTX IP设置第2页 3.2.3 ...

  9. Vivado 实现逆序ip核,AXI4-Lite Interface(vcu118,HLS级开发)

    实验环境 1.软件:Vivado HLS 2017.04,Vivado 2017.04,Vivado SDK2017.04 2.硬件:Xilinx Virtex UltraScale+ FPGA VC ...

最新文章

  1. hibernate4中取得connection的方法
  2. java中相同名字怎么声明,Java中,同一个类中的两个或两个以上的方法可以有同一个名字,只要他们的参数声明不同即可...
  3. SQLite - 下载安装与使用(Command Line Shell For SQLite)
  4. 修改注册表添加信任站点及启用Activex控件(转载)
  5. freemarker配置
  6. jquery 使用方法
  7. array remove java_how to remove array from another array in javascript
  8. 浙江丽水学院计算机专业,2019丽水学院专业排名
  9. 自适应图片大小的弹出窗口(3 中方法)
  10. Sandy Bridge 12款双核心产品正式入列 Core i7-2620M Core i5-2540M
  11. 数据库errno: 1045的解决办法
  12. 数值的整数次方(代码的完整性)
  13. SVN汉化包安装后,没有出现对应的语言选项问题解决(附SVN1.12.1汉化包下载地址)
  14. 成不了AI高手?因为你根本不懂数据!听听这位老教授多年心血练就的最实用统计学...
  15. 微软drive服务器,OneDrive:微软云存储服务
  16. 基于C#的简单聊天软件开发
  17. 【小程序】安卓端InnerAudioContext无法销毁
  18. 推荐几款拍证件照的小程序
  19. 实时消息传输协议 RTMP(Real Time Messaging Protocol)
  20. android 键盘遮挡

热门文章

  1. 2023最新Joe素颜执念修改版模板源码+Typecho内核开发/UI大气高端
  2. DDR的概念解读-三大关键技术
  3. Godot Engine:DLC流程
  4. Informatica的操作流程
  5. 自动控制原理笔记-频率响应法-稳定裕度
  6. 新高考如何选科?职引专家问答为您答疑解惑
  7. silicompressor视频压缩
  8. python画分布、密度等图形
  9. matlab如何更简单表示单位阶跃信号,matlab单位阶跃函数
  10. 哈尔滨市中省直单位医疗保险制度细则出台