Non Return to Zero Inverted
Le codage NRZI, Non Return to Zero Inverted en anglais, est une variante du codage Non Return to Zero (NRZ). Le inverted (inversé) fait référence au code Non Return to Zero Mark (NRZM) créé en premier. On trouve également la notation NRZS (S pour Space) à la place de NRZI.
Règles de codage
Le NRZI contrairement au NRZ crée une transition d'état si le bit est 1, et reste à l'état précédent si le bit est 0.
Le codage est à deux états. Il n'existe pas d'état intermédiaire.
Utilisation
Le bus USB utilise le codage NRZI[1]. Le 0 a été choisi comme élément de changement. Pour éviter la perte d'horloge évoquée ci-dessous, un 0 est envoyé après six 1 consécutifs. Le récepteur doit prendre en compte ces éléments de remplissage (stuffing).
Attention toutefois, cela peut être l’inverse. Un 1 est alors envoyé après six 0 consécutifs. D'où l'importance que l'émetteur et le récepteur s'accordent sur la même logique.
Avantages
Facile à mettre en œuvre, bonne utilisation de la bande passante.
Inconvénients
Pas de transition créée lors d'une longue séquence de 0, donc synchronisation difficile, voire impossible. On préférera donc plutôt la méthode de codage Manchester.
Notes et références
- (en) Norme USB.