JP3010693B2 - Musical sound wave generator - Google Patents

Musical sound wave generator

Info

Publication number
JP3010693B2
JP3010693B2 JP2171216A JP17121690A JP3010693B2 JP 3010693 B2 JP3010693 B2 JP 3010693B2 JP 2171216 A JP2171216 A JP 2171216A JP 17121690 A JP17121690 A JP 17121690A JP 3010693 B2 JP3010693 B2 JP 3010693B2
Authority
JP
Japan
Prior art keywords
processing
data
sound source
address
program
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.)
Expired - Lifetime
Application number
JP2171216A
Other languages
Japanese (ja)
Other versions
JPH0458292A (en
Inventor
康祐 斯波
隆二 宇佐美
広一郎 太期
和夫 小倉
潤 細田
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.)
Casio Computer Co Ltd
Original Assignee
Casio Computer Co Ltd
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 Casio Computer Co Ltd filed Critical Casio Computer Co Ltd
Priority to JP2171216A priority Critical patent/JP3010693B2/en
Priority to EP91109115A priority patent/EP0463409B1/en
Priority to KR1019910009251A priority patent/KR950006029B1/en
Priority to DE69130688T priority patent/DE69130688T2/en
Publication of JPH0458292A publication Critical patent/JPH0458292A/en
Priority to US07/855,431 priority patent/US5319151A/en
Priority to US08/223,589 priority patent/US5726371A/en
Application granted granted Critical
Publication of JP3010693B2 publication Critical patent/JP3010693B2/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Landscapes

  • Electrophonic Musical Instruments (AREA)

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明は、楽音波形発生装置における音源処理方式に
関する。
Description: TECHNICAL FIELD The present invention relates to a sound source processing method in a musical tone waveform generator.

〔従来の技術〕[Conventional technology]

ディジタル信号処理技術とLSI処理技術の発達により
性能の良い様々な電子楽器が実現されている。特に、演
奏情報に基づいて生成される入力信号に変調を加えるこ
とにより様々に変調された波形を得て楽音波形として出
力する変調方式の楽音波形発生装置を有する電子楽器の
登場が、プロ・アマチュアを問わず音楽人口の大幅な増
加に貢献している。
Various electronic musical instruments with high performance have been realized by the development of digital signal processing technology and LSI processing technology. In particular, the emergence of an electronic musical instrument having a modulation type musical sound waveform generator that modulates an input signal generated based on performance information and obtains variously modulated waveforms and outputs the waveform as a musical sound waveform has been developed by professional amateurs. Regardless, it has contributed to a significant increase in the music population.

電子楽器の楽音波形発生装置は、大量かつ高速のディ
ジタル演算が必要なため、従来は、必要とする音源方式
に基づく楽音発生アルゴリズムと等価なアーキテクチャ
をハードウエアで実現した専用の音源回路によって構成
されている。このような音源回路により、変調方式に基
づく音源方式が実現される。
Since musical tone waveform generators for electronic musical instruments require a large amount of high-speed digital computation, they conventionally consist of a dedicated tone generator circuit that implements an equivalent hardware architecture of a tone generation algorithm based on the required tone generator system. ing. With such a sound source circuit, a sound source system based on a modulation system is realized.

上述のような音源回路は、いずれの音源方式のものも
その回路規模が大きい。LSI化した場合、変調用の波形
データ等を記憶するメモリ部分を除いても、汎用のデー
タ処理用のマイクロプロセッサの2倍程度の規模にな
る。その理由は、音源回路においては、各種演奏情報に
基づいて波形データをアクセスするための複雑なアドレ
ス制御が必要になるからである。また、音源生成処理の
過程で得られる中間的なデータを一時的に保持するため
のレジスタ等が、音源方式に対応したアーキテクチャで
随所に配置される必要があるためである。特に、変調方
式には楽音発生のアルゴリズムを様々に変更可能なもの
があり、それらに対応したハードウエア構成も必要とな
るからである。
The sound source circuits as described above have a large circuit scale in any of the sound source systems. In the case of an LSI, the size is about twice as large as that of a general-purpose data processing microprocessor even if a memory part for storing waveform data for modulation and the like is omitted. The reason is that in the tone generator circuit, complicated address control for accessing waveform data based on various performance information is required. Further, a register for temporarily holding intermediate data obtained in the process of the sound source generation processing needs to be disposed everywhere in an architecture corresponding to the sound source system. In particular, there are modulation methods in which the tone generation algorithm can be changed in various ways, and a hardware configuration corresponding to them is also required.

〔発明が解決しようとする課題〕[Problems to be solved by the invention]

以上のように、従来の楽音波形発生装置は、音源方式
に対応した専用の音源回路によって構成されているた
め、ハードウエア規模が大きくなってしまい、LSIで実
現した場合におけるLSIチップ製造時の歩留り等の点に
おいて、製造段階でのコストアップを招き、楽音波形発
生装置の大型化を招いてしまうという問題点を有してい
る。
As described above, the conventional musical tone waveform generator is composed of a dedicated tone generator circuit compatible with the tone generator method, so the hardware scale becomes large, and the yield at the time of manufacturing an LSI chip in the case of realizing the LSI. In this respect, there is a problem that the cost is increased in the manufacturing stage and the musical tone waveform generator is increased in size.

また、音源方式を変更したい場合、ポリフォニック数
を変更したい場合等において、音源回路の大幅な変更を
余儀なくされ、開発段階でのコストアップを招いてしま
うという問題点を有している。
In addition, when changing the tone generator system or changing the number of polyphonics, there is a problem that the tone generator circuit must be largely changed, resulting in an increase in cost in the development stage.

更に、従来の楽音波形発生装置を電子機器として実現
するような場合には、演奏操作に対応する演奏情報から
音源回路で処理可能なデータを生成したり、他の楽器と
の演奏情報の通信を行ったりするための、マイクロプロ
セッサ等により構成される制御回路が必要となる。そし
て、このような制御回路においては、演奏情報を処理す
るための演奏情報処理プログラムのほかに、音源回路に
演奏情報に対応したデータを供給するための音源回路に
対応した音源制御プログラムが必要となり、しかも、そ
の両方のプログラムを同期させて動作させる必要があ
る。このようなプログラムの複雑性から、その開発にお
いて多大なコストアップを招いてしまうという問題点を
有している。
Further, when the conventional musical sound waveform generator is realized as an electronic device, data that can be processed by a tone generator circuit is generated from performance information corresponding to a performance operation, and communication of performance information with another musical instrument is performed. For example, a control circuit constituted by a microprocessor or the like is required. In such a control circuit, in addition to a performance information processing program for processing performance information, a sound source control program corresponding to a tone generator circuit for supplying data corresponding to the performance information to the tone generator circuit is required. In addition, it is necessary to operate both programs in synchronization. Due to the complexity of such a program, there is a problem that the cost is greatly increased in its development.

その一方、近年においては、汎用のデータ処理を行う
ための高性能なマイクロプロセッサが多く実現されてお
り、このようなマイクロプロセッサを使用して音源処理
をソフト的に行う楽音波形発生装置を実現させることも
考えられる。しかし、演奏情報を処理するための演奏情
報処理プログラムと、その演奏情報に基づいて音源処理
を実行するための音源処理プログラムとを同期して動作
させるための技術が知られていない。特に、音源方式に
より音源処理プログラムにおける処理時間が変化するた
め、生成された楽音データをD/A変換器へ出力するため
の複雑なタイミング制御プログラムが必要となってしま
う。このように、音源処理を単純にソフト的に行うだけ
では、処理プログラムが非常に複雑になり、処理速度及
びプログラム容量の面から変調方式のような高度な音源
方式の処理ができない。
On the other hand, in recent years, many high-performance microprocessors for performing general-purpose data processing have been realized, and a musical sound waveform generator that performs sound source processing in software using such a microprocessor is realized. It is also possible. However, a technique for synchronizing a performance information processing program for processing performance information with a sound source processing program for executing sound source processing based on the performance information has not been known. In particular, since the processing time in the sound source processing program changes depending on the sound source system, a complicated timing control program for outputting the generated musical sound data to the D / A converter is required. As described above, if the sound source processing is simply performed in a software manner, the processing program becomes very complicated, and it is impossible to perform the processing of an advanced sound source system such as a modulation system in terms of processing speed and program capacity.

本発明は、専用の音源回路を必要とすることなく、マ
イクロプロセッサのプログラム制御によって、変調方式
による高度な音源処理を可能とすることを目的とする。
SUMMARY OF THE INVENTION It is an object of the present invention to enable advanced sound source processing by a modulation method under program control of a microprocessor without requiring a dedicated sound source circuit.

〔課題を解決するための手段〕[Means for solving the problem]

本発明は、演奏情報を処理するための演奏情報処理プ
ログラムと、所定のサンプリング周期にてポリフォニッ
クの楽音信号をリアルタイムで得るための音源処理プロ
グラムとを記憶するプログラム記憶手段を有する。
The present invention has program storage means for storing a performance information processing program for processing performance information and a sound source processing program for obtaining a polyphonic tone signal in real time at a predetermined sampling period.

次に、プログラム記憶手段のアドレスを制御するアド
レス制御手段を有する。
Next, there is provided an address control means for controlling an address of the program storage means.

また、前述の楽音信号を生成するために必要な楽音生
成データを記憶するデータ記憶手段を有する。
Further, it has a data storage means for storing musical sound generation data necessary for generating the above-mentioned musical sound signal.

更に、四則演算処理を実行する乗算器等を含む演算処
理手段を有する。
Further, there is provided an arithmetic processing means including a multiplier for executing the four arithmetic operations.

そして、上述のアドレス制御手段、データ記憶手段及
び演算処理手段を制御しながら、プログラム記憶手段に
記憶された演奏情報処理プログラム又は音源処理プログ
ラムを実行するプログラム実行手段を有する。同手段
は、通常時は前記解読手段により解読された前記演奏処
理プログラムの各命令にしたがった演算処理を前記演奏
処理手段に実行させて、楽音信号を生成するために必要
な楽音生成データを生成して前記データ記憶手段に記憶
させるとともに、発生すべき楽音のピッチに依存しない
所定時間間隔で前記音源処理プログラムに制御を移し、
前記解読手段により解読された前記音源処理プログラム
の各命令にしたがって、前記データ記憶手段に記憶され
た楽音生成データに基づく演算処理を前記演算処理手段
に実行させてポリフォニックの楽音信号をリアルタイム
でかつ前記所定時間間隔とは非同期で生成し、この音源
処理プログラムの終了後に再び前記演奏処理プログラム
に制御を移す。この場合、プログラム実行手段は、例え
ば上記所定時間間隔で割り込み信号を発生する割り込み
制御手段を有する。これにより、プログラム実行手段
は、演奏情報処理プログラムを実行中に、割り込み制御
手段から割り込み信号が発生したタイミングで演奏情報
処理プログラムを中断し、音源処理プログラムに制御を
移してそれを実行し、その終了後に割り込みを解除して
演奏情報処理プログラムの実行を再開する。
And it has a program execution means for executing the performance information processing program or the sound source processing program stored in the program storage means while controlling the above-mentioned address control means, data storage means and arithmetic processing means. The means normally causes the performance processing means to execute arithmetic processing according to each instruction of the performance processing program decoded by the decoding means, and generates musical sound generation data necessary for generating a musical sound signal. And storing the data in the data storage means, and transferring control to the sound source processing program at predetermined time intervals independent of the pitch of the musical tone to be generated,
According to each instruction of the sound source processing program decoded by the decoding means, the arithmetic processing means is caused to execute an arithmetic processing based on the musical sound generation data stored in the data storage means, thereby realizing a polyphonic music signal in real time. It is generated asynchronously with the predetermined time interval, and after the sound source processing program ends, the control is transferred to the performance processing program again. In this case, the program execution means has, for example, an interrupt control means for generating an interrupt signal at the predetermined time interval. Thereby, the program execution means interrupts the performance information processing program at the timing when the interrupt signal is generated from the interrupt control means during execution of the performance information processing program, transfers control to the sound source processing program and executes it. After completion, the interrupt is released and the execution of the performance information processing program is resumed.

上記構成に加えて、前記所定時間間隔或いは前記サン
プリング周期とは非同期に生成された前記楽音信号を一
時的に保持するとともに、当該保持された楽音信号を前
記サンプリング周期に同期して出力する楽音信号出力手
段を有する。この場合の一定の出力時間間隔は、通常は
D/A変換器等のサンプリング周期に等しいが、この時間
間隔は前述の所定時間間隔と同じ間隔か、或いは、音源
処理プログラムを複数回実行して1サンプル分の楽音信
号を生成するようにした場合には、所定時間間隔の複数
回分の1の時間間隔となる。
In addition to the above configuration, a tone signal for temporarily holding the tone signal generated asynchronously with the predetermined time interval or the sampling period, and outputting the held tone signal in synchronization with the sampling period It has output means. The constant output time interval in this case is usually
This time interval is equal to the sampling period of the D / A converter or the like, but this time interval is the same as the above-mentioned predetermined time interval, or a tone signal for one sample is generated by executing the sound source processing program a plurality of times. In this case, the time interval is a multiple of the predetermined time interval.

〔作用〕[Action]

本発明では、プログラム記憶手段、アドレス制御手
段、データ記憶手段、演算処理手段及びプログラム実行
手段は、汎用のマイクロプロセッサと同様の構成であ
り、専用の音源回路は全く必要としない。また、楽音信
号出力手段は、汎用のマイクロプロセッサとは異なる構
成であるが、楽音波形発生装置という範疇では汎用的で
ある。
In the present invention, the program storage means, the address control means, the data storage means, the arithmetic processing means and the program execution means have the same configuration as a general-purpose microprocessor, and do not require any dedicated tone generator circuit. The tone signal output means has a configuration different from that of a general-purpose microprocessor, but is general-purpose in the category of a tone waveform generator.

これにより、楽音波形発生装置全体の回路規模を大幅
に小型化することができ、LSI化した場合等においても
通常のマイクロプロセッサの製造技術と同じでよく、チ
ップの歩留りも向上するため、製造コストを大幅に低減
させることができる。なお、楽音信号出力手段は簡単な
ラッチ回路で構成できるため、この部分を付加したこと
による製造コストの増加はほとんどない。
As a result, the circuit scale of the entire musical tone waveform generator can be significantly reduced, and even in the case of LSI, the same manufacturing technology as that of a normal microprocessor can be used, and the yield of chips can be improved. Can be greatly reduced. Since the tone signal output means can be constituted by a simple latch circuit, there is almost no increase in manufacturing cost due to the addition of this part.

また、変調方式を例えば位相変調方式と周波数変調方
式とで変更したい場合、ポリフォニック数を変更したい
場合等において、プログラム記憶手段に記憶させる音源
処理プログラムを変更するだけで対処でき、新たな楽音
波形発生装置の開発コストを大幅に減少させることが可
能となり、ユーザに対しても例えばROMカード等によっ
て新たな変調方式を提供することが可能となる。
Further, when it is desired to change the modulation method between, for example, the phase modulation method and the frequency modulation method, or to change the number of polyphonics, it is possible to cope with it only by changing the sound source processing program stored in the program storage means. It is possible to greatly reduce the development cost of the device, and it is possible to provide a user with a new modulation method using, for example, a ROM card or the like.

以上のような作用を可能とするのは、本発明が次のよ
うなプログラムアーキテクチャ及びデータアーキテクチ
ャを実現したからである。
The above operation is possible because the present invention has realized the following program architecture and data architecture.

すなわち、本発明では、データ記憶手段上に変調方式
で楽音を生成するために必要な楽音生成データを記憶さ
せるデータアーキテクチャを実現している。そして、演
奏情報処理プログラムが実行される場合は、データ記憶
手段上の楽音生成データが制御され、音源処理プログラ
ムが実行される場合は、データ記憶手段上の楽音生成デ
ータに基づいて楽音信号が生成される。このように演奏
情報処理プログラムと音源処理プログラムとの間のデー
タの通信は、データ記憶手段上の楽音生成データを介し
て行われ、各プログラムにおけるデータ記憶手段に対す
るアクセスは、相手のプログラムの実行状態に一切関わ
りなく行えばよいため、実質的に両プログラムを独立し
たモジュール構成とすることができ、簡単かつ効率的な
プログラム構造とすることができる。
That is, the present invention realizes a data architecture for storing tone generation data required for generating a tone by a modulation method on the data storage means. When the performance information processing program is executed, the tone generation data on the data storage means is controlled. When the sound source processing program is executed, a tone signal is generated based on the tone generation data on the data storage means. Is done. As described above, data communication between the performance information processing program and the sound source processing program is performed via the tone generation data on the data storage means, and the access to the data storage means in each program depends on the execution status of the partner program. , The two programs can be substantially configured as independent modules, and a simple and efficient program structure can be realized.

上記データアーキテクチャに加えて、本発明では、通
常時は演奏情報処理プログラムを実行して、例えば鍵盤
キーや各種設定スイッチの走査、デモ演奏制御等を行
い、それに対して所定時間間隔で音源処理プログラムを
実行させ、その処理が終わったら再び演奏情報処理プロ
グラムに戻るというプログラムアーキテクチャを実現し
ている。これにより、音源処理プログラムは、例えば割
り込み制御手段からの所定時間間隔で発生する割り込み
信号に基づいて強制的に演奏情報処理プログラムに割り
込めばよいため、演奏情報処理プログラムと音源処理プ
ログラムとの間の同期をとる必要はない。
In addition to the above data architecture, in the present invention, normally, the performance information processing program is executed to perform, for example, scanning of keyboard keys and various setting switches, demonstration performance control, and the like. Is executed, and when the processing is completed, the program returns to the performance information processing program again. This allows the sound source processing program to forcibly interrupt the performance information processing program based on, for example, an interrupt signal generated at a predetermined time interval from the interrupt control means. There is no need to synchronize.

更に、プログラム実行手段が音源処理プログラムを実
行する場合には、変調方式の種類又は変調方式における
楽音生成アルゴリズムの選択等によって処理時間が変化
するが、この変化は、楽音信号出力手段によって全て吸
収することができる。従って、楽音信号をD/A変換器等
へ出力するための複雑なタイミング制御プログラムが必
要なくなる。
Further, when the program executing means executes the sound source processing program, the processing time varies depending on the type of modulation scheme or the selection of a tone generation algorithm in the modulation scheme, but this variation is entirely absorbed by the tone signal output means. be able to. Therefore, a complicated timing control program for outputting a tone signal to a D / A converter or the like is not required.

以上のように、演奏情報処理プログラムと音源処理プ
ログラムとの間のデータのリンクをデータ記憶手段上の
楽音生成データを介して行うというデータアーキテクチ
ャと、演奏情報処理プログラムに対して所定時間間隔で
音源処理プログラムを実行するというプログラムアーキ
テクチャを実現し、更に、楽音信号出力手段を設けたこ
とにより、汎用プロセッサとほとんど同じ構成で、効率
的なプログラム制御に基づく音源処理が実現される。
As described above, the data architecture in which the data link between the performance information processing program and the sound source processing program is performed through the tone generation data in the data storage means, and the sound source is generated at predetermined time intervals with respect to the performance information processing program. By realizing a program architecture for executing a processing program and further providing a tone signal output means, sound source processing based on efficient program control is realized with almost the same configuration as a general-purpose processor.

〔実施例〕〔Example〕

本実施例の概要 まず、本実施例の概要を説明する。 First, an outline of the present embodiment will be described.

第1図は、本実施例の全体構成図であり、外部メモリ
116以外は1チップで構成され、その中のマスターとス
レーブの2つのCPU(中央演算制御装置)が互いに情報
を交換しつつ、楽音作成のための音源処理を分担して行
う。
FIG. 1 is an overall configuration diagram of the present embodiment, and shows an external memory.
The components other than 116 are implemented by one chip, and the two CPUs (central processing control units) of the master and slave among them exchange information with each other and perform sound source processing for musical tone creation.

例えば16チャネルのポリフォニックの場合、8チャネ
ルをマスタCPU101で処理し、残り8チャネルはスレーブ
CPU102の方で処理する。
For example, in the case of polyphonic of 16 channels, 8 channels are processed by the master CPU 101 and the remaining 8 channels are slaves.
Processing is performed by the CPU 102.

この音源処理は、ソフトウエアで行われるが、演奏の
場合、発音チャネル毎にPCMやDPCMの音源方式およびFM
や位相変調などの変調方式による音源方式が割り当てら
れる。
This sound source processing is performed by software, but in the case of performance, the sound source system of PCM or DPCM and FM
A sound source system according to a modulation system such as phase modulation or phase modulation is assigned.

この音源方式は、特定の楽器音色、例えばトランペッ
トとかチューバなどの場合は、自動的に指定されるが、
他の楽器音色では、音源方式を選択スイッチで選択で
き、また演奏の音域や、キータッチなどの演奏強度に応
じて自動的に選択され得る。
This sound source method is automatically specified for a specific instrument tone, such as a trumpet or tuba,
For other instrument timbres, the sound source system can be selected by a selection switch, and can be automatically selected according to the musical range of the performance or the performance intensity such as key touch.

その他、例えば1回の押鍵で2チャネルに同時に、か
つ異なる音源方式を、例えばアタックの部分はPCM方式
で、持続部分はFM方式にするように、割り当てることも
可能である。
In addition, for example, it is also possible to assign different sound source schemes to two channels simultaneously with one key press, for example, the PCM scheme for the attack part and the FM scheme for the sustained part.

さらに、例えばFM方式の場合、音源処理のアリゴリズ
ムに従って、ソフトウエアで処理するのに、汎用CPUで
行うと時間がかかり過ぎるが、本実施例ではその点も解
決した。
Furthermore, for example, in the case of the FM method, it takes too much time to perform processing by software according to the algorithm of the sound source processing, if it is performed by a general-purpose CPU, but this embodiment has solved that point.

以上が本実施例の概要である。 The above is the outline of the present embodiment.

本実施例の構成 以下、図面を参照しながら本発明の実施例を説明す
る。
Hereinafter, an embodiment of the present invention will be described with reference to the drawings.

第1図において、まず、外部メモリ116には、エンベ
ロープ値の目標値等の楽音制御パラメータと、PCM(パ
ルス符号変調)方式における楽音波形またはDPCM(差分
パルス符号変調)方式における楽音差分波形等が記憶さ
れている。
In FIG. 1, first, an external memory 116 stores tone control parameters such as a target value of an envelope value, a tone waveform in a PCM (pulse code modulation) system, a tone difference waveform in a DPCM (differential pulse code modulation) system, and the like. It is remembered.

