- •1.1. Микропроцессор и его архитектура
- •1.2. Типы мп бис
- •1.3. Универсальные микропроцессоры и их основные характеристики
- •1.4. Однокристальные микроконтроллеры: особенности архитектуры, основные характеристики, область применения.
- •2.1. Структура мк-51. Основные функциональные блоки и их назначение
- •2.2. Организация памяти программ и памяти данных
- •1. Память данных:
- •2. Память программ:
- •2.3. Аппаратные и программные средства микроконтроллера для обработки битовой информации
- •1. Аппаратные.
- •2. Программные.
- •2.4. Система прерывания
- •2.5. Блок таймеров/счетчиков: назначение, структура, режимы работы, применение
- •2.6. Организация последовательного ввода/вывода в микроконтроллере
- •3.1. Структура универсального мп. Основные функциональные блоки и их назначение.
- •3.2. Регистровая структура 32-разрядного мп
- •1 ) Основные функциональные регистры
- •1.1) Регистры общего назначения
- •3.1) Регистры управления.
- •3 .2) Регистры системных адресов и системных сегментов
- •3.3. Организация памяти. Физическое адресное пространство. Логическое адресное пространство (лап): линейное, сегментированное, страничное, сегментно-страничное
- •3.5. Структура расширенного кода команды x86. Вычисление процессором смещения
- •3.8. Механизмы защиты в 32-разрядном микропроцессоре. Защита при управлении памятью. Защита по привилегиям. Механизмы передачи управления между программами на разных уровнях привилегий. Шлюз вызова
- •3.9. Многозадачный режим работы мп, аппаратные средства поддержки многозадачности: регистр задачи, дескриптор сегмента состояния задачи, сегмент состояния задачи. Механизм переключения задач
- •3.10. Назначение, принципы работы и организация кэш-памяти. Типы кэш-памяти. Способы организации кэширования (сквозная и обратная запись). Организация внутренней кэш-памяти
- •3.13. Обмен информацией в режиме прямого доступа в память. Структура и функционирование контроллера прямого доступа в память. Каскадное включение контроллеров прямого доступа в память.
- •3.14. Функции чипсета. Структура микропроцессорной системы при использовании чипсета.
- •4.1. Организация конвейерной обработки информации в мп: структура классического конвейера, оценка производительности мп при конвейерной обработке
- •4.2. Конфликты в конвейере. Влияние конфликтов на производительность процессора. Типы конфликтов и способы минимизации их влияния на производительность мп
- •1. Структурные конфликты
- •4.3. Предсказание переходов: назначение, способы, техническая реализация
- •4.4. Неупорядоченное выполнение команд: суть подхода, проблемы, связанные с реализацией метода и пути их преодоления
- •4.5. Особенности архитектуры мп с технологией mmx и sse
- •4.6. Микропроцессор Pentium 4: особенности микроархитектуры, структура и назначение основных блоков, порядок функционирования
- •4.7. Пути повышения производительности микропроцессоров
- •4.8. Основные черты архитектуры epic
- •4.9. Микропроцессор Itanium: структура, архитектурные особенности
- •4.10. Отличительные черты микропроцессоров с risc-архитектурой
- •5.1. Основные конфигурации мультимикропроцессорных систем: smp-системы, numa-системы, кластеры, mpp-системы
- •5.2. Транспьютеры: структура, назначение, организация и порядок функционирования транспьютерных систем
- •6.1. Основные особенности мпс как объектов контроля
- •6.2. Особенности отладки мпс на различных этапах жизненного цикла
- •7.1. Назначение и особенности цифровой обработки сигналов
- •7.2. Основные особенности архитектуры процессоров цифровой обработки сигналов.
- •7.3. Особенности системы команд и программирования процессоров цифровой обработки сигналов.
- •8.1. Классические методы оценки производительности микропроцессоров: по тактовой частоте, mips, mflops. Достоинства, недостатки, область применимости
- •8.2. Оценка производительности микропроцессоров на основе бенчмарков. Тестовая программа Linpack. Тестовые пакеты specCpu, bdti
- •Допвопрос. Структура микропроцессорной системы
- •Для групп в7-12, к7-12в, к7-12с
- •2010-2011 Учебный год
- •I. Общие положения
- •Микропроцессор и его архитектура.
- •2. Однокристальные микроконтроллеры
- •3. Универсальные микропроцессоры
- •4. Структура и особенности функционирования современных микропроцессоров
4.8. Основные черты архитектуры epic
Направление EPIC (Explicitly Parallel Instruction Computing) — вычисления с явным параллелизмом в командах — фактически использует известную технологию VLIW (Very Long Instruction Word) — очень длинного командного слова. Распараллеливание алгоритма между исполнительными модулями производится компилятором на этапе создания машинного кода, когда команды объединяются в связки и не конкурируют между собой за ресурсы МП. При этом упрощается блок управления на кристалле.
Особенности архитектуры EPIC:
Я
вный
параллелизм в машинном коде.
Поиск зависимостей между командами
проводит не процессор, а компилятор.Большое количество регистров.
Масштабируемость архитектуры до большого количества функциональных устройств (АЛУ, FPU, MMX, SSE и т. п.).
Применение предикатов. Предикатный подход исходит из предпосылки, что возросшие мощности МП позволяют запускать параллельно команды из разных ветвей вместо того, чтобы ожидать формирования истинных признаков или полагаться на блок предсказания переходов. При этом каждая команда снабжается специальным полем условия (предикатом). По мере определения истинных признаков команды, предикаты которых указывали, что они из другой ветви, снимаются с обработки в конвейере. Результаты команд не записываются в приемник до определения правильности перехода. (Представитель – Itanium).
Отметим основные достоинства этого подхода:
Упрощается архитектура процессора. Вместо логики распараллеливания на EPIC-процессоре можно разместить больше регистров, функциональных устройств и т. п.
Процессор не тратит время на анализ потока команд.
Возможности процессора по анализу программы во время выполнения ограничены сравнительно небольшим участком программы, тогда как компилятор способен произвести анализ всей программы.
Если некоторая программа должна запускаться многократно (а именно так и бывает в подавляющем большинстве случаев), выгоднее распараллелить ее один раз при компиляции, а не тратить на это время каждый раз, когда она исполняется на процессоре.
Однако архитектуре EPIC присущ и ряд недостатков:
Компилятор производит статический анализ программы, раз и навсегда планируя вычисления. Однако даже при небольших изменениях исходных данных путь выполнения программы существенно изменяется.
Значительно усложняются компиляторы, следовательно, увеличиваются время компиляции программы и число ошибок в самих компиляторах.
Производительность микропроцессора во многом определяется качеством компилятора. Правда, здесь необходимо четко определить, что понимается под производительностью, ведь количество операций, выполняемых микропроцессором в единицу времени, от компилятора не зависит.
Увеличивается сложность отладки, так как отлаживается не исходная программа, а оптимизированный параллельный код.
4.9. Микропроцессор Itanium: структура, архитектурные особенности
С
истемная
шина Itanium позволяет соединить до 4 МП
между собой без дополнительных мостов.
Ее шина данных имеет ширину 64 разряда
плюс 8 разрядов для коррекции ошибок.
Тактовая частота шины равна 133 МГц, но
возможны 2 передачи за такт. Это
обеспечивает пропускную способность
2,1 Гбайт/с. Адресная шина содержит 44
разряда.
Основные исполнительные ресурсы Itanium включают 4 целочисленных АЛУ (IU), 4 мультимедийных исполнительных устройства (MMX), 3 устройства обработки команд перехода (BU), 2 устройства с плавающей точкой, работающих с данными расширенной точности, и 2 устройства с плавающей запятой одинарной точности (FPU). Кроме того, имеются 2 устройства загрузки регистров / записи в память.
П
осле
трансляции на исполнение команды
поступают в виде 128-разрядных связок,
каждая из которых содержит 3 команды и
маску. В маске указывается, какой тип
исполнительных устройств требуется
для той или иной команды, то есть команды
компонуются таким образом, чтобы они
не конфликтовали между собой из-за
ресурсов МП.
Каждая команда имеет следующий формат:
В МП имеется 9 портов четырех типов: 2 порта для команд группы М (операции с памятью), 2 — для команд I (целочисленные), 2 — для команд F (с плавающей запятой) и 3 — для команд группы B (условный переход). Поле маски связки команд позволяет не выдавать на одновременное выполнение больше команд, чем имеется исполнительных ресурсов микропроцессора. Команды разного типа для выполнения направляются в разные порты, и это позволяет эффективно организовать их параллельное выполнение.
Для обеспечения более полной загрузки ресурсов Itanium в состоянии выдавать на выполнение до 6 команд за такт. При прохождении через порты осуществляется отображение виртуальных номеров регистров из программного кода в физические регистры.
Архитектура IA-64 характеризуется очень большими емкостями файлов регистров.
Эффективность работы функциональных устройств увеличена за счет возможности прямой подачи результата выполнения на вход другой команды, минуя запись в регистры (продвижение данных).
Глубина конвейера в МП Itanium составляет 10 стадий, что во многом определяет частоту работы микропроцессора. Она составляет от 800 МГц до 1 ГГц.
Двухпортовый кэш данных первого уровня является 4-канальным и имеет емкость 16 Кбайт с длиной строки 32 байта. В нем используется алгоритм сквозной записи.
Двухпортовый кэш второго уровня емкостью 96 Кбайт содержит и команды, и данные. Он является 6-канальным с длиной строки 64 байта. Используется алгоритм обратной записи.
Внешний кэш третьего уровня имеет емкость 4 Мбайт и длину строки 64 байта. Он является 4-канальным и может работать на частоте ядра микропроцессора.
В микроархитектуре Itanium поддерживается широкий спектр возможных размеров страниц памяти.
Itanium имеет очень мощную систему предсказания переходов, которая использует практически все имеющиеся в этом направлении разработки.
Во-первых, это традиционные таблицы предсказания переходов, которых в Itanium имеется два типа — BPT (Branch Prediction Table) и МBPT (Multiway Branch Prediction Table). Обе таблицы устроены, по сути, одинаково, являясь 4-канальной множественно-ассоциативной кэш-памятью на основе адресов связок. В них применяется двухуровневый предиктор с 4-разрядным полем истории (счетчики последних переходов). ВРТ имеет емкость 512 строк для обычных переходов, а МВРТ — всего 64 строки, но для переходов с ветвлением на несколько направлений. Строки МВРТ включают соответственно информацию о трех слотах переходов, а не об одном, как в ВРТ. Применение МВРТ целесообразно именно для EPIC-кодов с применением спекулятивной выборки и предикатов, поэтому наиболее часто употребляемыми становятся переходы со многими ветвями.
Кроме МВРТ/ВРТ для предсказания переходов используется кэш адресов перехода TAC (Target Address Cache), емкостью 64 строки.
От МВРТ/ВРТ зависит, должен ли происходить переход, а адрес берется из ТАС. Если же переход отсутствует в МВРТ/ВРТ, но в ТАС есть признак попадания, переход будет осуществлен.
Если данные о переходе в ВРТ/МВРТ отсутствуют, может использоваться статическое предсказание, кодируемое в команде перехода.
