Международный институт компьютерных технологий
ПРАКТИКУМ ПО ТЕОРИИ АВТРМАТОВ:
синтез синхронного управляющего автомата
Учебное пособие
Воронеж 2004
УДК 519.713 (075)
Тюрин С.В. Практикум по теории автоматов: синтез синхронного управляющего автомата. Учеб. пособие. Воронеж: Воронеж. гос. техн. ун-т, 2004. 84 с.
Учебное пособие содержит варианты заданий на курсовое проектирование, общие требования к выполнению и оформлению текстового и графического материалов курсового проекта, а также краткие теоретические сведения об основах синтеза синхронных управляющих автоматов на двухуровневых программируемых логических матрицах (ПЛМ) и комбинированных синхронных двухтактных триггерах.
Учебное пособие предназначено для студентов технических вузов, обучающихся по специальности 220100 "Вычислительные машины, комплексы, системы и сети".
Табл. 30. Ил. 34. Библиогр.: 14 назв.
Научный редактор д-р техн. наук С.Л. Подвальный
Рецензенты: кафедра автоматизированных систем управления Военного института радиоэлектроники (начальник кафедры канд. техн. наук М.И. Чурсин);
|
|
д-р техн. наук Н.И.Баранников
Печатается по решению редакционно-издательского совета Воронежского государственного технического университета.
© Тюрин С.В., 2004
© Оформление. Издательство
Воронежского государственного
технического университета, 2004
ВВЕДЕНИЕ
Одной из дисциплин для специальности ”Вычислительные машины, комплексы, системы и сети” является "Теория автоматов", обязательным минимумом содержания которой для дипломированного специалиста является [1]:
автоматы и формальные языки; регулярные языки и конечные автоматы; модель дискретного преобразователя В.М. Глушкова; абстрактный синтез; получение не полностью определенного автомата; структурный синтез; состояния элементов памяти; кодирование состояний синхронного и асинхронного автомата; явление риска логических схем; построение комбинационной схемы автомата; микропрограммирование.
Закрепление у студентов указанных выше теоретических положений "Теории автоматов", а также приобретение первичных навыков по практическому решению задач логического проектирования достаточно простых узлов цифровой вычислительной техники и являются основной целью и содержанием курсового проектирования.
В качестве объекта проектирования выбран гипотетический синхронный управляющий автомат (УА), реализующий под воздействием совокупности входных сигналов некоторый алгоритм функционирования. Алгоритм функционирования задается в виде граф - схемы алгоритма (ГСА), который, по сути, однозначно определяет закон одновременного формирования комбинации выходных сигналов УА из ограниченной их совокупности.
|
|
Согласно ГОСТ 22487-77 под проектированием понимается процесс последовательного составления и детализации взаимосогласованных модельных описаний еще не существующего материального объекта. Таким образом, в результате проектирования объект проектирования еще не материализуется, а создается его прообраз на другой материальной основе (чертежи, схемы, текстовые документы и т.п.). Причем этот прообраз может быть необходим для дальнейшего проектирования, а может быть уже достаточным для материализации объекта проектирования.
1 цели и особенности курсового проектирования
1.1 Основные цели курсового проектирования
Задание на курсовое проектирование ориентировано на достижение следующих основных целей:
— получение практических навыков по организации процесса проектирования синхронных управляющих автоматов, содержанию основных этапов проектирования, самостоятельному поиску и анализу соответствующей научно-технической литературы, а также правильному составлению и оформлению текстовой и графической документации в соответствии с Единой Системой Конструкторской Документации (ЕСКД);
— уточнение особенностей модели дискретного преобразователя В.М. Глушкова как совокупности управляющего автомата (УА) и операционного автомата (ОА);
— демонстрация практических способностей по использованию математических моделей конечных автоматов типа Мили и Мура для структурной и функциональной последовательной детализации проектируемых управляющих автоматов;
— закрепление методов логического синтеза и минимизации комбинационной части (логического преобразователя) проектируемого УА;
— уточнение и закрепление знаний по особенностям работы различных триггерных схем, возможностям их взаимной трансформации, а также по использованию совокупности триггеров для структурного кодирования внутренних состояний проектируемого УА;
— осознание способов структурного кодирования синхронных УА и получение практических навыков по их применению;
— более глубокое изучение принципов построения, работы, программирования, минимизации и практического применения двухуровневых программируемых логических матриц при проектировании управляющих автоматов;
—
1.2 Специфические особенности объекта проектирования
Объектом курсового проектирования является синхронный управляющий автомат (УА), реализующий некоторый алгоритм функционирования, который формально задается таким начальным языком описания как граф-схема алгоритма (ГСА). Синтезируемый УА на наивысшем уровне абстракции (на уровне "черного ящика") представим так, как показано на рисунке 1.1.
s
х1 y1
|
хn ym
Рис.1.1 Представление синтезируемого УА на уровне "черного ящика"
Словесно работу синхронного УА, представленного на уровне "черного ящика", можно описать следующим образом. На входы УА поступают входные сигналы х1 … хn, каждый из которых принимает одно из двух различимых значений, например, 1 или 0. На каждом i – ом шаге алгоритма работы, УА формирует некоторую совокупность Yi выходных сигналов из множества y1 … ym, каждый из которых также может принимать одно из значений 1 или 0. Сигналы х1 … хn принято называть логическими условиями; сигналы y1 … ym – микрооперациями, а Yi – микрокомандами. Переход на новый шаг алгоритма осуществляется только с приходом специального сигнала синхронизации (s). Выбор следующего шага алгоритма работы УА полностью предопределен его ГСА, а именно текущим шагом алгоритма и значениями одного или нескольких сигналов х1 … хn.
|
|
Математические модели Мили и Мура позволяют провести следующий шаг детализации структуры проектируемого УА, который представляется состоящим из двух взаимосвязанных функциональных частей – логического преобразователя (ЛП) и блока памяти (БП), так, как это показано на рис.1.2.
х1 y1
|
d1 f1
|
dr fr
s
Рис.1.2. Первый уровень структурной детализации УА в соответствии с моделями Мили и Мура
|
|
Блок памяти на своих выходах d1 … dr должен формировать двоичный код, который соответствует номеру текущего шага алгоритма УА, или, как принято говорить в теории автоматов, соответствует текущему внутреннему состоянию автомата. Предварительно все возможные внутренние состояния УА обозначаются некоторыми абстрактными символами (чаще всего какой-либо буквой с соответствующим индексом), которым затем ставятся в однозначное соответствие двоичные структурные коды. На входы блока памяти должны воздействовать сигналы f1 … fr, которые формируются ЛП и в совокупности образуют двоичный код, соответствующий структурному коду следующего внутреннего состояния УА. Совокупность одновременно формируемых сигналов f1 … fr принято называть функцией возбуждения блока памяти, а каждый отдельный сигнал f1 … fr - функциями возбуждения элементов памяти.
Задачей логического преобразователя является формирование выходных сигналов УА и функций возбуждения элементов памяти как некоторой системы логических функций, аргументами которых являются переменные x1… xn, d1…dr. Такую систему логических функций принято называть каноническими логическими уравнениями УА, которые и должны реализовываться логическим преобразователем (ЛП).
1.3 Целесообразная последовательность решения задач курсового проектирования
Целесообразной является следующая последовательность решения задач курсового проектирования:
- анализ исходных данных для проектирования;
- подбор необходимой научно-технической литературы, ее анализ и конспектирование наиболее важного или трудного для практического применения материала;
- определение порядка выполнения курсового проекта и осознание содержания последовательно выполняемых этапов;
- составление структуры и содержания расчетно-пояснительной записки (РПЗ), предъявляемой по окончании курсового проектирования и содержащей задание на курсовое проектирование, текстовые и графические пояснения к курсовому проекту, расчеты и т.п.;
- реализация отдельных этапов курсового проектирования;
- разработка схемы электрической функциональной синтезированного УА, реализованного на программируемой логической матрице и синхронных триггерах;
- изучение требований ЕСКД к структуре и правилам оформления РПЗ;
- изучение требований ЕСКД к правилам оформления и начертания схем электрических функциональных;
- оформление расчетно-пояснительной записки и схемы электрической функциональной синтезированного управляющего автомата в соответствии с требованиями ЕСКД;
- самостоятельная подготовка к защите курсового проекта;
- защита курсового проекта.
2 ЗАДАНИЯ ДЛЯ КУРСОВОГО ПРОЕКТИРОВАНИЯ
Для курсового проектирования задание может быть типовым или специальным. Специальные задания могут выдаваться наиболее подготовленным в данной предметной области студентам. Тематика специальных заданий должна иметь либо практическую, либо, научно-исследовательскую направленность. В зависимости от сложности специальной темы курсового проектирования, а также от уровня начальной подготовки студентов, возможно коллективное (по два и более студента) выполнение курсового проекта. При коллективном проектировании его организация возлагается на самого подготовленного студента в группе проектировщиков, который выбирается группой и распределяет индивидуальные задания по другим участникам группы. К положительным сторонам коллективного учебного курсового проектирования можно отнести [2]:
- получение более обширных знаний в конкретной предметной области;
- возможность доброжелательного, свободного и потому творческого обмена мнениями, а также коллективная ответственность за результаты проектирования;
- возможность ускоренной передачи профессиональной информации от более подготовленных студентов к менее подготовленным, и тем самым, обоюдное повышение образовательного уровня.
Типовое задание на курсовое проектирование (Табл. 2.0) содержит следующие исходные данные:
- тип управляющего автомата;
- тип синхронных триггерных схем;
- способ структурного кодирования внутренних состояний управляющего автомата;
- граф-схему алгоритма (ГСА) функционирования управляющего автомата и состав его микрокоманд.
G = Ц0.
Величина H находится как:
H = 1 +(Ц1 + Ц0).
Таблица 2.0
Типовое задание для курсового проектирования
ВАРИАНТ (G) | ТИП УА | СПОСОБ КОДИРОВАНИЯ СОСТОЯНИЙ УА | ТИП СИНХРОННЫХ ТРИГГЕРОВ | ГСА | ||||||
МИЛИ | МУРА | ТРИВ. | ЭФФ. 1 | ЭФФ. 2 | RS | D | T | JK | ||
+ | + | + | Рис. 2.Н Табл.2.Н | |||||||
+ | + | + | ||||||||
+ | + | + | ||||||||
+ | + | + | ||||||||
+ | + | + | ||||||||
+ | + | + | ||||||||
+ | + | + | ||||||||
+ | + | + | ||||||||
+ | + | + | ||||||||
+ | + | + |
Примечание: В таблице 2.0 новые обозначения означают
ТРИВ. - тривиальный способ структурного кодирования;
ЭФФ.1 - первый эффективный способ структурного кодирования;
ЭФФ.2 - второй эффективный способ структурного кодирования.
Рассмотрим (в качестве примера) определение номера варианта типового задания, состоящего из G-2.H, для конкретного случая. Пусть номер студенческой зачетной книжки есть № 123463. Тогда:
G = Ц0 = 3;
H = 1 +(Ц1 + Ц0) = 1 + (6 + 3) = 10.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Таблица 2.1
Yi | микрооперации | ||||||
y1 | y2 | y3 | y4 | y5 | y6 | y7 | |
Y1 | |||||||
Y2 | |||||||
Y3 | |||||||
Y4 | |||||||
Y5 | |||||||
Y6 | |||||||
Y7 | |||||||
Y8 | |||||||
Y9 | |||||||
Y10 |
Таблица 2.2
Yi | микрооперации | ||||||
y1 | y2 | y3 | y4 | y5 | y6 | y7 | |
Y1 | |||||||
Y2 | |||||||
Y3 | |||||||
Y4 | |||||||
Y5 | |||||||
Y6 | |||||||
Y7 | |||||||
Y8 | |||||||
Y9 | |||||||
Y10 |
| |||
Таблица 2.3
Yi | микрооперации | ||||||
y1 | y2 | y3 | y4 | y5 | y6 | y7 | |
Y1 | |||||||
Y2 | |||||||
Y3 | |||||||
Y4 | |||||||
Y5 | |||||||
Y6 | |||||||
Y7 | |||||||
Y8 | |||||||
Y9 | |||||||
Y10 |
Таблица 2.4
Yi | микрооперации | ||||||
y1 | y2 | y3 | y4 | y5 | y6 | y7 | |
Y1 | |||||||
Y2 | |||||||
Y3 | |||||||
Y4 | |||||||
Y5 | |||||||
Y6 | |||||||
Y7 | |||||||
Y8 | |||||||
Y9 | |||||||
Y10 |
Таблица 2.5
Yi | микрооперации | ||||||
y1 | y2 | y3 | y4 | y5 | y6 | y7 | |
Y1 | |||||||
Y2 | |||||||
Y3 | |||||||
Y4 | |||||||
Y5 | |||||||
Y6 | |||||||
Y7 | |||||||
Y8 | |||||||
Y9 | |||||||
Y10 |
Таблица 2.6
Yi | микрооперации | ||||||
y1 | y2 | y3 | y4 | y5 | y6 | y7 | |
Y1 | |||||||
Y2 | |||||||
Y3 | |||||||
Y4 | |||||||
Y5 | |||||||
Y6 | |||||||
Y7 | |||||||
Y8 | |||||||
Y9 | |||||||
Y10 |
Таблица 2.7
Yi | микрооперации | ||||||
y1 | y2 | y3 | y4 | y5 | y6 | y7 | |
Y1 | |||||||
Y2 | |||||||
Y3 | |||||||
Y4 | |||||||
Y5 | |||||||
Y6 | |||||||
Y7 | |||||||
Y8 | |||||||
Y9 | |||||||
Y10 |
Таблица 2.8
Yi | микрооперации | ||||||
y1 | y2 | y3 | y4 | y5 | y6 | y7 | |
Y1 | |||||||
Y2 | |||||||
Y3 | |||||||
Y4 | |||||||
Y5 | |||||||
Y6 | |||||||
Y7 | |||||||
Y8 | |||||||
Y9 | |||||||
Y10 |
Таблица 2.9
Yi | микрооперации | ||||||
y1 | y2 | y3 | y4 | y5 | y6 | y7 | |
Y1 | |||||||
Y2 | |||||||
Y3 | |||||||
Y4 | |||||||
Y5 | |||||||
Y6 | |||||||
Y7 | |||||||
Y8 | |||||||
Y9 | |||||||
Y10 |
Таблица 2.10
Yi | микрооперации | ||||||
y1 | y2 | y3 | y4 | y5 | y6 | y7 | |
Y1 | |||||||
Y2 | |||||||
Y3 | |||||||
Y4 | |||||||
Y5 | |||||||
Y6 | |||||||
Y7 | |||||||
Y8 | |||||||
Y9 | |||||||
Y10 |
Таблица 2.11
Yi | микрооперации | ||||||
y1 | y2 | y3 | y4 | y5 | y6 | y7 | |
Y1 | |||||||
Y2 | |||||||
Y3 | |||||||
Y4 | |||||||
Y5 | |||||||
Y6 | |||||||
Y7 | |||||||
Y8 | |||||||
Y9 | |||||||
Y10 |
Таблица 2.12
Yi | микрооперации | ||||||
y1 | y2 | y3 | y4 | y5 | y6 | y7 | |
Y1 | |||||||
Y2 | |||||||
Y3 | |||||||
Y4 | |||||||
Y5 | |||||||
Y6 | |||||||
Y7 | |||||||
Y8 | |||||||
Y9 | |||||||
Y10 |
Таблица 2.13
Yi | микрооперации | ||||||
y1 | y2 | y3 | y4 | y5 | y6 | y7 | |
Y1 | |||||||
Y2 | |||||||
Y3 | |||||||
Y4 | |||||||
Y5 | |||||||
Y6 | |||||||
Y7 | |||||||
Y8 | |||||||
Y9 | |||||||
Y10 |
Таблица 2.14
Yi | микрооперации | ||||||
y1 | y2 | y3 | y4 | y5 | y6 | y7 | |
Y1 | |||||||
Y2 | |||||||
Y3 | |||||||
Y4 | |||||||
Y5 | |||||||
Y6 | |||||||
Y7 | |||||||
Y8 | |||||||
Y9 | |||||||
Y10 |
Таблица 2.15
Yi | микрооперации | ||||||
y1 | y2 | y3 | y4 | y5 | y6 | y7 | |
Y1 | |||||||
Y2 | |||||||
Y3 | |||||||
Y4 | |||||||
Y5 | |||||||
Y6 | |||||||
Y7 | |||||||
Y8 | |||||||
Y9 | |||||||
Y10 |
Таблица 2.16
Yi | микрооперации | ||||||
y1 | y2 | y3 | y4 | y5 | y6 | y7 | |
Y1 | |||||||
Y2 | |||||||
Y3 | |||||||
Y4 | |||||||
Y5 | |||||||
Y6 | |||||||
Y7 | |||||||
Y8 | |||||||
Y9 | |||||||
Y10 |
Таблица 2.17
Yi | микрооперации | ||||||
y1 | y2 | y3 | y4 | y5 | y6 | y7 | |
Y1 | |||||||
Y2 | |||||||
Y3 | |||||||
Y4 | |||||||
Y5 | |||||||
Y6 | |||||||
Y7 | |||||||
Y8 | |||||||
Y9 | |||||||
Y10 |
Таблица 2.18
Yi | микрооперации | ||||||
y1 | y2 | y3 | y4 | y5 | y6 | y7 | |
Y1 | |||||||
Y2 | |||||||
Y3 | |||||||
Y4 | |||||||
Y5 | |||||||
Y6 | |||||||
Y7 | |||||||
Y8 | |||||||
Y9 | |||||||
Y10 |
Таблица 2.19
Yi | микрооперации | ||||||
y1 | y2 | y3 | y4 | y5 | y6 | y7 | |
Y1 | |||||||
Y2 | |||||||
Y3 | |||||||
Y4 | |||||||
Y5 | |||||||
Y6 | |||||||
Y7 | |||||||
Y8 | |||||||
Y9 | |||||||
Y10 |
По приведенным на рисунках 2.1 … 2.19 ГСА определяется мощность множества Х входных сигналов синтезируемого УА. По таблицам 2.1 … 2.19 определяются микрооперации yj, выполняемые одновременно при реализации УА каждой из микрокоманд Yi. Полагается, что если микрооперация yj = 1, то она выполняется в данной микрокоманде, а если yj = 0, то не выполняется. Содержимое таблиц 2.1 … 2.19 может быть представлено более компактно. Например, для таблицы 2.19 ее содержимое можно представить следующим образом:
Y1 = {y1, y5, y6};
Y2 = {y2, y7};
Y3 = {y2, y5, y7};
Y4 = {y3, y5};
Y5 = {y1, y2, y4, y7};
Y6 = {y3, y4};
Y7 = {y1, y3, y4, y6, y7};
Y8 = {y1, y2, y5, y6, y7};
Y9 = {y4, y7};
Y10 = {y2, y3}.
Общее количество микрокоманд, представленных в таблицах, может превосходить число микрокоманд, представленных на ГСА.
3 СОСТАВ И ОБЪЕМ КУРСОВОГО ПРОЕКТА
Курсовой проект должен включать расчетно – пояснительную записку (РПЗ) и схему электрическую функциональную (СЭФ) синтезированного синхронного управляющего автомата.
В расчетно – пояснительной записке, объемом 15…20 страниц формата А4, приводятся поясняющие текстовые, графические, расчетные, иллюстративные и т.п. материалы, размещенные по разделам проекта. Представляемая схема электрическая функциональная оформляется как приложение к РПЗ.
Расчетно – пояснительная записка содержит:
- титульный лист (ПРИЛОЖЕНИЯ А, Б);
- задание на курсовое проектирование (ПРИЛОЖЕНИЯ В, Г);
- отдельный лист "ЗАМЕЧАНИЯ РУКОВОДИТЕЛЯ";
- СОДЕРЖАНИЕ;
- ВВЕДЕНИЕ;
- основной текст РПЗ;
- ЗАКЛЮЧЕНИЕ;
- СПИСОК ЛИТЕРАТУРЫ;
- ПРИЛОЖЕНИЯ.
Введение должно содержать краткую характеристику проблематики той дисциплины, в рамках которой выполняется курсовое проектирование, а также основные цели, задачи курсового проектирования и целесообразную последовательность их решения.
Основной текст РПЗ может иметь следующую структуру:
1 Общие принципы построения и реализации синхронных управляющих автоматов (УА)
1.1 Обобщенная структура и принцип функционирования синхронных управляющих автоматов
1.2 Последовательность синтеза синхронных управляющ