|
Проектирование операционного устройстваПроектирование операционного устройстваПЕТЕРБУРГСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ ПУТЕЙ СООБЩЕНИЯ Кафедра «Электронные вычислительные машины» Курсовой проект по дисциплине «Теория автоматов» Проектирование операционного устройства. Выполнил ст. гр. ИНФО-810 Бабкин А. Н. Проверил Ефимова Р. С. САНКТ-ПЕТЕРБУРГ 2000 В вычислительной технике применяются так называемые операционные устройства. Эти устройства могут выполнять различные операции над кодовыми словами. Любая операция может быть представлена конечной последовательностью действий, эти действия называются микрооперациями. В данной работе проводится проектирование операционного устройства, выполняющего операцию сложения двоичных чисел с фиксированной запятой в обратных кодах. Содержание Введение.________________________________________________________________4 1. Разработка структурной схемы операционного автомата. 1. Разработка содержательного графа операции сложения двоичных чисел в обратных кодах._____________________________5 2. Разработка структурной схемы операционного автомата.__________________8 1. Разработка функциональной схемы операционного автомата. 1. Синтез блока П._____________________________________________________10 2. Синтез блока C._____________________________________________________11 2. Разработка функциональной схемы управляющего автомата. 1. Структурная схема управляющего автомата._____________________________28 2. Закодированная граф-схема работы управляющего автомата и граф управляющего автомата.________________________________28 3. Синтез комбинационных схем, реализующих функции возбуждения элементов памяти управляющего автомата.______________________________31 3. Функциональная схема операционного устройства. 1. Организация связей между ___________________________________________33 операционным и управляющим автоматами. 2. Описание работы операционного устройства на заданном отрезке времени.__________________________________________33 Заключение.______________________________________________________________34 Литература.______________________________________________________________34 Приложение._____________________________________________________________35 Введение Задачей данного курсового проекта является разработка операционного устройства для выполнения заданной операции сложения с фиксированной запятой чисел, представленных обратными двоичными кодами на уровне логических схем. Эта задача разбивается на две: разработку схем операционного автомата и управляющего автомата. Все непосредственные операции действий над словами, вычисления логических условий, хранения данных возлагаются на операционный автомат. Управляющий автомат вырабатывает последовательность управляющих сигналов в соответствии микропрограммой функционирования операционного устройства. Эти управляющие сигналы поступают на вход операционного устройства. . 1. Разработка структурной схемы операционного автомата 1.1. Разработка содержательного графа операции сложения двоичных чисел в обратных кодах Для составления формального описания работы операционного устройства (ОУ) необходимо проанализировать словесное описание алгоритма выполнения заданной операции и с учетом исходных данных дать описание с помощью Ф- языка: . слов (наименование, тип, формат); . микроопераций; . логических условий; Описание слов показано в табл. 1. Таблица 1 |Слово |Назначение слова |Тип слова | |А(1:25) |Первое слагаемое |Входное, внутреннее | |В(1:25) |Второе слагаемое |Входное, внутреннее | |С(1:26) |Результат |Внутреннее, выходное | |П(1) |Признак переполнения |Внутреннее, выходное | Описание микроопераций дано в табл. 2. Таблица 2 |Пункт |Словесное описание |Условное |Формальное описание | |алгори| |обозначени| | |тма | |е | | |1 |Начало |y0 | | |2 |Присвоение слову П(1) |y1 |П(1):=0 | | |и старшему разряду | |С(1):=0 | | |слова С(1:26) значение| | | | |нуля | | | |3 | | | | |4.1 |Слову С(1:26) |y2 |C(1:26):=00.В(2:25)+01.| | |присвоить значение | |(А(2:25) | | |суммы слов В(1:25) и | | | | |А(1:25) с инверсией | | | | |числовых разрядов | | | | |последнего | | | |5.1 |Слову С(1:26) |y3 |C(1:26):=00. А(2:25) + | | |присвоить значение | |01.(В(2:25) | | |суммы слов А(1:25) и | | | | |В(1:25) с инверсией | | | | |числовых разрядов | | | | |последнего | | | |6.1 |К слову С(1:26) |y4 |С(1:26):= С(1:26)+1 | | |прибавить единицу | | | | |младшего разряда | | | |7.1 |Образование в С(1:26) |y5 |С(1:26):= | | |прямого кода | |С(1:2).(С(3:26) | | |результата | | | |8 |Слову С(1:26) |y6 |C(1:26):=00. А(2:25) + | | |присвоить значение | |00.В(2:25) | | |суммы слов А(1:25) и | | | | |В(1:25) | | | |9.1 |Слову П(1) |y7 |П(1):=1 | | |присваивается значение| | | | |единицы | | | |9.2 |Знаковому разряду |y8 |С(2):=А(1) | | |слова С(1:26) | | | | |присвоить значение | | | | |знакового разряда | | | | |слова А(1:25) | | | |10 |Конец |y0 | | Логические условия, под действием которых вырабатываются управляющие сигналы, описаны в табл. 3. Таблица 3 |Пункт |Словесное описание |Условное |Формальное описание | |алгорит|логических условий |обозначени| | |ма | |е | | |3 |Проверка знака слова |x1 |[pic] | | |А(1:25) | | | |4,5 |Проверка знака слова |x2 |[pic] | | |В(1:25) | | | |6 |Проверка старшего |x3 |[pic] | | |разряда слова С(1:26) | | | |7,9 |Проверка знака слова |x4 |[pic] | | |С(1:26) | | | Для проектирования ОУ необходимо удостоверится в правильности алгоритма, для этого "прогонка" (проверка) алгоритма проводилась по всем возможным случаям знака множителей, а также на случай переполнения. В результате этой проверки выяснено, что алгоритм верен, и на его основе можно ОУ (см. Приложение табл. 20). Чтобы связи между ступенями алгоритма представлялись яснее, весь алгоритм можно изобразить в виде содержательного графа, который дает визуальное представление об алгоритме данной операции. Содержательный граф-схема микрооперации предсталена на рис. 1.1.1. 2. В структурном отношении операционный автомат может быть разбит на блоки, каждый из которых содержит в себе элементы памяти и комбинационные схемы, количество блоков определяется количеством слов с памятью. Память – это регистр, длина которого совпадает с длиной слова. Если микрооперации выполняются над отдельными разрядами слова и при этом различны в разных разрядах, то в регистре выделяются так называемые поля, то есть совокупности разрядов объединенных общей совокупностью микроопераций или общим участием в формировании условий. Например, поле знаковых разрядов. Разбиение на поля данных слов при заданной операции описано в табл. 4. Таблица 4 |Имя |Множество |Множество |Поля | |блока |микроопераций в блоке|логических | | | | |условий | | |А | |x1 |А(1), А(2:25) | |В | |x2 |В(1), В(2:25) | |С |y1, y2, y3, y4, y5, |x3, x4 |С(1), С(2), С(3:25), | | |y6, y8 | |С(26) | |П |y1, y7 | |П(1) | 1.2 Разработка структурной схемы операционного автомата. Структурная схема дает представление о количестве блоков, входящих в структуру, их назначении, описание особенностей и о связях между блоками в процессе реализации функций устройства. Количество блоков равно количеству слов с памятью, то есть необходимо четыре блока. Связь между блоками (регистрами) осуществляется при передаче информации из блока в блок или при занесении информации извне. Входными сигналами в операционный автомат являются сигналы из управляющего автомата, они дают команду на выполнение микроопераций над словами. Выходными сигналами из операционного автомата являются значения логических условий, которые в свою очередь поступают на входы управляющего автомата. Тогда с помощью данных из таблиц 1, 2, 3, 4 можно составить структурную схему операционного автомата, которая представлена на рис. 1.2.1. Рис. 1.2.1. 2. Разработка функциональной схемы операционного автомата 2.1. Синтез блока П Для синтеза комбинационной схемы каждого разряда необходимо четко знать какие микрооперации выполняются в блоке, какие логические условия вычисляются в нем и какие поля выделены. Это видно из таблицы 4. Тогда можно приступать к синтезу комбинационной схемы разрядов каждого поля, но так как разряды каждого поля обрабатываются одинаково, то можно синтезировать только один разряд из соответствующего поля. Синтез поля П(1). Над этим полем выполняются несколько микроопераций, поэтому синтез осуществляется на каждом поле отдельно, а потом эти результаты объединяются. То есть будут составляться функции возбуждения триггера для каждой микрооперации, а далее эти функции объединяются в функцию окончательного результата путем выполнения операции дизъюнкции функций возбуждения, полученных для каждой микрооперации. Это возможно, так как над одним и тем же полем одновременно может выполняться только одна микрооперация. Все эти условия распространяются и на все другие поля всех блоков. y1: П(1):=0 Можно составить каноническую таблицу переходов автомата (табл. 5). Табл. 5 |t |t+1 |t | |П(1|П(1)|J |K | |) | | | | |0 |0 |0 |0(1| |1 |0 |0(1|1 | Из табл. 5 можно написать функцию возбуждения для триггера по входам J и K. J=0, K=1. y7: П(1):=1 Можно составить каноническую таблицу переходов автомата (табл. 6). Табл. 6 |t |t+1 |t | |П(1|П(1)|J |K | |) | | | | |0 |1 |1 |0(1| |1 |1 |0(1|0 | Из табл. 6 можно написать функцию возбуждения для триггера по входам J и K. J=1, K=0. Теперь можно написать общий вид функции возбуждения поля П(1). [pic] Логическая схема поля П(1) будет выглядеть так, как показано на рис. 2.1.1. Рис. 2.1.1. 2.2. Синтез блока С В блоке С выделено несколько полей, соответственно синтез будет производиться для каждого из них отдельно. Поле С(1). y1: С(1):=0 Таблица и функции аналогичны таблице 5 и функциям для микрооперации y1 над полем П(1). J=0, K=1. y2: С(1):=P(1), где P(1) – перенос в первый разряд из второго. Так как р поле С(1) было обнулено при микрооперации y1, то в таблице 7 можно рассматривать только наборы, где С(1)=0. Таблица 7 |t |t+1 |t | |С(1)|P(1)|С(1)|J |K | |0 |0 |0 |0 |0(1 | |0 |1 |1 |0(1 |1 | Дополнив функцию на невозможных наборах, получаются следующие выражения функций возбуждения. J=P(1), K=1. Функция P(1) будет найдена при синтезе поля С(2), так как она зависит от значения самого поля, переноса в этот разряд и значения слагаемых, сумма которых записывается в разряд С(2). y3: В этой микрооперации все аналогично таблице 7, то есть J=P(1), K=1. y6: С(1):=0 Таблица переходов аналогична таблице 5, значит сразу известны выражения для J и K. J=0, K=1. y4: C(1):=C(1)+P(1) [pic] J=P(1) K=P(1) Окончательный результат синтеза поля С(1) может быть представлен в виде: [pic] Логическое условие: x3=С(1). Логическая схема поля С(1) будет выглядеть так, как это показано на рис. 2.2.1. Рис. 2.2.1. Данной схеме можно сопоставить условное изображение "черного ящика", то есть известно, что на входе и, что на выходе. Эта схема представлена на рисунке 2.2.2. Рис. 2.2.2. Поле С(2). y2: С(2):=1+P(2) Можно перейти к булеву выражению этого разряда С(2)=[pic] Соответственно таблица функций (табл. 8) возбуждения будет выглядеть так: Таблица 8 |T |t+1 |t | |С(2)|P(2)|С(2)|P(1)|J |K | |0 |0 |1 |0 |1 |0(1 | |0 |1 |0 |1 |0 |0(1 | |1 |0 |1 |0 |0(1 |0 | |1 |1 |0 |1 |0(1 |1 | Из данной канонической таблицы необходимо написать выражения функций J, K, P(1). [pic] y3: Абсолютно аналогично y2: [pic] y6: С(2):=P(2) Соответственно таблица функций (табл. 9) возбуждения будет выглядеть так: Таблица 9 |T |t+1 |t | |С(2)|P(2)|С(2)|P(1)|J |K | |0 |0 |0 |0 |0 |0(1 | |0 |1 |1 |0 |1 |0(1 | |1 |0 |0 |0 |0(1 |1 | |1 |1 |1 |0 |0(1 |0 | Из данной канонической таблицы необходимо написать выражения функций J, K, P(1). [pic] y8: С(2):=А(1) Таблица аналогична таблице 9, только столбец P(2) заменяется на А(1). А функции выглядят так: [pic] y4: C(2):=C(2)+P(2) [pic] J=P(2) K=P(2) P(1)=P(2)C(2) Составляются результирующие функции возбуждения элемента памяти и переноса в старший разряд, а также выражение функции логического условия. [pic] Выражение для P(2) будет найдено при синтезе поля С(3:25). Логическая схема для С(2) выглядит как показано на рис. 2.2.3. Рис. 2.2.3. На рис. 2.2.4. представлено условное обозначение разряда С(2). Рис. 2.2.4. Логическая схема переноса в С(1) представлена на рис. 2.2.5. Рис. 2.2.5. Поле С(3:25). Здесь для синтеза можно выбрать любой разряд этого поля, и обозначить его как С(i). y2: C(i):=(A(i-1)+B(i-1)+P(i) В виде логической функции это получится так, [pic], здесь P(i) перенос в i-ый разряд Примечание. Следует заметить, что выражение для переноса P(i) будет выглядеть совершенно идентично выражению для P(2) и P(i-1), в таком случае можно ограничится синтезом только P(i-1). Составляется каноническая таблица переходов для поля C(i) (табл. 10) Таблица 10 |t |t+1 |t | |C(i) |A(i-1) |B(i-1) |P(i) |C(i) |P(i-1) |J |K | |0 |0 |0 |0 |1 |0 |1 |0(1 | |0 |0 |0 |1 |0 |1 |0 |0(1 | |0 |0 |1 |0 |0 |1 |0 |0(1 | |0 |0 |1 |1 |1 |1 |1 |0(1 | |0 |1 |0 |0 |0 |0 |0 |0(1 | |0 |1 |0 |1 |1 |0 |1 |0(1 | |0 |1 |1 |0 |1 |0 |1 |0(1 | |0 |1 |1 |1 |0 |1 |0 |0(1 | |1 |0 |0 |0 |1 |0 |0(1 |0 | |1 |0 |0 |1 |0 |1 |0(1 |1 | |1 |0 |1 |0 |0 |1 |0(1 |1 | |1 |0 |1 |1 |1 |1 |0(1 |0 | |1 |1 |0 |0 |0 |0 |0(1 |1 | |1 |1 |0 |1 |1 |0 |0(1 |0 | |1 |1 |1 |0 |1 |0 |0(1 |0 | |1 |1 |1 |1 |0 |1 |0(1 |1 | Составляются функции возбуждения и функция переноса P(i-1) из таблицы 10: J |B(i-1)|00|01|11|10| |P(i) | | | | | | | | | | | |C(i)A(| | | | | |i-1) | | | | | |00 |1 |0 |1 |0 | |01 |0 |1 |0 |1 | |11 |* |* |* |* | |10 |* |* |* |* | K |B(i-1)|00|01|11|10| |P(i) | | | | | | | | | | | |C(i)A(| | | | | |i-1) | | | | | |00 |* |* |* |* | |01 |* |* |* |* | |11 |0 |1 |0 |1 | |10 |1 |0 |1 |0 | [pic] [pic] [pic] y3: C(i):=A(i-1)+(B(i-1)+P(i), [pic] Аналогично y2 с заменой в табл. 10 столбца A(i-1) на B(i-1), а B(i-1) на A(i-1), соответственно получается: [pic] [pic] [pic] y5: C(i):=(C(i), необходимо перейти к выражению в виде булевой функции, [pic] Таблица функций возбуждения триггера (табл. 11) будет выглядеть так, Таблица 11 |T |t+1 |t | |C(i)|C(i)|J |K | |0 |1 |1 |0(1 | |1 |0 |0(1 |1 | Из таблицы 11 можно написать выражения для J и K. J=1 K=1 y6: C(i):=A(i-1)+B(i-1)+P(i), переход к булевой функции, [pic] Составляется каноническая таблица функций возбуждения (табл. 12), Таблица 12 |t |t+1 |t | |C(i) |A(i-1) |B(i-1) |P(i) |C(i) |P(i-1) |J |K | |0 |0 |0 |0 |0 |0 |0 |0(1 | |0 |0 |0 |1 |1 |0 |1 |0(1 | |0 |0 |1 |0 |1 |0 |1 |0(1 | |0 |0 |1 |1 |0 |1 |0 |0(1 | |0 |1 |0 |0 |1 |0 |1 |0(1 | |0 |1 |0 |1 |0 |1 |0 |0(1 | |0 |1 |1 |0 |0 |1 |0 |0(1 | |0 |1 |1 |1 |1 |1 |1 |0(1 | |1 |0 |0 |0 |0 |0 |0(1 |1 | |1 |0 |0 |1 |1 |0 |0(1 |0 | |1 |0 |1 |0 |1 |0 |0(1 |0 | |1 |0 |1 |1 |0 |1 |0(1 |1 | |1 |1 |0 |0 |1 |0 |0(1 |0 | |1 |1 |0 |1 |0 |1 |0(1 |1 | |1 |1 |1 |0 |0 |1 |0(1 |1 | |1 |1 |1 |1 |1 |1 |0(1 |0 | Составляются функции возбуждения и функция переноса P(i-1) из таблицы 12: J |B(i-1)|00|01|11|10| |P(i) | | | | | | | | | | | |C(i)A(| | | | | |i-1) | | | | | |00 |0 |1 |0 |1 | |01 |1 |0 |1 |0 | |11 |* |* |* |* | |10 |* |* |* |* | K |B(i-1)|00|01|11|10| |P(i) | | | | | | | | | | | |C(i)A(| | | | | |i-1) | | | | | |00 |* |* |* |* | |01 |* |* |* |* | |11 |1 |0 |1 |0 | |10 |0 |1 |0 |1 | [pic] [pic] [pic] y4: C(i):=C(i)+P(i) [pic] J=P(i) K=P(i) P(i-1)=C(i)P(i) Составляются результирующие функции J, K и P(i-1), по ним на рис. 2.2.6., рис. 2.2.7. изображены логические схемы C(i), P(i-1), а на рис. 2.2.8. и рис. 2.2.9. соответственно даны их условные обозначения. [pic] [pic] [pic] Рис. 2.2.6. Рис. 2.2.7. Рис. 2.2.8. Страницы: 1, 2 |
|
|||||||||||||||||||||||||||||
|
Рефераты бесплатно, реферат бесплатно, сочинения, курсовые работы, реферат, доклады, рефераты, рефераты скачать, рефераты на тему, курсовые, дипломы, научные работы и многое другое. |
||
При использовании материалов - ссылка на сайт обязательна. |