FR2545629A1 - Dispositif de calcul pour transformation de fourier rapide - Google Patents

Dispositif de calcul pour transformation de fourier rapide Download PDF

Info

Publication number
FR2545629A1
FR2545629A1 FR8407007A FR8407007A FR2545629A1 FR 2545629 A1 FR2545629 A1 FR 2545629A1 FR 8407007 A FR8407007 A FR 8407007A FR 8407007 A FR8407007 A FR 8407007A FR 2545629 A1 FR2545629 A1 FR 2545629A1
Authority
FR
France
Prior art keywords
data
input data
phase rotation
rotation factor
imaginary
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
FR8407007A
Other languages
English (en)
Other versions
FR2545629B1 (fr
Inventor
Yoshiaki Tanaka
Mamoru Inami
Zenju Otsuki
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.)
Victor Company of Japan Ltd
Original Assignee
Victor Company of Japan Ltd
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
Priority claimed from JP58078823A external-priority patent/JPH0228187B2/ja
Priority claimed from JP58078824A external-priority patent/JPH0228188B2/ja
Application filed by Victor Company of Japan Ltd filed Critical Victor Company of Japan Ltd
Publication of FR2545629A1 publication Critical patent/FR2545629A1/fr
Application granted granted Critical
Publication of FR2545629B1 publication Critical patent/FR2545629B1/fr
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/14Fourier, Walsh or analogous domain transformations, e.g. Laplace, Hilbert, Karhunen-Loeve, transforms
    • G06F17/141Discrete Fourier transforms
    • G06F17/142Fast Fourier transforms, e.g. using a Cooley-Tukey type algorithm

Landscapes

  • Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Theoretical Computer Science (AREA)
  • Discrete Mathematics (AREA)
  • Algebra (AREA)
  • Databases & Information Systems (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Complex Calculations (AREA)

Abstract

L'INVENTION CONCERNE UN DISPOSITIF DE CALCUL POUR TRANSFORMATION DE FOURIER RAPIDE QUI PRODUIT UN ENSEMBLE DE DONNEES TRANSFORME EN FOURIER RAPIDE EN ACCOMPLISSANT SEQUENTIELLEMENT SUR DES DONNEES D'ENTREE UN CALCUL EN PAPILLON EN UTILISANT UN FACTEUR DE ROTATION DE PHASE. SELON L'INVENTION, LE DISPOSITIF COMPREND DES PREMIER ET SECOND ADDITIONNEURSSOUSTRACTEURS 20 ET 22, CHACUN RECEVANT, PARMI DES PREMIERE ET SECONDE DONNEES D'ENTREE, UNE PARTIE EN NOMBRE REEL DE LA PREMIERE DONNEE D'ENTREE AU MOINS; DES TROISIEME ET QUATRIEME MOYENS ADDITIONNEURSSOUSTRACTEURS 24 ET 26, CHACUN RECEVANT AU MOINS UNE PARTIE EN NOMBRE IMAGINAIRE DE LA PREMIERE DONNEE D'ENTREE; DES PREMIER ET SECOND MOYENS MULTIPLICATEURS 28 ET 30 RECEVANT UNE PARTIE EN NOMBRE REEL DE LA SECONDE DONNEE D'ENTREE; DES TROISIEME ET QUATRIEME MOYENS MULTIPLICATEURS 38 ET 40 CHACUN RECEVANT UNE PARTIE EN NOMBRE IMAGINAIRE DE LA SECONDE DONNEE D'ENTREE; ET UN MOYEN DE COMMUTATION 34, 36, 42, 44. L'INVENTION S'APPLIQUE NOTAMMENT AU TRAITEMENT DES SIGNAUX.

Description

La présente invention se rapporte à un dispositif de calcul pour
transformation de Fourier rapide et, plus
particulièrement, à un dispositif de calcul pour transfor-
mation de Fourier rapide permettant d'atteindre le but à une fréquence supérieure de multiplication que les dispositifs de calcul pour transformation de Fourier rapide selon l'art antérieur et ainsi d'obtenir un temps d'opération tel que même à l'oeil, il semble être un
temps réel.
Comme on le sait bien, le spectre des fréquences d'une forme d'onde d'un signal analogique est produit en soumettant la forme d'onde du signal analogique à une transformation de Fourier et par conséquent l'analyse des fréquences et analogues du signal analogique peut être obtenue en effectuant une telle transformation de Fourier et une transformation de Fourier inverse en utilisant un calculateur électronique On sait également
qu'un signal peut être filtré en multipliant une trans-
formation de Fourier de sortie par la fonction de transfert d'un filtre et ensuite en accomplissant une transformation de Fourier inverse sur le produit Traditionnellement, la transformation de Fourier et autres opérations associées prenaient assez longtemps, même en utilisant un calculateur électronique Depuis que Cooley et Tukey ont présenté en 1965 la transformation de Fourier rapide (FFT) qui a représenté une amélioration éminente sur le problème du temps inhérent à la transformation de Fourier, la FFT a été utilisée de manière intensive dans divers domaines comme pour l'analyse des fréquences, la reconnaissance et la synthèse des signaux vocaux, le filtrage numérique, le traitement des données d'image, la tomographie médicale
et les mesures optiques.
La FFT a été traitée dans de nombreux documents comme E O Brigham "Fast Fourier Transform", Prentice-Hall, 1974 et les détails n'en seront pas donnes ici En bref, la FFT est élaborée pour éviter une énorme répétition de la même multiplication dans les équations qui suivent qui définissent une transformation de Fourier discrète (DFT) et une transformation de Fourier discrète inverse (IDFT): D F: T k=Cxk WPk N 1 D F T: X k = x Wpk p 0 P N 1 k P N k= O ( 1) ( 2) o W = exp l ( j 21 X)/ N 3 ( 3)
N est un nombre de données.
En effet, une FFT est un algorithme pour effectuer la DFT d'une longue série en la divisant en blocs courts afin de réduire la fréquence de multiplication et ainsi la durée de l'opération Dans les équations ( 1) et ( 2), xp est une séquence de valeurs d'échantillonnage de la fonction du temps, Xk est une séquence de valeurs d'échantillonnage du spectre des fréquences et p et k
sont des nombres entiers entre " O " et "N 1 " En rempla-
çant pk par S dans les équations ( 1) à ( 3), Wpk est exprimé par: w Pk = Ws = cos t ( 2 T Ys) / N 3 jsin t ( 2 îr S) / N 3 Dans l'équation ( 4), Ws est une variable
généralement appelée facteur de rotation de phase.
Pour traiter directement l'équation ( 1), comme W est un nombre complexe et que p et k varient entre " O " et "N 1 ", il faut N 2 fois une multiplication de nombres complexes et N(N 1) fois une addition de nombres complexes En ce qui concerne la FFT par ailleurs, il faut un nombre de multiplicationsreprésenté par un produit de N/2 qui est égal à la moitié du nombre de données N d'un ensemble de données d'entrée et log 2 N ( 4) qui est un nombre de stades (nombre d'ensembles de calcul) et une fréquence d'addition de nombres complexes qui est le double de la fréquence de multiplication Ainsi, en supposant que la durée de l'opération est proportionnelle à la fréquence de multiplication, la FFT est bien plus courte, par le temps requis d'opération,que le calcul direct. Comme on l'a décrit ci-dessus, la FFT est réellement efficace pour réaliser une coupure remarquable du temps de l'opération Néanmoins, des difficultés ont été subies pour écourter la durée de l'opération dans la FFT au point que, à l'oeil humain, les données réellement produites par FFT semblent être sur une base
de temps réel en tant qu'image sur une visualisation.
La présente invention a par conséquent pour objet une dispositif de calcul de la FFT réduisant la fréquence requise de multiplication par rapport aux dispositifs de calcul de FFT selon l'art antérieur et rendant ainsi l'opération suffisamment courte, dans le temps, pour être visuellement reconnue comme étant en
temps réel.
La présente invention a pour autre objet un
dispositif de calcul de FFT généralement perfectionné.
Selon un aspect de l'invention, on prévoit un dispositif de calcul pour transformation de Fourier rapide qui produit un ensemble de données transformé en Fourier rapide en accomplissant séquentiellement, sur les données d'entrée, un calcul en papillon en utilisant un facteur de rotation de phase Le dispositif de calcul comprend un premier additionneur/soustracteur et un second additionneur/soustracteurchacun recevant, parmi des première et seconde données d'entrée, une partie en nombre réel d'au moins la première donnée d'entrée, un troisième additionneur/soustracteur et un quatrième additionneur/soustracteurchacun recevant au moins une partie en nombre imaginaire de la première donnée d'entrée, un premier multiplicateur et un second multiplicateur, chacun recevant une partie en nombre réel de la seconde donnée d'entrée, un troisième multiplicateur et un quatrième multiplicateur 1 chacun recevant une partie en nombre imaginaire de la seconde donnée d'entrée et un circuit de commutation pour appliquer, au Kpremier à quatrième additionneu Wsoustracteuis 1 une partie en nombre réel et une partie en nombre imaginaire de la seconde donnée d'entrée sans forcer les premier à quatrième calculateurs à multiplier la partie en nombre réel et la partie en nombre imaginaire par le facteur de rotation de phase quand la valeur du facteur de rotation de phase est 1 -et -j, et appliquantauxpremier à quatrième
additionneu Wsoustracteurs, un résultat de la multiplica-
tion d'une partie en nombre réel et d'une partie en nombre imaginaire de la seconde donnée d'entrée par le facteur de rotation de phase provoquée par les premier à quatrième multiplicateurs lorsque la valeur du facteur de rotation de phase a des valeurs autres que 1 et -j Selon un autre aspect de la présente invention, on prévoit un dispositif de calcul pour transformation de Fourier rapide qui produit un ensemble de données
transformé en Fourier rapide en accomplissant séquen-
tiellement sur la donnée dlentrée, un calcul en papillon en utilisant un facteur de rotation de phase Le dispositif de calcul comprend un premier circuit de commutation pour délivrer, de manière commutée, la donnée d'entrée en réponse à une valeur du facteur de rotation de phase, un premier circuit de calcul et un second circuit de calcul recevant, par le premier moyen
de commutation, une donnée d'entrée à soumettre à un cal-
cul en papillon avec le facteur de rotation de phase lorsque la valeur du facteur de rotation de phase est de 1 et -j, un troisième circuit de calcul recevant de manière commutée, du premier circuit de commutation, une donnée d'entrée à soumettre à un calcul en papillon avec un facteur de rotation de phase ayant une partie en nombre réel et une partie en nombre imaginaire qui sont communes en valeur absolue, un quatrième circuit de calcul recevant, par le premier circuit de commutation, une donnée d'entrée à soumettre à un calcul en papillon avec un facteur de rotation de phase ayant d'autres valeurs, une mémoire de coefficients pour appliquer, au quatrième circuit de calcul, en une séquence prédéterminée, des coefficients de multiplication qui sont stockés dans la mémoire, et un second circuit de commutation pour appliquer, de manière commutée, la donnée à la sortie des premier à quatrième circuits de calcul en une séquence prédéterminée et en divisant la donnée en parties en
nombre réel et parties en nombre imaginaire.
L'invention sera mieux comprise, et d'autres buts, caractéristiques, détails et avantages de celle-ci
1-5 apparaîtront plus clairement au cours de la description
explicative qui va suivre faite en référence aux dessins schématiques annexés donnés uniquement à titre d'exemple illustrant plusieurs modes de réalisation de l'invention et dans lesquels: la figure 1 est une représentation schématique d'un exemple de circulation de signaux en FFT; la figure 2 est un schéma illustrant le calcul en papillon; les figures 3 et 5 montrent individuellement les relations entre les variables, les nombres de stades et les parties entières; la figure 4 montre la relation entre la valeur d'une partie entière et l'angle d'un facteur de rotation de phase; la figure 6 donne un schéma-bloc d'un dispositif de calcul pour FFT selon l'invention; la figure 7 est un graphique représentatif d'une fréquence de multiplication particulière à un dispositif à FFT selon l'art antérieur et à un tel dispositif selon l'invention; la figure 8 est un schéma-bloc d'un autre mode de réalisation de la présente invention;
les figures 9 A-9 D sont des schémas représen-
tatifs respectivement de diverses parties essentielles du dispositif montré sur la figure 8; les figures 10 A et 10 B sont des schémas montrant respectivement des alternatives aux constructions des figures 9 B et 9 A; et la figure 11 est un graphique montrant une fréquence de multiplication assignée à un dispositif pour FFT selon l'art antérieur et à un tel dispositif selon l'invention, d'une manière qui contraste, par rapport à
un nombre d'échantillonnages.
La présente invention envisage l'accomplissement efficace d'opérations ou calculs en-papillon en répartissant les données d'entrée en deux premiers types (type I et type II) qui ne nécessitent pas une multiplication par les facteurs de rotation de phase VS, variables sur un diagramme de circulation de S ux en FFT et deux seconds types (type III et type IV) la nécessitant, et en faisant
attention à l'aspect périodique de tels types.
En utilisant un diagramme de circulation de signaux tel que celui montré sur la figure 1, le calcul nécessaire pour l'algorithme de FFT peut être simplement exprimé La figure 1 est un diagramme de circulation de signaux o le nombre de données N dans la séquence des valeurs échantillonnées xp de la fonction du temps dans l'équation ( 1) est supposé être " 8 " Un ensemble de données
"a" formé de données xo-x 7 est représenté par l'en-
semble de noeuds le plus à gauche, ou le premier sur la figure 1; les second, troisième et quatrième ensembles de noeuds seront appelés ciaprès étages 1, 2 et 3, bien
qu'ils soient usuellement appelés ensembles de calcul.
Dans un diagramme de circulation de signaux, deux lignes se confondent à chaque noeud dans un ensemble de calcul (étage) pour représenter les trajets de transmission de noeuds précédents L'un des trajets de transmission transmet à un noeud, en un certain ensemble, une valeur numérique à la sortie d'un noeud dans l'ensemble immédiatement précédent après multiplication par un facteur de rotation de phase WB En effet, comme le
montre la figure 2 représentative de quatre noeuds-
adjacents de la figure 1, une paire de données A et B appliquées à deux noeuds sont transmises aux noeuds suivants sous forme de données C et D et dans ce cas, la donnée C est produite en calculant A + BWS et la donnée D
en calculant A B Ws.
Les données de sortie sont exprimées respective-
ment par: -
C = A + BW ( 5)
D = A B Ws ( 6) Ces opérations fonctionnelles sont appelées
opérations ou calculs en papillon, comme on le sait bien.
Les opérations en papillon se passent dans l'ordre de
l'étage 1, étage 2 et étage 3.
La fréquence des opérations en papillon est le produit de N/2 indiquant la moitié du nombre de données d'entrée et de log 2 N indiquant le nombre d'étages ou stades (nombre d'ensembles de calcul); il est de " 12 "
dans l'exemple montré sur la figure 1 parce que N est " 8 ".
On peut voir sur la figure 1 que dans tout étage, il y a deux noeuds o entrent les trajets de transmission de la même paire de noeuds àl étage précédent (deux de ces noeuds sont appelés paire de noeuds doubles) La distance entre deux noeuds d'une paire de noeuds doubles dans un étage 1 est N/21 On accepte-généralement qu'une partie en nombre réel et une partie en nombre imaginaire du facteur de rotation de phase à un noeud et celles à l'autre noeud dans une paire de noeuds doubles soient communes en valeurs absolues respectivement et ne diffèrent que par le signe et par conséquent il suffit d'une seule multiplication de deux nombres complexes pour obtenir
des valeurs de la paire de noeuds doubles.
En considérant un certain noeud, la valeur de s dans le facteur de rotation de phase-Il dont il faut multiplier la donnée à un noeud d'un ensemble précédent est obtenue par le processus qui suit En se référant aux suffixes " O " à " 7 " des données Xo-x 7 comme étant des "variables", les noeuds correspondants de chaque ensemble sont exprimés en termes des variables et ces variables sont respectivement exprimées par des nombres binaires du nombre minimum de bits Y pouvant indiquer la valeur maximum des variables Le nombre binaire est
décalé vers la droite par une valeur produite en sous-
trayant un numéro d'étage 1 de X, et ensuite des " O " sont ajoutés aux (y 1) bits côté gauche et ensuite la séquence des bits du nombre binaire est inversée De cette façon, pour obtenir la valeur de S, il est nécessaire de décaler le nombre binaire à ' bits, qui
indique une variable à ( Y -) bits vers la droite.
Pour mettre cela en pratique dans un processus de calcul, comme on le sait bien, l'inversion de la séquence des
bits doit être accomplie sur une partie entière (repré-
sentée par P ci-après) qui résulte de la division de la
variable (représentée par N ci-après) par ( 2 y-l).
En conséquence, dans l'exemple montré sur la figure 1,
la valeur S est choisie parmi " O "os " 2 "', " 1 " et " 3 ".
La relation entre les variables N, les étages ou stades et les parties entières P ci-dessus décrits peut être présentée comme le montre la figure 3, en prenant le cas de la figure 1 comme exemple Sur la figure 3, la marque "XII indique, parmi deux noeuds constituant une paire de noeuds doubles, le noeud ne nécessitant pas une multiplication Par ailleurs, la valeur représentée par un numéro d'étage et une variable N indique une valeur de la partie entière P. Par exemple, si le numéro d'étage est " 1 " et que la variable est choisie parmi " O " à " 3 " 9, la partie entière P est " O " parce que 1 est 1, _( est 3 et N est choisie parmi 0-3; si le numéro d'étage est " 2 " et que la variable N est " 4 " ou " 5 ", la partie entière P est " 2 "
parce que 1 est " 2 ", < est " 3 " et N est " 4 " ou " 5 ".
La figure 4 montre la relation entre les valeurs de la partie entière P et les angles e du facteur de rotation de phase Ws (o G est égal à 2 Xs/N dans l'équation ( 4)) Dans le cas de la figure 1, la partie entière P est choisie parmi " O ", " 2 " 1, " 4 " et " 6 " comme on peut également le comprendre sur la figure 3 Quand P est " O ", G est de zéro degré; quand c'est " 2 ", G 2 (= go 90 degrés); quand c'est 1 " 4 ", e 4 (= 45 degrés); et quand
c'est " 6 ", e 6 (= 135 degrés).
Quand le nombre de données dans un ensemble de données d'entrée est de 256 (= 28), à titre d'exemple, en employant le même principe que sur la figure 3, la relation entre le nombre de variables, 256, le nombre d'étages, 8 (=log 2 256) et les valeurs de la partie entière P peut être représentée par le schéma montré sur la figure 5 Sur la figure 5, le nombre entier P peut être tout nombre pair pas plus petit que 8 et pas plus grand que 254 en plus de " O ", " 2 "', " 4 " et " 6 " ci-dessus mentionnés Si la partie entière P est " 8 ", " 10 ", '12 " ou " 14 "t, l'angle e est représenté par un angle défini par
une ligne O et une ligne 8, 10, 12 ou 14 sur la figure 4.
Maintenant, en supposant que les données d'entrée A et B de la figure 2 sont exprimées respectivement par: A = Ar + j Ai
= ( 7)
B = Br + j Bi alors, par les équations ( 4)-( 7), C = A +B Ws = (Ar + Br cos G + Bi sin G) + j (Ai + Bi cose Br sin G) =Ar + Tr + j (Ai+ Ti) ( 8)
D = A BWS
= Ar Tr + j (Ai Ti) ( 9) L'équation ( 8) montre qu'il faut deux fois une multiplication pour produire Tr et deux fois une multiplication pour obtenir Ti O En conséquence, il faut calculer quatre fois pour obtenir C (cela est également vrai pour D) On peut noter qu'en ce qui concerne Tr et Ti, on peut les stocker dans une mémoire lorsque C est produit, afin d'éliminer la nécessité de les calculer de nouveau dans le cas de la production de D. Comme on peut le voir sur la figure 4, quand la partie entière P est " O ", l'angle e est de zéro degré et cos G = 1 et sine = O, donc on obtient Ws, par l'équation ( 4) égal à " 1 " Par conséquent, par les équations ( 8) et ( 9),on a C = A+ B et D= A-B ce qui implique que C et D peuvent être produits par des simples opérations en papillon qui ne sont pas plus qu'une addition et une soustraction Par ailleurs, en ce qui concerne les opérations en papillon au stade 1, toutes les données d'entrée sont des nombres réels et non pas des nombres imaginaires donc, quand la section entière P est
" O ", on a, pour l'équation ( 7), Ai=Bi=O et par consé-
quent C est Ar + Br et D est Ar Br; le calcul des parties en nombre réel uniquement donne une donnée de sortie uniquement en nombres réels Par conséquent, quand la partie entière P est 1101 ", la donnée d'entrée
et le facteur de rotation de phase à soumettre à l'opéra-
tion en papillon ne comprennent que des nombres réels même au stade 2 et au-delà, ce qui élimine la nécessité d'un calcul avec des nombres imaginaires Lorsque la partie entière P est " 2 ", l'angle G est de 90 degrés et par conséquent WS est -j Dans ce cas également on peut produire C et D uniquement par addition et soustraction malgré la présence d'un nombre réel et d'un nombre
imaginaire dans la donnée de sortie.
Lorsque la partie entière P est " 4 " ou plus,
des opérations en papillon avec quatre fois une multiplica-
tion sont accomplies selon les équations ( 8) et ( 9).
Selon un premier mode de réalisation de la présente invention, on fait particulièrement attention au fait que la multiplication de Ws est inutile pour le type I o la partie entière P est " O " et le type II o P est " 12 " 1, et il faut l'accomplir quatre fois comme dans la pratique antérieure pour les autres types o P est It 4 "l ou plus et le type IV o P est " 8 " ou plus Ainsi, les types I et II se distinguent des autres types Pour les types I et II, un commutateur est actionné de façon que seulesl'addition et la soustraction requises puissent être accomplies avec la donnée à la sortie du côté entrée d'un multiplicateur tandis que, pour les autres types,
les opérations en papillon requises peuvent être accomplies.
Un tel processus particulier à la présente invention
permettra d'atteindre les opérations en papillon à une -
plus faible fréquence de multiplication qu'avec le
processus à FFT selon l'art antérieur.
En se référant à la figure 6, elle montre un schéma-bloc d'un dispositif de calcul -selon la présente invention Sur la figure 6, des bornes d'entrée 10 et 12 reçoivent respectivement la donnée Ar représentative de la partie en nombre réel d'une première donnée A et la donnée Ai représentative de la partie en nombre imaginaire
de la même donnée A Les bornes d'entrée 14 et 16 re-
çoivent respectivement la donnée Br représentative d'une partie en nombre réel d'une seconde donnée d'entrée B et la donnée Bi représentative de la partie en nombre imaginaire de la même donnée B Les données Ar, Ai, Br et Bi sont individuellement extraites d'une mémoire 18 dont la capacité est plus importante que celle suffisante pour stocker le môme nombre de données en nombre réel que le nombre de données N et "N" données en nombre imaginaire La donnée Ar est appliquée à un additionneur/ soustracteur 20 (en termes stricts, un additionneur) et à un additionneur/soustracteur 22, tandis que la donnée Ai
est appliquée à des additionneurs/soustracteurs 24 et 26.
La donnée Br est appliquée aux multiplicateurs 28 et 30 pour être multipliée par la donnée en nombre imaginaire sin& et la donnée en nombre réel cose d'un facteur de rotation de phase WS, qui sont extraites d'une mémoire
de coefficients 32 Les produits à la sortie des multipli-
cateurs 28 et 30 sont appliqués à des contacts 34 a et 36 a de commutateurs 34 et 36 respectivement Le commutateur 34 a trois contacts 34 a-34 c et le commutateur 36, trois contacts 36 a-36 c Les contacts 34 b et 36 b reçoivent en commun la donnée en nombre réel Br tandis que les
contacts 34 c et 36 c sont reliés à la masse.
La donnée en nombre imaginaire Bi est appliquée aux multiplicateurs 38 et 40 pour être multipliée par la donnée en nombre imaginaire sine et la donnée en nombre réel cose du facteur de rotation de phase W 5 Les sorties des multiplicateurs 38 et 40 sont appliquées aux
contacts 42 a et 44 a de commutateurs 42 et 44, respective-
ment Le commutateur 42, comme le commutateur 34 ou 36, a trois contacts 42 a-42 c et le commutateur 44, des contacts 44 a-44 c Les contacts 42 b et 44 b reçoivent directement la donnée Bi par la borne d'entrée 16 tandis que les contacts 42 c et 44 c sont reliés à la masse Les commutateurs 34, 36, 42 et 44 sont commandés indépendamment les uns des autres par des impulsions de commutation à la sortie d'un générateur d'impulsions de commutation (non
représenté).
L'additionneur/soustracteur 20 additionne la donnée en nombre réel à la borne d'entrée 10 et la donnée des commutateurs 36 et 42, produisant la donnée en nombre réel Cr (=Ar + Br cos Q + Bi sin G) de la première donnée de sortie C La donnée Cr est appliquée à une borne de sortie 46 L'additionneur/soustracteur 24 additionne la donnée en nombre imaginaire Ai à la borne d'entrée 12 et la donnée au commutateur 44 tout en soustrayant la donnée du commutateur 34, produisant la donnée en nombre imaginaire Ci (= Ai + Bi cos G Br sine) de la première donnée de sortie C La donnée Ci est appliquée à une borne de sortie 48 L'additionneur/soustracteur 22 soustrait la donnée à la sortie des commutateurs 36 et 42 de la donnée en nombre réel Ar, produisant la donnée en nombre réel Dr de la seconde donnée de sortie D La donnée Dr est appliquée à une borne de sortie 50 Par ailleurs, l'additionneur/soustracteur 26 additionne la donnée en nombre imaginaire Ai et la donnée de sortie du commutateur 34 tout en soustrayant la donnée de sortie du commutateur 44, produisant la donnée en nombre imaginaire Di (=Ai Bi cos G + Br sin G) La donnée Di
est appliquée à une borne de sortie 52.
Le dispositif de calcul ayant la construction
ci-dessus fonctionnera comme suit.
On suppose, par exemple, que la mémoire 18 a stocké, dans ses première à huitième adresses, la donnée en nombre réel associée aux huit données x Ox 7 (dans le cas de N= 8) Si N = 8, à l'étage 1, seules les opérations en papillon avec une partie entière P de "O"IT sont effectuées séquentiellement pour les données avec les variables O et 4, pour la donnée avec les variables 1 et 5, pour les données avec les variables 2 et 6 et pour les données avec les variables 3 et 7 Alors, les commutateurs 36 et 44 sont reliés respectivement aux contacts 36 b et 44 b, tandis que les commutateurs 34 et 42 sont connectés respectivement aux contacts 34 c et 42 c Par suite, le commutateur 36 délivre la donnée en nombre réel Br
appliquée à la borne d'entrée 14 directement sans multipli-
cation et le commutateur 44 délivre la donnée en nombre imaginaire Bi apliquée à la borne d'entrée 16 directement sans multiplication Pendant ce temps, aucune sortie n'est
produite au commutateur 34 ou 42.
Dans la condition ci-dessus, la donnée représentée par Ar + Br apparaît à la borne de sortie 46, la donnée représentée par Ai + Bi apparaît à la borne de sortie 48, la donnée représentée par Ar Br apparait à la borne de sortie 50 et la donnée représentée par Ai Bi apparatt à la borne de sortie 52 Dans ce cas, à l'étage 1, seules les données en nombre réel sont appliquées par la mémoire 18 aux bornes d'entrée 10 et 14 tandis qu'aucune donnée en nombre imaginaire n'est appliquée à la borne d'entrée 12 ou 16 Par suite, seules les données en nombre réel sont captées aux bornes de sortie 46 et 50 et introduites dans les première et huitième adresses de la mémoire 18 sous forme de données associées aux variables 0 7 Ensuite, les premières opérations en papillon à l'étage 2 sont accomplies Comme on peut le voir sur les figures 1 et 3, une première opération en papillon avec une partie entière P de " O " est accomplie pour les données avec les variables O et 2 et pour les données avec les variables 1 et 3 et ensuite une seconde opération en papillon avec un nombre entier P de " 2 " est effectuée pour les données avec les variables 4 et 6 et pour les données avec les variables 5 et 7 Au cours de la première opération en papillon o P est " O ", les commutateurs 36 et 44 sont reliés respectivement aux contacts 36 c et 44 c de la même façon qu'à l'étage 1, tandis que les commutateurs 34 et 42 sont reliés respectivement aux contacts 34 c et 42 c Pendant la seconde opération en- papillon avec P qui
est " 2 ", les commutateurs 36 et 44 sont reliés respecti-
vement aux contacts 36 b et 44 b et les commutateurs 34 et
42 sont reliés respectivement aux contacts 34 b et 42 b.
Par le processus ci-dessus, les données en nombre réel Cr et Dr produites par les opérations en papillon de données ci-dessus sont captées aux bornes de sortie 46 et 50 et introduites dans les première et troisième adresses de la mémoire 18 d'o les données associées aux variables O et 2 ont été extraites De même, aux seconde et quatrième adresses de la mémoire 18, d'o les données associées aux variables 1 et 3 ont été extraites, sont introduites les données en nombre réel Cr et Dr produites par les opérations en papillon de
données ci-dessus et captées aux bornes de sortie 46 et 50.
Dans la seconde période d'opérations en papillon, la donnée en nombre réel Cr exprimée par Ar apparaît à la borne de sortie 46 et est introduite à l'adresse de la mémoire 18 d'o la donnée associée à la variable 4 ou 5 a été extraite La donnée en nombre réel Dr exprimée par Ar est captée à la borne de sortie 50 et introduite à l'adresse d'o la donnée associée à la variable 6 ou 7 a été extraite Simultanément, la donnée en nombre imaginaire Ci exprimée par -Bi est produite à la borne de sortie 48 et la donnée en nombre imaginaire Di
exprimée par Bi est produite à la borne de sortie 52.
Ces données en nombre imaginaire Ci et Di sont introduites respectivement à des adresses prédéterminées de la mémoire 18 autres que les première à huitième adresses. Les opérations en papillon à l'étage 2 ci-dessus décrites sont suivies par celles de l'étage 3 Comme on peut le voir sur les figures 1 et 3, les opérations en papillon à l'étage 3 se présentent dans l'ordre d'une première opération en papillon avec une partie entière de " O " pour les données associées aux variables 0 ou 1, une secondeopération en papillon avec une partie entière P de " 2 " pour les données associées aux variables 2 et 3, une troisième opération en papillon avec une partie entière P de " 4 " entre les données associées aux variables 4 et 5 et une quatrième opération en papillon avec une partie entière P de " 6 " entre les données associées aux variables 6 et 7 Les commutateurs 34, 36, 42 et 44 sont conditionnés de la même façon qu'à l'étage 1 pour la première période d' opérations ena papillon de la même façon que dans la seconde période d'opérations en papillon de l'étage 2 pour la seconde période d'opérations en papillon et sont reliés respectivement aux contacts 34 a, 36 a, 42 a et 44 a pour
les troisième et quatrième périodes d'opérations en papillon.
Par le processus ci-dessus, pour les troisième et quatrième périodes d'opérations en papillon, les données à la sortie de tout multiplicateur 28, 30, 38 et 40 sont appliquées par les commutateurs associés 34, 36, 42 et 44 sous forme d'une donnée en nombre réel Br et d'une donnée en nombre imaginaire Bi A la façon décrite, la donnée en nombre réel Cr, la donnée en nombre imaginaire Ci, la donnée en nombre réel Dr et la donnée en nombre imaginaire Di produites par les équations ( 8) et ( 9) sont développées respectivement aux
bornes de sortie 46, 48, 50 et 52 et introduites respecti-
vement à des adresses prédéterminées de la mémoire 18.
En bref, dans le mode de réalisation illustré, pour les deux types I et II ne nécessitant pas de multiplication, les commutateurs 34, 36, 42 et 44 sont actionnés pour délivrer directement les données arrivées
aux bornes d'entrée 14 et 16 sans effectuer de multiplica-
tion; pour un type qui nécessite une multiplication (opérations en papillon avecjqui est " 4 " ou plus), les données à la sortie des multiplicateurs 28, 30, 38 et 40
sont choisies Cela abaisse la fréquence de la multipli-
cation requise en comparaison au dispositif de calcul de FFT selon l'art antérieur La fréquence d'apparition du type I o le nombre entier P est "'0 "' est Généralement comme on le sait par analogie en considérant les figures
3 et 4, de N 1 fois, tandis que la fréquence d'appari-
tion du type II o l'entier P est " 12 " 1 est de (N/2) 1 fois.
Par conséquent, la fréquence de multiplication selon ce mode de réalisation est (N/2) log 2 N l(N 1) + I(N/2) li (N/2) log 2 N ( 3 N/2) + 2 La fréquence de multiplication que l'on peut atteindre avec le mode de réalisation ci-dessus qui est exprimé par l'équation ci-dessus se rapporte au nombre N de données d'entrée comme cela est représenté par a sur la figure 7 o la fréquence de multiplication est indiquée sur l'axe des ordonnées On peut voir que la fréquence obtenue avec le mode de réalisation est plus faible que celle du dispositif de calcul selon l'art antérieur de
( 3 N/2) 2 fois.
On peut noter que les opérations avec la construction montrée sur la figure 6 peuvent être
accomplies à l'intérieur d'un calculateur électronique.
Les contacts 42 b et 44 b des commutateurs 42 et 44 incorporés dans l'agencement de la figure 6 ne forment
pas une partie essentielle de ce mode de réalisation.
On peut comprendre à la lecture de ce qui précède que selon le premier mode de réalisation de la présente invention, une opération en FFT requise peut être obtenue avec une construction simple et économique et avec une fréquence de multiplication qui est plus faible que la fréquence (N/2) log 2 N requis jusqu'à maintenant comme
cela est représenté par L(N/2) log 2 N ( 3/2)N + 2 ô.
Comme l'abaissement de la fréquence de multiplication est en proche rapport avec l'abaissement de la durée de l'opération, on peut atteindre une si courte durée de l'opération qu'elle peut être considérée, à l'oeil, comme en temps réel, môme si le nombre d'échantillonnages N est de 256 Par conséquent, le dispositif peut trouver son application dans la visualisation en temps réel de signaux vocaux sous la forme de notes musicales La diminution de
la fréquence de la multiplication est réfléchie avanta-
geusement par une précision supérieure de l'opération.
Pour la partie entière P qui est " 4 " ou " 6 ", l'angle G est de 45 degrés ou de 135 degrés comme le montre la figure 4, ce qui dans tous les cas donne une équation sin el 2 COS 41 = et par conséquent W 8 est exprimé par -( 1-j) ou (i + j)
2 2
Il s'ensuit que lorsque WB est 2/2 (j (ce qui signifie e = 45 degrés), les équations qui suivent sont obtenues à partir des équations ( 4) et ( 8): C = Ar + -(Br + Bi) + j i Ai + (Bi Br)} ( 10)
2 2
D = Ar (Br + Bi) + j {Ai (Bi Br)3 ( 11)
2 2
Par conséquent, pour obtenir C, il faut deux fois une multiplication, c'est-à-dire une fois pour calculer 2 (Br + Bi) et une fois pour calculer 2 (Bi Br) (la même chose s'applique pour D) Bien que cela soit également vrai pour le cas o l'angle G est de 135 degrés, la fréquence requise de la multiplication dans un tel cas est égale à la moitié des quatre fois une multiplication qu'il fallait jusqu'à maintenant comme cela est représenté
par les équations ( 8) et ( 9).
Si la partie entière P est " 8 " ou plus, les opérations en papillon avec quatre fois une multiplication
sont accomplies selon les équations ( 8) et ( 9).
On se référera aux figures 8 à 11 pour décrire
un second mode de réalisation de la présente invention.
Comme on l'a décrit pour le premier mode de réalisation, la multiplication est inutile pour le type I o la partie entière P est "O" et le type II o elle est " 2 " Pour le type III o P est " 4 " ou " 6 ", la multiplication, bien que nécessaire, peut être diminuée de moitié en fréquence en comparaison à la pratique antérieure Pour le type IV o P est " 8 " ou plus, il faut quatre fois la multiplication comme dans la pratique antérieure En tenant compte de cela, le second mode de réalisation de la présente invention est construit de façon que, en distinguant les types I et II des types III et IV, des unités spécifiques de calcul soient assignées aux types I et II pour accomplir uniquement une addition et une soustraction et des unités spécifiques d'opération soient assignées aux types III et IV pour les opérations papillon nécessaires De même, une telle construction réduira la fréquence de multiplication nécessaire jusqu'à
maintenant pour les opérations en papillon pour FET.
En se référant à la figure 8, elle montre le
dispositif de calcul construit selon le principe ci-dessus.
Dans une mémoire 54 sont stockées des parties en nombre réel de "N" données d'entrée Les données d'entrée sont séquentiellement appliquées par la mémoire 54 à un démultiplexeur 60 par des bornes d'entrée 55 et 57 Le
démultiplexeur 60 a deux autres bornes d'entrée 56 et 58.
En supposant le cas de N = 8 la partie en nombre réel de la donnée X, extraite de la mémoire 54 arrive à la borne d'entrée 55 du démultiplexeur 60 et la partie en nombre réel de la donnée Y arrive à la borne d'entrée 570
Comme on peut le voir sur la figure 3, comme le démulti-
plexeur 60 sait que l'opération en papillon avec une partie entière P de " 10 "i se produira à l'étage 1, il applique les deux données d'entrée à une unité d'opération 64 en réponse à une sortie d'un contrôleur 62 Comme le montre la figure 9 A, l'unité d'opération 64 comprend un additionneur 66 pour additionner la donnée en nombre réel d'entrée Ar à la borne d'entrée 55 et la donnée en nombre réel d'entrée Br à la borne d'entrée 57 et un soustracteur pour soustraire l'une d'entre elles de l'autre L'unité d'opération 64 produit la donnée en nombre réel Cr de la donnée de sortie C à une borne de sortie 70 et la donnée en nombre réel Dr de la donnée de sortie D à une borne de sortie 72 L'unité d'opération 64 est employée pour accomplir les opérations en papillon
lorsque la partie entière P est " O ".
Les deux données en nombre réel à la sortie de l'unité 64 sont individuellement appliquées aux bornes de sortie 76 et 78 par un multiplexeur 64 qui est commandé par la sortie du contrôleur 62 La donnée en nombre réel Cr apparaissant à la borne de sortie 76 est introduite à la première adresse de la mémoire 54 o la partie en nombre réel de la donnée x a été stockée Par ailleurs, le nombre réel Dr apparaissant à la borne de sortie 78 est inscrit à la cinquième adresse de la mémoire 54 o
la partie en nombre réel de la donnée X 4 a été stockée.
Ensuite, la donnée en nombre réel de la donnée xi et la sonnée en nombre réel de la donnée 5 toutes stockées à la mémoire 54 sont extraites pour être appliquées en commun à l'unité 64 par les bornes d'entrée 55 et 57 et le démultiplexeur 60 L'unité 64 accomplit l'opération en papillon précédemment mentionnée et délivre ses sorties
aux bornes de sortie 76 et 78 par le multiplexeur 74.
La donnée en nombre réel Cr produite à la borne de sortie 76 est introduite à la seconde adresse de la mémoire 54 o la partie en nombre réel de la donnée x 1 a été stockée, tandis que la donnée en nombre réel Dr produite à la borne de sortie 78 est introduite à la sixième adresse o la partie en nombre réel de la donnée X 5 a été introduite Un tel processus est séquentiellement répété pour les données 2 et x 6 et pour les données X 3 et x 7, afin d'accomplir ainsi l'opération en papillon à l'étage 1 Les résultats des opérations, c'est-à-dire les données représentatives des parties en nombre réel sont introduites dans les troisième, quatrième, septième
et huitième adresses de la mémoire 54.
Ensuite, les données en nombre réel stockées dans les première et troisième adresses de la mémoire 54 sont extraites et appliquées au démultiplexeur 60 par les bornes d'entrée 55 et 57 de la figure 8 Comme on peut le voir sur les figures 1 et 3, on sait à l'avance qu'au stade 2, une opération en papillon ayant une partie entière P de " O " sera accomplie d'abord pour les données associées aux variables O et 2 et les données associées aux variables 1 et 3 avec ensuite une opération en papillon avec une partie entière P de " 2 " pour les données associées aux variables 4 et 6 et les données associées aux variables 5 et 7 Par conséquent, quand les données en nombre réel ci-dessus mentionnées sont arrivées aux bornes d'entrée 55 et 57, le contrôleur 62 contrôle le démultiplexeur 60 pour appliquer les données en nombre réel à l'unité 64 Deux données en nombre réel Cr et Dr à la sortie de l'unité 64 sont introduites respectivement dans les première et troisième adresses de la mémoire 54 par le multiplexeur 74 et les bornes de sortie 76 et 78 De même, les données en nombre réel extraites des seconde et quatrième adresses de la mémoire 54 sont soumises à des opérations en papillon à l'unité 64 et ensuite introduites dans les seconde et
quatrième adresses.
Subséquemment, les données en nombre réel extraites des cinquième et septième adresses de la mémoire 54 sont appliquées à une unité d'opération 80 par
les bornes d'entrée 55 et 57 et le démultiplexeur 60.
Comme le montre la figure 9 B, l'unité 80 comprend des additionneurs 82 et 84 et des soustracteurs 86 et 88 et elle est construite pour produire à des bornes de sortie et 92, la donnée en nombre réel Cr et la donnée en nombre imaginaire Ci de la première donnée de sortie C et, aux bornes de sortie 94 et 96, la donnée en nombre réel Cr et la donnée en nombre imaginaire Di de la seconde donnée de sortie D Par l'unité 80, les deux données d'entrée A et B sont soumises à une opération papillon avec un entier P "'2 " Les données Cr, Ci, Dr
et Di extraites de l'unité 80 sont appliquées respective-
ment aux bornes de sortie 76, 78, 98 et 100 Les données en nombre réel Cr et Dr apparaissant aux bornes de sortie 76 et 78 sont respectivement introduites dans les cinquième et septième adresses de la mémoire 54 tandis
que les données en nombre imaginaire Ci et Di apparais-
sant aux bornes de sortie 98 et 100 sont introduites respectivement et de nouveau par exemple dans les
treizième et quinzième adresses de la mémoire 54.
De la même façon, les données en nombre réel extraites des sixième et septième adresses de la mémoire 54 peuvent subir des opérations en papillon à l'unité 80 Les données résultantes en nombre réel Cr et Dr sont introduites respectivement dans les sixième et huitième
adresses de la mémoire 54 et les données en nombre imagi-
naire Ci et Di nouvellement dans les quatorzième et seizième adresses de la mémoire 54 Cela complète les opérations en papillon à l'étage 2 En ce qui concerne l'unité 80, les données en nombre imaginaire Ai et Bi appliquées à deux des quatre bornes d'entrée sont toujours zéro et par conséquent la construction montrée sur la figure 9 B peut être remplacée par celle montrée sur la figure 10 A L'unité d'opération montrée sur la figure 10 A comprend un convertisseur de sinus 158 qui change les données sinusoïdales La construction montrée sur la figure 10 A sera facilement comprise et par
conséquent ne nécessite pas de description.
Ensuite, comme on peut le voir sur les figures 1 et 3, les opérations en papillon à l'étage 3 sont effectuées dans 1 'ordre d'une opération en papillon avec un nombre entier P " 2 " accomplie par l'unité d'opération 64 pour les données associées aux variables O et 1, une opération en papillon avec un entier P " 2 " accomplie par l'unité 80 pour les données associées aux variables 2 et 3, une opération en papillonavec un entier " 4 " accomplie par une unité d'opération 102 pour les données associées aux variables 4 et 5 et une opération en papillonavec un entier " 6 " accomplie par une unité d'opération 104 pour les données associées aux variables 6 et 7 Les données résultantes en nombre réel Cr et Dr apparaissent respectivement aux bornes de sortie 76 et 78 tandis que les données en nombre imaginaire Ci et Di apparaissent
respectivement aux bornes de sortie 98 et 100.
Comme le montre la figure 9 C, l'unité d'opération 102 comprend des additionneurs 106, 108 et 110, des soustracteurs 112, 114 et 116 et des multiplicateurs 118 et 120 Le multiplicateur 118 produit des données en multipliant la somme des secondes données d'entrée Br et Bi par un coefficient \, tandis que le multiplica- teur 120 produit des données en multipliant par un coefficient, une valeur produite en soustrayant la donnée en nombre réel Br de la donnée en nombre imaginaire Bi Une donnée en nombre réel Cr et une
donnée en nombre imaginaire Ci apparaissent respective-
ment aux bornes de sortie 122 et 124 de l'unité d'opération, lesquelles sont représentées par l'équation ( 10) Par ailleurs, aux bornes de sortie 126 et 128 apparaissent respectivement la donnée en nombre réel Dr et la donnée en nombre imaginaire Di qui sont représentées par
l' équation ( 11).
Comme le montre la figure 9 D, l'unité d'opération 104 comprend des additionneurs 130, 132, 134 et 136, des
soustracteurs 138 et 140 et des multiplicateurs 142 et 144.
Le multiplicateur 142 produit des données en multipliant la donnée de sortie (Bi-Br) du soustracteur 138 par un coefficient -2 Le multiplicateur 144 produit des données en multipliant la donnée de sortie (Bi + Br) de l'additionneur 134 par le coefficient Aux bornes de sortie 146, 148, 150 et 152 de l'unité 104 apparaissent respectivement la donnée en nombre réel Cr, la donnée en nombre imaginaire Ci, la donnée en nombre réel Dr et la donnée en nombre imaginaire Di qui sont produites par les opérations en papillon basées sur les équations ( 8) et ( 9) lorsque le facteur de rotation de phase WS est 2
2 2
Dans-le cas ci-dessus décrit, comme N est 8, les opérations en papillon s'accomplissent en trois stades successifs, c'est-à-dire que les opérations en papillon avec
une partie entière de " 8 " ou plus ne se produisent pas.
Cependant, lorsque N est 16 ou plus ce qui a pour résultat quatre étages successifs ou plus, une opération en papillon avec 1 181 I ou partie entière supérieure est requise Une unité d'opération 154 de la figure 8 sert à de telles
opérations en papillon avec " 8 " et parties entières P supérieures.
Comme dans le dispositif selon l'art antérieur, l'unité 154 accomplit les opérations en papillon représentées par les équations ( 8) et ( 9) Dans ce cas, un coefficient correspondant au facteur de rotation de phase Ws sera extrait d'une adresse prédéterminée d'une mémoire de coefficients 156 en réponse à une sortie du contrôleur 62
pour une application à l'unité d'opération 154.
Comme on l'a décrit précédemment, selon le second mode de réalisation de l'invention, l'unité d'opération 64 est assignée pour une addition et une soustraction pour le type I, l'unité d'opération 80 est assignée pour l'addition et la soustraction pour le type II, les unités d'opération 102 et 104 sont assignées pour l'opération du type III et l'unité d'opération 154 est assignée pour l'opération du type IV Cela est efficace pour réduire la fréquence requise de multiplication en comparaison au dispositif de calculde FFT selon l'art antérieur En effet, les types I et II ne nécessitent pas de multiplication et le type III ne nécessite que la moitié de la fréquence de multiplication nécessaire pour
le dispositif de calcul de FFT selon l'art antérieur.
Ainsi, la fréquence de multiplication dans ce mode de réalisation particulier est produite par: (N/2) log 2 N l(N 1) + tj(N/2) i 1 +t N/4) îfl= (N/2) log 2 N ( 7 N/4) + 3 La fréquence de multiplication représentée par une telle équation est en rapport avec le nombre N de données d'entrée comme cela est indiqué par a sur la figure 11 Comme on peut le voir, c'est ( 7 N/4) 3 fois plus faible que la fréquence nécessaire jusqu'à maintenant. On peut noter que l'opération avec la construction montrée sur la figure 8 peut être effectuée avec un calculateur électronique Comme pour la transformation inverse de l'équation ( 2), comme la partie de nombre imaginaire n'est pas toujours zéro, l'unité d'opération 64 emploie la construction montrée sur la figure 10 B. Cependant, son algorithme de fonctionnement reste inchangé et par conséquent ne sera pas décrit pour la simplicité. Ainsi, le second mode de réalisation ci-dessus décrit, comme le premier mode de réalisation, permet d'obtenir une plus faible fréquence de multiplication
pour une FFT et ainsi un plus court temps d'opération.
Lorsque le nombre d'échantillonnages N est de 256 par
exemple, l'opération s'accomplira seulement en 60 milli-
secondes ce qui est suffisamment court pour sembler en
temps réel à l'oeil humain.
Diverses modifications sembleront possibles à ceux qui sont compétents en la matière sans s'écarter
du cadre de l'invention.

