DSP58 の機能

Versal ACAP DSP エンジン アーキテクチャ マニュアル (AM004)

Document ID
AM004
Release Date
2022-09-11
Revision
1.2.1 日本語

DSP58 の機能は次のとおりです。

  • DSP48E2 との下位互換性
  • D レジスタを持つ 27 ビットの前置加算器で A または B パスの性能を拡張
  • 前置加算入力として A または B を選択できるため、より多ビットの乗算係数を使用可能
  • 前置加算器の結果を乗算器の両入力に接続できるため、2 乗計算が可能
  • 複素数以外の固定小数点数で乗算 (A*B) と加算 (A+B) の動的な切り替え時に、INMODE 制御によるパイプラインのバランス調整が可能
  • オプションで積のネゲートをサポートした 27 x 24 の 2 の補数乗算器
  • 34 ビット A 入力の下位 27 ビットは乗算器の A 入力へ送信され、全 34 ビット入力は 58 ビット A:B 連結内部バスの上位 34 ビットを形成する
  • A 入力と B 入力のカスケード接続
    • 直接パスおよびカスケード パスにおいてパイプライン化を選択可能
    • 2 段構成の A および B 入力レジスタにそれぞれ専用のクロック イネーブルがあり、個別にレジスタを有効化できる
  • 独立型 58 ビット C 入力および C レジスタ (専用リセットとクロック イネーブル付き)
  • 内部カスケード信号の CARRYCASCIN と CARRYCASCOUT を使用し、2 つの DSP58 を使用した 116 ビットのアキュムレータ/乗算器/減算器、および 2 個より多い DSP58 のカスケード接続をサポート
  • OPMODE が設定可能な MULTSIGNIN および MULTSIGNOUT 内部カスケード信号で、116 ビット MACC への拡張が可能
  • 4 入力加算器/減算器に単一命令複数データ (SIMD) モードを使用し、1 段目の乗算器の使用を不要にする
    • 2 つの独立 CARRYOUT 信号付きデュアル 24 ビット SIMD 加算器/減算器/アキュムレータ
    • 4 つの独立 CARRYOUT 信号付きクワッド 12 ビット SIMD 加算器/減算器/アキュムレータ
  • 58 ビットの論理ユニット
    • ビット単位ロジック動作 - 2 入力 AND、OR、NOT、NAND、NOR、XOR、および XNOR
    • ALUMODE と OPMODE[3:2] を使用して動的に選択可能な論理ユニット モード
  • XOR12、XOR22 (新機能)、XOR24、XOR34 (新機能)、XOR58 (新機能)、および XOR116 (新機能) に設定可能な 116 ビットワイド XOR
    注記: UltraScale™ アーキテクチャからの移行の場合、XOR48 と XOR96 がサポートされます。
  • パターン検出器
    • オーバーフロー/アンダーフロー
    • 収束丸め
    • ターミナル カウント検出と自動リセット (自動リセットよりもクロック イネーブルを優先する設定が可能)
  • 58 ビットの P バスのカスケード接続により、低消費電力の内部加算器カスケードをサポート: 58 ビットの P バスにより、12 ビット クワッドまたは 24 ビット デュアル SIMD 加算器をサポート可能
  • 23 ビット右シフトにより、乗算器実装のビット幅が拡大。UltraScale アーキテクチャからの移行の場合、17 ビット右シフトがサポートされる。
  • ダイナミック ユーザー制御型の動作モード
    • 9 ビットの OPMODE 制御バスにより、W、X、Y、および Z マルチプレクサーへ選択信号が送られる
    • 5 ビットの INMODE 制御バスにより、2 段構成の A および B レジスタ、前置加算器の加算/減算制御、前置加算器のマルチプレクサー機能に使用するマスク ゲートの選択が可能
    • NEGATE 制御ビット (1 ビット) により、条件に応じて乗算器の積をネゲート
    • 4 ビットの ALUMODE 制御バスにより、論理ユニット ファンクションとアキュムレータの加算/減算制御を選択
  • 2 段目の加算器へのキャリーイン
    • 丸め
    • 大規模な加算器/減算器
    • 3 ビット CARRYINSEL マルチプレクサー
  • 2 段目の加算器へのキャリーアウト
    • 大規模な加算器/減算器
    • 各 SIMD 加算器で利用可能 (最大 4)
    • CARRYCASCOUT および MULTSIGNOUT のカスケード接続で、116 ビット MACC への拡張が可能
  • 単一クロックで同期動作
  • オプションの入力、パイプライン、および出力/累算レジスタ
  • 制御信号 (OPMODE、ALUMODE、CARRYINSEL) 用のオプション レジスタ
  • 独立したクロック イネーブルおよび極性をプログラムできる同期リセットにより柔軟性を強化
  • 内部乗算器や XOR ロジックをゲート遮断することで未使用時の消費電力を低減

DSP58 は乗算器の後にアキュムレータを接続して構成されています。乗算と積和のどちらの演算についても、フル スピードで処理するには 3 つ以上のパイプライン レジスタが必要です。1 段目の乗算演算で 2 つの部分積が生成され、2 段目でその部分積の和を求めます。

乗算器内にレジスタが 1 つまたは 2 つしかない場合は、消費電力削減と性能向上のため、常に M レジスタを使用する必要があります。

加算/減算と論理ユニット演算をフル スピードで実行するには、少なくとも 2 つ (入力と出力) のパイプライン レジスタが必要です。

DSP58 のカスケード接続によって、加算器ツリーの代わりに加算器カスケード上にパイプライン化した高速フィルターを、きわめて効率的に実装できます。

マルチプレクサーは OPMODE、ALUMODE、CARRYINSEL などの制御信号によって動的に制御されるため、非常に柔軟な制御が可能になっています。レジスタとダイナミック動作モードを採用したデザインは、乗算器の組み合わせに比べ、DSP58 の機能を活用する上で適しています。

一般的に、DSP58 はダイナミック OPMODE とカスケード機能によって、シーケンシャル、カスケードの両方の演算をサポートします。DSP58 の用途としては、高速フーリエ変換 (FFT) や浮動小数点演算、四則演算 (乗算、加算/減算、除算)、カウンター、大きなバス マルチプレクサーなどが挙げられます。

その他には、同期リセット、クロック イネーブル、デュアル A 入力パイプライン レジスタ、パターン検出、論理ユニット機能、SIMD (単一命令複数データ) 機能、および MACC と加算器/アキュムレータの 116 ビット拡張などがあります。また、DSP58 は収束丸めと対称丸め、ターミナル カウント検出とカウンターの自動リセット、およびシーケンシャル アキュムレータのオーバーフロー/アンダーフロー検出をサポートします。最大 116 ビット幅の XOR ファンクションは、6 つの 12 ビットおよび 2 つの 22 ビット幅 XOR、2 つの 24 ビットおよび 2 つの 34 ビット幅 XOR、または 2 つの 48/58 ビット幅 XOR として実装できます。