В какой последовательности процессор выполняет программу

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

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

Функция ЦП

(1) Контроль процедуры

ЦП контролирует последовательность выполнения программ, выполняя инструкции, что является важной функцией ЦП.

(2) Управление работой

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

(3) Контроль времени

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

04. Основы устройства компьютера. Архитектура процессора. [Универсальный программист]

(4) Обработка данных

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

Компонент CPU

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

Калькулятор

Арифметический блок состоит из арифметико-логического блока (Арифметико-логический блок, ALU), регистра накопления (AC), регистра буфера данных (DR) и регистра состояния состояния. Он является компонентом обработки данных и выполняет различные арифметические и логические операции компьютера. . По сравнению с контроллером арифметический блок принимает команду контроллера действовать, то есть все операции, выполняемые арифметическим блоком, направляются управляющим сигналом, выдаваемым контроллером, поэтому он является исполнительным компонентом.

Арифметико-логический блок (АЛУ)

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

Регистр накопления (AC)

AC обычно для краткости называется аккумулятором.Это регистр общего назначения, функция которого заключается в обеспечении рабочей области для ALU, когда арифметико-логический блок арифметического блока выполняет арифметические или логические операции. Окончательный результат вычислений помещается в AC, поэтому в арифметическом блоке есть как минимум один регистр накопления.

Регистр буфера данных (DR)

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

КАК РАБОТАЕТ КЭШ ПРОЦЕССОРА | ОСНОВЫ ПРОГРАММИРОВАНИЯ

Государственный регистр состояния (ПСР)

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

Контроллер

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

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

Читайте также:
Программа для вышивки сага как работать

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

Регистр инструкций (IR)

Когда ЦП выполняет команду, он сначала извлекает ее из внутренней памяти в буферный регистр, а затем отправляет в IR для временного хранения. Декодер команд генерирует различные инструкции микроопераций в соответствии с содержимым IR, контролирует работу других компонентов и завершает все Желаемая функция.

Счетчик программ (ПК)

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

Адресный регистр (AR)

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

Декодер инструкций (ID)

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

Зарегистрировать группу

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

Процесс выполнения инструкции

Инструкция MOV

Этап снятия пальцев:

В программный счетчик ПК загружается адрес 101 первой инструкции, содержимое ПК помещается на шину адреса команд, инструкция декодируется и запускается команда чтения. Команда MOV считывается с адреса 101 и загружается в регистр команд IR через шину команд IBus.Содержимое программного счетчика PC увеличивается на 1 и становится 102, готовым для следующей команды. Код операции в регистре инструкций IR декодируется, и ЦП распознает, что это инструкция MOV, и этап выборки инструкции завершается.

Этап выполнения:

Операционный контроллер OC отправляет управляющий сигнал в общий регистр и выбирает R1 (10) в качестве исходного регистра и RO (00) в качестве целевого регистра. OC отправляет управляющий сигнал в ALU, назначает ALU для выполнения операции передачи, открывает трехступенчатый вентиль выхода ALU и отправляет выход ALU (10) на шину данных DBus. На DBus могут быть только одни данные в любой момент. Данные в DBus вводятся в регистр буфера данных DR, а данные в DR вводятся в целевой регистр RO. Содержимое RO ​​изменяется с 00 на 10, пока не будет выполнена инструкция MOV.

Инструкция LAD

Этап снятия пальцев:

Этап выборки инструкции LAD точно такой же, как и у инструкции MOV.

Этап выполнения:

OC выдает команду управления, открывает трехступенчатый вентиль выхода IR, помещает прямой адресный код 6 в команду на шину данных DBus, загружает адресный регистр AR, считывает число 100 в блоке хранения чисел 6 в DBus и устанавливает Войдите в буферный регистр DR. Загрузите число 100 в DR в общий регистр R1, исходное значение 10 в R1 перезаписывается, и теперь выполняется инструкция LAD.

ДОБАВИТЬ инструкцию

Этап снятия пальцев:

Фаза выборки инструкции ADD такая же, как и для других инструкций.

Этап выполнения:

Операционный контроллер OC отправляет управляющий сигнал в общий регистр, выбирая R1 (100) в качестве исходного регистра и R2 (20) в качестве целевого регистра. ALU выполняет операцию сложения R1 и R2, открывает выходной трехступенчатый вентиль ALU, помещает результат операции 120 на шину данных DBus и затем вводит буферный регистр DR. Сигнал переноса, сгенерированный ALU, сохраняется в регистре слова состояния PSW, значение 120 в DR загружается в R2, а исходный номер 20 R2 перезаписывается. На этом выполнение инструкции ADD заканчивается.

Инструкция СТО

Этап снятия пальцев:

Фаза выборки команды STO такая же, как и у других команд.

Этап выполнения:

Операционный контроллер OC отправляет управляющий сигнал в общий регистр и выбирает R3 (30) в качестве адреса памяти данных. Откройте трехсторонний вентиль выхода регистра общего назначения, поместите адрес 30 в DBus и загрузите его в адресный регистр AR и декодируйте адрес. Операционный контроллер OC отправляет управляющий сигнал в общий регистр, выбирает R2 (120) в качестве данных записи цифровой памяти и помещает их в DBus. Запишите значение 120 в блок 30 хранения данных, и исходные данные 40 будут удалены. На этом выполнение инструкции STO заканчивается.

