JPH0261040B2 - - Google Patents

Info

Publication number
JPH0261040B2
JPH0261040B2 JP61088101A JP8810186A JPH0261040B2 JP H0261040 B2 JPH0261040 B2 JP H0261040B2 JP 61088101 A JP61088101 A JP 61088101A JP 8810186 A JP8810186 A JP 8810186A JP H0261040 B2 JPH0261040 B2 JP H0261040B2
Authority
JP
Japan
Prior art keywords
waveform
waveform data
data
memory
attack
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
JP61088101A
Other languages
Japanese (ja)
Other versions
JPS6236697A (en
Inventor
Sadaaki Ezawa
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.)
Kawai Musical Instruments Manufacturing Co Ltd
Original Assignee
Kawai Musical Instruments Manufacturing 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 Kawai Musical Instruments Manufacturing Co Ltd filed Critical Kawai Musical Instruments Manufacturing Co Ltd
Priority to JP61088101A priority Critical patent/JPS6236697A/en
Publication of JPS6236697A publication Critical patent/JPS6236697A/en
Publication of JPH0261040B2 publication Critical patent/JPH0261040B2/ja
Granted legal-status Critical Current

Links

Landscapes

  • Electrophonic Musical Instruments (AREA)

Description

【発明の詳細な説明】 本発明は楽音の発生から終了までを複数の部分
に区分し、楽音波形を形成する電子楽器を提供す
ることを目的とする。 従来楽音波形の1周期をメモリに記憶し楽音周
波数に基づく速度で読出し、楽音を形成する方式
の電子楽器がある。 これによると楽音の発生から終了まで同一波形
の繰返しであつて音色の時間的変化のない貧弱で
不自然な音であつた。 本発明によれば、楽音波形の発生から終了まで
複数の部分に区分し、区分した部分毎にエソベロ
ープの付与された波形をデータ化しそれぞれ波形
データメモリに記憶しておき、鍵盤操作により波
形データメモリから自然楽器を計算によりシミユ
リレートした波形データを読出し、時間経過に従
つて前記部分ごとに波形を形成し、時間的に変化
する楽音波形を形成するため極めて自然で豊かな
音を提供できる。 本発明では実施例として波形データを記憶する
波形データメモリとマイクロ・プロセツサを用
い、マイクロ・プロセツサの処理プログラム(シ
ミユレートプログラム)によつて楽音を形成する
方法を開示している。 マイクロ・プロセツサは楽音の発生から終了ま
で、つまりアタツク部及びデイケイ部における楽
音波形を、波形データに従つて算出するのに用い
られる。波形データはアタツク、デイケイ部にお
いて、区分されたいくつかの波形パターンに対し
て、各々用意する。又、これらの波形パターンの
データはアタツク、デイケイ部における振幅変化
をも同時に含んでしまうものである。 楽音波形のアタツク、デイケイ部においては、
波形パターンが時間に従つて変化していくので、
実際の楽音に近いものが得られる。又キーによつ
て、それぞれ波形パターンのデータを個々に用意
することにより、音域による音色変化を付加でき
る。 又、波形パターンのデータに、アタツク、デイ
ケイ部における振幅変化をも含有させることがで
きるので、エンベロープ波形等を用意する必要が
ない。又、エンベロープ波形と楽音波形を乗算さ
せる必要もないので、システム的には簡単であ
る。又、波形パターンのデータは、マイクロ・プ
ロセツサで楽音波形を演算していくのに必要なデ
ータだけ用意すればよいので、楽音波形の振幅値
をサンプリングし、その値を量子化してデジタル
信号で記憶する方式に比較して、ずつてメモリ容
量が少なくて済む。 マイクロ・プロセツサで楽音波形をシミユレー
トとする場合、問題点となるのは、キーを押圧す
ることにより、マイクロ・プロセツサが算出する
波形値を、押圧キーに対応した楽音周波数に従つ
て再現することである。即ち、マイクロ・プロセ
ツサのデータ処理時間と楽音の周期の時間との大
きなギヤツプが問題となる。例えば、楽音波形シ
ミユレートをNサンプリングで行なおうとした場
合、今、マイクロ・プロセツサが波形データをも
とにシミユレートプログラムに従つて演算し、1
サンプリングの結果を演算するのに、Pステート
の命令処理が必要であるとすれば、楽音波形を得
るのには、NPステートを必要とする。マイク
ロ・プロセツサ1ステートの処理時間がt時間で
あるとすると、NPt時間を必要とすることにな
る。今、楽音波形周期をTとすれば、T>NPt即
ちT/N>Ptならマイクロ・プロセツサを実時間処 理で使用できる。今、N=64とし、 例えばC7ならT/64=7.46μsだから7.46μs>Ptと いうことになる。 これに対して現存するCPUチツプ、例えばイ
ンテル8008というマイクロ・プロセツサならば、
1ステート処理時間t=4μsであるから、C7の場
合、P≧2で上式はすでに成立しない。 8008より約10倍程処理スピードが速いインテル
8080を使用したとしても、実時間での使用が困難
であることが察せられる。8008より約100倍程処
理スピードが速いバイポーラ型プロセツサの場合
でも、実時間処理ならば極く簡単なシミユレート
ルーチンしか組めないであろう。 又、マイクロ・プロセツサを実時間処理で使用
した時、楽音波形が完全な同一パターンで繰返す
時間領域においても、その値を繰返し計算して算
出するということは、マイクロ・プロセツサの使
い方としては不合理である。又、マイクロ・プロ
セツサによる演算結果は、マイクロ・プロセツサ
のクロツクに同期して出力されてくるので、それ
を押圧キーの楽音周波数を同期したものに変換し
なければならないが、この操作をソフトウエアで
実現することは困難であり、ハードウエアで実現
することが必要である。 本発明で、楽音波形パターンが波形データによ
つて変化していく基本的な思想を第1図、第2図
をもとに説明する。 第1図はアタツク部における波形パターン変化
の1例が示されている。即ち、WD1,WD2…
…というように、波形データに従つて、波形パタ
ーンが変化していく。楽音波形が同一パターンで
繰返す時間領域TWD1,TWD2,……内では同じ波
形パターンの繰返しで構成する。これらの波形デ
ータは波形データメモリ内に第2図イに示すよう
にたくわえられている。即ち、アドレス0〜27
に波形パターンWD1〜WD6までの波形データ
があり、アドレス28のアタツク終了データで定
常部に入つたことが察知され、アドレス22〜2
7の波形データによる波形パターンWD6を持続
するようにして、定常部の波形とする。デイケイ
部に入ると、アドレス29以後の波形データが順
次読出され、波形パターンWD7……が順次シミ
ユレートされていく。そしてアタツク部と同様に
波形パターンの変化が形成されていく。そして、
アドレスmのデイケイ終了でシミユレートは終了
する。これらの波形データに従つて、第1図に示
すような楽音波形を算出するルーチンが、シミユ
レートプログラムメモリ内にたくわえられてい
る。 全ての音域に対する波形データメモリは、それ
ぞれのキーに対応してか、あるいは全音域を幾つ
かに区分したそれぞれに対応して第2図イのよう
なデータブロツクを第2ロにおいてW1,W2…
…Woで示すように幾つか用意する。例えばキー
C4の楽音波形パターンが、データブロツクW4
の波形データに対応するなら、W4の波形データ
を記憶してあるアドレス、即ちAW4からCPUチ
ツプは順次データをフエツチし、シミユレートプ
ログラムメモリに従つて波形パターンを算出して
いく。なお、第2図において、波形パターンWD
1,WD2……をシミユレートするための波形デ
ータWD1−1〜WD1−4,WD2−1〜WD
2−5……は第1図にWD1の場合を例にとつて
図示してある如く、各波形パターンの1周期を構
成するデータ群である。 この例では、WD1を折線近似でシミユレート
した場合でありa1a2a2a3a3a4a4a5といつ
た区間が、それぞれWD1−1,WD1−2,
WD1−3,WD1−4というデータを処理する
ことにより算出される。 次に、順次算出される波形値を、楽音周波数で
読出す基本的思想を第1図及び第2図の例を引用
して、第3図で説明する。 まず、波形パターン1周期分がNワードより成
るなら、2Nワードの波形メモリを用意する。第
3図イでは、例としてN=64の場合を示し、128
ワードの波形メモリを用意している。そして0〜
63ワード、64〜127ワードをそれぞれエリアA、
エリアBに分けて使用する。エリアA,エリアB
の指定は、波形メモリのアドレス端子のMSBを
“L”あるいは“H”に保つことにより指定でき
る。 次に第3図ロを説明する。まずWD1−1〜
WD1−4に従つて算出した最初の波形パターン
WD1を記憶するメモリのエリアと、楽音周波数
で読出しをするようアドレスを指定するメモリの
エリアとは同一となる。第3図ロのtxがこの区間
である。第3図の例ではまずエリアAを使用して
いる。 次にエリアAに記憶された波形パターンWD1
を、楽音周波数で読出している間に発生する波形
パターン切換クロツク発生器の出力を基点として
WD2−1〜WD2−5に従つて波形パターン
WD2が算出され、エリアBに記憶される。演算
が完全に終了したところで、楽音周波数の読出し
を、エリアBに切換え、波形パターンWD2を読
出す。そしてこの間に、発生する波形パターン切
換クロツク発生器の出力を基点としてWD3−1
〜WD3−5が演算され、波形パターンWD3を
エリアAに記憶する。演算が完全に終了したとこ
ろで、楽音周波数の読出しをエリアAに切換え、
波形パターンWD3を読出す。そして、この間に
発生する波形パターン切換クロツク発生器の出力
を基点としてWD4−1〜WD4−5が演算処理
され、波形パターンWD4をエリアBに記憶す
る。以上のエリアA,Bに対する記憶操作と読出
し操作は以下同様に繰返し実行される。 ここで問題となるのは、最切に波形メモリのエ
リアAに演算結果が順次記憶されていく時、即
ち、第3図のtxの区間内において、1周期分の波
形演算が完全に終了する時間が、読出する楽音周
期よりも遅いと何周期かにわたつて演算の途中経
過が出力されることとなる。この様子を第4図
イ,ロに比較して示す。このことは特に演算処理
時間の遅いCPUチツプを使用した場合に問題と
なるが、数msec以内なら聴感上への大きな影響
はない。又、波形パターン切換クロツク発生器か
らの出力に同期して、ある波形パターンから次の
パターンに変わるために、このクロツクと楽音周
波数で読出すスピードとの非同期性から、第5図
イ,ロにWD2とWD3との場合を例にとつて比
較して示すように、波形パターンが不連続にな
る。即ち、P1がエリアAのアドレス50とする
と、ここで波形パターンが切換えられると、エリ
アBが指定され、エリアBのP2、即ち、アドレ
ス50+64=114へ飛躍してしまう。本システムで
は第5図イが例外であり、第5図ロのケースがほ
とんどであるが、これも聴感上への大きな影響は
ない。 本発明のようなシステムに適用できる波形パタ
ーンをシミユレートするための計算方法には、
種々の方法が提案されている。即ち、折線近似シ
ミユレート、2次函数近似シミユレート……等で
ある。これらの選択は任意であり、波形パターン
のシミユレート効率、マイクロ・プロセツサの処
理スピード、メモリの許容容量等を考慮して決定
されなければならない。 そして第7図のフローチヤートの演算ルーチン
のブロツクにおいて、上記条件に従つて選択した
演算ルーチンを使用すればよい。勿論、波形デー
タメモリの内容は、どの演算ルーチンを使用する
かで異なつてくる。又、キーに対応して演算ルー
チンを変えることもできる。即ち、複雑な波形パ
ターンを有するキーには、2乗函数近似ルーチン
を使用し、それ以外は折線近似ルーチン使用とい
う具合である。 さて、第6図に示す本発明システムブロツク
と、第7図の本発明に適用されるマイクロ・プロ
セツサのシミユレートプログラムのフローチヤー
トとを、相互に参照しながらシステムの動きを説
明する。 まず、キーが鍵盤K1で押圧されると、キー信
号が優先回路K2を経てキーヤ回路K3に送られ
る。キーヤ回路からは、押圧されたキーに対応し
て音名コードとアタツクパルスとがラインLKC
とLKAにそれぞれ発生する。 音名コードは、CPUの入力端子と、音名コー
ドラツチ回路F3へ送られる。そしてアタツクパ
ルスにより音名コードがF3にラツチされる。F
3は、キーが離されてからも楽音周波数アドレス
発生回路F2へ音名コードを送り続ける機能をも
つ。即ち、デイケイ部の波形パターン算出のため
にである。アタツクパルスは、CPUの割込み信
号入力端子に送られる。 このアタツクパルスによつて、マイクロ・プロ
セツサは割込み状態となる。割込み命令として、
START番地へのジヤンプ命令を実行させるよう
プログラムを組み込めば、CPUがいかなる状態
であろうとも、キー押圧されしだい、既押圧キー
に対応したデータ処理が開始される。この様にし
て、マイクロ・プロセツサは、第7図のフローチ
ヤートに示されるような流れを持つプログラムを
収納するシミユレートプログラムメモリSPMの
内容にそつて、データ処理を開始する。まず、波
形メモリのアドレスを指定するためのCPU内の
レジスタをクリヤーした後、波形メモリエリアA
が、CPUの出力ラインLMAからの信号により指
定される。次に、押圧キーの音名に対応した波形
データを、波形データメモリWDMから読出して
くるための準備をする。即ち、LKCよりCPUに
送られてきた音名コードから、波形データメモリ
WDM上の、音名に対応する波形データ収納アド
レスを作成した後、CPU内部の波形データアド
レス指定用レジスタにセツトする。 例として、第1図に示す楽音波形に対応したキ
ーが押圧された場合について説明する。そのキー
の音名コードは、波形データメモリWDMのアド
レスAWD1=0を指定するよう波形データアド
レス指定用レジスタをセツトする。そこで、波形
データWD1−1がまずCPUにフエツチされる。
次に、波形データメモリWDMからフエツチされ
た波形データWD1−1をもとに、演算ルーチン
により演算が開始される。演算結果が得られる
と、波形メモリMWのアドレスを、CPU内の波
形メモリアドレス指定用レジスタを用いてライン
LA1に出力した後、結果をラインLDから出力す
る。結局、波形メモリMWには、ラインLA1の
信号で指定したアドレスに、ラインLDに出力さ
れた演算結果が、ゲートG1が開の時に収納され
る。ゲートG1が閉の時はゲートG2が開とな
り、波形メモリMWのアドレスラインは楽音周波
数発生回路F2の出力ラインLA2が接続され、
楽音周波数で読出しに供される。この後、波形メ
モリMWのアドレス指定用レジスタを+1増加す
る。そしてループY1を経て次の振幅値の算出に
向う。こうして、波形データメモリWDMからフ
エツチされた波形データWD1−1の処理が終了
する迄、ループY1を回り続ける。やがて処理が
終了すると第7図の点線で囲まれたフローFLW
へ進む。この時点で、波形パターンWD1の一部
a1a2の振幅値が算出されて、波形メモリMWに
収納されている。そしてFLW1,FLW2の判定
ルーチンは全てNOでY2へ向う。波形データメ
モリWDMのアドレス指定用のレジスタを+1増
加する。そしてY4を経て、新たなる波形データ
をフエツチする。即ちアドレス1の波形データ
WD1−2がCPUにフエツチされる。以後同様に
WD1−2の処理が終了する迄、ループY1を回
り続ける。そして処理が終了すると、フロー
FLWへ進む。この時点で、波形パターンWD1
の一部a1a2a2a3の振幅値が算出されて、波形
メモリMWに収納されている。 このようにしてa1a2a2a3a3a4……と振幅
値が算出されていく。ところで、フローFLWは、
波形メモリエリアA,Bの指定を切換える機能を
有する。即ち、エリアAへの演算結果収納が完了
したら、楽音周波数による読出しエリアをBから
Aに切換える。エリアBへの演算結果収納が完了
したら、楽音周波数による読出しエリアをAから
Bに切換える。又この時は、波形メモリ用のアド
レス指定用レジスタをクリアする。そして、双方
の場合において、波形パターン切換クロツクの発
生を待ち、出力が発生したら、次の波形パターン
の算出に向う。即ち、前例に戻つてWD1−4迄
の波形データ処理が終了し、波形パターンWD1
のメモリエリアAへの収納が完了すると、FLW
1でYESとなりエリアAが指定され、START直
後に指定したエリアAが保持され、楽音周波数ア
ドレス発生回路F2の出力ラインLA2の信号で、
波形パターンWD1が読出されることを保つ。こ
の間に、波形パターン切換クロツクの出力が生じ
るとFLW3でYESとなりY2,Y4を経て最初
の状態に戻る。 以後同様に、波形データWD2−1,WD2−
2,WD2−3,WD2−4,WD2−5の処理
が行なわれ、エリアBへの波形パターンWD2の
収納が完了すると、FLW2でYESとなり、、メモ
リエリアの指定が、エリアAからエリアBに変わ
り、F2の出力ラインLA2の信号により、エリ
アBから波形パターンWD2が読出される。そし
て、波形メモリ用のアドレス指定用レジスタがク
リヤされる。 この間に、波形パターンの切換クロツクが生じ
ると、FLW3でYESとなり、ループY2,Y4
を経て最初の状態に戻る。以下同様である。 波形パターン切換クロツクは、メモリエリア
A,Bの切換に同期しているので、この周波数を
可変させることにより、波形パターンが切り変わ
る時間間隔を制御できる。即ち、アタツク、デイ
ケイ部分における波形パターン変化の時間間隔を
制御できる。 本発明では時間の経過に従う波形パターン変化
が、そのアタツク、デイケイ部分は、その振幅の
増減をも含有した波形データがストアされている
ので、アタツク、デイケイ時間の制御という役目
を果す、アタツク、デイケイ部波形パターン切換
クロツク発生器AC,DCはこのためのものであり
ラインLAC,LDCを通じてCPUに入力されてい
る。 以上のように、アタツク部分の波形パターンシ
ミユレートが続けられ、アドレスAAE=28のア
タツク終了データをCPUがフエツチすると定常
状態に入る。即ち、FLX1でYESとなり、FLX
3で待機する。そして押圧キーが離された時ライ
ンLKD上に生ずるデイケイパルスによりFLX3
でYESとなる迄、アタツク部の最後の波形パタ
ーンWD6が読出され続ける。次に、押圧キーが
離され、デイケイパルスが到来すればFLX3で
YESとなり、Y3を経てアタツク部波形パター
ン切換クロツクを、デイケイ部波形パターン切換
クロツクの方へ切換えた後、再び波形データメモ
リからデイケイ部のデータをフエツチするために
Y4を経て戻る。デイケイ部の場合も、アタツク
の場合と同様に波形メモリエリアA,Bを交互に
使用していく、そして波形データの一番最後にお
かれたアドレスADE=mのデイケイ終了データ
によりFLX2でYESとなりラインLCFを通じて
音名コードラツチ回路F3をクリヤーした後
CPUの停止状態であるHALT落ち着く。 さて、あるキーが押圧されている間に、他のキ
ーが押圧されれば優先回路により、後に押圧され
たキーのキーコードと新たにアタツクパルスが発
生する。そして音名コードラツチ回路F3に新た
な音名コードがラツチされ、アタツクパルスは割
込み端子に印加されるので、進行中の演算処理を
直ちに停止して、後で押圧されたキーに対応した
波形の演算処理を開始する。 データ長8bit並列信号、波形メモリMWが
(8nit×64word)×2の場合の実施例を第8図に
示し、そのタイムチヤートを第9図に示す。キー
ヤー回路K3から発生した押圧キーに対応したキ
ーコードが、音名コードラツチ回路F3にラツチ
され、それをもとに楽音周波数アドレス発生回路
F2内で、押圧キーの楽音周波数で、波形メモリ
MWを読出すためのクロツク信号が作られる。こ
れは高周波クロツク発生器F1の出力を音名コー
ドをもとに分周することにより得る、これを第8
図に示したMFCで現わす。この例では波形パタ
ーン1周期が64でサンプリングされているので、
読出し楽音周波数をとすれば64の周波数のク
ロツク信号がMFCの出力に発生する。これが
MFCOである。この出力はモノステーブルマル
チバイブレータMMに印加され、MMOを出力す
る。MMOの出力パルス幅は、波形メモリMWを
読出すのに必要な時間に調整されている。この
MMOが“H”の時即ち時間RTでは、波形メモ
リMWはREAD状態に保たれる。同時に、ゲー
トG2が開、ゲートG1が閉となり、メモリのエ
リアを指定するラインLMAの信号、及びMFCO
をカウントするフリツプフロツプFF1〜FF6よ
り成るカウンタの出力状態LA2に応じて、波形
メモリMWのアドレスが指定され読出される。ラ
インLMAは、“L”信号が印加されればエリア
A、“H”信号が印加されればエリアBが指定さ
れる。そして各々のエリアの64ワードの内容がカ
ウンタの出力により走査されるわけである。
MMOが“L”の時、即ち時間WTの時、ゲート
G1が開、ゲートG2が閉なので、CPUからの
アドレス信号LA1に従つて波形メモリMWのア
ドレスが指定される。波形メモリMWはWRITE
状態に保たれているので、データ入力端子に
CPUからラインLDを通じて入力されるデータ
を、LA1で指定されるアドレスに書込むことが
可能となる。 第9図において、1サンプル値算出処理時間
LOOP1において、算出されたデータD1は、
CPU内のレジスタによりラインLA1を通じて指
定されるアドレスA1にラインLDを通して収納
される。これが書込まれるのはA1とD1が同時
に出力されている時間範囲におけるWT時間であ
る。次に、LOOP2で算出されたデータD2はア
ドレスA2に、同様なWT時間において書込まれ
る。以下同様である。 結局、MFCをカウントしたカウンタのLA2を
通じての出力状態に応じて、波形メモリMW読出
し操作がMMOのRT時間に行なわれ、その出力
がラツチ回路LCHにラツチされ、同時にWT時
間にCPUからLA1を通じて出力されるアドレス
出力に従つて、LDを通じて出力されるデータを
波形メモリMWに書込む。ラツチ回路LCHの出
力はD−A変換器DAC、増幅器AMPを経てスピ
ーカSPより放音される。 他の実施例を、第2図イに応用したものを第1
0図に示す。第10図は各々の波形データの
MSBを利用して、持続時間データを共有してい
る。即ち、波形データを読出す毎に、そのデータ
のMSBを取出して順順次レジスタ内に保持させ
る。 例えば、WD1の場合、この持続時間データレ
ジスタは
【式】となり、 WD2の場合は
【式】となる。 一方、波形パターン切換クロツクの発生数をカ
ウントする切換クロツク計数レジスタを設けてお
き、双方のレジスタの内容を比較するルーチンを
設けて、両者が一致したら波形パターンを切換え
ていくという方法を具えた実施例である。この場
合のフローチヤートを第11図に示す。太線で囲
んだ部分が本方式を適用した場合に必要となる部
分である。他は第7図のフローチヤートと同様で
ある。 先に述べたシステムは、第1図に示すように波
形パターン持続時間tWD1,tWD2,tWD3…
…を、波形パターン切換クロツク発生器の出力周
期で切換えているので、その持続時間を変えるこ
とができないが、この実施例だとこれを可変する
ことも可能である。即ち、波形データメモリ
WDM内に、波形パターン切換クロツクの発生数
を計数するための持続時間データ情報を含有さ
せ、それをもとにCPU内で波形パターン切換ク
ロツクの発生数をカウントとして、波形パターン
持続時間を制御している。 以上述べたように、本発明ではマイクロ・プロ
セツサ、シミユレートプログラムメモリ、波形デ
ータメモリ、波形メモリ、クロツク発生器、DA
変換器、鍵盤、優先回路、キーヤー回路等でハー
ドウエアを構成し、楽音のアタツク部及びデイケ
イ部を複数に区分した波形データと、波形データ
記憶手段と、前記波形データに基づき楽音波形を
形成する波形形成手段とから、楽音のアタツク部
と、楽音のアタツク部の最終データを繰返し読出
す定常部と、楽音のデイケイ部とのそれぞれをキ
ーの押圧信号に従い演算し、波形メモリに記憶し
前記メモリから楽音波形を読み出したので、単に
アタツクからデイケイまでの楽音波形の振幅値を
サンプリングし、その値を量子化してデジタル信
号で記憶する方式に比較してずつとメモリ容量が
少なくと済む利点を有する。さらにエンベロープ
波形の発生および付加を省略できることも大きな
効果である。 また音名コードより、波形データメモリの波形
データ読出し開始アドレスを決定し、波形データ
メモリのアドレスを指定し波形データを読出すよ
うにしたので音域による音色変化をつけることが
できる。 さらに、アタツク終了データによりアタツク最
終波形を繰返し読出し、押圧鍵が離された時生ず
るデイケイパルスがくるまで音が持続するのでこ
の点においても、メモリが大変節約できる。
DETAILED DESCRIPTION OF THE INVENTION An object of the present invention is to provide an electronic musical instrument that divides a musical tone from generation to termination into a plurality of parts to form a musical sound waveform. Conventionally, there is an electronic musical instrument that stores one period of a musical sound waveform in a memory and reads it out at a speed based on the musical frequency to form a musical tone. According to this, the same waveform was repeated from the beginning to the end of the musical tone, and the sound was poor and unnatural, with no temporal change in timbre. According to the present invention, a musical sound waveform is divided into a plurality of parts from generation to completion, and the waveform with an esovelope added to each divided part is converted into data and stored in the waveform data memory, and the waveform data memory is stored by keyboard operation. The waveform data simulated by calculation of a natural musical instrument is read out, and a waveform is formed for each section as time passes, creating a musical sound waveform that changes over time, making it possible to provide an extremely natural and rich sound. As an embodiment of the present invention, a method is disclosed in which a waveform data memory for storing waveform data and a microprocessor are used, and musical tones are formed by a processing program (simulation program) of the microprocessor. The microprocessor is used to calculate the musical sound waveform in the attack section and decay section from the generation to the end of the musical tone, that is, in accordance with the waveform data. Waveform data is prepared for several divided waveform patterns in the attack and decay sections. Furthermore, the data of these waveform patterns also includes amplitude changes in the attack and decay sections. In the attack and decay part of the musical sound waveform,
Since the waveform pattern changes over time,
You can obtain something close to the actual musical tone. Furthermore, by preparing waveform pattern data for each key individually, it is possible to add timbre changes depending on the musical range. Further, since amplitude changes in the attack and decay parts can be included in the waveform pattern data, there is no need to prepare an envelope waveform or the like. Furthermore, since there is no need to multiply the envelope waveform and the tone waveform, the system is simple. In addition, as for the waveform pattern data, it is only necessary to prepare the data necessary for calculating the musical sound waveform with a microprocessor, so it is possible to sample the amplitude value of the musical sound waveform, quantize the value, and store it as a digital signal. This method requires less memory capacity than the previous method. When simulating a musical sound waveform using a microprocessor, the problem is that when a key is pressed, the waveform value calculated by the microprocessor is reproduced according to the musical sound frequency corresponding to the pressed key. be. That is, the problem is that there is a large gap between the data processing time of the microprocessor and the musical tone cycle time. For example, if you try to simulate a musical sound waveform with N samplings, the microprocessor will now perform calculations based on the waveform data according to the simulation program.
If P-state instruction processing is required to calculate the sampling result, NP-state is required to obtain a musical sound waveform. Assuming that the processing time for one state of the microprocessor is t time, NPt time is required. Now, if the musical waveform period is T, then if T>NPt, that is, T/N>Pt, then the microprocessor can be used for real-time processing. Now, let us assume that N=64, and for example, for C7, T/64=7.46μs, so 7.46μs>Pt. In contrast, existing CPU chips, such as the Intel 8008 microprocessor,
Since the one-state processing time t=4 μs, in the case of C7, P≧2 and the above equation no longer holds true. Intel has about 10 times faster processing speed than 8008
Even if 8080 is used, it can be seen that it is difficult to use it in real time. Even in the case of a bipolar processor, which has a processing speed about 100 times faster than the 8008, it would only be possible to create a very simple simulated routine for real-time processing. Furthermore, when a microprocessor is used for real-time processing, it is unreasonable to use a microprocessor to repeatedly calculate its value even in the time domain where the musical sound waveform repeats in the same exact pattern. It is. Also, since the results of calculations by the microprocessor are output in synchronization with the microprocessor's clock, they must be converted into ones that synchronize the musical tone frequency of the pressed keys, but this operation can be done using software. This is difficult to achieve and requires hardware implementation. The basic concept of the present invention, in which the tone waveform pattern changes depending on the waveform data, will be explained with reference to FIGS. 1 and 2. FIG. 1 shows an example of waveform pattern changes in the attack section. That is, WD1, WD2...
In this way, the waveform pattern changes according to the waveform data. The time regions T WD1 , T WD2 , . . . in which the musical sound waveform repeats in the same pattern are composed of repetitions of the same waveform pattern. These waveform data are stored in a waveform data memory as shown in FIG. 2A. That is, addresses 0-27
There is waveform data from waveform patterns WD1 to WD6, and it is detected that it has entered the steady state with the attack end data at address 28, and the waveform data from addresses 22 to 2 are detected.
The waveform pattern WD6 based on the waveform data of No. 7 is maintained to be the waveform of the steady portion. When entering the decay section, the waveform data after address 29 are sequentially read out, and waveform patterns WD7 . . . are sequentially simulated. Then, similar to the attack portion, changes in the waveform pattern are formed. and,
The simulation ends when the decay of address m ends. A routine for calculating musical tone waveforms as shown in FIG. 1 in accordance with these waveform data is stored in the simulate program memory. The waveform data memory for all the ranges is divided into data blocks W1, W2...
…Prepare some as shown in W o . For example, the tone waveform pattern of key C4 is data block W4.
, the CPU chip sequentially fetches the data from the address where the waveform data of W4 is stored, that is, AW4, and calculates the waveform pattern according to the simulated program memory. In addition, in Fig. 2, the waveform pattern WD
Waveform data WD1-1 to WD1-4, WD2-1 to WD for simulating 1, WD2...
2-5... is a data group constituting one period of each waveform pattern, as shown in FIG. 1 taking the case of WD1 as an example. In this example, WD1 is simulated using a broken line approximation, and the sections a1a2 , a2a3 , a3a4 , and a4a5 are WD1-1, WD1-2, and a4a5 , respectively.
It is calculated by processing data WD1-3 and WD1-4. Next, the basic idea of reading sequentially calculated waveform values at musical tone frequencies will be explained with reference to FIG. 3, referring to the examples of FIGS. 1 and 2. First, if one cycle of the waveform pattern consists of N words, a 2N word waveform memory is prepared. Figure 3 A shows the case where N=64 as an example, and 128
A word waveform memory is provided. And 0~
63 words and 64 to 127 words in area A, respectively.
It is divided into area B and used. Area A, Area B
can be specified by keeping the MSB of the address terminal of the waveform memory at "L" or "H". Next, FIG. 3B will be explained. First, WD1-1~
First waveform pattern calculated according to WD1-4
The memory area in which WD1 is stored is the same as the memory area in which addresses are specified for reading at musical tone frequencies. tx in Figure 3 (b) is this section. In the example of FIG. 3, area A is first used. Next, the waveform pattern WD1 stored in area A
The reference point is the output of the waveform pattern switching clock generator that occurs while reading out at the musical frequency.
Waveform pattern according to WD2-1 to WD2-5
WD2 is calculated and stored in area B. When the calculation is completely completed, the readout of the musical tone frequency is switched to area B, and the waveform pattern WD2 is read out. During this period, the WD3-1 is
~WD3-5 are calculated, and the waveform pattern WD3 is stored in area A. When the calculation is completely completed, switch the reading of the musical tone frequency to area A,
Read waveform pattern WD3. Then, WD4-1 to WD4-5 are processed based on the output of the waveform pattern switching clock generator generated during this time, and the waveform pattern WD4 is stored in area B. The above storage and read operations for areas A and B are repeated in the same way. The problem here is that when the calculation results are sequentially stored in area A of the waveform memory, that is, one cycle of waveform calculation is completely completed within the tx section in Figure 3. If the time is slower than the tone period to be read, the progress of the calculation will be output over several periods. This situation is shown in comparison in Figure 4 A and B. This becomes a problem especially when using a CPU chip with a slow calculation processing time, but within a few milliseconds there is no significant effect on the auditory sense. Also, since one waveform pattern changes to the next in synchronization with the output from the waveform pattern switching clock generator, the asynchrony between this clock and the reading speed at the musical tone frequency causes As shown by comparing the cases of WD2 and WD3, the waveform pattern becomes discontinuous. That is, if P1 is address 50 of area A, if the waveform pattern is switched here, area B will be designated and the signal will jump to P2 of area B, that is, address 50+64=114. In this system, the case shown in Fig. 5A is an exception, and the case shown in Fig. 5B is the case in most cases, but this also does not have a large effect on the auditory sense. Computational methods for simulating waveform patterns that can be applied to systems such as the present invention include:
Various methods have been proposed. That is, a polygonal line approximation simulation, a quadratic function approximation simulation, etc. These selections are arbitrary and must be determined in consideration of waveform pattern simulation efficiency, microprocessor processing speed, memory capacity, etc. Then, in the calculation routine block of the flowchart of FIG. 7, the calculation routine selected according to the above conditions may be used. Of course, the contents of the waveform data memory vary depending on which calculation routine is used. Also, the calculation routine can be changed depending on the key. That is, a square function approximation routine is used for keys having complex waveform patterns, and a broken line approximation routine is used for other keys. Now, the operation of the system will be explained with mutual reference to the system block of the present invention shown in FIG. 6 and the flowchart of a microprocessor simulation program applied to the present invention shown in FIG. First, when a key is pressed on the keyboard K1, a key signal is sent to the keyer circuit K3 via the priority circuit K2. From the keyer circuit, the note name code and attack pulse are sent to the line LKC corresponding to the pressed key.
and LKA, respectively. The note name code is sent to the input terminal of the CPU and the note name code latch circuit F3. Then, the note name code is latched to F3 by the attack pulse. F
3 has a function of continuing to send the note name code to the tone frequency address generation circuit F2 even after the key is released. That is, this is for calculating the waveform pattern of the decay section. The attack pulse is sent to the CPU's interrupt signal input terminal. This attack pulse places the microprocessor in an interrupt state. As an interrupt instruction,
If you install a program to execute a jump instruction to the START address, data processing corresponding to the previously pressed key will start as soon as a key is pressed, regardless of the state of the CPU. In this way, the microprocessor starts data processing according to the contents of the simulated program memory SPM, which stores a program having the flow shown in the flowchart of FIG. First, after clearing the register in the CPU for specifying the waveform memory address, waveform memory area A
is specified by a signal from the CPU's output line LMA. Next, preparations are made to read out waveform data corresponding to the note name of the pressed key from the waveform data memory WDM. In other words, from the note name code sent from LKC to the CPU, the waveform data memory
After creating the waveform data storage address corresponding to the note name on the WDM, set it in the waveform data address designation register inside the CPU. As an example, a case will be described in which a key corresponding to the musical tone waveform shown in FIG. 1 is pressed. The note name code of that key sets the waveform data address designation register to designate the address AWD1=0 of the waveform data memory WDM. Therefore, waveform data WD1-1 is first fetched to the CPU.
Next, calculation is started by a calculation routine based on the waveform data WD1-1 fetched from the waveform data memory WDM. When the calculation result is obtained, the address of the waveform memory MW is set on the line using the waveform memory address specification register in the CPU.
After outputting to LA1, the result is output from line LD. In the end, the waveform memory MW stores the calculation result output on the line LD at the address specified by the signal on the line LA1 when the gate G1 is open. When gate G1 is closed, gate G2 is open, and the address line of the waveform memory MW is connected to the output line LA2 of the musical tone frequency generation circuit F2.
It is read out at the musical tone frequency. After this, the addressing register of the waveform memory MW is increased by +1. Then, the process goes through loop Y1 to calculate the next amplitude value. In this way, the loop Y1 continues until the processing of the waveform data WD1-1 fetched from the waveform data memory WDM is completed. When the processing is finished, the flow FLW surrounded by the dotted line in Figure 7
Proceed to. At this point, part of the waveform pattern WD1
The amplitude value of a1a2 is calculated and stored in the waveform memory MW. Then, the judgment routines for FLW1 and FLW2 are all NO, and the process proceeds to Y2. Increase the register for addressing the waveform data memory WDM by +1. Then, through Y4, new waveform data is fetched. In other words, the waveform data at address 1
WD1-2 are fetched to the CPU. Similarly thereafter
The loop Y1 continues until the processing of WD1-2 is completed. And when the process is finished, the flow
Proceed to FLW. At this point, waveform pattern WD1
The amplitude values of parts a1a2 and a2a3 of are calculated and stored in the waveform memory MW. In this way, the amplitude values of a1a2 , a2a3 , a3a4 , etc. are calculated. By the way, the flow FLW is
It has a function to switch the designation of waveform memory areas A and B. That is, when storage of the calculation results in area A is completed, the readout area based on musical tone frequency is switched from B to A. When storage of the calculation results in area B is completed, the readout area based on musical tone frequency is switched from A to B. Also, at this time, the address designation register for the waveform memory is cleared. In both cases, the system waits for the generation of the waveform pattern switching clock, and when the output occurs, it proceeds to calculate the next waveform pattern. That is, returning to the previous example, the waveform data processing from WD1 to WD4 is completed, and the waveform pattern WD1 is
When storage in memory area A is completed, FLW
1 indicates YES and area A is specified, and the specified area A is held immediately after START, and the signal on the output line LA2 of the musical tone frequency address generation circuit F2 is used.
The waveform pattern WD1 is maintained to be read. During this time, when the output of the waveform pattern switching clock occurs, FLW3 becomes YES and returns to the initial state via Y2 and Y4. Thereafter, similarly, the waveform data WD2-1, WD2-
2. When WD2-3, WD2-4, and WD2-5 are processed and the storage of waveform pattern WD2 in area B is completed, FLW2 becomes YES, and the memory area designation changes from area A to area B. On the other hand, waveform pattern WD2 is read out from area B by the signal on output line LA2 of F2. Then, the addressing register for the waveform memory is cleared. During this time, when a waveform pattern switching clock occurs, FLW3 becomes YES, and loops Y2 and Y4
and returns to the initial state. The same applies below. Since the waveform pattern switching clock is synchronized with switching between memory areas A and B, by varying this frequency, the time interval at which the waveform pattern switches can be controlled. That is, the time interval of waveform pattern changes in the attack and decay portions can be controlled. In the present invention, the waveform pattern changes over time, and the attack and decay portions contain waveform data that also includes increases and decreases in amplitude. The partial waveform pattern switching clock generators AC and DC are for this purpose and are input to the CPU through lines LAC and LDC. As described above, the waveform pattern simulation of the attack portion continues, and when the CPU fetches the attack end data at address AAE=28, a steady state is entered. In other words, FLX1 becomes YES, and FLX
Wait at 3. When the pressed key is released, the decay pulse generated on line LKD causes FLX3 to
The last waveform pattern WD6 of the attack section continues to be read out until YES is obtained. Next, when the pressed key is released and the decay pulse arrives, FLX3
YES, and after switching the attack section waveform pattern switching clock to the decay section waveform pattern switching clock via Y3, the program returns via Y4 to fetch the decay section data from the waveform data memory again. In the case of the decay section, waveform memory areas A and B are used alternately in the same way as in the case of attack, and YES is determined in FLX2 by the decay end data of the address ADE=m placed at the end of the waveform data. After clearing the note code latch circuit F3 through the line LCF
HALT, which is a halted state of the CPU, settles down. Now, if another key is pressed while a certain key is being pressed, the priority circuit generates the key code of the subsequently pressed key and a new attack pulse. Then, a new note name code is latched in the note name code latch circuit F3, and an attack pulse is applied to the interrupt terminal, so that the arithmetic processing in progress is immediately stopped and the waveform arithmetic processing corresponding to the key pressed later is performed. Start. An example in which the data length is 8-bit parallel signal and the waveform memory MW is (8 nit x 64 words) x 2 is shown in FIG. 8, and its time chart is shown in FIG. 9. The key code corresponding to the pressed key generated from the keyer circuit K3 is latched in the note name code latch circuit F3, and based on this, the musical tone frequency address generation circuit F2 generates a waveform memory using the musical tone frequency of the pressed key.
A clock signal is created to read out the MW. This is obtained by dividing the output of the high frequency clock generator F1 based on the pitch name code.
It is expressed in the MFC shown in the figure. In this example, one cycle of the waveform pattern is sampled at 64 times, so
If the read musical tone frequency is taken as the frequency, clock signals of 64 frequencies are generated at the output of the MFC. This is
It is MFCO. This output is applied to the monostable multivibrator MM, which outputs MMO. The output pulse width of the MMO is adjusted to the time required to read the waveform memory MW. this
When MMO is "H", that is, at time RT, the waveform memory MW is kept in the READ state. At the same time, gate G2 opens and gate G1 closes, and the signal on line LMA specifying the memory area and MFCO
The address of the waveform memory MW is specified and read out in accordance with the output state LA2 of a counter consisting of flip-flops FF1 to FF6 that counts . On line LMA, area A is specified when an "L" signal is applied, and area B is specified when an "H" signal is applied. The contents of 64 words in each area are then scanned by the output of the counter.
When MMO is "L", that is, at time WT, gate G1 is open and gate G2 is closed, so the address of waveform memory MW is specified according to address signal LA1 from the CPU. Waveform memory MW is WRITE
Since the state is maintained, the data input terminal
Data input from the CPU through line LD can be written to the address specified by LA1. In Figure 9, 1 sample value calculation processing time
In LOOP1, the calculated data D1 is
The data is stored through line LD at address A1 specified through line LA1 by a register in the CPU. This is written during the WT time in the time range where A1 and D1 are output simultaneously. Next, data D2 calculated in LOOP2 is written to address A2 at the same WT time. The same applies below. In the end, according to the output state of the counter that counts MFC through LA2, the waveform memory MW read operation is performed during the RT time of the MMO, and its output is latched into the latch circuit LCH, and at the same time, it is output from the CPU through LA1 during the WT time. The data output through the LD is written into the waveform memory MW according to the address output. The output of the latch circuit LCH passes through a D-A converter DAC and an amplifier AMP, and then is emitted from a speaker SP. The first example is an application of other embodiments to Fig. 2A.
Shown in Figure 0. Figure 10 shows each waveform data.
The MSB is used to share duration data. That is, each time waveform data is read, the MSB of the data is extracted and held in a register in sequence. For example, in the case of WD1, this duration data register is [expression], and in the case of WD2, it is [expression]. On the other hand, a switching clock count register is provided to count the number of waveform pattern switching clocks generated, a routine is provided to compare the contents of both registers, and when the two match, the waveform pattern is switched. This is an example. A flowchart in this case is shown in FIG. The part surrounded by thick lines is the part that is required when this method is applied. The rest is the same as the flowchart in FIG. The system described above has waveform pattern durations tWD1, tWD2, tWD3... as shown in FIG.
... is switched at the output cycle of the waveform pattern switching clock generator, so its duration cannot be changed, but in this embodiment it is also possible to vary this. That is, waveform data memory
The WDM contains duration data information for counting the number of waveform pattern switching clocks generated, and based on this data, the CPU counts the number of waveform pattern switching clocks generated and controls the waveform pattern duration. ing. As described above, the present invention includes a microprocessor, simulated program memory, waveform data memory, waveform memory, clock generator, DA
The hardware consists of a converter, a keyboard, a priority circuit, a keyer circuit, etc., and forms a musical waveform based on waveform data in which the attack part and decay part of a musical tone are divided into a plurality of parts, a waveform data storage means, and the waveform data. From the waveform forming means, an attack portion of a musical tone, a steady portion for repeatedly reading out the final data of the attack portion of a musical tone, and a decay portion of a musical tone are calculated according to a key press signal, and are stored in a waveform memory. Since the tone waveform is read out from , it has the advantage of requiring much less memory capacity than a method that simply samples the amplitude value of the tone waveform from attack to decay, quantizes that value, and stores it as a digital signal. . Another great advantage is that the generation and addition of envelope waveforms can be omitted. Furthermore, since the waveform data reading start address of the waveform data memory is determined from the pitch name code and the waveform data is read by specifying the address of the waveform data memory, it is possible to change the tone color depending on the pitch range. Furthermore, since the attack final waveform is repeatedly read out based on the attack end data and the sound continues until the decay pulse that occurs when the pressed key is released, the memory can be greatly saved in this respect as well.

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

