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

 
 
> правильная работа с Flash, нюансы при работе с Flash
billidean
сообщение Sep 6 2013, 05:21
Сообщение #1


Местный
***

Группа: Свой
Сообщений: 247
Регистрация: 4-10-10
Из: г. Екатеринбург
Пользователь №: 59 925



Добрый день всем.
Недавно занимался разработкой контроллера для NADN-Flash, при этом стояла задача минимальной потери данных вследствие "битости" ячеек. Т.е. пришлось реализовывать алгоритм контроля целостности используемых ячеек флэшки. В результате получился довольно серъезный алгоритм.
Сейчас стоит задача использования обычной флэшки(её еще предстоит выбрать) для хранения каких-то данных, и будет нехорошо, если часть данных пропадет.
На сколько мне известно у флэшек периодически бъются ячейки, и после этого с ними нельзя работать.
Вопрос к тем, кто работал с флэшками в подобных проектах: Вы также занимались контролем целостности используемых ячеек флэшки? Неужели и здесь придется городить эту немалую систему контроля?
З.Ы.: с Flash-памятями мало знаком, буду благодарен за полезные ссылки.
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
billidean
сообщение Sep 13 2013, 06:35
Сообщение #2


Местный
***

Группа: Свой
Сообщений: 247
Регистрация: 4-10-10
Из: г. Екатеринбург
Пользователь №: 59 925



Спасибо за отклики.
По SLC/MLC я прочитал в Вики.
Далее по существу моей задачи.
Мне необходимо постоянно писать данные в энергонезависимую память, т.е., как сказал aaarrr, использовать память в качестве оперативного хранилища. Объем, который должен быть сохранен после сброса питания, не очень большой, около 10МБайт.
Почитав в инете, я понял, что выбирать придется между NAND с однобитной структурой(т.е. SLC), NOR и FRAM.
Кстати, последняя по своим характеристикам очень даже хороша, практически неограниченный ресурс, высокое быстродействие. НО очень малые объемы на одном кристалле.

Вывод: при использовании любого из этих типов необходимо городить контроллер памяти для анализа целостности данных, что очень огорчает, так как чем сложнее система, тем сложнее её отладка.
Go to the top of the page
 
+Quote Post
Enthusiast
сообщение Sep 13 2013, 16:13
Сообщение #3


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

Группа: Свой
Сообщений: 163
Регистрация: 25-09-09
Из: Nizhny Novgorod, Russia
Пользователь №: 52 588



Цитата(billidean @ Sep 13 2013, 10:35) *
Мне необходимо постоянно писать данные в энергонезависимую память, т.е., как сказал aaarrr, использовать память в качестве оперативного хранилища. Объем, который должен быть сохранен после сброса питания, не очень большой, около 10МБайт.
Почитав в инете, я понял, что выбирать придется между NAND с однобитной структурой(т.е. SLC), NOR и FRAM.
Кстати, последняя по своим характеристикам очень даже хороша, практически неограниченный ресурс, высокое быстродействие. НО очень малые объемы на одном кристалле.
Вывод: при использовании любого из этих типов необходимо городить контроллер памяти для анализа целостности данных, что очень огорчает, так как чем сложнее система, тем сложнее её отладка.

Если необходимо записывать всего 10 МБ данных, то я бы использовал NOR-флэш: предсказуемое и постоянное время записи в ячейку памяти; ячейки памяти не портятся так быстро как у NAND-флэшки, поэтому проверять целостность данных нужды нет; алгоритм записи в ячейку памяти довольно простой; на рынке присутствует несколько производителей совместимых по выводам микросхем. Успехов!

Сообщение отредактировал Enthusiast - Sep 13 2013, 16:14
Go to the top of the page
 
+Quote Post
ADA007
сообщение Sep 16 2013, 14:48
Сообщение #4


Местный
***

Группа: Свой
Сообщений: 218
Регистрация: 2-02-09
Из: Харьков
Пользователь №: 44 266



Цитата(Enthusiast @ Sep 13 2013, 19:13) *
ячейки памяти не портятся так быстро как у NAND-флэшки....

Но ведь ячейки памяти не портятся просто так, а портятся в зависимости от количества перезаписей...т.е. все зависит от частоты перезаписи данной информации...туту уже вопрос к ТС..насколько часто ему надо скидывать эти 10 Мб...если один раз - то и проверять ничего не надо, как мне кажется....
Go to the top of the page
 
+Quote Post
billidean
сообщение Sep 17 2013, 03:29
Сообщение #5


Местный
***

Группа: Свой
Сообщений: 247
Регистрация: 4-10-10
Из: г. Екатеринбург
Пользователь №: 59 925



Цитата(ADA007 @ Sep 16 2013, 17:48) *
Но ведь ячейки памяти не портятся просто так, а портятся в зависимости от количества перезаписей...т.е. все зависит от частоты перезаписи данной информации...туту уже вопрос к ТС..насколько часто ему надо скидывать эти 10 Мб...если один раз - то и проверять ничего не надо, как мне кажется....

При работе со страницами/блоками перед записью нужно стереть записываемую область памяти, а стирание+запись это и есть "нехорошие" факторы, влияющие на долговечность ячейки.
Для моей же задачи необходимо скидывать информацию может всего один раз, но вот перезаписывать нужно постоянно. Я конечно пока не расчитываю общее время жизни флэшки в моем проекте, т.е. частоту записей в секунду/минуту/час; пока я разбираюсь с вариантами выбора в целом.
Go to the top of the page
 
+Quote Post



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

 


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


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