Микропроцессоры архитектуры ARM

  • Вид работы:
    Реферат
  • Предмет:
    Информатика, ВТ, телекоммуникации
  • Язык:
    Русский
    ,
    Формат файла:
    MS Word
    28,54 Кб
  • Опубликовано:
    2014-11-04
Вы можете узнать стоимость помощи в написании студенческой работы.
Помощь в написании работы, которую точно примут!

Микропроцессоры архитектуры ARM














РЕФЕРАТ

Микропроцессоры архитектуры ARM


Введение

микропроцессор архитектура цифровой

С момента, когда человек изобрел цифровую передачу данных, сложно представить себе нашу жизнь без компьютеров. Глобальная компьютеризация проникла во все сферы нашей жизни: медицину, развлечения, индустрию, науку. Куда бы не пошел - всюду компьютеры. Все это создает впечатление, что вычислительные машины правят миром. С появлением компьютера, возникли и соответственные специалисты - те, которые так сказать программируют компьютер делать то, что нужно в конкретный период. Это программисты. Если коротко - это те люди, которые настраивают тех, кто «правит» миром.

Существуют программисты узкоспециального и широкого спектра услуг. Соответственно, существуют специальные и общие языки программирования.

1. История развития микропроцессоров

Прежде чем изучать историю развития микропроцессоров, определимся, что же это такое. Микропроцессором называется программно-управляемое устройство, предназначенное для обработки цифровой информации и управления этим процессом, в настоящее время, обычно реализованное в виде одной или нескольких БИС (СБИС). Отвечает за выполнение арифметических, логических операций и операций управления, записанных в машинном коде.

В 1959 г. инженеры фирмы «Texas Instruments» разработали способ, как разместить внутри одного полупроводникового кристалла несколько транзисторов и соединить их между собой - родилась первая интегральная микросхема (ИМС). По сравнению с функционально теми же устройствами, собранными из отдельных транзисторов, резисторов и т.п., ИМС обладает значительными преимуществами: меньшими габаритами, более высокой надежностью и т.д. Неудивительно, что количество выпускаемых микросхем стало быстро возрастать, а их ассортимент неуклонно расширяться. Последнее обстоятельство создавало ряд трудностей для потребителей. Важно даже не столько то, что стремительно возраставшее количество типов ИМС затрудняло ориентацию в море наименований. Значительным недостатком была узкая специализация ИМС, из-за которой объем их выпуска не мог быть большим, а значит, стоимость одной микросхемы оставалась высокой. Улучшить ситуацию позволило бы создание универсальной логической ИМС, специализация которой определялась бы не заложенной на заводе внутренней структурой, а заданной непосредственно самим потребителем программой работы. Таким образом, оказывается, что первые микропроцессоры (МП) появились совсем не для миниатюризации ЭВМ, а в целях создания более дешевой логической микросхемы, легко адаптируемой к потребностям пользователя.

История создания первого в мире микропроцессора достаточно поучительна. Летом 1969 г. японская компания «Busicom», разрабатывавшая новое семейство калькуляторов, обратилась за помощью в фирму «Intel». К тому времени «Intel» просуществовала всего около года, но уже проявила себя созданием самой емкой на тот момент микросхемы памяти. Фирме «Busicom» как раз и требовалось изготовить микросхемы, содержащие несколько тысяч транзисторов. Для реализации совместного проекта был привлечен инженер фирмы «Intel» М. Хофф. Он познакомился с разработками «Busicom» и предложил альтернативную идею: вместо 12 сложных специализированных микросхем создать одну программируемую универсальную - микропроцессор. Проект Хоффа победил и фирма «Intel» получила контракт на производство первого в мире микропроцессора.

Практическая реализация идеи оказалась непростым делом. В начале 1970 г. к работе подключился Ф. Фаджин, который за 9 месяцев довел процессор от описания до кристалла (позднее Ф. Фаджин основал фирму «Zilog», создавшую замечательный 8-разрядный процессор Z80, который успешно работал во многих домашних компьютерах). 15 ноября 1971 г. «Intel 4004» - так назвали процессор - был представлен общественности.

Поскольку для хранения одной цифры калькулятору требуется 4 бита (именно столько необходимо для изображения десятичных цифр «8» и «9»), «Intel 4004» был четырехразрядным процессором. Следующий микропроцессор предназначался для установки в терминал и должен был обрабатывать символьную информацию. Поскольку каждый символ кодируется одним байтом, следующая модель «Intel 8008» стала 8-разрядной; она появилась в апреле 1972 г. По-прежнему этот процессор был заменой «аппаратной логики», но отдельные энтузиасты уже пытались собрать на нем компьютер. Результаты были скорее демонстрационными, нежели полезными, но микрокомпьютерная революция уже началась.

А в апреле 1974 г. компания «Intel» совершила новый качественный скачок: ее изделие с маркой «Intel 8080» стало первым в мире процессором, походившим на «настоящую» вычислительную машину. Отметим любопытную деталь: хотя процессор. и обрабатывал 8-разрядные данные, но адрес ОЗУ был двухбайтовым. Таким образом, 8080 мог иметь до 64 килобайт памяти, что по тем временам казалось программистам недостижимым пределом.

Дальнейшее развитие событий происходило можно сказать с фантастической скоростью, даже если сравнивать с темпами динамично развивающейся вычислительной техники. За десятилетие был пройден путь от изобретения 4-разрядного МП до достаточно сложной 32-разрядной архитектуры. Было ликвидировано отставание микропроцессорной техники от обычных ЭВМ и началось интенсивное вытеснение последних. Для иллюстрации укажем, что первый МП 4004 содержал 2200 транзисторов, МП 8080 - 4800, МП «Intel 80486» - около 1,2 миллиона, а уже «Pentium» - около 3 миллионов.

