№16 / 2008 / статья 5

Микроконтроллеры NXP на ядре ARM

Александр Башлыков (NXP Semiconductors)

 

Введение

Микроконтроллерное ядро ARM было разработано одноименной английской компанией, организованной в 1990 году и названо по имени компании — «Advanced RISC Machines». Следует заметить, что компания специализируется сугубо на разработке микропроцессорных ядер и периферийных блоков, при этом не имея собственных производственных мощностей. Компания ARM поставляет свои разработки в электронной форме, например в формате Verilog, на их основе клиенты конструируют свои собственные микроконтроллеры. Клиентами Advanced RISC Machines являются свыше 60 компаний-производителей полупроводников.

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

Общие для всех процессоров семейства ARM9 возможности:

  • Высокопроизводительный 32-разрядный ARM RISC-механизм;
  • Гарвардская архитектура с раздельными шинами команд и данных;
  • Пятиуровневый конвейер;
  • Модуль, выполняющий операцию перемножения/аккумулирования 16×32 за один цикл;
  • Гибкая синхронизация CPU и шины, включая асинхронную, синхронную и однотактовую конфигурации;
  • Thumb 16-разрядная система команд;
  • Встроенные возможности Embedded ICE JTAG отладки программного обеспечения;
  • Возможность адаптации к перспективным CMOS-технологиям с меньшими топологическими нормами;
  • Совместимость с низковольтными CMOS-технологиями;
  • 100% совместимость двоичных кодов пользователя с ARM7;
  • Возможность интеграции класса «система-на-кристалле» со встроенным тестированием в процессе производства.

В таблице 1 приведены основные представители микроконтроллеров NXP с процессорным ядром ARM9, выпускаемые в настоящий момент.

Таблица 1. Микроконтроллеры NXP с процессорным ядром ARM9

Модель Ядро Кол-во
выводов
ОЗУ, кБ Кэш, кБ CAN USB Ethernet Memory interface Тактовая частота, МГц
LPC3180 ARM926EJ-S 320 64 64 нет Host/Device/OTG нет SDRAM, NAND 208
LPC3220 ARM926EJ-S 289 128 64 нет Host/Device/OTG нет SDRAM, NAND 266
LPC3230 ARM926EJ-S 289 256 64 нет Host/Device/OTG нет LCD, SDRAM, NAND 266
LPC3240 ARM926EJ-S 289 256 64 нет Host/Device/OTG есть SDRAM, NAND 266
LPC3250 ARM926EJ-S 289 256 64 нет Host/Device/OTG есть LCD, SDRAM, NAND 266
LPC2917 ARM968E 144 48 32 2 Нет нет 8/16/32 бит SRAM 80
LPC2919 ARM968E 144 48 32 2 Нет нет 8/16/32 бит SRAM 80

 

Описание микроконтроллера LPC3180

На рис. 1 представлена обобщенная структурная схема микроконтроллера серии LPC3180.

 

Обобщенная структурная схема МК LPC3180

 

Рис. 1. Обобщенная структурная схема МК LPC3180

