每日精学 112|定点饱和与回绕溢出

2026-09-25

← 技术专题 · 每日精学目录

雷达 · 通信 · 电子战 / 基础精学 112

舍入处理被丢弃的低位,溢出处理超出高位范围的结果。两者需要分别定义。

有限位宽加法超过表示范围时,二进制自然回绕会产生跨越全量程的大误差;饱和算术把结果限制在最大最小码,误差较局部但引入非线性削顶。

01
模型与符号

W:有符号数据位宽(bit)

xmin:最小可表示码(整数)

xmax:最大可表示码(整数)

Qw(x):回绕结果(整数)

Qs(x):饱和结果(整数)

02
回绕算术

二补码 W 位回绕等价于模 2W 运算后重新解释符号。正溢出可能突然映射到大负数。

03
饱和算术

饱和器实现

Q_s(x)=\min(x_{\max},\max(x_{\min},x))

保持误差方向但限制输出范围。

04
检测条件

同号加数产生异号和时发生二补码加法溢出。也可用扩展一位结果与上下限比较。

05
物理含义

回绕把数轴首尾连接成圆,越过最大正数立即跳到最大负数。饱和把数轴两端变成挡板,越界值停在边界。

06
固定参数算例

MATLAB 穷举八位有符号加法器输入对,比较回绕与饱和误差分布、溢出比例,并展示边界向量。

MATLAB 固定参数数值验证结果
量数值
有符号位宽8
最小码值-128
最大码值127
input pair count65536
overflow pair fraction0.25
maximum wrap error256
maximum saturation error128
positive boundary wrap result-128
positive boundary saturation result127
图 1:八位加法的回绕与饱和映射 误差分布和边界样本(子图 1)图 1:八位加法的回绕与饱和映射 误差分布和边界样本(子图 2)图 1:八位加法的回绕与饱和映射 误差分布和边界样本(子图 3)图 1:八位加法的回绕与饱和映射 误差分布和边界样本(子图 4)

图 1 八位加法的回绕与饱和映射 误差分布和边界样本

数值结果由配套 MATLAB 脚本在固定参数和固定随机种子下实际执行。脚本包含针对闭式关系 边界条件或估计误差的断言,并把 MATLAB 版本与关键数值写入独立结果文件。

07
数字实现的边界

RTL 实现扩展一位加法、上下限比较和可选饱和或回绕输出,同时产生溢出标志。

配套 RTL 只实现本课中可明确量化的定点核函数或数据通路。浮点矩阵分解 概率统计和图形生成保留在 MATLAB 参考程序中。

08
适用范围

饱和常用于音频 通信幅度和控制环,回绕适合明确的模运算如相位累加器。选择必须依据变量物理含义。

09
工程上需要注意

  • 饱和仍会产生谐波和 EVM。

  • 连续饱和表明前级尺度设计不足。

  • 乘法累加需要更多保护位。

  • 不同 HDL 表达式的隐式位宽可能改变溢出位置。

回绕适用于周期模变量,饱和适用于有界物理幅度。扩展位计算和显式边界比较可避免隐式位宽错误。

内容依据:每日精学第 112 课《定点饱和与回绕溢出》。图表沿用原课固定参数数值结果,属于数值验证,不代表设备实测。

阅读7
分享
写评论...