Помощничек
Главная | Обратная связь


Археология
Архитектура
Астрономия
Аудит
Биология
Ботаника
Бухгалтерский учёт
Войное дело
Генетика
География
Геология
Дизайн
Искусство
История
Кино
Кулинария
Культура
Литература
Математика
Медицина
Металлургия
Мифология
Музыка
Психология
Религия
Спорт
Строительство
Техника
Транспорт
Туризм
Усадьба
Физика
Фотография
Химия
Экология
Электричество
Электроника
Энергетика

Архитектура и структура микропроцессора



Архитектура микропроцессора — это совокупность сведений о составе его компонентов, организации обработки в нем информации и обмена информацией с внешними устройствами ЭВМ, а также о функциональных возможностях микропроцессора, выполняющего команды программы.

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

Типовая структурная схема микропроцессора

 

Основой любого МП является арифметико-логическое устройство АЛУ, выполняющее обработку информации — арифметические и логические действия над исходными данными в соответствии с командами. Сами данные (исходные, промежуточные и конечный результат) находятся в регистрах данных РД, а команды — в регистре команд РК. Управление всеми процессами по вводу и выводу информации, взаимодействию между АЛУ, РД и РК осуществляет многофункциональное устройство управленияУУ. Данные, команды и управляющие сигналы передаются по внутренней шине ВШ.

Рассмотрим в общем виде взаимодействие приведенных на рисунке структурных элементов МП в процессе обработки информации. Порядок действий задается устройством управления УУ, которому для обеспечения синхронного взаимодействия всех элементов необходимы постоянно поступающие тактовые импульсы. Эти импульсы вырабатывает тактовый генератор. При поступлении каждого тактового импульса происходит или перемещение информации из одного регистра в другой, или преобразование информации в том или ином регистре, или подключение к шине, или какие-либо иные действия. Каждая операция выполняется в определенной последовательности за несколько циклов синхронизации, число которых зависит от сложности операции. Содержание операций определяется командами, т.е. информацией, которую МП принимает в регистр команд РК. Информация о данных, над которыми выполняются операции, МП принимает в регистр данных РД. И информация о командах, и информация о данных представляет собой двоичную кодовую комбинацию, состоящую из некоторого определенного для данного МП числа разрядов. В общем случае эту двоичную комбинацию называют словом. Слово — это информация, которой оперирует МП. В первых микропроцессорах слово состояло только из четырех разрядов. По мере совершенствования микропроцессоров увеличивалась длина используемых в нем слов и, соответственно, число разрядов в регистрах, где эти слова записываются. Поэтому бывают микропроцессоры 8-разрядные (или 8-битные), 16-, 32- и 64-разрядные. Чем больше разрядов, тем большими функциональными возможностями обладает МП и тем выше его производительность.

В 8-разрядном РК могут находиться 256 различных чисел: от 0000 0000 до 1111 1111 в двоичном представлении, или от 00 до FF в шестнадцатеричном. Следовательно, 8-разрядный МП в общем случае имеет 256 различных команд.

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

В вычислительной технике слово «кэш» обозначает сверхоперативное запоминающее устройство, обращение к которому происходит очень быстро. Объем кэш-памяти ограничен, поэтому иногда различают кэш-память 1-го и кэш 2-го уровня (у последнего объём больше, но быстродействие меньше).

Процесс обработки данных состоит из нескольких характерных этапов. Прежде всего, команды и данные забираются из кэша (который разделен на кэш данных и кэш команд). Такая процедура называется выборкой. Выбранные из кэша команды декодируются в понятные для данного процессора машинные команды. Эти декодированные команды поступают на исполнительные блоки процессора, где происходит их выполнение. Результат записывается в оперативную память. Процесс выборки команд-инструкций из КЭШа, их декодирование и продвижение к исполнительным блокам осуществляется в предпроцессоре, а процесс выполнения декодированных команд – в постпроцессоре. Таким образом, даже в самом простейшем случае команда проходит, как минимум четыре стадии обработки: выборка из кэша, декодирование, выполнение, запись результатов. Данные стадии принято называть конвейером обработки команд. В рассмотренном случае конвейер является четырехступенчатым. Каждую из ступеней команда должна проходить ровно за один такт. Следовательно, при четырехступенчатом конвейере на выполнение одной команды отводится ровно четыре такта.

Конвейер обработки команд

 

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

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

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

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

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


 




Поиск по сайту:

©2015-2020 studopedya.ru Все права принадлежат авторам размещенных материалов.