Saturation Dynamic
将输入信号限制在动态饱和上限和下限值之间
库:
Simulink /
Discontinuities
HDL Coder /
Discontinuities
描述
Saturation Dynamic 模块产生输出信号,该信号是以来自输入端口 up
和 lo
的饱和值为界的输入信号的值。
输入 | 输出 |
---|---|
lo ≤ 输入值 ≤ up | 输入值 |
输入值 < lo | 下限 |
输入值 > up | 上限 |
端口
输入
u — 输入信号
标量 | 向量
要应用饱和算法的输入信号。
数据类型: double
| single
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| uint64
| fixed point
up — 提供饱和上限的信号
标量 | 向量
提供饱和上限的动态值。当输入大于 up 时,输出值以 up 为界。
数据类型: double
| single
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| uint64
| fixed point
lo — 提供饱和下限的信号
标量 | 向量
提供饱和下限的动态值。当输入小于 lo 时,输出值以 lo 为界。
数据类型: double
| single
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| uint64
| fixed point
输出
y — 输出信号
标量 | 向量
输出信号,它可以是输入信号值,也可以是饱和上限或下限值。
数据类型: double
| single
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| uint64
| fixed point
参数
要编辑 Saturation Dynamic 模块的参数,请双击模块图标。
数据类型助手可帮助您设置数据属性。要使用数据类型助手,请点击 。有关详细信息,请参阅使用数据类型助手指定数据类型。
输出最小值 — 范围检查的最小输出值
[]
(默认) | 标量
Simulink® 检查的输出范围的下限值。
Simulink 使用最小值执行下列操作:
某些模块的参数范围检查(请参阅指定模块参数的最小值和最大值)。
定点数据类型的自动定标。
从模型生成的代码的优化。此优化可删除算法代码,并影响某些仿真模式(如 SIL 或外部模式)的结果。有关详细信息,请参阅Optimize using the specified minimum and maximum values (Embedded Coder)。
注意
输出最小值不会对实际输出信号进行饱和处理或截断。请改用 Saturation 模块。
编程用法
模块参数:OutMin |
类型:字符向量 |
值:'[ ]' | 标量 |
默认值:'[ ]' |
输出最大值 — 范围检查的最大输出值
[]
(默认) | 标量
Simulink 检查的输出范围的上限值。
Simulink 使用最大值执行下列操作:
某些模块的参数范围检查(请参阅指定模块参数的最小值和最大值)。
定点数据类型的自动定标。
从模型生成的代码的优化。此优化可删除算法代码,并影响某些仿真模式(如 SIL 或外部模式)的结果。有关详细信息,请参阅Optimize using the specified minimum and maximum values (Embedded Coder)。
注意
输出最大值不会对实际输出信号进行饱和处理或截断。请改用 Saturation 模块。
编程用法
模块参数:OutMax |
类型:字符向量 |
值:'[ ]' | 标量 |
默认值:'[ ]' |
输出数据类型 — 指定输出数据类型
继承: 与输入相同 (默认) | 继承: 通过反向传播继承 | double | single | int8 | int32 | uint32 | int64 | uint64 | fixdt(1,16,2^0,0) | <数据类型表达式> | ...
为输出选择数据类型。该类型可以继承、直接指定或表示为数据类型对象,如 Simulink.NumericType
。有关详细信息,请参阅控制信号的数据类型。
编程用法
模块参数:OutDataTypeStr |
类型:字符向量 |
值:'Inherit: Same as input' 、'Inherit: Inherit via back propagation' 、'single' 、'int8' 、'uint8' 、int16 、'uint16' 、'int32' 、'uint32' 、'int64' 、'uint64' 、fixdt(1,16,0) 、fixdt(1,16,2^0,0)、fixdt(1,16,2^0,0) 。'<data type expression>' |
默认值:'Inherit: Same as input' |
锁定输出数据类型设置以防止被定点工具更改 — 用于防止定点工具覆盖输出数据类型的选项
off
(默认) | on
选择此参数可防止定点工具覆盖您在模块上指定的输出数据类型。有关详细信息,请参阅Use Lock Output Data Type Setting (Fixed-Point Designer)。
编程用法
模块参数:LockScale |
类型:字符向量 |
值:'off' | 'on' |
默认值:'off' |
整数舍入模式 — 指定定点运算的舍入模式
向下 (默认) | 向上 | 收敛 | 最邻近值 | 舍入 | 最简 | 零
选择下列舍入模式之一。
- 向上
将正值和负值朝正无穷方向舍入。等同于 MATLAB®
ceil
函数。- 收敛
将数值舍入到最邻近的可表示值。如果出现结值,则舍入到最邻近的偶数整数。等同于 Fixed-Point Designer™
convergent
函数。- 向下
将正值和负值朝负无穷方向舍入。等同于 MATLAB
floor
函数。- 最邻近值
将数值舍入到最邻近的可表示值。如果出现结值,则朝正无穷方向舍入。等同于 Fixed-Point Designer
nearest
函数。- 舍入
将数值舍入到最邻近的可表示值。如果出现结值,则将正数朝正无穷方向舍入,将负数朝负无穷方向舍入。等同于 Fixed-Point Designer
round
函数。- 最简
自动选择是向负无穷大方向舍入还是向零舍入,以生成尽可能有效的舍入代码。
- 零
将数值向零舍入。等同于 MATLAB
fix
函数。
编程用法
模块参数:RndMeth |
类型:字符向量 |
值:'Ceiling' | 'Convergent' | 'Floor' | 'Nearest' | 'Round' | 'Simplest' | 'Zero' |
默认值:'Floor' |
另请参阅
有关详细信息,请参阅舍入 (Fixed-Point Designer)。
对整数溢出进行饱和处理 — 选择发生整数溢出时的行为
off (默认) | on
操作 | 执行此操作的原因 | 溢出时会发生的情况 | 示例 |
---|---|---|---|
选中此复选框。 | 您的模型可能有溢出,并且您希望在生成的代码中具有显式饱和保护。 | 将溢出饱和处理为数据类型能够表示的最小值或最大值。 |
|
不选中此复选框。 | 您需要优化所生成代码的效率。 您希望避免过度地指定信号超出范围时的处理方式。有关详细信息,请参阅信号范围错误故障排除。 | 溢出会绕回到由数据类型表示的适当值。 |
|
如果选中此复选框,饱和将应用于模块中的每个内部操作,而不仅仅应用于输出或结果。通常,代码生成过程可以检测何时不会发生溢出。在这种情况下,代码生成器不会生成饱和代码。
编程用法
模块参数:DoSatur |
类型:字符向量 |
值:'off' | 'on' |
默认值:'off' |
扩展功能
C/C++ 代码生成
使用 Simulink® Coder™ 生成 C 代码和 C++ 代码。
HDL 代码生成
使用 HDL Coder™ 为 FPGA 和 ASIC 设计生成 VHDL、Verilog 和 SystemVerilog 代码。
HDL Coder™ 提供影响 HDL 实现和综合逻辑的额外配置选项。
此模块具有一个默认 HDL 架构。
ConstrainedOutputPipeline | 通过移动设计中现有延迟的方式来放置在输出端的寄存器的数量。分布式流水线不会重新分发这些寄存器。默认值为 |
InputPipeline | 要在生成的代码中插入的输入流水线阶段数。分布式流水线和受限输出流水线可以移动这些寄存器。默认值为 |
OutputPipeline | 要在生成的代码中插入的输出流水线阶段数。分布式流水线和受限输出流水线可以移动这些寄存器。默认值为 |
PLC 代码生成
使用 Simulink® PLC Coder™ 生成结构化文本代码。
定点转换
使用 Fixed-Point Designer™ 设计和仿真定点系统。
版本历史记录
在 R2006a 之前推出
另请参阅
MATLAB 命令
您点击的链接对应于以下 MATLAB 命令:
请在 MATLAB 命令行窗口中直接输入以执行命令。Web 浏览器不支持 MATLAB 命令。
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list:
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)