Записка (Курсовой проект (готовый) вариант 52)
Описание файла
Файл "Записка" внутри архива находится в следующих папках: Курсовой проект (готовый) вариант 52, 52. Документ из архива "Курсовой проект (готовый) вариант 52", который расположен в категории "". Всё это находится в предмете "электронные вычислительные машины (эвм)" из 5 семестр, которые можно найти в файловом архиве МГТУ им. Н.Э.Баумана. Не смотря на прямую связь этого архива с МГТУ им. Н.Э.Баумана, его также можно найти и в других разделах. Архив можно найти в разделе "курсовые/домашние работы", в предмете "эксплуатация эвм" в общих файлах.
Онлайн просмотр документа "Записка"
Текст из документа "Записка"
Московский государственный технический университет им. Н.Э.Баумана
Утверждаю: | |
Виноградов В.И. | _____________________ |
"__"____________2003 г. |
Курсовая работа по курсу Архитектура ЭВМ
пояснительная записка
(наименование документа)
52
(№ варианта)
49
(количество листов)
Исполнитель: | |
студентка группы ИУ5-52 | _____________________ |
Уразова А.Е. | "__"____________2001 г. |
Москва - 2003
-
Техническое задание.
Спроектировать вычислительное устройство для выполнения заданного множества операций (см. табл. 1). Вычислительное устройство должно состоять из операционной части и блока управления и подключаться к интерфейсу.
Состав шин интерфейса:
1. Шины прямой передачи данных /входные/ разрядностью 8 бит.
2. Шины обратной передачи данных /выходные/ разрядностью 8 бит.
3. Шины адреса разрядностью 6 бит.
4. Управляющие шины:
- проверка готовности устройства /ПРГОТ/,
- сигнал занятости устройства /ЗАН/,
- код операции /КОП/,
- передача данных по входным шинам /ДАННЫЕ/,
- передача результата по выходным шинам /РЕЗ/,
- запрос на передачу данных /ЗАПР/,
- подтверждение приема результата /ПРРЕЗ/,
- готовность устройства /ГОТ/,
- сигнал прерывания при делении на нуль /ПР/.
Таблица №1. Закодированный вариант задания.
Вариант | Выполняемые операции | Разрядность операндов | Код | Серия микросхем | ||||||
52 | У | А3 | А5 | Л2 | Л4 | Л6 | Л8 | 8 | П | K500 |
Расшифровка варианта задания:
У – умножение;
А3 – вычитание обратное;
А5 – вычитание модулей обратное;
Л2 –АВ;
Разрядность слова данных – 8 бит.
Данные передаются в прямом коде.
Используемый тип микросхем - К500.
-
Разработка микропрограмм машинных операций.
1.2.Кодирование выполняемых ВУ операций.
Закодируем все операции, выполняемые вычислительным устройством /ВУ/ трехразрядными двоичными кодами. Результат представлен в Таблице № 2.
Таблица № 2. Закодированные операции, выполняемые ВУ.
Операция | Код операции | Логическое условие | ||||||||
Е(2) | Е(1) | Е(0) | В1 | В2 | В3 | В4 | В5 | В6 | В7 | |
Умножение | 0 | 0 | 1 | 1 | 0 | 0 | 0 | 0 | 0 | 0 |
Вычитание обратное | 0 | 1 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 |
Вычитание модулей обратное | 0 | 1 | 1 | 0 | 0 | 1 | 0 | 0 | 0 | 0 |
АВ | 1 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 |
1 | 0 | 1 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | |
1 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | |
1 | 1 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 1 |
По каждому коду операции только одно из логических условий В1-В7 примет значение 1. Каждое логическое условие управляет запуском определенной микропрограммы операции. Поэтому по коду операции будет выполнена соответствующая микрооперация.
1.3.Микропрограммы подключения и отключения ВУ от общей шины.
ВУ работает с интерфейсом "ОБЩАЯ ШИНА" следующим образом:
Пусть инициатором работы вычислительного устройства является устройство А. В этом случае устройство А выставляет на шинах адреса ША номер требуемого ВУ (N=52). И одновременно на шинах управления выдается сигнал ПРГОТ /проверка готовности ВУ/. ВУ, адрес которого совпадает с адресом на шинах ША, при условии, что оно свободно, выдает сигнал ГОТ. По этому сигналу устройство А выдает на входные шины код операции, которая должна быть выполнена в ВУ и одновременно на шины управления - сигнал КОП. По сигналу КОП вычислительное устройство принимает с входных шин код операции, формирует сигнал занятости ЗАН, снимает сигнал готовности ГОТ и запускает микропрограмму соответствующей операции. Адрес ВУ должен присутствовать на шинах адреса ША до окончания выполнения операции. После окончания выполнения операции ВУ снимает сигнал занятости ЗАН. После этого устройство А снимает адрес с шины ША, освобождая интерфейс для работы с другими устройствами. После того, как устройство А инициировало работу ВУ, вычислительное устройство занято - оно выполняет соответствующую операцию по микропрограмме.
Микропрограмма подключения постоянно опрашивает шины адреса и шину управления ПРГОТ. При совпадении адреса на тумблерном регистре (N) устройства с адресом на шинах адреса, при условии, что ПРГОТ=1 и устройство свободно /ЗАН=0/ включается обобщенная микропрограмма соответствующего вычислительного устройства. Для этого в микропрограмме ПОДКЛ вычисляется значение логического выражения ПРГОТ <ЗАН> (ША=N), где N – значение, выставленное на тумблерном регистре.
После этого вычисляются значения 7 логических условий:
где E(0:2) – поле кода операции в команде. По каждому коду операции только одно из логических условий В1-В7 примет значение единица.
Каждое логическое условие В1-В7 управляет запуском определенной микропрограммы операции. Поэтому по коду будет выполнена соответствующая операция вычислительного устройства.
Для отключения ВУ от интерфейса используется микропрограмма отключения, которая снимает сигнал занятости устройства /ЗАН=0/. По этому сигналу устройство А снимает адрес с шины адреса, освобождая интерфейс для работы с другими устройствами.
На рисунке 1 приведен алгоритм микропрограмм подключения и отключения ВУ от общей шины.
Рис. 1. Алгоритм микропрограмм подключения и отключения ВУ от общей шины.
1.4.Микропрограмма операции «Умножение».
Операция «Умножение» выполняется над целыми двоичными числами со знаком, представленными в прямом коде.
По каждой паре сигналов ЗАПР-ДАННЫЕ передается слово разрядностью 8 бит. ВУ выставляет на шину управления сигнал запроса данных ЗАПР и ждет от устройства А сигнала ДАННЫЕ. По этому сигналу ВУ принимает с входной шины переданные данные и снимает с шины управления сигнал ЗАПР.
Множимое (A) и множитель (B) имеют длину по одному слову, произведение – два слова (В – старшие разряды, С – младшие).
По первой паре сигналов ЗАПР-ДАННЫЕ с входной шины принимается множимое (А), а по второй паре сигналов ЗАПР-ДАННЫЕ с входной шины принимается множитель (В).
Если множимое или множитель =0, В и С обнуляются и передаются на выходную шину, умножение не производится.
Сохраняем знаки множимого и множителя в триггерах ТзнА и ТзнВ соответственно и обнуляем знаковые разряды А(0) и В(0).
Если старший разряд множителя (В(7)) «1», прибавляем к С множимого А (действие 1) и сдвигаем В и С на 1 разряд вправо (действие 2). Повторяем действия 1 и 2 8 раз (делаем цикл при помощи счетчика цикла Сч).
Если изначально знаки множителя и множимого были различны, помещаем в С(0) «1», иначе «0» (функция XOR).
Вывод данных из ВУ в устройство А производится по сигналу РЕЗ /результат/. ВУ выдает на шины управления ШУ сигнал РЕЗ и одновременно выставляет данные /результат/ на выходную шину ШВЫХ. Устройство А принимает данные и подтверждает прием результата сигналом ПРРЕЗ, после чего ВУ снимает с шины управления сигнал РЕЗ.
Сначала, передаются старшие разряды результата, находящиеся в В, а затем младшие (С).
На рисунке 2 приведен алгоритм микропрограммы операции «Умножения».
Рис. 2. Алгоритм микропрограммы операции «Умножения».
1.5.Микропрограмма операции «Вычитание обратное».
Операция «Вычитание обратное» выполняется над целыми двоичными числами со знаком, представленными в прямом коде.
Уменьшаемое (В) и вычитаемое (А) имеют длину по одному слову.
По первой паре сигналов ЗАПР-ДАННЫЕ с входной шины принимается вычитаемое (А), а по второй паре сигналов ЗАПР-ДАННЫЕ с входной шины принимается уменьшаемое (В).
Операция вычитания происходит в ALU. ALU работает с числами в дополнительном коде, поэтому перед операцией вычитания нужно преобразовать операнды в дополнительный код. Преобразование совершается в зависимости от знака числа – если оно положительное, то в дополнительном коде будет представлено само собой. Если отрицательное, то нужно обнулить знаковый разряд операнда, а затем выполнить преобразование по формуле: +1. После осуществления операции в ALU результат должен быть преобразован в прямой код, если он получился отрицательный.