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

 
 
4 страниц V  < 1 2 3 4 >  
Reply to this topicStart new topic
> Энергонезависимая Память AVR
zombi
сообщение Mar 5 2011, 13:00
Сообщение #31


Гуру
******

Группа: Свой
Сообщений: 2 076
Регистрация: 10-09-08
Пользователь №: 40 106



Цитата(SysRq @ Mar 5 2011, 15:29) *
Убивается, ждём-с. Сейчас 305 тысяч циклов выполнено, пока жива...

(Хм, в программке вроде бы не наврал нигде.. в один и тот же адрес пишу 0xFF в количестве 992 штук, затем 8 значений с единичкой в разных разрядах, и в обоих случаях читаю и проверяю совпало ли, и циклы считаю.)

Ого, 305.000 ! Оч. интересно! Ждемс!
Но мне кажется что для проверки работоспособности надо бы через некоторое количество циклов (к примеру 10.000 ~ 100.000) попробывать записать инверсные данные
Go to the top of the page
 
+Quote Post
SysRq
сообщение Mar 5 2011, 13:54
Сообщение #32


Чайник, 1 литр
****

Группа: Свой
Сообщений: 655
Регистрация: 17-05-06
Из: Moscow
Пользователь №: 17 168



Цитата(zombi @ Mar 5 2011, 16:00) *
Но мне кажется что для проверки работоспособности надо бы через некоторое количество циклов (к примеру 10.000 ~ 100.000) попробывать записать инверсные данные
Примерно так и делаю, посмотрите код выше.
Если одинаковые значения не пишутся, то сейчас всего тысяч 6 циклов... 05.gif
Go to the top of the page
 
+Quote Post
314
сообщение Mar 5 2011, 14:55
Сообщение #33


Частый гость
**

Группа: Участник
Сообщений: 139
Регистрация: 17-08-07
Пользователь №: 29 855



Почему-то всегда казалось, что тип флеш, использованный в АВР, убивается только записью нулей... laughing.gif
Go to the top of the page
 
+Quote Post
SysRq
сообщение Mar 5 2011, 16:23
Сообщение #34


Чайник, 1 литр
****

Группа: Свой
Сообщений: 655
Регистрация: 17-05-06
Из: Moscow
Пользователь №: 17 168



Выключил на 1'800'000. Изменил в исходнике 0xFF на 0x00, адрес на 1 вниз, перешил, запустил. Ждём, убьётся ли записью нулей...
Go to the top of the page
 
+Quote Post
zombi
сообщение Mar 5 2011, 20:23
Сообщение #35


Гуру
******

Группа: Свой
Сообщений: 2 076
Регистрация: 10-09-08
Пользователь №: 40 106



Цитата(SysRq @ Mar 5 2011, 16:54) *
Примерно так и делаю, посмотрите код выше.
Если одинаковые значения не пишутся, то сейчас всего тысяч 6 циклов... 05.gif

Ага, вроде правильно все.

Цитата(SysRq @ Mar 5 2011, 19:23) *
Выключил на 1'800'000. Изменил в исходнике 0xFF на 0x00, адрес на 1 вниз, перешил, запустил. Ждём, убьётся ли записью нулей...

Наверное можно предположить что ограничение 100.000 циклов это максимальное количество изменеий каждого БИТА еепром.
Go to the top of the page
 
+Quote Post
SysRq
сообщение Mar 5 2011, 20:34
Сообщение #36


Чайник, 1 литр
****

Группа: Свой
Сообщений: 655
Регистрация: 17-05-06
Из: Moscow
Пользователь №: 17 168



Цитата(zombi @ Mar 5 2011, 23:23) *
Наверное можно предположить что ограничение 100.000 циклов это максимальное количество изменеий каждого БИТА еепром.
Запись 0x00 я остановил на ~800 тысячах, не дождался. Запись чередования 0xFF\0x00 остановил на 401 тысяче, ибо уже не верил что оно пишет в EEPROM вообще.
Сейчас посмотрел - таки, пишет! Запустил заново, добавив ещё запись 0x55 в EEDR _перед_ чтением...
Go to the top of the page
 
+Quote Post
zombi
сообщение Mar 5 2011, 22:47
Сообщение #37


Гуру
******

Группа: Свой
Сообщений: 2 076
Регистрация: 10-09-08
Пользователь №: 40 106



Цитата(SysRq @ Mar 5 2011, 23:34) *
Запись 0x00 я остановил на ~800 тысячах, не дождался. Запись чередования 0xFF\0x00 остановил на 401 тысяче, ибо уже не верил что оно пишет в EEPROM вообще.
Сейчас посмотрел - таки, пишет! Запустил заново, добавив ещё запись 0x55 в EEDR _перед_ чтением...

400.000 это уже слишком! А проц какой?
В понедельник тоже буду попробывать на 162-й атмеге.
Go to the top of the page
 
+Quote Post
SysRq
сообщение Mar 6 2011, 06:24
Сообщение #38


Чайник, 1 литр
****

Группа: Свой
Сообщений: 655
Регистрация: 17-05-06
Из: Moscow
Пользователь №: 17 168



