1. Понятие архитектуры ЭВМ. Языки, уровни и виртуальные машины ЭВМ




Название1. Понятие архитектуры ЭВМ. Языки, уровни и виртуальные машины ЭВМ
страница6/13
Дата публикации21.03.2013
Размер1.25 Mb.
ТипДокументы
vbibl.ru > Информатика > Документы
1   2   3   4   5   6   7   8   9   ...   13

^ 22. Примеры шин: USB. Микросхемы ввода-вывода
В середине 90-х годов представители ряда компаний разработали шину USB (Universal Serial Bus - универсальная последовательная шина). Некоторые требования, изначально составляющие основу проекта, следующие.

  1. Пользователи не должны устанавливать переключатели и перемычки на платах и устройствах (как в ISA).

  2. Пользователи не должны открывать компьютер, чтобы установить новые устройства ввода-вывода.

  3. Должен существовать только один тип кабеля, подходящий для подсоеди­нения всех устройств.

  4. Устройства ввода-вывода должны получать питание через кабель.

  5. Необходима возможность подсоединения к одному компьютеру до 127 устройств.

  6. Система должна поддерживать устройства реального времени (например, звук, телефон).

  7. Должна быть возможность устанавливать устройства во время работы компьютера.

  8. Должна отсутствовать необходимость перезагружать компьютер после установки нового устройства.

  9. Производство новой шины и устройств ввода-вывода для нее не должно требовать больших затрат.

Шина USB удовлетворяет всем этим условиям. Общая пропускная способность шины составляет 1,5 Мбайт/с. Шина USB состоит из центрального хаба, который вставляется в разъем главной шины. Этот хаб содержит разъемы для кабелей, подсоединяющихся к устройствам ввода-вывода или к дополнительным хабам. Таким образом, топология шины USB представляет собой дерево с корнем в центральном хабе, который находится внутри компьютера. Коннекторы кабеля со стороны устройства отличаются от коннекторов со сторо­ны хаба, чтобы пользователь случайно не подсоединил кабель другой стороной. Кабель состоит из четырех проводов: два из них предназначены для передачи данных, один - для источника питания (+5 В) и один - для “земли”. Система передает 0 изменением напряжения, а 1 — отсутствием изменения напряжения, по­этому длинная последовательность нулей порождает поток регулярных импульсов. Шина USB представляет собой ряд каналов от центрального хаба к устройствам ввода-вывода. Каждое устройство может разбить свой канал максимум на 16 подканалов для различных типов данных (например, аудио и видео). Ровно через каждую миллисекунду (±0,05 мс) центральный концентратор передает новый кадр, чтобы синхронизировать все устройства во времени. Кадр состоит из пакетов, первый из которых передается от концентратора к устройству. Следующие пакеты кадра могут передаваться в том же направлении, а могут и в противоположном (от устройства к хабу). Шина USB поддерживает 4 типа кадров: кадры управления, изохронные кадры, кадры передачи больших массивов данных и кадры прерывания. Кадры управления используются для конфигурирования устройств, передачи команд устройствам и запросов об их состоянии. Изохронные кадры предназначены для устройств реального времени (микрофонов, акустических систем и телефонов), которые должны принимать и посылать данные через равные временные интервалы. Кадры следующего типа используются для передач данных большого объема от устройств и к устройствам без требований реального времени (например, сканеров, принтеров). Наконец, кадры последнего типа нужны для того, чтобы осуществлять прерывания, поскольку сама шина USB не поддерживает прерывания. (на обороте…)

^ 23. Основы микроархитектуры. Напраления разработки.
В архитектурной иерархии компьютера он расположен над цифровым логическим уровнем. Его задача - интерпретация команд уровня 2. Строение микроархитектурного уровня существенно зависит от уровня 2 (например, RISC или CISC). С точки зрения микропрограммирования каждую команду макроархитектуры можно считать “функцией”, вызываемой “основной программой” - бесконечным циклом. Микропрограмма содержит также набор глобальных переменных, определяющих состояние компьютера. Каждая “функция” (команда макроархитектуры) изменяет значения этих переменных, формируя новое состояние. Рассматриваемая модель выполнения команды называется циклом выборка-выполнение. Каждая микрокоманда на один цикл процессора занимает тракт данных (АЛУ + регистры процессора). Одна микрокоманда использует простейшие схемы нижнего уровня (сумматор, инвертер, сдвиг), выполняя элементарную операцию над словами. Точная синхронизация тракта данных делает возможным считывание и запись одного и того же регистра за один цикл. Регистры запускаются одним из сигналов управления.

