Brevet FR2569068A1 — publié le 19860214

i La présente invention concerne un appareil pour décoder des codes comprimés obtenus par codage de compression de bande, utilisé en télécopie ou en fichier d'images électronique. Dans un système classique de transmission d'image tel qu'un télécopieur ou un fichier d'images utilisant par exemple des disques optiques ou magnéti- ques, les données d'image sont comprimées pour réduire la quantité de données afin de réaliser une transmission ou un emmagasinement efficace à grande vitesse. Une telle compression de données est réalisée par ce qu'on appelle une conversion de code. Dans le procédé de codage modifié Hoffman (MH) qui est un procé- dé typique de compression de données, chaque bloc de points (pixels) consécutifs blancs ou noirs de l'image est rempla- ce par un autre code de compression. Un bloc de points apparaissant fréquemment est représenté par un code de compression d'une longueur de code plus courte,tandis qu'un bloc de points apparaissant moins fréquemment est représenté par un code de compression d'une longueur de code plus grande. De cette manière, toute l'image est représentée par un train d'autres codes d'un nombre inférieur de bits sur la base de la déviation de la fréquence des combinaisons de points. Dans le procédé de codage mentionné ci- dessus du type MH, un signal de fin de ligne (code EOL) indiquant la fin de chaque ligne est ajouté aux codes de compression représentant l'information d'image. Le code EOL ne représente pas l'information d'image mais est utilisé dans la commande de ligne du fonctionne- ment d'impression pour l'information d'image décodée ou pour détecter l'extrémité d'attaque des codes de compression à décoder. Ces dernières années on a développé des imprimantes à grande vitesse capables de former des images d'une grande qualité d'image telles que des imprimantes à faisceau laser utilisant un procédé élec- trophotographique,et on désire réaliser une régénération en temps réel d'une image comprimée au moyen d'une telle imprimante. Pour réaliser un tel décodage en temps réel et une reproduction d'image, il est essentiel d'établir une synchronisation exacte entre l'étape d'enregistrement de chaque ligne de l'imprimante et l'opération de décodage pour les codes de compression. Dans le procédé de codage MH, la correspon- dance entre chaque bloc de points et chaque code de compression est déterminée par une règle empirique, et la longueur de code des codes de compression n'est pas constante. En conséquence, lorsque l'on fait entrer plusieurs codes de compression d'une manière consécutive, il est nécessaire de séparer exactement les codes de compression de longueurs différentes de codes pour réaliser un décodage précis. Dans l'appareil classique de télécopie, un décodage à grande vitesse n'est pas nécessaire car le taux de transfert des signaux dans la ligne de trans- mission n'est pas élevé,et on ne s'attend pas à une qualité d'image très élevée. Pour cette raison, dans un tel télécopieur, le décodage pour des codes de com- pression entrés consécutivement est réalisé par un procé- dé de logiciel dans un micro-ordinateur à bas prix. Par contre, comme mentionné ci-dessus, on désire effectuer une reproduction en temps réel de l'image cprimnée en utilisant une imprimante à grande vitesse récemment développée capable d'une formation d'image de grande qualité telle qu'une imprimante à faisceau laser électrophotographique. Cependant, la vitesse de traitement d'une telle imprimante est supé- *rieure à 10 mégabits par seconde, ce qui ne peut être traité par un procédé de logiciel d'un micro-ordinateur. Par conséquent, le décodage classique à logiciel ne peut être appliqué à un tel cas dans une mesure appro- priée telle que l'utilisation d'une mémoire de page à semiconducteur. Comme mentionné ci-dessus, on ajoute un code de fin de ligne (EOL), dans le procédé de codage MH, aux codes de compression pour indiquer la fin de chaque ligne, et l'appareil récepteur réalise une syn- chronisation de ligne au moyen du code BOL. Ainsi, au cas o une erreur surviendrait dans l'opération de décodage pour une raison quelconque, le circuit de décodage fait repartir l'opération de décodage en détectant un code EOL lui succédant immédiatement. Le code EOL joue un rôle important dans l'opération de décodage et une détection erronée du code EOL induit une erreur dans le fonctionnement subséquent de décodage, ce qui empêche une reproduction exacte de l'image. Egalement, la longueur du code ou des codes constituant une ligne n'est pas constante car les codes de compression ont des longueurs de codes différentes comme mentionné ci-dessus. La détection du code EOL est rendue difficile par ce fait puisque l'intervalle entre deux codes EOL n'est pas constant. Egalement comme mentionné ci-dessus, le code EOL ne représente pas une information d'image. Ainsi, il n'est pas nécessaire de décoder le code BOL et c'est simplement une perte de temps de décoder avec une complication dans la logique de décodage. Comme des codes de compression représentent des nombres diffé- rents de points, ce qui nécessite des temps différents de reproduction d'image, il est difficile pour cette raison de déterminer la synchronisation de fourniture d'un code succédant à un circuit de décodage. Cependant, par exemple dans une imprimante incapable de fonctionne- ment intermittent, les données décodées doivent être fournies de façon continue du circuit de décodage à l'imprimante et l'opération de décodage des codes de compression doit être effectuée de manière correspon- dante. Le fonctionnement de décodage peut ne pas être effectué de la manière appropriée soit par un fonctionnementerroné du circuit de décodage lui-même, soit par atténuation du signal ou bruits extérieurs lors de la transmission des codes de compression. Dans un tel cas, le nombre des points ou longueur de parcours peut devenir différent du code de compression, de sorte que l'image enregistrée par les signaux d'images décodés peut être distordue. De plus, une erreur dans le décodage d'un code de compression modifie le fonctionnement de décodage pour les codes suivants,de sorte que cette erreur doit être réduite au minimum. Etant donné ce qui précède, l'un-des buts de la présente invention est de fournir un appareil de décodage de code d'image capable de coopérer de façon satisfaisante avec un appareil d'enregistrement d'image à grande vitesse pour obtenir un enregistrement d'image de grande qualité. Un autre but de la présente invention est de fournir un appareil de décodage de code d'image capable de décoder en temps réel des codes d'image pour fournir des signaux d'image de manière continue à l'appareil suivant. Un autre objet encore de la présente inven- tion est de fournir un appareil de décodage de code d'iia- ge capable de synchroniser effectivement l'opération de décodage des codes d'image avec l'opération d'impres- sion des informations d'image décodées. Un autre objet de la présente invention est de fournir un appareil de décodage de code d'image 2S69068 pouvant réaliser une opération de décodage en séparant de façon précise des codes d'image de longueurs de codes différentes. Un autre objet de la présente invention est de fournir un appareil de décodage de code d'image pouvant recevoir un code suivant à décoder en fonction de la caractéristique d'un code décodé. Un autre objet encore de la présente inven- tion est de fournir un appareil de décodage de code d'image capable de détecter de façon sûre le code de synchronisation de ligne utilisé comme référence, en particulier un tel code entré en compagnie de codes d'images de longueurs de codes variables, ce qui permet de réaliser une synchronisation exacte de l'opération de décodage. Un objet de la présente invention est de fournir un appareil de décodage de code d'image capable d'éviter les pertes de temps résultant du décodage du code de synchronisation de ligne de la mime manière que pour les autres codes d'images, ce qui permet de réaliser un décodage à grande vitesse. Un autre objet encore de la présente inven- tion est de fournir un appareil de décodage de code d'image capable de faire correspondre la réception et le décodage des codes d'image avec l'opération de reproduction d'image, ce qui permet de réaliser un fonctionnement de décodage à grande vitesse. Un objet de la présente invention est égale- ment de fournir un appareil de décodage de données d'images capable de réaliser un décodage exact même avec des données transmises depuis le milieu d'une ligne ou depuis le milieu d'un code. Un autre but de la présente invention est de fournir un appareil de décodage de code d'image capable d'identifier effectivement des erreurs dans le décodage de codes d'image. Un autre but de la présente invention est de fournir un appareil de décodage de codes d'image adapté à un décodage en temps réel des codes d'image. D'autres caractéristiques et avantages de la présente invention résulteront de la description détaillée qui va suivre de plusieurs formes de réalisa- tion et en référence aux dessins annexés sur lesquels' - la figure 1 est une représentation synoptiqoe montrant schématiquement une forme de réalisation de la présente invention; - la figure 2(A) est un tableau montrant le format d'emmagasinage des codes MH dans un circuit de mémoire 101; 15. - la figure 2(B) est un tableau montrant plusieurs codes MH consécutifs; - la figure 3 est une vue synoptique mon- trant un élément de décalage de bits; - la figure 4 est une vue synoptique mon- trant un circuit de décodage pour des codes MH. - les figures 5(A) et 5(B) sont des schémas de circuit montrant les détails du circuit de la figure 1; - la figure 6 bât un tableau de synchronisa- tion montrant la fonction de diverses parties du circuit de la figure 5; la figure 7 est un diagramme synoptique montrant un circuit de détection d'erreurs de décodage; - la figure 8 est une vue en perspective présentant un exemple de la structure d'une imprimante; - la figure 9 est une vue synoptique d'un circuit pour enregistrer le fonctionnement de l'impri- mante de la figure 8, - la figure 10 est une vue synoptique mon- trant un circuit de détection EOL; 2569068' - la figure 11 est un schéma de circuit montrant la structure d'une porte de détection montrée à la figure 10; et - la figue:c 12 est un schéma de circuit montrant une exemple d'un registre. La présente invention va maintenant être expliquée plus en détail en se basant sur les formes de réalisation préférées. En référence tout d'abord à la figure 1 qui montre une forme de réalisation de l'invention, on voit un circuit de mémoire 101 qui emmagasine des signaux d'image entrés par exemple à partir d'un lecteur permettant de lire une image photoélectriquement, ou un dossier électronique dans lequel il y a des images, ou une unité réceptrice pour recevoir des informations d'images par un canal de transmission tel qu'une ligne téléphonique. Le circuit de mémoire 101 est composé par exemple d'une mémoire vive (RAM) ou d'un circuit verrou et peut emmagasiner ce qu'on appelle des codes Hoffman modifiés, obtenus par une compression séparée de signaux d'images, sous une forme permettant des lectures succes- sives dans une unité de 16 bits ou un mot. La figure 2(A) montre un exemple d'emmagasinage des codes MH dans un circuit de mémoire 101. Bien que les codes MH aient une longueur de codes variable de deux bits au minimum à 13 bits au maximum, le train série de codes illustré à la figure 2(B) est converti sous forme parallèle de 16 bits nonobstent les longueurs variables de code. A la figure 2(B), WB et BB représentent respec- tivement des points blancs et noirs et un chiffre sui- vant immédiatement WB ou BB représente la longueur de parcours du code. Ainsi, WB8 par exempie est un code MH représentant des points blancs d'une longueur de parcours de huit. Sous ce format, l'extrémité de chaque mot de 16 bits ne correspond pas nécessairement à la séparation entre les codes MH. Le circuit de mémoi- re 101 est capable de libérer en parallèle les mots de manière successive en réponse à une commande externe. A la figure 1, on montre un multiplexeur ou sélecteur de données 102. Un registre 103 avec une entrée et une sortie parallèle de 28 bits réalise une fonction consistant à emmagasiner temporairement un code MH provenant du circuit de mémoire 101 par l'inter- médiaire du multiplexeur 102, et une fonction consistant à fournir un code MH déjà emmagasiné dans le registre 103 à une logique 104 de décodage de code MH, une mémoi- re morte ROM de décodage de code MH 105 etc., selon les explications ultérieures. Le multiplexeur 102 et le registre 103 constituent ce qu'on appelle des éléments de décalage de bits capables de décaler en série les données et de décaler en sauts n bits. L'élément de décalage de bits réalise une fonction sous la commande de signaux de sortie de la logique 104 de décodage de code MR et de la mémoire morte ROM 105 de décodage de code MH etc., comme expliqué ci-après, consistant à décaler les codes MH du nombre désiré de bits depuis le circuit de mémoire 101 et à emmagasiner ceux-ci dans le registre 103 sans égard pour la séparation entre les codes MH de la manière indiquée ci-dessus. La figure 3 montre la structure détaillée de l'élément de décalage de bits illustrant une condition dans laquelle un code MH WB8 (10011), représentant des points blancs d'une longueur de parcours de huit, a atteint une position de décodage en appliquant une commande appropriée aux codes MH montrés dans le circuit de mémoire 101 de la figure 2. Un état dans lequel le bit d'attaque d'un code MH est placé à une sortie CO ou bien le bit le moins significatif du registre 103 montré à la figure 3 est appelé une position décodable, cet état étant appelé ci-après un "état achevé de positionnement de tête' Dans les codes illustrés dans le registre 103 de la figure 3, le code MH WB8 représentant des points blancs d'une longueur de parcours de huit est un tel "état achevé de positionnement de tête". A la figure 1, la logique 104 de décodage de code MH (appelée ci-après simplement logique 104) décode quatre codes MH selon lesquels la longueur de parcours représentée par la code est plus courte que O10 sa longueur de code, c'est-à-dire les codes MH pour une longueur de parcours blanc de un (code MH "000111" avec une longueur de code de 6 plus grande que la longueur de parcours 1), une longueur de parcours blanc de deux (code MH "0111" avec une longueur de code 4 plus grande que la longueur de parcours 2), une longueur de parcours blanc de trois (mode MH "1000" avec une longueur de code 4 plus grande que la longueur de parcours 3) et une longueur de parcours noir de un (code MH "010" avec une longueur de code 3 plus grandeque la longueur de parcours 1). Dans la description suivante, les quatre codes MH mentionnés ci-dessus représentant des longueurs de parcours blanc de un, deux et trois, et une longueur de parcours noir de un seront appelés collectivement codes HSC. Sur la figure 1, la mémoire ROM 105 de décoda- ge de code MH est utilisée pour décoder tous les codes MH, y compris les quatre codes MH mentionnés ci-dessus à décoder par ladite logique 104. Les codes MH sont partagés entre la logique 104 et la mémoire ROM 105 en fonction de la vitesse et du procédé de traitement des codes MH. Ces deux décodeurs fournissent la longueur de parcours, la lon- gueur de code, la classification de la couleur d'image qui est noire ou blanche, et la présence ou l'absence 2569068- de codes d'appoint ou de codes de terminaison pour chaque code MH lorsque ledit code atteint l'état "achevé de positionnement de tête" dans le registre 103. Un circuit de détection EOL 112 détecte dans les codes MH emmagasinés en série dans le registre 103 la présence et la position du code EOL utilisé pour la synchronisation de ligne. A la figure 1, on voit un compteur 108 de longueur de parcours composé d'un compteur binaire capable de compter depuis un nombre "0" jusqu'à un nombre dépassant la longueur maximale de parcours "2560" du code d'appoint, et fournissant un signal de terminai- son de comptage (dans la présente forme de réalisation, un signal CR de report d'ondulation) lorsque la longueur de parcours des codes MH produits par la logique 104 ou la mémoire ROM 105 est comptée. Une bascule 109 inverse son signal de sortie chaque fois que le signal de terminaison de comptage (signal CR de report d'ondulation) est reçu du compteur 108 de longueur de parcours, mais elle est commandée de telle manière que l'inversion du signal de sortie n'a pas lieu en réponse à un signal de terminaison de comptage d'un code d'appoint, comme expliqué ci- dessous. Les signaux de sortie de ladite bascule 109 constituent les signaux d'image obtenus par le décodage des codes MH lus depuisle circuit de mémoire 101. Un compteur de longueur de code 107 est composé d'un compteur binaire capable de compter depuis un nombre "0" jusqu'à un nombre supérieur à la longueur maximale de code "13" du code MH. En cas de décharge d'un code MH, qui est dans l'état achevé de positionne- ment de tête dans le registre 103, à partir dudit regis- tre 103 par décalage série ou saut après décodage et décalage d'un code MH suivant vers un tel état achevé de positionnement de tête, l'amplitude dudit décalage est comptée et contrôlée par le compteur 107. Un accumulateur 106 de 4 bits compte les bits vides formés dans le registre 103 en déchargeant le code MH décodé et remplit le registre 103 ayant des bits vides avec un nouveau code MH de un mot ou 16 bits en parallèle en provenance du circuit de mémoire 101 lorsque le nombre des bits vides atteint 16 bits. De cette manière, on fournit un train de codes MH à partir du registre 103 vers la logique 104 ou la mémoire ROM 105 sans interruption, ce qui permet un décodage à grande vitesse. Un circuit de commande 110 commande les signaux d'entrée et de sortie des blocs 101-109 de la figure 1. De cette manière, on exécute le décodage des codes MH, à savoir la conversion des codes MH en signaux d'image. Les signaux d'image décodés sont four- nis à une imprimante 111 pour l'enregistrement d'image de chaque ligne d'une matière support dd'enregistrement. L'imprimante 111 produit un signal de synchronisation horizontal HSYNC à chaque opération de balayage et ledit signal est utilisé pour déterminer le moment de l'opération de décodage. On va maintenant donner cl-dessous une explication détaillée d'une forme de réalisation de la présente invention, fournissant ce qu'on appelle "un décodeur MH en temps réel à grande vitesse" qui est utilisé pour fournir les signaux d'image obtenus en décodant les codes MH comprimés, à une imprimante à grande vitesse telle qu'une imprimante à faisceau laser sans aucune mémoire d'image intermédiaire. Il est donc nécessaire de réaliser une vitesse de traite- ment élevée dans le décodeur MH et une synchronisation satisfaisante entre l'imprimante à grande vitesse et les signaux d'image de sortie du décodeur MH avec une fréquence supposée de 10 à 20 MHz. Un "décodeur MH en temps réel à grande vitesse" tel qu'on le désire peut être réalisé par un procédé de traitement expliqué ci-dessous dans lequel: (1) la synchronisation entre le décodeur MH et l'imprimante est réaliséepar le code EOL et le signal HSYNC de synchronisation horizontale produit par l'imprimante pour chaque ligne, et (2) pour décharger un code MH décodé, du registre 103 montré à la figure 1 et pour décaler un code MH suivant vers l'état achevé de positionnement de tête, on choisit soit un décalage série, soit un décalage par saut en fonction du code à décharger. Ci-dessous on explique une structure détail- lée pour atteindre les deux buts mentionnés ci-dessus. La figure 8 est une vue en perspective d'une imprimante à faisceau laser utilisée à titre d'exem- ple de l'unité de sortie. Cette imprimante est basée sur un processus électrophotographique utilisant un faisceau laser, dans lequel un tambour photosensible 201 est supporté rotativement dans un bottier Ha. Un laser à semiconduc- teur 202 émet un faisceau laser La qui est agrandi à un diamètre déterminé par un dispositif d'expansion de faisceau 203 et est introduit dans un miroir poly- gonal 204 ayant plusieurs faces de miroir et qui tourne à une vitesse déterminée au moyen d'un moteur 205, de sorte que le faisceau laser émergeant du dispositif d'expansion de faisceau 203 reçoit un mouvement de balayage dans une direction sensiblement horizontale et est focalisé au moyen d'une lentille de formation d'image 206 ayant une caractéristique f-O, en tant que point lumineux sur un tambour photosensible 201 chargé à l'avance à une polarité déterminée par un chargeur 213. Un détecteur de faisceau 207 détecte le faisceau laser réfléchi par un miroir 208 et on utilise le signal de détection résultant pour déterminer le moment de la modulation du laser à semiconducteur 202 pour fournir au tambour photosensible 201 des informa- tions optiques de la manière désirée. Le faisceau laser de balayage forme sur le tambour photosensible 201 une image électrostatique latente d'une grande puissance de résolution qui est rendue visible dans une unité de développement 209 et est ensuite transférée sur une matière d'enregistre- ment fournie par une cassette 210 ou 211. La matière d'enregistrement traverse une unité de fixation 212 pour fixer l'image ainsi transférée sur ladite matière, et la copie dure ainsi obtenue est déchargée vers une unité de décharge non représentée. La figure 9 montre un exemple d'un circuit d'imprimante pour moduler le faisceau laser du laser à semiconducteur montré à la figure 8, selon les si- gnaux d'image. Des signaux d'image VIDEO obtenus par décoda- ge et entrés depuis une borne d'entrée IN sont fournis alternativement pour chaque groupe de signaux correspon- dant à une ligne de balayage à un premier tampon de ligne 301 et à un second tampon de ligne 302, chacun étant composé par exemple par un registre de décalage d'un nombre de bits au moins égal au nombre de points d'une ligne de balayage, sous la commande d'un circuit de commande de commutateur de tampon 303. Les signaux d'image fournis au premier et au second tampon de lignes 301, 302 sont lus et fournis alternativement à un dispositif de commande du laser 305 en réponse à un signal-de déclenchement composé par le signal de détection de faisceau provenant du détecteur de faisceau 304. Le dispositif de commande de laser 305 contrôle la modulation du laser à semiconducteur 306 en commandant son émission en réponse aux signaux d'ima- ge d'entrée. L'utilisation de deux tampons de ligne permet de répondre de façon satisfaisante aux signaux d'entrée à grande vitesse car les signaux d'image peu- vent être stockés dans un tampon de ligne tandis que des signaux d'image déjà stockés peuvent être fournis par l'autre tampon de ligne au dispositif de commande de laser 305. Le signal de détection de faisceau provenant du détecteur de faisceau 304 est fourni aussi au circuit de décodage en tant que signal de synchronisation hori- zontale HSYNC et il est utilisé pour synchroniser le décodage avec l'enregistrement dans l'imprimante. Dans l'imprimante de la présente forme de réalisation, les signaux d'image décodés sont entrés au moyen de deux tampons de ligne constitués par le premier tampon de ligne 301 et par le second tampon de ligne 302 et cette double structure de tampon permet une fonction de correction pour le cas o une erreur aurait lieu lors du décodage. De façon plus précise, au cas o une erreur a lieu dans le décodage au cours du stockage de signaux d'image décodés dans un tampon de ligne, l'opération d'impression avec les signaux d'image stockés dans le tampon de ligne y compris ladite erreur est empêchée, et l'impression est exécutée avec les signaux d'image d'une ligne précédente déjà stockée dans l'autre tampon de ligne. De cette manière, l'effet non désirable sur l'image reproduite peut être évitée car les signaux d'image contenant des erreurs dans le décodage ne sont pas utilisés dans l'opération d'impression. Bien que cette fonction de correction produise au moins deux lignes d'image correspondant aux mêmes signaux d'image, de telles images doublées cependant ne modifient pas l'image reproduite de manière importante dans l'opéra- tion d'enregistrement d'une grande puissance de résolu- tion, par exemple 16 points/mm utilisée dans la présente forme de réalisation. A la figure 4, 105 correspond à la mémoire ROM de décodage de code MH montrée à la figure 1 et est en fait composé de plusieurs mémoires ROM. La mémoi- re ROM 105 comporte des bornes d'adresse ADO - AD13 et des bornes de sortie 00 - 011, et présente un format de mémoire tel qu'expliqué ci-dessous. Le bit de moindre poids (LSB) d'un mode MH à décoder fourni par le registre 103 est placé à une borne d'adresse ADO de la mémoire ROM 105 et les bits se suivant du code MH sont donnés respectivement de manière successive et de manière à adresser les bornes AD1 - AD11 de la mémoire ROM 105. Une borne d'adresse AD13 reçoit un signal B/W-ROM, -indiquant la couleur du code MH dans lequel "1" et "O" représen- tent respectivement le noir et le blanc. Au cas o le code MN est plus court que 12 bits, les bits défi- cier.ts sont négligés (NE PAS S'EN OCCUPER).o Le code EOL est traité comme un code d'appoint. Egalement, le bit de couleur (AD13) d'un code d'appoint ayant une longueur de parcours égale à ou plus grande que 1972 est négligé (NE PAS S'EN OCCUPER). La mémoire ROM 105 stocke le contenu des codes MH correspondant aux adresses définies de la manière ci-dessus et produit des signaux de sortie correspondant aux codes MH par l'intermédiaire des bornes de sortie 00 011. De façon plus particulière, une borne de sortie 00 produit un signal M/T qui est respectivement un "1" ou un "0" lorsque le code MH décodé est un code d'appoint ou un code de terminaison. Une borne de sortie 01 produit un signal TO qui est "0" lorsque le code MH est un code blanc avec une lon- gueur de parcours O (00110101) ou un code noir avec une longueur de parcours O (0000110111) ou bien "1" dans les autres cas. Les bornes de sortie 02 - 05 produisent des signaux de sortie à 4 bits CLO - CL3 représentant la longueur de code de chaque code MH en tant que complé- ment à deux, la borne de sortie 05 produisant le bit de moindre poids de ladite longueur de code. Des bornes de sortie 06 - 011 produisent des signaux de sortie de 6 bits RLO -RL5 représentant la longueur de parcours de chaque code MH en tant que complément à deux, la borne de sortie 011 produisant le bit de moindre poids de ladite longueur de parcours. Pour un code d'appoint, les six bits supérieurs seuls dans l'expression binaire de la longueur de parcours sont alloués aux bornes de sortie 06 - 011, étant donné que la longueur de parcours d'un code d'appoint dans le codage MH peut être représentée par les six bits supérieurs seuls. Une séquence 402 à la figure 4 montre à titre d'exemple les sorties 00 011 de la mémoire ROM 105 obtenues en décodant un code MH WB8 (10011) représentant des bits blancs d'une longueur de parcours de huit. Les codes MH utilisés dans la présente forme de réalisation sont obtenus selon le document "CCITT YELLOW BOOK", fascicule VII. 2 Rec. T.4 TABLE 1/T.4 et TABLE 2/T.4. A la figure 4, une logique 104 de décodage du code MH correspond à ce qui est montré à la figure 1 et est composée dans la présente forme de réalisation de portes ET et de portes OU. Un signal de sortie HSC de la logique 104 prend un état "O" lors de la détection d'un code HSC c'est-àdire un code MH blanc avec une longueur de parcours 1, 2 ou 3 ou un code MH noir avec une longueur de parcours 1. Des signaux de sortie SFO SF2 représentent les longueurs de code des quatre codes HSC mentionnés cidessus dans une expression binaire inversée. Une séquence 404 à la figure 4 montre à titre d'exemple les signaux de sortie obtenus en décodant un code MH blanc WB1 (000111) représentant une image blanche avec une longueur de parcours de un. Dans la présente forme de réalisation, un circuit logique est utilisé pour décoder les codes HSC car le procédé courant d'adressage de la mémoire ROM n'est pas capable de satisfaire à l'exigence d'un décodage à grande vitesse. On se réfère maintenant aux tableaux 1 et 2 ci-après pour expliquer la fonction de l'élément de décalage de bits montré à la figure 3. Un multiplexeur 102 montré à la figure 3 correspond à celui montré- à la figure 1 et il est composé de deux multiplexeurs 1021, 1022 à trois états. Lorsqu'une ligne de commande (C) de l'accumulateur 106 au multiplexeur 102 prend un état "0", des sorties A7 - A27 provenant du multiplexeur 1022 et allant vers le registre 103 sont à un état flottant et donc sont rendues inefficaces, et des sorties AO - A27 provenant du multiplexeur 1021 sont fournies effectivement au registre 103 de manière à dériver des signaux de sortie CO - C27. Dans cet état, le multiplexeur 1021 choisit les signaux SO - S27 entrés depuis le registre 103 sous la commande par des lignes d'entrée SO - S2 d'une manière illustrée au tableau 1. Par exemple, au cas o SO = S1 = 1 et S2 = O, les signaux de sortie C3- C27 du registre 103 sont reçus et sont fournis respecti- vement en tant que signaux de sortie A1 - A23. * Ensuite, lorsque la ligne de commande (C) vers le multiplexeur 102 prend un état "1", les signaux de sortie AO - A6 du multiplexeur 102 sont donnés par le multiplexeur 1021 sélectivement en réponse à l'état des lignes d'entrée SO - S2 d'une manière ressemblant au cas suivant lequel la ligne de commande (C) est dans un état "0". Les sorties A7 - A27 du multiplexeur 102 sauf celles marquées Y au tableau 2 sont données par le multiplexeur 1022, tandis que les sorties A7 A27 du multiplexeur 1021 sauf celles marquées Y au tableau 2 sont à l'état flottant et donc sont rendues inefficaces. Les sorties A7 - A27 fournies du multi- plexeur 1022 au registre 103 sont choisies, comme le montre le tableau 2, par des lignes d'entrée E 0 - Z2 mais les bits marqués Y au tableau 2 sont sélection- nés à partir du multiplexeur 1021. Le nombre desdits bits Y est déterminé en commandant l'état du multiplexeur 1021 par des lignes d'entrée ST7 ST11 donnant des signaux en coopération avec les lignes d'entrée Ez0- E2 allant vers le multiplexeur 1022. Les circuits des multiplexeurs 1021, 1022 montrés à la figure 3 peuvent être facilement réalisés avec le multiplexeur disponible commercialement, par exemple F215 fourni par la firme Fairchild, ainsi que des circuits associés. Les sorties AO - A27 choisies comme signaux de sortie vers le regis- tre 103 sont verrouillées dans le registre 103 en répon- se à un signal d'horloge CK. L'élément de décalage de bits décrit ci- dessus permet de décaler par un nombre arbitraire de bits le code MH fourni sous forme parallèle de 16 bits à partir du circuit de mémoire 101, ce qui amène le code MH d'une longueur de code variable à l'état "ache- vé de positionnement de tête" mentionné ci-dessus. TABLEAU 1 C 0 O O 0 0 O 0 0 S2 0 0 0 0 1 1 1 1 S1 0 0 1 1 0 0 1 1 S0 0 1 0 1 0 1 0 1 A0 C C C1 C2 C3 C4 C5 C6 C7 A1 C1 C2 C3 C4 C5 C6 C7 C8 A2 C2 C3 C4 C5 c6 C7 C8 C9 A3 C3 C4 C5 C6 C7 C8 C9 C10 A O A4 C4 C5 C6 C7 C8 C9 C10 il A5 C5 C6 C7 C8 C9 - C10 Cll C12 A6 c6 C7 C8 C9 10 Cll C12 C13 A7 C7 C8 C9 C10 C11 C12 C13 C14 A8 C8 C9 Co10 Cll C12 C13 C14 C15 A9 C9 10 Cil C12 C13 C14 C15 C16 A10 C10 Cl l C12 C13 C14 C15 C16 C17 Ail Cil 12 C13 C14 C15 C16 C17 C18 A12 C12 C13 C14 C15 C16 C17 C18 C19 13 C13 C14 C15 C16 C17 C18 C19 C20 14 14 15 c 6 C17 C18 C19 C20 C21 C15 C16 C17 C18 C19 C20 C21 C22 16 16 C17 C18 C19 C20 C21 - C22 C23 17 17 18 C19 C20 C21 C22 C23 C24 18 C18 C19 C20 C21 C22 023 24 25 19 19 20 C21 C22 C23 C24 C25 C26 C20 C21 C22 C23 C24 C25 C26 C27 A2 C21 21 21 22 C23 C24 C25 C26 C27 X A22 c22 C23 C24 C25 C26 -27 X A2 A223 C3 c24 C25 C26 C27 X X A C O C C X X X X 24 24 25 26 27 X X X A25 C25 C26 C27 X X X X X A26 C26 C27 X X X X X X A26 c26 c27 A27 C7 X X X X X X X X: NE PAS S'EN OCCUPER Exangoo is.s svad R&: x x x x x x SS E Lv X X X X XT 51s 9gv x x x x siE tTa 9Z X X X si VIE ETa SZE X X 1i tri úaE Z.El Zv 0O x1 sTa tla El a ZI il a aza LsE Elg ZlS il S 0I E ze ET ElZIS TTE úi E E E l oz Ev úI ZHL lia 01a 68 0 E ZLIaI 0OlE 6u 8a LE 61V SZ TiI 0 l 6E 8a El 9L. 8I 0OI 6a 8 La 9 LT 6E 8E La 9 a S 9 Ia 8a La 9 La t'a L E Siv LSa La 5E a' 0 El z O úa La X La Va -a Ti i' úa Za Ta 0a liv1 ú% Ze El E 0 El X À 01 v Z TE OI O A 6 0 xLv ú 0s X X X 8 0s X X X X L 9L V 01. v Tv I 0 I O I 0 O O0 I I 0 3 I I O O O O z I I I I I I D i fi7S'{IV 89O69szOZ 89069SZ Comme expliqué plus haut, l'identification des codes MH est réalisée en inspectant un train de codes se déplaçant dans le registre 103 et ledit mouve- ment est fait soit par un décalage série avec un décala- ge de bits en une fois soit par décalage en saut de six bits au maximum lors de la détection d'un code HSC au moyen de l'élément de décalage de bits 102. En d'autres termes, le train de codes dans le registre 103 est commandé de manière à déplacer seulement six bits ou moins dans une période d'horloge. En conséquence, lorsque le code EOL (000000000001) se déplace dans le registre 103, le bit de moindre poids apparaît toujours sur l'une des bornes CO - C5 du registre 103 même si l'amplitude de mouvement est erronée à cause d'une opération précé- dente. Dans le décodage des codes MH, le décodage du code EOL est très important en vue de toute la struc- ture de code. On explique ci-dessous en détail le cir- cuit de détection EOL 112 montré à la figure 1. Le code EOL non seulement indique la fin d'une ligne de l'image mais également a le rôle de définir les séparations dans les codes MH qui s'ensui- vent. Donc, une erreur dans la détection du code EOL dans le décodage mène immédiatement à une confusion dans les séparations des codes MH qui s'ensuivent. Par conséquent, il devient impossible de décoder l'image de ladite ligne et également de détecter les codes EOL dans les lignes suivantes en fonction du procédé de détection. Ainsi, une erreur donne lieu à une distor- sion dans l'image imprimée finalement dans une proportion telle que l'image est presque sans utilité. Il est donc essentiel d'adopter un procédé de détection EOL qui réduise l'erreur dans la détection des codes EOL même lorsque les codes MH contiennent quelques erreurs, ces erreurs étant par exemple des erreurs dans la, transmission ou dans la réception. L'erreur de décodage peut être restaurée après une ligne tant que les codes EOL sont détectés de façon sûsre. La figure 10 montre les détails du circuit de détection EOL 112 dans lequel six portes de détection 1001 sont fournies en parallèle, correspondant au décala- ge maximal de 6 bits en une fois dans le registre, afin de détecter le bit de moindre poids du code EOL de 12 bits (000000000001) à l'une des bornes CO - C5 du regis- tre 103. Lors de la détection du code EOL, la porte de détection 1001 produit un signal de détection OEOL - EOL indiquant la position du code EOL dans le registre 103. De cette manière le code EOL peut être toujours détecté à moins que le code EOL ne contienne un bit d'erreur. Par conséquent, les erreurs des codes d'ima- ge peuvent toujours être récupérées à l'intérieur d'une ligne. La probabilité de la présence d'un bit d'erreur dans le code EOL est bien plus faible que dans le code d'image étant donné le rapport des nombres de bits, et elle est pratiquement négligeable. La figure 11 montre les détails de la porte de détection pour détecter le code EOL o des données de 12 bits sont reçues en parallèle. Les données de 11 bits autres que le bit de plus grand poids sont fournies par des portes d'inversion INV et données en compagnie du bit de plus grand poids à une porte NON-ET 1002 de 12 entrées qui décode le code EOL et produit un signal de sortie de faible niveau en réponse à la détection d'un code EOL. Les signaux de sortie OEOL - 5EOL du circuit de détection EOL 112 montré à la figure 10 sont fournis au compteur 107 de longueur de code et à l'accumulateur 106. En réponse auxdits signaux, l'accumulateur 106 commande au registre 103 d'effectuer un décalage égal à la longueur de code du code EOL. Plus précisément, le circuit de détection EOL 112 montré -à la figure 10 peut détecter un code EOL lorsque le registre 103 contient encore un code MH ou fournit des bits en avant dudit code EOL. Par conséquent, au cas o le circuit de-détection EOL 112 produit l'un des signaux 1EOL - SEOL, c'est-à-dire autre que le signal OEOL, en réponse a un code EOL, l'accumulateur 106 ordonne au registre 103 d'effectuer un décalage de 12 bits qui est égal à la longueur de code du code EOL seulement après que les bits restant en avant du code EOL sont déchargés du registre 103 par le décalage mentionné ci-dessus. De cette manière, le code EOL est complète- ment déchargé et un code MH d'image d'attaque dans la ligne subséquente à décoder atteint l'état "achevé de positionnement de tête". En plus, il est possible d'éviter la perte de temps résultant du décodage du code EOL qui ne contient pas les informations d'image de la même manière que d'autres codes MH. On va maintenant donner ci-après une explica- tion détaillée de tout le schéma synoptique de la figure 1 en faisant référence principalement à la figure 5. Comme la fonction du circuit montré à la figure 5 est plutôt compliquée, on supposera certaines conditions pour plus de clarté et on expliquera la fonction de base dudit circuit pour le cas typique du décodage de code MH et ensuite on expliquera la base des condi- tions supposées. On prendra comme exemple un train de codes MH montré à la figure 2(B), ceis codes MH devant être décodés. Selon le principe de fonctionnement dudit circuit, un code EOL précédant les codes MH montrés à la figure 2(B) est déchargé du registre 103 par l'opé- ration de décalage mentionnée ci-dessus avant réception du signal de synchronisation horizontale HSYNC provenant de l'imprimante. On suppose donc qu'un code MH blanc WB8 d'une longueur de parcours de huit qui suit immédia- tement le code EOL et qui est le premier code d'image MH dans la ligne à décoder est dans l'état "achevé de positionnement de tête" dans le registre 103, en atten- dant le signal de synchronisation HSYNC de l'imprimante. La figure 6 est un schéma de synchronisation montrant les fonctions des pièces principales du circuit montré A la figure 5. Sur la figure 6, le signal de synchronisa- tion mentionné ci-dessus HSYNC 601 dans la direction principale de balayage de l'imprimante est produit pour chaque ligne de balayage et le moment dudit signal est pris comme un temps de référence TO. Un signal d'horloge de base CK 600 a la même fréquence que la fréquence d'image. Un signal de section VEN 602 définit la période d'image effective à l'intérieur de la ligne principale de balayage. iNi 603 est une impulsion qui précède immédiatement par un élément d'horloge ou un bit le signal de section VEN, et EOS 604 est l'impulsion finale d'horloge du signal de section VEN. En cas d'enregistrement des signaux d'image décodés des codes MH au moyen d'une imprimante à fais- ceau laser comme expliqué ci-dessus, le signal de syn- chronisation horizontal HSYNC est produit par le signal de détection de faisceau indiquant l'arrivée du faisceau laser à une position déterminée dans la ligne de balaya- ge de trame, et le signal de section VEN indique une section du tambour photosensible balayée par le faisceau laser pour une formation d'image latente. Comme on peut le voir d'après les explica- tions ci-dessus, la relation de temps entre les signaux 600 - 604 montrés à la figure 6 doit généralement être fixée selon des valeurs constantes. Dans la présente forme de réalisation, l'intervalle entre le signal HSYNC 601 et le signal iNi 603 est fixé à 64 éléments d'horloge. Egalement, la durée du signal VEN 602 indi- quant le nombre de points dans une ligne est définie comme étant 4096 bits ou points dans la forme de réalisa- tion décrite. Au temps tO à la figure 6, le circuit montré à la figure 5 est réglé à un état initial pour chaque balayage principal de la sortie d'image. En particulier, un code MH d'image d'attaque dans chaque ligne qui est un code MH blanc WB8 "10011" avec une longueur de parcours de huit est dans l'état "achevé de positionne- ment de tête" dans le registre 103, et les sorties CO - C12 (10011, 00010, 000 dans ce cas) du registre 103 sont fournies à la logique 104, à la mémoire ROM 105, etc. Dans cet état, le contenu du compteur de longueur de code 107 est égal à (-1) = (1111B), o (-1) est défini comme indiquant l'état "achevé de posi- tionnement de tête". Les bascules 510, 109 et 515 sont dans l'état de remise à zéro, tandis qu'une bascule 509 est à l'état de mise en fonction. L'état de mise en fonction (Q = 1) de la bascule 509 indique que le code EOL a été déchargé du registre 103 après détection du code EOL. Egalement, l'état de mise en fonction (Q = 1) de la bascule 510 indique qu'un verrou 513 de longueur de parcours est occupé, comme expliqué ci-après. Le signal de sortie Q de la bascule 515 constitue le signal B/W-ROM, indi- quant la couleur du code MH à décoder, noir à l'état de niveau 1 ou blanc à l'état de niveau 0. On suppose en outre que le compteur de longueur de parcours 108 est stoppé et a une valeur 0, Un signal SFTEN 605 sur la ligne de commande permet à l'état de niveau 1 au registre 103 de décaler les codes MH. Egalement dans un but de simplicité, on suppo- se que les signaux de sortie S0 - 2 et (C) de l'accumu- lateur 106 sont tous zéro, en indiquant que 28 bits du registre 103 sont tous remplis avec des codes MH effectifssans avoir des bits vides. Ce qui précède est l'état au moment tO. A un moment tl, le signal HSYNC 601 montré à la figure 6 est décalé vers le niveau inférieur pour remettre en fonction la bascule 509 montrée à la figure 5 et un signal EOLF 613 à la figure 6 prend le niveau 1 pour décaler le signal SFTEN 605 vers le niveau 1 par l'intermédiaire d'une porte ET 508, ce qui permet au compteur 107 de la figure 6 d'être habilité pour une opération de comptage. Simultanément, les bornes d'adres- ses de la mémoire ROM 105 reçoivent les sorties CO- C12 du registre 103 qui sont "10011XXXXX'XX" dans le présent exemple, et les sorties de longueur de code CLO - CL3 de la mémoire ROM 105 sont fournies au com- pteur 107 de longueur de code par les portes 503, 504. Au même moment, à cause de l'état de niveau -0 du signal CLD, le compteur 107 prend le mode de charge, de sorte que les valeurs des sorties CLO CL3 sont chargées dans le compteur 107. Dans le présent exemple, la charge est (-5), ce qui est un complément à 2 de la longueur de code (5) du code MH WB8. Les sorties RLO - RL5 et M/T de la mémoire ROM 105 sont fournies en tant que signaux d'entrée au verrou 513 de longueur de parcours qui reçoit égale- ment la sortie Q de la bascule 515 en tant que signal B/W-ROM 620. Dans cet état, un signal RLCH 608 prend un état de niveau 1 pour habiliter le verrou 513 de sorte que les valeurs DO - D7 soient verrouillées dans le verrou 513 en réponse à un élément d'horloge à tl. Simultanément, la bascule 510 est mise en fonction et la bascule 515 est inversée au moment tl. L'état de niveau 1 du signal occupé 609 fourni en tant que sortie Q de la bascule 510 indique que le verrou 513 verrouille la longueur effective de par- cours. Egalement, l'état de niveau 1 du signal B/W- ROM 620 fourni en tant que sortie Q de la bascule 515 indique qu'un code MH qu'on doit amener à l'état "achevé de positionnement de tête" dans le registre 103 a la couleur noire. Par contre, l'état de niveau O dudit signal 620 B/W-ROM indique la couleur blanche. Le signal SFTEN 605 est fourni par l'intermé- diaire des portes 505, 506 et il est donné en tant que signal SO au multiplexeur 102 pour provoquer un décalage de un bit des données du registre 103. De cette manière, le transfert de données du code MH qui a été dans l'état achevé de positionnement de tête dans le registre 103 est achevé et le décodage du code MH est terminé. Ainsi, l'opération de décalage de bits est effectué sous la commande du compteur 107 habilité par le signal SFTEN 605 jusqu'à ce qu'un signal CRO 606 de mise en oeuvre soit produit par le compteur 107, de sorte que le code MH décodé est déchargé du registre 103. Dans le présent exemple, le décalage à un bit du registre 103 est répété jusqu'à ce que la valeur du compteur 107 change de (-5) à (-1). Lorsque le compteur 107 atteint une valeur (-1), le code MH décodé (code MH blanc WB8 dans l'exem- ple présent) est déchargé et un code suivant qui est un code MH noir BB6 avec une longueur de parcours de six, atteint l'état "achevé de positionnement de tête" dans le registre 103, mais la bascule 510 reste dans l'état de mise en fonction car le verrou 513 retient 2-8 encore la longueur de parcours du code MH précédent WB8. Ainsi, lorsque le signal CR0 du compteur 107 prend l'état de niveau 1, la porte 511 produit un signal de niveau 0, de sorte que le signal SFTEN 605 soit décalé vers l'état de niveau 0 pour arrêter le compteur 107. De même, l'état de niveau 0 du signal SFTEN 605 décale tous les signaux SO - S2 vers zéro, de sorte que le registre 103 termine l'opération de' décalage pour y maintenir les données. En conséquence, l'état "achevé de positionnement de tête" du code BB6 continue jusqu'au moment t2. A ce moment t2, le signal iNi 603 décale le signal RLD 610 vers zéro, de sorte que la longueur de parcours retenue dans le verrou 513 qui est une longueur de parcours blanc de huit dans le présent exemple est transférée à un compteur 108 par l'intermé- diaire d'un multiplexeur 514. Au même moment, la bascule 510 est remise en fonction par le signal RLD 610, de sorte que le verrou 513 soit vidé et que l'état occupé soit annulé. Ainsi, une porte 511 libère un signal de niveau 1 pour décaler le signal SFTEN 605 vers l'état de niveau 1 comme expliqué ci-dessus, et la longueur de parcours de code MH dans l'état "achevé de positionne- ment de tête" dans le registre 103 est verrouillée dans le verrou 513. Les codes MH sont décodés en succession de cette manière. En réponse à la longueur de parcours, qui est -5 dans cet exemple, chargée dans le compteur 108 au moment t2, le compteur 108 démarre le comptage par le signal VEN 602 en partant d'un-bit suivant immédiate- ment le temps t2. Le compteur 108 libère un signal CR1 611 lorsqu'il atteint une valeur (-1) au moment t3 dans le présent exemple. En outre, la bascule 101 est mise en fonction selon la couleur de l'image dési- gnée par le signal 621 B/W provenant du verrou 513. De cette manière, le premier code MH a été converti en signaux d'image constitués par huit bits blancs dans le présent exemple. Après la montée du signal VEN 602, le signal iNi 603 reste à l'état de niveau O jusqu'à l'arrivée d'un nouveau signal 601 HSYNC. En conséquence, après la montée du signal VEN 602, par exemple à un moment t3, la bascule 510 est remise en fonction et libérée de l'état occupé par le signal 611 SR1, indiquant l'état de comptage vers le haut du compteur 108, au lieu du signal 603 iNi, de sorte que l'entrée de la longueur de parcours obtenue par le décodage du code MH suivant dans le verrou 513 est habilitée. Dans l'explication ci-dessus, on suppose que la longueur de code du code MH est plus faible que ou égale à la longueur de parcours de sorte que les codes MH peuvent être décodés sans interruption en décalant en série le code MH de l'état "achevé de positionnement de tête", avec les signaux SO = 1 et S1 = S2 = O vers le multiplexeur 102 pour décharger le code MH du registre 103. Cependant, si la longueur de parcours du code MH est plus courte que la longueur de code, le comptage de la longueur de parcours du code MH dans le compteur 108 sera achevé pendant la décharge de code provenant du compteur 103. Pour éviter toute interruption dans l'image, il est nécessaire de transférer la prochaine longueur de parcours du verrou 513 au compteur 108 en ce point. Cependant, le verrou 513 n'a pas reçu cette longueur de parcours de la mémoire ROM 105 puisque le code MH suivant n'a pas atteint l'état "achevé de positionnement de tête" dans le registre 103. Dans -un tel cas donc, la sortie d'image en temps réel n'est pas possible et l'enregistrement de l'image sur l'imprimante doit être interrompu. Ce désavantage a lieu au cas o on décode des codes HSC mentionnés ci-dessus, c'est-à-dire des codes MH blancs avec des longueurs de parcours 1, 2 et 3 et un code MH noir avec une longueur de parcours 1. Pour. cette raison, la logique 104 de décoda- ge du code MH est utilisée pour ces quatre codes HSC pour faire fonctionner les circuits subséquents comme si un décalage en série était fait avec les données de longueur de code CLO - CL3 provenant de la mémoire ROM 105. Plus particulièrement, la logique 104 produit une valeur de charge (-1) depuis le signal HSC et charge cette valeur dans le compteur 107 par la porte 504. Par ailleurs, les sorties CLO - CL3 de la mémoire ROM sont inhibées par le signal HSC au niveau d'une porte 503. De plus, la logique 104 libère des signaux de sortie SFO - SF2 indiquant un saut correspondant à la longueur de code du code MH décodé, ce qui commande le multiplexeur 102 de SO à S2. De cette manière, il est possible d'avoir un décalage de plusieurs bits pendant une période de un bit. En d'autres termes, un code à décoder juste après peut atteindre l'état "achevé de positionnemnent de tête" dans le registre 103 dans une période de un bit. L'amplitude du saut est également fournie à l'accumulateur 106 et ajoutée cumu- lativement au nombre de bits vides du registre 103. Les deux procédés de décalage expliqués ci-dessus sont utilisés pour répéter "le verrou de longueur de parcours" et "le comptage de longueur de parcours" depuis l'état "achevé de positionnement de tête", ce qui réalise l'opération de décodage sans- interruption dans l'image à fournir à l'imprimante. Le circuit de détection EOL 112 libère un signal 0- EOL lors de la détection du code EOL dans les sorties CO - Cll du registre 103. Lors de la détection du code EOL indiquant la fin d'une ligne par le circuit de détection EOL 112, le signal O-EOL est fourni par l'in- termédiaire d'un circuit de synchronisation 523 pour mettre en fonction la bascule 509,de sorte que le signal 613 EOLF est décalé vers zéro. Ainsi, le signal SFTEN 605 est décalé vers zéro de sorte que le registre 103 soit désactivé, ce qui fait que le code MH attend le signal HSYNC dans l'état "achevé de positionnement de tête". De cette manière, la synchronisation entre l'opération d'impression et le décodage est réalisée de manière satisfaisante. La reproduction d'image est achevée en répétant le balayage de ligne de la manière décrite ci-dessus. En référence désormais à la figure 7, on va expliquer le procédé pour détecter une erreur dans le décodage. Le circuit montré à la figure 7 est relié à une position appropriée dans le circuit montré à la figure 5 ou 7. A la figure 7, on montre un inverseur 801, un additionneur 802, un verrou 803, un comparateur 804, un verrou 805 et des bascules 806, 807. A la figure 8, un signal 820 est le même que le signal 820 produit & la figure 5 à partir du verrou 513 par l'intermédiaire du multiplexeur 514 et représente la longueur de trajet obtenue en décodant le code MH en tant que complément à deux. L'additionneur 802 et le verrou 803 consti- tuent un accumulateur. Le signal de report au bit de moindre poids de l'additionneur 802 est réglé à "un" par un signal 829 de sorte que la sortie 821 de l'addi- tionneur 802 devienne égale au complément à 2 de la longueur de parcours 820. En conséquence, le signal de sortie 821 est égal à une représentation binaire du nombre entier positif de ladite longueur de parcours. L'addition vers le verrou 803 est continuée au rythme du signal RLD 610, c'est-à-dire au rythme de charge de la longueur de parcours à compter dans le compteur 108 montré à la figure 5. Un verrou 803 est remis à zéro par le signal 601 HSYNC libéré pour chaque guide de balayage principal. Le signal de sortie du verrou 803 représente la valeur cumulative des longueurs de parcours dans chaque ligne dans le nombre binaire. Par ailleurs, le verrou 805 retient la longueur de parcours fixe de chaque ligne qui est 4096 dans le présent exemple correspondant au nombre de pointa dans une ligne et qui est reçue depuis une unité centrale de traitement CPU par un signal 824. Le comparateur 804 compare la longueur de parcours 822 "A" stockée dans le verrou 803 avec la valeur correcte 823 "B" dans le verrou 805. Si un signal 831 indiquant A = B n'est pas libéré du comparateur 804 à la libération du signal EOS 604 montré à la -figure 6, c'est-à-dire à la fin de chaque ligne, la bascule 806 est mise en fonction par un signal de sortie 825 provenant de la porte ET 808. En d'autres termes, l'état de mise en fonction de la bascule 806 indique que la valeur cumulative A des longueurs de parcours n'est pas égale à la valeur correcte anticipée B qui est 4096 dans le présent exem- ple, à cause d'une erreur dans les codes MH ou dans leur décodage. Si un état A > B a lieu, la bascule 807 est immédiatement mise en fonction, même au cours de l'accumulation des longueurs de parcours, par un signal de sortie 826 d'une porte ET 809 recevant un signal de sortie 832 du comparateur 804. Ainsi, la sortie Q de la bascule 807 indique que la valeur cumulative des longueurs de parcours est supérieure à la valeur correcte anticipée qui est de 4096 dans le présent exemple, déjà au cours d'une ligne, à cause d'une erreur importante dans le décodage d'une ligne. Les bascules 806, 807 sont remises en fonc- tion par l'état de niveau O du signal EOLF 613 montré à la figure 6, c'est-à-dire en réponse à la détection d'un code EOL par le circuit de détection EOL 112 et à la réception du signal HSYNC 601. En conséquence, le circuit de détection séparé EOL 112 est utilisé exclusi- vement pour détecter le code EOL en inspectant le signal de sortie 827 ou 828 des bascules 806, 807, ce qui réduit l'erreur de synchronisation résultant par exemple d'une erreur de décodage. Dans le présent exemple, les longueurs de parcours sont ajoutées cumulativement dans l'accumula- teur, mais il est également possible par exemple de soustraire les longueurs de parcours en succession depuis une valeur déterminée, par exemple 4096, et de détecter un état d'emprunt du compteur qui soustrait. En réponse à la mise en fonction de la bascule 806 ou 807 induite par une erreur dans le décoda- ge, on transmet un signal correspondant au circuit 303 de commande de commutateur de tampon dans l'impri- mante montrée à la figure 9. Le circuit 303 de commande de commutateur de tampon sélectionne les tampons de ligne doublée de l'imprimante pour alterner son entrée et sa sortie. En réponse au signal de mise en fonction, ou signal de détection d'erreur de décodage provenant de la bas- cule 806 ou 807, ledit circuit sélectionne le tampon de ligne de manière à invalider les signaux d'image d'une ligne contenant l'erreur de décodage et à lire les signaux d'image de la ligne précédente à nouveau depuis l'autre tampon de ligne pour utiliser à nouveau lesdits signaux d'image au lieu de la ligne contenant l'erreur. A titre d'exemple, au cas o une erreur de décodage apparaît dans le cours du stockage des signaux d'image décodés dans le premier tampon de ligne 301, les signaux d'image emmagasinés dans le premier tampon de ligne 301 sont invalidés et après achèvement de la lecture courante de signal provenant du second tampon de ligne 302, les mêmes signaux d'image sont lus à * nouveau à partir du second tampon de ligne 302. De cette manière, les signaux d'image d'une ligne contenant des erreurs sont exclus de l'opération d'impression pour éviter tout effet non désirable sur l'image reproduite. Le nombre desdits tampons de ligne dans l'imprimante peut dépasser deux, et les tampons de ligne de correction d'erreur peuvent être prévus dans le circuit de décodage. Comme expliqué ci-dessus, le décodage d'une image sous la forme de codes MH dans la présente forme de réalisation démarre par la détection d'un code EBOL précédant les codes MH, et est suivi du décodage des codes suivants constituant la première ligne de l'image. Bien que ceci ne soit pas montré aux figures, l'image codée MH est stockée par exemple dans une mémoi- re d'image présente en tête du circuit demémoire 101 montré à la figure 1 et est lue et fournie au circuit de déco- dage par l'intermédiaire du circuit de mémoire 101 en désignant une adresse de début de lecture dans la mémoire d'image,par exemple à partir d'une unité centra- le de traitement CPU. Dans un tel cas, les codes MH lus de la mémoire d'image ne sont pas nécessairement précédés par un code EOL,par exemple si la lecture d'image débute au milieu d'une page. Pour démarrer un décodage correct même dans un tel cas, le circuit de mémoire 101 montré à la figure 1 est mis à zéro avant le début de l'opéra- tion de décodage, ensuite les codes MH sont lus depuis la mémoire jusqu'à ce que le circuit de mémoire 101 devienne plein comme montré à la figure 2, et les codes MH sont ensuite transférés au circuit de décodage. Le circuit de décodage essaye seulement de détecter uncodeEOL en négligeant tout autre code d'image jusqu'à la détection d'un premier code EOL. Après la détection du code EOL, les cbodes subséquents sont manipulés comme information d'image et l'opération de décodage est effectuée en commandant le décalage en fonction de la longueur du code. De cette manière, la détection d'un premier code EOL avec le circuit 112 de détection EOL mentionné ci-dessus permet d'identifier les séparations des codes MH, ce qui donne une reproduction synchronisée de l'image. Dans le fonctionnement mentionné ci-dessus pour détecter le premier code EOL, si tous les bits du registre 103 sont égaux à "0', ils peuvent être combinés avec un code MHI ou une partie de celui-ci transmis depuis le circuit de mémoire 101 et reconnue de façon erronée comme un code EOL "000000000001" Pour éviter une telle détection erronée du code EOL, tous les bits CO - C27 du registre 103 ont un "'1" au début. Le procédé permettant de donner cette initia- lisation est expliqué ci-après.La figure 12 montre un exemple de la structure du registre 103 qui dans ce cas est composée de 28 bascules F/F. Ainsi, une impulsion pré- réglée 901 est fournie par exemple à partir d'une unité centrale CPU aux bornes préréglées de toutes les bascu- les pour décaler la sortie Q de toutes les bascules vers "1". La bascule peut être composée par exemple d'un élément SN74S74N fourni par la firme Texas Instruments, Inc. Bien que la forme de réalisation précédente ait été concentrée sur le décodage des codes MH, elle est également applicable au décodage de code comprimé par d'autres procédés. En outre, en plus de l'enregistre- ment d'image sur une imprimante telle qu'une imprimante à faisceaux laser, les signaux d'image obtenus par décodage peuvent être utilisés dans diverses applica- tions telles que l'affichage par exemple sur un tube à rayon cathodique ou un classement en tant qu'image de bit. Il est également évident que les chiffres mon- trés dans la forme de réalisation précédente ne sont pas fixes mais sont soumis à une sélection appropriée en fonction du but poursuivi par l'utilisation ou d'au- tres circonstances. Comme expliqué de façon détaillée ci-dessus, on peut ainsi décoder de façon fiable les codes compri- més et réaliser un décodage en temps réel qui est appro- prié même dans un traitement d'image à grande vitesse. On peut donc fournir une unité de sortie telle qu'une imprimante à grande vitesse pour obtenir un enregistre- ment d'image de grande qualité avec des signaux décodés de manière efficace. Egalement, un défaut d'émission ou de décodare des codes comprimés peut être détecté de façon fiable de manière à réduire l'effet résultant de ce défaut. De plus, dans l'impression des signaux d'image obtenus par le décodage des codes comprimés, une synchronisation satisfaisante est réalisée entre l'imprimante et l'unité de traitement des signaux. En outre encore, le code de synchronisation des lignes utilisées en tant que référence dans le décodage est détecté de façon fiable, ce qui évite les inconvénients liés à une erreur de synchronisation dans le décodage. Par ailleurs, même lorsque les codes compri- més sont fournis à partir du milieu d'une page ou d'une ligne au circuit de décodage, on peut exécuter de façon fiable la synchronisation dans le décodage, ce qui évite des erreurs lors de cette opération. REVENDICATIONS 1. Appareil de décodage destiné à décoder des codes d'image obtenus par un processus de compres- sion, caractérisé en ce qu'il comprend des moyens (102) pour accepter un code d'image à décoder à partir de plusieurs codes d'image entrés consécutivement, des moyens (104, 105) pour décoder le code d'image accepté par le moyen d'acceptation; et des moyens pour établir une discrimination afin de savoir si le code d'image accepté avec les moyens d'acceptation est un code parti- culier, l'opération d'acceptation par les moyens d'accepta- tion (102) pour un code d'image à décoder successivement subissant une variation en fonction du résultat de la discrimination des moyens de discrimination. 2. Appareil de décodage selon la revendica- tion 1, caractérisé en ce qu'il comprend des moyens (101, 103) pour stocker plusieurs codes d'image à entrer consécutivement, les moyens d'acceptation ac- ceptant un code d'image à décoder à partir du moyen de stockage. 3. Appareil de décodage selon la revendica- tion 1, caractérisé en ce que le code particulier est un code d'image ayant une longueur de code plus grande que la longueur de données décodées. 4. Appareil de décodage selon la revendica- tion 1, caractérisé en ce qu'il comprend des moyens pour enregistrer des images en réponse aux informations décodées provenant du moyen de décodage (104, 105). 5. Appareil de décodage selon la revendica- tion 1, caractérisé en ce que les moyens de décodage (104, 105) sont adaptés à réaliser le décodage de différen- tes manières pour lesdits codes particuliers et pour d'autres codes d'image. 6. Appareil de décodage destiné à décoder des codes d'image obtenus par un processus de compression, caractérisé en ce qu'il comprend des moyens (104, 105) pour décoder des codes d'image entrés en compagnie d'un code particulier indiquant la fin de chaque ligne, et des moyens pour enregistrer des images pour chaque ligne en réponse aux informations décodées provenant des moyens de décodage, de sorte que lesmoyens (104, 105) peuvent décoder des codes d'image suivant ledit code parti- culier en synchronisation avec l'enregistrement d'image de chaque ligne du moyen d'enregistrement (111). 7. Appareil de décodage selon la revendica- tion 6, caractérisé en ce qu'il comprend des moyens (101, 103) pour stocker les codes d'image en compagnie dudit code particulier, les moyens de décodage (104, ) étant adaptés à décoder les codes d'image lus du moyen de stockage. 8. Appareil de décodage selon la revendica- tion 6, caractérisé en ce que le moyen d'enregistrement (111) produit un signal de synchronisation synchronisé avec l'enregistrement d'image de chaque ligne, les moyens de décodage (104, 105) effectuant l'opération de décoda- ge en réponse au signal de synchronisation. 9. Appareil de décodage selon la revendica- tion 6, caractérisé en ce que le dispositif d'enregistre- ment comprend une imprimante à faisceau laser (111). 10. Appareil de décodage destiné à décoder des codes d'image obtenus par un processus de compres- sion, caractérisé en ce qu'il comprend des moyens (101, 103)-pour emmagasiner des codes d'image entrés en compa- gnie d'un code particulier indiquant la fin de chaque ligne, des moyens (104, 105) pour décoder les codes d'image lus du moyen de stockage, des moyens (102, 103) pour provoquer un décalage de la longueur de code du code d'image dans le moyen de stockage pour décharger le code d'image déjà décodé par les moyens de décodage (104, 105) depuis le moyen de stockage; et plusieurs moyens de détection (112) prévus en un nombre correspon- dant à l'amplitude de décalage maximal possible dans le moyen de stockage et destinés respectivement à détec- ter ledit code particulier. 11. Appareil de décodage selon la revendica- tion 10, caractérisé en ce que le moyen de décodage réalise l'opération de décodage en réponse à un signal de sortie de détection provenant du moyen de détection (112). 12. Appareil de décodage selon la revendica- tion 10, caractérisé en ce que lesdits moyens de détec- tion (112) peuvent détecter la position du code particu- lier emmagasiné dans les moyens de stockage (101, 103). 13. Appareil de décodage destiné à décoder des codes d'image obtenus par un processus de compres- sion, caractérisé en ce qu'il comprend des moyens (101, 103) pour stocker des codes d'image entrés en compagnie d'un code particulier indiquant la fin de chaque ligne, des moyens (104, 105) pour décoder des codes d'image lus à partir des moyens de stockage et des moyens (112) pour détecter le stockage du code particulier dans les moyens de stockage, de sorte que lors de la détec- tion du code particulier par les moyens de détection (112),celui-ci soit déchargé du moyen de stockage après un code d'image déjà décodé. 14. Appareil de décodage selon la revendica- tion 13, caractérisé en ce que le moyen de détection (112) peut également détecter la position du code parti- culier emmagasiné dans le moyen de stockage, et le moyen de stockage (101, 103) exécute une décharge pour ledit code particulier en fonction de la position de stockage ainsi détectée. 15. Appareil de décodage selon la revendica- tion 13, caractérisé en ce que le moyen de décodage réalise le décodage selon un signal de sortie de détec- tion du moyen de détection (112). 16. Appareil de décodage destiné à décoder les codes d'image obtenus par un processus de compres- sion, caractérisé en ce qu'il comprend des moyens (102) pour accepter un code d'image à décoder à partir de codes d'image entrés consécutivement, des moyens (104! ) pour décoder le code d'image accepté par le moyen d'acceptation, et des moyens pour régénérer des informa- tions d'image provenant des informations décodées du moyen de décodage, le moyen d'acceptation pouvant ac- cepter un code d'image à décoder juste après terminaison de la régénération des informations d'image provenant des informations décodées, au moyen du disposi- tif de régénération. 17. Appareil de décodage selon la revendica- tion 16, caractérisé en ce qu'il comprend des moyens pour enregistrer des images en réponse aux informations d'image provenant du moyen de régénération. 18. Appareil de décodage selon la revendica- tion 16, caractérisé en ce qu'il comprend en outre des moyens (101, 103) pour emmagasiner des codes d'image, le moyen d'acceptation (102) étant adapté à un code d'image à décoder en provenance du moyen de stockage. 19. Appareil de décodage destiné à décoder des codes d'image obtenus par un processus de compres- sion, caractérisé en ce qu'il comprend des moyens (101, 103) pour emmagasiner en série par bits plusieurs codes d'image entrés consécutivement, et des moyens (112) pour décoder des codes d'image lus à partir des moyens de stockage, des données particulières étant réglées dans le moyen de stockage avant stockage des codes d'image. 20. Appareil de décodage selon la revendica- tion 19, caractérisé en ce que les codes d'image compor- tent un code particulier indiquant la fin de chaque ligne. 21. Appareil de décodage selon la revendica- tion 19, caractérisé en ce qu'il comprend des moyens (102) pour accepter un code d'image à décoder par le moyen de décodage, en provenance du moyen de stockage. 22. Appareil de décodage selon la revendica- tion 19, caractérisé en ce qu'il comprend des moyens pour enregistrer des images en réponse aux informations d'image décodée en provenance du moyen de décodage. 23. Appareil de décodage destiné à décoder des codes d'image obtenus par un processus de compres- sion, caractérisé en ce qu'il comprend des moyens de décodage (104, 105) pour décoder des codes d'image et produire des données de longueur de parcours corres- pondant auxdits codes d'image, des moyens (108) pour ajouter cumulativement les données de longueur de par- cours en provenance des moyens de décodage, et des moyens de discrimination pour discriminer une erreur de décodage dans lesmoyens de décodage, selon que la valeur ajoutée obtenue par les moyens d'addition est dans une relation déterminée par rapport à une valeur déterminée. 24. Appareil de décodage selon la revendica- tion 23, caractérisé en ce que les moyens d'addition peuvent ajouter cumulativement les données de longueurs de parcours pour chaque ligne. 25. Appareil de décodage selon la revendica- tion 23, caractérisé en ce que le décodage des moyens de décodage (112) est commandé par le résultat de la discrimination effectuée par les moyens de discrimina- tion. 26. Appareil de décodage selon la revendica- tion 23, caractérisé en ce que les informations décodées de codes d'imagedans lesquels une erreur de décodage est détectée par le moyen de discrimination sont invali- dées.