Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ответы 2008-2009.doc
Скачиваний:
20
Добавлен:
17.09.2019
Размер:
4.36 Mб
Скачать

86. Методы снижения приостановок конвейера.

CPIсреднее количество тактов на выполнение команды (clock per instruction)

CPI конв. = CPI ид.конв. + Cс + Cд + Cу ,

где Cс, Cд, Cу – приостановки конвейера из-за структурных конфликтов, конфликтов по данным и конфликтов по управлению, соответственно.

Методы минимизации приостановок работы конвейера нацелены на достижение идеального CPI = 1.

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

Метод

Снижает

Разворачивание циклов

Приостановки по управлению

Базовое планирование конвейера

Приостановки RAW

Динамической планирование с централизованной схемой управления

Приостановки RAW

Динамическое планирование с переименованием регистров

Приостановки WAR и WAW

Динамическое прогнозирование переходов

Приостановки по управлению

Выдача нескольких команд в одном такте

Идеальный CPI

Анализ зависимостей компилятором

Идеальный CPI и приостановки по данным

Программная конвейеризация и планирование трасс

Идеальный CPI и приостановки по данным

Выполнение по предположению

Все приостановки по данным и управлению

Динамическое устранение неоднозначности памяти

Приостановки RAW, связанные с памятью

  1. . SC-архитектура: предпосылки создания, принципы реализации.

Как показали исследования Дэвида Паттерсона и Джона Хенесси, проводимые для языков программирования C and Paskal в типичной программе:

  1. Большинство ссылок – скалярные переменные, в большинстве своем локальные.

  2. Наибольшие затраты времени – вызовы подпрограмм (и возврат из них) и условные переходы.

Выводы по результатам исследований

Эффективный путь повышения производительности:

    • основа – конвейер команд:

      • проектирование нового конвейера (традиционный неэффективен);

      • использование компиляторов, оптимизирующих работу конвейера;

    • минимизация обращений к переменным в ОП и более интенсивное использование регистровых переменных;

    • использование сокращенного набора относительно простых команд (упрощение УУ).

Вывод: более эффективная поддержка ЯПВУ возможна за счет упрощения архитектуры компьютера.

RISC компьютер с сокращенным набором команд (Reduced Instruction Set Computer) – Паттерсон и Дитцель, 1980 г.

Концепция RISC-компьютера

    • выполнение всех (или, по крайней мере, 75% команд) за один машинный цикл;

    • устройство управления с «жесткой» логикой;

    • стандартная однословная длина всех команд:

      • равна естественной длине слова и ширине шины данных;

      • допускает унифицированную поточную обработку всех команд;

    • малое число команд (не более 128);

    • малое количество форматов команд (не более 4);

    • малое число способов адресации (не более 4; отсутствие косвенной адресации памяти);

    • доступ к памяти только посредством команд «Чтение» и «Запись»;

    • все команды, за исключением «Чтения» и «Записи», используют внутрипроцессорные межрегистровые пересылки;

    • относительно большой (не менее 32) процессорный файл РОНов (в современных микропроцессорах превышает 500).