Проверки модели на DO-254 стандартные Податливости

Можно проверить, что ваша модель или подсистема соответствуют выбранным аспектам стандарта безопасности DO-254, запустив Model Advisor.

Чтобы проверить податливость стандартам DO, откройте Model Advisor и запустите проверки в By Task > Modeling Standards for DO-254.

Для получения информации о DO-254 факторах сертификации бортовых систем и оборудования и соответствующих стандартах смотрите Радиотехническую комиссию по аэронавтике (RTCA).

В приведенной ниже таблице перечислены DO-254 проверки.

Ниже приведены Моделирование систем повышенной надежности проверки, применимые к DO-178C/DO-331 стандартам.

Модели для моделирования систем высокой целостности

Можно проверить, что ваша модель или подсистема соответствует выбранным аспектам стандарта безопасности High Integrity System Model, запустив Model Advisor.

Чтобы проверить податливость стандартам High Integrity System Model, запустите проверки высокой целостности от By Task > Modeling Standards for DO-254 > High-Integrity Systems

В приведенной ниже таблице перечислены проверки Системной модели высокой целостности и их соответствующие руководства по моделированию, поддержка DO-254 стандарта безопасности. Для получения дополнительной информации о High-Integrity Руководства по Моделированию, см. Моделирование систем повышенной надежности.

Проверки Системной модели высокой целостностиПрименимые рекомендации по моделированию систем повышенной надежности
Проверяйте на несогласованность методов индексирования векторовhisl_0021: последовательный метод индексирования векторов
Проверяйте блоки вариантов с активными 'Generate preprocessor conditionals'hisl_0023: Верификация вариантов блоков
Проверьте корневые входные порты с отсутствующими свойствамиhisl_0024: Определение интерфейса Inport
Проверяйте блоки Relational Operator, которые приравнивают типы с плавающей точкойhisl_0017: Использование блоков, которые вычисляют реляционные операторы (2)
Проверяйте использование блоков Relational Operatorhisl_0016: Использование блоков, которые вычисляют реляционные операторы
Проверяйте использование блоков Логического Оператораhisl_0018: Использование блока Логического Оператора
Проверяйте выборку зависящих от времени блоковhisl_0007: Использование для итераторов или Итератор
Проверяйте параметры оптимизации сокращения блоков, связанные с безопасностьюhisl_0046: Параметры конфигурации > Цель симуляции > Сокращение блоков
Проверяйте использование блоков Abshisl_0001: Использование блока Abs
Проверяйте использование блоков Assignmenthisl_0029: Использование блоков назначения
Проверьте корневые входные порты с отсутствующими определениями области значенийhisl_0025: Проект min/max спецификация входа интерфейсов
Проверьте корневые выходные порты с отсутствующими определениями областей значенийhisl_0026: Проект min/max спецификация выхода интерфейсов
Проверяйте диаграммы Stateflow на пути перехода, которые пересекают контуры параллельных состоянийhisf_0013: Использование переходных путей (пересечение контуров параллельных состояний)
Проверяйте диаграммы Stateflow на порядок состояний и переходовhisf_0002: Заданное пользователем состояние/порядок выполнения перехода
Проверяйте опции отладки Stateflowhisf_0011: параметры отладки Stateflow
Проверяйте диаграммы Stateflow на уникально определенные объекты данныхhisl_0061: Уникальные идентификаторы для ясности
Проверяйте использование операций сдвига для данных Stateflowhisf_0064: Сдвиньте операции для данных Stateflow, чтобы улучшить податливость кода
Проверяйте диаграммы Stateflow для унарных операторовhisf_0211: Защита от использования унарных операторов в диаграммах Stateflow для улучшения податливости кода
Проверяйте на сильное типирование данных с Simulink ввод-выводhisf_0009: Сильный набор данных (Simulink и Stateflow контура)
Проверяйте сообщения анализатора кода MATLABhiml_0004: КОДЫ MATLAB Analyzer для генерации кода
Проверяйте параметры ссылки на модели, связанные с безопасностьюhisl_0037: Параметры конфигурации > Ссылки на модель
Проверьте параметры диагностики, связанной с безопасностьюhisl_0302: Параметры конфигурации > Диагностика > Валидность данных > Параметры
Проверьте параметры диагностики, связанные с безопасностью, для преобразований типовhisl_0309: Параметры конфигурации > Диагностика > Преобразование типов
Проверьте параметры диагностики, связанные с безопасностью, на предмет соединения сигналовhisl_0306: Параметры конфигурации > Диагностика > Связь > Сигналы
Проверьте параметры диагностики безопасности для подключения к шинеhisl_0307: Параметры конфигурации > Диагностика > Связь > Шины
Проверьте параметры диагностики, связанные с безопасностью, для инициализации моделиhisl_0304: Параметры конфигурации > Диагностика > Валидность данных > Инициализация модели
Проверьте параметры диагностики, связанные с безопасностью, для ссылки на модельhisl_0310: Параметры конфигурации > Диагностика > Ссылка на модель
Проверьте параметры диагностики, связанные с безопасностью, для сохраненияhisl_0036: Параметры конфигурации > Диагностика > Сохранение
Проверьте параметры диагностики, связанные с безопасностью для Stateflowhisl_0311: Параметры конфигурации > Диагностика > Stateflow
Проверяйте имена объектов моделиhisl_0032: Имена объектов модели
Проверьте элементы модели, которые не связаны с требованиямиhisl_0070: Размещение ссылок требования в модели
Проверяйте на неподходящее использование переходных путейhisf_0014: Использование переходных путей (проходящих через состояния)
Проверяйте использование блока Bitwise Operatorhisl_0019: Использование побитовых операций
Проверяйте типы данных для блоков с сигналами индексаhisl_0022: Выбор типа данных для сигналов индекса
Проверьте имя файла моделиhisl_0031: Имена файлов модели
Проверьте, шаблоны ли/elseif/else в Блоки MATLAB functionhiml_0006: код MATLAB, если/elseif/else шаблоны
Проверяйте операторы switch в блоки MATLAB functionhiml_0007: Код MATLAB switch/case/other patterns
Проверяйте глобальные переменные в графических функцияхhisl_0062: Глобальные переменные в графических функциях
Проверяйте длину пользовательских имен объектовhisl_0063: Длина пользовательских имен объектов для улучшения податливости C:2012 MISRA
Проверяйте использование условно выполненных подсистемhisl_0012: Использование условно исполненных подсистем
Проверяйте использование стандартных заголовков функций MATLABhiml_0001: Использование стандартизированных заголовков функций MATLAB
Проверяйте использование реляционных операторов в Блоки MATLAB functionhiml_0008: типы данных реляционных операторов кода MATLAB
Проверяйте использование операторов равенства в Блоках MATLAB functionhiml_0009: код MATLAB с равными/не равными реляционными операторами
Проверяйте использование логических операторов и функций в Блоки MATLAB functionhiml_0010: код MATLAB с логическими операторами и функциями
Проверяйте именование портов в диаграммах Stateflowhisf_0016: имена портов Stateflow
Проверяйте просмотр объектов данных Stateflowhisf_0017: скопирование объектов данных Stateflow
Проверяйте использование блоков Gainhisl_0066: Использование блоков Gain
Проверяйте использование побитовых операций в диаграммах Stateflowhisf_0003: Использование побитовых операций
Проверяйте тип данных переменных управления циклаhisl_0102: Тип данных переменных управления цикла для улучшения MISRA C:2012 податливости

