Основные характерные черты CISC-архитектуры
Показать развитие и классификацию однопроцессорных архитектур
Архитектура - общая функциональная и структурная организация машины, определяющая методы кодирования данных, состав, назначение, принципы взаимодействия технических средств и программного обеспечения.
Исторически первыми появились однопроцессорные архитектуры. Классическим примером однопроцессорной архитектуры является архитектура фон Неймана со строго последовательным выполнением команд: процессор по очереди выбирает команды программы и также по очереди обрабатывает данные. По мере развития вычислительной техники архитектура фон Неймана обогатилась сначала конвейером команд, а затем многофункциональной обработкой и получила обобщенное название SISD (Single Instruction Single Data — один поток команд, один поток данных). Основная масса современных ЭВМ функционирует в соответствии с принципом фон Неймана и имеет архитектуру класса SISD.
Данная архитектура породила CISC, RISC и архитектуру с суперскалярной обработкой.
Конвейерная технология обработки команд
Процедура выполнения команд процессором включает несколько характерных этапов. В простейшем случае можно выделить как минимум четыре этапа обработки команд: выборка , декодирование, выполнение операции и запись результата .
Каждый этап в процессоре выполняется за один такт. При последовательной обработке команд , выполнение следующей команды начинается только после завершения предыдущей команды. Это приводит к низкой производительности и простоям аппаратуры процессора.
Для улучшения этих характеристик используется параллельное выполнение нескольких команд путем совмещения в каждом такте различных этапов их обработки. После выборки n команды во 2-ом такте идет ее декодирование и выборка n + 1 команды. В третьем такте выполняется n-ая команда, декодируется n + 2 и осуществляется выборка n + 3 команды и т. д. Такая организация работы процессора называется конвейерной обработкой.
Приостанов работы конвейера вызывает любая команда условного перехода в программе или взаимозависимость команд, т. е. использование следующей командой результатов предыдущей команды.
В реальных процессорах конвейер обработки команд сложнее и включает большее количество ступеней. Причина увеличения длины конвейера заключается в том, что многие команды являются довольно сложными и не могут быть выполнены за один такт процессора, особенно при высоких тактовых частотах. Поэтому каждая из четырех стадий обработки команд (выборка, декодирование, выполнение и запись) может состоять из нескольких ступеней конвейера. Собственно, длина конвейера – это одна из наиболее значимых характеристик любого процессора. Чем больше длина конвейера, тем большую частоту можно использовать в процессоре.
Для обеспечения непрерывности вычислительного процесса в структуре ЦП используется блок прогнозирования переходов и устройство выполнения переходов.
Основные черты суперскалярной обработки
В аппаратуру процессора закладываются средства, позволяющие одновременно выполнять две или более скалярные операции, т. е. команды обработки пары чисел. Суперскалярная архитектура базируется на многофункциональном параллелизме и позволяет увеличить производительность компьютера пропорционально числу одновременно выполняемых операций.
Реализация суперскалярной обработки заключается в чисто аппаратном механизме выборки из буфера инструкций несвязанных команд и параллельном запуске их на исполнение.
Суперскалярная аппаратура динамически строит план вычислений на основе последовательного кода программ. Хотя такой подход и увеличивает сложность физической реализации, скалярный процессор создает план, используя преимущества тех факторов, которые могут быть определены только во время выполнения.
Этот метод хорош тем, что он «прозрачен» для программиста, составление программ для подобных процессоров не требует никаких специальных усилий, ответственность за параллельное выполнение операций возлагается в основном на аппаратные средства.
Суперскалярная обработка широко используется в современных процессорах корпораций Intel, Advanced Micro Devices (AMD), International Business Machines (IBM), Sun Microsystems и др.
Классификация архитектуры SISD с краткой характеристикой классов
Архитектура SISD породила целый ряд архитектур: CISC, RISC, VLIW,архитектуру с суперскалярной обработкой и EPIC-концепцию.
Основные характерные черты CISC-архитектуры
Компьютеры с CISC (Complex Instruction Set Computer) архитектурой имеют комплексную (полную) систему команд, под управлением которой выполняются всевозможные операции типа «память – память», «память – регистр», «регистр – память», «регистр – регистр».
Данная архитектура характеризуется:
- большим числом команд (более 200);
- переменной длиной команд (от 1 до 11 байт);
- значительным числом способов адресации и форматов команд;
- сложностью команд и многотактностью их выполнения;
- наличием микропрограммного управления, что снижает быстродействие и усложняет процессор.