Архитектура процессов и ее оптимизация

Вид материалаПрограмма

Содержание


В результате изучения дисциплины каждый студент должен
Содержание курса
Тема 2 Архитектура типового процессора.
Тема 3 Архитектура микроконтроллеров (на примере PICmicro Microchip)
Тема 4 Макроассемблер MPASM для микроконтроллеров PIC (MICROCHIP)
Тема 5Микропроцессоры с архитектурой EPIC (IA-64)
Тема 6 Особенности архитектур RISC-процессоров
Тема 7 Архитектуры цифровых сигнальных процессоров
Тема 8 Архитектура процессоров ARM
Тема 9 Современные системы на кристалле
Подобный материал:
УЧЕБНАЯ ПРОГРАММА ПО ДИСЦИПЛИНЕ

АРХИТЕКТУРА ПРОЦЕССОВ И ЕЕ ОПТИМИЗАЦИЯ

Зюбин В.В.


Для очной формы обучения ВСЕГО 110

Всего аудиторных занятий 72

самостоятельная работа 38


Программу составил: доцент Зюбин В.В.


Целью изучения дисциплины является ознакомиться с архитектурами современных микропроцессоров, сформировать понимание принципов построения микропроцессорных устройств со встроенной периферией, объединенных с микропроцессорным ядром на одном кристалле (микроконтроллеры, цифровые сигнальные процессоры, системы-на-кристалле), показать пути решения практических задач.

В результате изучения дисциплины каждый студент должен:
    • иметь представление о:
  • истории развития микропроцессорной техники, о фундаментальных открытиях, повлиявших на ее развитие;
  • тенденциях развития микроэлектроники как приоритетной базовой отрасли экономики, об экономической эффективности микроэлектроники;
  • об оптимальной системе команд микропроцессора;
  • архитектурах цифровых сигнальных процессоров, встраиваемых микропроцессорных ядер, программируемых логических матриц, систем-на-кристалле;
  • суперскалярных и многоядерных архитектурах микропроцессоров;
  • взаимопроникновении Принстонской и Гарвардской архитектур, архитектур CISC и RISC в современных микропроцессорах;
    • знать:
  • определения алгоритма, программы, операнда; архитектуры, структуры и функции системы и других базовых понятий;
  • критерии классификаций и классификации архитектур микропроцессоров;
  • особенности CISC, RISC, EPIC, VLIW и других архитектур микропроцессоров, их достоинства и недостатки;
  • Принстонскую и Гарвардскую архитектуры, их достоинства и недостатки;
  • аккумуляторную, регистровую и стековую архитектуры, их достоинства и недостатки;
  • устройство типового микропроцессора, основные выполняемые им функции, форматы и классификацию команд, режимы и способы адресации, порядок выполнения команды;
  • реальный и защищенный режимы работы микропроцессора, преобразование логических адресов в физические;
  • принципы функционирования конвейеров в микропроцессорах;
  • архитектуру микроконтроллеров, особенности их функционирования и программирования.
    • уметь:
  • применять полученные знания для решения практических задач;
  • разработать несложное устройство на микроконтроллере,
  • разработать алгоритм и программу на ассемблере микроконтроллера; использовать технику прерываний для организации выполнения заданий при разработке монолитных кодов в микроконтроллерных системах управления.

Основные виды занятий: лекции и практические занятия.

Основные виды текущего контроля занятий: коллоквиумы.

Основной вид рубежного контроля знаний: зачет.


СОДЕРЖАНИЕ КУРСА

Тема 1 Основные понятия. Обзор основных архитектур процессоров.

Определения и понятия. Процессор и микропроцессор. История: изобретение транзистора и интегральной схемы. Первый микропроцессор компании Intel. Топология полевого канального транзистора. Микроэлектроника – приоритетная базовая отрасль экономики. Примеры экономической эффективности электроники: удельное производство электронной техники (в расчете на душу населения) по странам: США, Япония, Европа, Беларусь, Россия. Закон Мура и перспективы развития микроэлектроники. Выполнение закона Мура в течение 40 лет. Пример разработок процессоров корпорации Intel по годам. Рост сложности СБИС. Уменьшение напряжения питания СБИС. Тенденции развития микроэлектроники: поиск новых технологий и материалов. Критерии классификаций процессоров. Основные типы архитектур по характеру исполняемого кода и организации устройства управления: CISC, RISC, EPIC, MISC, WISC, TTA. Типы архитектур по способу доступа к памяти программ и данных: архитектура фон Неймана (Принстонская архитектура) и Гарвардская архитектура. Типы архитектур по организации регистрового файла функционального устройства: регистровая архитектура, аккумуляторная архитектура и стековая архитектура. Типы архитектур по функциональному назначению: процессоры общего назначения, процессоры цифровой обработки сигналов, микроконтроллеры, системы-на-кристалле.

