Процессор и его компоненты

Возможности 19.06.2019
Возможности

Процессор - это главная микросхема компьютера, его "мозг". Он разрешает выполнять программный код, находящийся в памяти и руководит работой всœех устройств компьютера. Скорость его работы определяет быстродействие компьютера. Конструктивно, процессор - это кристалл кремния очень маленьких размеров. Процессор имеет специальные ячейки, которые называются регистрами. Именно в регистрах помещаются команды, которые выполняются процессором, а также данные, которыми оперируют команды. Работа процессора состоит в выборе из памяти в определœенной последовательности команд и данных и их выполнении. На этом и базируется выполнение программ.

В ПК обязательно должен присутствовать центральный процессор (Central Rpocessing Unit - CPU), который выполняет всœе основные операции. Часто ПК оснащен дополнительными сопроцесорами, ориентированными на эффективное выполнение специфических функций, такие как, математический сопроцесор для обработки числовых данных в формате с плавающей точкой, графический сопроцесор для обработки графических изображений, сопроцесор ввода/вывода для выполнения операции взаимодействия с периферийными устройствами.

Основными параметрами процессоров являются:

  • тактовая частота͵
  • разрядность,
  • рабочее напряжение,
  • коэффициент внутреннего умножения тактовой частоты,
  • размер кеш памяти.

Тактовая частота определяет количество элементарных операций (тактов), выполняемые процессором за единицу времени. Тактовая частота современных процессоров измеряется в МГц (1 Гц соответствует выполнению одной операции за одну секунду, 1 МГц=106 Гц). Чем больше тактовая частота͵ тем больше команд может выполнить процессор, и тем больше его производительность. Первые процессоры, которые использовались в ПК работали на частоте 4,77 МГц, сегодня рабочие частоты современных процессоров достигают отметки в 2 ГГц (1 ГГц = 103 МГц).

Разрядность процессора показывает, сколько бит данных он может принять и обработать в своих регистрах за один такт. Разрядность процессора определяется разрядностью командной шины, то есть количеством проводников в шинœе, по которой передаются команды. Современные процессоры семейства Intel являются 32-разрядными.

Рабочее напряжение процессора обеспечивается материнской платой, в связи с этим разным маркам процессоров отвечают разные материнские платы. Рабочее напряжение процессоров не превышает 3 В. Снижение рабочего напряжения разрешает уменьшить размеры процессоров, а также уменьшить тепловыделœение в процессоре, что разрешает увеличить его производительность без угрозы перегрева.

Коэффициент внутреннего умножения тактовой частоты - это коэффициент, на который следует умножить тактовую частоту материнской платы, для достижения частоты процессора. Тактовые сигналы процессор получает от материнской платы, которая из чисто физических причин не может работать на таких высоких частотах, как процессор.
Размещено на реф.рф
На сегодня тактовая частота материнских плат составляет 100-133 Мгц. Для получения более высоких частот в процессоре происходит внутреннее умножение на коэффициент 4, 4.5, 5 и больше.

Кэш-память. Обмен данными внутри процессора происходит намного быстрее, чем обмен данными между процессором и оперативной памятью. По этой причине, для того чтобы уменьшить количество обращений к оперативной памяти, внутри процессора создают так называемую сверхоперативную или кэш-память. Когда процессору нужны данные, он сначала обращается к кэш-памяти, и только тогда, когда там отсутствуют нужные данные, происходит обращение к оперативной памяти. Чем больше размер кэш-памяти, тем большая вероятность, что необходимые данные находятся там. По этой причине высокопроизводительные процессоры имеют повышенные объёмы кэш-памяти.

Различают кэш-память первого уровня (выполняется на одном кристалле с процессором и имеет объём порядка несколько десятков Кбайт), второго уровня (выполняется на отдельном кристалле, но в границах процессора, с объёмом в сто и более Кбайт) и третьего уровня (выполняется на отдельных быстродействующих микросхемах с расположением на материнской плате и имеет объём один и больше Мбайт).

В процессе работы процессор обрабатывает данные, находящиеся в его регистрах, оперативной памяти и внешних портах процессора. Часть данных интерпретируется как собственно данные, часть данных - как адресные данные, а часть - как команды. Совокупность разнообразных команд, которые может выполнить процессор над данными, образовывает систему команд процессора. Чем больше набор команд процессора, тем сложнее его архитектура, тем длиннее запись команд в байтах и тем дольше средняя продолжительность выполнения команд.

Процессоры Intel, используемые в IBM-совместных ПК, насчитывают более тысячи команд и относятся к процессорам с расширенной системой команд - CISC -процессоров (CISC - Complex Instruction Set Computing). В противоположность CISC-процессорам разработаны процессоры архитектуры RISC с сокращенной системой команд (RISC - Reduced Instruction Set Computing). При такой архитектуре количество команд намного меньше, и каждая команда выполняется быстрее. Τᴀᴋᴎᴍ ᴏϬᴩᴀᴈᴏᴍ, программы, состоящие из простых команд выполняются намного быстрее на RISC-процессорах. Обратная сторона сокращенной системы команд состоит в том, что сложные операции приходится эмулировать далеко не всœегда эффективной последовательностью более простых команд. По этой причине CISC-процессоры используются в универсальных компьютерных системах, а RISC-процессоры - в специализированных. Для ПК платформы IBM PC доминирующими являются CISC-процессоры фирмы Intel, хотя в последнее время компания AMD изготовляет процессоры семейства AMD-K6, которые имеют гибридную архитектуру (внутреннее ядро этих процессоров выполненное по RISC-архитектуре, а внешняя структура - по архитектуре CISC).

В компьютерах IBM PC используют процессоры, разработанные фирмой Intel, или совместимые с ними процессоры других фирм, относящиеся к семейству x86. Родоначальником этого семейства был 16-разрядный процессор Intel 8086. В дальнейшем выпускались процессоры Intel 80286, Intel 80386, Intel 80486 с модификациями, разные модели Intel Pentium, Pentium MMX, Pentium Pro, Pentium II, Celeron, Pentium III. Новейшей моделью фирмы Intel является процессор Pentium IV. Среди других фирм-производителœей процессоров следует отметить AMD с моделями AMD-K6, Athlon, Duron и Cyrix.

Человеческий ум может судить
о будущем не иначе, как обдумывая прошедшее .
А. Ферран

Процессор — важнейший элемент ЭВМ, поэтому производством процессоров занимаются многие фирмы. Наиболее массовое распространение в настоящее время получили процессоры, произведенные фирмой Intel (США).

По конструктивному признаку все процессоры делятся на разрядно-модульные (собираются из нескольких микросхем) и однокристальные (изготавливаются в виде одной микросхемы, на одной подложке, на одном кристалле). Однокристальные процессоры в настоящее время получили наибольшее распространение.

По способу представления команд (иногда говорят - инструкций) все микропроцессоры можно разделить на две группы:

  • процессоры типа CISC (Complex Instruction Set Computing) с полным набором команд;
  • процессоры типа RISC (Reduced Instruction Set Computing) с сокращенным набором команд. Эти процессоры нацелены на быстрое выполнение небольшого набора простых команд. При выполнении сложных команд RISC-процессоры работают медленнее, чем CISC-процессоры.

Заметим, что эти две архитектуры процессоров постоянно сближаются, отбирая лучшие свойства каждой. Тем не менее более перспективной считается RISC-архитектура.

Под термином «архитектура» понимается конструкция процессора и имеющаяся система команд процессора (набор инструкций).

Самым первым процессором, выпущенным фирмой Intel в 1971 году, был четырехразрядный процессор Intel 4004 (табл. 8.1).

В 1974 году был разработан восьмиразрядный процессор Intel 8080 (отечественный аналог КР580ВМ80А), а в 1978 году — процессор Intel 8086, который был совместим с микропроцессором Intel 8080. Система команд процессора насчитывала 134 команды. На базе микропроцессора 8086 и его модификации 8088 выпускались компьютеры IBM PC и IBM PC/XT.

Заметим, что в технической литературе порой используют термин «процессор», а иногда термин «микропроцессор». Различие указанных терминов заключается в уточнении технологии изготовления и габаритов процессора.

Микропроцессор (МП) изготавливается по полупроводниковой технологии и размещается на одном кристалле, в одной микросхеме (иногда говорят — в одном чипе).

Таблица 8.1.

Модель МП Разрядность, бит Тактовая частота, МГц Число команд Число транзисторов, тыс. Год выпуска
Шины данных Шины адреса
4004 4 4 4,77 45 2,3 1971
8080 8 8 4,77 10 1974
8086 16 16 4,77 и 8 134 29 1978
8088 8, 16 20 4,77 и 8 134 70 1979
80286 16 24 10...33
130 1982
80386 32 32 25...50 240 275 1985
80486 32 32 33...100 240 1200 1989
Pentium 64 32 50...150 240 3100 1993
Pentium Pro 64 32 66...200 240 5500 1995
Pentium MMX 64 32 166 297 4500 1997
Pentium II 64 32 233 7500 1997
Pentium III 64 32 600 9500 1999
Pentium 4 64 32 1500 42000 2000
Pentium 4M 75000 2001

В 1980 году был анонсирован сопроцессор с плавающей точкой 8087, который расширил состав команд процессора 8086 почти на 60 новых команд.

Сопроцессор — это специальная микросхема (помощник), которая берет на себя часть важных функций процессора, чаще всего выполнение арифметических операций с плавающей точкой.

Сопроцессор реализует арифметические операции аппаратным способом, что осуществляется намного быстрее по сравнению с программным способом вычислений, которым реализуются операции процессором без использования сопроцессора. По этой причине его иногда называют математическим сопроцессором.

Разработанный в 1982 году микропроцессор Intel 80286 еще больше усовершенствовал конструкцию МП 8086. Была реализована защита памяти, расширено адресное пространство, а также добавлено несколько команд.

Заметим, что во многих литературных источниках вместо полного наименования марки процессоров используются их сокращенные названия. Например, вместо Intel 80286 пишут 286, а вместо Intel 80386 — 386. Порой для общего обозначения процессоров серий 80286, 80386, 80486 записывают 80`86 (и даже `86). Название фирмы Intel иногда сокращают до одной буквы, например i80486.

Процессор Intel 80286 может выполнять программы, разработанные для процессора Intel 8086. Способность процессора последующей модификации выполнять программы, разработанные для процессоров предыдущей конструкции, называется совместимостью процессоров снизу вверх. Другими словами, программы, разработанные для предыдущих конструкций процессоров, работают без исправлений и дополнений на процессорах новых конструкций.

