インテル® Agilex™ 可変精度DSPブロック・ユーザーガイド

ID 683037
日付 2/05/2021
Public
ドキュメント目次

6.2.2. シストリック遅延レジスターのイネーブル

シストリック・アーキテクチャーでは、入力データはデータバッファーとして動作し、レジスターのカスケードに供給されます。各レジスターは入力サンプルを乗算器に送信し、ここでそれぞれの係数が乗算されます。チェーン加算器は、乗算器からの徐々に結合された結果とchainin[]入力ポートから以前に登録された結果を格納し、最終結果を形成します。加算されたときに結果が適切に同期するように、各積和要素を1サイクル遅らせる必要があります。連続する遅延はそれぞれ、係数メモリーとそれぞれの積和要素のデータバッファーの両方をアドレスするために使用されます。具体的には、第2の積和要素に向けた1つの遅延、第3の積和要素に向けた2つの遅延などとなります。

図 63. シストリック・レジスター


x(t) は、入力サンプルの連続ストリームからの結果を表し、y(t) は、一連の入力サンプルの合計を表し、それぞれの係数で乗算されます。入力と出力の両方の結果は、左から右へと進みます。c(0) からc(N-1) は、係数を表します。シストリック遅延レジスターはS-1 で表されますが、この–1は単一のクロック遅延を意味します。シストリック遅延レジスターは、乗算器のオペランドからの結果と累積された合計が確実に同期するような方法で、パイプライン化に向けて入力と出力に追加されます。この処理要素は、フィルタリング関数を計算する回路を形成する目的で複製されます。この関数は次の式で表されます。



Nはアキュムレーターに入力されたデータのサイクル数、y(t)はタイムtでの出力、A(t)はタイムtでの入力、B(i)は係数をそれぞれ表します。式中のtiはタイムの特定の時点に相当するため、タイムtにおける出力サンプルy(t)を算出するには、タイムの異なる N時点での入力サンプルのグループあるいはA(n)、A(n-1)、A(n-2)、… A(n-N+1) が必要となります。 N入力サンプルのグループはN係数によって乗算、合計されて最終結果yを形成します。

シストリック・レジスター・アーキテクチャーは、sum-of-2モードとsum-of-4モードのみで使用可能です。

次の図は、2つの乗算器を持つシストリック遅延レジスターの実装を示しています。

図 64. 2つの乗算器を持つシストリック遅延レジスターの実装


2つの乗算器の合計は次の式で表されます。



次の図は、4つの乗算器を持つシストリック遅延レジスターの実装を示しています。

図 65. 4つの乗算器を持つシストリック遅延レジスターの実装


4つの乗算器の合計は次の式で表されます。



シストリック遅延レジスターの実装が持つ利点を以下にリストします。

  • DSPリソース使用量の削減
  • チェーン加算器のストラクチャーを使用することによる、DSPブロック内での効率的なマッピングのイネーブル