Виаком
телефон
поискпоиск входаккаунт корзинакорзина


на складе в Киеве под заказ

не выполнен вход

 

Новости компании



20.10.2008

XMEGA - новая ветвь технологии picoPower от корпорации Atmel

XMEGA - новая ветвь технологии picoPower от корпорации Atmel

   Развитие микроконтроллеров в наши дни не стоит на месте. Пытаясь закрепить свой сегмент на рынке, а также завоевать новых пользователей, производители Flash-микроконтроллеров совершенствуют технологию для уменьшения энергопотребления, не забывая при этом о росте производительности и увеличения объема встроенной Flash-памяти.
   Компания Atmel, несмотря на завоевание приличного сегмента для встраиваемых применений, хочет занять новую качественную нишу на мировом рынке 8-разрядных микроконтроллеров с помощью семейства XMEGA.

   Почему Аtmel назвал новую серию микроконтроллеров таким схожим именем с предыдущей серией МЕGA? Многие могут подумать, что это означает лишь незначительное дополнение возможностей предыдущего семейства, например, добавлением новых периферийных модулей. Но это не так. Производитель прежде всего  хотел подчеркнуть программную совместимость с широко известными семействами “tiny” и “MEGA”, ведь новые XMEGA – это AVR контроллеры. Для освоения более современного продукта разработчик не должен изучать что-то новое или подвергать отлаженную на предыдущих сериях программу глубокой переделке.  И тут же хочется развеять мнение скептиков о том, что XMEGA – это всего лишь дополнение семейства MEGA.

   По цоколевке и расположению выводов на корпусе новые микроконтроллеры не совместимы с ATtiny и ATMEGA, они будут выпускаться в удобных для пайки корпусах QFP с количеством выводов от 44 до 100. Встроенная Flash-память будет размещена на кристалле в объеме от 16 до 1024 килобайт. Рабочее напряжение будет составлять от 1,8 до 3,6. Также как и в прочих AVR  новая версия микроконтроллеров будет представлена в двух исполнениях разделенных по потреблению:

  • базовая версия с напряжением питания 2,7 – 3,6 В и  тактовой частотой до 32 МГц.
  • версия с напряжением питания 1,8 – 2,7 В и максимальной тактовой  частотой 12 МГц, при этом линии ввода/вывода будут устойчивы к напряжению 3,3 В.>

   В дальнейшем компания Atmel планирует сделать линии ввода/вывода в обеих группах устойчивыми к уровню напряжения 5 В. Также планируется расширение рабочих температур до диапазона -40…+125оС (пока микроконтроллеры будут выпускаться только в индустриальном температурном диапазоне -40…+85 оС).

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

1. Понижение энергопотребления. Это фактор  в современной электронике является один из самых приоритетных.  Поэтому новые XMEGA будут  производиться по технологии picoPower  второго поколения. Благодаря этой технологии значительно уменьшены токи утечки ячеек памяти Flash и EEPROM  в режиме Power Down. К тому же новые аппаратные модули DMA и Event System (более подробно о этих модулях будет сказано ниже) – значительно снизят время пребывания центрального процессора в активном режиме для уменьшения суммарного энергопотребления.

   Усовершенствован ряд сервисных узлов микроконтроллера, постоянно находящихся в активном режиме:
- новый сторожевой таймер WDT тактируется от отдельного внутреннего генератора с очень низким энергопотреблением. В добавок WDT сможет работать в так называемом “оконном” режиме (Windows Mode), что также приведет к снижению потребления энергии. В данном режиме пользователь может самостоятельно определить временной слот, в течении которого WDT должен быть сброшен для нормального функционирования системы. Если WDT сбрасывается слишком рано или слишком поздно, то это считается системной ошибкой и генерируется системный  сброс процессора. В режиме “окна” WDT  использует два различных периода тайм-аута - закрытый (TOWDTW) и открытый (TOWDTW).

   Закрытый период тайм-аута определяет продолжительность от 8 мс до 8с, в течение которого  WDT не должен сбрасывать пользователем, в противном случае генерируется системный сброс. Открытый период тайм-аута также лежит в пределах от 8 мс до 8с, в течение   этого периода сторожевой таймер может (и должен!) быть сброшен. Открытый период всегда следует за закрытым периодом, поэтому общее время продолжительности  тайм-аута будет складываться из времен обоих  тайм-аутов - закрытого и открытого. Значение закрытого периода по умолчанию определяется fuse-битами. В качестве иллюстрации на рис. 1,2 приведено сравнение стандартного и "оконного" режимов работы сторожевого таймера в микроконтроллерах XMEGA.



