Лекц.БЦВМиСР1-8(2) (Все лекции по БВМиС в ворде), страница 9
Описание файла
Файл "Лекц.БЦВМиСР1-8(2)" внутри архива находится в папке "Все лекции по БВМиС в ворде". Документ из архива "Все лекции по БВМиС в ворде", который расположен в категории "". Всё это находится в предмете "основы эксплуатации эвм" из 11 семестр (3 семестр магистратуры), которые можно найти в файловом архиве МАИ. Не смотря на прямую связь этого архива с МАИ, его также можно найти и в других разделах. Архив можно найти в разделе "лекции и семинары", в предмете "основы эксплуатации эвм" в общих файлах.
Онлайн просмотр документа "Лекц.БЦВМиСР1-8(2)"
Текст 9 страницы из документа "Лекц.БЦВМиСР1-8(2)"
Функциональные сигналы
MS
ЗУ МП
. . .
от
ДШ КОП
Сх. ФАСМК
ТНАМП
Адрес исполняемой
микрокоманды
Рис. 6. 12. Функциональное назначение ТНАМП.
6. 3. Способы организации микропрограммирования.
Различают два способа организации микропрограммирования: горизонтальное и вертикальное. И в том и в другом случае микрокоманда разделяется на две части: операционную и адресную.
Операционная часть микрокоманды обеспечивает формирование функциональных сигналов, а адресная – «отвечает» за формирование адреса следующей выполняемой микрокоманды, т.е. формирует последовательность выполнения микрокоманд. Различия в способах организации микропрограммирования относятся лишь к операционной части микрокоманды.
При горизонтальном способе микропрограммирования каждый разряд операционной части микрокоманды соответствует определенному функциональному сигналу, а сама микрокоманда – определенному такту реализации машинной команды (в нашем примере команды сложения). Таким образом, при горизонтальном способе микропрограммирования операционная часть микропрограммы реализации любой команды представляет собой прямоугольную матрицу, количество столбцов которой соответствует количеству функциональных сигналов, а количество строк определяется количеством микрокоманд в микропрограмме. Так для рассмотренного примера реализации команды сложения разрядность операционной части микрокоманд равна 19-ти, а микропрограмма содержит 12 микрокоманд (см. рис. 6. 13).
Номера функциональных сигналов
1 К К+1 К+2 К+3 К+4 К+5 К+6 К+7 К+8 К+9 К+10 К+11 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 |
1 | 1 | |||||||||||||||||
1 | ||||||||||||||||||
1 | 1 | |||||||||||||||||
1 | 1 | |||||||||||||||||
1 | ||||||||||||||||||
1 | 1 | |||||||||||||||||
1 | 1 | |||||||||||||||||
1 | ||||||||||||||||||
1 | 1 | |||||||||||||||||
1 | ||||||||||||||||||
1 | 1 | 1 | 1 | |||||||||||||||
1 | 1 | 1 |
номер (адрес) микрокоманды.
Рис. 6. 13. Операционная часть микропрограммы, реализующей команду сложения.
В представленной на рис. 6. 13 матрице подавляющая часть клеток содержит «0», что позволяет говорить о низкой эффективности использования ЗУ микропрограмм (ЗУМП).
Наибольшая эффективность использования ЗУМП достигается при реализации вертикального способа микропрограммирования, при котором операционная часть микрокоманд содержит коды формируемого на данном такте функционального (одного) сигнала, что не позволяет реализовать параллельное (одновременное) выполнение нескольких микроопераций.
В этой связи на практике наибольшее распространение получил смешанный способ микропрограммирования, при котором операционная часть микрокоманды разбивается на несколько полей. В каждом поле кодируются не совместимые по времени выполнения микрооперации (функциональные сигналы). При чем количество полей микрокоманды определяется максимальным числом одновременно выполняемых микроопераций.
В рассматриваемом примере реализация команды сложения максимальное количество одновременно выполняемых микроопераций имеет место на XI-м такте, т.е. при выполнении XI-й микрокоманды. Т.о. множество функциональных сигналов необходимо разбить на 4 подмножества, каждое из которых содержит не совместимые по времени выполнения микрооперации.
Один из вариантов такого разбиения показан на рис. 6. 14. В этой же таблице показано кодирование микроопераций (Фi) в каждом из четырех полей микрокоманды. Перечень функциональных команд Ф1 ÷ Ф19 дополнен сигналом Фк, свидетельствующем об окончании выполнения микропрограммы. Из таблицы рис. 6. 14 видно, что в каждом поле микрокоманды необходимо закодировать по пять различных Фi . Таким образом, каждое поле должно содержать 3 разряда (5 < 23). Всего операционная часть микрокоманды содержит 12 разрядов.
Адресная часть микрокоманды состоит из двух полей:
- управления адресом (УА);
- адреса перехода (А).
Разрядность поля УА определяется количеством условий ветвления микропрограммы (условные переходы) с добавлением еще 3-х команд:
- переход к подпрограмме;
- переход к следующей микрокоманде (ПСМК);
- безусловный переход (БП).
В рассматриваемом примере микропрограмма выполнения команды сложения, представляет собой линейный участок (не содержит условных переходов). Для реализации такой микропрограммы достаточно наличие двух команд управления адресом: БП и ПСМК (с учетом констант «0» и «1» поле УП в нашем примере должно содержать 2 разряда).
Разрядность поля А определяется длинной микропрограммы. В нашем случае она равна 12, т.е. достаточно 4 разряда (12 < 24). Структура полученной микрокоманды представлена на рис. 6. 15.
Если принять следующую кодировку команд в поле УА:
- 01 – переход к следующей микрокоманде (адрес формируется в Сх. ФАСМК (см. рис. 6. 17) с помощью счетчика адреса МК (Сч. АМК)),
- 10 – безусловный переход на адрес, указанный в поле А,
то микропрограмма выполнения команды сложения будет иметь вид, представленный на рис. 6. 16.
Простейший вариант схемы формирования адреса следующей микрокоманды (Сх. ФАСМК), позволяющей реализовать лишь микропрограмму выполнения команды сложения (команды ВМ), представлен на рис. 6. 17.
П1 | П2 | П3 | П4 |
Ф i код | Фi код | Фi код | Фi код |
Ф1 001 | Ф2 001 | Ф6 001 | Ф5 001 |
Ф4 010 | Ф9 010 | Ф3 010 | Ф10 010 |
Ф8 011 | Ф11 011 | Ф12 011 | Ф13 011 |
Ф7 100 | Ф14 100 | Ф15 100 | Ф16 100 |
Фк 101 | Ф17 101 | Ф18 101 | Ф19 101 |
Рис. 6. 14. Распределение функциональных сигналов Фi по 4-м подмножествам несовместимых микроопераций и их кодирование.
П1 3р | П2 3р | П3 3р | П4 3р | УА 2р | А 4р |
Рис. 6. 15. Структура микрокоманды.
№ мк | П1 | П2 | П3 | П4 | УА | А |
1 | 001 | 001 | 000 | 000 | 01 | хххх |
2 | 000 | 000 | 010 | 000 | 01 | хххх |
3 | 010 | 000 | 000 | 001 | 01 | хххх |
4 | 100 | 000 | 001 | 000 | 01 | хххх |
5 | 011 | 000 | 000 | 000 | 01 | хххх |
6 | 000 | 000 | 010 | 010 | 01 | хххх |
7 | 100 | 011 | 000 | 000 | 01 | хххх |
8 | 011 | 000 | 000 | 000 | 01 | хххх |
9 | 000 | 010 | 011 | 000 | 01 | хххх |
10 | 000 | 000 | 000 | 011 | 01 | хххх |
11 | 100 | 100 | 100 | 100 | 01 | хххх |
12 | 101 | 101 | 101 | 101 | 10 | 0001 |
Рис. 6. 16. Микропрограмма реализации команды сложения.