Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Учебники 80389

.pdf
Скачиваний:
7
Добавлен:
01.05.2022
Размер:
43.33 Mб
Скачать

Ввод – вывода по прерыванию

В общем случае прерывания могут вызываться

внешними устройствами (внешние прерывания),

командами прерываний (программные прерывания)

автоматически самим МП (внутренние прерывания), например при попытке деления на 0.

В этом разделе будут рассмотрены внешние прерывания. Работу МП можно разделить во времени между двумя независимыми программами: фоновой, которая выполняет основную задачу и программой ВВ данных. Когда ВУ подготовит данные для передачи, оно посылает сигнал запроса на прерывание непосредственно на вход МП INTR или в специальное устройство - контроллер прерываний. В процессе обслуживания прерывания выполняются следующие действия:

1. ВУ самостоятельно, либо через контроллер прерываний посылает сигнал прерывания INT(R) на одноименный вход МП;

2. МП завершает выполнение текущей команды и, если прерывания разрешены командой ассемблера STI(EI для 8085), то подтверждает разрешение сигналом ШУ - INTA;

3. В МП по ШД передается тип (номер) прерывания - N;

4. Содержимое PSW, а также CS (регистр кодового сегмента), IP (указатель команды) (адрес возврата), скорректированное с учетом сброса очереди помещается в стек;

5. Сбрасываются флаги IF (флаг разрешения прерываний) и TF (флаг трассировки), причем т.к. (IF) = 0 дальнейшие прерывания запрещаются;

6. В IP загружается содержимое двух байтов с начальным адресом 4*N, а в CS - содержимое следующих двух байтов . Эти 4 байта называются вектором (указателем) прерывания.

7. Начинает выполняться подпрограмма - обработчик прерывания. INT_SUBR:

STI PUSH AX

....; здесь

....;

команды

MOV AL,5; обработчика

....;

прерывания

....

 

POP AX IRET

Если допускаются вложенные прерывания, то вначале помещается команда STIразрешение прерываний, запрещенных в п.5. Инструкции push и pop сохраняют и восстанавливают содержимое регистров фоновой задачи, если эти же регистры используются и обработчиком прерывания (в примере регистр AX).

8. Команда IRET извлекает из стека адрес возврата - IP,CS и содержи-

мое PSW;

9. МП продолжает работу с адреса возврата. При выполнении программных прерываний по команде INT N действия выполняются с п.3. N

71

находится в пределах 0 <= N <= 255, поэтому четырехбайтовые вектора прерываний занимают первые 1024 байта памяти.

Прямой доступ к памяти (ПДП) и транзакции

Обмен большим количеством байтов, между ВУ (например дисковым накопителем) и памятью с помощью предыдущих двух методов малоэффективен, т.к. обмен происходит по цепочке: ВУ - аккумулятор (AX или AL) - память или наоборот. В режиме ПДП при поступлении запроса от ВУ на вход HOLD, МП разрешает обмен выходным сигналом HLDA. Микропроцессор на время обмена отключается от ШУ, ШД и ША переводя их в третье состояние по входам ~OE буферных элементов сигналом ~BUSEN = 1 .Специальная микросхема (контроллер ПДП) использует освободившиеся шины для высокоскоростного прямого обмена ВУ - память. Скорость обмена достигает многих мегабит/сек. При использовании режима ПДП сохраняются преимущества метода прерывания, время на передачу сокращается, но фоновая задача по прежнему прерывается. При использовании транзакций передача данных производится почти без нарушения хода программы параллельно во времени. Транзакции реализованы в некоторых семействах однокристальных микроЭВМ например в MCS-96.

4.7. Арифметико-логическое устройство (АЛУ)

Arithmetic and Logical Unit (ALU) — компонента процессора, выпол-

няющая арифметические и логические операции над данными.)

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

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

АЛУ классифицируются следующим образом: 1. По способу действий над операндами:

АЛУ последовательного действия;

параллельного действия.

В последовательных АЛУ действия над операндами производятся последовательно разряд за разрядом начиная с младшего. В параллельных АЛУ все разряды операндов обрабатываются одновременно.

