Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Работа с плохими секторами/страницами в NAND FLASH.
Форум разработчиков электроники ELECTRONIX.ru > Сайт и форум > В помощь начинающему
Jenya7
Вопрос к специалистам с опытом работы с NAND FLASH. Есть такая NAND FLASH - TC58CVG2S0HxAIx.
Стирается она блоками. В каждом блоке 64 страницы. Как выявлять какая страница повреждена а какая нет? Допустим стер блок и что потом? Перебирать все страницы, считывать и проверять если какой нибудь байт не равен 0xFF - страница плохая? А где хранить информацию о плохих страницах? 2048 блоков и в каждом 64 страницы - это uint64_t pages[2048] - чтоб сохранить всю информацию.
aaarrr
Цитата(Jenya7 @ Jun 22 2018, 13:00) *
Стирается она блоками. В каждом блоке 64 страницы. Как выявлять какая страница повреждена а какая нет?

И бракуется блоками, а не страницами. Подробности на стр.37-38 даташита.
Jenya7
Цитата(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?
aaarrr
Цитата(Jenya7 @ Jun 22 2018, 21:43) *
достаточно прочесть любую строку на любой странице блока и если есть 0х00 - блок плохой? а что в плохом блоке вся дата на странице читается 0х00?

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


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

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

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

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


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


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


то есть считал допустим 100 байт. если встретился хотя бы один не ноль - блок не битый?
aaarrr
Да почему 100 байт-то?! ВСЮ СТРАНИЦУ.
Jenya7
Цитата(aaarrr @ Jun 23 2018, 23:32) *
Да почему 100 байт-то?! ВСЮ СТРАНИЦУ.

понял. спасибо. попробую.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.