ポートを定義する際、ポートは次のようになります。
- 制約を設定することもしないこともできます。
- 通常は制約されます。
- エンティティ宣言部分では制約を設定しないままにできます。
- ポートに制約を設定しない場合は、フォーマル ポートと実際の信号を接続するときに、インスタンシエーションでポートの幅を定義します。
- ポートに制約を設定しない場合、同じエンティティのインスタンシエーションを複数作成し、異なるポート幅を定義できます。
推奨: 制約の設定されていないポートは使用しないでください。ジェネリックを使用して制約したポートを定義します。インスタンシエーション時にこれらのジェネリックに異なる値を適用します。最上位エンティティには制約を設定していないポートを含めないでください。
ポートには 2 次元以上の配列型は使用できません。エンティティ宣言でも VHDL ジェネリックを宣言できます。