Пожалуй, с точки зрения разработчика систем, наиболее критичными задачами при создании микроконтроллера (впрочем, как и любого электронного, да и не только электронного, прибора) являются уменьшение его потребляемой мощности и увеличение функциональных возможностей. Требования к повышению эффективности энергопотребления современных устройств не случайны. Это связано в первую очередь с ростом популярности систем с батарейным питанием и зависимостью их эксплуатационной пригодности от срока службы батарей. А в связи с экспоненциальным ростом стоимости энергии необходимо уменьшать энергопотребление даже тех приборов, которые работают от сети.
По существу, увеличение эффективности энергопотребления и уменьшение потребляемой мощности МК достигают за счет совершенствования их рабочих характеристик (для выполнения требующих большого объема вычислений сложных алгоритмов, позволяющих повысить эффективность работы) и расширения их возможностей взаимодействия (например, обеспечение связи интеллектуального измерителя мощности с интеллектуальными бытовыми приборами). Эти тенденции стимулируют рост интереса пользователей к МК с новыми архитектурами.
Большое значение при выборе МК имеет набор периферийных устройств микросхемы. Многие современные МК располагают разнообразными портами ввода-вывода, таймерами и последовательными интерфейсами. Можно найти и микросхемы с 10/1000 Base-T Ethernet УДС, интерфейсами CAN, USB, ВЧ-передатчиками и драйверами графических устройств. Появление таких МК позволило не только снизить стоимость системы, но и сократить время и трудозатраты на ее разработку.
На рынке также представлены МК, в которых помимо разнообразных периферийных устройств имеются логические блоки, позволяющие реализовывать ряд критических функций аппаратными средствами. Так, в МК типа AT91CAP7L компании Atmel на базе ядра ARM7TDMI предусмотрена вентильная матрица, содержащая 200 тыс. логических вентилей. Матрица предназначена для реализации IP-функций, дополнительных процессорных ядер или уникальной периферии, необходимой заказчику. Наличие программируемой вентильной матрицы позволило снизить до минимума затраты на подготовку производства систем на основе таких МК.
Важный фактор при разработке систем на базе микроконтроллеров – объем и пропускная способность встроеннной памяти. Сегодня микросхемы МК могут содержать флеш, однократно программируемую память, постоянную память, ЭСРПЗУ (в основном для хранения программ) и СОЗУ (для хранения данных). Вместе с тем в важных и широко распространенных МК флеш-память благодаря возможности "заводского программирования" и репрограммирования в полевых условиях активно вытесняет однократно программируемую и постоянную память, которая до последнего времени была основным запоминающим устройством МК в бытовой аппаратуре с батарейным питанием. А во всех выпускаемых компанией NEC МК программы теперь хранятся только во флеш-памяти ("полностью флеш-МК").
По данным исследовательской компании Semico Research, в 2007 году на долю флеш-МК приходилось 50% продаж микроконтроллеров, и применение флеш-памяти во всех типах МК (от четырехразрядных до 32-разрядных) ежегодно расширяется. Хотя в первом квартале 2009 года продажи МК существенно сократились, в основном из-за падения спроса на них в секторе автомобилестроения и резкого снижения средней цены продажи, уже во втором квартале ожидается оживление их рынка. В 2010 году, согласно прогнозам, рынок увеличится на 14,3% и составит 13,8 млрд. долл.
При оценке типа памяти МК необходимо учитывать используемый язык кодирования, особенно в связи с тенденций к программированию встраиваемых МК на языках высокого уровня, в частности на языке Си. Этот язык обеспечивает большую мобильность кода и библиотек и тем самым позволяет расширять контент программных средств без повышения его стоимости. Правда, при этом требуется большой объем ОЗУ.
Какова бы ни была причина перехода к МК с новыми архитектурами, при принятии такого решения необходимо учитывать и степень сложности переноса сложных IP-блоков на новую архитектуру. Это значит, что следует убедиться в том, что для новой архитектуры предусмотрены нужные средства проектирования и поддержки таких блоков.
Каков выбор?
Снижение потребляемой мощности
Как правило, выбор МК основан на требуемом для конкретного применения "размере машины". Для применения в чувствительных к цене бытовых устройствах с батарейным питанием пригодны дешевые четырехразрядные МК, подобные микроконтроллерам семейств OLMS63K и 64K компании Oki Semiconductor или MARC4 компании Atmel. Правда, разработка кода для четырехразрядных архитектур достаточно сложная задача, и работа с 4-бит командами и данными ограничивает вычислительные возможности системы.
На рынке уже давно имеются разнообразные восьмиразрядные МК – от дешевых устройств с относительно малым быстродействием, замещающих четырехразрядные микросхемы, до МК с высоким быстродействием, достигающим нескольких десятков мегакоманд в 1 с, и c малой потребляемой мощностью. Такие МК позволяют решать стоящую перед разработчиками и производителями задачу продления времени автономной работы мобильных электронных устройств с батарейным питанием. Энергопотребление микросхем МК удается снизить, в первую очередь за счет уменьшения напряжения питания. Поэтому вполне объясним интерес к МК с малым напряжением питания.
Для работы обычного МК требуется напряжение не менее 1,8 В, тогда как напряжение батареи при полном заряде, как правило, составляет 1,2–1,5 В. При работе портативного устройства с батарейным питанием напряжение батареи постепенно снижается до менее 1 В. Следовательно, для эффективной работы современного МК требуются по крайней мере две батареи. Но сегодня эта ситуация быстро меняется и на рынке уже появились МК, способные успешно функционировать при напряжении питания менее 1 В.
Первый на рынке восьмиразрядный КМОП-микроконтроллер с напряжением питания 0,9–3,6 В семейства C8051F9xx, способный работать от одной батареи, в начале 2008 года представила компания Silicon Labs. Низкое напряжение питания достигнуто благодаря специально разработанному повышающему преобразователю постоянного напряжения, обеспечивающему эффективность энергопотребления 75–90%. Выходная мощность преобразователя составляет 65 мВт, что достаточно для питания ядра микроконтроллера и его компонентов. Ток в режиме ожидания не превышает 50 нА, в рабочем режиме – 170 мкА/МГц (4,1 мА на частоте 24,5 МГц). Ядро с конвейерной архитектурой, сопоставимой с МК 8051, выполняет 70% команд за один–два тактовых цикла. В результате производительность ядра составляет 25 Mips на частоте 25 МГц.
При разработке МК семейства C8051F9xx компания не обошла вниманием периферийные устройства и память. Микроконтроллер семейства – первый МК с флеш-памятью емкостью 64 Кбайт (МК серии F93x). Кроме того, микросхема содержит ОЗУ емкостью 4 Кбайт. В МК нового семейства также входят 15-канальный 10-бит АЦП производительностью 300 Квыборок/с со встроенным источником опорного напряжения, быстро выходящим в рабочий режим; модуль синхронизации SmaRTClock; тактовые генераторы на частоту 24,5 МГц. В число периферийных устройств входят UART, интерфейс SMBus и пара ведомых/ведущих последовательных интерфейсов SPI (рис.1). Монтируются микросхемы семейства в 24-выводной корпус типа QFN размером всего 4×4 мм, в 32-выводной корпус типа QFN размером 5×5 мм или в 32-выводной корпус типа LQFP размером 7×7 мм. Диапазон рабочих температур составляет -40…85°С.
Но Silicon Labs уже не единственный производитель МК, которые могут работать от одной батареи. В октябре 2008 года швейцарская компания EM Microelectronic объявила о создании микросхемы восьмиразрядного флеш-МК типа EM6819 с напряжением питания 0,9–3,6 В. При напряжении 0,9 В выходной ток встроенного преобразователя постоянного тока составляет 40 мА, ток, потребляемый в рабочем режиме, — 1 мА на частоте 15 МГц, в режиме покоя – 400 нА. Производительность МК составляет 7,5 Mips.
Микросхема содержит восьмиканальный 10-бит АЦП с максимальной производительностью 110 Квыборок/с, флеш-память объемом 16,9 Кбайт (для хранения данных – до 12 Кбайт, программ – до 6 Кбайт), СОЗУ емкостью 512 байт, пять тактовых генераторов для установления требуемого режима синхронизации, датчик температуры (рис.2).
А уже в начале 2009 года компания Atmel пошла еще дальше и выпустила восьмиразрядный МК семейства ATtiny – ATtiny43U со встроенным повышающим преобразователем, обеспечивающим 3-В напряжение питания микроконтроллера при входном напряжении 0,7 В [1]. Новый маломощный МК выполнен на основе усовершенствованного AVR RISC-ядра. Благодаря выполнению большинства из 120 команд за один тактовый цикл производительность МК ATtiny43U составляет 1 Mips/МГц. Максимальная тактовая частота равна 4 МГц (при напряжении питания 0,7–1,8 В или 1,8–5,5 В) или 8 МГц (при напряжении внешнем источнике питания 2,2–5,5 В). При напряжении питания 3 В потребляемый ток в рабочем режиме – 400 мкА на частоте 1 МГц, в режиме покоя — 150 нА.
Микросхема содержит флеш-память программ объемом 4 Кбайт, ЭСРПЗУ данных емкостью 64 байт, СОЗУ емкостью 256 байт, 16 каналов ввода-вывода, 32 универсальных регистра, четырехканальный 10-бит АЦП (рис.3).
Поставляется микроконтроллер в 20-выводных корпусах SOIC или QFN/MLF размером 4×4×0,8 мм. Диапазон рабочих температур -40…85°С.
В конце 2008 года компания NEC Electronics Europe объявила о начале опытных поставок 22 новых встраиваемых полностью флеш-МК со сверхнизким электропитанием. Это 12 восьмиразрядных моделей (шесть моделей серии 78KO/KY2-L в 16-выводных корпусах и шесть моделей серии 78KO/KA2-L в 20-выводных корпусах) и десять 16-разрядных устройств (шесть моделей серии 78KOR-KF3-L в 80-выводных корпусах и четыре модели 78KOR/KG3-L в 100-выводных корпусах). Новые восьмиразрядные МК компании – первые модели, в которых уменьшено число выводов, необходимых для внутрисхемной отладки при использовании встроенного генератора в качестве основного тактового генератора. Напряжение, требуемое для перезаписи программ 16-разрядных МК, снижено с 2,7 до 1,8 В.
Новые МК пополнили семейство устройств компании со сверхнизким энергопотреблением до 70 моделей. В режиме покоя потребляемый ток восьмиразрядных МК составляет 0,7 мкА, в рабочем режиме – 260 мкА на частоте 1 МГц. Для 16-разрядных МК потребляемый ток в режиме покоя составляет 1 мкА при работе одного сторожевого таймера, в рабочем режиме – 6,8 мА на частоте 20 МГц.
К достоинствам новых МК относится и расширение функциональных возможностей. Восьмиразрядные МК имеют встроенный операционный усилитель, 16-разрядные модели – встроенные быстродействующие АЦП со многими аналоговыми входами. Применение этих МК с расширенным числом аналоговых устройств позволяет сократить число компонентов, требуемых для построения системы.
К декабрю 2009 года компания NEC Electronics Europe намерена ежемесячно выпускать 1 млн МК 22 новых моделей.
В апреле 2009 года фирма Microchip представила шесть восьмиразрядных микроконтроллеров серий PIC18F46J11 и PIC18F46J50, а также четыре 16-разрядных микроконтроллера серии PIC24F16KA. Новые МК, по утверждению компании, характеризуются самым низким для подобных устройств током покоя – 20 нА и менее. Ток тактовых генераторов составляет 500 нА, сторожевых таймеров – 400 нА. МК выполнены по технологии nanoWatt XLP eXtreme (предусматривающей гибкую систему тактирования и наличие встроенного программно переключаемого генератора). Эта технология обеспечивает минимальное потребление энергии с помощью различных средств отключения и активации, в частности часов реального времени, сброса по провалу напряжения (BOR), прерывания, возможности привязки цифровых функций к определенным контактам ввода-вывода. МК серии PIC18F46J11 имеют флеш-память емкостью 64 Кбайт, серии PIC18F46J50 – полноскоростной (Full-Speed) USB 2.0 интерфейс, позволяющий выполнять модификацию или загрузку данных в полевых условиях. По набору периферийных устройств новые восьмиразрядные МК сопоставимы с микроконтроллерами, монтируемыми в 64- или 80-выводные корпуса, тогда как новые микросхемы поставляются в 24- и 28-выводных корпусах типа QFN, SOIC, SSOP, SPDIP TQFP. Новые МК весьма перспективны для применения в удаленных устройствах, которые должны работать более 20 лет от одной батареи.
Производительность 16-разрядных МК серии PIC24F16KA составляет 16 Mips, они поддерживаются эффективным C-компилятором, что позволяет реализовывать сложные алгоритмы. В микросхему МК PIC24F16KA входят два компаратора с полным размахом выходного напряжения, емкостной тактильный модуль mTouchTM, два UART, последовательные интерфейсы I2S, I2C. Предполагаемые сферы применения – потребительская, промышленная, и медицинская аппаратура. Монтируются 16-разрядные МК серии в 20- и 28-выводные корпуса
Высокопроизводительные МК
Сегодня основные потребители электроэнергии – двигатели, системы освещения и источники питания. По данным Немецкой ассоциации электронных компонентов и систем, переход к электронным системам в 50% средств управления позволило бы сократить энергопотребление на 20%, т.е. на 22 ТВт·ч. Вот почему все большее число компаний обращаются к выпуску высокопроизводительных МК. И здесь основные типы устройств – 16- и 32-разрядные микроконтроллеры. При этом при разработке 32-разрядных МК все чаще предпочтение отдается микроконтроллерам с ARM RISC-ядром, а в последнее время – с ARM Cortex-3M ядром. Это в первую очередь обусловлено тем, что такие высокопроизводительные МК сопоставимы по стоимости с восьми- и 16-разрядными устройствами. Вслед за разработчиком первых МК на базе ядра ARM Cortex-M3 семейства Stellaris – компанией Luminary Micro – подобные МК представили фирмы Atmel, NXP, STMicroelectronics и Texas Instruments. В результате архитектура на основе процессорного ARM-ядра стала традиционной для МК приложений. Действительно, по данным компании Semicast, специализирующейся в области маркетинговых исследований рынка полупроводниковых приборов и электроники, в 2011 году ведущей архитектурой 32-разрядных МК и встраиваемых микропроцессоров будет архитектура на базе ARM-ядра. При этом доходы от продаж таких МК, предназначенных для промышленного и медицинского применения, к 2013 году составят ~1 млрд долл. против 150 млн. долл. в 2007 году. По данным компании ARM, сегодня на рынке представлено около 250 моделей МК на основе ядра Cortex-M3, работающих на частотах до 100 МГц. В результате объем отгрузок МК на основе ARM-ядра в 2008 году возрос более чем на 95% и составил 255 млн. штук.
О росте интереса к ядру Cortex-M3 свидетельствует решение компании Texas Instruments расширить свой портфель 32-разрядных устройств за счет приобретения Luminary Micro, что позволило получить доступ к портфелю МК "преуспевающего" семейства Stellaris. И теперь Texas Instruments сможет удовлетворять запросы своих основных потребителей 32-разрядных устройств, поставляя высокопроизводительные микросхемы на базе ядра ARM Cortex-M3 с такими современными средствами связи, как 10/100 Ethernet MAC+PHY, CAN, USB On-The-Go, USB Host/Device, SSI/SPI, UART, I2S и I2C. Правда, в связи с этим приобретением возникает вопрос о планах компании TI относительно сверхмаломощных МК своего популярного семейства MSP430, также в основном предназначенных для промышленных и бытовых медицинских систем.
Новые 32-разрядные МК на основе ядра ARM Cortex-M3 выпустили компании NXP (МК серии LPC13xx на частоту 70 МГц с потребляемым током ~200 мкА/МГц) [2], Atmel и STMicroelectronics.
Микроконтроллеры серии AT91SAM3U компании Atmel стали первыми в промышленности флеш-МК с ядром ARM Cortex-M3 с поддержкой набора команд Thumb-2 на частоту 96 МГц, оснащенные высокоскоростными интерфейсами USB Device (480 Мбит/с), SPI (48 Мбит/с), 4-бит MCI для SDIO/SD 2.0 (192 Мбит/с) и 8-бит MMC 4.3 (384 Мбит/с). Производительность МК составляет 1,25 Mips по программе Dhrystone/МГц. Благодаря таким характеристикам новые микроконтроллеры перспективны для применения в устройствах с интенсивным использованием коммуникационных интерфейсов, в том числе в высокоскоростных шлюзах промышленного, медицинского или потребительского назначения. Высокую пропускную способность обеспечивает пятислойная матрица шин. В микросхему МК также входят 23-канальный модуль прямого доступа к памяти, СОЗУ емкостью до 52 Кбайт, разбитое на три блока, два банка флеш-памяти общим объемом до 256 Кбайт. Наличие двух банков флеш-памяти позволяет обновлять один банк памяти новой версией кода программы, тогда как процессор исполняет код другого банка. В дальнейшем, используя возможность программного выбора загрузочного банка, можно выполнить обновление другого банка. Кроме того, МК содержит восьмиканальные 10- и 12-бит АЦП (12-бит АЦП поддерживает частоту дискретизации 1 МГц и для исключения внешних ОУ дополнен блоком с регулируемым усилением), дифференциальные и несимметричные входные каскады, четыре UART, пять SPI, два I2C, I2S, таймеры, ШИМ-генераторы, 128-бит уникальный идентификатор, а также блок управления энергопотреблением и сбросом. Предусмотрен интерфейс внешней шины (EBI), который позволяет подключаться к внешней памяти или FPGA/ASSP по 8- или 16-бит параллельной шине. Напряжение питания SAM3U составляет 1,62–3,6 В. Другие известные МК на базе ядра Cortex-M3 не способны работать при столь низком напряжении.
Новые МК серии AT91SAM3U поставляются в 100- и 144-выводных корпусах QFP и BGA. Массовое производство намечено на четвертый квартал 2009 года.
В начале 2009 года компания STMicroelectronics также выпустила высокопроизводительный 32-разрядный флэш-МК на базе ядра ARM Cortex-M3 RISC-процессора, пополнившее ее семейство STM32. Максимальная тактовая частота нового МК типа STM32F103RET6 составляет 72 МГц, производительность – 90 Mips. МК содержат флэш-память емкостью до 512 Кбайт, СОЗУ объемом до 64 Кбайт, три 12-бит АЦП (до 21 канала), двухканальный 12-бит ЦАП, до 11 таймеров, в том числе четыре 16-бит таймера общего назначения, два ШИМ-таймера, два сторожевых таймера, а также до 13 интерфейсов, в том числе два I2C, до трех SPI (18 Мбит/с), два I2S, SDIO, до пяти USART, полноскоростной USB, CAN. Напряжение питания МК – 2,0–3,6 В, диапазон рабочих температур – -40...85°С. Монтируется в 100-выводной корпус LQFP типа размером 14×14 мм.
Выбор современных МК становится все шире, и очевидно, какими бы ни были их характеристики и функциональные возможности, основным критерием при выборе микроконтроллера по-прежнему является его цена и стоимость реализации системы на его основе. Но оценка стоимости не простая задача. Со стоимостью компонентов следует сопоставлять время, затрачиваемое на реализацию проекта, с характеристиками системы – увеличение стоимости сборки из-за необходимости применения дополнительных компонентов. Как оценить стоимость изменения кода флеш-памяти или модернизации в полевых условиях? Очевидно, при выборе нужного компонента необходимо тщательно анализировать все элементы системы и рассматривать сценарии "А если…?"
[1] Сравнение МК C8051F9xx, EM6819 и ATtiny43U см. в статье Б.Сидоренко. "Микроконтроллеры компании Atmel – новые решения". Наст. номер, с.30.
[2] Башлыков А. Микроконтроллеры на ядре Cortex уже в производстве. –
Наст. номер, с.38.