autoua
×
Это мобильная версия форума. Перейти на обычную версию форума ×
Вход
Autoua.netФорумІнформатика та побутова електроніка

Как пометить битые сектора в NAND памяти

Мирослав | Супер писатель! ***
Как пометить битые сектора в NAND памяти
23 августа 2012 в 09:24
Камрады, аллоха!

Выяснил, что в NAND-памяти планшетки есть бэд блоки (из-за этого он начал глючить).

Может кто знает, как их пометить бэдами, дабы Андроид в бэды не пробовал писать?

Сразу оговорюсь - пробовал полное (не быстрое форматирование) из Винды, обработку чекдиском с параметрами /F /X, форматирование под Андроидом.

Или только замена чипов нам поможет?
Forth | Супер писатель! **
Re: Как пометить битые сектора в NAND памяти
[Re: Мирослав] 23 августа 2012 в 09:45
там что, FAT?
Мирослав | Супер писатель! ***
Re: Как пометить битые сектора в NAND памяти
[Re: Forth] 23 августа 2012 в 09:47
Винда пишет, что FAT32.
Forth | Супер писатель! **
Re: Как пометить битые сектора в NAND памяти
[Re: Мирослав] 23 августа 2012 в 09:51
Ну так если форматирование с поиском бед-блоков ничего не нашло, то с чего ты взял, что там такое есть?
Змінено Forth (09:54 23/08/2012)
Мирослав | Супер писатель! ***
Re: Как пометить битые сектора в NAND памяти
[Re: Forth] 23 августа 2012 в 09:58
Ну во-первых после всех форматирований глюки в работе планшета сохранились.

А именно. Прошиваю девайс прошивкой с нуля (чтобы работать с "чистого" листа). Планшет некоторое время работает нормально. Эксперементально проверено, что время корректной работы не зависит от нагрузки, но зависит от интенсивности установки софта / записи. Потом зависает. Перегрева нет 100%. Иногда помогает хард ресет. Иногда нет - тогда перепрошивка.

Проверял так. Подключил планшет в режиме юсб флешки к компу. Прогнал тест специализированной софтиной для проверки флешки на бэд блоки - Check Flash. Нашлась пачка бэд блоков.

Весь лог не выкладываю, т.к. он большой, а на аутоуа нет тэга спойлера. Но кусочек вот:

Код:
Ошибка по адресу C5F28002h: должно быть "00000001", однако найдено "00100001".
Ошибка по адресу C5FB8000h: должно быть "00000001", однако найдено "11111111".
Ошибка по адресу C60B4000h: должно быть "00000001", однако найдено "11111111".
Ошибка по адресу C6A28000h: должно быть "00000001", однако найдено "00100001".
Ошибка по адресу C6A8C000h: должно быть "00000001", однако найдено "11111111".
Ошибка по адресу C6B88002h: должно быть "00000001", однако найдено "00100001".
Ошибка по адресу C6C84000h: должно быть "00000001", однако найдено "11111111".
Ошибка по адресу C6D80000h: должно быть "00000001", однако найдено "11111111".
Ошибка по адресу C6E7C000h: должно быть "00000001", однако найдено "11111111".
Илья! | IesuiT **
Re: Как пометить битые сектора в NAND памяти
[Re: Мирослав] 23 августа 2012 в 10:17
что за планшет?
Мирослав | Супер писатель! ***
Re: Как пометить битые сектора в NAND памяти
[Re: Илья!] 23 августа 2012 в 10:18
Cube u30gt, мать его
Forth | Супер писатель! **
Re: Как пометить битые сектора в NAND памяти
[Re: Мирослав] 23 августа 2012 в 10:30
Забавные результаты. Походу, когда микросхма памяти "нагреется", то начинает глючить.
Вот беды и проявляются только при интенсивном тестировании, а скандиск их не замечает.

У FATa минимальная порция данных, которую можно пометить как бед - это кластер.
Ты бы заценил сначала:
1) меняется ли число бедов и их расположение после разных запусков Check Flash?
2)Если бедов уж сильно много, то сколько там места без глюков останется?
Змінено Forth (10:36 23/08/2012)
Мирослав | Супер писатель! ***
Re: Как пометить битые сектора в NAND памяти
[Re: Forth] 23 августа 2012 в 10:42
1) вечером потестирую
2) бэдов не слишком много - менее 1%.

А есть ли какая-то софтина, которая позволит зная адрес кластера вручную пометить его как бэд?
Я бы помети найденные 307 и посмотрел бы вылазят ли новые.
Змінено Мирослав (10:45 23/08/2012)
Forth | Супер писатель! **
Re: Как пометить битые сектора в NAND памяти
[Re: Мирослав] 23 августа 2012 в 10:53
Варианты у тебя следующие:
- если беды регулярно появляются в разных местах и места эти разбросаны по всему доступному пространству, то я за замену.
- Если беды постоянны и сосредоточены в одном месте + на железе есть рут, то можно переразбить этот раздел таким образом, чтобы область с бедами никуда не попадала.
- Ну и как вариант - кастовать камарада Bormana, может он какую тулзу подскажет, которая и тестировать "правильно" умеет, и тут же помечает.

В ответ на:

А есть ли какая-то софтина, которая позволит зная адрес кластера вручную пометить его как бэд?
Я бы помети найденные 307 и посмотрел бы вылазят ли новые.



Мне такие не известны

