
- •Основные характеристики процессоров
- •Классификация процессоров по архитектуре
- •Система команд процессора. Процессоры с фиксированной и модифицируемой системой команд
- •Специализированные процессоры
- •Совершенствование архитектуры и технологии памяти
- •Типы и виды интерфейсов ввода-вывода в эвм
- •Isa (Industry Standard Architecture) имеет следующие характеристики:
Классификация процессоров по архитектуре
Типы архитектур процессора
Последняя из приведенных характеристик процессора — архитектура является самой сложной. Она включает в себя большое количество отдельных архитектурных признаков:
-
множество и разрядность шин (адреса, данных, управления, внутренних и внешних), множество управляющих сигналов;
-
количество ядер и других параллельно работающих блоков;
-
множество внутренних устройств (устройство с плавающей точкой, кэш и т. д.);
-
множество и разрядность регистров, группы регистров;
-
типы обрабатываемых данных;
-
система команд (группы команд, порядок выполнения команд, способы адресации).
По совокупности различных архитектурных признаков выделяется множество типов процессоров:
-
RISC (Reduced (Restricted) Instruction Set Computer) и CISC (Complex (Complete) Instruction Set Computer);
-
Гарвардской и Принстонской архитектуры;
-
со скрытым (implicit) параллелизмом (суперскалярные процессоры) и явным (explicit) параллелизмом (EPIC-процессоры);
-
процессоры с фиксированной и модифицируемой системой команд.
RISC- и CISC-процессоры
RISC (Reduced (Restricted) Instruction Set Computer) — компьютер (процессор) с сокращенным набором команд. У RISC-процессоров система команд меньше, команды более простые и выполняются быстрее. Однако программа для RISC-процессоров длиннее. Примеры RISC-процессоров — Power PC компании IBM и SPARC компании Sun Microsystems.
CISC (Complex (Complete) Instruction Set Computer) — компьютер (процессор) с полным (сложным) набором команд. У CISC-процессоров система команд больше, команды более сложные и выполняются медленнее, но программа для них короче. Пример CISC-процессоров — семейство x86.
В принципе, можно было бы сделать процессор с еще более сложной системой команд, соответствующей, например, языку высокого уровня. Это было бы аппаратной реализацией языка высокого уровня. Но сейчас на практике так не делается, и языки высокого уровня "реализуются" программно, с помощью компиляторов и интерпретаторов. А сложные команды CISC-процессоров отображаются на микропрограммы, состоящие из микрокоманд.
Множество современных процессоров сочетает в себе свойства RISC- и CISC-процессоров, поскольку в процессе развития микропроцессорной техники в CISC-процессорах все больше появлялось элементов RISC, а в RISC, соответственно — CISC. Иллюстрацией этого являются процессоры Intel Pentium и IBM Power PC.
Простые команды RISC-процессоров позволяют эффективно использовать для своего исполнения конвейер. Дополнительный уровень детализации команд в CISC-процессорах, микрокоманды, позволяет использовать конвейер и в этом типе процессоров. Микрооперации и конвейер — это и есть элементы RISC в CISC-процессорах.
В RISC-процессорах оптимизация исполняемого кода в основном выполняется компилятором. В CISC-процессорах с элементами RISC это сделать невозможно по причине того, что машинные команды таких процессоров далее в процессе выполнения распадаются на еще более мелкие функциональные единицы — микрооперации. Поэтому в них оптимизация осуществляется в основном во время исполнения программы самим процессором путем переупорядочивания микроопераций и распределения их по параллельным блокам. Несмотря на то, что эти процессоры с точки зрения программиста и с точки зрения проектировщика различаются очень сильно, это можно считать их преимуществом, поскольку программа, скомпилированная для конкретной модели процессора, будет эффективно выполняться и на других моделях. Поэтому и в RISC-процессорах появляются оптимизирующие элементы.
Гарвардская и Принстонская архитектура
Гарвардская архитектура характеризуется раздельной памятью команд и данных. Она была реализована в Гарвардском университете в компьютере Mark I.
Основным признаком Принстонской архитектуры является объединенная (смешанная) память команд и данных (что предоставляет широкие возможности по модификации команд). Она ассоциируется с архитектурой фон Неймана, который был профессором математики в Принстонском Институте сложных (специальных) исследований.
Многие современные процессоры сочетают также и эти типы архитектур. Например, процессоры x86 используют смешанные основную память и кэш второго уровня, но раздельный кэш первого уровня.
Суперскалярные и EPIC-процессоры
Последние два типа (со скрытым и явным параллелизмом) выделяются по признаку отражения в системе команд внутреннего параллелизма процессора.
Процессоры со скрытым (implicit) параллелизмом называются супескалярными. Суперскалярный процессор содержит не менее двух конвейеров. Конвейеры работают параллельно. Распараллеливание (распределение команд по конвейерам) происходит на аппаратном уровне. Команды суперскалярных процессоров не содержат в явном виде информации, касающейся параллельной обработки внутри процессора. Соответственно, компилятор не может оптимизировать программу для параллельной обработки. Пример суперскалярного процессора — Pentium.
Процессоры с явным (explicit) параллелизмом реализуют технологию вычислений под названием EPIC (Explicitly Parallel Instruction Computing). Распараллеливание происходит уже на уровне компилятора, поскольку команды в явном виде содержат информацию, касающуюся параллельной обработки внутри процессора. Это называется параллелизмом на уровне команд (ILP, Instruction-Level Parallelism). Примером EPIC-процессора является Intel Itanium.
Подклассом EPIC-процессоров являются процессоры с длинным командным словом (VLIW, Very Long Instruction Word). Команды VLIW-процессора имеют специальные поля, содержащие информацию для каждого из параллельных обрабатывающих устройств процессора, предписывающую им определенные действия.