ЛЕКЦЫЙНЫ КУРС «Апаратруа лічбавай апрацоўкі сігналаў» __________________________ ЛЕКЦИОННЫЙ КУРС «Аппаратура цифровой обработки
Литература по курсу
Общая классификация микропроцессорных средств
Общая классификация микропроцессорных средств
Общая классификация микропроцессорных средств
Обзор алгоритмов цифровой обработки сигналов
Пример: GSM (Global System for Mobile Communications)
Пример: GSM (Global System for Mobile Communications)
Пример: GSM (Global System for Mobile Communications)
Пример: GSM (Global System for Mobile Communications)
Пример: GSM (Global System for Mobile Communications)
Обзор алгоритмов ЦОС
Обзор алгоритмов ЦОС
Обзор алгоритмов ЦОС
Обзор алгоритмов ЦОС
Обзор алгоритмов ЦОС
Обзор алгоритмов ЦОС
Обзор алгоритмов ЦОС
Обзор алгоритмов ЦОС
Обзор алгоритмов ЦОС
Обзор алгоритмов ЦОС
Пример: реализация FIR-фильтра на ЦСП
Пример: реализация FIR-фильтра на ЦСП
Обзор цифровой и аналоговой аппаратуры ЦОС
Обзор цифровой и аналоговой аппаратуры ЦОС
Обзор цифровой и аналоговой аппаратуры ЦОС
Обзор цифровой и аналоговой аппаратуры ЦОС
Обзор цифровой и аналоговой аппаратуры ЦОС
Обзор цифровой и аналоговой аппаратуры ЦОС
Обзор цифровой и аналоговой аппаратуры ЦОС
Обзор цифровой и аналоговой аппаратуры ЦОС
Обзор цифровой и аналоговой аппаратуры ЦОС
Обзор цифровой и аналоговой аппаратуры ЦОС
Обзор цифровой и аналоговой аппаратуры ЦОС
Основные направления ЦОС
Основные цели цифровой обработки сигналов
Теоретические основы ЦОС
Теоретические основы ЦОС
Теоретические основы ЦОС
Теоретические основы ЦОС
Теоретические основы ЦОС
Теоретические основы ЦОС
Теоретические основы ЦОС
Теоретические основы ЦОС
Теоретические основы ЦОС
Теоретические основы ЦОС
Теоретические основы ЦОС
Теоретические основы ЦОС
Теоретические основы ЦОС
Теоретические основы ЦОС
Теоретические основы ЦОС
Теоретические основы ЦОС
Теоретические основы ЦОС
Теоретические основы ЦОС
Теоретические основы ЦОС
Теоретические основы ЦОС
Теоретические основы ЦОС
Теоретические основы ЦОС
Теоретические основы ЦОС
Теоретические основы ЦОС
Теоретические основы ЦОС
Теоретические основы ЦОС
Теоретические основы ЦОС
Теоретические основы ЦОС
Теоретические основы ЦОС
Теоретические основы ЦОС
Теоретические основы ЦОС
Теоретические основы ЦОС
Теоретические основы ЦОС
Теоретические основы ЦОС
Теоретические основы ЦОС
Теоретические основы ЦОС
Теоретические основы ЦОС
Теоретические основы ЦОС
Теоретические основы ЦОС
Теоретические основы ЦОС
Тэарэтычныя асновы ЛАС
Тэарэтычныя асновы ЛАС
Особенности и характеристики ЦСП
Особенности и характеристики ЦСП
Особенности и характеристики ЦСП
Особенности и характеристики ЦСП
Особенности и характеристики ЦСП
Особенности и характеристики ЦСП
Особенности и характеристики ЦСП
Особенности и характеристики ЦСП
Особенности и характеристики ЦСП
Особенности и характеристики ЦСП
Особенности и характеристики ЦСП
Особенности и характеристики ЦСП
Особенности и характеристики ЦСП
Особенности и характеристики ЦСП
Особенности и характеристики ЦСП
Особенности и характеристики ЦСП
Рынок цифровых сигнальных процессоров
Рынок цифровых сигнальных процессоров (2013 г.)
Тесты сравнения DSP по скорости выполнения операций
Выводы и рекомендации по выбору типа DSP
Выводы и рекомендации по выбору типа DSP
Выводы и рекомендации по выбору типа DSP
Цифровые сигнальные процессоры Texas Instruments
Цифровые сигнальные процессоры Texas Instruments
Этапы развития семейства C2000
Цифровые сигнальные процессоры Texas Instruments
Цифровые сигнальные процессоры Texas Instruments
Основные характеристики ЦСП семейства С28x
Блок-схема ЦСП TMS320F2812
Модуль центрального процессора С28x
Основные характеристики ЦСП семейства С28x
Карта памяти ЦСП TMS320F2812
Основные характеристики ЦСП семейства С28x
Основные характеристики ЦСП семейства С28x
Основные характеристики ЦСП семейства С28x
Основные характеристики ЦСП семейства С28x
Основные характеристики ЦСП семейства С28x
Основные характеристики ЦСП семейства С28x
Основные характеристики ЦСП семейства С28x
Корпуса ЦСП семейства С28x
Корпуса ЦСП семейства С28x
Корпуса ЦСП семейства С28x
Корпуса ЦСП семейства С28x
Корпуса ЦСП семейства С28x (серия Delfino)
Корпуса ЦСП семейства С28x (серия Piccolo)
Обозначение ЦСП семейства С28x
Назначение выводов TMS320F2812
Назначение выводов TMS320F2812
Назначение выводов TMS320F2812
Назначение выводов TMS320F2812
Назначение выводов TMS320F2812
Назначение выводов TMS320F2812
Назначение выводов TMS320F2812
Назначение выводов TMS320F2812
Назначение выводов TMS320F2812
Назначение выводов TMS320F2812
Назначение выводов TMS320F2812
Назначение выводов TMS320F2812
Назначение выводов TMS320F2812
Назначение выводов TMS320F2812
Назначение выводов TMS320F2812
Назначение выводов TMS320F2812
Назначение выводов TMS320F2812
Назначение выводов TMS320F2812
Сброс и синхронизация ЦСП TMS320F28x
Сброс и синхронизация ЦСП TMS320F28x
Сброс и синхронизация ЦСП TMS320F28x
Сброс и синхронизация ЦСП TMS320F28x
Сброс и синхронизация ЦСП TMS320F28x
Сброс и синхронизация ЦСП TMS320F28x
Сброс и синхронизация ЦСП TMS320F28x
Сброс и синхронизация ЦСП TMS320F28x
Сброс и синхронизация ЦСП TMS320F28x
Сброс и синхронизация ЦСП TMS320F28x
Сброс и синхронизация ЦСП TMS320F28x
Сброс и синхронизация ЦСП TMS320F28x
Сброс и синхронизация ЦСП TMS320F28x
Сброс и синхронизация ЦСП TMS320F28x
Сброс и синхронизация ЦСП TMS320F28x
Сброс и синхронизация ЦСП TMS320F28x
Сброс и синхронизация ЦСП TMS320F28x
Сброс и синхронизация ЦСП TMS320F28x
Сброс и синхронизация ЦСП TMS320F28x
Режимы пониженного потребления ЦСП TMS320F28x
Режимы пониженного потребления ЦСП TMS320F28x
Режимы пониженного потребления ЦСП TMS320F28x
Модуль центрального процессора TMS320F28x
Модуль центрального процессора TMS320F28x
Модуль центрального процессора TMS320F28x
Модуль центрального процессора TMS320F28x
Модуль центрального процессора TMS320F28x
Модуль центрального процессора TMS320F28x
Модуль центрального процессора TMS320F28x
Модуль центрального процессора TMS320F28x
Модуль центрального процессора TMS320F28x
Модуль центрального процессора TMS320F28x
Математический блок модуля центрального процессора TMS320F28x
Математический блок модуля центрального процессора TMS320F28x
Модуль центрального процессора TMS320F28x
Модуль центрального процессора TMS320F28x
Модуль центрального процессора TMS320F28x
Модуль центрального процессора TMS320F28x
Модуль центрального процессора TMS320F28x
Блок адресации памяти данных модуля центрального процессора TMS320F28x
Блок адресации памяти данных модуля центрального процессора TMS320F28x
Блок адресации памяти данных модуля центрального процессора TMS320F28x
Блок адресации памяти данных модуля центрального процессора TMS320F28x
Модуль центрального процессора TMS320F28x
Модуль центрального процессора TMS320F28x
Модуль центрального процессора TMS320F28x
Модуль центрального процессора TMS320F28x
Модуль центрального процессора TMS320F28x
Модуль центрального процессора TMS320F28x
Модуль центрального процессора TMS320F28x
Модуль центрального процессора TMS320F28x
Модуль центрального процессора TMS320F28x
Модуль центрального процессора TMS320F28x
Модуль центрального процессора TMS320F28x
Модуль центрального процессора TMS320F28x
Модуль центрального процессора TMS320F28x
Модуль центрального процессора TMS320F28x
Модуль центрального процессора TMS320F28x
Модуль центрального процессора TMS320F28x
Модуль центрального процессора TMS320F28x
Модуль центрального процессора TMS320F28x
Модуль центрального процессора TMS320F28x
Модуль центрального процессора TMS320F28x
Модуль центрального процессора TMS320F28x
Модуль центрального процессора TMS320F28x
Модуль центрального процессора TMS320F28x
Модуль центрального процессора TMS320F28x
Модуль центрального процессора TMS320F28x
Модуль центрального процессора TMS320F28x
Модуль центрального процессора TMS320F28x
Модуль центрального процессора TMS320F28x
Модуль центрального процессора TMS320F28x
Модуль центрального процессора TMS320F28x
Модуль центрального процессора TMS320F28x
Модуль центрального процессора TMS320F28x
Модуль центрального процессора TMS320F28x
Модуль центрального процессора TMS320F28x
Модуль центрального процессора TMS320F28x
Модуль центрального процессора TMS320F28x
Модуль центрального процессора TMS320F28x
Модуль центрального процессора TMS320F28x
Модуль центрального процессора TMS320F28x
Модуль центрального процессора TMS320F28x
32-битные таймеры ядра ЦСП TMS320F28x
32-битные таймеры ядра ЦСП TMS320F28x
32-битные таймеры ядра ЦСП TMS320F28x
Система прерываний DSP TMS320F2812
Система прерываний DSP TMS320F2812
Система прерываний DSP TMS320F2812
Система прерываний DSP TMS320F2812
Система прерываний DSP TMS320F2812
32-битные таймеры ядра ЦСП TMS320F28x
Система прерываний DSP TMS320F2812
Система прерываний DSP TMS320F2812
Система прерываний DSP TMS320F2812
Система прерываний DSP TMS320F2812
Система прерываний DSP TMS320F2812
Система прерываний DSP TMS320F2812
Система прерываний DSP TMS320F2812
Система прерываний DSP TMS320F2812
Система прерываний DSP TMS320F2812
Система прерываний DSP TMS320F2812
Система прерываний DSP TMS320F2812
Система прерываний DSP TMS320F2812
Система прерываний DSP TMS320F2812
Система прерываний DSP TMS320F2812
Система прерываний DSP TMS320F2812
Система прерываний DSP TMS320F2812
Система прерываний DSP TMS320F2812
Система прерываний DSP TMS320F2812
Система прерываний DSP TMS320F2812
Система прерываний DSP TMS320F2812
Порты ввода/вывода DSP TMS320F2812
Порты ввода/вывода DSP TMS320F2812
Порты ввода/вывода DSP TMS320F2812
Порты ввода/вывода DSP TMS320F2812
Порты ввода/вывода DSP TMS320F2812
Порты ввода/вывода DSP TMS320F2812
Менеджеры событий DSP TMS320F2812
Менеджеры событий DSP TMS320F2812
Менеджеры событий DSP TMS320F2812 (на примере EvA)
Менеджеры событий DSP TMS320F2812
Менеджеры событий DSP TMS320F2812
Менеджеры событий DSP TMS320F2812
Менеджеры событий DSP TMS320F2812
Менеджеры событий DSP TMS320F2812
Менеджеры событий DSP TMS320F2812
Менеджеры событий DSP TMS320F2812
Менеджеры событий DSP TMS320F2812
Менеджеры событий DSP TMS320F2812
Менеджеры событий DSP TMS320F2812
Менеджеры событий DSP TMS320F2812
Менеджеры событий DSP TMS320F2812
Менеджеры событий DSP TMS320F2812
Менеджеры событий DSP TMS320F2812
Менеджеры событий DSP TMS320F2812
Менеджеры событий DSP TMS320F2812
Менеджеры событий DSP TMS320F2812
Менеджеры событий DSP TMS320F2812
Менеджеры событий DSP TMS320F2812
Менеджеры событий DSP TMS320F2812
Менеджеры событий DSP TMS320F2812
Менеджеры событий DSP TMS320F2812
Менеджеры событий DSP TMS320F2812
Менеджеры событий DSP TMS320F2812
Менеджеры событий DSP TMS320F2812
Менеджеры событий DSP TMS320F2812
Менеджеры событий DSP TMS320F2812
Подключение внешних цепей АЦП DSP
Подключение внешних цепей АЦП DSP
9.98M
Категория: ЭлектроникаЭлектроника

Аппаратура цифровой обработки сигналов

1. ЛЕКЦЫЙНЫ КУРС «Апаратруа лічбавай апрацоўкі сігналаў» __________________________ ЛЕКЦИОННЫЙ КУРС «Аппаратура цифровой обработки

сигналов»

2. Литература по курсу

Айфичер Э., Джервис Б. Цифровая обработка сигналов: практический
подход. – 2-е изд. – 2004. – 992 с.
Сергиенко А.Б. Цифровая обработка сигналов: Учебник для вузов. 2-е
изд. – СпБ.: Питер – 2007. – 751 с.: ил.
Сперанский В.С. Сигнальные процессоры и их применение в системах
телекоммуникаций и электроники. Учебное пособие для вузов. – М.: Горячая
линия-Телеком. – 2008. – 168 с.: ил.
Введение в цифровую фильтрацию / Под ред. Р. Богнера и
А. Константинидиса. – пер. с англ., под. ред Л.И. Филиппова – М.: Мир, 1976. –
216 с.
Гутников В. С. Фильтрация измерительных сигналов. – Ленинград:
Энергоатомиздат, 1990. – 190 с.
Калабеков Б.А. Микропроцессоры и их применение в системах
передачи и обработки сигналов: Учебное пособие для вузов. – М.: Радио и
связь, 1988. – 368 с.
Рабинер Л.Р., Голд Б. Теория и применение цифровой обработки
сигналов: Пер. с англ./ Под ред. Ю.Н. Александрова. М.: Мир, 1978.– 637 с.
Шевкопляс Б.В. Микропроцессорные структуры. Инженерные решения:
Справочник – 2-е изд., перераб. и доп. – М.: Радио и связь, 1990. – 512 с.
Сато Ю. Обработка сигналов. Первое знакомство. – 2002. – 175 с.: ил.

3. Общая классификация микропроцессорных средств

1. Микропроцессоры стандартной конфигурации, содержащие
в своем составе арифметико-логическое устройство (АЛУ),
регистры и схемы управления.
2.
Однокристальные
микроконтроллеры
(ОМК,
ОЭВМ)
стандартной конфигурации с цифровыми портами. ОМК содержит в
своем составе не только АЛУ и регистры, но и дополнительные
модули, такие как память данных и память программ, таймеры,
порты ввода-вывода,
АЦП, ЦАП, аппаратные
драйверы
стандартных интерфейсов.
В настоящее время ОМК составляют
60-70% мирового рынка микропроцессорных средств.
Разновидностью ОМК являются PIC – контроллеры (Peripherial
Interface Controller) – микроконтроллеры с расширенными
возможностями по вводу-выводу.
Преимуществом ОМК является компактная система команд.

4. Общая классификация микропроцессорных средств

3. МSР (Mixed Signal Processor) – микропроцессоры с
встроенным АЦП и аппаратным умножителем, предназначенные для
цифровой обработки аналоговых сигналов.
4. DSP (Digital Signal Processor) – микропроцессоры с
встроенным АЦП, система команд которых позволяет выполнять
базовую операцию «умножение с накоплением», предназначенные
для цифровой обработки аналоговых сигналов, для реализации
сложных вычислительных алгоритмов в реальном масштабе
времени. Типовыми задачами для реализации на основе DSP
являются алгоритмы преобразования Фурье, дискретной свертки,
цифровой фильтрации, корреляции.
Далее для обозначения термина «Цифровой сигнальный
процессор» (Digital Signal Processor, DSP) в учебных материалах
будут использоваться также сокращения «ЛСП» (бел.), «ЦСП» (рус.)

5. Общая классификация микропроцессорных средств

6. Обзор алгоритмов цифровой обработки сигналов

Термин «цифровая обработка сигналов» появился в
1960-1970 г.г. Изначально
цифровая обработка сигналов
представляла собой узкую область исследований, основным
назначением
которой
было
моделирование
аналоговых
радиотехнических цепей и сигналов на ЭВМ.
В настоящее время цифровая обработка сигналов (ЦОС) – это
теория и множество практических приложений:
- информационно-измерительная техника;
- автоматика, телемеханика;
- мобильная связь;
- радиолокация;
- радионавигация;
- прикладная геодезия;
- медицина;
и т.д.
Наглядным
примером
практического
использования
достижений теории и техники цифровой обработки сигналов
является сотовый телефон.

7. Пример: GSM (Global System for Mobile Communications)

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

8. Пример: GSM (Global System for Mobile Communications)

Структурная схема мобильного телефона стандарта GSM. Стандарт
GSM является примером TDMA - многоканальный доступ с временным разделением (Time Division Multiple
Access). Это цифровая технология передачи сигнала, позволяющая получать доступ к одному
радиочастотному каналу большому числу пользователей одновременно. При этом не происходит
интерференции, поскольку каждому пользователю в пределах каждого канала выделяются уникальные
тайм-слоты (промежутки времени).

9. Пример: GSM (Global System for Mobile Communications)

Модель линейного кодирования с предсказанием (Linear Predictive Coding, LPC):
LPC-алгоритм использует модель человеческого голосового тракта, которая
представляет гортань в виде ряда концентрических полостей-цилиндров различного
диаметра и с различной резонансной частотой. Эта модель может быть математически
представлена в виде систем уравнений, описывающих свойства каждой полостицилиндра.

10. Пример: GSM (Global System for Mobile Communications)

Сигнал возбуждения пропускают через полости-цилиндры, генерируя выходной
сигнал. В человеческом организме сигнал возбуждения генерируется с помощью
воздушных колебаний голосовых связок или сокращений голосового тракта. В
цифровой системе сигнал возбуждения представляет собой ряд импульсов,
моделирующих колебания связок, и шум, моделирующий сокращения. Этот сигнал
поступает на решетчатый цифровой фильтр. Каждый коэффициент фильтра
отображает размер цилиндра. LPC-система характеризуется числом цилиндров,
которые использованы в модели. В системе GSM используются восемь цилиндров и,
соответственно, должны генерироваться восемь моделирующих коэффициентов.
Использовавшиеся ранее LPC-системы обеспечивали качество, достаточное
лишь для того, чтобы разобрать кодируемую речь без распознавания голоса
говорящего.
Качество было слишком низким. В LPC-системе стандарта GSM
используются два усовершенствованных метода, которые улучшают качество
кодируемой речи. Это методы регулярного импульсного возбуждения (RPE) и ) и
долговременного
предсказания
(LTP).
Их
применение
позволяет
получить
удовлетворительное качество кодируемой речи.

11. Пример: GSM (Global System for Mobile Communications)

На вход речевого кодера поступает серия 16-разрядных отсчетов голосовых данных в виде
равномерной ИКМ с тактовой частотой 8 кГц (битрейт составляет 128 Кбит/с). Речевой кодер оперирует с
блоками по 20 мс (160 отсчетов) и трансформирует их в 76 коэффициентов (в сумме 260 бит), за счет чего
битрейт уменьшается до 13 Кбит/с. Режим прерывистой передачи (DTX) позволяет отключать передачу во ) позволяет отключать передачу во
время пауз между словами. Такой подход позволяет уменьшить мощность, потребляемую передатчиком, и
увеличить полную емкость GSM-системы. Низкая потребляемая мощность продлевает жизнь батарей в
телефоне и является важной особенностью для переносных портативных телефонов. Она способствует
увеличению максимально возможного количества вызовов за счет снижения межканальной интерференции,
позволяя более эффективно использовать выделенный частотный спектр. В обычном разговоре каждый
абонент говорит менее 40% времени, и приблизительные оценки показали, что использование DTX) позволяет отключать передачу во может
удвоить максимальное количество вызовов системы мобильной связи.
В передатчике размещается голосовой детектор (VAD). Его задача состоит в выделении речи из
шумового фона и в игнорировании шума без речи. Входным массивом для голосового датчика является
набор параметров, вычисленных речевым кодером. VAD использует эту информацию для принятия
решения: содержит или не содержит речь каждый блок по 20 мс, поступающий на кодер. Генератор
"комфортного" шума (CNm) встраивается в приемник. "Комфортный" шум вырабатывается во время строба
паузы, когда алгоритм DTX) позволяет отключать передачу во выключает передатчик; этот шум подобен по амплитуде и спектру фоновому
шуму в передатчике. Цель генерации CNm состоит в подавлении неприятного эффекта переключения между
речью на фоне шума и тишиной. Если сигнал принимается без системы CNm, то слышно быстрое
чередование речи на фоне интенсивного шума (например, автомобиля) и тишины. Влияние подобного
эффекта значительно уменьшает разборчивость речи. Когда задействован шумовой генератор DTX) позволяет отключать передачу во , каждый
передаваемый голосовой пакет перед отключением передатчика сопровождается блоком данных,
описывающих параметры шумового фона (SmD). Этот блок данных служит маркером окончания передачи
речи для приемной стороны. Он содержит характерные параметры фонового шума в передатчике,
например, информацию о спектре, полученную с помощью линейного прогнозирующего кодирования. Блок
данных SmD используется генератором "комфортного" шума приемника для синтеза цифрового фильтра,
который, при возбуждении его псевдослучайным шумом, генерирует отклик, подобный фоновому шуму в
передатчике. Этот "комфортный" шум вставляется в паузы между получаемыми голосовыми пакетами.
Параметры шума обновляются через равные промежутки времени с помощью передаваемых во время
речевых пауз SmD-пакетов.
Для обнаружения и коррекции ошибок в приемнике, процессор добавляет в поток данных
служебные биты, за счет чего выходной битрейт кодера увеличивается до 22,8 Кбит/с. Биты в пределах
одного блока равномерно перемешиваются со служебными битами псевдослучайным образом, повышая
тем самым помехоустойчивость системы.

12. Обзор алгоритмов ЦОС

Цифровая
обработка
принципиально
связана
с
представлением любого сигнала
в
виде последовательности
чисел. Это означает, что исходный аналоговый сигнал должен быть
преобразован в некоторую исходную последовательность чисел,
которая вычислителем по заданному алгоритму преобразуется в
новую
последовательность,
однозначно
соответствующую
исходной. Из полученной новой последовательности формируется
результирующий аналоговый сигнал.
Исходный
аналоговый
сигнал
Исходная
последовательность
чисел
Алгоритм
преобразования
Новая
последовательность
чисел
Результирующий
аналоговый
сигнал

13. Обзор алгоритмов ЦОС

В реальных процессах аналого-цифрового и цифроаналогового преобразования есть два принципа: дискретизация по
времени и квантование по амплитуде, которые определяют
разрешающую способность данных преобразований.
Система обработки данных в реальном времени на основе ЦСП:

14. Обзор алгоритмов ЦОС

Выборка
непрерывных
аналоговых
данных
должна
осуществляться
через
интервал
дискретизации,
который
необходимо правильно выбирать для точного представления
первоначального аналогового сигнала. Чем больше число отсчетов
(более высокие частоты дискретизации), тем более точным будет
представление сигнала в цифровом виде. В случае малого числа
отсчетов может быть достигнуто критическое значение частоты
дискретизации, при котором теряется информация о сигнале. Это
следует
из
известной
теоремы
Котельникова:
частота
дискретизации fs сигнала должна быть по крайней мере в 2 раза
больше, чем наивысшая частота fM спектра сигнала:
fM ≤ fs/2
В зарубежной литературе данное соотношение часто называют
критерием Найквиста.

15. Обзор алгоритмов ЦОС

Аналого-цифровое преобразование осуществляется в две
стадии.
Первая стадия – селективная задержка, где полученная
информация

мгновенное
значение
сигнала
в
момент
осуществления выборки. Обычно реализуется на устройстве
выборки-хранения.
Вторая стадия – N-разрядный АЦП преобразовывает
мгновенное значение напряжения в самое близкое целое число из 2N
возможных, что ведет к ошибке в каждой выборке на ±1/2 LSB (Least
Significant Bit – наименьший значащий бит). В итоге цифровой
выходной сигнал является эквивалентным непрерывному входному
сигналу плюс ошибка квантования, которая выступает в виде
добавленного к сигналу шума.

16. Обзор алгоритмов ЦОС

Рассмотрим случай выборки с частотой fs одночастотного
сигнала синусоидальной формы частоты fa, осуществленной
идеальным импульсным дискретизатором при выполнении условия
теоремы Котельникова (критерия Найквиста): fs > 2fa. В частотном
спектре на выходе дискретизатора присутствуют гармоники
исходного сигнала, повторяющиеся с частотой fs – на частотах,
равных |± Kfs ± fa|, где K = 1, 2, 3, 4, .....
1-я частотная зона
Найквиста

17. Обзор алгоритмов ЦОС

Частотная зона Найквиста определяется как полоса спектра от
0 до fs/2. Частотный спектр разделен на бесконечное число зон
Найквиста, каждая протяженностью по 0,5fs. На практике идеальный
дискретизатор заменяется на АЦП, используемый совместно с ЦСП.
Для работы ЦСП необходимо присутствие на входе только
компонент сигналов, частоты которых попадают в первую зону
Найквиста, то есть, в полосу от 0 до fs/2.

18. Обзор алгоритмов ЦОС

Если частота дискретизации меньше удвоенной полосы
аналогового сигнала, возникает эффект, известный как наложение
спектров (aliasing) и информация о сигнале будет потеряна.
Рассмотрим случай представления во временной области
дискретных выборок сигнала синусоидальной формы.
В этом примере частота дискретизации fs лишь немного
больше частоты аналогового входного сигнала fa, что не
удовлетворяет критерию Найквиста. В действительности сделанная
выборка соответствует сигналу, частота которого равна разности
частот дискретизации и частоты исходного сигнала fs–fa.

19. Обзор алгоритмов ЦОС

Ниже
показано соответствующее
примера в частотной области.
представление
этого
Даже при том, что сигнал находится вне первой зоны
Найквиста, его составляющая fs-fa попадает внутрь зоны.

20. Обзор алгоритмов ЦОС

