|
|
  |
NAND Flash K9F1208U0B, BAD блоки |
|
|
|
May 3 2007, 11:39
|
Группа: Новичок
Сообщений: 6
Регистрация: 18-03-07
Пользователь №: 26 279

|
Уважаемые, если после Page Programm Operation, Status сообщает об ошибке, то можно перейти к новой странице и опять повторить запись из своего буфера (внешнего), но у NAND Flash есть команды Copy-Back Programm (Duammy) и Copy-Back Programm (True). Вопросы 1.Можно-ли применить эти команды, и какова последовательность кодов в данной ситуации? 2.Есть-ли у кого статистика таких отказов, как часто возникают?. 3. Данную страницу пометить как Bad, или пометить весь блок как ВAD. Заранее благодарен!
|
|
|
|
|
May 4 2007, 10:26
|
Группа: Новичок
Сообщений: 6
Регистрация: 18-03-07
Пользователь №: 26 279

|
Спасибо Alex 11! Вопросы далее. 1. Если после Page Programm Operation сообщается об ошибке, то а. Возникла какая-то системная ошибка не связанная с плохой ячейкой и можно попробовать повторить попытку? б. Нет, ошибка всегда означает плохую ячейку и тогда- б1. Пометить страничку как BAD, перейти на следующую страницу. б2. Пометить весь блок как BAD, перейти на следующий блок. 2. Метит-ли внутренний контроллер NAND Flash сам в SPARE AREA новые BAD блоки 3. Каково назначение остальных областей в SPARE AREA? (LSN, ECC, S-ECC)
|
|
|
|
|
May 4 2007, 20:25
|
Гуру
     
Группа: Свой
Сообщений: 2 106
Регистрация: 23-10-04
Из: С-Петербург
Пользователь №: 965

|
1. При отлаженной программе - ошибка записи это ошибка записи. Она может появиться, конечно, в результате воздействия внешних факторов типа просадки питания при записи, но, как правило, это плохой блок. В любом случае без стирания блока повторно писать в эту же страницу смысла нет. Следует пометить страницу как bad и перейти на следующий блок. При стирании этого блока, следует весь его пометить как bad и не писать в него никогда более (это по инструкции). На практике мы иногда не помечали блок bad'ом и пытались писать снова (после стирания). Иногда работает. 2. Нет. 3. Если не использовать команды типа copy-back, то можно использовать по своему разумению. Если использовать - то нужно, чтобы ECC поля совпадали с datasheet'ом, т.к. встроенный контроллер будет перевычислять ECC, чтобы не множить ошибки.
|
|
|
|
|
May 7 2007, 08:18
|
Группа: Новичок
Сообщений: 6
Регистрация: 18-03-07
Пользователь №: 26 279

|
Alex11, делали Вы тестирование NAND Flash? Пишем все нули, 0x55, 0хАА, достаточно этого будет, или стоит запустить бегущий 0 и бегущюю 1?
|
|
|
|
|
May 8 2007, 07:18
|
Гуру
     
Группа: Свой
Сообщений: 2 106
Регистрация: 23-10-04
Из: С-Петербург
Пользователь №: 965

|
Тестирование для чего? Когда я только начинал с ними работать (лет 5 назад), то при форматировании писал 55, АА - в результате время форматирования стремилось к бесконечности, а проку никакого. Поскольку обещано, что в процессе работы bad'ы будут образовываться, то предварительное тестирование бесполезно. Заводские bad-блоки уже помечены так, что не стираются, даже если подать команду стирания на них. А дальше в зависимости от требуемой надежности устройства можно либо отслеживать ошибку записи и прописывать сигнатуру с корректирующим кодом или проверять запись последующим чтением, либо делать и то и другое вместе. Невозможно сделать тестирование, которое бы гарантировало, что при следующей записи все что прошло тест запишется без ошибок.
|
|
|
|
|
  |
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|