Научная литература
booksshare.net -> Добавить материал -> Физика -> Александров Е.К. -> "Микропроцессорные системы" -> 8

Микропроцессорные системы - Александров Е.К.

Александров Е.К., Грушвицкий Р.И., Купрянов М.С., Мартынов О.Е. Микропроцессорные системы — Спб.: Политехника, 2002. — 935 c.
ISBN 5-7325-0516-4
Скачать (прямая ссылка): mikroprocessorniesistemi2002.djvu
Предыдущая << 1 .. 2 3 4 5 6 7 < 8 > 9 10 11 12 13 14 .. 528 >> Следующая

которой при решении разнообразных задач оказывается более низким, чем в
системах с Принстонской архитектурой. Однако развитие микроэлектронной
технологии позволило в значительной степени преодолеть указанные
недостатки, поэтому Гарвардская архитектура широко применяется во
внутренней структуре современных высокопроизводительных микропроцессоров,
где используется отдельная кэш-память для хранения команд и данных. В то
же время во внешней структуре большинства микропроцессорных систем
реализуются принципы Принстонской архитектуры.
11
ОСНОВЫ МИКРОПРОЦЕССОРНОЙ ТЕХНИКИ
Гарвардская архитектура получила также широкое применение в
микроконтроллерах -специализированных микропроцессорах для управления
различными объектами, рабочая программа которых обычно хранится в
отдельном ПЗУ.
Во внутренней структуре современных высокопроизводительных
микропроцессоров реализуется конвейерный принцип выполнения команд. При
этом процесс выполнения команды разбивается на ряд этапов. На рис. 1.1, а
приведен пример разбиения команды на шесть этапов ее выполнения:
1) выборка очередной команды (ВК);
2) декодирование выбранной команды (ДК);
3) формирование адреса операнда (ФА);
4) прием операнда из памяти (ПО);
5) выполнение операции (ВО);
6) размещение результата в памяти (РР).
Реализация каждого этапа занимает один такт машинного времени и
производится устройствами и блоками процессора, образующими ступени
исполнительного конвейера, на каждой из которых выполняется
соответствующая микрооперация. При последовательной загрузке в конвейер
выбираемых команд каждая его ступень реализует определенный этап
выполнения очередной команды. Таким образом, в конвейере одновременно
находятся несколько команд, находящихся на разных этапах выполнения. В
идеальном варианте при полной загрузке конвейера на его выход в каждом
такте будет поступать результат выполнения очередной команды (рис. 1.1,
а). В этом случае производительность процессора (операций/с) будет равна
его тактовой частоте (тактов/с).
Однако такая эффективная работа конвейера обеспечивается только при его
равномерной загрузке однотипными командами. Реально отдельные ступени
конвейера могут оказаться незагруженными, находясь в состоянии ожидания
или простоя, Ожиданием называется состояние исполнительной ступени, когда
она не может выполнить требуемую микрооперацию, так как еще не получен
необходимый операнд, являющийся результатом выполнения предыдущей
команды. Простоем называется состояние ступени, когда она вынуждена
пропустить очередной такт, так как поступившая команда не требует
выполнения соответствующего этапа. Например, при выполнении безадресных
команд не требуется производить формирование адреса и прием операнда
(простой на ступенях ФА и ПО конвейера).
Тактовые
импульсы
шъгтлллштл
Команды 1 I ВК ДК ФА по во РР Реэупьтат 1
Команды 2 ВК ДК ФА ПО во РР Результат 2
Команды 3 ВК ДК ФА ПО ВО РР Результат 3
б)
Команды 1 ( ВК ДК ПР ПР ВО ПР Результат 1
Команды 2 ВК ДК ож ОЖ ФА ПО ВО ПР Результат 2
Команды 3 ВК ДК ФА ПО ОЖ ож ВО ПР | Результат 3
Рис. 1.1. Реализация конвейерного исполнения команд при идеальной (а) и
реальной (б) загрузке 6-ступенчатого конвейера
КЛАССИФИКАЦИЯ МИКРОПРОЦЕССОРОВ. ОСНОВНЫЕ ВАРИАНТЫ ИХ АРХИТЕКТУРЫ И
СТРУКТУРЫ
На рис. 1.1,6 показан пример работы 6-ступенчатого конвейера при
выполнении фрагмента реальной программы, когда отдельные ступени
оказываются в состоянии ожидания (ОЖ) или простоя (ПР). Команда INC R2,
которая увеличивает на 1 содержимое регистра R2, не требует выборки
операндов из памяти и размещения в ней результата. Поэтому при ее
выполнении реализуется состояние простоя (ПР) на ступенях конвейера,
выполняющих микрооперации ФА, ПО, РР. Команда MOV (R2), R3 производит
пересылку содержимого ячейки памяти, адресуемой содержимым регистра R2, в
регистр R3. При ее выполнении реализуются состояния ожидания (ОЖ), пока в
регистре R2 не будет получен результат предыдущей операции. Такты
ожидания (ОЖ) вводятся также при выполнении команды сложения ADD R3, (R4)
до получения необходимого значения операнда в регистре R3. В результате
введения состояний ожиданий и простоя реальная производительность
процессора при выполнении данного фрагмента программы составит 5/3
команд/такт, то есть будет в 1,7 раз меньше, чем в идеальном случае (рис.
1.1, а).
В современных высокопроизводительных микропроцессорах процедура
выполнения команд может разбиваться на еще более мелкие этапы, чтобы
успеть выполнить соответствующие микрооперации на каждой ступени за один
такт, длительность которого при тактовой частоте более 1 ГГц составляет
менее наносекунды. Поэтому в таких процессорах число ступеней конвейера
достигает 10 и более. Например, в микропроцессорах Pentium 4 используется
20-ступенчатый конвейер.
Эффективность использования конвейера определяется типом поступающих
команд При поступлении однородных команд обеспечивается сокращение числа
Предыдущая << 1 .. 2 3 4 5 6 7 < 8 > 9 10 11 12 13 14 .. 528 >> Следующая

Реклама

c1c0fc952cf0704ad12d6af2ad3bf47e03017fed

Есть, чем поделиться? Отправьте
материал
нам
Авторские права © 2009 BooksShare.
Все права защищены.
Rambler's Top100

c1c0fc952cf0704ad12d6af2ad3bf47e03017fed