Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Л01_Базовая организация ПК,37.docx
Скачиваний:
11
Добавлен:
13.11.2019
Размер:
1.19 Mб
Скачать

3. Процессор. Основные компоненты и их назначение

Центральный процессор (Central Processor Unit, CPU) осуществляет основные действия по выполнению команд.

В классическом варианте ЦП можно выделить следующие составляющие части:

  • устройство управления - control unit,

  • устройство для формирования (вычисления) адресов операндов- device for the formation of (computing) address operand,

  • арифметико-логическое устройство (АЛУ), выполняющее действия над операндами - arithmetic logic unit (ALU),

  • декодер команд - instruction decoder,

  • регистры для хранения данных, адресов и служебной информации - registers for storing data, address and service information.

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

  • Устройство формирования адресов - вычисляет адрес, по которому произойдет очередное обращение к участку памяти, содержащему операнд.

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

М инимальный набор операций (машина Фон Неймана), которые должно выполнять АЛУ, включает операции сложения, инверсии и логического "И", все остальные операции можно получить на базе этих.

Регистры. Минимальный набор регистров, необходи-мый для функционирования процессора включает следую-щие регистры (Рис. 7, 8):

Рис. 7 Регистры процессора MC68HC05

  • аккумулятор - хранит результаты операций;

  • счетчик команд - содержит адрес следующей команды;

  • регистр адреса - содержит адрес операнда, используется при косвенной адресации;

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

Каждый процессор имеет свой набор регистров.

Можно выделить две группы процессоров:

● с регистрами общего назначения (регистровыми файлами) и

● со специализированным набором регистров (см. пример МП Intel х86).

В первом случае все регистры регистрового файла одинаковы и их можно использовать произвольно в командах (упрощается программирование).

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

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

Архитектура x86 (справка)

IP (англ. Instruction Pointer) — регистр, обозначающий смещение следующей команды относительно кодового сегмента.

IP — 16-битный (младшая часть EIP), EIP — 32-битный аналог (младшая часть RIP), RIP — 64-битный аналог

Сегментные регистры — Регистры указывающие на сегменты.

CS (англ. Code Segment), DS (англ. Data Segment), SS (англ. Stack Segment), ES, FS, GS

В реальном режиме работы МП сегментные регистры содержат адрес начала 64Kb сегмента, смещенный вправо на 4 бита.

В защищенном режиме работы процессора сегментные регистры содержат селектор сегмента памяти, выделенного ОС.

CS — указатель на кодовый сегмент. Связка CS:IP (CS:EIP/CS:RIP — в защищенном/64-битном режиме) указывает на адрес в памяти следующей команды.

Регистры данных — служат для хранения промежуточных вычислений.

RAX, RCX, RDX, RBX, RSP, RBP, RSI, RDI, R8 — R15 — 64-битные

EAX, ECX, EDX, EBX, ESP, EBP, ESI, EDI, R8D — R15D — 32-битные (extended AX)

AX, CX, DX, BX, SP, BP, SI, DI, R8W — R15W — 16-битные

AH, AL, CH, CL, DH, DL, BH, BL, SPL, BPL, SIL, DIL, R8B — R15B — 8-битные (половинки 16-ти битных регистров)

например, AH — high AX — старшая половинка 8 бит, AL — low AX — младшая половинка 8 бит

RAX

RCX

RDX

RBX

EAX

ECX

EDX

EBX

AX

CX

DX

BX

AH

AL

CH

CL

DH

DL

BH

BL

RSP

RBP

RSI

RDI

Rx

ESP

EBP

ESI

EDI

RxD

SP

BP

SI

DI

RxW

SPL

BPL

SIL

DIL

RxB

где x — 8..15. Регистры RAX, RCX, RDX, RBX, RSP, RBP, RSI, RDI, Rx, RxD, RxW, RxB, SPL, BPL, SIL, DIL доступны только в 64-битном режиме работы процессора.

Регистр флагов FLAGS (16 бит) / EFLAGS (32 бита) / RFLAGS (64 бита) — содержит текущее состояние процессора.

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

  • С последовательным приёмом и выдачей информации — сдвиговые регистры.

  • С параллельным приёмом и выдачей информации — параллельные регистры.

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

Можно рассматривать регистровую модель процессора - набор регистров, их форматы и способы работы с ними:

  • на пользовательском уровне (регистры общего назначения и флагов);

  • на системном уровне (регистры управления процессором и организации памяти, элементы организации прерываний и прямого доступа к памяти).

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

Периферийные устройства - устройства, внешние по отношению к связке процессор - память.

Устройства ввода-вывода - часть периферийных устройств, предназначенная для связи ЭВМ с "внешним миром" (прочие периферийные устройства обслуживают внутренние потребности ЭВМ: таймеры, контроллер прерываний и т.п.).