GPMC单个的读写,我已经OK了,为了增加速度,我想配置burst模式,系统是wince的。
这TI的datasheet 我实在是没有看懂
brust个数可以配置,rdaccesstime rdcycletime cson csoff oeon oeoff 这些都是可以配置的,但是并没有讲到csrdofftime0 csrdofftime1 配置哪个,只有一个csrdofftime,rdcycletime,oeofftime都一样,有一个0和1,不知道怎么配置了。
文档看了些,也找了别人的一些配置来参考,始终没有理解透,不知道哪位有具体一些的可行配置可参考
Yaoming Qin:
你这说的是哪个片子啊
david hu1:
回复 Yaoming Qin:
呵呵,在官网上找了很多资料,原来寄存器配置没有错,错在GPMC_CLK必须配置成输入,没有配置。
DM3730的
另外一个问题来了,这个GPMC的SDMA使用目前还不行。
我不明白的地方有:
1,burst传输在采用DMA的方式后,还需要像非burst一样用testValue = *(DWORD*)(BasicAddress[inValue->baseCs]+inValue->Paddress)这种方式去启动吗?还是配置好DMA之后DmaStart(m_RxDmaInfo);就可以读burst了。
因为我配置的DMA怎么都出不了波形。
2,burst的DMA传输方式是不是应该配置成frame的方式
3,还有其它需要注意的地方
xin liu1:
您好,请问楼主,GPMC里的GPMC_CONFIG1-GPMC_CONFIG7,读写时间等如何计算配置啊,能否举个例子啊?
david hu1:
回复 xin liu1:
//#define BSP_GPMC_CONFIG1 0x00001001 // no wait, 16 bit, non multiplexed
//#define BSP_GPMC_CONFIG2 0x000A0A00 // CS OffTime 60ns OnTime 0ns
//#define BSP_GPMC_CONFIG3 0x00020201 // we don't use ADV
//#define BSP_GPMC_CONFIG4 0x09020902 // WE OE ontime 12ns offtime 54ns
//#define BSP_GPMC_CONFIG5 0x01080D0F // rdaccestime 48ns rdcycletime 15*6ns
//#define BSP_GPMC_CONFIG6 0x00000F80 // Delay 90ns between successive accesses to meet minimum cycle time
多看时序罗
xin liu1:
回复 david hu1:
多谢,你这个是配置NOR ,还是FPGA还是什么?
xin liu1:
回复 david hu1:
我先在外接一个FM22L16设备,这些参数怎么配啊?跪求指导
xin liu1:
回复 david hu1:
根据#define BSP_GPMC_CONFIG1 0x00001001 // no wait, 16 bit, non multiplexed
这个配置的GPMC_CLK=GPMC_FCLK/2,这个什么作用?
后面的CONFIG2-6计算都是以GPMC_FCLK为单位,按照你的6ns,可以猜测是GPMC_FCLK=166MHz.
那我的DEVICE的WR和RD cycle time是110ns,配15个GPMC_FCLK也才90多ns,这个怎么处理?
david hu1:
回复 xin liu1:
异步的方式,GPMC_CLK这个是没有用的,你都没说过你要配置什么模式,同步,异步,burst,PAGE?
关键是得跟FPGA来配合,首先你得确定你FPGA对这个时序是怎么样一个支持,时间都是将就着他来的
FPGA是可以抓波形的
xin liu1:
回复 david hu1:
多谢楼主,请问怎么联系,能否给个邮箱。
xin liu1:
回复 xin liu1:
如果使用Asynchronous single write and read方式,16位读写,电路没有nADV信号,FM22L16的RD/WR cycle Time=110ns , Access Time=55ns。