Начиная с МП 80286, процессоры фирмы Intel поддерживают режим выполнения нескольких задач — так называемый многозадачный режим. При работе в многозадачном режиме процессор поочередно переключается от одной задачи к другой, но в каждый текущий момент времени обслуживается лишь одна программа.

Для процессора 80286 выпускался сопроцессор 80287. На базе этих микросхем, начиная с 1984 году, компания IBM производила персональные компьютеры IBM PC/AT.

В 1987 году появился микропроцессор 80386. Начиная с этого процессора, во всех процессорах используется конвейерное выполнение команд — одновременное выполнение в разных частях МП нескольких последовательно записанных в ОЗУ команд. Конвейерное выполнение команд увеличивает быстродействие ЭВМ в 2-3 раза.

МП 80386 может функционировать в двух основных режимах:

  • режиме реальной адресации, который характеризуется тем, что МП работает как очень быстрый процессор 8086 с 32-разрядными шинами;
  • режиме защищенной виртуальной адресации, который характеризуется параллельным выполнением нескольких задач, как бы несколькими процессорами 8086, по одному на каждую задачу.

Процессор 80486 разработан в 1989 году и содержит более миллиона транзисторов.

Процессоры i486SX и i486DX — это 32-разрядные процессоры, у которых внутренняя кэш-память первого уровня имеет емкость 8 Кбайт. Основное отличие одного от другого заключается в том, что в процессоре i486DX впервые сопроцессор размещен на общей подложке (на одном кристалле) с процессором. В МП i486SX отсутствует встроенный сопроцессор для выполнения операций с плавающей точкой. Поэтому он имеет меньшую цену и применяется в ЭВМ, для которых не очень важна производительность при обработке вещественных чисел. По желанию пользователя такие ЭВМ могут быть укомплектованы дополнительным сопроцессором i487SX, который изготовляется в виде отдельной микросхемы.

В процессоре i486DX2 применяется технология удвоения внутренней тактовой частоты. Это позволяет увеличить производительность процессора почти на 70%. Процессор i486DX4/100 использует технологию утроения тактовой частоты. Он работает с внутренней тактовой частотой 99 МГц, в то время как внешняя тактовая частота составляет 33 МГц (частота, на которой работает системная шина).

В процессоре Pentium (появился в 1993 году) стали использоваться элементы структуры RISC-процессоров. Он изготовлен по 0,8-микрометровой технологии и содержит 3,1 млн транзисторов. Процессор Pentium иногда обозначают P5 или 80586.

Термин «0,8-микронная технология» означает, что каждый транзистор размещается на кристалле внутри квадрата с указанным размером стороны.

Первоначальная реализация процессора Pentium была рассчитана на работу с тактовыми частотами 60 и 66 МГц. Впоследствии были разработаны процессоры Pentium, работающие с тактовыми частотами 75, 90, 100, 120, 133, 150, 166, 200 МГц.

Прогресс в области разработки и производства процессоров идет непрерывно.

1 ноября 1995 года появился первый процессор Pentium Pro (80686, Р6) с тактовой частотой 150 МГц.

Технология ММХ (Multimedia Extension мультимедийное расширение) предполагает включение в состав команд процессора Pentium набора из 57 новых команд. Новые команды предназначены в первую очередь для реализации алгоритмов обработки видео- и аудиоданных: фильтрации, преобразований Фурье, свертки и пр.

Технология Intel MMX позволяет обрабатывать несколько пакетов данных одинаковым образом, т. е. использует технологию SIMD.

Число транзисторов в процессоре Pentium MMX составляет 4,5 млн штук, а кэш-память первого уровня имеет объем 32 Кбайта. Как показали испытания, MMX-процессор увеличивает производительность по сравнению с обычным процессором Pentium на величину до 34%.

В 1995-1997 годах корпорация Intel выпустила еще несколько моделей: Pentium MMX 266 МГц и Pentium Pro 200 МГц.

15 апреля 1998 года фирма Intel представила модели Pentium II с тактовыми частотами 350 и 400 МГц.

Процессор Pentium II изготавлен по так называемой 0,25-микрометровой технологии. При этом каждый транзистор умещается в квадрате со сторонами в четверть микрометра. На срезе человеческого волоса можно уместить 30 000 таких транзисторов. В будущем предстоит переход на технологии 0,18 и 0,13 микрометра.

С целью завоевания рынка фирма Intel выпустила недорогой процессор Celeron, в котором первоначально отсутствовала кэш-память второго уровня.

24 августа 1998 года фирма Intel представила еще два процессора семейства Celeron — 300A и 333. Новые процессоры выполнены по 0,25-микрометровой технологии и содержат кэш-память второго уровня размером 128 Кбайт.

По сравнению с Pentium II в нем для увеличения быстродействия еще больше усилено распараллеливание процессов.

Кроме того, Pentium III отличается наличием уникального идентификационного номера, который может быть считан программно для определения личности пользователя (например, при совершении покупок через Интернет).

В ноябре 2000 года выпущен процессор Pentium 4 с тактовыми частотами 1,4 и 1,5 ГГц. Процессор Pentium 4 изготавливается по 0,18-микрометровой технологии. В процессоре используется 144 новых команд (инструкций), предназначенных для ускорения обработки видео-, мультимедиа, трехмерной графики и криптографии.

Рис. 8.1. Зависимость числа транзисторов в процессорах фирмы Intel от даты выпуска

В 1965 году один из будущих руководителей компании Intel Гордон Мур сделал предсказание, что плотность транзисторов на кристалле будет удваиваться каждые полтора-два года с соответствующим возрастанием производительности процессора. «Закон Мура» с некоторыми оговорками действует до сих пор. На гистограмме схематично показан процесс увеличения числа транзисторов в процессорах фирмы Intel.

8.2.2. Назначение и структура простейшего процессора

Центральный процессор — это основной рабочий компонент компьютера, который выполняет арифметические и логические операции, управляет вычислительным процессом и координирует работу всех устройств компьютера.

Центральный процессор в общем случае содержит в себе:

  • арифметико-логическое устройство;
  • шины данных и шины адресов;
  • регистры;
  • счетчики команд;
  • кэш — очень быструю память малого объема;
  • математический сопроцессор чисел с плавающей точкой.

Современные процессоры выполняются в виде микропроцессоров. Физически микропроцессор представляет собой интегральную схему — тонкую пластинку кристаллического кремния прямоугольной формы площадью всего несколько квадратных миллиметров, на которой размещены схемы, реализующие все функции процессора. Кристаллическая пластинка обычно помещается в пластмассовый или керамический плоский корпус и соединяется золотыми проводками с металлическими штырьками, чтобы его можно было присоединить к системной плате компьютера.

Основные характеристики процессора

  • Производительность — основная характеристика, показывающая скорость выполнения компьютером операций обработки информации.
Она в свою очередь зависит от следующих характеристик:
  • тактовая частота — определяет число тактов работы процессора в 1с;
  • разрядность — определяет размер минимальной порции информации, называемой машинным словом;
  • адресное пространство — разрядность адресной шины, т. е. максимальный объем оперативной памяти, который может быть установлена на компьютере.

8.2.3. Принцип действия процессора

Процессор является главным элементом ЭВМ. Он прямо или косвенно управляет всеми устройствами и процессами, происходящими в ЭВМ.

В конструкции современных процессоров четко просматривается тенденция постоянного увеличения тактовой частоты. Это естественно: чем больше операций выполняет процессор, тем выше его производительность. Предельная тактовая частота во многом определяется существующей технологией производства микросхем (наименьшими достижимыми размерами элементов, которые определяют минимальное время передачи сигналов).

Кроме повышения тактовой частоты, отмечается увеличение производительности процессоров, которое достигается разработчиками менее очевидными приемами, связанными с изобретением новых архитектур и алгоритмов обработки информации. Некоторые из них рассмотрим на примере процессора Pentium (Р5) и последующих моделей.

Основные особенности процессора Pentium:

  • конвейерная обработка информации;
  • суперскалярная архитектура;
  • наличие раздельных кэш-памятей для команд и данных;
  • наличие блока предсказания адреса перехода;
  • динамическое исполнение программы;
  • наличие блока вычислений с плавающей точкой;
  • поддержка многопроцессорного режима работы;
  • наличие средства обнаружения ошибок.
Термин «суперскалярная архитектура» означает, что процессор содержит более одного вычислительного блока. Эти вычислительные блоки чаще называют конвейерами. Заметим, что первая суперскалярная архитектура была реализована в отечественной ЭВМ «Эльбрус-1» (1978).

Наличие в процессоре двух конвейеров позволяет ему одновременно выполнять (завершать) две команды (инструкции).

Каждый конвейер разделяет процесс выполнения команды на несколько этапов (например, пять):

  • выборка (считывание) команды из ОЗУ или кэш-памяти;
  • декодирование (дешифрация) команды, т. е. определение кода выполняемой операции;
  • выполнение команды;
  • обращение к памяти;
  • запоминание полученных результатов в памяти.

Для реализации каждого из перечисленных этапов (каждой операции) служит отдельное устройство - ступень. Таким образом, в каждом конвейере процессора Pentium имеется пять ступеней.

При конвейерной обработке на выполнение каждого этапа отводится один такт синхронизирующей (тактовой) частоты. В каждом новом такте заканчивается выполнение одной команды и начинается выполнение новой команды. Такое выполнение команд называют поточной обработкой.

Образно ее можно сравнить с производственным конвейером (потоком), где на каждом участке с разными изделиями выполняют всегда одну и ту же операцию. При этом, когда готовое изделие сходит с конвейера, на него заходит новое, а остальные изделия в это время находятся на разных стадиях готовности. Переход изготавливаемых изделий с участка на участок должен происходить синхронно, по специальным сигналам (в процессоре это такты, формируемые тактовым генератором).

Общее время выполнения одной команды в конвейере с пятью ступенями будет составлять пять периодов тактовой частоты. В каждом такте конвейер будет одновременно обрабатывать (выполнять) пять различных команд. В результате за пять тактов будет выполнено пять команд. Таким образом, конвейеризация увеличивает производительность процессора, но она не сокращает время выполнения отдельной команды. Выигрыш получается за счет того, что обрабатывается сразу несколько команд.

В действительности конвейеризация даже увеличивает время выполнения каждой отдельной команды из-за появления дополнительных расходов, связанных с организацией работы конвейера. При этом тактовая частота ограничивается быстродействием работы самой медленной ступени конвейера.

В качестве примера рассмотрим процесс выполнения команды, у которой длительности выполнения этапов составляют 60, 30, 40, 50 и 20 нс. Примем дополнительные расходы на организацию конвейерной обработки равными 5 нс.