Подразумевается, что перед дискретизатором (или АЦП)
осуществляется аналоговая фильтрация, подавляющая гармоники,
частоты которых находятся вне полосы Найквиста и после
дискретизации попадают в ее пределы. Рабочая характеристика
фильтра будет зависеть от того, как близко частота внеполосного
сигнала отстоит от fs/2, а также будет определяться величиной
требуемого подавления.
Подлежащий дискретизации сигнал лежит в 1-й частотной зоне
Найквиста. Без фильтрации на входе идеального дискретизатора
любой частотный компонент (сигнал или шум), который находится за
пределами «полосы Найквиста» (т.е. в любой следующей зоне
Найквиста), будет создавать НЧ-составляющую в первой зоне
Найквиста. По этой причине ФНЧ используется почти со всеми АЦП
для подавления нежелательных сигналов.

21. Обзор алгоритмов ЦОС

В случае, когда наивысшая из интересующих нас частот равна
fa, фильтр пропускает сигналы, лежащие в полосе частот от 0 до fa,
тогда как сигналы с частотой выше fa ослабляются.
Если ширина полосы частот сигнала известна, минимальная
требуемая частота дискретизации может быть определена путем ее
умножения
на
коэффициент
2,1-2,5.
Увеличение
частоты
дискретизации снижает требования к предшествующему АЦП ФНЧ,
устраняющему эффект наложения спектра (antialiasing filter).

22. Пример: реализация FIR-фильтра на ЦСП

В качестве практического примера использования ЦСП
сравним аналоговый и цифровой фильтры низкой частоты (ФНЧ),
каждый с частотой среза 1кГц. Цифровой фильтр реализован в виде
типичной дискретной системы:
«anti-aliasing»
«anti-imaging»

23. Пример: реализация FIR-фильтра на ЦСП

Цифровой фильтр имеет намного более крутой спад АЧХ и
линейную ФЧХ, не требует подбора компонентов и не чувствителен
к дрейфу частоты, так как она стабилизирована на кристалле. На
практике такие характеристики невозможно реализовать с
использованием одних только аналоговых методов.

24. Обзор цифровой и аналоговой аппаратуры ЦОС

В настоящее время при решении задач обработки
измерительных сигналов важно выбрать оптимальную комбинацию
аналоговых и цифровых методов. Невозможно обработать
физические аналоговые сигналы, используя только цифровые
методы, так как большинство первичных датчиков (микрофоны,
термопары,
тензорезисторы,
пьезоэлектрические
кристаллы,
головки накопителя на магнитных дисках и т.д.) являются
аналоговыми устройствами.
Большинство видов сигналов требуют наличия цепей
нормализации для дальнейшей обработки сигналов аналоговым или
цифровым методом.
Аналоговые цепи нормализации сигнала выполняют
следующие функции:
-усиления сигнала;
-запоминания и хранения сигнала;
-обнаружения сигнала на фоне шума;
-сжатия динамического диапазона;
-фильтрации;
-прочие (в зависимости от конкретной задачи).

25. Обзор цифровой и аналоговой аппаратуры ЦОС

Типовые методы реализации процесса обработки сигналов:
В первом случае изображен чисто аналоговый подход.
В остальных случаях ЦСП (DSP) выполняет функцию вычислителя.

26. Обзор цифровой и аналоговой аппаратуры ЦОС

В общем случае на месте DSP может находиться любой
элемент-вычислитель. Цифровая обработка сигнала в вычислителе
может выполняться на основе разнообразной элементной базы.
Вычислитель может быть реализован аппаратным способом
(устройство с жесткой логикой) и программным методом.
Элементная база включает различные непрограммируемые
(работающие не под управлением программы) и программируемые
устройства. К непрограммируемым элементам относятся:
интегральные схемы ASIC (Application Specific Integrated
Circuits – специализированные или проблемно-ориентированные
интегральные схемы),
CPLD
(Complex
Programmable
Logic
программируемые логические интегральные схемы),
Devices

FPGA (Field Programmable Gate Arrays – программируемые
вентильные матрицы);
FPAA (Field Programmable Analog Arrays – программируемые
аналоговые интегральные схемы).

27. Обзор цифровой и аналоговой аппаратуры ЦОС

Программируемыми
элементами
являются
микроконтроллеры, универсальные процессоры общего назначения
разного типа (RISC и CISC) и ЦСП.
Следует отметить, что устройства типа CPLD, FPGA, FPAA,
строго говоря, так же «программируются» с использованием
специальных
инструментальных
средств
разработки
для
реализации ими определенной функции. В результате получается
некоторая специализированная интегральная схема, которая может
выполнять функции в объеме от узла цифровой электроники (CPLD)
или простейшего фильтра (FPAA) до нескольких процессорных ядер
(FPGA) или сложнейших уникальных схем обработки аналоговых
сигналов (FPAA).
Лидерами в производстве PLD и FPGA являются компании
Altera и X) позволяет отключать передачу во ilinx, лидером в производстве FPAA является компания
Anadigm.

28. Обзор цифровой и аналоговой аппаратуры ЦОС

Программируемые коммутируемые матричные блоки – CPLD (Complex Programmable Logic
Device) – это ПЛИС, содержащие несколько матричных логических блоков, объединенных
коммутационной матрицей. Каждый матричный блок представляет собой программируемую матрицу
«И», фиксированную матрицу «ИЛИ» и макроячейки. Эти ПЛИС имеют достаточно высокую степень
интеграции – до 10000 эквивалентных вентилей и до 256 макроячеек. К этому классу относятся ПЛИС
семейства MAX) позволяет отключать передачу во 5000 и MAX) позволяет отключать передачу во 7000 фирмы Altera, X) позволяет отключать передачу во C7000 и X) позволяет отключать передачу во C9500 фирмы X) позволяет отключать передачу во ilinx, большое число ПЛИС
производства Atmel и Lucent.
Пример: ИМС E) и PM3064 Altera
Функциональная схема ПЛИС семейства MAX) позволяет отключать передачу во 3000 Altera

29. Обзор цифровой и аналоговой аппаратуры ЦОС

Другой тип архитектуры ПЛИС – программируемые вентильные матрицы (ПВМ) – FPGA (Field
Programmable Gate Array). Они состоят из множества (порядка миллионов) логических блоков (ЛБ) и
коммутирующих путей – программируемых матриц соединений. Логические блоки таких ПЛИС состоят
из одного или нескольких относительно простых логических элементов, в основе которых лежит
таблица перекодировки (LUT - Look Up Table), программируемый мультиплексор, D-триггер, а также
цепи управления. Некоторые семейства таких ПЛИС содержат встроенные реконфигурируемые
модули памяти E) и AB (E) и mbedded Array Block), что делает ПЛИС данной архитектуры весьма удобным
средством реализации цифровых алгоритмов ЦОС, основными операциями в которых являются
умножение, сложение и задержка. К этому классу относятся ПЛИС X) позволяет отключать передачу во C2000, X) позволяет отключать передачу во C3000, X) позволяет отключать передачу во C4000, Spartan,
Virtex фирмы X) позволяет отключать передачу во ilinx, FLE) и X) позволяет отключать передачу во 8000 фирмы Altera.

30. Обзор цифровой и аналоговой аппаратуры ЦОС

Архитектура ПЛИС семейства Spartan-3 содержит 5 фундаментальных программируемых
элементов:
1. Конфигурируемый Логический Блок – КЛБ. На базе КЛБ реализуется комбинаторная и синхронная
логика, включая базовые запоминающие элементы.
2. Блок ввода-вывода – БВВ. БВВ осуществляют коммутацию выводов корпуса микросхемы с
внутренней конфигурируемой логикой. БВВ поддерживают большинство сигнальных стандартов
ввода-вывода, существующих в настоящее время.
3. Блок памяти. Каждый блок может конфигурироваться как двухпортовое ОЗУ ёмкостью 18 кбит.
4. Блок умножителя. Встроенный умножитель 18x18 бит.
5. Цифровой блок управления синхронизацией – DCM (Digital Clock Manager).

31. Обзор цифровой и аналоговой аппаратуры ЦОС

32. Обзор цифровой и аналоговой аппаратуры ЦОС

Основными особенностями архитектуры кристаллов семейства Virtex являются гибкость и
регулярность. Кристаллы состоят из матрицы КЛБ (Конфигурируемый Логический Блок), которая
окружена программируемыми блоками ввода-вывода (БВВ).
Все соединения между основными элемента (КЛБ, БВВ) осуществляются с помощью набора
иерархических программируемых трассировочных ресурсов. Множество таких ресурсов позволяет
реализовывать на кристалле семейства Virtex сложные проекты.
Кристаллы семейства Virtex производятся на основе статического ОЗУ (Static Random Access
Memory – SRAM), поэтому функционирование кристаллов определяется загружаемыми во
внутренние ячейки памяти конфигурационными данными.
Кристаллы Virtex обеспечивают более высокую производительность, чем предыдущие
поколения FPGA.
Соединение между КЛБ осуществляется
с помощью главных трассировочных матриц ГТМ. ГТМ - это матрица программируемых
транзисторных
двунаправленных
переключателей, расположенных на пересечении
горизонтальных и вертикальных линий связи.
Каждый КЛБ окружен локальными линиями связи
(VersaBlock), которые позволяют осуществить
соединения с матрицей ГТМ. Интерфейс вводавывода
VersaRing
создает
дополнительные
трассировочные
ресурсы
по
периферии
кристалла.
Эти
трассы
улучшают
общую
“трассируемость” устройства и возможности
трассировки после закрепления электрических
цепей к конкретным контактам.

33. Обзор цифровой и аналоговой аппаратуры ЦОС

Обработка сигнала внутри FPAA осуществляется схемами на переключаемых конденсаторах.
В отличие от цифровых систем, где сигнал дискретен по времени и квантован по уровню, в дискретноаналоговых системах сигнал дискретен только по времени, в силу этого выходной аналоговый сигнал
можно восстановить без искажений по его выборкам. Так, при входном сигнале 1 мВ точность
преобразования будет не хуже ±0,1%.
Пример: ИМС ANm20E) и 04 Anadigm
Сравнение дискретных выборок аналогового сигнала
и квантованных выборок цифрового сигнала (8-битный АЦП)

34. Обзор цифровой и аналоговой аппаратуры ЦОС

Основу ПАИС составляют четыре конфигурируемых аналоговых блока (КАБ), каждый из
которых содержит наборы элементов — 8 программируемых конденсаторов, 2 операционных
усилителя, 1 компаратор и 1 регистр последовательного приближения. Используя этот набор
элементов, можно создавать конфигурируемые аналоговые модули (КАМ): усилители, выпрямители,
интеграторы, дифференциаторы, сумматоры, перемножители и т. п. Необходимо отметить, что на базе
одного КАБ можно создать несколько КАМ.
Структура КАБ
а) Блок-схема отработки сигнала на схемах с
переключаемыми конденсаторами; б) спектр
входного сигнала; в) спектр выходного
сигнала

35. Основные направления ЦОС

В настоящее
направления ЦОС:
время
выделяют
линейная фильтрация;
спектральный анализ;
частотно-временной анализ;
адаптивная фильтрация;
нелинейная обработка;
многоскоростная обработка.
следующие
основные

36. Основные цели цифровой обработки сигналов

- Извлечение информации о сигнале (амплитуда, фаза, частота,
спектральные составляющие, временные соотношения)
- Преобразование формата сигнала (телефония с разделением
каналов)
- Сжатие данных (модемы, сотовые телефоны, цифровое
телевидение, сжатие MPE) и G)
- Формирование сигналов обратной связи (управление
сложными промышленными процессами)
- Выделение сигнала из шума (фильтрация, автокорреляция,
свертка)

37. Теоретические основы ЦОС

Конечный ряд Фурье
Всякая периодическая ограниченная, кусочно-непрерывная
функция может быть представлена в виде ряда Фурье
P (t ) Ck e j 2 kf t ,
(1)
1
f1
где
1
T1
k
; T1
P (t )
– период функции
;
C k – постоянные коэффициенты.
В качестве базисных функций, т.е. функций, по которым
проводится разложение, в формуле (1) использованы комплексные
гармонические функции вида
e
j 2 kf 1t
Значения коэффициентов C k
, где
k
– целое число.
можно найти по формуле:
t T
1 0 1
Ck P (t )e j 2 kf1t dt
T1 t0
(2)

38. Теоретические основы ЦОС

Ряд Фурье содержит бесконечное число членов. Именно в
этом случае можно поставить знак равенства между левой и правой
частью в формуле (1). На практике приходится ограничиваться
конечным числом членов, вследствие чего указанное равенство
соблюдается только приближенно.
Ряд Фурье имеет важное достоинство: при ограниченном
числе
членов
он
обеспечивает
наилучшее
в
смысле
среднеквадратичной погрешности приближение к исходной
функции. Это значит, что если в правой части соотношения (1) вести
суммирование от k = -n до k = n , где n – некоторое конечное число,
то наименьшая среднеквадратичная разность на периоде функции
p t
между левой и правой частями этого соотношения будет
Ck
иметь место в том случае, когда коэффициенты
определены по
формуле (2). При увеличении числа членов ряда Фурье до
бесконечности
среднеквадратичная
погрешность
разложения
стремится к нулю.

39. Теоретические основы ЦОС

Спектр информационного сигнала
Спектром сигнала называют функцию, показывающую
зависимость интенсивности различных гармоник в составе сигнала
от частоты этих гармоник. Спектр периодического сигнала – это
зависимость коэффициентов ряда Фурье от частот гармоник,
которым эти коэффициенты соответствуют.
P ( f ) P (t )e j 2 ft dt
Для непериодического сигнала спектр – это преобразование
Фурье
сигнала. Спектр
периодического
сигнала
является
дискретным (дискретная функция частоты), в то время как для
непериодического сигнала характерен непрерывный спектр.
Дискретный спектр имеет ту же размерность, что и сигнал, в то
время как размерность непрерывного спектра равна отношению
размерности сигнала к размерности частоты. Поэтому для
непрерывного спектра употребляют также термин «спектральная
плотность».

40. Теоретические основы ЦОС

Дискретное преобразование Фурье
Преобразование
Фурье
(ПФ)

одна
из
самых
распространенных процедур, применяемых при обработке сигналов.
При выполнении ПФ требуется проводить интегрирование
непрерывных функций. Цифровые сигнальные процессоры
оперируют с дискретизованными функциями, а операцию
интегрирования могут выполнять лишь приближенно на основе того
или иного численного метода. В связи с этим был разработан
вариант ПФ, названный дискретным преобразованием Фурье (ДПФ),
при реализации которого обрабатываются дискретизованные
значения сигнала и спектра и вместо интегрирования функции
проводится суммирование ее дискретных значений:
где
сигнала;
1
A( k )
N
N 1
a n e
n 0
j
2
kn
N
A(k ) – дискретные отсчеты спектра ; a (n)
N – количество отсчетов за период функции.
– отсчеты

41. Теоретические основы ЦОС

Комплексный спектральный выход ДПФ
A(k) является
результатом свертки входных отсчетов с базисными функциями
синуса и косинуса.

42. Теоретические основы ЦОС

43. Теоретические основы ЦОС

Быстрое преобразование Фурье
Дискретное преобразование Фурье довольно часто применяют
при цифровой обработке информации. Поэтому важным фактором
начинает выступать время реализации алгоритма ДПФ на
имеющемся вычислительном элементе. Особенно большое значение
этот фактор приобретает при увеличении числа отсчетов N
анализируемого сигнала. Действительно, в соответствии с формулой
ДПФ
N 1
NA( k ) a n e
j
2
kn
N
,
n 0
и для определения N значений последовательности NA( k )
требуется произвести примерно N 2 умножений и N 2 сложений.
Таким образом, с ростом N непропорционально быстро возрастает
время расчета ДПФ на процессоре.
2
Введем обозначение:
W
nk
N 1
e
j
N
kn
NA( k ) a n W nk .
n 0
, тогда

44. Теоретические основы ЦОС

Алгоритм прямого вычисления последовательности
NA( k )
содержит большое количество избыточных операций, в том числе
и таких, когда одни и те же операции многократно выполняются над
одними и теми же значениями величин. Это связано с тем, что
весовая функция
nk является периодической функцией аргумента
W
. Так как
и
принимают значения из
n
k
nk
последовательности
то
0 ,1,..., N 1
nk
произведение
, принимающее значения
2
N
0, ,будет
1,..., Nсодержать
1
большое число периодов
и соответствующие
nk
W
им значения весовой функции
будут повторяться через
N
период
.
j
2
0
N
j
2
N
W 0 e
1
W e
2
W e
...
j
4
N
;
;
1;
W
W
W
...
N
2
e
N
1
2
N
2
2
j
e
2 N
N 2
j
e
e j 1 W 0 ;
2 N
1
N 2
j
2 N
2
N 2
e j e
j
e j e
2
N
j
4
N
e j W 1 W 1 ;
e j W 2 W 2 ;

45. Теоретические основы ЦОС

W nk
В пределах одного периода первые N 2 значений
отличаются от вторых N 2 значений только знаком.
Устранение избыточных операций умножения является целью
алгоритма быстрого преобразования Фурье (БПФ). Считая, что
N делится на 2, представим выражение для ДПФ двумя суммами,
соответствующими четным и нечетным значениям n :
N 1
NA( k ) a n e
j
2
kn
N
N / 2 1
n 0
N / 2 1
a 2n e
j
2
2 nk
N
W
2
2 nk
N
N / 2 1
n 0
e
n 0
k
a 2n e
j
j
2 N / 2 1
k
N
a 2n 1 e
a 2n 1 e
j
2
2 n 1 k
N
n 0
j
2
2 nk
N
n 0
N / 2 1
a 2n W 2 nk
n 0
N / 2 1
2 nk
k
a
2
n
1
W
B
k
W
C k ,
(3)
n 0
где B
слагаемых.
k
C k и
– суммы соответственно 1-го и 2-го

46. Теоретические основы ЦОС

Таким образом, вычисление
- точечного преобразования
N
, можно
произвести путем
A
k
,
k
0
,
1
,
...,
N
1
вычисления двух
точечных преобразований:
B k , k 0 , 2, ..., N 2
N 2
C k , k 1,3, ..., N 1 с последующим их объединением
и
N 8 :
по формуле (3). Например, для

47. Теоретические основы ЦОС

Прямое вычисление N-точечного преобразования требует N2
комплексных умножений. При рассмотренном варианте БПФ
вычисление
двух
N/2точечных
преобразований
потребует
2(N/2)N/2)2=N2/2 комплексных умножений, а их объединение – еще N/2
умножений. Таким образом, количество умножений станет равным
(N/2)N+N2)/2, что при больших N примерно вдвое сокращает
требуемое количество умножений. Если N/2 в свою очередь
делится на 2, то вычисление каждого из преобразований B(N/2)k) и C(N/2)k)
можно также свести к двум N/4-точечным преобразованиям, что
вызовет дополнительное уменьшение требуемого количества
операций умножения и т.д. Если N представляется целой степенью
двух
(N/2)N = 2m), то вычисления разбиваются на т = log2N этапов, в каждом
из которых требуется N/2 умножений. Таким образом, общее
количество умножений равно (N/2)N/2) log2N.

48. Теоретические основы ЦОС

Алгоритм БПФ по основанию 2:
Базовая операция
БПФ «бабочка»

49. Теоретические основы ЦОС

50. Теоретические основы ЦОС

При 8-точечном БПФ восемь входных отсчетов из временной
области сначала разделяются на четыре группы 2-точечных ДПФ.
Затем четыре 2-точечных ДПФ объединяются в два 4-точечных
ДПФ, и в завершение два 4-точечных ДПФ объединяются для
получения окончательного результата A(N/2)k). Основу для всего
вычисления формирует базовая операция «бабочка» 2-точечного
ДПФ. Вычисление осуществляется в трех каскадах. Результаты
вычисления первого каскада могут быть сохранены в тех же самых
регистрах или ячейках памяти, которые первоначально хранили
исходные отсчеты из временной области a(N/2)n). При вычислении всех
последующих каскадов можно заполнять одни и те же ячейки
памяти с результатами вычисления предыдущих каскадов (стирая
старые данные). Это делает алгоритм БПФ экономичным с точки
зрения требуемой памяти.
Для того, чтобы алгоритм работал должным образом, входные
отсчеты по времени a(N/2)n) должны быть упорядочены определенным
образом с использованием алгоритма реверсирования битов.

51. Теоретические основы ЦОС

При реализации БПФ с прореживанием по времени
используется типовой алгоритм реверсирования битов. Десятичный
индекс n преобразуется в его двоичный эквивалент. Затем
двоичные разряды располагаются в обратном порядке и
преобразуются обратно в десятичное число. Реверсирование битов
часто выполняют аппаратурой ЦОС в генераторе адреса данных
(DAG), упрощая таким образом программное обеспечение и ускоряя
вычисления.

52. Теоретические основы ЦОС

53. Теоретические основы ЦОС

Приведем сравнительные результаты реализации алгоритмов
БПФ по основанию 2 на различных процессорах производства
Analog Devices:
разряда,

54. Теоретические основы ЦОС

Требования к ЦСП для реализации алгоритмов БПФ в
реальном масштабе времени
Существует два основных способа обработки сигналов в
реальном масштабе времени: обработка одного отсчета в каждый
момент времени (непрерывная обработка) и обработка одного
пакета данных в каждый момент времени (пакетная обработка).
Системы, основанные на непрерывной обработке, такие как
цифровой фильтр, получают данные в виде одного отсчета в
каждый момент времени. В каждом такте новый отсчет поступает в
систему, а обработанный отсчет передается на выход.
Системы, основанные на пакетной обработке, такие как
построенный на БПФ цифровой анализатор спектра, получают
данные в виде целого пакета отсчетов. Происходит обработка всего
пакета исходных данных, результатом которой является пакет
преобразованных выходных данных.

55. Теоретические основы ЦОС

Для обеспечения функционирования в реальном масштабе
времени при пакетной обработке полный расчет БПФ должен
выполняться в промежутке, соответствующем времени накопления
одного пакета данных и равном N/fs, где fs – частота дискретизации,
N – число отсчетов в пакете данных. Предполагается, что, пока
производится вычисление БПФ текущего пакета данных, ЦСП
накапливает данные для следующего пакета. Накопление данных
является одной из сфер, где важную роль играют архитектурные
особенности ЦСП. Непрерывное получение данных облегчается
благодаря возможностям гибкой адресации данных в ЦСП в
сочетании с использованием каналов прямого доступа к памяти
(Direct Memory Access, DMA).

56. Теоретические основы ЦОС

ПРИМЕР ОГРАНИЧЕНИЙ ПРИ ПАКЕТНОМ ВЫЧИСЛЕНИИ БПФ В
РЕАЛЬНОМ МАСШТАБЕ ВРЕМЕНИ
fs =

57. Теоретические основы ЦОС

Эффект расширения спектра анализируемого сигнала при БПФ
Эффект расширения спектра анализируемого сигнала при
вычислении БПФ может быть лучше всего проиллюстрирован на
примере выполнения N-точечного БПФ с синусоидальным входным
сигналом.
Рассмотрим два случая.
В первом случае соотношение между частотой дискретизации и
частотой входного синусоидального сигнала таково, что в выборке
содержится в точности целое число периодов синусоидального
сигнала. При таких условиях форма входного сигнала представляет
собой непрерывную синусоидальную функцию, и на выходе БПФ
будет один ненулевой частотный отсчет, соответствующий частоте
входного сигнала.

58. Теоретические основы ЦОС

59. Теоретические основы ЦОС

Второй случай отражает ситуацию, когда в выборке нет целого
числа периодов синусоидального сигнала.

60. Теоретические основы ЦОС

Разрывы, которые образуются в конечных точках выборки,
приводят к расширению спектра анализируемого сигнала
вследствие появления дополнительных гармоник. Кроме появления
боковых лепестков, происходит расширение основного лепестка,
что приводит к снижению разрешающей способности по частоте.
Этот
процесс
эквивалентен
перемножению
входного
синусоидального
сигнала
с
прямоугольным
импульсом.
Перемножение сигналов во временной области эквивалентно
свертке их спектров.
Прямоугольный
импульс
имеет
известную
частотную
характеристику sin(x)/x и связанные с этим широкий основной
лепесток и боковые лепестки, причем первый боковой лепесток
только на 12 дБ ниже основного, а боковые лепестки имеют спад
только 6 дБ/окт.

61. Теоретические основы ЦОС

Эффект расширения основного лепестка и появления боковых
лепестков
значительно
ухудшает
основное
преимущество
преобразования Фурье – его частотную избирательность.
Поскольку
в
практических
приложениях
БПФ
для
спектрального анализа точные входные частоты неизвестны,
следует предпринять меры для уменьшения боковых лепестков. Это
достигается выбором оконной функции с более сложной формой,
чем прямоугольная. Входные отсчеты по времени умножаются на
соответствующую функцию окна, что влечет за собой обнуление
сигнала на краях выборки.

62. Теоретические основы ЦОС

63. Теоретические основы ЦОС

Выбор функции окна является компромиссом между
дополнительным увеличением ширины основного лепестка и
уменьшением
амплитуды
боковых
лепестков.
Некоторые
распространенные оконные функции:

64. Теоретические основы ЦОС

Оцифрованные оконные функции обычно вычисляются
предварительно и сохраняются в памяти ЦСП с целью минимизации
вычислений непосредственно при реализации БПФ. Частотные
характеристики прямоугольного окна, окон Хемминга и Блэкмана:
Прямоугольное окно

65. Теоретические основы ЦОС

Окно Хемминга

66. Теоретические основы ЦОС

Окно Блэкмана

67. Теоретические основы ЦОС

Свойства оконных функций, связанные с увеличением ширины
основного лепестка, подавлением амплитуды первого бокового
лепестка и спадом уровня боковых лепестков.
(ЭРЧ)
(ЭРЧ)
Хемминга
Хеннинга
ЭРЧ – элементов разрешения по частоте

68. Теоретические основы ЦОС

Перенос спектра сигналов из одной частотной области в
другую
Пусть исходный сигнал имеет действительные значения х (N/2)n) и
спектр X(N/2)k), модуль которого показан на рис. а. Необходимо
преобразовать сигнал таким образом, чтобы его спектр оказался
сдвинутым вправо на р дискретных значений частоты (на частоту
2 p
N
), как показано на рис. б.

69. Теоретические основы ЦОС

Спектральная функция преобразованного
описываться выражением X (N/2)k — р). Так как
сигнала
будет
1 N 1
X ( k ) x n W nk ,
N n 0
N 1
N 1
1
1
n k p
то X ( k p ) x n W
x n W np W nk
N n 0
N n 0
1
N
где
N 1
nk
x
n
W
,
n 0
x n x n W
np
x n e
j 2 n
p
N
- преобразованный сигнал, имеющий требуемый спектр.
Таким
образом, для сдвига спектра вправо необходимо
дискретные значения сигнала х(N/2)n) умножить на
e
j 2 n
p
N
p
p
cos 2 n j sin 2 n
N
N

70. Теоретические основы ЦОС

Вычисление дискретной свертки
Для анализа преобразования сигналов сложной формы в
линейных цепях, а также в алгоритмах цифровой фильтрации часто
применяется вычисление дискретной свертки. Согласно свойствам,
спектр свертки двух функций равен произведению спектров
свертываемых функций:
1 t * 2 t 1 2 t d 1 f 2 f , (1)
спектр произведения двух функций равен свертке их спектров:
1 t 2 t 1 f * 2 f 1 f 2 f f df .

