vivado 导入IP核并生成bit流文件

2023-05-16

Xilinx版本:2021.2
PC系统:Windows10
前置要求:你需要有一个IP核,或者自己用vitis HLS生成IP核
1、首先解压IP核:
在这里插入图片描述
然后打开你的vivado软件,点击Create Project,之后设置项目名称以及项目位置。
在这里插入图片描述
选择RTL 项目
在这里插入图片描述
选择你的FPGA板子的型号,最后选择finish,等待工程的创建。
在这里插入图片描述
2、导入IP核,选择Create Block Design,并将名字名名为你工程的名字即可,之后点击OK
在这里插入图片描述
完成之后右侧就会出现大片空白,点击加号,此意为导入硬件IP核。
首先,因为本文所涉及的IP核都是基于zynq的,所以这里需要先添加一个zynq的IP核,本文选择了其中一个
在这里插入图片描述
选择完成之后如图所示,如果界面中出现Run Block Automation,点击运行即可,如果没有请忽略。
在这里插入图片描述
再然后就可以导入我们设计的IP了,如图:点击setting->IP->Repository再点击“加号”,找到你刚刚解压的IP核文件夹(第一张图),选择它
在这里插入图片描述
然后这里就会出现你所设计的IP核,点击OK。然后我们就将自己的IP核导入了库。
在这里插入图片描述
点击加号,搜索自己刚刚添加的IP核名称,并选择它
在这里插入图片描述
之后你就会发现,你的IP和已经导入了,如图:之后点击Run Connection Avtomation在这里插入图片描述
点击OK
在这里插入图片描述
结果如图:我们发现线已经连好
在这里插入图片描述
3、创建顶层:Create HDL wrapper
在这里插入图片描述
点击OK,保持默认
在这里插入图片描述
完成之后如图:
在这里插入图片描述
4、生成bit流文件:点击运行Generate Bitstream,其他若无特殊要求,默认即可。这里等的时间比较长,大约十几到三十分钟。如果IP比较大、比较麻烦,可能会更长。
在这里插入图片描述
直到出现该弹窗,表示bitstream已经生成
在这里插入图片描述
点击OK后如图所示:
在这里插入图片描述
之后在你的项目文件夹中打开add_vivado.runs->impl_1,就可以找到相应的.bit文件
在这里插入图片描述
如此,该IP核的bitstream流文件就完成了,就可以拿到FPGA用了。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

