Технические решения на базе цифровых сигнальных процессоров семейства DSP56800 компании Motorola

№ 8’2000
PDF версия
В статье рассматриваются технические решения на базе сигнальных процессоров семейства DSP56800, реализуемые в системах управления в реальном времени. Кратко представлены особенности системы команд, описание ядра, сравнительные характеристики данных DSP.

В статье рассматриваются технические решения на базе сигнальных процессоров семейства DSP56800, реализуемые в системах управления в реальном времени. Кратко представлены особенности системы команд, описание ядра, сравнительные характеристики данных DSP. Основное внимание уделено их использованию в качестве высокопроизводительных микроконтроллеров, основам построения на них различных систем управления, в том числе двигателями, и систем активного управления волновыми полями. В завершение проанализированы некоторые отладочные средства и вопросы технической поддержки в России.

Сигнальные процессоры в системах обработки информации

Развитие новых компьютерных технологий стало толчком к внедрению сложных вычислительных систем в различные области человеческой деятельности. Одним из важнейших применений вычислительной техники являются системы управления для генерации и обработки непрерывных потоков информации, основой которых, как правило, являются сигнальные процессоры. По заявлению представителей фирмы Motorola, в 2000 году более 90 % покупателей в США приобретут хотя бы одно изделие, содержащее DSP (Digital Signal Processor — цифровой сигнальный процессор). За двадцать лет развития данного сектора электронных компонентов производительность DSP возросла до нескольких сотен MIPS, а цена упала более чем на 90 %, что обусловливает их широкое проникновение практически во все отрасли.

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

Сравнительно невысокая цена, а также развитые средства разработки программного обеспечения позволяют легко внедрять подобные системы в различные области информационного обеспечения. Многие фирмы США и Европы предлагают свои DSP-системы, в которых используется от 1 до 8 DSP и от 128 Кбайт до 256 Мбайт памяти для данных и программ. Наибольшее распространение получили DSP фирм Analog Devices, Texas Instruments, Motorola, NEC, AT&T.

Выбор того или иного процессора — многокритериальная задача, однако следует отметить, что для приложений, требующих выполнения больших объемов математических вычислений (таких как цифровая фильтрация сигнала, вычисление корреляционных функций и т. п.), предпочтительнее использовать процессоры Analog Devices, поскольку их производительность на подобных задачах выше, чем у процессоров компаний Motorola и Texas Instruments. В то же время для задач, требующих выполнения интенсивного обмена с внешними устройствами (многопроцессорные системы, различного рода контроллеры), предпочтительнее использовать процессоры Texas Instruments, обладающие высокоскоростными интерфейсными подсистемами. Компания Motorola является лидером по объему производства сигнальных микропроцессоров, большую часть из которых составляют дешевые и достаточно производительные 16- и 24-разрядные микропроцессоры с фиксированной точкой. Расширенные коммуникационные возможности, наличие достаточных объемов внутрикристальной памяти для данных и программы, возможность защиты программы от несанкционированного доступа и поддержка режима энергосбережения делают эти микропроцессоры привлекательными для использования не только в качестве специализированных вычислителей, но и в качестве контроллеров в бытовых электронных приборах, в системах адаптивной фильтрации и т.д. Эти системы имеются во многих типах домашних и промышленных управляющих систем, таких как холодильники, автомобили, климатические системы и т. п. Решения от Motorola разработаны, чтобы отвечать увеличивающейся потребности в эффективности потребления мощности (КПД), а также легкости программирования и гибкости при проектировании электронных моторных систем. Подробнее остановимся на одном из перспективных семейств микропроцессоров фирмы Motorola — DSP56800, имеющем один из наилучших показателей «производительность/качество/стоимость».

Особенности архитектуры процессоров семейства DSP56800
и аппаратно-программные средства разработки

