Пояснительная записка_Суслова (Курсовой проект (готовый) вариант 86), страница 2
Описание файла
Файл "Пояснительная записка_Суслова" внутри архива находится в следующих папках: Курсовой проект (готовый) вариант 86, 86 Суслова. Документ из архива "Курсовой проект (готовый) вариант 86", который расположен в категории "". Всё это находится в предмете "электронные вычислительные машины (эвм)" из 5 семестр, которые можно найти в файловом архиве МГТУ им. Н.Э.Баумана. Не смотря на прямую связь этого архива с МГТУ им. Н.Э.Баумана, его также можно найти и в других разделах. Архив можно найти в разделе "курсовые/домашние работы", в предмете "эксплуатация эвм" в общих файлах.
Онлайн просмотр документа "Пояснительная записка_Суслова"
Текст 2 страницы из документа "Пояснительная записка_Суслова"
Рис. 4.
3.6. Микропрограмма “Вычитание”.
Сначала с входной шины считываются слова для вычитания, причем, знак каждого отправляется в соответствующий триггер. Затем эти слова переводятся в дополнительный код, затем производится собственно вычитание. Затем в зависимости от знака результата, он переводится в прямой код и выводится на шину
Микропрограмма представлена на рис. 5.
Рис. 5.
3.6. Микропрограмма “A and B”.
Сначала с входной шины считываются последовательно два слова операндов (знаковый разряд не блокируется, т.к. операнды - логические). Производится операция и результат выводится на шину (также со знаком).
Микропрограмма представлена на рис. 6.
Рис. 6.
3.7. Микропрограмма “A or B”.
Сначала с входной шины считываются последовательно два слова операндов (знаковый разряд не блокируется, т.к. операнды - логические). Производится операция и результат выводится на шину (также со знаком).
Микропрограмма представлена на рис. 7.
Рис. 7.
3.8. Микропрограмма “not (A and B)”.
Сначала с входной шины считываются последовательно два слова операндов (знаковый разряд не блокируется, т.к. операнды - логические). Производится операция и результат выводится на шину (также со знаком).
Микропрограмма представлена на рис. 8.
Рис. 8.
4. Разработка обобщенной микропрограммы.
Обобщенная микропрограмма составляется на основании микропрограмм машинных операций.
Обобщенная микропрограмма объединяет все микропрограммы операций с целью реализации четкой логической структуры выполнения микропрограмм в зависимости от кода операции команды, а также включает микропрограммы подключения вычислительного устройства к интерфейсу и отключения от него.
Первоначально выполняется операция подключения, если результат операции положителен и подключение осуществлено, выполняется далее в зависимости от условий ВC0 – ВC6 выбора конкретной операции к выполнению, запускается лишь одна из имеющихся микропрограмм. Вычисление условий ВС0 – ВС6 осуществляется по следующим формулам:
BC0 = (not D(0) or not D(1) or not D(2))
BC1 = (D(0) or not D(1) or not D(2))
BC2 = (not D(0) or D(1) or not D(2))
BC3 = (D(0) or D(1) or not D(2))
BC4 = (not D(0) or not D(1) or D(2))
BC5 = (D(0) or not D(1) or D(2))
BC6 = (not D(0) or D(1) or D(2))
где D(0), D(1), D(2) – разряды кода операций.
Разработанная в соответствии с вышеперечисленными условиями и замечаниями обобщённая микропрограмма представлена на схеме «Граф обобщённой микропрограммы» (лист 1)
5. Разработка обобщённого списка слов, полей, логических условий,
микроопераций и управляющих сигналов.
Обобщённый список слов, полей, логических условий и управляющих сигналов может быть составлен как на основании микропрограмм машинных операций (схема «Микропрограммы микроопераций»), так и на основании обобщенной микропрограммы (схема «Граф обобщенной микропрограммы»).
Построение таблицы микроопераций, осуществляется следующим образом. Выписываются все использованные виды микроопераций. Вид микроопераций объединяет все одинаковые микрооперации, встречающиеся в микропрограммах (или обобщенной микропрограмме).
Микрооперация | Управляющие сигналы |
D := ШВХ | Y6, Y7, Y8, Y9, Y30 |
ГОТ := 0 | Y40 |
ГОТ := 1 | Y39,Y40 |
ЗАН := 0 | Y38 |
ЗАН := 1 | Y37,Y38 |
ЗАПР := 0 | Y42 |
ЗАПР := 1 | Y41,Y42 |
A := ШВХ(6:0) | Y26,Y0,Y1 |
SIGN_A := ШВХ(7) | Y23 |
B := ШВХ(6:0) | Y27,Y2,Y3 |
SIGN_B := ШВХ(7) | Y24 |
РЕЗ := 0 | Y44 |
РЕЗ := 1 | Y43,Y44 |
D := 0 | Y46 |
D := D + 1 | Y6,Y7,Y8,Y9,Y18,Y17,Y15 |
SIGN_D := SIGN_A xor SIGN_B | Y25 |
ШВЫХ(6:0) := D(6:0) ШВЫХ(7) := SIGN_D | Y34,Y35,Y36,Y33 |
ШВЫХ(6:0) := A(6:0) ШВЫХ(7) := SIGN_A | Y33,Y36 |
ШВЫХ := A | Y33 |
A := R1(0.A) | Y0 |
A := L1(A.0) | Y1 |
A := (not A) + 1 | Y11,Y18,Y19,Y0,Y1 |
B := (not B) + 1 | Y11,Y20,Y18,Y19,Y2,Y3 |
D := (not D) + 1 | Y11,Y22,Y18,Y19, Y6,Y7,Y8,Y9 |
D[7:4] := D[7:4] - 1 | Y11,Y12,Y19,Y20,Y22,Y31,Y8,Y9 |
SIGN_D := D(7) | Y25,Y32 |
A := ШВХ | Y26,Y45,Y0,Y1 |
B := ШВХ | Y27,Y45,Y2,Y3 |
A := A - B | Y11,Y12,Y15,Y17,Y0,Y1 |
D := A and B | Y6,Y7,Y8,Y9,Y20,Y13,Y12,Y11,Y16 |
D := A or B | Y6,Y7,Y8,Y9,Y20,Y16,Y13,Y11,Y10 |
D := not(A and B) | Y6,Y7,Y8,Y9,Y20,Y16,Y12 |
D := A - B | Y11,Y12,Y15,Y20,Y6,Y7,Y8,Y9 |
D := B - A | Y11,Y12,Y15,Y17,Y6,Y7,Y9,Y8 |
ШВЫХ := D | Y34,Y35,Y33 |
Таблица 1. Список микроопераций
Список используемых в микропрограмме слов и полей составляется следующим образом. Выписываются все слова, а также самостоятельно использующиеся при выполнении микроопераций поля слов. Затем каждому слову ставится в соответствие регистр. В результате получается таблица, в которой перечислены все используемые в микропрограмме слова, самостоятельно используемые поля этих слов, а также названия регистров, поставленных в соответствие каждому из этих слов.
Наименование и формат слова | Поля | Соответствующий регистр |
A(7:0) | A | |
B(7:0) | B | |
C(7:0) | C | |
D(7:0) | D(7:4) | D |
SIGN_A | SIGN_A | |
SIGN_B | SIGN_B | |
SIGN_D | SIGN_D |
Таблица 2. Список слов, полей, регистров.
Составление списка логических условий осуществляется следующим образом. Выписываются все виды логических условий, использованных при составлении микропрограмм операций (обобщенной микропрограммы) и поставить каждому из них в соответствие название, который является, обозначением соответствующего осведомительного сигнала, закрепленного за данным видом логического условий. Вид логических условий объединяет все одинаковые логические условия, встречающиеся в микропрограммах (или обобщенной микропрограмме).
Логическое условие | Осведомительный сигнал |
ПРГОТ and not ЗАН and (ША = 86) | ЗАХВАТ |
B1 | BC0 |
B2 | BС1 |
B3 | BС2 |
B4 | BС3 |
B5 | BС4 |
B6 | BС5 |
B7 | BС6 |
D(7:4) = 0 | ZR |
SIGN_A | SNA |
SIGN_B | SNB |
D(3) | D3 |
D(7) | D7 |
КОП | X1 |
ДАННЫЕ | X2 |
ПРРЕЗ | X3 |
A > B | X4 |
Таблица 3. Список условий.
А вот список всех управляющих сигналов (при формировании микрооперации могут быть использованы не все управляющие сигналы, и я привожу здесь их все, чтобы можно было охватить взглядом всю функциональность моего устройства)
Управляющий сигнал | Назначение | Возможные значения |
Y0 | Выбирают операцию в регистре A | 00 – хранение 01 – сдвиг вправо 10 – сдвиг влево 11 - загрузка |
Y1 | ||
Y2 | Выбирают операцию в регистре B | 00 – хранение 01 – сдвиг вправо 10 – сдвиг влево 11 - загрузка |
Y3 | ||
Y4 | Выбирают операцию в регистре C | 00 – хранение 01 – сдвиг вправо 10 – сдвиг влево 11 - загрузка |
Y5 | ||
Y6 | Выбирают операцию в младшей половине регистре D | 00 – хранение 01 – сдвиг вправо 10 – сдвиг влево 11 - загрузка |
Y7 | ||
Y8 | Выбирают операцию в старшей половине регистре D | 00 – хранение 01 – сдвиг вправо 10 – сдвиг влево 11 - загрузка |
Y9 | ||
Y10 | Выбирают операцию АЛУ | Для списка возможных операций АЛУ см. в справочнике К155ИП3 |
Y11 | ||
Y12 | ||
Y13 | ||
Y15 | Сигнал переноса для АЛУ 1 (просто добавляем 1 – операций больше) | |
Y16 | Выбирает группу операций АЛУ | 0 – арифметический 1 – логические |
Y17 | Выбирают операнд A АЛУ | 000 – A 001 – B 010 – C 011 – D 100 – D(7:4) 101 – 0 110 – 1 |
Y18 | ||
Y19 | ||
Y20 | Выбирают операнд B АЛУ | 000 – A 001 – B 010 – C 011 – D 100 – D(7:4) 101 – 0 110 – 1 |
Y21 | ||
Y22 | ||
Y26 | Выбирает, откуда загружать значение в регистр A | 0 – из АЛУ 1 – с входной шины |
Y27 | Выбирает, откуда загружать значение в регистр B | 0 – из АЛУ 1 – с входной шины |
Y28 | Выбирает, откуда загружать значение в регистр C | 0 – из АЛУ 1 – с входной шины |
Y29 | Выбирает, откуда загружать значение в младшую половину D | 0 – из АЛУ 1 – с входной шины |
Y30,Y31 | Выбирает, откуда загружать значение в старшую половину D | 00 – старшие 4 разряда результата АЛУ 01 - младшие 4 разряда результата АЛУ 1Х – с входной шины |
Y32 | Выбирает откуда загружать знак в триггер D | 0 – загрузить SIGN_A xor SIGN_B 1 – загрузить разряд 7 регистра D |
Y45 | Единичное значение разрешает прохождение знака шины на мультиплексоры выбора значений регистров. | 0 – запрет 1 - разрешение |
Y23 | Разрешает запись в триггер A | 0 – запрет 1 - разрешение |
Y24 | Разрешает запись в триггер B | 0 – запрет 1 - разрешение |
Y25 | Разрешает запись в триггер D | 0 – запрет 1 - разрешение |
Y33 | Разрешает вывод данных на шину | |
Y34 | Выбирает слово для вывода на шину | 0 – A(6:0) 1 - D(6:0) |
Y35 | Выбирают старший разряд шины | 00 – A(7) 01 – D(7) 10 – SIGN_A 11 – SIGN_D |
Y36 | ||
Y37 | Задает значение сигнала ЗАН | |
Y38 | Разрешает вывод сигнала ЗАН на шину | |
Y39 | Задает значение сигнала ГОТ | |
Y40 | Разрешает вывод сигнала ГОТ на шину | |
Y41 | Задает значение сигнала ЗАПР | |
Y42 | Разрешает вывод сигнала ЗАПР на шину | |
Y43 | Задает значение сигнала РЕЗ | |
Y44 | Разрешает вывод сигнала РЕЗ на шину |
Таблица 4. Обобщенный список управляющих сигналов.