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

Автор работы: Пользователь скрыл имя, 25 Декабря 2014 в 14:46, реферат

Описание работы

С момента, когда человек изобрел цифровую передачу данных, сложно представить себе нашу жизнь без компьютеров. Глобальная компьютеризация проникла во все сферы нашей жизни: медицину, развлечения, индустрию, науку. Куда бы не пошел - всюду компьютеры. Все это создает впечатление, что вычислительные машины правят миром.

Файлы: 1 файл

Корх. Реферат. МП архитектуры АRМ. Исправленный по ОС ТУСУР-2013.docx

— 82.55 Кб (Скачать файл)

Набор команд Thumb-2:

Данный набор команд расширяет ограниченный 16-битный набор команд Thumb дополнительными 32-битными командами, чтобы задать набору команд дополнительную ширину. Цель Thumb-2 — достичь плотности кода как у Thumb, и производительности как у набора команд ARM на 32 битах. Thumb-2 расширяет как команды ARM, так и команды Thumb еще большим количеством команд, включая управление битовым полем, табличное ветвление, условное исполнение

Набор команд Jazelle:

Jazelle — это технология, которая позволяет байткоду Java исполняться прямо в архитектуре ARM в качестве 3-го состояния исполнения (и набора команд) наряду с обычными командами ARM и режимом Thumb. Поддержка технологии Jazelle обозначается буквой «J» в названии процессора — например, ARMv5TEJ. Данная технология поддерживается начиная с архитектуры ARMv6.

Функции RISC:

Архитектура ARM обладает следующими особенностями RISC:

  • Архитектура загрузки/хранения
  • Нет поддержки нелинейного (не выровненного по словам) доступа к памяти (теперь поддерживается в процессорах ARMv6 за некоторыми исключениями)
  • Равномерный 16х32-битный регистровый файл
  • Фиксированная длина команд (32 бита) для упрощения декодирования за счет снижения плотности кода. Позднее режим Thumb повысил плотность кода.
  • Одноцикловое исполнение

Особенности дизайна:

  • Арифметические инструкции заменяют условные коды только когда это необходимо
  • 32-битное многорегистровое циклическое сдвиговое устройство, которое может быть использовано без потерь производительности в большинстве арифметических инструкций и адресных расчетов.
  • Мощные индексированные адресные режимы
  • Регистр ссылок для быстрого вызова функций листьев
  • Простые, но быстрые, с двумя уровнями приоритетов подсистемы прерываний с включенными банками регистров.

Условное исполнение:

Одним из существенных отличий архитектуры ARM от других архитектур ЦПУ является так называемая предикация — возможность условного исполнения команд. Под «условным исполнением» здесь понимается то, что команда будет выполнена или проигнорирована в зависимости от текущего состояния флагов состояния процессора.

В то время как для других архитектур таким свойством, как правило, обладают только команды условных переходов, в архитектуру ARM была заложена возможность условного исполнения практически любой команды. Это было достигнуто добавлением в коды их инструкций особого 4-битового поля (предиката). Одно из его значений зарезервировано на то, что инструкция должна быть выполнена безусловно, а остальные кодируют то или иное сочетание условий (флагов). С одной стороны, с учётом ограниченности общей длины инструкции, это сократило число бит, доступных для кодирования смещения в командах обращения к памяти, но с другой — позволило избавляться от инструкций ветвления при генерации кода для небольших if-блоков.

Другие особенности:

 

Другая особенность набора команд это возможность соединять сдвиги и вращения в инструкции «обработки информации» (арифметическую, логическую, движение регистр-регистр). Это приводит к тому, что типичные программы ARM становятся плотнее, чем обычно, с меньшим доступом к памяти. Таким образом, конвейер используется гораздо более эффективно. Даже несмотря на то, что ARM работает на скоростях, которые многие бы сочли низкими, он довольно-таки легко конкурирует с многими более сложными архитектурами ЦПУ. ARM процессор также имеет некоторые особенности, редко встречающиеся в других архитектурах RISC — такие, как адресация относительно счетчика программ (на самом деле счетчик команд ARM является одним из 16 регистров), а также пре- и пост-инкрементные режимы адресации. Другая особенность, которую стоит отметить, это то, что некоторые ранние ARM процессоры (до ARM7TDMI), например, не имеют команд для хранения 2-байтных чисел.

 

Конвейер и другие аспекты реализации:

 

ARM7 и более ранние версии имеют  трехступенчатый конвейер. Это ступени  переноса, декодирования и исполнения. Более производительные архитектуры, типа ARM9, имеют более сложные конвейеры.

 

VFP:

 

