RPZ_1 (Курсовой проект (готовый) вариант 64 ещё один), страница 2
Описание файла
Файл "RPZ_1" внутри архива находится в следующих папках: Курсовой проект (готовый) вариант 64 ещё один, 64_2. Документ из архива "Курсовой проект (готовый) вариант 64 ещё один", который расположен в категории "". Всё это находится в предмете "электронные вычислительные машины (эвм)" из 5 семестр, которые можно найти в файловом архиве МГТУ им. Н.Э.Баумана. Не смотря на прямую связь этого архива с МГТУ им. Н.Э.Баумана, его также можно найти и в других разделах. Архив можно найти в разделе "курсовые/домашние работы", в предмете "эксплуатация эвм" в общих файлах.
Онлайн просмотр документа "RPZ_1"
Текст 2 страницы из документа "RPZ_1"
Вначале осуществляется подключение устройства к шине. Затем считывается код микрооперации на, основании одного из логических условий 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) | - A B |
B6= | K(2) K(1) K(0) | - A B |
B7= | K(2) K(1) K(0) | - (A B) |
Для формирования условий используется дешифратор. Его использование позволяет упростить логику работы программы.
Попробуем уменьшить количество состояний за счет выявления одинаковых участков микропрограммы и их объединения, когда это возможно. Для всех операций, кроме умножения, исходные данные считываются одинаково, значит, мы можем объединить этот этап. Результат всегда получается в младшем слове регистра R. Поэтому вывод результата тоже можно сделать общим.
При выполнении микрооперации «Умножение» операнды должны быть считаны в регистры С и В, а также должен быть зафиксирован знак в регистре знака. После выполнения умножения сначала необходимо выдать старшее слово результата, а потом младшее.
После этого ВУ должно выполнять микропрограмму отключения от шины.
Разработанная обобщенная микропрограмма представлена в Приложении 1.
4. Списки операций и условий.
Списки операций и условий составляются на основе обобщенной микропрограммы (Приложение 1).
Построение таблицы микроопераций, осуществляется следующим образом. Выписываются все использованные виды микроопераций, каждому виду микроопераций ставится в соответствие индекс – Yi, который является обозначением управляющего сигнала, закрепленного за данным видом микроопераций. Вид микроопераций объединяет все одинаковые микрооперации, встречающиеся в микропрограммах (или обобщенной микропрограмме). Список управляющих сигналов и соответствующих им микроопераций приведен в Приложении 2, Таблица 1.
Составление списка логических условий осуществляется следующим образом. Выписываются все виды логических условий, использованных в обобщенной микропрограмме. Каждому из них ставится в соответствие индекс Xi, который является обозначением соответствующего осведомительного сигнала, закрепленного за данным видом логических условий. Список логических условий и соответствующих им осведомительных сигналов приведен в Приложении 2, Таблица 2.
5. Закодированный граф микропрограммы.
Имея на руках обобщенную микропрограмму и списки операций и условий, мы можем построить на их основе закодированный граф микропрограммы. Он будет нам необходим при разработке управляющего автомата.
В закодированном графе все операции заменяются управляющими сигналами, а все условия информационными сигналами.
После этого каждому состоянию присваивается уникальный номер ai. Начальное и конечное состояния имеют номер 0.
Закодированный граф микропрограммы представлен в Приложении 3.
6. Разработка структурной схемы операционного автомата.
Разработка структурной схемы операционного автомата выполняется на основании списков операций (Приложение 2, Таблица 1.) и логических условий (Приложение 2, Таблица 2.). При этом должны учитываться особенности конкретных микросхем.
Код операции должен фиксироваться в регистре К. Три его младших разряда должны поступать на дешифратор, который формирует сигналы B1-B7. Разряд К(3) принимает участие в формировании информационного сигнала x8. Разряды из поля K(4:7) поступают на мультиплексор счетчика для того, чтобы устанавливать в него количество сдвигаемых разрядов.
Должна быть схема сравнения значения, появившегося на адресной шине, со значением, выставленном на тумблерном регистре. По результатам этого сравнения и на основании сигналов ПРГОТ и ЗАН должно вычисляться условие запуска МП (x1).
Счетчик должен предусматривать установку значения 7, значения из регистра кода операции и декремент. На его выходе должна быть схема сравнения, формирующая сигнал Сч=0 (x6).
Регистр занятости предназначен для хранения состояния занятости устройства. Его выход должен подключаться к сигнальной шине интерфейса. Он должен предусматривать установку и сброс.
Регистр С служит для хранения одного из множителей, при выполнении операции «Умножение». Он участвует в формировании знака результата. Кроме того, он должен выполнять операцию сдвига вправо, его нулевой разряд используется для формирования условия x5 и к его выводам должна быть подключена схема, формирующая сигнал C=0.
Регистры А, В и R, а также ALU, участвуют во всех вычислениях, включая умножение. Поэтому их разрядность равна 16 бит.
В регистр А информация может поступать из двух источников: со входной шины данных и из регистра R. Поэтому на его входе предусмотрен мультиплексор разрядностью 16 бит. Сам регистр А должен поддерживать операции записи и обнуления.
В регистр В информация может поступать только со входной шины. Но, при подготовке к выполнению операций «Умножение» и «Сдвиг арифметический», в регистр В должен заноситься модуль множителя. А знак множителя должен участвовать в образовании знака результата. Для этого знаковый разряд подается на вход регистра через элемент, обнуляющий его при необходимости. Это означает, что регистр В должен загружаться ПОСЛЕ регистра С и что знак результата должен быть зафиксирован в регистре знака ДО ТОГО, как со входной шины данных исчезнет операнд.
АЛУ используется для выполнения арифметических и логических операций. Его разрядность равна 16 битам. Последний 16 бит не используется, так как даже при умножении до него результат не доходит. На входе АЛУ есть два элемента, которые могут выполнять операцию взятия модуля от операндов в прямом коде. Для этого достаточно «занулить» знаковые разряды, а именно 7-й бит.
Выполнение операции R= А+1 осуществляется следующим образом:
-
есть операция X+ Y+C0, где C0 – перенос на входе АЛУ.
-
Y=А.
-
X=0.
-
на вход C0 подается сигнал переноса.
Формирование сигналов управления АЛУ и взятия модуля осуществляется схемой управления.
Регистр R принимает результаты операции из АЛУ. С седьмого разряда снимается ЗнR (x10). На 15 разряд подается знак результата умножения из регистра знака. С выхода этого регистра информация поступает на вход мультиплексора рег. А. Кроме того старшее и младшее слово раздельно поступают на вход выходного мультиплексора, для выдачи на выходную шину.
Выходной мультиплексор позволяет выдавать раздельно старшее и младшее слово результата на выходную шину. Если результат не выдается, выходы мультиплексора должны переводиться в высокоимпедансное состояние.
Регистр знака хранит знак результата при умножении. На его входе находится схема, которая этот результат вычисляет.
Схема сравнения знаков формирует сигналы x8 и x9. Сигналы ПРГОТ, ЗАН, КОП, ДАННЫЕ, ПРРЕЗ берутся непосредственно с входной шины.
Сигналы ГОТ, ЗАПР, РЕЗ необходимо держать в течении всего одного такта, поэтому они формируются напрямую из управляющих сигналов и, при переходе к следующему такту, автоматически обнуляются.
Разработанная структурная схема операционного автомата приведена в Приложении 4.
7. Синтез операционных элементов.
7.1. Регистр кода операции.
Для синтеза регистра К используем микросхему КР1533ИР13, восьмиразрядный реверсивный сдвиговый регистр. По сигналу y2 он должен записывать код операции со входной шины данных.
Упр. cигнал | Микрооперация | Сигналы на входах | ||
S1 | S0 | C | ||
Y2 | К=ШВх | 1 | 1 | СИ |
К выходам этого регистра присоединяем дешифратор КР1533ИД7, который будет формировать условия B1-B7. На входы D1-D3 дешифратора подаем разряды K0-K2 регистра К, С1=1, С2=0 (входы разрешения). С выходов Q1-Q7 снимаем инвертированные сигналы B1-B7. Разряд K(3) формирует информационный сигнал x8. Разряды K4-K7 поступают на счетчик.
7.2. Счетчик.
Счетчик должен считать разряды во время сдвига в операции умножения и во время выполнения операции «сдвиг арифметический». Он должен хранить 4-х разрядное число. Для реализации счетчика используем микросхему КР1533ИЕ7.
Упр. сигнал | Микрооперация | Сигналы на входах. | ||||
+1 | -1 | C | D0-D2 | R | ||
Y9 | Сч=5 | 1 | 0 | 0 | 5 | 0 |
Y16 | Сч=Сч-1 | 1 | 01 | 1 | * | 0 |
Y19 | Сч=К(4:7) | 1 | 0 | 0 | К(4:7) | 0 |
На входы данных счетчика поступает значение с выхода мультиплексора счетчика, на вход R - 0.
Сигнал на входе –1: Y16
Сигнал на входе С: (Y9 Y16).
Мультиплексор счетчика организуем на основе четырехразрядного мультиплексора 21. На группу входов 0 подадим значение 5, а на группу входов 1 поле К(4:7) регистра команд. Переключение будет производиться по сигналу Y19.
7.3. Мультиплексор регистра А.
Для построения 16 разрядного мультиплексора 21 используем 4 микросхемы КР1533КП11А. На группу входов 0 подаем сигналы с шины входа, а на группу 1 – с выхода регистра R.
Упр. сигнал | Микрооперация | Сигналы на входах. | |
EZ | SE | ||
Y5 | А=ШВх | 0 | 0 |
Y13 | А=R | 0 | 1 |
Схема управления мультиплексором:
SE=Y13. В противном случае на вход регистра А всегда будет включена ШВх.
7.4. Регистр А.
Разрядность этого регистра должна быть равна 16 битам. Он должен выполнять операции записи значения и обнуления. Для его реализации используем микросхему КР1533ИР13 (Восьмиразрядный реверсивный сдвиговый регистр).
Упр. cигнал | Микрооперация | Сигналы на входах | |||
S1 | S0 | C | R | ||
Y5 | А=ШВх | 1 | 1 | СИ | 1 |
Y8 | А=0 | * | * | * | 0 |
Y13 | А=R | 1 | 1 | СИ | 1 |
Получаем следующие функции для входов устройства.
S1=S0=C=Y5Y13.