2. По виду обрабатываемых чисел АЛУ могут производить операции над двоичными числами с фиксированной или плавающей запятой и над двоично-десятичными числами. В последнем случае каждая десятичная цифра записывается четырьмя разрядами двоичного кода:

АЛУ при действии над двоично-десятичными числами должны содержать схему десятичной коррекции. Схема десятичной коррекции пре-

72

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

При записи числа с фиксированной запятой запятая фиксируется после младшегоразряда, есличислоцелое, ипередстаршим, есличисломеньше1.

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

3. По организации действий над операндами:

блочные;

многофункциональные АЛУ.

Вблочных АЛУ отдельные блоки предназначены для действий над двоично-десятичными числами, отдельно для действий над числами с фиксированной запятой, отдельно с плавающей запятой.

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

Устройство

управления

Р е г и с т р 1

SM1 K1 SM2 K2 SM3

Р е г и с т р 2

Рис. 4.18. Многофункциональное АЛУ

Клапаны К1 и К2 объединяют сумматоры 1, 2 и 3 для действий над числами с фиксированной запятой.

Для действий над числами с плавающей запятой клапан К2 объединяет сумматоры 2 и 3 для обработки мантисс, а клапан К1 отсоединяет первый сумматор от второго. Сумматор 1 обрабатывает порядки

4. По структуре:

АЛУ с непосредственными связями;

многосвязные.

Вмногосвязных АЛУ входы и выходы регистров приемников и источников информации подсоединяйся к одной шине. Распределение входных и выходных сигналов происходит под действием управляющих сигналов.

ВАЛУ с непосредственной связью вход регистра приемника связан с выходом регистра источника операндов и регистра, в котором происходит обработка (рис. 4.19).

Например, в этой схеме суммирование происходит так: операнды подаются в регистр 1. Регистр 2 является накапливающим сумматором или автоматом с памятью. Он суммирует слагаемые, поступающие в разные моменты времени и передает результат в регистр 3.

УмножениевэтомАЛУпроисходиттак: множимоепомешаютврегистр 4, множитель — в регистр 1. Регистры 2 и 3 являются, кроме того, сдвигающими регистрами. В зависимости от содержимого разряда множителя, множимое сдвигается на один разряд, если множитель содержит 1, и на два, если множительсодержит0. Этичастныепроизведениясуммируютсяврегистре2.

73

4.8. Характеристики процессоров

Процессоры можно классифицировать по двум основным параметрам: разрядности и быстродействию. Быстродействие процессора — довольно простой параметр. Оно измеряется в мегагерцах (МГц); 1 МГц равен миллиону тактов в секунду. Чем выше быстродействие, тем лучше (тем быстрее процессор). Разрядность процессора — параметр более сложный. В процессор входит три важных устройства, основной характеристикой которых является разрядность:

шина ввода и вывода данных;

внутренние регистры;

шина адреса памяти.

Быстродействие компьютера во многом зависит от тактовой частоты, обычно измеряемой в мегагерцах (МГц). Единицей измерения времени для процессора как логического устройства является период тактовой частоты, или просто такт. На каждую операцию затрачивается минимум один такт. Например, обмен данными с памятью процессор Pentium II выполняет за три такта плюс несколько циклов ожидания. (Цикл ожидания — это такт, в котором ничего не происходит; он необходим только для того, чтобы процессор не опережал менее быстродействующие узлы компьютера.)

Выполнение подобных команд разными процессорами требует различное количество тактов, при этом процессоры могут работать на разных частотах. Для сравнения процессоров с различной архитектурой между собой используется система тестов, разработанных фирмой Intel. Система тестов адаптирована для измерения эффективности 32-разрядных процессоров, она называется показателем iCOMP 2.0 (intel Comparative Microprocessor Performance — сравнительная эффективность микропроцессора Intel). Известна модифицированная третья версия продукта. Индекс iCOMP вычисляется по результатам нескольких независимых испытаний и довольно объективно характеризует относительную производительность процессора. При подсчете iCOMP учитываются операции с плавающей запятой и операции, необходимые для выполнения мультимедийных приложений.

