Микропроцессоры с архитектурой RISC (Reduced Instruction Set Computers) используют сравнительно небольшой (сокращённый) набор наиболее употребляемых команд, определённый в результате статистического анализа большого числа программ для основных областей применения CISC (Complex Instruction Set Computer)- процессоров исходной архитектуры. Все команды работают с операндами и имеют одинаковый формат. Обращение к памяти выполняется с помощью специальных команд загрузки регистра и записи. Простота структуры и небольшой набор команд позволяет реализовать полностью их аппаратное выполнение и эффективный конвейер при небольшом объеме оборудования. Арифметику RISC - процессоров отличает высокая степень дробления конвейера. Этот прием позволяет увеличить тактовую частоту (значит, и производительность) компьютера; чем более элементарные действия выполняются в каждой фазе работы конвейера, тем выше частота его работы.
RISC - процессоры с самого начала ориентированы на реализацию всех возможностей ускорения арифметических операций, поэтому их конвейеры обладают значительно более высоким быстродействием, чем в CISC - процессорах. Поэтому RISC - процессоры в 2 - 4 раза быстрее имеющих ту же тактовую частоту CISC - процессоров с обычной системой команд и высокопроизводительней, несмотря на больший объем программ, на (30 %). Дейв Паттерсон и Карло Секуин сформулировали 4 основных принципа RISC:
1. Любая операция должна выполняться за один такт, вне зависимости от ее типа.
2. Система команд должна содержать минимальное количество наиболее часто используемых простейших инструкций одинаковой длины.
3. Операции обработки данных реализуются только в формате “регистр - регистр“ (операнды выбираются из оперативных регистров процессора, и результат операции записывается также в регистр; а обмен между оперативными регистрами и памятью выполняется только с помощью команд загрузки\записи).
4. Состав системы команд должен быть “ удобен “ для компиляции операторов языков высокого уровня
VLIW
VLIW (Very long instruction word — «очень длинная машинная команда») — архитектура процессоров с несколькими вычислительными устройствами. Одна инструкция процессора содержит несколько операций, которые выполняются параллельно.
В попытке достижения компромисса между CISC и RISC были созданы микропроцессоры типа VLIW. Хотя идеи VLIW сформулированы уже давно, до настоящего времени они были известны в основном специалистам в области компьютерных архитектур. Имеющиеся реализации, например, VLIW Multiflow, не получили широкого распространения. Пожалуй, единственными популярными процессорами, архитектура которых близка к VLIW, была линия AP-120B/FPS-164/FPS-264 компании Floating Point Systems, которые в 80-е годы активно применялись при проведении научно-технических расчетов.
Команда в этих системах содержала ряд полей, каждое из которых управляло работой отдельного блока процессора, так что все командное слово определяло поведение всех блоков процессора. Однако длина команды в FPS-х64 была равна всего 64 разрядам, что по современным меркам никак нельзя отнести к сверхбольшим.
Выделение в архитектуре VLIW компонентов командного слова, управляющих отдельными блоками МП, вводит явный параллелизм на уровень команд. Задача обеспечения эффективного распараллеливания работы отдельных блоков возлагается при этом на компилятор, который должен сгенерировать машинные команды, содержащие явные указания на одновременное исполнение операций в разных блоках. Таким образом, достижение параллелизма, обеспечиваемое в современных суперскалярных RISC-процессоров их аппаратурой, в VLIW возлагается на компилятор. Очевидно, что это вызывает сложные проблемы разработки соответствующих компиляторов. При этом распараллеливание работы между ФУ в EPIC происходит статически при компиляции, в то время как современные суперскалярные RISC-процессоры осуществляют это динамически.
Преимущества и недостатки.
Подход VLIW сильно упрощает архитектуру процессора, перекладывая задачу распределения вычислительных устройств на компилятор. Поскольку отсутствуют большие и сложные узлы, значительно снижается энергопотребление.
В то же время, код для VLIW обладает невысокой плотностью. Из-за большого количества пустых инструкций для простаивающих устройств программы для VLIW-процессоров могут быть гораздо длиннее, чем аналогичные программы для традиционных архитектур.
Архитектура VLIW выглядит довольно непривычной для программиста. Из-за сложных внутренних зависимостей кода, программирование на уровне машинных кодов для VLIW-архитектур вручную практически невозможно. Приходится полагаться на оптимизацию компилятора, который сам может содержать ошибки.
Микропроцессоры типа MISC
MISC (Minimal Instruction Set Computer) — процессор, работающий с минимальным набором длинных команд.
Увеличение разрядности процессоров привело к идее укладки нескольких команд в одно большое слово. Это позволило использовать возросшую производительность компьютера и его возможность обрабатывать одновременно несколько потоков данных.
Процессоры, образующие «компьютеры с минимальным набором команд» MISC, как и процессоры RISC, характеризуются небольшим числом чаще всего встречающихся команд.
Вместе с этим, принцип «очень длинных слов команд» VLIW обеспечивает выполнение группы команд за один цикл работы процессора. Порядок выполнения команд распределяется таким образом, чтобы в максимальной степени загрузить маршруты, по которым проходят потоки данных.
Таким образом, архитектура MISC объединила вместе суперскалярнуюRISC и VLIW концепции.
Компоненты такого процессора просты и работают с высокими скоростями.
Контрольные вопросы:
1. Что такое микропроцессор?
2. В виде чего выпускаются микропроцессоры в настоящее время?
3. Какие функции выполняет микропроцессор?
4. Что характерно для CISC-процессоров?
5. Назовите 4 основных принципа RISC-процессоров?
6. Преимущества и недостатки VLIW.
7. MISC — процессор.
Литература:
1. Кислицын Д.И. Инструментальные средства информационных систем. Внутреннее устройство ЭВМ [Текст]: учебное пособие / Д.И. Кислицын; Нижегород. гос. архит.-строит. ун-т.- Н.Новгород: ННГАСУ, 2011.- 143с.
2. http://studopedia.su/11_14883_tipi-mikroprotsessorov.html