1.1. ブロックベース・デザイン用語
1.2. デザインブロック再利用の概要
1.3. インクリメンタル・ブロックベース・コンパイルの概要
1.4. コンパイラーのスナップショットを使った保持と再利用
1.5. デザイン分割
1.6. デザインブロック再利用のフロー
1.7. インクリメンタル・ブロックベースのコンパイルフロー
1.8. トップダウン・デザイン、ボトムアップ・デザイン、およびチームベース・デザインのフロー
1.9. インクリメンタル・ブロックベースのコンパイルとデザインブロックの再利用の組み合わせ
1.10. Signal Tapを使ったブロックベース・デザインのデバッグ
1.11. ブロックベースのデザインフロー改訂履歴
1.5. デザイン分割
ブロックベース・デザインフローを使用するには、まずデザインの階層インスタンスからデザイン・パーティションを作成する必要があります。その上でコンパイラーはデザイン・パーティションを別々に処理し、ブロックベースの機能を許可します。
デフォルトでは、すべてのIntel Quartus Primeプロジェクトには単一のルート・パーティションが含まれています。ルート・パーティションにはすべてのペリフェラル・リソースが含まれ、コアリソースが含まれることもあります。ルート・パーティションを再利用するためにエクスポートすると、エクスポートされたパーティションは、ペリフェラル再利用コア・パーティション内のロジックをすべて除外します。ペリフェラル要素をエクスポートして再利用するには、ルート・パーティションをエクスポートします。
パーティションを作成すると、そのパーティション内の階層すべてが親パーティションの一部になり、子パーティションは親の保持属性を継承します。パーティションは、パーティション間でのマージまたは最適化を防止するロジック境界を作成します。 デザイン階層内のデザイン・パーティションはデザイン・パーティションとの関係および境界を図解しています。
図 5. デザイン階層内のパーティションのデザイン
デザイン・パーティションは、インスタンスを論理的に分離することにより、ブロックベースのインクリメンタル・コンパイルとデザインブロックの再利用を容易にします。この論理的な分離により、コンパイラーはデザインの他の部分とは別に各パーティションを合成し、最適化することができます。論理的な分離によって、パーティションの境界を越えてのコンパイラーの最適化を防ぐこともできます。