一方、マスタCPU(以下、MCPUと略称する)101とス
レーブCPU(以下、SCPUと略称する)102は、外部メモ
リ116上の上記各データをアクセスして、分担して音源
処理を行う。これらのCPUは、ともに外部メモリ116の波
形データ等を共用するので、このままでは、外部メモリ
116からデータを読み込むときに、競合が発生する恐れ
がある。そのために、MCPU101とSCPU102のそれぞれ
は、MCPU外部メモリアクセス用アドレスラッチ部103お
よびSCPU外部メモリアクセス用アドレスラッチ部104を
介して、アクセス用アドレス競合回避回路105から外部
メモリアクセス用のアドレス信号と外部メモリ制御デー
タを、出力端子111、112から出力することにより、MCP
U101からのアドレスとSCPU102からのアドレスの競合を
回避することができる。
On the other hand, a master CPU (hereinafter abbreviated as MCPU) 101 and a slave CPU (hereinafter abbreviated as SCPU) 102 access the above data on the external memory 116 and perform sound source processing in a shared manner. These CPUs share the waveform data of the external memory 116, etc.
Contention may occur when reading data from 116. Therefore, each of the MCPU 101 and the SCPU 102 receives an external memory access address signal from the access address conflict avoidance circuit 105 via the MCPU external memory access address latch 103 and the SCPU external memory access address latch 104. By outputting the memory control data from the output terminals 111 and 112, the MCP
The conflict between the address from U101 and the address from SCPU 102 can be avoided.

上記アドレス指定に基づいて外部メモリ116から読み
出されたデータは、外部メモリデータイン端子115から
外部メモリセレクタ部106に入力される。外部メモリセ
レクタ部106は、アクセス用アドレス競合回避回路105か
らの制御信号に基づいて、上記読み出されたデータを、
データバスMDを通ってMCPU101に入力されるデータと、
データバスSDを通ってSCPU102に入力されるデータに分
離し、それぞれMCPU101とSCPU102に入力させる。これ
により、データの競合も回避することができる。
Data read from the external memory 116 based on the address designation is input from the external memory data-in terminal 115 to the external memory selector 106. The external memory selector 106 converts the read data based on a control signal from the access address conflict avoidance circuit 105,
Data input to the MCPU 101 through the data bus MD,
The data is separated into data to be input to the SCPU 102 through the data bus SD and input to the MCPU 101 and the SCPU 102, respectively. Thus, data conflict can be avoided.

その後、それぞれのデータに対して、MCPU101および
SCPU102で、ソフトウエアによって音源処理が施された
後、発音チャネル分全部が累算され、Left D/A変換器
部107のレフト出力端子113およびRight D/A変換器部108
のライト出力端子114から、それぞれ楽音信号として、
左チャネルのレフト・アナログ出力と右チャネルのライ
ト・アナログ出力が出力される。
After that, the MCPU 101 and the SCPU 102 perform sound source processing on the respective data by software. After that, all the sound channels are accumulated, and the left output terminal 113 and the Right D terminal of the Left D / A converter 107 are accumulated. / A converter unit 108
From the light output terminal 114 of the
The left channel left analog output and the right channel right analog output are output.

つぎに、第2図はMCPU101の内部構成を示すブロック
図である。
FIG. 2 is a block diagram showing the internal configuration of the MCPU 101.

同図において、制御用ROM201には、後述する楽音制御
用のプログラムが記憶されており、ROMアドレス制御部2
05からROMアドレスデコーダ202を介して指定されたアド
レスのプログラム語(命令)を順次出力する。具体的に
は、各プログラム語の語長は例えば28ビットであり、プ
ログラム語の一部が次に読み出されるべきアドレスの下
位部(ページ内アドレス)としてROMアドレス制御部205
に入力されるネクストアドレス方式となっている。な
お、当然、通常のプログラムカウンタ方式のCPUで構成
してもよい。
In the figure, a control ROM 201 stores a tone control program to be described later.
From 05, the program word (instruction) of the designated address is sequentially output via the ROM address decoder 202. Specifically, the word length of each program word is, for example, 28 bits, and a part of the program word is used as the lower part (in-page address) of the next address to be read out by the ROM address control unit 205.
The next address method is used for inputting the next address. Naturally, it may be constituted by a normal program counter type CPU.

コマンド解析部207は、制御用ROM201から出力される
命令のオペコードを解析し、指定されたオペレーション
を実行するために、回路の各部に制御信号を送る。
The command analysis unit 207 analyzes an operation code of an instruction output from the control ROM 201, and sends a control signal to each unit of the circuit to execute a specified operation.

RAMアドレス制御部204は、制御用ROM201からの命令の
オペランドがレジスタを指定している場合に、RAM206内
の対応するレジスタのアドレスを指定する。RAM206に
は、第11図及び第12図等として後述する各種楽音制御デ
ータが8発音チャネル分記憶されるほか、後述する各種
バッファ等が記憶され、後述する音源処理に使用され
る。
When the operand of the instruction from the control ROM 201 specifies a register, the RAM address control unit 204 specifies the address of the corresponding register in the RAM 206. The RAM 206 stores various tone control data, which will be described later with reference to FIGS. 11 and 12, for eight sounding channels, and also stores various buffers and the like which will be described later, and is used for sound source processing which will be described later.

ALU部208及び乗算器209は、制御ROM31からの命令が演
算命令の場合に、コマンド解析部207からの指示に基づ
いて、前者は加減算と論理演算、後者は乗算を実行す
る。
When the instruction from the control ROM 31 is an arithmetic instruction, the ALU unit 208 and the multiplier 209 execute addition and subtraction and logical operation, and execute the multiplication based on an instruction from the command analysis unit 207.

インタラプト制御部203は、内部の特には図示しない
ハードタイマに基づいて、一定時間毎に、第1図のSCP
U102にリセット解除信号A、ROMアドレス制御部205及び
第1図の各D/A変換器部107、108にインタラプト信号を
供給する。
The interrupt control unit 203, based on an internal hard timer (not shown), periodically updates the SCP of FIG.
A reset release signal A is supplied to U102, and an interrupt signal is supplied to the ROM address control unit 205 and each of the D / A converter units 107 and 108 in FIG.

上述の構成のほかに、第2図のMCPU101には、つぎの
各種のバスに関するインタフェースが設けられている。
In addition to the above-described configuration, the MCPU 101 in FIG. 2 is provided with the following various bus-related interfaces.

すなわち、外部メモリ116をアクセスすべく、そのメ
モリのアドレスを指定するためのアドレスバスMAのイン
タフェース215、アクセスされたデータを外部メモリセ
レクタ部106を介してMCPU101との間で授受するための
データバスMDのインタフェース216、SCPU102とのデー
タの授受を実行すべくSCPU102内部のRAMのアドレスを
指定するバスMaのインタフェース212、MCPU101がSCPU
102へデータを書き込むためのデータバスDoutのインタ
フェース213、MCPU101がSCPU102からデータを読み込
むためのデータバスDinのインタフェース214、Left D/
A変換器部107、Right D/A変換器部108に最終出力波形を
転送するためのD/Aデータ転送バスのインタフェース21
7、および外部のスイッチ部又は鍵盤部(第8図参照)
等との間でデータの授受を行う入出力ポート210、211が
ある。
That is, in order to access the external memory 116, an interface 215 of an address bus MA for designating an address of the memory, and a data bus for exchanging the accessed data with the MCPU 101 via the external memory selector unit 106 The interface 216 of the MD, the interface 212 of the bus Ma for designating the address of the RAM inside the SCPU 102 to execute data transfer with the SCPU 102, and the MCPU 101
An interface 213 of a data bus Dout for writing data to the DCPU 102; an interface 214 of a data bus Din for the MCPU 101 to read data from the SCPU 102;
D / A data transfer bus interface 21 for transferring the final output waveform to A converter 107 and Right D / A converter 108
7, and an external switch or keyboard (see Fig. 8)
There are input / output ports 210 and 211 for exchanging data with the other.

つぎに、SCPU102の内部構成を第3図に示す。 Next, the internal configuration of the SCPU 102 is shown in FIG.

SCPU102は、MCPU101からの処理開始信号を受けて音
源処理を行うのみなので、第2図203に対応するインタ
ラプト制御部、第2図210及び211に対応する外部回路と
のデータの授受を行う入出力ポート、および第2図217
に対応するLeft D/A変換器部107とRight D/A変換器部1
08に楽音信号を出力するためのインタフェースはない。
それ以外の301、302、304〜309の各回路は、第2図の20
1、202、204〜209の各回路と同じ機能を有する。また、
各インタフェース303、310〜313は、第2図の212〜216
のそれぞれに対向して設けられる。なお、MCPU101から
バスMaを介して指定されたSCPU102内部RAMアドレス
は、RAMアドレス制御部304に入力し、対応するアドレス
がRAM306に対して指定される。これにより、例えばSCP
U102で生成されRAM306内部に保持されている8発音チャ
ネル分の累算波形データが、データバスDINを介してM
CPU101に出力される。これについては後述する。
Since the SCPU 102 only performs the sound source processing in response to the processing start signal from the MCPU 101, the SCPU 102 performs input / output for transmitting / receiving data to / from the interrupt control unit corresponding to FIG. 203 and the external circuits corresponding to FIGS. 210 and 211. Ports, and FIG.
D / A converter unit 107 and Right D / A converter unit 1 corresponding to
There is no interface for outputting a music signal in 08.
The other circuits 301, 302 and 304 to 309 are the same as those in FIG.
It has the same function as each of the circuits 1, 202, 204 to 209. Also,
Each of the interfaces 303, 310 to 313 is shown as 212 to 216 in FIG.
Are provided facing each other. The internal RAM address of the SCPU 102 specified from the MCPU 101 via the bus Ma is input to the RAM address control unit 304, and the corresponding address is specified for the RAM 306. Thus, for example, SCP
The accumulated waveform data for eight sounding channels generated by the U102 and held in the RAM 306 is stored in the M bus via the data bus DIN.
Output to CPU101. This will be described later.

以上に示される構成のほか、本実施例では、MCPU101
の入力ポート210を介して、第8図に示されるような機
能キー801及び鍵盤キー802等が接続される。これらの部
分が、実質的な楽器操作部を構成する。
In addition to the configuration shown above, in this embodiment, the MCPU 101
A function key 801 and a keyboard key 802 as shown in FIG. These parts constitute a substantial musical instrument operation unit.

つぎに、本発明の特徴の1つであるD/A変換器につい
て説明する。
Next, a D / A converter which is one of the features of the present invention will be described.

第6図(b)は、第1図のLeftとRightのD/A変換器部
107、108(両変換部の内容は同じ)の内部構成を示すも
ので、データバスを介して、音源処理で作成された楽音
の1サンプルデータが、ラッチ601に入力される。そし
て、ラッチ601のクロック入力にMCPU101のコマンド解
析部207(第2図)から音源処理終了信号が入力される
と、データバス上の1サンプル分の楽音データが、第7
図に示すようにラッチ601にラッチされる。
FIG. 6 (b) is a left / right D / A converter section of FIG.
This shows the internal configuration of 107 and 108 (the contents of both conversion units are the same). One sample data of a musical tone created by sound source processing is input to a latch 601 via a data bus. Then, when a sound source processing end signal is input to the clock input of the latch 601 from the command analysis unit 207 (FIG. 2) of the MCPU 101, musical sound data for one sample on the data bus is converted to the seventh sound data.
As shown in FIG.

ここで、前述の音源処理に要する時間は、音源処理用
のソフトウエアにより変化する。そのため、音源方式が
異なる場合は、各音源処理が終了し、ラッチ601に楽音
データがラッチされるタイミングは一定でない。そのた
め、第6図(a)のように、ラッチ601の出力をそのま
まD/A変換器603に入力させることはできない。
Here, the time required for the sound source processing described above varies depending on the software for sound source processing. Therefore, when the sound source systems are different, the timing at which each sound source process ends and the tone data is latched in the latch 601 is not constant. Therefore, the output of the latch 601 cannot be directly input to the D / A converter 603 as shown in FIG.

そこで、本実施例では第6図(b)の如く、ラッチ60
1の出力をさらにラッチ602でラッチし、インタラプト制
御部203から出力されるサンプリングクロック間隔に等
しいインタラプト信号により、楽音信号をラッチ602に
ラッチさせ、一定間隔でD/A変換器603に出力させるよう
にしている。
Therefore, in this embodiment, as shown in FIG.
The output of (1) is further latched by the latch 602, and the tone signal is latched by the latch 602 by an interrupt signal equal to the sampling clock interval output from the interrupt control unit 203, and is output to the D / A converter 603 at regular intervals. I have to.

このようにラッチを2つ用いて、音源方式による処理
時間の変化を吸収したので、楽音データをD/A変換器へ
出力させるための複雑なタイミング制御プログラムが不
用になった。
As described above, the use of the two latches absorbs a change in the processing time due to the sound source system, so that a complicated timing control program for outputting musical sound data to the D / A converter is unnecessary.

本実施例の全体動作 つぎに、本実施例の全体動作を説明する。Next, the overall operation of the present embodiment will be described.

本実施例は、基本的にはMCPU101が中心となって動作
し、第4図(a)のメインフローチャートに示すよう
に、S402〜S410の一連の処理を繰り返し行っている。そ
して実際の音源処理は割り込み(インタラプト)処理で
行っている。具体的には、ある一定時間如に、MCPU101
とSCPU102に割り込みが掛かり、それに基づいてそれぞ
れのCPUが8チャンネルずつの音を作る音源処理を行
う。その処理が終わると、それぞれのCPUの8チャネ
ル、計16チャネル分の楽音波形が加算され、LeftD/A変
換器部107、Right D/A変換器部108から出力される。そ
の後、割り込み状態からメインフローに戻る。なお、上
述の割り込みは、第2図はインタラプト制御部203内の
ハードタイマに基づき、周期的に行われる。この周期
は、楽音出力時のサンプリング周期に等しい。
This embodiment is basically operate a center MCPU101, as shown in the main flow chart of the 4 (a), it is repeated a series of processes of S 402 to S 410. The actual sound source processing is performed by interrupt processing. Specifically, the MCPU 101
And the SCPU 102 are interrupted, and based on the interrupt, each CPU performs a sound source process for generating eight channels of sound. When the processing is completed, the musical tone waveforms for a total of 16 channels, that is, 8 channels of each CPU, are added and output from the Left D / A converter unit 107 and the Right D / A converter unit 108. Thereafter, the process returns from the interrupt state to the main flow. Note that the above-described interrupt is periodically performed based on a hard timer in the interrupt control unit 203 in FIG. This period is equal to the sampling period at the time of outputting the musical sound.

以上が、本実施例の概略動作で、つぎに、第4図を用
いて詳細に本実施例の動作を説明する。
The above is the schematic operation of this embodiment. Next, the operation of this embodiment will be described in detail with reference to FIG.

第4図(a)のメインフローチャートにおけるS402
S410の処理が繰り返し実行されている間に、インタラプ
ト制御部203から割り込みが掛かると、同図(b)のMC
PUインタラプト処理と同図(c)のSCPUインタラプト
処理の2つの処理が同時に起動する。そして、同図
(b)と同図(c)の「音源処理」は、同図(d)に示
されている。
S402 to S402 in the main flowchart of FIG.
During the processing of S 410 is repeatedly executed, when an interrupt from the interrupt control unit 203 is applied, MC of FIG (b)
The two processes of the PU interrupt process and the SCPU interrupt process of FIG. The “sound source processing” in FIGS. 7B and 7C is shown in FIG.

さて、第4図(a)のメインフローチャートは、イン
タラプト制御部203から割り込みが掛からない状態にお
いてMCPU101において実行される、音源処理以外の処理
の流れを示している。
Now, the main flowchart of FIG. 4A shows a flow of processing other than the sound source processing, which is executed by the MCPU 101 in a state where no interrupt is issued from the interrupt control unit 203.

まず、電源がONされ、MCPU101のRAM206の内容等の初
期設定が行われる(S401)。
First, power is the ON, initial setting is performed, such as the contents of the RAM206 of MCPU101 (S 401).

つぎに、MCPU101の外部に接続される機能キー、例え
ば第27図に示される音色スイッチ等が走査され
(S402)、各スイッチの状態が入力ポート210からRAM20
6内のキーバッファエリアに取り込まれる。その走査の
結果、状態の変化した機能キーが識別され、対応する機
能の処理がなされる(S403)。例えば、楽音番号のセッ
ト、エンベロープ番号のセット、また、付加機能にリズ
ム演奏がついていれば、リズム番号のセット等が行われ
る。
Next, a function key connected to the outside of the MCPU 101, such as a tone switch shown in FIG. 27, is scanned ( S402 ), and the state of each switch is read from the input port 210 to the RAM 20.
It is taken into the key buffer area in 6. As a result of the scanning, the function key whose state has changed is identified, and the processing of the corresponding function is performed ( S403 ). For example, setting of a musical tone number, setting of an envelope number, and setting of a rhythm number if the additional function has rhythm performance.

その後、押鍵されている鍵盤キーが上記機能キーの場
合と同様に取り込まれ(S404)、変化した鍵が識別され
ることによりキーアサイン処理が行われる(S405)。
Thereafter, the depressed keyboard key is captured in the same manner as in the case of the function key ( S404 ), and a key assignment process is performed by identifying the changed key ( S405 ).

つぎに、機能キー801(第8図参照)でデモ演奏キー
が押されたときは、外部メモリ部116からデモ演奏デー
タ(シーケンサデータ)が順次読み出されて、キーアサ
イン処理などが行われる(S406)。また、リズムスター
トキーが押されたときは、リズムデータが外部メモリ11
6から順次読み出され、キーアサイン処理などが行われ
る(S407)。
Next, when the demonstration performance key is pressed with the function key 801 (see FIG. 8), the demonstration performance data (sequencer data) is sequentially read from the external memory unit 116, and key assignment processing and the like are performed ( S 406 ). When the rhythm start key is pressed, the rhythm data is
6 are sequentially read, and key assignment processing and the like are performed ( S407 ).

その後に、以下に述べるタイマー処理が行われる(S
408)。即ち、後述するインタラプトタイマー処理(S
412)でインクリメントされている時間データの時間値
が判別され、デモ演奏制御用に順次読み出される時間制
御用のシーケンサデータまたはリズム演奏制御用に読み
出される時間制御用のリズムデータと比較されることに
より、S406のデモ演奏又はS407のリズム演奏を行う場合
の時間制御が行われる。
Thereafter, a timer process described below is performed (S
408 ). That is, an interrupt timer process (S
The time value of the time data that has been incremented in step 412 ) is determined, and is compared with sequencer data for time control sequentially read for demonstration performance control or rhythm data for time control read for rhythm performance control. , S406 , or the rhythm performance of S407 is performed.

さらに、発音処理S409では、発音処理されるべき楽音
のピッチにエンベロープを付加し、対応する発音チャネ
ルにピッチデータを設定するというピッチエンベロープ
処理等が行われる。
Further, in the sound generation process S409 , a pitch envelope process or the like is performed in which an envelope is added to the pitch of a musical tone to be sound-processed and pitch data is set in a corresponding sound generation channel.

更に、フロー1周準備処理が実行される(S410)。こ
の処理においては、S405の鍵盤キー処理において押鍵開
始となったノート番号の発音チャネルの状態を押鍵中に
変えたり、離鍵となったノート番号の発音チャネルの状
態を消音中に変える等の処理が行われる。
Further, a flow one-round preparation process is executed ( S410 ). In this process, the state of the sound channel of the note number at which the key is depressed in the keyboard key processing of S405 is changed to the state of depressing the key, or the state of the sound channel of the note number of the released key is changed to the mute state. Are performed.

つぎに、第4図(b)のMCPUインタラプト処理につ
き説明する。
Next, the MCPU interrupt processing of FIG. 4B will be described.

MCPU101のインタラプト制御部203によりMCPU101に
割り込みが掛かると、第4図(a)のメインフローチャ
ートの処理が中断され、第4図(b)のMCPUインタラ
プト処理の実行が開始される。この場合、MCPUインタ
ラプト処理のプログラムにおいて、第4図(a)のメイ
ンフローのプログラムで書き込みが行われるレジスタ等
については、内容の書き換えが行われないように制御さ
れる。これにより、通常のインタラプト処理の開始時と
終了時に行われるレジスタの退避と復帰の処理は不要と
なる。これにより、第4図(a)のメインフローチャー
トの処理とMCPUのインタラプト処理との間の移行が迅
速に行われる。
When the interrupt control unit 203 of the MCPU 101 interrupts the MCPU 101, the processing of the main flowchart of FIG. 4A is interrupted, and the execution of the MCPU interrupt processing of FIG. 4B is started. In this case, in the MCPU interrupt processing program, control is performed so that the contents of registers and the like to which writing is performed in the main flow program of FIG. 4A are not performed. This eliminates the need for register saving and restoring processes performed at the start and end of the normal interrupt process. Thereby, the transition between the processing of the main flowchart of FIG. 4A and the interrupt processing of the MCPU is quickly performed.

続いて、MCPUインタラプト処理において音源処理が
開始される(S411)。この音源処理は第4図(d)に示
される。
Then, tone generator processing is started in MCPU interrupt processing (S 411). This sound source processing is shown in FIG.

上述の動作と同時に、MCPU101のインタラプト制御部
203からSCPU102のROMアドレス制御部305に対してSCPU
リセット解除信号A(第1図参照)が出力され、SCPU1
02において、第4図(c)のSCPUインタラプト処理の
実行が開始される。
Simultaneously with the above operation, the interrupt control unit of the MCPU 101
From 203 to the SCPU 102 ROM address control unit 305, the SCPU
A reset release signal A (see FIG. 1) is output, and SCPU1
At 02, the execution of the SCPU interrupt processing of FIG. 4 (c) is started.

そして、MCPUインタラプト処理における音源処理(S
411)とほぼ同時に、SCPUインタラプト処理において音
源処理が開始される(S415)。このように、MCPU101と
SCPU102の両者が同時に8発音チャネルづつの音源処理
を実行することにより、8発音チャンネルの処理時間で
16発音チャネルの音源処理を実行することができ、処理
速度が約2倍になる(以上は、第5図を用いて後述す
る)。
Then, the sound source processing in the MCPU interrupt processing (S
411) At about the same time, the sound source processing is started in the SCPU interrupt processing (S 415). As described above, both the MCPU 101 and the SCPU 102 simultaneously perform the sound source processing for each of the eight sounding channels, so that the processing time of the eight sounding channels can be reduced.
The sound source processing of 16 sounding channels can be executed, and the processing speed is approximately doubled (the above will be described later with reference to FIG. 5).

