[0001] La présente invention concerne un synthétiseur numérique polyphonique de signaux
périodiques pour la production de sons musicaux.
[0002] Elle concerne plus particulièrement des synthétiseurs entièrement numériques dans
lesquels chaque signal périodique résulte d'une succession d'échantillons numériques
produits notamment à partir d'une mémoire d'échantillons de forme d'onde, lue à fréquence
variable, et convertis ensuite sous forme analogique. De tels synthétiseurs ont déjà
été décrits dans les demandes de brevet français n° 7607419 du 16 mars 1976, n° 7720245
du 1er juillet 1977, n° 7832727 du 21 novembre 1978, le 1er certificat d'addition
n° 79 07339 du 23 mars 1979, et la demande de brevet Européen 0 011 576.
[0003] Chaque échantillon est produit à partir d'un ensemble de données numériques telles
que phase instantannée, amplitude courante (enveloppe du signal), rang d'octave ou
d'harmonique, voie de sortie analogique, etc., qui occupent un bloc de mémoires. Chaque
échantillon résulte donc de la lecture d'un bloc de mémoires. Ce même bloc est à l'origine
d'un signal périodique complet, grâce à la lecture périodique de ce bloc et la mise
à jour simultanée de l'information de phase instantanée qu'il contient.
[0004] Tous les échantillons de tous les signaux périodiques sont produits séquentiellement
et cycliquement selon un enchainement qui résulte de l'enchaînament de lecture des
blocs de mémoires.
[0005] Etant donné qu'un son complexe en sortie peut être considéré comme la somme d'un
certain nombre de signaux périodiques élémentaires, sinu- soidaux par exemple, et
étant donné le caractère polyphonique du synthétiseur, il existe de nombreux blocs
de mémoires regroupés dans un ensemble dénommé "clavier virtuel". Le synthétiseur
génère donc un grand nombre de signaux automatiquement, d'après les informations inscrites
dans le "clavier virtuel".
[0006] Pour constituer un instrument de musique canplet, tel qu'un orgue électronique, le
synthétiseur est associé à des claviers, pédaliers, boutons, tirettes et des moyens
de commande qui inscrivent les données nécessaires à la génération des signaux dans
le "clavier virtuel", en fonction des actions sur les touches, boutons, pédales, tirettes,
et en fonction du temps. Dans un instrument de musique de qualité, en particulier,
l'évolution dans le temps de l'amplitude de chaque composante sonore doit se faire
avec une grande précision selon des lois déterminées. Mais cette nécessité entraîne
un travail considérable des moyens de commande de l'instrument, une grande complexité
de ces moyens et un coût élevé des circuits qui le composent.
[0007] Un but de la présente invention est d'éviter cet inconvénient en simplifiant de manière
considérable le travail des moyens de commande en ce qui concerne la commande de l'évolution
de l'amplitude de chaque composante sonore (ou signal périodique) .
[0008] Un objet de la présente invention est un nouveau synthétiseur dans lequel l'amplitude
de chaque composante sonore est capable d'évoluer automatiquement en fonction du temps
entre une valeur courante initiale et une valeur finale déterminée, selon une loi
déterminée, et ceci sans l'inteivention des moyens de commandes de l'instrument au
moins jusqu'à ce que la valeur d'amplitude finale soit atteinte.
[0009] Selon une caractéristique de l'invention, le synthétiseur comporte :
- plusieurs générateurs de signaux rectangulaires de fréquences déterminées
- un ensemble de blocs de mémoires contenant au moins des données de phase instantanée
de rang d'harmonique ou d'octave, et d'amplitude;
- des moyens de commande de lecture des blocs de mémoires, séquentiellement et selon
un enchaînement déterminé fonction des signaux des générateurs ;
- des moyens de production d'échantillon analogiques de signaux périodiques à partir
des données lues dans les blocs ; et
- des moyens d'évolution automatique, en fonction du temps, de l'amplitude de chaque
signal périodique, comportant des moyens de calcul pour remplacer périodiquement la
donnée d'amplitude de chaque bloc qui en contient, par une nouvelle donnée d'amplitude
calculée selon une interpolation entre l'amplitude initiale et une amplitude finale
prédéterminée.
[0010] Par exemple, un ou plusieurs générateurs d'horloge d'amplitude déterminent le rythme
de calcul des nouvelles valeurs d'amplitude.
[0011] Selon une autre caractéristique de l'invention, chaque bloc contenant une donnée
d'amplitude courante, contient en outre une donnée d'amplitude finale qui sert périodiquement
au calcul de la nouvelle amplitude courante : les évolutions des amplitudes des différents
signaux périodiques sont ainsi indépendants les unes des autres.
[0012] Ainsi selon l'invention, la donnée d'amplitude dans le bloc du clavier virtuel est
automatiquement modifiée au rythme de l'horloge d'amplitude (à très basse fréquence)
selon une interpolation sensiblement linéaire ou logarithmique. L'interpolation logarithmique
(ou exponentiel le), en particulier, permet d'obtenir une évolution très douce et
naturelle de l'amplitude entre deux valeurs initiale et finale sans que l'oreille
puisse percevoir l'impression d'une évolution d'amplitude par palliers, L'horloge
d'amplitude est complètement indépendante des générateurs de signaux rectangulaires
qui déterminent les fréquences des sonorités élémentaires. Plusieurs horloges d'amplitude
sont même souhaitable pour disposer d'une grande variété de vitesse d'évolution d'amplitude.
[0013] Etant donné que cette évolution d'amplitude est réalisée automatiquement par le synthétiseur,
les moyens de commande de l'instrument n'ont plus qu'a fournir quelques points de
la courbe d'enveloppe d'amplitude des signaux périodiques de sortie, ce qui simplifie
considérablement leurs taches et permet d'améliorer grandement les qualités générales
de l'instrument.
[0014] Selon une réalisation préférée de l'invention, les moyens mis en oeuvre pour l'évolution
automatique de l'amplitude peuvent être communs avec d'autres moyens de calcul du
synthétiseur, ce qui limite la complexité des circuits. Ces moyens peuvent aussi être
bloqués à tout moment par les moyens de commande extérieurs de l'instrument, afin
de supprimer l'automatisme, laissant aux moyens de commande de l'instrument, la possibilité
de réalisations d'effets spéciaux.
[0015] D'autre caractéristiques et avantages de l'invention apparaitront dans la description
qui suit illustrée par les figures qui représentent :
La figure 1, un schéma général d'un synthétiseur selon l'invention ;
La figure 2, le schéma détaillé des circuits d'évolution automatique d'amplitude et
des circuits de commande ;
La figure 3, une courbe d'évolution d'amplitude entre une valeur initiale et une valeur
finale ;
La figure 4, une courbe d'évolution complète de l'amplitude d'une composante sonore
et
La figure 5, un organigramme expliquant le déroulement des opérations dans le synthétiseur.
[0016] La figure 1 représente la structure générale du synthétiseur selon l'invention.
[0017] Celui-ci comporte, comme élément essentiel, le "clavier virtuel" 2 qui est un ensemble
de blocs de mémoires contenant chacun, des paramàtres numériques servant à la génération
d'un échantillon d'un signal périodique. Le clavier virtuel est constitué par exemple,
par une mémoire formée de 256 blocs de 7 mémoires chacuns. Le contenu de chacune des
mémoires des blocs sera explicité dans ce qui suit. Les blocs sont lus un par un,
séquentiellement, selon un enchaînement déterminé. Les contenus des 7 mémoires de
chaque bloc sont lus simultanément, et sont appliqués aux autres circuits du synthétiseur.
Ils donnent lieu à la production d'un échantillon, et/ou à la mise à jour d'une information
contenue dans le clavier virtuel (amplitude courante, phase instantanée.
[0018] Le clavier virtuel est donc l'élément fondamental du synthétiseur car il contient
à la fois les données nécessaires à la production des échantillons successifs des
signaux élémentaires et aussi des pointeurs d'adresse qui permettent la lecture séquentielle
des blocs selon un enchaînement déterminé.
[0019] La position de chaque bloc dans le clavier virtuel est définie par une adresse. Cette
position peut varier. Elle est décidée par les moyens de commande extérieure du synthétiseur.
La position de chaque donnée dans un bloc est, par contre, constante, chaque mémoire
étant couplée à un ou plusieurs circuits spécifiques du synthétiseur.
[0020] Il y a de ce fait, deux types de blocs, dans le clavier virtuel 2 : des blocs principaux
et des blocs secondaires.
[0021] Chaque bloc principal contient une valeur de phase instantanée qui- est incrémentée
automatiquement en synchronisme sensiblement avec le signal d'un générateur désigné
dans le bloc par un numéro I. Le bloc contient également un pointeur primaire PP,
c'est-à-dire l'adresse d'un autre bloc principal, un pointeur secondaire PS, c'est-à-dire
l'adresse d'un bloc secondaire, et un bit d'identification de type T de bloc (par
exemple T = 1 pour un bloc principal). Chaque bloc secondaire contient des informations
numériques d'octave 0, de type de forme d'onde F, de sélection de voie de sortie analogique
V, d'amplitude courante AC, d'amplitude finale AF, et de sélection de générateur d'horloga
d'amplitude VA. Il contient encore un bit de validation ou d'interdiction M d'évolution
automatique d'amplitude, un pointeur secondaire PS c'est-à-dire l'adresse d'un autre
bloc (soit secondaire, soit principal) et un bit d'identification de type de bloc
T (T = 0 pour un bloc secondaire).
[0022] La mémoire 10 contient le bit d'identification de chaque type de bloc (T =
1 ou 0) .
[0023] La mémoire 11 contient le pointeur secondaire PS des deux types de blocs. La mémoire
12 contient soit le pointeur primaire PP, s'il s'agit d'un bloc principal, soit les
données M, VA et AF, s'il s'agit d'un bloc secondaire.
[0024] La mémoire 13 contient soit la phase instantanée f (bloc principal) soit l'amplitude
courante AC (bloc secondaire). Cette disposition particulière permet de combiner les
circuits d'incrémentation de la phase ϕ et de variation de l'amplitude AC< ces circuits
ayant la même liaison au clavier virtuel.
[0025] La mémoire 14 contient soit le numéro I de générateur de fréquence, (bloc principal),
soit le numéro V de voie de sortie (bloc secondaire). Les mémoires 15 et 16 contiennent
respectivement soit les numéros de forme d'onde F et d'octave 0 s'il s'agit d'un bloc
secondaire, soit aucune donnée significative, dans le cas d'un bloc principal. Ces
emplaconents sont, bien entendu disponibles pour contenir des données utilisables
pour des opérations supplémentaires éventuelles.
[0026] La signification des données délivrées par le clavier V virtuel dépend donc du type
de bloc lu, c'est-à-dire de l'indicateur T lu dans la mémoire 10. Le déroulement des
opérations dans le synthétiseur est donc lié directement au déroulement de la lecture
des blocs, selon un enchaînement déterminé tel que décrit plus loin à l'aide de la
figure 5.
[0027] Ce déroulement est automatique, mais il est toutefois conditionné par les contenus
des mémoires 11 et 12 (pointeurs), déterminé par les moyens de commande (non représentés)
de l'instrument, et par les signaux rectangulaires d'un certain nombre de générateurs.
[0028] Les moyens de commande de l'instrument de musique, non représentés, communiquent
avec le synthétiseur par l'intermédiaire d'un ensemble de connexions dénommées "bus"
1. Les commandes du synthétiseur se résument donc à des opérations d'écriture et de
lecture dans le clavier virtuel, à partir du bus 1.
[0029] La sélection des blocs du clavier virtuel est faite par un registre d'adresse 3,
également relié au bus 1. Ce registre est, en fait, un registre tampon alimenté par
une adresse fournie soit par le bus, soit par un circuit sélecteur 4 qui reçoit les
deux pointeurs d'adresse du clavier virtuel, le pointeur primaire PP de la mémoire
12, et le pointeur secondaire PS de la mémoire 11. La sélection dépend d'un signal
de commande de sélection délivré par la logique de commande 6 du synthétiseur. Le
renouvellement des adresses dans le registre tampon 3 s'opère au rythme d'une horloge
5 ou d'un signal d'horloge ou de commande qui détermine la fréquence de récurrence
des opérations de lecture des blocs et par suite, de production des échantillons des
signaux élémentaires. Toutefois, le choix et l'ordre de la production des échantillons
dépend à la fois du contenu des blocs de mémoire, et en pràculier des pointeurs, et
aussi de générateurs de signaux rectangulaires 7 et 8.
[0030] Un ensemble de générateurs 7 de signaux rectangulaires, déterminent les fréquences
des signaux élémentaires du synthétiseur. L'ensemble 7 contient au mins 12 générateurs
dont les fréquences sont fixes et réparties selon une gamme chromatique. D'une manière
générale, il contient d'autres générateurs, par exemple à fréquence ccmmandable, permettant
la production par le synthétiseur, de signaux de fréquences variables et d'effets
spéciaux. Ces générateurs sont connectés à la logique de commande 6 qui, en rapport
avec l'enchaînement de lecture des blocs du clavier virtuel 2, détecte les changements
d'états des générateurs et commande la mise à jour des informations de phase ϕ et
la production des échantillons analogiques.
[0031] Un ensemble de générateurs 8, détermine la vitesse de l'évolution d'amplitude des
signaux élémentaires. Les fréquences des générateurs 8 sont des fréquences très basses
(quelques hertz à quelques centaines de hertz). Ces générateurs sont également connectés
à la logique de commande 6 qui, toujours en rapport avec l'enchaînement de lecture
des blocs du clavier virtuel, détecte les changements d'états des générateurs et commande
la mise à jour des infonnations d'amplitude AC.
[0032] Pour ce faire, la logique de commande reçoit, en plus des signaux des générateurs
7 et 8, le bit T identificateur de type de bloc, l'adresse en cours dée par le registre
3, le bit de validation M, la vitesse VA pour la sélection d'un des générateurs 8,
le numéro I pour la sélection d'un des générateurs 7, le bit de poids le plus faible
( ϕ 0 ou A
0) de la donnée courante de phase f ou d'amplitude AC, et un signal = indiquant l'égalité
AC = AF.
[0033] En fonction de l'état de tous ces signaux, la logique 6 délivre un ordre de mise
à jour ≠ de la donnée courante ϕ ou AC, un ordre de sélection de pointeur primaire
ou secondaire au sélecteur 4 et des signaux d'appel IT et ADR pour les moyens de commandes
externes du synthétiseur, par l'intermédiaire du BUS 1.
[0034] La génération des sons élémentaires, par échantillons successifs est faite donc à
partir des signaux de commandes précités (T, ≠) et des données lues dans le clavier
virtuel.
[0035] Un dispositif de calcul 20 réalise, soit l'incrémentation de la phase ϕ et sa mémorisation,
soit la mise à jour de l'amplitude courante AC en fonction de l'amplitude finale AF.
[0036] Un circuit de calcul d'adresse 21 reçoit la phase ϕ,le numéro de forme d'onde F et
d'octave 0 et délivre une adresse qui est appliquée à une mémoire de forme d'onde
22. Celle-ci délivre un échantillon numérique d'amplitude instantanée (ou de variation
d'amplitude) à un dispositif convertisseur-numérique analogique 23. L'échantillon
analogique obtenu est multiplié, dans un circuit 24, par la donnée numérique d'amplitude
courante AC et le résultat est appliqué à un circuit démultiplexeur 25 cmmandé par
la donnée V de sélection de voie. Le circuit 25 comporte plusieurs voies de sortie
analogiques 25 qui sont destinées à être connectées à des amplificateurs par l'intermédiaire
de circuits de filtrage et de réglage d'amplitude qui ne sont pas représentés.
[0037] Les circuits 21 à 25 sont réalisés très simplement. Les circuits 21 et 22 sont par
exemple des mémoires mortes ; les circuits 23 et 24 sont constitués par exemple de
deux convertisseurs numériques analogiques connectés en série, la sortie de l'un étant
connectée à l'entrée de référence de l'autre ; et le circuit 25 est un circuit démultiplexeur.
[0038] La figure 2 représente le détail de la logique de commande 6 et du circuit 20 de
mise à jour des données de phase et d'amplitude.
[0039] Ces circuits fonctionnent à partir des données lues dans le clavier virtuel dont
seules les mémoires 14, 10, 12 et 13 ont été représentées ainsi que le registre d'adresse
3 et le sélecteur 4.
[0040] La logique de commande comprend deux circuits multiplexeurs 60 et 61. Le circuit
60 reçoit les signaux rectangulaires délivrés par la série de générateurs 7 (16 fréquences
différentes par exemple) qui déterminent les fréquences des signaux périodiques de
sortie. Le circuit 61 reçoit les signaux rectangulaires de la série de générateurs
8 (8 fréquences par exemple) qui déterminent la vitesse d'évolution de l'amplitude
des signaux périodiques.
[0041] Le multiplexeur 60 délivre donc en sortie le signal rectangulaire désigné par le
numéro I délivré par la mémoire 14 quand le bloc lu est du type principal (T = 1).
Sinon (T = 0) la sortie est déconnectée (haute impédance). De même, le multiplexeur
61 reçoit la donnée VA de la mémoire 12 et délivre le signal du générateur correspandant
quand T = 0. Pour ce faire, la donnée d'un inverseur 64, au circuit 61. Les deux sorties
des multiplexeurs sont connectées à une entrée d'un circuit OU exclusif 65 dont l'autre
entrée reçoit le bit de poids le plus faible ϕ
0 (si T = 1) ou A
0 (si T = 0). La sortie du OU exclusif 65 délivre donc un signal ≠ actif si les états
des signaux d'entrée sont différents, et inactifs, s'ils sont identiques. Chaque fois
que le signal≠ est actif, ce signal provoque une mise à jour de la donnée de phase
ϕ ou d'amplitude AC (incrémentation de la phase ou interpolation de l'amplitude).
Cette mise à jour doit être réalisée de telle manière que le bit de poids le plus
faible de ϕ ou de AC soit toujours identique à l'état du générateur sélectionné par
l'un des multiplexeurs. Tant qu'il y a égalité, le circuit 65 ne commande pas de mise
à jour.
[0042] Cette mise à jour est réalisée par le circuit 20, qui comprend :
- un premier additionneur 8 bits, 35 à 3 entrées. Une première entrée est connextée
à la mémoire 13 et reçoit donc la phase ϕ (si T = 1) ou l'amplitude courante AC (si
T = 0). Une deuxième entrée reçoit en permanence un état logique 1 (IL). Une troisième
entrée est connectée à la sortie d'un circuit ET 34 ;
- Un deuxième additionneur 4 bits, 33 à deux entrées. Une première entrée reçoit les
4 bits de poids forts de la mémoire 13 après inversion par un inverseur 32. Une deuxième
entrée reçoit les 4 bits de l'amplitude finale AF. La sortie de l'additionneur 33
est connectée à une entrée non inverseuse du circuit ET 34. L'autre entrée du ET 34
est inverseuse et reçoit le signal T ;
- Un circuit comparateur 31 recevant les contenus des mémoires 13 et 12 délivre un
signal = dès qu'il y a égalité.
[0043] Pour le fonctionnement du circuit 20, deux cas pourront se présenter, suivant la
valeur de T :
[0044] Si T = 1, la donnée lue dans la mémoire 13 est la phase ϕ. L'état binaire de la sortie
du ET 34 est toujours 0. Par conséquent, la sortie de l'additionneur 35 délivre ϕ
+ 1. Cette donnée est mise en mémoire dans un registre 36 pour quelle soit disponible
(pour le circuit 21) quand la donnée lue dans la mémoire 13 est l'amplitude AC. La
donnée ϕ + 1 est également enregistrée dans la mémoire 13, à la place de la donnée
précédente ϕ .L'ordre de mémorisation est donné par le signal ≠ délivré par le OU
exclusif 65.
[0045] Si T = 0, c'est la donnée AC qui est délivrée par la mérnoire 13. Les quatre bits
de poids fort de AC à l'entrée Y
1 du circuit 32 représentent AF/16. On considère de même que la donnée Y
2 à l'entrée de l'additionneur 33 est AF/16, la mémoire 12 n'ayant que 4 bits. L'additionneur
33 délivre donc :

