Как считать с чипа сообщение все плохо
Перейти к содержимому

Как считать с чипа сообщение все плохо

  • автор:

Как считать с чипа сообщение все плохо

© Valve Corporation. Все права защищены. Все торговые марки являются собственностью соответствующих владельцев в США и других странах. Политика конфиденциальности | Правовая информация | Соглашение подписчика Steam | Возврат средств

Установить Steam

Cyberpunk 2077

Cyberpunk 2077

Эта публикация удалена, так как она нарушает рекомендации по поведению и контенту в Steam. Её можете видеть только вы. Если вы уверены, что публикацию удалили по ошибке, свяжитесь со службой поддержки Steam.

Этот предмет несовместим с Cyberpunk 2077. Пожалуйста, прочитайте справочную статью, почему этот предмет может не работать в Cyberpunk 2077.

приступ киберпсихоза: здоровье по скидке

Добрый день. Не выполняется данный квест. Судя по видео у остальных, не хватает чипа под названием «Вызывай спецназ». У меня его по просту нет в списке чипов, я его не могу прочитать и завершить тем самым квест. Перерыскал всю территорию, но все тщетно. Пытался заново уходить приходить, не помогает. Сейва До и После уже не найду, ибо бросил в один момент сей квест и пошел выполнять другое. Кто нибудь победил этот баг?

SvinoWhops

Fresh user

Проблема с этим заданием тоже. Только чип у него был и я его прочитал. Но не выполняется задание с осмотром территории. Просканировал 4 трупа и прочитал все сообщения в компьютере и квест о осмотре территории все равно висит. Скорее всего какой-то скрипт не выполнился, ибо когда я пришел, то убивал только одного человека в экзоскелете, а у кого-то их было 2. Так что CDProjektRed fix please.

DamageX6

Rookie

Здравствуйте. У многих нет ни какой ошибки, просто в конце необходимо отправить сообщение с информацией заказчику. А если есть голос (шёпот) на заднем плане то загрузиться с контрольной точки и отправить сообщение.

SvinoWhops

Fresh user

Я тоже об этом думал. Только проблема в том, что задание об отправке сообщения появится только после того, как я выполню задание «Осмотреть территорию и собрать данные». Пробовал ранее загружать сохранение и проходить по разному и итог один, с мужика в экзоскелете чип забираю и часть задания засчитывается, а задание по осмотру территории никак не выполняется.

Leon27ua

Rookie

Все куда проще. Там должен быть еще один персонаж, с которого и падает заветный файл. Он у меня весьма успешно застрял в текстурах соседнего сарая (что не мешает ему вести по мне прицельную стрельбу). Как-то вытащить его оттуда или убить сплешуроном не получилось. Квест непроходим

Attachments

Безымянный.png
4.6 MB · Views: 4,439

SvinoWhops

Fresh user

У меня его даже там нет. Попробуйте в него пострелять со снайперской винтовки или с энерго автомата или снайперки (только полностью заряженным выстрелом) они должны пробивать стены, может и получится у вас убить его.

Paskucci

Rookie

Тоже проблема с этим заданием. Когда прихожу на территорию СТО, там уже все мертвы, киберпсих всех перестрелял, сам стоит уткнувшись во входные ворота. Убиваю его, забираю чип, читаю, осматриваю все тела, но часть квеста «осмотреть территорию» не засчитывается. Соответственно сообщение отправить невозможно, просто нет такой функции. Никого живого застрявшего рядом нет. Судя по всему ошибка скрипта. Перезагружал с разных контрольных точек, проходил разными способами в разном порядке выполнял подзадания, раз 20 наверное — ничего.

Все куда проще. Там должен быть еще один персонаж, с которого и падает заветный файл. Он у меня весьма успешно застрял в текстурах соседнего сарая (что не мешает ему вести по мне прицельную стрельбу). Как-то вытащить его оттуда или убить сплешуроном не получилось. Квест непроходим

Да файл-то нам падает, у нас осмотр территории не происходит. И все уже мертвы.

Надеюсь все у кого эта проблема нарисовалась, написали в техподдержку. Чем больше будет жалоб, тем быстрее исправят.
Сюда: https://support.cdprojektred.com/ru/cyberpunk/pc/gameplay/issue/1724/ia-ne-mogu-proiti-zadanie

