exponenta event banner

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

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

Чтобы проверить соответствие стандартам DO, откройте мастер модели и выполните проверки в меню «По задаче» > «Стандарты моделирования для DO-254».

Для получения информации о 254 Соображений программного обеспечения в Airborne Systems и Сертификации оборудования и связанных стандартов, посмотрите Радио-Техническую Комиссию для Аэронавтики (RTCA).

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

Ниже приведены проверки High-Integrity System Modeling, которые применимы для стандартов DO-178C/DO-331.

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

Для проверки соответствия модели или подсистемы выбранным аспектам стандарта безопасности High Integrity System Model запустите Model Advisor.

Чтобы проверить соответствие стандартам High Integrity System Model, выполните проверки высокой целостности из меню По задаче > Стандарты моделирования для DO-254 > High-Integrity Systems

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

Проверка модели системы с высокой целостностьюПрименимые рекомендации по моделированию систем с высокой целостностью
Проверка несогласованности методов векторной индексацииhisl_0021: Согласованный метод векторной индексации
Проверка блоков вариантов с активным параметром «Generate preprocessor conditionals»hisl_0023: Проверка блоков вариантов
Проверка корневых входов с отсутствующими свойствамиhisl_0024: Определение интерфейса ввода
Проверка наличия блоков Relational Operator, приравнивающих типы с плавающей запятойhisl_0017: Использование блоков, вычисляющих реляционные операторы (2)
Проверка использования блоков реляционного оператораhisl_0016: Использование блоков, вычисляющих реляционные операторы
Проверка использования блоков логических операторовhisl_0018: Использование блока логического оператора
Проверка блоков, зависящих от времени образцаhisl_0007: Использование подсистем итератора или итератора
Проверка параметров оптимизации сокращения блоков, связанных с безопасностьюhisl_0046: Параметры конфигурации > Цель моделирования > Сокращение блоков
Проверка использования блоков Abshisl_0001: Использование блока Abs
Проверка использования блоков назначенияhisl_0029: Использование блоков назначения
Проверка корневых входов с отсутствующими определениями диапазоновhisl_0025: Расчетная минимальная/максимальная спецификация входных интерфейсов
Проверка корневых выходов с отсутствующими определениями диапазоновhisl_0026: Расчетная минимальная/максимальная спецификация выходных интерфейсов
Проверьте диаграммы потока состояний на наличие путей перехода, пересекающих параллельные границы состоянийhisf_0013: Использование переходных путей (пересекающих параллельные границы состояний)
Проверка диаграмм потока состояний для упорядочения состояний и переходовhisf_0002: Заданное пользователем состояние/порядок выполнения перехода
Проверка параметров отладки Stateflowhisf_0011: Параметры отладки Stateflow
Проверка диаграмм Stateflow для однозначно определенных объектов данныхhisl_0061: Уникальные идентификаторы для ясности
Проверка использования операций смены для данных Stateflowhisf_0064: Операции Shift для данных Stateflow для улучшения соответствия кода
Проверка диаграмм Stateflow для унарных операторовhisf_0211: Защита от использования унарных операторов в картах Stateflow для улучшения соответствия кода
Проверка строгой типизации данных с помощью Simulink I/Ohisf_0009: Сильная типизация данных (граница Simulink и Stateflow)
Проверка сообщений анализатора кода MATLABhiml_0004: Рекомендации анализатора кода MATLAB для создания кода
Проверка параметров ссылок на модели, связанные с безопасностьюhisl_0037: Параметры конфигурации > Ссылка на модель
Проверка параметров диагностики, связанной с безопасностьюhisl_0302: Параметры конфигурации > Диагностика > Валидность данных > Параметры
Проверка параметров диагностики, связанных с безопасностью, на предмет преобразования типовhisl_0309: Параметры конфигурации > Диагностика > Преобразование типов
Проверка параметров диагностики, связанных с безопасностью, на наличие сигнальных соединенийhisl_0306: Параметры конфигурации > Диагностика > Связность > Сигналы
Проверьте параметры диагностики, связанные с безопасностью, для подключения шиныhisl_0307: Параметры конфигурации > Диагностика > Подключение > Шины
Проверка параметров диагностики, связанных с безопасностью, для инициализации моделиhisl_0304: Параметры конфигурации > Диагностика > Валидность данных > Инициализация модели
Проверка параметров диагностики, связанных с безопасностью, для ссылок на моделиhisl_0310: Параметры конфигурации > Диагностика > Привязка модели
Проверка параметров диагностики, связанных с безопасностью, для сохраненияhisl_0036: Параметры конфигурации > Диагностика > Сохранение
Проверка параметров диагностики, связанных с безопасностью, для потока состоянийhisl_0311: Параметры конфигурации > Диагностика > Поток состояния
Проверка имен объектов моделиhisl_0032: Имена объектов модели
Проверка элементов модели, не связанных с требованиямиhisl_0070: Размещение связей требований в модели
Проверка неподходящего использования путей переходаhisf_0014: Использование переходных путей (проходящих через состояния)
Проверка использования блока Bitwise Operatorhisl_0019: Использование побитовых операций
Проверка типов данных для блоков с индексными сигналамиhisl_0022: Выбор типа данных для индексных сигналов
Проверка имени файла моделиhisl_0031: Имена файлов модели
Проверка шаблонов/elseif/else в функциональных блоках MATLABhiml_0006: MATLAB код, если/elseif/else шаблоны
Проверка операторов переключения в функциональных блоках MATLABhiml_0007: кодовое переключение MATLAB/регистр/другие шаблоны
Проверка глобальных переменных в графических функцияхhisl_0062: Глобальные переменные в графических функциях
Проверка длины пользовательских имен объектовhisl_0063: Длина пользовательских имен объектов для улучшения соответствия MISRA C:2012
Проверка использования условно выполненных подсистемhisl_0012: Использование условно выполненных подсистем
Проверка использования стандартных заголовков функций MATLABhiml_0001: Использование стандартных заголовков функций MATLAB
Проверка использования реляционных операторов в функциональных блоках MATLABhiml_0008: типы данных реляционного оператора кода MATLAB
Проверка использования операторов равенства в функциональных блоках MATLABhiml_0009: код MATLAB с равными/не равными реляционными операторами
Проверка использования логических операторов и функций в функциональных блоках MATLABhiml_0010: код MATLAB с логическими операторами и функциями
Проверка именования портов в диаграммах Stateflowhisf_0016: Имена портов Stateflow
Проверка области видимости объектов данных Stateflowhisf_0017: Область объекта данных Stateflow
Проверка использования блоков усиленияhisl_0066: Использование блоков усиления
Проверка использования побитовых операций в диаграммах Stateflowhisf_0003: Использование побитовых операций
Проверка типа данных переменных управления контуромhisl_0102: Тип данных переменных управления контуром для улучшения соответствия MISRA C:2012

