[go: up one dir, main page]

DE3013250A1 - Digitalsignalgenerator - Google Patents

Digitalsignalgenerator

Info

Publication number
DE3013250A1
DE3013250A1 DE19803013250 DE3013250A DE3013250A1 DE 3013250 A1 DE3013250 A1 DE 3013250A1 DE 19803013250 DE19803013250 DE 19803013250 DE 3013250 A DE3013250 A DE 3013250A DE 3013250 A1 DE3013250 A1 DE 3013250A1
Authority
DE
Germany
Prior art keywords
data
signal
frequency
memory
waveform
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.)
Ceased
Application number
DE19803013250
Other languages
English (en)
Inventor
Osamu Hamada
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sony Corp
Original Assignee
Sony Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sony Corp filed Critical Sony Corp
Publication of DE3013250A1 publication Critical patent/DE3013250A1/de
Ceased legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10HELECTROPHONIC 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/00Instruments in which the tones are synthesised from a data store, e.g. computer organs
    • G10H7/02Instruments in which the tones are synthesised from a data store, e.g. computer organs in which amplitudes at successive sample points of a tone waveform are stored in one or more memories
    • G10H7/06Instruments in which the tones are synthesised from a data store, e.g. computer organs in which amplitudes at successive sample points of a tone waveform are stored in one or more memories in which amplitudes are read at a fixed rate, the read-out address varying stepwise by a given value, e.g. according to pitch

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Acoustics & Sound (AREA)
  • Multimedia (AREA)
  • Electrophonic Musical Instruments (AREA)

Description

