Как называется часть процессора которая выполняет команды

Обновлено: 07.07.2024

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

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

  1. Принцип использования двоичной системы счисления для представления информации в ЭВМ.
  2. Принцип иерархичности Запоминающих Устройств (ЗУ). Регистры ->ОЗУ -> МБ (магнитные барабаны) -> МЛ(магнитные ленты).
  3. Принцип адресности. Структурно основная память состоит из перенумерованных ячеек; процессору в произвольный момент времени доступна любая ячейка. Отсюда следует возможность давать имена областям памяти, так, чтобы к запомненным в них значениям можно было впоследствии обращаться или менять их в процессе выполнения программ с использованием присвоенных имен.

Эти принципы стали классическими и получили название фон-Неймановских. Большинство современных компьютеров построено в согласии с этими принципами.

Теперь очень коротко вспомним, что такое программа и алгоритм. Понятие алгоритма (слово алгоритм произошло от имени Мухаммед аль Хорезми, написавшем в IX веке трактат по арифметике десятичных чисел), не замыкается только областью вычислительной техники. По интуитивному определению: Алгоритм - это совокупность правил, строго следуя которым можно перейти от исходных данных к конечному результату. В ВТ под "совокупностью правил" понимается последовательность арифметических и логических операций. Программа - это запись алгоритма в форме, воспринимаемой ЭВМ. Любая программа состоит из отдельных машинных команд. Каждая команда предписывает определенное действие и указывает, над какими операндами это действие производится. Программа представляет собой совокупность команд, записанных в определенной последовательности, обеспечивающих решение задачи на ЭВМ.

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

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

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

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

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

Эти устройства соединены каналами связи, по которым передается информация.

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

Общая схема компьютера

Функции памяти:

  • приём информации из других устройств;
  • запоминание информации;
  • выдача информации по запросу в другие устройства машины.

Функции процессора:

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

Обычно эти два устройства выделяются чисто условно, конструктивно они не разделены.

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

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

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

  • сумматор — регистр АЛУ, участвующий в выполнении каждой операции;
  • счетчик команд — регистр УУ, содержимое которого соответствует адресу очередной выполняемой команды; служит для автоматической выборки программы из последовательных ячеек памяти;
  • регистр команд — регистр УУ для хранения кода команды на период времени, необходимый для ее выполнения. Часть его разрядов используется для хранения кода операции, остальные — для хранения кодов адресов операндов

Давайте поближе познакомимся с компьютером, он не так сложен, как кажется на первый взгляд. Большие ЭВМ, которые существуют и сейчас, называемые main frame, выглядят как большие шкафы, или стойки, расположенные в больших просторных залах. Как эти стойки соединены между собой сразу и не увидишь, кабели лежат под полом в так называемых кабельных каналах. Микрокомпьютеры, например, такие как в электронных часах или в микроволновой печи, вообще трудно разглядеть. И дело не в том, что они находятся внутри других устройств. Просто обычно они выполнены на одном кристалле кремния, залиты пластмассой и называются микросхемой. Персональный компьютер выглядит как несколько стоящих на столе и соединенных между собой устройств. Вы хорошо знаете их названия: системный блок, монитор, клавиатура, принтер. Это, разумеется, не полный список. Есть еще сканеры, модемы, мышки, графопостроители (плоттеры) и многое другое. И все - таки, все компьютеры устроены примерно одинаково. В каждом есть центральный процессор, память и внешние устройства. Центральный процессор выполняет вычисления и управляет остальными компонентами компьютера. Память хранит данные. Внешние устройства обеспечивают взаимодействие с внешним миром, например с пользователем. Такую структуру вычислительных машин предложил еще Ч. Бэббедж. Большое разнообразие этих основных компонент и способов их соединения и дает весь невообразимый мир компьютеров. Здесь мы рассмотрим физическую организацию персонального компью­тера фирмы IBM, его периферию и принципы сопряжения отдельных компонентов. По­скольку предлагаемое пособие не является руководством по конструированию ЭВМ, мы не будем рассматривать эти вопросы слишком подробно. Приведенных сведений, однако, достаточно, чтобы понять принципы работы IBM/PC, состав дополнительного оборудования, подключаемого к компьютеру и особенности его взаимодействия с остальной системой. Компьютер во многом напоминает автомобиль. Он также состоит из нескольких отдельных устройств, каждое из которых подключено к одному блоку, называемому системным, который играет роль координирующего устройства. Заглянем внутрь системного блока (не нужно пытаться проникнуть внутрь монитора — там нет ничего интересного, к тому же это опасно): открываем корпус и видим какие-то платы, блоки, соединительные провода. Все основные платы, входящие в состав любой модели IBM/PC, размещаются в большом блоке, получившем название системного. Системный блок включает все необходимые компоненты, позволяющие компьютеру работать без каких-либо дополнений. Составляющие IBM/PC можно рассматривать с трех различных точек зрения: по тому, где они размещаются, как они функционируют, и как они взаимодействуют друг с другом. Рассмотрим вопрос пространственного размещения этих составляющих. Физически составляющие IBM/PC можно разделить на компоненты системной платы и платы расширения. На системной плате находятся микропроцессор, первые 64К памяти и "встроенные" программы, такие как базовые программы ввода/вывода (BIOS), записанные в микросхемах ПЗУ. Системная плата имеет несколько свободных разъемов, предназначенных для подключения дополнительного оборудования, которое может быть введено в состав компьютера. Блоки расширения вставляются в эти разъемы, располагаясь над системной платой. Чтобы понять их функциональное назначение, посмотрим на структурную схему типичного компьютера (рис. 1). Она не претендует на безусловную точность и имеет целью лишь показать назначение, взаимосвязь и типовой состав элементов и для того, чтобы им пользоваться (так же, как в случае с автомобилем) не обязательно знать назначение каждой детали. Однако, чтобы понимать как работает система, необходимо иметь хотя бы приближенное представление о том, как функционируют от­дельные ее части.

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

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

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

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

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

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

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

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

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

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

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