Пионер в создании процессорных микросхем фирма «Intel» по-прежнему сохраняет свои лидирующие позиции в этой области. Ее программно-совместимое семейство последовательно усложняющихся МП (16-разрядные 8086, 80286 и 32-разрядные 80386, 80486, «Pentium», а затем и 64 - разрядные) являются «мозгом» значительной части использующихся компьютеров [1].

2. Основные характеристики микропроцессора

Микропроцессор характеризуется:

) Тактовой частотой, определяющей максимальное время выполнения переключения элементов в ЭВМ;

) Разрядностью, т.е. максимальным числом одновременно обрабатываемых двоичных разрядов.

Разрядностть МП обозначается m/n/k/ и включает:- разрядность внутренних регистров, определяет принадлежность к тому или иному классу процессоров;- разрядность шины данных, определяет скорость передачи информации;- разрядность шины адреса, определяет размер адресного пространства. Например, МП i8088 характеризуется значениями m/n/k=16/8/20;

) Архитектурой. Понятие архитектуры микропроцессора включает в себя систему команд и способы адресации, возможность совмещения выполнения команд во времени, наличие дополнительных устройств в составе микропроцессора, принципы и режимы его работы. С точки зрения важности для пользователя-программиста под архитектурой в общем случае понимают совокупность следующих компонентов и характеристик:

разрядности адресов и данных;

состава, имен и назначения программно-доступных регистров;

форматов и системы команд;

режимов адресации памяти;

способов машинного представления данных разного типа;

структуры адресного пространства;

способа адресации внешних устройств и средств выполнения операций ввода / вывода;

классов прерываний, особенностей инициирования и обработки прерываний [2].

3. Типы архитектур микропроцессора

Существует несколько подходов к классификации микропроцессоров по типу архитектуры. Так, выделяют МП с CISC (Complete Instruction Set Computer) архитектурой, характеризуемой полным набором команд, и RISC (Reduced Instruction Set Computer) архитектурой, которая определяет систему с сокращенным набором команд одинакового формата, выполняемых за один такт МП. Далее в пунктах 4.1 и 4.2 рассмотрим более подробно особенности каждого типа архитектуры микропроцессора.

CISC - архитектура

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

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

Однако на практике все обстояло несколько иначе. Проведенные в 1970-х годах исследования показали, что наиболее часто при написании программ программисты использовали ограниченный набор микроопераций, количество которых составляло всего 20% от полного набора машинных команд CISC-архитектуры, остальные же микрооперации практически игнорировались.

Причиной такого дисбаланса явились:

·Ограниченная поддержка полного набора команд CISC-архитектуры существующими на тот момент компиляторами.

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

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

Еще одним недостатком CISC-архитектуры была различная длинна машинных команд и разное время их выполнения, это затрудняло расчет времени, необходимого на выполнения программы, но кроме того не позволяло реализовать конвейерную обработку машинных команд [3].

RISC - архитектура

Для решения проблем, присущих CISC-архитектуре была разработана новая RISC-архитектура с сокращенным набором машинных команд. В набор команд RISC-архитектуры вошли только основные элементарные микрооперации, что позволило унифицировать формат команд вычислительного ядра, упростить конструкцию и снизить стоимость изготовления вычислительных ядер. Разработчиками было принято решение сравнять время выполнения всех машинных команд, что упростило расчет времени выполнения программ, а самое главное позволило реализовать конвейерную обработку инструкций.

Уменьшение набора машинных команд в RISC-архитектуре позволило разместить на кристалле вычислительного ядра большое количество регистров общего назначения. Увеличение количества регистров общего назначения позволило минимизировать обращения к медленной оперативной памяти, оставив для работы с RAM только операции чтения данных из оперативной памяти в регистр и запись данных из регистра в оперативную память, все остальные машинные команды используют в качестве операндов регистры общего назначения.

Основными преимуществами RISC-архитектуры является наличие следующих свойств:

·Большое число регистров общего назначения.

·Универсальный формат всех микроопераций.

·Равное время выполнения всех машинных команд.

·Практически все операции пересылки данных осуществляются по маршруту регистр - регистр.

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

Аппаратные блоки в RISC-архитектуре:

·Блок загрузки инструкций включает в себя следующие составные части: блок выборки инструкций из памяти инструкций, регистр инструкций, куда помещается инструкция после ее выборки и блок декодирования инструкций. Эта ступень называется ступенью выборки инструкций.

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

·Арифметико-логическое устройство и, если в данной архитектуре реализован, аккумулятор, вместе с логикой управления, которая исходя из содержимого регистра инструкций определяет тип выполняемой микрооперации. Источником данных помимо регистра инструкций может быть счетчик команд, при выполнении микроопераций условного или безусловного перехода. Данная ступень называется исполнительной ступенью конвейера.

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

Однако к моменту разработки RISC-архитектуры, промышленным стандартом микропроцессоров де-факто стала архитектура Intel x86, выполненная по принципу CISC-архитектуры. Наличие большого числа программ, написанных под архитектуру Intel x86, сделала невозможным массовый переход ЭВМ на RISC-архитектуру. По этой причине основной сферой использования RISC-архитектуры явились микроконтроллеры, благодаря тому, что они не были привязаны к существующему программному обеспечению. Кроме того некоторые производители ЭВМ так же начали выпускать ЭВМ, построенные по RISC-архитектуре, однако несовместимость программного обеспечения между Intel x86 и RISC-архитектурой в значительной степени ограничивала распространение последних.

Но преимущества RISC-архитектуры были столь существенны, что инженеры нашли способ перейти на вычислители, выполненные по RISC-архитектуре, при этом, не отказываясь от существующего программного обеспечения. Ядра большинство современных микропроцессоров, поддерживающих архитектуру Intel x86, выполнены по RISC-архитектуре с поддержкой мультискалярной конвейерной обработки. Микропроцессор получает на вход инструкцию в формате Intel x86, заменяем ее несколькими (до 4-х) RISC-инструкциями.

