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

 
 
 
Reply to this topicStart new topic
> Работа с плохими секторами/страницами в NAND FLASH.
Jenya7
сообщение Jun 22 2018, 10:00
Сообщение #1


Профессионал
*****

Группа: Участник
Сообщений: 1 666
Регистрация: 29-03-12
Пользователь №: 71 075



Вопрос к специалистам с опытом работы с NAND FLASH. Есть такая NAND FLASH - TC58CVG2S0HxAIx.
Стирается она блоками. В каждом блоке 64 страницы. Как выявлять какая страница повреждена а какая нет? Допустим стер блок и что потом? Перебирать все страницы, считывать и проверять если какой нибудь байт не равен 0xFF - страница плохая? А где хранить информацию о плохих страницах? 2048 блоков и в каждом 64 страницы - это uint64_t pages[2048] - чтоб сохранить всю информацию.

Сообщение отредактировал Jenya7 - Jun 22 2018, 10:01
Прикрепленные файлы
Прикрепленный файл  TC58CVG2S0HxAIx_Rev1.1_2016_11_08.pdf ( 1.59 мегабайт ) Кол-во скачиваний: 12
 
Go to the top of the page
 
+Quote Post
aaarrr
сообщение Jun 22 2018, 14:08
Сообщение #2


Гуру
******

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



Цитата(Jenya7 @ Jun 22 2018, 13:00) *
Стирается она блоками. В каждом блоке 64 страницы. Как выявлять какая страница повреждена а какая нет?

И бракуется блоками, а не страницами. Подробности на стр.37-38 даташита.
Go to the top of the page
 
+Quote Post
Jenya7
сообщение Jun 22 2018, 18:43
Сообщение #3


Профессионал
*****

Группа: Участник
Сообщений: 1 666
Регистрация: 29-03-12
Пользователь №: 71 075



Цитата(aaarrr @ Jun 22 2018, 20:08) *
И бракуется блоками, а не страницами. Подробности на стр.37-38 даташита.

спасибо за наводку.то есть исходя из описания
Цитата
Regarding invalid blocks, the bad block mark is in the whole page. Please read one column of any page in each
block. If the data of the column is 00 (Hex), define the block as a bad block

достаточно прочесть любую строку на любой странице блока и если есть 0х00 - блок плохой? а что в плохом блоке вся дата на странице читается 0х00?

Сообщение отредактировал Jenya7 - Jun 22 2018, 18:43
Go to the top of the page
 
+Quote Post
aaarrr
сообщение Jun 22 2018, 19:13
Сообщение #4


Гуру
******

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



Цитата(Jenya7 @ Jun 22 2018, 21:43) *
достаточно прочесть любую строку на любой странице блока и если есть 0х00 - блок плохой? а что в плохом блоке вся дата на странице читается 0х00?

Сolumn - это и есть страница. То есть в плохом блоке все данные читаются как 0x00.
Go to the top of the page
 
+Quote Post
Alex11
сообщение Jun 22 2018, 21:59
Сообщение #5


Гуру
******

Группа: Свой
Сообщений: 2 093
Регистрация: 23-10-04
Из: С-Петербург
Пользователь №: 965



При поставке все данные читаются 0, но если попытаться стереть BadBlock, то никто не гарантирует, что все данные будут читаться как 0. Скорее всего, будут отдельные битовые нули. Но по инструкции BadBlock'и стирать запрещено. Также BadBlock'и могут образовываться при работе. Диагностика - возникновение ошибки стирания или ошибки записи.
Go to the top of the page
 
+Quote Post
Jenya7
сообщение Jun 23 2018, 05:07
Сообщение #6


Профессионал
*****

Группа: Участник
Сообщений: 1 666
Регистрация: 29-03-12
Пользователь №: 71 075



Цитата(Alex11 @ Jun 23 2018, 02:59) *
При поставке все данные читаются 0, но если попытаться стереть BadBlock, то никто не гарантирует, что все данные будут читаться как 0. Скорее всего, будут отдельные битовые нули. Но по инструкции BadBlock'и стирать запрещено. Также BadBlock'и могут образовываться при работе. Диагностика - возникновение ошибки стирания или ошибки записи.


проблема вот в чем. если память не писанная то все хорошо. но если на эту страницу уже писАли? там наверняка будут нули. и как тогда понять какой блок плохой какой хороший?
и кстати они пишут что в BadBlock ошибки стирания может и не быть.

Сообщение отредактировал Jenya7 - Jun 23 2018, 05:08
Go to the top of the page
 
+Quote Post
aaarrr
сообщение Jun 23 2018, 08:31
Сообщение #7


Гуру
******

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



Цитата(Jenya7 @ Jun 23 2018, 08:07) *
проблема вот в чем. если память не писанная то все хорошо. но если на эту страницу уже писАли? там наверняка будут нули. и как тогда понять какой блок плохой какой хороший?

На всей странице нули, включая дополнительную область? Тогда руки обрывать писАтелям.

Цитата(Jenya7 @ Jun 23 2018, 08:07) *
и кстати они пишут что в BadBlock ошибки стирания может и не быть.

Может и не быть. Возникновение ошибки стирания - это просто один из поводов забраковать ранее исправный блок,
Go to the top of the page
 
+Quote Post
Jenya7
сообщение Jun 23 2018, 11:30
Сообщение #8


Профессионал
*****

Группа: Участник
Сообщений: 1 666
Регистрация: 29-03-12
Пользователь №: 71 075



Цитата(aaarrr @ Jun 23 2018, 14:31) *
На всей странице нули, включая дополнительную область? Тогда руки обрывать писАтелям.


Может и не быть. Возникновение ошибки стирания - это просто один из поводов забраковать ранее исправный блок,


нули не на всей странице. сделал дам пару страниц - да есть области нулей, что ж тут такого. какой алгоритм проверки? если есть данные не нули и не FF - блок в порядке?
Go to the top of the page
 
+Quote Post
aaarrr
сообщение Jun 23 2018, 14:52
Сообщение #9


Гуру
******

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



Если все данные на странице - нули, значит, блок битый. Какой еще нужен алгоритм?
Go to the top of the page
 
+Quote Post
Jenya7
сообщение Jun 23 2018, 17:04
Сообщение #10


Профессионал
*****

Группа: Участник
Сообщений: 1 666
Регистрация: 29-03-12
Пользователь №: 71 075



Цитата(aaarrr @ Jun 23 2018, 20:52) *
Если все данные на странице - нули, значит, блок битый. Какой еще нужен алгоритм?


то есть считал допустим 100 байт. если встретился хотя бы один не ноль - блок не битый?

Сообщение отредактировал Jenya7 - Jun 23 2018, 17:04
Go to the top of the page
 
+Quote Post
aaarrr
сообщение Jun 23 2018, 17:32
Сообщение #11


Гуру
******

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



Да почему 100 байт-то?! ВСЮ СТРАНИЦУ.
Go to the top of the page
 
+Quote Post
Jenya7
сообщение Jun 23 2018, 17:50
Сообщение #12


Профессионал
*****

Группа: Участник
Сообщений: 1 666
Регистрация: 29-03-12
Пользователь №: 71 075



Цитата(aaarrr @ Jun 23 2018, 23:32) *
Да почему 100 байт-то?! ВСЮ СТРАНИЦУ.

понял. спасибо. попробую.
Go to the top of the page
 
+Quote Post

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

 


RSS Текстовая версия Сейчас: 16th July 2018 - 03:58
Рейтинг@Mail.ru


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