FlashをNiosIIのROMとして使う

外付けのパラレルFlashやEPCSの残りの領域を使って、コードをFlash上に直接置くことができる。

  • メリット
    • 容量が大きい
    • 電源投入するたびにプログラムを書き込まなくて良い
  • デメリット(XIPの場合)
    • 遅い (Flashによる。DE0のパラレルFlashの場合アクセスタイムが70nsのため、RAMに比べると圧倒的に劣る。)
    • デバッグが不便 (無償版コア NiosII/e のみの制限事項で、ハードウェアブレークポイントが使えない。)

なお、EPCSの場合はXIP不可(たぶん)。よってブート時にRAMに展開することとなる。

BSPの設定

.text, .rodata, .exceptionをROMに置きたい場合、以下のBSP設定をONすること。そうしないとリセットベクタや.dataセクションコピー等の重要なロジックが抜け落ちる…。

  • hal.linker.allow_code_at_reset
  • hal.linker.enable_alt_load
  • hal.linker.enable_alt_load_copy_rwdata

「.exceptionだけRAMに置いたらFlashProgrammerがうまくやってくれる」という意見もあったが、少なくとも11.1sp2では 適切なブートコピアを展開してくれないのでダメ。

altera/qsys/flashをniosiiのromとして使う.txt · 最終更新: 2012/09/19 22:15 by kimu_shu
Driven by DokuWiki Recent changes RSS feed Valid CSS Valid XHTML 1.0