高スループット除算
- 更新日2023-02-17
- 5分で読める
高スループット除算
2つの値の商を計算します。
入力/出力

x
被除数です。

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

入力有効
次の処理データ要素を受信したかどうかを示すブール値です。先行ノードからこのノードにデータを渡すには、先行ノードの出力有効出力をこの入力に配線します。
| True | 次の処理データ要素を受信しました。 |
| False | 次の処理データ要素を受信していません。 |

出力準備完了
後続ノードがこのノードから返される新しい値を受信できる状態かどうかを定義するブール値です。後続ノードの入力準備完了出力を現在のノードのこの入力に配線するには、フィードバックノードを使用します。
| True | 後続ノードがこのノードから返される新しい値を受信できる状態です。 |
| False | 後続ノードがこのノードから返される新しい値を受信できる状態ではありません。 |
Default value: True

演算オーバーフロー
理論上の演算値が出力データタイプの有効な範囲を超えているかどうかを示すブールです。
| True | 理論上の演算値が出力データタイプの有効な範囲を超えています。 |
| False | 理論上の演算値が出力データタイプの有効な範囲を超えていません。 |

x/y
xをyで除算した結果です。

出力有効
このノードが後続ノードで使用できる結果を計算するかどうかを示すブール値です。
ノードのデータを後続ノードに送信するには、この出力を後続の入力有効入力に配線します。
| True | 後続ノードは、このノードが計算する結果を使用できます。 |
| False | このノードは、後続ノードが使用できない未定義の値を返します。 メモ このノードは、シミュレーションモードで実行した場合、ハードウェア上で実行した場合と比較して、未定義の異なる値を返す可能性があります。 |

入力準備完了
このノードが新しい入力データを受信できる状態かを示すブール値です。
フィードバックノードを使用して、この出力を先行ノードの出力準備可能出力に配線します。
| True | このノードが新しい入力データを受信できる状態です。 |
| False | このノードが新しい入力データを受信できる状態ではありません。 |
x/yでオーバーフローを回避する
以下の両方に該当する場合、このノードの精度構成に対して自動適応が有効のままであると、ゼロ以外のy値に対してx/y出力でまだオーバーフローが発生することがあります。
- x = -2iwlx - 1
- y = -2iwly - wly
ここで、wlは入力のワード長、iwlは入力の整数ワード長です。
前のセクションで説明した状況、およびゼロ以外のyの値に対するオーバーフローを回避するには、以下の手順に従ってください。
- ダイアグラムでこのノードを選択します。
- 項目タブの精度オプションで自動適応を無効にします。自動適応を無効にすると、自動適応オプションボタンも無効になります。
- ノードに対して、精度、オーバーフロー、および丸め込みを構成します。
これらの手順の終了以降、x/yの固定小数点構成は自動的に調整されません。したがって、xまたはyの固定小数点構成を変更した場合に、yのゼロ以外の値のオーバーフローを回避する必要がある場合は、項目タブの自動適応を再度有効にします。その後、同じ手順に従って、ワード長および整数ワード長を指定します。
x/yの丸め込みの影響
このノードの固定小数点動作は、出力値をゼロに切り捨てる丸め込みモードを使用します。このモードは、出力値を出力タイプで表記可能な最も近い値に切り下げます。値が正の場合、値が切り捨てられます。値が負の場合、最下位ビット(LSB)が削除され、削除したビットの中に0以外の値があると残りのLSBに符号ビットが追加されます。