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

Длинную историческую справку можно найти здесь.

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

Кратко рассмотрим основные современные продуктовые ряды ядер ARM.

Cortex-A

Устройства этого типа представляют собой расширяемый ряд низкопотребляющих и производительных процессоров для разнообразных целевых приложений. Например:

Все эти процессоры могут работать в мультиядерных конфигурациях. Процессоры этого класса поддерживают систему команд Thumb-2 и Java-расширение Jazelle.

Сравнительная таблица реализаций процессоров на современных техпроцессах.

Cortex-R

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

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

Cortex-M

Наиболее дешевые и низкопотребляющие ARM-процессоры. Типичные применения (и количество установленных устройств) показаны ниже.

Cortex-M0

Дешевые процессоры для 8 или 16 битовых приложений. Минимальное потребление (низкопотребляющий 90нм процесс) - 16 мкА на Мгц, 12000 вентилей, 56 инструкций. Наиболее низкопотребляющее решение.

Cortex+M0

Дальнейшее развитие серии М0 для 32-битовых приложений. Потребление (низкопотребляющий 90нм процесс) - 9.8 мкА на Мгц, двухуровневый конвейер.

Cortex-M1

Дизайн специально для реализаций на базе FPGA.

Cortex-M3

32-битовый процессор для приложений реального времени. Имеется поддержка нескольких состояний низкого энергопотребления, богатые возможности обработки прерываний (до 240 штук), большое количество линий ввода-вывода и интегрированные внешний устройства, например USB OTG. Система инструкций Thumb-2.

Cortex-M4

В дополнение к расширеням от Cortex-M3 имеет 1-тактовое MAC-устройство, оптимизированные SIMD-вычислители, опциональное устройство обработки плавающей запятой.

Спасибо за внимание!