Почти все современные процессоры, начиная с 486DX2, работают на тактовой частоте, которая равна произведению некоторого множителя на тактовую частоту системной платы. При прочих равных условиях (типах процессоров, количестве циклов ожидания при обращении к памяти и раз-

рядности шин данных) два компьютера можно сравнивать по их тактовым

 

 

 

 

 

частотам. Однако делать это следует осторожно:

 

 

 

 

 

быстродействие компьютера зависит и от других

 

 

 

 

Р е г и с т р

 

Устройство управления

 

 

факторов (в частности, от тех, на которые влияют

 

 

 

 

 

 

 

 

 

 

 

 

конструктивные особенности памяти). Например,

 

 

 

Р е г и с т р

 

 

 

компьютер с более низкой тактовой частотой может

 

 

 

 

 

 

 

 

 

 

 

 

работать быстрее, а быстродействие системы с бо-

 

 

 

 

Р е г и с т р 3

 

 

 

 

 

лее высоким значением номинальной тактовой час-

 

 

 

 

 

Рис. 4.19. АЛУ непосредст-

тоты будет ниже, чем следовало бы. Определяю-

 

 

венной связью

щим фактором при этом является архитектура, кон-

 

 

 

 

 

струкция и элементная база оперативной памяти системы.

74

Шина данных

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

Вобычном компьютере есть несколько внутренних и внешних шин,

ав каждом процессоре — две основные шины для передачи данных и адресов памяти: шина данных и шина адреса.

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

Если в техническом описании говорится о 32или 64-разрядном компьютере, то обычно имеется в виду разрядность шины данных процессора. По ней можно приблизительно оценить производительность процессора, а значит, и всего компьютера.

Разрядность шины данных процессора определяет также разрядность банка памяти. Это означает, что 32-разрядный процессор, например класса 486, считывает из памяти или записывает в память 32 бита одновременно.

Внутренние регистры

Количество битов данных, которые может обработать процессор за один прием, характеризуется разрядностью внутренних регистров. Регистр – это, ячейка памяти внутри процессора. Разрядность регистра определяет количество разрядов обрабатываемых процессором данных, а также характеристики программного обеспечения и команд процессора. Большинство современных процессоров имеют внутренние регистры 32 – и 64 – разрядные.

Внекоторых процессорах разрядность внутренней шины данных (а шина состоит из линий передачи данных и регистров) больше, чем разрядность внешней шины. Например, в процессорах 8088 и 386SX разрядность внутренней шины только вдвое больше разрядности внешней. Такие процессоры (их часто называют половинчатыми или гибридными) являются более дешевыми вариантами исходных.

Например, в процессоре 386SХ внутренние операции 32-разрядные, а связь с внешним миром осуществляется через 16-разрядную внешнюю шину. Это позволяет разработчикам проектировать относительно дешевые системные платы с 16-разрядной шиной данных, сохраняя при этом совместимость с 32-разрядным процессором 386. Если разрядность внутренних регистров больше разрядности внешней шины данных, то для их полной загрузки необходимо несколько циклов считывания. Например, в процессорах 386DХ и 386SХ внутренние регистры 32-разрядные, но процессору 386SХ для их загрузки необходимо выполнить два цикла считывания, а процессору 386DХ достаточно одного. Аналогично передаются данные от регистров к системной шине. В процессорах Pentium шина данных 64-разрядная, а регистры 32-разрядные. 64 - разрядная шина данных позволяет быстрее заполнить рабочие 32 – разрядные регистры.

Шина адреса

Шина адреса представляет собой набор проводников по которым пе-

75

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

Например, в процессорах 8086 и 8088 используется 20-разрядная шина адреса, поэтому они могут адресовать 220 (1 048 576) байт, или 1 Мбайт памяти. Разрядность шин является показателем возможностей процессора: количество разрядов в шине данных определяет способность процессора обмениваться информацией, а разрядность шины адреса — объем памяти, с которым он может работать.