Рис.1, 2.  Стандартный (1) и оконный (2) режимы работы сторожевого таймера.

- часы реального времени (RTC) функционируют в режимах пониженного энергопотребления, пробуждая кристалл через регулярные интервалы времени. Блок-схема RTC в микроконтроллерах XMEGA показана на рис. 3. В основе лежит 16-битный счетчик, который считает импульсы опорной частоты и выдает событие или запрос на прерывание по переполнению или по достижении заданного значения. Опорная частота (базовый вариант) получается при помощи точного внешнего часового кварца 32,768 кГц, причем дизайн счетчика на кристалле оптимизирован для максимального низкого энергопотребления.

   Опорная частота для RTC может составлять и 1,024 кГц. В этом случае она получается внутренним давлением частоты 32 кГц от одного до трех источников: генератора на внешнем часовом кварце 32 кГц (как в базовом варианте), внутреннего генератора RC32К (32 кГц) или генератора ULP32К, который входит в состав сторожевого таймера и имеет минимальное энергопотребление. В состав RTC также входит программируемый делитель (на 7 фиксированных значений) для понижения частоты сигнала перед подачей его на основной счетчик. Это позволяет получить максимальное время ожидания более 18 часов.
   Существуют два пути для формирования запросов на прерывание и события -по сравнению или по переполнению (рис.3). В первом случае счетчик RTC продолжает считать дальше, а во втором - обнуляется при достижении значения, записанного в регистр Period.
Улучшена структура блока контроля питания (БКП) . Повышена точность определения напряжения питания , кроме этого БКП будет отслеживать уровень питающего напряжения периодически. При этом период опроса БКП может устанавливаться разработчиком, чтобы достигнуть оптимального для конечного приложения компромисса между временем реакции узла БКП и его суммарным энергопотреблением.

Все представители семейства XMEGA поддерживают 5 режимов энергосбережения:

  • Режим  ожидания (Standby). В этом режиме работа тактового генератора не прекращается, что гарантирует быстрый выход микроконтроллера из режиа ожидания
  • Режим микропотребления (Power Down). Режим в котором сохраняется содержание регистров файла, но прекращается работа системы тактирования. Выход из этого режима возможен по внешнему прерыванию, по совпадению адреса в блоке TWI
  •  Режим пониженного потребления (Power Save). По своей работе идентичен режиму Power Down, но при этом допускается независимая работа RTC
  •  Режим холостого хода (Idle). Idle прекращает работу процессорного ядра и фиксирует содержимое памяти программ. В тоже время все периферийные модули включая DMA остаются работоспособными.