Тема 2 Архитектура типового процессора.

Архитектура фон Неймана, ее достоинства и недостатки. Базовые принципы архитектуры фон Неймана. Пять базовых компонентов архитектуры фон Неймана. Структурная схема типового микропроцессора. Внутренняя общая шина микропроцессора. Основные функции микропроцессора. Назначение и функции арифметико-логического устройства (АЛУ), устройства управления (УУ), блока внутренних регистров (БВР) – общего назначения и специальных. Понятие оптимальной системы команд микропроцессора. Формат команд микропроцессора. Пример формата 16-ти разрядных команд процессора. Классификация команд микропроцессора. Адресное пространство микропроцессора. Режимы адресации. Способы адресации. Порядок выполнения команды. Реальный и защищенный режимы микропроцессоров Intel. Физические и логические адреса. Преобразование адресов в реальном режиме. Селектор адреса. Преобразование адресов в защищенном режиме. Дескриптор. Структура дескриптора. Формат байта прав доступа и байта старшей части предела и флагов GDXU.

Тема 3 Архитектура микроконтроллеров (на примере PICmicro Microchip)

Структура микроконтроллеров. Ядро микроконтроллера. Периферийные модули. Общая структурная схема микроконтроллеров PICmicro. Двухступенчатый конвейер выполнения команд. Пример конвейерной выборки и выполнения команд. Синхронизация выполнения команд. Специальные модули микроконтроллера. Типовая структурная схема одного многофункционального канала порта ввода/вывода. Работа АЛУ и рабочего регистра (регистра-аккумулятора) W. Список команд PICmicro среднего семейства: байт-ориентированные команды, бит-ориентированные команды и команды управления и операций с константами. Общий формат команд м/к PICmicro среднего семейства. Примеры операционных кодов. Назначение битов в регистре STATUS (слово состояния процессора). Пример использования бита C регистра STATUS. Назначение битов в регистре OPTION_REG настройки режимов микроконтроллера. Карта памяти и 8-уровневый аппаратный стек. Вектор сброса RESET (0000h) и вектор прерываний (0004h). Примеры изменения значения счетчика команд PC при непосредственной записи значения в младший байт PCL и при выполнении перехода к подпрограмме по команде CALL . Аппаратный стек. Выбор страницы памяти программ. Банки памяти данных. Механизм прямой адресации памяти данных (пример). Механизм косвенной адресации памяти данных + пример очистки регистров памяти данных с адреса 20h по адрес 2Fh . Источники прерываний в PICmicro. Структурная схема логики прерываний (фрагмент). Назначение битов в регистре INTCON: биты разрешений прерываний и флаги прерываний. Пример сохранения контекста перед выполнением обработки прерывания и его восстановления после обработки. Основной таймер TMR0 и его структурная схема. Прерывание от таймера TMR0. Пример подпрограммы программного таймера (менеджера заданий).

Тема 4 Макроассемблер MPASM для микроконтроллеров PIC (MICROCHIP)

Компиляция текста программы и типы файлов. Поля исходного файла (.ASM) и правила написания текста программы на ассемблере. Формат файла листинга (.LST). Формат файла списка ошибок (.ERR), возникших при компиляции. Файлы кода программ (.HEX, .HXL, .HXH), файл отладчика (.COD), объектный файл программы (.O). Директивы MPASM и их типы: директивы контроля, директивы данных, директивы листинга, макро директивы, директивы объектного файла. Операнды инструкций. Формат INHX8M (.HEX), используемый для передачи кода программы микроконтроллеров PICmicro в программаторы. Пример файла .HEX.

Тема 5Микропроцессоры с архитектурой EPIC (IA-64)

