为什么说Vivado是基于IP的设计?

电子说

1.2w人已加入

描述

Vivado是Xilinx公司2012年推出的新一代集成开发环境,它强调系统级的设计思想及以IP为核心的设计理念,突出IP核在数字系统设计中的作用。

01

什么是IP核

随着电子设计自动化工具功能的不断增强,以及半导体制造工艺的飞速发展,所设计的数字系统功能越来越复杂,所要求的设计周期越来越短,设计可靠性越来越高。对设计人员来说,不可能从头开始进行复杂数字系统的设计。目前普遍采用的方法是,在设计中尽可能使用已有的功能模块。人们把这些现成的模块通常称为知识产权(Intellectual Property,IP)核,也就是IP核。IP核可以理解为一个个具有特定功能的电路模块,通过这些模块间端口的互联完成功能复杂的数字系统设计。

02

IP核来源

①IP核可以来自FPGA生产厂商,例如,Vivado设计工具中的IP目录中就提供了丰富的IP核,可以直接使用。

②IP核还可以是第三方IP厂商提供。

③我们也可以将自己设计的,经过验证的电路模块封装成IP核,可以在后期设计中重复使用。

我们自己的设计包括:

RTL代码描述的电路。

HLS高层次综合工具的设计。

Syetem Generator工具生成的工程。

03

IP核如何使用

那么我们如何在Vivado中使用IP核呢?

有两种方式:

①一种是在RTL工程中,在我们的Verilog设计程序中调用IP核,我们叫做实例化IP。

寄存器

△ 实例化IP

②一种是在IP Integrator中,也就是使用IP集成器创建一个Block Design,可以将IP核,以图形化的方式添加到界面中,再通过端口的互联,像搭积木一样完成一些复杂的设计。

04

Vivado设计输入

在Vivado中,我们有多种方式来进行我们的设计输入。

RTL工程

通常使用的方法是创建RTL工程,使用硬件描述语言编写代码。所谓的RTL是Register Transfer Level 的缩写,也就是寄存器传输级。

寄存器

△ 创建RTL工程

我们在描述一个数字系统时,可以采用不同的抽象层级,抽象程度从高到低有系统级、算法级,RTL级,逻辑门级,以及开关级。

RTL级设计是描述数据信号是如何在寄存器中传输和处理的,一般都是通过硬件描述语言实现的。如,最常使用的Verilog 和VHDL,以及近年来,发展起来的System Verilog。

System Verilog实际上是Verilog的超集,可以被看做是Verilog的升级加强版,尤其加强了对设计验证的支持,在现代数字系统设计与验证广泛使用。

IP集成器

另一种方式就是通过IP集成器,可以将IP核添加到图形化界面中,再通过连线完成设计,这里的IP来自于IP目录中的IP核。

寄存器

△ 通过IP集成器创建工程

高层次综合(HLS)工具

Xilinx还推出了Vivado High-Level Synthesis (HLS)高层次综合工具,用户可以使用C或C++ 来对FPGA编程,实现算法开发,然后通过高级综合工具直接将C语言转换为硬件描述语言,可以大大加速我们的设计,提高开发效率。HLS会将转换后的RTL代码封装成IP,我们可以将其添加到IP 目录中,在Vivado设计输入时使用。

System Generator

Vivado还提供了System Generator 工具,该工具是基于MATLAB下的Simulink工具运行的。他将Xilinx开发的一些模块嵌入到了Simulink中,主要用于数字信号处理开发。在Simulink中设计完成后,可以生成HDL文件,包括测试文件,能够加快DSP系统的开发进度。

05

基于IP的设计

Vivado HLS的输出结果也可以导入到System Generator中,以模块化的方式使用。

Vivado中的IP packaging功能可以将我们的RTL代码,High Level Symthesis设计,System Generator模块以及IP集成器生成的设计封装成新的IP,放到IP目录中使用。

所以说,Vivado是基于IP的设计。

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分