Архитектура Аудит Военная наука Иностранные языки Медицина Металлургия Метрология
Образование Политология Производство Психология Стандартизация Технологии


ЦУУ с микропрограммной логикой



В управляющих автоматах с микропрограммной логикой каждой выполняемой машинной операции ставится в соответствие совокупность хранимых в памяти слов – микрокоманд.

Последовательность микрокоманд образует микропрограмму, хранимую в специальной памяти микропрограмм.

Каждая микропрограмма состоит из определенной последовательности микрокоманд, которые после выборки из памяти преобразуются в набор управляющих сигналов.

В таких автоматах блок управления операциями (БУО) выполняет функцию блока хранения и выборки кодов микрокоманд. В машинном такте производится выборка требуемой микрокоманды, выдача сигналов микроопераций, формирование адреса следующей микрокоманды.

Микрокоманда содержит операционную и адресную части. Операционная часть микрокоманды содержит информацию о микрооперациях, выполняемых в различных блоках ЭВМ в течение одного машинного такта под управлением данной микрокоманды. В адресной части микрокоманды находится информация, необходимая для формирования адреса следующей микрокоманды.

Существуют различные способы организации операционной части микрокоманды:

¨ горизонтальное микропрограммирование;

¨ вертикальное микропрограммирование;

¨ смешанное микропрограммирование.

При горизонтальном микропрограммировании, каждому разряду операционной части микрокоманды ставится в соответствие один управляющий сигнал, под действием которого выполняется соответствующая микрооперация.

Достоинства горизонтального микропрограммирования:

¨ нет необходимости в преобразовании операционной части микрокоманды в УС.

¨ сокращаются затраты времени на формирование УС.

Недостатки горизонтального микропрограммирования:

¨ большая длина операционной части микрокоманды, что ведет к значительным затратам памяти микропрограмм.

В случае вертикального микропрограммирования из операционной части микрокоманды считывается двоичный код, равный номеру управляющей точки (код микрооперации) в которую необходимо послать управляющий сигнал. Операционная часть микрокоманды должна содержать N полей, где N – максимальное количество совместно выполняемых в каждом такте микроопераций. Разрядность каждого поля операционной части микрокоманды определяется по формуле m ≥ log2 М, где М – число управляющих точек ЭВМ, равное числу управляющих сигналов. После считывания микрокоманды, код микрооперации расшифровывается дешифратором, и на одном из его выходов формируется управляющий сигнал.

Достоинством вертикального микропрограммирования:

¨ уменьшение длины микрокоманды,

¨ сокращаются затраты микропрограммной памяти.

Недостатки:

¨ наличие сложных дешифраторов на большое число микроопераций,

¨ в каждой микрокоманде указывается не больше N микроопераций, что приводит к увеличению длины микропрограмм, а значит и к уменьшению быстродействия ЭВМ.

В наше время распространение получили устройства управления со смешанным микропрограммированием, иначе называемым горизонтально-вертикальным.

Длина операционной части в этом случае равна , где

Mi – число микроопераций, представленных в i-ом поле.

С целью уменьшения длины операционной части микрокоманды может применяться косвенное кодирование микрооперации: в операционную часть микрокоманды с этой целью вводят дополнительные поля, содержимое которых может изменять коды микрооперации основных полей, то есть выходы дешифратора дополнительных полей используются для управления дешифратором основных полей. Косвенное кодирование уменьшает длину микрокоманды, но снижает быстродействие из-за потери времени на дешифрацию дополнительных полей.

Существуют два вида адресации микрокоманд:

¨ принудительная адресация;

¨ естественная адресация.

При естественной адресации адрес следующей микрокоманды принимается равным увеличенному на единицу адресу предыдущей микрокоманды. В этом случае отпадает необходимость во введении адресной части в каждую микрокоманды. Если микрокоманды идут в естественном порядке, то процесс адресации реализуется счетчиком адреса микрокоманды. Для организации безусловных или условных переходов в микропрограмму включаются дополнительные управляющие микрокоманды.

Принудительная адресация микрокоманды заключается в том, что в каждой микрокоманде указывается адрес следующей микрокоманды. Адрес следующей микрокоманды может задаваться безусловно, независимо от значений признаков (осведомительных сигналов, отображающих текущее состояние операционных блоков процессора) или выбираться по условию, определяемому текущими значениями осведомительных сигналов. Для этого в адресную часть МК кроме адресных полей включаются поля для задания условий (осведомительных сигналов).

Обобщенная структура блока микропрограммного управления (БМУ) представлена на рис. 5.10.

 

Формирователь адреса микрокоманды (ФАМ) – предназначен для формирования адреса следующей микрокоманды с учетом множества осведомительных сигналов {X} из операционных блоков ЭВМ и адресной части (АЧ) предыдущей микрокоманды.

Микропрограммная память (МПП) хранит микрооперации и по сформированному адресу в каждом такте выдает значение кода очередной микрокоманды, которая записывается в регистр микрокоманд (РМК) . С точки зрения физической реализации управления МПП делится на два вида: память с постоянно записанной информацией и память, допускающая перезапись информации. Память с постоянно записанной информацией (ПЗУ) работает только на чтение информации и, как правило, является более быстродействующей и простой по управлению, нежели память с перезаписью. В то же время память, допускающая перезапись, предоставляет больше дополнительных возможностей для повышения эффективности работы процессора за счет постоянного совершенствования алгоритмов выполнения операций.

