вар_50 (Курсовой проект (готовый) вариант 50)
Описание файла
Файл "вар_50" внутри архива находится в следующих папках: Курсовой проект (готовый) вариант 50, 50. Документ из архива "Курсовой проект (готовый) вариант 50", который расположен в категории "". Всё это находится в предмете "электронные вычислительные машины (эвм)" из 5 семестр, которые можно найти в файловом архиве МГТУ им. Н.Э.Баумана. Не смотря на прямую связь этого архива с МГТУ им. Н.Э.Баумана, его также можно найти и в других разделах. Архив можно найти в разделе "курсовые/домашние работы", в предмете "эксплуатация эвм" в общих файлах.
Онлайн просмотр документа "вар_50"
Текст из документа "вар_50"
30
Московский государственный технический университет
им. Н. Э. Баумана
Принял:
Виноградов В.И.
«___»__________2003 г.
____________________
Курсовая работа
«Проектирование вычислительного устройства»
по дисциплине
"Архитектура ЭВМ"
Вариант №50
Выполнила:
студентка группы ИУ5-52
Труш В. С.
_____________________________________________________
Москва 2003
Содержание.
-
Постановка задачи 3
-
Микропрограммы машинных операций 4
-
Алгоритмы подключения, отключения, запроса исходных данных и передачи результата. 4
-
Алгоритм выполнения операции «Сдвиг арифметический». 5
-
Алгоритм выполнения операции «Сложение». 6
-
Алгоритм выполнения операции «Вычитание». 8
-
Алгоритм выполнения операции «Вычитание обратное». 9
-
Алгоритм выполнения операции «Вычитание модулей». 10
-
Логические операции. 11
-
Обобщенная микропрограмма. 13
Списки операций и условий. 13
Закодированный граф микропрограммы. 15
Разработка структурной схемы операционного автомата. 16
Синтез операционных элементов. 17
Функциональная схема операционной части ВУ. 20
Список переходов. 21
Программирование ПЛМ. 23
Подсчет числа тактов, необходимых для выполнения каждой микрооперации. 27
Заключение. 28
Список использованной литературы. 29
1. Постановка задачи.
-
Спроектировать вычислительное устройство для выполнения заданного множества операций. Вычислительное устройство должно состоять из операционной части и блока управления и подключаться к интерфейсу.
-
Состав шин интерфейса:
1. Шины прямой передачи данных /входные/ разрядностью 8 бит.
2. Шины обратной передачи данных /выходные/ разрядностью 8 бит.
3. Управляющие шины:
- проверка готовности устройства /ПРГОТ/,
- сигнал занятости устройства /ЗАН/,
- код операции /КОП/,
- передача данных по входным шинам /ДАННЫЕ/,
- передача результата по выходным шинам /РЕЗ/,
- запрос на передачу данных /ЗАПР/,
- подтверждение приема результата /ПРРЕЗ/,
- готовность устройства /ГОТ/,
- сигнал прерывания при делении на нуль /ПР/.
Таблица №1. Закодированный вариант задания.
Вариант | Выполняемые операции | Разрядность операндов | Код | Серия микросхем | ||||||
50 | С1 | А1 | А2 | А3 | А4 | Л7 | Л8 | 8 | П | K155 |
Таблица №2. Расшифровка перечисленных в задании операций.
Номер | Обозначение операции | Операция |
1. | С1 | Сдвиг арифметический |
2. | А1 | Сложение |
3. | А2 | Вычитание |
4. | А3 | Вычитание обратное |
5. | А4 | Вычитание модулей |
6. | Л7 | |
7. | Л8 |
Формат, команд:
0 23 4 7
КОП |
2. Микропрограммы машинных операций.
Для реализации вычислительного устройства, выполняющего операции указанные в задании к курсовой работе необходимо разработать микропрограммы для каждой из операций. Микропрограмма должна обеспечивать корректное считывание операндов с входной шины данных, выполнение самой операции и выдачу результата на выходную шину данных. При этом необходимо учесть, что работа вычислительного устройства должна быть согласована с работой внешнего устройства. Для выполнения этой задачи используются микропрограммы подключения и отключения вычислительного устройства от интерфейса.
Алгоритм обобщенной микропрограммы.
Микропрограмма подключения опрашивает шины адреса и шину управления ПРГОТ. При этом вычисляется значение выражения ПРГОТ (ЗАН) (ША=N), где ПРГОТ – сигнал выставляемый внешним устройством на шину управления, ЗАН – сигнал занятости вычислительного устройства, ША=N – условие совпадения адреса, передаваемого внешним устройством на адресные шины и адреса вычислительного устройства. Если выражение принимает значение равное 1, то осуществляется подключение путем формирования сигнала готовности (для этого предусмотрена микрооперация ГОТ=1), который указывает инициирующему устройству о готовности к работе. Далее выполнение микропрограммы приостанавливается до получения сигнала КОП=1, передаваемого внешним устройством по шине управления. Как только сигнал КОП=1 получен, производится считывание команды с входной шины данных, формируется сигнал ГОТ=0 и устанавливается сигнал ЗАН=1. На этом микропрограмма подключения заканчивает свою работу.
Микропрограмма выполнения одной из семи указанных операций выполняется при выполнении одного из семи логических условий (микропрограммы и условия сопоставлены взаимно однозначно). Которые формируются на основании анализа кода операции, указанного в команде. При выполнении условия микропрограмма любой операции принимает операнды, которые считываются с входной шины данных. Далее вычисляется результат, который затем выдается на выходные шины данных.
Считывание слова данных реализовано следующим образом. Микропрограмма операции генерирует сигнал запроса (для этого предусмотрена микрооперация ЗАПР=1), который осведомляет внешнее устройство о готовности вычислительного устройства к приему данных. В ответ внешнее устройство передает слово данных на входную шину данных, генерируя при этом сигнал ДАННЫЕ=1. Пока сигнал ДАННЫЕ не поступит на управляющую шину, выполнение микрооперации приостанавливается, как только сигнал будет получен, вычислительное устройство производит считывание слова данных, при этом снимается сигнал запроса данных (для этого предусмотрена микрооперация ЗАПР=0).В ответ внешнее устройство устанавливает сигнал ДАННЫЕ=0. Если для выполнения операции необходимо два операнда, то для считывания второго слова данных процедура считывания повторяется.
Непосредственное выполнение операции реализуется различными способами в зависимости от смысла операции вплоть до получения результата, который может быть представлен в виде одного или двух слов данных.
Выдача слова данных в интерфейс производится следующим образом. Микропрограмма формирует сигнал результата (для этого предусмотрена микрооперация РЕЗ=1). Затем выполнение микрооперации приостанавливается до получения сигнала ПРРЕЗ=1, которым внешнее устройство информирует об успешном принятии результата вычислений. Как только ПРРЕЗ = 1 вычислительное устройство устанавливает сигнал результата в ноль (для этого предусмотрена микрооперация РЕЗ=0) и выставляет результат на выходные шины данных. При необходимости выдачи второго слова данных процедура повторяется. После окончания выдачи результата выполняется микропрограмма отключения вычислительного устройства.
Микропрограмма отключения вычислительного устройства, снимает сигнал занятости устройства (для этого предусмотрена микрооперация ЗАН=0).
Разработанные микропрограммы выполнения машинных операций приведены ниже.
2.1 Алгоритм выполнения операции «Сдвиг арифметический».
Арифметический сдвиг – это такой сдвиг, при котором сохраняется знак числа. Поскольку мы работаем в прямом коде, то при сдвиге вправо, знаковый разряд попадет в значащую часть числа и испортит ее. Отсюда напрашивается вывод, что необходимо сдвигать число без знака, а знак сохранять и дописывать к числу после проведения операции. Так и сделаем: в регистр будем записывать модуль числа, а знак будем сохранять в регистре знака. Знаковый разряд в регистр R будет поступать через мультиплексор знака, который будет либо пропускать исходный знак, либо подавать на выход содержимое регистра знака. Сам сдвиг будем осуществлять в регистре B. В зависимости от значения бита знака KОП(3) в поле кода операции, содержимое регистра B будет сдвигаться вправо или влево на число позиций, записанное в поле K(4:7).
2.2 Алгоритм выполнения операции «сложение».
При команде сложения с входных шин адреса последовательно считываются два операнда. В операциях типа “сложение” - это первое и второе слагаемые А и В. Выполнение микрооперации сложения удобно выполнять с помощью микросхемы ALU.
2.3 Алгоритм выполнения операции «Вычитание».
2.4 Алгоритм выполнения операции «Вычитание обратное».
2.5 Алгоритм выполнения операции «Вычитание модулей».
2 .6 Алгоритм выполнения операции «А v B ».
2 .7 Алгоритм выполнения операции «А ٨ B ».
3. Обобщенная микропрограмма.
Обобщенная микропрограмма строится на основе микропрограмм отдельных операций. Она должна организовывать отдельные микропрограммы в единое целое, обеспечивать подключение к шине, запрос кода операции и исходных данных, выполнение микропрограммы, выдачу результатов и отключение от шины.
Вначале осуществляется подключение устройства к шине. Затем считывается код микрооперации на, основании одного из логических условий B1-B7, принимается решение о том, какая микрооперация должна быть выполнена. Условия формируются следующим образом:
B1= | ^K(2) ^K(1) K(0) | - сдвиг арифметический |
B2= | ^K(2) K(1) ^K(0) | - сложение |
B3= | ^K(2) K(1) K(0) | - вычитание |
B4= | K(2) ^K(1) ^K(0) | - вычитание обратное |
B5= | K(2) ^K(1) K(0) | - вычитание модулей |
B6= | K(2) K(1) ^K(0) | - (A ^B) |
B7= | K(2) K(1) K(0) | - (^A B) |
где K(0), K(1), K(2) – разряды кода операций.
Для формирования условий используется дешифратор. Его использование позволяет упростить логику работы программы.
Следует заметить так же, что в силу идентичности выдачи результата выполнения операций сдвига арифметического, сложения, вычитания, вычитания обратного, дизъюнкция А и не В, конъюнкция не А и В выдача результатов этих операций на внешнюю шину реализуется одним и тем же блоком микроопераций.
Разработанная в соответствии с вышеперечисленными условиями и замечаниями обобщённая микропрограмма представлена на схеме «Обобщённой микропрограммы»