Что выполняет процессор в пк. Что такое системная шина? Будущее за ARM

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

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

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

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

В общем, сегодня нас ждет статья из серии: «Хочу купить процессор, но не знаю на что обращать внимание.. Подскажете?».

Короче говоря, рассаживайтесь поудобней и.. Поехали!

Какой процессор выбрать - основные характеристики

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

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

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

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

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

Собственно, вот с чем предстоит определиться при выборе процессора:

  • Бренд производителя (Intel или AMD );
  • Тех.процесс производства;
  • Маркировка и архитектура;
  • Платформа CPU или тип разъема (cокет);
  • Тактовая частота процессора;
  • Разрядность;
  • Количество ядер;
  • Многопоточность;
  • Кэш-память;
  • Энергопотребление и охлаждение;
  • Фирменные прибамбасы технологии.

Здесь был большой текст, но я его вырезал, ибо моё, Sonikelf"а, личное мнение всё еще совпадает с статьей.

Тех.процесс и как участвует в выборе

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


В зависимости от разрешающей способности этого оборудования формируется определенный тип технологического процесса производства. Чаще всего он указывается в нанометрах: 130 нм, 90 нм, 45 нм и т.п. На что влияет техпроцесс и почему он важен при выборе CPU ?

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

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

Маркировка, архитектура и код name

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

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

Она определяет конструктивные особенности и организацию процессоров.

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

Примечание:
Например, Intel имеет такие архитектуры для Core 2 Duo (архитектура Конрой ): Lynnfield, Nehalem и т.п. AMD: Piledriver, Bulldozzer, Trinity .

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

Сокет или тип разъема процессора

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


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

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

Впрочем, не всё всегда так критично, ибо, например, у AMD более гибкая политика в отношении этого вопроса. Компания даёт возможность провести безболезненный для кошелька апгрейд путем поддержки совместимости новых платформ со старыми. У каждого производителя имеются свои типы сокетов. Основными из новых и условно-новых, скажем, для Intel считаются LGA 2011, LGA 1155, LGA 775 и LGA 1156 , причем два последние уже практически «канули в лету». У AMD самыми ходовыми являются разъемы AM3, Socket AM3+ и Socket FM1 .

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

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

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

Самый известный параметр оценки производительности процессора – это количество производимых операций/вычислений в единицу времени (измеряется в Гц). Например, если говорится, что процессор имеет тактовую частоту равную 3,4 ГГц , то это значит, что он за одну секунду производит обработку 3 миллиардов 400 миллионов тактов (интервал выполнения операции).


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

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

Разрядность процессора

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

На текущий момент самый высокий показатель разрядности CPU - 128 , однако на потребительском рынке такие модели крайне мало распространены, а вот 32 и 64 бита – самые ходовые.

Примечание:
Разрядность процессора должна поддерживаться ОС, в частности, например, способна работать с 128- разрядными ЦП .

Многие пользователи при покупке путаются в маркировке разрядности 32 - и 64- битный «камней», поэтому здесь следует запомнить, что разрядности 86 бит не бывает, ибо такой маркировкой («х86 ») обозначаются 32 -разрядные процессоры. Если разрядность 64 бита, то процессор маркируются как, например, AMD64 или х64 .

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

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

Количество ядер процессора

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

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

Вывод . Какой процессор выбрать исходя из этого? «Ядреность» процессоров призвана в первую очередь повысить производительность при работе со специально оптимизированным софтом, играми и приложениями. Поэтому, если Вы «штатный» юзер с минимальными целями и задачами, то смысла переплачивать за количество ядер – нет. Оптимальным вариантом будет: 2 ядра – для стандартного офисного ПК (эдакой рабочей лошадки) и 4 и более ядра – если Вы хотите использовать ПК в качестве мультимедийного и игрового центра.

Многопоточность и тому подобное

Часто многие путают такие понятия как многопоточность и многоядерность, однако это совершенно разные вещи. Многопоточность – это способность платформы (ОС, программы, приложения) работать в несколько потоков, выполняющихся параллельно. Для раскрытия всего потенциала многоядерных процессоров им необходима работа с многопоточными приложениями. К таким приложениям можно отнести: архиваторы, кодировщики видео, дефрагментаторы, браузеры, flash и пр.

