FPGA Vivado调用IP核详细操作步骤

FPGA技术江湖 2026-06-23 08:34
FPGA Vivado调用IP核详细操作步骤图1

大侠好,欢迎来到FPGA技术江湖,江湖偌大,相见即是缘分。大侠可以关注FPGA技术江湖,在“闯荡江湖”、"行侠仗义"栏里获取其他感兴趣的资源,或者一起煮酒言欢。


今天给大侠带来Vivado调用IP核详细操作步骤,手把手教学,请往下看。话不多说,上货。


FPGA Vivado调用IP核详细操作步骤图2



首先咱们来了解一下vivado的IP核,IP核(IP Core):Vivado中有很多IP核可以直接使用,例如数学运算(乘法器、除法器、浮点运算器等)、信号处理(FFT、DFT、DDS等)。IP核类似编程中的函数库(例如C语言中的printf()函数),可以直接调用,非常方便,大大加快了开发速度。


FPGA Vivado调用IP核详细操作步骤图3

使用Verilog调用IP核


FPGA Vivado调用IP核详细操作步骤图4
FPGA Vivado调用IP核详细操作步骤图5

一、添加IP核
1. 点击Flow Navigator中的IP Catalog。
FPGA Vivado调用IP核详细操作步骤图6

2. 选择Math Functions下的Multiplier,即乘法器,并双击。
FPGA Vivado调用IP核详细操作步骤图7

 3. 将弹出IP核的参数设置对话框。点击左上角的Documentation,可以打开这个IP核的使用手册查阅。这里直接设置输入信号A和B均为4位无符号型数据,其他均为默认值,点击OK。
FPGA Vivado调用IP核详细操作步骤图8

 4. 稍后弹出的窗口,点击Generate。
FPGA Vivado调用IP核详细操作步骤图9

FPGA Vivado调用IP核详细操作步骤图10


二、调用IP核
1. 选择IP Sources,展开并选择mult_gen_0 - Instantiation Template - mult_gen_0.veo,可以打开实例化模板文件。如图,这段代码就是使用Verilog调用这个IP核的示例代码。
FPGA Vivado调用IP核详细操作步骤图11

 2. 将示例代码复制到demo.v文件中,并进行修改,最终如下。代码中声明了无符号型的4位变量a和b,分别赋初值7、8,作为乘数使用;无符号型的8位变量p,用于保存计算结果。clk为Testbench编写的周期20ns的时钟信号;mult_gen_0 mul(...)语句实例化了mult_gen_0类型的模块对象mul,并将clk、a、b、p作为参数传入。
FPGA Vivado调用IP核详细操作步骤图12

FPGA Vivado调用IP核详细操作步骤图13


三、行为仿真验证
以demo为顶层模块,启动行为仿真,即可输出波形。设置a、b、p显示为无符号十进制(右击选择Radix - Unsigned Decimal)。如图,可以看到a=7, b=8,第一个时钟上升沿后p = a * b = 56。
FPGA Vivado调用IP核详细操作步骤图14


FPGA Vivado调用IP核详细操作步骤图15

框图(Block Design)中调用IP核

FPGA Vivado调用IP核详细操作步骤图16
FPGA Vivado调用IP核详细操作步骤图17

这里举一个简单的例子,通过调用乘法器IP核,产生一个能计算平方的新模块。


FPGA Vivado调用IP核详细操作步骤图18

一、创建框图设计文件
1. 选择Flow Navigator中的Create Block Design,创建一个框图设计文件。
FPGA Vivado调用IP核详细操作步骤图19
2. 输入文件名并点击OK。
FPGA Vivado调用IP核详细操作步骤图20

FPGA Vivado调用IP核详细操作步骤图21


二、添加IP核
1. 在框图空白处右击,选择Add IP。
FPGA Vivado调用IP核详细操作步骤图22

2. 可以直接搜索需要的IP核,双击确认。
FPGA Vivado调用IP核详细操作步骤图23

3. IP核即可被添加进来,可以用导线将其与其他器件连接。
FPGA Vivado调用IP核详细操作步骤图24

