Dans le code en ligne NRZ, pour non-return-to-zero en anglais, le bit 1 est représenté par un état significatif (par exemple, une tension clairement positive), et le bit 0 par un autre état significatif (par exemple, une tension clairement négative). Il n'existe pas d'état intermédiaire.

Règles de codage modifier

 
La séquence 1110001101 codée NRZ.

Le codage est à deux états : le signal se trouve dans un état (par exemple à l’état haut) lorsque des 1 logiques sont transmis, et dans l'autre état (à l’état bas dans l'exemple) lorsque des 0 logiques sont transmis. Ces deux états correspondent à deux niveaux de tension symétriques par rapport à 0. L'exemple utilisé ci-contre n'est pas la règle générale : l'état haut ne correspond pas toujours au 1 logique. Notamment dans le cas de la liaison série RS-232, le 0 est codé +12 V et le 1 est codé −12 V.

Utilisation modifier

Le codage NRZ est souvent utilisé entre l’ordinateur et ses périphériques, par exemple par V.24, ou par la liaison série RS-232.

Avantages modifier

Compréhension facile. Ce codage est très facile à mettre en œuvre.

Inconvénients modifier

 
Une suite de 00000... difficiles à compter.

Une inversion de fils au raccordement provoquerait une erreur d’interprétation (inversions d'état). Pour cette raison, des codes différentiels (NRZM ou NRZI) peuvent être préférés.

Il n’a pas de transition générée lors d’une longue séquence de 1 ou 0, ce qui rend la synchronisation difficile, voire impossible. Dans l’exemple ci-dessous, combien de 0 doivent être transmis ? Pour cette raison, le codage Manchester est préféré dans les cas où le flux à coder peut contenir de longues séquences de 0 ou 1 contiguës comme sur un réseau ethernet. Sur le bus CAN, on utilise la méthode du « bit stuffing » (on change d’état au bout de 5 bits identiques consécutifs).

Diagramme de l'œil caractéristique modifier

Liens externes modifier

Sur les autres projets Wikimedia :