
- •Введение
- •Основные характеристики современных вычислительных систем.
- •2. Классификация средств эвт
- •3. Поколения эвм
- •Принципы построения современных эвм Принцип программного управления
- •Принцип децентрализации управления
- •Принцип модульности построения
- •Принцип иерархичности построения структуры
- •Принцип иерархичности памяти
- •Мультипрограммные режимы
- •Перспективы развития структур эвм
- •Общие функции программного обеспечения и их развитие
- •6. Персональные эвм, как инструмент специалиста и их развитие.
- •Типы структур вычислительных машин и систем
- •Структуры вычислительных машин
- •Структуры вычислительных систем
- •8. Перспективы совершенствования архитектуры вм и вс
- •Тенденции развития больших интегральных схем
- •Тенденции развития элементной базы процессорных устройств
- •Тенденции развития полупроводниковых запоминающих устройств
- •Перспективные направления исследований в области архитектуры вс
- •Архитектура системы команд
- •Классификация архитектур системы команд
- •Классификация по составу и сложности команд
- •Классификация по месту хранения операндов
- •10. Стековая архитектура
- •11. Аккумуляторная архитектура системных команд
- •12. Регистровая архитектура системы памяти
- •13. Архитектура вм с выделенным доступом к памяти
- •Функциональная организация
- •Устройство управления
- •Арифметико-логическое устройство
- •Основная память
- •Модуль ввода/вывода
- •15. Реализация микроопераций и микропрограмм. Понятие о микрооперациях и микропрограммах
- •Способы записи микропрограмм
- •Языки микропрограммирования
- •16. Организация шин
- •Типы шин
- •Физическая реализация шин
- •Особенности передачи сигналов по шинам
- •Адресация шин и некоторые характеристики
- •17. Организация памяти эвм
- •Память с чередованием адресов
- •Модели архитектуры памяти вычислительных систем
- •Модели архитектур совместно используемой памяти
- •Модели архитектур распределенной памяти
- •18. Характеристики систем памяти
- •19. Иерархия запоминающих устройств
- •Основная память
- •Блочная организация основной памяти
- •Расслоение памяти
- •20. Организация микросхем памяти
- •21. Основные направления в архитектуре процессоров
- •Конвейеризация вычислений
- •Синхронные линейные конвейеры
- •Метрики эффективности конвейеров
- •Нелинейные конвейеры
- •Конвейер команд
- •22. Построение однородно структурированных, континуальных вычислительных и управляющих систем Нейронные вычислительные системы Континуальные вычислительные и управляющие системы
- •Р ис. 2.12. Модель взаимодействия объекта с континуальной управляющей средой
- •Термины и определения (д.Б. По алфавиту)
- •Литература
Синхронные линейные конвейеры
Эффективность синхронного конвейера во многом зависит от правильного выбора длительности тактового периода Тк. Минимально допустимую Тк можно определить как сумму наибольшего из времен обработки па отдельной ступени конвейера ТСМАХ и времени записи результатов обработки в буферные регистры межу ступенями конвейера ТБР:
Тк = ТСМАХ + ТБР.
Из-за вероятного «перекоса» в поступлении тактирующего сигнала в разные ступени конвейера предыдущую формулу следует дополнить еще одним элементом - максимальной величиной «перекоса» Гпк:
Тк = ТСМАХ + ТБР + Тпк.
Каждая ступень может содержать множество логических трактов обработки. Тк определяется наиболее длинными трактами во всех ступенях конвейера. При разработке конвейера необходимо учитывать, что для двух последовательных элементов, обрабатываемых одной и той же ступенью, обработка первого элемента может проходить по тракту максимальной длины, а второго элемента — по минимальному тракту. В итоге результат обработки второго элемента может появиться на выходе ступени прежде, чем в выходном регистре ступени будет запомнен предыдущий результат. Чтобы избежать подобной ситуации, сумма ТБР + ТПК должна быть меньше минимального времени обработки в ступени ТСIMN, откуда
ТБР = ТCMIN – TПК.
Выбор длительности тактового периода для конвейера должен осуществляться с соблюдением соотношения
ТСМАХ + ТБР + ТПК = Тк = ТСМАХ + ТCMIN – TПК.
Несмотря на очевидные преимущества выбора Тк равным нижнему пределу, проектировщики ВМ обычно ориентируются на среднее значение между нижним и верхним пределами.
Метрики эффективности конвейеров
Для того чтобы оценить эффект, достигаемый за счет конвейеризации вычислений, обычно используют три метрики; ускорение, эффективность и производительность.
Под ускорением понимается отношение времени обработки без конвейера и при его наличии. Теоретически наилучшее время обработки входного потока из N значений TNK на конвейере с К ступенями и тактовым периодом Тк можно определить выражением
TNK = (K + (N – 1))TK.
Формула отражает тот факт, что до появления на выходе конвейера результата обработки первого элемента должно пройти К тактов, а последующие результаты будут следовать в каждом такте.
В процессоре без конвейера общее время выполнения составляет NKTK. Таким образом, ускорение вычислений S за счет конвейеризации вычислений можно описать формулой
При
ускорение
стремится к величине, равной количеству
ступеней в конвейере.
Еще одной метрикой, характеризующей конвейерный процессор, является эффективность Е — доля ускорения, приходящаяся на одну ступень конвейера:
В качестве третьей метрики часто выступает пропускная способность или производительность Р — эффективность, делённая на длительность тактового периода:
При эффективность стремится к единице, а производительность — к частоте тактирования конвейера:
Нелинейные конвейеры
Конвейер не всегда представляет собой линейную цепочку этапов. В ряде ситуаций оказывается выгодным, когда функциональные блоки соединены между собой не последовательно, а в соответствии с логикой обработки, при этом одни блоки в цепочке могут пропускаться, а другие — образовывать циклические структуры. Это позволяет с помощью одного и того же конвейера одновременно вычислять более одной функции, однако если эти функции конфликтуют между собой, то такой конвейер трудно загрузить полностью. Структура нелинейного конвейера, одновременно вычисляющего две функции X и Y, приведена па рис.47. Там же показана последовательность, в которой функциями X и Y востребуются те или иные функциональные блоки.
Рис.51. Нелинейный конвейер
Чтобы определить, когда пора приступать к повторному вычислению той или иной функции, необходимо построить диаграмму однократной реализации этой функции и отследить по ней моменты, когда такой запуск не приведет к конфликту, связанному с одновременным обращением к одному и тому же функциональному блоку.
Так, в ходе реализации функции X запуск очередного ее вычисления возможен после 1,3 и 6 тактов. Запуск параллельного вычисления функции Y возможен после 2 и 4 тактов. При запуске функции Y очередной ее запуск позволен после тактов 1, 3 и 5, а параллельный запуск функции X допустим после 2 и 4 тактов.