IA-64 (Intel Architecture 64) – 64-разрядная архитектура с явным параллелизмом исполнения инструкций. Особенности архитектуры EPIC и ее сравнение с архитектурой CISC x86. Линейка EPIC-процессоров Intel Itanium последних лет. Пример процессора Itanium с ядром Montecito. Характеристики процессоров Itanium 2 серии 9000. Структура процессора IA-64. Структура ядер одноядерного и двухядерного процессоров Itanium 2. Конвейер процессора Itanium с ядром Montecito и назначение ступеней конвейера. Типы, форматы и назначение регистров IA-64. Работа стека регистров. Логические области динамических регистров. Пример передачи параметров из процедуры в процедуру через динамические регистры. Система команд IA-64. Типы команд и исполнительных устройств. Широкие команды-«связки»; формат команды в связке; поле маски (шаблона). Подмножество команд, определяющих наиболее принципиальные особенности IA-64. Целочисленные команды IA-64. Команды сравнения и работа под предикатами. Пример фрагмента программы выполнения обеих ветвей программы под предикатами. Спекулятивное выполнение команд. Команды загрузки регистров из памяти. Спекулятивное по управлению выполнение команд. Общая схема выполнения спекулятивной по управлению команды загрузки. Пример схемы и фрагмента программы спекулятивной по управлению загрузки данных из памяти. Спекулятивно выполнимые и спекулятивно невыполнимые команды. Спекулятивная по данным загрузка в память. Модель вычислений с плавающей запятой; операции с плавающей запятой. "Вращение" динамических регистров. Программно конвейеризованные циклы (SWP-циклы) – аналог аппаратных конвейеров. Программное управление конвейером. Пример фрагмента программы и схем выполнения обычного и конвейеризованного циклов; дополнительные примеры фрагментов программ по SWP-циклам. Пример применения процессоров Intel Itanium в высокопроизводительных отказоустойчивых серверах SeNECa II с архитектурой ccNUMA корпорации NEC.

Тема 6 Особенности архитектур RISC-процессоров

Идея и философия RISC-архитектуры и общие принципы построения
RISC-процессоров; основные законы RISC. Берклиевская и стэнфордская архитектуры. Механизм MORS в берклиевской архитектуре; пример реализации; достоинства и недостатки. Пример передачи параметров из процедуры в процедуру в перекрывающихся окнах. Конфликтные ситуации в стэнфордской архитектуре и способы их преодоления; примеры задержек конвейера для случаев зависимости по адресу и зависимости по данным; устранение задержек конвейера при помощи оптимизирующего компилятора. Первые элементы RISC в процессоре Pentium PRO. Интеграция элементов RISC-архитектуры в CISC-процессорах Intel серии x86 (Pentium 4). Гарвардская внутренняя структура процессора Intel Pentium 4; особенности процессора Pentium 4; кэш-память первого уровня L1 для инструкций, режимы ее работы; предсказание ветвлений. Преимущества отслеживающего кэш инструкций перед обычным кэш при спекулятивном выполнении команд. Специальное ПЗУ микрокода в Pentium 4.

Тема 7 Архитектуры цифровых сигнальных процессоров

Назначение цифровых сигнальных процессоров (ЦСП). Особенности архитектуры ЦСП. Обобщенная структурная схема сигнального процессора. Характеристики и основные параметры современных ЦСП. Гарвардская архитектура ЦСП и особенность внешней шины ЦСП. ЦСП с архитектурой VLIW и их характерные особенности. Суперскалярные ЦСП и их особенности. Гибридные ЦСП и блок-схема гибридного ЦСП. Особенности программирования и особенности ассемблеров ЦСП. Примеры применений ЦСП в телекоммуникации, в персональных компьютерах, в цифровых аудио-системах, в автомобилях, при передаче данных, в промышленности, в медицине, в военных применениях, в инструментарии. Основные параметры некоторых отечественных 16-ти и 32-разрядных ЦСП Воронежского ФГУП НИИЭТ. Структурная схема ЦСП 1867ВМ3Ф (аналог TMS320C60 TI). Основные характеристики ЦСП Texas Instruments: TMS320C6414, TMS320C6415, TMS320C6416. Структурная схема ядра ЦСП TMS320C64x .

Тема 8 Архитектура процессоров ARM

