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

混合幅デュアルポートメモリーのシミュレーションでバイトオーダーが反転するのはなぜですか?

環境

  • インテル® Quartus® II サブスクリプション・エディション
  • シミュレーション
  • BUILT IN - ARTICLE INTRO SECOND COMPONENT
    詳細 Quartus® II ソフトウェアのバージョン 13.0 以前の問題により、RTL とゲートレベルのシミュレーションの間で、デュアルポートの混在メモリーのバイトオーダーが反転する場合があります。この問題は、RTL コード内のメモリーを推論する際に発生する可能性があります。
    解決方法

    この問題を回避するには、RTL コードを変更して、メモリー変数を低から高ではなく高から低に配置します。

    例えば、RTL コードに以下のようなメモリー宣言がある場合:

    type ram_type1 is array (0 to DEPTH-1) of std_logic_vector((DATA_WIDTH -1) downto 0);

    次のように変更します。

    type ram_type1 is array (DEPTH-1 downto 0) of std_logic_vector((DATA_WIDTH -1) downto 0);

    この問題は、Quartus® II ソフトウェアの今後のリリースで修正される予定です。

    関連製品

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

    インテル® プログラマブル・デバイス

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