量化是什么?

优化您的设计以管理量化错误

量化是将连续无限值映射到较小的离散有限值的过程。在模拟和嵌入式计算的上下文中,它是近似与数字表示的真实界限,该数字表示引入了值的精度和范围的限制。量化在算法中引入了各种错误源,例如舍入错误,下溢或溢出,计算噪声和限制周期。这导致理想的系统行为与计算的数值行为之间的数值差异。

为了管理量化的效果,您需要选择正确的数据类型来表示真实的信号。您需要考虑用于编码信号的数据类型的精度、范围和缩放,还需要考虑量化对算法的数值行为的非线性累积效应。当您拥有诸如反馈循环这样的结构时,这种累积效应会进一步加剧。


为什么量化很重要

在转换嵌入式硬件设计的过程中,需要考虑量化误差。量化误差影响信号处理、无线、控制系统、FPGA、ASIC、SoC、深度学习等应用。

信号处理和无线应用中的量化

在信号处理的应用中,量化误差会导致噪声和降低信噪比(SNR)。SNR在DB中测量,并且通常被描述为每个附加位的x分贝。为了管理量化噪声并将其保持在可接受的级别,您需要选择正确的设置,例如数据类型和舍入模式。

优化的量化FIR滤波器。

控制系统中的量化

在设计控制系统时,特别是低功耗微控制器,可以使用整数或定点算法来平衡实时性能要求和低功耗约束。在这样的设计中,您需要选择数据类型,以适应来自输入传感器的信号的动态范围和精度,同时满足输出信号的精度要求,所有这些都不会由于量化而遇到数值差异。

see example).

" data-toggle="lightbox">

面向磁场控制的永磁同步电机量化模型(看例).

FPGA,ASIC和SoC开发中的量化

将设计从浮点转换为固定点可以通过降低FPGA资源利用率,降低功耗,延迟要求等来帮助最小化电力和资源消耗。但是,此转换介绍了量化错误,因此您必须适当预算量化噪音转换设计时。

see example).

" data-toggle="lightbox">

LTE数字下变频器的量化模型(看例).

深度学习中的量化

深度学习网络的量化是帮助加速推论的重要步骤,并降低嵌入式设备上的内存和功耗。缩放的8位整数量化维护了网络的准确性,同时降低了网络的大小。这使得能够部署到具有较小内存占地面积的设备,为其他算法和控制逻辑留下更多空间。

考虑目标硬件(GPU,FPGA,CPU)架构时,可以进行量化优化。这包括在整数中计算,利用硬件加速器和定影层。量化步骤是实现网络可接受精度的迭代过程。

深度网络量化与部署

请参阅如何使用白盒方法量化,校准和验证MATLAB中的深度神经网络,使得性能和准确性之间的权衡进行权衡,然后将量化的DNN部署到嵌入式GPU和FPGA硬件板。

read article).

" data-toggle="lightbox">

缩放Mnist的分类率的混淆矩阵(阅读文章).

在这个视频中,我们演示了MATLAB中的深度学习量化工作流。使用模型量化库支持包,我们将演示如何校准、量化和验证深度学习网络(如Res万博1manbetxnet50)。
了解深度网络量化,以及在深网络量化器应用中量化的内容。示例语义分段网络,并以部署到GPU和CPU。
了解并下载深度学习工具箱模型量化库支持包。万博1manbetx

量化的工作方式

量化误差是非线性操作的累积效应,如信号的小数部分四舍五入或信号的动态范围溢出。在转换嵌入式硬件的设计时,通过观察设计中的关键信号或变量,并对量化误差进行预算,可以将量化误差考虑在内,以便数字差异在可接受的容忍范围内。

控制系统中各点的量化误差显示量化的累积非线性性质。


用Matlab和Simulink量化量化万博1manbetx

使用MATLAB和Simulin万博1manbetxk,您可以:

  • 探索并分析量化误差传播
  • 自动量化您的设计到有限的精度
  • 调试量化导致的数值差异

探索和分析量化误差

您可以通过模型范围内的自动检测来收集模拟数据和统计数据。该数据的MATLAB可视化使您能够探索和分析您的设计,以理解您的数据类型选择如何影响潜在的信号。

可视化的范围和精度的信号从模拟。

自动量化您的设计

您可以通过选择特定数据类型来量化您的设计,或者您可以迭代探索不同的定点数据类型。使用引导工作流程,您可以看到量化对系统数值行为的整体效果。

或者,您可以解决优化问题,并为您的设计选择最优的异构数据类型配置,以满足系统数值行为的容忍约束。

使用固定点工具转换工作流程。

了解更多关于定点转换的信息:

由于量化而调试数值差异

使用MATLAB,您可以识别,跟踪和调试数值问题的源,例如溢出,精度损耗,浪费的范围或精度在您的设计中。

跟踪溢出到MATLAB代码中相应的行。

也可以看看:滤波器的设计用Simulink进行电机控制设计万博1manbetx用MATLAB和Simulink进行硬件设计万博1manbetx