オンラインの一般的なCRC32の計算

テクニカル・ノート 191210

アーキテクチャ:

All

コンポーネント:

general

更新日:

2020/03/20 8:58

はじめに

このテクニカルノートは、オンラインのCRC計算で使われている最も一般的なCRC32アルゴリズムを使ってIAR Embedded Workbench for Arm でどのようにCRC32を計算するのかを説明します。

解説

たとえば、以下のオンラインCRC32計算では、入力データ0x01 0x02 0x03 0x04の結果は0xB63CFBCDになります。

  1. https://crccalc.com/?crc=01020304&method=crc32&datatype=hex
  2. http://www.sunshine2k.de/coding/javascript/crc/crc_js.html
  3. https://www.lammertbies.nl/comm/info/crc-calculation.html

Technical Note 45456 のCRC32サンプルプロジェクトは、オンラインCRC計算と比較して異なる結果を与えることに注意してください。

IAR ielftoolでオンラインCRC計算と同じ結果を得るためには、Project(プロジェクト)>Options(オプション)>Linker(リンカ)>Checksum(チェックサム) ダイアログボックス の関連設定を以下としてください:

  • Use as input(入力として使用) にはチェックをつけない
  • Complement(補数) には 1’s complement(1の補数)を選択(XOR with -1)
  • Bit order(ビット順) には LSB first(LSBが先頭)を選択 (use mirroring)

サンプルプロジェクト

crc32std_ewarm_7804.zip (IAR Embedded Workbench for Arm version 7.80.4 で作成).

オンラインのCRC calculators

3つのオンラインの CRC-calculatorsのスクリーンショットを参照してください。 :

まとめ

オンラインのCRC計算で使用される最も一般的なCRC32アルゴリズムを使用して、IAR Embedded Workbench for ArmでCRC32を計算することができます。

 

全ての製品名は、それぞれの所有者の商標または登録商標です

 

申し訳ございませんが、弊社サイトではInternet Explorerをサポートしていません。サイトをより快適にご利用いただくために、Chrome、Edge、Firefoxなどの最新ブラウザをお使いいただきますようお願いいたします。