ソース RTL にジェネリックまたはパラメーターが含まれている場合、それらはブロック デザインにモジュールを追加したときに推論され、また [Re-customize Module Reference] ダイアログ ボックスでも設定できます。
次に、n ビットの全加算器のコード例を示します。ここで、adder_width
は加算器の幅を制御するジェネリックです。
図 1. n ビット全加算器のコード例
加算器モジュールをブロック デザインにインスタンシエートすると、このモジュールはジェネリック adder_width
のデフォルト値で定義されたポート幅で追加されます。この例の場合、ポート幅は 2 ビットです。
モジュールをダブルクリックすると、[Re-customize Module Reference] ダイアログ ボックスが開きます。モジュールを右クリックして、Customize Block をクリックしてもブロックをカスタマイズできます。
RTL ソースで定義されているジェネリックまたはパラメーターは、モジュールのインスタンス用に変更および設定できます。パラメーターを変更すると、モジュール シンボルとパラメーターで定義されたポートがそれに応じて変更されます。
OK をクリックして [Re-customize Module Reference] ダイアログ ボックスを閉じ、ブロック デザインのモジュール インスタンスをアップデートします。
図 2. [Re-customize Module Reference] ダイアログ ボックス
次の図のように、ブロック デザインのシンボルがそれに応じて変更されます。
図 3. カスタマイズ後の RTL モジュール