Brevet FR2417806A1 — publié le 19790914

L'invention a pour objet un convoluteur numérique, c'est-àdire un dispositif propre à effectuer un produit de convolution de grandeurs exprimées sous forme numérique. On sait que pour obtenir un produit de convolution Y défini par l'équation y = CIXl + CnXn où C1 ... Cn sont des multiplicandes, X1 ... Xn des multiplicateurs, on effectue jusqu'ici toutes les multiplications et toutes les additions que comprend 11 équation. Des dispositifs aptes à effectuer de telles opérations interviennent fréquemment dans des installations de modulation, de filtrage et/ou de traitement d'information, notamment d'analyse spectrale et d'égalisation automatique, comme dans les transmissions téléphoniques. Dans ce domaine, l'application de composants propres à la réalisation d'opérations dans un système binaire a permis des filtrages et modulations numériques à partir de valeurs échan tillonnées de l'information à transmettre. Les convoluteurs connus 'jusqu'à présent utilisent des éléments multiplicateurs et des accumulateurs en nombre égal au nombre des multiplicateurs ou des multiplicandes du produit de convolution, suivis d'un additionneur. Ces éléments font appel à des dispositifs de logique aléatoire, c'est-à-dire à des composants qui sont susceptibles de changer constamment de condition, comme par exemple des portes qui s'ouvrent ou se ferment. De tels dispositifs sont limités à un nombre de composants intégrés relativement petit par unité de surface, et d'autre part le temps et l'énergie nécessaires à leur fonctionnement sont prohibitifs quand on veut les utiliser dans le domaine des transmissions télephoniaues. C'est un but de l'invention de fournir un convoluteur numérique qui, tout en possédant des performances égales, sinon supérieures, à celles des convoluteurs connus, peut être réalisé avec un nombre d'éléments réduit, qui ait un faible encombrement, puisse fonctionner plus rapidement, tout en ne nécessitant pour son fonctionnement qu'une énergie faible. C'est aussi un but de l'invention de fournir un dispositif de modulation numérique et un dispositif de filtrage numérique qui soit de plus faible encombrement et de plus grande facilité d'emploi que les modulateurs numériques et filtres numériques connus. L'invention est caractérisée par l'application à un convoluteur numérique, pour effectuer l'opération Y=C1X1 + ... CnXn d'une mémoire morte adressable comprenant en mémoire les valeurs des combinaisons des multiplicandes Cl, ... C n avec 0 et 1 ainsi qu'un accumulateur apte à recevoir les diverses valeurs desdites combinaisons en fonction d'un adressage par les poids de même rang des multiplicateurs X1, ...Xn appliqués simultanément à la mémoire morte. L'exécution d'un produit de convolution n'implique alors qu'un simple adressage faisant appel aux multiplicateurs du produit de convolution, ce dernier étant obtenu à l'aide d'une sommation unique. La description qui suit, faite à titre d'exemple, se réfère aux dessins annexés, dans lesquels la figure 1 est la représentation schématique d'un convoluteur numérique classique; la figure 2 est la représentation schématique du convoluteur selon l'invention; et la figure 3 est la représentation schématique d'une variante de réalisation du convoluteur selon l'invention. Un convoluteur numérique classique apte à effectuer le produit de convolution Y=C1X1 + CZX, dans lequel X1 est représenté en système binaire par l'expression: n n-1 1 0 X1 X1 ... X1 X1 et X2 est représenté par une expression similaire, est illustré sur la figure 1. Il comprend un multiplicateur 10 aux deux entrées 10.1 et 10.2 duquel sont appliqués respectivement C1 et les différents poids xl de X1, la sortie ll du multiplicateur 10 étant reliée à l'entrée d'un accumulateur 12 dans lequel les produits partiels Clxli sont additonnnés avec un décalage correspondant au poids i pour obtenir le produit de C1 et de X1. La sortie de l'accumulateur 12 est reliée à la première entrée 13.1 d'un sommateur 13 dont la seconde entrée 13.2 est reliée à la sortie 14.1 d'un accumulateur 14 dont l'entrée 14.2 est reliée à la sortie 15.1 d'un multiplicateur 15, aux deux entrées 15.2 et 15.3 duquel sont appliqués respectivement C2 et les différents poids x2 de X2. Le résultat du produit de convolution est obtenu à la sortie 13.3 du sommateur 13. Le convoluteur selon l'invention (figure 2) comporte une mémoire morte 6 dans laquelle sont enreaistrées toutes les combinaisons possibles de C1 et C2 avec 0 et 1, à savoir 0, C1, C2, C1 + C2. Cette mémoire morte 6 est adressable par les poids de même rang des éléments X1, X2 de la convolution, à savoir les couples (xl, x2i) appliqués aux entrées 6.1 et 6.2 de la mémoire morte 6. Le couple (0,0) correspond à la valeur 0 mise en mémoire, le couple (0,1) à la valeur C2, le couple (1,0) à la valeur C1 et le couple (1,1) à la valeur C1 + C2 mise en mémoire. La mémoire morte 6 est suivie d'un accumulateur 7, le résultat du produit de convolution étant disponible à la sortie 8 de l'accumulateur 7. Si le convoluteur classique représenté à la figure 1 comprend deux multiplicateurs, deux accumulateurs et un additionneur, le convoluteur selon l'invention ne fait appel qu'à une mémoire morte et à un accumulateur. De plus, dans le convoluteur selon l'invention la mémoire utilisée est une mémoire morte, avec les avantages au point de vue volume, puissance et rapidité de fonctionnement, qui sont attachés à ce type d'élément. Le fonctionnement des convoluteurs selon les figures 1 et 2 sera expliqué ci-dessous en supposant, pour simplifier, que X1 = 1 0 1 et X2 = I 1 0 en représentation binaire. Pour le convoluteur connu selon la figure 1, le multiplicateur 10 et l'accumulateur 12 effectuent successivement les opérations schématisées dans la colonne de gauche du Tableau ci-dessous, et le multiplicateur 15 effectue, en liaison avec l'accumulateur 14, successivement les opérations indiquées dans la colonne de droite. Les résultats de ces différentes opérations sont alors additionnés dans le sommateur 13, comme il est schématisé par les traits pointillés du Tableau. Avec un convoluteur selon l'invention, la succession des opérations, au lieu d'être représentée suivant un cheminement vertical, s'effectue selon le cheminement horizontal schématisé par les traits mixtes. Dans ces conditions, le résultat des opérations correspondant à une ligne horizontale du Tableau ci-dessus provient d'un simple adressage de la mémoire morte 6, de laquelle on tire en correspondance de la première ligne horizontale, la valeur C1; en correspondance de la seconde ligne horizontale, la valeur C2; et en correspondance de la troisième ligne horizontale, la valeur C1 + C2, ces valeurs étant successivement portées dans l'accumulateur 7 à la sortie 8 duquel est délivré le produit de convolution. Sur l'entrée 6.1 de la mémoire 6 et sur 11 entrée 6.2 parviennent simultanément les poids de même rang représentatifs de X1 et X2, qui sont les multiplicateurs. Dans 11 exemple, c'est le couple (1,0) qui est d'abord utilisé, de sorte que comme l'adresse (1,0) correspond à la valeur C1 mise en mémoire, c'est cette valeur C1 qui est introduite dans l'accumulateur. Les poids d'ordre 2 définissent la combinaison (0,1) à laquelle correspond la valeur C2, qui est à son tour introduite dans l'accumulateur. Aux poids les plus forts correspond la combinaison C1 + C2. Les combinaisons introduites dans l'accûmulateur sont ensuite sommées avec un décalage correspondant aux poids des combinaisons. Cette unique opération fournit le résultat C1X1 + C2X2 du produit de convolution. Dans la forme de réalisation montrée sur la figure 3, le convoluteur selon l'invention comprend une mémoire morte 17 contenant les valeurs 0, C1, C2, C1+C2 et une seconde mémoire morte 18 contenant les valeurs 0, C'1, C'2, C'1+C'2. Les poids de même rang des multiplicateurs X1, X2 sont appliqués sur les entrées d'adressage des mémoires mortes 17 et 18. Selon le produit de convolution que l'on veut obtenir, C1X1 + C2X2 ou C'1X1 + C'2X2, c'est l'une ou l'autre des mémoires mortes qui est utilisée en conjonction avec l'accumulateur 19. La commutation de la mémoire 17 à la mémoire 18 est faite par un adressage extérieur comme schématisé par le circuit 21. Plus le nombre des produits à effectuer est grand, plus l'intérêt du convoluteur selon l'invention s'affirme par rapport aux convoluteurs connus. Ainsi, si l'on veut effectuer le produit de convolution C1X1 + ... C4X4, le convoluteur selon l'invention comprend, là aussi, un seul accumulateur, à dix-huit bits pour des coefficients C1 de seize bits, et une mémoire morte de deux cent quatre-vingt huit bits, cette dernière comprenant seize adresses, c'est-à-dire un nombre d'adresses égal au nombre des combinaisons avec 0 et 1 des quatre coefficients C1, C21 C3, C4. Le convoluteur classique du type représenté sur la figure 1 nécessite, par contre, l'utilisation de quatre accumulateurs à seize bits et d'un additionneur à quatre entrées. REVENDICATIONS 1.- Dispositif pour effectuer le produit de convolution numérique C1 X1 + ... CnXn dans lequel les coefficients numériques Ci sont constants et les multiplicateurs Xi peuvent être variables, comportant au moins un accumulateur, caractérisé en ce qu'il comprend un unique accumulateur relié à la sortie d'une mémoire morte dans laquelle sont enregistrées les diverses valeurs des combinaisons des coefficients C1 ... C n avec 0 et 1, ainsi que des moyens pour appliquer aux entrées d'adressage de la mémoire morte les poids de même rang des multiplicateurs X1 ... Xn. 2.- Dispositif selon la revendication 1, caractérisé en ce qu'il comprend plusieurs mémoires mortes dont chacune peut être mise sélectivement en relation avec l'accumulateur. 3.- Appareil comprenant un dispositif de convolution selon la revendication 1 ou la revendication 2, faisant partie d'une installation de filtrage numérique. 4.- Appareil comprenant un dispositif de convolution selon l'une des revendications 1 à 3, faisant partie d'une installation de modulation numérique. 5.- Appareil comportant un dispositif de convolution selon l'une des revendications 1 à- -3, faisant partie d'une installation d'analyse spectrale. 6.- Appareil comportant un dispositif de convolution selon l'une des revendications 1 à 3, faisant partie d'une installation d'égalisation automatique.