Документация Engee

Вариативный источник

Вариативная маршрутизация между несколькими входами.

Тип: VariantSource

Путь в библиотеке:

/Basic/Signal Routing/Variant Source

Описание

Блок Вариативный источник позволяет включить в один слой несколько реализаций компонента источника сигнала.

Блок Вариативный источник имеет один или несколько входных портов и только один выходной порт. Альтернативные варианты к входному порту блока подключают так, чтобы во время выполнения модели был активен максимум один вариант.

Параметр Режимы управления определяет режим управления вариантами. Во время моделирования Engee подключает активный вариант непосредственно к выходному порту блока Вариативный источник и игнорирует неактивные варианты.

Использование блока Вариативный источник позволяет:

  • Распространять условия выбора альтернативных вариантов на всю модель.

  • Устранять неактивные блоки во всей модели, что повышает производительность во время выполнения. Если все варианты неактивны, то Engee полностью удаляет область вариантов из вашей модели.

  • Использовать интерфейсы вариативных компонентов для быстрого моделирования выбора вариантов.

Порты

Выход

# OUT_1 — выходной сигнал
скаляр | вектор | матрица

Details

Выходной сигнал, который должен быть подключен к активному входному порту.

Типы данных

Float16, Float32, Float64, Int8, Int16, Int32, Int64, Int128, UInt8, UInt16, UInt32, UInt64, UInt128, Fixed, Bool

Поддержка комплексных чисел

Да

Вход

# IN_1 — входной сигнал для первого варианта
скаляр | вектор | матрица

Details

Входной сигнал для первого варианта.

Типы данных

Float16, Float32, Float64, Int8, Int16, Int32, Int64, Int128, UInt8, UInt16, UInt32, UInt64, UInt128, Fixed, Bool

Поддержка комплексных чисел

Да

# IN_N — входной сигнал для N-го варианта
скаляр | вектор | матрица

Details

Входной сигнал для N-го варианта.

Типы данных

Float16, Float32, Float64, Int8, Int16, Int32, Int64, Int128, UInt8, UInt16, UInt32, UInt64, UInt128, Fixed, Bool

Поддержка комплексных чисел

Да

Параметры

Основные

# Режимы управления — режим управления вариантами
Выражения | Имя | Переключение между симуляцией и кодогенерацией

Details

Управление вариантами, определяющее выбор активного варианта, может быть любого из этих типов:

  • Выражения — в этом режиме Engee выбирает активный вариант на основе оценки условий варианта. Когда выражение условия оценивается как true, соответствующий вариант становится активным. Когда выражение условия оценивается как false, соответствующий вариант становится неактивным.

  • Имя — в этом режиме Engee выбирает активный вариант на основе имени варианта. Элемент управления вариантом представляет собой строку и не требует создания переменных в рабочих пространствах.

  • Переключение между симуляцией и кодогенерацией — в этом режиме у блока может быть всего 2 настраиваемых входных порта, у каждого из которых может быть одна из двух меток: (симуляция) или (кодогенерация). Метки обязательно должны быть разные. Активным является порт с меткой (симуляция) и для симуляции, и для кодогенерации, так как этот функционал пока не реализован полноценно.

Значения

expression | label | sim codegen switching

Значение по умолчанию

expression

Имя для программного использования

VariantControlMode

Настраиваемый

Нет

Вычисляемый

Нет

# Число вариантов — количество вариантов
Целое число

Details

Количество вариантов в виде целого положительного числа. Максимальное число вариантов – 32.

Число вариантов определяет количество портов и параметров, задающих варианты управления портами или метки портов.

Зависимости

Чтобы использовать этот параметр, установите для параметра Режимы управления значение Выражения или Имя

Значение по умолчанию

2

Имя для программного использования

NumChoices

Настраиваемый

Нет

Вычисляемый

Да

# Порт 1: Вариант управление - Выражение — выражение, определяющее активность 1-го входного порта

Details

Выражение, определяющее активность 1-го входного порта. Вместо выражения можно указать строку default, чтобы выбрать активный вариант по умолчанию, который будет использоваться, если все остальные выражения ложны.

Должен быть указан только один вариант по умолчанию, иначе произойдет ошибка.

Количество параметров, задающих управление выходными портами, определяется параметром Число вариантов. В документации приведено описание выражения только для первого порта.

Зависимости

Чтобы использовать этот параметр, установите для параметра Режимы управления значение Выражения.

Значение по умолчанию

true (включено)

Имя для программного использования

VariantControlExpression1

Настраиваемый

Нет

Вычисляемый

Да

# Порт 1: Вариант управление - имя — метка 1-го порта
Строка

Details

Все данные, введенные в это поле, будут считаться строкой. Активный вариант следует выбрать в поле Имя активных вариантов, куда необходимо ввести метку активного варианта.

Количество параметров, задающих метки выходных портов, определяется параметром Число вариантов. В документации приведено описание метки только для 1-го порта.

Зависимости

Чтобы использовать этот параметр, установите для параметра Режимы управления значение Имя.

Значение по умолчанию

true (включено)

Имя для программного использования

VariantControlLabel1

Настраиваемый

Нет

Вычисляемый

Да

# Порт 1: Вариант управление - переключатель — метка для 1-го порта
(симуляция) | (кодогенерация)

Details

В режиме Переключение между симуляцией и кодогенерацией всегда доступны два настраиваемых порта: для одного из них должно быть выбрано значение (симуляция), а для другого — (кодогенерация).

Зависимости

Чтобы использовать этот параметр, установите для параметра Режимы управления значение Переключение между симуляцией и кодогенерацией.

Значения

(sim) | (codegen)

Значение по умолчанию

(sim)

Имя для программного использования

VariantControlSwitch1

Настраиваемый

Нет

Вычисляемый

Нет

# Порт 2: Вариант управление - переключатель — метка для 2-го порта
(симуляция) | (кодогенерация)

Details

В режиме Переключение между симуляцией и кодогенерацией всегда доступны два настраиваемых порта: для одного из них должно быть выбрано значение (симуляция), а для другого — (кодогенерация).

Зависимости

Чтобы использовать этот параметр, установите для параметра Режимы управления значение Переключение между симуляцией и кодогенерацией.

Значения

(sim) | (codegen)

Значение по умолчанию

(codegen)

Имя для программного использования

VariantControlSwitch2

Настраиваемый

Нет

Вычисляемый

Нет

# Имя активных вариантов — имя активного выбора в режиме метки
Строка

Details

Имя активного выбора в режиме метки. Введенное имя станет активной меткой.

Зависимости

Чтобы использовать этот параметр, установите для параметра Режимы управления значение Имя.

Значение по умолчанию

Имя для программного использования

LabelModeActiveChoice

Настраиваемый

Нет

Вычисляемый

Да

# Разрешить ноль активных элементов управления вариантами — моделирование без выбора активного варианта
Логический тип

Details

Установите этот флажок, чтобы разрешить моделирование без выбора активного варианта.

Если флажок не установлен, то Engee генерирует ошибку при отсутствии выбора активного варианта.

Зависимости

Чтобы использовать этот параметр, установите для параметра Режимы управления значение Выражения.

Значение по умолчанию

false (выключено)

Имя для программного использования

AllowZeroVariantControls

Настраиваемый

Нет

Вычисляемый

Нет