Подписка на новости

Опрос

Нужны ли комментарии к статьям? Комментировали бы вы?

Реклама

 

2010 №2

Микроконтроллерная платформа — все, что вам нужно?

Вестхофф, Бернд (Bernd Westhoff)  
Глубоков Алексей  

Трудно представить себе современную жизнь без микроконтроллеров. Они сопровождают нас в бытовых электроприборах, в автомобилях и общественном транспорте, в рабочем оборудовании… Являясь производителем полупроводниковых компонентов с особым акцентом на сегменте микроконтроллеров, компания Renesas смогла добиться того, что продукты платформы M16C стали стандартом де-факто среди 16‑разрядных микроконтроллеров. С новой серией R32C Renesas начала выводить эту платформу на новый уровень производительности за счет 32‑разрядного ядра.

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

Компания Renesas отвечает этим требованиям, предлагая оптимальный ассортимент продукции. Платформа M16C (рис. 1) выделяется за счет совместимости с микроконтроллерными ядрами и кодом, а также различными периферийными устройствами и средами разработки. Она совместима даже по цоколевке, что упрощает подбор компонентов одинакового формата. Это избавляет от необходимости разрабатывать новые печатные платы и позволяет производителям адаптировать свои решения, просто выбирая необходимые изделия. Устройства на платформе M16C охватывают весь спектр востребованных объемов памяти — от 20-выводных ИС с объемом флэш-памяти 4 кбайт до 144-выводных ИС с объемом флэш-памяти 1 Мбайт.

Рис. 1. Линейка продукции на платформе M16C

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

В самом деле, ведь ключ к успеху любой платформы — это адекватное ядро, имеющее требуемый объем памяти, интегрируемое с необходимым для выбранной области применения набором периферийных устройств и с оптимальной ценой, позволяющей удержать в рамках себестоимость конструируемой системы. Серия изделий R32C, использующая новое 32-разрядное CISC-ядро, хорошо отвечает всем этим требованиям.

R32C — дополнение к линейке продукции на платформе M16C с повышенной производительностью

Выводя на рынок микроконтроллеры новой серии R32C, компания Renesas ставит перед собой цель дополнить платформу M16C более высокопроизводительными изделиями, имеющими большие объемы встроенной флэш-памяти и ОЗУ. Увеличение объемов памяти сверх стандартных 256 кбайт флэш-памяти — это требование сегодняшнего рынка. Такой рост потребностей обусловлен в основном необходимостью реализации функций безопасности с обеспечением надлежащей избыточности, а также встраивания многоязычных текстовых модулей для дисплеев в интерфейсах «человек-машина». Это позволяет производителям продавать свои системы по всему миру, оснащая их единым программным обеспечением. Требуемый объем ОЗУ растет из-за вполне обычной реализации коммуникационных протоколов, стеки которых хранятся в нем.

Для удовлетворения этих разнообразных требований в продукции серии R32C/111 используется подход FlatRAM. Эта философия предусматривает постоянный объем встроенного ОЗУ вне зависимости от выбранного объема флэш-памяти. Основная идея подхода FlatRAM состоит в том, что стеки коммуникационных протоколов, использующие встроенное ОЗУ, не уменьшаются в размерах только из-за снижения потребного объема флэш-памяти. Преимущество подхода FlatRAM состоит в том, что инженеры могут использовать изделие с максимальным объемом флэш-памяти на стадии разработки, а впоследствии на стадии массового производства выбрать изделие с наиболее подходящим объемом флэш-памяти при том же объеме ОЗУ. В серии R32C/111 доступны опции FlatRAM с объемом ОЗУ 40 и 63 кбайт. При этом можно также свободно выбирать объем встроенной флэш-памяти между 256, 384 и 512 кбайт. Это обеспечивает гибкость, достичь которой считается непростым делом (например, 256 кбайт флэш-памяти с 63 кбайт ОЗУ (рис. 2)).

Рис. 2. Подход FlatRAM в микроконтроллерах группы R32C/111

Так как понятно, что устройства с большими объемами флэш-памяти и ОЗУ должны производить больше вычислений, чем стандартный 16-разрядный микроконтроллер, эти компоненты оснащены мощным 32-разрядным ядром R32C, в основу которого легли знания, накопленные в ходе многолетнего опыта использования ядра M16C.

Ядро R32C

Ядро микроконтроллера фон-неймановской архитектуры R32C на базе 32-разрядного CISC-ядра состоит из двух наборов/банков регистров общим числом в шестнадцать 32-разрядных регистров общего назначения и адресации и четырех 32-разрядных фреймовых/статических базовых регистров. Использование регистров может варьироваться в соответствии с требованиями конкретной программы, например:

  • 4 регистра по 32 разряда;
  • 8 регистров по 16 разрядов;
  • 8 регистров по 8 разрядов.

Система команд ядра R32C состоит из 108 команд, большая часть которых выполняется за один-три такта процессора, обеспечивая высокую производительность CISC-ядра.

