Clear Sky Science · zh
基于 FPGA 的不精确带符号乘法器设计,用于高性能图像处理应用
更聪明的数学让图像更清晰
你拍摄的每一张数字照片都依赖于后台发生的数十亿次微小计算。其中很多计算是乘法,快速高效地完成这些运算对相机、手机和嵌入式设备至关重要。本文探讨了如何有意允许这些乘法产生微小且受控的误差,以节省能量和硬件资源,同时仍能产生在人眼看来几乎无差别的图像。

为何“不完美”也足够好
并非所有计算都必须完美无缺才能有用。在图像和信号处理领域,最终结果由人来观看,人眼通常无法察觉极小的数值误差。这一思路称为近似计算,它用一点数学精度换取速度、功耗和芯片面积的大幅提升。乘法是此类系统中最昂贵的操作之一,传统设计追求精确结果但代价是高昂的硬件开销。作者关注于构建能处理正负数(带符号乘法器)的乘法器,并专门针对一种流行的可重编程芯片平台——FPGA 进行优化。现有的近似乘法器多为定制芯片且针对无符号数设计,因此难以直接应用到大量依赖带符号算术的真实图像系统中。
可重编程芯片内部的构建模块
现代 FPGA 由重复单元构成,如查找表和特别适合执行加法的快速进位链。作者首先分析了如何用这些模块组装出一个精确的 8 位带符号乘法器。他们仔细检查内部运算模式以发现重复或不必要的结构,例如重复逻辑和对符号位过度扩展。通过重组设计、合并相似部分以及丢弃由于输入范围受限而永远不需要的积位,他们构建了一个精简的“精确”基线乘法器,该基线已使用更少的逻辑门并缩短了信号传输路径。这个优化后的基线随后成为他们近似设计的基础。
两种近似乘法器方案
基于该优化基线,作者提出了两种 8 位带符号近似乘法器。两者都基于一个简单思想:输出的最低有效位对图像质量的贡献最小,因此可以简化或固定而不会产生明显视觉影响。在近似设计 1 中,最低的七位输出位不再精确计算,但其内部进位信号仍被生成并被谨慎管理。通过大量搜索为这些低位选择常数值,以保持平均误差较低。近似设计 2 则更进一步:它移除了低位输出及其局部进位,从而大幅减少所需硬件。在两种方案中,结构随后被重塑以将多个小操作打包到每个查找表中并与快速进位链对齐,从而得到可高效映射到 FPGA 织构的紧凑电路“网表”。

性能、能耗与图像质量
这两种设计在 Xilinx Virtex-7 FPGA 上进行了详尽测试,并与许多现有近似乘法器进行了比较。作者测量了所使用的查找表数量、最慢信号路径的长度以及设计的动态功耗。他们还穷举模拟了所有输入组合以量化平均误差和最坏情况误差。两款新乘法器在这些因素之间取得了比竞争方法更好的平衡:它们使用更少的资源、具有更短的延迟并在平均误差相当或更小的情况下消耗更少功率。更粗糙的近似设计 2 在硬件和能耗上最节省,但以较大的最坏情况误差为代价;而近似设计 1 则在误差界限上更紧,资源开销略高。为了展示实际影响,作者将这些乘法器接入两项常见图像处理任务——图像混合与平滑——并使用标准视觉质量指标评估输出。在两项任务中,生成的图像都与精确乘法器的结果非常接近,具有较高的峰值信噪比和结构相似性得分,人眼也无法察觉明显劣化。
对日常设备的意义
这项工作表明,经过精心设计的“足够好”算术可以显著减少可重编程硬件的面积和能耗,同时保持图像质量。通过利用图像对小数值误差的天然容忍度并针对 FPGA 的具体构建模块定制设计,作者打造了既快速又节能的带符号乘法器。对于未来必须在严格功耗和成本预算内运行的相机、嵌入式视觉系统或 AI 加速器,这类近似乘法器为在不牺牲最终视觉效果(即人眼所见的图片质量)的前提下挤出更多性能提供了切实可行的途径。
引用: Hassan, J., Khurshid, B., Banday, S.A. et al. FPGA-based imprecise signed multiplier designs for high-performance image processing applications. Sci Rep 16, 10084 (2026). https://doi.org/10.1038/s41598-026-40524-4
关键词: 近似计算, FPGA 乘法器, 图像处理硬件, 低功耗设计, 带符号算术