Модели для моделирования систем высокой целостности
Можно проверить, что ваша модель или подсистема соответствует выбранным аспектам стандарта безопасности High Integrity System Model, запустив Model Advisor.
Чтобы проверить податливость стандартам High Integrity System Model, запустите проверки высокой целостности из следующих папок Model Advisor:
Для получения информации о Высокой целостности Системной модели программном обеспечении Факторов в воздушных системах и сертификации оборудования и соответствующих стандартах, смотрите Радиотехническую комиссию по аэронавтике (RTCA).
В таблице перечислены проверки High Integrity System Model и соответствующие им руководства по моделированию. Для получения дополнительной информации о High-Integrity Руководства по Моделированию, см. Моделирование систем повышенной надежности.
Проверки моделирования систем высокой целостности
Системная модель высокой целостности | Применимые рекомендации по моделированию систем повышенной надежности |
---|
Проверяйте использование блоков интерполяционной таблицы
| hisl_0033: Использование блоков интерполяционной таблицы |
Проверяйте на несогласованность методов индексирования векторов | hisl_0021: последовательный метод индексирования векторов |
Проверяйте использование вариантов блоков | hisl_0023: Верификация вариантов блоков |
Проверьте корневые входные порты с отсутствующими свойствами | hisl_0024: Определение интерфейса Inport |
Проверяйте использование блоков Relational Operator | hisl_0017: Использование блоков, которые вычисляют реляционные операторы (2) |
Проверяйте использование блоков Relational Operator | hisl_0016: Использование блоков, которые вычисляют реляционные операторы |
Проверяйте использование блоков Логического Оператора | hisl_0018: Использование блока Логического Оператора |
Проверяйте использование блоков Итератор | hisl_0006: Использование блоков Итератор |
Проверяйте использование подсистем For и While Iterator | hisl_0007: Использование для итераторов или Итератор |
Проверяйте использование блоков For Iterator | hisl_0008: Использование для блоков Iterator |
Проверяйте использование блоков If и блоков If Action Subsystem | hisl_0010: Использование блоков If и блоков Подсистемы Действий If |
Проверяйте использование блоков Switch Case и блоков Switch Case Action Subsystem | hisl_0011: Использование блоков Switch Case и блоков Action Subsystem |
Проверьте параметры оптимизации, связанные с безопасностью, для логических сигналов | hisl_0045: Параметры конфигурации > Типы математики и данных > Реализуйте логические сигналы как логические данные (против double) |
Проверяйте параметры оптимизации сокращения блоков, связанные с безопасностью | hisl_0046: Параметры конфигурации > Цель симуляции > Сокращение блоков |
Проверьте параметры оптимизации, связанные с безопасностью, для срока службы приложения | hisl_0048: Параметры конфигурации > Типы данных и математика > Продолжительность жизни приложения (дней) |
Проверьте параметры оптимизации, связанные с безопасностью, для инициализации данных | hisl_0052: Параметры конфигурации > Генерация кода > Оптимизация > Инициализация данных |
Проверяйте параметры оптимизации, связанные с безопасностью, для преобразований типов данных | hisl_0053: Параметры конфигурации > Генерация кода > Оптимизация > Удалить код из плавающей точки в целочисленные преобразования, которые переносят значения вне области значений |
Проверьте параметры оптимизации, связанные с безопасностью, для исключений из арифметики деления | hisl_0054: Параметры конфигурации > Генерация кода > Оптимизация > Удалить код, который защищает от арифметических исключений деления |
Проверьте настройки генерации кода, связанного с безопасностью, на предмет комментариев | hisl_0038: Параметры конфигурации > Генерация кода > Комментарии |
Проверьте настройки интерфейса генерации кода, связанного с безопасностью | hisl_0039: Параметры конфигурации > Генерация кода > Интерфейс |
Проверьте настройки генерации кода, связанного с безопасностью, для стиля кода | hisl_0047: Параметры конфигурации > Генерация кода > Стиль кода |
Проверьте настройки идентификатора генерации кода, связанного с безопасностью | hisl_0049: Параметры конфигурации > Генерация кода > Идентификаторы |
Проверяйте использование блоков Abs | hisl_0001: Использование блока Abs |
Проверяйте использование блоков Math Function (rem и обратные функции) | hisl_0002: Использование блоков Math Function (rem и returcal) |
Проверяйте использование блоков Math Function (журнала и log10) | hisl_0004: Использование блоков Math Function (натуральный логарифм и основа 10 логарифм) |
Проверяйте использование блоков Assignment | hisl_0029: Использование блоков назначения |
Проверяйте использование блоков Signal Routing | hisl_0034: Использование блоков Signal Routing |
Проверьте корневые входные порты с отсутствующими определениями области значений | hisl_0025: Проект min/max спецификация входа интерфейсов |
Проверьте корневые выходные порты с отсутствующими определениями областей значений | hisl_0026: Проект min/max спецификация выхода интерфейсов |
Проверяйте тип конечного автомата диаграмм Stateflow | hisf_0001: тип конечного автомата |
Проверяйте диаграммы Stateflow на пути перехода, которые пересекают контуры параллельных состояний | hisf_0013: Использование переходных путей (пересечение контуров параллельных состояний) |
Проверяйте диаграммы Stateflow на порядок состояний и переходов | hisf_0002: Заданное пользователем состояние/порядок выполнения перехода |
Проверяйте опции отладки Stateflow | hisf_0011: параметры отладки Stateflow |
Проверяйте диаграммы Stateflow на уникально определенные объекты данных | hisl_0061: Уникальные идентификаторы для ясности |
Проверяйте диаграммы Stateflow на наличие сильного набора данных | hisf_0015: Сильное типирование данных (переменные приведения и параметры в выражениях) |
Проверяйте использование операций сдвига для данных Stateflow | hisf_0064: Сдвиньте операции для данных Stateflow, чтобы улучшить податливость кода |
Проверяйте операции назначения в диаграммах Stateflow | hisf_0065: Введите операции приведения в Stateflow, чтобы улучшить податливость кода |
Проверяйте диаграммы Stateflow для унарных операторов | hisf_0211: Защита от использования унарных операторов в диаграммах Stateflow для улучшения податливости кода |
Проверяйте на сильное типирование данных с Simulink ввод-вывод | hisf_0009: Сильный набор данных (Simulink и Stateflow контура) |
Проверьте наличие Функции MATLAB интерфейсов с унаследованными свойствами | himl_0002: Сильное типирование данных на контурах функции MATLAB |
Проверяйте метрики функции MATLAB | himl_0003: Ограничение сложности функции MATLAB |
Проверяйте сообщения анализатора кода MATLAB | himl_0004: КОДЫ MATLAB Analyzer для генерации кода |
Проверяйте параметры ссылки на модели, связанные с безопасностью | hisl_0037: Параметры конфигурации > Ссылки на модель |
Проверьте параметры диагностики, связанные с безопасностью, для решателей | hisl_0043: Параметры конфигурации > Диагностика > Решатель |
Проверьте настройки решателя безопасности на время симуляции | hisl_0040: Параметры конфигурации > Решатель > Время симуляции |
Проверьте настройки решателя безопасности для опций решателя | hisl_0041: Параметры конфигурации > Решатель > Опции решателя |
Проверьте параметры решателя, связанные с безопасностью, для постановки задач и шага расчета | hisl_0042: Параметры конфигурации > Решатель > Задание и шаг расчета опций |
Проверьте параметры диагностики, связанные с безопасностью, на шаг расчета | hisl_0044: Параметры конфигурации > Диагностика > Шаг расчета |
Проверьте параметры диагностики, связанной с безопасностью | hisl_0302: Параметры конфигурации > Диагностика > Валидность данных > Параметры |
Проверьте параметры диагностики, связанные с безопасностью, для данных, используемых для отладки | hisl_0305: Параметры конфигурации > Диагностика > Валидность данных > Отладка |
Проверьте параметры диагностики, связанные с безопасностью, для памяти хранилища данных | hisl_0013: Использование блоков хранилища данных |
Проверьте параметры диагностики, связанные с безопасностью, для преобразований типов | hisl_0309: Параметры конфигурации > Диагностика > Преобразование типов |
Проверьте параметры диагностики, связанные с безопасностью, на предмет соединения сигналов | hisl_0306: Параметры конфигурации > Диагностика > Связь > Сигналы |
Проверьте параметры диагностики безопасности для подключения к шине | hisl_0307: Параметры конфигурации > Диагностика > Связь > Шины |
Проверьте параметры диагностики, связанные с безопасностью, которые применяются к соединению вызова функции | hisl_0308: Параметры конфигурации > Диагностика > Связь > Вызовы функций |
Проверьте параметры диагностики, связанные с безопасностью, на совместимость | hisl_0301: Параметры конфигурации > Диагностика > Совместимость |
Проверьте параметры диагностики, связанные с безопасностью, для инициализации модели | hisl_0304: Параметры конфигурации > Диагностика > Валидность данных > Инициализация модели |
Проверьте параметры диагностики, связанные с безопасностью, для ссылки на модель | hisl_0310: Параметры конфигурации > Диагностика > Ссылка на модель |
Проверьте параметры диагностики, связанные с безопасностью, для сохранения | hisl_0036: Параметры конфигурации > Диагностика > Сохранение |
Проверьте параметры диагностики, связанные с безопасностью для блоков Merge | hisl_0303: Параметры конфигурации > Диагностика > Валидность данных > Объединить блоки |
Проверьте параметры диагностики, связанные с безопасностью для Stateflow | hisl_0311: Параметры конфигурации > Диагностика > Stateflow |
Проверяйте имена объектов модели | hisl_0032: Имена объектов модели |
Проверьте элементы модели, которые не связаны с требованиями | hisl_0070: Размещение ссылок требования в модели |
Проверяйте на неподходящее использование переходных путей | hisf_0014: Использование переходных путей (проходящих через состояния) |
Проверяйте использование блока Bitwise Operator | hisl_0019: Использование побитовых операций |
Проверяйте типы данных для блоков с сигналами индекса | hisl_0022: Выбор типа данных для сигналов индекса |
Проверьте имя файла модели | hisl_0031: Имена файлов модели |
Проверьте, шаблоны ли/elseif/else в Блоки MATLAB function | himl_0006: код MATLAB, если/elseif/else шаблоны |
Проверяйте операторы switch в блоки MATLAB function | himl_0007: Код MATLAB switch/case/other patterns |
Проверяйте глобальные переменные в графических функциях | hisl_0062: Глобальные переменные в графических функциях |
Проверяйте длину пользовательских имен объектов | hisl_0063: Длина пользовательских имен объектов для улучшения податливости C:2012 MISRA |
Проверяйте использование блоков Merge | hisl_0015: Использование блоков слияния |
Проверяйте использование условно выполненных подсистем | hisl_0012: Использование условно исполненных подсистем |
Проверяйте использование стандартных заголовков функций MATLAB | himl_0001: Использование стандартизированных заголовков функций MATLAB |
Проверяйте использование реляционных операторов в Блоки MATLAB function | himl_0008: типы данных реляционных операторов кода MATLAB |
Проверяйте использование операторов равенства в Блоках MATLAB function | himl_0009: код MATLAB с равными/не равными реляционными операторами |
Проверяйте использование логических операторов и функций в Блоки MATLAB function | himl_0010: код MATLAB с логическими операторами и функциями |
Проверяйте тип и размер условных выражений | himl_0011: Тип данных и размер выражений условий |
Проверяйте именование портов в диаграммах Stateflow | hisf_0016: имена портов Stateflow |
Проверяйте просмотр объектов данных Stateflow | hisf_0017: скопирование объектов данных Stateflow |
Проверяйте использование блоков Gain | hisl_0066: Использование блоков Gain |
Проверяйте на разделение на нули | hisl_0067: Защитите от вычислений деления на нули |
Проверяйте использование побитовых операций в диаграммах Stateflow | hisf_0003: Использование побитовых операций |
Проверяйте тип данных переменных управления цикла | hisl_0102: Тип данных переменных управления цикла для улучшения MISRA C:2012 податливости |
Проверьте параметры конфигурации для C:2012 MISRA | hisl_0060: Параметры конфигурации, улучшающие податливость C:2012 MISRA |
Проверьте блоки, не рекомендуемые для развертывания производственного кода C/C + + Проверяйте блоки, не рекомендуемые для MISRA C:2012 | hisl_0020: Блоки, не рекомендуемые для податливости C:2012 MISRA |
Проверьте параметры оптимизации, связанные с безопасностью, на заданные минимальное и максимальное значения | hisl_0056: Параметры конфигурации> Генерация кода> Оптимизация> Оптимизируют использование указанных минимальных и максимальных значений |
Проверяйте использование блоков Math Function (rem и обратные функции) | hisl_0002: Использование блоков Math Function (rem и returcal) |
Проверяйте использование блоков Sqrt | hisl_0003: Использование блоков квадратного корня |
Проверяйте использование блоков Math Function (журнала и log10) | hisl_0004: Использование блоков Math Function (натуральный логарифм и основа 10 логарифм) |
Проверяйте использование Возвратных блоков Sqrt | hisl_0028: Использование Возвратных Квадратных Корневых блоков |
Проверьте параметры безопасности для аппаратной реализации | hisl_0071: Параметры конфигурации > Аппаратная реализация > Несогласованные настройки аппаратной реализации |
Проверяйте использование рекурсий | hisf_0004: Защита от рекурсивных вызовов функций для улучшения податливости кода |