Last edited by a moderator: Dec 16, 2020

Alejandrok

Rookie

У меня примерно так же, только когда я пришёл обратно, то все были мертвы, в том числе и киберпсих. Я нашёл этот чип, отправил это сообщение, но после этого у меня остается задача: Осмотреть территорию и собрать данные.

ZuXXeLL

Rookie

Все просто,в гараже есть комп,с него надо почитать сообщения (3 штуки) и потом отправить сообщение ( а не пытаться звонить по телефону) Реджине. Сообщение отправляется из ивентаря перса, там найдете..

Alejandrok

Rookie

Все просто,в гараже есть комп,с него надо почитать сообщения (3 штуки) и потом отправить сообщение ( а не пытаться звонить по телефону) Реджине. Сообщение отправляется из ивентаря перса, там найдете..

Помогло, спасибо

SvinoWhops

Fresh user

Все просто,в гараже есть комп,с него надо почитать сообщения (3 штуки) и потом отправить сообщение ( а не пытаться звонить по телефону) Реджине. Сообщение отправляется из ивентаря перса, там найдете..

Вам же говорят, что сообщение ей можно будет отправить только после того, как выполниться квест «Осмотреть территорию». Просмотр сообщений на компьютере не помогает, все равно квест висит не выполненным. Просто у вас все прошло гладко и квест засчитался и потом появился квест «Отправьте сообщение Реджине».

«Найдите чип на трупе солдата, который был единственным выжившим. Оба чипа изучите в инвентаре» Похоже что у меня и у многих этого солдата нет.

Last edited by a moderator: Dec 17, 2020

great_ama

Rookie

Видео на английском, но там все конкретно объяснили.

Вкратце, скачиваете мод, который добавляет в Киберпанк Консоль, как в CSGO. Выполнив установку, запускаете игру, в игре нажимаете «ё» и вписываете код, который указан во втором пункте видео.

Полное погружение в Киберпанк это запустить протокол взлома для Киберпанк)

SvinoWhops

Fresh user

Видео на английском, но там все конкретно объяснили.

Вкратце, скачиваете мод, который добавляет в Киберпанк Консоль, как в CSGO. Выполнив установку, запускаете игру, в игре нажимаете «ё» и вписываете код, который указан во втором пункте видео.

Полное погружение в Киберпанк это запустить протокол взлома для Киберпанк)

Все сработало, но немного дополню, чтобы проще было.
К ответу приложу два zip файла, чтобы не пришлось там регистрироваться, чтобы скачать их. Надо те файлы которые в архиве, закинуть в папку с заменой: Cyberpunk 2077 -> bin -> x64. Перед тем как это делать, советую скопировать оригинальные файлы отдельно, чтобы потом обратно заменить. С файлами из версии 1.2 у меня игра не запускалась, так что пришлось заменять файлами из версии 1.1 .
Далее приходим на то место открываем консоль на Ё и вводим команду: player.inventory.addItem(Items.ma_std_rcr_11_shard_merc, 1)
После этого у нас появится чип в журнале, он будет почти в самом конце, его читаем и отправляем сообщение Реджине.

Помощь

Проверьте настройки безопасности приложения через «Мой профиль». Зайдите в настройки приложения и проверьте датчик случайных чисел и сертификат безопасности. Кликните на проверку работы датчика случайных чисел: если всё хорошо, то приложение сразу сообщит вам об этом. Если датчик работает некорректно – приложение предложит пройти игру и собирать «смайлики» для создания нового ключа шифрования.

Проверьте и сертификат безопасности: для этого сравните данные в настройках сертификата приложения с данными на ebs.ru (ссылка указана на странице сертификата). Если с безопасностью возникли проблемы, удалите приложение и установите актуальную версию в Google Play, App Store, AppGallery и RuStore.

Я могу использовать Face ID/Touch ID для входа в приложение?

Для приложения «Госуслуги Биометрия» функция входа через Face ID/Touch ID отключена в целях безопасности ваших данных

Как узнать обо всех операциях с моей биометрией?