続いて、MCPU101では、S412のインタラプトタイマー
処理の後、SCPU102からSCPUインタラプト処理の終了
信号が来るのを待っている(S413)。なお、インタラプ
トタイマー処理では、第4図(b)のインタラプト処理
が一定のサンプリング周期毎に実行されることを利用し
て、RAM206(第2図)上の特には図示しない時間データ
の値がインクリメントされる。すなわち、この時間デー
タの値を見れば時間経過がわかる。このようにして得ら
れる時間データは、前述したように、第4図(a)のメ
インフローのタイマー処理S408における時間制御に用い
られる。
Subsequently, in MCPU101, after interrupt timer process S 412, waiting to come end signal SCPU interrupt processing from SCPU102 (S 413). In the interrupt timer process, the value of the time data (not shown) on the RAM 206 (FIG. 2) is incremented by utilizing the fact that the interrupt process of FIG. Is done. That is, the value of the time data indicates the passage of time. The time data thus obtained is used for time control in the timer processing S408 of the main flow in FIG. 4A, as described above.

第4図(c)のSCPUインタラプト処理におけるステ
ップS415の音源処理が終了すると、SCPU102のコマンド
解析部307からMCPU101のROMアドレス制御部205に、SC
PU処理終了信号B(第1図参照)が入力する。これによ
り、第4図(b)のMCPUインタラプト処理におけるス
テップS413の判定がYESになる。
When tone generator processing of step S 415 in the SCPU interrupt processing of FIG. 4 (c) is completed, the command analyzer 307 of SCPU102 the ROM address control unit 205 of the MCPU101, SC
The PU processing end signal B (see FIG. 1) is input. Thus, the determination of step S 413 in the MCPU interrupt processing of FIG. 4 (b) is to YES.

この結果、第1図のデータバスDinを介してSCPU102
で作られた波形データがMCPU101のRAM206に読み込まれ
る(S414)。この場合、波形データはSCPU102のRAM306
上の所定バッファ領域(後述するバッファB)に格納さ
れているため、MCPU101のコマンド解析部207は、SCPU
内部アドレス指定バスMaを介して、RAMアドレス制御部3
04に対して上記バッファアドレスを指定することによ
り、波形データの読み込みを行う。
As a result, the SCPU 102 via the data bus Din in FIG.
Waveform data generated in is loaded into RAM206 of MCPU101 (S 414). In this case, the waveform data is stored in the RAM 306 of the SCPU 102.
Since the command is stored in the upper predetermined buffer area (buffer B described later), the command analysis unit 207 of the MCPU 101
RAM address control unit 3 via internal addressing bus Ma
By specifying the above buffer address for 04, the waveform data is read.

そして、S415′において、上記バッファ領域の内容が
Left D/A変換器部107及びRight D/A変換器部108のラッ
チ601(第6図参照)にラッチされる。
Then, in S 415 ′, the contents of the buffer area are
It is latched by the latch 601 (see FIG. 6) of the Left D / A converter unit 107 and Right D / A converter unit 108.

つぎに、第4図(d)のフローチャートを用いて、M
CPUインタラプト処理のステップS411またはSCPUインタ
ラプト処理のステップS415で実行される音源処理の動作
を説明する。
Next, using the flowchart of FIG.
The operation of the tone generator processing executed in step S 415 of step S 411 or SCPU interrupt processing of the CPU interrupt process will be described.

まず、RAM206又はRAM306の波形データ加算用の領域が
クリアされる(S416)。つぎに、発音チャネルの1チャ
ネル毎に音源処理が行われ(S417〜S424)、最後に8チ
ャネル目の音源処理が終了した時点で所定のバッファ領
域Bに8チャネル分が加算された波形データが得られ
る。これらの詳細な処理については後述する。
First, the waveform data addition area of the RAM 206 or the RAM 306 is cleared ( S416 ). Then, tone generator processing is performed for each channel of the sound channel (S 417 ~S 424), the end 8 channels th sound source processing 8 channels in a predetermined buffer area B at the time of the termination is added waveform Data is obtained. Details of these processes will be described later.

つぎに、第5図は、前述の第4図(a)、(b)、
(c)のフローチャートの処理の関係を概念的に示した
流れ図であり、MCPU101とSCPU102が、音源処理をそれ
ぞれ分担して行う様子を示している。
Next, FIG. 5 shows the aforementioned FIGS. 4 (a), (b),
5 is a flowchart conceptually showing the relationship between the processes in the flowchart of FIG. 5C, and shows how the MCPU 101 and the SCPU 102 perform sound source processing in a shared manner.

まず、ある処理A(以下、B、C、・・・、Fも同
じ)が行われる(S501)。この「処理」は、第4図
(a)のメインフローチャートの、例えば「機能キー処
理」、や「鍵盤キー処理」などに対応する。その後、M
CPUインタラプト処理とSCPUインタラプト処理に入り、
同時にMCPU101とSCPU102による音源処理が開始される
(S502、S503)。そして、SCPU102でのSCPUインタラ
プト処理の終了時に、SCPU処理終了信号BがMCPU101
に入力される。MCPUインタラプト処理では、SCPUイン
タラプト処理より早く音源処理が終了し、SCPUインタ
ラプト処理の終了を待っている。そして、MCPUインタ
ラプト処理においてSCPU処理終了信号Bが識別される
と、SCPU102で生成された波形データがMCPU101に送ら
れてMCPU101で生成された波形データとまとめられ、Le
ft D/A変換器部107及びRight D/A変換器部108に出力さ
れる。その後、メインフローチャートの何らかの処理B
に戻る。
First, a certain process A (hereinafter, the same applies to B, C,..., F) is performed ( S501 ). This “processing” corresponds to, for example, “function key processing” or “keyboard key processing” in the main flowchart of FIG. 4 (a). Then M
Enter CPU interrupt processing and SCPU interrupt processing,
The sound source processing is started by simultaneously MCPU101 and SCPU102 (S 502, S 503) . When the SCPU interrupt processing in the SCPU 102 ends, the SCPU processing end signal B
Is input to In the MCPU interrupt processing, the sound source processing ends earlier than the SCPU interrupt processing, and waits for the end of the SCPU interrupt processing. When the SCPU processing end signal B is identified in the MCPU interrupt processing, the waveform data generated by the SCPU 102 is sent to the MCPU 101 and combined with the waveform data generated by the MCPU 101, and
It is output to ft D / A converter section 107 and Right D / A converter section 108. Then, some processing B in the main flowchart
Return to

以上のような動作が、全ての発音チャネル(本実施例
では、MCPU101とSCPU102あわせて16チャネル)に対す
る音源処理が行われながら繰り返される(S504
S516)。そして、この繰り返し処理は、楽音の発音中続
けられる。
The above-described operation is repeated while sound source processing is performed for all sounding channels (in this embodiment, 16 channels for the MCPU 101 and the SCPU 102) ( S504 to S504 ).
S 516 ). This repetition processing is continued while the musical sound is being generated.

音源処理におけるデータ構成 つぎに、第4図(b)のS411及び同図(c)のS415
実行される音源処理の具体例について説明する。
Data Configuration in Sound Source Processing Next, specific examples of the sound source processing executed in S411 of FIG. 4B and S415 of FIG. 4C will be described.

本実施例では、MCPU101とSCPU102の両CPUが、8チ
ャネルづつの音源処理を分担することは前述した。この
8チャネル分の音源処理用のデータは、第9図に示すよ
うに、MCPU101、SCPU102の各RAM206、306内の発音チ
ャネル別の領域に設定される。
In the present embodiment, as described above, the CPUs of the MCPU 101 and the SCPU 102 share the sound source processing for each of the eight channels. As shown in FIG. 9, the data for the sound source processing for the eight channels is set in each area of the sound channels in the RAMs 206 and 306 of the MCPU 101 and the SCPU 102.

また、このRAMには、第12図に示すように、BF、BT、
B、Mの各バッフアが確保されている。
In addition, as shown in FIG. 12, BF, BT,
Buffers B and M are secured.

この場合、第9図の各発音チャネル領域には、後に詳
述するような操作によって、第10図に概念的に示すよう
に、それぞれの音源方式が設定でき、その音源方式が設
定されたら、第11図に示すような各音源方式のデータフ
ォーマットで、第9図の各発音チャネルの各領域にデー
タが設定される。なお、本実施例では、後述するよう
に、各発音チャネルに異なる音源方式を割り当てること
が可能である。
In this case, each sound source system can be set in each sound channel region of FIG. 9 by an operation described later in detail, as conceptually shown in FIG. 10, and when the sound source system is set, Data is set in each area of each sounding channel in FIG. 9 in a data format of each sound source system as shown in FIG. In this embodiment, as will be described later, it is possible to assign a different sound source system to each sounding channel.

第11図の各音源方式のデータフォーマットを示すテー
ブル1において、Gは音源方式を識別する番号である音
源方式No.である。つぎのAは、音源処理時に波形デー
タが読み出される場合に指定されるアドレスを表し、
A1、A1及びA2が現在アドレスの整数部で、外部メモリ11
6(第1図)の波形データが格納されているアドレスに
直接対応する。また、AFは現在アドレスの小数部で、外
部メモリ116から読み出された波形データの補間に用い
られる。
In Table 1 showing the data format of each sound source system in FIG. 11, G is a sound source system number, which is a number for identifying the sound source system. The next A represents an address designated when waveform data is read during sound source processing,
A 1 , A 1 and A 2 are the integer part of the current address and the external memory 11
It directly corresponds to the address where the waveform data of FIG. 6 (FIG. 1) is stored. Further, AF is a decimal part of the current address, which is used for interpolation of the waveform data read from the external memory 116.

つぎのAEはエンドアドレス、ALはループアドレスをそ
れぞれ表す。また、つぎのPI、P1及びP2はピッチデータ
の整数部、PFはピッチデータの小数部を表す。例を示す
と、PI=1、PF=0は原音のピッチを、PI=2、PF=0
は1オクターブ上のピッチを、また、PI=0、PF=0.5
は、1オクターブ下のピッチをそれぞれ表す。
The following A E is the end address, A L respectively represent the loop address. Further, the integer part of the next P I, P 1 and P 2 is the pitch data, P F represents the fractional part of the pitch data. For example, P I = 1 and P F = 0 indicate the pitch of the original sound, P I = 2 and P F = 0.
Is the pitch one octave higher, and P I = 0, P F = 0.5
Represents a pitch one octave below.

つぎのXPは前回のサンプルデータを、XNは次回のサン
プルデータの格納を表す。また、Dは隣接する2つのサ
ンプルデータ間の大きさの差分値を表し、Eはエンベロ
ープ値である。さらに、Oは出力値であり、また、C
は、後述するが、演奏情報によって発音チャネルに割り
当てる音源方式を変更する時に用いるフラグを表す。
The following is the X P of the previous sample data, X N represents the storage of the next sample data. Further, D represents a difference value of magnitude between two adjacent sample data, and E is an envelope value. Further, O is an output value, and C
Represents a flag used when changing a sound source system to be assigned to a sounding channel according to performance information, as described later.

その他の種々の制御データについては、後述の各音源
方式の説明の際に説明する。
Other various control data will be described later in the description of each sound source system.

このように、第11図に示すようなデータがMCPU101、
SCPU102のそれぞれのRAM206、306に確保され、後述す
る音源方式が決まると、第9図に示す各チャネル毎に第
11図のフォーマットで、データが設定される。
Thus, the data as shown in FIG.
When a sound source system described later is determined and secured in the RAMs 206 and 306 of the SCPU 102, a channel
Data is set in the format shown in Figure 11.

以下、このようなデータ構成を用いて実行される各音
源方式の音源処理について順次説明する。なお、これら
の音源処理は、MCPU101又はSCPU102のコマンド解析部
207又は307が、制御用ROM201又は301に格納されている
音源処理用のプログラムを解釈・実行することにより実
現される。以下、特に言及しないかぎり、この前提のも
とで処理が行われるとする。
Hereinafter, the sound source processing of each sound source system performed using such a data structure will be sequentially described. The sound source processing is performed by the command analysis unit of the MCPU 101 or the SCPU 102.
207 or 307 is realized by interpreting and executing a sound source processing program stored in the control ROM 201 or 301. Hereinafter, it is assumed that processing is performed on this premise unless otherwise specified.

まず、第4図(d)のフローチャートにおいて、1チ
ャネル毎の各音源処理(S417〜S424のいずれか)に入る
と、RAM206、306の対応する発音チャネルに記憶されて
いる第11図に示すデータフォーマット(テーブル1)の
データのうちの音源方式No.が判別され、これにより以
下に説明するどの音源方式の音源処理が実行されるかが
決定される。
First, in the flowchart of FIG. 4 (d), when entering each tone generator processing of each channel (one of S 417 to S 424), in FIG. 11 which is stored in the corresponding sound channels of RAM206,306 The sound source method No. of the data of the data format (Table 1) shown is determined, and thereby, the sound source processing of the sound source method described below to be executed is determined.

PCM方式による音源処理 上記音源方式No.がPCM方式を指示している場合、以下
の第13図の動作フローチャートで示されるPCM方式によ
る音源処理が実行される。フロー中の各変数は、MCPU1
01又はSCPU102のRAM206、306上の第9図のいずれかの
発音チャネル領域に記憶される第11図のテーブル1のPC
Mフォーマットの各データである。
When the sound source method No. indicates the PCM method, the sound source processing by the PCM method shown in the following operation flowchart of FIG. 13 is executed. Each variable in the flow is MCPU1
11 or the PC of the table 1 of FIG. 11 stored in the sound channel area of FIG. 9 on the RAM 206 or 306 of the SCPU 102.
Each data in M format.

外部メモリ116(第1図)上のPCM波形データが記憶さ
れているアドレスのうち、現在の処理の対象とされる波
形データが記憶されているアドレスを第15図(a)に示
す(AI,AF)とする。
FIG. 15 (a) shows an address at which the waveform data to be processed at present is stored among the addresses at which the PCM waveform data is stored on the external memory 116 (FIG. 1) (A I , A F ).

まず、現在のアドレスにピッチデータ(PI,PF)が加
算される(S1301)。このピッチデータは、第8図の鍵
盤キー801等において押鍵操作された鍵の種類に対応し
ている。
First, pitch data (P I , P F ) is added to the current address (S 1301 ). This pitch data corresponds to the type of the key that has been pressed with the keyboard key 801 or the like in FIG.

そして、加算されたアドレスの整数部AIが変わったか
否かが判定される(S1302)。判定がNOならば、第15図
(a)のアドレス(AI+1)およびAIにおけるそれぞれ
のサンプルデータXNとXPとの差である差分値Dを用い
て、D×AFなる演算処理により、アドレスの小数部AF
対応する補間データ値Oが計算される(S1307)。な
お、差分値Dは、今回以前のインタラプトタイミングに
おける音源処理により求まっている(後述するS1306
照)。
Then, whether the integer part A I of the added address changes is determined (S 1302). Determination If NO, using the difference value D which is the difference between each sample data X N and X P in the address of the FIG. 15 (a) (A I +1) and A I, D × A F becomes operational By the processing, the interpolation data value O corresponding to the decimal part AF of the address is calculated ( S1307 ). Incidentally, (see S 1306 to be described later) difference value D, which are Motoma' by tone generator processing in the current previous interrupt timing.

そして、上記補間データ値Oにアドレスの整数部AI
対応するサンプルデータXPが加算され、現在のアドレス
(AI,AF)に対応する新しいサンプルデータO(第15図
(a)のXQに相当する)が得られる(S1308)。
And this value is added the sample data X P corresponding to the integer part A I address to the interpolation data value O is the current address (A I, A F) new sample data corresponding to the O of (FIG. 15 (a) X Q ) is obtained ( S1308 ).

この後、このサンプルデータにエンベロープ値Eが乗
算され(S1309)、得られたOの内容がMCPU101または
SCPU102のRAM206または306内の波形データバッフアB
(第12図参照)に加算される(S1310)。
Thereafter, the sample data is multiplied by an envelope value E (S 1309 ), and the contents of the obtained O are stored in the waveform data buffer B in the RAM 206 or 306 of the MCPU 101 or SCPU 102.
(See FIG. 12) (S 1310 ).

その後、第4図(a)のメインフローに戻り、つぎの
サンプリング周期でインタラプトが掛かって、第13図の
音源処理の動作フローチャートがふたたび実行され、現
在アドレス(AI,AF)にピッチデータ(PI,PF)が加算さ
れる(S1301)。
Thereafter, the process returns to the main flow of 4 (a), takes interrupt the sampling period of the next, is executed operation flowchart of tone generator processing of Fig. 13 is again, the current address (A I, A F) the pitch data (P I , P F ) are added (S 1301 ).

以上の動作が、アドレスの整数部AIが変わる
(S1302)まで繰り返される。
The above operation is repeated until the integer part A I of address changes (S 1302).

この間、サンプルデータXPおよび差分値Dは更新され
ず、補間データOのみがアドレスAFに応じて更新され、
その都度サンプルデータXQが得られる。
During this time, the sample data XP and the difference value D are not updated, only the interpolation data O is updated according to the address AF ,
Each time, sample data XQ is obtained.

つぎに、S1301で現在アドレス(AI,AF)にピッチデー
タ(PI,PF)が加算された結果、現在アドレスの整数部A
Iが変化したら(S1302)、アドレスAIがエンドアドレス
AEに達しているかまたは越えているか否かが判定される
(S1303)。
Next, as a result of adding the pitch data (P I , P F ) to the current address (A I , A F ) in S 1301 , the integer part A of the current address is obtained.
If I changes ( S1302 ), address A I is the end address
It is determined whether AE has been reached or exceeded ( S1303 ).

判定がYESならば、つぎのループ処理が行われる。す
なわち、エンドアドレスAEを越えた分のアドレス(AI
AE)がループアドレスALに加算され、得られた新しい現
在アドレスの整数部AIからループ再生が開始される(S
1304)。エンドアドレスAEとは、PCM波形データの最後
の波形サンプルデータが記憶されている外部メモリ116
(第1図)上のアドレスである。また、ループアドレス
ALとは、演奏者が波形の出力を繰り返したい位置のアド
レスであり、上記動作により、PCM方式で周知のループ
処理が実現される。
If the determination is YES, the next loop processing is performed. That is, the address exceeding the end address A E (A I
A E ) is added to the loop address A L , and loop reproduction is started from the integer part A I of the obtained new current address (S
1304 ). The end address AE is an external memory 116 in which the last waveform sample data of the PCM waveform data is stored.
(FIG. 1). Also, the loop address
A L is an address of a position where the player wants to repeat the output of the waveform, and the above operation realizes a well-known loop process in the PCM system.

S1303の判定がNOならば、上記S1304の処理は実行され
ない。
If the determination in S1303 is NO, the processing in S1304 is not executed.

つぎに、サンプルデータの更新が行われる。ここで
は、外部メモリ116(第1図)から、新しく更新された
現在アドレスAIと1つ手前のアドレス(AI−1)に対応
する各サンプルデータが、それぞれXN、XPとして読み出
される(S1305)。
Next, the sample data is updated. Here, from the external memory 116 (Figure 1) is read each sample data corresponding to the newly updated current address A I and one before the address (A I -1), respectively X N, as X P ( S1305 ).

さらに、今までの差分値が、更新した上記XNとXPとの
差分値Dに更新される(S1306)。
Furthermore, the difference value so far is updated to the difference value D between the X N and X P the updated (S 1306).

これ以後の動作は前述した通りである。 The subsequent operation is as described above.

以上のようにして、1発音チャネル分のPCM方式によ
る波形データが生成される。
As described above, waveform data for one sounding channel is generated by the PCM method.

DPCM方式による音源処理 つぎに、DPCM方式による音源処理について説明する。Sound source processing by DPCM system Next, sound source processing by the DPCM system will be described.

まず、第15図(b)を用いて、DPCM方式の動作原理の
概略を説明する。
First, the operation principle of the DPCM method will be outlined with reference to FIG. 15 (b).

同図において、外部メモリ116(第1図)のアドレスA
Iに対応するサンプルデータXPは、アドレスAIの1つ前
の、特には図示しないアドレス(AI−1)に対応するサ
ンプルデータとの差分値から求めた値である。
In the figure, address A of external memory 116 (FIG. 1)
Sample data X P corresponding to I, the previous one of the addresses A I, especially is a value determined from the differential value between the sample data corresponding to the not-shown address (A I -1).

外部メモリ116(第1図)のアドレスAIには、つぎの
サンプルデータとの差分値Dが書き込まれているので、
つぎのアドレスのサンプルデータはXP+Dで求まり、こ
れが新たなサンプルデータXPとしておきかわる。
Since a difference value D from the next sample data is written in the address A I of the external memory 116 (FIG. 1),
Sample data of the next address Motomari in X P + D, which replaces the new sample data X P.

この場合、現在アドレスを同図に示すように、AFとす
れば、現在アドレスAFに対応するサンプルデータは、XP
+D×AFで求まる。
In this case, assuming that the current address is A F as shown in the figure, the sample data corresponding to the current address A F is X P
+ D × A F

このように、DPCM方式では、現在のアドレスと、つぎ
のアドレスに対応するサンプルデータ間の差分値Dが外
部メモリ116(第1図)から読み出され、現在のサンプ
ルデータに加算されて、つぎのサンプルデータが求めら
れることにより、順次波形データが作成される。
As described above, in the DPCM method, the difference value D between the current address and the sample data corresponding to the next address is read from the external memory 116 (FIG. 1), added to the current sample data, and Is obtained, waveform data is sequentially created.

このようなDPCM方式を採用すると、隣接する標本間の
差分値が一般に小さい音声や楽音等のような波形を量子
化する場合、通常のPCM方式に比較して、はるかに少な
いビット数で量子化を行えることは明らかである。
When such a DPCM method is used, when quantizing a waveform such as a voice or a musical tone in which the difference value between adjacent samples is generally small, the quantization is performed with a much smaller number of bits as compared with the normal PCM method. Obviously,

以上のDPCM方式の動作を、第14図の動作フローチャー
トを用いて説明する。フロー中の各変数は、MCPU101又
はSCPU102のRAM206、306上の第9図のいずれかの発音
チャネル領域に記憶される第11図のテーブル1のDPCMフ
ォーマットの各データである。
The operation of the above DPCM method will be described with reference to the operation flowchart of FIG. Each variable in the flow is each data in the DPCM format of Table 1 in FIG. 11 stored in one of the sounding channel areas in FIG. 9 on the RAM 206 or 306 of the MCPU 101 or the SCPU 102.

外部メモリ116(第1図)上のDPCM差分波形データが
記憶されているアドレスのうち、現在の処理の対象とさ
れるデータが記憶されているアドレスを第15図(b)に
示す(AI,AF)とする。
FIG. 15 (b) shows an address at which data to be processed at present is stored among addresses at which DPCM differential waveform data is stored on the external memory 116 (FIG. 1) (A I , A F ).

