Xilinx Vivado定制IP核调用和除法器IP核的latency和resource分析
加入定制的乘法IP核,必须在sources右键,用Add Directories加入才完整
加入文件夹后如下图:
测试代码与主程序模块连接端口初学者容易出现错误
输入端口:从模块内部来讲,输入端口必须为线网数据类型,从模块外部来看,输入端口可以连接到线网或者reg数据类型的变量。
输出端口:从模块内部来讲,输出端口可以是线网或者reg数据类型,从模块外部来看,输出必须连接到线网类型的变量,而不能连接到reg类型的变量。
(125条消息) [初学Verilog笔记]模块输入输出_qq_34670678的博客-CSDN博客 https://blog.csdn.net/qq_34670678/article/details/106432116
我的错误是某一个英文的“:”不小心写成了中文的“:”
(125条消息) Modelsim中出现Syntax error, unexpected non-printable character错误_天津大学–神经网络方向–在读研究生的博客-CSDN博客 https://blog.csdn.net/weixin_43257368/article/details/90717109
观察下面的仿真的顶层模块与测试模块是否正确
以下部分参考赛灵思IP除法器官方文档《pg151-div-gen》
除法器 IP LutMult
鼠标左键是Run
鼠标右键是Reset
latency = 8,实际为7
latency = 1
从功能仿真上看到正确输出
综合后仿真也基本一样
选latency=4
右键所选的div_gen_900_synth_1, 选sythesis Run Properties, 再选 report
选latency=4 得出下面的资源利用情况
或者
report_utilization -hierarchical
report_utilization -name div_gen_900_1
除法器 IP Radix2
latency = 1
latency = 8
根据实际情况修改位数:
div_gen_900除法器 10位除12位
mult_gen_32_12乘法器 32位乘12位
仿真验证
现在进一步将程序贴近实际,
div_gen_10_12 是10位数除12位数
mult_gen_5 是5倍运算
mult_gen_20 是20倍运算
mult_gen_25 是25倍运算
mult_gen_32_8 是32位数乘8位数
将div_gen_10_12的除数作为乘数代入 mult_gen_32_8
仿真图
结果正确,但除法耗时太长,调成1
assign相当于一条连线,将表达式右边的电路直接通过wire(线)连接到左边,左边信号必须是wire型。
(125条消息) Verilog赋值语句_FireBird的专栏-CSDN博客_verilog赋值 https://blog.csdn.net/firstlai/article/details/52712042
寄存器的赋值方式
reg [9:0] set_div;
always @ (negedge reset or posedge clkout)
beginset_div <= 10'd900;
两点: Array信号必须标明维数,set_div值必须在always块中赋值,不能直接用“=”在always语句块外赋值。
顶层模块内部用reg赋值后,功能仿真正确
可以看到除法器似乎立即生效,输入数据分别在下降沿和上升沿更新,均在上升沿后间半个周期左右除法完成。
风险一、
这里把除法器输入有效信号始终维持为高,并未细化处理,可能存在风险。
Xilinx Vivado定制IP核调用和除法器IP核的latency和resource分析相关推荐
- 微信白名单服务器ip地址,调用接口的IP地址不在白名单中
senparclsx 15 个回复 • 查看 457 次 • 57天前 sy87468118 15 个回复 • 查看 375 次 • 2天前 magiboy 13 个回复 • 查看 732 次 • 1 ...
- Xilinx VIVADO 中 DDR3(AXI4)的使用(1)创建 IP 核
1.前言 DDR3 SDRAM 简称 DDR3,是当今较为常见的一种储存器,在计算机及嵌入式产品中得到广泛应用, 特别是应用在涉及到大量数据交互的场合,比如电脑的内存条.DDR3的时序相当复杂,对DD ...
- Xilinx vivado 常用IP核使用
目录 1. Accumulator 12.0 2. Aurora 8B10B 11.1 3. Clocking Wizard 3.1. 时钟资源 4. Divider Generator 5.1 5. ...
- vivado中复数乘法器的ip核调用及其仿真的详细介绍
复数乘法器的ip核可在下图的中找到 ip核的输入配置和输出配置如下图所示 当我们在选择multplier construction的Use LUTs选项时,选择的是三次乘法的算法,相比于四次 ...
- Vivado定制DDR3 IP核注意事项
1.1 Vivado定制DDR3 IP核注意事项 1.1.1 本节目录 1)本节目录: 2)本节引言: 3)FPGA简介: 4)Vivado定制DDR3 IP核注意事项: 5)结束语. 1.1.2 本 ...
- Xilinx vivado DDR3 MIG IP核中系统时钟、参考时钟解释及各个时钟的功能详解
注:在使用xilinx的MIG 核时,会有许多关于时钟的配置,时间长了容易混淆,特意记录一下为以后快速回忆,如有错误请留言指正. 0.先贴出来DDR3的时钟树,这个图展示了参考时钟设置的强制规定. 1 ...
- 调用IP核、移植/复制IP核以及解决IP核被锁住/红锁问题(基于vivado)
在上一篇的文章中:https://blog.csdn.net/weixin_44502554/article/details/126228405?spm=1001.2014.3001.5502 讲述了 ...
- 基于 xilinx vivado 的PCIE ip核设置与例程代码详解
1.概述 本文是用于总结PCIE ip例程的学习成果.主要是从ip的设置,ip核的例程代码构成及其来源两方面介绍pcie的使用情况. 2.参考文档 <pg054-7series-pcie> ...
- 基于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 ...
最新文章
- linux下IPython的安装方法
- python 每分钟运行一次_调度Python脚本以准确地每小时运行一次
- Jquery之编辑不可修改
- 6001. mavlink 编译与移植
- 订单金额等字段设置decimal时,要禁止为负数
- linux 深入检测io详情的工具iopp
- Fiddler抓取https如何设置
- 如何获取类(接口)的成员
- C#递归拷贝文件夹下文件以及文件夹
- python 找出日期_Python-在字符串中查找日期
- c语言中judge的用法,judge的用法
- CodeRunner激活
- uclinux编译 心得一
- 计算机音乐夜空,星空音乐在线点播系统
- Java核心类库(一)
- Linux定时任务与开机自启动脚本(cron与crontab)
- 简单利用Dialog实现Ios从底部弹出的效果,合QQ空间里面的发表说说弹出拍照的效果类似
- RabbitVCS:ubuntu下svn可视化工具的安装和使用
- 魔兽8.0最新服务器人口普查,魔兽世界人口普查8.0版最新资讯!赶紧来了解!
- UE4 | 蓝图 | 闪现和TP的实现
热门文章
- 【强化学习探索01】Win10 下gym安装
- 《真金》孙溟㠭篆刻作品
- 【干货】外贸业务员的客户开发信为什么总是进老外垃圾邮箱?
- dede文章命名规则改变方法
- 用excel进行设计(91):Excel表格的视觉设计技巧
- 熟练掌握R语言的Meta分析全流程和不确定性分析,并结合机器学习等方法讲解Meta分析在文献大数据的延伸应用
- 计算机毕业设计选题怎么办?毕设开题不会怎么办?毕业设计选题指南
- JQuery 向下展开收起动画( slideDown(),slideUp() )
- 解决Matlab 界面中文乱码问题,亲测有效
- android 读取wps_Android 实现 调用 WPS Office手机版接口