Сигналы, управляющие трактом данных, можно разделить на 5 групп:

  • запись данных в регистры;

  • разрешение передачи данных из регистров в АЛУ;

  • управление АЛУ и схемой сдвига;

  • чтение/запись памяти через MAR/MDR;

  • чтение памяти через PC/MBR.

За последовательность операций, необходимых для выполнения одной команды, отвечает специальный контроллер последовательности. Он задает, какой сигнал управления и на каком цикле должен запускаться. В каждом цикле контроллер последовательности выдает состояние каждого сигнала управления в системе и адрес следующей микрокоманды. Микропрограмма хранится в специальной управляющей памяти. Функционально управляющая память представляет собой ПЗУ. Она имеет собственный адресный регистр и собственный регистр данных. Назовем их соответственно MPC (MicroProgram Counter - микропрограммный счетчик, содержит управляющие сигналы и адрес текущей микрокоманды) и MIR (MicroInstruction Register - регистр микрокоманд, содержит текущую микрокоманду). Управляющей памяти не требуются сигналы чтения и записи, т.к. процесс считывания происходит автоматически и постоянно. Регистр MPC может быть виртуальным, т.е. представлять собой место скопления сигналов. (на обороте…)

^ 24. Увеличение производительности на микроархитектурном уровне.
Здесь мы кратко рассмотрим несколько современных технологий, применяемых для увеличения производительности процессора и памяти, с точки зрения микроархитектурного уровня. Эти технологии можно разделить на 2 категории: усовершенствование реализации и усовершенствование архитектуры. Усовершенствования реализации - это такие способы построения процессора и памяти, при которых система работает быстрее, но архитектура не меняется (развитие от i80386 к Pentium II). Революционные способы усовершенствования приводят к новой архитектуре (появление RISC-архитектуры).

^ Кэш-память (усовершенствование реализации)

Кэш-память содержит наиболее часто используемые слова памяти. Существует 2 типа локализации адресов основной памяти для передачи ее содержимого в кэш и обратно. Пространственная локализация основана на вероятности того, что следующими будут требоваться ячейки памяти, расположенные рядом с недавно выбранными. Из этих соображений в кэш-память переносится больше данных (подряд расположенных), чем требуется в каждый момент. Временная локализация рассчитывает на повторный запрос недавно использованных ячеек. Это происходит, например, с командами внутри цикла или данными рядом с вершиной стека. Принцип временной локализации применяется при выборе того, какие элементы удалить из кэш-памяти. Самый простой тип кэш-памяти - кэш-память прямого отображения. В ней каждое слово основной памяти может храниться в фиксированном месте. Слово идентифицируется в кэш-памяти уникальным адресом, зависящим от его физического адреса. Если процессор найдет нужное ему слово в кэше, то такая ситуация называется удачным обращением в кэш-память. В противном случае имеет место промах кэш-памяти. Другой вид кэш-памяти - ассоциативная с множественным доступом. Она позволяет в каждом своем элементе хранить по 2 или более строк. Кэш-память с n возможными элементами для каждого адреса называется n-входовой ассоциативной кэш-памятью. При использовании такой памяти возникает аналогичная проблема: какой элемент удалять при занесении нового? Здесь часто применяется алгоритм LRU (Least Recently Used – удаление наиболее давно использовавшихся). Особую проблему при работе к кэш-памятью составляет запись данных (до удаления из LRU или после?). Немедленное обновление элемента основной памяти называется сквозной записью. Альтернативный вариант называется обратной записью. Смежная проблема возникает при модификации слов, не находящихся в кэш-памяти. Обычно при использовании обратной записи данные в этом случае переносятся в кэш-память. Такой подход называется заполнением по записи. Если используется сквозная запись, то обычно напрямую модифицируется основная память.

^ Прогнозирование ветвления

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

^ 25. Примеры микроархитектурного уровня: Pentium II
Pentium II поддерживает 32-битные операнды и арифметику, а также 64-битные операции с плавающей точкой. Кроме того, используются также 8- и 16-битные операнды и операции, унаследованные от предыдущих процессоров этого семейства. Процессор может адресовать до 64 Гбайт памяти и считывать слова из памяти по 64 бита за один раз. С точки зрения микроархитектуры Pentium II состоит из трех основных компонентов: блока выборки/декодирования, блока отправки/выполнения и блока возврата, которые действуют совместно как конвейер высокого уровня. Эти три блока обмениваются данными через пул команд - место для хранения информации о частично выполненных командах. Информация в пуле команд находится в виде таблицы, которая называется ROB (ReOrder Buffer - буфер переупорядочивания команд). Блок выборки/декодирования загружает команды из памяти и разбивает их на микрооперации для хранения в ROB. Блок отправки/выполнения получает микрооперации из буфера ROB и выполняет их. Блок возврата завершает выполнение каждой операции и обновляет регистры. Команды поступают в буфер ROB в порядке расположения, выполняться могут в произвольном порядке, но завершаться должны в запрограммированном порядке. Блок сопряжения с шиной отвечает за обмен информацией с системой памяти (как с кэш-памятью второго уровня, так и с основной памятью).

