
- •И. В. Потапов элементы прикладной теории цифровых автоматов
- •Оглавление
- •Введение
- •1. Представление чисел в эвм
- •1.1. Позиционные системы счисления
- •1.2. Обоснование применения в эвм двоичной системы счисления
- •1.3. Представление двоичных чисел с фиксированной и плавающей запятой
- •1.4. Прямой и инверсные коды чисел
- •1.5. Двоично-десятичные коды чисел
- •Вопросы для самоконтроля
- •2. Арифметические операции в двоичных кодах
- •2.1. Сложение двоичных кодов
- •2.2. Вычитание двоичных кодов
- •2.3. Выполнение операции округления чисел
- •2.3.1. Округление прямых кодов
- •2.3.2. Округление инверсных кодов
- •2.4. Умножение двоичных кодов
- •2.4.1. Умножение прямых кодов чисел
- •2.4.2. Ускоренное выполнение операции умножения
- •2.4.3. Умножение инверсных кодов чисел
- •2.5. Деление двоичных кодов
- •2.5.1. Деление прямых кодов чисел
- •2.5.2. Ускоренное выполнение операции деления
- •2.5.3. Деление дополнительных кодов чисел
- •2.6. Извлечение квадратного корня
- •2.7. Выполнение арифметических операций в d-кодах
- •2.7.1. Сложение в d-кодах
- •2.7.2. Умножение в d-кодах
- •2.7.3. Деление в d-кодах
- •Вопросы для самоконтроля
- •3. Переключательные функции
- •3.1. Основные определения и способы задания пф
- •3.2. Элементарные логические функции
- •3.3. Основные законы алгебры логики
- •3.4. Полные системы переключательных функций
- •3.5. Канонические формы аналитического представления пф
- •3.6. Кубическое представление пф
- •3.7. Синтез комбинационных схем
- •3.7.1. Синтез кс на логических элементах
- •3.7.2. Синтез кс на дешифраторах
- •3.7.3. Синтез кс на мультиплексорах
- •3.7.4. Синтез многовыходных схем
- •3.8. Риски сбоя в комбинационных схемах
- •Вопросы для самоконтроля
- •4. Минимизация переключательных функций
- •4.1. Минимизация пф с помощью карт Карно
- •4.2. Минимизация пф методом Квайна
- •4.3. Минимизация методом Квайна – Мак-Класки
- •4.4. Минимизация пф методом Блейка – Порецкого
- •4.5. Минимизация пф, заданных в конъюнктивной форме
- •4.6. Минимизация не полностью определенных пф
- •4.7. Минимизация систем пф
- •4.8. Минимизация пф в универсальных базисах и-не, или-не
- •Вопросы для самоконтроля
- •5. Моделирование работы и синтез автоматов с памятью
- •5.1. Основные модели, понятия и определения
- •5.1.1. Общее понятие цифрового автомата с памятью
- •5.1.2. Основные модели цифровых автоматов
- •5.1.3. Описание функционирования цифровых автоматов
- •5.1.4. Задание цифровых автоматов
- •5.1.5. Правила перехода между моделями Мили и Мура
- •5.2. Минимизация числа состояний цифровых автоматов
- •5.2.1. Минимизация числа состояний синхронного автомата методом Полла-Ангера
- •5.2.2. Минимизация числа состояний автомата Мура методом l-эквивалентных разбиений
- •5.2.3. Минимизация числа состояний автомата Мили методом l-эквивалентных разбиений
- •5.3. Структурный синтез цифровых автоматов
- •5.3.1. Типы элементарных автоматов, обладающие полной системой переходов-выходов
- •5.3.2. Основные этапы структурного синтеза
- •5.4. Рациональный выбор варианта кодирования состояний синхронных автоматов
- •Вопросы для самоконтроля
- •Библиографический список
- •Задания для выполнения самостоятельных работ
- •Илья Викторович потапов, канд. Техн. Наук, доцент элементы прикладной теории цифровых автоматов
3.1. Основные определения и способы задания пф
Вектор
входных переменных переключательной
функции
называется набором.
Любой набор значений аргументов ПФ
будем рассматривать как целое двоичное
число, определяющее его номер при
перечислении:
– «ноль» (нулевой набор),
– «один» (первый набор),
– «два» (второй набор), и т.д.
Поскольку
общее число наборов равно
и на каждом из них ПФ может принимать
одно из двух значений: 0 или 1, максимальное
число различных переключательных
функций, зависящих от n
переменных, равно
.
Любая
ПФ, зависящая от n
аргументов, может быть определена на
наборах. Если для некоторой функции
,
то такая функция называется полностью
определенной.
В противном случае функция называется
не полностью
определенной.
Пусть
s
– число наборов, на которых значение
функции не определено. Не полностью
определенную функцию можно доопределить
значениями 0 или 1 на всех s
наборах, при этом выбор совокупности
значений функции может определяться
произвольно или исходя из каких-либо
рациональных соображений. Таким образом,
при произвольном доопределении не
полностью определенной функции можно
получить
различных полностью определенных
функций.
Переключательную функцию можно задать одним из трех способов: аналитическим, геометрическим или матричным [4]. Простейшей разновидностью матричного способа задания является составление таблицы истинности ПФ. Таблица истинности булевой функции представляет собой совокупность наборов входных аргументов и соответствующие этим наборам выходные значения задаваемой функции (табл. 3.1).
Таблица 3.1
№ набора |
0 |
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
x1 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
x2 |
0 |
0 |
0 |
0 |
1 |
1 |
1 |
1 |
0 |
0 |
0 |
0 |
1 |
1 |
1 |
1 |
x3 |
0 |
0 |
1 |
1 |
0 |
0 |
1 |
1 |
0 |
0 |
1 |
1 |
0 |
0 |
1 |
1 |
x4 |
0 |
1 |
0 |
1 |
0 |
1 |
0 |
1 |
0 |
1 |
0 |
1 |
0 |
1 |
0 |
1 |
f1(x1, x2, x3, x4) |
1 |
0 |
1 |
1 |
1 |
0 |
0 |
0 |
0 |
0 |
1 |
1 |
0 |
1 |
1 |
0 |
f2(x1, x2, x3, x4) |
1 |
1 |
0 |
0 |
0 |
1 |
1 |
0 |
1 |
0 |
0 |
0 |
0 |
0 |
0 |
1 |
f3(x1, x2, x3, x4) |
1 |
1 |
0 |
0 |
1 |
1 |
1 |
1 |
0 |
0 |
1 |
1 |
0 |
0 |
0 |
0 |
Задание ПФ при помощи таблицы истинности не всегда удобно, так как размеры таблицы растут пропорционально , где n – количество входных переменных.
При аналитическом способе задания ПФ определяемая функция описывается выражениями с использованием последовательностей входных переменных и операций алгебры логики (более подробно этот способ задания ПФ рассматривается в разделе 3.5).
Рассмотрим
геометрический способ задания ПФ. Каждый
двоичный набор n
переменных
в геометрическом смысле можно
интерпретировать как вектор единичной
длины, определяющий точку
n-мерного
пространства. Таким образом, множество
наборов определяет множество вершин
n-мерного
гиперкуба. Для
на рис. 3.1 представлен трехмерный куб,
где каждой вершине соответствует один
из возможных наборов входных переменных.
Для задания ПФ графическим
способом
необходимо определить ее значения в
вершинах n-мерного
гиперкуба.
Переключательная
функция называется существенно
зависящей от переменной
,
если хотя бы для одного набора переменных
выполняется следующее соотношение:
.
Если
такое соотношение не выполняется, то
функция
не зависит от переменной
.
В этом случае переменная
называется
фиктивной.
Фиктивные переменные можно исключить,
так как от этого значения функции не
изменяются.
Один из способов определения фиктивных переменных заключается в следующем. Разобьем множество наборов входных переменных на два подмножества. В первое подмножество входят наборы, на которых функция принимает значение 1, а во второе подмножество входят наборы, на которых функция принимает значение 0. Для проверки фиктивности переменной необходимо вычеркнуть соответствующие ей столбцы из обоих подмножеств. Отсутствие в подмножествах одинаковых наборов указывает на фиктивность аргумента .
В качестве примера рассмотрим функцию f3, заданную табл. 3.1. Разобьем множество ее аргументов на два подмножества (табл. 3.2, 3.3). Вычеркнем в этих таблицах столбцы, соответствующие переменной x4. Поскольку в таблицах отсутствуют одинаковые наборы, можно сделать вывод, что переменная x4 является фиктивной.
Таблица 3.2 Таблица 3.3
-
x1
x2
x3
x4
x1
x2
x3
x4
0
0
0
0
0
0
1
0
0
0
0
1
0
0
1
1
0
1
0
0
1
0
0
0
0
1
0
1
1
0
0
1
0
1
1
0
1
1
0
0
0
1
1
1
1
1
0
1
1
0
1
0
1
1
1
0
1
0
1
1
1
1
1
1
f3(x1, x2, x3, x4) = 1 f3(x1, x2, x3, x4) = 0