[0046] Cette donnée est appliquée à l'additionneur 35, à travers le ET 34 qui est passant
quand T =0, et avec un décalage à gauche de 1 bit, correspondant à une multiplication
par deux :

[0047] La sortie de l'additionneur 35 délivre donc :

[0048] Cette opération réalise deux fonctions :
- une interpolation logarithmique entre AC et AF;
- une inversion du bit de poids faible A0 puisque la quantité ajoutée 2 AF - AC-l est impaire. 16
[0049] La logique de commande 6 comporte, en outre, un circuit ET 36 réalisant T x ≠pour
commander le circuit sélecteur 4. En effet, tant que ≠ est à l'état 0, le type de
bloc sélectionné ne change pas : tant que les états des générateurs 7 ne changent
pas, les blocs lus restent du type principal, et aucun échantillon n'est calculé.
S'il s'agit de la lecture d'une série de blocs secondaires, T = 0 et le signal ≠ n'a
aucun effet sur le sélecteur 4. L'enchaînement de blocs secondaires suit son cours
jusqu'à l'apparition d'un bloc principal carme sera expliqué par la suite.
[0050] La logique de commande comporte, en outre, une mémoire d'adresse 63 destinée à enregistrer
l'adresse du bloc dans lequel il y a égalité AC = AF. Pour ce faire, le signal
= délivré par le comparateur 31 est appliqué à un circuit logique 62 destiné à gérer
la fin de l'évolution d'amplitude dans chaque bloc. Ce circuit reçoit les signaux
T, M (1 bit), = et l'adresse ADR dans la mémoire 63. Il délivre des signaux de commande
de mémorisation à la mémoire 63, de blocage du multiplexeur M, et d'interruption IT
aux circuits de commande extérieurs du synthétiseur par l'intermédiaire du BUS 1.
Le signal IT est accompagné du contenu ADR de la mémoire 63. Celle-ci reçoit aussi
par le bus 1 un signal d'effacement RAZ de son contenu. La logique 62 est réalisée
simplement par un réseau programable (mémoire morte). Les sorties délivrent des signaux
de commande en fonction des signaux aux entrées, selon le tableau suivant (le symbole
X signifiant "quelque soit l'état 1 ou 0") :
[0051]