^ Блок выборки/декодирования отличается высокой степенью конвейеризации - он содержит семь стадий. Блок отправки/выполнения и блок возврата имеют еще пять стадий, то есть всего стадий 12. Команды поступают на конвейер из кэша команд. Оттуда загружаются целые 32-байтные строки. Всякий раз, когда внутренний буфер пуст, туда копируется следующая строка кэш-памяти. Процессом выборки команд управляет специальный регистр - NEXT IP (NEXT Instruction Pointer). В наборе команд Intel, IA-32, содержатся команды разной длины. Перед декодированием команды выравниваются.

Декодирование в системе Pentium II состоит из превращения каждой команды IA-32 в одну или несколько микроопераций. Простые команды (например, пересылка из одного регистра в другой) преобразуются в одну микрооперацию. Выполнение более сложных команд может занимать до четырех микроопераций. Несколько особо сложных команд требуют еще больше микроопераций и используют ПЗУ последовательности микроопераций для их упорядочения. Имеется три внутренних декодера (два для простых команд, третий - для более сложных). Каждая получаемая микрооперация содержит код операции, два входных и один выходной регистр. На одной из стадий декодирования выстраивается очередь микрокоманд. Здесь же происходит статическое прогнозирование ветвления. Для переходов, связанных с текущей выполняемой командой, обычно считается, что переход назад будет производиться, а переход вперед - нет. Затем идет динамическое прогнозирование с использованием специальной таблицы. Если перехода в таблице динамики нет, используется статическое прогнозирование. Чтобы избежать взаимозависимостей WAR и WAW, реальные регистры в командах IA-32 могут быть заменены в микрооперациях любым из 40 внутренних временных регистров, находящихся в буфере ROB. Микрооперации копируются в буфер ROB. Если операнды микрооперации и регистр результатов доступны, а операционный блок свободен, микрооперацию можно запустить. (на обороте…)

^ 26. Примеры микроархитектурного уровня: UltraSPARC II
UltraSPARC II - это машина с 64-разрядными регистрами и 64-разрядным трактом данных. В целях совместимости с 32-разрядными ЭВМ предыдущих версий она может манипулировать 32-разрядными операндами и выполнить программы, написанные для ранних версий SPARC. Хотя внутренняя архитектура машины использует 64 разряда, ширина шины памяти составляет 128 битов. Серия SPARC с самого начала представляла собой систему RISC. У большинства команд есть два входных и один выходной регистр, поэтому они хорошо подходят для конвейерного выполнения в одном цикле. Разбивать команды CISC на микрооперации RISC, как в системе Pentium II, не требуется. UltraSPARC II - это суперскалярная машина, которая может выдавать на выполнение 4 ко­манды за цикл. Команды считываются по порядку, но запускаться и завершаться могут в произвольном порядке. Тем не менее прерывания процессора являются точными (то есть всегда известно, в каком месте программы было выполнение, когда произошло прерывание). Существует аппаратная поддержка спекулятивных загрузок в виде команды PREFETCH (вставляется компилятором). Эта команда не вызывает ошибок при промахе кэша, т.к. не блокирует обращения к памяти. За исключением кэш-памяти второго уровня, все компоненты UltraSPARC II расположены на микросхеме центрального процессора. Внутренний кэш команд - это 16 Кбайт двувходовой ассоциативной кэш-памяти, со строками по 32 байта. Кэш-память данных - это 16 Кбайт кэш-памяти прямого отображения со сквозной записью и без заполнения по записи. В случае промаха кэш-памяти первого уровня нужная строка ищется в кэш-памяти второго уровня. Если поиск завершился успехом, строка копируется в кэш-память первого уровня. Иначе происходит выборка строки из основной памяти. Работа блока выборки/ отправки UltraSPARC II проще, чем у Pentium II, поскольку входные команды изначально представлены в виде микроопераций. Блок может выбирать команды из кэш-памяти (1 и 2 уровня, по 4 за цикл). Внутри блока выборки/отправки находится устройство предсказания переходов. Оно использует специальный алгоритм прогнозирования. Выбранные заранее команды помещаются в очередь из 12 элементов, а затем передаются в схему группировки. Схема группировки - это блок, который выбирает по четыре команды за один раз из очереди для запуска. Его задача состоит в том, чтобы найти 4 команды, которые можно выпустить одновременно. Блок целых чисел содержит два раздельных АЛУ, что позволяет выполнять две команды параллельно. Блок вычислений с плавающей точкой также содержит два АЛУ. Следовательно, в одной группе может находиться по две команды каждого типа. Чтобы сделать группирование оптимальным, команды могут запускаться не по поряд­ку. Завершаются они также в произвольном порядке. Блок целых чисел и блок вычислений с плавающей точкой содержат собственные регистры, поэтому команды берут операнды прямо внутри блока и там же оставляют результаты. Значения никогда не переходят из одного блока в другой. В блоке вычислений с плавающей точкой также находится графический блок. Блок загрузки/сохранения управляет командами LOAD и STORE. Если они имеются в кэш-памяти данных первого уровня, то выполняются без задержки. В противном случае нужная строка берется из кэш-памяти второго уровня или основной памяти или нужное слово записывается туда. (на обороте…)
1   2   3   4   5   6   7   8   9   ...   13

