記事 ID: 000097899 コンテンツタイプ: トラブルシューティング 最終改訂日: 2024/06/06

Agliex™ 7 FPGA を対象とする Nios® V プロセッサー向け SDM ブートローダーで、mailbox_client_open() の後に mailbox_client_flash_open() が失敗するのはなぜですか?

環境

    インテル® Quartus® Prime 開発ソフトウェア
BUILT IN - ARTICLE INTRO SECOND COMPONENT
詳細

Agliex™ 7 FPGA セキュア・デバイス・マネージャー (SDM) が FPGA 初期化でビジー状態になっているという問題により、SDM ブートローダーの実行時に Nios® V HAL機能 mailbox_client_flash_open() mailbox_client_open() の後にフラッシュを開くことができないことがあります。

解決方法

セキュア・デバイス・マネージャー FPGA Agliex™ 7 でこの問題を回避するには、関数 mailbox_client_flash_open() の後に遅延試行を追加して、 <プロジェクトの場所>\top_project\sw\mailbox_bootloader\app\mailbox_bootloader.c のメイン関数でフラッシュを開きます。

以下に示す最大試行回数は 1000 回で、各試行回数は 10 ミリ秒遅れます。

attribute_((noreturn)) int main(int argc, char **argv){

intel_mailbox_client* mbox_client = mailbox_client_open(MBOX_NAME);

int record_address_ptr = PAYLOAD_OFFSET;

排他フラッシュ・アクセスの取得

int 試行 = 0;

int MAX_ATTEMPTS = 1000;

while((mailbox_client_flash_open(mbox_client)!=0) &&(++attempt < MAX_ATTEMPTS)){ usleep(10000);

if (try == MAX_ATTEMPTS) error();

......

関連製品

本記事の適用対象: 1 製品

インテル® Agilex™ FPGA & SoC FPGA

1

このページのコンテンツは、元の英語のコンテンツを人力翻訳および機械翻訳したものが混在しています。このコンテンツはお客様の便宜と一般的な情報のみを目的として提供されており、情報の正確さと完全性を保証するものではありません。このページの英語版と翻訳の間に矛盾がある場合は、英語版に準拠します。 このページの英語版をご覧ください。