FR2685513A1 - Circuit method and device for transforming a digital signal into another digital signal, according to a non-linear function and neural network using such a method - Google Patents

Circuit method and device for transforming a digital signal into another digital signal, according to a non-linear function and neural network using such a method Download PDF

Info

Publication number
FR2685513A1
FR2685513A1 FR9115804A FR9115804A FR2685513A1 FR 2685513 A1 FR2685513 A1 FR 2685513A1 FR 9115804 A FR9115804 A FR 9115804A FR 9115804 A FR9115804 A FR 9115804A FR 2685513 A1 FR2685513 A1 FR 2685513A1
Authority
FR
France
Prior art keywords
digital signal
word
value
values
bits
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
FR9115804A
Other languages
French (fr)
Other versions
FR2685513B1 (en
Inventor
Pazienti Francesco
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Alcatel Lucent NV
Original Assignee
Alcatel NV
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Alcatel NV filed Critical Alcatel NV
Publication of FR2685513A1 publication Critical patent/FR2685513A1/en
Application granted granted Critical
Publication of FR2685513B1 publication Critical patent/FR2685513B1/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/02Digital function generators
    • G06F1/03Digital function generators working, at least partly, by table look-up
    • G06F1/035Reduction of table size

Abstract

Circuit method and device for transforming a digital signal (I) into another digital signal (O), according to a non-linear function (f), based on the use of a look-up table (LUT) containing numerical values of the said function (f) spaced a uniform distance ( delta ) apart. In order to reduce the dimensions of the look-up table, values which are very distant from one another are tabulated and intermediate values are calculated by using the closest tabulated value and by appending thereto correction elements, which are simple to calculate, on the basis of data contained in the look-up table.

Description

Méthode et dispositif de circuits pour transformer un signalMethod and circuit device for transforming a signal

numérique en un autre signal numérique, selon une fonction non linéaire et réseau neuronal utilisant une telle méthode.  digital to another digital signal, according to a nonlinear function and neural network using such a method.

La présente invention concerne une méthode et un dispositif de circuits pour transformer un signal numérique  The present invention relates to a method and a circuit device for transforming a digital signal

en un autre signal numérique, selon une fonction non linéaire, particulièrement appropriée pour être utilisée de 5 façon répétée dans la réalisation de structures régulières, telles que des réseaux neuronaux.  in another digital signal, according to a nonlinear function, particularly suitable to be used repeatedly in the realization of regular structures, such as neural networks.

Comme il est connu, le problème de l'application d'une fonction non linéaire à un signal numérique, afin de le transformer en un autre signal ayant des caractéristiques10 différentes, se présente dans divers domaines des techniques, de l'électronique, et des solutions ont été trouvées, dépendant du domaine particulier, ainsi que d'exigences relatives à la vitesse, la précision ou la simplicité.15 Une technique connue consiste à utiliser un microcalculateur qui exécute la fonction désirée par voie  As is known, the problem of applying a non-linear function to a digital signal, in order to transform it into another signal having different characteristics, occurs in various fields of technology, electronics, and solutions have been found, depending on the particular domain, as well as requirements relating to speed, accuracy, or simplicity. A known technique is to use a microcomputer that performs the desired function per channel.

analytique en appliquant un programme Une telle solution est très précise, demande peu de mémoire (pour l'enregistrement de la fonction elle même), mais, lorsque20 cette fonction varie, cela peut demander des structures d'exécution et de calcul compliquées et coûter du temps.  Such a solution is very precise, requires little memory (for the recording of the function itself), but when this function varies, it may require complicated execution and calculation structures and cost a lot of money. time.

Des méthodes basées sur l'utilisation de ce que l'on appellera des tables de conversion contenant des valeurs numériques de la fonction sont largement utilisées,25 spécialement lorsque la vitesse et la précision sont souhaitées en même temps Elles sont également répandues et largement utilisées dans les cas o le parcours analytique n'est pas défini, par exemple dans les systèmes électroniques de commande de vitesse, ou est trop complexe, par exemple dans les dispositifs de calcul de résidus ou de transformée de Fourier rapide (FFT): De l'article "High-resolution digital sinewave génération" paru dans ELECTRONIC LETTERS du 3 février 1983, vol 19, no 3, on peut conclure qu'il est une notion  Methods based on the use of so-called conversion tables containing numerical values of the function are widely used, especially when speed and accuracy are desired at the same time. They are also widespread and widely used in cases where the analytical path is not defined, for example in electronic speed control systems, or is too complex, for example in the calculation devices of residuals or fast Fourier transform (FFT): From the article "High-resolution digital sinewave generation" appeared in ELECTRONIC LETTERS of February 3, 1983, vol 19, no 3, one can conclude that it is a notion

répandue que l'utilisation de tables de conversion rend possible d'atteindre un bon niveau de précision au seul coût de l'utilisation de mémoires de très grandes dimensions. 5 Une réduction des dimensions des tables de conversion, ainsi qu'il est décrit dans l'article sus-mentionné, peut-  widespread that the use of conversion tables makes it possible to achieve a good level of precision at only the cost of using very large memories. 5 A reduction in the size of the conversion tables, as described in the above-mentioned article, can

être obtenue par interpolation, par exemple au moyen de fonctions polynomiles, entre des valeurs qui y sont  be obtained by interpolation, for example by means of polynomial functions, between values which are there

enregistrées, afin de calculer des valeurs intermédiaires:10 cela conduit malheureusement à des dépenses importantes en temps, calculs et structures.  recorded, in order to calculate intermediate values: this unfortunately leads to significant expenditure in time, calculations and structures.

Lorsque la fonction non linéaire doit être appliquée à un signal variant dans le temps d'une façon continue et  When the nonlinear function is to be applied to a time-varying signal in a continuous and

lente, cela peut être obtenue en enregistrant, dans la table15 de conversion, les différences entre des valeurs adjacentes de celle-ci.  This can be achieved by recording, in the conversion table, the differences between adjacent values thereof.

La solution proposée dans l'article sus-mentionné, basée sur le temps s'écoulant au cours des transitions entre niveaux adjacents, se réfère au même cas.20 La présente invention a pour objet une méthode pour transformer un signal numérique en un autre signal numérique, conformément à une fonction non linéaire, qui assure un bon niveau de précision, qui convient à une réalisation simple, rapide et peu onéreuse en ce qui25 concerne la mémoire nécessaire, et qui est utilisable à la fois pour des signaux électriques analogiques et numériques, ainsi qu'un dispositif de circuits appliquant cette méthode, sans souffrir des inconvénients de l'art antérieur. Cet objet est atteint par la méthode spécifiée dans la revendication 1 et par le dispositif de circuits spécifié dans la revendication 5; un réseau neuronal appliquant cette méthode est défini dans la revendication 11. Des caractéristiques avantageuses de l'invention sont  The solution proposed in the above-mentioned article, based on the time flowing during the transitions between adjacent levels, refers to the same case. The object of the present invention is a method for transforming a digital signal into another signal. digital, according to a non-linear function, which provides a good level of accuracy, which is suitable for a simple, fast and inexpensive realization with regard to the necessary memory, and which is usable for both analog and digital electrical signals , as well as a circuit device applying this method, without suffering the disadvantages of the prior art. This object is achieved by the method specified in claim 1 and by the circuit device specified in claim 5; a neural network applying this method is defined in claim 11. Advantageous features of the invention are

énoncées dans les revendications dépendantes.  set out in the dependent claims.

L'invention est basée sur l'utilisation d'une table de conversion et sur l'idée d'y inclure des valeurs qui sont très distantes les unes des autres, ce qui réduit les  The invention is based on the use of a conversion table and on the idea of including values that are very distant from each other, which reduces the

dimensions de la table de conversion, et de calculer des valeurs intermédiaires en utilisant la valeur tabulée la plus proche et en ajoutant des éléments de correction,5 simples à calculer, dépendant de données contenues dans la table de conversion elle-même.  dimensions of the conversion table, and calculate intermediate values using the nearest tabulated value and adding correction elements, 5 simple to calculate, depending on data contained in the conversion table itself.

L'invention sera décrite plus en détail dans ce qui suit en se référant aux dessins annexés dans lequel: la figure 1 représente un diagramme-bloc d'un dispositif de circuits agencé pour mettre en oeuvre la méthode de la présente invention, la figure 2 représente une couche d'un réseau neuronal dont les éléments utilisent ladite méthode pour transformer des signaux d'entrée.15 Le dispositif de circuits représenté à la figure 1, conçu pour transformer un signal numérique I en un autre signal numérique O conformément à une fonction non linéaire f, comprend les blocs suivants: un processeur PR arrangé pour lire le signal numérique I, pour le traiter selon la20 méthode de la présente invention, qui sera décrite ci-après, et pour engendrer en conséquence le signal numérique O; une mémoire MEM conçue pour contenir des valeurs numériques de paramètres caractéristiques de la fonction non linéaire f et une table de conversion LUT conçue pour contenir des valeurs25 numériques de la fonction non linéaire f et sur l'utilisation de laquelle est basée la méthode de la présente invention, de telles valeurs numériques sont lues par le processeur PR afin d'appliquer ladite méthode. Avant de décrire plus en détail la mise en oeuvre par circuits de ladite méthode, on va considérer son application en relation avec la fonction non linéaire f appelée "sigmoïde" O = f(I) = 1/( 1 +exp(-I)), étant donné l'application possible de l'invention dans le domaine des réseaux neuronaux; la méthode peut toutefois  The invention will be described in more detail in the following with reference to the accompanying drawings in which: FIG. 1 shows a block diagram of a circuit device arranged to implement the method of the present invention, FIG. represents a layer of a neural network whose elements use said method to transform input signals. The circuit device shown in FIG. 1, adapted to transform a digital signal I into another digital signal O in accordance with a function nonlinear f, comprises the following blocks: a processor PR arranged to read the digital signal I, to process it according to the method of the present invention, which will be described hereinafter, and to generate accordingly the digital signal O; a memory MEM designed to contain numerical values of characteristic parameters of the nonlinear function f and a LUT conversion table designed to contain numerical values of the nonlinear function f and the use on which the method of the present invention is based; In the invention, such numerical values are read by the processor PR to apply said method. Before describing in more detail the circuit implementation of this method, we will consider its application in relation to the nonlinear function f called "sigmoid" O = f (I) = 1 / (1 + exp (-I) ), given the possible application of the invention in the field of neural networks; however, the method can

être étendue à toute fonction continue qui possède une dérivée première continue.  be extended to any continuous function that has a continuous first derivative.

La méthode utilise une table de conversion LUT contenant des valeurs numériques O j, j 6 O P, de ladite fonction f, prises à une distance régulière Delta, correspondant à des valeurs numériques Ij, j E O P, d'une variable indépendante La valeur P est la taille exprimée en nombre d'emplacements, de la table conversion, et elle est égale à 2 à la puissance ni Les valeurs numériques Oj de la  The method uses a conversion table LUT containing numerical values O j, j 6 OP, of said function f, taken at a regular distance Delta, corresponding to numerical values Ij, j EOP, of an independent variable. The value P is the size expressed in number of locations, of the conversion table, and it is equal to 2 to the power ni The numerical values Oj of the

fonction consistent en mots de N 2 bits.  function consist of words of N 2 bits.

Si l'on suppose qu'une valeur numérique particulière. v I est lue par le processeur PR à un certain moment,  If we assume a particular numerical value. v I is read by the PR processor at a certain time,

l'objectif de la méthode est d'obtenir une valeur numérique so aussi proche que possible v O = f(v I) La valeur numérique15 s O coïncide avec v O seulement lorsque v I coïncide avec une valeur numérique tabulée Ij, et dans ce cas s O = v O = Oj.  the objective of the method is to obtain a numerical value so as close as possible v O = f (v I) The numerical value 15 s O coincides with v O only when v I coincides with a tabular numeric value Ij, and in this case case s O = v O = Oj.

Dans un cas plus général o cela ne se produit pas, la méthode se déroule comme explicité ci-après.  In a more general case where this does not happen, the method proceeds as explained below.

La valeur numérique n I correspond à un premier mots de N 3 bits A partir de ce premier mot, deux autres mots sont extraits: un deuxième mot j constitué par les ni bits les plus significatifs et un troisième mot d I constitué par les n 3-nl bits les moins significatifs restants. La table de conversion est adressée à l'aide du deuxième mot j et trois valeurs consécutives Oj, Oj+i, Oj+ 2 correspondant aux emplacements j j+l, j+ 2 en sont extraites. Ensuite, deux éléments de correction Ci et C 2 sont calculés selon les équations o O j+I Cl = d I et Delta C 2 = F * ( O 20 + o j -2 j+l j  The numerical value n I corresponds to a first word of N 3 bits From this first word, two other words are extracted: a second word j constituted by the most significant ni bits and a third word d I constituted by the n 3 -nl least significant bits remaining. The conversion table is addressed using the second word j and three consecutive values Oj, Oj + i, Oj + 2 corresponding to the locations j j + 1, j + 2 are extracted therefrom. Then, two correction elements Ci and C 2 are calculated according to the equations o O j + I Cl = d I and Delta C 2 = F * (O 20 + o j -2 j + l j

dans lesquelles Delta est égal à 2 à la puissance (n 3-nl).  in which Delta is equal to 2 to the power (n 3-nl).

En relation avec le degré de précision désiré et la complexité des calculs, le facteur F peut être calculée selon l'une des équations suivantes F = d I * K/L F = M/N; La deuxième équation étant évidemment plus simple, mais moins précise. Les valeurs K et L sont expérimentales et varient comme varient la fonction non linéaire f et les nombres ni, N 2 et N 3 Les valeurs M et N sont aussi de ce type mais ne coïncident généralement pas avec les valeurs K et L. La valeur estimée so (comme indiqué, l'erreur est nulle dans de rares cas seulement) de la fonction non linéaire f, correspondant à la valeur v I, est calculée15 comme:  In relation to the degree of precision desired and the complexity of the calculations, the factor F can be calculated according to one of the following equations F = d I * K / L F = M / N; The second equation is obviously simpler, but less precise. The values K and L are experimental and vary as the nonlinear function f and the numbers ni, N 2 and N 3 vary. The values M and N are also of this type but do not generally coincide with the values K and L. The value estimated so (as indicated, the error is zero in rare cases only) of the nonlinear function f, corresponding to the value v I, is calculated as:

s O = Oi + Cl C 2.s O = Oi + Cl C 2.

Il a été indiqué que les valeurs K, L, M et N sont expérimentales; cela doit être entendu en ce que, avant d'appliquer la méthode, on a calculé, par des calculs20 analytiques ou par simulation à l'aide d'un calculateur, les valeurs de K, L, M et N qui minimisent l'erreur E se  It has been stated that K, L, M and N are experimental; this must be understood in that, before applying the method, the values of K, L, M and N which minimize the error have been calculated by analytical calculations or by computer simulation. E se

produisant du fait de l'application de méthode pour ladite fonction et représentée par: E = s O f(v I).  producing because of the method application for said function and represented by: E = s O f (v I).

On peut utiliser par exemple la technique bien connue de l'erreur quadratique moyenne.  For example, the well-known technique of squared mean error can be used.

On se référera maintenant au dispositif de circuits représenté à la figure 1.  Reference will now be made to the circuit device shown in FIG.

Les opérations de calcul associés à la méthode décrite sont effectuées par le processeur PR qui lit, en tant que de besoin, les valeurs K, L, M et N dans une mémoire MEM et les  The calculation operations associated with the method described are performed by the processor PR which reads, as necessary, the values K, L, M and N in a memory MEM and the

valeurs tabulées Oj dans la table de conversion LUT Un tel processeur peut être réalisé, en fonction des exigences de temps et de coût, soit par un microprocesseur commandé par35 une mémoire de programme et une mémoire de données, ou par des circuits de logique distribuée.  Tabulated values Oj in the LUT conversion table Such a processor can be realized, depending on the time and cost requirements, either by a microprocessor controlled by a program memory and a data memory, or by distributed logic circuits.

Les deux alternatives tirent avantage, en termes de temps et de complexité, de ce que, le choix des valeurs K, L, M et N et Delta étant relativement libre, les opérations mathématiques, plus onéreuses, sont réduites à deux 5 multiplications, l'une pour calculer le premier coefficient de correction et l'autre pour le second Le processeur PR doit évidemment effectuer aussi nombre d'additions, soustractions et décalages, mais ces opérations n'ont qu'un poids insignifiant comparées aux multiplications.10 Le processeur PR peut être soit du type fonctionnant en arithmétique à virgule flottante, soit, plus avantageusement, du type fonctionnant en arithmétique à virgule fixe, avec, bien sûr, un degré différent de précision.15 Bien entendu, ledit dispositif de circuits pourrait aussi être utilisé, par exemple, dans le domaine des mesures électroniques, en connexion avec un transducteur d'une quantité physique (pression, température, etc), comme élément rapide et précis de correction de linéarité Dans un tel cas, il serait nécessaire de prévoir une interface d'entrée II, conçue pour lire un signal analogique SI et  Both alternatives take advantage, in terms of time and complexity, that since the choice of K, L, M and N and Delta values is relatively free, the more expensive mathematical operations are reduced to two multiplications. one to calculate the first coefficient of correction and the other for the second The processor PR must obviously also perform many additions, subtractions and offsets, but these operations have an insignificant weight compared to the multiplications.10 The processor PR can be either of the type operating in floating-point arithmetic, or, more advantageously, of the type operating in fixed-point arithmetic, with, of course, a different degree of precision. Of course, said circuit device could also be used for example, in the field of electronic measurements, in connection with a transducer of a physical quantity (pressure, temperature, etc.), as a fast and preceeding element In such a case, it would be necessary to provide an input interface II, designed to read an analog signal SI and

engendrer en correspondance un signal numérique I, ainsi qu'une interface de sortie OI, conçue pour lire le signal numérique O et engendrer en correspondance un signal25 analogique SQ.  correspondingly generating a digital signal I, as well as an output interface OI, designed to read the digital signal O and correspondingly generate an analog signal SQ.

L'interface d'entrée II peut, par exemple, consister en un circuit échantillonneur-bloqueur, un convertisseur A/N et une porte d'entrée, ou d'autres arrangements similaires bien connus dans le domaine des appareils de mesure30 numériques, et le signal numérique I consiste en une séquence d'échantillons équidistants, séparés et convertis en code numérique. L'interface de sortie OI peut, par exemple, être réalisée par une porte de sortie, un convertisseur N/A et un  The input interface II may, for example, consist of a sample-and-hold circuit, an A / D converter and an input gate, or other similar arrangements well known in the field of digital meters, and the digital signal I consists of a sequence of equidistant samples, separated and converted into digital code. The output interface OI can, for example, be realized by an output port, a D / A converter and a

circuit de maintien, ou d'autres arrangements similaires bien connus de l'homme de métier.  retaining circuit, or other similar arrangements well known to those skilled in the art.

Finalement, il reste à dire que, selon les circonstances, tout ce dispositif peut avantageusement être intégré sur une puce. En se reportant maintenant à la figure 2, chaque élément de traitement PE représente un élément d'un réseau neuronal, appelé neurone, et est composé essentiellement du dispositif de circuits de la figure 1. Une vue générale simple et complète des réseaux neuronaux peut être trouvée dans la revue "COMPUTERS", de  Finally, it remains to say that, depending on the circumstances, all this device can advantageously be integrated on a chip. Referring now to FIG. 2, each PE treatment element represents an element of a neural network, called a neuron, and is composed essentially of the circuit device of FIG. 1. A simple and complete overview of the neural networks can be found in the journal "COMPUTERS", of

mars 1988, vol 21, na 3.March 1988, vol 21, na 3.

Tous les neurones sont connectés entre eux par un bus commun CBUS Chaque neurone "i" calcule sa valeur de sortie Ui et transmet cette donnée à tous les autres neurones qui l'utiliseront comme entrée pour le calcul de la valeur15 numérique I de sa sortie au prochain instant suivant, selon l'équation connue: i =NN I =f( W* U) i-tl i i dans laquelle NN est le nombre de neurones de la couche; f est une fonction non linéaire, en particulier une "sigmoïde"; Wi sont les poids appelés sinaptiques,  All the neurons are connected to each other by a common CBUS bus. Each neuron "i" calculates its output value Ui and transmits this data to all the other neurons which will use it as input for the calculation of the digital value I of its output at next next instant, according to the known equation: i = NN I = f (W * U) i-tl ii in which NN is the number of neurons of the layer; f is a nonlinear function, in particular a "sigmoid"; Wi are the weights called sinaptics,

caractéristiques des réseaux neuronaux.  characteristics of neural networks.

Les poids sinaptiques peuvent avoir une valeur fixe ou variable selon une certaine règle d'apprentissage choisie  The sinaptic weights can have a fixed or variable value according to a chosen learning rule

par le concepteur du réseau et ils sont contenus dans une mémoire externe EMEM connectée au processeur PR via un bus30 local LBUS, qui peut ainsi les lire et, selon les circonstances, les modifier.  by the network designer and they are contained in an external memory EMEM connected to the processor PR via a local bus30 LBUS, which can read them and, depending on the circumstances, modify them.

De meilleures performances, en ce qui concerne la vitesse, la fiabilité, la consommation et l'encombrement  Better performance, in terms of speed, reliability, power consumption and footprint

peuvent être obtenues en intégrant le réseau neuronal entier35 sur une puce en utilisant les techniques d'intégration à grande échelle (VLSI).  can be obtained by integrating the entire neural network on a chip using large scale integration techniques (VLSI).

Ainsi, l'invention atteint complètement les objectifs indiqués précédemment En fait, avec une telle méthode et un tel dispositif de circuits on obtient l'application d'une fonction non linéaire à un signal électrique, numérique ou 5 analogique, avec un degré élevé de précision, en raison de la présence d'éléments de correction dans le calcul, et avec un mode de réalisation qui est simple et de fonctionnement rapide, du fait de tels éléments de correction, et peu coûteux en ce qui concerne la mémoire nécessaire, puisque10 l'utilisation de ces éléments de correction permet d'accroître la distance entre les valeurs tabulées de la  Thus, the invention fully achieves the objectives indicated above. In fact, with such a method and such a circuit device is obtained the application of a non-linear function to an electrical, digital or analog signal, with a high degree of accuracy, because of the presence of correction elements in the calculation, and with an embodiment that is simple and fast operation, because of such correction elements, and inexpensive with respect to the memory required, since the use of these correction elements makes it possible to increase the distance between the tabulated values of the

fonction, ce qui signifie une limitation du nombre de valeurs qui doivent être enregistrées dans la table de conversion.  function, which means limiting the number of values that must be recorded in the conversion table.

Claims (4)

REVENDICATIONS 1 Méthode pour transformer un signal numérique (I) en un autre signal numérique ( 0) selon une fonction non linéaire (f), cette méthode étant basée sur l'utilisation d'une table de conversion (LUT) contenant 2 N 1 valeurs numériques de ladite fonction non linéaire prises (f) à une distance constante (Delta), lesdites valeurs numériques correspondant à 2 N 1 mots, chacun composé de N 2 bits,10 caractérisée en ce qu'elle comprend les étapes consistant à: a) lire une valeur (v I) de ladite valeur numérique (I), ladite valeur (v I) correspondant à un premier mot composé de N 3 bits, et ladite distance constante (Delta) étant égale à 2 (n 3-nl), b) extraire dudit premier mot un deuxième mot (j) composé des nl bits les plus significatifs dudit premier mot, et un troisième mot (d I) composé des N 3-nl bits les moins significatifs dudit premier mot,20 c) adresser une table de conversion (LUT) à l'aide dudit deuxième mot (j) et lire trois valeurs numériques consécutives ( O j, Oj+l, O j+ 2) de ladite fonction non linéaire (f), et d) engendrer, en correspondance avec ladite valeur (v I), ledit autre signal numérique ( 0) dont la valeur (s O) est donnée par s O = O j + Cl C 2, expression dans laquelle C 1 et C 2 sont respectivement un premier et un deuxième élément de correction relié auxdites30 trois valeurs numériques consécutives (Oj, Oj+ 1, O j+ 2) de ladite fonction non linéaire (f) par les expressions suivantes: o -o j+ J C 1 = * d I et Delta  1 Method for transforming a digital signal (I) into another digital signal (0) according to a non-linear function (f), this method being based on the use of a conversion table (LUT) containing 2 N 1 numerical values said nonlinear function taken (f) at a constant distance (Delta), said numerical values corresponding to 2 N 1 words, each consisting of N 2 bits, characterized in that it comprises the steps of: a) reading a value (v I) of said numerical value (I), said value (v I) corresponding to a first word composed of N 3 bits, and said constant distance (Delta) being equal to 2 (n 3-nl), b ) extracting from said first word a second word (j) composed of the nl most significant bits of said first word, and a third word (d I) composed of the N 3 -n least significant bits of said first word, c) addressing a table of conversion (LUT) using said second word (j) and read three consecutive numerical values utives (Oj, Oj + l, O j + 2) of said non-linear function (f), and d) generating, in correspondence with said value (v I), said other digital signal (0) whose value (s O ) is given by s O = O j + Cl C 2, where C 1 and C 2 are respectively a first and a second correction element connected to said three consecutive numerical values (Oj, Oj + 1, O j + 2) of said nonlinear function (f) by the following expressions: o -o j + JC 1 = * d I and Delta C 2 = F <O -20 O)C 2 = F <O -20 O) t j+ 2 j+l j dans lesquelles la valeur de F dépend de ladite fonction non linéaire (f) et desdits nombres de bits ni, N 2 et N 3. 2 Méthode conforme à la revendication 1, caractérisée en ce que la valeur de F est donnée par  in which the value of F depends on said nonlinear function (f) and said number of bits n1, N2 and N3. 2 Method according to claim 1, characterized in that the value of F is given by KK F = d I * expression dans laquelle les valeurs de K et L dépendent de  F = d I * expression in which the values of K and L depend on ladite fonction non linéaire (f) et desdits nombres de bits10 ni, N 2 et N 3.  said non-linear function (f) and said numbers of bits n1, N2 and N3. 3 Méthode conforme à la revendication 1, caractérisée en ce que la valeur de F est donnée par: M  3 Method according to claim 1, characterized in that the value of F is given by: M F = _F = _ N expression dans laquelle les valeurs de M et N dépendent de ladite fonction non linéaire et desdits nombres de bits ni, n 2 et N 3. 4 Méthode conforme à la revendication 2 ou 3, caractérisée en ce que lesdites valeurs de K et L ou M et N sont calculées par avance en minimisant l'expression: s O-f(v I)  An expression in which the values of M and N depend on said nonlinear function and said number of bits n1, n2 and N3. 4. Method according to claim 2 or 3, characterized in that said values of K and L or M and N are calculated in advance by minimizing the expression: s Of (v I) Dispositif de circuits pour la mise en oeuvre de la méthode définie dans les revendications 1 à 4, du type  Circuit arrangement for implementing the method defined in claims 1 to 4, of the type comprenant un processeur PR pour lire ledit signal numérique (I), le traiter et émettre en conséquence ledit autre signal numérique ( 0), et une table de conversion (LUT) connectée audit processeur (PR), caractérisé en ce qu'il comprend une mémoire (MEM) connectée audit processeur (PR) et capable de30 contenir lesdits valeurs de K et L ou M et N. 6 Dispositif de circuits conforme à la revendication , caractérisé en ce que ledit processeur (PR) comprend un microprocesseur commandé par un programme, une mémoire de  comprising a processor PR for reading said digital signal (I), processing it and consequently transmitting said other digital signal (0), and a conversion table (LUT) connected to said processor (PR), characterized in that it comprises a memory (MEM) connected to said processor (PR) and capable of holding said values of K and L or M and N. 6 Circuit arrangement according to claim, characterized in that said processor (PR) comprises a microprocessor controlled by a program , a memory of programme et une mémoire de données.  program and a data memory. il 7 Dispositif de circuits conforme à la revendication , caractérisé en ce que ledit processeur est réalisé en circuits à logique distribuée. 8 Dispositif de circuits conforme à la revendication 5, caractérisé en ce que ledit processeur (PR) est du type fonctionnant en arithmétique à virgule flottante. 9 Dispositif de circuits conforme à la revendication , caractérisé en ce que ledit processeur (PR) est du type fonctionnant en arithmétique à virgule fixe. 10 Dispositif de circuits conforme à la revendication , caractérisé en ce qu'il est intégré sur une puce.  The circuit device according to claim 1, characterized in that said processor is made of distributed logic circuits. 8 circuit device according to claim 5, characterized in that said processor (PR) is of the type operating in floating point arithmetic. 9 circuit device according to claim, characterized in that said processor (PR) is of the type operating in fixed point arithmetic. Circuit arrangement according to the claim, characterized in that it is integrated on a chip. 11 Réseau neuronal incluant une multiplicité de neurones, chacun d'eux consistant en un élément de traitement (PE), et un bus commun (CBUS) adapté pour15 interconnecter lesdits éléments de traitement (PE), chacun desdits élément de traitement (PE) comprenant a) des moyens de circuits capables de: lire des données (Vi) progressant le long dudit bus commun (CBUS) et venant d'éléments de traitement restants A neural network including a multiplicity of neurons, each consisting of a processing element (PE), and a common bus (CBUS) adapted to interconnect said processing elements (PE), each of said processing element (PE) comprising a) circuit means capable of: reading data (Vi) advancing along said common bus (CBUS) and coming from remaining process elements (PE),(EP) engendrer un signal numérique (I) donné par la somme de produits desdites données (Ui) avec des poids sinaptiques correspondants (Wi), et appliquer une fonction non linéaire (f), en particulier une sigmoïde, audit signal numérique (I) et le transformer en un autre signal numérique ( 0) ayant des caractéristiques différentes, lesdits moyens de circuit comprenant:. une table de conversion (LUT) contenant 2 N 1 valeurs numériques ( 01 /, Oni) de ladite fonction non linéaire (f) prises à une distance constante (Delta), lesdites valeurs numériques ( 01, Oni) correspondant à ni mots chacun d'eux composé de N 2 bits,. un processeur (PR), connecté à ladite table de conversion (LUT), adapté en particulier pour lire lesdits signaux numériques (I), exécuter un traitement sur eux et émettre en conséquence ledit autre signal numérique (O), ledit traitement étant accompli par les étapes de: i) lire une valeur (v I) dudit signal numérique (I), ladite valeur (v I) correspondant à un premier mot composé de N 3 bits, et ladite distance constante (Delta) étant égale à 2 (n 3 ni) ii) extraire dudit premier mot un deuxième mot (j) composé des ni bits les plus significatifs dudit premier mot, et un troisième mot (d I) composé des N 3-nl bits les10 moins significatifs dudit premier mot, iii) utiliser le deuxième mot (j) comme adresse pour lire dans la table de conversion (LUT) trois valeurs numériques consécutives (Oj, Oj+ 1, O j+ 2) de ladite fonction non linéaire (f),15 iv) émettre, en correspondance avec ladite valeur (v I), ledit signal numérique ( 0) dont la valeur (s O) est donnée par: s O = Oj + Cl C 2, expression dans laquelle Ci et C 2 sont respectivement un premier et un deuxième élément de correction reliés auxdites trois valeurs numériques consécutives ( O j, Oj+ 1, O j+ 2) de ladite fonction non linéaire par les expressions suivantes: o o j+ j Cl = d I Del ta  generating a digital signal (I) given by the sum of products of said data (Ui) with corresponding sinaptic weights (Wi), and applying a nonlinear function (f), in particular a sigmoid, to said digital signal (I) and the transforming into another digital signal (0) having different characteristics, said circuit means including: a conversion table (LUT) containing 2 N 1 numerical values (01 /, Oni) of said nonlinear function (f) taken at a constant distance (Delta), said numerical values (01, Oni) corresponding to no words each d 'them composed of N 2 bits ,. a processor (PR), connected to said conversion table (LUT), adapted in particular for reading said digital signals (I), executing a processing on them and correspondingly transmitting said other digital signal (O), said processing being performed by the steps of: i) reading a value (v I) of said digital signal (I), said value (v I) corresponding to a first word composed of N 3 bits, and said constant distance (Delta) being equal to 2 (n 3 ni) ii) extracting from said first word a second word (j) composed of the most significant ni bits of said first word, and a third word (d I) composed of N 3 -n 1 least significant bits of said first word, iii) using the second word (j) as an address to read in the conversion table (LUT) three consecutive numerical values (Oj, Oj + 1, O j + 2) of said non-linear function (f), iv) to transmit, in correspondence with said value (v I), said digital signal (0) whose value (s O) is given p ar: s O = Oj + Cl C 2, where Ci and C 2 are respectively a first and a second correction element connected to said three consecutive numerical values (O j, Oj + 1, O j + 2) of said non-linear function by the following expressions: oo j + j Cl = d I Del ta C 2 F * < O 2 O +C 2 F * <O 2 O + j+ 2 j+l J dans lesquelles la valeur de F est donnée par une expression choisie entre les suivantes F = d I *K / L,  in which the value of F is given by an expression chosen between the following F = d I * K / L, F = M/ N,F = M / N, dans lesquelles les valeurs de K et L, M et N dépendent de ladite fonction non linéaire (f) et desdits nombres de bits nl, N 2, N 3 et une mémoire interne (MEM), connectée audit processeur (PR), capable de contenir les valeurs de K et L ou M et N. b) une mémoire externe (EMEM) capable de contenir les valeurs desdits poids sinaptiques (Wi), et  wherein the values of K and L, M and N depend on said non-linear function (f) and said number of bits n1, N2, N3 and an internal memory (MEM), connected to said processor (PR), capable of contain the values of K and L or M and N. b) an external memory (EMEM) capable of holding the values of said sinaptic weights (Wi), and c) un bus local (LBUS) pour interconnecter ladite mémoire externe (EMEM) et ledit processeur (PR).  c) a local bus (LBUS) for interconnecting said external memory (EMEM) and said processor (PR). 12 Réseau neuronal conforme à la revendication 11, caractérisé en ce qu'il est intégrable sur une puce VLSI.  Neural network according to claim 11, characterized in that it is integrable on a VLSI chip.
FR919115804A 1990-12-20 1991-12-19 METHOD AND DEVICE FOR CIRCUITS FOR TRANSFORMING A DIGITAL SIGNAL INTO ANOTHER DIGITAL SIGNAL, ACCORDING TO A NONLINEAR FUNCTION AND NEURONAL NETWORK USING SUCH A METHOD. Expired - Fee Related FR2685513B1 (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
IT02246490A IT1244216B (en) 1990-12-20 1990-12-20 METHOD AND CIRCUIT DEVICE TO TRANSFORM A NUMERICAL SIGNAL INTO ANOTHER NUMERIC SIGNAL ACCORDING TO A NON-LINEAR FUNCTION AND NEURAL NETWORK USING SUCH METHOD

Publications (2)

Publication Number Publication Date
FR2685513A1 true FR2685513A1 (en) 1993-06-25
FR2685513B1 FR2685513B1 (en) 1994-06-10

Family

ID=11196650

Family Applications (1)

Application Number Title Priority Date Filing Date
FR919115804A Expired - Fee Related FR2685513B1 (en) 1990-12-20 1991-12-19 METHOD AND DEVICE FOR CIRCUITS FOR TRANSFORMING A DIGITAL SIGNAL INTO ANOTHER DIGITAL SIGNAL, ACCORDING TO A NONLINEAR FUNCTION AND NEURONAL NETWORK USING SUCH A METHOD.

Country Status (3)

Country Link
DE (1) DE4141615A1 (en)
FR (1) FR2685513B1 (en)
IT (1) IT1244216B (en)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5343446A (en) * 1976-10-01 1978-04-19 Agency Of Ind Science & Technol Function generating method
EP0098714A2 (en) * 1982-07-02 1984-01-18 The Babcock & Wilcox Company Function generators

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5343446A (en) * 1976-10-01 1978-04-19 Agency Of Ind Science & Technol Function generating method
EP0098714A2 (en) * 1982-07-02 1984-01-18 The Babcock & Wilcox Company Function generators

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
NTIS TECH NOTES no. 6A, Juin 1986, SPRINGFIELD, VA US page 658 GENNERY ET AL 'Function Generator for Image Processor' *
PATENT ABSTRACTS OF JAPAN vol. 3, no. 213 (E-78) & JP-A-53 43 446 ( KOGYO GIJUTSUIN ) 19 Avril 1978 *

Also Published As

Publication number Publication date
IT9022464A1 (en) 1992-06-21
DE4141615A1 (en) 1992-08-27
FR2685513B1 (en) 1994-06-10
IT9022464A0 (en) 1990-12-20
IT1244216B (en) 1994-07-08

Similar Documents

Publication Publication Date Title
EP0154340B1 (en) Inverse discrete cosine transform processor
FR2555377A1 (en) ELECTRONIC CIRCUIT FOR USE IN INTEGRATED CIRCUIT DEVICES CONTAINING SWITCHED CAPACITOR FILTERS
FR2675969A1 (en) METHOD AND DEVICE FOR ENCODING-DECODING A DIGITAL SIGNAL
EP0154341A1 (en) Discrete cosine transform processor
EP0481895B1 (en) Method and apparatus for low bit rate transmission of a speech signal using CELP coding
FR2588142A1 (en) SYSTEM FOR HIGH SPEED PROCESSING BY IMAGE DATA CONVOLUTIONS.
EP0586696B1 (en) Control device for maintaining an object in a given position
EP0437876B1 (en) Programmable serial multiplier
FR2498848A1 (en) METHOD FOR REDUCING DIGITAL SIGNAL AND DEVICE FOR PERFORMING SAID METHOD
FR2568036A1 (en) CALCULATION CIRCUIT
EP0022513B1 (en) Device for calculating a bidimensional discrete fourier transform
EP0478431A1 (en) Digital signal coding method and circuit for calculating scalar products of vectors and corresponding discrete cosinus transform
FR2772950A1 (en) ELECTRONIC DEVICE FOR CALCULATING A FOURIER TRANSFORM WITH A &#34;PIPELINE&#34; ARCHITECTURE AND CONTROL METHOD THEREOF
FR2589653A1 (en) DEVICE FOR IMPLEMENTING A HIGH ACCUMULATED LOW DISPARITY CODE IN HIGH SPEED DIGITAL TRANSMISSION AND CODING METHOD USING SUCH A DEVICE
EP0796006B1 (en) Method of providing a representation of an optical scene by the Walsh-Hadamard transform and an image sensor implementing the method
EP0242258B1 (en) Device for the execution of an algorithm (leroux-gueguen) for the coding of a signal by linear prediction
FR2685513A1 (en) Circuit method and device for transforming a digital signal into another digital signal, according to a non-linear function and neural network using such a method
EP0237382A1 (en) Digital sampled signal cosine transforming device
EP0190514B1 (en) On-line test device of the discrete fourier transform calculating circuit, and circuit using such a device
EP0585434B1 (en) Filtering method and device for reducing digital audio signal pre-echoes
CA1278869C (en) Fourier transform calculation processor incorporating an on-line test device
FR2485304A1 (en) AUDIO FREQUENCY PROCESSING DEVICE OF SUBSCRIBER LINE
EP2315085A1 (en) Device for correcting set points and gradient generation system comprising such a device
EP0718746B1 (en) Booth multiplier for trigonometric functions
EP0329545B1 (en) Device for the calculation of parity bits of a sum of two numbers

Legal Events

Date Code Title Description
ST Notification of lapse

Effective date: 20070831