71. Теоретические основы ЦОС

Если в формуле (1) Ф1(N/2)f) – спектр входного сигнала, а Ф2(N/2)f) –
передаточная частотная функция фильтра, то во временной области
выполняется свертка входного сигнала x(N/2)t) с импульсной
характеристикой фильтра g(N/2)t) и на выходе фильтра получается
сигнал y(N/2)t):
y t x t * g t x g t d
Операция
свертки
двух
дискретных
периодических
последовательностей x(N/2)n) и g(N/2)n) выражается формулой:
N 1
y n x m g n m , n 0,1,..., N 1
m 0

72. Теоретические основы ЦОС

Рассмотрим процесс вычисления свертки 4-точечной функции,
описывающей входную последовательность x(N/2)n), с 4-точечной
импульсной характеристикой фильтра g(N/2)n):
10
10
10
10
x
0
0
0
0
10
7
4
2
g
0
0
0
0
y0 x0 g0
y1 x0 g1 x1 g0
y2 x0 g2 x1 g1 x2 g0
y3 x0 g3 x1 g2 x2 g1 x3 g0
y4 x0 g4 x1 g3 x2 g2 x3 g1 x4 g0
y5 x0 g5 x1 g4 x2 g3 x3 g2 x4 g1 x5 g0
y6 x0 g6 x1 g5 x2 g4 x3 g3 x4 g2 x5 g1 x6 g0
y7 x0 g7 x1 g6 x2 g5 x3 g4 x4 g3 x5 g2 x6 g1 x7 g0

73. Теоретические основы ЦОС

Результат вычислений (выходной сигнал фильтра):
100
170
210
230
y
130
60
20
0

74. Теоретические основы ЦОС

Схема фильтра с прямым выполнением свертки:
x(N/2)t)
x(N/2)m)
ФНЧ
УВХ
АЦП
Вычислитель
Упр.
Адрес
ПЗУ
таблица
дискретных
отсчетов
импульсной
функции
g(m)
дискретная
свертка
последовательностей x(m) и
g(n-m)
y(N/2)n)
y(N/2)t)
ЦАП
ФНЧ
g(N/2)n-m)
Требуется
≈ N умножений
действительных чисел
2

75. Теоретические основы ЦОС

Схема фильтра с промежуточными ДПФ:
x(N/2)t)
x(N/2)m)
ФНЧ
УВХ
АЦП
Вычислитель
Упр.
ПЗУ
таблица
дискретных
отсчетов
АЧХ фильтра
G(f)
1) вычисление
спектра
Адрес информационного
сигнала с
использованием
y(N/2)n)
y(N/2)t)
ЦАП
ФНЧ
БПФ: x(n)→X(f);
G(N/2)f)
2) перемножение
спектров
G(f) и X(f);
3) обратное ДПФ
полученного
произведения
(с использованием
Требуется
≈2N*log2N+4N+2N*log2N
умножений
действительных чисел

76. Теоретические основы ЦОС

Таким образом, во втором способе общее количество
умножений
действительных
чисел
(при
необходимости
преобразовывать оба входных сигнала в спектры) составит
М = 6Nlog2N + 4N. В таблице приведено количество умножений при
прямом методе выполнения свертки и методе с использованием
БПФ для различных значений N. Видно, что при N > 25 = 32, метод с
использованием БПФ по сравнению с прямым методом
обеспечивает экономичность тем более высокую, чем больше N.
Способ
С использованием
дискретной свертки
С использованием
промежуточных ДПФ
Количество умножений при N, равном
16
32
64
128

256
1024
4096
16384

448
1088
2560
5888

77. Тэарэтычныя асновы ЛАС

Вылічэнне карэляцыйнай функцыі
Сэнс карэляцыйнага аналізу – высвятленне колькаснай ступені
падабенства паміж інфармацыйнымі сігналамі. Карэляцыйная
функцыя дэтэрмінаванага сігнала ўяўляе сабой інтэграл ад
памнажэння дзвюх копій сігнала, зрушаных адна адносна адной на
пэўны час:
B s ( ) x(t )x(t )dt
У дачыненні сігнала і яго зрушанай копіі гэтая функцыя мае
таксама назву “функцыя аўтакарэляцыі”. Функцыя мае максімум
пры 0,
і пры гэтай умове мае фізічны сэнс энергіі сігнала
(інтэграл ад квадрата сігнала).

78. Тэарэтычныя асновы ЛАС

Узаемная
карэляцыйная
функцыя
паказвае
ступень
падабенства паміж дзвюма рознымі інфармацыйнымі сігналамі,
адзін з якіх зрушваецца на пэўны час адносна другога:
B12 ( ) x1 (t )x2 (t )dt
Фізічны сэнс: функцыя ўзаемнай карэляцыі раўна нулю пры
любых часовых зрухах
ў тым выпадку, калі спектры сігналаў
(адзін з якіх зрушваецца на пэўны час адносна другога) не
перакрываюцца. Такія сігналы называюцца некарэліраванымі.
У адрозненне ад гэтага, ўзаемная карэляцыя максімальна ў выпадку,
калі амплітудныя спектры сігналаў максімальна падобны.
Разліковыя формулы для функцый аўтакарэляцыі і ўзаемнай
карэляцыі атрымоўваюцца шляхам замены інтэгралаў дыскрэтнымі
сумамі:
1 N 1
B(k )
x(n)x(n k );
N
k 0, 1, ..., N 1
n 0
1
B12 (k )
N
N 1
x (n)x (n k );
1
n 0
2
k 0, 1, ..., N 1

79. Особенности и характеристики ЦСП

Основные особенности ЦСП, обеспечивающие эффективную
реализацию алгоритмов ЦОС:
1) быстрое выполнение типовых операций ЦОС;
2) аппаратная реализация комплексной операции умножения с
накоплением (суммирование локальных произведений - МАС);
3) применение арифметики с фиксированной точкой (ФТ) и
плавающей точкой (ПТ) с разнообразной разрядностью;
4) параллельное выполнение отдельных частей программы,
которое достигается аппаратной реализацией ряда типовых
алгоритмов ЦОС;
5) большая внутрикристальная память данных и память
программ;
6) разнообразие режимов адресации применительно к
различным задачам;
7) обработка в реальном времени данных, поступающих с
высокой скоростью;
8) наличие внутрикристальной периферии (последовательных
и параллельных интерфейсов, портов ввода/вывода, таймеров);
9) малое время обращения к элементам внешней периферии.

80. Особенности и характеристики ЦСП

Рассмотрим характеристики ЦСП, которые важны при выборе
процессора для конкретной разработки и обычно приводятся в
различных таблицах для сравнения.
Характеристики ЦСП:
1. Тип арифметики
2. Разрядность данных
3. Общее быстродействие
4. Производительность по ЦОС
5. Объем внутренней памяти
6. Объем адресного пространства
7. Порты последовательного ввода-вывода информации
8. Внутренние периферийные устройства
9. Каналы DMA
10. Потребляемая мощность
11. Относительный показатель «Потребляемая мощность / быстродействие»

81. Особенности и характеристики ЦСП

1. Тип арифметики.
Арифметика, применяемая при цифровой обработке
сигналов, может быть разделена на две категории: с фиксированной
точкой и с плавающей точкой. Данная классификация относится к
формату, используемому для хранения чисел и манипуляций с
этими числами под управлением процессора.
ЦСП с фиксированной точкой представляют каждое число
16-ю
разрядами.
Существует
четыре
различных
способа
представления 16-разрядного числа, принимающего в общей
сложности 216 = 65536 возможных значений.
При использовании беззнакового целого формата число
может принимать значение от 0 до 65535.
При
использовании
знакового
целого
формата
используется
дополнительный
код
для
представления
отрицательных чисел, поэтому диапазон возможных значений
лежит в пределах от –32768 до +32767.
При использовании беззнакового дробного формата 65536
уровней распределяются между 0 и +1.
Знаковый дробный формат позволяет использовать
отрицательные числа, при этом 65536 возможных значений
равномерно распределенны между -1 и +1.

82. Особенности и характеристики ЦСП

Например,
арифметика
ЦСП
семейства
ADSP-21xx
оптимизирована под знаковый дробный формат, обозначаемый как
1.15 ("один точка пятнадцать"). В этом формате присутствует один
разряд для знака (MSB) и 15 дробных разрядов, представляющих
значения от –1 до значения, меньшего +1 на величину,
соответствующую одному младшему биту.

83. Особенности и характеристики ЦСП

Этот подход может быть обобщенно обозначен, как "m.Q", где
m - число битов слева от точки, отделяющей дробную часть, а
Q - число битов справа от точки. Например, беззнаковое целое
число представляется как формат 16.0. Для большинства
приложений цифровой обработки сигналов предполагается
использование дробных форматов числа. Дробные числа имеют
превосходство, которое заключается в том, что результат
умножения двух дробных чисел меньше каждого из сомножителей.
ЦСП с плавающей точкой обычно используют минимум
32 разряда для представления каждого числа. Это приводит к
возможности
представления
гораздо
большего
количества
различных значений, чем в 16-разрядном ЦСП с фиксированной
точкой, а точнее 232 = 4294967296. Плавающая точка существенно
увеличивает диапазон значений, который может быть представлен в
рамках 32-разрядного представления. Наиболее распространенный
стандарт с плавающей точкой – стандарт ANSm/mE) и E) и E) и 754-1985, где
самое большое и самое маленькое возможные числа равны
±3,4×1038 и ±1,2×10–38 соответственно.

84. Особенности и характеристики ЦСП

Согласно стандарту mE) и E) и E) и -754, 32-разрядное слово разделяется
на знаковый разряд, S, 8-разрядную экспоненту Е, и 23-разрядную
мантиссу М. Отношение между десятичным и двоичным
представлениями чисел с плавающей точкой, представленных в
формате mE) и E) и E) и -754, задается с помощью выражения:
=E) и

85. Особенности и характеристики ЦСП

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

86. Особенности и характеристики ЦСП

2. Разрядность данных. Все обычные ЦСП с плавающей
точкой используют слово данных длиной в 32 бита. Для ЦСП с
фиксированной точкой обычный размер слова данных - 16 бит.

87. Особенности и характеристики ЦСП

3. Общее быстродействие. Одним из самых важных
параметров с точки зрения конкретных применений является
быстродействие процессора. Для характеристики быстродействия
ЦСП анализируют параметры: тактовая частота, время командного
цикла, MmPS, MOPS (MFLOPS).
3.1. Тактовая частота работы процессора и связанное с ней время командного цикла. Как
правило, при описаниях процессоров обычно указывается внешняя тактовая частота, подаваемая на
процессор. Она может отличаться от внутренней частоты работы из-за наличия системы деления или
умножения частоты. Для последних процессоров, в которых внешняя частота может изменяться в
широких пределах, чаще указывают внутреннюю частоту работы процессора.
3.2. Время командного цикла связано с внутренней частотой работы процессора. Так как
отдельная операция в процессоре может выполняться как за несколько циклов, так и за один, время
командного цикла является самой неоднозначной характеристикой быстродействия процессора. К тому
же, в некоторых процессорах используется параллельное выполнение команд и параллельная работа
нескольких операционных модулей. Поэтому время цикла полностью не характеризует реально
выполняемую процессором работу.
3.3. Количество миллионов команд, выполняемых за секунду MIPS (N/2)Million instructions per
second). В ЦСП используются различные команды, в том числе комбинированные, в соответствии с
которыми одновременно выполняется несколько операций. Кроме того, существуют процессоры с
несколькими АЛУ, в которых применяются длинные команды. Таким образом, одной команде в разных
процессорах соответствует различная выполняемая работа. Поэтому характеристика MIPS неоднозначно
определяет быстродействие процессора.
3.4. Количество миллионов операций за секунду MOPS (Millions operations per second) или
Количество миллионов операций с плавающей точкой за секунду MFLOPS (Millions of floating-point
operations per second). Эта характеристика учитывает выполнение параллельных команд и
одновременную работу нескольких операционных модулей. С учетом того, что к выполняемым операциям
относят и выборки команд, и запись в память полученных результатов, MOPS неточно характеризует
реальное быстродействие.

88. Особенности и характеристики ЦСП

4.
Производительность
по
ЦОС.
Возможный путь
определения производительности состоит в выборе единой
простой операции для целей сравнения. Для прикладных программ
ЦОС естественным является выбор операции умножения с
накоплением MAC, которая является основной для алгоритмов ЦОС.
Однако следует учесть, что в данных алгоритмах применяются и
другие операции, помимо этой.

89. Особенности и характеристики ЦСП

Наиболее распространенные алгоритмы, выполняемые ЦСП:
дискретное преобразование Фурье:
1
A( k )
N
N 1
a n e
j
2
kn
N
n 0
дискретная свёртка:
N 1
y n x m g n m
m 0
фильтр с конечной импульсной характеристикой:
M
y n ak x n k
m 0
фильтр с бесконечной импульсной характеристикой:
M
N
k 0
k 1
y n ak x n k bk y n k

90. Особенности и характеристики ЦСП

Видно, что базовым элементом типовых операций ЦСП
является MAC – умножение с накоплением:
M
y data i coeff i
i 0
Стандартный алгоритм, выполняемый на обыкновенном
процессоре, например, на Pentium, следующий:
1. Установка Указателя1 на data[0];
2. Установка Указателя2 на coeff[0];
3. Чтение data[i] в АЛУ;
4. Чтение coeff[i] в АЛУ;
5. Умножение data[i] на coeff[i];
6. Сложение результата i-го умножения с накопленной суммой;
7. Инкремент Указателя1;
8. Инкремент Указателя2;
9. Инкремент i;
10. Если i<=M, переход к п.3 и цикл.

91. Особенности и характеристики ЦСП

Шаги с 3-го по 8-й (6 элементарных операций) являются
базовой операцией MAC и выполняются ЦСП за один машинный
цикл. Например, ЦСП TMS320F2812 фирмы Texas mnstruments
выполняет операцию MAC для M=3 за 10 машинных циклов, что
соответствует времени 66 нс при тактовой частоте 150 МГц.

92. Особенности и характеристики ЦСП

5. Объем внутренней памяти (ROM, RAM, Flash, cash).
Эти характеристики определяют многие параметры и возможности
разрабатываемой системы. Наличие памяти типа ПЗУ (ROM),
программируемого при изготовлении процессора, позволяет
заказывать ЦСП с записанной программой работы системы. Память
типа РПЗУ (flash) позволяет неоднократно перезаписывать
программу и данные в процессоре, в том числе и непосредственно
на изготовленной плате системы. Объем и разновидности
внутренней ОЗУ определяют возможности построения системы в
отношении хранения массивов данных без использования внешней
памяти.

93. Особенности и характеристики ЦСП

6. Объем адресного пространства памяти определяется
разрядностью шины адреса и характеризует возможный общий
объем памяти, используемой в системе.
7.
Порты
последовательного
ввода-вывода
информации. Их количество и разновидности определяют
возможности системы с
внешними устройствами.
8.
Внутренние
точки
зрения
периферийные
связи
с
различными
устройства.
В
процессорах существуют периферийные устройства, которые
условно можно разделить на устройства общего применения (типа
таймеров) и проблемно-ориентированные устройства (АЦП,
кодеки, компандеры, экспандеры, сопроцессоры и т.д.). Последние
облегчают построение специализированных цифровых систем,
например, обработки звука.
9. Каналы DMA (Direct Memory Access). Прямой доступ к
памяти позволяет общаться с внешними устройствами, в том числе
записывать отсчеты входного сигнала (выводить полученные
отсчеты выходного сигнала) без использования ресурсов и затрат
времени. Наличие нескольких каналов DMA облегчает построение
высокопроизводительных систем ЦОС.

94. Особенности и характеристики ЦСП

10.
Потребляемая
мощность.
Это
характеристика
процессора, особенно важная при построении переносимых систем
с батарейным питанием. Потребляемая мощность существенно
зависит от выполняемой программы и, как правило, не приводится.
Многие производители предлагают низковольтные (3,3 В, 2,5 В
или 1,8 В) версии процессоров, которые потребляют гораздо
меньшую мощность, чем 5-вольтовые эквиваленты при той же
производительности. Процессор может работать в различных
режимах, в том числе в режиме ожидания (Idle), при нахождении в
котором ряд внутренних модулей отключается и не потребляет
энергии.
11.
Относительный
показатель
«Потребляемая
мощность / быстродействие». Свойством любых электронных
устройств, в том числе и ЦСП, является повышение потребления
мощности при увеличении быстродействия. Поэтому используют
удельные относительные показатели потребления мощности,
отнесенные к единице быстродействия. Иногда в такие удельные
показатели включают и стоимость процессора.

95. Рынок цифровых сигнальных процессоров

АПРАВПР
DSP Market Share 2003
АПРАВПР
source : Forward Concepts, 2004
АПР
19%
10%
48,00%
10%
13%
Texas mnstruments
Agere Systems
Motorola
Analog Devices
Other

96. Рынок цифровых сигнальных процессоров (2013 г.)

Компании-лидеры
рынка
1
2
3
4
5
6
7
8
9
10
Company Name
Texas mnstruments
Freescale
Semiconductor
Analog Devices
Philips Semiconductors
Agere Systems
Toshiba
DSP Group
NE) и C E) и lectronics
Fujitsu
mntersil
Other Companies
Total
Доля рынка
DSP
54,3%
14,1%
8,0%
7,5%
7,3%
4,9%
2,2%
0,6%
0,4%
0,3%
0,5%
100,0%

97. Тесты сравнения DSP по скорости выполнения операций

Существуют компании, занимающиеся анализом и сравнением
процессоров по основным характеристикам, в том числе и по
скорости. Лидером среди таких компаний является BDTm - Berkeley
Design Technology, mnc. (www.bdti.com). В качестве примера на рис.
показано сравнение по скорости современных DSP разных
производителей.

98. Выводы и рекомендации по выбору типа DSP

Как показано ранее, правильный выбор DSP сильно зависит от
приложения: процессор может хорошо подходить для одних
приложений, но абсолютно не подходить для других. При выборе
процессора нужно определить самые важные в конкретном случае
характеристики и расставить их по степени важности. Затем в
соответствии с этими критериями отобрать возможных кандидатов и,
наконец, выбрать из подходящих лучший, обращая внимание на
дополнительные,
не
критичные
характеристики.
При
этом
целесообразно воспользоваться оценкой характеристик процессоров,
производимой какой-либо авторитетной компанией (например, BTDm).
Следует помнить, что BTDm производит оценку DSP не только по
быстродействию, но и по другим критериям: эффективности памяти,
энергопотреблению и т.д.

99. Выводы и рекомендации по выбору типа DSP

Например, для реализации приложения для нас в первую очередь
важны
скорость,
цена,
эффективность
работы
памяти
и
энергопотребление. Мы определили основных претендентов, среди
которых DSP с ядром C64x и C64x+ от Texas mnstruments и TigerSHARC
от Analog Devices. На рис. показан граф сравнительных характеристик
этих
процессоров
по
критериям
скорости,
стоимости,
энергопотребления и удобству средств разработки.

100. Выводы и рекомендации по выбору типа DSP

Приоритеты. Если нам в первую очередь необходима высокая
скорость и низкая цена, следует выбрать DSP от Texas mnstruments.
Если мы конструируем мобильное устройство и нам нужно низкое
энергопотребление, причем мы готовы пожертвовать скоростью,
целесообразно выбрать DSP от Analog Devices. Не исключена
вероятность того, что выбранные процессоры окажутся очень близки
по ключевым параметрам. В этом случае выбор будет определяться
некритичными характеристиками: доступностью средств отладки,
предыдущим опытом разработчика, доступностью компонентов и т.д.
Тщательный выбор цифрового сигнального процессора еще на
начальном этапе разработки может помочь избавиться от излишних
затрат, связанных с выбором неподходящего DSP, и сократить как
время разработки в целом, так и время и средства на выявление
ошибок.

101. Цифровые сигнальные процессоры Texas Instruments

Семейства цифровых сигнальных процессоров и
микроконтроллеров и, оптимизированных под задачи ЦОС,
выпускаемые Texas mnstruments
MSP430
Lowest Power
MCU
C2000™ DSP C5000™ DSP C6000™ DSP
DaVinci™
DSP
Digital Control
Personal DSP
DSP
Video
DSP
mnfrastructure
DSP
Портативные
Системы
Портативная
Системы
Системы
измерительные
управления
бытовая
защиты
видеообработк
устройства с электропривода
техника,
информации,
и,
малым
ми и электро- аудиосистемы
обработки
видеонаблюден
потреблением оборудованием,
изображений и
ия
измерения и
видео,
видеотелефони
автоматики
телекоммуника
и, IPции
контроллеры,

102. Цифровые сигнальные процессоры Texas Instruments

ЦСП, выпускаемые в настоящее время наиболее крупным
производителем – Texas mnstruments, подразделяются на 4 основных
семейства: C2000, C5000, С6000, DaVinchi (развитие семейства С6000).
Семейство ЦСП C2000 (процессоры с фиксированной и
плавающей точкой TMS320C2xxx) рассчитано на применения в
современных встроенных системах управления и контроля.
Основная
особенность
данной
платформы заключается
в
реализации управляющего микроконтроллера на основе ядра
сигнального процессора (часто ЦCП этого семейства называют
«DSC» – цифровой сигнальный контроллер, объединяющий
технологии DSP и MCU). Это позволяет значительно уменьшить
материальные и временные затраты при проектировании.
Процессоры семейства C2000 имеют большую встроенную флэшпамять, многоканальный АЦП, генераторы ШИМ, многоразрядные
таймеры, развитую систему коммуникационных портов для
подключения
дополнительной
периферии
и
объединения
разрабатываемых устройств в локальные промышленные сети
практически по любому из известных интерфейсов.

103.

С2000: Области применения
Цифровое управление двигателями
Возобновляемая энергия
Электроинст
ру-мент
Преобразователи энергии ветра
Электровелосипед
Бытовая
техника
Преобразователи энергии солнца
Источники питанияПреобразовател
и постоянного
тока
Промышленные
приводы &
устройства
управления
C200
0
Светодиодное
уличное
освещение
Источники
бесперебойног
о питания
Выпрямители
еременного/постоянного
тока
Авто HID
Радары /
предотвращени
е столкновений
Гибридный электрический
транспорт
Электрический
усилитель руля
Автомобилестроение
Освещение
Коммуникация
по силовым
линиям
RFID
Считыватели
Лазерная
локация
Medical
Oxygen
Concentrator
s
Светодиодна
я ТВ
подсветка
Оптически
е сети
Измерение и управление

104. Этапы развития семейства C2000

В рамках семейства TMS320C2xxx
поколения ЦСП: TMS320C24x и TMS320C28x.
существует
уже
два
Изменение характеристик
Программная совместимость
Лучшие характеристики
Высокая производительность
F2812
F2812
R2812
R2812
150
150 MmPS
MmPS 150
150 MmPS
MmPS C2812
F2811
F2811
150 MmPS
R2811
R2811
150
150 MmPS
MmPS
C2811
F2810
150
F2810
150 MmPS
MmPS
150
MmPS
150
150 MmPS
MmPS
C2810
150 MmPS
F2808
100 MmPS
F2801
F2806
100 MmPS 100 MmPS
F24x
F24x
LF240xA
LF240xA
C24x
C24x
LC240xA
LC240xA
Производимые
Разрабатываемые

105.

Семейство С28: Выпускаемые серии и
основные направления развития
Серийно
выпускаемые
Образцы
Перспективы
Фиксированная
точка
(100-176 выводов),
≈ 10-20$ F2823
x
60 – 150 MГц
F281x
32 – 512 Кб Flash
3Ph PWM/QE) и P
F280x
12-битный АЦП,
2 схемы выборки
/хранения, (до 12.5 MSPS)
• CAN, McBSP
• UART, SPm
серия DelfinoTM
(176-256 выводов),
(Плавающая точка)
≈ 8-18$
C2834
x
F2833
x
• Высокая
производительность
• Богатая периферия
• 200-300 MГц
• 196-516 Кб ОЗУ
• АЦП с внешней
синхронизацией
• Низкое энергопотребление
в активном режиме
• 100-150 MГц
• 128-512 Кб
Flash
• 52-68 Кб ОЗУ
серия PiccoloTM
(38-80 выводов),
Будущ
ие
≈ 2-6$
F2803
x
F2802
x
• 40-60 MГц
• 16-64 Кб Flash
• Аналоговые
компараторы
Будущ
ие
• Низкое
энергопотребление
• Малые габариты
• 60MГц
• CLA
• 32-128 Кб Flash
• CAN, LmN
Более 80 микросхем, совместимых по коду

106. Цифровые сигнальные процессоры Texas Instruments

Архитектура ЦСП с фиксированной точкой семейства C5000
оптимизирована
по
соотношению
«производительность/
энергопотребление». Основная сфера применений - мобильные
телекоммуникационные
системы,
мультимедиа,
системы
шифрования данных и т.д. Процессоры семейства C5000 обладают
развитой периферией, включающей интерфейсы m2C, USB, набор
универсальных последовательных портов с возможностью
селекции каналов и буферизации, что позволяет настраивать их для
работы с внешними потоками данных всех используемых
стандартов.

107. Цифровые сигнальные процессоры Texas Instruments

ЦСП с плавающей точкой семейства С6000 построены на базе
оригинальной архитектуры VelociTm, использующей преимущества
процессорной технологии VLmW (Very Long mnstruction Word или
инструкция с длинным командным словом). Семейство С6000
обладает
специальными
возможностями
для
обработки
информационных пакетов, создания аппаратуры широкополосного
доступа.
Ключевой
особенностью
семейства
C6000
является
быстродействие. Типичные применения – профессиональная
обработка аудио- и видеосигналов, цифровое радио (Software
defined radio, SDR).
Имеются следующие подсемейства:
- C64xx (с фиксированной точкой);
- C67xx (с плавающей точкой);
- C64x+ (семейство «DaVinci», оптимизированное для
видеообработки).

108. Основные характеристики ЦСП семейства С28x

Базовым ЦСП семейства C28x, обеспечивающим аналогоцифровое преобразование, реализацию алгоритмов цифровой
фильтрации, широтно-импульсного модулятора, функций времени,
поддержку стандартных интерфейсов, является TMS320F2812.
ЦСП TMS320F28x обеспечивают производительность до
150 МГц на ядре центрального процессора. Для других серий ЦСП
семейства С28x (F280x, F281x, F2823x, F2833x, C2834x, F2802x,
F2803x), тактовая частота может находиться в пределах от 40 до 300
МГц.
Особенностью семейства C28x является возможность не
только разработки, но и отладки программного обеспечения на
языке высокого уровня C/C++, а также высокая эффективность
создаваемого компилятором кода.
TMS320F2812

109. Блок-схема ЦСП TMS320F2812

