Logical Operator

Выполните заданную логическую операцию на входе

  • Библиотека:
  • Simulink / Обычно Используемые Блоки

    Simulink / Логика и Битовые операции

    HDL Coder / Обычно Используемые Блоки

    HDL Coder / Логика и Битовые операции

  • Logical Operator block

Описание

Блок Logical Operator выполняет заданную логическую операцию на своих входных параметрах. Входное значение верно (1) если это является ненулевым и ложным (0) если это - нуль.

Вы выбираете Логическую операцию, соединяющую входные параметры со списком параметров Operator. Если вы выбираете rectangular как свойство Icon shape, имя выбранного оператора отображается на значке блока. Если вы выбираете distinctive как свойство Icon shape, имя выбранного оператора не отображается на значке блока. Эта таблица показывает поддерживаемые операции:

ОперацияОписание

И

TRUE, если все входы TRUE

ИЛИ

TRUE, если по крайней мере один вход является TRUE

NAND

TRUE, если по крайней мере один вход является FALSE

NOR

TRUE, когда никакие входы не TRUE

Xor

TRUE, если нечетное число входов TRUE

NXOR

TRUE, если четное число входов TRUE

НЕТ

TRUE, если вход является FALSE

Если вы выбираете distinctive как Icon shape, внешний вид блока указывает на свою функцию. Программное обеспечение Simulink® отображает отличительную форму для выбранного оператора, соответствуя IEEE® Standard Graphic Symbols для Логических функций.

Чтобы задать количество входных портов, используйте параметр Number of input ports. Выходной тип задан с помощью параметра Output data type. Выходным значением является 1 если TRUE и 0 если FALSE.

Примечание

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

Размер выхода зависит от размера входного вектора и выбранного оператора:

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

    Скалярные входные параметры расширены, чтобы иметь те же размерности как нескалярные входные параметры.

    Если блок имеет больше чем один вход, выход имеет те же размерности как входные параметры (после скалярного расширения), и каждым выходным элементом является результат применения заданной логической операции к соответствующим входным элементам. Например, если заданной операцией является AND, и входные параметры являются массивами 2 на 2, выход является массивом 2 на 2, левым верхним элементом которого является результат применения AND к левым верхним элементам входных параметров и так далее.

  • Для одного векторного входа блок применяет операцию (кроме НЕ оператора) ко всем элементам вектора. Выход всегда является скаляром.

  • НЕ оператор принимает только один вход, который может быть скаляром или вектором. Если вход является вектором, выход является вектором, одного размера содержащий логические дополнения элементов входного вектора.

Когда сконфигурировано как логический элемент мультивхода XOR, этот блок выполняет сложение по модулю две операции, как передано под мандат Стандартом IEEE для Логических Элементов.

Порты

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

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

Первый входной сигнал в виде скаляра, вектора или матрицы.

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

Второй входной сигнал в виде скаляра, вектора или матрицы.

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

Энный входной сигнал в виде скаляра, вектора или матрицы.

Зависимости

Чтобы включить дополнительные входные порты, используйте параметр Number of input ports.

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

Вывод

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

Выходной сигнал, состоя из нулей и единиц, с теми же размерностями как вход. Вы управляете типом выходных данных параметрами Output data type и Require all inputs and output to have the same data type.

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

Параметры

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

Основной

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

  • AND — T, если все входные параметры являются TRUE

  • OR — TRUE, если по крайней мере один вход является TRUE

  • NAND — TRUE, если по крайней мере один вход является FALSE

  • NOR TRUE, когда никакие входы не TRUE

  • XOR TRUE, если нечетное число входов TRUE

  • NXOR TRUE, если четное число входов TRUE

  • XOR — TRUE, если вход является FALSE

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

Параметры блоков: Operator
Ввод: символьный вектор
Значения: 'AND' | 'OR' | 'NAND' | 'NOR' | 'XOR' | 'NXOR' | 'NOT'
Значение по умолчанию: 'AND'

Задайте количество входных параметров блока как положительное целое число.

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

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

Зависимости

Этот параметр не доступен, когда вы устанавливаете Operator на NOT.

Задайте форму значка блока.

  • rectangular — Результаты в прямоугольном блоке, который отображает имя выбранного оператора.

  • distinctive — Используйте графический символ для выбранного оператора, как задано стандартом IEEE.

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

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

Задайте шаг расчета как значение кроме-1. Для получения дополнительной информации см. Настройку времени выборки.

Зависимости

Этот параметр не отображается, если он явным образом не установлен в значение кроме -1. Чтобы узнать больше, смотрите Блоки, для Которых Не Рекомендуется Шаг расчета.

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

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

Тип данных

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

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

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

Задайте тип выходных данных. Когда вы выбираете:

  • boolean — Блок выход имеет тип данных boolean.

  • Inherit: Logical (see Configuration Parameters: Optimization) — Блок использует параметр конфигурации Implement logic signals as Boolean data, чтобы задать тип выходных данных (см. сигналы логики Реализации как булевы данные (по сравнению с двойным)).

    Примечание

    Эта опция поддерживает модели, созданные перед boolean опция была доступна. Используйте одну из других опций, предпочтительно boolean, для новых моделей.

  • fixdt(1,16) — Блок выход имеет заданный тип данных с фиксированной точкой fixdt(1,16).

    Совет

    Нажмите кнопку Show data type assistant, чтобы отобразить Data Type Assistant, который помогает вам установить атрибуты типа данных. Для получения дополнительной информации смотрите, Задают Типы данных Используя Ассистент Типа данных.

  • <data type expression> — Блок выход имеет тип данных, который вы задаете как выражение типа данных, например, Simulink.NumericType.

    Совет

    Ввести встроенный тип данных (doubleединственныйint8uint8int16uint16int32, или uint32), заключите выражение в одинарные кавычки. Например, введите 'double' вместо double.

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

Параметры блоков: OutDataTypeStr
Ввод: символьный вектор
Значения: 'Inherit: Logical (see Configuration Parameters: Optimization)' | 'boolean' | 'fixdt(1,16)' | '<data type expression>'
Значение по умолчанию: 'boolean'

Примеры модели

Характеристики блока

Типы данных

Boolean | double | fixed point | half | integer | single

Прямое сквозное соединение

yes

Многомерные сигналы

yes

Сигналы переменного размера

yes

Обнаружение пересечения нулем

no

Расширенные возможности

Генерация кода C/C++
Генерация кода C и C++ с помощью Simulink® Coder™.

Генерация кода PLC
Сгенерируйте код Структурированного текста с помощью Simulink® PLC Coder™.

Преобразование фиксированной точки
Спроектируйте и симулируйте системы фиксированной точки с помощью Fixed-Point Designer™.

Представлено до R2006a