DSP48E - 2022.1 日本語

Vitis Model Composer ユーザー ガイド (UG1483)

Document ID
UG1483
Release Date
2022-05-26
Version
2022.1 日本語

ザイリンクス DSP48E ブロックは、サポートされるデバイスを使用する DSP アプリケーション用の効率的な機能ブロックです。DSP48E は、48 ビット加算器を備えた 18 x 25 ビットの符号付き乗算器とプログラム可能なマルチプレクサーを統合して、加算器の入力を選択します。

演算は動的に選択できます。オプションの入力および乗算器パイプライン レジスタと、alumode、carryin、および opmode ポートのレジスタを選択できます。DSP48E ブロックは、Implementation タブで Use synthesizable モデル オプションを選択すると、DSP48E ハードウェア プリミティブが含まれないデバイスをターゲットにすることもできます。

図 1. DSP48E


ブロック パラメーター

Simulink® モデルでブロックのアイコンをダブルクリックすると、[Block Parameters] ダイアログ ボックスが開きます。

Basic タブ
A or ACIN input
A 入力を a ポートから直接取るか、カスケード acin ポートから取るかを指定します。acin ポートは別の DSP48 ブロックにのみ接続可能です。
B or BCIN input
B 入力を b ポートから直接取るか、カスケード bcin ポートから取るかを指定します。bcin ポートは別の DSP48 ブロックにのみ接続可能です。
Pattern Detection
Reset p register on pattern detection
パターンが検出されたときに次のサイクルで p レジスタをリセットします。
Pattern Input
Pattern Input from c port
パターン検出に使用するパターンを c ポートから読み出します。
Using Pattern Attribute (48bit hex value)
この値はパターン検出ロジックで使用されます。これは、加算/減算/論理ユニットの出力に対する同一性チェックです。
Pattern attribute
パターン検出器で使用される 48 ビット値です。
Mask Input
Mask input from c port
パターン検出に使用するマスクを c ポートから読み出します。
Using Mask Attribute (48 bit hex value)
パターン検出中に特定のビットをマスクするために使用する 48 ビット値です。
Mask attribute
パターン検出中に特定のビットをマスクするために使用する 48 ビット値です。値 0 はビットを渡し、値 1 はビットをマスクします。
Select rounding mask
パターン検出器で対称丸めまたは収束丸めに使用可能な特別なマスクを選択します。選択肢は、Select maskMode1、および Mode2 です。
Optional Ports タブ
Input Ports
Consolidate control port
opmodealumodecarry_in、および carry_in_sel ポートを 1 つの 15 ビット ポートに統合します。ビット 0 ~ 6 は opmode ポート、ビット 7 ~ 10 は alumode ポート、ビット 11 は carry_in ポート、ビット 12 ~ 14 は carry_in_sel ポートです。Opmode ブロックを使用して DSP48E 命令を生成する場合は、このオプションを使用する必要があります。
Provide c port
c ポートを有効にします。このオプションを選択しない場合、c ポートは 0 に接続されます。
Provide global reset port
rst ポートを有効にします。このポートは、パイプライン選択に基づいて、使用可能なすべてのリセット ポートに接続されます。
Provide global enable port
オプションの en ポートを有効にします。このポートは、パイプライン選択に基づいて、使用可能なすべてのイネーブル ポートに接続されます。
Cascadable Ports
Provide pcin port
pcin ポートを有効にします。pcin ポートは、別の DSP48 ブロックの pcout ポートに接続する必要があります。
Provide carry cascade in port
キャリー カスケード イン ポートを有効にします。このポートは、別の DSP48E ブロックのキャリー カスケード アウト ポートにのみ接続できます。
Provide multiplier sign cascade in port
乗算器の符号付きカスケード入力ポート (multsigncascin) を有効にします。このポートは、別の DSP48E ブロックの乗算器符号付きカスケード出力ポートにのみ接続できます。
Output Ports
Provide carryout port
carryout ポートを有効にします。加減算器の動作モードが 1 つの 48 ビット加算器に設定されている場合、carryout ポートは 1 ビット幅です。動作モードが 24 ビット加算器に設定されている場合、carryout ポートは 2 ビット幅です。MSB は 2 番目の加算器の carryout、LSB は最初の加算器の carryout に対応します。動作モードが 12 ビット加算器に設定されている場合、carryout ポートは 4 ビット幅で、ビットは 4 つの 12 ビット セクションに分割された 48 ビット入力に対応します。
Provide pattern detect port
パターン検出の出力ポートを有効にします。マスクまたは c レジスタからのパターンが一致すると、パターン検出ポートは 1 に設定されます。
Provide pattern bar detect port
パターン バー検出 (patternbdetect) 出力ポートを有効にします。マスクまたは c レジスタからのパターンの反転が一致すると、パターンバー検出ポートは 1 に設定されます。
Provide overflow port
オーバーフロー出力ポートを有効にします。このポートは、DSP48E の演算がビット P[N] (N = 1 ~ 46) の値を超えたことを示します。N は、GUI のマスク フィールドまたは c ポート入力で設定されたマスクの 1 の数により決定されます。
Provide underflow port
アンダーフロー出力ポートを有効にします。このポートは、DSP48E の演算でアンダーフローが発生したことを示します。アンダーフローは、P[N] 未満になると発生します。N は、GUI のマスク フィールドまたは c ポート入力で設定されたマスクの 1 の数により決定されます。
Cascadable Ports
Provide ACOUT port
acout ポートを有効にします。acout ポートは、別の DSP48E ブロックの acin ポートに接続する必要があります。
Provide BCOUT port
bcout ポートを有効にします。bcout ポートは、別の DSP48E ブロックの bcin ポートに接続する必要があります。
Provide PCOUT port
pcout ポートを有効にします。pcout ポートは、別の DSP48 ブロックの pcin ポートに接続する必要があります。
Provide multiplier sign cascade out port
乗算器の符号付きカスケード出力ポート (multsigncascout) を有効にします。このポートは、別の DSP48E ブロックの乗算器符号付きカスケード入力ポートにのみ接続でき、2 つの DSP48E から構築される 96 ビット アキュムレータ/加算器および減算器をサポートするために使用します。
Provide carry cascade out port
キャリー カスケード アウト ポート (carrycascout) を有効にします。このポートは、別の DSP48E ブロックのキャリー カスケード イン ポートにのみ接続できます。
Pipelining タブ
Pipeline Options
Length of a/acin pipeline
入力レジスタ A のパイプラインの長さを指定します。レジスタの長さを 0 にすると、入力のレジスタが削除されます。
Length of b/bCIN pipeline
b または bcin から読み出される b 入力のパイプラインの長さを指定します。
Length of acout pipeline
a/acin 入力と acout 出力ポート間のパイプラインの長さを指定します。パイプラインの長さを 0 にすると、acout パイプラインの長さからレジスタが削除されます。a/acin パイプラインの長さ以下にする必要があります。
Length of bcout pipeline
b/bcin 入力と bcout 出力ポート間のパイプラインの長さを指定します。パイプラインの長さを 0 にすると、bcout パイプラインの長さからレジスタが削除されます。b/bcin パイプラインの長さ以下にする必要があります。
Pipeline c
c ポートからの入力にレジスタを付けるかどうかを示します。
Pipeline p
p および pcout 出力にレジスタを付けるかどうかを示します。
Pipeline multiplier
内部乗算器の出力にレジスタを付けるかどうかを指定します。
Pipeline opmode
opmode ポートにレジスタを付けるかどうかを示します。
Pipeline alumode
alumode ポートにレジスタを付けるかどうかを示します。
Pipeline carry in
キャリー イン ポートにレジスタを付けるかどうかを示します。
Pipeline carry in select
キャリー イン セレクト ポートにレジスタを付けるかどうかを示します。
Reset/Enable Ports タブ
Reset port for a/acin
rst_a ポートを有効にします。1 に設定すると、ポート a のパイプライン レジスタがリセットされます。
Reset port for b/bcin
rst_b ポートを有効にします。1 に設定すると、ポート b のパイプライン レジスタがリセットされます。
Reset port for c
rst_c ポートを有効にします。1 に設定すると、ポート c のパイプライン レジスタがリセットされます。
Reset port for multiplier
rst_m ポートを有効にします。1 に設定すると、内部乗算器のパイプライン レジスタがリセットされます。
Reset port for P
rst_p ポートを有効にします。1 に設定すると、出力レジスタがリセットされます。
Reset port for carry in
rst_carry を有効にします。1 に設定すると、キャリー インのパイプライン レジスタがリセットされます。
Reset port for alumode
rst_alumode ポートを有効にします。1 に設定すると、alumode ポートのパイプライン レジスタがリセットされます。
Reset port for controls (opmode and carry_in_sel)
rst_ctrl ポートを有効にします。1 に設定すると、opmode レジスタ (使用可能な場合) および carry_in_sel レジスタ (使用可能な場合) のパイプライン レジスタがリセットされます。
Enable port for first a/acin register
最初の a パイプライン レジスタのイネーブル ポート ce_a1 を有効にします。
Enable port for second a/acin register
2 番目のパイプライン レジスタのイネーブル ポート ce_a2 を有効にします。
Enable port for first b/bcin register
最初の b パイプライン レジスタのイネーブル ポート ce_b1 を有効にします。
Enable port for second b/bcin register
2 番目の b パイプライン レジスタのイネーブル ポート ce_b2 を有効にします。
Enable port for c
ポート C レジスタのイネーブル ポート ce_c を有効にします。
Enable port for multiplier
乗算器レジスタのイネーブル ポート ce_m を有効にします。
Enable port for p
ポート P 出力レジスタのイネーブル ポート ce_p を有効にします。
Enable port for carry in
キャリー イン レジスタのイネーブル ポート ce_carry_in を有効にします。
Enable port for alumode
alumode レジスタのイネーブル ポート ce_alumode を有効にします。
Enable port for multiplier carry in
乗算器レジスタのイネーブル ポート mult_carry_in を有効にします。
Enable port for controls (opmode and carry_in_sel)
イネーブル ポート ce_ctrl を有効にします。ce_ctrl ポートは、opmode およびキャリー イン セレクト レジスタを制御します。
Implementation タブ
Use synthesizable model
DSP48E を RTL 記述からインプリメントします。DSP48E ハードウェアに直接マップされない可能性があります。これは、DSP48E ブロックを使用するデザインを DSP48E ハードウェア プリミティブを含まないデバイス ファミリにインプリメントする場合に便利です。
Mode of operation for the adder/subtractor
このモードは、高速、低消費電力でロジック使用量の少ない小型の加減算機能をインプリメントするのに使用できます。加算/減算/論理ユニットの加算器と減算器は、2 つの 24 ビット フィールドまたは 4 つの 12 ビット フィールドに分割できます。これには、動作モードを [Two 24-bit adders] または [Four 12-bit adders] に設定します。
Use adder only
ブロックを乗算器を使用せずに最高パフォーマンスになるようにハードウェアで最適化します。シミュレーションで乗算器を使用する命令が実行された場合は、エラーがレポートされます。

このブロックで使用されるその他のパラメーターについては、[Block Parameters] ダイアログ ボックスの共通オプション を参照してください。