2. Увеличение производительности.  Увеличение производительности новых XMEGA связано не только с увеличением тактовой частоты до 32 МГц при 2,7 В и 12 МГц при 1,8 В, но также с добавлением ряда периферийных блоков существенно повышающих производительность в определенных приложениях:
- контроллер прямого доступа к памяти (DMA). DMA существенно увеличивает производительность кристалла, особенно для задач реального времени. Его использование сокращает время обмена данными между памятью и периферией, между отдельными областями памяти, а также между различными областями памяти, а также между различными периферийными блоками. Центральное процессорное ядро не принимает участия в процессе передачи данных, вся обработка и сопровождение потока лежит на контроллере прямого доступа к памяти. Контроллер DMA имеет 4 канала причем приоритет обслуживания и распределения между каналами  программируется. Он поддерживает пакетную передачу данных с переменной длиной пакета - 1, 2, 4 или 8 байт в посылке. Общая длина передачи может варьироваться от 1 кбайта до 64 кбайта с возможностью повторения. Допускается формирование запроса на прерывание по окончании процесса передачи данных. Каждый канал DMA может работать как на прием так и на передачу. Контроллер DMA может получать доступ к внутренней шине данных микроконтроллера только в случае если она свободна и центральный процессор ничего на ней не делает. Приоритет доступа к внутренней шине данных распределяет специальный арбитражный узел, аппаратно отнесенный к подсистеме управления памятью данных микроконтроллера.
- система обработки событий (Event system).  Главная особенность системы событий  гибкий подход к предоставлению доступа к каждому из подключенных к ней периферийных модулей (рис.4). Эти модули программируются пользователем для определения по какому из внешних воздействий может генерироваться событие, например при переполнении таймера, перепаде напряжения на выводе микроконтроллера и т.д. Периферийные модули  могут программироваться и на то, каким образом интерпретировать поступающее к ним событие – инкрементировать таймер, выставить выходной сигнал на выводе микросхемы, начать преобразование АЦП и т.д. Таким образом, система событий разгружает систему прерываний в основном за счет уменьшения количества формируемых запросов на прерывание. При этом снижается загрузка центрального процессора для обработки различных «несистемных» прерываний, генерируемых периферийными узлами и модулями, в том числе и какими-то внешними событиями. Также значительно повышается надежность обработки данных и принятия решений: критичные ко времени или к стабильности выполнения функции теперь становятся более прогнозируемыми, а значит, увеличивается надежность работы всей системы в целом.

Рис. 4. Система обработки событий Event system.

- многоуровневый программируемый контроллер прерываний (PMIC). Не свойственная ранее для семейства AVR  многоуровневая система прерываний  теперь поддерживается в новых микроконтроллерах XMEGA. Для PMIC заявлена поддержка 4-х уровневого процесса обслуживания – всем запросам на прерывание могут быть присвоены определенные уровни приоритета. В дополнении к нему теперь имеются еще 3 уровня: High, Medium и Low. Для каждого источника запроса на прерывание его приоритет может назначаться одним из этих уровней. При поступлении запроса на обслуживании прерываний с более высоким уровнем приоритета процесс обработки прерывания с более низким уровнем приостанавливается, и процессор начинает обрабатывать более значимый запрос. Запросы на прерывание, которым присвоен статус High, обслуживается немедленно после поступления, даже если центральный процессор сильно загружен. Для всех прерываний, имеющих уровень приоритета Low на обслуживание, предусмотрена специальная процедура диспетчеризации, чтобы не пропал ни один из запросов, и все они были обслужены, пусть даже с задержкой. Такая процедура носит название Round Robin – циклический алгоритм диспетчеризации, при котором все процессы активизируются в фиксированном циклическом порядке. Иногда этот алгоритм называют «карусельной диспетчеризацией».

