Проверки модели на податливость стандарта 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 стандарты.

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

Можно проверять, что модель или подсистема выполняют выбранные аспекты Высокого стандарта безопасности Системной модели Целостности путем выполнения Model Advisor.

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

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

Высокие проверки системной модели целостностиПрименимые инструкции по моделированию систем повышенной надежности
Проверяйте на противоречивые векторные методы индексированияhisl_0021: Сопоставимый векторный метод индексирования
Проверяйте на различные блоки с, 'Генерируют условные выражения препроцессора', активныеhisl_0023: Верификация различных блоков
Проверяйте на корневой Inports с недостающими свойствамиhisl_0024: определение интерфейса Inport
Проверяйте на блоки Оператора отношения, которые приравнивают типы с плавающей точкойhisl_0017: Использование блоков, которые вычисляют операторы отношения (2)
Проверяйте использование блоков Оператора отношенияhisl_0016: Использование блоков, которые вычисляют операторы отношения
Проверяйте использование блоков Логического оператораhisl_0018: Использование блока Logical Operator
Контрольный образец зависящие от времени блокиhisl_0007: Использование Для Итератора или В то время как подсистемы Итератора
Проверяйте связанные с безопасностью настройки оптимизации сокращения блокаhisl_0046: Параметры конфигурации> Цель Симуляции> сокращение Блока
Проверяйте использование блоков Abshisl_0001: Использование блока Abs
Проверяйте использование блоков Присвоенияhisl_0029: Использование блоков Присвоения
Проверяйте на корневой Inports с недостающими определениями области значенийhisl_0025: Спроектируйте спецификацию min / макс. спецификацию входных интерфейсов
Проверяйте на корневые Выходные порты с недостающими определениями области значенийhisl_0026: Спроектируйте спецификацию min / макс. спецификацию выходных интерфейсов
Проверяйте диаграммы Stateflow на пути к переходу тот перекрестные параллельные государственные границыhisf_0013: Использование путей к переходу (пересекающий параллельные государственные границы)
Проверяйте диаграммы Stateflow на упорядоченное расположение состояний и переходовhisf_0002: заданный пользователями порядок выполнения состояния/перехода
Проверяйте параметры отладки Stateflowhisf_0011: настройки отладки Stateflow
Проверяйте диаграммы Stateflow на исключительно заданные объекты данныхhisl_0061: Уникальные идентификаторы для ясности
Проверяйте использование операций сдвига для данных Stateflowhisf_0064: Операции сдвига для данных Stateflow, чтобы улучшить податливость кода
Проверяйте диаграммы Stateflow на унарные операторыhisf_0211: Защитите от использования унарных операторов в диаграммах Stateflow, чтобы улучшить податливость кода
Проверяйте на сильный ввод данных с вводом-выводом Simulinkhisf_0009: Сильный ввод данных (Simulink и контур Stateflow)
Проверяйте код MATLAB сообщения Анализатораhiml_0004: код MATLAB рекомендации Анализатора для генерации кода
Проверяйте связанные с безопасностью настройки ссылки модели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: имена файлов Модели
Проверяйте if/elseif/else шаблоны в блоки MATLAB functionhiml_0006: код MATLAB, если / elseif / еще шаблоны
Проверяйте операторы switch в блоки MATLAB functionhiml_0007: переключатель кода MATLAB / случай / в противном случае шаблоны
Проверяйте глобальные переменные в графические функцииhisl_0062: Глобальные переменные в графических функциях
Проверяйте на длину пользовательских имен объектовhisl_0063: Длина пользовательских имен объектов, чтобы улучшить податливость MISRA C:2012
Проверяйте использование условно выполняемых подсистемhisl_0012: Использование условно выполняемых подсистем
Проверяйте использование стандартизированных заголовков функции MATLABhiml_0001: Использование стандартизированных заголовков функции MATLAB
Проверяйте использование операторов отношения в блоках MATLAB functionhiml_0008: типы данных оператора отношения кода MATLAB
Проверяйте использование операторов равенства в блоках MATLAB functionhiml_0009: код MATLAB с равным / не равняется операторам отношения
Проверяйте использование логических операторов и функций в блоках MATLAB functionhiml_0010: код MATLAB с логическими операторами и функциями
Проверяйте именование портов в диаграммах Stateflowhisf_0016: имена порта Stateflow
Проверяйте определение объема объектов данных Stateflowhisf_0017: определение объема объекта данных Stateflow
Проверяйте использование блоков Усиленияhisl_0066: Использование блоков Усиления
Проверяйте использование битовых операций в диаграммах Stateflowhisf_0003: Использование битовых операций
Проверяйте тип данных контрольных переменных циклаhisl_0102: Тип данных контрольных переменных цикла, чтобы улучшить податливость MISRA C:2012

Советник по вопросам HDL-кода проверки

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

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

  • Настройки Ports и Subsystem

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

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

  • Инструкции по промышленному стандарту

В следующей таблице перечислены Советника по вопросам HDL-кода проверки, которые поддерживаются 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, которые используются для перехода уровня. Замените эти блоки на фактические блоки Перехода Уровня.
Проверяйте на неподдерживаемый класс памяти для объектов сигнала (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-кода.
Проверяйте на двойные типы данных в модели с Нативной Плавающей точкой (HDL Coder)Проверяйте на double типы данных в модели.
Проверяйте на блоки Преобразования типа данных с несовместимыми настройками (HDL Coder)Проверяйте режим преобразования блоков Преобразования типа данных.
Проверяйте на использование блока HDL Reciprocal (HDL Coder)Проверяйте, что блоки HDL Reciprocal не используют типы с плавающей точкой.
Проверяйте на использование блока Relational Operator (HDL Coder)Проверяйте блоки Relational Operator, которые используют типы с плавающей точкой, имеют булевы выходные параметры.
Проверяйте на неподдерживаемые блоки с Нативной Плавающей точкой (HDL Coder)Проверяйте на неподдерживаемые блоки с собственным компонентом, с плавающей точкой.
Проверяйте на блоки, которые имеют ненулевую выходную задержку (HDL Coder)Проверяйте на блоки, которые имеют ненулевую выходную задержку с собственным компонентом, с плавающей точкой.
Проверяйте блоки с ненулевой ulp ошибкой (HDL Coder)Проверяйте на блоки, которые имеют ненулевую ulp ошибку с собственным компонентом, с плавающей точкой.
Проверяйте на один типы данных в модели (HDL Coder)Проверяйте на single типы данных в модели.
Проверяйте начальные условия Enabled и Triggered подсистем (HDL Coder)Проверяйте на начальное условие Enabled и Triggered подсистем.
Проверяйте на недопустимую подсистему верхнего уровня (HDL Coder)Проверяйте на подсистемы, которые не могут быть в верхнем уровне для генерации HDL-кода.

Похожие темы