This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

DSPC6678通过EMIF写nandflash(MT29F8G16A)的速度最大多少?



本人测试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)的速度最大多少?

  • EMIF16接口的时钟是1/6 CPU clock,nand flash的传送数据的速率要根据nand flash读写时序来计算,并不是一个EMIF16 clock就是读写一组数据的速率,nand flash要先送地址信息命令等操作。
  • 问题已解决。C6678EMIF16配置参数中有write及Read读写时序的六个参数,官方默认可以是F 3F 7 F 3F 7,前面三个是写的,根据我自己的应用,可以全配置成0 0 0,后面三个读的可配置成1 7 2。这样传输2048个字节给nandflash时间缩短为42us,然后解算出的的速度可以达到65Mbit/s,基本接近手册理论速度。