取消
显示结果 
显示  仅  | 搜索替代 
您的意思是: 
Highlighted
Visitor
Visitor
449 次查看
注册日期: ‎06-10-2020

Vivado SDK Vitis 不能写入内存 zcu102开发板

大家好,刚开始学习FPGA开发几个星期,这个问题困扰我很多天了,来论坛求助一下。

我的开发板是zcu102. 我在跟着官方教程ug871 vivado-high-level-synthesis-tutorial学习vivado和hls的使用,在Chapter10 Lab 1里导出了一个用AXI Slave的ip,并在Vivado里把这个ip和zynq ultrascale+ 连起来了。当我要对下图所示的slave地址进行读写的时候,程序会自己跳到asm_vectors.S里面的b _boot 并且不动了。我用的function是

 

Xil_Out32(Addr, Value)  #put a 32bit data into address

 

 

 

 

很奇怪,读写0xa0000000之前的地址,比如0x90000000就可以成功。一但地址是0xa0000000之后了,就无法读写了。就算在debug里面的memory monitor里,一旦我想去看0xa0000000之后的地址,程序也会跳出来并且停止。66b6ae04a9b092599e2b4d33797df68.png

19f16ad088199fb66bc9a0462563ed3.png

 

 

希望大家可以帮助我一下

 

谢谢!

 

0 项奖励
7 回复数
Highlighted
Xilinx Employee
Xilinx Employee
379 次查看
注册日期: ‎06-19-2019

这个offset address是你自己改的吗?

------------------------------------------------------------------
Don't forget to reply, kudo, and accept as solution.
如果提供的信息能解决您的问题,请标记为“接受为解决方案”。
如果您认为帖子有帮助,请点击“奖励”。谢谢!
-------------------------------------------------------------------
0 项奖励
Highlighted
Visitor
Visitor
297 次查看
注册日期: ‎06-10-2020

@terryn 你好,

offset的地址是Vivado自己分配的

0 项奖励
Highlighted
Xilinx Employee
Xilinx Employee
248 次查看
注册日期: ‎06-19-2019

我尝试过这个地址空间能正常访问,你单步调试看看,是运行到哪里使得整个程序跳出的?

------------------------------------------------------------------
Don't forget to reply, kudo, and accept as solution.
如果提供的信息能解决您的问题,请标记为“接受为解决方案”。
如果您认为帖子有帮助,请点击“奖励”。谢谢!
-------------------------------------------------------------------
0 项奖励
Participant
Participant
212 次查看
注册日期: ‎10-08-2014

我现在也遇到同样的问题,用的是vitis2020.1的版本,当程序单步执行到访问PL侧的寄存器(设置的offset是0x400000000),程序会自动跳到asm_vectors.S停下来。
0 项奖励
Highlighted
Xilinx Employee
Xilinx Employee
186 次查看
注册日期: ‎06-19-2019

0x400000000这个偏移的话,地址至少是40位,你PL侧IP的AXI接口是否匹配?

------------------------------------------------------------------
Don't forget to reply, kudo, and accept as solution.
如果提供的信息能解决您的问题,请标记为“接受为解决方案”。
如果您认为帖子有帮助,请点击“奖励”。谢谢!
-------------------------------------------------------------------
0 项奖励
Highlighted
Participant
Participant
166 次查看
注册日期: ‎10-08-2014

地址是匹配的。[39:0]的位宽。

0 项奖励
Highlighted
Xilinx Employee
Xilinx Employee
70 次查看
注册日期: ‎06-19-2019

0x400000000是16G,你板子上的DDR是多大的?是不是超过你板上的DDR大小了。

------------------------------------------------------------------
Don't forget to reply, kudo, and accept as solution.
如果提供的信息能解决您的问题,请标记为“接受为解决方案”。
如果您认为帖子有帮助,请点击“奖励”。谢谢!
-------------------------------------------------------------------
0 项奖励