Текст: ТЕХНИЧЕСКОЕ ЗАДАНИЕ. 1. Выбрать логическую структуру процессора (состав устройств, их функции и принципы взаимодействия), исходя из принципов работы ЭВМ Единой системы (ЭВМ общего назначения). 2. Обосновать выбор технических параметров процессора с целью обеспечения достижения заданного значения производительности - производительность П = млн.оп/с): - машинный такт Т = 10-100 нс; - цикл локальной памяти Тл = 10-100 нс; - время выборки из основной памяти Тп = 100-1000 нс. 3. Разработать временные диаграммы и определить длительность выполнения основных команд процессора. 4. Оптимизировать технико-экономические параметры процессора для достижения максимальной его эффективности: максимальной производительности при минимальной стоимости устройства, исходя из объема оборудования устройства (количество используемых элементов) или объема памяти, статистики использования памяти и следующего соотношения: стоимость элементов устройства обратно пропорциональна техническим параметрам. В В Е Д Е Н И Е Центральный процессор выполняет основную работу по преобразованию данных в вычислительной системе и, кроме того, осуществляет в ней функции автоматизированного управления в соответствии с алгоритмами управляющей программы операционной системы. В частности, центральный процессор взаимодействует с каналами ввода-вывода, запуская операции ввода-вывода и получая информацию о результатах их выполнения, а также о состоянии системы ввода-вывода. Центральный процессор - это устройство, обеспечивающее обработку данных по заданнной программе. Центральный процессор производит следующие основные виды операций: выполнение команд, прерывание, сброс, регистрацию состояния (запись информации о состоянии вычислительной системы в целом или ее отдельных компонентов в определенные области основной памяти). Программу и обрабатываемые по ней данные процессор выбирает из основной (оперативной) памяти. Процессор включает в себя, в большенстве случаев, одно или несколько операционных (или арифметическо-логических устройств), устройство управления, локальную память, средства контроля и диагностики. Арифметически-логическое устройство (АЛУ) выполняет операции преобразования данных. Оно включает в себя один или несколько сумматоров и регистры для хранения промежуточных данных и результатов преобразований. Арифметическо-логическое устройство может быть расширино специализированными операционными устройствами: сдвигателем, быстрым умножителем, десятичным сумматором, конвертером и др. Устройство управления (УУ) - автомат управляющий процессами передачи и обработки информации в процессоре. Это устройство принимает команды и формирует последовательность управляющих сигналов, проверяет и т.п. Оно входит в работы функциональных узлов путем выдачи синхронизирующих и управляющего сигналов. В составе процессора может находится локальная память различного функционального назначения: рабочие регистры, РОН, регистры указатели, управляющие регистры, регистры служебных слов и т.п. Служебная память может использоваться для буферизации данных и команд, хранения таблиц преобразования адреса, ключей защиты и др. Процессор может включать в себя набор специальных системных средств: службу времени (суточные часы, таймер и т.п.), средства межпроцессорной связи, пульт управления системой и др. Средства контоля и диагностики позволяют обнаруживать и устранять неисправности без потери производитетьности процессора. ЛОГИЧЕСКАЯ СТРУКТУРА ПРОЦЕССОРА. Процессор выполняет программу, выбираемую из основной (оперативной) памяти, в нескольно этапов: выборка команды, распаковка команды и выборка операндов, выполнение операции и запись результатов в основную память, а, при необходимости, и обработку прерывания, изменение состояния процессора или системы в целом. Логическую структуру ЦП (рис.1) включает ряд функциональных средств: средства обработки, средства управления системой и программой, локальная память, средства управления каналами и основной памятью, системные средства. Средства обработки обеспечивают выполнение операций с фиксированной и плавающей запятой, операций с десятичными данными и полями переменной длины. Локальная память состоит из регистров общего назначения и регистров с плавающей точкой, а также управляющих регистров. Средства управления каналами обеспечивают хранение данных (буфер данных канала), подготовленных к передаче или принятых из канала, а также управление приоритетными доступам обрабатывающей подсистемы через канал ввода/выводда к перефирийному оборудованию. Центральный процессор ЕС ЭВМ включает в себя следующие базовые средства принципов работы ЕС ЭВМ: - локальная память: регистры общего назначения (16х32 р), регистры плавающей запятой (4х64 р), управляющие регистры (16х32 р); - полный набор команд: команды арифметики с фиксированной и плавающей запятой, команды десятичная арифметика; - системные средства: прямое управление, интервальный таймер, часы, компаратор, защита памяти, средство условного обмена и т.д. Для хранения текущей информации обрабатываемой программы в центральном процессоре имеется локальная память: 16 регистров общего назначения, 4 регистра (для операндов) с плавающей точкой (по 64 двоичных разряда). Процессор также использует область основной памяти, которая является постоянно распределенной областью процессора для хранения управляющей информации, информации прерывания и контроля. Центральный процессор может обращаться за информацией к 16 общим регистрам, имеющие нумерацию от 0 до 15. Они могут быть использованы для хранения индекса в операциях над адресами, как накапливающие регистры в арифметических операциях с фиксированной точкой и в логических операциях. В общий регистр можно поместить одно слово (32 байта). Регистры общего назначения идентифицируются числами от 0 до 15 и задаются в команде с помощью четырех битового поля R1. Два смежных общих регистра (четный и следующей нечетный) могут использоваться для хранения одного операнда размером 8 байт. В операционной арифметике с плавающей точкой используются 4 специализированных регистра емкостью 8 байт каждый. Они идентифицируются номерами 0, 2, 4 и 6. Каждый из них может содержать короткое (32-битовое) или длинное (64-битовое) число в формате с плавающей точкой. В операциях арифметики с плавающей точкой расширенной точности для 128-битовых чисел используются пары регистров с плавающей точкой 0-2 и 4-6. К средствам управления памятью относятся буферная память, память ключей, защита и средства управления доступом к основной памяти. К системным средствам относятся средства службы времени: часы астрономического времени, таймер и компаратор. Интервальный таймер используется для отчета времени суток и интервалов времени. Обращение к интервальному таймеру для записи или чтения его значение может осуществляться любой командой, в которой предусмотрено обращение к основной памяти. Компаратор используется для программной привязки процессов к определенному моменту времени. Для приближенной оценки производительности процессора будем использовать ограниченный набор форматов команд и операндов. Форматы команд: ???????????????????? ? КОП ? R1 ? R2 ? Формат регистр-регистр (RR) ???????????????????? 0 15 ?????????????????????????????????????? ? КОП ? R1 ? Х2 ? В2 ? D2 ? Формат регистр-память (RХ) ?????????????????????????????????????? 0 31 КОП - код операции; R1 - регистр первого операнда; R2 - регистр первого операнда; Х2 - регистр индекса; В2 - регистр базы; D2 - смещение адреса. Форматы операндов: ???????????????????? ?Зн? ? Короткий операнд с фиксированной запятой ???????????????????? 0 15 ?????????????????????????????????????? ?Зн? ? Нормальный операнд ?????????????????????????????????????? с фиксированной запятой 0 31 ?????????????????????????????????????? ?Зн?Порядок? Мантисса (24 разряда) ? Короткий операнд с ?????????????????????????????????????? плавающей запятой 0 7 8 31 ?????????????????????????????????????? ? ? ? ?????? ?Зн?Порядок? Мантисса (56 разрядов) ? Длинный операнд с ?????????????????????????????????????? ? ? ? ?????? плавающей запятой 0 7 8 63 Зн - разряд знака числа (мантиссы). ????????????????? ??????????????? ?????????????? ??????????????? ? Часы суточные ? ? Управляющие ? ? Регистры ? ? Регистры ? ????????????????? ? регистры ? ? общего ? ? с плавающей ? ? Компаратор ? ? 16х32 ? ? назначения ? ? точкой ? ????????????????? ? разряда ? ? 16х32 ? ? 4х64 ? ? Таймер ? ??????????????? ? разряда ? ? разряда ? ????????????????? ? РССП ? ?????????????? ??????????????? ? Таймер ? ??????????????? ? ? ? интервальный ? ? ? ? ????????????????? ???????? ? ? ? ????????????? ????????????????????? ? ? ? ? ? ? ? ????????????????????????? ????????????????????????????????????? ? Средства управления ? ? Средства обработки ? ????????????????????????? ????????????????????????????????????? ? Управление?Управление ? ? Операции с ?Операции с?Операции ? ? системой ?программой ????? фиксирован-?плавающей ?десятичной ? ????????????????????????? ? ? ной точкой ?точкой ?арифметики ? ? ? ? ? ? ? ? ?и полей пе-? ? ? ? ? ? ? ? ?ременной ? ? ? ? ? ??? ? ? ?длины ? ? ? ??????????????????? ????????????????????????????????????? ? ??????????? ???????????????????????????? ?????????????? ?????????????? ? ? ? ?????????????????????????????????????? ? Пульт ? ? ? ?????????? ? ? ? управления ? ? ? ?????????????????????????????????????? ?????????????? ? ? ? Средства ? Средства ? Средства ? ? ? ? динамического? коррекции? защиты ? ? ? ? преобразова- ? ошибок ? памяти ? ?????????? ? ния адреса ? ? ? ? Каналы ? ?????????????????????????????????????? ? ввода- ? ? Основная память ? ? вывода ? ? ? ?????????? ?????????????????????????????????????? Рис 1. Логическая схема процессора. ВЫБОР СТРУКТУРЫ ПРОЦЕССОРА. Выбор структуры процессора определяется двумя факторами: достижение заданной производительности при минимальных затратах оборудования. Известны следующие способы повышения производительности процессра: 1) совмешение отдельных этапов выполнения последовательно выбираемых команд и этапов выполнения операций; 2) предвыборка и буферизация команд и операндов; 3) введение нескольких операционных устройств; 4) выбор алгоритмов ускоренного выполнения операций; 5) специализация операционных устройств; 6) введение в структуру буферной памяти (кэш-память); 7) повышение уровня системы команд (спецоперации). Каждый способ влечет за собой увеличение обьема оборудования, а значит и увеличение стоимости процессора и, следовательно, снижение его эффективности, поэтому необходимо оценивать целесообразность использования каждого способа с учетом затрат оборудования. На рис.2 показаны временные диаграммы выполнения команды с разбиением на этапы выполнения: ВК - выборка команды; РК - распаковка команды; АО - вычисление адреса операнда; ВО - выборка операнда; ОП - выполнение операции; ЗР - запись результата. При этом отдельные этапы (РК, АО) могут быть выполнены за один такт, все другие этапы могут потребовать для своего выполнения нескольких тактов. Совмещение может выполняться только для этапов одинаковой длины; для случая, когда длительность совмещаемых этапов различна, длительность выполнения этапа выбирается по самому большому времени выполнения. Совмещение не может быть выполнено для взаимозависимых команд, так как выполнение следующей команды зависит от результата предыдущей операции: операция перехода или использование результата как операнда следующей операции. Время выполнения выполнения команды процессором, при наличии совмещения, определяется выражением: Ткт = (N-Nc+1), где Ткт - время выполнения команды (тактов); N - количество тактов выполнения команды; Nc - количество совмещенных тактов. Таким образом производительность процессора определяется как количеством тактов выполнения каждой команды и временем перехода команд, так и количеством уровней совмещения обработки команд. Метод совмещения выполнения команд обеспечивает увеличение пропускной способности устройств и при этом не изменяет время обработки отдельной команды. Поэтому, если среди команд встречаются зависимые, то пропускная способность процессора снижается на величину определенную характером зависимости совмещаемых команд. Зависимость команд как бы уменьшает число уровней совмещения, а следовательно, и пропускную способность процессора. Следует учитывать, что совмещение выполнения команд увеличивает объем оборудования и усложняет схемы управления тем сильнее, чем больше число уровней совмещения. При выборе структуры процессора с совмещением выполнения команд должно быть определено: - количество независимых исполнительных блоков; - структура и алгоритмы работы исполнительных блоков; - организация выполнения команд передачи управления; - организация внутренней памяти процессора; - степень совместного использования оборудования процессора в разных режимах обработки и управления. На рис.3 представлена структурная схема процессора с полным совмещением выполнения команд. Блок выборки команд (БВК) содержит собственный сумматор для вычисления адреса операнда. Буферы команд предназначены для хранения последовательности исполняемых команд, в том числе по двум альтернативным направлениям для быстрого перехода. Блок выборки операндов имеет раздельные регистры адреса и опреранда, что позволяет совмещать запрос на выборку и прием предыдущего операнда. Буферная память операндов хранит последовательность операндов и коды операций последовательно исполняемых команд. Арифметико-логическое устройство (АЛУ) имеет регистры на входе и выходе основного сумматора, что позволяет подавать новые операнды одновременно с записью результата предыдущей операции. Сверхоперативная буферная память позволяет сократить время обращения к основной памяти до 2-х машинных тактов. Критерием эффективности структурного построения процессора для всех моделей ЕС ЭВМ является отношение производительности к стоимости, т.е. достижение заданной производительности при наименьших З А К Л Ю Ч Е Н И Е Результаты разработки процессора ЭВМ Единой системы заданной производительности показывает, что для данного уровня производитель- ности технически и экономически целесообразным является использование элементной базы, позволяющей иметь машинный такт не более 60 нс, совмещенная обработка, при которой можно выполнять одновременно до 5 команд, и использование сверхоперативной буферной памяти емкостью не менее 64 Кбайт. Применение других методов ускорения операций: совмещение на этапе выполнения операции - получение промежуточных результатов (полусумм и поразрядных переносов); реализация операций умножения/деления на специальном устройстве с конвейерной обработкой и др., не целесообразно.
|