exponenta event banner

Логический оператор

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

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

    Операции Simulink/Logic и Bit

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

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

  • Logical Operator block

Описание

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

Выберите логическую операцию, соединяющую входы со списком параметров оператора. При выборе rectangular в качестве свойства фигуры «Значок» имя выбранного оператора отображается на значке блока. При выборе distinctive в качестве свойства фигуры «Значок» имя выбранного оператора не отображается на значке блока. В этой таблице показаны поддерживаемые операции:

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

И

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

ИЛИ

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

NAND

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

НИ

TRUE при отсутствии входных данных TRUE

XOR

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

NXOR

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

НЕТ

TRUE, если вход имеет значение FALSE

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

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

Примечание

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

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

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

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

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

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

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

Когда этот блок сконфигурирован как логический элемент исключающее ИЛИ с множеством входов, он выполняет операцию сложения по модулю два в соответствии со стандартом 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

Продукция

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

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

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

Параметры

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

Главный

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

  • AND - T, если все входы ИСТИННЫ

  • 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 для указания типа выходных данных (см. Реализация логических сигналов как Boolean data (vs. double)).

    Примечание

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

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

    Совет

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

  • <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++ с помощью Simulink ® Coder™

.

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

.

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

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