Таким образом, ядра большинства современных микропроцессоров, начиная с Intel 486DX, выполнены по RISC-архитектуре с поддержкой внешнего Intel x86 интерфейса. На сегодняшний день подавляющее большинство микроконтроллеров, а так же некоторые микропроцессоры выпускаются по RISC-архитектуре [3].

4. Микропроцессоры с ARM - архитектурой

Общие сведения

ARM - это название архитектуры и одновременно название компании, ведущей ее разработку. Аббревиатура ARM расшифровывается как (Advanced RISC Machine или Acorn RISC Machine), это может быть переведено как усовершенствованная RISC-машина. ARM архитектура объединяет в себе семейство как 32, так и 64-разрядных микропроцессорных ядер, разработанных и лицензируемых компанией ARM Limited. Компания ARM Limited занимается исключительно разработкой ядер и инструментария для них (средства отладки, компиляторы и т.д.), однако сами процессоры не производит. Компания ARM Limited продает лицензии на производство ARM процессоров сторонним фирмам. ARM Holdings за всё время своего существования не произвела ни одной микросхемы. Более того, эта компания даже не занимается продвижением продукции под своей маркой. Вместо этого она продаёт (лицензирует) интеллектуальную собственность, которая позволяет другим фирмам разрабатывать и производить чипы на основе архитектуры ARM. Список нескольких компаний, получивших лицензию на производство ARM процессоров на сегодняшний день: AMD, Atmel, Altera, Cirrus Logic, Intel, Marvell, NXP, Samsung, LG, MediaTek, Qualcomm, Sony Ericsson, Texas Instruments, nVidia, Freescale и многие другие.

Распространена практика, когда компании, получившие лицензию на выпуск ARM процессоров, создают собственные варианты ядер на базе ARM архитектуры. Пример таких компанийь: DEC StrongARM, Freescale i.MX, Intel XScale, NVIDIA Tegra, ST-Ericsson Nomadik, Qualcomm Snapdragon, Texas Instruments OMAP, Samsung Hummingbird, LG H13, Apple A4/A5/A6 и HiSilicon K3.

На базе ARM процессоров сегодня работают фактически любая электроника: мобильные телефоны и смартфоны, цифровые плееры, портативные игровые консоли, калькуляторы, внешние жесткие диски и маршрутизаторы. Все они содержат в себе ARM-ядро, поэтому можно сказать, что ARM - в некотором роде мобильные процессоры для смартфонов и планшетов.процессор представляет собой SoC систему. SoC система может содержать в одном кристалле CPU, и остальные части полноценного компьютера. Это и контроллер памяти, и контроллер портов ввода-вывода, и графическое ядро, и система геопозиционирования (GPS). В нем может находится и 3G модуль, а также многое другое.

Если рассматривать отдельное семейство ARM процессоров, допустим Cortex-A9 (или любое другое), то стоит заметить, что не все процессоры одного семейства имеют одинаковую производительность или все снабжены GPS модулем. Все эти параметры сильно зависят от производителя чипа и того, что и каким образом он решил реализовывать в своем продукте.

Как уже было отмечено ранее RISC архитектура подразумевает под собой уменьшенный набор команд, что соответственно ведет к очень умеренному энергопотреблению, т.е. для реализации микропроцессора с ARM - структурой используется гораздо меньше транзисторов. Также стоит отметить, что в SoC-системе все периферийные устройства находится внутри одной микросхемы, что позволяет ARM процессору быть более экономичным в плане энергопотребления [5].

История развития

Шел 1979 год американская компания по производству и изданию компьютерных игр Atari, основанная в 1972 году представила свою версию игрового автомата Asteroids. На свет появился язык программирования ADA. Основались такие компании, как 3COM, Oracle, и Seagate. Были представлены процессоры Motorola 68K и Intel 8088. И в это же время Герман Хаузер (Hermann Hauser) и Крис Керри (Chris Curry) с группой студентов и исследователей из различных лабораторий Кембриджского университета основали Acorn Computers, чтобы начать разработку персональных компьютеров в Кембридже. Первым продуктом Acorn стал британский домашний компьютер Atom с быстрым по тем временам процессором 1 МГц и 12 килобайтами ПЗУ и ОЗУ. После этого, в целях расширения производства и сбыта домашних компьютеров, а также, для повышения компьютерной грамотности британцев компания начала работу с Британской телерадиовещательной корпорацией (BBC). Получившийся продукт, BBC micro, достиг поразительного успеха после выхода в свет в 1982 году.

Однако остальные игроки на компьютерном рынке тоже не сидели, сложа руки. Например, компания Apple представила компьютер Lisa, который сочетал в себе первую для ПК коммерческую оконную среду и 16-разрядный процессор. Это дало понять людям из Acorn, что все увеличивающаяся производительность будет необходима за пределами сферы 8-разрядных вычислительных машин. И в качестве непосредственного результата в Acorn был организован отдел Перспективных исследований и разработок, чтобы попытаться реализовать специальный проект процессора с сокращенным набором команд (RISC). На тот момент эта идея была довольно-таки революционной.

Результатом этой научно-исследовательской работы стал первый ARM процессор (от сокращения фразы Acorn RISC Machine, которая потом сменилась на Advanced RISC Machine). Первые экземпляры процессора, изготовленного компанией VLSI Technology, Acorn представила в 1985 году. Результат превзошел первоначально поставленные цели разработки, так как в процессоре использовалось менее 25000 транзисторов.вскоре сменился моделью ARM2, первой версией ARM процессора, запущенной в массовое производство, и, возможно, самым простым RISC процессором в мире, состоящем всего лишь из 30000 транзисторов. По сравнению с ARM1 он имел улучшенный набор инструкций, повышающий производительность окружающих его систем. Процессор имел 32-разрядную шину данных, 26-разрядную шину адреса, 16 регистров, а также внешний кэш. Среди прочего, были добавлены инструкции умножения и умножения с накоплением, облегчающие цифровую обработку сигналов, необходимую для генерации звуков - важной функции для домашних компьютеров и компьютеров, используемых в сфере образования. Несмотря на все эти дополнения, кристалл ARM2 все равно отличался малыми размерами и небольшим количеством транзисторов. Новый процессор, как и ARM1, также производился компанией VLSI Technology, получившей права на его продажу

