32-Битные микроконтроллеры nxp с ядром cortex-m3 семейства lpc17xx. полное руководство.

Это интересно

32-Битные микроконтроллеры nxp с ядром cortex-m3 семейства lpc17xx. полное руководство. — этому посвящена страница этого сайта. Читайте также статьи по теме:

Содержание

Малопотребляющие МК серии LPC17xx, выполненные на основе 32-битного ядра ARM Cortex-M3, отличаются мощным набором периферии, включающим контроллер графического дисплея, интерфейсы Ethernet, USB 2.0 с поддержкой Host/OTG/Device и CAN 2.0B

Новые микроконтроллеры поддерживают максимальную рабочую частоту 120 МГц и интегрируют FLASH память, объемом до 512 КБайт, и SRAM память, объемом до 96 КБайт. LPC177x/LPC178x также оснащены многоуровневой высокопроизводительной шиной (AHB), позволяющей одновременно использовать периферийные устройства с высокой пропускной способностью, такие как Ethernet и USB, без снижения производительности процессора.

Микроконтроллеры доступны в 144- и 208-выводных корпусах LQFP и 180- и 208-выводных TFBGA. Устройства серии LPC177x/LPC178x совместимы по выводам с популярными микроконтроллерами NXP серий LPC2400 и LPC237x/238x на базе ядра ARM7. Это позволяет разработчикам сравнить производительность ядер Cortex-M3 и ARM7 в одном и том же приложении и выбрать наиболее подходящий вариант. Архитектура LPC1700, отличающаяся широким набором периферии и высокой производительностью, является идеальным решением для систем отображения информации, сканеров, промышленного сетевого оборудования, охранно-пожарных сигнализаций, медицинского диагностического оборудования и систем управления электродвигателями.

Параметрический поиск по микроконтроллерам с ядром Cortex M3. Обновлено 8 дней назад.

Верхняя часть платы — полноценный отлачик ST-LINK

ЖКИ дисплей и внизу емкостные

датчики в виде слайдера регулятора.

STM32L-Discovery лучший способ познакомится с микроконтроллерами STM32L на ядре Cortex-M3, которые отличаются ультранизким энергопотреблением — 270 нА в спящем режиме .

Встроенный программатор–отладчик ST-LINK позволяет начать разработку собственных приложений без дополнительных затрат. Сигналы встроенного ST-LINK выведены на внешний разъем, что позволяет в дальнейшем использовать STM32L-Discovery в качестве программатора-отладчика для своих собственных разработок.

Disclaimer

Your searches and visited products are saved with cookies on your computer for max 3 months. This information is only available to you and for your reference. It is not used by NXP for any other purpose or seen by other website visitors.

NXP: LPC177x / LPC178x объемом до 512 КБайт, и SRAM память, объемом до 96 КБайт. LPC177x/LPC178x также оснащены многоуровневой высокопроизводительной шиной (AHB), позволяющей одновременно использовать периферийные устройства с высокой пропускной способностью, такие как Ethernet и USB, без снижения производительности процессора.

Микроконтроллеры доступны в 144- и 208-выводных корпусах LQFP и 180- и 208-выводных TFBGA. Устройства серии LPC177x/LPC178x совместимы по выводам с популярными микроконтроллерами NXP серий LPC2400 и LPC237x/238x на базе ядра ARM7. Это позволяет разработчикам сравнить производительность ядер Cortex-M3 и ARM7 в одном и том же приложении и выбрать наиболее подходящий вариант. Архитектура LPC1700, отличающаяся широким набором периферии и высокой производительностью, является идеальным решением для систем отображения информации, сканеров, промышленного сетевого оборудования, охранно-пожарных сигнализаций, медицинского диагностического оборудования и систем управления электродвигателями.

Российские микроконтроллеры с ядром Cortex-M3 и пример реализации проекта

Ермак Мария

Статья посвящена краткому обзору серии контроллеров 1986ВЕ9х на ядре Cortex-M3 производства ЗАО «ПКК Миландр», средствам разработки и отладки для него.

Введение

Популярность 32-битной микропроцессорной архитектуры с сокращенным набором команд (RISC) фирмы ARM Limited растет с каждым днем, поэтому все большее число компаний разрабатывают микроконтроллеры на этом ядре. Одна из последних версий ядра — Cortex-M3. Пока очень немногие из производителей МК освоили это ядро. В настоящее время на российском рынке в основном представлены микроконтроллеры с ядром ARM Cortex-M3 компаний STMicroelectronics (семейство STM32Fxxx) и NXP (семейство LPC17xx). И поэтому особенно приятно, что к этим зарубежным компаниям можно добавить отечественный дизайн-центр ЗАО ПКК Миландр [1, 2].

Следует отметить, что срок окончания ОКР по разработке МК серии 1986ВЕ9х — сентябрь 2010 года, но уже сейчас заинтересованным компаниям предоставляются образцы МК, отладочные средства для них и полная техническая поддержка.

Стоит обратить внимание на тот факт, что МК были разработаны для аппаратуры специального назначения, требующей большого запаса по стойкости (то есть способности микросхемы работать в агрессивной окружающей среде), и с широким рабочим температурным диапазоном. Версии микроконтроллеров для гражданского рынка будут представлены компанией в ближайшее время.

Основные характеристики микроконтроллера

Устройства серии 1986ВЕ9x являются микроконтроллерами со встроенной Flash-памятью программ и построены на базе высокопроизводительного процессорного RISC-ядра ARM Cortex-M3 (производительность — 1,25 DMIPS/МГц (Dhrystone 2.1) при нулевой задержке между обращениями к памяти). Здесь необходимо добавить, что максимальная тактовая частота работы рассматриваемого микроконтроллера — 80 МГц, в то время как максимальная частота выборки данных (в данном случае команд) из Flash-памяти составляет 28,6 МГц (соответствует 35 нс). Для обеспечения максимального быстродействия при существующих технологических возможностях необходимо применять аппаратные решения для ускорения процесса обращения к Flash-памяти. В ряде микроконтроллеров, например, тех, что производят фирмы ЗАО ПКК Миландр и STMicroelectronics, для этого реализован специальный буфер шириной 64 бита. Но и в него выборка 32-разрядных команд осуществляется фактически с частотой 28,62 МГц. Таким образом, для работы при частоте свыше 57,2 МГц необходимо искусственно вводить задержку между обращениями к памяти. При частоте ниже 57,2 МГц задержка между считываниями из памяти является нулевой.

