JP2727931B2 - 波形メモリ音源 - Google Patents

波形メモリ音源

Info

Publication number
JP2727931B2
JP2727931B2 JP5277673A JP27767393A JP2727931B2 JP 2727931 B2 JP2727931 B2 JP 2727931B2 JP 5277673 A JP5277673 A JP 5277673A JP 27767393 A JP27767393 A JP 27767393A JP 2727931 B2 JP2727931 B2 JP 2727931B2
Authority
JP
Japan
Prior art keywords
information
data
waveform memory
output
circuit
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 - Fee Related
Application number
JP5277673A
Other languages
English (en)
Other versions
JPH07110688A (ja
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.)
Yamaha Corp
Original Assignee
Yamaha Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Yamaha Corp filed Critical Yamaha Corp
Priority to JP5277673A priority Critical patent/JP2727931B2/ja
Publication of JPH07110688A publication Critical patent/JPH07110688A/ja
Application granted granted Critical
Publication of JP2727931B2 publication Critical patent/JP2727931B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、波形メモリに記憶され
た情報を自動的に読み出して、制御レジスタに自動的に
設定する波形メモリ音源に関する。
【0002】
【従来の技術】従来、波形メモリに、楽音波形だけでは
なく、楽音信号を生成するために必要なエンベロープの
傾きの変化率やレベルまたは音色等のパラメータが記憶
され、発音するべき楽音が指定されると、その楽音波形
とともにその楽音に対応したパラメータを読み出して所
定のレジスタに自動的に設定(オートロード)する波形
メモリ音源が提案されている。また、一般に、波形メモ
リ音源は、1つの回路で複数の音を発生させることがで
きるように時分割で各回路を使用し、その時分割された
複数のタイムスロットに演奏データを割り当てるように
構成されている。そして、前記パラメータもこの各タイ
ムスロットに割り当てられたデータに基づいて読み出さ
れた後に、所定のバッファに取り込まれ、その取り込ま
れたパラメータが発音のためのレジスタに格納され、こ
れとは別に波形メモリから読み出された楽音波形ととも
に楽音信号が形成される。
【0003】
【発明が解決しようとする課題】しかしながら、上記従
来の波形メモリでは、時分割チャンネルの各タイムスロ
ットに割り当てられたデータに対応して設定されるパラ
メータは1アドレス分のみであったために、時分割チャ
ネルの1チャネル動作時間内に1回しかアクセスできな
い。このため、パラメータを読み出す際、1つの楽音信
号を生成するのに多数個のパラメータを用いる場合には
これらのパラメータを読み込む時間が増大し、その結
果、楽音の発音に遅れが生ずるという問題があった。
【0004】本発明は、上記問題に鑑みてなされたもの
で、楽音の発音に遅れが生ずることなく楽音信号を生成
することが可能な波形メモリ音源を提供することを目的
とする。
【0005】
【課題を解決するための手段】上記目的を達成するため
本発明は、複数時分割チャンネル動作で楽音を発生する
波形メモリ音源において、楽音波形を記憶するととも
に、楽音信号を生成するために必要な情報を記憶する波
形メモリと、前記情報を自動読み込みするべき時分割チ
ャンネルと自動読み込みされる情報の波形メモリ中の位
置とを指示する指示手段と、該指示された時分割チャン
ネルの1チャンネル動作時間内に、該指示された波形メ
モリ中の情報の位置を複数回アクセスして、複数個の情
報を読み出す情報読み出し手段と、該読み出された複数
個の情報を各々対応する制御レジスタに分配する情報分
配手段とを有することを特徴とする。
【0006】好ましくは、前記情報読み出し手段は、情
報の読み出しを所定の速度で行い、読み出された情報を
バッファに格納し、前記情報分配手段は、前記バッファ
に格納された情報を前記所定の速度より遅い速度で、前
記対応する制御レジスタに分配することを特徴とする。
【0007】さらに好ましくは、前記指示手段は、前記
自動読み込みされる情報の波形メモリ中の位置を、前記
制御レジスタの一部に格納されたデータを用いて指示す
ることを特徴とする。
【0008】また、楽音波形を記憶するとともに、楽音
信号を生成するために必要な情報を記憶する波形メモリ
と、自動読み込みされる情報を格納する第1の制御レジ
スタと、自動読み込みされる情報以外の情報を格納する
第2の制御レジスタと、前記波形メモリに記憶された情
報を自動読み込みし、該情報を前記第1の制御レジスタ
に自動設定する自動読み込み手段と、前記第2の制御レ
ジスタに自動読み込みされる情報以外の情報を書き込む
書き込み手段とを有し、前記自動読み込み手段による情
報の自動読み込み動作中にも、前記書き込み手段により
第2の制御レジスタに情報を書き込み可能としたことを
特徴とする。
【0009】
【作用】本発明の構成に依れば、指示手段により自動読
み込みするべき時分割チャンネルと自動読み込みされる
情報の波形メモリ中の位置とが指示されると、その時分
割チャンネルの1チャンネル動作時間内に、波形メモリ
中の指示された位置の情報が、情報読み出し手段により
複数回アクセスされて複数個の情報として読み出され、
その複数個の情報が、情報分配手段によりそれぞれ対応
する制御レジスタに分配される。これにより、オートロ
ードに要する時間を短縮することができ、押鍵に対する
発音の時間遅れを減少させることが可能となる 好ましくは、情報読み出し手段により、所定の速度で情
報の読み出しが行われた後にその読み出された情報がバ
ッファに格納され、情報分配手段により、バッファに格
納された情報がその所定の速度より遅い速度で対応する
レジスタに分配される。従って、制御レジスタに分配す
るためのデータ転送速度を高速化する必要がなくなり、
回路構成を簡単化し、コストの増加を抑制することがで
きる。
【0010】さらに好ましくは、指示手段により、自動
読み込みされる情報の波形メモリ中の位置が、制御レジ
スタの一部に格納されたデータを用いて指示される。従
って、レジスタの容量を減少させることができる。
【0011】また、自動読み込み手段により波形メモリ
に記憶された情報が自動読み込みされ、その情報が第1
の制御レジスタに自動設定されているときにも、書き込
み手段により自動読み込みされる情報以外の情報が第2
の制御レジスタ書き込まれる。これにより、全情報のレ
ジスタへの書き込みを高速化させることが可能になる。
【0012】
【実施例】以下、本発明の実施例を図面に基づき詳細に
説明する。
【0013】図1は、本発明に係る波形メモリ音源を備
えた電子楽器の一実施例の概略構成を示すブロック図で
ある。
【0014】同図において、本実施例の電子楽器は、楽
音波形と楽音波形を生成するために必要な情報であるパ
ラメータとを記憶した波形メモリ17を内蔵する音源1
と、楽音の音高を指定するための鍵盤2と、電子楽器全
体の制御を司るCPU3と、CPU3が実行するプログ
ラムやテーブルデータ等を記憶するROM4と、演算結
果や各種制御情報を一時的に記憶するRAM5と、音色
等の各種制御情報を入力するためのパネルスイッチ6
と、各種情報を表示する表示回路7と、音源1から出力
される楽音信号を楽音に変換するサウンドシステム8と
により構成されている。これらの各要素1〜7はバス9
を介して相互に接続され、音源1の楽音信号出力はサウ
ンドシステム8に供給される。
【0015】また、音源1は次のように構成されてい
る。
【0016】バス9には、後述する制御レジスタ群を含
む音源I/O10が接続され、該音源I/O10には、
波形メモリ17に記憶されたデータを読み出す波形発生
部11、波形発生部11に接続され、その出力信号をフ
ィルタリングするデジタルフィルタ12、デジタルフィ
ルタ12に接続され、その出力信号にエンベロープを付
与するエンベロープ付与回路13、該エンベロープ付与
回路13にチャンネル累算器14を介して接続され、該
チャンネル累算器14により時分割チャンネル分(本実
施例では32チャンネル)累算されたエンベロープ付与
回路13の出力に装飾音を付与するリバーブ発生回路1
5が接続されている。そして、リバーブ発生回路15
は、該回路15から出力されたデジタル楽音信号をアナ
ログ楽音信号に変換するDAC(Digital-to-Analog Co
nverter)16に接続され、前記波形発生部11には前
記波形メモリ17が接続されている。
【0017】図2は、図1の波形メモリ17のメモリマ
ップの一例を示す図である。
【0018】前述したように、波形メモリ17には楽音
波形とともに各種パラメータが記憶され、楽音を生成す
る際には、生成するべき楽音波形に対応するパラメータ
が波形メモリ17から読み出され、制御レジスタ群にオ
ートロードされるように構成されている。
【0019】同図に示すように、波形メモリ17は、オ
ートロードされるパラメータを記憶する領域ALDと、
楽音波形を記憶する領域W1,W2,… とにより構成
され、領域ALDは、互いに異なったパラメータ値を記
憶する領域ALD1,ALD2,… から構成され、さ
らに、各領域ALDn(n=1,2,…)は、種類、個
数、配列およびデータ長が全て同一であるパラメータか
ら構成されている。以下、図示されている領域ALD2
のパラメータを例に挙げて、その詳細な構成を説明す
る。
【0020】領域ALD2は、エンベロープの傾きの変
化率を示すパラメータ群EGR、エンベロープのレベル
を示すパラメータ群EGL、読出すべき楽音波形が波形
メモリ17のどの位置(アドレス)にあるかを示すパラ
メータ群WAから構成されている。
【0021】一般に、エンベロープは、ノートオンが検
出されると、最低レベルから最高レベルまで所定の傾き
の変化率(AR)で増加する区間と、最高レベルから第
1の傾きの変化率(D1R)で減少する区間と、続い
て、第1の傾きの変化率より小さい第2の傾きの変化率
(D2R)で減少する区間と、最後に、所定の傾きの変
化率(RR)で最低レベルまで減少する区間とから成る
ので、前記パラメータ群EGRは、パラメータAR,D
1R,D2R,RRから構成されている。そして、パラ
メータ群EGLは、パラメータD1R,D2Rの傾きを
有する2直線のそれぞれの終点のレベルを示すパラメー
タD1L,D2Lから構成されている。
【0022】また、一般に、楽音波形は、メモリ容量を
節約するために、一度だけ読み出される部分(アタック
部)と繰り返し読み出される部分(ループ部)とを波形
メモリ17に記憶するので、パラメータ群WAは、ルー
プスタートアドレスLSA1〜LSA3(以下、これら
をまとめて「ループスタートアドレスLSA」ともい
う)、ループエンドアドレスLEA1〜LEA3(以
下、これらをまとめて「ループエンドアドレスLEA」
ともいう)、繰り返し読みを行うときに生成波形のつな
がりを良くするために必要なループアドレスの小数部L
AF、アタック部のスタートアドレスWSA1〜WSA
3(以下、これらをまとめて「スタートアドレスWS
A」ともいう)から構成される。
【0023】以上説明した各パラメータのデータ長は8
ビットであるが、アドレスデータLSA1〜LSA3,
LEA1〜LEA3,WSA1〜WSA3は、3バイト
で1アドレスを示している。これは、波形メモリ17の
アドレス空間が広いために、楽音波形W1,W2,…の
位置を指定するためには3バイト分のアドレスデータが
必要だからである。なお、後述するが、波形メモリ17
に記憶されたデータの読み出しは、2バイト単位で行
う。
【0024】図3は、図1の音源I/O10の詳細な構
成を示すブロック図である。
【0025】前記バス9を構成するアドレスバスおよび
データバスは、それぞれアドレスラッチ回路21および
データラッチ回路22に接続されている。ここで、アド
レスラッチ回路21およびデータラッチ回路22にデー
タをラッチするためのタイミング信号はCPU3により
生成され、各回路21,22のラッチ信号入力端子(図
示せず)に供給されている。さらに、制御レジスタ群
(本実施例ではレジスタ群A23およびレジスタ群B2
4から構成される)は、8ビットのデータ長から成る6
4個のレジスタから構成されているために、アドレスバ
スは6本(ビット)のデータ線から構成され、データバ
スは8本(ビット)のデータ線から構成されている。
【0026】図4は、制御レジスタ群のメモリマップを
示す図であり、アドレス0からアドレス15まではレジ
スタ群B24が割り当てられており、アドレス16から
アドレス63まではレジスタ群A23が割り当てられて
いる。ここで、レジスタ群A23は、ピッチデータ、ノ
ートオンデータ、後述するLFOデータ、前記デジタル
フィルタ12のフィルタ係数を決定するためのフィルタ
データ、前記リバーブ発生回路15が付与する装飾音を
決定するためのリバーブデータ等を格納し、一方、レジ
スタ群B24は、前記パラメータを格納する。そして、
レジスタ群A23は、後述するチャンネルカウンタ29
によって生成されるタイミングに従って、レジスタに格
納されたピッチデータ、ノートオンデータ、LFOデー
タを前記波形発生部11に出力し、フィルタデータをデ
ジタルフィルタ12に出力し、リバーブデータをリバー
ブ発生回路15に出力する。さらに、レジスタ群B24
も、チャンネルカウンタ29によって生成されるタイミ
ングに従って、パラメータ群WAのパラメータ(WS
A,LSA,LEA,LAF)を波形発生部11に出力
し、パラメータ群EGR,EGLのパラメータ(AR,
D1R,D2R,RR,D1L,D2L)を前記エンベ
ロープ付与回路13に出力する。
【0027】なお、レジスタ群A23には、前記CPU
3によって各種データがロードされ、レジスタ群B24
には、CPU3または後述するオートロード回路33の
どちらか一方によって前記パラメータがロードされる。
また、レジスタ群の各アドレスは時分割チャンネル分あ
り、図4のメモリマップは、その内の1チャンネル分の
メモリマップのみを図示している。
【0028】図3に戻り、アドレスラッチ回路21の出
力は、デコード回路25に供給されるとともに、変換回
路26およびセレクタ28の入力端子0に供給される。
そして、デコード回路25の出力(レジスタ群A23の
レジスタを全て選択できるように、48本のデータ線か
ら成る)はレジスタ群A23に供給されるとともに、そ
の出力の内の1ビット(本)が後述するANDゲート3
2の一入力端子および後述するチャンネルラッチ回路3
0の入力端子Lに供給され、さらに、変換回路26の出
力はセレクタ27の入力端子Aに供給される。ここで、
デコード回路25は、前記48本のデータ線の内、アド
レスラッチ回路21の出力に応じて指定される1本のデ
ータ線に書き込みパルスを供給する回路であり、変換回
路26は、アドレスラッチ回路21の出力と後述するチ
ャンネルラッチ回路30からのチャンネル出力とに基づ
いて決定される時分割チャンネルの書き込み位置(チャ
ンネル)を出力する回路である。
【0029】セレクタ27の入力端子Bには時分割チャ
ンネルのチャンネル番号を1ずつ順次カウントするチャ
ンネルカウンタ29の出力が供給され、セレクタ27の
出力はレジスタ群A23に供給される。そして、セレク
タ27のセレクト端子Sには図示しないクロック供給源
からクロックパルスφRWが供給され、このパルスφRWに
よりセレクタ27はセレクト端子A,Bに供給される信
号を交互に選択してレジスタ群A23に出力する。即
ち、セレクタ27からの出力に応じて、レジスタ群A2
3は、レジスタへの書き込みとレジスタからの読み出し
とを時分割で交互に行っている。
【0030】また、前記データラッチ回路22の出力
は、レジスタ群A23に供給されるとともに、前記チャ
ンネルラッチ回路30のデータ入力端子Dおよびセレク
タ31の入力端子0に供給される。さらに、データラッ
チ回路22からの出力の内、最上位ビット出力msbは
ANDゲート32の他の入力端子に供給される。AND
ゲート32の出力は、オートロード回路33(詳細は後
述する)の入力端子SSに供給される。このANDゲー
ト32は、オートロードを開始させるためのものであ
り、前記デコード回路25からの出力wpxおよび前記
データラッチ回路22からの出力msbがともに“1”
のときにANDゲート32の出力が“1”となって、オ
ートロード回路33に対してオートロードの開始が指示
される。
【0031】また、セレクタ28の入力端子1にはオー
トロード回路33のアドレス出力端子Aからアドレス信
号が供給され、セレクタ28のセレクト端子Sにはオー
トロード回路33の出力端子B1から出力信号busy
が供給される。出力信号busyは、オートロード回路
33がオートロード動作中であることを表わす信号であ
る。上述したオートロード開始の指示に応じて出力信号
busyはハイレベル(=1)になり、オートロード回
路33は波形メモリ17から領域ALD中の指示された
パラメータを読出し、レジスタ群Bに順次設定する。該
オートロードの動作が終了するのに応じて出力信号bu
syはロウレベル(=0)に戻る。セレクタ28は、出
力信号busyがハイレベルのときに入力端子1に供給
された信号を出力し、ロウレベルのときに入力端子0に
供給された信号を出力する。さらに、前記セレクタ31
の入力端子1にはオートロード回路33のデータ出力端
子Dからデータが供給され、セレクタ31のセレクト端
子Sにはオートロード回路33の出力端子B1から出力
信号busyが供給される。この出力信号busyによ
るセレクタ31の動作は、前記セレクタ28の動作と同
じである。
【0032】次に、レジスタ群B24は、レジスタ群A
23と同様に8ビットデータ長の複数(本実施例では、
16個)のレジスタから構成されるが、レジスタ群A2
3の各レジスタには、前述したようにCPU3のみによ
って各種データが設定されるのに対して、レジスタ群B
24の各レジスタには、CPU3またはオートロード回
路33のどちらか一方によって各種データが設定される
点のみが異なっている。したがって、レジスタ群B24
に接続される回路34〜36の構成および作用は、前述
した回路25〜27と同一であるために、その説明を省
略する。なお、オートロード回路33によりレジスタ群
B24の各レジスタに各種データを設定する制御は、前
記出力信号busyにより行われる。
【0033】変換回路35にはチャンネルラッチ回路3
7の出力が供給され、チャンネルラッチ回路37の入力
端子Dには前記チャンネルラッチ回路30の出力が供給
され、さらにチャンネルラッチ回路37の入力端子Lに
は前記出力信号busyが供給される。この出力信号b
usyの立ち上がりで、チャンネルラッチ回路30から
の出力がラッチされ、次に出力信号busyが立ち上が
るまでラッチされたデータが保持され、変換回路35に
出力される。
【0034】チャンネルラッチ回路37に出力信号bu
syの立上がり時のチャンネル出力がラッチされるた
め、オートロード動作中においてチャンネルラッチ回路
30のラッチ内容を変更しても、オートロード動作に影
響を与えない。したがって、レジスタ群A23について
はオートロード動作中もCPU3がアドレスラッチ回路
21およびデータラッチ回路22を利用して書込みを行
うことができる。
【0035】チャンネルラッチ回路37の出力は2つに
分岐され、一方は、前述したように変換回路35に供給
され、他方は、比較回路38の一入力端子に供給され
る。比較回路38の他の入力端子には前記チャンネルカ
ウンタ29の出力が供給され、比較回路38の出力はオ
ートロード回路33の入力端子EQに供給される。比較
回路38は、チャンネルラッチ回路37から出力された
時分割チャンネルのチャンネル番号とチャンネルカウン
タ29から出力されたチャンネル番号とを比較し、一致
したときにハイレベル出力をオートロード回路33に出
力する。オートロード回路33は、このハイレベル出力
を検出すると、現在の時分割チャンネルがオートロード
のためのチャンネルであることを示す信号ALCTおよ
び後述する信号SPを出力する。
【0036】図5は、図1の波形発生部11の詳細な構
成を示すブロック図である。
【0037】本実施例の音源1は、生成しようとする波
形の周波数と無関係に常に一定の周波数でサンプリング
することにより波形を生成する、いわゆるピッチ非同期
型の音源を想定しているため、楽音波形を生成する際に
補間を必要とする。ここでは、4点補間により楽音波形
を生成する音源を例に挙げて説明するが、4点補間に限
るものではなく、2点補間、8点補間等他の補間方式を
用いてもよい。
【0038】同図において、LFO(Low Frequency Os
cillator)41には、前記レジスタ群A23から出力さ
れる、LFO41を制御して所望の周波数信号を出力す
るためのLFOデータが供給され、このLFOデータに
基づいて出力された周波数信号がFナンバ発生器42に
供給される。Fナンバ発生器42には、さらに、レジス
タ群A23からのピッチデータおよび前記オートロード
回路33からの信号ALCTも供給される。Fナンバ発
生器42は、オートロード処理がなされているときに
は、前記信号ALCT(このとき、信号ALCTはハイ
レベル)により値“4”を出力し、オートロード処理が
なされていないときには、LFO41からの出力および
ピッチデータに応じた出力値を出力する。
【0039】Fナンバ発生器42からの出力はアドレス
カウンタ43に供給され、アドレスカウンタ43には、
ORゲート44の出力および前記レジスタ群B24から
の出力(WSA,LPS,LPE,LAF)が供給され
る。そして、ORゲート44の2つの入力端子には、レ
ジスタ群A23からのノートオンデータ(パルス)およ
びオートロード回路33からの出力SPが供給される。
ノートオンパルスまたは信号SPのどちらかの信号がハ
イレベルになると、ORゲート44からハイレベルが出
力され、このハイレベル出力によって、アドレスカウン
タ43には初期値、即ちスタートアドレスWSAがロー
ドされるように構成され、まず、アドレスカウンタ43
からその初期値が出力される。その後、アドレスカウン
タ43は、この初期値にFナンバ発生器42からの出力
値を加算し、前記入力された信号LPS,LPE,LA
Fに基づいてその加算結果を適宜修正して出力する。ア
ドレスカウンタ43の出力するアドレス値は、スタート
アドレスWSAよりスタートし、供給されるFナンバの
値に応じたレートで、信号LPE及びLAFにより示さ
れるループエンドアドレスまで増加した後、信号LPS
により示されるループスタートまで戻り、再びFナンバ
に応じたレートで増加し、以後、該ループエンドアドレ
スまでの増加と該ループスタートアドレスへの戻りを繰
返す。
【0040】前述したように、本実施例ではピッチ非同
期型の音源を想定しているため、Fナンバ発生器42の
出力は一般に実数値になり、この実数の内、整数部が加
算器45の一入力端子に供給され、小数部が加算器46
の一入力端子に供給される。加算器45,46の他の入
力端子には補助カウンタ47の出力が供給される。補助
カウンタ47は、4点補間のために0〜3の値を出力
し、この出力値が、加算器45,46により、それぞれ
前記整数部および小数部と加算され、それぞれ波形メモ
リ17のアドレスデータおよび補間係数メモリ48のア
ドレスデータとなって、波形メモリ17および補間係数
メモリ48に供給される。波形メモリ17の出力は、ゲ
ート49に供給されるとともに、前述したようにオート
ロード回路33に供給される。ゲート49には前記オー
トロード回路33からの出力信号ALCTが反転されて
供給され、ゲート49は、信号ALCTがハイレベルの
とき、即ちオートロード処理が行われているときには、
波形メモリ17から供給された信号の出力を停止し、信
号ALCTがロウレベルのときには波形メモリ17から
供給された信号の出力を行う。
【0041】ゲート49の出力は乗算器50の一入力端
子に供給され、乗算器50の他の入力端子には前記補間
係数メモリ48の出力が供給される。そして、乗算器5
0には、その出力である4個の補間データを累算するた
めの補間累算器51が接続され、補間累算器51には図
1のデジタルフィルタ12が接続されている。
【0042】即ち、オートロード処理が指定される(信
号SPが立ち上がる)と、アドレスカウンタ43から読
出すべきパラメータのアドレスがロードされ、そのアド
レス(このとき、アドレス値は必ず整数)が、加算器4
5を介して補助カウンタ47からの出力値0〜3と順に
加算され、その加算結果が波形メモリ17に出力され
る。波形メモリ17は、この加算結果(アドレス)によ
り指定された記憶内容を順に出力し、この4個の出力結
果がオートロード回路33に供給される。次に、続いて
読出すべきパラメータがあるときには、Fナンバ発生器
42から“4”が出力され、ロードされたアドレスに
“4”が加算された値が、アドレスカウンタ43から出
力され、その後の処理は前述のとおりである。
【0043】一方、オートロード処理ではなく、ノート
オンが指定されると、アドレスカウンタ43から読出す
べき波形のアドレスがロードされ、そのアドレス(この
とき、アドレス値は一般に実数)の整数部が加算器45
を介して前述のように補助カウンタ47の出力値と加算
され、小数部が加算器46を介して補助カウンタ47の
出力値と加算される。そして、波形メモリ17から読み
出された4個の波形データが、乗算器50を介して、そ
れぞれ補間係数メモリ48から読み出された4個の補間
係数と乗算され、その4個の乗算結果が補間累算器51
により累算され、その累算結果がデジタルフィルタ12
に出力される。
【0044】図6は、図3のオートロード回路33の詳
細な構成を示すブロック図である。オートロード回路3
3の端子SSに入力された信号(以下、「信号SS」と
いう)は、フラグ発生回路61のセット端子STに供給
され、フラグ発生回路61のリセット端子RSには半加
算器62のキャリー出力端子Coからの出力が供給され
る。ここで、フラグ発生回路61は、セット端子STに
ハイレベル信号が入力されるとセットされたフラグ(ハ
イレベル出力)を出力し、リセット端子RSにハイレベ
ル信号が入力されるとリセットされたフラグ(ロウレベ
ル出力)を出力する回路である。フラグ発生回路61の
出力は、ANDゲート63の一入力端子に供給されると
ともに、図3で説明した出力信号busyとなる。ま
た、ANDゲート63の他の入力端子には、オートロー
ド回路33の端子EQに入力された信号(以下、「信号
EQ」という)が入力される。そして、ANDゲート6
3の出力は、フラグ発生回路64のセット端子STに供
給されるとともに、図3で説明した信号ALCTおよび
4個の取り込みパルスを発生するタイミング発生回路6
5に供給される。
【0045】フラグ発生回路64のリセット端子RSに
は検出回路66の出力が供給され、フラグ発生回路64
の出力は、前記半加算器62のキャリー入力端子Ciに
供給される。ここで、検出回路66は、1チャンネル分
の4アクセスで、波形メモリ17から読み出された4個
の記憶データが8個のパラメータに分離されて、図3の
レジスタ群B24の対応するレジスタに取り込まれたこ
とを検出したときに、出力端子YESからハイレベル信
号をする回路である。このハイレベル信号により、フラ
グ発生回路64はリセットされ(F2=“0”)、次の
同一チャンネルタイミングで残りの4データが読まれる
まで待機状態に入る。
【0046】半加算器62にはゲート67の出力が供給
され、ゲート67の制御端子には前記信号SSが反転さ
れて供給される。半加算器62は、このゲート67から
の出力とキャリー入力端子Ciに入力されたフラグ発生
回路64のフラグの値とを加算し、その加算結果を遅延
回路68に出力する。遅延回路68の出力は、前記ゲー
ト67に供給されて閉ループを形成するとともに、前記
検出回路66、読出し回路69、図3で説明した信号S
Pを発生するアドレスロード信号発生回路70に供給さ
れ、さらに、“00”を上位2ビットに付加して6ビッ
トにされ、図3のセレクタ28の入力端子1に供給され
る。
【0047】ここで、読出し回路69は、前記タイミン
グ発生回路65により発生された4個の取り込み信号に
応じて波形メモリ17から読み出された記憶データを、
前記レジスタ群B24の対応するレジスタに取り込むた
めのパルスのタイミングを制御する回路であり、この読
出し回路69は、遅延回路68からのカウント値が偶数
になったときに1パルス出力するように構成され、その
出力をORゲート71の一入力端子に供給する。また、
アドレスロード信号発生回路70には前記信号EQが供
給され、アドレスロード信号発生回路70は、前記供給
された遅延回路68からの出力が“0000B”であ
り、且つ信号EQがハイレベルのときに信号SPを出力
(ハイレベル)する。ここで、“B”は、その前の数字
が二進数であることを示している。さらに、ORゲート
71の他の入力端子には、前記タイミング発生回路65
の出力が供給され、ORゲート71の出力は送りパルス
発生回路72に供給され、送りパルス発生回路72は、
このORゲート71から供給されたパルスに基づいて送
りパルスを生成し、この送りパルスをラッチ回路73〜
76に各々供給する。
【0048】ラッチ回路73の後段にはラッチ回路74
が接続され、その後段にはラッチ回路75が接続され、
その後段にはラッチ回路76が接続されている。さら
に、ラッチ回路73には波形メモリ17からの出力が供
給され、ラッチ回路76の16ビット出力は、上位8ビ
ットおよび下位8ビットに分離されて、セレクタ77の
2入力端子にそれぞれ供給される。セレクタ77は、図
示しないセレクト端子に供給されたセレクト信号に応じ
て、2つの8ビット入力の内の何れかを選択し、図3の
セレクタ31の入力端子1に供給する。
【0049】以下、以上のように構成された音源におい
て、図1のCPU3が実行する制御処理を、図7および
図8のフローチャートを参照して説明する。
【0050】図7は、メインルーチンの処理手順を示す
フローチャートである。
【0051】まず、ステップS1で各種パラメータの初
期設定を行い、次に、ステップS2で演奏者の押鍵に応
じた鍵処理を行い、ステップS3で図1のパネルスイッ
チ6の操作状態を検出するパネルスイッチ処理を行う。
【0052】図8は、ステップS2の鍵処理の一部であ
るキーオンイベント処理のサブルーチンの手順を示すフ
ローチャートである。本サブルーチンは、演奏者が押鍵
したときに1回だけ実行されるサブルーチンであり、本
サブルーチンの実行後に同一キーが押されていた場合に
は、本サブルーチンはスキップされる。
【0053】まず、演奏者が鍵盤2の鍵を押鍵すると、
図示しない検出回路により、その押鍵キー(イベントキ
ー)のノートコードおよびタッチの強さを示すタッチデ
ータが検出され、ステップS11で、CPU3は、その
ノートコードおよびタッチデータをそれぞれ図1のRA
M5の領域NCDおよび領域TDに格納する。以下、領
域NCDおよびTDに格納されたデータを、それぞれ
「ノートコードNCD」および「タッチデータTD」と
いう。
【0054】次に、ステップS12では、前記ステップ
S3のパネル処理により検出された音色に応じて、RO
M4に予め記憶された複数の音色データTCDn(n=
1,2,…)から音色データを選択する。以下、この選
択された音色データを「音色データTCD」という。
【0055】図9は、ROM4に記憶された複数の音色
データTCDnを説明するための図である。
【0056】同図に示すように、音色に対応した音色デ
ータTCDn(n=1,2,…)が複数個記憶され、各
音色データTCDnは同一構成を成している。以下、音
色データTCD1を例に挙げて、音色データTCD1を
構成する要素(データ)を詳細に説明する。
【0057】音色データTCD1は、3種類の変換デー
タD1〜D3と、タッチのレベル変化を時系列的に表す
タッチカーブデータD4と、前述した図5のLFO41
を制御するためのデータであるLFOデータD5と、前
述した図1のリバーブ発生回路15が付与する装飾音を
決定するリバーブデータD6、および、その他のデータ
D7から構成されている。そして、前記変換データD1
は、ノートコードNCDからオートロードアドレスAL
Aを得るためのデータである。変換データD2は、前記
タッチデータTDに基づいて、前記デジタルフィルタ1
2のフィルタ係数を決定するフィルタデータを得るため
のデータである。変換データD3は、ノートコードNC
Dに基づいて、前記Fナンバ発生器42に供給するピッ
チデータを得るためのデータである。
【0058】図8のフローチャートに戻り、ステップS
13では、この音色データTCDの変換データ(音色デ
ータTCD1では変換データD1に相当する)を用い
て、図2で説明した領域ALDn(n=1,2,…)の
内、前記ノートコードNCDに対応する領域ALDnの
先頭アドレス(同図中、ALAn(n=1,2,…)に
より示される)を決定し、RAM5の領域ALAに格納
する。以下、この領域ALAに格納されたアドレスを
「オートロードアドレスALA」という。
【0059】続くステップS14では、前記ノートコー
ドNCDを、時分割チャンネルの内の空いているチャン
ネルに発音割り当てし、その割り当てられたチャンネル
番号をRAM5の領域ASに格納する。以下、領域AS
に格納されたデータを「音源チャンネルAS」という。
さらに、ステップS15ではオートロードスタートフラ
グALSの値を判別し、フラグALSの値が“0”のと
きにはステップS16に進み、音源チャンネルASのス
タートアドレスWSAに前記オートロードアドレスAL
Aを書き込む。
【0060】即ち、図3において、データラッチ回路2
2に音源チャンネルASをラッチさせた後に、デコード
回路25からの出力wpxをハイレベルにするデータ
(以下、「データwpx]という)をアドレスラッチ回
路21にラッチさせると、この出力wpxによりチャン
ネルラッチ回路30に音源チャンネルASがラッチされ
る。次に、スタートアドレスWSAが格納されるレジス
タ(以下、「レジスタWSA」という)のアドレスをア
ドレスラッチ回路21にラッチさせると同時にオートロ
ードアドレスALAをデータラッチ回路22にラッチさ
せると、このときオートロード回路33からの出力bu
syはロウレベルであるため、セレクタ28,31は、
それぞれデータラッチ回路21,22からの出力をレジ
スタ群B2に出力する。したがって、レジスタ群B24
のレジスタWSAにオートロードアドレスALAが書き
込まれる。
【0061】次に、ステップS17でオートロードを開
始させる。具体的には、アドレスラッチ回路21にデー
タwpxをラッチさせると同時にチャンネルラッチ回路
30に最上位ビットが1となるデータをラッチさせる
と、ANDゲート32からハイレベルが出力され、図6
で説明したようにオートロードが開始される。
【0062】続くステップS18では、前記フラグAL
Sをセットするとともに前記音源チャンネルASをRA
M5の領域ALCHに格納し、ステップS20に進む。
以下、領域ALCHに格納されたデータを「チャンネル
ALCH」という。
【0063】一方、ステップS15の判別において、フ
ラグALSが“1”のときにはステップS19に進み、
FIFO(First In First Out)型のメモリ(待ちバッ
ファ)に前記音源チャンネルASとオートロードアドレ
スALAとを格納した後に、ステップS20に進む。即
ち、オートロード動作中(フラグALS=1)に次のオ
ートロードが指示された場合には、現在実行中のオート
ロード動作を完了してから次のオートロード動作を開始
しなければならないために、次のオートロードのための
情報(音源チャンネルASとオートロードアドレスAL
A)を待ちバッファに格納するようにしている。
【0064】ステップS20では、音源チャンネルAS
にその他の音色データ、即ち、前記ピッチデータ、LF
Oデータ、フィルタデータ、リバーブデータ等を送出
し、各データをレジスタ群A23の対応するレジスタに
書き込み、本サブルーチンを終了する。
【0065】ここで書込みを行っているレジスタは、全
てレジスタ群A23に属するものであり、ステップS1
7でオートロードをスタートしてから書込みを行ってい
るため、オートロードによるレジスタ群B24の書込み
と並列で書込みを行うことになり、レジスタの設定に要
する時間が大幅に短縮される。
【0066】図7のフローチャートに戻り、ステップS
4では前記フラグASLの値を判別し、フラグASLの
値が“0”のときにはオートロードに関する処理は必要
ないのでステップS2に戻って、前記ステップS2およ
びステップS3の処理を繰り返す。一方、ステップS4
の判別で、フラグASLの値が“1”のときには音源に
オートロードを指示した状態であるのでステップS5に
進み、前記出力信号busyがハイレベル(“1”)で
あるか否かを判別する。ステップS5の判別において、
出力信号busyがハイレベルのときは、これは直前に
行ったオートロードスタートの指示に応じて音源が未だ
オートロード動作を継続中であることを示し、この場
合、ステップS2に戻って該オートロード動作が終了す
るまで待機する。一方、出力信号busyがロウレベル
のときは、これは指示したオートロード動作を音源が完
了したことを意味しているので、前記ステップS18で
格納されたチャンネルALCHにノートオンを送出して
発音の開始を指示する。
【0067】次に、ステップS7で前記待ちバッファに
格納されているデータがあるか否かを判別し、待ちバッ
ファにデータが格納されているときにはステップS8に
進み、次のオートロードの設定およびオートロードのス
タートを行う。このステップS8の処理は、具体的には
前述したステップS16〜ステップS18の処理と同じ
処理である。その後、ステップS2に戻り、以上説明し
た処理を繰り返す。
【0068】一方、ステップS7の判別において、待ち
バッファが空のときにはステップS9で前記フラグAL
Sをリセットした後に、ステップS2に戻る。
【0069】図10は、本実施例の音源1の動作を説明
するためのタイミングチャートであり、チャンネルiに
おいてオートロード動作が行われた場合を示している。
【0070】ステップS17またはステップS8におい
て、CPUからオートロードスタート(SS←1)が指
示されると、まず、フラグ発生回路61の出力信号bu
syがハイレベルになり、かつ、ゲート67により遅延
回路68の記憶値が“0”になる。そして、図3のチャ
ンネルラッチ回路37にチャンネルiがラッチされ、チ
ャンネルカウンタ29によってチャンネルiがカウント
されると、比較回路38は信号EQをハイレベルにす
る。この信号EQにより、前述したタイミングで図6の
アドレスロード信号発生回路70から信号SPが出力さ
れると、図5のアドレスカウンタ43にオートロードア
ドレスALAがロードされ、このアドレスALAを先頭
にして、補助カウンタ47によって順次加算された4つ
のアドレスが波形メモリ17に供給され、この4つのア
ドレスによりアドレス指定されたメモリ内容、即ち、4
個のオートロードデータが順次波形メモリ17から読み
出され、図6のラッチ回路73に出力される。このと
き、前述したように出力信号busyはハイレベルであ
るので、ANDゲート63の出力はハイレベルとなり、
タイミング発生回路65は、信号ALCTをハイレベル
にするとともにORゲート71に4個の送りパルスを出
力する。この送りパルスにより、図10のタイミングチ
ャートに示されるように、4個のオートロードデータ
(1回目)が、チャンネルiの動作時間内に、順次ラッ
チ回路73〜76にラッチされる。
【0071】図10において、「オートロードデータ」
に付与された番号“1”〜“8”は、ROM4のオート
ロードアドレスALAを“1”としてそのデータが何ア
ドレス目に書かれているデータかを示し、「オートロー
ドアドレス」に付与された番号は、遅延回路68の出力
するオードロード動作におけるレジスタ群B24の書込
みアドレスの値を示している。
【0072】次に、チャンネルi+2のタイミングでフ
ラグ発生回路64の出力がハイレベルになると、そのハ
イレベル出力が、遅延回路68によって生成された所定
のタイミングで、半加算器62により1ずつ加算され、
その加算結果が偶数のときに、読み出し制御回路69に
より1個のパルスが送りパルス発生回路72に出力され
る。これにより、図10のタイミングチャートに示すよ
うに、ラッチ回路73〜76にラッチされたオートロー
ドデータが、セレクタ77から順次レジスタ群B24の
対応するレジスタに格納される。レジスタに格納される
制御動作は、前述したとおりである。
【0073】さらに、本実施例では、8個のオートロー
ドデータが波形メモリ17に記憶されているので、次の
時分割チャンネルiで、残りの4個のオートロードデー
タが波形メモリ17から読み出されて、対応する制御レ
ジスタに格納される。次の時分割チャンネルiのときに
も、まだ前記信号ALCTはハイレベルであるので、図
5のFナンバ発生器42から値“4”が出力され、アド
レスカウンタ43で、先にロードされたオートロードア
ドレスALAに“4”が加算され、次に読み出されるべ
き波形メモリ17のアドレスが指定される。以後、上述
した処理と同様の処理を行うことにより、図10のタイ
ミングチャートに示すように、2回目のオートロードデ
ータがラッチ回路73〜76に格納された後に、レジス
タ群B24の対応するレジスタに格納される。
【0074】そして、図10の「オートロードアドレ
ス」が“15”となり、最後のデータをレジスタ群B2
4のアドレス“15”に書き込む時点で、半加算器62
はオーバーフローを発生(15+1→16)し、フラグ
発生回路61をリセットして出力信号busyをロウレ
ベルにしてオートロード動作を終了する。
【0075】以上のようにして、本実施例に依れば、時
分割チャンネルの1チャンネル動作時間内に、オートロ
ードデータが4個分読み出されて各パラメータに分離さ
れ、対応する各レジスタに格納されるので、オートロー
ドによる各パラメータの格納時間を短縮することができ
る。
【0076】
【発明の効果】以上説明したように、本発明によれば、
複数時分割チャンネル動作で楽音を発生する波形メモリ
音源において、楽音波形を記憶するとともに、楽音信号
を生成するために必要な情報を記憶する波形メモリと、
前記情報を自動読み込みするべき時分割チャンネルと自
動読み込みされる情報の波形メモリ中の位置とを指示す
る指示手段と、該指示された時分割チャンネルの1チャ
ンネル動作時間内に、該指示された波形メモリ中の情報
の位置を複数回アクセスして、複数個の情報を読み出す
情報読み出し手段と、該読み出された複数個の情報を各
々対応する制御レジスタに分配する情報分配手段とを有
するので、オートロードに要する時間を短縮することが
でき、押鍵に対する発音の時間遅れを減少させることが
可能となる効果を奏する。
【0077】好ましくは、前記情報読み出し手段は、情
報の読み出しを所定の速度で行い、読み出された情報を
バッファに格納し、前記情報分配手段は、前記バッファ
に格納された情報を前記所定の速度より遅い速度で、前
記対応する制御レジスタに分配するので、制御レジスタ
に分配するためのデータ転送速度を高速化する必要がな
くなり、回路構成を簡単化し、コストの増加を抑制する
ことができる。
【0078】さらに、好ましくは、前記指示手段は、前
記自動読み込みされる情報の波形メモリ中の位置を、前
記制御レジスタの一部に格納されたデータを用いて指示
するので、自動読み込みされる情報の波形メモリ中の位
置を格納するレジスタを新たに設けなくてもよいため
に、レジスタの容量を減少させることができる。
【0079】また、楽音波形を記憶するとともに、楽音
信号を生成するために必要な情報を記憶する波形メモリ
と、自動読み込みされる情報を格納する第1の制御レジ
スタと、自動読み込みされる情報以外の情報を格納する
第2の制御レジスタと、前記波形メモリに記憶された情
報を自動読み込みし、該情報を前記第1の制御レジスタ
に自動設定する自動読み込み手段と、前記第2の制御レ
ジスタに自動読み込みされる情報以外の情報を書き込む
書き込み手段とを有し、前記自動読み込み手段による情
報の自動読み込み動作中にも、前記書き込み手段により
第2の制御レジスタに情報を書き込み可能としたので、
第1の制御レジスタへの自動読み込み処理と第2の制御
レジスタへの書き込み処理を並行して行うことができ、
全情報のレジスタへの書き込みを高速化させることが可
能になる。
【図面の簡単な説明】
【図1】本発明に係る音源を有する電子楽器の一実施例
の概略構成を示すブロック図である。
【図2】図1の波形メモリ17のメモリマップの一例を
示す図である。
【図3】図1の音源I/O10の詳細な構成を示すブロ
ック図である。
【図4】制御レジスタ群のメモリマップを示す図であ
【図5】図1の波形発生部11の詳細な構成を示すブロ
ック図である。
【図6】図2のオートロード回路33の詳細な構成を示
すブロック図である。
【図7】図1のCPU3が実行するメインルーチンの処
理手順を示すフローチャートである。
【図8】ステップS2の鍵処理の一部であるキーオンイ
ベント処理のサブルーチンの手順を示すフローチャート
である。
【図9】ROM4に記憶された複数の音色データTCD
nを説明するための図である。
【図10】本実施例の音源1の動作を説明するためのタ
イミングチャートである。
【符号の説明】
10 音源I/O(指示手段,情報分配手段,自動読み
込み手段,書き込み手段) 11 波形発生部(情報読み出し手段) 17 波形メモリ 23 レジスタ群A(第2の制御レジスタ) 24 レジスタ群B(第1の制御レジスタ)