Шина программ (Program Bus)
Секторизованная
ПЗУ
ОЗУ
Flashпамять
Менеджер
событий А
Менеджер
событий B
АЦП (12 бит)
Интерфейсы
PmE) и
Блок
регистров
(32 бит)
JTAG
реального
времени
Умножитель
(32x32 бит)
АЛУ
атомарных
функций
менеджер
прерываний
CPUШина регистров (Register Bus)
таймеры
Ядро (CPU)
Шина данных (Data Bus)
Порты вводавывода
(GPmO)

110. Модуль центрального процессора С28x

В целом укрупненная структура ЦСП TMS320F2812 может быть
представлена в виде 4-х блоков:
1.
2.
3.
4.
Система внутренних и внешних шин
Модуль центрального процессора
Модуль памяти
Модуль периферийных устройств
Для обеспечения возможности работы в одном машинном цикле с
двумя операндами, находящимися в памяти, ЦСП имеет гарвардскую
архитектуру, т.е. оснащен двумя независимыми шинами: шиной
программ (Program Bus) и шиной данных (Data Bus)

111. Основные характеристики ЦСП семейства С28x

ЦСП TMS320F2812 имеет высокопроизводительную статическую
КМОП-технологию. Максимальная тактовая частота ядра составляет
150 MГц (время цикла 6,67 нс). Напряжение питания: на ядре –
1,8 В @ 135 МГц; 1,9 В @ 150 МГц; на периферийных модулях – 3,3 В.
ЦСП поддерживает периферийное сканирование по стандарту JTAG
при высокой скорости передачи отладочной информации (до 20 Mбит/
с).
TMS320F2812 содержит в своем составе периферийный модуль
управления электроприводами – два модуля управления событиями
(E) и vent Manager - E) и VA, E) и VB), а также периферийные последовательные
порты:
- синхронный последовательный интерфейс SPm;
два
асинхронных
последовательных
порта
SCm,
использующих стандарт UART;
- контроллер сети CAN (Controller Area Network) с
расширенными возможностями;
- многоканальный буферизованный последовательный порт
(Multichannel Buffered Serial Port - McBSP).
Количество встроенных портов для различных ЦСП семейства
C28x, может быть различным. Некоторые ЦСП семейства C28x имеют в
своем составе, помимо перечисленных, также и интерфейсы m2C, LmN
(например, серии F2802x, F2803x).

112. Карта памяти ЦСП TMS320F2812

Память
данных
Память
программ
резерв
Память
данных
Память
программ
резерв
резерв
резерв
резерв
резерв
резерв
резерв
резерв
резерв

113. Основные характеристики ЦСП семейства С28x

В качестве памяти данных используется исключительно ОЗУ
однократного доступа общим объёмом 18 Кслов, состоящее из
5 банков – М0, M1 (2x1К), L0, L1 (2x4К) и Н0 (8К). Каждый банк
отображается и на память программ, и на память данных. По решению
программиста память используется либо в качестве памяти программ,
либо в качестве памяти данных.
Память программ включает в себя: стандартное ПЗУ (ROM)
объемом до 128K x 16, однократно записываемая память (OTP ROM)
1K x 16 и загрузочное ПЗУ (Boot ROM) 4K x 16.
В ЦСП F2812 объём встроенной флэш-памяти составляет 128 Кслов
(4 сектора по 8К и 6 секторов по 16К). Flash-память ЦСП семейства С28х
разбита на секторы, что позволяет пользователю программировать
лишь часть памяти, не осуществляя предварительного полного
стирания.
Специальный ключ защиты (Security Code) защищает флэш-память,
ROM, OTP ROM, блоки L0/L1 SARAM. Для всех ЦСП семейства С28x этот
пароль 128-битный, за исключением TMS320F283x (256 бит).
ЦСП семейства С28x содержат три сегмента (фрейма) регистров
встроенной периферии, предназначенных для управления режимами и
хранения данных внутренних периферийных устройств. Эти регистры
расположены прямо в адресном пространстве памяти, т.е. доступны
не только как регистры с именами, но и как ячейки памяти с
определенными адресами.

114. Основные характеристики ЦСП семейства С28x

2K,
Peripheral Frame 0 (PF0, объем
адреса 0x000800…0x000FFF) –
включает в себя регистры внешнего интерфейса
памяти X) позволяет отключать передачу во mNTF (E) и xternal mnterface Configuration
Registers), модуля расширения прерываний PmE) и
(Peripheral mnterrupt E) и xpansion Registers), модуля
Flash-памяти (Flash Control, Programming, E) и rase,
Verify Registers), модуля таймеров ядра (CPU-Timers
0, 1, 2 Registers), модуля ключа защиты CSM (Code
Security Module KE) и Y Registers);
4K,
Peripheral Frame 2 (PF2, объем
адреса 0x006000…0x006FFF) –
включает в себя регистры интерфейса eCAN (eCAN
Mailbox and Control Registers);
4K,
Peripheral Frame 1 (PF1, объем
адреса 0x007000…0x007FFF) –
включает в себя регистры модуля управления
системой (System Control Registers), модуля вводавывода GPmO (General Purpose mnput-Output Mux
Configuration
and
Control
Registers),
модуля
менеджера событий (E) и vent Manager (E) и VA/E) и VB)
Control Registers), модуля последовательного
интерфейса McBSP (McBSP Control and TX) позволяет отключать передачу во /RX) позволяет отключать передачу во
Registers), модуля последовательного интерфейса
SCm (Serial Communications mnterface (SCm) Control and
RX) позволяет отключать передачу во /TX) позволяет отключать передачу во
Registers),
модуля
последовательного
интерфейса SPm (Serial Peripheral mnterface (SPm)
Control and RX) позволяет отключать передачу во /TX) позволяет отключать передачу во Registers), модуля АЦП (12-Bit ADC
Registers).

115. Основные характеристики ЦСП семейства С28x

Загрузочное
ПЗУ
(Boot
ROM)
объёмом
4
Кслова
программируется на заводе-изготовителе и содержит несколько
программ загрузки флэш-памяти, а также таблицы стандартных
математических функций sin/cos(х), l/х, √х, arctg(х), используемые
для организации эффективных вычислений.
В различных сериях ЦСП семейства C28x (F280x, F281x, F2823x,
F2833x, C2834x, F2802x, F2803x) на кристалле имеется различный
объем ПЗУ, ОЗУ, Flash-памяти.
Отличительной особенностью архитектуры C28 является отказ
от аппаратного стека ограниченной ёмкости и переход к
программному стеку любой длины. По умолчанию, в качестве стека
предлагается использовать банк M1, и указатель стека сразу после
сброса процессора устанавливается в начало этого блока.
Блок
расширения
периферийных
прерываний
PmE) и
поддерживает 96 входов запросов прерываний, из которых
используются только 45. Задержка при переходе к процедуре
обслуживания прерывания составляет всего 9 циклов (60 нс).
Дополнительной
возможностью
является
аппаратный
или
программный контроль уровней приоритетов запросов прерываний,
а также программное разрешение/запрет любого из запросов.

116. Основные характеристики ЦСП семейства С28x

Интерфейс внешней памяти X) позволяет отключать передачу во mNTF (имеется только в ИМС
TMS320F2812) состоит из 19-разрядной адресной шины,
16-разрядной шины данных и трех линий выборки кристалла, с
помощью которых обеспечивается доступ к пяти зонам внешней
памяти 0, 1, 2, 6 и 7. Зоны 0 и 1 используют одну общую линию
выборки, как и зоны 6 и 7.
19-битная шина адреса внешнего интерфейса позволяет
адресовать 219=80000H=524288 ячеек памяти. Для сравнения,
22-битная
внутренняя
шина
адреса
программ
адресует
222=400000H=4194304 ячеек памяти.
Доступ к памяти внутри каждой из пяти зон X) позволяет отключать передачу во mNTF
индивидуально программируется – устанавливается нужное число
тактов ожидания и требуемые временные интервалы для сигналов
чтения/записи. Эти возможности упрощают подключение внешней
памяти и внешней периферии.
Внутренняя система шин включает в себя 2 составные шины:
1) шина чтения программ (22-разрядная адресная шина и
32-разрядная шина данных);
2) шина чтения и записи данных (32-разрядная адресная шина
и 32-разрядная шина данных).

117. Основные характеристики ЦСП семейства С28x

Функционально
внутренняя
шинная
организация
ЦСП
семейства С28x включает в себя
три адресные шины:
PAB (Program address bus, 22 бита – адресует программную
память для чтения и записи);
DRAB (Data-read address bus, 32 бита – адресует память данных
для чтения);
DWAB (Data-write address bus, 32 бита – адресует память
данных для записи);
три шины данных:
PRDB (Program-read data bus, 32 бита – передает инструкции
или данные во время чтения из программной памяти);
DRDB (Data-read data bus, 32 бита – передает данные во время
чтения из памяти данных);
DWDB (Data-/Program-write data bus, 32 бита – передает данные
во время записи в программную память или в память данных).

118. Основные характеристики ЦСП семейства С28x

Тип операции
Шина адреса
Шина данных
Чтение программной памяти
Чтение памяти данных
Запись в программную память
Запись в память данных
Исключена одновременная запись и чтение в программную
память (используется одна физическая шина адреса PAB);
одновременная запись в программную память и в память данных
(используется одна физическая шина данных DWDB). Параллельное
выполнение остальных сочетаний операций возможно. Например,
модуль CPU может одновременно инициировать чтение из
программной памяти (PAB, PRDB), чтение из памяти данных (DRAB,
DRDB) и запись в память данных (DWAB, DWDB).

119. Основные характеристики ЦСП семейства С28x

Указанная система внутренних шин названа разработчиками
Texas mnstruments «модифицированная гарвардская архитектура».
Главное ее достоинство – параллельное выполнение сразу
нескольких действий. В течение одного цикла возможна выборка
команды, считывание и запись данных. Кроме того, в течение
одного цикла в АЛУ можно вводить два 32-битных операнда (по
одному из памяти данных и из памяти программ) для последующего
умножения.
Для сравнения, при вводе через внешний интерфейс
минимально необходимо 4 цикла, т.к. внешняя ША имеет 19 бит, а
внешняя ШД – 16 бит.

120. Корпуса ЦСП семейства С28x

1-й вариант корпуса
для TMS320F2812/
TMS320С2812:
176-выводной LQFP
(Low-Profile Quad
FlatPack).
Нумерация выводов –
по
принципу
обхода
периметра
против
часовой стрелки.
Возможно исполнение
в корпусе PZ LQFP такого
же
вида,
только
с
выводами,
охватывающими
торец
корпуса
(сокет-версия
корпуса).

121. Корпуса ЦСП семейства С28x

2-й вариант корпуса
для TMS320F2812/
TMS320С2812 :
179-выводной MicroStar
BGA (Ball Grid Array) – вид
снизу.
Нумерация выводов –
по координатному
принципу «строкастолбец»:
•по вертикали снизу
вверх латинскими
буквами от «A» до «P»;
•по горизонтали слева
направо цифрами от «1»
до «14».
Примеры:
«L12» - вывод PWM3;
«D4» - вывод ADCmNA4.

122. Корпуса ЦСП семейства С28x

ИМС
TMS320F2810,
TMS320F2811,
TMS320С2810,
TMS320С2811
выпускаются в 128выводном
PBK
LQFP- корпусе.

123. Корпуса ЦСП семейства С28x

ИМС
TMS320F2801, TMS320С2801,
TMS320F2802, TMS320С2802,
TMS320F2806, TMS320F2808
выпускаются в 100-выводном
корпусе PZ LQFP
или в 100-выводном
корпусе GGM BGA.

124. Корпуса ЦСП семейства С28x (серия Delfino)

Корпуса
для
серий
Delfino C2833x и C2834x:
176-выводной
LQFP,
179-выводной
MicroStar
BGA, 176-выводной BGA
(аналогичен
вышерассмотренному 179выводному MicroStar BGA).
Кроме того, Delfino C2834x
выпускается
в
256выводном корпусе BGA.
.
.
.
Этот корпус аналогичен
вышерассмотренному 179выводному MicroStar BGA,
только координатное поле
имеет формат 16 x 16.
.
.
.

125. Корпуса ЦСП семейства С28x (серия Piccolo)

Серия Piccolo C2802x:
38- выводной корпус
TSSOP, шаг выводов
0.65mm
Серия Piccolo C2803x:
48- выводной корпус LQFP
или 64-выводной TQFP,
шаг выводов 0.5mm

126. Обозначение ЦСП семейства С28x

и т.п.
и т.п.

127. Назначение выводов TMS320F2812

Выводы внешнего интерфейса (N/2)XINTF)
Обозначение
Состояния (N/2)I/O/Z)
PU/PD
X) позволяет отключать передачу во A[0]
O/Z
-
X) позволяет отключать передачу во A[1]
O/Z
-



X) позволяет отключать передачу во A[17]
O/Z
-
X) позволяет отключать передачу во A[18]
O/Z
-
X) позволяет отключать передачу во D[0]
m/O/Z
PU
X) позволяет отключать передачу во D[1]
m/O/Z
PU



X) позволяет отключать передачу во D[14]
m/O/Z
PU
X) позволяет отключать передачу во D[15]
m/O/Z
PU
Описание
19-битная шина адреса внешнего
интерфейса (X) позволяет отключать передачу во mNTF)
16-битная шина данных внешнего
интерфейса (X) позволяет отключать передачу во mNTF)

128. Назначение выводов TMS320F2812

Выводы внешнего интерфейса (N/2)XINTF)
Обозначение
X) позволяет отключать передачу во MP/MC
X) позволяет отключать передачу во HOLD
Состояния (N/2)I/O/Z)
m
m
PU/PD
Описание
PD
Выбор
режима
микропроцессор/
микроконтроллер. При H-уровне на этом
входе разрешен доступ к Зоне 7 внешнего
интерфейса X) позволяет отключать передачу во mNTF. При L-уровне –
разрешен
доступ
к
внутреннему
загрузочному ПЗУ (Boot ROM)
PU
Запрос DMA. При L-уровне на этом входе
все линии шин адреса, данных и
управления
X) позволяет отключать передачу во mNTF
переводятся
в
z-состояние
X) позволяет отключать передачу во HOLDA
O/Z
-
Подтверждение
DMA.
Этот
выход
переводится в L-уровень после перехода в
L-уровень сигнала X) позволяет отключать передачу во HOLD. Шины X) позволяет отключать передачу во mNTF
управляются от ведущего ВУ, пока
X) позволяет отключать передачу во HOLDA=0
X) позволяет отключать передачу во ZCS0AND1
O/Z
-
Строб выбора
X) позволяет отключать передачу во mNTF
Зоны 0 и Зоны 1 памяти

129. Назначение выводов TMS320F2812

Обозначение
Состояния (N/2)I/O/Z)
PU/PD
Описание
X) позволяет отключать передачу во ZCS2
O/Z
-
Строб выбора Зоны 2 памяти X) позволяет отключать передачу во mNTF
X) позволяет отключать передачу во ZCS6AND7
O/Z
-
Строб выбора
X) позволяет отключать передачу во mNTF
X) позволяет отключать передачу во WE) и
O/Z
-
Строб разрешения записи в ячейки X) позволяет отключать передачу во mNTF
X) позволяет отключать передачу во RD
O/Z
-
Строб разрешения чтения ячеек X) позволяет отключать передачу во mNTF
X) позволяет отключать передачу во R/W
O/Z
-
Строб
чтение/запись.
Номинально
удерживается в H-уровне. Перед началом
процедуры записи сбрасывается в 0, затем
снова устанавливается в 1.
X) позволяет отключать передачу во RE) и ADY
m
PU
Сигнал
готовности
ячеек
X) позволяет отключать передачу во mNTF
к
чтению/записи. Организует синхронный и
асинхронный режимы чтения/записи.
Зоны 6 и Зоны 7 памяти

130. Назначение выводов TMS320F2812

Выводы синхронизации и сброса
Обозначение
Состояния (N/2)I/O/Z)
PU/PD
Описание
X) позволяет отключать передачу во 1/X) позволяет отключать передачу во CLKmN
m
-
Вход
внутреннего
генератора.
Используется для подключения внешнего
тактового генератора (резонатора). При
этом размах напряжения на этом выводе
должен быть ограничен внешним диодом
на уровне 1.8-1.9В
X) позволяет отключать передачу во 2
O
-
Выход внутреннего генератора
-
Тактовый выход для внешних устройств.
Частота на выводе X) позволяет отключать передачу во CLKOUT может быть
программно установлена равной 1/2 и 1/4
частоты,
формируемой
ядром
(SYSCLKOUT), или снята. После сброса
X) позволяет отключать передачу во CLKOUT=SYSCLKOUT/4
PU
Сигнал сброса ЦСП (вход) и сигнал сброса,
формируемый
Watchdog-таймером
(выход). После поступления сигнала X) позволяет отключать передачу во RS
программный счетчик устанавливается на
адрес 0x3FFFC0. Когда X) позволяет отключать передачу во RS достигает
H-уровня,
начинается
выполнение
программы. Сигнал X) позволяет отключать передачу во RS сбрасывается в
L-уровень, когда переполняется Watchdogтаймер, и удерживается в этом состоянии
512 циклов тактового генератора (частоты
X) позволяет отключать передачу во CLKmN)
X) позволяет отключать передачу во CLKOUT
X) позволяет отключать передачу во RS
O
m/O

131. Назначение выводов TMS320F2812

Обозначение
Состояния (N/2)I/O/Z)
PU/PD
Описание
TE) и STSE) и L
m
PD
Зарезервирован. Рекомендуется заземлить
TE) и ST1
m/O
-
Зарезервирован. Рекомендуется оставить
неподключенным
TE) и ST2
m/O
-
Зарезервирован. Рекомендуется оставить
неподключенным

132. Назначение выводов TMS320F2812

Выводы встроенного АЦП
Обозначение
Состояния (N/2)I/O/Z)
PU/PD
ADCmNA7
m
-
ADCmNA6
m
-
ADCmNA5
m
-
ADCmNA4
m
-
ADCmNA3
m
-
ADCmNA2
m
-
ADCmNA1
m
-
ADCmNA0
m
-
ADCmNB7
m
-
ADCmNB6
m
-
ADCmNB5
m
-
ADCmNB4
m
-
ADCmNB3
m
-
ADCmNB2
m
-
Описание
8 аналоговых каналов – входов устройства
выборки-хранения A. Данные входы
должны использоваться только после
подачи напряжения +3.3 В на входы
питания АЦП: VDDA1, VDDA2, VDDAmO
8 аналоговых каналов – входов устройства
выборки-хранения B. Данные входы
должны использоваться только после
подачи напряжения +3.3 В на входы
питания АЦП: VDDA1, VDDA2, VDDAmO

133. Назначение выводов TMS320F2812

Обозначение
ADCRE) и FP
Состояния (N/2)I/O/Z)
m/O
PU/PD
Описание
-
Выход опорного напряжения АЦП (2В).
Между этим выводом и аналоговой землей
необходимо подключить конденсатор
10 мкФ
ADCRE) и FM
m/O
-
Выход опорного напряжения АЦП (1В).
Между этим выводом и аналоговой землей
необходимо подключить конденсатор
10 мкФ
ADCRE) и SE) и X) позволяет отключать передачу во T
O
-
Внешний резистор
(24,9 КОм±5%)
ADCBGRE) и FmN
m
-
Резервный
вывод.
неподключенным
AVSSRE) и FBG
m
-
Аналоговая земля АЦП
ADCLO
m
-
Общий с аналоговым входом АЦП (внутри
соединен с AVSSRE) и FBG)
VSSA1
m
-
Аналоговая земля АЦП
VSSA2
m
-
Аналоговая земля АЦП
VDDA1
m
-
Питание АЦП (3,3 В)
Питание АЦП (3,3 В)
смещения
АЦП
Оставляют

134. Назначение выводов TMS320F2812

Обозначение
Состояния (N/2)I/O/Z)
PU/PD
Описание
VSS1
m
-
Цифровая земля АЦП
VDD1
m
-
Питание АЦП (1,8 В либо 1,9 В)
VDDAmO
m
-
Питание цепей аналогового m/O (3,3 В)
VSSAmO
m
-
Земля цепей аналогового m/O

135. Назначение выводов TMS320F2812

Линии портов ввода-вывода
Обозначение
Периферийный
сигнал
Состояния
(N/2)I/O/Z)
PU/PD
Описание
GPmOA0
PWM1 (O)
m/O/Z
PU
GPmO/выход PWM1
GPmOA1
PWM2 (O)
m/O/Z
PU
GPmO/выход PWM2
GPmOA2
PWM3 (O)
m/O/Z
PU
GPmO/выход PWM3
GPmOA3
PWM4 (O)
m/O/Z
PU
GPmO/выход PWM4
GPmOA4
PWM5 (O)
m/O/Z
PU
GPmO/выход PWM5
GPmOA5
PWM6 (O)
m/O/Z
PU
GPmO/выход PWM6
GPmOA6
T1PWM_T1CMP (m)
m/O/Z
PU
GPmO/вых. таймера сравнения1
GPmOA7
T2PWM_T2CMP (m)
m/O/Z
PU
GPmO/вых. таймера сравнения2
GPmOA8
CAP1_QE) и P1 (m)
m/O/Z
PU
GPmO/вход модуля захвата 1
GPmOA9
CAP2_QE) и P2 (m)
m/O/Z
PU
GPmO/вход модуля захвата 2
GPmOA10
CAP3_QE) и Pm1 (m)
m/O/Z
PU
GPmO/вход модуля захвата 3
GPmOA11
TDmRA (m)
m/O/Z
PU
GPmO/направление счета
таймеров E) и vA: H-up; L-down
GPmOA12
TCLKmNA (m)
m/O/Z
PU
GPmO/внешнее тактирование
таймеров E) и vA

136. Назначение выводов TMS320F2812

Обозначение
Периферийный
сигнал
Состояния
(N/2)I/O/Z)
PU/PD
Описание
GPmOB0
PWM7 (O)
m/O/Z
PU
GPmO/выход PWM7
GPmOB1
PWM8 (O)
m/O/Z
PU
GPmO/выход PWM8
GPmOB2
PWM9 (O)
m/O/Z
PU
GPmO/выход PWM9
GPmOB3
PWM10 (O)
m/O/Z
PU
GPmO/выход PWM10
GPmOB4
PWM11 (O)
m/O/Z
PU
GPmO/выход PWM11
GPmOB5
PWM12 (O)
m/O/Z
PU
GPmO/выход PWM12
GPmOB6
T3PWM_T3CMP (m)
m/O/Z
PU
GPmO/вых. таймера сравнения3
GPmOB7
T4PWM_T4CMP (m)
m/O/Z
PU
GPmO/вых. таймера сравнения4
GPmOB8
CAP4_QE) и P3 (m)
m/O/Z
PU
GPmO/вход модуля захвата 4
GPmOB9
CAP5_QE) и P4 (m)
m/O/Z
PU
GPmO/вход модуля захвата 5
GPmOB10
CAP6_QE) и Pm2 (m)
m/O/Z
PU
GPmO/вход модуля захвата 6
GPmOB11
TDmRB (m)
m/O/Z
PU
GPmO/направление счета
таймеров E) и vB: H-up; L-down
GPmOB12
TCLKmNB (m)
m/O/Z
PU
GPmO/внешнее тактирование
таймеров E) и vB
GPmOB13
C4TRmP (m)
m/O/Z
PU
GPmO/упр. Z-сост. PWM7, PWM8

137. Назначение выводов TMS320F2812

Обозначение
GPmOD0
GPmOD1
GPmOD5
GPmOD6
Периферийный сигнал
T1CTRmP_PDPmNTA (m)
T2CTRmP/E) и VASOC (m)
T3CTRmP_PDPmNTB (m)
T4CTRmP/E) и VBSOC (m)
Состояния
(N/2)I/O/Z)
m/O/Z
m/O/Z
m/O/Z
m/O/Z
PU/PD
Описание
PU
GPmO / управление Zсостоянием PWM1,
PWM2, T1PWM
(сигналом или по
прерыванию)
PU
GPmO / управление Zсостоянием T2PWM или
сигнал «Старт
преобразования
внешнего АЦП от E) и vA»
PU
GPmO / управление Zсостоянием PWM7,
PWM8, T3PWM
(сигналом или по
прерыванию)
PU
GPmO / управление Zсостоянием T4PWM или
сигнал «Старт
преобразования
внешнего АЦП от E) и vB»

138. Назначение выводов TMS320F2812

Обозначение
Периферийный сигнал
Состояния
(N/2)I/O/Z)
PU/PD
Описание
GPmOE) и 0
X) позволяет отключать передачу во mNT1_X) позволяет отключать передачу во BmO (m)
m/O/Z
-
GPmO / вход прерывания
X) позволяет отключать передачу во mNT1/ вход X) позволяет отключать передачу во BmO
GPmOE) и 1
X) позволяет отключать передачу во mNT2_ADCSOC (m)
m/O/Z
-
GPmO / вход прерывания
X) позволяет отключать передачу во mNT2 или сигнал «Старт
преобразования АЦП»
GPmOE) и 2
X) позволяет отключать передачу во NMm_X) позволяет отключать передачу во mNT13 (m)
m/O/Z
PU
GPmO / вход прерывания
X) позволяет отключать передачу во NMm / X) позволяет отключать передачу во mNT13

139. Назначение выводов TMS320F2812

Обозначение
Периферийный
сигнал
Состояния
(N/2)I/O/Z)
PU/PD
Описание
GPmOF0
SPmSmMOA (O)
m/O/Z
-
GPmO / SPm: slave-вход; masterвыход
GPmOF1
SPmSOMmA (m)
m/O/Z
-
GPmO / SPm: slave-выход; masterвход
GPmOF2
SPmCLKA (m/O)
m/O/Z
-
GPmO / SPm: тактовый
GPmOF3
SPmSTE) и A (m/O)
m/O/Z
-
GPmO / SPm: slave-разрешение
передачи
GPmOF4
SCmTX) позволяет отключать передачу во DA (O)
m/O/Z
PU
GPmO / SCm-A: передаваемые
данные (TxD)
GPmOF5
SCmRX) позволяет отключать передачу во DA (m)
m/O/Z
PU
GPmO / SCm-A:
данные (RxD)
GPmOF6
CANTX) позволяет отключать передачу во A (O)
m/O/Z
PU
GPmO / eCAN: передаваемые
данные
GPmOF7
CANRX) позволяет отключать передачу во A (m)
m/O/Z
PU
GPmO /
данные
eCAN:
принимаемые
принимаемые

140. Назначение выводов TMS320F2812