Вторым изделием, в котором использовался ARM процессор, был мультимедийный ПК компании Acorn под названием Archimedes, выпущенный в 1987 году. Компьютер состоял из 8-мегагерцовой версии процессора ARM2, трех микросхем поддержки, контроллера ввода / вывода и простой операционной системы. После выхода на рынок Archimedes получил довольно прохладные отзывы, так как Acorn представила компьютер с новым процессором, новой операционной системой и без какого-либо программного обеспечения, необходимого пользователям. Потребовалось два-три года, чтобы разработать достаточное количество приложений для ARM процессора и ПК Archimedes. После этого компания Acorn улучшила и развила свои модели компьютеров, чтобы утвердиться в качестве лидера на британском рынке компьютеров для дома и образования. После выхода Archimedes Acorn продолжала поддерживать свою команду исследователей и разработчиков в создании улучшенных версий ARM процессоров. Для обеспечения такого уровня производительности, который отвечал бы требованиям самых современных персональных компьютеров, были добавлены 4 Кб встроенного кэша данных и команд, а тактовая частота увеличена до 25 МГц. Так появился ARM3. В 1990 он стал использоваться в настольных компьютерах компании Acorn. Тем временем, Герман Хаузер начал новый бизнес, основав компанию Active Book Company, сфокусировавшую свою деятельность на формирующемся рынке персональных электронных помощников (PDA).

Между тем, компания Apple также выходила на рынок PDA. Джон Стоктон (John Stockton), научный сотрудник VLSI Technology, убедил проектную группу и Ларри Теслера (Larry Tesler), который возглавлял команду в Apple, в необходимости использования ARM. В 1990 году, удалось договориться о создании совместного предприятия между Apple, VLSI Technology и Acorn.

В 1990-х появилась новая модель маленьких инновационных компаний, создающих продукцию интеллектуальной собственности, которая превращалась в реальные изделия с помощью уже других компаний, занимающихся также ее продажей и представлением на рынке. И ARM была первооткрывателем этой модели.

Итак, ARM приступила к работе, один из близких друзей Робина настаивал на том, что такая модель совместного предприятия никогда не заработает, потому что все партнеры (которые также были первыми клиентами ARM) имели определенные капиталовложения - Acorn предоставляла персонал, Apple обеспечивала финансовую поддержку, а VLSI Technology - технологии средств разработки. В первый год ARM столкнулась с серьезной проблемой, исчерпав практически все финансовые ресурсы. Как утверждал Робин, «В первые дни мы были очень экономны и скупы, считая мили, потраченные на перелеты. Начальная фаза была очень тяжела, и получение кредитной линии также было тяжелым испытанием. В конечном счете, благодаря старым контактам с одним банковским служащим, я все же получил кредит». В качестве одной из мер экономии, маленькая команда ARM располагает свои офисы в переделанном амбаре.

Хотя процессор ARM создавался как заказное устройство для совершенно конкретной цели, разрабатывающая его команда чувствовала, что самый правильный путь - это путь производства процессоров с характеристиками, удовлетворяющими как можно более широкому кругу приложений. Однако надо отметить, что судьба архитектуры ARM сложилась случайно. В то время как большинство производителей процессоров с RISC архитектурой занималось конструированием сравнительно больших микросхем, ARM предпочла создавать процессоры с малой степенью интеграции. Одной из причин такого решения, было то, что имеющихся у компании на тот момент средств разработки было недостаточно для создания больших и сложных устройств. Сейчас это является несомненным преимуществом ARM-процессоров, но начиналось все с того, что команде талантливых, но неопытных инженеров (большинство членов команды было программистами и разработчиками схем на уровне печатных плат) потребовалось создать процессор, используя новые для нее инструменты разработки, многие из которых, к тому же, давно устарели.

Несмотря на стесненные условия работы, мотивация и азарт у маленькой команды были высоки. Как и для большинства стартаповых компаний, главной целью ARM было выпустить свою первую готовую продукцию. В данном случае, таковой стал процессор ARM610, специально разработанный для Apple. Это устройство поддерживало полную 32-разрядную адресацию и обратный порядок байтов - одно из многочисленных требований компании Apple, необходимых для использования процессора ARM в ее будущих разработках. Были также разработаны улучшенный видеоконтроллер VIDC20 и сопроцессор с плавающей точкой. Целью Apple было использование их продукта в процессоре персонального карманного органайзера.

Момент решающего прорыва для ARM настал в 1993 году с началом сотрудничества с Texas Instruments (TI). Это был прорыв, который повысил уровень доверия к ARM и доказал жизнеспособность новой бизнес-модели лицензирования. Соглашение подтолкнуло ARM к формализации этой модели, а также к созданию более рентабельных продуктов.

Вслед за TI, за лицензией к ARM обратилась компания Samsung, и всего лишь после четырех встреч соглашение было достигнуто. Деловые связи внутри отрасли оказали существенное влияние на повышение уровня восторженной поддержки продукции ARM и принесли компании новые соглашения о лицензировании. Эти сделки также открыли дополнительные возможности для развития RISC-архитектуры. Относительно небольшая, но динамичная культура ARM дала этому направлению преимущество в сроках разработки продукции, что является существенным фактором в такой быстро развивающейся сфере производства. Подтверждением этому явилась лицензия Digital Equipment Corporation (DEC), ставшая той движущей силой, которая привела ARM к созданию версии ARM10 названной StrongARM.

К концу 1997 года капитал компании вырос до 26.6 миллионов фунтов стерлингов, £2.9 миллиона из которых были чистой прибылью, и пришло время выходить в большое плавание. Хотя компания готовилась к расширению на протяжении трех лет, Робин на счет этого советовал всем: «Подождите, пока вы не поймете, что уже готовы, и затем подождите еще шесть месяцев».

