取消
显示结果 
显示  仅  | 搜索替代 
您的意思是: 
kaiseradler
Observer
Observer
361 次查看
注册日期: ‎03-07-2019

axi总线读第一次成功,第二次就卡死

arvalid和arready都拉高了,但是rvalid一直起不来!

kaiseradler_0-1617626140912.png

 

0 项奖励
6 回复数
yzhang
Moderator
Moderator
309 次查看
注册日期: ‎05-11-2010

先按照axi4总线协议检查一下第一次读操作的握手信号都完成了,再看第二次读操作。Rvalid应该是你的axi4 master逻辑里发出的,你可以检查一下逻辑。

0 项奖励
Love24
Explorer
Explorer
272 次查看
注册日期: ‎10-22-2020

rready波形看一下,如果master与slave均符合axi标准协议,可以试试将rready接成1'b1,看看rvalid是否能拉起来。

0 项奖励
kaiseradler
Observer
Observer
243 次查看
注册日期: ‎03-07-2019

RVALID是ddr控制器输出,axi master输入!

0 项奖励
kaiseradler
Observer
Observer
242 次查看
注册日期: ‎03-07-2019

诡异,将ddr3的用户宽度设置为64就可以正常,256就不对!

0 项奖励
yzhang
Moderator
Moderator
239 次查看
注册日期: ‎05-11-2010

你用的是MIG core?建议你用xilinx的axi4 master来读DDR memory试试,比如axi traffic generator或者microblaze。建议你用microblaze。不用写软件代码,直接jtag通过xsct连接microblaze去读memory。

0 项奖励
kaiseradler
Observer
Observer
77 次查看
注册日期: ‎03-07-2019

是的,用了smart axi connect ,用的软件自己生成的axi master控制器,稍微改了下,发现一个通道写,一个通道读,写会干扰到读,出现错误数据,照理说,这个多通道链接器,不应该自己控制优先级吗?怎么还会冲突呢?!

0 项奖励