Проверка помощника по коду HDL

Помощник по коду HDL и консультант по моделям проверяют в HDL Coder™ верифицируют и обновляют модель или подсистему Simulink ® на совместимость с генерацией кода HDL. Помощник по кодированию выполняет следующие проверки:

  • Параметры конфигурации модели

  • Настройки портов и подсистем

  • Блоки и параметры блоков

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

  • Руководство по отраслевым стандартам

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

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

Проверьте параметры, совместимые с HDL, для блоков диаграммы Stateflow ®.

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

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

Проверьте параметры модели, настроенные для генерации кода HDL.
Проверка двойных типов данных в модели с собственной плавающей точкой (кодер HDL)Проверка для double типы данных в модели.
Проверка наличия блоков преобразования типов данных с несовместимыми настройками (кодер HDL)Проверьте режим преобразования блоков преобразования типов данных.
Проверка использования блока ЛПВП (кодер ЛПВП)Проверьте, что взаимные блоки HDL не используют типы с плавающей запятой.
Проверка использования блока реляционного оператора (кодер HDL)Проверьте, имеют ли логические выходы блоки Relational Operator, использующие типы с плавающей запятой.
Проверка неподдерживаемых блоков с собственной плавающей точкой (кодер HDL)Проверьте наличие неподдерживаемых блоков с собственной плавающей точкой.
Проверка блоков с ненулевой задержкой вывода (кодер HDL)Проверьте наличие блоков с ненулевой задержкой вывода с собственной плавающей запятой.
Проверка блоков с ненулевой ошибкой ulp (кодер HDL)Проверьте наличие блоков с ненулевой ошибкой ulp с собственной плавающей точкой.
Проверка отдельных типов данных в модели (кодер HDL)Проверка для single типы данных в модели.
Проверка начальных состояний включенных и запускаемых подсистем (кодер ЛВП)Проверить исходное состояние включенной и срабатывающей подсистем.
Проверка недопустимой подсистемы верхнего уровня (кодер HDL)Проверьте наличие подсистем, которые не могут находиться на верхнем уровне для генерации кода HDL.

Связанные темы