主要内容

索引向量

根据第一个输入的值在不同的输入之间切换输出

  • 库:
  • 金宝appSimulink /信号路由

    HDL编码器/信号路由

  • 向量块

描述

索引向量块是一种特殊配置的多端口切换块,其中指定一个数据输入,而控制输入是从零开始的。块输出是输入向量的元素,其索引与控制输入相匹配。例如,如果输入向量是[18 15 17 10]控制输入是3.,匹配3(从零开始)索引的元素是10,它成为输出值。

配置多端口切换块工作作为一个索引向量块组数据端口个数1而且数据端口订单从零开始的连续的

有关Multiport Switch块的更多信息,请参见多端口切换阻塞引用页面。

港口

输入

全部展开

控制信号,指定为标量。当控件输入不是整数值时,块通过舍入到零将该值截断为整数值。

有关枚举类型的控制信号的信息,请参见枚举控制端口参数设置指南多端口切换阻塞引用页面。

限制

  • 如果控制信号是数值,则控制信号不能是复数。

  • 如果控制信号是枚举信号,则块使用基础整数的值来选择数据端口。

  • 如果基础整数与数据输入不对应,则会发生错误。

数据类型:||一半|int8|int16|int32|int64|uint8|uint16|uint32|uint64|布尔|不动点

第一个数据输入,指定为标量或向量。端口被标记0当你设置数据端口订单从零开始的连续的,并贴上1当你设置数据端口订单从连续的

数据类型:||一半|int8|int16|int32|int64|uint8|uint16|uint32|uint64|布尔|不动点|公共汽车|枚举|字符串

输出

全部展开

块根据控制信号的值,从输入数据向量中输出选定的值。输出是一个标量。

数据类型:||一半|int8|int16|int32|int64|uint8|uint16|uint32|uint64|布尔|不动点|枚举|公共汽车

参数

全部展开

主要

指定数据输入端口的排序类型。

  • 从零开始的连续的- Block使用从零开始的索引来排序连续的数据端口。的默认值索引向量块。

  • 从连续的- Block使用基于单一的索引来排序连续的数据端口。的默认值多端口切换块。

  • 指定索引- Block使用不连续索引来排序数据端口。该值只支持有两个或两个以上输金宝app入数据端口的配置。

提示

  • 当控件端口是枚举类型时,选择指定索引

  • 如果您选择从零开始的连续的从连续的,验证控件端口不是枚举类型。此配置已弃用并产生错误。您可以在模型上运行Upgrade Advisor来替换它们多端口切换块,使用显式指定数据端口索引的块。看到模型的升级

  • 避免块包含用于模拟或代码生成的未使用的数据端口的情况。当控制端口是定点或内置数据类型时,请验证所有数据端口索引都可以用该类型表示。否则,将发生以下块行为:

    如果该块有未使用的数据端口,且数据端口顺序为: 该块产生:
    从零开始的连续的从连续的 一个警告
    指定索引 一个错误

依赖关系

选择从零开始的连续的从连续的使数据端口个数参数。

选择指定索引使数据端口索引参数。

编程使用

块参数:DataPortOrder
类型:特征向量
价值观:'基于零的连续' | '基于一的连续' | '指定索引'
默认值:“从零开始的连续的”

指定块的数据输入端口的数量。

依赖关系

若要启用此参数,请设置数据端口订单从零开始的连续的从连续的

编程使用

块参数:输入
类型:特征向量
价值观:1 ~ 65536之间的整数
默认值:' 1 '

信号的属性

选中此复选框要求所有数据输入端口具有相同的数据类型。清除此复选框时,该块允许数据端口输入具有不同的数据类型。

编程使用

块参数:InputSameDT
类型:特征向量
价值观:'off' | 'on'
默认值:“关闭”

较低的值表示Simulink的输出范围金宝app®检查。

金宝appSimulink使用最小值执行:

请注意

输出最小不饱和或剪辑实际输出信号。使用饱和块来代替。

编程使用

块参数OutMin
类型:字符向量
“[]”|标量
默认的“[]”

Simulink检查的输出范围的最大值。金宝app

金宝appSimulink使用最大值执行:

请注意

输出最大不饱和或剪辑实际输出信号。使用饱和块来代替。

编程使用

块参数OutMax
类型:字符向量
“[]”|标量
默认的“[]”

选择输出的数据类型。类型可以继承、直接指定或表示为数据类型对象,例如金宝app仿真软件。NumericType

