Действующий
Рисунок 4 - Набор данных по ИСО/МЭК для относительного идентификатора объекта со значениями от 1 до 14
Большинство элементов данных, определенных в данной части ИСО 28560, имеют значение относительного идентификатора от 1 до 14. Они непосредственно кодируются в байт-предшественник (см. таблицу 6), что снижает требуемый для кодирования объем памяти.
Бит смещения в байте-предшественнике принимает значение "1", если только байт смещения записывается в радиочастотной метке. Пример использования байта смещения приведен в 7.4.5.4.
Байт-предшественник содержит только 4 бита для кодирования идентификатора объекта. Это дает возможность только для кодирования относительного идентификатора объекта со значениями от 1, который кодируют как 0001 , до 14, который кодируют как 1110 . Для значений идентификатора объекта от 15 до 127, из которых некоторые используются в данной части ИСО 28560, последние четыре бита байта-предшественника принимают значения 1111. Это означает, что относительный идентификатор объекта должен явно кодироваться как отдельный компонент (один байт) в наборе данных, как показано на рисунке 5.
Рисунок 5 - Набор данных по ИСО/МЭК для относительного идентификатора объекта со значениями от 15 до 127
Кодируемое значение относительного идентификатора объекта представляет собой значение со смещением на - 15. Это означает, что значение относительного идентификатора объекта 15 кодируется как 15-15 = 0 = 00 . Наибольшее значение относительного идентификатора объекта 127 может быть закодировано указанным способом как 127 - 15 = 112 = 70 .
В зависимости от требований применения один или более элементов данных может быть заблокирован. Аргумент блокировки объекта в команде приложения фактически сообщает, что весь набор данных должен быть заблокирован. Это позволяет избежать того, что одни компоненты будут неизменяемыми, а другие изменяемыми. В соответствии с описанием протокола радиоинтерфейса по ИСО/МЭК 18000-3 Mode 1, разрешается осуществлять блокирование поблочно. В общем случае любой набор данных, требующий блокировки, должен иметь такую схему расположения по блокам, что байт-предшественник должен быть в первом байте блока, и следующий набор данных также должен начинаться с первого байта блока. Правила кодирования приводят к необходимости перегруппировки данных и вставки байта смещения сразу за байтом-предшественником. Смещение задается нулевыми байтами (обычно со значением 00 , но 80 также допустимо), которые добавляются после последнего байта данных с уплотнением в конец до границы блока.
Каждое из значений байта-заполнителя или нулевых байтов имеет один и тот же статус. Значение, кодируемое в байте смещения, определяет число пропущенных байтов после данных с уплотнением для нахождения байта-предшественника следующего кодированного набора данных. Нулевой байт со значением 80 предпочтителен для минимизации числа операций радиоинтерфейса при изменении или удалении данных.
В процессе декодирования предполагается принимать радиочастотные метки с одним или другим кодированным значением байта-заполнителя и даже с различными значениями этих байтов на одной и той же метке.
Хотя вся обработка осуществляется автоматически программным обеспечением, реализующим правила кодирования по ИСО/МЭК 15962, следующие описания включены в стандарт для лучшего понимания некоторых фактов, которые необходимо принимать во внимание:
- если набор данных непосредственно предшествует набору данных, который должен быть заблокирован, но при этом сам он должен остаться разблокированным, правила кодирования требуют, чтобы этот набор данных заканчивался на границе блока. Это должно гарантировать, что при блокировке не будут затронуты завершающие байты незаблокированного набора данных. Данный процесс может привести к необходимости вставки байта смещения и изменения значения байта-предшественника;
- если два или более смежных наборов данных должны быть блокированы, выравнивание блока требуется только в начале первого заблокированного набора данных и в конце последнего заблокированного набора данных. Исходя из этого, должно быть понятно, что большая эффективность кодирования и меньшее число байтов могут быть получены при совместной группировке наборов данных, которые необходимо блокировать;
- если блок памяти заблокирован, он не может быть разблокирован или удален, набор данных в радиочастотной метке становится неизменным.
Независимо от того, один набор данных или несколько наборов данных должны быть закодированы, или есть набор данных, который необходимо добавить или изменить, кодируемые байты форматируются в логической памяти в структуру, соответствующую конкретной архитектуре радиочастотной метки. Поскольку размер блока и число блоков отличаются у разных производителей и даже у разных версий модели, это форматирование является важной особенностью правил кодирования для достижения совместимости радиочастотных меток. Это позволяет рассматривать любые радиочастотные метки в качестве кандидатов на использование для кодирования в соответствии с данной частью ИСО 28560, если для них заявлено соответствие ИСО/МЭК 18000-3 Mode 1, но они отличаются между собой в деталях, разрешенных стандартом радиоинтерфейса.
Пример 3 - Некоторые метки могут передавать несколько блоков по радиоинтерфейсу в операциях записи и чтения, другие только по одному блоку.
После заполнения логической памяти один или несколько блоков записываются через радиоинтерфейс. Любые блоки, требующие блокировки, отмечаются так, что устройство считывания вызывает последовательную серию команд блокирования радиоинтерфейса.
При считывании данных из радиочастотной метки логическая память заполняется блок за блоком. Декодирование радиочастотной метки с методом доступа без каталога производится последовательно по относительным идентификаторам объектов, но объекты данных нуждаются в декодировании, только если их относительные идентификаторы выбраны в команде приложения.
В ИСО/МЭК 15961-1 приведена команда, позволяющая считывать набор или наборы данных в первой позиции без считывания других данных радиочастотной метки. Эта команда должна использоваться для достижения более быстрых операций считывания наборов данных, расположенных в низшем блоке. Использование этой команды предназначено для начального считывания первичного идентификатора предмета учета и индекса идентификатора объектов.
Протокол радиоинтерфейса должен соответствовать ИСО/МЭК 18000-3 Mode 1, с требованиями, определенными в 8.1.2 и 8.1.5.
Идентификатор радиочастотной метки (определяемый как уникальный идентификатор радиочастотной метки) является обязательным компонентом для радиочастотных меток, соответствующих ИСО/МЭК 18000-3 Mode 1. Структура 64-битного кода, как это определено в ИСО/МЭК 18000-3, а конкретно параметр "М1-Р: 3b", определяет только первые 16 бит структуры этого кода. Радиочастотные метки по ИСО/МЭК 18000-3 Mode 1, для которых объявляется совместимость с данной частью ИСО 28560, должны предоставлять информацию для возможности определения устройствами считывания и приложениями следующих характеристик радиочастотной метки:
Постоянно публикуемый подкомитетом ИСО/МЭК СТК 1/ПК 31 (ISO/IEC JTC 1/SC 31) документ предоставляет эту информацию для различных моделей радиочастотных меток по ИСО/МЭК 18000-3 М1. Подробные ссылки на источники предоставлены на информационном сайте ИСО 28560 (см. А.1).
Радиочастотные метки по ИСО/МЭК 18000-3 Mode 1, совместимые с данной частью ИСО 28560, должны иметь в памяти определенное место для кодирования идентификатора AFI. Это место должно адресоваться в командах чтения, записи и блокировки. Адрес этого расположения может определяться производителем интегральной схемы, и его объявление не требуется для команд радиоинтерфейса.
Радиочастотные метки по ИСО/МЭК 18000-3 Mode 1, совместимые с данной частью ИСО 28560, должны поддерживать идентификатор DSFID одним из двух способов:
- предпочтительным является выделение в радиочастотной метке специального места в памяти, предназначенного для кодирования идентификатора DSFID. Это место должно адресоваться в специальных командах для записи, чтения и блокирования идентификатора DSFID. Адрес этого расположения может определяться производителем интегральной схемы, и его объявление не нужно для команд радиоинтерфейса;