<<
>>

Краткое содержание главы

Основным компонентом любого компьютера является тракт данных. Он содержит несколько регистров, одну, две или три шины, а также один или несколько функциональных блоков, например АЛУ и схему сдвига.
В основном цикле вызываются несколько операндов из регистров и передаются по шинам к АЛУ и другому функциональному блоку на выполнение. После завершения операции результаты вновь сохраняются в регистрах.

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

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

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

Существует множество подходов к организации уровня микроархитектуры, в том числе 2- или 3-шинная структура, кодированные или декодированные поля микрокоманд, наличие или отсутствие вызова с упреждением, конвейер с большим или небольшим количеством ступеней, и т. д. Mic-1 — это простая машина с программным управлением, последовательным выполнением команд и полным отсутствием параллелизма. Mic-4, напротив, является микроархитектурой с высокой степенью параллелизма и 7-ступенчатым конвейером.

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

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

Наши три процессора, Pentium 4, UltraSPARC III и 8051, рассматриваемые в качестве примеров, похожи в том плане, что их микроархитектуры неочевидны для программистов, пишущих на языке ассемблера архитектурного уровня. Pentium 4 реализует сложную схему преобразования ISA-команд в микрооперации, их кэширования, передачи суперскалярному RISC-ядру для выполнения вне исходной последовательности, подмены регистров и применения всех остальных описанных в этой книге трюков, позволяющих разогнать оборудование до максимально возможной скорости. Что же касается процессора UltraSPARC III Си, то, если не считать многоступенчатого конвейера, его микроархитектура достаточно проста: запуск и выполнение команд, а также получение их результатов осуществляются без изменения последовательности команд. Процессор 8051 прост до крайности — к одной основной шине подключено несколько регистров и одно АЛУ.

<< | >>
Источник: Таненбаум Э.. Архитектура компьютера. 5-е изд. 2007

Еще по теме Краткое содержание главы:

  1. Краткое содержание главы 1.
  2. СОДЕРЖАНИЕ И ЕГО КРАТКИЙ АНАЛИЗ
  3. Краткое изложение содержания книги
  4. § 2. Полномочия главы государства
  5. Возрастание роли главы правительства
  6. Обзор 3-й главы
  7. Обзор 4-й главы
  8. Обзор 5-й главы
  9. Обзор 6 главы
  10. Обзор 7 главы
  11. Обзор 8-й главы
  12. Обзор 9 главы
  13. Обзор 10 главы
  14. Обзор 11-й главы
  15. Обзор 12-й главы
  16. Обзор 13-й главы