第1図はアタツク部の楽音波形図、第2図イ,
ロは波形データ、第3図イ,ロは波形メモリの構
成及び書込み方法の説明図、第4図及び第5図は
第3図の書込み方法で読出された楽音波形例図、
第6図は本発明によるシステムブロツク図、第7
図は第6図におけるシミユレートプログラムメモ
リのフローチヤート、第8図及び第9図は本発明
の主要となる部分の具体例回路図及びそのタイム
チヤート、第10図及び第11図は波形データ及
びこの場合におけるシミユレートプログラムのフ
ローチヤートである。 K1……鍵盤、K2……優先回路、K3……キ
ーヤー回路、AC……アタツク部波形パターン切
換クロツク発生器、DC……デイケイ部波形パタ
ーン切換クロツク発生器、CPU……マイクロ・
プロセツサ、SPM……シミユレートプログラム
メモリ、WDM……波形データメモリ、CPUC…
…CPUクロツク発生器、F1……高周波クロツ
ク発生器、F2……楽音周波数アドレス発生回
路、F3……音名コードラツチ回路、G1,G2
……ゲート回路、MW……波形メモリ、LCH…
…ラツチ回路、DAC……D−A変換器。
Figure 1 is a musical sound waveform diagram of the attack section, Figure 2 A,
B is waveform data, FIGS. 3A and 3B are explanatory diagrams of the configuration of the waveform memory and the writing method, FIGS. 4 and 5 are examples of musical sound waveforms read by the writing method shown in FIG. 3,
FIG. 6 is a system block diagram according to the present invention, and FIG.
The figure is a flowchart of the simulated program memory in Figure 6, Figures 8 and 9 are specific example circuit diagrams of the main parts of the present invention and their time charts, and Figures 10 and 11 are waveform data. and a flowchart of a simulated program in this case. K1...keyboard, K2...priority circuit, K3...keyer circuit, AC...attack section waveform pattern switching clock generator, DC...decay section waveform pattern switching clock generator, CPU...microphone
Processor, SPM...simulated program memory, WDM...waveform data memory, CPUC...
...CPU clock generator, F1...High frequency clock generator, F2...Musical tone frequency address generation circuit, F3...Tone name code latch circuit, G1, G2
...Gate circuit, MW...Waveform memory, LCH...
...Latch circuit, DAC...D-A converter.

