- •Содержание
- •Лекционный курс модуль Вводный
- •1. Цели и задачи курса
- •2. Микропроцессор и микропроцессорная система
- •3. Основные понятия и определения
- •4. Характеристики микропроцессоров
- •5. Классификация микропроцессоров
- •6. Эволюция микропроцессоров
- •Модуль I. Организация микропроцессорной системы
- •1. Основные типы архитектур микропроцессорных систем. Фон-неймановская (принстонская) и гарвардская архитектуры. Организация пространств памяти и ввода-вывода.
- •5. Прямой доступ к памяти. Организация прямого доступа к памяти. Контроллер пдп.
- •6. Память микропроцессорной системы. Функции памяти. Архитектура и иерархия памяти. Организация кэш-памяти. Виртуальная память.
- •Увеличение разрядности основной памяти
- •Память с расслоением
- •Использование специфических свойств динамических зупв
- •Страничная организация памяти
- •Сегментация памяти
- •Модуль II. Универсальные микропроцессоры
- •1. Определение понятия «архитектура». Архитектура системы команд. Классификация процессоров cisc и risc. Определение понятия "архитектура"
- •Архитектура системы команд. Классификация процессоров (cisc и risc)
- •2. Методы адресации и типы данных. Типы команд. Команды управления потоком команд. Методы адресации
- •Типы команд
- •Команды управления потоком команд
- •3. Конвейеризация и параллелизм. Конвейерная организация обработки данных. Простейшая организация конвейера и оценка его производительности.
- •Простейшая организация конвейера и оценка его производительности
- •Конфликты по данным, остановы конвейера и реализация механизма обходов
- •Классификация конфликтов по данным
- •Конфликты по данным, приводящие к приостановке конвейера
- •Методика планирования компилятора для устранения конфликтов по данным
- •Сокращение потерь на выполнение команд перехода и минимизация конфликтов по управлению
- •Снижение потерь на выполнение команд условного перехода
- •5. Проблемы реализации точного прерывания в конвейере. Обработка многотактных операций и механизмы обходов в длинных конвейерах Проблемы реализации точного прерывания в конвейере
- •Обработка многотактных операций и механизмы обходов в длинных конвейерах
- •Конфликты и ускоренные пересылки в длинных конвейерах
- •Поддержка точных прерываний в длинных конвейерах
- •Параллелизм уровня команд: зависимости и конфликты по данным
- •Параллелизм уровня цикла: концепции и методы
- •Основы планирования загрузки конвейера и разворачивание циклов
- •7. Зависимости. Классификация зависимостей и их применение. Устранение зависимостей по данным и механизмы динамического планирования. Зависимости. Их классификация и применение.
- •Устранение зависимостей по данным и механизмы динамического планирования Основная идея динамической оптимизации
- •Динамическая оптимизация с централизованной схемой обнаружения конфликтов
- •Другой подход к динамическому планированию - алгоритм Томасуло
- •Дальнейшее уменьшение приостановок по управлению: буфера целевых адресов переходов
- •9. Одновременная выдача нескольких команд для выполнения и динамическое планирование.
- •10. Архитектура машин с длинным командным словом (vliw). Средства поддержки большой степени распараллеливания.
- •Средства поддержки большой степени распараллеливания
- •Обнаружение и устранение зависимостей
- •Программная конвейеризация: символическое разворачивание циклов
- •Трассировочное планирование
- •Аппаратные средства поддержки большой степени распараллеливания
- •Условные команды
- •Выполнение по предположению (speculation)
- •11. Архитектура epic.
- •Модуль III. Микроконтроллеры и специализированные микропроцессоры
- •2. Специализированные микропроцессоры. Цифровые процессоры обработки сигналов.
- •Модуль Заключительный Перспективы развития микропроцессорной техники.
- •Лабораторный курс
- •7 Семестр. Лабораторная работа 1.
- •Лабораторная работа 2.
- •Лабораторная работа 3.
- •Лабораторная работа 4.
- •8 Семестр. Лабораторная работа 1.
- •1. Общие сведения
- •2. Настройка и запуск Code Composer Studio (simulation)
- •3. Особенности проектирования в иср Code Composer Studio
- •4. Реализация проекта в иср Code Composer Studio
- •5. Тестирование проекта в иср Code Composer Studio
- •6. Аппаратная реализация проекта в иср Code Composer Studio
- •Лабораторная работа 2.
- •1. Подключение файлов ввода/вывода с помощью точек зондирования
- •2. Работа с файлами по средствам функций языка с
- •3. Работа с dsp/bios для генерации звукового сигнала платой dsk5510
- •Лабораторная работа 3.
- •1 Цифровая фильтрация
- •2. Реализация ких фильтра на симуляторе dsk5510
- •3. Реализация ких фильтра на dsk5510 для фильтрации звукового сигнала в реальном времени.
- •Лабораторная работа 4.
- •1. Фильтры с бесконечной импульсной характеристикой – бих
- •2. Реализация бих фильтра на симуляторе dsk5510
- •Фильтр низкой частоты с нормальной частотой среза 0.1
- •Фильтр низкой частоты с нормальной частотой среза 0.2
- •Полосовой фильтр с нормальной частотой среза 0.165 – 0.33
- •3. Реализация бих фильтра на dsk5510 для фильтрации звукового сигнала в реальном времени.
- •Фильтр низкой частоты с нормальной частотой среза 0.1
- •Фильтр низкой частоты с нормальной частотой среза 0.2
- •Полосовой фильтр с нормальной частотой среза 0.165 – 0.33
- •Оценка работы студентов. Рейтинговая система.
- •1. Общие положения
- •2. Организация рейтингового контроля успеваемости студентов дневной формы обучения
- •3. Выставление оценок по рейтинговой системе
- •4. Организация рейтингового контроля успеваемости студентов заочной формы обучения
- •Учебно-методические материалы Основная литература
- •Дополнительная литература
8 Семестр. Лабораторная работа 1.
Основы работы с DSP процессором TMS320VC5510
1. Общие сведения
Реализация любой системы цифровой обработки сигналов (ЦОС) на базе цифровых сигнальных процессоров (ЦСП) включает:
Разработку и отладку программного кода на языке высокого уровня или ассемблере в соответствии с выбранным алгоритмом. Результатом является набор текстовых файлов с программным кодом, описывающим реализуемый алгоритм.
Оптимизацию программного кода с учетом архитектуры выбранного ЦСП. Результатом является один бинарный файл, содержащий цифровое двоичное представление разработанного программного кода.
Тестирование разработанного программного кода.
Разработку платы для проектируемой системы ЦОС.
Тестирование программного кода на разработанной плате.
Для выполнения всех вышеперечисленных этапов необходимо иметь комплекс программных и аппаратных средств проектирования систем ЦОС (программное обеспечение и средства аппаратной поддержки). Программное обеспечение (ПО) включает:
текстовый редактор для написания программного кода;
компилятор для трансляции файлов с кодом программы в бинарный файл;
симулятор ЦСП для отладки кода в виртуальном режиме;
загрузчик для переноса полученного бинарного кода программы из файла в память процессора.
отладчик для тестирования программы.
Средства аппаратной поддержки (САП) представляют собой:
персональный компьютер (ПК) для реализации возможностей ПО;
отладочный модуль для тестирования бинарного файла с кодом программы;
программатор для переноса разработанного кода в память ЦОС;
эмулятор для тестирования разработанной платы.
Для реализации систем ЦОС фирма Texas Instruments (TI) предлагает ряд технологических решений, позволяющих существенно ускорить и облегчить процесс разработки:
единый, интегрированный в каждый ЦСП фирмы TI отладочный интерфейс Joint Test Action Group (JTAG), позволяющий подключить несколько ЦСП к одному отладчику всего по 6 проводам и обеспечивающий высокую скорость об мена данными;
технологию обмена данными в реальном времени — Real Time Data Exchange (RTDX), базирующуюся на интерфейсе JTAG;
библиотеку функций DSP/BIOS, использующую технологию RTDX и позволяющую реализовать алгоритмы обмена данными в реальном времени;
стандарт eXpresDSP, определяющий основные правила написания программного кода для реализации алгоритмов ЦОС на ЦСП, позволяющий упростить разработку программ и увеличить повторное использование кода.
Программная часть этих технологий воплотилась в интегрированной среде разработки CCS (Code Composer Studio), которая включает:
текстовый редактор;
менеджер проектов;
оптимизирующий компилятор;
симулятор ЦСП;
загрузчик программного кода в ЦСП;
мультипроцессорный отладчик, оптимизированный для приложений ЦОС, который содержит уникальный набор средств анализа и отладки программ в реальном времени, базирующийся на RTDX и DSP/BIOS.
Аппаратным элементом являются платы двух типов:
внутрисхемный эмулятор;
отладочный модуль.
Внутрисхемный эмулятор представляет модуль, устанавливаемый в слот PCI или подключаемый к персональному компьютеру при помощи порта USB или LPT, и кабель для подключения к отлаживаемой плате. Все ЦСП фирмы TI имеют единый интерфейс внутрисхемного эмулятора JTAG и работают с единым внутрисхемным эмулятором XDS-510 (или SDSP-510). Через отладочный интерфейс доступны как внутренние регистры процессора, так и вся память и периферия. Эмулятор позволяет:
производить загрузку кода программы и данных во внутреннюю и внешнюю память;
устанавливать любое количество точек остановки;
производить контроль и модификацию содержимого памяти, регистров процессора и регистров периферийных устройств;
проводить пошаговое выполнение программы;
измерять время выполнения программы или ее частей;
работать с несколькими цифровыми процессорами для обработки сигналов (ЦПОС).
Подключение внутрисхемного эмулятора абсолютно «прозрачно» для исполняемой программы и не оказывает на выполнение никакого влияния, при этом программа исполняется в реальном времени, без каких-либо задержек и ограничений по производительности. Такой подход радикально отличается от традиционного, при котором предполагается подключение на место процессора либо специальной микросхемы — прототипа, либо специального устройства — эмулятора ЦСП.
Рисунок 1.1 – Структуры программно-аппаратного
комплекса.
Отладочный модуль выполняется в виде отдельной платы, которая содержит:
один из типов ЦПОС;
внешнюю память;
источник питания;
JTAG контроллер;
разъемы для подключения дочерних плат;
разъемы подключения к ПК;
дополнительные элементы, такие как АЦП/ЦАП, контроллеры сети, аудио-, видео- кодеки, адаптеры PCI, шины и т. д.
Отладочный модуль может подключаться к ПК как через внутрисхемный эмулятор, так и напрямую через порты LPT или USB. Однако во втором случае обмен данными между ПК и отладочным модулем происходит значительно медленнее.
Ассортимент предлагаемых отладочных модулей очень широк: от плат начального
уровня до специализированных устройств, позволяющих построить программно-аппаратные комплексы реализации алгоритмов обработки аудио и видеоданных, сетевые протоколы и т. д. На рисунке 1.1 показаны возможные структуры программно-аппаратного комплекса.
Предлагаемые ПО и САП позволяют объединить весь процесс разработки систем ЦОС и выделить всего три этапа:
первый — разработка и отладка программного кода с использованием ИСР CCS и одного из наиболее соответствующих поставленной задаче отладочных модулей;
второй — разработка платы для проектируемой системы ЦОС;
третий — отладка программного обеспечения на разработанной плате с использованием CCS и внутрисхемного эмулятора.
Рисунок 1.2 – TMS320VC5510 DSK (DSK5510).
Таким образом, для полноценной работы с ЦСП фирмы TI необходимы только три компонента:
один из отладочных модулей, в наибольшей степени пригодный для решения поставленной задачи;
один наиболее подходящий по характеристикам внутрисхемный эмулятор;
интегральная среда разработки (ИСР) — Code Composer Studio (CCS).
Использование ПО и САП фирмы TI позволяет оценить разрабатываемую систему ЦОС и отработать ее решения на реальном ЦCП на самых ранних стадиях проектирования.