Проверки советника по HDL-коду

HDL-код Advisor и Model Advisor проверяют в HDL, Coder™ проверить и обновить Simulink® модель или подсистема для совместимости с генерацией HDL-кода. Code Advisor проверяет:

  • Моделируйте настройки конфигурации

  • Порты и настройки подсистемы

  • Блоки и настройки блоков

  • Собственная поддержка с плавающей точкой

  • Отраслевые стандартные инструкции

В следующей таблице перечислены проверки HDL-код Advisor, поддерживаемые стандартами безопасности DO-254:

Проверки советника по HDL-кодуОписание
Проверяйте наличие бесконечных и непрерывных источников шага расчета (HDL Coder)Проверяйте исходные блоки с непрерывным шагом расчета.
Проверяйте на неподдерживаемые блоки (HDL Coder)Проверьте неподдерживаемые блоки для генерации HDL-кода.
Проверяйте на большие матричные операции (HDL Coder)Проверяйте на большие матричные операции.
Идентифицируйте несвязанные линии, входные порты и выходные портыПроверьте наличие несвязанных линий или портов.
Идентифицируйте отключенные библиотечные ссылкиМодель поиска отключенных библиотечных ссылок.
Идентифицируйте неразрешенные библиотечные ссылкиПоиск в модели неразрешенных библиотечных ссылок, где указанный библиотечный блок не может быть найден.
Проверьте настройки блока MATLAB Function (HDL Coder)Проверьте параметры, совместимые с HDL, для блоков MATLAB Function.
Проверьте настройки диаграммы Stateflow (HDL Coder)

