Концепция Thumb (110626)

Посмотреть архив целиком

Концепция Thumb

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



Рисунок 1: Команды Thumb как кодированное подмножество системы команд ARM

Уникальное преимущество

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

Размер и критичные к производительности подпрограммы

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

32-разрядная RISC производительность

Thumb - ориентированные ядра типа ARM7TDMI имеют полную 32-разрядную архитектуру ARM, так что разработчик сохраняет 32-разрядную производительность RISC архитектуры. Комбинация двух систем команд, выполняющихся на 32-разрядном Thumb - ориентированном ядре, обеспечивает эффективное решение проблемы больших размеров кода и проблемы невысокой производительности 16-разрядных систем.

Улучшение плотности кода на 30 %

Полученные к настоящему времени результаты показали улучшение плотности кода на 30%, по сравнению с кодом ARM, что позволяет считать Thumb - ориентированные процессоры лучшими по плотности кода в сравнении и с традиционными CISC процессорами.



Рисунок 2: Ядро ARM7TDMI и расположение декомпрессора команд Thumb

Поддержка полуслов

Кроме введения новых Thumb команд, фирма ARM добавила к системам команд и ARM и Thumb поддержку формата полуслов (16-разрядных данных). Следовательно архитектура ARM теперь полностью поддерживает 8, 16 и 32-разрядные данные. Были добавлены и для Thumb и ARM ядер операции со знаками для поддержки ими 8 и 16-разрядных операций с данными со знаками.

Расширение возможностей комплекта средств разработки программного обеспечения ARM

омплект средств разработки программного обеспечения ARM также был расширен, чтобы обеспечить поддержку разработки кодов Thumb. Комплект позволяет программисту писать и размещать в памяти системы коды ARM, коды Thumb или оба вместе.



Рисунок 3: Последовательность этапов проектирования программного обеспечения для Thumb - ориентированного ядра

Краткая сводка преимуществ технологии Thumb

Превосходная плотность кода

Система команд Thumb дает превосходную плотность кода, по сравнению с 32-разрядными ядрами и 8 и 16-разрядными процессорами, обычно используемыми во встраиваемых применениях. Объем памяти и, как следствие, стоимость системы уменьшаются.

16-разрядные команды

Команды Thumb - 16-разрядные и шина передачи данных системы тоже должна быть только 16-разрядной. Это уменьшает, и потребляемую мощность и размеры печатной платы, что ведет к меньшей стоимости системы и меньшему потреблению системой мощности.

Самая маленькая площадь, занимаемая ядром на кристалле

Thumb-ориентированные ядра имеют почти самые маленькие в отрасли размеры кристалла (площадь, занимаемая ядром ARM7TDMI, при топологических нормах 0, 6 мкм, менее 5 мм2). Следовательно разработчик ASSP (application specific standard product) и ASIC (applications specific integrated circuit), использующий Thumb-ориентированные ядра, получит кристалл системы уменьшенного размера за счет меньшего размера ядра, по сравнению с 16/32-разрядными CISC ядрами, и за счет меньшего размера встроенной ROM программ. В сочетании с упрощенным и, следовательно более дешевым, тестированием, по сравнению с тестированием CISC ядер, малым выделением тепла, что позволяет размещать прибор в пластиковом корпусе, все это позволяет получить прибор меньшей стоимости чем стандартные решения.

Полная 32-разрядная архитектура

Команды Thumb выполняются на полной 32-разрядной RISC архитектуре ARM. Разработчик, следовательно, способен использовать быструю 32-разрядную математику и простую несегментированную карту памяти с адресным пространством 4 Гбайта - колоссальное пространство даже для наиболее сложных из встраиваемых управляющих применений.

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

Размер кода и производительность

Thumb-ориентированные ядра типа ARM7TDMI выполняют и 32-разрядные команды ARM и новые 16-разрядные команды Thumb. Разработчики могут смешивать подпрограммы в кодах Thumb и в кодах ARM в одном и том же адресном пространстве, что позволяет программисту от подпрограммы к подпрограмме находить компромисс между размером кода и производительностью так, как это требуется применением.

Комплект средств разработки программного обеспечения фирмы ARM с расширенными возможностями

Новые команды Thumb полностью поддерживаются "Thumb - ориентированным" комплектом инструментальных средств фирмы ARM. Этот комплект инструментальных средств включает работает в среде Windows, поддерживает Kanji и обеспечивает беспроблемное взаимодействие между состояниями ARM и Thumb.

Защита вложенных средств

Средства, вложенные в разработку уже эксплуатируемого ARM программного обеспечения, затрачены не впустую, поскольку Thumb-ориентированные ядра выполняют ARM код. Для использования этих кодов в Thumb состоянии, исходные тексты достаточно только перекомпилировать.

Основа достоинств технологии Thumb - достоинства архитектуры ARM

Новое семейство Thumb-ориентированных ядер использует традиционные достоинства архитектуры ARM: чрезвычайно малое потребление мощности, наилучшее в отрасли соотношение производительность/потребление (MIPS/Watt) и малая площадь, занимаемая ядром, при интеграции на кристалл.

Подводя итог можно утверждать: архитектура Thumb позволяет разработчикам 16-разрядных получить производительность 32-разрядных ARM ядер по цене 16-разрядных систем.

Список литературы

Для подготовки данной работы были использованы материалы с сайта http://www.gaw.ru/



Случайные файлы

Файл
143192.rtf
537.doc
83018.rtf
26644-1.rtf
34918.rtf




Чтобы не видеть здесь видео-рекламу достаточно стать зарегистрированным пользователем.
Чтобы не видеть никакую рекламу на сайте, нужно стать VIP-пользователем.
Это можно сделать совершенно бесплатно. Читайте подробности тут.