Logical Operator

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

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

    Simulink/Логические и битовые операции

    HDL-кодер/обычно используемые блоки

    HDL-кодер/логика и битовые операции

  • Logical Operator block

Описание

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

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

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

И

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

ИЛИ

TRUE, если хотя бы один вход TRUE

NAND

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

НИ

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

XOR

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

NXOR

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

НЕТ

TRUE, если вход FALSE

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

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

Примечание

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

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

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

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

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

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

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

При конфигурировании как логического элемента 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

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

Зависимости

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

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

Выход

расширить все

Выходной сигнал, состоящий из нулей и таковых, с теми же размерностями, что и вход. Вы управляете типом выходных данных с параметрами Require all inputs and output to have the same data type и Output 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

  • NOT - 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, чтобы задать тип выходных данных (см. «Реализация логических сигналов как логических данных (против double)»).

    Примечание

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

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

    Совет

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

  • <data type expression> - Выход блока имеет тип данных, заданный вами в качестве выражения типа данных, например Simulink.NumericType.

    Совет

    Для ввода встроенного типа данных (double, single, int8, uint8, int16, uint16, int32, или 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++ с помощью Coder™ Simulink ®

.

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

.

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

Представлено до R2006a
Для просмотра документации необходимо авторизоваться на сайте