Обозначение
Периферийный
сигнал
Состояния
(N/2)I/O/Z)
PU/PD
GPmOF8
MCLKX) позволяет отключать передачу во A (m/O)
m/O/Z
PU
GPmO/ McBSP:
передачи
синхронизация
GPmOF9
MCLKRA (m/O)
m/O/Z
PU
GPmO/ McBSP:
приема
синхронизация
GPmOF10
MFSX) позволяет отключать передачу во A (m/O)
m/O/Z
PU
GPmO/ McBSP: синхронизация
передачи фрейма
GPmOF11
MFSRA (m/O)
m/O/Z
PU
GPmO/ McBSP:
приема фрейма
синхронизация
GPmOF12
MDX) позволяет отключать передачу во A (O)
m/O/Z
-
GPmO/ McBSP:
данные
передаваемые
GPmOF13
MDRA (m)
m/O/Z
PU
GPmO/ McBSP:
данные
принимаемые
GPmOF14
X) позволяет отключать передачу во F_X) позволяет отключать передачу во PLLDmS (O)
m/O/Z
PU
Описание
Этот вывод имеет 3 функции:
1. X) позволяет отключать передачу во F – выход общего
назначения.
2. X) позволяет отключать передачу во PLLDmS. Если этот вход в
момент системного сброса
(сигнал X) позволяет отключать передачу во RS) установлен в «0»,
входная тактовая частота
X) позволяет отключать передачу во CLKmN напрямую
синхронизирует CPU и
периферию (SYSCLKOUT).
Иначе коэффициент
деления/умножения частоты
X) позволяет отключать передачу во CLKmN для формирования
частоты SYSCLKOUT задается в
регистре PLLCR.
3. Линия GPmO.

141. Назначение выводов TMS320F2812

Обозначение
Периферийный
сигнал
Состояния
(N/2)I/O/Z)
PU/PD
Описание
GPmOG4
SCmTX) позволяет отключать передачу во DB (O)
m/O/Z
-
GPmO / SCm-B: передаваемые
данные (TxD)
GPmOG5
SCmRX) позволяет отключать передачу во DB (m)
m/O/Z
-
GPmO / SCm-B: принимаемые
данные (RxD)

142. Назначение выводов TMS320F2812

Выводы встроенного JTAG-интерфейса
Обозначение
Состояния (N/2)I/O/Z)
PU/PD
TRST
m
PD
TCK
m
PU
Описание
Тестовый сброс JTAG (внутри корпуса
соединен
с
землей
через
токоограничивающий резистор). При
H-уровне на данном входе обеспечивается
возможность обращаться к процессору при
помощи системы сканирования. Если на
данном входе – L-уровень, или вывод не
подключен, процессор работает в текущем
функциональном режиме и тестовые
сигналы
игнорируются.
В
условиях
повышенного уровня помех рекомендуется
вывод TRST подключать на землю через
дополнительный
внешний
резистор
номиналом 2,2 КОм. Для начала работы с
JTAG управляющее устройство должно
сформировать короткий L-импульс сброса
JTAG-синхросигнал
резистором на +Uп
с
внутренним

143. Назначение выводов TMS320F2812

Обозначение
Состояния (N/2)I/O/Z)
PU/PD
Описание
Выбор JTAG-режима. Внутри корпуса
подключен через резистор к +Uп. Данные
записываются во внутренний контроллер
по фронту сигнала TCK
TMS
m
PU
TDm
m
PU
JTAG-вход тестовых данных. Данные (или
инструкции) записываются по фронту
сигнала TCK
TDO
O/Z
-
JTAG-выход тестовых данных. Данные
(или инструкции) считываются по срезу
сигнала TCK
E) и MU0
E) и MU1
m/O/Z
m/O/Z
PU
Вывод 0 эмулятора. Во время L-уровня
сигнала TRST данный вывод используется
для задания режима эмуляции. При
TRST=1 – ЦСП выполняет программу с
разрешением эмуляции
PU
Вывод 1 эмулятора. Во время L-уровня
сигнала TRST данный вывод используется
для задания режима эмуляции. При
TRST=1 – ЦСП выполняет программу с
разрешением эмуляции

144. Назначение выводов TMS320F2812

Выводы питания
Обозначение
VDD
(выведен на
9-10
контактов)
VSS
(выведен на
12-16
контактов)
Состояния (N/2)I/O/Z)
PU/PD
Описание
Выводы питания ядра (Core) 1.8В или 1.9В
Общие выводы ядра (Core) и периферии (m/
O)
VDDmO
(выведен на
4-6
контактов)
VDD3VFL
(выведен на
1 контакт)
Выводы питания периферии (m/O) 3.3В
Выводы питания флэш-памяти ядра (Flash
Core) 3.3В

145. Сброс и синхронизация ЦСП TMS320F28x

Модуль
Watchdogтаймера
Ядро
C28x
PLLмодуль
Модуль
режимов
пониженного
потребления
Регистры
управления
системой
Регистры
периферии
Разрешение
тактирования
Модуль eCAN
Низкоскоростной
предделитель
Регистры
периферии
Низкоскоростные
периферийные устройства
(SCm-A,B, SPm, McBSP)
Линии m/O
Высокоскоростной
предделитель
Регистры
периферии
Регистры
АЦП
Высокоскоростные
периферийные устройства
(Менеджеры событий A,B)
АЦП (12 бит)
16 входов АЦП

146. Сброс и синхронизация ЦСП TMS320F28x

Как и большинство современных процессоров, TMS320F28x
тактируется от генератора более низкой внешней частоты для
уменьшения электромагнитных помех.
Встроенный тактовый
генератор позволяет подключить кварцевый резонатор к выводам
X) позволяет отключать передачу во 1/X) позволяет отключать передачу во CLKmN и X) позволяет отключать передачу во 2. Если используется внешний генератор, он
подключается к выводу X) позволяет отключать передачу во 1/X) позволяет отключать передачу во CLKmN, а вывод X) позволяет отключать передачу во 2 оставляют
неподключенным:
24 pF
30 МHz
24 pF
Внешний тактовый
сигнал амплитудой
0-VDD
Не подключен

147. Сброс и синхронизация ЦСП TMS320F28x

После сброса в режиме микроконтроллера запускается
служебная программа Bootloader, которая анализирует выводы порта
GPmOF (GPmOF2, GPmOF3, GPmOF4 и GPmOF12) и, исходя из комбинации
сигналов на них, выполняет один из переходов:
Выводы GPmO
F4 F12 F3 F2
1
x
x
x
0
0
1
0
0
0
0
1
0
1
x
x
0
0
1
1
0
0
0
0
Режим запуска
Передать управление FLASHпамяти по адресу 0x3F 7FF6
Передать
управление
H0
SARAM-памяти по адресу
0x3F 8000
Передать управление OTPпамяти по адресу 0x3D 7800
Загрузить
программу
из
внешнего
E) и E) и PROM
во
внутреннюю память через
SPm-порт
Загрузить
программу
во
внутреннюю память через
SСm-А порт
Загрузить
программу
во
внутреннюю память через
параллельный порт GPmOВ

148. Сброс и синхронизация ЦСП TMS320F28x

Временная диаграмма сигналов сброса и синхронизации:

149. Сброс и синхронизация ЦСП TMS320F28x

Внутренние сигналы синхронизации DSP TMS320F2812:
(PLL запрещен)
Встроенный
генератор
fOSCCLK
(OSC)
HmSPCP
LOSPCP
HSPCLK
LSPCLK
к периферийным
модулям

150. Сброс и синхронизация ЦСП TMS320F28x

Модуль фазовой синхронизации (PLL – Phase-Locked Loop)
задает внутреннюю частоту DSP. Возможные режимы:
1. PLL-disabled (PLL запрещен). Задается установкой вывода
X) позволяет отключать передачу во PLLDmS в «0» в момент системного сброса (сигнал X) позволяет отключать передачу во RS) . Частота fCLKmN
совпадает с входной тактовой частотой fOSCCLK.
2. PLL-bypass. fCLKmN = fOSCCLK/2 (режим после начальной
установки, если PLL не запрещен).
3. PLL-enabled (PLL разрешен). Задается записью в регистр
PLLCR ненулевого значения. Коэффициент умножения/деления
частоты fCLKmN задается в регистре PLLCR.
Частота CLKmN, на которой работает CPU (совпадает с частотой
SYSCLKOUT тактирования периферии на выходе CPU) устанавливается
в соответствии с четырехбитным кодом DmV0…DmV3.

151. Сброс и синхронизация ЦСП TMS320F28x

Назначение информационных битов в регистре PLLCR:
DIV3
DIV2
DIV1
DIV0
Тактовая частота (N/2)SYSCLKOUT)
0
0
0
0
X) позволяет отключать передачу во CLKmN/2
0
0
0
1
X) позволяет отключать передачу во CLKmN/2
0
0
1
0
X) позволяет отключать передачу во CLKmN
0
0
1
1
X) позволяет отключать передачу во CLKmN*1,5
0
1
0
0
X) позволяет отключать передачу во CLKmN*2
0
1
0
1
X) позволяет отключать передачу во CLKmN*2,5
0
1
1
0
X) позволяет отключать передачу во CLKmN*3
0
1
1
1
X) позволяет отключать передачу во CLKmN*3,5
1
0
0
0
X) позволяет отключать передачу во CLKmN*4
1
0
0
1
X) позволяет отключать передачу во CLKmN*4,5
1
0
1
0
X) позволяет отключать передачу во CLKmN*5
(PLL bypass)
Кроме состояния «PLL bypass», SYSCLKOUT = (X) позволяет отключать передачу во CLKmN*n)/2, где
n- код в регистре PLLCR.

152. Сброс и синхронизация ЦСП TMS320F28x

Эффект записи в регистр PLLCR:
Запись в PLLCR
Текущая частота
Переходный процесс
автоподстройки частоты
в PLL-модуле (131072 такта)
Новая частота,
установленная записью
в PLLCR
Время переключения на новую частоту составляет 131072
периодов входной тактовой частоты (в течение этого времени
устанавливается системная частота fSYSCLKOUT = fCLKmN/2), поэтому в
программах иногда после записи в регистр PLLCR, необходимо
вставлять программную временную задержку.

153. Сброс и синхронизация ЦСП TMS320F28x

Регистры HmSPCP (высокоскоростной предделитель) и LOSPCP
(низкоскоростной предделитель) предназначены для конфигурации
тактирования различных периферийных модулей. Эти регистры имеют
аналогичный формат:
HmSPCP:
LOSPCP:

154. Сброс и синхронизация ЦСП TMS320F28x

Назначение информационных битов в регистрах HmSPCP и
LOSPCP :
H/LSPCLK2
H/LSPCLK1
H/LSPCLK0
Тактовая частота периферии
0
0
0
SYSCLKOUT/1
0
0
1
SYSCLKOUT/2 (по умолч. HmSPCP)
0
1
0
SYSCLKOUT/4 (по умолч. LOSPCP)
0
1
1
SYSCLKOUT/6
1
0
0
SYSCLKOUT/8
1
0
1
SYSCLKOUT/10
1
1
0
SYSCLKOUT/12
1
1
1
SYSCLKOUT/14
Кроме состояния «все нули», fтакт.= SYSCLKOUT/(2*n), где n- код
в регистре HmSPSP (LOSPSP).

155. Сброс и синхронизация ЦСП TMS320F28x

Тактированием различных периферийных модулей управляет
регистр PCLKCR:

156. Сброс и синхронизация ЦСП TMS320F28x

Назначение информационных битов регистра PCLKCR :
Название
Назначение
E) и VAE) и NCLK
Разрешение HSPCLK в E) и VA
E) и VBE) и NCLK
Разрешение HSPCLK в E) и VВ
ADCE) и NCLK
Разрешение HSPCLK в ADC
SPmAE) и NCLK
Разрешение LSPCLK в SPm
SCmAE) и NCLK
Разрешение LSPCLK в SCm-A
SCmBE) и NCLK
Разрешение LSPCLK в SCm-B
MCBSPE) и NCLK
Разрешение LSPCLK в McBSP
E) и CANE) и NCLK
Разрешение тактирования eCAN

157. Сброс и синхронизация ЦСП TMS320F28x

Сторожевой таймер (Watchdog-timer, WDT) – это счетное
устройство, которое периодически вырабатывает сигнал сброса
процессора, предотвращая таким образом его возможное зависание.
Модуль
Watchdog-таймера
формирует
выходной
импульс
сброса/прерывания WDRST / WDmNT длительностью 512 периодов
входной тактовой частоты в случае переполнения 8-битного счетчика
WDCNTR.

158. Сброс и синхронизация ЦСП TMS320F28x

Функциональная схема модуля WDT:

159. Сброс и синхронизация ЦСП TMS320F28x

Для
предотвращения
сброса
процессора
необходимо
периодически программно сбрасывать счетчик WDCNTR при помощи
записи последовательности кодов «0x55 + 0xAA» в специальный
регистр WDKE) и Y. При этом запись «0x55» разрешает сброс счетчика
WDCNTR , а последующая запись «0xAA» сбрасывает этот счетчик. При
этом сброса/прерывания ЦСП от WDT не происходит. Целесообразнее
всего периодически выполнять последовательную запись значений
«0x55» и «0xAA» в регистр WDKE) и Y в подпрограммах обслуживания
прерывания (mSR) от системных таймеров. Запись любого иного
значения в регистр WDKE) и Y приведет к немедленному сбросу ЦСП.
WDT
всегда
активируется
при
включении
питания.
Единственный способ обойтись без программного обслуживания WDT
– это его отключение посредством установки 6-го бита (WDDmS)
регистра управления сторожевого таймера (WDCR) в единицу.

160. Сброс и синхронизация ЦСП TMS320F28x

Формат регистра управления сторожевого таймера WDCR :

161. Сброс и синхронизация ЦСП TMS320F28x

Назначение информационных битов регистра WDCR :
Название
Назначение
WDFLAG
Используется для отображения типа сброса процессора:
обычный сброс (WDFLAG = 0) или сброс по сторожевому
таймеру (WDFLAG = 1). Программный сброс этого бита –
записью «1». Запись «0» игнорируется.
WDDmS
Запрет WDT (записью «1»)
WDCHK(2−0)
Биты защиты. Они должны иметь комбинацию «101», иначе
произойдет немедленный сброс процессора
WDPS(2−0)
Выбор необходимого коэффициента деления частоты
WDCLK для работы сторожевого таймера:
000 – WDCLK=OSCCLK/512/1
001 – WDCLK=OSCCLK/512/1
010 – WDCLK=OSCCLK/512/2
011 – WDCLK=OSCCLK/512/4
100 – WDCLK=OSCCLK/512/8
101 – WDCLK=OSCCLK/512/16
110 – WDCLK=OSCCLK/512/32
111 – WDCLK=OSCCLK/512/64

162. Сброс и синхронизация ЦСП TMS320F28x

Регистр управления системой и статуса SCSR содержит бит
разрешения блокировки Watchdog-таймера и биты управления
прерыванием от Watchdog-таймера.
Формат регистра SCSR:

163. Сброс и синхронизация ЦСП TMS320F28x

Назначение информационных битов регистра SCSR:
Название
WDmNTS
Назначение
Бит-индикатор прерывания от WDT. Отражает текущее
состояние сигнала WDmNT.
WDE) и NmNT
Разрешение сброса/прерывания от WDT. Если WDE) и NmNT =
0 (состояние по умолчанию после сброса ЦСП) –
разрешен сигнал сброса WDRST. Если WDE) и NmNT = 1 –
разрешен сигнал прерывания WDmNT.
WDOVE) и RRmDE) и
Если бит WDOVE) и RRmDE) и установлен в 1, можно запрещать
или разрешать работу WDT (битом WDDmS в регистре
управления
WDCR).
Сброс
бита
WDOVE) и RRmDE) и
осуществляется записью в него «1».

164. Режимы пониженного потребления ЦСП TMS320F28x

ЦСП TMS320F2812 может быть переведен в один из трех
режимов пониженного потребления:
Режим
mDLE) и
STANDBY
Описание
Переводит
процессор
в
режим
пониженного потребления. Тактирование
периферии может быть избирательно
заблокировано.
Выход

любым
разрешенным прерыванием тактируемой
периферии, сигналами X) позволяет отключать передачу во RS, WAKE) и mNT,
внешним прерыванием X) позволяет отключать передачу во NMm_X) позволяет отключать передачу во mNT13
Отключает процессор и периферию.
Сохраняет работу тактового генератора и
PLL-модуля. Выход – сигналами X) позволяет отключать передачу во RS,
WAKE) и mNT,
X) позволяет отключать передачу во mNT1,
прерываниями периферии
HALT
X) позволяет отключать передачу во NMm_X) позволяет отключать передачу во mNT13,
Отключает тактовый генератор (режим
наименьшего возможного потребления).
Выход – только сигналом X) позволяет отключать передачу во RS и внешним
прерыванием X) позволяет отключать передачу во NMm_X) позволяет отключать передачу во mNT13
OSCCLK
CLKIN
SYSCLKOUT
On
On
On
On
(WDT
работает)
Off
Off
Off
Off
Off

165. Режимы пониженного потребления ЦСП TMS320F28x

Режимы пониженного потребления
помощи регистров LPMCR0 и LPMCR1.
Формат регистра LPMCR0:
конфигурируются
при
Назначение информационных битов регистра LPMCR0 :
Название
Назначение
LPM(1−0)
Выбор режима пониженного потребления (происходит
после выполнения команды «mDLE) и »):
00 – режим mDLE) и
01 – режим STANDBY
1x – режим HALT
QUALSTDBY(5−0)
Эти биты указывают минимальную длительность (в
тактах входной частоты) сигнала, по которому
производится
выход
из
режима
STANDBY
пониженного потребления:
000000 = 2 TOSCCLKs
000001 = 3 TOSCCLKs

111111 = 65 TOSCCLKs

166. Режимы пониженного потребления ЦСП TMS320F28x

Формат регистра LPMCR1:
При установке в 1 соответствующего бита разрешается выход
ЦСП из STANDBY-режима пониженного потребления посредством
подачи соответствующего периферийного сигнала на один внешних
выводов процессора.

167. Модуль центрального процессора TMS320F28x

Шина чтения программ
Блок
регистров
(32 бит)
Умножитель
(32x32
бит)
АЛУ
атомарных
функций
PmE) и
PmE) и
mnterrupt
менеджер
прерыManager
ваний
CPU-
таймеры
JTAG
Шина регистров
реального
времени
Шина чтения/записи данных
Модуль
центрального
процессора содержит:
- 32-битный RmSC-процессор с
фиксированной точкой;
- 32-битное атомарное АЛУ,
выполняющее однотактные
инструкции «чтениемодификация-запись»;
- блок 32-битных регистров;
- отладчик реального времени
JTAG;
- систему шин, обеспечивающую
гарвардскую архитектуру;
- три 32-битных таймера
(CPU Timers);
- контроллер расширения
прерываний (PmE) и );
- аппаратный модуль MAC 32 x 32
бит или двойной модуль MAC
(DMAC) 16 x 16 с фиксированной
точкой;
- аппаратное сдвигающее
устройство

168. Модуль центрального процессора TMS320F28x

Аппаратный умножитель 32x32 бит и 32-битное АЛУ
обеспечивают совместное выполнение операций умножения и
суммирования. Результат умножения может быть представлен
64-битным числом, операнды могут быть знаковыми и
беззнаковыми. Большинство инструкций выполняется за один
машинный цикл.
Блок 32-битных регистров (32-bit Auxiliary Registers – X) позволяет отключать передачу во AR0…
X) позволяет отключать передачу во AR7) снабжен арифметическим блоком адресации регистров (ARAU
– Address register arithmetic unit), который может инкрементировать
и декрементировать регистры X) позволяет отключать передачу во AR0…X) позволяет отключать передачу во AR7 и SP и генерирует адреса
памяти данных для записи (на шину DWAB) и чтения (на шину
DRAB).
Модуль центрального процессора содержит также связанное с
умножителем и АЛУ аппаратное сдвигающее устройство (Barrel
Shifter) с возможностью сдвига содержимого на значение от 16 бит
влево до 16 бит вправо.

169. Модуль центрального процессора TMS320F28x

Регистры модуля центрального процессора
Модуль центрального процессора содержит регистры
данных, математических операций, управления системой,
которые не имеют адресов в общем адресном пространстве
памяти.
Обозначение
регистра
Название
регистра
Начальное значение
ACC, 32 бит
Аккумулятор
0х00000000
AH, 16 бит
Старшие 16 бит ACC
0x0000
AL, 16 бит
Младшие 16 бит ACC
0x0000
X) позволяет отключать передачу во AR0, 32 бит
Вспомогательный регистр 0
0х00000000
X) позволяет отключать передачу во AR1, 32 бит
Вспомогательный регистр 1
0х00000000

X) позволяет отключать передачу во AR7, 32 бит

Вспомогательный регистр 7

0х00000000

170. Модуль центрального процессора TMS320F28x

Обозначение
регистра
Название
регистра
Начальное значение
AR0, 16 бит
Младшие 16 бит регистра X) позволяет отключать передачу во AR0
0x0000
AR1, 16 бит
Младшие 16 бит регистра X) позволяет отключать передачу во AR1
0x0000



AR7, 16 бит
Младшие 16 бит регистра X) позволяет отключать передачу во AR7
0х0000
DP, 16 бит
Указатель страницы данных
0х0000
mFR, 16 бит
Регистр флагов прерываний
0х0000
mE) и R, 16 бит
Регистр разрешения прерываний
0х0000
DBGmE) и R,
16 бит
Регистр разрешения отладки
прерываний
0х0000
P, 32 бит
Регистр произведения
0х00000000
PH, 16 бит
Старшие 16 бит регистра P
0х0000
PL, 16 бит
Младшие 16 бит регистра P
0х0000

171. Модуль центрального процессора TMS320F28x

Обозначение
регистра
Название
регистра
Начальное значение
PC, 22 бит
Программный счетчик
0х3FFFC0
RPC, 22 бит
Счетчик программного возврата
0х000000
SP, 16 бит
Указатель стека
0х0400
ST0, 16 бит
Регистр состояния 0
0х0000
ST1, 16 бит
Регистр состояния 1
0х080B
X) позволяет отключать передачу во T, 32 бит
Регистр множимого
0х00000000
T, 16 бит
Старшие 16 бит X) позволяет отключать передачу во T
0х0000
TL, 16 бит
Младшие 16 бит X) позволяет отключать передачу во T
0х0000

172. Модуль центрального процессора TMS320F28x

Аккумулятор (ACC) – главный рабочий регистр CPU.
Это – адресат для всех операций АЛУ кроме тех, которые работают
прямо в памяти или регистрах. ACC поддерживает операции сдвига,
суммирования, вычитания и сравнения с 32-разрядными данными.
Он может также принимать 32-разрядный результат операции
умножения. Можно обращаться к половинам и четвертям ACC. ACC
может быть обработан как два независимых 16-разрядных регистра:
АH (старших 16 бит) и AL (младших 16 бит). К байтам в пределах АH и
AL можно также обращаться независимо. Специальные команды
загружают и сохраняют байты АH.MSB, АH.LSB, AL.MSB, AL.LSB Это
позволяет эффективно упаковывать и распаковывать байты.

173. Модуль центрального процессора TMS320F28x

Аккумулятор изменяет биты состояния регистра состояния
ST0:
− бит режима расширения знака (SX) позволяет отключать передачу во M);
− бит режима переполнения (OVM);
− флаг тест/управление (TC);
− флаг переноса (C);
− флаг нуля (Z);
− флаг знака (N);
− запираемый флаг переполнения (V);
− биты счетчика переполнений (OVC, 6 бит).

174. Модуль центрального процессора TMS320F28x

Регистр множимого (X) позволяет отключать передачу во T) используется чаще всего для того
чтобы сохранить 32-разрядное значение целого числа со знаком перед
32-битным умножением.
Младшая 16-разрядная часть регистра X) позволяет отключать передачу во T доступна как регистр
TL, а старшая 16-разрядная часть – как регистр T.
Регистр T может использоваться, чтобы определить значение
сдвига для некоторых операций сдвига влево и вправо. В этом
случае, в зависимости от команды, используется от 4 до 6 младших
бит регистра T, которые кодируют количество сдвигов – от 0 до 32,
если сдвиг производится в аккумуляторе, и от 0 до 64, если сдвиг
производится в паре регистров ACC и P.

175. Модуль центрального процессора TMS320F28x

Регистр произведения (P) типично используется для захвата
32-разрядного результата умножения. Он может также быть загружен
прямо 16- или 32-разрядными данными из ячейки памяти;
16-разрядной
константой,
32-разрядным
аккумулятором;
16-разрядным или 32-разрядным адресуемым регистром модуля CPU.
Регистр P может быть обработан как 32-разрядный регистр или как два
независимых 16-разрядных регистра: PH (старших 16 битов) и
PL (младших 16 битов).

176. Модуль центрального процессора TMS320F28x

Когда определенные команды обращаются к P, PH, или PL, все
32 бита копируются в сдвигающее устройство АЛУ, которое может
выполнять левый сдвиг, правый сдвиг или оставлять данные в
исходном виде. Действие сдвигающего устройства для этих команд
определено тремя битами режима сдвига (PM) регистра состояния ST0
и битом AMODE) и регистра состояния ST1:
Режим сдвига
Значение битового поля PM
000
Левый на 1
001
Нет
010
Правый на 1
011
Правый на 2
100
Правый на 3
101
Правый на 4 (если AMODE) и = 1, левый на 4)
110
Правый на 5
111
Правый на 6
Когда сдвигающее устройство исполняет левый сдвиг,
младшие биты последовательно заполняются нулями. Команды,
которые используют PH или PL как операнды, игнорируют режим
сдвига.

177. Математический блок модуля центрального процессора TMS320F28x

Шина программ
(Program Bus)
Шина данных
(Data Bus)
X) позволяет отключать передачу во T (32) или T/TL
32 X) позволяет отключать передачу во 32 или
Сдвиг R/L (0-16)
два умножителя
16 X) позволяет отключать передачу во 16
P (32) или PH/PL
Сдвиг R/L (0-16)
MUX) позволяет отключать передачу во
АЛУ (32)
ACC (32)
Сдвиг R/L (0-16)
Шина данных
(Data Bus)
MUX) позволяет отключать передачу во
Умножитель

178. Математический блок модуля центрального процессора TMS320F28x

При умножении регистр X) позволяет отключать передачу во T используется для захвата первого
операнда и умножает его на второй, который загружается из памяти.
Если регистр X) позволяет отключать передачу во T загружается из области памяти данных, а второй
операнд извлекается из программной памяти, выполняется
операция умножения за один машинный цикл. Результат умножения
помещается в регистр произведения P или прямо в аккумулятор
(ACC). При выполнении операции
умножения 32x32 бит
64-разрядный результат помещается в регистры P и ACC.
Устройства аппаратного сдвига данных (Сдвиг R/L) могут быть
использованы параллельно с другими аппаратными модулями CPU.
Обычно они используются для масштабирования промежуточных
результатов вычислений при реализации алгоритмов управления в
реальном времени или для деления/умножения на 2n.
Арифметико-логическое устройство (АЛУ) выполняет операции
статической (безсдвиговой) математики. При этом первый операнд
всегда содержится в аккумуляторе (ACC, AH или AL). Второй
операнд может быть загружен из памяти данных, памяти программ,
из регистра P или непосредственно из умножителя.

179. Модуль центрального процессора TMS320F28x

Вспомогательные регистры (X) позволяет отключать передачу во AR0-X) позволяет отключать передачу во AR7). CPU содержит
восемь 32-разрядных регистров, которые могут использоваться как
указатели ячеек памяти или как регистры общего назначения.
Многие команды позволяют обратиться к 16 младшим битам
X) позволяет отключать передачу во AR0-X) позволяет отключать передачу во AR7. Эти 16 младших битов доступны как регистры AR0-AR7.
AR0-AR7 могут использоваться как универсальные регистры для
управления циклами и для 16-разрядных сравнений.
n – номер от 0 до 7