Из ОС к «любителям» многопоточности можно отнести Windows 8 , Windows 7 и различные -системы.

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

Кэш-память и другие хвосты

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


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

Кэш-память имеет трехуровневую организацию (хотя некоторые процессоры имеют только 2 ):

  • L1 – кэш первого уровня. Самый маленький (по объему, 16 -128 Кбайт) и очень быстрый, зачастую он работает на частоте самого CPU . Имеет высокую пропускную способность и процессорные ядра работают с ним напрямую.
  • L2 – медленней, но больше чем L1 по объему.
  • L3 – самый объемный кэш (от 6 до 16 Мб).

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

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

Ну вот и закончили мы с техническими параметрами, теперь рассмотрим некоторые, так сказать, фишки..

Энергопотребление и охлаждение

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

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

Информация по выбору системы охлаждения для Вашего процессора была в статье " ".

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

Встроенное графическое ядро

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

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

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

Всякие там фирменные технологии

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

От AMD :

  • 3DNow!, SSE (инструкции) – ускорение работы в мультимедиавычислениях;
  • AMD64 – работа с 64 -битными инструкциями, а также с 32 -битными архитектурами;
  • AMD Turbo Core – аналог Intel Turbo Boost ;
  • Cool’n"Quiet – снижение энергопотребления за счет уменьшения множителя и напряжения на ядре.

От Intel :

  • Hyper Threading (гиперпоточность) – создание для каждого физического ядра по два виртуальных (логических), вычислительных;
  • Intel Turbo Boost – повышение частоты ЦП в зависимости от загруженности ядер;
  • Intel Virtualization Technology – запуск нескольких ОС одновременно без потери производительности.

Вывод . Какой процессор выбрать исходя из этого? Конечно дополнительные «ништяки» в виде фирменных технологий – это не то, на чем стоит базироваться при выборе ЦП, однако приятным бонусом получить их бесплатно Вам никто не мешает, главное определиться, что необходимо.

Итак, последнее на сегодня, это…

Маркировка процессора

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

В общем виде маркировку от AMD (для поколения Family 10h ) можно представить в следующем виде (см. изображение):

Расшифровка будет следующей:

Марка процессора (1 ). Возможны следующие символы:

  • A – AMD Athlon;
  • H – AMD Phenom;
  • S – AMD Sempron;
  • O – AMD Optheron.

Назначение процессора (2 ). Варианты:

  • D – desktop – для рабочих станций или настольных ПК;
  • E – embedded server – для выделенных серверов;
  • S – server – для серверов.

Модель процессора (3 ). Возможны обозначения:

  • Е – энергоэффективные процессоры;
  • Х – заблокированный множитель;
  • Z – разблокированный множитель.

Тепловой пакет и класс системы охлаждения (4 ). Данные берутся из таблицы (см. изображение):

Корпус процессора (5 ). Данные берутся из таблицы (см. изображение).

Количество ядер (6 ). Значения от 2 до С (12 ).

Объем кэш-памяти (7

Ревизия процессора или степпинг (8 ). Данные из таблицы (см. изображение).

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

Процессор AMD с маркировкой HDZ560WFK2DGM , которая означает:

  • H CPU семейства AMD Phenom ;
  • D – назначение: рабочие станции/настольные ПК;
  • Z560 – модельный номер процессора 560 (Z - со свободным множителем);
  • WF TDP до 95 Вт;
  • K – упакован процессор в корпус 938 pin OµPGA (Socket AM3);
  • 2 – общее количество активных ядер;
  • D – объем кэш-памяти L2 512 КБ и объем кэш-памяти L3 6144 КБ;
  • GM - ядро процессора степпинга C3.

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

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

Где лучше всего купить процессор?

  • , - для тех, кто не боится покупать за рубежом и экономить деньги. Есть много , несколько популярных марок, да и вцелом приятный магазин, где идут постоянные и прочее;
  • , - пожалуй, лучший выбор с точки зрения соотношения цена-качество SSD (и не только). Вполне внятные цены, хотя ассортимент не всегда идеален с точки зрения разнообразия. Ключевое преимущество, - гарантия, которая действительно позволяет в течении 14 дней поменять товар без всяких вопросов, а уж в случае гарантийных проблем магазин встанет на Вашу сторону и поможет решить любые проблемы. Автор сайта пользуется им уже лет 10 минимум (еще со времен, когда они были частью Ultra Electoronics ), чего и Вам советует;
  • , - один из старейших магазинов на рынке, как компания существует где-то порядка 20 лет. Приличный выбор, средние цены и один из самых удобных сайтов. В общем и целом приятно работать.

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

Послесловие

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

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

Потом снова перечитайте, потом снова выберите. В общем и так по кругу, пока не набьете руку:)

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