Die Erfindung bezieht sich auf einen Digitalsignalgenerator für eine Tonquelle, z.B. ein elektronisches Musikinstrument.
Bei einem bekannten elektronischen Musikinstrument, insbesondere einem Musiksynthesierer werden zur Erzeugung verschiedener Signalverläufe wie eines sinusförmigen, eines dreieckförmigen, eines sägezahnförmigen usw. Verlaufs ein oder mehrere spannungsgesteuerte Oszillatoren verwendet. Da die Signale analog verarbeitet werden, ergeben sich verschiedene Probleme hinsichtlich der Genauigkeit und der Stabilität der Frequenz und des Freiheitsgrades der erzeugten Signalverläufe.
Zur Beseitigung dieser Probleme wurde bereits versucht, die Signale digital zu verarbeiten.
Der Vorteil der digitalen Verarbeitung eines Signals und der Erzeugung des gewünschten Signalverlaufs liegt darin, daß die Frequenzstabilität gut ist, der gewünschte Signalverlauf leicht erzeugt werden kann und außerdem das Zeitteilungs/Oberlagerungs-Verfahren, das bei analoger Verarbeitung schwierig ist, möglich ist. Außerdem ist die Steuerung einfach und der erzeugte Schall kann gespeichert werden. Aufgrund des letztgenannten Vorteils können mehrere Schallquellen vorgesehen werden, die die Erzeugung neuer Töne und von natürlichen Tönen nahekommenden Tönen ermöglichen.
Zur digitalen Erzeugung eines Signalverlaufs in einem ROM, RAM oder Schieberegister werden digitale Daten, ein gewünschter Signalverlauf bzw. ein Wert, der durch Abtasten einer Periode oder einer bestimmten Anzahl von Perioden einer Grundwelle, die zur Erzeugung des gewünschten Signalverlaufs durch Synthesleren notwendig ist, mit einer Abtastfrequenz größer als die doppelte höchste Frequenz, die in der Grundwelle enthalten ist, gespeichert. Dabei
030043/0 814
kann ein veränderbarer Takt verwendet werden, so daß die gespeicherten Signalverlaufsdaten durch einen Takt sequentiell ausgelesen werden,der sich entsprechend der musikalischen Tonleiterfrequenz ändert, um einen Musikton mit dieser Tonleiterfrequenz zu erzeugen. Es ist auch möglich, einen festen Takt zu verwenden, bei dem ein Adressensignal mit einer bestimmten Breite bei jeder Periode entsprechend der musikalischen Tonleiterfrequenz geändert und dem ROM oder RAM zugeführt wird, um ähnlich dem vorherigen Fall einen Ton mit der Tonleiterfrequenz zu erzeugen. Wenn bei veränderbarem Takt die Frequenz sequentiell geändert werden soll, ist eine Stabilität erforderlich, die technisch schwierig erreichbar ist.
Der Erfindung liegt die Aufgabe zugrunde, einen Digitalsign a lgenera tor zu erzeugen, bei dem die Signalverarbeitungsfolge aufgrund einfacher Konstruktion einfach ist, bei dem die Datenübertragung und Verarbeitung leicht durchgeführt werden können, bei dem mehrere Signalverläufe gleichzeitig erzeugt werden können, bei dem Schallquellen für verschiedene Töne leicht vorgesehen werden können, bei dem die Tonqualität in Abhängigkeit vom Tonbereich geändert werden kann und bei dem ein sog. "folded error" vermieden werden kann.
Gelöst wird diese Aufgabe gemäß der Erfindung durch die im Anspruch 1 angegebenen Merkmale. Zweckmäßige Ausgestaltungen der Erfindung ergeben sich aus den Unteransprüchen.
Die Erfindung wird nachstehend anhand der Figuren 1 bis 6 beispielsweise erläutert. Es zeigt:
Figur 1 ein Blockschaltbild, aus dem der grundsätzliche Aufbau des Generators hervorgeht,
Figur 2 den Speicherplan eines RAM, der einen Teil des Generators in Fig. 1 bildet,
030043/08U
Fiyar i «ir. Diagramm, aus dem die Festlegung der jeweiligen Daten hervorgeht,
Figur 4A bis 4D Diagramme, aus denen die Lage der verschiedenen Bearbeitungszeiten beim Zeitteilungsverfahren hervorgeht,
Figur 5 ein Blockschaltbild, aus dem der Generator in Fig. 1 im einzelnen hervorgeht, und
Figur 6A bis 6M Signalverläufe, aus denen die verschiedenen Zeitsteuersignale hervorgehen, die beim Generator der Fig. 5 verwendet werden.
030043/0814
1-3250
Der Digitalsignalgenerator arbeitet mit einem festen Taktgeber, wobei eine Einperiodenkomponente eines zu erzeugenden Signals mit einer bestimmten Abtastgeschwindigkeit abgetastet wird, und die abgetasteten Daten als digitale Werte in einem Daten-ROM-Speicher (Festspeicher) gespeichert werden. Jede der abgetasteten Daten wird mit einer Adressenzahl versehen, und die Daten werden durch sequentielle Änderung der Adressenzahl ausgelesen. Durch Variation der sich ändernden Breite der Adressenzahl bei jeder konstanten Periode kann die Frequenz des ausgelesenen Signals geändert werden.
Um dies zu erreichen, wird die sich ändernde Breite (die als Zusatzzahl η angenommen wird) der Adressenzahl entsprechend der Frequenz des gewünschten Signals eingestellt, d.h., es wird eine Taste gedrückt, und dann wird das auf den Anfangswert der Adressenzahl oder der Adressenzahl vor einer Periode (die als eine zuzufügende Bahl a angenommen wird) bei jeder konstanten Periode entsprechend dem festen Takt überlagert.
Wenn ein Signal mit einer bestimmten Frequenz erzeugt wird, kann die folgende Beziehung zwischen der erzeugten Frequenz F und der obigen Zusatzzahl η aufgestellt werden:
n'f
2B
in der fc die feste Abtasttaktfrequenz und B die Datenbitzahl der Zusatzzahl η ist (2 ist die maximale Adressenzahl) .
Aus der Gleichung (1) ist ersichtlich, daß, wenn die feste Abtasttaktfrequenz fc und die abgetastete Zahl der Signalverlaufdaten (die abgetastete Zahl ist gleich der Adressenzahl) konstant sind, die erzeugte Frequenz F durch Änderung der Zusatzzahl η geändert werden kann.
030043/0814
Fig. 1 zeigt den grundlegenden Aufbau des Digitalsignalgenerators. In Fig. 1 bezeichnet 1 einen Tastenzuordner, der mit einer Tastatur (nicht gezeigt) gekuppelt ist. Eine Frequenzinformation entsprechend einem zu erzeugenden Signalverlauf, die einer gedrückten Taste entspricht, wird vom Tastenzuordner 1 abgegeben und einem Festzahleinstellkreis 2 zugeführt, in dem die Änderungsbreite einer Adressenzahl, d.h. die Zusatzzahl η entsprechend der Frequenzinformation in Übereinstimmung mit dem obigen Festtaktsystem eingestellt wird. Die Zusatzzahl η wird dann durch einen RAM (Speicher mit festem Zugriff) 3 dem Akkumulations- bzw. Überlagerungsverfahren unterworfen, wobei der Speicher 3 als Akkumulator und ein Addierer 4 zur Erhöhung der Adressenzahl um η bei jeder einzelnen Abtasttaktfrequenz dient. Dies bedeutet, daß der RAM 3 die Zusatzzahl η des Festzahleinstellkreises 2 und auch die zuzufügende addierte Zahl a speichert, die bereits bis zu diesem Zeitpunkt addiert wurde. Die Zahlen a und η werden im Addierer 4 addiert und die so addierten Zahlen werden zum RAM 3 als zu addierende Zahl a1 = a + η zurückgeleifeet und gespeichert. Der obige Überlagerungsvorgang wird von dem Zeitsteuersignal gesteuert, das von einem Zeitsteuerkreis 5 abgegeben wird.
Die addierte Zahl a und die Zusatzzahl n, die im RAM 3 gespeichert werden, werden selbsthaltenden Schaltern 6 und 7 zugeführt, um bei jeder einzelnen Taktperiode geschaltet zu werden. Die addierte Zahl a bzw. überlagerte Adresse im Schalter 6 wird einem Daten-ROM 8 zugeführt, um die Adresse der gespeicherten Daten anzugeben.
Um zu vermeiden, daß die Frequenzkomponente eines aus dem ROM 8 auszulesenden Signalverlaufs eine hohe harmonische Komponente mit einer Frequenz höher als die halbe Abtastfrequenz entsprechend dem Frequenzband enthält, werden mehrere Signalverlaufdaten, die zuvor einer Bandbegrenzung
030043/0814
unterworfen wurden, im ROM 8 in Form mehrerer Datenbänke vorbereitet, um dadurch die Erzeugung von Fehlern (sog. "folded errors") zu vermeiden. Hierzu wird die im Schalter 7 gespeicherte Zusatzzahl einem Prioritätscodierer 9 als Frequenzinformation des Signalverlaufs zugeführt. Der Prioritätscodierer 9 erzeugt ein Signal, das angibt, welche Datenbank verwendet werden soll. Dieses Signal wird dem ROM 8 zugeführt.
Die so aus einer bestimmten Datenbank im ROM 8 ausgelesenen Signalverlaufdaten werden einem selbsthaltenden Schalter 10 in der nächsten Stufe zugeführt, um darin in einer bestimmten Zeitperiode gespeichert zu werden und danach durch das Zeitsteuersignal des Zeitsteuerkreises 5 ausgegeben.
Als praktisches Beispiel wird nun der Fall beschrieben, daß mehrere unterschiedliche Signa!verlaufe gleichzeitig erzeugt werden; speziell wird das Zeitmultiplexverfahren von dem Generator unter Bezugnahme auf die Fig. 2, 3 und 4A bis 4D durchgeführt.
Als grundlegende Maßnahme sei angenommen, daß die Abtasttaktfrequenz fc 50 kHz, die Frequenz F eines erzeugten Signalverlaufs 0,04768 Hz bis 19,99998 kHz beträgt und die Zusatzzahl η und die addierte Zahl a jeweils 20 Datenbits (DO bis D19) hat. Aus Gleichung (1) ist ersichtlich, daß die Zusatzzahl η im Bereich von 1 bis 419430 geändert werden kann.
Da bei dem obigen Beispiel die Abtastzahl der einperiodigen Daten, die im ROM 8 gespeichert sind, 256 ist, hat ihre Adresse acht Bits, und da die Anzahl der Signalverlaufdatenbänke acht beträgt, werden nur die acht Bits D12 bis D19 der zwanzig Bits in den Zahlen η und a als praktische Adressensignale des ROM 8 verwendet. Das Zeit-
030043/0814
3Q1325Q
multiplexverfahren wird so durchgeführt, daß höchstens unterschiedliche Signalverläufe von 16 Kanälen abgegeben werden.
Wie die Fig. 2 und 3 zeigen, hat der RAM 3 die Speicherbereiche von 16 Kanälen, und jeder Kanal ist in zwei Register zur Speicherung der Zahlen η und a mit jeweils 20 Bits DO bis D10 unterteilt. Praktisch ist jedoch ein RAM möglich, der eine Kapazität von 256 χ 4 Bits hat und in den Informationen von vier Bits gleichzeitig (parallel) eingegeben oder von diesem ausgegeben werden können und der auch Informationen von 256 Sätzen mit jeweils 4 Bits speichert. Fig. 2 zeigt somit den Speicherplan des RAM 3; es sind z.B. 16 Kanäle CHO bis CH15 vorgesehen, und jeder Kanal hat 16 Adressen (z.B. 00 bis 09, OA bis OF im ersten Kanal CHO). Praktisch werden zehn Adressen 00 bis 09 des ersten Kanals verwendet; jede von zwei benachbarten Adressen wird als ein Wort genommen, und damit sind die ersten zehn Adressen in insgesamt fünf Wörter WO bis W4 unterteilt. Die eine Adresse in jedem Wort ist zur Speicherung der Zusatzzahl,η und die andere zur Speicherung der addierten Zahl a festgelegt. Die Zahlen η und a von jeweils 20 Bits sind somit zu je vier Bits vom Wort WO bis W4 aufeinanderfolgend von den unteren vier Bits (Zusatzzahl nO, addierte Zahl aO) zu den höheren vier Bits (Zusatzzahl n4, addierte Zahl a4) festgelegt.
Um diese Daten im Zeitmultiplexverfahren zu verarbeiten, sind die in den Fig. 4A bis 4D gezeigten Operationszeiten festgelegt. Wenn die Abtasttaktfrequenz fc 50 kHz beträgt, beträgt ihre Abtastperiode 20 us, wie Fig. 4A zeigt. Um die 16 Kanäle CHO bis CH15 in einer Periode von 20 us im Zeitmultiplexverfahren zu verarbeiten, ist eine Operationszeit von 1,25 us dem Kanal 1 zugeordnet, wie Fig. 4B zeigt. In jedem Kanal werden fünf Wörter WO bis W4 verarbeitet, und die Verarbeitungszeit beträgt 0,25 us pro Wort, wie Fig. 4C zeigt. Um die Zusatzzahl η dem Überlagerungsverfahren zu unterwerfen, sind vier Zeltschlitze
030043/0814
T1 bis T 4 (Fig. 4D) in jedem Wort vorgesehen, wie später beschrieben wird. Die Zeit jedes Zeitschlitzes beträgt 62,5 us. Da diese Zeit die minimale Einheitsperiode der Datenverarbeitung ist, muß die Taktfrequenz 8 MHz betragen.
Im RAM 3 wird be:, jedem Wort die Zusatzzahl η im Zeitschlitz T1 ausgelesen, im Zeitschlitz T2 eingeschrieben, und die addierte Zahl a wird im Zeitschlitz T3 ausgelesen und dann im Zeitschlitz T4 eingeschrieben.
Wie zuvor beschrieben, ist ersichtlich, daß die arithmetische Operation eines Wortes aus wenigstens vier Zeitschlitzen mit konstanter Ausgabe, konstanter Eingabe, Operationsregisterausgabe und -eingabe besteht, um die Datenübertragung und Operation leicht durchzuführen.
Es ist möglich, mehrere Kanäle in einer bestimmten Abtastzeit abzutasten, wobei jeder Kanal in mehrere Wörter unterteilt ist, um ihnen eine geeignete Bitlänge von z.B. vier Bits zu geben, für die die übertragung und Operation leicht ist, so daß sich der Aufbau vereinfacht. Auch werden die Frequenzeinstelldaten und das Operationsregister am gleichen RAM gebildet, um die Signalverarbeitungsfolge zu vereinfachen.
Anhand der Fig. 5 wird nun ein praktisches Beispiel erläutert, bei dem der RAM 3 mit dem obigen Aufbau verwendet ist.
Bei dem Beispiel der Fig. 5 werden Frequenzinformationen entsprechend mehreren Tasten, die von den gedrückten Tasten in Tastenzuordner 1 (der in Fig. 5 nicht gezeigt ist) oder Frequenzinformationen.von zu synthesierenden Signalverläufen für eine gedrückte Taste erzeugt, und in dem Festzahleinstellkreis 2 werden auf der Grundlage der so erzeugten Frequenzinformationen Zahlen η als 4-Bit-Daten nO bis n4 gesetzt, und die Wortadressen WO
030043/0814
bis W4 und die Kanaladressen CHO bis X!H4 des RAM 3, in dem die obigen Daten gespeichert sind, werden als 4-Bit-Daten gesetzt.
Der Einstellkreis 2 hat ein Tor 11, dem die gesetzten Zahlen η (nO bis n4) zugeführt werden, einen Komparator 12, an dessen einer Eingangsseite die Wortadress,e WO bis W4 und die Kanaladressen CHO bis CH15 zugeführt werden, sowie ein ODER-Glied 13, über das das Ausgangssignal des Komparators 12 dem Eingang des Tors 11 zugeführt wird.
Der Steuerkreis 5 hat einen Taktoszillator 14, der ein Taktsignal von 8 MHz erzeugt. Das Taktsignal wird dem ODER-Glied 13 im Einstellkreis 2 und auch einem Dezimalzähler 15 im Zeitsteuerkreis 5 zugeführt. Der Dezimalzähler 15 zählt die Wortadresse. Das höchstwertige Bit des Dezimalzählers 15 wird einem Sexadezimalzähler im Zeitsteuerkreis zugeführt, der die Kanaladresse zählO
Das Wortadressensignal des Dezimalzählers 15 und das Kanaladressensignal des Sexadezimalzählers 16 werden auf die Adresseneingänge des RAM 3 und auch auf die andere Eingangsseite des Komparators 12 gegeben. Der Komparator 12 erzeugt ein Koninzidenzsignal, wenn die Wort- und Kanaladressensignale der Zähler 15 und 16 mit den im Einstellkreis 2 gesetzten übereinstimmen. Das Koinzidenzsignal öffnet das Tor 11, so daß die Zusatzzahl η an dem Wort einer vorbestimmten Adresse im RAM eingeschrieben wird.
Im Einstellkreis 2 wird, wenn die Adressenzahl n, die Wortadresse und die Kanaladresse erscheinen, der Zustand durch ein Erregungssignal EN ausgedrückt, das zum Triggern des Komparators 12 verwendet wird, während das vom Komparator 12 über das ODER-Glied 13 abgegebene Koinzidenzsignal als Antwortsignal RQ ausgedrück wird, das zum Setzen der jeweiligen Konstanten verwendet wird, um Datenfehler zu vermeiden.
030043/0814
13250
Der RAM 3 hat einen Anschluß WE, der die Dateneingabe ermöglicht, wenn der Pegel "O" ist, und einen Anschluß ΟΪ5, der die Ausgabe der gespeicherten Daten ermöglicht, wenn der Pegel "O" ist. Bei dem Beispiel der Fig. 5 liegt der Anschluß OE an Masse, so daß die Datenausgabe stets möglich ist.
Der das Ausgangssignal des niedrigstwertigen Bits (Fig. 6C), das vom Dezimalzähler 15 abgegeben wird, der das Koinzidenzausgangssignal (Fig. 6A) des Komparators 12 und das Ausgangssignal (Fig. 6B) des Taktoszillators 14 rückwärts zählt, wird von einem Inverter 17 als Ausgangssignal (Fig. 6D) invertiert und einem UND-Glied 18 zugeführt. Das logische Ausgangssignal des UND-Glieds 18 und das Taktsignal des Oszillators 14 werden einem ODER-Glied
19 zugeführt, dessen logisches Ausgangsöignal (Fig. 6F) dem Anschluß WE des RAM 3 zugeführt wird. Wenn das Ausgangssignal des ODER-Glieds 19 "O" ist. d.h., daß die Zeitschlitze T2 und T4 entsprechen, können die Daten in den RAM 3 eingeschrieben werden. Wenn das Adressensignal des Dezimalzählers 15 somit die Adresse der Zahl η in jedem Wort (z.B. 00, 02, ... in Fig. 2) angibt, wird die Zahl η im RAM 3 im Zeitschlitz T2 eingeschrieben, während, wenn das Adressensignal die Adresse der Zahl a (z.B. 01, 03 ... in Fig. 2) angibt, die Zahl a im RAM im Zeitschlitz T4 eingeschrieben wird.
Der Addierer 4 enthält einen selbsthaltenden Schalter 20, einen Addierer 21, ein Flip-Flop 22,^ein NAND-Glied 23 und einen selbsthaltenden Schalter 24. Die Daten der Zahl n, die im Speicher 3 gespeichert und von diesem im Zeitschlitz T1 ausgelesen werden, werden im Schalter
20 auf dem Pegel "0" des Schaltsignals in Fig. 6D gespeichert und dann dem Addierer 21 auf dem Pegel "1" des Schaltsignals zugeführt. In der Periode des Schlitzes T3 werden die im RAM 3 gespeicherten Daten der Zahl a
030043/0814
ausgelesen und dann zu der Zahl η im Addierer 21 addiert. Wenn der übertrag zum fünften Bit im addierten Ergebnis erzeugt wird, erzeugt der Addierer 21 ein Übertragsignal, das im Flip-Flop 22 durch den Taktimpuls in Fig. 6G des NAND-Glieds 23 gespeichert und dann zum Addierer 21 als Übertragssignal nach einer Wortperiode übertragen wird. Als Flip-Flop 22 wird z.B. ein D-Flip-Flop zur Ubertragseinsparung verwendet.
Eine neue addierte Zahl a, zu der die Zahl η addiert wird, wird vom Schalter 24 gespeichert/ der z.B. aus einem D-Flip-Flop besteht, und wird wieder an der Adresse der Zahl a im RAM 3 zu dem in Fig. 6H gezeigten Zeitpunkt, d.h. im Zeitschlitz T4, gespeichert.
Wie zuvor beschrieben, werden die Zahlen η und a jedes Wortes in jedem Kanal sequentiell addiert bzw. verarbeitet. In der zweiten Hälfte dieses Operationsvorganges, d.h. bei der Verarbeitung der Wörter W3 und W4, werden die Zahlen η und a jedes Wortes dem RAM 3 und auch den Schaltern 25 bis 28 zugeführt, die jeweils die Schalter 6 und 7 bilden. Die höheren acht Bits (a3, a4) der Zahl a und die höheren acht Bits (n3, n4) der Zahl η werden darin entsprechend den Ausgangssignalen eines Decoders im Zeitsteuerkreis 5 gespeichert. Der Decoder 29 zählt das Ausgangssignal des Dezimalzählers 15 und erzeugt an seinen Ausgängen 5 bis 9 Zeitsteuersignale, die in den Fig. 61 bis 6M gezeigt sind. Die Ausgangssignale an den Anschlüssen 6 und 7 werden zur Aufnahme der Zahlen η und a des Wortes W3 in selbsthaltenden Schaltern bzw. Verriegelungsschaltungen 27 und 25 verwendet, und die Ausgangssignale an den Anschlüssen 8 und 9 werden zur Aufnahme der Zahlen η und a des Wortes W4 in den Schaltern 28 und 26 verwendet. Das Ausgangssignal am Anschluß 5 dient dazu, das Ausgangssignal des ROM 8 im Schalter 10 zu speichern.
Q3Q0A3/08U
Die addierten Zahlen a3 und a4, die in den Schaltern 2 5 und 26 gespeichert sind, werden als Adressensignale zur sofortigen Angabe der Adressen des ROM 8 verwendet, in dem zuvor im Frequenzband begrenzte Signalverlaufdaten gespeichert sind. Das Adressensignal verwendet nur die höheren acht Bits AO bis A7 der Zahlen a der 20 im RAM 3 gespeicherten Bits, wie Fig. 3 zeigt. Wenn die Frequenz eines erzeugten Verlaufs, die durch die Zusatzzahl η
1 2
bestimmt wird, kleiner als 2 ist, d.h. kleiner als
o12 .. _
wie-sich aus der Gleichung (1) ergibt, werden die gleiche Adresse, d.h. die gleichen Daten für mehrere Abtastungen verwendet.
Die Zusatzzahlen n3 und n4 in den Schaltern 27 und 28 werden dem Prioritätscodierer 9 zugeführt, der dann ein Schaltsignal erzeugt, um bei jeder Oktave mehrere Datenbänke umzuschalten, die zuvor im ROM 8 entsprechend der Lage des höchstwertigen Bits, das "1" ist, der Zahl η zu setzen, die von den Schaltern 27 und 28 zugeführt werden.
Festtaktsystem wird unter der Annahme, daß die Abtasttaktfrequenz fc und die Datenabtastzahl N ist, wenn eine Frequenz größer als fc/N erzeugt wird, ein Sprung in der Adressenangabe des ROM 8 erzeugt. Wenn eine Frequenzkomponente höher als fc/2 in den Signalverlaufsdaten enthalten ist, besteht die Möglichkeit, daß ein Fehler ("folded error) erzeugt wird. Um diesen Nachteil zu vermeiden, wird, wenn die Adressensprungzahl χ ist, die erzeugte Frequenz Fx als fx = x'fc/N ausgedrückt. Wenn die Ordnung höherer Harmonischer, die in den Signalverlaufsdaten enthalten sind,m ist, gilt:
Fmax · m'Fx' m * N/2x
030043/0814
./15
Es genügt, daß diese Begrenzung durchgeführt wird, damit die höher Harmonischen keine Frequenz höher als N/2x enthalten.
Es sind daher mehrere Datenbänke, von denen jeder einer bestimmten Bandbegrenzung unterliegt, im ROM 8 angeordnet und werden durch das Ausgangssignal des Prioritätscodierers 9 angezeigt.
Der Frequenzbereich der höheren Harmonischen, die in jeder Datenbank enthalten sind, können bei dem erläuterten.Beispiel wie in der folgenden Tabelle gesetzt werden.
Tabelle
Lage des höchst
wertigen Bits,
das "1" ist
Daten
bank
Ordnung der
enthaltenen
höheren
Harmonischen
Frequenz
bereich
(Hz)
D18 7 1 12500 - 20000
D17 6 2 6250 - 12500
D16 5 4 3125 - 6250
D15 4 8 1562 - 3125
D14 3 16 781 - 1562
' D13 2 332 390 - 781
D12 1 64 195 - 390
D0 tO Dll 0 64 · - 195
030043/0814
In der obigen Tabelle ist die Umschaltung zwischen der Datengank 1 und O vorgesehen, um abhängig vom Band einen Tonqualitätsunterschied zu bewirken.
Der ROM 8 arbeitet derart/ daß die Signalverlaufsdaten in der vorbestimmten Datenbank mit den Ausgangssignalen der Schalter 25 und 26 als den Adressensignalen sofort ausgelesen werden, und wenn die Gefahr besteht, daß ein "folded error" infolge der Tatsache.erzeugt wird, daß die höherharmonischen Komponenten im erzeugten Signalverlauf hoch werden, die Datenbank auf eine gewünschte Bank entsprechend dem Bankanzeigesignal des Codierers 9 umgeschaltet wird, so daß kein "folded error" erzeugt wird. Die Signalverlaufsdaten werden daher aus der angezeigten Datenbank im ROM 8 ausgelesen und dann über den Schalter 10 zu dem in Fig. 61 gezeigten Zeitpunkt nach außen abgegeben.
Es ist möglich, die so ausgelesenen Signalverlaufsdaten in analoge Form umzuwandeln und danach durch einen spannungsgesteuerten Verstärker, einen Hüllkurvengenerator oder dergleichen zu verarbeiten oder auf ein insgesamt digital arbeitendes elektronisches Instrument zu geben.
Wenn die Signalverlaufsdaten, die zuvor im ROM 8 gespeichert wurden, kann zusätzlich zur Dreiecks-Sägezahnform usw. eine Einperiodenkomponente eines praktisch aufgezeichneten Musiktonsignals verwendet werden, das quantisiert wird.
Es ist auch möglich, daß nur sinusförmige Daten als Signalverlauf sda ten verwendet werden, und jede Kanalfrequenz als höherharmonische Frequenz als Tonquelle eines Synthesierers für sinusförmigen Signalverlauf gesetzt wird. Dabei ist es möglich, daß eine nicht harmonische Eigenschaft enthalten ist und unabhängige Hüllkurven auf die höheren Harmonischen gegeben werden, um natürlichere und
Ü30Ü43/Ü8U
"erschiedene Klangfarben zu erzeugen.
r.tatt des ROK, der zur Signalverlaufsdatenspeicherung verwendet wird, ist es auch möglich, einen RAM zu verwenden, dessen Inhalt zeitlich durch eine Zentralverarbeitungseinheit, eine Steuerung oder dergleichen verändert wird, um die zeitliche Änderung eines erzeugten Spektrums durchzuführen.
Bei dem obigen Beispiel sind die Bänke der Signalverlaufsdaten gleich gewählt, jedoch kann die im Band begrenzte Bank die anzahl der Datenabtastungen verringern.
Wenn die Arbeitsgeschwindigkeit erhöht werden kann, kann die Kanalanzahl des Generators weiter erhöht werden. Da es möglich ist, den Frequenzsatz der jeweiligen Kanäle bei niedriger Geschwindigkeit einer Interface zu unterwerfen, kann eine Schaltung verwendet werden, die die Frequenz einem Generatorzuordner, d.h. einem Signalverlauf sgenerator zuordnet.
3GCU3/03U

Claims (3)

Ansprüche
1. Digitalsignalgenerator, gekennzeichnet durch eine Einrichtung zur Festlegung der Frequenz eines zu erzeugenden Signals, eine Einrichtung zur Erzeugung erster Daten entsprechend der festgelegten Frequenz, einen ersten Speicher zur Speicherung der ersten Daten, einen zweiten Speicher zur Speicherung zweiter Daten, eine Einrichtung zur überlagerung der ersten Daten den zweiten im zweiten Speicher gespeicherten Daten, wobei der zweite Speicher die zweiten Daten addiert mit den ersten speichert, einen Speicher zur Speicherung bestimmter Signalverlaufsdaten und zur Erzeugung eines den Signalverlauf betreffenden Date;asignals gemäß Adressensignalen entsprechend den zweiten Daten und eine Zeitsteuereinrichtung zur Steuerung der Schaltstufen des Generators.
2. Generator nach Anspruch 1, dadurch gekennzeich net, daß die Festlegungseinrichtung eine oder mehrere
030043/08U
INSPECTED
21325 0
Frequenzen festlegt, daß die Erzeugungseinrichtung mehrere erste Daten entsprechend einer oder mehreren festgelegten Frequenzen erzeugt, daß der erste und zweite Speicher Kanäle zur Speicherung der ersten und der zu den ersten Daten zu addierenden zweiten Daten aufweisen, und daß die Steuereinrichtung die Schaltstufen in Zeitteilverfahren steuert.
3. Generator nach Anspruch 1, dadurch gekennzeichnet, daß der Speicher der den Signalverlauf betreffenden Daten Datenbänke aufweist, von denen jede die gleichen oder unterschiedliche Signalverlaufsdaten speichert, sowie eine Einrichtung zum Empfang der ersten Daten und zur Erzeugung eines Wählsignals zur Wahl einer der Datenbänke entsprechend den ersten Daten.
030043/08U
DE19803013250 1979-04-05 1980-04-03 Digitalsignalgenerator Ceased DE3013250A1 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP4132479A JPS55134898A (en) 1979-04-05 1979-04-05 Digital waveform gneration circuit

Publications (1)

Publication Number Publication Date
DE3013250A1 true DE3013250A1 (de) 1980-10-23

Family

ID=12605334

Family Applications (1)

Application Number Title Priority Date Filing Date
DE19803013250 Ceased DE3013250A1 (de) 1979-04-05 1980-04-03 Digitalsignalgenerator

Country Status (8)

Country Link
US (1) US4338674A (de)
JP (1) JPS55134898A (de)
AU (1) AU538059B2 (de)
CA (1) CA1130922A (de)
DE (1) DE3013250A1 (de)
FR (1) FR2453460B1 (de)
GB (1) GB2047999B (de)
NL (1) NL8002055A (de)

Families Citing this family (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
USRE33738E (en) * 1979-04-27 1991-11-12 Yamaha Corporation Electronic musical instrument of waveform memory reading type
DE3163846D1 (en) 1980-05-13 1984-07-05 Secretary Industry Brit Waveform synthesiser for calibrating vor equipment
US4410955A (en) * 1981-03-30 1983-10-18 Motorola, Inc. Method and apparatus for digital shaping of a digital data stream
US4445414A (en) * 1982-02-24 1984-05-01 Apple Computer, Inc. Digital, simultaneous, discrete frequency generator
JPS59168492A (ja) * 1983-03-16 1984-09-22 ヤマハ株式会社 楽音波形発生装置
US4713788A (en) * 1983-09-08 1987-12-15 Takeda Riken Kogyo Kabushikikaisha Burst signal generator
JP2785821B2 (ja) * 1983-10-07 1998-08-13 ソニー株式会社 デイジタル信号発生回路
US4719593A (en) * 1984-07-09 1988-01-12 Advanced Micro Devices, Inc. Apparatus for generating digital timing waveforms
JPS6194136A (ja) * 1984-10-15 1986-05-13 Anritsu Corp デイジタル信号処理装置
US4809205A (en) * 1986-11-19 1989-02-28 Rockwell International Corporation Digital sine conversion circuit for use in direct digital synthesizers
JP2595992B2 (ja) * 1987-10-07 1997-04-02 カシオ計算機株式会社 電子楽器
JP2595998B2 (ja) * 1987-10-14 1997-04-02 カシオ計算機株式会社 電子楽器
US5319151A (en) * 1988-12-29 1994-06-07 Casio Computer Co., Ltd. Data processing apparatus outputting waveform data in a certain interval
US5200564A (en) * 1990-06-29 1993-04-06 Casio Computer Co., Ltd. Digital information processing apparatus with multiple CPUs
US5584034A (en) * 1990-06-29 1996-12-10 Casio Computer Co., Ltd. Apparatus for executing respective portions of a process by main and sub CPUS
US5185710A (en) * 1991-12-26 1993-02-09 Kokusai Electric Co., Ltd. Quaternary-level waveform generator
US5181182A (en) * 1991-12-26 1993-01-19 Kokusai Electric Co., Ltd. Multi-level band-restricted waveform generator
US5418321A (en) * 1992-12-15 1995-05-23 Commodore Electronics, Limited Audio channel system for providing an analog signal corresponding to a sound waveform in a computer system
US5563815A (en) * 1993-08-30 1996-10-08 Fostex Research & Development, Inc. Digital tone oscillator for certain exact frequencies and method for generating tones
JP3703083B2 (ja) * 2001-01-10 2005-10-05 松下電器産業株式会社 波形発生装置

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB1499025A (en) * 1974-05-31 1978-01-25 Nippon Musical Instruments Mfg Electronic musical instrument
US4138915A (en) * 1976-03-05 1979-02-13 Nippon Gakki Seizo Kabushiki Kaisha Electronic musical instrument producing tones by variably mixing different waveshapes

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3610805A (en) * 1969-10-30 1971-10-05 North American Rockwell Attack and decay system for a digital electronic organ
US3633017A (en) * 1970-01-07 1972-01-04 Sperry Rand Corp Digital waveform generator
US3809789A (en) * 1972-12-13 1974-05-07 Nippon Musical Instruments Mfg Computor organ using harmonic limiting
JPS5246088B2 (de) * 1973-04-13 1977-11-21
JPS5441410B2 (de) * 1974-09-25 1979-12-08
JPS5932799B2 (ja) * 1975-10-06 1984-08-10 ヤマハ株式会社 電子楽器
JPS6034759B2 (ja) * 1976-07-02 1985-08-10 株式会社河合楽器製作所 電子楽器の鍵盤回路
JPS5312172A (en) * 1976-07-19 1978-02-03 Nippon Kokan Kk <Nkk> Process for treating refuse sewage water
US4176577A (en) * 1976-10-30 1979-12-04 Nippon Gakki Seizo Kabushiki Kaisha Electronic musical instrument of waveshape memory reading type
JPS5839336B2 (ja) * 1976-12-22 1983-08-29 株式会社日立製作所 自動制御系のデイジタル処理方式
JPS5919356B2 (ja) * 1977-10-26 1984-05-04 ヤマハ株式会社 電子楽器
JPS5919355B2 (ja) * 1977-10-26 1984-05-04 ヤマハ株式会社 電子楽器
JPS6029959B2 (ja) * 1977-11-08 1985-07-13 ヤマハ株式会社 電子楽器

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB1499025A (en) * 1974-05-31 1978-01-25 Nippon Musical Instruments Mfg Electronic musical instrument
US4138915A (en) * 1976-03-05 1979-02-13 Nippon Gakki Seizo Kabushiki Kaisha Electronic musical instrument producing tones by variably mixing different waveshapes

Also Published As

Publication number Publication date
US4338674A (en) 1982-07-06
JPS55134898A (en) 1980-10-21
NL8002055A (nl) 1980-10-07
FR2453460A1 (fr) 1980-10-31
FR2453460B1 (fr) 1985-09-13
GB2047999A (en) 1980-12-03
AU538059B2 (en) 1984-07-26
GB2047999B (en) 1982-11-10
AU5709580A (en) 1980-10-09
CA1130922A (en) 1982-08-31

Similar Documents

Publication Publication Date Title
DE3013250A1 (de) Digitalsignalgenerator
DE3003385C2 (de) Hüllkurvenschaltung für ein elektronisches Musikinstrument
DE3177313T2 (de) Elektronisches Musikinstrument
DE2149104C3 (de) Verfahren zur Erzeugung elektrischer Schwingungen
DE3587423T2 (de) Tonerzeugende Vorrichtung für ein elektronisches Musikinstrument.
DE2431161C2 (de) Tonerzeugungseinrichtung für ein elektronisches Musikinstrument
DE2362037B2 (de) Elektronisches Tastenmusikinstrument
DE2826018C2 (de) Wellengenerator
DE2264127C2 (de) Frequenzteiler
DE2920298A1 (de) Binaere interpolatorschaltung fuer ein elektronisches musikinstrument
DE2404431A1 (de) Elektronisches musikinstrument
DE3303308C2 (de) Stimmsteuereinrichtung für ein elektronisches Musikinstrument
DE2617573A1 (de) Elektronisches musikinstrument
DE1772991C3 (de) Verfahren zum Erzeugen von Tönen einer wohltemperierten Tonleiter
DE2643571C2 (de) Elektronisches Musikinstrument
DE2828919C2 (de) Schaltungsanordnung für ein polyphones elektronisches Musikinstrument
DE2638820A1 (de) Elektronisches musikinstrument
DE2830482A1 (de) Elektronischer tongenerator
DE3518821C2 (de)
EP0036074B1 (de) Syntheseschaltung für periodische Signale, insbesondere als Teil eines Musikinstruments
DE3147534C2 (de) Elektrischer Musiktongenerator
DE2748422C2 (de) Polyphones elektronisches Musikinstrument
DE2834231A1 (de) Verfahren zur selbsttaetigen gleichlaufeinstellung zwischen vor- und oszillatorkreis in einem ueberlagerungsempfaenger und schaltungsanordnung zur durchfuehrung dieses verfahrens
DE2853209A1 (de) Elektronisches musikinstrument zur musiktonbildung durch wiederholtes erzeugen von musikton-wellenformelementen
DE2901969A1 (de) Elektronisches musikinstrument mit einer einrichtung zur erzeugung variabler impulse

Legal Events

Date Code Title Description
8110 Request for examination paragraph 44
8131 Rejection