Технология VFP18 — расширение сопроцессора в архитектуре ARM. Она производит низкозатратные вычисления над числами с плавающей запятой одинарной/двойной точности. VFP производит вычисления с плавающей запятой, подходящие для широкого спектра приложений — например, для КПК, смартфонов, сжатие звука, трёхмерной графики и цифрового звука, а также принтеров и телеприставок. Архитектура VFP также поддерживает исполнение коротких векторных команд.

 

Расширения безопасности:

 

Расширения безопасности, позиционируемые как TrustZone Technology, находятся в ARMv6KZ и других, более поздних, профилированных на приложениях архитектурах. Оно обеспечивает низкозатратную альтернативу добавлению специального ядра безопасности, обеспечивая 2 виртуальных процессора, поддерживаемых аппаратным контролем доступа. Это позволяет ядру приложения переключаться между двумя состояниями, называемыми «миры» (чтобы избежать путаницы с названиями возможных доменов), чтобы не допустить утечку информации из более важного мира в менее важный. Этот переключатель миров обычно ортогонален всем другим возможностям процессора. На практике же, так как конкретные детали реализации TrustZone остаются собственностью компании и не разглашаются, остается неясным, какой уровень безопасности гарантируется для данной модели угрозы.

Отладка:

 

Все современные процессоры ARM включают аппаратные средства отладки, так как без них отладчики ПО не смогли бы выполнить самые базовые операции типа остановки, отступа, установка контрольных точек после перезагрузки.

 

Регистры:

 

ARM предоставляет 31 регистр общего назначения разрядностью 32 бит. В зависимости от режима и состояния процессора пользователь имеет доступ только к строго определённому набору регистров. В ARM state разработчику постоянно доступны 17 регистров:

13 регистров общего назначения (r0..r12).

Stack Pointer (r13) — содержит указатель стека выполняемой программы.

Link register (r14) — содержит адрес возврата в инструкциях ветвления.

Program Counter (r15) — биты [31:1] содержат адрес выполняемой инструкции.

Current Program Status Register (CPSR) — содержит флаги, описывающие текущее состояние процессора. Модифицируется при выполнении многих инструкций: логических, арифметических, и др.

Во всех режимах, кроме User mode и System mode, доступен также Saved Program Status Register (SPSR). После возникновения исключения регистр CPSR сохраняется в SPSR. Тем самым фиксируется состояние процессора (режим, состояние; флаги арифметических, логических операций, разрешения прерываний) на момент непосредственно перед прерыванием.

     

Поддерживаемые системы ввода-вывода:

 

В большинстве существующих моделей микропроцессоров реализована шина  PCI19 и возможность работы с DRAM20. В процессорах, предназначенных для потребительских устройств, также обычно интегрируются: контроллеры шин USB, IIC, устройство для работы с флэш-носителями стандарта, контроллер последовательного порта. Все процессоры имеют линии ввода-вывода общего назначения. В потребительских устройствах к ним могут быть подключены кнопки «быстрого запуска», сигнальные светодиоды, колесо прокрутки (JogDial), клавиатура.

Маркировка:

Как уже было сказано, существуют три базовых направления:

 

A – Ядра для классического  применения

M – Ядра для микроконтроллеров

R – Ядра для встраиваемых  систем, работающих в режиме реального  времени.

 

Внутрифирменная маркировка разработчиков предусматривает отображение большого количества информации. Выглядит эта маркировка следующим образом: ARM[NN][R][Z][Ext]. Здесь:

 

NN – номер семейства

R – тип блока защиты или  управления памятью

Z – кэш-память

Ext – расширения процессора.

В настоящее время имеются следующие варианты: T – поддержка режима Thumb; D – JTAG порт; M – быстрый умножитель; I – встроенный блок эмуляции; E – расширенный набор инструкций (подразумевает обязательное наличие функций TDMI, поэтому в случае использования индекса E индексы TDMI из названия опускаются); J – поддержка Java инструкций (режим Jazelle); F – блок векторной арифметики над числами с плавающей точкой; S – синтезируемая версия (поставляется производителю кристалла в виде исходного текста, требующего компиляции (синтеза), в отличие от несинтезируемых версий, которые имеют заданную и неизменяемую топологию).

 

Например, процессорное ядро ARM7TDMI принадлежит семейству ARM7, не имеет кэш-памяти и блока защиты памяти, поддерживает набор 16-разрядных команд, оснащено JTAG-отладчиком, имеет встроенные средства аппаратного умножения и блок эмуляции [7].

 

 

 

 

 

 

 

 

 

 

 

 

 

 

6 ЗАКЛЮЧЕНИЕ

