что такое нанд флеш в телевизоре
Неисправности телевизоров, связанные с выходом из строя микросхем памяти oneNAND, NAND, eMMC, SPI FLASH и EEPROM. (1/4)
08 Сен 2019 12:10 #1
Неисправности телевизоров, связанные с выходом из строя микросхем памяти oneNAND, NAND, eMMC, SPI FLASH и EEPROM.
Неисправности телевизоров, связанные с выходом из строя микросхем памяти (oneNAND, NAND, eMMC, SPI FLASH и EEPROM).
Вот перечень неисправностей, связанные с выходом из строя микросхем памяти:
1) телевизор не включается, постоянно горит красный светодиод
2) моргает красный светодиод а потом гаснет
3) включается но зависает на логотипе
4) включается но постоянно перезагружается
5) отсутствует изображение
6) не запоминает настройки
Чтобы устранить эти неисправности необходимо заменить микросхему памяти (oneNAND, NAND, eMMC, SPI FLASH и EEPROM) и перепрограммировать (перепрошить) ее, либо просто перешить.
08 Сен 2019 12:18 #2
Неисправности телевизоров, связанные с выходом из строя микросхем памяти oneNAND, NAND, eMMC, SPI FLASH и EEPROM.
Выход из строя или слет прошивки микросхемы NAND H27U1G8F2CTR
Вот перечень телевизоров в которых используется NAND H27U1G8F2CTR :
LG 43LH520V
LG 22LN540U
LG 43LH510V
LG 29LN450U 29MN33D_LD32S
LG шасси LD67A_LD67B
LG шасси LD31S
LG шасси LC43B/LD43B/LB43T
LG 32LN536U
LG шасси LB36B
LG шасси LD31B_LC36B_LL36B
LG 42LB5510
LG шасси LA3AA LB3AC LT3AC
LG шасси LD54J
Sharp LC-32LD135V H27U1G8F2BTR
Sharp LC-40LE814E H27U1G8F2BTR
Sharp LC-50LE762E H27U2G8F2CTR 17MB90-3_V1
Sharp LC-60LE636E-RU H27U2G8F2CTR QPWBXFKF733WJN2
Sharp LC-70LE741E-RU H27U2G8F2CTR
08 Сен 2019 12:33 #3
Неисправности телевизоров, связанные с выходом из строя микросхем памяти oneNAND, NAND, eMMC, SPI FLASH и EEPROM.
Выход из строя или слет прошивки микросхемы NAND K9GAG08U0E
Довольно часто в телевизорах SANSUNG (собранных на mainboard BN41-01660B, BN41-01660A), выходит из строя именно микросхема NAND K9GAG08U0E
Вот перечень телевизоров :
Samsung UE40D5500, UE46D5500, UE32D5520, UE40D5520, UE46D5520, UE32D5500 и т.д.
А также в плазменных телевизорах Samsung PS51D6900DS и PS59D6900DS, шасси F86A.
СКАЧАТЬ DATASHEET K9GAG08U0E : K9GAG08U0E.pdf
КУПИТЬ K9GAG08U0E : K9GAG08U0E
08 Сен 2019 12:40 #4
Неисправности телевизоров, связанные с выходом из строя микросхем памяти oneNAND, NAND, eMMC, SPI FLASH и EEPROM.
Выход из строя или слет прошивки микросхемы eММС KLM4G1FEAC-C031 в телевизорах Samsung на платформе HIGH-X14H.
eММС KLM4G1FEAC-C031 применяется в Samsung UE32H6400, UE40H6400, UE32H5500, UE48H6230, UE32H6350AK, UE48H6410, UE32H5500AK, UE40H6350AK, UE55H6400AK, UE48H6400, UE32H6230, UE48H6230, UE48H6800AU, UE55H6800AW, UE55H6800AW, UE48H6800, UE55H6800 и других моделях с платформой HIGH-X14H, модели Н 5 и 6 серии. А также в телевизорах Samsung UE48H8000, UE55H8000 и других моделях с платформой GOLF_P_PRO модели Н 8 серии..
08 Сен 2019 12:53 #5
Неисправности телевизоров, связанные с выходом из строя микросхем памяти oneNAND, NAND, eMMC, SPI FLASH и EEPROM.
Выход из строя микроконтроллера WT61P805 в TV Samsung.
СКАЧАТЬ DATASHEET WT61P8 : WT61P8.pdf
КУПИТЬ WT61P8 : WT61P8
— WT61P807 используется в BN41-01958B(A)
— WT61P805 используется в BN41-01812A
— WT61P805 используется в BN41-01798A
— WT61P802 используется в BN41-01537A
— WT61P805 используется в BN41-01167B(C)
— WT61P805 используется в BN41-01754A
Принцип работы NAND-памяти
Содержание
Содержание
Современные мобильные гаджеты, повышение быстродействия компьютерных систем и производство недорогих, но быстрых накопителей для хранения большого объема информации напрямую связано с микросхемами памяти.
В быстродействующих устройствах хранения данных используются микросхемы флеш-памяти. Анонсировали их в 1988-89 году, когда компании Intel и Toshiba представили память с архитектурой NOR (Intel) и NAND (Toshiba). Именно вторая разновидность стала наиболее популярной, так как имела больше возможностей для миниатюризации. Почему, сейчас разберемся.
Полевой транзистор с плавающим затвором — основа ячейки памяти
Основой всей технологии флеш-памяти, в том числе и NAND, является полевой транзистор с плавающим затвором. В общем случае его структура выглядит так:
Перед нами обычный полевой транзистор, у которого, помимо управляющего, появился еще один затвор. Так вот в этом затворе, называющемся «плавающий», как раз и кроется вся особенность технологии.
Дело в том, что этот затвор и полупроводник, представляющий собой канал транзистора между стоком и истоком, разделяет тонкий слой диэлектрика. Электроны воздействии положительного напряжения к затвору, смогут не только направиться по своему обычному пути внутри полупроводника, но и «перескочить» с помощью инжекции или туннелирования через слой диэлектрика в плавающий затвор.
Разумеется, так смогут сделать не все электроны, а только их часть — те, которые получили большую энергию. При этом они не пробивают слой диэлектрика в физическом смысле, а в соответствии со своими квантово-волновыми свойствами «перепрыгивают» сразу в плавающий затвор. Вернуться обратно «перепрыгнувшие» электроны не могут, так как у них для этого не хватает энергии.
То есть, мы можем подать напряжение и тем самым «затащить» электроны в плавающий затвор. Они там останутся, когда мы включим транзистор в следующий раз — заряд, сосредоточенный на плавающем затворе окажет влияние на расположенный под ними канал между стоком и истоком: пропустит или не пропустит ток через транзистор независимо от напряжения на управляющем затворе. В самом простом случае мы получаем два состояния — ток есть или тока нет. Ноль и единицу. Что нам и требовалось.
Причем это состояние может сохраняться достаточно долго. Конечно, это время не бесконечно. Постепенно заряд на «плавающем» затворе потеряется. Но этого времени вполне достаточно для хранения информации в реальных условиях применения, так как речь идет о годах.
Разумеется, записанную информацию, то есть, заряд на плавающем затворе, можно стереть. Для этого достаточно подать на управляющий затвор напряжение обратной полярности, чтобы электроны смогли покинуть плавающий затвор и вернулись в проводящий канал транзистора. До этого времени заряд и логическое состояние транзистора сохраняется из-за того, что энергии электронов недостаточно для преодоления потенциального и физического барьера в виде тонкого слоя диэлектрика.
В процессе развития и миниатюризации технология изготовления полевых транзисторов с плавающим затвором менялась и совершенствовалась. Если первые элементы памяти создавали в планарном виде на поверхности кристалла, то сейчас используется технология 3D NAND или V-NAND (разные маркетинговые названия), в которой структура транзистора сформирована не на горизонтальной плоскости, а на вертикальной. Это позволяет экономить площадь и увеличивать объем памяти, который размещается в одной микросхеме. Принцип работы транзистора при этом остается прежним.
Кроме того, сейчас используют не только металлические плавающие затворы. Появились технологии изготовления кристаллов микросхем, повышающие их надежность и позволяющие удерживать заряд в течение большего времени. Например, компания Samsung использует для захвата зарядов и работы в качестве «плавающего затвора» изолированные области из непроводящего материала нитрида кремния SiN. Они называются 3D Charge Trap Flash — «ловушки заряда». Их применение увеличивает срок хранения заряда, а, следовательно, и информации в ячейке, а также делает микросхемы экономичнее в плане энергопотребления.
NAND и NOR ячейки памяти — как они работают
Транзисторы с плавающим затвором соединяются в матрицы, хранящие слова данных по нужным адресам, разными способами. Основными являются NAND и NOR. Эти аббревиатуры представляют собой сокращения словосочетаний «Not AND» и «Not OR» — соответственно «И-НЕ» и «ИЛИ-НЕ».
Схематично способ построения матриц в двух случаях выглядит так:
Как видите из представленных схем, построение матрицы по схеме NOR удобно тем, что можно просто получить доступ к любой конкретной ячейке и записать информацию именно в нее. В случае с NAND несколько одиночных ячеек памяти соединены последовательно и для того, чтобы записать состояние «ноля» в одну из них, надо, чтобы все другие были открыты и пропускали ток.
Именно по этой причине стирание информации в микросхемы NAND-памяти производится поблочно, а для того, чтобы записать новые данные, обновляют информацию сразу для множества ячеек (осуществляют запись «постранично»). Но зато такая схемотехника позволила значительно упростить топологию и сократить размеры ячеек памяти на кристалле. Поэтому в современной микроэлектронике именно NAND-память является основной. И когда вы покупаете новый SSD-диск, то в нем стоят именно микросхемы с NAND-памятью.
Как в одной ячейке удается хранить до 4 бит данных
Небольшими размерами преимущества ячеек NAND-памяти не ограничивается. Еще один интересный и полезный момент заключается в том, что в них можно записать не один, а несколько (до четырех) битов информации. Теоретически можно и больше, но пока реально можно говорить только о четырех, так как дальше начинаются серьезные технические сложности. Тем не менее, на мероприятии Flash Memory Summit 2019 представители компании Toshiba уже представили идею записи по пять бит данных в каждую ячейку. Но пока до практического применения дело ещё не дошло.
Разберемся, как работает запись нескольких бит информации в одну ячейку. Транзистор с плавающим затвором представляет собой элемент, который может находиться не только в двух состояниях — закрытом и открытом, но и в промежуточных. Фактически это аналоговый элемент, способный пропускать по цепи сток-исток ток разной величины в зависимости от того, какой заряд имеется на затворах и какое поле им создается.
Это значит, что можно «загнать» в плавающий затвор (в 3D NAND — в «ловушку зарядов») столько электронов, сколько понадобится, чтобы пропускать определенный ток через транзистор при определенном значении порогового напряжения. Таких пороговых напряжений может быть несколько, так как есть возможность накопить заряд больше или меньше — столько, сколько потребуется, чтобы в ячейке записалась нужная информация. Далее, подавая на транзистор напряжение и контролируя ток, можно судить о его состоянии, то есть о том, какие данные он хранит.
Отсюда и возникают ячейки памяти, в которых хранится не один бит информации, а больше, вплоть до четырех. Поэтому вся память делится на две категории: SLC (сокращение от Single Level Cell — одноуровневые ячейки) и MLC (Multi Level Cell — многоуровневые ячейки).
С SLC-ячейками все просто. Это классические элементы памяти, которые хранят один бит с двумя состояниями, одно из которых соответствует заряженному затвору, а второе — разряженному.
MLC-ячейки в свою очередь подразделяются на:
Такое увеличение плотности записи с одной стороны повышает объемы накопителей. Но с другой снижается надежность, так как требуется высокая точность записи состояния и последующего чтения данных. Увеличивается и время, которое тратится на чтение и запись данных, так как надо понять, в каком из 4, 8 или 16 режимов находится транзистор.
Дальнейшие перспективы технологии
Чтобы еще больше увеличить плотность хранения данных в одной ячейке и перейти на хранение пяти бит информации, потребуется контролировать уже 32 режима работы транзистора. Учитывая, что питание микросхем составляет единицы вольт, речь идет о том, чтобы соблюдать точность измерения и установки пороговых напряжений в сотые доли вольта. И это только одна из сложностей, которые надо решить.
Кроме того, надо решать такие задачи, как коррекция ошибок, надежность и количество циклов записи/чтения. Последняя проблема — одна из наиболее критичных, так как запись и чтение данных приводит к износу и уменьшению слоя диэлектрика между плавающим затвором и полупроводниковым каналом транзистора, а, следовательно, к выходу из строя ячейки. Именно этот момент является определяющим для времени безотказной работы памяти. Но, вполне возможно, что инженеры скоро найдут решение, позволяющее сделать следующий шаг в увеличении плотности записи. Тогда появятся еще более объемные твердотельные накопители по низкой цене.
NAND-ФЛЭШ
Информация Неисправность Прошивки Схемы Справочники Маркировка Корпуса Сокращения и аббревиатуры Частые вопросы Полезные ссылки
Справочная информация
Этот блок для тех, кто впервые попал на страницы нашего сайта. В форуме рассмотрены различные вопросы возникающие при ремонте бытовой и промышленной аппаратуры. Всю предоставленную информацию можно разбить на несколько пунктов:
Неисправности
О прошивках
Большинство современной аппаратуры представляет из себя подобие программно-аппаратного комплекса. То есть, основной процессор управляет другими устройствами по программе, которая может находиться как в самом чипе процессора, так и в отдельных микросхемах памяти.
На сайте существуют разделы с прошивками (дампами памяти) для микросхем, либо для обновления ПО через интерфейсы типа USB.
Схемы аппаратуры
Начинающие ремонтники часто ищут принципиальные схемы, схемы соединений, пользовательские и сервисные инструкции. Это могут быть как отдельные платы (блоки питания, основные платы, панели), так и полные Service Manual-ы. На сайте они размещены в специально отведенных разделах и доступны к скачиванию гостям, либо после создания аккаунта:
Справочники
На сайте Вы можете скачать справочную литературу по электронным компонентам (справочники, таблицу аналогов, SMD-кодировку элементов, и тд.).
Современная элементная база стремится к миниатюрным размерам. Места на корпусе для нанесения маркировки не хватает. Поэтому, производители их маркируют СМД-кодами.
При создании запросов в определении точного названия (партномера) компонента, необходимо указывать не только его маркировку, но и тип корпуса. Наиболее распостранены:
Краткие сокращения
При подаче информации, на форуме принято использование сокращений и аббревиатур, например:
Частые вопросы
После регистрации аккаунта на сайте Вы сможете опубликовать свой вопрос или отвечать в существующих темах. Участие абсолютно бесплатное.
Ответ в тему NAND-ФЛЭШ как и все другие советы публикуются всем сообществом. Большинство участников это профессиональные мастера по ремонту и специалисты в области электроники.
Возможность поиска по всему сайту и файловому архиву появится после регистрации. В верхнем правом углу будет отображаться форма поиска по сайту.
Полезные ссылки
Здесь просто полезные ссылки для мастеров. Ссылки периодически обновляемые, в зависимости от востребованности тем.
Программирование NAND для чайников.
Часть 1. Ошибки.
2021-02-11 Дата последнего изменения: 2021-02-28
В статье в предельно доступной форме рассматриваются особенности применения микросхем NAND FLASH.
CОДЕРЖАНИЕ:
NAND не совсем обычные микросхемы, поэтому те инженеры, которые с ними сталкиваются впервые, часто бывают обескуражены. Более подробно, хотя и очень примитивно, особенности NAND описаны в статьях «Программирование NAND FLASH» и «Программирование SPI NAND».
Здесь же я постараюсь изложить суть использования NAND еще проще.
Тому, кто собирается работать с NAND профессионально, материала из этой статьи будет явно недостаточно, но для любителя, который решил отремонтировать 2–3 прибора, в которых используется микросхема типа NAND, это может очень помочь.
1. Коварство NAND. Структура.
NAND организованы следующим образом: страницы –> блоки –> логические модули –> кристаллы.
На рисунке ниже показан типичный пример организации микросхемы NAND с одним логическим модулем и одним кристаллом.
В чем коварство NAND? В адресации.
Даже начинающий радиолюбитель знает, что к любой ячейке микросхемы памяти можно обратиться, указав её адрес. Перебирая по порядку все адреса с первого до последнего, можно считать или записать всю микросхему (именно так поступает программатор).
В микросхемах NAND обращение к отдельным ячейкам невозможно. Программирование выполняется одновременно только в пределах одной страницы, а при стирании обращение производится к блокам или к группам блоков. Страница — минимальная единица NAND, которую можно считать или записать, а при стирании минимальная единица — это блок или группа блоков.
При считывании NAND всегда происходит чтение всей страницы целиком, страница перемещается во внутренний буфер (page register), а уже из буфера можно прочитать содержимое страницы байт за байтом или в произвольном порядке.
То же самое при записи — сначала заполняется внутренний буфер (целиком или частично), затем страница записывается целиком. Размер буфера равен размеру страницы. Коварство адресации в том, что размер страницы не кратен степени двух. То есть просматривать содержимое микросхемы байт за байтом не получится.
2. Коварство NAND. Ошибки.
При работе микросхемы NAND возникновение ошибок — это норма. «Как так? Как можно работать с такой микросхемой?!» — скажете вы. Как можно работать с такой памятью? Способы есть, но об этом позже, а сейчас о типичном заблуждении начинающих:
Спокойно, дружище, спокойно. Это NAND, она так работает.
Сейчас типичная страница наиболее распространенных NAND равна двум килобайтам плюс дополнительные байты. Очень многие микросхемы при чтении дают до 16-ти одиночных ошибок на одну страницу. И это нормально. Берем, например, микросхему на 2 гигабайта. Нехитрое вычисление. Получаем, что при считывании микросхемы может быть до 16 777 216 ошибок!
Еще раз: 16 миллионов! Ошибок в микросхеме! Как с этим жить?! Как может что-то работать вообще? Об этом поговорим чуть позже.
А сейчас поясним понятие «одиночные ошибки«.
«Одиночная ошибка» — это не одна единственная ошибка на страницу или микросхему, это ошибка в одном бите. Таких ошибок может быть много, вопреки слову «одиночная». Применительно к памяти такие ошибки правильнее было бы называть однобитными, но термин «одиночный» пришёл из теории передачи данных по линиям связи, где ошибки выявляют и исправляют такими же способами, что и в NAND.
3. Магия ЕСС.
Все наверное знают, что такое CRC. Код CRC (еще иногда (ошибочно) называют «контрольная сумма») — это такой специальный код, который позволяет найти ошибку в данных.
ЕСС — это более продвинутый код. Он позволяет не только обнаружить но и исправить (!) ошибку в данных. Поэтому он и называется ECC (Error Correction Code) — Код Исправляющий Ошибки.
Как работает такой код? Ох, лучше не спрашивайте. Я сам не понимаю (шутка). Просто поверьте в магию. Страница считана с ошибками, но код ЕСС может все исправить. Задействуем код ЕСС — и все читается без ошибок.
Кратко опишем как выглядит работа кодера/декодера ЕСС:
Вот до этого места коды CRC и ECC не сильно отличаются, магия ЕСС начинается дальше:
Вот и вся магия. Мы просто исправляем ошибки.
Конечно код ЕСС не может исправить все ошибки. Он может исправить их небольшое количество, скажем 16. Но нам больше и не нужно! Микросхема ведь не делает много ошибок 🙂
4. Коварство NAND. Магия ЕСС есть, но она не работает.
«Так просто?» — скажете вы. «Тогда почему программатор не использует ЕСС для исправления ошибок?! Я из раза в раз читаю микросхему и все время ошибки».
Да. Действительно, почему?
А вот почему.
Чтобы исправить все ошибки нужно знать:
Как? Вы это не знаете?! Вот и мы не знаем. И, возможно, никто, кроме разработчика прибора, не знает.
5. Почему алгоритмов расчета ECC так много.
На данный момент самые распространённые коды исправляющие ошибки это:
Математические теории кодов достаточно сложные, но основные приемы работы с кодами известны, порождающие полиномы легко найти. Казалось бы, мы легко сможем подобрать нужный алгоритм ECC, просто анализируя прошивку. Сначала мы тоже так решили, однако всё оказалось сложнее.
Большинство современных встроенных систем базируются на Linux. Linux для работы накопителей на основе FLASH памяти, как правило, использует драйвер MTD. В драйвере MTD реализовано программное кодирование для NAND кодом BCH с вполне известным набором полиномов. Всё будто просто, но в реальной жизни (в реальных прошивках) такое кодирование не встречается. Почему? Всё упирается в деньги. Вернее, в желание производителей аппаратуры их сэкономить.
Почему вместо обычной памяти FLASH, работающей безошибочно, используются NAND, производящие кучу ошибок? Потому что это в разы дешевле. За разработку алгоритма кодирования/декодирования ЕСС заплатить нужно ОДИН раз, за память без ошибок нужно платить КАЖДЫЙ раз в КАЖДОМ устройстве.
Ровно по этой же причине в реальных устройствах (особенно массовых) никогда не используется чисто программное декодирование ЕСС – это декодирование является очень ресурсозатратным. Получается: ставим дешевую память – получаем или медленно работающее устройство, или нужно ставить мощный процессор, стоимость которого сводит на нет выгоды от использования дешевой памяти.
Поэтому декодированием ЕСС в современных системах занимаются специальные сопроцессоры или контроллеры. Придумываются и реализуются более совершенные коды ЕСС. Часто используются комбинированные коды CRC/ECC. Код CRC рассчитывается быстрее, чем ЕСС, это позволяет использовать CRC-часть для обнаружения ошибок, а полное декодирование ЕСС — только при их наличии.
Все эти коды и алгоритмы являются предметом авторского права и собственностью компаний, их разработавших. Ежедневно патентуются все более совершенные коды и все более быстрые алгоритмы их расчета. И никто не спешит делиться своими секретами.
Для тех, кого посетит мысль о том, что взломать алгоритм ECC не сложно, хочу напомнить, что для шифрования данных и расчета кодов исправления ошибок используется идентичный математический аппарат.
6. Коварство NAND. Магия ЕСС есть, но она не работает. Что делать?
Очень часто нам приходится слышать один и тот же вопрос: «Что делать, если NAND всегда читается с огромным количеством ошибок? Как прочитать без ошибок?»
Проблема может быть успешно преодолена, если вы нам скажете, какой алгоритм ЕСС использует ваше устройство. В этом случае мы сделаем расчет ЕСС по вашему алгоритму и у вас всё будет работать без ошибок при чтении NAND для этого устройства.
Вы не знаете алгоритм? Тогда есть только один способ: толерантность к ошибкам (и этот способ успешно работает).
Просто читаете микросхему. Она будет считана с ошибками. При верификации требуется задать допустимое количество ошибок на страницу микросхемы. (Для всех вновь добавленных микросхем значение по умолчанию уже задано. Если не задано – нужно смотреть документацию или просить нас, чтобы мы внесли данные ЕСС в базу).
Программа будет сверять микросхему и подсчитывать количество ошибок. Если количество ошибок не превысит заданное значение — значит всё в порядке. Ошибка сравнения не будет выдана, вы просто будете проинформированы о количестве «исправимых» ошибок.
Но не все так однозначно.
Вот небольшая задачка:
Допустим, микросхема записывается всегда правильно, а все ошибки возникают только при чтении (чаше всего, это именно так). Предположим при каждом чтении каждой страницы всегда возникает ровно 3 ошибки при допустимых для данной микросхемы 4-х ошибках.
Понятно, что пример несколько искусственный, но на нём проще объяснить.
Случай 1:Запись эталона в NAND
Мы записали в микросхему эталонную (точно не содержащую ошибок) прошивку. При верификации получаем 3 ошибки на страницу. Программа предупреждает об исправимых ошибках, но верификация проходит успешно.
Если вы эту микросхему NAND поставите в ваш прибор, он исправно заработает, поскольку встроенный в прибор алгоритм ЕСС обязан(!) исправлять не менее 4-х ошибок на страницу (это паспортные характеристики данной NAND и прибор просто обязан справляться с таким количеством ошибок).
Случай 2:Чтение микросхемы NAND
Мы считали прошивку из исправной микросхемы, стоящей в приборе (напомню, мы получаем по 3 ошибки на страницу). Далее мы еще раз считывали прошивку. Мы опять получили 3 ошибки на страницу.
Но ошибки не возникают в одних и тех же местах! При сравнении результатов 1-го и 2-го считывания может получиться до 6-ти ошибок на страницу. Это превысит допустимые 4 для данной микросхемы, но это вовсе не означает, что микросхема неисправна!
Случай 3:Копирование микросхемы NAND
Мы считали прошивку из исправной микросхемы, стоящей в приборе (получая по 3 ошибки на страницу). Далее записали полученную прошивку в чистую микросхему.
При верификации получим по 3 ошибки на страницу. Это вроде бы меньше 4-х. Но заработает ли прибор? Не факт. Всего ошибок может быть до 6-ти на страницу (3 при считывании образца плюс 3 при работе микросхемы в приборе), но ЕСС прибора исправит только 4.
На самом деле, в реальной жизни, количество ошибок по страницам в микросхемах сильно колеблется. В новых микросхемах количество ошибок не превышает одной-двух, да и то не на каждой странице. Заявленное число ошибок (в нашем примере 4) это уже в сильно изношенной микросхеме. Беда только в том, что в ремонт с формулировкой «слетела прошивка» именно такие приборы и попадают.
7. Практический совет по выбору порога ошибок.
Можно порекомендовать простой алгоритм выбора количества допустимых ошибок при верификации (настройка порога толерантности):
Случай 1. Очень оптимистичный. У вас есть эталонная прошивка и она точно без ошибок.
Такую прошивку можно писать и верифицировать с порогом ошибок, заданным в документации на микросхему (во всех наших примерах – это 4).
Случай 2. Реальный. У вас нет эталонной прошивки.
Вы считываете прошивку из микросхемы. Чтобы ее можно было уверенно использовать, количество ошибок на страницу не должно превышать половины лимита (т.е. для нашего примера — это 2 ошибки). Далее вы пишете эту прошивку в микросхему. При верификации записанной микросхемы ошибок тоже не должно быть более 2-х.
При соблюдении этих условий прибор заработает с очень высокой вероятностью (ЕСС прибора должно исправить 2+2=4 ошибки).
Чем больше вы ошибок получаете при считывании эталона и верификации записи, тем меньше вероятность того, что алгоритм ЕСС справится с исправлением ошибок и прибор заработает. Здесь уже как повезет. 🙂
8. «Ваш программатор полный отстой, вот другие программаторы решают эту проблему».
Нет. У других производителей программаторов (во всяком случае у всех, которые нам известны на данный момент) всё точно так же. Те же предложения: «Cкажите какой ЕСС и мы все реализуем».
Те же методы верификации с «терпимостью» ошибок ЕСС. У некоторых производителей есть настройка с выбором алгоритмов из встроенного стандартного набора, с необходимостью указания полинома, разметки страницы и кучи других параметров. В практической жизни это вам не сильно поможет.
9. «Я все прочитал и ничего не понял.
Вы сможете наконец что-то сделать, чтобы NAND читались «нормально»?»
Мы над этим работаем. До сих пор мы не оставляем надежды на создание способа автоматического восстановления алгоритма ЕСС (хакинга) только на основании анализа прошивки.
Понятно, что для всех случаев его создать никогда не удастся, но если нам удастся восстановить алгоритм ЕСС хотя бы в четверти случаев, мы будем просто счастливы.
Что для этого нужно? Присылайте нам свои считанные прошивки. Присылайте нам как можно больше считанных прошивок. Я знаю, что они для вас представляют ценность, но мы не собираемся их распространять или использовать как-то кроме их анализа на предмет ЕСС и таблиц плохих блоков. Если вы опасаетесь, можно скрывать название системы, в которой прошивка используется.
Всё что нас интересует — это название микросхемы, из которой прошивка считана. Для лучшей защиты своих интересов вы можете прислать прошивку не полностью. Если вы опасаетесь — не присылайте. Это только просьба.
Еще очень желательно знать марку контроллера NAND, используемого в системе или марку центрального процессора, то есть название микросхемы, к которой NAND подключена.
Собрав достаточную базу прошивок, я надеюсь, нам удастся «хакнуть» ЕСС и сильно облегчить вам работу с NAND.
Только совместными усилиями мы сможем добиться значительных результатов в работе!