Микроконтроллеры ARM
Появление микроконтроллеров с ядром ARM. Векторный контроллер прерываний. Технология интеллектуального управления энергопотреблением. Стоимость как функция уровней интеграции. Рассмотрение архитектуры различных микроконтроллеров, ядра, памяти и питания.
Рубрика | Коммуникации, связь, цифровые приборы и радиоэлектроника |
Вид | реферат |
Язык | русский |
Дата добавления | 19.05.2012 |
Размер файла | 26,5 K |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru/
Содержание
Введение
1. Стоимость как функция уровней технологии и интеграции
2. Микроконтроллеры с ядром ARM - лидеры рынка
3. Набор инструкций Thumb
4. Технология SIMD
5. Технология интеллектуального управления энергопотреблением
6. Микроконтроллеры с ядром ARM7 - прямой конкурент 8разрядным микроконтроллерам
7. Векторный контроллер прерываний
Выводы
Список литературы
Введение
Появление микроконтроллеров с ядром ARM сделало переход с 8 на 32разрядные встраиваемые системы естественным и неотвратимым событием. Постоянно повышающаяся функциональная насыщенность встраиваемых систем обуславливает рост требований к мощности используемых микроконтроллеров и их программ.
Однако до настоящего времени самыми популярными во встраиваемых системах оставались 8разрядные микроконтроллеры, которые по показателю цена/функциональность были вне конкуренции.
От существовавших 32разрядных микроконтроллеров они отличались рядом преимуществ:
- низкой ценой;
- низким потреблением энергии;
- относительной доступностью качественных средств разработки и отладки.
Однако за последние годы в мире 32разрядных микроконтроллеров произошли события, которые в корне изменили расклад сил. Ниша исключительного применения 8разрядных микроконтроллеров оказалась под жёстким давлением со стороны 32разрядных устройств.
Развитие 16разрядных микроконтроллеров идёт существенно более медленными темпами, чем 32разрядных. Это лишний раз говорит о том, что при принятии решения о смене 8разрядного микроконтроллера на более мощный в качестве основной стратегической перспективы имеет смысл рассматривать, в первую очередь, сразу 32разрядные микросхемы.
1. Стоимость как функция уровней технологии и интеграции
микроконтроллер энергопотребление интеллектуальный
Что же изменилось за последние годы и позволило говорить о массовом вторжении 32разрядных микроконтроллеров в область 8разрядных приложений?
Во-первых, произошёл массовый переход полупроводниковой индустрии на технологию 0,18 мкм, что резко снизило размеры 32разрядного кристалла и сделало их стоимость сопоставимой со стоимостью аналогичной 8разрядной микросхемы. Однако простого снижения цены было недостаточно.
Помимо стоимости самого микроконтроллера на конечную цену всей системы значительное влияние оказывала стоимость необходимых периферийных устройств. В этом плане 8разрядные микроконтроллеры традиционно «давали фору» любому 32разрядному конкуренту: они работали от единственного источника питания, интегрировали силовые выводы и всевозможные каналы связи, имели встроенную систему сброса, генерировали системную тактовую частоту от встроенного генератора. Помимо этого, важнейшими требованиями являлись предсказуемое поведение системы при сбоях (функции brownout детектора и сторожевого таймера) и наличие защиты FLASH памяти от несанкционированного считывания (lock bits).
Именно появление 32разрядных микроконтроллеров, соединивших в себе эти два важнейших качества:
- низкую стоимость и высочайшую функциональную насыщенность
- сделало их прямыми конкурентами традиционных 8разрядных систем.
2. Микроконтроллеры с ядром ARM - лидеры рынка
До сих пор, упоминая 32разрядные микроконтроллеры для встраиваемых систем, мы не называли конкретные архитектуры. Однако на данный момент можно утверждать, что безусловным лидером являются микроконтроллеры с ядром ARM, захватившие 75% рынка.
Хорошо это или плохо - вопрос спорный, однако, по крайней мере, проблему выбора этот факт существенно упрощает.
Если вы в настоящее время задумались над переходом на 32разрядный микроконтроллер с 8разрядного, то микроконтроллер с ядром ARM - это первый кандидат в списке претендентов.
Архитектура ARM
Сокращение ARM происходит от названия английской компании Advanced RISC Machines, основанной в 1990 г. в результате сотрудничества компаний Acorn и Apple Computer's.
Первое ядро, названное ARM6, было разработано в 1991 г., однако реальное воплощение получила только следующая разработка - ядро ARM7, созданное в 1993 г. Компания не занимается непосредственным производством микросхем. Возможно, эта особенность, которая, на первый взгляд, воспринимается как недостаток, и способствовала удивительной популярности архитектуры ARM. Фирма поставляет свои разработки в электронном виде, на основе которых клиенты конструируют свои собственные микропроцессоры и микроконтроллеры.
Клиентами ARM являются свыше 60 производителей полупроводников, среди которых можно выделить такие известные компании, как Altera, Analog Devices, Atmel, Cirrus Logic, Fujitsu, MagnaChip (Hynix), Intel, Freescale (Motorola), National Semiconductor, NXP (Philips), OKI, ST Microelectronics и Texas Instruments.
В настоящее время архитектура ARM занимает лидирующие позиции и охватывает 75% рынка 32разрядных встраиваемых RISC микропроцессоров. Фактически можно говорить об архитектуре ARM как о промышленном стандарте. Распространённость ядра предоставляет возможность разработчику более гибко использовать свои и сторонние программные наработки как при переходе на новое процессорное ARM ядро, так и при «миграциях» между разными типами ARM микроконтроллеров.
Особенности архитектуры ARM
Архитектура ARM отражает собственную философию компании, суть которой - максимальное удовлетворение требованиям встраиваемых систем. Для этого разработчики не стали замыкаться в формальных рамках RISC архитектуры, а в одном продукте реализовали идеи, ранее считавшиеся несовместимыми.
Хотя в своей основе ядро ARM отталкивается от идеологии RISC архитектуры (ограниченный набор команд, очередь выборки инструкций, активное использование регистров и ограниченный доступ к памяти), оно не является «чистым» представителем RISC.
Не все инструкции ARM выполняются за один цикл. Например, есть инструкции, позволяющие переслать между памятью и регистрами 16 слов по 32 разряда. Поскольку подобные операции активно используются компиляторами при каждом вызове и возврате из функций, введение таких инструкций существенно ускоряет работу программы, и минимизируют размер кода.
В состав системы команд входят так же инструкции обращения к аппаратному сопроцессору. Это позволяет разработчикам микроконтроллеров на базе ARM расширять возможности базовой архитектуры, добавляя свои сопроцессоры в случае необходимости.
Дополнительно к ARM архитектуре могут интегрироваться несколько расширений:
Thumb® - 16разрядный набор инструкций, улучшающий эффективность использования памяти рограмм;
DSP - набор арифметических инструкций для цифровой обработки сигналов;
Jazelle™ - расширение для аппаратного непосредственного исполнения Java инструкций;
Media - расширение для 2…4 кратного увеличения скорости обработки аудио и видеосигналов.
3. Набор инструкций Thumb
Первоначальная система команд ARM содержала только 32разрядные инструкции. Однако для систем, критичных к стоимости и объёму памяти программ, к которым относятся практически все встраиваемые системы реального времени, большая длина инструкций оказалась «узким местом», ограничивающим распространение новой архитектуры.
FLASH память - один из наиболее дорогих компонентов системы, и снижение её объёмов - актуальная задача. Поэтому в 1995 г. система команд ARM дополнилась новым набором 16разрядных инструкций, получившим название Thumb.
Это стало в инженерном смысле очень красивым решением проблемы. Из всего набора инструкций ARM были отобраны наиболее употребляемые инструкции и перекодированы в 16 разрядные опкоды. При выборке такой инструкции процессор ARM с помощью простого аппаратного дешифратора восстанавливает истинный 32 разрядный код инструкции, который и выполняется процессором. Таким образом, стандартное 32 разрядное ядро без каких-либо переделок получило возможность работы с 16 битовыми инструкциями.
При разработке Thumb пришлось пожертвовать некоторыми инструкциями, было снижено по сравнению с ARM количество доступных регистров, режимов адресации, ограничен доступ к некоторым системным ресурсам (регистрам состояния, сопроцессорам).
Однако при необходимости процессор может легко сменить режим выбора инструкций, переходя из Thum в ARM и обратно. Имея это в виду, разработчик может гибко управлять поведением своей программы, используя наиболее эффективный для каждого случая набор команд: ///
4. Технология SIMD
Технология SIMD (несколько данных в одной инструкции) используется в media расширении и нацелена на увеличение скорости обработки данных в приложениях, где требуется малое энергопотребление. SIMD расширения оптимизированы под широкий диапазон программного обеспечения, в том числе под аудио видео кодеки, где эти технологии позволяют увеличить быстродействие обработки в 4 раза.
Набор инструкций DSP
Многие приложения предъявляют повышенные требования по быстродействию реально-временной обработки сигналов. Традиционно в таких ситуациях разработчики прибегают к использованию цифрового сигнального процессора (DSP), что увеличивает энергопотребление и стоимость, как самой разработки, так и конечного устройства. Для устранения этих недостатков в ряд ARM процессоров интегрированы инструкции ЦСП, выполняющие 16 и 32разрядные арифметические операции.
Технология Jazelle
Технология ARM Jazelle предназначена для приложений с поддержкой языка программирования Java. Она предлагает уникальное сочетание высокой производительности, малой системной стоимости и невысоких запросов к энергопотреблению, что не может быть достигнуто одновременно, если использовать сопроцессор или специализированный Java процессор.
Технология ARM Jazelle является расширением 32разрядной RISC архитектуры, которое позволяет ARM процессору выполнять Java код на аппаратном уровне. При этом достигается непревзойдённое быстродействие исполнения Java кода с помощью ARM архитектуры.
Таким образом, разработчики имеют возможность свободно реализовывать Java приложения, в том числе операционные системы и прикладной код, на одном процессоре.
В настоящее время технология Jazelle интегрирована в следующие ARM процессоры:
ARM1176JZ(F)S, ARM1136J(F)S, ARM1026EJS, ARM926EJS и ARM7EJS.
Традиционные ARM процессоры поддерживают два набора инструкций. В режиме ARM поддерживаются 32 разрядные инструкции, а в режиме Thumb наиболее популярные инструкции сжимаются до 16 разрядного формата. Технология Jazelle расширяет эту концепцию, добавляя третий набор инструкций - Java, который активизируется в новом Java режиме.
5. Технология интеллектуального управления энергопотреблением
Одна из основных задач, которую решают разработчики портативных устройств, например, смартфонов, персональных цифровых помощников и аудио видео плееров, - это оптимизация энергопотребления, что позволяет улучшить эксплуатационные характеристики готового устройства за счёт продления ресурса батареи питания или уменьшения размеров устройства.
Традиционным методом снижения энергопотребления является использование экономичных режимов работы, например, холостой ход (idle) или сон (sleep), которые различаются глубиной деактивации внутренних элементов. Как правило, активный режим работы такой системы рассчитан на наихудшие условия функционирования и характеризуется максимальной загрузкой. Тем самым неоправданно сокращается срок службы батареи. Поэтому для оптимизации расходования энергии бата процессоров ARM. Технология является сочетанием аппаратных и программных компонентов, которые сов местно выполняют динамическое управление напряжением питания (power scaling).
Суть метода динамического управления напряжением питания можно понять, проанализировав формулу потребляемой мощности для КМОП процессоров: где Р - общая потребляемая мощность, С - переключаемая ёмкость, fc - частота процессора, VDD - напряжение питания, IQ - ток утечки в статическом режиме.
Из формулы следует, что энергопотребление зависит от частоты и напряжения питания. Снижение частоты для уменьшения энергопотребления широко используется в микроконтроллерах и системах на кристаллах (PSoC), но недостатком этого метода является уменьшение быстродействия. Метод динамического управления напряжением основан на изменении напряжения питания (см. рис. 2), однако если возможности регулировки исчерпаны, то как дополнительный используется метод регулировки частоты процессора.
Семейства ядер и процессоров ARM
К настоящему времени разработано восемь основных семейств ядер:
ARM7™, ARM9™, ARM9E™, ARM10E™, ARM11™, Cortex, SecurCore™ и OptimoDE Data Engines.
Помимо перечисленных, существуют также специфические ядра, разработанные совместно с компанией Intel: XScale™ и StrongARM®.
Первоначально для обозначения различных вариантов ядер и процессоров компания ARM использовала свою внутреннюю систему обозначений, которая предполагала, что имя любого ядра или процессора формируется в соответствии с шаблоном - ARM{x}{y}{z}{T}{D}{M}{I}{E}{J}{F}{S}, где:
x - семейство;
y - блок управления или защиты памяти;
z - память кэш;
T - поддержка режима Thumb;
D - JTAG порт;
M - быстрый умножитель;
I - встроенный блок эмуляции;
E - расширенный набор инструкций (подразумевает обязательное наличие функций TDMI, поэтому в случае использования индекса E индексы TDMI из названия опускаются);
J - поддержка Java инструкций (режим Jazelle);
F - блок векторной арифметики над числами с плавающей точкой;
S - синтезируемая версия (поставляется производителю кристалла в виде исходного текста, требующего компиляции (синтеза), в отличие от несинтезируемых версий, которые имеют заданную и неизменяемую топологию).
Процессоры ARM разрабатывались для удовлетворения потребностей следующих основных категорий систем:
- встраиваемые системы реального времени;
- универсальные платформы для приложений на базе открытых операционных систем, включающих:
- Linux, Palm OS, Symbian OS и Windows CE;
- системы защиты данных для смарт карт, SIM карт и платёжных терминалов.
6. Микроконтроллеры с ядром ARM7 - прямой конкурент 8разрядным микроконтроллерам
Из всего многообразия процессоров ARM нас больше всего интересуют микросхемы, составляющие прямую конкуренцию 8разрядным микроконтроллерам. Поэтому далее мы сконцентрируем внимание на микроконтроллерах с ядром ARM7, которые наиболее полно отвечают требованиям встраиваемых систем реального времени, работающих без использования операционных систем.
Семейство ядер и процессоров ARM7
Семейство процессоров ARM7 ориентировано на приложения, требующие дешевые и малопотребляющие микроконтроллеры.
Оно включает в себя следующие ядра и процессоры:
* ARM7TDMI: Ядро с целочисленной арифметикой, 3-х ступенчатым конвейером команд. Обеспечивает высокую производительность в сочетании с очень низким уровнем потребления, занимает очень маленькую площадь кристалла. Сочетание перечисленных свойств обеспечило этому ядру наибольшую популярность среди всех известных RISC процессоров для встраиваемых систем.
* ARM7TDMI-S: Синтезируемая версия ядра ARM7TDMI, идеальна для современных систем разработки полупроводниковых устройств.
* ARM7EJ-S: Улучшенная, синтезируемая версия ядра с поддержкой инструкций для цифровой обработки сигналов (DSP) и расширением для аппаратного исполнения Java-инструкций на базе технологии Jazelle®.
* ARM720T: Процессор с устройством управления памятью и 8 Кб кэшем инструкции. Версия ориентирована на использование операционных систем, таких как: Windows CE, Linux, Palm OS и Symbian OS.
Основные характеристики:
Максимальная производительность - до 133 MHz;
Наборы команд ARM (32 бита) и Thumb (16 бит);
3-х ступенчатый конвейер инструкций;
Единая шина команд и данных;
Полностью статический дизайн;
Малый размер кристалла, необходимый для размещения ядра;
Встроенный внутрисхемный эмулятор (EmbeddedICE-RT);
Встроенный интерфейс аппаратного трассировщика (ETM).
Характеристики производительности и энергопотребления напрямую связаны с применяемой технологией производства полупроводников.
На данный момент наиболее популярными в области встраиваемых систем являются ядра: ARM7TDMI, ARM7TDMIS.
На их основе выпускаются сотни типов микроконтроллеров, способных удовлетворить самые разнообразные потребности разработчиков.
Основные критерии целесообразности перехода на 32разрядные микроконтроллеры
Для принятия решения о переводе своих встраиваемых систем на 32 разрядную платформу необходимо провести сравнение 8 и 32разрядных микроконтроллеров по следующим основным критериям: уровень функциональной интеграции микроконтроллеров;
- стоимость самого микроконтроллера;
- требования к производительности системы и проблемы реального времени;
- требования к энергопотреблению, режимы энергосбережения;
- возможность переноса программного обеспечения на новую платформу;
- доступность и качество средств разработки и отладки (интегрированных сред, компиляторов, отладчиков, программаторов).
7. Векторный контроллер прерываний
Ядро ARM7 имеет всего два внешних входа прерывания.
Для систем реального времени этого явно недостаточно. Поэтому в состав микроконтроллера AT91SAM7S вводится дополнительный аппаратный модуль, называемый векторным контроллером прерываний, который обеспечивает переход на адрес обработки прерывания одного из 32 источников прерывания с помощью единственной команды перехода. Смысл его работы сводится к тому, что в состав контроллера входят 32 регистра адреса, в которые предварительно записываются адреса подпрограмм обработки для каждого из 32 возможных источников прерывания.
При возникновении прерывания ядро ARM вызывает передачу управления на адрес, соответствующий внешнему прерыванию. По этому адресу рас полагается инструкция, которая считывает данные из контроллера прерываний, а контроллер в этот момент подставляет значение именно того регистра адреса, который соответствует возникшему прерыванию.
Таким образом, микроконтроллер переходит сразу на программу обработки нужного прерывания, не используя ни единой дополнительной инструкции.
Выводы
Микроконтроллеры с ядром ARM разрабатывались с учетом требований, предъявляемых системами реального времени.
Потенциальные проблемы эффективности выполнения программы, связанные с особенностями RISC архитектуры, успешно решаются за счет использования оригинальных аппаратных решений на уровне периферийных модулей.
Список литературы
1) Современные микроконтроллеры и микропроцессоры - Автор: Шагурин И.И, 2010 г. - М.: Радио и связь, 2006 г.
2) Автор: В.Л. Цирлов - Современные микроконтроллеры, год:2009
3) WEB-сайт - http://www.phyton.ru/pages/page41.html#pop
Размещено на Allbest.ru
Подобные документы
Микроконтроллер (MCU) — микросхема, предназначенная для управления электронными устройствами. Их можно встретить во многих современных приборах, в том числе и бытовых. Рассмотрение архитектуры различных микроконтроллеров, ядра, памяти, питания, периферии.
реферат [216,5 K], добавлен 24.12.2010Микроконтроллеры - микросхемы, предназначенные для управления электронными устройствами, их классификация. Структура процессорного ядра микроконтроллеров, основные характеристики, определяющие его производительность. CISC и RISC архитектура процессора.
курсовая работа [43,2 K], добавлен 03.10.2010Адресное пространство микроконтроллеров MSP430F1xx. Байтовая и словная формы инструкций. Система команд MSP микроконтроллеров. Периферийные устройства микроконтроллеров MSP430F1xx. Аналого-цифровой преобразователь ADC12, его технические характеристики.
курсовая работа [278,1 K], добавлен 04.05.2014Семейство 16-разрядных микроконтроллеров Motorola 68HC12, их структура и функционирование. Модуль формирования ШИМ-сигналов. Средства отладки и программирования микроконтроллеров 68НС12. Особенности микроконтроллеров семейства MCS-196 фирмы INTEL.
курсовая работа [239,6 K], добавлен 04.01.2015Понятие и виды микроконтроллеров. Особенности программирования микропроцессорных систем, построение систем управления химико-технологическим процессом. Изучение архитектуры микроконтроллера ATmega132 фирмы AVR и построение на его основе платформы Arduino.
курсовая работа [1,9 M], добавлен 13.01.2011Использование микроконтроллеров AVR фирмы Atmel в проектируемой аппаратуре. Архитектура и общие характеристики прибора, предназначение арифметики логического устройства и понятие флэш-памяти. Формат пакета данных, алгоритм их передачи и система команд.
контрольная работа [427,3 K], добавлен 12.11.2010Общая характеристика и применение микроконтроллеров FUJITSU MB-90 и MCS-196 фирмы Intel. Основные особенности микроконтроллеров серии MCS-96 и MB90385. Внутренняя архитектура процессоров. Система команд, работа с внутренними и внешними устройствами.
курсовая работа [768,0 K], добавлен 01.12.2010Проектирование специализированных радиоэлектронных устройств с применением микропроцессорных комплектов и цифровых микросхем среднего и малого уровней интеграции. Архитектура микроконтроллеров семейства INTEL8051. Программа устройства на Ассемблере.
курсовая работа [42,3 K], добавлен 29.07.2009Классификация и структура микроконтроллеров. Структура процессорного ядра микроконтроллера, основные характеристики его производительности. Архитектура процессорного модуля, размер и тип встроенной памяти, набор периферийных устройств, тип корпуса.
курсовая работа [41,7 K], добавлен 28.08.2010Рассмотрение структуры и принципов работы таймеров/счетчиков (общего назначения, сторожевого, типов А, В, С, D, Е) микроконтроллеров и аналого-цифрового преобразователя семейства AVR с целью разработки обучающего компьютерного электронного пособия.
курсовая работа [1,0 M], добавлен 06.03.2010