AR# 35619

12.1 EDK - 「ERROR: "ld:region ilmb_cntlr_dlmb_cntlr is full"」というエラー メッセージが表示される

説明


ソフトウェア プロジェクトをコンパイルすると、次のエラー メッセージが表示されます。

"/cygdrive/e/Xilinx/12.1/ISE_DS/.../ld:regionilmb_cntlr_dlmb_cntlrisfull(TestApp_Peripheral_microblaze_0/executable.elfsection.stack) make:***[TestApp_Peripheral_microblaze_0/executable.elf]Error1

Done!"

この問題の解決方法を教えてください。

ソリューション


上記のエラー メッセージは、アプリケーションを含めるのに十分な命令およびデータ メモリー スペースがないことを示しています。

この問題を解決するには、ilmb と dlmb のメモリー コントローラーに十分なメモリを割り当てます (注意 : この場合、FPGA の追加ブロック RAM リソースが使用されます)。



ilmb と dlmb のメモリー スペースを増加した後、アプリケーションのリンカー スクリプトを必ず再生成してください。そうしないと、命令 (.text) およびデータ (.data) エリアが前のハードウェア セットアップと同じサイズのままになります。

再生成は次のように行います。
  1. リンカー スクリプトを右クリックし [Remove] をクリックして、リンカー スクリプトを削除します。
  2. [Linker Script] を右クリックし、[Generate Linker Script] を選択します。
  3. [OK] をクリックします。これで新しいメモリー サイズに一致したリンカー スクリプトが生成されます。

ブロック RAM の容量が不足している場合は、SRAM SRAM (XPS_MCH_EMC コアを使用) や DDR SDRAM (MPMC コアを使用) などの外部メモリーの使用を考慮してください。
AR# 35619
日付 12/15/2012
ステータス アクティブ
種類 一般
ツール 詳細 概略