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

Решатель

ПараметрОграничениеКРИТИЧЕСКИЙ / НефатальныйПроверка совместимости
Type (Simulink) (SolverType)Должен быть установлен в Fixed-step.НефатальныйCheck solver settings> Verify 'Type' setting
Solver (Simulink) (Solver)Должен быть установлен в discrete (no continuous states) (эквивалентный FixedStepDiscrete заданный в командной строке).НефатальныйCheck solver settings> Verify 'Solver' setting
Periodic sample time constraint (Simulink) (SampleTimeConstraint)Должен быть установлен в Unconstrained или Ensure sample time independent.НефатальныйCheck solver settings> Verify 'Periodic sample time constraint’ setting
Treat each discrete rate as a separate task (Simulink) (EnableMultiTasking)Должен быть выбран (набор к on) для модели с несколькими дискретными уровнями.НефатальныйCheck Treat each discrete rate as a separate task setting> Verify ‘Treat each discrete rate as a separate task’ setting
Automatically handle rate transition for data transfer (Simulink) (AutoInsertRateTranBlk)Должен быть очищен.НефатальныйCheck solver settings> Verify 'Automatically handle rate transition for data transfer’ setting
Allow tasks to execute concurrently on target (Simulink) (ConcurrentTasks)Должен быть очищен. Этот флажок параметра отображается, только если вы преобразуете существующую конфигурацию модели в одну для параллельного выполнения.НефатальныйCheck solver settings> Verify ‘Allow tasks to execute concurrently on target’ setting

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

ПараметрОграничениеКРИТИЧЕСКИЙ / НефатальныйПроверка совместимости
Initial state (Simulink) (LoadInitialState)Должен быть очищен (набор к off).НефатальныйCheck data import/export settings> Verify 'Initial state' setting

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

ПараметрОграничениеКРИТИЧЕСКИЙ / НефатальныйПроверка совместимости
Implement logic signals as Boolean data (vs. double) (Simulink) (BooleanDataType)Должен быть выбран (набор к on).НефатальныйCheck math and data type settings> Verify 'Implement logic signals as Boolean data (vs. double)' setting

Диагностика: 'SampleTime'

ПараметрОграничениеКРИТИЧЕСКИЙ / НефатальныйПроверка совместимости
Multitask rate transition (Simulink) (MultiTaskRateTransMsg)Должен быть установлен в error.НефатальныйCheck diagnostic settings> Verify 'Multitask rate transition' setting
Multitask conditionally executed subsystem (Simulink) (MultiTaskCondExecSysMsg)Должен быть установлен в error.НефатальныйCheck diagnostic settings> Verify 'Multitask conditionally executed subsystem' setting

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

ПараметрОграничениеКРИТИЧЕСКИЙ / НефатальныйПроверка совместимости
Detect downcast (Simulink) (ParameterDowncastMsg)Должен быть установлен в error.НефатальныйCheck diagnostic settings> Verify 'Detect downcast' setting
Parameters > Detect overflow (Simulink) (ParameterOverflowMsg)Должен быть установлен в error.НефатальныйCheck diagnostic settings> Verify 'Detect overflow' setting
Signals > Wrap on overflow (Simulink) (IntegerOverflowMsg)Должен быть установлен в error.НефатальныйCheck diagnostic settings> Verify 'Detect overflow' setting
Saturate on overflow (Simulink) (IntegerSaturationMsg)Должен быть установлен в error.НефатальныйCheck diagnostic settings> Verify 'Saturate on overflow‘ setting
Detect underflow (Simulink) (ParameterUnderflowMsg)Должен быть установлен в error.НефатальныйCheck diagnostic settings> Verify 'Detect underflow' setting
Detect loss of tunability (Simulink) (ParameterTunabilityLossMsg)Должен быть установлен в error.НефатальныйCheck diagnostic settings> Verify 'Detect loss of tunability' setting
Underspecified initialization detection (Simulink) (UnderspecifiedInitializationDetection)Должен быть установлен в Simplified. Конфигурирование модели, чтобы инициализировать начальные условия блока с помощью упрощенного поведения может улучшить непротиворечивость результатов модели.НефатальныйCheck diagnostic settings> Verify 'Underspecified initialization detection' setting
Detect write after write (Simulink) (WriteAfterWriteMsg)Должен быть установлен в EnableAllAsError.НефатальныйCheck diagnostic settings> Verify 'Detect write after write' setting
Multitask data store (Simulink) (MultiTaskDSMMsg)Должен быть установлен в error.НефатальныйCheck diagnostic settings> Verify 'Multitask data store’ setting