3–5 декабря, Онлайн, Беcплатно

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

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

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

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

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

Регистры

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

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

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

  • 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 . Это команда сохраняет в ОЗУ данные, скажем, <1100 1000> . Первые 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).

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

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

Иллюстрация потока инструкций в статье «Как работает процессор?»

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

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

Назначение. Принцип работы.

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

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

Общая функциональная структура МП.


Структурная схема процессора:


Разъяснения к структурной схеме:

- ОП обычно не входит в состав МП и реализуется внешними схемами, но в небольших ЭВМ, ОЭВМ может совмещаться с ЦП.

- АЛУ процессора выполняет логические, арифметические операции над данными. В МП может имеется одно универсальное АЛУ для всех операций или несколько специальных АЛУ для отдельных видов операций.

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

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

- Блок регистровой памяти - местная память более высокого быстродействия чем ОП. Регистры этого блока служат для хранения операндов, в качестве аккумуляторов, базовых и индексных регистров, указателя стека.

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

- Блок контроля и диагностики служит для обнаружения сбоев и отказов в аппаратуре МП, восстановление работы программы после сбоев и поиска места неисправности при отказах.

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

Цифровые устройства и микропроцессоры Лекция 2 Система команд процессора Ч1 Микропроцессор, Электроника, Длиннопост

Внутри АЛУ находятся блоки, каждый из которых может выполнять

одно или несколько действий, какой именно блок будет использоваться – определяется командой. Рассмотрим подробнее, каким образом это происходит.

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

Цифровые устройства и микропроцессоры Лекция 2 Система команд процессора Ч1 Микропроцессор, Электроника, Длиннопост

Данные, с которыми работает АЛУ – операнды и результат – хранятся в одном из блоков

памяти. Работа с памятью – также функция АЛУ. Скорость обмена данными с внешними блоками памяти очень низкая по сравнению со скоростью работы АЛУ. Поэтому внутри МП предусмотрены ячейки памяти – регистры общего назначения, скорость чтения и записи в которые совпадает со скоростью работы АЛУ. В качестве операндов обычно может использовать только данные, которые хранятся во внутренних регистрах МК общего назначения. Результат также будет помещен в один из этих регистров. В команде обычно указано, из какого регистра берутся входные операнды и в какой регистр должен быть записан результат. Для работы с данными АЛУ сначала копирует данные из памяти в регистры, для чего предусмотрены отдельные команды.Все данные, необходимые для работы в ближайшее время, должны быть скопированы из памяти в регистры. А если получен результат, который не будет использоваться в ближайшее время, он может быть скопирован в память. Этот алгоритм позволяет существенно ускорить работу процессора. Хранить все данные в регистрах невозможно, т.к. объем регистров значительно меньше объема оперативной памяти, т.к. сделать быструю память большого объёма на одном кристалле с АЛУ технологически сложно и дорого.

Цифровые устройства и микропроцессоры Лекция 2 Система команд процессора Ч1 Микропроцессор, Электроника, Длиннопост

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

пересылки данных, арифметические команды, логические команды и команды переходов.

Цифровые устройства и микропроцессоры Лекция 2 Система команд процессора Ч1 Микропроцессор, Электроника, Длиннопост

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

Цифровые устройства и микропроцессоры Лекция 2 Система команд процессора Ч1 Микропроцессор, Электроника, Длиннопост

Группа арифметических команд реализует большинство арифметических операций –сложение, вычитание, умножение, деление, возведение в степень и другие. Операции над числами с фиксированной запятой (т.е. целыми числами) и над числами с плавающей запятой осуществляются разными командами, т.к. внутри АЛУ эти операции будут выполняться в разных блоках. Также к арифметическим командам относят команду очистка (т.е. запись нулевого значения в некоторый регистр), команды инкремента и декремента – т.е. увеличения или уменьшения значения на 1 и команда сравнения. Команда сравнения в результате выдает 0, если число отрицательно и 1, если число положительно

Цифровые устройства и микропроцессоры Лекция 2 Система команд процессора Ч1 Микропроцессор, Электроника, Длиннопост

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

Цифровые устройства и микропроцессоры Лекция 2 Система команд процессора Ч1 Микропроцессор, Электроника, Длиннопост

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

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