Инфоурок Другое ПрезентацииАрхитектура ЭВМ ARM-7.

Архитектура ЭВМ ARM-7.

Скачать материал
Скачать материал "Архитектура ЭВМ ARM-7."

Получите профессию

Няня

за 6 месяцев

Пройти курс

Рабочие листы
к вашим урокам

Скачать

Методические разработки к Вашему уроку:

Получите новую специальность за 3 месяца

Режиссер монтажа

Описание презентации по отдельным слайдам:

  • Архитектура ЭВМ ARM-7.

    1 слайд

    Архитектура ЭВМ ARM-7.

  • Режимы.
Процессор может находиться в одном из следующих операционных режимов:...

    2 слайд

    Режимы.
    Процессор может находиться в одном из следующих операционных режимов:
    User mode — обычный режим выполнения программ. В этом режиме выполняется большинство программ.
    Fast Interrupt (FIQ) — режим быстрого прерывания (меньшее время срабатывания)
    Interrupt (IRQ) — основной режим прерывания.
    System mode — защищённый режим для использования операционной системой.
    Abort mode — режим, в который процессор переходит при возникновении ошибки доступа к памяти (доступ к данным или к инструкции на этапе prefetch конвейера).
    Supervisor mode — привилегированный пользовательский режим.
    Undefined mode — режим, в который процессор входит при попытке выполнить неизвестную ему инструкцию.

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

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

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

Одним из существенных отличий архитектуры ARM от других...

    3 слайд

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

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

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

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

    С одной стороны, с учётом ограниченности общей длины инструкции, это сократило число бит, доступных для кодирования смещения в командах обращения к памяти,
    но с другой — позволило избавляться от инструкций ветвления при генерации кода для небольших if-блоков.
    Пример:
    Алгоритм Евклида.
    В языке C он выглядит так:
    while (i != j)
    {
    if (i > j)
    i -= j;
    else
    j -= i;
    }

    А на ассемблере ARM — так:
    loop CMP Ri, Rj; set condition «NE» if (i != j),
    ; "GT" if (i > j),
    ;or "LT" if (i < j)
    SUBGT Ri, Ri, Rj; if "GT" (greater than), i = i-j;
    SUBLT Rj, Rj, Ri; if "LT" (less than), j = j-i;
    BNE loop; if "NE" (not equal), then loop

    Из кода видно, что использование предикации позволило полностью избежать ветвления в операторах else и then. Заметим, что если Ri и Rj равны, то ни одна из SUB инструкций не будет выполнена, полностью убирая необходимость в ветке, реализующей проверку while при каждом начале цикла, что могло быть реализовано, например, при помощи инструкции SUBLE (меньше либо равно).
    Один из способов, которым уплотнённый (Thumb) код достигает большей экономии объёма — это именно удаление 4-битового предиката из всех инструкций, кроме ветвлений.

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

Другая особенность набора команд – 
это возможность соеди...

    4 слайд

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

    Другая особенность набора команд –
    это возможность соединять сдвиги и вращения в инструкции «обработки информации» (арифметическую, логическую, движение регистр-регистр).

    Например:
    Выражение С:
    a += (j << 2);
    может быть преобразовано в команду из одного слова и одного цикла в ARM:
    ADD Ra, Ra, Rj, LSL #2

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

    конвейер используется гораздо более эффективно

    ARM процессор также имеет некоторые особенности, редко встречающиеся в других архитектурах RISC:
    адресация относительно счетчика команд (на самом деле счетчик команд ARM является одним из 16 регистров),
    пре- и пост-инкрементные режимы адресации.
    некоторые ранние ARM процессоры не имеют команд для хранения 2-байтных чисел.
    Конвейер и другие аспекты реализации
    ARM7 и более ранние версии имеют трехступенчатый конвейер:
    перенос,
    декодирования,
    исполнение.
    Cortex-a8 имеет 13-ступенчатый конвейер.

    Сопроцессоры
    Способ расширения набора команд –сопроцессоры.
    Могут быть адресованы, используя:
    MCR,
    MRC,
    MRRC,
    MCRR и похожие команды.
    Пространство сопроцессора логически разбито на 16 сопроцессоров с номерами от 0 до 15,
    причем 15-й зарезервирован для некоторых типичных функций управления, типа:
    управления кэш-памятью,
    операции блока управления памятью. 

  • В машинах на основе ARM
периферийные устройства обычно подсоединяются к проце...

    5 слайд

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

    Доступ к сопроцессорам имеет большее время ожидания

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

    Например:
    движок обработки изображений должен состоять из малого ядра ARM7TDMI, совмещенного с сопроцессором, который поддерживает примитивные операции по обработке элементарных кодировок HDTV.
    Усовершенствованный SIMD (NEON)

    Расширение усовершенствованного SIMD, также называемое технологией NEON —
    это комбинированный 64- и 128-битный набор команд SIMD (single instruction multiple data), который обеспечивает стандартизованное ускорение для медиа приложений и приложений обработки сигнала.
    NEON может выполнять декодирование аудио формата mp3 на частоте процессора в 10 МГц, и может работать с речевым кодеком GSM AMR (adaptive multi-rate) на частоте более 13МГц.
    Он обладает:
    внушительным набором команд,
    отдельными регистровыми файлами,
    независимой системой исполнения на аппаратном уровне.

    NEON поддерживает 8-, 16-, 32-, 64-битную информацию целого типа, одинарной точности и с плавающей запятой, и работает в операциях SIMD по обработке аудио и видео (графика и игры). В NEON SIMD поддерживает до 16 операций единовременно.

  • VFP

Технология VFP (Vector Floating Point, вектора чисел с плавающей запятой...

    6 слайд

    VFP

    Технология VFP (Vector Floating Point, вектора чисел с плавающей запятой) —
    расширение сопроцессора в архитектуре ARM.
    Она производит низкозатратные вычисления над числами с плавающей запятой одинарной/двойной точности, в полной мере соответствующие стандарту ANSI/IEEE Std 754—1985 Standard for Binary Floating-Point Arithmetic.

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

    Архитектура VFP также поддерживает исполнение коротких векторных команд.
    Но, поскольку процессор выполняет операции последовательно над каждым элементом вектора, то VFP нельзя назвать истинным SIMD набором инструкций.
    Этот режим может быть полезен в графике и приложениях обработки сигнала, так как он позволяет уменьшить размер кода и выработку команд.
    Другие сопроцессоры с плавающей запятой и/или SIMD, находящиеся в ARM процессорах включают в себя FPA, FPE, iwMMXt. Они обеспечивают ту же функциональность, что и VFP, но не совместимы с ним на уровне опкодов.
    Расширения безопасности –
    TrustZone Technology,
    находятся в ARMv6KZ и других, более поздних, профилированных на приложениях архитектурах.
    Оно обеспечивает низкозатратную альтернативу добавлению специального ядра безопасности, обеспечивая 2 виртуальных процессора, поддерживаемых аппаратным контролем доступа.

    Позволяет ядру приложения переключаться между двумя состояниями, называемыми «миры».Чтобы не допустить утечку информации из более важного мира в менее важный.
    Этот переключатель миров обычно ортогонален всем другим возможностям процессора.

    каждый мир может работать независимо от других миров, используя одно и то же ядро.

    Память и периферия изготавливаются с учетом особенностей мира ядра, и могут использовать это, чтобы получить контроль доступа к секретам и кодам ядра.
    Типичные приложения TrustZone Technology должны запускать полноценную операционную систему в менее важном мире, и компактный, специализированный на безопасности, код в более важном мире, позволяя Digital Rights Management’у намного точнее контролировать использование медиа на устройствах на базе ARM, и предотвращая несанкционированный доступ к устройству.

  • Отладка

Все современные процессоры ARM включают аппаратные средства отладки....

    7 слайд

    Отладка

    Все современные процессоры ARM включают аппаратные средства отладки.
    Архитектура ARMv7 определяет базовые средства отладки на архитектурном уровне:
    точки останова,
    точки просмотра,
    выполнение команд в режиме отладки.

    Такие средства были также доступны с модулем отладки EmbeddedICE.

    Поддерживаются оба режима — остановки и обзора.

    Реальный транспортный механизм, который используется для доступа к средствам отладки, не специфицирован архитектурно, но реализация, как правило, включает поддержку JTAG.

    Существует отдельная архитектура отладки «с обзором ядра», которая не требуется архитектурно процессорами ARMv7.
    Поддерживаемые системы ввода-вывода

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

  • Регистры

ARM предоставляет 31 регистр общего назначения разрядностью 32 бит....

    8 слайд

    Регистры

    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. Тем самым фиксируется состояние процессора (режим, состояние; флаги арифметических, логических операций, разрешения прерываний) на момент непосредственно перед прерыванием.

  • Форматы команд и способы адресации ARM7.Набор команд
Чтобы сохранить дизайн ч...

    9 слайд

    Форматы команд и способы адресации ARM7.
    Набор команд
    Чтобы сохранить дизайн чистым, простым и быстрым, оригинальное изготовление ARM было исполнено без микрокода, как и более простой 8-разрядный процессор 6502, используемый в предыдущих микрокомпьютерах от Acorn Computers.


    Набор команд ARM
    Режим, в котором исполняется 32-битный набор команд.


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

    В ситуациях, когда порт памяти или ширина шины ограничены 16 битами, более короткие коды операций режима Thumb становятся гораздо производительнее по сравнению с обычным 32-битным ARM кодом, так как меньший программный код придется загружать в процессор при ограниченной пропускной способности памяти.
    Аппаратные средства типа Game Boy Advance, как правило, имеют небольшой объем оперативной памяти доступной с полным 32-битным информационным каналом. Но большинство операций выполняется через 16-битный или более узкий информационный канал. В этом случае имеет смысл использовать тумбовый код и вручную оптимизировать некоторые тяжелые участки кода, используя переключение в режим полных 32-битных инструкций ARM.
    Первым процессором с декодером тумбовых команд был ARM7TDMI. Все процессоры семейства ARM9, а также XScale, имели встроенный декодер тумбовых команд

Получите профессию

Няня

за 6 месяцев

Пройти курс

Рабочие листы
к вашим урокам

Скачать

Скачать материал

Найдите материал к любому уроку, указав свой предмет (категорию), класс, учебник и тему:

6 626 146 материалов в базе

Скачать материал

Вам будут интересны эти курсы:

Оставьте свой комментарий

Авторизуйтесь, чтобы задавать вопросы.

  • Скачать материал
    • 27.08.2020 573
    • PPTX 443.5 кбайт
    • Оцените материал:
  • Настоящий материал опубликован пользователем Иванова Ирина Николаевна. Инфоурок является информационным посредником и предоставляет пользователям возможность размещать на сайте методические материалы. Всю ответственность за опубликованные материалы, содержащиеся в них сведения, а также за соблюдение авторских прав несут пользователи, загрузившие материал на сайт

    Если Вы считаете, что материал нарушает авторские права либо по каким-то другим причинам должен быть удален с сайта, Вы можете оставить жалобу на материал.

    Удалить материал
  • Автор материала

    Иванова Ирина Николаевна
    Иванова Ирина Николаевна
    • На сайте: 3 года и 3 месяца
    • Подписчики: 0
    • Всего просмотров: 88097
    • Всего материалов: 239

Ваша скидка на курсы

40%
Скидка для нового слушателя. Войдите на сайт, чтобы применить скидку к любому курсу
Курсы со скидкой

Курс профессиональной переподготовки

Бухгалтер

Бухгалтер

500/1000 ч.

Подать заявку О курсе

Курс профессиональной переподготовки

Руководство электронной службой архивов, библиотек и информационно-библиотечных центров

Начальник отдела (заведующий отделом) архива

600 ч.

9840 руб. 5900 руб.
Подать заявку О курсе

Курс профессиональной переподготовки

Библиотечно-библиографические и информационные знания в педагогическом процессе

Педагог-библиотекарь

300/600 ч.

от 7900 руб. от 3950 руб.
Подать заявку О курсе
  • Сейчас обучается 457 человек из 66 регионов

Курс профессиональной переподготовки

Организация деятельности библиотекаря в профессиональном образовании

Библиотекарь

300/600 ч.

от 7900 руб. от 3950 руб.
Подать заявку О курсе
  • Сейчас обучается 281 человек из 66 регионов

Мини-курс

Основы управления проектами

6 ч.

780 руб. 390 руб.
Подать заявку О курсе

Мини-курс

Стратегическое планирование и маркетинговые коммуникации

5 ч.

780 руб. 390 руб.
Подать заявку О курсе
  • Сейчас обучается 22 человека из 15 регионов

Мини-курс

Современные тенденции в управлении и бизнесе

6 ч.

780 руб. 390 руб.
Подать заявку О курсе