exponenta event banner

Ограничения параметров конфигурации

Решающее устройство

ПараметрОграничениеФАТАЛЬНЫЙ/нефатальныйПроверка совместимости
Тип (SolverType)Необходимо установить значение Fixed-step.НеокончательныйПроверка параметров решателя > Проверка параметров типа
Решатель (Solver)Необходимо установить значение discrete (no continuous states) (эквивалентно FixedStepDiscrete указано в командной строке).НеокончательныйПроверка параметров решателя > Проверка параметров решателя
Периодическое ограничение по времени выборки (SampleTimeConstraint)Необходимо установить значение Unconstrained или Ensure sample time independent.НеокончательныйПроверить параметры решателя > Проверить параметр «Периодическое ограничение времени образца»
Рассматривать каждую дискретную скорость как отдельную задачу (EnableMultiTasking)Должно быть выбрано (задано значение on) для модели с несколькими дискретными скоростями.НеокончательныйУстановите флажок Рассматривать каждую дискретную скорость как отдельную настройку задачи > Проверить настройку «Рассматривать каждую дискретную скорость как отдельную задачу»
Автоматически обрабатывать переход скорости для передачи данных (AutoInsertRateTranBlk)Должен быть очищен.НеокончательныйПроверить параметры решателя > Проверить параметр «Автоматически обрабатывать переход скорости передачи данных»
Разрешить одновременное выполнение задач на цели (ConcurrentTasks)Должен быть очищен. Этот флажок отображается только при преобразовании существующего набора конфигурации в набор для параллельного выполнения.НеокончательныйПроверить параметры решателя > Проверить параметр «Разрешить одновременное выполнение задач на целевом объекте»

Импорт/экспорт данных

ПараметрОграничениеФАТАЛЬНЫЙ/нефатальныйПроверка совместимости
Исходное состояние (LoadInitialState)Необходимо очистить (установить значение off).НеокончательныйПроверить параметры импорта/экспорта данных > Проверить параметр «Начальное состояние»

Математика и типы данных

ПараметрОграничениеФАТАЛЬНЫЙ/нефатальныйПроверка совместимости
Реализовать логические сигналы в виде булевых данных (против двойных) (BooleanDataType)Должно быть выбрано (задано значение on).НеокончательныйПроверка параметров математики и типа данных > Проверка настройки «Реализовать логические сигналы как логические данные (в сравнении с двойными)»

Диагностика

ПараметрОграничениеФАТАЛЬНЫЙ/нефатальныйПроверка совместимости
Разрешить спецификацию символьного размера (AllowSymbolicDim)Должен быть сброшен (выключен).НеокончательныйПроверить параметры диагностики > Проверить параметр «Разрешить спецификацию символьных размеров»

Диагностика: Время выборки

ПараметрОграничениеФАТАЛЬНЫЙ/нефатальныйПроверка совместимости
Многозадачный переход скорости (MultiTaskRateTransMsg)Необходимо установить значение error.НеокончательныйПроверка параметров диагностики > Проверка параметра «Многозадачный переход скорости»
Многозадачная условно выполненная подсистема (MultiTaskCondExecSysMsg)Необходимо установить значение error.НеокончательныйПроверка параметров диагностики > Проверка параметра «Многозадачная условно выполненная подсистема»

Диагностика: Достоверность данных

ПараметрОграничениеФАТАЛЬНЫЙ/нефатальныйПроверка совместимости
Обнаружить понижение (ParameterDowncastMsg)Необходимо установить значение error.НеокончательныйПроверить параметры диагностики > Проверить параметр «Обнаружить понижение»
Параметры > Обнаружение переполнения (ParameterOverflowMsg)Необходимо установить значение error.НеокончательныйПроверить параметры диагностики > Проверить параметр «Обнаружить переполнение»
Сигналы > Заворачивать при переполнении (IntegerOverflowMsg)Необходимо установить значение error.НеокончательныйПроверить параметры диагностики > Проверить параметр «Обнаружить переполнение»
Насыщение при переполнении (IntegerSaturationMsg)Необходимо установить значение error.НеокончательныйПроверьте параметры диагностики > Проверьте параметр «Satrate on overflow» (Насыщение при переполнении)
Обнаружить недолив (ParameterUnderflowMsg)Необходимо установить значение error.НеокончательныйПроверить параметры диагностики > Проверить параметр «Обнаружить неполноту»
Обнаружить потерю настраиваемости (ParameterTunabilityLossMsg)Необходимо установить значение error.НеокончательныйПроверить параметры диагностики > Проверить параметр «Обнаружить потерю настраиваемости»
Обнаружение неполной инициализации (UnderspecifiedInitializationDetection)Необходимо установить значение Simplified. Настройка модели для инициализации начальных условий блока с использованием упрощенного поведения может улучшить согласованность результатов модели.НеокончательныйПроверить параметры диагностики > Проверить параметр «Обнаружение неполной инициализации»
Многозадачное хранилище данных (MultiTaskDSMMsg)Необходимо установить значение error.НеокончательныйПроверить параметры диагностики > Проверить параметр «Многозадачное хранилище данных»

Диагностика: Подключение

ПараметрОграничениеФАТАЛЬНЫЙ/нефатальныйПроверка совместимости
Сигнал шины, обрабатываемый как вектор (StrictBusMsg)Необходимо установить значение error (эквивалентно ErrorOnBusTreatedAsVector указано в командной строке).ФАТАЛЬНЫЙПроверка параметров диагностики > Проверка сигнала шины, обрабатываемого как векторная настройка
Сигналы, не относящиеся к шине, рассматриваются как сигналы шины (NonBusSignalsTreatedAsBus)Необходимо установить значение error.ФАТАЛЬНЫЙПроверить настройки диагностики > Проверить настройку «Сигналы, не относящиеся к шине, обрабатываемые как сигналы шины»

Диагностика: Поток состояния

ПараметрОграничениеФАТАЛЬНЫЙ/нефатальныйПроверка совместимости
Неожиданное обратное отслеживание (SFUnexpectedBacktrackingDiag)Необходимо установить значение error.НеокончательныйПроверить параметры диагностики > Проверить параметр «Непредвиденное обратное отслеживание»
Недопустимый доступ к входным данным при инициализации диаграммы (SFInvalidInputDataAccessInChartInitDiag)Необходимо установить значение error.НеокончательныйПроверить параметры диагностики > Проверить параметр «Недопустимый доступ к входным данным при инициализации диаграммы»
Нет безусловных переходов по умолчанию (SFNoUnconditionalDefaultTransitionDiag)Необходимо установить значение error.НеокончательныйПроверить параметры диагностики > Проверить параметр «Нет безусловных переходов по умолчанию»
Переход за пределы естественного родителя (SFTransitionOutsideNaturalParentDiag)Необходимо установить значение error.НеокончательныйПроверить параметры диагностики > Проверить параметр «Переход вне естественного родителя»
Недоступный путь выполнения (SFUnreachableExecutionPathDiag)Необходимо установить значение error.НеокончательныйПроверить параметры диагностики > Проверить параметр «Недоступный путь выполнения»
Неориентированные трансляции событий (SFUndirectedBroadcastEventsDiag)Необходимо установить значение error.НеокончательныйПроверить параметры диагностики > Проверить параметр «Неназначенные широковещательные рассылки событий»
Действие перехода, указанное перед действием условия (SFTransitionActionBeforeConditionDiag)Необходимо установить значение error.НеокончательныйПроверить параметры диагностики > Проверить параметр «Действие перехода, указанное перед действием условия»

Внедрение аппаратных средств