Диагностика: возможность соединения

ПараметрОграничениеКРИТИЧЕСКИЙ / НефатальныйПроверка совместимости
Bus signal treated as vector (Simulink) (StrictBusMsg)Должен быть установлен в error (эквивалентный ErrorOnBusTreatedAsVector заданный в командной строке).КРИТИЧЕСКИЙCheck diagnostic settings> Verify Bus signal treated as vector setting
Non-bus signals treated as bus signals (Simulink) (NonBusSignalsTreatedAsBus)Должен быть установлен в error.КРИТИЧЕСКИЙCheck diagnostic settings> Verify 'Non-bus signals treated as bus signals' setting

Диагностика: Stateflow

ПараметрОграничениеКРИТИЧЕСКИЙ / НефатальныйПроверка совместимости
Unexpected backtracking (Simulink) (SFUnexpectedBacktrackingDiag)Должен быть установлен в error.НефатальныйCheck diagnostic settings> Verify 'Unexpected backtracking' setting
Invalid input data access in chart initialization (Simulink) (SFInvalidInputDataAccessInChartInitDiag)Должен быть установлен в error.НефатальныйCheck diagnostic settings> Verify 'Invalid input data access in chart initialization' setting
No unconditional default transitions (Simulink) (SFNoUnconditionalDefaultTransitionDiag)Должен быть установлен в error.НефатальныйCheck diagnostic settings> Verify 'No unconditional default transitions' setting
Transition outside natural parent (Simulink) (SFTransitionOutsideNaturalParentDiag)Должен быть установлен в error.НефатальныйCheck diagnostic settings> Verify 'Transition outside natural parent' setting
Unreachable execution path (Simulink) (SFUnreachableExecutionPathDiag)Должен быть установлен в error.НефатальныйCheck diagnostic settings> Verify 'Unreachable execution path' setting
Undirected event broadcasts (Simulink) (SFUndirectedBroadcastEventsDiag)Должен быть установлен в error.НефатальныйCheck diagnostic settings> Verify 'Undirected event broadcasts' setting
Transition action specified before condition action (Simulink) (SFTransitionActionBeforeConditionDiag)Должен быть установлен в error.НефатальныйCheck diagnostic settings> Verify 'Transition action specified before condition action' setting

Аппаратная реализация

ПараметрОграничениеКРИТИЧЕСКИЙ / НефатальныйПроверка совместимости
Number of bits: char (ProdBitPerChar)Должен быть установлен в 8.НефатальныйCheck hardware implementation settings> Verify 'char' setting
Number of bits: short (ProdBitPerShort)Должен быть установлен в 16.НефатальныйCheck hardware implementation settings> Verify 'short' setting
Number of bits: int (ProdBitPerInt)Должен быть установлен в 32.НефатальныйCheck hardware implementation settings> Verify 'int' setting
Number of bits: long (ProdBitPerLong)Должен быть установлен в 32.НефатальныйCheck hardware implementation settings> Verify 'long' setting
Number of bits: float (ProdBitPerFloat)Должен быть установлен в 32.НефатальныйCheck hardware implementation settings> Verify 'float' setting
Number of bits: double (ProdBitPerDouble)Должен быть установлен в 64.НефатальныйCheck hardware implementation settings> Verify 'double' setting
Number of bits: native (ProdWordSize)Должен быть установлен в 32.НефатальныйCheck hardware implementation settings> Verify 'native' setting
Number of bits: pointer (ProdBitPerPointer)Должен быть установлен в 32.НефатальныйCheck hardware implementation settings> Verify 'pointer' setting
Signed integer division rounds to (ProdIntDivRoundTo)Должен быть установлен в Zero.НефатальныйCheck hardware implementation settings> Verify 'Signed integer division rounds to' setting
Shift right on a signed integer as arithmetic shift (ProdShiftRightIntArith)Должен быть выбран (набор к on).НефатальныйCheck hardware implementation settings> Verify 'Shift right on a signed integer as arithmetic shift' setting
Test hardware is the same as production hardware (ProdEqTarget)Должен быть выбран (набор к on).НефатальныйCheck hardware implementation settings> Verify 'Test hardware is the same as production hardware' setting
  • Device vendor

  • Device type (ProdHWDeviceType)