В ядре Cortex-M3 реализованы следующие функции:

  • блок аппаратной защиты памяти от несанкционированного доступа;
  • умножение за один цикл (табл. 1);
  • аппаратная реализация деления (32 бита/32 бита).

Таблица 1. Зависимость количества циклов синхрочастоты, требуемых для выполнения операции умножения, при различных разрядностях операндов и результата

Ядро Cortex-M3 компании ARM. Полное руководство. Джозеф Ю.

Название: Ядро Cortex-M3 компании ARM. Полное руководство.

Автор: Джозеф Ю.

Формат: djvu.

Размер: 20,3 Мб.

Язык: русский.

Тема: микроконтроллеры.

Книга «Ядро Cortex-M3 компании ARM. Полное руководство» Джозеф Ю. предназначена как для разработчиков, так и для программистов, заинтересовавшихся процессором Cortex-M3 компании ARM. Разумеется, в официальных документах, таких как «Cortex-M3 Technical Reference Manual» и «ARM Architecture Application Level Reference Manual», содержится практически вся информация по этому процессору. Однако указанные документы излишне подробны и могут оказаться слишком сложными для понимания, к тому же их изучение отнимет немало времени. Эта же книга писалась в расчёте на программистов, разработчиков встраиваемых устройств, разработчиков систем на кристалле, радиолюбителей, учёных, в общем, самых разных людей, изучающих процессор Cortex-M3 и хоть в какой-то мере знакомых с микроконтроллерами либо микропроцессорами. В пособии «Ядро Cortex-M3 компании ARM. Полное руководство» Джозеф Ю. достаточно подробно рассматриваются архитектура процессора Cortex-M3, набор команд с примерами использования некоторых из них, различные аппаратные возможности, а также развитая система отладки процессора. Кроме того, в книге приводятся примеры программ, позволяющие читателю освоить азы разработки программного обеспечения для процессора Cortex-M3 с использованием инструментариев ARM и GNU. Эта книга также пригодится разработчикам, переносящим свои проекты с процессора ARM7TDMI на Cortex-M3, поскольку описывает как различия между двумя указанными процессорами, так и собственно процесс переноса прикладных программ с процессора ARM7TDMI на Cortex-M3.

Новые микроконтроллеры NXP с частотой процессора 120 МГц на базе ядра Cortex-M3

Микроконтроллер LPC1700 со сверхнизким энергопотреблением обеспечивает одновременную работу с Ethernet, CAN и USB на скорости до 120 МГц.

Компания NXP Semiconductors. расширяет линейку микроконтроллеров семейства LPC1700 на основе ядра ARM® Cortex™-M3. Микроконтроллеры этого семейства являются одними из самых быстрых микроконтроллеров с ядром Cortex-M3, они способны работать на тактовой частоте до 120 МГц и по быстродействию на 28-64% опережают все имеющиеся на рынке конкурентные решения на основе ядра Cortex-M3. Лучшая производительность семейства LPC1700 в своем классе позволяет одновременно и без заминок обрабатывать высокоскоростные потоки информации с различных интерфейсов: Ethernet 10/100 Мбит, USB On-The-Go/Host/Device, CAN.

Микроконтроллеры семейства LPC1700 используют новейшую модификацию 2 ядра Cortex-M3 с интегрированным блоком управления питанием, включая уникальный контроллер «спящего» режима (WIC), который реализует максимально эффективный вход и выход в/из режимов пониженного энергопотребления.

Кроме того, микроконтроллеры LPC1700 совместимы по выводам с популярным семейством ARM7-микроконтроллеров LPC2300. Эта совместимость позволяет инженерам разрабатывать системы, в которые можно заложить устройства как на основе ядра ARM7, так и ядра Cortex-M3.

Семейство микроконтроллеров NXP LPC1700 имеет следующие функции :

  • поддержка периферийных интерфейсов, включая 10/100 Ethernet, USB On-The-Go/Host/Device и два CAN — которые могут функционировать одновременно без существенной нагрузки на шину периферийных устройств;
  • полноценный 12-бит АЦП и 10-бит ЦАП;
  • шина I2C с поддержкой режима Fast-Mode Plus (1 Мбит/с), 4 UART’a, 3 шины SPI/SSP и шина I2S;
  • часы реального времени с потреблением менее 1 мкА;
  • модуль защиты памяти (MPU), выделяющий области памяти только для чтения и предохраняющий их от перезаписи;
  • интерфейс квадратурного энкодера (QEI) и блок ШИМ для управления двигателями;
  • ядро Cortex-M3 версии 2 с улучшенными режимами пониженного энергопотребления, включая контроллер «спящего» режима (WIC);
  • совместимость по выводам с семейством ARM7-микроконтроллеров NXP LPC2300.

Области применения микроконтроллеров серии LPC1700. счетчики электроэнергии, жидкости, газа; системы освещения; индустриальные сети; системы сигнализации и пожаротушения; портативные устройства; бытовая техника; системы управления двигателями.

__________________

Взято автоматически из интернета.

Микроконтроллеры NXP на базе архитектуры CORTEX

Введение

В последние несколько лет микроконтроллеры общего применения на базе ядра ARM7 и ARM9 получили широкое распространение на рынке микроэлектроники. Усилия разработчиков микроконтроллеров, направленные на внедрение в свои разработки этих ядер, привели к появлению более 300 разновидностей 32-х битных микроконтроллеров. В числе производителей таких микроконтроллеров одну из ведущих позиций занимает компания NXP Semiconductors. Дальнейшим развитием линейки микроконтроллеров NXP стал выпуск ряда семейств процессоров на базе архитектуры Cortex. Микроконтроллеры NXP на базе этой архитектуры имеют ряд преимуществ над предыдущими семействами. Они позволили преодолеть очередной барьер увеличения производительности и уменьшения энергопотребления. а благодаря новым технологиям позволили уменьшить их стоимость. что позволило им в короткий срок получить большую популярность среди разработчиков электроники.

