高吞吐率自然对数
- 更新时间2023-02-17
- 阅读时长4分钟
高吞吐率自然对数
计算输入值的自然对数,以e为底。
如x为0,ln为
。如x不是复数且小于0,ln为非法数字(NaN)。输入/输出

x
运算的输入。x必须位于[1/e, 1)范围内。整数字长必须为0位。
该输入仅支持定点数据类型的标量值。
X位于有效值范围外时计算ln(x)
x位于[1/e, 1)范围之外时,完成下列步骤以计算ln( x)。
- 移位x的二进制小数点,直至小数点紧靠x最左侧的第一个非零位。结果值M总是大于或等于0.5,该值位于有效范围[1/e, 1)内。
- 计算ln(M) + (E × ln(2)),其中E等于移位小数点至最左侧的移动次数。该结果等于ln(x)。
- 因为M位于[1/e, 1)的有效范围内,可使用该节点计算ln(M)的值。
注: 注:如移位二进制小数点至最右侧,E的值等于移位小数点次数的负数值。例如,移位二进制小数点三次至最右侧,E等于–3。
建议使用二进制移位,因为相对使用除法操作转换x至M,其消耗更少的FPGA资源。

输入有效
指定下一个数据点是否有效且可被处理的布尔值。
连线上游节点的输出有效至该输入,将上游节点的数据传输至该节点。
| TRUE | 数据点有效,可以处理。 |
| FALSE | 数据点无效。 |

输出就绪
指定下游节点是否已就绪,以便该节点返回一个新值的布尔值。
通过反馈节点连线该输入至下游节点的输入就绪输入端。如在给定周期内该输入端为FALSE,输出有效接线端在该周期返回FALSE。
| TRUE | 下游节点已准备就绪,可处理下一个数据元素。 |
| FALSE | 下游节点未就绪,不能处理下一个数据点。 |
Default value: FALSE

ln(x)
x的自然对数。如x位于[1/e, 1)范围外,ln(x)为未定义数据。

未定义
指示ln(x)是否未定义的布尔值。
| TRUE | ln(x)未定义。 |
| FALSE | ln(x)不是未定义的。 |

输出有效
布尔值,表示该节点的计算结果是否可用于下游节点。
将该输出连线至后续节点的输入有效的输入,以便将该节点的数据传递至后续节点。
| TRUE | 下游节点可使用该节点的计算结果。 |
| FALSE | 该节点返回未定义值,下游节点无法使用。 注: 该节点在仿真模式下运行时与在硬件上运行时会返回不同的未定义值。 |

输入就绪
指示节点是否已准备就绪接收新的输入数据的布尔值。
通过反馈节点连线该输出至上游节点的输出就绪输出端。
| TRUE | 节点已经就绪,可接收新的输入数据。 |
| FALSE | 节点尚未就绪以接收新的输入数据。 |
注: 如该输出端在指定周期返回FALSE,节点将忽略其他节点在后续周期发送至该节点的全部数据。即使在后续周期中,输入有效为TRUE,节点也会舍弃数据。