复位
JTAG-to-AXI Master
调试核
创建并发出传输事务之前
,
重要的是使用以下
Tcl
命令来复位
JTAG-to-AXI Master
核
:
reset_hw_axi [get_hw_axis hw_axi_1]
创建并运行读取传输事务
用于创建
AXI
传输事务的
Tcl
命令为
create_hw_axi_txn
。如需了解有关如何使用此命令的更多信息
,
请在
Vivado
IDE
的
Tcl
控制台
(Tcl console)
中输入“
help create_hw_axi_txn
”。以下是有关如何从地址
0
创建
4
字
AXI
读
取突发传输事务的示例
:
create_hw_axi_txn read_txn [get_hw_axis hw_axi_1] -type READ -address
00000000 -len 4
其中
:
•
read_txn
是用户定义的传输事务名称
•
[get_hw_axis hw_axi_1]
会返回
hw_axi_1
对象
•
-address 00000000
是起始地址
•
-len 4
会将
AXI
突发长度设置为
4
个字
下一步是运行刚使用
run_hw_axi
命令创建的传输事务。操作方式如下
:
run_hw_axi [get_hw_axi_txns read_txn]
最后一步是获取通过运行该传输事务所读取的数据。您可使用
report_hw_axi_txn
或
report_property
命令在屏幕
上打印此数据
,
或者也可以使用
get_property
命令来返回值
,
以供在别处使用。
report_hw_axi_txn [get_hw_axi_txns read_txn]
0 00000000 00000000
8 00000000 00000000
report_property [get_hw_axi_txns read_txn]
Property Type Read-only Visible Value
CLASS string true true hw_axi_txn
CMD.ADDR string false true 00000000
CMD.BURST enum false true INCR
CMD.CACHE int false true 3
CMD.ID int false true 0
CMD.LEN int false true 4
CMD.SIZE enum false true 32
DATA string false true 00000000000000000000000000000000
HW_AXI string true true hw_axi_1
NAME string true true read_txn
TYPE enum false true READ
创建和运行写入传输事务
以下是有关如何从地址
0
创建
4
字
AXI
写入突发传输事务的示例
:
create_hw_axi_txn write_txn [get_hw_axis hw_axi_1] -type WRITE -address
00000000 \
-len 4 -data {11111111_22222222_33333333_44444444}
其中
:
•
write_txn
是用户定义的传输事务名称
•
[get_hw_axis hw_axi_1]
会返回
hw_axi_1
对象
•
-address 00000000
是起始地址
•
-len 4
会将
AXI
突发长度设置为
4
个字
•
-data {11111111_22222222_33333333_44444444}
-
数据方向为左侧
LSB
(
即
,
地址
0
)
和右侧
MSB
(
即
,
地址
3
)
。
下一步是运行刚使用
run_hw_axi
命令创建的传输事务。操作方式如下
:
run_hw_axi [get_hw_axi_txns write_txn]
重要提示
!
如果您对器件进行重新编程
,
那么将删除所有现有
jtag_axi
传输事务。您可能需要重新创建这些传输
事务。
提示
:
run_hw_axi Tcl
命令的可选实参
-queue
允许您以队列模式指定
hw_axi
传输事务。排队操作允许在
JTAG
to AXI Master FIFO
中对最多
16
项读取和
16
项写入传输事务进行排队
,
并发出连续执行指令
,
以便降低传输
事务之间的时延并提升性能。非排队传输事务则直接在提交时运行。