Claims (1)

【特許請求の範囲】 1 楽音の発生から終了までを複数の部分に区分
し、区分された部分毎にエンベロープの付与され
た波形データを記憶する波形データ記憶手段と、 前記区分された部分毎の持続時間に対応する持
続時間情報を記憶する持続時間情報記憶手段と、 前記波形データ記憶手段からの前記区分された
部分毎の波形データに基づいて楽音波形を形成す
る楽音波形形成手段と、 発生される楽音の発生開始からの時間経過によ
つて、前記波形データ記憶手段から波形データを
前記区分された部分毎順次読出し、前記楽音波形
形成手段に供給すると共に、前記持続時間情報記
憶手段から持続時間情報を前記区分された部分毎
順次読出す第1の制御手段と、 該第1の制御手段から読出された持続時間情報
に基づき前記第1の制御手段から読出すべき波形
データを次の区分された部分の波形データに切換
えることにより前記区分された部分毎の持続時間
を制御する第2の制御手段と を具え、 該第2の制御手段は前記区分された部分のうち
アタツク部分に関する部分毎の波形データを切換
えるためのアタツク波形切換信号を発生するアタ
ツク切換信号発生手段と、 前記区分された部分のうちデイケイ部分に関す
る部分毎の波形データを切換えるためのデイケイ
波形切換信号を発生するデイケイ切換信号発生手
段と をさらに具え、 前記区分された部分毎の持続時間をアタツク部
分及びデイケイ部分のそれぞれに応じて制御する
ことにより楽音を発生させることを特徴とする電
子楽器。
[Scope of Claims] 1. Waveform data storage means that divides a musical tone from generation to end into a plurality of parts, and stores waveform data to which an envelope is added for each divided part; a duration information storage means for storing duration information corresponding to a duration time; a tone waveform forming means for forming a tone waveform based on the waveform data for each of the segmented parts from the waveform data storage means; As time elapses from the start of generation of musical tones, the waveform data is sequentially read out from the waveform data storage means for each of the divided parts and supplied to the musical sound waveform forming means, and the duration information is also read out from the duration information storage means. a first control means for sequentially reading out information for each section; and a first control means for sequentially reading out information for each section; a second control means for controlling the duration of each of the divided parts by switching to the waveform data of the divided part, and the second control means controls the duration of each of the divided parts regarding the attack part. attack switching signal generating means for generating an attack waveform switching signal for switching waveform data; and a decay switching signal generating means for generating a decay waveform switching signal for switching the waveform data for each part related to the decay part among the divided parts. An electronic musical instrument, further comprising: means for generating musical tones by controlling the duration of each of the divided sections according to each of the attack section and the decay section.
JP61088101A 1986-04-18 1986-04-18 electronic musical instruments Granted JPS6236697A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP61088101A JPS6236697A (en) 1986-04-18 1986-04-18 electronic musical instruments

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP61088101A JPS6236697A (en) 1986-04-18 1986-04-18 electronic musical instruments

