インテル® Agilex™ エンベデッド・メモリー・ユーザーガイド

ID 683241
日付 4/25/2022
Public

このドキュメントの新しいバージョンが利用できます。お客様は次のことを行ってください。 こちらをクリック 最新バージョンに移行する。

ドキュメント目次

2.10. トゥルー・デュアルポートのデュアルクロック・エミュレーター

トゥルー・デュアルポート (TDP) のデュアルクロック・エミュレーターの機能は、TDPのデュアルクロック・モードをエミュレートします。この機能は、TDPのデュアルクロック・モードをサポートする インテル® Arria® 10デバイスとの後方互換性を提供します。

この機能は、次の条件でのみサポートされます。

  • 2つの読み出し/書き込みポートの動作モード
  • AポートとBポートのクロックモードのクロックをカスタマイズする場合
注: TDPのデュアルクロック・エミュレーター機能を有効にする場合は、デュアルポートRAM IP コアのパラメーター・エディターで、Emulate TDP dual clock modeをオンにする必要があります。この機能を有効にする方法に関しては、表 24 を参照してください。

TDPデュアルクロック・エミュレーターは、2つのDCFIFOと1つのRAMブロックで構成されています。DCFIFOは、制御信号のクロック・ドメイン・クロッシング (CDC) に対処します。また、RAMブロックで処理される前後のデータストレージ用の一時バッファーになります。

異なるクロック周波数によって非決定的なレイテンシーが発生するため、valid信号を導入し、出力データが有効であるかを識別します。valid信号がアサートされている場合は、正しい出力データに従う必要があることを示しています。valid信号がデアサートされている場合は、出力データを破棄します。

ポートAへのクロック接続は低速クロック (クロックA) にする必要があり、ポートBへのクロック接続は高速クロック (クロックB) にする必要があります。クロックBをクロックAで割ったクロック周波数比は、7以上になる必要があります。

DCFIFOの深さは、デュアルポートRAM IPで設定されているRAMの深さに従います。DCFIFOの深さは、RAM IPのパラメーター・エディターでHDLを生成後、デザインファイルを介して手動で変更することができます。DCFIFOの深さは、クロックBをクロックAで割ったクロック周波数比よりも大きくする必要があります。これにより、エミュレートされたTDPのデュアルクロック・モードが正しく動作することを保証します。例えば、クロックB周波数/クロックA周波数の比が10の場合は、最小のDCFIFO深度が16 (2^4) 以上であることを確認します。

TDPのデュアルクロック・エミュレーターの機能を使用すると、ポートAとポートBでは異なるレイテンシーが発生します。ポートAのレイテンシーは、2つのクロック周波数の差が大きくなるにつれて小さくなります。最小レイテンシーは5クロックサイクルです。ポートBのレイテンシーは2クロックサイクルに固定されています。このコンフィグレーションで出力レジスターは常に有効になっています。

次の図は、TDPのデュアルクロック・エミュレーターの機能のタイミングを表しています。

図 16. ポートAの出力条件
図 17. ポートBの出力条件
図 18. ポートAのRead-During-Write条件
図 19. ポートBのRead-During-Write条件