記事 ID: 000073644 コンテンツタイプ: トラブルシューティング 最終改訂日: 2021/08/27

PCI* Express 向け Avalon-MM インテル® Stratix® 10 ハード IP のバーストAvalon -MM マスター (BAM) インターフェイスと PCI* Express のインテル® P タイル Avalon® -MM IP のアドレスが正しくないのはなぜですか?

環境

  • インテル® Quartus® Prime 開発ソフトウェア・プロ・エディション
  • Avalon-MM インテル® Stratix® 10 PCI Express* のハード IP
  • BUILT IN - ARTICLE INTRO SECOND COMPONENT

    クリティカルな問題

    詳細

    インテル® Quartus® Prime 開発ソフトウェア・プロ・エディション・バージョン 19.3 で問題が発生したため、インテル® P タイル / H タイル Avalon® PCI Express* のメモリー・マップド (Avalon-MM) IP が異なるサイズの複数の BAR で構成されている場合、BAM の上位アドレスが BAR サイズに従って正しくマスクされていません。システムが BAR の物理アドレスを最高の BAR サイズに揃えない場合、ユーザー側のサイズのアドレスフィールドが正しくありません。

    例えば BAR0: 64KB および BAR2: 1MB の場合、システムは次の物理アドレスを割り当てます。

    BAR0 向け F021000

    BAR2 向け F020000

    BAM アドレスは 20 ビットです

    システムが BAR0 オフセット・0x800をターゲットとする書き込みまたは読み取り要求を発行すると、BAM インターフェイスはアドレス0x10800を出力0x00800

    解決方法

    インテル® Quartus® Prime 開発ソフトウェア・プロ・エディション・バージョン 19.3 および 19.4 でこの問題を回避するには、アプリケーションが外部で BAM BAR コンジット (bam_bar_o) と BAR サイズを使用してアドレス・マスクを実装できます。

    上記の例:

    bam_address_fix = (bam_bar_o== 3'b000) を割り当てますか?{4'b0、bam_address_o [15:0]}: bam_address_o;

     

    この問題は、インテル® Quartus® Prime 開発ソフトウェア・プロ・エディションバージョン 20.1 で修正されています。

    関連製品

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

    インテル® Agilex™ FPGA & SoC FPGA
    インテル® Stratix® 10 FPGA & SoC FPGA

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