Перейти к содержанию

FRAM

FRAM — энергонезависимая память, которая читается и пишется как обычное ОЗУ, без стирания страниц. TI использует её в микроконтроллерах MSP430FR вместо флеш-памяти — и для программы, и для данных.

Обновлено Редакция GAW

FRAM (ferroelectric RAM, сегнетоэлектрическая память) — энергонезависимая память, которая хранит данные без питания, но читается и пишется как обычное ОЗУ. В микроконтроллерах она встречается прежде всего в семействах TI MSP430FR, где заменяет флеш-память.

По руководству TI SLAU445 у модуля FRAM в MSP430FR2xx и FR4xx такие свойства:

СвойствоЧто это даёт
Запись байтами и словамине нужно стирать страницы, как во флеш-памяти
Код коррекции ошибокодиночные ошибки исправляются, многократные обнаруживаются с флагом
Такты ожиданияна высокой частоте процессор ждёт память автоматически
Кэшбыстрое чтение
Отключение питанияFRAM можно выключить, если она не нужна

Ресурс FRAM у MSP430FR2433 по даташиту — 10^15 циклов записи, тогда как флеш-память MSP430G2553 выдерживает 10^4–10^5 циклов стирания и записи. Поэтому в FRAM удобно постоянно сохранять данные — счётчики, журналы, состояние программы, — что для флеш-памяти и EEPROM ограничено износом.

Особенность ячейки: чтение FRAM разрушающее, и модуль сам перезаписывает прочитанное значение обратно. Программа этого не замечает. Память у MSP430FR общая для программы, констант и данных, поэтому от случайной записи в область кода защищают регистры защиты от записи. Программируют FRAM так же, как флеш-память, — через JTAG, Spy-Bi-Wire или загрузчик, а в работе сам процессор пишет в неё обычными командами. Обзор семейств — в разделе «MSP430», устройство памяти — в статье «Архитектура MSP430», другие виды памяти — в разделе «Память».

Частые вопросы

Чем FRAM лучше флеш-памяти?

Записью. FRAM пишется побайтно, как ОЗУ, без стирания страниц и без специальной процедуры, а ресурс у MSP430FR2433 — 10^15 циклов записи. У флеш-памяти MSP430G2553 ресурс — 10^4–10^5 циклов, и перед записью её нужно стирать сегментами.

Можно ли хранить в FRAM и программу, и данные?

Да, в MSP430FR это одна общая память: TI называет её единой памятью программ, констант и данных. Чтобы программа случайно не испортила свой код, в микроконтроллере есть настраиваемая защита от записи.

Почему чтение FRAM сопровождается записью?

Так устроена ячейка: по руководству TI SLAU445 чтение FRAM всегда сопровождается обратной записью той же информации. Это делает сам модуль памяти, программа этого не видит, и такие перезаписи не считаются обычными записями из программы.

Источники

  1. Texas Instruments. MSP430FR4xx and MSP430FR2xx Family User's Guide (SLAU445I, revised March 2019) — разд. 6.1–6.3: FRAM читается и пишется как ОЗУ, побайтно и пословно; такты ожидания, код коррекции ошибок с флагами исправимой и неисправимой ошибки, кэш, отключение питания FRAM; чтение сопровождается внутренней перезаписью
  2. Texas Instruments. MSP430FR2433 Mixed-Signal Microcontroller (SLASE59F, revised December 2019) — разд. 1.1: до 15,5 КБ FRAM, ресурс 10^15 циклов записи, ECC, настраиваемая защита от записи, общая память программ, констант и данных; программирование через JTAG, Spy-Bi-Wire, BSL или самим процессором
  3. Texas Instruments. MSP430G2x53, MSP430G2x13 Mixed Signal Microcontroller (SLAS735J, revised May 2013) — для сравнения: ресурс флеш-памяти MSP430G2553 — от 10^4 до 10^5 циклов стирания и записи

Нашли ошибку?