Схема работы процессора компьютера

Схема работы процессора компьютера

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

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

Чем занимается проц?

Чтобы понять, как работает ЦПУ, нужно кратко уяснить, что он делает.

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

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

  • CPU работает с оцифрованными данными, представленным в виде двоичного кода. Фактически с ними он выполняет арифметические и логические операции. Если вы имели дело с простыми программками или алгоритмами, то это как раз оно.

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

Но как работает эта схема?

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

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

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

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

Джордж Буль в XIX веке предложил систему логических операций И, ИЛИ, НЕ и их производные элементы (алгебру логики).

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

Все эти идеи объединил немецкий изобретатель Конрад Цузе.

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

Спустя три года Цузе усовершенствовал свое детище, но главное, он предложил первый язык программирования «Планкалкюль».

Прогресс не стоит на месте

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

Сначала реле были заменены ламповыми приборами.

А в 1957 год компания NCR из США поразила мир компактной ЭВМ на полупроводниковых транзисторах. Через пару лет Несколькими изобретателями были заложены основы технологии объединения электронных схем на одном кристалле.

На что способны миллиарды транзисторов?

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

Итак, что же представляет собой современный ЦПУ?

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

  • в 2004 году их число на кристалле было чуть больше 500 миллионов;
  • 2006-й год – 1 миллиард;
  • в 2008 – 2 миллиарда транзисторов.

Темпы роста увеличения плотности транзисторов немного упали, что обусловлено возможностями технологии их нанесения.

Сейчас для этого используется многоядерность и нанотехнология (актуальна 14 нм, ожидают от производителей 10 нм).

Вот пример процессора 2017 года.

Intel SKL Core i9-7000X заявлены около 6,5–7 миллиардов транзисторов. Но если честно транзисторы сейчас никто не считает.

Всех интересует тактовая частота, число ядер и разрядность (64 или 32 бита) и энергопотребление.

Структура ЦПУ и распределение функциональных «обязанностей»

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

  • Вычислительное ядро, которых может быть несколько. Состоит из Устройства управления, направляющего данные и команды в виде сигналов в соответствии с полученными инструкциями и Арифметико-логического устройства, непосредственно занимающегося вычислением и реализацией условий сложных алгоритмов.
  • За преобразование цифровых данных из памяти компьютера в поток сигналов, понятных процессору отвечает дешифратор.
  • При этом данные разбиваются на блоки по 8, 16, 32 или 64 бита, которые содержатся в специальных ячейках, именуемых регистрами.Они выполнены по схеме триггера. Их максимальный размер означает разрядность процессора. И вместе с тактовой частотой обработки данных этот параметр определяет его производительность. Каждый регистр имеет свое назначение, так, например, A, B и C предназначены для обрабатываемых данных. ESP – их адрес в ОЗУ, Z – для последней операции сравнения, EIP – сообщает об адресации следующей инструкции в оперативке. Связка регистров и ядра – базовый элемент процессора.
Читайте также:  Можно ли переименовать домен

  • Важным компонентом CPU является многоуровневая кэш память, подгружающая информацию из ОЗУ. Непосредственно с ядром связана сверхбыстрая но самая маленькая L1, потом идет промежуточная L2, и на внешнем уровне находится большая по объему, но менее скоростная L В любом случае получение данных из нее происходит намного быстрее, чем из оперативки.
  • Взаимодействие ЦПУ с другими компонентами ПК на физическом уровне происходит посредством шин, контакты от которых выводятся на сокет процессора на материнской плате. Они так же имеют разрядность соответствующую размеру основных реестров. Шина данных работает с ОЗУ, шина синхронизации – с генератором частотных импульсов. Адресная шина общается с другими устройствами, а шина перезапуска – обнуляет текущее состояние CPU.

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

Команды, которые слышит процессор

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

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

Все эти функции прописаны для CPU в виде набора определенных инструкций.

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

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

