Renesas Synergy™

FAQ 1009873 : E1/E20を High-performance Embedded Workshopで使用した場合のフラッシュライタモードでのチェックサムの計算方法を教えてください。

回答

E1/E20のフラッシュライタモードでプログラムをフラッシュメモリへダウンロードしたときに表示されるチェックサムは以下のように計算されます。

マイコンの持つ全てのフラッシュメモリ領域(内部RAMやフラッシュメモリ外の予約領域は計算の対象にはなりません。)のデータをバイト単位で加算し、4バイトで表示します。

計算対象領域内でユーザプログラムなどのデータが無い領域に書き込まれる値は、その領域のフラッシュメモリを上書きする設定(*)の有無によって異なります。

* E1/E20エミュレータデバッガの[コンフィグレーションプロパティ]ダイアログの[内蔵フラッシュメモリの上書き]タブで設定できます。

  • フラッシュメモリを上書きする設定をした領域
    ユーザプログラムのダウンロード時にフラッシュメモリを初期化しないでデータを上書きします。
    ユーザプログラムなどのデータが無い領域は、ダウンロード前の値が保持されます。
  • フラッシュメモリを上書きする設定をしていない領域
    ユーザプログラムのダウンロード時にフラッシュメモリの初期化を行ってからデータの書き込みを行います。
    ユーザープログラムなどのデータが無い領域は、内蔵フラッシュメモリの初期値になります。

    注意:
    内蔵フラッシュメモリの初期値はマイコンによって異なります。
    RXファミリマイコンでは、コード格納用フラッシュメモリの初期値は0xff、データ格納用フラッシュメモリは不定値です。
    R8Cファミリマイコンでは、プログラム領域およびデータ領域ともに初期値は0xffです。

以降にマイコン別にチェックサムの計算例を示します。

■RX610グループの場合の計算例:
RX610グループはフラッシュメモリ領域としてコード格納用フラッシュメモリのユーザマットとユーザブートマット、データ格納用フラッシュメモリの3つを持ちます。 E1/E20のフラッシュライタモードではそれぞれの領域ごとのデータをバイト単位で加算し4バイトのチェックサム値として、各領域ごとに表示します。 なおデータ格納用フラッシュメモリの初期値は不定値ですので、データ格納用フラッシュメモリが一部でも初期状態の場合は、チェックサム結果はNGを表示します。

■R8C/3xシリーズの場合の計算例:
R8CファミリのR8C/3xシリーズはフラッシュメモリの領域として、データ領域とプログラム領域の2つを持ちます。 E1/E20のフラッシュライタモードでは、2つの領域全てのデータをバイト単位で加算し、4バイトのチェックサム値として表示します。

 

適用製品

E1 [R0E000010KCE00]
E20 [R0E000200KCT00]
他にご質問がございましたら、リクエストを送信してください