(19)
(11) EP 0 174 678 A2

(12) DEMANDE DE BREVET EUROPEEN

(43) Date de publication:
19.03.1986  Bulletin  1986/12

(21) Numéro de dépôt: 85201296.2

(22) Date de dépôt:  09.08.1985
(51) Int. Cl.4H04B 3/23
(84) Etats contractants désignés:
BE CH DE FR GB IT LI NL SE

(30) Priorité: 17.08.1984 FR 8412916

(71) Demandeur: TELECOMMUNICATIONS RADIOELECTRIQUES ET TELEPHONIQUES T.R.T.
75013 Paris (FR)

(72) Inventeur:
  • Ferrieu, Gilbert Marie Marcel
    F-75007 Paris (FR)

(74) Mandataire: Chaffraix, Jean et al
Société Civile S.P.I.D. 156, Boulevard Haussmann
75008 Paris
75008 Paris (FR)


(56) Documents cités: : 
   
       


    (54) Annuleur d'écho utilisant la modulation delta


    (57) Cet annuleur d'écho destiné à annuler un signal d'écho [g(t)] engendré dans une voie émission (7) par un signal [f(t)] appliqué à une voie émission (1) comporte un circuit de soustraction (9) dont la borne positive reçoit un signal déduit du signal d'écho et la borne négative le signal de sortie d'une filtre transversal (10) muni d'un dispositif (12) pour régler ses coefficients de façon qu'à la sortie du circuit de soustraction (9) la composante due au signal d'écho soit annulée. Selon l'invention, cet annuleur d'écho comporte un codeur delta (14), pour coder à la fréquence 1/T le signal f(t) entrant dans la voie réception (1) et pour fournir à l'entrée du filtre transversal (10) un signal codé en delta (ΔFn), un circuit (22) pour former à la fréquence 1/T le signal d'écart (dn) entre deux échantillons consécutifs du signal entrant dans la voie émission (7) et appliquer ce signal à la borne positive du circuit de soustraction (9). enfin un circuit intégrateur (13) connecté à la sortie du circuit de soustraction (9) et fournissant le signal de sortie de la voie émission (7).
    Application: annulation d'écho dans les circuits téléphoniques.


    Description


    [0001] L'invention concerne un annuleur d'écho destiné à annuler un signal d'écho engendré dans une voie émission par un signal applique à une voie réception, cet annuleur d'écho comprenant un circuit de soustraction recevant sur sa première borne d'entrée un signal déduit du signal entrant dans la voie émission et sur sa deuxième borne d'entrée le signal de sortie d'un filtre transversal recevant un signal déduit du signal appliqué à la voie réception et muni d'un dispositif de réglage de ses coefficients à régler pour annuler la composante due au signal d'écho dans le signal de sortie du circuit de soustraction.

    [0002] Un signal d'écho peut être produit par exemple par des imperfections d'un circuit de couplage deux fils/qua- tre fils disposé dans un central téléphonique pour coupler une voie émission et une voie réception formant ensemble un circuit quatre fils à une ligne téléphonique d'abonné. Une autre origine possible de signal d'écho réside dans un couplage acoustique entre le microphone et le haut-parleur d'un poste téléphonique. Quelle que soit son origine, on peut considérer le signal d'écho créé dans la voie émission comme la réponse d'un trajet d'écho au signal transmis par la voie réception. Pour annuler ce signal d'écho parasite qui peut perturber la réception chez un abonné lointain du signal utile transmis par la voie émission, il est connu d'utiliser un filtre transversal connecté à la voie émission et dont les coefficients sont réglés dans un circuit de réglage pour que la réponse du filtre soit aussi voisine que possible de celle du trajet d'écho, de façon que par soustraction du signal de sortie du filtre au signal entrant dans la voie réception, le signal d'écho soit pratiquement annulé à la sortie de la voie réception.

    [0003] Une limitation de l'emploi des annuleurs d'écho dans les circuits téléphoniques réside dans la complexité des calculs à effectuer. On sait que dans le filtre transversal de l'annuleur d'écho doit être effectuée, à chaque instant d'échantillonnage de son signal d'entrée, une sommation d'un certain nombre d'échantillons de ce signal d'entrée, multipliés préalablement par des coefficients à régler pour être les plus proches possibles d'échantillons de la réponse impulsionnelle du trajet d'écho. Les coefficients du filtre sont réglés généralement suivant l'algorithme du gradient, pour minimiser la valeur quadratique moyenne du signal sortant du circuit de soustraction, ce qui se traduit par un réglage des coefficients par récurrences successives, suivant une formule de récurrence décrite par exemple dans un article de Tanaka et Al intitulé "A Multichannel Echo Canceller System" et paru dans IEC Research and Development, N° 49, Avril 1978, pages 58-64. Suivant cet algorithme, le terme de modification de chaque coefficient à chaque récurrence résulte d'une multiplication d'un échantillon du signal d'erreur constitué par le signal de sortie du circuit de soustraction par l'un des échantillons du signal d'entrée stockés dans le filtre, et d'une division du produit ainsi formé par la somme des carrés d'un certain nombre d'échantillons du signal d'entrée du filtre. Comme les coefficients du filtre doivent être déterminés avec précision, il est clair que les multiplications à réaliser dans le filtre et son circuit de réglage sont des opérations complexes et coûteuses, si le signal appliqué à l'entrée du filtre et provenant de la voie réception est codé en MIC suivant une loi linéaire ou même suivant une loi pseudo-logarithmique (loi A ou loi p) comme cela est pratiqué jusqu'à présent : voir par exemple à ce sujet l'annuleur d'écho décrit dans le brevet des USA N* 4 064 379, dans lequel le signal analogique transmis par la voie réception est converti en signal MIC pseudo-logarithmique loi A, pour être traité dans l'annuleur d'écho.

    [0004] La présente invention a pour but de fournir un annuleur d'écho dans lequel les calculs à effectuer dans le filtre transversal et son circuit de réglage sont considérablement simplifiés par rapport à ceux requis dans les annuleurs d'écho connus.

    [0005] Conformément à l'invention, un annuleur d'écho destiné à annuler un signal d'écho engendré dans une voie émission par un signal appliqué à une voie réception comporte :

    - un codeur delta pour coder en delta, à la fréquence d'échantillonnage 1/T, le signal appliqué à la voie réception et pour fournir à l'entrée du filtre transversal les éléments binaires du signal codé en delta,

    - un circuit formeur de différence pour former, à la fréquence d'échantillonnage 1/T, le signal d'écart entre les valeurs de deux échantillons consécutifs du signal entrant dans la voie émission et pour diriger ce signal d'écart vers la première borne d'entrée du circuit de soustraction,

    - enfin, un circuit intégrateur pour intégrer le signal de sortie du circuit de soustraction et pour appliquer le signal intégré à la borne de sortie de la voie émission.



    [0006] Le signal de sortie de la voie réception et appliqué au trajet d'écho peut être le signal appliqué à cette voie réception, mais de préférence ce signal de sortie est fourni par le décodeur local présent dans le codeur delta.

    [0007] Dans ce cas, il est avantageux que le signal sortant de la voie réception soit appliqué à un filtre coupant les fréquences plus élevées que la fréquence supérieure de la bande du signal appliqué à la voie réception.

    [0008] Les coefficients du filtre transversal peuvent être réglés par récurrences successives suivant l'algorithme du gradient. Dans ce cas, le circuit de réglage des coefficients du filtre transversal est muni de moyens pour régler les coefficients hi par récurrences successives à la fréquence d'échantillonnage 1/T, selon la formule de récurrence :

    i entier allant de 0 à p, pT étant la durée de la réponse impulsionnelle du trajet d'écho,

    hi(n) étant les coefficients du filtre à modifier à un instant nT,

    hi(n + 1) étant les coefficients du filtre modifiés et utilisables à l'instant (n + 1)T,

    en étant la valeur du signal fourni par le circuit de soustraction à l'instant nT,

    ΔFn-i étant les valeurs des éléments binaires du signal codé en delta, stockés dans le filtre transversal et entrés dans ce filtre aux instants (n - i)T.



    [0009] Si l'on utilise un codeur delta à échelon de codage variable, on peut en tenir compte en insérant à la sortie du filtre transfersal un circuit multiplicateur par l'échelon de codage tandis que le circuit de réglage des coefficients du filtre transversal est en outre muni de moyens de multiplication pour multiplier les coefficients formés selon la formule de récurrence précitée, par


    δfn, δfn+1, δfn-i, δfn-i+1 étant les valeurs de l'échelon de codage respectivement aux instants nT, (n + 1)T, (n - i)T, (n - i + 1)T, les coefficients hi(n + 1) résultant de cette multiplication étant les coefficients modifiés, utilisables à l'instant (n + 1)T.

    [0010] Les coefficients du filtre transversal peuvent être aussi calculés suivant une méthode "statistique". Dans ce cas, le circuit de réglage des coefficients du filtre trans- versai est muni de moyens pour calculer les coefficients hi du filtre selon l'expression :


    q étant un nombre entier tel que q<n, dn-j étant les valeurs du signal d'écart fourni par le circuit formeur de différence aux instants (n - j)T, àF,-j-i étant les valeurs des éléments binaires du signal codé en delta, stockées dans le filtre et entrées dans le filtre aux instants (n - j - i)T.

    [0011] La description suivante, en regard des dessins annexés, le tout donné à titre d'exemple fera bien comprendre comment l'invention peut être réalisée.

    La figure 1 est un schéma sommaire de l'annuleur d'écho de l'invention avec un codeur delta à échelon de codage fixe et un circuit de réglage des coefficients par récurrences successives.

    Les figures 2 et 3 montrent les modifications à apporter au schéma de la figure 1 pour obtenir deux variantes de l'annuleur d'écho de la figure 1.

    La figure 4 représente le schéma d'un mode de réalisation du filtre transversal et du circuit de réglage des coefficients pour l'annuleur d'écho de la figure 1.

    La figure 5 représente le schéma sommaire de l'annuleur d'écho de l'invention avec un codeur delta à échelon de codage variable et un circuit de réglage des coefficients par récurrences successives.

    La figure 6 représente le schéma d'un mode de réalisation du filtre transversal et du circuit de réglage des coefficients pour l'annuleur d'écho de la figure 5.

    La figure 7 représente le schéma de l'annuleur de l'invention avec un codeur delta à échelon de codage fixe et un circuit de réglage des coefficients utilisant un procédé de calcul "statistique".



    [0012] L'annuleur d'écho de l'invention dont la figure 1 représente un schéma sommaire est inséré dans la partie quatre fils d'un circuit téléphonique. Cette partie quatre fils comporte une voie réception 1 dont la borne d'entrée 2 reçoit un signal téléphonique f(t) à transmettre vers le récepteur d'un terminal téléphonique. Dans l'exemple représenté, ce récepteur est le haut-parleur 4 d'un poste téléphonique, directement relié a la borne de sortie 3 de la voie réception. Ce poste téléphonique comporte un microphone 5 faisant office d'émetteur du terminal et produisant en réponse à un signal acoustique de parole S, un signal utile s(t) qui est appliqué à la borne d'entrée 6 de la voie émission 7, pour être transmis vers le récepteur du terminal d'un abonné lointain, via la borne de sortie 8 de la voie émission.

    [0013] Pour diverses raisons, le signal f(t) appliqué à la voie réception 1 peut produire dans la voie émission ? un signal d'écho intempestif g(t) par l'intermédiaire d'un trajet d'écho parasite entre la borne de sortie 3 de la voie réception et la borne d'entrée 6 de la voie émission. Dans l'exemple représenté, le signal d'écho est produit par couplage acoustique indésirable entre le haut-parleur 4 et le microphone 5. Un nignal d'écho pourraît être produit également au niveau d'un central téléphonique par les imperfections d'un circuit de couplage connecté entre les bornes 3 et 6 pour coupler les voies émission et réception et à la ligne téléphonique d'un abonné. Quelle que soit son origine, le signal d'écho g(t) peut se superposer au signal utile s(t) et perturber la réception de ce signal utile chez l'abonné lointain.

    [0014] Pour annuler le signal d'écho g(t), un circuit de soustraction 9 est inséré dans la voie émission. La borne positive de ce circuit de soustraction reçoit un signal déduit de celui appliqué à la borne d'entrée 6 de la voie émission. Sa borne négative reçoit le signal de sortie d'un filtre adaptatif 10 dont la borne d'entrée 11 reçoit un signal déduit du signal f(t) appliqué à la voie réception. Les coefficients du filtre adaptatif 10 doivent être réglés de façon que le signal fourni par le filtre sur la borne négative du circuit de soustraction 9 constitue une copie aussi exacte que possible de la composante que procure le signal d'écho g(t) dans le signal appliqué à la borne positive de ce circuit de soustraction. Si les coefficients du filtre adaptatif ont leurs valeurs idéales, le signal d'écho n'intervient plus dans le signal fourni par le circuit de soustraction 9 et après un traitement effectué en 13 et dépendant du traitement effectué dans la voie émission 7 entre la borne 6 et la borne positive du circuit de soustraction 9, on obtient sur la borne de sortie 8 de la voie émission 7, le signal utile à transmettre s(t), débarrassé du signal d'écho g(t). Dans la pratique un écho résiduel r(t) peut subsister sur la borne 8 et la qualité de l'annulation d'écho est déterminée par le rapport r(t)/g(t). Les coefficients du filtre adaptatif 10 sont réglés dans le circuit de réglage 12, à partir du signal de sortie du circuit de soustraction 9. Ce réglage est effectué par récurrences successives suivant l'algorithme du gradient, de façon à minimiser la valeur quadratique moyenne du signal de sortie du circuit de soustraction, ce qui conduit à une formule de récurrence du type indiqué dans l'article de Tanaka précité.

    [0015] Dans les annuleurs d'écho connus, le filtre adaptatif 10, généralement de type numérique, est agencé pour traiter un signal d'encrée codé en MIC suivant une loi linéaire ou une loi pseudo-logarithmique, ce signal d'entrée pouvant être directement celui transmis par la voie réception ou pouvant résulter d'une conversion analogique/numérique lorsque la voie réception transmet un signal analogique. Pour traiter un tel signal avec des coefficients formés d'un nombre de bits relativement important, les calculs (notamment les multiplications) à effectuer dans le filtre 10 et le circuit de réglage 12 sont complexes et coûteux à réaliser. La présente invention permet de pallier dans une grande mesure ce défaut.

    [0016] L'annuleur d'écho de l'invention représenté sur la figure 1 comporte un codeur delta 14 pour coder le signal f(t) appliqué à la voie réception. Sous la forme simplifiée représentée, le codeur 14 comporte un circuit comparateur 15 comparant le signal f(t) appliqué sur sa borne positive, au signal -décodé localement appliqué sur sa borne négative. Le signal de différence fourni par le comparateur est appliqué au circuit de mise en forme 16 qui fournit à la sortie 17 du codeur les éléments binaires du signal codé en delta, avec une fréquence d'échantillonnage 1/T fournie par un générateur d'horloge 18. Le signal codé est appliqué au décodeur local 19 qui fournit le signal décodé appliqué à la borne négative du comparateur 15 et disponible également à la sortie 20 du codeur 14.

    [0017] Le signal codé en delta apparaissant à la borne 17 du codeur est appliqué à l'entrée 11 du filtre adaptatif. Ses éléments binaires prennent à un instant quelconque nT (n entier) la valeur ΔFn égale à + 1 ou - 1.

    [0018] Le signal apparaissant à la borne 20 du codeur résulte d'une intégration dans le décodeur local 19 des éléments binaires ΔFn' multipliés par un échelon de quantification 6f. On suppose dans l'annuleur d'écho de la figure 1 que le codeur travaille avec un échelon de quantification 6f de valeur fixe. Le signal apparaissant à la borne de sortie 20 du codeur "resseable" au signal f(t) appliqué au codeur, mais il comporte des composantes de bruit en dehors de la bande utile du signal f(t) limitée à la fréquence supérieure F0, fixée habituellement à 3400 Hz. A la sortie 20 du codeur est connecté un filtre passe-bas 21 de fréquence de coupure F0 et on obtient ainsi à la sortie du filtre 21 un signal f1(t) qui, au rapport signal à bruit du codage en delta près, est égal au signal f(t). Ce signal f1(t) est utilisé dans le haut-parleur 4 du récepteur du terminal. On peut supposer que le filtre 21 est incorporé dans le trajet d'écho et pour la commodité, on a ainsi disposé sur la figure le filtre 21 après la borne de sortie 3 de la voie réception.

    [0019] L'annuleur d'écho de l'invention comporte d'autre part dans la voie émission 7 un circuit formeur de différence 22, inséré entre la borne 6 et la borne positive du circuit de soustraction 9. Ce circuit 22 échantillonne à la fréquence 1/T le signal entrant dans la voie émission et forme à chaque instant-d'échantillonnage l'écart entre les valeurs de deux échantillons consécutifs de ce signal. On peut maintenant supposer que seul le signal d'écho g(t) est présent dans la voie émission, car comme dans tous les annuleurs d'écho pour circuits téléphoniques la présence du signal utile s(t) superposé au signal d'écho peut poser des problèmes qui sont habituellement résolus à l'aide d'un détecteur de double parole qui stoppe le travail de l'annuleur d'écho quand se trouvent détectés simultanément le signal utile et un signal d'écho. Si l'on appelle ainsi gn et gn-1 la valeur du signal d'écho à l'instant d'échantillonnage nT et à l'instant précédent (n - 1)T, le circuit 22 forme à chaque instant nT un signal d'écart dn = gn - gn-1, que l'on peut appeler signal différentiel d'écho.

    [0020] Le signal dn fourni par le filtre transversal 10, en réponse au signal codé en delta AFn peut alors être appelé signal différentiel d'écho estimé et le signal en = dn- dn fourni par le circuit de soustraction 9 peut être appelé signal différentiel d'écho résiduel. Ce signal en est appliqué au circuit de réglage 12 dans lequel il est utilisé pour régler les coefficients du filtre 10 comme on l'expliquera par la suite. Le circuit 13 auquel est appliqué également le signal en est un circuit intégrateur qui a une fonction inverse de celle du signal formeur de différence 22 et qui restitue ainsi le signal d'écho résiduel r(t) auquel peut se superposer le signal utile s(t).

    [0021] On va maintenant expliquer comment l'annuleur de l'invention ainsi constitué permet d'obtenir pratiquement l'annulation du signal en à la sortie du circuit de soustraction 9 et donc l'annulation du signal d'écho résiduel r(t).

    [0022] D'après les explications données plus haut, le signal à la sortie 20 du codeur delta est l'intégrale de la suite :

    où ΔFn, ΔFn+q, ... etc sont les éléments binaires du signal codé en delta aux instants nT... (n + q)T... (avec q entier positif), et 6f est l'échelon de codage de valeur fixe.

    [0023] h(t) étant la réponse impulsionnelle du trajet d'écho comportant tous les éléments connectés entre les bornes 3 et 6, on appelle ho,... hi,... hp, les échantillons de cette réponse à la fréquence 1/T des éléments binaires du signal codé en delta. Le nombre entier p est défini de telle sorte que hp+q soit nul pour tout q entier positif, ce qui revient à dire que la réponse impulsionnelle h(t) a une durée effective égale à pT.

    [0024] Dans le cas pratique où travaille l'annuleur d'écho, pour lequel on peut supposer, comme on l'a expliqué, que le signal utile s(t) appliqué à la voie émission est nul, le signal de sortie dn du circuit formeur de différence 22 est égal au produit de convolution des échantillons de la suite (1) dont l'intégrale est appliquée au trajet d'écho et des échantillons de la réponse impulsionnelle h(t) de ce trajet d'écho, soit :



    [0025] En appelant h(t) la réponse impulsionnelle du filtre transversal 10 et h0,... hi,... hp les échantillons de cette réponse, généralement appelés coefficients du filtre, le signal dn sortant du filtre peut s'écrire comme le produit de convolution des échantillons du signal codé en delta et de ces coefficients, soit :



    [0026] Le signal en sortant du circuit de soustraction 9 peut alors s'écrire :



    [0027] Dans l'annuleur d'écho de l'invention, les coeffi- cients ĥi du filtre sont réglés dans le circuit de réglage 12, de façon à quasiment annuler le signal en. L'annulation complète de ce signal en est réalisée lorsque les coefficients hi du filtre transversal sont réglés de telle façon que :


    pour tout i entier tel que 0≤i≤p.

    [0028] Le filtre transversal 10 stocke donc, lorsque l'annuleur d'écho a convergé, des coefficients hi égaux aux échantillons hi de la réponse impulsionnelle du trajet d'écho, multipliée par l'échelon de codage δf.

    [0029] On peut noter que ces coefficients ĥi peuvent être égaux, après la convergence, aux échantillons hi, si, à l'entrée positive du circuit de soustraction 9, on applique le ai- gnal dn/ôf au lieu du signal dn. Les modifications nécessaires pour réaliser cette variante apparaissent sur la figure 2 qui est une représentation partielle du schéma de la figure 1, les éléments identiques de ces deux figures étant référencés de la même manière. On voit donc sur la figure 2, insérés dans la voie émission 7, un circuit multiplicateur 25 qui multiplie le signal dn sortant du circuit 22 par 1/δf pour fournir le signal dn/δf à l'entrée positive du circuit de soustraction 9 et un circuit multiplicateur 26 qui multiplie le signal en sortant du circuit de soustraction 9 par δf pour fournir le signal en.δf à l'entrée du circuit intégrateur 13. Le signal en est utilisé dans le circuit de réglage 12 pour régler les coefficients ĥi du filtre transversal 10. Ce dernier fournit un signal de la forme d̂n/δf et à la convergence de l'annuleur d'écho, les coefficients ĥi du filtre sont tels que : hi = hi.

    [0030] La mise en cascade des deux circuits multiplicateurs 25 et 26 dans la voie émission, permet de conserver sur la borne de sortie 8 de cette voie le niveau du signal utile appliqué sur la borne d'entrée 6.

    [0031] On peut obtenir également des coefficients de filtre hi tels que hi = hi, en insérant, comme le montre la figure 3, un circuit multiplicateur 27 entre la sortie du filtre transversal 10 et l'entrée négative du circuit de soustraction 9, le reste du schéma de la figure 1 étant inchangé. Le circuit 27 multiplie par δf le signal d̂n/δf sortant du filtre 10 de façon à fournir le signal dn.

    [0032] Enfin, on peut noter que si dans la voie réception on introduit un circuit multiplicateur par A0, le signal dn est multiplié par A0 et les coefficients du filtre transversal 10 tendent après la convergence vers les valeurs hi = AO.hi sans perturber le niveau du signal utile s(t) dans la voie émission.

    [0033] Pour régler les coefficients hi du filtre transversal 10 de façon à annuler le signal différentiel d'écho résiduel en fourni par le circuit de soustraction 9, on peut minimiser la valeur quadratique moyenne de ce signal e(n) en utilisant l'algorithme du gradient. Il est bien connu, par exemple de l'article de Tanaka et al précité, que ce procédé procurant une convergence très rapide des coefficients hi consiste à calculer ces coefficients par récurrences successives à la fréquence 1/T suivant la formule générale de récurrence :



    [0034] Cette formule indique le calcul à effectuer pour obtenir la valeur ĥi(n + 1) d'un coefficient hi à un instant (n + 1)T, à partir de la valeur hi(n) de ce coefficient à l'instant nT. Dans le terme de correction, en représente la valeur du signal différentiel d'écho résiduel à l'instant nT, xi représente la valeur d'un échantillon stocké dans le filtre transversal et entré dans le filtre à un instant (n - i)T ; enfin

    représente la somme des carrés des échantillons entrés dans le filtre pendant la durée pT de la réponse impulsionnelle du trajet d'écho précédant l'instant nT.

    [0035] La formule de récurrence (6) devient très simple à appliquer dans le cas de l'annuleur d'écho de l'invention. En effet, chaque terme xi n'est autre que l'un des éléments binaires ΔFn-i du signal codé en delta et de valeur + 1 ou - 1. Le terme

    a pour valeur p + 1 et la formule de récurrence (6) peut donc s'écrire :


    avec ΔFn-i = ± 1.

    [0036] Ainsi, dans l'annuleur d'écho de l'invention, aussi bien les calculs à effectuer dans le filtre transversal 10 pour obtenir le signal d'écart estimé dn (voir formule (3) ci-dessus), que les calculs à effectuer dans le circuit de réglage 12 pour régler les coefficients du filtre (formule (7)), sont très simples à mettre en oeuvre du fait que les échantillons ΔFn-i intervenant-comme facteurs de produits dans ces formules ne prennent que des valeurs simples + 1 ou - 1. Pratiquement, les calculs à effectuer peuvent se réduire à des additions facilement réalisables dans des techniques analogiques ou numériques.

    [0037] On va maintenant décrire des modes de réalisation possibles pour les différents éléments de l'annuleur d'écho de la figure 1, dans l'hypothèse préférable d'une réalisation en circuits intégrés où les organes de calcul de l'annuleur d'écho fonctionnent à partir des signaux codés numériquement.

    [0038] Le codeur delta 14 peut être de n'importe quel type bien connu de l'homme de l'art et fonctionnant avec un échelon de codage fixe, selon l'hypothèse adoptée jusqu'à présent.

    [0039] Le formeur de différence 22 peut être un codeur MIC différentiel à réponse linéaire également connu de l'homme de l'art. Un tel codeur peut fournir à la fréquence d'échantillonnage 1/T un signal dn = gn - gn-1 codé avec m éléments binaires.

    [0040] Le circuit de soustraction 9 peut être un additionneur-soustracteur numérique classique à m éléments binaires.

    [0041] Le circuit intégrateur 13 proprement dit peut être un accumulateur sommateur numérique également bien connu. Pour obtenir sur la borne de sortie 8 de la voie émission un signal analogique, l'accumulateur doit être suivi d'un convertisseur numérique/analogique.

    [0042] La figure 4 montre un mode de réalisation possible, dans une organisation de type série, pour le filtre transversal 10 et le circuit 12 de réglage des coefficients du filtre. Sur cette figure, les liaisons transportant des signaux à un élément binaire sont représentées par des traits simples et celles transportant des signaux à plusieurs éléments binaires sont représentées par des traits doubles.

    [0043] Le filtre transversal 10 comporte une mémoire 30 recevant du codeur 14 le signal codé en delta ΔFn, dont les éléments binaires se produisent à la fréquence 1/T. Cette mémoire 30 stocke, à chaque instant nT, p + 1 éléments binaires allant de ΔFn à ΔFn-p. Sous la commande du signal de commande H de fréquence (p + 1)/T, ces p + 1 éléments binaires ΔFn à ΔFn-p apparaissent successivement pendant chaque période d'échantillonnage T à la sortie de la mémoire 30, pour être appliqués à une première entrée du circuit multiplicateur 31. Le filtre transversal 10 comporte également une mémoire 33 pour stocker p + 1 coefficients ho à hp formés chacun de m' éléments binaires et élaborés dans le circuit de réglage 12, comme on l'expliquera par la suite. Sous la commande du signal de commande H de fréquence (p + 1)/T, les coefficients hO à hp sont lus dans la mémoire 33 et appliqués, par l'intermédiaire du registre 34 servant de mémoire temporaire, à la deuxième entrée du circuit multiplicateur 31, de façon qu'ils y apparaissent en synchronisme avec les éléments binaires ΔFn à ΔFn-p appliqués à la première entrée de ce circuit multiplicateur. Le circuit multiplicateur 31 est évidemment très simple à réaliser puisqu'il multiplie par + 1 ou - 1 les coefficients ĥO à ĥp.

    [0044] Pendant chaque période T, il apparaît à la sortie du circuit multiplicateur 31, les p + 1 produits figurant dans le second membre de la formule (3). L'accumulateur 32 commandé par un signal de commande S de fréquence 1/T, accumule pendant chaque période T les produits formés par le circuit multiplicateur 31 et fournit, conformément à la formule (3), le signal différentiel d'écho estimé d̅n, avec la fréquence d'échantillonnage 1/T. Ce signal d̂n à m éléments binaires est appliqué au circuit de soustraction 9 pour être soustrait du signal différentiel d'écho dn à m éléments binaires formé dans la voie émission. Le circuit 9 fournit, avec une fréquence d'échantillonnage 1/T, le signal différentiel d'écho résiduel en à m éléments binaires.

    [0045] Les coefficients de filtre lus dans la mémoire 33 et apparaissant à la sortie du registre 34 sont appliqués dans le circuit de réglage 12 à la borne d'entrée 35 de l'accumulateur 36 qui travaille en répartition dans le temps, pour modifier successivement tous les coefficients ho à hp pendant chaque période T, suivant la formule de récurrence (7). Pour le calcul des termes de modification de ces coefficients, on utilise un circuit 37 qui opère la division du signal en par p + 1. Si l'on choisit p + 1 = 2s, le circuit 37 est un simple circuit qui décale de s positions binaires les nombres à m éléments binaires formant le signal en. Le signal en/(p + 1) à m - a éléments binaires fourni par le circuit 37 est appliqué au circuit multiplicateur 38 pour être multiplié successivement pendant chaque période T par les p + 1 éléments binaires AFn à 4fn-p du signal codé en delta apparaissant à la sortie de la mémoire 30. A la sortie du circuit 38 qui est très simple puisqu'il effectue des multiplications par + 1 ou - 1, il apparaît pendant chaque période T, les p + 1 termes de modification des coefficients conformément à la formule (7). Ces termes de modification sont appliqués à la borne d'entrée 39 de l'accumulateur 36 pour être ajoutés aux coefficients apparaissant en synchronisme sur l'autre borne d'entrée 35. Les coefficients modifiés apparaissent à la sortie de l'accumulateur et sont inscrits dans la mémoire 33 pour être utilisés de la même manière, à la période d'échantillonnage T suivante, dans le filtre 10 et dans le circuit de réglage 12.

    [0046] On rappelle que jusqu'à présent on a supposé fixe, l'échelon de codage 6f utilisé dans le codeur en delta 14. Or, avec cette technique, on ne peut obtenir un rapport signal à bruit de codage satisfaisant que pour une dynamique limitée du signal f(t) appliqué à l'entrée du codeur, à moins, bien entendu, d'élever de façon considérable la fréquence d'échantillonnage dans le codeur.

    [0047] Par conséquent, dans l'annuleur d'écho de l'invention, l'utilisation d'un codeur delta 14 avec un échelon de codage fixe et une fréquence d'échantillonnage raisonnable, est pratiquement limitée au cas où la dynamique du signal entrant dans le codeur peut être limitée. C'est ce qui peut être envisagé dans l'utilisation d'un annuleur d'écho représentée sur la figure 1, où le signal f(t) entrant dans la voie réception doit être écouté sur un haut-parleur et où l'annuleur d'écho sert à éviter l'effet du couplage acoustique entre le haut-parleur 4 et le microphone 5. De nombreuses expériences ont montré qu'un grand confort d'écoute pour l'usager est obtenu quand les signaux acoustiques sortant du haut-parleur ont une puissance moyenne constante (réglable par l'utilisateur), quel que soit le niveau du signal f(t) entrant dans la voie réception. On peut utiliser par exemple pour remplir cette fonction de régulation du niveau un dispositif tel que celui décrit dans la demande de brevet français N* 2 479 621 déposée le 28 mars 1980 au nom de la demanderesse et intitulée "Dispositif de régulation automatique du niveau d'écoute d'un poste téléphonique". Ce dispositif permet de conserver aux signaux de parole leur dynamique de variation de niveaux liée à l'élocution tout en annulant pratiquement la dynamique liée aux affaiblissements variables, suivant les liaisons établies, des lignes de transmission. Un dispositif de régulation automatique de niveau de ce genre peut être inséré ainsi sur le schéma de la figure 1 à l'endroit représenté par le rectangle en pointillé 60 pour traiter le signal f(t) entrant dans la voie réception et fournir un signal à dynamique réduite à l'entrée du codeur delta 14. Ce dernier peut être alors réglé pour travailler avec un échelon de codage fixe, optimisé pour procurer le meilleur rapport signal à bruit de codage. Pour l'utilisation de l'annuleur d'écho envisagée sur la figure 1, on peut également insérer après la sortie 20 du codeur 14, à l'endroit représenté par le rectangle en pointillé 61, un amplificateur de gain AO réglable par l'utilisateur. Comme on l'a déjà expliqué, les coefficients du filtre transversal 10 de l'annuleur de l'écho se régleront alors automatiquement aux valeurs AO.hi, tenant compte de l'introduction du gain AO dans le trajet d'écho.

    [0048] Hormis les cas du genre de celui que l'on vient d'envisager, il est souvent nécessaire de respecter la dynamique du signal f(t) entrant dans la voie réception. Comme on l'a déjà indiqué, l'utilisation du codeur en delta à échelon de codage fixe ne procure pas un rapport signal à bruit de codage satisfaisant, pour tous les niveaux d'entrée possibles, à moins d'utiliser une fréquence d'échantillonnage très élevée (de l'ordre de plusieurs centaines de kHz), ce qui augmente considérablement à la fois le volume de calculs à effectuer en un temps déterminé dans l'annuleur d'écho et la quantité d'informations à stocker dans la mémoire des coefficiente hi et la mémoire des éléments binaires ΔFn-i. Mais il est bien connu que des codeurs delta à compression syllabique, fonctionnant avec un échelon delta variable à un rythme syllabique, permettent d'obtenir un excellent rapport signal à bruit, tout en gardant une fréquence d'échantillonnage relativement faible (de l'ordre de 64 kHz), pour une dynamique de signaux d'entrée de près de 50 dB.

    [0049] On se place donc maintenant dans le cas où l'on utilise dans l'annuleur d'écho de l'invention, un codeur delta à échelon variable. Dans un cas particulier, celui où la variation syllabique de l'échelon δf est négligeable pendant la durée de la réponse impulsionnelle du trajet d'écho et pendant le temps de convergence de l'annuleur d'écho, on peut considérer à tout instant que l'échelon de codage δf est constant et utiliser sans autre modification l'annuleur d'écho de la figure 1 avec un codeur à échelon variable. C'est pratiquement le cas lorsque la réponse impulsionnelle du trajet d'écho est très courte (de l'ordre de quelques millisecondes).

    [0050] Dans le cas général, l'annuleur d'écho de l'invention doit tenir compte des variations de l'échelon de codage 6f sur la base des considérations qui suivent.

    [0051] Dans l'annuleur d'écho décrit jusqu'à présent le signal d'écart dn formé dans la voie émission avait l'expression donnée par la formule (2) avec un échelon δf constant.

    [0052] Avec un codeur à échelon variable, la formule (2) peut s'écrire :


    où δfn,... δfn-i,... δfn-p sont les valeurs de l'échelon delta aux instants nT,... (n - i)T,... (n - p)T.

    [0053] On considère maintenant la variante de l'annuleur d'écho de la figure 2 dans laquelle le signal appliqué à la borne positive du circuit de soustraction 9 est d1n dn/δfn, au lieu de dn. Ce signal d1n peut s'écrire :



    [0054] Comme on l'a expliqué, dans cette variante avec un échelon de codage fixe, les coefficients ĥO,... ĥi,... hp du filtre 10 tendent vers les valeurs idéales hO,... hi,... hp ; autrement dit, en utilisant l'algorithme du gradient consistant pratiquement à régler les coefficients du filtre suivant la formule de récurrence (7), à chaque récurrence le point "cible" de l'algorithme est un point MO ayant dans un espace de p + 1 dimensions les coordonnées hO,... hi,... hp, et invariable à chaque récurrence.

    [0055] Il n'en est pas de même, lorsque l'échelon de codage est variable. On déduit en effet de la formule (8), qu'à la récurrence définie par l'instant nT, le point "cible" utilisé avec l'algorithme du gradient est un point Mn de coordon-



    [0056] Or, en fait, à l'instant suivant (n + 1)T, on doit avoir :



    [0057] Si l'on appelle respectivement Xi(n) et Xi(n + 1) (avec i variant de 0 à p + 1), les p + 1 coordonnées des points "cibles" Mn et Mn+1, il est facile de voir que l'on passe de Xi(n) à Xi(n + 1) par la relation :



    [0058] Si donc on utilise dans l'annuleur d'écho un codeur à échelon variable, si l'on forme dans la voie émission le signal d1n = dn/δfn, pour former la différence d1n = d1n - d̂1n, d̂1n étant le signal de sortie du filtre transver- sal, et si enfin les coefficients h'i du filtre sont réglés suivant l'algorithme du gradient en utilisant la formule de récurrence (7), l'application brutale de cette formule à la récurrence définie par l'instant nT donnera des coefficients modifiés h'i(n+1) tels que :


    Ces coefficients ĥ'i(n+1) devront être corrigés par le facteur

    utilisé dans la formule (9), pour fournir les "vraies" valeurs hi(n+1) à utiliser à la récurrence suivante définie par l'instant (n+1)T, soit :



    [0059] Finalement, la formule de récurrence à utiliser pour obtenir à chaque récurrence les nouvelles valeurs des coefficients s'écrit :



    [0060] Un annuleur d'écho utilisant un codeur en delta à échelon variable devra donc comporter pour régler les coefficients suivant la formule de récurrence (12), outre les éléments représentés dans le circuit de réglage 12 de la figure 4, des moyens pour former et stocker les (p+1) derniers facteurs

    , et des moyens de multiplication par ces facteurs Ki.

    [0061] Ces moyens supplémentaires peuvent être très simplifiés en tenant compte des considérations qui suivent. On peut remarquer d'abord que le codeur delta à échelon variable à utiliser n'a pas besoin de fournir sur ses bornes de sortie. l'information sur la grandeur de l'échelon de codage à chaque instant nT, puisque l'information donnant les valeurs δfn de l'échelon de codage est utilisée localement dans l'annuleur d'écho, d'une part pour former le signal d1n = dn/ôfn, d'autre part pour former les facteurs Ki. Ainsi, il est possible de coder en local les valeurs de l'échelon variable ôfn utilisées dans le décodeur local 19 du codeur 14 de telle sorte que δfn soit codé en MIC suivant une loi linéaire. On peut aussi coder de façon simple les valeurs des rapports

    intervenant dans le calcul des facteurs Ki, en prenant en compte le fait que ces valeurs sont très voisines de 1 puisque les échelons de codage varient très peu d'un instant d'échantillonnage au suivant.

    [0062] Le codage de

    peut être par exemple tel que, avec ε petit par rapport à 1







    [0063] Il est clair que ce codage de

    définit aussi pour i = 0, le codage de



    [0064] De préférence, le décodeur local 19 du codeur 14 utilisera les valeurs d'échelons définies par ce mode de codage de

    , de façon que le signal apparaissant sur la sortie 20 du codeur utilise à tout instant les mêmes échelons delta que ceux intervenant pour le réglage des coefficients hi du filtre transversal 10.

    [0065] Avec ce mode de codage, les multiplications par

    requises dans la formule de récurrence (10) peuvent être très simples à réaliser si l'on choisit e = 2-x, e étant petit par rapport à 1, donc x grand. En effet, la multiplication par 1 + e = 1 + 2-X ou par 1 - E = 1 - 2-x peut s'effectuer simplement en additionnant les multiplicandes

    et lesdits multiplicandes décalés de x éléments binaires vers la droite. Ainsi, le réglage des coefficients selon la formule de récurrence (12) ne requiert que des décalages de x bits et des additions à l'exclusion de toute multiplication complexe.

    [0066] Le procédé de réglage des coefficients avec un échelon de codage variable vient d'être expliqué dans le cas de la variante de la figure 2 où l'on forme dans la voie émission le signal d1n = dn/ôfn. Le même procédé est utilisable de la même manière dans le cas de la variante de la figure 3 où le signal sortant du filtre 10 est multiplié à un instant nT par l'échelon de codage δfn. En effet comme on l'a expliqué, dans ces deux variantes, les coefficients hi du filtre conver- gent vers les mêmes valeurs hi, de aorte que l'algorithme du gradient utilise les mêmes points "cibles".

    [0067] La figure 5 montre sommairement les modifications à apporter au schéma de la figure 1 pour constituer un annuleur d'écho avec échelon de codage delta variable. On a repré- santé seulement les éléments compris entre les bornes 2 et 3 de la voie réception 1 et entre les bornes 6 et 8 de la voie émission 7. Le codeur 14 comporte outre la sortie 17 fournissant les éléments binaires ΔFn du signal codé en delta et outre la sortie 20 fournissant le signal décodé localement, une sortie supplémentaire 40 sur laquelle apparaît à chaque instant nT la valeur de l'échelon de codage ôfn, codé en MIC. Suivant la variante de la figure 3, cette valeur codée δfn est appliquée au circuit multiplicateur 41 pour multiplier par δfn le signal sortant du filtre transversal 10. Le codeur 14 comporte une autre sortie supplémentaire 42 qui procure les valeurs

    codées comme on l'a expliqué sous la forme 1 ± K.2-x avec K - 0 ou 1. Les valeurs

    ainsi codées sont utilisées dans le circuit de réglage des coefficients 12.

    [0068] La figure 6 représente un schéma selon le mode de réalisation de la figure 4, du filtre 10 et du circuit de réglage 12 munis des modifications nécessaires dans le cas d'un échelon de codage variable. Les modifications du circuit de réglage 12 portent sur un traitement des coefficients fournis par l'accumulateur 36, avant leur inscription dans la mémoire 33.

    [0069] L'accumulateur 36 fonctionnant comme on l'a expliqué à propos de la figure 4, reçoit pendant chaque période d'échantillonnage T, à son entrée 35 les p + 1 coefficients hi(n) à modifier et à son entrée 39 les termes de modification correspondants et fournit les coefficients ĥ'n(n+1) définis A par la formule (10). Ces coefficients h'i(n+1) doivent être corrigés conformément à la formule (11) afin de fournir les "vraies", valeurs hi(n+1) des coefficients à stocker dans la mémoire 33. Pour cela, le circuit de réglage des coefficients comporte une mémoire 43 dont l'entrée est reliée à la sortie 42 du codeur 14 et qui stocke les (p + 1) dernières valeurs de

    sous la forme des nombres égaux à 1 + K.2-X avec K = - 1, 0, + 1. Ces p + 1 nombres sont lus pendant une période d'échantillonnage T à l'aide du signal de commande H de fréquence (p+1)/T pour être appliqués à une entrée du circuit multiplicateur 44 dont l'autre entrée reçoit les coefficients ĥ'(n+1) sortant de l'accumulateur 36. D'autre part, la sortie 42 du codeur 14 qui fournit à l'instant (n+1)T la valeur codée de

    est reliée au circuit 45 qui fournit la valeur codée de

    stockée dans la mémoire 46 sous la forme d'un nombre égal à 1 + K'.2-x avec K' = - 1, 0, + 1. Cette mémoire est lue par un signal de commande H' de fréquence 1 T pour que la valeur codée de

    apparaisse pendant toute la durée d'une période d'échantillonnage T à une entrée du circuit multiplicateur 47 dont l'autre entrée est reliée à la sortie du circuit multiplicateur 44. Le circuit multiplicateur 47 fournit ainsi les coefficients de filtre hi(n+1) corrigés conformément à la formule (11) et à stocker dans la mémoire 33. Comme on l'a expliqué, les multiplications dans le circuit 44 et 47 sont très simples à réaliser avec le type de codage utilisé.

    [0070] Une autre modification à effectuer porte sur une multiplication du signal sortant de l'accumulateur 32 et constituant le signal de sortie du filtre transversal 10 par le signal d'échelon variable. Pour cela, le signal d'échelon variable 6fn disponible à la sortie 40 du codeur 14 sous la forme d'un nombre à s bits est inscrit dans la mémoire 48. Il est lu dans cette mémoire à l'aide du signal de commande H' de fréquence 1/T et reste appliqué sans changement à une entrée du circuit multiplicateur 41 pendant une période d'échantillonnage T. Pour la cohérence avec les explications données pour le circuit de réglage 12, c'est l'échelon δfn+1 qui est appliqué au circuit multiplicateur 41. A l'autre entrée de ce circuit 41 est appliqué le signal à m" bits fourni par l'accumulateur 32. Le signal de produit fourni par le circuit multiplicateur 41 est arrondi à m bits pour former le signal différentiel d'écho estimé d̂n appliqué à la borne négative du circuit de soustraction 9.

    [0071] Une autre méthode dite "statistique", différente de celle utilisant l'algorithme du gradient permet de calculer directement les coefficients du filtre transversal 10, sans procéder par récurrences successives comme on l'a expliqué jusqu'à présent. Cette méthode généralement moins précise, mais plus rapide peut fournir des valeurs de coefficients approchées qui peuvent servir par exemple de valeurs de coefficients initiales pour un annuleur d'écho plus précis travaillant par récurrences successives.

    [0072] On va d'abord expliquer les bases théoriques de cette méthode dans le cas de l'annuleur d'écho de l'invention avec un échelon de codage 6f constant.

    [0073] Dans le mode de réalisation de la figure 1, la méthode a pour but, suivant les notations déjà utilisées, de calculer les coefficients ĥo, ĥ1... hp du filtre, comme des valeurs approchées de h0.δf, h1.δf,... hp.δf.

    [0074] On peut exprimer de façon semblable à la formule (2) les écarts dn, dn-1,... dn-q entre deux échantillons successifs du signal d'écho, à (q + 1) instants d'échantillonnage successifs : nT, (n-1)T,... (n-q)T, avec q < p. On obtient :



    [0075] Si l'on multiplie les deux membres des (q + 1) équations (13), respectivement par ΔFn, ΔFn-1 ... ΔFn-q et si l'on fait la somme membre à membre de ces équations, il est aisé de voir que l'on obtient en utilisant la variable j, nombre entier variant de 0 à q :



    [0076] Au sujet du second membre de cette équation (14), on peut faire les observations suivantes :

    Les termes ΔFn-j ayant les valeurs + 1 ou - 1, on a |ΔFn-j|2 = 1 et ainsi le facteur du terme (h0.δf) est égal à q + 1.



    [0077] Les facteurs des autres termes (h1.δf)... (hp.6f) peuvent s'écrire d'une manière générale pour un terme quelconque (hk.δf) avec k entier allant de 1 à p :



    [0078] Cette expression représente la fonction de corrélation, calculée sur q + 1 échantillons, de deux suites d'échantillons du signal codé en delta décalées de k périodes d'échantillonnage. Une caractéristique du codage en delta est que, pour la plupart des décalages tels que k > 4, la fonction de corrélation COk est quasiment nulle tandis que pour les décalages les plus faibles (k ≤ 4), COk a une valeur différente de zéro.

    [0079] Si l'on suppose néanmoins que COk = 0 pour toutes valeurs de k allant de 1 à p, l'équation (14) peut se réduire à :



    [0080] Par un procédé analogue à celui qui a permis d'établir cette relation (16), on peut calculer les autres termes (h1.δf)... (hp.ôf). Le terme général (hi.ôf) (i entier allant de 0 à p) peut se mettre sous la forme :


    si l'on suppose que la fonction de corrélation


    est nulle pour toutes valeurs de k entier, différent de i et allant de 0 à p.

    [0081] Dans la méthode "statistique" qui peut être mise en oeuvre pour déterminer les coefficients du filtre transversal de l'annuleur d'écho, on suppose cette hypothèse vérifiée. Cette méthode consiste à calculer ces (p + 1) coefficients hi comme le second membre de la formule (17) dans lequel on fait varier i entier de 0 à p, ces coefficients calculés étant des valeurs approchées des termes (hi.δf), dans lesquels hi représente les échantillons de réponse impulsionnelle du trajet d'écho.

    [0082] Ainsi, dans l'annuleur d'écho de l'invention utilisant cette méthode, le circuit de réglage 12 des coefficients doit être agencé pour former, à partir des échantillons dn-j du signal différentiel d'écho et des échantillons ΔFn-i-j du signal codé en delta, les produits de convolution zi tels que :


    les coefficients hi du filtre transversal sont détermines par le calcul :



    [0083] A partir des coefficients de filtre ĥi ainsi calculés, le signal de sortie du filtre 10, d̂n peut être calculé suivant la formule (3) qui peut s'écrire :



    [0084] La figure 7 représente un mode de réalisation d'un annuleur d'écho mettant en œuvre la méthode que l'on vient de décrire. Comme dans l'annuleur d'écho de la figure 1, le codeur delta 14 code en delta le signal f(t) appliqué à la voie émission 1 et fournit sur sa sortie 17 les échantillons AFn du signal codé en delta qui sont appliqués à l'entrée 11 du filtre transversal 10 et sur sa sortie 20 le signal décodé localement, c'est-à-dire résultant de l'intégration de la suite des échantillons ΔFn.δf. Dans la voie émission 7, le circuit formeur de différence 22 fournit le signal différentiel d'écho dn = gn - gn-1 qui est appliqué à la borne positive de soustraction 9. Le signal différentiel d'écho estimé d̂n fourni par le filtre transversal 10 est appliqué à la borne négative du circuit de soustraction qui fournit le signal en = dn - dn. Dans la méthode "statistique" mise en oeuvre dans l'annuleur d'écho de la figure 7, c'est le signal différentiel d'écho dn qui est utilisé dans le circuit de réglage 12 pour régler les coefficients hi du filtre, comme cela résulte des formules (19) et (20).

    [0085] Dans le mode de réalisation représenté, le filtre transversal 10 comporte un circuit de retard 50 recevant le signal codé en delta ΔFn et produisant un retard qT. La mémoire 51 du filtre organisée comme un registre à décalage décalé à la fréquence 1/T peut stocker p + 1 échantillons consécutifs du signal sortant du circuit de retard 50. pT étant égal à la durée de la réponse impulsionnelle du trajet d'écho, on peut choisir q de telle sorte que (p + 1) = (r + 1)(q + 1), r étant un nombre entier. Le registre à décalage formant la mémoire 51 est alors formé de r + 1 registres à décalage élémentaires en cascade 51-0 à 51-r comportant chacun q + 1 éléments. On a indiqué dans ces registres les échantillons qui y sont présents à l'instant nT où l'échantillon ΔFn est introduit à l'entrée du circuit de retard 50 : le premier registre 51-0 contient les échantillons antérieurs 6Fn-q à Δfn-2q ; le deuxième registre 51-1 contient les échantillons antérieurs ΔFn-2q-1 à ΔFn-3q-1 ; enfin le dernier registre 51-r contient les échantillons antérieurs ΔFn-(r+1)q-r à ΔFn-(r+2)q-r.

    [0086] Pour calculer les coefficients hi du filtre en utilisant les formules (19) et (20), le circuit de réglage des coefficients 12 comporte une mémoire 52 pour stocker q + 1 échantillons consécutifs du signal dn fourni par le circuit 22. Par l'intermédiaire d'un circuit interrupteur 53 commandé par un signal de commande S pour être fermé jusqu'à l'instant nT et pour être ensuite ouvert pendant l'intervalle de temps qT suivant, la mémoire 52 reste remplie de l'instant nT à l'instant (n + q)T par les mêmes échantillons dn à dn-q comme l'indique la figure.

    [0087] Les termes zi selon la formule (19) sont calculés suivant une certaine répartition dans le temps, pendant une période de calcul s'étendant de l'instant nT à l'instant (n + q)T. On utilise pour ce calcul r + 1 organes de calcul 54-0 à 54-r qui sont organisés chacun, de façon connue en soi, pour calculer à chaque instant d'échantillonnage de la période de calcul l'un des termes si conformément à la formule (19). Ces organes de calcul sont connectés d'une part à la mémoire 52 pour recevoir pendant la période de calcul les mêmes échantillons dn à dn-q. Les organes de calcul 54-0 à 54-r sont connectés d'autre part, respectivement aux registres à décalage 51-0 à 51-r pour recevoir les échantillons présents dans ces registres qui sont décalés à la fréquence 1/T. Ces liaisons aux organes de calcul 54-0 à 54-r sont représentées en traits doubles, pour indiquer qu'elles transportent chacune (q + 1) échantillons.

    [0088] A l'instant nT, premier instant de la période de calcul, il est aisé de voir, à partir des échantillons indiqués dans les registres que les organes de calcul 54-0 à 54-r fournissent respectivement les termes zq à z(r+1)q+r soit zq à zp.

    [0089] A l'instant suivant (n + 1)T, les échantillons présente dans les registres ayant été décalés d'un élément, les organes de calcul 54-0 à 54-r fournissent respectivement les termes zq-1 à zp-1.

    [0090] Le processus se poursuit jusqu'au dernier instant d'échantillonnage de la période ce calcul, (n + q)T. A cet instant, les échantillons présents dans les registres ayant été décalés de q éléments, les organes de calcul 54-0 à 54-r fournissent respectivement les termes zO à zp-q. Ainsi, pendant toute la période de calcul, les organes de calcul 54-0 à 54-r ont fourni ensemble les p + 1 termes zi allant de zO à

    [0091] zp. Pour former les coefficients désirés ĥi suivant la formule (20), les sorties des organes de calcul 54-0 à 54-r sont munis de cicuits multiplicateurs 55-0 à 55-r pour multiplier les termes zi par 1/(q + 1), ce qui correspond à un simple décalage d'éléments binaires si (q + 1) est une puissance de deux.

    [0092] Les coefficients hq... ho fournis successivement par le circuit multiplicateur 55-0 au cours de Ta période de calcul sont stockés dans la mémoire de coefficients 56-0 du filtre 10. Les coefficients 2q+1 ... hq+1 fournis successivement par le circuit multiplicateur 55-1 sont stockés dans la mémoire de coefficients 56-1. Enfin les coefficients hp... hp_q fournis successivement par le circuit multiplicateur 55-r sont stockés dans la mémoire de coefficients 56-r.

    [0093] A la fin de la période de calcul, soit à l'instant (n + q)T se trouvent donc présentés dans l'ensemble des mémoi- res 56-0 à 56-r tous les coefficients hi calculés. A partir de l'instant d'échantillonnage suivant (n + q + 1)T peut commencer le calcul des échantillons du signal résiduel d'écho esti- me dn à partir de ces coefficients calculés hi et des échantillons du signal ΔFn présents dans les registres à décalage 51-0 à 51-r. Pour effectuer ce calcul, on utilise un organe de calcul 57 qui est connecté par des liaisons multiples représentées en traits doubles aux registres 51-0 à 51-r et aux mémoires 56-0 à 56-r et qui est agencé de façon connue en soi pour former selon la formule (21) les échantillons du signal n, constituant le signal de sortie du filtre 10.

    [0094] On pourrait aussi utiliser les coefficients hi calculés comme coefficients initiaux dans un annuleur d'écho dans lequel les coefficients sont réglés par récurrences successives, par exemple dans l'annuleur d'écho que l'on a décrit à l'aide de la figure 1. La valeur idéale des coefficients de cet annuleur d'écho a, comme celle des coefficients calculés hi, la forme hi.δf, hi représentant la réponse impulsionnelle du trajet d'écho et δf l'échelon de codage. Si l'annuleur d'écho travaillant par récurrences successives requiert des coefficients dont la valeur idéale est hi, les coefficients calculés seront divisés par l'échelon de codage δf.

    [0095] Le calcul des coefficients par la méthode "statistique" tel que l'on vient de le décrire peut être appliqué aux cas où l'on peut utiliser un codeur delta avec un échelon de codage 6f fixe, c'est-à-dire, par exemple comme on l'a envisagé plus haut, quand on peut limiter la dynamique du signal appliqué du codeur.

    [0096] Dans le cas où le codeur delta utilise un échelon de codage variable, les formules (13) ayant servi de base à l'explication de la méthode "statistique" peuvent s'écrire comme suit, en appelant 6fn, δfn-1,... δfn-p les valeurs de l'échelon de codage aux instants nT, (n - 1)T...(n - p)T :



    [0097] On se place maintenant dans le cas pratique où l'échelon de codage varie à un rythme syllabique. On peut alors choisir q de telle sorte que pendant un intervalle de temps qT l'échelon de codage peut être valablement considéré comme fixe. On peut alors poser :



    [0098] Les formules (22) peuvent alors s'écrire :



    [0099] En supposant que la fonction de corrélation Clk donnée par la formule (18) est nulle, on peut montrer que le terme général hi. fn-i (i allant de 0 à p) peut se mettre sous la forme suivante, à comparer à la formule (17) :



    [0100] Deux cas peuvent se présenter : - dans un cas la durée pT de la réponse impulsionnelle du trajet d'écho est inférieure ou égale à la durée qT pendant laquelle on peut valablement considérer comme fixe l'échelon de codage. On peut alors écrire δfn-i = 6f quel que soit i allant de 0 à p et l'on est ramené au cas déjà envisagé. En calculant les coefficients hi du filtre transversal selon les formules (19) et (20) on obtient des coefficients dont la valeur idéale hi.6f ne dépend pas des variations de l'échelon de codage pendant la durée pT. - dans l'autre cas, on a pT > qT et les coefficients du filtre transversal calculés selon les formules (19) et (20) ont une valeur idéale hi.δfn-i dépendant des variations de l'échelon de codage δfn-i pendant la durée pT de la réponse impulsionnelle du trajet d'écho. Si l'on appelle hi les coefficients calculés à l'aide des formules (19) et (20), on peut corri- ger ces coefficients ĥi pour obtenir les "vrais" coeffi- cients "i en effectuant l'opération :

    [0101] 

    Dans les deux cas envisages ci-dessus, on peut utiliser le filtre transversal 10 et le circuit de réglage 12 décrits à la figure 7. Dans le cas où l'on désire corriger les coefficients calculés en tenant compte des variations de l'échelon de codage, le codeur 14 doit comporter une sortie supplémentaire fournissant les p + 1 rapports

    tandis que le circuit de réglage 12 doit comporter une mémoire supplémentaire pour stocker ces rapports et des moyens de multiplication supplémentaires pour multiplier les coefficients calcules hi par les rapports correspondants



    [0102] Dans toute la description de l'annuleur d'écho de l'invention, on a utilise comme signal sortant de la voie réception et engendrant un écho dans la voie émission, un signal obtenu par décodage du signal codé en delta et existant forcément dans n'importe quel codeur delta. Mais il est clair que l'on pourrait utiliser aussi le signal f(t) lui-même entrant dans la voie émission, dont le signal obtenu par décodage du signal codé en delta n'est qu'une image. Toutefois, si l'on opère de cette manière, la qualité de l'annulation d'écho se trouve un peu dégradée, car les signaux appliqués à l'entrée du trajet d'écho et à l'entrée du trajet d'écho simulé que constitue le filtre transversal n'ont pas subi un traitement commun, comme dans l'autre manière d'opérer, ce qui fait que le bruit de codage en delta du signal f(t) par le codeur 14 se retrouve ajouté au signal différentiel d'écho résiduel en = dn - dn ; ce bruit de codage du au codeur delta peut ne pas être négligeable devant le signal différentiel d'écho résiduel en = dn - n recherché.


    Revendications

    1. Annuleur d'écho destiné à annuler un signal d'écho engendré dans une voie émission par un signal appliqué à une voie réception, cet annuleur d'écho comprenant un circuit de soustraction recevant sur sa première borne d'entrée un signal déduit du signal entrant dans la voie émission et sur sa deuxième borne d'entrée le signal de sortie d'un filtre transversal recevant un signal déduit du signal appliqué à la voie réception et muni d'un dispositif de réglage de ses coefficients à régler pour annuler la composante due au signal d'écho dans le signal de sortie du circuit de soustraction, caractérisé en ce qu'il comporte :

    - un codeur delta pour coder en delta, à la fréquence d'échantillonnage 1/T, le signal appliqué à la voie réception et pour fournir à l'entrée du filtre transversal les éléments binaires du signal codé en delta,

    - un circuit formeur de différence pour former, à la fréquence d'échantillonnage 1/T le signal d'écart entre les valeurs de deux échantillons consécutifs du signal entrant dans la voie émission et pour diriger ce signal d'écart vers la première borne d'entrée du circuit de soustraction,

    - enfin, un circuit intégrateur pour intégrer le signal de sortie du circuit de soustraction et pour appliquer le signal intégré à la borne de sortie de la voie émission.


     
    2. Annuleur d'écho selon la revendication 1, caractérisé en ce que le signal sortant de la voie réception est formé par décodage du signal codé en delta.
     
    3. Annuleur d'écho selon la revendication 2, caractérisé en ce que le signal sortant de la voie réception est fourni par le décodeur local présent dans le codeur delta.
     
    4. Annuleur d'écho selon l'une des revendications 2 et 3, caractérisé en ce que le signal sortant de la voie réception est appliqué à un filtre, coupant les fréquences plus élevées que la fréquence supérieure de la bande du signal appliqué à la voie réception.
     
    5. Annuleur d'écho selon l'une des revendications 1 à 4, caractérisé en ce qu'il comporte un circuit pour diviser par l'échelon de codage utilisé dans le codeur delta le signal d'écart fourni par le circuit formeur de différence et pour appliquer le signal divisé à la première borne d'entrée du circuit de soustraction et un circuit pour multiplier par ledit échelon de codage le signal sortant du circuit de soustraction et pour appliquer le signal multiplié à l'entrée dudit circuit intégrateur.
     
    6. Annuleur d'écho selon l'une des revendications 1 à 4, caractérisé en ce qu'il comporte un circuit pour multiplier par l'échelon de codage utilisé dans le codeur le signal sortant du filtre transversal et pour appliquer le signal multiplié à la deuxième borne d'entrée du circuit de soustraction.
     
    7. Annuleur d'écho selon l'une des revendications 1 à 6, caractérisé en ce que le circuit de réglage des coefficients du filtre transversal est muni de moyens pour régler les coefficients hi par récurrences successives a la fréquence d'échantillonnage 1/T, selon la formule de récurrence

    i entier allant de 0 à p, pT étant la durée de la réponse impulsionnelle du trajet d'écho,

    i(n) étant les coefficients du filtre a modifier à un instant nT,

    hi(n + 1) étant les coefficients du filtre modifiés et utilisables à l'instant (n + 1)T,

    en étant la valeur du signal fourni par le circuit de soustraction à l'instant nT,

    ΔFn-i étant les valeurs des éléments binaires du signal codé en delta, stockées dans le filtre transversal et entrées dans ce filtre aux instants (n - i)T.


     
    8. Annuleur d'écho selon les revendications 5 et 7 ou 6 et 7 muni d'un codeur delta à échelon de codage variable, caractérisé en ce que le circuit de réglage des coefficients du filtre transversal est en outre muni de moyens de multiplication pour multiplier les coefficients formés selon la formule de récurrence précitée, par

    δfn, δfn+1, δfn-i' δfn-i+1 étant les valeurs de l'échelon de codage respectivement aux instants nT, (n + 1)T, (n - i)T, (n - i + 1)T, les coefficients hi(n + 1) résultant de cette multiplication étant les coefficients modifiés, utilisables à l'instant (n + 1)T.
     
    9. Annuleur d'écho selon la revendication 8, caractérisé en ce que, pour simplifier le réglage des coefficients dans le circuit de réglage, les rapports i

    sont codes de telle façon que :



    x entier étant suffisamment grand pour que 2-x soit petit vis à vis de 1, le rapport

    étant codé de la même manière.
     
    10. Annuleur d'écho selon l'une des revendications 8 ou 9, caractérisé en ce qu'il comporte une mémoire pour stocker les p + 1 valeurs du rapport

    et la valeur du rapport

    et des moyens de multiplication pour multiplier pendant chaque période d'échantillonnage T, les p + 1 coefficients formés selon la formule de récurrence précitée par les rapports correspondants

    et par le rappori


     
    11. Annuleur d'écho selon l'une des revendications 8 à 10, caractérisé en ce que les valeurs de l'échelon de codage sont codées en MIC pour être utilisées dans le décodeur local présent dans le codeur, dans le circuit de réglage des coefficients et dans lesdits circuits pour multiplier et diviser par l'échelon de codage.
     
    12. Annuleur d'écho selon l'une des revendications 1 à 4, caractérisé en ce que le circuit de réglage des coefficients du filtre transversal est muni de moyens pour calculer les coefficients hi du filtre selon l'expression :

    q étant un nombre entier tel que q < p,

    dn-j étant les valeurs du signal d'écart fourni par le circuit formeur de différence aux instants (n - j)T,

    ΔFn-j-i étant les valeurs des éléments binaires du signal codé en delta, stockées dans le filtre et entrées dans le filtre aux instante (n - j - i)T.


     
    13. Annuleur d'écho selon la revendication 12, caractérisé en ce que les éléments binaires du signal codé en delta sont appliqués à la mémoire du filtre transversal par l'intermédiaire d'un circuit de retard qT, cette mémoire étant formée de (r + 1) registres à décalage, décalés à la fréquence d'échantillonnage 1/T, r entier étant tel que (p + 1) = (r + 1)(q + 1), le circuit de réglage des coefficients comportant une mémoire pour stocker lesdites valeurs de signal dn-j pendant la totalité d'une période de calcul s'étendant de l'instant nT à l'instant (n + q)T, le circuit de réglage comportant (r + 1) organes de calcul dont les entrées sont connectées d'une part respectivement auxdits (r + 1) registres à décalage et d'autre part à ladite mémoire pour les valeurs de signal dn-j, ces organes de calcul étant agencés pour former chacun à chaque instant d'échantillonnage de la période te calcul le produit de convolution des valeurs de signal dn-j et des valeurs des éléments binaires stockées à cet instant dans le registre à décalage correspondant, les produits de convolution formés par les organes de calcul étant multipliés par 1/(q + 1) pour constituer les coefficients calculés du filtre transversal, les coefficients calculés fournis successivement pendant la période de calcul et provenant respectivement du premier, du deuxième et du dernier organes de calcul étant respectivement ĥq à ĥo, ĥ2q+1 à ĥq+1 et hp à ĥp-q.
     
    14. Annuleur d'écho selon l'une des revendications 12 ou 13, muni d'un codeur delta à échelon variable, caractérisé en ce que q est en outre choisi de façon que pendant l'intervalle de temps qT l'échelon de codage puisse être considéré comme substantiellement fixe et en ce que le circuit de réglage des coefficients est en outre muni de moyens de multiplication pour multiplier les coefficients calculés selon l'expression précitée par

    δfn et δfn-i étant les valeurs de l'échelon de codage respectivement aux instants nT et (n - i)T, les coefficients hi résultant de cette multiplication étant les coefficients utilisables.
     
    15. Annuleur d'écho selon la revendication 14, caractérisé en ce qu'il comporte une mémoire pour stocker les p + 1 valeurs du rapport

    - et des moyens de multiplication pour multiplier les p + 1 coefficients formés pendant la période de calcul par les rapports correspondants


     
    16. Annuleur d'écho selon l'une des revendications 1 à 7 ou l'une des revendications 12 et 13, utilisé pour supprimer le couplage acoustique entre un haut-parleur et un microphone, caractérisé en ce que la voie réception est munie avant le codeur delta d'un dispositif de régulation de dynamique, le codeur delta est du type à échelon de codage fixe et à la sortie de la voie réception est inséré un amplificateur à gain réglable.
     




    Dessins