Семейство DSP56800 — это первая DSP-архитектура от Motorola, разработанная «с нуля» и обеспечивающая интеграцию мощной DSP-архитектуры с возможностями микроконтроллеров. При высокой производительности микропроцессоры этого семейства отличает низкая стоимость. Motorola занимает на рынке уникальную позицию, которая позволяет ей предоставлять как микроконтроллеры (MCUs), так и цифровые сигнальные процессоры (DSPs) путем программно-совместимого перехода и отвечать потребностям заказчиков по мере роста требований к эксплуатационным показателям. Архитектура семейства DSP56800 объединяет традиционные функции управления MCU с эффективностью DSP. Это было сделано, во-первых, для того, чтобы позволить управляемым электроникой моторным системам выполнять усовершенствованные алгоритмы, предоставляя точность, улучшенный КПД и надежность. Сейчас такой принцип нашел применение и в целом ряде других приложений. Сравнительные характеристики микропроцессоров семейства DSP56800 представлены в табл. 1.

Таблица 1. Сводные характеристики микропроцессоров семейства DSP58000
Наиме-нование ОЗУ (Prog-ram) ПЗУ (Prog-ram) ОЗУ (Data) ПЗУ (Data) ПЗУ заг-рузки Timer I/O Serial A/D PWM Напр. пита-ния(V) Час-тота на
ши-
не,
MHz
DSP56824 128х16 32Кх16 2Кх16 2Кх16 3
16-Bit
Timers
16 1 SPI 2.7 70
DSP56F801 1Kx16 8Kx16 Flash 1Kx16 2Kx16 Flash 2Kx16 Flash Один
счетве-
ренный
модуль
таймера
11 SPI
SCI
Два 4х12-bit АЦП 6×12-bit 3.3 80
DSP56F803 512×16 32Kx16 Flash 2Kx16 4Kx16 Flash 2Kx16 Flash Два
счетве-
ренных
модуля
таймера
16 SPI
SCI
CAN
Два 4×12-bit АЦП 6×12-bit 3.3 80
DSP56F805 512×16 32Kx16 Flash 2Kx16 4Kx16 Flash 2Kx16 Flash Два
счетве-
ренных
модуля
таймера
32 SPI2
SCI
CAN
Два 4×12-bit АЦП 2 6×12-bit 3.3 80
DSP56F807 2Кx16 60Кx16 Flash 4Kx16 8Kx16 Flash 2Kx16 Flash Четыре
счетве-
ренных
модуля
таймера
32 SPI2 SCI
CAN
4 4×12-bit АЦП 2 6×12-bit 3.3 80

Микропроцессоры данного семейства являются полностью 16-разрядными с длиной команд процессора в 16 бит, что обусловливает их несовместимость с другими семействами. Обобщенная структурная схема процессора семейства DSP568xx представлена на рис. 1.

DSP56824 имеет ОЗУ программ и данных 13,5Кх16 и возможность адресовать до 64Кх16 внешней памяти данных Х и 64Кх16 внешней памяти программ. В его структуре можно выделить: 16 линий GPIO, последовательные интерфейсы SPI и SSI, порт эмуляции OnCE с 8-уровневым FIFO-буфером, интерфейс внешней памяти (порт А), таймеры прерывания реального времени. При частоте 70 МГц процессор достигает производительности 35 MIPS.

Новые в данном семействе устройства — DSP56F801/3/5/7, образцы которых, как ожидается, будут доступны в конце года. Их цена составит порядка $5 в партиях от 10 000 штук. Они позиционируются для применения в системах управления двигателями и имеют flash-память программ, несколько каналов PWM с расширенными возможностями, многоканальный АЦП и контроллеры интерфейсов CAN, SCI и SPI.