180. Модуль центрального процессора TMS320F28x

При доступе AR0–AR7, старшие 16 битов регистра
(обозначаемые как регистры AR0H–AR7H), могут изменяться или
сохранять свои значения, в зависимости от используемой команды.
Регистры AR0H–AR7H доступны только как часть регистров
X) позволяет отключать передачу во AR0–X) позволяет отключать передачу во AR7 (индивидуально недоступны).
Для операций с ACC используются все 32 бита (@X) позволяет отключать передачу во ARn). Для
16-разрядных операций, используются только младшие 16 битов, а
старшие 16 битов игнорируются (@ARn).
X) позволяет отключать передачу во AR0–X) позволяет отключать передачу во AR7 могут также использоваться командами с
косвенной адресацией, чтобы обратится к произвольному значению в
памяти программ.

181. Модуль центрального процессора TMS320F28x

Указатель вершины стека (SP) разрешает использование
программного стека в памяти данных. Указатель вершины стека имеет
разрядность 16 бит и может адресовать только младшие 64Кб
пространства данных. При сбросе SP указывает на адрес 0000 040016.

182. Модуль центрального процессора TMS320F28x

Стек увеличивается по направлению от младших адресов к
старшим. Указатель стека всегда адресует следующие свободные
ячейки. Когда 32-битное значение сохраняется в стеке, первыми по
адресу ADR сохраняются младшие 16 бит, затем по адресу ADR+1
сохраняются старшие 16 бит. Если при выполнении вызовов
подпрограмм, обработке прерываний, обработке команд PUSH и POP
значение SP превышает FFFF16, следующим его значением будет 000016.
Аналогично при уменьшении SP до значений меньше 000016,
следующим значением будет FFFF16.

183. Модуль центрального процессора TMS320F28x

Указатель страницы данных (DP). В режимах прямой
адресации, память разбита на блоки (страницы данных) объемом по 64
слова. Младшие 4М слов памяти данных разбиты на 65536 блоков. В
режиме прямой адресации 16-разрядный DP содержит текущий номер
страницы данных. Для изменения страницы данных необходимо
загрузить в DP новое значение.
Страница данных
Смещение
Область памяти данных
Страница 0:
0000 0000 – 0000 003F
Страница 1:
0000 0040 – 0000 007F
Страница 2:
0000 0080 – 0000 00BF
Страница 65535:
003F FFC0 – 003F FFFF

184. Блок адресации памяти данных модуля центрального процессора TMS320F28x

Для доступа к произвольным областям памяти данных в ЦСП
TMS320F2812 используются 2 основных режима:
- режим прямой адресации;
- режим косвенной адресации.

185. Блок адресации памяти данных модуля центрального процессора TMS320F28x

Шина данных
(Data Bus)
6 младших бит
из регистра
инструкций
Память данных
Шина программ
(Program Bus)

186. Блок адресации памяти данных модуля центрального процессора TMS320F28x

В режиме прямой адресации 22-битный адрес доступа к
памяти генерируется путем соединения содержимого регистра DP
(старшие 16 бит, Страница данных – Data Page) и 6 младших бит,
задаваемых непосредственно в инструкции (Смещение – Offset).
Преимущество данного режима: когда DP установлен, имеется
доступ к любой ячейке выбранной страницы в любом порядке.
Недостатки:
1) при необходимости доступа к данным другой страницы,
предварительно необходимо изменить содержимое DP;
2) область памяти данных с адресами выше 003FFFFF16 (объем
свыше 4М) недоступна с использованием регистра DP.

187. Блок адресации памяти данных модуля центрального процессора TMS320F28x

В режиме косвенной адресации используются восемь
32-разрядных регистров X) позволяет отключать передачу во AR0…X) позволяет отключать передачу во AR7 для захвата полного 32-битного
адреса операнда.
Преимущество способа: при помощи ARAU (арифметического
блока адресации регистров) «индексная» арифметика возможна в том
же цикле, в котором осуществлялся доступ к ячейке памяти.
Недостаток: доступ к произвольной области памяти данных
возможен только после новой установки регистра-указателя.
Режимы работы блока ARAU: постинкремент, преддекремент,
индексное сложение и вычитание, стековые относительные операции,
круговая и бит-реверсивная адресация.

188. Модуль центрального процессора TMS320F28x

Атомарное АЛУ. Атомарными называются простые
непрерываемые инструкции, в результате чего выполнение обработки
данных по принципу «чтение – модификация – запись» может
происходить на несколько циклов быстрее, чем по стандартному
принципу «загрузка операнда – модификация – сохранение
результата».
Загрузка
Чтение
Регистры
CPU
АЛУ + Умножитель
Запись
Сохранение
Память

189. Модуль центрального процессора TMS320F28x

Пример выполнения алгоритма без использования и
с использованием атомарного АЛУ: ((X) позволяет отключать передачу во AR2))←((X) позволяет отключать передачу во AR2))&1234H.
Стандартное выполнение
процедуры: загрузка –
модификация - сохранение
Выполнение процедуры с
использованием атомарного АЛУ:
чтение – модификация – запись
2 слова / 1 цикл
6 слов / 6 циклов

190. Модуль центрального процессора TMS320F28x

«Pipeline» - конвейерная структура выполнения команд
В ЦСП семейства С28x используется специальная 8-этапная
структура выполнения команд для увеличения производительности.
Во время выполнения программы в восьми независимых
фазах выполняются следующие базовые операции:
Конвейер С28x
Декодир Чтение Исп. Запись
.
F1 F2 D1
D2
R1 R2 X
W
Извлеч.
- Извлечение инструкций из памяти программ. Фазы Fetch1 (F1) и
Fetch2 (F2);
- Декодирование инструкций. Фазы Decode1 (D1) и Decode2 (D2);
- Чтение данных из памяти или из регистров CPU. Фазы Read1 (R1)
и Read2 (R2);
- Исполнение инструкций. Фаза eX) позволяет отключать передачу во ecute (X) позволяет отключать передачу во );
- Запись результатов в память или регистры CPU. Фаза Write (W).

191. Модуль центрального процессора TMS320F28x

I1
8 стадий конвейера
I2
I3
I4
I5
I6
I5 и I7
обращаются к
одному и тому
же адресу
I7
I8
F1: mnstruction
Address
F1: Выставление
22-разрядного
кода адреса инструкции на шину PAB;
F2: mnstruction Content
D1: Decode mnstruction
D1: Декодирование инструкции. В этой же стадии распознаются границы текущей инструкции в буфере
D2: Resolve
Operand
Addr
инструкций
и определяется
адрес
следующей инструкции, которая будет выполняться;
R1: Operand Address
D2: Определение адреса операнда. В этой же стадии инструкция из буфера инструкций загружается в
R2:
Get Operand
регистр
инструкций
(mR), где завершается декодирование;
X) позволяет отключать передачу во
:
CPU
doing
“real” work
R1: Выставление адреса операнда на шину данных (DRAB) или шину программ (PAB);
W: store content to memory
F2: Извлечение кода инструкции через 32-разрядную шину PRDB и загрузка его в буфер инструкций;
R2: Чтение операнда через 32-разрядную шину (PRDB или DRDB);
X) позволяет отключать передачу во : Реальное действие (модификация операндов, содержимого регистров, изменение режима ЦСП и т.д.).
Основные арифметические и логические операции выполняются в АЛУ, результат записывается в один
из CPU-регистров в конце фазы;
W: Запись результата в память или регистры. CPU выставляет адрес приемника на шину DWAB,
формирует соответствующий строб записи, и данные через шину DWDB записываются в память.

192. Модуль центрального процессора TMS320F28x

X) позволяет отключать передачу во
Циклы

193. Модуль центрального процессора TMS320F28x

F1: Выставление 22-разрядного кода адреса инструкции на шину
PAB.
F2: Извлечение кода инструкции через 32-разрядную шину PRDB и
загрузка его в буфер инструкций.
D1: Декодирование инструкции. В этой же стадии распознаются
границы текущей инструкции в буфере инструкций и определяется
адрес следующей инструкции, которая будет выполняться.
D2: Определение адреса операнда. В этой же стадии инструкция из
буфера инструкций загружается в регистр инструкций (mR), где
завершается декодирование.
R1: Выставление адреса операнда на шину данных (DRAB) или шину
программ (PAB).
R2: Чтение операнда через 32-разрядную шину (PRDB или DRDB).
X) позволяет отключать передачу во :
Реальное действие (модификация операндов, содержимого
регистров, изменение режима ЦСП и т.д.). Основные арифметические и
логические операции выполняются в АЛУ, результат записывается в
один из CPU-регистров в конце фазы.
W: Запись результата в память или регистры. CPU выставляет
адрес приемника на шину DWAB, формирует соответствующий строб
записи, и данные через шину DWDB записываются в память.

194. Модуль центрального процессора TMS320F28x

Особенности модуля центрального процессора ЦСП серий
Delfino C2833x и C2834x
Конвейер C28x + FPU
Извлеч.
Декодир Чтение Исп. Запись
.
F1 F2 D1
D2
R1 R2 X
W
FPUинструкция
D
R
X1
X2+W
Серии Delfino C2833x и C2834x содержат
модуль FPU
(модуль расширения ядра для
исполнения инструкций с плавающей точкой –
FPU, Floating Point Unit).
реализована
полная
поддержка
плавающей и фиксированной точки;
- производительность – до 300 MFLOPS на
частоте 150 МГц;
- команды с плавающей точкой (FPUинструкции)
используют
первую
часть
конвейера ядра C28x (с фиксированной точкой),
а далее исполняются в собственном конвейере;
- команды вычислений с фиксированной
точкой направляются на верхний конвейер, а
FPU-инструкции – на нижний.
- плавающая точка более надежна в
алгоритмах, т.к. исключаются затраты времени
на масштабирование данных и устранение
избыточности;
- применение плавающей точки позволяет
сократить
требуемое
число
тактов
на
исполнение математических операций до 52%.

195. Модуль центрального процессора TMS320F28x

Часть команд с плавающей точкой, таких как команды сравнения
CMP, поиска минимума MIN, максимума MAX, инвертирования знака
числа NEG и получения абсолютного значения числа ABS являются
одноцикловыми.
Другая часть команд, в первую очередь арифметических, –
умножения MPY, сложения ADD, вычитания SUB, умножения с
накоплением MACF32 – двуцикловые. Для того, чтобы результат
такой операции стал доступен следующей команде, необходимо
задержать конвейер на один цикл.
Извлеч.
F1
F2
Декодир.
D1
D2
Чтение
R1
D
Исп.
R2
X
R
Запись
W
X1 X2 (+W)
W
CMP/MIN/MAX/NEG/ABS
MPY/ADD/SUB/MACF32
Компилятор С/С++ автоматически оптимизирует алгоритм
пользователя с учетом возможного параллельного выполнения
команд, добавляя, как правило, «не конфликтующие с конвейером»
команды загрузки операндов, которые понадобятся на следующих
этапах
вычислений.
Тем
самым
практически
полностью
исключаются непроизводительные задержки конвейера.

196.

Модуль центрального процессора TMS320F28x
__sqrt:
CSB
ACC
LSLL ACC,T
MOVL XAR6,@ACC
ASR
AH,#6
MOVB @AH,#0xFE,LEQ
SUB
@AH,#254
MOVZ AR0,@AH
TBIT @T,#0
MOV
AH,@T
LSR
AH,#1
MOVL *SP++,ACC
MOVL XAR7,#_IQsqrtTable
MOVL XAR4,*+XAR7[AR0]
MOVL XAR7,#_IQsqrtRoundSatTable
MOVL XAR5,*XAR7++
.if (GLOBAL_Q & 0x0001)==0;
MOVB @AR0,#12,NTC
MOVB @AR0,#10,TC
.endif
.if (GLOBAL_Q & 0x0001)==1
MOVB @AR0,#12,TC
MOVB @AR0,#8,NTC
.endif
MOVL XT,@XAR4
QMPYL ACC,XT,@XT
MOVL XT,@XAR6
LSL
ACC,#2
QMPYL ACC,XT,@ACC
LSL
MOVL
MOVL
QMPYL
MOVL
LSL
QMPYL
MOVL
SUBL
QMPYL
LSL
MOVL
QMPYL
ACC,#2
XAR4,@ACC
XT,@XAR4
ACC,XT,@XT
XT,@XAR6
ACC,#2
ACC,XT,@ACC
XT,@XAR5
@XT,ACC
ACC,XT,@XAR4
ACC,#2
XT,@XAR6
ACC,XT,@ACC
MOVL XT,*+XAR7[AR0]
IMPYL P,XT,@ACC
QMPYL ACC,XT,@ACC
.if
GLOBAL_Q >= 24
LSL64 ACC:P,#((GLOBAL_Q - 22)/2)
.endif
.if
GLOBAL_Q <= 21
ASR64 ACC:P,#((23 - GLOBAL_Q)/2)
.endif
MOVL XT,*--SP
ASR64 ACC:P,T
ADD
@PH,#-32768
ADDCL ACC,*+XAR7[2]
LRETR
__sqrt:
MOV32
*SP++,R4H
CMPF32 R0H,#0.0
MOVST0 ZF,NF
B L1,EQ
EISQRTF32 R1H,R0H
MOVIZF32 R2H,#0.5
MPYF32
R2H,R0H,R2H
MOVIZF32 R3H,#1.5
MPYF32
R4H,R1H,R2H
NOP
MPYF32 R4H,R1H,R4H
NOP
SUBF32 R4H,R3H,R4H
NOP
Фикс. тчк.
66 слов
70 тактов
MPYF32
NOP
MPYF32
NOP
MPYF32
NOP
SUBF32
NOP
MPYF32
NOP
MPYF32
MOV32
MOV31
LRETR
R1H,R1H,R4H
R4H,R1H,R2H
R4H,R1H,R4H
R4H,R3H,R4H
Плав. тчк.
42 слова
31 такт
R1H,R1H,R4H
R0H,R0H,R1H
R0H,R1H
R4H,*--SP
196

197. Модуль центрального процессора TMS320F28x

Эффективность использования серий Delfino:
Эквивалентная частота, например, 367 МГц означает, что разработчик, использующий
C2812, должен был разогнать
процессор
до
367
МГц, чтобы
получить
производительность C28335.

198. Модуль центрального процессора TMS320F28x

Особенности модуля центрального процессора ЦСП серии
Piccolo C2803x
Серия Piccolo C2803x содержит независимый
32-битный математический акселератор плавающей точки
(CLA, Control Law Accelerator), который сокращает загрузку
CPU, предоставляя возможность увеличения функционала.
FPU-инструкции
исполняются
в
полностью
независимом конвейере (8 стадий);
CPU C28x
Модуль PmE) и
- частота работы ЦСП серии С2803x – до 60 МГц;
- в CLA имеется независимый набор регистров,
структура шин памяти и модулей обработки;
CLA
- алгоритмы исполняются CLA в параллель с CPU;
Ядро
Обработчик
прерываний
- CPU выделяет память программ/блоки памяти данных
для CLA;
- имеется ОЗУ сообщений, которое служит для обмена
данными между CPU и CLA;
- CLA имеет прямой доступ к регистрам АЦП и модуля
расширенного ШИМ (ePWM);
Память и
ОЗУ сообщений
Регистры
АЦП и
ePWM
- возможна генерация прерывания CPU от CLA.
CLA
выполняет
алгоритмы
обратной
связи
эффективнее,
разгружает
CPU
и
увеличивает
производительность. Сокращение требуемого числа тактов
на исполнение математических операций – до 65%.

199.

Модуль центрального процессора TMS320F28x
_ISR_BUCK:
PUSH
SPM
SETC
MOVW
MOV
MOVW
MOV
MOVW
MOV
MOVW
MOVL
MOVL
MOVL
MOVL
MOV
SUB
MOVL
MOVL
QMPYL
ADDL
MINL
MAXL
LSL
MOVL
LSL
MOV
MPYU
MOV
MPYU
MOVH
ADD
MOVL
MOVL
QMPYL
MOVDL
QMPYL
MOVL
QMPYAL
MOVDL
QMPYAL
ADDL
MOVL
POP
IRET
Без CLA
69 тактов
AR1H:AR0H, XAR2, XAR3, XT
0
OVM,SXM
DP,#ADC_CTRL_REGS
@ADCTRL2,#0x4100
; Reset ADC sequencer back to Conv00
DP,#PIE_REGS
@PIEACK,#0xFFFF
; Reset PIE
DP,#EPWM1_REGS
@ETCLR1,#0x01
; Clear EPWM1 Int flag
DP,#_Data3
; DP
-> Buck 3 Data
XAR0,@_Ref3
; XAR0 -> Buck 3 Ref 3
XAR1,#ADC_CH2
; XAR1 -> ADC CH2 Regs (0-wait)
XAR2,#EPWM3_CMPA
; XAR2 -> EPWM3, CMPA Regs
XAR3,@_Coef3
; XAR3 -> Buck 3 Coef
ACC,*XAR0++<<11
; ACC = Ref3
(Q15 -> Q26)
ACC,*XAR1++<<14
; ACC = e(n) = Ref3 - ADC_CH2
(Q12 -> Q26)
@_Data3_en_en1,ACC
; Note: e(n) = e(n-1)
(Q26)
XT,ACC
; XT = e(n)
(Q26)
ACC,XT,*XAR3++
; ACC = e(n)*B0
(Q20 = Q26*Q26 - 32)
ACC,@_Data3_PostCalc
; ACC = e(n)*B0 + PostCalc
(Q20 = Q20 + Q20)
ACC,*XAR3++
; Sat. to <= 0.9999..
(Q20)
ACC,*XAR3++
; Sat. to >= 0.0000..
(Q20)
ACC,#6
; u(n) = ACC << 6
(Q20 -> Q26)
@_Data3_un_un1,ACC
; Note: u(n) = u(n-1)
(Q26)
ACC,#5
; Duty = ACC << 5
(Q31)
T,@AH
; T = Duty
(Q31 -> Q15)
ACC,T,@_Data3_Period
; ACC = Duty * Period
(Q16 = Q15 * Q1)
T,@_Data3_ScaleFactor ; T = ScaleFactor
(Q8)
P,T,@AL
; P = T * PL
(Q24 = Q8 * Q16)
@AL,P
; AL = PH
(Q24 -> Q8)
ACC,#0x17F
; Optimize by Round up
(AH=Q0, AL=Q8)
*XAR2,ACC
; CMPA:CMPAHR(31:8) = ACC
XT,@_Data3_en2
; XT
= e(n-2)
(Q26)
ACC,XT,*XAR3++
; ACC = e(n-2)*B2
(Q20 = Q26*Q26 - 32)
XT,@_Data3_en1
; XT
= e(n-1), e(n-2) = e(n-1) (Q26)
P,XT,*XAR3++
; P
= e(n-1)*B1
(Q20 = Q26*Q26 - 32)
XT,@_Data3_un2
; XT
= u(n-2)
(Q26)
P,XT,*XAR3++
; P
= u(n-2)*A2,
(Q20 = Q26*Q26 -3 2)
XT,@_Data3_un1
; XT
= u(n-1), u(n-2) = u(n-1) (Q26)
P,XT,*XAR3
; P
= u(n-1)*A1,
(Q20 = Q26*Q26 - 32)
ACC,@P
; ACC += u(n-1)*A1
(Q20 = Q20+Q20)
@_Data3_PostCalc,ACC
; Store value for next time
(Q20)
XT, XAR3, XAR2, AR1H:AR0H
CLA
24 такта
_CLA_BUCK:
MOV
SUB
MOVL
QMPYL
NOP
ADDL
MINL
MAXL
MOVL
LSL
QMPYUL
MOVL
MOVL
QMPYL
MOVDL
QMPYL
MOVL
QMPYAL
MOVDL
QMPYAL
NOP
ADDL
MOVL
STOP
ACC,@_Ref << 11
ACC,@_ADC_Ch << 14
@_en1,ACC
ACC,ACC,@_B0
ACC,@_PostCalc
ACC,#0.99999
ACC,#0.00000
@_un1,ACC << 6
ACC,#12
ACC,ACC,@_Period
XT,@_B2
@CMPA:CMPAHR,ACC
ACC,XT,@_en2
XT,@_en1
P,XT,@_B1
XT,@_un2
P,XT,@_A2
XT,@_un1
P,XT,@_A1
ACC,P
@_PostCalc,ACC << 0
CLA выполняет
алгоритм обратной
связи эффективнее,
разгружает ЦП и
увеличивает
производительность
199

200. Модуль центрального процессора TMS320F28x

Сравнение FPU (серии Delfino C2833x и C2834x)
и CLA (серия Piccolo C2803x)
FPU
CLA
Общий с ядром C28x конвейер
Независимый конвейер (8 уровней)
Двухцикловые мат. операции
Одноцикловые мат. операции
8 результирующих регистров, общий
с ядром C28x аккумулятор
4 результирующих регистра,
2 независимых аккумулятора
Поддержка стека, вложенных
прерываний
Нет указателя стека и вложенных
прерываний
Используется C28x переход, вызов и
возврат
Собственные переход, вызов и
возврат
Дополнительные инструкции для
обмена данными между регистрами
FPU и C28x
Дополнительные инструкции для
передачи данных через ОЗУ
Целочисленные инструкции C28x
Собственные целочисленные
инструкции: AND, OR, XOR, ADD/SUB,
Shift
C/C++ или Ассемблер
Ассемблер
Один шаг сбрасывает весь конвейер
Один шаг сдвигает конвейер на цикл

201. Модуль центрального процессора TMS320F28x

Регистр - программный счетчик (PC) всегда указывает на
команду, которая в настоящее время обрабатывается – команда,
которая только достигла фазы декодирования D2 конвейера. Как
только команда достигает этой фазы конвейера, ее выполнение не
может быть прервано сигналами прерываний.
Счетчик программного возврата (RPC). Когда операция вызова
подпрограммы c использованием команды LCR выполнена, адрес
возврата сохраняется в регистре RPC, а старое значение RPC
сохраняется в стеке (в двух 16-разрядных операциях). Когда операция
возврата из подпрограммы LRETR выполнена, адрес возврата
считывается из регистра RPC, а значение из стека записывается в
регистр RPC (в двух 16-разрядных операциях). Другие команды вызова
подпрограмм не используют регистр RPC.

202. Модуль центрального процессора TMS320F28x

C28x имеет два регистра состояния – ST0 и ST1, которые содержат
различные биты флагов и служебные биты. Эти регистры могут быть
сохранены и загружены из памяти, чтобы статус ЦСП был сохранен и
восстановлен в процессе выполнения подпрограмм.
Регистры состояния организованы в соответствии с тем, как их
содержимое изменяется в конвейере. Биты ST0 изменяются в фазе X) позволяет отключать передачу во
конвейера; биты ST1 – в фазе D2.
Поразрядные поля регистра состояния ST0:

203. Модуль центрального процессора TMS320F28x

OVC/OVCU (биты ST010-15) – счетчик переполнений. Режим
установки этих флагов активен, когда выключен режим переполнения
(флаг OVM = 0).
Счетчик переполнений ведет себя неодинаково для знаковых и
беззнаковых операций.
Для знаковых операций (OVC), счетчик переполнения –
6-разрядный знаковый счетчик с амплитудой от -32 до 31. Когда
происходит переполнение ACC в положительном направлении (от
7FFF FFFF16 до 8000 000016), OVC будет увеличен на 1. Когда происходит
переполнение
ACC
в
отрицательном
направлении
(от 8000 000016 до 7FFF FFFF16), OVC будет уменьшен на 1.
Для операций без знака (OVCU), счетчик будет инкрементирован
при сложении, когда в аккумуляторе произошел перенос и
декрементирован при вычитании, когда в аккумуляторе произошел
заем.
При увеличении OVC после значения, равного 31, происходит его
переполнение в значение -32. При уменьшении OVC из значения -32
происходит обратное переполнение в значение 31. При сбросе, OVC
очищается. На OVC воздействуют переполнения только в регистре
ACC, за исключением команд сравнения.

204. Модуль центрального процессора TMS320F28x

PM (бит ST07-9) – биты режима сдвига, задают сдвиговый режим
выходных операций в регистре произведения P. Результат сдвига
попадает в АЛУ или в память. После начальной установки все биты PM
сброшены в 0.
V (бит ST06) – флаг переполнения. Если результат операции
вызывает переполнение в регистре, хранящем результат, флаг V будет
установлен и «защелкнут». Если переполнение не происходит, V не
изменяется. Флаг V защелкнут, пока не будет очищен сбросом или
командой условного перехода, которая проверяет V. Такой условный
переход очищает V независимо от того, является ли проверенное
условие (V = 0 или V = 1) истинным.
Переполнение происходит в ACC (и V установлен) если результат
сложения или вычитания не может быть размещен в пределах
диапазона знаковых чисел – от 8000 000016 до 7FFF FFFF16.
Переполнение происходит в АH, AL, или другом 16-разрядном
регистре или в ячейке памяти, если результат сложения или
вычитания не может быть размещен в пределах от 800016 до 7FFF16.
Команды CMP, CMPB и CMPL не воздействуют состояние флага V.

205. Модуль центрального процессора TMS320F28x

N (бит ST05) – флаг знака. N установлен, если результат операции –
отрицательное число или сброшен, если результат – положительное
число. После сброса N сброшен в 0. Если бит 31 ACC равен 0, ACC –
положителен; если бит 31 равен 1, ACC отрицателен. Результат АH, AL,
и других 16-разрядных регистров или данных в ячейках памяти также
проверяются на отрицательное условие. Тогда значение бита 15 –
знаковый разряд (1 указывает на отрицательное, 0 указывает на
положительное число). Команда TEST ACC устанавливает флаг N, если
значение в ACC отрицательно. Иначе команда сбрасывает флаг N.
Z (ST04) – флаг нуля. Z установлен, если результат некоторых
операций – 0 или сброшен, если результат отличается от нуля. Это
применяется к результатам, которые получены в ACC, АH, AL, другом
регистре, или в ячейке памяти. После сброса, Z сброшен.
Команда TEST ACC устанавливает Z, если значение в ACC – 0, иначе
сбрасывает Z.

206. Модуль центрального процессора TMS320F28x

C (бит ST03) – флаг переноса. Этот флаг показывает, когда
сложение, инкремент генерируют перенос, или когда вычитание,
сравнение,
декремент
генерируют
заем.
Этот
флаг
также
устанавливают операции программного сдвига ACC (команды ROR,
ROL) и аппаратные сдвиги (barrel shift) в ACC, АH, и AL. В результате
сложения/инкремента, C будет установлен, если генерируется перенос;
иначе C будет сброшен. Имеется одно исключение: если используется
команда ADD со сдвигом 16 (ADD ACC,loc16<<shift), C может
устанавливаться, но не может сбрасываться.
В результате вычитания/декремента/сравнения, C будет сброшен,
если вычитание генерирует перенос; иначе C будет установлен.
Имеется одно исключение: если используется команда SUB со сдвигом
16 (SUB ACC,loc16<<shift), C может сбрасываться, но не может
устанавливаться.
Этот бит может быть индивидуально установлен и очищен
командами SETC C и CLRC C соответственно. После начального
сброса, C сброшен в 0.

