Combinatorial Logic

Реализуйте таблицу истинности

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

Описание

Блок Combinatorial Logic реализует стандартную таблицу истинности для моделирования программируемых логических матриц (PLAs), логических схем, таблиц решений и других Булевых выражений. Можно использовать этот блок в сочетании с блоками Memory, чтобы реализовать конечные автоматы или триггеры.

Порты

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

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

Входной сигнал, заданный как вектор. Тип сигналов, принятых блоком Combinatorial Logic, зависит от того, выбрали ли вы опцию сигналов Булевой логики (см. сигналы логики Реализации как булевы данные (по сравнению с двойным)). Если эта опция включена, блок принимает действительные сигналы типа Boolean или double.

Типы данных: double | Boolean

Вывод

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

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

Типы данных: double | Boolean

Параметры

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

Вы задаете матрицу, которая задает весь возможный блок выходные параметры как параметр Truth table. Каждая строка матрицы содержит выход для различной комбинации входных элементов. Необходимо задать выходные параметры для каждой комбинации входных параметров. Количество столбцов является количеством блока выходные параметры.

Параметр Truth table может иметь булевы значения (0 или 1) любого типа данных, включая типы данных с фиксированной точкой. Если таблица содержит небулевы значения, типом данных таблицы должен быть double.

Отношение между количеством входных параметров и количеством строк:

number of rows = 2(number of inputs)

Simulink® возвращает строку матрицы путем вычисления индекса строки из элементов входного вектора. Simulink вычисляет индекс путем создания двоичного числа, где элементы входного вектора, имеющие нулевые значения, 0, и элементы, имеющие ненулевые значения, равняются 1, затем добавляя 1 к результату. Для входного вектора, u, из m элементы:

row index = 1 + u(m)*20 + u(m-1)*21 + ... + u(1)*2m-1

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

Параметры блоков: TruthTable
Ввод: символьный вектор
Значения: матрица
Значение по умолчанию: '[0 0;0 1;0 1;1 0;0 1;1 0;1 0;1 1]'

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

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

Типы данных

Boolean | double

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

yes

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

no

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

no

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

no

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

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

Смотрите также

| | |

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