«Чтобы разработать новые DSP для электронных двигателей, мы использовали в качестве рычага опыт, полученный нами за десятилетия тесного сотрудничества с ведущими клиентами в отраслях автомобиле- строения, промышленной и потребительской электроники, которые применяли свои микроконтроллерные устройства (MCU) для электронных моторных систем», — отметила Дебби Драйсдэйл (Debbie Drysdale), вице-президент и главный менеджер Подразделения стандартных DSP-продуктов компании Motorola. —Наши заказчики понимают, что не все приложения могут эффективно обслуживаться одним архитектурным решением, так что мы предлагаем некоторый ряд встраиваемых контроллеров наряду с программным обеспечением, усовершенствованными алгоритмами управления двигателем, образцовыми конструкциями и средствами разработки. Интеллектуальная технология DigitalDNA от Motorola является ключом, который позволяет проектировщикам систем существенно понизить стоимость, улучшить КПД и добавить гибкость к фактически всем системам управления двигателем. Качественная оценка микропроцессоров данного семейства по восьми базовым показателям приведена в табл. 2.

Мы рассмотрели семь основных причин в пользу выбора микропроцессоров данного семейства для построения узлов управления проводных и беспроводных коммуникаций, высокоскоростного управления, систем речевой обработки с низкой себестоимостью, аудиопроцессинга и систем управления технологическими системами (двигателями, приводами и т. п.). Рассмотрим более подробно основные характеристики микропроцессоров семейства DSP56800.

16-битное ядро

Семейство DSP56800 использует 16-битное ядро, которое представляет собой программируемый КМОП 16-битный процессор цифровой обработки сигналов, содержащий 16-битное АЛУ данных, 16-битное устройство генерации адресов, декодер программ, эмулятор на кристалле, объединенные шины и набор инструкций. Программная память содержит два функциональных модуля: память для программы начальной загрузки (ROM) и память для внешнезагружаемых программ. Как мы видим, ядро микропроцессора представляет собой композицию параллельно работающих функциональных устройств. Обобщенная структурная схема ядра представлена на рис. 2.

Особенности ядра следующие [1-8]:

  • производительность до 25 MIPS при работе на тактовой частоте 40 МГц;
  • устройство умножения с накоплением (MAC) разрядностью 16×16, выполняющее все операции за один командный цикл;
  • два 36-битных аккумулятора, включающих биты расширения для контроля переполнения результата;
  • 16-разрядное устройство барабанного сдвига;
  • набор параллельных инструкций с уникальными для DSP режимами адресации;
  • аппаратная поддержка циклов и репликации команд;
  • два входа внешних прерываний;
  • три 16-битных шины данных;
  • три 16-битных шины адреса;
  • 16-битная шина данных периферийных блоков;
  • набор инструкций позволяет поддерживать как операции DSP, так и функции контроллера;
  • получение компактного кода программного обеспечения в результате эффективной компиляции программы, написанной на языке С;
  • система мультикоманд: поддерживающая функции цифровой обработки сигналов и микроконтроллерного управления;
  • программный стек подпрограмм и прерываний с неограниченной вложенностью;
  • расширенные внутрикристальные средства эмуляции для непосредственной, независимой от скорости процессора отладки;
  • режимы пониженного энергопотребления WAIT и STOP.

Контроллер программ, устройство генерации адресов и АЛУ данных имеют собственные регистры и логику управления, что позволяет им работать параллельно, независимо друг от друга. Для повышения производительности используется конвейерная обработка, что упрощает параллельную работу функциональных моделей и снижает время выполнения каждой инструкции в отдельности.

Подсистема обработки команд и данных

Набор инструкций сигнальных процессоров данного семейства является самым лучшим среди других дешевых архитектур DSP и разработан для программирования задач контроллерного типа. Инструкции общего назначения в стиле микроконтроллера реализуют мощные режимы адресации и возможность манипуляции битами.

АЛУ данных выполняет все арифметические и логические операции с данными. Имеется возможность выполнения в одном цикле таких операций, как умножение, умножение с накоплением, сложение, вычитание, сдвиги и логические операции.

Устройство генерации адреса (рис. 4) представляет собой модуль, предназначенный для вычисления адреса и состоящий из блока арифметики для комплексного вычисления адреса и блока инкрементирования/декрементирования для простых вычислений. Вычисление адреса осуществляется модульным методом с автоматическим округлением при необходимости.

Программный контроллер