Раздел «Уведомления» отображает всю историю операций и уведомления от Единой биометрической системы. Для этого нажмите на «колокольчик» в мобильном приложении «Госуслуги Биометрия» или зайдите в личный кабинет портала ebs.ru.

В каких магазинах приложений можно скачать приложение «Госуслуги Биометрия»?

Приложение можно бесплатно скачать через Google Play, App Store, AppGallery и RuStore.

Можно ли с помощью приложения зарегистрировать биометрию?

Да, зарегистрироваться в Единой биометрической системе можно онлайн с помощью мобильного приложения «Госуслуги Биометрия».

Чтобы зарегистрироваться онлайн, скачайте приложение в любом удобном магазине, авторизуйтесь с помощью учётной записи на Госуслугах, отсканируйте загранпаспорт нового образца, сфотографируйтесь и произнесите три числовые последовательности. В приложении появится отметка, что вы зарегистрировали стандартную биометрию.

Также вы можете зарегистрировать биометрию без помощи загранпаспорта. Такая биометрия получит статус «упрощённой».

Приложение «Госуслуги Биометрия» не открывается, плохо загружается или нет подключения к сети Интернет

Убедитесь, что не используется VPN или прокси. Если сервисы включены, попробуйте их отключить и повторить попытку.

Не могу зарегистрироваться, появляется ошибка «Что-то пошло не так/ Сервис временно недоступен»

Попробуйте зарегистрировать биометрию ещё раз через некоторое время. В случае повторной ошибки – напишите в нашу службу поддержки, отправив запрос через мобильное приложение в разделе «Помощь». В описании укажите, в какой момент и какую ошибку вы получаете при регистрации.

Не получается записать голос

Попробуйте ещё раз. Убедитесь, что в помещении тихо. На записи не должно присутствовать посторонних голосов. Произносите чётко числовые последовательности естественным для вас темпом и спокойным голосом.

Не получается сделать фото

Попробуйте ещё раз. Убедитесь, что в помещении светло, на заднем плане нет посторонних лиц, снимите головной убор, волосы не должны закрывать ваше лицо. Лицо при съёмке должно полностью заполнять рамку на экране.

Не могу считать чип с загранпаспорта

Убедитесь в том, что вы используете именно загранпаспорт нового образца с чипом. Внимательно ознакомьтесь с местом расположения чипа в загранпаспорте с помощью инструкции в приложении, определите расположение модуля NFC на вашем смартфоне. Снимите чехол со смартфона. Перемещайте смартфон по загранпаспорту до тех пор, пока не появится уведомление «Идёт считывание». Не двигайте и не убирайте смартфон от загранпаспорта до окончания считывания. Подробное видео с инструкцией о том, как успешно считать информацию с чипа вашего загранпаспорта, можно посмотреть по ссылке: https://www.youtube.com/watch?v=Aj72LA6MjyI&t=26s

Какие технические требования должны быть соблюдены для дистанционной регистрации биометрии?

Зарегистрировать биометрию можно с любого смартфона на операционной системе Android (версии 10 и выше) или iOS (версии 13 и выше). Минимальное разрешение камеры в телефоне должно быть 1280х720 пикселей. Высокоскоростной интернет (Wi-Fi или 4G/LTE) ускорит процесс передачи фотографии и записи голоса и позволит сократить время, потраченное на регистрацию.

Программирование NAND для чайников.
Часть 1. Ошибки.

Просмотров:(31037) 4.95 (20) Оценки, комментарии

2021-02-11 Дата последнего изменения: 2021-02-28

Автор: Линьков Е.А. — разработчик программаторов ChipStar .

В статье в предельно доступной форме рассматриваются особенности применения микросхем NAND FLASH.

CОДЕРЖАНИЕ:

  1. Коварство NAND. Структура.
  2. Коварство NAND. Ошибки.
  3. Магия ЕСС.
  4. Магия ЕСС есть, но она не работает.
  5. Почему алгоритмов расчета ECC так много.
  6. Магия ЕСС есть, но она не работает. Что делать?
  7. Практический совет по выбору порога ошибок.
  8. Как программаторы решают эту проблему?
  9. «Я всё прочитал и ничего не понял. Вы сможете наконец что-то сделать, чтобы NAND читались «нормально»?»

