本人测试DSPC6678通过EMIF写nandflash(MT29F8G16A)的速度为21Mbit/s,但根据nandflash数据手册,tPROG=200us的时间估算,最大速度应该是78Mbit/s。
我测试的时间分布是,T write page=770us.
其中写CMD 0X80 传输COLROW地址 为10us
然后,从DSPC6678的DDR区域传输2048个字节给nandflash地址(0x78000000)需要560us
再,等待Rdy准备好,即手册所说的tPROG=190us。
总共时间即为770us,算出来速度即为21Mbit/s。
影响速度的原因是从DSPC6678的DDR区域传输2048个字节给nandflash地址(0x78000000)需要560us,这部分时间是nandflash手册上未考虑的。
请问:DSPC6678通过EMIF写nandflash(MT29F8G16A)的速度最大多少?
Shine:
EMIF16接口的时钟是1/6 CPU clock,nand flash的传送数据的速率要根据nand flash读写时序来计算,并不是一个EMIF16 clock就是读写一组数据的速率,nand flash要先送地址信息命令等操作。