Автор: Пользователь скрыл имя, 24 Декабря 2010 в 16:58, курсовая работа
Построить устройство для преобразования последовательного двоично-десятичного кода X = (хЗ, х2, х1, х0), который подаётся на вход устройства z = (z3, z2, z1, z0). Десятичный эквивалент X двоично-десятичного кода может быть вычислен: Х=Ë xi pi , где xi = 0, 1 - цифра двоично-десятичного кода, a pi - вес i-ro разряда.
Задание 2
Введение 4
Понятие о дискретном (цифровом) автомате. 5
Основные понятия алгебры логики. 6
Понятия теории графов 11
Граф-дерево автомата Мура. 13
Граф-дерево автомата Мили. 14
Таблица переходов по автомату Мили 15
Таблица выходов по автомату Мили 15
Минимизация цифрового автомата Мили. 15
Таблица переходов с распределением неопределённостей. 15
Исключение недостижимых состояний. 16
Определение класса совместимости. 16
Классы единичной совместимости 17
Классы двоичной совместимости 18
Классы троичной совместимости Ошибка! Закладка не определена.
Классы четверичной совместимости Ошибка! Закладка не определена.
Таблица состояний и выходов нормализованного автомата 24
Структурный синтез цифрового автомата 26
Выбор триггера 27
Представление функции возбуждения 29
Таблица состояний и выходов нормализованного автомата
Минимизирующие карты 32
Минимизация функций по методу Квайна 33
Минимизация функций по методу Мак-Класки 33
Заключение 44
Литература 45
Кодированная таблица выходов является табличным описанием системы булевых функций, реализуемых схемой КСвых. Кодированная таблица переходов только после переработки с использованием матрицы переходов для заданного типа триггеров будет называться кодированной таблицей возбуждений и соответствовать описанию комбинационной схемы КСВХ.
Очевидно, что при кодировании переходов и выходов можно придерживаться двух принципов описания булевых функций. Если желательно получить табличное описание функций выходов с наименьшим количеством единичных значений, то для кодирования часто встречающихся в таблице выходов сигналов следует использовать коды с максимально возможным количеством нулей в коде, а для кодирования следующих по количеству ссылок в таблице выходов сигналов использовать коды с увеличивающимся количеством единиц в кодовых комбинациях. Для кодирования состояний блока памяти на D триггерах также можно использовать этот принцип кодирования, поскольку таблица возбуждений для них совпадает с таблицей переходов. Рекомендовать этот принцип для, всеобщего применения при синтезе автоматов нельзя, так как при минимизации булевых функций возможно получение более простых результирующих форм представления функций, имеющих более сложную запись в СДНФ (Нормальная дизьюктивная форма - это набор переменных без общих отрицаний и скобок. Совершенная НДФ - это когда все наборы переменных имею одинаковую длину. СДНФ - это набор конъюнкций переменных одинаковой длины). Этот принцип можно использовать только в том случае, если ФАЛ выходов и ФАЛ возбуждений для D триггеров не подлежат минимизации, поскольку реализуются на мультиплексорах, дешифраторах или постоянных запоминающих устройствах.
Второй
принцип кодирования
Закодируем состояния разрядами:
Состояние/код | XQ4Q3Q2Q1Q0 |
P2 | 000000 |
P6 | 000001 |
P7 | 000010 |
P8 | 000011 |
P9 | 000100 |
P10 | 000101 |
P11 | 000110 |
P12 | 000111 |
P13 | 001000 |
P14 | 001001 |
P16 | 001010 |
P18 | 001011 |
P19 | 001100 |
P21 | 001101 |
P23 | 001110 |
P25 | 001111 |
P1 | 010000 |
P3 | 010001 |
P4 | 010010 |
P5 | 010011 |
P15 | 010100 |
P17 | 010101 |
P20 | 010110 |
P22 | 010111 |
P24 | 011000 |
Таблица
переходов D-триггера:
Q | Q* | D |
0 | 0 | 0 |
0 | 1 | 1 |
1 | 0 | 0 |
1 | 1 | 1 |
Для
случая D – триггера
кодированная таблица
возбуждения блока памяти
совпадает с кодированной
таблицей переходов:
Состояние/код | ХQ4Q3Q2Q1Q0 | 0 | 1 | |||
D4D3D2D1D0 | Y | D4D3D2D1D0 | Y | |||
P2 | 000000 | 010001 | 0 | 000100 | 0 | |
P6 | 000001 | 000011 | 0 | 000101 | 0 | |
P7 | 000010 | 000000 | 0 | 000110 | 0 | |
P8 | 000011 | 000000 | 1 | 000111 | 0 | |
P9 | 000100 | 010100 | 1 | 000000 | 1 | |
P10 | 000101 | 001111 | 1 | 001010 | 1 | |
P11 | 000110 | 000000 | 0 | 001101 | 0 | |
P12 | 000111 | 001000 | 0 | 010101 | 0 | |
P13 | 001000 | 011000 | 0 | 000000 | 0 | |
P14 | 001001 | 001011 | 1 | 000000 | 1 | |
P16 | 001010 | 001001 | 0 | 010101 | 0 | |
P18 | 001011 | 010010 | 1 | 000000 | 1 | |
P19 | 001100 | 010011 | 1 | 000000 | 1 | |
P21 | 001101 | 001110 | 0 | 010111 | 0 | |
P23 | 001110 | 001100 | 1 | 000000 | 1 | |
P25 | 001111 | 010111 | 1 | 010001 | 1 | |
P1 | 010000 | 000001 | 0 | 000010 | 0 | |
P3 | 010001 | 010010 | 0 | 000000 | 0 | |
P4 | 010010 | 010011 | 0 | 000000 | 0 | |
P5 | 010011 | 010000 | 0 | 000000 | 0 | |
P15 | 010100 | 010110 | 1 | 000000 | 1 | |
P17 | 010101 | 010100 | 0 | 000000 | 0 | |
P20 | 010110 | 010000 | 1 | 000000 | 1 | |
P22 | 010111 | 011000 | 0 | 000000 | 0 | |
P24 | 011000 | 010110 | 0 | 000000 | 0 |
Выполним конкатенацию кодов входных сигналов и кодов состояний по порядку следования переменных XP4P3P2P1P0 и заполним таблицу истинности для функций выхода и возбуждений.
Поскольку
числовая СДНФ форма ФАЛ имеет
самую компактную запись и позволяет
при необходимости перейти к любому другому
описанию этой функции, по таблице истинности
функций выходов и входов запишем именно
в числовой форме функции выходов YD0D1D2D3D4
от ХP4P3P2P1P0.
Функция возбуждения D – триггера
Y=
D4=000000v000100v001000v001
v011000v000111v001010v00110
D3=000101v000111v001000v001
D2=000101v001101v001110v001
v000111v001011
D1=000001v000101v001001v001
v000011v010000
D0=000000v000001v000101v001
v001111
Для дальнейшей работы необходимо минимизировать полученные выходные функции автомата.
Минимизирующие карты
Одним из видов представления ФАЛ от небольшого числа переменных (как правило, не больше 5) являются диаграммы Карно или Вейча, которые строятся на развёртках многомерных кубов на плоскость. При этом вершины куба представляются клетками карты, координаты которых совпадают с координатами соответствующих вершин куба. Карта заполняется путём пометки кодов вершин, соответствующих наборам, на которых ФАЛ равна единице. Другими символами помечаются коды наборов, на которых ФАЛ не определена. Таким образом, диаграмма на карте Карно или Вейча соответствует представлению ФАЛ в СДНФ. Если строится карта Карно для нечётного количества переменных в наборе, то на расстоянии единицы слева от исходной карты для чётного количества переменных изображается повёрнутая на 180° вокруг оси, проходящей между исходной и новой картами, новая карта той же размерности. После этого в старшем разряде двоичных кодов наборов исходной карты добавляются незначащие нули, а в старшем разряде новой карты добавляются единицы. Эти две карты объединяются в одну большей размерности.
Если строится карта Карно для чётного количества переменных в наборе, то на расстоянии единицы снизу от исходной карты для нечётного количества переменных изображается повёрнутая на 180° вокруг оси, проходящей между исходной и новой картами, новая карта той же размерности. После этого в старшем разряде двоичных кодов наборов исходной карты добавляются незначащие нули, а в старшем разряде новой карты добавляются единицы. Эти две карты объединяются в одну большей размерности.
В картах наборы переменных, на которых функция принимает единичные значения, помечаются нечисловыми символами. Карта с нанесёнными на ней значениями ФАЛ называется диаграммой.
Карты, на которых коды наборов изображаются в восьмеричной системе счисления, называются картами Вейча.
Минимизация функций по методу Мак – Класки
Недостатком метода Квайна является - необходимость исчерпывающего по парного сравнения или сопоставления всех минтермов на этапе нахождения первичных импликант. С ростом числа минтермов увеличивается количество по парных сравнений.
Числовое представление ФАЛ позволяет упростить самый трудоёмкий первый этап. Все минтермы СДНФ ФАЛ записываются в виде их двоичных кодов, а все коды разбиваются по числу единиц на непересекающиеся группы.
Минтермы, подлежащие склеиванию, различаются только по одной переменной, а их коды - только в одном разряде. По этой причине сравнению подлежат только двоичные коды минтермов соседних групп.
Рассмотрев несколько методов минимизации ФАЛ, можно сделать вывод о том, что для решения нашей задачи наиболее подходящим является метод Мак – Класки.
Минимизация функций по методу Квайна
При минимизации по методу Квайна в базисе И, ИЛИ, НЕ исходная ФАЛ задаётся в СДНФ Целью минимизации является нахождение всех первичных импликант и выбор некоторых из них для минимальной записи функции.
Импликанта функции - некоторая логическая функция, обращаемая в нуль при наборе переменных, на котором сама функция также равна нулю.
Поэтому любой конъюнктивный терм, входящий в состав СДНФ, или группа термов, соединённых знаками дизъюнкции являются импликантами исходной ФАЛ. Импликанты имеют единичные значения только на подмножестве наборов из множества наборов, на которых исходная ФАЛ равна единице.