NAND не совсем обычные микросхемы, поэтому те инженеры, которые с ними сталкиваются впервые, часто бывают обескуражены. Более подробно, хотя и очень примитивно, особенности NAND описаны в статьях «Программирование NAND FLASH» и «Программирование SPI NAND».

Здесь же я постараюсь изложить суть использования NAND еще проще.

Тому, кто собирается работать с NAND профессионально, материала из этой статьи будет явно недостаточно, но для любителя, который решил отремонтировать 2–3 прибора, в которых используется микросхема типа NAND, это может очень помочь.

1. Коварство NAND. Структура.

NAND организованы следующим образом: страницы > блоки –> логические модули –> кристаллы.

  • Страница — это минимальная единица NAND, которую можно считать или записать. Обращение к отдельным ячейкам невозможно.
  • Блок — это несколько страниц. Это минимальная единица NAND, которую можно стереть.
  • Логический модуль — это практически независимая микросхема NAND, его можно писать, читать, стирать совершенно отдельно, а вот обращение к нему идёт через общий интерфейс.
  • Кристаллы — это фактически отдельные микросхемы, которые просто упакованы в один корпус с объединением всех сигналов питания и управления, кроме сигнала CS (выбор кристалла). Это выглядит так, как будто несколько микросхем 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) — Код Исправляющий Ошибки.

Как работает такой код? Ох, лучше не спрашивайте. Я сам не понимаю (шутка). Просто поверьте в магию. Страница считана с ошибками, но код ЕСС может все исправить. Задействуем код ЕСС — и все читается без ошибок.

Кратко опишем как выглядит работа кодера/декодера ЕСС:

  • Берется порция данных, например, 2048 байт, записывается в страницу NAND.
  • Рассчитывается код ЕСС и тоже записывается (назовем его ECC1) (именно для записи таких кодов страница сделана чуть больше!)
  • Затем читаем страницу 2048 байт.
  • Опять рассчитываем код ЕСС (назовем его ECC2).
  • Читаем записанный код ЕСС1 и сравниваем ECC1 и ECC2.
  • Если коды совпадают, значит ошибок нет.

Вот до этого места коды CRC и ECC не сильно отличаются, магия ЕСС начинается дальше:

  • Если коды различаются — рассчитываем так называемый синдром ошибки. Он покажет, сколько есть ошибок и где они расположены (с точностью до бита).
  • Зная, где расположены ошибки, их можно исправить.

Вот и вся магия. Мы просто исправляем ошибки.

Конечно код ЕСС не может исправить все ошибки. Он может исправить их небольшое количество, скажем 16. Но нам больше и не нужно! Микросхема ведь не делает много ошибок 🙂

4. Коварство NAND. Магия ЕСС есть, но она не работает.

«Так просто?» — скажете вы. «Тогда почему программатор не использует ЕСС для исправления ошибок?! Я из раза в раз читаю микросхему и все время ошибки».

Да. Действительно, почему?

А вот почему.
Чтобы исправить все ошибки нужно знать:

  1. Какими порциями (128, 256, 512, 1024 или 2048) в вашем приборе (не в микросхеме NAND, а именно в приборе. ) разработчик прибора решил записывать данные и вычислять ЕСС.
  2. Какой алгоритм ЕСС он решил использовать.
  3. Какой порождающий полином он решил использовать.
  4. Как разработчик разбил страницу NAND на порции и куда решил записывать сами коды ЕСС.

Как? Вы это не знаете?! Вот и мы не знаем. И, возможно, никто, кроме разработчика прибора, не знает.

Если из этого списка 1-й и 4-й пункты можно попытаться выяснить, анализируя прошивку микросхемы, а порождающий полином (пункт 3) — подобрать, то с пунктом 2 (алгоритм ECC) все очень плохо.

5. Почему алгоритмов расчета ECC так много.

