(19)
(11) EP 0 126 962 A2

(12) EUROPÄISCHE PATENTANMELDUNG

(43) Veröffentlichungstag:
05.12.1984  Patentblatt  1984/49

(21) Anmeldenummer: 84104525.5

(22) Anmeldetag:  21.04.1984
(51) Internationale Patentklassifikation (IPC)3G10H 7/00
(84) Benannte Vertragsstaaten:
AT BE CH DE FR GB IT LI LU NL SE

(30) Priorität: 21.05.1983 DE 3318667

(71) Anmelder: Franz, Reinhard
D-56281 Emmelshausen (DE)

(72) Erfinder:
  • Franz, Reinhard
    D-5401 Emmelshausen (DE)
  • Dittmar, Wilfried, Dipl.-Ing.
    D-5401 Halsenbach (DE)
  • Scheidegger, Christian, Dipl.-Phys.
    CH-9470 Buchs (CH)
  • Fröhlich, Roland, Dipl.-Math.
    D-5449 Leiningen (DE)

(74) Vertreter: Knoblauch, Ulrich, Dr.-Ing., Patentanwälte Dr. Knoblauch 
Kühhornshofweg 10
D-60320 Frankfurt
D-60320 Frankfurt (DE)


(56) Entgegenhaltungen: : 
   
       


    (54) Elektronisches Tastenmusikinstrument und Verfahren zu dessen Betrieb


    (57) Ein elektronisches Tastenmusikinstrument wird durch einen Hauptsystem-Rechner in Abhängigkeit von Eingabeelementen gesteuert. Ein Stimmenmodul (VI) besitzt ein Untersystem (6) mit einem Untersystem-Bus (UB) und einem Speicher (URAM) und Mikroprozessor (UCPU) aufweisenden Untersystem-Rechner (UMC). Zum Datenaustausch zwischen Haupt- und Untersystem ist ein Bus-Schalter (BS) vorgesehen, der den Untersystem-Speicher (URAM) abwechselnd mit dem Hauptsystem-Bus (HB) und dem Untersystem-Bus (UB) verbindet. Dies erlaubt einen "real time-" Datenaustausch zwischen Hauptsystem und Untersystem.




    Beschreibung


    [0001] Die Erfindung bezieht sich auf ein elektronisches Tastenmusikinstrument mit Eingabeelementen, wie Tonauslösetasten und digitalen und/oder analogen Bedienelementen, mit einem Hauptsystem, das einen Daten-, Adreß- und Steuerleitungen aufweisenden Hauptsystem-Bus und einen Speicher und Mikroprozessor aufweisenden Hauptsystem-Rechner besitzt, und mit mindestens einem Stimmenmodul, das über den Hauptsystem-Bus mit dem Hauptsystem-Rechner verbunden ist und aus von ihm in Abhängigkeit von den betätigten Eingabeelementen zugeführten Parametern Tonsignale formt, und auf ein Verfahren zum Betrieb eines solchen elektronischen Tastenmusikinstruments.

    [0002] Bei einem bekannten elektronischen Tastenmusikinstrument dieser Art erzeugt jeder Stimmenmodul das Tonsignal einer Stimme, indem dieses Signal punktweise aus gespeicherten Digitalwerten zusammengesetzt wird. Diese Digitalwerte sind im Hauptsystem-Datenspeicher als Tabelle oder aufgrund einer Berechnung durch den Hauptsystem-Rechner abgelegt. Irgendwelche Änderungen der Eingabedaten führen praktisch sofort zu einer Änderung des Speicherinhalts und damit zu einer Änderung des Tonsignals. Wenn aber mehrere Stimmen vorhanden sind, wird der Datenspeicher sehr groß und die Arbeitsgeschwindigkeit des Mikroprozessors reicht nicht mehr aus, um alle Stimmen akustisch einwandfrei zu erzeugen.

    [0003] Der Erfindung liegt die Aufgabe zugrunde, ein elektronisches Tastenmusikinstrument der eingangs beschriebenen Art anzugeben, das auch beim Vorhandensein von mehreren Stimmen oder Tonsignalen einwandfrei arbeitet, trotzdem aber auf Änderungen der Eingabedaten sofort reagiert.

    [0004] Diese Aufgabe wird erfindungsgemäß dadurch gelöst, daß der Stimmenmodul ein Untersystem mit einem ebenfalls Daten-, Adreß- und Steuerleitungen aufweisenden Untersystem-Bus und mit einem Speicher und Mikroprozessor aufweisenden Untersystem-Rechner besitzt und daß zum Datenaustausch zwischen Haupt- und Untersystem ein Bus-Schalter vorgesehen ist, der den Untersystem-Speicher abwechselnd mit dem Hauptsystem-Bus und dem Untersystem-Bus verbindet.

    [0005] Durch die Verwendung des Untersystem-Rechners wird der Hauptsystem-Rechner wirksam entlastet. Der Hauptsystem-Rechner braucht lediglich bei einer Änderung der Eingabedaten neue Parameter für die betreffende Stimme zu berechnen und über den Bus-Schalter in den Untersystem-Speicher zu übertragen. Alsdann steht die Kapazität des Hauptsystem-Rechners für andere Aufgaben zur Verfügung. Er kann beispielsweise Peripherie-Baugruppen zyklisch abfragen. Der Mehraufwand für den Untersystem-Rechner ist gering, da sowohl an den Mikroprozessor als auch an den Speicher keine hohen Anforderungen gestellt werden müssen. Der den Untersystem-Speicher abwechselnd mit dem Hauptsystem- Bus und dem Untersystem-Bus verbindende Bus-Schalter ermöglicht einen praktisch kontinuierlichen Datenaustausch zwischen Haupt- und Untersystem, so daß jede im Hauptsystem verarbeitete Änderung der Eingabedaten im "real time-Verfahren" in das Untersystem übertragen wird.

    [0006] Günstig ist es, wenn der Bus-Schalter für bidirektionalen Datenaustausch ausgelegt ist. Das Hauptsystem kann daher Rückmeldesignale vom Stimmenmodul empfangen, was für manche Betriebsweisen zweckmäßig ist.

    [0007] Bei einer bevorzugten Ausführungsform sind der Bus-Schalter und der Untersystem-Speicher mit der doppelten Taktfrequenz des Hauptsystem-Mikroprozessors betreibbar. Sowohl der Hauptsystem-Bus als auch der Untersystem-Bus stehen daher in jedem Takt des Hauptsystem-Mikroprozessors mit dem Untersystem-Speicher in Verbindung. Das bedeutet, daß in jedem Zyklus des Hauptsystem-Mikropro- zessors ein Datenaustausch erfolgen kann. Dies bereitet auch technisch keine Schwierigkeiten, weil es handels- übliche Schalter und Speicher gibt, die eine wesentlich höhere Arbeitsgeschwindigkeit als ein Mikroprozessor haben.

    [0008] Der weiteren Vereinfachung dient es, wenn der Untersystem-Speicher ausschließlich aus RAM-Speicherbereichen besteht. Es werden dann nicht nur Parameter für die Tonsignale vom Hauptsystem auf das Untersystem übertragen sondern auch das jeweilige Steuerprogramm. Dies erhöht die Flexibilität des Instruments.

    [0009] Mit besonderem Vorteil hat der Stimmenmodul Ausgänge für mehrere von demselben Untersystem-Rechner abhängige Stimmen. Hierdurch wird der Aufwand noch weiter verringert, weil nicht für jede Stimme ein Untersystem-Rechner benötigt wird.

    [0010] Ein Verfahren zum Betrieb eines solchen elektronischen Tastenmusikinstruments ist erfindungsgemäß dadurch gekennzeichnet, daß Hauptsystem-Mikroprozessor und Untersystem-Mikroprozessor mit gleicher Taktfrequenz, jedoch um eine halbe Zykluszeit versetzt, betrieben werden und daß der Bus-Schalter den Untersystem-Speicher während der zweiten Hälfte der Zykluszeit des Hauptsystem-Mikroprozessors mit dem Hauptsystem-Bus und während der zweiten Hälfte der Zykluszeit des Untersystem-Mikroprozessors mit dem Untersystem-Bus verbindet. Durch die zeitlich versetzte Betriebsweise der beiden Mikroprozessoren erhält man die Möglichkeit, daß das Untersystem Daten des Hauptsystems mit einer Verzögerung von nur einer halben Zykluszeit verarbeiten kann.

    [0011] Aufgrund der Tatsache, daß wegen des bidirektionalen Datenaustauschs auch Rückmeldungen möglich sind, empfiehlt sich eine Betriebsweise derart, daß für jede Stimme vom Untersystem-Rechner ein Belegsignal, dessen Größe der augenblicklichen Bedeutung der Stimme im Gesamtklang entspricht, in den Untersystem-Speicher geschrieben wird und der Hauptsystem-Rechner im Bedarfsfall alle Belegsignale vergleicht und die Stimme mit dem kleinsten Belegsignal stoppt. Wenn der Spieler eine neue Stimme anfordert, aber noch alle Stimmenmodule besetzt sind, wird diejenige Stimme gestoppt, die im Gesamtklang die geringste Bedeutung hat und deren Fortfall daher am wenigsten auffällt. An die Stelle der gestoppten Stimme kann dann die neue Stimme treten.

    [0012] Im einfachsten Fall ist das Belegsignal von der Lautstärke des Tonsignals der Stimme abgeleitet.

    [0013] Günstig ist es ferner, wenn alle Informationen, die zur Erzeugung einer Stimme erforderlich sind, jeweils nach Beginn der Betätigung einer Tonauslösetaste vom Hauptsystem-Rechner über den Bus-Schalter in den Untersystem-Speicher übertragen werden. Auf diese Weise lassen sich die Stimmenausgänge der Untersysteme im Augenblick der Tonauslösung der betreffenden Tonauslösetaste, gleichgültig, ob in Obermanual, Untermanual, Pedal oder i Begleitautomatik, einschließlich der momentanen Registrierung zuordnen, so daß eine optimale Ausnutzung der Stimmen möglich ist. Weiterhin kann nacheinander geschickten Tasten jeweils ein neuer Klang zugeordnet werden.

    [0014] Ferner kann man während der Stimmabgabe durch das Untersystem die Stimme ändernde Parameter vom Hauptsystem-Rechner über den Bus-Schalter in den Untersystem-Speicher nachführen. Während der Tonausgabe können daher auch Lautstärke-, Frequenz- und andere Informationen vom Bediener nachgeführt werden.

    [0015] Die Erfindung wird nachstehend anhand in der Zeichnung dargestellter, bevorzugter Ausführungsformen näher erläutert. Es zeigen:

    Fig. 1 ein Blockschaltbild des erfindungsgemäßen Tastenmusikinstruments,

    Fig. 2 das Blockschaltbild eines Stimmenmoduls,

    Fig. 3 ein Zeitdiagramm der Bus-Schalter-Arbeitsweise

    Fig. 4 das Blockschaltbild eines weiteren Stimmenmoduls und

    Fig. 5 das Blockschaltbild eines abgewandelten Stimmenmoduls.



    [0016] In Fig. 1 ist ein elektronisches Musikinstrument in der Form einer Orgel veranschaulicht. Sie weist ein Peripherie-Teil 1 auf, dessen Baugruppen sich im wesentlichen an der Vorderseite der Orgel befinden, und einen Funktions-Teil 2, der im wesentlichen im Innern des Orgelgehäuses angeordnet ist. Der Peripherie-Teil 1 weist in diesem Ausführungsbeispiel die folgenden Baugruppen auf:

    - Ein Bedien- und Anzeigefeld PAN1, das Bedientasten und zugehörige Anzeigeelemente für den Orgelbetrieb aufweist, z.B. Registerschalter zum Ein- und Ausschalten von Filtergruppen, Effekten, Tonkanälen u.dgl.

    - Ein Bedien- und Anzeigefeld PAN2, das digitale Eingabeelemente in der Form von Bedientastern und zugehörige Anzeigeelemente aufweist, welche einem eingebauten Rhythmusgerät und Begleitautomaten zugeordnet sind.

    - Ein Bedienfeld POT, das analoge, stetig veränderbare Bedienelemente, z.B. in der Form von Potentiometern aufweist, beispielsweise Sinus-Zugriegel-Lautstärke-Einsteller, Tonhöhenregler u.dgl.

    - Ein Obermanual OM mit Tonauslösetasten.

    - Ein Untermanual UM mit Tonauslösetasten.

    - Ein Pedal PD mit Tonauslösetasten.



    [0017] Die vorgenannten Baugruppen sind über einen Peripherie-Bus PB mit einem Hauptsystem 3 verbunden, das einen Rechner MC besitzt, welcher einen Mikroprozessor CPU, einen Programmspeicher ROM und einen Datenspeicher RAM enthält. Mit Hilfe des Hauptsystem-Rechners werden die Zustände der aus den Tonauslösetasten, den digitalen und den analogen Bedienelementen bestehenden Eingabeelementen zyklisch abgefragt und im Datenspeicher RAM festgehalten. Der Hauptsystem-Rechner MC steuert auch die Anzeigeelemente.

    [0018] Zum Hauptsystem 3 gehört ein Hauptsystem-Bus HB, der wie der Peripherie-Bus Adreß-, Daten- und Steuerleitungen aufweist. An diesen Hauptsystem-Bus sind die nachstehenden Baugruppen des Funktions-Teils 2 angeschlossen:

    - Eine Stimmenerzeugungs-Baugruppe 4 mit mehreren Stimmenmodulen V1, V2 und V3, die beim Betätigen einer Tonauslösetaste in Abhängigkeit von den betätigten Bedienelementen unter Steuerung durch den Rechner MC Tonsignale zu erzeugen vermag, die an einen Audio-Bus ausgebbar sind.

    - Eine Effekterzeugungs-Baugruppe 5 mit mehreren Effektmodulen E1, E2 und E3, welche der Nachbehandlung der von den Stimmenmodulen V1-V3 erzeugten Tonsignale dienen.

    - Eine Schlagzeug-Baugruppe D, die Schlagzeug-Audio-Signale auf den Audio-Bus AB ausgibt.

    - Eine Schnittstellen-Baugruppe IF, die eine bidirektionale Verbindung zwischen Hauptsystem-Bus und Audio-Bus ermöglicht.

    - Eine Verstärker-Baugruppe A, welche mehrere Lautsprecher L1 und L2 sowie einen Kopfhöreranschluß KH versorgt.



    [0019] Ferner ist mit dem Audio-Bus AB eine Anschluß-Vorrichtung C verbunden, die den Anschluß von Tonträgern, z.B. von Kassetten, ermöglicht.

    [0020] Fig. 2 zeigt den Aufbau eines Stimmenmoduls V1, der gleichzeitig vier Stimmen zu erzeugen vermag, wobei jede Stimme aus zwei Tonkurven und zwei Hüllkurven gebildet wird. Demzufolge hat der Stimmenmodul V1 acht Ausgangsregister AR. Zur Stimmenerzeugung dient ein Untersystem 6 mit einem Untersystem-Rechner UMC, der einen Untersystem-Speicher URAM und einen Untersystem-Mikroprozessor UCPU aufweist. Ein Bus-Schalter BS vermag den zu dem Untersystem-Speicher URAM führenden Speicher-Bus SB abwechselnd mit dem Hauptsystem-Bus HB und einem Untersystem-Bus UB zu verbinden. Zu diesem Zweck ist die Taktgeschwindigkeit des Bus-Schalters BS doppelt so groß wie diejenige vom Hauptsystem-Rechner MC und Untersystem-Rechner UMC. Auf diese Weise kann sowohl das Untersystem 6 Daten aus dem Hauptsystem 3 als auch das Hauptsystem Daten aus dem Untersystem übernehmen. In den Untersystem-Speicher URAM werden vom Hauptsystem sowohl das Programm für das Untersystem als auch Parameter für die vier Stimmen geladen.

    [0021] Der Untersystem-Bus UB verbindet den Untersystem-Rechner UCPU, einen Mehrfach-Zeitgeber T, eine Speicherzugriffssteuerschaltung DMAC, einen 12-bit-Digital-Analog-Wandler DAC1, einen 8-Kanal-Multiplexer MUX1 mit acht Hüllkurvenregistern SH in der Form von Abtast- und Haltegliedern, einen doppelt gepufferten 8-Kanal-8-bit-Digital-Analog-Wandler DAC2 und eine als Kreuzpunkt-Matrix CPM ausgelegte Anordnung von Stimmenausgangsschaltern miteinander. Außerdem gibt es eine Ablaufsteuerschaltung ALO. Der Untersystem-Mikroprozessor UCPU dient der Initialisierung, der Berechnung der Hüllkurven sowie der Programmierung des Mehrfach-Zeitgebers T, der Speicherzugriffssteuerschaltung DMAC und der Kreuzpunkt-Matrix CPM. Der Mehrfach-Zeitgeber T bestimmt die Frequenz der vier Stimmen und die Wiederholfrequenz der Hüllkurvenberechnung. Er gibt daher vier voneinander unabhängige Zeitsignale TO, nämlich für jede Stimme eine Folge von Zeitsignalen mit der vielfachen Frequenz der Stimmen, ab. Die Speicherzugriffssteuerschaltung DMAC bewirkt ein wiederholtes Auslesen der Tonkurven-Digitalwerte für die vier Stimmen aus dem Untersystem-Speicher URAM. Im Digital-Analog-Wandler DAC1 erfolgt die Digital-Analog-Wandlung der Hüllkurven der vier Stimmen, deren Einzelwerte anschließend über eine Leitung HK und den Multiplexer MUX1 auf die Hüllkurven-Register SH gegeben werden. Über den Hüllkurven-Bus HKB werden daher acht verschiedene Hüllkurvenspannungen an den Digital-Analog-Wandler DAC2 gelegt. Dieser Wandler empfängt mit Hilfe der Speicherzugriffsschaltung DMAC einzelne Werte aus einer im Datenspeicher URAM abgelegten Tabelle zur Erzeugung von acht Tonkurven. Diese Werte werden in acht Kanälen über einen Zwischenspeicher ZS in digitale Ausgangsregister AR übertragen, mit der jeweiligen Hüllkurvenspannung multipliziert und dann als analoge Tonsignale auf die entsprechende Leitung des 8-Kanal-Tonsignal-Bus TSB geleitet. Mittels der Kreuzpunkt-Matrix CPM werden die Tonsignale auf eine oder mehrere Leitungen des Audio-Bus AB geschaltet oder von diesen Leitungen abgeschaltet.

    [0022] Hiermit ergibt sich im Betrieb der folgende Ablauf:

    Beim Initialisieren (Einschalten) wird mittels des Hauptsystem-Bus HB das Programm für die Untersystem-Mikroprozessor UCPU über den Bus-Schalter BS in die Untersystem-Speicher URAM geladen. Dieses Programm ist leicht änderbar, da es jeweils vom Hauptsystem bestimmt wird. Durch Wegschalten eines Resetsignals wird der Untersystem-Mikroprozessor UCPU gestartet und initialisiert die Baugruppen des Untersystems, wie Zeitgeber T, Kreuzpunkt-Matrix CPM, Speicherzugriffssteuerschaltung DMAC usw.



    [0023] Sobald ein beliebiger Ton erklingen soll, gleichgültig ob er durch eine Tonauslösetaste des Obermanuals OM, des Untermanuals UM oder des Pedals PD oder von einer Begleitautomatik ausgelöst ist, schreibt das Hauptsystem über den Bus-Schalter BS Parameter (beispielsweise etwa 170 Bytes) in den Untersystem-Speicher URAM und gibt dann ein Startkommando in diesen Speicher. Der Untersystem-Mikroprozessor UCPU kann dieses Startkommando nach dem nächsten Umschalten des Bus-Schalters lesen und erzeugt darauf die entsprechende Stimme, indem er den Zeitgeber T setzt, die Speicherzugriffssteuerschaltung DMAC aktiviert, die Kreuzpunkt-Matrix CPM auf den gewünschten Audio-Kanal durchschaltet sowie Hüllkurven berechnet und ausgibt.

    [0024] Der Zeitgeber T gibt für die gewählte Stimme Zeitsignale TO mit einem Vielfachen der gewünschten Frequenz an die Ablaufsteuerschaltung ALO ab. Diese gibt einen Übertragungsbefehl DREQ an die Speicherzugriffssteuerschaltung DMAC, die für die gewählte Stimme Digitalwerte einer Tonkurve aus dem Untersystem-Speicher URAM abruft. Sobald dies erfolgt, wird durch ein Bestätigungssignal DACK die Ablaufsteuerschaltung ALO angesteuert, um ein Schreibsignal WR an den Zwischenspeicher ZS des zugehörigen Kanals des Digital-Analog-Wandlers DAC2 abzugeben. Eine Vorrangschaltung in der Ablaufsteuerschaltung ALO sorgt dafür, daß der zur zweiten Tonkurve der gewählten Stimme gehörende Übertragungsbefehl DREQ und der entsprechende Schreibbefehl WR um einen Arbeitszyklus verzögert wird. Die zum gleichen Zeitsignal gehörenden Digitalwerte werden daher zeitlich versetzt in den Zwischenspeicher der entsprechenden Kanäle des Digital-Analog-Wandlers DAC2 eingeschrieben.

    [0025] Dem Zwischenspeicher ZS ist ein digitales Ausgangsregister AR nachgeschaltet, in welches die Zwischenspeicherwerte beim Auftreten eines Ablagebefehls XFER übertragen werden. Dieser Ablagebefehl tritt zeitgleich mit dem Zeitsignal TO auf. Die zeitlich versetzt eingelesenen Daten werden daher zeitgleich vom Ausgangsregister ZR her auf den Tonsignal-Bus TSB analog umgesetzt und abgegeben. Die gleiche zeitliche Versetzung der Übertragungsbefehle DREQ erfolgt auch, wenn die Zeitsignale zweier Stimmen gleichzeitig auftreten sollten.

    [0026] Der Digital-Analog-Wandler DAC1 setzt die Hüllkurven für die verschiedenen Tonsignale aus im Untersystem berechneten Digitalwerten zusammen. Da dies im Zeitmultiplex-Verfahren erfolgt, werden die über den einen Kanal HK abgegebenen Analogwerte mit dem Multiplexer MUX1 auf die Hüllkurvenregister SH verteilt. Die so gebildeten Hüllkurvenspannungen dienen als Multiplikationsfaktor für die vom digitalen Ausgangsregister AR her zugeführten Tonkurvenwerte.

    [0027] Da für jede Stimme zwei Hüllkurven und zwei Tonkurven zur Verfügung stehen, kann man aus den jeweils zwei Tonsignal-Komponenten äußerst komplizierte Klänge erzeugen. Beispielsweise kann gleichzeitig Sinus + Perkussion oder Piano + Streicher erzeugt werden. Es können aber auch veränderliche Klänge hervorgerufen werden, beispielsweise eine Gitarre mit Saitenton + angezupftem Plektrum oder bei einer Panflöte Sinuston + Rauschen oder eine Schwebung durch gegenläufige Amplitutenmodulation der Komponenten.

    [0028] Wenn sämtliche Stimmen aller Stimmenmodule belegt sind, aber eine neue Stimme erklingen soll, muß eine der bisher laufenden Stimmen gestoppt werden. Zu diesem Zweck schreibt der Untersystem-Mikroprozessor UCPU für jede Stimme ein Belegsignal in den Untersystem-Speicher URAM, wo ihn der Hauptsystem-Mikroprozessor CPU abrufen kann. Das Belegsignal entspricht der momentanen Lautstärke der Stimme und gibt daher ein Maß für die Bedeutung der Stimme im Gesamtklang. Falls der Ton perkussiv ist, klingt er von selber aus und das Untersystem meldet dies mit dem Belegsignal Null. Durch Abfragen der Belegsignale aller Untersysteme kann das Hauptsystem, wenn eine neue Stimme ausgegeben werden soll, einen nicht vollständig belegten Stimmenmodul suchen oder wenn alle Stimmen im Moment belegt sind, diejenige mit dem niedrigsten Belegsignal suchen und für diese einen Abbruchbefehl geben. Der Untersystem-Mikroprozessor UCPU liest diesen Befehl und schaltet die Stimme aus, worauf das Belegsignal auf Null geht. Jetzt kann das Hauptsystem die neue Stimme starten.

    [0029] Wenn das Tonsignal ausgeschaltet werden soll, prüft der Hauptsystem-Rechner, ob dieses Tonsignal im Untersystem noch läuft, also nicht perkussiv ist und noch nicht gestoppt wurde oder bei perkussivem Klang noch nicht ganz ausgeklungen ist. Gegebenenfalls schreibt er einen Freigabebefehl für diese Stimme in den Untersystem-Speicher URAM. Das Untersystem geht dann bei der Hüllkurvenberechnung auf die Freigabe-Phase, die je nach Hüllkurvenart kürzer oder länger ist und meldet sich mit dem Belegsignal Null dann frei, wenn die Hüllkurve ganz ausgeklungen ist.

    [0030] Daneben führt das Hauptsystem auf bestimmten Adressen den Untersystem-Speichern URAM die zu den im Moment erzeugten Stimmen gehörigen Lautstärken, Slalomeinstellungen und womöglich andere während der Tondauer veränderliche Parameter nach.

    [0031] Die als Kreuzpunkt-Matrix CPM angeordneten Stimmenausgangsschalter dienen dazu, die Stimmen je nach Art auf bestimmte Nachbehandlungskanäle zu schalten, so daß eine Nachbehaltung in den Effekt-Baugruppen El - E3 erfolgen kann, oder zur Unterdrückung von Störsignalen ganz von den Audio-Bus-Leitungen wegzuschalten, wenn die Stimme nicht belegt ist.

    [0032] Die Betriebsweise des Bus-Schalters,BS ist in Fig. 3 veranschaulicht. In der obersten Zeile sind die Zyklen N, N+1, N+2 ... des Hauptsystem-Mikroprozessors CPV angegeben, in der zweiten Zeile die um die halbe Zyklusdauer versetzten Zyklen i, i+1, i+2 ... des Untersystem-Mikroprozessors UCPU. In der dritten Zeile ist das Schaltsignal bzw. der Schaltzustand des Bus-Schalters BS gezeigt. Die vierte Zeile gibt an, wielange der Speicher-Bus SB jeweils mit dem Hauptsystem-Bus HB und dem Untersystem- Bus UB in Verbindung steht. Der Speicher-Bus SB wird immer in der zweiten Hälfte des jeweiligen Rechnerzyklus an den zugehörigen Bus des Hauptsystems bzw. des Untersystems geschaltet. Dadurch kann jeder Mikroprozessor CPU und UCPU den Untersystem-Speicher URAM lesen und in ihn schreiben, als wäre er normal auf den zugehörigen Bus geschaltet. Da der Untersystem-Speicher URAM schneller arbeitet als die Mikroprozessoren, ist es zulässig, daß er nur über einen Teil der Zykluszeit mit dem jeweiligen Mikroprozessor in Verbindung steht.

    [0033] Bei der Ausführungsform nach Fig. 4 werden für gleiche Teile dieselben Benennungen wie in Fig. 1 benutzt. Unterschiedlich ist im wesentlichen, daß die Ablaufsteuerschaltung ALO direkt auf den Untersystem-Mikroprozessor UCPU einwirkt und beim Auftreten des Übertragungsbefehls DREQ das Hintergrundprogramm dieses Mikroprozessors unterbricht und ein Übergabeprogramm startet. Außerdem werden Tonkurven und Hüllkurven nicht getrennt nachgebildet sondern die Digitalwerte für das ausgehende Tonsignal rechnerisch ermittelt und in den l-Kanal-Digital-Analog-Wandler DAC3 gegeben. Die Ausgänge des nachgeschalteten Multiplexers MUX2 können daher unmittelbar auf die Ausgangsregister AR gelegt werden, die über den Tonsignal-Bus TSB mit der Kreuzpunkt-Matrix CPM in Verbindung stehen. Dem Ausgangsregister AR ist ein Zwischenspeicher ZS vorgeschaltet, der beim Auftreten des mit einem Zeitsignal TO übereinstimmenden Ablagebefehl XFER die Analogwerte der zur gleichen Stimme gehörenden Tonsignale gleichzeitig in das Ausgangsregister gibt, auch wenn sie zuvor nacheinander im Digital-Analog-Wandler DAC3 behandelt worden sein sollen.

    [0034] In Fig. 5 ist ein Stimmenmodul veranschaulicht, das lediglich für eine Stimme bestimmt ist. Hier werden wiederum die bereits aus Hüllkurve und Tonkurve zusammengesetzten Werte des Tonsignals berechnet und im Digital-Analog-Wandler DAC4 zu einem Tonsignal zusammengesetzt. Dieses kann mit einem Analog-Multiplexer MUX3 auf eine von mehreren Audio-Bus-Leitungen gegeben werden.

    [0035] Für alle Bauelemente, wie

    Hauptsystem-Mikroprozessor CPU

    Programmspeicher ROM

    Datenspeicher RAM

    Untersystem-Mikroprozessor UCPU

    Untersystem-Speicher URAM

    Bus-Schalter BS

    Zeitgeber T

    Speicherzugriffssteuerschalter DMAC

    Ablauf-Steuerschaltung ALO

    Multiplexer MUXI

    Multiplexer MUX2

    Multiplexer MUX 3

    Kreuzpunkt-Matrix CPM

    Digital-Analog-Wandler DAC1

    Digital-Analog-Wandler DAC2

    Digital-Analog-Wandler DAC3

    Digital-Analog-Wandler DAC4


    wurden handelsübliche Bauteile verwendet.


    Ansprüche

    1. Elektronisches Tastenmusikinstrument mit Eingabeelementen, wie Tonauslösetasten und digitalen und/oder analogen Bedienelementen, mit einem Hauptsystem, das einen Daten-, Adreß- und Steuerleitungen aufweisenden Hauptsystem-Bus und einen Speicher und Mikro- prozessor aufweisenden Hauptsystem-Rechner besitzt, und mit mindestens einem Stimmenmodul, der über den ! Hauptsystem-Bus mit dem Hauptsystem-Rechner verbunden ist und aus von ihm in Abhängigkeit von den betätigten Eingabeelementen zugeführten Parametern Tonsignale formt, dadurch gekennzeichnet, daß der Stimmenmodul (V1 - V3) ein Untersystem (6) mit einem ebenfalls Daten-, Adreß- und Steuerleitungen aufweisenden Untersystem-Bus (UB) und mit einem Speicher (URAM) und Mikroprozessor (UCPU) aufweisenden Untersystem-Rechner (UMC) besitzt und daß zum Datenaustausch zwischen Haupt- und Untersystem ein Bus-Schalter (BS) vorgese- hen ist, der den Untersystem- Speicher abwechselnd mit dem Hauptsystem-Bus (HB) und dem Untersystem-Bus (UB) verbindet.
     
    2. Tastenmusikinstrument nach Anspruch 1, dadurch gekennzeichnet, daß der Bus-Schalter (BS) für bidirektionalen Datenaustausch ausgelegt ist.
     
    3. Tastenmusikinstrument nach Anspruch 1 oder 2, dadurch gekennzeichnet, daß der Bus-Schalter (BS) und der Untersystem-Speicher (URAM) mit der doppelten Taktfrequenz des Hauptsystem-Mikroprozessors (CPV) betreibbar sind.
     
    4. Tastenmusikinstrument nach einem der Ansprüche 1 bis 3, dadurch gekennzeichnet, daß der Untersystem-Speicher (URAM) ausschließlich aus RAM-Speicherbereichen besteht.
     
    5. Tastenmusikinstrument nach einem der Ansprüche 1 bis 4, dadurch gekennzeichnet, daß der Stimmenmodul (V1) Ausgänge für mehrere von demselben Untersystem-Rechner (UMC) abhängige Stimmen hat.
     
    6. Verfahren zum Betrieb eines elektronischen Tastenmusikinstruments nach einem der Ansprüche 1 bis 5, dadurch gekennzeichnet, daß Hauptsystem-Mikroprozessor und Untersystem-Mikroprozessor mit gleicher Taktfrequenz, jedoch um eine halbe Zykluszeit versetzt, betrieben werden und daß der Bus-Schalter den Untersystem-Speicher während der zweiten Hälfte der Zykluszeit des Hauptsystem-Mikroprozessors mit dem Hauptsystem-Bus und während der zweiten Hälfte der Zykluszeit des Untersystem-Mikroprozessors mit dem Untersystem-Bus verbindet.
     
    7. Verfahren zum Betrieb eines elektronischen Tastenmusikinstruments nach einem der Ansprüche 2 bis 6, dadurch gekennzeichnet, daß für jede Stimme vom zugehörigen Untersystem-Rechner ein Belegsignal, dessen Größe der augenblicklichen Bedeutung der Stimme im Gesamtklang entspricht, in den Untersystem-Speicher geschrieben wird und der Hauptsystem-Rechner im Bedarfsfall alle Belegsignale vergleicht und die Stimme mit dem kleinsten Belegsignal stoppt.
     
    8. Verfahren nach Anspruch 7, dadurch gekennzeichnet, daß das Belegsignal von der Lautstärke des Tonsignals der Stimme abgeleitet ist.
     
    9. Verfahren zum Betrieb eines elektronischen Tastenmusikinstruments nach einem der Ansprüche 1 bis 5, dadurch gekennzeichnet, daß alle Informationen, die zur Erzeugung einer Stimme erforderlich sind, jeweils nach Beginn der Betätigung einer Tonauslösetaste vom Hauptsystem-Rechner über den Bus-Schalter in den Untersystem-Rechner übertragen werden.
     
    10. Verfahren nach Anspruch 9, dadurch gekennzeichnet, daß während der Stimmenausgabe durch das Untersystem die Stimme ändernde Parameter vom Hauptsystem-Rechner über den Bus-Schalter in den Untersystem-Speicher nachführbar sind.
     




    Zeichnung