19337

АДРЕСАЦИЯ МК. СТРУКТУРА УПРАВЛЯЮЩЕЙ ПАМЯТИ

Лекция

Информатика, кибернетика и программирование

АК ЛЕКЦИЯ № 14 АДРЕСАЦИЯ МК. СТРУКТУРА УПРАВЛЯЮЩЕЙ ПАМЯТИ Адресация микрокоманд При выполнении микропрограммы адрес очередной микрокоманды относится к одной из трех категорий: определяется кодом операции команды; является следующим по порядку адресом;

Русский

2013-07-11

177.5 KB

21 чел.

АК ЛЕКЦИЯ № 14 АДРЕСАЦИЯ МК. СТРУКТУРА УПРАВЛЯЮЩЕЙ ПАМЯТИ

Адресация микрокоманд

При выполнении микропрограммы адрес очередной микрокоманды относится к одной из трех категорий:

• определяется кодом операции команды;

• является следующим по порядку адресом;

• является адресом перехода.

Первый случай имеет место только один раз в каждом цикле команды, сразу же вслед за ее выборкой. Как уже отмечалось ранее, каждой команде из системы команд ВМ соответствует «своя» микропрограмма в памяти микропрограмм, поэтому первое действие, которое нужно произвести после выборки команды, — преобразовать код операции в адрес первой МК соответствующей микропрограммы. Это может быть выполнено с помощью аппаратного преобразователя кода операции (см. рис. 6.8). Такой преобразователь обычно реализуется в виде специального ЗУ, хранящего начальные адреса микропрограмм в ПМП. Для указания того, как должен вычисляться адрес следующей МК в микрокоманде, может быть выделено специальное однобитовое поле. Единица в этом поле означает, что Амк должен быть сформирован на основании кода операции. Подобная МК обычно располагается в конце микропрограммы этапа выборки или в микропрограмме анализа кода операции.

Дальнейшая очередность выполнения микрокоманд микропрограммы может быть задана путем указания в каждой МК адреса следующей микрокоманды (принудительная адресация) либо путем автоматического увеличения на единицу адреса текущей МК (естественная адресация) [21].

В обоих случаях необходимо предусмотреть ситуацию, когда адрес следующей микрокоманды зависит от состояния осведомительных сигналов — ситуацию перехода. Для указания того, какое условие должно быть проверено, в МК вводится поле условия перехода (УП). Поле УП определяет номер i осведомительного сигнала xi , значение которого анализируется при формировании адреса следующей микрокоманды. Если поле УП = 0, то никакие условия не проверяются и Амк либо берется из адресной части микрокоманды (при принудительной адресации), либо формируется путем прибавления единицы к адресу текущей микрокоманды. Если УП!=0, то Амк = А + ХГ. В результате этого осуществляется условный переход: при xi = 0 к микрокоманде с адресом Амк = А, а при xi = 1 — к микрокоманде с адресом Амк = А + 1. Описанный порядок формирования адреса показан на рис. 6.12 и имеет место в случае принудительной адресации с одним адресом.

Рассмотренный способ позволяет в каждой команде учесть состояние только одного из осведомительных сигналов. Более гибкий подход реализован в ряде ВМ фирмы IBM. В нем адреса микрокоманды разбиваются на две составляющие. Старшие п разрядов обычно остаются неизменными. В процессе выполнения микрокоманды эти разряды просто копируются из адресной части МК в аналогичные позиции РАМ, определяя блок из 2^n микрокоманд в памяти микропрограмм. Остальные (младшие) k разрядов РАМ устанавливаются в 1 или 0 в зависимости от того, проверка каких осведомительных сигналов была задана в поле УП и в каком состоянии эти сигналы находятся. Такой метод позволяет в одной микрокоманде сформировать 2^k вариантов перехода.

Теперь рассмотрим возможные способы реализации принудительной и естественной адресации. Известные подходы сводятся к трем типовым вариантам [75]:

• два адресных поля;

• одно адресное поле;

• переменный формат.

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

