CRC_CRC endianness dependent on CRC_CTRL[WAS]?

キャンセル
次の結果を表示 
表示  限定  | 次の代わりに検索 
もしかして: 

CRC_CRC endianness dependent on CRC_CTRL[WAS]?

757件の閲覧回数
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 返信

619件の閲覧回数
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 件の賞賛
返信