DE2818083A1 - Digital generator for electrical music synthesisers - has selector for waveform specification and inbuilt computer to control signal generator - Google Patents
Digital generator for electrical music synthesisers - has selector for waveform specification and inbuilt computer to control signal generatorInfo
- Publication number
- DE2818083A1 DE2818083A1 DE19782818083 DE2818083A DE2818083A1 DE 2818083 A1 DE2818083 A1 DE 2818083A1 DE 19782818083 DE19782818083 DE 19782818083 DE 2818083 A DE2818083 A DE 2818083A DE 2818083 A1 DE2818083 A1 DE 2818083A1
- Authority
- DE
- Germany
- Prior art keywords
- data
- waveform
- address
- generator according
- query
- 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
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/002—Instruments in which the tones are synthesised from a data store, e.g. computer organs using a common processing for different operations or calculations, and a set of microinstructions (programme) to control the sequence thereof
-
- 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/541—Details of musical waveform synthesis, i.e. audio waveshape processing from individual wavetable samples, independently of their origin or of the sound they represent
- G10H2250/621—Waveform interpolation
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Acoustics & Sound (AREA)
- Multimedia (AREA)
- Electrophonic Musical Instruments (AREA)
Abstract
Description
Digitaler Generator für musikalische Töne Digital generator for musical tones
3ESOHRE IBUNG Die Erfindung bezieht sich auf einen digitalen Generator für musikalische Töne, der insbesondere geeignet ist, bei elektronischen Musikinstrumenten, z.B. bei einer elektronischen Orgel, verwendet zu werden. 3SOHRE IBUNG The invention relates to a digital generator for musical tones, which is particularly suitable for electronic musical instruments, e.g. to be used in an electronic organ.
Schon seit langer Zeit werden Oszillatoren und andere analoge Vorrichtungen verwendet, um Musikinstrumente bekannter Art nachzuahmen. Während der letzten zwanzig Jahre hat die zunehmende Verwendung digitaler Verfahren zur Anwendung solcher Verfahren zum Synthetisieren von Sprach- und Musik-Wellenformen geführt. Bei einem Verfahren, über das zahlreiche Berichte vorliegen, dient ein entsprechend programmierter Rechner dazu, eine Folge von Amplitudenwerten in digitaler Form zur Darstellung einer musikalischen Komposition zu erzeugen. Hierbei lag es auf der Hand, daß es grundsätzlich möglich sein müßte, eine solche Folge anhand einer sich aus entsprechenden Zeichen zusammensetzenden Partitur zur unmittelbaren Wiedergabe über einen Digital Analog-Wandler und eine Phonoanlage zu erzeugen. Um die begrenzte Arbeitsgeschwindigkeit eines Rechners zum Berechnen von Augenblickswerten der Amplitude zu berücksichtigen, wurde in der Praxis eine Zwischenstufe eingeführt, die die Herstellung einer digitalen Aufnahme bei niedriger Geschwindigkeit und die Wiedergabe mit einer höheren Geschwindigkeit ermöglicht. Um ein gedachtes Orchesterinstrument darzustellen, müssen hierbei digital dargestellte Wellenformen abgefragt werden, die in dem Rechner gespeichert sind; dabei wird die Frequenz eines auf dem Instrument gespielten Tons durch die Abfragefrequenz bestimmt. Oscillators and other analog devices have long been in use used to imitate musical instruments of known types. During the last twenty The increasing use of digital methods for the application of such methods has years led to synthesizing speech and music waveforms. In a procedure A suitably programmed computer is used for the numerous reports to do this, a sequence of amplitude values in digital form to represent a musical To create composition. It was obvious that it was basically possible would have to be, such a sequence on the basis of a sequence composed of corresponding signs Score for immediate playback via a digital to analog converter and a To generate phono system. To the limited Working speed a computer to calculate instantaneous amplitude values, an intermediate stage was introduced in practice, the production of a digital Record at low speed and play back at higher speed enables. In order to represent an intended orchestral instrument, digital interrogated represented waveforms stored in the computer; the frequency of a note played on the instrument is determined by the interrogation frequency certainly.
Es sei bemerkt, daß die Verwendung dauerhaft gespeicherter Informationen für eine einzige Wellenform zur Charakterisierung eines nachgeahmten Instruments über den ganzen in Frage kommenden Frequenzbereich eine Abweichung von der Realität darstellt, für die das Ohr sehr empfindlich ist. Insbesondere bei Pfeifenorgeln ist es bekannt, daß jeweils bei einem bestimmten Pfeifenregister der harmonische Aufbau, d.h. die Verteilung und die relative Amplitude der Obertöne, im Höhenbereich durch die relative Stärke der Grundnote und im Tiefenbereich durch die zunehmende Stärke der Obertöne gekennzeichnet ist. Daher ist es erwunscht, bei einer elektronischen Orgel eine entsprechende Anpassung des harmonischen Aufbaus an die Tonhöhe zu ermöglichen.It should be noted that the use of permanently stored information for a single waveform to characterize a mimicked instrument a deviation from reality over the entire frequency range in question to which the ear is very sensitive. Especially with pipe organs it is known that the harmonic Structure, i.e. the distribution and the relative amplitude of the overtones, in the treble range by the relative strength of the base note and in the low range by the increasing Strength of the overtones is marked. Therefore it is desirable for an electronic Organ to enable a corresponding adaptation of the harmonic structure to the pitch.
Durch die Erfindung ist nunmehr ein digitaler Generator für musikalische Töne geschaffen worden, der Einrichtungen aufweist, mittels welcher Wählsignale erzeugt werden, von denen jedes die Wahl eines bestimmten Satzes von harmonischen Strukturen anzeigt, ferner Einrichtungen zum Erzeugen weiterer Wählsignale, von denen jedes die Wahl eines Tons mit einer bestimmten Tonhöhe und einer vorbestimmten harmonischen Struktur innerhalb des genannten Satzes anzeigt, digitale Recheneinrichtungen, die so programmiert sind, daß sie auf jedes Wählsignal ansprechen, um harmonische Informations - und Steuersignale, Speicherdaten und Steuersignale sowie Abfragewähl- und Steuersignale zu erzeugen, Synthetisiereinrichtungen, die auf die harmonischen Daten- und Steuersignale ansprechen, um digitale Daten zu synthetisieren, welche mindestens eine Bezugswellenform darstellen, wobei die bzw. jede Bezugswellenform einem zugehörigen vorbestimmten Satz der genannten harmonischen Strukturen entspricht, Einrichtungen, die auf die Speicherdaten- und Steuersignale ansprechen, um die Bezugswellenfomndaten zu speichern, sowie Abfrageeinrichtungen, die auf die Abfragewähldaten und die Steuersignale ansprechen, um nach Bedarf die gespeicherten Bezugswellenformdaten abzufragen, so daß weitere digitale Daten abgeleitet werden, welche den vorbestimmten harmonischen Aufbau des gewählten Tons darstellen, wobei die Abfragefrequenz die Höhe des Tons bestimmt, wenn der Ton mit Hilfe der zusätzlichen digitalen Daten wiedergegeben wird.The invention now provides a digital generator for musical Tones have been created, the means by means of which dial signals can be generated, each of which has the choice of a particular set of harmonics Indicates structures, also means for generating further dial signals from each of which the choice of a tone with a certain pitch and a predetermined one indicates the harmonic structure within the said sentence, digital computing equipment, which are programmed to respond to any dial signal for harmonic Information and control signals, memory data and control signals and to generate polling selection and control signals, synthesizers that respond to the harmonic data and control signals to synthesize digital data, representing at least one reference waveform, the or each reference waveform corresponds to an associated predetermined set of said harmonic structures, Means responsive to the memory data and control signals for generating the reference waveform data to store, as well as interrogators that respond to the interrogation dialing data and the control signals respond to query the stored reference waveform data as needed, so that further digital data are derived, which the predetermined harmonic Represent the structure of the selected tone, the query frequency being the pitch of the tone determined when the sound is reproduced with the help of the additional digital data will.
Zu den Synthetisierungseinrichtungen können Einrichtungen gehören, die es ermöglichen, Daten zu speichern, welche eine Sinuswellenform darstellen, ferner Einrichtungen zum Ableiten harmonischer Daten aus den gespeicherten Daten sowie Einrichtungen zum Überlagern der gespeicherten Daten und der harmonischen Daten derart, daß die gewünschte Bezugswellenform entsteht.The synthesizing facilities may include facilities which make it possible to save data representing a sine waveform, also means for deriving harmonic data from the stored data and means for superimposing the stored data and the harmonic Data such as to produce the desired reference waveform.
Zu den Abfrageeinrichtungen können Adressiereinrichtungen gehören, mittels welcher der Bezugswellenform-Datenspeicher abgefragt werden kann, um an jeder gewählten Adresse einen Abfragewert zu bestimmen, wobei die Adressiereinrichtungen so ausgebildet sind, daß sie in Abhängigkeit von einem vorbestimmten kumulativen Eingangssignal-Zählergebnis von einer genannten Adresse zur nächsthöheren Adresse fortschreiten, sowie Einrichtungen zum Wählen von Adressen dadurch, daß sie ein schrittweise vergrößerbares Eingangszählergebnis den Adressiereinrichtungen in gleichmäßigen Zeitabständen zuführen, so daß sich die mittlere Abfragefrequenz entsprechend dem Verhältnis zwischen dem Steigerungsbetrag des Eingangszählergebnisses und dem vorbestimmten kumulativen Eingangszählergebnis ändert.The interrogation devices can include addressing devices, by means of which the reference waveform data memory can be queried in order to each selected address to determine a query value, the addressing devices are designed to be dependent on a predetermined cumulative Input signal count result from a named address to the next higher address progress, as well as means for dialing addresses by having a The input counting result, which can be increased step-by-step, is sent to the addressing devices in uniform Add time intervals, so that the mean query frequency corresponding to the ratio between the increment amount of the input count result and changes the predetermined cumulative input count.
Zu den Abfrageeinrichtungen können ferner Einrichtungen gehören, die geeignet sind, eine Abfragewert-Interpolation zwischen den Abfragewerten durchzuführen, welche jeweils der angezeigten Adresse undder nächsthöheren Adresse entsprechen, wobei eine solche Interpolation immer dann stattfindet, wenn das kumulative Eingangs zählergebnis, das auf einen Steigerungsbetrag für das Eingangszählergebnis folgt, kleiner ist als der vorbestimmte Wert.The interrogation devices can also include devices that are suitable for performing a query value interpolation between the query values, which correspond to the displayed address and the next higher address, such interpolation takes place whenever the cumulative input counting result that follows an increase amount for the input counting result, is smaller than the predetermined value.
Zu den Abfrageeinrichtungen können ferner Einrichtungen gehören, die es ermöglichen, einen Abfragewert abzuleiten, der als Interpolationswert zwischen den Werten liegt, die für entsprechende Adressen aus gespeicherten Daten ermittelt worden sind, welche zwei Bezugswellenformen darstellen, die zueinander in Beziehung stehende harmonische Strukturen aufweisen, so daß digitale Daten erzeugt werden, die einem musikalischen Ton entsprechen, dessen harmonische Struktur zwischen den dazu in Beziehung stehenden harmonischen Strukturen liegt.The interrogation devices can also include devices that make it possible to derive a query value that is used as an interpolation value between the values that are determined for the corresponding addresses from stored data representing two reference waveforms related to each other have standing harmonic structures, so that digital data are generated, which correspond to a musical tone whose harmonic structure between the related harmonic structures.
Zu den Abfrageeinrichtungen können mehrere Abfragekanäle gehören, von denen jeder dazu dienen kann, die genannten zusätzlichen digitalen Daten zu erzeugen, sowie Addiereinrichtungen zum Überlagern der zusätzlichen digitalen Daten, die bei jedem Kanal einer vorbestimmten Zeitspanne entsprechen, um digitale Daten zu erzeugen, die eine zusammengesetzte Wellenform darstellen.The interrogation devices can include several interrogation channels, each of which can be used to add the said additional digital data generate, as well as adding devices for superimposing the additional digital data, which correspond to a predetermined period of time for each channel to convert digital data that represent a composite waveform.
Die Abfragekanäle können sequentiell betätigt werden, und die Addiereinrichtungen können mit Ve rzö ge rungs einrichtungen versehen sein, damit diejenigen Daten, welche sequentiellen Elementen der vorbestimmten Zeitspanne entsprechen, überlagert werden können.The interrogation channels can be operated sequentially, and the adders can with delay devices be provided so those Data corresponding to sequential elements of the predetermined period of time, can be overlaid.
Die Addiereinrichtungen können ferner mit Einrichtungen vep sehen sein, die es ermöglichen, den jedem Kanal entnommenen Daten vor ihrer Überlagerung einen zugehörigen Wert auf einer Skala relativer Amplitudenwerte zuzuweisen.The adding devices can also see with devices vep which make it possible to read the data extracted from each channel before they are superimposed assign an associated value on a scale of relative amplitude values.
Ferner können bei den Addiereinrichtungen Normierungseinrichtungen vorhanden sein, mittels welcher die digitalen Daten, welche die Amplitude an jedem der Abfragepunkte darstellen, welche die zusammengesetzte Wellenform bilden, normiert werden, damit der höchstwertige Teil der Daten eine möglichst kleine Anzahl von Bits einnehmen kann.Furthermore, normalizing devices can be used in the adding devices be present, by means of which the digital data indicating the amplitude at each of the sample points that make up the composite waveform, normalized so that the most significant part of the data is as small as possible Bits can take.
Der digitale Generator kann Umwandlungseinrichtungen aufweisen, die auf die relevanten Daten- und Steuersignale ansprechen, um die eine zusammengesetzte Wellenform darstellenden digitalen Daten in ein analoges Signal zu verwandeln.The digital generator may have conversion devices that respond to the relevant data and control signals to the one composite Converting digital data representing waveforms into an analog signal.
Zu den Umwandlungseinrichtungen gehören Einrichtungen, die dazu dienen, bei dem analogen Signal den Maßstab der relativen Amplitude wieder herzustellen, der ursprünglich den normierten digitalen Daten zugewiesen wurde.The conversion facilities include facilities that serve to restore the scale of the relative amplitude of the analog signal, which was originally assigned to the standardized digital data.
Ferner können zu dem digitalen Generator Einrichtungen für die akustische Wiedergabe des analogen Signals vorhanden sein.Furthermore, devices for the acoustic Reproduction of the analog signal must be available.
Bei einer Ausführungsform der Erfindung in Gestalt einer elektronischen Orgel sind mehrere Register und Tasten vorhanden, die es ermöglichen, die Wählsignale und die zusätzlichen Wählsignale zu erzeugen; ferner ist ein erfindungsgemäßer digitaler Generator der vorstehend beschriebenen Art vorhanden, zu dem mindestens die beschriebenen Einrichtungen zum Erzeugen digitaler Daten zum Darstellen einer zusammengesetzten Wellenform gehören, ferner die Einrichtungen zum Umwandeln der digitalen Daten in ein analoges Signal sowie die Einrichtungen für die akustische Wiedergabe des analogen Signals.In one embodiment of the invention in the form of an electronic Organ there are several registers and buttons that allow the selection signals and generate the additional dial signals; furthermore a digital one according to the invention Generator of the type described above is present, to which at least the described Facilities for generating digital data to represent a composite waveform, and the means for converting the digital data into an analog signal as well as the facilities for acoustic Reproduction of the analog signal.
Aus der vorstehenden allgemeinen Beschreibung der grundsätzlichen Merkmale der Erfindung ist ersichtlich, daß die Erfindung in einem erheblichen Gegensatz zum Aufbau eines mit einem Rechner arbeitenden Musikgenerators bekannter Art steht, wie er einleitend beschrieben wurde. Gemäß der Erfindung wird jeder Ton innerhalb eines bestimmten Registers mit einem harmonischen Aufbau erzeugt, der für den betreffenden Ton charakteristisch ist, und die Beschränkungen, die sich aus der Verwendung einer gespeicherten Wellenform ergeben, werden vermieden. Ferner ist die Tatsache berücksichtigt, daß eine wirtschaftliche Benutzung der Recheneinrichtungen nur gewährleistet ist, wenn von vornherein die Notwendigkeit vermieden wird, sich wiederholende Zahlenfolgen zu erzeugen, wie sie zur Bestimmung eines anhaltenden Tons benötigt werden. Schließlich zeigt es sich, daß die Verwendung von Hardware für die Zwischenspeicherung von Wellenformen bei erhöhter Arbeitsgeschwindigkeit zu einer großen Vielseitigkeit führt.From the above general description of the basic Features of the Invention It can be seen that the invention is in marked contrast for the construction of a music generator of known type that works with a computer, as it was described in the introduction. According to the invention, each tone is within of a particular register with a harmonic structure that is specific to the Tone is characteristic and the limitations that result from the use of a stored waveform are avoided. Furthermore, the fact is taken into account that an economical use of the computing facilities is only guaranteed, if the necessity is avoided from the outset, repeating sequences of numbers as needed to determine a sustained tone. In the end it shows that the use of hardware for waveform caching leads to great versatility at increased working speed.
Ausführungsbeispiele der Erfindung werden im folgenden anhand schematischer Zeichnungen näher erläutert. Es zeigt: Fig. 1 das Blocksehaltbild einer elektronischen Orgel nach der Erfindung; Fig. 2 eine Kontaktabtasteinrichtung für die elektronische Orgel nach Fig. 1; Fig. 3 einen Wellenformgeneratcr für die elektronische Orgel nach Fig. 1; Fig. 4 das Blockschaltbild eines Generators für musikalische Töne für die elektronische Orgel nach Fig. 1; Fig. 5a bis 5e jeweils ein Fließschema für den Rechner nach Fig. 1; und Fig. 6 das Blockschaltbild einer Interpolationseinrichtung für den Tongenerator nach Fig. 4.Embodiments of the invention are shown schematically below with reference to Drawings explained in more detail. It shows: FIG. 1 the block diagram of an electronic Organ according to the invention; Fig. 2 shows a contact scanning device for the electronic Organ according to FIG. 1; Fig. 3 shows a waveform generator for the electronic organ according to Fig. 1; 4 shows the block diagram of a generator for musical Tones for the electronic organ of Figure 1; 5a to 5e each show a flow diagram for the computer of Fig. 1; and FIG. 6 shows the block diagram of an interpolation device for the tone generator according to FIG. 4.
Im folgenden wird zunächst anhand von Fig. 1 der allgemeine Aufbau einer erfindungsgemäßen elektronischen Orgel beschrieben. Zu der dargestellten Orgel gehört eine Konsole 10 bekannter Art mit zwei Handtastaturen und einer Pedaltastatur, zu denen Registerzüge gehören. Ferner sind Koppler vorhanden, die es z.B. ermöglichen, einander entsprechende Tasten verschiedener Tastaturen oder in Oktavenbeziehung zueinander stehende Tasten gemeinsam zu betätigen, wenn jeweils eine Taste betätigt wird. Bei einer Pfeifenorgel dient die Betätigung eines Registerzugs dazu, ein Pfeifenregister betriebsbereit zu machen, das gewählt wurde, um einen bestimmten Satz harmonischer Strukturen festzulegen. Wird eine Taste gedrückt, wird mindestens eine Pfeife des Satzes betätigt, der in Beziehung zu der Notation der Taste steht; der Grundton kann der Notation der Taste entsprechen, die gedrückt wurde, oder er kann entsprechend einer bestimmten harmonischen Beziehung verlagert sein. Wie eingangs erwähnt, ist es für eine Orgel ferner kennzeichnend, daß bei einem bestimmten Register der Tiefenbereich des Pfeifensatzes so ausgebildet ist, daß starke Obertöne erzeugt werden, während im Höhenbereich der Grundton vorherrscht und die höheren Obertöne unterdrtickt werden.In the following, the general structure will first be described with reference to FIG an electronic organ according to the invention described. To the organ shown includes a console 10 of a known type with two hand keyboards and a pedal keyboard, to which register pulls belong. There are also couplers that make it possible, for example, to Corresponding keys on different keyboards or in octave relation buttons that are adjacent to one another can be pressed together when one button is pressed will. In the case of a pipe organ, the operation of a stop is used to create a pipe register to make operational that was chosen to make a particular phrase more harmonious Establish structures. If a key is pressed, at least one whistle of the Actuated sentence related to the notation of the key; the keynote can correspond to the notation of the key that was pressed, or it can correspond accordingly be relocated to a certain harmonious relationship. As mentioned at the beginning, is it is also characteristic of an organ that in a certain register the depth range of the pipe set is designed so that strong overtones are generated during in the treble range the fundamental tone predominates and the higher overtones are suppressed.
Zur Nachahmung dieser Gegebenheiten ist es daher zunächst erforderlich, von der Konsole aus ein Wählsignal zu geben, um eine änderung der Identität einer Taste oder eines Registers anzuzeigen. Die Wahl eines Registers bestimmt einen Satz von harmonischen Strukturen für die fortschreitenden Veränderungen der Tonqualität innerhalb der Tastatur. Die Wahl einer Taste identifiziert sowohl die gewünschte Tonhöhe als auch die richtige harmonische Struktur innerhalb des Satzes. Daraufhin ist es möglich, die Synthese einer geeigneten komplexen Wellenform und ihre Wiedergabe bei dem geforderten Grundton zu bestimmen. Gemäß der Erfindung werden diese Forderungen dadurch erfüllt, daß ein programmierter Rechner mit der zugehörigen Hardware kombiniert ist. Gemäß Fig. 1 ist eine Tasten- und Register-Abtasteinrichtung vorhanden, die den Zustand sämtlicher Schalterkontakte überwacht, durch welche die Tasten und Register dargestellt werden, und die ein entsprechendes Wählsignal einem Rechner 12 zuführt, wenn irgendeine Zustandsänderung nachgewiesen wird. In Abhängigkeit von einem Wählsignal werden Befehle in Form von Steuer- und Datensignalen zum Synthetisieren einer Wellenform mit dem gewünschten harmonischen Aufbau von dem Rechner 12 an einen digitalen Wellenformgenerator 13 abgegeben. Sobald die Synthese abgeschlossen ist, wird die Wellenform einem Speicher eines Generators 14 für musikalische Töne eingegeben.In order to imitate these conditions, it is therefore first necessary to to give a dial signal from the console in order to change the identity of a Button or tab to display. Choosing a register determines a set of harmonic structures for the progressive changes the sound quality within the keyboard. Choosing a button identifies both the desired pitch as well as the correct harmonic structure within the Sentence. It is then possible to synthesize an appropriate complex waveform and to determine their reproduction at the required keynote. According to the invention these requirements are met in that a programmed computer with the associated hardware is combined. Referring to Figure 1, there is a key and register scanner available that monitors the state of all switch contacts through which the Keys and registers are shown, and a corresponding dial signal Computer 12 feeds when any change in state is detected. Dependent on commands in the form of control and data signals are generated from a selection signal for synthesis a waveform with the desired harmonic structure from the computer 12 to a digital waveform generator 13 output. Once the synthesis is complete, the waveform is inputted to a memory of a musical tone generator 14.
Dann führt der Rechner 12 dem Generator 14 Befehle zu, damit die gespeicherte Wellenform mit der Frequenz abgefragt wird, die erforderlich ist, um dem Ton die gewünschte Grundhöhe zuzuweisen. Weitere Befehle dienen dazu, die Amplitude der abgefragten Werte festzulegen. Das Ausgangssignal des Generators 14 repräsentiert die gewünschte Note in digitaler Form, die in einem Digital/Analog-Wandler 15 in die analoge Form umgesetzt wird, bevor sie einer Ausgangsstufe 16 bekannter Art zugeführt wird. Gewöhnlich gehören zu der Ausgangsstufe 16 nur ein Verstärker und ein Lautsprecher. Zunächst wird im folgenden die Arbeitsweise der Anordnung nach Fig. 1 für den Fall beschrieben, daß immer dann, wenn ein neues Wählsignal erzeugt wird, in dem Generator 13 von Anfang an eine entsprechende Wellenform synthetisiert wird. Zwar erweist sich dieses Verfahren als durchaus brauchbar, doch wird weiter unten ein abgeändertes Verfahren beschrieben, das in der Praxis wegen seiner größeren Zweckmäßigkeit bevorzugt wird.The computer 12 then sends commands to the generator 14 so that the stored Waveform is queried at the frequency required to produce the sound assign the desired basic height. Further commands are used to set the amplitude of the set the requested values. The output of the generator 14 represents the desired note in digital form, which is converted into a digital-to-analog converter 15 in the analog form is implemented before an output stage 16 of known type is fed. Usually only one amplifier and belong to the output stage 16 a speaker. First, the following is the mode of operation according to the arrangement Fig. 1 described for the case that whenever a new dial signal is generated is synthesized in the generator 13 from the beginning, a corresponding waveform will. True, this turns out to be Procedure as quite useful, however, a modified procedure is described below which works in practice preferred for its greater convenience.
Im folgenden wird näher auf den Aufbau und die Wirkungsweise der Teile der Anordnung nach Fig. 1 eingegangen. In Fig. 2 sind weitere Einzelheiten der Tasten- und Register-Abtasteinrichtung 11 nach Fig. 1 dargestellt. Es sind etwa 250 Kontakte für sämtliche Tasten, Register und Hilfssteuereinrichtungen vorhanden, die bei der Konsole 10 nach Fig. 1 die in Fig. 2 dargestellte Anordnung 20 bilden. Natürlich richtet sich die Zahl der Kontakte nach der Größe des Instruments. Die Adressen und Zustände sämtlicher Kontakte der Anordnung 20 werden in einem 51 2-Bit-Schieberegister 21 gespeichert, und zum Abtasten der Anordnung 20 bezüglich irgendwelcher Zustandsänderungen dient eine Abtasteinrichtung mit einem Adressenzähler 22 und einem Multiplexer 23. Es wird eine einfache ODER-Gatter-Anordnung benutzt, so daß die Tastenkontakte auf die Betätigung von Kopplungseinrichtungen zwischen den Handtastaturen sowie zwischen den Handtastaturen und den Pedaltastaturen ansprechen. Normalerweise ist es daher nicht erforderlich, bei dem Abtastvorgang den jeweiligen Zustand der Kopplungseinrichtungen zu berücksichtigen, doch könnte man zu diesem Zweck entsprechende Maßnahmen treffen. Das Register 21 wird bezüglich des jeweiligen Zustandes jedes Kontaktes durch das Ausgangssignal des Multiplexers 23 auf dem neuesten Stand gehalten, und gleichzeitig wird dieser neueste Stand durch einen Komparator 24 mit dem Zustand verglichen, der in dem Sühieberegister 21 nach der vorausgegangenen Abtastung festgehalten worden ist. Wenn ein Unterschied vorhanden ist, bewirkt das Ausgangssignal'des Komparators 24, daß dem Rechner 12 ein Unterbrechungssignal von einer Unterbrechungsschaltung 25 aus zugeführt und die Abtastung automatisch unterbrochen wird. Uber einen Datenausgangsmultiplexer 26 liest der Rechner dann die Adresse des Bits ab, bei dem die Änderung stattgefunden hat, und auch der Wert der Änderung wird abgelesen. Danach wird die Rbtas;wnig aufgrund eines Rechnerbefehls wieder aufgenonmen. Jeder Kontakt wird während einer Zeitspanule von 20 Mikrosekunden adressiert, so daß die Aktualisierung des Registers 21 eine Gesamtzeit von etwa 10 ms sowie eine sich nach der Anzahl der Eontaktänderungen richtende zusätzliche Zeit erfordert.The following is a closer look at the structure and mode of operation of the parts the arrangement of FIG. 1 received. In Fig. 2 further details of the key and register scanner 11 of FIG. There are around 250 contacts for all keys, registers and auxiliary control devices available for the Console 10 according to FIG. 1 form the arrangement 20 shown in FIG. Naturally the number of contacts depends on the size of the instrument. The addresses and states of all contacts of array 20 are stored in a 51 2-bit shift register 21, and for scanning the assembly 20 for any changes in state A scanning device with an address counter 22 and a multiplexer 23 is used. A simple OR gate arrangement is used so that the key contacts on the operation of coupling devices between the keypads and between address the manual keyboards and the pedal keyboards. Usually it is therefore not necessary, the respective state of the coupling devices during the scanning process should be taken into account, but appropriate measures could be taken to this end. The register 21 is related to the respective status of each contact by the Output of multiplexer 23 kept up to date, and at the same time this latest status is compared by a comparator 24 with the status which has been held in the sieve register 21 after the previous scan is. If there is a difference, the output of the comparator causes 24 that the computer 12 receives an interrupt signal from an interrupt circuit 25 fed out and the scanning is automatically interrupted. Via a data output multiplexer 26 the computer then reads the address of the bit at which the change took place has, and also the value of the change is read. After that, will the Rbtas; little resumed on the basis of a computer command. Every contact will addressed during a time span of 20 microseconds so that the update of the register 21 has a total time of about 10 ms and one depending on the number which requires additional time to direct contact changes.
Der Rechner 12 reagiert auf abgetastete Daten, die anzeigen, daß das von der Konsole ausgehende Wählsignal verändert worden ist, dadurch, daß er nach dem entsprechenden Programm arbeitet, um eine Synthese der erforderlichen komplexen Bezugswellenform in dem Wellenformgenerator 13 nach Fig. 1 herbeizuführen. Die Wirkungsweise des Generators 13 ist aus Fig. 3 ersichtlich, wo die Schaltungselemente des Generators dargestellt sind. Wellenformdaten werden in zwei Speichern 30a und 30b bereitgehalten, von denen jeder Speichermöglichkeiten für 512 Abfragepunkte bietet, wobei die Amplitude jedes Abfragepunktes durch bis zu 16 Bits dargestellt wird. Bei dem Speicher 30a handelt es sich um einen programmierLaren Festwertspeicher mit einem ttultiplexausgang-S. während der Speicher 30b ein Speicher mit direktem Zugriff ist. Zunächst wird dem Speicher 30a durch den Rechner 12 eine einfache Sinuswellenperiode eingegeben, um eine Grundlage für den Aufbau der Bezugswellenform zu schaffen, Um der Grundform der komplexen Wellenform einen Amplitudenfaktor zuzuweisen, wird die erforderliche Amplitude durch den Rechner 12 in einer harmonischen Amplituden-Verriegelungs einrichtung 33 eingestellt; hierbei wird einem harmonischen Zähler 34 das Zählergebnis 1 eingegeben, und es wird ein Generierbefehl erzeugt. Die Abfragepunkte der Sinuswelle werden einmal schrittweise durchlaufen, und die Ausgangswerte werden einem Vervielfacher 35 zugeführt, wo sie mit dem Amplitudenfaktor multipliziert werden, der in der harmonischen Amplituden-Verriegelungseinrichtung 33 gespeichert ist. Das Ausgangssignal des Vervielfachers 35 wird in einer Addiereinrichtung 36 zum Inhalt des Speichers 30b addiert, der in diesem Stadium den Wert O hat, und das Signal wird dem Eingang des Speichers 30b erneut zugeführt. Wenn die Wellenform eine zweite Harmonische enthalten soll, wird der harmonische Zähler 34 auf das Zählergebnis 2 eingestellt, die erforderliche Amplitude wird mit Hilfe der Verriegelungseinrichtung 33 eingestellt, und es wird erneut ein Generierbefehl erzeugt. In dem Speicher 3Oa werden jetzt die Sinuswellen-Abfragepunkte zweimal schrittweise durchlaufen, wobei jeder zweite Abiragepunkt ausgelassen wird, so daß zwei Perioden der Sinuswelle durch die gleiche Anzahl von Abfragewerten dargestellt werden wie die Grundwelle. Wie zuvor wird jeder Abfragewert mit dem Amplitudenfaktor multipliziert, das Ergebnis wird zum Wert des entsprechenden dem Speicher 30b entnommenen Abfragewerts addiert, und der Gesamtwert wird erneut dem Speicher 30b zugeführt. Dieses Verfahren wird unter Beibehaltung der Gesam-tzahlder Abfragewerte bei jeder gewünschten Harmonischen wiederholt, bis eine einzige Periode der vollständigen komplexen Bezugswellenform generiert worden ist. Wie weiter unten erläutert, ergibt sich ein Vorteil, wenn der Anstieg der Wellenform beim Nulldurchgang möglichst klein gemacht wird. Zu diesem Zweck kann man bei jeder Harmonischen bzw. den gewählten Harmonischen eine Phasenverschiebung um 180° herbeiführen. Ein Eingangssignal, das der Rechner 12 einem zur Steuerung dienenden Lese- und Schreibzähler 37 zuführt, leitet dann einen Vorgang ein, mittels dessen die Wellenform aus dem Speicher 30b entnommen und gemäß Fig. 1 einem Wellenformspeicher des Generators 14 für musikalische Töne eingegeben wird. Der Zeitpunkt, in dem sich der Ausgabevorgang abspielt, wird durch ein weiteres Eingangssignal bestimmt, das dem Zähler 37 durch die Steuereinrichtung 56 des Generators 14 zugeführt wird. Somit wird der Speicher 30b gelöscht, damit die nächste Wellenform generiert werden kann.The computer 12 is responsive to scanned data indicating that the from the console outgoing dialing signal has been changed by the fact that he after the appropriate program works to synthesize the required complexes Reference waveform in the waveform generator 13 of FIG. The mode of action of the generator 13 can be seen from Fig. 3, where the circuit elements of the generator are shown. Waveform data are held in two memories 30a and 30b, each of which provides storage for 512 query points, with the amplitude each query point is represented by up to 16 bits. In the memory 30a it is a programmable read-only memory with a multiplex output-S. while memory 30b is a direct access memory. First of all, the Memory 30a inputted by calculator 12 to a simple sine wave period to create a basis for building the reference waveform in order to create the basic shape Assigning an amplitude factor to the complex waveform becomes the required Amplitude by the computer 12 in a harmonic amplitude locking device 33 set; here the counting result 1 is entered into a harmonic counter 34, and a generate command is generated. The query points will be the sine wave step through once, and the output values will be a multiplier 35, where they are multiplied by the amplitude factor in the harmonic Amplitude locking device 33 is stored. The output of the multiplier 35 is in an adder 36 on the contents of the memory 30b, which at this stage has the value 0, and the signal is the input of the memory 30b is supplied again. When the waveform has a second harmonic should contain, the harmonic counter 34 is set to the counting result 2, the required amplitude is set with the aid of the locking device 33, and a generation command is generated again. In the memory 30a are now Step through the Sine Wave Interrogation Points twice, every other Abiragpunkt is omitted so that two periods of the sine wave pass through the same Number of query values are represented as the fundamental wave. As before, everyone will The query value is multiplied by the amplitude factor, the result becomes the value of the corresponding sample taken from the memory 30b is added, and the total value is again supplied to the memory 30b. This procedure is being maintained the total number of samples repeated at each desired harmonic until a single period of the full complex reference waveform has been generated is. As explained below, there is an advantage when the waveform rises is made as small as possible at the zero crossing. You can do this with anyone Bring about a phase shift of 180 ° for harmonics or the selected harmonics. An input signal which the computer 12 sends to a read and write counter used for control 37 feeds, then initiates a process by means of which the waveform from the Taken from memory 30b and shown in FIG. 1 from a waveform memory of the generator 14 is entered for musical tones. The time at which the output process takes place is playing, is determined by a further input signal that the counter 37 by the control device 56 of the generator 14 is supplied. Thus, the memory 30b is deleted so that the next waveform can be generated.
Die Gesamtzeit, die zur Erzeugung einer einzigen Harmonischen aus einer Bezugssinuswelle mit 256 Abfragepunkten benötigt wird, beträgt 256 Mikrosekunden. Eine komplexe Wellenform mit zehn Harmonischen erfordert daher zusätzlich zur Verarbeitungszeit des Rechners 2,56 ms. Ggf. kann man bei der komplexen Wellenform die Anzahl der Abfragepunkte auf 128 begrenzen oder sie auf 512 erhöhen.The total time it took to generate a single harmonic of a reference sine wave with 256 sample points is required is 256 microseconds. Therefore, a complex waveform with ten harmonics requires additional processing time of the computer 2.56 ms. If necessary, the number of Limit query points to 128 or increase them to 512.
Der Wellenformspeicher, in den die Bezugswellenform überführt wird, hat eine kleinere Kapazität als der Speicher 30b, und während der Überführung durch eine Normalisierungseinrichtung 38 wird das Ausgangssignal mit 16 Bits für die Speicherung mit 12 Bits normalisiert. Bei diesem Verfahren werden die digitalen Werte sämtlicher Abfragepunkte der Wellenform um die gleiche Zahl von Bits nach links verschoben, wie es möglich ist, ohne daß bei den größten Werten ein Überlauf stattfindet; das zulässige Ausmaß der Verschiebung wird ermittelt, wenn die Erzeugung der Bezugswellenform abgeschlossen ist. Dieses Verfahren gewährleistet, daß nur die niedrigstwertigen Bits, wenn solche vorhanden sind, von der Speicherung der 12 Bits ausgeschlossen werden.The waveform memory into which the reference waveform is transferred, has a smaller capacity than the memory 30b, and during the transfer through a normalizer 38 becomes the 16-bit output for storage normalized with 12 bits. With this method, the digital values become more all Waveform query points shifted to the left by the same number of bits, how it is possible without overflowing the largest values; the allowable amount of shift is determined when generating the reference waveform is completed. This procedure ensures that only the least significant Bits, if any, are excluded from storing the 12 bits will.
Der Generator 14 für musikalische Töne ist mit weiteren Einzelheiten in Fig. 4 dargestellt. Entsprechend dem Speicher 30b des Wellenformgenerators 13 ist ein 256 x 12 -Bit-Wellenformspeicher 49a vorhanden, dem von dem Speicher 30b aus jeweils eine vollständige komplexe Bezugswellenform zugeführt wird. Der Speicher 49a sowie bis zu 31 ähnliche Speicher 49b bis 49m ermöglichen das Festhalten von 32 verschiedenen Wellenformen. Der Tongenerator 14 dient dazu, unter der Steuernden Wirkung des Rechners 12 jede beliebige gewählte und gespeicherte Wellenform so abzulesen, daß mit der gewünschten relativen Amplitude ein Ton mit der gewünschten Höhe erzeugt wird. Die in Beziehung zu jeder Note stehenden Daten werden mittels eines gesonderten Kanals abgeleitet, so daß die Anzahl der gleichzeitig erzeugbaren Töne nur durch die Anzahl der vorhandenen Kanäle begrenzt wird, die erheblich größer sein kann als die Anzahl der Speicher.The musical tone generator 14 is more detailed shown in FIG. Corresponding to the memory 30b of the waveform generator 13 there is a 256 x 12-bit waveform memory 49a, which is shared by memory 30b a complete complex reference waveform is supplied from each. The memory 49a and up to 31 similar memories 49b to 49m enable 32 different waveforms. The tone generator 14 is used to under the control Effect of the calculator 12 to read any selected and stored waveform in such a way that that with the desired relative amplitude produces a tone of the desired pitch will. The data related to each note are recorded by means of a separate Channel derived, so that the number of tones that can be generated simultaneously only is limited by the number of channels present, which can be considerably larger can as the number of memories.
Bei dem hier beschriebenen Ausführungsbeispiel sind 40 Kanäle vorhanden, denen mit Hilfe der 32 Wellenformen, die in jedem Augenblick in den Speichern 49a bis 49m enthalten sind, 40 Töne entnommen werden können, die bezüglich ihrer Höhe und Amplitude voneinander unabhängig sind. Die Gruppe von Schaltungselementen des Generators 14, welche diese 40 Kanäle bilden, ist in Fig. 4 in die strichpunktierte Linie 50 eingeschlossen. Jedem Abfragekanal ist eine gesonderte Teilperiode der Periode des Systems zugewiesen; an nachfolgenden Punkten der Schaltung werden die resultierenden Daten in einem einzigen Kanal sequentiell verarbeitet.In the exemplary embodiment described here, there are 40 channels, those with the help of the 32 waveforms stored in the memories 49a up to 49m are included, 40 tones can be extracted with regard to their height and amplitude are independent of each other. The group of circuit elements of the Generator 14, which form these 40 channels, is shown in FIG. 4 in the dash-dotted line Line 50 included. Each interrogation channel has a separate sub-period of the Period assigned to the system; at subsequent points in the circuit, the resulting data is processed sequentially in a single channel.
Zu jedem der 40 Kanäle gehört ein 24-Bit-Tonhöhenzähler 51, dem ein 24-Bit-Tonhöhen-Teilbetragsregister 52 zugeordnet ist, und diese Schaltungselemente bestimmen gemeinsam die gewünschte Frequenz, mit welcher der gewählte Wellenformspeicher 49 abgelesen wird. Die Wahl des abzufragenden Wellenformspeichers und des anzuwendenden Amplitudenfaktors wird bei jedem Kanal durch ein Amplituden- und Wellenformregister 53 geregelt, das mit den Registern 51 und 52 synchronisiert ist. Jedes Register 53 hat eine Kapazität von 26 Bits; hiervon bestimmen 19 Bits die Abfragedaten, zu denen die zu verwendenden Adressen der Wellenformspeicher 49 gehören, während die 7 übrigen Bits eine logarithmische Folge von Amplitudenmaßstabsfaktoren bestimmen. Jedes Register 53 wird durch den Rechner 12 in Abhängigkeit von einem Ausgangssignal einer Addiereinrichtung 63 über ein gleichartiges Pufferregister 54 geladen. Ein solches Pufferregister wird benötigt, um eine zeitweilige Speicherung beabsichtigter Änderungen des Amplitudenmaßstabsfaktors oder bezüglich der Wahl eines Wellenformspeichers zu ermöglichen, denn es ist wichtig, daß die bebetreffende Wirkung nur dann hervorgerufen wird, wenn die Wellenform am Beginn der Periode am Nulldurchgang oder in seiner iTähe abgefragt wird. Vlenn Änderungen an anderen Punkten herbeige führt werden, können unerwünschte Einschwingvorgänge hervorgerufen werden. Das Auftreten der gewünschten Nulldurchgänge wird automatisch mit Hilfe von in Fig. 4 nicht dargestellten Einrichtungen nachgewiesen, um die Abgabe von Daten aus dem Pufferregister 54 zu steuern. Da eine Verzerrung nur vermieden wird, wenn ein als Änderungspunkt gewählter Abfragepunkt einen kleinen Wert hat, wenn er nicht genau gleich Null ist, ist es erwünscht, den Anstieg der Wellenform nahe dem Nulldurchgarg möglichst klein zu halten. Zu diesem Zweck kann man während der Erzeugung der Bezugswellenform in dem Speicher 30b beim Hinzufügen einer Harmonischen eine Phasenverschiebung um 1800 herbeiführen.Associated with each of the 40 channels is a 24-bit pitch counter 51, the one 24-bit pitch partial register 52 is assigned, and these circuit elements together determine the desired frequency with which the selected waveform memory 49 is read. The choice of waveform memory to query and which one to use The amplitude factor is determined for each channel by an amplitude and waveform register 53, which is synchronized with registers 51 and 52. Every register 53 has a capacity of 26 bits; 19 bits of this determine the query data to which the addresses of the waveform memories 49 to be used belong, while the 7 remaining bits determine a logarithmic sequence of amplitude scale factors. Each register 53 is generated by the computer 12 in response to an output signal an adder 63 is loaded via a buffer register 54 of the same type. A such a buffer register is required to allow temporary storage Changes in the amplitude scale factor or with regard to the choice of waveform memory to allow, because it is important that the effect in question is only produced is when the waveform is at the beginning of the period at the zero crossing or in its near is queried. If changes are brought about in other points undesired transient processes are caused. The appearance of the desired Zero crossings are made automatically with the aid of devices not shown in FIG to control the delivery of data from the buffer register 54. There one Distortion is only avoided if a query point is chosen as a change point has a small value, if it is not exactly zero, it is desirable that the To keep the rise of the waveform near the zero crossing as small as possible. To this This can be done during the generation of the reference waveform in memory 30b Adding a harmonic causes a phase shift of 1800.
Von dem Rechner 12 aus werden Daten dem Amplituden- und Wellenform-Pufferregister 54 und dem Tonhöhen-Steigerungsbetrag-Register 52 über ein 24-Bit-Pufferregister 55 eingegeben. Diese Dateneingabe wird durch den Rechner 12 über eine Steuereinrichtung 56 gesteuert, die über ein 4-Bit-Pufferregister 57 angeschlossen ist. Der Einfachheit halber sind die Verbindungen zwischen der Steuereinrichtung 56 und den Registern 52 und 54 in Fig. 4 nur durch Pfeile mit den Bezeichnungen PIR und AWBR angedeutet. Eine weitere Funktion, die über die Steuereinrichtung 56 bewirkt wird, besteht in der Steuerung der Überführung einer neu gewählten Bezugswellenform aus dem Speicher 30b nach Fig. 3 in einen der Speicher 49a bis 49m. Diese Aufgabe wird durch einen Wellenform-Eingabezähler 58 erfüllt, dessen Ausgangssignal einem Speicheradressenmultiplexer 59 zugeführt wird, um zu bewirken, daß die Bezugswellenformdaten den betreffenden Teilen des Speichers 49 eingegeben werden. Der betreffende Bereich wird durch ein Steuersignal identifiziert, das dem Eingabezähler 58 über eine Puffereinrichtung 58a zugeführt wird.From the computer 12, data becomes the amplitude and waveform buffer register 54 and the pitch increase amount register 52 via a 24-bit buffer register 55 entered. This data entry is made by the computer 12 via a control device 56, which is connected via a 4-bit buffer register 57. Of simplicity sake are the connections between the controller 56 and the registers 52 and 54 in FIG. 4 only indicated by arrows with the designations PIR and AWBR. Another function which is effected via the control device 56 consists in controlling the transfer of a newly selected reference waveform from memory 30b according to FIG. 3 into one of the memories 49a to 49m. This task is carried out by a Waveform input counter 58 is satisfied, the output of which is a memory address multiplexer 59 is supplied to cause the reference waveform data to be applied to the respective Parts of the memory 49 are entered. The area in question is indicated by a Identifies the control signal that is sent to the input counter 58 via a buffer device 58a is supplied.
Um die Wirkungsweise des Generators nach Fig. 4 zu beschreiben, wird zunächst betrachtet, auf welche Weise die jeweils in dem Speicher 49a festgehaltene Wellenform in diesem Stadium bei jeder gewünschten Tonhöhe digital wiedergegeben werden kann. Ein Befehl zum Wählen des Speichers 49a als abzufragender Speicher wird dem Register 53 zusammen mit dem Amplitudenbefehl eingegeben. Die Speicherwählinformation wird von der Amplitudeninformation im Ausgangssignal des Registers 53 getrennt und über einen VerzögerungspuSSer 60a dem Speicheradressenmultiplexer 59 zugeführt. Das Amplitudenregelsignal des Registers 53 wird über einen Verzögerungs puffer 60b einem Puffer 61 zugeführt, um später verwendet zu werden. Nachstehend ist die Folge von Arbeitsschritten beschrieben, durch die dann bei einem einzigen Ausgabekanal die Tonhöhe bestimmt wird.To describe the mode of operation of the generator according to FIG. 4, will first considered in which way the respectively held in the memory 49a Waveform digitally reproduced at this stage at any desired pitch can be. An instruction to select memory 49a as the memory to be queried is input to register 53 along with the amplitude command. The memory selection information is separated from the amplitude information in the output signal of the register 53 and The memory address multiplexer 59 is supplied via a delay bus 60a. The amplitude control signal of the register 53 is via a delay buffer 60b a buffer 61 to be used later. The following is the result described by work steps through which then with a single output channel the pitch is determined.
Es sei angenommen, daß sich der Tonhöhenzähler 51 am Beginn einer Abtastung sämtlicher 256 Abfragepunkte befindet, die eine einzige Periode der in dem Speicher 49a festgehaltenen Wellenform darstellen. Der Zähler 51 ist mit dem Speicheradressenmultiplexer 59 über einen Puffer 62 verbunden, wobei die acht obersten Bits verwendet werden, um den gewünschten Abfragewert zu adressieren und auszugeben. Die durch die acht obersten Bits des Zählers 51 festgehaltene Adresse wird dadurch weitergeschaltet, daß der Inhalt der unteren Stufe des Zählers 51 mit Hilfe des Tonhöhen-Teilbetragsregisters 52 erhöht wird. Während der Teilperiode des Systems mit einer Dauer von etwa 800 ns wird ein Abfragewert abgelesen, der nacheinander für jeden Ausgabekanal zur Verfügung steht, und zwar jeweils einmal innerhalb jeder vollständigen Periode des Systems, deren Länge etwa 32 Mikrosekunden beträgt. Wenn jeder der 256 Abfragewerte nacheinander mit dieser Frequenz abgelesen wird, wird die Wellenform einer einzigen Periode innerhalb von etwa 8,2 ms vollständig abgefragt, und die Höhe des erzeugten Tons entspricht etwa 122 Hz. Dieser Wert wird im folgenden als Grundtonhöhe bezeichnet. Wenn nur jeder zweite Abfragewert mit der gleichen Schrittgeschwindigkeit von einem Abfragewert je Teilperiode entnommen wird, entspricht natürlich die resultierende Tonhöhe dem Zweifachen der Grundtonhöhe: wird lur jeder dritte Wert abgefragt, verdreiftcht sich die Tonhohe, usw. Die Grenze der Gültigkeit des Abfrageverfahrens entspricht nur zwei Abfragewerten je Periode, wenn die Tonhöhe 15,6 kHz entsprechen würde. Dieser Wert stellt eine sehr brauchbare Grenze in Beziehung zum Frequenzbereich des menschlichen Ohrs dar. Bei niedrigeren frequenzen muß die Schrittgeschwindigkeit herabgesetzt werden, so daß z.B. jeder der 256 aufeinander folgenden Abfragewerte nur bei jeder vierten- Teilperiode abgefragt wird und sich eine Tonhöhe von 30,5 Hz ergibt.Assume that the pitch counter 51 is at the beginning of a Sampling of all 256 interrogation points is located, which a single period of the in represent the waveform held in memory 49a. The counter 51 is with the Memory address multiplexer 59 connected via a buffer 62, the eight topmost Bits are used to address and output the desired query value. The address held by the eight uppermost bits of counter 51 is thereby further switched that the content of the lower stage of the counter 51 with the aid of the Pitch sub-amount register 52 is incremented. During the sub-period of the system with a duration of approx. 800 ns a query value is read, one after the other is available for each output channel, once within each complete period of the system, the length of which is approximately 32 microseconds. if each of the 256 samples is read one after the other with this frequency the waveform of a single period is completely interrogated in about 8.2 ms, and the level of the generated tone corresponds to about 122 Hz. This value will be used in the following referred to as the basic pitch. If only everyone second query value taken at the same pace from a query value per sub-period the resulting pitch is of course twice the base pitch: if every third value is queried, the pitch triples, etc. The limit the validity of the query procedure corresponds to only two query values per period, if the pitch was 15.6 kHz. This value represents a very useful one Limit in relation to the frequency range of the human ear. At lower frequencies, the walking pace must be reduced so that, for example, everyone of the 256 consecutive query values are only queried every fourth sub-period and the pitch is 30.5 Hz.
Da die Zeitintervalle die gleiche Länge haben, wird die Schrittgeschwindigkeit durch die Größe des Te ilbe trags bestimmt, der der unteren Stufe des Zählers 51 während jeder Teilperiode zugeführt wird. Während jeder dieser Teilperioden wird der Speicher 49a adressiert und gemäß der in dem Verzögerungspuffer 62 festgehaltenen Adresse abgelesen, die am Beginn der vorausgehenden Teilperiode durch den Tonhöhenzähler 51 angegeben wurde. Gleichzeitig wird der jeweilige Zustand der acht obersten Bits des Tonhöhenzählers 51 in den Puffer 62 überführt, und der Zähler 51 wird durch einen neuen Teilbetrag aus dem Tonhöhen-Teilbetragregister 52 auf den neuesten Stand gebracht. Wenn man das Verfahren betrachtet, bei dem mit den Teilbeträgen gearbeitet wird, ist ersichtlich, daß vorstehend zwar nur die Ableitung ganzahliger Tonhöhenverhältnisse beschrieben worden ist, daß es jedoch auch leicht möglich ist, ein beliebiges nicht ganzzahliges Verhältnis zu erreichen. Anfänglich wird dem Tonhöhen-Teilbetragregister 52 ein Wert des Zählungsteilbetrags eingegeben, der durch den Rechner 12 bestimmt wird. Diese Größe wird zum Inhalt des Tonhöhenzählers 51 addiert, und zwar mit Hilfe einer 24-Bit-Addiereinrichtung 63, deren Ausgangssignal zum Eingang des Zählers 51 zurückgeleitet wird. In dem Zähler 51 repräsentieren die 16 untersten Bits ein vorbestimmtes kumulatives Eingangszählergebnis, dem entsprochen werden muß, bevor die Wellenformspeicheradresse, die durch die acht obersten Bits des Zählers 51 angezeigt wird, zur nächsthöheren Adresse weitergeschaltet werden kann.Since the time intervals are the same length, the walking pace will be determined by the size of the portion of the lower level of the counter 51 is fed during each sub-period. During each of these sub-periods will the memory 49a is addressed and held in accordance with that held in the delay buffer 62 Address read at the beginning of the previous sub-period by the pitch counter 51 was specified. At the same time, the respective status of the eight uppermost bits is displayed of the pitch counter 51 is transferred to the buffer 62, and the counter 51 is through updates a new partial amount from the pitch partial amount register 52 brought. If you look at the procedure in which the partial amounts worked it can be seen that above only the derivation of whole-number pitch ratios has been described, but that it is also easily possible, not any one to achieve integer ratio. Initially, the pitch partial register 52 is inputted a value of the partial count determined by the calculator 12 will. This size is added to the content of the pitch counter 51, with the help a 24-bit adder 63 whose output to the entrance of the counter 51 is returned. In the counter 51 represent the 16 lowest Bits is a predetermined cumulative input count to be met must before the waveform memory address represented by the top eight bits of the counter 51 is displayed, you can switch to the next higher address.
Somit wird ein 16-Bit-Teilbetragspeicher verwendet, um eine sehr feine Unterscheidung bezüglich des Tonhöhenverhältnisses zu ermöglichen. Um die Erläuterung zu vereinfachen, werden jedoch im folgenden nur die numerischen Schritte behandelt, die bei einem 10-Bit-Teilbetragspeicher durchlaufen werden.Thus, a 16-bit partial amount memory is used to store a very fine To enable distinction with regard to the pitch ratio. To the explanation To simplify matters, only the numerical steps are dealt with below, which are run through in a 10-bit partial amount memory.
Eine zyklische Steigerung um 1024 bewirkt, daß eine 10-Bit-Stufe jedesmal gefüllt wird, und daß die Adressenstufe des Tonhöhenzählers zur nächsthöheren Adresse weitergeschaltet wird. Hierbei handelt es sich um die grundsätzliche Frequenzbedingung. Eine zyklische Steigerung um 512 füllt die 10-Bit-Stufe nur nach zwei Perioden, so daß die Schrittschaltgeschwindigkeit und die Tonhöhe halbiert werden. Wenn jetzt die zyklische Steigerung geringfügig unterhalb der Basisfrequenz z.B. auf 992 verringert wird, füllt die erste Steigerung die 10-Bit-Stufe nicht, so daß bei der Adressenstufe keine Weiterschaltung erfolgt. Bei der zweiten Steigerung läuft die 10-Bit-StuSe über, so daß bei der Adressenstufe ein einziger Schaltschritt durchgeführt wird und die untere Stufe teilweise nachgefüllt wird. Bei jeder nachfolgenden Steigerung spielt sich ein Schaltschritt unter verringerter Nachfüllung ab, bis die Anzahl der Steigerungsbeträge dem Ausdruck 1024/(1024 - 992) = 32 entspricht, wobei ein Schaltschritt durchgeführt wird, jedoch keine Nachfüllung erfolgt.A cyclical increase of 1024 causes a 10-bit step each time is filled, and that the address level of the pitch counter to the next higher address is advanced. This is the basic frequency condition. A cyclical increase of 512 only fills the 10-bit stage after two periods, so that the stepping speed and the pitch are halved. If now the cyclical increase is slightly below the base frequency, e.g. reduced to 992 the first increment does not fill the 10-bit stage, so at the address stage no forwarding takes place. The 10-bit stage runs on the second increase over, so that a single switching step is carried out at the address stage and the lower stage is partially refilled. With every subsequent increase a switching step takes place with reduced refilling until the number of the increments corresponds to the expression 1024 / (1024 - 992) = 32, where a Switching step is carried out, but no refilling takes place.
Dann wiederholt sich der Ausgangszustand, und bei dem dreiunddreißigsten Steigerungsbetrag spielt sich kein Schaltschritt ab. Somit haben 31 Schritte bei der Adressenstufe zweiunddreißig Teilbeträge erfordert. Die mittlere Abfragegeschwindigkeit, d.h. die Anzahl der Adressenstufen und Teilbeträge, ist dann gleich dem 31/32-ftchen dcr Grundfrequenz, und die resultierende Tonfrequenz wird entsprechend um 1/32 x 122, d.h. um etwas weniger als 4 tdz verringert. Die Benutzung eines 10-Bit-Teilbetragspeichers ermöglicht eine Frequenzauflösung von 1/1024, die etwa 0,12 Hz oder 1/60 eines Halbtons bei der Grundtonhöhe von 122 Hz entspricht. Daher ist die mit dem 1 6-Bit-Speicher des Zählers 51 erzielbare Auflösung sehr hoch. Programmierte Veränderungen des Teilbetrags können dazu dienen, einen Vibrato-Effekt hervorzurufen oder eine regellose Veränderung der Tonhöhe herbeizuführen, wie sie bei einer Pfeifenorgel anzutreffen sein kann.Then the initial state repeats itself, and at the thirty-third There is no incremental increment. So have 31 steps at the address level requires thirty-two partial amounts. The average query speed, i.e. the number of address levels and partial amounts is then equal to 31/32 feet the fundamental frequency, and the resulting tone frequency is increased accordingly by 1/32 x 122, i.e. reduced by a little less than 4 tdz. The use of a 10-bit partial amount memory allows a frequency resolution of 1/1024, which is about 0.12 Hz or 1/60 of a semitone at the fundamental pitch of 122 Hz. Hence the one with the 1 6-bit memory of the counter 51 achievable resolution is very high. Programmed changes to the partial amount can be used to create a vibrato effect or a random change to bring about the pitch, as it can be found in a pipe organ.
Ein Merkmal des vorstehend beschriebenen Verfahrens zum schrittweisen Abfragen besteht darin, daß die Höhe des erzeugten Tons durch die mittlere Abfragefrequenz bestimmt wird. Die Abfragefrequenz ist nur bei Harmonischen und Subharmonischen der Grundtonhöhe gleichmäßig, und bei allen übrigen Werten muß in dem Zeitintervall zwischen einander bechbarten Abfrageadressen eine periodische Unregelmäßigkeit erscheinen. Bei dem hier behandelten Beispiel führten der erste und der 33. Teilbetrag nicht zu einem weiter schalten der Abfrageadresse, und wenn sich der Anstieg der Bezugswellenform an diesen Punkten schnell ändern würde, würden die nächsten Schritte zu ungewöhnlich großen Veränderungen des Abfragewertes führen. Bei dieser Unregelmäßigkeit handelt es sich um eine Form eines Digitallsherfehlrs bei der Abfrageadresse, der immer dann auftritt, wenn dem Tonhöhenzähler 51 ein Teilbetrag zugeführt wird, der weder ein Vielfaches noch ein ganzzahliger Teil der Speicherkapazität für Teilbeträge ist. Es wurde gezeigt, daß jeder Adressenteilbetrag in Abhängigkeit davon auf-tritt, daß der Speicher für die Teilbeträge genau gefüllt wird, und zwar bei der Grundtonhöhe und ihren Harmonischen. In den meisten Fällen wird im Speicher für die Teilbeträge ein bemerkbares restliches Zählergebnis vorhanden sein, so daß man sagen kann, daß die wahre Adresse zwischen der angezeigten Adresse und der als nächste verfügbaren liegt. Bei der beschriebenen Anordnung, die schrittweise arbeitet, wurde während einer Teilperiode nur die angezeigte Adresse gelesen, doch ist die Arbeitsgeschwindigkeit derart, d&ß während der gleichen Teilperiode auch die nächste Adresse gelesen werden kann.A feature of the method described above for stepwise Interrogation consists in that the height of the generated tone by the mean interrogation frequency is determined. The query frequency is only for harmonics and subharmonics the basic pitch evenly, and for all other values must be in the time interval a periodic irregularity appear between mutually adjacent query addresses. In the example dealt with here, the first and 33rd installments did not result to a further switch the query address, and if there is a rise in the reference waveform Would change quickly at these points, the next steps would be too unusual lead to major changes in the query value. This irregularity acts it is some form of a digital query address error that is always occurs when the pitch counter 51 is supplied with a partial amount which is neither a multiple or an integer part of the storage capacity for partial amounts is. It has been shown that each address partial amount occurs depending on that the memory for the partial amounts is filled exactly, namely at the basic pitch and their harmonics. In most cases it will be in memory for the partial amounts a noticeable remaining Count result so that you can say that the true address is between the displayed address and the as next available is. With the described arrangement, which works step by step, only the indicated address was read during a partial period, but the Working speed such that d & ß during the same sub-period also the next address can be read.
Hierdurch wird es möglich, ein lineares Interpolationsverfahren anzuwenden, das einen gewichteten Wert zwischen den beiden Abfragewerten liefert, die durch diese Adressen repräsentiert werden, so daß der Digitalisierungsfehler im wesentlichen beseitigt wird. Die Interpolation wird durch eine Einrichtung 65 durchgeführt, der das Ausgangssignal des Speichers 49 zugeführt wird. Auf die Wirkungsweise dieser Anordnung wird weiter unten eingegangen.This makes it possible to use a linear interpolation method, that provides a weighted value between the two query values obtained by these addresses are represented, so that the digitization error is essentially is eliminated. The interpolation is carried out by a device 65, the the output signal of the memory 49 is supplied. On how this works Arrangement is discussed below.
Bei der vorstehenden Beschreibung ist angenommen, daß die in dem Speicher 49a festgehaltene Wellenform statisch ist.In the above description, it is assumed that the in the memory 49a pinned waveform is static.
In der Praxis wird dies häufig bei Zeitspannen zutreffen, die zwar tatsächlich kurz sein können, die jedoch die Erzeugung einer großen Anzahl von Perioden der Wellenform repräsentieren. Ein wichtiges Merkmal der Erfindung besteht jedoch darin, daß es in kurzen Zeitabständen möglich ist, die gespeicherte Wellenform mit Hilfe neuer Daten aus dem Wellenformspeicher 30 nach Fig. 3 zu modifizieren. In Verbindung mit dem Weiterschalten des Tonhöhenzählers 51 wurde festgestellt, daß ähnliche Zähler bei jedem von 40 Kanälen sequentiell arbeiten, und zwar während einer Teilperiode von 800 ns innerhalb einer Periode von 32 Mikrosekunden. Diese Zykluszeit läflt somit keine freien Teilperioden zum Laden der Wellenform zu. Jedoch wird es dem Zähler 58 ermöglicht, dem Speicher 49 während jeder Teilperiode, während welcher die gespeicherte Wellenform die Null-Linie durchläuft, neue Daten einzugeben.In practice, this will often apply to periods of time that can actually be short, but generating a large number of periods of the waveform. However, there is an important feature of the invention in that it is possible in short time intervals to use the stored waveform Help to modify new data from waveform memory 30 of FIG. In Connection with the indexing of the pitch counter 51 it was found that similar counters operate sequentially on each of 40 channels during a partial period of 800 ns within a period of 32 microseconds. These Cycle time therefore does not allow any free partial periods for loading the waveform. However the counter 58 is enabled to the memory 49 during each sub-period during which the stored waveform crosses the zero line to enter new data.
Der Einfachheit halbeyQurde die Arbeitsweise des Generators 14 für musikalische Töne bezüglich der Benutzung eines einzigen Lesekanals beschrieben. Natürlich kann man jede beliebige Anzahl der 40 Kanäle, die durch die Register 51, 52, 53 und 54 gebildet werden, unabhängig voneinander betätigen, um gleichzeitig eine entsprechende Anzahl von Tönen zu erzeugen. Diese Töne können auf den Wellenformen basieren, die in einem oder mehreren der Speicher 49a bis 49m festgehalten werden, denn es besteht keine feste Beziehung zwischen bestimmten Kanälen und den Speichern, die durch sie adressiert werden können. Da die Kanäle nacheinander betatigt werden, ist anfänglich ein Intervall von 32 Mikrosekunden zwischen den Ausgangssignalen des ersten und des vierzigsten Kanals vorhanden, doch werden die Ausgangssignale sämtlicher Kanäle einander später überlagert.For the sake of simplicity, the operation of the generator 14 has been described for musical tones described in relation to the use of a single reading channel. Of course you can use any number of the 40 channels that are defined by registers 51, 52, 53 and 54 are formed to operate independently at the same time generate a corresponding number of tones. These tones can be based on the waveforms based, which are held in one or more of the memories 49a to 49m, because there is no fixed relationship between certain channels and the memories, that can be addressed by them. Since the channels are operated one after the other, is initially a 32 microsecond interval between output signals of the first and fortieth channels are present, but the output signals become all channels later superimposed on each other.
Die einzelnen Wellenform-Abfragewerte, die jedem der Kanäle während einer einzigen Periode des Tonhöhenzählers 51 entnommen werden, bilden somit schließlich einen einzigen Punkt auf einer zusammengesetzten Ausgangswellenform, doch muß zunächst für jeden einzelnen Wert der Amplitudenmaßstab festgelegt werden. Die Abfragewerte werden den Speichern 49 nacheinander durch einen noch zu beschreibenden Interpolator 65 entnommen und einer Verschiebungseinrichtung 72 zugeführt.The individual waveform samples given to each of the channels during taken from a single period of the pitch counter 51 thus ultimately form a single point on a composite output waveform, but must first the amplitude scale can be set for each individual value. The query values are successively added to the memories 49 by an interpolator to be described later 65 removed and fed to a displacement device 72.
Die Festlegung des Maßstabs erfolgt in einem Amplitudenvervielfacher, der eine Stufe der Verschiebungseinrichtung 72 nach Fig. 4 bildet, welcher Amplituden-Vervielfachungsdaten von dem Register 53 aus über Pufferstufen 60b und 61 zugeführt werden. Der Regelbereich erstreckt sich über 127 logarithmische Amplitudenschritte, und die dem Register 53 entnommenen Daten bestimmen den Schritt, welcher dem Abfragepunkt zugewiesen wird, welcher in einem bestimmten Zeitpunkt einem bestimmten Kanal entnommen wird. Jenseits der Verschiebungseinrichtung 72 werden die einzelnen Amplitudenschritte für sämtliche Kanäle, die sich während der betreffenden Periode in Betrieb befanden, während jeder Periode des Systems in einer Addier- und Sammeleinrichtung 73 gesammelt, um einen zusammengesetzten Ausgangswert für diese Periode darzustellen.The definition of the scale is done in an amplitude multiplier, which forms a stage of the shifter 72 of FIG. 4, which amplitude multiplication data are supplied from the register 53 via buffer stages 60b and 61. The control range extends over 127 logarithmic amplitude steps, and that of the register 53 extracted data determine the step assigned to the query point which is taken from a certain channel at a certain point in time. Beyond the displacement device 72, the individual amplitude steps for all channels that were in operation during the period in question, collected in an adding and collecting device 73 during each period of the system, to present a composite output value for that period.
Dieser Amplitudenwert muß aus seiner digitalen Form in eine analoge Form überführt werden, um dem Niederfrequenzteil zugeführt werden zu können; um eine wirtschaftliche Umwandlung zu ermöglichen, muß devEigitale Vlert in eine normierte Form gebracht werden. Dies hat seinen Grund darin, daß eine digitale Speicherung zwar nur relativ geringe Kosten verursacht, daß jedoch die Kosten eines Digital/Analog-liandlers mit zunehmender Leistung sehr steil ansteigen. Ein 12-Bit-Wandler dürfte einem vertretbaren Grenzwert entsprechen, und die zuzuführenden Eingangssignale müssen dieser Kapazität angepaßt sein. Die Addier- und Sammeleinrichtung 73 kann 24 Bits verarbeiten, und es ist eine Normierung erforderlich, um die Datenverluste bei der Überführung in den Wandler möglichst gering zu halten. Bei dem angewendeten Verfahren wird eine Linksverschiebung jedes einzelnen Amplitudenschritts durch die Verschiebungseinrichtung 72 vor dem Eingeben in die Addier-und Sammeleinrichtung 73 herbeigeführt. Bei der Einrichtung 73 muß ein Überlaufen verhindert werden, und eine Möglichkeit hierfür besteht darin, das Ausmaß der Linksverschiebung so zu begrenzen, daß niemals ein Überlaufen eintreten kann, doch ist dies im Hinblick auf die Daten unwirtschaftlich und führt zu einer Erhöhung des relativen Rauschpegels. Es wird vorgezogen, dafür zu sorgen, daß ein Überlaufen bei der Addierstufe der Einrichtung 73 nachgewiesen wird, wenn dem angesammelten Gesamtwert jeweils ein neuer Teilbetrag hinzugefügt wird. Hierbei ist es möglich, jeweils mit der maximalen Linksverschiebung zu arbeiten, bei der gerade noch kein Überlaufen verursacht wird. Der Verschiebungsbefehl wird der Verschiebungsstufe der Einrichtung 72 über eine Normierungs-und Steuereinrichtung 74 zugeführt, die außerdem an einen Verstärkungsregler 75 angeschlossen ist. Das Auftreten eines Überlaufens bei der Addier- und Sammeleinrichtung 73 bewirkt, daß ein Signal der Horiereinrichtung 74 zugeführt wird, damit der Überlaufzustand durch eine Rechtsverschiebung vor der Eingabe eines weiteren Teilbetrags beseitigt werden kann. Ist der Sammelvorgang abgeschlossen, wird der effektive Verschiebungswert durch den Verstärkungsregler 75 festgehalten.This amplitude value must be converted from its digital form into an analog one Form are converted in order to be supplied to the low frequency part can; around In order to enable an economic conversion, the digital value must be converted into a standardized one Be brought into shape. The reason for this is that digital storage Although it only causes relatively low costs, it does, however, increase the costs of a digital / analog converter rise very steeply with increasing power. A 12-bit converter should be a reasonable one Limit value, and the input signals to be fed must have this capacity be adjusted. The adding and collecting device 73 can process 24 bits, and normalization is required to avoid data loss when transferring to to keep the converter as small as possible. In the method used, a Left shift of each individual amplitude step by the shifting device 72 brought about before the input into the adding and collecting device 73. In the Means 73 must be prevented from overflowing, and a way to do so is to limit the amount of left shift so that never a Overflow can occur, but it is uneconomical in terms of data and leads to an increase in the relative noise level. It is preferred for that to ensure that an overflow in the adder of the device 73 is detected is added each time a new partial amount is added to the accumulated total will. It is possible to work with the maximum left shift, at which no overflow is just caused. The move command will the shift stage of the device 72 via a normalization and control device 74, which is also connected to a gain controller 75. That Occurrence of a Overflow at the adding and collecting device 73 causes a signal to be fed to the leveling device 74 to indicate the overflow condition eliminated by shifting to the right before entering another partial amount can be. When the collection process is completed, the effective shift value becomes held by the gain controller 75.
Wie in Verbindung mit der Einleitung von Veränderungen der Amplituden- und Wellenform-Speicherwähldaten in den Registern 53 und 54 erläutert, dürfen Veränderungen der Verstärkungs und 1Tormierungsdaten nur herbeigeführt werden, wenn die von der Änderung betroffene Größe nahezu oder tatsächlich den Wert Null hat. Der Rechnerbefehl wird daher in einem Puffer 76 festgehalten und nur dann weitergeleitet, wenn den Normierungs- und Verstärkungsregeleinrichtungen 74 und 75 ein Änderungszulassungssignal zugeführt wird. Nach der Normierung wird der Addier- und Sammeleinrichtung 73 der Gesamtwert über einen 12-Bit-Puffer 77 entnommen, um einem 12-Bit-Digital/Analog-Wandler 78 zugeführt zu werden. Das analoge Ausgangssignal des Wandlers 78 hat infolge der Normierung einen falschen Amplitudenmaßstab, doch wird es durch einen multiplizierenden Digital/Analog-Wandler 79 um einen genau entsprechenden Betrag gedämpft. Zu diesem Zweck wird ein digitaler Verstärkungskompensationsfaktor, welcher der Vers tärkungs regele inrichtung 75 entnommen wird, dem Multipliziereingang des Wandlers 79 zugeführt. Das analoge Ausgangssignal des Wandlers 79 bestimmt einen Spannungspegel, der die Amplitude der gewünschten zusammengesetzten Wellenform während der Dauer eines Instrumentenzyklus darstellt. Wenn nur die Grundfrequenz des Abfragesystems vorhanden ist, wird dieser Pegel in Abständen von 32 Mikrosekunden schrittweise jeweils um einen kleinen Betragerhöht, so daß eine vollständige Periode der Ausgangsfrequenz in 256 Schritten durchlaufen wird. Bei einer Ausgangsfrequenz, die unter der Grundfrequenz liegt, ist die Anzahl der je Periode durchlaufenen Schritte höher als 256, und bei sehr hohen Frequenzen ist diese Zahl erheblich niedriger. Nach einer Verstärkung durch einen Verstärker 81 wird die zusammengesetzte Wellenform einem Lautsprecher 82 zugeführt.As in connection with the initiation of changes in the amplitude and waveform memory selection data in registers 53 and 54 are allowed to change of the gain and normalization data are only brought about if the The change in the affected size is almost or actually zero. The computer command is therefore held in a buffer 76 and only forwarded when the Normalization and gain control devices 74 and 75, a change permission signal is fed. After the normalization, the adding and collecting device 73 becomes the Total value taken via a 12-bit buffer 77 to a 12-bit digital / analog converter 78 to be fed. The analog output of the converter 78 has due to the Normalizing a wrong amplitude measure, but it gets multiplied by a multiplying one Digital / analog converter 79 attenuated by an exactly corresponding amount. To this The purpose is a digital gain compensation factor, which is the gain control device 75 is taken, fed to the multiplier input of converter 79. The analog output signal of the converter 79 determines a voltage level that the Amplitude of the desired composite waveform over the duration of an instrument cycle represents. If only the basic frequency of the interrogation system is available, this will be Level increased step-by-step by a small amount at intervals of 32 microseconds, so that a complete period of the output frequency is run through in 256 steps will. If the output frequency is below the base frequency, the number is the per period steps taken higher than 256, and at very high frequencies this number is considerably lower. After a reinforcement by an amplifier 81 is supplied with the composite waveform to a loudspeaker 82.
Die räumliche Verteilung der Schallquellen bei einer Pfeifenorgel läßt sich mit Hilfe eines einzigen Lautsprechers oder mehrerer Lautsprecher, denen jeweils das gleiche Signal zugeführt wird, nicht realistisch nachahmen. Der musikalische Eindruck läßt sich erheblich verbessern, wenn man zwei oder mehr unabhängige Tonfrequenzkanäie verwendet; bei der beschriebenen Anordnung ist es ohne weiteres möglich, den Daten, die jedem Amplituden- und Wellenformregister 53 zugeführt werden, einen Befehl hinzuzufügen, der angibt, welchem Kanal das Ausgangssignal zugeführt werden soll. Alternativ kann man einen Teil der Kapazität des Tongenerators 14 jedem Tonfrequenzkanal zuweisen. Bei den Ausgangsstufen, die in Fig. 4 durch strichpunktierte Linien angedeutet sind, und die man ggf. vorsehen könnte, würden die bezüglich des ersten Kanals beschriebenen Arbeitsschritte bei einem zweiten Kanal wieder holt. Hierbei wird in einem Puffer 86 ein Normierungsbefehl für die Normierungseinrichtung 74 und eine weitere Verstärkungsregeleinrichtung 85 festgehalten. Nach der Normierung wird das Gesamtsignal der Addier- und Sammeleinrichtung 73 über einen Puffer 87 einem weiteren Digital/Analog-Wandler 88 zugeführt. Das analoge Ausgangssignal des Wandlers 88 wird durch einen multiplizierenden Digital/Analog-Wandler 89 gedämpft, dem der benötigte Dämpfungsfaktor durch die Verstärkungsregeleinrichtung 85 zugeführt wird. Das Ausgangssignal des Wandlers 89 wird durch einen Verstärker 91 verstärkt und durch einen zweiten Lautsprecher 92 wiedergegeben.The spatial distribution of the sound sources in a pipe organ can be done with the help of a single speaker or multiple speakers the same signal is fed in each time, cannot realistically imitate it. The musical one The impression can be improved considerably if one has two or more independent audio frequency channels used; With the arrangement described, it is easily possible to transfer the data, supplied to each amplitude and waveform register 53 to add an instruction, which indicates which channel the output signal should be fed to. Alternatively can assign a part of the capacity of the tone generator 14 to each audio frequency channel. In the case of the output stages, which are indicated in Fig. 4 by dash-dotted lines, and which one could possibly provide would be those described with regard to the first channel Repeat the work steps for a second channel. This is done in a buffer 86 a normalization command for the normalization device 74 and a further gain control device 85 held. After the normalization, the total signal of the adding and collecting device 73 is fed to a further digital / analog converter 88 via a buffer 87. That The analog output of the converter 88 is processed by a multiplying digital-to-analog converter 89 damped, to which the required damping factor by the gain control device 85 is fed. The output of the converter 89 is passed through an amplifier 91 amplified and reproduced through a second loudspeaker 92.
Die Stufen 85 - 92 ähneln den Stufen 75 - 82. Eine nicht dargestellte Kanalschalteinrichtung ermöglicht es, das Ausgangssignal der Einrichtung 73 dem zugehörigen Kanal über den Puffer 77 oder den Puffer 87 zuzuführen.The stages 85-92 are similar to the stages 75-82. One not shown Channel switching device allows the output signal of the device 73 to the associated channel via the buffer 77 or the buffer 87 to be supplied.
Bei einer nicht dargestellten anderen Ausführungsform ist es möglich, die Verwendung von zwei Digital/Analog-Umwandlungsstufen zu vermeiden, indem man einen einzigen Kanal benutzt, der an die Addier- und Sammeleinrichtung 73 über die Einrichtungen 77 und 78 angeschlossen ist und zu dem multiplizierenden Digital/Analog-Wandler 79 führt, dessen Ausgangssignal dann auf die gewünschte Anzahl von Tonfrequenzkanälen verteilt wird, die jeweils über eine Abfrage- und Halteschaltung angeschlossen sind. Hierbei dient eine Kanalumschalteinrichtung dazu, jeweils einen gewählten Kreis auf den Abfragebetrieb umzuschalten, wenn dem zugehörigen Tonfrequenzsignal Daten zugeführt werden sollen.In another embodiment, not shown, it is possible avoid the use of two stages of digital to analog conversion by one uses a single channel connected to the adding and collecting device 73 via the Devices 77 and 78 is connected and to the multiplying digital / analog converter 79 leads, the output signal of which is then sent to the desired number of audio frequency channels is distributed, which are each connected via a query and hold circuit. A channel switching device is used to switch to a selected circuit to switch to query mode if the associated audio frequency signal contains data are to be supplied.
Die Erzeugung der Ausgangswellenform wurde im einzelnen beschrieben, um deutlich zu machen, daß sich innerhalb des hörbaren Bereichs jede beliebige Tonhöhe erzeugen läßt, und daß sich die harmonische Struktur ohne Rücksicht auf die Tonhöhe in weiten Grenzen verändern läßt. Ferner ist es erforderlich, die Einschwingeffekte zu berücksichtigen, durch welche sich die verschiedenen Instrumente für den Hörer voneinander unterscheiden. Die Geschwindigkeit des Amplitudenanstiegs bzw. die Einschwingzeit am Beginn des Tönens einer Orgelpfeife und die Geschwindigkeit des Abklingens beim Wegfall der Erregung stellen wichtige Merkmale sowohl von Orgelpfeifen als auch von anderen nachzuahmenden Instrumenten dar. Es ist ersichtlich, daß die beschriebenen Einrichtungen zum Regeln der Amplitude sämtliche Erfordernisse bezüglich der Durchführung einer beliebigen programmierten Veränderung der Amplitudenhüllkurve erfüllen, die erforderlich ist, um bestimmte Einschwing-, Abkling- oder Tremolo-Effekte zu erzielen. Auf ähnliche Weise läßt sich ein Vibrato-Effekt innerhalb jeder erforderlichen Frequenzveränderung leicht erreichen, indem man die Schaltgeschwindigkeit des Tonhöhenzählers 41 entsprechend verändert. Ein weiteres Merkmal von Pfeifenorgeln besteht im Auftreten eines anfänglichen Einschwingvorgangs, der als "chiff" bezeichnet wird. Hierbei handelt es sich um einen kurzen Energieimpulse bei einer bestimmten harmonischen Frequenz, der sich während des Aufbaus des Grundtons und des allgemeinen harmonischen Musters einer Orgelpfeife bemerkbar macht. Ferner ist es möglich, andere Einschwingvorgänge zu reproduzieren, die für Orgelpfeifen, gezupfte Saiten und andere Spielweisen kennzeichnend sind.The generation of the output waveform has been described in detail, to make it clear that there is any pitch within the audible range and that the harmonic structure can be produced regardless of the pitch can be changed within wide limits. It is also necessary to avoid the transient effects to take into account by which the various instruments are available to the listener differ from each other. The speed of the increase in amplitude or the settling time at the beginning of the sound of an organ pipe and the speed of its decay when Cessation of arousal represent important features of both organ pipes as well from other instruments to be imitated. It can be seen that the described Means for regulating the amplitude of all implementation requirements any programmed change in the amplitude envelope that is required to achieve certain attack, decay, or tremolo effects. Similarly, a vibrato effect can be created within any frequency change required easily achieved by changing the switching speed of the pitch counter 41 accordingly changes. Another characteristic of pipe organs is the appearance of an initial Transient process called "chiff". Here acts it is a short energy pulse at a certain harmonic frequency, which changes during the building of the fundamental and the general harmonic pattern an organ pipe. It is also possible to use other transient processes to reproduce those characteristic of organ pipes, plucked strings, and other playing styles are.
Wie erwähnt, ist es erforderlich, musikalische Töne zu erzeugen, die den verschiedenen Tasten einer Tastatur entsprechen und die richtige harmonische Struktur aufweisen.As mentioned, it is necessary to generate musical tones that correspond to the different keys of a keyboard and the correct harmonic Have structure.
Um ein Verfahren zu erläutern, mittels dessen dies gemäß der Erfindung erreicht wird, wurde der Aufbau und die Wirkungsweise einer Orgel beschrieben, bei welcher jeweils eine neue Wellenform erzeugt wird, sobald eine andere Taste betätigt wird. In der Praxis kann man Vorteil aus der Tatsache ziehen, daß bei einem bestimmten Register die Veränderungen der harmonischen Struktur längs der Tastatur zügig fortschreiten. Das nachstehend beschriebene Verfahren, bei dem mit einer linearen Interpolation zwischen festen Punkten gearbeitet wird, liefert sehr zufriedenstellende Ergebnisse, wobei man mit einer kürzeren Rechenzeit auskommt.To explain a method by means of which this according to the invention is achieved, the structure and mode of operation of an organ was described at which each time a new waveform is generated as soon as another key is pressed will. In practice one can take advantage of the fact that with a certain Register the changes in the harmonic structure along the keyboard. The procedure described below, in which with a linear interpolation working between fixed points gives very satisfactory results, whereby one gets by with a shorter computing time.
Nachdem das gewünschte Register gewählt worden ist, werden in der beschriebenen Weise Wellenformen synthetisiert, die bei dem betreffenden Register genau einer bestimmten Anzahl von Tasten jeder Tastatur entsprechen. Bei einem einfachen Beispiel könnte man vier C-Noten in Oktavenabständen für jedes Manual und eine einzige C-Note für die Pedaltastatur wählen.After the desired register has been selected, the described way waveforms synthesized, which are at the relevant register correspond exactly to a certain number of keys on each keyboard. With a simple one For example, you could have four octave-spaced C notes for each manual and a single one Select C-Note for the pedal keyboard.
Diese neun Wellenformen werden in den Wellenformspeichern 49 unverändert festgehalten, bis ein anderes Register gewählt wird. Wenn dies geschieht, werden die betreffenden Wellenformen durch Wellenformen ersetzt, die erneut erzeugt werden und dem C bei dem neu gewählten Register entsprechen.These nine waveforms are unchanged in the waveform memories 49 held until another register is selected. When this happens, be replace those waveforms with waveforms that are regenerated and correspond to the C on the newly selected register.
Soll eine C-Note gespielt werden, wird die Wellenform dem betreffenden Speicher unter Anwendunn- des beschriebenen Abfrageverfahrens direkt entnommen. Liegt jedoch der gewünschte Ton zwischen zwei der gespeicherten C-Töne, werden beide C-Töne ausgelesen, doch wird für jedes Paar von Abfragewerten ein Zwischenwert abgeleitet, der je nach der Lage des Tons in Richtung auf den oberen oder den unteren Wert gewichtet wird. Dieser Zwischenwert entspricht einer weitgehenden Annäherung an den Abfragewert, den man bei einer Wellenform erhalten haben würde, die für die betreffende Note spezifisch ist, und er wird zur akustischen Wiedergabe in der anhand von Fig. 4 beschriebenen Weise verarbeitet. Der Zwischenwert wird in der Interpolationseinrichtung 65 gewonnen, die zwischen dem Ausgang der Wellenformspeicher 49 und der Verschiebungseinrichtung 72 liegt.If a C note is to be played, the waveform becomes the concerned Memory taken directly using the query procedure described. However, if the desired tone is between two of the stored C-tones, both will be C-tones read out, but an intermediate value is derived for each pair of query values, which is weighted towards the upper or lower value depending on the position of the tone will. This intermediate value corresponds to a large approximation of the query value, that one would have received with a waveform that was specific to the note in question is specific, and it is used for acoustic reproduction in the with reference to FIG processed in the manner described. The intermediate value is in the interpolation device 65 obtained between the output of the waveform memory 49 and the shifter 72 lies.
lTunmehr ist ersichtlich, daß die Interpolationseinrichtung 65 zwei Aufgaben erfüllt. Erstens kann ein Zwischenwert zwischen den Abfragewerten abgeleitet werden, die in einem einzigen Wellenformspeicher zwei benachbarten Adressen entnommen werden, wenn die gedachte Adresse zwischen diesen Adressen liegt. Zweitens ist es gemäß dem vorstehenden Absatz möglich, einen Zwischenwert zwischen den Abfragewerten abzuleiten, die entsprechenden Adressen in zwei Wellenformspeichern entnommen werden, wenn die gewünschte Wellenform in Beziehung zu jeder der beiden gespeicherten Wellenformen steht.It can now be seen that the interpolator 65 has two Tasks fulfilled. First, an intermediate value can be derived between the query values taken from two adjacent addresses in a single waveform memory if the imaginary address lies between these addresses. Second is it possible according to the previous paragraph, an intermediate value between the query values derive, the corresponding addresses are taken from two waveform memories, when the desired waveform is related to each of the two stored waveforms stands.
Fig. 6 zeigt ein Blockschaltbild der Einrichtung 65, deren Daten- und Steuereingänge aus Fig. 4 ersichtlich sind. Wie erwähnt, werden während jedes Intervalls von 800 Mikrosekunden Werte für einen einzigen Kanal der Adresse entnommen, die durch den Tonhöhenzähler 51 angezeigt wird, sowie der nächsthöheren Adresse. Es ist ein Interpolationsspeicher 66 mit zwei Speichern 66A und 66B vorhanden, denen die beiden Abfragewerte aus dem Wellenformspeicher 49 zugeführt werden.Fig. 6 shows a block diagram of the device 65, whose data and control inputs from FIG. 4 can be seen. As mentioned, during each Values taken from the address for a single channel at an interval of 800 microseconds, indicated by the pitch counter 51 and the next higher address. There is an interpolation memory 66 with two memories 66A and 66B, which the two sample values are fed from the waveform memory 49.
Die Lage jedes Abfragewertes in dem Speicher 66 wird durch ein Signal des Wellenformregisters 53 bestimmt, das über den Ausgangspuffer 60a und einen weiteren Verzögerungspuffer 64 zugeführt wird. Die Daten werden auf die Speicher 66A und 66B so aufgeteilt, daß der Abfragewert der unteren der beiden Adressen in dem Speicher 66A und der Abfragewert der höheren Adresse in dem Speicher 66B festgehalten wird.The location of each sample in the memory 66 is indicated by a signal of the waveform register 53 determined via the Output buffer 60a and a further delay buffer 64 is supplied. The data will be on the memories 66A and 66B are divided so that the sample value of the lower of the two Addresses in memory 66A and the sample of the higher address in memory 66B is held.
Um den gespeicherten Werten die richtigen Gewichtungsfaktoren zuzuweisen, wird der erste Wert aus dem Speicher 66A in eine Multipliziereinrichtung 67A überführt, während der zweite Wert aus dem Speicher 66B in eine Multipliziereinrichtung 67B überführt wird. Die vier obersten Bits aus dem Teilbetragspeicher des Tonhöhenzählers 51 werden der Einrichtung 67A über einen Verzögerungspuffer 68 eingegeben und von sechzehn abgezogen; das Ergebnis wird durch 16 geteilt und mit dem ersten Abfragewert multipliziert. Entsprechend werden die gleichen vier Bits der Einichtung 67B eingegeben und mit dem zweiten Abfragewert multipliziert; dann wird das Ergebnis durch 16 geteilt. Die Ausgangssignale der Einrichtungen 67A und 67B werden in einer Addier-und Sammeleinrichtung 69 summiert, so daß man den gewünschten Zwischenwert erhält. Soll eine Wellenforminterpolation durchgeführt werden, wird dieser Wert weiter in einer Addiereinrichtung mit einem Gewichtungsfaktor p multipliziert, der durch den Rechner 12 über das Register 53 abgegeben wird, und das Produkt wird in der Addier- und Sammeleinrichtung 71 festgehalten. Das gesamte Verfahren zum Gewinnen eines Zwischenwertes wird dann für die beiden Abfragewerte aus dem zugehörigen Kanal wiederholt, doch wird dieser Zwischenwert in der Einrichtung 70 mit dem Gewichtungsfaktor (16 - p) multipliziert. Das Produkt wird zu dem in der Einrichtung 71 festgehaltenen Wert addiert, und die Summe wird durch die Einrichtung 65 ausgegeben. Es ist natürlich ohne Bedeutung, daß der Interpolationsvorgang in manchen Fällen auch dann durchgeführt wird, wenn einer der beiden Abfragewerte schon genau den richtigen Wert hat. Dieser Wert wird dann beibehalten, denn der bei dem anderen Wert verwendete Gewichtungsfaktor hat den Wert Null.To assign the correct weighting factors to the saved values, the first value is transferred from the memory 66A to a multiplier 67A, while the second value from the memory 66B into a multiplier 67B is convicted. The top four bits from the pitch counter's partial amount memory 51 are input to and from device 67A through delay buffer 68 sixteen deducted; the result is divided by 16 and with the first query value multiplied. Similarly, the same four bits are input to device 67B and multiplied by the second sample value; then the result is divided by 16. The output signals of the devices 67A and 67B are in an adding and collecting device 69 totaled so that the desired intermediate value is obtained. Should be a waveform interpolation are carried out, this value is further in an adder with a Weighting factor p multiplied by the computer 12 via the register 53 is dispensed, and the product is held in the adding and collecting device 71. The entire procedure for obtaining an intermediate value is then for the two Query values from the associated channel are repeated, but this intermediate value is used multiplied in device 70 by the weighting factor (16-p). The product is added to the value held in device 71 and the sum becomes output by device 65. It is of course irrelevant that the interpolation process in some cases is also carried out if one of the two query values already has exactly the right value. This value is then retained because the The weighting factor used for the other value has the value zero.
Eine Interpolation zwischen zwei gespeicherten Wellenformen kann durch die Einrichtung 65 während der gleichen Zeitspanne durchgeführt werden, die anderenfalls für das Ausgeben eines einzigen Abfragewertes benötigt würde. Dieses Verfahren erweist sich somit bezüglich seiner Durchführungsgeschwindigkeit als vorteilhaft, wenn man es mit dem gleichwertigen analogen Software-Verfahren vergleicht, bei dem die Vorschriften für eine interpolierte Wellenform im Rechner aus gespeicherten Daten für die beiden benachbarten Trellenformen gewonnen werden. Bei der Durchführung der zusätzlichen Rechenarbeiten, auf welche die harmonische Synthese folgt, läßt sich dann eine erhebliche Verzögerung nicht vermeiden.An interpolation between two stored waveforms can be done by the device 65 can be performed during the same period of time otherwise would be needed to output a single query value. This procedure proves is therefore advantageous in terms of its speed of execution if one it compares it with the equivalent analog software method in which the regulations for an interpolated waveform in the computer from stored data for the two neighboring trellis shapes can be obtained. When performing the additional The arithmetic work, which is followed by the harmonic synthesis, can then be considerable Don't avoid delay.
Bei dem Rechner 12 lassen sich auf vorteilhafte Weise die neuerdings verfügbaren Mikroschaltungen verwenden, z.B. das Fabrikat Zilog Z 80A, bei dem es sich um einen Mikroprozessor in Form eines einzigen Chips handelt, dem Speicher mit direktem Zugriff und Festwertspeicher in Form von Chips zugeordnet sind; jedoch wäre es jedem Fachmann möglich, auch andere :3chaltungselemente zu verwenden. Aus dem gleichen Grund wird es nicht für erforderlich gehalten, bestimmte handelsübliche digitale Schaltungselemente bekannter Art zu nennen, die in den Blockschaltbildern angedeutet sind.In the case of the computer 12, the recently use available microcircuits, e.g. the make Zilog Z 80A, in which it is a microprocessor in the form of a single chip, the memory assigned with direct access and read-only memory in the form of chips; However it would be possible for anyone skilled in the art to use other circuit elements as well. the end for the same reason it is not deemed necessary to use certain commercial items digital circuit elements of a known type to be mentioned in the block diagrams are indicated.
Es ist ferner ersichtlich, daß die Funktionen, die den Betrieb des beschriebenen Instruments ermöglichen, auf den Rechner und die zugehörige Hardware im Rahmen der Erfindung auch in einem gewissen Ausmaß auf andere Weise aufgeteilt werden könnten. Im folgenden wird das Programm, nach dem der Rechner 12 arbeitet, in großen Zügen beschrieben.It will also be seen that the functions that make the operation of the described instruments enable on the computer and the associated hardware within the scope of the invention also to a certain extent divided in other ways could become. In the following, the program, according to which the computer 12 works, is broadly described.
In Fig. 5a bis 5e sowie in der nachstehenden Beschreibung werden die nachstehenden Abkürzungen verwendet: GENs - die 40 Wellenformlesekanäle des Tongenerators 14 nach Fig. 1 CG - eine Routine zum Prüfen des Zustandes der GENs und zum Durchführen etwa erforderlicher Veränderungen WVS - die Wellenformspeicher 49 nach Fig. 4, die zu dem Tongenerator 14 nach Fig. 1 gehören KCH - eine Routine für die Reaktion auf Veränderungen des Zustandes von Tasten- und Registerkontakten Bei dem Steuerprogramm werden die nachstehenden Tabellen für die Arbeitsspeicher verwendet: GENs: bei jedem Generatorkanal werden die nachstehenden Informationen gespeichert: 1. Kennzeichen (Aktualisieren, Chiff, Einschwingen, Abklingen, in Gebrauch befindlich) 2. Tonhöhe 3. Chiff-Parameter a) Dauer b) zuerst zu erzeugende Harmonische 4. Amplitudenparameter a) maximaler Wert im eingeschwungenen Zustand b) Augenblickswert c) Einschwinggeschwindigkeit d) Abklinggeschwindigkeit 5. WVS-Nummer 6. Identifizierung: a) Manualnummer b) Tastennummer WVS: für jeden Wellenformspeicher: 1. a) Manualnummer b) Tastennummer, für welche die Wellenform richtig ist 2. Anzahl der GENs, welche diesen Speicher benutzen 3. a) maximale Amplitude b) Einschwinggeschwindigkeit c) Abklingges chwindigkeit Fig. 5a zeigt das Fließschema für das Hauptprogramm, durch das zunächst die Benutzung aller Arbeitsspeichertabellen (Blook M1) eingeleitet wird. Sämtliche Generatoren werden freigesetzt, und das Kennzeichen "in Gebrauch" wird gelöscht.In Fig. 5a to 5e and in the following description, the the following abbreviations are used: GENs - the 40 waveform read channels of the tone generator 14 of FIG. 1 CG - a routine for checking the state of the GENs and WVS - the waveform memory - for making any necessary changes 49 of FIG. 4, which belong to the tone generator 14 of FIG. 1, KCH - a routine for reacting to changes in the state of key and register contacts The following tables are used for the main memory in the control program used: GENs: the following information is used for each generator channel stored: 1. Identifier (update, code, settling, decay, in use located) 2. Pitch 3. Chiff parameters a) Duration b) Harmonics to be generated first 4. Amplitude parameters a) maximum value in steady state b) instantaneous value c) Settling speed d) Decay speed 5. WVS number 6. Identification: a) Manual number b) Key number WVS: for each waveform memory: 1. a) Manual number b) Key number for which the waveform is correct 2. Number of GENs, which use this memory 3. a) maximum amplitude b) settling speed c) Decay rate Fig. 5a shows the flow diagram for the main program, by initially using all working memory tables (blook M1) will. All generators are released and the label "in use" will be deleted.
Dann werden WVS-Signale eingegeben, um verschiedene Gruppen von Tasten jedes Kanals darzustellen, so daß bei der erstmaligen Betätigung einer Taste eine annähernd richtige Wellenform zur Verfügung steht. Nach dem Einschalten der Unterbrechungseinrichtung bewirken Unterbrechungssignale, die mit Hilfe der Register und Tasten der Konsole erzeugt werden, daß die GENs und WlEs auf den neuesten Stand gebracht werden.Then WVS signals are input to different groups of buttons of each channel so that the first time a key is pressed, a approximately correct waveform is available. After switching on the interruption device cause interrupt signals using the console's registers and buttons generated so that the GENs and WlEs are brought up to date.
Bei dem Block M2 prüft das Hauptprogramm das Kennzeichen "Register geändert", und wenn dieses Kennzeichen vorhanden ist, werden neue Wellenformen für die in Frage kommenden WVSs berechnet. Bei dem Block 13 können etwa vorhandene Reserve-WVS verwendet werden, um den Fehler zu verringern, der dadurch verursacht wird, daß bei einem Teil der Tastatur zeitweilig eine Wellenform verwendet wird, die für einen anderen Teia der Tastatur berechnet wurde. Die Blöcke M1 und 1j2 dienen auch zur Steuerung der Erzeugung von Bezugswellenformen und ihrer Eingabe in WVS-Speicher.At block M2, the main program checks the "Register" flag changed ", and if this flag is present, new waveforms for the WVSs in question are calculated. Any reserve WVS that may be present can be used in block 13 can be used to reduce the error caused by a part of the keyboard temporarily uses a waveform that is specific to a other part of the keyboard was calculated. The blocks M1 and 1j2 are also used for Control the generation of reference waveforms and their entry into WVS memory.
In die Taktunterbrechungsroutine nach Fig. Sb wird immer dann eingetreten, wenn ein Unterbrechungssignal durch einen Taktgenerator erzeugt wird, der in Intervallen von etwa 4 ms in Tätigkeit tritt. Alle Befehle für den Tongenerator, die sich auf die Amplitude (einschließlich des Einschwingens, des Abklingens und der Normierung) beziehen, gehen von dieser Routine aus. Es werden kleine regellose Veränderungen der Tonhöhe und der Amplitude herbeigeführt, um zu gewährleisten, daß zwischen den Tönen keine Phasenstarrheit auftritt. Die Unterroutine CG zum Prüfen und Aktualisieren der GENs ist in Fig. 5c dargestellt. Sobald ein hbklingvorgang bei einem beliebigen Kanal abgeschlossen ist, wird das Kennzeichen "in Gebrauch" gelöscht, und das Zählergebnis der GENs, welche die zugehörigen S benutzen, wird um 1 verringert.The clock interrupt routine according to Fig. Sb is always entered when an interrupt signal is generated by a clock generator running at intervals of about 4 ms comes into action. All commands for the tone generator that relate to the amplitude (including the settling, decay and normalization) relate, assume this routine. There will be little random changes The pitch and the amplitude are brought about to ensure that between the No phase rigidity occurs. The check and update subroutine CG of the GENs is shown in Figure 5c. As soon as a sounding process occurs on any Channel is completed, the "in use" flag is cleared and the count result of the GENs that the use associated S is decreased by 1.
Die Içonsolen-TJnterbrechungsroutine nach Fig. 5d gilt für den Betrieb der- Unterbrechungsschaltung 25 nach Fig. 2.The console interrupt routine of Figure 5d applies to operation the interrupt circuit 25 of FIG.
Registeränderungen bewirken, daß das Kennzeichen "Register geändert" gesetzt wird, und daß die Registertabelle, die den jeweiligen Zustand jedes Registers enthält, aktualisiert wird. Die Subroutine KCH nach Fig. 5e dient zum Einleiten und Beenden von Tönen.Register changes have the effect that the "Register changed" indicator is set, and that the register table showing the respective status of each register contains, is updated. The subroutine KCH of FIG. 5e is used to initiate and stopping tones.
Vorstehend wurde eine elektronische Orgel beschrieben, um die Wirkungsweise der Erfindung zu erläutern und ihre vielseitige Anwendbarkeit erkennbar zu machen. Natürlich läßt sich die Erfindung auch anwenden, um andere Ein- oder Mehrtoninstrumente zu schaffen, bei denen die digitalen Daten zum Darstellen einer gewünschten Bezugswellenform innerhalb des Instruments unter Benutzung von Einrichtungen erzeugt werden, die eine Wiedergabe durch ein Abfragen mit einer gewählten Schrittgeschwindigkeit ermöglichen.An electronic organ has been described above in order to understand the mode of operation to explain the invention and to make its versatile applicability recognizable. Of course, the invention can also be applied to other single or multi-tone instruments where the digital data is used to represent a desired reference waveform are generated within the instrument using facilities that enable playback by querying at a selected walking pace.
Für Zwecke des beins oder des Unterrichts ist es bei der erfindungsgemäßen Orgel möglich, mit dem Rechner einen digitalen Cassettenrecorder zusammenarbeiten zu lassen. Die Rechnerbefehle für die über die Tastaturen einzuspielende Musik können dann digital aufgezeichnet werden, und zwar in Form der Ausgangssignale des Tasten- und Register-Kontaktmultiplexers in Verbindung mit Identifizierungswörtern und Taktzeiten. Die Wiedergabe geschwindigkeit kann dann nach Wunsch variiert werden, so daß es z.B. möglich ist, ein schwieriges Musikstück langsam aufzunehmen und es dann mit der richtigen Geschwindigkeit wiederzugeben.For purposes of leg or teaching, it is with the invention Organ possible, a digital cassette recorder work together with the computer allow. The computer commands for the music to be played via the keyboards can are then recorded digitally, in the form of the output signals of the key and register contact multiplexer in association with identification words and clock times. The playback speed can then be varied as desired so that it E.g. it is possible to slowly record a difficult piece of music and then with it at the correct speed.
Die Daten werden auf Band im Fernschreibformat aufgezeichnet, wobei ein Fernschreib-Sender- und -Empfängerchip benutzt wird, um die erforderliche Seriell-Parallel-Umsetzung zwischen den Schaltkreisen des Recorders und dem Rechner durchzuführen und eine Zeitsteuerung zu bewirken.The data is recorded on tape in telex format, whereby a teletype transmitter and receiver chip is used to perform the required serial-to-parallel conversion between the circuitry of the recorder and the computer and one To effect timing.
Dem Band entnommene Daten können auch dem Rechner eingegeben werden, um die technischen Daten der Orgel dadurch zu verändern, daß die Klangfarben der Register verändert werden, und um den Rechner so zu programmieren, daß andere Instrumente nachgeahmt werden.Data taken from the tape can also be entered into the computer, to change the technical data of the organ by changing the timbres of the Registers can be changed, and to program the computer so that other instruments to be imitated.
In der Beschreibung des Aufbaus und der Wirkungsweise des erfindungsgemäßen Instruments wurden bestimmte Parameterwerte, z.B. Verarbeitungszeiten und Speicherkapazitäten, genannt.In the description of the structure and mode of operation of the invention Instruments, certain parameter values, e.g. processing times and storage capacities, called.
Diese Werte sind jedoch nur als Beispiele für die gegenwärtige Praxis zu betrachten, und die Erfindung ist nicht auf ihre Verwendung beschränkt. Beispielsweise kann man die Abfragekapazität des Instruments in jedem gewünschten Ausmaß erweitern, indem man mehrere Blöcke mit je 40 Abfragekanälen verwendet.However, these values are only given as examples of current practice and the invention is not limited to its uses. For example the query capacity of the instrument can be expanded to any desired extent, by using several blocks with 40 interrogation channels each.
Claims (18)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE19782818083 DE2818083C2 (en) | 1978-04-25 | 1978-04-25 | Digital music tone generator |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE19782818083 DE2818083C2 (en) | 1978-04-25 | 1978-04-25 | Digital music tone generator |
Publications (2)
Publication Number | Publication Date |
---|---|
DE2818083A1 true DE2818083A1 (en) | 1979-11-08 |
DE2818083C2 DE2818083C2 (en) | 1985-10-31 |
Family
ID=6037957
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE19782818083 Expired DE2818083C2 (en) | 1978-04-25 | 1978-04-25 | Digital music tone generator |
Country Status (1)
Country | Link |
---|---|
DE (1) | DE2818083C2 (en) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3610799A (en) * | 1969-10-30 | 1971-10-05 | North American Rockwell | Multiplexing system for selection of notes and voices in an electronic musical instrument |
US3823390A (en) * | 1972-01-17 | 1974-07-09 | Nippon Musical Instruments Mfg | Musical tone wave shape generating apparatus |
DE2500720A1 (en) * | 1974-01-11 | 1975-07-17 | Nippon Musical Instruments Mfg | ELECTRONIC MUSICAL INSTRUMENT |
DE2629697A1 (en) * | 1975-07-03 | 1977-01-20 | Nippon Musical Instruments Mfg | ELECTRONIC MUSICAL INSTRUMENT |
-
1978
- 1978-04-25 DE DE19782818083 patent/DE2818083C2/en not_active Expired
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3610799A (en) * | 1969-10-30 | 1971-10-05 | North American Rockwell | Multiplexing system for selection of notes and voices in an electronic musical instrument |
US3823390A (en) * | 1972-01-17 | 1974-07-09 | Nippon Musical Instruments Mfg | Musical tone wave shape generating apparatus |
DE2500720A1 (en) * | 1974-01-11 | 1975-07-17 | Nippon Musical Instruments Mfg | ELECTRONIC MUSICAL INSTRUMENT |
DE2629697A1 (en) * | 1975-07-03 | 1977-01-20 | Nippon Musical Instruments Mfg | ELECTRONIC MUSICAL INSTRUMENT |
Also Published As
Publication number | Publication date |
---|---|
DE2818083C2 (en) | 1985-10-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE3221447C2 (en) | ||
DE2635424C2 (en) | Device for translating a stored sound oscillation curve into a plurality of independent musical tones in an electronic musical instrument | |
DE2362050C3 (en) | Electronic musical instrument | |
DE3177313T2 (en) | Electronic musical instrument | |
DE3032609C2 (en) | Electronic keyboard musical instrument with multiple tone generation channels. | |
DE2431161C2 (en) | Tone generating device for an electronic musical instrument | |
DE2920298A1 (en) | BINARY INTERPOLATOR CIRCUIT FOR AN ELECTRONIC MUSICAL INSTRUMENT | |
DE2518633A1 (en) | DEVICE FOR GENERATING A SLIDING OR PORTAMENTO EFFECT IN AN ELECTRONIC MUSICAL INSTRUMENT | |
DE2404431B2 (en) | Electronic musical instrument | |
DE2711511C2 (en) | Polyphonic electronic musical instrument | |
EP0042555B1 (en) | Method of digitally controlling the envelope in a polyphonic musical synthesis instrument, and circuits to put this method into practice | |
DE3023559C2 (en) | Electronic musical instrument | |
DE2539950C3 (en) | Automatic bass chord | |
DE2644903A1 (en) | ELECTRONIC MUSICAL INSTRUMENT | |
DE2937256A1 (en) | DIGITAL ELECTRONIC MUSICAL INSTRUMENT | |
DE2828919A1 (en) | POLYPHONE SYNTHESIS CIRCUIT FOR PERIODIC SIGNALS AND ELECTRONIC MUSICAL INSTRUMENT EQUIPPED WITH IT | |
DE69018858T2 (en) | Device for generating a musical tone signal. | |
DE60033098T2 (en) | Method and device for recording / reproducing or generating waveforms by means of timing information | |
DE3002128A1 (en) | ELECTRONIC MUSIC INSTRUMENT | |
DE2748422C2 (en) | Polyphonic electronic musical instrument | |
DE2641452A1 (en) | ELECTRONIC MUSICAL INSTRUMENT | |
DE3047801A1 (en) | ELECTRONIC MUSIC INSTRUMENT WITH KEYPAD | |
DE60032085T2 (en) | A method and apparatus for generating a waveform with improved transition between successive file modules | |
DE2901969A1 (en) | ELECTRONIC MUSICAL INSTRUMENT WITH A DEVICE FOR GENERATING VARIABLE PULSES | |
DE2818083A1 (en) | Digital generator for electrical music synthesisers - has selector for waveform specification and inbuilt computer to control signal generator |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
8110 | Request for examination paragraph 44 | ||
D2 | Grant after examination | ||
8364 | No opposition during term of opposition | ||
8327 | Change in the person/name/address of the patent owner |
Owner name: BRITISH TECHNOLOGY GROUP LTD., LONDON, GB |
|
8328 | Change in the person/name/address of the agent |
Free format text: MITSCHERLICH, H., DIPL.-ING. KOERBER, W., DIPL.-ING. DR.RER.NAT. SCHMIDT-EVERS, J., DIPL.-ING. MELZER, W., DIPL.-ING., 80331 MUENCHEN GRAF, W., DIPL.-ING., PAT.-ANWAELTE, 81667 MUENCHEN |