intel UG-20094 Cyclone 10 GX ネイティブ固定小数点 DSP IP コア
Intel® Cyclone® 10 GX ネイティブ固定小数点 DSP IP コア ユーザーガイド
Intel Cyclone® 10 GX ネイティブ固定小数点 DSP IP コアは、単一の Intel Cyclone 10 GX 可変精度デジタル信号処理 (DSP) ブロックをインスタンス化して制御します。Cyclone 10 GX ネイティブ固定小数点 DSP IP コアは、Intel Cyclone 10 GX デバイスでのみ使用できます。
Cyclone 10 GX ネイティブ固定小数点 DSP IP コアの機能ブロック図
関連情報
Intel FPGA IP コアの紹介。
Cyclone 10 GX ネイティブ固定小数点 DSP IP コアの機能
Cyclone 10 GX ネイティブ固定小数点 DSP IP コアは、次の機能をサポートしています。
- 高性能、電力最適化、完全登録済みの乗算演算
- 18ビットおよび27ビットのワード長
- DSPブロックあたり18つの19×27乗算器または27つのXNUMX×XNUMX乗算器
- 加算、減算、および乗算結果を結合するための64ビットのダブル累算レジスタを内蔵
- プリアダーが無効の場合は19ビットまたは27ビットのカスケード接続、フィルタリングアプリケーション用のタップ遅延ラインを形成するためにプリアダーが使用される場合は18ビットのカスケード接続
- 外部ロジックのサポートなしで、出力結果を 64 つのブロックから次のブロックに伝播するカスケード XNUMX ビット出力バス
- 対称フィルタ用の19ビットおよび27ビットモードでサポートされるハードプリアダー
- フィルタ実装用の18ビットおよび27ビットモードの内部係数レジスタバンク
- 分散出力加算器を備えた 18 ビットおよび 27 ビットのシストリック有限インパルス応答 (FIR) フィルタ
はじめる
この章では、一般的な概要について説明します。view インテル FPGA IP コアの設計フローの概要をまとめたガイドで、Cyclone 10 GX ネイティブ固定小数点 DSP IP コアをすぐに使い始めるのに役立ちます。インテル FPGA IP ライブラリは、インテル Quartus® Prime のインストール プロセスの一部としてインストールされます。ライブラリから任意のインテル FPGA IP コアを選択してパラメータ化できます。インテルは、インテル FPGA DSP IP コアをカスタマイズしてさまざまなアプリケーションをサポートできるようにする統合パラメータ エディタを提供しています。パラメータ エディタは、パラメータ値の設定とオプションのポートの選択をガイドします。
関連情報
- インテル FPGA IP コアの紹介
IP コアのパラメーター化、生成、アップグレード、シミュレーションなど、すべての Intel FPGA IP コアに関する一般的な情報を提供します。 - バージョンに依存しない IP と Platform Designer (Standard) シミュレーション スクリプトの作成
ソフトウェアまたは IP バージョンのアップグレードを手動で更新する必要のないシミュレーション スクリプトを作成します。 - プロジェクト管理のベスト プラクティス
プロジェクトと IP の効率的な管理と移植のためのガイドライン files.
Cyclone 10 GX ネイティブ固定小数点 DSP IP コアのパラメータ設定
Intel Quartus Prime ソフトウェアのパラメーター エディターを使用してパラメーターを指定することにより、Cyclone 10 GX ネイティブ固定小数点 DSP IP コアをカスタマイズできます。
操作モードタブ
パラメータ | IP 生成パラメーター | 価値 | 説明 |
操作モードを選択してください | 動作モード | m18×18_full m18×18_sumof2 m18×18_plus36 m18×18_systolic m27×27 | 希望する動作モードを選択します。 |
乗算器の設定 | |||
最上位乗数 x オペランドの表現形式 | 符号付き最大値 | 署名済み 署名なし | 上位乗数 x オペランドの表現形式を指定します。 |
パラメータ | IP 生成パラメーター | 価値 | 説明 |
上位乗数 y オペランドの表現形式 | 署名済み | 署名済み 署名なし | 上位乗数 y オペランドの表現形式を指定します。 |
下側乗数 x オペランドの表現形式 | 署名済み | 署名済み 署名なし | 下位乗数 x オペランドの表現形式を指定します。 |
下側乗数 y オペランドの表現形式 | 署名済み | 署名済み 署名なし | 下側乗数 y オペランドの表現形式を指定します。
常に選択する 署名なし のために m18×18_プラス36 . |
「サブ」ポートを有効にする | 有効にする | いいえ はい | 選択 はい 有効にする
サブポート。 |
乗算器のレジスタ入力「sub」 | サブクロック | いいえ クロック0 クロック1 クロック2 | 選択 クロック0, クロック1、 または クロック2 サブ入力レジスタの入力クロック信号を有効にして指定します。 |
入力カスケード | |||
「ay」入力の入力カスケードを有効にする | スキャンを使用する | いいえ はい | 選択 はい yデータ入力用の入力カスケードモジュールを有効にします。
入力カスケード モジュールを有効にすると、Cyclone 10 GX ネイティブ固定小数点 DSP IP コアは、ay 入力信号の代わりに scanin 入力信号を入力として使用します。 |
'by'入力の入力カスケードを有効にする | スキャンの使用 | いいえ はい | 選択 はい データ入力によって入力カスケードモジュールを有効にします。
入力カスケード モジュールを有効にすると、Cyclone 10 GX ネイティブ固定小数点 DSP IP コアは、by 入力信号ではなく、ay 入力信号を入力として使用します。 |
データエイ遅延レジスタを有効にする | 遅延スキャンアウト | いいえ はい | 選択 はい ay と by 入力レジスタ間の遅延レジスタを有効にします。
この機能はサポートされていません m18×18_プラス36 そして m27x27 動作モード。 |
パラメータ | IP 生成パラメーター | 価値 | 説明 |
遅延レジスタによるデータの有効化 | 遅延スキャンアウト | いいえ はい | 選択 はい 入力レジスタとスキャンアウト出力バス間の遅延レジスタを有効にします。
この機能はサポートされていません m18×18_プラス36 そして m27x27 動作モード。 |
スキャンアウトポートを有効にする | gui_scanout_enable | いいえ はい | 選択 はい 有効にする
スキャンアウト出力バス。 |
'スキャンアウト'出力バス幅 | スキャンアウト幅 | 1–27 | 幅を指定する
スキャンアウト出力バス。 |
データ 'x' 構成 | |||
'ax' 入力バス幅 | 軸の幅 | 1–27 | 幅を指定する
ax入力バス。(1) |
乗算器のレジスタ入力「ax」 | 斧時計 | いいえ クロック0 クロック1 クロック2 | 選択 クロック0, クロック1、 または クロック2 ax入力レジスタの入力クロック信号を有効にして指定します。
ax入力レジスタは、設定した場合は使用できません。 'ax' オペランドソース に '係数'. |
'bx' 入力バス幅 | 幅 | 1–18 | 幅を指定する
bx入力バス。(1) |
乗算器のレジスタ入力 'bx' | bx_クロック | いいえ クロック0 クロック1 クロック2 | 選択 クロック0, クロック1、 または クロック2 bx入力レジスタの入力クロック信号を有効にして指定します。
bx入力レジスタは、設定した場合は使用できません。 'bx' オペランドソース に '係数'. |
データ 'y' 構成 | |||
'ay' または 'scanin' バス幅 | スキャン幅 | 1–27 | ayまたはscanin入力バスの幅を指定します。1) |
乗算器の入力「ay」または入力「scanin」を登録する | スキャンインクロック | いいえ クロック0 クロック1 クロック2 | 選択 クロック0, クロック1、 または クロック2 y または scanin 入力レジスタの入力クロック信号を有効にして指定します。 |
'by'入力バス幅 | 幅によって | 1–19 | 入力バスの幅を指定します。(1) |
パラメータ | IP 生成パラメーター | 価値 | 説明 |
乗算器のレジスタ入力 'by' | 時計によって | いいえ クロック0 クロック1 クロック2 | 選択 クロック0, クロック1、 または クロック2 またはスキャンインによる入力クロック信号を有効にして指定する
入力レジスタ。(1) |
出力「結果」設定 | |||
'resulta' 出力バス幅 | 結果の幅 | 1–64 | 幅を指定する
結果出力バス。 |
'resultb' 出力バス幅 | 結果b幅 | 1–64 | resultb出力バスの幅を指定します。 resultbはoperation_modeを使用する場合にのみ使用できます。 m18×18_フル. |
出力レジスタを使用する | 出力クロック | いいえ クロック0 クロック1 クロック2 | 選択 クロック0, クロック1、 または クロック2 resulta および resultb 出力レジスタの入力クロック信号を有効にして指定します。 |
プリアダータブ
パラメータ | IP 生成パラメーター | 価値 | 説明 |
'ay' オペランドソース | オペランドソース | 入力プリアダー | ay入力のオペランドソースを指定します。選択 プレアダー 上位乗算器のプリアダー モジュールを有効にします。ay と by オペランド ソースの設定は同じである必要があります。 |
'by' オペランドソース | オペランドソースmby | 入力プリアダー | 入力によるオペランドソースを指定します。選択 プレアダー 下位乗算器のプリアダー モジュールを有効にします。ay と by オペランド ソースの設定は同じである必要があります。 |
前置加算器の演算を減算に設定する | プレアダー_減算_a | いいえ はい | 選択 はい 上位乗算器のプリアダーモジュールの減算演算を指定します。上位乗算器と下位乗算器のプリアダー設定は同じである必要があります。 |
前置加算器bの演算を減算に設定する | プレアダー_減算_b | いいえ はい | 選択 はい 下部乗算器のプリアダーモジュールの減算演算を指定します。上部乗算器と下部乗算器のプリアダー設定は同じである必要があります。 |
データ 'z' 構成 | |||
'az' 入力バス幅 | az_幅 | 1–26 | az入力バスの幅を指定します。(1) |
乗算器のレジスタ入力「az」 | az_clock | いいえ クロック0 クロック1 クロック2 | 選択 クロック0, クロック1、 または クロック2 az 入力レジスタの入力クロック信号を有効にして指定します。ay 入力レジスタと az 入力レジスタのクロック設定は同じである必要があります。 |
'bz' 入力バス幅 | 幅 | 1–18 | bz入力バスの幅を指定します。(1) |
乗算器のレジスタ入力 'bz' | bz_クロック | いいえ クロック0 クロック1 クロック2 | 選択 クロック0, クロック1、 または クロック2 bz 入力レジスタの入力クロック信号を有効にして指定します。by および bz 入力レジスタのクロック設定は同じである必要があります。 |
内部係数タブ
パラメータ | IP 生成パラメーター | 価値 | 説明 |
'ax' オペランドソース | オペランドソース最大 | 入力 係数 | 入力バスのオペランドソースを指定します。選択 係数 上位乗算器の内部係数モジュールを有効にします。
選択 いいえ のために 乗算器のレジスタ入力「ax」 内部係数機能を有効にする場合のパラメータ。 |
パラメータ | IP 生成パラメーター | 価値 | 説明 |
ax および bx オペランド ソースの設定は同じである必要があります。 | |||
'bx' オペランドソース | オペランドソースmbx | 入力 係数 | bx入力バスのオペランドソースを指定します。選択 係数 上位乗算器の内部係数モジュールを有効にします。
選択 いいえ のために 乗算器のレジスタ入力 'bx' 内部係数機能を有効にする場合のパラメータ。 ax および bx オペランド ソースの設定は同じである必要があります。 |
'coefsel' 入力レジスタ設定 | |||
乗算器のレジスタ入力 'coefsela' | クロック | いいえ クロック0 クロック1 クロック2 | 選択 クロック0, クロック1、 または クロック2 coefsela 入力レジスタの入力クロック信号を有効にして指定します。 |
乗算器のレジスタ入力 'coefselb' | クロック選択係数 | いいえ クロック0 クロック1 クロック2 | 選択 クロック0, クロック1、 または クロック2 coefselb 入力レジスタの入力クロック信号を有効にして指定します。 |
係数保存構成 | |||
係数a0~7 | 係数a0~7 | 整数 | Ax 入力バスの係数値を指定します。
18 ビット動作モードの場合、最大入力値は 218 – 1 です。27 ビット動作の場合、最大値は 227 – 1 です。 |
係数b0~7 | 係数b0~7 | 整数 | bx 入力バスの係数値を指定します。 |
アキュムレータ/出力カスケードタブ
パラメータ | IP 生成パラメーター | 価値 | 説明 |
「蓄積」ポートを有効にする | 蓄積を有効にする | いいえ はい | 選択 はい 有効にする
アキュムレータポート。 |
「negate」ポートを有効にする | 有効_否定 | いいえ はい | 選択 はい 有効にする
ポートを否定します。 |
「loadconst」ポートを有効にする | enable_loadconst | いいえ はい | 選択 はい 有効にする
loadconst ポート。 |
アキュムレータのレジスタ入力「累積」 | 蓄積クロック | いいえ クロック0 クロック1 クロック2 | 選択 クロック0 , クロック1、 または クロック2 累算入力レジスタの入力クロック信号を有効にして指定します。 |
パラメータ | IP 生成パラメーター | 価値 | 説明 |
アキュムレータのレジスタ入力 'loadconst' | ロード_const_クロック | いいえ クロック0 クロック1 クロック2 | 選択 クロック0, クロック1、 または クロック2 loadconst 入力レジスタの入力クロック信号を有効にして指定します。 |
加算器ユニットのレジスタ入力「否定」 | 否定時計 | いいえ クロック0 クロック1 クロック2 | 選択 クロック0, クロック1、 または クロック2 ネゲート入力レジスタの入力クロック信号を有効にして指定します。 |
ダブルアキュムレータを有効にする | ダブルアキュムレーションを有効にする | いいえ はい | 選択 はい ダブルアキュムレータ機能を有効にします。 |
プリセット定数のN値 | ロード定数値 | 0 – 63 | プリセット定数値を指定します。
この値は2N どこ N 事前に設定された定数値です。 |
チェーンインポートを有効にする | チェーンアダーを使用する | いいえ はい | 選択 はい 出力カスケード モジュールとチェーンイン入力バスを有効にします。
出力カスケード機能はサポートされていません m18×18_フル 動作モード。 |
チェーンアウトポートを有効にする | gui_chainout_enable | いいえ はい | 選択 はい チェーンアウト出力バスを有効にします。出力カスケード機能は、
m18×18_フル 動作モード。 |
パイプラインタブ
パラメータ | IP 生成パラメーター | 価値 | 説明 |
入力データ信号に入力パイプラインレジスタを追加する (x/y/z/coefsel) | 入力パイプラインクロック | いいえ クロック0 クロック1 クロック2 | 選択 クロック0, クロック1、 または クロック2 x、y、z、coefsela、coefselb パイプライン入力レジスタの入力クロック信号を有効にして指定します。 |
'sub'データ信号に入力パイプラインレジスタを追加する | サブパイプラインクロック | いいえ クロック0 クロック1 クロック2 | 選択 クロック0, クロック1、 または クロック2 サブパイプライン入力レジスタの入力クロック信号を有効にして指定します。(2) |
入力パイプラインレジスタを「累積」データ信号に追加します | accum_pipeline_clock | いいえ クロック0 クロック1 クロック2 | 選択 クロック0, クロック1、 または クロック2 累積パイプライン入力レジスタの入力クロック信号を有効にして指定します。2) |
'loadconst'データ信号に入力パイプラインレジスタを追加します | ロード_const_パイプライン_クロック | いいえ クロック0 クロック1 クロック2 | 選択 クロック0, クロック1、 または クロック2 loadconst パイプライン入力レジスタの入力クロック信号を有効にして指定します。(2) |
'negate'データ信号に入力パイプラインレジスタを追加する | パイプラインクロックを否定する | いいえ クロック0 クロック1 クロック2 | 選択 クロック0, クロック1、 または クロック2 ネゲートパイプライン入力レジスタの入力クロック信号を有効にして指定します。2) |
動作モードごとの最大入力データ幅
表に指定されているように、x、y、z 入力のデータ幅をカスタマイズできます。
動的制御信号のすべてのパイプライン入力レジスタには同じクロック設定が必要です。
操作モード | 最大入力データ幅 | |||||
ax | ay | az | bx | by | bz | |
プリアダーや内部係数なし | ||||||
m18×18_フル | 18(署名済み)
18 (署名なし) |
19(署名済み)
18 (無署名) |
未使用 | 18(署名済み)
18 (署名なし) |
19(署名済み)
18 (署名なし) |
未使用 |
m18×18_合計2 | ||||||
m18×18_収縮期 | ||||||
m18×18_プラス36 | ||||||
m27×27 | 27(署名済み)
27 (無署名) |
未使用 | ||||
プリアダー機能のみ | ||||||
m18×18_フル | 18(署名済み)
18 (無署名) |
|||||
m18×18_合計2 | ||||||
m18×18_収縮期 | ||||||
m27×27 | 27(署名済み)
27 (署名なし) |
26(署名済み)
26 (無署名) |
未使用 | |||
内部係数機能のみ | ||||||
m18×18_フル | 未使用 | 19(署名済み)
18 (無署名) |
未使用 | 19(署名済み)
18 (署名なし) |
未使用 | |
m18×18_合計2 | ||||||
m18×18_収縮期 | ||||||
m27×27 | 27(署名済み)
27 (無署名) |
未使用 |
機能説明
Cyclone 10 GX ネイティブ固定小数点 DSP IP コアは、2 × 18 乗算と 18 × 27 乗算の 27 つのアーキテクチャで構成されています。Cyclone 10 GX ネイティブ固定小数点 DSP IP コアの各インスタンス化では、選択した動作モードに応じて 1 つのアーキテクチャのうち 2 つだけが生成されます。オプションのモジュールをアプリケーションに有効にすることができます。
関連情報
Intel Cyclone 10 GX コア ファブリックおよび汎用 I/O ハンドブックの「Intel Cyclone 10 GX デバイスの可変精度 DSP ブロック」の章。
動作モード
Cyclone 10 GX ネイティブ固定小数点 DSP IP コアは、5 つの動作モードをサポートしています。
- 18 × 18 フルモード
- 18 × 18 2 の和モード
- 18 × 18 プラス 36 モード
- 18 × 18 シストリックモード
- 27 × 27 モード
18 × 18 フルモード
18 × 18フルモードに設定すると、Cyclone 10 GXネイティブ固定小数点DSP IPコアは18つの独立した19(符号付き/符号なし)× 18(符号付き)またはXNUMXとして動作します。
(符号付き/符号なし) × 18 (符号なし) の 37 ビット出力乗算器。このモードでは、次の式が適用されます。
- 結果 = ax * ay
- 結果b = bx * by
18 × 18 フルモードアーキテクチャ
18 × 18 2 の和モード
18 × 18 Sum of 2 モードでは、Cyclone 10 GX ネイティブ固定小数点 DSP IP コアは、上位および下位の乗算器を有効にし、2 つの乗算器間の加算または減算の結果を生成します。サブダイナミック制御信号は、加算器を制御して加算または減算演算を実行します。アキュムレータ/出力カスケードを有効にすると、Cyclone 10 GX ネイティブ固定小数点 DSP IP コアの結果出力幅は最大 64 ビットをサポートできます。このモードでは、結果 =[±(ax * ay) + (bx * by)] の式が適用されます。
18 × 18 2 モード アーキテクチャの合計
18 × 18 プラス 36 モード
18 × 18 Plus 36 モードに設定すると、Cyclone 10 GX ネイティブ固定小数点 DSP IP コアは上位の乗算器のみを有効にします。このモードでは、resulta = (ax * ay) + concatenate(bx[17:0],by[17:0]) という式が適用されます。
18 × 18 プラス 36 モード アーキテクチャ
このモードを使用する場合は、下位乗算器 y オペランドの表現形式を符号なしに設定する必要があります。このモードで入力バスが 36 ビット未満の場合、36 ビット入力を埋めるために必要な符号付き拡張を提供する必要があります。
36 × 18 Plus 18 モードで 36 ビット未満のオペランドを使用する
この元ampこの例では、10 ビットのオペランドの代わりに 18 (バイナリ) の符号付き 18 ビット入力データを使用して、36 × 12 Plus 101010101010 動作モードを使用するように Cyclone 36 GX ネイティブ固定小数点 DSP IP コアを構成する方法を示します。
- 下位乗数 x オペランドの表現形式を符号付きに設定します。
- 下位乗数 y オペランドの表現形式を unsigned に設定します。
- 'bx' 入力バス幅を 18 に設定します。
- 「by」入力バス幅を 18 に設定します。
- bx入力バスに「111111111111111111」のデータを提供します。
- 入力バスに「111111101010101010」のデータを提供します。
18 × 18 シストリックモード
18 × 18 シストリック動作モードでは、Cyclone 10 GX ネイティブ固定小数点 DSP IP コアは、トップおよびボトム乗算器、トップ乗算器の入力シストリック レジスタ、および入力信号のチェーン用のチェーン シストリック レジスタを有効にします。出力カスケードを有効にすると、このモードでは 44 ビットの結果出力幅がサポートされます。出力カスケードなしでアキュムレータ機能を有効にすると、結果出力幅を 64 ビットに設定できます。
18 × 18 シストリックモードアーキテクチャ
27 × 27 モード
27 × 27 モードに設定すると、Cyclone 10 GX ネイティブ固定小数点 DSP IP コアは 27(符号付き/符号なし) × 27(符号付き/符号なし) の乗算器を有効にします。出力バスは、アキュムレータ/出力カスケードを有効にすると最大 64 ビットをサポートできます。このモードでは、resulta = ax * ay の式が適用されます。
27 × 27 モードアーキテクチャ
オプションのモジュール
Cyclone 10 GX ネイティブ固定小数点 DSP IP コアで利用可能なオプション モジュールは次のとおりです。
- 入力カスケード
- 前置加算器
- 内部係数
- アキュムレータと出力カスケード
- パイプラインレジスタ
入力カスケード
入力カスケード機能は、ay および by 入力バスでサポートされています。「ay」入力の入力カスケードを有効にするを Yes に設定すると、Cyclone 10 GX ネイティブ固定小数点 DSP IP コアは、ay 入力バスではなくスキャン入力信号から入力を取得します。「by」入力の入力カスケードを有効にするを Yes に設定すると、Cyclone 10 GX ネイティブ固定小数点 DSP IP コアは、by 入力バスではなく y 入力バスから入力を取得します。
アプリケーションの正確性を保つために、入力カスケードを有効にするときは常に、ay および/または by の入力レジスタを有効にすることをお勧めします。
遅延レジスタを有効にして、入力レジスタと出力レジスタ間のレイテンシ要件に一致させることができます。コアには 2 つの遅延レジスタがあります。上部の遅延レジスタは y またはスキャンイン入力ポートに使用され、下部の遅延レジスタはスキャンアウト出力ポートに使用されます。これらの遅延レジスタは、18 × 18 フル モード、18 × 18 2 の合計モード、および 18 × 18 シストリック モードでサポートされています。
プリアダー
プリアダーは次の構成で設定できます。
- 18 つの独立した XNUMX ビット (符号付き/符号なし) プリアダー。
- 26 つの XNUMX ビットのプリアダー。
18 × 18 乗算モードでプリアダーを有効にすると、ay と az が上部プリアダーへの入力バスとして使用され、by と bz が下部プリアダーへの入力バスとして使用されます。27 × 27 乗算モードでプリアダーを有効にすると、ay と az がプリアダーへの入力バスとして使用されます。プリアダーは加算と減算の両方の演算をサポートします。同じ DSP ブロック内の両方のプリアダーを使用する場合は、同じ演算タイプ (加算または減算) を共有する必要があります。
内部係数
内部係数は、18 ビットおよび 27 ビット モードの被乗数に対して最大 XNUMX つの定数係数をサポートできます。内部係数機能を有効にすると、係数マルチプレクサの選択を制御する XNUMX つの入力バスが生成されます。coefsela 入力バスは、上位乗算器の定義済み係数を選択するために使用され、counsela 入力バスは、下位乗算器の定義済み係数を選択するために使用されます。
内部係数ストレージは動的に制御可能な係数値をサポートしていないため、このような操作を実行するには外部係数ストレージが必要です。
アキュムレータと出力カスケード
アキュムレータ モジュールを有効にすると、次の操作を実行できます。
- 加算または減算演算
- 2Nの定数値を使用したバイアス丸め操作
- デュアルチャネル蓄積
アキュムレータの加算または減算操作を動的に実行するには、negate 入力信号を制御します。バイアス丸め操作の場合、プリセット定数のパラメータ N 値に整数を指定して、アキュムレータ モジュールを有効にする前に、2N のプリセット定数を指定してロードできます。整数 N は 64 未満である必要があります。loadconst 信号を制御して、プリセット定数の使用を動的に有効または無効にすることができます。この操作は、アキュムレータ フィードバック パスへのラウンド値のアクティブな多重化として使用できます。ロードされたコストと累積信号の使用は相互に排他的です。
ダブル アキュムレータ レジスタを有効にするには、パラメーター Enable double accumulator を使用してダブル アキュムレータを実行し、ダブル アキュムレータを実行します。アキュムレータ モジュールは、チェーン入力ポートとチェーン アウト出力ポートを有効にすることで、加算または減算演算のために複数の DSP ブロックのチェーンをサポートできます。18 × 18 シストリック モードでは、チェーン入力バスとチェーン アウト出力バスの 44 ビットのみが使用されます。ただし、入力バスのすべての 64 ビット チェーンは、前の DSP ブロックからのチェーン アウト出力バスに接続する必要があります。
パイプラインレジスタ
Cyclone 10 GX ネイティブ固定小数点 DSP IP コアは、単一レベルのパイプライン レジスタをサポートします。パイプライン レジスタは、パイプライン レジスタをリセットするための最大 XNUMX つのクロック ソースと XNUMX つの非同期クリア信号をサポートします。パイプライン レジスタは XNUMX つあります。
- データ入力バスパイプラインレジスタ
- サブダイナミック制御信号パイプラインレジスタ
- 動的制御信号パイプラインレジスタを無効にする
- 動的制御信号パイプラインレジスタを蓄積する
- loadconst 動的制御パイプラインレジスタ
各データ入力バス パイプライン レジスタと動的制御信号パイプライン レジスタを個別に有効にすることができます。ただし、有効になっているすべてのパイプライン レジスタは同じクロック ソースを使用する必要があります。
クロッキング方式
Cyclone 10 GX ネイティブ固定小数点 DSP IP コアの入力、パイプライン、および出力レジスターは、0 つのクロックソース/イネーブルと 1 つの非同期クリアーをサポートします。すべての入力レジスターは aclr[10] を使用し、すべてのパイプラインおよび出力レジスターは aclr[18] を使用します。各レジスター タイプは、18 つのクロックソースとクロック イネーブル信号のいずれかを選択できます。Cyclone XNUMX GX ネイティブ固定小数点 DSP IP コアを XNUMX × XNUMX シストリック動作モードにコンフィグレーションすると、Intel Quartus Prime ソフトウェアは、入力シストリック レジスターとチェーン シストリック レジスター クロック ソースを、内部的に出力レジスターと同じクロック ソースに設定します。
ダブル アキュムレータ機能を有効にすると、Intel Quartus Prime ソフトウェアは、ダブル アキュムレータ レジスタのクロック ソースを内部的に出力レジスタと同じクロック ソースに設定します。
クロッキングスキームの制約
このタブには、すべてのレジスタ クロッキング スキームに適用する必要がある制約が表示されます。
状態 | 制約 |
プリアダーが有効の場合 | ay および az 入力レジスタのクロック ソースは同じである必要があります。 |
by および bz 入力レジスタのクロック ソースは同じである必要があります。 | |
パイプラインレジスタが有効になっている場合 | すべてのパイプライン レジスタのクロック ソースは同じである必要があります。 |
動的制御信号の入力レジスタのいずれかが | sub、accumulate、loadconst、negate の入力レジスタのクロック ソースは同じである必要があります。 |
Cyclone 10 GX ネイティブ固定小数点 DSP IP コア信号
次の図は、Cyclone 10 GX ネイティブ固定小数点 DSP IP コアの入力信号と出力信号を示しています。
Cyclone 10 GX ネイティブ固定小数点 DSP IP コア信号
データ入力信号
信号名 | タイプ | 幅 | 説明 |
斧[] | 入力 | 27 | 最上位乗算器への入力データ バス。 |
ああ[] | 入力 | 27 | 最上位乗算器への入力データ バス。
プリアダーが有効になっている場合、これらの信号は最上位のプリアダーへの入力信号として機能します。 |
az[] | 入力 | 26 | これらの信号は、最上位のプリアダーへの入力信号です。
これらの信号は、プリアダーが有効になっている場合にのみ使用できます。 m18×18_プラス36 動作モード。 |
bx[] | 入力 | 18 | 最下位乗算器への入力データ バス。
これらの信号は、 m27×27 動作モード。 |
による[] | 入力 | 19 | 最下位乗算器への入力データ バス。
プリアダーが有効な場合、これらの信号は下部のプリアダーへの入力信号として機能します。 これらの信号は、 m27×27 動作モード。 |
bz[] | 入力 | 18 | これらの信号は、下側のプリアダーへの入力信号です。これらの信号は、プリアダーが有効になっている場合にのみ使用できます。 m27×27 そして m18×18_プラス36 動作モード。 |
データ出力信号
信号名 | タイプ | 幅 | 説明 |
結果[] | 出力 | 64 | 最上位乗算器からの出力データ バス。
これらの信号は最大37ビットをサポートし、 m18×18_フル 動作モード。 |
結果b[] | 出力 | 37 | 下部乗算器からのデータ バスを出力します。
これらの信号は、 m18×18_フル 動作モード。 |
クロック、イネーブル、クリア信号
信号名 | タイプ | 幅 | 説明 |
クロック[] | 入力 | 3 | すべてのレジスタのクロック信号を入力します。
これらのクロック信号は、入力レジスタ、パイプラインレジスタ、または出力レジスタのいずれかが クロック0, クロック1、 または クロック2. • クロック[0] = クロック0 • クロック[1] = クロック1 • クロック[2] = クロック2 |
エナ[] | 入力 | 3 | clk[2:0]のクロックイネーブル。この信号はアクティブハイです。
• ena[0]は クロック0 • ena[1]は クロック1 • ena[2]は クロック2 |
aclr[] | 入力 | 2 | すべてのレジスタの非同期クリア入力信号。この信号はアクティブ High です。
使用 aclr[0] すべての入力レジスターと使用 aclr[1] すべてのパイプライン レジスタと出力レジスタに対して。 デフォルトでは、この信号はアサート解除されます。 |
動的制御信号
信号名 | タイプ | 幅 | 説明 |
サブ | 入力 | 1 | 上部の乗算器の出力と下部の乗算器の出力を加算または減算するための入力信号。
• 加算演算を指定するには、この信号をデアサートします。 • 減算演算を指定するには、この信号をアサートします。 デフォルトでは、この信号はデアサートされています。実行時にこの信号をアサートまたはデアサートすることができます。3) |
否定する | 入力 | 1 | チェーンイン信号のデータを使用して、上位乗数と下位乗数の合計を加算または減算する入力信号。
• 加算演算を指定するには、この信号をデアサートします。 • 減算演算を指定するには、この信号をアサートします。 デフォルトでは、この信号はデアサートされています。実行時にこの信号をアサートまたはデアサートすることができます。3) |
蓄積する | 入力 | 1 | アキュムレータ機能を有効または無効にする入力信号。
• アキュムレータ機能を無効にするには、この信号をデアサートします。 • アキュムレータ機能を有効にするには、この信号をアサートします。 デフォルトでは、この信号はデアサートされています。実行時にこの信号をアサートまたはデアサートすることができます。3) |
ロード定数 | 入力 | 1 | 負荷定数機能を有効または無効にする入力信号。
• 負荷定数機能を無効にするには、この信号をデアサートします。 • 負荷定数機能を有効にするには、この信号をアサートします。 デフォルトでは、この信号はデアサートされています。実行時にこの信号をアサートまたはデアサートすることができます。3) |
内部係数信号
信号名 | タイプ | 幅 | 説明 |
コエフセラ[] | 入力 | 3 | ユーザーが定義したトップ乗算器の8つの係数値の選択信号を入力します。係数値は内部メモリに保存され、パラメータで指定されます。 係数a0 に 係数a7.
• coefsela[2:0] = 000は、 係数a0 • coefsela[2:0] = 001は、 係数a1 • coelsela[2:0] = 010は 係数a2 • …など。 これらの信号は、内部係数機能が有効になっている場合にのみ使用できます。 |
自己係数[] | 入力 | 3 | ユーザーが定義した8つの係数値の選択信号を入力。係数値は内部メモリに保存され、パラメータで指定されます。 係数b0 に 係数b7.
• coefselb[2:0] = 000は、 係数b0 • coefselb[2:0] = 001は、 係数b1 • coelselb[2:0] = 010は 係数b2 • …など。 これらの信号は、内部係数機能が有効になっている場合にのみ使用できます。 |
入力カスケード信号
信号名 | タイプ | 幅 | 説明 |
スキャンイン[] | 入力 | 27 | 入力カスケード モジュールの入力データ バス。
これらの信号を、前の DSP コアからのスキャンアウト信号に接続します。 |
スキャンアウト[] | 出力 | 27 | 入力カスケード モジュールの出力データ バス。
これらの信号を次の DSP コアのスキャンイン信号に接続します。 |
出力カスケード信号
信号名 | タイプ | 幅 | 説明 |
チェイン[] | 入力 | 64 | 出力カスケード モジュールの入力データ バス。
これらの信号を、前の DSP コアからのチェーンアウト信号に接続します。 |
チェーンアウト[] | 出力 | 64 | 出力カスケードモジュールの出力データバス。
これらの信号を次の DSP コアのチェーンイン信号に接続します。 |
Cyclone 10 GX ネイティブ固定小数点 DSP IP コア ユーザー ガイドのドキュメント改訂履歴
日付 | バージョン | 変更点 |
2017年XNUMX月 | 2017.11.06 | 初回リリース。 |
インテルコーポレーション。 全著作権所有。 Intel、Intel ロゴ、およびその他の Intel マークは、Intel Corporation またはその子会社の商標です。 インテルは、FPGA および半導体製品のパフォーマンスをインテルの標準保証に従って最新の仕様に保証しますが、予告なしにいつでも製品およびサービスを変更する権利を留保します。 インテルは、インテルが書面で明示的に同意した場合を除き、ここに記載されている情報、製品、またはサービスの適用または使用から生じる一切の責任を負わないものとします。 インテルのお客様は、公開されている情報を信頼したり、製品やサービスを注文したりする前に、最新バージョンのデバイス仕様を入手することをお勧めします。
その他の名前およびブランドは、他者の財産として主張される場合があります。
ドキュメント / リソース
![]() |
intel UG-20094 Cyclone 10 GX ネイティブ固定小数点 DSP IP コア [pdf] ユーザーガイド UG-20094 Cyclone 10 GX ネイティブ固定小数点 DSP IP コア、UG-20094、Cyclone 10 GX ネイティブ固定小数点 DSP IP コア、ネイティブ固定小数点 DSP IP コア、固定小数点 DSP IP コア、DSP IP コア |