AXI
接口事件
在
Vivado
硬件管理器中
,
如果使用
System ILA IP
对设计
AXI
接口进行调试
,
那么“波形
(Waveform)
”窗口会显示对
应于
System ILA
所探测的接口的接口插槽、事件和信号组。正如下图所示
,
“
Waveform
”窗口会显示
System ILA IP
所探测的
2
个接口插槽。您可在插槽
1
上查看“
AXI
传输事务”、“写入地址通道事件”和“写入数据通道事件”。
您还可在“
Waveform
”窗口中查看“写入数据
CAXI (Write Data CAXI)
”接口插槽。
![](https://i-blog.csdnimg.cn/blog_migrate/2688745529fa9da805dcc96b061a04ba.png)
此波形可报告
AXI
接口相关传输事务、读取事件、写入事件、地址事件以及数据通道事件。
AXI
传输事务
AXI
传输事务用于报告
AXI
读取地址通道、
AXI
读取数据通道、写入地址通道和写入数据通道的读写传输事务。
在“波形
(Waveform)
”窗口中将光标悬停与特定读取或写入传输事务上时
,
即可出现如下窗口
,
其中高亮显示与特定
传输事务关联的“地址
(Address)
”、“
ID
”、“开始时间
(Start)
”、“结束时间
(End)
”和“持续时间
(Duration)
”。
![](https://i-blog.csdnimg.cn/blog_migrate/103f205ea63c67a55d7bb12201ab2188.png)
AXI
通道事件
“
AXI
通道事件
(AXI Channel Events)
”组可用于报告
AXI
读取地址
(AR)
、读取数据
(R)
、写入地址
(AW)
、写入数据
(W)
和写入响应
(B)
通道中的
AXI
事件。
读取地址
(AR)
通道事件
![](https://i-blog.csdnimg.cn/blog_migrate/ad0dd2ccf56c9a42d019fb01f5acc0cb.png)
读取地址通道信号组
此信号组由参与读取地址通道事件
(Read Address Channel Event)
的所有信号组成。这些信号如下所示
:
• 信号线名称
○
ARVALID
○
ARREADY
○
ARID
○
ARADDR
○
ARBURST
○
ARLEN
○
ARSIZE
○
ARCACHE
○
ARPROT
○
ARLOCK
○
ARQOS
○
AR_CNT
读取数据通道事件
![](https://i-blog.csdnimg.cn/blog_migrate/dd549d9762f7e5174bd59e00d21f44fd.png)
读取数据通道信号组
此信号组由参与读取数据通道事件
(Read Data Channel Event)
的所有信号组成。这些信号如下所示
:
• 信号线名称
○
RVALID
○
RREADY
○
RLAST
○
RID
○
RDATA
○
RRESP
○
R_CNT
写入地址通道事件
![](https://i-blog.csdnimg.cn/blog_migrate/83d25e24d318e6e6eed499a69d051548.png)
写入地址通道信号组
此信号组由参与写入地址通道事件
(Write Address Channel Event)
的所有信号组成。这些信号如下所示
:
• 信号线名称
○
AWVALID
○
AWREADY
○
AWID
○
AWADDR
○
AWBURST
○
AWLEN
○
AWSIZE
○
AWCACHE
○
AWPROT
○
AWLOCK
○
AWQOS
○
AW_CNT
写入数据通道事件
![](https://i-blog.csdnimg.cn/blog_migrate/636e85e5f0265717f3c72c4b0088a6b1.png)
写入数据通道信号组
此信号组由参与写入数据通道事件
(Write Data Channel Event)
的所有信号组成。这些信号如下所示
:
• 信号线名称
○
WVALID
○
WREADY
○
WLAST
○
WDATA
○
WSTRB
写入响应通道事件
![](https://i-blog.csdnimg.cn/blog_migrate/d4f4719f2713145d62f7c850f4397ceb.png)
写入响应通道信号组
此信号组由参与写入响应通道事件
(Write Response Channel Event)
的所有信号组成。这些信号如下所示
:
• 信号线名称
○
BVALID
○
BREADY
○
BID
○
BRESP
○
B_CNT
触发
AXI
地址命令和数据节拍
调试
AXI
接口通常涉及触发如下特定类型的
AXI
事件
:
地址命令结束、数据节拍结束以及写入响应。通常必须在不同
接口通道上触发以上
1
项或多项事件。例如要实现“读取地址命令结束或写入地址命令结束”的触发条件
,
需采用如
下公式
:
Trigger Condition = (((ARVALID == 1) && (ARREADY == 1)) || ((AWVALID == 1) &&
(AWREADY == 1)))
但这需要“乘积和
(SOP)
”式布尔公式
,
而当所需
AXI
信号
(
例如
ARVALID
和
ARREADY
)
驻留在不同探针端口上
时
,
则无法实现此类公式。为帮助完成此类触发
,
所需的
*VALID
、
*READY
和
*LAST
控制信号被串联在一起并连接到
单一探针端口
,
如下表所示。
![](https://i-blog.csdnimg.cn/blog_migrate/a6cc6cab3e818c09e0ec67063e427b27.png)
下表显示了如何使用单一
AXI
控制信号探针和
AXI
通道控制探针来实现实用的基本触发和采集控制公式。下图显示了
如何使用基本触发器设置
GUI
来实现“读取地址命令结束或写入地址命令结束”事件。
![](https://i-blog.csdnimg.cn/blog_migrate/63120a89fe386aaf9f98fb33783ba854.png)
![](https://i-blog.csdnimg.cn/blog_migrate/6cdf5e162e8f1e8ebcbac5d2c6d58747.png)