Не должен быть установлен в ASIC/FPGA.НефатальныйCheck hardware implementation settings> Verify 'Device vendor->Device type‘ setting
Support long long (ProdLongLongMode)Не должен быть выбран (набор к off).НефатальныйCheck hardware implementation settings> Verify 'Support long long‘ setting

Генерация кода: Общий

ПараметрОграничениеКРИТИЧЕСКИЙ / НефатальныйПроверка совместимости
System target file (Simulink Coder) (SystemTargetFile)Должен быть установлен в ert.tlc или системный конечный файл для ERT-выведенной цели.КРИТИЧЕСКИЙCheck system target file setting
Language (Simulink Coder) (TargetLang)Должен быть установлен в C или C++.КРИТИЧЕСКИЙCheck code generation settings> Verify 'Language' setting
TLCOptionsДолжен быть установлен в ''.НефатальныйCheck code generation settings> Verify 'TLC options' setting

Генерация кода: Оптимизация

ПараметрОграничениеКРИТИЧЕСКИЙ / НефатальныйПроверка совместимости
Simplify array indexing (Simulink Coder) (StrengthReduction)Должен быть очищен (набор к off).НефатальныйCheck code generation settings> Verify 'Simplify array indexing' setting
Pack Boolean data into bitfields (Simulink Coder) (BooleansAsBitfields)Должен быть очищен (набор к off).НефатальныйCheck code generation settings> Verify 'Pack Boolean data into bitfields' setting
Maximum stack size (bytes) (Simulink Coder) (MaxStackSize)Должен быть установлен в inf.НефатальныйCheck code generation settings> Verify 'Maximum stack size (bytes)' setting
Default parameter behavior (Simulink Coder) (DefaultParameterBehavior)Для моделей, на которые ссылаются, должен быть установлен в Inlined.НефатальныйCheck code generation settings> Verify 'Default parameter behavior' setting
Loop unrolling threshold (Simulink Coder) (RollThreshold)Должен быть установлен в значение, которое не приводит к частично развернутым циклам в сгенерированном коде.НефатальныйCheck loop unrolling threshold setting> Verify loop unrolling threshold setting
Pass reusable subsystem outputs as: (Simulink Coder) (PassReuseOutputArgsAs)Должен быть установлен в Structure reference если модель, на которую ссылаются, имеет корневые выходные порты с неавтоматическим классом памяти.НефатальныйCheck for root Outport blocks that have non-auto storage class> Verify that the storage class of root outports is supported
Use bitsets for storing state configuration (Simulink Coder) (StateBitsets)Должен быть очищен (набор к off).НефатальныйCheck code generation settings> Verify ‘Use bitsets for storing state configuration’ setting
Use bitsets for storing Boolean data (Simulink Coder) (DataBitsets)Должен быть очищен (набор к off).НефатальныйCheck code generation settings> Verify ‘Use bitsets for storing Boolean data’ setting
Optimize using the specified minimum and maximum values (Simulink Coder) (UseSpecifiedMinMax)Должен быть очищен (набор к off).НефатальныйCheck code generation settings> Verify ‘Optimize using the specified minimum and maximum values’ setting
Remove code from floating-point to integer conversions that wraps out-of-range values (Simulink Coder) (EfficientFloat2IntCast)Должен быть выбран (набор к on).НефатальныйCheck code generation settings> Verify 'Remove code from floating-point to integer conversions that wraps out-of-range values' setting
Remove code from floating-point to integer conversions with saturation that maps NaN to zero (Simulink Coder) (EfficientMapNaN2IntZero)Должен быть очищен (набор к off).НефатальныйCheck code generation settings> Verify 'Remove code from floating-point to integer conversions with saturation that maps NaN to zero' setting
Remove code that protects against division arithmetic exceptions (Simulink Coder) (NoFixptDivByZeroProtection)Должен быть очищен (набор к off).НефатальныйCheck code generation settings> Verify 'Remove code that protects against division arithmetic exceptions' setting
AdvancedOptControlДолжен быть установлен в -SLCI. Эта установка отключает оптимизацию, которая несовместима с Simulink® Code Inspector™. Когда вы используете эту установку, сгенерированный код может отличаться от кода, сгенерированного без '-SLCI' установка. Однако различия не влияют на поведение сгенерированного кода.НефатальныйCheck code generation settings> Verify 'Disable incompatible optimizations' setting

