Помощничек
Главная | Обратная связь


Археология
Архитектура
Астрономия
Аудит
Биология
Ботаника
Бухгалтерский учёт
Войное дело
Генетика
География
Геология
Дизайн
Искусство
История
Кино
Кулинария
Культура
Литература
Математика
Медицина
Металлургия
Мифология
Музыка
Психология
Религия
Спорт
Строительство
Техника
Транспорт
Туризм
Усадьба
Физика
Фотография
Химия
Экология
Электричество
Электроника
Энергетика

Принцип совмещения операций. Синхронный конвейер операций



Принцип совмещения операций

При проектировании процессоров используется совмещение операций, позволяющее в каждый момент времени выполнять более одной операции. Это совмещение производится как при обработке команд в УЦУ, так и при выполнении операций в АЛУ и может осуществляться на уровне команд, микрокоманд и схем.

Совмещение операций базируется на двух принципах:

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

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

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

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

Особенностью конвейера является наличие его разгона:

Этап Продвижение команд
i i+1 i+2 i+3 i+4 i+5  
  i i+1 i+2 i+3 i+4  
    i i+1 i+2 i+3  
      i i+1 i+2  
        i i+1  
   
Время в тактах

 

Синхронный конвейер операций.

Синхронный конвейер работает в принудительном темпе и для выполнения любого этапа выделено одно и то же время tт (такт конвейера).

Длительность такта выбирается по максимальному времени при выполнении всевозможных команд на этапах конвейера: tт = max{ti} i=1,...,r (3)

При этом условие разбиение выбирается исходя из примерно равной длительности выполнения этапов:

ti + ti+1 > tт i=1,...,r (4)

Если условие не выполняется, то либо объединяют эти этапы, либо разбивают самый длинный этап.

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

Номинальная производительность конвейера после разгона:

т.е. по формуле получаем выигрыш от половины до полного количества ступеней конвейера.

Реально выигрыш меньше: из-за простоя конвейера (очистка конвейера командами переходов - JMP), из-за отсутствия в цепи выполнения команд некоторых ступеней конвейера.

 




Поиск по сайту:

©2015-2020 studopedya.ru Все права принадлежат авторам размещенных материалов.