Claims (5)

R E V E N D I C A T I 0 N S
1. Dispositif de calcul pour transformation de Fourier rapide qui produit un ensemble de données transformé en Fourier rapide en accomplissant séquentiellement, sur des données d'entrée, un calcul en papillon en utilisant un facteur de rotation de phase, caractérisé en ce qu'il comprend: un premier moyen additionneur/soustracteur ( 20) et un second moyen additionneur/soustracteur( 22), chacun recevant, parmi des première et seconde données d'entrée, une partie en nombre réel d'au moins ladite première donnée d'entrée; un troisième moyen additionneur/soustracteur ( 24) et un quatrième moyen additionneur/soustracteur ( 26), chacun recevant au moins une partie en nombre imaginaire de la première donnée d'entrée; un premier moyen multiplicateur ( 28) et un second moyen multiplicateur ( 30), chacun recevant une partie en nombre réel de la seconde donnée d'entrée; un troisième moyen multiplicateur ( 38) et un quatrième moyen multiplicateur ( 40) chacun recevant une partie en nombre imaginaire de la seconde donnée d'entrée; et un moyen de commutation ( 34, 36, 42, 44) pour appliquer aux premier à quatrième moyens additionneurs/ soustracteurs une partie en nombre réel et une partie en nombre imaginaire de la seconde donnée d'entrée sans forcer lesdits premier à quatrième moyens multiplicateurs à multiplier ladite partie en nombre réel et ladite partie en nombre imaginaire par le facteur de rotation de phase lorsque la valeur du facteur de rotation de phase est respectivement de 1 et -j, et délivrer aux premier à quatrième moyens additionneurs/soustracteurs un résultat de la multiplication d'une partie en nombre réel et d'une partie en nombre imaginaire de la seconde donnée d'entrée par le facteur de rotation de phase
provoquée par les premier à quatrième moyens multiplica-
teurs quand la valeur du facteur de rotation de phase est autre que 1 et j 2 Dispositif selon la revendication 1, caractérisé en ce que les premier à quatrième moyens
additionneurs/soustracteurs comprennent des additionneurs.
3. Dispositif selon la revendication 1, caractérisé en ce qu'il comprend de plus une mémoire de données ( 18) pour stocker les données associées aux parties en nombre réel et aux parties en nombre imaginaire,
chacune étant au moins égale en nombre à la donnée d'entrée.
4. Dispositif selon la revendication 1, caractérisé en ce qu' il comprend de plus une mémoire de coefficients ( 32) pour stocker les données associées aux parties en nombre réel et aux parties en nombre-imaginaire du facteur de rotation de phase qui sont appliquées aux
premier à quatrième multiplicateurs.
5. Dispositif pour transformation de Fourier rapide qui produit une série de données transformée en Fourier rapide en accomplissant séquentiellement, sur des données d'entrée, un calcul en papillon en utilisant un facteur de rotation de phase, caractérisé en ce qu'il comprend: un premier moyen de commutation pour appliquer de manière commutée des données d'entrée en réponse à une valeur du facteur de rotation de phase; un premier moyen de calcul et un second moyen de calcul recevant, dudit premier moyen de commutation, les données d'entrée à soumettre à un calcul en papillon avec le facteur de rotation de phase quand la valeur du facteur de rotation de phase est de 1 et -j; un troisième moyen de calcul recevant, de manière commutée, du premier moyen de commutation, la donnée d'entrée à soumettre à un calcul en papillon avec un facteur de rotation de phase ayant une partie en nombre réel et une partie en nombre imaginaire qui sont communes en valeur absolue; un quatrième moyen de calcul recevant, du premier moyen de commutation, des données d'entrée à soumettre à un calcul en papillon avec un facteur de rotation de phase ayant d'autres valeurs; un moyen formant mémoire de coefficients pour appliquer audit quatrième moyen de calcul, en une séquence prédéterminée, des coefficients de multiplication qui sont stockés dans ledit moyen de stockage; et un second moyen de commutation pour délivrer de manière commutée, les données à la sortie des premier à quatrième moyens de calcul en une séquence prédéterminée et pour diviser lesdites données en parties en nombre
réel et en parties en nombre imaginaire.
6 Dispositif selon la revendication 5, caractérisé en ce que chacun des premier et second moyens
de commutation comprend un multiplexeur.
7. Dispositif selon la revendication 5, caractérisé en ce qu'il comprend de plus un stockage de données ayant la capacité de stocker les données associées au Knombresréels et aux nombres imaginaires,
chacun étant au moins égal en nombre aux données d'entrée.
FR8407007A 1983-05-04 1984-05-04 Dispositif de calcul pour transformation de fourier rapide Expired - Lifetime FR2545629B1 (fr)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP58078823A JPH0228187B2 (ja) 1983-05-04 1983-05-04 Kosokufuuriehenkannoenzansochi
JP58078824A JPH0228188B2 (ja) 1983-05-04 1983-05-04 Kosokufuuriehenkannoenzansochi