Простейшим вариантом является включение в микрокоманду двух адресных полей (рис. 6.13).

С помощью мультиплексора в регистр адреса микрокоманды (РАМ) может быть загружен либо адрес, определяемый кодом операции выполняемой команды, либо содержимое одного из адресных полей микрокоманды. Выбор источника адреса осуществляется сигналом ォВыбор адресаサ, вырабатываемым логикой перехода, на основании состояния осведомительных сигналов и поля УП микрокоманды. Если УП = 0 или УП = i, но xi = 0, то в РАМ заносится адрес Ах либо адрес, полученный из кода операции. В противном случае в РАМ переписывается адрес A2.

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

Главное достоинство принудительной адресации— высокая универсальность и быстродействие. Здесь изменение участка микропрограммы не затрагивает остальных микрокоманд, а совмещение в одной МК условного перехода с формированием сигналов управления уменьшает общее время выполнения микропрограммы.

Основной недостаток принудительной адресации — повышенные требования к емкости памяти для хранения адресов МК:

где Ryn — разрядность поля УП; L — общее количество осведомительных сигналов.

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

Однако после выполнения МК с адресом А может потребоваться переход к МК с адресом В=A + 1. Переход может быть безусловным или зависеть от текущего значения xi (если xi = 1, то Aмк = А + 1; если xi = 0, то Aмк = В). Для реализации условных и безусловных переходов используются специальные управляющие микрокоманды, состоящие только из двух полей: адресного поля В и поля УП, выделяющего номер условия перехода. Алгоритм выполнения управляющей МК:

если УП = 0, то СЧАМ := В;

если УП =0, то если xi = 1, то СЧАМ := В, иначе СЧАМ := СЧАМ + 1.

Таким образом, при естественной адресации должны применяться МК двух типов: управляющие и операционные. Операционная микрокоманда содержит только микрооперационную часть и не имеет адресной части. Тип МК задается ее первым разрядом: если МК(1) = 1, то это управляющая микрокоманда.

Структура МПА с естественной адресацией показана на рис. 6.15. Выдача сигналов управления С1..., Ст стробируется сигналом МК(1), принимающим единичное значение при выполнении операционной МК. Дешифратор условия перехода стробируется сигналом МК(1), который равен 1 при обработке управляющей микрокоманды. Адрес следующей МК образуется на счетчике СЧАМ при выполнении микрооперации +1СЧАМ: СЧАМ := СЧАМ + 1 или П2СЧАМ: СЧАМ := В. Формирование адреса следующей МК описывается микропрограммой на рис. 6.16.

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

Рассмотренные способы адресации аппаратно реализует формирователь адреса микрокоманды ФАМ (см. рис. 6.8). ФАМ является механизмом управления последовательностью выполнения микрокоманд. Возрастание сложности микропрограммного обеспечения современных ВМ предопределяет необходимость расширения функциональных возможностей ФАМ.

Набор базовых функций управления, реализуемых ФАМ, включает в себя: ПРИРАЩЕНИЕ, ПЕРЕХОД, ВЫЗОВ, ВОЗВРАТ, ЦИКЛ. Функции управления кодируются полем ФУ в составе МК (рис. 6.17) и задают алгоритмы выбора адреса очередной МК.

Рис. 6.17. Структура микрокоманды с выделенным полем функции управления

Обозначим: i — адрес МК, в которой размещена данная функция управления; АМК — адрес следующей МК; СЧЦ — счетчик количества повторений микропрограммы (циклов); Xj — значение анализируемого условия; а — адрес возврата к вызывающей микропрограмме. Охарактеризуем каждую функцию управления.

ПРИРАЩЕНИЕ — обеспечивает переход к МК, записанной по адресу i + 1, а условная функция ПРИРАЩЕНИЕ — многократное повторение одной и той же МК, записанной по адресу i (рис. 6.18, а).

ПЕРЕХОД — обеспечивает переход к последовательности микрокоманд с начальным адресом AMК. В случае условного перехода управление передается по адресу АМК при единичном значении условия Хj ,в противном случае выполняется МК по адресу i + 1 (рис. 6.18, б).

