我们用am3354的gpmc总线连接了一片ksz8842,8842的寄存器访问速度有快有慢,它输出一个ardy信号,按8842的时序图,ardy信号低电平有效,当ardy信号由低变高前0.8ns数据有效,不同的寄存器ardy信号时间在0ns~80ns之间。我们觉得ardy可以用作gpmc的wait输入,将它的ardy信号接到gpmc的wait1。但是8842要求在ardy信号为低时,cpu需要保持rd、wr信号为低。我们用逻辑分析仪看到gpmc的rd、wr信号比adry信号先变高,有时会使ardy信号一直保持低电平,将gpmc卡死。
请问gpmc的wait输入会影响rd(OE)、wr信号的宽度吗?看am335x的技术手册7.1.3.3.8.3.2 Wait Monitoring During an Asynchronous Read Access
我理解的是gpmc会在RDACCESSTIME到时间和wait信号deasserted的时候读数据,但是如果这个时间比rd、cs、readcycletime都晚会是什么情况?
我的gpmc config如下:
[ 18.116841] cs1, GPMC_CS_CONFIG1 = 0x00611200
[ 18.121420] cs1, GPMC_CS_CONFIG2 = 0x00050500
[ 18.126125] cs1, GPMC_CS_CONFIG3 = 0x22020211
[ 18.130706] cs1, GPMC_CS_CONFIG4 = 0x05016511
[ 18.135327] cs1, GPMC_CS_CONFIG5 = 0x01050606
[ 18.139908] cs1, GPMC_CS_CONFIG6 = 0x85020000
[ 18.144511] cs1, GPMC_CS_CONFIG7 = 0x00000F41
逻辑分析仪抓到的波形如下:
mangui zhang:
相关帖子请参考
http://www.deyisupport.com/question_answer/dsp_arm/sitara_arm/f/25/t/59245.aspx
profan:
回复 mangui zhang:
这个帖子跟我的问题没有关系呀。