Классификация операционных устройств с магистральной структурой
Магистральные ОПУ классифицируют по виду и количеству магистралей, организации узла РОН, типу ОПБ.
Магистрали ОПУ могут быть однонаправленными и двунаправленными, соответственно обеспечивающими передачу данных в одном или двух различных направлениях. Типичным режимом работы магистрали является разделение времени, при котором магистраль используется для передачи функционально разнотипных данных в различные моменты времени.
По функциональному назначению выделяют:
- магистрали внешних связей, соединяющих ОПУ с памятью и каналами ввода/вывода ВМ;
- внутренние магистрали ОПУ, отвечающие за связь между узлом РОН и операционным блоком.
Количество магистралей внешних связей зависит от архитектуры конкретной ВМ и обычно не превышает двух для внешних связей и трех – для внутренних.
Структура трехмагистрального ОПУ представлена на рис. 2.7, а, соответствующая ему микропрограмма выполнения операции типа «сложение» – на рис. 2.7, б.
Данный вариант характеризуется наибольшим быстродействием: выборка операндов из РОН, выполнение микрооперации суммирования и запись результата в РОН – все эти действия производятся за один такт.
Основной недостаток трехмагистральной организации – большая площадь, занимаемая магистралями на кристалле БИС (от 0,16 до 0,22 от площади кристалла).
а) б)
Рис. 2.7. Трехмагистральное ОПУ: a – структура; б – микропрограмма сложения
Двухмагистральная организация при меньшей площади, покрываемой магистралями (от 0,06 до 0,19 от площади кристалла), требует введения как минимум одного буферного регистра (БР), предназначенного для временного хранения одного из операндов (рис. 2.8, а), при этом операция сложения будет выполняться уже за два такта (рис. 2.8, б):
- Такт 1: загрузка БР одним из операндов;
- Такт 2: выполнение микрооперации в ОПБ над содержимым БР и одного из РОН; запись результата в РОН.
Наконец, организация ОПУ на основе только одной магистрали (рис. 2.9, а) минимизирует расходы площади (от 0,03 до 0,09 от площади кристалла).
а) б)
Рис. 2.8. Двухмагистральное ОПУ: a – структура; б – микропрограмма сложения
а) б)
Рис. 2.9. Одномагистральное ОПУ: a – структура; б – микропрограмма сложения
В одномагистральном ОПУ, вместе с тем, возникает необходимость введения не менее двух буферных регистров БР1, БР2, и длительность операции возрастает до трех тактов (рис.2.9, б):
- Такт 1: загрузка БР1 одним из операндов;
- Такт 2: загрузка БР2 вторым операндом;
- Такт 3: выполнение микрооперации в ОПБ над содержимым БР1 и БР2 и запись результата в один из РОН.
Количество регистров в узле РОН магистрального ОПУ обычно превышает тот минимум, который необходим для реализации универсальной системы операций. Избыток регистров используется:
- для хранения составных частей адреса (индекса, базы);
- в качестве буферной, сверхоперативной памяти для повышения производительности ВМ за счет уменьшения требуемых пересылок между основной памятью и ОПУ.
Количество регистров колеблется в среднем от 8 до 16, иногда может достигать 32 – 64. В процессорах с сокращенным набором команд количество РОН доходит до нескольких сотен.
Организация узла РОН может обеспечивать одноканальный или двухканальный доступ, как по входу (записи), так и по выходу (считыванию). В первом случае к входу узла подключается один демультиплексор, а к выходу – один мультиплексор. Во втором случае доступ осуществляется с помощью двух демультиплексоров и (или) двух мультиплексоров. Двухканальный доступ повышает быстродействие ОПУ, так как позволяет обратиться параллельно к двум регистрам.
Тип операционного блока (ОПБ) определяется способом обработки данных. Различают ОПБ последовательного и параллельного типа.
В последовательном операционном блоке (рис. 2.10) операции выполняются побитно, разряд за разрядом.
Рис. 2.10. Последовательный операционный блок
Бит переноса, возникающий при обработке i-го разряда операндов, подается на вход ОПБ и учитывается при обработке (r+1)-го разряда операндов. Результат побитно заносится в выходной регистр, предыдущее содержимое которого перед этим сдвигается на один разряд. Таким образом, после n циклов в выходном регистре формируется слово результата, где каждый разряд занимает предназначенную для него позицию.
При параллельной организации операционного блока (рис. 2.11) все разряды операндов обрабатываются одновременно.
Рис. 2.11. Параллельный операционный блок
Реализация эффективной системы переносов в рамках «длинного» слова сопряжена с определенными аппаратурными издержками, поэтому на практике часто используют параллельно-последовательную схему ОПБ. В ней слово разбивается на группы по 2, 4 или 8 разрядов, обработка всех разрядов внутри группы осуществляется параллельно, а сами группы обрабатываются последовательно.
Рис. 2.12. Обобщенная схема операционного блока
Обобщенная схема ОПБ приведена на рис. 2.12. В нее входят: дешифратор микрокоманды ДшМК, формирователи кодов ФК1 и ФК2, многофункциональный сумматор См, сдвигатель Сдв и формирователь логических условий (ЛУ).
Дешифратор микрокоманды вырабатывает внутренние сигналы управления для элементов ОПБ. Он введен в схему с целью минимизации количества связей, требуемых для передачи сигналов управления из УУ.
Формирователи кодов ФК1 и ФК2 служат для формирования прямых и инверсных кодов операндов, поступающих по магистралям А и В. Они реализуют следующий набор микроопераций:
В0ФК1: СмЛ:=0; В0ФК2: СмП:=0;
В1А: СмЛ:=А; В1В: СмП:=В;
В1ØА: СмЛ:=ØА; В1ØВ: СмП:=ØВ.
Многофункциональный сумматор выполняет микрооперации арифметического сложения (с учетом переноса CIN), сложения по модулю два, логического сложения и логического умножения кодов на левом и правом входах:
Сл: См:=СмЛ+СмП+CIN;
М2: См:=СмЛÅСмП;
И: См:=СмЛÙСмП;
ИЛИ: См:=СмЛÚСмП.
Формирователь логических условий на основе анализа кода на выходе См вырабатывает значения ознакомительных сигналов, передаваемых в УУ машины. Осведомительными сигналами могут быть: признак знака S, признак переполнения V, признак нулевого значения результата Z и т. п.
Сдвигатель служит для выполнения микроопераций сдвига кода на выходе См:
П1: С:=См;
R1: С:=R1(SL·См), SR:=См(n);
L1: С:=L1(См·SR), SL:=См(0).
Микрооперация П1 обеспечивает передачу результата на магистраль С без сдвига. По ходу микрооперации R1 результат сдвигается на один разряд вправо, при этом в освобождающийся старший разряд заносится значение с внешнего контакта SL, а вы двигаемый (младший) разряд сумматора посылается на внешний контакт SR.
В микрооперации L1 результат сдвигается на один разряд влево. Здесь в освобождающийся младший разряд заносится значение с внешнего контакта SR, а выдвигаемый (старший) разряд См передается на внешний контакт SL.
Дата добавления: 2015-07-18; просмотров: 1318;