当你选择一个继承的选项时,块的行为如下:

  • 继承:通过内部规则继承s金宝appimulink选择数据类型来平衡数值精度、性能和生成的代码大小,同时考虑到嵌入式目标硬件的属性。如果更改嵌入式目标设置,则内部规则选择的数据类型可能会更改。软件并不总是能够同时优化代码效率和数值精度。如果内部规则不能满足您对数值精度或性能的特定需求,请使用以下选项之一:

    • 显式指定输出数据类型。

    • 显式指定默认数据类型,例如fixdt(1, 32岁,16)然后使用定点工具为你的模型提出数据类型。有关更多信息,请参见fxptdlg(定点设计师)

    • 要指定您自己的继承规则,请使用继承:通过反向传播继承然后使用数据类型传播块。如何使用此块的示例可在Signal Attributes库中找到数据类型传播示例块。

  • 继承:通过反向传播继承—使用驱动块的数据类型。

  • 继承:与第一次数据输入相同—使用第一个数据输入端口的数据类型。

编程使用

块参数OutDataTypeStr
类型:字符向量
继承:通过内部规则继承|“继承:通过反向传播继承”|“继承:与第一个输入相同”|“双”|“单一”|“一半”|“int8”|“uint8”|“int16”|“uint16”|“int32”|“uint32”|“int64”|“uint64”|“fixdt(16)”|“fixdt(0) 1, 16日”|“fixdt(1, 16日2 ^ 0,0)”|“字符串”|金宝appSimulink.ImageType (480640 3)|'<数据类型表达式>'
默认的“继承:通过内部规则继承”

选择以锁定此块的输出数据类型设置,防止定点工具和定点顾问的更改。有关更多信息,请参见使用锁输出数据类型设置(定点设计师)

编程使用

块参数LockScale
类型:字符向量
“关闭”|“上”
默认的“关闭”

选择其中一种舍入模式。

天花板

正数和负数都四舍五入到正无穷。相当于MATLAB®装天花板函数。

收敛

四舍五入到最接近的可表示值。如果出现平局,则舍入到最接近的偶数。相当于定点设计器™收敛函数。

地板上

正数和负数都取四舍五入到负无穷。相当于MATLAB地板上函数。

最近的

四舍五入到最接近的可表示值。如果出现平局,则舍入正无穷。相当于定点设计器最近的函数。

四舍五入到最接近的可表示值。如果出现平局,则将正数舍入到正无穷,将负数舍入到负无穷。相当于定点设计器函数。

简单的

自动选择四舍五入到地板和四舍五入到零之间,以生成尽可能高效的四舍五入代码。

把数字四舍五入到零。相当于MATLAB修复函数。

编程使用

块参数RndMeth
类型:字符向量
“天花板”|“收敛”|“地板”|“最近的”|“圆”|“简单”|“零”
默认的“地板”

另请参阅

有关更多信息,请参见舍入(定点设计师)

指定溢出是饱和还是换行。

  • -溢出换行为数据类型可以表示的适当值。

    例如,数字130不适合有符号的8位整数,它被包装为-126。

  • —溢出饱和到数据类型所能表示的最小值或最大值。

    例如,与有符号8位整数关联的溢出可以饱和到-128或127。

提示

  • 当您的模型有可能溢出,并且您想要在生成的代码中显式地进行饱和保护时,请考虑选择此复选框。

  • 当您想优化生成代码的效率时,请考虑清除此复选框。

    清除此复选框还有助于避免过度指定块如何处理超出范围的信号。有关更多信息,请参见排除信号范围错误

  • 当您选中此复选框时,饱和将应用于块上的每个内部操作,而不仅仅是输出或结果。

  • 通常,代码生成过程可以检测何时溢出是不可能的。在这种情况下,代码生成器不会产生饱和代码。

编程使用

块参数:SaturateOnIntegerOverflow
类型:特征向量
价值观:'off' | 'on'
默认值:“关闭”

选中此复选框允许不同大小的输入信号。

  • —允许不同大小的输入信号,并将输入信号的大小传播到输出信号。在这种模式下,块产生一个可变大小的输出信号。

  • -要求所有非标量数据输入信号的大小相同。

编程使用

参数:AllowDiffInputSizes
类型:特征向量
值:“上”|“关闭”
默认值:“关闭”

块特征

数据类型

布尔|公共汽车||枚举|不动点|一半|整数|

直接引线

是的

多维信号

是的

适应信号

是的

讨论二阶导数过零检测

没有

扩展功能

C/ c++代码生成
使用Simulink®Coder™生成C和c++代码。金宝app

PLC代码生成
使用Simulink®PLC Coder™生成结构化文本代码。金宝app

定点转换
使用定点设计器设计和模拟定点系统。

版本历史

R2006a之前介绍过