В данной работе достаточно подробно была рассмотрена история становления компании ARM Holdings. Сегодня можно найти огромное количество различных микросхем, иногда с полностью отличающимися возможностями, но имеющими в основе ARM-ядро. Главное достоинство процессора состоит в его достаточно высокой производительности при малом потреблении энергии. Упрощенные схемы ядра и команд позволяют использовать меньше транзисторов, так что процессор может иметь компактный вид. 

На сегодняшний день большинство мобильных электронных устройств создано на основе процессорного ядра ARM. Низкое энергопотребление и высокая производительность сделали эти процессоры популярными среди разработчиков мобильных телефонов и портативных компьютеров. Процессоры Cortex-A и системы на кристалле с низким энергопотреблением на их основе конкурируют с процессорами Intel Atom, грозя вытеснить их с рынка нетбуков и планшетных компьютеров.

 

 

 

 

 

 

 

 

 

 

 

7 СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ

  1. Информационные технологии: Учебник по информатике. [Электронный ресурс]. Режим доступа к статье:  http://solidbase.karelia.ru/edu/zonna/3_ychebnik_9.htm  (дата обращения: 22.12.2014)
  2. Основы информатики. Основы информатики и вычислительной техники, лекции. Единицы информации. Понятие информации и информатики. [Электронный ресурс]. Режим доступа к статье:  http://computer-lectures.ru/osnovnye-ponyatiya-informatiki/1-1-ponyatie-informacii-i-informatiki/ (дата обращения: 22.12.2014)
  3. Е. А. Жоголев, Технология программирования, Москва, Научный мир, 2004 г., 216 страниц.
  4. Ключев А.О., Кустарев П.В., Ковязина Д.Р, Петров Е.В. Программное обеспечение встроенных вычислительных систем. – СПб.: СПбГУ ИТМО, 2009. – 212 стр.
  5. Непейвода Н.Н., Скопин И.Н. Основания программирования, 2002г.
  6. Шалыто А.А. Статья. Автоматное программирование, 44 стр.
  7. Поликарпова Н.И., Шалыто А.А. Автоматное программирование. 2008 г, 167стр.;

 

 

  1. С.Ю. Подзоров. Теория алгоритмов. НГУ 2003-2004 гг., 130 стр.;

 

 

1 Micro – англ. микро. Processor – англ. процессор

2 БИС - большая интегральная схема, до 10 тыс. элементов в кристалле

3 СБИС - сверхбольшая интегральная схема, более 10 тыс. элементов в кристалле

4 Integrated – англ. интегрированный. Microcircuit – англ. микросхема

5 Электронно-вычислительная машина,  - (electronic) computer – англ. (электронный) компьютер

6 CISC (Complete Instruction Set Computer) – англ. компьютер с полным набором команд

7 RISC (Reduced Instruction Set Computer) –   англ. компьютер с сокращенным набором команд

8 RAM (Random Access Memory) – англ. память с произвольным доступом (оперативная память)

9 SoC (System-on-a-Chip) – англ. «система на чипе» или система на кристалле (однокристальная система)

10 CPU (central processing unit) – англ. ЦПУ (центральное процессорное устройство)

11  GPS (Global Positioning System) – англ. система глобального позиционирования

12 PDA (Personal Digital Assistant) – англ. «личный цифровой секретарь» или КПК (карманный персональный компьютер)

13 IP (intellectual property) – англ. «интеллектуальная собственность»

14  DEC (Digital Equipment Corporation) – англ. «корпорация цифрового оборудования»,  американская компьютерная компания, была основана в 1957 году

15 NASDAQ ( National Association of Securities Dealers Automated Quotation) – англ. «Автоматизированные котировки Национальной ассоциации дилеров по ценным бумагам», американская биржа, специализирующаяся на акциях высокотехнологичных компаний (производство электроники, программного обеспечения и т. п.). Одна из трёх основных фондовых бирж США.

16 OEM ( Original equipment manufacturer ) – англ. оригинальный производитель оборудования)

17 FPGA(. Field-Programmable Gate Array) – англ. «Программируемая пользователем вентильная матрица (ППВМ)» — полупроводниковое устройство, которое может быть сконфигурировано производителем или разработчиком после изготовления; отсюда название: «программируемая пользователем». ППВМ программируются путём изменения логики работы принципиальной схемы

18 VFP (Vector Floating Point) – англ. «Вектор с плавающей запятой».

19 PCI ( Peripheral component interconnect) – англ. «взаимосвязь периферийных компонентов», шина ввода-вывода для подключения периферийных устройств к материнской плате компьютера.

20 DRAM (Dynamic random access memory) – англ. «Динамическая память с произвольным доступом».


Информация о работе Микропроцессоры архитектуры ARM