17 апреля 1998 года ARM Holdings была внесена в объединенный список Лондонской Биржи и рынка NASDAQ. Как полагала ARM, NASDAQ был тем рынком, выход на который позволит компании получить ту оценку, которую она заслужила. Одна из проблем для ARM заключалась в продвижении их бренда, так как новые условия требовали привлечения внимания со стороны новой аудитории, включая обычного потребителя. Как говорил Уоррен Ист (Warren East), занявший в феврале 1998 г. пост исполнительного директора ARM, «Наша архитектура лежит в основе широкого спектра потребительской электроники, и нам необходимо учитывать влияние и важность формирования осведомленности о нашей продукции в среде потребителей. Такая осведомленность поможет как ARM, так и нашим партнерам. Но мы не будем решать эту задачу в одиночку. Наш успех основан на стратегических отношениях с нашими партнерами, и мы продолжим разрабатывать наши стратегические планы, включая планы по продвижению бренда, в тесном сотрудничестве с ними». Компания, обновившая свое название до ARM Holdings, уверенно попрощалась с двадцатым веком. В 1999 она была включена в базу расчета фондового индекса FTSE 100, который считается одним из наиболее влиятельных биржевых индикаторов в Европе. Тем самым ARM Holdings доказывала, что является одной из ста компаний с наибольшей капитализацией, включенных в списки Лондонской фондовой биржи. В том же году такие крупные игроки на рынке электронной продукции и компонентов, как STMicroelectronics, Fujitsu и LSI Logic, приобрели лицензии на продукцию ARM.

В техническом плане 1999 год стал для ARM также плодотворным. Весной компания представила новую модель процессора ARM9E, сочетающего традиционное ядро процессора ARM9 с расширенным набором команд цифровой обработки сигналов. Он быстро нашел свою нишу в мобильной телефонии, модемах, персональных информационных устройствах (PDA), средствах распознавания речи, автомобильных и промышленных приложениях. Впоследствии лицензию на этот процессор приобрели Samsung, Texas Instruments, Broadcom, Toshiba, NEC и многие другие компании.

Вершиной коммерческого развития ARM Holdings стало создание в 2000 году новой бизнес-модели, получившей название ARM Foundry Program. В рамках этой модели компании, не владеющие собственной производственной базой, смогли получить доступ к изготовлению ARM-систем сертифицированными производителями. Это, в свою очередь, способствовало сокращению времени выхода на рынок конечного продукта на базе процессора ARM, так как OEM производитель теперь мог напрямую работать с фирмой-производителем, одобренной ARM. В отличие от ставшей уже тогда классической схемы лицензирования, при которой передавались права, как на проектирование, так и на производство микросхем, новая модель предусматривала трехстороннее партнерство между ARM Holdings, фирмой-производителем и OEM-компанией.

В 2001 году на проходящем ежегодно в калифорнийском городе Сан-Хосе микропроцессорном форуме ARM представила архитектуру ARMv6, разработанную в тесном сотрудничестве с такими лицензиатами компании как Intel Corporation, Motorola и Texas Instruments. Такой подход позволил расширить возможности архитектуры при сохранении совместимости с более ранними ARM-продуктами, в первую очередь, на программном уровне. Это способствовало сокращению затрат партнеров компании на разработку нового программного обеспечения. Процессоры ARMv6 отличались от предыдущих версий повышенной на 30% общей производительностью, восьмикратно увеличенной производительностью для медиа приложений, лучшей поддержкой многопроцессорных систем.

В октябре того же года Уоррен Ист, ключевая фигура в истории развития бизнеса ARM, стал главным исполнительным директором компании. На этом посту он пребывает и по сегодняшний день. До того, как присоединиться к ARM в 1994, он работал в команде Texas Instruments. В феврале 1998 года Ист был назначен на должность вице-президента компании, а в октябре 2000 года - на должность главного операционного директора. И ровно через год он занимает кресло исполнительного директора, официально став первым лицом ARM Holdings. Под руководством Уоррена Иста компания ARM продолжила успешное развитие. Свой успех компания подтвердила громким заявлением о том, что 2002 году на основе архитектуры ARM было произведено более одного миллиарда процессоров. В этот же период лицензии приобретаются еще рядом крупных компаний, среди которых Seagate, Philips, Matsushita, eSilicon, Chip Express и другие.

Приблизительно через полгода после анонсирования ARMv6 компания представила ARM11 - новый тип микроархитектуры, разработанный специально для нужд беспроводных и потребительских устройств следующего поколения, предъявляющих особые требования в плане энергопотребления при сохранении высокой производительности Микроархитектура разрабатывалась при консультативной поддержке разработчиков операционных систем WindowsCE, Symbian OS, Palm OS, и Linux, что позволило с успехом использовать ARM11 в таких популярных устройствах как iPhone (2G и 3G), iPod Touch (1G и 2G), HTC Touch Diamond, LG Optimus One, Nokia 5800 XpressMusic, Nokia N8, Samsung Galaxy Ace и многих других.

В середине октября следующего года в названии новой серии процессоров ARM впервые использовала слово, знакомое сейчас практически каждому, - «Cortex». Анонсированный в качестве первого представителя нового семейства, процессор ARM Cortex-M3, по сути, стал флагманом этой серии. Основанный на архитектуре ARMv7-M, он имеет показатель производительности 1.25 DMIPS/МГц. Представлением этого ядра компания подчеркнула свою направленность на создание дешевой, но, в то же время, качественной продукции с высокими характеристиками. Ядро, имеющее всего 33000 транзисторов, унифицированная периферия и простота производства в целом делает данный процессор очень дешевым. Показатель энергопотребления процессоров Cortex-M3 составляет всего 0.19 мВт/МГц. В результате, естественной средой обитания этих процессоров стали микроконтроллерные приложения, о чем, собственно, и говорит литера M.