Архитектура ARM была разработана одноименной английской компанией, организованной в 1990 году. Компания ARM была образована в результате слияния Apple Computer. Acorn Computer Group и VLSI Technology. Название ARM происходит от «Advanced RISC Machines» — 32-х битная микропроцессорная архитектура с сокращенным набором команд (RISC). Следует заметить, что компания специализируется сугубо на разработке микропроцессорных ядер и периферийных блоков, при этом не имеет производственных мощностей по выпуску микроконтроллерных устройств. Компания ARM поставляет свои разработки в электронной форме, на основе которой клиенты конструируют свои собственные микроконтроллеры.

Клиентами компании ARM являются свыше 60 компаний-производителей полупроводников. NXP имеет долгосрочные партнерские отношения с компанией ARM, что позволяет выделить ее в отдельную категорию среди производителей микроконтроллеров на основе ARM-ядра, которым приходится постоянно продлевать лицензию на применение продуктов компании ARM.

В настоящее время архитектура ARM занимает лидирующие позиции и достигает 82% рынка 32-разрядных встраиваемых RISC-микропроцессоров. Распространенность данного ядра объясняется его стандартностью, предоставляя возможность разработчику более гибко использовать, как свои, так и сторонние программные наработки, как при переходе на новое процессорное ARM-ядро, так и при миграциях между разными типами ARM-микроконтроллеров, что позволяет существенно снизить финансовые затраты и сэкономить время на разработку, и как следствие выпуск продукции.

В настоящее время разработано шесть основных семейств: ARM7™, ARM9™, ARM9E™, ARM10™, ARM11™ и SecurCore™. Также совместно с компанией Intel разработаны семейства XScale™ и StrongARM®.

ARM7 и ARM9 выполненные по Von Neumann (фон Неймана) архитектуре, использующей одну общую 32 битную шину передачи данных и инструкций (рис. 1). В ядрах этой серии существует возможность использовать ARM и Thumb инструкции. Thumb режим процессоров ARM, в котором используется сокращенная система команд. Она состоит из 36 команд, взятых из стандартного набора 32-разрядных команд архитектуры ARM и преобразованных до 16-разрядных кодов. Длина команд Thumb составляет половину длины 32-разрядных команд ARM что позволяет существенно (порядка 30%) сократить необходимые объемы памяти программ и кроме того позволяет использовать более дешевую 16-разрядную память.

Рисунок 1. Структура ядра ARM922T

При выполнении эти команды дешифруются процессором в эквивалентные операции ARM, выполняемые за то же количество тактов. Переключение из режима ARM в Thumb и обратно осуществляется командой BX, либо по прерыванию/исключению. Ядра ARM7 и ARM9 были с успехом интегрированы в микроконтроллеры общего применения, но все же изначально они ориентированы на использование в качестве система на кристалле (SoC). Следующим этапом развития линейки ARM ядра, стало появление на рынке более прогрессивного ядра Cortex.

Появление нового поколения ARM Cortex ядер произвело взрыв на рынке стандартных микроконтроллеров. Ядро Cortex, в отличие от других ядер семейства ARM, является завершенным процессорным ядром, объединившим в себе стандартный центральный процессор (ЦПУ) и системную архитектуру (рис.2). В основе Cortex использована Гарвардская архитектура. Cortex семейство доступно в трех основных концепциях: Cortex-A (Application) – ориентированные на высокопроизводительные применения, в нее входят ядра A8 и A9, Cortex-R (Real Time) — для приложений, работающих в реальном времени, включающее в эту группу всего одно ядро R4 и Cortex-M – для наиболее распространенных и востребованных применений в стандартных приложениях, которое очень критично относится к стоимости и срокам выпуска процессоров, в нее входят три ядра Cortex-M3. Cortex-M0 и Cortex-M1. разработанное специально для использования в микросхемах программируемой логики.

Рисунок 2. Структура ядра Cortex-M3

Ряд линеек микроконтроллеров NXP выполненных на базе ядра Cortex-M3, призваны обеспечить разработчиков электроники с одной стороны высокопроизводительными. с другой стороны энергоэкономичными и дешевыми продуктами. А серия микроконтроллеров на базе ядра Cortex-M0 понижает планку энергопотребления и стоимости 32-х микроконтроллеров «ниже плинтуса». Они характеризуются настолько низкой стоимостью, что могут свободно конкурировать с 8-ми и 16-ти битными микроконтроллерами, а так же превосходить их по производительности, низкому энергопотреблению и ряду других параметров.

Рисунок 3. Блок-схема ядра Cortex-M3

Cortex-M3 является стандартизированным микроконтроллерным ядром и в отличие от ARM7 и ARM9, содержит помимо ЦПУ и другие элементы образующие основу микроконтроллера, такие как система прерываний, системный таймер и отладочная система. Адресное пространство Cortex-M3 разделено на четко распределенные области кода программы, статического ОЗУ, устройства ввода/вывода и системных ресурсов. К тому же, благодаря гарвардской архитектуре, ядро имеет раздельные шины данных и инструкций и 3-х уровневый конвейер, что позволяет прогнозировать переходы. Процессор на базе архитектуры Cortex-M3 в своей основе имеет иерархическую структуру, которая включает в себя ядро CM3Core с развитой периферией, включающей в себя механизмы управления прерываниями, защиты памяти, внутрисхемной отладки и другие (рис. 3).

Рисунок 4. Производительность и плотность кода в различных приложениях

Одним из основных компонентов ядра Cortex-M3 является встроенный контроллер векторных прерываний (NVIC), который предоставляет стандартную структуру прерываний для всех Cortex-микроконтроллеров и способы их обработки. К тому же в отличие от применяемых в ядре ARM7 и ARM9, имеющих два набора инструкций (ARM и Thumb), в Cortex-M3 используется только режим Thumb-2 (рис. 4), ориентированный на компиляторы языков C/C++.

NXP на рынке микроконтроллеров с CORTEX-M

Процессоры, на основе архитектуры Cortex-M, обладая рядом преимуществ в сравнении с другими архитектурами, по всей видимости, в ближайшее время станут наиболее популярными за счет более высокой производительности, более низкого энергопотребления, менее сложной модели программирования, удобной системы обработки прерываний и низкой цены.

Компания NXP, являясь одним из лидеров в производстве микроконтроллеров на базе ядра ARM, имея в своем арсенале более 90 вариантов микроконтроллеров, не осталась в стороне и приняла активное участие в производстве процессоров с ядром Cortex-M. Продолжая держать пальму первенства, компания NXP отреагировала на потребности рынка микроконтроллеров общего применения и выпустила на рынок ряд продуктов на базе ядра Cortex-M3 и Cortex-M0 (рис. 5).

