Главная страница Случайная страница КАТЕГОРИИ: АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника |
Классификация процессоров
Разбиение современных процессоров по классам сложно и весьма условно, поскольку все удачные решения часто мигрируют из процессоров одного класса в другой, придавая им новые свойства и превращая их в универсальные. Тем не менее, мы сделаем это что бы показать принципы и способы построения современных процессоров. По числу потоков команд и потоков данных: - скалярные; - векторные. Скалярный процессор — это простейший класс микропроцессоров. Скалярный процессор обрабатывает один элемент данных за одну инструкцию (SISD, Single Instruction Single Data). Типичными элементами данных могут быть целые или числа с плавающей запятой. Абсолютное большинство процессоров являются скалярными или близкими к ним. Совершенствование скалярных процессоров привело к созданию суперскалярной архитектуры, которая характеризуется наличием вычислительного ядра, использующего несколько декодеров команд, которые могут нагружать работой множество исполнительных блоков, и позволяет выполнять несколько команд за один такт процессора. Современные суперскалярные микропроцессоры имеют одну из трех типов архитектур: - CISC ( Complex Instruction Set Computing) — вычисления со сложным набором команд. - RISC (Reduced instruction set Computing) — вычисления с упращенным набором команд; - MISC (Minimal instruction set Computing) — вычисления с минимальным количеством длинных команд. Архитектура CISC отличается повышенной гибкостью и расширенными возможностями РС, выполненного на микропроцессоре, и характеризуется: 1) большим числом различных по длине и формату команд; 2) использованием различных систем адресации; 3) сложной кодировкой команд. Типичными представителями CISC являются микропроцессоры семейства x86 (хотя уже много лет эти процессоры являются CISC только по внешней системе команд: в начале процесса исполнения сложные команды разбиваются на более простые микрооперации (МОП'ы), исполняемые RISC-ядром). Архитектура RISC Архитектура процессоров, построенная на основе упрощённого набора команд. Характеризуется наличием команд фиксированной длины, большого количества регистров, операций типа регистр-регистр, а также отсутствием косвенной адресации. Упрощение набора команд призвано сократить конвейер, что позволяет избежать задержек на операциях условных и безусловных переходов. Однородный набор регистров упрощает работу компилятора при оптимизации исполняемого программного кода. Кроме того, RISC-процессоры отличаются меньшим энергопотреблением и тепловыделением.
Архитектура MISC - многоцелевая командная система управления компьютером, сочетает в себе преимущества CISC и RISC. Элементная база состоит из отдельных частей (могут быть объединены в одном корпусе): основная часть (HOST – ведущая), архитектуры RISC CPU, а расширяемая часть – с подключением ПЗУ (ROM) микропрограммного управления. При этом вычислительная система приобретает свойства CISC: – основные команды работают на HOST, а команды расширения образуют адрес микропрограммы для своего выполнения. HOST выполняет команды за один такт, а расширение эквивалентно CPU со сложным набором команд (CISC). Наличие ПЗУ устраняет недостаток RISC, связанный с тем, что при компиляции с языка высокого уровня код операции (микропрограмма) уже дешифрирована и открыта для программиста. Архитектура MISC строится на стековой вычислительной модели с ограниченным числом команд (примерно 20–30 команд). Векторный процессор — это процессор, в котором операндами некоторых команд могут выступать упорядоченные массивы данных — векторы. В векторных процессорах (SIMD, Single Instruction Multiple Data), в отличие от скалярных, одна инструкция работает с несколькими элементами данных. Векторные процессоры были распространены в сфере научных вычислений, где они являлись основой большинства суперкомпьютеров, начиная с 1980-х до 1990-х. Но резкое увеличение производительности и активная разработка новых процессоров привели к вытеснению их со сферы повседневных процессоров. В большинстве современных микропроцессоров имеются векторные расширения (например SSE, MMX для обработки мультимедийных данных, и т.д.), кроме того современные видеокарты и физические ускорители можно рассматривать как векторные сопроцессоры. По конструктивной реализации: - однокристальные микропроцессоры, - однокристальные микро-ЭВМ (All-In-Once – все в одном), - секционные микропроцессоры (bit-slise - частичное расслоение). Однокристальные микропроцессоры характерны тем, что: - система команд фиксирована; - содержат основные элементы кристалла: АЛУ, дешифратор команд, узел микропрограммного управления, узел управления обменом; - не позволяют наращивать разрядность обрабатываемых слов каскадированием; - шины данных, адреса, управления – мультиплексируемы. Однокристальные микро-ЭВМ (ОМЭВМ) отличаются тем, что: - кроме микропроцессора, кристалл включает в себя обрамление: ГТИ, контроллер прерываний, порты, таймер, ОЗУ, буфер команд; - их применение очень просто (например, контроллер KBD в РС): - вследствие низкой тактовой частоты, производительность ОМЭВМ невелика, но они и не предназначаются для высокоскоростных операций. Секционные микропроцессоры характерны тем, что: - допускают наращивание разрядности объединением одноименных линий нескольких чипов одинакового назначения; - дезинтегрированы на отдельные компоненты АЛУ и ИМС обрамления; - позволяют наращивать разрядность шин данных, адреса, АЛУ и объем подключаемой оперативной памяти: - могут работать в разных системах команд, в соответствии с прошивкой микропрограмм. По количеству ядер: - одноядерные; - многоядерные. Основными чертами классической структуры одноядерного процессора является наличие исполнительного ядра, кэш-памяти первого уровня L1 и кэша L2. Соединив N таких блоков в одно целое и дополнив их другими, мы уже получим готовый N-ядерный процессор.
|