Читайте также:
Составить алгоритм и программу вычисления функции x вводится с клавиатуры

Инструкция JMP

Этап снятия пальцев:

Цикл выборки инструкции JMP такой же, как и у других инструкций.

Этап выполнения:

OC выдает команду управления, открывает трехступенчатый вентиль выхода IR, отправляет адресный код 101 в IR в DBus и вводит адресный код 101 на DBus в счетчик программ ПК, и первоначальный адрес 106 в ПК заменяется. Таким образом, следующая инструкция не выбирается из блока 106, а передается в блок 101. На этом цикл выполнения инструкции JMP заканчивается.

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

Интеллектуальная рекомендация

Упражнение по сценарию использования RabbitMQ: проверенный идентификатор пользователя, ограничение длины (12)

[list][*][b]Validated User ID[/b][/list] При отправке сообщения укажите идентификатор пользователя, и только имя пользователя текущего соединения может отправить сообщение (тест обнаружил, что имя пол.

Источник: russianblogs.com

Основной алгоритм работы процессора

Давайте рассмотрим последовательность действий процессора при выполнении очередного командного цикла. Командный цикл по своему содержанию в основном одинаков для всех машин и отличается лишь некоторыми частностями.

Запросы на пре-ия и пдп
Операционное Устройство

результат признаки рез-та

Рис. 4.3 Структура простейшего процессора и алгоритм его работы

Во время выполнения командного цикла процессор реализует следующую последовательность действий:

1. извлечение адреса команды из счетчика команд (блок управляющих регистров), получение самой команды из регистровой памяти и размещение кода команды в регистре команд (блок управляющих регистров) – выборка команды;

2. увеличение счетчика на единицу (если код команды занимает несколько ячеек памяти, то содержимое счетчика увеличивается на длину команды);

3. код операции посылается в устройство управления, более точно в ПЗУ, где он преобразуется в микропрограмму (КОП ассемблерной команды – это начальный адрес некоторой последовательности микрокоманд машинного кода) — декодирование команды;

4. формирование адреса операндов, извлечение операндов из памяти – выборка операндов;

5. выполнение заданной в ассемблерной команде операции – исполнение;

6. размещение результата операции в памяти – запись результата;

7. переход к пункту 1 или останов.

Когда мы говорим, что процессор обрабатывает информацию, то на самом деле мы имеем в виду следующее:

· организует обращение к памяти и выбирает операнды;

· выполняет команды программы;

· инициирует работу периферийных устройств;

· обрабатывает запросы, поступившие от устройств ЭВМ и внешней среды (например, запросы прерывания).

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

· память (кэш, ОП, ЖД и т.д.);

· регистры процессора (регистровый файл);

· регистры подсистемы ввода/вывода (порты ввода/вывода).

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

· микрооперация – 1 такт;

· команда ассемблера (микрокоманда) – несколько тактов;

· программа (микропрограмма) – множество команд ассемблера.

Источник: studopedia.su

Основной алгоритм работы процессора

Рассмотрим упрощенную структурную схему центрального процессора (ЦП) некоторой формальной ЭВМ (рис.1).

Рисунок 1 – Упрощенная структурная схема ЦП формальной ЭВМ

Назначение основных блоков процессора

Кроме основных блоков ЦП, представленных на упрощенной структурной схеме ЦП некоторой формальной ЭВМ, в состав процессора могут входить и другие блоки: блок прерывания, блок защиты памяти, блок контроля правильности работы и диагностики процессора.

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

Читайте также:
Браузером не является следующая программа Opera Firefox Outlook express Yandex браузер

Рассмотрим назначение основных блоков ЦП.

Блок связи с оперативной памятью

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

Блок «АЛУ»

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

АЛУ работает под управлением УУ.

Блок «УУ»

Этот блок вырабатывает последовательность управляющих сигналов, инициирующих выполнение соответствующей последовательности микрокоманд (находящихся в ПЗУ). Наряду с этим УУ координирует функционирование всех устройств компьютера посредством посылки управляющих сигналов.

В частности, блок «УУ» координирует обмен данными между ЦП и ОП; хранение и обработку информации; осуществляет интерфейс с пользователем; проводит тестирование и диагностику ЭВМ и др. Хотя блок «УУ» целесообразно рассматривать как отдельный блок ЦП, на практике большинство управляющих схем распределено по всей ЭВМ.

Блок управляющих регистров

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

Блок регистровой памяти

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

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

Основной алгоритм работы процессора

В общем случае основной алгоритм работы процессора ЭВМ можно представить в виде следующей последовательности шагов:

l программа загружается в ОП;

l адрес первой команды программы записывается в счетчик команд (СК), который находится в блоке управляющих регистров;

l содержимое СК пересылается в регистр адреса памяти, и в ОПпосылается сигнал управления считыванием;

l в соответствии со временем доступа к ОП адресуемое слово (в данном случае первая команда программы) извлекается из ОП и загружается в регистр данных памяти в интерфейсном блоке;

l содержимое регистра данных памяти пересылается в СК.

На этой стадии команда программы готова для ее декодирования в УУ и выполнения.

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

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

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

Помимо обмена данными между ОП и ЦП необходимо обеспечить обмен данными с внешними устройствами. Этот обмен осуществляют машинные команды, управляющие вводом/выводом информации.

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

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

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

Источник: poisk-ru.ru

Рейтинг
( Пока оценок нет )
Загрузка ...
EFT-Soft.ru