онсультацій з приводу розробок програмного забезпечення і більш якісної його сумісності з апаратною частиною. Але тепер комп'ютерної громадськості було неясно і дуже цікаво, що ж буде робити 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 - це технологія, яка дозволяє байткода ...