ПараметрОграничениеФАТАЛЬНЫЙ/нефатальныйПроверка совместимости
Количество битов: символ (ProdBitPerChar)Необходимо установить значение 8.НеокончательныйПроверка параметров реализации оборудования > Проверка параметров char
Количество битов: короткое (ProdBitPerShort)Необходимо установить значение 16.НеокончательныйПроверка параметров реализации оборудования > Проверка параметров «short»
Количество битов: int (ProdBitPerInt)Необходимо установить значение 32.НеокончательныйПроверить параметры реализации оборудования > Проверить параметр «int»
Количество битов: long (ProdBitPerLong)Необходимо установить значение 32.НеокончательныйПроверка параметров реализации оборудования > Проверка параметра «long»
Количество битов: float (ProdBitPerFloat)Необходимо установить значение 32.НеокончательныйПроверьте параметры реализации оборудования > Проверьте параметр float
Количество битов: двойное (ProdBitPerDouble)Необходимо установить значение 64.НеокончательныйПроверьте параметры реализации оборудования > Проверьте параметр double
Количество битов: собственный (ProdWordSize)Необходимо установить значение 32.НеокончательныйПроверка параметров реализации оборудования > Проверка параметров «» native
Количество битов: указатель (ProdBitPerPointer)Необходимо установить значение 32.НеокончательныйПроверить параметры реализации оборудования > Проверить параметр «указатель»
Округления целочисленного деления со знаком (ProdIntDivRoundTo)Необходимо установить значение Zero.НеокончательныйПроверьте параметры реализации аппаратного обеспечения > Проверьте параметр «Подписанные целочисленные округи деления до»
Сдвиг вправо на целое число со знаком как арифметический сдвиг (ProdShiftRightIntArith)Должно быть выбрано (задано значение on).НеокончательныйПроверьте параметры реализации аппаратного обеспечения > Проверьте параметр «Shift right on a signed integer as arithmetic shift»
Тестовое оборудование совпадает с производственным (ProdEqTarget)Должно быть выбрано (задано значение on).НеокончательныйПроверьте параметры реализации оборудования > Проверьте, что параметр «Тестировать оборудование совпадает с параметром для производственного оборудования»
  • Поставщик устройства

  • Тип устройства (ProdHWDeviceType)

Не должно быть задано значение ASIC/FPGA.НеокончательныйПроверьте параметры реализации оборудования > Проверьте параметр «Поставщик устройства - > Тип устройства»
Поддержка длинная (ProdLongLongMode)Не должен быть выбран (значение off).НеокончательныйПроверьте параметры реализации аппаратного обеспечения > Проверьте параметр «Долго поддерживать»

Создание кода: Общие

ПараметрОграничениеФАТАЛЬНЫЙ/нефатальныйПроверка совместимости
Системный целевой файл (кодер Simulink) (SystemTargetFile)Необходимо установить значение ert.tlc или системный целевой файл для целевого файла, производного от ERT.ФАТАЛЬНЫЙПроверить настройку целевого файла системы
TLCOptionsНеобходимо установить значение '' (unspecified) или -aMaxStackVariableSize=inf.НеокончательныйПроверить параметры создания кода > Проверить параметры TLC

Создание кода: оптимизация

