インテルのみ表示可能 — GUID: mwh1409959493623
Ixiasoft
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. 電源投入時の初期のメモリーコンテンツの指定
インテルのみ表示可能 — GUID: mwh1409959493623
Ixiasoft
2.2.2.1. 組み合わせループの回避
組み合わせループは、デジタルデザインにおいて安定性と信頼性を低下させる最も一般的な原因の1つです。組み合わせループは通常、同期デザインの原則に違反しており、レジスターを含まない直接フィードバック・ループが確立されます。
組み合わせループは可能な限り避けるようにします。同期デザインでは、フィードバック・ループにはレジスターが含まれます。例えば、組み合わせループは、HDLコードで算術式の左側が右側にも見られる場合に発生します。また、組み合わせループは、組み合わせロジックを介してレジスターの出力を同じレジスターの非同期ピンにフィードバックしている場合にも発生します。
図 8. 非同期コントロール・ピンを介しての組み合わせループ
組み合わせループは、次に示されている理由から、本質的にリスクの高いデザイン構造です。
- 組み合わせループの動作は通常、ループに関係するロジックでの相対的な伝播遅延に依存します。このドキュメントでも説明しているとおり、伝播遅延は変化する可能性があります。つまり、ループの動作は予測不可能です。
- 多くのデザインツールでは、組み合わせループによって無限の計算ループが発生する可能性があります。ほとんどのツールでは、組み合わせループを開いてデザインを処理します。デザインフローで使用されるさまざまなツールは、特定のループを異なる方法で開き、元のデザインの意図とは矛盾する方法で処理する場合があります。