реклама на сайте
подробности

 
 
> Увеличение количества циклов записи в EEPROM, как правильно программно?
smk
сообщение Mar 20 2007, 20:31
Сообщение #1


Гуру
******

Группа: Свой
Сообщений: 2 246
Регистрация: 17-03-05
Из: Украина, Киев
Пользователь №: 3 446



В программе используется переменная "char n". Всякий раз при включении она инкременируется и по достижении определенного значения - обнуляется. Чтение-запись происходит примерно 1 раз в секунду. При количестве циклов 100 000, надолго одной ячейки не хватит. Есть необходимость писать поочередно во все ячейки EEPROM. Как это сделать правильно, при условии что между любыми двумя циклами чтения-записи контроллер отправляется в "powerdown". Кто-то делал подобное? Как это можно сделать вообще, ведь адрес тоже нужно где-то помнить?

Буду крайне признателен за подсказки и примеры! help.gif


--------------------
Живи днем так, чтобы ночью ты спал спокойно.
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
CDT
сообщение Mar 21 2007, 07:56
Сообщение #2


Местный
***

Группа: Свой
Сообщений: 303
Регистрация: 3-03-05
Пользователь №: 3 044



... Выделяем кусок ЭПРОМ, в котором храним счетчик
... При каждом сохранении в старых ячейках пишем $FF а в новых счетчик
... При чтениии от начала ищем not $FF и тем самымым выходим на запись.

... Таким образом при счетчике в 4 байта и перезаписи с частотой 1 Гц всей памяти хватит на 148 суток. Не густо.
Код
FM25256
256K bit Ferroelectric Nonvolatile RAM
• Organized as 32,768 x 8 bits
• Virtually Unlimited Endurance (10^14 Cycles)
• 10 Year Data Retention
•Very Fast Serial Peripheral Interface - SPI
• Up to 15 MHz Frequency


--------------------
Опыт - чудесная вещь: легко использовать, можно продать, трудно пропить.
Go to the top of the page
 
+Quote Post
mse
сообщение Mar 21 2007, 09:53
Сообщение #3


Знающий
****

Группа: Свой
Сообщений: 709
Регистрация: 3-05-05
Пользователь №: 4 693



Цитата(CDT @ Mar 21 2007, 07:56) *
Код
FM25256
• Virtually Unlimited Endurance (10^14 Cycles)

Да, ФРАМ здесь самато. Реально ресурс, коншна, гораздо меньше. На Телесиське проскакивала цыфра 1е9, вырванная с кровью из интимного места техподдержки. Кроме того, у ФРАМ чтение разрушающее. Т.е. его ресурс как ПЗУ сильно ограничен. В отличие от режима ОЗУ или ЕЕПРОМ-флэш. Там наоборот.
Go to the top of the page
 
+Quote Post
Nanobyte
сообщение Mar 21 2007, 11:30
Сообщение #4


За битами по регистрам гоняюсь
***

Группа: Свой
Сообщений: 457
Регистрация: 24-04-06
Из: Таганрог
Пользователь №: 16 446



Цитата(mse @ Mar 21 2007, 09:53) *
...Кроме того, у ФРАМ чтение разрушающее. Т.е. его ресурс как ПЗУ сильно ограничен. В отличие от режима ОЗУ или ЕЕПРОМ-флэш. Там наоборот.

Почему это чтение с триггеров разрушающее? blink.gif И чем отличается режим ПЗУ от ОЗУ?


--------------------
Курсор влево, курсор вправо - считается хакерством. FORMAT C: производится без предупреждения
Go to the top of the page
 
+Quote Post
mse
сообщение Mar 21 2007, 11:59
Сообщение #5


Знающий
****

Группа: Свой
Сообщений: 709
Регистрация: 3-05-05
Пользователь №: 4 693



Цитата(Nanobyte @ Mar 21 2007, 11:30) *
Почему это чтение с триггеров разрушающее? blink.gif И чем отличается режим ПЗУ от ОЗУ?

Если бы там были триггера, то она бы была золотая. Проскальзывал документ ихний про кол-во считываний без регенераццыи. Давно, правда.
А вот этим и отличается: в ОЗУ пишем-читаем, а из ПЗУ тока читаем.
Go to the top of the page
 
+Quote Post
Сергей Борщ
сообщение Mar 21 2007, 12:30
Сообщение #6


Гуру
******