Claims (4)

    (57)【特許請求の範囲】
  1. 【請求項1】 複数時分割チャンネル動作で楽音を発生
    する波形メモリ音源において、 楽音波形を記憶するとともに、楽音信号を生成するため
    に必要な情報を記憶する波形メモリと、 前記情報を自動読み込みするべき時分割チャンネルと該
    自動読み込みされる情報の波形メモリ中の位置とを指示
    する指示手段と、 該指示された時分割チャンネルの1チャンネル動作時間
    内に、該指示された波形メモリ中の情報の位置を複数回
    アクセスして、複数個の情報を読み出す情報読み出し手
    段と、 該読み出された複数個の情報を各々対応する制御レジス
    タに分配する情報分配手段とを有することを特徴とする
    波形メモリ音源。
  2. 【請求項2】 前記情報読み出し手段は、情報の読み出
    しを所定の速度で行い、読み出された情報をバッファに
    格納し、前記情報分配手段は、前記バッファに格納され
    た情報を前記所定の速度より遅い速度で、前記対応する
    制御レジスタに分配することを特徴とする請求項1記載
    の波形メモリ音源。
  3. 【請求項3】 前記指示手段は、前記自動読み込みされ
    る情報の波形メモリ中の位置を、前記制御レジスタの一
    部に格納されたデータを用いて指示することを特徴とす
    る請求項1記載の波形メモリ音源。
  4. 【請求項4】 楽音波形を記憶するとともに、楽音信号
    を生成するために必要な情報を記憶する波形メモリと、 自動読み込みされる情報を格納する第1の制御レジスタ
    と、 自動読み込みされる情報以外の情報を格納する第2の制
    御レジスタと、 前記波形メモリに記憶された情報を自動読み込みし、該
    情報を前記第1の制御レジスタに自動設定する自動読み
    込み手段と、 前記第2の制御レジスタに自動読み込みされる情報以外
    の情報を書き込む書き込み手段とを有し、 前記自動読み込み手段による情報の自動読み込み動作中
    にも、前記書き込み手段により第2の制御レジスタに情
    報を書き込み可能としたことを特徴とする波形メモリ音
    源。
