Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
default.docx
Скачиваний:
10
Добавлен:
13.09.2019
Размер:
2.43 Mб
Скачать
  1. Совершенствование структуры процессора путем введения буферных зу.

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

  1. Сокращение временных затрат при обращениях к памяти:

расширение кэш-памяти. Это приводит к повышению вероятности наличия требуемых команд и данных в кэш-памяти и уменьшению числа обращений к основной памяти;

многоуровневая организация кэш-памяти. Такая организация обеспечивает сочетание большой емкости кэш-памяти с высоким быстродействием;

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

разделение кэш-памяти на два независимых блока: кэш команд и кэш данных (гарвардская архитектура кэш-памяти);

расширение путей доступа к памяти за счет разбиения памяти на модули, обращение к которым может осуществляться одновременно – расслоение памяти. Это приводит к уменьшению времени обращения к основной памяти;

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

  1. Быстрое преобразование адресов. На стадии вычисления адресов операндов (ВА) производится преобразование логических адресов в физические.

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

  1. Конфликты по данным и способы их минимизации.

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

Известны три возможных конфликта по данным в зависимости от порядка операций чтения и записи. Рассмотрим две команды i и j, при этом i предшествует j. Возможны следующме конфликты:

1) чтение после записи (ЧПЗ) – команда j читает x до того, как команда i успела записать новое значение х, то есть j ошбочно получит старое значение х вместо нового. Это наиболее общий тип конфликтов;

2) запись после чтения (ЗПЧ) – команда j запсывает новое значение х до того, как команда i успела прочтать х, то есть команда i ошибочно получает новое значение вместо старого.

3) запись после записи (ЗПЗ) – команда j записывает новое значение х прежде, чем команда i успела записать в качестве х свое значение, то есть х ошибочно содержит i-е значение х вместо старого j-го.

Возможен 4-ый случай, когда команда j читает х прежде команды i . Этот случай не вызывает конфликтов, поскольку как i , так j получает верное значение x.

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