ПараметрОграничениеФАТАЛЬНЫЙ/нефатальныйПроверка совместимости
Упрощение индексации массива (встроенный кодер) (StrengthReduction)Необходимо очистить (установить значение off).НеокончательныйПроверить параметры создания кода > Проверить параметр «Упростить индексирование массива»
Упакуйте логические данные в битовые поля (встроенный кодер) (BooleansAsBitfields)Необходимо очистить (установить значение off).НеокончательныйПроверить параметры создания кода > Проверить параметр «Упаковать логические данные в битовые поля»
Поведение параметров по умолчанию (Simulink Coder) (DefaultParameterBehavior)Для ссылочных моделей необходимо задать значение Inlined.НеокончательныйПроверка параметров создания кода > Проверка параметров по умолчанию
Порог разматывания шлейфа (кодер Simulink) (RollThreshold)Необходимо установить значение, которое не приводит к частичному развертыванию циклов в созданном коде.НеокончательныйПроверка установки порога разгрузки цикла > Проверка установки порога разгрузки цикла
Пропускать выходы многоразовой подсистемы как: (Встроенный кодер) (PassReuseOutputArgsAs)Необходимо установить значение Structure reference если ссылочная модель имеет корневые выходы с классом хранения, отличным от auto.НеокончательныйПроверка наличия блоков корневого исходящего порта, имеющих неавтоматический класс хранения > Убедитесь, что класс хранения корневого исходящего трафика поддерживается
Использовать битсеты для сохранения конфигурации состояния (Simulink Coder) (StateBitsets)Необходимо очистить (установить значение off).НеокончательныйПроверить настройки создания кода > Проверить настройку «Использовать битсеты для сохранения конфигурации состояния»
Использовать битовые наборы для хранения булевых данных (Simulink Coder) (DataBitsets)Необходимо очистить (установить значение off).НеокончательныйПроверить параметры создания кода > Проверить параметр «Использовать битовые наборы для хранения логических данных»
Оптимизация с использованием указанных минимального и максимального значений (Embedded Coder) (UseSpecifiedMinMax)Необходимо очистить (установить значение off).НеокончательныйПроверить настройки создания кода > Проверить настройку «Оптимизировать с использованием указанных минимальных и максимальных значений»
Удаление кода из преобразования с плавающей запятой в целое число, которое переносит значения за пределы диапазона (Simulink Coder) (EfficientFloat2IntCast)Должно быть выбрано (задано значение on).НеокончательныйПроверить параметры создания кода > Проверить параметр «Удалить код из преобразования с плавающей запятой в целое число, переносящий значения за пределы диапазона»
Удаление кода из преобразования с плавающей запятой в целое с насыщением, которое отображает NaN в ноль (Simulink Coder) (EfficientMapNaN2IntZero)Необходимо очистить (установить значение off).НеокончательныйПроверить параметры создания кода > Проверить параметр «Удалить код из преобразования с плавающей запятой в целое с насыщением, отображающим NaN в ноль»
Удалите код, защищающий от арифметических исключений деления (встроенный кодер) (NoFixptDivByZeroProtection)Необходимо очистить (установить значение off).НеокончательныйПроверить параметры создания кода > Проверить параметр «Удалить код, защищающий от исключений арифметического деления»
AdvancedOptControlНеобходимо установить значение -SLCI. Этот параметр отключает оптимизации, несовместимые с Simulink ® Code Inspector™. При использовании этого параметра созданный код может отличаться от кода, созданного без '-SLCI' установка. Однако различия не влияют на поведение сгенерированного кода.НеокончательныйПроверить параметры создания кода > Проверить параметр «Отключить несовместимые оптимизации»
Оператор для представления блоков Bitwise и Logical Operator (встроенный кодер) (BitwiseOrLogicalOp)Необходимо установить значение Same as modeled или Bitwise operator.НеокончательныйCheck code generation settings > Verify 'Operator to presenting Bitwise and Logical Operator (Проверить параметры генерации кода > Проверить, что оператор представляет

Создание кода: Комментарии

ПараметрОграничениеФАТАЛЬНЫЙ/нефатальныйПроверка совместимости
Включить комментарии (Simulink Coder) (GenerateComments)Должно быть выбрано (задано значение on). Инспектор кода Simulink анализирует автоматически созданные комментарии для получения информации об отслеживании данных модели.ФАТАЛЬНЫЙПроверить параметры создания кода > Проверить параметр «Включить комментарии»

Создание кода: идентификаторы

ПараметрОграничениеФАТАЛЬНЫЙ/нефатальныйПроверка совместимости
Создать скалярный встроенный параметр как (встроенный кодер) (InlinedPrmAccess)Необходимо установить значение Literals.НеокончательныйПроверить параметры создания кода > Проверить параметр «Создать скалярный встроенный параметр как»
Именование сигналов (встроенный кодер) (SignalNamingRule)Необходимо установить значение None.НеокончательныйПроверить параметры генерации кода > Проверить параметры именования сигналов
Именование параметров (встроенный кодер) (ParamNamingRule)Необходимо установить значение None.НеокончательныйПроверка параметров создания кода > Проверка параметров именования

