# факты | Как работает процессор компьютера?
Вы читаете эти строки со смартфона, планшета или компьютера. Любое из этих устройств основано на микропроцессоре. Микропроцессор является «сердцем» любого компьютерного устройства. Существует много типов микропроцессоров, но все они решают одни и те же задачи. Сегодня мы поговорим о том, как процессор работает и какие задачи он выполняет. На первый взгляд все это представляется очевидным. Но очень многим пользователям было бы интересно углубить свои знания о важнейшем компоненте, обеспечивающем работу компьютера. Мы узнаем о том, как технология, основанная на простой цифровой логике, позволяет вашему компьютеру не только решать математические задачи, но и быть развлекательным центром. Как всего две цифры — единица и ноль — преобразуются в красочные игры и фильмы? Этот вопрос многие неоднократно задавали себе и будут рады получить на него ответ. Ведь даже в основе недавно рассмотренного нами процессора AMD Jaguar, на котором базируются новейшие игровые приставки, лежит та же древняя логика.
В англоязычной литературе микропроцессор часто называют CPU (central processing unit, [единым] модулем центрального процессора). Причина такого названия кроется в том, что современный процессор представляет собою единый чип. Первый микропроцессор в истории человечества был создан корпорацией Intel в далеком 1971 году.
Функции CPU
Какие функции выполняет центральный процессор CPU? Главная функция ― управление всеми операциями компьютера: от простейших сложений чисел на калькуляторе до запуска компьютерных игр. Если рассматривать основные функции центрального процессора подробнее, CPU:
- получает данные из оперативной памяти, выполняет с ними арифметические и логические операции, передаёт их на внешние устройства,
- формирует сигналы, необходимые для работы внутренних узлов и внешних устройств,
- временно хранит результаты выполненных операций, переданных сигналов и других данных,
- принимает запросы от внешних устройств и обрабатывает их.
Процессор (центральное процессорное устройство — ЦПУ «CPU»)
Центральный процессор – это главная часть аппаратного обеспечения компьютера или «мозг компьютера». Чаще говорят — микропроцессор или просто процессор.
Именно процессор отвечает за выполнение программного кода (инструкции) для выполнения арифметических, логических и системных операций ввода/вывода.
Этот термин используется в компьютерной индустрии, с начала 1960 годов. Форма, дизайн и реализация процессоров сильно изменились начиная с самых ранних примеров, но их фундаментальная работа остаётся такой же.
Стандартизация и миниатюризация процессоров привели к глубокому проникновению основанных на них цифровых устройств в повседневную жизнь человека. Современные процессоры можно найти не только в таких высокотехнологичных устройствах, как компьютеры, но и в автомобилях, калькуляторах, мобильных телефонах и даже в детских игрушках.
Чаще всего они представлены микроконтроллерами, где помимо вычислительного устройства на кристалле расположены дополнительные компоненты (память программ и данных, интерфейсы, порты ввода/вывода, таймеры и др.).
Современные процессоры, как правило, меньше, чем 4х4 сантиметра, с сотнями контактов.
Упрощенно можно сказать, что типичными компонентами процессора являются арифметическо — логический блок (ALU), который выполняет арифметические и логические операции, и блок управления (CU), который извлекает инструкции из памяти, декодирует и выполняет их, призывая к работе ALU, когда это необходимо.
Производительность или скорость процессора зависит от тактовой частоты (как правило, обозначают в МГц) и количества выполненных инструкций за такт (IPC), которые в совокупности являются количеством выполненных инструкций в секунду (IPS).
Чем выше скорость работы процессора, тем выше быстродействие компьютера. Процессор имеет специальные ячейки, которые называются регистрами. Именно в регистрах помещаются команды, которые выполняются процессором, а также данные, которыми оперируют команды. Работа процессора состоит в выборе из памяти, в определённой последовательности, команд и данных, и их выполнение. На этом и базируется выполнение программ.
Распределение памяти также сильно влияет на производительность процессора.
Производительность компьютеров повышается за счёт использования многоядерных процессоров, который, по сути, это объединение двух или более отдельных процессоров (называется сердечники) в одну интегральную схему. В идеале, двухъядерный процессор будет почти вдвое мощнее одноядерных процессоров.
На практике, однако, производительность гораздо меньше, всего около 50%, из-за несовершенства программного обеспечения и алгоритмов реализации взаимодействия между аппаратным и программным обеспечением.
Совет: не стоит переплачивать за новинки, через полгода они будут стоить на 10-20% дешевле!
Как процессор обрабатывает данные
Приведенное краткое описание работы процессора компьютера иллюстрирует, что обработка данных процессором представляет из себя последовательность очень «мелких» шагов:
- считывание данных из оперативной памяти в регистры процессора,
- обработка этих данных и
- обратная запись данных из регистров процессора в ячейки оперативной памяти.
Но компенсацией за это является высочайшая скорость вычислений, сотни тысяч и миллионы таких «маленьких» операций ежесекундно. И соответственно, обеспечивается высокая скорость обработки информации, которая делает компьютер незаменимым помощником для работы, учебы, отдыха, развлечений.
Перспективы развития процессоров, что их ожидает
В будущем технологический прогресс достигнет физических пределов производство, что должно послужить триггером для изменений материальной части процессоров. В данной области выделяют несколько перспективных направлений:
- Оптические компьютеры, обрабатывают вместо электрических сигналов потоки света или фотоны.
- Квантовые компьютеры, в основе функционирования которых квантовые эффекты. Современные инженеры уже работают над созданием функционирующих моделей квантовых процессоров.
- Молекулярные компьютеры, представляют собой вычислительные системы, которые используют при работе вычислительные возможности молекул, как правило, органического происхождения. Молекулярные компьютеры основаны на идее вычислительных возможностей расположения атомов в пространстве.
С развитием технологий и применением инновационных материалов удается сделать процессоры более быстрыми и экономичными. Например, компания Intel в перспективе может отказаться от использования свинца в конструкции микропроцессора. Производители уделяют повышенное внимание внутренней архитектуре и стараются уменьшить габариты транзисторов. Это способствует повышению производительности устройств и удешевлении их производства. Для предотвращения роста токов утечки и повышения энергопотребления требуется использовать новый диэлектрик для более компактных транзисторов.
Увеличение объема кэша должно положительно влиять на параметр скорости работы программного обеспечения. Теоретически, данное нововведение приведет к ускорению работы приложений, основанных на сканировании трактов данных. Благодаря новым техпроцессам, будущие процессоры будут обладать низким тепловыделением и улучшенным температурным режимом работы.
Есть предположение, что усовершенствованные чипы должны стать гетероструктурными. При условии полной гетероструктурности внутреннее строение процессора перемешано, то есть компоненты всех сопроцессоров встроены во внутреннее пространство вычислительных ядер так, что отделить их на плате не представляется возможным. Возможно, потребуются пара особых узлов, которые будут располагаться внутри процессора, и специальная сетка сверху для объединения всех элементов на верхнем уровне.
Важным шагом в будущем производстве процессоров является переход от дискретной логики к непрерывной. Также усовершенствованные модификации чипов, скорее всего, будут обладать 3D-структурой. При этом транзисторы располагаются на конструктивной схеме не планарно, а в объеме, то есть несколькими слоями, связанными друг с другом в вертикальном направлении. Таким образом, структура будущих процессоров будет представлять собой мультиполигональный объект, в котором каждый компонент граничит с десятком других элементов. Возможно, по этой причине сигналы начнут передаваться в нескольких направлениях одновременно.
Внешние (периферийные) устройства компьютера
Рассмотрим только основные внешние устройства компьютера, так как если перечислять все, то чернила закончатся ? Внешние устройства персонального компьютера еще называют периферийными устройствами. Это устройства которые обеспечивают связь компьютера с пользователем, объектами управления либо с другим компьютером, то есть с окружающей средой. Внешние устройства делят на устройства Ввода и Вывода.
Устройства Ввода
Клавиатура. Пожалуй самое главное (во всяком случае на момент написания заметки :)) периферийное устройство Ввода информации в ПК. Клавиатура (в народе еще кличут «Клава») — это набор кнопок (клавиш), которые расположены в определенном порядке. На кнопках изображены буквы, цифры и различные знаки. Также на клавиатуре могут быть установлены дополнительные клавиши для различных действий.
Компьютерная мышь. Устройство Ввода получившее распространение с появление графического интерфейса на ПК. С помощью мышки (кнопок и колесика) можно отдавать различные команды компьютеру и управлять курсором на мониторе. При перемещении компьютерной мышки на горизонтальном столе курсор на мониторе также передвигается (по правилам координатной плоскости). Мышку также называют координатным устройством ввода.
Устройств ввода много. Мы рассмотрели два основных. Кроме них к устройствам ввода можно отнести: сканер, сенсорный экран, микрофон, веб-камеру и т.д.
Устройства вывода
Монитор. Это экран, на который с помощью видеосигнала выводится информация. Видеосигнал формирует электронное внутреннее устройство вывода, которое называется видеокартой. О ней мы еще поговорим чуть ниже.
Принтер. Слово принтер произошло от англ. Printer, Print — печатать. Он предназначен для преобразования цифровой информации хранящейся на компьютере в аналоговую, доступную для нашего с вами понимания, а также для её вывода (распечатывания) в виде текста, рисунка или графики, на твердый физический носитель (бумага).
Акустическая система. Говоря по простому — это звуковые колонки, которые предназначены для вывода звуковой информации. Звуковая карта преобразует цифровую информацию хранящуюся на компьютере в звук и выводит его через акустическую систему. Устройств вывода также много и перечислять их всех нет смысла. Основные из них мы с вами рассмотрели. Поэтому, давайте уже от периферийных (внешних) устройств ПК перейдем к внутренним.
Устройство процессора
Основными компонентами ЦП являются:
- арифметико-логическое устройство (АЛУ) выполняет основные математические и логические операции;
- управляющее устройство (УУ), от которого зависит согласованность работы компонентов ЦП и его связь с другими устройствами;
- шины данных и адресные шины;
- регистры, в которых временно хранится текущая команда, исходные, промежуточные и конечные данные (результаты вычислений АЛУ);
- счетчики команд;
- кэш-память хранит часто используемые данные и команды. Обращение в кэш-память гораздо быстрее, чем в оперативную память, поэтому, чем она больше, тем выше быстродействие ЦП.
Готовые работы на аналогичную тему
Рисунок 3. Упрощенная схема процессора
Подытожим на примере
Чтобы подвести итоги, кратко рассмотрим архитектуру процессора Intel Core 2. Это было еще в 2006 году, поэтому некоторые детали могут быть устаревшими, но информации о новых разработках отсутствуют в публичном доступе.
На самом верху располагается кэш команд и буфер ассоциативной трансляции. Буфер помогает процессору определить, где в памяти располагаются необходимые команды. Эти инструкции хранятся в кэше команд первого уровня, а после этого отправляются в предекодер, так как из-за сложностей архитектуры x86 декодирование происходит во множество этапов. Сразу же за ними идет предсказатель переходов и предвыборщик кода, которые снижают вероятность возникновения потенциальных проблем со следующими командами.
Далее команды отправляются в очередь команд. Вспомните, как внеочередное исполнение позволяет процессору выбрать именно ту команду, которую практичнее всего выполнить в конкретный момент из очереди текущих инструкций. После того, как процессор определил нужную команду, та декодируется во множество микроопераций. В то время как команда может содержать сложную для ЦП задачу, микрооперации представляют собой детализированные задачи, которые процессору легче интерпретировать.
Затем эти инструкции попадают в таблицу псевдонимов регистров, переупорядочивающий буфер и станцию резервации. Подробно расписать их принцип работы в одном абзаце, увы, не получится, так как это — информация, которую обычно подают на последних курсах технических вузов. Если в двух словах, то все они используются в процессе внеочередного исполнения для управления зависимостями между командами.
На самом деле, у каждого ядра процессора множество арифметическо-логических устройств и портов памяти. Команды отправляются в станцию резервации, пока не освободится устройство или порт. Затем команда обрабатывается с помощью кэша данных первого уровня, а полученный результат сохраняется для дальнейшего использования, после чего процессор может приступать к следующей задаче. На этом все!
Пусть эта статья и не предназначалась для того, чтобы служить исчерпывающим руководством по тому, как работает каждый из процессоров, она должна дать вам базовое представление об их внутренней работе и сложности. К сожалению, о том, как действительно работают современные процессоры, знают лишь работники Intel и AMD, поэтому информация, описанная в этой статье — лишь вершина айсберга, ведь каждый пункт, описанный в тексте — это результат огромного количества исследований и разработок.