Атрибут | Ограничение | КРИТИЧЕСКИЙ / Нефатальный | Проверка совместимости |
---|---|---|---|
Несвязанные объекты | Не должно быть несвязанных линий, входных портов или выходных портов в модели или подсистеме. Это помогает предотвратить мертвый код и скрытые наземные блоки. | Нефатальный | Check for unconnected objects in the model |
Функциональные технические требования | Модель не может задать пользовательских прототипов функции записи модели. Установка Configure arguments for Step function prototype в диалоговом окне Configure C Step Function Interface должна быть очищена. | Нефатальный | Check C Step Function Interface setting |
Условное входное выполнение ветви | Когда выполнение ветви входа Conditional параметра конфигурации выбрано:
| Нефатальный | Check conditional input branch execution setting |
Неподдерживаемые блоки | Не должно быть блоков в модели, которые не поддерживаются Simulink® Code Inspector™. | Нефатальный | Check for unsupported blocks |
Классы памяти для переменных рабочей области |
Модель не может сослаться на переменные рабочей области, которые не поддерживаются ни по одной из этих причин:
| Нефатальный | Check storage class for workspace variables |
GetSet пользовательские классы памяти для переменных рабочей области |
Для переменных рабочей области, которые используют
| Нефатальный | Check GetSet storage class for workspace variables |
Использование шагов расчета | Модель не может использовать непрерывный, асинхронный, явный дискретный раздел, управляемый данными, объединение, экспортировал дискретные, или переменные шаги расчета. | КРИТИЧЕСКИЙ | Check for sample times in the model> Check sample times |
Явные разделы | Модель не должна содержать явные разделы. | КРИТИЧЕСКИЙ | Check for sample times in the model> Check for explicit partitions |
Автоматическая вставка Преобразования Сигнала блокируется на сигналах, вводящих импорт блока | Автоматическая вставка блока Signal Conversion на сигнале, вводящем импорт блока, не поддерживается для инспекции кода. Это создает скрытый блок Signal Conversion, который не поддерживается для инспекции кода. | Нефатальный | Check for Signal Conversion blocks automatically inserted on signals entering block input ports> Verify no Signal Conversion blocks are automatically inserted on signals entering block inports |
Инструментирование фиксированной точки и сокращение блока оба выбранные | Одновременное использование инструментирования фиксированной точки и сокращение блока не поддерживаются для инспекции кода. | Нефатальный | Check for usage of fixed-point instrumentation> Verify usage of fixed-point instrumentation |
Корневые шаги расчета блока Outport | Корневые блоки Выходного порта не должны быть постоянными. Это ограничение препятствует тому, чтобы корневое присвоение выходного порта было перемещено в модель, инициализируют функцию, которая заставила бы функции модели приводить валидацию к сбою. | Нефатальный | Check usage of root Outport blocks> Verify sample times |
Корневая шина блока Output передающий метод | Корневой блок Outport, который передает шину родительской модели, должен передать шину как структуру. В противном случае программное обеспечение Simulink может вставить скрытый блок Signal Conversion в родительскую модель, которая не поддерживается для инспекции кода. Для каждого экземпляра, параметры блоков Выходного порта Output as nonvirtual bus in parent model (BusOutputAsStruct ) должен быть выбран. | Нефатальный | Check usage of root Outport blocks> Verify root Outports pass buses to parent models as structures |
Автоматический виртуальный к невиртуальному преобразованию шины | Автоматическое преобразование между виртуальными и невиртуальными шинами не поддерживается для инспекции кода. Это создает скрытый блок Signal Conversion, который не поддерживается для инспекции кода. | КРИТИЧЕСКИЙ | Check usage of buses> Check for automatic conversion between virtual to nonvirtual buses |
Блочные операции на шине | Невиртуальный блок не должен работать с виртуальной шиной, и блок Bus Assignment не должен работать с невиртуальной шиной. Это ограничение упрощает обработку шины, чтобы продвинуть трассируемость и удобочитаемость сгенерированного кода. | КРИТИЧЕСКИЙ | Check usage of buses> Verify that blocks in the model do not perform unsupported operations on a bus |
Замена типа данных | Заменяющие имена в таблице Data Type Replacement должны иметь тип Simulink.AliasType. | Нефатальный | Check data type replacement names |
Шаги расчета для модели, используемой в качестве цели модели-ссылки | Модель, используемая в качестве цели модели-ссылки, не должна иметь нескольких шагов расчета. | Нефатальный | Check for sample times in model used as model reference target |
Прокомментированные блоки | Модель не должна содержать блоки, которые комментируются. | Нефатальный | Check model for commented out blocks |
Имена функций для невстроенных подсистем с пустыми пустотой интерфейсами вызова функции | В модели невстроенные подсистемы с пустыми пустотой интерфейсами вызова функции должны использовать уникальные имена функций. | КРИТИЧЕСКИЙ | Check model for void_void subsystems that use the same function name |
Совместно использованный синтезировал локальные хранилища данных |
Вы не должны использовать объекты сигнала в рабочем пространстве модели, на которые ссылаются как синтезируемые локальные хранилища данных блоки Data Store Write или Data Store Read. | Нефатальный | Check for usage of synthesized local data stores |
Допускающие повторное использование подсистемы | Допускающие повторное использование подсистемы с тем же функциональным интерфейсом должны прибыть из тех же библиотечных блоков. | Нефатальный | Check model for reusable subsystems that use the same function interfaces |
Настройки Code Mapping | В Коде, Сопоставляющем Редактор, на вкладке Data Defaults под Code Mappings-C, каждая категория элемента модели должна использовать | Нефатальный | Check for unsupported Code Mapping settings |
Установка структуры папок генерации кода | В Настройках Simulink, на панели General, опция Code generation folder structure должна быть установлена в | КРИТИЧЕСКИЙ | Check the code generation folder structure for the model |
Графический отсортированный порядок | Скомпилированный черный список модели должен совпадать с графическим блоком отсортированный порядок. | Нефатальный | Check model for compiled and graphical block sorted order |
Настройки символов генерации кода для разделяемых утилит | Для контроля разделяемых утилит Локальные временные переменные (Embedded Coder) должны быть установлены в значение по умолчанию $N$M и Разделяемый сервисный формат идентификатора (Embedded Coder) должен быть установлен в значение по умолчанию $N$C . | Нефатальный | Check usage of shared utilities> Check code generation symbols settings for shared utils inspection |
Стандартная настройка библиотеки для разделяемых утилит | Для контроля разделяемых утилит Стандартная математическая библиотека (Simulink Coder) должна быть установлена в C89/C90 (ANSI) или C99 (ISO) . | Нефатальный | Check usage of shared utilities> Check library standard settings for shared utils inspection |
Параметры стиля кода для разделяемых утилит | Для контроля разделяемых утилит:
| Нефатальный | Check usage of shared utilities> Check code style settings for shared utils inspection |
Аргументы модели | Аргументы модели не должны иметь класса памяти. | Нефатальный | Check model arguments for storage classes |