Кэш-память первого уровня

Во всех процессорах, начиная с 486-го, имеется встроенный (первого уровня) кэш-контроллер с кэш-памятью объемом 8 Кбайт в процессорах 486DX, а также 32, 64 Кбайт и более в современных моделях. Кэш - это быстродействующая память, предназначенная для временного хранения программного кода и данных. Обращения к встроенной кэш-памяти происходят без состояний ожидания, поскольку ее быстродействие соответствует возможностям процессора, т.е. кэш-память первого уровня (или встроенный кэш) работает на частоте процессора.

Благодаря кэш-памяти процессору не приходится ждать, пока очередная порция программного кода или данных поступит из относительно медленной основной памяти, что приводит к ощутимому повышению производительности. Основная особенность кэш-памяти первого уровня состоит в том, что она всегда интегрирована с ядром процессора и работает на той же частоте. Это свойство в сочетании с коэффициентом совпадений, равным 90%, делает кэшпамятьважнойсоставляющей эффективностисистемы.

Кэш-память второго уровня

Для того чтобы уменьшить ощутимое замедление системы, возникающее при каждом промахе кэша, задействуется кэш-память второго уровня. Обычно в системе класса Pentium, кэш-память второго уровня установлена на системной плате, т.е. работает на тактовой частоте системной платы. Коэффициент совпадения кэш-памяти как первого, так и второго уровней составляет 90%.

Вычислительная система в целом 90% времени работает с полной тактовой частотой, получая данные из кэш-памяти первого уровня; 10% времени данные извлекаются из кэш-памяти второго уровня. Процессор работает с кэш-памятью второго уровня только 90 % этого времени, а оставшиеся 10% из-за промахов кэша - с более медленной основной памятью. Таким образом, объединяя кэш-память первого и второго уровней, получаем, что обычная система работает с частотой процессора 90% времени, с частотой системной платы 9% времени и с тактовой частотой основной памяти примерно 1% времени. При отсутствии кэш-памяти система часто обращается к ОЗУ, скорость которого значительно ниже скорости процессора, что значительно снижает быстродействиевсейвычислительнойсистемы.

Качественный скачок в технологии произошел с появлением процессоров Celeron 300A и выше. В этих процессорах внешние микросхемы кэш-

76

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

4.9. Технологии повышения производительности процессора

Конвейерная организация.

Разработчики архитектуры компьютеров издавна прибегали к методам проектирования, известным под общим названием "совмещение операций", при котором аппаратура компьютера в любой момент времени выполняет одновременно более одной базовой операции. Этот общий метод включает два понятия: параллелизм и конвейеризацию. Хотя у них много общего и их зачастую трудно различать на практике, эти термины отражают два совершенно различных подхода.

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

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

Такая технология обработки команд носит название конвейерной (pipeline) обработки. Каждая часть устройства называется ступенью конвейера, а общее число ступеней — длиной линии конвейера.

С ростом числа линий конвейера и увеличением числа ступеней на линии (табл. 4.4) увеличивается пропускная способность процессора при неизменной тактовой частоте. Процессоры с несколькими линиями конвейера получили название суперскалярных. Pentium — первый суперскалярный процессор Intel. Здесь две линии, что позволяет ему при одинаковых частотах бытьвдвоепроизводительнейi80486, выполняясразудвеинструкциизатакт.

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

77

Рис. 4.20 Схема простейшего процессора

Таблица 4.4. Характеристики конвейеров процессоров Intel

Процес-

180486

Pentium

Pentium

Pentium

Pentium II

Pentium III

Pentium IV

сор

 

 

Pro

MMX

 

 

 

Число

1

2

3

2

3

3

3

линий

 

 

 

 

 

 

 

Длина

5

5

14

6

14

20

31

линии

 

 

 

 

 

 

 

Одной из наиболее высокопроизводительных вычислительных конвейерных систем считается CRAY. В этой системе конвейерный принцип обработки используется в максимальной степени. Имеется как конвейер команд, так и конвейер арифметических и логических операций. В системе широко применяется совмещенная обработка информации несколькими устройствами. Максимальная пиковая производительность процессора может составлять 12 Гфлопс.

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

