主要内容

NumericTypeScope

确定定点数据类型

语法

H= NumerictyPescope.
显示(H
步骤(H数据
版本(H
重置(H

描述

NumericTypeScope是提供有关数据的动态范围的信息的对象。范围以a的形式提供数据的动态范围的可视化表示log2.直方图。在这个直方图中,位权沿着x轴显示,出现的百分比沿着y轴显示。直方图的每个箱子对应二进制单词中的一个位。例如,20对应于二进制单词中的第一整数位,2-1对应于二进制单词中的第一个小数位。

范围建议采用numerictype.满足指定标准的对象。请参阅有关位分配的部分对话框面板

H= NumerictyPescope.返回一个NumericTypeScope您可以用于查看Matlab中的数据的动态范围®.查看NumericTypeScope在创建窗口H,可以使用显示方法。

显示(H打开NumericTypeScope对象H并将其带入视野。关闭范围窗口不会从工作区中删除对象。如果scope对象仍然存在于您的工作空间中,您可以使用显示方法。

步骤(H数据处理您的数据,并允许您可视化的动态范围。的对象H在每次调用之间保留先前收集的关于变量的信息一步

版本(H释放系统资源(如内存、文件句柄或硬件连接),并允许更改所有属性和输入特征。

重置(H属性清除所有存储的信息NumericTypeScope对象H.重置对象清除范围窗口中显示的信息。

识别超出量程和精度以下的值

NumericTypeScope还可以帮助您识别基于当前数据类型超出范围或低于精度的任何值。准备NumericTypeScope为了识别它们,提供一个输入变量fi对象,并验证以下条件之一为真:

  • 数据款式fi对象设置为缩放双打:二进制点缩放

  • datatypeoverride.固定点设计器™的属性Fipref.对象设置为ScaledDoubles

在有信息的情况下,scope通过将直方图的柱状图用颜色编码,表示超出范围、低于精度、在数据类型范围内的值,具体如下:

  • 蓝色-直方图bin包含当前数据类型范围内的值。

  • 红色直方图箱包含当前数据类型范围之外的值。

  • 黄色-直方图bin包含当前数据类型中低于精度的值。

有关范围颜色编码的示例,请参见图中所示垂直单位

另见传说对话框面板

看看例子详细了解更多关于使用的NumericTypeScope选择数据类型。

对话框和工具栏

NumericTypeScope窗口

NumericTypeScope打开窗口顶部显示的默认工具栏和右侧的对话面板。

配置对话框

NumericTypeScope配置允许您控制范围窗口的行为和外观。

要打开“配置”对话框,请选择文件>配置,或将该作用域作为活动窗口时,按N钥匙。

配置对话框包含一系列窗格,每个窗格包含一个配置选项表。有关设置每个窗格上的选项的说明,请参阅每个窗格的参考部分。此对话框有一个窗格,核心窗格,只有一个选项,用于范围用户界面的通用UI设置。

要保存配置设置以备将来使用,请选择文件>配置>另存为.的配置设置将成为默认配置设置NumericTypeScope目的。

谨慎

在将您自己的一组配置设置保存到matlab/toolbox/fixedpoint/fixedpoint文件夹之前,将默认配置设置的备份副本保存到另一个位置。如果不保存默认配置的备份副本,以后将无法恢复默认配置。

要保存您的配置设置以供将来使用,请将其保存在matlab/toolbox/fixedpoint/fixedpoint文件夹中,并使用文件名numerictypescopecomponent.cfg.您可以随时重新保存配置设置,但请记住使用指定的文件名在指定的文件夹中这样做。

核心窗格

“配置”对话框中的“核心”窗格控制范围的一般设置。

单击General UI,然后单击选项打开“核心:通用UI选项”对话框。

  • 在标题栏中显示完整的源路径- 选择此复选框以在范围标题栏中显示文件名和变量名称。如果范围不是文件,或者清除此复选框,则范围仅在标题栏中显示变量名称。

  • 打开消息日志-控制何时打开消息日志窗口。消息日志窗口帮助您调试与范围有关的问题。对于以下任何情况,选择打开消息日志窗口:

    • 对于任何新消息

    • 警告/失败消息

    • 仅用于失败消息

    • 手动

    该选项默认为警告/失败消息

    您可以通过选择在任何时候打开消息日志帮助>消息日志或按压Ctrl + M..“消息日志”对话框提供了加载的配置设置和注册扩展的系统级记录。消息日志显示每个消息的摘要和详细信息,您可以根据类型和类别过滤消息的显示。

    • 类型- 选择要在消息日志中显示的消息类型。你可以选择全部信息警告,或失败.类型默认为全部

    • 类别- 选择要在消息日志中显示的消息类别。你可以选择全部配置,或扩展.范围使用Configuration消息来指示何时加载新的配置文件,使用Extension消息来指示何时注册组件。类别默认为全部

对话框面板

比特分配

范围位分配对话框面板(如下图所示)为指定数据类型标准提供了几个选项。

您可以使用此面板指定已知的单词长度和超出范围所需的最大出现次数。还可以使用面板指定超出范围的期望出现次数和建议数据类型所表示的最小值。对于流数据,建议的numerictype对象会随着时间调整,以继续满足指定的标准。

范围还允许您与直方图图交互。当您选择图形控制在“位分配”对话框中,您可以在二进制点的两侧启用光标。您可以与这些游标进行交互,并遵守建议的Numerictype对输入数据的效果。例如,您可以看到外部范围,低于精度或两者的值数。您还可以查看数据类型的可表示的最小值和最大值。

传说

示波器图例面板告诉您示波器用于指示值的颜色。这些颜色表示在范围内显示时超出范围、在范围内或低于精度的值。

生成的类型

生成的类型面板描述了由范围设置定义的固定点数据类型。通过操纵视觉显示(通过位分配面板或使用光标),您可以更改数据类型的值。

属性显示超出范围或低于精度的值的百分比numerictype.位于此面板顶部的对象。SQNR(信号量化噪声比)根据信号而变化。如果参数没有值,则没有足够的数据来计算SQNR。当范围信息或numerictype.,则SQNR复位。

类型详细信息部分提供关于定点数据类型的详细信息。

输入数据

输入数据面板提供有关当前显示的值的统计信息NumericScopeType目的。

垂直单位

使用垂直单位选择以显示超出范围或低精度的值作为百分比或作为实际计数。例如,下面的图像显示了超出范围或低于总值的百分比的值。

下一个示例显示超出范围或低于精度的值作为实际计数。

向前打开所有NumericType作用域窗口

NumericScopeTypeGUI提供了一个视图>将所有NumericType Forwares带来菜单选项,帮助您管理您的NumericTypeScope视窗。选择此选项或按下Ctrl + F.将所有NumericTypeScopewindows。如果一个NumericTypeScope窗口当前未打开,此菜单选项打开窗口并将其带入视图。

工具栏(Mac唯一的)

通过选择激活工具栏视图>工具栏.当此工具处于活动状态时,您可以从GUI停靠或取消停靠范围。

工具栏功能适用于Mac只要。选择工具栏在Windows上®和Unix.®版本仅显示一个空工具栏。对接图标始终出现在这些版本的右上角的GUI中。

方法

释放

使用此方法可以释放系统资源(如内存、文件句柄或硬件连接),并允许更改所有属性和输入特征。

例子:

> > (H

重置

使用此方法可清除存储在对象中的信息H.这样做可以重用H从不同变量处理数据。

例子:

> >重置(H

显示

使用此方法打开范围窗口并将其带入视图。

例子:

> >显示(H

一步

使用此方法处理数据并在范围窗口中可视化动态范围。

例子:

> >步骤(H数据

例子

全部折叠

将fi对象DataTypeOverride设置为Scaled Doubles,然后查看其动态范围。

fp = fipref;initialDTOSetting = fp.DataTypeOverride;《外交政策》。DataTypeOverride =“ScaledDoubles”;= fi(魔法(10),1 8 2);b = fi([一个;2。^(彼前)1 8,3);h = NumericTypeScope;步骤(h、b);《外交政策》。DataTypeOverride = initialDTOSetting;

log2直方图显示显示该值显示在变量中的外部范围和低于精度。在这种情况下,B具有Numerictype的数据类型(1,8,3)。NumericType(1,8,3)数据类型提供5位(包括符号位)和3个分数位。因此,该数据类型只能表示-2 ^ 4和2 ^ 4-2 ^ -3(从-16到15.8750)之间的值。鉴于此数据类型的范围和精度,大于2 ^ 4的值落在范围之外,并且值小于2 ^ -3的值低于数据类型的精度。当您检查NumerictyPescope显示时,您可以看到需要位5,6和7的值是外部范围,并且需要分数位4和5的值低于精度。鉴于此信息,您可以通过将变量B的数据类型更改为NumEricType(0,13,5)来防止超出范围和低于精度的值。

查看动态范围,并确定具有缩放双倍的数据倍数的FI对象的适当数字类型:二进制点缩放。

创建一个数字类型对象,其DataTypeMode为Scaled double:二进制点缩放。然后您可以使用该numerictype对象来构造您的fi对象。因为您将DataTypeMode设置为Scaled double: binary point scaling, NumericTypeScope现在可以识别数据中的溢出。

t = numerictype;t.datatypemode ='缩放双重:二进制点缩放';T.WordLength = 8;T.FractionLength = 6;a = fi(sin(0:100)*3.5, T);b = fi (cos (0:100) * 1.75, T);acc = fi (0, T);h = NumericTypeScope;I = 1:length(a) acc(:) = a(I)*0.7+b(I);步骤(h, acc)结束

这个动态范围分析表明,您可以用5位表示累加器中的整个数据范围;二进制位的左边有两个(整数位),右边有三个(小数位)。通过更改numerictype对象T的WordLength和fraclength属性,可以验证该数据类型能够表示所有的值。然后,使用T重新定义累加器。

要查看基于此新数据类型的动态范围分析,请重置NumerictyPescope对象H,并重新运行循环。

T.WordLength = 5;T.FractionLength = 2;acc = fi (0, T);释放(h)重置(h)i = 1:长度(a)acc(:) = a(i)* 0.7 + b(i);步骤(h, acc)结束

另请参阅

|

介绍了R2010a