3. Расширение набора периферии.  Всю периферию микроконтроллеров XMEGA можно условно разделить на 3 части: блок обработки аналоговых сигналов, таймеры/счетчики, модули последовательных коммуникаций.
- блок обработки аналоговых сигналов. Большинство представителей семейства XMEGA снабжены одним или двумя восьмиканальными  аналоговыми портами, каждый из  которых может содержать 2-а компаратора, АЦП  и ЦАП.. Среди возможностей нового АЦП нужно отметить  увеличение разрядности  до 12 бит,  увеличение скорости преобразования до 2 миллионов выборок в секунду и встроенную калибровку. При наличии слабого сигнала на входе АЦП можно использовать имеющийся на борту промежуточный узел усиления входного аналогового сигнала, который позволяет расширить динамический диапазон входных напряжений преобразования в случае, когда входы АЦП включены в дифференциальном режиме. Коэффициент усиления этого узла может принимать следующие   значения : 1, 2, 4, 8, 16, 32 и 64. Однако наиболее интересной особенностью нового АЦП можно считать использование так называемых виртуальных каналов. Они используют один и тот же аппаратный узел АЦП для осуществления преобразований, но благодаря специальной архитектуре одновременно и независимо друг от друга может осуществляться до четырех преобразований. Результаты преобразования сохраняются в независимых регистрах. Эта особенность поможет снизить сложность программного обеспечения , так как различные программные модули могут инициировать начало преобразования и считывать результаты независимо друг от друга.  Встроенный АЦП с перечисленными выше особенностями делает серьезную заявку на увеличение сегмента приложений микроконтроллеров  AVR, а наличие на кристалле ЦАП только укрепит вновь занятые позиции. Разрядность цифро-аналогового преобразователя у XMEGA, составляет 12 бит, скорость преобразования до 1 Мбит/с. ЦАП может тактироваться сигналом периферийной тактовой частоты, запуск на преобразование могут осуществлять различные периферийные модули, подключенные к системе событий. ЦАП может работать в режиме пониженного энергопотребления благодаря возможности выключения между последовательными циклами преобразования. В таком случае время преобразования станет больше заявленного из-за необходимости приведения ЦАП в состояние готовности при старте каждого нового преобразования. В виду того, что все цифро-аналоговые преобразователи не отличаются достаточной линейностью при прохождении через нулевое напряжение, у ЦАП контроллеров XMEGA  существует возможность формирования нулевого выходного напряжения. Встроенные возможности подстройки нуля и коэффициента усиления позволяют программисту калибровать и усиление и смещение в ЦАП. Для этого у микроконтроллеров XMEGA в структуре ЦАП имеются два регистра, в которые можно записывать 7-битные калибровочные данные для обоих параметров. Для достижения наилучших результатов при калибровке рекомендуется использовать одни и те же «входные параметры»: источник опорного напряжения, выходной канал, время преобразования и интервал обновления, что используется при нормальной работе ЦАП. Предел формируемого выходного  напряжения  определяется выбором источника опорного напряжения (AVCC, встроенный источник опорного напряжения (ИОН) или внешний ИОН). Начало преобразований ЦАП инициируется либо записью нового цифрового кода во входной регистр ЦАП, либо поступлением событий из описанной выше системы событий Event System. Информацию для преобразования во входные регистры можно записывать как из программы, так и через контроллер DMA. Выход с ЦАП можно организовать как по одному, так и по двум независимым каналам. Второй способ организации осуществим благодаря интегрированному в ЦАП устройству выборки хранения, которое работает в качестве аналогового демультиплексора. Результат предыдущего преобразования хранится в УВХ, в то время как ЦАП осуществляет текущее преобразование. По окончанию преобразования УВХ переключает выход ЦАП на второй вывод микроконтроллера. Таким образом два канала ЦАП могут работать независимо и выдавать два аналоговых сигнала разной формы и частоты.

 - модули последовательных коммуникаций.  Как и в серии MEGA новая линейка микроконтроллеров снабжена богатым набором модулей, организующих последовательный обмен данными такие как SPI, TWI и USART, последний может также работать в режиме аппаратной поддержки IrDA. Состав и количество коммуникационных интерфейсов зависят от выбранного подсемейства (Таблица 1.) Структура периферийных блоков SPI, TWI и организация работы с ними идентична микроконтроллерам MEGA, а вот у протокола  USART появилась новая интересная особенность – поддержка IrDA ( модуляция-демодуляция сигнала на на скоростях обмена до 115,2 кбод). Реализованы три схемы модуляции:

  • с фиксированной длительностью импульсов (программируется 8 бит);
  • 3/16 периода скорости обмена данными;
  • запрещение модуляции импульса.

Модуль IRDA может быть подключен к любому из восьми (пяти) блоков USART, но может быть использован только с одним из USART в каждый момент времени. Поэтому режи IrDA не может быть установлен более чем для одного модуля USART.
Для приема можно запрограммировать минимальную длительность импульса, которая будет определена как логический «ноль». Остальные более короткие импульсы будут декодироваться в логическую «единицу» (отсутствие импульса). В качестве входа для приемника IRDA можно выбрать канал системы событий, что может быть использовано для фильтрации.

Таблица 1. Основные параметры (в т.ч. планируемые) семейства XMEGA.

Параметр

Подсемейства XMEGA 

A4

A3

A1

Объем встроенной Flash памяти

ATxmega16
ATxmega32
ATxmega64
ATxmega128

ATxmega64
ATxmega128
ATxmega256

ATxmega64
ATxmega128
ATxmega256
ATxmega384

Наличие АЦП и ЦАП

+

+

+

Количество таймеров/счетчиков

5

8

8

Количество модулей USART

5

8

8

Количество модулей SPI

2

4

4

Количество модулей TWI

3

2

2

Наличие Ext. Bus Interface

-

-

+

Количество выводов

44

64

100

4. Встроенные устройства шифрования.
   В последнее время многие компании производящие электронные устройства все чаще интересует вопрос защиты  информации. Существует ряд способов реализации защиты различного уровня сложности. Но зачастую использование защиты повышает себестоимость , а это не допустимо в серийных изделиях с одной стороны, а с другой  стороны именно такие изделия чаще всего копируются с целью массового производства. Совсем другое дело когда используемый микроконтроллер имеет  встроенные криптомодули.
   У новых представителей семейства AVR микроконтроллеров ХМЕGA существуют  аппаратные средства обеспечения защиты информации. В качестве реализованных стандартов компания Аtmel выбрала два широко распространённых стандарта шифрования-AES и DES. Шифрование  по стандарту DES реализуется выполнение специальной команды DES, которая есть в  системе команд микроконтроллера. При этом на выполнение данной команды не потребуется увеличивать цикл, так как   команда  DES выполняется всего  за один период основной тактовой частоты. Но предварительно перед началом выполнения цикла кодирования-декодирования в модуль должны быть записаны и  ключ, и данные. Например, для шифрования по стандарту DES требуется поместить 8-байтный ключ и 8-байтный блок данных в регистровый файл, а затем последовательно выполнить команду DES 16 раз для шифрования или дешифровки блока данных.  Для шифрования AES криптомодуль шифрует и дешифрует блоки данных размером 128 бит с использованием 128-битного ключа.. Время затраченное на  процесс обработки блока составляет 375 периодов периферийной тактовой частоты.

5.Средства отладки и программирования микроконтроллеров XMEGA.

   Как и у  всех  остальных AVR микроконтроллеров режим программирования и отладки XMEGA будет поддерживаться JTAG эмулятором  JTAGICE mk II. Для внутисхемного программирования также подойдет ISP программатор AVRISP mk II. Но в качестве оценочного комплекта для XMEGA предлагается набор STK600 (рис.5).  Отладочный набор STK600, поддерживающий все 8-разрядные микроконтроллеры AVR (в том числе новую серию XMEGA) и 32-разрядные микроконтроллеры AVR32 UC3. STK600 построена по тому же принципу, что и популярный набор STK500. STK600 подключается к компьютеру через USB-порт, работает под управлением AVR Studio либо AVR32 Studio.
STK600 поддерживает различные микроконтроллеры, благодаря системе переходных мезонинных плат и мезонинных плат с панельками. Различные мезонинные платы с панельками (ZIF-сокетами либо DIP-панельками) поддерживают все типы корпусов микроконтроллеров AVR. Переходные мезонинные платы используются для установки мезонинных плат с панельками в STK600.

Рис. 5  Оценочный комплект STK600

   В штатной комплектации (код для заказа ATSTK600) будет поставляться базовая плата с мезонинной демонстрационной платой, на которой распаян микроконтроллер ATmega2560. Мезонинные платы с панельками (и набором переходных мезонинных плат) поставляются отдельно
STK600 позволяет программировать микроконтроллеры (установленные в STK600 или на внешней целевой плате) по интерфейсам ISP, JTAG, debugWire или PDI (Program and Debug Interface в XMEGA).

   Все порты микроконтроллеров выведены на отдельные разъемы на плате. На плате содержатся кнопки и светодиоды, которые с помощью кабелей подключаются к портам микроконтроллера. Тактовый генератор может формировать сигнал с частотой до 32МГц. STK600 содержит физические интерфейсы RS232, LIN и СAN. Имеется разъем для подключения внешних внутрисхемных эмуляторов (AVRDRAGON, JTAGICE2, AVRONE!).




 
изготовление печатных плат | плис altera | микроконтроллеры atmel | магазин электронные компоненты | разъёмы amphenol | трансформаторы hahn | okw | tyco | vicor | marquardt | инструмент pro'skit