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

HAL API を使用する際、汎用シリアル・フラッシュ・インターフェイスFPGA IP で Micron QSPI フラッシュメモリーが正しく書き込まれないのはなぜですか。

環境

    インテル® Quartus® Prime 開発ソフトウェア・プロ・エディション
    汎用シリアル・フラッシュ・インターフェイス・インテル® FPGA
BUILT IN - ARTICLE INTRO SECOND COMPONENT
詳細

この問題は、Quartus® Prime 開発ソフトウェア・プロ・エディションのバージョン 22.1 で、汎用シリアル・フラッシュ・インターフェイス FPGA IP (GSFI IP) の HAL API を使用して Micron QSPI フラッシュメモリーを書き込む場合に発生することがあります。

GSFI IP 向けの HAL API は、以下のソフトウェア・ファイルで利用可能です。

• intel_generic_serial_flash_interface_top時間

• intel_generic_serial_flash_interface_top.C

これは、Micron QSPI フラッシュデバイス向け intel_gsfi_write_block() API のオペコードの不適切なポーリングが原因です。サポートされている他のフラッシュは、この影響を受けません。

解決方法

この問題を回避するには、次の手順を実行します。

  1. ボード・サポート・パッケージ (BSP) プロジェクト内の drivers/src フォルダーを見つけます。
  2. intel_generic_serial_flash_interface_top.c ソフトウェア・ファイルを検索します
  3. intel_gsfi_write_block() API を検索します
  4. API を CMD_STATUS_REGISTER から CMD_FLAG_STATUS_REGISTER に変更します

例:

行 1244 : cmd = ((CMD_FLAG_STATUS_REGISTER << 8) |CMD_QUAD_INPUT_FAST_PROGRAM);

行 1255 : cmd = ((CMD_FLAG_STATUS_REGISTER << 8) |CMD_PAGE_PROGRAM);

注: BSP を再生成すると、HAL API が元の状態にリセットされます。

この問題は、現在のところ、Quartus® Prime 開発ソフトウェアの今後のリリースで解決される予定です。

関連製品

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

インテル® Stratix® 10 FPGA & SoC FPGA
インテル® Arria® 10 FPGA & SoC FPGA
インテル® Cyclone® 10 GX FPGA

1

このページのコンテンツは、元の英語のコンテンツを人力翻訳および機械翻訳したものが混在しています。この内容は参考情報および一般的な情報を提供するためものであり、情報の正確さと完全性を保証するものではありません。インテルは不正確な翻訳があった場合でもいかなる責任を負いません。このページの英語版と翻訳の間に矛盾がある場合は、英語版に準拠します。 このページの英語版をご覧ください。