В 2005 году компания представила еще одну архитектуру процессоров семейства Cortex, но уже не для микроконтроллеров (процессоры с литерой M), а для широкого диапазона приложений (процессоры с литерой A или Applications processors) - Cortex-A8. Благодаря высокой производительности и эффективному энергопотреблению, менее чем 300 мВт, новый процессор стал с успехом применяться в мобильных телефонах, игровых приставках, автомобильных навигационных и развлекательных системах и пр. Cortex-A8 имеет широкую поддержку операционных систем высокого уровня, например Linux и Android, и операционных систем реального времени. Этот процессор стал настолько успешным, что в итоге, авторитетное издание в области микропроцессорных технологий Microprocessor Report признало Cortex-A8 лучшим продуктом 2005 года. Впрочем, и сама компания ARM не осталась без награды. В конце 2005 года американский журнал Electronic Business причислил ARM Holdings к десятке наиболее значимых компаний в сфере электроники за последние 30 лет. Издание охарактеризовало компанию как «яркую точку полупроводникового IP-бизнеса». Такое признание успехов как бы подводило черту в отчете о проделанной плодотворной работе за первую половину нулевых годов и устремляло компанию к новым горизонтам.

В мае 2006 года ARM анонсировала третью ветвь линейки Cortex с литерой R (для систем реального времени). Первенец этого семейства Cortex-R4 был предназначен для таких приложений как мобильные телефоны следующего поколения, приводы жестких дисков, принтеры, автомобильная электроника. Внушительный показатель производительности для такого класса устройств (до 1030 DMIPS) позволили ему качественно обрабатывать сложные алгоритмы управления в условиях реального времени, а малое энергопотребление ядра (примерно 0.09 … 0.12 мВт/МГц, в зависимости от конфигурации) сделало его популярным для широкого класса изделий.

Не смея бросать развитие других ответвлений семейства Cortex, компания в следующем году разработала Cortex-M1 - первый ARM-процессор, специально спроектированный для встраивания в FPGA.

Через полгода, осенью 2007 ARM анонсировала процессор Cortex-A9, который впоследствии приобрел огромную популярность. Компания предложила этот процессор сразу в двух вариантах - одноядерном и многоядерном. С тактовой частотой до двух гигагерц и производительностью 2.5 DMIPS/МГц на ядро Cortex-A9 стал настоящим монстром на рынке процессоров. В связи с этим неудивительно, что еще до релиза лицензию на процессор поспешили приобрести такие гиганты как NEC Electronics, NVIDIA, Samsung, STMicroelectronics и Texas Instruments. Он стал использоваться в смартфонах, мобильных компьютерах, различной потребительской электронике, автомобильных системах навигации и развлечения, сетевых устройствах и пр. Достаточно сказать, что два популярных сегодня продукта компании Apple - планшетный ПК iPad2 и смартфон iPhone4S используют систему-на-кристалле Apple A5, содержащую процессор Cortex-A9.

Но сотрудники компании работали не только на развитие семейства Cortex. Так, в феврале 2007 года миру электроники был представлен очередной продукт от ARM, который также был «обречен» стать успешным. На этот раз им стала архитектура двух графических процессоров (GPU) - Mali200 и Mali55. Первый предназначался для обработки сложной 3D графики мобильных игр следующего поколения в смартфонах и других современных портативных устройствах, а второй, благодаря очень компактным размерам и низкой стоимости, предназначался для работы с 3D в бюджетных телефонах. Впрочем, оба графических процессора поддерживали как маленькие дисплеи, так и экраны с разрешением HDTV

В 2008 году была преодолена очередная «юбилейная» планка уровня производства ARM-процессоров во всем мире, о чем компания торжественно объявила в январе. 10 миллиардов процессоров - такой объем смогла освоить мировая полупроводниковая промышленность с 1991 года, когда ARM разработала свой первый процессор с RISC-архитектурой - ARM6. «Теперь наши партнеры производят более одного процессора на каждого жителя планеты» - таковы были слова Уоррена Иста, вкратце описывающие впечатляющий масштаб данного события.

В 2009 году на свет появился Cortex-M0 - дешевый 32-разрядный процессор с низким уровнем энергопотребления и небольшим количеством выводов. Он был предназначен для тех приложений, в которых уже не хватало производительности 8- и 16-битных процессоров, а применение мощных 32-битных было излишним с технической и финансовой точек зрения. Cortex-M0 хорошо зарекомендовал себя в цифровых камерах, медиа проигрывателях, навигационных устройствах, бытовой технике. Но уже спустя год ARM выпустила диаметрально противоположный в плане производительности продукт того же семейства - Cortex-M4. Этот мощный, высокоэффективный 32-разрядный процессор, предназначенный для решения задач сложной обработки цифровых сигналов и нацеленный на применение в промышленных приложениях и встраиваемых системах.

В июле 2010 года два титана мира высоких технологий крепко пожали друг другу руки - коропорация Microsoft стала лицензиатом ARM Holdings. Эта новость сразу взбудоражила аналитиков рынка электронных компонентов и устройств. Некоторые издания публиковали статьи с заголовками типа «Будет ли следующим микропроцессор от Microsoft?». Впрочем, компании начали работать совместно еще с 1997 года. Это были взаимоотношения в рамках консультаций по поводу разработок программного обеспечения и более качественной его совместимости с аппаратной частью. Но теперь компьютерной общественности было неясно и очень любопытно, что же будет делать Microsoft с новоприобретенными правами. На этот счет главный менеджер корпорации К.Д. Холлман сказала следующее: «С лучшим доступом к технологиям ARM мы сможем усовершенствовать наши исследовательские и проектные работы над продуктами на базе ARM-архитектуры». Это означало, что Microsoft собирается оптимизировать свои операционные системы Windows Embedded и Windows Phone применительно к ARM-архитектуре.