JP5277673A 1993-10-08 1993-10-08 波形メモリ音源 Expired - Fee Related JP2727931B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP5277673A JP2727931B2 (ja) 1993-10-08 1993-10-08 波形メモリ音源

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP5277673A JP2727931B2 (ja) 1993-10-08 1993-10-08 波形メモリ音源

Publications (2)

Publication Number Publication Date
JPH07110688A JPH07110688A (ja) 1995-04-25
JP2727931B2 true JP2727931B2 (ja) 1998-03-18

Family

ID=17586712

Family Applications (1)

Application Number Title Priority Date Filing Date
JP5277673A Expired - Fee Related JP2727931B2 (ja) 1993-10-08 1993-10-08 波形メモリ音源

Country Status (1)

Country Link
JP (1) JP2727931B2 (ja)

Also Published As

Publication number Publication date
JPH07110688A (ja) 1995-04-25

Similar Documents

Publication Publication Date Title
US4438502A (en) Output processing system for a digital electronic musical instrument
US5892170A (en) Musical tone generation apparatus using high-speed bus for data transfer in waveform memory
JP2727931B2 (ja) 波形メモリ音源
JP2950461B2 (ja) 楽音発生装置
US5264657A (en) Waveform signal generator
US5710386A (en) Method and apparatus for efficiently controlling access to stored operation control data and tone forming data
JPH0310959B2 (ja)
US5687105A (en) Processing device performing plural operations for plural tones in response to readout of one program instruction
US4338844A (en) Tone source circuit for electronic musical instruments
JP3371643B2 (ja) 信号処理装置
JP2576615B2 (ja) 処理装置
JP2576614B2 (ja) 処理装置
JPH071430B2 (ja) 電子楽器
JP3447715B2 (ja) 楽音生成装置及び楽音生成方法
JP3116447B2 (ja) デジタル信号処理プロセッサ
JP3067630B2 (ja) 楽音情報処理装置及び楽音情報処理方法
JPH0544040B2 (ja)
JP3521724B2 (ja) 楽音発生装置
JP3543203B2 (ja) 電子楽器
JPS6352399B2 (ja)
JP2640560B2 (ja) エンベロープ信号発生装置
US4936179A (en) Electronic musical instrument
JP3344988B2 (ja) 楽音生成装置及び楽音生成方法
JP2728243B2 (ja) 電子楽器
JP3094759B2 (ja) 楽音信号分配処理装置

Legal Events

Date Code Title Description
S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313532

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

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

Free format text: PAYMENT UNTIL: 20081212

Year of fee payment: 11

LAPS Cancellation because of no payment of annual fees