Vivado 自定义AXI IP核

一、引言

        本文为个人理解,用于记录学习经验,有任何错误可以指出讨论。

二、创建AXI IP核(记得芯片选型选择对应的)

可以选择覆盖现有的IP核(更新IP核)。

Interface Type : Lite,简化版AXI4接口,用于数据量较小的存储映射通信(BRAM);

                         Full,高性能存储映射接口,用于数据量较大的存储映射通信(DDR);

                         Stream,高速数据流传输,非存储映射接口。

其他的设置默认即可,详细可以看其他文章。

下一步就是选择“Add IP to the repository”添加本工程。

然后IP库里面就会有用户专属的IP库了。

右键直接选择“Edit in IP Packager”编辑IP核,路径自行选择,默认就是本工程的路径。

Sources中顶层模块用户可以添加输入输出和参数,子模块可以添加用户的逻辑代码。

打开顶层模块,此处添加用户的参数,该管脚为输出信号是PL端的,后文的slv_reg中的是才是受PS端控制的。

这里添加用户输入输出管脚。

这里添加用户新添加的输入输出例化。

这里可以添加用户逻辑代码,也可以在子模块中添加,自行选择。

再到子模块这里,信号定义同上。

此处可以添加逻辑代码的例化,后文会再单独创建一个子模块专门用来写逻辑代码。

此处的例化作用是将led开关和闪烁频率存入寄存器中,本ip核共定义了4个寄存器,相当于AXI的4条数据线。

led开关一位就够用了,闪烁频率我是直接给到32位。

注意:存入寄存器的是输入信号,由PS端提供数据。

然后就是编写逻辑代码了,此代码很简单,不多赘述。

点击左边的“Package IP”封装即可

  • 11
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
Vivado中创建自定义IP核有以下几个步骤: 1. 打开Vivado软件并创建一个新的工程。 2. 在工程导航面板中,右键点击"Sources"并选择"IP",然后选择"Create/Import"。 3. 在弹出的对话框中,选择"Create a new AXI4 peripheral"。 4. 输入IP核的名称和其他必要的信息,然后点击"Next"。 5. 在"Ports"选项卡中,定义IP核的输入和输出端口。根据实际需求,添加所需的接口并为每个接口指定名称、宽度和方向。 6. 在"Cores"选项卡中,根据需要选择要包含在IP核中的功能模块。 7. 在"Parameters"选项卡中,可以定义IP核的参数,允许用户动态配置IP核的行为。 8. 在"Address Editor"选项卡中,为IP核的寄存器分配地址空间。根据需要,可以手动指定地址范围,或者使用自动地址分配功能。 9. 完成IP核的创建后,可以在Vivado的设计界面中使用该IP核。可以将其添加到设计中,然后生成比特流文件以进行FPGA实现。 总之,通过在Vivado中创建自定义IP核,可以满足特定的设计需求,并提高开发效率。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* *3* [Vivado自定义IP核](https://blog.csdn.net/mengzaishenqiu/article/details/130048317)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 100%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值