Компания выпустила два мощнейших на сегодняшний день процессора из линейки своей продукции - Cortex-A15 и Cortex-A17. Они нацелены на работу в смартфонах, планшетных ПК, цифровом домашнем оборудовании, серверах и беспроводных точках доступа. По утверждению самой компании, это «самые высокопроизводительные процессоры, которые когда-либо видела индустрия». А уже в 2012 году ARM сообщила о выпуске новой серии процессоров ARM Cortex-A50 [8]. Они основаны на архитектуре ARMv8. Серию открыли модели Cortex-A53 и Cortex-A57, поддерживающие 64-разрядные и 32-разрядные вычисления. Модель Cortex-A57 - самый высокопроизводительный процессор ARM, а Cortex-A53 - наиболее энергетически эффективный. Кроме того, Cortex-A53 - самый маленький в мире 64-разрядный процессор.

Сегодня ARM Holdings представляет собой целую империю в области разработки и продвижения на рынок передовых процессорных технологий. Благодаря конкурентоспособности постоянно обновляемой продукции, доходы компании неуклонно увеличиваются [7].

Основные особенности функционирования процессоров с архитектурой ARM

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

Архитектура развивалась с течением времени, и начиная с ARMv7 были определены 3 профиля:

A (application) - приложения,

R (real time) - в реальном времени,

M (microcontroller) - микроконтроллер.

Режимы:

Процессор может находиться в одном из следующих операционных режимов:mode - обычный режим выполнения программ. В этом режиме выполняется большинство программ.Interrupt (FIQ) - режим быстрого прерывания (меньшее время срабатывания)(IRQ) - основной режим прерывания.mode - защищённый режим для использования операционной системой.mode - режим, в который процессор переходит при возникновении ошибки доступа к памяти.mode - привилегированный пользовательский режим.mode - режим, в который процессор входит при попытке выполнить неизвестную ему инструкцию.

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

Набор команд ARM:

Режим, в котором исполняется 32-битный набор команд.

Набор команд Thumb:

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

Набор команд Thumb-2:

Данный набор команд расширяет ограниченный 16-битный набор команд Thumb дополнительными 32-битными командами, чтобы задать набору команд дополнительную ширину. Цель Thumb-2 - достичь плотности кода как у Thumb, и производительности как у набора команд ARM на 32 битах. Thumb-2 расширяет как команды ARM, так и команды Thumb еще большим количеством команд, включая управление битовым полем, табличное ветвление, условное исполнение

Набор команд Jazelle:

Jazelle - это технология, которая позволяет байткоду Java исполняться прямо в архитектуре ARM в качестве 3-го состояния исполнения (и набора команд) наряду с обычными командами ARM и режимом Thumb. Поддержка технологии Jazelle обозначается буквой «J» в названии процессора - например, ARMv5TEJ. Данная технология поддерживается начиная с архитектуры ARMv6.

Функции RISC:

Архитектура ARM обладает следующими особенностями RISC:

·Архитектура загрузки / хранения

·Нет поддержки нелинейного (не выровненного по словам) доступа к памяти (теперь поддерживается в процессорах ARMv6 за некоторыми исключениями)

·Равномерный 16х32-битный регистровый файл

·Фиксированная длина команд (32 бита) для упрощения декодирования за счет снижения плотности кода. Позднее режим Thumb повысил плотность кода.

·Одноцикловое исполнение

Особенности дизайна:

·Арифметические инструкции заменяют условные коды только когда это необходимо

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

·Мощные индексированные адресные режимы

·Регистр ссылок для быстрого вызова функций листьев

·Простые, но быстрые, с двумя уровнями приоритетов подсистемы прерываний с включенными банками регистров.

Условное исполнение:

Одним из существенных отличий архитектуры ARM от других архитектур ЦПУ является так называемая предикация - возможность условного исполнения команд. Под «условным исполнением» здесь понимается то, что команда будет выполнена или проигнорирована в зависимости от текущего состояния флагов состояния процессора.

В то время как для других архитектур таким свойством, как правило, обладают только команды условных переходов, в архитектуру ARM была заложена возможность условного исполнения практически любой команды. Это было достигнуто добавлением в коды их инструкций особого 4-битового поля (предиката). Одно из его значений зарезервировано на то, что инструкция должна быть выполнена безусловно, а остальные кодируют то или иное сочетание условий (флагов). С одной стороны, с учётом ограниченности общей длины инструкции, это сократило число бит, доступных для кодирования смещения в командах обращения к памяти, но с другой - позволило избавляться от инструкций ветвления при генерации кода для небольших if-блоков.

Другие особенности:

Другая особенность набора команд это возможность соединять сдвиги и вращения в инструкции «обработки информации» (арифметическую, логическую, движение регистр-регистр). Это приводит к тому, что типичные программы ARM становятся плотнее, чем обычно, с меньшим доступом к памяти. Таким образом, конвейер используется гораздо более эффективно. Даже несмотря на то, что ARM работает на скоростях, которые многие бы сочли низкими, он довольно-таки легко конкурирует с многими более сложными архитектурами ЦПУ. ARM процессор также имеет некоторые особенности, редко встречающиеся в других архитектурах RISC - такие, как адресация относительно счетчика программ (на самом деле счетчик команд ARM является одним из 16 регистров), а также пре- и пост-инкрементные режимы адресации. Другая особенность, которую стоит отметить, это то, что некоторые ранние ARM процессоры (до ARM7TDMI), например, не имеют команд для хранения 2-байтных чисел.

Конвейер и другие аспекты реализации:

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

VFP:

Технология VFP - расширение сопроцессора в архитектуре ARM. Она производит низкозатратные вычисления над числами с плавающей запятой одинарной / двойной точности. VFP производит вычисления с плавающей запятой, подходящие для широкого спектра приложений - например, для КПК, смартфонов, сжатие звука, трёхмерной графики и цифрового звука, а также принтеров и телеприставок. Архитектура VFP также поддерживает исполнение коротких векторных команд.

Расширения безопасности:

