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.

采用6672DSP的EMIF16写NandFlash遇到的问题



您好:

在开发板上可以烧写成功。在自己设计的板子,DSP芯片为6672,无法正常使用nandwriter_evmc6678l工程将.dat文件通过EMIF16烧写进NandFlash,具体描述如下:

(1)NandFlash芯片及外围电路与开发板一致,板子无DDR3,电路的EMIF16已经用于实现其他功能,证明芯片EMIF16正常;

(2)按照【资料共享】SPI flash boot for C66X中的方法,将例程包K1_STK_1010中SPI例程生成SPI.dat;

(3)在利用MCSDK提供的nandwriter_evmc6678l工程将SPI.dat写入NandFlash时的操作步骤与遇到的问题具体如下:

 

1、将nandwriter.c中的

#define WRITE_DATA_ADDRESS        0x80000000

改为 #define WRITE_DATA_ADDRESS        0x0C000000

2、将nand_writer_input.txt中做如下修改

file_name  = spi.dat

start_addr  =16384

3、根据READMe.txt进行写操作,进行修改的部分为

将view the memory address 0x80000000改为0x0C000000;

将Load app.bin to 0x80000000改为0x0C000000;

4、运行结果:

  在执行上述操作的过程中,有时可以观察到CE0有信号,有时无信号,

有信号的运行结果如下:

NAND write failed;

 

无信号时的运行结果如下:

[C66xx_0] NAND Writer Utility Version 01.00.00.01

[C66xx_0]

[C66xx_0] NAND device open failed!

[C66xx_0] Returned platform error number is 36

请问:

1、 为何相同的操作会出现不同的操作结果;

2、 是否可以不使用DDR3的地址;

3、 为何数据送至NandFlsah却无法成功写入。

恳请帮助,万分感谢。

  • 您好:

    自己设计的板子,DSP芯片为6672,遇到的问题为无法正常使用norwriter_evmc6678l工程将.dat文件通过SPI烧写进NorFlash,具体描述如下:

    (1)NorFlash芯片及外围电路与开发板一致,板子无DDR3,电路的SPI已经用于控制液晶屏显示,证明芯片SPI正常;

    (2)按照【资料共享】SPI flash boot for C66X中的方法,将例程包K1_STK_1010中SPI例程生成SPI.dat;

    (3)在利用MCSDK提供的norwriter_evmc6678l工程将SPI.dat写入NorFlash时的操作步骤与遇到的问题具体如下:

    1、将norwriter.c中的

    #define WRITE_DATA_ADDRESS        0x80000000

    改为 #define WRITE_DATA_ADDRESS        0x0C000000

    2、将nor_writer_input.txt中做如下修改

    file_name  = spi.dat

    start_addr  = 0x0C000000

    3、根据READMe.txt进行写操作,进行修改的部分为

    将view the memory address 0x80000000改为0x0C000000;

    将Load app.bin to 0x80000000改为0x0C000000;

    4、运行结果:

       [C66xx_0] NOR Writer Utility Version 01.00.00.03

    [C66xx_0]

    [C66xx_0] NOR device open failed!

    [C66xx_0] Returned platform error number is 17

    程序在跑到p_device = platform_device_open(PLATFORM_DEVID_NORN25Q128, 0);之后变运行结束。无法获取NorFlash的任何信息。

    在执行上述完全一样操作的过程中,有时在这个过程中可以观察到SPICS0,SPICLK,SPIMOSI有信号,但更多时候是没有任何信号。

    请问:

    1、 为何相同的操作会出现不同的操作结果;

    2、 是否可以不使用DDR3的地址;

    3、 norwriter_evmc6678l工程在利用SPI烧写的工程中需要作何修改吗。

    十分着急,恳请帮助。

  • start_addr  应该是flash某一块的起始地址,不应该是 0x0C000000吧