
GD32V - новое семейство 32-битных микроконтроллеров с процессорным ядром RISC-V
Пять лет назад компания GigaDevice представила свою дебютную линейку 32-битных микроконтроллеров GD32F1 на базе процессорного ядра ARM Cortex-M3. Это семейство чрезвычайно сильно напоминало популярные микроконтроллеры STM32F1 от STMicroelectronics. Об этой интересной ситуации мы рассказывали в статье «Европейский прагматизм, китайская хитрость. Новый ARM Cortex-M3 микроконтроллер от Giga Devices». С тех пор портфолио микроконтроллеров GigaDevice существенно расширилось за счет семейств и линеек, в том числе с процессорными ядрами ARM Cortex-M3, ARM Cortex-M4 и ARM Cortex-M23. И вот совсем недавно GigaDevice официально представила новое семейство 32-битных микроконтроллеров общего назначения GD32V103 на базе открытого ядра RISC-V.
Новое процессорное ядро Bumblebee
Микроконтроллеры GD32V103 используют новое 32-битное процессорное ядро Bumblebee с максимальной рабочей частотой 108 МГц, построенное на открытой архитектуре RISC-V. Новое ядро было создано совместными усилиями компаний Nuclei System Technology и GigaDevice Semiconductor.
Bumblebee использует 32-битный набор инструкций RISC-V и ряд дополнительных команд для оптимальной обработки прерываний. В составе ядра присутствует 64-битный таймер Systick, контроллер прерываний ECLIC (Enhancement Core-Local Interrupt Controller) с поддержкой до 68 источников прерываний и система питания с поддержкой спящих режимов.
В Bumblebee используется двухуровневый конвейер, динамический модуль предсказания ветвлений и буфер предвыборки. Эти блоки позволили уменьшить динамическое потребление ядра, что имеет огромное значение для современных малопотребляющих приложений. Для примера можно сравнить показатели потребления GD32V103 и GD32F103 (с ядром ARM Cortex-M3). Производительность GD32V103 на максимальной рабочей частоте составляет 153 DMIPS и 360 CoreMark, что на 15% выше, чем у GD32F103. При этом по заявлениям GigaDevice динамическое потребление GD32V103 в активном режиме оказывается ниже на 50%, а в режиме standby на 25%.
Также стоит отметить, что ядро Bumblebee имеет встроенный аппаратный умножитель и аппаратный делитель, что позволяет процессору максимально быстро обрабатывать данные в реальном времени.
Архитектура GD32V103
На рис. 1 представлена структурная схема GD32V103. Как видно из данной схемы ядро взаимодействует с памятью и периферией с помощью трех шин AHB (Ibus, Dbus и System). Взаимодействие процессорного ядра с flash возможно с нулевым числом циклов ожидания благодаря фирменной запатентованной технологии gFlash®. Шина System подключена к матрице шин AHB Matrix. К этой же матрице подключены другие ведущие устройства – контроллеры прямого доступа к памяти общего назначения (GP DMA0 и GP DMA1). В качестве ведомых на матрице шин выступает ОЗУ, AHB-периферия, мосты AHB-APB и контроллер внешней памяти EXMC.
Диапазон входных напряжений питания микроконтроллеров GD32V103 составляет 2,0…3,6 В. Для питания ядра и большей части цифровой периферии используется встроенный LDO-стабилизатор 1,2 В. Контроль качества напряжения питания осуществляется с помощью схем POR/ PDR. Стоит отметить, что большинство портов ввода-вывода микроконтроллеров GD32V103 способны работать с логическими сигналами 5 В.
Большим плюсом GD32V103 является чрезвычайно широкий выбор коммуникационных интерфейсов. Кроме традиционного набора, включающего USART, SPI и I2C, новые микроконтроллеры могут похвастаться сразу двумя CAN-контроллерами и USB 2.0 FS OTG. Интерфейс I2C поддерживает работу с частотами до 1 МГц (Fast Plus (Fm+)). SPI позволяет организовывать взаимодействие с внешней памятью в режиме Quad-SPI. USB поддерживает работу в режимах Device, HOST и OTG.
Набор аналоговой периферии также выглядит вполне достойно: два 12-битных 16-канальных АЦП с частотой измерений 2,6 MSPS и два 12-битных ЦАП. При этом, благодаря аппаратному модулю передискретизации, разрядность АЦП может быть увеличена до 16 бит.
Микроконтроллеры имеют на борту пять таймеров: один 16-битный таймер с поддержкой ШИМ и комплементарных выходов для управления трехфазными инверторами и бесколлекторными двигателями, четыре 16-битных таймера общего назначения, два базовых таймера (без внешних выводов).
Рис. 1. Модельный ряд семейства GD32V103
Модельный ряд GD32V103
В настоящий момент семейство GD32V103 объединяет 14 представителей, отличающихся корпусным исполнением и объемом встроенной памяти (рис. 2).
Рис. 2. Архитектура микроконтроллеров GD32V103
Объем встроенной flash-памяти микроконтроллеров GD32V103 составляет от 16 кбайт до 128 кбайт, а ОЗУ от 6 кбайт до 32 кбайт. Если этого не достаточно, пользователю предлагается использовать контроллер внешней памяти EXMC. EXMC поддерживает работу с различными типами памяти: SRAM, PSRAM, ROM, NOR Flash.
Микроконтроллеры GD32V103 поставляются в четырех корпусных исполнениях: QFN36, LQFP48, LQFP64 и LQFP100.
Производитель сообщает о повышенной устойчивости микроконтроллеров GD32V103 к статике. В частности, GD32V103 способны выдерживать разряды до 5 кВ (HBM) и до 2 кВ (CDM). Это существенно выше, чем в среднем по отрасли.
Для экономии энергии GD32V103 имеют поддержку различных режимов работы:
- Run. Активный режим работы. Потребление в режиме Run составляет около 33,7 мА при активной периферии и около 18,9 мА при отключенной периферии.
- Sleep. В этом режиме отключается ядро, а остальная периферия продолжает работу. Типовое потребление микроконтроллера в режиме Sleep составляет 25,4 при активной периферии и 10,8 мА при отключенной периферии.
- Deep-sleep. Все источники тактирования в домене 1,2 В отключены. Работа генераторов IRC8M, HXTAL, а также PLL запрещена. Содержимое ОЗУ сохраняется. Пробуждение системы возможно от EXTI (16 внешних прерываний), RTC, LVD и USB Wakeup. Типовое потребление микроконтроллера составляет около 400 мкА.
- Standby. Все источники тактирования в домене 1,2 В отключены. Работа генераторов IRC8M, HXTAL а также PLL запрещена. Содержимое ОЗУ не сохраняется. Пробуждение системы возможно от внешнего сброса NRST, RTC, сторожевого таймера FWDGT и сигнала на входе WKUP. Потребление системы в этом режиме составляет около 7,5 мкА.
Микроконтроллеры GD32V103 также могут работать в дежурном режиме, питаясь от дополнительной батарейки. При этом потребление составляет всего около 2 мкА.
Благодаря высокой производительности, малому потреблению, низкой стоимости и высокой защищенности микроконтроллеры GD32V103 могут использоваться в широком спектре приложений: промышленное оборудование, системы сигнализации, датчики, системы управления, коммерческая и бытовая электроника и т.д.
Одновременно с GD32V103 разработчикам предлагаются аппаратные и программные средства разработки и отладки.
Средства разработки и отладки
GigaDevice предлагает широкий выбор инструментов разработки и отладки. В частности разработчики могут воспользоваться готовыми отладочными платами (рис. 3):
- Стартовые платы GD32VF103R-START, GD32VF103C-STARTи GD32VF103T-START подойдут для ознакомления с микроконтроллерами GD32V103. Они также будут интересны для любителей электроники, благодаря их совместимости с сокетом ArduinoUNO.
- Плата GD32VF103V-EVAL – полноценный отладочный набор с TFT-дисплеем, пользовательскими кнопками и светодиодами, разъемами для подключения коммуникационных интерфейсов (USART, CAN, USB), потенциометром (подключен к АЦП), 2 кбайт EEPROM, 16 Мбит SPINORFlash, разъемом наушников, разъемами GD-Link и J-LinkJTAG.
Рис. 3. Внешний вид отладочных плат GD32VF103С-START и GD32VF103V-EVAL
GigaDevice совместно с Nuclei System Technology разработали бесплатную среду Nuclei Studio на базе Eclipse. В Nuclei Studio используется бесплатный компилятор GCC и OpenOCD. Кроме того пользователи могут применять и IDE сторонних компаний, в частности Huawei IoT Studio, SEGGER J-Link V10 и Embedded Studio.
Кроме бесплатной среды разработки пользователи получают доступ к бесплатным библиотекам. И то, и другое можно скачать на сайте производителя http://gd32mcu.21ic.com/en/index.
Характеристики микроконтроллера GD32VF103VBU6:
- Ядро:RISС-V;
- Частота: до 108 МГц;
- Flash: 128 кбайт;
- RAM: 32 кбайт;
- Интерфейсы: 3 USART, 3хSPI, 2хI2C, 2xCAN 2.0, I2S,
- USB: USBFSOTG;
- 2 x 12-битный 16-канальный АЦП 2,6 MSPS;
- 2 x 12-битный ЦАП;
- Корпус: LQFP100;
- Диапазон рабочих температур: -40…+85 °С;
- Напряжение питания: 2,6…3,6 В.
Производители: GIGADEV
Разделы: Микроконтроллеры, Демонстрационные платы
Опубликовано: 10.10.2019