Если бы не было конвейеризации, то на выполнение одной команды потребовалось 60 + 30 + 40 + 50 + 20 = 200 нс.

Если же используется конвейерная организация, то длительность такта должна быть равна длительности самого медленного этапа обработки с добавлением «накладных» расходов, т. е. 60 + 5 = 65 нс. Таким образом, полученное в результате конвейеризации сокращение времени выполнения команды составит 200/65 = 3,1 раза.

Заметим, что время выполнения конвейером одной команды составляет 5 × 65 = 325 нс. Эта величина существенно больше 200 нс — времени выполнения команды без конвейеризации. Но одновременное выполнение сразу пяти команд дает среднее время завершения одной команды 65 нс.

Процессор Pentium имеет две кэш-памяти первого уровня (они расположены внутри процессора). Как известно, кэширование увеличивает производительность процессора за счет уменьшения числа случаев ожидания поступления информации из медленной оперативной памяти. Нужные данные и команды берутся процессором из быстрой кэш-памяти (буфера), куда они заносятся заранее.

Наличие одной кэш-памяти в предыдущих конструкциях процессоров приводило к возникновению структурных конфликтов. Две команды, выполнявшиеся конвейером, порой одновременно пытались считать информацию из единственной кэш-памяти. Выполнение раздельного кэширования (буферизации) для команд и данных исключает такие конфликты, давая возможность обеим командам выполняться одновременно.

Развитие вычислительной техники идет непрерывно. Постоянно конструкторы ищут новые пути совершенствования своих изделий. Наиболее ценным ресурсом процессоров является их производительность. По этой причине изобретаются разнообразные приемы повышения производительности процессоров.

Одним из таких приемов является экономия времени за счет предсказания возможных путей выполнения разветвляющегося алгоритма. Это осуществляется с помощью блока предсказания адреса будущего перехода. Идея его работы похожа на идею работы кэш-памяти. Как известно, существуют линейные, циклические и разветвляющиеся вычислительные процессы. В линейных алгоритмах команды выполняются в порядке их записи в оперативной памяти: последовательно одна за другой. Для таких алгоритмов введенный в процессор блок предсказания адреса перехода не может дать выигрыша.

В разветвляющихся алгоритмах выбор команды определяется результатами проверки условий ветвлений. Если ждать окончания вычислительного процесса в точке ветвления и затем выбирать из ОЗУ нужную команду, то неизбежно появятся потери времени из-за непроизводительного простоя процессора (считывание команды из ОЗУ идет медленно). Блок предсказания адреса перехода работает на опережение и пытается заблаговременно предсказать адрес перехода, чтобы заранее перенести нужную команду из медленной оперативной памяти в специальный быстрый буфер перехода BTB (Branch Target Buffer).

Когда буфер ВТВ содержит правильное предсказание, переход происходит без задержки. Это напоминает работу кэш-памяти, у которой также бывают промахи. Из-за промахов операнды приходится считывать не из кэш-памяти, а из медленной ОП. Из-за этого происходит потеря времени.

Реализацию идеи предсказания адреса перехода осуществляют в процессоре два независимых буфера предварительной выборки. Они работают совместно с буфером предсказания переходов, причем один из буферов выбирает команды последовательно, а второй — согласно предсказаниям ВТВ.

Процессор Pentium имеет два пятиступенчатых конвейера для выполнения операций в формате с фиксированной точкой. Кроме того, в процессоре имеется конвейер с восьмью ступенями для вычислений в формате с плавающей точкой. Такие вычисления требуются при математических расчетах, а также для быстрой обработки динамических трехмерных цветных изображений.

Развитие архитектуры процессоров идет по пути постоянного увеличения объема кэш-памяти первого и второго уровней. Исключением стал процессор Pentium 4, у которого объем кэш-памяти неожиданно снизился по сравнению с Pentium III.

Для повышения производительности в новых конструкциях процессоров создают две системные шины, работающие с разными тактовыми частотами. Быстрая шина используется для работы с кэш-памятью второго уровня, а медленная — для традиционного обмена информацией с другими устройствами, например ОЗУ. Наличие двух шин исключает конфликты при обмене информацией процессора с основной памятью и кэш-памятью второго уровня, находящейся за пределами кристалла процессора.

Следующие за Pentium процессоры содержат большое число ступеней в конвейере. Это уменьшает время выполнения каждой операции в отдельной ступени, а значит, позволяет поднять тактовую частоту процессора.

В процессоре Pentium Pro (P6) применен новый подход к порядку выполнения команд, последовательно расположенных в ОЗУ.

Новый подход заключается в выполнении команд в произвольном порядке по мере их готовности (независимо от порядка расположения в ОЗУ). Однако конечный результат формируется всегда в соответствии с исходным порядком команд в программе. Такой порядок выполнения команд называется динамическим, или опережающим.

Рассмотрим в качестве примера следующий фрагмент учебной программы, записанной на некотором (вымышленном) машинно-ориентированном языке:

  • r1 ← mem Команда 1
  • r3 ← r1 + r2 Команда 2
  • r5 ← r5 + 1 Команда 3
  • r6 ← r6 - r7 Команда 4

Символами r1…r7 обозначены регистры общего назначения (РОН), которые входят в блок регистров процессора.

Символом mem обозначена ячейка памяти ОЗУ.

Прокомментируем записанную программу.

  • Команда 1: записать в РОН r1 содержимое ячейки памяти ОЗУ, адрес которой указан в РОН r4.
  • Команда 2: записать в РОН r3 результат сложения содержимого регистров r1 и r2.
  • Команда 3: прибавить к содержимому регистра r5 единицу.
  • Команда 4: уменьшить содержимое РОН r6 на содержимое регистра r7.

Предположим, что при выполнении команды 1 (загрузка операнда из памяти в регистр общего назначения r1) оказалось, что содержимое ячейки памяти mem отсутствует в кэш-памяти процессора (произошел промах, нужный операнд не был заранее доставлен в буфер из ОЗУ).

При традиционном подходе процессор перейдет к выполнению команд 2, 3, 4 только после того, как данные из ячейки mem основной памяти поступят в процессор (точнее, в регистр r1). Так как считывание будет происходить из медленно работающей оперативной памяти, этот процесс займет достаточно много времени (по меркам процессора). Все время ожидания этого события процессор будет простаивать, не выполняя полезной работы.

В приведенном примере процессор не может выполнить команду 2 до завершения команды 1, так как команда 2 использует результаты выполнения команды 1. В то же время процессор мог бы заранее выполнить команды 3 и 4, которые не зависят от результата выполнения команд 1 и 2.

В подобных случаях процессор Р6 работает иначе.

Процессор Р6 не ждет окончания выполнения команд 1 и 2, а сразу переходит к внеочередному выполнению команд 3 и 4. Результаты опережающего выполнения команд 3 и 4 сохраняются и извлекаются позднее, после выполнения команд 1 и 2. Таким образом, процессор Р6 выполняет команды в соответствии с их готовностью к выполнению, вне зависимости от их первоначального расположения в программе.

Производительность, безусловно, важный показатель работы ЭВМ. Однако не менее важно, чтобы быстрые вычисления происходили при малом числе ошибок.

В процессоре имеется устройство самотестирования, которое автоматически проверяет работоспособность большинства элементов процессора.

Кроме того, выявление сбоев, произошедших внутри процессора, осуществляется с помощью специального формата данных. К каждому операнду добавляется бит четности, в результате чего все циркулирующие внутри процессора числа становятся четными. Появление нечетного числа сигнализирует о случившемся сбое. Наличие нечетного числа — это как бы появление фальшивой банкноты без водяных знаков.

Единицами измерения быстродействия процессоров (и ЭВМ) могут служить:

  • МИПС (MIPS — Mega Instruction Per Second) — миллион команд (инструкций) над числами с фиксированной точкой за 1с;
  • МФЛОПС (MFLOPS — Mega Floating Operation Per Second) — миллион операций над числами с плавающей точкой за 1с;
  • ГФЛОПС (GFLOPS — Giga Floating Operation Per Second) — миллиард операций над числами с плавающей точкой за 1с.

Имеются сообщения о самом быстром в мире компьютере ASCI White (корпорация IBM), быстродействие которого достигает 12,3 ТФЛОПС (триллиона операций).

8.2.4. Арифметико-логическое устройство

Арифметико-логическое устройство (АЛУ) - важнейшая часть процессора. Оно позволяет выполнять разнообразные арифметические и логические операции над операндами. Вид выполняемой в АЛУ операции определяет программист, составляющий управляющую программу. Программа, хранящаяся в оперативной памяти, по частям передается в процессор, где и выполняется. Таким образом, процессор лишь исполняет указания программиста, выраженные в виде совокупности команд (программы).

Процессор (как и все другие цифровые устройства) воспринимает управляющие сигналы и операнды в виде двоичных чисел. Результат также формируется в виде двоичных чисел. Однако программисты составляют управляющие программы чаще всего на языках программирования высокого уровня (Паскаль, Бейсик, Си…). В момент трансляции программы ее текст превращается в набор двоичных чисел (объектный код). Именно эти двоичные числа заставляют процессор (в том числе и АЛУ) выполнять операции, запланированные программистом.

Структурная схема простейшего АЛУ показана на рис. 8.2.


Рис. 8.2. Структурная схема простейшего АЛУ

Два многоразрядных операнда (числа, буквы, символы и т.д.), подлежащие обработке в АЛУ, подаются на входы А и В. Результат выполнения операции появляется на выходе F. Вид операции, выполняемой в АЛУ, определяется сигналами, которые подаются на входы S и M. Таким образом при сложении чисел 2 и 3 одно из них подается на вход А, а второе - на вход В. В этот момент на шины S и М подается двоичное число, которое на обыденном языке означает команду (приказ) «Выполнить арифметическое сложение». Результат сложения - число 5 появляется на выходе F.

У входов M и S одинаковое назначение - определять вид выполняемой в АЛУ операции. Эти входы разделены лишь с методической целью. Сигнал на входе М (Mode - режим) определяет, какую операцию будет выполнять АЛУ - логическую или арифметическую.

Рассматриваемый простейший тип АЛУ (К155ИП3, американский аналог - 74181) имеет малую разрядность - лишь 4 бита. По этой причине разработчики АЛУ предусмотрели возможность увеличения (наращивания) разрядности устройства (в случае возникновения такой необходимости). Увеличить разрядность АЛУ можно за счет использования нескольких секций (микросхем) и двух специальных шин C 0 и C n +1 .

