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

Микроконтроллерная платформа — все, что вам нужно? Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
238
79
i Надоели баннеры? Вы всегда можете отключить рекламу.

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Глубоков Алексей, Вестхофф Бернд

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

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Текст научной работы на тему «Микроконтроллерная платформа — все, что вам нужно?»

Бернд ВЕСТХОФФ (Вег^ WESTHOFF) Алексей ГЛУБОКОВ

Микроконтроллерная платформа —

все, что вам нужно?

Трудно представить себе современную жизнь без микроконтроллеров. Они сопровождают нас в бытовых электроприборах, в автомобилях и общественном транспорте, в рабочем оборудовании...

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

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

Компания Renesas отвечает этим требованиям, предлагая оптимальный ассортимент продукции. Платформа М16С (рис. 1) выделяется за счет совместимости с микро-

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

Так или иначе, рынок движется не только в сторону гибкой платформенной кон-

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

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

1?32С — дополнение к линейке продукции на платформе М16С с повышенной производительностью

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

Платформа

М16С

Линейка продукции серии 1332С/100

Для применения в продукции промышленного и бытового назначения

50 МГц Большой объем ОЗУ (63 кбайт)

1*32С/111

100 контактов 80 контактов '

64контакта

50 МГц Большой объем ОЗУ (63 кбайт)

/ 144 контакта

Для применения в автомобильной промышленности

144 контакта

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

FlatRam*

ОЗУ FlatRAM 256 кбайт/63 кбайт 384 кбайт/63 кбайт 512 кбайт/63 кбайт

64 кбайт ‘ R32C/111 R32C/111 R32C/111 "

100-выводной i I i I i I

корпус LQFP

ОЗУ FlatRAM 256 кбайт/40 кбайт 384 кбайт/40 кбайт 512 кбайт/40 кбайт

40 кбайт -- R32C/111 R32C/111 R32C/111 -

* Постоянный объем ОЗУ при любых объемах флэш-памяти

Флэш-память

256 кбайт

384 кбайт

512 кбайт

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

системы по всему миру, оснащая их единым программным обеспечением. Требуемый объем ОЗУ растет из-за вполне обычной реализации коммуникационных протоколов, стеки которых хранятся в нем.

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

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

Ядро R32C

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

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

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

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

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

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

• абсолютная адресация, косвенная адресация и косвенная адресация с индексированием;

• режимы поразрядной адресации;

• режим адресации «память-регистр»;

• режим адресации «регистр-регистр»;

• режим адресации «память-память».

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

• аппаратный умножитель 32-разрядных чисел с 64-разрядным результатом;

• циклический умножитель-накопитель ^МРА) 32-разрядных чисел с 64-разрядным результатом;

• блок операций с плавающей точкой одинарной точности, соответствующий стандарту 1ЕЕЕ-754;

• 32-разрядное многорегистровое устройство циклического сдвига;

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

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

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

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

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

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

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

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

Банк О Активен, когда бит банка «В» в регистре флагов равен О

(состояние по умолчанию)

R2H R2L ROH ROL

R3H R3L R1H R1L

зі R6 16 15 R4 о

31 R7 16 15 R5 о

31 АО 0

31 А1 0

31 А2 0

31 A3 0

31 SB 0

31 FB 0

Два банка регистров

ПЕРЕКЛЮЧЕНИЕ

Полезно при входящих прерываниях:

при переключении на другой банк отсутствует необходимость сохранения данных в стеке (PUSH ... POP)

Активен всегда один набор регистров, вне зависимости от состояния бита банка «В»

USP 0

ISP D

INTB 0

PC 0

Банк 1 Активен, когда бит банка «В» в регистре флагов равен 1

R2H R2L R0H ROL

R3H R3L R1H R1L

зі R6 16 15 0

зі R7 16 15 R5 о

31 A0 0

31 A1 0

31 A2 0

31 A3 0

31 SB 0

31 FB 0

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

Флэш-память ОЗУ Периферия

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

32 МГц 50 МГц 16 МГц

50 МГц Процессор R32C/100

ОЧЕРЕДЬ 64 байт

Шина данных процессора (6 4-раз рядная)

Шина адреса процессора (26-разрядная)

50 МГц

БИШ

Блок интерфейса шины

э К.

со

32 МГц

Буфер ввода/вывода

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

Режим останова lee = 5 мА

Все генераторы остановлены

Режим останова

Нормальный режим работы: lee — 28 мА на частоте 50 МГц

Автоколебательный режим ФАПЧ

Режим ФАПЧ (высокая/средняя скорость)

Низкоскоростной режим, маломощный режим

Автоколебательный режим ФАПЧ

Режим ожидания

Режим ожидания lee = 7 мА

Работа процессора остановлена

Включается вторичный тактовый генератор 32 кГц

Режим ожидания

Режим ожидания

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

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

Обширный ассортимент периферийных устройств 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 В. Низкое энергопотребление достигается даже в полностью

1 Мбайт

768 кбайт

640 кбайт

512 кбайт

384 кбайт

256 кбайт

63 кбайт

48 кбайт

63 кбайт

40 кбайт

63 кбайт

40 кбайт

63 кбайт

40 кбайт

R32C/111

R32C/116

R32C/117 (1ch CAN)

R32C/117 (2ch CAN)

R5F64112DFN

R5F64112DFP

R5F64189DFD

R5F64179DFB R5F64179DFD

R5F64169DFB R5F64169DFD

R5F64188DFB R5F64188DFD

R5F64178DFB R5F64178DFD

R5F64168DFB R5F64168DFD

R5F64187DFB R5F64187DFD

R5F64177DFB R5F64177DFD

R5F64167DFB R5F64167DFD

R5F64112DFB

R5F64176DFB R5F64176DFD

R5F64166DFB R5F64166DFD

R5F64116DFB

R5F64111DFB

R5F64175DFB R5F64175DFD

R5F64165DFB R5F64165DFD

R5F64110DFN

R5F64110DFP

R5F6411FDFP

80 контактов Шаг 0,5 мм 12x12 мм

100 контактов Шаг 0,5 мм 14x14 мм

144контактов Шаг 0,5 мм 20x20 мм

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

Эмулятор ЕЗОа

Мощный интегральный отладочный эмулятор

Крупносерийная

разработка

^ Опытная

разработка/мелкосерийная разработка

активном режиме; типичные параметры — 28 мА при напряжении 3 В на частоте 50 МГц (рис. 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). Они представляют собой великолепные микроконтроллеры общего назначения, которые отвечают большинству текущих требований рынка и предусматривают возможность модернизации и масштабирование для приспособления к меняющимся требованиям.

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

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

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

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

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

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

комительного периода функции компилятора языка С ограничиваются компиляцией кода размером до 64 кбайт. ■

i Надоели баннеры? Вы всегда можете отключить рекламу.