Amiga. Вычислительная техника
Меню сайта
Главная
Amiga
Amiga Corporation
Модельный ряд
История развития
Аппаратная платформа
Операционные системы
Эмуляция
AMIGA # 1
Программирование на Ассемблере
Организация процессоров
Методы защиты информации
Компьютерные новеллы
Боятся ли компьютеры адского пламени?
Виртуальная реальность
Корпоративные сети
Телекоммуникационные сети
Архитектура ЭВМ
ЕС ЭВМ
Рождение ЭВМ
Компьютер
Гарвардская архитектура
Современные высокопроизводительные компьютеры
Дорога в будущее
Vista
Инфоpматика
ЭВМ
Операционные системы
Linux
Windows
Освой компьютер
Макинтош
Набор текста
Поколения
Компьютерная грамотность
Устройство компьютера
Железо
Графика
Звук
Ремонт
Сети
Программирование
Информационные технологии
Криптография
Микроэлектроника
Истории
 
 

Организация процессоров


Даже при условии некоторого увеличения времени выполнения одной команды (небольшое снижение быстродействия) производительность при полном заполнении конвейера будет близка к величине 1/Tк, где Tк – такт конвейера, в данном случае – время выполнения одного этапа. Это позволило бы сразу увеличить производительность процессора в 5 раз ! Однако на практике добиться этого оказывается сложно. И препятствуют этому так называемые конфликты при конвейеризации. Конфликтом при конвейеризации команд называют ситуацию, которая препятствует выполнению очередной команды из потока команд в предназначенном для нее такте. Конфликты делятся на три основные группы: 1.
Структурные или ресурсные. Возникают в результате того, что аппаратные средства не могут поддерживать все комбинации команд в режиме их одновременного выполнения с совмещением на конвейере. Это происходит в случае, если какие-то устройства в процессоре не конвейеризованы, либо – присутствуют в единственном экземпляре (не распараллелены). Например, могут возникать конфликты при обращении к общей КЭШ-памяти: одну команду необходимо извлечь из памяти (на первом этапе выполнения), а другая пытается записать результат в память на заключительном этапе. Для борьбы с ресурсными конфликтами в основном применяют три способа: -
приостановка конвейера (pipeline stall, pipeline “bubble” – конвейерный “пузырь”) до разрешения конфликта (до завершения первой конфликтующей команды); -
дублирование аппаратных средств, вызывающих конфликт, например, разделение КЭШ-памяти на КЭШ команд и КЭШ данных; -
ускорение или конвейеризация проблемного устройства, что позволяет снизить затраты времени на приостановку. Решение об увеличении аппаратных затрат в последних двух случаях принимают, если конфликт возникает часто, так как дополнительные затраты могут быть существеннее, чем потери производительности от приостановки конвейера, если она происходит редко. 2. Конфликты программные или информационные. Делятся на две подгруппы: а) конфликты по данным, возникающие в случае, если выполнение следующей команды зависит от результата предыдущей.

 

 

© 2010 Amigo. All Rights Reserved
Создание сайтов ЕкатеринбургШаблоны сайтовПоиск товаров - справочник цен, каталог магазинов, прайс-листыБесплатные шаблоны дизайна компьютерных сайтов
Hosted by uCoz