ВОЗВРАТ — позволяет после выполнения микропрограммы автоматически вернуться в ту точку, откуда она была вызвана (рис. 6.18, в). Использование условной функции ВОЗВРАТ позволяет вернуться к основной микропрограмме из различных точек внешней микропрограммы.

ВЫЗОВ — одна из основных функций, так как позволяет перейти к исполнению другой микропрограммы с начальным адресом АМК (с сохранением адреса точки перехода), как показано на рис. 6.18, г.

ЦИКЛ — передает управление многократно исполняемому участку микропрограммы с начальным адресом АМК (рис. 6.18, д).

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

Организация памяти микропрограмм

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

Основные способы организации памяти микропрограмм можно свести к следующим вариантам [3].

1. Каждое слово ПМП содержит одну микрокоманду. Это наиболее простая организация ПМП. Основной недостаток — в каждом такте работы МПА требуется обращение к памяти микропрограмм, что приводит к снижению быстродействия МПА.

2. Одно слово ПМП содержит несколько микрокоманд. В результате осуществляется одновременное считывание из ПМП нескольких МК, что позволяет повысить быстродействие УУ.

3. Сегментация ПМП, при которой память разделяется на сегменты, состоящие из 2^q соседних слов, при этом адрес слова АМК разделяется на два поля: S и Л.

Поле S определяет адрес сегмента, а поле A адрес слова в сегменте. Адрес S устанавливается специальной микрокомандой. В последующих микрокомандах указывается только адрес слова A в сегменте. Таким образом, разрядность адресной части МК уменьшается.

4. Двухуровневая память (рис. 6.19). Первый уровень — микропамять, хранящая микрокоманды. Второй уровень — нанопамять, содержащая нанокоманды.

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

Запоминающие устройства микропрограмм

Память микропрограмм может быть реализована запоминающими устройствами различных типов. В зависимости от типа применяемого ЗУ различают МПА со статическим и динамическим микропрограммированием [28]. В первом случае в качестве ПМП используется постоянное ЗУ (ПЗУ) или программируемая логическая матрица (ПЛМ), во втором — оперативное ЗУ.

Динамическое микропрограммирование в отличие от статического позволяет оперативно модифицировать микропрограммы УУ, меняя тем самым функциональные свойства ВМ. Основное препятствие на пути широкого использования динамического микропрограммирования — энергозависимость и относительно невысокое быстродействие ОЗУ.

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

ПЗУ содержит полный дешифратор с n-разрядным входом (адресом) и 2^n выходами. Напротив, ПЛМ имеет неполный дешифратор, количество выходов в котором меньше, чем 2^n, поэтому в ПЛМ некоторые адреса вообще не инициируют действий, тогда как другие адреса могут оказаться неразличимыми. Таким образом, возможна выборка одного слова с помощью двух или более адресов или же выборка нескольких слов с помощью одного адреса, что эквивалентно реализации функции ォИЛИサ от выбранных слов.

В структуре ПЛМ (рис. 6.20) выделяют три части [21]:

• буфер Б, формирующий парафазные значения а1,, а1,,..., ат, ат входных переменных a1,.., ат;

• ォИサ-матрицу адресов, на выходе которой вырабатываются значения термов Z1, .-., Zj

• ォИЛИサ-матрицу данных, на выходе которой формируются сигналы, представляющие значения выходных переменных c1 ..., сп. Матрица адресов содержит входных цепей (горизонтальные линии) и J m-входовых элементов ォИサ, каждый из входов которых (вертикальные линии) может соединяться с входной цепью в точках, обозначенных крестиком. Аналогично строится матрица данных, в которой крестиками обозначены возможные соединения входных цепей матрицы с n j-входовыми элементами ォИЛИサ

Рис. 6.20. Структура программируемой логической матрицы

Соединения в ПЛМ обеспечивают однонаправленную передачу сигналов: в матрице ォИサ — из любой горизонтальной цепи в вертикальную, а в матрице ォИЛИサ — из любой вертикальной цепи в горизонтальную. Такие соединения осуществляются за счет диодов или транзисторов.

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

ПЛМ более экономны по затратам, чем ПЗУ, в трех случаях:

• при выдаче нулевого кода;

• при формировании значения функции ォлогическое ИЛИサ от нескольких слов;

• при записи одного и того же слова по нескольким адресам.

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

Во втором случае в ПЗУ опять должна задействоваться дополнительная ячейка для хранения кода, специально запрограммированного как логическое «ИЛИ» от нескольких слов. B ПЛМ один адрес может относиться к нескольким словам, которые на выходе матрицы данных объединяются по схеме ォИЛИサ.

В третьем случае в ПЗУ требуется многократная запись одного слова по всем указанным адресам. Применительно к ПЛМ это означает, что какое-то слово в матрице данных имеет адрес вида 010ХХ, где XX — разряды с безразличным значением (цепи соответствующих разрядов буфера не подключены к вертикальным цепям матрицы адресов).

Пути повышения быстродействия автоматов микропрограммного управления

Цикл выполнения микрокоманды Тмк можно представить в виде трех этапов:

• формирования адреса очередной микрокоманды в ФАМ (Ai);

• выборки по данному адресу микрокоманды из памяти микропрограмм (Bi);

• исполнения микрокоманды в операционной (ОЧ) или адресной части (АЧ) вычислительной машины i).

Порядок следования этапов определяется способом соединения формирователя адреса следующей микрокоманды и памяти микропрограмм.

Структура МПА (рис. 6.22, а) с ФАМ и ПМП, связанными непосредственно друг с другом, не допускает совмещения этапов во времени — здесь этап Ai+1 начинается только после выполнения этапа Иi(рис. 6.22, б).

В течение цикла Тмк все узлы заняты обработкой только одной, текущей микрокоманды с номером i, причем последовательный характер обработки МК не позволяет достичь высокого быстродействия:

Производительность ВМ повышается при одновременной конвейерной обработке в МПА нескольких микрокоманд, находящихся на различных этапах выполнения. Для совмещения во времени этапов Ai, Bi и Иi в МПА вводятся дополнительные запоминающие, элементы, которые хранят результаты обработки на каждом этапе.

В МПА с одним уровнем совмещения используется один запоминающий элемент — конвейерный регистр микрокоманды, подключенный к выходу памяти микропрограмм (рис. 6.23, а). В данной структуре реализуется одновременная обработка двух микрокоманд: в то время как исполняется находящаяся в РМК i-я микрокоманда (этап Иi), в ФАМ вычисляется адрес (i + 1)-й микрокоманды (этап Ai+1), и затем по этому адресу из ПМП выбирается (i + 1)-я микрокоманда (этап Bi+1). Следовательно, в МПА с одним уровнем совмещения обеспечивается параллельное выполнение этапов Ai+1 и Bi+1 и этапа Иi, (рис. 6.23, б):

Очевидно, что при tH < tA + tB в данной структуре наблюдается вынужденный простой операционной (или адресной) части ВМ. Этот недостаток устраняется в МПА с двумя уровнями совмещения (рис. 6.24, а), в котором ФАМ и ПМП связаны друг с другом двумя конвейерными регистрами — РМК и РАМ. Здесь одновременно обрабатываются три микрокоманды: в операционной: или адресной части исполняется МК, (этап Иi ) выбирается из памяти MKi+1.(этап Bi+i), а в ФАМ вычисляется адрес MKi+i (этап Ai+2). Как видно из рис. 6.24, б, в такой структуре совмещается во времени выполнение всех трех этапов и

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

а для МПА с двумя уровнями совмещения — до величины

Всего, в зависимости от использования регистров — регистра РМК, состоящего из адресной и микрооперационной частей, регистра РАМ, регистра состояния РГС (для хранения условия перехода), — можно сформировать 11 различных структур МПА. Выбор оптимальной структуры определяется особенностями конкретной микропрограммы.


 

