sdaccel 和 vitis 对rtl 的kernel的要求

本文以Xilinx的Vitis Acceleration Examples为例,探讨如何编写用户自定义的RTL内核。主要内容包括RTL内核的时钟、复位、AXI_Lite接口和AXI_Master接口的使用,并提供了相关接口的详细说明。此外,还提到了实现RTL内核所需的XML文件、package_ip.tcl、gen_xo.tcl、平台文件和Makefile等关键文件的作用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

本节文章参考的代买为xilinx github上vitis 的事例工程,主要是讲解如何写用户自己的rtl kernel,具体参考链接如下:

https://github.com/Xilinx/Vitis_Accel_Examples/blob/master/rtl_kernels/rtl_vadd/src/hdl/krnl_vadd_rtl.v

话不多说,直接上顶层的rtl代码。

本节事例是针对如下的kernel形式

 

对外接口主要分为时钟,复位,axi_lite口,和axi_master口,这是最简单的rtl kernel形式,其中左边的部分对时钟部分可以扩张,具体为多时钟的kernel,右边也可以具有多个axi_master接口。

时钟和复位:

input  wire  ap_clk,//建议直接按照此方式命名自己的kernel时钟和复位
input wire ap_rst_n,

axi_lite口:

// AXI4-Lite slave interface
  input  wire                                    s_axi_control_AWVALID,
  output wire                                    s_axi_control_AWREADY,
  input  wire [C_S_AXI_CONTROL_ADDR_WIDTH-1:0]   s_axi_control_AWADDR,
  input  wire                                    s_axi_control_WVALID,
  output wire                                    s_axi_control_WREADY,
  input  wire [C_S_AXI_CONTROL_DATA_WIDTH-1:0]   s_axi_control_WDATA,
  input  wire [C_S_AXI_CONTROL_DATA_WIDTH/8-1:0] s_axi_control_WSTRB,
  input  wire                                    s_axi_control_ARVALID,
  output

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

brank_z

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值