まず、現在アドレス(AI,AF)にピッチデータ(PI,
PF)が加算される(S1401)。
First, pitch data (P I , A F ) is added to the current address (A I , A F ).
P F) is added (S 1401).

そして、加算されたアドレスの整数部AIに変化がある
か否かが判定される(S1402)。判定がNOならば、第15
図(b)のアドレスAIにおける差分値Dを用いて、D×
AFなる演算処理により、アドレスの小数部AFに対応する
補間データ値Oが演算される(S1414)。なお、差分値
Dは、今回以前のインタラプトタイミングにおける音源
処理により求まっている(後述するS1406とS1410
照)。
Then, it is determined whether there is a change in the integer part A I of the added address ( S1402 ). If the judgment is NO, the 15th
Using the difference value D at the address A I in FIG.
The A F becomes the arithmetic processing, the interpolation data values O corresponding to the decimal part A F address is calculated (S 1414). Incidentally, the difference value D (see S 1406 and S 1410 to be described later) which are Motoma' by tone generator processing in the current previous interrupt timing.

つぎに、上記補間データ値Oにアドレスの整数部AI
対応するサンプルデータXPが加算され、現在アドレス
(AI,AF)に対応する新しいサンプルデータO(第15図
(b)のXQに対応)が得られる(S1415)。
Then are added the sample data X P corresponding to the integer part A I address to the interpolation data value O is, current address (A I, A F) new sample data O corresponding to (FIG. 15 (b), X Q ) is obtained (S 1415 ).

この後、このサンプルデータにエンベロープ値Eが乗
算され(S1416)、得られたOの内容がMCPU101または
SCPU102のRAM206または306内の波形データバッフアB
(第12図参照)に加算される(S1417)。
Thereafter, the sample data is multiplied by an envelope value E (S 1416 ), and the contents of the obtained O are stored in the waveform data buffer B in the RAM 206 or 306 of the MCPU 101 or SCPU 102.
(See FIG. 12) (S 1417 ).

その後、第4図(a)のメインフローに戻り、つぎの
サンプリング周期でインタラプトが掛かって、第14図の
音源処理の動作フローチャートがふたたび実行され、現
在アドレス(AI,AF)にピッチデータ(PI,PF)が加算さ
れる(S1401)。
Thereafter, the process returns to the main flow of 4 (a), takes interrupt the sampling period of the next, is executed operation flowchart of tone generator processing of FIG. 14 is again, the current address (A I, A F) the pitch data (P I , P F ) are added (S 1401 ).

以上の動作が、アドレスの整数部AIに変化が生ずるま
で繰り返される。
The above operation is repeated until a change occurs in the integer part A I of the address.

この間、サンプルデータXPおよび差分値Dは更新され
ず、補間データOのみがアドレスAFに応じて更新され、
その都度新たなサンプルデータXQが得られる。
During this time, the sample data XP and the difference value D are not updated, only the interpolation data O is updated according to the address AF ,
Each time, new sample data XQ is obtained.

つぎに、S1401で現在アドレス(AI,AF)にピッチデー
タ(PI,PF)が加算された結果、現在アドレスの整数部A
Iが変化したら(S1402)、アドレスAIがエンドアドレス
AEに達しているかまたは越えているか否かが判定される
(S1403)。
Next, the pitch data (P I , P F ) is added to the current address (A I , A F ) in S 1401 , and as a result, the integer part A of the current address is obtained.
If I changes ( S1402 ), address A I is the end address
It is determined whether AE has been reached or exceeded ( S1403 ).

判定がNOの場合、以下のS1404〜S1407のループ処理に
より、現在アドレスの整数部AIに対応するサンプルデー
タが計算される。すなわち、まず、旧AIという変数(第
11図のテーブル1のDPCMの欄参照)には、現在アドレス
の整数部AIが変化する前の値が格納されている。これ
は、後述するS1406またはS1413の処理の繰り返しにより
実現される。この旧AIの値がS1406で順次インクリメン
トされながら、S1407で旧AIにより指示される外部メモ
リ116(第1図)上の差分波形データがDとして読み出
され、S1405において順次サンプルデータXPに累算され
る。そして、旧AIの値が変化後の現在アドレスの整数部
AIに等しくなった時点で、サンプルデータXPの値は変化
後の現在アドレスの整数部AIに対応する値となる。
If the determination is NO, the loop processing of the following S 1404 to S 1407, the sample data currently corresponding to the integer part A I of the address is calculated. That is, first, a variable called old A I (the
11 the reference column of the DPCM table 1) of the figure, the value before the current integer part A I address changes are stored. This is achieved by repeating the processing of S 1406 or S 1413 will be described later. While the value of the old A I is sequentially incremented at S 1406, the difference waveform data in the external memory 116 (FIG. 1) indicated by old A I in S 1407 is read as D, sequentially samples in S 1405 It is accumulated in the data X P. The integer part of the current address after the value of the old A I change
When it becomes equal to A I, the value of the sample data X P is the current value corresponding to the integer part A I address after the change.

このようにして、現在アドレスの整数部AIに対応する
サンプルデータXPが求まると、S1404の判定がYESとな
り、前述の補間値の演算処理(S1414)に移る。
In this way, the sample data X P currently corresponding to the integer part A I address is obtained, the determination is YES in S 1404, proceeds to the processing of the aforementioned interpolated value (S 1414).

上述の音源処理が各インタラプトタイミング毎に繰り
返され、S1403の判定がYESに変化したら、つぎのループ
処理に入る。
Tone generator processing described above is repeated for each interrupt timing, the determination of S 1403 is When changes to YES, enters a loop processing of the next.

まず、エンドアドレスAEを越えた分のアドレス(AI
AE)がループアドレスALに加算され、得られたアドレス
が新たな現在アドレスの整数部AIとされる(S1408)。
First, addresses exceeding the end address A E (A I
A E ) is added to the loop address A L , and the obtained address is used as the integer part A I of the new current address (S 1408 ).

以下、ループアドレスALからどれだけアドレスが進ん
だかによって、何回か差分値Dを累算する操作が繰り返
されることにより、新たな現在アドレスの整数部AIに対
応するサンプルデータXPが計算される。すなわち、ま
ず、初期設定としてサンプルデータXPが予め設定されて
いるループアドレスALにおけるサンプルデータXPL(第1
1図のテーブル1のDPCMの欄参照)の値とされ、また、
旧AIがループアドレスALの値とされる(S1409)。そし
て、以下のS1410〜S1413の処理が繰り返される。すなわ
ち、旧AIの値がS1413で順次インクリメントされなが
ら、S1410で旧AIにより指示される外部メモリ116(第1
図)上の差分波形データがDとして読み出され、S1412
において順次サンプルデータXPに累算される。そして、
旧AIの値が新たな現在アドレスの整数部AIに等しくなっ
た時点で、サンプルデータXPの値はループ処理後の新た
な現在アドレスの整数部AIに対応する値となる。
Hereinafter, the how advanced address from the loop address A L, by operation of accumulating several times the difference value D is repeated, the sample data X P corresponding to the integer part A I of the new current address is calculated Is done. That is, first, the sample data X PL (first in the loop address A L that sample data X P as the initial setting is set in advance
(See the DPCM column in Table 1 in Figure 1)
Old A I is the value of the loop address A L (S 1409). Then, the process is repeated in S 1410 to S 1413 described below. That is, while the values of the old A I is sequentially incremented at S 1413, an external memory 116 (first indicated by old A I in S 1410
Differential waveform data on the Figure) is read as D, S 1412
It is accumulated sequentially sample data X P at. And
When the value of the old A I is equal to the integer portion A I of the new current address, the value of the sample data X P becomes a value corresponding to the integer part A I of the new current address after loop processing.

このようにして、新たな現在アドレスの整数部AIに対
応するサンプルデータXPが求まると、S1411の判定がYES
となり、前述の補間値の演算処理(S1414)に移る。
In this way, the sample data X P corresponding to the integer part A I of the new current address is obtained, the determination of S 1411 is YES
Then, the processing shifts to the above-described interpolation value calculation processing ( S1414 ).

以上のようにして、1発音チャネル分のDPCM方式によ
る波形データが生成される。
As described above, waveform data for one sounding channel is generated by the DPCM method.

FM変調方式による音源処理(その1) つぎに、FM変調方式による音源処理について説明す
る。
Sound source processing by FM modulation method (No. 1) Next, sound source processing by FM modulation method will be described.

FM変調方式では、通常、第18図のOP1〜OP4で示される
ようなオペレータと称する同一内容のハードウエアまた
はソフトウエアが用いられ、それらが第18図のアルゴリ
ズム1〜4として示されるような接続規則で相互に接続
されることにより、楽音の生成が行われる。本実施例で
は、ソフトウエアでFM変調方式を実現するものである。
In the FM modulation method, usually, the same hardware or software called an operator as shown by OP1 to OP4 in FIG. 18 is used, and they are connected as shown in algorithms 1 to 4 in FIG. Musical sounds are generated by being connected to each other by rules. In this embodiment, the FM modulation method is realized by software.

つぎに、第16図(a)の動作フローチャートを用い
て、2オペレータで音源処理を行う場合の、1実施例の
動作を説明する。処理のアルゴリズムは同図(b)で示
される。また、フロー中の各変数は、MCPU101又はSCP
U102のRAM206、306上の第9図のいずれかの発音チャネ
ル領域に記憶される第11図のテーブル1のFMフォーマッ
トの各データである。
Next, the operation of one embodiment in the case where sound source processing is performed by two operators will be described with reference to the operation flowchart of FIG. 16 (a). The processing algorithm is shown in FIG. Each variable in the flow is MCPU101 or SCP
These are the data in the FM format of Table 1 in FIG. 11 stored in any of the sounding channel areas in FIG. 9 on the RAMs 206 and 306 of U102.

最初に、モジュレータであるオペレータ2(OP2)の
処理が行われる。ピッチ処理については、PCM方式のよ
うに補間が行われないので、整数アドレスA2のみであ
る。すなわち、外部メモリ116(第1図)には変調用の
波形データが十分に細かい歩進間隔で記憶されているも
のとする。
First, the processing of the operator 2 (OP2), which is a modulator, is performed. For pitch processing, since the interpolation is not performed as PCM method, only integer address A 2. That is, it is assumed that the waveform data for modulation is stored in the external memory 116 (FIG. 1) at sufficiently small step intervals.

まず、現在アドレスA2にピッチデータP2が加算される
(S1601)。
First, the pitch data P 2 is added current to the address A 2 (S 1601).

つぎに、このアドレスA2にフィードバック出力FO2
変調入力として加算され、新たなアドレスAM2が得られ
る(S1602)。フィードバック出力FO2は、前回のインタ
ラプトタイミングにおいて後述するS1605の処理が実行
されることにより得られている。
Then, the address A 2 feedback output F O2 is added as a modulation input, a new address A M2 is obtained (S 1602). Feedback output F O2 are obtained by treatment of S 1605 to be described later in the previous interrupt timing is executed.

さらに、アドレスAM2(位相)に対応する正弦波の値
が計算される。実際には、外部メモリ116(第1図)に
正弦波データが記憶されており、上記アドレスAM2でそ
の正弦波データをテーブル引きすることにより得られる
(S1603)。
Further, the value of the sine wave corresponding to the address A M2 (phase) is calculated. Actually, the sine wave data is stored in the external memory 116 (FIG. 1), and the sine wave data is obtained by looking up the sine wave data at the address AM2 ( S1603 ).

続いて、上記正弦波データにエンベロープ値E2が乗算
され出力O2が得られる(S1604)。
Subsequently, output O 2 envelope value E 2 is multiplied by the sine wave data is obtained (S 1604).

この後、この出力O2にフィードバック・レベルFL2
乗算されフィードバック出力FO2が得られる(S1605)。
この出力FO2は、本実施例の場合、次回のインタラプト
タイミングにおけるオペレータ2(OP2)への入力とさ
れる。
Thereafter, the feedback level F L2 is multiplied feedback output F O2 is obtained on the output O 2 (S 1605).
In the case of the present embodiment, this output FO2 is input to the operator 2 (OP2) at the next interrupt timing.

また、O2にモジュレーション・レベルML2が乗算され
てモジュレーション出力MO2が得られる(S1606)。この
モジュレーション出力MO2は、オペレータ1(OP1)への
変調入力になる。
Also, modulation level M L2 to O 2 is multiplied modulation output M O2 is obtained (S 1606). The modulation output M O2 will modulation input to the operator 1 (OP1).

つぎに、オペレータ1(OP1)の処理に移る。この処
理は、フィードバック出力による変調入力が無い他は、
殆ど上述のオペレータ2の場合と同じである。
Next, the processing shifts to the processing of the operator 1 (OP1). This process is similar to the following, except that there is no modulation input by the feedback output.
This is almost the same as the case of the operator 2 described above.

まず、オペレータ1の現在アドレスA1にピッチデータ
P1が加算され(S1607)、この値に上述のモジュレーシ
ョン出力MO2が加算されて新たなアドレスAM1が得られる
(S1608)。
First, the pitch data in the current address A 1 of the operator 1
P 1 is added (S 1607), a new address A M1 is obtained modulation output M O2 above this value is added (S 1608).

つぎに、このアドレスAM1(位相)に対応する正弦波
の値が外部メモリ116(第1図)から読み出され
(S1609)、これにエンベロープ値E1が乗算され楽音波
形出力O1が得られる(S1610)。
Next, the value of the sine wave corresponding to the address A M1 (phase) is read from the external memory 116 (FIG. 1) (S 1609 ), and is multiplied by the envelope value E 1 to generate the musical sound waveform output O 1. Obtained ( S1610 ).

そして、これがRAM206(第2図)又は306(第3図)
内のバッファB(第12図参照)に加算され(S1611)、
1発音チャネル分のFM変調処理を終了する。
And this is the RAM 206 (FIG. 2) or 306 (FIG. 3)
Is added to the buffer B (see FIG. 12) in (S 1611 ),
The FM modulation processing for one sounding channel ends.

TM変調方式による音源方式(その1) つぎに、TM変調方式による音源処理について説明す
る。
Sound source processing by TM modulation method (No. 1) Next, sound source processing by the TM modulation method will be described.

まず、TM変調方式の原理について説明する。 First, the principle of the TM modulation method will be described.

前述のFM変調方式は、 e=A・sin{ωct+I(t)・sinωmt} なる演算式を基本する。ただし、ここで、ωctは搬送波
位相角(搬送信号)、sinωmtは変調波位相角(変調信
号)、およびI(t)は変調指数である。
FM modulation method described above is based on the e = A · sin {ω c t + I (t) · sinω m t} becomes expression. However, where, omega c t is the carrier phase angle (carrier signal), the sin .omega m t modulation wave phase angle (modulation signal), and I (t) is the modulation index.

これに対し、本実施例でTM変調方式と呼ぶ位相変調方
式は、 e=A・fT{fc(t)+I(t)・sinωmt} なる演算式を基本とする。ここで、fT(t)は三角波関
数であり、各位相角の領域毎につぎのような関数で定義
される(ただし、ωは入力)。
In contrast, phase modulation system referred to as TM modulation method in this embodiment, a basic e = A · f T {f c (t) + I (t) · sinω m t} becomes expression. Here, f T (t) is a triangular wave function, and is defined by the following function for each region of each phase angle (however, ω is input).

fT(ω)=2/π・ω ・・(領域:0≦ω≦π/2) fT(ω)=−1+2/π(3π/2−ω) ・・(領域:π/2≦ω≦3π/2) fT(ω)=−1+2/π(ω−3π/2) ・・(領域:3π/2≦ω≦2π) また、fcは変形サイン波と呼ばれ、各位相角の領域毎
に、異なるサイン波形データの記憶されている外部メモ
リ116(第1図)を、搬送位相角ωctでアクセスして得
られる搬送信号生成関数である。各位相角の領域毎のfc
は、つぎのように定義される。
f T (ω) = 2 / π · ω (region: 0 ≦ ω ≦ π / 2) f T (ω) = − 1 + 2 / π (3π / 2−ω) ·· (region: π / 2 ≦ ω ≦ 3π / 2) f T (ω) = − 1 + 2 / π (ω-3π / 2) (region: 3π / 2 ≦ ω ≦ 2π) Further, f c is called a modified sine wave, and each phase is This is a carrier signal generation function obtained by accessing the external memory 116 (FIG. 1) in which different sine waveform data is stored for each corner region at the carrier phase angle ω ct . F c for each region of each phase angle
Is defined as

fc(t)=π/2sinωct ・・(領域:0≦ωt≦π/2) fc(t)=π−π/2sinωct ・・(領域:π≦ωt≦3π/2) fc(t)=2π+π/2sinωct ・・(領域:3π/2≦ωct≦2π) (ただしnは整数) TM変調方式では、上述の如き関数fc(t)で生成され
る搬送信号に、変調信号sinωmtを変調指数I(t)で
示される割合で加算して得た加算信号により、前述の三
角波関数が変調される。これにより、変調指数I(t)
の血が0であれば正弦波を生成することができ、I
(t)の値を大きくしてゆけば非常に深く変調された波
形を生成することができる。ここで、変調信号sinωmt
の代わりに様々な信号を用いることができ、以下に述べ
るように、前回演算時の自分のオペレータ出力を一定の
フィードバックレベルでフィードバックさせたり、他の
オペレータの出力を入力させたりすることができる。
f c (t) = π / 2sinω c t ·· ( area: 0 ≦ ωt ≦ π / 2 ) f c (t) = π-π / 2sinω c t ·· ( area: π ≦ ωt ≦ 3π / 2 ) f c (t) = 2π + π / 2sinω c t ··: in (region 3π / 2 ≦ ω c t ≦ 2π) ( where n is an integer) TM modulation scheme is generated in such the above function f c (t) The above-described triangular wave function is modulated by an addition signal obtained by adding the modulation signal sinω mt to the carrier signal at a rate indicated by the modulation index I (t). Thus, the modulation index I (t)
If the blood is zero, a sine wave can be generated and I
By increasing the value of (t), a very deeply modulated waveform can be generated. Where the modulation signal sinω m t
Instead, various signals can be used. As described below, it is possible to feed back the own operator output at the previous calculation at a fixed feedback level or to input the output of another operator.

このような原理のTM変調方式による音源処理を、第17
図(a)の動作フローチャートを用いて説明する。この
場合も、第16図のFM変調方式の場合と同様、2オペレー
タで音源処理を行う場合の例であり、処理のアルゴリズ
ムは第17図(b)で示される。また、フロー中の各変数
は、MCPU101又はSCPU102のRAM206、306上の第9図の
いずれかの発音チャネル領域に記憶される第11図のテー
ブル1のTMフォーマットの各データである。
Sound source processing based on the TM modulation method based on this principle is described in the 17th
This will be described with reference to the operation flowchart of FIG. This case is also an example in which the sound source processing is performed by two operators, as in the case of the FM modulation method in FIG. 16, and the processing algorithm is shown in FIG. 17 (b). Each variable in the flow is each data in the TM format of Table 1 in FIG. 11 stored in any of the sounding channel areas in FIG. 9 on the RAM 206 or 306 of the MCPU 101 or the SCPU 102.

最初に、モジュレータであるオペレータ2(OP2)の
処理が行われる。ピッチ処理については、PCM方式のよ
うに補間が行われないので、整数アドレスA2のみであ
る。
First, the processing of the operator 2 (OP2), which is a modulator, is performed. For pitch processing, since the interpolation is not performed as PCM method, only integer address A 2.

まず、現在アドレスA2にピッチデータP2が加算される
(S1701)。
First, the pitch data P 2 is added current to the address A 2 (S 1701).

つぎに、変形サイン変換fcにより、上記アドレスA
2(位相)に対応する変形サイン波が外部メモリ116(第
1図)から読み出され、搬送信号がO2として生成される
(S1702)。
Then, the deformation sine transform f c, the address A
The modified sine wave corresponding to 2 (phase) is read from the external memory 116 (FIG. 1), and the carrier signal is generated as O 2 (S 1702 ).

続いて、搬送信号である上述のO2に、変調信号として
フィードバック出力FO2(S1706)が加算され、新たなア
ドレスが得られてO2とされる(S1703)。フィードバッ
ク出力FO2は、前回のインタラプトタイミングにおいて
後述するS1706の処理が実行されることにより得られて
いる。
Subsequently, the feedback output F O2 (S 1706 ) is added as a modulation signal to the above-described O 2 which is a carrier signal, and a new address is obtained and is set as O 2 (S 1703 ). Feedback output F O2 are obtained by treatment of S 1706 to be described later in the previous interrupt timing is executed.

そして、上述の加算アドレスO2に対応する三角波の値
が計算される。実際には、外部メモリ116(第1図)に
前述した三角波データが記憶されており、上記アドレス
O2でその三角波データをテーブル引きすることにより得
られる(S1704)。
Then, the value of the triangular wave corresponding to the added address O 2 described above is calculated. Actually, the above-mentioned triangular wave data is stored in the external memory 116 (FIG. 1),
In O 2 obtained by the triangular wave data table pull (S 1704).

続いて、上記三角波データにエンベロープ値E2が乗算
され出力O2が得られる(S1705)。
Subsequently, output O 2 envelope value E 2 is multiplied by the triangular wave data is obtained (S 1705).

この後、この出力O2にフィードバック・レベルFL2
乗算されフィードバック出力FO2が得られる(S1707)。
この出力FO2は、本実施例の場合、次回のインタラプト
タイミングにおけるオペレータ2(OP2)への入力とさ
れる。
Thereafter, the feedback level F L2 is multiplied feedback output F O2 is obtained on the output O 2 (S 1707).
In the case of the present embodiment, this output FO2 is input to the operator 2 (OP2) at the next interrupt timing.

また、O2にモジュレーション・レベルML2が乗算され
てモジュレーション出力MO2が得られる(S1707)。この
モジュレーション出力MO2は、オペレータ1(OP1)への
変調入力になる。
Also, modulation level M L2 to O 2 is multiplied modulation output M O2 is obtained (S 1707). The modulation output M O2 will modulation input to the operator 1 (OP1).

つぎに、オペレータ1(OP1)の処理に移る。この処
理は、フィードバック出力による変調入力が無い他は、
殆ど上述のオペレータ2の場合と同じである。
Next, the processing shifts to the processing of the operator 1 (OP1). This process is similar to the following, except that there is no modulation input by the feedback output.
This is almost the same as the case of the operator 2 described above.

まず、オペレータ1の現在アドレスA1にピッチデータ
P1が加算され(S1708)、得られた値に対して前述の変
形サイン変換が行われて搬送信号がO1として得られる
(S1709)。
First, the pitch data in the current address A 1 of the operator 1
P 1 is added (S 1708 ), and the obtained value is subjected to the above-described modified sine transform to obtain a carrier signal as O 1 (S 1709 ).

つぎに、このO1に上述のモジュレーション出力MO2
加算されて新たなO1とされ(S1710)、この値O1が三角
波変換され(S1711)、さらにエンベロープ値E1が乗算
されて楽音波形出力O1が得られる(S1712)。
Next, the O 1 of the above modulation output M O2 are the new O 1 is added (S 1710), the value O 1 is a triangular wave conversion (S 1711), and is further multiplied envelope values E 1 is tone waveform output O 1 is obtained (S 1712).

これがRAM206(第2図)又は306(第3図)内のバッ
ファB(第12図参照)に加算され(S1713)、1発音チ
ャネル分をTM変調処理を終了する。
This is added to the buffer B (see FIG. 12) in the RAM 206 (FIG. 2) or 306 (FIG. 3) (S 1713 ), and the TM modulation processing for one tone generation channel is completed.

以上、PCM、DPCM、FM、TMという4つの方式による音
源処理を説明した。この中でFMとTMの2方式は変調方式
であり、上述の例ではいずれも、第16図(b)、第17図
(b)に示すアルゴリズムに基づく2オペレータによる
処理であるが、実際に演奏時の音源処理は、オペレータ
の数がもっと多く、アルゴリズムはより複雑である。そ
の例が第18図に示されている。同図のアルゴリズム1で
は、フィードバック入力も含めて4重の変調が行われ、
複雑な波形が得られる。またアルゴリズム2では、フィ
ードバック入力を有する2組のアルゴリズムが並列して
おり、例えばアタックからサステインに移行する際の音
色変化を表現するのに適している。またアルゴリズム4
は、サイン波合成法に近い特徴を有する。
The sound source processing according to the four methods of PCM, DPCM, FM, and TM has been described above. Among these, the two systems of FM and TM are modulation systems, and in the above-described examples, both are processes by two operators based on the algorithm shown in FIGS. 16 (b) and 17 (b). The sound source processing at the time of performance has more operators and the algorithm is more complicated. An example is shown in FIG. In the algorithm 1 shown in the figure, quadruple modulation including feedback input is performed.
A complicated waveform can be obtained. In Algorithm 2, two sets of algorithms having a feedback input are arranged in parallel, and are suitable for expressing, for example, a timbre change when shifting from attack to sustain. Algorithm 4
Have characteristics close to the sine wave synthesis method.

第18図の4オペレータによるFM方式とTM方式の通常考
えられる音源処理の例を、第19図及び第20図を用いて順
次説明する。
An example of normally considered sound source processing of the FM system and the TM system by the four operators in FIG. 18 will be sequentially described with reference to FIGS. 19 and 20.

FM変調方式による音源処理(その2) 第19図は、第18図のアルゴリズム1に対応するFM変調
方式に基づく通常考えられる音源処理の動作フローチャ
ートである。フロー中の各変数は、MCPU101又はSCPU1
02のRAM206、306上の第9図のいずれかの発音チャネル
領域に記憶される。なお、第11図のテーブル1のFMフォ
ーマットの各データには対応していないが、そのデータ
フォーマットを拡張すれば容易に実現できることは明ら
かである。
Sound source processing by FM modulation method (No. 2) FIG. 19 is an operation flowchart of sound processing that can be normally considered based on the FM modulation method corresponding to the algorithm 1 in FIG. Each variable in the flow is MCPU101 or SCPU1
02 is stored in any of the sounding channel areas shown in FIG. Although it does not correspond to each data of the FM format of the table 1 in FIG. 11, it is obvious that it can be easily realized by extending the data format.

始めに、オペレータ4(OP4)の現在アドレスA4に、
ピッチデータP4が加算される(S1901)。つぎに、この
アドレスA4にフィードバック出力FO41905)が変調入
力として加算され、新たなアドレスAM4が得られる(S
1902)。さらに、アドレスAM4(位相)に対応する正弦
波の値が、外部メモリ116(第1図参照)から読み出さ
れ(S1903)、これにエンベロープ値E4が乗算されて出
力O4が得られる(S1904)。この後、上記出力O4にフィ
ードバック・レベルFL4が乗算されフィードバック出力F
O4が得られる(S1905)。また、出力O4にモジュレーシ
ョン・レベルML4が乗算されてモジュレーション出力MO4
が得られる(S1906)。このモジュレーション出力M
O4は、つぎのオペレータ3(OP3)への変調入力にな
る。
First, to the current address A 4 of the operator 4 (OP4),
Pitch data P 4 is added (S 1901). Next, the address A 4 to the feedback output F O4 (1905) is added as a modulation input, a new address A M4 is obtained (S
1902 ). Furthermore, the value of the sine wave corresponding to the address A M4 (phase) is read from the external memory 116 (see FIG. 1) (S 1903), this is multiplied envelope value E 4 is the output O 4 is obtained ( S1904 ). Then, it is multiplied to the output O 4 feedback level F L4 feedback output F
O4 is obtained (S 1905). Also, modulation level M L4 is multiplied to the output O 4 with modulation output M O4
Is obtained ( S1906 ). This modulation output M
O4 is a modulation input to the next operator 3 (OP3).