Программный контроллер предназначен для выполнения предвыборки и декодирования инструкций, управления аппаратными циклами и обработки прерываний. Структурная схема программного контроллера представлена на рис. 5.

Назначение каждого из регистров подробно освещено в справочной литературе.

Подсистема ввода/вывода

Интеллектуальная подсистема ввода/вывода, основу которой составляют порты ввода/вывода общего назначения (GPIO), имеет возможность гибкой переконфигурации. Имеющийся интерфейс может быть настроен как непосредственно для ввода/вывода, так и для мультиплексирования между периферийными блоками микропроцессора и GPIO, а также в качестве выводов подсистемы прерываний. Все это обусловливает компактность и гибкость конструктивно-функциональной реализации.

Средства разработки и отладки программного обеспечения

Совсем недавно для создания программного обеспечения для систем управления на базе DSP было достаточно ассемблера, сегодня же ситуация кардинально меняется, смещая центр тяжести в сторону программ-компиляторов, функционирующих в среде реального времени.

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

Для создания ПО нового поколения (XXI века) для DSP-процессоров нового семейства Star*Core, фирма Motorola пошла на расширение соглашения с британской фирмой Signals&Software. Сегодня активно ведется разработка ПО для пейджинговых систем, сотовых телефонов и систем персональной связи. По данному соглашению предусматривается создание широкого круга программного обеспечения, в том числе и для кодеров CDMA, TDMA-стандартов, 3G систем, модемов и т. п. Такой же подход прослеживается при создании ПО и для других семейств сигнальных процессоров. Фирма Motorola создает программно-аппаратные комплексы разработки приложений для процессоров цифровой обработки сигналов. Наиболее распространенным среди них ввиду своей простоты и приемлемой стоимости является EVM Kit, более сложным комплексом для разработки приложений — ADS Kit.

В кооперации с Metrowerks и другими независимыми компаниями Motorola предоставила среду разработки ПО для микропроцессоров, сочетающих функции MCU и DSP. Она включает усовершенствованную генерацию программного обеспечения и средства обнаружения ошибок, оценочные платы и платы для разработки систем, а также интегрированные программные модули. Предложение включает набор средств разработки программ (SDK) и прикладной интерфейс (API), делающие возможной переносимость приложений между MCU и DSP, сохраняя вложения клиентов в наследуемый код.

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

Возможности встроенного эмулятора на кристалле (OnCE) обеспечиваются через отладочный порт, сформированный по стандарту JTAG. Это позволяет проводить отладку встроенных систем в реальном масштабе времени. Имеется возможность устанавливать аппаратные и программные точки останова, просматривать и изменять содержимое регистров и памяти, двигаться по шагам или перешагивать через последовательности инструкций в приложениях.

Технический консалтинг и поставка отладочных средств по микропроцессорам данного семейства на российском рынке осуществляется фирмой КТЦ-МК (www.cec-mc.ru). Разнообразные университетские и образовательные программы фирмы Motorola позволяют широко знакомить студентов радиотехнических специальностей университетов с последними достижениями в области микро- электроники, конструирования и производства электронных блоков на основе элементной базы производства Motorola.

Области применения процессоров семейства DSP56800

Процессоры семейства DSP568XX используются в различных мультифункциональных системах управления (управление двигателями, энергоустановками), в средствах связи, в системах активного управления волновыми полями различной природы и т. п.

Так, например, в области связи (рис. 6) приложения, использующие механизм сообщений, такие как двухволновые пейджеры или портативное двухволновое цифровое радио, используют формат PCS — персональное обслуживание связи. Для этих приложений, требующих наличия сигнального процессора для обработки данных в реальном времени и микроконтроллера для управления периферийными устройствами, идеально подходит семейство DSP56800, так как обе эти функции могут быть выполнены на одном устройстве.

Например, сигнальный процессор выполняет операции голосового кодирования и декодирования, управление протоколами и предварительную коррекцию ошибок. DSP-56800 с производительностью 20 MIPS может выполнять также функции модуляции и демодуляции, если это необходимо. Эффективные конструктивные решения семейства DSP56800 снижают энергопотребление.

