Урок 7: процессор и цикл «выборка-декодирование-выполнение» (Fetch-Decode-Execute)
У нас есть два компонента: вычислительный блок (ALU из урока о комбинационной логике) и быстрая память (регистры из урока о памяти). Теперь мы соберём из них полноценный процессор (CPU) и увидим, как он выполняет программу, команда за командой. Мы познакомимся с его частями: устройством управления,
Процессор — это неутомимый работник, без остановки повторяющий один и тот же цикл: выбрать следующую команду, понять, что она говорит, выполнить её, перейти к следующей. Тактовый генератор отбивает ритм, а счётчик команд отмечает, где мы находимся в коде.
- процессор (CPU, центральный процессор)
- Центральное устройство, которое выполняет программы: оно извлекает команды из памяти, декодирует и выполняет их с помощью ALU и регистров, одну за другой.
- устройство управления
- Дирижёр процессора: оно декодирует каждую команду и посылает сигналы, которые направляют ALU, регистры и память, чтобы те выполняли нужные шаги в нужном порядке.
- регистровый файл
- Совокупность всех регистров внутри процессора, хранящих значения, над которыми команды работают в данный момент, — самая быстрая память, ближайшая к ALU.
- счётчик команд (PC)
- Специальный регистр, хранящий адрес следующей команды для выборки. Обычно он переходит к следующей команде; переход просто записывает в него другой адрес.
- регистр команд (IR)
- Регистр, хранящий текущую команду, извлечённую из памяти, чтобы устройство управления могло декодировать и выполнить её.
- тактовый цикл
- Одиночный тик тактового генератора процессора, задающий темп всех операций. Современный процессор совершает миллиарды тактов в секунду (гигагерцы).
- выборка-декодирование-выполнение (Fetch-Decode-Execute)
- Базовый цикл процессора: выбрать команду, на которую указывает счётчик команд, декодировать её смысл, выполнить её, продвинуть счётчик — и повторить.
- шина
- Пучок проводов, передающий данные, адреса и управляющие сигналы между процессором, памятью и другими компонентами, — «дорога», по которой течёт информация.
- модель фон Неймана
- Архитектура, в которой код (команды) и данные хранятся вместе в одной и той же памяти, и процессор извлекает оттуда как команды, так и данные по одним и тем же шинам.