А также другие работы, которые могут Вас заинтересовать

52281. Злочини бактерій проти людства 68 KB
  Характеристика холери менінгококової хвороби дифтерії туберкульозу сифілісу. Стан захворюваності на туберкульоз в Україні. Обладнання: ПК; мультимедійний проектор; презентації: Хвороботворні бактерії: вчора і сьогодні Туберкульоз підступний вбивця Профілактика бактеріальних хвороб ; оцінювальні завдання; слайд із відповідями на завдання; виставка газетбюлетенів: Кишкові інфекції Туберкульоз підступний вбивця Імунітет на сторожі здоров’я . Фтизіатри з’ясувати особливості збудника туберкульозу причини поширення...
52282. Випускний вечір 88 KB
  Веселинівської районної ради Миколаївської області Випускний вечір 2011 Звучать фанфари на сцену виходять ведучі Ведучий. Ведучий. Ведучий. На сьогоднішнє свято запрошуємо тих хто впродовж одинадцяти років вів винуватців сьогоднішніх урочистостей нелегкими стежками шкільних наук ті хто вчив читати і писати відкрив чудесні світи літератури та точних наук наші вчителі звучить музика виходять вчителі Ведучий.
52283. Осінній бал. Поетично – музичний вечір присвячений посвяті учнів 9 класу в старшокласники 54 KB
  Осінь нам дарує радість й спокій І чарівних квітів розмаїть Осінь – це пора прекрасних років Коли в повну силу треба жить В. Осінь уже не щедра на квіти. Вишиває осінь на канві зеленій золоті квітки Квіти оживають і з дерев спадають жовті ягідки. Вишиває осінь на канві зеленій золоті квітки В.
52285. ВИПУСКНИЙ БАЛ «ПРОЩАВАЙ ПОЧАТКОВА ШКОЛО! 67 KB
  Лунає музика для вас В садах бузок зацвів для вас І сонця промінь теж для вас Мої малятадружній клас Ми всі чекаємо на вас. Учні входять під музику до зали Учні по черзі Доброго днядорогі батьки вчителігості Ми раді вас вітати у цьому затишному залі. Сьогодні вас називають таким вагомим словом випускники. 1: Ми всі раді вас вітати На нашому сімейному святі.
52286. Репродуктивне здоров`я молоді 61.5 KB
  Репродуктивне здоров`я молоді. Мета: сформувати уявлення про репродуктивне здоров`я системні валеологічні знання про здоровий спосіб життя розуміння необхідності дотримання культури статевих стосунків на основі дружби поваги вірності; навчити запобігати ризикам і негативному впливу на репродуктивне здоров’я соціальних та особистісних чинників; охарактеризувати чинники впливу і ризику; виховувати свідоме ставлення до свого репродуктивного здоров’я. Перевірка виконання практичної роботи №2 Самооцінка рівня фізичного здоров’я та аналіз...
52287. СВЯТО – ПОДОРОЖ ДО БАРВІНКОВОЇ КРАЇНИ 88.8 KB
  Діти сьогодні до нас на наше свято завітала Мудра Сова. Діти що за свято без Барвінку. Допоможемо Діти. Ну діти молодці справилися з першим завданням.
52288. Барви літа на картинах відомих українських художників 180.5 KB
  Сяйвом сонця все залито В нас гостює справжнє літо О. Сяйвом сонця все залито В нас гостює справжнє літо Кольорове та яскраве Запашне смішне цікаве О. Роговенко ІІ читецьЛіто літо золоте Випиває роси Та з пшениченьки плете Україні...
52289. Комплексная подготовка учащихся на уроках баскетбола 373 KB
  Сопряженное формирование навыков ловли и передачи мяча с развитием скоростносиловых качеств и координационных способностей. Передачи набивного мяча: двумя руками от груди двумя руками сверху; одной рукой от плеча. То же что упражнение №1 но чередуя передачи набивного и баскетбольного мяча. В парах по сигналу передачи на месте набивного мяча в отрыв на 1020 м.