- •Часть 2
- •8.091501–«Компьютерные системы и сети» и
- •7.091503–«Специализированные компьютерные системы»
- •Содержание
- •Введение
- •1 Основные понятия и определения алгебры логики и цифрового конечного автомата
- •1.1 Основные определения алгебры логики
- •1.2 Конечный автомат
- •1.3 Основные логические операции
- •1.3.1 Операция отрицания
- •1.3.2 Операция логического умножения
- •1.3.3 Операция логического сложения
- •1.3.4 Операция эквиваленция
- •1.3.5 Операция импликация
- •1.3.6 Сумма по модулю 2
- •1.3.7 Штрих Шеффера
- •1.3.8 Стрелка Пирса
- •2 Зависимость состава функций от числа переменных
- •2.1 Состав функций при отсутствии входных переменных
- •2 .2 Функции одной переменной
- •2.3 Функции двух переменных
- •2.4 Действительные и фиктивные функции
- •2.5 Определение общего числа функций
- •3 Суперпозиция функций
- •3.1 Методы суперпозиции
- •3.2 Выражение одних элементарных функций через другие
- •4 Свойства законов и правила алгебры логики
- •4.1 Свойства операций конъюнкции, дизъюнкции и отрицания
- •4.2 Свойства суммы по модулю 2, импликации, функции Шеффера и Пирса
- •5.1.1 Представление лф в совершенной дизъюнктивной нормальной форме
- •5.1.2 Дизъюнктивная нормальная форма лф
- •5.1.3 Представление лф в совершенной конъюнктивной нормальной форме
- •5.2 Основные свойства и алгоритм получения сднф, скнф
- •5.2.1 Общие свойства сднф
- •5.2.2 Алгоритм записи сднф
- •5.2.3 Свойства скнф
- •5.2.4 Алгоритм записи скнф
- •5.3 Способы преобразования днф и кнф в сднф и скнф
- •6 Полные системы функций
- •6.1 Функционально полные базисы
- •6.2 Теорема Поста
- •7 Методы минимизации функций алгебры логики
- •7.1 Аналитический метод минимизации фл
- •7.2 Числовое и геометрическое представление фл
- •7.3 Минимизация фл с помощью комплекса кубов
- •7.3.1 Построение комплекса кубов и его минимального покрытия
- •7.3.2 Цена покрытия кубов
- •7.4 Метод неопределенных коэффициентов
- •8 Метод квайна-мак-класки
- •9 Метод минимизации фл с помощью карт карно
- •9.1 Правила минимизации по картам Карно
- •9.1.1 Соседние клетки
- •9.1.2 Правило объединения соседних клеток
- •9.1.3 Определение простых импликант
- •9 .2 Не полностью определенные логические функции в картах Карно
- •10 Анализ и структурный синтез цифровых автоматов
- •10.1 Задачи анализа и синтеза
- •10.2 Синтез элементов логических схем
- •10.3 Особенности схем логических элементов
- •10.3.1 Базовый логический элемент
- •10.3.2 Элемент с открытым коллектором
- •10.3.3 Элементы и - или – не и расширители
- •10.3.4 Трисабильные элементы
- •10.4 Временные параметры логических микросхем
- •10.5 Переходные процессы в логических схемах микросхем
- •11 Комбинационные схемы
- •11.1 Построение преобразователя кодов
- •11.2 Сумматоры
- •11.3 Временные логические функции
- •12 Способы задания цифровых конечных автоматов
- •12.1 Математические модели ца
- •12.2 Табличный способ задания ца
- •12.3 Задание цифрового автомата графом
- •12.4 Минимизация абстрактных автоматов
- •13 Методы структурного синтеза автоматов
- •13.1 Канонический метод синтеза автомата
- •13.1.1 Пример синтеза ца каноническим методом
- •13.2 Структурный синтез ца по методу графа автомата
- •13.3 Метод синтеза ца по граф–схеме алгоритма
- •13.4 Синтез автомата с жесткой логикой управления
- •13.4.1 Принцип работы микропрограммного автомата с жесткой логикой управления
- •13.4.2 Проектирование микропрограммного автомата с жесткой логикой управления
- •14 Язык задания поведения цу - vhdl и синтезатор leonardo
- •15 Программируемые логические матрицы
- •16 Схемы основных логических устройств
- •16.1 Элементы памяти последовательностных логических схем
- •16.1.1 Триггер
- •16.1.1.1 Асинхронный rs - триггер
- •16.1.1.2 Синхронный rs - триггер
- •16.1.2 Универсальный jk-триггер
- •16.2 Регистры
- •16.2.1 Параллельные и последовательные регистры
- •16.2.2 Реверсивный регистр сдвига
- •Список литературы
9 Метод минимизации фл с помощью карт карно
Одним из способов графического представления булевых функций от небольшого числа переменных являются карты Карно. Их разновидность - карты Вейча. Карты строят как развертки кубов на плоскости. При этом, вершины куба представляются клетками карты, координаты которых совпадают с координатами соответствующих вершин куба (минтермов). Карта заполняется так же, как таблица истинности: значение 1 указывается в клетке, соответствующей набору (минтерму), на котором функция имеет значение 1. Значение f = 0 обычно на картах не отражается. Условное размещение координат переменных и примеры минимизации ФЛ на картах для двух, трех и четырех переменных показаны на рисунке. 9.1.
9.1 Правила минимизации по картам Карно
Способ минимизации ФЛ с помощью карт Карно получил широкое применение среди специалистов. Этому способствовали довольно высокая формализация действий, наглядность графики и относительно простые правила. Как показано на рисунке 9.1, карты Карно представляют прямоугольником (квадратом), на котором размещают 2n клеток, где n-число переменных ФЛ. При заполнении клеток значениями функций 1, используют условные координаты размещения переменных. Координаты клеток обычно указывают с левой стороны и сверху, используя код Грея. Если нарушить места обозначения координат, то минимальная функция не будет отвечать истине. Каждой клетке соответствует свой минтерм, обозначенный пересечением переменных строк и столбцов. После заполнения клеток карт единицами, определяют соседние клетки.
9.1.1 Соседние клетки
Соседними клетками считают те заполненные клетки, которые имеют общие стороны. Соседними считают и клетки расположенные в противоположных крайних строках и (или) столбиках. В самом деле, если мысленно свернуть карту, то крайние, противоположные строки (столбцы) станут соседними. Поэтому, например, все угловые клетки карт для двух, трех и четырех переменных считают соседними.
При числе переменных больше четырех, карты Карно составляются из нескольких карт для четырех переменных, поэтому, соседними клетками считают еще и те, которые находятся на одинаковых координатах в соседних картах.
Для минимизации функций с числом переменных больше 7 карты Карно практически не применяются.
После определения соседних клеток, их объединяют контурами объединения.
9.1.2 Правило объединения соседних клеток
Контур должен содержать только соседние клетки, при этом, число единиц включенных в контур должно быть равным одному из чисел: 2, 4, 8, 16, 32, 64,…,2n. Это условие обязательно.
Любой контур объединения может пересекаться с другими. Поэтому, одни и те же единицы могут быть включены одновременно в разные контуры.
Общее число контуров должно быть как можно меньшим, так как каждый контур объединения это новый минтерм функции и чем меньше их будет, тем она минимальна.
С другой стороны, общее число объединенных единиц должно быть по возможности большим, так как это уменьшает число переменных в минтерме, понижая его ранг. Всегда объединение в 2k клеток (соседних единиц) исключает из минтермов k переменных, где k=1,2,3,4,…. Необходимо помнить, что объединение соседних клеток это процесс требующий наличие опыта по выбору наилучшего варианта. Поэтому, каждый раз при минимизации необходимо просматривать несколько вариантов и выбирать лучший, который приводит к минимальной функции. После объединения соседних клеток, переходим к записи для них минтермов.