Поля операционной части (ОЧ) при необходимости дешифруются дешифраторами ДШ1 - ДШ1N для выработки множества управляющих сигналов {Y}.

Первоначальное обращение к командам микропрограммы осуществляется по начальному адресу (НА), который соответствует коду операции выполняемой команды.

Использование в составе устройства управления блока микропрограммного управления (в качестве блока управления операциями) приводит к двухуровневому принципу управления процессом обработки данных:

1-ый уровень – система команд ЭВМ (программное управление).

2-ой уровень – микропрограммное управление.

 

Возникает задача организации перехода от одного уровня к другому.

Проследить решение этой задачи можно по упрощенной схеме процессора с микропрограммным управлением (рис.5.11).

По содержимому счетчика адреса команд (СЧАК) из памяти программ (кэш-памяти) выбирается команда и записывается в регистр команд (РК). Код операции из РКОП подается на дешифратор начального адреса (ДШНА), который на выходе формирует адрес первой микрокоманды микропрограммы, соответствующей данному коду операции. ДШНА реализуется на ПЗУ или ПЛМ (программируемой логической матрице). Под управлением микрокоманд выполняются все последующие действия. Адрес операнда из регистра адреса РА передается в память данных, осуществляется выборка операнда и занесение его в регистр общего назначения (СОЗУ) или в АЛУ. В АЛУ выполняется определенная микропрограммой операция, результат записывается в РОН или память данных.

Для RISC процессоров выгоднее использовать аппаратное управление (автоматы с жесткой логикой). Для расширенного набора сложных команд, как, например, в CISC процессорах, наиболее эффективно (с точки зрения затрат на оборудование) микропрограммное управление. Однако оно приводит к уменьшению быстродействия, так как увеличивается время, затрачиваемое на выработку управляющих сигналов. Главный же плюс микропрограммного управления – гибкость, позволяющая наращивать систему команд процессора путем изменения содержимого микропрограммной памяти.

Пример – технология MMX. В процессор Pentium были добавлены 57 новых команд. Аппаратные средства остались без изменения.

 

 

Процедура выполнения команд

Стандартные фазы работы ЦП включают в себя:

¨ выборку команды, вычисление адреса и выборку операндов,

¨ выполнение команды и запись результатов,

¨ обработку прерывания,

¨ изменение состояния процессора и системы в целом.

Выборка команд - передача содержимого счетчика команд в регистр адреса памяти, считывание команды из основной памяти в регистр команды, модификация содержимого счетчика команд для выборки следующей команды.

Выборка операнда - вычисление адреса и обращение в основную память или к регистру локальной памяти. Операнд считывается и принимается в регистр АЛУ.

Выполнение команды (арифметическая операция) - инициализация кодом операции цикла работы устройства управления, которое, в свою очередь, управляет работой АЛУ, регистров и схем сопряжения. Результат выполнения передается в локальную или основную память и процессор переходит к выборке и выполнению следующей команды.

Использование конвейера команд позволяет совместить различные этапы выполнения нескольких команд, что существенно увеличивают пропускную способность процессора, однако эффективность их использования зависит от управления (синхронизации), числа уровней обработки (ступеней конвейера). Опыт разработки ЭВМ общего назначения и проведенные исследования показывают, что технически и экономически целесообразной является совмещенная обработка 5-6 команд.

 

 

ЯЗЫК МИКРООПЕРАЦИЙ

Микрокоманда – совокупность микроопераций, выполняемых параллельно во времени.

Микрооперация - элементарная функциональная операция, производящая какое-либо элементарное действие над данными и выполняемая в течение одного тактового интервала (машинного такта). Понятие машинный такт используется для определения временных соотношений между различными этапами машинной команды. Границы такта задаются синхросигналами, вырабатывающимися специальными устройством – генератором синхросигналов.

Существуют разные уровни рассмотрения функционирования вычислительных устройств. Каждому уровню можно поставить в соответствие определенный язык формализованного описания.

Если требуется рассмотреть работу отдельного логического элемента или устройства на уровне электронных схем, то ее можно однозначно описать на языке дифференциальных уравнений для токов и напряжений.

Если рассматривать сложное устройство (параллельный сумматор), то в качестве языка описания лучше всего подойдет язык булевых функций. То есть мы вынуждены перейти на более общий уровень.

Язык микроопераций предназначен для описания цифровых вычислительных устройств, функционирование которых рассматривается на уровне регистров. Поэтому язык микроопераций также называют языком регистровых передач. С его помощью можно просто и наглядно описывать регистры, слова, массивы памяти, элементы и части машинных слов и массивов, элементы регистров и отдельные ячейки памяти, операции передачи машинных слов и частей слов.

 

 


Поделиться:



Популярное:

Последнее изменение этой страницы: 2016-04-11; Просмотров: 1175; Нарушение авторского права страницы


lektsia.com 2007 - 2024 год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! (0.018 с.)
Главная | Случайная страница | Обратная связь