Выполнение типичной команды можно разделить на следующие этапы:

выборка команды - IF (по адресу, заданному счетчиком команд, из памяти извлекается команда);

декодирование команды / выборка операндов из регистров - ID;

выполнение операции / вычисление эффективного адреса памяти - EX;

обращение к памяти - MEM;

запоминание результата - WB.

Схема простейшего процессора, выполняющего указанные выше этапы выполнения команд представ- IM Reg ALU DM Reg лена на рис 4.20. Чтобы конвейеризовать эту схему, разобьем выпол-

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

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

78

Порядок выполнения команд по про-

 

Время в тактах

 

 

 

 

 

 

T1

T2

T3

T4

T5

T6

T7

T8

T9

IM

Reg

ALU

DM

Reg

 

 

 

 

 

IM

Reg

ALU

DM

Reg

 

 

 

 

 

IM

Reg

ALU

DM

Reg

 

 

 

 

 

IM

Reg

ALU

DM

Reg

 

 

 

 

 

IM

Reg

ALU

DM

Reg

Рис. 4. 21. Временная диаграмма конвейерного выполнения коман-

Номер команды

 

 

 

Номер такта

 

 

 

1

2

3

4

5

6

7

8

9

Команда i

IF

ID

EX

MEM

 

WB

 

 

 

 

Команда i+1

 

IF

ID

EX

 

MEM

WB

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Команда i+2

 

 

IF

ID

 

EX

MEM

WB

 

 

Команда i+3

 

 

 

IF

 

ID

EX

MEM

WB

 

Команда i+4

 

 

 

 

 

IF

ID

EX

MEM

WB

Рис. 4.22. Диаграмма работы простейшего конвейера

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

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

79

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

В качестве примера рассмотрим неконвейерную машину с пятью этапами выполнения операций, которые имеют длительность 50, 50, 60, 50 и 50 нс соответственно (рис. 4.23). Пусть накладные расходы на организацию конвейерной обработки составляют 5 нс. Тогда среднее время выполнения команды в неконвейерной машинебудетравно260 нс. Если жеиспользуется конвейерная организация, длительность такта будет равна длительности самого медленного этапа обработки плюс накладные расходы, т.е. 65 нс. Это время соответствует среднему времени выполнения команды в конвейере. Таким образом, ускорение, полученноеврезультатеконвейеризации, будетравно:

среднее время выполнения команды в неконвейерной машине

=

260

=4

среднему времени выполнения команды в конвейере

65

 

 

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

 

 

260 нс

 

 

 

 

 

 

260 нс

 

 

 

 

 

 

 

 

260 нс

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

50

50

 

60

50

 

50

50

 

50

60

 

 

50

50

 

 

50

50

 

60

 

50

50

 

 

 

 

Команда

1

 

 

 

 

 

Команда

2

 

 

 

 

 

 

 

 

Команда

3

 

 

 

 

 

 

 

 

 

 

 

 

 

Неконвейерное выполнение

 

 

 

 

 

 

 

 

 

 

 

Команда 1

 

 

65

 

65

 

 

65

 

 

 

65

 

 

 

65

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

60

 

60

 

 

60

 

 

 

60

 

 

 

60

 

 

 

 

 

 

 

 

 

 

Команда 2

 

 

 

 

60

 

 

60

 

 

 

60

 

 

 

60

 

 

60

 

 

 

 

 

 

Команда 3

 

 

 

 

 

 

 

60

 

 

 

60

 

 

 

60

 

 

60

 

 

 

60

 

 

 

 

 

 

 

 

 

 

 

 

 

5

 

 

5

 

 

5

 

 

 

5

5

 

 

 

 

 

 

 

 

Конвейерное выполнение

 

 

 

 

 

 

 

 

 

 

 

Рис. 4.23. Эффект конвейеризации при выполнении 3-х команд - четырехкратное ускорение

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

80

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]