В R32C предусмотрена гибкая система режимов адресации, обеспечивающая всю необходимую свободу в программировании:

  • абсолютная адресация, косвенная адресация и косвенная адресация с индексированием;
  • режимы поразрядной адресации;
  • режим адресации «память-регистр»;
  • режим адресации «регистр-регистр»;
  • режим адресации «память-память».

В процессор встроен ряд устройств, повышающих общую производительность, как то:

  • аппаратный умножитель 32-разрядных чисел с 64-разрядным результатом;
  • циклический умножитель-накопитель (RMPA) 32-разрядных чисел с 64-разрядным результатом;
  • блок операций с плавающей точкой одинарной точности, соответствующий стандарту IEEE-754;
  • 32-разрядное многорегистровое устройство циклического сдвига;
  • 64-байтовая очередь команд.

Микроконтроллеры группы R32C/111 имеют максимальную рабочую частоту 50 МГц, что дает минимальное время обработки команды 20 нс. Концепция R32C позволяет достичь общей производительности в 42 DrystoneMIPS при выполнении кода из встроенной флэш-памяти без вставки тактов ожидания, что является выдающимся результатом для процессора CISC-архитектуры.

Ядро R32C обеспечивает рациональное использование кода за счет наличия специальных команд для поддержки языка C. Вдобавок часто используемые команды имеют однобайтовые коды, что позволяет разрабатывать экономные в отношении памяти программы на C и быстро выполняемый код. Кроме того, ядро R32C поддерживает 108 команд, позволяющих работать с его гибкой системой режимов адресации. Эта мощная система команд позволяет выполнять операции с адресацией «регистр-регистр», «регистр-память» и «память-память», а также арифметико-логические операции на битовых или полубайтовых данных, что обеспечивает выдающееся уменьшение объема кода даже для CISC-ядра, каковым является R32C.

На одном кристалле с процессором расположен модуль операций с плавающей точкой одинарной точности, соответствующий стандарту IEEE-754. Среда разработки позволяет использовать этот блок при компиляции по выбору пользователя, например в логических операциях нескольких типов, включая накопление, умножение, деление, вычитание, преобразование, сравнение и округление значений с плавающей точкой. Если поддержка блока операций с плавающей точкой включена, компилятор генерирует код, выполняющийся более чем в 50 раз быстрее, чем при использовании опциональной программной библиотеки для выполнения операций с плавающей точкой.

Встроенные 32-разрядный умножитель и 32-разрядное расширенное многорегистровое устройство циклического сдвига обеспечивают резкое ускорение выполнения арифметических операций, благодаря чему R32C можно считать идеальным решением для реализации высокопроизводительных систем.

Еще большее повышение производительности достигается благодаря таким устройствам, как 32-разрядные аппаратные умножители. Вдобавок ядро R32C поддерживает базовую функциональность цифровой обработки сигналов — например, выполнение операции циклического умножения с накоплением (RMAC), используемой при расчете фильтров.

Еще один фактор, важный в сегодняшних условиях, — малое время отклика системы на входящие прерывания. По этой самой причине ядро оснащено двумя наборами регистров (рис. 3), что позволяет переключаться с одного банка регистров на другой без необходимости сохранять текущее содержимое регистров в стеке с помощью команд PUSH и POP. Входящее прерывание вызовет смену активного банка путем установки флага, так что для обработки прерывания будет доступен свежий набор регистров. Тем самым время отклика на прерывания сокращается до 0,1 мкс.

Рис. 3. Наличие двух банков регистров обеспечивает быстрый отклик на прерывания

Для достижения максимальной производительности 32-разрядное ядро подключено к 64-разрядной внутренней шине памяти (рис. 4), которая повышает эффективность работы, не ограничивая сама по себе производительность процессора. Структура внутренних шин раздельная: имеется «быстрая» шина для доступа к процессору и в память, а также «медленная» шина для связи с периферийными устройствами. 16-разрядная периферийная шина работает на частоте до 32 МГц. Временной корректировкой и преобразованием разрядности на быстродействующей 64-разрядной шине процессора управляет блок интерфейса шины (BIU). Помимо внутренней и периферийной шины, R32C имеет внешнюю 8- или 16-разрядную шину, работающую на частоте до 32 МГц. Доступное адресное пространство общим размером 64 Мбайт может быть разбито максимум на 4 области выборки кристалла, для каждой из которых можно независимо задавать разрядность данных и вставку тактов ожидания, что обеспечивает максимально возможную гибкость в реализации задуманной системы.

Рис. 4. Структура шин R32C

Обширный ассортимент периферийных устройств R32C

Поскольку группа микроконтроллеров R32C/111 входит в состав платформы M16C, она обладает всеми ее типичными особенностями, включая высокоэффективные средства обеспечения совместимости с языком C, высокую степень электромагнитной совместимости, сниженный уровень электромагнитных помех и низкое энергопотребление.

