Оптимизация типа данных направлена на минимизацию целевой функции при сохранении исходного поведения системы в пределах заданного допуска. Оптимизировать типы данных можно с помощью fxpopt в командной строке или с помощью Optimized Fixed-Point Conversion в инструменте «Фиксированная точка».
В процессе оптимизации программное обеспечение изменяет настройки и параметры конфигурации модели, описанные ниже. Восстановить эту диагностику можно после завершения оптимизации в диалоговом окне Параметры конфигурации (Configuration Parameters) или с помощью set_param функция.
| Причина изменения параметра | Параметр | Значение по умолчанию | Оптимизация изменяет значение на |
|---|---|---|---|
| Подавить диагностику | ParameterDowncastMsg | 'error' | 'none' |
ParameterUnderflowMsg | 'none' | 'none' | |
FixptConstUnderflowMsg | 'none' | 'none' | |
ParameterPrecisionLossMsg | 'none' | 'none' | |
FixptConstPrecisionLossMsg | 'none' | 'none' | |
ParameterOverflowMsg | 'error' | 'none' | |
FixptConstOverflowMsg | 'none' | 'none' | |
IntegerOverflowMsg | 'warning' | 'none' | |
IntegerSaturationMsg | 'warning' | 'none' | |
| Ведение журнала с помощью инспектора данных моделирования | SignalLogging | 'on' | 'on' |
ReturnWorkspaceOutputs | 'on' | 'on' | |
SaveFormat | 'Dataset' | 'Dataset' | |
| Сокращение потребления памяти в результате | SaveTime | 'on' | 'off' |
SaveOutput | 'on' | 'off' | |
| Срок действия модели | SignalRangeChecking | 'none' | 'error' |
| Понять результат | ShowPortDataTypes | 'off' | 'on' |
| Ускорение оптимизации | SimulationMode | 'normal' | 'accelerator' |
| Переопределение типа данных | DataTypeOverride | 'UseLocalSettings' | 'Off' |
Вы можете использовать showContents способ OptimizationSolution объект для печати сводки изменений, внесенных во время оптимизации типа данных, в окне команд MATLAB ®. Например, после оптимизации типов данных в соответствии с примером «Оптимизация типов данных с фиксированной точкой» используйтеshowContents для просмотра изменений параметров модели, внесенных во время оптимизации типа данных:
solution = result.Solutions(1); showContents(solution)
ModelName: 'ex_auto_gain_controller'
ModelParameters:
Index Name Value
_____ __________________________ _____________
1 SignalLogging 'on'
2 ReturnWorkspaceOutputs 'on'
3 SaveFormat 'Dataset'
4 ShowPortDataTypes 'on'
5 SignalRangeChecking 'error'
6 ParameterDowncastMsg 'none'
7 ParameterUnderflowMsg 'none'
8 ParameterPrecisionLossMsg 'none'
9 ParameterOverflowMsg 'none'
10 FixptConstPrecisionLossMsg 'none'
11 FixptConstOverflowMsg 'none'
12 FixptConstUnderflowMsg 'none'
13 IntegerOverflowMsg 'none'
14 IntegerSaturationMsg 'none'
15 SaveTime 'off'
16 SaveOutput 'off'
17 SimulationMode 'accelerator'
18 DataTypeOverride 'off'
...Не выполняйте никаких действий, если во время моделирования происходит понижение параметров. Эффекты квантования, включая нисходящие передачи, ожидаются во время оптимизации. Оптимизированные типы данных будут соответствовать всем указанным поведенческим ограничениям. Дополнительные сведения см. в разделе Обнаружение duncast.
Параметр: ParameterDowncastMsg |
Значение:
'none' |
По умолчанию:
'error' |
Не выполняйте никаких действий, когда квантование параметров приводит к тому, что ненулевое значение во время моделирования становится заниженным. Не выполняйте никаких действий, когда во время моделирования происходит понижение константы фиксированной точки. Во время оптимизации ожидаются эффекты квантования, включая неполный поток. Оптимизированные типы данных будут соответствовать всем указанным поведенческим ограничениям. Дополнительные сведения см. в разделах Обнаружение недопотока и Обнаружение недопотока.
Параметр: ParameterUnderflowMsg |
Значение:
'none' |
По умолчанию:
'none' |
Параметр: FixptConstUnderflowMsg |
Значение:
'none' |
По умолчанию:
'none' |
Не выполняйте никаких действий, когда во время моделирования происходит потеря точности параметра или потеря постоянной точности с фиксированной точкой. Эффекты квантования, включая потери точности, ожидаются во время оптимизации. Оптимизированные типы данных будут соответствовать всем указанным поведенческим ограничениям. Дополнительные сведения см. в разделах Обнаружение потери точности и Обнаружение потери точности.
Параметр: ParameterPrecisionLossMsg |
Значение:
'none' |
По умолчанию:
'warning' |
Параметр: FixptConstPrecisionLossMsg |
Значение:
'none' |
По умолчанию:
'none' |
Не выполняйте никаких действий, если во время моделирования происходит переполнение параметра или постоянное переполнение с фиксированной точкой. Эффекты квантования, включая переполнение, ожидаются во время оптимизации. Оптимизированные типы данных будут соответствовать всем указанным поведенческим ограничениям. Дополнительные сведения см. в разделах Обнаружение переполнения и Обнаружение переполнения.
Параметр: ParameterOverflowMsg |
Значение:
'none' |
По умолчанию:
'error' |
Параметр: FixptConstOverflowMsg |
Значение:
'none' |
По умолчанию:
'none' |
Не выполняйте никаких действий, если значение сигнала переполняет тип данных сигнала и оканчивается. Эффекты квантования, включая переполнение, ожидаются во время оптимизации. Оптимизированные типы данных будут соответствовать всем указанным поведенческим ограничениям. Дополнительные сведения см. в разделе Перенос при переполнении.
Параметр: IntegerOverflowMsg |
Значение:
'none' |
По умолчанию:
'warning' |
Не выполняйте никаких действий, если значение сигнала слишком велико и не может быть представлено типом данных сигнала, что приводит к насыщению. Эффекты квантования, включая переполнение, ожидаются во время оптимизации. Оптимизированные типы данных будут соответствовать всем указанным поведенческим ограничениям. Дополнительные сведения см. в разделе Насыщение при переполнении.
Параметр: IntegerSaturationMsg |
Значение:
'none' |
По умолчанию:
'warning' |
Глобально включить ведение журнала сигналов в рабочей области для этой модели. Для оптимизации требуется, чтобы этот параметр регистрировал указанные сигналы в инспекторе данных моделирования. Дополнительные сведения см. в разделе Регистрация сигналов.
Параметр: SignalLogging |
Значение:
'on' |
По умолчанию:
'on' |
Включить формат одиночного вывода sim для возврата результата моделирования в виде Simulink.SimulationOutput объект. Для оптимизации требуется этот параметр для регистрации сигналов с помощью инспектора данных моделирования. Дополнительные сведения см. в разделе Выходные данные одиночного моделирования.
Параметр: ReturnWorkspaceOutputs |
Значение:
'on' |
По умолчанию:
'on' |
Сохранение каждого зарегистрированного состояния и выходных данных в Simulink.SimulationData.Dataset объект. Для оптимизации требуется этот параметр для регистрации сигналов с помощью инспектора данных моделирования. Дополнительные сведения см. в разделе Запись данных в постоянное хранилище.
Параметр: SaveFormat |
Значение:
'Dataset' |
По умолчанию:
'Dataset' |
Не экспортируйте временные данные в рабочую область MATLAB во время моделирования. Для оптимизации требуется этот параметр, чтобы избежать ненужного использования памяти. Дополнительные сведения см. в разделе Время.
Параметр: SaveTime |
Значение:
'off' |
По умолчанию:
'on' |
Не экспортируйте данные исходящего сигнала корня в указанную переменную MATLAB во время моделирования. Для оптимизации требуется этот параметр для регистрации сигналов с помощью инспектора данных моделирования. Дополнительные сведения см. в разделе Вывод.
Параметр: SaveOutput |
Значение:
'off' |
По умолчанию:
'on' |
Завершите моделирование, когда сигналы превысят указанные минимальные или максимальные значения. Для оптимизации требуется этот параметр, чтобы гарантировать, что диапазоны моделирования модели с оптимизированными типами данных соответствуют заданным диапазонам проектирования. Дополнительные сведения см. в разделе Проверка диапазона моделирования.
Параметр: SignalRangeChecking |
Значение:
'error' |
По умолчанию:
'none' |
Отображение типов данных портов на блок-схеме модели. Для оптимизации требуется этот параметр, позволяющий легко проверять оптимизированные типы данных, применяемые к модели. Дополнительные сведения см. в разделе Параметры внешнего вида редактора программных моделей.
Параметр: ShowPortDataTypes |
Значение:
'on' |
По умолчанию:
'off' |
Моделирование модели в режиме ускорения. Оптимизация использует режим ускорителя для сокращения времени, необходимого для оптимизации типов данных в модели. Дополнительные сведения см. в разделе Что такое ускорение?.
Параметр: SimulationMode |
Значение:
'accelerator' |
По умолчанию:
'normal' |
По умолчанию оптимизация отключает любое переопределение типа данных, установленное в модели, чтобы влияние оптимизированных типов данных на поведение модели было точно представлено во время моделирования. Это поведение можно настроить с помощью дополнительных параметров fxpOptimizationOptions. Дополнительные сведения см. в разделе Инструментирование с фиксированной точкой и переопределение типа данных.
Параметр: DataTypeOverride |
Значение:
'Off' |
По умолчанию:
'UseLocalSettings' |
fxpopt | Задание поведенческих ограничений