Шина C 0 при создании многоразрядных конструкций используется для приема переноса, формируемого в предыдущей (младшей) секции (микросхеме). Шина C n +1 служит для передачи арифметического переноса из младшей секции в старшую. Другими словами: если у разработчика в наличии имеется n -разрядное АЛУ, то для получения разрядности 2n нужно взять еще одну аналогичную микросхему, объединить параллельно входы S и M, а выход C n +1 младшей секции соединить со входом C 0 старшей секции (микросхемы). Логические и арифметические операции отличаются тем, что в логических операциях вычисления производятся поразрядно (между собой взаимодействуют только одноименные разряды и переносов между разрядами нет). При выполнении арифметических операций в случае необходимости происходят переносы между соседними разрядами (от младшего разряда к старшему).

Проиллюстрируем сказанное двумя примерами: логической операцией Исключающее ИЛИ и арифметическим сложением. Обе операции выполняются по одинаковым правилам, но в арифметическом сложении допускается перенос между разрядами.


Рис. 8.3. Логические операции Исключающее ИЛИ и арифметическое сложение

Предположим, что имеется два десятичных числа A = 12D и B = 10D. В двоичной системе счисления эти числа имеют вид: A =1100B и B =1010B.

В результате выполнения логической операции Исключающее ИЛИ получается четырехразрядное число 0110B. После выполнения арифметического сложения на выходе F появляется четырехразрядное число 0110B, а на шине C n +1 присутствует логическая единица. Этот сигнал свидетельствует о возникновении переноса в пятый разряд, т. е. в следующую старшую секцию восьмиразрядного АЛУ.

Работу четырехразрядного АЛУ можно описать выражением:

В этой формуле индексами i отмечены номера разрядов операндов A и B и выходного сигнала F.

Если на управляющие входы такого АЛУ подать сигналы M = 1, S3 = 1, S2 = 0, S1 = 1, S0 = 1, то АЛУ будет выполнять операцию Fi = Ai ^ Bi, т. е. операцию конъюнкции (логическое умножение). Этот результат получается при подстановке исходных данных в приведенную формулу.

Изменяя пять управляющих сигналов M, S3,…S0, можно «заставить» такое АЛУ выполнить 32 различные операции (16 логических и 16 арифметических).

Так, присутствие на управляющих входах двоичного числа M = 0, S3 = 1, S2 = 0, S1 =0, S0 = 1 заставит АЛУ выполнить арифметическое сложение чисел, поступивших на шины A и B, и к полученному результату прибавить значение переноса из предыдущей секции, т. е. Fi = Ai + Bi + C 0 .

В табл. 8.2. показано, как, изменяя управляющие сигналы, можно задавать вид выполняемой операции.

Таблица 8.2. Иерархия процессоров и их характеристики

