ФГОУ ВПО Оренбургский Государственный Аграрный Университет
Кафедра Информатики и информационного обеспечения
Курсовой проект
Тема: Разработка цифрового аппарата
Оренбург – 2010
Задание на курсовой проект
Синтезировать цифровой аппарат Мура с D-триггером, используя заданный граф микропрограммы автомата (структурная схема алгоритма).
Рисунок 1 – граф микропрограммы автомата (вариант 46).
Введение
Функции цифрового аппарата (ЦА) сводятся к вводу, выводу, хранению информации, выполнению микроопераций и вычислению логических условий. Набор элементов, на основе которых строятся структуры автоматов с указанными функциями, составляет:
а) шины, обеспечивающие передачу информации;
б) регистры, обеспечивающие хранение слов и состоящие из совокупности элементов памяти (ЭП);
в) комбинационные схемы (КС), осуществляющие вычисление логических функций.
Шины обозначают совокупность цепей, где одна цепь служит для передачи одного бита информации, с целью упрощения и чтения схем.
ЭП, составляющие регистры, выбирают, как правило, с синхронной записью или с синхронной установкой.
КС по существу является перекодирующим устройством и главным объектом синтеза ЦА. Для ее реализации используется весь арсенал элементов логических функций и умение получать простые решения минимизацией составленных для КС систем уравнений логических вычислений.
Теоретической основой управляемых ЦА являются автоматы Мили (рисунок 2) и Мура (рисунок 3).
Типичным примером автомата Мили являются электронные часы с цифровым табло, где выходные функции – сегменты индикации, а входные – кнопки режимов: при нажатии одной из кнопок устанавливается действие соответствующей управляющей функции.
Главная особенность автомата Мили заключается в возможности при одном и том же состоянии ЭП задать несколько выходных функций: индикацию текущего времени, дня недели, числа месяца, номера текущего месяца и т. д.
В промышленных устройствах автоматики, как правило, не встречаются в чистом виде автоматы одного типа. Однако в их структурах доминирует автомат Мура. Поэтому в данной работе он будет являться объектом проектирования.
1. Форма представления задания
Исходной формой задания является граф микропрограммы автомата (структурная схема алгоритма), которая, как правило, является частью программы функционирования какого-либо устройства в целом и поэтому выглядит достаточно абстрактно.
Функции ЦА, согласно графу, представленному на рисунке 1:
yi — микрооперации, генерируемые ЦА (выходные функции);
хi– входные функции ЦА.
После описания входных и выходных функций можно непосредственно приступить к синтезу ЦА.
2. Технология синтеза ЦА
2.1 Эскизная часть
Для начала выявим состояния ЦА Мура на графе алгоритма и обозначим их через аi (рисунок 1).
По количеству состояний определяем необходимое количество ЭП из соотношения:
2^n-1
где 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
a
1
1
1
1
a1
1
1
1
1
1
a2
1
1
1
1
a3
1
1
1
a4
1
1
1
1 --PAGE_BREAK----PAGE_BREAK--
y3
y4
1
1
a
1
1
1
1
1
1
a1
1
1
1
1
a2
1
1
1
a3
1
1
1
a4
1
1
1
1
a5
1
1
a6
1
1
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
1
a
1
1
1
1
1
a1
1
1
1
1
1
1
1
a2
1
1
a3
1
1
1
a4
1
1
1
a5
1
1
1
a6
1
1
1
a7
y1=Q2Q1Q0’+Q2Q1Q0=Q2Q1;
y2=Q2Q1Q0’+Q2Q1Q0+Q2’Q1’Q0’+Q2’Q1Q0’= Q2Q1+Q2’Q0’;
y3=Q2Q1Q0’+Q2Q1Q0+Q2’Q1’Q0’+Q2’Q1’Q0+Q2’Q1Q0’+Q2’Q1Q0+Q2Q1’Q0’=Q0’+ Q1Q0+ Q2’Q1’Q0; продолжение
--PAGE_BREAK--
y4=Q2Q1Q0+ Q2’Q1’Q0+ Q2Q1’Q0’
Таблица 5 – пятый вариант таблицы истинности КС2
Входные функции
Выходные функции
Состояния
Q2
Q1
Q0
y1
y2
y3
y4
1
a
1
1
1
1
1
a1
1
1
1
1
1
1
a2
1
1
1
1
1
a3
1
1
a4
1
1
1
a5
1
1
a6
1
1
1
1
a7
y1=Q2Q1’Q0+Q2Q1Q0’;
y2=Q2Q1’Q0+Q2Q1Q0’+Q2Q1Q0+Q2’Q1’Q0= Q2Q1+Q1’Q0;
y3=Q2Q1’Q0+Q2Q1Q0’+Q2Q1Q0+Q2’Q1’Q0’+Q2’Q1’Q0+Q2’Q1Q0’+Q2’Q1Q0=Q0+ Q1Q0’+ Q2’Q1’Q0’;
y4=Q2Q1Q0’+ Q2’Q1’Q0’+ Q2’Q1Q0
Таблица 6 – шестой вариант таблицы истинности КС2
Входные функции
Выходные функции
Состояния
Q2
Q1
Q0
y1
y2
y3
y4
1
1
a
1
1
1
1
a1
1
1
1
1
1
1
a2
1
1
1
1
a3
1
1
1
1
1
a4
1
1 продолжение
--PAGE_BREAK----PAGE_BREAK----PAGE_BREAK----PAGE_BREAK--
1
1
x
x
1
1
1
1
1
1
-
-
-
-
-
-
1
1
1
1
1
x
1
x
1
1
1
1
1
x
x
1
1
1
1
-
-
-
-
-
-
1
x
x
1
1
1
1
x
1
1
1
1
1
x
x
1
1
1
1
1
1
1
1
-
-
-
-
-
-
1
1
1
1
1
1
x
1
x
1
1
1
1
1
1
x
x
1
1
1
1
1
-
-
-
-
-
-
1
1
x
x
1
1
1
1
1
x
1
1
1
1
1
1
x
x
1
1
1
1
1
1
1
1
1x
1
1
1
-
-
-
-
-
-
1
1
1
1
1
1
1
x
1
x
1
1
1
1
1
1
1
x
x
1
1
1
1
1
1
-
-
-
x
x
1
1
1
1
1
1
1
x
1
1
1
1
1
x
x
1
1
1
1
1
1
1
x
1
1
-
-
-
-
-
-
1
1
1
1
1
1
x
1
x
1
1
1
1
1
1
x
x
1
1
1
1
1
-
-
-
-
-
-
1
1
x
x
1 продолжение
--PAGE_BREAK--
Теперь необходимо определить логические выражения для D-триггера – D0, D1 и D2.
Анализируя таблицу истинности, видим, что D2 есть логическая единица. Для составления логических выражений для D1 и D2 воспользуемся картой Карно, таким образом, будет сразу проведена минимизация ДНФ.
2.4 Составление логической схемы ЦА
При построении логической схемы ЦА за основу принимаем структурную схему автомата (рисунок 2). Все связи между блоками уже определены в структурной схеме, остается только заполнить «черные» ящики КС1 иКС2 элементами, определенными в предыдущих пунктах и регистр ЭП представить соответствующим количеством триггеров и соединить все эти элементы в соответствии с уравнениями для y1, y2, y3, y4 и D0, D1, D2.
Текстовые входы (входы «С») триггеров соединяем в один узел (параллельное соединение) для того, чтобы подключить к этому входу ЦА тактовый сигнал.
Таким образом, получается схемное решение ЦА (рисунок 3).
Заключение
Синтез ЦА на основе графа микропрограммы автомата состоит из двух этапов: составление логической схемы ЦА (которое в свою очередь включает эскизную часть, синтез КС2 и КС1) и непосредственно интегральной микросхемы ЦА. На первом этапе для оформления курсового проекта используются средства пакета MS Office – MS Word. На втором этапе применяются данные справочников по интегральным микросхемам для построения ее на основе логической схемы ЦА путем замены логических элементов на соответствующие цифровые микросхемы.
Список использованной литературы
Булатов В. Н. Дискретные преобразования и логический синтез в цифровой электронике. Методические указания; ОГУ. Оренбург, 1994
Тарабрин Б. В. Справочник по интегральным микросхемам; М.: «Энергия», 1977