优化您的设计管理量化误差

量化是连续映射无穷大的值到一个较小的组离散有限值的过程。在模拟和嵌入式计算的上下文中,它是关于用一个数字表示近似现实世界的值上的一个值的精度和范围介绍限制。在算法的误差量化介绍各种来源,如舍入误差,下溢或溢出,计算噪声和限制周期。这导致了理想的系统的行为和所计算的数值行为之间的数值差异。

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


为什么量化事项

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

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

在信号处理应用中,量化误差有助于噪声并降低信噪比(信噪比)。信噪比的测量单位是分贝,通常用每增加一个比特降低x分贝来表示。为了管理量化噪声并将其保持在可接受的水平,您需要选择正确的设置,例如数据类型和舍入模式。

优化的量化FIR滤波器。

控制系统中的量子化

在设计控制系统,特别是对低功耗微控制器,你可以使用整数或定点算术来平衡与低功耗限制的实时性能要求。在这样的设计,就需要选择容纳来自输入传感器来同时满足的输出信号,所有的精度要求,而不运行到由于量化数值差的信号的动态范围和精度的数据类型。

see example).

" data-toggle="lightbox">

用于磁场定向控制的永久磁铁同步电动机的量化模型(看例子)。

在FPGA、ASIC和SoC开发中的量化

将设计从浮点数转换为定点可以通过降低FPGA资源利用率、降低功耗、满足延迟需求等来帮助最小化功耗和资源消耗。但是,这种转换会引入量化错误,因此在转换设计时必须适当地预算量化噪声。

see example).

" data-toggle="lightbox">

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

深度学习中的量化

量化已成为优化深度学习模型很重要,因为它有助于部署到嵌入式系统时加速推理。您可以使用混合精度推论使用8位整数,并有持续的学术研究探索4位和6位整数进行量化。

read article).

" data-toggle="lightbox">

按比例划分的MNIST分类率的混淆矩阵(读文章)。


量化的工作方式

量化误差是非线性操作的像的信号的动态范围的信号或溢出的舍入小数部分的累积效果。在你的设计中观察的关键信号或变量和预算编制的量化误差,这样的数值差异是可以接受的容差范围内转换设计,嵌入式硬件时,您可以采取的量化误差考虑在内。

在一个控制系统中的各种点的量化误差表示量化的累积非线性性质。


量化与MATLAB和Simulink万博1manbetx

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

  • 探索和分析量化误差传播
  • 自动量化设计精密有限
  • 调试数值差异,从量化结果

探索和分析量化误差

您可以通过自动型号全仪器采集的模拟数据和统计数据。这个数据的可视化MATLAB让你去探索和分析你的设计,以了解数据类型的选择如何影响潜在信号。

从可视化仿真的信号的范围和精度。

自动量化您的设计

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

另外,您也可以解决优化问题,并选择适合您的设计,以满足您的系统的数值行为公差约束优化异构数据类型的配置。

使用定点工具转换流程。

了解更多关于定点转换:

调试数值差异由于量化

有了MATLAB,您可以识别,跟踪和调试的数字问题,由于量化的来源,如溢出,精度损失,浪费的范围或精度在你的设计。

跟踪溢出到在MATLAB代码对应的线。

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