Entity Input Switch

Переключите входные сущности

  • Библиотека:
  • SimEvents

  • Entity Input Switch block

Описание

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

Примечание

Если вы хотите объединить сообщение или пути сущности и сгенерировать код для вашего интерфейса компонента, используйте Simulink® Блок Message Merge. поведение блока Message Merge совпадает с блоком Entity Output Switch с набором параметров Active port selection к All.

Для примера смотрите, Генерируют Сущности, Когда события Имеют место.

Объедините пути сущности

Можно объединить разнообразные пути к одному пути с помощью блока Entity Input Switch с набором параметров Active port selection к All. Слияние путей сущности не изменяет сами сущности, так же, как слияние маршрутов на дороге не изменяет транспортные средства, которые перемещаются на нем. В частности, блок Entity Input Switch не создает, агрегировал или обрабатывает в пакетном режиме.

Вот некоторые сценарии, в которых вы можете объединить пути сущности:

  • При присоединении различных данных — Несколько блоков генератора сущности создают сущности, имеющие различные значения для конкретного атрибута. Сущности затем следуют за объединенным путем, но могут быть обработаны по-другому позже на основе их отдельных значений атрибута.

  • При слиянии очередей — Несколько очередей объединяют в одну очередь.

  • При соединении пути к обратной связи — путь к обратной связи вводит ту же очередь как обычный путь.

Последовательность одновременное незаконченное прибытие

Блок Entity Input Switch не испытывает столкновений, даже если несколько сущностей пытаются прибыть одновременно. Категории поведения следующие:

  • Если выходной порт сущности не блокируется, когда сущности пытаются прибыть, то последовательность прибытия зависит от последовательности исходных событий от блоков, которые предшествуют блоку Entity Input Switch.

    Даже если время отправления является тем же самым для нескольких сущностей, последовательность может влиять на поведение системы. Например, если сущности переходят к очереди, исходная последовательность определяет их положения в очереди.

  • Если незаконченные сущности ожидают, чтобы перейти к блоку Entity Input Switch, когда его выходной порт сущности изменяется от блокированного до разблокированного, то входные порты сущности уведомляются относительно изменения последовательно. Изменение от блокированного до разблокированного означает, что сущность может перейти к блоку Entity Input Switch.

    Если по крайней мере две сущности ожидают, чтобы перейти к блоку Entity Input Switch через отличные входные порты сущности, то последовательность уведомления важна, потому что первый порт, который будет уведомлен относительно изменения, является первым, чтобы усовершенствовать сущность с блоком Entity Input Switch.

Выберите Arrival Path

Блок Entity Input Switch позволяет прибытие сущностей в его портах. Выбранный входной порт сущности может измениться во время симуляции.

Можно также выбрать критерий переключения между входными портами.

  • Выберите Round robin выбрать порты круговым способом.

  • Выберите From control port позволять порту управления определить выбранный порт.

  • Выберите Equiprobable позволять блоку случайным образом выбрать любой порт с равной вероятностью.

Порты

Входной параметр

развернуть все

Введите порт сущности для сущностей, вводящих блок.

Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | Boolean | enumerated | bus | fixed point

Введите порт сущности для сущностей, вводящих блок.

Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | Boolean | enumerated | bus | fixed point

Порт элемента управления вводом для входящей сущности управления, которая определяет входной порт для сущностей, прибывающих в блок.

Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

Вывод

развернуть все

Выведите порт сущности для сущностей, выходящих из блока.

Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | Boolean | enumerated | bus | fixed point

Параметры

развернуть все

Определяет, сколько входных портов сущности блок имеет.

Программируемое использование

Параметры блоков: NumberInputPorts
Ввод: символьный вектор
Значения: '2' | скаляр
Значение по умолчанию: '2'

Задайте активный входной порт, чтобы позволить прибытие сущностей во всех портах или одном порте за один раз. Выберите All объединить пути сущности и позволить прибытие сущностей во всех портах. Выберите Switch позволить прибытие сущности только в одном порте за один раз.

Программируемое использование

Параметры блоков: ActivePortSelection
Ввод: символьный вектор
Значения: 'All' | 'Switch'
Значение по умолчанию: 'All'

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

  • Выберите Round robin выбрать порты круговым способом. Установите начальный порт в Initial port selection.

  • Выберите From control port позволять порту управления определить выбранный порт. Порт управления, будет казаться, будет вводить анонимную сущность, несущую данные со значением, больше, чем 0, и меньший, чем или равный количеству входных портов, чтобы определить активный порт.

  • Выберите Equiprobable позволять блоку случайным образом выбрать любой порт с равной вероятностью. Установите Seed генерировать случайное число и определять активный входной порт.

Программируемое использование

Параметры блоков: SwitchingCriterion
Ввод: символьный вектор
Значения: 'Round robin' | 'From control port' | 'Equiprobable'
Значение по умолчанию: 'Round robin'

Задайте первоначально, какой порт позволяет прибытие сущности.

Программируемое использование

Параметры блоков: InitialPortSelection
Ввод: символьный вектор
Значения: '1' | скаляр
Значение по умолчанию: '1'

Задайте seed для генератора случайных чисел, чтобы определить входной порт.

Зависимости

Этот параметр отображается, когда Switching criterion установлен в Equiprobable.

Программируемое использование

Параметры блоков: Seed
Ввод: символьный вектор
Значения: '23453' | скаляр
Значение по умолчанию: '23453'
Введенный в R2016a
Для просмотра документации необходимо авторизоваться на сайте