Ключевые характеристики LPC3180:

  • процессор ARM926EJ-S с 32 кБ кэша программ и 32 кБ кэша данных, работающих с частотой до 208 МГц;
  • 64 кБ SRAM (Статическое ОЗУ, быстродействующая память, используемая для хранения данных);
  • Способ передачи данных: SDR (тактирование по активному фронту) и DDR (тактирование по обоим фронтам, увеличение быстродействия в 2 раза) SDRAM, NAND flash (режим блочной передачи данных);
  • DMA-контроллер, который может быть использован с картой SD и интерфейсом SPI для передачи типа память-память;
  • USB 2.0 full-speed (Скорость работы до 12 Мбит/с);
  • Многослойная шина AHB обеспечивает отдельную шину для каждого ведущего устройства;
  • Многочисленные последовательные интерфейсы, включая семь UART (Четыре стандартных со скоростью передачи данных до 460800 бит/с, и три специализированных быстродействующих, со скоростью 921600 бит/с, один из которых irDA), два диспетчера SPI (работающих с большим диапазоном последовательных периферийных устройств и памяти), и два интерфейса шины I2C(работает на 400 кГц);
  • Контроллер памяти SD (обеспечивает доступ к внешним картам с памятью SD, соответствует Card Specification Version 1.01);
  • Свыше 55 GPIO (входные/выходные выводы общего назначения). Включает 12 GPI (на вход), 24 GPO(на выход), и шесть GPIO;
  • 10-битный трехканальный АЦП с входным мультиплексированием (существует возможность понижения точности преобразования, для увеличения скорости вычисления);
  • Часы реального времени с отдельным блоком питания, тактируемые 32 кГц генератором частоты;
  • 32-битовый универсальный высокоскоростной таймер с 16-битным предделителем с возможностью входного захвата и выходного сравнения;
  • 32-битовый таймер миллисекунд, тактируемый от RTC. Прерывания могут быть сгенерированы путем использования двух соответствующих регистров;
  • Watchdog timer (сторожевой 32-разрядный таймер, препятствует зависанию программ, может использоваться как стандартный таймер);
  • Два блока PWM, тактируемые от RTC;
  • Стандартное средство отладки и тестирования ARM (эмуляция и отладка через последовательный порт JTAG);
  • Блок PLL (ФАПЧ, коррекция расфазирования синхросигналов);
  • Внутрикристальный генератор (По умолчанию используется для тактирования большинства устройств. Генератор может использоваться с частотой между 1 МГц и 20 МГц);
  • Переход в низкое энергопотребление (При снижении нагрузки).

 

Описание микроконтроллеров
серии LPC32xx

По сравнению с МК LPC3180 в этом семействе появились следующие дополнения и улучшения (рис. 2):

  • Тактовая частота увеличена до 266 Гц;
  • Размер оперативной памяти увеличен до 256 кБ;
  • Добавлены контроллеры ЖК, Ethernet;
  • Улучшен интерфейс внешней памяти, позволяющий работать с оперативной памятью типа DDR;
  • Модифицирован АЦП, который позволяет теперь непосредственно подключить сенсорный экран.

 

Обобщенная структурная схема МК LPC32xx

 

Рис. 2. Обобщенная структурная схема МК LPC32xx

 

Описание микроконтроллеров серии LPC29xx

На рис. 3 представлена обобщенная структурная схема микроконтроллеров серии LPC29xx.

 

Обобщенная структурная схема МК LPC29xx

 

Рис. 3. Обобщенная структурная схема МК LPC29xx

Ключевые характеристики LPC2917 и LPC2919: 

  • процессор ARM968E-S ,работающий с частотой до 80 МГц.
  • Внутрикристальная память:

— 16 кБ кэша программ и 16 кБ кэша данных,
— Две раздельных внутренних SRAM; 32 кБ SRAM и 16 кБ SRAM,
— 768 кБ flash-памяти программ;

  • Двухканальный CAN-контроллер, поддерживающий Full-CAN и расширенную фильтрацию сообщений (последовательная магистраль, обеспечивающая увязку в сеть «интеллектуальных» устройств ввода/вывода, датчиков и исполнительных устройств);
  • Два LIN-контроллера с полной поддержкой аппаратных средств для связи LIN (для обеспечения связи между простыми блоками в автомобиле, для которых нет необходимости применять высоконадежный интерфейс CAN);
  • Два UART(RS-232);
  • Три полнодуплексных Q-SPI (по четыре подключаемых устройства);
  • Четыре 32-битных таймера со способностью входного захвата и выходного сравнения;
  • 32-битный watchdog-таймер;
  • Контроллер прерываний с 16 приоритетными уровнями;
  • Два 8-канальных 10-битовых АЦП с временем преобразования 2,44 мкс на канал;
  • Внешний статический диспетчер памяти (SMC) с восемью банками памяти;
  • Запуск процессора через внешнее прерывание;
  • Стандартное средство отладки и тестирования ARM (эмуляция и отладка через последовательный порт JTAG).

 

Средства поддержки разработчика

Для МК на ядрах ARM9 имеются следующие средства разработки:

1) CodeMaster-ARM — набор программно-аппаратных средств, предназначенный для разработки и отладки систем на базе микроконтроллеров ARM7/ARM9.

Концепция CodeMaster-ARM — объединение текстового редактора, менеджера проектов, компиляторов, программного отладчика-симулятора, аппаратного JTAG-эмулятора и программатора в рамках единой интеллектуальной среды разработки.

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

Программное обеспечение работает в среде Windows-98/ME/NT/2000/XP/Vista.

В состав комплекта инструментальных средств CodeMaster-ARM входят:

Интегрированная среда разработки CM-ARM, объединяющая все программные компоненты системы в единый комплекс:

  • многооконный редактор и менеджер проектов;
  • компилятор CMC-ARM, включающий Си-компилятор, макроассемблер, линкер и утилиты;
  • оптимизированный GNU GCC-компилятор в качестве альтернативного бесплатного компилятора;
  • программный симулятор ядра ARM7, ARM9;
  • драйвер аппаратного JTAG-эмулятора JEM-ARM;
  • программное обеспечение программатора FLASH;

Аппаратный JTAG-эмулятор JEM-ARM и совместимые с ним тестовые платы LPC29xx, LPC31xx, LPC32xx.

2) Keil — набор программно-аппаратных средств, предназначенный для разработки и отладки систем на базе микроконтроллеров.

Среда mVision от компании Keil объединяет систему управления проектами, систему разработки и редактор исходных кодов, интерактивный отладчик и симулятор в одном мощном инструменте. Система разработки программного обеспечения mVision проста в использовании и помогает быстро создать программы, которые действительно работают. Редактор и отладчик mVision интегрированы в одно приложение, которое представляет взаимосвязанные инструменты для разработки программного обеспечения.

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

3) Для МК семейства LPC32xx компания Phytec выпустила отладочный комплект phyCORE®-ARM9/LPC3250 RDK (рис. 4).

 

Отладочный комплект phyCORE®-ARM9/LPC3250 RDK

 

Рис. 4. Отладочный комплект phyCORE®-ARM9/LPC3250 RDK

Существуют 5 различных конфигураций поставки:

Базовая: Модуль phyCORE-ARM9/LPC3250 (PCM-040), несущая плата phyCORE-ARM9/LPC3250 (PCM-967), макетная плата Bare PCB (PCM-988), Straight Ethernet-кабель, последовательный кабель, кабель USB Standard A to mini-B, адаптер питания, схемы, Spektrum-CD с необходимым ПО, компилятор, примеры программ и документация, опционально LCD — Hitachi 3.5» QVGA TFT-LCD (KLCD-011)

Linux: Базовая + PHYTEC Tool CD с Linux OS, загрузчики OS, GCC-компилятор, документация в электронном виде

Базовая + PHYTEC Tool CD с Linux OS, загрузчики OS, GCC-компилятор, документация в электронном виде

WinCE: Базовая + PHYTEC Tool CD с WinCE OS, загрузчики OS, GCC-компилятор, документация в электронном виде, 180 дней пользования Windows Embedded CE 6.0 Visual Studio и Platform Builder Evaluation CD

Keil: Базовая + Keil ULINK2 USB-JTAG, Keil RealView MDK for Embedded Applications CD

IAR: базовая + JLink USB-to-JTAG интерфейс (IAR-JLink), IAR Embedded Workbench Kickstart CD

4) Для МК семейства LPC29xx компании Hitex и Keil выпустили отладочные комплекты, которые укомплектованы оценочными платами, JTAG-отладчиками и всем необходимым для разработчика программным обеспечением.

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

 

Развитие линейки ARM9-микроконтроллеров

В течение ближайших шести месяцев компания NXP планирует выпустить несколько новых линеек микроконтроллеров на базе ядер ARM968E и ARM926EJ:

  • семейство LPC292x/293x для использования в системах управления двигателями и промышленных сетях;
  • МК со встроенным интерфейсом High Speed USB, позволяющим передавать информацию со скоростью до 480 Мбит/сек;
  • линейку LPC313x с расширенными аналоговыми функциями, интерфейсом ATA, встроенной системой управления питания компонентов на плате. Также в этом семействе будет реализована поддержка новейшего интерфейса SDHC (Secure Digital High Capacity), поддерживающий флеш SD-карточки объемом более 8 Гб.

Ответственный за направление в КОМПЭЛе — Валерий Куликов

Микроконтроллеры на ядре ARM9

 

 

 

 

 

Получение технической информации, заказ образцов, поставка —
e-mail: mcu.vesti@compel.ru  

Наши информационные каналы