1.4.1.1. 同期メモリーブロックの使用
1.4.1.2. サポートされないリセットおよびコントロール条件の回避
1.4.1.3. Read-During-Write動作の確認
1.4.1.4. RAMの推論と実装の制御
1.4.1.5. シングルクロック同期RAM (古いデータでのRead-During-Write動作)
1.4.1.6. シングルクロック同期RAM (新しいデータでのRead-During-Write動作)
1.4.1.7. シンプル・デュアルポート、デュアルクロック同期RAM
1.4.1.8. トゥルー・デュアルポート同期RAM
1.4.1.9. 混合幅デュアルポートRAM
1.4.1.10. バイト・イネーブル信号を備えるRAM
1.4.1.11. 電源投入時の初期のメモリーコンテンツの指定
2.2.3.4. クロック多重化の使用
クロックの多重化を使用して、同じロジック機能を異なるクロックソースで動作させます。このようなデザインでは、多重化によってクロックソースを選択します。
例えば、通信アプリケーションでは複数の周波数規格を扱うため、クロックの多重化が広く使用されます。
図 12. 多重化ロジックとクロックソース
クロック信号に多重化ロジックを追加すると、これまでのセクションで対処した問題が発生する可能性がありますが、多重化されるクロックにおける要件はアプリケーションによって大きく異なります。クロック信号でグローバルクロック配線リソースを使用し、次の基準を満たす場合は、クロックの多重化を行うことができます。
- 最初のコンフィグレーション後にクロック多重化ロジックが変更されない
- デザインで多重化ロジックを使用し、テスト目的でクロックを選択する
- クロック切り替え時に常にレジスターがリセットされる
- クロック切り替えに続く一時的な不正な応答による悪影響がない
デザインでリアルタイムにクロックを切り替える際にリセット信号を使用しない場合に、一時的な不正応答をデザインで許容できない場合は、同期デザインを使用して、レジスターにおけるタイミング違反、クロック信号のグリッチ、競合状態、または他のロジック上の問題がないようにする必要があります。 インテル® Quartus® Prime開発ソフトウェアはデフォルトで、マルチプレクサーを通過すると考えられるすべてのパス、およびマルチプレクサーから提供されると考えられる内部クロック間にあるすべてのパスを最適化して解析します。そのため、マルチプレクサーが常に特定の1つのクロックを選択する場合は、解析が必要以上に制約される可能性があります。完全な解析を必要としない場合は、 インテル® Quartus® Prime開発ソフトウェアでマルチプレクサーの出力をベースクロックとして割り当てると、すべてのレジスター間パスがそのクロックを使用して解析されるようになります。
ヒント: 可能な場合は、多重化ロジックではなく専用のハードウェアを使用してクロックの多重化を実行します。例えば、特定のインテルFPGAデバイスで利用可能なクロック・スイッチオーバー機能やクロック・コントロール・ブロックを使用することができます。これらの専用ハードウェア・ブロックにより、グローバルな低スキュー配線ラインを使用し、クロックラインのロジック遅延によるデバイスのホールド時間の問題を回避します。
注: クロック構造に関するデバイス固有の情報については、該当するデバイスのデータシートまたはハンドブックを参照してください。