JPH0241758B2 - - Google Patents

Info

Publication number
JPH0241758B2
JPH0241758B2 JP57166158A JP16615882A JPH0241758B2 JP H0241758 B2 JPH0241758 B2 JP H0241758B2 JP 57166158 A JP57166158 A JP 57166158A JP 16615882 A JP16615882 A JP 16615882A JP H0241758 B2 JPH0241758 B2 JP H0241758B2
Authority
JP
Japan
Prior art keywords
data
rhythm
signal
circuit
register
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
JP57166158A
Other languages
English (en)
Other versions
JPS5955492A (ja
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 filed Critical
Priority to JP57166158A priority Critical patent/JPS5955492A/ja
Publication of JPS5955492A publication Critical patent/JPS5955492A/ja
Publication of JPH0241758B2 publication Critical patent/JPH0241758B2/ja
Granted legal-status Critical Current

Links

Landscapes

  • Electrophonic Musical Instruments (AREA)

Description

【発明の詳細な説明】
(発明の分野) この発明は、演奏音量データに基づく音色また
は音量の制御を楽器種類に応じて行ない、演奏の
強弱に対する楽器音特性を実際のものにより近付
けてより豊かなリズム音を発生するようにした自
動リズム演奏装置に関する。 (発明の背景) 従来の自動リズム演奏装置として、リズムパタ
ーンデータとそれに対応するアクセントまたは打
楽器音の強弱等の音量データを記憶するパターン
メモリを有し、リズム選択に応じて自動的に打楽
器音を発生するものは知られている。 ところでこのような装置にあつては、楽器種類
にかかわらず、単に入力された音量データにより
複数の楽器音の音量を一律に制御しており、発生
するリズム音は、楽器ごとに演奏の強弱に対する
発音音量や音色が異なる実際の楽器音と比べ、貧
弱であつた。 (発明の目的) この発明は上述の従来形における問題点に鑑
み、自動リズム演奏装置において、演奏の強弱を
示す共通レベルデータを基に、楽器(音源)ごと
に音色音量を補正するという構想に基づき、実際
の楽器音により近い、より豊かなリズム音を得る
ことを目的とする。 [発明の構成] この目的を達成するために、この発明に係る自
動リズム演奏装置は、リズム音ごとの発音タイミ
ングデータおよび複数種類の前記リズム音に対し
て共通に設定され複数段階あるレベル制御態様の
うちの所望の段階を表す共通レベルデータを含む
リズムパターンデータを記憶しているパターンメ
モリと、このパターンメモリを前記発音タイミン
グデータに従い所定のテンポで読み出して前記リ
ズムパターンデータに基づく複数のリズム音を発
生するリズム音読出発生手段と、前記共通レベル
データに対応する前記各リズム音毎の補正データ
を記憶するレベル記憶手段とを備え、前記リズム
音と読出発生手段は、前記レベル記憶手段から読
み出された補正データに基づいて、発生するリズ
ム音の楽音パラメータを補正制御することを特徴
とする。 補正データに基づいて補正制御されるリズム音
の楽音パラメータとしては、音量または音色が代
表的である。 (実施例の説明) 第1図はこの発明の1実施例による自動リズム
演奏装置を備えた電子楽器の全体構成を示す。同
図において、鍵盤10は図示しない上鍵盤UK、
下鍵盤LKおよびペダル鍵盤PK等を備え、演奏者
の押鍵に応じた鍵情報を発生する。パネル12は
楽音選択用操作子14とリズム用操作子16とを
備え、楽音選択およびリズム種類選択などの操作
子情報を発生する。リズム用操作子16は、例え
ば第2図に示すように、マーチ、ワルツ等のリズ
ム種類を選択するリズム選択スイツチ18,18
−1,18−2,…、リズムの開始および停止を
制御するスタート・ストツプスイツチ20、リズ
ム音量調節用のトータルボリウム22、リズムの
テンポ設定用のテンポ設定子24等を含む。な
お、トータルボリウム22およびテンポ設定子2
4は、多段のデイジタルスイツチ、または可変抵
抗器とA/D変換器とを組み合せたもの等からな
り、設定位置に応じた音量およびテンポのデイジ
タルデータを発生する。 鍵盤10およびパネル12はそれぞれキースイ
ツチインターフエース30およびパネルインター
フエース32を介してアドレスバスADBとデー
タバスDBとからなるバスライン34に接続され
ており、このバスライン34には中央処理装置
(CPU)36が接続されている。 CPU36は、プログラムカウンタPC、Aレジ
スタA、XレジスタX、YレジスタY等を有する
マイクロプロセツサ等で構成され、キースイツチ
インターフエース30およびパネルインターフエ
ース32を介して鍵盤10およびパネル12を走
査し、発生した鍵情報および操作子情報を取り込
むとともに、これらの情報に基づいて鍵盤音やリ
ズム音に関する各種の制御データを発生するなど
第1図の電子楽器全体の動作を制御する。 バスライン34には、さらに、プログラムメモ
リ38、ワーキングメモリ40、リズムパターン
メモリ42およびパターン先頭アドレスメモリ4
4、ならびにCPU36で発生する制御データ送
出用の各インターフエースが接続されている。 プログラムメモリ38は、CPU36の制御プ
ログラムが格納されたリードオンメモリROMで
ある。 ワーキングメモリ40はランダムアクセスメモ
リRAMよりなり、その一部にCPU36が制御プ
ログラムを実行する際に発生する各種データを一
時格納するためのワーキングエリアが設けられて
いる。このワーキングエリアは第1表に示すよう
なレジスタまたはフラグ等で構成される。
【表】 なお、以下の説明においては各レジスタ等の内
容とこれらのレジスタ等とは同じ記号で示す。例
えば拍数レジスタも拍数レジスタの内容もいずれ
もHKPEで示す。 テンポデータレジスタTEMPO、音量データレ
ジスタTOTLEVおよびリズム種類レジスタ
RHYPTNにはそれぞれリズム用操作子16のテ
ンポ設定子24、トータルボリウム22およびリ
ズム選択スイツチ18の操作子情報が格納され
る。 リズムパターンメモリ42は、ROMで構成さ
れ、第3図aに示すように、マーチ、ワルツ等の
各リズム種類ごとのリズムパターンが格納されて
いる。これらのリズムパターンは、それぞれ第3
図bの拡大図に示すように、先頭アドレスに格納
された楽器グループナンバIGN、ならびに続く
各アドレスに格納された各拍内タイミングにおけ
るイベントデータEVT、拍エンドデータBE(16
進法表示で「OD」(以下$OD)と記す)のデー
タ)およびリターンデータRTN($OF)からな
る。 ここで楽器グループとは、マーチ、ワルツ等の
リズム音を発生するための楽器音を後述のリズム
音発生回路60における音源形成チヤンネル数の
8種類ずつ抽出して形成した楽器グループで、こ
の楽器グループごとにグループを形成する楽器を
各音源形成チヤンネルに割り当てている。この実
施例においては、マーチ、タンゴのリズム音発生
用に0、ワルツ、バラード用に1というように0
〜7の楽器グループナンバIGNに対応する8つ
の楽器グループが設けられており、例えば楽器グ
ループハナンバIGNの値が1の場合はチヤンネ
ル番号0〜7で表わされる各チヤンネルに対しチ
ヤンネル0はトツプシンバルTCY、チヤンネル
1はハイトツトHH、…、チヤンネル5はスネア
ドラムブラツシユロールSDB、…というように
ワルツおよびバラードのリズム音を発生するため
の8種類の楽器が割り当てられている。この楽器
グループの概念を導入することにより、この電子
楽器においては各リズム種類ごとに最大8種類の
楽器音からなるオートリズムを発生することがで
きる。因みに従来のオートリズム演奏装置におい
ては全種類のリズム音で用いられる楽器が音源形
成チヤンネル数、例えば8種類であつて、1つの
リズム音に用いられる楽器は音源形成チヤンネル
数より少ないのが通常であるが、この実施例によ
ると、例えばリズム種類ごとに所望の8種類、全
リズム種類では任意数の楽器音を用いてリズム音
を形成することも容易である。 この電子楽器は、1ビートすなわち1拍の1/12
を単位とするタイミングでリズムを発音するよう
に構成されており、リズムパターンメモリ42内
には発生すべき楽音の楽音要素をデータとして含
むイベントデータEVTがそのイベントの発生す
る拍数および12個の拍内タイミング順に格納され
ている。このイベントデータEVTは、第3図c
に示すように、8ビツトを1バイトとするメモリ
の2バイトを用いて第1バイトの下位4ビツト
(第4〜1ビツト)にイベントの発生する拍内タ
イミングHTIM、第7〜5ビツトに音源形成チ
ヤンネルナンバCHN、第2バイトの上位4ビツ
ト(第8〜5ビツト)にその拍内タイミングで発
生する楽器音のピツチ制御データPITおよび第3
〜1ビツトにその楽器演奏の強弱すなわち各タイ
ミングで発生する楽器音のレベルが楽譜上でフオ
ルテシモff〜ピアニシモppのいずれであるかを示
す共通レベルデータLEVが格納されている。拍
エンドデータBEは拍と拍との境界を示し、リタ
ーンデータRTNはリズムパターンの最後尾を示
す。また、これらの拍エンドデータBEおよびリ
ターンデータRTNは直前のイベントデータEVT
に示された拍内タイミング以後、その拍内でのイ
ベントはないことを示す。 パターン先頭アドレスメモリ44はリズムパタ
ーンメモリ42における各リズム音のリズムパタ
ーン先頭アドレスが格納されており、リズム種類
レジスタの内容RHYPTNを入力すると対応する
リズムパターンメモリの先頭アドレスを出力する
変換ROMである。 鍵盤音形成回路48は、鍵楽音インターフエー
ス50を介してCPU36からの鍵盤音に関する
データを入力し、複数(例えば10個)の時分割チ
ヤンネルで鍵盤音データを形成してこれらのデー
タを時分割多重化した鍵盤音信号を出力する。 この鍵盤音信号は、D/A変換器52において
後述するリズム音信号RTSとともに全チヤンネ
ル分のデータが音響的にミキシングされ、アナロ
グ楽音信号に変換された後、増幅器54およびス
ピーカ56を介して音響として発音される。 リズムインターフエース58は、CPU36が
リズムパターンメモリ42から読み出して出力す
るピツチ制御データPITおよび共通レベルデータ
LEVなどのイベントデータEVTやこのイベント
データEVTが読み出されたことを示す発音命令
信号NKONを一時記憶したり、CPU36からの
指令によつて記憶しているデータを第4図に示す
ような9ビツトのシリアルデータOPCに変換し
てリズム音発生回路60に転送したりする。 なお、このデータOPCの最上位ビツトは常時
“1”のアベイラブル信号Avとなつており、
CPU36の割込処理においてデータOPCの転送
が生じると“0”連続入力データが“1”に変化
するので例えデータOPCの全ビツトが“0”で
あつてもデータ転送の有無を判別することができ
る。また、このリズムインターフエース58はテ
ンポ設定子22に設定されたテンポデータに従つ
て動作するテンポカウンタを含み、CPU36か
らリズムスタート信号が入力したときおよびその
後1ビートごとにCPU36にデータ転送処理を
割り込みで行なわせるための割込信号RINTを発
生することにより、この電子電器における自動リ
ズム演奏のテンポを設定している。 リズム音発生回路60は、CPU36からリズ
ムインターフエース58およびパネルデータイン
ターフエース62を介して入力するOPC、TLV
およびPANなどのリズム音に関するデータに基
づき8個の時分割チヤンネルごとに楽器音信号を
発生し、これらの楽器音信号を時分割多重化した
リズム音信号RTSを出力する。なお、このリズ
ム音発生回路60は楽器種類ごとに共通レベルデ
ータLEVに基づき音量または音色等、楽音特性
を制御する楽音特性制御回路を含んでいる。 このリズム音信号RTSは、後述のようにD/
A変換器52、増巾器54およびスピーカ56を
介して音響に変換される。 パネルデータインターフエース62は、CPU
36がリズム用操作子16のトータルボリウム2
2から読み取つた音量データTOTLEV(または
これを対数変換したデータ)およびCPU36が
リズムパターンメモリ42から読み出した楽器グ
ループナンバIGNをそれぞれ第4図に示すよう
なシリアルデータTLVおよびPANに変換してリ
ズム音発生回路60に送出する。 (第1図の電子楽器の動作説明) 次に第5〜9図のフローチヤートを参照しなが
ら第1図の電子楽器の動作を説明する。第5図を
参照して、この電子楽器に電源が投入されると、
CPU36はプログラムメモリ38に格納された
制御プログラムに従つて動作を開始する(ステツ
プ100)。ステツプ101ではCPU36、ワーキング
メモリ40およびリズムインターフエース58等
に含まれる各レジスタ、フラグ等をクリアして回
路全体をイニシヤライズし、ステツプ102では鍵
盤10およびパネル12の各操作子を操作して変
更のあつた操作子およびその操作子情報を検出す
る。この検出は、例えば各操作子ごとの操作子情
報と各レジスタTEMPO、TOTLEV、
RHYPTN等に格納された前回の操作子情報との
排他的論理和が0でない場合を操作子情報変更す
なわちイベント有りとして検出することができ
る。なお、このステツプ102ではスタート・スト
ツプスイツチ24がスタートまたはストツプ側に
押圧された場合にもその操作子情報を検出する。
またトータルボリウム22またはテンポ設定子2
4の操作子情報は、例えばこれらのボリウムの位
置を0〜15の16ステツプのデイジタルデータで表
わし、このデータをそのままトータルボリウムレ
ジスタTOTLEVおよびオートリズムテンポレジ
スタTEMPOに格納する。 ステツプ103ではステツプ102でイベントが検出
されたか否かを判定し、イベントがなければステ
ツプ102に戻つてさらにイベントの検出を行ない、
イベント有りならば以降のステツプで検出された
イベントの種類に応じた処理を行なう。 ステツプ102で検出されたイベントが鍵盤10
における鍵の押下もしくは解除または楽音選択用
操作子14の押下による楽音変更であるときはス
テツプ110に進む。ステツプ110では、各鍵データ
または楽音選択データを処理して鍵楽音インター
フエース50に出力する。鍵楽音インターフエー
ス50はこれらのデータをさらに鍵盤音形成回路
48に送出する。 前記イベントがスタート・ストツプスイツチ2
0によるリズムスタートであれば、ステツプ120
でワーキングメモリ40内のリズムランフラグ
RHYRUNをセツトした後、ステツプ121でリズ
ムテンポを同期させる。 ステツプ102におけるイベントがスタート・ス
トツプスイツチ20によるリズムストツプである
ときは、ステツプ130で第1表に示すパターン変
更フラグPCHNGF、リズムランフラグ
RHYRUN等のリズム関係レジスタ、フラグをク
リアする。 ステツプ102におけるイベントがテンポ設定子
24によるテンポ変更であるときは、ステツプ
140でテンポデータTEMPOをリズムインターフ
エース58にロードする。リズムインターフエー
ス58においてはこのテンポデータにより1ビー
トのピツチすなわちCPU36が後述する割込処
理INTRPT200によつてリズムパターンを読
み出すテンポが決定される。 ステツプ102におけるイベントがトータルボリ
ウム22によるリズム音量の変更であるときは、
ステツプ150で音量データTOTLEVをパネルデ
ータインターフエース62に出力する。パネルデ
ータインターフエース62はこの音量データ
TOTLEVをシリアルな音量制御信号TLVに変換
してリズム音発生回路60に出力する。 ステツプ102におけるイベントがリズム選択ス
イツチ26の押下によるリズム種類RHYPTNの
変更であるときは、リズムセツト処理RHYSET
160(第6図)を実行する。すなわち、ステツ
プ161で小節内タイミングカウンタTIMINGの内
容を参照して拍数レジスタの拍数をタイミング
TIMINGが0〜11なら1に、12〜23なら2に、
24〜35なら3に、36〜47なら4にセツトする。こ
れは変更後のリズムを変更前の同一のタイミング
で継続させるためで、ステツプ165で同一拍数、
同一拍内タイミングのリズムパターンデータが格
納されたアドレスにパターンポインタRHPNT
をセツトする際に用いる。ステツプ162では再び
リズムランフラグRHYRUNを検査しリズム進行
中であればステツプ163で拍エンドフラグ
RHHENDをクリアする。これは拍エンドフラグ
RHHENDがセツトされままになつていると、変
更後のリズム時変更時のタイミング以降にイベン
トデータを有するときこれらのイベントデータの
読み取りをスキツプしてしまうからである(ステ
ツプ401参照)。変更後のリズムにおいても変更時
のタイミング以降にイベントデータが存在しない
ときは、リズムポインタRHPNTをセツトする
際に拍エンドフラグRHHENDがセツトされる。
ステツプ162の判定がリズム停止中のときはリズ
ムストツプ処理の際ステツプ130において拍エン
ドフラグRHHENDは既にクリアされているので
ステツプ165をスキツプしてステツプ166に進む。 ステツプ164では、リズム種類レジスタの内容
RHYPTNで先頭パターンアドレスメモリ44を
アドレスして選択されたリズム種類の先頭アドレ
スを読み出し、ワーキングメモリ40内のリズム
パターン先頭アドレスレジスタRHYROMに格納
する。ステツプ165ではリズムパターンメモリ4
2を先頭アドレスRHYROMとパターンポインタ
の内容RHPNTとの和で示されるアドレスで先
頭アドレスから順次読み出し、読み出された拍エ
ンドデータBEの数および拍内タイミングHTIM
と、拍数HKPEおよび小節内タイミング
TIMINGとを比較してパターンポインタ
RHPNTをセツトする。このセツトにより、先
頭アドレスRHYROMとパターンポインタの内容
PHPNTとの和で示されるアドレスは、エンドデ
ータBEの数が拍数HKPEの値より1少なく、か
つ拍内タイミングHTIMが小節内タイミング
TIMING以上になる最初のアドレスを示すよう
になる。ステツプ166ではリズムパターンメモリ
42の先頭アドレスに格納された楽器グループナ
ンバIGNを読み出してパネルデータインターフ
エース62に出力する。パネルデータインターフ
エース62は楽器グループナンバIGNをシリア
ル信号PANに変換してリズム音発生回路60に
送出する。 ステツプ167ではリズム種類RHYPTNが3拍
子および4拍子のいずれであるかを判定し、3拍
子であればステツプ168で、4拍子であればステ
ツプ169で最大タイミングレジスタTMPMAXに
1小節内の最大タイミング数である35および47を
記憶させる。 ステツプ102でイベント検出後、イベントの種
類ごとにステツプ110〜169の処理を終了するとス
テツプ102に戻つて新たなイベントの検出を行な
う。 前述したように第1図の電子楽器においては、
スタート・ストツプスイツチ20をスタートにし
たとき、およびリズムインターフエース58に含
まれるテンポカウンタが設定されたテンポに従つ
て1拍の1/12すなわち1ビートをカウントしたと
きリズムインターフエース58からCPU36に
割込信号RINTが送出される。従つてCPU36
はリズムスタート時と以後の1ビートごとに第7
図の割込処理INTRPT200を実行する。 先ず、ステツプ201では割込処理終了後もとの
状態に復帰できるように各レジスタ、プログラム
カウンタ等をセーブし、続いて第8図に示すリズ
ム音発生データ出力処理RHIRQ210を実行す
る。 第8図を参照して、ステツプ211でリズムラン
フラグRHYRUNを検査してリズムが進行中は否
かを判定する。この判断が「ノー」すなわちリズ
ムが停止している場合は、リズム音データを出力
する必要はないからステツプ260(第7図)でセー
ブしていた各レジスタを復帰させて直ちに割り込
みを解除し、もとのルーチンに復帰する。ステツ
プ211でリズムが進行中ならばデータ出力サブル
ーチンRHYCNV400(第9図)を実行する。 第9図を参照して、ステツプ401で拍エンドフ
ラグRHHENDを検査し、拍エンドであれば以後
拍アツプするまでの拍内タイミングTMPCNTに
イベントデータは存在しないからそのままもとの
ルーチン(第8図)に戻る。拍エンドでなけれ
ば、ステツプ402でリズムポインタRHPNTの内
容をYレジスタにセツトし、続いてステツプ403
および404でリズムパターン先頭アドレス
RHYROMとYレジスタの内容Y(すなわちリズ
ムポインタの内容RHPNT)との和でリズムパ
ターンメモリ42をアドレスして第3図cに示す
イベントデータEVTの第1バイトのチヤンネル
ナンバCHNおよび拍内タイミングデータHTIM
を読み出し、AレジスタおよXレジスタに格納す
る。次にステツプ405でAレジスタの内容と$OF
との論理和を求めAレジスタの内容を下位4ビツ
トの拍内タイミングデータHTIMだけ残し、ス
テツプ406でこの拍内タイミングデータHTIMと
テンポカウンタTMPCNTで示されるタイミング
とが一致するか否かを判定する。ステツプ406で
これらのタイミングが一致していればこのデータ
は現在処理すべきタイミングTMPCNTのもので
有効であるからステツプ407でポインタとしての
Yレジスタの内容を歩進させ、ステツプ408でイ
ベントデータEVTの第2バイトのピツチ制御デ
ータPITおよび共通レベルデータLEVを読み出
してAレジスタに格納する。ステツプ409ではA
レジスタに格納されたピツチ制御データPITおよ
び共通レベルデータLEVならびにXレジスタに
格納されているチヤンネルナンバCHNをリズム
インターフエース62に出力する。 ステツプ410ではさらに次のイベントデータ
EVTを読み出すべくリズムパターンメモリポイ
ンタとしてのYレジスタの内容をさらに歩進す
る。ステツプ411〜414ではステツプ403〜406の手
順を繰り返しステツプ407〜414で現在の拍内タイ
ミングTMPCNTと同一の拍内タイミングデータ
HTIMを有するイベントデータをすべて読み出
す。ステツプ406または414において同一拍内タイ
ミングを有するイベントデータが存在しないとき
はステツプ415に進み、ステツプ405または413で
Aレジスタに残したタイミングデータが$OD以
上か否かすなわち拍エンドまたはリターンかを判
定する。拍内タイミングは必らず$OO〜$OB
であり、Aレジスタの内容Aが$OD以上になる
のは拍エンドデータBE($OD)かリターンデー
タRTN($OF)を読み取つたときである。そこ
で上記判定でAレジスタ≧$ODのときは次にス
テツプ416でリターンか否か判定する。リターン
($OF)であればステツプ417でYレジスタをク
リアし、拍エンド($OD)であればステツプ
417をスキツプしてステツプ48に進む。ステツプ
418では拍エンドフラグRHHENDをセツトし、
ステツプ419でYレジスタの内容を歩進し、ステ
ツプ420でリズムポインタRHPNTにYレジスタ
の内容Yをセツトしもとのルーチン(第8図ステ
ツプ240)に戻る。上記のステツプ417,419およ
び420の処理によりリターンデータRTNが検出さ
れたときはリズムポインタRHPNTは1にセツ
トされ、また拍エンドデータBEが検出されたと
きはリズムポインタRHPNTはステツプ419にお
いて拍エンドデータBEが格納された番地の次の
番地を示すこととなる。ステツプ415の判定にお
いて拍エンドまたはリターンでない場合はステツ
プ420に進み、ステツプ420でリズムポインタ
RHPNTにタイミングTMPCNTと一致しない拍
内タイミングを読み出したときの番地がそのまま
格納された後、第8図のルーチンのステツプ240
に戻る。 第8図を参照して、ステツプ240ではリズムイ
ンターフエース58にデータ転送指令を送出す
る。すると、リズムインターフエース58は、ス
テツプ409で入力し記憶しているピツチ制御デー
タPITおよび共通レベルデータLEVなどからな
る10ビツトのシリアルデータOPCをリズム音発
生回路60に送出する。 ステツプ241では拍内タイミングカウンタ
TMPCNTを歩進し、ステツプ242で拍オーバー
か否かを判断する。ステツプ242で拍オーバーと
判定されると、次にステツプ243で小節内タイミ
ングカウンタTIMINGを歩進する。拍オーバー
のときは小節オーバーである可能性があるから、
次にステツプ244でステツプ243の拍オーバーは小
節オーバーか否かを小節内タイミングカウンタの
内容TIMINGが最大タイミングTMPMAXに達
したか否かで判定する。小節オーバーであれば、
ステツプ245で拍エンドフラグRHHENDをリセ
ツトし、ステツプ246で小節内タイミングカウン
タTIMINGおよび拍内タイミングカウンタ
TMPCNTをリセツトした後、第7図のステツプ
260に戻る。また拍オーバーではあるが、小節オ
ーバーでないときはステツプ247で拍エンドフラ
グRHHENDをリセツトし、ステツプ248で拍内
タイミングカウンタTEMPCNCをリセツトした
後、第7図のステツプ260に戻る。 ステツプ242の判定が拍オーバーでないときは
ステツプ249で拍内タイミングカウンタTIMING
をインクリメントした後、第7図のステツプ260
に戻る。 第7図を参照して、リズム音発生データ出力処
理RHIRQ210(第8図)のステツプ211,
246,248および249からリターンした後、ステツ
プ260ではこの割込処理INTRPTのために待避さ
せていたプログラムカウンタ、各レジスタ等を復
帰し、割込前の状態に戻る。 次に第10図を参照してリズムインターフエー
ス58の詳細動作を述べる。このインターフエー
ス58は、デコーダ70、テンポレジスタ72、
リズム音源データレジスタ74、チヤンネルレジ
スタ76およびフアンクシヨンレジスタ78等を
具備し、図示しないタイミング信号発生器からの
タイミング信号φ、ChT等で駆動されるように
なつている。 デコーダ70は、CPU36(第1図)がアド
レスバスに送出するアドレス信号が、テンポレジ
スタ72、リズム音源データレジスタ74、チヤ
ンネルレジスタ76およびフアンクシヨンレジス
タ78のいずれかであるとき、そのアドレス信号
に応じて各レジスタ72〜78にロード信号
RHYDEC1〜4を送出する。従つてCPU36が
データバスDBを介して送出するデータはCPU3
6がアドレス指定するレジスタに供給され格納さ
れる。 CPU36(第1図)は、テンポ設定子24
(第2図)が操作されると、このテンポ設定子2
4からテンポデータTEMPOを取り込むとともに
リズムインターフエース58のテンポレジスタ7
2をアドレスしてテンポデータTEMPOを送出す
る。デコーダ70は、アドレスバスADBに送出
されたテンポレジスタ72を指定するアドレデー
タに基づいてテンポレジスタ72のロード端子に
デコード出力RHYDEC1を供給し、このため、
テンポレジスタ72はこのときデータバスDBに
送出されているデータすなわちテンポデータ
TEMPOを記憶する。このテンポデータはテンポ
ROM80に供給される。ROM80は、データ
TEMPOをカウンタ82のプリセツトデータPSD
に変換してカウンタ82に供給する。 カウンタ82は、ロード端子LDすなわちOR回
路84の出力が“1”のときプリセツトデータ
PSDをプリセツトされ、続いてクロツク発生回
路86の出力する一定周波数のクロツク信号φを
カウントし、オーバーフローしたときにキヤリア
出力端子Coに“1”を出力する。この出力はOR
回路84の第1の入力端子に入力され、カウンタ
82はオーバーフローするたびにプリセツトされ
ることになる。すなわち、このカウンタ82はオ
ーバーフロー値をN、プリセツト値をMとする
と、クロツク信号φの周波数を1/(N−M)に
分周してテンポ設定子24(第2図)に設定され
たテンポの出力を発生する。なお、このカウンタ
82としてはプリセツトした後クロツク信号φを
ダウンカウントしてカウント値0で端子Coに
“1”を出力し、クロツク信号φを1/Mに分周
するものでもよく、また他の周知の可変分周形の
カウンタでもよい。OR回路84の出力はさらに
割込信号RINTとしてCPU36が送出され、
CPU36はカウンタ82がプリセツトされると
同時に後述の割込処理動作を開始する。また、ク
ロツク発生回路86の出力は別のOR回路88の
第1の入力端子に供給される。OR回路88の出
力はクロツク発生回路86のリセツト端子に接続
されているので、このクロツク発生回路86は出
力を発生すると直ちにリセツトされ、従つて短い
パルス幅のクロツク信号φを発生している。 前述のように、CPU36(第1図)は、スタ
ート・ストツプスイツチ20(第2図)がスター
ト側に押圧されたことを検出すると、フアンクシ
ヨンレジスタ78をアドレスしてデータバスDB
にスタート指令($01)を送出する。すると、デ
コーダ70はそのアドレスデータに基づきデコー
ド出力RHYDEC4をフアンクシヨンレジスタ7
8のロード端子に供給する。このため、フアンク
シヨンレジスタ78には、スタート指令($01)
がロードされ、レジスタ78は、短い時間“1”
のパルスをスタート信号START=“1”として
送出した後自動的にクリアされる。 このスタート信号START=“1”は、OR回路
84および88それぞれの第2の入力端子に供給
される。このため、OR回路84はカウンタ82
をプリセツトすると同時にCPU36に割込信号
RINTを供給し、OR回路88はクロツク発生回
路86をリセツトする。従つて、これらのカウン
タ82、クロツク発生回路86およびCPU36
相互におけるリズムテンポが同期する。 自動リズム演奏開始後、CPU36(第1図)
によつてリズムパターンメモリ42(第1図)か
ら読み出されたイベントデータEVTは、3ビツ
トの共通レベルデータLEVおよび4ビツトのピ
ツチ制御データPITが7ビツトのデータとしてリ
ズム音源データレジスタ74に供給され、チヤン
ネルナンバCHNはチヤンネルレジスタ76に格
納される。 チヤンネルカウンタ90は、チヤンネルタイミ
ング信号ChTを0から7まで繰り返しカウント
し、比較器92はこのチヤンネルカウンタ90の
出力とチヤンネルレジスタ74の出力するチヤン
ネルナンバCHNとを比較して、これらが一致し
たとき一致信号EQをAND回路94の第1の入力
端子に供給する。 フリツプフロツプ96はチヤンネルレジスタ7
6のロード信号RHYDEC3によつてセツトさ
れ、AND回路94の出力CHEQ=“1”によつて
リセツトされるもので、チヤンネルナンバCHN
がロードされた後信号CHEQ=“1”が発生する
までAND回路94の第2の入力端子に信号“1”
を供給し、それ以外では“0”を供給する。この
ため、AND回路94は、比較器92の出力EQと
フリツプフロツプ96のセツト出力Qとの論理積
としてのチヤンネル合致信号CHEQ=“1”をチ
ヤンネルナンバCHNをロードした後の1回に限
りチヤンネルタイミング信号ChT前縁の微分波
形として出力する。 この信号CHEQ=“1”はセレクタ98に入力
Bを選択するための信号SBとして供給される。
このため、8ステージ7ビツトのシフトレジスタ
100には、リズム音源データレジスタ74から
3ビツトの共通レベルデータLEVおよび4ビツ
トのピツチ制御データPITが供給される。シフト
レジスタ100はタイミング信号ChTに応じて
これらのデータを取り込み、順次シフトする。ま
た、信号CHEQは発音指令信号NKON=“1”と
して8ステージ1ビツトのシフトレジスタ102
にOR回路104を介して供給され、タイミング
信号ChTに応じて取り込まれる。 なお、シフトレジスタ100,102およびチ
ヤンネルカウンタ90はいずれも同一のチヤンネ
ルタイミング信号ChTによつて同期的に動作し
ており、この結果、シフトレジスタ100,10
2には、データLEVおよびPITならびに信号
NKON=“1”がチヤンネルレジスタ76に格納
されたチヤンネルナンバCHNに対応するステー
ジに書き込まれる。 セレクタ98には、信号CHEQが“0”の間、
インバータ106を介して入力Aを選択するため
の信号SAが供給される。このため、シフトレジ
スタ100の出力はセレクタ98を介して入力側
に帰還され、シフトレジスタ100に書き込まれ
たデータLEVおよびPITは循環的に記憶される。
同様に、シフトレジスタ102に書き込まれた信
号NKON=“1”もAND回路108およびOR回
路104を介して循環的に記憶される。 CPU36(第1図)は、前述のように、リズ
ムパターンメモリ42(第1図)からイベントデ
ータEVTを読み出した後、フアンクシヨンレジ
スタ78をアドレスしてデータバスDBに転送指
令($20)を送出する。すると、デコーダ70は
そのアドレスデータに基づきデコード出力
RHYDEC4をフアンクシヨンレジスタ78のロ
ード端子に供給し、このため、フアンクシヨンレ
ジスタ78に転送指令($20)がロードされる。 レジスタ78は、シフトレジスタ100,10
2に格納された8チヤンネル分の全データおよび
信号がシリアルデータOPCに変換され、出力さ
れるチヤンネルタイミング信号ChT約8個分の
時間転送信号TRANS=“1”を送出し、後は自
動的にクリアする。 信号TRANS=“1”は、P/S変換器110
の転送端子Sに供給される。P/S変換器110
には、そのパラレルデータ入力端子P1〜P9
に、シフトレジスタ100,102に8つのチヤ
ンネルごとに格納されたデータおよび信号がチヤ
ンネルタイミング信号ChTと同期してチヤンネ
ルごとに順次入力しており、またロード端子LD
にはチヤンネルタイミング信号ChTが入力して
いる。そして、フアンクシヨンレジスタ78が転
送信号TRANS=“1”を発生すると、このP/
S変換器110はチヤンネルタイミング信号
ChTが“1の期間にP1〜9のデータをチヤン
ネル毎に取り込み、その取り込んだデータをチヤ
ンネルタイミング信号ChTが“0”の期間にク
ロツク信号φのタイミングでシリアルなデータ
OPCとしてリズム発生回路60に送出する。こ
の動作が8回繰り返されることにより、全8チヤ
ンネル分のデータが送出される。 転送信号TRANS=“1”は、また、インバー
タ112を介してAND回路108の第2の入力
端子に信号“0”として供給される。このため、
シフトレジスタ102を含む循環路は遮断され、
シフトレジスタ102は全ステージがクリアされ
る。 (リズム音発生回路60の動作説明) 第11図は、リズム音発生回路60(第1図)
の機能を理解するための概略ブロツク図である。
次に第11図を参照してリズム音発生回路60の
動作を述べる。この回路60は、リズム制御回路
130、基本ピツチ・音色・エンベロープデータ
ROM132、音源回路134、音色制御回路1
36および音量制御回路138を含んでおり、図
示しないタイミング信号発生器から第12図に示
すようなタイミング信号φ,φAB等を受信して動
作するようになつている。ただし、第11図でタ
イミング信号φの記入は省略してある。 前述したようにリズムセツトの処理がなされる
と、パネルデータインターフエース62からリズ
ム制御回路130には3ビツトの楽器グループナ
ンバ信号IGNを含むリズム音制御信号PANが供
給される。S/P変換回路140はこの信号
IGNをパラレル信号に変換するとともにロード
信号LDを付加して楽器グループナンバレジスタ
142に供給する。このため、レジスタ142は
ロード信号LDに応じて楽器グループナンバ信号
IGNを記憶し、楽器ナンバROM144に供給す
る。 ROM144は、各楽器グループ毎に8つの楽
器に対応した楽器名データGSを記憶するもので、
これらのデータは、レジスタ142からの3ビツ
トの楽器グループナンバ信号IGNと、タイミン
グ信号φABを計数するチヤンネルカウンタ146
の3ビツトの計数出力とをアドレス信号として
ROM144から読み出されるようになつてい
る。 例えば楽器グループナンバ信号IGNの値が1
で、ワルツ、バラードのリズム種類を指定したと
すると、ROM144からはカウンタ146のカ
ウント値(チヤンネルナンバCHN)が0のとき
楽器名トツプシンバルを示す5ビツトのデータが
読み出され、このようなデータ読出はカウンタ1
46のカウント値が1,2,3…7と変化するに
つれて他の7つの楽器名についても同様に行なわ
れる。そして、カウンタ146が8チヤンネル
(8楽器)分の計数動作をくりかえすのに伴つて
ROM144からのデータ読み出しもくりかえさ
れる。 このROM144から読み出された楽器名デー
タGSは、レジスタ148のチヤンネルナンバ
CHNに対応するステージに書き込まれ、カウン
タ146の計数するチヤンネルナンバCHNと同
期して送出される。 リズムインターフエース58(第10図)か
ら、発音命令信号NKONを含む8楽器分のシリ
アルデータOPCがリズム制御回路130に供給
されると、このデータOPCはS/P変換・ラツ
チ回路150においてS/P変換され、一時記憶
される。 このS/P変換・ラツチ回路150に記憶され
た3ビツトの共通レベルデータLEVおよびピツ
チ制御データPITは、リズムインターフエース5
8からデータOPCとともに送出される同期信号
およびタイミング信号φABに応じてそれぞれレジ
スタ152の各チヤンネルナンバCHNに対応す
るステージに書き込まれ、カウンタ146の計数
動作と同期してチヤンネルごとに送出される。ま
た、発音命令信号NKONは、データOPCがS/
P変換・ラツチ回路150に記憶された後、カウ
ンタ146が最初に対応するチヤンネルナンバ
CHNを計数したとき回路150から送出される。 ROM132は、各楽器名毎にピツチ指定デー
タPIT0、音色指定データCLDおよびエンベロー
プ値データENVを記憶するもので、これらのデ
ータは、レジスタ148からの5ビツトの楽器名
データGSをアドレス信号としてROM132から
読み出されるようになつている。 音源回路134は、ROM132からの14ビツ
トのピツチ指定データPIT0にレジスタ152か
らの4ビツトのピツチ制御データPITを加算して
若干修正を加えたピツチに相当する周波数の正弦
波、三角波、矩形波または鋸歯状波等比較的単純
な音源波形のデータを発生する。 音色制御回路136において、音色補正データ
発生回路154は、レジスタ152からの3ビツ
トの共通レベルデータLEVとレジスタ148か
らの5ビツトの楽器名データGSとに基づき音色
補正データを出力する。 音色付加回路156は、ROM132からの音
色指定データCLDを音色補正データ発生回路1
4からの音色補正データで修正したデータによつ
て、音源回路134からの音源波形データを例え
ばFM変調して発音すべき打楽器音の周波数分布
を変化させる。 音量制御回路138において、エンベロープジ
エネレータ定数修正ROM158は、レジスタ1
48からの楽器名データGSとレジスタ152か
らの共通レベルデータLEVとをアドレス信号と
して音量修正データを出力する。 エンベロープジエネレータ160は、S/P変
換・ラツチ回路150から発音命令信号NKON
が入力したときクリアされるとともに、ROM1
32からのエンベロープ定数ENVをROM158
からの修正データに従つて修正したデータに基づ
いてエンベロープ値を演算する。 音量指定回路162は、例えば音色付加回路1
56からの音源波形データに音色を加味したデー
タとジエネレータ160からのエンベロープデー
タとS/P変換・ラツチ回路163に記憶された
音量制御信号TLVとと乗算することにより、音
源波形にエンベロープを付与するとともに打楽器
音の音量を決定する。 なお、上記音色補正データ発生回路154およ
びエンベロープジエネレータ定数修正ROM15
8は、第13図に示すような複数の共通レベルデ
ータLEV対音色・音量補正量ADJ特性のうち楽
器ごとに選定された特性に(例えば、同図のグラ
フのAまたはBのような特性)に従つた補正また
は修正データを発生するようになつている。 以上のように、このリズム音発生回路60にお
いては、楽器ごとに共通レベルデータLEVに基
づく音量レベルを補正するとともに、さらに音色
も共通レベルデータLEVに基づき補正している。 第14図は、リズム音発生回路60のさらに具
体的な回路例を示す。次にこのリズム音発生回路
60の詳細動作を説明する。 (リズム音発生回路60の具体例の動作説明) 第14図のリズム音発生回路60は、いわゆる
FM音源で、基本式 E(t)=A(t)sin{ωct +S・I(t)sinωmt} …(1) 但し、E(t):楽器音波形データ (サンプルデータ) A(t):振幅係数 ωc:搬送波各周波数 S:帰還係数 I(t):変調指数 ωm:変調波各周波数 で表わされる演算を音源種類(楽器名)ごとに設
定されているオペレーシヨンシーケンスに基づい
て6回行ない、上式中のS・I(t)sinωmtや
ωmtとして前回までの演算結果や定数等を適宜
選択して代入することにより種々のFM変調波形
を得るものである。 この実施例においては1つの打楽器音瞬時値に
ついて6回の演算を行ない、例えばスネアドラム
シヨツト音、スネアドラムブラツシユロール音等
を形成する場合は、 E0(t)=A4(t)sin[ω4t+A3(t)sin{ω3t+
A2(t)sin(ω2t +A1 *(t)sinω1t)}]+A6(t)sin(ω6t+A
5(t)sinω5t)…(2) また、クラベス音、カスタネツト音を形成する
場合は、 E0(t)=A6(t)sin[ω6t+A1 *(t)sinω1t±A
3(t)sin{ω3t +A2(t)sinω2t}+A5(t)sin{ω5t+A4(t
)sinω4t}]…(3) 但し、A1 *(t)sinω1tは自己帰還(すなわち
前回の演算結果を利用するので無限ネステイング
と同等の演算を行なうことができる) などの式で表わされる演算を行ない、各種の打楽
器音波形に相当するFM変調波形を得ている。 この回路60は、リズム制御回路170、演算
制御ROM172、角度データ演算部174、振
幅係数演算部176およびFM演算部178を含
んでおり、第11図の説明図におけると同様、図
示しないタイミング信号発生器から第12図に示
すようなタイミング信号φ、φAB等を受信して動
作するようになつている。但し、第14図でこれ
らのタイミング信号の記入は省略してある。な
お、このリズム音発生回路60においては、リズ
ム制御回路170内のチヤンネルカウンタ180
がタイミング信号φABのタイミングで発生する計
数値(チヤンネルナンバCHN)に対応してタイ
ミング信号φの1周期の時間(以下1ビツトタイ
ムという)幅で順次区切られるタイムスロツトご
とに8つの音源形成チヤンネルが時分割して形成
されるようになつている。また、オペレーシヨン
カウンタ182は、カウンタ180の発生するキ
ヤリア出力C0をカウントし、0〜7の8個のチ
ヤンネルナンバCHNが発生する8ビツトタイム
分の時間(以下1ワードタイムという)幅のワー
ドナンバWDNを発生する。そして、このリズム
音発生回路60は、チヤンネルナンバCHNに対
応する音源形成チヤンネルごとにワードナンバ
WDN0〜5に対応して6回の演算を行ない、6
ワードタイム(48ビツトタイム、以下1処理時間
という)ごとに1つの波形データを発生するよう
になつている。 前述したようにリズムセツトの処理がなされる
と、パネルデータインターフエース62からリズ
ム制御回路170には3ビツトの楽器グループナ
ンバ信号IGNを含むリズム音制御信号PANが供
給される。この信号IGNは、S/P変換回路1
84でパラレル信号に変換された後レジスタ18
6に記憶され、レジスタ186から楽器ナンバ
ROM188に供給される。 ROM188は、レジスタ186からの3ビツ
トの楽器グループナンバ信号IGNとタイミング
信号φABを計数するチヤンネルカウンタ180の
3ビツトの計数出力(チヤンネルナンバ)とでア
ドレスされ、各楽器グループ毎に8つの楽器に対
応した楽器名データGSを各チヤンネルナンバ0
〜7に対応して順次出力する。 リズムインターフエース58(第10図)か
ら、発音命令を含む8楽器分のシリアルデータ
OPCがリズム制御回路170に供給されると、
このデータOPCはS/P変換・ラツチ回路19
0においてS/P変換され、一時記憶される。 ここで、簡単のため、この8楽器分のシリアル
データOPCが前述の楽器グループナンバ1のス
ネアドラムブラツシユロールSDB(チヤンネルナ
ンバ5)についてのみ発音命令を含んでいるもの
とすると、S/P変換・ラツチ回路190からは
チヤンネルナンバ5のタイミングで発音命令信号
NKON=“1”が送出され、チヤンネルナンバ0
〜4および6〜7のタイミングでは信号NKON
としていずれも“0”が送出される。 この信号NKONは、セレクタ192および1
94に入力Aを選択するための信号SAとして供
給される。このため、8ステージ/5ビツトのシ
フトレジスタ196にはROM188から5ビツ
トの楽器名データGSが、8ステージ/7ビツト
のシフトレジスタ198にはS/P変換・ラツチ
回路190から7ビツトのピツチ・レベル制御デ
ータがそれぞれ供給される。シフトレジスタ19
6および198はそれぞれタイミング信号φAB
応じてチヤンネルナンバ5に対応したステージに
供給データを取り込み、順次シフトする。 セレクタ192および194はそれぞれシフト
レジスタ196および198へのデータ供給の後
信号NKON=“0”によりそれぞれ入力Bを選択
する状態になり、シフトレジスタ196および1
98の内容はそれぞれセレクタ192および19
4を介して循環的に記憶される。 シフトレジスタ196から時分割的に送出され
る各チヤンネルナンバに対応した5ビツトの楽器
名指定信号GSは演算制御ROM172に供給され
る。 ROM172は、各楽器名毎にオペレーシヨン
カウンタ182の計数出力(ワードナンバ
WDN)0〜5にそれぞれ対応する各6個のピツ
チ指定データPIT0、エンベロープジエネレータ
定数データEG、アベレージヤデータAVE、結線
制御データGC1〜GC7およびレベルアジヤスト
データLVADを記憶するもので、これらのデー
タは、シフトレジスタ196からの5ビツトの楽
器名指定信号GSと、カウンタ182からのワー
ドナンバWDNとをアドレス信号としてROM1
72から読み出されるようになつている。例え
ば、シフトレジスタ196からチヤンネルナンバ
5に対応した5ビツトのスネアドラムブラツシユ
ロールSDBを表わす信号GSが入力すると、その
たびにROM172からFM演算部178におい
てスネアドラムブラツシユロールの波形を演算出
力するのに必要なデータPIT0、EG、AVE、CG
1〜7およびLVADがカウンタ182のカウン
トするワードナンバWDNに応じて順次読み出さ
れる。 ROM172からの14ビツトのピツチ指定デー
タPIT0は、加算回路200においてシフトレジ
スタ198からの4ビツトのピツチ制御データ
PITを加算され、若干修正される。このため、加
算器200からは1音毎に音の高低を加味したピ
ツチ指定データが位相データROM202にアド
レス信号として供給される。ROM202は、こ
のピツチ指定データを角周波数データωに変換す
る。 アキユムレータ204は、(チヤンネル数)×
(ワード数)=48個の演算回路を含み、各演算回路
毎に各チヤンネルナンバCHN毎、ワードナンバ
WDN毎の角度データωtが演算されるようになつ
ており、リズム制御回路170が信号NKON=
“1”を送出すると、チヤンネルナンバ5に対応
する6個の演算回路に初期値π/2が設定され、
以後、カウンタ180がチヤンネルナンバ5を計
数するたびに、これら6個の演算回路のうちその
時のカウンタ182の計数するワードナンバ
WDNに対応する回路で角周波数ωと信号NKON
=“1”発生後の経過時間tとの積としての角度
データωtを算出してFM演算部178に供給す
る。 振幅係数演算部176は、FM演算部178で
演算すべき楽器音のアタツク、デイケイおよびリ
リースなどの各時点における振幅係数(または変
調指数)A(t)を、ROM172から各楽器名
について各ワード毎に供給されるエンベロープジ
エネレータ定数データEGに基づいて発生する。 前述のようにリズム制御回路170が信号
NKON=“1”を送出すると、状態制御回路20
6は、48ステージ2ビツトのシフトレジスタ20
8にアタツク状態を示すデータ01を該当するチヤ
ンネルの6つのステツプに対応して1ワードタイ
ムごとに1ビツトタイムずつ6回送出する。この
ため、シフトレジスタ208は、タイミング信号
φABに応じてチヤンネルナンバ5に対応する6つ
のステージに状態データADR=01を取り込み、
順次シフトする。この状態データADRはセレク
タ210に供給される。 セレクタ210は、演算制御ROM172から
アタツクA、デイケスDおよびリリースRの3つ
の状態の傾斜および最終レベルを示す各3ワード
分のレートデータRATEおよびレベルデータ
LEV0からなるエンベロープデータEGが供給され
ており、シフトレジスタ208から選択入力端子
に供給される状態データADR=01に従いアタツ
ク時用のデータRATEおよびLEV0を出力する。 比較器212は、セレクタ210の出力データ
LEV0(A)と48ステージ/6ビツトシフトレジ
スタ214の出力データ(B)とを比較してA>
Bのときレベル“1”、A<Bのときレベル“0”
の比較信号を発生するとともに、A=Bのとき等
値信号EQを発生する。 シフトレジスタ214は演算回路216の出力
を1つの波形データE(t)を演算するのと同じ
時間すなわち6ワードタイム(1処理時間)遅延
して出力し、演算回路216は、比較器212の
出力する比較信号が“1”か“0”かに従つてシ
フトレジスタ214の出力にセレクタ210の出
力するレートデータRATEを順次加算(比較信
号=“1”)または減算(比較信号=“0”)する。
このため、シフトレジスタ214の各ステージに
は楽器名およびワードナンバごとにレートデータ
RATEの累算値が一時記憶される。そして、ア
タツク状態においてはA>Bであるから、シフト
レジスタ214のチヤンネルナンバ5に対応する
8ステージごとに6つのステージにそれぞれワー
ドナンバWDNに対応してROM172から供給
されるアタツクレートデータが順次加算される。 シフトレジスタ214の出力(B)が、セレク
タ210の出力LEV0(A)と等しくなると、比
較器212は等値信号EQ=“1”を状態制御回路
206に送出する。このため回路206は、シフ
トレジスタ208のチヤンネルナンバ5に対応す
る6つのステージの内容を歩進し、次のデイケイ
状態を示すデータADR=10に変更する。従つて
セレクタ210はデイケイレートデータおよびデ
イケイレベルデータを送出し、今度はA<Bであ
るから比較器212は比較信号“0”を送出し、
演算回路216はシフトレジスタ214の出力か
らデイケイレートデータを減産してシフトレジス
タ214に送出する。次にシフトレジスタ214
の出力データ値(B)が減少してセレクタ210
の出力するデイケイレベルデータ値(A)に等し
くなると、比較器212は再び等値信号EQを発
生し、このため、状態制御回路206は、シフト
レジスタ208のチヤンネルナンバ5に対応する
6つのステージの内容を歩進し、シフトレジスタ
208はリリース状態を示す状態データADR=
11を発生する。以下、同様にして、セレクタ21
0はリリースレートデータとリリースレベルデー
タを送出し、演算回路216は、比較器212の
出力“0”に基づいて、シフトレジスタ214の
出力がリリースレートデータを減産し、シフトレ
ジスタ214の出力がリリースレベルデータに等
しくなると比較器212が等値信号EQを発発生
し、シフトレジスタ208の内容は更に歩進され
て楽音停止状態を示すデータADR=00が書き込
まれる。 以上のようにして演算回路216で演算され、
シフトレジスタ214の各ステージごとに書き込
まれたデータは48ビツトタイムごとに加算回路2
18に送出される。 ダイナミツクレベル特性ROM220は楽器種
類ごと、6つのワードナンバWDNごとに共通レ
ベルデータLEVに対応する振幅係数(音量)ま
たは変調係数(音色)補正データが格納されてい
るもので、ROM172からの楽器種類および演
算ステツプごとのレベルアジヤストデータ
LVADとシフトレジスタ198からの共通レベ
ルデータLEVをアドレス入力として第13図に
示すような複数種類の補正特性のうち楽器ごとに
設定された特性に基づく補正データADJが読み
出されるようになつている。この補正データ
ADJは加算回路218に供給される。 S/P変換・ラツチ回路222はパネルデータ
インターフエース62(第1図)からの音量制御
信号TLVをS/P変換し、一時記憶するととも
に、この音量制御信号TLVを加算回路218に
供給するようになつている。 加算回路218はシフトレジスタ214からの
エンベロープデータと、ROM220からの音
量・音色補正データADJとS/P変換・ラツチ
回路222からの音量制御信号TLVとを加算す
るもので、これによつて共通レベルデータLEV
と楽器音量との関係を楽器種類ごとに調整するこ
とが可能となる。また、この加算回路222にお
いては、ボリユーム22によるトータル音量制御
も行なわれる。この加算回路222からの楽器ご
とワードナンバごとの振幅係数A(t)は、FM
演算部178に供給される。 FM演算部178は、ROM172の出力する
結線制御信号CG1〜CG7等で指定される演算式
に従い角度データ演算部174の出力する角度デ
ータωtと振幅係数演算部176の出力する振幅
係数A(t)とを用いて楽器音波形データ(サン
プル値)E(t)を演算する。加算回路228は、
A,B2個の入力端子を有し角度データ演算部1
74からA端子に入力する角度データωtとセレ
クタ230からB端子に帰還される帰還データG
(t)とを加算する。サインテーブル232は加
算回路228の出力ωt+G(t)をsin{ωt+G
(t)}(対数値)に変換する。加算回路234は
それぞれ対数値で入力するsin{ωt+G(t)}と振
幅係数A(t)とを加算し、対数−真数変換
ROM236は加算回路234の出力を真数に変
換して演算データ E(t)=A(t)sin{ωt+G(t)} …(4) を出力する。遅延回路238はROM236の出
力すなわち演算データE(t)を次回の演算に供
するために1ワードタイム遅延させる。ゲート回
路240,242、加算回路244および遅延回
路246はダイナミツクメモリを構成し、ゲート
240および242がオフのときは記憶内容がク
リアされ、ゲート242のみがオンのときは記憶
はそのまま保持され、ゲート240および242
の双方共オンのときは記憶内容にさらにゲート2
40を介して入力する新たな演算データE(t)
を加算して記憶する。またゲート240のみがオ
ンのときは記憶内容は新たな演算データE(t)
により更新される。 ゲート248、遅延回路250、加算回路25
2およびシフタ254は帰還回路を構成し、セレ
クタ230で加算回路228のB端子への帰還入
力としてこの帰還回路の出力Fが選択されたと
き、このFM演算部178は、自己帰還による無
限ネステイングの演算回路として動作する。遅延
回路250は48ステージ10ビツトのシフトレジス
タよりなり演算データを1処理時間遅延して出力
する。加算回路252およびシフタ254は1処
理時間前の演算データと各瞬時の演算データとを
平均して自己帰還時のハンチングを防止してい
る。また、シフタ254は演算制御ROM172
の出力するアベレージヤーデータAVEに基づき
1桁以外のシフトも行ない、自己帰還量すなわち
演算式の帰還係数Sの指定も行なつている。 アキユームレータ256は、演算制御ROM1
74が“1”レベルのゲート制御信号GC7を発
生したとき演算データE(t)を取り込み、ワー
ドナンバ0、チヤンネルナンバ0からワードナン
バ5、チヤンネルナンバ7までの各1処理時間内
に入力する演算データをチヤンネルごとに加算す
る。 なお、上記の遅延回路238,246,250
における遅延ビツト数は、加算回路228,23
4等に時間遅れがないものと仮定した場合のもの
であり、実際には加算回路等の遅延があるため、
この遅延ビツト数を減少することにより遅延時間
を調節している。 第15図aおよびbはそれぞれ式(2)および(3)の
演算を図解したものである。同図において、OP
はサインテーブル236を読み出して演算するこ
とを示し、付番は演算が行なわれるワードナンバ
を示す。Xは自己帰還による演算を示し、+は演
算データを加算することを示す。 [例 1] 前述のように、このリズム音発生回路60にス
ネアドラムブラツシユロールSDB音の発音命令
信号NKONが入力すると、このSDB音は(2)式の
FM演算より合成される。なお、チヤンネル0〜
4および6〜7のA(t)は0であり、従つて波
形データE(t)も0であるから、以下において
はチヤンネルナンバCHN=5のタイムスロツト
についてのみ説明する。また、ワードナンバ
WDNに対応する演算ステツプn=WDN+1に
おける位相データω、振幅係数A(t)および演
算データE(t)をそれぞれωn、An(t)および
En(t)で表わすものとする。 第1ステツプにおいてROM172はレベル
“1”の結線制御信号GC3,GC6を発生し、シ
フタ252の出力Fを加算回路228のB端子に
帰還する。従つてFM演算部178は加算回路2
28、サインテーブル232、加算回路234、
ROM236、加算回路252、シフタ254お
よびセレクタ230を介して加算器232に至る
リアルタイムの閉ループが構成され、自己帰還に
よつて E1(t)=A1 *(t)sinω1t=A1(t)sin(ω1t+A
1sin (ω1t+A″1sin(ω1t+……)…) …(5) なる無限ネステイングと同等の演算を行なう。な
お、この閉ループにおいては加算回路252とシ
フタ254とにより第1ステツプ内の各瞬時演算
データと1処理時間前の演算データとの平均値を
得るとともにこの平均値をさらにシフタ254で
レベル調整したデータを帰還することによつて自
己帰還時のFM演算部178のハンチングを防止
している。 次に第2ステツプにおいては結線制御信号GC
4のみを“1”にして遅延回路238の出力Qす
なわち1ワードタイム前の演算データE1(t)を
加算回路228のB端子に帰還する。従つて(4)式
においてG(t)=E1(t)を代入した E2(t)=A2(t)sin{ω2t +A1 *(t)sinω1t} …(6) が得られる。 第3ステツプにおいても同様に結線制御信号
GC4のみを“1”にしてG(t)=E2(t)を帰還
し、 E3(t)=A3(t)sin{ω3t+A2(t)sin(ω2t+
A1 *(t)sinω1t)}…(7) を得、第4ステツプにおいては同様に結線制御信
号GC4を“1”にしてG(t)=E3(t)を帰還
し、 E4(t)=A4(t)sin[ω4t+A3(t)sin{ω3t+
A2(t)sin(ω2t +A1 *(t)sinω1(t))}] …(8) を得るとともに結線制御信号GC7を“1”にし
てこの演算データE4(t)をアキユームレータ2
56に格納する。 第5ステツプにおいては結線制御信号GC1〜
7全部を“0”にする。従つて帰還データG(t)
=0となり、演算データE5(t)は(4)式にG(t)
=0を代入した。 E5(t)=A5sinω5t …(9) が得られる。第6ステツプにおいては結線制御信
号GC4を“1”にしてG(t)=E5(t)を帰還し
て E6(t)=A6(t)sin(ω6t +A5(t)sinω5t) …(10) を得るとともに、結線制御信号GC7を“1”に
してこの演算データE6(t)をアキユームレータ
256に入力し、第4ステツプにおいて格納され
た演算データE4(t)と加算した値E4(t)+E6
(t)すなわち式(2)の演算データE0(t)を算出
する。このデータE0(t)はリズム音信号RTSと
してD/A変換器52(第1図)に供給される。 上記したのは、最初の発音タイミングにおける
1音の波形データ算出・音量制御動作であるが、
同時に複数の発音命令信号が発生した場合や、1
ないし複数音の発生中にさらに1ないし複数の発
音命令信号が発生した場合にも同様にして複数音
(最大で8音)の波形データ算出・音量制御動作
がなされる。この場合、各演算装置およびROM
等は各チヤンネルナンバに対応するタイムスロツ
トごとに時分割的に共用される。 [例 2] 次に(3)式を実現する場合について説明する。 第1ステツプにおいては例1の第1ステツプと
同様に結線制御信号GC6を“1”にして E1(t)=A1 *(t)sinwit …(11) を得るとともに結線制御信号GC1を“1”にし
てこの演算データE1(t)を加算回路244、遅
延回路246およびゲート回路242からなるダ
イナミツクメモリに格納する。 第2および第3ステツプにおいては例1の第5
および第6ステツプと同様にして E3(t)=A3(t)sin(ω3t +A2(t)ω2t …(12) を得るとともにこの第3ステツプにおいてはさら
に結線制御信号GC1およびGC2を“1”にして
上記ダイナミツクメモリに格納されている演算デ
ータE1(t)にさらに第3ステツプで得られた演
算データE3(t)を加算する。なお、第1ステツ
プで格納された演算データを上記ダイナミツクメ
モリに記憶させておくため第2ステツプにおいて
は結線制御信号GC2を1”にする。 第4および第5ステツプにおいても上記第2お
よび第3ステツプの手順を繰り返して演算データ E5(t)=A5(t)sin(ω5t +A4(t)sinω4t) …(13) を得るとともにこの演算データE5(t)を上記ダ
イナミツクメモリに加算する。 第6ステツプにおいては結線制御信号GC5を
“1”にして加算回路228のB端子に上記ダイ
ナミツクメモリの出力Mを帰還する。従つて(4)式
においてG(t)=E1(t)+E3(t)+E5(t)を代
入した演算データ E6(t)=sin[ω6t+A1 *(t)sinω1t±A3(t)s
in{ω3t +A2(t)sinω2t}+A5(t)sin{ω5t+A4(t
)sinω4t}]…(14) すなわち式(3)が得られる。この第6ステツプにお
いてはさらに結線制御信号GC7を“1”にして
おり、上記演算データE6(t)は、アキユームレ
ータ256を介してリズム音信号RTSとして
D/A変換器52(第1図)に送出される。 なお、このリズム音発生回路60においては音
色および音量の制御動作は渾然としてなされるも
のであり、第11図の説明図におけるように必ず
しも明確に区別することはできないが、目安とし
て、例2の第6ステツプにおいては音量制御動
作、例1の第4および6ステツプにおいては音量
および音色制御動作、例1および例2の他のステ
ツプにおいては音色制御動作がなされるものと考
えてよいであろう。 なお、この実施例においてはROM188から
楽器名のみを読み出すようにしているが、さらに
楽器のノイズ系、ドラム系の別を示すバランスデ
ータBAL、その楽器の発音スピーカが中央か左
かを区別するスピーカチヤンネルデータCHA等
を読み出すようにすることもできる。バランスデ
ータBALは、例えば、パネル12にバランスボ
リウムを追加し、このバランスボリウムからのノ
イズ系音量データまたはドラム系音量データと組
み合わせることによりノイズ系楽器とドラム系楽
器のバランスを設定するために用いられる。 以上のようにこの発明によると、共通レベルデ
ータに基づいてリズム音(楽器音)の音量や音色
などの楽音パラメータを補正制御するとともにこ
れらの楽音パラメータの補正量をリズム音ごと
(楽器音ごと)に設定しているため、リズム音ご
と細かい音量データや音色データをもつ必要がな
くパターン記憶用のメモリ量は少なくてすみメモ
リ効率が極めて良い。また、リズム音の各音源種
類ごとの細かに制御が可能であり、演奏の強弱に
よる音量や音色などの楽音特性の変化を、より実
際の楽器演奏に近付けることができ、より豊かな
リズム音を発生することができる。
【図面の簡単な説明】
第1図は、この発明の1実施例による自動リズ
ム演奏装置を備えた電子楽器のブロツク図、第2
図は、第1図の楽器のパネルにおけるリズム用操
作子の配置図、第3図は、第1図の電子楽器にお
けるリズムパターンメモリに格納されたデータの
フオーマツトを示す図、第4図は、第1図の楽器
におけるシリアルリズムデータのフオーマツトを
示す図、第5図は、第1図の電子楽器の動作を説
明するためのフローチヤート、第6図は、リズム
セツト処理のサブルーチンを示すフローチヤー
ト、第7図は、割込処理を示すフローチヤート、
第8図は、リズム音発生データ出力処理のサブル
ーチンを示すフローチヤート、第9図は、データ
出力処理のサブルーチンを示すフローチヤート、
第10図は、第1図におけるリズムインターフエ
ースの詳細ブロツク構成図、第11図は、第1図
におけるリズム音発生回路の動作を説明するため
のブロツク図、第12図は、第11図のリズム音
発生回路を動作させるためのタイミング信号のタ
イムチヤートを示す図、第13図は、この発明に
おける共通レベルデータ対音色・音量補正特性を
表わすグラフ、第14図は、この発明に用いられ
るリズム音発生回路のさらに具体的なブロツク構
成図、第15図は、第14図の回路におけるFM
演算部の演算処理チヤート図である。 36…CPU、42…リズムパターンメモリ、
60…リズム音発生回路、130…リズム制御回
路、132…基本ピツチ・音色・エンベロープデ
ータROM、134…音源回路、136…音色制
御回路、138…音量制御回路、154…音色補
正データ発生回路、156…エンベロープジエネ
レータ定数修正ROM、170…リズム制御回
路、172…演算制御ROM、174…角度デー
タ演算部、176…振幅係数演算部、178…
FM演算部、220…ダイナミツクレベル特性
ROM。

Claims (1)

  1. 【特許請求の範囲】 1 複数種類のリズム音ごとの発音タイミングデ
    ータ、および前記複数種類のリズム音に対して共
    通に設定され複数段階あるレベル制御態様のうち
    の所望の段階を表す共通レベルデータを含むリズ
    ムパターンデータを記憶しているパターンメモリ
    と、 このパターンメモリを前記発音タイミングデー
    タに従い所定のテンポで読み出して、前記リズム
    パターンデータに基づく複数のリズム音を発生す
    るリズム音読出発生手段と、 前記共通レベルデータに対応する、前記各リズ
    ム音ごとの補正データを記憶するレベル記憶手段
    と、 を備え、前記リズム音読出発生手段は、前記レ
    ベル記憶手段から読み出された補正データに基づ
    いて、発生するリズム音の楽音パラメータを補正
    制御することを特徴とする自動リズム演奏装置。 2 前記補正データにより補正制御されるリズム
    音の楽音パラメータが、音量あるいは音色である
    特許請求の範囲第1項記載の自動リズム演奏装
    置。
JP57166158A 1982-09-24 1982-09-24 自動リズム演奏装置 Granted JPS5955492A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP57166158A JPS5955492A (ja) 1982-09-24 1982-09-24 自動リズム演奏装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP57166158A JPS5955492A (ja) 1982-09-24 1982-09-24 自動リズム演奏装置

Publications (2)

Publication Number Publication Date
JPS5955492A JPS5955492A (ja) 1984-03-30
JPH0241758B2 true JPH0241758B2 (ja) 1990-09-19

Family

ID=15826137

Family Applications (1)

Application Number Title Priority Date Filing Date
JP57166158A Granted JPS5955492A (ja) 1982-09-24 1982-09-24 自動リズム演奏装置

Country Status (1)

Country Link
JP (1) JPS5955492A (ja)

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS516525A (ja) * 1974-07-05 1976-01-20 Sony Corp
JPS6025100Y2 (ja) * 1977-10-26 1985-07-27 ブラザー工業株式会社 自動リズム演奏装置

Also Published As

Publication number Publication date
JPS5955492A (ja) 1984-03-30

Similar Documents

Publication Publication Date Title
JPS6367193B2 (ja)
JPH0584920B2 (ja)
US4619176A (en) Automatic accompaniment apparatus for electronic musical instrument
JPH0241758B2 (ja)
JPH0769698B2 (ja) 自動伴奏装置
US4920849A (en) Automatic performance apparatus for an electronic musical instrument
JP2572318B2 (ja) 自動演奏装置
JPH0559438B2 (ja)
JP2518356B2 (ja) 自動伴奏装置
JPH021316B2 (ja)
JP3609045B2 (ja) 自動演奏装置
JP2972362B2 (ja) 音楽的制御情報処理装置、音楽的制御情報処理方法、演奏パターン選択装置及び演奏パターン選択方法
JP2943560B2 (ja) 自動演奏装置
JP2513003B2 (ja) 電子楽器
JP3064738B2 (ja) 伴奏パターン選択装置
JPH0581915B2 (ja)
JP2619237B2 (ja) 電子楽器の自動伴奏装置
JP3097382B2 (ja) 和音検出装置
JP3324881B2 (ja) 自動演奏装置
JPH07104753A (ja) 電子楽器の自動調律装置
JP2005010458A (ja) 自動アルペジオ装置および同装置に適用されるコンピュータプログラム
JP2964498B2 (ja) 電子楽器のエンベロープ波形発生器
JPH01319794A (ja) 電子楽器
JPH073639B2 (ja) オ−トリズム装置
JPH037959B2 (ja)