Группа: Модераторы
Сообщений: 8 455
Регистрация: 15-05-06
Из: Рига, Латвия
Пользователь №: 17 095



Цитата(mse @ Mar 21 2007, 10:59) *
Если бы там были триггера, то она бы была золотая. Проскальзывал документ ихний про кол-во считываний без регенераццыи. Давно, правда.
Давно, потому и забылось, видать. Принцип там такой: при записи электрическим полем сдвигается атом в кристалле ферроэлектрика. При прохождении атомом энергетического барьера возникает импульс тока. В процессе чтения также прикладывают поле. Если зарегистрирован импульс - значит бит был запрограммирован. Но атом в процессе этого чтения уже занял исходное положение, информация разрушена (отсюда название "разрушающее чтение"). Поэтому считанное значение тут же аппаратно записывается обратно.
FRAM technology basics
Кстати поэтому для этих памятей ограничено (раньше было, во всяком случае) не количество записей, а количество обращений к ячейке. Ибо чтение = стирание + запись.


--------------------
На любой вопрос даю любой ответ
"Write code that is guaranteed to work, not code that doesn’t seem to break" (C++ FAQ)
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- smk   Увеличение количества циклов записи в EEPROM   Mar 20 2007, 20:31
- - Сергей Борщ   Давно в ru.embedded пробегала такая идея: использо...   Mar 20 2007, 21:31
- - prottoss   Цитата(smk @ Mar 21 2007, 00:31) ... Поищ...   Mar 20 2007, 21:35
- - Dog Pawlowa   Цитата(smk @ Mar 20 2007, 21:31) В програ...   Mar 21 2007, 10:14
- - WHALE   имхо,для таких задач RTC с внутренним ОЗУ с батаре...   Mar 21 2007, 12:56
- - rumit2000   to Сергей Борщ не в тему ветки, но про FRAM, не мо...   Mar 21 2007, 15:52
|- - Сергей Борщ   Цитата(rumit2000 @ Mar 21 2007, 14:52) в ...   Mar 21 2007, 16:16
|- - rumit2000   Цитата(Сергей Борщ @ Mar 21 2007, 16:16) ...   Mar 21 2007, 16:19
- - CD_Eater   rumit2000 В ДШ к последним FRAM-ным м/сх указывает...   Mar 21 2007, 16:22
|- - rumit2000   Цитата(CD_Eater @ Mar 21 2007, 16:22) Но ...   Mar 21 2007, 16:29
|- - Rst7   Цитата(CD_Eater @ Mar 21 2007, 15:22) Поч...   Mar 21 2007, 17:01
- - CD_Eater   Rst7, Вы не правы. Байт, отвечающий за младший би...   Mar 21 2007, 17:33
|- - Сергей Борщ   Цитата(CD_Eater @ Mar 21 2007, 16:33) Rst...   Mar 21 2007, 18:26
- - smk   Есть предложение. Кто-нибудь может привести конкре...   Mar 21 2007, 18:32
- - xemul   Соглашусь с предыдущими ораторами - при такой част...   Mar 21 2007, 18:41
- - smk   ЦитатаДык вроде бы питание не снимается, а только ...   Mar 21 2007, 19:12
|- - xemul   Цитата(smk @ Mar 21 2007, 19:12) Но есть ...   Mar 22 2007, 09:55
- - defunct   Если записи одинакового формата. То счетчик можно ...   Mar 21 2007, 19:19
|- - acorn   Цитата(defunct @ Mar 21 2007, 18:19) Если...   Mar 21 2007, 21:56
|- - defunct   Цитата(acorn @ Mar 21 2007, 20:56) когда ...   Mar 30 2007, 00:54
- - proba   если сделать кольцевои счетчик из 256 баит то числ...   Mar 21 2007, 22:55
- - CD_Eater   Почему запись без стирания не считается изнашивающ...   Mar 21 2007, 23:31
- - smk   ЦитатаНесложно подсчитать, что VW не расчитаны на ...   Mar 22 2007, 11:10
|- - Григорий2000   Самое простое - это хранение в начале/конце еепро...   Mar 29 2007, 15:56
- - Alex B._   >> Но вот только ходят слухи, что главный би...   Mar 29 2007, 22:31


Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 29th July 2025 - 14:09
Рейтинг@Mail.ru


Страница сгенерированна за 0.01438 секунд с 7
ELECTRONIX ©2004-2016