全球最实用的IT互联网信息网站!

AI人工智能P2P分享&下载搜索网页发布信息网站地图

当前位置:诺佳网 > 电子/半导体 > 可编程逻辑 >

将RTL模块添加到Block Design的步骤

时间:2023-06-11 16:27

人气:

作者:admin

标签: RTL  Vivado  触发器 

导读:使用Vivado Block Design设计解决了项目继承性问题,但是还有个问题,不知道大家有没有遇到,就是新设计的自定义 RTL 文件无法快速的添加到Block Design中,一种方式是通过自定义IP,但是一...

绪论

使用Vivado Block Design设计解决了项目继承性问题,但是还有个问题,不知道大家有没有遇到,就是新设计的自定义 RTL 文件无法快速的添加到Block Design中,一种方式是通过自定义IP,但是一旦设计的文件有问题就需要重新修改,同时需要控制接口时候还需要在AXI总线模板基础上进行修改,再同时繁琐的步骤也让人“望而却步”。下面介绍一种简单的方式。

4d5470fc-0830-11ee-962d-dac502259ad0.png

我目前使用的是 Vivado 2019.1、2020.2,但据我所知,此功能几乎适用于 Vivado 的所有版本(如果不正确,请随时在后台更正)。

创建 Vivado 项目

为了开始这个例子,我创建了一个基于 Zynq 的新 Vivado 项目(这只是我的例子,但这个项目的内容并不特定于任何特定的 FPGA 开发板),同时这个项目中包括一个通过AXI-Lite控制的自定义RTL。

添加设计文件并编写自定义 RTL

不用于仿真目的的自定义 RTL(即测试文件)都被视为 Vivado 中的设计源。使用 Flow Navigator 中的Add Sources选项并选择Add or create design sources ,然后单击 Next。

4dc46434-0830-11ee-962d-dac502259ad0.png4e07b45a-0830-11ee-962d-dac502259ad0.png

我们创建一个名为D_flipflop的新文件并添加了以下逻辑:

moduleD_flipflop(
inputclk,
inputreset,
inputd_in,
outputregq_out
);

always@(posedgeclk)
begin
if(reset==1'b1)
begin
q_out<= 1'b0;
                end
            else 
                begin
                    q_out <= d_in;
                end
        end
endmodule

创建Block Design

使用 Flow Navigator 窗口中的Create Block Design选项,将新的Block Design添加到项目中。

4e7b264c-0830-11ee-962d-dac502259ad0.png

将 Zynq 处理系统 IP 块添加到设计中,并运行自动设置或者自动连线。

4ea12c20-0830-11ee-962d-dac502259ad0.png

将 RTL 模块添加到Block Design

要添加我们在上一步中创建的 D 触发器的 RTL 模块,右键单击 Diagram 窗口空白处的任意位置,然后选择Add Module...选项。

4ea12c20-0830-11ee-962d-dac502259ad0.png

Vivado 将自动显示它在当前项目中找到的所有有效 RTL 模块。由于写入或导入到当前项目中的模块是我们刚刚设计的 D 触发器,因此它是本例中的唯一选项。

4f5e72d0-0830-11ee-962d-dac502259ad0.png

为了给触发器提供源,我添加了一个 AXI GPIO IP ,其中第一个通道作为输出,第二个通道作为输入。自动连接即可。

4f6bb116-0830-11ee-962d-dac502259ad0.png

为 AXI GPIO 模块运行自动连接后,将输出 GPIO 通道连接到触发器的 d_in,将触发器的 q_out 连接到输入 GPIO 通道。

4fa2c354-0830-11ee-962d-dac502259ad0.png

全部连接好后,点击那个勾勾进行验证。

501479a4-0830-11ee-962d-dac502259ad0.png

Block Design完成后,为Block Design生成顶层文件。

502c25f4-0830-11ee-962d-dac502259ad0.png

完成后可以看下整个项目的文件层次结构。

509f987c-0830-11ee-962d-dac502259ad0.png

就是这样,OVER~





审核编辑:刘清

温馨提示:以上内容整理于网络,仅供参考,如果对您有帮助,留下您的阅读感言吧!
相关阅读
本类排行
相关标签
本类推荐

CPU | 内存 | 硬盘 | 显卡 | 显示器 | 主板 | 电源 | 键鼠 | 网站地图

Copyright © 2025-2035 诺佳网 版权所有 备案号:赣ICP备2025066733号
本站资料均来源互联网收集整理,作品版权归作者所有,如果侵犯了您的版权,请跟我们联系。

关注微信