Une application typique utilise un ensemble d'étiquettes sérialisées avec une mémoire EPC codée et une base de données qui relie les données EPC de l'étiquette aux identifiants d'actifs. Par exemple, une étiquette RFID encodée avec un code EPC 96 bits peut être associée à un serveur informatique de numéro de série spécifique, machine-outils, ou dispositif médical. Une hypothèse implicite dans la conception d'un système de suivi est que les étiquettes peuvent être lues de manière fiable, identifiant ainsi correctement l'actif.
toutefois, ce processus peut souffrir d'un problème appelé retournement de bit.
peu flip

étiquettes de gestion d'actifs
La grande majorité des étiquettes RFID sur le marché utilisent la mémoire EEPROM pour stocker les données d'identification. La charge stockée dans la cellule mémoire détermine la valeur de chaque bit dans les données EPC identifiées (c'est à dire., a charged memory cell can represent a “1”, while an empty cell can represent a “0”, et vice versa).
L'état d'une cellule mémoire peut devenir indéterminé dans deux situations potentielles. Pour la simplicité, we assume that a charged memory cell represents a “1”.
The memory cell “leaks”, la charge déposée lors de l'encodage se dissipe, provoquant le changement d'état de la cellule, so the bit changes from “1” to “0”
La cellule mémoire n'a pas été complètement chargée lors de l'encodage, and it is statistically possible for a partially charged cell to be read as a ‘0’ instead of a ‘1’†
†Techniquement, it is always possible for the charge bit to be interpreted as a ‘0’. toutefois, lorsque le seuil de charge spécifié est dépassé, la probabilité que cela se produise est très faible. Les détails statistiques dépassent largement le cadre de cette discussion.
Exemple de scène
Un exemple de scénario pourrait être que bin 1011 finit par changer en bin 1001 – most commonly a hex character “B” is changed to a hex “9”, qui apparaît comme une étiquette rétrodiffusant deux codes EPC. Par exemple, en utilisant le codage 96 bits:
E280 1170 EA21 7B2A 04C2 1181 et E280 1170 EA21 792A 04C2 1181
This is rarely observed — we don’t know of any reliable data on prevalence from any chip manufacturer — but with billions of RFID tags actually deployed, la possibilité ne peut être ignorée.
Comme un contrôle de santé mentale, considérer un taux d'échec ε de 10-6/cellule et l'utilisation d'une mémoire EPC étendue de 128 bits, qui est disponible dans de nombreuses puces RFID, qui, selon nous, est un taux d'échec plus élevé que celui généralement observé, mais le principe s'applique quel que soit le taux de change réel. A des fins de discussion, nous ignorerons tous les effets temporels (c'est-à-dire l'analyse du temps de défaillance). À ε = 10-6, environ 1 dans 7,812 on s'attend à ce que les balises présentent un retournement d'un seul bit; en outre, environ 1 dans 61.5 on s'attend à ce que des millions d'étiquettes présentent deux bits inversés, et environ 488 milliard 1 affichera trois bits inversés.
Détecter et corriger de manière fiable les retournements d'unités
Parce que le taux d'échec est si faible, des instances uniques de retournements de bits peuvent être détectées et corrigées de manière fiable.
The easiest way is to encode each bit as a triple and use the “rule of majority” method to determine the correct data. Dans ce cas, a single “1” is encoded as “111” and “0” is encoded as “000”. Si un bit du triple est retourné, the other two will “vote” to cover the wrong bit. Cette méthode est très robuste, car la perte de données nécessite le très, événement très improbable, le retournement de deux bits d'un triplet quelconque. Encore, compte tenu de notre exemple d'encodage 128 bits ci-dessus, la probabilité d'un retournement de 2 bits pour tout triplet, c'est à dire. perte de données irrécupérable, est:
~1/64 * (128/1,000,000) *(127/1000000) ~ 2.5 X10-10 ou ~ 1 part à 3.9 milliard.
C'est le produit de la probabilité que les premier et deuxième bits soient inversés sur une étiquette et la probabilité que le deuxième bit inversé soit l'un des bits adjacents dans un triplet particulier.
Dans la plupart des scénarios réguliers, la probabilité de corruption des données est très faible. toutefois, la capacité de stockage des données du tag est réduite des deux tiers, avec moins de 33% de la mémoire de balise disponible utilisée pour les données lorsque la mémoire 128 bits ne peut contenir que 41 bribes d'informations.
Détecter deux bits inversés
Il existe un moyen moins gourmand en mémoire pour détecter et corriger un seul bit inversé, ainsi que détecter (mais pas juste) événements avec une probabilité beaucoup plus faible d'une étiquette avec deux bits inversés.
Cela peut être fait en n'encodant pas directement la balise, mais en utilisant une modification d'un mode inventé à l'origine par Richard Hamming appelé SECDEC, ou Correction d'erreur simple Détection d'erreur double.
Ce mode utilise des bits de parité supplémentaires calculés sur la base des données de charge utile. Comme le nom le suggère, cet algorithme ne permet de corriger qu'un seul bit retourné, mais permet la détection d'un deuxième bit inversé. Les concepteurs de systèmes RFID doivent incorporer des ressources dans l'architecture pour gérer la situation moins courante de double retournement de bits sur une seule étiquette.