Микроконтроллеры TMS320F28xx
Широкий температурный диапазон, технологичный корпус, относительно высокая производительность и развитый набор периферии делают эти микроконтроллеры подходящими для широкого класса задач. Рассмотрим основные характеристики контроллера TMS320F2812 как старшего представителя семейства F28xx:
- рабочая частота 150 МГц;
- питание 1,81,9 В для ядра, 3,3 В для портов ввода/вывода и программирования Flash;
- встроенный JTAG;
- 16×16 и 32×32 МАС, 16×16 двойной МАС (multiply accumulate, умножение с накоплением, базовая операция в задачах ЦОС);
- Flash-память до 128 кбайт × 16;
- ROM-память до 16 кбайт × 16 секторов;
- внутренняя память SARAM (static asynchronous random access memory, статическая ОЗУ), разделенная на блоки L0 и L1 по 4 кбайт × 16, H0 8 кбайт × 16, М0 и М1 по 1 кбайт × 16;
- 1 кбайт × 16 OTP (однократно программируемая память);
- конфигурируемый интерфейс к внешней памяти (только в F2812);
- программируемая PLL;
- встроенный задающий генератор;
- сторожевой таймер;
- 3 внешних прерывания;
- 128-битный защитный ключ, который защищает Flash/ROM/OTP и SARAM от несанкционированного доступа;
- три 32-битных таймера;
- периферия для управления двигателями;
- последовательные интерфейсы SPI, 2×SCI, eCAN, McBSP;
- 12-битный АЦП, 16 каналов, со скоростью преобразования 80 нс/12,5 MSPS;
- до 56 выводов общего назначения (GPIO);
- режимы энергосбережения (IDLE, STANDBY, HALT);
- типы корпусов 179 BGA, 128/176 LQFP;
- температурный диапазон: 40…+125 °С;
- стоимость от $18,40 в партии от 100 штук.
Ясно, что это довольно мощный контроллер, больше напоминающий DSP-процессор, с возможностями, традиционно присущими микроконтроллерам. Встроенная Flash-память, возможность исполнения кода из SARAM/ ROM/Flash, поддержка режимов энергосбережения и богатый набор интерфейсов позволяют повысить степень интеграции изделий и реализовывать сложные алгоритмы управления с применением более точной арифметики. Наличие порта McBSP [7] позволяет напрямую подключать производимые самой же компанией TI аудиокодеки, например, из серии AIC, которые давно славятся своим качеством. Наличие 32×32 МАС-операции расширяет динамический диапазон в представлении данных и упрощает портирование математических алгоритмов.
Использование цифровой обработки в цепях управления вместо традиционных аналоговых компонентов повышает стойкость системы к ошибкам, вызванным разбросом параметров, защищает от шумов, позволяет хранить контрольные параметры и легко организовать передачу данных, мониторинг системных сбоев, протоколирование, есть возможность автоматической калибровки.
Надо сказать, что F28xx уникальны в своем классе, и, пожалуй, не просто отыскать аналогичные по производительности и набору периферии контроллеры. Если мы посмотрим на продукцию STMicroelectronics, то ее микроконтроллеры не обладают DSP-ядром и будут проигрывать и по разрядности, и по частоте, как, например, 16-битные 64-МГц ST10F27x или 32-битные 60-МГц SPC56XX. Возможной альтернативой могут служить 32-битные микроконтроллеры от Renesas c RISC-ядром M32R/ECU, которые, впрочем, больше ориентированы на задачи управления, а не DSP-обработки. Производитель позиционирует эти контроллеры для автомобильной помышленности и применения в системах безопасности, управления звуком и прочих системах автомобиля. Тактовая частота процессоров с ядром M32R может достигать 160 МГц, наличие DSP-инструкций исчерпывается операцией МАС и 56-битным аккумулятором.
Интересно будет взглянуть и на микроконтроллеры Stellaris от компании Luminary Micro. Все они основаны на RISC-ядре Cortex-M3 и сочетают в себе богатую периферию, включая Ethernet (LM3S8971) или USB (LM3S5767) и высокопроизводительное ядро. Но и эти контроллеры ориентированы больше на решение контрольных задач, а не DSP. Аналог F28xx можно найти у Freescale, а именно серию DSP-контроллеров DSP56F8xx. Они, в целом, повторяют функциональность F28xx, однако уступают последним по производительности (максимально 80 МГц против 150 МГц, 16-битные MAC против 32-битных), а также по количеству доступной периферии и числу каналов АЦП. Также в них нет защиты от несанкционированного доступа к памяти. Но благодаря этому Freescale DSP56F8xx поставляются в более компактных корпусах.
Рассмотрим конкретные приложения для микроконтроллеров TMS320F28xx. Одно из них это инвертор в солнечных батареях [1]. В любой фотогальванической системе инвертор является критическим компонентом, ответственным за распределение энергии между модулем, батареей, нагрузкой и электроэнергетической системой. Инверторы, которые служат для преобразования постоянного напряжения в переменное, могут быть выполнены для работы с различными диапазонами напряжений и разной топологии. Они могут быть сделаны с использованием трансформаторов и без них. Помимо преобразования постоянного тока в переменный инверторы оптимизируют КПД системы, следят за зарядом батареи, защитой цепей от перегрузки.
Для реализации этих функций микроконтроллер должен быстро реагировать на внешние события с минимальной задержкой. Можно заметить, что в F28xx отсутствует контроллер прямого доступа к памяти. Это говорит о том, что он не предназначен для хранения и пересылки больших объемов данных.
Другое применение микропроцессоров F28xx это модем для передачи данных через электрические линии (PLC-модем). В [2] можно найти подробное описание архитектуры модема на основе макетной платы, позволяющей создать такой модем.
Еще одно интересное применение это различные гидравлические системы [3], которые характеризуются своей способностью быстро перераспределять давление жидкости в замкнутых контурах и широко используются во многих промышленных и индустриальных системах. Контроллеры в петле управления играют роль PID-регуляторов. Однако совершенствование алгоритмов управления приводит к необходимости использовать микроконтроллеры с возможностями DSP.
Эти контроллеры находят свое применение и в источниках питания постоянного тока [4], индуктивных датчиках линейных перемещений (LVDT) [5] и, безусловно, в управлении моторами. С изобретением высокоскоростных DSP-микроконтроллеров стала возможной реализация задачи бесконтактного управления моторами. Это достигается при помощи алгоритмов оценки желаемых величин в реальном времени, на основе электрических токов, протекающих в обмотках мотора. Такое решение позволяет уменьшить стоимость и повысить надежность устройства. В [6] можно найти подробное описание примера системы управления двигателем с регулируемым магнитным сопротивлением.
Тем, кто знаком с другими процессорами и средствами разработки от TI, не составит большого труда освоить данное семейство. Для разработки используется все тот же IDE CodeComposer Studio с симулятором и профилировщиком, а в качестве ядра ОС надежный и простой DSP/BIOS. Как всегда, TI предлагает надежные и функциональные макетные платы, на которых можно быстро и удобно разработать прототип своей системы. Заслуживает внимания набор TMS320F2812 eZdsp Start Kit (идентификатор комплекта TMDSEZD2812), стоимостью $395. В его состав входит встроенный в плату JTAG-эмулятор, а также привязанная к плате копия IDE CodeComposer.
Можно заметить, что высокопроизводительные вычислительные DSP-ядра, которые так хорошо получаются у компании TI, входят теперь и в состав микроконтроллеров, наделяя их дополнительной способностью выполнять сложные вычисления в реальном масштабе времени. Это постепенно усиливает конвергенцию цифровых и аналоговых технологий и повышает степень интеграции устройств.
Литература
- SPRAAE3 TMS320C2000 DSP Controllers: A Perfect Fit for Solar Power Inverters, www.ti.com
- SPRAA94 Spread-Frequency Shift Keying Power Line Modem Software Architecture, www.ti.com
- SPRAA76 DSP Control of Electro-Hydraulic Servo Actuators, www.ti.com
- SPRAAB3 Designing a TMS320F280x Based Digitally Controlled DC-DC Switching Power Supply, www.ti.com
- SPRA946 Signal Conditioning an LVDT Using a TMS320F2812 DSP, www.ti.com
- SPRA600 A Variable-Speed Sensorless Drive System for Switched Reluctance Motors. www.ti.com
- SPRU061 TMS320x281x Multichannel Buffered Serial Port (McBSP) Reference Guide, www.ti.com