Результат записи 0x00 (по приведённому выше алгоритму): убилось на 3'238'008 цикле laughing.gif
CODE
// ...
CURRENT: 3236000
CURRENT: 3237000
CURRENT: 3238000
FAILED ON: 3238008

// Перезапуск по питанию

CURRENT: 1000
FAILED ON: 1008

// Перезапуск по питанию

CURRENT: 1000
CURRENT: 2000
CURRENT: 3000
CURRENT: 4000
CURRENT: 5000
WRITTEN: 36 // Проверка записи всё в тот же адрес
READ: 36 // Результат чтения
WRITTEN: 34
READ: 34
WRITTEN: 30
READ: 30
CURRENT: 6000
CURRENT: 7000
CURRENT: 8000
CURRENT: 9000
FAILED ON: 9008
Go to the top of the page
 
+Quote Post
zombi
сообщение Mar 6 2011, 08:14
Сообщение #39


Гуру
******

Группа: Свой
Сообщений: 2 076
Регистрация: 10-09-08
Пользователь №: 40 106



Цитата(SysRq @ Mar 6 2011, 09:24) *
Результат записи 0x00 (по приведённому выше алгоритму): убилось на 3'238'008 цикле laughing.gif

Т.е. получается что на износ влияет любой процесс записи?
И абсолютно без разницы что было в ячейке до него.
Но 3'238'008 циклов! Этож какой запас прочности!!! В 32 раза!

P.S. а убития записью 0хFF возможно просто не дождались.
Go to the top of the page
 
+Quote Post
SysRq
сообщение Mar 6 2011, 15:02
Сообщение #40


Чайник, 1 литр
****

Группа: Свой
Сообщений: 655
Регистрация: 17-05-06
Из: Moscow
Пользователь №: 17 168



Результат записи постоянно меняющегося значения: убилось на 3'327'762 цикле.
CODE
// ...
CURRENT: 3326000
CURRENT: 3327000
FAILED ON: 3327762

// перезапуск

// ...
CURRENT: 99000
CURRENT: 100000
FAILED ON: 100889

// перезапуск

// ...
CURRENT: 101000
CURRENT: 102000
FAILED ON: 102918


--

Собстно, выводы:
а) страничной организации нет, ибо я убивал соседние адреса в рамках возможной страницы;
б) убивается, похоже, именно записью нуля: см. поведение после перезапуска в логах.

PS: ATMega128-16AU @ 14.7456 @ комнатная температура.

Go to the top of the page
 
+Quote Post
aaarrr
сообщение Mar 6 2011, 15:48
Сообщение #41


Гуру
******

Группа: Свой
Сообщений: 10 713
Регистрация: 11-12-04
Пользователь №: 1 448



Цитата(zombi @ Mar 6 2011, 11:14) *
Но 3'238'008 циклов! Этож какой запас прочности!!! В 32 раза!

Не забывайте, что эксперимент проведен в тепличных условиях. 100K гарантируется для любых.
Go to the top of the page
 
+Quote Post
zombi
сообщение Mar 14 2011, 09:41
Сообщение #42


Гуру
******

Группа: Свой
Сообщений: 2 076
Регистрация: 10-09-08
Пользователь №: 40 106



Провел эксперимент с ATmega162-16AU @ 5V @ 16MHz @ t комнатная.
Чередующиеся записи 0х55 - 0xAA по постоянному адресу.
Убилось после выполнения 3.146.000 записей.
Работоспособность ячейки проверялась (после каждых 2.000 записей 0х55 / 0хAA) записью бегущего нуля и единицы.
Перезапуск с соседним адресом - результат примерно тотже (>3.000.000).
В обоих случаях ячейки убились полностью (один из разрядов постоянно в нуле).
Go to the top of the page
 
+Quote Post
Juk1976
сообщение Mar 16 2011, 21:59
Сообщение #43


Участник
*

Группа: Участник
Сообщений: 30
Регистрация: 1-08-05
Из: Украина Винница
Пользователь №: 7 258



Народ!!!
Да не мучайте себя.
Используйте FRAMку и будет вам счастье.
Вот делов-то.

Сообщение отредактировал Juk1976 - Mar 16 2011, 22:08
Go to the top of the page
 
+Quote Post
aaarrr
сообщение Mar 16 2011, 22:34
Сообщение #44


Гуру
******

Группа: Свой
Сообщений: 10 713
Регистрация: 11-12-04
Пользователь №: 1 448



Цитата(Juk1976 @ Mar 17 2011, 00:59) *
Используйте FRAMку и будет вам счастье.
Вот делов-то.

Ну а если бюджет не позволяет?
Go to the top of the page
 
+Quote Post
314
сообщение Mar 17 2011, 06:33
Сообщение #45


Частый гость
**

Группа: Участник
Сообщений: 139
Регистрация: 17-08-07
Пользователь №: 29 855



At24cXX - I2C- dip8 - 0.2-0.3$ более 1е6 записи/стирания
Go to the top of the page
 
+Quote Post

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

 


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


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