Создание кода: Пользовательский код

ПараметрОграничениеФАТАЛЬНЫЙ/нефатальныйПроверка совместимости
Исходный файл (кодер Simulink) (CustomSourceCode)Должен быть не указан (значение '').НеокончательныйПроверить параметры создания кода > Проверить параметр «Исходный файл»
Файл заголовка (Simulink Coder) (CustomHeaderCode)Должен быть не указан (значение '').НеокончательныйПроверка параметров создания кода > Проверка параметров «Header file»
Инициализация функции (Simulink Coder) (CustomInitializer)Должен быть не указан (значение '').НеокончательныйПроверить параметры создания кода > Проверить параметр «Инициализация функции»
Функция завершения (кодер Simulink) (CustomTerminator)Должен быть не указан (значение '').НеокончательныйПроверить параметры создания кода > Проверить параметр «Завершить функцию»

Создание кода: интерфейс

ПараметрОграничениеФАТАЛЬНЫЙ/нефатальныйПроверка совместимости
Использовать динамическое выделение памяти для инициализации модели (встроенный кодер) (GenerateAllocFcn)Необходимо очистить (установить значение off).НеокончательныйПроверить параметры создания кода > Проверить параметр «Использовать динамическое выделение памяти для инициализации модели»
Библиотека замены кода (Simulink Coder) (CodeReplacementLibrary)Необходимо установить значение None. Можно также использовать поддерживаемые функции и операции в библиотеках замены кода.НеокончательныйПроверить параметры создания кода > Проверить параметр «Библиотека замены кода»
Стандартная математическая библиотека (Simulink Coder) (TargetLangStandard)Необходимо установить значение C89/C90 (ANSI) или C99 (ISO). НеокончательныйПроверка параметров создания кода > Проверка параметров «Стандартная математическая библиотека»
Размещение совместно используемого кода (Simulink Coder) (UtilityFuncGeneration)Необходимо установить значение Shared location. Использование общего расположения для служебных функций, макросов и определяемых пользователем типов данных способствует отладке и отслеживанию созданного кода.НеокончательныйПроверить параметры создания кода > Проверить параметр «Размещение общего кода»
Поддержка: неграничные числа (Simulink Coder) (SupportNonFinite)Необходимо очистить (установить значение off).НеокончательныйПроверка параметров генерации кода > Проверка параметров «» non-finite numbers «»
Поддержка: абсолютное время (встроенный кодер) (SupportAbsoluteTime)Необходимо очистить (установить значение off).НеокончательныйПроверка параметров создания кода > Проверка параметров абсолютного времени
Классический интерфейс вызова (кодер Simulink) (GRTInterface)Необходимо очистить (установить значение off).НеокончательныйПроверка параметров генерации кода > Проверка параметров «Классический интерфейс вызова»
Функция одиночного вывода/обновления (Simulink Coder) (CombineOutputUpdateFcns)Должно быть выбрано (задано значение on).НеокончательныйПроверка параметров генерации кода > Проверка параметра «Single output/update function» (Функция одиночного вывода/обновления)
Требуется завершить функцию (встроенный кодер) (IncludeMdlTerminateFcn)Необходимо очистить (установить значение off).НеокончательныйПроверить параметры создания кода > Проверить параметр «Необходимо завершить функцию»
Удалить поле состояния ошибки в структуре данных модели в реальном времени (встроенный кодер) (SuppressErrorStatus)Должно быть выбрано (задано значение on). Это помогает предотвратить генерацию rtModel структура данных, которая не поддерживается для проверки кода.НеокончательныйПроверка параметров создания кода > Проверка значения «Удалить поле состояния ошибки в структуре данных модели в реальном времени»
Комбинировать структуры сигналов/состояний (встроенный кодер) (CombineSignalStateStructs)Необходимо очистить (установить значение off).НеокончательныйПроверить настройки генерации кода > Проверить настройку «Комбинировать структуры сигналов/состояний»
Компоновка массива (кодер Simulink) (ArrayLayout)Необходимо установить значение column-major.НеокончательныйПроверить параметры создания кода > Проверить параметры «» Макет массива
Ведение журнала файлов MAT (Simulink Coder) (MatFileLogging)Необходимо очистить (установить значение off).НеокончательныйПроверить параметры создания кода > Проверить параметр ведения журнала MAT-файла
Поддержка: сигналы переменного размера (встроенный кодер) (SupportVariableSizeSignals)Необходимо очистить (установить значение off).ФАТАЛЬНЫЙПроверить настройки генерации кода > Проверить настройку «сигналы переменного размера»
Создать C API для параметров (Simulink Coder) (RTWCAPIParams)Необходимо очистить (установить значение off).НеокончательныйПроверка параметров формирования кода > Проверка параметров
Генерировать C API для: сигналов (Simulink Coder) (RTWCAPISignals)Необходимо очистить (установить значение off).НеокончательныйПроверить настройки формирования кода > Проверить настройку «сигналы»
Создать C API для состояний (Simulink Coder) (RTWCAPIStates)Необходимо очистить (установить значение off).НеокончательныйПроверка параметров создания кода > Проверка параметров «состояния»
Создать C API для: ввода-вывода на корневом уровне (Simulink Coder) (RTWCAPIRootIO)Необходимо очистить (установить значение off).НеокончательныйПроверка параметров формирования кода > Проверка параметров ввода-вывода на корневом уровне
Внешний режим (кодер симулятора) (ExtMode)Необходимо очистить (установить значение off).НеокончательныйПроверить настройки формирования кода > Проверить настройку «Внешний режим»
Интерфейс ASAP2 (кодер Simulink) (GenerateASAP2)Необходимо очистить (установить значение off).НеокончательныйПроверка параметров формирования кода > Проверка параметров «ASAP2 interface»

