Поиск по сайту: |
|
По базе: |
|
Главная страница > Обзоры по типам > Микроконтроллеры > ARM |
|
|||||||||||||||||||||||
2.3.3. Режимы работы ЦПУНесмотря на то, что процессор Cortex разрабатывался как быстродействующее, простое в использовании и с малым числом логических элементов микроконтроллерное ядро, в нем была учтена поддержка ОСРВ. Процессор Cortex поддерживает два режима работы: режим Thread (или потоковый режим) и режим Handler (или режим обработчика). ЦПУ запускается в режиме Thread при непрерываемом, фоновом выполнении инструкций и переключается в режим Handler при обработке исключительных ситуаций. Кроме того, ЦПУ Cortex может выполнять код программы в привилегированном или непривилегированном режиме. В привилегированном режиме, ЦПУ имеет доступ ко всему набору инструкций, а в непривилегированном режиме некоторые инструкции отключаются (например, инструкции MRS и MSR, осуществляющие доступ к регистру xPSR и его битовым группам). В этом режиме также отключается доступ к большинству регистров управления системными ресурсами процессора Cortex. Также можно сконфигурировать использование стека. Основной стек (R13) может использоваться в обоих режимах Thread и Handler. Альтернативно, режим Handler можно настроить на использование стека процесса (банковый регистр R13).
Сразу после сброса процессор Cortex запускается в конфигурации 'flat'. В обоих режимах, Thread и Handler, инструкции выполняются в привилегированном режиме, т.о. какие-либо ограничения на доступ к процессорным ресурсам отсутствуют. В режимах Thread и Handler используется основной стек. Чтобы начать выполнение инструкций, достаточно указать процессору вектор сброса и стартовый адрес стека, после чего можно выполнять Си-код программы. Однако, если используется ОСРВ или выполняется разработка критичного к безопасности приложения, процессор может использоваться в более изощренной конфигурации: режим Handler (используется при обработке исключительных ситуаций и операционными системами реального времени) с привилегированными операциями и использованием основного стека и режим Thread при исполнении прикладного кода с непривилегированным доступом и использованием стека процесса. При таком подходе, весь код программы разделяется на системный и прикладной и, поэтому, ошибки в прикладном коде не вызывают сбоев ОСРВ.
Главная - Микросхемы - DOC - ЖКИ - Источники питания - Электромеханика - Интерфейсы - Программы - Применения - Статьи |
|
Впервые? | Реклама на сайте | О проекте | Карта портала тел. редакции: +7 (995) 900 6254. e-mail:info@eust.ru ©1998-2023 Рынок Микроэлектроники |
|