Генерация кода: Комментарии

ПараметрОграничениеКРИТИЧЕСКИЙ / НефатальныйПроверка совместимости
Include comments (Simulink Coder) (GenerateComments)Должен быть выбран (набор к on). Синтаксические анализы Simulink Code Inspector автоматически сгенерировали комментарии, чтобы получить информацию о трассируемости о данных модели.КРИТИЧЕСКИЙCheck code generation settings> Verify 'Include comments' setting

Генерация кода: символы

ПараметрОграничениеКРИТИЧЕСКИЙ / НефатальныйПроверка совместимости
Generate scalar inlined parameter as (Simulink Coder) (InlinedPrmAccess)Должен быть установлен в Literals.НефатальныйCheck code generation settings> Verify 'Generate scalar inlined parameter as' setting
Signal naming (Simulink Coder) (SignalNamingRule)Должен быть установлен в None.НефатальныйCheck code generation settings> Verify 'Signal naming' setting
Parameter naming (Simulink Coder) (ParamNamingRule)Должен быть установлен в None.НефатальныйCheck code generation settings> Verify 'Parameter naming' setting

Генерация кода: пользовательский код

ПараметрОграничениеКРИТИЧЕСКИЙ / НефатальныйПроверка совместимости
Source file (Simulink Coder) (CustomSourceCode)Должно быть не задано (набор к '').НефатальныйCheck code generation settings> Verify 'Source file' setting
Header file (Simulink Coder) (CustomHeaderCode)Должно быть не задано (набор к '').НефатальныйCheck code generation settings> Verify ‘Header file’ setting
Initialize function (Simulink Coder) (CustomInitializer)Должно быть не задано (набор к '').НефатальныйCheck code generation settings> Verify 'Initialize function' setting
Terminate function (Simulink Coder) (CustomTerminator)Должно быть не задано (набор к '').НефатальныйCheck code generation settings> Verify 'Terminate function' setting

Генерация кода: интерфейс