Быстродействие процессора, как я уже сказал, зависит от тактовой частоты.

Например, не самый мощный четырех ядерный AMD Ryzen 5 2400G при 3.6GHz будет способен выполнить более 14 миллиардов операций в секунду. Поверьте, этого вполне достаточно для решения большинства компьютерных задач.

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

На этом я желаю закончить статью и попрощаться с вами, пожелав всем успехов!

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

Как устроен процессор компьютера

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

Архитектура

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

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

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

  1. Модуль выборки инструкций. Здесь осуществляется распознавание инструкций по адресу, который обозначается в счетчике команд. Число одновременного считывания команд напрямую зависит от количества установленных блоков расшифровки, что помогает нагрузить каждый такт работы наибольшим количеством инструкций.
  2. Предсказатель переходов отвечает за оптимальную работу блока выборки инструкций. Он определяет последовательность исполняемых команд, нагружая конвейер ядра.
  3. Модуль декодирования. Данная часть ядра отвечает за определения некоторых процессов для выполнения задач. Сама задача декодирования очень сложная из-за непостоянного размера инструкции. В самых новых процессорах таких блоков встречается несколько в одном ядре.
  4. Модули выборки данных. Они берут информацию из оперативной или кэш-памяти. Осуществляют они именно выборку данных, которая необходима на этот момент для исполнения инструкции.
  5. Управляющий блок. Само название говорит уже о важности данного компонента. В ядре он является главнейшим элементом, поскольку производит распределение энергии между всеми блоками, помогая выполнять каждое действие вовремя.
  6. Модуль сохранения результатов. Предназначен для записи после окончания обработки инструкции в RAM. Адрес сохранения указывается в исполняющейся задаче.
  7. Элемент работы с прерываниями. ЦП способен выполнять сразу несколько задач благодаря функции прерывания, это позволяет ему останавливать ход работы одной программы, переключаясь на другую инструкцию.
  8. Регистры. Здесь хранятся временные результаты инструкций, данный компонент можно назвать небольшой быстрой оперативной памятью. Часто ее объем не превышает несколько сотен байт.
  9. Счетчик команд. Он хранит в себе адрес команды, которая будет задействована на следующем такте процессора.
Читайте также:  Значки вибер и ватсап

Системная шина

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

Кэш-память

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

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

Сокет (разъем)

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

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

Видеоядро

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

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

Отблагодарите автора, поделитесь статьей в социальных сетях.

  • Коротко о главном, 4 июля 2019 в 13:01
  • Александр Ланский

Инструмент проще, чем машина. Зачастую инструментом работают руками, а машину приводит в действие паровая сила или животное.

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

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

Два основных компонента процессора

Устройство управления

Устройство управления (УУ) помогает процессору контролировать и выполнять инструкции. УУ сообщает компонентам, что именно нужно делать. В соответствии с инструкциями он координирует работу с другими частями компьютера, включая второй основной компонент — арифметико-логическое устройство (АЛУ). Все инструкции вначале поступают именно на устройство управления.

Существует два типа реализации УУ:

  • УУ на жёсткой логике (англ. hardwired control units). Характер работы определяется внутренним электрическим строением — устройством печатной платы или кристалла. Соответственно, модификация такого УУ без физического вмешательства невозможна.
  • УУ с микропрограммным управлением (англ. microprogrammable control units). Может быть запрограммирован для тех или иных целей. Программная часть сохраняется в памяти УУ.

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

Арифметико-логическое устройство

Это устройство, как ни странно, выполняет все арифметические и логические операции, например сложение, вычитание, логическое ИЛИ и т. п. АЛУ состоит из логических элементов, которые и выполняют эти операции.

3–5 апреля, Москва, беcплатно

Большинство логических элементов имеют два входа и один выход.

Ниже приведена схема полусумматора, у которой два входа и два выхода. A и B здесь являются входами, S — выходом, C — переносом (в старший разряд).

