- •Часть 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 Реверсивный регистр сдвига
- •Список литературы
12.4 Минимизация абстрактных автоматов
На первом этапе синтеза АА определяют входные/выходные каналы, общее число внутренних состояний, составляют таблицы переходов и выходов АА или строят граф автомата. Определенный таким образом АА может иметь больше внутренних состояний, чем это необходимо для выполнения его функций. При минимизации количества состояний автомата используют принцип эквивалентности. Два эквивалентных автомата могут отличаться только числом внутренних состояний, т. е. избыточной памятью. Из всех рассмотренных вариантов эквивалентных автоматов, выбирают схему с меньшим числом состояний, т. е. с меньшим количеством элементов памяти (триггеров).
Алгоритм минимизации, предложенный Ауфенкампом и Хоном 2 основан на идеи разбиения состояний А на попарно непересекающиеся классы эквивалентности и замене их одним состоянием.
Два состояния А относят к 1-классу эквивалентности (по таблице выходов), если находясь в любом из них, при подаче любого входного сигнала, получаем одинаковые выходы.
Пример. Пусть автомат Мили задан таблицей переходов и выходов (таблица 12.5). Необходимо минимизировать А по числу состояний.
Таблица 12.5-Таблица переходов и выходов А
По таблице выходов, объединяя ее одинаковые столбцы, находим 1-класс эквивалентности U1={B1,B2}, где B1={Z1, Z2, Z5, Z6}, B2={Z3, Z4}.
Строим новую таблицу переходов, где состояния заменяем соответствующими подклассами B1,B2 объединения U1 1-класса эквивалентности (таблица 12.6).
Таблица12.6-Класс эквивалентности 1-й
По таблице 12.6 находим 2-класс эквивалентности U2={С1,С2,С3}, где С1={Z1, Z2}, C2={Z5, Z6}, C3={Z3, Z4}.В том же порядке строим таблицу 12.7.
Таблица12.7-Класс эквивалентности 2-й
Определив по этой таблице 3- класс эквивалентности, видим, что он одинаков со вторым. Поэтому, останавливаемся на 2-классе эквивалентности.
Выбирая произвольно из каждого полученного подкласса С1,С2,С3 по одному состоянию, получим минимизированное множество, например, V={Z1, Z4, Z5} состояний абстрактного автомата. Оставив в таблице 12.5 только эти состояния, и заменяя в таблице 12.7 подклассы С1,С2,С3 на Z1, Z4, Z5, получим таблицу переходов и выходов минимального автомата Мили (МАМ,таблица 12.8).
Таблица 12.8-Таблица переходов и выходов МАМ
13 Методы структурного синтеза автоматов
После этапа абстрактного синтеза следует этап структурного синтеза, целью которого является проектирование логической схемы цифрового автомата из элементов выбранного базиса.
Структурный синтез автомата базируется на основе композиции элементарных автоматов, например, логического базиса булевых функций. При проектировании, элементарные автоматы А1,А2,…,Ак объединяются во взаимосвязанную систему совместно работающую по выполнению заданных функций и алгоритмов ЦА.
Структурный синтез конкретизирует абстрактные входные/выходные каналы, превращая их в определенные связи, двоичные сигналы, коды адресов, коды данных и другие переменные.
13.1 Канонический метод синтеза автомата
Теоретическим обоснованием структурного синтеза автоматов является теорема о структурной полноте [6].
Всякая система элементарных автоматов, которая содержит автомат Мура с нетривиальной памятью, обладающий полной системой переходов и полной системой выходов, и какую-либо функционально полную систему элементов логических функций, является структурно полной.
Канонический метод структурного синтеза предполагает представление структурной и логической схемы автомата в виде двух частей: памяти и комбинационной схемы (рисунок 13.1).
Память автомата состоит из элементарных, полных автоматов Мура П1,...,Пi…Пt.
Любой автомат Мура должен иметь полную систему переходов и полную систему выходов. Это означает, что для любой пары состояний автомата памяти найдется входной сигнал, переключающий его во второе состояние. Полнота системы выходов автомата Мура состоит в том, что каждому состоянию соответствует свой кодированный сигнал на его выходе. Другими словами, в полном автомате Мура отождествляется его состояние с выходом, т.е. по выходу можно определить в каком состоянии он находится.
Общее количество элементов памяти Мура Т в синтезируемом автомате А определяется необходимой совокупностью всех его состояний М 2Т, где 2 основание двоичной системы счисления. Так, например, автомат имеющий пять элементов памяти может иметь 25 состояний, коды которых определяются простой последовательностью двоичных пятиразрядных чисел.
Так как, после выбора элементов памяти, каждое состояние синтезируемого автомата А определяется кодом состояний элементов Мура, то, например, чтобы перевести его из состояния Zm=00101 в состояние Zs=00001, необходимо переключить триггер третьего разряда из 1 в 0. Эти переключения происходят под действием сигналов, поступающих из комбинационной части автомата.
Результатом канонического метода структурного синтеза является система логических уравнений математического описания автомата А. Эта модель отражает зависимость выходных сигналов автомата (в том числе и для переключения памяти) от сигналов входных переменных (в том числе и сигналов, снимаемых с выхода элементов памяти).
Для правильной работы схемы, сигналы на входе запоминающих элементов не должны непосредственно участвовать в образовании выходных сигналов, которые по цепям обратной связи подавались бы в тот же самый момент времени на эти входы.
Таким образом, при каноническом методе синтез автомата сводится к выбору элементов памяти и синтезу комбинационной части схемы, входами которой являются сигналы входных переменных структурного автомата (х1, х2, ..., хn} и сигналы обратной связи от элементов памяти {v1, v2,...,vt}, a выходами - сигналы на выходных каналах (у1 у2, ...,уm} и функций переключения памяти {u1, u2,..., ut}. Автомат А можно задать следующей системой уравнений:
Для практики проектирования цифровых автоматов, рассмотрим пример применения канонического метода структурного синтеза логической схемы.