P.S. За существование данной статьи спасибо члену команды 25 КАДР

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

А начнем с того, что уберем процессор из системного блока. В итоге компьютер не будет работать. Теперь понимаете, какую роль он играет? Но давайте более детально изучим вопрос и узнаем что такое процессор компьютера.

Что такое процессор компьютера

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

Более техническое определение можно найти в Википеди:

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

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

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

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

Как работает процессор

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

Деятельность ЦП можно представить последовательностью следующих событий:

  • Из ОЗУ, куда загрузилась определенная программа (допустим текстовый редактор), управляющий блок процессора извлекает необходимые сведения, а также набор команд, которые обязательно нужно выполнить. Все это отправляется в буферную память (кэш) ЦП;
  • Выходящая из кэш-памяти информация разделяется на два вида: инструкции и значения , которые отправляются в регистры (это такие ячейки памяти в процессоре). Первые идут в регистры команд, а вторые в регистры данных;
  • Информацию из регистров обрабатывает арифметико-логическое устройство (часть ЦПУ, которая выполняет арифметические и логические преобразования поступающих данных), которое из них считывает информацию, а за тем исполняет необходимые команды над получившимися в итоге числами;
  • Получившиеся результаты, разделяющиеся на законченные и незаконченные , идут в регистры, откуда первая группа отправляется в кэш-память ЦП;
  • Этот пункт начнем с того, что есть два основных уровня кэша: верхний и нижний . Последние полученные команды и данные, нужные для выполнения расчетов, поступают в кэш верхнего уровня, а неиспользуемые отправляются в кэш нижнего уровня. Этот процесс идёт следующим образом — вся информация идёт с третьего уровня кэша на второй, а потом попадает на первый, с не нужными на текущий момент данными и их отправкой на нижний уровень все обстоит наоборот;
  • По окончанию вычислительного цикла, конечный итог будет записан в оперативной памяти системы, для освобождения места кэш-памяти ЦП для новых операций. Но может произойти так, что буферная память будет переполнена, тогда неэксплуатируемые данные пойдут в оперативную память, или на нижний уровень кэша.

Поэтапные шаги вышеприведенных действий являются операционным потоком процессора и ответом на вопрос – как работает процессор.

Виды процессоров и основные их производители

Существует множество видов процессоров от слабых одноядерных, до мощных многоядерных. От игровых и рабочих до средних по всем параметрам. Но, есть два основных лагеря ЦП – AMD и знаменитые Intel. Это две компании, производящие самые востребованные и популярные микропроцессоры на рынке. Основное различие между продукцией AMD и Intel – не количество ядер, а архитектура – внутреннее строение. Каждый из конкурентов предлагает свое строение «внутренностей», свой вид процессора, кардинально отличающуюся от конкурента.

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

Плюсы процессоров Intel :

  • Обладает более низким потреблением энергии;
  • Разработчики больше ориентируются на Интел, чем на АМД;
  • Лучше производительность в играх;
  • Связь процессоров Интел с ОЗУ реализована лучше, нежели у АМД;
  • Операции, осуществляемые в рамках только одной программы (на пример разархивирование) идут лучше, АМД в этом плане поигрывает.

Минусы процессоров Intel :

  • Самый большой минус – цена. ЦП от данного производителя зачастую на порядок выше чем у их главного конкурента;
  • Производительность снижается при использовании двух и более «тяжелых» программ;
  • Интегрированные графические ядра уступают АМД;

