Структуры операционных устройств 331
а третье — суммарную стоимость комбинационных схем, реализующих микроопе­рации Ктипов над N словами.
Затраты времени на выполнение операций типа «сложение» в ОПУ с жесткой
структурой равны
где ίΒ — длительность микрооперации выдачи операндов из регистров; tcпро­должительность микрооперации «сложение»; tnдлительность микрооперации приема результата в регистр.
Достоинством ОПУ с жесткой структурой является высокое быстродействие, недостатком — малая регулярность структуры, что затрудняет реализацию таких ОПУ в виде больших интегральных схем.
Операционные устройства с магистральной структурой
В ОПУ с магистральной структурой все внутренние регистры объединены в от­дельный узел регистров общего назначения (РОН)1, а все комбинационные схе­мы — в операционный блок (ОПБ), который зачастую ассоциируют с термином «арифметико-логическое устройство».
Операционный блок и узел регистров сообщаются между собой с помощью , магистралей — отсюда и название «магистральное ОПУ».
Пример магистрального ОПУ представлен на рис. 7.3.
В состав узла РОН здесь входят N регистров общего назначения, подключае­мых к магистралям А и В ^ерез мультиплексоры MX А и MX В. Каждый из мульти­плексоров является управляемым коммутатором, соединяющим выход одного из РОН с соответствующей магистралью. Номер подключаемого регистра определя­ется адресом а или Ь, подаваемым на адресные входы мультиплексора из устрой­ства управления.
В операционных устройствах для обработки чисел с плавающей запятой вместо РОН часто исполь­зуется отдельный узел регистров с плавающей запятой.
3 3 2 Глава 7. Операционные устройства вычислительных машин
По магистралям А и В операнды поступают на входы операционного блока, к ко­торым подключается комбинационная схема, реализующая требуемую микроопе­рацию (по сигналу управления из УУ). Таким образом, любая микрооперация ОПБ может быть выполнена над содержимым любых регистров ОПУ. Результат мик­рооперации по магистрали С заносится через демультиплексор ОМХ С в конкрет­ный регистр узла РОН. Демультиплексор представляет собой управляемый ком­мутатор, имеющий один информационный вход и N информационных выходов. Вход подключается к выходу с заданным адресом с, который поступает на адрес­ные входы DMX С из УУ.
Моделью ОПУ с магистральной структурой является М-автомат. М-автоматом называется модель ОПУ, построенная на основе принципа объединения комбина­ционных схем и реализующая в каждом такте только одну микрооперацию. Син­тез М-автоматов рассматривается в [22].
Используя обозначения, введенные в предыдущем разделе, выражение для оцен­ки аппаратных затрат на магистральное ОПУ можно записать в следующем виде:
где первое слагаемое определяет затраты на N регистров, второе — затраты на свя­зи узла РОН и ОПБ, атретье — суммарную цену ОПБ.
Из сопоставления выражений для затрат следует, что магистральная структура экономичнее жесткой структуры, если
где— количество микроопераций, реализуемых ОПУ с жесткой
структурой.
С учетом последнего неравенства можно сформулировать следующее сильное условие экономичности магистральных структур:
Μ>Ν+Κ.
Затраты времени на сложение в магистральных ОПУ больше, чем в ОПУ с же­сткой структурой:
где ίΜυχ — задержка на подключение операндов из РОН к ОПБ; iDMX — задержка на подключение результата к РОН.
Основным достоинством магистральных ОПУ является высокая универсаль­ность и регулярность структуры, что облегчает их реализацию на кристаллах ИС. Вообще говоря, магистральная структура ОПУ в современных ВМ является пре­валирующей.
Классификация операционных устройств с магистральной структурой
Магистральные ОПУ классифицируют по виду и количеству магистралей, орга­низации узла Р О Н, типу О П Б.
Структуры операционных устройств 333
Магистрали ОПУ могут быть однонаправленными и двунаправленными, соот­ветственно обеспечивающими передачу данных в одном или двух различных на­правлениях. Типичным режимом работы магистрали является разделение времени, при котором магистраль используется для передачи функционально разнотипных данных в различные моменты времени.
По функциональному назначению выделяют:
•  магистрали внешних связей, соединяющих ОПУ с памятью и каналами ввода/ вывода ВМ;
•  внутренние магистрали ОПУ, отвечающие за связь между узлом РОН и опера-
ционным блоком.
Количество магистралей внешних связей зависит от архитектуры конкрет­ной ВМ и обычно не превышает двух для внешних связей и трех — для внут­ренних.
Структуратрехмагистрального ОПУ представлена на рис. 7.4, а, а соответствую­щая ему микропрограмма выполнения операции типа «сложение» — на рис. 7.4, б.
Рис. 7.4. Трехмагистральное ОПУ: а — структура; б— микропрограмма сложения
Данный вариант характеризуется наибольшим быстродействием: выборка опе­рандов из РОН, выполнение микрооперации суммирования и запись результата в РОН — все эти действия производятся за один такт. Основной недостаток трех-магистральной организации — большая площадь, занимаемая магистралями на кри­сталле БИС (от 0,16 до 0,22 от площади кристалла).
Двухмагистральная организация при меньшей площади, покрываемой магист­ралями (от 0,06 до 0,19 от площади кристалла), требует введения как минимум одного буферного регистра (БР), предназначенного для временного хранения од­ного из операндов.(рис. 7-5, а), при этом операция сложения будет выполняться уже за два такта (рис. 7.5, б):
•   Такт 1: загрузка БР одним из операндов.
•  Такт 2: выполнение микрооперации в ОПБ над содержимым БР и одного из
РОН; запись результата в РОН.1 ' :
Наконец, организация ОПУ на основе только одной магистрали (рис. 7.6, а) минимизирует расходы площади (от 0,03 до 0,09 от площади кристалла).
В одномагистральном ОПУ, вместе с тем, возникает необходимость введения не. менее двух буферных регистров БР1, БР2, и длительность операции возрастает до трех Тактов (рис. 7.6, б):
•   Такт 1: загрузкаБР1 одним из операндов.
•   Такт 2: загрузка БР2 вторым операндом.
•  Такт 3: выполнение микрооперации в ОПБ над содержимым БР1 и БР2; запись
результата в один из РОН.
Организация узла РОН магистрального операционного устройства
Количество регистров в узле РОН магистрального ОПУ обычно превышает тот минимум, который необходим для реализации универсальной системы операций. Избыток регистров используется:
•   для хранения составных частей адреса (индекса, базы);
•   в качестве буферной, сверхоперативной памяти для повышения производитель­ности ВМ за счет уменьшения требуемых пересылок между основной памятью и ОПУ.
Количество регистров колеблется в среднем от 8 до 16, иногда может достигать 32-64. В процессорах с сокращенным набором команд количество РОН доходит до нескольких сотен.
Структуры операционных устройств 33 5
Организация узла РОН может обеспечивать одноканальный или двухканаль­ный доступ как по входу (записи), так и по выходу (считыванию). В первом случае к входу узла подключается один демультиплексор, а к выходу — один мультиплек­сор. Во втором случае доступ осуществляется с помощью двух демультиплексоров и (или) двух мультиплексоров. Двухканальный доступ повышает быстродействие ОПУ, так как позволяет обратиться параллельно к двум регистрам.
Организация операционного блока магистрального операционного устройства
Тип операционного блока (ОПБ) определяется способом обработки данных. Раз­личают ОПБ последовательного и параллельного типа.
В последовательном операционном блоке (рис. 7.7) операции выполняются по­битово, разряд за разрядом.
Бит переноса, возникающий при обработке /-го разряда операндов, подается на вход ОПБ и учитывается при обработке (/+ 1)-го разряда операндов. Результат побитово заносится в выходной регистр, предыдущее содержимое которого перед этим сдвигается на один разряд. Таким образом, после п циклов в выходном реги­стре формируется слово результата, где каждый разряд занимает предназначен­ную для него позицию.
При параллельной организации операционного блока (рис 7.8) все разряды опе­рандов обрабатываются одновременно. Внутренние переносы обеспечиваются схе­мой ОПБ. Более подробно возможности организации переносов рассматриваются позже.
33 6 Глава 7. Операционные устройства вычислительных машин
Реализация эффективной системы переносов в рамках «длинного» слова со­пряжена с определенными аппаратурными издержками, поэтому на практике час­то используют параллельно-последовательную схему ОПБ. В ней слово разбива­ется на группы по 2, 4 или 8 разрядов, обработка всех разрядов внутри группы осуществляется параллельно, а сами группы обрабатываются последовательно.
Обобщенная схема ОПБ приведена на рис. 7.9. В нее входят: дешифратор мик-рокомандыДшМК, формирователи кодов ФК1 и, многофункциональный сумма­тор См, сдвигатель Сдв и формирователь логических условий (ЛУ).
Дешифратор микрокоманды вырабатывает внутренние сигналы управления для элементов ОПБ. Он введен в схему с целью минимизации количества связей, тре­буемых для передачи сигналов управления из УУ.
Формирователи кодов ФК1 и ФК2 служат для формирования прямых и инверс­ных кодов операндов, поступающих по магистралям А и В. Они реализуют следую­щий набор микроопераций:
Β,,ΦΚ,: СиЛ > 0; Β,,ΦΚ^ СмП > 0; В,А: СмЛ > А; В,В: СмП :- В; В^: СмЛ > -А; В^В: СмП :- -·Β.
Многофункциональный сумматор выполняет микрооперации арифметическо­го сложения (с учетом переноса CIN), сложения по модулю два, логического сложе­ния и логического умножения кодов на левом и правом входах:
Ся: См :» СмЛ + СмП + Ст; М2:См:-СмЛФСмП; И: См :- СмЛ л СмП; ИЛИ: См :- СмЛ v СмП.
Формирователь логических условий на основе анализа кода на выходе См вы­рабатывает значения ознакомительных сигналов, передаваемых в УУ машины. Осведомительными сигналами могут быть: признак знака S, признак переполне­ния V, признак нулевого значения результата Z и т. п.
Сдвигатель служит для выполнения микроопераций сдвига кода на выхо­де См:
Базис целочисленных операционных устройств 337
Π^ С;- См;
R,: С > R1(SL * См), SR ;-Сн(п);
L,:C>U(Cw5R),$L;-Cm(0).
Микрооперация П1 обеспечивает передачу результата на магистраль С без сдвига. По ходу микрооперации R результат сдвигается на один разряд вправо, при этом в освобождающийся старший разряд заносится значение с внешнего контакта SL, а вы­двигаемый (младший) разряд сумматора посылается на внешний контакт SR
В микрооперации L1 результат сдвигается на один разряд влево. Здесь в осво­бождающийся младший разряд заносится значение с внешнего контакта SR, а вы­двигаемый (старший) разряд См передается на внешний контакт SL
Базис целочисленных операционных устройств
Для большинства современных ВМ общепринятым является такой формат с фик­сированной запятой (ФЗ), когда запятая фиксируется справа от младшего разря­да кода числа. По этой причине соответствующие операционные устройства назы­вают целочисленными ОПУ. В форме с ФЗ могут быть представлены как числа без .знака, когда все п позиций числа отводятся под значащие цифры, так и со зна­ком. В последнем случае старший (п - 1)-й разряд числа занимает знак числа (0 — плюс, 1 — минус), а под значащие цифры отведены разряды с (и - 2)-го по 0-й. При записи отрицательныхчисел используется дополнительный код, который для числа N получается по следующей формуле:
Если исключить логические оперший, которые рассматриваются отдельно, це­лочисленное ОПУ должно обеспечивать выполнение следующих арифметических операций над числами без знака и со знаком:
•    сложение/вычитание;
•    умножение;
•   деление.
Сложение и вычитание
На рис. 7.10 приводятся примеры сложения целых чисел, представленных в до­полнительном коде (напомним, что при сложении в дополнительном коде знако­вый разряд участвует в операции наравне с цифровыми).
Hosted by uCoz