
- •Оглавление
- •Архитектура вычислительных систем
- •Этапы развития вычислительных машин
- •Фон неймановская архитектура
- •Типы структур вычислительных машин и систем
- •Вычислительная система с общей памятью
- •Распределенная система
- •Классификация параллельных вычислительных систем
- •29.09.2011
- •Способы ускорения традиционных архитектур
- •01.10.2011
- •Супер скалярные процессоры
- •06.10.2011 Кэш-память
- •Алгоритмы замещения информации в заполненной кэш-памяти.
- •27.10.2011 Расслоенная память Блочная организация основной памяти
- •Структура основной памяти на основе блочной схемы
- •Циклическая организация
- •Блочно-циклическая схема расслоения памяти
- •Архитектура с сокращенным набором команд
- •КлассSimd
- •Структура типа память-память и регистр-регистр
- •03.11.2011 Матричные вычислительные системы
- •Контроллер массива процессоров
- •Массив процессоров
- •10.11.2011 Ассоциативные вычислительные системы
- •Вычислительные системы с систолической структурой
- •Классификация систолических структур
- •Основы теории вычислительных систем
- •Задача синтеза
- •Модели вычислительных систем
- •Статистические модели
- •Аналитические методы
- •Имитационные модели
- •Экспериментальные методы
- •24.11.2011 КлассMimd
- •Симметричные мультипроцессорные системы (smp)
- •Архитектура с общей шиной
- •Классификация кластеров
- •01.12.2011 Топологии кластеров
- •Системы с массовой параллельной обработкой (mpp-системы)
- •Транспьютеры
- •08.12.2011 Вычислительные системы с неоднородным доступом к памяти (cc-numa)
- •Вычислительные системы с обработкой по принципу волнового фронта
- •Надежность и отказоустойчивость вычислительных систем
- •Трансляторы
- •10.12.2011
- •Варианты взаимодействия двух трансляторов
- •Многопроходная трансляция
- •Однопроходная трансляция
01.10.2011
Фактическое разрешение конфликтов возлагается на аппаратные методы. Для этого осуществляется остановка команды на несколько тактов с тем, чтобы команда i успела завершиться или, по крайней мере, миновать ступень, вызвавшую конфликт.
При остановке конвейера задерживаются и следующие за j команды. Данную ситуацию называют пузырьком в конвейере.
Для борьбы с конфликтом «чтение после записи» получил распространение прием ускоренного прохождения информации. Между двумя соседними ступенями конвейера располагается буферный регистр или буферная память дл передачи информации между соседними ступенями конвейера. При ускоренном продвижении когда для выполнения команды требуется операнд, уже вычисленный предыдущей командой, этот операнд может быть получен из буферного регистра, минуя промежуточные ступени конвейера. Для этого предусматриваются дополнительные тракты движения информации в конвейере.
При создании эффективного конвейера наибольшие проблемы связаны с командами, изменяющими естественный порядок вычислений. Выполнение таких команд может приводить к приостановке конвейера на несколько трактов, из-за чего производительность процессора снижается. Для устранения или частичного сокращения этих издержек предложены способы, которые можно разделить на 4 группы:
Буферы предвыборки;
Множественные потоки;
Задержанный переход;
Предсказание перехода;
Супер скалярные процессоры
Супер скалярными называется ЦП, которые одновременно выполняет более чем одну скалярную команду. Это достигается за счет включения в состав ЦП нескольких самостоятельных функциональных блоков, каждый из которых отвечает за свой тип операции и может присутствовать в процессоре в нескольких экземплярах.
Архитектура супер скалярного процессора:
Рисунок 12 Архитектура суперскалярного процессора
Выборка команд – извлекает команды из кэш-памяти, хранит несколько значений СК и обрабатывает команды условного перехода.
Декодирование – расширенный код операции содержится в извлеченной из кэш-памяти команды.
Оба блока хранят очереди декодированных команд. Очередь блока распределения часто рассредоточивается по нескольким самостоятельным буферам, предназначенным для хранения декодированных, но еще не выполненных команд. Каждый накопитель команд связан со своим ФБ, поэтому число накопительной обычно ровно числу ФБ, но если в процессоре используется несколько однотипных ФБ, то им дается общий накопитель. Когда использование команды завершается, её результат записывается и завершается блоком обновления состояний, который обеспечивается теми командами в очередях распределения, где этот результат выступает в качестве одного из операндов.
Необходимо различать параллелизм и конвейеризацию. Существует три уровня параллелизма:
Заданий;
Программ;
Команд;
Параллелизм на уровне команд получается из разбиения программируемых данных на подмножестве. Такое разделение называется декомпозицией области, а параллелизм, возникающих при этом, носит название параллелизма данных. Подмножества данных назначенные различным вычислительным процессам.
Параллелизм уровня команд. Совмещение операций достигается за счет того, что отдельные устройства могут входить в состав вычислительной системы в нескольких экземплярах.