
- •Кафедра электроники цифровая обработка сигналов
- •© Нао «Алматинский институт энергетики и связи» , 2009 г.
- •Лекция №2. Классы и типы цифровых фильтров
- •Нормированной ачх называют соотношение
- •Лекция №4. Нерекурсивные цепи с линейной фазочастотной характеристикой
- •Лекция №5. Дискретное преобразование Фурье
- •Лекция №6. Квантование в цифровых системах
- •Лекция №7. Архитектурные особенности цифровых сигнальных процессоров
- •Лекция №8. Цифровые сигнальные процессоры с фиксированной запятой
- •Список литературы
- •10. Петрищенко с.Н. Цифровая обработка сигналов: конспект лекций для магистрантов специальности 6n0719 – Радиотехника, электроника и телекоммуникации. - Алматы: аиэс, 2009. – 36 с.
- •Содержание
- •Цифровая обработка сигналов
- •050013, Алматы, Байтурсынова, 126
Лекция №7. Архитектурные особенности цифровых сигнальных процессоров
Содержание лекции: назначение и типы сигнальных процессоров, особенности их архитектуры , методы параллельной обработки.
Цель лекции: изучить типы цифровых сигнальных процессоров, научиться понимать и правильно использовать ключевые архитектурные особенности, а также современные методы параллельной обработки сигналов.
Сигнальные процессоры (СП) – это устройства, предназначенные для формирования, преобразования и обработки сигналов информационных и связных систем и сетей в реальном времени. Главная их особенность – обработка больших массивов данных. По виду обрабатываемых сигналов и элементной базе СП делятся на аналоговые и цифровые.
Цифровые сигнальные процессоры (ЦСП) могут выполняться в виде специализированных (непрограммируемых) сверхбольших интегральных схем (СБИС) или как универсальные СБИС. К специализированным процессорам относятся, например, процессор быстрого преобразования Фурье (БПФ), синтезатор частот, кодер и т.д. К универсальным процессорам относятся:
логические схемы (ПЛИС – программируемые логические интегральные схемы);
программируемые цифровые сигнальные процессоры иностранная аббревиатура которых DSP ( Digital Signal Processor); в дальнейшем изложении термин «программируемые» для краткости будет опущен;
транспьютеры.
Преимуществом универсальных процессоров перед специализированными является возможность реализации на них разнообразных устройств при относительно невысокой цене кристалла.
К ЦСП по архитектуре и производительности наиболее близки транспьютеры, позволяющие производить обработку больших информационных массивов. Транспьютер имеет процессор с архитектурой RISC ( Reduced Instruction Set Computer), т.е. ядро с сокращенным набором команд, быстродействием более миллиона команд в секунду (MIPS) и аппаратными средствами, обеспечивающими параллельные вычисления. Транспьютер содержит четыре высокоскоростных канала связи, которые служат для обмена сообщениями с другими транспьютерами. Эти четыре канала позволяют соединять транспьютеры между собой, организуя различные транспьютерные сети со сложными соединениями. На основе транспьютеров строятся распределенные системы.
ПЛИС проще и дешевле ЦСП и транспьютеров, но требуют много периферийных устройств и устройств ввода-вывода. Производительность их меньше, чем у ЦСП.
Наибольшее распространение получили программируемые ЦСП, которые явились результатом развития микропроцессоров, но отличаются от них архитектурой, приспособленной для решения задач цифровой обработки сигналов. Основные требования, предъявляемые к ЦСП:
быстрое выполнение арифметических операций (высокое быстродействие);
высокая производительность при реализации алгоритмов с большим объемом вычислений в реальном времени ( период дискретизации больше времени обработки алгоритма).
Эти требования выполняются, благодаря использованию следующих архитектурных особенностей ЦСП:
применение гарвардской архитектуры;
использование конвейерного режима работы;
наличие специального устройства умножения;
введение спецкоманд;
организация короткого командного цикла.
Гарвардская архитектура позволяет поднять быстродействие и гибкость использования. В классическом варианте она предполагает хранение программ и данных в разных запоминающих устройствах, что позволяет совмещать во времени выборку и исполнение команд. Модифицированная гарвардская архитектура допускает обмен между памятью программ и памятью данных, что расширяет возможности процессора, при этом отпадает необходимость в отдельном постоянном запоминающем устройстве (ПЗУ) для хранения коэффициентов. Наличие шины данных (ШД) и шины команд (ШК) увеличивает общую производительность.
Персональные ЭВМ и традиционные микропроцессоры имеют неймановскую архитектуру, при которой происходит пошаговое, потактно-последовательное выполнение команд, при этом данные и команды передаются по одной шине.
Примеры гарвардской и неймановской архитектур представлены на рисунке 11.
Процессор
Адрес
Команды Адрес Данные
Память Память
Программ данных
Процессор
Адрес Данные
Команды
Память данных и команд
Рисунок 11
Конвейерный режим используется для сокращения длительности командного цикла (времени выполнения команды) и повышения производительности ЦСП. В зависимости от типа ЦСП конвейер может состоять от 2-х до 11-ти этапов Это означает, что 2-х каскадный конвейер одновременно может обрабатывать две команды, а 11-и каскадный – одиннадцать команд. На рисунке 12 показан пример 3-х каскадного конвейерного режима, где предварительную выборку, дешифрирование и исполнение команды можно осуществлять независимым образом. В каждом командном цикле задействованы три разные команды.
Предварительная
Выборка
Дешифрирование
Исполнение
N N+1 N+2
N-1 N N+1
N-2 N-1 N
Рисунок 12
Из рисунка 12 видно, что в ходе N-го цикла процессор может одновременно извлекать из памяти N-ю команду, декодировать (N - 1)-ю команду и в то же время выполнять (N - 2)-ю команду.
Основными численными операциями в цифровой обработке сигналов являются умножение и сложение. Операция умножения в программной форме достаточно трудоемкая операция, поэтому она реализуется в ЦСП с плавающей или фиксированной запятой аппаратно на специальном устройстве, которое называется аппаратным умножителем-накопителем. Аппаратный умножитель позволяет выполнять операцию умножения за один командный цикл. Например, в процессоре с фиксированной запятой такой умножитель за один такт (обычно 25 нс) принимает два 16-битовых дробных числа, представленных в форме дополнения до двух, и вычисляет их 32-битное произведение. На рисунке 13 изображена типичная конфигурация умножителя-накопителя.
Данные Х
Регистр X
16
32
Р
∑
Асс
Данные Y
Регистр Y
16
32
Рисунок 13
Из рисунка 13 видно, что умножитель имеет пару входных регистров X и Y, которые содержат входы умножителя, и 32-битовый регистр произведения Р (product – произведение), который содержит результат умножения. Выход регистра Р соединяется с накопителем двойной точности, который состоит из сумматора ( ∑ ) и регистра-аккумулятора (Acc), в котором накапливаются произведения._
За счет применения спецкоманд число командных циклов можно резко сократить. Например команда LTD позволяет выполнить за один цикл три команды: загрузки (LT), задержки (DMOV) и сложения (APAC). В современных ЦСП есть команда MACD, которая позволяет за один командный цикл выполнить четыре команды: загрузки (LT), задержки (DMOV), сложения (APAC) и умножения (MPY).
В настоящее время ЦСП имеют длительность командного цикла < 200 нс. В таблице 5 представлены временные циклы некоторых ЦСП, выпускаемых американской фирмой Texas Instruments серии TMS320.
Т а б л и ц а 5
Процессор |
Время цикла, нс |
TMS320C10 |
200 |
TMS320C25 |
125 |
TMS320C30 |
75 |
TMS320C541 |
25 |
TMS320C67* |
6 |
TMS320C6202 |
4 |
Малость командного цикла делает ЦСП удобным средством решения многих прикладных задач. Если в системах управления не требуется высокой скорости обработки (частота дискретизации примерно 1 кГц), то для задач с высокой частотой дискретизации порядка 14 – 100 мГц ( в системах обработки телевизионных изображений), пригодны ЦСП последних поколений, обладающие малым командным циклом, чтобы обеспечить обработку в реальном времени.
Для повышения вычислительной эффективности ЦСП используются следующие их новейшие архитектуры:
1) SIMD (single instruction, multiple data – одна команда, много данных); в процессорах с такой архитектурой имеется несколько трактов передачи данных и операционных блоков, поэтому команда может передаваться нескольким операционным блокам для обработки блоков данных одновременно, увеличивая число операций, выполняемых за один такт;
2) VLIW (very large instruction word – командные слова сверхбольшой длины); эти слова состоят из нескольких коротких команд, для выполнения которых за один такт требуется несколько операционных блоков, функционирующих параллельно;
3) суперскалярная обработка позволяет выполнять несколько команд за один такт при использовании параллелизма на уровне команд.