Расчет производительности процессора

Основные теоретические положения

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

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

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

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

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

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

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

Средства контроля и диагностики позволяют обнаруживать и устранять неисправности без потери производительности процессора.

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

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

Расчет производительности процессора - student2.ru

Рис. 1 Логическая схема процессора.

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

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

Центральный процессор ЭВМ включает в себя следующие базовые средства принципов работы ЭВМ:

- локальнуюя память: регистры общего назначения (16x32 р), регистры плавающей запятой (4x64 р), управляющие регистры (16x32 р);

- полный набор команд: команды арифметики с фиксированной и пла­вающей запятой, команды десятичная арифметика;

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

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

Центральный процессор может обращаться за информацией к шестнадцати общим регистрам, имеющих нумерацию от 0 до 15. Они могут быть использо­ваны для хранения индекса воперациях над адресами, как накапливающие ре­гистры в арифметических операциях с фиксированной точкой и в логических операциях. В общий регистр можно поместить одно слово (32 байта).

Регистры общего назначения идентифицируются числами от 0 до 15 и задаются в команде с помощью четырех битового поля R1. Два смежных об­щих регистра (четный и следующий нечетный) могут использоваться для хранения одного операнда размером 8 байт.

В операционной арифметике с плавающей точкой используются 4 спе­циализированных регистра емкостью 8 байт каждый. Они идентифицируются номерами 0, 2, 4 и6. Каждый из них может содержать короткое (32-битовое) или длинное (64-битовое) число в формате с плавающей точкой. В операциях арифметики с плавающей точкой расширенной точности для 128-битовых чисел используются пары регистров с плавающей точкой 0-2 и 4-6.

К средствам управления памятью относятся буферная память, память ключей, защита и средства управления доступом к основной памяти.

К системным средствам относятся средства службы времени: часы ас­трономического времени, таймер и компаратор.

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

Компаратор используется для программной привязки процессов к опре­деленному моменту времени.

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

Форматы команд:

Расчет производительности процессора - student2.ru

Формат регистр-регистр (RR)

0 15

Расчет производительности процессора - student2.ru

Формат регистр-память (RX)

0 31

где КОП – код операции; R1 – регистр первого операнда; R2 – регистр второго операнда; Х2 – регистр индекса; В2 – регистр базы; D2 – смещение адреса.

Форматы операндов:

Расчет производительности процессора - student2.ru

Короткий операнд с фиксированной запятой

0 15

Расчет производительности процессора - student2.ru Нормальный операнд с фиксиро-

ванной запятой

0 31

Расчет производительности процессора - student2.ru

Короткий операнд с плавающей

0 7 8 31 запятой

Расчет производительности процессора - student2.ru Длинный опе-

ранд с плаваю-

0 7 8 63 щей запятой

Зн – разряд знака числа (мантиссы).

Выбор структуры процессора

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

Известны следующие способы повышения производительности процессора:

- совмещение отдельных этапов выполнения последовательно выбираемых команд и этапов выполнения операций;

- предвыборка и буферизация команд и операндов;

- введение нескольких операционных устройств;

- выбор алгоритмов ускоренного выполнения операций;

- специализация операционных устройств;

- введение в структуру буферной памяти (кэш-память);

- повышение уровня системы команд (спецоперации).

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

На рис. 2 показаны временные диаграммы выполнения команды с разбиением на этапы выполнения: БК - выборка команды; РК - распаковка команды; АО - вычисление адреса операнда; ВО - выборка операнда; ОП - выполнение операции; ЗР - запись результата. При этом отдельные этапы (PК, АО) могут быть выполнены за один такт, все другие этапы могут потребовать для своего выполнения нескольких тактов. Совмещение может выполняться только для этапов одинаковой длины; для случая, когда длительность совмещаемых этапов различна, длительность выполнения этапа выбирается по самому большому времени выполнения. Совмещение не может быть выполнено для взаимозависимых команд, так как выполнение следующей команды зависит от результата предыдущей операции: операция перехода или использование результата как операнда следующей операции.

Время выполнения команды процессором, при наличии совмещения, определяется выражением:

ТКТ = (N-Nс+1),

где ТКТ - время выполнения команды (тактов);

N - количество тактов выполнения команды;

Nc - количество совмещенных тактов.

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

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

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

При выборе структуры процессора с совмещением выполнения команд должно быть определено:

- количество независимых исполнительных блоков;

- структура и алгоритмы работы исполнительных блоков;

- организация выполнения команд передачи управления;

- организация внутренней памяти процессора;

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

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

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

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

Сверхоперативная буферная память позволяет сократить время обращения к основной памяти до 2-х машинных тактов.

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

Р = Пр/Ср,

где Пр – реальная производительность процессора (млн. ком/с);

Ср – стоимость процессора.

В расчетах Ср учитываются только основные устройства, указанные в структуре.

1. Выполнение одиночной команды:

Тк = Твквоопзр+2*Тм

ВК PK AO BO ОП ЗР
------ ------ ------ ------ ==== ------
№ такта: 1

2. Выполнение команд с частичным совмещением:

Тк = Твквоопзр

  BK PK AO BO ОП ЗР            
N ----- ----- ----- ----- === -----            
          BK PK AO BO ОП ЗР    
N+1         ----- ----- ----- ----- === -----    
                  BK PK AO BO
N+2                 ----- ----- ----- -----
                         
№ такта

3. Выполнение команд в режиме полного совмещения:

Тк = Топ

  ВК РК АО ВО ОП ЗР          
N ----- ----- ----- ----- === -----          
    ВК РК АО ВО ОП ЗР        
N+1   ----- ----- ----- ----- === -----        
      ВК РК АО ВО ОП ЗР      
N+2     ----- ----- ----- ----- === -----      
        ВК РК АО ВО ОП ЗР    
N+3       ----- ----- ----- ----- === -----    
          ВК РК АО ВО ОП ЗР  
N+4         ----- ----- ----- ----- === -----  
            ВК РК АО ВО ОП ЗР
N+5           ----- ----- ----- ----- === -----
                       
№ такта

Рис. 2 Принципы совмещения выполнения команд

Расчет производительности процессора - student2.ru

Буферы команд
Команды
от ОП

к ОП

АЛУ
БВК
Операнды

Рис.3 Структурная схема процессора с совмещением выполнения команд

Пример расчета производительности процессора

Расчет производительности процессора состоит из следующих этапов:

1. Выбора логической структуры процессора (состава устройств, их функции и принципы взаимодействия), исходя из принципов работы ЭВМ (ЭВМ общего назначения).

2. Обоснование выбора технических параметров процессора с целью обес­печения достижения заданного значения производительности:

- производительности П (млн. оп\с);

- машинного такта Тм (нс);

- цикла локальной памяти Тл (нс);

- времени выборки из основной памяти Тп (нс).

3. Получение временных диаграмм и определение длительности выпол­нения основных команд процессора.

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

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

Наши рекомендации