Рисунок 5. Линейки микроконтроллеров NXP для различных приложений

LPC1700

Первым семейством на базе ядра Cortex-M3 компания NXP выпустила линейку микроконтроллеров серии LPC1700. которая включает в себя 100 и 80 выводные микросхемы с большим набором периферии. Примечательно отметить, что все микроконтроллеры NXP выпускаемые на базе ядра Cortex-M3 используют вторую ревизию ядра. в отличие от других производителей микроконтроллеров.

Рисунок 6. Блок-схема микроконтроллеров семейства LPC1700

Семейство микроконтроллеров LPC1700 разработано с использованием 140-нм технологического процесса, имеет производительное ядро Cortex-M3 работающее на частоте до 100 МГц. Большой выбор микроконтроллеров этого семейства позволяет разработчикам подобрать микросхему, наиболее удовлетворяющую его задачам. Большой объем встроенной Flash памяти (до 512 кБ ) и статической ОЗУ (до 32 кБ ) позволяют хранить код и данные и быстро их обрабатывать, не прибегая к использованию внешних модулей памяти. Серия микроконтроллеров LPC1760 (рис. 6) pin-to-pin совместима с линейкой микроконтроллеров на базе ARM7-ядра серии LPC2300 (рис. 7) и позволяет с минимальными затратами времени и средств произвести переход имеющихся проектов на новое высокопроизводительное ядро Cortex-M3.

Большой набор периферийных модулей: USB 2.0 full-speed D evice/Host/OTG, три интерфейса I2C. SPI. два SSP. I2S, четыре универсальных асинхронных приемопередатчика UART с поддержкой RS-485 интерфейса, четыре многофункциональных таймера, модули ШИМ с поддержкой управления трехфазного электромотора и квадратурный энкодер, два полнофункциональных CAN2.0B, модуль 12-битного аналогово-цифрового преобразователя с мультиплексированием на восемь каналов, 10-битный цифро-аналоговый преобразователь, 10/100 Ethernet MAC-модуль позволяют разработчику подобрать процессор полностью удовлетворяющий его задачам и без проблем воплотить свои идеи в реальность.

Рисунок 7. Блок-схема микроконтроллеров семейства LPC2300

Выпущенные в феврале 2010 года микроконтроллеры LPC1769 и LPC1759 с бесплатной библиотекой DSP, работающие на частоте до 120 МГц и ставшими самыми быстрыми микроконтроллерами на базе Cortex-M3 ядра, обладая высокой производительностью и интегрированными функциями управления и обработки сигнала, могут стать бюджетным решением для выполнения задач быстрого преобразования Фурье и тем самым исключить необходимость использования выделенных устройств цифровой обработки сигнала (DSP).

Микроконтроллеры LPC1769 , LPC1759 обеспечивают исполнение быстрого преобразования Фурье для 16-бит изображения с разрешением 256 dpi менее чем за 190 мкс. что соответствует росту производительности по сравнению с ближайшими аналогами на базе ядра Cortex-M3 на 54% и составляет конкуренцию недорогим DSP-устройствам. К тому же серия микроконтроллеров LPC1700 уже поддерживается большим числом инструментов разработки, операционных систем реального времени (RTOS).

LPC 1300

В LPC1300 так же заложена возможность внутрисхемного программирования Flash-памяти с помощью расположенного на чипе загрузочного программного обеспечения. Для простоты использования драйверы USB Mass Storage и HID так же интегрированы в чип и обеспечивают быструю настройку соединения по USB. Более того, эти драйверы встроены в ROM, предоставляя 100% объема пользовательской Flash для приложения.

LPC1100

Существующие 8-ми битные архитектуры появились в начале развития полупроводниковой промышленности, вследствие чего имеют ограничения с точки зрения диапазона адресов, регистров, функциональности, не подходят для языков программирования высокого уровня и не уделяют достаточного внимания вопросам энергосбережения и масштабируемости. Процессорное ядро и системная архитектура Cortex-M0 в полной мере используют преимущества современных оптимизированных средств разработки и технологии с низким энергопотреблением, а так же новейшего процесса производства микрочипов Flash высокой плотности с низким энергопотреблением.

Имея на борту ЦПУ, работающий на частоте до 50 МГц. до 32 кБ Flash, до 8 кБ ОЗУ и основной набор интерфейсов: I2C. SSP и универсальный асинхронных приемопередатчик UART с поддержкой RS-485 интерфейса, четыре таймера, 10-битный цифро-аналоговый преобразователь с мультиплексированием на 8 каналов, а так же встроенный блок управления питанием (PMU) серия микроконтроллеров LPC1100 позволяет разработчику создать недорогое многофункциональное устройство затратив при этом минимум средств и времени. Дальнейшее развитие периферийных блоков в микроконтроллерах этого семейства, которое дополнительно будет включать в себя: CAN интерфейс, 12-разрядные АЦП и ЦАП, USB, EEPROM, компаратор, температурный датчик, высокоточный таймер, периферию для создания сенсорных интерфейсов и расширенный объем памяти F lash до 128 кБ, дадут возможность разработчикам без особых проблем внедрить микроконтроллеры этого семейства в свои новые дизайны и создать более функциональные устройства.

Развитие линейки микроконтроллеров NXP на базе ядра Cortex

Являясь одним из передовых производителей 32-х битных микроконтроллеров, компания NXP, заглядывая в будущее и стремясь предопределить потребности рынка, имеет в своих планах идеи и разработки новых микроконтроллеров на базе популярного ядра Cortex.

Серия микроконтроллеров LPC1700 будет иметь расширенный объем памяти ОЗУ до 64 кБ, а так же включать в себя прототип микроконтроллера LPC2478, но выполненного на базе высокопроизводительного ядра Cortex-M3. Следующим этапом развития будет линейка микроконтроллеров LPC1600, она будет являться высокопроизводительным прототипом широко распространенных микроконтроллеров серии LPC2130 и LPC2140 и выпускаться в 64-х и 80-ти выводных корпусах. Серия LPC1800 будет направлена на еще большую производительность микроконтроллеров, иметь ЦПУ работающий на частоте до 125 М Гц и высокоскоростной USB Host/Device/OTG и другие периферийные устройства присущие линейке микроконтроллеров LPC1700.