На данный момент самые распространённые коды исправляющие ошибки это:

  • Код Хэминга (Hamming Code) или просто ЕСС.
    Позволяет исправлять одиночную ошибку и находить двойную. Исторически самый первый подобный код. Для современных NAND сейчас применяется редко из-за низких кодовых характеристик – исправление всего одной ошибки сейчас явно недостаточно.
    Теорию подробнее читайте здесь.
  • Код Рида-Соломона (Reed-Solomon Сode).
    Позволяет исправить N (любое количество ошибок), но для исправления N ошибок потребуется 2*N слов. Т.е. для исправления 16-ти ошибок нужен ECC код длиной 8 байт. Код Рида-Соломона является частным случаем кода БЧХ.
    Теорию о коде Рида-Соломона подробнее читайте здесь.
  • Код БЧХ (BCH Code) или код Боуза-Чоудхури-Хоквингема.
    Это широкий класс циклических кодов, применяемых для защиты информации от ошибок.
    Теорию можно почитать здесь.

Математические теории кодов достаточно сложные, но основные приемы работы с кодами известны, порождающие полиномы легко найти. Казалось бы, мы легко сможем подобрать нужный алгоритм ECC, просто анализируя прошивку. Сначала мы тоже так решили, однако всё оказалось сложнее.

Большинство современных встроенных систем базируются на Linux. Linux для работы накопителей на основе FLASH памяти, как правило, использует драйвер MTD. В драйвере MTD реализовано программное кодирование для NAND кодом BCH с вполне известным набором полиномов. Всё будто просто, но в реальной жизни (в реальных прошивках) такое кодирование не встречается. Почему? Всё упирается в деньги. Вернее, в желание производителей аппаратуры их сэкономить.

Почему вместо обычной памяти FLASH, работающей безошибочно, используются NAND, производящие кучу ошибок? Потому что это в разы дешевле. За разработку алгоритма кодирования/декодирования ЕСС заплатить нужно ОДИН раз, за память без ошибок нужно платить КАЖДЫЙ раз в КАЖДОМ устройстве.

Ровно по этой же причине в реальных устройствах (особенно массовых) никогда не используется чисто программное декодирование ЕСС – это декодирование является очень ресурсозатратным. Получается: ставим дешевую память – получаем или медленно работающее устройство, или нужно ставить мощный процессор, стоимость которого сводит на нет выгоды от использования дешевой памяти.

Поэтому декодированием ЕСС в современных системах занимаются специальные сопроцессоры или контроллеры. Придумываются и реализуются более совершенные коды ЕСС. Часто используются комбинированные коды CRC/ECC. Код CRC рассчитывается быстрее, чем ЕСС, это позволяет использовать CRC-часть для обнаружения ошибок, а полное декодирование ЕСС — только при их наличии.

Все эти коды и алгоритмы являются предметом авторского права и собственностью компаний, их разработавших. Ежедневно патентуются все более совершенные коды и все более быстрые алгоритмы их расчета. И никто не спешит делиться своими секретами.

Как итог — мы видим прошивку. Часто мы видим как страница разбита на подстраницы. Мы видим где находятся коды ЕСС подстраниц. Но не знаем, каким алгоритмом они рассчитаны, и поэтому не можем их использовать для исправления ошибок .

Для тех, кого посетит мысль о том, что взломать алгоритм ECC не сложно, хочу напомнить, что для шифрования данных и расчета кодов исправления ошибок используется идентичный математический аппарат.

6. Коварство NAND. Магия ЕСС есть, но она не работает. Что делать?

Очень часто нам приходится слышать один и тот же вопрос: «Что делать, если NAND всегда читается с огромным количеством ошибок? Как прочитать без ошибок?»

Проблема может быть успешно преодолена, если вы нам скажете, какой алгоритм ЕСС использует ваше устройство. В этом случае мы сделаем расчет ЕСС по вашему алгоритму и у вас всё будет работать без ошибок при чтении NAND для этого устройства.

Вы не знаете алгоритм? Тогда есть только один способ: толерантность к ошибкам (и этот способ успешно работает).

Просто читаете микросхему. Она будет считана с ошибками. При верификации требуется задать допустимое количество ошибок на страницу микросхемы. (Для всех вновь добавленных микросхем значение по умолчанию уже задано. Если не задано нужно смотреть документацию или просить нас, чтобы мы внесли данные ЕСС в базу).

Программа будет сверять микросхему и подсчитывать количество ошибок. Если количество ошибок не превысит заданное значение — значит всё в порядке. Ошибка сравнения не будет выдана, вы просто будете проинформированы о количестве «исправимых» ошибок.

Но не все так однозначно.

Вот небольшая задачка:
Допустим, микросхема записывается всегда правильно, а все ошибки возникают только при чтении (чаше всего, это именно так). Предположим при каждом чтении каждой страницы всегда возникает ровно 3 ошибки при допустимых для данной микросхемы 4-х ошибках.

Понятно, что пример несколько искусственный, но на нём проще объяснить.

Случай 1:Запись эталона в NAND

Мы записали в микросхему эталонную (точно не содержащую ошибок) прошивку. При верификации получаем 3 ошибки на страницу. Программа предупреждает об исправимых ошибках, но верификация проходит успешно.

Рисунок 1.

Если вы эту микросхему NAND поставите в ваш прибор, он исправно заработает, поскольку встроенный в прибор алгоритм ЕСС обязан(!) исправлять не менее 4-х ошибок на страницу (это паспортные характеристики данной NAND и прибор просто обязан справляться с таким количеством ошибок).

Случай 2:Чтение микросхемы NAND

Мы считали прошивку из исправной микросхемы, стоящей в приборе (напомню, мы получаем по 3 ошибки на страницу). Далее мы еще раз считывали прошивку. Мы опять получили 3 ошибки на страницу.

Рисунок 2.

Но ошибки не возникают в одних и тех же местах! При сравнении результатов 1-го и 2-го считывания может получиться до 6-ти ошибок на страницу. Это превысит допустимые 4 для данной микросхемы, но это вовсе не означает, что микросхема неисправна!

Случай 3:Копирование микросхемы NAND

Мы считали прошивку из исправной микросхемы, стоящей в приборе (получая по 3 ошибки на страницу). Далее записали полученную прошивку в чистую микросхему.

Рисунок 3.

При верификации получим по 3 ошибки на страницу. Это вроде бы меньше 4-х. Но заработает ли прибор? Не факт. Всего ошибок может быть до 6-ти на страницу (3 при считывании образца плюс 3 при работе микросхемы в приборе), но ЕСС прибора исправит только 4.

На самом деле, в реальной жизни, количество ошибок по страницам в микросхемах сильно колеблется. В новых микросхемах количество ошибок не превышает одной-двух, да и то не на каждой странице. Заявленное число ошибок (в нашем примере 4) это уже в сильно изношенной микросхеме. Беда только в том, что в ремонт с формулировкой «слетела прошивка» именно такие приборы и попадают.

7. Практический совет по выбору порога ошибок.

Можно порекомендовать простой алгоритм выбора количества допустимых ошибок при верификации (настройка порога толерантности):

Случай 1. Очень оптимистичный. У вас есть эталонная прошивка и она точно без ошибок.

Такую прошивку можно писать и верифицировать с порогом ошибок, заданным в документации на микросхему (во всех наших примерах – это 4).

Случай 2. Реальный. У вас нет эталонной прошивки.

Вы считываете прошивку из микросхемы. Чтобы ее можно было уверенно использовать, количество ошибок на страницу не должно превышать половины лимита (т.е. для нашего примера — это 2 ошибки). Далее вы пишете эту прошивку в микросхему. При верификации записанной микросхемы ошибок тоже не должно быть более 2-х.

Рисунок 4.

При соблюдении этих условий прибор заработает с очень высокой вероятностью (ЕСС прибора должно исправить 2+2=4 ошибки).

Чем больше вы ошибок получаете при считывании эталона и верификации записи, тем меньше вероятность того, что алгоритм ЕСС справится с исправлением ошибок и прибор заработает. Здесь уже как повезет. 🙂

8. «Ваш программатор полный отстой, вот другие программаторы решают эту проблему».

Нет. У других производителей программаторов (во всяком случае у всех, которые нам известны на данный момент) всё точно так же. Те же предложения: «Cкажите какой ЕСС и мы все реализуем».

