Как стать автором
Обновить

Небольшое знакомство с ARM-процессорами

image

Привет, Хабр! Сегодня хочется рассказать немного о семействе процессоров ARM Cortex. Почему? Потому не каждый знает, что вся линейка STM-контроллеров построена на базе данных процессоров, а имеено на процессорах Cortex-M, но помимо них есть и другие типы, поэтому перейдем к делу!

Итак, семейство ARM Cortex — это широко популярное поколение процессоров, выполненных по RISC-архитектуре (RISC — Reduced Instruction Set Computer — архитектура с набором простых инструкций, благодаря данной архитектуре увеличивается быстодействие выполнения команд). Семейство ARM Cortex подразделется на три вида:

  1. ARM Cortex-A — это процессоры, предназначенные для высокопроизводительных применений. Данный тип процессоров используется в смартфонах, планшетах, а также игровых приставках. Линейка процессоров Cortex-A поддерживает следующие наборы инструкций: ARM, Thumb и Thumb-2. Рассмотрим где же все-таки применяются некоторые типы ядер данного семейства процессоров:

    • Cortex-A5 — данный тип ядра используется для бюджетного типа устройств и предназначается для запуска простейших приложений, но никак не для ресурсоемких программ;
    • Cortex-A7 — данный тип ядра является более мощным процессором с кэшом второго уровня до 4 МБ и предназначается для смартфонов;
    • Cortex-A15 — данный тип ядра является наилучшим решением и используется в чипах флагманских коммуникаторов различных производителей.

  2. ARM Cortex-R — это процессоры, предназначенные для реально-временных применений. Данный тип процессоров используется в автомобилях и жестких дисках т.к имеет высокую надежность, отказоустойчивость и детерменированные ответы в режиме real-time. В Cortex-R поддерживаются все те же инструкции, что и в Cortex-A. Пару примеров данной серии процессоров:

    • ARM Cortex-R5 и ARM Cortex-R7 — процессоры выполненные по 28-нанометровой технологии, в которые добавлена поддержка стандартов LTE и LTE-Advanced. Также данные процессоры выполняются в одно- и двухядерных вариантах.

  3. ARM Cortex-M — это процессоры, предназначенные для микроконтроллерных применений. Данная линейка процессоров применяется не только в STM-контроллерах, но и в разработках таких фирм как: Texas Instruments, Analog Devices, Atmel и т.д. По сравнению с предыдущими линейками Cortex-процессоров, ARM Cortex-M является более дешевым и поэтому содержит в себе всего один набор инструкций — Thumb-2.

Приведу несколько плюсов использования Cortex-процессоров:

  • Гарвардская архитектура. Стоит помнить о том, что каждая команда проходит через трехступечнатый конвейер (выборка, дешифрация и выполнение команды), но благодаря Гарвардской архитектуре операции выполняются параллельно, т.е выглядит это так: первая инструкция — выполняется, вторая — дешифрируется, третья — считывается с определенной ячейки памяти;
  • Метод bit banding. Благодаря данному методу осуществляется эффективный доступ к регистрам и флагам устойств ввода-вывода, расположенных в SRAM. Благодаря данному методу можно сэкономить во-первых размер программы, а во-вторых время выполнения программы;
  • Низкая стоимость. На сегодняшний день благодаря высокой степени безопасности, защищенности, достачно большим объемом памяти и множеству других плюшек, Cortex-процессоры являются лучшим выбором среди других процессоров.

На сегодня у меня все, в дальнейшем планирую начать написание целого практического цикла о программировании в связке STM32+Linux, начиная от «Hello, World!» и заканчивая FreeRTOS.
Теги:
Хабы:
Данная статья не подлежит комментированию, поскольку её автор ещё не является полноправным участником сообщества. Вы сможете связаться с автором только после того, как он получит приглашение от кого-либо из участников сообщества. До этого момента его username будет скрыт псевдонимом.