ПараметрОграничениеКРИТИЧЕСКИЙ / НефатальныйПроверка совместимости
Code interface packaging (Simulink Coder) (CodeInterfacePackaging)Должен быть установлен в Nonreusable function или Reusable function.КРИТИЧЕСКИЙCheck code generation settings> Verify 'Code interface packaging’ setting
Use dynamic memory allocation for model initialization (Simulink Coder) (GenerateAllocFcn)Должен быть очищен (набор к off).НефатальныйCheck code generation settings> Verify 'Use dynamic memory allocation for model initialization' setting
Code replacement library (Simulink Coder) (CodeReplacementLibrary)Должен быть установлен в None. Можно также использовать Поддерживаемые Функции и Операции в Заменяющих Библиотеках Кода.НефатальныйCheck code generation settings> Verify 'Code replacement library' setting
Standard math library (Simulink Coder) (TargetLangStandard)Должен быть установлен в C89/C90 (ANSI) или C99 (ISO). НефатальныйCheck code generation settings> Verify 'Standard math library' setting
Shared code placement (Simulink Coder) (UtilityFuncGeneration)Должен быть установлен в Shared location. Используя общий ресурс для служебных функций, макросы и пользовательские типы данных способствуют отладке и трассируемости сгенерированного кода.НефатальныйCheck code generation settings> Verify 'Shared code placement' setting
Support: non-finite numbers (Simulink Coder) (SupportNonFinite)Должен быть очищен (набор к off).НефатальныйCheck code generation settings> Verify 'non-finite numbers' setting
Support: absolute time (Simulink Coder) (SupportAbsoluteTime)Должен быть очищен (набор к off).НефатальныйCheck code generation settings> Verify 'absolute time' setting
Classic call interface (Simulink Coder) (GRTInterface)Должен быть очищен (набор к off).НефатальныйCheck code generation settings> Verify 'Classic call interface' setting
Single output/update function (Simulink Coder) (CombineOutputUpdateFcns)Должен быть выбран (набор к on).НефатальныйCheck code generation settings> Verify 'Single output/update function' setting
Terminate function required (Simulink Coder) (IncludeMdlTerminateFcn)Должен быть очищен (набор к off).НефатальныйCheck code generation settings> Verify 'Terminate function required' setting
Remove error status field in real-time model data structure (Simulink Coder) (SuppressErrorStatus)Должен быть выбран (набор к on). Это помогает предотвратить генерацию rtModel структура данных, которая не поддержана для инспекции кода.НефатальныйCheck code generation settings> Verify 'Remove error status field in real-time model data structure' setting
Combine signal/state structures (Simulink Coder) (CombineSignalStateStructs)Должен быть очищен (набор к off).НефатальныйCheck code generation settings> Verify 'Combine signal/state structures' setting
Array layout (Simulink Coder) (ArrayLayout)Должен быть установлен в column-major.НефатальныйCheck code generation settings> Verify 'Array layout' setting
MAT-file logging (Simulink Coder) (MatFileLogging)Должен быть очищен (набор к off).НефатальныйCheck code generation settings> Verify 'MAT-file logging' setting
Support: variable-size signals (Simulink Coder) (SupportVariableSizeSignals)Должен быть очищен (набор к off).КРИТИЧЕСКИЙCheck code generation settings> Verify 'variable-size signals' setting
Generate C API for: parameters (Simulink Coder) (RTWCAPIParams)Должен быть очищен (набор к off).НефатальныйCheck code generation settings> Verify ‘parameters’ setting
Generate C API for: signals (Simulink Coder) (RTWCAPISignals)Должен быть очищен (набор к off).НефатальныйCheck code generation settings> Verify ‘signals’ setting
Generate C API for: states (Simulink Coder) (RTWCAPIStates)Должен быть очищен (набор к off).НефатальныйCheck code generation settings> Verify ‘states’ setting
Generate C API for: root-level I/O (Simulink Coder) (RTWCAPIRootIO)Должен быть очищен (набор к off).НефатальныйCheck code generation settings> Verify ‘root-level I/O’ setting
External mode (Simulink Coder) (ExtMode)Должен быть очищен (набор к off).НефатальныйCheck code generation settings> Verify ‘External mode’ setting
ASAP2 interface (Simulink Coder) (GenerateASAP2)Должен быть очищен (набор к off).НефатальныйCheck code generation settings> Verify ‘ASAP2 interface’ setting

Генерация кода: верификация

ПараметрОграничениеКРИТИЧЕСКИЙ / НефатальныйПроверка совместимости
Create block (Embedded Coder) (CreateSILPILBlock)Должен быть установлен в None.НефатальныйCheck code generation settings> Verify 'Create block' setting
Measure function execution times (Embedded Coder) (CodeProfilingInstrumentation)Должен быть очищен (набор к off).НефатальныйCheck code generation settings> Verify 'Measure function execution times' setting

Генерация кода: стиль кода

ПараметрОграничениеКРИТИЧЕСКИЙ / НефатальныйПроверка совместимости
Preserve condition expression in if statement (Embedded Coder) (PreserveIfCondition)Должен быть выбран (набор к on).НефатальныйCheck code generation settings> Verify 'Preserve condition expression in if statement' setting
Suppress generation of default cases for Stateflow switch statements if unreachable (Embedded Coder) (SuppressUnreachableDefaultCases)Должен быть очищен (набор к off).НефатальныйCheck code generation settings> Verify 'Suppress generation of default cases for Stateflow switch statements if unreachable' setting
Casting Modes (Embedded Coder) (CastingMode).Должен быть установлен в Nominal или Standards.НефатальныйCheck code generation settings> Verify 'Casting Modes' setting

Генерация кода: шаблоны

ПараметрОграничениеКРИТИЧЕСКИЙ / НефатальныйПроверка совместимости
Generate an example main program (Embedded Coder) (GenerateSampleERTMain)Должен быть выбран (набор к on).НефатальныйCheck code generation settings> Verify 'Generate an example main program' setting

Генерация кода: размещение кода

ПараметрОграничениеКРИТИЧЕСКИЙ / НефатальныйПроверка совместимости
Rate Transition block code (Embedded Coder) (RateTransitionBlockCode)Должен быть установлен в Inline.НефатальныйCheck code generation settings> Verify 'Rate Transition block code' setting

Похожие темы