ЗЫ: Попробуй это http://flashboot.ru/index.php?name=Files&op=view_file&lid=41 оно для винтов, но вдруг и на флешке заведется.
Змінено Forth (10:55 23/08/2012)
Мирослав | Супер писатель! ***
Re: Как пометить битые сектора в NAND памяти
[Re: Forth] 23 августа 2012 в 11:02
Спасибо за наводку. Вечером буду проверять (планшет не с собой). Владимиру написал в личку, надеюсь на его консультацию. Уже даже звонил на завод производитель планшета - только там робобаба говорит на китайском и вешает трубку
Maks_on_Escort | IesuiT **
Re: Как пометить битые сектора в NAND памяти
[Re: Мирослав] 23 августа 2012 в 22:49
По сумме высказанного - я бы поменял чип, если это возможно. Бо глюки могут расти непредсказуемо и спонтанно.

Способов пометить бэды 2 - хоть обычным HEX-редактором который умеет напрямую читать/писать сектора файловой системы пометить бэдами кластеры в 2-х копиях FAT-таблицы. Это простой способ, и доступный самое главное.
А второй - сама структура NAND-flash подразумевает возможность пометки плохих блоков в самом чипе. Но думаю для ТС это прогон сферического коня в вакууме, и посему не буду углубляЦЦа. Тем более для каждой системы память/контроллер способы сугубо свои, и зачастую должны быть использованы в прошивке девайса.
Змінено Maks_on_Escort (22:50 23/08/2012)
Кондыбас | Бридка потвора ***
Re: Как пометить битые сектора в NAND памяти
[Re: Maks_on_Escort] 23 августа 2012 в 23:51
Maks_on_Escort 23.08.2012 22:49 пишет:

А второй - сама структура NAND-flash подразумевает возможность пометки плохих блоков в самом чипе.



+1
Контролер носія має таблицю резервних блоків, які ремапляться по ходу виявлення неспівпадіння CRC. Те, що носій сигналить про неспівпадіння даних, означає, що резерв блоків для ремапу вичерпано, і компенсувати деградацію флеша вже неможливо. Носію пряма дорога на смітник.
Serge_Nik | патриарх **
Re: Как пометить битые сектора в NAND памяти
[Re: Мирослав] 24 августа 2012 в 06:42
контроллер нанд сам занимается битыми секторами. По сему проблема за пределы микросхемы не выходит.
Если система видит битые сектора , думаю что там типа непропай или микротрещины.
В общем пробовать прогреть.
B.O.S. | ПАПАрация ***
Re: Как пометить битые сектора в NAND памяти
[Re: Кондыбас] 24 августа 2012 в 11:43
Кондыбас 23.08.2012 23:51 пишет:

Maks_on_Escort 23.08.2012 22:49 пишет:

А второй - сама структура NAND-flash подразумевает возможность пометки плохих блоков в самом чипе.



+1
Контролер носія має таблицю резервних блоків, які ремапляться по ходу виявлення неспівпадіння CRC. Те, що носій сигналить про неспівпадіння даних, означає, що резерв блоків для ремапу вичерпано, і компенсувати деградацію флеша вже неможливо. Носію пряма дорога на смітник.



именно так и есть.
если износ флэша превысил компенсирующую способность контроллера - чпы в мусорку.
иначе только зря время тратить
Змінено B.O.S. (11:43 24/08/2012)
Maks_on_Escort | IesuiT **
Re: Как пометить битые сектора в NAND памяти
[Re: Кондыбас] 24 августа 2012 в 21:57
Даже не контроллер ... в самом чипе NAND flash на каждый блок 2/4/8/16К байт идет блок контрольной суммы этого блока ECC. Если в контрольной сумме 0xFFF... (длинна индивидуальна для каждого размера блока), то этот блок контроллер должен считать как бэд, если не все 1111, то контроллер должен вычислить контрольную сумму, и сравнить её с сохраненной, и выдать ошибку чтения при несовпадении. При записи данных контроллер вычисляет контрольную сумму блока (а пишется NAND только блоками) и пишет её в служебный блок.

Короче говоря, тут за всех уже давно подумали, и если система не может сама обнаружить и скорректировать ошибки, то её надо чинить ...
Змінено Maks_on_Escort (22:01 24/08/2012)
sls | Супер писатель! ***
Re: Как пометить битые сектора в NAND памяти
[Re: Maks_on_Escort] 26 августа 2012 в 19:43
Maks_on_Escort 23.08.2012 22:49 пишет:

По сумме высказанного - я бы поменял чип, если это возможно. Бо глюки могут расти непредсказуемо и спонтанно.




+1
там делов на пять минут с перекурами и разборкой-сборкой
Мирослав | Супер писатель! ***
Re: Как пометить битые сектора в NAND памяти
[Re: sls] 26 августа 2012 в 20:02
Кто-то готов на платной основе осуществить замену? Озвучьте пожалуйста ориентир по стоимости и контакты в личку.

Либо насоветуйте проверенный сервис центр.

Спасибо.
sls | Супер писатель! ***
Re: Как пометить битые сектора в NAND памяти
[Re: Мирослав] 26 августа 2012 в 20:19
Мирослав 26.08.2012 20:02 пишет:

Кто-то готов на платной основе осуществить замену? Озвучьте пожалуйста ориентир по стоимости и контакты в личку.
Либо насоветуйте проверенный сервис центр.




с такой сложной задачей я бы не парился выбором сервисцентра, а заехал бы на радиорынок к ремонтникам мобил
Phan | V.I.P ***
Re: Как пометить битые сектора в NAND памяти
[Re: Мирослав] 26 августа 2012 в 22:12
стукнись к _AVP_
ну или у Бормана можешь спросить
Autoua.netФорумІнформатика та побутова електроніка

Как пометить битые сектора в NAND памяти

Додаткова інформація
Модератор:

 AlMat, Yorc, moderator 

3 користувачів і 37 що побажали залишитися невідомими читають цей форум.

Переглядів теми: 15136