AR# 37240

12.1 EDK - MicroBlaze の Linux イメージを SystemACE から起動できない

説明

SystemACE カードから Linux または Petalinux を起動する MicroBlaze エンベデッド システムを作成しました。genace.tcl ファイルを使用して ACE ファイルを作成しましたが、Linux イメージが起動しません。何が問題ですか。

ソリューション

根本的な原因はまだわかっていませんが、MicroBlaze コアが ACE ファイルのスタートアップ プロセスと通信する方法に問題があると考えられます。Linux イメージを起動する単純な回避策があります。ブロック RAM にブートストラップ ソフトウェア アプリケーションを保存するためのスペースが必要です。このアプリケーションをブロック RAM に初期化するよう指定します。 ソフトウェア アプリケーションのコードは次のとおりです。

#include "xparameters.h"

/* The START_ADDRESS is the location where the image (or main()
function) will reside. In this example, it is the address of the DDR3
memory on the SP605 board, but the START_ADDRESS may vary
depending on your linker script (.ld file) definitions and should be
adjusted according to your design code specifications. */

#define START_ADDRESS XPAR_MCB_DDR3_MPMC_BASEADDR

/* Function pointer that is used at the end of the program
to jump to the address location stated by START_ADDRESS */

int (*func_ptr) ();

int main()
{
func_ptr = (void *)START_ADDRESS;
func_ptr();

return 0;
}

アンサー レコード リファレンス

マスター アンサー レコード

Answer Number アンサータイトル 問題の発生したバージョン 修正バージョン
34609 EDK 12.x - アンサーのリスト N/A N/A
AR# 37240
日付 12/15/2012
ステータス アクティブ
種類 一般
ツール
Boards & Kits