xおよびxの商を計算します。この関数は、x/y出力端子の値をゼロに切り捨てることで結果を丸め込みます。

This rounding mode uses fewer FPGA resources than other rounding modes do.

この関数は、整数および 固定小数点 データタイプです。


icon

ダイアログボックスオプション

パラメータ Description
固定小数点の構成

を指定します。この関数の入力端子と出力端子の エンコーディング、ワード長、整数ワード長 です。指定する構成によって、端子の 値の範囲 です。

  • xタイプ

    x入力端子の固定小数点構成を指定します。

    この端子に固定小数点データタイプを配線すると、このセクションは淡色表示となり、ワイヤからの情報が使用されます。

    • 符号付き―この端子が符号付きであることを指定します。
    • 符号なし―この端子が符号なしであることを指定します。
    • ワード長―この端子のワード長を指定します。
    • 整数ワード長―この端子の整数ワード長を指定します。
  • yタイプ

    y入力端子の固定小数点構成を指定します。

    この端子に固定小数点データタイプを配線すると、このセクションは淡色表示となり、ワイヤからの情報が使用されます。

    • 符号付き―この端子が符号付きであることを指定します。
    • 符号なし―この端子が符号なしであることを指定します。
    • ワード長―この端子のワード長を指定します。
    • 整数ワード長―この端子の整数ワード長を指定します。
  • x/yタイプ

    x/y出力端子の固定小数点構成を指定します。

    • ソースに適応―回避するために、出力データタイプの固定小数点構成を自動的に調整するかLabVIEWかを指定します。 yの非ゼロ値のオーバーフローです。 。デフォルトでは、このチェックボックスはオンに設定され、以下のオプションが淡色表示になっています。
      メモ 商の精度は無限であるため、丸め誤差は常に発生します。
    • 符号付き―Sこの端子が符号付きであることを指定します。この端子の符号化は入力端子の符号化に基づいて自動的に決定されるため、このオプションは淡色表示となります。
    • 符号なし―この端子が符号なしであることを指定します。この端子の符号化は入力端子の符号化に基づいて自動的に決定されるため、このオプションは淡色表示となります。
    • ワード長―この端子のワード長を指定します。
    • 整数ワード長―この端子の整数ワード長を指定します。
    • オーバーフローステータスを含む―出力端子にオーバーフローステータスを含めるかどうかを指定します。LabVIEWはこのステータスを後続ノードに伝達します。このステータスを追加するには、より多くのFPGAリソースが必要となります。このチェックボックスは、デフォルトでオフになっています。

      このチェックボックスをオンにすると、以下のいずれかの状況でオーバーフローステータスがTRUEになります。

      • 入力端子のオーバーフローステータスがTRUEの場合。
      • この関数の実行中にオーバーフローが発生した場合。

      ソースに適応チェックボックスをオンにすると、入力端子にこのステータスが含まれるかどうかに応じてオーバーフローステータスを含むが設定されます。

  • オーバーフローモード

    この関数の処理方法を指定します。オーバーフローです。以下のオプションから選択できます。

    • 飽和 (デフォルト)―オーバーフローが発生した場合、この関数が x/y 出力端子を飽和します。
      メモ 飽和 を選択し、y の値が0の場合、この関数は以下の式を使用して x/y 出力端子の値を決定します。
      • x/y = max(x/y), if x ≥ 0
      • x/y= min(x/y) (x< 0の場合)
    • 未定義の結果ーオーバーフローが発生したらx/y出力端子の値を未定義にするよう指定します。
    メモ 未定義の結果 オプションは、追加のFPGAリソースを必要としません。逆に飽和オプションは追加のFPGAリソースとより長い組み合わせパスを必要とするため、この関数がコンパイルできる最大クロックレートが低くなる可能性があります。
実行モード この関数の実行方法を指定します。
  • シングルサイクルタイミングループの外側―このExpress VIをループの外側で実行するように構成します。シングルサイクルタイミングループ

    このオプションを選択し、このExpress VIをシングルサイクルタイミングループの内側に配置すると、FPGA VIをコンパイルすると、 コード生成エラー ウィンドウにエラーが表示されます。

  • シングルサイクルタイミングループの内側―このExpress VIをシングルサイクルタイミングループの内側で実行するように構成します。

    このオプションを選択してこのExpress VIをシングルサイクルタイミングループの外側に配置すると、FPGA VIのコンパイル時にコード生成エラーウィンドウにエラーが表示されます。

  • スループット―有効な入力データの2つの連続値間の最小サイクル数を指定します。この制御器に低値を入力すると、スループットレートが高くなります。スループットの最大値は、出力端子のワード長によって異なります。シングルサイクルタイミングループの内側を選択した場合のみ、このオプションを使用できます。

    シングルサイクルタイミングループの外側を選択すると、関数は呼び出しの度に有効な結果を返します。そのため、 スループット 制御器には 1コール/サンプルと表示されます。構成フィードバック表示器には、この関数が有効な結果を返すまでに必要とするクロックサイクル数が表示されます。