Технологии ASIC и ASSP вместе с библиотеками IP-блоков – революционный шаг в микроэлектронике. Место ядер ARM на мировом рынке микроэлектронной продукции. Универсальное ядро ARM7 – готовое решение для систем на кристалле. Области применения ядра ARM7. Особенности архитектуры ARM. Основные технические характеристики ядра ARM7. Характеристики системы команд ARM7. Дополнения к архитектуре ARM: Thumb® , DSP, Jazelle™ , Media. Этапы проектирования ПО для Thumb-ориентированного ядра ARM. Семейства ядер и процессоров ARM + шаблон для обозначения ядер и процессоров компании ARM. Пример: характеристики микроконтроллера LPC2148 компании NXP (Philips) на ядре ARM7TDMIS. Функциональная схема и общая характеристика процессора ARM7TDMI. Структурная схема ядра ARM7TDMI и его особенности. Интерфейс ARM7TDMI с памятью. Концепция Thumb®: команды Thumb как кодированное подмножество системы команд ARM. Отображение регистров состояния Thumb на регистры состояния ARM. Достоинства Thumb. Производительность Thumb-ориентированных ядер. Примеры конфигурации системы: недорогой контроллер с 16-разрядной системой памяти, система с недорогой 32-разрядной ROM, высокопроизводительная 32-разрядная система. Конвейеры ARM7 и ARM7T. Пример преобразования Thumb-кода в ARM-код. 3-х ступенчатый конвейер с Thumb декодированием и декомпрессией. Бит состояния Thumb/ARM. Возможность работы с памятью большой емкости. Пример программного кода в вариантах Thumb и ARM. Пример программного кода переключения из режима Thumb в ARM.

Тема 9 Современные системы на кристалле

Современные требования к электронным устройствам. Системы-на-кристалле – революционный шаг в цифровой аппаратуре. Мировые производители систем-на-кристалле (СнК). Возможности современных СнК (SoC) и критерии их классификации. Примеры классификаций: бюджетные СнК с ядром ARM7TDMI, для удаленного управления с ядрами ARM920 и ARM926, для терминальных устройств с ядром ARM9, двухядерные СнК (dual core) для обработки данных на ядрах ARM926+ TMS320C55x и Dual BlackFin, СнК для спецвычислений на базе ПЛИС (Altera Stratix, Cyclone и Xilinx Spartan, Virtex). Этапы и условия эффективного проектирования электронного изделия и сдачи его заказчику. Пример проектирования IP-блока для реализации функций управления в составе СБИС класса СнК на основе системы команд микроконтроллера AtMega128 (Atmel): структура и состав контроллерного IP-блока, источники и адреса векторов прерываний. Верификация и тестирование аппаратных модулей. Программируемые логические интегральные схемы (ПЛИС) на примере семейства MAX3000 Altera: краткие сведения, основные параметры, функциональная схема и основные элементы. Структурная схема макроячейки MAX3000. Структура программируемой матрицы соединений. Элемент ввода-вывода. Особенности программирования и стандартные средства загрузки программ (ByteBlasterMV, BitBlaster, MasterBlaster и др.).


ЛИТЕРАТУРА

Основная литература:
  1. Таненбаум Э., Архитектура компьютера// 5-е изд., С.-Петербург: Питер, 2007.
  2. PICmicro Mid-Range MCU Family Reference Manual, Microchip Technology Inc.,
    ссылка скрыта .
  3. 32-разрядные высокопроизводительные RISС-процессоры семейства ARM, ссылка скрыта
  4. Немудров В., Мартин Г. Системы на кристалле. Проектирование и развитие//М.: Техносфера, 2004.
  5. Стешенко В.Б., ПЛИС фирмы Altera: элементная база, система проектирования и языки описания аппаратуры, 3-е издание стереотипное//М.: Издательский дом "Додека_XXI", 2007.
  6. Зюбин В.В., Слайд-лекции "Архитектура процессоров и ее оптимизация " для 444 группы факультета ИСиКТ НОУ ВПО РосНОУ, I-й семестр 2009.


Дополнительная литература.
  1. Matt Pietrek, IA-64 Registers, ссылка скрыта
  2. ARM7TDMITM (Thumb®) Datasheet, ссылка скрыта
  3. ARM7TDMI (Rev 3) Technical Reference Manual, ARM DDI 0029G, ссылка скрыта
  4. Александр Семенко, Smart ASM для 32-разрядных процессоров фирмы Intel с архитектурой IA-32, ссылка скрыта
  5. Алексей Пантелейчук, Основы выбора цифровых сигнальных процессоров, ссылка скрыта
  6. Роман Пахолков, Виталий Мозолевский, Современная система-на-кристалле - основа успешного продукта, ссылка скрыта