exponenta event banner

Комбинаторная логика

Реализация таблицы истинности

  • Библиотека:
  • Операции Simulink/Logic и Bit

  • Combinatorial Logic block

Описание

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

Порты

Вход

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

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

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

Продукция

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

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

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

Параметры

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

В качестве параметра таблицы «Истина» указывается матрица, определяющая все возможные выходы блоков. Каждая строка матрицы содержит выходные данные для различных комбинаций входных элементов. Необходимо указать выходы для каждой комбинации входов. Число столбцов - это количество выводов блока.

Параметр таблицы Истинность может иметь логические значения (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)*2м-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