Community Translation - Bootloader Host Error: “The Flash Row is not Valid for the Selected Array” - KBA221445

Tip / Sign in to post questions, reply, level up, and achieve exciting badges. Know more

cross mob
YoOb_1790021
Level 5
Level 5
Distributor - Marubun (Japan)
First solution authored 10 likes received 10 likes given

Hi,

I tried to translate this KBA221445 into Japanese.

Bootloader Host Error: “The Flash Row is not Valid for the Selected Array” - KBA221445

https://community.cypress.com/docs/DOC-14334

----------------------------------

タイトル:ブートローダーホスト エラー:“The Flash Row is not Valid for the Selected Array” について

質問:

PSoC® 3、PSoC 4、または、PSoC 5LP のブートローダー デザインにおいて、ブートローダー ホストの "The flash row is not valid for the selected array" というエラーをどの様に解決したら良いでしょうか?

回答:

ブートローダー ホストアプリケーションが、書き込み保護されているフラッシュのブートローダー領域、または、そのメモリの一部からをブートロードしようとしたとき、このエラーが発生します。指定がない限り、ブートローダブル アプリケーションは、依存するブートローダー アプリケーションの次の空フラッシュ行から始まります。ブートローダー フラッシュ領域、または、フラッシュ行の保護設定に関して、事前にプログラムされたブートローダー間に矛盾がある場合、ブートローディングは許可されません。

たとえば、ブートローダーがプログラムされている市場での製品(ブートローダーA とします)を考えます。PSoC Creator コンポーネントの最新バージョンで、そのビルドを更新すると仮定します。更新されたブートローダーをブートローダーB とします。ここで、ブートローダーB の依存関係で .hex および .elf の新しいブートローダブル がビルドされた場合、市場のでその新しいアプリケーションをブートロードすると、フラッシュ行無効のエラーが発生する可能性があります。それは、これらの理由が原因かもしれません:

  1. 事前にプログラムされたブートローダーA はより多くのフラッシュ行を占有しているが、ブートローダーB はより少ないフラッシュ行を消費しているかもしれません。そのため、新しい.cyacd ファイルは、事前にプログラムされたブートローダー行をブートロードしようとしていますが、これは許可されません。
  2. ブートローダーB が使用する実際の行数と比較して、Booloader Aのより多くの行が「書き込み保護」されている可能性があります。その場合、新しい.cyacdファイルは保護された行をブートロードしようとしています。

ブートローダーBが依存関係として設定されていても、ブートローダーB の機能変更(A と比較して)は、実際のアプリケーションに反映されないことに注意してください。これは、ブートローダー B がデバイスに再プログラムされていないためです。

図1:PSoC Creator のプロジェクトとフラッシュメモリーの使用量

pastedImage_6.png

この問題に対処するには、図1に示すように、フラッシュのブートローダー イメージの上位で、かつメタデータ領域の下位にブートローダブル アプリケーションを手動で配置します。このアプローチは、依存関係にあるファイルの新旧のリビジョン間でフラッシュ行保護設定がある場合にフラッシュの消費量の不一致を回避に使用できます。手順は次のとおりです:

  1. ブートローダブル構成設定(構成ダイアログ)で、[Manual application image placement] オプションを有効にします。有効にしない限り、[Placement address] オプションはグレー表示されます。図2を参照してください。
  2. [Placement address] フィールドにアドレスを指定します。アドレスがデバイスのブートローダー イメージの上位で、メタデータ領域の下位になるようにします。配置アドレスを決定するには、フラッシュの行番号とフラッシュの行サイズの積に、フラッシュのベースアドレスを追加します。配置アドレスをフラッシュ行のサイズに揃えてください。フラッシュメモリ構成の詳細については、System Reference Guide の「Flash(および EEPROM)」の章を参照してください。

図2:Bootloadable 設定での手動によるアプリケーション配置のオプション

pastedImage_18.png

参照

Bootloader and Bootloadable

AN73854 - PSoC® 3, PSoC 4, and PSoC 5LP Introduction to Bootloaders

PSoC® 3, PSoC 4, and PSoC 5LP Flash Memory Organization and Array ID Parameter - KBA84740

----------------------------------

Best regards,

obana

1 Reply
JennaJo
Moderator
Moderator
Moderator
1000 replies posted 750 replies posted 500 replies posted

hello, Obana-san

We receive your translation, it will be published to KBA to Community.

I will get back to you after internal review, after that you will receive the point.

Due to the current volume of works, Please bear with me for the delayed the response,

Thanks for your contribution to CDC!

Will keep you update the status.

Thanks,

Jenna Jo

Jenna Jo