Мультипротокольные микроконтроллеры Wireless Gecko компании Silicon Labs, или новый взгляд на решение проблем совместимости
Варианты реализации мультипротокольных устройств
Предпосылкой появления недорогих мультипротокольных беспроводных микросхем стало то, что большинство популярных беспроводных стандартов разработано для одних и тех же нелицензируемых частотных диапазонов. Поэтому стало возможным на базе одного программно управляемого синтезатора путем изменения только программного обеспечения (ПО) задавать различные методы модуляции, расширения спектра и протоколы передачи данных. Разработчики Silicon Labs разместили в микросхемах EFR32 программируемые синтезаторы и высокочастотные фронтально-оконечные узлы для двух наиболее часто используемых нелицензируемых частотных диапазонов: 2,4 ГГц и <1 ГГц. При этом цифровая часть приемопередатчиков Wireless Gecko реализует методы модуляции, поддерживающие протоколы ZigBee, Thread, Bluetooth Low Energy, Wireless M-Bus, Low Power Wide Area Network и нестандартные протоколы связи.
Компания Silicon Labs в своих материалах предлагает несколько возможных вариантов реализации мультипротокольных устройств [1]. Первый вариант — это однократно программируемые устройства (Programmable). Тип беспроводного интерфейса для них выбирается один раз во время программирования на производстве. Производитель такого беспроводного устройства может на одной и той же аппаратной платформе реализовывать различные IoT-проекты, экономя на разработке аппаратной части. Для конечного пользователя программируемые на производстве устройства не будут являться мультипротокольными.
Вторым типом мультипротокольных устройств в материалах Silicon Labs называются переключаемые (Switched) устройства. При помощи встроенного загрузчика они позволяют пользователю самостоятельно менять прошивки. Многие микропроцессорные приборы позволяют обновлять встроенное ПО. В настоящее время это делается, в основном, с целью устранения замеченных недостатков и добавления новых функций. Протокол беспроводной связи при этом обычно не меняется. Используя микросхемы Wireless Gecko, можно разработать беспроводные датчики, светильники, исполнительные механизмы, у которых, в зависимости от того, в каком окружении они будут использоваться, можно будет сменить протокол беспроводной связи путем замены ПО по последовательному интерфейсу или по радиоканалу.
Третий тип мультипротокольных устройств — это устройства, которые могут сами динамически (Dynamic) менять протокол беспроводной связи в ходе своей работы. Например, устройство большую часть времени работает в сети Thread, но может периодически отсылать маячки BLE. Такие устройства должны постоянно иметь в своей flash-памяти ПО, реализующее несколько протоколов.
Мультипротокольные устройства четвертого типа поддерживают параллельную (Concurrent) активную работу одновременно в двух сетях. Например, одна и та же микросхема одновременно может являться активным членом сети ZigBee и активным членом сети Thread.
Разработчики Silicon Labs работают над ПО, которое позволит микросхемам Wireless Gecko в будущем поддерживать динамический и параллельный режимы работы.
Обзор семейства Wireless Gecko (EFR32)
Микроконтроллеры Wireless Gecko (EFR32) компании Silicon Labs разделены на три подсемейства: EFR32 Mighty Gecko, Blue Gecko и Flex Gecko. Они реализуют различные наборы стандартных и проприетарных протоколов передачи данных, указанные в таблице 1. Каждое из подсемейств состоит из микросхем, у которых сочетания параметров наилучшим образом подходят для реализации базового протокола подсемейства. Разработчик может выбрать двухдиапазонную микросхему или микроконтроллер, который содержит только приемопередатчик на диапазон 2,4 ГГц или только на диапазон <1 ГГц. Также имеется возможность подобрать микроконтроллер с различными объемами памяти, разной выходной мощностью и в разных корпусах. Сравнивая подсемейства между собой, следует также отметить, что наиболее низкую цену имеют микроконтроллеры подсемейства EFR32 Blue Gecko.
Подсемейство |
EFR32 Mighty Gecko |
EFR32 Flex Gecko |
EFR32 Blue Gecko |
|
Ядро |
ARM Cortex-M4F частотой 40 МГц с сопроцессором для выполнения операций с плавающей точкой |
|||
Flash-память, кбайт |
256–512 |
32–256 |
128–256 |
|
Оперативная память, кбайт |
32 |
8–32 |
16–32 |
|
Протоколы |
ZigBee, Thread, Bluetooth Smart, Wireless M-Bus, Proprietary, Low Power Wide Area Networks |
Wireless M-Bus, Proprietary, Low Power Wide Area Networks |
Bluetooth Smart, Wireless M-Bus, Proprietary, Low Power Wide Area Networks |
|
Мощность передатчика, дБм |
2,4 ГГц |
8,0; 16,5; 19,5 |
16,5; 19,5 |
0; 3; 10,5; 19,5 |
<1 ГГц |
16,5; 20 |
16,5; 20 |
10,5; 20 |
|
Чувствительность приемника, дБм |
2,4 ГГц |
–92,5 (GFSK); –99 (OQPSK) |
–94 |
|
<1 ГГц |
–121,4 |
|||
Поддерживаемые частотные диапазоны, МГц |
110–197, 195–358, 390–574, 779–956, 2400–2484 |
|||
Аппаратное ускорение шифрования |
AES 128/256, SHA-1, SHA-2 (SHA-224 и SHA-256), ECC |
|||
Напряжение питания, В |
1,85–3,8, встроенный преобразователь DC/DC |
|||
Диапазон рабочих температур, °C |
–40…+85 |
|||
Корпус |
QFN32, QFN48 |
Микроконтроллеры EFR32 имеют ядро ARM Cortex-M4F, представляющее собой расширенную версию популярного 32-разрядного ядра ARM Cortex-M3. Ядро Cortex-M4F имеет такую же архитектуру, что и Cortex-M3. Разница заключается в наличии у Cortex-M4F блока вычислений с плавающей точкой (Floating Point Unit) и поддержке дополнительного набора DSP-команд. Эти команды соответствуют типовым для цифровой обработки сигнала операциям: умножение с накоплением, операции параллельной обработки данных и операции с насыщением. Благодаря аппаратной поддержке таких команд можно существенно сократить требуемое для определенных типов вычислений время и, как следствие, уменьшить общее энергопотребление устройства [2].
Встроенный в микросхему EFR32 высокоинтегрированный приемопередатчик (рис. 1) имеет широкий набор конфигурационных настроек для установки параметров радиосигнала. Пользователь имеет доступ к буферам приема и передачи данных. Приемопередатчик поддерживает статические и динамические длины пакетов, автоматическую адресную фильтрацию и вставку/проверку контрольной суммы.
Приемопередатчик содержит синтезатор частоты с малыми фазовыми шумами, который формирует опорную частоту для понижающего смесителя во время приема радиосигнала и непосредственно формирует модулированную несущую во время передачи. Синтезатор частоты имеет разрешение по частоте лучше, чем 100 Гц, низкое энергопотребление и малое время установки частоты, что позволяет микросхеме быстро выходить из спящих режимов.
В процессе передачи модулятор получает данные от контроллера пакетов, которые считывает из буфера. Основываясь на выбранном типе модуляции и полученных данных, модулятор, используя синтезатор частоты, формирует радиосигнал с необходимой частотой и фазой. После завершения передачи пакета приемопередатчик может автоматически переключаться в режим приема.
Приемник имеет малошумящий усилитель, за которым следует квадратурный понижающий частоту смеситель. Квадратурные сигналы промежуточной частоты фильтруются и усиливаются перед тем, как поступить на АЦП. Промежуточная частота может конфигурироваться пользователем. Функция автоматической подстройки коэффициента усиления (AGC) позволяет увеличить чувствительность приемника и избежать насыщения усилителя.
Демодуляция выполняется в цифровой области. Путем настроек параметров демодулятора можно задавать ширину частотного канала от 0,1 до 2530 кГц.
Демодулятор анализирует принятый пакет на соответствие заданным типу модуляции и скорости передачи. В случае обнаружения такого пакета данные передаются контроллеру пакетов, который записывает их в приемный буфер. По завершении приема пакета приемопередатчик может автоматически переключаться в режим передачи или оставаться в режиме приема в ожидании очередного пакета данных.
Помимо упомянутых микропроцессорного ядра и приемопередатчика, микросхемы EFR32 Wireless Gecko имеют в своем составе блок управления энергопотреблением, схему тактирования, блоки цифровой и аналоговой периферии и пять портов ввода/вывода. Благодаря наличию 12-канальной системы событий (Peripheral Reflex System) периферийные устройства могут обмениваться данными и синхронизироваться без участия процессорного ядра.
Богатый набор периферийных узлов микросхем EFR32 Wireless Gecko, позволяющий подключать различные внешние датчики и взаимодействовать с внешними устройствами, включает в себя:
- АЦП;
- ЦАП;
- два аналоговых компаратора;
- восемь контроллеров прямого доступа к памяти;
- два 16-разрядных таймера/счетчика;
- 32-разрядные часы реального времени и календарь;
- 16-разрядный низкопотребляющий таймер;
- 32-разрядный свехнизкопотребляющий таймер/счетчик;
- сторожевой таймер (Watchdog);
- 16-разрядный счетчик импульсов;
- два универсальных приемопередатчика USART, каждый из которых может выступать в роли UART/SPI/IrDA/I2S;
- низкопотребляющий UART;
- интерфейс I2C с поддержкой SMBus.
Микросхемы EFR32 Wireless Gecko выпускаются в корпусах QFN48 (7×7 мм) и QFN32 (5×5 мм). Пользователю доступно множество вариантов исполнения, отличающихся набором реализуемых протоколов, поддерживаемыми частотными диапазонами, выходной мощностью передатчика и объемом памяти [3–5]. Столь широкая номенклатура дает возможность подобрать оптимальный по соотношению цена/функциональность вариант практически для любой задачи по разработке миниатюрных устройств с батарейным питанием.
Режимы энергопотребления
Микроконтроллеры Wireless Gecko (EFR32) предназначены для использования в батарейных устройствах. Они сочетают высокую производительность с низким энергопотреблением как в рабочих, так и в спящих режимах.
В таблице 2 приведены значения тока потребления для различных режимов. Значения указаны как для случая использования с DC/DC-преобразователем, так и без него, при напряжении питания 3,3 В. На рис. 2 цветом обозначен режим с наименьшим энергопотреблением, в котором может работать тот или иной блок микросхемы. Например, процессорное ядро может быть задействовано только в полнофункциональном режиме, а сверхнизкопотребляющий таймер/счетчик (Cryotimer) можно использовать во всех режимах, вплоть до EM4 Shutoff.
Режим работы |
Условия работы |
Ток потребления, мкА |
|
без DC/DC |
с DC/DC |
||
EM0 Active |
Частота кварца 38,4 МГц |
130 мкА/МГц |
88 мкА/МГц |
EM1 Sleep |
Частота кварца 38,4 МГц |
65 мкА/МГц |
61 мкА/МГц |
EM2 Deep Sleep |
Сохранение всего объема RAM |
3,3 |
1,4 |
EM2 Deep Sleep |
Сохранение 4 кбайт RAM |
3,0 |
1,4 |
EM3 Stop |
Сохранение всего объема RAM |
2,8 |
1,1 |
EM4 Hibernate |
Сохранение 128 байт RAM |
1,1 |
0,86 |
EM4 Shutoff |
Без сохранения RAM |
0,04 |
0,04 |
Микросхемы EFR32 имеют в своей схеме уникальный блок RFSENSE, определяющий наличие несущей в заданном частотном диапазоне. Это позволяет микросхеме находиться в любом из режимов пониженного энергопотребления, переходя в полнофункциональный режим только в случае получения сообщения на определенной частоте.
Ниже приведены основные особенности работы в каждом из режимов энергопотребления.
Полнофункциональный режим (EM0 Active):
- процессорное ядро Cortex-M4 исполняет программный код;
- беспроводной интерфейс активен;
- высокочастотное и низкочастотное дерево синхронизации активны;
- вся периферия готова к использованию.
Спящий режим (EM1 Sleep):
- процессорное ядро находится в спящем режиме, тактирование ядра отключено;
- беспроводной интерфейс, оба дерева синхронизации и вся периферия активны.
Режим «глубокого сна» (EM2 Deep Sleep):
- процессорное ядро находится в спящем режиме, тактирование ядра отключено;
- беспроводной интерфейс отключен, блок RFSENSE активен;
- высокочастотное дерево синхронизации отключено;
- низкочастотное дерево синхронизации активно, доступны часы реального времени и календарь, сторожевой таймер, низкопотребляющий UART, низкопотребляющий таймер, счетчик импульсов, сверхнизкопотребляющий таймер/счетчик;
- память и регистры сохраняют свои значения.
Режим останова (EM3 Stop):
- процессорное ядро находится в спящем режиме, тактирование ядра отключено;
- беспроводной интерфейс отключен, блок RFSENSE активен;
- высокочастотное и низкочастотное дерево синхронизации отключены;
- в случае тактирования от генератора ультранизкой частоты ULFRCO доступны часы реального времени и календарь, сторожевой таймер, сверхнизкопотребляющий таймер/счетчик;
- память и регистры сохраняют свои значения.
Режим гибернации (EM4 Hibernate):
- процессорное ядро отключено;
- беспроводной интерфейс отключен, блок RFSENSE активен;
- высокочастотное и низкочастотное дерево синхронизации отключены;
- доступны часы реального времени, календарь, сверхнизкопотребляющий таймер/счетчик;
- значения памяти и регистров не сохраняются.
Режим отключения (EM4 Shutoff):
- процессорное ядро отключено;
- беспроводной интерфейс отключен, блок RFSENSE активен;
- высокочастотное и низкочастотное дерево синхронизации отключены;
- доступен сверхнизкопотребляющий таймер/счетчик;
- значения памяти и регистров не сохраняются.
Другим преимуществом микросхем EFR32 является минимальное время перехода из режимов пониженного энергопотребления в полнофункциональный режим (табл. 3). Например, максимальное время пробуждения из режима останова, в котором ток потребления ≤2,8 мкА, не превышает 3 мкс (в случае выполнения кода из оперативной памяти). Данный параметр оказывает существенное влияние на общее энергопотребление устройства и время жизни батареи.
Режим работы |
Источник выполнения кода |
Время пробуждения |
EM1 Sleep |
Flash-память |
3 такта шины |
EM1 Sleep |
RAM |
3 такта шины |
EM2 Deep Sleep |
Flash-память |
10,7 мкс |
EM2 Deep Sleep |
RAM |
3 мкс |
EM3 Stop |
Flash-память |
10,7 мкс |
EM3 Stop |
RAM |
3 мкс |
EM4 Hibernate |
Flash-память |
60 мкс |
EM4 Shutoff |
Flash-память |
290 мкс |
Таким образом, используя оптимальный для конкретных условий эксплуатации режим, можно достичь значительного снижения энергопотребления микросхемы, что является важнейшим фактором в случае разработки устройства с батарейным питанием.
Схема включения
Термин «высокая степень интеграции» в полной мере относится и к высокочастотным блокам микросхем EFR32 Wireless Gecko.
Встроенный фронтально-оконечный модуль для диапазона 2,4 ГГц содержит усилитель мощности, симметрирующий преобразователь, антенный ключ и согласован для работы на нагрузку 50 Ом. Таким образом, снаружи понадобится добавить только согласующую цепь.
Антенный интерфейс для субгигагерцевого диапазона имеет дифференциальные раздельные выводы приемника и передатчика.
На рис. 3 показан пример внешней схемы антенного интерфейса для двухдиапазонного устройства [6].
В помощь разработчикам производитель предоставляет подробные рекомендации по разводке печатной платы и подбору согласующих компонентов [7–10]. Также доступны несколько вариантов демонстрационных проектов.
Заключение
Микросхемы нового семейства EFR32 Wireless Gecko объединили в себе достижения инженерной мысли последнего десятилетия. В одном крошечном корпусе уместилось мощное и в то же время энергоэффективное ядро, богатейший набор периферийных узлов, аппаратный ускоритель шифрования, двухдиапазонный мультипротокольный высокоинтегрированный приемопередатчик. Все узлы оптимизированы для использования в батарейных устройствах, таких как беспроводные датчики, носимые устройства и другие компоненты систем класса IoT. Одновременная поддержка большинства популярных стандартных протоколов беспроводной связи открывает новые возможности решения проблем совместимости.
- Webinar: Choosing the Right Wireless Protocol. www.silabs.com
- Кондрашова К. Оптимизация энергопотребления устройств на базе микроконтроллеров EFM32 Wonder Gecko с ядром Cortex-M4F // Компоненты и технологии. 2014. № 9.
- Data sheet EFR32MG1 Mighty Gecko ZigBee & Thread SoC Family. Silicon Laboratories Inc. 2016.
- Data sheet EFR32BG1 Blue Gecko Bluetooth Smart SoC Family. Silicon Laboratories Inc. 2016.
- Data sheet EFR32FG1 Flex Gecko Proprietary Protocol SoC Family. Silicon Laboratories Inc. 2016.
- EFR32 SubGHz Matching Guide. Silicon Laboratories Inc. 2016.
- EFR32 Minimal BOM. Silicon Laboratories Inc. 2016.
- EFR32 Hardware Design Considerations. Silicon Laboratories Inc. 2016.
- EFR32 Layout Design Guide. Silicon Laboratories Inc. 2016.
- EFR32 2.4 GHz Matching Guide. Silicon Laboratories Inc. 2016.