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

Энергонезависимое хранение часто меняющихся данных

Работаю с TMS320F2808. Возникла проблема хранить независимо от питания данные - десять целых чисел (по 2 байта). Обновление данных 10 раз в секунду. В перспективе необходимо будет хранить от 50 килобайт до 1 Мб с частотой заполнения до 20 кГц.

Флэш память контроллера, как я понял, непригодна для таких целей - нужна внешняя память. Кто-нибудь посоветуйте, что можно применить для данного контроллера (у него нет интерфейса внешней памяти, только последовательые порты), или нужно переходить на TMS320F2812 с внешним параллельным интерфейсом.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

 

Вас спасет FRAM. Например => http://www.ramtron.com/doc/Products/Nonvol...?ID=68&gr=5

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

У меня тоже похожая проблемка. Имеется некий пульт ДУ, на нём оператор делает цифровыми регуляторами определённые установки, допустим, яркости и дальности. Хотелось бы, чтобы после выключения и включения МК это всё "вспоминалось", потому что пока после каждого включения всё приходится выставлять с нуля. Если очень часто писать все изменения в энергонезависимую память МК, надолго, думаю, этой памяти не хватит, число циклов записи там ограничено. Нужен какой-то другой выход...

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Гость mihask
У меня тоже похожая проблемка. Имеется некий пульт ДУ, на нём оператор делает цифровыми регуляторами определённые установки, допустим, яркости и дальности. Хотелось бы, чтобы после выключения и включения МК это всё "вспоминалось", потому что пока после каждого включения всё приходится выставлять с нуля. Если очень часто писать все изменения в энергонезависимую память МК, надолго, думаю, этой памяти не хватит, число циклов записи там ограничено. Нужен какой-то другой выход...

 

Но ведь у FRAM например, нет ограничения по количеству циклов чтения/записи :)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Но ведь у FRAM например, нет ограничения по количеству циклов чтения/записи :)
Да, посмотрел, отличная штучка, да и недорогая. Мне подходит. Просто, когда я писал это сообщение, я ещё не видел сообщение про FRAM.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Гость mihask

 

Вас спасет FRAM. Например => http://www.ramtron.com/doc/Products/Nonvol...?ID=68&gr=5

 

Я на сайте что-то не заметил FRAM 1Мбайт. Или я плохо смотрел ? :)

Изменено пользователем mihask

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Я на сайте что-то не заметил FRAM 1Мбайт. Или я плохо смотрел ? :)

Правильно смотрели - максимум 1 мегабит на сегодня на сколько я знаю. Хотя были сообщения о том, что рамтрон сваял 8-мегабитку, но на сколько это правда - х.з. Но для десяти двухбайтных чисел не много ли один мегабайт?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

 

Вас спасет FRAM. Например => http://www.ramtron.com/doc/Products/Nonvol...?ID=68&gr=5

 

Просто в десятку!

Спасибо! :biggrin:

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

В конце концов совсем не обязательно постоянно писать в одни и те же ячейки, пишите последовательно по всей памяти. Алгоритм конечно усложнится, но зато циклов записи будет очень много.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Если есть возможность обнаружить факт снижения напряжения ниже критического уровня, то писать можно в энергонезависимую память любого вида (Flash, EEPROM, FRAM). Главное чтобы промежутка времени между активацией сигнала о снижении питания и реальным падением напряжения до недопустимо низкого уровня хватило на запись блока критически важной информации. 25 мс вполне хватит для одной записи хоть в EEPROM, хоть во Flash. Разница только в размере буфера у каждой. Т.е. если весьма грубо прикидывать, то это время примерно 20мс*размер_записи/размер_буфера. Для записи 20 байт во Flash, DataFlash (в заранее подготовленный, т.е. уже стертый сектор) 20мс хватит, в EEPROM - 60мс.

Ну а для часто обновляемых (несколько раз в секунду) записей размером в несколько кБайт/МБайт Flash и EEPROM никак не подходят. Тут уж что-то типа SRAM с резервным питанием или даже HDD нужно :) ИМХО конечно. Про FRAM только читал, но сам ни разу не использовал.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

FRAM - штука хорошая, сам пользую и доволен.

Просто хочу сказать что ее ресурс имеет границу, правда очень большую. Когда-то читал и цифра была порядка ~миллионов циклов, хотя щас нашел только параметр "10 Year Data Retention"

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Не миллион, а что-то типа 10^10 - 10^12

 

А еще лучше, как тут говорили, пишите при отключении питания, тогда и внутреннего EEPROM хватит, только конденсатор по питанию поставте с запасом

Изменено пользователем umup

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

FRAM - штука хорошая, сам пользую и доволен.

Просто хочу сказать что ее ресурс имеет границу, правда очень большую. Когда-то читал и цифра была порядка ~миллионов циклов, хотя щас нашел только параметр "10 Year Data Retention"

 

второй параметр паказывает кол-во записей. Технология не стоит на месте.

Features: 4K bit Ferroelectric Nonvolatile RAM
• Organized as 512 x 8 bits
• Unlimited Read/Write Cycles
• 10 Year Data Retention 
• NoDelay™ Writes
• Advanced High-Reliability Ferroelectric Process

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

FRAM - штука хорошая, сам пользую и доволен.

Просто хочу сказать что ее ресурс имеет границу, правда очень большую. Когда-то читал и цифра была порядка ~миллионов циклов, хотя щас нашел только параметр "10 Year Data Retention"

 

второй параметр паказывает кол-во записей. Технология не стоит на месте.

Features: 4K bit Ferroelectric Nonvolatile RAM
• Organized as 512 x 8 bits
• Unlimited Read/Write Cycles
• 10 Year Data Retention 
• NoDelay™ Writes
• Advanced High-Reliability Ferroelectric Process

 

А что означает NoDelay™ Writes? Запись без задержек - это как?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...