207. Модуль центрального процессора TMS320F28x

TC (бит ST02) – флаг тест/управление. Этот бит показывает
результат тестирования, выполненного любой TBmT-командой (тестбит) или командой NORM (нормализация).
Команда TBIT проверяет выбранный бит. Когда команда TBIT
выполнена, флаг TC установлен, если проверяемый бит – 1 или
сброшен, если проверяемый бит – 0.
Когда команда NORM выполнена, TC изменяется следующим
образом: Если ACC содержит 0, TC установлен. Если содержимое ACC
отличается от 0, CPU вычисляет исключающее ИЛИ битов 31 и 30 ACC,
и затем загружает TC результатом.
Этот бит может быть индивидуально установлен или сброшен
командой SETC TC или CLRC TC соответственно. После сброса, TC
сброшен в 0.

208. Модуль центрального процессора TMS320F28x

OVM
(бит ST01) – флаг режима переполнения. Когда ACC
принимает результат сложения или вычитания, и результат вызывает
переполнение, OVM определяет, как CPU обрабатывает переполнение:
0 – нормальное переполнение результата в ACC. Состояние
флагов OVC отражает переполнение.
1 – состояние флагов OVC не изменяется, а ACC заполняется
максимально возможным положительным или отрицательным
значением следующим образом:
- если ACC переполняется в положительном направлении
(от 7FFF FFFF16 до 8000 000016), ACC заполняется значением
7FFF FFFF16.
- если ACC переполняется в отрицательном направлении
(от 8000 000016 до 7FFF FFFF16), ACC заполняется значением 8000 000016.
Этот бит может быть индивидуально установлен и сброшен
соответственно командами SETC OVM и CLRC OVM. После начального
сброса OVM сброшен.

209. Модуль центрального процессора TMS320F28x

SX) позволяет отключать передачу во M (бит ST00) – флаг режима расширения знака. На флаг SX) позволяет отключать передачу во M
воздействуют команды MOV, ADD и SUB, которые используют 16-битные
операции в 32-разрядном аккумуляторе. Когда 16-разрядное значение
загружено (MOV), добавлено (ADD) или вычтено (SUB) из ACC, SX) позволяет отключать передачу во M
определяет режим обработки значения со знаком, расширенным в
течение операции следующим образом:
0 – расширение знака подавлено (значение будет обрабатываться
как беззнаковое).
1 – расширение
знака
обрабатываться как знаковое).
допускается
(значение
будет
Этот флаг может быть индивидуально установлен и очищен
командой SETC SXM и командой CLRC SXM, соответственно. После
начального сброса DSP флаг SX) позволяет отключать передачу во M сброшен.

210. Модуль центрального процессора TMS320F28x

Поразрядные поля регистра состояния ST1:

211. Модуль центрального процессора TMS320F28x

ARP (биты ST115-13) – 3-битный
вспомогательного регистра X) позволяет отключать передачу во AR0..X) позволяет отключать передачу во AR7.
указатель
текущего
Выбранный дополнительный регистр
Значение ARP
000
X) позволяет отключать передачу во AR0 (выбран после начальной установки ЦСП)
001
X) позволяет отключать передачу во AR1
010
X) позволяет отключать передачу во AR2
011
X) позволяет отключать передачу во AR3
100
X) позволяет отключать передачу во AR4
101
X) позволяет отключать передачу во AR5
110
X) позволяет отключать передачу во AR6
111
X) позволяет отключать передачу во AR7
После сброса DSP указатель ARP установлен в 000.

212. Модуль центрального процессора TMS320F28x

X) позволяет отключать передачу во F (бит ST112) – флаг, отражающий текущее состояние вывода /
X) позволяет отключать передачу во F_X) позволяет отключать передачу во PLLDmS.
Программная установка флага – SETC XF;
сброс – CLRC XF.
При использовании этих команд конвейер выполнения команд
не может быть прерван. Бит X) позволяет отключать передачу во F (в составе регистра ST1) сохраняется и
восстанавливается при обработке прерываний.
M0M1MAP (бит ST111) – флаг режима карты памяти. Он всегда
равен 1 в объектном режиме C28x (это значение флаг имеет после
начальной установки DSP). Когда необходимо использовать С27xсовместимый режим, этот флаг может быть установлен в 0. При этом
адреса областей памяти M0 и M1 меняются местами (только в памяти
программ, но не в памяти данных) и указатель стека по умолчанию
имеет значение 0x000.
Бит ST110 – резервный бит.
OBJMODE) и (бит ST19) – флаг режима объектной совместимости
(0 для C27x-режима и 1 для C28x-режима).
Программная установка флага – команды SETC OBJMODE; C28OBJ;
сброс – CLRC OBJMODE; C27OBJ.
Бит OBJMODE) и (в составе регистра ST1) сохраняется и
восстанавливается при обработке прерываний. После начальной
установки ЦСП флаг имеет нулевое значение.

213. Модуль центрального процессора TMS320F28x

AMODE) и (бит ST18) – флаг режима адресации. Этот бит, в
сочетании с битом PAGE) и 0 используется для выбора соответствующего
режима адресации:
AMODE) и =0 – в режиме прямой адресации DP дополняется
6-битным смещением, и некоторые режимы косвенной адресации не
поддерживаются (C28x-режим);
AMODE) и =1 – в режиме прямой адресации DP дополняется
7-битным смещением, и поддерживаются все режимы косвенной
адресации.
Программная установка флага – команды SETC AMODE; LPADDR;
сброс – CLRC AMODE; C28ADDR.
При использовании этих команд конвейер выполнения команд
не может быть прерван. Бит AMODE) и (в составе регистра ST1)
сохраняется и восстанавливается при обработке прерываний. После
начальной установки DSP флаг имеет нулевое значение.
mDLE) и STAT (бит ST17) – флаг-индикатор выполненной инструкции
IDLE. Доступен только по чтению. Флаг может быть сброшен по факту
обслуживания прерывания и после начального сброса ЦСП. После
обслуживания прерывания значение бита mDLE) и STAT из стека не
восстанавливается.

214. Модуль центрального процессора TMS320F28x

PM (бит ST07-9) – биты режима сдвига, задают сдвиговый режим
выходных операций в регистре произведения P. Результат сдвига
попадает в АЛУ или в память. После начальной установки все биты PM
сброшены в 0.
V (бит ST06) – флаг переполнения. Если результат операции
вызывает переполнение в регистре, хранящем результат, флаг V будет
установлен и «защелкнут». Если переполнение не происходит, V не
изменяется. Флаг V защелкнут, пока не будет очищен сбросом или
командой условного перехода, которая проверяет V. Такой условный
переход очищает V независимо от того, является ли проверенное
условие (V = 0 или V = 1) истинным.
Переполнение происходит в ACC (и V установлен) если результат
сложения или вычитания не может быть размещен в пределах
диапазона знаковых чисел – от 8000 000016 до 7FFF FFFF16.
Переполнение происходит в АH, AL, или другом 16-разрядном
регистре или в ячейке памяти, если результат сложения или
вычитания не может быть размещен в пределах от 800016 до 7FFF16.
Команды CMP, CMPB и CMPL не воздействуют состояние флага V.

215. Модуль центрального процессора TMS320F28x

N (бит ST05) – флаг знака. N установлен, если результат операции –
отрицательное число или сброшен, если результат – положительное
число. После сброса N сброшен в 0. Если бит 31 ACC равен 0, ACC –
положителен; если бит 31 равен 1, ACC отрицателен. Результат АH, AL,
и других 16-разрядных регистров или данных в ячейках памяти также
проверяются на отрицательное условие. Тогда значение бита 15 –
знаковый разряд (1 указывает на отрицательное, 0 указывает на
положительное число). Команда TEST ACC устанавливает флаг N, если
значение в ACC отрицательно. Иначе команда сбрасывает флаг N.
Z (ST04) – флаг нуля. Z установлен, если результат некоторых
операций – 0 или сброшен, если результат отличается от нуля. Это
применяется к результатам, которые получены в ACC, АH, AL, другом
регистре, или в ячейке памяти. После сброса, Z сброшен.
Команда TEST ACC устанавливает Z, если значение в ACC – 0, иначе
сбрасывает Z.

216. Модуль центрального процессора TMS320F28x

C (бит ST03) – флаг переноса. Этот флаг показывает, когда
сложение, инкремент генерируют перенос, или когда вычитание,
сравнение,
декремент
генерируют
заем.
Этот
флаг
также
устанавливают операции программного сдвига ACC (команды ROR,
ROL) и аппаратные сдвиги (barrel shift) в ACC, АH, и AL. В результате
сложения/инкремента, C будет установлен, если генерируется перенос;
иначе C будет сброшен. Имеется одно исключение: если используется
команда ADD со сдвигом 16 (ADD ACC,loc16<<shift), C может
устанавливаться, но не может сбрасываться.
В результате вычитания/декремента/сравнения, C будет сброшен,
если вычитание генерирует перенос; иначе C будет установлен.
Имеется одно исключение: если используется команда SUB со сдвигом
16 (SUB ACC,loc16<<shift), C может сбрасываться, но не может
устанавливаться.
Этот бит может быть индивидуально установлен и очищен
командами SETC C и CLRC C соответственно. После начального
сброса, C сброшен в 0.

217. Модуль центрального процессора TMS320F28x

TC (бит ST02) – флаг тест/управление. Этот бит показывает
результат тестирования, выполненного любой TBmT-командой (тестбит) или командой NORM (нормализация).
Команда TBIT проверяет выбранный бит. Когда команда TBIT
выполнена, флаг TC установлен, если проверяемый бит – 1 или
сброшен, если проверяемый бит – 0.
Когда команда NORM выполнена, TC изменяется следующим
образом: Если ACC содержит 0, TC установлен. Если содержимое ACC
отличается от 0, CPU вычисляет исключающее ИЛИ битов 31 и 30 ACC,
и затем загружает TC результатом.
Этот бит может быть индивидуально установлен или сброшен
командой SETC TC или CLRC TC соответственно. После сброса, TC
сброшен в 0.

218. Модуль центрального процессора TMS320F28x

OVM
(бит ST01) – флаг режима переполнения. Когда ACC
принимает результат сложения или вычитания, и результат вызывает
переполнение, OVM определяет, как CPU обрабатывает переполнение:
0 – нормальное переполнение результата в ACC. Состояние
флагов OVC отражает переполнение.
1 – состояние флагов OVC не изменяется, а ACC заполняется
максимально возможным положительным или отрицательным
значением следующим образом:
- если ACC переполняется в положительном направлении
(от 7FFF FFFF16 до 8000 000016), ACC заполняется значением
7FFF FFFF16.
- если ACC переполняется в отрицательном направлении
(от 8000 000016 до 7FFF FFFF16), ACC заполняется значением 8000 000016.
Этот бит может быть индивидуально установлен и сброшен
соответственно командами SETC OVM и CLRC OVM. После начального
сброса OVM сброшен.

219. Модуль центрального процессора TMS320F28x

SX) позволяет отключать передачу во M (бит ST00) – флаг режима расширения знака. На флаг SX) позволяет отключать передачу во M
воздействуют команды MOV, ADD и SUB, которые используют 16-битные
операции в 32-разрядном аккумуляторе. Когда 16-разрядное значение
загружено (MOV), добавлено (ADD) или вычтено (SUB) из ACC, SX) позволяет отключать передачу во M
определяет режим обработки значения со знаком, расширенным в
течение операции следующим образом:
0 – расширение знака подавлено (значение будет обрабатываться
как беззнаковое).
1 – расширение
знака
обрабатываться как знаковое).
допускается
(значение
будет
Этот флаг может быть индивидуально установлен и очищен
командой SETC SXM и командой CLRC SXM, соответственно. После
начального сброса DSP флаг SX) позволяет отключать передачу во M сброшен.

220. Модуль центрального процессора TMS320F28x

Поразрядные поля регистра состояния ST1:

221. Модуль центрального процессора TMS320F28x

ARP (биты ST115-13) – 3-битный
вспомогательного регистра X) позволяет отключать передачу во AR0..X) позволяет отключать передачу во AR7.
указатель
текущего
Выбранный дополнительный регистр
Значение ARP
000
X) позволяет отключать передачу во AR0 (выбран после начальной установки ЦСП)
001
X) позволяет отключать передачу во AR1
010
X) позволяет отключать передачу во AR2
011
X) позволяет отключать передачу во AR3
100
X) позволяет отключать передачу во AR4
101
X) позволяет отключать передачу во AR5
110
X) позволяет отключать передачу во AR6
111
X) позволяет отключать передачу во AR7
После сброса DSP указатель ARP установлен в 000.

222. Модуль центрального процессора TMS320F28x

X) позволяет отключать передачу во F (бит ST112) – флаг, отражающий текущее состояние вывода /
X) позволяет отключать передачу во F_X) позволяет отключать передачу во PLLDmS.
Программная установка флага – SETC XF;
сброс – CLRC XF.
При использовании этих команд конвейер выполнения команд
не может быть прерван. Бит X) позволяет отключать передачу во F (в составе регистра ST1) сохраняется и
восстанавливается при обработке прерываний.
M0M1MAP (бит ST111) – флаг режима карты памяти. Он всегда
равен 1 в объектном режиме C28x (это значение флаг имеет после
начальной установки DSP). Когда необходимо использовать С27xсовместимый режим, этот флаг может быть установлен в 0. При этом
адреса областей памяти M0 и M1 меняются местами (только в памяти
программ, но не в памяти данных) и указатель стека по умолчанию
имеет значение 0x000.
Бит ST110 – резервный бит.
OBJMODE) и (бит ST19) – флаг режима объектной совместимости
(0 для C27x-режима и 1 для C28x-режима).
Программная установка флага – команды SETC OBJMODE; C28OBJ;
сброс – CLRC OBJMODE; C27OBJ.
Бит OBJMODE) и (в составе регистра ST1) сохраняется и
восстанавливается при обработке прерываний. После начальной
установки ЦСП флаг имеет нулевое значение.

223. Модуль центрального процессора TMS320F28x

AMODE) и (бит ST18) – флаг режима адресации. Этот бит, в
сочетании с битом PAGE) и 0 используется для выбора соответствующего
режима адресации:
AMODE) и =0 – в режиме прямой адресации DP дополняется
6-битным смещением, и некоторые режимы косвенной адресации не
поддерживаются (C28x-режим);
AMODE) и =1 – в режиме прямой адресации DP дополняется
7-битным смещением, и поддерживаются все режимы косвенной
адресации.
Программная установка флага – команды SETC AMODE; LPADDR;
сброс – CLRC AMODE; C28ADDR.
При использовании этих команд конвейер выполнения команд
не может быть прерван. Бит AMODE) и (в составе регистра ST1)
сохраняется и восстанавливается при обработке прерываний. После
начальной установки DSP флаг имеет нулевое значение.
mDLE) и STAT (бит ST17) – флаг-индикатор выполненной инструкции
IDLE. Доступен только по чтению. Флаг может быть сброшен по факту
обслуживания прерывания и после начального сброса ЦСП. После
обслуживания прерывания значение бита mDLE) и STAT из стека не
восстанавливается.

224. Модуль центрального процессора TMS320F28x

E) и ALLOW (бит ST16) – этот флаг после установки разрешает
доступ к эмуляционным и другим защищенным регистрам.
Программная установка флага – EALLOW;
сброс
– EDIS.
Когда ЦСП обслуживает прерывание, текущее значение флага
E) и ALLOW сохраняется в стеке и затем обнуляется. Поэтому после
начала
подпрограммы
обслуживания
прерывания
доступ
к
эмуляционным и другим защищенным регистрам запрещен. Если в
подпрограмме требуется
доступ к таким регистрам, необходимо
внутри использовать команду EALLOW. По окончании подпрограммы
обслуживания прерывания, флаг E) и ALLOW может быть восстановлен
при помощи команды IRET.
LOOP
(бит ST15) – бит инструкции «LOOP». Этот флаг
устанавливается, когда инструкция LOOPNZ или LOOPZ достигает фазы
D2 конвейера. Эти инструкции продолжают выполняться, пока не
встретится указанное в команде условие. После выполнения условия
флаг LOOP сбрасывается. Этот бит не может быть программно
установлен, может быть только считан.

225. Модуль центрального процессора TMS320F28x

SPA (бит ST14) – бит выравнивания указателя стека. Этот флаг
показывает, выполнял ли процессор выравнивание указателя стека на
четный адрес инструкцией ASP:
SPA=1 – выравнивание выполнялось;
SPA=0 – выравнивание не выполнялось.
После выполнения инструкции ASP, если SP указывал на нечетный
адрес, он инкрементируется, а флаг SPA устанавливается в 1. Если SP
уже был установлен на четный адрес, флаг SPA сбрасывается в 0.
После выполнения инструкции NASP, если флаг SPA был
установлен в 1, SP декрементируется и флаг SPA сбрасывается в 0.
Если SPA был сброшен в 0, SP не изменяется.

226. Модуль центрального процессора TMS320F28x

VMAP (бит ST13) – бит карты векторов прерываний. VMAP
определяет, где в программной памяти располагаются вектора
прерываний:
VMAP=0 – вектора прерываний располагаются в нижней части
программной памяти, по адресам 00 000016 − 00 003F16;
VMAP=1 – вектора прерываний располагаются в верхней части
программной памяти, по адресам 3F FFC016− 3F FFFF16.
В C28x – устройствах бит VMAP имеет аппаратное
«подтягивание» к уровню лог. 1, что обеспечивает установку этого бита
в «1» после начальной установки.
Программная установка флага – команда SETC VMAP;
сброс – CLRC VMAP.

227. Модуль центрального процессора TMS320F28x

PAGE) и 0 (бит ST12) – бит конфигурации режима адресации PAGE) и 0.
Этот бит определяет два взаимоисключающих режима адресации:
режим прямой адресации PAGE) и 0 (1) и режим стековой адресации
PAGE) и 0 (0). Одновременная установка битов PAGE) и 0 и AMODE) и в 1
недопустима.
Установка PAGE) и 0 в 1 включает совместимость с
C27x-устройствами. Для C28x-устройств рекомендуется сбросить
PAGE) и 0 в 0.
Программная установка флага – команда SETC PAGE0;
сброс – CLRC PAGE0.
После начальной установки ЦСП бит PAGE) и 0 сброшен в 0.

228. Модуль центрального процессора TMS320F28x

DBGM (бит ST11) – бит маскирования разрешения отладки. Если
флаг DBGM установлен, эмулятор не имеет доступа к регистрам и
памяти в реальном масштабе времени. CPU не воспринимает запросы
останова, пока DBGM не будет сброшен. Перед началом выполнения
подпрограммы DBGM всегда устанавливается в 1, и для возможности
реализации пошагового режима и реализации точек останова,
необходимо добавить команду CLRC
DBGM в начале текста
подпрограммы.
Программная установка флага – команда SETC DBGM;
сброс – CLRC DBGM.
После начальной установки DSP бит DBGM установлен в 1.

229. Модуль центрального процессора TMS320F28x

mNTM (бит ST10) – бит общего маскирования прерываний. Этот бит
глобально разрешает или запрещает все маскируемые прерывания:
mNTM = 0 – общее разрешение прерываний (индивидуально –
в регистре mE) и R);
mNTM = 1 – общий запрет прерываний.
Флаг mNTM не оказывает влияния на обработку немаскируемых
прерываний.
Программная установка флага – команда SETC
сброс – CLRC
INTM;
INTM.
После начальной установки ЦСП бит mNTM установлен в 1.

230. 32-битные таймеры ядра ЦСП TMS320F28x

ЦСП TMS320F2812 содержит три 32-битных таймера ядра (CPUtimers 0,1,2). Таймеры 1 и 2 зарезервированы для использования в
операционной системе реального времени DSP/BmOS. Таймер 0
используется в приложениях пользователя. Каждый из таймеров имеет
следующую блок-схему (все 32-разрядные регистры доступны в виде
16-битных частей, старшая из которых имеет в конце индекс «H» ):
RE) и SE) и T
Перезагрузка
таймера
16-битный
регистр делитель
TDDRH:TDDR
SYSCLKOUT
TCR.4
(Timer stop status)
16-битный
счетчик-предделитель
PSCH:PSC
заём
32-битный
регистр периода
PRDH:PRD
32-битный
счетчик
TmMH:TmM
заём
TmNT
t зд. min = 1,33E) и -8 c (при f такт = 150 МГц);
t зд. min = 2,67E) и -8 c (при f такт = 150 МГц);
t зд. max =2,185E) и -3 c (при f такт = 30 МГц)
t зд. max = 108,594 сут. (при f такт = 30 МГц)

231. 32-битные таймеры ядра ЦСП TMS320F28x

Каждый таймер тактируется системной частотой SYSCLKOUT
после того, как в соответствующем регистре TmME) и RxTCR сброшен 4-й
бит (TSS). При установленном 3-м бите (TRB) в регистре TmME) и RxTCR в
32-битый счетный регистр TmME) и RxTmMH:TmME) и RxTmM загружается
значение из регистра периода TmME) и RxTPRDH:TmME) и RxTPRD, а в регистрпредделитель TmME) и RxPSCH:TmME) и RxPSC – значение из регистраделителя TmME) и RxTDDRH:TmME) и RxTDDR. Значение счетного регистра
TmME) и RxTmMH:TmME) и RxTmM декрементируется в соответствии с частотой
переопустошений регистра TmME) и RxPSCH:TmME) и RxPSC, тактируемого
системной частотой SYSCLKOUT.
При достижении регистром TmME) и RxTmMH:TmME) и RxTmM нулевого
значения,
соответствующим
таймером
генерируется
сигнал
прерывания. При каждом переопустошении счетчика-предделителя
TmME) и RxPSCH:TmME) и RxPSC в него переписывается значение из регистраделителя TmME) и RxTDDRH:TmME) и RxTDDR. При каждом переопустошении
счетного регистра TmME) и RxTmMH:TmME) и RxTmM в него переписывается
значение из регистра периода TmME) и RxTPRDH:TmME) и RxTPRD.

232. 32-битные таймеры ядра ЦСП TMS320F28x

Счетчик-предделитель
TmME) и RxPSC
и
регистр-делитель
TmME) и RxTDDR программно доступны как один 16-разрядный регистр
TmME) и RxTPR.
Аналогично – TmME) и RxPSCH и TmME) и RxTDDRH (это единый 16-битный
регистр TmME) и RxTPRH).

233. Система прерываний DSP TMS320F2812

Прерывания – это программно- или аппаратно-управляемые
сигналы, которые заставляют CPU
приостанавливать текущее
выполнение программы и переходить к выполнению подпрограммы.
Прерывания
вырабатываются
периферией
или
внешними
устройствами (например, АЦП, ЦАП, или внешними процессорами), а
также внутренними устройствами (например, таймерами после
завершения счета). Для процессоров C28x прерывания могут быть
инициированы программно (инструкции INTR, OR IFR, TRAP) или
аппаратно (внешние выводы, внешняя периферия). Если несколько
аппаратных
прерываний
были
инициированы
одновременно,
обслуживание производится в соответствии с установленным
приоритетом.
DSP
TMS320F2812
содержит
аппаратный
контроллер
расширения
прерываний
(PmE) и ),
который
мультиплексирует
многочисленные прерывания от периферии в одно CPU-прерывание.
С точки зрения CPU, все прерывания подразделяются на 2 категории:
- маскируемые прерывания (могут быть программно
разрешены либо запрещены);
- немаскируемые прерывания (не могут быть программно
запрещены) – C28x будет немедленно реагировать на данный тип
прерываний и переходить к подпрограмме обработки прерывания;
к этой категории относятся прерывание NMm, сигнал сброса RS и
программно инициируемые прерывания INTR и TRAP
-??.

234. Система прерываний DSP TMS320F2812

Прерывания выполняются в 4-х основных фазах:
1. Прием запроса прерывания.
2. Принятие прерывания к исполнению. Если прерывание –
маскируемое, то условия, которые вызывают прерывания,
дополнительно перепроверяются и подтверждаются процессором.
Для немаскируемых и программных прерываний
принятие к
выполнению происходит сразу.
3. Подготовка к подпрограмме обслуживания прерывания и сохранение
значений регистров:
- оканчивается выполнение текущей инструкции и снимаются с
конвейера все инструкции, которые не достигли фазы D2;
- автоматически сохраняется большая часть текущего
состояния программы путем сохранения в стеке содержимого
регистров ST0, T, AL, AH, PL, PH, AR0, AR1, DP, ST1, DBGSTAT, PC, mE) и R;
- извлекается вектор прерывания и загружается в программный
счетчик (PC).
4. Выполнение подпрограммы обслуживания прерывания (ОП). DSP
семейства C28x обрабатывает прерывания путем выполнения
соответствующих подпрограмм обработки. Вектора прерываний
(начальные
адреса
подпрограмм
обработки)
находятся
в
предопределенной области памяти программ BootROM –
BROM vectors.

235. Система прерываний DSP TMS320F2812

236. Система прерываний DSP TMS320F2812

Процессорное ядро DSP F2812 принимает сигналы по 16 линиям
прерываний:

237. Система прерываний DSP TMS320F2812

Источники прерываний в DSP F2812:

238. 32-битные таймеры ядра ЦСП TMS320F28x

Сигналы прерываний, формируемые CPU-таймерами, связаны
с прерываниями ядра следующим образом:

239. Система прерываний DSP TMS320F2812

DSP F2812 поддерживает 32 вектора CPU-прерываний, в том
числе вектор начального сброса. Каждый вектор – это 22-битный
начальный адрес подпрограммы ОП, который сохраняется в двух
последовательных ячейках памяти программ области BROM vectors (16
бит в ячейке с младшим адресом и 6 бит в ячейке со старшим адресом).

240. Система прерываний DSP TMS320F2812

Вектор
Адрес при
VMAP=1
Аппаратный
приоритет
Описание
RE) и SE) и T
3F FFC0
1 (высший)
нач. сброс DSP
mNT1
3F FFC2
5
маск. прерывание 1
mNT2
3F FFC4
6
маск. прерывание 2
mNT3
3F FFC6
7
маск. прерывание 3
mNT4
3F FFC8
8
маск. прерывание 4
mNT5
3F FFCA
9
маск. прерывание 5
mNT6
3F FFCC
10
маск. прерывание 6

241. Система прерываний DSP TMS320F2812

Вектор
Адрес при
VMAP=1
Аппаратный
приоритет
Описание
mNT7
3F FFCE) и
11
маск. прерывание 7
mNT8
3F FFD0
12
маск. прерывание 8
mNT9
3F FFD2
13
маск. прерывание 9
mNT10
3F FFD4
14
маск. прерывание 10
mNT11
3F FFD6
15
маск. прерывание 11
mNT12
3F FFD8
16
маск. прерывание 12
mNT13
3F FFDA
17
маск. прерывание 13
mNT14
3F FFDC
18
маск. прерывание 14
DLOGmNT
3F FFDE) и
19 (низший)
RTOSmNT
3F FFE) и 0
4
маск. Data log прерывание
маск. системное
прерывание реального
времени