4. 双击这个IP核符号,可以打开参数设置对话框。点击左上方的Documentation可以查看IP核的手册。这里将输入的A、B均设置为4为无符号型,其他为默认值,点击OK确认。 
FPGA Vivado调用IP核详细操作步骤图25

FPGA Vivado调用IP核详细操作步骤图26


三、绘制电路
1. 右击Diagram窗口空白处,选择Create Port。
FPGA Vivado调用IP核详细操作步骤图27

2. 弹出窗口中,设置端口a为4位输入信号,并点击OK。
FPGA Vivado调用IP核详细操作步骤图28

3. 将a与A、B都连接起来。
FPGA Vivado调用IP核详细操作步骤图29

4. 同样的方法,添加一个8位输出端口p,与P连接。
FPGA Vivado调用IP核详细操作步骤图30

5. 再添加一个clk时钟输入端口,与CLK连接。
FPGA Vivado调用IP核详细操作步骤图31

6. 最终结果如图。
FPGA Vivado调用IP核详细操作步骤图32

FPGA Vivado调用IP核详细操作步骤图33


四、仿真测试

1. 右击框图设计文件design_1,选择Create HDL Wrapper。

FPGA Vivado调用IP核详细操作步骤图34

2. 选择第二项并点击OK。
FPGA Vivado调用IP核详细操作步骤图35

3. 打开生成的design_1_wrapper.v文件如图,红框中的代码用来调用前面画好的Block Design模块。
FPGA Vivado调用IP核详细操作步骤图36

4. 在design_1_wrapper.v文件中,添加Testbench代码即可进行行为仿真。修改代码如下,给输入信号a赋初值为8,clk连接到Testbench生成的时钟信号c上。
FPGA Vivado调用IP核详细操作步骤图37

 5. 在Simulation Sources文件夹下,设置design_1_wrapper.v为行为仿真的顶层文件(右击,选择Set as Top)。
FPGA Vivado调用IP核详细操作步骤图38

启动行为仿真,最终输出的波形如下。可以看到,在clk的第一个上升沿后,就有 p = a*a = 64,即实现了平方运算。

END


往期精选 

FPGA Vivado调用IP核详细操作步骤图39 
FPGA Vivado调用IP核详细操作步骤图40 


FPGA Vivado调用IP核详细操作步骤图41
FPGA Vivado调用IP核详细操作步骤图42

FPGA技术江湖广发江湖帖

无广告纯净模式,给技术交流一片净土,从初学小白到行业精英业界大佬等,从军工领域到民用企业等,从通信、图像处理到人工智能等各个方向应有尽有,QQ微信双选,FPGA技术江湖打造最纯净最专业的技术交流学习平台。


FPGA技术江湖微信交流群

FPGA Vivado调用IP核详细操作步骤图43

加群主微信,备注姓名+公司/学校+岗位/专业进群


FPGA技术江湖QQ交流群

FPGA Vivado调用IP核详细操作步骤图44

备注姓名+公司/学校+岗位/专业进群

FPGA Vivado调用IP核详细操作步骤图45

声明:内容取材于网络,仅代表作者观点,如有内容违规问题,请联系处理。 
FPGA IP
more
李彦宏,又一个IPO要来了
ISSCC|IEDM|JSSC|HotChips全套资料(更新至2026)
河南最火景区,要去IPO了
上海存储芯片公司,拟IPO!
FPGA Vivado调用IP核详细操作步骤
三年亏损3.29亿,国产端侧AI芯片龙头二冲港股IPO
Qwen-RobotManip 登顶 EBench:多维评测工具助力能力诊断
DeepSeek以4000亿元估值完成首轮融资;SK海力士应届生招聘取消学历要求;库克称苹果iPhone等将因内存短缺涨价;微信支付推AI专属卡...
消息称第二代 iPhone Air 将补上双摄,2027 年春季发布
3年亏9亿!深圳芯片公司冲刺IPO!
Copyright © 2025 成都区角科技有限公司
蜀ICP备2025143415号-1
  
川公网安备51015602001305号