Центральный процессор: что за зверь такой?

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

Народная мудрость

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

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

Сердцем процессора является арифметико-логическое устройство (АЛУ). Его основное предназначение – производить арифметические (сложение, вычитание, умножение, деление), логические операции (логическое И, логическое ИЛИ, логическое НЕ) и сдвиговые операции.

 

Арифметико-логическое устройство работает последовательно: получил два числа на вход, сложил, отправил результат на выход, принял следующие два числа, перемножил их, отправил на выход и так до бесконечности. А что будет, если встроить процессору два «сердца»? Или даже 3-4? Смогут ли они работать одновременно? А почему бы и нет! Конечно, смогут! Так уже давно поступают многие производители. Вот сколько ядер у вашего процессора в рабочем компьютере? Два, четыре, а может даже и восемь? Количество ядер говорит о том, сколько АЛУ установлено в процессоре. Если у нас 4 ядра, значит, у нас есть 4 арифметико-логических устройств в процессоре, и они могут одновременно выполнять вычисления, каждый со своими входными данными и независимо друг от друга выдавать на выход результаты расчета.

Хочется еще остановиться на одной очень распространенной характеристике процессора – тактовой частоте. Мы встречаем надписи вроде этой: «Частота процессора 2,3 ГГц». Что же это значит? А значит это следующее. В каждом процессоре установлен тактовый генератор. Он формирует специальный сигнал, который называют синхронизирующим. Поскольку ЦП – многокомпонентная сложная структура, все его части нуждаются в едином управлении по времени. Этот синхросигнал как раз и предназначен для того, чтобы все составляющие блоки работали как единое целое. И частота, с которой данный генератор производит синхронизирующие сигналы, как раз является частотой процессора. Таким образом, 2,3 ГГц говорит нам о том, что в секунду посылается 2,3 млрд. синхронизирующих сигналов (вспомним школьный курс физики: частота – это величина обратная времени и показывает количество отсчетов в единицу времени). Время, проходящее между двумя соседними синхросигналами, называется тактом. Значит, чем выше частота, тем меньше длительность такта и тем быстрее выполнится команда.

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

mov esi, ebx

mul edx, ecx

Это похоже на какую-то непонятную шифровку, если вы никогда не работали с ассемблером. Но все на самом деле очень просто. Первая строка означает следующее: «Поместить значение (mov) из регистра ebx в регистр esi», а вторая означает «Перемножить значения (mul) в регистрах edx и ecx и результат поместить в регистр edx». Так что вот эти все сокращения обозначают просто имена регистров – регистров общего назначения (РОН). Таким образом, числа для операции считываются из регистров, затем производится сама операция и результат записывается обратно в один из регистров.

Здесь некоторые могут возмутиться: зачем нужны еще какие-то регистры (которых, к слову, совсем немного в процессоре), если у нас есть оперативная память? Разве ее недостаточно? Ответ однозначный: «Нет!» И, дабы окончательно смутить вопрошающих, добавим, что в процессоре есть еще одна разновидность памяти, называемая кэш. Более того, в современных процессорах ставится 3 уровня кэш-памяти (то есть по сути это еще 3 разных вида памяти)! А теперь пояснения: дело в том, что чем ближе к АЛУ размещается память, тем она быстрее. А чем она быстрее, тем дороже. Именно поэтому РОНов так мало, но они самые быстрые, разных уровней кэш-памяти больше, причем, чем больше номер уровня, тем больше памяти он включает и тем медленнее работает. В среднем, кэш-память работает в 20-50 раз медленнее регистровой памяти. Оперативная память проигрывает в скорости РОНам примерно в 1000 раз. Пока число попадет из оперативной памяти в процессор, он может успеть сделать больше количество вычислений. Но обращаем ваше внимание, что если РОН и кэш входят в состав процессора, то оперативная память живет своей отдельной жизнью.

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

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

Игорь Пацовский

Версия для печатиВерсия для печати

Рубрики: 

  • 1
  • 2
  • 3
  • 4
  • 5
Всего голосов: 0
Заметили ошибку? Выделите ее мышкой и нажмите Ctrl+Enter!

Читайте также

 

Комментарии

Страницы

Аватар пользователя leo3

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

Аватар пользователя mike

Популярно рассказать - что там внутри - важно и нужно. Задача, имхо, непростая.

Совершенно верно, leo3! Надо рассматривать CPU в развитии "от простого к сложному". От 8080 до современных. А не так, как в статье.

Страницы