Управляющие сигналы Выполняемые операции
S3 S2 S1 S0 Логические М = 1 Арифметические М = 0
0 0 0 0 A + C 0
0 0 0 1 (A v B) + C 0
0 0 1 0 ^ B (A v ) + C 0
0 0 1 1 0000 1111 + C 0
0 1 0 0 A + (A ^ ) + C 0
0 1 0 1 (A v B) + (A ^ ) + C 0
0 1 1 0 A + + C 0
0 1 1 1 A ^ 1111 + (A ^ ) + C 0
1 0 0 0 v B A + (A ^ B) + C 0
1 0 0 1 A + B + C 0
1 0 1 0 B (A v ) + (A ^ B) + C 0
1 0 1 1 A ^ B 1111 + (A ^ B) + C 0
1 1 0 0 1111 A + A + C 0
1 1 0 1 A v (A v B) + A + C 0
1 1 1 0 A v B (A v ) + A + C 0
1 1 1 1 A 1111 + A + C 0
  • 2 Архитектура фон Неймана
    • 2.1 Конвейерная архитектура
    • 2.2 Суперскалярная архитектура
    • 2.3 CISC-процессоры
    • 2.4 RISC-процессоры
    • 2.5 MISC-процессоры
    • 2.6 VLIW-процессоры
    • 2.7 Многоядерные процессоры
    • 2.8 Кэширование
  • 3 Гарвардская архитектура
  • 4 Параллельная архитектура
    • 4.1 Цифровые сигнальные процессоры
  • 5 Процесс изготовления
    • 5.1 Энергопотребление процессоров
  • 6 Производители
    • 6.1 СССР/Россия
    • 6.2 Китай
    • 6.3 Другие национальные проекты
  • 7 Определение модели
  • Примечания
    Литература

    Введение

    Intel 80486DX2 в керамическом корпусе PGA.

    Intel Celeron 400 Socket 370 в пластиковом корпусе PPGA, вид снизу.

    Intel Celeron 400 Socket 370 в пластиковом корпусе PPGA, вид сверху.

    Intel Celeron 1100 Socket 370 в корпусе FC-PGA2, вид снизу.

    Intel Celeron 1100 Socket 370 в корпусе FC-PGA2, вид сверху.

    Центра́льный проце́ссор (ЦП , или - ЦПУ ; англ. central processing unit , сокращенно - CPU , дословно - центральное обрабатывающее устройство ) - электронный блок либо микросхема - исполнитель машинных инструкций (кода программ), главная часть аппаратного обеспечения компьютера или программируемого логического контроллера. Иногда называют микропроцессором или просто процессором.

    Изначально термин центральное процессорное устройство описывал специализированный класс логических машин, предназначенных для выполнения сложных компьютерных программ. Вследствие довольно точного соответствия этого назначения функциям существовавших в то время компьютерных процессоров, он естественным образом был перенесён на сами компьютеры. Начало применения термина и его аббревиатуры по отношению к компьютерным системам было положено в 1960-е годы. Устройство, архитектура и реализация процессоров с тех пор неоднократно менялись, однако их основные исполняемые функции остались теми же, что и прежде.

    Главными характеристиками ЦПУ являются: тактовая частота, производительность, энергопотребление, нормы литографического процесса используемого при производстве (для микропроцессоров) и архитектура.

    Ранние ЦП создавались в виде уникальных составных частей для уникальных, и даже единственных в своём роде, компьютерных систем. Позднее от дорогостоящего способа разработки процессоров, предназначенных для выполнения одной единственной или нескольких узкоспециализированных программ, производители компьютеров перешли к серийному изготовлению типовых классов многоцелевых процессорных устройств. Тенденция к стандартизации компьютерных комплектующих зародилась в эпоху бурного развития полупроводниковых элементов, мейнфреймов и миникомпьютеров, а с появлением интегральных схем она стала ещё более популярной. Создание микросхем позволило ещё больше увеличить сложность ЦП с одновременным уменьшением их физических размеров. Стандартизация и миниатюризация процессоров привели к глубокому проникновению основанных на них цифровых устройств в повседневную жизнь человека. Современные процессоры можно найти не только в таких высокотехнологичных устройствах, как компьютеры, но и в автомобилях, калькуляторах, мобильных телефонах и даже в детских игрушках. Чаще всего они представлены микроконтроллерами, где помимо вычислительного устройства на кристалле расположены дополнительные компоненты (память программ и данных, интерфейсы, порты ввода/вывода, таймеры и др.). Современные вычислительные возможности микроконтроллера сравнимы с процессорами персональных ЭВМ десятилетней давности, а чаще даже значительно превосходят их показатели.


    1. История

    История развития производства процессоров полностью соответствует истории развития технологии производства прочих электронных компонентов и схем.

    Первым этапом затронувшим период с 40-х по конец 50-х годов, было создание процессоров с использованием электромеханических реле, ферритовых сердечников (устройств памяти) и вакуумных ламп. Они устанавливались в специальные разъёмы на модулях, собранных в стойки. Большое количество таких стоек, соединённых проводниками, в сумме представляли процессор. Отличительной особенностью была низкая надёжность, низкое быстродействие и большое тепловыделение.

    Вторым этапом , с середины 50-х до середины 60-х, стало внедрение транзисторов. Транзисторы монтировались уже на близкие к современным по виду платам, устанавливаемым в стойки. Как и ранее, в среднем процессор состоял из нескольких таких стоек. Возросло быстродействие, повысилась надёжность, уменьшилось энергопотребление.

    Третьим этапом , наступившим в середине 60-х годов, стало использование микросхем. Первоначально использовались микросхемы низкой степени интеграции, содержащие простые транзисторные и резисторные сборки, затем по мере развития технологии стали использоваться микросхемы, реализующие отдельные элементы цифровой схемотехники (сначала элементарные ключи и логические элементы, затем более сложные элементы - элементарные регистры, счётчики, сумматоры), позднее появились микросхемы, содержащие функциональные блоки процессора - микропрограммное устройство, арифметико-логическое устройство, регистры, устройства работы с шинами данных и команд.

    Четвёртым этапом , в начале 70-х годов, стало создание, благодаря прорыву в технологии создания БИС и СБИС (больших и сверхбольших интегральных схем, соответственно), микропроцессора - микросхемы, на кристалле которой физически были расположены все основные элементы и блоки процессора. Фирма Intel в 1971 году создала первый в мире 4-х разрядный микропроцессор 4004, предназначенный для использования в микрокалькуляторах. Постепенно практически все процессоры стали выпускаться в формате микропроцессоров. Исключением долгое время оставались только малосерийные процессоры, аппаратно оптимизированные для решения специальных задач (например суперкомпьютеры или процессоры для решения ряда военных задач), либо процессоры, к которым предъявлялись особые требования по надёжности, быстродействию или защите от электромагнитных импульсов и ионизирующей радиации. Постепенно, с удешевлением и распространением современных технологий, эти процессоры также начинают изготавливаться в формате микропроцессора. Сейчас слова микропроцессор и процессор практически стали синонимами, но тогда это было не так, потому что обычные (большие) и микропроцессорные ЭВМ мирно сосуществовали ещё по крайней мере 10-15 лет, и только в начале 1980-х годов микропроцессоры вытеснили своих старших собратьев. Тем не менее, центральные процессорные устройства некоторых суперкомпьютеров даже сегодня представляют собой сложные комплексы, построенные на основе микросхем большой и сверхбольшой степени интеграции. Надо сказать, что переход к микропроцессорам позволил потом создать персональные компьютеры, которые теперь проникли почти в каждый дом.

    Первым общедоступным микропроцессором был 4-разрядный Intel 4004, представленный 15 ноября 1971 года корпорацией Intel. Он содержал 2300 транзисторов, работал на тактовой частоте 92,6 кГц и стоил 300 долл.
    Далее его сменили 8-разрядный Intel 8080 и 16-разрядный 8086, заложившие основы архитектуры всех современных настольных процессоров. Из-за распространённости 8-разрядных модулей памяти был выпущен дешевый 8088, упрощенная версия 8086, с 8-разрядной шиной памяти. Затем проследовала его модификация 80186.
    В процессоре 80286 появился защищённый режим с 24-битной адресацией, позволявший использовать до 16 Мб памяти.
    Процессор Intel 80386 появился в 1985 году и привнёс улучшенный защищённый режим, 32-битную адресацию, позволившую использовать до 4 Гб оперативной памяти и поддержку механизма виртуальной памяти. Эта линейка процессоров построена на регистровой вычислительной модели.
    Параллельно развиваются микропроцессоры, взявшие за основу стековую вычислительную модель.

    За годы существования микропроцессоров было разработано множество различных их архитектур. Многие из них (в дополненном и усовершенствованном виде) используются и поныне. Например Intel x86, развившаяся вначале в 32-битную IA-32, а позже в 64-битную x86-64 (которая у Intel называется EM64T). Процессоры архитектуры x86 вначале использовались только в персональных компьютерах компании IBM (IBM PC), но в настоящее время всё более активно используются во всех областях компьютерной индустрии, от суперкомпьютеров до встраиваемых решений. Также можно перечислить такие архитектуры как Alpha, POWER, SPARC, PA-RISC, MIPS (RISC-архитектуры) и IA-64 (EPIC-архитектура).

    В современных компьютерах процессоры выполнены в виде компактного модуля (размерами около 5×5×0,3 см), вставляющегося в ZIF-сокет. Большая часть современных процессоров реализована в виде одного полупроводникового кристалла, содержащего миллионы, а с недавнего времени даже миллиарды транзисторов.


    1.1. Перспективы

    В ближайшие 10-20 лет, скорее всего, изменится материальная часть процессоров ввиду того, что технологический процесс достигнет физических пределов производства. Возможно, это будут:

    • Оптические компьютеры - в которых вместо электрических сигналов обработке подвергаются потоки света (фотоны, а не электроны).
    • Квантовые компьютеры, работа которых всецело базируется на квантовых эффектах. В настоящее время ведутся работы над созданием рабочих версий квантовых процессоров.
    • Молекулярные компьютеры - вычислительные системы, использующие вычислительные возможности молекул (преимущественно, органических). Молекулярными компьютерами используется идея вычислительных возможностей расположения атомов в пространстве.

    2. Архитектура фон Неймана

    Большинство современных процессоров для персональных компьютеров в общем основаны на той или иной версии циклического процесса последовательной обработки данных, изобретённого Джоном фон Нейманом.

    Дж. фон Нейман придумал схему постройки компьютера в 1946 году. Отличительной особенностью архитектуры фон Неймана является то, что инструкции и данные хранятся в одной и той же памяти.

    В различных архитектурах и для различных команд могут потребоваться дополнительные этапы. Например, для арифметических команд могут потребоваться дополнительные обращения к памяти, во время которых производится считывание операндов и запись результатов.

    Этапы цикла выполнения:

    1. Процессор выставляет число, хранящееся в регистре счётчика команд, на шину адреса и отдаёт памяти команду чтения.
    2. Выставленное число является для памяти адресом; память, получив адрес и команду чтения, выставляет содержимое, хранящееся по этому адресу, на шину данных и сообщает о готовности.
    3. Процессор получает число с шины данных, интерпретирует его как команду (машинную инструкцию) из своей системы команд и исполняет её.
    4. Если последняя команда не является командой перехода, процессор увеличивает на единицу (в предположении, что длина каждой команды равна единице) число, хранящееся в счётчике команд; в результате там образуется адрес следующей команды.

    Данный цикл выполняется неизменно, и именно он называется процессом (откуда и произошло название устройства).

    Во время процесса процессор считывает последовательность команд, содержащихся в памяти, и исполняет их. Такая последовательность команд называется программой и представляет алгоритм работы процессора. Очерёдность считывания команд изменяется в случае, если процессор считывает команду перехода, - тогда адрес следующей команды может оказаться другим. Другим примером изменения процесса может служить случай получения команды остановка или переключение в режим обработки прерывания.

    Команды центрального процессора являются самым нижним уровнем управления компьютером, поэтому выполнение каждой команды неизбежно и безусловно. Не производится никакой проверки на допустимость выполняемых действий, в частности, не проверяется возможная потеря ценных данных. Чтобы компьютер выполнял только допустимые действия, команды должны быть соответствующим образом организованы в виде необходимой программы.

    Скорость перехода от одного этапа цикла к другому определяется тактовым генератором. Тактовый генератор вырабатывает импульсы, служащие ритмом для центрального процессора. Частота тактовых импульсов называется тактовой частотой.


    2.1. Конвейерная архитектура

    Конвейерная архитектура (pipelining ) была введена в центральный процессор с целью повышения быстродействия. Обычно для выполнения каждой команды требуется осуществить некоторое количество однотипных операций, например: выборка команды из ОЗУ, дешифровка команды, адресация операнда в ОЗУ, выборка операнда из ОЗУ, выполнение команды, запись результата в ОЗУ. Каждую из этих операций сопоставляют одной ступени конвейера. Например, конвейер микропроцессора с архитектурой MIPS-I содержит четыре стадии:

    • получение и декодирование инструкции,
    • адресация и выборка операнда из ОЗУ,
    • выполнение арифметических операций,
    • сохранение результата операции.

    После освобождения k -й ступени конвейера она сразу приступает к работе над следующей командой. Если предположить, что каждая ступень конвейера тратит единицу времени на свою работу, то выполнение команды на конвейере длиной в n ступеней займёт n единиц времени, однако в самом оптимистичном случае результат выполнения каждой следующей команды будет получаться через каждую единицу времени.

    Действительно, при отсутствии конвейера выполнение команды займёт n единиц времени (так как для выполнения команды по-прежнему необходимо выполнять выборку, дешифровку и т. д.), и для исполнения m команд понадобится единиц времени; при использовании конвейера (в самом оптимистичном случае) для выполнения m команд понадобится всего лишь n + m единиц времени.

    Факторы, снижающие эффективность конвейера:

    1. Простой конвейера, когда некоторые ступени не используются (напр., адресация и выборка операнда из ОЗУ не нужны, если команда работает с регистрами).
    2. Ожидание: если следующая команда использует результат предыдущей, то последняя не может начать выполняться до выполнения первой (это преодолевается при использовании внеочередного выполнения команд - out-of-order execution).
    3. Очистка конвейера при попадании в него команды перехода (эту проблему удаётся сгладить, используя предсказание переходов).

    Некоторые современные процессоры имеют более 30 ступеней в конвейере, что увеличивает производительность процессора, однако приводит к большому времени простоя (например, в случае ошибки в предсказании условного перехода). Не существует единого мнения по поводу оптимальной длины конвейера: различные программы могут иметь существенно различные требования.


    2.2. Суперскалярная архитектура

    Способность выполнения нескольких машинных инструкций за один такт процессора путем увеличения числа исполнительных устройств. Появление этой технологии привело к существенному увеличению производительности, в то же время существует определенный предел роста числа исполнительных устройств, при превышении которого производительность практически перестает расти, а исполнительные устройства простаивают. Частичным решением этой проблемы являются, например, технология Hyper Threading.


    2.3. CISC-процессоры

    Complex instruction set computer - вычисления со сложным набором команд. Процессорная архитектура, основанная на усложнённом наборе команд. Типичными представителями CISC являются микропроцессоры семейства x86 (хотя уже много лет эти процессоры являются CISC только по внешней системе команд: в начале процесса исполнения сложные команды разбиваются на более простые микрооперации (МОП’ы), исполняемые RISC-ядром).

    2.4. RISC-процессоры

    Reduced instruction set computer - вычисления с упрощённым набором команд (в литературе слово «reduced» нередко ошибочно переводят как «сокращённый»). Архитектура процессоров, построенная на основе упрощённого набора команд, характеризуется наличием команд фиксированной длины, большого количества регистров, операций типа регистр-регистр, а также отсутствием косвенной адресации. Концепция RISC разработана Джоном Коком (John Cocke) из IBM Research, название придумано Дэвидом Паттерсоном (David Patterson).

    Упрощение набора команд призвано сократить конвейер, что позволяет избежать задержек на операциях условных и безусловных переходов. Однородный набор регистров упрощает работу компилятора при оптимизации исполняемого программного кода. Кроме того, RISC-процессоры отличаются меньшим энергопотреблением и тепловыделением.

    Среди первых реализаций этой архитектуры были процессоры MIPS, PowerPC, SPARC, Alpha, PA-RISC. В мобильных устройствах широко используются ARM-процессоры.


    2.5. MISC-процессоры

    Minimum instruction set computer - вычисления с минимальным набором команд. Дальнейшее развитие идей команды Чака Мура, который полагает, что принцип простоты, изначальный для RISC-процессоров, слишком быстро отошёл на задний план. В пылу борьбы за максимальное быстродействие, RISC догнал и перегнал многие CISC процессоры по сложности. Архитектура MISC строится на стековой вычислительной модели с ограниченным числом команд (примерно 20-30 команд).

    2.6. VLIW-процессоры

    Very long instruction word - сверхдлинное командное слово. Архитектура процессоров с явно выраженным параллелизмом вычислений, заложенным в систему команд процессора. Являются основой для архитектуры EPIC. Ключевым отличием от суперскалярных CISC-процессоров является то, что для них загрузкой исполнительных устройств занимается часть процессора (планировщик), на что отводится достаточно малое время, в то время как загрузкой вычислительных устройств для VLIW-процессора занимается компилятор, на что отводится существенно больше времени (качество загрузки и, соответственно, производительность теоретически должны быть выше). Примером VLIW-процессора является Intel Itanium.


    2.7. Многоядерные процессоры

    Процессоры, предназначенные для работы одной копии операционной системы на нескольких ядрах, представляют собой высокоинтегрированную реализацию мультипроцессорности.

    Первым многоядерным микропроцессором стал POWER4 от IBM, появившийся в 2001 и имевший два ядра.

    В октябре 2004 Sun Microsystems выпустила двухъядерный процессор UltraSPARC IV, который состоял из двух модифицированных ядер UltraSPARC III. В начале 2005 был создан двухъядерный UltraSPARC IV+.

    14 ноября 2005 года Sun выпустила восьмиядерный UltraSPARC T1, каждое ядро которого выполняло 4 потока.

    5 января 2006 года Intel представила первый двухъядерный процессор на одном кристале Core Duo, для мобильной платформы.

    В ноябре 2006 года вышел первый четырёхъядерный процессор Intel Core 2 Quad на ядре Kentsfield, представляющий собой сборку из двух кристаллов Conroe в одном корпусе. Потомком этого процессора стал Intel Core 2 Quad на ядре Yorkfield (45 нм), архитектурно схожем с Kentsfield но имеющем больший объём кэша и рабочие частоты. В октябре 2007 года в продаже появились восьмиядерные UltraSPARC T2, каждое ядро выполняло 8 потоков.

    10 сентября 2007 года были выпущены в продажу нативные (в виде одного кристалла) четырёхъядерные процессоры для серверов AMD Opteron, имевшие в процессе разработки кодовое название AMD Opteron Barcelona. 19 ноября 2007 года вышел в продажу четырёхъядерный процессор для домашних компьютеров AMD Phenom . Эти процессоры реализуют новую микроархитектуру K8L (K10).

    Компания AMD пошла по собственному пути, изготовляя четырёхъядерные процессоры единым кристаллом (в отличие от Intel, первые четырехъядерные процессоры которой представляют собой фактически склейку двух двухъядерных кристаллов). Несмотря на всю прогрессивность подобного подхода первый «четырёхъядерник» фирмы, получивший название AMD Phenom X4, получился не слишком удачным. Его отставание от современных ему процессоров конкурента составляло от 5 до 30 и более процентов в зависимости от модели и конкретных задач.

    К 1-2 кварталу 2009 года обе компании обновили свои линейки четырёхъядерных процессоров. Intel представила семейство Core i7, состоящее из трёх моделей, работающих на разных частотах. Основными изюминками данного процессора является использование трёхканального контроллера памяти (типа DDR-3) и технологии эмулирования восьми ядер (полезно для некоторых специфических задач). Кроме того, благодаря общей оптимизации архитектуры удалось значительно повысить производительность процессора во многих типах задач. Слабой стороной платформы, использующей Core i7, является её чрезмерная стоимость, так как для установки данного процессора необходима дорогая материнская плата на чипсете Intel X58 и трёхканальный набор памяти типа DDR3, также имеющий на данный момент высокую стоимость.
    Компания AMD в свою очередь представила линейку процессоров Phenom II X4. При её разработке компания учла свои ошибки: был увеличен объём кэша (явно недостаточный у первого «Фенома»), изготавливается по 45-нм техпроцессу (это, соответственно, позволило снизить тепловыделение и значительно повысить рабочие частоты). В целом, AMD Phenom II X4 по производительности стоит вровень с процессорами Intel предыдущего поколения (ядро Yorkfield) и весьма значительно отстаёт от Intel Core i7 [источник не указан 675 дней ] . Однако, с выходом процессора AMD Phenom II X6 Black Thuban 1090T ситуация значительно изменилось в пользу AMD. Этот процессор по цене стоит на уровне Core i7 930, однако может потягаться с линейкой процессоров Core i7 в плане производительности. Его полноценных 6 ядер отлично подходят для сложных многопоточных задач.

    На данный момент массово доступны двух-, четырёх- и шести- ядерные процессоры (Intel Core 2 Duo на 65-нм ядре Conroe и 45-нм ядре Wolfdale) и Athlon 64 X2 на базе микроархитектуры K8. Также восьмиядерные процессоры Xeon и Nehalem (Intel) и 12-ядерные Opteron (AMD) .


    2.8. Кэширование

    Кэширование - это использование дополнительной быстродействующей памяти (кэша, англ. cache ) для хранения копий блоков информации из основной (оперативной) памяти, вероятность обращения к которым в ближайшее время велика.

    Различают кэши 1-, 2- и 3-го уровней (обозначаются L1, L2 и L3 - от Level 1, Level 2 и Level 3). Кэш 1-го уровня имеет наименьшую латентность (время доступа), но малый размер, кроме того, кэши первого уровня часто делаются многопортовыми. Так, процессоры AMD K8 умели производить одновременно 64-битные запись и чтение, либо два 64-битных чтения за такт, AMD K8L может производить два 128-битных чтения или записи в любой комбинации. Процессоры Intel Core 2 могут производить 128-битные запись и чтение за такт. Кэш 2-го уровня обычно имеет значительно большую латентность доступа, но его можно сделать значительно больше по размеру. Кэш 3-го уровня самый большой по объёму и довольно медленный, но всё же он гораздо быстрее, чем оперативная память.


    3. Гарвардская архитектура

    Гарвардская архитектура отличается от архитектуры фон Неймана тем, что программный код и данные хранятся в разной памяти. В такой архитектуре невозможны многие методы программирования (например, программа не может во время выполнения менять свой код; невозможно динамически перераспределять память между программным кодом и данными); зато гарвардская архитектура позволяет более эффективно выполнять работу в случае ограниченных ресурсов, поэтому она часто применяется во встраиваемых системах.


    4. Параллельная архитектура

    Архитектура фон Неймана обладает тем недостатком, что она последовательная. Какой бы огромный массив данных ни требовалось обработать, каждый его байт должен будет пройти через центральный процессор, даже если над всеми байтами требуется провести одну и ту же операцию. Этот эффект называется узким горлышком фон Неймана .

    Для преодоления этого недостатка предлагались и предлагаются архитектуры процессоров, которые называются параллельными . Параллельные процессоры используются в суперкомпьютерах.

    Возможными вариантами параллельной архитектуры могут служить (по классификации Флинна):

    • SISD - один поток команд, один поток данных;
    • SIMD - один поток команд, много потоков данных;
    • MISD - много потоков команд, один поток данных;
    • MIMD - много потоков команд, много потоков данных.

    4.1. Цифровые сигнальные процессоры

    Для цифровой обработки сигналов, особенно при ограниченном времени обработки, применяют специализированные высокопроизводительные сигнальные микропроцессоры (DSP) с параллельной архитектурой.

    5. Процесс изготовления

    Первоначально перед разработчиками ставится техническое задание, исходя из которого принимается решение о том, какова будет архитектура будущего процессора, его внутреннее устройство, технология изготовления. Перед различными группами ставится задача разработки соответствующих функциональных блоков процессора, обеспечения их взаимодействия, электромагнитной совместимости. В связи с тем, что процессор фактически является цифровым автоматом, полностью отвечающим принципам булевой алгебры, с помощью специализированного программного обеспечения, работающего на другом компьютере, строится виртуальная модель будущего процессора. На ней проводится тестирование процессора, исполнение элементарных команд, значительных объёмов кода, отрабатывается взаимодействие различных блоков устройства, ведётся оптимизация, ищутся неизбежные при проекте такого уровня ошибки.

    После этого из цифровых базовых матричных кристаллов и микросхем, содержащих элементарные функциональные блоки цифровой электроники, строится физическая модель процессора, на которой проверяются электрические и временные характеристики процессора, тестируется архитектура процессора, продолжается исправление найденных ошибок, уточняются вопросы электромагнитной совместимости (например, при практически рядовой тактовой частоте в 10 ГГц отрезки проводника длиной в 7 мм уже работают как излучающие или принимающие антенны).

    Затем начинается этап совместной работы инженеров-схемотехников и инженеров-технологов, которые с помощью специализированного программного обеспечения преобразуют электрическую схему, содержащую архитектуру процессора, в топологию кристалла. Современные системы автоматического проектирования позволяют, в общем случае, из электрической схемы напрямую получить пакет трафаретов для создания масок. На этом этапе технологи пытаются реализовать технические решения, заложенные схемотехниками, с учётом имеющейся технологии. Этот этап является одним из самых долгих и сложных в разработке и иногда требует компромиссов со стороны схемотехников по отказу от некоторых архитектурных решений. Следует отметить, что ряд производителей заказных микросхем (foundry) предлагает разработчикам (дизайн-центру или fabless) компромиссное решение, при котором на этапе конструирования процессора используются представленные ими стандартизованные в соответствии с имеющейся технологией библиотеки элементов и блоков (Standard cell). Это вводит ряд ограничений на архитектурные решения, зато этап технологической подгонки фактически сводится к игре в конструктор «Лего». В общем случае, изготовленные по индивидуальным проектам микропроцессоры являются более быстрыми по сравнению с процессорами, созданными на основании имеющихся библиотек.

    Следующим, после этапа проектирования, является создание прототипа кристалла микропроцессора. При изготовлении современных сверхбольших интегральных схем используется метод литографии. При этом, на подложку будущего микропроцессора (тонкий круг из монокристаллического кремния, либо сапфира) через специальные маски, содержащие прорези, поочерёдно наносятся слои проводников, изоляторов и полупроводников. Соответствующие вещества испаряются в вакууме и осаждаются сквозь отверстия маски на кристалле процессора. Иногда используется травление, когда агрессивная жидкость разъедает не защищённые маской участки кристалла. Одновременно на подложке формируется порядка сотни процессорных кристаллов. В результате появляется сложная многослойная структура, содержащая от сотен тысяч до миллиардов транзисторов. В зависимости от подключения транзистор работает в микросхеме как транзистор, резистор, диод или конденсатор. Создание этих элементов на микросхеме отдельно, в общем случае, не выгодно. После окончания процедуры литографии подложка распиливается на элементарные кристаллы. К сформированным на них контактным площадкам (из золота) припаиваются тонкие золотые проводники, являющиеся переходниками к контактным площадкам корпуса микросхемы. Далее, в общем случае, крепится теплоотвод кристалла и крышка микросхемы.

    Затем начинается этап тестирования прототипа процессора, когда проверяется его соответствие заданным характеристикам, ищутся оставшиеся незамеченными ошибки. Только после этого микропроцессор запускается в производство. Но даже во время производства идёт постоянная оптимизация процессора, связанная с совершенствованием технологии, новыми конструкторскими решениями, обнаружением ошибок.

    Следует отметить, что параллельно с разработкой универсальных микропроцессоров, разрабатываются наборы периферийных схем ЭВМ, которые будут использоваться с микропроцессором и на основе которых создаются материнские платы. Разработка микропроцессорного набора (чипсета, англ. chipset ) представляет задачу, не менее сложную, чем создание собственно микросхемы микропроцессора.

    В последние несколько лет наметилась тенденция переноса части компонентов чипсета (контроллер памяти, контроллер шины PCI Express) в состав процессора (подробнее см. Система на кристалле).


    5.1. Энергопотребление процессоров

    С технологией изготовления процессора тесно связано и его энергопотребление. Первые процессоры архитектуры x86 потребляли мизерное (по современным меркам) количество энергии, составляющее доли ватта. Увеличение количества транзисторов и повышение тактовой частоты процессоров привело к существенному росту данного параметра. Наиболее производительные модели требуют до 130 и более ватт. Несущественный на первых порах фактор энергопотребления, сейчас оказывает серьезное влияние на эволюцию процессоров:

    • совершенствование технологии производства для уменьшения потребления, поиск новых материалов для снижения токов утечки, понижение напряжения питания ядра процессора;
    • появление сокетов (разъемов для процессоров) с большим числом контактов (более 1000), большинство которых предназначено для питания процессора. Так у процессоров для популярного сокета LGA775 число контактов основного питания составляет 464 штуки (около 60 % от общего количества);
    • изменение компоновки процессоров. Кристалл процессора переместился с внутренней на внешнюю сторону, для лучшего отвода тепла к радиатору системы охлаждения;
    • интеграция в кристалл температурных датчиков и системы защиты от перегрева, снижающей частоту процессора или вообще останавливающей его при недопустимом увеличении температуры;
    • появление в новейших процессорах интеллектуальных систем, динамически меняющих напряжение питания, частоту отдельных блоков и ядер процессора, и отключающих не используемые блоки и ядра;
    • появление энергосберегающих режимов для «засыпания» процессора, при низкой нагрузке.

    6. Производители

    Наиболее популярные процессоры сегодня производят фирмы Intel, AMD и IBM. Большинство процессоров, используемых в настоящее время, являются Intel-совместимыми, то есть имеют набор инструкций и интерфейсы программирования, используемые в процессорах компании Intel.

    Среди процессоров от Intel: 8086, i286, i386, i486, Pentium, Pentium II, Pentium III, Celeron (упрощённый вариант Pentium), Pentium 4, Core 2 Quad, Core i7, Xeon (серия процессоров для серверов), Itanium, Atom (серия процессоров для встраиваемой техники) и др. AMD имеет в своей линейке процессоры архитектуры x86 (аналоги 80386 и 80486, семейство K6 и семейство K7 - Athlon, Duron, Sempron) и x86-64 (Athlon 64, Athlon 64 X2, Phenom, Opteron и др.). Процессоры IBM (POWER6, POWER7, Xenon, PowerPC) используются в суперкомпьютерах, в видеоприставках 7-го поколения, встраиваемой технике; ранее использовались в компьютерах фирмы Apple. По данным компании IDC, по итогам 2009 г.на рынке микропроцессоров для ПК, ноутбуков и серверов доля корпорации Intel составила 79,7 %, доля AMD - 20,1 %.

    Доли по годам:

    Год Intel AMD Другие
    2007 78,9 % 13,1 % 8,0 %
    2008 80,4 % 19,3 % 0,3 %
    2009 79,7 % 20,1 % 0,2 %
    2010 % % %
    2011

    6.1. СССР/Россия

    В советское время одним из самых востребованных из-за его непосредственной простоты и понятности, стал задействованный в учебных целях МПК КР580 - набор микросхем, копия набора микросхем Intel 82xx. Использовался в отечественных компьютерах, таких как Радио 86РК, ЮТ-88, Микроша, и т. д.

    Разработкой микропроцессоров в России занимаются ЗАО «МЦСТ», НИИСИ РАН и ЗАО «ПКК Миландр». Также разработку специализированных микропроцессоров, ориентированных на создание нейронных систем и цифровую обработку сигналов, ведут НТЦ «Модуль» и ГУП НПЦ «ЭЛВИС». Ряд серий микропроцессоров также производит ОАО «Ангстрем».

    НИИСИ разрабатывает процессоры серии Комдив на основе архитектуры MIPS. Техпроцесс - 0.5 мкм, 0.3 мкм; КНИ.

    • КОМДИВ32, 1890ВМ1Т, в том числе в варианте КОМДИВ32-С (5890ВЕ1Т), стойком к воздействию факторов космического пространства (ионизирующему излучению)
    • КОМДИВ64, КОМДИВ64-СМП
    • Арифметический сопроцессор КОМДИВ128

    ЗАО ПКК Миландр разрабатывает 16-разрядный процессор цифровой обработки сигналов и 2-х ядерный процессор:

    • 2011 год, 1967ВЦ1Т - 16-разрядный процессор цифровой обработки сигналов, частота 50 МГц, КМОП 0.35 мкм
    • 2011 год, 1901ВЦ1Т - 2-х ядерный процессор, DSP (100 МГц) и RISC (100 МГц), КМОП 0.18 мкм

    НТЦ Модуль разработал и предлагает микропроцессоры семейства NeuroMatrix:

    • 1998 год, 1879ВМ1 (NM6403) - высокопроизводительный специализированный микропроцессор цифровой обработки сигналов с векторно-конвейерной VLIW/SIMD архитектурой. Технология изготовления - КМОП 500 нм, частота 40 МГц.
    • 2007 год, 1879ВМ2 (NM6404) - модификация 1879ВМ1 с увеличенной до 80 МГц тактовой частотой и 2Мбитным ОЗУ, размещённым на кристалле процессора. Технология изготовления - 250 нм КМОП.
    • 2009 год, 1879ВМ4 (NM6405) - высокопроизводительный процессор цифровой обработки сигналов с векторно-конвейерной VLIW/SIMD архитектурой на базе запатентованного 64-разрядного процессорного ядра NeuroMatrix. Технология изготовления - 250 нм КМОП, тактовая частота 150 МГц.

    Благодаря ряду аппаратных особенностей микропроцессоры этой серии могут быть использованы не только в качестве специализированных процессоров цифровой обработки сигналов, но и для создания нейронных сетей.

    ГУП НПЦ ЭЛВИС разрабатывает и производит микропроцессоры серии «Мультикор» , отличительной особенностью которых является несимметричная многоядерность. При этом физически в одной микросхеме содержатся одно CPU RISC-ядро с архитектурой MIPS32, выполняющее функции центрального процессора системы, и одно или более ядер специализированного процессора-акселератора для цифровой обработки сигналов с плавающей/фиксированной точкой ELcore-xx (ELcore = Elvees’s core), основанного на «гарвардской» архитектуре. CPU-ядро является ведущим в конфигурации микросхемы и выполняет основную программу. Для CPU-ядра обеспечен доступ к ресурсам DSP-ядра, являющегося ведомым по отношению к CPU-ядру. CPU микросхемы поддерживает ядро ОС Linux 2.6.19 или ОС жесткого реального времени QNX 6.3 (Neutrino).

    • 2004 год, 1892ВМ3Т (MC-12) - однокристальная микропроцессорная система с двумя ядрами. Центральный процессор - MIPS32, сигнальный сопроцессор - SISD ядро ELcore-14. Технология изготовления - КМОП 250 нм, частота 80 МГц. Пиковая производительность 240 MFLOPs (32 бита).
    • 2004 год, 1892ВМ2Я (MC-24) - однокристальная микропроцессорная система с двумя ядрами. Центральный процессор - MIPS32, сигнальный сопроцессор - SIMD ядро ELcore-24. Технология изготовления - КМОП 250 нм, частота 80 МГц. Пиковая производительность 480 MFLOPs (32 бита).
    • 2006 год, 1892ВМ5Я (MC-0226) - однокристальная микропроцессорная система с тремя ядрами. Центральный процессор - MIPS32, 2 сигнальных сопроцессора - MIMD ядро ELcore-26. Технология изготовления - КМОП 250 нм, частота 100 МГц. Пиковая производительность 1200 MFLOPs (32 бита).
    • 2008 год, NVCom-01 («Навиком») - однокристальная микропроцессорная система с тремя ядрами. Центральный процессор - MIPS32, 2 сигнальных сопроцессора - MIMD DSP-кластер DELCore-30 (Dual ELVEES Core). Технология изготовления - КМОП 130 нм, частота 300 МГц. Пиковая производительность 3600 MFLOPs (32 бита). Разработан в качестве телекоммуникационного микропроцессора, содержит встроенную функцию 48-канальной ГЛОНАСС/GPS навигации.

    В качестве перспективного проекта НПЦ ЭЛВИС представлен MC-0428 - процессор MultiForce - однокристальная микропроцессорная система с одним центральным процессором и четырьмя специализированными ядрами. Технология изготовления - КМОП 130 нм, частота до 340 МГц. Пиковая производительность ожидается не менее 8000 MFLOPs (32 бита).

    ОАО «Ангстрем» производит (не разрабатывает) следующие серии микропроцессоров:

    • 1839 - 32-разрядный VAX-11/750-совместимый микропроцессорный комплект из 6 микросхем. Технология изготовления - КМОП, тактовая частота 10 МГц.
    • 1836ВМ3 - 16-разрядный LSI-11/23-совместимый микропроцессор. Программно совместим с PDP-11 фирмы DEC. Технология изготовления - КМОП, тактовая частота 16 МГц.
    • 1806ВМ2 - 16-разрядный LSI/2-совместимый микропроцессор. Программно совместим с LCI-11 фирмы DEC.Технология изготовления - КМОП, тактовая частота 5 МГц.
    • Л1876ВМ1 32-разрядный RISC микропроцессор. Технология изготовления - КМОП, тактовая частота 25 МГц.

    Из собственных разработок Ангстрема можно отметить однокристальную 8-разрядную RISC микроЭВМ Тесей.

    Компанией МЦСТ разработано и внедрено в производство семейство универсальных SPARC-совместимых RISC-микропроцессоров с проектными нормами 130 и 350 нм и частотами от 150 до 500 МГц (подробнее см. статью о серии - МЦСТ-R и о вычислительных комплексах на их основе Эльбрус-90микро). Также разработан VLIW-процессор Эльбрус с оригинальной архитектурой ELBRUS, используется в комплексах Эльбрус-3М1). Основные потребители российских микропроцессоров - предприятия ВПК.


    6.2. Китай

    • Loongson

    6.3. Другие национальные проекты

    7. Определение модели

    В Linux определить модель и параметры установленного процессора, не открывая корпуса, можно прочитав файл /proc/cpuinfo:

    # cat /proc/cpuinfo processor: 0 vendor_id: AuthenticAMD cpu family: 15 model: 67 model name: AMD Athlon(tm) 64 X2 Dual Core Processor 5600+ stepping: 3 cpu MHz: 1000.000 cache size: 1024 KB physical id: 0 siblings: 2 core id: 0 cpu cores: 2 apicid: 0 initial apicid: 0 fpu: yes fpu_exception: yes cpuid level: 1 wp: yes flags: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt rdtscp lm 3dnowext 3dnow rep_good pni cx16 lahf_lm cmp_legacy svm extapic cr8_legacy bogomips: 2010.87 TLB size: 1024 4K pages clflush size: 64 cache_alignment: 64 address sizes: 40 bits physical, 48 bits virtual power management: ts fid vid ttp tm stc processor: 1 vendor_id: AuthenticAMD cpu family: 15 model: 67 model name: AMD Athlon(tm) 64 X2 Dual Core Processor 5600+ stepping: 3 cpu MHz: 1000.000 cache size: 1024 KB physical id: 0 siblings: 2 core id: 1 cpu cores: 2 apicid: 1 initial apicid: 1 fpu: yes fpu_exception: yes cpuid level: 1 wp: yes flags: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt rdtscp lm 3dnowext 3dnow rep_good pni cx16 lahf_lm cmp_legacy svm extapic cr8_legacy bogomips: 2010.87 TLB size: 1024 4K pages clflush size: 64 cache_alignment: 64 address sizes: 40 bits physical, 48 bits virtual power management: ts fid vid ttp tm stc #
    .

    Реферат по информатике

    “Процессор”

    Работу выполнил

    Гулаков Филипп

    Работу проверила

    Куянцева Л.М.

    п. Дружба 2007г


    1. Содержание ___________ 1
    2. Введение ____________2
    3. Процессор __________3
    4. Тактовая частота, Системная шина, Коэффициент умножения _________4 - 5
    5. Тип ядра и технологии производства_________6
    6. Отличия процессоров Pentium и Celeron, Athlon и Duron __________ 7
    7. Процессоры фирмы AMD их недостатки____________8

    Введение

    Я в этом реферате расскажу о том, что такое микро процессор, историю создания микро процессора, для чего он нужен, чем процессор одной фирмы отличается от другой.


    Процессор

    Микропроцессор - центральное устройство (или комплекс устройств) ЭВМ (или вычислительной системы), которое выполняет арифметические и логические операции, заданные программой преобразования информации, управляет вычислительным процессом и координирует работу устройств системы (запоминающих, сортировальных, ввода - вывода, подготовки данных и др.). Первый микропроцессор Intel 4004 был создан в 1971году командой во главе с талантливым изобретателем, доктором Тедом Хопфом. Сегодня его имя стоит в ряду с именами величайших изобретателей всех времен и народов…Изначально процессор 4004 предназначался для… микрокалькуляторов и был изготовлен по заказу одной японской фирмы. К счастью, фирма эта обанкротилась, и в результате разработка перешла в собственность Intel. C этого момента и началась эпоха персональных компьютеров. Сегодняшние процессоры от Intel быстрее своего прародителя в более чем в десять тысяч раз! А любой домашний компьютер обладает мощностью и «сообразительностью» во много раз большей, чем компьютер, управлявший полётом космического корабля «Аполлон» к Луне. На первый взгляд, процессор – просто выращенный по специальной технологии кристалл кремния (не зря его ещё называют «камень»). Однако камешек этот содержит в себе множество отдельных элементов – транзисторов, которые в совокупности и наделяют компьютер способностью «думать». Точнее, вычислять, производя определённые математические операции с числами, в которые преображается любая поступающая в компьютер информация. Таких транзисторов в любом микропроцессоре многие миллионы. Сегодняшний процессор – это не просто скопище транзисторов, а целая система множества важных устройств. На любом процессорном кристалле находятся:

    Функции процессора:

    Обработка данных по заданной программе путем выполнения арифметических и логических операций;

    Программное управление работой устройств компьютера

    Устройство управления (УУ). Осуществляет координацию работы всех остальных устройств, выполняет функции управления устройствами, управляет вычислениями в компьютере.

    Арифметико-логическое устройство (АЛУ). Так называется устройство для целочисленных операций. Арифметические операции, такие как сложение, умножение и деление, а также логические операции (OR, AND, ASL, ROL и др.) обрабатываются при помощи АЛУ. Эти операции составляют подавляющее большинство программного кода в большинстве программ. Все операции в АЛУ производятся в регистрах - специально отведенных ячейках АЛУ. В процессоре может быть несколько АЛУ. Каждое способно исполнять арифметические или логические операции независимо от других, что позволяет выполнять несколько операций одновременно. Арифметико-логическое устройство выполняет арифметические и логические действия. Логические операции делятся на две простые операции: "Да" и "Нет" ("1" и "0"). Обычно эти два устройства выделяются чисто условно, конструктивно они не разделены.

    AGU (Address Generation Unit) - устройство генерации адресов. Это устройство не менее важное, чем АЛУ, т.к. оно отвечает за корректную адресацию при загрузке или сохранении данных. Абсолютная адресация в программах используется только в редких исключениях. Как только берутся массивы данных, в программном коде используется косвенная адресация, заставляющая работать AGU.

    Математический сопроцессор (FPU). Процессор может содержать несколько математических сопроцессоров. Каждый из них способен выполнять, по меньшей мере, одну операцию с плавающей точкой независимо от того, что делают другие АЛУ. Метод конвейерной обработки данных позволяет одному математическому сопроцессору выполнять несколько операций одновременно. Сопроцессор поддерживает высокоточные вычисления как целочисленные, так и с плавающей точкой и, кроме того, содержит набор полезных констант, ускоряющих вычисления. Сопроцессор работает параллельно с центральным процессором, обеспечивая, таким образом, высокую производительность. Система выполняет команды сопроцессора в том порядке, в котором они появляются в потоке. Математический сопроцессор персонального компьютера IBM PC позволяет ему выполнять скоростные арифметические и логарифмические операции, а также тригонометрические функции с высокой точностью.

    Дешифратор инструкций (команд). Анализирует инструкции в целях выделения операндов и адресов, по которым размещаются результаты. Затем следует сообщение другому независимому устройству о том, что необходимо сделать для выполнения инструкции. Дешифратор допускает выполнение нескольких инструкций одновременно для загрузки всех исполняющих устройств.

    Кэш-память. Особая высокоскоростная память процессора. Кэш используется в качестве буфера для ускорения обмена данными между процессором и оперативной памятью, а также для хранения копий инструкций и данных, которые недавно использовались процессором. Значения из кэш-памяти извлекаются напрямую, без обращения к основной памяти. При изучении особенностей работы программ было обнаружено, что они обращаются к тем или иным областям памяти с различной частотой, а именно: ячейки памяти, к которым программа обращалась недавно, скорее всего, будут использованы вновь. Предположим, что микропроцессор способен хранить копии этих инструкций в своей локальной памяти. В этом случае процессор сможет каждый раз использовать копию этих инструкций на протяжении всего цикла. Доступ к памяти понадобиться в самом начале. Для хранения этих инструкций необходим совсем небольшой объём памяти. Если инструкции в процессор поступают достаточно быстро, то микропроцессор не будет тратить время на ожидание. Таким образом экономиться время на выполнение инструкций. Но для самых быстродействующих микропроцессоров этого недостаточно. Решение данной проблемы заключается в улучшении организации памяти. Память внутри микропроцессора может работать со скоростью самого процессора

    Кэш первого уровня (L1 cache). Кэш-память, находящаяся внутри процессора. Она быстрее всех остальных типов памяти, но меньше по объёму. Хранит совсем недавно использованную информацию, которая может быть использована при выполнении коротких программных циклов.

    Кэш второго уровня (L2 cache). Также находится внутри процессора. Информация, хранящаяся в ней, используется реже, чем информация, хранящаяся в кэш-памяти первого уровня, но зато по объёму памяти он больше. Также в настоящее время в процессорах используется кэш третьего уровня.

    Основная память. Намного больше по объёму, чем кэш-память, и значительно менее быстродействующая. Многоуровневая кэш-память позволяет снизить требования наиболее производительных микропроцессоров к быстродействию основной динамической памяти. Так, если сократить время доступа к основной памяти на 30%, то производительность хорошо сконструированной кэш-памяти повыситься только на 10-15%. Кэш-память, как известно, может достаточно сильно влиять на производительность процессора в зависимости от типа исполняемых операций, однако ее увеличение вовсе не обязательно принесет увеличение общей производительности работы процессора. Все зависит от того, насколько приложение оптимизировано под данную структуру и использует кэш, а также от того, помещаются ли различные сегменты программы в кэш целиком или кусками.

    Кэш-память не только повышает быстродействие микропроцессора при операции чтения из памяти, но в ней также могут храниться значения, записываемые процессором в основную память; записать эти значения можно будет позже, когда основная память будет не занята. Такая кэш-память называется кэшем с обратной записью (write back cache). Её возможности и принципы работы заметно отличаются от характеристик кэша со сквозной записью (write through cache), который участвует только в операции чтения из памяти.

    • Шина - это канал пересылки данных, используемый совместно различными блоками системы. Шина может представлять собой набор проводящих линий в печатной плате, провода, припаянные к выводам разъемов, в которые вставляются печатные платы, либо плоский кабель. Информация передается по шине в виде групп битов. В состав шины для каждого бита слова может быть предусмотрена отдельная линия (параллельная шина), или все биты слова могут последовательно во времени использовать одну линию (последовательная шина). К шине может быть подключено много приемных устройств - получателей. Обычно данные на шине предназначаются только для одного из них. Сочетание управляющих и адресных сигналов, определяет для кого именно. Управляющая логика возбуждает специальные стробирующие сигналы, чтобы указать получателю, когда ему следует принимать данные. Получатели и отправители могут быть однонаправленными (т.е. осуществлять только либо передачу, либо прием) и двунаправленными (осуществлять и то и другое). Однако самая быстрая процессорная шина не сильно поможет, если память не сможет доставлять данные с соответствующей скоростью.

    Типы шин:

    1. Шина данных. Служит для пересылки данных между процессором и памятью или процессором и устройствами ввода-вывода. Эти данные могут представлять собой как команды микропроцессора, так и информацию, которую он посылает в порты ввода-вывода или принимает оттуда.
    2. Шина адресов. Используется ЦП для выбора требуемой ячейки памяти или устройства ввода-вывода путем установки на шине конкретного адреса, соответствующего одной из ячеек памяти или одного из элементов ввода-вывода, входящих в систему.
    3. Шина управления. По ней передаются управляющие сигналы, предназначенные памяти и устройствам ввода-вывода. Эти сигналы указывают направление передачи данных (в процессор или из него).

    BTB (Branch Target Buffer) - буфер целей ветвления. В этой таблице находятся все адреса, куда будет или может быть сделан переход. Процессоры Athlon еще используют таблицу истории ветвлений (BHT - Branch History Table), которая содержит адреса, по которым уже осуществлялись ветвления.



    Рекомендуем почитать

    Наверх