Схема арифметического полусумматора

Хранение информации — регистры и память

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

Регистры

Регистр — минимальная ячейка памяти данных. Регистры состоят из триггеров (англ. latches/flip-flops). Триггеры, в свою очередь, состоят из логических элементов и могут хранить в себе 1 бит информации.

Прим. перев. Триггеры могут быть синхронные и асинхронные. Асинхронные могут менять своё состояние в любой момент, а синхронные только во время положительного/отрицательного перепада на входе синхронизации.

Читайте также:  Как сохранять музыку в fl studio 12

По функциональному назначению триггеры делятся на несколько групп:

  • RS-триггер: сохраняет своё состояние при нулевых уровнях на обоих входах и изменяет его при установке единице на одном из входов (Reset/Set — Сброс/Установка).
  • JK-триггер: идентичен RS-триггеру за исключением того, что при подаче единиц сразу на два входа триггер меняет своё состояние на противоположное (счётный режим).
  • T-триггер: меняет своё состояние на противоположное при каждом такте на его единственном входе.
  • D-триггер: запоминает состояние на входе в момент синхронизации. Асинхронные D-триггеры смысла не имеют.

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

Принцип действия RS-триггера

Память (ОЗУ)

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

Прим. перев. Оперативная память бывает статической и динамической — SRAM и DRAM соответственно. В статической памяти ячейками являются триггеры, а в динамической — конденсаторы. SRAM быстрее, а DRAM дешевле.

Команды (инструкции)

Команды — это фактические действия, которые компьютер должен выполнять. Они бывают нескольких типов:

  • Арифметические: сложение, вычитание, умножение и т. д.
  • Логические: И (логическое умножение/конъюнкция), ИЛИ (логическое суммирование/дизъюнкция), отрицание и т. д.
  • Информационные: move , input , outptut , load и store .
  • Команды перехода: goto , if . goto , call и return .
  • Команда останова: halt .

Прим. перев. На самом деле все арифметические операции в АЛУ могут быть созданы на основе всего двух: сложение и сдвиг. Однако чем больше базовых операций поддерживает АЛУ, тем оно быстрее.

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

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

Группу инструкций принято называть набором команд (англ. instruction set).

Тактирование процессора

Быстродействие компьютера определяется тактовой частотой его процессора. Тактовая частота — количество тактов (соответственно и исполняемых команд) за секунду.

Частота нынешних процессоров измеряется в ГГц (Гигагерцы). 1 ГГц = 10⁹ Гц — миллиард операций в секунду.

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

Выполнение инструкций

Инструкции хранятся в ОЗУ в последовательном порядке. Для гипотетического процессора инструкция состоит из кода операции и адреса памяти/регистра. Внутри управляющего устройства есть два регистра инструкций, в которые загружается код команды и адрес текущей исполняемой команды. Ещё в процессоре есть дополнительные регистры, которые хранят в себе последние 4 бита выполненных инструкций.

Ниже рассмотрен пример набора команд, который суммирует два числа:

  1. LOAD_A 8 . Это команда сохраняет в ОЗУ данные, скажем, . Первые 4 бита — код операции. Именно он определяет инструкцию. Эти данные помещаются в регистры инструкций УУ. Команда декодируется в инструкцию load_A — поместить данные 1000 (последние 4 бита команды) в регистр A .
  2. LOAD_B 2 . Ситуация, аналогичная прошлой. Здесь помещается число 2 ( 0010 ) в регистр B .
  3. ADD B A . Команда суммирует два числа (точнее прибавляет значение регистра B в регистр A ). УУ сообщает АЛУ, что нужно выполнить операцию суммирования и поместить результат обратно в регистр A .
  4. STORE_A 23 . Сохраняем значение регистра A в ячейку памяти с адресом 23 .

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

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

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

Если данные в кэше и памяти не совпадают, то они помечаются грязными битами (англ. dirty bit).

Поток инструкций

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

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

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

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