Понятие процессора. Энциклопедия процессорных терминов

Устройство и принцип работы процессора

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

1. Введение.

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

Большинство современных процессоров состоит из:

  • одного или нескольких ядер, осуществляющих выполнение всех инструкций;
  • нескольких уровней КЭШ-памяти (обычно, 2 или три уровня), ускоряющих взаимодействие процессора с ОЗУ;
  • контроллера ОЗУ;
  • контроллера системной шины (DMI, QPI, HT и т.д.);

И характеризуется следующими параметрами:

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

Упрощенная структурная схема современного многоядерного процессора представлена на рисунке 1.

Начнем обзор устройства процессора с его основной части – ядра.

2. Ядро процессора.

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

На рисунке 1 приведена структурная схема устройства ядра процессора. Как видно на рисунке, каждое ядро процессора состоит из нескольких функциональных блоков:

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

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

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

Блоки декодирования , как понятно из названия, – это блоки, которые занимаются декодированием инструкций, т.е. определяют, что надо сделать процессору, и какие дополнительные данные нужны для выполнения инструкции. Задача эта для большинства современных коммерческих процессоров, построенных на базе концепции CISC, – очень сложная. Дело в том, что длина инструкций и количество операндов – нефиксированные, и это сильно усложняет жизнь разработчикам процессоров и делает процесс декодирования нетривиальной задачей.

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

В современных процессорах, обычно, бывает 2-4 блока декодирования инструкций, например, в процессорах Intel Core 2 каждое ядро содержит по два таких блока.

Блоки выборки данных осуществляют выборку данных из КЭШ-памяти или ОЗУ, необходимых для выполнения текущих инструкций. Обычно, каждое процессорное ядро содержит несколько блоков выборки данных. Например, в процессорах Intel Core используется по два блока выборки данных для каждого ядра.

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

Блоки выполнения инструкций включают в себя несколько разнотипных блоков:

ALU – арифметическое логическое устройство;

FPU – устройство по выполнению операций с плавающей точкой;

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

MMX (Multimedia Extensions) – набор инструкций, разработанный компанией Intel, для ускорения кодирования и декодирования потоковых аудио и видео-данных;

SSE (Streaming SIMD Extensions) – набор инструкций, разработанный компанией Intel, для выполнения одной и той же последовательности операций над множеством данных с распараллеливанием вычислительного процесса. Наборы команд постоянно совершенствуются, и на данный момент имеются ревизии: SSE, SSE2, SSE3, SSSE3, SSE4;

ATA (Application Targeted Accelerator) – набор инструкций, разработанный компанией Intel, для ускорения работы специализированного программного обеспечения и снижения энергопотребления при работе с такими программами. Эти инструкции могут использоваться, например, при расчете контрольных сумм или поиска данных;

3DNow – набор инструкций, разработанный компанией AMD, для расширения возможностей набора инструкций MMX;

AES (Advanced Encryption Standard) – набор инструкций, разработанный компанией Intel, для ускорения работы приложений, использующих шифрование данных по одноименному алгоритму.

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

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

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

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

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

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

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

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

2.1 Принцип работы ядра процессора.

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

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

2. Блок выборки инструкций из счетчика команд считывает адрес команды, предназначенной для выполнения. По этому адресу из КЭШ-памяти или ОЗУ считывается команда. Полученные данные передаются в блок декодирования;

3. Блок декодирования команд расшифровывает команду, при необходимости используя для интерпретации команды записанный в ПЗУ микрокод. Если это команда перехода, то в счетчик команд записывается адрес перехода и управление передается в блок выборки инструкций (пункт 1), иначе счетчик команд увеличивается на размер команды (для процессора с длинной команды 32 бита – на 4) и передает управление в блок выборки данных;

4. Блок выборки данных считывает из КЭШ-памяти или ОЗУ требуемые для выполнения команды данные и передает управление планировщику;

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

6. Блоки выполнения инструкций выполняют требуемые командой действия и передают управление блоку сохранения результатов;

7. При необходимости сохранения результатов в ОЗУ, блок сохранения результатов выполняет требуемые для этого действия и передает управление блоку выборки инструкций (пункт 1).

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

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

2.2. Способы повышения производительности ядра процессора.

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

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

Рассмотрим основные способы повышения производительности процессоров.

2.2.1. Конвейеризация.

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

Рассмотрим пример, в котором процессор будет выполнять программу, состоящую из пяти инструкций (К1–К5), без использования принципа конвейеризации. Для упрощения примера примем, что каждый блок ядра процессора выполняет инструкцию за 1 такт.

Такты Выборка инструкции Декодирование инструкции Выборка данных Выполнение инструкции Сохранение результата
1 K1 - - - -
2 - K1 - - -
3 - - K1 - -
4 - - - K1 -
5 - - - - K1
6 K2 - - - -
7 - K2 - - -
8 - - K2 - -
9 - - - K2 -
10 - - - - K2
11 K3 - - - -
12 - K3 - - -
13 - - K3 - -
14 - - - K3 -
15 - - - - K3
16 K4 - - - -
17 - K4 - - -
18 - - K4 - -
19 - - - K4 -
20 - - - - K4
21 K5 - - - -
22 - K5 - - -
23 - - K5 - -
24 - - - K5 -
25 - - - - K5

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

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

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

Такты Выборка инструкции Декодирование инструкции Выборка данных Выполнение инструкции Сохранение результата
1 K1 - - - -
2 K2 K1 - - -
3 K3 K2 K1 - -
4 K4 K3 K2 K1 -
5 K5 K4 K3 K2 K1
6 - K5 K4 K3 K2
7 - - K5 K4 K3
8 - - - K5 K4
9 - - - - K5

Та же программа была выполнена за 9 тактов, что почти 2.8 раза быстрее, чем при работе без конвейера. Как видно из таблицы максимальная загрузка процессора была получена на 5 такте. В этот момент использовались все блоки ядра процессора. А с первого по четвертый такт, включительно, происходило наполнение конвейера.

Так как процессор выполняет команды непрерывно, то, в идеале, он мог бы быть занят на 100%, при этом, чем длиннее был бы конвейер, тем больший выигрыш в производительности был бы получен. Но на практике это не так.

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

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

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

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

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

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

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

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

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

2.2.2. Суперскалярность.

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

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

Однако параллельное выполнение инструкций возможно, только если эти инструкции – независимые.

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

2.2.3. Параллельная обработка данных.

Бесконечно повышать производительность процессоров, за счет увеличения тактовой частоты, невозможно. Увеличение тактовой частоты влечет за собой увеличение тепловыделения, уменьшение срока службы и надежности работы процессоров, да и задержки от обращения к памяти сильно снижают эффект от увеличения тактовой частоты. Действительно, сейчас практически не встретишь процессоры с тактовой частотой выше 3.8 ГГц.

Связанные с увеличением тактовой частоты проблемы заставляют разработчиков искать иные пути повышения производительности процессоров. Один из наиболее популярных способов – параллельные вычисления.

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

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

Но это дает выигрыш в производительности до тех пор, пока не появляется программа, требующая ресурсов больше, чем может дать одно ядро. Хорошо, если она поддерживает распределение нагрузки между несколькими ядрами. Но на данный момент общедоступных программ, способных распределить нагрузку между 12 ядрам, да еще в режиме Hyper-Threading, можно «сосчитать на пальцах одной руки». Я, конечно, утрирую, существуют программы, оптимизированные для многопоточных вычислений, но большинству простых пользователей они не нужны. А вот наиболее популярные программы, а тем более игры, пока что «плохо» адаптируются к многоядерным процессорам, особенно, если количество ядер больше четырех.

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

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

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

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

2.2.4. Технология Hyper-Threading.

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

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

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

Большинство программ не могут полностью нагрузить процессор, так как некоторые, в основном, используют несложные целочисленные вычисления, практически не задействуя блок FPU. Другие же программы, например 3D-студия, требуют массу расчетов с использованием чисел с плавающей точкой, но при этом освобождая некоторые другие исполнительные блоки и так далее.

К тому же практически во всех программах – много условных переходов и зависимых переменных. В результате, использование технологии Hyper-threading может дать существенный прирост производительности, способствуя максимальной загрузке конвейера ядра.

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

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

Есть еще одна серьезная проблема технологии Hyper-Threading – это конфликты, возникающие, когда инструкции разных потоков нуждаются в однотипных блоках. Может сложиться ситуация, когда параллельно будут работать два схожих потока, часто использующие одни и те же блоки. В таком случае прирост производительности будет минимален.

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

2.2.5. Технология Turbo Boost.

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

Частота процессора рассчитывается, как частота системной шины, умноженная на некий коэффициент, называемый множителем. Например, процессор Core i7-970 работает с системной шиной DMI на базовой частоте – 133 МГц, и имеет множитель – 24. Таким образом, тактовая частота ядра процессора составит: 133 Мгц*24= 3192 Мгц.

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

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

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

2.2.6. Эффективность выполнения команд.

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

  • на классические процессоры CISC;
  • на процессоры RISC с сокращенным набором команд;
  • на процессоры MISC c минимальным набором команд;
  • на процессоры VLIW с набором сверхдлинных команд.

CISC (Complex instruction set computer) – это процессоры со сложным набором команд. Архитектура CISC характеризуется:

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

Исторически, процессоры с архитектурой CISC появились первыми, и их появление было обусловлено общей тенденцией разработки первых ЭВМ. ЭВМ стремились сделать более функциональными и в то же время простыми для программирования. Естественно, для программистов вначале было удобнее иметь широкий набор команд, чем реализовывать каждую функцию целой отдельной подпрограммой. В результате, объем программ сильно сокращался, а вместе с ним и трудоемкость программирования.

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

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

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

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

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

Поэтому был принят компромисс, и CISC процессоры, начиная с Intel486DX, стали производить с использованием RISC-ядра. Т.е., непосредственно перед исполнением, сложные CISC-инструкции преобразуют в более простой набор внутренних инструкций RISC. Для этого используют записанные в размещенном внутри ядра процессора ПЗУ наборы микрокоманд – серии простых инструкций, в совокупности выполняющих те же действия, что и одна сложная инструкция.

RISC (Reduced Instruction Set Computer) – процессоры с сокращенным набором инструкций.

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

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

Процессоры, построенные по архитектуре RISC, обладают следующими основными особенностями:

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

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

Однако, несмотря на явное преимущество RISC, процессоры не получили столь серьезного распространения, как CISC. Правда, связано это в основном не с тем, что они по каким-то параметрам могли быть хуже CISC-процессоров. Они не хуже. Дело в том, что СISC-процессоры появились первыми, а программное обеспечение для CISC -процессоров – несовместимо с RISC-процессорами.

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

MISC (Minimal Instruction Set Computer) – дальнейшее развитие архитектуры RISС, основанное на еще большем упрощении инструкций и уменьшении их количества. Так, в среднем, в MISC-процессорах используется 20-30 простых инструкций. Такой подход позволил еще больше упростить устройство процессора, снизить энергопотребление и максимально использовать возможности параллельной обработки данных.

VLIW (Very long instruction word) – архитектура процессоров, использующая инструкции большой длины, содержащие сразу несколько операций, объединенных компилятором для параллельной обработки. В некоторых реализациях процессоров длина инструкций может достигать 128 или даже 256 бит.

Архитектура VLIW является дальнейшим усовершенствованием архитектуры RISC и MISC с углубленным параллелизмом.

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

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

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

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

Первые VLIW-процессоры появились в конце 1980-х годов и были разработаны компанией Cydrome. Так же к процессорам с этой архитектурой относятся процессоры TriMedia фирмы Philips, семейство DSP C6000 фирмы Texas Instruments, Эльбру?с 2000 – процессор российского производства, разработанный компанией МЦСТ при участии студентов МФТИ и др. Поддержка длинных инструкций с явным параллелизмом есть и в процессорах семейства Itanium.

2.3. Способы снижения энергопотребления процессора.

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

Нашу жизнь уже нельзя представить комфортной без использования ноутбуков, планшетных компьютеров и смартфонов. Однако единственное, что омрачает эту тенденцию, – это время автономной работы подобных устройств. Так ноутбуки, в среднем, могут автономно работать 3-5 часов, планшеты – чуть больше, смартфоны уже могут протянуть при полной нагрузке почти сутки и то не все. Но все это крайне мало для комфортной работы с ними.

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

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

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

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

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

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

Существуют и не столь кардинальные пути решения этой проблемы.

Например, технология EIST (Enhanced Intel SpeedStep Technology) позволяет динамически изменять энергопотребление процессора, за счет изменения тактовой частоты процессора и напряжения. Изменение тактовой частоты происходит, за счет уменьшения или увеличения коэффициента умножения.

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

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

Аналогичная технология для уменьшения энергопотребления, основанная на динамическом изменении напряжения и тактовой частоты, в зависимости от нагрузки на процессор, используется и компанией AMD, называется она - Cool’n’Quiet .

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

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

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

3. КЭШ-память.

Несмотря на все технологии и уловки разработчиков, производительность процессора все-таки напрямую зависит от скорости выборки команд и данных из памяти. И даже, если процессор имеет сбалансированный и продуманный конвейер, использует технологию Hyper-Threading и так далее, но не обеспечивает должную скорость выборки данных и команд из памяти, то, в результате, общая производительность ЭВМ не оправдает ваших ожиданий.

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

КЭШ-память строится на базе дорогой SRAM-памяти (static random access memory), обеспечивающей доступ к ячейкам памяти гораздо более быстрый, чем к ячейкам DRAM-памяти (dynamic random access memory), на базе которой построена оперативная память. К тому же SRAM-память не требует постоянной регенерации, что так же увеличивает ее быстродействие. Однако более подробно устройство SRAM, DRAM и других типов памяти рассмотрим в следующей статье, а сейчас более подробно рассмотрим принцип работы и устройства КЭШ-памяти.

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

КЭШ-память более высокого уровня всегда больше по размеру и медленнее КЭШ-памяти более низкого уровня.

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

КЭШ-память второго уровня – более медленная (время доступа, в среднем, 8-20 тактов процессора), но зато имеет объем несколько мегабайт.

КЭШ-память третьего уровня – еще медленнее, но имеет сравнительно большой объем. Встречаются процессоры с КЭШ-памятью третьего уровня больше 24 Мб.

В многоядерных процессорах, обычно, последний уровень КЭШ-памяти делают общим для всех ядер. Причем, в зависимости от нагрузки на ядра, может динамически изменяться отведенный ядру объем КЭШ-памяти последнего уровня. Если ядро имеет высокую нагрузку, то ему выделяется больше КЭШ-памяти, за счет уменьшения объема КЭШ-памяти для менее нагруженных ядер. Не все процессоры обладают такой возможностью, а только поддерживающие технологию Smart Cache (например, Intel Smart Cache или AMD Balanced Smart Cache).

КЭШ-память более низкого уровня – обычно, индивидуальная для каждого ядра процессора.

Мы рассмотрели, как устроена КЭШ-память, давайте теперь разберемся, как она работает.

Процессор считывает из основной оперативной памяти данные и заносит их в КЭШ-память всех уровней, замещая данные, к которым давно и наиболее редко обращались.

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

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

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

Но, несмотря на такие трудности в работе с КЭШ-памятью, ее применение дает явный прирост скорости работы без существенного увеличения стоимости ЭВМ. И пока не будет придумана оперативная память, которая сможет по скорости соперничать с SRAM-памятью, а по цене – с DRAM-памятью, будет применяться иерархическая организация оперативной памяти с использованием нескольких уровней КЭШ-памяти.

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


Классификация и типы процессоров. Характеристики ЦП

Центральный процессор.

Этапы развития центральных процессоров для персональных компьютеров. Современ­ная технология и архитектурные решения. RISC и CISC технологии. Основные параметры процессоров. 32-х и 64-х разрядные процессоры. 32-х разрядные процессоры основных производителей: Intel, AMD, VIA. Сравнительный анализ характеристик современных процессоров. Основные тенденции и перспективы развития.

Студент должен знать:

  • основные характеристики процессоров;
  • об этапах развития процессоров;
  • типы процессоров;
  • основные современные модели процессоров;

Студент должен уметь:

  • определять основные характеристики процессора с помощью тестовых программ;

Цели занятия:

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

Ход занятия :

Теоретическая часть.

“Мозгом” персонального компьютера является микропроцессор, или центральный процессор - CPU (Central Processing Unit). Микропроцессор выполняет вычисления и обработку данных (за исключением некоторых математических операций, осуществляемых в компьютерах, имеющих сопроцессор) и, как правило, является самой дорогостоящей микросхемой компьютера. Во всех PC-совместимых компьютерах используются процессоры, поддерживающие семейство микросхем Intel, но выпускаются и проектируются они не только самой Intel, но и компаниями AMD, Cyrix, IDT и Rise Technologies.

В настоящее время Intel доминирует на рынке процессоров, но так было далеко не всегда. Компания Intel прочно ассоциируется с изобретением первого процессора и его появлением на рынке. Звездный час компаний Intel и Microsoft наступил в 1981 году, когда IBM выпустила первый персональный компьютер IBM PC с процессором Intel 8088 (4,77 МГц) и операционной системой Microsoft Disk Operating System (DOS) версии 1.0. С этого момента практически во все персональные компьютеры устанавливаются процессоры Intel и операционные системы Microsoft.

  • Параметры процессоров

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

Процессоры можно классифицировать по двум основным параметрам: разрядности и быстродействию. Быстродействие процессора - довольно простой параметр. Оно измеряется в мегагерцах (МГц); 1 МГц равен миллиону тактов в секунду. Чем выше быстродействие, тем лучше (тем быстрее процессор). Разрядность процессора - параметр более сложный. В процессор входит три важных устройства, основной характеристикой которых является разрядность:

  • шина ввода и вывода данных;
  • внутренние регистры;
  • шина адреса памяти.

Процессоры с тактовой частотой менее 16 МГц не имеют встроенной кэш-памяти. В системах до 486-го процессора быстрая кэш-память устанавливалась на системную плату. Начиная с процессоров 486, кэш-память первого уровня устанавливалась непосредственно в корпусе и работала на частоте процессора. А кэш-память на системной плате стали называть кэш-памятью второго уровня. Она работала уже на частотах, поддерживаемых системной платой.

В процессорах Pentium Pro и Pentium II кэш-память второго уровня устанавливается в корпусе и физически представляет отдельную микросхему. Чаще всего такая память работает на половинной (процессоры Pentium II/III и AMD Athlon) или даже меньшей (две пятых или треть) частоте ядра процессора.

В процессорах Pentium Pro, Pentium II/III Xeon, современных моделях Pentium III, Celeron, K6-3, Athlon (модель 4), Duron кэш-память работает на частоте ядра. Причина того, что кэш-память второго уровня работала на меньшей по сравнению с ядром процессора частоте, довольно проста: существующие микросхемы кэш-памяти не удовлетворяли условиям рынка. Компанией Intel была создана микросхема быстродействующей кэш-памяти для процессора Xeon, себестоимость которой оказалась чрезвычайно высокой. Однако появление новых технологий производства процессоров позволило использовать кэш-память, работающую на частоте ядра, и в дешевых процессорах Celeron второго поколения. Эта конструкция была заимствована вторым поколением Intel Pentium III, а также процессорами K6-3, Athlon и Duron компании AMD. Подобная архитектура, используемая в настоящее время практически во всех разработках Intel и AMD, представляет собой единственный более или менее рентабельный способ применения быстродействующей кэш-памяти второго уровня.

Быстродействие процессора

Быстродействие - это одна из характеристик процессора, которую зачастую толкуют по-разному. В этом разделе вы узнаете о быстродействии процессоров вообще и процессоров Intel в частности.

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

Рис. 1. Графическое представление понятия тактовая частота

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

Различается и время, затрачиваемое на выполнение команд.

8086 и 8088 . В этих процессорах на выполнение одной команды уходит примерно 12 тактов.

286 и 386 . Эти процессоры уменьшили время на выполнение команд примерно до 4,5 тактов.

Процессор 486 и большая часть Intel-совместимых процессоров четвертого поколения, таких, как AMD 5×86, уменьшили этот параметр до 2 тактов.

Серия Pentium, K6. Архитектура процессоров Pentium и других Intel-совместимых процессоров пятого поколения, созданных в AMD и Cyrix, включающая в себя двойные конвейеры команд и прочие усовершенствования, обеспечила выполнение одной или двух команд за один такт.

Pentium Pro, Pentium II/III/Celeron и Athlon/Duron. Процессоры класса P6, а также другие процессоры шестого поколения, созданные компаниями AMD и Cyrix, позволяют выполнить минимум три команды за один такт.

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

Процессор 486 обладает более высоким быстродействием по сравнению с 386-м, так как на выполнение команды ему требуется в среднем в два раза меньше тактов, чем 386-му. А процессору Pentium - в два раза меньше тактов, чем 486-му. Таким образом, процессор 486 с тактовой частотой 133 МГц (типа AMD 5×86-133) работает даже медленнее, чем Pentium с тактовой частотой 75 МГц! Это происходит потому, что при одной и той же частоте Pentium выполняет вдвое больше команд, чем процессор 486. Pentium II и Pentium III - приблизительно на 50% быстрее процессора Pentium, работающего на той же частоте, потому что они могут выполнять значительно больше команд в течение того же количества циклов.

Сравнивая относительную эффективность процессоров, можно увидеть, что производительность Pentium III, работающего на тактовой частоте 1 000 МГц, теоретически равна производительности Pentium, работающего на тактовой частоте 1 500 МГц, которая, в свою очередь, теоретически равна производительности процессора 486, работающего на тактовой частоте 3 000 МГц, а она, в свою очередь, теоретически равна производительности процессоров 386 или 286, работающих на тактовой частоте 6 000 МГц, или же 8088-го, работающего на тактовой частоте 12 000 МГц. Если учесть, что первоначальный PC с процессором 8088 работал на тактовой частоте, равной всего лишь 4,77 МГц, то сегодняшние компьютеры более чем в 1,5 тыс. раз быстрее по сравнению с ним. Поэтому нельзя сравнивать производительность компьютеров, основываясь только на тактовой частоте; необходимо принимать во внимание то, что на эффективность системы влияют и другие факторы.

Оценивать эффективность центрального процессора довольно сложно. Центральные процессоры с различными внутренними архитектурами выполняют команды по-разному: одни и те же команды в разных процессорах могут выполняться либо быстрее, либо медленнее. Чтобы найти удовлетворительную меру для сравнения центральных процессоров с различной архитектурой, работающих на разных тактовых частотах, Intel изобрела специфический ряд эталонных тестов, которые можно выполнить на микросхемах Intel, чтобы измерить относительную эффективность процессоров. Эта система тестов недавно была модифицирована для того, чтобы можно было измерять эффективность 32-разрядных процессоров; она называется индексом (или показателем) iCOMP 2.0 (intel Comparative Microprocessor Performance - сравнительная эффективность микропроцессора Intel). В настоящее время используется третья версия этого индекса - iCOMP 3.0.

Тактовая частота процессора

Почти все современные процессоры, начиная с 486DX2, работают на тактовой частоте, которая равна произведению некоторого множителя на тактовую частоту системной платы. Например, процессор Celeron 600 работает на тактовой частоте, в девять раз превышающей тактовую частоту системной платы (66 МГц), а Pentium III 1000 - на тактовой частоте, в семь с половиной раз превышающей тактовую частоту системной платы (133 МГц). Большинство системных плат работали на тактовой частоте 66 МГц; именно такую частоту поддерживали все процессоры Intel до начала 1998 года, и только недавно эта компания разработала процессоры и наборы микросхем системнойлогики, которые могут работать на системных платах, рассчитанных на 100 МГц. Некоторые процессоры компании Cyrix разработаны для системных плат, рассчитанных на 75 МГц, и многие системные платы, предназначенные для Pentium, также могут работать на этой частоте. Обычно тактовую частоту системной платы и множитель можно установить с помощью перемычек или других процедур конфигурирования системной платы (например, с помощью выбора соответствующих значений в программе установки параметров BIOS).

В конце 1999 года появились наборы микросхем и системные платы с тактовой частотой 133 МГц, поддерживающие все современные версии процессора Pentium III. В это же время компания AMD выпустила системные платы Athlon и наборы микросхем с тактовой частотой 100 МГц, использующие технологию удвоенной передачи данных. Это позволило увеличить скорость передачи данных между процессором Athlon и основным набором микросхем до 200 МГц.

К 2001 году быстродействие шин процессоров AMD Athlon и Intel Itanium увеличилось до 266 МГц, а шины процессора Pentium 4 - до 400 МГц.

Иногда возникает вопрос, почему в мощном процессоре Itanium используется более медленная по сравнению с Pentium 4 шина центрального процессора. Вопрос этот крайне актуален! Ответ, скорее всего, заключается в том, что эти компоненты были созданы совершенно разными группами разработчиков с различными целями и задачами. Процессор Itanium, разработанный совместно с компанией HP (Hewlett Packard), был предназначен для использования памяти с удвоенной скоростью передачи данных (DDR), которая, в свою очередь, работает на более подходящей для семейства серверов тактовой частоте 266 МГц. Соответствие скорости шины центрального процессора и шины памяти позволяет достичь наибольшего быстродействия, поэтому система, использующая DDR SDRAM, работает лучше, если тактовая частота шины CPU (центрального процессора) также равна 266 МГц.

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

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

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

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

  • Эффективность процессоров Cyrix

В маркировке процессоров Cyrix/IBM 6×86 используется шкала PR (Performance Rating - оценка эффективности), значения на которой не равны истинной тактовой частоте в мегагерцах. Например, процессор Cyrix 6x86MX/MII-PR366 фактически работает на тактовой частоте 250 МГц (2,5Ч100 МГц). Тактовая частота системной платы указанного процессора должна быть установлена так, как при установке процессора с тактовой частотой 250, а не 366 МГц (как можно предположить по числу 366 на маркировке).

Обратите внимание, что процессор с Cyrix 6x86MX-PR200 может работать на тактовых частотах 150, 165, 166 или 180 МГц, но не на частоте 200 МГц. Рассматриваемая оценка эффективности предназначена для сравнения с оригинальными процессорами Intel Pentium (Celeron, Pentium II или Pentium III в этой оценке не участвуют).

Предполагается, что оценка эффективности (P-Rating) определяет быстродействие процессора по отношению к Intel Pentium. Но следует заметить, что сравниваемый процессор Cyrix не содержит технологии MMX, его кэш-память первого уровня имеет меньший объем, использованы платформа системной платы и набор микросхем довольно старой версии, не говоря уже о более медленной памяти. По этим причинам шкала P-Rating малоэффективна при сравнении процессоров Cyrix с Celeron, Pentium II или Pentium III, а значит, их лучше оценивать по действительному быстродействию. Другими словами, процессор Cyrix 6x86MX/MII-PR366 работает только на тактовой частоте 250 МГц и может сравниваться с процессорами Intel, имеющими подобное значение тактовой частоты. Я полагаю, что маркировка MII-366 для процессора, который фактически работает с частотой 250 МГц, мягко говоря, несколько обманчива.

  • Эффективность процессоров AMD

Аналогичным образом сравнивается эффективность процессоров AMD серии K5. Оценка эффективности серии K6 и Athlon указывает на реальную рабочую частоту. В процессорах семейства Athlon шина работает на удвоенной частоте системной платы (200 МГц).

Шина данных

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

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

Данные в компьютере передаются в виде цифр через одинаковые промежутки времени. Для передачи единичного бита данных в определенный временной интервал посылается сигнал напряжения высокого уровня (около 5 В), а для передачи нулевого бита данных - сигнал напряжения низкого уровня (около 0 В). Чем больше линий, тем больше битов можно передать за одно и то же время. В процессорах 286 и 386SX для передачи и приема двоичных данных используется 16 соединений, поэтому у них шина данных считается 16-разрядной. У 32-разрядного процессора, например 486 или 386DX, таких соединений вдвое больше, поэтому за единицу времени он передает вдвое больше данных, чем 16-разрядный. Современные процессоры типа Pentium имеют 64-разрядные внешние шины данных. Это означает, что процессоры Pentium, включая оригинальный Pentium, Pentium Pro и Pentium II, могут передавать в системную память (или получать из нее) одновременно 64 бита данных.

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

Разрядность шины данных процессора определяет также разрядность банка памяти. Это означает, что 32-разрядный процессор, например класса 486, считывает из памяти или записывает в память 32 бита одновременно. Процессоры класса Pentium, включая Pentium III и Celeron, считывают из памяти или записывают в память 64 бита одновременно.

  • Кэш-память первого уровня

Во всех процессорах, начиная с 486-го, имеется встроенный (первого уровня) кэш-контроллер с кэш-памятью объемом 8 Кбайт в процессорах 486DX, а также 32, 64 Кбайт и более в современных моделях. Кэш - это быстродействующая память, предназначенная для временного хранения программного кода и данных. Обращения к встроенной кэш-памяти происходят без состояний ожидания, поскольку ее быстродействие соответствует возможностям процессора, т.е. кэш-память первого уровня (или встроенный кэш) работает на частоте процессора.

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

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

  • Кэш-память второго уровня

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

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

На сегодняшний день стандартная тактовая частота системной платы равна 66, 100 или 133 МГц, но некоторые процессоры работают на тактовой частоте 600 МГц или выше. В более новых системах не используется кэш на системной плате, поскольку быстрые модули SDRAM или RDRAM, применяемые в современных системах Pentium II/Celeron/III, могут работать на тактовой частоте системной платы.

Процессоры Celeron с тактовой частотой от 300 МГц и выше, а также процессоры Pentium III, частота которых более 600 МГц, содержат кэш-память второго уровня, скорость которой равна частоте ядра процессора. Встроенная кэш-память процессоров Duron и последних моделей Athlon также работает с частотой процессора. В более ранних версиях процессоров Athlon, а также Pentium II и III, используется внешний кэш с рабочей частотой, равной половине, двум пятым или одной трети тактовой частоты процессора. Как видите, существующий диапазон скоростей кэша, начиная с полной частоты центрального процессора и заканчивая более низкой частотой основной памяти, позволяет минимизировать длительность состояний ожидания, выдерживаемых процессором. Это позволяет процессору работать с частотой, наиболее близкой к его фактическому быстродействию.

  • Технология MMX

В зависимости от контекста, MMX может означать multi-media extensions (мультимедийные расширения) или matrix math extensions (матричные математические расширения). Технология MMX использовалась в старших моделях процессоров Pentium пятого поколения (рис. 2) в качестве расширения, благодаря которому ускоряется компрессия/декомпрессия видеоданных, манипулирование изображением, шифрование и выполнение операций ввода-вывода - почти все операции, используемые во многих современных программах.


В архитектуре процессоров MMX есть два основных усовершенствования.

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

  • Технология SSE

В феврале 1999 года Intel представила общественности процессор Pentium III, содержащий обновление технологии MMX, получившей название SSE (Streaming SIMD Extensions - потоковые расширения SIMD). До этого момента инструкции SSE носили имя Katmai New Instructions (KNI), так как первоначально они были включены в процессор Pentium III с кодовым именем Katmai. Процессоры Celeron 533A и выше, созданные на основе ядра Pentium III, тоже поддерживают инструкции SSE. Более ранние версии процессора Pentium II, равно как Celeron 533 и ниже (созданные на основе ядра Pentium II), SSE не поддерживают.

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

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

Инструкции SSE и SSE2 особенно эффективны при декодировании файлов формата MPEG2, который является стандартом сжатия звуковых и видеоданных, используемым в DVD-дисках.

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

  • Технология 3DNow и Enhanced 3DNow

Технология 3DNow разработана компанией AMD в ответ на реализацию поддержки инструкций SSE в процессорах Intel. Впервые (май 1998 года) 3DNow реализована в процессорах AMD K6, а дальнейшее развитие - Enhanced 3DNow - эта технология получила в процессорах Athlon и Duron. Аналогично SSE, технологии 3DNow и Enhanced 3DNow предназначены для ускорения обработки трехмерной графики, мультимедиа и других интенсивных вычислений.

Контрольные вопросы

  1. Какие устройства обеспечивают минимальный состав ПК?
  2. Приведите классификацию различных видов памяти. Каково их назначение?
  3. Какие основные этапы развития ТСИ вам известны?
  4. Что входит в состав основных компонентов материнской платы ПК?
  5. В чем состоит назначение шин ПК?
  6. Какие параметры характеризуют производительность процессо­ ра?
  7. Каковы основные характеристики микросхем памяти?

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

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

3. Ни в коем случае нельзя судить о микропроцессоре только по такому показателю, как частота тактового сигнала, которая измеряется мега или гигагерцами. Иногда «проц», у которого тактовая частота меньше, может оказаться более продуктивным. Очень важными являются такие показатели как: количество тактов, которые необходимы для выполнения команды, количество команд, которые он может выполнять одновременно и др.

Оценка возможностей процессора (характеристики)

В быту, при оценке возможностей процессора необходимо обращать внимание на следующие показатели (как правило они указаны на упаковке устройства или в прайс-листе или каталоге магазина):

  • количество ядер. Многоядерные CPU содержат на одном кристалле (в одном корпусе) 2, 4 и т.д. вычислительных ядра. Увеличение количества ядер – один из самых эффективных способов значительного повышения мощности процессоров. Но необходимо учитывать, что программы, которые не поддерживают многоядерность (как правило это старые программы), на многоядерных процессорах быстрее работать не будут, т.к. не умеют использовать более одного ядра;
  • размер кеша. Кеш - очень быстрая внутренняя память процессора, используемая им в качестве своеобразного буфера в случае необходимости компенсации «перебоев» во время работы с оперативной памятью. Логично, что, чем больше кеш, тем лучше.
  • количество потоков – пропускная способность системы. Количество потоков часто не совпадает с количеством ядер. Например, четырехядерный Intel Core i7 работает в 8 потоков и по своей производительности опережает многие шестиядерные процессоры;
  • тактовая частота – величина, которая показывает, сколько операций (тактов) в единицу времени может произвести процессор. Логично, что, чем больше частота, тем больше операций он может выполнить, т.е. тем производительнее получается.
  • скорость шины, при помощи которой CPU соединен с системным контроллером, находящимся на материнской плате.
  • техпроцесс – чем он мельче, тем меньше энергии процессор потребляет и, значит, меньше греется.

Процессор - это, без сомнения, главный компонент любого компьютера. Именно этот небольшой кусочек кремния, размером в несколько десятков миллиметров выполняет все те сложные задачи, которые вы ставите перед своим компьютером. Здесь выполняется операционная система, а также все программы. Но как все это работает? Этот вопрос мы попытаемся разобрать в нашей сегодняшней статье.

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

Сначала давайте рассмотрим что такое процессор. CPU или central processing unit (центральное обрабатывающее устройство) - который представляет из себя микросхему с огромным количеством транзисторов, сделанную на кристалле кремния. Первый в мире процессор был разработан корпорацией Intel в 1971 году. Все началось с модели Intel 4004. Он умел выполнять только вычислительные операции и мог обрабатывать только 4 байта данных. Следующая модель вышла в 1974 году - Intel 8080 и мог обрабатывать уже 8 бит информации. Дальше были 80286, 80386, 80486. Именно от этих процессоров произошло название архитектуры.

Тактовая частота процессора 8088 была 5 МГц, а количество операций в секунду только 330 000 что намного меньше чем в современных процессоров. Современные устройства имеют частоту до 10 ГГц и несколько миллионов операций в секунду.

Мы не будем рассматривать транзисторы, переместимся на уровень выше. Каждый процессор состоит из таких компонентов:

  • Ядро - здесь выполняется вся обработка информации и математические операции, ядер может быть несколько;
  • Дешифратор команд - этот компонент относится к ядру, он преобразует программные команды в набор сигналов, которые будут выполнять транзисторы ядра;
  • Кэш - область сверхбыстрой памяти, небольшого объема, в которой хранятся данные, прочитанные из ОЗУ;
  • Регистры - это очень быстрые ячейки памяти, в которых хранятся сейчас обрабатываемые данные. Их есть всего несколько и они имеют ограниченный размер - 8, 16 или 32 бит именно от этот зависит разрядность процессора;
  • Сопроцессор - отдельное ядро, которое оптимизировано только для выполнения определенных операций, например, обработки видео или шифрования данных;
  • Адресная шина - для связи со всеми, подключенными к материнской плате устройствами, может иметь ширину 8, 16 или 32 бит;
  • Шина данных - для связи с оперативной памятью. С помощью нее процессор может записывать данные в память или читать их оттуда. Шина памяти может быть 8, 16 и 32 бит, это количество данных, которое можно передать за один раз;
  • Шина синхронизации - позволяет контролировать частоту процессора и такты работы;
  • Шина перезапуска - для обнуления состояния процессора;

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

  • Регистры A, B, C - предназначены для хранения данных во время обработки, да, их только три, но этого вполне достаточно;
  • EIP - содержит адрес следующей инструкции программы в оперативной памяти;
  • ESP - адрес данных в оперативной памяти;
  • Z - содержит результат последней операции сравнения;

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

Как работает процессор компьютера?

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

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

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

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

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

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

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

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

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

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

Выводы

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

На завершение видео об истории создания процессоров:

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

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

Мощности:

  • Бывают слабые, одноядерные модели, производство которых остановлено и приобрести их можно только после долгих поисков;
  • Средние и мощные модели, имеющие от 2 до 16 ядер;

По способу применения:

  1. Игровые;
  2. Серверные;
  3. Бюджетные;

По фирме производителю:

Обратите внимание! Помимо Интеловских и Амдэшных ЦП существуют продукты, выпускаемые под брендами других компаний, но они мало востребованы, составляя малую часть об общего объема товаров на рынке компьютерного железа.

Многие пользователи ошибочно полагают, что продукция компании Intel отличается от AMD только названием, но это далеко не так. Структура каждого центрального процессора, произведенного под торговой маркой данных компаний, существенно отличается от конкурентов. Благодаря этому, они обладают своими достоинствами и недостатками. Например, продукция компании Intel наделена следующими положительными характеристиками, выгодно отличающими их центральные процессоры от AMD:

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

Товары от AMD также имеют ряд характеристик, позволяющих им активно конкурировать на рынке компьютерного железа:

  • В отличии от ЦП производства Интел, центральные процессоры от АМД имеют функцию разгона, увеличивающую исходную мощность до 20%;
  • Лучшее соотношение цены и качества товаров;
  • Графические ядра, встроенные в ЦП, обладают большими возможностями чем Интеловские, позволяя быстрее работать с видео;

Описание центрального процессора

Итак, с видами ЦП и их отличительными особенностями мы разобрались, пора переходить к описанию самого изделия и разобраться в том, что это такое. Для простоты понимания разобьём его на несколько пунктов, выделяя в них ключевые особенности изделия:

  1. Назначение ЦП;
  2. Его строение;
  3. Базовые характеристики;

С их помощью мы разберемся как работает процессор и как он устроен.

Назначение

Главная задача любого центрального процессора – выполнение вычислительных процессов, с помощью которых устройствам передается набор команд, необходимых для выполнения. Команды находятся в ОЗУ ПК и считываются CPU оттуда напрямую. Соответственно, чем выше вычислительные мощности процессора, тем большим быстродействием обладает вся система.

Структура

Общая структура любого центрального процессора состоит из следующих блоков:

  1. Блока интерфейса;
  2. Операционного блока;

Блок интерфейса содержит следующие компоненты:

  • Адресные регистры;
  • Регистры памяти, в которых осуществляется хранение кодов передаваемых команд, выполнение которых планируется в ближайшее время;
  • Устройства управления – с его помощью формируются управляющие команды, которые в дальнейшем выполняются ЦП;
  • Схемы управления, отвечающие за работу портов и системных шин;

В операционный блок входят:

  1. Микропроцессорная память. Состоит из: сегментных регистров, регистров признаков, регистров общего назначения и регистров подсчитывающих количество команд;
  2. Арифметико-логическое устройство. С его помощью информация интерпретируется в набор логических, или арифметических операций;

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

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

Характеристики

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

  • Тактовая частота; Для обработки одного фрагмента данных, передаваемых внутри ПК, требуется один такт времени. Отсюда следует, что чем выше тактовая частота приобретаемого ЦП, тем быстрее работает устройство обрабатывая за раз большие массивы информации. Измеряется тактовая частота в мегагерцах. Один мегагерц эквивалентен 1 миллиону тактов в секунду. Старые модели имели маленькую частоту, из-за чего скорость работы оставляла желать лучшего. Современные модели имеют большие показатели тактовой частоты, позволяя быстро обрабатывать и выполнять самые сложные наборы команд.
  • Разрядность; Информация, предназначенная для обработки ЦП, попадает в него через внешние шины. От разрядности зависит какой объем данных передается за один раз. Это влияет на быстродействие. Старые модели были 16 разрядными, а современные имеют 32 или 64 разряда. 64 разрядная система на сегодняшний день считается самой продвинутой и под нее разрабатываются современные программные продукты и устройства.
  • Кеш – память; Используется для увеличения работы устройства в компьютере, создавая буферную зону, хранящую копию последнего массива данных, обработанного процессором. Это дает возможность быстро выполнить схожую операцию в случае необходимости, без траты времени на обращение к общей памяти персонального компьютера.
  • Сокет; Вариант крепления устройства к материнской плате. Разные поколения процессоров, как и материнских плат имеют собственный поддерживаемых сокетов. Это стоит учитывать при покупке. У разных производителей сокеты также отличаются друг от друга.
  • Внутренний множитель частоты; Процессор и материнская плата работают на разных частотах и для их синхронизации друг с другом существует множитель частоты. Базовой или опорной считается рабочая частота материнской платы, которая умножается на персональный коэффициент ЦП.

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