3.2.3. Особенности risc-процессоров.
Реализация первого принципа осуществляется благодаря использованию так называемого конвейера команд. При этом по первому импульсу тактового генератора в соответствующем устройстве выделяется код операции, который затем передается в устройство декодирования; по второму — в устройстве извлечения выделяется код операции следующей команды, а в устройстве декодирования происходит декодирование первой команды и передача ее в соответствующее исполнительное устройство — АЛУ, сопроцессор и т. д. Третий импульс сопровождается извлечением кода операции третьей команды, декодированием второй и подготовкой данных для выполнения первой.
Таким образом, по каждому из тактовых импульсов на конвейер вступает новая команда, и несколько уже обрабатываются на разных его ступенях. Одновременно, также по каждому из тактовых импульсов, его покидает одна выполненная команда. И хотя на выполнение каждой затрачивается по-прежнему от четырех до семи-восьми тактов (в рассмотренном выше условном конвейере — пять), каждый из них сопровождается, как это и требовалось, выполнением одной команды. Следовательно, если для СISC - процессоров конвейер команд является необязательным (хотя и желательным) элементом, то для RISC-процессоров он обязателен. Отметим, что большинство RISC-процессоров имеют не один, а несколько (от двух до четырех) конвейеров, за что они получили название суперскалярных (в отличие от скалярных — одноконвейерных).
Следующая особенность RISC-процессоров— высокая степень дробления конвейера. В рассмотренном выше примере он состоит из пяти ступеней: извлечения кода операции, декодирования, подготовки операндов, исполнения, сохранения результата. Реально RISC-процессоры характеризуются семидесяти ступенчатыми конвейерами. С увеличением числа ступеней действия, выполняемые на каждой из них, все более и более упрощаются. Последнее означает, что уменьшается число необходимых для этого логических элементов и появляется возможность повысить тактовую частоту процессора. Не случайно RISC-процессоры преодолели барьер 100 МГц существенно раньше СISC-процессоров.
Третья особенность — использование большого числа регистров. Как правило, в RISC-процессорах их не менее 32. Особенно выделяются изделия фирмы MIPS, имеющие сложную многооконную регистровую структуру и позволяющие адресовать до 136 регистров. Подобная свобода (семейство х86 имеет всего восемь регистров общего назначения) позволяет снизить число обращений к относительно медленной оперативной памяти в полтора-два раза (в сравнении с CISC-процессорами), что опять-таки положительно сказывается на росте реальной производительности системы. Добавим к этому, что все RISC-процессоры содержат системы управления кэш-памятью второго уровня, позволяющие работать с ней на максимальной скорости (в СISC-изделиях взаимодействие с кэш-памятью обычно происходит на частоте, более низкой, чем частота самого процессора).
Еще одна особенность RISC-процессоров — развитые средства прогнозирования ветвлений и переходов. В программах для семейства х86 команда перехода встречается в среднем через каждые шесть, в программах для RISC-процессоров, команды которых проще, — через каждые 10... 12 команд. Встретив команду условного перехода, процессор должен сделать предположение о том, выполнится условие или нет, и в зависимости от этого начать предвыборку команд либо с адреса предполагаемого перехода, либо с адреса, следующего за текущим.
Если переход предсказан неправильно, процессору необходимо удалить со всех ступеней конвейера команды, отноящиеся к неверно сделанному предположению, и перезагрузить конвейер. Это особенно сказывается на работе суперскалярных процессоров — на разных ступенях трех-четырех конвейеров может находиться довольно много команд. Их удаление с последующей перезагрузкой приводит к тому, что в течение нескольких тактов конвейер не покидает ни одна команда. Процессор, в котором это случается часто, теряет 20...30% своей производительности. Поэтому RISC-процессоры характеризуются весьма эффективными механизмами предсказания ветвлений.
- Эвм и вычислительные системы».
- Часть I.
- Лекция №1 общие сведения о микропроцессорах и микропроцессорных системах.
- Предисловие
- 1.1 . Основные определения и классификация микропроцессорных систем.
- 1.2. Однокристальные мп.
- 1.2.1 Краткий исторический обзор развития.
- Лекция №2 обзор микропроцессоров фирм клонмейкеров. Современный уровень развития однокристальных микропроцессоров.
- 2.1. Микропроцессоры-клоны.
- 2.2. Современные универсальные однокристальные микропроцессоры.
- Процессоры Pentium II.
- 2.2.1. Процессоры фирмы amd
- 2.2.2.ПроцессорыфирмыCyrix.
- 2.2.3. Сравнительный анализ мп различных семейств.
- 2.2.4. Перспективы развития.
- 2.3. Программируемые микроконтроллеры.
- Лекция №3 обзор микропроцессоров с микропрограммным управлением и микропроцессоров с сокращенным набором команд.
- 3.1. Мп с микропрограммным управлением.
- 3.2. Мп с сокращенным набором команд.
- 3.2.1. Risc-процессоры: предпосылки создания.
- 3.2.2. Принципы risc
- 3.2.3. Особенности risc-процессоров.
- 3.2.4. Представители группы risc-процессоров.
- 3.2.5. Цифровые процессоры обработки сигналов.
- Лекция №4 представление информации в мпс.
- 4.1. Способы кодирования информации в мпс.
- 4.2 Двоичный формат.
- 4.3. Двоично-десятичная система кодирования.
- 4.4. Шестнадцатиричная система счисления.
- 4.4. Формат с плавающей точкой.
- 4.5. Кодирование команд.
- Лекция №5 архитектура мп и мпс.
- 5.1. Понятие организации и архитектуры мп и мпс.
- 5.2 Обобщенная функциональная схема мп.
- 5.2.1 Устройство управления на основе аппаратной реализации.
- 5.2.2. Программируемая логическая матрица.
- Лекция №6 архитектура мп и мпс.(продолжение)
- 6.1. Функциональная схема однокристального мп.
- 6.2 Структура адресного пространства мпс.
- 6.3 Взгляд программиста на адресное пространство.
- 6.4 Понятие стека.
- Лекция №7 способы адресации
- 7.1 Основные определения.
- 7.2 Однокомпонентные способы адресации.
- 7.2.1 Прямой способ адресации.
- 7.2.3 Способы адресации с автомодификацией.
- 7.3 Многокомпонентные способы адресации.
- Лекция №8 основы проограммирования на языке ассемблера для мп i8086.
- 8.1. Формат команд на языке встроенного ассемблера.
- 8.2. Архитектура мп i8086.
- 8.2.1 Сегментация памяти мп i8086.
- 8.2.2 Структура мп i8086.
- 8.2.3 Устройство шинного интерфейса.
- 8.2.4 Операционное устройство(оу).
- 8.3 Основные команды языка Ассемблер для мп i8086.
- 8.3.1 Команды пересылки данных.
- Лекция №9 основы проограммирования на языке ассемблера для мп i8086. (продолжение).
- 9.1. Арифметические команды.
- 9.2. Логические команды.
- 9.3. Команды передачи управления.
- 9.4. Команды управления мп.
- Лекция №10 запоминающие устройства.
- 10.1 Основные характеристики полупроводниковых запоминающих устройств.
- 10.2 Способы организации бис зу.
- 10.3 Классификация полупроводниковых зу.
- 10.3.1. Статические озу (Static Random Access Memory).
- 10.3.2. Озу динамического типа (Dynamic Random Access Memory dram).
- 10.3.4. Кмоп - озу.
- Лекция №11 запоминающие устройства. (продолжение)
- 11.1. Постоянные зу. (Read Only Memory - rom).
- 11.2. Flash-память.
- 11.3. Корпуса модулей зу.
- 11.4. Наращивание объема и разрядности памяти, построенной на полупроводниковых зу.
- Лекция № 12 организация магистралей мпс.
- 12.1 Типы магистралей мпс.
- 12.2 Циклы обращения к магистрали.
- 12.3 Примеры архитектур системных магистралей современных мпс.
- Лекция №13 методы расширения адресного пространства мпс.
- 13.1 Предварительные замечания.
- 13.2 Метод окна.
- 13.3 Метод базовых регистров.
- 13.4 Метод банков.
- 13.5 Метод виртуальной памяти.
- Лекция №14 система прерываний.
- 14.1 Понятие системы прерываний, классификация систем прерываний.
- 14.2. Организация радиальной системы прерываний.
- 14.3. Расширение радиальной системы прерываний методом поллинга.
- 14.4. Организация векторной системы прерываний.
- Лекция №15 организация связи мпс с переферийными устройствами.
- 15.1. Классификация способов обмена информацией в мпс.
- Прямой ввод/ вывод
- 15.3 Условный ввод-вывод.
- 15.4. Режим прямого доступа к памяти.
- Лекция №16 интерфейсы мпс.
- 16.1. Принципы организации и классификация интерфейсов.
- 16.2. Элементная база интерфейсов.
- 16.3. Средства параллельного ввода/вывода.
- Лекция №17 расширитель интерфейса для ibm-совместимых пк. Программируемый интервальный таймер.
- 17.1. Расширитель интерфейса рс на основе ппа кр580вв55.
- 17.2 Программируемый интервальный таймер.
- 17.3. Модуль преобразования цифрового кода в шим-сигнал на базе пит.
- Лекция №18 интерфейсы последовательной связи.
- 18.1. Общая характеристика последовательной связи.
- 18.2. Асинхронные последовательные интерфейсы.
- 18.3. Бис для организации последовательного интерфейса.
- 18.4. Модем.
- 18.5. Стандарты физической связи. Стандарт rs -232- c.