Publications (2)

Publication Number Publication Date
JPS6236697A JPS6236697A (en) 1987-02-17
JPH0261040B2 true JPH0261040B2 (en) 1990-12-18

Family

ID=13933476

Family Applications (1)

Application Number Title Priority Date Filing Date
JP61088101A Granted JPS6236697A (en) 1986-04-18 1986-04-18 electronic musical instruments

Country Status (1)

Country Link
JP (1) JPS6236697A (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2991436B2 (en) * 1988-12-20 1999-12-20 ヤマハ株式会社 Music signal generator

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6134160B2 (en) * 1974-12-27 1986-08-06 Kawai Musical Instr Mfg Co

Also Published As

Publication number Publication date
JPS6236697A (en) 1987-02-17

Similar Documents

Publication Publication Date Title
US3639913A (en) Method and apparatus for addressing a memory at selectively controlled rates
Buxton et al. The use of hierarchy and instance in a data structure for computer music
US6310279B1 (en) Device and method for generating a picture and/or tone on the basis of detection of a physical event from performance information
US7259315B2 (en) Waveform production method and apparatus
JPS6134160B2 (en)
JPS60162297A (en) Dynamic reproduction method and apparatus for transient and stationary voice in electronic musical instrument
US4682526A (en) Accompaniment note selection method
JPH11126070A (en) Musical sound generating method
US4719834A (en) Enhanced characteristics musical instrument
US7396992B2 (en) Tone synthesis apparatus and method
JPH08160961A (en) Sound source device
JPH0820872B2 (en) Waveform generator
JPH0261040B2 (en)
Simon et al. Audio analogies: Creating new music from an existing performance by concatenative synthesis
EP1653441B1 (en) Tone rendition style determination apparatus and method
JPH07121181A (en) Voice information processing device
US4630517A (en) Sharing sound-producing channels in an accompaniment-type musical instrument
JPH0149959B2 (en)
JP3409642B2 (en) Automatic performance device, automatic performance data processing method, and electronic information storage medium
JP3635361B2 (en) Electronic musical instrument sound material processing equipment
Quarmby et al. Implementation of a parallel-formant speech synthesiser using a single-chip programmable signal processor
JP2585519B2 (en) Musical sound wave data generator
JP4685226B2 (en) Automatic performance device for waveform playback
Kaper et al. Dissco: A unified approach to sound synthesis and composition
JP3225796B2 (en) Signal processing device and tone processing device