EP0021964A1 - Digital polyphonic synthesizer of periodic signals - Google Patents
Digital polyphonic synthesizer of periodic signals Download PDFInfo
- Publication number
- EP0021964A1 EP0021964A1 EP80400861A EP80400861A EP0021964A1 EP 0021964 A1 EP0021964 A1 EP 0021964A1 EP 80400861 A EP80400861 A EP 80400861A EP 80400861 A EP80400861 A EP 80400861A EP 0021964 A1 EP0021964 A1 EP 0021964A1
- Authority
- EP
- European Patent Office
- Prior art keywords
- amplitude
- block
- data
- current amplitude
- final
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10H—ELECTROPHONIC MUSICAL INSTRUMENTS; INSTRUMENTS IN WHICH THE TONES ARE GENERATED BY ELECTROMECHANICAL MEANS OR ELECTRONIC GENERATORS, OR IN WHICH THE TONES ARE SYNTHESISED FROM A DATA STORE
- G10H7/00—Instruments in which the tones are synthesised from a data store, e.g. computer organs
- G10H7/08—Instruments in which the tones are synthesised from a data store, e.g. computer organs by calculating functions or polynomial approximations to evaluate amplitudes at successive sample points of a tone waveform
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10H—ELECTROPHONIC MUSICAL INSTRUMENTS; INSTRUMENTS IN WHICH THE TONES ARE GENERATED BY ELECTROMECHANICAL MEANS OR ELECTRONIC GENERATORS, OR IN WHICH THE TONES ARE SYNTHESISED FROM A DATA STORE
- G10H2210/00—Aspects or methods of musical processing having intrinsic musical character, i.e. involving musical theory or musical parameters or relying on musical knowledge, as applied in electrophonic musical tools or instruments
- G10H2210/155—Musical effects
- G10H2210/195—Modulation effects, i.e. smooth non-discontinuous variations over a time interval, e.g. within a note, melody or musical transition, of any sound parameter, e.g. amplitude, pitch, spectral response, playback speed
- G10H2210/201—Vibrato, i.e. rapid, repetitive and smooth variation of amplitude, pitch or timbre within a note or chord
- G10H2210/205—Amplitude vibrato, i.e. repetitive smooth loudness variation without pitch change or rapid repetition of the same note, bisbigliando, amplitude tremolo, tremulants
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10H—ELECTROPHONIC MUSICAL INSTRUMENTS; INSTRUMENTS IN WHICH THE TONES ARE GENERATED BY ELECTROMECHANICAL MEANS OR ELECTRONIC GENERATORS, OR IN WHICH THE TONES ARE SYNTHESISED FROM A DATA STORE
- G10H2250/00—Aspects of algorithms or signal processing methods without intrinsic musical character, yet specifically adapted for or used in electrophonic musical processing
- G10H2250/131—Mathematical functions for musical analysis, processing, synthesis or composition
- G10H2250/161—Logarithmic functions, scaling or conversion, e.g. to reflect human auditory perception of loudness or frequency
Definitions
- the present invention relates to a polyphonic digital synthesizer of periodic signals for the production of musical sounds.
- Each sample is produced from a set of digital data such as instantaneous phase, current amplitude (signal envelope), octave or harmonic rank, analog output channel, etc., which occupy a block of memories.
- Each sample therefore results from the reading of a block of memories.
- This same block is the source of a complete periodic signal, thanks to the periodic reading of this block and the simultaneous updating of the instantaneous phase information that it contains.
- All the samples of all the periodic signals are produced sequentially and cyclically according to a sequence which results from the sequence of readings of the memory blocks.
- the synthesizer is associated with keyboards, pedals, buttons, pullbars and control means which record the data necessary for the generation of the signals in the "virtual keyboard", according to the actions on the keys, buttons, pedals, zippers, and according to time.
- the evolution over time of the amplitude of each sound component must be done with great precision according to determined laws.
- this necessity involves considerable work on the control means of the instrument, a great complexity of these means and a high cost of the circuits which compose it.
- An object of the present invention is to avoid this drawback by considerably simplifying the work of the control means with regard to controlling the change in the amplitude of each sound component (or periodic signal).
- An object of the present invention is a new synthesizer in which the amplitude of each sound component is capable of evolving automatically as a function of time between an initial current value and a determined final value, according to a determined law, and this without the inteivention of the instrument control means at least until the final amplitude value is reached.
- one or more amplitude clock generators determine the rate at which new amplitude values are calculated.
- each block containing a current amplitude datum furthermore contains a final amplitude datum which is used periodically for the calculation of the new current amplitude: the changes in the amplitudes of the various periodic signals are thus independent each other.
- the amplitude data in the block of the virtual keyboard is automatically modified at the rate of the amplitude clock (at very low frequency) according to a substantially linear or logarithmic interpolation.
- Logarithmic (or exponential le) interpolation makes it possible to obtain a very gentle and natural evolution of the amplitude between two initial and final values without the ear being able to perceive the impression of an amplitude evolution.
- the amplitude clock is completely independent of the rectangular signal generators which determine the frequencies of the elementary tones. Several amplitude clocks are even desirable to have a wide variety of amplitude evolution speed.
- the means used for the automatic evolution of the amplitude can be common with other means for calculating the synthesizer, which limits the complexity of the circuits. These means can also be blocked at any time by the external control means of the instrument, in order to suppress the automation, leaving the control means of the instrument, the possibility of producing special effects.
- Figure 1 shows the general structure of the synthesizer according to the invention.
- the virtual keyboard 2 is a set of memory blocks each containing, digital parameters used for the generation of a sample of a periodic signal.
- the virtual keyboard consists, for example, of a memory formed of 256 blocks of 7 memories each. The content of each of the block memories will be explained in the following. The blocks are read one by one, sequentially, according to a determined sequence. The contents of the 7 memories of each block are read simultaneously, and are applied to the other circuits of the synthesizer. They give rise to the production of a sample, and / or to the updating of information contained in the virtual keyboard (current amplitude, instantaneous phase.
- the virtual keyboard is therefore the fundamental element of the synthesizer because it contains both the data necessary for the production of successive samples of the elementary signals and also address pointers which allow the sequential reading of the blocks according to a determined sequence.
- each block in the virtual keyboard is defined by an address. This position may vary. It is decided by the external control means of the synthesizer.
- the position of each piece of data in a block is, on the other hand, constant, each memory being coupled to one or more specific circuits of the synthesizer.
- main blocks There are therefore two types of blocks in the virtual keyboard 2: main blocks and secondary blocks.
- Each main block contains an instantaneous phase value which is automatically incremented in synchronism substantially with the signal from a generator designated in the block by an number I.
- the memory 11 contains the secondary pointer PS of the two types of blocks.
- the memory 12 contains either the primary pointer PP, if it is a main block, or the data M, VA and AF, if it is a secondary block.
- the memory 13 contains either the instantaneous phase f (main block) or the current amplitude AC (secondary block). This particular arrangement makes it possible to combine the circuits for incrementing the phase ⁇ and for varying the amplitude AC ⁇ these circuits having the same connection to the virtual keyboard.
- the memory 14 contains either the frequency generator number I (main block) or the output channel number V (secondary block).
- the memories 15 and 16 respectively contain either the waveform numbers F and octave 0 if it is a secondary block, or no significant data, in the case of a main block. These locations are, of course, available to contain data usable for possible additional operations.
- the meaning of the data delivered by the virtual keyboard V therefore depends on the type of block read, that is to say on the indicator T read in the memory 10.
- the flow of operations in the synthesizer is therefore directly linked to the flow of the reading of the blocks, according to a determined sequence as described below with the aid of FIG. 5.
- This sequence is automatic, but it is however conditioned by the contents of memories 11 and 12 (pointers), determined by the control means (not shown) of the instrument, and by the rectangular signals of a certain number of generators.
- the control means of the musical instrument communicate with the synthesizer by means of a set of connections called "bus" 1.
- the commands of the synthesizer therefore amount to writing and reading operations in the virtual keyboard, from bus 1.
- the selection of the blocks of the virtual keyboard is made by an address register 3, also connected to the bus 1.
- This register is, in fact, a buffer register supplied by an address supplied either by the bus, or by a selector circuit 4 which receives the two address pointers from the virtual keyboard, the primary pointer PP from memory 12, and the secondary pointer PS from memory 11.
- the selection depends on a selection command signal delivered by the control logic 6 of the synthesizer .
- the renewal of the addresses in the buffer register 3 takes place at the rate of a clock 5 or of a clock or control signal which determines the frequency of recurrence of the operations of reading the blocks and consequently of producing the samples. elementary signals.
- the choice and the order of production of the samples depends both on the content of the memory blocks, and in particular on the pointers, and also on rectangular signal generators 7 and 8.
- a set of generators 7 of rectangular signals determine the frequencies of the elementary signals of the synthesizer.
- the set 7 contains at least 12 generators whose frequencies are fixed and distributed according to a chromatic range. In general, it contains other generators, for example at a controllable frequency, allowing the synthesizer to produce signals of variable frequencies and special effects.
- These generators are connected to the control logic 6 which, in connection with the sequence of reading of the blocks of the virtual keyboard 2, detects the changes of states of the generators and commands the updating of the phase information ⁇ and the production of the analog samples.
- a set of generators 8 determines the speed of the amplitude evolution of the elementary signals.
- the frequencies of the generators 8 are very low frequencies (a few hertz to a few hundred hertz).
- These generators are also connected to the control logic 6 which, always in connection with the sequence of reading of the blocks of the virtual keyboard, detects the changes of states of the generators and commands the updating of the information of amplitude AC.
- the logic 6 delivers an update order ⁇ of the current data ⁇ or AC, a command to select the primary or secondary pointer to the selector 4 and call signals IT and ADR for the external control means of the synthesizer, via BUS 1.
- the generation of the elementary sounds, by successive samples is therefore made from the aforementioned command signals (T, ⁇ ) and from the data read from the virtual keyboard.
- a calculation device 20 performs either the incrementation of the phase ⁇ and its storage, or the updating of the current amplitude AC as a function of the final amplitude AF.
- An address calculation circuit 21 receives the phase ⁇ , the waveform F and octave number 0 and delivers an address which is applied to a waveform memory 22.
- the latter delivers a digital sample instantaneous amplitude (or amplitude variation) to an analog-digital converter device 23.
- the analog sample obtained is multiplied, in a circuit 24, by the data current amplitude digital AC and the result is applied to a 25 cm demultiplexer circuit controlled by the channel selection data V.
- the circuit 25 includes several analog output channels 25 which are intended to be connected to amplifiers by means of filtering and amplitude adjustment circuits which are not shown.
- Circuits 21 to 25 are made very simply.
- the circuits 21 and 22 are for example read only memories; circuits 23 and 24 consist for example of two analog digital converters connected in series, the output of one being connected to the reference input of the other; and circuit 25 is a demultiplexer circuit.
- FIG. 2 shows the detail of the control logic 6 and of the circuit 20 for updating the phase and amplitude data.
- the control logic comprises two multiplexer circuits 60 and 61.
- the circuit 60 receives the rectangular signals delivered by the series of generators 7 (16 different frequencies for example) which determine the frequencies of the periodic output signals.
- the circuit 61 receives the rectangular signals from the series of generators 8 (8 frequencies for example) which determine the speed of evolution of the amplitude of the periodic signals.
- this signal causes an update of the phase data ⁇ or of amplitude AC (incrementation of the phase or interpolation of the amplitude).
- This update must be carried out in such a way that the least significant bit of ⁇ or AC is always identical to the state of the generator selected by one of the multiplexers. As long as there is equality, circuit 65 does not command an update.
- T 1
- the data read from memory 13 is phase ⁇ .
- the binary state of the output of ET 34 is always 0. Consequently, the output of adder 35 delivers ⁇ + 1.
- This data is stored in a register 36 for whatever is available (for circuit 21) when the data read from memory 13 is the amplitude AC.
- the data ⁇ + 1 is also recorded in memory 13, in place of the previous data ⁇ .
- the storage order is given by the signal ⁇ delivered by the exclusive OR 65.
- T 0, it is the data AC which is delivered by the mernoire 13.
- the four most significant bits of AC at the input Y 1 of the circuit 32 represent AF / 16.
- the data Y 2 at the input of the adder 33 is AF / 16, the memory 12 having only 4 bits.
- the adder 33 therefore delivers:
- the output of the adder 35 therefore delivers:
- the control logic 6 further comprises an AND circuit 36 producing T x ⁇ for controlling the selector circuit 4.
- T 0 and the signal ⁇ has no effect on the selector 4. The sequence of secondary blocks follows its course until the appearance of a main Carmel block will be explained later.
- the signal delivered by the comparator 31 is applied to a logic circuit 62 intended to manage the end of the amplitude evolution in each block.
- the IT signal is accompanied by the content ADR of the memory 63.
- the latter also receives via the bus 1 an erase signal RESET of its content.
- Logic 62 is carried out simply by a programmable network (read only memory). The outputs deliver control signals according to the signals at the inputs, according to the following table (the symbol X signifying "whatever the state 1 or 0"):
- FIG. 3 represents the automatic evolution of the amplitude of a periodic output signal as a function of time t between an initial amplitude and a final amplitude. It shows an increasing signal and a decreasing signal. The amplitude of each signal actually changes in leaps. The points of each curve indicate the new current amplitude AC (n + 1) t calculated according to the current amplitude of the previous point AC nt and the final amplitude AF according to the formula:
- FIG. 4 represents the amplitude envelope curve of a periodic signal. This curve includes a portion T 0 - T 1 of attack where the amplitude is increasing, a portion T - T 5 where the signal undergoes a tremolo of amplitude and a portion T 5 - T 6 etc. signal decay and extinction. It is remarkable to note that this complex evolution of the amplitude requires only a few amplitude commands (writing of the new value of AF) at times Tl, T2, T3, etc.
- FIG. 5 represents a flowchart explaining the sequence of the sequence of reading of the blocks in the synthesizer. This procedure is similar to that which was explained in detail in applications Nos. 7832727 and 79 07339.
- the invention applies to electronic musical instruments of which it constitutes the fundamental element. Indeed, the realization of an instrument such as an electronic organ requires around the synthesizer other elements such as furniture, keyboards, pedals, power supply, low frequency amplification and control logic of the synthesizer.
- This control logic is advantageously carried out from a microcomputer of which the synthesizer according to the invention is a peripheral.
- This microcomputer is moreover very simple and includes a microprocessor associated with program memories, data memories, and logic circuits making the necessary connections to pedalboards, buttons, pull tabs, etc. on the one hand and the synthesizer on the other.
- Several synthesizers can even be coupled to the same microcomputer and vice versa.
- the synthesizer according to the invention by automatically carrying out the automatic evolution of the envelope of each periodic signal, up to a final amplitude value, relieves the microcomputer of the corresponding task.
- the complexity of the synthesizer is however not significantly increased since the phase increment and amplitude calculation circuits are common, with the characteristic that each update operation (phase or amplitude) adds a quantity odd to the previous value (so that the least significant bit can follow the state of a generator).
- Other equivalent means are obviously conceivable.
- the automatic evolution of amplitude of each periodic signal is independent of that of the other signals.
- certain periodic signals can be modified from time to time by the control means of the instrument, and others can keep the same amplitude, this in two possible ways: either ignoring the IT signal emitted by the control logic 6, either by placing a mask M in the memory 12 of the virtual keyboard.
- This mask M prevents the logic 62 from transmitting an IT signal to the microprocessor, but does not prevent the operation of the means for updating (20) the current amplitude.
- the current amplitude value however remains constant and equal to AF.
- the masoe M can also be used to block the operation of the updating means 20.
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Acoustics & Sound (AREA)
- Mathematical Optimization (AREA)
- Mathematical Physics (AREA)
- Pure & Applied Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Algebra (AREA)
- Mathematical Analysis (AREA)
- Multimedia (AREA)
- Electrophonic Musical Instruments (AREA)
- Polyesters Or Polycarbonates (AREA)
- Crystals, And After-Treatments Of Crystals (AREA)
- Non-Silver Salt Photosensitive Materials And Non-Silver Salt Photography (AREA)
- Stabilization Of Oscillater, Synchronisation, Frequency Synthesizers (AREA)
- Addition Polymer Or Copolymer, Post-Treatments, Or Chemical Modifications (AREA)
Abstract
L'invention a pour objet un synthétiseur polyphonique musical, entièrement numérique, dans lequel l'amplitude de chaque composante spectrale peut évoluer, en fonction du temps, selon une loi linéaire ou logarithmique. Des moyens de calcul d'amplitude produisent, à chaque période d'un signal d'horloge d'amplitude, une nouvelle valeur courante, selon une interpolation linéaire ou logarithmique entre l'amplitude courante initiale et une valeur d'amplitude finale prédéterminée. La nouvelle valeur d'amplitude courante est mémorisée à la place de la valeur initiale. A l'égalité de l'amplitude courante et de l'amplitude finale, un signal est émis vers les moyens de commande du synthétiseur. L'invention permet d'obtenir des évolutions douces de l'amplitude et de réduire la complexité des moyens de commande de l'instrument.The subject of the invention is a fully digital polyphonic musical synthesizer in which the amplitude of each spectral component can change, as a function of time, according to a linear or logarithmic law. Amplitude calculation means produce, at each period of an amplitude clock signal, a new current value, according to a linear or logarithmic interpolation between the initial current amplitude and a predetermined final amplitude value. The new current amplitude value is stored in place of the initial value. Equal to the current amplitude and the final amplitude, a signal is sent to the synthesizer control means. The invention makes it possible to obtain gentle changes in the amplitude and to reduce the complexity of the control means of the instrument.
Description
La présente invention concerne un synthétiseur numérique polyphonique de signaux périodiques pour la production de sons musicaux.The present invention relates to a polyphonic digital synthesizer of periodic signals for the production of musical sounds.
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.It relates more particularly to fully digital synthesizers in which each periodic signal results from a succession of digital samples produced in particular from a memory of waveform samples, read at variable frequency, and then converted into analog form . Such synthesizers have already been described in French patent applications No. 7607419 of March 16, 1976, No. 7720245 of July 1, 1977, No. 7832727 of November 21, 1978, the 1st certificate of addition No. 79 07339 of March 23 1979, and
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.Each sample is produced from a set of digital data such as instantaneous phase, current amplitude (signal envelope), octave or harmonic rank, analog output channel, etc., which occupy a block of memories. Each sample therefore results from the reading of a block of memories. This same block is the source of a complete periodic signal, thanks to the periodic reading of this block and the simultaneous updating of the instantaneous phase information that it contains.
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.All the samples of all the periodic signals are produced sequentially and cyclically according to a sequence which results from the sequence of readings of the memory blocks.
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".Since a complex sound at output can be considered as the sum of a certain number of elementary periodic signals, sinusoidal for example, and given the polyphonic character of the synthesizer, there are many memory blocks grouped in a set called "virtual keyboard". The synthesizer therefore generates a large number of signals automatically, according to the information entered in the "virtual keyboard".
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.To constitute a canplet musical instrument, such as an electronic organ, the synthesizer is associated with keyboards, pedals, buttons, pullbars and control means which record the data necessary for the generation of the signals in the "virtual keyboard", according to the actions on the keys, buttons, pedals, zippers, and according to time. In a quality musical instrument, in particular, the evolution over time of the amplitude of each sound component must be done with great precision according to determined laws. However, this necessity involves considerable work on the control means of the instrument, a great complexity of these means and a high cost of the circuits which compose it.
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) .An object of the present invention is to avoid this drawback by considerably simplifying the work of the control means with regard to controlling the change in the amplitude of each sound component (or periodic signal).
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.An object of the present invention is a new synthesizer in which the amplitude of each sound component is capable of evolving automatically as a function of time between an initial current value and a determined final value, according to a determined law, and this without the inteivention of the instrument control means at least until the final amplitude value is reached.
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.
- - several rectangular signal generators of determined frequencies
- - a set of memory blocks containing at least instantaneous phase data of harmonic or octave rank, and of amplitude;
- - means for controlling the reading of memory blocks, sequentially and according to a sequence determined as a function of the signals from the generators;
- - means for producing analog samples of periodic signals from the data read from the blocks; and
- means of automatic evolution, as a function of time, of the amplitude of each periodic signal, comprising calculation means for periodically replacing the amplitude data of each block which contains it, by a new calculated amplitude data according to an interpolation between the initial amplitude and a predetermined final amplitude.
Par exemple, un ou plusieurs générateurs d'horloge d'amplitude déterminent le rythme de calcul des nouvelles valeurs d'amplitude.For example, one or more amplitude clock generators determine the rate at which new amplitude values are calculated.
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.According to another characteristic of the invention, each block containing a current amplitude datum, furthermore contains a final amplitude datum which is used periodically for the calculation of the new current amplitude: the changes in the amplitudes of the various periodic signals are thus independent each other.
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.Thus according to the invention, the amplitude data in the block of the virtual keyboard is automatically modified at the rate of the amplitude clock (at very low frequency) according to a substantially linear or logarithmic interpolation. Logarithmic (or exponential le) interpolation, in particular, makes it possible to obtain a very gentle and natural evolution of the amplitude between two initial and final values without the ear being able to perceive the impression of an amplitude evolution. in stages, The amplitude clock is completely independent of the rectangular signal generators which determine the frequencies of the elementary tones. Several amplitude clocks are even desirable to have a wide variety of amplitude evolution speed.
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. S ince this change in amplitude is automatically performed by the synthesizer, the instrument control means no longer has to provide some points of the envelope curve of amplitude of the periodic output signals, which considerably simplifies their tasks and makes it possible to greatly improve the general qualities of the instrument.
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.According to a preferred embodiment of the invention, the means used for the automatic evolution of the amplitude can be common with other means for calculating the synthesizer, which limits the complexity of the circuits. These means can also be blocked at any time by the external control means of the instrument, in order to suppress the automation, leaving the control means of the instrument, the possibility of producing special effects.
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.
- Figure 1, a general diagram of a synthesizer according to the invention;
- Figure 2, the detailed diagram of the automatic amplitude change circuits and control circuits;
- FIG. 3, an amplitude evolution curve between an initial value and a final value;
- FIG. 4, a complete evolution curve of the amplitude of a sound component and
- Figure 5, a flowchart explaining the flow of operations in the synthesizer.
La figure 1 représente la structure générale du synthétiseur selon l'invention.Figure 1 shows the general structure of the synthesizer according to the invention.
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.This comprises, as an essential element, the "virtual keyboard" 2 which is a set of memory blocks each containing, digital parameters used for the generation of a sample of a periodic signal. The virtual keyboard consists, for example, of a memory formed of 256 blocks of 7 memories each. The content of each of the block memories will be explained in the following. The blocks are read one by one, sequentially, according to a determined sequence. The contents of the 7 memories of each block are read simultaneously, and are applied to the other circuits of the synthesizer. They give rise to the production of a sample, and / or to the updating of information contained in the virtual keyboard (current amplitude, instantaneous phase.
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é.The virtual keyboard is therefore the fundamental element of the synthesizer because it contains both the data necessary for the production of successive samples of the elementary signals and also address pointers which allow the sequential reading of the blocks according to a determined sequence.
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.The position of each block in the virtual keyboard is defined by an address. This position may vary. It is decided by the external control means of the synthesizer. The position of each piece of data in a block is, on the other hand, constant, each memory being coupled to one or more specific circuits of the synthesizer.
Il y a de ce fait, deux types de blocs, dans le clavier virtuel 2 : des blocs principaux et des blocs secondaires.There are therefore two types of blocks in the virtual keyboard 2: main blocks and secondary blocks.
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).Each main block contains an instantaneous phase value which is automatically incremented in synchronism substantially with the signal from a generator designated in the block by an number I. The block also contains a primary pointer PP, that is to say the address of another main block, a secondary pointer PS, that is to say the address of a secondary block, and an identification bit of type T of block (for example T = 1 for a block main). Each secondary block contains digital information of
La mémoire 10 contient le bit d'identification de chaque type de bloc (T = 1 ou 0) .The
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.The
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.The
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.The
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.The meaning of the data delivered by the virtual keyboard V therefore depends on the type of block read, that is to say on the indicator T read in the
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.This sequence is automatic, but it is however conditioned by the contents of
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.The control means of the musical instrument, not shown, communicate with the synthesizer by means of a set of connections called "bus" 1. The commands of the synthesizer therefore amount to writing and reading operations in the virtual keyboard, from
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.The selection of the blocks of the virtual keyboard is made by an
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.A set of
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.A set of
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 A0) de la donnée courante de phase f ou d'amplitude AC, et un signal = indiquant l'égalité AC = AF.To do this, the control logic receives, in addition to the signals from the
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.As a function of the state of all these signals, the
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.The generation of the elementary sounds, by successive samples is therefore made from the aforementioned command signals (T, ≠) and from the data read from the virtual keyboard.
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.A
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.An
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.
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.FIG. 2 shows the detail of the
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.These circuits operate on the basis of data read from the virtual keyboard, of which only the
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.The control logic comprises two
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 A0 (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.The
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 inversionpar 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é.
- - a first 8-bit adder, 35 with 3 inputs. A first input is connected to
memory 13 and therefore receives phase ϕ (if T = 1) or the current amplitude AC (if T = 0). A second input permanently receives a logic state 1 (IL). A third input is connected to the output of an AND circuit 34; - - A second 4-bit, 33 adder with two inputs. A first input receives the 4 most significant bits of the
memory 13 after inversion by aninverter 32. A second input receives the 4 bits of the final amplitude AF. The output of theadder 33 is connected to a non-inverting input of the AND circuit 34. The other input of the AND 34 is inverting and receives the signal T; - - A
comparator circuit 31 receiving the contents of 13 and 12 delivers a signal = as soon as there is equality.memories
Pour le fonctionnement du circuit 20, deux cas pourront se présenter, suivant la valeur de T :For the operation of
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.If T = 1, the data read from
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 Y1 du circuit 32 représentent AF/16. On considère de même que la donnée Y2 à 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 :
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 :
La sortie de l'additionneur 35 délivre donc :
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
- - a logarithmic interpolation between AC and AF;
- - an inversion of the least significant bit A 0 since the quantity added 2 AF - AC-l is odd. 16
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.The
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") :The control logic further comprises an
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 ACnt et l'amplitude finale AF selon la formule :
Le coefficient k étant de préférence une puissance de 2 (k = 4 dans le cas de la figure).The coefficient k is preferably a power of 2 (k = 4 in the case of the figure).
La figure 4 représente la courbe enveloppe d'amplitude d'un signal périodique. Cette courbe comprend une portion T0 - T1 d'attaque ôù l'amplitude est croissante, une portion T - T5 où le signal subit un trémolo d'amplitude et une portion T5 - T6 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.FIG. 4 represents the amplitude envelope curve of a periodic signal. This curve includes a portion T 0 - T 1 of attack where the amplitude is increasing, a portion T - T 5 where the signal undergoes a tremolo of amplitude and a portion T 5 - T 6 etc. signal decay and extinction. It is remarkable to note that this complex evolution of the amplitude requires only a few amplitude commands (writing of the new value of AF) at times Tl, T2, T3, etc.
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.FIG. 5 represents a flowchart explaining the sequence of the sequence of reading of the blocks in the synthesizer. This procedure is similar to that which was explained in detail in applications Nos. 7832727 and 79 07339.
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).As long as the signal state of the
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.A sample is then automatically calculated (107) either with the current amplitude value AC already contained in the block (if there is no change of state as indicated by the sign =) or with a new current amplitude (if ≠) calculated (106) according to a logarithmic (or exponential or linear) interpolation. Then a new block is selected by the secondary pointer (102) and so on.
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.The invention applies to electronic musical instruments of which it constitutes the fundamental element. Indeed, the realization of an instrument such as an electronic organ requires around the synthesizer other elements such as furniture, keyboards, pedals, power supply, low frequency amplification and control logic of the synthesizer. This control logic is advantageously carried out from a microcomputer of which the synthesizer according to the invention is a peripheral. This microcomputer is moreover very simple and includes a microprocessor associated with program memories, data memories, and logic circuits making the necessary connections to pedalboards, buttons, pull tabs, etc. on the one hand and the synthesizer on the other. Several synthesizers can even be coupled to the same microcomputer and vice versa.
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.The synthesizer according to the invention, by automatically carrying out the automatic evolution of the envelope of each periodic signal, up to a final amplitude value, relieves the microcomputer of the corresponding task. The complexity of the synthesizer is however not significantly increased since the phase increment and amplitude calculation circuits are common, with the characteristic that each update operation (phase or amplitude) adds a quantity odd to the previous value (so that the least significant bit can follow the state of a generator). Other equivalent means are obviously conceivable. It should also be noted that the automatic evolution of amplitude of each periodic signal is independent of that of the other signals. Thus certain periodic signals can be modified from time to time by the control means of the instrument, and others can keep the same amplitude, this in two possible ways: either ignoring the IT signal emitted by the
Claims (10)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
AT80400861T ATE7744T1 (en) | 1979-06-15 | 1980-06-13 | MULTI-VOICE DIGITAL SYNTHESIZER OF PERIODIC SIGNALS. |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FR7915337 | 1979-06-15 | ||
FR7915337A FR2459524A1 (en) | 1979-06-15 | 1979-06-15 | POLYPHONIC DIGITAL SYNTHEIZER OF PERIODIC SIGNALS AND MUSICAL INSTRUMENT COMPRISING SUCH A SYNTHESIZER |
Publications (2)
Publication Number | Publication Date |
---|---|
EP0021964A1 true EP0021964A1 (en) | 1981-01-07 |
EP0021964B1 EP0021964B1 (en) | 1984-05-30 |
Family
ID=9226648
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
EP80400861A Expired EP0021964B1 (en) | 1979-06-15 | 1980-06-13 | Digital polyphonic synthesizer of periodic signals |
Country Status (8)
Country | Link |
---|---|
US (1) | US4344343A (en) |
EP (1) | EP0021964B1 (en) |
JP (1) | JPS5632191A (en) |
AT (1) | ATE7744T1 (en) |
DE (1) | DE3068012D1 (en) |
ES (1) | ES492433A0 (en) |
FR (1) | FR2459524A1 (en) |
NO (1) | NO801774L (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0199192A2 (en) * | 1985-04-12 | 1986-10-29 | Yamaha Corporation | Tone signal generation device |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4437377A (en) | 1981-04-30 | 1984-03-20 | Casio Computer Co., Ltd. | Digital electronic musical instrument |
GB2113447B (en) * | 1981-12-22 | 1986-07-09 | Casio Computer Co Ltd | Tone signal generating apparatus of electronic musical instruments |
JPH0795235B2 (en) * | 1983-10-27 | 1995-10-11 | 株式会社河合楽器製作所 | Electronic musical instrument |
US4549459A (en) * | 1984-04-06 | 1985-10-29 | Kawai Musical Instrument Mfg. Co., Ltd. | Integral and a differential waveshape generator for an electronic musical instrument |
JPS60254097A (en) * | 1984-05-30 | 1985-12-14 | カシオ計算機株式会社 | Distorted waveform generator |
US4776964A (en) * | 1984-08-24 | 1988-10-11 | William F. McLaughlin | Closed hemapheresis system and method |
US4677889A (en) * | 1985-10-25 | 1987-07-07 | Kawai Musical Instrument Mfg. Co., Ltd. | Harmonic interpolation for producing time variant tones in an electronic musical instrument |
SE469576B (en) * | 1992-03-17 | 1993-07-26 | Televerket | PROCEDURE AND DEVICE FOR SYNTHESIS |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4036096A (en) * | 1974-07-11 | 1977-07-19 | Nippon Gakki Seizo Kabushiki Kaisha | Musical tone waveshape generator |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3610806A (en) * | 1969-10-30 | 1971-10-05 | North American Rockwell | Adaptive sustain system for digital electronic organ |
JPS5441497B2 (en) * | 1974-11-14 | 1979-12-08 | ||
JPS6134160B2 (en) * | 1974-12-27 | 1986-08-06 | Kawai Musical Instr Mfg Co | |
US4023454A (en) * | 1975-08-28 | 1977-05-17 | Kabushiki Kaisha Dawai Gakki Seisakusho | Tone source apparatus for an electronic musical instrument |
FR2344907A1 (en) * | 1976-03-16 | 1977-10-14 | Deforeit Christian | POLYPHONIC ELECTRONIC MUSICAL INSTRUMENT |
JPS6042953B2 (en) * | 1976-12-29 | 1985-09-25 | ヤマハ株式会社 | Wave generator for electronic musical instruments |
FR2396375A1 (en) * | 1977-07-01 | 1979-01-26 | Deforeit Christian | POLYPHONIC SYNTHESIZER OF PERIODIC SIGNALS AND ELECTRONIC MUSICAL INSTRUMENT INCLUDING SUCH A SYNTHESIZER |
US4205575A (en) * | 1978-05-19 | 1980-06-03 | The Wurlitzer Company | Binary interpolator for electronic musical instrument |
US4245541A (en) * | 1979-06-01 | 1981-01-20 | Kawai Musical Instrument Mfg. Co., Ltd. | Apparatus for reducing noise in digital to analog conversion |
-
1979
- 1979-06-15 FR FR7915337A patent/FR2459524A1/en active Granted
-
1980
- 1980-06-10 US US06/158,251 patent/US4344343A/en not_active Expired - Lifetime
- 1980-06-13 ES ES492433A patent/ES492433A0/en active Granted
- 1980-06-13 EP EP80400861A patent/EP0021964B1/en not_active Expired
- 1980-06-13 AT AT80400861T patent/ATE7744T1/en active
- 1980-06-13 DE DE8080400861T patent/DE3068012D1/en not_active Expired
- 1980-06-13 NO NO801774A patent/NO801774L/en unknown
- 1980-06-16 JP JP8034280A patent/JPS5632191A/en active Pending
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4036096A (en) * | 1974-07-11 | 1977-07-19 | Nippon Gakki Seizo Kabushiki Kaisha | Musical tone waveshape generator |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0199192A2 (en) * | 1985-04-12 | 1986-10-29 | Yamaha Corporation | Tone signal generation device |
EP0199192A3 (en) * | 1985-04-12 | 1988-07-06 | Nippon Gakki Seizo Kabushiki Kaisha | Tone signal generation device |
Also Published As
Publication number | Publication date |
---|---|
ES8102389A1 (en) | 1980-12-16 |
ATE7744T1 (en) | 1984-06-15 |
JPS5632191A (en) | 1981-04-01 |
FR2459524A1 (en) | 1981-01-09 |
NO801774L (en) | 1980-12-16 |
EP0021964B1 (en) | 1984-05-30 |
DE3068012D1 (en) | 1984-07-05 |
ES492433A0 (en) | 1980-12-16 |
FR2459524B1 (en) | 1984-11-09 |
US4344343A (en) | 1982-08-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US4184400A (en) | Electronic musical instrument utilizing data processing system | |
JPH0631989B2 (en) | Waveform generator for electronic musical instruments | |
US4114498A (en) | Electronic musical instrument having an electronic filter with time variant slope | |
EP0021964B1 (en) | Digital polyphonic synthesizer of periodic signals | |
GB1569848A (en) | Waveform generating systems for electronic musical instruments | |
FR2476888A1 (en) | DIGITAL SYNTHESIZER OF SOUND SIGNALS AND APPLICATIONS TO ELECTRONIC MUSICAL INSTRUMENTS | |
JPS58102296A (en) | Electronic musical instrument | |
US5036541A (en) | Modulation effect device | |
Snell | Design of a digital oscillator which will generate up to 256 low distortion sine waves in real time | |
GB2103005A (en) | Modulation effect device | |
JPH0642149B2 (en) | Electronic musical instrument | |
EP0011576B1 (en) | Polyphonic synthesizer of periodical signals using digital techniques | |
JPS6093492A (en) | Sound source unit | |
EP0242258B1 (en) | Device for the execution of an algorithm (leroux-gueguen) for the coding of a signal by linear prediction | |
US4638706A (en) | Electronical musical instrument with note frequency data setting circuit and interpolation circuit | |
JPS6214835B2 (en) | ||
US4084472A (en) | Electronic musical instrument with tone generation by recursive calculation | |
US4240318A (en) | Portamento and glide tone generator having multimode clock circuit | |
US4476765A (en) | Electronic music signal generator | |
US4909118A (en) | Real time digital additive synthesizer | |
JPS5858678B2 (en) | electronic musical instruments | |
JPS5840199B2 (en) | Denshigatsuki | |
US4338844A (en) | Tone source circuit for electronic musical instruments | |
JPH0118438B2 (en) | ||
JP2990777B2 (en) | Electronic musical instrument effect device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PUAI | Public reference made under article 153(3) epc to a published international application that has entered the european phase |
Free format text: ORIGINAL CODE: 0009012 |
|
AK | Designated contracting states |
Designated state(s): AT DE GB IT NL |
|
17P | Request for examination filed |
Effective date: 19810226 |
|
R17P | Request for examination filed (corrected) |
Effective date: 19810227 |
|
RAP1 | Party data changed (applicant data changed or rights of an application transferred) |
Owner name: DEFOREIT, CHRISTIAN JACQUES |
|
ITF | It: translation for a ep patent filed |
Owner name: STUDIO TORTA SOCIETA' SEMPLICE |
|
GRAA | (expected) grant |
Free format text: ORIGINAL CODE: 0009210 |
|
AK | Designated contracting states |
Designated state(s): AT DE GB IT NL |
|
REF | Corresponds to: |
Ref document number: 7744 Country of ref document: AT Date of ref document: 19840615 Kind code of ref document: T |
|
PGFP | Annual fee paid to national office [announced via postgrant information from national office to epo] |
Ref country code: DE Payment date: 19840609 Year of fee payment: 5 |
|
RAP2 | Party data changed (patent owner data changed or rights of a patent transferred) |
Owner name: DEFOREIT, CHRISTIAN JACQUES |
|
REF | Corresponds to: |
Ref document number: 3068012 Country of ref document: DE Date of ref document: 19840705 |
|
NLT2 | Nl: modifications (of names), taken from the european patent patent bulletin |
Owner name: CHRISTIAN JACQUES DEFOREIT TE SEMUR-EN-AUXOIS, FRA |
|
PLBE | No opposition filed within time limit |
Free format text: ORIGINAL CODE: 0009261 |
|
STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: NO OPPOSITION FILED WITHIN TIME LIMIT |
|
26N | No opposition filed | ||
PGFP | Annual fee paid to national office [announced via postgrant information from national office to epo] |
Ref country code: AT Payment date: 19850613 Year of fee payment: 6 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: AT Effective date: 19860613 |
|
PGFP | Annual fee paid to national office [announced via postgrant information from national office to epo] |
Ref country code: NL Payment date: 19870630 Year of fee payment: 8 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: GB Effective date: 19890613 |
|
ITTA | It: last paid annual fee | ||
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: NL Effective date: 19900101 |
|
GBPC | Gb: european patent ceased through non-payment of renewal fee | ||
NLV4 | Nl: lapsed or anulled due to non-payment of the annual fee | ||
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: DE Effective date: 19900301 |