高スループット自然対数

指定された入力値の eを底とする自然対数を計算します。

xが0の場合、lnは -

です。xが複素数でなく0より小さい場合、lnは非数(NaN)になります。

入力/出力

datatype_icon

x

この演算の入力です。xは[1/e, 1)の範囲内の符号なしでなければなりません。整数ワード長は0ビットでなければなりません。

この入力は、固定小数点データタイプのスカラ値のみをサポートします。

xが有効範囲外の場合にln(x)を計算する

以下の手順に従って、xが[1/e, 1)の範囲外の場合にln(x)を計算します。

  1. xのバイナリポイントをxの最初の非ゼロビットのすぐ左に来るまでシフトします。結果として得られるMは、常に0.5以上で、[1/e, 1)の範囲内となります。
  2. ln(M) + (E × ln(2))を計算します。ここで、Eは、バイナリポイントを左にシフトした回数とします。結果はln(x)と同等です。
  3. Mは有効範囲[1/e, 1)内にあるため、このノードを使用してでln(M)を計算します。
メモ バイナリポイントを右にシフトした場合、Eはポイントをシフトした回数の負の値です。たとえば、バイナリポイントを右に3回シフトした場合、Eは–3です。

NIはバイナリシフトでxMに変換することを推奨します。これは、この演算が除算よりも少ないFPGAリソースを使用するためです。

datatype_icon

入力有効

次のデータポイントが有効で、処理できるかどうかを指定するブール値です。

先行ノードからこのノードにデータを渡すには、先行ノードの出力有効をこの入力に配線します。

True データポイントは有効で処理できます。
False データポイントは無効です。
datatype_icon

出力準備完了

後続ノードがこのノードから返される新規値を受信できる状態かどうかを指定するブール値です。

フィードバックノードを使用し、この入力を後続ノードの入力準備完了入力に配線します。あるサイクルでこの入力がFalseの場合、出力有効は同サイクルでFalseを返します。

True 後続ノードは次のデータ要素への準備が完了しています。
False 後続ノードは次のデータ要素への準備が完了していません。

Default value: False

datatype_icon

ln(x)

xの自然対数です。xが[1/e, 1)の範囲外の場合、ln(x)は未定義になります。

datatype_icon

未定義

ln(x)が未定義かどうかを示すブールです。

TRUE ln(x)は未定義です。
FALSE ln(x)は未定義ではありません。
datatype_icon

出力有効

このノードが後続ノードで使用できる結果を計算するかどうかを示すブール値です。

ノードのデータを後続ノードに送信するには、この出力を後続の入力有効入力に配線します。

True 後続ノードは、このノードが計算する結果を使用できます。
False このノードは、後続ノードが使用できない未定義の値を返します。
メモ このノードは、シミュレーションモードで実行した場合、ハードウェア上で実行した場合と比較して、未定義の異なる値を返す可能性があります。
datatype_icon

入力準備完了

このノードが新しい入力データを受信できる状態かを示すブール値です。

フィードバックノードを使用して、この出力を先行ノードの出力準備可能出力に配線します。

True このノードが新しい入力データを受信できる状態です。
False このノードが新しい入力データを受信できる状態ではありません。
メモ あるサイクルでこの端子がFalseを返した場合、このノードは、次のサイクル中に別のノードから送信されるすべてのデータを破棄します。次のサイクルで入力有効端子がTrueであっても、このノードはデータを破棄します。