MSP430 с FRAM: семейства FR2xx, FR4xx, FR5xx и FR6xx
В микроконтроллерах MSP430 с буквами FR вместо флеш-памяти стоит FRAM — сегнетоэлектрическая память, которая пишется так же быстро, как читается. Семейств два, и у них разные руководства: FR2xx/FR4xx — простые и дешёвые, FR5xx/FR6xx — с DMA, AES и большей памятью. Сравниваем популярные микросхемы по даташитам TI.
Обновлено Редакция GAW
FRAM — сегнетоэлектрическая энергонезависимая память. По руководству TI SLAU445 она читается и пишется как обычное ОЗУ: побайтно, без стирания и без специальной процедуры записи. В MSP430 с буквами FR в названии FRAM заменяет флеш-память и служит одновременно памятью программ, констант и данных. Ядро и система команд у них те же, что у классических MSP430, — см. архитектуру и систему команд.
Два семейства
| MSP430FR2xx, MSP430FR4xx | MSP430FR5xx, MSP430FR6xx | |
|---|---|---|
| Руководство TI | SLAU445 | SLAU367 |
| Тактирование | DCO с FLL от генератора REFO 32 кГц | DCO на фиксированных заводских частотах, кварцы LFXT и HFXT |
| Память (из рассмотренных) | от 4 КБ FRAM у FR4131 до 64 КБ у FR2476 | от 32 КБ у FR5967 до 256 КБ у FR5994 |
| Периферия | таймеры, eUSCI, АЦП 10 или 12 бит; у FR4xx — ЖКИ | DMA, шифрование AES, 12-битный АЦП, защита памяти MPU; у FR6xx — ЖКИ |
| Для чего | недорогие датчики, замена G2xx | сложные батарейные устройства, обработка данных, защита кода |
Сравнение микросхем
По даташитам TI, токи — типичные при 3 В:
| Микросхема | Частота | FRAM | ОЗУ | Активный режим | LPM4.5 | Особенности |
|---|---|---|---|---|---|---|
| MSP430FR2433 | 16 МГц | 15,5 КБ | 4 КБ | 126 мкА/МГц | 16 нА | 10-битный АЦП, корпус VQFN-24 |
| MSP430FR2476 | 16 МГц | 64 КБ | 8 КБ | 135 мкА/МГц | 37 нА | 12-битный АЦП, переназначение выводов |
| MSP430FR2355 | 24 МГц | 32 КБ | 4 КБ | 142 мкА/МГц | 42 нА | четыре блока ОУ с ЦАП (Smart Analog Combo), до 105 °C |
| MSP430FR4133 | 16 МГц | 15,5 КБ | 2 КБ | 126 мкА/МГц | 15 нА | драйвер ЖКИ до 4×36 сегментов |
| MSP430FR5969 | 16 МГц | 64 КБ | 2 КБ | около 100 мкА/МГц | 20 нА | DMA, AES, кварц HFXT |
| MSP430FR5994 | 16 МГц | 256 КБ | 8 КБ | 118 мкА/МГц | 45 нА | ускоритель LEA для БПФ, шесть каналов DMA |
| MSP430FR6989 | 16 МГц | 128 КБ | 2 КБ | около 100 мкА/МГц | 20 нА | ЖКИ до 320 сегментов, интерфейс ESI для счётчиков |
Объёмы указаны для старших исполнений; у младших — меньше памяти при той же периферии: например, MSP430FR4131 — 4 КБ FRAM и 512 байт ОЗУ, MSP430FR2475 — 32 КБ и 6 КБ.
FRAM и такты ожидания
FRAM медленнее процессора на высоких частотах, поэтому при обращении к ней вставляются такты ожидания. Их число задают битами NWAITS:
| Микросхема | Без тактов ожидания | 1 такт | 2 такта |
|---|---|---|---|
| MSP430FR2433, MSP430FR5969 | до 8 МГц | до 16 МГц | — |
| MSP430FR2355 | до 8 МГц | до 16 МГц | до 24 МГц |
По даташитам такты ожидания возникают только при реальном обращении к FRAM — при промахе кэша; ОЗУ и периферия всегда работают без них. Поэтому ток активного режима у FR2433 на 16 МГц — 1000 мкА при попадании в кэш 100 % и 3047 мкА при 0 %. Порядок по SLAU445: при повышении частоты сначала увеличить NWAITS, затем частоту, при понижении — наоборот. Если настройки нарушают требования FRAM, микроконтроллер сбрасывается.
Чтобы программа случайно не испортила FRAM, у FR2xx/FR4xx есть защита от записи, у FR5xx/FR6xx — модуль защиты памяти MPU.
Режимы LPM3.5 и LPM4.5
Кроме обычных LPM0–LPM4, у MSP430 с FRAM есть режимы LPMx.5 — в них отключается основной стабилизатор ядра:
| Режим | Что работает | Что сохраняется | FR2433: ток при 25 °C | FR2433: пробуждение |
|---|---|---|---|---|
| LPM3 | ACLK, таймеры, RTC | всё | 0,98 мкА с VLO | 10 мкс |
| LPM3.5 | только модули на стабилизаторе RTC, например счётчик RTC | резервная память | 0,73 мкА с кварцем | 350 мкс |
| LPM4.5 | ничего | ничего | 16 нА без супервизора | 350 мкс с супервизором, 1 мс без него |
По SLAU445 пробуждение из LPMx.5 — это полный сброс ядра: программа начинает работу с вектора сброса и должна заново настроить всё устройство. Состояние выводов при этом заблокировано, пока программа не сбросит бит LOCKLPM5. Перед входом данные, которые нужны после пробуждения, сохраняют в FRAM, а сторожевой таймер в режиме сторожа отключают — иначе микроконтроллер в LPMx.5 не войдёт. Поэтому TI советует эти режимы только для долгого сна: при частых пробуждениях выгоднее обычный LPM3 с режимами сна по прерыванию.
Как выбрать
- Замена MSP430G2553 в простом устройстве — MSP430FR2433: та же частота 16 МГц, 4 КБ ОЗУ вместо 512 байт, FRAM вместо флеш-памяти.
- Нужен аналоговый тракт без внешних ОУ — MSP430FR2355 с четырьмя блоками ОУ и ЦАП и частотой до 24 МГц.
- Индикатор на ЖКИ — MSP430FR4133, для больших панелей — MSP430FR6989.
- Много памяти, DMA, шифрование, обработка сигналов — MSP430FR5969 или MSP430FR5994 с ускорителем LEA.
Все они программируются через тот же двухпроводной интерфейс Spy-Bi-Wire, что и классические MSP430, — подробнее на странице семейства MSP430.
Частые вопросы
Чем MSP430FR2xx отличается от MSP430FR5xx?
Это разные семейства с разными руководствами: FR2xx и FR4xx описаны в SLAU445, FR5xx и FR6xx — в SLAU367. У FR2xx/FR4xx система тактирования с FLL, простая периферия и небольшая память — у FR2476 64 КБ FRAM. У FR5xx/FR6xx DCO на фиксированных заводских частотах, DMA, шифрование AES, модуль защиты памяти, а у FR5994 — 256 КБ FRAM. Ядро и система команд одинаковы.
Что такое LPM3.5 и LPM4.5?
Самые экономичные режимы MSP430 с FRAM. В них отключается основной стабилизатор ядра: по SLAU445 в LPM3.5 работают только модули на отдельном стабилизаторе часов — например, счётчик RTC — и сохраняется резервная память, а в LPM4.5 не работает ничего и память не сохраняется. Пробуждение из этих режимов — это полный сброс ядра, программа стартует заново.
Сколько потребляет MSP430FR2433 во сне?
По даташиту TI при 3 В и 25 °C: LPM3 с генератором VLO — 0,98 мкА, LPM3.5 со счётчиком RTC и кварцем — 0,73 мкА, LPM4.5 без супервизора — 16 нА. В активном режиме — 126 мкА на мегагерц. Пробуждение из LPM3 занимает 10 мкс, из LPM3.5 — 350 мкс.
Почему MSP430 с FRAM на 16 МГц нужен такт ожидания?
Потому что FRAM не успевает за процессором на высокой частоте. У FR2433 и FR5969 без тактов ожидания допустимо до 8 МГц, выше — с одним тактом ожидания до 16 МГц, у FR2355 с двумя — до 24 МГц. Такты задают битами NWAITS, и по SLAU445 их нужно увеличить до повышения частоты: при нарушении микроконтроллер сбрасывается. Обращения к ОЗУ и периферии выполняются без ожидания.
Источники
- Texas Instruments. MSP430FR4xx and MSP430FR2xx Family User's Guide (SLAU445I, revised March 2019) — табл. 1-3 — режимы работы, LPM3.5 с сохранением резервной памяти, LPM4.5 без сохранения памяти; разд. 1.4.3 — LPMx.5: отключение основного LDO, полный сброс ядра при пробуждении, порядок входа и выхода, бит LOCKLPM5; разд. 1.9.3 — защита FRAM от записи; разд. 6 — FRAM читается и пишется как SRAM, разд. 6.5 — такты ожидания NWAITS, сброс PUC при нарушении
- Texas Instruments. MSP430FR58xx, MSP430FR59xx, and MSP430FR6xx Family User's Guide (SLAU367P, revised April 2020) — руководство семейств FR5xx и FR6xx: модуль тактирования с DCO на фиксированных частотах, такты ожидания FRAM, модуль защиты памяти MPU
- Texas Instruments. MSP430FR2433 Mixed-Signal Microcontroller (SLASE59F, revised December 2019) — разд. 1 — 16 МГц, 126 мкА/МГц, LPM3.5 730 нА, LPM4.5 16 нА, 15,5 КБ FRAM и 4 КБ ОЗУ, 10-битный АЦП; разд. 5.3 — до 8 МГц без тактов ожидания и до 16 МГц с одним; табл. 5.4, 5.7, 5.8 — токи активного режима и LPM3, LPM4, LPMx.5; табл. 5-3 — время пробуждения: LPM3 и LPM4 — 10 мкс, LPM3.5 — 350 мкс
- Texas Instruments. MSP430FR235x, MSP430FR215x Mixed-Signal Microcontrollers (SLASEC4D, revised December 2019) — до 24 МГц с двумя тактами ожидания, −40…105 °C, 142 мкА/МГц, 32 КБ FRAM, 4 КБ ОЗУ, 12-битный АЦП, четыре блока Smart Analog Combo с ОУ и ЦАП, два компаратора, библиотеки в ПЗУ 20 КБ
- Texas Instruments. MSP430FR247x Mixed-Signal Microcontrollers (SLASEO7C, revised September 2021) — 16 МГц, 135 мкА/МГц, LPM3.5 660 нА, LPM4.5 37 нА без SVS, 64 КБ FRAM и 8 КБ ОЗУ, 12-битный АЦП
- Texas Instruments. MSP430FR413x Mixed-Signal Microcontrollers (SLAS865F, revised December 2021) — 16 МГц, 126 мкА/МГц, LPM4.5 15 нА, 15,5 КБ FRAM, 2 КБ ОЗУ, драйвер ЖКИ до 4×36 или 8×32 сегментов с накачкой заряда для работы в LPM3.5
- Texas Instruments. MSP430FR596x, MSP430FR594x Mixed-Signal Microcontrollers (SLAS704G, revised August 2018) — около 100 мкА/МГц, LPM3 с VLO 0,4 мкА, LPM3.5 0,25 мкА, LPM4.5 0,02 мкА; 64 КБ FRAM, 2 КБ ОЗУ; запись 125 нс на слово; DMA, AES, 12-битный АЦП; до 8 МГц без тактов ожидания и до 16 МГц с одним
- Texas Instruments. MSP430FR599x, MSP430FR596x Mixed-Signal Microcontrollers (SLASE54D, revised January 2021) — до 256 КБ FRAM и 8 КБ ОЗУ, 118 мкА/МГц, LPM3 500 нА, LPM3.5 350 нА, LPM4.5 45 нА; ускоритель LEA для обработки сигналов у FR599x; DMA, AES
- Texas Instruments. MSP430FR698x, MSP430FR598x Mixed-Signal Microcontrollers (SLAS789D, revised August 2018) — до 128 КБ FRAM, 2 КБ ОЗУ, драйвер ЖКИ до 320 сегментов, интерфейс ESI для счётчиков воды, тепла и газа, AES, DMA
Нашли ошибку?
Смотрите также
- MSP43016-битное ядро TI со сверхмалым потреблением: семейства, G2553, отладка
- Архитектура MSP430Регистры, память, режимы LPM, тактирование, прерывания, WDT, порты
- FRAMЭнергонезависимая память с записью как у ОЗУ: ресурс, ECC, применение
- Режимы снаSleep mode: Idle, Power-down, пробуждение и ток
- Система команд MSP43027 основных и 24 эмулируемые команды, адресация, коды, флаги, такты