Publications (2)

Publication Number Publication Date
FR2545629A1 true FR2545629A1 (fr) 1984-11-09
FR2545629B1 FR2545629B1 (fr) 1991-05-24

Family

ID=26419877

Family Applications (1)

Application Number Title Priority Date Filing Date
FR8407007A Expired - Lifetime FR2545629B1 (fr) 1983-05-04 1984-05-04 Dispositif de calcul pour transformation de fourier rapide

Country Status (3)

Country Link
DE (1) DE3416536A1 (fr)
FR (1) FR2545629B1 (fr)
GB (1) GB2140600B (fr)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0478128A2 (fr) * 1990-08-10 1992-04-01 General Electric Company Processeur pipeline de calcul d'une transformation rapide de Fourier

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2172719B (en) * 1985-03-22 1988-10-05 Stc Plc Digital phase rotation of signals
DE4130451B4 (de) * 1991-09-13 2004-09-16 Diehl Stiftung & Co.Kg Schaltungsstruktur zur Durchführung der schnellen Fourier-Transformation
US5831881A (en) * 1994-12-02 1998-11-03 Sican Gmbh Method and circuit for forward/inverse discrete cosine transform (DCT/IDCT)
DE4442958C2 (de) * 1994-12-02 2001-05-10 Sican Gmbh Verfahren und Schaltungsanordnung zur Durchführung mehrstufiger Butterfly-Operationen

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4275452A (en) * 1979-11-08 1981-06-23 Rockwell International Corporation Simplified fast fourier transform butterfly arithmetic unit

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS597990B2 (ja) * 1976-10-06 1984-02-22 日本電気株式会社 N点離散的フ−リエ変換演算装置
GB2006485B (en) * 1977-10-07 1982-02-10 Secr Defence Spectrum analysers

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4275452A (en) * 1979-11-08 1981-06-23 Rockwell International Corporation Simplified fast fourier transform butterfly arithmetic unit

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
CONFERENCE ON COMPUTER SCIENCE AND TECHNOLOGY, IEE, 30 juin - 3 juillet 1969, no. 55, pages 202-209, Londres, GB; D.R. NOAKS et al.: "A digital signal processor for real-time spectral analysis" *
I.B.M. JOURNAL OF RESEARCH AND DEVELOPMENT, vol. 15, no. 5, septembre 1971, pages 355-363, New York, US; J.W. HARTWELL: "A procedure for implementing the Fast Fourier Transform on small computers" *
PROCEEDINGS OF THE FALL JOINT COMPUTER CONFERENCE, San Francisco, Californie, 9-11 décembre 1968, vol. 33, pages 115-125, Washington, US; R. YAVNE: "An economical method for calculating the discrete Fourier transform" *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0478128A2 (fr) * 1990-08-10 1992-04-01 General Electric Company Processeur pipeline de calcul d'une transformation rapide de Fourier
EP0478128A3 (en) * 1990-08-10 1993-12-22 Gen Electric Pipelined fast fourier transform processor