vivado 导入IP核并生成bit流文件 的相关文章

  • python 检查序列中的位是真还是假

    我想知道序列中的某个位是 1 还是 0 真或假 如果我有 11010011 的一些子序列 我如何检查第四个位置是 True 还是 False example 10010101 4th bit gt False 10010101 3rd bi
  • 分数在计算机中是如何表示的?

    由于计算机以 1 和 0 来思考 它们如何计算和表示诸如 7 50 之类的分数 我了解 Java 和 JavaScript 如果需要答案 您可以使用它们作为示例 Edit 我正在看这个麻省理工学院 Cormen 教授关于哈希的视频在 46
  • sizeof 以及当一个字节大于 8 位时?

    Since sizeof是一个运算符 为什么我们可以使用sizeof something 就像函数调用一样 什么时候一个字节不是8位 此上下文中的字节与无符号字符相同 并且可能大于 8 位 字节有可能小于8位吗 既然 sizeof 是一个运
  • GCC 位向前扫描以查找下一个设置位?

    我有一个uint64 t我想找到第一个设置位的索引 将其重置为零并找到下一个设置位 我如何知道何时终止 全零的 BSF 未定义 const uint64 t input source if 0 input int32 t setIndex
  • 寻找一个清晰简洁的网页来解释为什么随机数的较低位通常不是那么随机

    我正在整理一个内部 每个开发人员都应该知道 的 wiki 页面 我看到很多关于rand N 但没有一个网页可以解释这一切 例如 我很好奇这个问题是否仅特定于 C 和 Linux 或者是否也适用于 Windows C Java Net Pyt
  • SQL 检查位标志

    因此应用程序具有带有位标记的复选框 根据选择的复选框选项 应用程序会将其作为整数存储在数据库中 如何查询数据库中的 int 以检查特定位是否打开 关闭 Example Decimal Binary 16 00010000 208 11010
  • 填充八位字节字符串

    我有 65 个不同位长度的参数 我需要将它们填充为八位字节字符串 参数将连续填充在八位字节字符串中 例如 假设第一个参数是 1 位长 因此它将填充在八位位组字符串的第 1 个八位位组的第 0 位位置 现在第二个参数假设为 9 位长 因此 该
  • 如何获取从msb开始的特定位置上的位值?

    我以前从未使用过 Java 中的位 所以问题如下 我有 byte a 254 如何从该字节中获取一位 从 msb 位置开始 If position 0 it returns 1 If position 7 it returns 0 先感谢您
  • Java VS C# 中的 intBitsToFloat 方法?

    在 C 中将位转换为浮点数时 我得到了错误的数字 让我们使用这个位number 1065324597 In Java 如果我想从位转换为浮点数 我会使用intBitsToFloat method int intbits 1065324597
  • 表示数字的位数

    我正在尝试编写一个函数来返回小于 JavaScript 限制 2 53 1 的正整数位数 然而 我遇到了精度问题 并且希望避免使用大整数库 方法一 function bitSize num return Math floor Math lo
  • 如何从一个字节中获取某个位置的某个位的值?

    如果我有一个字节 该方法将如何检索某个位置的位 这是我所知道的 但我认为这不起作用 public byte getBit int position return byte ID gt gt position 1 where ID是我从中检索
  • 64 位应用程序启动 32 位进程

    我正在开发一个使用 Net 4 0 C 编码的 64 位应用程序 在此应用程序中 在某些时候 我需要启动另一个exe使用以下代码创建文件 l process StartInfo FileName sFullFilePath l proces
  • 左移 1 次 31 (1 << 31) 如何获得最大 int 值?以下是我的想法和网上找到的一些解释

    我对位操作相当陌生 我正在尝试弄清楚 1 首先我知道 1 1000000000000000000000000000 我知道它实际上是最小 int 值的补集 但是当我试图算出 1 1000000000000000000000000000000
  • 如何将文件读入整数数组

    在我的应用程序文档文件夹中 我有一个文件 我试图将其逐字节读入数组UInt8其中每个元素代表一个字节 我该怎么做呢 该文件恰好名为 Q1 dat 这是我不成功的尝试 func readArray gt Int if let arrayPat
  • 有没有办法通过联合访问各个位?

    我正在写一个C程序 我想要一个可以作为字符访问的变量 但我也可以访问其特定位 我想我可以使用这样的工会 typedef union unsigned char status bit bits 8 DeviceStatus 但编译器不喜欢这样
  • 将位值写入数据库

    我正在尝试将一个位值 真或假 写入数据库中名为 已处理 的字段中 我目前正在尝试通过传入 bool 值来实现此目的 但收到一条错误消息 指出无法从 varchar 类型转换为 bit 有人能看出我的逻辑是怎么回事吗 protected vo
  • 有人可以解释以下异或属性

    我的一个论坛提到给定的数组n数字 arr 0 n 1 以下条件成立 is the xor运算符 f l r f 0 r f 0 l 1 where f l r arr l arr l 1 arr r 我检查了上面的数组数量和不同的值l an
  • 为什么我们在FGPA / VHDL / VIVADO中使用REG?

    我正在使用 Xilinx 的 vivado 在 verilog 中进行编程 我想知道为什么我们使用某些输出reg 例如reg 3 0 encoder output我们使用它是因为我们的 16 到 4 编码器有 4 个输出 对吧 我假设我们使
  • C# 循环位左溢出问题

    我已经尝试让它工作好几天了 我已经阅读了一千个指南和人们的问题 但我仍然找不到正确的方法 我想做的是将这些位向左旋转 这是一个例子 原数 10000001 129我需要 00000011 3 我必须将这些位向左旋转一定的次数 这取决于用户输
  • 为什么 C# 中 bool 数据类型的大小不是只有 1 位?

    我刚刚学习 C 并深入研究数据类型 为什么不是一个bool数据类型大小为 1 位 看起来它只能保存两个值之一 true 或 false 那么这不是只占用 1 位空间来表示该值吗 是因为值的最小 可寻址 大小是一个字节 8 位 吗 这个帖子

随机推荐