Раздел 1. Архитектура MSP430
Введение
В этом разделе описывается архитектура MSP430
1.1 Архитектура
Микроконтроллеры семейства MSP430 содержат 16-разрядное RISC CPU, периферийные модули и гибкую систему тактирования, соединенные через фон-Неймановскую общую адресную шину (MAB) памяти и шину памяти данных (MDB). Объединяя современное CPU с отображаемыми в памяти аналоговыми и цифровыми периферийными устройствами, семейство MSP430 предлагает решения для приложений со смешанными сигналами.
Семейство MSP430 обладает следующими ключевыми особенностями:
- Архитектура с ультранизким потреблением, увеличивающая время работы при питании от батарей:
- для сохранности содержимого ОЗУ необходим ток не более 0,1 мкА;
- модуль тактирования реального времени потребляет 0,8 мкА;
- ток потребления при максимальной производительности составляет 250 мкА;
- Высококачественная аналоговая периферия для выполнения точных измерений:
- встроенные модули 12-разрядного или 10-разрядного АЦП скоростью 200 ksps;
- имеется температурный датчик и источник опорного напряжения VRef;
- сдвоенный 12-разрядный ЦАП;
- таймеры, управляемые компаратором для измерения резистивных элементов;
- схема слежения (супервизор) за напряжением питания;
- 16-разрядное RISC CPU, допускающее новые приложения к фрагментам кода:
- большой регистровый файл снимает проблему «узкого файлового горлышка»ii;
- компактное ядро имеет пониженное энергопотребление и стоимость;
- оптимизировано для современного высокоуровневого программирования;
- набор команд состоит из 27 инструкций, поддерживается семь режимов адресации;
- расширенные возможности векторных прерываний;
Возможность внутрисхемного программирования Flash-памяти позволяет гибко изменять и обновлять программный код, производить регистрацию данных.
1.2 Гибкая система тактирования
Система тактирования разработана специально для использования в приложениях с питанием от батарей. Вспомогательная низкочастотная система тактирования (ACLK) работает непосредственно от обычного 32 кГц часового кристалла. Модуль ACLK может использоваться в качестве фоновой системы реального времени с функцией самостоятельного «пробуждения». Интегрированный высокоскоростной осциллятор с цифровым управлением (DCO) может быть источником основного тактирования (MCLK) для ЦПУ и высокоскоростных периферийных устройств. Модуль DCO становится активным и стабильным менее чем через 6 мкС после запуска. Решения на основе архитектуры MSP430 позволяют эффективно использовать высокопроизводительное 16-разрядное RISC CPU в очень малые промежутки времени:
- низкочастотная вспомогательная система тактирования обеспечивает работу микроконтроллера в режиме ультранизкого потребления мощности;
- активизация основного высокоскоростного модуля тактирования позволяет выполнить быструю обработку сигналов.
Рис.1-1 Архитектура MSP430
1.3 Встроенная эмуляция
Специальная встроенная логическая подсистема эмуляции находится непосредственно в устройстве и доступна через JTAGiii без использования дополнительных системных ресурсов.
Выгоды встроенной эмуляции состоят в следующем:
- возможна фоновая разработка и отладка на полной рабочей скорости выполнения программы;
- поддерживается использование контрольных точек и пошаговое выполнение программы;
- объект внутрисхемной разработки имеет те же характеристики, что и в конечном устройстве;
- сохраняется целостность смешанных сигналов, на которую не влияют помехи кабельной разводки.
1.4 Адресное пространство
Семейство MSP430 имеет фон-Ньюмановскую архитектуру с единым адресным пространством для регистров специального назначения (SFR), периферии, ОЗУ и Flash-памяти программ, в соответствии с рис.1.2. Конкретное распределение памяти можно узнать из справочных данных на интересующее устройство. Доступ к программному коду выполняется всегда по четным адресам. Данные могут быть доступны как байты или как слова.
Общий объем адресуемой памяти составляет 64 кБ, с учетом предполагаемого расширения.
Рис.1-2 Карта памяти
1.4.1 Flash-память программ
Начальный адрес Flash-памяти зависит от объема имеющейся памяти и различается для разных устройств. Конечный адрес Flash-памяти всегда 0FFFFh. Flash - память может использоваться как для программного кода, так и для данных. Байты или слова таблиц данных могут сохраняться и использоваться непосредственно в Flash-памяти, что исключает необходимость копировать эти таблицы в ОЗУ перед дальнейшим использованием.
Таблица векторов прерываний занимает верхние 16 слов адресного пространства Flash-памяти, при этом вектор прерывания с наивысшим приоритетом находится в самом верхнем адресном слове Flash-памяти (0FFFEh).
1.4.2 ОЗУ
ОЗУ начинается с адреса 0200h. Конечный адрес ОЗУ зависит от объема представленной памяти и различается для каждого конкретного устройства. ОЗУ может использоваться как для программного кода, так и для данных.
1.4.3 Периферийные модули
Периферийные модули отображены в адресном пространстве. Адреса с 0100 до 01FFh зарезервированы для 16-разрядных периферийных модулей. Они будут доступны с помощью команд-слов. Если используются однобайтные команды, допустимы только четные адреса, при этом старший байт результата всегда будет содержать «0».
Адресное пространство с 010h по 0FFh зарезервировано для 8-разрядных периферийных модулей. Эти модули доступны с помощью однобайтных команд. Чтение байтов модулей с помощью команд-слов приведет к появлению в старшем байте непредсказуемого содержимого. Если в байт модуля будут записываться данные в виде слова, то в регистре периферийного модуля сохранится только младший байт этого слова, старший будет проигнорирован.
1.4.4 Регистры специального назначения (SFRs)
Некоторые функции периферии конфигурируются в SFRs. Регистры специального назначения расположены в низших 16-ти байтах адресного пространства и организованы в виде байтов. Обращение к регистрам SFRs производится только с использованием однобайтных команд. Назначение отдельных битов регистров SFRs описано в техническом руководстве на каждое конкретное устройство.
1.4.5 Организация памяти
Байты расположены в четных или нечетных адресах. Слова располагаются только в четных адресах, как показано на рис.1.3. При работе с командами-словами должны использоваться только четные адреса. Младший байт слова всегда расположен по четному адресу. Старший байт – в следующем нечетном адресе. Например, если слово данных расположено по адресу xxx4h, то младший байт слова данных будет иметь адрес xxx4h, а старший байт слова адрес xxx5h.
Рис.1-3 Биты, байты и слова в памяти, организованной побайтно
куплю скутер - купим Ваш скутер в любом состоянии
|