レジスタ 関数の入力および/または出力に内部レジスタを追加するかどうかを指定します。これらのレジスタは、ブロック乗算器またはDSP48Eスライスなどの組込リソースの外側に配置されます。このセクションはシングルサイクルタイミングループの内側を選択した場合のみ使用できます。
メモ レジスタを追加すると、これにより、長い組み合わせ パスによるコンパイルエラーを防ぐことができます。ただし、レジスタの追加によって関数のレイテンシが増加するため、有効な結果を返すために余分なクロックサイクルが必要となることになります。
  • レジスタ入力―この関数の入力の後に内部レジスタを追加します。このオプションを選択すると、関数のレイテンシが1サイクル分増加します。
  • レジスタ出力―この関数の出力の前に内部レジスタを追加します。このオプションを選択すると、関数のレイテンシが1サイクル分増加します。
オプション端子 オプションのブロックダイアグラム端子の表示設定を指定します。
  • 演算オーバーフロー―この関数がブロックダイアグラムに 演算オーバーフロー 出力端子を表示するように指定します。この端子は、この関数の実行中にオーバーフローが発生してかどうかを示します。
構成フィードバック この関数の実行方法に関する情報を示します。この情報は、ユーザが指定する構成オプションに基づいています。

入力/出力

  • cunkn.png x

    被除数を指定します。

  • cunkn.png y

    除数を指定します。yの値が0の場合、x/y出力端子にオーバーフローが発生します。

  • 入力有効

    次の処理データポイントを受信したかどうかを示します。先行ノードからこのExpress VIにデータを転送するには、先行ノードの 出力有効 出力をこの 入力有効 に配線します。

    これを表示するには ハンドシェイク 端子を使用するには、構成ダイアログボックスで シングルサイクルタイミングループの内側 を選択します。

  • 出力準備完了

    後続ノードがこのExpress VIから返される新しい値を受信できる状態かどうかを示します。デフォルトはTRUEです。を使用 フィードバックノード は、後続ノード の入力準備 完了を現在のノードの 出力準備 完了に配線します。

    メモ サイクル中 に出力準備完了 がFALSEの場合、 出力有効 端子はそのサイクル中にFALSEを返します。

    出力準備完了を表示するには、構成ダイアログボックスで シングルサイクルタイミングループの内側 を選択します。

  • iunkn.png x/y

    xyで除算した結果を返します。

  • 演算オーバーフロー

    理論上の演算値が出力データタイプの有効な範囲を超える場合、TRUEを返します。演算オーバーフローからTRUEが返された場合、関数が返す値はオーバーフローモードオプションによって決定されます。

    演算オーバーフロー端子は、演算オーバーフローチェックボックスをオンにした場合にのみ表示されます。このチェックボックスは、構成ダイアログボックスのオプション端子セクションに表示されます。

  • 出力有効

    ノードが後続ノードで使用できる結果を計算済みの場合、TRUEを返します。出力有効を使用 他のFPGA VIおよび関数とのハンドシェイク。

    この端子を表示するには、構成ダイアログボックスで シングルサイクルタイミングループの内側 を選択します。

  • 入力準備完了

    このノードが新しい入力データを受信できる状態になるとTRUEを返します。入力準備完了に先行ノードの出力準備完了を配線するには、フィードバックノードを使用します。

    メモ あるサイクルで 入力準備完了 がFALSEを返した場合、次のサイクルで他のノードがこのノードに送信するデータはLabVIEWされます。LabVIEWは、次のサイクルで入力有効端子がTRUEである場合もこのデータを破棄します。

    入力準備完了を表示するには、構成ダイアログボックスで シングルサイクルタイミングループの内側 を選択します。

  • 以下の両方に該当する場合、ソースに適応チェックボックスをオンにしても、ゼロ以外のy値に対してx/y出力端子でオーバーフローが発生します。

    • x = –2iwlx – 1
    • y = –2iwly – wly

    wl は端子のワード長、iwl は端子の整数ワード長です。

    この場合にゼロ以外のyの値に対するオーバーフローを防ぐには、以下の手順に従ってください。

    1. ソースに適応チェックボックスをオフにします。
    2. x/y端子のワード長および整数ワード長を両方1ビット以上増やします。

    これらの手順の終了後に、x/y端子の固定小数点構成は自動的に調整されません。xまたはy端子の固定小数点構成を変更した場合に、yのゼロ以外の値のオーバーフローを回避する必要がある場合は、ソースに適応チェックボックスをもう一度オンにします。x/y端子の固定小数点構成が自動的に調整されます。そして、上記の手順1~2を実行して、更新された固定小数点構成でオーバーフローが起こらないことを確認します。

    サンプルプログラム

    LabVIEW FPGAモジュールに含まれている以下のサンプルファイルを参照してください。

    • labview\examples\CompactRIO\FPGA Fundamentals\FPGA Math and Analysis\High-Throughput Math\Divide\Divide.lvproj
    • labview\examples\CompactRIO\FPGA Fundamentals\FPGA Math and Analysis\High-Throughput Math\Vector Normalization\Vector Normalization.lvproj
    • labview\examples\R Series\FPGA Fundamentals\FPGA Math and Analysis\High-Throughput Math\Vector Normalization\Vector Normalization.lvproj