FAQ : SUZAKU-SでBBootにコードを追加すると起動しなくなりました。

該当製品: SZ010-U00 SZ030-U00 SZ130-SIL SZ130-U00
| 最終更新: 2008/09/29

原因

BBootのイメージサイズが、Block RAMのサイズよりも大きくなってしまった可能性があります。xpsでリンカスクリプトを指定せずにビルドした場合、イメージサイズがBlock RAMのサイズより大きくなってもエラーになりません。

また、ビルドの際にBBootのサイズが表示されますが、この値は、使用していないベクタ領域やアライメントによる未使用空間を除外しているため、イメージファイルのサイズよりも小さい値になっています。そのため、単純にこの値とBlock RAMのサイズを比較して、プログラムがBlock RAMの領域内に収まっているか確認することができません。


対策

xpsでリンカスクリプトを生成することで解決することができます。

このリンカスクリプトには、各セクションでどのメモリ領域を使用するかという情報が書かれているため、BBootのイメージサイズがBlockRAMよりも大きい場合は、エラーメッセージを出力します。

  1. [Software] > [Generate Linker Script...]を選択します


  2. 何も編集せずに「OK」ボタンを押下します。
  3. ビルドします。

BlockRAMのサイズを変更する場合は、再度xpsでリンカスクリプトを作成してください。

カテゴリ: