- •Введение
- •Основные характеристики современных вычислительных систем.
- •2. Классификация средств эвт
- •3. Поколения эвм
- •Принципы построения современных эвм Принцип программного управления
- •Принцип децентрализации управления
- •Принцип модульности построения
- •Принцип иерархичности построения структуры
- •Принцип иерархичности памяти
- •Мультипрограммные режимы
- •Перспективы развития структур эвм
- •Общие функции программного обеспечения и их развитие
- •6. Персональные эвм, как инструмент специалиста и их развитие.
- •Типы структур вычислительных машин и систем
- •Структуры вычислительных машин
- •Структуры вычислительных систем
- •8. Перспективы совершенствования архитектуры вм и вс
- •Тенденции развития больших интегральных схем
- •Тенденции развития элементной базы процессорных устройств
- •Тенденции развития полупроводниковых запоминающих устройств
- •Перспективные направления исследований в области архитектуры вс
- •Архитектура системы команд
- •Классификация архитектур системы команд
- •Классификация по составу и сложности команд
- •Классификация по месту хранения операндов
- •10. Стековая архитектура
- •11. Аккумуляторная архитектура системных команд
- •12. Регистровая архитектура системы памяти
- •13. Архитектура вм с выделенным доступом к памяти
- •Функциональная организация
- •Устройство управления
- •Арифметико-логическое устройство
- •Основная память
- •Модуль ввода/вывода
- •15. Реализация микроопераций и микропрограмм. Понятие о микрооперациях и микропрограммах
- •Способы записи микропрограмм
- •Языки микропрограммирования
- •16. Организация шин
- •Типы шин
- •Физическая реализация шин
- •Особенности передачи сигналов по шинам
- •Адресация шин и некоторые характеристики
- •17. Организация памяти эвм
- •Память с чередованием адресов
- •Модели архитектуры памяти вычислительных систем
- •Модели архитектур совместно используемой памяти
- •Модели архитектур распределенной памяти
- •18. Характеристики систем памяти
- •19. Иерархия запоминающих устройств
- •Основная память
- •Блочная организация основной памяти
- •Расслоение памяти
- •20. Организация микросхем памяти
- •21. Основные направления в архитектуре процессоров
- •Конвейеризация вычислений
- •Синхронные линейные конвейеры
- •Метрики эффективности конвейеров
- •Нелинейные конвейеры
- •Конвейер команд
- •22. Построение однородно структурированных, континуальных вычислительных и управляющих систем Нейронные вычислительные системы Континуальные вычислительные и управляющие системы
- •Р ис. 2.12. Модель взаимодействия объекта с континуальной управляющей средой
- •Термины и определения (д.Б. По алфавиту)
- •Литература
21. Основные направления в архитектуре процессоров
Ранее уже были рассмотрены основные составляющие центрального процессора. Б данном разделе основное внимание уделено вопросам общей архитектуры процессоров как единого устройства и способам повышения их производительности.
Конвейеризация вычислений
Совершенствование элементной базы уже не приводит к кардинальному росту производительности ВМ. Более перспективными в этом плане представляются архитектурные приемы, среди которых один из наиболее значимых — конвейеризация.
Для пояснения идеи конвейера сначала обратимся к рис. 50, а, где показан отдельный функциональный блок (ФБ). Исходные данные помещаются во входной регистр Ргвх, обрабатываются в функциональном блоке, а результат обработки фиксируется в выходном регистре Ргвых. Если максимальное время обработки в ФБ равно Ттaх, то новые данные могут быть занесены во входной регистр Рвх не ранее, чем спустя Тmax.
Теперь распределим функции, выполняемые в функциональном блоке ФБ (см рис. 50, а), между тремя последовательными независимыми блоками: ФБ1, ФБ2 и ФБ3, причем так, чтобы максимальное время обработки в каждом ФБ, было одинаковым и равнялось Tmax/3. Между блоками разместим буферные регистры Ргi (рис.50, б), предназначенные для хранения результата обработки в ФБi, на случай, если следующий за ним функциональный блок еще не готов использовать этот результат. В рассмотренной схеме данные на вход конвейера могут подаваться с интервалом Tmax/3 (втрое чаще), и хотя задержка от момента поступления первой единицы данных в Ргвх до момента появления результата ее обработки на выходе Ргвых по-прежнему составляет Ттaх, последующие результаты появляются на выходе Ргвых уже с интервалом Ттах/3.
На практике редко удается добиться того, чтобы задержки в каждом ФБi были одинаковыми. Как следствие, производительность конвейера снижается, поскольку период поступления входных данных определяется максимальным временем их обработки в каждом функциональном блоке. Для устранения этого недостатка или, по крайней мере, частичной его компенсации каждый буферный регистр Ргi, следует заменить буферной памятью БПi, способной хранить множество данных и организованной по принципу FIFO — «первым вошел — первым вышел» (рис. 50, в). Обработав элемент данных, ФБi заносит результат в БПi, извлекает из БПi-1 новый элемент данных и приступает к очередному циклу обработки, причем эта последовательность осуществляется каждым функциональным блоком независимо от других блоков. Обработка в каждом блоке может продолжаться до тех пор, пока не ликвидируется предыдущая очередь или пока не переполнится следующая очередь. Если емкость буферной памяти достаточно велика, различия во времени обработки не сказываются на производительности, тем не менее желательно, чтобы средняя длительность обработки во всех ФБi была одинаковой.
В архитектуре вычислительных машин можно найти множество объектов, где конвейеризация обеспечивает ощутимый прирост производительности ВМ. Ранее уже рассматривались два таких объекта — операционные устройства и память, однако наиболее ощутимый эффект достигается при конвейеризации этапов машинного цикла.
По способу синхронизации работы ступеней конвейеры могут быть синхронными и асинхронными. Для традиционных ВМ характерны синхронные конвейеры. Связано это, прежде всего, с синхронным характером работы процессоров. Ступени конвейеров в процессоре обычно располагаются близко друг от друга, благодаря чему тракты распространения сигналов синхронизации получаются достаточно короткими и фактор «перекоса» сигналов становится не столь существенным. Асинхронные конвейеры оказываются полезными, если связь между ступенями не столь сильна, а длина сигнальных трактов между разными ступенями сильно рознится. Примером асинхронных конвейеров могут служить систолические массивы (систолическая обработка будет рассмотрена в последующих разделах).