Создание кода: проверка

ПараметрОграничениеФАТАЛЬНЫЙ/нефатальныйПроверка совместимости
Создать блок (встроенный кодер) (CreateSILPILBlock)Необходимо установить значение None.НеокончательныйПроверить параметры создания кода > Проверить параметр «Создать блок»
Время выполнения функции измерения (встроенный кодер) (CodeProfilingInstrumentation)Необходимо очистить (установить значение off).НеокончательныйПроверить параметры создания кода > Проверить параметр «Время выполнения функции измерения»

Создание кода: Стиль кода

ПараметрОграничениеФАТАЛЬНЫЙ/нефатальныйПроверка совместимости
Сохранить выражение условия в инструкции if (Embedded Coder) (PreserveIfCondition)Должно быть выбрано (задано значение on).НеокончательныйПроверить параметры создания кода > Проверить параметр «Сохранить выражение условия в операторе if»
Подавление генерации вариантов по умолчанию для инструкций Stateflow switch, если они недоступны (Embedded Coder) (SuppressUnreachableDefaultCases)Необходимо очистить (установить значение off).НеокончательныйПроверьте, что параметры настройки генерации объектного кода> Проверяют, 'Подавляют поколение случаев по умолчанию для заявлений выключателя Stateflow если недостижимая' настройка
Режимы литья (встроенный кодер) (CastingMode).Необходимо установить значение Nominal или Standards.НеокончательныйПроверка параметров генерации кода > Проверка параметров «Режимы литья»

Создание кода: Шаблоны

ПараметрОграничениеФАТАЛЬНЫЙ/нефатальныйПроверка совместимости
Создание примера основной программы (встроенный кодер) (GenerateSampleERTMain)Должно быть выбрано (задано значение on).НеокончательныйПроверить параметры создания кода > Проверить параметр «Создать пример основной программы»

Создание кода: размещение кода

ПараметрОграничениеФАТАЛЬНЫЙ/нефатальныйПроверка совместимости
Код блока перехода скорости (встроенный кодер) (RateTransitionBlockCode)Необходимо установить значение Inline.НеокончательныйПроверить параметры создания кода > Проверить параметр «Код блока перехода скорости»

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