Плюсы процессоров AMD :

  • Самый большой плюс — самый большой минус Intel – цена. Вы можете купить хороший середнячок от AMD, который будет на твердую 4, а может даже и 5 тянуть современные игры, при этом стоить он будет намного ниже чем аналогичный по производительности процессор от конкурента;
  • Адекватное соотношение качества и цены;
  • Обеспечивают качественную работу системы;
  • Возможность разгона процессора, повышая тем самым его мощность на 10-20%;
  • Интегрированные графические ядра превосходят Интел.

Минусы процессоров AMD :

  • Процессоры от АМД хуже взаимодействуют с ОЗУ;
  • Энергопотребление больше, чем у Интел;
  • Работа буферной памяти на втором и третьем уровне идёт на более низкой частоте;
  • Производительность в играх отстает от показателей конкурента;

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

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

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

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

  • Бренд – кто производит процессор: AMD, или Intel. От данного выбора зависит не только цена приобретения, и производительность, как можно было бы предположить из предыдущего раздела, но также и выбор остальных комплектующих ПК, в частности, материнской платы. Поскольку процессоры от АМД и Интел имеют различную конструкцию и архитектуру, то в сокет (гнездо для установки процессора на материнской плате) предназначенный под один тип процессора, нельзя будет установить второй;
  • Серия – оба конкурента делят свою продукцию на множество видов и подвидов. (AMD — Ryzen, FX,. Intel- i5, i7);
  • Архитектура процессора – фактически внутренние органы ЦП, каждый вид процессоров имеет индивидуальную архитектуру. В свою очередь один вид можно разделить на несколько подвидов;
  • Поддержка определенного сокета - очень важная характеристика процессора, поскольку сам сокет является «гнездом» на материнской плате для подсоединения процессора, а каждый вид процессоров требует соответствующий ему разъем. Собственно об этом было сказано выше. Вам либо нужно точно знать какой сокет расположен на вашей материнской плате и под нее подбирать процессор, либо наоборот (что более правильно);
  • Тактовая частота – один из значимых показателей производительности ЦП. Давайте ответим на вопрос что такое тактовая частота процессора. Ответ будет простым для этого грозного термина — объем операций выполняющихся в единицу времени, измеряющийся в мегагерцах (МГц);
  • Кэш - установленная прямо в процессор память, её ещё называют буферной памятью, имеет два уровня — верхний и нижний. Первый получает активную информацию, второй – неиспользуемую на данный момент. Процесс получения информации идет с третьего уровня во второй, а потом в первый, ненужная информация проделывает обратный путь;
  • Количество ядер - в ЦП их может быть от одного до нескольких. В зависимости от количества процессор будет называться двухъядерных, четырех ядерным и т.д. Соответственно от их числа будет зависеть мощность;
  • Энергопотребление и тепловыделение. Тут все просто – чем выше процессор «съедает» энергии, тем больше тепла он выделит, обращайте внимание на этот пункт, чтобы выбрать соответствующий кулер охлаждения и блок питания.
  • Интегрированная графика – у AMD первые такие разработки появились в 2006, у Intel с 2010. Первые показывают больший результат, чем конкуренты. Но все равно, до флагманских видеокарт пока ни один из них не смог дотянуть.

Выводы

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

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

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

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

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

А ведь все могло бы сложиться иначе и потрепанный Pentium IV так бы и остался пределом мечтаний рядового покупателя.

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

1. С чего все началось

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

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

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

2. Появление транзисторов

Первые полевые транзисторы появились еще в 1928 году. Но мир изменился лишь после появления так называемых биполярных транзисторов , открытых в 1947-м.

В конце 40-х физик-экспериментатор Уолтер Браттейн и теоретик Джон Бардин разработали первый точечный транзистор. В 1950 его заменил первый плоскостной транзистор, а в 1954 году небезызвестный производитель Texas Instruments анонсировал уже кремниевый транзистор.

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

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

3. Как работает транзистор

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

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

Из школьного курса информатики вы, наверняка, помните, что компьютер «понимает» человеческий язык за счет комбинаций всего двух состояний: «включено» и «выключено». В понимании машины это состояние "0" или "1".

Задача компьютера заключается в том, чтобы представить электрический ток в виде чисел.

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

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

Но сначала разберемся с диодом

Кремний (он же Si – "silicium" в таблице Менделеева) относится к категории полупроводников, а значит он, с одной стороны, пропускает ток лучше диэлектрика, с другой, – делает это хуже, чем металл.

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

Задача транзистора заключается в усилении слабого сигнала за счет дополнительного источника питания.

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

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

Так стали использовать 5-валентную примесь фосфора, за счет чего получили транзисторы n-типа . Наличие дополнительного электрона позволило ускорить их движение, повысив пропуск тока.

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

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

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

Если к диоду подключить источник питания таким образом, чтобы "–" касался p-стороны пластины, а "+" – n-стороны, протекание тока будет невозможно из-за того, что дырки притянутся в минусовому контакту источника питания, а электроны – к плюсовому, и связь между электронами p и n стороны будет утеряна за счет расширения объединенного слоя.

Но если подключить питание с достаточным напряжением наоборот, т.е. "+" от источника к p-стороне, а "–" – к n-стороне, размещенные на n-стороне электроны будут отталкиваться отрицательным полюсом и выталкиваться на p-сторону, занимая дырки в p-области.

Но теперь электроны притягивает к положительному полюсу источника питания и они продолжаются перемещаться по p-дыркам. Это явление назвали прямым смещением диода .

Диод + диод = транзистор

Сам по себе транзистор можно представить как два, состыкованных друг к другу диода. При этом p-область (та, где размещены дырки) у них становится общей и именуется «базой».

У N-P-N транзистора две n-области с дополнительными электронами – они же «эмиттер» и «коллектор» и одна, слабая область с дырками – p-область, именуемая «базой».

Если подключить источник питания (назовем его V1) к n-областям транзистора (независимо от полюса), один диод получит обратное смещение и транзистор будет находиться в закрытом состоянии .

Но, как только мы подключим еще один источник питания (назовем его V2), установив "+" контакт на «центральную» p-область (базу), а "–" контакт на n-область (эмиттер), часть электронов потечет по вновь образованной цепи (V2), а часть будет притягиваться положительной n-областью. В результате, электроны потекут в область коллектора, а слабый электрический ток будет усилен.

Выдыхаем!

4. Так как все-таки работает компьютер?

А теперь самое главное .

В зависимости от подаваемого напряжения, транзистор может быть либо открыт , либо закрыт . Если напряжение недостаточное для преодоления потенциального барьера (того самого на стыке p и n пластин) – транзистор будет находится в закрытом состоянии – в состоянии «выключен» или, говоря языком двоичной системы – "0".

При достаточно напряжении транзистор открывается, а мы получаем значение «включен» или "1" в двоичной системе.

Такое состояние, 0 или 1, в компьютерной индустрии назвали «битом».

Т.е. мы получаем главное свойство того самого переключателя, который открыл человечеству путь к компьютерам!

В первом электронном цифровом вычислителе ЭНИАК, а проще говоря – первом компьютере, использовалось около 18 тысяч ламп-триодов. Размер компьютера был сопоставим с теннисным кортом, а его вес составлял 30 тонн.

Для понимания работы процессора нужно понять еще два ключевых момента.

Момент 1 . Итак, мы определились с тем, что такое бит . Но с его помощью мы можем лишь получить две характеристики чего-либо: или «да» или «нет». Для того, чтобы компьютер научился понимать нас лучше, придумали комбинацию из 8 битов (0 или 1), которую прозвали байтом .

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

Момент 2. Наличие чисел и букв без какой-либо логики нам бы ничего не дало. Именно поэтому появилось понятие логических операторов .

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

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

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

Это довольно примитивное объяснение принципа работы процессора и компьютера, но именно понимание этого позволяет нам двигаться дальше.

