Архитектура ARM. В борьбе за рынок ПК. Что такое ARM-архитектура? Применение arm
Название ARM, безусловно, слышали все, кто интересуется мобильными технологиями. Многие понимают данную аббревиатуру как тип процессора для смартфонов и планшетов, другие уточняют, что это вовсе не процессор, а его архитектура. И уж точно мало, кто вникал в историю появления ARM. В этой статье мы попробуем разобраться во всех этих нюансах и расскажем зачем нужны процессоры ARM современным гаджетам.
Краткий экскурс в историю
По запросу «ARM» Википедия выдает два значения этой аббревиатуры: Acorn RISC Machine и Advanced RISC Machines. Начнем по порядку. В 1980-х годах в Великобритании была основана компания Acorn Computers, которая начинала свою деятельность созданием персональных компьютеров. В то время Acorn еще называли «британской Apple». Решающим периодом для компании стал конец 80-х годов, когда ее главный инженер воспользовался решением двух выпускников местного университета, придумавших новый вид процессорной архитектуры с сокращенным набором команд (RISC). Так появился первый компьютер на базе процессора Acorn Risc Machine. Успех не заставил себя долго ждать. В 1990 году британцы заключили договор с Apple и вскоре начали работу над новой версией чипсета. В итоге команда разработчиков сформировала компанию под названием Advanced RISC Machines по аналогии с процессором. Чипы с новой архитектурой также стали именоваться Advanced Risc Machine или сокращенно ARM.С 1998 года Advanced Risc Machine стала называться ARM Limited. На текущий момент компания не занимается производством и продажей собственных процессоров. Основным и единственным направлением деятельности ARM Limited является разработка технологий и продажа лицензий различным компаниям на использование архитектуры ARM. Некоторые производители покупают лицензию на готовые ядра, другие – так называемую «архитектурную лицензию» на производство процессоров с собственными ядрами. Среди таких компаний значатся Apple, Samsung, Qualcomm, nVidia, HiSilicon и другие. По некоторым данным, ARM Limited зарабатывает на каждом таком процессоре $0,067. Эта цифра усредненная и к тому же устаревшая. С каждым годом ядер в чипсетах становится все больше, и новые многоядерные процессоры превосходят по себестоимости устаревшие образцы.
Технические особенности чипов ARM
Существует два типа современных процессорных архитектур: CISC (Complex Instruction Set Computing) и RISC (Reduced Instruction Set Computing). К архитектуре CISC относится семейство процессоров x86 (Intel и AMD), к архитектуре RISC – семейство ARM. Основным формальным отличием RISC от CISC и, соответственно, x86 от ARM является сокращенный набор команд, используемый в RISC-процессорах. Так, например, каждая инструкция в CISC-архитектуре трансформируется в несколько RISC-команд. В добавок, RISC-процессоры используют меньше транзисторов и, таким образом, потребляют меньше энергии.Основным приоритетом ARM-процессоров является отношение производительности к потреблению энергии. ARM имеет большее соотношение производительности на ватт чем x86. Вы можете получить необходимую мощность из 24 ядер x86 или из сотен маленьких ядер ARM с низким энергопотреблением. Разумеется, один даже самый мощный процессор на архитектуре ARM никогда не будет сопоставим по мощности с Intel Core i7. Но тот же Intel Core i7 нуждается в активной системе охлаждения и никогда не поместится в корпус телефона. Здесь ARM вне конкуренции. С одной стороны, это выглядит привлекательным вариантом для построения суперкомпьютера с использованием миллиона ARM-процессоров вместо тысячи процессоров x86. С другой стороны, нельзя однозначно сравнивать две архитектуры. В чем-то преимущество будет за ARM, а в чем-то – за x86.
Однако называть чипы архитектуры ARM процессорами не совсем корректно. Кроме нескольких процессорных ядер, они также включают другие компоненты. Наиболее подходящим будет термин «однокристальная система» или «система на кристалле» (SoC). Современные однокристальные системы для мобильных устройств включают контроллер оперативной памяти, графический ускоритель, видеодекодер, аудиокодек и модули беспроводной связи. Как уже было сказано ранее, отдельные компоненты чипсета могут быть разработаны сторонними производителями. Наиболее ярким примером этого являются графические ядра, разработкой которых кроме ARM Limited (графика Mali), занимаются Qualcomm (Adreno), NVIDIA (GeForce ULP) и Imagination Technologies (PowerVR).
На практике это выглядит следующим образом. Большинство бюджетных мобильных устройств на Android поставляются с чипсетами производства компании MediaTek
, которая практически неизменно следует инструкциям ARM Limited и комплектует их ядрами Cortex-A и графикой Mali (реже PowerVR).
А-бренды для своих флагманских устройств зачастую используют чипсеты производства Qualcomm
. К слову, последние чипы Qualcomm Snapdragon ( , ) оснащены полностью кастомными ядрами Kryo – для центрального процессора и Adreno – для графического ускорителя.
Что касается Apple
, то для iPhone и iPad компания использует собственные чипы А-серии с графическим ускорителем PowerVR, производством которых занимаются сторонние компании. Так, в установлен 64-битный четырехъядерный процессор A10 Fusion и графический процессор PowerVR GT7600.
Актуальной на момент написания статьи считается архитектура процессоров семейства ARMv8
. В ней впервые стал использоваться 64-битный набор инструкций и появилась поддержка более 4 ГБ оперативной памяти. Архитектура ARMv8 имеет обратную совместимость с 32-битными приложениями. Наиболее эффективным и самым мощным процессорным ядром, разработанным ARM Limited, на данный момент является Cortex-A73
, и большинство производителей однокристальных систем используют его без изменений.
Cortex-A73 обеспечивает на 30% более высокую производительность по сравнению с Cortex-А72 и поддерживает полный набор ARMv8-архитектуры. Максимальная частота процессорного ядра составляет 2,8 ГГц.
Сфера использования ARM
Наибольшую славу ARM принесло развитие мобильных устройств. В преддверии массового производства смартфонов и другой портативной техники энергоэффективные процессоры пришлись как нельзя кстати. Кульминацией развития ARM Limited стал 2007 год, когда британская компания возобновила партнерство с Apple, а спустя некоторое время купертиновцы представили свой первый iPhone с процессором на архитектуре ARM. В последующем однокристальная система на базе архитектуры ARM стала неизменным компонентом практически всех смартфонов, представленных на рынке.Портфолио компании ARM Limited не ограничивается только ядрами семейства Cortex-A. Фактически, под маркой Cortex существует три серии процессорных ядер, которые обозначаются буквами A, R, M. Семейство ядер Cortex-А , как мы уже знаем, является наиболее мощными. Их в основном используют в смартфонах, планшетах, ТВ-приставках, спутниковых ресиверах, автомобильных системах, робототехнике. Процессорные ядра Cortex-R оптимизированы для выполнения высокопроизводительных задач в режиме реального времени, поэтому такие чипы встречаются в медицинском оборудовании, автономных системах безопасности, носителях информации. Основной задачей семейства Cortex-M является простота и низкая стоимость. Технически это самые слабые процессорные ядра с наиболее низким энергопотреблением. Процессоры на базе таких ядер используются практически везде, где от устройства требуется минимальная мощность и низкая стоимость: сенсоры, контроллеры, сигнализации, дисплеи, умные часы и другая техника.
В общем, большинство современных устройств от маленьких до больших, нуждающихся в центральном процессоре, используют чипы ARM. Огромным плюсом при этом является тот факт, что архитектура ARM поддерживается множеством операционных систем на платформе Linux (в том числе Android и Chrome OS), iOS, и Windows (Windows Phone).
Конкуренция на рынке и перспективы на будущее
Стоит признать, на данный момент у ARM нет серьезных конкурентов. И по большому счету это связано с тем, что компания ARM Limited в определенное время сделала правильный выбор. А ведь в самом начале своего пути компания выпускала процессоры для ПК и даже пыталась конкурировать с Intel. После того, как ARM Limited поменяла направление своей деятельности, ей также было непросто. Тогда программный монополист в лице Microsoft, заключив партнерское соглашение с Intel, не оставил никаких шансов другим производителям, в том числе и ARM Limited – ОС Windows просто не работала на системах с процессорами ARM. Как бы парадоксально это не звучало, но сейчас ситуация может кардинально измениться, и уже ОС Windows готова поддерживать процессоры на этой архитектуре.На волне успехов чипов ARM компания Intel предприняла попытку создать конкурентоспособный процессор и вышла на рынок с чипом Intel Atom
. Для этого ей потребовалось гораздо больше времени, нежели ARM Limited. В производство чипсет поступил в 2011 году, но, как говорится, поезд уже ушел. Intel Atom является CISC-процессором с архитектурой x86. Инженеры компании добились более низкого энергопотребления, нежели в ARM, однако на текущий момент разнообразный мобильный софт имеет плохую адаптацию к архитектуре x86.
В прошлом году Intel отказалась от нескольких ключевых решений в дальнейшем развитии мобильных систем. Фактически компания для мобильных устройств, поскольку они стали нерентабельными. Единственным крупным производителем, который комплектовал свои смартфоны чипсетами Intel Atom, был ASUS. Однако массовое использование Intel Atom все же получил в нетбуках, неттопах и других портативных устройствах.
Положение ARM Limited на рынке уникальное. На данный момент практически все производители пользуются ее разработками. При этом у компании нет собственных заводов. Это не мешает ей стоять в одном ряду с Intel и AMD. История ARM включает еще один любопытный факт. Не исключено, что сейчас технология ARM могла бы принадлежать компании Apple, которая стояла в основе формирования ARM Limited. По иронии судьбы в 1998 году купертиновцы, переживая кризисные времена, продали свою долю. Теперь Apple вынуждена наряду с другими компаниями покупать лицензию на процессоры ARM, используемые в iPhone и iPad.
Сейчас процессоры ARM способны выполнять серьезные задачи. В ближайшей перспективе – использование их в серверах, в частности такие решения уже имеют дата-центры Facebook и PayPal. В эпоху развития интернета вещей (IoT) и «умных» бытовых устройств чипы ARM получили еще большую востребовательность. Так что самое интересное у ARM еще впереди.
Наверняка каждый из вас задавался вопросом: что же такое ARM? Очень часто можно услышать эту аббревиатуру, когда речь заходит о процессоре устройства. И порой не каждому до конца ясна её суть.
Скажем сразу, ARM — это компания, но ARM еще и архитектура процессора, которую разработала компания ARM.
ARM-процессор — это ЦПУ, основанное на RISC-архитектуре, разработанной компанией Acorn Computers в 1980-х годах, а в настоящее время разрабатывается компанией Advanced RISC Machines, к слову, отсюда и аббревиатура «ARM». При этом аббревиатура ARM по отношению непосредственно к архитектуре процессора означает Acorn RISC Machine. Другими словами, имеется два значения аббревиатуры ARM.
Advanced RISC Machines — это компания, расположенная в Великобритании, которая разрабатывает, проектирует и лицензирует ARM-архитектуру процессоров. ARM разрабатывает метод построения ARM-процессоров и такие компании, как , Apple и Samsung, разрабатывают свои процессоры на основе ARM. В настоящее время практически все устройства, имеющие небольшие габариты и оснащенные аккумулятором, имеют процессоры, построенные на ARM-архитектуре.
Имеется несколько типов архитектуры процессора: CISC, RISC, MISC. Первая отличается большим набором команд, то есть CISC рассчитана на работу со сложными инструкциям неодинаковой длины. RISC, напротив, имеет сокращенный набор команд, которые имеют один формат и отличаются простой кодировкой.
Чтобы понять разницу, представьте, что на вашем персональном компьютере установлен процессор от AMD или Intel с архитектурой CISC. СISC-процессоры генерируют больше MIPS (миллион инструкций в секунду, то есть число определённых инструкций, выполняемых процессором за одну секунду).
RICS-процессоры имеют меньше транзисторов, что позволяет им потреблять меньше энергии. Уменьшенное количество инструкции позволяет проектировать упрощенные микросхемы. Уменьшенный размер микросхемы приводит к небольшому размеру кристалла, что позволяет располагать на процессоре больше компонентов, это делает процессоры от ARM маленькими и гораздо более энергоэффективными.
ARM-архитектура отлично подходит смартфонам, для которых главное — энергопотребление, при этом по производительности ARM-процессоры, конечно, существенно уступают топовым решениям от Intel и AMD. При этом ARM-процессоры нельзя назвать слабыми. ARM поддерживает как 32-битную архитектуру, так и 64-битную, имеется также поддержка аппаратной виртуализации, продвинутое управление питанием.
Главным параметром при оценке ARM-процессоров является отношение производительности к потреблению энергии, здесь ARM-процессоры показывают себя лучше, чем, например, x86-процессор от Intel на базе архитектуры CISC.
Таким образом, в случае с суперкомпьютерами более привлекательным станет использование миллиона ARM-процессоров вместо тысячи процессоров на архитектуре x86.
По материалам androidcentral
В наше время существует две самые популярные архитектуры процессоров. Это x86, которая была разработана еще 80х годах и используется в персональных компьютерах и ARM - более современная, которая позволяет сделать процессоры меньше и экономнее. Она используется в большинстве мобильных устройств или планшетов.
Обе архитектуры имеют свои плюсы и минусы, а также сферы применения, но есть и общие черты. Многие специалисты говорят, что за ARM будущее, но у нее остаются некоторые недостатки, которых нет в x86. В нашей сегодняшней статье мы рассмотрим чем архитектура arm отличается от x86. Рассмотрим принципиальные отличия ARM или x86, а также попытаемся определить что лучше.
Процессор - это основной компонент любого вычислительного устройства, будь то смартфон или компьютер. От его производительности зависит то, насколько быстро будет работать устройство и сколько оно сможет работать от батареи. Если говорить просто, то архитектура процессора - это набор инструкций, которые могут использоваться при составлении программ и реализованы на аппаратном уровне с помощью определенных сочетаний транзисторов процессора. Именно они позволяют программам взаимодействовать с аппаратным обеспечением и определяют каким образом будут передаваться данные в память и считываться оттуда.
На данный момент существуют два типа архитектур: CISC (Complex Instruction Set Computing) и RISC (Reduced Instruction Set Computing). Первая предполагает, что в процессоре будут реализованы инструкции на все случаи жизни, вторая, RISC - ставит перед разработчиками задачу создания процессора с набором минимально необходимых для работы команд. Инструкции RISC имеют меньший размер и более просты.
Архитектура x86
Архитектура процессора x86 была разработана в 1978 году и впервые появилась в процессорах компании Intel и относится к типу CISC. Ее название взято от модели первого процессора с этой архитектурой - Intel 8086. Со временем, за неимением лучшей альтернативы эту архитектуру начали поддерживать и другие производители процессоров, например, AMD. Сейчас она является стандартом для настольных компьютеров, ноутбуков, нетбуков, серверов и других подобных устройств. Но также иногда процессоры x86 применяются в планшетах, это довольно привычная практика.
Первый процессор Intel 8086 имел разрядность 16 бит, далее в 2000 годах вышел процессор 32 битной архитектуры, и еще позже появилась архитектура 64 бит. Мы подробно рассматривали в отдельной статье. За это время архитектура очень сильно развилась были добавлены новые наборы инструкций и расширения, которые позволяют очень сильно увеличить производительность работы процессора.
В x86 есть несколько существенных недостатков. Во-первых - это сложность команд, их запутанность, которая возникла из-за длинной истории развития. Во-вторых, такие процессоры потребляют слишком много энергии и из-за этого выделяют много теплоты. Инженеры x86 изначально пошли по пути получения максимальной производительности, а скорость требует ресурсов. Перед тем, как рассмотреть отличия arm x86, поговорим об архитектуре ARM.
Архитектура ARM
Эта архитектура была представлена чуть позже за x86 - в 1985 году. Она была разработана известной в Британии компанией Acorn, тогда эта архитектура называлась Arcon Risk Machine и принадлежала к типу RISC, но затем была выпущена ее улучшенная версия Advanted RISC Machine, которая сейчас и известна как ARM.
При разработке этой архитектуры инженеры ставили перед собой цель устранить все недостатки x86 и создать совершенно новую и максимально эффективную архитектуру. ARM чипы получили минимальное энергопотребление и низкую цену, но имели низкую производительность работы по сравнению с x86, поэтому изначально они не завоевали большой популярности на персональных компьютерах.
В отличие от x86, разработчики изначально пытались получить минимальные затраты на ресурсы, они имеют меньше инструкций процессора, меньше транзисторов, но и соответственно меньше всяких дополнительных возможностей. Но за последние годы производительность процессоров ARM улучшалась. Учитывая это, и низкое энергопотребление они начали очень широко применяться в мобильных устройствах, таких как планшеты и смартфоны.
Отличия ARM и x86
А теперь, когда мы рассмотрели историю развития этих архитектур и их принципиальные отличия, давайте сделаем подробное сравнение ARM и x86, по различным их характеристикам, чтобы определить что лучше и более точно понять в чем их разница.
Производство
Производство x86 vs arm отличается. Процессоры x86 производят только две компании Intel и AMD. Изначально эта была одна компания, но это совсем другая история. Право на выпуск таких процессоров есть только у этих компаний, а это значит, что и направлением развития инфраструктуры будут управлять только они.
ARM работает совсем по-другому. Компания, разрабатывающая ARM, не выпускает ничего. Они просто выдают разрешение на разработку процессоров этой архитектуры, а уже производители могут делать все, что им нужно, например, выпускать специфические чипы с нужными им модулями.
Количество инструкций
Это главные различия архитектуры arm и x86. Процессоры x86 развивались стремительно, как более мощные и производительные. Разработчики добавили большое количество инструкций процессора, причем здесь есть не просто базовый набор, а достаточно много команд, без которых можно было бы обойтись. Изначально это делалось чтобы уменьшить объем памяти занимаемый программами на диске. Также было разработано много вариантов защит и виртуализаций, оптимизаций и многое другое. Все это требует дополнительных транзисторов и энергии.
ARM более прост. Здесь намного меньше инструкций процессора, только те, которые нужны операционной системе и реально используются. Если сравнивать x86, то там используется только 30% от всех возможных инструкций. Их проще выучить, если вы решили писать программы вручную, а также для их реализации нужно меньше транзисторов.
Потребление энергии
Из предыдущего пункта выплывает еще один вывод. Чем больше транзисторов на плате, тем больше ее площадь и потребление энергии, правильно и обратное.
Процессоры x86 потребляют намного больше энергии, чем ARM. Но на потребление энергии также влияет размер самого транзистора. Например, процессор Intel i7 потребляет 47 Ватт, а любой процессор ARM для смартфонов - не более 3 Ватт. Раньше выпускались платы с размером одного элемента 80 нм, затем Intel добилась уменьшения до 22 нм, а в этом году ученые получили возможность создать плату с размером элемента 1 нанометр. Это очень сильно уменьшит энергопотребление без потерь производительности.
За последние годы потребление энергии процессорами x86 очень сильно уменьшилось, например, новые процессоры Intel Haswell могут работать дольше от батареи. Сейчас разница arm vs x86 постепенно стирается.
Тепловыделение
Количество транзисторов влияет еще на один параметр - это выделение тепла. Современные устройства не могут преобразовывать всю энергию в эффективное действие, часть ее рассеивается в виде тепла. КПД плат одинаковый, а значит чем меньше транзисторов и чем меньше их размер - тем меньше тепла будет выделять процессор. Тут уже не возникает вопрос ARM или x86 будет выделять меньше теплоты.
Производительность процессоров
ARM изначально не были заточены для максимальной производительности, это область преуспевания x86. Отчасти этому причина меньше количество транзисторов. Но в последнее время производительность ARM процессоров растет, и они уже могут полноценно использоваться в ноутбуках или на серверах.
Выводы
В этой статье мы рассмотрели чем отличается ARM от x86. Отличия довольно серьезные. Но в последнее время грань между обоими архитектурами стирается. ARM процессоры становятся более производительными и быстрыми, а x86 благодаря уменьшению размера структурного элемента платы начинают потреблять меньше энергии и выделять меньше тепла. Уже можно встретить ARM процессор на серверах и в ноутбуках, а x86 на планшетах и в смартфонах.
А как вы относитесь к этим x86 и ARM? За какой технологией будущее по вашему мнению? Напишите в комментариях! Кстати, .
На завершение видео о развитии арихтектуры ARM:
В связи с непрерывно увеличивающимся числом приложений, которые предъявляют повышенные требования по производительности обработки данных, намечается тенденция повышения спроса на 32-разр. микроконтроллеры. Данный вывод сделала маркетинговая компания Semico, которая прогнозирует 2-кратное преобладание емкости рынка 32-разр. микроконтроллеров над 8 и 16-разр. в 2007 году . В связи с этим, целью данной статьи является представить общие тенденции развития одного из самых распространенных 32-разр. ядер ARM и дать сравнительную оценку микроконтроллерам на их основе от наиболее доступных на рынках СНГ производителей.
Обзор архитектуры ARM
Микроконтроллерное ядро ARM было разработано одноименной английской компанией, организованной в 1990 году. Название ARM происходит от "Advanced RISC Machines". Следует заметить, что компания специализируется сугубо на разработке микропроцессорных ядер и периферийных блоков, при этом, не имеет производственных мощностей по выпуску микрокон-троллеров. Компания ARM поставляет свои разработки в электронной форме, на основе которой клиенты конструируют свои собственные микроконтроллеры. Клиентами компании являются свыше 60 компаний-производителей полупроводников, среди которых можно выделить таких популярных производителей на рынке полупроводниковых компонентов стран СНГ, как Altera, Analog Devices, Atmel, Cirrus Logic, Fujitsu, MagnaChip (Hynix), Intel, Motorola, National Semiconductor, Philips, ST Microelectronics и Texas Instruments.
В настоящее время архитектура ARM занимает лидирующие позиции и охватывает 75% рынка 32-разр. встраиваемых RISC-микропроцессоров. Распространенность данного ядра объясняется его стандартностью, что предоставляет возможность разра-ботчику более гибко использовать, как свои, так и сторонние программные наработки, как при переходе на новое процессорное ARM-ядро, так и при миграциях между разными типами ARM-микроконтроллеров.
В настоящее время разработано шесть основных семейств (см. рисунок 1): ARM7™, ARM9™, ARM9E™, ARM10™, ARM11™ и SecurCore™. Также совместно с компанией Intel разработаны семейства XScale™ и StrongARM®.
Как дополнение к ARM-архитектуре могут интегрироваться несколько расширений:
- Thumb® - 16-разр. набор инструкций, улучшающий эффективность использования памяти программ;
- DSP - набор арифметических инструкций для цифровой обработки сигналов;
- Jazelle™ - расширение для аппаратного непосредственного исполнения Java-инструкций;
- Media - расширение для 2-4-кратного увеличения скорости обработки аудио и видео сигналов.
Рисунок 1. Процессорные ядра ARM
Рекордными планками, которые пересекла ARM-архитектура, являются быстродействие свыше 1ГГц и удельное потребле-ние 1 мкВт/МГц. В зависимости от назначения ARM-процессоры разделяются на три группы (см. рисунок 2):
- Процессоры для операционных систем с открытой платформой в приложениях беспроводной связи, обработки изображений и пользовательской электронике.
- Процессоры для встраиваемых операционных систем реального времени для запоминающих устройств, промышленных, авто-мобильных и сетевых приложений.
- Система защиты данных для смарт-карт и SIM-карт.
0.18мкм (0,13 мкм) | ||||
Ядро | Кэш-память | Площадь, мм 2 | Удельное потребление мВт/МГц | Частота, МГц |
ARM7TDMI | - | 0,53 (0,26) | 0.24 (0,06) | 100 (133) |
ARM7TDMI-S | - | 0,62 (0,32) | 0,39 (0,11) | 80-100 (100-133) |
SC100 | - | 0,50 | 0.21 | 80 |
SC200 | - | 0,70 | 0.30 | 110 |
ARM7EJ-S | - | 1,25 (0,65) | 0,45 (0,16) | 80-100 (100-133) |
ARM946E-S | 8к + 8к | 5,8 (3,25) | 0,9 (0,45) | 150-170 (180-210) |
ARM966E-S | 16к+16к TCM | 4,0 (2,25) | 0,65 (0,4) | 180-200 (220-250) |
ARM1026EJ-S | 8к + 8к | 7,5 (4,2) | 1,15 (0,5) | 190-210 (266-325) |
ARM1136J(F)-S | 16к/16к+ 16/16к TCM | - (8,2; 9,6) | 1,30 (0,4) | 250-270 (333-400) |
Рисунок 2. Технические данные по процессорным ядрам
ВСЭ - внутрисхемный эмулятор, РВ - реальное время, ЦСП- цифровой сигнальный процессор, SIMD - несколько данных в одной инструкции, ТСМ - плотно-связанная память (кэш), ETM - встроенные трассировочные макроячейки, VIC - векторизованный контроллер прерываний, ASB, AHB -разновидности внутренних шин
Перспективность ядра ARM становится очевидной после революционного анонса компании Atmel на конференции раз-работчиков ARM-микроконтроллеров, которая состоялась в Санта Клара (США) в октябре 2004 года . Суть анонса заключалась в намерении компании Atmel выпускать 32-разр. микроконтроллеры AT91SAM7S по цене 8-разрядных, нацеливая 8-разр. приложения на расширение функциональных возможностей по обработке информации, сохраняя при этом их конкурентоспособную стоимость на прежнем уровне.
Набор инструкций Thumb
32-разр. ARM-процессоры поддерживают предшествующие 16-разр. разработки за счет поддержки набора инструк-ций Thumb. Использование 16-разр. инструкций позволяет сэкономить до 35% памяти по сравнению с эквивалентным 32-разр. кодом, при этом сохраняя все преимущества 32-разр. системы, например, доступ к памяти с 32-разр. адресным пространством.
Технология SIMD
Технология SIMD (несколько данных в одной инструкции) используется в media-расширении и нацелена на увеличение скорости обработки данных в приложениях, где требуется малое энергопотребление. SIMD-расширения оптимизированы под широкий диапазон программного обеспечения, в т.ч. аудио/видео кодеки, где они позволяют увеличить быстродействие обработки в 4 раза.
Набор инструкций ЦСП (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, ARM1026EJ-S, ARM926EJ-S и ARM7EJ-S.
Традиционные ARM-процессоры поддерживают 2 набора инструкций: в режиме ARM - 32-разрядные инструкции, а в режиме Thumb наиболее популярные инструкции сжимаются к 16-разр. формату. Технология Jazelle расширяет эту концепцию, добавляя третий набор инструкций Java, который активизируется в новом Java-режиме.
Технология интеллектуального управления энергопотреблением
Одной из основных задач, которую решают разработчики портативных устройств (например, смарт-фоны, персональные цифровые помощники и аудио/видеоплееры) - оптимизация энергопотребления, что позволяет улучшить эксплуатационные характеристики готового устройства за счет продления ресурса батареи питания или уменьшения размеров устройства.
Традиционным методом снижения энергопотребления является использование экономичных режимов работы, например, холостой ход (idle) или сон (sleep), которые различаются глубиной деактивации внутренних элементов. Как правило, активный режим работы такой системы рассчитан на наихудшие условия работы и характеризуется максимальной загрузкой, тем самым неоправданно сокращая срок службы батареи. Таким образом, для дальнейшей оптимизации расходования энергии батареи питания разработчики уделяют особое внимание управлению энергопотреблением в активном режиме работы.
Для облегчения данного процесса разработана технология интеллектуального управления энергопотреблением (Intelligent Energy Manager, IEM) для процессоров ARM. Данная технология является сочетанием аппаратных и программных компонентов, которые совместно выполняют динамическое управление напряжением питания ("power scaling").
Сущность метода динамического управления напряжением питания основывается на выражении потребляемой мощности КМОП-процессоров:
где Р- общая потребляемая мощность, С - переключаемая емкость, fc - частота процессора, - напряжение пита-ния, - ток утечки в статическом режиме. Из выражения следует, что для регулировки энергопотребления могут варьироваться частота и напряжение питания.
Снижение частоты для уменьшения энергопотребления широко используется в микроконтроллерах и системах на кристаллах (PSoC), но не недостатком этого метода является снижение быстродействия. Метод динамического управления напряжением питания основан на варьировании напряжением питания, однако, если возможности регулировки исчерпаны, то как дополнительный используется метод регулировки частоты процессора.
Микроконтроллеры на основе архитектуры ARM
В таблице 1 представлена общая сравнительная характеристика ARM-микроконтроллеров наиболее известных и доступ-ных производителей: Analog Device, Atmel, Philips Semiconductors и Texas Instruments, а в таблице 2 более подробно представлены их технические данные.
Таблица 1. Сравнение ARM-микроконтроллеров разных производителей по ключевым признакам
TMS 470 (Texas Instruments) | AT91 (Atmel) | Micro Converter (AD) | LPC2000 (Philips) |
Системные: | |||
Память: | |||
Аналоговая периферия: | |||
Цифровая периферия: | |||
Интерфейсы: | |||
Таблица 2. Технические данные по ARM-микроконтроллерам компаний Atmel, Analog Device, Texas Instruments, Philips Semiconductors
Наименование | Ядро | Корпус | Память | Периферийные устройства | В/В | Макс. ч-та, МГц | ||||||
Флэш, кбайт | ОЗУ, кбайт | Тай-мер | АЦП, кан/разр | SPI/У(С)АПП/ I2C | USB Dev/ Host | CAN | Прочее | |||||
Микроконтроллеры семейства TMS470 компании Texas Instruments | ||||||||||||
TMS470R1A64 | ARM7TDMI | 80 LQFP | 64 | 4 | 13 | 8/10 | 2/2/- | - | 2 | C2SI | 40 | 48 |
ARM7TDMI | 100 LQFP | 128 | 8 | 16 | 16/10 | 2/2/- | - | 1 | C2SI | 50 | 48 | |
ARM7TDMI | 100 LQFP | 256 | 12 | 16 | 16/10 | 2/2/- | - | 1 | C2SI | 50 | 48 | |
ARM7TDMI | 100/144 LQFP | 288 | 16 | 12 | 12/10 | 2/2/1 | - | 2 | C2SI, ПДП, EBM, MSM | 93 | 48 | |
ARM7TDMI | 144 LQFP | 512 | 32 | 32 | 16/10 | 2/2/- | - | 2 | ПДП | 87 | 60 | |
ARM7TDMI | 144 LQFP | 768 | 48 | 32 | 16/10 | 5/2/- | - | 3 | ПДП | 87 | 60 | |
TMS470R1A1024 | ARM7TDMI | 144 LQFP | 1024 | 64 | 12 | 12/10 | 5/2/1 | - | 2 | DMA, EBM, MSM | 93 | 60 |
Семейство AT91 ARM Thumb компании Atmel | ||||||||||||
ARM7TDMI | QFP100 | - | 8 | 3 | -/2/- | EBI | 32 | 40 | ||||
ARM7TDMI | QFP100 | - | 256 | 3 | -/2/- | EBI | 32 | 70 | ||||
ARM7TDMI | BGA121 | 512 | 256 | 3 | -/2/- | EBI | 32 | 70 | ||||
ARM7TDMI | BGA121 | 2048 | 256 | 3 | -/2/- | EBI | 32 | 70 | ||||
ARM7TDMI | QFP144 BGA144 |
- | 8 | 6 | 2/2/- | EBI, PIT, RTT | 54 | 33 | ||||
ARM7TDMI | QFP176 BGA176 |
- | 8 | 6 | 8/10 | 1/3/- | EBI, RTC, 2х10 р. ЦАП | 58 | 33 | |||
ARM7TDMI | QFP100 | 256 | 96 | 6 | 1/4/1 | 1/- | SSC, PIT, RTC, RTT | 63 | 66 | |||
ARM7TDMI | BGA256 | 1 | 16 | 3 | 1/2/- | EBI, инт. SDRAM, 2xEthernet | 48 | 36 | ||||
ARM7TDMI | QFP144 | - | 4 | 9 | 8/10 | 1/3/- | EBI, 4 ШИМ, CAN | 49 | 40 | |||
ARM7TDMI | QFP176 | - | 16 | 10 | 16/10 | 1/2/- | 4 | EBI | 57 | 30 | ||
ARM7TDMI | QFP100 | 256 | 32 | 9 | 16/10 | 2/4/1 | 1/- | 1 | 8 ШИМ, RTT, PIT, RC-ген., SSC, MCI | 62 | 60 | |
ARM7TDMI | QFP48 | 32 | 8 | 3 | 8/10 | 1/1/1 | 21 | 55 | ||||
ARM7TDMI | QFP64 | 64 | 16 | 3 | 8/10 | 1/2/1 | 1/- | 4 ШИМ, RTT, PIT, RC-ген., SSC | 32 | 55 | ||
ARM7TDMI | QFP64 | 128 | 32 | 3 | 8/10 | 1/2/1 | 1/- | 4 ШИМ, RTT, PIT, RC-ген., SSC | 32 | 55 | ||
ARM7TDMI | QFP64 | 256 | 64 | 3 | 8/10 | 1/2/1 | 1/- | 4 ШИМ, RTT, PIT, RC-ген., SSC | 32 | 55 | ||
ARM7TDMI | QFP100 | 128 | 32 | 3 | 8/10 | 1/2/1 | 1/- | 1 | 4 ШИМ, RTT, PIT, RC-ген., SSC, Ethernet | 60 | 55 | |
ARM920T | QFP208 BGA256 |
128 | 16 | 6 | 1/4/1 | 1/2 | EBI, RTC, RTT, PIT, инт.SDRAM, 3xSSC, MCI, Ethernet | 94 | 180 | |||
AT91SAM9261 | ARM7TDMI | BGA217 | 32 | 160 | 3 | 3/3/1 | 1/2 | EBI, RTT, PIT, инт.SDRAM, 3xSSC, MCI | 96 | 200 | ||
Микроконтроллеры семейства MicroConverter компании Analog Device | ||||||||||||
ARM7TDMI | CP-40 | 62 | 8 | 5/12 | 1/1/2 | 4 x 12р.ЦАП, К, ПЛМ | 14 | 45 | ||||
ARM7TDMI | CP-40 | 62 | 8 | 8/12 | 1/1/2 | 2 x 12р.ЦАП, К, ПЛМ | 13 | 45 | ||||
ARM7TDMI | CP-40 | 62 | 8 | 10/12 | 1/1/2 | К, ПЛМ | 13 | 45 | ||||
ARM7TDMI | CP-64 | 62 | 8 | 10/12 | 1/1/2 | 2 x 12р.ЦАП,3ф. ШИМ, К, ПЛМ | 30 | 45 | ||||
ARM7TDMI | CP-64 | 62 | 8 | 12/12 | 1/1/2 | 3ф. ШИМ, К, ПЛМ | 30 | 45 | ||||
ARM7TDMI | ST-80 | 62 | 8 | 12/12 | 1/1/2 | 4 x 12р.ЦАП, 3-ф.ШИМ, К, ПЛМ | 40 | 45 | ||||
ARM7TDMI | ST-80 | 62 | 8 | 16/12 | 1/1/2 | 3ф. ШИМ, К, ПЛМ | 40 | 45 | ||||
Микроконтроллеры семейства LPC2000 компании Philips Semiconductors | ||||||||||||
ARM7TDMI-S | LQFP48 | 128 | 16 | 4 | 1/2/1 | 6 кан. ШИМ | 32 | 60 | ||||
ARM7TDMI-S | LQFP48 | 128 | 32 | 4 | 1/2/1 | 6 кан. ШИМ | 32 | 60 | ||||
ARM7TDMI-S | LQFP48 | 128 | 64 | 4 | 1/2/1 | 6 кан. ШИМ | 32 | 60 | ||||
ARM7TDMI-S | LQFP64 | 128 | 16 | 4 | 4/10 | 2/2/1 | 6 кан. ШИМ | 46 | 60 | |||
ARM7TDMI-S | LQFP64 | 128 | 16 | 4 | 4/10 | 2/2/1 | 6 кан. ШИМ | 46 | 60 | |||
ARM7TDMI-S | LQFP64 | 256 | 16 | 4 | 4/10 | 2/2/1 | 6 кан. ШИМ | 46 | 60 | |||
ARM7TDMI-S | LQFP64 | 256 | 16 | 4 | 4/10 | 2/2/1 | 6 кан. ШИМ | 46 | 60 | |||
2/2/1 | 6 кан. ШИМ | 112 | 60 | |||||||||
ARM7TDMI-S | LQFP144 | 256 | 16 | 4 | 8/10 | 2/2/1 | 2 | 6 кан. ШИМ | 112 | 60 | ||
ARM7TDMI-S | LQFP144 | 256 | 16 | 4 | 8/10 | 2/2/1 | 4 | 6 кан. ШИМ | 112 | 60 |
Несмотря на использование в большинстве микроконтроллеров общего ядра ARM7TDMI у микроконтроллеров разных производителей вырисовывается довольно таки четкий портрет. Analog Device является бесспорным лидером по аналоговой периферии, имея в своем арсенале 12-разр. АЦП и ЦАП класса 1МГц. В этом направлении заметно отстает Atmel, которая в своих разработках отдельных АЦП уже взяла барьер 2ГГц, а вот интегрировать приличный АЦП в 32-разр. микроконтроллер, так и не смогла. Однако данный недостаток микроконтроллеров Atmel перекрывает их "дружелюбность" (при использовании встроенного RC-генератора и стабилизатора для запуска микроконтроллера потребуется только подача одного напряжения питания), экономичность, а самое главное низкая стоимость. Среди рассматриваемых микроконтроллеров, микроконтроллеры Atmel - единственные, которые содержат интерфейс USB. Для микроконтроллеров TI характерна избыточная представитель-ность при умеренной стоимости. Работая с микроконтроллерами TMS470 можно быть уверенным в достаточности периферийных ресурсов. Микроконтроллеры LPC2000 (Philips) можно назвать золотой серединой по рассматриваемым крите-риям. Отличает их наличие УАПП, выполненного в традициях Philips и который совместим со стандартным УАПП 16C550, а также имеет модемный интерфейс и режим аппаратного управления связью с FIFO-буферизацией. Среди ARM-микроконтроллеров Philips можно найти представителей для расширенного температурного диапазона -40…+105°C.
32-разр. микроконтроллеры с альтернативными ядрами
Когда речь идет о 32-разр. микроконтроллерах несправедливым будет не упомянуть о других 32-разр. альтернативах ядру ARM. В этом плане следует выделить ядро FR компании Fujitsu и М68000/М68300 компании Motorola.
Ядро FR используется в обширном количестве микроконтроллеров (свыше 40), образующих несколько семейств, и имеет 16-разрядный режим набора инструкций для оптимизации использования памяти программ при минимальном ухудшении эф-фективности работы, что идентично ядру ARM. Размер ПЗУ и ОЗУ достигает до 512 кбайт, в зависимости от типа поддерживаются разнообразные стандартные периферийные устройства, в т.ч. 10-разр. АЦП, 12-разр. ШИМ, интерфейс CAN, УАПП и др. Так же, как и в случае с микроконтроллерами ARM, микроконтроллеры на основе ядра FR выделяются общими традициями, которые закладывает разработчик, и которые узнаваемы во всей линейке микроконтроллеров. В случае Fujitsu это аппаратная поддержка эндианизма, аппаратная функция поиска бита, множество каналов однотипных периферийных уст-ройств, вход немаскируемого прерывания. Во множество микроконтроллеров интегрирован довольно приличный 10-разр. АЦП (время преобразования 1,7 мкс) и ЦАП (0,9 мкс). В семействе FRLite поставлен рекорд по удельному энергопотреблению 1мА/МГц. Максимальным быстродействием обладает семейство FR 65Е, у которого тактовая частота достигает 66МГц.
32-разр. микроконтроллеры Motorola характеризуются реализацией из набора стандартных функциональных модулей. В состав микроконтроллеров семейства 68300 входят: 32-разрядный процессор (CPU32), модули внутренней памяти, интер-фейсный модуль системной интеграции (SIM), модуль последовательного интерфейса (QSM), таймерный процессор (TPU) или таймерный модуль (GPT), аналого-цифровой преобразователь (ADC) и ряд других. Между собой модули соединяются посред-ством межмодульной шины. Процессор CPU32, используемый в микроконтроллерах семейства 68300, по своим основным функциям аналогичен 32-разрядному микропроцессору MC68020 семейства 68000. Для использования в системах связи вы-пускаются микроконтроллеры, содержащие модуль коммуникационного RISC-процессора, имеющий набор специальных средств для обмена данными. Такие коммуникационные контроллеры (68360, 68302, 68356) также входят в состав семейства 68300. Особенностью процессора CPU32 является его работа с 16-разрядной шиной данных и 24-разрядной шиной адреса (ад-ресуемая память 16 Мбайт), а основным архитектурным принципом функционирования процессоров семейства 68000 является разделение их ресурсов и возможностей в зависимости от класса решаемых задач. При этом подразумевается выполнение двух классов задач: управление работой самой микропроцессорной системы с помощью системного программного обеспечения (операционной системы - супервизора) и решение прикладных задач пользователя. От этого происходят режимы функционирования: режим супервизора или режим пользователя. В зависимости от режима при выполнении программ разрешается доступ ко всем ресурсам микроконтроллера или их части. В режиме супервизора разрешается выполнение любых команд, реализуемых процессором, и доступ ко всем регистрам. В режиме пользователя запрещается выполнение ряда команд и дос-туп к некоторым регистрам, чтобы ограничить возможности таких изменений состояния системы, которые могут помешать выполнению других программ или нарушить установленный супервизором режим работы процессора. Сильным аргументом в сторону выбора микроконтроллеров Motorola - высокая популярность в свое время семейства M68000 и программная совместимость микроконтроллеров M68000 и более современных M68300, что позволяет использовать существующие программные наработки в новых разработках, тем самым сокращая сроки проектирования.
- Несомненным преимуществом ядра ARM является его стандартность, что позволяет использовать программное обеспечение от других совместимых микроконтроллеров, иметь более широкий доступ к средствам для проектирования или более просто осуществлять миграцию между микроконтроллерами.
- Несмотря на использование одного и того же ядра ARM в микроконтроллерах разных производителей, все-таки каждый из них имеет свое лицо, что достигается оригинальной "рецептурой" периферийных устройств и занятие в некоторых из типов периферийных устройств лидерских позиций, например, для Analog Device это цифро-аналоговые преобразователи.
- ARM-ядра имеют представительную номенклатуру и динамику развития, однако, из сравнения следует, что для широких масс доступны в основном микроконтроллеры на основе ядра ARM7TDMI. Объяснить это можно, например, тем, что основ-ная сфера потребления ARM-микроконтроллеров - бытовые, офисные, пользовательские электронные приборы и оборудование, которые, к сожалению, в основном выпускают зарубежные ОЕМ-производители.
- Рынок 32-разрядных микроконтроллеров обладает высокой емкостью, которая будет динамично возрастать в ближай-шие годы, поэтому, нам остается следить за борьбой производителей микроконтроллеров за долю данного рынка, следить за анонсами и успевать осваивать новые технологии.
Литература
- J. Wilbrink. Facilitation the Migration from 8-bit to 32-bit Microcontrollers/Atmel Corporation -2004.
- "Atmel Introduces World"s First Sub $3 ARM7 Flash Microcontroller", новость компании Atmel от 19.10.04, www.atmel.com.
- Processor Cores Flyer//Ref: ARM DOI 0111-4/05.03, Issued: May 2003.
- Материалы сайта
www.arm.com