По базовым функциям и обширному ассортименту периферийных устройств группа микроконтроллеров R32C соответствует семейству M16C. Цоколевка этих изделий совместима с цоколевкой других компонентов серий M32C/80 и M16C/60. Это позволяет клиентам модернизировать имеющиеся системы, получая значительный прирост производительности при гораздо более коротких сроках разработки.

Помимо разнообразной периферии, в состав которой входит 16-разрядный таймер, асинхронные и синхронные интерфейсы, че-тырехканальный контроллер прямого доступа в память (DMA), 10-разрядный аналого-цифровой преобразователь с числом каналов до 34 и 8-разрядный цифро-аналоговый преобразователь, микроконтроллеры группы R32C также оснащены мощным блоком ввода/вывода. Этот блок может программироваться на решение самых различных задач и обеспечивает поддержку протокола HDLC, используемого в ISDN и других областях применения. Он также может использоваться в качестве 8-канального устройства обработки временных меток входных и выходных сигналов и включает дополнительный 2-канальный синхронный или асинхронный последовательный интерфейс и цифровой фильтр в качестве опций. Для систем, требующих высокого уровня безопасности, в R32C предусмотрен обычный блок контрольной суммы (CRC) с встроенным полиномиальным алгоритмом CRC_CCITT (X16+X12+X5+1), который можно использовать, например, для проверки содержимого памяти на стадии запуска устройства.

В микроконтроллер R32C встроен понижающий преобразователь напряжения, за счет чего ему требуется только один источник питания напряжением от 3 до 5,5 В. Низкое энергопотребление достигается даже в полностью активном режиме; типичные параметры — 28 мА при напряжении 3 В на частоте 50 МГц (рис. 5).

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

Потребляемый ток можно далее снизить до 8 мкА, используя в качестве источника тактовых сигналов для процессора внешний или встроенный тактовый генератор на частоту 32 кГц в энергосберегающем режиме. Наконец, используя режим останова, потребляемый ток можно снизить до 5 мкА, причем система таймеров R32C будет по-прежнему способна вести счет внешних сигналов и выводить устройство из режима останова по превышении определенного числа отсчетов. Имеется также контрольный таймер, который продолжает вести счет с помощью встроенного тактового генератора — даже в случае отказа компонента и отсутствия сигнала частоты XIN.

Применение микроконтроллеров R32C

Для микроконтроллеров группы R32C можно в качестве опции выбирать необходимое число CAN-интерфейсов. Клиент может выбрать устройство с двумя (R32C/118), одним (R32C/117) или без CAN-интерфейсов (R32C/116 и R32C/111) в соответствии с планируемым применением. Эта возможность создает идеальные условия для реализации шлюзовых функций в конструкциях, предусматривающих мониторинг и управление несколькими системами шин, а также в конструкциях, не требующих наличия CAN-интерфейса. Еще одно преимущество состоит в снижении затрат за счет меньшего числа компонентов. По цоколевке микроконтроллеры группы R32C совместимы с устройствами на платформе M16C и M32C, что позволяет клиентам без труда расширять функциональность CAN, если она требуется.

Изделия M32C/87, подобно всем остальным изделиям на платформе M16C, предназначены для применения в устройствах бытового и промышленного назначения (рис. 6). Они представляют собой великолепные микроконтроллеры общего назначения, которые отвечают большинству текущих требований рынка и предусматривают возможность модернизации и масштабирование для приспособления к меняющимся требованиям.

Рис. 6. Линейка продукции R32C для применения в изделиях промышленного и бытового назначения

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

Микроконтроллеры поставляются в 100-и 144-выводных корпусах LQFP. К выпуску в этом году планируются также 64-и 80-выводные модификации.

Имеется ряд эмуляторов, которые можно использовать в качестве сред разработки различных пользовательских конструкций (рис. 7). В их состав входит начальный комплект (RSK) и интегральный отладчик E8a для первых опытных разработок или интегральный отладчик E30A с однопроводным интерфейсом для более продвинутых разработок.

Рис. 7. Линейка средств разработки для R32C

Что касается компиляторов, то микропроцессоры группы R32C поддерживаются программными продуктами IAR Systems, а также HEW4 — собственной интегрированной средой разработки компании Renesas. В состав среды HEW4 входят все необходимые элементы для успешной разработки программного обеспечения, включая компиляторы языка C, отладчики, средства управления проектами, ПО для программирования флэш-памяти и редактор. Среду HEW4 можно загрузить бесплатно с сайта компании Renesas, после чего все ее функции будут доступны в течение двух месяцев. По окончании этого ознакомительного периода функции компилятора языка C ограничиваются компиляцией кода размером до 64 кбайт.

Скачать статью в формате PDF  Скачать статью Компоненты и технологии PDF

 


Другие статьи по данной теме:

Сообщить об ошибке