Те же методы верификации с «терпимостью» ошибок ЕСС. У некоторых производителей есть настройка с выбором алгоритмов из встроенного стандартного набора, с необходимостью указания полинома, разметки страницы и кучи других параметров. В практической жизни это вам не сильно поможет.

9. «Я все прочитал и ничего не понял.
Вы сможете наконец что-то сделать, чтобы NAND читались «нормально»?»

Мы над этим работаем. До сих пор мы не оставляем надежды на создание способа автоматического восстановления алгоритма ЕСС (хакинга) только на основании анализа прошивки.

Понятно, что для всех случаев его создать никогда не удастся, но если нам удастся восстановить алгоритм ЕСС хотя бы в четверти случаев, мы будем просто счастливы.

Что для этого нужно? Присылайте нам свои считанные прошивки. Присылайте нам как можно больше считанных прошивок. Я знаю, что они для вас представляют ценность, но мы не собираемся их распространять или использовать как-то кроме их анализа на предмет ЕСС и таблиц плохих блоков. Если вы опасаетесь, можно скрывать название системы, в которой прошивка используется.

Всё что нас интересует — это название микросхемы, из которой прошивка считана. Для лучшей защиты своих интересов вы можете прислать прошивку не полностью. Если вы опасаетесь — не присылайте. Это только просьба.

Еще очень желательно знать марку контроллера NAND, используемого в системе или марку центрального процессора, то есть название микросхемы, к которой NAND подключена.

Собрав достаточную базу прошивок, я надеюсь, нам удастся «хакнуть» ЕСС и сильно облегчить вам работу с NAND.

Только совместными усилиями мы сможем добиться значительных результатов в работе!

4.95 (20)

Вы можете оценить статью

Все оценки, комментарии

Сергей [15 апреля 2023, 03:21:45]
Гость

★★★★★ Хорошее чтиво от бессоницы, в сон потянуло. NAND, ошибки чтения, алгоритм ECC, надо или не надо шить, а может на помойку телевизор выкинуть? Нет! Надо пора поспать, и потом снова шить!

Мамкин_пограмист [24 марта 2023, 03:41:00]
Гость

★★★★★ Друзья, Статья просто космос! Поставил бы все 100 звёзд! Я думал я просто тупой что не могу победить эти ошибки) и нагуглить нормальный алгоритм не получается чтоб реверснуть еццшку, а оно вон как выходит… буду значит и дальше своими силами) пока удается сократить количество ошибок с ≈30 до 4х на 2гигабитную флешку)) всем спасибо и успехов!))

Гость [22 марта 2023, 18:25:23]
Гость

Сообщение находится на модерации

Юрий [23 февраля 2023, 11:47:05]
Гость

★★★★★ Спасибо за разъяснение. Есть пропуски в моём понимании но в общем понятно.

[09 ноября 2022, 18:50:38]
Гость

★★★★★ И что, все флешки, которым мы доверяем свою инфу так нагло врут. ведь они на основе NAND памяти. да и SSD тоже NANDами напичканы. грустно как-то.

Алексей [14 октября 2022, 12:27:55]
Гость

★★★★★ Ни*** не понял! Но очень интересно! 🙂 Спасибо за статью. Стало более понятно.

Alex [24 сентября 2022, 13:59:53]
Гость

★★★★★ Очень интересная статья. Сейчас как раз борюсь с таким случаем — есть исправный модуль с NAND flash MT29F1G08ABAEAWP скачиваю с него прошивку, затем заливаю в другой модуль, но он не запускается, хотя сравниваю слитую прошивку и исправного модуля и слитую прошивку с модуля в который заливали исправную ( в HxD они одинаковые). В чем может быть косяк?

Михаил [14 декабря 2021, 20:14:03]
Гость

Илья [16 августа 2021, 14:36:09]
Гость

★★★★★ Очень нужная статья. Где продолжение?

Алексей [15 апреля 2021, 22:46:11]
Гость

★★★★★ Отличная статья, спасибо за полезную информацию.

Николай [11 апреля 2021, 15:16:07]
Гость

★★★★★ Очень познавательно, спасибо.

[26 февраля 2021, 12:47:06]
Гость

[21 февраля 2021, 16:43:42]
Гость

★★★★ Для меня слишком сложно, но все равно интересно.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *