Other Parts Discussed in Thread:UNIFLASH
hi there,
Fapi_issueProgrammingCommand() 使用Fapi_AutoEccGeneration模式,请问使用Fapi_AutoEccGeneration模式时候参数pu8EccBuffer和u8EccBufferSizeInBytes需要设置吗?
thanks
Susan Yang:
您可以设置为0
更多信息您可以参考
www.ti.com/…/spnu501h.pdf
,
user5890695:
hi Susan,
非常感谢迅速回复。
我看过API Guide,但是没有解答我的问题,不知道是不是没看懂。
您的意思是说使用Fapi_AutoEccGeneration模式,pu8EccBuffer和u8EccBufferSizeInBytes这两个参数可以设置为0,对吗?
我使用的是RM44芯片。现在碰到的问题是,不使能flash ECC,使用boot代码flash可以更新,但是使能flash ecc后,更新程序有问题。我想检查更新过程中ECC是否正确产生并且写入flash,请问您有什么建议呢?谢谢!
,
user5890695:
hi Susan,
昨天做了一个测试,发现擦除Flash时,相应的ECC区间没有被完全擦除,有一些字节是0x7F,地址是不连续,貌似也没有规律。
请问你们有碰到过这个问题吗?我们是根据flash API v 2.01.01建议的流程来擦除flash,不同在于在调用Fapi_issueAsyncCommandWithAddress()之前,使用函数Fapi_issueAsyncCommand()来清除Flash状态机,请问注意操作会带来这种后果吗?或者可以提供例程吗?
如果不使用CCS进行调试,有办法保存ECC的数据吗?我使用uniflash没有导出ECC数据。
谢谢!
,
Susan Yang:
erase的话还是您建议文档的 Figure 2. Recommended Sector Erase Flow和 Figure 3. Recommended Bank Erase Flow的方式
您现在使用的uniflash版本是什么?ECC自动生成是否是打开的?
您在uniflash内可以使用memory选项来读出并导出芯片的memory情况
,
user5890695:
那么不建议在操作中对flash state machine进行操作,对吗? 我用的uniflash是V4.5.0.2056, 我可以通过read memory看到0xF0400000区间ECC的值,但是export出后来不能完成generate.
首次烧写程序,ECC是通过uniflash自动生成的,后来更新程序是在bootloader程序内使用自动模式Fapi_AutoEccGeneration生成的,我使用的是RM44芯片。
我现在碰到的问题是更新程序后ECC数据不对,导致ESM模块报flash ECC error, 因为这个过程无法debug,uniflash又无法导出ECC数据,所以不能定位ECC错在哪里?请问您有什么建议吗?
非常感谢!
,
user5890695:
Hi Susan,
我想请教一下关于ECC的地址,Flash代码产生ECC数据的地址是不是在0XF0400000 偏移flash地址除以8的位置,比如flash代码生成在0x60000地址,相应ECC地址应该在0xF040C000
谢谢
,
user5890695:
Hi Susan,
我想请教一下关于ECC的地址,Flash代码产生ECC数据的地址是不是在0XF0400000 偏移flash地址除以8的位置,比如flash代码生成在0x60000地址,相应ECC地址应该在0xF040C000
谢谢