雷达 · 通信 · 电子战 / 基础精学 188
软解调和概率递推反复计算对数域概率之和。直接先指数化再求和会在极端幅度下溢出或下溢,稳定分解可把动态范围问题转换为短区间单变量函数逼近。
a,b 为有限实数,使用自然对数;求和对应互斥路径的概率相加,不能与独立证据的对数直接相加混淆。
m:两输入最大值(无量纲)
d:输入差绝对值(无量纲)
g(d):Jacobian修正(无量纲)
J:稳定对数和(无量纲)
q:查表步长(无量纲)
令 m=max(a,b),则
其中一个括号项等于一,另一项等于 e−|a−b|,故
定义
有
因而最大值近似低估对数和,最大低估量为对数二。
整数差值查表并以 2−8 为输出步长,最近舍入误差满足
对多项概率可递归应用
实数运算结果不依赖归约顺序;
有限精度下误差会随顺序和层数改变。
Jacobian 修正 g(d)=ln(1+e−d) 满足 ln(1+x)≤ x,所以
若超过阈值 D 后把修正置零,尾部绝对误差不超过 e−D。
表内采用输出步长 q 的最近舍入时,逐点误差至多 q/2,于是分区实现可用
作统一上界。
该界不包含输入差值网格化的误差;小数输入若先舍入到整数地址,还应利用 |g'(d)|≤1/2 另计插值或地址量化项。表长、地址步长和输出位宽是三种不同精度选择。
最大项负责主导概率的尺度,修正项负责其余候选贡献。两个候选相等时修正最大;差值很大时次强项几乎无贡献。该结构允许将精度资源集中在接近相等的输入区域。
在固定整数与密集实数网格上比较直接公式和稳定公式,测试同时平移输入时输出等量平移的性质。查表覆盖差值零至十六,并验证 Q8 最近舍入的半LSB误差界。
| 量 | 数值 |
|---|---|
| integer pairs | 289 |
| stable identity error | 8.881784197e-16 |
| q8 max error | 0.00192801104297 |
| q8 half lsb | 0.001953125 |
| correction at equal | 0.69314718056 |
| correction at diff16 | 1.12535168387e-07 |
| translation offset | 37 |
图 1 Jacobian修正函数及Q8查表误差
表中数值和图中曲线由 MATLAB 实际运行得到,随机种子为 20261107;运行版本与完整结果另存为独立文件。
RTL 输入 a、b 为整数对数值,范围正负八,查表保存 g(0) 至 g(16) 的 Q8 最近舍入值,输出 J 的 Q8 值。查表为组合常数 ROM,可综合;
只对声明的整数网格保证逼近误差。 模块采用同步高有效复位及 valid 握手;有效输入在一个时钟沿登记输出,空拍不改变数据寄存器而清除输出有效标志。端口采用有符号 32 位容器,实际有效范围按子核定义约束。
自检覆盖多组有效输入、空拍保持及复位;它验证指定算术或地址子核,不代表完整通信系统或完整译码器已经完成硬件验证。
独立自检程序已在 Icarus Verilog 13.0 中实际运行并通过。该结果不包含器件综合、静态时序分析或板级测试。
可用于软解调指数和、对数域递推、路径概率归并及一般概率模型的稳定实现。多路归约可以串行或树形排列,需要同时考虑临界路径及误差累积。
整数网格查表不包含任意小数输入插值。
最大值近似的误差可能在多级递推中累积。
自然对数和二进制对数不可混用。
极小概率在有限宽度中仍可能被裁剪。
Jacobian 恒等式以最大值和有界差值修正实现稳定概率求和。硬件近似可明确量化到查表范围、输出步长和归约深度。
内容依据:每日精学第 188 课《Jacobian对数的稳定求和修正》。图表沿用原课固定参数数值结果,属于数值验证,不代表设备实测。