- •Глава I
- •06Ласти применения эвм
- •1.6,1. СуперЭвм
- •Глава 2
- •8 Разрядов
- •11110001 11111001 11110001 11110111 А число — 6.285 запишется в память в виде слова из 6 байт:
- •Глава 3
- •Глава 4
- •Лечит узап j
- •Сверхоперативная или местная память
- •4.2. Адресная, ассоциативная и стековая организации памяти
- •Буфер входа-выхода
- •Усилители считывания-записи
- •Глава 5
- •Проклей
- •Идентификатор адреса (s байт)
- •Сектор на дискете
- •Глава 6
- •Управляющий блок автомат)
- •Глава 7
- •В цпршВляющай блок у б
- •Сумматор частичных произведений Регистр множимого
- •О vМножимое перед началом Выполнения умножения
- •Слой элементов и
- •Глава 9
- •Двойное слада па адреса о 32 бит
- •Слобо по адресу z в бит
- •Заслать в стек ад РеЗ
- •Загрузить аз стана в Pa V
- •Номер регист
- •Непосредственный операнд 1а
- •15Ю кГго 51
- •Оповещающий сив нал „Состояние
- •Блок ревастрод
- •Ветвление в макропроерамме по уело дую Акк*0
- •Макрокоманды управления последовательностью выборка микрокоманд
- •Окно процедуры
- •Регистры параметров (а) Регистры глобальных переменных |
- •1 Нуль м Знак-
- •Запоминание состояния процессора (программы)
- •Общий сигнал прерывания
- •Код приоритетного запроса
- •Маска ввоОагвывода
- •Прерывающая
- •01 23*56789 Время
- •I участка I
- •Запись льта мп
- •I Прием операндов на регистры 1
- •Умножение чисел с фиксированной точкой
- •Сложонив чисел с плавающей точкой
- •Глава 10
- •Вызов команды и модификация счетчика команд
- •Процедура тандемных пересылок
- •Однобайтная
- •16 Разрядов
- •Передача д стек а восстановление содержимого регистров
- •Команды досстаяовяения из стеки содержимого регистров
- •Блок сегментных регистров
- •Первый байт команды Второй ffaSm команды (постбайт адресации)
- •Сегментные селекторы
- •Регистры задачи и регистры дескрипторнои таблицы
- •Блок управления и контроля оп
- •Справочник страниц
- •Физическая память
- •16 Мбайт
- •Расширенная память
- •1 Мбайт
- •С каналом ес эвм
- •Связь с другой эвм
- •I Манипулятор % I Графа- I I типа „Мышь” I I построитель I
- •Глава 11
- •Интерфейс основной намята
- •Общее оборудование мультиплексного канала
- •Глава 12
- •Определения четности переносод
- •Глава 13
- •Ill:Выполнснис программы а Выполнение про ерам мы в
- •Пакеты заданий и Входные наборы данных
- •Выходные очереди разных классов в зу на дисках
- •I требует ‘'ода
- •Пользователь обдумывает | ответ системе I (новый запрос)
- •Блок управления памятью
- •Схемы совпадения
- •Шифратор номера отделения
- •Входной коммутатор
- •Коммутации
- •Сегментная таблица п-й программы
- •Векторные, средства
- •К периферийным устройством
- •К периферийным устройствам
- •Глава 15
- •Устройства Ввода- вывода
- •Процессор 2
- •Процессор 3
- •8 Векторных регистров (по 6* слова в каждом)
- •Готовности операндов
- •Глава 16
- •Комплекс абонентского пункта
- •16.2.. Классификация вычислительных сетей
- •1 Элемент
- •Время распрост- ранена*
- •Задержка сета лри коммутации пакетов[
- •Абонентская система
- •Данные пользователя
- •Сеансовый
- •Транспортный
- •Сетевой
- •Интерфейс высоког о уровня
- •Аппаратура передачи данных
- •Установление связи
- •Данные пользователя 00Длина поля и слови я обслуживания
- •Идентификатор протокола
- •7» Бшдта) Данные пользователя б вызове
- •Поток бит
- •Новый пакет (кадр)
- •Станция 1 ведет передачу
- •Передатчик Коаксиальный кйбель
- •Глава 15. Принципы организации многопроцессорных и многомашинных вычислительных систем (комплексов) и суперЭвм 489
- •1S в 7 о Слада па адресу ь
Выбор
Pel
Рис.
9.20. Коды микрокоманд учебного процессора
0*7.7Ветвление в макропроерамме по уело дую Акк*0
О . О . О I о . о
о ■ а . т I о . а 0.1.оIа . о
Макрокоманды управления последовательностью выборка микрокоманд
РгАМк:=дешафраиия
КОп б РгИОП
Рг
А Мк :=константа
Микропрограмма команды «Сложение»
РгАОП = РгАК (загрузка адреса операнда);
РгИОП = ОП [РгАОП] (чтение адреса операнда); РгВрХр : = Акк (сохранение содержимого Акк);
Акк : = РгАК+\ (формирование продвинутого адреса команды);
РгАК = Акк\
Акк : = РгВрХр (восстановление содержимого Акк); РгВрХр = РгИОП (загрузка адреса операнда для временного хранения);
РгАОП = РгВрХр (передача адреса операнда);
РгИОП = ОП [РгАОП] (загрузка операнда);
РгВрХр: = РгИОП (чтение операнда из ОП);
Акк:: = Акк + РгВрХр\ (в Акк образуется сумма);
РгАМк : = 0 (занесение константы 0 — переход к микропрограмме выборки следующей команды);
Микропрограмма команды условного перехода, если Акк = О
РгАОП = РгАК (загрузка адреса перехода — второго байта команды условного перехода);
РгИОП = ОП [РгАОП] (чтение адреса перехода);
РгВрХр = Акк;
Акк = РгАК+ 1;
РгАК = Акк (образование в РгАК адреса следующей команды при естественном порядке выборки);
Акк: = РгВрХр;
если Акк = 0 то РгАМк : = РгАМк + 2 иначе РгАМк : = =* РгАМк + 1;
РгАМк : = 0 (возврат при АккфО к микропрограмме выборки команды — сохранение естественного порядка выборки команд);
РгАК = РгИОП (загрузка адреса перехода в РгАК)\
РгАМк =0 (возврат к микропрограмме выборки команды);
Микропрограммы остальных команд читатель может составить сам.
Закончим рассмотрение учебного процессора проектированием формата и кодов микрокоманд. На рис. 9.20 представлен один из возможных вариантов формата и кодов микрокоманд.
Особенности RISC-архитектуры
Развитие архитектуры ЭВМ, направленное на повышение их производительности, во многих случаях идет по пути усложнения процессоров путем расширения системы (набора) команд, введения сложных команд, выполняющих процедуры, приближающиеся к примитивам языков высокого уровня, увеличения числа используемых способов адресации и т. д.
Однако расширение и усложнение набора команд порождают и ряд нежелательных побочных эффектов.
Расширение набора команд, увеличение числа способов адресации, введение сложных команд сопровождаются увеличением длины кода команды, в первую очередь, кода операции, что может приводить к использованию «расширяющегося кода операции», увеличению числа форматов команд. Это вызывает усложнение и замедление процесса дешифрации кода операции и других процедур обработки команд. Возрастающая сложность процедур обработки команд заставляет прибегать к микропрограммным управляющим устройствам с управляющей памятью вместо более быстродействующих УУ с «жесткой» («схемной») логикой.
Усложнение процессора делает более трудным или даже невыполнимым реализацию его на одном кристалле интегральной микросхемы, что благодаря сокращению длин межсоединений могло бы облегчить достижение высокой производительности.
Сказанное объясняет, почему в последнее время сформировалось альтернативное по отношению к усложнению архитектуры процессоров направление, использующее при создании сравнительнодешевых высокопроизводительных ЭВМ архитектуру с сокращенным набором команд (СНК-архитектуру), получившую в зарубежной литературе название RISC-архитектурыI[58].
СНК-архитектура предполагает реализацию в ЭВМ сокращенного набора простейших, но часто употребляемых команд, что позволяет упростить аппаратурные средства процессора и благодаря этому получить возможность повысить его быстродействие.
При использовании СНК-архитектуры выбор набора команд и структуры процессора (микропроцессора) направлены на то, чтобы команды набора выполнялись за один машинный цикл процессора. Выполнение более сложных, но редко встречающихся операций обеспечивают подпрограммы.
В ЭВМ с СНК машинным циклом называют время, в течение которого производится выборка двух операндов из регистров, выполнение операции в АЛУ и запоминание результата в регистре. Большинство команд в СНК являются быстрыми командами типа «регистр — регистр» и выполняются без обращений к ОП, которые сохраняются лишь в командах загрузки регистров из памяти и запоминания в ОП. Чтобы это было возможным, процессор должен содержать достаточно большое число общих регистров.
Благодаря характерным для .СНК-архитектуры особенностям — сокращенному набору команд (обычно не более 50— 100), небольшому числу (обычно 2—3) простых способов адресации (в основном регистровой), небольшому числу простых форматов команд с фиксированными размерами и функциональным назначением их полей — упрощается управляющее устройство процессора, который в этом случае обходится без микропрограммного уровня управления и управляющей памяти, и его УУ может быть выполнено на «схемной логике».
Уменьшение количества выполняемых команд и другие отмеченные выше особенности СНК-архитектуры приводят к столь
значительному упрощению структуры процессора, что становится возможной его реализация на одном кристалле с оставлением при этом места на кристалле для увеличения до нескольких десятков, а в'некоторых машинах даже до сотен числа общих и специализированных регистров.
Большое число регистров, особенно при наличии обеспечивающего их эффективное использование «оптимизирующего компилятора», позволяет до предела сократить обращение к ОП путем сохранения на регистрах промежуточных результатов, передачи через регистры операндов из одних программ в другие программы или подпрограммы, отказа от передач на сохранение в ОП содержимого регистров при прерываниях.
Особенностью СНК-архитектуры является механизм перекрывающихся регистровых окон, предназначенный для уменьшения числа обращений к ОП и межрегистровых передач, что способствует повышению производительности ЭВМ.
Процедурам динамически выделяются небольшие группы регистров фиксированной длины (регистровые окна). Окна последовательно выполняемых процедур перекрываются, благодаря чему возможна передача параметров от одной процедуры к другой. При вызове процедуры процессор переключается на работу с другим регистровым окном, при этом не возникает необходимости в передаче содержимого регистров в память.
Окно состоит из трех подгрупп регистров (рис. 9.21). Первая подгруппа содержит параметры, переданные данной процедуре от ее вызвавшей, и результаты для вызывающей процедуры при возврате в нее. Вторая подгруппа содержит локальные переменные процедуры. Третья, являясь буфером для двустороннего обмена между данной и ею вызываемой следующей процедурами, передает последней параметры от данной, которая, в свою
Регистры
Временного хранения (В)
t
Вызов-
Возврат
Регистры