Also Published As

Publication number Publication date
GB2140600A (en) 1984-11-28
DE3416536C2 (fr) 1988-10-06
DE3416536A1 (de) 1984-11-08
GB8411261D0 (en) 1984-06-06
FR2545629B1 (fr) 1991-05-24
GB2140600B (en) 1987-04-23

Similar Documents

Publication Publication Date Title
EP0204603B1 (fr) Circuit de calcul rapide de la transformée en cosinus, directe ou inverse, d&#39;un signal discret
EP0322966B1 (fr) Circuit et structure de réseau de neurones
FR2522157A1 (fr) Circuit de calcul rapide de la transformee de fourier discrete d&#39;un signal, destine notamment a un appareil de controle par courants de foucault
EP0511095B1 (fr) Procédé et dispositif de codage-décodage d&#39;un signal numérique
FR2561010A1 (fr) Processeur de calcul d&#39;une transformee discrete du cosinus
EP0942530A1 (fr) Circuit processeur programmable muni d&#39;une mémoire reconfigurable, pour réaliser un filtre numérique
FR2588680A1 (fr) Dispositif de calcul d&#39;une transformee de fourier discrete, et son application a la compression d&#39;impulsion dans un systeme radar
EP0275765B1 (fr) Circuit intégré de traitement numérique de signaux
FR2697704A1 (fr) Procédé et dispositif de segmentation en sous-bandes et de reconstruction d&#39;un signal numérique, et dispositif correspondant.
FR2588142A1 (fr) Systeme permettant le traitement a haute vitesse par convolutions de donnees d&#39;image.
EP0022513B1 (fr) Appareil de calcul de transformée de Fourier discrète bidimensionnelle
EP0171305A1 (fr) Circuit de calcul de la transformée de Fourier discrète
FR2545629A1 (fr) Dispositif de calcul pour transformation de fourier rapide
FR2849512A1 (fr) Multiplieur modulaire de montgomery et procede de multiplication correspondant
EP0259231A1 (fr) Dispositif de détermination de la transformée numérique d&#39;un signal
FR2641631A1 (fr) Montage de transformation de fourier rapide en temps reel
EP0237382A1 (fr) Dispositif de transformée en cosinus d&#39;un signal numérique échantilloné
EP0242258B1 (fr) Dispositif de mise en oeuvre d&#39;un algorithme dit de LEROUX- GUEGUEN,pour le codage d&#39;un signal par prédiction linéaire
EP0190514B1 (fr) Dispositif de test en ligne de circuit de calcul de la transformée de Fourier discrète, et circuit comportant un tel dispositif
FR2717294A1 (fr) Procédé et dispositif de synthèse dynamique sonore musicale et vocale par distorsion non linéaire et modulation d&#39;amplitude.
FR2772160A1 (fr) Circuit de calcul de la transformee de fourier rapide et de la transformee de fourier rapide inverse
CA1278869C (fr) Processeur de calcul de la transformee de fourier discrete comportant un dispositif de test en ligne
EP0718746B1 (fr) Multiplieur de booth pour fonctions trigonométriques
CA2359198C (fr) Unite de calcul pour l&#39;execution d&#39;un protocole cryptographique
EP0373042B1 (fr) Circuit intégré de programmation dynamique