Расширения безопасности, позиционируемые как TrustZone Technology, находятся в ARMv6KZ и других, более поздних, профилированных на приложениях архитектурах. Оно обеспечивает низкозатратную альтернативу добавлению специального ядра безопасности, обеспечивая 2 виртуальных процессора, поддерживаемых аппаратным контролем доступа. Это позволяет ядру приложения переключаться между двумя состояниями, называемыми «миры» (чтобы избежать путаницы с названиями возможных доменов), чтобы не допустить утечку информации из более важного мира в менее важный. Этот переключатель миров обычно ортогонален всем другим возможностям процессора. На практике же, так как конкретные детали реализации TrustZone остаются собственностью компании и не разглашаются, остается неясным, какой уровень безопасности гарантируется для данной модели угрозы.

Отладка:

Все современные процессоры ARM включают аппаратные средства отладки, так как без них отладчики ПО не смогли бы выполнить самые базовые операции типа остановки, отступа, установка контрольных точек после перезагрузки.

Регистры:предоставляет 31 регистр общего назначения разрядностью 32 бит. В зависимости от режима и состояния процессора пользователь имеет доступ только к строго определённому набору регистров. В ARM state разработчику постоянно доступны 17 регистров:

регистров общего назначения (r0..r12).Pointer (r13) - содержит указатель стека выполняемой программы.register (r14) - содержит адрес возврата в инструкциях ветвления.Counter (r15) - биты [31:1] содержат адрес выполняемой инструкции.Program Status Register (CPSR) - содержит флаги, описывающие текущее состояние процессора. Модифицируется при выполнении многих инструкций: логических, арифметических, и др.

Во всех режимах, кроме User mode и System mode, доступен также Saved Program Status Register (SPSR). После возникновения исключения регистр CPSR сохраняется в SPSR. Тем самым фиксируется состояние процессора (режим, состояние; флаги арифметических, логических операций, разрешения прерываний) на момент непосредственно перед прерыванием.

В большинстве существующих моделей микропроцессоров реализована шина PCI и возможность работы с DRAM. В процессорах, предназначенных для потребительских устройств, также обычно интегрируются: контроллеры шин USB, IIC, устройство для работы с флэш-носителями стандарта, контроллер последовательного порта. Все процессоры имеют линии ввода-вывода общего назначения. В потребительских устройствах к ним могут быть подключены кнопки «быстрого запуска», сигнальные светодиоды, колесо прокрутки (JogDial), клавиатура.

Маркировка:

Как уже было сказано, существуют три базовых направления:- Ядра для классического применения- Ядра для микроконтроллеров- Ядра для встраиваемых систем, работающих в режиме реального времени.

Внутрифирменная маркировка разработчиков предусматривает отображение большого количества информации. Выглядит эта маркировка следующим образом: ARM[NN] [R] [Z] [Ext]. Здесь:- номер семейства- тип блока защиты или управления памятью- кэш-память- расширения процессора.

В настоящее время имеются следующие варианты: T - поддержка режима Thumb; D - JTAG порт; M - быстрый умножитель; I - встроенный блок эмуляции; E - расширенный набор инструкций (подразумевает обязательное наличие функций TDMI, поэтому в случае использования индекса E индексы TDMI из названия опускаются); J - поддержка Java инструкций (режим Jazelle); F - блок векторной арифметики над числами с плавающей точкой; S - синтезируемая версия (поставляется производителю кристалла в виде исходного текста, требующего компиляции (синтеза), в отличие от несинтезируемых версий, которые имеют заданную и неизменяемую топологию).

Например, процессорное ядро ARM7TDMI принадлежит семейству ARM7, не имеет кэш-памяти и блока защиты памяти, поддерживает набор 16-разрядных команд, оснащено JTAG-отладчиком, имеет встроенные средства аппаратного умножения и блок эмуляции [7].

Заключение

В данной работе достаточно подробно была рассмотрена история становления компании ARM Holdings. Сегодня можно найти огромное количество различных микросхем, иногда с полностью отличающимися возможностями, но имеющими в основе ARM-ядро. Главное достоинство процессора состоит в его достаточно высокой производительности при малом потреблении энергии. Упрощенные схемы ядра и команд позволяют использовать меньше транзисторов, так что процессор может иметь компактный вид.

На сегодняшний день большинство мобильных электронных устройств создано на основе процессорного ядра ARM. Низкое энергопотребление и высокая производительность сделали эти процессоры популярными среди разработчиков мобильных телефонов и портативных компьютеров. Процессоры Cortex-A и системы на кристалле с низким энергопотреблением на их основе конкурируют с процессорами Intel Atom, грозя вытеснить их с рынка нетбуков и планшетных компьютеров.

Список использованных источников

1.Информационные технологии: Учебник по информатике. [Электронный ресурс]. Режим доступа к статье: http://solidbase.karelia.ru/edu/zonna/3_ychebnik_9.htm (дата обращения: 22.12.2014)

2.Основы информатики. Основы информатики и вычислительной техники, лекции. Единицы информации. Понятие информации и информатики. [Электронный ресурс]. Режим доступа к статье: http://computer-lectures.ru/osnovnye-ponyatiya-informatiki/1-1-ponyatie-informacii-i-informatiki/ (дата обращения: 22.12.2014)

.Е.А. Жоголев, Технология программирования, Москва, Научный мир, 2004 г., 216 страниц.

.Ключев А.О., Кустарев П.В., Ковязина Д.Р, Петров Е.В. Программное обеспечение встроенных вычислительных систем. - СПб.: СПбГУ ИТМО, 2009. - 212 стр.

.Непейвода Н.Н., Скопин И.Н. Основания программирования, 2002 г.

.Шалыто А.А. Статья. Автоматное программирование, 44 стр.

.Поликарпова Н.И., Шалыто А.А. Автоматное программирование. 2008 г., 167 стр.;

.С.Ю. Подзоров. Теория алгоритмов. НГУ 2003-2004 гг., 130 стр.;

Похожие работы на - Микропроцессоры архитектуры ARM

 

Не нашли материал для своей работы?
Поможем написать уникальную работу
Без плагиата!