ucos访问自定义axi peripheral接口死机问题

2016-08-11 10:56 阅读 507 次 评论 0 条

通过axi自定义外设接口,可以查看以前写zynq 7020 PL部分AXI lite接口,在standalone中运行时功能正常,而在ucosiii中,对其地址段的寄存器进行读写操作时,将会死机。这个问题在xilinx的论坛上也有人提问ucosiii下访问自定义axi外设死机问题,但没有解决措施。

这个问题的原因我也没有弄明白了,只是比较standalone与ucos的BSP设置,ucos中有cache与mmu配置,如下图所示。

image

通过设置中关闭上图中红框中的任何一项设置为false,重生生成BSP,在hello world的简单工程下测试,ucos系统运行正常,axi peripheral接口寄存器读写正常,运行速度没有明显变化。可能是因为测试工程太小,感觉不到。暂且也认为是一种解决办法吧。

另一种就是不使用axi peripheral自定义接口,而是将AXI转换为APB接口,和PS外设的接口一致,如uart的配置寄存器、Ethernet的配置寄存器均采用APB总线接口。

在PL系统设置时,增加axi-apbbridge,如下图所示,然后将寄存器挂到APB总线上。

image

转换为APB总线,在中型工程下运行,ucos的工程正常,运行速度良好。

版权声明:本文著作权归原作者所有,欢迎分享本文,谢谢支持!
转载请注明:ucos访问自定义axi peripheral接口死机问题 | 起点博客
分类:应用笔记 标签:, , ,

发表评论


表情