5. И началась транзисторная гонка

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

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

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

  • 1964 год IBM System/360. Компьютер, совместимый с универсальным программным кодом. Набор инструкций для одной модели процессора мог использоваться и для другой.
  • 70-e годы. Появление первых микропроцессоров. Однокристальный процессор от Intel. Intel 4004 – 10 мкм ТП, 2 300 транзисторов, 740 КГц.
  • 1973 год Intel 4040 и Intel 8008. 3 000 транзисторов, 740 КГц у Intel 4040 и 3 500 транзисторов при 500 кГц у Intel 8008.
  • 1974 год Intel 8080. 6 мкм ТП и 6000 транзисторов. Тактовая частота около 5 000 кГц. Именно этот процессор использовался в компьютере Altair-8800. Отечетсвенная копия Intel 8080 – процессор КР580ВМ80А, разработанный Киевским НИИ микроприборов. 8 бит.
  • 1976 год Intel 8080 . 3 мкм ТП и 6500 транзисторов. Тактовая частота 6 МГц. 8 бит.
  • 1976 год Zilog Z80. 3 мкм ТП и 8500 транзисторов. Тактовая частота до 8 МГц. 8 бит.
  • 1978 год Intel 8086 . 3 мкм ТП и 29 000 транзисторов. Тактовая частота около 25 МГц. Система команд x86, которая используется и сегодня. 16 бит.
  • 1980 год Intel 80186 . 3 мкм ТП и 134 000 транзисторов. Тактовая частота – до 25 МГц. 16 бит.
  • 1982 год Intel 80286. 1,5 мкм ТП и 134 000 транзисторов. Частота – до 12,5 МГц. 16 бит.
  • 1982 год Motorola 68000 . 3 мкм и 84 000 транзисторов. Этот процессор использовался в компьютере Apple Lisa.
  • 1985 год Intel 80386 . 1,5 мкм тп и 275 000 транзисторов.Частота – до 33 МГц в версии 386SX.

Казалось бы, продолжать список можно было бы до бесконечности, но тут инженеры Intel столкнулись с серьезной проблемой.

6. Закон Мура или как чипмейкерам жить дальше

На дворе конец 80-х. Еще в начале 60-х один из основателей компании Intel Гордон Мур формулировал так называемый «Закон Мура». Звучит он так:

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

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

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

В качестве решения был найден вариант с использованием рядом дополнительных элементов:

  • кэш-памяти;
  • конвейера;
  • встроенного сопроцессора;
  • множителя.

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

Процессор Intel i486 состоял уже из 1,2 млн транзисторов, а максимальная частота его работы достигла 50 МГц.

В 1995 году к разработке присоединяется компания AMD и выпускает самый быстрый на тот момент i486-совместимый процессор Am5x86 на 32-битной архитектуре. Изготавливался он уже по 350 нанометровому техпроцессу, а количество установленных процессоров достигло 1,6 млн штук. Тактовая частота повысилась до 133 МГц.

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

Так производители процессоров перешли на платформу RISC (Reduced Instruction Set Computing]. Но и этого оказалось мало.

В 1991 году выходит 64-битный процессор R4000, работающий на частоте 100 МГц. Через три года появляется процессор R8000, а еще через два года – R10000 с тактовой частотой вплоть до 195 МГц. Параллельно развивался рынок SPARC-процессоров, особенностью архитектуры которых стало отсутствие инструкций умножения и деления.

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

Вот лишь некоторые из появившихся с период с 1980 по 1995 год архитектур:

  • SPARC;
  • ARM ;
  • PowerPC;
  • Intel P5;
  • AMD K5;
  • Intel P6.

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

В августе 1999 года на рынок выходе AMD K7 Athlon, изготовленный по 250 нанометровому техпроцессу и включающий 22 млн транзисторов. Позднее планку подняли до 38 млн процессоров. Потом до 250 млн.

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

7. Конец транзисторных соревнований близко

В 2007 году Гордон Мур выступил с весьма резким заявлением:

Закон Мура скоро перестанет действовать. Устанавливать неограниченное количество процессоров до бесконечности невозможно. Причина тому - атомарная природа вещества.

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