Серия микроконтроллеров LPC1300 будет иметь развитую сигнальную периферию.

Как уже отмечалось, компания NXP планирует максимально расширить возможности линейки микроконтроллеров LPC1100 с ядром Cortex-M0, но при этом сохранить планку сниженного энергопотребления. В результате чего планируется включить в линейку микроконтроллеров достаточно большой набор периферийных блоков, таких как: CAN интерфейс, 12-разрядные АЦП и ЦАП, USB, EEPROM, компаратор, температурный датчик, высокоточный таймер, периферию для создания сенсорных интерфейсов и расширенный объем памяти до 128 кБ Flash.

Следующим этапом развития линейки микроконтроллеров компании NXP является серия микроконтроллеров на базе ядра Cortex-M4, о приобретении лицензии, на использование которой компания NXP анонсировала в феврале 2010 года. Процессор Cortex-M4 представляет собой высокоэффективное решение для приложений управления цифровым сигналом (digital signal control – DSC), сохраняя ведущие в отрасли показатели семейства процессоров Cortex-M по поддержке микроконтроллерных функций. Компания NXP намерена использовать процессор Cortex-M4 в широком диапазоне применений, требующих повышенной гибкости и дополнительных возможностей в области обработки сигнала.

Рисунок 8. Структура ядра Cortex-M4

Процессорное ядро Cortex- M4 (рис. 8) является новым развитием семейства Cortex-M и является самым мощным ARM-процессором для применений в области управления цифровым сигналом. Оно обеспечивает оптимальное сочетание высокопроизводительных функций обработки цифрового сигнала, таких как технологии single-cycle MAC (умножение с накоплением за один такт), single instruction multiple data (SIMD) (с одним потоком команд и множественными потоками данных), арифметика с насыщением и блок вычислений с плавающей точкой. с важными микроконтроллерными функциями, такими как встроенный контроль прерываний, режимы низкого энергопотребления, недорогие функции отладки, простота отладки и простота использования.

Инструментарий для микроконтроллеров NXP

Компания NXP имеет ряд компаний-партнеров разрабатывающих и выпускающих инструменты разработки, отладки и программное обеспечение для микроконтроллеров NXP, таких как: C компиляторы, отладчики, симуляторы, RTOS, оценочные платы, эмуляторы и многое другое. В число таких партнеров входит ряд наиболее популярных компаний: Keil, IAR, Hitex, Embedded Artists. Phytec. Code Red и другие.

Большинство этих компании поддерживают своими продуктами микроконтроллеры NXP и на базе ядра Cortex. Существует целый ряд отладочных средств для работы с микроконтроллерами NXP, но наиболее интересными и бюджетными из них являются отладочные платы серии LPCXpresso. созданные совместно компаниями NXP, Embedded Artists и Code Red. Это недорогая платформа инструментов разработки с поддержкой веб-технологий для работы с семействами микроконтроллеров LPC1300, LPC1100. Платформа LPCXpresso имеет удобный интерфейс и поддерживает полный цикл разработки.

Инструменты LPCXpresso рассчитаны как на новичков, так и на опытных разработчиков. Пользователи платформы LPCXpresso могу проводить оценку, изучать и осуществлять разработку, используя единый простой в использовании интерфейс и не лишаясь при этом расширенных функций, которые обычно доступны в мощных дорогостоящих средах разработки.

Рассчитанная на простоту и удобство использования платформа LPCXpresso обеспечивает разработчикам быстрый и удобный способ работы с микроконтроллерами серии LPC1300 и LPC1100, позволяя разрабатывать программное обеспечение для микроконтроллеров с ядром Cortex-M3, Cortex-M0 практически любому, и обеспечить простой способ перехода с микроконтроллеров других производителей.

LPCXpresso использует мощную интегрированную среду разработки (IDE) на базе Eclipse. имеет новейший интуитивно понятный пользовательский интерфейс, специально разработанный компанией NXP и оптимизированный под Cortex-M компилятор и библиотеки, отладчик LPC-Link JTAG/SWD и плату для разработки, предоставляя пользователям все необходимые инструменты для ускорения разработки продуктов и их выхода на рынок.

Основные технические характеристики LPCXpresso

Интегрированная среда разработки LPCXpresso IDE (на базе Code Red) содержит лучшую в своем классе среду программирования на языке C с расширенными функциями, такими как подсветка синтаксиса, свертывание кода, прямые ссылки на определения и объявления функций. Компилятор GCC и библиотека языка C, оптимизированные под архитектуру Cortex-M0, позволяют пользователям этих инструментов быстро и недорого разрабатывать высококачественное программное обеспечение. Интегрированная среда разработки имеет несколько усовершенствований, предназначенных специально для платформы LPC, упрощенная в расчете на разработчиков 8-ми и 16-ти битных приложений и использует разработанный компанией NXP единый интерфейс, позволяющий легко переключаться между процессами написания программного кода и его отладки.

LPCXpresso состоит из двух частей (рис. 9): оценочной платы LPCXpresso и интегрированного JTAG / SWD отладчика LPC-Link.

Оценочная плата LPCXpresso по габаритам аналогична другому инструменту онлайн-отладки серии MBED, таким образом, предлагая разработчикам единую платформу разработки для всей линейки микроконтроллеров NXP на базе Cortex. Для быстрого создания пробных решений пользователи могут опробовать широчайший набор программных функций с целым рядом готовых, совместимых по габаритам плат от компании Embedded Artists.

LPC-Link отладчик, входящий в состав LPXpresso Board, в случае необходимости можно с легкостью отключить от оценочной платы и использовать его непосредственно с платой разработчика, подключив ее с помощью встроенного 10-контактного разъема JTAG_SWD. LPC-Link использует микроконтроллер NXP серии LPC3154 в качестве системы отладки на базе ARM9 и имеет высокоскоростной USB-интерфейс для быстрой загрузки и отладки кода.

Рисунок 9. Состав LPCXpresso Board

Платформа LPCXpresso полностью поддерживает текущие семейства микроконтроллеров LPC1300 и LPC1100, а так же все планируемые расширения семейства LPC 1700 вплоть до 128 кБ. Недорогие решения по расширению платформы для обеспечения поддержки 256 кБ и 512 кБ предлагает компания Code Red. Полнофункциональный пакет Red Suite поддерживает мастер отслеживания исполнения кода в реальном времени и мастер ОС для быстрого конфигурирования FreeRTOS.

Концепция MBED (рис. 10) — еще одно недорогое решение для разработки и отладки систем на базе микроконтроллеров NXP серии LPC1700 на базе ядра Cortex-M3, предназначенное в первую очередь для образовательных учреждений, позволят производить онлайн макетирование без установки на компьютер дополнительного программного обеспечения.

Рисунок 10. Оценочная плата MBED

Компания MBED — это торговая марка компании NXP, которая оказывает техническую поддержку разработчиков систем на базе микроконтроллеров компании NXP. MBED компания-разработчик, представляет на рынке свои отладочные средства и программное обеспечение для разработки и отладки систем на микроконтроллерах компании NXP.

С возможностями работы оценочной платы серии mbed можно ознакомиться на сайте www.mbed.org.

Рисунок 11. Оценочная плата серии USB-LPC-Stick для LPC1768

К серии недорогих отладочных средств относятся и так называемые USB-LPC-Stick (рис. 11) модули от компаний Hitex. Эта отладочная система позволяет разработчику программировать Flash память и производить отладку приложения через встроенный аппаратный отладчик. Для расширения круга решаемых задач и функциональности LPC-Stick имеет 80-контактный разъем для подключения плат расширения.

Рынок микроконтроллеров, преимущества микроконтроллеров NXP

Как уже отмечалось ранее, компания NXP является тесным партнером компании ARM, разработки которой на сегодняшний день являются самыми популярными на рынке 32-х битных микроконтроллеров и используются рядом основных производителей микроконтроллеров. NXP Semiconductors являясь основным игроком на рынке микроконтроллеров с ядром ARM, выпустив на рынок ряд микроконтроллеров на базе ядра Cortex, укрепила свои лидирующие позиции на рынке 32-х битных микроконтроллеров. Помимо того, что компания NXP имеет долгосрочную лицензию на применения продуктов компании ARM, ее микроконтроллеры имеют ряд преимуществ над продукцией других производителей микроконтроллеров.

Сравнительный анализ производительности микроконтроллеров NXP на базе ядра ARM и Cortex-M с микроконтроллерами других производителей основанных на этих же ядрах уже не однократно производился, и ознакомиться с ним можно в различных источниках. Отметим лишь, что микроконтроллеры на базе ядра Cortex обладают самыми низкими ценами на рынке 32-х битных микроконтроллеров, а серия микроконтроллеров LPC1100 к тому же имеет самое низкое энергопотребление. Бо?льший интерес вызывает использование 32-х битных микроконтроллеров NXP на базе ядра Cortex-M в различных 8-ми и 16-ти битных приложениях.

М икроконтроллеры серии LPC1100 на базе ядра Cortex-M0 призванные вытеснить с рынка 8-ми и 16-ти битные микроконтроллеры, обеспечивают бо?льшую эффективность и простоту использования по сравнению с существующими 8-ми и 16-ти битными устройствами за счет большей производительности, простоты разработки, пониженного энергопотребления и существенного сокращения размера кода для исполнения любых 8-ми и 16-ти разрядных приложений.

Существующие 8-ми битные архитектуры имеют ограничения с точки зрения диапазона адресов, регистров, функциональности, не подходят для языков программирования высокого уровня и не уделяют достаточного внимания вопросам энергосбережения и масштабируемости. Процессорное ядро и системная архитектура Cortex-M0 в полной мере используют преимущества современных оптимизированных средств разработки и технологии с низким энергопотреблением, а так же новейшего процесса производства микрочипов Flash высокой плотности с низким энергопотреблением.

Серия микроконтроллеров LPC1100 имеет ЦПУ работающий на частоте до 50 М Гц, до 32 кБ flash, до 8 кБ ОЗУ и основной набор интерфейсов: I2C. SSP и универсальный асинхронных приемопередатчик UART с поддержкой RS-485 интерфейса, встроенные четыре таймера, 10-битный цифро-аналоговый преобразователь с мультиплексированием на 8 каналов, а так же встроенный блок управления питанием (PMU), в режиме глубокого сна (Deep-sleep mode) потребляет соизмеримый ток в сравнении с 8-ми и 16-ти битными микроконтроллерами работающих на частотах до 32 МГц, но выполняя операции в активном режиме на рабочей частоте до 50 МГц и потребляя несколько больший ток выполняет функции в несколько раз быстрее, в результате чего в ряде приложении общее потребление энергии LPC1100 будет существенно ниже. С учетом стоимости микроконтроллеров LPC1100 они являются оптимальным вариантом для новых разработок, где раньше использовались 8-ми и 16-ти битные микроконтроллеры.

Области применения микроконтроллеров NXP

М икроконтроллеры NXP, с ядром Cortex- M. обладая большим набором периферийных устройств и максимальным набором микроконтроллерных функций, в первую очередь направлены для применений в стандартных приложениях. Обладая рядом преимуществ над микроконтроллерами других производителей микроконтроллеры NXP оптимальны для применения в различных промышленных и бытовых устройствах.

Так, например, для построения высокоскоростных индустриальных сетей в микроконтроллерах серии LPC1700 имеется встроенный модуль Ethernet. Встроенные модули ШИ М и квадратурный энкодер позволяют без особого труда создать систему управления электромоторами, что вполне может быть реализовано и в автомобильной технике, например при создании панели приборов или электроусилителя руля (ЭМУР), а CAN интерфейс способен обеспечить высокоскоростную сеть передачи данных внутри системы. 12-битный АЦП, 10-битный ЦАП и интерфейс I2S позволяют работать со многими приложениями, требующими преобразования сигналов, а так же со звуком. Высокоскоростные шины I2C, UART и SSP позволяют организовать связь с внешними устройствами.

Для систем безопасности и пожаротушения, а так же систем автоматизированного сбора данных, например учетных устройств электроэнергии, жидкости и газа, модуль Ethernet в настоящее время так же является одним из основных интерфейсов для дистанционной связи и управления конечными устройствами. Выполненные на базе микроконтроллеров NXP серии LPC1100 счетчики могут быстро выполнять ряд основных и дополнительных функций, при этом обеспечивать минимальное энергопотребление и работать от батареи. При небольшой доработке и использовании модулей передачи данных по радиоканалу можно с легкостью организовать беспроводную сеть передачи данных, систему охраны или пожаротушения, или организовать современную систему контроля доступом с использованием криптозащищенных технологий.

