- 331 - 178 - c /做检查吗
- 331 - 178 - c /做检查吗
DO-178C/DO-331检查有助于为必须满足安全或关键任务需求的应用程序生成代码的设计和故障排除模型。
的签出万博1manbetx®检查™当您运行DO-178C/DO-331检查时。
这些检查是合格的DO资格套件适用于涉及DO-178标准及相关标准的项目。
另请参阅
万博1manbetx仿真软件检查(万博1manbetx模型)
万博1manbetxSimulink Coder检查(万博1manbetx仿真软件编码器)
航空无线电技术委员会浏览有关DO-178C机载系统和设备认证软件考虑事项及相关标准的资料
检查模型对象名称
检查身份证:mathworks.do178.hisl_0032
检查模型对象名称。
描述
此检查验证以下模型对象名称是否符合您自己的建模指南或高完整性建模指南。该检查还验证模型对象是否使用保留名称。
块
信号
参数
公交车
Stateflow®对象
保留的名字:
MATLAB®关键字
为C、c++和代码生成保留关键字。有关完整列表,请参见保留关键字(万博1manbetx仿真软件编码器)
int8
,uint8
int16
,uint16
int32
,uint32
正
,正
南
,南
每股收益
intmin
,intmax
最小正浮点数
,最大浮点数
π
∞
零
请注意
在某些情况下,Model Advisor会在该检查的多个子检查中报告一个问题。
可以使用万博1manbetx仿真软件检查.
输入参数
要指定检查标记的命名标准和模型对象名称,请使用model Advisor Configuration Editor。
打开模型配置编辑器并导航到检查模型对象名称.在输入参数窗格中,对于每个模型对象,选择以下选项之一:
MAAB
使用MAAB命名标准。当您选择MAAB
,检查使用正则表达式(^。{32岁}$)| ([^ a-zA-Z_0-9]) | (^ \ d )|(^ )|(__)|(^_)|(_$)
要验证名称:使用这些字符:
无所不包的
,无所不包的
,0 - 9
,下划线(_)
.不要以数字开头。
不要在字符串的开头或结尾使用下划线。
不要使用多个连续下划线。
使用小于32个字符的字符串。
自定义
使用您自己的命名标准。当您选择自定义
,你可以输入你自己的禁止的正则表达式<模型对象>
的名字.例如,如果您希望允许多个连续下划线,请输入(^。{32岁}$)| ([^ a-zA-Z_0-9]) | (^ \ d )|(^ )|(^_)|(_$)
没有一个
如果您不希望检查来验证模型对象名称
点击应用.
保存配置。当您使用此配置运行检查时,检查将使用您指定的输入参数。
结果及建议的行动
条件 | 建议的行动 |
---|---|
模型对象名称不符合输入参数中指定的命名标准。 | 更新模型对象名称以符合您自己的指导方针或高完整性指导方针。 |
能力与限制
不能在库模型上运行。
分析库链接块的内容。
分析所有被屏蔽子系统中的内容。
允许排除块和图表。
另请参阅
hisl_0032:模型对象名称(万博1manbetx模型)
MAAB指南,3.0版本:jc_0201:子系统名称的可用字符
MAAB指南,3.0版本:jc_0211:用于导入块和输出块的可用字符
MAAB指南,3.0版本:jc_0221:信号线名称的可用字符
MAAB指南,3.0版本:jc_0231:块名的可用字符
MAAB指南,3.0版本:na_0019:受限制的变量名
MAAB指南,3.0版本:na_0030: Simulink总线名称的可用字符万博1manbetx
检查与安全相关的优化设置
检查身份证:mathworks.do178.OptionSet
检查模型配置,查看可能影响安全的优化设置。
描述
此检查验证模型优化配置参数是否为为与安全相关的应用程序生成代码而优化设置。尽管对于大多数实时系统来说,高度优化的代码是需要的,但是一些优化可能会产生影响安全性的副作用。
可以使用万博1manbetx仿真软件检查.
结果及建议的行动
条件 | 建议的行动 |
---|---|
选择减块优化。这种优化可以从生成的代码中删除块,导致没有相关代码的需求和对可追溯性需求的违反。(参见DO-331, MB.6.3.4节。e -源代码可追踪到底层需求。) | 在“配置参数”对话框中,不勾选块减少(万博1manbetxSimulink)或设置参数BlockReduction 来从 . |
清除逻辑信号作为布尔数据的实现。对于与安全相关的代码,建议使用强数据类型。(参见DO-331, MB.6.3.1节。e -高级要求符合标准DO-331, MB.6.3.2节。e -低层需求符合标准和MISRA C:2012,规则10.1。) | 2 .在“配置参数”对话框中,选择将逻辑信号实现为布尔数据(vs. double)(万博1manbetxSimulink)或设置参数BooleanDataType 来在 . |
该模型包含依赖于运行时间或绝对时间的块,并配置为最小化分配给计时器的内存量。这样的配置限制了发生计时器溢出之前应用程序可以执行的天数。许多航空航天产品都是连续通电的s manbetx 845,计时器的使用寿命不应受到限制。(参见DO-331, MB.6.3.1节。g -算法是准确的而且DO-331, MB.6.3.2节。g -算法是准确的.) | 2 .在“配置参数”对话框中设置应用程序寿命(天)(万博1manbetxSimulink)上数学和数据类型或在“配置参数”对话框中设置寿命 来正 . |
选择抑制为设置为零的根级导入和输出端口生成初始化代码的优化。对于与安全相关的代码,应该显式初始化所有变量。(参见DO-331, MB.6.3.3节。b .软件架构一致。) | 如果你有嵌入式编码器®license和正在使用一个基于ert的系统目标文件,清除配置参数删除根级I/O零初始化(万博1manbetxSimulink Coder)或设置参数ZeroExternalMemoryAtStartup 来在 .或者,集成外部手写代码,显式地将所有I/O变量初始化为零。 |
选择抑制内部工作结构(如设置为零的块状态和块输出)的初始化代码生成的优化。对于与安全相关的代码,应该显式初始化每个变量。(参见DO-331, MB.6.3.3节。b .软件架构一致。) | 如果您有嵌入式Coder许可证,并且正在使用基于ert的系统目标文件,请清除“配置参数”删除内部数据零初始化(万博1manbetxSimulink Coder)或设置参数ZeroInternalMemoryAtStartup 来在 .或者,集成外部手写代码,显式地将每个状态变量初始化为零。 |
禁止生成由包装范围外值的浮点到整数转换产生的代码的优化被清除。必须避免安全相关代码的溢出。当此优化被关闭且您的模型包含禁用溢位饱和参数时,代码生成器将包装这些块的超出范围的值。这可能会导致不可访问和不可测试的代码。(参见DO-331, MB.6.3.1节。g -算法是准确的而且DO-331, MB.6.3.2节。g -算法是准确的.) | 如果你有万博1manbetx仿真软件编码器™license,选择“配置参数”从包装超出范围值的浮点到整数转换中删除代码(万博1manbetxSimulink Coder)或设置参数EfficientFloat2IntCast 来在 . |
选择抑制生成防止定点数据除零的代码的优化。您必须避免在与安全相关的代码中出现按零除的异常。(参见DO-331, MB.6.3.1节。g -算法是准确的,DO-331, MB.6.3.2节。g -算法是准确的,MISRA C:2012, Dir 4.1.) | 如果您有嵌入式Coder许可证,并且正在使用基于ert的系统目标文件,请清除“配置参数”删除防止除法运算异常的代码(万博1manbetxSimulink Coder)或设置参数NoFixptDivByZeroProtection 来从 . |
选择使用指定的信号和参数的最小和最大值来优化生成的代码的优化。这可能会导致没有可跟踪代码的需求。(参见DO-331 MB.6.3.4节。e -源代码可追踪到底层需求。) | 如果您有嵌入式Coder许可证,并且正在使用基于ert的系统目标文件,请清除“配置参数”使用指定的最小值和最大值进行优化(万博1manbetx仿真软件编码器)。 |
行动的结果
点击修改设置配置可能影响安全的模型优化设置。
子检查依赖于子检查的结果D在Model Advisor窗口的结果表中。
能力与限制
不能在库模型上运行。
不允许排除块或图表。
另请参阅
使用最小值和最大值优化生成的代码(嵌入式编码)
航空无线电技术委员会浏览有关DO-178C机载系统和设备认证软件考虑事项及相关标准的资料
hisl_0046: Configuration Parameters > Optimization > Block reduction
hisl_0054: Configuration Parameters > Optimization >删除防止除法算术异常的代码
检查安全相关的求解器设置的任务和采样时间
检查身份证:mathworks.do178.hisl_0042
检查模型配置中的求解器设置,这些设置适用于周期性采样时间约束,并可能影响安全性。
描述
此检查验证模型配置参数的设置是否最优,以确保模型在与安全相关的应用程序的特定优先级周期采样时间集上运行。
可以使用万博1manbetx仿真软件检查.
结果及建议的行动
条件 | 建议的行动 |
---|---|
配制参数自动处理数据传输的速率转换被选中。 | 清晰的自动处理数据传输的速率转换“配置参数”对话框或“设置参数”AutoInsertRateTranBlk 来了。 |
能力与限制
不能在库模型上运行。
不允许排除块或图表。
另请参阅
DO-331, MB.6.3.4节。e源代码可跟踪到底层需求
周期抽样时间限制(万博1manbetx模型)
检查求解器的安全相关诊断设置
检查身份证:mathworks.do178.SolverDiagnosticsSet
检查适用于求解器并可能影响安全性的诊断设置的模型配置。
描述
此检查验证与求解器相关的模型诊断配置参数是否为为与安全相关的应用程序生成代码而优化设置。
可以使用万博1manbetx仿真软件检查.
结果及建议的行动
条件 | 建议的行动 |
---|---|
将检测代数循环自动断裂的诊断设置为没有一个 或警告 .代数循环的打破会影响块执行顺序的可预测性。对于与安全相关的应用程序,模型开发人员需要知道这种中断何时发生。(参见DO-331, MB.6.3.3节。e -软件架构符合标准。) |
集代数循环(万博1manbetxSimulink)上诊断>解算器或在“配置参数”对话框中设置AlgebraicLoopMsg 来错误 .考虑明确地打破这种循环单位延迟块,以便执行顺序是可预测的。至少要验证循环自动中断的结果是否可以接受。 |
代数回路自动断裂的诊断模型块、原子子系统和启用的子系统设置为没有一个 或警告 .代数循环的打破会影响块执行顺序的可预测性。对于与安全相关的应用程序,模型开发人员需要知道这种中断何时发生。(参见DO-331, MB.6.3.3节。e -软件架构符合标准。) |
集最小化代数循环(万博1manbetxSimulink)上诊断>解算器或在“配置参数”对话框中设置ArtificialAlgebraicLoopMsg 来错误 .考虑明确地打破这种循环单位延迟块,以便执行顺序是可预测的。至少要验证循环自动中断的结果是否可以接受。 |
在块执行顺序中检测潜在冲突的诊断设置为没有一个 或警告 .对于与安全相关的应用程序,块执行顺序必须是可预测的。模型开发人员需要知道什么时候存在冲突的块优先级。(参见DO-331, MB.6.3.3节。b -软件架构一致。) |
集阻塞优先级违反(万博1manbetxSimulink)上诊断>解算器或在“配置参数”对话框中设置BlockPriorityViolationMsg 来错误 . |
用于检测模型是否包含未显式指定继承采样时间的s函数的诊断设置为没有一个 或警告 .这些设置可能导致不可预测的行为。模型开发人员需要知道模型中何时存在这样的s函数,以便对其进行修改以产生可预测的行为。(参见DO-331, MB.6.3.3节。e -软件架构符合标准。) |
集未指定的样本时间继承性(万博1manbetxSimulink)在“配置参数”对话框或设置参数UnknownTsInhSupMsg 来错误 . |
用于检测Simulink软件是否自动修改求解器、步长或仿真停止时间的诊断设置为万博1manbetx没有一个 或警告 .这样的更改会影响生成代码的操作。对于与安全相关的应用程序,最好检测此类更改,以便模型开发人员可以显式地将参数设置为已知值。(参见DO-331, MB.6.3.3节。e -软件架构符合标准。) |
集自动求解参数选择(万博1manbetxSimulink)上诊断>解算器或在“配置参数”对话框中设置SolverPrmCheckMsg 来错误 . |
将用于检测名称是否用于模型中的多个状态的诊断设置为没有一个 .模型中的状态名应该是唯一的。对于与安全相关的应用程序,最好检测名称冲突,以便模型开发人员能够修复它们。(参见DO-331, MB.6.3.3节。b -软件架构一致。) |
集州名冲突(万博1manbetxSimulink)上诊断>解算器或在“配置参数”对话框中设置StateNameClashWarn 来警告 . |
行动的结果
点击修改设置配置适用于求解器并可能影响安全性的模型诊断设置。
能力与限制
不能在库模型上运行。
不允许排除块或图表。
另请参阅
配置参数>诊断>求解器(万博1manbetx模型)
型号配置参数:诊断(万博1manbetx模型)
视图诊断(万博1manbetx模型)
航空无线电技术委员会浏览有关DO-178C机载系统和设备认证软件考虑事项及相关标准的资料
检查取样时间的安全相关诊断设置
检查身份证:mathworks.do178.SampleTimeDiagnosticsSet
检查模型配置,以确定适用于采样时间并可能影响安全性的诊断设置。
描述
此检查验证与采样时间相关的模型诊断配置参数是否为为与安全相关的应用程序生成代码而优化设置。
可以使用万博1manbetx仿真软件检查.
结果及建议的行动
条件 | 建议的行动 |
---|---|
用于检测源块时的诊断正弦波块,继承设置的样本时间(指定为-1)没有一个 或警告 .对源块使用继承的样本时间可能会导致源块及其连接块的不可预测的执行速率。对于与安全相关的应用程序,源块应该有明确的采样时间,以防止不正确的执行顺序。(参见DO-331, MB.6.3.3节。e -软件架构符合标准。) |
集源块指定-1采样时间(万博1manbetxSimulink)上诊断>样品时间或在“配置参数”对话框中设置InheritedTslnSrcMsg 来错误 . |
用于检测在多任务模式下运行的两个块之间的无效速率转换的诊断设置为没有一个 或警告 .这种速率转换不应该用于嵌入式实时代码。(参见DO-331, MB.6.3.3节。b -软件架构一致。) |
集多任务速率转换(万博1manbetxSimulink)上诊断>样品时间或在“配置参数”对话框中设置MultiTaskRateTransMsg 来错误 . |
用于检测可能导致数据损坏或不确定行为的子系统的诊断设置为没有一个 或警告 .此诊断检测有条件执行的多速率子系统(启用的、触发的或函数调用子系统)是否在多任务模式下运行。在允许抢占的实时环境中,这样的子系统会破坏数据并表现出不可预测的行为。(参见DO-331, MB.6.3.3节。b -软件架构一致。) |
集多任务有条件执行的子系统(万博1manbetxSimulink)上诊断>样品时间或在“配置参数”对话框中设置MultiTaskCondExecSysMsg 来错误 . |
检测样品时间一致性的诊断方法信号规范块和连接的目标块设置为没有一个 或警告 .过度指定的采样时间可能导致不可预测的执行速率。(参见DO-331, MB.6.3.3节。e -软件架构符合标准。) |
集强制信号规范块指定的采样时间(万博1manbetxSimulink)上诊断>样品时间或在“配置参数”对话框中设置SigSpecEnsureSampleTimeMsg 来错误 . |
行动的结果
点击修改设置配置适用于采样时间并可能影响安全性的模型诊断设置。
能力与限制
不能在库模型上运行。
不允许排除块或图表。
另请参阅
型号配置参数:样本时间诊断(万博1manbetx模型)
视图诊断(万博1manbetx模型)
航空无线电技术委员会浏览有关DO-178C机载系统和设备认证软件考虑事项及相关标准的资料
hisl_0044: Configuration Parameters > Diagnostics > Sample Time(万博1manbetx模型)
检查与信号数据相关的安全诊断设置
检查身份证:mathworks.do178.DataValiditySignalsDiagnosticsSet
检查适用于信号数据并可能影响安全性的诊断设置的模型配置。
描述
此检查验证与信号数据相关的模型诊断配置参数是否为为与安全相关的应用程序生成代码而优化设置。
可以使用万博1manbetx仿真软件检查.
结果及建议的行动
条件 | 建议的行动 |
---|---|
指定Simulink软件如何解析与。相关的信号的诊断万博1manbetx万博1manbetx仿真软件。信号 对象设置为显性和隐性 或显式和警告隐式 .对于与安全相关的应用程序,应该要求模型开发人员显式地定义信号分辨率。(参见DO-331, MB.6.3.3节。b -软件架构一致。) |
集信号的分辨率(万博1manbetxSimulink)上诊断>数据的有效性或在“配置参数”对话框中设置 或禁用的使用 |
的产品将在矩阵乘法模式中对奇异矩阵的一个输入求逆时检测奇异矩阵的块诊断设置为没有一个 或警告 .在执行生成的代码时,除以奇异矩阵可能会导致数值异常。这在与安全相关的系统中是不可接受的。(参见DO-331, MB.6.3.1节。g -算法很精确,DO-331, MB.6.3.2节。g -算法是准确的,MISRA C:2012, Dir 4.1.) |
集除以奇异矩阵(万博1manbetxSimulink)上诊断>数据的有效性或在“配置参数”对话框中设置CheckMatrixSingularityMsg 来错误 . |
将检测Simulink软件在数据类型传播过程中何时不能推断信号的数据类型的万博1manbetx诊断设置为没有一个 或警告 .对于与安全相关的应用程序,模型开发人员必须验证信号的数据类型。(参见DO-331, MB.6.3.1节。e -高级要求符合标准和DO-331, MB.6.3.2节。e -低层次需求符合标准。) |
集未指定的数据类型(万博1manbetxSimulink)上诊断>数据的有效性或在“配置参数”对话框中设置UnderSpecifiedDataTypeMsg 来错误 . |
检测信号的值是否过大而无法由信号数据类型表示的诊断设置为没有一个 或警告 .未检测到的数值溢出可能导致意外的应用程序行为。(参见DO-331, MB.6.3.1节。g -算法很精确,DO-331, MB.6.3.2节。g -算法是准确的,MISRA C:2012, Dir 4.1.) |
集包装溢出(万博1manbetxSimulink)上诊断>数据的有效性或在“配置参数”对话框中设置IntegerOverflowMsg 来错误 . |
检测信号的值是否过大而无法由信号数据类型表示,从而导致饱和的诊断设置为没有一个 或警告 .未检测到的数值溢出可能导致意外的应用程序行为。(参见DO-331, MB.6.3.1节。g -算法很精确,DO-331, MB.6.3.2节。g -算法是准确的,MISRA C:2012, Dir 4.1.) |
集溢位饱和(万博1manbetxSimulink)上诊断>数据的有效性或在“配置参数”对话框中设置IntegerSaturationMsg 来错误 . |
检测块输出信号值为的诊断正 或南 在当前时间步长设置为没有一个 或警告 .当这种类型的块输出信号条件发生时,会导致数值异常,而数值异常在与安全相关的应用程序中是不可接受的。(参见DO-331, MB.6.3.1节。g -算法很精确,DO-331, MB.6.3.2节。g -算法是准确的,MISRA C:2012, Dir 4.1.) |
集Inf或NaN块输出(万博1manbetxSimulink)上诊断>数据的有效性或在“配置参数”对话框中设置SignalInfNanChecking 来错误 . |
用于检测以。开头的Simulink对象名称的诊断万博1manbetxrt 设置为没有一个 或警告 .此诊断可防止与生成的信号名称发生冲突rt 前缀。(参见DO-331, MB.6.3.1节。e -高级要求符合标准和DO-331, MB.6.3.2节。e -低层次需求符合标准。) |
集标识符前缀“rt”(万博1manbetxSimulink)上诊断>数据的有效性或在“配置参数”对话框中设置RTPrefix 来错误 . |
检测模拟范围检查的诊断设置为没有一个 或警告 .该诊断在模拟过程中检测信号何时超过其指定的范围。万博1manbetxSimulink将块输出的信号值与指定的范围和块数据类型进行比较。(参见DO-331, MB.6.3.1节。g -算法很精确,DO-331, MB.6.3.2节。g -算法是准确的,MISRA C:2012, Dir 4.1.) |
集仿真范围检查(万博1manbetxSimulink)上诊断>数据的有效性或在“配置参数”对话框中设置SignalRangeChecking 来错误 . |
行动的结果
点击修改设置配置适用于信号数据并可能影响安全性的模型诊断设置。
能力与限制
不能在库模型上运行。
不允许排除块或图表。
另请参阅
模型配置参数:数据有效性诊断(万博1manbetx模型)
视图诊断(万博1manbetx模型)
航空无线电技术委员会浏览有关DO-178C机载系统和设备认证软件考虑事项及相关标准的资料
检查安全相关的诊断设置参数
检查身份证:mathworks.do178.DataValidityParamDiagnosticsSet
检查模型配置,以确定适用于可能影响安全性的参数的诊断设置。
描述
此检查验证与参数相关的模型诊断配置参数是否为为与安全相关的应用程序生成代码而进行了最优设置。
可以使用万博1manbetx仿真软件检查.
结果及建议的行动
条件 | 建议的行动 |
---|---|
将检测何时发生参数向下转换的诊断设置为没有一个 或警告 .向下转换到较低的信号范围可能导致参数的数值溢出,从而导致意外行为。 |
集检测沮丧(万博1manbetxSimulink)上诊断>数据的有效性或在“配置参数”对话框中设置ParameterDowncastMsg 来错误 . |
将检测何时发生参数下溢的诊断设置为没有一个 或警告 .当参数的数据类型没有足够的分辨率时,参数值为0,而不是指定的值。这可能导致生成的代码操作不正确。 |
集检测下溢(万博1manbetxSimulink)上诊断>数据的有效性或在“配置参数”对话框中设置ParameterUnderflowMsg 来错误 . |
将检测何时发生参数溢出的诊断设置为没有一个 或警告 .数值溢出会导致意外的应用程序行为,应该在与安全相关的应用程序中进行检测和修复。 |
集检测溢出(万博1manbetxSimulink)上诊断>数据的有效性或在“配置参数”对话框中设置ParameterOverflowMsg 来错误 . |
将检测参数何时失去精度的诊断设置为没有一个 或警告 .未检测到此类错误可能导致在生成的代码中将参数设置为不正确的值。 |
集检测精度损失(万博1manbetxSimulink)上诊断>数据的有效性或在“配置参数”对话框中设置ParameterPrecisionLossMsg 来错误 . |
将检测带有可调变量的表达式何时简化为其数值等效的诊断设置为没有一个 或警告 .这可能导致可调参数在生成的代码中不可调。 |
集检测可调性的损失(万博1manbetxSimulink)上诊断>数据的有效性或在“配置参数”对话框中设置ParameterTunabilityLossMsg 来错误 . |
行动的结果
点击修改设置配置应用于参数并可能影响安全性的模型诊断设置。
能力与限制
不能在库模型上运行。
不允许排除块或图表。
另请参阅
DO-331, MB.6.3.1节。g -算法很精确
DO-331, MB.6.3.2节。g -算法很精确模型配置参数:数据有效性诊断(万博1manbetx模型)
视图诊断(万博1manbetx模型)
航空无线电技术委员会浏览有关DO-178C、机载系统和设备认证软件考虑及相关标准的资料
hisil_0302:配置参数>诊断>数据有效性>参数(万博1manbetx模型)
检查用于调试的数据的安全相关诊断设置
检查身份证:mathworks.do178.DataValidityDebugDiagnosticsSet
检查模型配置,查看适用于用于调试的数据并可能影响安全性的诊断设置。
描述
此检查验证与调试相关的模型诊断配置参数是否为为与安全相关的应用程序生成代码而优化设置。
可以使用万博1manbetx仿真软件检查.
结果及建议的行动
条件 | 建议的行动 |
---|---|
启用模型验证块的诊断设置为使用本地设置 或让所有 .应该禁用这些块,因为它们是断言块,仅用于验证。模型开发人员不应该在嵌入式代码中使用断言。 |
2 .在“配置参数”对话框中设置模型验证块启用(万博1manbetxSimulink)或设置参数AssertControl 来禁用所有 . |
行动的结果
点击修改设置配置适用于用于调试的数据并可能影响安全性的模型诊断设置。
能力与限制
不能在库模型上运行。
不允许排除块或图表。
另请参阅
DO-331, MB.6.3.1节。e -符合标准的高级需求
DO-331, MB.6.3.2节。e -符合标准的底层需求
模型配置参数:数据有效性诊断(万博1manbetx模型)
航空无线电技术委员会浏览有关DO-178C机载系统和设备认证软件考虑事项及相关标准的资料
hisl_0305: Configuration Parameters > Diagnostics > Debugging(万博1manbetx模型)
检查数据存储内存的安全相关诊断设置
检查身份证:mathworks.do178.DataStoreMemoryDiagnosticsSet
检查模型配置,以了解应用于数据存储内存并可能影响安全性的诊断设置。
描述
此检查验证与数据存储内存相关的模型诊断配置参数是否为为与安全相关的应用程序生成代码而进行了最佳设置。
可以使用万博1manbetx仿真软件检查.
结果及建议的行动
条件 | 建议的行动 |
---|---|
检测模型是否试图从未在当前时间步中存储数据的数据存储中读取数据的诊断值被设置为启用所有错误 .在写入数据之前读取数据可能会导致使用陈旧的数据或未初始化的数据。 |
集先读后写检测(万博1manbetxSimulink)在“配置参数”对话框中进行设置ReadBeforeWriteMsg 来启用所有错误 . |
在先前以当前时间步骤从数据存储中读取数据之后,检测模型是否试图在数据存储中存储数据的诊断值被设置为启用所有错误 .在读取数据后写入数据可能导致使用过时或不正确的数据。 |
集检测读后写(万博1manbetxSimulink)在“配置参数”对话框中进行设置WriteAfterReadMsg 来启用所有错误 . |
检测模型是否在当前时间步中连续两次尝试在数据存储中存储数据的诊断值被设置为启用所有错误 .在一个时间步中写入两次数据会导致不可预测的数据。 |
集检测写后写(万博1manbetxSimulink)在“配置参数”对话框中进行设置WriteAfterWriteMsg 来启用所有错误 . |
一种诊断方法,用于检测一个任务何时从数据存储内存块,另一个任务将数据写入该块没有一个 或警告 .在多任务模式下,不同任务之间的数据读写可能导致数据损坏或不可预测。 |
集多任务数据存储(万博1manbetxSimulink)在“配置参数”对话框中进行设置MultiTaskDSMMsg 来错误 . |
行动的结果
点击修改设置配置应用于数据存储内存并可能影响安全性的模型诊断设置。
能力与限制
不能在库模型上运行。
不允许排除块或图表。
另请参阅
DO-331, MB.6.3.3节。b -软件架构一致
模型配置参数:数据有效性诊断(万博1manbetx模型)
航空无线电技术委员会浏览有关DO-178C机载系统和设备认证软件考虑事项及相关标准的资料
hisil_0013:数据存储块的使用情况(万博1manbetx模型)
检查与类型转换相关的安全诊断设置
检查身份证:mathworks.do178.TypeConversionDiagnosticsSet
检查模型配置,查看适用于类型转换并可能影响安全性的诊断设置。
描述
此检查验证与类型转换相关的模型诊断配置参数是否为为与安全相关的应用程序生成代码而进行了最优设置。
可以使用万博1manbetx仿真软件检查.
结果及建议的行动
条件 | 建议的行动 |
---|---|
检测到的诊断数据类型转换当类型转换设置为时,将阻塞没有一个 .Simu万博1manbetxlink软件可能会删除不必要的数据类型转换块生成的代码,这可能导致没有相应代码的需求。需要对这些块的删除进行标识,以便模型开发人员可以显式地删除不必要的块。 |
设置不必要的类型转换(万博1manbetxSimulink)配置参数UnnecessaryDatatypeConvMsg 参数警告 . |
在块输入处检测向量到矩阵或矩阵到向量转换的诊断设置为没有一个 或警告 .当Simulink万博1manbetx软件自动在向量和矩阵维度之间转换时,可能会发生意外操作或不可预知的行为。 |
设置向量/矩阵块输入转换(万博1manbetxSimulink)配置参数VectorMatrixConversionMsg 参数错误 |
检测32位整数值何时转换为浮点值的诊断设置为没有一个 .这种类型的转换可能会由于截断大整数值的最低有效位而导致精度损失。 |
设置32位整数到单精度浮点数转换(万博1manbetxSimulink)配置参数Int32ToFloatConvMsg 参数警告 . |
行动的结果
点击修改设置配置适用于类型转换并可能影响安全性的模型诊断设置。
能力与限制
不能在库模型上运行。
不允许排除块或图表。
另请参阅
DO-331, MB.6.3.1节。g -算法很精确
DO-331, MB.6.3.2节。g -算法很精确型号配置参数:类型转换诊断(万博1manbetx模型)
航空无线电技术委员会浏览有关DO-178C机载系统和设备认证软件考虑事项及相关标准的资料
>诊断>类型转换(万博1manbetx模型)
检查与安全相关的诊断设置以检查信号连通性
检查身份证:mathworks.do178.ConnectivitySignalsDiagnosticsSet
检查模型配置,查看适用于信号连通性并可能影响安全性的诊断设置。
描述
此检查验证与信号连接相关的模型诊断配置参数是否为为与安全相关的应用程序生成代码而优化设置。
可以使用万博1manbetx仿真软件检查.
结果及建议的行动
条件 | 建议的行动 |
---|---|
将检测具有相同源信号但不同标签的虚拟信号的诊断设置为没有一个 或警告 .这种诊断只适用于虚拟信号,对生成的代码没有影响。然而,信号标签不匹配会导致模型评审过程中的混乱。 |
集信号标签不匹配(万博1manbetxSimulink)上诊断>连接或在“配置参数”对话框中设置SignalLabelMismatchMsg 来错误 . |
检测模型何时包含带有未连接输入信号的块的诊断设置为没有一个 或警告 .必须检测到这一点,因为没有为未连接的块输入生成代码。 |
集未连接的块输入端口(万博1manbetxSimulink)上诊断>连接或在“配置参数”对话框中设置UnconnectedInputMsg 来错误 . |
检测模型何时包含带有未连接输出信号的块的诊断设置为没有一个 或警告 .必须检测到这一点,因为未连接的块输出信号可能导致死代码。 |
集未连接的块输出端口(万博1manbetxSimulink)上诊断>连接或在“配置参数”对话框中设置UnconnectedOutputMsg 来错误 . |
检测未连接信号线和未匹配信号线的诊断转到或从Blocks被设置为没有一个 或警告 .必须检测到此错误,因为没有为未连接的行生成代码。 |
集未连接的线(万博1manbetxSimulink)上诊断>连接或在“配置参数”对话框中设置UnconnectedLineMsg 来错误 . |
行动的结果
点击修改设置配置适用于信号连通性并可能影响安全性的模型诊断设置。
能力与限制
不能在库模型上运行。
不允许排除块或图表。
另请参阅
DO-331, MB.6.3.1节。e -符合标准的高级需求
DO-331, MB.6.3.2节。e -符合标准的底层需求
型号配置参数:连通性诊断(万博1manbetx模型)
信号基础知识(万博1manbetx模型)
航空无线电技术委员会浏览有关DO-178C机载系统和设备认证软件考虑事项及相关标准的资料
hisl_0306:配置参数>诊断>连接>信号(万博1manbetx模型)
检查与总线连接相关的安全诊断设置
检查身份证:mathworks.do178.ConnectivityBussesDiagnosticsSet
检查适用于总线连接并可能影响安全性的诊断设置的模型配置。
描述
此检查验证与总线连接相关的模型诊断配置参数是否为为与安全相关的应用程序生成代码而进行了最优设置。
可以使用万博1manbetx仿真软件检查.
结果及建议的行动
条件 | 建议的行动 |
---|---|
检测a是否存在的诊断模型块的根外港块连接到总线,但没有指定要设置的总线对象没有一个 或警告 .为了使总线信号跨越模型边界,必须将该信号定义为总线对象,以便与使用模型作为参考模型的更高级别模型兼容。 |
集未指定的总线对象位于根输出端口块(万博1manbetxSimulink)上诊断>连接或在“配置参数”对话框中设置RootOutportRequireBusObject 来错误 . |
检测总线元素名称是否与相应总线对象指定的名称匹配的诊断设置为没有一个 或警告 .这种诊断可以防止在具有总线能力的块中使用不兼容的总线,从而导致输出名称不一致。 |
集元素名称不匹配(万博1manbetxSimulink)上诊断>连接或在“配置参数”对话框中设置BusObjectLabelMismatch 来错误 . |
当某些块将信号视为mux/向量,而其他块将信号视为总线时,该诊断将被设置为没有一个 或警告 .当Simulink万博1manbetx软件自动将muxed信号转换为总线时,可能会发生意外操作或不可预知的行为。 |
集总线信号作为矢量处理(万博1manbetxSimulink)上诊断>连接窗格中的“配置参数”对话框中的 |
行动的结果
点击修改设置配置适用于总线连接并可能影响安全性的模型诊断设置。
能力与限制
不能在库模型上运行。
不允许排除块或图表。
另请参阅
DO-331, MB.6.3.3节。b -软件架构一致
型号配置参数:连通性诊断(万博1manbetx模型)
万博1manbetx仿真软件。公共汽车
在Simuli万博1manbetxnk参考文档中。航空无线电技术委员会浏览有关DO-178C机载系统和设备认证软件考虑事项及相关标准的资料
hisl_0307:配置参数>诊断>连接>总线(万博1manbetx模型)
检查应用于函数调用连通性的与安全相关的诊断设置
检查身份证:mathworks.do178.FcnCallDiagnosticsSet
检查模型配置,查看适用于函数调用连通性并可能影响安全性的诊断设置。
描述
此检查验证与函数调用连通性相关的模型诊断配置参数是否为为与安全相关的应用程序生成代码而进行了最优设置。
可以使用万博1manbetx仿真软件检查.
结果及建议的行动
条件 | 建议的行动 |
---|---|
检测函数调用子系统的错误使用的诊断设置为没有一个 或警告 .如果未检测到此条件,则可能生成不正确的代码。 |
集无效的函数调用连接(万博1manbetxSimulink)上诊断>连接或在“配置参数”对话框中设置InvalidFcnCallConnMsg 来错误 . |
指定Simulink软件在执行子系统时必须直接或间接计算函数调用子系统的输入的诊断设万博1manbetx置为使用本地设置 或禁用所有 .此诊断检测生成代码中函数调用子系统和子系统输入之间不可预测的数据耦合。 |
集上下文相关的输入(万博1manbetxSimulink)上诊断>连接或在“配置参数”对话框中设置FcnCallInpInsideContextMsg 来错误 . |
行动的结果
点击修改设置配置适用于函数调用连通性并可能影响安全性的模型诊断设置。
能力与限制
不能在库模型上运行。
不允许排除块或图表。
另请参阅
DO-331, MB.6.3.3节。b -软件架构一致
型号配置参数:连通性诊断(万博1manbetx模型)
航空无线电技术委员会浏览有关DO-178C机载系统和设备认证软件考虑事项及相关标准的资料
hisl_0308: Configuration Parameters > Diagnostics > Connectivity > Function calls(万博1manbetx模型)
检查与安全性相关的诊断设置以获得兼容性
检查身份证:mathworks.do178.CompatibilityDiagnosticsSet
检查模型配置,查看影响兼容性和可能影响安全性的诊断设置。
描述
此检查验证与兼容性相关的模型诊断配置参数是否为为与安全相关的应用程序生成代码而优化设置。
可以使用万博1manbetx仿真软件检查.
结果及建议的行动
条件 | 建议的行动 |
---|---|
检测块何时没有升级到使用当前版本的功能的诊断设置为没有一个 或警告 .为早期版本编写的s函数可能与当前版本不兼容,生成的代码可能操作不正确。 |
集需要升级s功能(万博1manbetxSimulink)上诊断>兼容性或在“配置参数”对话框中设置SFcnCompatibilityMsg 来错误 . |
行动的结果
点击修改设置配置影响兼容性并可能影响安全性的模型诊断设置。
能力与限制
不能在库模型上运行。
不允许排除块或图表。
另请参阅
DO-331, MB.6.3.3节。b -软件架构一致
视图诊断(万博1manbetx模型)
型号配置参数:兼容性诊断(万博1manbetx模型)
航空无线电技术委员会浏览有关DO-178C机载系统和设备认证软件考虑事项及相关标准的资料
hisl_0301:配置参数>诊断>兼容性(万博1manbetx模型)
检查与模型初始化相关的安全诊断设置
检查身份证:mathworks.do178.InitDiagnosticsSet
在模型配置中,检查影响模型初始化和可能影响安全性的诊断设置。
描述
此检查验证用于初始化的模型诊断配置参数是否最佳设置,以生成与安全相关的应用程序的代码。
可以使用万博1manbetx仿真软件检查.
结果及建议的行动
条件 | 建议的行动 |
---|---|
在“配置参数”对话框中,可以看到未指定的初始化检测(万博1manbetxSimulink)的诊断设置为 |
做以下任何一件事:
|
在“配置参数”对话框中,可以看到未指定的初始化检测(万博1manbetxSimulink)的诊断设置为 |
做以下任何一件事: |
在“配置参数”对话框中,可以看到未指定的初始化检测(万博1manbetxSimulink)的诊断设置为 |
做以下任何一件事:
|
行动的结果
若要配置影响模型初始化并可能影响安全性的诊断设置,请单击修改设置.
子检查依赖于子检查的结果D在Model Advisor窗口的结果表中。
能力与限制
不能在库模型上运行。
不允许排除块或图表。
另请参阅
DO-331, MB.6.3.3节。b -软件架构一致
视图诊断(万博1manbetx模型)
模型配置参数:数据有效性诊断(万博1manbetx模型)
航空无线电技术委员会浏览有关DO-178C机载系统和设备认证软件考虑事项及相关标准的资料
hisl_0304:配置参数>诊断>模型初始化(万博1manbetx模型)
检查与模型引用相关的安全诊断设置
检查身份证:mathworks.do178.MdlrefDiagnosticsSet
检查模型配置,查看适用于模型引用并可能影响安全性的诊断设置。
描述
此检查验证与模型引用相关的模型诊断配置参数是否为为与安全相关的应用程序生成代码而优化设置。
可以使用万博1manbetx仿真软件检查.
结果及建议的行动
条件 | 建议的行动 |
---|---|
对象的模型版本之间不匹配的诊断模型块,引用模型的当前版本设置为错误 或警告 .检测发生在加载和更新操作期间。当您从软件配置管理系统获得引用模型的最新版本,而不是在以前的模拟中使用的旧版本时,如果该诊断设置为错误 时,模拟终止。如果诊断设置为警告 时,系统将发出警告消息。要解决这个问题,用户必须重新保存被模拟的模型,这可能不是想要的操作。(参见DO-331, MB.6.3.3节。b -软件架构一致。) |
集模型块版本不匹配(万博1manbetxSimulink)上诊断>模型参考或在“配置参数”对话框中设置ModelReferenceVersionMismatchMessage 来没有一个 . |
在模型加载和更新期间检测端口和参数不匹配的诊断设置为没有一个 或警告 .如果未检测到,这种不匹配可能导致不正确的模拟结果,因为父模型和引用模型具有不同的接口。(参见DO-331, MB.6.3.3节。b -软件架构一致。) |
集端口和参数不匹配(万博1manbetxSimulink)上诊断>模型参考或在“配置参数”对话框中设置ModelReferenceIOMismatchMessage 来错误 . |
检测到当前模型根级别的无效内部连接的诊断轮廓尺寸而且外港Blocks被设置为没有一个 或警告 .当检测到这种情况时,Simulink软件可能会自动在模型中插入隐藏块来修复万博1manbetx这种情况。隐藏的块可能导致生成的代码没有可跟踪的需求。将诊断设置为错误 强制模型开发人员手动修复引用的模型。(参见DO-331, MB.6.3.3节。b -软件架构一致。) |
集无效的根导入/输出端口块连接(万博1manbetxSimulink)上诊断>模型参考或在“配置参数”对话框中设置ModelReferenceIOMessage 来错误 . |
检测是否到工作空间或范围块记录引用模型中的数据没有一个 或警告 .不支持数据日志记录万博1manbetx到工作空间而且范围引用模型中的块。(参见DO-331, MB.6.3.1节。d -高级要求是可验证的和DO-331, MB.6.3.2节。d -低层次需求是可验证的。) |
集不支万博1manbetx持的数据日志记录(万博1manbetxSimulink)上诊断>模型参考或在“配置参数”对话框中设置ModelReferenceDataLoggingMessage 来错误 .要记录数据,请删除块并记录引用的模型信号。有关更多信息,请参见测井参考模型信号(万博1manbetx模型)。 |
行动的结果
点击修改设置配置适用于模型引用并可能影响安全性的模型诊断设置。
能力与限制
不能在库模型上运行。
不允许排除块或图表。
另请参阅
视图诊断(万博1manbetx模型)
型号配置参数:型号参考诊断(万博1manbetx模型)
航空无线电技术委员会浏览有关DO-178C机载系统和设备认证软件考虑事项及相关标准的资料
测井参考模型信号(万博1manbetx模型)
>诊断>型号参考(万博1manbetx模型)
检查与安全相关的模型引用设置
检查身份证:mathworks.do178.MdlrefOptSet
检查模型配置,查看可能影响安全性的模型引用设置。
描述
此检查验证用于模型引用的模型配置参数是否为为与安全相关的应用程序生成代码而优化设置。
可以使用万博1manbetx仿真软件检查.
结果及建议的行动
条件 | 建议的行动 |
---|---|
被引用的模型被配置为每当您更新、模拟或为模型生成代码时,或者当Simulink软件检测到已知依赖项中的更改时,都会重新构建它的目标。万博1manbetx这些配置设置可能导致不必要的代码再生,导致只更改文件的日期,并在使用模型引用时减慢构建过程。(参见DO-331, MB.6.3.1节。b -高级要求准确一致,符合DO-331, MB.6.3.2节。b -底层需求是准确和一致的。) | 集重建(万博1manbetxSimulink)上模型参考或在“配置参数”对话框中设置UpdateModelReferenceTargets 来从来没有 或如果检测到任何更改 . |
将检测目标是否需要重新构建的诊断设置为没有一个 或警告如果目标需要重建 .对于与安全相关的应用程序,错误应该提醒模型开发人员父模型和引用模型不一致。此诊断参数仅在以下情况下可用重建设置为从来没有 .(参见DO-331, MB.6.3.1节。b -高级要求准确一致,符合DO-331, MB.6.3.2节。b -底层需求是准确和一致的。) |
集绝不重建诊断(万博1manbetxSimulink)上模型参考或在“配置参数”对话框中设置CheckModelReferenceTargetMessage 来错误 . |
关闭了按值传递标量根输入的功能。该功能应该关闭,因为标量值可能在时间步中发生变化,并导致不可预测的数据。(参见DO-331, MB.6.3.3节。b -软件架构一致。) | 集为Real-Time Workshop按值传递固定大小的标量根输入(万博1manbetxSimulink)上模型参考或在“配置参数”对话框中设置ModelReferencePassRootInputsByReference 来从 . |
该模型被配置为最小化代数循环的出现。的推荐设置与此配置不兼容单输出/更新功能用于嵌入式系统代码。(参见DO-331, MB.6.3.3节。b -软件架构一致。) | 2 .在“配置参数”对话框中设置最小化代数循环的出现(万博1manbetxSimulink)或设置参数ModelReferenceMinAlgLoopOccurrences 来从 . |
行动的结果
点击修改设置配置可能影响安全的模型引用设置。
子检查依赖于子检查的结果D在Model Advisor窗口的结果表中。
能力与限制
不能在库模型上运行。
不允许排除块或图表。
另请参阅
>模型引用(万博1manbetx模型)
分析模型依赖关系(万博1manbetx模型)
型号配置参数:型号引用(万博1manbetx模型)
航空无线电技术委员会浏览有关DO-178C机载系统和设备认证软件考虑事项及相关标准的资料
检查与安全相关的代码生成设置
检查身份证:mathworks.do178.CodeSet
检查可能影响安全性的代码生成设置的模型配置。
描述
此检查验证代码生成的模型配置参数是否为与安全相关的应用程序进行了最优设置。
可以使用万博1manbetx仿真软件检查.
结果及建议的行动
条件 | 建议的行动 |
---|---|
清除在生成的代码中包含注释的选项。注释在代码和模型之间提供了良好的可跟踪性。(参见DO-331, MB.6.3.4节。e -源代码可追踪到底层需求。) | 选择包括评论(万博1manbetxSimulink Coder)上的代码生成>评论或在“配置参数”对话框中设置GenerateComments 来在 . |
清除包含描述块代码的注释的选项。注释在代码和模型之间提供了良好的可跟踪性。(参见DO-331, MB.6.3.4节。e -源代码可追踪到底层需求。) | 选择万博1manbetxSimulink块注释(万博1manbetxSimulink Coder)上的代码生成>评论或在“配置参数”对话框中设置万博1manbetxSimulinkBlockComments 来在 . |
清除了包含描述从模型中删除的块的代码的注释的选项。注释在代码和模型之间提供了良好的可跟踪性。(参见DO-331, MB.6.3.4节。e -源代码可追踪到底层需求。) | 选择显示删除的块(万博1manbetxSimulink Coder)上的代码生成>评论或在“配置参数”对话框中设置ShowEliminatedStatement 来在 . |
中的模型参数结构声明中作为注释包含参数变量和源块的名称的选项 清除。注释在代码和模型之间提供了良好的可跟踪性。(参见DO-331, MB.6.3.4节。e -源代码可追踪到底层需求。) |
选择SimulinkGlobal存储类的详细注万博1manbetx释(万博1manbetxSimulink Coder)上的代码生成>评论或在“配置参数”对话框中设置ForceParamTrailComments 来在 . |
清除将分配给Simulink块的需求描述作为注释的选项。万博1manbetx注释在代码和模型之间提供了良好的可跟踪性。(参见DO-331, MB.6.3.4节。e -源代码可追踪到底层需求。) | 选择块注释中的需求(万博1manbetxSimulink Coder)上的代码生成>自定义注释或在“配置参数”对话框中设置ReqsInCode 来在 . |
选择生成非有限数据和操作的选项。万博1manbetx对非有限数的支持不适用于实时嵌入式系统。(参见DO-331, MB.6.3.1.c节——高级需求与目标计算机兼容;DO-331, MB.6.3.2.c节——低级需求与目标计算机兼容。) | 清晰的万博1manbetx支持:非有限数字(万博1manbetxSimulink Coder)上的代码生成>接口或在“配置参数”对话框中设置万博1manbetxSupportNonFinite 来从 . |
选择为绝对时间和运行时间生成和维护整数计数器的选项。万博1manbetx对绝对时间的支持不适用于与实时安全相关的系统。(参见DO-331, MB.6.3.1.c节——高级需求与目标计算机兼容;DO-331, MB.6.3.2.c节——低级需求与目标计算机兼容。) | 清晰的万博1manbetx支持:绝对时间(万博1manbetxSimulink Coder)上的代码生成>接口或在“配置参数”对话框中设置万博1manbetxSupportAbsoluteTime 来从 . |
选择为使用连续时间的块生成代码的选项。万博1manbetx对连续时间的支持不适用于与实时安全相关的系统。(参见DO-331, MB.6.3.1.c节——高级需求与目标计算机兼容;DO-331, MB.6.3.2.c节——低级需求与目标计算机兼容。) | 清晰的万博1manbetx支持:连续时间(万博1manbetxSimulink Coder)上的代码生成>接口或在“配置参数”对话框中设置万博1manbetxSupportContinuousTime 来从 . |
选择为非内联s函数生成代码的选项。这个选项需要非有限数字的支持,这对于实时安万博1manbetx全相关的系统是不合适的。(参见DO-331, MB.6.3.1.c节——高级需求与目标计算机兼容;DO-331, MB.6.3.2.c节——低级需求与目标计算机兼容。) | 清晰的万博1manbetx支持:非内联s函数(万博1manbetxSimulink Coder)在“配置参数”对话框中进行设置万博1manbetxSupportNonInlinedSFcns 来从 . |
选择生成与pre-R2012a GRT目标的主程序模块兼容的模型函数调用的选项。此选项不适用于与实时安全相关的系统。(参见DO-331, MB.6.3.1.c节——高级需求与目标计算机兼容;DO-331, MB.6.3.2.c节——低级需求与目标计算机兼容。) | 清晰的经典的呼叫呼叫接口(万博1manbetxSimulink Coder)上的代码生成>接口或在“配置参数”对话框中设置GRTInterface 来从 . |
的选项来生成 功能被清除。对输出和更新函数的单一调用简化了与实时操作系统(RTOS)的接口,并简化了对生成代码的验证。(参见DO-331, MB.6.3.1.c节——高级需求与目标计算机兼容;DO-331, MB.6.3.2.c节——低级需求与目标计算机兼容。) |
选择单输出/更新功能(万博1manbetxSimulink Coder)上的代码生成>接口或在“配置参数”对话框中设置CombineOutputUpdateFcns 来在 . |
的选项来生成 函数已选中。该功能释放动态内存,不适用于实时安全相关系统。(参见DO-331, MB.6.3.1.c节——高级需求与目标计算机兼容;DO-331, MB.6.3.2.c节——低级需求与目标计算机兼容。) |
清晰的终止函数(万博1manbetxSimulink Coder)上的代码生成或在“配置参数”对话框中设置IncludeMdlTerminateFcn 来从 . |
清除记录或监视错误状态的选项。如果不选择此选项,则万博1manbetx仿真软件编码器产品生成测试可能无法访问的额外代码。(参见DO-331, MB.6.3.1.c节——高级需求与目标计算机兼容;DO-331, MB.6.3.2.c节——低级需求与目标计算机兼容。) | 选择删除实时模型数据结构中的错误状态字段(万博1manbetxSimulink Coder)上的代码生成>接口或在“配置参数”对话框中设置SuppressErrorStatus 来在 . |
选择mat文件日志记录。该选项为将测试点记录到mat文件添加了额外的代码,嵌入式目标不支持这一点。万博1manbetx只在测试工具中使用此选项。(参见DO-331, MB.6.3.1.c节——高级需求与目标计算机兼容;DO-331, MB.6.3.2.c节——低级需求与目标计算机兼容。) | 清晰的MAT-file日志(万博1manbetxSimulink Coder)在“配置参数”对话框中进行设置MatFileLogging 来从 . |
指定圆括号使用的样式的选项被设置为最小(依赖于C/ c++操作符优先级) 或标称(优化可读性) .对于与安全相关的应用程序,用圆括号显式指定优先级。(参见DO-331, MB.6.3.1.c节——高级需求与目标计算机兼容,DO-331, MB.6.3.2.c节——低级需求与目标计算机兼容,MISRA C:2012,规则12.1。) |
设置参数ParenthesesLevel 来最大值(用括号指定优先级) . |
清除指定是否保留操作数顺序的选项。这个选项增加了生成代码的可跟踪性。(参见DO-331, MB.6.3.4节。e -源代码可追踪到底层需求。) | 设置参数PreserveExpressionOrder 来在 . |
中指定是否保留空主条件表达式的选项如果 “Statements”被清除。这个选项增加了生成代码的可跟踪性。(参见DO-331, MB.6.3.4节。e -源代码可追踪到底层需求。) |
设置参数PreserveIfCondition 来在 . |
为生成name mangling字符串指定的最小字符数小于4。您可以使用此选项将参数和信号名称在代码生成过程中随模型更改而更改的可能性降至最低。使用此选项有助于最小化文件版本之间的代码差异,减少执行代码审查的工作量。(参见DO-331, MB.6.3.4节。e -源代码可追踪到底层需求。) | 集最小轧包长度(万博1manbetxSimulink Coder)上的代码生成>符号“配置参数”对话框中的MangleLength 到4或更大的值。 |
行动的结果
点击修改设置配置可能影响安全性的模型代码生成设置。
子检查依赖于子检查的结果D在Model Advisor窗口的结果表中。
能力与限制
不能在库模型上运行。
不允许排除块或图表。
另请参阅
hisl_0038:配置参数>代码生成>注释(万博1manbetx模型)
hisl_0039:配置参数>代码生成>接口(万博1manbetx模型)
hisl_0047:配置参数>代码生成>代码样式(万博1manbetx模型)
hisl_0049:配置参数>代码生成>符号(万博1manbetx模型)
模型配置参数:代码生成注释(万博1manbetx仿真软件编码器)
模型配置参数:代码生成注释(万博1manbetx仿真软件编码器)
型号配置参数:代码生成符号(万博1manbetx仿真软件编码器)
模型配置参数:代码生成界面(万博1manbetx仿真软件编码器)
模型配置参数:代码生成代码样式(嵌入式编码)
航空无线电技术委员会浏览有关DO-178C机载系统和设备认证软件考虑事项及相关标准的资料
检查“环路展开阈值”的安全相关优化设置
检查身份证:mathworks.do178.hisl_0051
检查模型配置中适用于循环展开阈值并可能影响安全的优化设置。
描述
此检查验证模型优化配置参数与a所对应的最小信号或参数宽度为
为为与安全相关的应用程序生成代码而设置的最优循环。
可以使用万博1manbetx仿真软件检查.
结果及建议的行动
条件 | 建议的行动 |
---|---|
优化设置以指定最小信号或参数宽度 |
2 .在“配置参数”对话框中设置环路展开阈值或者设置参数 |
行动的结果
点击修改设置配置适用于求解器并可能影响安全性的模型诊断设置。
能力与限制
不能在库模型上运行。
不允许排除块或图表。
分析没有工作区和对话框的屏蔽子系统中的内容。
另请参阅
DO-331 MB.6.3.4节。e -源代码可追踪到底层需求。
MISRA C:2012,规则6.1
hisl_0051:配置参数>代码生成>优化>环路展开门限(万博1manbetx模型)
检查与安全相关的诊断设置以进行保存
检查身份证:mathworks.do178.SavingDiagnosticsSet
检查适用于保存模型文件的诊断设置的模型配置
描述
此检查验证模型配置参数是否为保存与安全相关的应用程序的模型而优化设置。
可以使用万博1manbetx仿真软件检查.
结果及建议的行动
条件 | 建议的行动 |
---|---|
在保存模型之前检测模型是否包含禁用的库链接的诊断设置为没有一个 或警告 .如果未检测到此条件,则可能生成不正确的代码。 |
集框图包含禁用的库链接(万博1manbetxSimulink)在“配置参数”对话框或设置参数SaveWithDisabledLinkMsg 来错误 . |
在保存模型之前,检测模型是否包含使用掩码之外的参数的库链接的诊断设置为没有一个 或警告 .如果未检测到此条件,则可能生成不正确的代码。 |
集框图包含参数化的库链接(万博1manbetxSimulink)在“配置参数”对话框或设置参数SaveWithParameterizedLinkMsg 来错误 . |
行动的结果
点击修改设置配置应用于保存模型文件的模型诊断设置。
能力与限制
不能在库模型上运行。
不允许排除块或图表。
另请参阅
DO-331, MB.6.3.3节。b -软件架构一致
hisl_0036: Configuration Parameters > Diagnostics > Saving(万博1manbetx模型)
识别禁用的库链接(万博1manbetx模型)
保存一个模型(万博1manbetx模型)
模型参数(万博1manbetx模型)
检查合并块的安全相关诊断设置
检查身份证:mathworks.do178.hisl_0303
检查应用于合并块的诊断设置的模型配置
描述
此检查验证模型配置参数是否为与安全相关的应用程序的Merge块设置为最优。
可以使用万博1manbetx仿真软件检查.
结果及建议的行动
条件 | 建议的行动 |
---|---|
检测模型是否包含Merge块,且多个驱动块同时执行step的诊断设置为没有一个 或警告 和在“配置参数”对话框中未指定的初始化检测(万博1manbetxSimulink)的诊断设置为经典 . |
2 .在“配置参数”对话框中设置检测多个驱动块在同一时间执行步骤(万博1manbetxSimulink)或设置参数 |
行动的结果
点击修改设置配置适用于求解器并可能影响安全性的模型诊断设置。
能力与限制
不能在库模型上运行。
不允许排除块或图表。
另请参阅
DO-331 MB.6.3.2 (b)准确性和一致性
>诊断>合并块(万博1manbetx模型)
检测多个驱动块在同一时间执行步骤(万博1manbetx模型)
模型配置参数:数据有效性诊断(万博1manbetx模型)
检查状态流的安全相关诊断设置
检查身份证:mathworks.do178.hisl_0311
检查状态流的安全相关诊断设置
描述
此检查验证模型配置参数是否为与安全相关的应用程序的Stateflow设置为最优。
可以使用万博1manbetx仿真软件检查.
结果及建议的行动
条件 | 建议的行动 |
---|---|
检测图表配置是否在模拟过程中导致不必要的回溯的诊断设置为没有一个 或警告 . |
2 .在“配置参数”对话框中设置意想不到的回溯(万博1manbetxSimulink)或设置参数 |
检测图表配置是否具有连接到图表输入端口的块,这些块在初始化期间不初始化其输出的诊断设置为没有一个 或警告 . |
2 .在“配置参数”对话框中设置图表初始化时输入数据访问无效(万博1manbetxSimulink)或设置参数 |
检测图表是否具有无条件默认转换到状态或连接的诊断设置为没有一个 或警告 . |
2 .在“配置参数”对话框中设置没有无条件的默认转换(万博1manbetxSimulink)或设置参数 |
检测图表是否包含在父状态或结之外循环的转换的诊断设置为没有一个 或警告 . |
2 .在“配置参数”对话框中设置母体外的过渡(万博1manbetxSimulink)或设置参数 |
检测是否在有效执行路径上构造图表的诊断设置为没有一个 或警告 . |
2 .在“配置参数”对话框中设置执行路径不可达(万博1manbetxSimulink)或设置参数 |
行动的结果
点击修改设置配置适用于求解器并可能影响安全性的模型诊断设置。
能力与限制
不能在库模型上运行。
不允许排除块或图表。
另请参阅
DO-331, MB.6.3.1节。b“高水平的需求是准确和一致的”
DO-331, MB.6.3.1节。e“高水平要求符合标准”
DO-331, MB.6.3.1节。g“算法是准确的”
DO-331, MB.6.3.2节。b“底层需求是准确和一致的”
DO-331, MB.6.3.2节。d“低层次需求是可验证的”
DO-331, MB.6.3.2节。e“低水平要求符合标准”
DO-331, MB.6.3.2节。g“算法是准确的”hisl_0311:配置参数>诊断>状态流(万博1manbetx模型)
型号配置参数:状态流诊断(万博1manbetx模型)
检查没有链接到需求的模型元素
检查身份证:mathworks.do178.RequirementInfo
检查Simulink模型元素万博1manbetx是否链接到需求文档。
描述
此检查验证模型对象是否链接到包含可追溯性工程需求的文档。
可以使用万博1manbetx仿真软件检查.
这张支票需要万博1manbetx仿真软件需求™许可证。
结果及建议的行动
条件 | 建议的行动 |
---|---|
块不链接到需求文档。 | 链接到需求文档。看到. |
能力与限制
在库模型上运行。
不分析库链接块的内容。
分析没有工作区和对话框的屏蔽子系统中的内容。
允许排除块和图表。
不允许排除状态流元素。
提示
从您想要检查的顶级模型或子系统运行此检查。
另请参阅
DO-331, MB.6.3.1节。f -高级需求追溯到系统需求
DO-331, MB.6.3.2节。f -低级需求追溯到高级需求
Simulink中的需求可追溯性万博1manbetx(万博1manbetx模型)
需求可追溯性和一致性(万博1manbetx仿真软件需求)
在Simulink模型中查找模型元素万博1manbetx(万博1manbetx模型)
检查状态流图的状态机类型
检查身份证:mathworks.do178.hisf_0001
确定状态流图是全是Mealy图还是全是Moore图。
描述
将所有状态流图的状态机类型与在输入参数中指定的类型进行比较。
可以使用万博1manbetx仿真软件检查.
此检查需要Stateflow许可证。
输入参数
- Mealy或Moore
-
检查图表是否使用相同的状态机类型,并且都是Mealy或Moore图表。
- 粉状的
-
检查所有图表是否都是Mealy图表。
- 摩尔
-
检查是否所有图表都是摩尔图表。
结果及建议的行动
条件 | 建议的行动 |
---|---|
输入参数设置为
|
对于每个图表,在“图表属性”对话框中指定状态机类型要么粉状的 或摩尔 .对模型中的所有图表使用相同的状态机类型。 |
输入参数设置为粉状的 模型中的图表使用其他状态机类型。 |
对于每个图表,在“图表属性”对话框中指定状态机类型来粉状的 . |
输入参数设置为摩尔 模型中的图表使用其他状态机类型。 |
对于每个图表,在“图表属性”对话框中指定状态机类型来摩尔 . |
能力与限制
在库模型上运行。
不分析库链接块的内容。
分析所有被屏蔽子系统中的内容。
允许排除块和图表。
另请参阅
DO-331, MB.6.3.1节。b -高级别需求是准确和一致的
DO-331, MB.6.3.1节。e -符合标准的高级需求
DO-331, MB.6.3.2节。b -底层需求是准确和一致的
DO-331, MB.6.3.2节。e -符合标准的底层需求
DO-331, MB.6.3.3节。b -软件架构一致
DO-331, MB.6.3.3节。e -软件架构符合标准
hisf_0001: Mealy和Moore语义(万博1manbetx模型)
Mealy和Moore机器概述(Stateflow)
表属性(万博1manbetx模型)
架构图(万博1manbetx模型)
查看状态流图,了解状态和转换的顺序
检查身份证:mathworks.do178.hisf_0002
确定具有的状态流图用户指定的状态/转换执行顺序清除。
描述
确定具有的状态流图用户指定的状态/转换执行顺序已清除,因此不使用并行状态和转换的显式排序。
可以使用万博1manbetx仿真软件检查.
此检查需要Stateflow许可证。
结果及建议的行动
条件 | 建议的行动 |
---|---|
状态流图有用户指定的状态/转换执行顺序清除。 | 对于指定的图表,在“图表属性”对话框中选择用户指定的状态/转换执行顺序. 要显示转换测试顺序,请选择显示>图表>过渡执行令. |
能力与限制
在库模型上运行。
不分析库链接块的内容。
分析所有被屏蔽子系统中的内容。
允许排除块和图表。
行动的结果
点击修改选择用户指定的状态/转换执行顺序查看指定的图表。
另请参阅
检查状态流调试选项
检查身份证:mathworks.do178.hisf_0011
检查Stateflow调试设置。
描述
验证以下调试设置。
包装溢出
仿真范围检查
检测周期
可以使用万博1manbetx仿真软件检查.
此检查需要Stateflow许可证。
结果及建议的行动
能力与限制
不能在库模型上运行。
不分析库链接块的内容。
允许排除块和图表。
行动的结果
点击修改选择指定的调试选项。
另请参阅
DO-331, MB.6.3.1节。b -高级别需求是准确和一致的
DO-331, MB.6.3.1节。e -符合标准的高级需求
DO-331, MB.6.3.2节。b -底层需求是准确和一致的
DO-331, MB.6.3.2节。e -符合标准的底层需求
hisf_0011:状态流调试设置(万博1manbetx模型)
表属性(万博1manbetx模型)
架构图(万博1manbetx模型)
检查状态流图,查找跨越平行状态边界的转换路径
检查身份证:mathworks.do178.hisf_0013
在状态流图中确定跨越并行状态边界的转换路径。
描述
在状态流图中确定跨越并行状态边界的转换路径。使用这样的转换路径会创建包含转换执行的图,这很难理解。
可以使用万博1manbetx仿真软件检查.
结果及建议的行动
条件 | 建议的行动 |
---|---|
状态流图具有跨越平行状态边界的转换路径。 | 修改状态流图,使转换不会跨越平行的状态边界。更多信息请参见,定义状态间转换的设计注意事项(Stateflow)。 |
能力与限制
不能在库模型上运行。
不分析库链接块的内容。
允许排除块和图表。
分析所有被屏蔽子系统中的内容。
另请参阅
检查状态流图以获得强数据类型
检查身份证:mathworks.do178.hisf_0015
在Stateflow对象中标识具有不同数据类型的表达式中的变量和参数。
描述
为了方便强数据类型,该检查在Stateflow状态和转换中标识具有不同数据类型的表达式中的变量和参数。
可以使用万博1manbetx仿真软件检查.
此检查需要Stateflow许可证。
结果及建议的行动
条件 | 建议的行动 |
---|---|
Stateflow对象在具有不同数据类型的表达式中具有变量和参数。 | 显式地将表达式中的变量和参数转换为相同的数据类型。更多信息请参见, |
能力与限制
不能在库模型上运行。
不分析库链接块的内容。
允许排除块和图表。
分析所有被屏蔽子系统中的内容。
不分析状态流对象中表达式中的字面量类型。显式地将字面量类型转换为预期的数据类型。
不标记带有true和false关键字的表达式。有关更多信息,请参见为代码生成保留关键字(嵌入式编码)。
另请参阅
DO-331, MB.6.3.1节。b高级别需求是准确和一致的
DO-331, MB.6.3.1节。e高级别需求符合标准
DO-331, MB.6.3.1节。g算法是准确的
DO-331, MB.6.3.2节。b底层需求是准确和一致的
DO-331, MB.6.3.2节。e底层需求符合标准
DO-331, MB.6.3.2节。g算法是准确的
hisf_0015:强数据类型(在表达式中转换变量和参数)(万博1manbetx模型)
表属性(万博1manbetx模型)
架构图(万博1manbetx模型)
在状态流中使用数据类型(Stateflow)
检查查找表块的使用情况
检查身份证:mathworks.do178.LUTRangeCheckCode
检查查找表块是否不生成超出范围的检查代码。
描述
此检查验证以下块是否生成了代码,以防止落入有效断点值范围之外的输入:
这个检查也验证了这一点使用预查找的插值块生成代码以防止落入有效索引值范围之外的输入。
可以使用万博1manbetx仿真软件检查.
结果及建议的行动
条件 | 建议的行动 |
---|---|
查找表块不会生成超出范围的检查代码。 |
更改块对话框上的设置,以便生成超出范围的检查代码。
|
能力与限制
在库模型上运行。
不分析库链接块的内容。
分析所有被屏蔽子系统中的内容。
允许排除块和图表。
行动的结果
点击修改验证查找表块是否设置为生成超出范围的检查代码。
另请参阅
DO-331, MB.6.3.1节。g和MB.6.3.2。g -算法很精确
hisl_0033:查阅表块的使用(万博1manbetx模型)
检查MATLAB代码分析器消息
检查身份证:mathworks.do178.himl_0004
检查MATLAB函数% # codegen
指令、MATLAB代码分析器消息和验证消息id。
描述
验证% # codegen
指令、MATLAB代码分析器消息和对齐消息id:
MATLAB函数块中的MATLAB代码
在状态流图中定义的MATLAB函数
叫做MATLAB函数
可以使用万博1manbetx仿真软件检查.
结果及建议的行动
条件 | 建议的行动 |
---|---|
对于MATLAB函数块中的MATLAB代码,请选择以下任何一种:
|
|
对于在状态流图中定义的MATLAB函数,可以使用以下任一方法:
|
|
对于所谓的MATLAB函数:
|
|
能力与限制
在库模型上运行。
不分析库链接块的内容。
分析所有被屏蔽子系统中的内容。
不允许排除块或图表。
另请参阅
DO-331, MB.6.3.1节。b和MB.6.3.2。b -准确性和一致性
检查代码中的错误和警告(MATLAB)
himl_0004: MATLAB代码分析器的代码生成建议(万博1manbetx模型)
检查MATLAB代码中的全局变量
检查身份证:mathworks.do178.himl_0005
在MATLAB代码中检查全局变量。
描述
验证全局变量没有在下列任何一个中使用:
MATLAB函数块中的MATLAB代码
在状态流图中定义的MATLAB函数
叫做MATLAB函数
可以使用万博1manbetx仿真软件检查.
结果及建议的行动
条件 | 建议的行动 |
---|---|
全局变量用于以下一个或多个:
|
用信号线、函数参数或持久数据替换全局变量。 |
能力与限制
在库模型上运行。
不分析库链接块的内容。
分析所有被屏蔽子系统中的内容。
不允许排除块或图表。
另请参阅
DO-331, MB.6.3.3节。b“一致性”
himl_0005:在MATLAB函数中全局变量的使用(万博1manbetx模型)
检查不一致的向量索引方法
检查身份证:mathworks.do178.hisl_0021
识别索引方法不一致的块。
描述
使用不一致的块索引方法会导致建模错误。您应该为所有块使用一致的向量索引方法。此检查标识索引方法不一致的块。索引方法是基于零、基于一或用户指定的。
可以使用万博1manbetx仿真软件检查.
此检查需要Stateflow许可证。
结果及建议的行动
条件 | 建议的行动 |
---|---|
模型或子系统包含索引方法不一致的块。索引方法是基于零、基于一或用户指定的。 |
修改模型以使用单一的一致索引方法。 |
能力与限制
在库模型上运行。
不分析库链接块的内容。
分析没有工作区和对话框的屏蔽子系统中的内容。
允许排除块和图表。
另请参阅
DO-331, MB.6.3.2节。b -底层需求是准确和一致的
hisl_0021:一致向量索引方法(万博1manbetx模型)
检查带有继承属性的MATLAB函数接口
检查身份证:mathworks.do178.himl_0002
识别具有继承复杂性或数据类型属性的输入、输出或参数的MATLAB函数。
描述
该检查标识具有继承复杂性或数据类型属性的MATLAB函数。结果表提供了未通过检查的MATLAB函数的链接,以及触发警告的条件。
可以使用万博1manbetx仿真软件检查.
结果及建议的行动
条件 | 建议的行动 |
---|---|
MATLAB函数具有继承的接口。 | 显式定义输入、输出和结果中确定的MATLAB函数的参数的复杂度和数据类型属性。 如果适用,使用MATLAB函数块编辑器(万博1manbetxSimulink),在端口和数据管理器(万博1manbetx模型):
|
能力与限制
在库模型上运行。
不分析库链接块的内容。
分析所有被屏蔽子系统中的内容。
允许排除块和图表。
另请参阅
DO-331, MB.6.3.2节。b -底层需求是准确和一致的
himl_0002: MATLAB函数边界上的强数据类型化(万博1manbetx模型)
检查MATLAB函数指标
检查身份证:mathworks.do178.himl_0003
显示MATLAB函数的复杂度和代码度量。报告指标违规情况。
描述
这个检查为MATLAB函数提供了复杂度和代码度量。检查还报告了违反计量标准的情况。结果表提供了违反复杂度输入参数的MATLAB函数的链接。
可以使用万博1manbetx仿真软件检查.
输入参数
- 每个函数的最大有效代码行数
-
为每个函数提供最大的有效代码行数。有效行不包括空行、注释行或带有函数的行
结束
关键字。
- 评论的最小密度
-
提供最少的注释密度。密度是注释行与代码总行数的比率。
- 每个函数的最大圈复杂度
-
为每个函数提供最大的圈复杂度。圈复杂度是通过源代码的线性无关路径的数量。
结果及建议的行动
条件 | 建议的行动 |
---|---|
MATLAB函数违反了输入参数的复杂性。 | 对于MATLAB函数:
|
能力与限制
在库模型上运行。
不分析库链接块的内容。
分析所有被屏蔽子系统中的内容。
允许排除块和图表。
另请参阅
DO-331, MB.6.3.1节。e -符合标准的高级需求
DO-331, MB.6.3.2节。e -符合标准的底层需求
himl_0003: MATLAB函数复杂度的限制(万博1manbetx模型)
检查不推荐用于C/ c++生产代码部署的块
检查身份证:mathworks.do178.PCG万博1manbetxSupport
确定代码生成不支持或不推荐用于C/ c+万博1manbetx+生产代码部署的块。
描述
该检查部分地标识不推荐用于C/ c++生产代码生成的模型构造万博1manbetxSimulink块支持万博1manbetx(万博1manbetxSimulink Coder)表万博1manbetx仿真软件编码器和嵌入式编码器。如果您正在使用带有支持说明的块进行代码生成,请查看信息并遵万博1manbetx循给出的建议。
可以使用万博1manbetx仿真软件检查和嵌入式编码器®.
结果及建议的行动
条件 | 建议的行动 |
---|---|
模型或子系统包含不应用于生产代码部署的块。 | 考虑替换结果中列出的块。单击可疑项列表中的一个元素以定位条件。 |
能力与限制
在库模型上运行。
分析库链接块的内容。
分析所有被屏蔽子系统中的内容。
允许排除块和图表。
另请参阅
DO-331, MB.6.3.2节。b -底层需求是准确和一致的
hisl_0020:块不推荐MISRA C:2012合规(万博1manbetx模型)
C代码生成支持的块和产s manbetx 845品万博1manbetx(万博1manbetx仿真软件编码器)
检查激活“生成预处理器条件”的变量块
检查身份证:mathworks.do178.VariantBlock
检查变量块参数,以确定可能导致代码无法跟踪到需求的设置。
描述
此检查验证代码生成的变量块参数是否设置为跟踪需求。
可以使用万博1manbetx仿真软件检查.
结果及建议的行动
条件 | 建议的行动 |
---|---|
在模型中的一个或多个变量块中选择生成预处理器条件的选项。 | 为了简化代码到需求的跟踪,考虑清除在变量块中生成预处理器条件的选项。 |
能力与限制
不能在库模型上运行。
分析库链接块的内容。
分析所有被屏蔽子系统中的内容。
不允许排除块或图表。
另请参阅
DO-331, MB.6.3.2节。b“底层需求是准确和一致的”
hisl_0023:模型和子系统变体的验证(万博1manbetx模型)
查看状态流图,查找唯一定义的数据对象
检查身份证:mathworks.do178.hisl_0061
识别包含非唯一定义的数据对象的状态流图。
描述
此检查在模型中搜索状态流图中没有唯一定义的本地数据。
可以使用万博1manbetx仿真软件检查.
此检查需要Stateflow许可证。
结果及建议的行动
条件 | 建议的行动 |
---|---|
状态流图包含在两个或多个作用域中定义的数据对象标识符。 | 对于识别的图表,请执行以下其中一项操作:
|
能力与限制
在库模型上运行。
不分析库链接块的内容。
分析所有被屏蔽子系统中的内容。
不允许排除块或图表。
另请参阅
DO-331, MB.6.3.2节。b -底层需求是准确和一致的
hisl_0061:唯一标识符(万博1manbetx模型)
检查Math Operations块的使用情况
检查身份证:mathworks.do178.MathOperationsBlocksUsage
确定用法数学操作可能影响安全的障碍物。
描述
该检查检查以下块的使用情况:
腹肌
获得
数学函数
自然对数
普通(以10为基数)对数
分割后余数
互惠
赋值
可以使用万博1manbetx仿真软件检查.
结果及建议的行动
条件 | 建议的行动 |
---|---|
模型或子系统包含绝对值正在操作以下之一的块:
|
如果被识别绝对值块正在对布尔或无符号数据类型进行操作,请执行以下操作之一:
如果被识别绝对值块正在对有符号数据类型进行操作>信号属性对话框,选择整数溢出时饱和. |
模型或子系统包含获得a值为1的块或单位矩阵。 | 如果你正在使用获得块作为缓冲区,考虑将其替换为信号转换块。 |
模型或子系统包含数学函数-自然对数(日志) 块,可能导致非有限输出信号。实时嵌入式系统不支持非有限信号。万博1manbetx |
当使用数学函数块 |
模型或子系统包含数学函数-普通(基数为10)(以10为底的对数) 块,可能导致非有限输出信号。实时嵌入式系统不支持非有限信号。万博1manbetx |
当使用数学函数块 |
模型或子系统包含数学函数-分割后的剩余(rem) 块,可能导致非有限输出信号。实时嵌入式系统不支持非有限信号。万博1manbetx |
当使用数学函数块 |
模型或子系统包含数学函数——互惠(倒数) 块,可能导致非有限输出信号。实时嵌入式系统不支持非有限信号。万博1manbetx |
当使用数学函数块 |
模型或子系统可能包含赋值数组初始化不完整且没有块参数的块操作,如果没有分配任何输出元素设置为错误或警告. | 设置块参数操作,如果没有分配任何输出元素到推荐值之一:
|
能力与限制
不能在库模型上运行。
分析库链接块的内容。
分析所有被屏蔽子系统中的内容。
允许排除块和图表。
另请参阅
DO-331 MB.6.3.1节。d -高级需求是可验证的
DO-331 MB.6.3.2节。d -低层需求是可验证的
MISRA C:2012, Dir 4.1
MISRA C:2012,规则9.1
检查信号路由块的使用情况
检查身份证:mathworks.do178.SignalRoutingBlockUsage
确定用法信号路由可能影响安全的障碍物。
描述
此检查标识模型或子系统开关可能在包含浮点变量或常数的表达式中生成带有不等操作(~=)的代码的块。
可以使用万博1manbetx仿真软件检查.
结果及建议的行动
条件 | 建议的行动 |
---|---|
模型或子系统包含一个开关块,该块可能在表达式中生成带有不等式操作(~=)的代码,其中表达式的至少一侧包含浮点变量或常数。的开关块可能会在生成的代码中导致浮点不等式比较。 | 对于已识别的块,执行以下操作之一:
|
能力与限制
不能在库模型上运行。
分析库链接块的内容。
分析所有被屏蔽子系统中的内容。
允许排除块和图表。
另请参阅
DO-331, MB.6.3.1节。g和MB.6.3.2。g -算法很精确
MISRA C:2012, Dir 1.1
hisil_0034:信号路由块的使用(万博1manbetx模型)
检查逻辑和位操作块的使用情况
检查身份证:mathworks.do178.LogicBlockUsage
确定用法逻辑运算符而且位运算可能影响安全的障碍物。
描述
此检查检查以下用法:
可以使用万博1manbetx仿真软件检查.
结果及建议的行动
条件 | 建议的行动 |
---|---|
模型或子系统包含一个块,计算在不同数据类型上操作的关系运算符。这种情况会在生成的代码中导致不可预知的结果。 | 对于标识的块,使用公共数据类型作为输入。你可以用数据类型转换块来更改输入数据类型。 |
模型或子系统包含一个块,计算一个没有布尔输出的关系运算符。这种情况会在生成的代码中导致不可预知的结果。 | 对于指定的块,在>信号属性窗格中,设置输出数据类型来布尔 . |
该模型或子系统包含一个块,计算一个使用==或~=运算符比较浮点信号的关系运算符。由于浮点精度问题,在浮点信号上使用这些操作符是不可靠和不可预测的。这些操作符可能在生成的代码中导致不可预知的结果。 | 对于已识别的块,执行以下操作之一:
|
模型或子系统包含一个逻辑运算符块的输入或输出不是布尔值的输入或输出。该块可能在生成的代码中导致浮点相等或不相等比较。 |
|
能力与限制
不能在库模型上运行。
分析库链接块的内容。
分析所有被屏蔽子系统中的内容。
允许排除块和图表。
另请参阅
DO-331, MB.6.3.1节。g和MB.6.3.2。g -算法很精确
MISRA C:2012, Dir 1.1
MISRA C:2012,规则10.1
hisil_0016:使用计算关系运算符的块(万博1manbetx模型)
hisil_0017:使用计算关系运算符的块(2)(万博1manbetx模型)
hisil_0018:逻辑运算符块的用法(万博1manbetx模型)
检查端口和子系统块的使用情况
检查身份证:mathworks.do178.PortsSubsystemsUsage
确定用法港口而且子系统可能影响安全的障碍物。
描述
这个检查检查这些块的使用情况:
对迭代器
而迭代器
如果
开关情况
支票没有标记开关情况不使用整数数据类型或枚举值作为输入的块。遵守hisil_0011: Switch Case块和Action子系统块的使用(万博1manbetxSimulink) - C,使用整数数据类型或枚举值作为输入开关情况块。
可以使用万博1manbetx仿真软件检查.
结果及建议的行动
条件 | 建议的行动 |
---|---|
模型或子系统包含一个对迭代器具有变量迭代的块。这种情况可能导致不可预测的执行时间或生成的代码中出现无限循环。 | 对于被识别的人对迭代器block,执行以下任一操作:
|
模型或子系统包含一个而迭代器有无限迭代的块。这种情况会导致生成的代码出现无限循环。 | 对于被识别的人而迭代器块:
|
模型或子系统包含如果块中使用If表达式或Elseif表达式,可能在生成的代码中导致浮点相等或不相等比较。 | 中的表达式如果块,以避免在生成的代码中进行浮点相等或不相等比较。 |
模型或子系统包含如果块使用没有Else条件的Elseif表达式。 | 在如果块块的参数对话框,选择显示其他条件.将结果的Else输出端口连接到If动作子系统块。 |
模型或子系统包含如果块的输出端口没有连接到If动作子系统块。 | 的输出端口如果阻塞连接到If动作子系统块。 |
模型或子系统包含开关情况块,没有默认情况。 | 在开关情况块块的参数对话框,选择显示默认情况.将得到的默认输出端口连接到开关案例动作子系统块。 |
模型或子系统包含一个开关情况块的输出端口没有连接到开关案例动作子系统块。 | 的输出端口开关情况块连接到开关案例动作子系统块。 |
模型或子系统中包含以下与时间相关的块之一对迭代器或而迭代器子系统:
|
在模型或子系统中,考虑删除与时间相关的块。 |
能力与限制
不能在库模型上运行。
分析库链接块的内容。
分析所有被屏蔽子系统中的内容。
允许排除块和图表。
另请参阅
DO-331, MB.6.3.3节。b软件架构一致
DO-331, MB.6.3.1节。g和MB.6.3.2。g -算法很精确
DO-331, MB.6.3.1节。e -符合标准的高级需求
DO-331, MB.6.3.2节。e -符合标准的底层需求
DO-331, MB.6.3.1节。b -高级别需求是准确和一致的
DO-331, MB.6.3.2节。b -底层需求是准确和一致的
MISRA C:2012,规则14.2
MISRA C:2012,规则16.4
MISRA C:2012, Dir 4.1
hisil_0006: While迭代器块的使用(万博1manbetx模型)
hisil_0007: While迭代器子系统的使用(万博1manbetx模型)
hisil_0008: For迭代器块的用法(万博1manbetx模型)
hisil_0009: For迭代器子系统块的使用(万博1manbetx模型)
hisil_0011: Switch Case块和Action子系统块的使用(万博1manbetx模型)
显示型号版本信息
检查身份证:mathworks.do178.MdlChecksum
在报告中显示模型版本信息。
描述
此检查显示当前模型的以下信息:
版本号
作者
日期
模型校验和
可以使用万博1manbetx仿真软件检查.
结果及建议的行动
条件 | 建议的行动 |
---|---|
无法检索模型版本和校验和信息。 | 此摘要供您参考。无需执行该操作。 |
能力与限制
不能在库模型上运行。
不允许排除块或图表。
另请参阅
用于代码生成的报告(万博1manbetx仿真软件编码器)
航空无线电技术委员会浏览有关DO-178C机载系统和设备认证软件考虑事项及相关标准的资料
检查缺少属性的根导入
检查身份证:mathworks.iec61508.RootLevelInports
识别根模型轮廓尺寸缺少或继承样本时间、数据类型或端口维度的块。
描述
使用根模型轮廓尺寸没有定义采样时间、数据类型或端口尺寸的块可能导致不期望的模拟结果。万博1manbetxSimulink从下游块反向传播维度、样本时间和数据类型,除非您显式地指定这些值。你可以指定轮廓尺寸带有块参数的块属性或显式解析到连接信号线的Simulink信号对象。万博1manbetx在运行检查时,结果表提供了指向未通过的import块和信号对象的链接,以及触发警告的条件。
可以使用万博1manbetx仿真软件检查.
结果及建议的行动
条件 | 建议的行动 |
---|---|
缺少端口尺寸-模型包含继承端口维度的导入块。 |
对于列出的导入块和Simulink信号对象,请指定端口尺寸。万博1manbetx |
缺少信号数据类型-模型包含继承数据类型的导入块。 |
对于列出的导入块和Simulink信号对象,指定数据类型。万博1manbetx |
缺少端口采样时间-模型包含继承采样时间的导入块。 |
对于列出的导入块和Simulink信号对象,指定采样时间。万博1manbetx具有总线类型的根导入的采样时间必须与总线对象的叶元素指定的采样时间匹配。 |
Simulink信号对象的隐式解析万博1manbetx- Model包含隐式解析为基础工作区、模型工作区或Simulink数据字典中的Simulink信号对象的导入块信号名称。万博1manbetx |
对于列出的Simulink信号万博1manbetx对象,在属性对话框中选择信号属性信号名称必须解析为Simulink信号对象万博1manbetx. |
能力与限制
不能在库模型上运行。
允许排除块和图表。
提示
以下配置通过检查:
配置参数> Solver >周期采样时间约束设置为
确保采样时间无关
对于导出函数模型,继承样本时间没有标记。
另请参阅
DO-331 MB.6.3.1节。b“高水平的需求是准确和一致的”
DO-331 MB.6.3.2节。b“底层需求是准确和一致的”关于Simulink中的数据类型万博1manbetx(万博1manbetx模型)
确定输出信号尺寸(万博1manbetx模型)
指定采样时间(万博1manbetx模型)
hisl_0024:导入接口定义(万博1manbetx模型)
检查缺少范围定义的根导入
检查身份证:mathworks.iec61508.InportRange
识别根级别导入丢失或错误的最小或最大范围值的块。
描述
检查识别根级导入块缺少或错误的最小或最大范围值。可以使用块参数或显式解析到连接信号线的Simulink信号对象指定导入块的最小值和最大值。万博1manbetx结果表提供了指向未通过检查的import块和信号对象的链接,以及触发警告的条件。
可以使用万博1manbetx仿真软件检查.
结果及建议的行动
条件 | 建议的行动 |
---|---|
失踪的范围-模型包含有缺少范围参数(最小和/或最大)的数值数据类型的导入块。 |
对于列出的import块和Simulink信号对象,指定标量最小和万博1manbetx最大参数。 |
缺少总线对象的范围-定义import块的总线对象有缺少范围的叶元素。 |
对于列出的叶元素,要指定模型接口范围,请提供标量最小和最大参数。 |
指定的范围将被忽略-总线数据类型不支持Inports或Simulink信号对象的最小或最大值。万博1manbetx万博1manbetx这些值在范围检查时被忽略。 |
要启用范围检查,请在定义数据类型的总线对象的叶元素上指定最小和最大信号值。 |
未指定数据类型-模型包含具有继承数据类型的导入块或Simulink信号对象。万博1manbetx |
指定一种支持的数据类型:万博1manbetx |
Simulink信号对象的隐式解析万博1manbetx- Model包含隐式解析为基础工作区、模型工作区或Simulink数据字典中的Simulink信号对象的导入块信号名称。万博1manbetx |
对于列出的Simulink信号万博1manbetx对象,在属性对话框中选择信号属性信号名称必须解析为Simulink信号对象万博1manbetx. |
能力与限制
不能在库模型上运行。
允许排除块和图表。
另请参阅
DO-331 MB.6.3.1节。b“高水平的需求是准确和一致的”
DO-331 MB.6.3.2节。b“底层需求是准确和一致的”hisl_0025:输入接口的设计最小/最大规范(万博1manbetx模型)
检查缺少范围定义的根输出
检查身份证:mathworks.iec61508.OutportRange
识别缺少或错误的最小或最大范围值的根级输出端口块。
描述
该检查可以识别缺少或错误的最小或最大范围值的根级输出端口块。可以使用块参数或显式解析到连接信号线的Simulink信号对象指定输出端口块的最小值和最大值。万博1manbetx结果表提供了指向未通过检查的Outport块的链接,以及触发警告的条件。
可以使用万博1manbetx仿真软件检查.
结果及建议的行动
条件 | 建议的行动 |
---|---|
失踪的范围-模型包含有缺少范围参数(最小和/或最大)的数值数据类型的输出端口块。 |
对于列出的输出端口块和Simulink信号对象,指定标量最小和最大参万博1manbetx数。 |
缺少总线对象的范围-定义输出端口块的总线对象具有缺少范围的叶元素。 |
对于列出的叶元素,要指定模型接口范围,请提供标量最小和最大参数。 |
在输出端口指定的范围将被忽略总线数据类型不支持Outports或Simulink信号对象的最小或最大值。万博1manbetx万博1manbetx这些值在范围检查时被忽略。 |
要启用范围检查,请在定义数据类型的总线对象的叶元素上指定最小和最大信号值。 |
未指定总线数据类型-模型包含带有继承总线数据类型的输出端口块或Simulink信号对象万博1manbetx。 |
对于输出端口块和Simulink信号对象,指定一种支持万博1manbetx的数据类型:万博1manbetx |
Simulink信号对象的隐式解析万博1manbetx-模型包含输出端口块信号名称,这些信号名称隐式解析为基础工作区、模型工作区或Simulink数据字典中的Simulink信号对象。万博1manbetx |
对于列出的Simulink信号万博1manbetx对象,在属性对话框中选择信号属性信号名称必须解析为Simulink信号对象万博1manbetx. |
能力与限制
不能在库模型上运行。
允许排除块和图表。
另请参阅
DO-331 MB.6.3.1节。b“高水平的需求是准确和一致的”
DO-331 MB.6.3.2节。b“底层需求是准确和一致的”hisl_0026:输出接口设计最小/最大规格(万博1manbetx模型)
检查状态流结构的使用情况
检查身份证:mathworks.iec61508.StateflowProperUsage
确定可能影响安全性的状态流结构的使用。
描述
此检查标识了Stateflow软件被以可能影响应用程序安全的方式使用的实例,包括:
使用强数据类型
端口名称不匹配
数据对象和事件的范围
状态操作语句的格式化
状态和转换的顺序
遥不可及的代码
不确定的执行时间
可以使用万博1manbetx仿真软件检查.
结果及建议的行动
条件 | 建议的行动 |
---|---|
状态流图没有配置为在Simulink模型和状态流图之间的边界上进行强数据类型。万博1manbetx看到hisf_0009:强数据类型(Simulink和状态流边界)万博1manbetx. |
在“图表属性”对话框中,选择在Simulink I/O中使用强数据类型万博1manbetx查看状态流图。当您选中此复选框时,状态流图接受Simulink模型支持的任何数据类型的输入信号,只要输入信号的类型与相应的状态流输入数据对象的类型相匹配。万博1manbetx万博1manbetx |
信号的名称与其对应的状态流端口的名称不同。看到hisf_0016:状态流端口名称. |
|
本地数据不是在Stateflow层次结构的图表级别或更低级别定义的。看到hisf_0017:状态流数据对象作用域 |
在图表级别或更低级别定义本地数据。 |
在以下情况下,状态操作缺少新行:
|
添加缺失的新行。 |
状态流图有用户指定的状态/转换执行顺序清除。看到hisf_0002:用户指定的状态/转换执行顺序. |
对于指定的图表,在“图表属性”对话框中选择用户指定的状态/转换执行顺序. |
下列任何一项:
|
在“配置参数”对话框中设置:
在模型窗口中,选择:
|
状态流图包含在两个或多个作用域中定义的数据对象标识符。看到hisl_0061:唯一标识符. |
对于识别的图表,请执行以下其中一项操作:
|
能力与限制
不能在库模型上运行。
分析库链接块的内容。
分析所有被屏蔽子系统中的内容。
允许排除块和图表。排除将不适用于库链接图表。
另请参阅
请参阅Stateflow文档中的以下主题:
DO-331, MB.6.3.1节。b“高水平的需求是准确和一致的”
DO-331, MB.6.3.1节。e“高水平要求符合标准”
DO-331, MB.6.3.1节。g“算法是准确的”
DO-331, MB.6.3.2节。b“底层需求是准确和一致的”
DO-331, MB.6.3.2节。e“低水平要求符合标准”
DO-331, MB.6.3.2节。g“算法是准确的”基于Simulink I/O的强数据类型化万博1manbetx(Stateflow)
属性字段(Stateflow)
事件如何在状态流图中工作(Stateflow)
添加状态流数据(Stateflow)
标签州(Stateflow)
表属性(万博1manbetx模型)
架构图(万博1manbetx模型)
检查模拟时间的安全相关求解器设置
检查身份证:mathworks.iec61508.hisl_0040
检查模型配置中适用于模拟时间并可能影响安全的求解器设置。
描述
此检查验证与模拟时间相关的模型求解器配置参数是否为为与安全相关的应用程序生成代码而优化设置。
可以使用万博1manbetx仿真软件检查.
结果及建议的行动
条件 | 建议的行动 |
---|---|
用于指定模拟或生成代码的开始时间的求解器设置被设置为 |
2 .在“配置参数”对话框中设置开始时间(万博1manbetxSimulink)或设置参数 |
用于指定模拟或生成代码的停止时间的求解器设置被设置为大于的值的负值或正值应用程序寿命(天)(万博1manbetx模型)。默认情况下,应用程序寿命(天)(万博1manbetx模型) |
在“配置参数”对话框中,设置停止时间(万博1manbetxSimulink)或设置参数 |
行动的结果
点击修改设置配置适用于求解器并可能影响安全性的模型诊断设置。
能力与限制
不能在库模型上运行。
不允许排除块或图表。
分析没有工作区和对话框的屏蔽子系统中的内容。
另请参阅
DO-331 MB.6.3.1节。g -算法是准确的
DO-331 MB.6.3.2节。g -算法是准确的解算器窗格中(万博1manbetx模型)
应用程序寿命(天)(万博1manbetx模型)
hisl_0040: Configuration Parameters > Solver >模拟时间(万博1manbetx模型)
配置参数>数学和数据类型>应用程序寿命(天)(万博1manbetx模型)
检查与安全相关的求解器设置以获得求解器选项
检查身份证:mathworks.iec61508.hisl_0041
检查适用于求解器并可能影响安全性的模型配置中的求解器设置。
描述
此检查验证与求解器相关的模型求解器配置参数是否为为与安全相关的应用程序生成代码而进行了最优设置。
可以使用万博1manbetx仿真软件检查.
结果及建议的行动
行动的结果
点击修改设置配置适用于求解器并可能影响安全性的模型诊断设置。
能力与限制
不能在库模型上运行。
不允许排除块或图表。
分析没有工作区和对话框的屏蔽子系统中的内容。
另请参阅
解算器窗格中(万博1manbetx模型)
hisl_0041: Configuration Parameters > Solver > Solver选项(万博1manbetx模型)
检查Stateflow数据的移位操作的使用情况
检查身份证:mathworks.do178.hisf_0064
确定可能影响安全的状态流数据的移位操作的使用。
描述
此检查检查移位操作数值大于输入或输出类型的位宽或移位操作数值为负值的移位操作。
可以使用万博1manbetx仿真软件检查.
此检查需要Stateflow许可证。
结果及建议的行动
条件 | 建议的行动 |
---|---|
右移操作大于输入类型的位宽。 |
显式修改位移位操作的值,使其小于shift操作数。 |
左移操作大于输出类型的位宽。 |
显式修改位移位操作的值,使其小于shift操作数。 |
能力与限制
不能在库模型上运行。
不允许排除块或图表。
不支持将移位大小定万博1manbetx义为Simulink信号或变量的移位操作。万博1manbetx
不支持由运行时决定万博1manbetx的移位大小组成的移位操作。
另请参阅
DO-331 MB.6.3.1节。b“高水平的需求是准确和一致的”
DO-331 MB.6.3.2节。b“底层需求是准确和一致的”
检查状态流图中的赋值操作
检查身份证:mathworks.do178.hisf_0065
在状态流对象中标识赋值操作。
描述
此检查标识Stateflow对象中的赋值操作,这些操作将整数和定点计算转换为比输入数据类型更广泛的数据类型。
这种检查只识别带有算术运算的赋值。
可以使用万博1manbetx仿真软件检查.
此检查需要Stateflow许可证。
结果及建议的行动
条件 | 建议的行动 |
---|---|
Stateflow对象由赋值操作组成,这些操作将整数和定点计算转换为比输入数据类型更广泛的数据类型。 | 在Stateflow对象中显式地将赋值操作符(=)替换为:=操作符。 |
能力与限制
不能在库模型上运行。
不允许排除块或图表。
另请参阅
DO-331 MB.6.3.1节。b“高水平的需求是准确和一致的”
DO-331 MB.6.3.2节。b“底层需求是准确和一致的”赋值(=,:=)操作(Stateflow)
检查状态流图中的一元运算符
检查身份证:mathworks.do178.hisf_0211
在状态流图中标识一元运算符。
描述
此检查标识状态流图中无符号数据类型上的一元减运算符。
可以使用万博1manbetx仿真软件检查.
此检查需要Stateflow许可证。
结果及建议的行动
条件 | 建议的行动 |
---|---|
状态流图由无符号数据类型上的一元减运算符组成。 | 显式修改无符号数据类型上的一元运算符。有关更多信息,请参见一元操作(Stateflow)。 |
能力与限制
不能在库模型上运行。
不允许排除块或图表。
不标记带有位运算符和算术运算符的表达式。例如,
——(u1、u2)
没有标记。
另请参阅
DO-331 MB.6.3.1节。b“高水平的需求是准确和一致的”
DO-331 MB.6.3.2节。b“底层需求是准确和一致的”
检查MISRA C:2012不推荐的块
检查身份证:mathworks.misra.Blk万博1manbetxSupport
识别MISRA C:2012兼容代码生成不支持或不推荐的块万博1manbetx。
描述
遵循此检查的建议可以增加为嵌入式应用程序生成符合MISRA C:2012的代码的可能性。
可与嵌入式编码器和万博1manbetx仿真软件检查.
结果及建议的行动
条件 | 建议的行动 |
---|---|
查找表块使用三次样条插值或外推方法在模型或子系统中找到。 | 考虑查找表块的其他插值和外推方法。 |
已弃用的查找表块在模型或子系统中找到。 已弃用的查找表块为查找而且Lookup2D. |
考虑替换已弃用的查找表块。 |
s函数生成器在模型或子系统中找到块。 | 考虑更换s函数生成器推荐用于生产的块。 |
从工作空间在模型或子系统中找到块。 | 考虑更换从工作空间推荐用于生产的块。 |
能力与限制
您可以:
在库模型上运行此检查。
分析库链接块的内容。
分析所有被屏蔽子系统中的内容。
如果您有。则排除此检查中的块和图表万博1manbetx仿真软件检查许可证。
另请参阅
hisl_0020:块不推荐MISRA C:2012合规(万博1manbetx模型)
MISRA C指南(嵌入式编码)
MISRA C:2012合规考虑(万博1manbetx模型)
检查MISRA C:2012的配置参数
检查身份证:mathworks.misra.CodeGenSettings
识别可能影响MISRA C:2012兼容代码生成的配置参数。
描述
遵循此检查的建议可以增加为嵌入式应用程序生成符合MISRA C:2012的代码的可能性。
可与嵌入式编码器和万博1manbetx仿真软件检查.
结果及建议的行动
条件 | 建议的行动 |
---|---|
定点净斜率计算采用除法没有设置为在 或只对整数的倒数使用除法 . |
设置配置参数定点净斜率计算采用除法来在 或只对整数的倒数使用除法 . |
位字段声明器类型说明符设置为
|
设置配置参数位字段声明器类型说明符来uint_T . |
模型验证块启用设置为使用本地设置 或让所有 . |
设置配置参数模型验证块启用来禁用所有 . |
包装溢出设置为没有一个 |
设置配置参数包装溢出来警告 或错误 . |
Inf或NaN块输出设置为没有一个 |
设置配置参数Inf或NaN块输出来警告 或错误 . |
有符号整数除法舍入到没有设置为零 或地板上 . |
设置配置参数有符号整数除法舍入到来零 或地板上 . |
MATLAB函数块中的动态内存分配被选中。 | 明确配置参数MATLAB函数块中的动态内存分配. |
系统目标文件设置为基于grt的目标。 | 设置配置参数系统目标文件到基于ert的目标。 |
最大标识符长度 | 将配置参数值设置为与实现相关的限制。默认为31 . |
系统生成的标识符设置为经典 . |
设置配置参数系统生成的标识符来缩短 . |
代码替换库没有设置为没有一个 或AUTOSAR 4.0 . |
设置配置参数代码替换库来 |
共享代码放置设置为汽车 . |
设置配置参数共享代码放置来 |
万博1manbetx支持:非有限数字被选中。 | 明确配置参数万博1manbetx支持:非有限数字 |
万博1manbetx支持:复数被选中。 | 明确配置参数万博1manbetx支持:复数(仅针对基于ert的目标) |
万博1manbetx支持:连续时间被选中。 | 明确配置参数万博1manbetx支持:连续时间(仅针对基于ert的目标) |
MAT-file日志被选中。 | 明确配置参数MAT-file日志 |
生成共享常量被选中。 | 明确配置参数生成共享常量. |
标准数学库并不表示正确的C编程语言。 | 设置配置参数标准数学库来 |
万博1manbetx支持非内联s函数被选中。 | 明确配置参数万博1manbetx支持非内联s函数(仅针对基于ert的目标) |
对模型初始化使用动态内存分配选中时代码接口封装设置为可重用的功能 . |
明确配置参数对模型初始化使用动态内存分配. 仅当配置参数时选择代码接口封装设置为 |
括号的水平没有设置为最大值(用括号指定优先级) . |
设置配置参数括号水平来最大值(用括号指定优先级) . |
用带符号的位移替换2的幂的乘法被选中。 | 明确配置参数用带符号的位移替换2的幂的乘法. |
铸造模式没有设置为标准兼容 . |
设置配置参数铸造模式来标准兼容 . |
允许有符号整数的右移位被选中。 | 明确配置参数允许有符号整数的右移位. |
在函数声明中保留静态关键字清除时文件打包格式设置为紧凑的 或CompactWithDataFile . |
选择配置参数在函数声明中保留静态关键字(仅针对基于ert的目标)。 |
行动的结果
点击修改所有将参数值修改为推荐值。
子检查依赖于子检查的结果D在Model Advisor窗口的结果表中。
能力与限制
此检查不检查引用的模型。
另请参阅
hisl_0060:改善MISRA C:2012遵从性的配置参数(万博1manbetx模型)
MISRA C指南(嵌入式编码)
MISRA C:2012合规考虑(万博1manbetx模型)