Решения для электронных систем, основанных на двигателях

Для повышения эффективности систем управления двигательными системами: бесщеточными прямого тока (Brushless DC, BLDC), с постоянным магнитом (Permanent Magnet, PM), индукционными переменного тока (AC Induction, ACIM) и переключаемого магнитного сопротивления (Switched Reluctance, SR), в последнее время все больше используются интеллектуальные цифровые контроллеры, которые объединяют в себе функции как MCU, так и DSP. Это дает возможность создавать максимально гибкие эффективные решения, начиная от простых систем с разомкнутым циклом управления до адаптивных и нейроадаптивных систем. Как отметил Дэйвид Тризенберг (David Triezenberg), директор по исследованиям и разработкам из Franklin Electric: «Что мы приобрели с микроконтроллерами от Motorola — так это передовую архитектуру, обладающую чрезвычайно удачным и гибким модулем широтно-импульсной модуляции (PWM)». Устройства DSP56800 от Motorola обладают множеством особенностей, разработанных для соответствия требованиям к системам, использующих двигатели, включая: интегрированную FLASH-память, оптимизированные для управления двигателями усовершенствованные модули ШИМ (PWM), интегрированные, со смешанными сигналами, периферийные устройства. В дополнение к этому, семейство DSP56800 обладает синхронизацией АЦП и ШИМ. Все эти функции разработаны с целью предоставления проектировщикам систем управления двигателями возможности оптимизировать алгоритмы.

Применение процессоров семейства DSP568XX в области систем активного гашения шума

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

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

В системах активного гашения использование DSP позволяет значительно повысить качественные характеристики и снизить общую стоимость систем. Обработка оцифрованного аналогового сигнала, полученного от датчиков шумового поля, а также оперативное изменение параметров фильтрации являются как раз теми задачами, где преимущества DSP перед методами аналоговой фильтрации очевидны. Для решения этой задачи необходима скоростная обработка звуковых сигналов, чтобы полученная «противофаза» шумового сигнала не имела фазового сдвига.

Приведем несколько конкретных примеров систем активного управления волновыми полями. Так, для повышения индивидуальной акустической защиты от низкочастотных шумов используются активные наушники (рис. 8).

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

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

Гибридная система «САГ — аудио» использует метод подавления интерференции музыкальных сигналов, позволяющий исключить аудиосигнал из сигнала датчика ошибки гашения. Это требует применения специальных LMS-алгоритмов настройки фильтров, позволяющих точно оценить уровень аудиосигнала на выходе датчика ошибки. Необходимо, чтобы метод подавления интерференции позволял адаптивно распознавать музыкальные составляющие и выделять их из сигнала ошибки гашения. Без использования метода подавления интерференции время сходимости LMS алгоритма значительно увеличивается, и снижение внешнего шума невелико. Применение метода позволяет не только повысить на 3–5 дБ эффективность гашения, но и сократить время сходимости алгоритма (рис. 9).

Выводы

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

Литература

  • Корнеев В. В., Киселев А. В. Современные микропроцессоры — М.: Нолидж. 2000. 320 с. ил.
  • Шахнов В. А., Власов А. И., Кузнецов А. С., Поляков Ю. А. Нейрокомпьютеры — архитектура и схемотехника. М.: Машиностроение. 2000. 64 с. (Библиотечка журнала информационные технологии № 9).
  • Шахнов В. А., Власов А. И., Кузнецов А. С., Поляков Ю. А. Нейрокомпьютеры — архитектура и реализация// ChipNews. № 6. 2000. С. 24–31.
  • Техническое обеспечение цифровой обработки сигналов. Справочник/Куприянов М. С., Матюшин Б. Д., Иванова В. Е. СПб.: «Форт», 2000. — 752 с.
  • Сайтр Рынок Микроэлектроники
  • Фирма КТЦ-МК
  • http://cdl.iu4.bmstu.ru.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *