Модели с избыточными шаблонами моделирования приводят верификацию кода к сбою. При генерации кода Simulink® Coder™ устраняет избыточную функциональность блока. Если это устранение приводит к структурному изменению сгенерированного кода, инспекционных сбоев. Например:
Блоки switch с входными параметрами от тех же локальных сигналов. switch 3
блок устраняется в сгенерированном коде. Блоки switch switch 1
и switch 2
не устраняются, потому что они соединяются с корневым импортом. Simulink Code Inspector™ сообщает, что он как Не пройдено проверяет.
Блок чтения хранилища данных, соединенный с хранилищем данных, пишет блок. Оба Data Store Read
и Data Store Write1
блоки устраняются в сгенерированном коде. Simulink Code Inspector сообщает о состоянии Warning.
Минимакс блокируется с входными параметрами от тех же локальных сигналов. Блок сравнивает две эквивалентных стоимости, приводящие к if
оператор с пустым телом в сгенерированном коде. Simulink Code Inspector сообщает, что он как Не пройдено проверяет.
Если ваша модель содержит блоки с постоянными неличными выходными параметрами, модель может привести верификацию кода к сбою. Результат является Отказавшим, чтобы проверить.
В этом примере, Math Function
блок фиксируется в бесконечности. Несмотря на то, что Simulink Coder генерирует код для модели, сбоев верификации кода.
Если ваша модель содержит подсистемы действия, и выходные параметры не соединяются с одним блоком слияния, модель может привести верификацию кода к сбою. Результат является Отказавшим, чтобы проверить.
В этом примере существует две подсистемы действия, каждый с выходом, соединенным с блоком усиления. Сбои верификации кода.
Чтобы передать верификацию кода, рассмотрите соединение выхода всех подсистем действия с одним блоком слияния, как показано ниже. Simulink Code Inspector может затем проверить модель.
Ваша модель может привести верификацию кода к сбою, если это содержит многопортовый блок switch с обоими:
Больше чем один вход от того же локального сигнала.
Выведите к локальному сигналу.
Сгенерированный код может иметь операторов case оператора switch с, проваливаются операторы выбора. Результат является Отказавшим, чтобы проверить.
В этом примере, Multiport Switch
блокируйте входные порты 1, и 3 соединяются с тем же локальным сигналом. Сбои верификации кода.
Модели с Assignment, Selector или 2D-inport блоками Multiport Switch могут инициировать оптимизацию, которая изменяет выбор индекса, чтобы избежать копий данных в сгенерированном коде. В этом примере, OneBased
Многопортовый блок switch имеет два импорта. Gain5
блок умножает сигнал импортировать 2:
Во время генерации кода оптимизация перемещает Gain5
избегать данных копирует в сгенерированном коде:
Сбои верификации кода.
Если ваша модель отвечает каждому из следующих условий, верификации кода сбоя силы модели:
Модель содержит блок модели - ссылки.
Блок модели - ссылки имеет один выходной порт, который отключен.
Управление прототипом функции используется в блоке модели - ссылки, приводящем к порту возврата, заданному как отключенный выходной порт.