Процессоры

Именно процессор выполняет действия, предписанные программой действия по вычислению результатов, управлению внешними устройствами, вводом и выводом информации и другие.

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

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

Если разрядность операндов превышает разрядность АЛУ, то они обрабатываются не одной, а несколькими командами, что естественно увеличивает время получения результата.

Современные универсальные процессоры являются 32-х и 64-х разрядными устройствами.

Специализированные процессоры могут иметь и существенно большую разрядность.

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

Так как основным назначением процессора является выполнение вычислений, то большинство команд содержат поля с кодами выполненной операции и адресами операндов, над которыми эти операции выполняются.

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

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

По этому признаку различают:

Безадресные процессоры

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

Таким же образом выполняется стек памяти, т.е. последний загруженный операнд – вершин стека, он подается на вход АЛУ и так далее.

Одноадресные процессоры.

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

Двухадресные процессоры.

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

Трехадресные процессоры.

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

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

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

Всё это привело к появлению двух различных процессорных архитектур.

1. CISC

2. RISC – с сокращенным набором команд.

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

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

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

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

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

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

Выполнение процессором простой команды можно разбить на 4 этапа: выборка команды из памяти, её декодирование, выполнение операции, сохранение результата.

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


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: