線形代数関数を使用する
- 更新日2025-03-06
- 6分で読める
線形代数関数を使用して、RFアプリケーションなどの高速および高スループットFPGAアプリケーションでベクトル/行列演算を実行します。タイミングおよびリソース要件を満たすように、異なるスループットレートや、行列またはベクトルサイズ、およびデータタイプに合うように線形代数関数を構成できます。
線形代数動作
線形代数関数でFPGAアプリケーションを開発する際は、以下の動作を考慮してください。
- ターゲットのサポート―すべてのFPGAターゲットは線形代数関数をサポートしています。
- シングルサイクルタイミングループのサポート―LabVIEWはシングルサイクルタイミングループ内でのみ線形代数関数をサポートしています。
- 4線式ハンドシェイクプロトコルのサポート―線形代数関数はハンドシェイク信号をサポートしています。
- シミュレーションのサポート―線形代数関数はデスクトップおよびフルダイアグラムシミュレーションの両方をサポートしています。ただし、関数は後続ノードが使用可能な結果を計算していないため、出力有効がFALSEの場合、デスクトップシミュレーションでサイクルアキュレートシミュレーションの動作を保証しません。出力有効がFALSEの場合、関数はFPGAターゲットとホストコンピュータで異なる結果を返すことがあります。出力有効の解除中に返されたデータは無効である可能性があるため、破棄する必要があります。
- 制限付きデータタイプのサポート―線形代数関数は、固定小数点データタイプのスカラおよびベクトル値のみをサポートしています。各関数には、実数および虚数に独立したコネクタペーン端子が含まれています。
- ラベル付き入出力端子―詳細ヘルプウィンドウで、各関数の数値端子のエンコーディング、ワード長、および整数ワード長を確認できます。
線形代数関数を構成する
線形代数関数を構成するには、関数をダブルクリックするか関数を右クリックして構成を選択します。関数の構成ダイアログボックスが表示されます。このダイアログボックスを使用して、関数の実行方法と関数が返す結果を構成します。サポートされていないワード長または整数ワード長など、ワイヤが壊れる原因となるサポートされていない固定小数点構成を回避するには、構成ダイアログボックスを使用して入力端子のエンコーディング、ワード長、および整数ワード長を設定します。
関数の外観を構成する
線形代数関数は、拡張または縮小表示することができます。拡張表示では、各端子のエンコーディング、ワード長、および整数ワード長が表示されます。縮小表示では、ブロックダイアグラム上のスペースを節約できます。関数の外観を構成するには、関数を右クリックして、拡張表示または縮小表示を選択します。
入出力端子に関する注意事項と制約
以下のリストは、線形代数関数の入出力端子の動作に関する説明です。
- 線形代数関数は、固定小数点データタイプのスカラおよびベクトル入力のみをサポートしています。各関数には、実数および虚数に独立した端子が含まれています。
- 「線形代数内積」、「線形代数行列転置」、「線形代数ノルム二乗」関数の入力端子は、データタイプと関数に配線された入力パターンに適応します。「線形代数行列乗算」関数の入力端子はデータタイプには適応しますが、関数に配線された入力パターンには適応しません。線形行列乗算を構成ダイアログボックスを使用して、「線形代数行列乗算」関数の入力パターンを構成します。
- 線形代数関数の実数および虚数は、同じデータタイプおよび入力パターンであることが必要です。そうでない場合は、入力端子の実数データ部分のデータタイプまたは配列サイズに従います。
入力端子のサポートされていない構成
サポートされていない固定小数点構成を端子に配線すると、ワイヤが壊れて関数を実行できません。LabVIEWがデータタイプをサポートされている構成に強制変換する場合もあります。この場合、関数を実行できますが、強制により予測せぬ動作が起こることがあります。ワイヤが壊れておらず、強制ドットも表示されていない場合、入力端子はこの固定小数点の構成をサポートしています。
サポートされていない入力構成を回避する
構成ダイアログボックスで入力端子の固定小数点の構成を指定して、入力端子で壊れたワイヤまたは強制データタイプを防ぐことができます。この方法で端子を構成するには、以下の手順に従ってください。
- ブロックダイアグラムに関数を追加します。
- 関数をダブルクリックし、構成ダイアログボックスを起動します。
- 構成ダイアログボックスの入力部分を使用して、入力端子のエンコーディング、ワード長、および整数ワード長を構成します。関数により、特定のオプションが淡色表示され、その他のテキストボックスに入力できる値が制限されている場合もあります。
- OKボタンをクリックします。
入力端子を右クリックし、作成→制御器または作成→定数を選択して、関数がサポートする固定小数点構成を持つ入力を作成します。
出力端子のオーバーフローおよび丸め込み
理論上の演算値は、出力データタイプの有効範囲とは関係ない数学的結果です。オーバーフローモード構成が含まれる線形代数関数では、出力端子の範囲が理論上の演算値を格納するのに十分でない場合、オーバーフローが発生します。この場合、関数は構成ダイアログボックスのオーバーフローモードプルダウンで指定されたように切り捨てまたは飽和を実行します。
通常、関数の構成ダイアログボックスのソースに適応チェックボックスをオンにすることでオーバーフローを避けることができます。このオプションを有効にすると、オーバーフローまたは丸め込みが発生しないように出力データタイプの幅と範囲が調整されます。ただし、このような調整できない場合もあります。LabVIEWは、最大64ビットのワード長および最大1023ビットの整数ワード長をサポートします。このチェックボックスをオンにすると、これらの最大値を超えるワード長を必要とする出力データタイプに対してオーバーフローや丸め誤差が発生する可能性があります。