Новое семейство микроконтроллеров компании STMicroelectronics с ядром ARM
В статье производится обзор основных характеристик нового семейства 32-разрядных флэш%микроконтроллеров компании STMicroelectronics, разработанных на основе ядра ARM966E-S.
Компания STMicroelectronics первой объединила возможность связи по Ethernet, процессорное ядро ARM9E, встроенное ОЗУ (SRAM) и флэш-память в семействе универсальных флэш-микроконтроллеров. Серия флэш-микроконтроллеров STR910F с ядром ARM и Ethernet позволяет снизить издержки при создании сетевых приложений и открывает разработчикам множество новых возможностей по внедрению программ встроенного управления в недорогих локальных сетях (LAN) или узлах Internet.
Серия микроконтроллеров STR910F разработана специально для удовлетворения все возрастающего cпроса рынка на сетевые Ethernet приложения встроенного управления. Компания ST имеет лицензию на весь ряд процессорных ядер компании ARM и последовательно применяет их в своих микроконтроллерах. Новая серия естественным образом расширяет популярное семейство STR7XX микроконтроллеров на основе ядра ARM7TDMI. Новое семейство микроконтроллеров нацелено на широкий круг применений: кассовые терминалы и их периферийные устройства, торговые автоматы, устройства для управления и автоматизации производства, сетевые шлюзы с последовательным протоколом, устройства автоматизации управления зданиями и сооружениями, системы защиты и видеонаблюдения, переносная контрольно-измерительная аппаратура и др. Кроме того, эти приложения также требуют большую встроенную флэш-память для программ и данных, а также ОЗУ типа SRAM.
В микроконтроллерах STR910F используется процессорное ядро ARM966E-S, которое дает ощутимые выгоды по сравнению с ядром ARM7TDMI. Ядро ARM966E-S обращается к блокам памяти программ и данных с использованием двух отдельных внутренних шин, что обеспечивает одновременный доступ и к коду, и к данным. Каждый из имеющихся блоков памяти связан с ядром через оптимизированный интерфейс TCM (Tightly-Coupled Memory), обеспечивающий быстрыйдоступ к памяти. Используя такую архитектуру, STR910F размещает высокоскоростной пакет флэш-памяти в буфере команд TCM и SRAM нулевой латентности в буфере данных TCM. В результате достигается пиковая производительность выполнения кода в 96 MIPS при тактовой частоте в 96 МГц (самый высокий показатель пиковой производительности для универсальных флэш-микроконтроллеров на основе ядра ARM) и очень быстрое перемещение данных между ядром центрального процессора и ОЗУ (SRAM). В отличие от ARM966E-S процессорное ядро ARM7TDMI имеет одну шину для доступа к команде и блокам памяти данных, что делает одновременный доступ невозможным.
Дополнительно ARM966E-STM ядро поддерживает однотактные команды цифровой обработки сигналов (DSP), позволяя микроконтроллеру STR910F обеспечивать требования как по функции управления, так и по цифровой обработке сигналов, что дает ему существенные преимущества по сравнению с традиционными решениями, основанными на отдельном процессоре DSP и процессоре управления. Все эти преимущества ядра ARM966E-S выдвигают семейство микроконтроллеров STR910F на верхнюю ступень имеющихся на рынке 32-разрядных микроконтроллеров с встроенной флэш-памятью.
Функциональная блок-схема микроконтроллера SRT91xF приведена на рис. 1 [1].
Микроконтроллеры отличаются друг от друга размерами флэш-памяти и ОЗУ, наличием тех или иных специальных функций и, следовательно, числом выводов корпуса. Например, в STR910 нет интерфейса USB, MAC Ethernet нет в STR910F и STR911F, а микросхемы в корпусе LQFP80 не имеют интерфейса внешней памяти. Основные характеристики нового семейства микроконтроллеров STR9 компании ST приведены в таблице 1, а система обозначений устройств показана на рис. 2.
Традиционно ядра ARM9E использовались в микропроцессорах без встроенного ПЗУ (ROMless), со сложным модулем управления памятью (MMU), работающим с внутренним кэшем и внешним синхронным ОЗУ (RAM), которое полностью загружалось при начальной загрузке от внешней флэш-памяти. Однако микроконтроллер STR910F разрабатывался для извлечения множества преимуществ от ядра ARM9E без привлечения традиционного кэша и внешних блоков памяти, а на основе реализации концепции компактного устройства микроконтроллера с флэш-памятью. Вместо MMU с кэшем, микроконтроллером STR910F поддерживается простая модель памяти, хорошо подходящая для компактных операционных систем реального времени (RTOS). В нем также используются инновационный акселератор памяти с очередью предвыборки из памяти Pre-Fetch Queue (PFQ) и сегментное кэширование Branch Cache (BC). Такая архитектура позволила увеличить производительность при выполнении непоследовательных команд (например, условного или безусловного перехода) из информационных пакетов флэш-памяти и улучшить процесс управления в реальном времени по сравнению с традиционной архитектурой памяти с кэш.
Для поддержки использования RTOS и протоколов TCP/IP микроконтроллер STR910F имеет достаточно большие блоки памяти, которые способны обеспечить довольно сложные алгоритмы приложений сетевого управления. Размер памяти ОЗУ (SRAM) достигает 96 кбайт и является одним из самых больших среди всех многоцелевых ARM микроконтроллеров с флэш-памятью из имеющихся сегодня на рынке, оно хорошо подходит для буферизации больших пакетов, передаваемых по высокоскоростным каналам последовательной связи. Уникальна возможность защиты ОЗУ с использованием батарейки или суперконденсатора, соединяемых со специальным входным контактом микросхемы, при которой для защищенных приложений содержание SRAM может быть автоматически уничтожено при поступлении на входной вывод STR910F сигнала об обнаружении вмешательства со стороны. Размер флэш-памяти достигает 544 кбайт. Она сконфигурирована в два функционально равноценных банка, что обеспечивает возможность считывания одного банка во время записи другого в процессе внутрисхемного перепрограммирования приложения с использованием удаленных программно-аппаратных средств, а также эмуляцию СППЗУ (EEPROM). Как ОЗУ, так и каждый из блоков флэш-памяти, может использоваться или для команд, или для данных.
В микроконтроллере STR910F имеется несколько высокоскоростных каналов связи. Их обеспечивают до девяти полнофункциональных каналов прямого доступа к памяти (DMA), которые позволяют перемещать данные между внешними устройствами и памятью, почти не используя ресурсы центрального процессора, освобождая тем самым его для исполнения различных задач управления в реальном времени. Контроллеры DMA эффективно допускают на правах мастера ОЗУ внешние устройства к расширенной шине с высокой производительностью (AHB) и к расширенной шине периферии (APB). ОЗУ подключается к ЦП или к шине АРВ через специальный регистр арбитра конфликтных ситуаций, что позволяет образовать хорошо налаженный поток данных. Например, контроллер DMA Ethernet может поддерживать скорость передачи необработанных фреймов Ethernet между МАС (Media Access Controller) и ОЗУ до 91 Мбит/с при 10% загрузке центрального процессора.
Кроме MAC Ethernet серия микроконтроллеров STR910F поддерживает полный набор периферийных устройств. Они включают полноскоростной USB, CAN, три UART/IrDA, два SPI, два I2C, восьмиканальный 10-разрядный АЦП, четыре 16-разрядных таймера, блок управления 3-фазным электродвигателем переменного тока, комплект супервизорных функций с детектором понижения напряжения и сбросом, полнофункциональный генератор часов реального времени, интерфейс внешней памяти, внутрисхемный отладчик ETM9 и интерфейс трассировки, а также до 80 входов/выходов (I/O), толерантных к напряжению 5 В.
Усилиями компании в области управления питанием семейство микроконтроллеров STR910F обеспечено внушительными возможностями по снижению потребления тока и супервизорными функциями. Потребляемая мощность динамично регулируется центральным процессором, который постоянно имеет доступ к логике. Баланс между требуемой производительностью и потребляемой мощностью обеспечивается путем изменения масштаба системы и тактовой частоты генератора. Микроконтроллер имеет несколько режимов снижения потребляемой мощности, включая режим Sleep, в котором типовое потребление тока составляет всего 55 мкА. При отключении основного источника питания, или его отсутствия из-за повреждения, в микроконтроллере STR910F питание автоматически переключается на батарейное, что обеспечивает сохранность генератора часов реального времени в активном состоянии. Встроенные часы реального времени обладают возможностями, которые обычно присущи только внешним устройствам часов реального времени. Они имеют полномасштабный календарь и функции защиты с выдачей временной метки при появлении на входном штырьке сигнала несанкционированного доступа. Они замедляются при снижении тока питания от батарейки менее чем 1 мкА и работают в полном диапазоне рабочих температур от –40 до +85 °C. Указанные особенности делают выбор микроконтроллера STR910F удачным решением для переносных, питающихся от батарейки и защищенных приложений.
Хорошей традицией компании ST становится обеспечение новых изделий сразу с началом их производства соответствующими программно-аппаратными средствами для оценки и отладки, а также всеми видами документации. В настоящее время для пользователей микроконтроллеров STR910F имеется всесторонняя поддержка как непосредственно от компании ST, так и от третьих фирм, поставляющих недорогие стартовые комплекты отладочных средств: Hitex, IAR, Keil и Raisonance. Комплекты включают компилятор и отладчик (с ограничением по размеру кода), имеют JTAG отладчик и кабель для программирования, примеры исполняемых кодов и все необходимые аппаратные средства для начала разработки. Компания ST поставляет оценочную плату STR910-EVAL для экстенсивного освоения и аппаратной оценки всех интерфейсов и портов I/O микроконтроллера STR910F. Демонстрационные исполняемые коды для Ethernet, USB, CAN и всех других основных функций кристалла базируются на общей для всего семейства библиотеке абстрактного аппаратного уровня (HAL) и доступны бесплатно от ST. Для помощи по конфигурированию удобной матрицы вводов–выводов и функций синхронизации микроконтроллера STR910F компания ST предлагает использовать CAPS (программное обеспечение конфигурирования и программирования). Это бесплатное программное средство, использующее графический метод выбора функции выводных контактов микроконтроллера и распределение тактовой частоты. CAPS автоматически генерируется файл заголовка на Си, в котором отражаются все выбранные функции выводных штырьков и тактовой синхронизации, что экономит время и предотвращает ошибки. Поддержка RTOS и TCP/IP осуществляется с помощью средств, которые предоставляются третьими компаниями, например, CMX, Micrium, Segger, Keil и NexGen Software, число которых существенно увеличится к концу этого года. Перечень рекомендуемых компанией ST отладочных средств для рассматриваемых микроконтроллеров приведен в таблице 2.
В настоящее время в состав семейства входят шесть устройств, все они изготавливаются по бессвинцовой технологии и упаковываются в корпуса LQFP80 и LQFP128. Микроконтроллеры в корпусе LQFP128 имеют независимый интерфейс Ethernet (MII) и интерфейс шины внешней памяти. Размер ОЗУ лежит в диапазоне от 64 K до 96 кбайт, а диапазон флэш памяти от 288 К до 544 кбайт. Ядро работает от напряжения питания 1,8 В ±10%, напряжение на портах I/O составляет от 2,7 до 3,6 В во всем рабочем диапазоне температур от –40 до +85 °C. Производитель обещает стартовую цену микроконтроллеров $6,99 для партии 10 тысяч (STR910FM32X6).
Обобщая вышеизложенное, можно заметить, что в новом семействе микроконтроллеров компания ST использовала все свои наилучшие достижения за последние годы. Прародителями нового семейства можно считать семейство 8-разрядных микроконтроллеров mPSD, из которого взяты многие решения по согласованию высокой производительности ядра с более низкоскоростной флэш-памятью и взаимозаменяемость банков памяти, а также семейство 8/16-разрядных микроконтроллеров SRT7 с его уникальной дуальной архитектурой внутренних шин и множеством других особенностей. Дополнительную информацию о новом семействе ARM микроконтроллеров ST можно получить на сайте компании http://mcu.st.com, на котором оперативно появляется множество необходимой разработчикам документации и программных средств, а также в Объединенном технико-консультационном центре по микроэлектронике info@otkcm.ru.
Литература
- STR91xF: ARM966E-S™ 16/32-Bit Flash MCU with Ethernet, USB, CAN, AC Motor Control, 4 Timers, ADC, RTC, DMA. / PRELIMINARY DATA, Rev 1, April 2006, STMicroelectronics group of companies.