Корзина
(нет товаров)
 
(495) 500-7890
На главную Программаторы Панельки Загрузка ПО Магазин Поддержка Поиск панельки Карта сайта

Это меню доступно только для микросхем NAND-Flash при подключенном программаторе ТРИТОН+ V5.7T или V5.8T.

Технология, по которой изготовлены микросхемы NAND-Flash, не может гарантировать отсутствие ошибок в процессе работы с микросхемой. Для исправления таких ошибок используются корректирующие коды. Обычно, в микросхемах NAND-Flash используются коды Хемминга (Hamming), Рида-Соломона (Reed-Solomon) и БЧХ (BCH). Код Хемминга, самый простой, позволяет исправлять одну битовую ошибку в блоке 256 или 512 байт. Код Рида-Соломона корректирует до 4 поврежденных байт в 512-байтном блоке. Коды БЧХ позволяют исправить до 64 ошибок в блоках от 256 до 4096 байт. Недостатком кода Хемминга является невозможность коррекции ошибки за пределами информационного блока, например в самом корректирующем коде, тогда как коды Рида-Соломона и БЧХ исправляют ошибки в любом месте страницы.

Программное обеспечение позволяет в процессе работы с микросхемой корректировать данные, принимаемые из программатора или загружаемые в него. При чтении микросхемы, программа вычисляет корректирующий код страницы и сравнивает его с кодом, считанным из микросхемы. Если коды отличаются, программа вычисляет адрес ошибки и исправляет ее. Это позволяет исправлять ошибки, которые могут возникать в микросхемах NAND-Flash, до того, как эти данные будут обработаны основной программой. При записи, программа проверяет записываемые данные, автоматически исправляя найденные ошибки, что позволяет писать в микросхему любой файл, без предварительной подготовки.

Алгоритм – позволяет выбрать алгоритм коррекции ошибок. Программа поддерживает основные коды коррекции ошибок: Хемминга, БЧХ и Рида-Соломона, а также предлагает режим Автокоррекции, для тех, кто не понимает о чем идет речь. В этом режиме программа пытается определить тип ECC, используемый в микросхеме, на основе имеющейся базы данных. Если алгоритм ECC определен, то программа выполняет чтение и запись микросхемы с проверкой и коррекцией ошибок. Если микросхема не содержит ECC или использует неизвестный алгоритм, или данные сильно повреждены, то программа выключает режим коррекции, и читает или пишет данные "как есть".

В режиме Автокоррекции пользователю доступна только одна опция, позволяющая выбрать, как программа будет обрабатывать массив данных: весь файл (All Data), с пропуском дефектных блоков (Skip BB) или с пропуском дефектных блоков и пустых страниц (Skip BB + EP). Необходимо отметить, что размещение маркера дефектного блока не всегда совпадает с тем, что написано в документации. Это касается не только сторонних разработчиков, но также и самих фирм, которые придумали эту спецификацию. В любом случае, алгоритмы, работающие в программе, достаточно умные и действуют по принципу, что лучше пропустить ошибку, чем повредить данные.

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

В остальных режимах пользователь может выбрать порядок обработки ECC при записи микросхемы, в параметре Запись ECC. Режим "None" - выбранный файл или данные из буфера пишутся в микросхему "как есть" без изменений. В режиме "Correct", также как при Автокоррекции, программа проверяет и исправляет ошибки перед записью данных в микросхему. В режиме "ReCalc" программа производит перерасчет ECC, в соответствии с выбранными настройками, после чего передает данные в программатор для записи микросхемы. Использовать этот режим нужно очень осторожно! Надо четко знать какой алгоритм и какие параметры ECC используются в устройстве, в противном случае устройство работать не будет.

При ручной настройке алгоритмов необходимо установить ВСЕ параметры, представленные в диалоге. Для этого считайте несколько блоков из микросхемы и посмотрите структуру данных в редакторе. Зная размер страницы и размер Spare области в микросхеме, посмотрев несколько непустых страниц можно определить, сколько байт отведено под ECC, по каким адресам они расположены и на каком расстоянии друг от друга. Количество байт ECC четко связано с размером страницы, типом алгоритма и количеством корректируемых ошибок.

Страница – задает размер логической страницы 256, 512, 1024 или 2048 байт, для которой будет рассчитываться ECC. Далее указывается размер Spare области, для каждой логической страницы. И третий параметр, это число логических страниц в физическом секторе микросхемы. Например, для микросхемы NAND с размером страницы равным 2112 байт (2048 + 64), наиболее часто используют следующие схемы разметки: 512 + 16 X 1 для первого и 512 + 16 X 4 для второго рисунка.

Адрес ECC задает начальный адрес первого байта ECC внутри логической Spare области. В данном примере, это девятый адрес. Плюс 16 байт - это Инкремент ECC, который задает смещение для следующего кода ECC. Для алгоритмов БЧХ и Рида-Соломона можно указать количество корректируемых ошибок и полином. Параметр Флаги определяет алгоритм обработки данных и порядок вывода ECC в Spare области. Прежде чем ввести новые данные в параметры микросхемы, программа проверяет их корректность и при необходимости выводит сообщение об ошибке.

ООО «ТЦ ТРИТОН»   (495) 500-7890