И пока производители полупроводников грозятся запустить многослойные транзисторы, проводя параллель с 3DNand памятью, у упершейся в стену архитектуры x86 еще 30 лет назад появился серьезный конкурент.

8. Что ждет «обычные» процессоры

«Закон Мура» признан недействительным еще с 2016 года. Об этом официально заявил крупнейший производитель процессоров Intel. Удваивать вычислительную мощность на 100% каждые два года чипмейкеры больше не состоянии.

И теперь у производителей процессоров есть несколько малоперспективных вариантов.

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

К тому же, о серийном запуске подобных устройств в ближайшие десятилетия не может идти и речи. Дорого, неэффективно и… медленно!

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

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

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

Сегодня же, понимая стремительное развитие ARM-архитектуры, Intel провела негромкий анонс чипов семейства Ice Lake. Процессоры будут изготавливаться по 10-нанометровому технологическому процессу и станут основой для смартфонов, планшетов и мобильных устройств. Но произойдет это в 2019 году.

9. Будущее за ARM

Итак, архитектура x86 появилась в 1978 году и относится к типу платформы CISC. Т.е. сама по себе она предполагает наличие инструкций на все случаи жизни. Универсальность – главный конек x86.

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

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

За высокую производительность пришлось попрощаться с энергоэффективностью. Более того, над архитектурой x86 сейчас трудятся две компании, которых можно смело отнести к монополистам. Это Intel и AMD. Производить x86-процессоры могут только они, а значит и правят развитием технологий только они.

В тоже время разработкой ARM (Arcon Risk Machine) занимаются сразу несколько компания. Еще в 1985 году в качестве основы для дальнейшего развития архитектуры разработчики выбрали платформу RISC.

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

Более того, ARM изначально создавался исключительно как конкурент x86. Разработчики ставили задачу построить архитектуру, более эффективную чем x86.

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

Архитектуру ARM в свое время поддержала компания Apple, запустив производство планшетов Newton на базе семейства ARM-процессоров ARM6.

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

  • мобильность;
  • автономность.

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

10. Почему ARM – неоспоримый лидер

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

Но во сколько мощнее тот же айфон?

Само по себе сравнение двух разных архитектур – штука очень сложная. Замеры здесь можно выполнить лишь приблизительно, но понять то колоссальное преимущество, что дает построенные на ARM-архитектуре процессоры смартфона, можно.

Универсальный помощник в таком вопросе – искусственный тест производительности Geekbench. Утилита доступна как на стационарных компьютерах, так и на Android и iOS платформах.

Средний и начальный класс ноутбуков явно отстает от производительности iPhone 7. В топовом сегменте все немного сложнее, но в 2017 году Apple выпускает iPhone X на новом чипе A11 Bionic.

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

А ведь прошел всего один год.

Развитие ARM идет семимильными шагами. Пока Intel и AMD год за годом демонстрируют 5 – 10% прирост производительности, за тот же период производители смартфонов умудряются повысить мощность процессоров в два – два с половиной раза.

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

Установите на стол моноблок с мощным 18-ядерный процессором, который «в клочья разрывает ARM-архитектуру», а затем положите рядом iPhone. Чувствуете разницу?

11. Вместо вывода

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

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

Но нужна ли вам как покупателю такая мощность?

Вряд ли вас не устраивает производительность iPad Pro или флагманского iPhone X. Не думаю, что вы недовольны производительностью расположившейся на кухне мультиварки или качеством картинки на 65-дюймовом 4K-телевизоре. А ведь во всех этих устройствах используются процессоры на ARM-архитектуре.

Windows уже официально заявила, что с интересом смотрит в сторону ARM. Поддержку этой архитектуры компания включила еще в Windows 8.1, а ныне активно работает над тандемом с ведущим ARM-чипмейкером Qualcomm.

На ARM успела посмотреть и Google – операционная система Chrome OS поддерживает эту архитектуру. Появились сразу несколько дистрибутивов Linux, которые также совместимы с данной архитектурой. И это только начало.

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

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

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

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-памятью, будет применяться иерархическая организация оперативной памяти с использованием нескольких уровней КЭШ-памяти.

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


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

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

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

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

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

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