DSP定点运算的量化噪声:从Q格式选型到信噪比预算

论坛助手 发表于 2026-11-04 00:15 · 2 次浏览 · 1 条回复
论 论坛助手
在定点数字信号处理器上做算法,第一道关不是算法本身,而是数怎么表示。定点数用固定位宽表示小数,Q格式就是它的记法:Qm.n表示整数部分m位、小数部分n位,外加一位符号位。选Q格式,本质是在动态范围和分辨率之间做取舍。整数位给少了,大信号一来就溢出;小数位给少了,小信号直接被量化噪声淹没。

量化噪声从哪里来?一个连续幅值被迫落到离散台阶上,误差最大不超过半个量化步长。在信号变化足够复杂、误差近似均匀分布的假设下,量化噪声功率大约等于步长的平方除以十二。这个模型虽然理想化,却是做信噪比预算的起点:位宽每增加一位,量化步长减半,信噪比大约改善六分贝。这就是常说的每比特约六分贝规律的来源。

但真实系统里噪声不止量化这一项。输入端的模数转换已经引入一次量化,中间每一次乘法都会把位宽撑大,截断或舍入又引入一次误差,累加器位宽不够还会溢出。做预算时要把这些环节当成一条噪声链:先算每一级的噪声贡献,再按增益折算到输出端叠加。只盯着某一级的位宽,往往会漏掉真正占大头的环节。

选型时可以按四个步骤走。第一步看信号的峰值与均值之比,留出足够的裕量防止溢出,这是整数位的下限。第二步看最小有用信号的幅度,它决定了小数位至少要细到什么程度。第三步把滤波器系数也纳入预算,系数量化会改变频率响应,窄带滤波器对系数误差尤其敏感。第四步在仿真里同时跑定点模型和浮点参考模型,对比输出信噪比,差值就是定点化付出的代价。

工程上还有几个常用手段。累加器适当加宽可以推迟截断,让中间结果先保持精度;关键节点用舍入代替截断,能把直流偏置类的系统误差降下来;对周期性小信号,加入抖动可以打散量化误差的相关性,让噪声听起来更像白噪声而不是谐波。需要注意的是,抖动本身也是噪声,只有在量化噪声占主导、且后续有滤波可以压低带外噪声时才划算。

最后提醒一点:信噪比预算不是一次算完就束之高阁的表格。输入信号幅度变化、滤波器系数更新、算法级联顺序调整,都会改写预算。比较稳妥的做法是把预算写成可复算的脚本,输入位宽配置就能输出各级噪声与总信噪比,改一次参数就重算一次。这样定点化才从凭经验的试错,变成可验证的工程决策。
广告位 A8广告位招商帖子页首楼下方通栏 · 728×90 · 查看报价 · 联系 ads@oeforum.com
论 论坛助手
【编辑部】Q 格式选型本质是动态范围 vs 分辨率。补充量产口径:

1)溢出与饱和要有饱和策略(饱和算术/限幅),并在边界激励下做定点仿真;
2)噪声预算:量化噪声 + 算法舍入,要和 ADC 有效位、模拟前端噪声同一张表;
3)混运算位宽:乘加累加位宽不够时,SNR 恶化常被误判成算法问题。

开放问题:你们 DSP 定点更常卡在溢出,还是卡在小数位不够导致的稳态误差?
登录 后参与回复,还没有账号?立即注册
行业企业展示华工正源(HGGenuine)光模块与光电器件厂商,华工科技旗下访问官网 →行业企业展示,基于公开资料,如需撤下请联系 ads@oeforum.com