Похожие:

1. Понятие архитектуры ЭВМ. Языки, уровни и виртуальные машины ЭВМ iconПараллельная обработка данных
Машины (эвм) разделяются на аналоговые(непрерывные) и дискретные машины, реализующие цифровые вычисления. Так как для обозначения...

1. Понятие архитектуры ЭВМ. Языки, уровни и виртуальные машины ЭВМ iconФизические основы элементной базы современных ЭВМ
Поколения ЭВМ и их элементная база. Роль полупроводниковых материалов в современных ЭВМ. Преимущества интегральных схем перед дискретными...

1. Понятие архитектуры ЭВМ. Языки, уровни и виртуальные машины ЭВМ iconАрхитектура ЭВМ связана с качествами машины, к-е влияют на ее взаимодействие...
Это обусловлено развитием техники. Зу ЭВМ имеет несколько уровней: 1 внутреннее зу – содержит информацию, обрабатываемую в нем в...

1. Понятие архитектуры ЭВМ. Языки, уровни и виртуальные машины ЭВМ iconМетодические указания по прохождению преддипломной практики и дипломному...
Методические указания к дипломному проектированию составлены и доц каф ЭВМ лебеденко Ю. И. и обсуждены на заседании кафедры ЭВМ факультета...

1. Понятие архитектуры ЭВМ. Языки, уровни и виртуальные машины ЭВМ iconКафедра «Электронных вычислительных машин» методические указания...
Методические указания к дипломному проектированию составлены и доц каф ЭВМ лебеденко Ю. И. и обсуждены на заседании кафедры ЭВМ факультета...

1. Понятие архитектуры ЭВМ. Языки, уровни и виртуальные машины ЭВМ iconПлан лекции: Виды и операции технического обслуживания Организация эксплуатации ЭВМ
Эвм силами и средствами персонала ЭВМ. При этом виде обслуживания предполагается проведение регламентных работ, контроль технического...

1. Понятие архитектуры ЭВМ. Языки, уровни и виртуальные машины ЭВМ iconПлан лекции: Задачи, решаемые вычислительными центрами Структура...
Создание вычислительных центров является способом повышения эффективности работы ЭВМ. Вычислительный центр объединяет технику различных...

1. Понятие архитектуры ЭВМ. Языки, уровни и виртуальные машины ЭВМ iconЛабораторная работа №1 по дисциплине «эксплуатацияэвми систем»
...

1. Понятие архитектуры ЭВМ. Языки, уровни и виртуальные машины ЭВМ iconКонтроль работы ЭВМ
Процесс определения технического состояния и поддержания работы ЭВМ включает 4 этапа

1. Понятие архитектуры ЭВМ. Языки, уровни и виртуальные машины ЭВМ iconУрокам тема №1: этапы решения задач на ЭВМ. Алгоритмизация. Основные понятия. Блок-схемы
Программно дидактическое обеспечение: ЭВМ типа ibm. Turbo-Pascal Обучающие программы. Тесты

Вы можете разместить ссылку на наш сайт:
Школьные материалы


При копировании материала укажите ссылку © 2013
контакты
vbibl.ru
Главная страница