[0052] La figure 3 représente l'évolution automatique de l'amplitude d'un signal périodique
de sortie en fonction du temps t entre une amplitude initiale et une amplitude finale.
Elle montre un signal croissant et un signal décroissant. L'amplitude de chaque signal
évolue en fait par bonds. Les points de chaque courbe indiquent la nouvelle amplitude
courante AC
(n+ 1)t calculée d'après l'amplitude courante du point précédent AC
nt et l'amplitude finale AF selon la formule :

[0053] Le coefficient k étant de préférence une puissance de 2 (k = 4 dans le cas de la
figure).
[0054] La figure 4 représente la courbe enveloppe d'amplitude d'un signal périodique. Cette
courbe comprend une portion T
0 - T
1 d'attaque ôù l'amplitude est croissante, une portion T - T
5 où le signal subit un trémolo d'amplitude et une portion T
5 - T
6 etc. de décroissance et d'extinction du signal. Il est remarquable de constater que
cette évolution complexe de l'amplitude ne nécessite que quelques commandes d'amplitude
(écriture de la nouvelle valeur de AF) aux instants Tl, T2, T3, etc.
[0055] La figure 5 représente un organigramme expliquant le déroulement de l'enchaînement
de lecture des blocs dans le synthétiseur. Ce déroulement est similaire à ceux ayant
fait l'objet d'explications détaillées dans les demandes n° 7832727 et 79 07339.
[0056] Tant que l'état des signaux des générateurs 7 ne change pas, des lectures de blocs
principaux se succèdent sans production d'échantillon, selon la boucle 100-101-100,
etc. qui comprend une sélection d'un pointeur principal (101), une lecture du bloc
principal désigné (100), et un test du générateur désigné par le numéro I qu'il contient.
Si l'état d'un générateur change (≠) la phase ϕ du bloc principal est incrémentée
(103). Le bloc suivant désigné par le pointeur secondaire (102), fait d'abord l'objet
d'un test (104). Si ce bloc est du type principal, il y a retour en 101, sinon l'état
du générateur 8 désigné par la donnée VA est testé (105).
[0057] Un échantillon est alors automatiquement calculé (107) soit avec la valeur d'amplitude
courante AC déjà contenue dans le bloc (s'il n'y a pas de changement d'état comme
indiqué par le signe =) soit avec une nouvelle amplitude courante (si ≠) calculée
(106) selon une interpolation logarithmique (ou exponentielle ou linéaire). Puis un
nouveau bloc est sélectionné par le pointeur secondaire (102) et ainsi de suite.
[0058] L'invention s'applique à des instruments de musiques électroniques dont elle constitue
l'élément fondamental. En effet, la réalisation d'un instrument tel qu'un orgue électronique
nécessite autour du synthétiseur d'autres éléments tels que meuble, claviers, pédalier,
alimentation électrique, amplification basse fréquence et logique de commande du synthétiseur.
Cette logique de commande est réalisée avantageusement à partir d'un micro-ordinateur
dont le synthétiseur selon l'invention est un périphérique. Ce micro-ordinateur est
d'ailleurs très simple et comprend un microprocesseur associé à des mémoires de programmes,
des mémoires de données, et des circuits logiques réalisant les connexions nécessaires
aux claviers pédaliers, boutons, tirette, etc. d'une part et au synthétiseur d'autre
part. Plusieurs synthétiseurs peuvent même être couplés à un même micro-ordinateur
et inversement.
[0059] Le synthétiseur suivant l'invention, en réalisant automatiquement l'évolution automatique
de l'enveloppe de chaque signal périodique, jusqu'à une valeur d'amplitude finale,
décharge le micro-ordinateur de la tâche correspondante. La complexité du synthétiseur
n'est toutefois pas sensiblement augmentée puisque les circuits d'incrémentation de
la phase et de calcul d'amplitude sont communs, avec la caractéristique que chaque
opération de mise à jour (de phase ou d'amplitude) ajoute une quantité impaire à la
valeur précédente (pour que le bit de poids faible puisse suivre l'état d'un générateur)
. D'autres moyens équivalents sont évidemment envisageables. Il est à noter également
que l'évolution automatique d'amplitude de chaque signal périodique est indépendante
de celle des autres signaux. Ainsi certains signaux périodiques peuvent être modifiés
de temps en temps par les moyens de cmmande de l'instrument, et d'autres peuvent conserver
la même amplitude, ceci de deux manières possibles : soit ignorant le signal IT émis
par la logique de commande 6, soit en plaçant un masque M dans la mémoire 12 du clavier
virtuel. Ce masque M empêche la logique 62 d'émettre un signal IT vers le microprocesseur,
mais n'empêche pas le fonctionnement des moyens de mise à jour (20) de l'amplitude
courante. La valeur d'amplitude courante reste cependant constante et égale à AF.
Le masoe M peut également être utilisé pour bloquer le fonctionnement des moyens de
mise à jour 20.
1. Synthétiseur polyphonique numérique de signaux périodiques, comportant plusieurs
générateurs de signaux binaires de fréquences déterminées ; un ensemble de blocs de
mémoires contenant des données de phase instantanée, de rang d'harmonique ou d'octave,
et d'amplitudes au moins ; des moyens de commande de lecture des blocs de mémoires
selon un enchaînement déterminé en fonction des signaux des générateurs ; et des moyens
de productions d'échantillons analogiques de signaux périodiques à partir des données
lues dans les blocs, caractérisé en ce qu'il comporte en outre des moyens d'évolution
autanatique de l'amplitude de chaque signal périodique, comportant des moyens de calcul
pour remplacer périodiquement chaque donnée d'amplitude par une nouvelle donnée calculée
selon une interpolation entre l'amplitude initiale et une amplitude finale prédéterminée.
2. Synthétiseur selon la revendication 1 caractérisé en ce que chaque bloc de mémoires
contenant une donné d'amplitude courante (AC), pour les moyens de production d'échantillons
analogiques, contient en outre une donnée supplémentaire d'amplitude finale (AF),
et en ce que les moyens d'évolution automatique d'amplitude comportent :
- au moins un générateur d'horloge d'amplitude délivrant un signal binaire (8) ;
- des moyens de calcul (20) pour produire une nouvelle valeur d'amplitude courante
selon une interpolation entre les valeurs d'amplitude courante et d'amplitude finale
de chaque bloc lu ; et
- des moyens de commande (6) de calcul et de mémorisation de la nouvelle amplitude
courante à la place de l'amplitude fourante initiale, sensiblement en synchronisme
avec le signal binaire du générateur d'horloge d'amplitude.
3. Synthétiseur selon la revendication 1 ou la revendication 2, caractérisé en ce
que chaque bloc comportant des données d'amplitude courante (AC) et d'amplitude finale
(AF), comporte en outre une donnée de validation (M) et en ce que les moyens de commande
de calcul d'amplitude (6) comportent des moyens d'arrêt de l'évolution automatique
d'amplitude, en cas d'absence de la donnée de validation (M), du signal périodique
correspondant.
4. Synthétiseur selon la revendication 1 ou 2 ou 3, caractérisé en ce que les moyens
de commande (6) de calcul d'amplitude sont synchronisés avec les moyens de commande
de lecture des blocs pour commande le calcul d'une nouvelle amplitude courante seulement
quand un bloc contenant une donnée d'amplitude est sélectionné par les moyens de commande
de lecture et quand un changement d'état du générateur d'horloge d'amplitude (8) est
détecté.
5. Synthétiseur suivant l'une des revendications 1 à 4, caractérisé en ce qu'il canporte
une pluralité de générateurs .d'horloge d'amplitude (8); que chaque bloc comportant
des données d'amplitude courante et finale, comporte en outre une donnée (VA) de sélection
d'un générateur d'horloge d'amplitude ; et que les moyens de commande de calcul d'amplitude
comportent en outre des moyens de sélection (6) d'un générateur, ccm- mandés par la
donnée de sélection lue dans le bloc correspondant.
6. Synthétiseur suivant l'une des revendications 1 à 5, caractérisé en ce que les
moyens de calcul sont conçus pour délivrer une valeur nouvelle d'amplitude courante
qui est une interpolation quasi-logarithmique entre l'amplitude courante initiale
et l'amplitude finale lue dans le bloc correspondant.
7. Synthétiseur suivant la revendication 6, caractérisé en ce que les dits moyens
de calcul comportent un additionneur (35) ayant une première entrée destinée à recevoir
la valeur d'amplitude courante initiale (AC) une deuxième entrée couplée à la sortie
d'un circuit de calcul (32, 33) destiné à délivrer une fraction de la différence entre
l'amplitude finale (AF) et l'amplitude courante initiale (AC), et une sortie couplée
à l'ensemble des blocs de mémoire pour délivrer une nouvelle valeur d'anplitude courante.
8. Synthétiseur suivant l'une des revendications 1 à 7, caractérisé en ce que l'ensemble
des blocs de mémoires comporte d'une part, des blocs principaux colportant chacun,
notamment, une donné de phase instantanée (ϕ) commune aux calculs de plusieurs échantillons
analogiques, une donnée de sélection (I) d'un générateur de signal binaire et un indicateur
de bloc (T) de type principal, et d'autre part, des blocs secondaires comportant chacun,
notamment, des données d'amplitude courante (AC) et finale (AF), une donnée de sélection
(VA) d'un générateur d'horloge d'amplitude, et un indicateur de bloc (T) de type secondaire,
en ce que l'emplacement des données de phase instantanée (ϕ) des blocs principaux
coïncide, en entrée et en sortie des blocs, avec l'empla- danent des données d'amplitude
courante (AC) des blocs secondaires, et en ce qu'il comporte des moyens de calcul
canbinés (20) pour calculer et mémoriser une nouvelle valeur de phase instantanée
(ϕ) augmentée d'une unité par rapport à la précédente, dans le cas de la lecture d'un
bloc principal et d'un changement d'état du signal binaire du générateur désigné par
la donnée de sélection (I) contenue dans ledit bloc principal et pour calculer et
mémoriser une nouvelle valeur d'amplitude courante (AC) à la place de la valeur initiale
dans le cas de la lecture d'un bloc secondaire et d'un changement d'état du signal
binaire du générateur d'horloge d'amplitude désigné par la donnée de sélection (VA)
contenue dans ledit bloc secondaire.
9. Synthétiseur selon la revendication 8, caractérisé en ce que les moyens de calcul
combinés (20) compotent :
- un circuit de calcul (32, 33) d'une fraction de la différence entre l'amplitude
finale (AF) et l'amplitude courante (AC) initiale ;
- un circuit additionneur (35) ayant une première entrée pour recevoir soit la valeur
d'amplitude courante (AC) dans le cas de la lecture d'un bloc secondaire, soit la
valeur de phase instantanée (ϕ) dans le cas de la lecture d'un bloc principal ; une
deuxième entrée pour recevoir une quantité égale à une unité ; et une troisième entrée
pour recevoir la donnée délivrée par le circuit de calcul (32, 33) par l'intermédiaire
d'une porte logique (34) connectée de manière que la donnée appliquée à la troisième
entrée est toujours paire ; la porte étant commandée par le signal (T) indicateur
de type de bloc de manière à délivrer une quantité nulle au cours de la lecture d'un
bloc principal, et de manière passante au cours de la lecture d'un bloc secondaire
; et
- un registre mémoire de phase (36) pour stocker la nouvelle valeur de phase instantanée
délivrée par l'additionneur (35) au cours de la lecture d'un bloc principal.
10. Synthétiseur suivant l'une des revendications 1 à 8, caractérisé en ce qu'il comporte,
en outre, un circuit comparateur (31) entre l'amplitude finale (AF) et l'amplitude
courante (AC) pour produire un signal indicateur d'égalité.