Vivado 2017封装自定义IP Core

  使用Vivado2017.3自定义IP Core。通常情况下,我们做设计采用模块化设计,对于已经设计好的一部分模块功能,就可以直接拿来调用,IP Core就是这样来的,一般来说我们看不到IP Core的源码,这也是Xilinx为了保护作者知识产权,对IP Core进行加密。对我们开发者而言,我们也可以自定义封装自己的IP Core,需要用的这部分功能的时候,只需要直接添加IP Core进来就行了,来一起搭起你的数字积木吧!

  将你要封装的代码建立成一个工程,然后点击如图所示setting。 

  点击IP——Package,图中所标注的都是可以编辑的,这里可以自定义库名等,默认也可。

  设置完成后,回到主界面,在主菜单上方点击tools——Create and Package New IP

  根据提示一步步走下去。

  第一个是将当前工程创建成IP

  第二个是将指定目录下的工程创建成IP

  第三个是封装成SOC部分的IP

  这里因为我选择的是第二个,因为的我是封装其他工程中的代码,一般情况下选择第一个。按照流程走就可以了。

  设置路径,工程名,

  最后点击finish,创建工程。

  在工程主界面,点击Identification中可以设计IP Core名称和版本描述。

  这里直接跳到最后一步,点击Package IP,然后就封装成功了。

  需要你封装的IP时,主界面setting——IP——Repository中添加你封装好的文件夹路径。

  添加完成后,点击IP Catalog,搜索你的IP Core,双击就可以直接调用了。

  接下来的流程就和调用其他IP时候使用的相似的。我这里封装的是一个HDMI的代码,因为代码比较多,而且使用VHDL语言写的,但是在Verilog HDL的工程中也可以调用,所以为了便捷,把它封装成一个IP Core。

  点击Generate就生成,可以直接使用了。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏嵌入式程序猿

带你走进飞思卡尔Kinetis Flashloader (2)

这一节主要介绍下在主机和Kinetis Flashloader 之间的数据包传输协议,包括不同类型的包,带数据的命令包和不带数据的命令包。 Flashload...

36380
来自专栏木可大大

初识Python

注意:Python中没有分号,而是用换行符替换;没有{},而使用冒号替换;构造函数中的self是显示出现的等,除此之外,Python和Java存在 很多相似的地...

568110
来自专栏hbbliyong

Visual Studio 2013 添加新项缺失[ADO.NET 实体数据模型]解决方法

      之前使用在Vs2012下使用SQLite+EF建的项目在VS2013下不能运行了,我把以前的*.edmx删除后准备重新添加以下 .可是,在添加新项目...

41260
来自专栏开发 & 算法杂谈

Linux之守护进程理解(2)

1、屏蔽一些有关控制终端操作的信号 防止在守护进程没有正常运转起来时,控制终端受到干扰退出或挂起。 2、脱离控制终端,登录会话和进程组 登录会话可以包含多...

12630
来自专栏蓝天

nohup、&、setsid、fork和fg、bg究竟有啥区别?

在后台运行的进程不一定是守护进程!一个进程要成为守护进程,必须做到以下两点:

18720
来自专栏weixuqin 的专栏

使用U盘安装 OS X 的坑

339100
来自专栏乐百川的学习频道

做一个运行Python文件的Atom插件

最近在学习Python,自然也安装了Atom编辑器的一些Python插件。有一个插件名字叫做atom-python-run,作用很简单,就是按F5运行当前Pyt...

30270
来自专栏张善友的专栏

VS 2010 SP1的一个功能(添加可部署依赖项)

使用“添加可部署的依赖项”对话框,您可以将程序集(DLL 文件)添加到网站项目或 Web 应用程序项目。 在部署网站或应用程序时,将文件包含在部署项目中。 如果...

19670
来自专栏李蔚蓬的专栏

解决 | 此数据库文件跟当前sql server实例不兼容 & sql server2008无法连接到(local)

最近在搞ASP.NET,因实验室VS版本跟PC不一样可能,拷回来一打开就这样子:

15520
来自专栏Core Net

ASP.NET Core 2.0 : 九.从Windows发布到CentOS的跨平台部署

37360

扫码关注云+社区

领取腾讯云代金券