Intel Agilex® 7 エンベデッド・メモリー・ユーザーガイド

ID 683241
日付 4/10/2023
Public
ドキュメント目次

3.3.2. 混合ポートの Read-During-Write モード

混合ポートの Read-During-Write モードは、シンプル・デュアルポート RAM モード、トゥルー・デュアルポート、シンプル・クアッドポート RAM に適用されます。 2 つのポートにおいて、読み出しおよび書き込み動作が同じクロックを使用して同じメモリーアドレスで行われます。一方のポートでアドレスから読み出し、他方のポートで書き込みを行います。
表 15.  混合ポートの Read-During-Write モードにおける RAM の出力モード
出力モード メモリータイプ 詳細 サポートされる動作モード
New Data MLAB

異なるポートへの Read-During-Write 動作により、データが MLAB メモリーに書き込まれると、次の立ち上がりエッジで、MLAB のレジスターされる出力に New Data が反映されます。

このモードは、出力がレジスターされる場合にのみ利用可能です。

  • シンプル・デュアルポート RAM
Old Data M20K、MLAB

異なるポートへの Read-During-Write 動作により、RAM の出力には、特定のアドレスの Old Data の値が反映されます。

MLAB では、このモードは出力がレジスターされる場合にのみ利用可能です。

  • シンプル・デュアルポート RAM
Don't Care M20K、MLAB

RAMは、Don't Care 値または Unknown 値を生成します。

  • M20Kの場合、 インテル® Quartus® Prime 開発ソフトウェアは、書き込み動作と読み出し動作間のタイミングを解析しません。
  • MLAB の場合、この機能を有効にするには、エンベデッド・メモリー・シミュレーション・モデルをコンパイルする際、およびシミュレーションを実行する際に、RDW_DONT_CARE_IS_X 定義フラグをシミュレーション・コマンドに含める必要があります。
    以下は、シミュレーション・コマンドに定義フラグを追加する例です。
    vlog -sv -timescale 1ps/1ps +define+RDW_DONT_CARE_IS_X -work msim_precompile $env(QUARTUS_DIR)/eda/sim_lib/altera_lnsim.sv
  • シンプル・デュアルポート RAM
  • トゥルー・デュアルポート RAM (M20K の場合のみ)
New_a_old_b M20K 異なるポートへの Read-During-Write 動作により、RAM の出力は、ポート A では新しいデータを反映し、ポート B では古いデータを反映します。
  • クアッドポート RAM
表 16.  混合ポート Read-During-Write の出力動作次の表は、混合ポートの Read-During-Write モードにおける出力動作を一覧にして説明しています。これらの動作は、MLAB ブロックにのみ適用されます。
RAM: 2-PORT Intel® FPGA IPの設定 出力動作
パラメーター 有効になっているパラメーターのオプション altera_syncram パラメーター

(read_during_write_mode_mixed_ ports)

Read-During-Write 時の出力データ MLAB アトム (Chip Planner に表示される)
Mixed Port Read-During-Write for Single Input Clock RAM

How should the q_a and q_b outputs behave when reading a memory location that is being written from the other ports?

Old Data old_data 古いデータ4 新しいデータ
New Data new_data 新しいデータ 新しいデータ
Don't Care dont_care Don't care 5 Don't Care
図 24. 混合ポート Read-During-Write: New Data モード次の図は、New Data モードでの混合ポート Read-During-Write 動作における機能の波形サンプルを表しています。


図 25. 混合ポート Read-During-Write: Old Data モード次の図は、Old Data モードでの混合ポート Read-During-Write 動作における機能の波形サンプルを表しています。


図 26. 混合ポート Read-During-Write: Don't Care モード次の図は、Don't Care モードでの混合ポート Read-During-Write 動作における機能の波形サンプルを表しています。この動作は、M20K ブロックにのみ適用されます。


図 27. 混合ポート Read-During-Write: New_a_old_b モード次の図は、New_a_old_b モードでの混合ポート Read-During-Write 動作における機能の波形サンプルを表しています。
4 古いデータは外部ソフトロジックを介して実現します。MLAB ブロックは、新しいデータのみをネイティブにサポートします。
5 出力データは Don't care になります。IP は、Read-During-Write 時に出力データの準安定状態を保証しません。