Question about Flash MPC5777C

取消
显示结果 
显示  仅  | 搜索替代 
您的意思是: 
已解决

Question about Flash MPC5777C

跳至解决方案
2,033 次查看
20Sidar04
Contributor III

Dear Mr. /Mrs,

I use MPC57777C. After writing four bytes of data to the first starting address of block 0, I want to write the other four bytes of data sequentially to it. When I want to debug in memory, I see some data as 0. I observe some bits set in some data. The reference manual also states that ecc is on 64 bit and writing 32 bits twice in 64 bit double word memory area will generate an error. but in this picture 4 times successful 32 bits were written between 0x00 and 0x10. what is its reason? (2) Why write 0x20 when 0x24 path is 32 bit 0.

flash.jpg

标记 (2)
0 项奖励
回复
1 解答
2,017 次查看
davidtosenovjan
NXP TechSupport
NXP TechSupport

Hi, you apparently does not perform program operation correctly.

davidtosenovjan_0-1649858563312.png

davidtosenovjan_1-1649858633233.png

8 words per 32 bits is 32 bytes i.e. address range 0-0x1F, how you have it.

You will to perform multiple program operations, aligned per 64-bit ECC boundary

 

 

 

在原帖中查看解决方案

0 项奖励
回复
3 回复数
2,018 次查看
davidtosenovjan
NXP TechSupport
NXP TechSupport

Hi, you apparently does not perform program operation correctly.

davidtosenovjan_0-1649858563312.png

davidtosenovjan_1-1649858633233.png

8 words per 32 bits is 32 bytes i.e. address range 0-0x1F, how you have it.

You will to perform multiple program operations, aligned per 64-bit ECC boundary

 

 

 

0 项奖励
回复
2,012 次查看
20Sidar04
Contributor III

Dear David, 

Thanks for precious comments for my question. I use interlock programming. Firstly, I programmed 4 byte data on 0x00000000-0x0000004. I locked this adress. After that I programmed 4 byte data on 0x0000004-0x00000008. I ocked again. But this type of programming should cause ECC error for user manuel. Why happened like this?

Best Regards.

0 项奖励
回复
1,935 次查看
davidtosenovjan
NXP TechSupport
NXP TechSupport

Understandably, how I said ECC is writen for 64-bit i.e. 8 bytes. You must write 8 bytes at once (per one sequence). And you may may write up to 32 bytes per one sequence.

 

0 项奖励
回复