主要内容

数据类型转换概述

在数字硬件中,数字被表示为定点或浮点数据类型。对于这两种数据类型,字长都是固定在一组位上的。定点表示通常在功耗、大小、内存使用、速度和最终产品的成本方面提供优势。但是,具有相同字长的定点值的动态范围要比浮点值小得多。因此,为了避免溢出或不合理的量化误差,必须对定点值进行缩放。

下面总结了系统中数据类型从浮点到定点转换的过程。在将模型中的数据类型转换为嵌入式高效表示之后,您可以进一步优化预期硬件的设计,生成代码,然后将代码部署到目标设备上。

  1. 确定系统需求。

  2. 理想的系统模型。

  3. 将系统的数据类型转换为目标硬件上有效的数据类型。

  4. 验证转换系统的数值行为。

  5. 验证转换系统的性能。基于目标硬件优化系统性能。

  6. 生成的代码。

  7. 将代码部署到硬件上。

将系统转换为定点的方法

Fixed-Point Designer™软件提供了三种方法来为模型中的系统自动指定定点数据类型。下表总结了可用于将浮点系统转换为定点数据类型的方法。

方法 描述
定点的工具

定点工具是一个自动指定模型中的定点数据类型的用户界面。

  • 迭代定点转换工作流——该工具为模型对象收集范围数据。基于这些值,该工具提出了可最大化精度并覆盖范围的定点数据类型。然后,您可以检查数据类型建议,并将它们选择性地应用到模型中的对象。

  • 优化的定点转换-如果你知道你的系统行为容忍,你可以使用fxpopt在定点工具中查找系统的最佳数据类型,使系统的总位宽(字长总和)最小化,同时保持在指定的公差范围内。

例如,请参见将浮点模型转换为定点

DataTypeWorkflow。转换器

DataTypeWorkflow。转换器对象及其相关的对象函数是定点工具的命令行替代方案。这些功能提供了与定点工具相同的功能。

例如,请参见使用命令行将模型转换为固定点

fxpopt

如果您知道您的系统行为容忍度,那么命令行fxpopt函数可以为您的系统找到最佳的数据类型,使系统的总位宽(字长之和)最小化,同时保持在指定的公差范围内。

例如,请参见优化系统的定点数据类型

在将系统转换为固定点系统之后,验证固定点系统的行为是否满足您的需求。有关更多信息,请参见验证新设置

基于目标硬件优化系统性能。例如,用等价的CORDIC实现替换三角函数,或使用查找表优化器应用程序,以替换部分模型与嵌入式高效查找表实现。

相关的话题