Engee 文档

Uniform Decoder

将整数输入数据解码为浮点输出数据。

类型: UniformDecoder

图书馆中的路径:

/Signal Operations/Quantizers/Uniform Decoder

说明

Uniform Decoder 程序块执行与统一编码器程序块*Uniform Encoder* 相反的操作,从编码的整数输入数据中恢复量化浮点数值。

该块遵循_"ITU-T 建议 G.701"_中给出的统一解码定义。

有关该块如何计算解码浮点输出的更多信息,请参阅 "ITU-T Recommendation G.701"可选.

端口

输入

输入 - 输入信号
矩阵

指定要解码为向量或矩阵的整数输入数据。

复数输入数据的实部和虚部将单独转换。

数据类型: Float32, Float64, Int8, Int16, Int32, UInt8, UInt16, UInt32, Bool, Fixed

支持复数:

输出

输出 - 解码输出信号
矩阵

以向量或矩阵形式返回的解码浮点输出信号。

输出数据类型取决于 Output type 参数的值:

  • 单一"--"Float32 "数据类型。

  • double` - `Float64`数据类型。

有关程序块如何计算输出数据的更多信息,请参阅算法

数据类型: Float32, Float64

支持复数:

参数

主要参数

峰值 - 编码输入信号中的最大振幅
1(默认值) | `非负标量

指定编码输入信号中以非负标量表示的最大振幅。

为正确解码*Uniform Encoder* 块编码的值,请将 Peak 设置为两个块中的相同值。

Bits - 位数
3(默认)"|"范围 [2, 32] 的整数"。

指定 用于编码数据的输入位数。位数 可以是 2 到 32 之间的任意整数。该值可能小于输入数据类型提供的总位数。

为正确解码*Uniform Encoder* 数据块编码的值,请将 Peak 设置为两个数据块中的相同值。

溢出模式 - 溢出模式
饱和(默认) | `缠绕

定义当输入整数超出位 所代表的范围时块的行为。超出范围的输入数据要么在极值处饱和,要么返回到范围内。

  • 当*溢出模式*参数设置为 "饱和 "时,大于 的无符号输入值会在 饱和,大于 或小于 的有符号输入值会在这些极限值饱和。复数输入信号的实部和虚部分别独立饱和。

  • 溢出模式 设置为 "Wrap"(缠绕)时,无符号输入值 ,超过 ,将通过算术 返回到 ] 的范围。

有符号输入值 , 大于 或小于 , 将通过运算 包装回该范围。

复数输入数据的实部和虚部的处理相互独立。

输出类型 - 输出数据类型
二进制(默认) | 单进制

指定浮点输出数据的解码精度:单 (Single) 或双 (Double)。

您可以对六种整数输入数据类型中的任何一种使用任何级别的输出精度。

可选

* 算法。

Uniform Decoder 程序块首先将整数输入值转换为浮点数,然后将其唯一映射(解码)为 范围内均匀分布的浮点数之一 ],其中在 Bits 参数中指定 (2 到 32 之间的整数), Peak 参数指定的浮点数。

程序块将位 (无符号输入数据类型为 0,有符号输入数据类型为 )所代表的最小输入值映射到值

它将位 (无符号输入数据类型为 ,有符号输入数据类型为 )代表的最大输入值映射到值 。它将中间输入值线性映射到 ] 范围内的中间值。

要正确解码由*Uniform Encoder* 编码的值,必须将 Uniform DecoderBitsPeak 参数设置为与*Uniform Encoder* 的 BitsPeak 参数相同的值。

参考文献