Разработка цифрового аппарата
Разработка цифрового аппарата
ФГОУ ВПО Оренбургский Государственный Аграрный Университет Кафедра Информатики и информационного обеспечения Курсовой проектТема: Разработка цифрового аппаратаОренбург - 2010Задание на курсовой проектСинтезировать цифровой аппарат Мура с D-триггером, используя заданный граф микропрограммы автомата (структурная схема алгоритма).Рисунок 1 - граф микропрограммы автомата (вариант 46).ВведениеФункции цифрового аппарата (ЦА) сводятся к вводу, выводу, хранению информации, выполнению микроопераций и вычислению логических условий. Набор элементов, на основе которых строятся структуры автоматов с указанными функциями, составляет:а) шины, обеспечивающие передачу информации;б) регистры, обеспечивающие хранение слов и состоящие из совокупности элементов памяти (ЭП);в) комбинационные схемы (КС), осуществляющие вычисление логических функций.Шины обозначают совокупность цепей, где одна цепь служит для передачи одного бита информации, с целью упрощения и чтения схем.ЭП, составляющие регистры, выбирают, как правило, с синхронной записью или с синхронной установкой.КС по существу является перекодирующим устройством и главным объектом синтеза ЦА. Для ее реализации используется весь арсенал элементов логических функций и умение получать простые решения минимизацией составленных для КС систем уравнений логических вычислений.Теоретической основой управляемых ЦА являются автоматы Мили (рисунок 2) и Мура (рисунок 3). Типичным примером автомата Мили являются электронные часы с цифровым табло, где выходные функции - сегменты индикации, а входные - кнопки режимов: при нажатии одной из кнопок устанавливается действие соответствующей управляющей функции. Главная особенность автомата Мили заключается в возможности при одном и том же состоянии ЭП задать несколько выходных функций: индикацию текущего времени, дня недели, числа месяца, номера текущего месяца и т. д. В промышленных устройствах автоматики, как правило, не встречаются в чистом виде автоматы одного типа. Однако в их структурах доминирует автомат Мура. Поэтому в данной работе он будет являться объектом проектирования.1. Форма представления заданияИсходной формой задания является граф микропрограммы автомата (структурная схема алгоритма), которая, как правило, является частью программы функционирования какого-либо устройства в целом и поэтому выглядит достаточно абстрактно.Функции ЦА, согласно графу, представленному на рисунке 1:yi - микрооперации, генерируемые ЦА (выходные функции);хi - входные функции ЦА.После описания входных и выходных функций можно непосредственно приступить к синтезу ЦА.2. Технология синтеза ЦА2.1 Эскизная частьДля начала выявим состояния ЦА Мура на графе алгоритма и обозначим их через аi (рисунок 1). По количеству состояний определяем необходимое количество ЭП из соотношения:2^n-1<N<=2^n,где N - число состояний, а n - число ЭП. Исходя из рисунка, видим, что N=8. Значит, n=3.Здесь же делаем проверку на предмет исключения КС2 из схемы. Это эффективно в тех случаях, когда количество ЭП совпадает с числом выходных функций yi (идеальный случай), или они отличаются на несколько единиц процентном отношении. При этом обязательным условием является отсутствие последовательно следующих одинаковых комбинаций (или групп комбинаций) выходных функций ЦА в какой-либо части алгоритма работ ЦА. В это случае состояниям ЭП присваиваются состояния выходных функций, а выходные функции yi будут сниматься прямо с выходов ЭП.В заданном алгоритме работы ЦА выполняется первое условие - нет одинаковых комбинаций yi, непосредственно следующих друг за другом. Но количество выходных функций yi (4) отличается от количества ЭП на 75%. Следовательно, синтеза КС2 не избежать. КС2 осуществляет перекодирование состояний ЭП в комбинации yi.Теперь остается выбрать тип ЭП. Это очень непростая задача, так как в лоб она не решается. И чтобы выбрать оптимальный вариант, приходится разрабатывать синтез ЦА на разных типах ЭП. Однако, бывают очевиднее решения. Некоторые и них:- если количество ветвлений во много раз меньше числа состояний ЦА, то предпочтительней закодировать самый длинный цикл переходов ЭП в виде последовательного набора двоичных чисел, а для реализации этого наилучшим образом подходит JK-триггер (он разработан для двоичного счета);- если количество ветвлений во много раз больше числа состояний ЭП, то предпочтительней подбирать эти состояния между переходами так, чтобы они отличались изменением только одного заряда; в этом случае эффективнее использовать D-триггер.В нашем случае полная неопределенность -два ветвления и три состояния ЭП. Но согласно заданию, необходимо разработать ЦА с D-триггером. Составляем структурную схему ЦА, так как для этого есть все данные. Результат представлен на рисунке 2. Рисунок 2 - структурная схема ЦА.На рисунке 2 КС1 и КС2 представлены в виде черных ящиков с известными входными и выходными функциями и неизвестным содержимым.2.2 Синтез КС2Известны выходные функции КС2, но не установлены пока входные, которые являются состояниями ЭП. Установить их и установить соответствие между входными и выходными функциями - авторское право. Творческий подход к решению этой проблемы заключается в попытке найти наиболее простую схему КС2 методом подбора 2^n вариантов составления таблицы истинности КС2. Поскольку генерируемый ЭП код уже выбран заранее, то остается получить эти варианты только цикличным сдвигом входных кодов по отношению к выходным.Анализ восьми вариантов таблицы истинности приведен ниже.Таблица 1 - первый вариант таблицы истинности КС2.|
Входные функции | Выходные функции | Состояния | | Q2 | Q1 | Q0 | y1 | y2 | y3 | y4 | | | 0 | 0 | 0 | 0 | 0 | 0 | 0 | a0 | | 0 | 0 | 1 | 1 | 1 | 1 | 0 | a1 | | 0 | 1 | 0 | 1 | 1 | 1 | 1 | a2 | | 0 | 1 | 1 | 0 | 1 | 1 | 0 | a3 | | 1 | 0 | 0 | 0 | 0 | 1 | 1 | a4 | | 1 | 0 | 1 | 0 | 1 | 1 | 0 | a5 | | 1 | 1 | 0 | 0 | 0 | 1 | 0 | a6 | | 1 | 1 | 1 | 0 | 0 | 1 | 1 | a7 | | | y1=Q2'Q1'Q0+Q2'Q1Q0'; y2=Q2'Q1'Q0+Q2'Q1 Q0'+Q2'Q1Q0+Q2Q1'Q0= Q1'Q0+Q2'Q1;y3=Q2'Q1'Q0+Q2'Q1 Q0'+Q2'Q1Q0+Q2Q1'Q0'+Q2Q1'Q0+Q2Q1Q0'+Q2Q1Q0= Q1+ Q2+ Q2'Q1'Q0;Таблица 2 - второй вариант таблицы истинности КС2|
y4=Q2'Q1 Q0'+ Q2Q'1Q0'+ Q2Q1Q0Входные функции | Выходные функции | Состояния | | Q2 | Q1 | Q0 | y1 | y2 | y3 | y4 | | | 1 | 1 | 1 | 0 | 0 | 0 | 0 | a0 | | 0 | 0 | 0 | 1 | 1 | 1 | 0 | a1 | | 0 | 0 | 1 | 1 | 1 | 1 | 1 | a2 | | 0 | 1 | 0 | 0 | 1 | 1 | 0 | a3 | | 0 | 1 | 1 | 0 | 0 | 1 | 1 | a4 | | 1 | 0 | 0 | 0 | 1 | 1 | 0 | a5 | | 1 | 0 | 1 | 0 | 0 | 1 | 0 | a6 | | 1 | 1 | 0 | 0 | 0 | 1 | 1 | a7 | | | y1=Q2'Q1'Q0'+Q2'Q1'Q0= Q2'Q1'; y2=Q2'Q1'Q0'+Q2'Q1'Q0+Q2'Q1Q0'+Q2Q1'Q0'= Q2'Q1'+Q2'Q1Q0'+Q2Q1'Q0';y3=Q2'Q1'Q0'+Q2'Q1'Q0+Q2'Q1Q0'+Q2'Q1Q0+Q2Q1'Q0'+Q2Q1'Q0+Q2Q1Q0'=Q0'+ Q1'Q0+ Q2'Q1Q0;y4=Q2'Q1'Q0+ Q2'Q1Q0+ Q2Q1Q0'= Q2'Q0+ Q2Q1Q0'Таблица 3 - третий вариант таблицы истинности КС2|
Входные функции | Выходные функции | Состояния | | Q2 | Q1 | Q0 | y1 | y2 | y3 | y4 | | | 1 | 1 | 0 | 0 | 0 | 0 | 0 | a0 | | 1 | 1 | 1 | 1 | 1 | 1 | 0 | a1 | | 0 | 0 | 0 | 1 | 1 | 1 | 1 | a2 | | 0 | 0 | 1 | 0 | 1 | 1 | 0 | a3 | | 0 | 1 | 0 | 0 | 0 | 1 | 1 | a4 | | 0 | 1 | 1 | 0 | 1 | 1 | 0 | a5 | | 1 | 0 | 0 | 0 | 0 | 1 | 0 | a6 | | 1 | 0 | 1 | 0 | 0 | 1 | 1 | a7 | | | y1=Q2Q1Q0+Q2'Q1'Q0'; y2=Q2Q1Q0+Q2'Q1'Q0'+Q2'Q1'Q0+Q2'Q1Q0= Q1Q0+Q2'Q1'; y3=Q2Q1Q0+Q2'Q1'Q0'+Q2'Q1'Q0+ Q2'Q1Q0'+Q2'Q1Q0+Q2Q1'Q0'+Q2Q1'Q0=Q0+ Q1'Q0'+ Q2'Q1Q0';Таблица 4 - четвертый вариант таблицы истинности КС2|
Входные функции | Выходные функции | Состояния | | Q2 | Q1 | Q0 | y1 | y2 | y3 | y4 | | | 1 | 0 | 1 | 0 | 0 | 0 | 0 | a0 | | 1 | 1 | 0 | 1 | 1 | 1 | 0 | a1 | | 1 | 1 | 1 | 1 | 1 | 1 | 1 | a2 | | 0 | 0 | 0 | 0 | 1 | 1 | 0 | a3 | | 0 | 0 | 1 | 0 | 0 | 1 | 1 | a4 | | 0 | 1 | 0 | 0 | 1 | 1 | 0 | a5 | | 0 | 1 | 1 | 0 | 0 | 1 | 0 | a6 | | 1 | 0 | 0 | 0 | 0 | 1 | 1 | a7 | | |
Страницы: 1, 2, 3
|
|