つぎに、オペレータ3(OP3)の処理に移る。この処
理は、フィードバック出力による変調入力が無い他は、
殆ど上述のオペレータ4の場合と同じである。まず、オ
ペレータ3(OP3)の現在アドレスA3にピッチデータP3
が加算される(S1907)。つぎに、アドレスA3にモジュ
レーション出力MO4が変調入力として加算され、新たな
アドレスAM3が得られる(S1908)。さらにこのアドレス
AM3(位相)に対応する正弦波の値が、外部メモリ116
(第1図)から読み出され(S1909)、これにエンベロ
ープ値E3が乗算されて出力O3が得られる(S1910)。こ
の後、この出力O3にモジュレーション・レベルML3が乗
算されてモジュレーション出力O3が得られる
(S1911)。このモジュレーション出力MO3は、つぎのオ
ペレータ2(OP2)への変調入力になる。
Next, the processing shifts to the processing of the operator 3 (OP3). This process is similar to the following, except that there is no modulation input by the feedback output.
This is almost the same as the case of the operator 4 described above. First, the pitch data P 3 is assigned to the current address A 3 of the operator 3 (OP3).
Is added ( S1907 ). Then, the modulation output M O4 is added as a modulation input to the address A 3, a new address A M3 is obtained (S 1908). Further this address
A The value of the sine wave corresponding to M3 (phase) is
Read from (FIG. 1) (S 1909), which is the output O 3 envelope value E 3 are multiplied to obtain the (S 1910). Thereafter, the modulation level M L3 is multiplied modulation output O3 is obtained on the output O 3 (S 1911). This modulation output MO3 becomes a modulation input to the next operator 2 (OP2).

つぎに、オペレータ2(OP2)の処理が実行される
が、この処理は変調入力が異なるのみで上述のオペレー
タ3の場合と同じであるので、説明を省略する。
Next, the process of the operator 2 (OP2) is executed. This process is the same as that of the above-described operator 3 except that the modulation input is different, and thus the description is omitted.

最後に、オペレータ1(OP1)の処理に入るが、これ
もステップS1920までは、これまでと同様な処理が行わ
れる。そして、S1920で得られた楽音波形出力O1は、キ
ャリアとしてバッファB(第12図参照)に累算される
(S1921)。
Finally, although starts the processing of the operator 1 (OP1), which is also to step S 1920, to date the same processing is performed. Then, tone waveform output O 1 obtained in S 1920 is accumulated in the buffer B (see FIG. 12) as the carrier (S 1921).

TM変調方式による音源処理(その2) 第20図は、第18図のアルゴリズム1に対応するTM変調
方式に基づく通常考えられる音源処理の動作フローチャ
ートである。フロー中の各変数は、MCPU101又はSCPU1
02のRAM206、306上に第9図のいずれかの発音チャネル
領域に記憶される。なお、第11図のテーブル1のTMフォ
ーマットの各データには対応していないが、第11図のデ
ータフォーマットを拡張すれば容易に実現できることは
明らかである。
Sound source processing by TM modulation method (No. 2) FIG. 20 is an operation flowchart of sound processing that is normally considered based on the TM modulation method corresponding to the algorithm 1 of FIG. Each variable in the flow is MCPU101 or SCPU1
02 is stored in any of the sounding channel areas shown in FIG. It should be noted that it does not correspond to each data of the TM format of the table 1 of FIG. 11, but it is obvious that it can be easily realized by extending the data format of FIG.

まず、オペレータ4(OP4)の現在アドレスA4にピッ
チデータP4が加算される(S2001)。つぎに、変形サイ
ン変換fcによって、上述のアドレスA4(位相)に対応す
る変形サイン波が外部メモリ116(第1図)から読み出
され、搬送信号がO4として生成される(S2002)。そし
て、出力O4に変調信号としてフィードバック出力FO4(S
2007参照)が加算され、新たなアドレスO4が得られる
(S2003)。つぎに、このアドレスO4(位相)に対応す
る三角波の値が、外部メモリ116(第1図)から読み出
され(S2004)、これにエンベロープ値E4が乗算されて
出力O4が得られる(S2005)。この後、この出力O4にモ
ジュレーション・レベルML4が乗算されてモジュレーシ
ョン出力MO4が得られ(S2006)、また、出力O4にフィー
ドバック・レベルFL4が乗算されてフィードバック出力F
O4が得られる(S2007)。上記モジュレーション出力MO4
はつぎのオペレータ3(OP3)への変調入力になる。
First, the pitch data P 4 is added to the current address A 4 of the operator 4 (OP4) (S 2001) . Then, the deformation sine transform f c, deformation sine wave corresponding to the above address A 4 (phase) is read from the external memory 116 (Figure 1), the carrier signal is generated as O 4 (S 2002 ). The output O 4 to the feedback output as a modulation signal F O4 (S
2007 reference) is added, the new address O 4 is obtained (S 2003). Then, the value of the triangular wave corresponding to the address O 4 (phase) is read from the external memory 116 (Figure 1) (S 2004), this is multiplied envelope value E 4 is the output O 4 is obtained (S 2005 ). Thereafter, the output O 4 is multiplied by the modulation level M L4 to obtain a modulation output M O4 (S 2006 ), and the output O 4 is multiplied by the feedback level FL 4 to obtain the feedback output F L4.
O4 is obtained (S 2007). The modulation output M O4
Is the modulation input to the next operator 3 (OP3).

つぎに、オペレータ3(OP3)の処理に入る。この処
理は、フィードバック出力による変調入力が無い他は、
殆ど上述のオペレータ4の場合と同じである。まず、オ
ペレータ3の現在アドレスA3にピッチデータP3が加算さ
れ(S2008)、得られた値に対して変形サイン変換が行
われて搬送信号がO3として得られる(S2009)。つぎ
に、このO3に上述のモジュレーション出力MO4が加算さ
れて新たなO3とされ(S2010)、この値O3が三角波変換
され(S2011)、さらにエンベロープ値E3が乗算されて
出力O3が得られる(S2012)。さらに、これにモジュレ
ーション・レベルML3が乗算されてモジュレーション出
力MO3が得られる(S2013)。このモジュレーション出力
MO3は、つぎのオペレータ2(OP2)への変調入力にな
る。
Next, the processing of the operator 3 (OP3) is started. This process is similar to the following, except that there is no modulation input by the feedback output.
This is almost the same as the case of the operator 4 described above. First, is added to the current pitch data P 3 to the address A 3 operators 3 (S 2008), it is performed modified sine transform the obtained value carrier signal is obtained as O 3 (S 2009). Then, the O 3 to the aforementioned modulation output M O4 is added is a new O 3 (S 2010), the value O 3 is a triangular wave conversion (S 2011), and is further multiplied by the envelope values E 3 the output O 3 obtained (S 2012). Further, this modulation level M L3 is multiplied modulation output M O3 is obtained (S 2013). This modulation output
MO3 is a modulation input to the next operator 2 (OP2).

つぎに、オペレータ2(OP2)の処理が実行される
が、この処理は変調入力が異なるのみで上述のオペレー
タ3の場合と同じであるので、説明を省略する。
Next, the process of the operator 2 (OP2) is executed. This process is the same as that of the above-described operator 3 except that the modulation input is different, and thus the description is omitted.

最後に、オペレータ1(OP1)の処理に入るが、これ
もステップS2024までは、これまでと同様な処理が行わ
れる。そして、S2024で得られた楽音波形出力O1は、キ
ャリアとしてバッファB(第12図参照)に累算される
(S2025)。
Finally, the process of the operator 1 (OP1) is started, and the same process as before is performed up to step S2024 . Then, tone waveform output O 1 obtained in S 2024 is accumulated in the buffer B (see FIG. 12) as the carrier (S 2025).

以上、変調方式による通常の音源処理の実施例を説明
したが、この処理は、前述したように1発音チャネル分
の処理で、実際にはMCPU101とSCPU102の各1CPU当た
り、8発音チャネル分処理される(第4図(d)参
照)。そして、ある発音チャネルに変調方式が指定され
ていれば、上述の変調方式による音源処理が働く。
As described above, the embodiment of the normal sound source processing by the modulation method has been described. However, this processing is processing for one sounding channel as described above, and is actually performed for eight sounding channels for each CPU of the MCPU 101 and the SCPU 102. (See FIG. 4 (d)). If the modulation method is specified for a certain sound channel, the sound source processing by the above-described modulation method operates.

変調方式の改良例(その1) つぎに、変調方式による音源処理の第1の改良例を説
明する。
Modification Example (Part 1) Next, a first modification example of the sound source processing by the modulation method will be described.

その基本概念は、第21図のフローチャートに示されて
いる。
The basic concept is shown in the flowchart of FIG.

同図において、オペレータ1、2、3、4処理は、用
いられる変数名が異なるだけでプログラム構造は同じで
ある。
In the figure, operators 1, 2, 3, and 4 have the same program structure except for the variable names used.

ここで、各オペレータ処理は、変調入力を決めなけれ
ば、オペレータ処理を行うことはできない。というの
は、第18図に示されるようにアルゴリズムによって各オ
ペレータ処理への変調入力が異なるからである。つま
り、どのオペレータ処理の出力を変調入力とするのか、
あるいは他のオペレータ処理でなく自分のオペレータ処
理の出力をフィードバックして、自分の変調入力とする
のかを決める必要がある。そこで、第21図の動作フロー
では、このような接続関係がアルゴリズム処理
(S2105)としてまとめて行われ、これにより得られる
接続関係が次のインタラプトタイミングにおける各オペ
レータ処理(S2102〜S2104)における変調入力を決定す
るように動作する。なお、発音開始時の(すなわち一番
始めの)各オペレータ処理への入力としては、或る初期
値が与えられる。
Here, each operator process cannot perform the operator process unless the modulation input is determined. This is because the modulation input to each operator process differs depending on the algorithm as shown in FIG. In other words, which operator process output is used as the modulation input,
Alternatively, it is necessary to feed back the output of one's own operator's processing instead of the other operator's processing and determine whether to use the output of one's own modulation. Therefore, in the operation flow of FIG. 21, such a connection relationship algorithm processing done collectively as (S 2105), the operator process connection relation thus obtained is in the next interrupt timing (S 2102 ~S 2104) To determine the modulation input at. It should be noted that an initial value is given as an input to each operator process at the start of sound generation (that is, at the beginning).

このように、オペレータ処理とアルゴリズム処理を分
離すれば、いかなるアルゴリズムの場合でも、オペレー
タ処理のプログラムは同一でよく、アルゴリズム処理の
み変更すればよい。従って、変調方式による音源処理全
体のプログラム容量を大幅に減少させることが可能とな
る。
As described above, if the operator process and the algorithm process are separated, the program of the operator process may be the same for any algorithm, and only the algorithm process may be changed. Therefore, it is possible to greatly reduce the program capacity of the entire sound source processing by the modulation method.

次に、上述の基本概念に基づくFM変調方式の改良例に
ついて説明する。第21図のオペレータ処理のFM変調方式
による動作フローチャートを、オペレータ1処理を例に
とって第22図(a)に示し、1オペレータあたりの演算
アルゴリズムを同図(b)に示す。他のオペレータ2〜
4処理も変数の添字番号が異なるだけで全く同様であ
る。なお、フロー中の各変数は、MCPU101又はSCPU102
のRAM206、306上の第9図のいずれかの発音チャネルに
記憶される。
Next, an improved example of the FM modulation method based on the above-described basic concept will be described. FIG. 21 (a) is a flowchart showing the operation of the operator process shown in FIG. 21 using the FM modulation method, and FIG. 22 (b) shows the calculation algorithm per operator, taking the operator 1 process as an example. Other operators 2
The four processes are exactly the same except that the subscript numbers of the variables are different. Each variable in the flow is the MCPU 101 or the SCPU 102
Is stored in any one of the tone generation channels shown in FIG.

まず、位相角に対応するアドレスA1にピッチデータP1
が加算され、新たなアドレスA1とされる(S2201)。つ
ぎに、このアドレスA1に変調入力MI1が加算され、アド
レスAM1が得られる(S2202)。変調入力MI1は、前回の
インタラプトタイミングでのアルゴリズム処理S
2105(第21図)によって決定され、アルゴリズムによっ
て、そのオペレータ自身のフィードバック出力FO1であ
ったり、あるいは他のオペレータ、例えばオペレータ2
の出力MO2であったりする。つぎに、このアドレス(位
相)AM1に対応する正弦波の値が外部メモリ116(第1
図)から読み出され、出力O1が得られる(S2203)。そ
の後、これにエンベロープデータE1が乗算された値が、
オペレータ1の出力O1になる(S2204)。また、この出
力O1にフィードバック・レベルFL1が乗算されてフィー
ドバック出力FO1が得られ(S2205)、また、出力O1にモ
ジュレーション・レベルML1が乗算されて、モジュレー
ション出力MO1が得られる(S2206)。
First, the pitch data P 1 is stored in the address A 1 corresponding to the phase angle.
There are added, it is a new address A 1 (S 2201). The modulated input M I1 to this address A 1 is added, the address A M1 is obtained (S 2202). Modulation input M I1 is the algorithm processing S at the previous interrupt timing.
2105 (FIG. 21), depending on the algorithm, the operator's own feedback output F O1 or another operator, eg operator 2
Or the output MO2 . Next, the value of the sine wave corresponding to the address (phase) A M1 is stored in the external memory 116 (first memory).
Read from the drawing), the output O 1 is obtained (S 2203). After that, the value obtained by multiplying this by the envelope data E 1 is
It becomes the output O 1 of the operator 1 (S 2204). Further, the output O 1 to be multiplied feedback level F L1 is the feedback output F O1 obtained (S 2205), also modulation level M L1 is multiplied to the output O 1, the modulation output M O1 is obtained ( S2206 ).

次に、前述の基本概念に基づくTM変調方式の改良例に
ついて説明する。第21図のオペレータ処理のTM変調方式
による動作フローチャートを、オペレータ1処理を例に
とって第23図(a)に示し、1オペレータあたりの演算
アルゴリズムを同図(b)に示す。他のオペレータ2〜
4処理も変数の添字番号が異なるだけで全く同様であ
る。なお、フロー中の各変数は、MCPU101又はSCPU102
のRAM206、306上の第9図のいずれかの発音チャネルに
記憶される。
Next, an improved example of the TM modulation scheme based on the above-described basic concept will be described. FIG. 23 (a) shows an operation flowchart of the TM modulation method of the operator processing in FIG. 21 taking the operator 1 processing as an example, and FIG. 21 (b) shows the calculation algorithm per operator. Other operators 2
The four processes are exactly the same except that the subscript numbers of the variables are different. Each variable in the flow is the MCPU 101 or the SCPU 102
Is stored in any one of the tone generation channels shown in FIG.

まず、現在アドレスA1にピッチデータP1が加算される
(S2301)。つぎに、変形サイン変換fcによって、上述
のアドレスA1(位相)に対応する変形サイン波が外部メ
モリ116(第1図)から読み出され、搬送信号がO1とし
て生成される(S2302)。そして、出力O1に変調信号と
して変調入力MI1が加算され、新たなアドレスO1が得ら
れる(S2303)。つぎに、このアドレスO1(位相)に対
応する三角波の値が、外部メモリ116から読み出され(S
2304)、これにエンベロープ値E1が乗算され出力O1とさ
れる(S2305)。この後、この出力O1にフィードバック
・レベルFL1が乗算されてフィードバック出力FO1が得ら
れ(S2306)、また、出力O1にモジュレーション・レベ
ルML1が乗算されてモジュレーション出力MO1が得られる
(S2307)。
First, the pitch data P 1 is added to the current address A 1 (S 2301). Then, the deformation sine transform f c, deformation sine wave corresponding to the above address A 1 (phase) is read from the external memory 116 (Figure 1), the carrier signal is generated as O 1 (S 2302 ). The modulation input M I1 as a modulation signal is added to the output O 1, a new address O 1 is obtained (S 2303). Next, the value of the triangular wave corresponding to the address O 1 (phase) is read from the external memory 116 (S
2304), the envelope values E 1 is the output O 1 is multiplied thereto (S 2305). Thereafter, the feedback level F L1 is multiplied feedback output F O1 is obtained at the output O 1 (S 2306), also modulation level M L1 is multiplied to the output O 1 modulation output M O1 and is obtained ( S2307 ).

つぎに、上述のFM方式とTM方式の両変調方式でのオペ
レータ処理における変調入力を決定するための第21図の
アルゴリズム処理S2105の具体例を第24図の動作フロー
チャートで説明する。同図のフローは、FM方式とTM方式
共通であり、第18図のアルゴリズムの1〜4を切り替え
て処理する例である。この場合のアルゴリズム1〜4の
選択枝は、演奏者による特には図示しない指示に基づい
て選択される(S2400)。
Next, a specific example of the algorithm processing S2105 in FIG. 21 for determining the modulation input in the operator processing in the above-described FM and TM modulation schemes will be described with reference to the operation flowchart in FIG. The flow of FIG. 13 is common to the FM method and the TM method, and is an example in which processing is performed by switching the algorithms 1 to 4 in FIG. In this case, the selections of the algorithms 1 to 4 are selected based on an instruction (not shown) by the player ( S2400 ).

