Интернет магазин китайских планшетных компьютеров



Компьютеры - NetBurst - Описание работы

27 апреля 2011


Оглавление:
1. NetBurst
2. Описание работы
3. Особенности архитектуры
4. Процессоры архитектуры NetBurst



Конвейер процессора на ядре Northwood

Конвейер процессоров на ядре Northwood Конвейер состоит из 20 стадий:

  • TC, NI — поиск микроопераций, на которые указывает последняя выполненная инструкция.
  • TR, F — выборка микроопераций.
  • D — перемещение микроопераций.
  • AR — резервирование ресурсов процессора, переименование регистров.
  • Q — постановка микроопераций в очереди.
  • S — изменение порядка исполнения.
  • D — подготовка к исполнению, выборка операндов.
  • R — чтение операндов из регистрового файла.
  • E — исполнение.
  • F — вычисление флагов.
  • BC, D — проверка корректности результата.

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

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

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



Просмотров: 4432


<<< Multiclet