取消
显示结果 
显示  仅  | 搜索替代 
您的意思是: 
Highlighted
Observer
Observer
524 次查看
注册日期: ‎05-20-2015

rfsoc mpsoc无法通过Xil_In32和Xil_Out32访问PL端的AXI-LITE设备

跳至解决方案

rfsoc mpsoc无法通过Xil_In32和Xil_Out32访问PL端的AXI-LITE设备,一旦运行到Xil_In32或者Xil_Ou32函数,SDK就卡死了。

vivado版本2018.1,FPGA是RFSOC 27dr

0 项奖励
1 解答

已接受的解答
Highlighted
Xilinx Employee
Xilinx Employee
382 次查看
注册日期: ‎06-19-2019

另外PL_powerup有没有选上。

Capture13.PNG

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

在原帖中查看解决方案

12 回复数
Highlighted
Xilinx Employee
Xilinx Employee
511 次查看
注册日期: ‎06-02-2017

Hi @xujialin1992 

PS外设寄存器能否正常访问?

检查一下PL端AXI链路上aclk和aresetn是否正确连接,aresetn极性是否正确。

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

PL端的AXI-Lite设备是你自己开发的IP吗?

有检查一下AXI-Lite的读写时序是否正确吗?

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

感谢您的回复,我采用的lpd_aclk是外部时钟,100MHz测量正常、点灯正常,复位选择也没有问题。

刚才试着将时钟改为Zynq IP核输出的pl_clk0,发现该时钟没有输出,会不会是这个原因导致的AXI-lite无法读写?

PS端的33.33MHz时钟是正常提供的,而且SDK打印Helloworld也都正常,为什么会没有pl_clk0输出呢?

我采用pl_clk0的bd连接截图在附件中。

微信截图_20200629185749.png
0 项奖励
Observer
Observer
501 次查看
注册日期: ‎05-20-2015

您好,感谢您的回复。

IP是AXI-QUAD-SPI,Xilinx官方IP。

其实我对Vivado开发经验比较丰富,之前在V7K7上都使用Microblaze进行开发,没有遇到类似的问题。

Zynq系列我也使用过,用的是M_AXI_GP0接口连接到PL端,也都正常。

现在的状况是,我触发M_AXI_HPM0_LPD总线,在SDK运行到XilOut32时,总线的ARVALID和AWVALID毫无反应,像是SDK根本没有执行,而直接跑飞了。此时SDK无法暂停。

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

你把接口换成M_AXI_HPM0_FPD试一下,看看是否还会卡住。

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

您好,FPD0、1总线还是会卡住。

现在zynq给出的pl_clk0一直没有输出,即使我选择了驱动它的是IOPLL、DPLL等,是不是意味着PS的PLL没有工作起来?因为AXI交换的一些驱动也都是靠IOPLL、RPLL等驱动的。但如果这些PLL没有起来的话,PS的DDR怎么会正常工作呢?串口也能正常打印,很奇怪。

我在别的地方看到说,pl_clk输出需要配置psu_postconfig.tcl,这个怎么配置?

我读写0x80000000以内的地址都是可以的,但是一旦超过了0x80000000,SDK就会卡死,停在 b boot的汇编语句上。

0 项奖励
Highlighted
Observer
Observer
386 次查看
注册日期: ‎05-20-2015

另外,板卡是我们自己设计的,有没有可能是硬件问题导致的?

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

你在SDK运行你的应用程序的时候,有没有勾选Run psu_init.

Capture13.PNG

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

另外PL_powerup有没有选上。

Capture13.PNG

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

在原帖中查看解决方案

Highlighted
Observer
Observer
380 次查看
注册日期: ‎05-20-2015

psu_init默认是选上的,但PL Powerup没有选。谢谢您的建议,我试一下。

0 项奖励
Highlighted
Observer
Observer
328 次查看
注册日期: ‎05-20-2015

确实是Powerup PL这个选项没有勾上导致的。多谢!

不过为什么新建app默认不是勾上的呢~

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

有些情况下,应用只需要跑在PS就可以了。

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