Технология RFID широко используется для маркировки активов в различных промышленных и государственных учреждениях..
Типичное приложение использует сериализованный набор тегов с закодированной памятью EPC и базой данных, которая связывает данные EPC тега с идентификаторами активов.. Например, RFID-метка, закодированная 96-битным кодом EPC, может быть связана с определенным серийным номером компьютерного сервера., станок, или медицинское устройство. Неявным предположением при разработке системы отслеживания является то, что теги можно надежно считывать., тем самым правильно идентифицируя актив.
тем не мение, этот процесс может страдать от проблемы, называемой переключением битов..
бит флип
Подавляющее большинство меток RFID на рынке используют память EEPROM для хранения идентификационных данных.. Заряд, хранящийся в ячейке памяти, определяет значение каждого бита в идентифицированных данных EPC. (то есть, заряженная ячейка памяти может представлять собой “1”, в то время как пустая ячейка может представлять “0”, наоборот).
Состояние ячейки памяти может стать неопределенным в двух возможных ситуациях.. Для простоты, мы предполагаем, что заряженная ячейка памяти представляет собой “1”.
Ячейка памяти “утечки”, заряд, накопленный при кодировании, рассеивается, вызывая изменение состояния клетки, поэтому бит меняется с “1” к “0”
Ячейка памяти не была полностью заряжена во время кодирования, и статистически возможно, что частично заряженный элемент можно считать ‘0’ вместо «1»†
†Технически, бит заряда всегда можно интерпретировать как ‘0'. тем не мение, при превышении указанного порога зарядки, вероятность этого очень мала. Статистические детали выходят далеко за рамки данного обсуждения..
Пример сцены
Примером сценария может быть этот контейнер 1011 в конечном итоге меняется на мусорное ведро 1001 – чаще всего шестнадцатеричный символ “В” меняется на шестнадцатеричный “9”, который выглядит как метка, отражающая два кода EPC.. Например, с использованием 96-битной кодировки:
Е280 1170 ЕА21 7Б2А 04С2 1181 и Е280 1170 EA21 792A 04C2 1181
Это редко наблюдается — мы не знаем достоверных данных о распространенности ни от одного производителя чипов — но фактически развернуты миллиарды RFID-меток, возможность нельзя игнорировать.
В качестве проверки здравомыслия, рассмотрите частоту отказов ε 10-6/ячейку и использование 128-битной расширенной памяти EPC., который доступен во многих чипах RFID, мы считаем, что это более высокий уровень отказов, чем обычно наблюдается, но принцип применяется независимо от того, каков реальный обменный курс. В целях обсуждения, мы будем игнорировать любые временные эффекты (т.е. анализ времени отказа). При ε = 10-6, примерно 1 в 7,812 ожидается, что теги будут демонстрировать однобитовый переворот; кроме того, примерно 1 в 61.5 Ожидается, что миллионы тегов будут содержать два перевернутых бита., и примерно 488 миллиард 1 покажет три перевернутых бита.
Надежное обнаружение и исправление переворотов устройства
Потому что процент отказов настолько низок, отдельные случаи переворота битов могут быть надежно обнаружены и исправлены.
Самый простой способ — закодировать каждый бит тройкой и использовать “правило большинства” метод определения правильных данных. В таком случае, один “1” кодируется как “111” а также “0” кодируется как “000”. Если один бит тройки перевернут, два других будут “голосование” чтобы скрыть неправильный бит. Этот метод очень надежный, поскольку потеря данных требует очень, очень маловероятное событие, переворот двух бит любой тройки. Снова, учитывая наш пример 128-битной кодировки выше, вероятность 2-битного переворота для любого одного триплета, т.е.. безвозвратная потеря данных, является:
~1/64 * (128/1,000,000) *(127/1000000) ~ 2.5 Х10-10 или ~ 1 участие в 3.9 миллиард.
Это произведение вероятности того, что первый и второй биты на метке перевернуты, и вероятности того, что второй перевернутый бит является одним из соседних битов в конкретной тройке..
В большинстве обычных сценариев, вероятность повреждения данных очень мала. тем не мение, емкость хранения данных тега уменьшается на две трети, с менее чем 33% доступной памяти тегов используется для данных, когда 128-битная память может хранить только 41 кусочки информации.
Обнаружить два перевернутых бита
Существует менее ресурсоемкий способ обнаружения и исправления одного перевернутого бита., а также обнаружить (но не правильно) события с гораздо меньшей вероятностью тега с двумя перевернутыми битами.
Это можно сделать, не кодируя тег напрямую., но с использованием модификации режима, первоначально изобретенного Ричардом Хэммингом, под названием SECDEC., или Исправление одиночной ошибки. Обнаружение двойной ошибки..
В этом режиме используются дополнительные биты четности, рассчитанные на основе данных полезной нагрузки.. Как подсказывает название, этот алгоритм позволяет исправить только один перевернутый бит, но позволяет обнаружить второй перевернутый бит. Разработчики систем RFID должны включать в архитектуру ресурсы, чтобы справиться с менее распространенной ситуацией двойного переворота битов на одной метке..