Современные системы «умный дом» включающие в себя в том числе и системы автоматического освещения легко можно построить на микроконтроллерах NXP, при этом потратив минимум времени, а в совокупности с микросхемами управления осветительными устройствами от NXP или STMicroelectronics могут дать существенную экономию средств.

Высокая скорость выполнения задач и встроенный модуль PMU обеспечивающий дополнительное сохранение энергии в режимах пониженного энергопотребления (Sleep, Deep-Sleep, Deep-power-down) обеспечивают минимальный расход энергии и позволяют использовать микроконтроллеры NXP в различных портативных и переносных устройствах работающих от батарейки, и обеспечить долгосрочную службу батареи питания таких устройств.

М ногофункциональность и высокая производительность микроконтроллеров NXP на базе ядра Cortex с легкостью позволяет создавать, как сложные высокотехнологичные и производительные системы и аппараты для медицины, торговли, или бытовой техники, так и миниатюрные портативные устройства, использующиеся в медицине, промышленности или быту.

Направленность развития микроконтроллеров NXP на обработку и управление цифровыми сигналами (digital signal – DS), снимает необходимость в ряде случаев применение выделенных устройств цифровой обработки сигнала (DSP), дает дополнительные возможности для применения микроконтроллеров в других областях применения, где ранее не использовались микроконтроллеры общего применения.

Совокупность возможностей микроконтроллеров NXP на базе ядер Cortex-M, простоты разработки и большого выбора отладочных средств позволяет разработчикам электроники легко и не принужденно реализовать свои идеи и создать универсальные и не дорогие устройства за короткие сроки и с минимумом затрат.

Ранее

Модули компании «Терраэлектроника» на микроконтроллерах PiccoloTM и DelfinoTM компании Texas Instruments

В статье представлены встраиваемые модули TE-TMX320F28027 и TE-TMS320F28335 компании «Терраэлектроника», выполненные на основе сигнальных микроконтроллеров Texas Instruments. Первый модуль реализует возможности самого бюджетного из 32-разрядных МК компании. Второй модуль предоставляет разработчику преимущества сигнального МК с процессорным ядром, работающим на частотах до 150 МГц и имеющим сопроцессор арифметики с плавающей точкой. В комплект поставки обоих модулей входит отладчик типа XDS100, позволяющий загружать прикладную программу и контроллировать процесс ее выполнения.

Как повысить энергоэффективность процессорных систем

Вопрос о снижении энергопотребления является насущным для всех типов встраиваемых процессорных систем. В статье даются практические советы по оптимизации энергопотребления за счет нескольких режимов работы системы, а также по оптимизации ресурсов и увеличению срока службы батарей. Статья представляет собой авторизованный перевод [1].

Большие частоты не означают более высокую производительность

Несколько последних лет компания AMD пыталась убедить OEM-производителей, производителей ПК и потребителей в том, что частота — не тот параметр, который годится для оценки производительности ЦП для ПК. В статье на конкретных примерах показано, как за счёт усовершенствования архитектуры повысить производительность системы, не увеличивая тактовую частоту процессора. Статья представляет собой перевод [1].

Характеристики производительности микроконтроллеров на базе ядра ARM Cortex-M3

В 2006 г. компания ARM представила на рынке новое процессорное ядро Cortex-M3, которое пришло на замену более старого ядра — ARM7TDMI. Такие разработчики микроконтроллеров (МК) как STMicroelectronics, NXP, Texas Instruments и др. приобрели лицензию на это ядро и наладили серийный выпуск МК на его базе. В 2008 г. лицензию на данное ядро приобрела и российская компания ЗАО «ПКК Миландр», запланировавшая к выпуску отечественную линейку МК серии 1986ВЕ91 для аппаратуры специального назначения. В статье рассматриваются показатели производительности МК различных вендоров, но с одним общим процессорным ядром.

Микроконтроллеры серии 1986ВЕ91

Микроконтроллеры на основе ядра ARM Cortex M3

Перед разработчиком современных встраиваемых микроконтроллерных систем, как правило, остро стоят следующие задачи:

  • расширение функциональных возможностей, связанное с необходимостью увеличения производительности обработки информации;
  • снижение уровня энергопотребления (особенно важно для применений с батарейным питанием);
  • выполнение проекта в кратчайшие сроки при минимальных затратах на его осуществление;
  • цена конечного продукта должен быть ниже, чем у конкурентов.

Именно для решения данных задач и было разработано ядро Cortex-M3 c рядом усовершенствований в архитектуре. В частности ядром, которое содержит 3-ступечатый конвейер и выполнено по Гарвардской архитектуре, поддерживается ряд новых возможностей, в том числе предсказание переходов, однотактное умножение данных, аппаратное деление данных. Реализация данных новаций позволила добиться уровня удельной производительности 1.25 DMIPS/МГц. Кроме того, в ядре Cortex-M3 реализован новый набор инструкций Thumb-2, который в некоторых случаях позволяет добиться увеличения удельной производительности на 70% по сравнению с ядром ARM7TDMI-S, исполняющим инструкции Thumb, и на 35% по сравнению с тем же ядром, исполняющим инструкции ARM.

Снизить стоимость и энергопотребление разработчикам ядра Cortex-M3 удалось за счет оптимизации архитектуры, снижения размеров кристалла (вследствие более плотного расположения компонентов ядра, снижения количества логических вентилей и повышения эффективности использования памяти) и применения технологии 0,18 мкм. Возможности управления тактовой частотой и доступность нескольких экономичных режимов работы позволяют еще больше снизить энергопотребление.

При разработке ядра Cortex-M3 учитывалось, что разработчик должен приложить минимум усилий на освоение программирования. Теперь не нужно изучать ассемблерный код и глубоко вникать в особенности архитектуры процессора. Предложенный новый набор инструкций Thumb-2 более естественно воспроизводит Си-код, поддерживая такие операции, как побитная обработка, аппаратное деление и инструкции типа If/Then. Оптимальный как по производительности, так и по плотности кода набор инструкций Thumb-2 теперь исключает необходимость выбирать режим работы: ARM или Thumb. Ускорить процесс проектирования также поможет встроенная отладочная система, которая помимо традиционного порта JTAG содержит и двухпроводной последовательный порт SW.

Архитектура ядра Cortex-M3

Ядро Cortex-M3 выполнено по архитектуре ARMv7-M (профиль М) и имеет иерархическую структуру (рис. 1).

Рис. 1. Архитектура ядра Cortex-M3

Его основой является ЦПУ CM3Core, дополненное такими внешними устройствами, как контроллер вложенных векторных прерываний (КВВП), блок защиты памяти и система отладки и трассировки. Каждое из этих внешних устройств поддерживает расширенные возможности по конфигурации. ЦПУ ядра Cortex-M3 выполнено по гарвардской архитектуре с раздельными пространствами памяти программ и памяти данных. Этим оно отличается от ЦПУ ядер семейства ARM7, выполненных по фон-неймановской архитектуре с общим пространством памяти данных и памяти программ. Благодаря возможности одновременного считывания из памяти кода инструкции и данных ядро Cortex-M3 способно производить несколько операций параллельно, что ускоряет выполнение программы.

Конвейер инструкций ЦПУ имеет 3 ступени для выборки инструкции, ее дешифрации и выполнения. Если на конвейере оказывается инструкция перехода, то на этапе ее дешифрации также выполняется выборка инструкции, определенной в результате предсказания перехода, что ускоряет выполнение программы.

ЦПУ Cortex-M3 поддерживает дешифрацию как традиционных инструкций Thumb, так и новых инструкций Thumb-2. В состав ЦПУ входят АЛУ с возможностями аппаратного деления и умножения данных, логика управления и интерфейсы к прочим компонентам процессора. В него также входят 13 регистров общего назначения, два указателя стека, счетчик команд и ряд специальных регистров, в т.ч. регистр статуса программы. Каналы передачи данных, банк регистров и интерфейс памяти ядра Cortex-M3 являются 32-битными. Ядро Cortex-M3 может работать в одном из двух режимов работы: Thread и Handler, и поддерживает два уровня доступа к коду программы: привилегированный и непривилегированный, что облегчит реализацию сложных и открытых систем, не жертвуя при этом защищенностью системы. Код программы, исполняемый в непривилегированном режиме, имеет ограниченные возможности по доступу к некоторым ресурсам и специфическим областям памяти. Режим Thread является типичным режимом работы, в котором код программы может быть как привилегированным, так и непривилегированным. Переход в режим Handler происходит при возникновении исключительной ситуации (exception); в данном режиме весь код программы выполняется как привилегированный. Также предусматривается такое понятие, как рабочее состояние ядра. Их два: Thumb, в котором выполнение инструкций идет обычным путем, и Debug, в котором активизируются встроенные отладочные возможности ядра.

Несмотря на использование Гарвардской архитектуры, все пространства памяти ЦПУ Cortex-M3 имеют общую линейную систему распределения адресов в пространстве размером 4 Гбайт (рис. 2).

Рис. 2. Адресное пространство процессора Cortex-M3

В левой части рисунка некоторые сокращения на русском, другие на английском, легко запутаться, например, при расшифровке ETM

В пространстве статического ОЗУ и устройств ввода-вывода имеется битно-адресуемая область размером 1 Мбайт. В отличие от общепринятого способа чтение-модификация-запись, использующегося для битовой обработки и характеризующегося неэффективным расходованием машинных циклов, в ядре Cortex M3 используется более простой и эффективный способ. Он получил название Bit Banding и заключается в том, что доступ к битам в области хранения битов (см. рис. 2) осуществляется записью не в эту область, а в связанную с ней область доступа к битам, каждому байту которой назначен свой бит в области хранения. При этом за состояние бита в области хранения отвечает младший бит соответствующего байта в области доступа. Таким образом, вместо шести инструкций, необходимых для выполнения операции чтение-модификация-запись, выполняется только одна операция записи в ячейку памяти (три инструкции).

Отличием архитектуры ARMv7-M от предшествующих архитектур ARM является поддержка нового набора инструкций Thumb-2. Этот набор объединяет преимущества 16- и 32-битных инструкций, позволяя добиться как производительности 32-битных ARM-инструкций, так и высокой плотности 16-битных Thumb-инструкций (рис. 3).

Рис. 3. Сравнение тестов Drystone наборов инструкций ARM, Thumb и Thumb-2

Процессор Cortex-M3 содержит более совершенную систему прерываний (относительно ARM7), характеризующуюся задержкой вызова процедуры обработки прерывания всего лишь 12 машинных циклов (для сравнения, ARM7TDMI-S требует 24-42 цикла). Основу системы прерываний составляет КВВП, который в стандартной реализации поддерживает одно немаскируемое прерывание и 32 прерывания общего назначения с 8 уровнями приоритетов (в общем случае число прерываний может достигать 240 при 256 уровнях приоритета).

Блок защиты памяти является опциональным компонентом ядра Cortex-M3. Он позволяет повысить надежность встраиваемых систем за счет защиты критичной информации, используемой операционной системой, от действия пользовательских программ.

Доступ к встроенной отладочной системе реализован посредством порта доступа к отладочной системе (DAP), который с внешней средой связывается по одному из последовательных интерфейсов: 2-выводной последовательный отладочный порт SW или стандартный 5-выводной последовательный порт JTAG. Появление 2-выводного интерфейса делает возможным появление 32-битных микроконтроллеров с числом выводов менее 10 и существенно упрощает электрическое подключение к отлаживаемому устройству. Для микроконтроллеров с масочным ПЗУ предусмотрен специальный блок Flash Patch, который во время отладки позволяет осуществлять выборку инструкций не из ПЗУ, а из статического ОЗУ, тем самым существенно упрощая процедуру отладки программного кода для таких микроконтроллеров.

Микроконтроллеры на основе ядра Cortex-M3

Одной из компаний, которая уже освоила серийный выпуск флэш-микроконтроллеров на основе процессора Cortex M3, является STMicroelectronics (далее STM ). Данные микроконтороллеры образуют семейство STM 32. Внутри семейства микроконтроллеры группируются на две группы: Performance и Access (табл. 1).

Таблица 1. Микроконтроллеры компании STM на основе ядра Cortex-M3

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *