Концепція Thumb
Технологія Thumb - додаткове розширення до архітектури ARM. Система команд Thumb містить 36 команд, похідних від стандартної 32-розрядної системи команд ARM, перекодувати в 16-розрядні коди. Такий підхід забезпечив дуже високу щільність коду, оскільки команди Thumb складають половину ширини формату команд ARM. У процесі виконання ці нові 16-розрядні Thumb коди декомпресивні процесором у відповідні еквівалентні команди ARM, які потім і виконуються ядром ARM звичайним способом.
В
Малюнок 1: Команди Thumb як кодоване підмножина системи команд ARM
Унікальне перевагу
Технологія Thumb - це не тільки змішана система команд. Thumb-орієнтовані ядра мають дві окремих системи команд - унікальне гідність, що дозволяє розробнику використовувати всю потужність 32-розрядної системи команд ARM при використанні переваг малого розміру коду системи команд Thumb. Той факт, що дві системи команд є абсолютно окремими, говорить про те, що кошти декодуючої логіки також надзвичайно прості, що в свою чергу, зберігає малим розмір кристала і зберігає краще в галузі співвідношення продуктивність/споживання. p> Розмір і критичні до продуктивності підпрограми
Так як Thumb - орієнтовані ядра здатні виконувати і стандартну ARM систему команд і нові команди Thumb, розробник, при переході від підпрограми до підпрограмі, може знаходити компроміс між розміром коду і продуктивністю, готуючи критичні до розміру підпрограми в коді Thumb і критичні до продуктивності підпрограми в кодах ARM. p> 32-розрядна RISC продуктивність
Thumb - Орієнтовані ядра типу ARM7TDMI мають повну 32-розрядну архітектуру ARM, так що розробник зберігає 32-розрядну продуктивність RISC архітектури. Комбінація двох систем команд, що виконуються на 32-розрядному Thumb - орієнтованому ядрі, забезпечує ефективне вирішення проблеми великих розмірів коду і проблеми невисокої продуктивності 16-розрядних систем. p> Поліпшення щільності коду на 30%
Отримані до теперішнього часу результати показали поліпшення щільності коду на 30%, по порівнянні з кодом ARM, що дозволяє вважати Thumb - орієнтовані процесори кращими за щільністю коду в порівнянні і з традиційними CISC процесорами.
В
Малюнок 2: Ядро ARM7TDMI і розташування декомпресора команд Thumb
Підтримка півслів
Крім введення нових Thumb команд, фірма ARM додала до систем команд і ARM і Thumb підтримку формату півслів (16-розрядних даних). Отже архітектура ARM тепер повністю підтримує 8, 16 і 32-розрядні дані. Були додані і для Thumb і ARM ядер операції зі знаками для підтримки ними 8 і 16-розрядних операцій з даними із знаками. p> Розширення можливостей комплекту засобів розробки програмного забезпечення ARM
омплект засобів розробки програмного забезпечення ARM також був розширений, щоб забезпечити підтримку розробки кодів Thumb. Комплект дозволяє програмісту писати і розміщувати в пам'яті системи коди ARM, коди Thumb або обидв...