242. Система прерываний DSP TMS320F2812

Вектор
Адрес при
VMAP=1
Аппаратный
приоритет
Описание
Reserved
3F FFE) и 2
2
резерв
NMm
3F FFE) и 4
3
немаск. прерывание
mllegal
3F FFE) и 6

недопустимая инструкция
USE) и R1
3F FFE) и 8

программное прерывание
USE) и R2
3F FFE) и A

программное прерывание
USE) и R3
3F FFE) и C

программное прерывание
USE) и R4
3F FFE) и E) и

программное прерывание
USE) и R5
3F FFF0

программное прерывание

243. Система прерываний DSP TMS320F2812

Вектор
Адрес при
VMAP=1
Аппаратный
приоритет
Описание
USE) и R6
3F FFF2

программное прерывание
USE) и R7
3F FFF4

программное прерывание
USE) и R8
3F FFF6

программное прерывание
USE) и R9
3F FFF8

программное прерывание
USE) и R10
3F FFFA

программное прерывание
USE) и R11
3F FFFC

программное прерывание
USE) и R12
3F FFFE) и

программное прерывание

244. Система прерываний DSP TMS320F2812

Общая структура обработки маскируемых прерываний ядра:
Ядро
C28x
mFR
mE) и R
mNTM
mNTM=1: глобальное разрешение прерываний
mNTM=0: глобальный запрет прерываний

245. Система прерываний DSP TMS320F2812

mNT1… mNT14 – 14 основных прерываний. Прерывания
DLOGmNT и RTOSmNT используются при эмуляции.
C28x имеет три регистра, выделенных для управления
прерываниями:
− регистр флагов прерываний (mFR);
− регистр разрешения прерываний (mE) и R);
− регистр разрешения отладки прерываний (DBGmE) и R).
16-битный регистр mFR содержит биты флагов для
маскируемых прерываний (которые можно разрешать и запрещать
программно).

246. Система прерываний DSP TMS320F2812

Когда определенный флаг регистра mFR устанавливается, это
означает, что соответствующее прерывание будет перепроверяться
и
подтверждаться
процессором.
Входы
CPU
mNT1…mNT14
опрашиваются в каждом машинном цикле, при обнаружении
прерывания соответствующий бит регистра mFR защелкивается в
единичном состоянии, а после обслуживания прерывания –
сбрасывается.
В регистре mE) и R индивидуально разрешается или запрещается
соответствующим битом определенное прерывание. Установка в 1 –
разрешение прерывания, сброс в 0 – запрет.
Когда аппаратное
выполнена
инструкция
сбрасывается.
прерывание обслужено,
INTR,
соответствующий
или когда
бит
mE) и R

247. Система прерываний DSP TMS320F2812

Регистр DBGmE) и R устанавливает разрешение/запрет прерывания,
в то время как CPU остановлен в режиме эмуляции реального
времени. Прерывание, разрешенное в DBGmE) и R, называется
«критичное ко времени прерывание». Если CPU запущен в режиме
эмуляции реального времени, используется стандартная процедура
обслуживания прерывания и регистр DBGmE) и R не используется. Так
же, как и в случае с регистром mE) и R, установка бита в DBGmE) и R
разрешает соответствующее прерывание, сброс – запрещает.

248. Система прерываний DSP TMS320F2812

Стандартная процедура выполнения маскируемого прерывания:

249. Система прерываний DSP TMS320F2812

В случае использования PmE) и -контроллера, таблица адресов
векторов
прерываний
расширяется.
PmE) и -контроллер
может
поддерживать 96 прерываний, которые сгруппированы в 12 групп по
8 прерываний.

250. Система прерываний DSP TMS320F2812

Таблица источников прерываний в PmE) и -контроллере:
mNTx.8
mNTx.7
mNTx.6
mNTx.5
mNTx.4
WAKE) и mNT
TmNT0
ADCmNT
X) позволяет отключать передачу во mNT2
X) позволяет отключать передачу во mNT1
mNT2
T1OFmNT
T1UFmNT
T1CmNT
T1PmNT
CMP3mNT
mNT3
CAPmNT3
CAPmNT2
CAPmNT1
T2OFmNT
T2UFmNT
mNT4
T3OFmNT
T3UFmNT
T3CmNT
T3PmNT
CMP6mNT
mNT5
CAPmNT6
CAPmNT5
CAPmNT4
T4OFmNT
T4UFmNT
MX) позволяет отключать передачу во mNT
MRmNT
mNT1
mNT6
mNTx.3
Приоритет
mNTx.2
mNTx.1
PDPmNTB PDPmNTA
CMP2mNT CMP1mNT
T2CmNT
T2PmNT
CMP5mNT CMP4mNT
T4CmNT
T4PmNT
SPmTX) позволяет отключать передачу во mNTASPmRX) позволяет отключать передачу во mNTA
mNT7
mNT8
mNT9
mNT10
mNT11
mNT12
E) и CAN1mNT E) и CAN0mNT SCmTX) позволяет отключать передачу во mNTB SCmRX) позволяет отключать передачу во mNTB SCmTX) позволяет отключать передачу во mNTASCmRX) позволяет отключать передачу во mNTA

251. Система прерываний DSP TMS320F2812

Каждая группа (строка из 8 элементов) мультиплексируется в
одно из прерываний ядра mNT1…mNT12:
Ядро
От
периферии
и внешних
прерываний
x=1…12

252. Система прерываний DSP TMS320F2812

Каждое из 96 прерываний поддерживается единственным
вектором прерывания, размещенном в специально предназначенной
области памяти данных – PmE) и Vectors.

253. Система прерываний DSP TMS320F2812

CPU, обслуживая прерывание, автоматически извлекает из
памяти соответствующий вектор. За 9 машинных циклов CPU
происходит извлечение вектора и сохранение содержимого CPUрегистров. Приоритет прерываний контролируется аппаратно и
программно, каждое прерывание может быть индивидуально и
программно разрешено или запрещено PmE) и -контроллером. При
обслуживании мультиплексированных прерываний PmE) и -контроллер
для каждой группы прерываний содержит соответствующий флаг-бит
(регистры PmE) и mFR1… PmE) и mFR12, индицируют активное прерывание) и бит
разрешения (регистр PmE) и mE) и R1… PmE) и mE) и R12, устанавливают разрешение
или запрет прерывания). Формат этих регистров следующий:

254. Система прерываний DSP TMS320F2812

Соответствующий бит в регистре подтверждения PmE) и ACK
(активный уровень - 0) определяет номер активного прерывания для
CPU внутри группы. Формат регистра PmE) и ACK (бит 0 соответствует
прерыванию mNT1, и т.д., бит 11 соответствует прерыванию mNT12):
Формат регистра управления PmE) и CTRL:
PmE) и VE) и CT – эти биты показывают адрес в пределах таблицы
векторов PmE) и vectors, из которой был извлечен вектор. Младший
значащий бит игнорируется и показываются биты адреса от 1 до 15, что
позволяет при чтении из регистра определить, какое прерывание
генерировалось.
E) и NPmE) и – бит разрешения извлечения векторов из таблицы PmE) и контроллера. Если E) и NPmE) и =1, все вектора извлекаются из таблицы
векторов PmE) и (адреса 0x000D00… 0x000DFF). Если E) и NPmE) и =0, PmE) и контролер запрещен, и вектора извлекаются из таблицы CPU-векторов
(BootRom, адреса 0x3F FFC0… 0x3F FFFF).

255. Система прерываний DSP TMS320F2812

256. Система прерываний DSP TMS320F2812

Полная процедура обработки прерываний при E) и NPmE) и =1:
шаг 1 – генерация прерывания от периферии;
шаг 2 – установка флага PmE) и mFRx.y = 1;
шаг 3а – проверка одновременного наличия двух условий:
PmE) и mE) и Rx.y = 1 и PmE) и ACKx=0;
шаг 3б – установка в «1» бита PmE) и ACKx для подтверждения
прерывания от группы x;
шаг 4 – формирование импульса прерывания по линии mNTx на ядро
(PmE) и ACKx продолжает оставаться в единичном состоянии и требует
программного сброса для возможности приема прерывания ядром по
линии mNTx в дальнейшем);
шаг 5 – установка флага mFRx = 1;
шаг 6 – проверка условия mE) и Rx = 1;
шаг 7 – проверка условия mNTM = 1, подготовка адреса возврата и
данных к сохранению в стеке;
шаг 8 – процессор определяет адрес вектора прерывания в области
PmE) и Vector Mapping (адреса с 0x00 0D02 по 0x00 0D1C);
шаг 9 – процессор определяет адрес вектора прерывания в области
PmE) и Vector Mapping с учетом текущего значения регистров PmE) и mE) и R и
PmE) и mFR (адреса с 0x00 0D40 по 0x00 0DFE) и ).
Номер шага равен номеру машинного цикла.

257. Система прерываний DSP TMS320F2812

Таблица векторов PmE) и -контроллера используется для хранения
начальных адресов подпрограмм ОП (векторов) для каждого
прерывания, причем существует единственный вектор на прерывание,
включая
все
мультиплексируемые
и
немультиплексируемые
прерывания. Таблица векторов PmE) и -контроллера представляет собой
блок размером 256 слов в области SARAM, которая имеет
неопределенные значения после начального сброса DSP.
Memory
0
PmE) и Vectors
256 W
BROM Vectors
64 W
0x00 0D00
ENPIE=1
0x00 0DFF
0x3F FFC0
0x3F FFFF
ENPIE=0

258. Система прерываний DSP TMS320F2812

Таблица векторов PmE) и -контроллера при E) и NPmE) и =1:
Имя вектора
Адрес
Not used
INT1
……
INT12
INT13
INT14
Datalog
……
USER12
INT1.1
……
0x00 0D00
0x00 0D02
……
0x00 0D18
0x00 0D1A
0x00 0D1C
0x00 0D1D
……
0x00 0D3E
0x00 0D40
……
INT1.8
……
INT12.1
……
INT12.8
0x00 0D4E
……
0x00 0DF0
……
0x00 0DFE
Описание
Вектор сброса (неактивен)
INT1 (неактивен)
…… (неактивен)
INT12 (неактивен)
Вектор прерывания XINT13
Вектор Timer2/RTOS
Вектор Data logging
……
Определяемое пользователем TRAP
Вектор PIEINT1.1 (PDPINTA)
……
Вектор PIEINT1.8 (WAKEINT)
……
Вектор PIEINT12.1 (резерв)
……
Вектор PIEINT12.8 (резерв)

259. Порты ввода/вывода DSP TMS320F2812

GPmO A
GPIOA0 /
GPIOA1 /
GPIOA2 /
GPIOA3 /
GPIOA4 /
GPIOA5 /
GPIOA6 /
GPIOA7 /
GPIOA8 /
GPIOA9 /
GPIOA10 /
GPIOA11 /
GPIOA12 /
GPIOA13 /
GPIOA14 /
GPIOA15 /
GPmO B
PWM1
PWM2
PWM3
PWM4
PWM5
PWM6
T1PWM_T1CMP
T2PWM_T2CMP
CAP1_QEP1
CAP2_QEP2
CAP3_QEPI1
TDIRA
TCLKINA
C1TRIP
C2TRIP
C3TRIP
GPmO F
GPIOF0 /
GPIOF1 /
GPIOF2 /
GPIOF3 /
GPIOF4 /
GPIOF5 /
GPIOF6 /
GPIOF7 /
GPIOF8 /
GPIOF9 /
GPIOF10 /
GPIOF11 /
GPIOF12 /
GPIOF13 /
GPIOF14 /
GPIOB0 /
GPIOB1 /
GPIOB2 /
GPIOB3 /
GPIOB4 /
GPIOB5 /
GPIOB6 /
GPIOB7 /
GPIOB8 /
GPIOB9 /
GPIOB10 /
GPIOB11 /
GPIOB12 /
GPIOB13 /
GPIOB14 /
GPIOB15 /
GPmO D
PWM7
PWM8
PWM9
PWM10
PWM11
PWM12
T3PWM_T3CMP
T4PWM_T4CMP
CAP4_QEP3
CAP5_QEP4
CAP6_QEPI2
TDIRB
TCLKINB
C4TRIP
C5TRIP
C6TRIP
GPmO G
SPISIMOA
SPISOMIA
SPICLKA
SPISTEA
SCITXDA
SCIRXDA
CANTXA
CANRXA
MCLKXA
MCLKRA
MFSXA
MFSRA
MDXA
MDRA
XF
GPIOG4 / SCITXDB
GPIOG5 / SCIRXDB
GPIOD0
GPIOD1
GPIOD5
GPIOD6
/
/
/
/
T1CTRIP_PDPINTA
T2CTRIP / EVASOC
T3CTRIP_PDPINTB
T4CTRIP / EVBSOC
GPmO E) и
GPIOE0 / XINT1_XBIO
GPIOE1 / XINT2_ADCSOC
GPIOE2 / XNMI_XINT13

260. Порты ввода/вывода DSP TMS320F2812

GPIO A Direction Control
Register (GPADIR)
GPIO B Mux Control
Register (GPBMUX)
GPIO B Direction Control
Register (GPBDIR)
GPIO D Mux Control
Register (GPDMUX)
GPIO D Direction Control
Register (GPDDIR)
GPIO E Mux Control
Register (GPEMUX)
GPIO E Direction Control
Register (GPEDIR)
GPIO F Mux Control
Register (GPFMUX)
GPIO F Direction Control
Register (GPFDIR)
GPIO G Mux Control
Register (GPGMUX)
GPIO G Direction Control
Register (GPGDIR)
GPIO A GPIO B GPIO D GPIO E GPIO F GPIO G
Internal Bus
GPIO A Mux Control
Register (GPAMUX)

261. Порты ввода/вывода DSP TMS320F2812

Линии портов A, B, D и E) и поддерживают функцию «входной
ограничитель». Когда эта функция используется, короткие входные
импульсы
(соизмеримые
по
длительности
с
номинальным
количеством циклов, необходимым для распознавания значения
сигнала) не распознаются сигнальным процессором. Функция
предназначена для повышения помехозащищенности.

262.

GPxSET
GPxCLEAR
GPxTOGGLE
Спец.
функция
линии
GPxDAT
I/O DAT
Bit (R/W)
Out
In
0
I/O DIR Bit
0 = ввод
1 = вывод

MUX бит управления
1
0 = I/O функция
1 = спец. функция
Внешний
вывод
GPxDIR
GPxMUX
15 - 8
Для линий
портов
A, B, D и E) и
GPxQUAL
7-0
reserved QUALPRD
00h
01h
02h
.
no qualification (SYNC to SYSCLKOUT)
QUALPRD = SYSCLKOUT/2
QUALPRD
. = SYSCLKOUT/4
.
FFh
QUALPRD = SYSCLKOUT/510
..
..
..

263. Порты ввода/вывода DSP TMS320F2812

Каждый из портов A, B, D и E) и снабжен соответствующими
регистрами мультиплексирования (GPxMUX) позволяет отключать передачу во ), направления (GPxDmR),
данных (GPxDAT), установки (GPxSE) и T), очистки (GPxCLE) и AR),
переключения (GPxTOGGLE) и ). Все эти регистры имеют идентичный
формат.
Регистры мультиплексирования (GPxMUX) позволяет отключать передачу во ):
GPxMUX) позволяет отключать передачу во .bit=0 – линия используется для ввода/вывода;
GPxMUX) позволяет отключать передачу во .bit=1 – линия используется для спец. функции.
После начального сброса DSP GPxMUX) позволяет отключать передачу во .all=0
Регистры направления (GPxDmR):
GPxDmR.bit=0 – линия конфигурирована для ввода;
GPxDmR.bit=1 – линия конфигурирована для вывода.
После начального сброса DSP GPxDmR.all=0. Когда направление линии
переключается на вывод при помощи регистра GPxDmR, текущее
содержимое регистра GPxDAT попадает на соответствующий внешний
вывод DSP.

264. Порты ввода/вывода DSP TMS320F2812

Регистры данных (GPxDAT):
Регистры данных, доступные по записи и по чтению, при
чтении отображают значение сигнала на соответствующей линии
ввода/вывода после действия входного ограничителя. Запись в бит
регистра определяет состояние соответствующей линии, если она
сконфигурирован на вывод.
Если GPxDAT.bit=0 и линия сконфигурирована для вывода – на нее
выводится «0»;
Если GPxDAT.bit=1 и линия сконфигурирована для вывода – на нее
выводится «1».
Регистры установки (GPxSE) и T), только для записи:
Если GPxSE) и T.bit=0 – инструкция игнорируется;
Если GPxSE) и T.bit=1 и линия сконфигурирована для вывода – на
нее выводится «1».
Регистры сброса (GPxCLE) и AR), только для записи:
Если GPx CLE) и AR.bit=0 – инструкция игнорируется;
Если GPx CLE) и AR.bit=1 и линия сконфигурирована для вывода –
на нее выводится «0».

265. Порты ввода/вывода DSP TMS320F2812

Регистры переключения (GPxTOGGLE) и ), только для записи:
Если GPxTOGGLE) и .bit=0 – инструкция игнорируется;
Если GPxTOGGLE) и .bit=1 и линия сконфигурирована для вывода –
логическое состояние не ней изменяется на противоположное.

266. Менеджеры событий DSP TMS320F2812

В сигнальном процессоре TMS320F2812 имеется два модуляменеджера событий (E) и VA – E) и vent Manager A и E) и VB – E) и vent Manager B),
которые выполняют аналогичные функции. Каждый менеджер событий
включает в себя таймеры общего назначения (GP), устройства
сравнения/широтно-импульсного модулятора (ШИМ), устройства
захвата, схему квадратурного анализа (QE) и P).
Каждый менеджер событий управляется своей собственной
логикой, которая может запрашивать прерывания. Менеджер событий
позволяет запускать встроенный либо внешний аналого-цифровой
преобразователь. Для запуска внешнего АЦП на выводах E) и VASOC или
E) и VBSOC, и вырабатывается строб начала преобразования (SOC). E) и VA и
E) и VB имеют идентичные регистры, расположенные по разным адресам.

267. Менеджеры событий DSP TMS320F2812

268. Менеджеры событий DSP TMS320F2812 (на примере EvA)

269. Менеджеры событий DSP TMS320F2812

В каждом модуле E) и VM имеется по два GP-таймера общего
назначения (GP, General Purpose Timer). В отличие от таймеров CPU,
которые имеют разрядность 32 бита, таймеры менеджера событий
являются независимыми 16-разрядными устройствами, c расширенной
системой ввода/вывода.
Внешний сигнал
TCLKmN
CLKQE) и P

270. Менеджеры событий DSP TMS320F2812

Центральным блоком GP таймера является блок сравнения.
Здесь происходит сравнение значения 16-битного счетчика (TxCNT) с
двумя другими регистрами: регистром сравнения (TxCMPR) и
регистром периода (TxPR). Если значения счетчика и регистра
сравнения равны, то выходной формирователь устанавливает в
активный
уровень
выходной
сигнал
(TxPWM).
Источником
тактирования счетчика может являться тактовый сигнал от
высокоскоростного предделителя (HSPCLK), внешний сигнал (TCLKmN),
или тактовые импульсы от схемы квадратурного анализа (CLKQE) и P).
Особенностью DSP TMS320F2812 является наличие буферов
регистров TxCMPR и TxPR, которые позволяют обновлять значения по
заранее заданным событиям:
а) достижение GP таймером-счетчиком нуля;
б) достижение GP таймером-счетчиком значения, равного значению в
регистре периода;
в) немедленная загрузка после записи в буфер.

271. Менеджеры событий DSP TMS320F2812

Каждый из 4-х GP таймеров может вырабатывать прерывание
на следующие события:
а) достижение GP таймером-счетчиком нуля 0000h (TxUFmNT);
б) достижение максимального значения FFFFh (TxOFmNT);
в) достижение заданного значения сравнения (TxCmNT);
г) достижение значения, равного значению в регистре периода (TxPmNT).

272. Менеджеры событий DSP TMS320F2812

Каждый GP таймер может работать в одном из 4-х режимов.
1) Режим «СТОП/Хранение». В этом режиме GP таймер
останавливается и удерживает текущее значение, при этом таймерсчетчик, выходы сравнения и значение предделителя остаются без
изменения.

273. Менеджеры событий DSP TMS320F2812

2) Режим «Непрерывный счет вверх». В этом режиме значение
счетчика увеличивается до тех пор, пока не достигнет значения,
равного значению в регистре периода. После этого счетчик
сбрасывается в ноль и начинает считать сначала. При этом
вырабатывается флаг прерывания, который остается установленным в
течение одного такта. Если флаг не был маскирован, то
вырабатывается запрос прерывания.

274. Менеджеры событий DSP TMS320F2812

275. Менеджеры событий DSP TMS320F2812

3) Режим «Управляемый счет вверх/вниз». Этот режим
аналогичен предыдущему, за исключением того, что направление счета
зависит от состояния входа TDmRA/B: вверх, если сигнал на TDmRA/B
высокого уровня; вниз – низкого.

276. Менеджеры событий DSP TMS320F2812

4) Режим «Непрерывный счет вверх/вниз». В отличие от
предыдущего режима, направление счета изменяется при достижении
нуля или значения в регистре периода. Продолжительность периода в
этом режиме равна 2∙(TxPR).

277. Менеджеры событий DSP TMS320F2812

278. Менеджеры событий DSP TMS320F2812

Генерация прерываний от GP таймеров:

279. Менеджеры событий DSP TMS320F2812

Регистры GP таймеров :

280. Менеджеры событий DSP TMS320F2812

Регистры управления таймерами (TхCON)

281. Менеджеры событий DSP TMS320F2812

Регистр управления GP таймерами менеджера событий А (GPTCONA)

282. Менеджеры событий DSP TMS320F2812

Прерывания от менеджера событий E) и vA конфигурируются при
помощи регистров E) и VAmMRA, E) и VAmMRB и E) и VAmMRC.

283. Менеджеры событий DSP TMS320F2812

284. Менеджеры событий DSP TMS320F2812

Все прерывания от менеджера событий E) и vA индицируются в
регистрах E) и VAmFRA, E) и VAmFRB и E) и VAmFRC.
E) и VAmFRC

285. Менеджеры событий DSP TMS320F2812

В каждом E) и VM предусмотрено по 3 модуля сравнения (N/2)Compare Unit).
Эти устройства используют GP-таймер 1 в качестве синхронизатора, и
могут вырабатывать до 6 выходных сигналов сравнения (ШИМсигналов). Все 6 выходов работают независимо друг от друга.
Регистры сравнения дублируются, позволяя фиксировать изменения
ширины импульсов. Они позволяют снизить до минимума
программную загрузку ядра при операциях измерений длительности,
периодических выборок и генерации сигналов ШИМ.

286. Менеджеры событий DSP TMS320F2812

287. Менеджеры событий DSP TMS320F2812

288. Менеджеры событий DSP TMS320F2812

289. Менеджеры событий DSP TMS320F2812

290. Менеджеры событий DSP TMS320F2812

291. Менеджеры событий DSP TMS320F2812

292. Менеджеры событий DSP TMS320F2812

Устройство захвата (N/2)Capture Unit) предназначено для
определения временных параметров внешних сигналов. Значение
выбранного GP таймера захватывается и запоминается в 2-уровневом
стеке FmFO, когда на соответствующих выводах фиксируется заданный
перепад уровней. Устройство захвата состоит из 3-х цепей CAPx (x=1, 2
или 3 для E) и VA; x=4, 5 или 6 для E) и VB).

293. Менеджеры событий DSP TMS320F2812

Устройство захвата обладает следующими особенностями:
1) имеется один 16-разрядный регистр управления захватом
(CAPCONx);
2) имеется один 16-разрядный регистр статуса FmFO (CAPFmFOx);
3) в качестве тактирования можно использовать любой GP таймер;
4) все входы синхронизируются таймерами CPU;
5) пользователь сам устанавливает, по какому уровню осуществлять
захват;
6) имеется 3 маскируемых флага прерывания.
Входы CAP 1/2 и CAP 4/5 также могут быть использованы как
входы схемы квадратурного анализа.

294. Менеджеры событий DSP TMS320F2812

В каждом E) и VM предусмотрено по 3 модуля сравнения (Compare
Unit). Эти устройства используют GP таймер 1 в качестве
синхронизатора, и могут вырабатывать до 6 выходных сигналов
сравнения (ШИМ-сигналов). Все 6 выходов работают независимо друг
от друга. Регистры сравнения дублируются, позволяя фиксировать
изменения ширины импульсов. Они позволяют снизить до минимума
программную загрузку ядра при операциях измерений длительности,
периодических выборок и генерации сигналов ШИМ.

295. Менеджеры событий DSP TMS320F2812

Схема квадратурного анализа используется для подключения
энкодера – оптического преобразователя направления и скорости
вращения. Выходными сигналами энкодера являются два сигнала типа
меандр, по частоте и фазовым сдвигам которых можно определить
направление и скорость вращения. Схема QE) и P по этим сигналам
формирует два сигнала: логический сигнал направления вращения
(DmR) и частотный сигнал скорости вращения (CLK).

296. Подключение внешних цепей АЦП DSP

Режим включения АЦП с внутренним опорным напряжением:
16-канальный вход АЦП
Аналоговые входы 0-3 В (относительно ADCLO)
К аналоговой земле
Тестовый вывод
24,9 кОм для fOSC=1…18,75 МГц; 20 кОм для fOSC=18,75…20 МГц
Резистор смещения внешней цепи
Положительный опорный вывод АЦП
Средний опорный вывод АЦП
Выводы опорного напряжения АЦП не
подключаются к внешним цепям
Питание АЦП (аналоговое напряжение 3,3 В)
Аналоговое питание АЦП
Питание опоры АЦП
Питание линий m/O АЦП
Цифровое питание АЦП
Питание АЦП (аналоговое напряжение 3,3 В)
Питание АЦП (аналоговое напряжение 3,3 В)
Питание АЦП (аналоговое напряжение 3,3 В)
Аналоговая земля
Питание ядра 1,8 В либо 1,9 В
К цифровой земле

297. Подключение внешних цепей АЦП DSP

Режим включения АЦП с внешним опорным напряжением:
16-канальный вход АЦП
Аналоговые входы 0-3 В (относительно ADCLO)
К аналоговой земле
Тестовый вывод
24,9 кОм для fOSC=1…18,75 МГц; 20 кОм для fOSC=18,75…20 МГц
Резистор смещения внешней цепи
Положительный опорный вывод АЦП
ккенпр
опро
Средний опорный вывод АЦП
Питание АЦП (аналоговое напряжение 3,3 В)
Аналоговое питание АЦП
Питание опоры АЦП
Питание линий m/O АЦП
Цифровое питание АЦП
Питание АЦП (аналоговое напряжение 3,3 В)
Питание АЦП (аналоговое напряжение 3,3 В)
Питание АЦП (аналоговое напряжение 3,3 В)
Аналоговая земля
Питание ядра 1,8 В либо 1,9 В
К цифровой земле
English     Русский Правила