Проверяйте HDL-совместимые настройки для Stateflow® Chart блоки.

Проверяйте блоки задержки, Unit Delay и удержания нулевого порядка для перехода скоростиИдентифицируйте Delay, Unit Delay или Zero-Order Hold блоки, которые используются для перехода скорости. Замените эти блоки фактическими блоками Rate Transition.
Проверьте неподдерживаемый класс памяти для сигнальных объектов (HDL Coder)Проверяйте, является ли класс памяти объекта сигнала 'ExportedGlobal' или 'ImportedExtern' или 'ImportedExternPointer'
Проверьте расширение файла (HDL Coder)Проверьте расширения файлов VHDL, содержащих сущности.
Проверяйте соглашения об именовании (HDL Coder)Проверьте стандартные ключевые слова, используемые инструментами EDA.
Проверяйте имена подсистем/портов верхнего уровня (HDL Coder)Проверяйте имена модулей/объектов верхнего уровня и портов.
Проверяйте имена модулей/сущностей (HDL Coder)Проверяйте имена модулей/объектов.
Проверяйте имена сигналов и портов (HDL Coder)Проверяйте длину сигнала и имя порта.
Проверьте имена файлов пакета (HDL Coder)Проверьте имя файла, содержащего пакеты.
Проверяйте дженерики (HDL Coder)Проверьте дженерики в подсистеме верхнего уровня.
Проверяйте часы, сбрасывайте и активируйте сигналы (HDL Coder)Проверьте соответствие имен для синхроимпульсов, сбросов и разрешающих сигналов.
Проверьте имя архитектуры (HDL Coder)Проверьте имя архитектуры VHDL в сгенерированном HDL-коде.
Проверяйте сущность и архитектуру (HDL Coder)Проверьте, описаны ли сущность и архитектура VHDL в одном файле.
Проверяйте настройки синхроимпульса (HDL Coder)Проверяйте ограничения на синхросигналах.
Проверьте модель на наличие иностранных символовПоиск в модели неразрешенных библиотечных ссылок, где указанный библиотечный блок не может быть найден.
Проверьте глобальную настройку сброса для устройств Xilinx и Altera (HDL Coder)Проверьте настройку асинхронного сброса для Altera® устройства и установка синхронного сброса для Xilinx® устройств.
Проверьте настройку встроенных строений (HDL Coder)Проверьте, есть ли у вас InlineConfigurations включен.
Проверяйте алгебраические циклы (HDL Coder)Проверьте модель на алгебраические циклы.
Проверьте настройки визуализации (HDL Coder)Проверьте модель на отображение настройки: типы данных портов и шага расчета расцветки.
Проверяйте настройку балансировки задержки (HDL Coder)Проверка задержек сальдо включена.

Проверьте параметры модели, подходящие для генерации HDL-кода (HDL Coder)

Проверьте параметры модели, настроенные для генерации HDL-кода.
Проверяйте на двойные типы данных в модели с Native Floating Point (HDL Coder)Проверяйте на double типы данных в модели.
Проверяйте блоки преобразования типов данных с несовместимыми настройками (HDL Coder)Проверяйте режим преобразования блоков Data Type Conversion.
Проверяйте на использование HDL- блока (HDL Coder)Проверяйте, HDL Reciprocal блоки не используют типы с плавающей точкой.
Проверяйте использование блоков реляционных операторов (HDL Coder)Проверяйте, Relational Operator блоки, которые используют типы с плавающей точкой, имеют логические выходы.
Проверяйте неподдерживаемые блоки с собственной плавающей точкой (HDL Coder)Проверьте неподдерживаемые блоки с собственной плавающей точкой.
Проверяйте блоки, которые имеют ненулевую выходную задержку (HDL Coder)Проверяйте блоки, которые имеют ненулевую выходную задержку с собственной плавающей точкой.
Проверяйте блоки с ненулевой ошибкой ulp (HDL Coder)Проверяйте блоки, которые имеют ненулевую ошибку ulp с собственной плавающей точкой.
Проверяйте на наличие одиночных типов данных в модели (HDL Coder)Проверяйте на single типы данных в модели.
Проверяйте начальные условия Enabled и Triggered подсистем (HDL Coder)Проверяйте начальное условие Enabled и Triggered подсистем.
Проверьте наличие недопустимой подсистемы верхнего уровня (HDL Coder)Проверьте наличие подсистем, которые не могут быть на верхнем уровне для генерации HDL-кода.

Похожие темы