Студопедия

КАТЕГОРИИ:

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


Суперскалярные архитектуры




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

 

 

С1   С2   С3   С4   С5
Блок выборки команд Блок декодирования   Блок выборки операндов   Блок выполнения команд   Блок возврата
               
  Блок декодирования   Блок выборки операндов   Блок выполнения команд   Блок возврата

 

Каждый конвейер содержит АЛУ для параллельных операций. Для параллельного выполнения обе команды не должны конфликтовать при использовании ресурсов (например, регистров). Ни одна из них не должна зависеть от результата выполнения другой. Как и при одном конвейере либо компилятор должен следить, чтобы не возникало недопустимых ситуаций (например, когда аппаратура выдаёт некорректные результаты, когда команды несовместимы), либо конфликты обнаруживаются и устраняются непосредственно при выполнении команды. В последнем случае должна использоваться дополнительная аппаратура.

Сначала конвейеры использовались только в RISC-процессорах. В Intel, начиная с 486-й модели, был один конвейер из 5 стадий.

В Pentium – два конвейера из пяти стадий. В нем используются сложные правила определения, является ли пара команд совместимой для параллельного выполнения. Если команды несовместимы, то выполнялась только одна команда из пары – из главного конвейера, а другая оставалась ожидать пару со следующей выбранной командой. Команды выполняются по порядку. Т.о. Pentium имел особые компиляторы, которые формировали пары из совместимых команд. Поэтому программы выполнялись быстрее; так на операциях с целыми числами выполнение в Pentium происходило в два раза быстрее, чем в 486-й модели с той же тактовой частотой.

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

 

            С4    
          АЛУ    
                 
            АЛУ    
С1   С2   С3       С5
Блок выборки команд   Блок декодирования   Блок выборки операндов   Блок загрузки из памяти   Блок возврата
                 
            Блок сохранения в памяти    
                 
            Блок с плавающей запятой    

 

Блок С 3 выпускает команды значительно быстрее, чем Стадия С 4 может их выполнять. Если бы Блок С3 выпускала команду каждые 10 нс, а все функциональные блоки выполняли бы свою работу также за 10 нс, то на Стадии4 всегда функционировал бы только один блок, что бессмысленно для идеи конвейера. Реально большинству функциональных блоков Стадии4 для выполнения команды требуется значительно больше времени, чем время одного цикла (например, блок загрузки и блок с плавающей запятой)..

 

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

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

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

Все эти обстоятельства приходится учитывать при выборе числа уров­ней совмещения в каждом конкретном случае для получения заданных пара­метров и прежде всего удельных затрат (отношение производительности к стоимости). Опыт разработки ЭВМ общего назначения и проведенные иссле­дования показывают, что технически и экономически целесообразной являет­ся совмещенная обработка 5-6 команд.

 

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

 

 


Поделиться:

Дата добавления: 2015-01-29; просмотров: 119; Мы поможем в написании вашей работы!; Нарушение авторских прав





lektsii.com - Лекции.Ком - 2014-2024 год. (0.006 сек.) Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав
Главная страница Случайная страница Контакты