まず、アルゴリズム1は、第18図(a)のように、4
オペレータ(OPと略称する)直列型で、OP4のみフィー
ドバック入力を有する。すなわち、 OP4のフィードバック出力FO4がOP4の変調入力MI4とさ
れ(S2401)、 OP4のモジュレーション出力MO4がOP3の変調入力MI3
され(S2402)、 OP3のモジュレーション出力MO3がOP2の変調入力MI2
され(S2403)、 OP2のモジュレーション出力MO2がOP1の変調入力MI1
され(S2404)、 OP1の出力O1がキャリア出力としてバッファB(第12
図参照)に加算される(S2405)、 というアルゴリズムである。
First, as shown in FIG.
The operator (abbreviated as OP) is of a serial type, and only OP4 has a feedback input. That is, the feedback output F O4 of OP4 is set as the modulation input M I4 of OP4 ( S2401 ), the modulation output M O4 of OP4 is set as the modulation input M I3 of OP3 (S 2402 ), and the modulation output M O3 of OP3 is set as OP2. is a modulation input M I2 (S 2403), the modulation output M O2 of OP2 is set to the modulation input M I1 of OP1 (S 2404), the buffer B (12 output O 1 of OP1 as the carrier output
(Refer to the figure) ( S2405 ).

アルゴリズム2は、第18図(b)のように、OP2とOP4
がフィードバック入力を有する。すなわち、 OP4のフィードバック出力FO4がOP4の変調入力MI4とさ
れ(S2406)、 OP4のモジュレーション出力MO4がOP3の変調入力MI3
され(S2407)、 OP2のフィードバック出力FO2がOP2の変調入力MI2とさ
れ(S2408)、 OP2とOP3のモジュレーション出力MO2,MO3がOP1の変調
入力MI1とされ(S2409)、 OP1の出力O1がキャリア出力としてバッファBに加算
される(S2410)、 というアルゴリズムである。
Algorithm 2 is composed of OP2 and OP4, as shown in FIG.
Have a feedback input. That is, the feedback output F O4 of OP4 is set as the modulation input M I4 of OP4 ( S2406 ), the modulation output M O4 of OP4 is set as the modulation input M I3 of OP3 (S 2407 ), and the feedback output F O2 of OP2 is set as OP2. is a modulation input M I2 (S 2408), OP2 and modulation output M O2, M O3 of OP3 is the modulation input M I1 of OP1 (S 2409), the output O 1 of the OP1 is added to the buffer B as the carrier output (S 2410 ).

アルゴリズム3は、OP2とOP4がフィードバック入力を
有し、2オペレータ直列型が2つ並列に構成される。す
なわち、 OP4のフィードバック出力FO4がOP4の変調入力MI4とさ
れ(S2411)、 OP4のモジュレーション出力MO4がOP3の変調入力MI3
され(S2412)、 OP2のフィードバック出力FO2がOP2の変調入力MI2とさ
れ(S2413)、 OP2のモジュレーション出力MO2がOP1の変調入力MI1
され(S2414)、 OP1とOP3の各出力O1とO3がキャリア出力としてバッフ
ァBに加算される(S2415)、 というアルゴリズムである。
In Algorithm 3, OP2 and OP4 have feedback inputs, and two 2-operator serial types are configured in parallel. In other words, the feedback output F O4 of OP4 is the modulation input M I4 of OP4 (S 2411), the modulation output M O4 of OP4 is the modulation input M I3 of OP3 (S 2412), the feedback output F O2 of OP2 is OP2 The modulation output M O2 of OP2 is used as the modulation input M I2 (S 2413 ), the modulation output M O2 of OP 2 is used as the modulation input M I1 (S 2414 ), and the outputs O 1 and O 3 of OP 1 and OP 3 are used as carrier outputs in buffer B. Is added ( S2415 ).

アルゴリズム4は、4オペレータ並列型で、全オペレ
ータがフィードバック入力を有する。すなわち、 OP4のフィードバック出力FO4がOP4の変調入力MI4とさ
れ(S2416)、 OP3のフィードバック出力FO3がOP3の変調入力MI3とさ
れ(S2417)、 OP2のフィードバック出力FO2がOP2の変調入力MI2とさ
れ(S2418)、 OP1のフィードバック出力FO1がOP1の変調入力MI1とさ
れ(S2419)、 全オペレータの出力O1、O2、O3及びO4がバッファBに
加算される(S2420)、 というアルゴリズムである。
Algorithm 4 is a 4-operator parallel type, where all operators have feedback inputs. That is, the feedback output FO4 of OP4 is set as the modulation input M I4 of OP4 ( S2416 ), the feedback output FO3 of OP3 is set as the modulation input M I3 of OP3 ( S2417 ), and the feedback output FO2 of OP2 is set as OP2. The modulation input M I2 of (S 2418 ), the feedback output FO 1 of OP 1 is used as the modulation input M I1 of OP 1 (S 2419 ), and the outputs O 1 , O 2 , O 3 and O 4 of all operators are buffer B (S 2420 ).

以上説明したオペレータ処理と、アルゴリズム処理に
よって1チャネル分の音源処理が終了し、アルゴリズム
の変更が無ければ、このままの状態で発音(音源処理)
が続く。
The sound processing for one channel is completed by the operator processing and the algorithm processing described above, and if there is no change in the algorithm, the sound is generated as it is (sound processing).
Followed by

変調方式の改良例(その2) つぎに、変調方式による音源処理の第2の改良例につ
いて説明する。
Next, a second improved example of the sound source processing by the modulation method will be described.

ここまで説明してきた種々の変調方式においては、複
雑なアルゴリズムを組みほど、また、発音チャネル数
(ポリフォニック数)が多いほど処理に時間がかかる。
In the various modulation methods described so far, the more complicated the algorithm is, and the more the number of sounding channels (the number of polyphonics), the longer the processing time.

そこで、以下に説明する第2の改良例では、オペレー
タ処理とアルゴリズム処理を分離した第21図の第1の改
良例をさらに発展させて、あるインタラプトタイミング
ではオペレータ処理のみを行い、つぎのインタラプトタ
イミングではアルゴリズム処理のみを行うというよう
に、オペレータ処理とアルゴリズム処理を交互に行う。
これにより、1インタラプトタイミングあたりの処理負
荷を大幅に減少させることができる。その結果、インタ
ラプト2回に1つのサンプルデータが出力される。
Therefore, in the second improved example described below, the first improved example in FIG. 21 in which the operator processing and the algorithm processing are separated is further developed, and only the operator processing is performed at a certain interrupt timing, and the next interrupt timing is performed. Then, the operator process and the algorithm process are alternately performed such that only the algorithm process is performed.
As a result, the processing load per one interrupt timing can be significantly reduced. As a result, one sample data is output every two interrupts.

この動作について、第25図の動作フローチャートを用
いて説明する。
This operation will be described with reference to the operation flowchart of FIG.

まず、オペレータ処理とアルゴリズム処理を交互に行
うため、変数Sを用いてゼロか否かが判定される(S
2501)。この変数Sは、各発音チャネル毎に設けられ、
MCPU101又はSCPU102のRAM206、306上の第9図の各発
音チャネル領域に記憶される。
First, in order to alternately perform the operator process and the algorithm process, it is determined whether or not the value is zero using the variable S (S
2501 ). This variable S is provided for each sounding channel,
It is stored in each sounding channel area of FIG. 9 on the RAM 206, 306 of the MCPU 101 or SCPU 102.

あるインタラプトタイミングにおいて、Sが0のとき
はオペレータ処理のルートに入り、変数Sを値1をセッ
トする(S2502)。続いて、オペレータ1〜4処理が実
行される(S2503〜S2506)。この処理は、第22図又は第
23図等と同様である。
At a certain interrupt timing, when S is 0, the process enters the route of the operator processing, and the variable S is set to a value of 1 ( S2502 ). Subsequently, the operator 1-4 processing is executed (S 2503 ~S 2506). This processing is performed in accordance with FIG.
It is the same as FIG.

つぎに、オペレータ処理のルートを抜け、バッファB
に、バッファBF(FM方式の場合)又はバッファBT(TM方
式の場合)の値が設定される出力処理が実行される(S
2510)。バッファBF又はBTは、各発音チャネル毎に設け
られ、MCPU101又はSCPU102のRAM206、306上の第9図
の各発音チャネル領域毎に記憶される。バッファBF又は
BTには、アルゴリズム処理後の波形出力値が格納される
が、今回のインタラプトタイミングでは、アルゴリズム
処理は実行されておらずバッファBF又はBTの内容は変更
されていないため、前回のインタラプトタイミングと同
じ波形出力値が出力される。
Next, the operator exits the route of the operator processing, and
Then, an output process in which the value of the buffer BF (for the FM system) or the value of the buffer BT (for the TM system) is set (S
2510 ). The buffer BF or BT is provided for each sounding channel, and is stored for each sounding channel area in FIG. 9 on the RAM 206, 306 of the MCPU 101 or SCPU 102. Buffer BF or
The waveform output value after the algorithm processing is stored in BT, but at the current interrupt timing, the algorithm processing has not been executed and the contents of the buffer BF or BT have not been changed, so the same as the previous interrupt timing The waveform output value is output.

以上の処理により、今回のインタラプトタイミングに
おける1発音チャネル分の音源処理を終了する。この場
合、今回のオペレータ1〜4処理で求まった各データ
は、次のインタラプトタイミングまで、MCPU101又はS
CPU102のRAM206、306上の第9図の各発音チャネル領域
に保持される。
With the above processing, the sound source processing for one sounding channel at the current interrupt timing is completed. In this case, each data obtained by the current processing of the operators 1 to 4 is transferred to the MCPU 101 or SCPU until the next interrupt timing.
It is stored in each sounding channel area of FIG. 9 on the RAMs 206 and 306 of the CPU 102.

つぎのインタラプトが掛かると、前回のインタラプト
タイミングで変数Sが1にされているので、ステップS
2507に進み、アルゴリズム処理のルートに入り、変数S
に値0をセットする。続いて、アルゴリズム処理が実行
される(S2508)。
When the next interrupt occurs, since the variable S has been set to 1 at the previous interrupt timing, step S
Proceed to 2507 to enter the algorithm processing route, where the variable S
Is set to the value 0. Subsequently, algorithm processing is executed ( S2508 ).

この処理においては、前回のインタラプトタイミング
において、オペレータ1〜4処理で処理され第9図の各
発音チャネル領域に保持されている各データが用いら
れ、つぎのオペレータ処理のための変調入力を決める処
理が行われる。そして、この処理においてバッフアBF又
はBTの内容が書き替えられ、そのインタラプトタイミン
グにおける波形出力値が求まる。アルゴリズム処理の具
体例を第26図の動作フローチャートに示す。このフロー
において、第24図の場合と同じ番号を付したステップで
は第24図の場合と同じ処理が行われる。第24図の場合と
異なるのは、S2601〜S2604の出力部分である。ここで
は、アルゴリズム1およびアルゴリズム2の場合は、オ
ペレータ1処理の出力O1の内容がそのままバッフアBF又
はBTに保持される(S2601,S2602)。また、アルゴリズ
ム3の場合には、出力O1に出力O3が加算された値がバッ
フアBF又はBTに保持される(S2603)。さらに、アルゴ
リズム4の場合は、出力O1に出力O2,O3,O4が加算された
値がBF又はBTに保持される(S2604)。
In this processing, at the previous interrupt timing, each data processed in the operators 1 to 4 and held in each sounding channel area in FIG. 9 is used, and a modulation input for the next operator processing is determined. Is performed. In this process, the contents of the buffer BF or BT are rewritten, and the waveform output value at the interrupt timing is obtained. A specific example of the algorithm processing is shown in the operation flowchart of FIG. In this flow, the same processes as those in FIG. 24 are performed in steps with the same numbers as in FIG. 24. What is different from the case of FIG. 24 is the output part of S 2601 to S 2604 . Here, the case of Algorithm 1 and Algorithm 2, the contents of the output O 1 of the operator 1 processing is maintained as it is to Baffua BF or BT (S 2601, S 2602) . In the case of Algorithm 3, the value which the output O 3 is added to the output O 1 is held in Baffua BF or BT (S 2603). Further, in the case of Algorithm 4, a value obtained by adding the outputs O 2 , O 3 , and O 4 to the output O 1 is held in BF or BT (S 2604 ).

以上のように、1インタラプトタイミングおきに、オ
ペレータ処理とアルゴリズム処理が交互に実行されるた
め、1インタラプトタイミングあたりの音源処理プログ
ラムの処理負荷を著しく減少させることができる。この
場合、インタラプト周期を長くする必要がないため、イ
ンタラプトにより第4図(a)のメイン動作フローチャ
ートが中断する時間が増加することなく、そのプログラ
ム動作に影響を与えずに処理負荷を低減させることがで
きる。従って、例えば第4図(a)によって実行される
鍵盤キー取り込みの間隔が長くなることもなく、電子楽
器としての応答性能に影響を与えることもない。
As described above, since the operator process and the algorithm process are alternately executed at every other interrupt timing, the processing load of the sound source processing program per one interrupt timing can be significantly reduced. In this case, it is not necessary to lengthen the interrupt cycle, so that the interruption time of the main operation flowchart of FIG. 4A does not increase due to the interrupt, and the processing load is reduced without affecting the program operation. Can be. Therefore, for example, the interval of taking in the keyboard key executed according to FIG. 4A does not become long, and the response performance as the electronic musical instrument is not affected.

以上、種々の音源方式に基づくソフトウエアの音源処
理によって、発音チャネル毎に楽音データを生成する動
作について説明した。
The operation of generating musical sound data for each sound generation channel by software sound source processing based on various sound source systems has been described above.

機能キー処理 つぎに、実際の電子楽器を演奏する場合における第4
図(a)のメイン動作フローチャートの機能キー処理
(S403)の具体的動作につき説明する。
Function Key Processing Next, when playing an actual electronic musical instrument, the fourth
The specific operation of the function key processing ( S403 ) in the main operation flowchart of FIG.

上述の発音チャネル毎に行われる音源処理において
は、MCPU101の入力ポート210(第2図参照)を介して
例えば電子楽器の操作パネル上に接続される第8図
(a)の機能キー801によって、MCPU101又はSCPU102
のRAM206又は306(第2図及び第3図参照)上の各発音
チャネル領域(第9図参照)に、前述した各種音現方式
のデータフォーマット(第11図参照)が設定される。
In the sound source processing performed for each sounding channel described above, for example, a function key 801 in FIG. 8A connected to an operation panel of an electronic musical instrument via an input port 210 of the MCPU 101 (see FIG. 2) MCPU101 or SCPU102
The data formats (see FIG. 11) of the various sound generation systems described above are set in each sounding channel area (see FIG. 9) on the RAM 206 or 306 (see FIGS. 2 and 3).

第27図は、第8図(a)の機能キー801の一部の配置
例を示した図である。同図では、機能キー801の一部が
音色指定スイッチとして実現され、Aグループの「ピア
ノ」、「ギター」、・・・、「琴」などのスイッチが押
されると、それぞれの楽器音の音色が選択され、ガイド
ランプが点灯する。そして、DPCM/TM方式選択スイッチ2
701で、これらの楽器音の音色をDPCM方式とTM方式のい
ずれの音源方式で生成するかが選択される。
FIG. 27 is a diagram showing an example of a partial arrangement of the function keys 801 in FIG. 8 (a). In the figure, a part of the function key 801 is realized as a tone designation switch, and when switches such as “Piano”, “Guitar”,... Is selected, and the guide lamp is turned on. And DPCM / TM system selection switch 2
At 701, it is selected whether the tone of these instrument sounds is generated by the sound source system of the DPCM system or the TM system.

一方、Bグループの「チューバ」のスイッチが押され
ればFM方式により、「ベース」が押されればPCM/TM両方
式により、また、「トランペット」が押されればPCM方
式により、それぞれの音色が指定され、それらの音源方
式に基づく楽音が生成されることになる。
On the other hand, when the "Tuba" switch of group B is pressed, the FM system is used, when the "Base" is pressed, both PCM / TM systems are used, and when the "Trumpet" is pressed, the PCM system is used. A tone color is specified, and a musical tone based on those sound source systems is generated.

第28図(a)、(b)に、上記「ピアノ」と「ベー
ス」のスイッチが押された場合の、RAM206又は306上の
第9図で示される各発音チャネル領域への音源方式の割
り当て例が示されている。「ピアノ」の場合、同図
(a)の如く、MCPU101及びSCPU102の8音ポリフォニ
ックの各発音チャネルのすべてに、DPCM方式が割り当て
られ、また、「ベース」の場合、同図(b)の如く、奇
数番号の発音チャネルにPCM方式が、偶数番号の発音チ
ャネルにTM方式が、それぞれ割り当てられる。これによ
り、PCM方式とTM方式による2発音チャネルで生成され
る楽音波形が混合されたものとして1音分の楽音波形が
得られる。この場合には、各CPUあたり4音ポリフォニ
ック、2CPU合計で8音ポリフォニックとなる。
FIGS. 28 (a) and (b) show the assignment of the tone generator system to each sounding channel area shown in FIG. 9 on the RAM 206 or 306 when the "piano" and "bass" switches are pressed. An example is shown. In the case of "piano", the DPCM system is assigned to all of the eight-tone polyphonic sounding channels of the MCPU 101 and the SCPU 102, as shown in FIG. 2A, and in the case of "bass", as shown in FIG. The PCM system is assigned to odd-numbered sounding channels, and the TM system is assigned to even-numbered sounding channels. As a result, a musical sound waveform for one sound is obtained as a mixture of the musical sound waveforms generated in the two sounding channels of the PCM system and the TM system. In this case, 4 tones are polyphonic for each CPU, and 8 tones are polyphonic in total for 2 CPUs.

第29図は、第4図(a)のメイン動作フローチャート
におけるS403の機能キー処理の動作フローチャートの一
部であり、第27図の音色指定スイッチ群に対する処理の
動作フローチャートである。
FIG. 29 is a part of the operation flowchart of the function key process of S403 in the main operation flowchart of FIG. 4A, and is an operation flowchart of the process for the tone color designation switch group of FIG.

まず、演奏者によりDPCM/TMスイッチ2701が操作され
たか否かが判定され(S2901)、判定がYESの場合は、変
数Mがゼロか否かが判定される(S2902)。変数Mは、
MCPU101のRAM206(第2図)上に確保され、DPCM方式の
ときは値0、TM方式のときは値1をとる。S2902で変数
Mの値が0でその判定がYESの場合は、変数Mに値1が
セットされる(S2903)。これはDPCM方式が選択されて
いた状態で、DPCM/TMスイッチ2701が押圧されてTM方式
が選択される状態に変化したことを意味する。また、S
2902で変数Mの値が1で判定がNOの場合は、変数Mに値
0がセットされる(S2904)。これはTM方式が選択され
ていた状態で、DPCM/TMスイッチ2701が押圧されてDPCM
方式が選択される状態に変化したことを意味する。
First, it is determined whether or not the player has operated the DPCM / TM switch 2701 ( S2901 ), and if the determination is YES, it is determined whether or not the variable M is zero ( S2902 ). The variable M is
It is secured in the RAM 206 (FIG. 2) of the MCPU 101 and takes a value of 0 for the DPCM system and a value of 1 for the TM system. If the value of variable M in S 2902 is its determination at 0 YES, the value 1 is set to the variable M (S 2903). This means that the DPCM / TM switch 2701 has been pressed and the TM system has been selected in a state where the DPCM system has been selected. Also, S
If the value of the variable M is 1 and the determination is NO at 2902 , the value 0 is set to the variable M ( S2904 ). This is because the DPCM / TM switch 2701 is pressed and the DPCM
It means that the method has changed to the selected state.

つぎに、現在、第27図のAグループの音色が指定され
ているか否かが判定される(S2905)。DPCM/TMスイッチ
2701はAグループの音色に対してのみ有効であるため、
Aグループの音色が指定されてS2905の判定がYESの場合
にのみ、S2906〜S2908のDPCM/TMスイッチ2701に対応す
る動作が実行される。
Next, it is determined whether or not the tone color of the group A in FIG. 27 is currently designated ( S2905 ). DPCM / TM switch
Since 2701 is effective only for the tone of Group A,
Tone of A group is designated the determination of S 2905 only if YES, the operation corresponding to the DPCM / TM switch 2701 S 2906 to S 2908 is executed.

S2906では、変数Mが値0であるか否かが判定される
(S2906)。
In S2906 , it is determined whether or not the variable M is 0 ( S2906 ).

S2906の判定がYESの場合は、DPCM/TMスイッチ2701に
よりDPCM方式が選択されたため、RAM206及び306(第2
図及び第3図参照)上の各発音チャネル領域に、第11図
のDPCMフォーマットでデータが設定される。すなち、各
発音チャネル領域の先頭領域G(第11図のDPCMの欄参
照)にDPCM方式を示す音源方式No.が設定される。つづ
いて、各発音チャネル領域の第2番目以降の領域に現在
指定されている音色に対応する各種パラメータがそれぞ
れセットされる(S2907)。
If the determination in S2906 is YES, the DPCM system is selected by the DPCM / TM switch 2701, and the RAMs 206 and 306 (second
Data is set in each sounding channel area in the upper part in the DPCM format shown in FIG. That is, a sound source method No. indicating the DPCM method is set in the head area G (see the column of DPCM in FIG. 11) of each sounding channel area. Subsequently, various parameters corresponding to the currently designated timbre are set in the second and subsequent areas of each sounding channel area ( S2907 ).

また、S2906の判定がNOの場合は、DPCM/TMスイッチ27
01によりTM方式が選択されたため、各発音チャネル領域
に、第11図のTMフォーマットでデータが設定される。す
なわち、まず、各発音チャネル領域の先頭領域GにTM方
式を示す音源方式No.が設定される。つづいて、各発音
チャネル領域の第2番目以降の領域に現在指定されてい
る音色に対応する各種パラメータがそれぞれセットされ
る(S2908)。
If the determination in S2906 is NO, the DPCM / TM switch 27
Since the TM method is selected in 01, data is set in each sounding channel area in the TM format shown in FIG. That is, first, a sound source system No. indicating the TM system is set in the head area G of each sounding channel area. Subsequently, various parameters corresponding to the currently designated timbre are set in the second and subsequent areas of each tone generation channel area ( S2908 ).

以上は、第27図のDPCM/TMスイッチ2701が操作された
場合であるが、同スイッチが操作されずステップS2901
の判定がNOとなった場合、またはAグループの音色が指
定されておらずステップS2905の判定がNOになった場合
は、スイッチS2909以下の処理が実行される。
The above is the case where the DPCM / TM switch 2701 in FIG. 27 is operated, but the switch is not operated and step S 2901
If the determination in step S2905 is NO, or if the tone of group A has not been specified and the determination in step S2905 has been NO, the processing of switch S2909 and subsequent steps is executed.

まず、ステップS2909で、第27図の音色スイッチに変
化があったか否かが判定される(S2909)。
First, in step S2909 , it is determined whether or not the tone color switch in FIG. 27 has changed ( S2909 ).

その判定がNOの場合は、音色スイッチに対する処理を
行う必要はないので、そのまま機能キー処理(第4図
(a)S403)を終了する。
If the determination is NO, there is no need to perform the processing for the tone color switch, and the function key processing ( S403 in FIG. 4 (a)) is terminated.

音色スイッチに変化があってS2909の判定がYESの場合
には、つぎに、Bグループの音色が指定されたか否かが
判定される(S2910)。
If there is a change in the timbre switch and the determination in S2909 is YES, it is next determined whether or not the timbre of the B group has been designated ( S2910 ).

Bグループの音色が指定されてS2910の判定がYESなら
ば、RAM206及び306(第2図及び第3図参照)上の各発
音チャネル領域に、指定された音色に対応する音源方式
のデータフォーマットでデータが設定される。そして、
各発音チャネル領域の先頭領域G(第11図参照)に各音
源方式を示す音源方式No.が設定される。また、各発音
チャネル領域の第2番目以降の領域に現在指定されてい
る音色に対応する各種パラメータがそれぞれセットされ
る(S2911)。例えば、第27図のベーススイッチが選択
されている場合には、奇数番号の各発音チャネル領域に
はPCM方式に対応するデータが、偶数番号の各発音チャ
ネル領域にはTM方式に対応するデータが、それぞれセッ
トされる。
If the tone of the B group is designated and the determination in S 2910 is YES, the tone generator data format corresponding to the designated tone is stored in each sounding channel area on the RAMs 206 and 306 (see FIGS. 2 and 3). Is used to set the data. And
A sound source system number indicating each sound source system is set in the head area G (see FIG. 11) of each sound channel area. In addition, various parameters corresponding to the currently designated tone color are set in the second and subsequent areas of each sounding channel area (S 2911 ). For example, when the base switch shown in FIG. 27 is selected, data corresponding to the PCM system is stored in each odd-numbered sound channel region, and data corresponding to the TM system is stored in each even-numbered sound channel region. , Are set respectively.

また、Aグループの音色スイッチが指定されてS2910
の判定がNOならば、変数Mが1であるか否かが判定され
る(S2912)。そして、現在TM方式が選択されていてS
2912の判定がYESならば、前述のステップS2908の場合と
同様にして、各発音チャネル領域に、第11図のTMフォー
マットでデータが設定される(S2913)。
In addition, the tone switch of the group A is designated and S 2910
If NO is determined, it is determined whether or not the variable M is 1 ( S2912 ). And if the TM method is currently selected and S
If the determination in 2912 is YES, data is set in each sounding channel area in the TM format shown in FIG. 11 in the same manner as in step S2908 ( S2913 ).

また、DPCM方式が選択されていてS2912の判定がNOな
らば、前述のステップS2907の場合と同様にして、各発
音チャネル領域には、第11図のDPCMフォーマットでデー
タが設定される(S2914)。
If the DPCM method is selected and the determination in S2912 is NO, data is set in each sounding channel area in the DPCM format shown in FIG. 11 in the same manner as in step S2907 described above ( S 2914 ).

押鍵時の鍵盤キー処理の第1の実施例 つぎに、実際の電子楽器を演奏する場合における第4
図(a)のメイン動作フローチャートの鍵盤キー処理
(S405)の具体的動作につき説明する。
First Embodiment of Keyboard Key Processing at the Time of Depressing a Key
The specific operation of the keyboard key processing ( S405 ) in the main operation flowchart of FIG.

まず、押鍵時の鍵盤キー処理の第1の実施例につき説
明する。
First, a first embodiment of keyboard key processing at the time of key depression will be described.

押鍵時の鍵盤キー処理の第1の実施例においては、第
27図のAグループの音色が指定されている場合に、MCP
U101の入力ポート210(第2図参照)を介して接続され
る第8図(a)又は(b)に示される鍵盤キー802が押
鍵された場合の鍵盤のポジションすなわち楽音の音域に
より、MCPU101又はSCPU102のRAM206又は306(第2図
及び第3図参照)上の各発音チャネル領域(第9図参
照)に設定される音源方式が自動的に切り換えられる。
この場合は、第8図(b)に示される鍵盤キー801のキ
ーコード番号31、32を境にして、押鍵された鍵のキーコ
ードが31番以下の低音域の場合にDPCM方式が、また、キ
ーコードが32番以上の高音域の場合にTM方式が割り当て
られる。なお、第27図のBグループの音色が指定されて
いる場合には、特別な鍵盤キー処理は実行されない。
In the first embodiment of the keyboard key processing at the time of key depression,
When the tone of group A in Fig. 27 is specified, the MCP
According to the position of the keyboard when the keyboard key 802 shown in FIG. 8 (a) or 8 (b) connected via the input port 210 (see FIG. 2) of the U101 is depressed, that is, the range of the musical tone, the MCPU 101 Alternatively, the tone generator system set in each sound channel area (see FIG. 9) on the RAM 206 or 306 (see FIGS. 2 and 3) of the SCPU 102 is automatically switched.
In this case, when the key code of the depressed key is in the low tone range of 31 or less, the DPCM method is performed with the key codes 31 and 32 of the keyboard key 801 shown in FIG. In addition, when the key code is in the high range of 32 or more, the TM method is assigned. When the tone color of the group B in FIG. 27 is designated, no special keyboard key processing is executed.

第30図は、第4図(a)のメイン動作フローチャート
におけるS405の鍵盤キー処理の動作フローチャートの一
部であり、第8(a)又は(b)の鍵盤キー801の押鍵
時の処理の第1の実施例のフローである。
FIG. 30 is a part of the operation flowchart of the keyboard key processing of S405 in the main operation flowchart of FIG. 4 (a), and the processing at the time of key depression of the keyboard key 801 of FIG. 8 (a) or (b). 5 is a flowchart of the first embodiment.

まず、現在、第27図のAグループの音色が指定されて
いるか否かが判定される(S3001)。
First, it is determined whether or not the tone color of the group A in FIG. 27 is currently specified ( S3001 ).

この判定がNOで、現在、Bグループの音色が指定され
ている場合には、第30図の特別な処理は行わない。
If this determination is NO and the tone color of group B is currently specified, the special processing in FIG. 30 is not performed.

S3001の判定がYESで、現在、Aグループの音色が指定
されている場合には、第4図(a)のメイン動作フロー
チャートにおけるS404の鍵盤キー取り込み処理において
「押鍵」と判別された鍵のキーコードが、31番以下であ
るか否かが判定される(S3002)。
If the determination in S3001 is YES, and the tone color of Group A is currently specified, it is determined that the key is pressed in the keyboard key loading process in S404 in the main operation flowchart of FIG. 4A. It is determined whether the key code of the key is 31 or less ( S3002 ).

31番以下の低音域が押鍵されてS3002の判定がYESの場
合は、変数Mが値1であるか否かが判定される
(S3003)。変数Mは、第4図(a)のメイン動作フロ
ーチャートにおけるS403の機能キー処理の一部である第
29図の動作フローチャートにおいて設定されており、前
述した如く、変数Mの値は、DPCM方式のときは値0、TM
方式のときは値1をとる。
If the low tone range 31 or lower is depressed and the determination in S 3002 is YES, it is determined whether or not the variable M is the value 1 (S 3003 ). The variable M is a part of the function key process of S403 in the main operation flowchart of FIG.
29. As described above, the value of the variable M is set to 0, TM
In the case of the method, the value 1 is taken.

S3003の判定がYES(M=1)で、現在、TM方式の音源
方式が指定されている場合は、低音域の音源方式である
DPCM方式に変更すべく、RAM206又は306(第2図及び第
3図参照)上の押鍵された鍵がアサインされる発音チャ
ネル領域に、第11図のDPCMフォーマットでデータが設定
される。すなわち、各発音チャネル領域の先頭領域G
(第11図のDPCMの欄参照)にDPCM方式を示す音源方式N
o.が設定される。つづいて、各発音チャネル領域の第2
番目以降の領域に現在指定されている音色に対応する各
種パラメータがそれぞれセットされる(S3004)。その
後、フラグCに値1がセットされる(S3005)。フラグ
Cは、MCPU101のRAM206(第2図参照)上の各発音チャ
ネル領域に確保される変数であるが(第11図参照)、こ
のフラグCは第32図で後述する離鍵時の処理に用いられ
る。
If the determination in S3003 is YES (M = 1) and the TM system sound source system is currently specified, the sound source system is in the low frequency range.
In order to change to the DPCM system, data is set in the DPCM format shown in FIG. 11 in the sound channel area on the RAM 206 or 306 (see FIGS. 2 and 3) to which the depressed key is assigned. That is, the leading area G of each sounding channel area
(Refer to the DPCM column in FIG. 11.)
o. is set. Then, the second of each sounding channel area
Various parameters corresponding to the currently designated timbre are set in the areas subsequent to the first one ( S3004 ). Thereafter, the value 1 is set in the flag C ( S3005 ). The flag C is a variable secured in each sounding channel area on the RAM 206 (see FIG. 2) of the MCPU 101 (see FIG. 11). The flag C is used for key release processing described later with reference to FIG. Used.

一方、S3002において、31番以上の高音域が押鍵され
てその判定がNOの場合は、更に、変数Mが値1であるか
否かが判定される(S3006)。
On the other hand, in S 3002 , if the treble range of No. 31 or more is depressed and the determination is NO, it is further determined whether or not the variable M is the value 1 (S 3006 ).

S3006の判定がNO(M=0)で、現在、DPCM方式の音
源方式が指定されている場合は、高音域の音源方式であ
るTM方式に変更すべく、RAM206又は306上の押鍵された
鍵がアサインされる発音チャネル領域に、第11図のTMフ
ォーマットでデータが設定される。すなわち、各発音チ
ャネル領域の先頭領域G(第11図のTMの欄参照)にTM方
式を示す音源方式No.が設定される。つづいて、各発音
チャネル領域の第2番目以降の領域に現在指定されてい
る音色に対応する各種パラメータがそれぞれセットされ
る(S3007)。その後、フラグCに値2がセットされる
(S3005)。
If the determination in S 3006 is NO (M = 0) and the sound source system of the DPCM system is currently specified, the key on the RAM 206 or 306 is depressed in order to change to the TM system, which is the sound source system of the high frequency range. Data is set in the TM format of FIG. 11 in the sound channel area to which the key is assigned. That is, a sound source system No. indicating the TM system is set in the head region G (see the column of TM in FIG. 11) of each sounding channel region. Subsequently, various parameters corresponding to the currently designated timbre are set in the second and subsequent areas of each sounding channel area ( S3007 ). Thereafter, the value 2 is set in the flag C ( S3005 ).

上述の処理において、ステップS3003の判定がNOの場
合およびステップS3006の判定がYESの場合は、もともと
所望の音源方式になっていので、特別な処理は行われな
い。
In the above-described processing, if the determination in step S3003 is NO and the determination in step S3006 is YES, no special processing is performed because the desired sound source method has been used originally.

押鍵時の鍵盤キー処理の第2の実施例 つぎに、押鍵時の鍵盤キー処理の第2の実施例につき
説明する。
Second Embodiment of Keyboard Key Processing at the Time of Key Depression Next, a second embodiment of the keyboard key processing at the time of key depression will be described.

押鍵時の鍵盤キー処理の第2の実施例においては、第
27図のAグループの音色が指定されている場合に、MCP
U101の入力ポート210(第2図参照)を介して接続され
る第8図(a)又は(b)に示される鍵盤キー802が押
鍵された場合の押鍵速度すなわちベロシティにより、M
CPU101又はSCPU102のRAM206又は306(第2図及び第3
図参照)上の各発音チャネル領域(第9図参照)に設定
される音源方式が自動的に切り換えられる。この場合、
ベロシティの値としてMIDI(Musical Instrument Didit
al Interface)規格の最大値の127の1/2の64を境にし
て、押鍵された鍵のベロシティの値が64以上の速い押鍵
操作の場合にDPCM方式が、また、ベロシティの値が64以
下の遅い押鍵操作の場合にTM方式が割り当てられる。な
お、第27図のBグループの音色が指定されている場合に
は、特別な鍵盤キー処理は実行されない。
In the second embodiment of the keyboard key processing at the time of key depression,
When the tone of group A in Fig. 27 is specified, the MCP
8A or 8B, which is connected via the input port 210 of U101 (see FIG. 2), the key pressing speed or velocity when the key 802 is pressed is determined by the following equation.
The RAM 206 or 306 of the CPU 101 or SCPU 102 (FIG. 2 and FIG.
The sound source system set in each sounding channel area (see FIG. 9) is automatically switched. in this case,
MIDI (Musical Instrument Didit
al Interface) The DPCM method is used in the case of a fast key press operation where the velocity value of the key pressed is 64 or more, which is 64 of 1/2 of 127 of the maximum value of the standard. The TM method is assigned to a slow key press operation of 64 or less. When the tone color of the group B in FIG. 27 is designated, no special keyboard key processing is executed.

第31図は、第4図(a)のメイン動作フローチャート
におけるS405の鍵盤キー処理の動作フローチャートの一
部であり、第8(a)又は(b)の鍵盤キー801の押鍵
時の処理の第2の実施例のフローである。
FIG. 31 is a part of the operation flowchart of the keyboard key processing of S405 in the main operation flowchart of FIG. 4 (a), and the processing at the time of key depression of the keyboard key 801 of FIG. 8 (a) or (b). 9 is a flowchart of the second embodiment.

まず、現在、第27図のAグループの音色が指定されて
いるか否かが判定される(S3101)。
First, it is determined whether or not the tone color of the group A in FIG. 27 is currently designated ( S3101 ).

この判定がNOで、現在、Bグループの音色が指定され
ている場合には、第30図の特別な処理は行わない。
If this determination is NO and the tone color of group B is currently specified, the special processing in FIG. 30 is not performed.

S3101の判定がYESで、現在、Aグループの音色が指定
されている場合には、第4図(a)のメイン動作フロー
チャートにおけるS404の鍵盤キー取り込み処理において
「押鍵」と判別された鍵のベロシティが、64以上である
か否かが判定される(S3102)。なお、このベロシティ
の64はMIDI規格のmp(メゾピアノ)に相当する。
If the determination in S3101 is YES and the tone of the group A is currently specified, it is determined that the key is pressed in the keyboard key loading process in S404 in the main operation flowchart in FIG. 4A. It is determined whether or not the velocity of the key is 64 or more ( S3102 ). In addition, 64 of this velocity is equivalent to mp (mezzo piano) of MIDI standard.

ベロシティの値が64以上でS3102の判定がYESの場合
は、変数Mが値1であるか否かが判定される
(S3103)。変数Mは、第4図(a)のメイン動作フロ
ーチャートにおけるS403の機能キー処理の一部である第
29図の動作フローチャートにおいて設定されており、前
述した如く、変数Mの値は、DPCM方式のときは値0、TM
方式のときは値1をとる。
If the velocity value is 64 or more and the determination in S 3102 is YES, it is determined whether or not the variable M is the value 1 (S 3103 ). The variable M is a part of the function key process of S403 in the main operation flowchart of FIG.
29. As described above, the value of the variable M is set to 0, TM
In the case of the method, the value 1 is taken.

S3103の判定がYES(M=1)で、現在、TM方式の音源
方式が指定されている場合は、速い押鍵操作時の音源方
式であるDPCM方式に変更すべく、第30図の第1の実施例
の場合のS3004の処理と同様に、RAM206又は306(第2図
及び第3図参照)上の押鍵された鍵がアサインされる発
音チャネル領域に、第11図のDPCMフォーマットでデータ
が設定され(S3104)、フラグCに値1がセットされる
(S3105)。
If the determination in S3103 is YES (M = 1) and the TM system sound source system is currently specified, in order to change to the DPCM system which is the sound source system at the time of a fast key depression operation, the process shown in FIG. Similar to the processing of S3004 in the case of the first embodiment, the DPCM format of FIG. 11 is stored in the sound channel area of the RAM 206 or 306 (see FIGS. 2 and 3) to which the depressed key is assigned. Is set ( S3104 ), and the value 1 is set to the flag C ( S3105 ).

一方、S3102において、ベロシティの値が64より小さ
くその判定がNOの場合は、更に、変数Mが値1であるか
否かが判定される(S3106)。
On the other hand, if the velocity value is smaller than 64 in S 3102 and the determination is NO, it is further determined whether or not the variable M is the value 1 (S 3106 ).

S3106の判定がNO(M=0)で、現在、DPCM方式の音
源方式が指定されている場合は、遅い押鍵操作時の音源
方式であるTM方式に変更すべく第30図の第1の実施例の
場合のS3007の処理の場合と同様にして、RAM206又は306
上の押鍵された鍵がアサインされる発音チャネル領域
に、第11図のTMフォーマットでデータが設定され(S
3107)、フラグCに値2がセットされる(S3108)。
If the determination in S3106 is NO (M = 0) and the sound source system of the DPCM system is currently specified, the first sound source system in FIG. In the same manner as in the case of the processing of S 3007 in the case of the embodiment, the RAM 206 or 306
Data is set in the TM format of FIG. 11 in the sounding channel area to which the pressed key is assigned (S
3107 ), the value 2 is set to the flag C ( S3108 ).

上述の処理において、ステップS3103の判定がNOの場
合およびステップS3106の判定がYESの場合は、もともと
所望の音源方式になっていので、特別な処理は行われな
い。
In the above-described processing, when the determination in step S3103 is NO and when the determination in step S3106 is YES, the desired sound source method is originally used, and no special processing is performed.

離鍵時の鍵盤キー処理の実施例 つぎに、離鍵時の鍵盤キー処理の実施例につき説明す
る。
Example of Keyboard Key Processing at Key Release Next, an example of keyboard key processing at key release will be described.

上述の押鍵時の鍵盤キー処理の第1又は第2の実施例
により、鍵域(音域)やベロシティによって音源方式が
自動的に変更され得るが、離鍵時にはそれらの変更設定
が元の状態に戻される必要がある。それを実現するのが
以下に説明する離鍵時の鍵盤キー処理の実施例である。
According to the first or second embodiment of the keyboard key processing at the time of key depression, the sound source system can be automatically changed by the key range (tone range) and the velocity. Need to be returned to. This is realized by the embodiment of the keyboard key processing at the time of key release described below.

第32図は、第4図(a)のメイン動作フローチャート
におけるS405の鍵盤キー処理の動作フローチャートの一
部であり、第8(a)又は(b)の鍵盤キー801の離鍵
時の処理のフローである。
FIG. 32 is a part of the operation flowchart of the keyboard key processing of S405 in the main operation flowchart of FIG. 4 (a), and the processing at the time of key release of the keyboard key 801 of FIG. 8 (a) or (b). It is a flow of.

まず、第4図(a)のメイン動作フローチャートにお
けるS404の鍵盤キー取り込み処理で「離鍵」と判別され
た鍵がアサインされているRAM206又は306(第2図及び
第3図参照)上の発音チャネル領域に設定されているフ
ラグCの値が判別される。今、フラグCは、第30図のS
3005及びS3008又は第31図のS3105又はS3108の処理にお
いて設定され、押鍵時の初期値は0であり、押鍵時にTM
方式からDPCM方式に音源方式が変更された場合には値1
がセットされ、DPCM方式からTM方式に音源方式が変更さ
れた場合には値2がセットされる。従って、押鍵時に変
更が行われなかった場合には初期値0のままである。
First, in the RAM 206 or 306 (see FIGS. 2 and 3) to which the key determined to be "key released" in the keyboard key loading process of S404 in the main operation flowchart of FIG. 4A is assigned. The value of the flag C set in the sound channel area is determined. Now, the flag C is set to S in FIG.
3005 and S 3008 or set in the processing of S 3105 or S 3108 in FIG. 31, the initial value at the time of key pressing is 0,
Value 1 when the sound source system is changed from the system to the DPCM system
Is set, and the value 2 is set when the sound source method is changed from the DPCM method to the TM method. Therefore, if no change is made at the time of key depression, the initial value remains at 0.

そして、第32図の離鍵時の処理において、ステップS
3201での判定により、フラグCの値が0の場合は、鍵域
やベロシティによって音源方式が変更されていないの
で、特別な処理は行わずに通常の離鍵処理を行う。
Then, in the key release process of FIG. 32, step S
If the value of the flag C is 0 in the determination at 3201 , since the tone generator method has not been changed by the key range or velocity, normal key release processing is performed without performing any special processing.

S3201の判定により、フラグCの値が1と判定せた場
合は、押鍵時に音源方式がTM方式からDPCM方式に変更さ
れている。そこで、TM方式に戻すべく、RAM206又は306
(第2図又は第3図参照)上の押鍵された鍵がアサイン
されていた発音チャネル領域に、第11図のTMフォーマッ
トでデータが設定される。すなわち、各発音チャネル領
域の先頭領域G(第11図のTMの欄参照)にTM方式を示す
音源方式No.が設定される。つづいて、各発音チャネル
領域の第2番目以降の領域に現在指定されている音色に
対応する各種パラメータがそれぞれセットされる(S
3202)。
The determination of S 3201, if the value of the flag C is not determined 1, the sound source mode is changed to DPCM method from the TM mode at the time of key depression. Therefore, in order to return to the TM method, the RAM 206 or 306
(See FIG. 2 or FIG. 3.) Data is set in the TM format of FIG. 11 in the sounding channel area to which the depressed key is assigned. That is, a sound source system No. indicating the TM system is set in the head region G (see the column of TM in FIG. 11) of each sounding channel region. Subsequently, various parameters corresponding to the currently designated timbre are set in the second and subsequent areas of each sounding channel area (S
3202 ).

一方、S3201の判定により、フラグCの値が2と判定
された場合は、押鍵時に音源方式がDPCM方式からTM方式
に変更されている。そこで、DPCM方式に戻すべく、RAM2
06又は306上の押鍵された鍵がアサインされていた発音
チャネル領域に、第11図のDPCMフォーマットでデータが
設定される。すなわち、各発音チャネル領域の先頭領域
G(第11図のDPCMの欄参照)にDPCM方式を示す音源方式
No.が設定される。つづいて、各発音チャネル領域の第
2番目以降の領域に現在指定されている音色に対応する
各種パラメータがそれぞれセットされる(S3203)。
On the other hand, the determination of S 3201, if the value of the flag C is determined to be 2, the sound source mode is changed to the TM mode from DPCM method at key depression. Therefore, to return to the DPCM method, RAM2
Data is set in the DPCM format of FIG. 11 in the sounding channel area to which the depressed key on 06 or 306 is assigned. That is, the sound source system indicating the DPCM system is provided in the head area G of each sounding channel area (see the column of DPCM in FIG. 11)
No. is set. Subsequently, various parameters corresponding to the currently designated timbre are set in the second and subsequent regions of each sounding channel region ( S3203 ).

以上の動作の後、フラグCの値が0に戻され、第32図
の処理を終了し、つづいて特には図示しない通常の離鍵
処理が実行される。
After the above operation, the value of the flag C is returned to 0, the processing in FIG. 32 is terminated, and then a normal key release processing (not shown) is executed.

他の実施例の態様 以上説明してきた本発明の一連の実施例においては、
第1図に示される如く、MCPU101とSCPU102という2つ
のCPUが異なる発音チャネルを分担して処理するように
したが、CPUの数は1つでも、また、3つ以上でもよ
い。
Aspects of Other Embodiments In the series of embodiments of the present invention described above,
As shown in FIG. 1, two CPUs, MCPU 101 and SCPU 102, share and process different sounding channels, but the number of CPUs may be one, or three or more.

また、第2図及び第3図の制御用ROM201および301、
ならびに外部メモリ116をROMカード等で構成すれば、RO
Mカードによりユーザに様々な音源方式を提供すること
ができる。
The control ROMs 201 and 301 shown in FIGS.
In addition, if the external memory 116 is constituted by a ROM card, the RO
Various sound source systems can be provided to the user by the M card.

更に、第2図のMCPU101の入力ポート210には、第8
図のような楽器操作部のほかに様々な操作部を接続する
ことが可能であり、これにより種々の形態の電子楽器を
実現できる。また、他の電子楽器からの演奏情報を入力
して音源処理のみを行う音源モジュールとして実現する
ことも容易である。
Further, the input port 210 of the MCPU 101 in FIG.
It is possible to connect various operation units in addition to the musical instrument operation unit as shown in the figure, thereby realizing various forms of electronic musical instruments. Further, it is easy to realize as a sound source module that inputs performance information from another electronic musical instrument and performs only sound source processing.

一方、第8図の機能キー801又は鍵盤キー802により各
発音チャネルに音源方式が割り当てられる形態は、音色
・音域、ベロシティによるもの以外も含めて、様々な形
態が考えられる。
On the other hand, various modes are conceivable in which the tone generator system is assigned to each sounding channel by the function key 801 or the keyboard key 802 in FIG.

また、変調方式としては、FM、TM方式によるもの以外
に、様々なものが適用可能である。
Various modulation schemes can be applied other than the FM and TM schemes.

変調方式においては、本実施例では、4オペレータの
場合につき説明したが、オペレータ数はこれに限られる
ものではない。
In the modulation method, the present embodiment has been described for the case of four operators, but the number of operators is not limited to this.

〔発明の効果〕〔The invention's effect〕

本発明によれば、専用の音源回路は全く必要とせず
に、汎用のプロセッサ構成とすることが可能となる。こ
のため、楽音波形発生装置全体の回路規模を大幅に小型
化することができ、LSI化した場合等においても通常の
マイクロプロセッサの製造技術と同じでよく、チップの
歩留りも向上するため、製造コストを大幅に低減させる
ことが可能となる。なお、楽音信号出力手段は簡単なラ
ッチ回路で構成できるため、この部分を付加したことに
よる製造コストの増加はほとんどない。
According to the present invention, a general-purpose processor configuration can be achieved without any need for a dedicated tone generator circuit. As a result, the circuit scale of the entire musical tone waveform generator can be significantly reduced, and even in the case of LSI, the same manufacturing technology as that of a normal microprocessor can be used, and the yield of chips can be improved. Can be greatly reduced. Since the tone signal output means can be constituted by a simple latch circuit, there is almost no increase in manufacturing cost due to the addition of this part.

また、変調方式を例えば位相変調方式と周波数変調と
で変更したい場合、ポリフォニック数を変更したい場合
等において、プログラム記憶手段に記憶させる音源処理
プログラムを変更するだけで対処でき、新たな楽音波形
発生装置の開発コスト、を大幅に減少させることが可能
となり、ユーザに対しても例えばROMカード等によって
新たな音源方式を提供することが可能となる。
Further, when it is desired to change the modulation method between, for example, the phase modulation method and the frequency modulation, or when it is desired to change the polyphonic number, it is possible to cope with it only by changing the sound source processing program stored in the program storage means. Development cost can be greatly reduced, and a new sound source system can be provided to the user by, for example, a ROM card or the like.

この場合、演奏情操処理プログラムと音源処理プログ
ラムとの間のデータのリンクをデータ記憶手段上の楽音
生成データを介して行うというデータアーキテクチャ
と、演奏情報処理プログラムに対して所定時間間隔で音
源処理プログラムを実行するというプログラムアーキテ
クチャを実現したことにより、両プロセッサ間の同期を
とるための処理が必要なくなり、プログラムを大幅に簡
略化することが可能となる。これにより、変調方式のよ
うに処理が複雑な音源処理も、十分な余裕をもって実行
することができる。
In this case, the data architecture in which the data link between the performance emotion processing program and the sound source processing program is performed through the musical sound generation data in the data storage means, and the sound source processing program is executed at predetermined time intervals with respect to the performance information processing program. Is realized, the processing for synchronizing the two processors becomes unnecessary, and the program can be greatly simplified. As a result, sound source processing whose processing is complicated, such as a modulation method, can be executed with a sufficient margin.

更に、変調方式の種類又は変調方式における楽音生成
アルゴリズムの選択等による処理時間の変化を楽音信号
出力手段によって全て吸収することができるため、楽音
信号をD/A変換器等へ出力、するための複雑なタイミン
グ制御プログラムが必要なくなるという効果も生まれ
る。
Furthermore, since the change in the processing time due to the type of modulation method or the selection of the tone generation algorithm in the modulation method can be completely absorbed by the tone signal output means, the tone signal is output to a D / A converter or the like. There is also an effect that a complicated timing control program is not required.

【図面の簡単な説明】[Brief description of the drawings]

第1図は、本発明による実施例の全体構成図、 第2図は、マスターCPUの内部構成図、 第3図は、スレーブCPUの内部構成図、 第4図(a)〜(d)は、本実施例の全体動作フローチ
ャート、 第5図は、メイン動作フローチャートとインタラプト処
理との関係を示す概念図、 第6図(a)は、従来のD/A変換器部の構成図、 第6図(b)は、本実施例によるD/A変換器部の構成
図、 第7図は、D/A変換におけるタイミングチャート、 第8図(a)は、機能キーと鍵盤キーの配置図、 第8図(b)は、鍵盤キーの説明図、 第9図は、RAM上の発音チャネル別の記憶領域を示す
図、 第10図は、各発音チャネルの音源処理方式を選択すると
きの概念図、 第11図は、RAM上の音源方式別のデータフォーマットの
構成図、 第12図は、RAM上のバッフア領域を示す図、 第13図は、PCM方式による音源処理の動作フローチャー
ト、 第14図は、DPCM方式による音源処理の動作フローチャー
ト、 第15図(a)、(b)は、差分値Dと現在アドレスAF
用いて補間値XQを求める場合の原理説明図、 第16図(a)は、FM方式による音源処理(その1)の動
作フローチャート、 第16図(b)は、FM方式による音源処理(その1)のア
ルゴリズムを示す図、 第17図(a)は、TM方式による音源処理(その1)の動
作フローチャート、 第17図(b)は、TM方式による音源処理(その1)のア
ルゴリズムを示す図、 第18図は、変調方式におけるアルゴリズムの例を示した
図、 第19図は、FM方式による音源処理(その2)の動作フロ
ーチャート、 第20図は、TM方式による音源処理(その2)の動作フロ
ーチャート、 第21図は、変調方式の第1の改良例の動作フローチャー
ト、 第22図(a)は、第1の改良例に係るFM方式によるオペ
レータ1処理の動作フローチャート、 第22(b)は、第1の改良例に係るFM方式によるオペレ
ータ1処理の1オペレータあたりの演算アルゴリズムを
示す図、 第23図(a)は、第1の改良例に係るTM方式によるオペ
レータ1処理の動作フローチャート、 第23図(b)は、第1の改良例に係るTM方式によるオペ
レータ1処理の1オペレータあたりの演算アルゴリズム
を示す図、 第24図は、第1の改良例に係るアルゴリズム処理の動作
フローチャート、 第25図は、変調方式の第2の改良例の動作フローチャー
ト、 第26図は、第2の改良例に係るアルゴリズム処理の動作
フローチャート、 第27図は、機能キーの一部の配置図、 第28図(a)、(b)は、発音チャネルへの音源方式の
割り当て例を示した図、 第29図は、機能キー処理の動作フローチャート、 第30図は、押鍵時の鍵盤キー処理の第1の実施例の動作
フローチャート、 第31図は、押鍵時の鍵盤キー処理の第2の実施例の動作
フローチャート、 第32図は、離鍵時の鍵盤キー処理の実施例の動作フロー
チャートである。 101……マスターCPU、 102……スレーブCPU、 103……MCPU外部メモリアクセス用アドレスラッチ部、 104……SCPU外部メモリアクセス用アドレスラッチ部、 105……アクセス用アドレス競合回避回路、 106……外部メモリセレクタ部、 107……Left D/A変換器部、 108……Right D/A変換器部、 109……入力ポート、 110……出力ポート、 111、112……出力端子、 113……レフト出力端子、 114……ライト出力端子、 115……外部メモリデータイン端子、 116……外部メモリ、 201、301……制御用ROM、 202、302……ROMアドレスデコーダ、 203……インタラプト制御部、 204、304……RAMアドレス制御部、 205、305……ROMアドレス制御部、 206、306……RAM、 207、307……コマンド解析部、 208、308……ALU部、 209、309……乗算器、 210……入力ポート、 211……出力ポート、 212……SCPU内部RAMアドレス指定バス・インタフェー
ス、 213……SCPUへの書き込みデータバス・インタフェー
ス、 214……SCPUからの読み込みデータバス・インタフェー
ス、 215……外部メモリアクセス用アドレスバス・インタフ
ェース、 216……外部メモリデータバス・インタフェース、 217……D/Aデータ転送バス・インタフェース、 303……MCPUによるSCPU内部RAMアドレス指定バス・イ
ンタフェース、 310……MCPUよりの書き込みデータバス・インタフェー
ス、 311……MCPUへの読み出しデータバス・インタフェー
ス、 312……外部メモリアクセス用アドレスバス・インタフ
ェース、 313……外部メモリデータバス・インタフェース、 601、602……ラッチ、 603……D/A変換器、 801……機能キー、 802……鍵盤キー.
FIG. 1 is an overall configuration diagram of an embodiment according to the present invention, FIG. 2 is an internal configuration diagram of a master CPU, FIG. 3 is an internal configuration diagram of a slave CPU, and FIGS. FIG. 5 is a conceptual diagram showing the relationship between the main operation flowchart and interrupt processing, FIG. 6 (a) is a configuration diagram of a conventional D / A converter unit, FIG. FIG. 7B is a configuration diagram of a D / A converter unit according to the present embodiment, FIG. 7 is a timing chart in D / A conversion, FIG. 8A is a layout diagram of function keys and keyboard keys, FIG. 8 (b) is an explanatory diagram of keyboard keys, FIG. 9 is a diagram showing a storage area for each sounding channel on a RAM, and FIG. 10 is a concept when selecting a sound source processing method for each sounding channel. FIG. 11, FIG. 11 is a configuration diagram of a data format for each sound source method on the RAM, and FIG. 12 is a diagram showing a buffer area on the RAM. 13 is an operation flowchart of sound source processing by the PCM method, FIG. 14 is an operation flow chart of sound source processing by the DPCM method, and FIGS. 15 (a) and (b) show the difference value D and the current address AF . used interpolated value principle explanatory view of a case of obtaining the X Q, view the. 16 (a), the operation flow chart of the tone generator processing by FM system (part 1), view the. 16 (b), the sound source processing by the FM system (the FIG. 17 (a) is an operation flowchart of sound source processing (1) by the TM method, and FIG. 17 (b) is an algorithm of sound source processing (1) by the TM method. FIG. 18 is a diagram showing an example of an algorithm in a modulation method. FIG. 19 is an operation flowchart of sound source processing (part 2) by the FM method. FIG. 20 is a sound source processing (TM) by the TM method (part 2). FIG. 21 is a flowchart showing the operation of the modulation method. Operation flow chart of the first improved example, FIG. 22 (a) is an operation flow chart of the operator 1 processing by the FM method according to the first improved example, and 22 (b) is the FM method according to the first improved example. FIG. 23 (a) is an operation flowchart of an operator 1 process by the TM method according to a first improvement example, and FIG. FIG. 24 is a diagram showing an operation algorithm per operator in operator 1 processing by the TM method according to the improved example of FIG. 24; FIG. 24 is an operation flowchart of algorithm processing according to the first improved example; FIG. 26 is an operation flowchart of an algorithm process according to the second improvement example, FIG. 27 is a layout diagram of a part of function keys, and FIGS. 28 (a) and (b) are ,pronunciation FIG. 29 is a diagram showing an example of assigning sound source systems to channels, FIG. 29 is an operation flowchart of function key processing, FIG. 30 is an operation flowchart of a first embodiment of keyboard key processing at the time of key depression, FIG. Is an operation flowchart of the second embodiment of the keyboard key processing at the time of key depression, and FIG. 32 is an operation flowchart of the embodiment of the keyboard key processing at the time of key release. 101: Master CPU, 102: Slave CPU, 103: Address latch for MCPU external memory access, 104: Address latch for SCPU external memory access, 105: Access address conflict avoidance circuit, 106: External Memory selector section, 107 Left D / A converter section, 108 Right D / A converter section, 109 Input port, 110 Output port, 111, 112 Output terminal, 113 Left Output terminal, 114: Write output terminal, 115: External memory data-in terminal, 116: External memory, 201, 301: Control ROM, 202, 302: ROM address decoder, 203: Interrupt control unit, 204, 304: RAM address control unit, 205, 305: ROM address control unit, 206, 306: RAM, 207, 307: Command analysis unit, 208, 308: ALU unit, 209, 309: Multiplication 210, input port, 211, output port, 212, SCPU internal RAM Addressing bus interface, 213: Data bus interface for writing to SCPU, 214: Data bus interface for reading from SCPU, 215: Address bus interface for external memory access, 216: External memory data bus 217: D / A data transfer bus interface, 303: SCPU internal RAM addressing bus interface by MCPU, 310: Write data bus interface from MCPU, 311: Read data bus to MCPU Interface, 312: Address bus interface for external memory access, 313: External memory data bus interface, 601, 602: Latch, 603: D / A converter, 801: Function key, 802: Keyboard Key.

───────────────────────────────────────────────────── フロントページの続き (72)発明者 太期 広一郎 東京都西多摩郡羽村町栄町3丁目2番1 号 カシオ計算機株式会社羽村技術セン ター内 (72)発明者 小倉 和夫 東京都西多摩郡羽村町栄町3丁目2番1 号 カシオ計算機株式会社羽村技術セン ター内 (72)発明者 細田 潤 東京都西多摩郡羽村町栄町3丁目2番1 号 カシオ計算機株式会社羽村技術セン ター内 (58)調査した分野(Int.Cl.7,DB名) G10H 7/02 G10H 1/02 ────────────────────────────────────────────────── ─── Continued on front page (72) Inventor Koichiro Taiki 3-2-1, Sakaemachi, Hamura-cho, Nishitama-gun, Tokyo Inside Casio Computer Co., Ltd. Hamura Technical Center (72) Inventor Kazuo Ogura Hamura-cho, Nishitama-gun, Tokyo 3-2-1 Sakaemachi Casio Computer Co., Ltd. Hamura Technology Center (72) Inventor Jun Hosoda 3-2-1 Sakaemachi Hamura-cho, Nishitama-gun, Tokyo Casio Computer Co., Ltd. Hamura Technology Center (58) Field (Int.Cl. 7 , DB name) G10H 7/02 G10H 1/02

Claims (2)

(57)【特許請求の範囲】(57) [Claims] 【請求項1】演奏情報を処理するための演奏情報処理プ
ログラムと、所定のサンプリング周期にてポリフォニッ
クの楽音信号をリアルタイムで得るための音源処理プロ
グラムとを記憶するプログラム記憶手段と、 前記プログラム記憶手段に記憶されたプログラムを読み
だすためのアドレスを制御するアドレス制御手段と、 前記アドレス制御手段により前記プログラム記憶手段か
ら読み出されたプログラム命令を解読する解読手段と、 楽音信号を生成するために必要な楽音生成データを記憶
するデータ記憶手段と、 演算処理手段と、 通常時は前記解読手段により解読された前記演奏処理プ
ログラムの各命令にしたがった演算処理を前記演奏処理
手段に実行させて、楽音信号を生成するために必要な楽
音生成データを生成して前記データ記憶手段に記憶させ
るとともに、発生すべき楽音のピッチに依存しない所定
時間間隔で前記音源処理プログラムに制御を移し、前記
解読手段により解読された前記音源処理プログラムの各
命令にしたがって、前記データ記憶手段に記憶された楽
音生成データに基づく演算処理を前記演算処理手段に実
行させてポリフォニックの楽音信号をリアルタイムでか
つ前記所定時間間隔とは非同期で生成し、この音源処理
プログラムの終了後に再び前記演奏処理プログラムに制
御を移すプログラム実行手段と、 前記所定時間間隔および前記サンプリング周期とは非同
期に生成された前記楽音信号を一時的に保持するととも
に、当該保持された楽音信号を前記サンプリング周期に
同期して出力する楽音信号出力手段とを有することを特
徴とする楽音波形発生装置。
1. A program storage means for storing a performance information processing program for processing performance information, a sound source processing program for obtaining a polyphonic tone signal in real time at a predetermined sampling period, and said program storage means. Address control means for controlling an address for reading out a program stored in the memory, decoding means for decoding a program instruction read from the program storage means by the address control means, and necessary for generating a tone signal. Data processing means for storing musical tone generation data, arithmetic processing means, and normally, causing the performance processing means to execute arithmetic processing in accordance with each instruction of the performance processing program decoded by the decoding means. Generating tone generation data necessary for generating a signal and storing the data; At the same time, the control is transferred to the sound source processing program at a predetermined time interval independent of the pitch of the musical tone to be generated, and according to each instruction of the sound source processing program decoded by the decoding means, the data is stored in the data storage means. The arithmetic processing means executes arithmetic processing based on the stored musical sound generation data to generate a polyphonic musical sound signal in real time and asynchronously with the predetermined time interval. Program execution means for transferring control to the control unit; and temporarily holding the tone signal generated asynchronously with the predetermined time interval and the sampling period, and outputting the held tone signal in synchronization with the sampling period. And a musical tone signal output means. .
【請求項2】前記サンプリング周期が、所定時間間隔に
対応し、前記プログラム実行手段が、前記サンプリング
周期で、音源処理プログラムに制御を移して、演算処理
を前記演算処理手段に実行させて、ポリフォニックの楽
音信号を生成させ、かつ、前記楽音信号出力手段が、前
記サンプリング周期とは非同期に生成された前記楽音信
号を一時的に保持するとともに、これを前記サンプリン
グ周期に同期して出力することを特徴とする請求項1に
記載の楽音波形発生装置。
2. The method according to claim 1, wherein the sampling period corresponds to a predetermined time interval, and the program execution means transfers control to a sound source processing program at the sampling period, and causes the arithmetic processing means to execute arithmetic processing. And that the tone signal output means temporarily holds the tone signal generated asynchronously with the sampling cycle and outputs the tone signal in synchronization with the sampling cycle. The musical sound waveform generator according to claim 1, wherein:
JP2171216A 1988-12-29 1990-06-28 Musical sound wave generator Expired - Lifetime JP3010693B2 (en)

Priority Applications (6)

Application Number Priority Date Filing Date Title
JP2171216A JP3010693B2 (en) 1990-06-28 1990-06-28 Musical sound wave generator
EP91109115A EP0463409B1 (en) 1990-06-28 1991-06-04 Musical tone waveform generation apparatus
KR1019910009251A KR950006029B1 (en) 1990-06-28 1991-06-04 Musical sound waveform generator
DE69130688T DE69130688T2 (en) 1990-06-28 1991-06-04 Device for generating music waveforms
US07/855,431 US5319151A (en) 1988-12-29 1992-03-23 Data processing apparatus outputting waveform data in a certain interval
US08/223,589 US5726371A (en) 1988-12-29 1994-04-06 Data processing apparatus outputting waveform data for sound signals with precise timings

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2171216A JP3010693B2 (en) 1990-06-28 1990-06-28 Musical sound wave generator

Publications (2)

Publication Number Publication Date
JPH0458292A JPH0458292A (en) 1992-02-25
JP3010693B2 true JP3010693B2 (en) 2000-02-21

Family

ID=15919193

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2171216A Expired - Lifetime JP3010693B2 (en) 1988-12-29 1990-06-28 Musical sound wave generator

Country Status (1)

Country Link
JP (1) JP3010693B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5283386A (en) * 1991-08-30 1994-02-01 Casio Computer Co., Ltd. Musical-tone signal generating apparatus and musical-tone controlling apparatus including delay means and automatic reset means

Also Published As

Publication number Publication date
JPH0458292A (en) 1992-02-25

Similar Documents

Publication Publication Date Title
US5726371A (en) Data processing apparatus outputting waveform data for sound signals with precise timings
EP0463411B1 (en) Musical tone waveform generation apparatus
JP2869573B2 (en) Musical sound wave generator
JP3035991B2 (en) Musical sound wave generator
JP2797139B2 (en) Musical sound wave generator
JP3010693B2 (en) Musical sound wave generator
KR950006029B1 (en) Musical sound waveform generator
JP2678974B2 (en) Musical sound wave generator
US4709611A (en) Electronic musical instrument for generating a natural musical tone
JP3027831B2 (en) Musical sound wave generator
JPH11202866A (en) Method and device for musical sound generation
JP3006094B2 (en) Musical sound wave generator
JPH0460698A (en) Musical sound waveform generator
JP2946761B2 (en) Musical sound wave generator
JP3027832B2 (en) Musical sound wave generator
JP2946762B2 (en) Musical sound wave generator
JP2946764B2 (en) Musical sound wave generator
JPH10124060A (en) Method and device for musical sound generation and recording medium where program for sound generation is recorded
JPS6252317B2 (en)
JPH0764553A (en) Electronic musical instrument
JPS6252316B2 (en)
JP3134840B2 (en) Waveform sample interpolation device
JPH07117834B2 (en) Musical sound generator
JPH08179774A (en) Musical sound synthesizer
JPH0460596A (en) Processor for electronic musical instrument

Legal Events

Date Code Title Description
FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20071210

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20081210

Year of fee payment: 9

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20081210

Year of fee payment: 9

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20091210

Year of fee payment: 10

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20101210

Year of fee payment: 11

EXPY Cancellation because of completion of term
FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20101210

Year of fee payment: 11