Реферат: Архитектура микроконтроллеров
Порты P0, P1, P2, P3 являются квазидвунаправленными
портами ввода - вывода и предназначены для обеспечения обмена информацией ОЭВМ
с внешними устройствами, образуя 32 линии ввода-вывода.
Регистр состояния
программы (PSW)
предназначен для хранения информации о состоянии АЛУ при выполнении программы.
Память программ (EPROM) предназначена для хранения программ
и представляет собой постоянное запоминающее устройство (ПЗУ). В разных
микросхемах применяются масочные, стираемые ультрафиолетовым излучением или FLASH
ПЗУ.
Регистр указателя данных
(DPTR) предназначен для
хранения 16 - разрядного адреса внешней памяти данных или памяти программ.
Указатель стека (SP) представляет собой восьмиразрядный
регистр, предназначенный для организации особой области памяти данных (стека),
в которой можно временно сохранить любую ячейку памяти.
2.
Архитектура
микроконтроллеров ARM
Широкое
портфолио микроконтроллеров ARM позволяет использовать эти устройства в большом
числе приложений, но лучше всего их преимущества могут раскрыться в портативных
приложениях, так как эти микроконтроллеры предлагают наиболее гибкое управление
энергопотреблением за счет большого числа режимов работы, вариантов
синхронизации и других особенностей. За счет этого, ARM-микроконтроллеры STM
позволяют добиться лучших характеристик энергопотребления в этом классе
устройств.[4]
Эти
микросхемы имеют пять режимов пониженного энергопотребления[3]:
•
Режим ожидания (WAIT), при котором приостанавливается работа ядра, но
продолжается функционирование периферии с сохранением содержимого регистров;
•
Замедленный режим (SLOW), при котором тактовая частота замедляется до CLK/16
или 32 кГц;
•
Режим глубокого понижения с ожиданием (LPWAIT). В этом режиме вводятся
ограничения режимов WAIT и SLOW;
•
Режим останова (STOP). Вся синхронизация останавливается, но состояние
микроконтроллера, RAM и регистров сохраняется (поддерживается питание, нет
сброса);
•
Дежурный режим (STANDBY). Выключаются стабилизатор напряжения, питание ядра.
Работает только RTC.
Микроконтроллеры
ARM имеют высокую производительность, гибкое управление энергопотреблением,
качественную Flash-память и наиболее широкий набор периферии из всех
производителей ARM-микроконтроллеров.
Ниже приведена структура
микроконтроллера ARM компании STMicroelectronics [4] .

Рис. 2. Структура микроконтроллера STR710
2.1.
Основные
характеристики ядра ARM7
·
32-разрядный RISC
процессор (32-разрядные шины данных и адреса) с производительностью 17 MIPS при
тактовой частоте 25 МГц (пиковая производительность 25 MIPS)
·
32-разрядная
адресация - линейное адресное пространство в 4 Гбайта - исключает потребность в
сегментированной, разделенной на банки или оверлейной памяти
·
Тридцать один
32-разрядный регистр общего назначения и шесть регистров состояния
·
Регистры адресов,
записи и конвейера
·
Циклическое
сдвиговое устройство и перемножитель
·
Трехуровневый
конвейер (выборка команды, ее декодирование и выполнение)
·
Рабочие режимы Big Endian и
Little Endian
·
Напряжение
питания 3,3 и 5 В
·
Малое потребление
0,6 мА/МГц, при изготовлении по CMOS технологии с топологическими нормами 0,8
мкм.
·
Полностью
статическая работа, позволяющая дополнительно снижать потребление за счет
уменьшения тактовой частоты, что идеально для критичных к потреблению
применений
·
Быстрый отклик на
прерывания применений реального масштаба времени
·
Поддержка систем
виртуальной памяти
·
Простая но мощная
система команд
Необходимо отметить, что перевод ядра на технологию с уменьшенными
топологическими нормами позволяет как повысить его производительность, так и
еще больше снизить потребление.

Рис. 3.Блок-схема ядра ARM7
32-разрядная система команд ядра ARM7 содержит одиннадцать базовых типов
команд[3]:
·
Два типа
используют встроенное арифметико-логическое устройство, циклическое сдвиговое
устройство и умножитель при операциях над данными в банке из 31 регистра,
форматом по 32 разряда каждый;
·
Три класса команд
управления перемещением данных между памятью и регистрами, один
оптимизированный на обеспечение гибкости адресации, другой под быстрое
контекстное переключение и третий под подкачку данных;
·
Три команды
управляют потоком и уровнем привилегии выполнения;
·
Три типа
предназначены для управления внешними сопроцессорами, что позволяет расширить
функциональные возможности системы команд за пределами ядра.
Система команд ARM хорошо обрабатывается компиляторами языков высокого
уровня. В отличие от некоторых RISC процессоров, процессор ARM7, при
возникновении необходимости в некотором уменьшении объема кодов, допускает
программирование и на ассемблере.
Предоставляя, на лицензионной основе, ядро ARM7 своим кремниевым
партнерам фирма ARM на основе разработала микроконтроллеры ARM7100, ARM7500 и
ARM7500FE и, пожалуй, небольшое описание этих микроконтроллеров позволит
оценить возможности, предоставляемые ядром ARM7.
Микроконтроллер ARM7100 можно назвать микроконтроллером широкого
применения, поскольку он ориентирован на использование в таких устройствах как:
персональные информационные устройства (PDA) и органайзеры, интеллектуальные
мобильные телефоны и многофункциональные пейджеры, карманные измерительные
устройства и системы сбора данных - в двух словах - от карманных игр до
офисного оборудования. Микроконтроллер организован по модульному принципу с
использованием внутренней шины AMBA, организующей взаимодействие ядра со
стандартными библиотечными ячейками периферии.
Два других микроконтроллера ARM7500 и ARM7500FE являются однокристальными
микрокомпьютерами, ориентированными реализацию мультимедиа устройств,
портативных и настольных компьютеров, карманных вычислительных и измерительных
устройств, интерактивных приставок цифрового TV, игровых консолей. Эти два
микроконтроллера отличаются друг от друга наличием в приборе ARM7500FE
ускорителя операций с плавающей точкой (FPA) и, соответственно, его более
высокой производительностью. Они также реализованы по модульному принципу и
объединяют ядро ARM7 с самодостаточными макроячейками видео, звука, FPA
(ARM7500FE) и стандартных библиотечных ячеек периферии.
Общим для всех трех микропроцессоров является использование ядра ARM7,
встроенного единого кэш команд и данных емкостью 8 Кбайт (ARM7100) и 4 Кбайт
(ARM7500 и ARM7500FE), MMU, буфера записи, наличие режимов энергосбережения.
3.
Архитектура
микроконтроллера AVR
Микроконтроллер AVR содержит: быстрый RISK-процессор, два типа
энергонезависимой памяти (Flash-память программ и память данных EEPROM),
оперативную память RAM, порты ввода/вывода и различные периферийные
интерфейсные схемы.[2]
3.1.
Микропроцессор
Сердцем микроконтроллеров AVR является 8-битное микропроцессорное ядро
или центральное процессорное устройство (ЦПУ), построенное на принципах
RISK-архитектуры. Основой этого блока служит арифметико-логическое устройство
(АЛУ). По системному тактовому сигналу из памяти программ в соответствии с
содержимым счетчика команд (Program Counter - PC) выбирается очередная команда
и выполняется АЛУ. Во время выбора команды из памяти программ происходит
выполнение предыдущей выбранной команды, что и позволяет достичь быстродействия
1 MIPS на 1 МГц.
АЛУ подключено к регистрам общего назначения РОН (General Purpose
Registers - GPR). Регистров общего назначения всего 32, они имеют байтовый
формат, то есть каждый из них состоит из восьми бит. РОН находятся в начале
адресного пространства оперативной памяти, но физически не являются ее частью.
Поэтому к ним можно обращаться двумя способами (как к регистрам и как к
памяти). Такое решение является особенностью AVR и повышает эффективность
работы и производительность микроконтроллера.
Отличие между регистрами и оперативной памятью состоит в том, что с
регистрами можно производить любые операции (арифметические, логические,
битовые), а в оперативную память можно лишь записывать данные из регистров.
3.2.
Память
В микроконтроллерах AVR
реализована Гарвардская архитектура, в соответствии с которой разделены не
только адресные пространства памяти программ и памяти данных, но и шины доступа
к ним. Каждая из областей памяти данных (оперативная память и EEPROM) также
расположена в своем адресном пространстве.
3.2.1. Память программ (Flash ROM или Flash
ПЗУ)
Память программ
предназначена для хранения последовательности команд, управляющих
функционированием микроконтроллера, и имеет 16-ти битную организацию. Все AVR
имеют Flash-память программ, которая может быть различного размера - от 1 до
256 КБайт. Ее главное достоинство в том, что она построена на принципе
электрической перепрограммируемости, т. е. допускает многократное стирание и
запись информации. Программа заносится во Flash-память AVR как с помощью
обычного программатора, так и с помощью SPI-интерфейса, в том числе
непосредственно на собранной плате. Возможностью внутрисхемного
программирования (функция ISP) через коммуникационный интерфейс SPI обладают
все микроконтроллеры AVR, кроме Tiny11 и Tiny28.
Страницы: 1, 2, 3, 4 |