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

Для чего нужен процессор в компьютере?

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

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

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

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

Все мы знаем, что у видеокарты и процессора несколько различные задачи, однако знаете ли вы, чем они отличаются друг от друга во внутренней структуре? Как CPU (англ. - central processing unit ), так и GPU (англ. - graphics processing unit ) являются процессорами, и между ними есть много общего, однако сконструированы они были для выполнения различных задач. Подробнее об этом вы узнаете из данной статьи.

CPU

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

GPU

Основная функция GPU - рендеринг 3D графики и визуальных эффектов, следовательно, в нем все немного проще: ему необходимо получить на входе полигоны, а после проведения над ними необходимых математических и логических операций, на выходе выдать координаты пикселей. По сути, работа GPU сводится к оперированию над огромным количеством независимых между собой задач, следовательно, он содержит большой объем памяти, но не такой быстрой, как в CPU, и огромное количество исполнительных блоков: в современных GPU их 2048 и более, в то время как у CPU их количество может достигать 48, но чаще всего их количество лежит в диапазоне 2-8.

Основные отличия

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

Есть множество различий и в поддержке многопоточности: CPU исполняет 12 потока вычислений на одно процессорное ядро, а GPU может поддерживать несколько тысяч потоков на каждый мультипроцессор, которых в чипе несколько штук! И если переключение с одного потока на другой для CPU стоит сотни тактов, то GPU переключает несколько потоков за один такт.

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

Разница в скорости вычислений

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

Майнинг Bitcoin

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

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

Что такое CPU с точки зрения рядового пользователя? По аналогии с телом человека проц можно сравнить с мозгом. Он выполняет все математические расчеты и частично обеспечивает взаимодействие компонентов между собой. Физически процессор представляет собой самую крупную микросхему, устанавливаемую в специальный разъем материнской платы. Внутри нее содержатся сложные логические схемы из нескольких миллиардов транзисторов. Люди, интересующиеся вопросом «что такое CPU», могут легко определить процессор среди других внутренних компонентов. Ведь на нем всегда расположена система активного охлаждения: массивный металлический радиатор и вентилятор. Необходимость в них вызвана тем фактом, что потребляемая микросхемой часто составляет десятки ватт. Малый объем рассеивающей поверхности и высокая мощность приводят к нагреву корпуса CPU, что требует использования охлаждения.

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

Часто на вопрос «что такое CPU» дают довольно обобщающие ответы. Это объясняется очень просто: сейчас термин «процессор» приобрел более широкое значение, чем «часть компьютера». Так, в любом современном мобильном телефоне есть блок, выполняющий математические расчеты - это тоже процессор. Даже владельцам управляемых детских игрушек полезно знать, что такое CPU, ведь в них тоже присутствует вычислительный блок.

Очевидно, что не рассмотрев принцип работы процессора, понять общие особенности его работы невозможно. Работой CPU управляют программы. Они представляют собой наборы инструкций для процессора, написанные на каком-либо языке программирования. Говоря человеческим языком, в программе указан точный порядок действий. Все помнят или хотя бы слышали о В нем для того, чтобы нарисовать на экране круг, требовалось выполнить команду Circle (координаты). Современные принципы создания программ остались такими же: задачи создаются командами языков программирования. При запуске программы на компьютере специальный программный декодер преобразует команды используемого языка в предназначенный для непосредственной обработки на CPU. Этот код - двоичный, представляет собой последовательность единиц и нулей. Многие не могут понять, почему было решено использовать именно а не привычную десятеричную. На самом деле все объясняется очень просто: двоичные разряды легко можно представить командами для самих транзисторов. Например, так как речь идет о цифровых устройствах, то можно представить цифру «1» как наличие напряжения на базе определенного транзистора, а «0» - как его отсутствие. Соответственно, в первом случае транзистор открыт и пропускает через себя ток, а во втором - заперт (конечно, все упрощенно и с множеством оговорок).

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Выводы

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

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

CPU (Central Processing Unit) – центральный процессор, главная микросхема в компьютере, его «мозг». Содержит регистровый файл (register file), устройство управления (control unit), устройство управления памятью (MMU), арифметико-логическое устройство (ALU) и другие блоки.

Чем быстрее работает центральный процессор, тем быстрее работает весь ПК. CPU состоит из специальных ячеек, которые называют регистрами, в них находятся команды, которые выполняет процессор, а также данные, которыми оперируют команды. Главными характеристиками центральных процессоров являются быстродействие и разрядность. Под быстродействием понимается количество тактов, выполняемых процессором за секунду. Данный параметр измеряется в мегагерцах (МГц), 1 МГц = 1 000 000 тактов в секунду. Разрядность – это параметр, который является важным для таких устройств компьютера, как внутренние регистры, шина ввода вывода данных, шина адреса памяти.

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

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

Complex Instruction Set Computing - вычисления со сложным набором команд. Процессорная архитектура, основанная на усложнённом наборе команд. Типичными представителями CISC является семейство микропроцессоров Intel x86 (хотя уже много лет эти процессоры являются CISC только по внешней системе команд).

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

Reduced Instruction Set Computing (technology) - вычисления с сокращённым набором команд. Архитектура процессоров, построенная на основе сокращённого набора команд. Характеризуется наличием команд фиксированной длины, большого количества регистров, операций типа регистр-регистр, а также отсутствием косвенной адресации. Концепция RISC разработана Джоном Коком (John Cocke) из IBM Research, название придумано Дэвидом Паттерсоном (David Patterson). Самая распространённая реализация этой архитектуры представлена процессорами серии PowerPC, включая G3, G4 и G5. Довольно известная реализация данной архитектуры - процессоры серий MIPS и Alpha.

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

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

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

Содержат несколько процессорных ядер в одном корпусе (на одном или нескольких кристаллах). Процессоры, предназначенные для работы одной копии операционной системы на нескольких ядрах, представляют собой высокоинтегрированную реализацию системы «Мультипроцессор». На данный момент массово доступны процессоры с двумя ядрами, в частности Intel Core 2 Duo на ядре Conroe и Athlon64X2 на базе микроархитектуры K8.

В ноябре 2006 года вышел первый четырёхъядерный процессор Intel Core 2 Quad на ядре Kentsfield, представляющий собой сборку из двух кристаллов Conroe в одном корпусе. Двухядерность процессоров включает такие понятия, как наличие логических и физических ядер: например двуядерный процессор Intel Core Duo состоит из одного физического ядра, которое в свою очередь разделено на два логических. Процессор Intel Core 2 Duo состоит из двух физических ядер, что существенно влияет на скорость его работы.

10 сентября 2007 года были выпущены в продажу нативные (в виде одного кристалла) четырёхьядерные процессоры для серверов AMD Quad-Core Opteron, имевшие в процессе разработки кодовое название AMD Opteron Barc elona. 19 ноября 2007 вышел в продажу четырёхьядерный процессор для домашних компьютеров AMD Quad-Core Phenom. Эти процессоры реализуют новую микроархитектуру K8L (K10). 27 сентября 2006 года Intel продемонстрировала прототип 80-ядерного процессора. Предполагалось, что массовое производство подобных процессоров станет возможно не раньше перехода на 32-нанометровый техпроцесс, что должно было произойти к 2010 году. В настоящее время распространены процессоры, выполненные по 28 и 22 нанометровому процессу.