CRC_CRC endianness dependent on CRC_CTRL[WAS]?

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

CRC_CRC endianness dependent on CRC_CTRL[WAS]?

750 次查看
xarowubas
Contributor III

I program the Kinetis K60 (little endian) via assembly.

"When programming data values, the values can be written 8 bits, 16 bits, or 32 bits at a
time, provided all bytes are contiguous; with *MSB* of data value written first."

When you write the *seed* value to CRC_CRC you MUST NOT reverse the byte order from LSB to MSB.

However, when I write *data* values to CRC_CRC I must reverse it from LSB to MSB.

Is that expected behavior?

Does the specification really distinguish between the terms "seed value" and "data value", so that the MSB restriction only applies to "data values"?

Would be quite confusing. Is there a reason?

标签 (1)
0 项奖励
回复
1 回复

612 次查看
Robin_Shen
NXP TechSupport
NXP TechSupport

Sorry for the late reply!

"However, when I write *data* values to CRC_CRC I must reverse it from LSB to MSB"
I don't think you have to reverse it from LSB to MSB, this hardware CRC module support Transpose feature.
Have you try to configure Types of transpose?

Transpose feature.png

Best Regards,

Robin

 

-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------

0 项奖励
回复