JP2613788B2 - 楽音発生装置 - Google Patents

楽音発生装置

Info

Publication number
JP2613788B2
JP2613788B2 JP63086124A JP8612488A JP2613788B2 JP 2613788 B2 JP2613788 B2 JP 2613788B2 JP 63086124 A JP63086124 A JP 63086124A JP 8612488 A JP8612488 A JP 8612488A JP 2613788 B2 JP2613788 B2 JP 2613788B2
Authority
JP
Japan
Prior art keywords
address
sample data
read
reading
waveform sample
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
JP63086124A
Other languages
English (en)
Other versions
JPS63289594A (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 JP63086124A priority Critical patent/JP2613788B2/ja
Publication of JPS63289594A publication Critical patent/JPS63289594A/ja
Application granted granted Critical
Publication of JP2613788B2 publication Critical patent/JP2613788B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Description

【発明の詳細な説明】 〔産業上の利用分野〕 この発明は、外部から入力された音信号をサンプリン
グしてメモリに記憶し、その後このメモリに記憶した波
形サンプルデータを鍵操作等に応じて所望の音高で読み
出すことにより楽音を発生するようにしたサンプリング
方式の楽音発生装置に関し、特に、メモリに記憶した波
形サンプルデータを最初は逆方向に読み出し次に続いて
順方向に読み出すことにより、新しい演奏効果を実現し
得るようにした楽音発生装置に関する。
〔従来の技術〕
サンプリング方式の楽音発生装置として、従来は例え
ば特公昭61-47435号公報に示されたものがある。そこで
は、サンプリングした複数周期の波形データを繰返し読
み出すことが開示されている。その場合、該波形データ
の最初と最後に対応してスタートアドレスと終了アドレ
スを検出し、スタートアドレスから読出しを開始して終
了アドレスまで到達したとき再びスタートアドレスに戻
って読出しを繰返すようにしている。従って、外部から
サンプリングした音信号を再生発音する場合、サンプリ
ングした音信号を繰返し発音することはできても、サン
プリングしたときの時間順序に従って当り前に発音する
ことしかできなかった。
〔発明が解決しようとする問題点〕
上述のように従来のサンプリング方式の楽音発生装置
においては、メモリに記憶した波形データを順方向に1
回読み出したり、順方向に何回も繰返し読み出すことは
可能であったが、その他の多様なバリエーションでサン
プリング音に基づく楽音を発音することはできなかっ
た。
この発明は上述の点に鑑みてなされたもので、メモリ
に記憶した波形サンプルデータを最初に逆方向に1回読
み出した後続いて順方向に1回読み出すことからなるシ
ーケンスを少なくとも1回行うことにより新規な演奏効
果を実現するようにした楽音発生装置を提供しようとす
るものである。また、この発明は、メモリに記憶した波
形サンプルデータを最初に順方向に1回読み出した後続
いて逆方向に1回読み出すことからなるシーケンスを少
なくとも1回行うことにより新規な演奏効果を実現する
ようにした楽音発生装置を提供しようとするものであ
る。更に、この発明は、メモリの特殊な読出し態様を選
択するための選択手段による選択状態を即座にキャンセ
ルすることができるようにした楽音発生装置を提供しよ
うとするものである。
〔問題点を解決するための手段〕
この発明に係る楽音発生装置は、外部から入力された
音信号をサンプリングする外部音サンプリング手段と、
波形サンプルデータを記憶する読み書き可能な記憶手段
と、前記外部音サンプリング手段でサンプリングされた
音信号の波形サンプルデータを前記記憶手段に書き込む
書込み制御手段と、1つの楽音を発生すべきときに、最
初に前記記憶手段の波形サンプルデータを前記書込み時
のアドレス順序とは逆方向に読み出し、続いて該記憶手
段の波形サンプルデータを前記書込み時のアドレス順序
に順方向に読み出すことからなるシーケンスを少なくと
も1回行う読出し制御手段と、前記読出し制御手段にお
いて前記シーケンスを1回のみ行うかまたは複数回繰返
し行うかを選択する選択手段とを具え、1つの楽音発生
指示に応答して、前記逆方向に読み出された波形サンプ
ルデータと前記順方向に読み出された波形サンプルデー
タとを接続してなる部分を含む1つの楽音信号が発生さ
れることを特徴とするものである。
これを図によって示すと、第1図のようであり、1が
外部音サンプリング手段、2が記憶手段、3が書込み制
御手段、4が読み出し制御手段、である。この発明の別
の目的を達成する楽音発生装置は、外部から入力された
音信号をサンプリングする外部音サンプリング手段と、
波形サンプルデータを記憶する読み書き可能な記憶手段
と、前記外部音サンプリング手段でサンプリングされた
音信号の波形サンプルデータを前記記憶手段に書き込む
制御手段と、1つの楽音を発生すべきときに、最初に前
記記憶手段の波形サンプルデータを前記書込み時のアド
レス順序とは順方向に読み出し、続いて該記憶手段の波
形サンプルデータを前記書込み時のアドレス順序に逆方
向に読み出すことからなるシーケンスを少なくとも1回
行う読出し制御手段と、前記読出し制御手段において前
記シーケンスを1回のみ行うかまたは複数回繰返し行う
かを選択する選択手段とを具え、1つの楽音発生指示に
応答して、前記順方向に読み出された波形サンプルデー
タと前記逆方向に読み出された波形サンプルデータとを
接続してなる部分を含む1つの楽音信号が発生されるこ
とを特徴とするものである。
この発明の更に別の目的を達成する楽音発生装置は、
外部から入力された音信号をサンプリングする外部音サ
ンプリング手段と、波形サンプルデータを記憶する読み
書き可能な記憶手段と、前記外部音サンプリング手段で
サンプリングされた音信号の波形サンプルデータを前記
記憶手段に書き込む制御手段と、前記記憶手段に記憶し
た波形サンプルデータを順方向に読み出し、その後続け
て該波形サンプルデータを逆方向に読み出すことを選択
するUターン読出し選択手段を、前記記憶手段に記憶し
た波形サンプルデータを逆方向に読み出すことを選択す
るリバース読出し選択手段と、前記各選択手段による個
別の選択に応じて前記記憶手段の読み出しを制御すると
共に、前記各選択手段によりUターン読出しとリバース
読出しが同時に選択されたときは、波形サンプルデータ
を最初に逆方向に読み出しその後続けて該波形サンプル
データを順方向に読み出すよう前記記憶手段の読み出し
を制御する読出し制御手段と、前記Uターン読出し選択
手段及びリバース読出し選択手段の各選択状態を初期状
態に復帰させるキャンセル手段とを具えるものである。
〔作用〕
外部から入力された音信号は外部音サンプリング手段
1によってサンプリングされ、サンプリングされた該音
信号の波形サンプルデータは書込み制御手段3の制御に
より記憶手段2に書き込まれる。読出し制御手段4で
は、楽音を発生すべきときに、最初に記憶手段2の波形
サンプルデータを書込み時のアドレス順序とは逆方向に
読み出し、続いて該記憶手段2の波形サンプルデータを
書込み時のアドレス順序に順方向に読み出すことからな
るシーケンスを少なくとも1回行う。選択手段によっ
て、前記読出し制御手段4における前記シーケンスを1
回のみ行うかまたは複数回繰返し行うかを選択すること
が可能である。記憶手段2から読み出された波形サンプ
ルデータに対応する楽音信号が発音される。
これにより、1つの楽音発生指示に応答して、サンプ
リングした外部音の波形サンプルデータを時間的に逆方
向に並べ替えた波形データとこれを時間的に順方向に並
べ直した波形データとを接続したものが1つの楽音信号
として発生されることになり、特殊な演奏効果を実現す
る楽音信号を楽音発生指示に対応して得ることができ
る、という優れた効果を奏する。また、そのようなシー
ケンスを1回のみ行うかまたは複数回繰返し行うかを選
択できるようにしたことにより、この選択に応じて異な
る態様で楽音を発生することができるものであり、1つ
のサンプリング音を基にして多様なバリエーションで楽
音を発生することができるようになる、という優れた効
果を奏する。特に、上記シーケンスを1回のみ行うこと
を選択した場合は、鍵押圧操作等による楽音発生指示を
続けていたとしても、1回のシーケンスが終われば消音
状態とすることができ、一方、上記シーケンスを複数回
繰返し行うことを選択した場合は、鍵押圧操作等による
楽音発生指示を続けている限り発音を継続する持続音的
な楽音発生態様とすることができるものであり、こうし
て、この選択を適宜行うことにより、演奏する曲想に合
わせた楽音発生態様とすることができる、という効果を
奏する。
更に、この発明によれば、上記とは逆に、1つの楽音
発生指示に応答して、サンプルングした外部音の波形サ
ンプルデータを時間的に順方向に読み出した波形データ
とこれを時間的に逆方向に並べ替えて読み出した波形デ
ータとを接続したものを1つの楽音信号として発生する
こともでき、これによっても特殊な演奏効果を実現する
楽音信号を楽音発生指示に対応して得ることができる、
という優れた効果を奏する。また、上記と同様に、その
ようなシーケンスを1回のみ行うかまたは複数回繰返し
行うかを選択できるようにしたことにより、この選択に
応じて異なる態様で楽音を発生することができるもので
あり、1つのサンプリング音を基にして多様なバリエー
ションで楽音を発生することができるようになる、とい
う優れた効果を奏する。すなわち、上述と同様に、上記
シーケンスを1回のみ行うことを選択した場合は、鍵押
圧操作等による楽音発生指示を続けていたとしても、1
回のシーケンスが終われば消音状態とすることができ、
一方、上記シーケンスを複数回繰返し行うことを選択し
た場合は、鍵押圧操作等による楽音発生指示を続けてい
る限り発音を継続する持続音的な楽音発生態様とするこ
とができるものであり、こうして、この選択を適宜行う
ことにより、演奏する曲想に合わせた楽音発生態様とす
ることができる、という効果を奏する。
更に、この発明によれば、記憶手段に記憶した外部音
の波形サンプルデータを順方向に読み出し、その後続け
て該波形サンプルデータを逆方向に読み出すこと(すな
わち「Uターン読出し」)を選択するUターン読出し選
択手段と、記憶手段に記憶した波形サンプルデータを逆
方向に読み出すこと(すなわち「リバース読出し」)を
選択するリバース読出し選択手段とを有しており、これ
ら各選択手段による個別の選択に応じて前記記憶手段の
読み出しを「Uターン読出し」または「リバース読出
し」によって制御することができるのみならず、これら
選択手段によりUターン読出しとリバース読出しが同時
に選択されたときは、波形サンプルデータを最初に逆方
向に読み出しその後続けて該波形サンプルデータを順方
向に読み出すよう前記記憶手段の読み出しを制御するこ
とができるので、多様な態様で特殊な演奏効果を実現す
る楽音信号を得ることができる。しかも、Uターン読出
し選択手段及びリバース読出し選択手段の各選択状態を
初期状態に復帰させるキャンセル手段を具えたことによ
り、記憶手段の読出し態様が上記各選択手段によってど
のような状態に選択されていようとも、即座に所定の初
期状態に戻すことができるので、特に、演奏中において
楽音発生態様を基本の初期状態に即座に戻したい場合な
どに有効であり、演奏性を格段に向上させることができ
る、という優れた効果を奏する。
実施例においては、逆方向読出しと順方向読出しとか
らなる前記シーケンスを1回のみ行うかまたは複数回繰
返し行うかの選択が可能である。該シーケンスを1回の
み行うことを以下では「Uターン・リバース」という。
また、該シーケンスを複数回繰返し行うことを以下では
「Uターン・リバース・ループ」という。「Uターン・
リバース・ループ」によれば、上記「Uターン・リバー
ス」を何回も繰返して新しい演奏効果を実現することが
できる。
〔実施例〕
以下、添付図面を参照してこの発明の実施例を詳細に
説明しよう。
第2図はこの発明に係る楽音発生装置を適用した電子
楽器の一実施例のハード構成を示すもので、この実施例
の電子楽器においてはCPU(中央処理ユニット)11、プ
ログラムROM(リードオンリーメモリ)12及びデータ及
びワーキングRAM(ランダムアクセスメモリ)13を含む
マイクロコンピュータ部によって各種の動作や処理が制
御される。鍵盤14は、楽音の音高を指定するための複数
の鍵を具えている。
操作パネル部15には、外部音のサンプリング動作及び
読出し動作を制御するためのサンプリング制御操作子群
16と、楽音のエンベロープ波形を設定・制御するための
エンベロープ制御操作子群17と、各種の楽音効果の設定
・制御を行うための効果制御操作子群18と、その他種々
の楽音設定・制御用の操作子群19とが設けられている。
サンプリング制御操作子群16において、サンプリング
スイッチSMPLとオーバーライトスイッチOVRWRは外部音
の波形サンプルデータをトーンジェネレータ部20内のデ
ータメモリ21に書き込む制御を行うべきことを指示する
スイッチである。リバーススイッチRVRSとUターンスイ
ッチUTRNとループスイッチLOOPとエコースイッチECHOは
該メモリ21に記憶した波形サンプルデータを読み出して
演奏を行う際の演奏モードを指示するスイッチである。
サンプリングスイッチSMPLは、外部音のサンプリング
を行うべきことを指示するとき操作するものである。
オーバーライトスイッチOVRWRは、上記と同様に外部
音のサンプリングを行うべきことを指示するとき操作す
るものであるが、既にメモリ21に記憶してある或る外部
音の波形サンプルデータに対して、そのデータを消去せ
ずに、別の外部音の波形サンプルデータを重ね書きする
こと(これを「オーバーライト」という)を指示すると
き操作するものである。これに対して、サンプリングス
イッチSMPLによりサンプリングが指示されたときは、前
に記憶した外部音の波形サンプルデータは消去される。
リバーススイッチRVRSは、メモリ21に記憶した外部音
の波形サンプルデータを逆方向に読み出して行う演奏を
指示するとき操作するものである。このような読出しを
称して単に「リバース」という。なお、メモリ21を逆方
向に読み出すとは、アドレスの値の大きい方から順に読
み出すことである。これに対して、メモリ21を順方向に
読み出すとは、アドレスの値の小さい方から順に読み出
すことである。
UターンスイッチUTRNは、メモリ21に記憶した外部音
の波形サンプルデータを順方向に読み出した後、逆方向
に折返して読み出す演奏を指示するとき操作するもので
ある。このような読出しを称して単に「Uターン」とい
う。
なお、「Uターン」と「リバース」を同時に選択・指
示することが可能であり、その場合は、メモリ21に記憶
した外部音の波形サンプルデータを逆方向に読み出した
後、順方向に折返して読み出す。これを称して「Uター
ン・リバース」という。
ループスイッチLOOPは、メモリ21に記憶した外部音の
波形サンプルデータを繰返し読み出すことを指示すると
き操作するものである。このような読出しを称して単に
「ループ」という。通常の「ループ」は、メモリ21に記
憶した外部音の波形サンプルデータを順方向に繰返し読
み出す。これを称して「ノーマル・ループ」という。
「ループ」と「リバース」を同時に選択・指示するこ
とが可能であり、その場合は、メモリ21に記憶した外部
音の波形サンプルデータを逆方向に繰返し読み出す。こ
れを称して「リバース・ループ」という。
「ループ」と「Uターン」を同時に選択・指示するこ
とが可能であり、その場合は、メモリ21に記憶した外部
音の波形サンプルデータを順方向に読み出した後、逆方
向に折返して読み出すことを繰り返す。これを称して
「Uターン・ループ」という。
「ループ」と「Uターン」と「リバース」を同時に選
択・指示することが可能であり、その場合は、メモリ21
に記憶した外部音の波形サンプルデータを逆方向に読み
出した後、順方向に折返して読み出すことを繰り返す。
これを称して「Uターン・リバース・ループ」という。
上述のような演奏モードの一覧が第3図に示されてい
る。演奏モードは8個あり、各モードを記号M1〜M8で区
別する。左欄は、モード名を示し、これは上述の名称に
対応している。従って、各モードが選択される条件は上
述から明らかであろう。なお、「ノーマル」モードM1は
メモリ21に記憶した外部音の波形サンプルデータを順方
向に1回だけ読み出すモードであり、特別のモードM2〜
M8が選択されていないときこの「ノーマル」モードとな
る。右欄は、各モードにおけるメモリ21からの波形サン
プルデータの読出し状態を模式的に示したものであり、
矢印の方向が読出しの順方向又は逆方向の別を示してい
る。「ループ」に関連するモードM3,M5,M6,M8では、図
示のような読出しが繰返される。順方向読出しにおける
起点は所定のスタートアドレスであり、終点は所定のエ
ンドアドレスである。逆に、逆方向読出しにおける起点
はエンドアドレスであり、終点はスタートアドレスであ
る。
このスタートアドレスとエンドアドレスが、順方向又
は逆方向読出しにおける起点又は終点を指示する基準ア
ドレスとなっている。この実施例では、一方の基準アド
レスつまりスタートアドレスは、常に所定の初期アドレ
ス(例えばアドレス0)に固定されており、他方の基準
アドレスつまりエンドアドレスがサンプリングされた波
形データの最終のゼロクロスアドレスに対応して適宜変
動するようになっている。また、この基準アドレスつま
りエンドアドレスの値は演奏者によって適宜増減変更で
きるようになっている。なお、この実施例では、エンド
アドレスの値の増減変更は、上述の「ループ」に関連す
るモードM3,M5,M6,M8のときに可能である。
サンプリング制御操作子群16において、上述のエンド
アドレスの増減変更を指示するために、増加スイッチIN
Cと減少スイッチDECが設けられている。増加スイッチIN
Cの操作に応じてアドレス値が増加し、減少スイッチDEC
の操作に応じてアドレス値が減少する。この実施例で
は、一例として、増加スイッチINCと減少スイッチDECに
よるエンドアドレスの増減変更は、1アドレス単位では
なく、複数のアドレスからなるブロック単位で行われる
ようになっている。
ここで、トーンジェネレータ部20内のデータメモリ21
におけるアドレス構成の一例を第4図により説明する。
1音分の外部音の波形サンプルデータを記憶するアドレ
スの全範囲は0〜15の16ブロックからなり、1ブロック
は256アドレスからなる。この全アドレス範囲の先頭の
アドレスがスタートアドレスであり、アドレス値0であ
る。エンドアドレスは、サンプリングされた波形データ
の最終のゼロクロスアドレスに対応して適宜変動する。
この実施例では、このエンドアドレスもブロック単位で
決定されるようになっている。このエンドアドレスの値
が増加スイッチINCと減少スイッチDECの操作に応じて増
減変更される。
サンプリング制御操作子群16に設けられたエコースイ
ッチECHOは、エコー効果を選択するためのものである。
ここでいうエコー効果とは、演奏モードを「ループ」に
自動的に設定し、かつ発生楽音の音量エンベロープのレ
リース時間を自動的に長く(例えば最長に)設定し、こ
れにより、サンプリングされた波形データをメモリ21か
ら繰返し読み出し、読み出した波形データに対応する楽
音信号の音量エンベロープを緩やかに減衰させながら該
楽音が繰返し発音されるようにすることである。
サンプリング制御操作子群16に設けられたオールキャ
ンセルスイッチCANSELは、サンプリングした波形サンプ
ルデータに関連して操作パネル部15で設定・選択・変更
・調整した各種のデータの全て又は所定のものを、キャ
ンセルし、これらのデータの内容を最初にサンプリング
したときの状態に戻すために操作されるものである。つ
まり、サンプリングした波形サンプルデータに関連して
編集した様々のデータの編集内容をキャンセルし、編集
前の初期状態に戻すためのものである。このように編集
内容をキャンセルして編集前の初期状態に戻せるように
することにより、失敗をおそれることなく、自由な編集
を行うことができるようになり、サンプリングした波形
サンプルデータに関連する編集機能を向上させることが
できる。
操作パネル部15におけるエンベロープ制御操作子群17
は、データメモリ21から読み出した波形サンプルデータ
に付与する音量エンベロープ波形の特性を設定・制御す
る操作子からなり、例えば、A.D.S.R.特性を決定するア
タック時間、ディケイ時間、サステインレベル、レリー
ス時間を夫々設定・制御する操作子からなる。
操作パネル部15における効果制御操作子群18は、例え
ば、ビブラート、トレモロ、リバーブ等の楽音効果の設
定・制御を行うための操作子からなる。
トーンジェネレータ部20は、マイクロフォン22を介し
て外部から入力された音信号をサンプリングしてディジ
タル波形サンプルデータに変換する機能と、サンプリン
グされたディジタル波形サンプルデータをデータメモリ
21に書き込む機能と、鍵盤14での押鍵等に応じてデータ
メモリ21の波形サンプルデータを読み出す機能と、読み
出した波形サンプルデータの音量エンベロープを制御し
たり各種の楽音効果を付与する機能とを具えている。ト
ーンジェネレータ部20から発生されたディジタル楽音信
号はアナログ変換された後、サウンドシステム23に与え
られる。
タイマビープ回路24は、外部音のサンプリングを開始
するときに一定時間の間ビープ音を発生するための回路
である。ビープ音の発音時間は例えば300ms程度であ
り、サンプリングスイッチSMPLの操作に応じて発音開始
し、終了したときビープエンドパルスBPENDを発生す
る。ビープエンドパルスBPENDに基づきトーンジェネレ
ータ部20ではサンプリング動作を開始する。
鍵盤14における押鍵・離鍵検出のための鍵走査及び発
音割当て処理や、操作パネル部15におけるスイッチ等の
操作検出のための走査及び表示器等の点灯・消灯処理
や、トーンジェネレータ部20におけるサンプリングデー
タの書込み・読出し制御、など各種の処理がマイクロコ
ンピュータ部によって実行される。
マイクロコンピュータ部によって実行される処理のう
ち、この発明に関連する処理のフローチャートの一例が
第8図〜第19図に示されている。この処理に関連して使
用されるデータ及びワーキングRAM13内の記憶内容の一
例が第5図に示されている。
SMPFLGは、サンプリングフラグであり、通常のサンプ
リングモードのとき“1"となる。
OVWFLGは、オーバーライトサンプリングフラグであ
り、オーバーライトモードのとき“1"となる。
RVFLGは、リバースフラグであり、「リバース」の演
奏モードのとき“1"となる。このフラグはリバーススイ
ッチRVRSがオンされる毎に“1"から“0"に又は“0"から
“1"に反転する。
UTFLGは、Uターンフラグであり、「Uターン」の演
奏モードのとき“1"となる。このフラグはUターンスイ
ッチUTRNがオンされる毎に“1"から“0"に又は“0"から
“1"に反転する。
LPFLGは、ループフラグであり、「ループ」の演奏モ
ードのとき“1"となる。このフラグはループスイッチLO
OPがオンされる毎に“1"から“0"に又は“0"から“1"に
反転する。
ECFLGは、エコーフラグであり、エコー効果が選択さ
れたとき“1"となる。このフラグはエコースイッチECHO
がオンされる毎に“1"から“0"に又は“0"から“1"に反
転する。
LPFLGBは、ループフラグバッファであり、エコー効果
が選択されたときループフラグLPFLGの内容を強制的に
“1"にするために、その直前のループフラグLPFLGの内
容を保存しておくためのものである。このバッファLPFL
GBに保存した内容は、エコー効果が選択されなくなった
ときループフラグLPFLGに戻される。
NKEYは、ニューキーコードレジスタであり、新たに押
鍵又は離鍵された鍵のキーコードを記憶するものであ
る。
KCODEは、キーコードレジスタであり、現在発音中の
楽音に対応するキーコードを記憶するものである。
ZCRADBは、ゼロクロスアドレスバッファであり、外部
からサンプリングした波形サンプルデータの最終のゼロ
クロスアドレスを記憶するものである。
LPADBは、エンドアドレスバッファであり、前述のエ
ンドアドレスを記憶するものである。
ATBはアタックタイムバッファ、DTBはディケイタイム
バッファ、SLBはサステインレベルバッファ、RTBはレリ
ースタイムバッファ、であり、エンベロープ制御操作子
群17で設定・制御されたアタック時間、ディケイ時間、
サステインレベル、レリース時間のデータを夫々記憶す
るものである。
RTBUFは、レリースタイム保存バッファであり、エコ
ー効果が選択されたときレリースタイムバッファRTBの
内容を強制的に最長時間にするために、その直前のレリ
ースタイムバッファRTBの内容を保存しておくためのも
のである。このバッファRTBUFに保存した内容は、エコ
ー効果が選択されなくなったときレリースタイムバッフ
ァRTBに戻される。
上述のようなレジスタ、フラグ、あるいはバッファの
ための領域が、データ及びワーキングRAM13内に設けら
れている。また、データ及びワーキングRAM13内には、
操作パネル部15における効果制御操作子群18及びその他
の操作子群19の操作検出データを記憶するための領域
や、その他のデータ及びワーキング領域が設けられてい
る。
トーンジェネレータ部20の詳細例は第6図に示されて
いる。
第6図のトーンジェネレータ部20において、データバ
ス25を介してマイクロコンピュータ部側とデータの授受
を行うために、インタフェース26が設けられている。イ
ンタフェース26は、バッファレジスタを含むものであ
る。マイクロコンピュータ部から与えられたデータはイ
ンタフェース26を介してトーンジェネレータ部20内の所
定の回路に入力される。また、トーンジェネレータ部20
内の所定の回路から出力されたデータはインタフェース
26及びデータバス25を介してマイクロコンピュータ部に
与えられる。
トーンジェネレータ部20内の主要な回路について簡単
に説明すると、データメモリ21は前述した第4図のよう
なアドレス構成からなるものであり、読み書き制御入力
R/Wに与えられる信号が“1"ならば読出しモードとな
り、“0"ならば書込みモードとなる。ADはアドレス入
力、DTはデータ入出力端子、である。
マイクロフォン22でピックアップした外部音の信号は
アナログ/ディジタル変換器27でクロックパルスφ1
従ってサンプリングされ、ディジタル変換される。ディ
ジタル変換された波形サンプルデータは、重ね書き用の
加算器28、ラッチ回路29、ゲート30を介してデータメモ
リ21のデータ入出力端子DTに与えられる。また、アナロ
グ/ディジタル変換器27から出力された波形サンプルデ
ータは立上り検出回路31に与えられ、音の立上りが検出
される。音の立上り検出に応じてトリガパルスTRGが出
力される。このトリガパルスTRGは、データメモリ21へ
の波形サンプルデータの書込み開始タイミングを指示す
る信号として使用される。
また、アナログ/ディジタル変換器27から出力された
波形サンプルデータはゼロクロス検出回路32に与えら
れ、ゼロクロスが検出される。この実施例では、ゼロク
ロス検出回路32の構成の簡単化のために、波形サンプル
データのレベルが所定のゼロ判定範囲(ゼロレベルの±
αの範囲:αは適宜のレベル)内に入ったか否かを検出
し、ゼロ判定範囲を外れたときゼロクロス検出パルスZC
Rを出力するようにしている。ゼロクロス検出パルスZCR
はゼロクロスアドレスラッチ回路33のラッチ制御入力L
に与えられ、ゼロクロスが検出されたときの書込みアド
レスを該ラッチ回路33にラッチする。ゼロクロス検出パ
ルスZCRは波形サンプルデータのゼロクロス毎に発生さ
れるので、ラッチ回路33のゼロクロスアドレスは、何度
も書き換えられ、最後にラッチ回路33に残されたデータ
が波形サンプルデータにおける最終のゼロクロスアドレ
スである。
ノートクロック発生回路34は、ニューキーコードNKC
に応じてノートクロックパルスφ0を発生する。ニュー
キーコードNKCは、データメモリ21の書込みレート又は
読出しレートを指定するためのものであり、サンプリン
グ時において所定の基準音高(例えばA4音)のキーコー
ドに設定され、鍵壁14における押鍵に応じて変更され
る。ノートクロックパルスφ0は分周器35で1/2分周さ
れ、第7図に示すような互いに逆相のノートクロックパ
ルスφ1,φ2が得られる。進相のノートクロックパルス
φ1がアンド回路36を介してアドレスカウンタ37のカウ
ントクロッツ入力CLKに入力される。遅相のノートクロ
ックパルスφ2は、ナンド回路44を介してデータメモリ2
1の読み書き制御入力R/Wに加わり、その読み書きモード
を制御する。
後述するように、サンプリングモード(通常のサンプ
リングモード又はオーバーライト・サンプリングモー
ド)のとき、信号SM1又はSM2が“1"となり、オア回路45
からナンド回路44に“1"が与えられる。これにより、ナ
ンド回路44は遅相のノートクロックパルスφ2を反転
し、データメモリ21の読み書き制御入力R/Wに加える。
従って、データメモリ21は、進相のノートクロックパル
スφ1が“1"のとき読出しモード、遅相のノートクロッ
クパルスφ2が“1"のとき書込みモードとなり、1アド
レスの時間内で時分割的に読み書きモードが切り換わ
る。これは、後述するオーバーライト・サンプリングモ
ードのための処置である。なお、各種の演奏モードM1〜
M8のときは、信号SM1及びSM2が“0"であり、ナンド回路
44は常に“1"を出力し、データメモリ21は常時書込みモ
ードとなる。なお、1/2分周したノートクロックパルス
φ1をアドレスカウンタ37でカウントするので、ノート
クロック発生回路34は目的のノートクロックパルスφ1
の2倍の周波数のノートクロックパルスφ0を発生する
ものとする。
アドレスカウンタ37は、データメモリ21の読み書きア
ドレスを指定するアドレス信号を発生するもので、プリ
セット制御入力PRに加わるプリセットパルスPRPに応じ
てプリセットデータ入力PRDに加わるプリセットデータ
をプリセットし、このプリセット値を起点としてカウン
トクロック入力CLKに加わるノートクロックパルスφ1
カウントを行う。アドレスカウンタ37は、アップ/ダウ
ンカウンタであり、方向指示信号DIRが“1"のときアッ
プカウント、“0"のときダウンカウントを行う。
アドレスカウンタ37の出力はデータメモリ21のアドレ
ス入力ADに加わると共に比較器38に加わり、更に上位4
ビットがゼロクロスアドレスラッチ回路33に入力され
る。アドレス信号は、12ビットからなり、上位4ビット
で0〜15の各ブロックを識別し、下位8ビットで1ブロ
ック内の256アドレスを識別する。ゼロクロスアドレス
ラッチ回路33にアドレス信号の上位4ビットがラッチさ
れることにより、ゼロクロスアドレスはブロック単位で
検出されることになる。ラッチ回路33にラッチされたゼ
ロクロスアドレスデータZCRADは、インタフェース26を
介してマイクロコンピュータ部に供給される。
比較器38は、アドレスカウンタ37から発生されたアド
レス信号が終点に到達したかを検出するためのものであ
る。アドレス信号が順方向に進んでいる(つまり増加し
ている)ときは、セレクタ39によりエンドアドレスデー
タLPADを選択して終点アドレスレジスタ40に記憶し、こ
のレジスタ40に記憶されたエンドアドレスデータLPADと
アドレス信号とを比較器38で比較し、両者が一致したと
きエンドパルスENDを出力する(“1"にする)。一方、
アドレス信号が逆方向に進んでいる(つまり減少してい
る)ときは、セレクタ39により全12ビットが“0"である
初期アドレスデータを選択して終点アドレスレジスタ40
に記憶し、このレジスタ40に記憶された初期アドレスデ
ータとアドレス信号とを比較器38で比較し、両者が一致
したときエンドパルスENDを出力する。
セレクタ39の選択制御は、T−フリップフロップ41か
ら出力される方向指示信号DIRに応じてなされる。この
方向指示信号DIRが“1"のときつまりアドレスの順方向
変化を指示しているとき、B入力を選択し、“0"のとき
つまりアドレスの逆方向変化を指示しているときは、A
入力を選択する。
なお、後述するようにエンドアドレスデータLPADは、
前述のゼロクロスアドレスデータZCRADに基づいてマイ
クロコンピュータ部から与えられるもので、ブロック単
位でエンドアドレスを指示する4ビットのデータであ
る。このブロック単位のエンドアドレスデータLPADをア
ドレス単位に直すために、その下位に8ビットのオール
“1"を追加したものをセレクタ39のB入力に与えるよう
にしている。これにより、エンドアドレスデータLPAD
は、ブロック内の最終アドレスを示すものとされる。
アドレスカウンタ37のプリセットデータ入力PRDには
セレクタ42の出力が加わる。このセレクタ42は、上述の
セレクタ39とは反対に、方向指示信号DIRが“1"のとき
つまりアドレスの順方向変化を指示するとき、A入力に
加わる全12ビット“0"の初期アドレスデータを選択し、
“0"のときつまりアドレスの逆方向変化を指示するとき
は、B入力に加わるエンドアドレスデータLPADを選択す
る。このエンドアドレスデータLPADもその下位に8ビッ
トのオール“1"を追加してブロック内の最終アドレスを
示すものとされる。
なお、終点アドレスレジスタ40は、アドレスカウンタ
37のプリセット制御入力PRに加わるプリセットパルスPR
Pと同じパルスPRPにより、アドレスカウンタ37のプリセ
ットと同時に、セレクタ39からの終点アドレスデータを
ロードする。
方向指示信号DIRを発生するT−フリップフロップ41
は、サンプリングモードあるいは各種の演奏モードM1〜
M8に応じて後述するように制御される。
アドレスカウンタ37のプリセット制御を行うプリセッ
トパルスPRPも、サンプリングモードあるいは各種の演
奏モードM1〜M8に応じて後述するようにその発生条件が
制御される。
アドレスカウンタ37のカウントクロック入力CLKにノ
ートクロックパルスφ1を加える制御を行うアンド回路3
6は、フリップフロップ43の出力信号に応じて制御され
る。このフリップフロップ43の状態は、サンプリングモ
ードあるいは各種の演奏モードM1〜M8に応じて後述する
ように制御される。
データメモリ21から読み出された波形サンプルデータ
は、乗算器46に入力され、エンベロープ発生器47から与
えられるエンベロープ波形データが乗算される。エンベ
ロープ発生器47は、マイクロコンピュータ部からインタ
ーフェース26を介して与えられるアタックタイムデータ
AT、ディケイタイムデータDT、サステインレベルデータ
SL、レリースタイムデータRTに基づき設定される形状の
エンベロープ波形を、キーオンパルスKONP,OKONP及びキ
ーオフパルスKOFP,OKOFPに応答して発生する。周知のよ
うに、キーオンパルスに応答してアタック、ディケイ、
サステインと続くエンベロープ波形部分を発生し、キー
オフパルスに応答してレリース部分を発生する。ここ
で、一方のキーオンパルスKONP及びキーオフパルスKOFP
は、通常の押鍵操作に基づいて与えられるものであり、
もう一方のキーオンパルスOKONP及びキーオフパルスOKO
FPは、サンプリングしたばかりの楽音をオウム返しに即
座に自動的に発音するために与えられるものである。
乗算器46で音量エンベロープが制御された波形サンプ
ルデータは、ディジタル/アナログ変換器48に与えられ
てアナログ信号に変換され、最終的にサウンドシステム
23に与えられる。また、効果回路49にも適宜与えられ、
リバーブ、トレモロ、ビブラート等の楽音効果が付与さ
れる。
次に、第8図〜第19図を参照して、この電子楽器の各
種動作について説明する。
第8図は、メインルーチンを示すもので、まず、キー
スキャン処理においては、鍵盤14の各鍵を走査し、押鍵
及び離鍵を検出する。この検出に応じて所定の処理を実
行する。ここでは、新たな押鍵を検出したとき第12図の
キーオンイベントルーチンを実行し、新たな離鍵を検出
したとき第13図のキーオフイベントルーチンを実行す
る。
サンプリング制御操作子スキャン処理においては、サ
ンプリング制御操作子群16の各スイッチの操作を検出
し、この検出に応じて所定の処理を実行する。ここで
は、サンプリングスイッチSMPLがオフからオンに変わっ
たことを検出したとき第9図のサンプリングイベントル
ーチンを実行し、オーバーライトスイッチOVRWRがオフ
からオンに変わったことを検出したとき第10図のオーバ
ーライトイベントルーチンを実行する。また、サンプリ
ング開始時のビープ音が終了したときにタイマビープ回
路24から与えられるビープエンドパルスBPENDを検出
し、この検出に応じて第11図のタイマビープエンドイベ
ントルーチンを実行する。また、外部音のサンプリング
が終了したときに後述のようにトーンジェネレータ部20
から与えられるサンプリングエンド信号SMPENDに応じ
て、第14図のサンプリングエンドイベントルーチンを実
行する。また、リバーススイッチRVRS、Uターンスイッ
チUTRN、ループスイッチLOOP、エコースイッチECHO、増
加スイッチINC、減少スイッチDEC、オールキャンセルス
イッチCANSELが夫々オフからオンに変わったことを検出
したとき、第15図〜第19図のリバースイベントルーチ
ン、Uターンイベントルーチン、ループイベントルーチ
ン、エコーイベントルーチン、増加イベントルーチン、
減少イベントルーチン、オールキャンセルイベントルー
チンを夫々実行する。
エンベロープ制御操作子スキャン処理においては、エ
ンベロープ制御操作子群17の各操作子の操作を検出し、
この検出に応じて所定の処理を実行する。ここでは、エ
ンベロープ制御操作子群17で設定・制御されたアタック
時間、ディケイ時間、サステインレベル、レリース時間
のデータをアタックタイムバッファATB、ディケイタイ
ムバッファDTB、サステインレベルバッファSLB、レリー
スタイムバッファRTBに夫々記憶する。
効果制御操作子スキャン処理においては、効果制御操
作子群18の各操作子の操作を検出し、この検出に応じて
所定の処理を実行する。その他の操作子スキャン処理に
おいては、その他の操作子群19の各操作子の操作を検出
し、この検出に応じて所定の処理を実行する。
通常のサンプリング動作 通常のサンプリング動作を行う場合はまずサンプリン
グスイッチSMPLをオンする。これに応じて第9図のサン
プリングイベントルーチンがスタートする。ここではサ
ンプリングフラグSMPFLGを“1"にセットし、他のフラグ
OVWFLG〜ECFLGを“0"にリセットする(ステップ101)。
次に、ニューキーコードNKCとして所定の基準音高(例
えばA4音)のキーコードをトーンジェネレータ部20に送
出する(ステップ102)。そして、タイマビープ回路24
にスタートトリガ信号を送出し、ビープ音を発音させる
(ステップ103)。なお、フローチャートではトーンジ
ェネレータ部20をTGで示す。
タイマビープ回路24では、このスタートトリガ信号に
応じて所定時間(例えば300ms)ビープ音を発音し、こ
の時間が経過すると、ビープエンドパルスBPENDを出力
する。
第6図を参照すると、トーンジェネレータ部20では、
与えられたニューキーコードNKCに応じてノートクロッ
ク発生回路34から基準音高(A4音)のノートクロックパ
ルスφ0を発生する。ビープ音の発音時間中に、このノ
ートクロックパルスが安定して発生されるようになり、
サンプリングの基準が完了する。このように、ビープ音
はサンプリングの基準完了を知らせる役割を果す。
ビープエンドパルスBPENDに応じて第11図のルーチン
がスタートする。ステップ104では、サンプリングフラ
グSMPFLGが“1"であることを確認して、ステップ105に
行く。ここでは、通常のサンプリングモードに対応する
サンプリングモード信号SM1を“1"にし、オーバーライ
ト・サンプリングモードに対応するサンプリングモード
信号SM2を“0"にして、トーンジェネレータ部20に送出
する。
次のステップ106では、トーンジェネレータ部20に与
えるべきデータを次のように初期設定してトーンジェネ
レータ部20に送出する。演奏モードの各種モード信号M1
〜M8を“0"にする。エンドアドレスデータLPADを最終ブ
ロックを示す値「15」に設定する。アタックタイムデー
タAT、ディケイタイムデータDT、レリースタイムデータ
RTを夫々「0」に設定し、サステインレベルデータSLを
最大値「MAX」に設定する。これは、キーオンからキー
オフまで一定のエンベロープレベルを維持する直接キー
イング型のエンベロープ波形を設定するものである。こ
の直接キーイング型のエンベロープ波形では、サンプリ
ングしたままの音量レベルで楽音が発音される。
次のステップ107では、マイクロコンピュータ部内の
アタックタイムバッファATB、ディケイタイムバッファD
TB、サステインレベルバッファSLB、レリースタイムバ
ッファRTBの内容も上記と同様に直接キーイング型のエ
ンベロープ波形を設定するものに初期設定する。次のス
テップ108では、各種楽音効果用のデータも所定の内容
に初期設定する。
一方、演奏者はビープ音を確認してから、マイクロフ
ォン22により所望の外部音をピックアップする。第6図
を参照すると、前述の通り、ピックアップされた信号は
アナログ/ディジタル変換器27でサンプリングされ、デ
ィジタル変換される。ディジタル変換された波形サンプ
ルデータの音の立上りが立上り検出回路31で検出され、
音の立上り検出に応じてトリガパルスTRCが出力され
る。このトリガパルスTRGは、アンド回路50に入力され
る。アンド回路50の他の入力には、サンプリングモード
信号SM1の“1"がオア回路51を介して与えられており、
トリガパルスTRGに周期してアンド回路50の出力が“1"
となり、これがサンプリングスタートパルスSMPSTとし
てオフ回路52を介してフリップフロップ43のセット入力
Sに与えられると共に、オア回路53を介してプリセット
パルスPRPとしてアドレスカウンタ37のプリセット制御
入力PRに与えられ、かつ終点アドレスレジスタ40に与え
られる。また、サンプリングスタートパルスSMPSTがオ
ア回路54を介して、サンプリングモード信号SM1がオア
回路55を介して、夫々アンド回路56に入力され、該アン
ド回路56の出力“1"がT−フリップフロップ41のセット
入力Sに与えられる。
これにより、T−フリップフロップ41から出力される
方向指示信号DIRが“1"となり、セレクタ42で初期アド
レス(オール“0")を選択してアドレスカウンタ37にプ
リセットし、セレクタ39では最終ブロックを示すエンド
アドレスLPADを選択して終点アドレスレジスタ40にロー
ドし、アドレスカウンタ37はアップカウントに設定され
る。そして、フリップフロップ43のセット出力“1"によ
りアンド回路36が可能化され、A4音に対応するレートの
ノートクロックパルスφ1がアドレスカウンタ37に入力
される。
こうして、トリガパルスTRGの発生に応じて、アドレ
スカウンタ37がA4音に対応するレートのノートクロック
パルスφ1のアップカウントを開始し、その発生アドレ
ス信号は、初期アドレス(オール“0")を起点とし、エ
ンドアドレスLPADを終点として順方向に変化する。
一方、サンプリングモード信号SM1が“1"となること
により、前述の通り、ノートクロックパルスφ2を反転
した信号がナンド回路44からデータメモリ21の読み書き
制御入力R/Wに加えられ、データメモリ21は、進相のノ
ートクロックパルスφ1が“1"のとき読出しモード、遅
相のノートクロックパルスφ2が“1"のとき書込みモー
ドとなり、1アドレスの時間内で時分割的に読み書きモ
ードが切り換わる。しかし、サンプリングモード信号SM
1が“1"のときは、サンプリングモード信号SM2が“0"で
あり、データメモリ21の読出し信号を加算器28に加える
ためのゲート57が閉じられており、かる、エンベロープ
発生器47からエンベロープ波形データを発生させるため
のキーオンパルスも発生されていない(従って乗算器46
はデータメモリ21の読出し信号をカットする)ので、読
出しは意味を持たない。
アナログ/ディジタル変換器27から出力される外部音
のディジタル波形サンプルデータは、加算器28の一方入
力に与えられる。加算器28の他方入力には上記ゲート57
の出力が与えられるが、これは上述のように“0"である
ので、外部音のディジタル波形サンプルデータは加算器
28を単に通過してラッチ回路29に与えられる。ラッチ回
路29は、書込みタイミングであるノートクロックパルス
φ2のタイミングでラッチ動作を行う。なお。アナログ
/ディジタル変換器27におけるアナログ/ディジタル変
換動作は、進相のノートクロックパルスφ1のタイミン
グで行う。
ラッチ回路29の出力はゲート30を通過してデータメモ
リ21のデータ入力DTに入る。ゲート30は、サンプリング
モード信号SM1及びSM2を入力したオア回路58の出力とノ
ートクロックパルスφ2とが入力されるアンド回路59の
出力によって制御される。これにより、ゲート30は、サ
ンプリングモード(通常のサンプリングモード及びオー
バーライト・サンプリングモード)であって且つノート
クロックパルスφ2が“1"のときのみ、つまり書込みタ
イミングにおいてのみ、開放される。なお、各種の演奏
モードM1〜M8のときは、信号SM1及びSM2が“0"であり、
アンド回路59は常に“0"を出力し、ゲート30は常に閉じ
ているので、もし、マイクロフォン22によりノイズをピ
ックアップしたとしてもここでカットすることができ
る。
こうして、外部音のディジタル波形サンプルデータ
が、書込みタイミングにおいてデータメモリ21のデータ
入力DTに入力され、アドレスカウンタ37から与えられる
アドレス信号によって指定されたアドレスに書き込まれ
る。
一方、アナログ/ディジタル変換器27から出力された
波形サンプルデータはゼロクロス検出回路32に与えら
れ、前述のように、書込み動作に並行して、ゼロクロス
が検出される。セロクロス検出回路32から出力されたゼ
ロクロス検出パルスZCRに応じて、ゼロクロスが検出さ
れたときの書込みアドレスがゼロクロスアドレスラッチ
回路33にラッチされる。ゼロクロス検出パルスZCRは波
形サンプルデータのゼロクロス毎に発生されるので、ラ
ッチ回路33のゼロクロスアドレスは、何度も書き換えら
れ、最後にラッチ回路33に残されたデータが波形サンプ
ルデータにおける最終のゼロクロスアドレスである。従
って、サンプルリングが終了したときには、最後のゼロ
クロスアドレスが既に判明している。
書込みアドレスがメモリ21の最終アドレスまで到達す
ると、最終アドレスレジスタ40に記憶されている最終ブ
ロックの最終アドレスを示すエンドアドレスLPADと一致
し、比較器38からエンドパルスENDが出力される。この
エンドパルスENDはアンド回路60に入力される。このア
ンド回路60は、オア回路61からのサンプリングモード信
号SM1の“1"により可能化されているので、エンドパル
スENDに対応する“1"がアンド回路60からオア回路62,遅
延フリップフロップ63を介してフリップフロップ43のリ
セット入力Rに入力される。遅延フリップフロップ63は
ノートクロックパルスφ1の1クロック分の遅延を行
う。これにより、カウント値が最終アドレスに到達した
1クロック後に、フリップフロップ43がリセットされ、
アンド回路36が閉じて、ノートクロックパルスφ1が止
められる。こうして、アドレスカウンタ37のカウントが
停止する。因に、このときは、プリセット操作が行われ
ないので、カウント値は最終値に保持される。このよう
に、サンプリングモード時は、データメモリ21の初期ア
ドレスから最終アドレスまで全アドレス範囲にわたって
書込みが行われる。
エンドパルスENDはアンド回路64に与えられる。この
アンド回路64は、オア回路65からのサンプリングモード
信号SM1の“1"により可能化されているので、エンドパ
ルスENDに対応する“1"がアンド回路64から出力され、
これがサンプリングエンド信号SMPENDとしてマイクロコ
ンピュータ部に送出される。また、ゼロクロスアドレス
ラッチ回路33にラッチされたゼロクロスアドレスデータ
ZCRADもマイクロコンピュータ部に送出される。
オーバーライト・サンプリング動作 先にサンプリングした音に重ねて新たにサンプリング
した音の波形サンプルデータを書込む場合は、オーバー
ライトスイッチOVRWRをオンする。これに応じて、第10
図のオーバーライトイベントルーチンが実行される。こ
こでは、まず、オーバーライトフラグOVWFLGを“1"にセ
ットし、他のフラグを“0"にリセットする(ステップ10
1a)。これに続くステップ102a,103aの処理は第9図の
ステップ102,103と同じであり、ニューキーコードNKCと
してA4音のキーコードを設定し、タイマビープ音を発音
する。
ビープ音が終了すると、前述と同様に第11図のタイマ
ビープエンドイベントルーチンが実行される。ここで、
ステップ104では、サンプリングフラグSMPFLGが“0"な
ので、NOと判断され、ステップ109に行く。ステップ109
では、サンプリングモード信号SM1を“0"にセットし、S
M2を“1"にセットして、トーンジェネレータ部20に送出
する。その後、通常のサンプリングモードと同様に、ス
テップ106、107、108の処理を実行する。
このように、オーバーライト・サンプリングモードの
場合は、サンプリングモード信号SM1が“0"、SM2が“1"
となる点が通常のサンプリングモードの場合と反対であ
り、その他は通常のサンプリングモードの場合と同様で
ある。
第6図を参照すると、サンプリングモード信号SM2
が、SM1と同様に、オア回路45、51、55、58、61、65に
入力されており、この点に関しては、トーンジェネレー
タ部20は前述の通常のサンプリングモードの場合と全く
同様に動作する。異なる点は、信号SM2がゲート57の制
御入力に与えられていることである。これにより、デー
タメモリ21から読み出された波形サンプルデータが加算
器28に入力され、アナログ/ディジタル変換器27から与
えられる新たな波形サンプルデータと加算される。
すなわち、前述の通り、オア回路45からナンド回路44
に与えられる信号SM2の“1"により、ノートクロックパ
ルスφ2を反転した信号がデータメモリ21の読み書き制
御入力R/Wに与えられ、該データメモリ21は1アドレス
時間の前半で読出しモードとなり、後半で書込みモード
となる。1アドレス時間の前半でデータメモリ21から読
み出された先にサンプリングされた音の波形サンプルデ
ータが、信号SM2の“1"によって開放されたゲート57を
通って加算器28に入力され、新たにサンプリングされた
外部音の波形サンプルデータと加算される。加算された
波形サンプルデータは、前述と同様に、1アドレス時間
の後半のタイミング(φ2が“1"のタイミング)でラッ
チ回路29にラッチされ、ゲート30を介してデータメモリ
21に入力され、該当アドレスに書き込まれる。
こうして、既にサンプリングしてある音の波形サンプ
ルデータに新たにサンプリングした音の波形サンプルデ
ータを加算したデータがメモリ21に書き込まれる。前述
と同様に、書込みアドレスが最終アドレスに到達する
と、アンド回路64からサンプリングエンド信号SMPENDが
発生される。また、前述と同様に、新たにサンプリング
した波形サンプルデータの最後のゼロクロスアドレスが
ラッチ回路33に最終的にラッチされる。
サンプリングレートの変更 通常のサンプリングモード及びオーバーライト・サン
プリングモードにおける波形サンプルデータの書込みレ
ートは基準音高(A4音)に限らず、鍵盤14の押鍵によっ
て適宜変更することができる。
サンプリングレートとして設定したい所望の音高の鍵
を鍵盤14で押鍵すると、マイクロコンピュータ部におい
て新たな押鍵が検出され、第12図のキーオンイベントル
ーチンが実行される。ステップ110では、新たな押鍵に
係るキーコードをニューキーコードレジスタNKEYに記憶
する。次のステップ111では、通常のサンプリングフラ
グSMPFLG又はオーバーライト・サンプリングフラグOVWF
LGが“1"であるかを調べる。YESつまりどちらかのサン
プリングモードであれば、ステップ112に行き、ニュー
キーコードレジスタNKEYの内容をニューキーコードNKC
としてトーンジェネレータ部20に送出する。これに基づ
き、トーンジェネレータ部20のノートクロック発生回路
34から発生されるノートクロックパルスφ0(つまり
φ1,φ2)が、鍵盤14で設定された音高に対応するもの
となる。
こうして、サンプリングレートを所望の音高に対応す
るものに変更してから、所望の外部音をサンプリングす
るようにしてもよい。
オーバーライト・サンプリングの使用例 演奏者の望みに応じて様々な重ね書きの態様が可能で
あるが、一例として、次のようなハーモニーサンプリン
グについて説明する。
例えば、Cメジャー和音の場合、まず、サンプリング
レートをC4音に設定し、所望の音色のC4音の音信号を外
部からサンプリングする。次に、サンプリングレートを
E4音に設定し、上記と同じC4音の音信号を外部から入力
してオーバーライト・サンプリングする。更に次に、サ
ンプリングレートをG4音に設定し、上記と同じC4音の音
信号を外部から入力してオーバーライト・サンプリング
する。こうして、C4,E4,G4の音高の3音の波形サンプル
データを加算したものがデータメモリ21に記憶される。
この場合、押鍵に応じた所望の音高のレートで該データ
メモリ21から波形サンプルデータを読み出せば、押圧鍵
を根音とするメジャーな和音の楽音信号を発音すること
ができる。
このように、一例として、オーバーライト・サンプリ
ングは簡単な押鍵操作で和音演奏を行おうとする場合に
便利である。例えば、鍵盤14を鍵域分割して一部の鍵域
で和音演奏を行おうとする場合など、和音演奏用鍵域の
押鍵に対応してデータメモリ21を読み出すようにすれ
ば、上述のように簡便な和音演奏が行える。
サンプリング終了時の処理 前述のように、外部音波形サンプルデータの書込み終
了時にサンプリングエンド信号SMPENDが発生されると、
第14図のサンプリングエンドイベントルーチンが実行さ
れる。
ここでは、まず、トーンジェネレータ部20のゼロクロ
スアドレスラッチ回路33にラッチされているゼロクロス
アドレスデータZCRADをマイクロコンピュータ部内のゼ
ロクロスアドレスバッファZCRADBに取り込む(ステップ
113)。前述のように、このデータZCRADは、メモリ21に
おいてサンプリングした音の最後のサンプルデータを記
憶しているアドレスを示している。
次のステップ114ではオーバーライト・サンプリング
フラグOVWFLGが“1"であるかを調べ、NOつまり通常のサ
ンプリングモードのときは、ステップ115に進み、ゼロ
クロスアドレスバッファZCRADBの内容をエンドアドレス
バッファLPADBに記憶する。こうして、波形サンプルデ
ータの最後のゼロクロスアドレスデータがエンドアドレ
スデータとしてバッファLPADBに記憶される。
次に、サンプリングフラグSMPFLG及びOVWFLGを共に
“0"にリセットし(ステップ116)、トーンジェネレー
タ部20に送出する信号の内容を、SM1とSM2が共に“0"、
M1が“1"、M2〜M8を“0"に夫々設定し、かつバッファLP
ADBの内容をエンドアドレスデータLPADとして送出する
(ステップ117)。そして、オウム返し発音用のキーオ
ンパルスOKONPをトーンジェネレータ部20に送出する
(ステップ118)。このキーオンパルスOKONPは、サンプ
リングした波形サンプルデータに対応して楽音をサンプ
リング直後に即座に発音させ、その内容を確認するため
のものである。
オーバーライト・サンプリング終了時の処理 オーバーライト・サンプリングが終了したときは、第
14図のステップ114がYESと判定され、ステップ119に進
み、現在のエンドアドレスバッファLPADBの内容(これ
は前回サンプリングした波形サンプルデータの最終ゼロ
クロスアドレスを示している)がゼロクロスアドレスバ
ッファZCRADBの内容(これは今回サンプリングした波形
サンプルデータの最終ゼロクロスアドレスを示してい
る)より小さいかを調べる。YESならば、ステップ115に
進み、バッファLPADBの内容を今回の最終ゼロクロスア
ドレスデータに書き換える。NOならば、ステップ115に
行わずに、ステップ120を経由してステップ116に行く。
こうして、オーバーライトの場合は、重ね書きされた
複数の外部音サンプリングデータのうちアドレス長の最
も長いデータの最終ゼロクロスアドレスがエンドアドレ
スデータとしてバッファLPADBに記憶される。
なお、ステップ120では、エンドアドレスバッファLPA
DBの内容をゼロクロスアドレスバッファZCRADBにセット
する。これは、重ね書きされた外部音サンプリングデー
タのうち今回サンプリングしたデータの最終ゼロクロス
アドレス(これは前ステップ119の段階ではバッファZCR
ADBに記憶されている)は、前回サンプリングしたデー
タの最終ゼロクロスアドレスよりも小さいことにより、
重ね書きされたデータ全体から見れば最終ゼロクロスア
ドレスを特定しているものとはいえないものであること
が判明したため、重ね書きされた波形サンプルデータ全
体から見て真の最終ゼロクロスアドレスを特定している
バッファLPADBの内容をバッファZCRADBに記憶させるた
めである。後述するように、オールキャンセル処理のと
き、ゼロクロスアドレスバッファZCRADBの内容をエンド
アドレスバッファLPADBに戻し、該バッファLPADBの内容
を真の最終ゼロクロスアドレスに戻してやる必要がある
ため、重ね書き波形における真の最終ゼロクロスアドレ
スをバッファZCRADBに保存しておく必要がある。そのた
めに、ステップ120の処理が挿入されている。
サンプリング直後の自動発音動作 外部からサンプリングした波形サンプルデータの書込
みが終了すると、前述のように、第14図のステップ118
によりオウム返し発音用のキーオンパルスOKONPが自動
的に発生される。
第6図を参照すると、トーンジェネレータ部20では、
このオウム返し発音用キーオンパルスOKONPがオア回路6
6を介してエンベロープ発生器47に入力されると共に、
オア回路52,53,54及びフリップフロップ67のセット入力
Sにも入力される。
また。前述のサンプリングエンドイベントルーチン
(第14図)のステップ117の処理により、演奏モード信
号M1が“1"とされており、この信号M1はトーンジェネレ
ータ部20のオア回路55,61,68に入力される。
キーオンパルスOKONPと信号M1の“1"によりアンド回
路56の条件が成立し、T−フリップフロップ41がセット
され、方向指示信号DIRが“1"となる。また、キーオン
パルスOKONPに応じてオア回路53からプリセットパルスP
RPが出力される。これにより、セレクタ42で初期アドレ
スデータ(オール“0")が選択されてアドレスカウンタ
37にプリセットされ、セレクタ39でエンドアドレスデー
タLPADが選択されてレジスタ40にロードされる。また、
キーオンパルスOKONPに応じてフリップフロップ43がセ
ットされ、アドレスカウンタ37がカウント動作を開始す
る。この場合、ニューキーコードNKCは変更されていな
いので、書込み時と同じレートのノートクロックパルス
φ1がカウントされる。こうして、アドレスカウンタ37
は、アップカウントを行い、初期アドレスを起点とし、
エンドアドレスLPADを終点として順方向にアドレス信号
が変化する。
データメモリ21は信号SM1,SM2が共に“0"であること
により常時読出しモードとなる。こうして、直前に書込
んだばかりの波形サンプルデータが頭から読み出され
る。
一方、エンベロープ発生器47は、キーオンパルスOKON
Pに応じてエンベロープ波形データの発生を行う。この
場合、エンベロープ波形設定用の各データAT,DT,SL,RT
は、前述の通り、タイマビープエンドイベントルーチン
(第11図)のステップ106で直接キーイング型のエンベ
ロープ波形を設定する内容に初期設定されているので、
キーオンからキーオフまで一定レベルのエンベロープ波
形データが発生される。これにより、サンプリングした
波形サンプルデータがそのままの音量レベルで発音され
る。こうして、サンプリングした外部音信号の状態を即
座に確認することができる。読出しアドレスがエンドア
ドレスデータLPADに対応する値になると、比較器38から
エンドパルスENDが発生され、これがアンド回路69に与
えられる。このアンド回路69の他の入力にはキーオンパ
ルスOKONPによってセットされたフリップフロップ67の
出力“1"が与えられているので、エンドパルスENDに応
じてアンド回路69の出力が“1"となり、これがオウム返
し発音用のキーオフパルスOKOFPとしてオア回路70を介
してエンベロープ発生器47に与えられる。このように自
動的に作成されたキーオフパルスOKOFPによって、エン
ベロープ発生器47から発生していた直接キーイング型の
エンベロープ波形データがレベル0に立下がる。こうし
て、オウム返しの自動発音が終了する。なお、フリップ
フロップ67は、キーオフパルスOKOFPを遅延フリップフ
ロップ88で遅延した信号によりリセットされる。
演奏モードの決定 前述の8種の演奏モードM1〜M8(第3図参照)は、各
スイッチRVRS,UTRN,LOOPの操作に応じて決定される。
リバーススイッチRVRSがオンされると、第15図のリバ
ースオンイベントルーチンが実行され、リバースフラグ
RVFLGを“0"から“1"に、又は“1"から“0"に反転する
(ステップ121)。次にステップ124に行く。
UターンスイッチUTRNがオンされると、第15図のUタ
ーンイベントルーチンが実行され、UターンフラグUTFL
Gを“0"から“1"に、又は“1"から“0"に反転する(ス
テップ122)。次にステップ124に行く。
ループスイッチLOOPがオンされると、第15図のループ
イベントルーチンが実行され、ループフラグLPFLGを
“0"から“1"に、又は“1"から“0"に反転する(ステッ
プ123)。次にステップ124に行く。
ステップ124では、上記各フラグRVFLG,UTFLG,LPFLGの
内容に基づき、下記テーブルに従って演奏モードM1〜M8
を決定する。
次に、ステップ125では決定した演奏モードに応じた
内容のモード信号M1〜M8をトーンジェネレータ部20に送
出する。すなわち、上記第1表に従って決定された1つ
のモード信号だけが“1"であり、他のモード信号は“0"
とされる。
演奏モード時のキーオン・オフ処理 データメモリ21に記憶した波形サンプルデータを読み
出して発音する場合は、鍵盤14で所望の鍵を押圧する。
鍵が押圧されると、第12図のキーオンイベントルーチ
ンが実行され、押圧鍵のキーコードがニューキーコード
レジスタNKEYに取込まれる(ステップ110)。次のステ
ップ111では、演奏モード時にはサンプリングフラグSMP
FLG,OVWFLGが“0"であるため、NOと判断され、ステップ
126に行く。ステップ126では、所定の発音割当て処理、
この実施例では単音優先発音方式を採用するものとして
いるため単音優先処理、を行う。次のステップ127で
は、前ステップでの単音優先処理結果に従って新たな押
鍵に係る楽音を発音する必要があるか否かを判断し、発
音の必要がなければリターンに行くが、必要があればス
テップ128に行く。単音優先基準としては周知のように
高音優先や後着優先などを適宜採用すればよい。ステッ
プ128では、ニューキーコードを発音割当てするため
に、レジスタNKEYのニューキーコードをレジスタKCODE
に記憶する。次のステップ129では、レジスタKCODEのキ
ーコード(つまり新たに発音割当てされた新たな押圧鍵
に係るキーコード)をニューキーコードNKCとしてトー
ンジェネレータ部20に送出する。更にステップ130では
キーオンパルスKONPをトーンジェネレータ部20に送出す
る。
押圧されていた鍵が離されたときは第13図のキーオフ
イベントルーチンが実行される。新たに離鍵された鍵の
キーコードをニューキーコードレジスタNKEYに取込み
(ステップ131)、サンプリングフラグSMPFLG,OVWFLGが
“1"であるかを調べ(ステップ132)、NOであることつ
まり演奏モードであることを条件にステップ133に進
み、離鍵された鍵が現在発音中の鍵であるか(NKEY=KC
ODE)を調べる。そうであれば、キーオフパルスKOFPを
トーンジェネレータ部20に送出する。
演奏動作 次に、各演奏モードM1〜M8におけるトーンジェネレー
タ部20の動作について説明する。
(各モード共通の説明) 鍵押圧に応じて、前述のようにして押圧鍵のキーコー
ドがニューキーコードNKCとして与えられ、これに基づ
き、ノートクロック発生回路34から押圧鍵のノートクロ
ックパルスφ0が発生される。また、キーオンパルスKON
Pによりオフ回路52を介してフリップフロップ43がセッ
トされ、アドレスカウンタ37のカウント入力CLKに対し
てノートクロックパルスφ1が入力される状態となり、
アドレス信号のカウントが開始される。
T−フリップフロップ41から発生される方向指示信号
DIRの内容は、後述するように、各演奏モードに対応す
る信号M1〜M8の状態に応じて異なる。これに応じてアド
レスカウンタ37のカウント方向が決定され、ノートクロ
ックパルスφ1に応じてアドレス信号が変化し、データ
メモリ21から波形サンプルデータが読み出される。
また、前述のようにして鍵押圧及び離鍵に対応して発
生されるキーオンパルスKONPとキーオフパルスKOFPがオ
ア回路66,70を介してエベロープ発生器47に与えられ、
これに応じてエンベロープ波形データが発生され。デー
タメモリ21から読み出された波形サンプルデータの音量
エンベロープがこのエンベロープ波形データに応じて制
御されて発音される。なお、エンベロープ波形設定用の
各データAT,DT,SL,RTはエンベロープ操作子群17によっ
て設定された内容となっており、これに応じて設定され
る適宜の形状のエンベロープ波形によって波形サンプル
データの音量エンベロープが制御される。
なお、比較器38からエンドパルスENDが発生されたと
きの処理は、後述するように、各演奏モードに対応する
信号M1〜M8の状態に応じて異なる。
(モードM1:通常演奏) モード信号M1が“1"のときは、オア回路54,55を介し
て与えられるキーオンパルスKONPと信号M1の“1"によっ
てアンド回路56の条件が成立し、T−フリップフロップ
41がセットされ、方向指示信号DIRが“1"となる。ま
た、キーオンパルスKONPに応じてオア回路53からプリセ
ットパルスPRPが発生される。これにより、前述のオウ
ム返し発音のときと同様に、初期アドレス(オール
“0")を起点とし、エンドアドレスLPADを終点としてデ
ータメモリ21から順方向に1回だけ波形サンプルデータ
が読み出される。
読出しアドレスがエンドアドレスLPADに到達すると、
比較器38からエンドパルスENDが発生される。このエン
ドパルスENDは、アンド回路60,71,72,73に加わる。アン
ド回路60の他の入力にはオア回路61を介して信号M1の
“1"が与えられており、エンドパルスENDに応じてアン
ド回路60,オア回路62,遅延フリップフロップ63を介して
フリップフロップ43のリセット入力Rに“1"が与えられ
る。これにより、読出しアドレスがエンドアドレスLPAD
に到達したとき、アドレスカウンタ37のカウントが停止
する。他のアンド回路71,72,73は、信号M1が“1"のとき
は動作しない。
こうして、演奏モードM1つまり通常のメモリ読出しモ
ードの場合は、データメモリ21を順方向に1回だけ読み
出して発音する。
(モードM2:リバース) モード信号M2が“1"のときは、オア回路54,74を介し
て与えられるキーオンパルスKONPと信号M2の“1"によっ
てアンド回路75の条件が成立し、T−フリップフロップ
41のリセット入力Rに“1"が与えられる。これにより、
T−フリップフロップ41がリセットされ、方向指示信号
DIRが“0"となる。この方向指示信号DIRの“0"により、
セレクタ42では、エンドアドレスデータLPADを選択し、
セレクタ39では、初期アドレスデータ(オール“0")を
選択する。また、キーオンパルスKONPに応じてオア回路
53がプリセットパルスPRPが発生される。これにより、
上述のモードM1のときとは逆に、エンドアドレスLPADを
起点とし、初期アドレスを終点としてデータメモリ21か
ら逆方向に1回だけ波形サンプルデータが読み出され
る。
読出しアドレスが初期アドレスに到達すると、比較器
38からエンドパルスENDが発生される。このエンドパル
スENDは、アンド回路60,71,72,73に加わる。アンド回路
60の他の入力にはオア回路61を介して信号M2の“1"が与
えられており、エンドパルスENDに応じてアンド回路60,
オア回路62,遅延フリップフロップ63を介してフリップ
フロップ43のリセット入力Rに“1"が与えられる。これ
により、読出しアドレスが初期アドレスに到達したと
き、アドレスカウンタ37のカウントが停止する。他のア
ンド回路71,72,73は、信号M2が“1"のときは動作しな
い。
こうして、演奏モードM2つまり「リバース」モードの
場合は、データメモリ21を逆方向に1回だけ読み出して
発音する。
(モードM3:ループ) モード信号M3が“1"のときは、オア回路54,55を介し
て与えられるキーオンパルスKONPと信号M3の“1"によっ
てアンド回路56の条件が成立し、T−フリップフロップ
41がセットされ、方向指示信号DIRが“1"となる。ま
た、キーオンパルスKONPに応じてオア回路53からプリセ
ットパルスPRPが発生される。これにより、モードM1の
ときと同様に、初期アドレスを起点とし、エンドアドレ
スLPADを終点としてデータメモリ21から順方向に波形サ
ンプルデータが読み出される。
読出しアドレスがエンドアドレスLPADに到達すると、
比較器38からエンドパルスENDが発生される。このエン
ドパルスENDは、アンド回路60に加わるが、オア回路61
にはモード信号M3〜M8が与えられていないので、エンド
パルスENDによってはフリップフロップ43がリセットさ
れず、アドレスカウンタ37のカウントは停止しない。
一方、信号M1,M2の“0"によりオア回路68の出力が
“0"、これを反転したインバータ76の出力が“1"とな
り、エンドパルスENDに応じてアンド回路72の出力が
“1"となる。アンド回路72の出力“1"はアンド回路77に
加わる。アンド回路77の他の入力であるインバータ83の
出力信号は信号M4,M7が“0"のときは常時“1"であるた
め、エンドパルスENDに応じてアンド回路77の条件が成
立し、アンド回路77の出力信号“1"に応じて遅延フリッ
プフロップ78、オア回路53を介してプリセットパルスPR
Pが発生される。
一方、エンドパルスENDはアンド回路71にも加わる
が、オア回路79の出力が“0"であるため、アンド回路71
の条件が成立せず、T−フリップフロップ41の状態は変
化しない。従って、方向指示信号DIRは“1"のまま変化
せず、読出しアドレスがエンドアドレスLPADに到達した
ときに上述のように発生されるプリセットパルスPRPに
応じて、再び、アドレスカウンタ37に初期アドレスデー
タ(オール“0")がプリセットされ、かつレジスタ40に
はエンドアドレスデータLPADがロードされる。また、ア
ドレスカウンタ37はアップカウントモードのままであ
る。こうして、初期アドレスを起点とし、エンドアドレ
スLPADを終点としてデータメモリ21から再び順方向に波
形サンプルデータが読み出される。
こうして、「ループ」の場合は、データメモリ21の波
形サンプルデータが順方向に繰返し読み出され、サンプ
リングした外部音に基づく楽音が何回も繰返し発音され
る。押圧鍵を離鍵して音量制御エンベロープを減衰させ
ることにより、発音を終了することができる。
(モードM4:Uターン) モード信号M4が“1"のときは、オア回路54,55を介し
て与えられるキーオンパルスKONPと信号M4の“1"によっ
てアンド回路56の条件が成立し、T−フリップフロップ
41がセットされ、方向指示信号DIRが“1"となる。ま
た、キーオンパルスKONPに応じてオア回路53からプリセ
ットパルスPRPが発生される。これにより、モードM1の
ときと同様に、初期アドレスを起点とし、エンドアドレ
スLPADを終点としてデータメモリ21から順方向に波形サ
ンプルデータが読み出される。
読出しアドレスがエンドアドレスLPADに到達すると、
比較器38からエンドパルスENDが発生される。このエン
ドパルスENDは、アンド回路60に加わるが、オア回路61
にはモード信号M3〜M8が与えられていないので、アンド
回路60の出力は“0"のままである。また、エンドパルス
ENDは、アンド回路73に加わるが、この出力も“0"であ
る。つまり、信号M4が“1"のとき方向指示信号DIRが
“1"(つまりアドレスが順方向に変化している)なら
ば、該信号M4と方向指示信号DIRの反転信号を入力した
アンド回路85の出力が“0"、信号M7と信号DIRが入力さ
れたアンド回路86の出力も“0"であり、オア回路87から
アンド回路73に加わる信号は“0"であり、アンド回路73
の条件は成立しない。従って、アンド回路60,73の出力
を入力したオア回路62の出力は“0"であり、順方向のカ
ウント動作中に発生されるエンドパルスENDによっては
フリップフロップ43はリセットされず、アドレスカウン
タ37のカウントは停止しない。
一方、信号M1,M2の“0"によりオア回路68の出力が
“0"、これを反転したインバータ76の出力が“1"とな
り、エンドパルスENDに応じてアンド回路72の出力が
“1"となる。アンド回路72の出力“1"はアンド回路77に
加わる。信号M4が“1"のとき方向指示信号DIRが“1"
(つまりアドレスが順方向に変化している)ならば、該
信号M4と方向指示信号DIRの反転信号を入力したアンド
回路80の出力が“0"、信号M7と信号DIRが入力されたア
ンド回路81の出力も“0"であり、両アンド回路80,81の
出力を入力したオア回路82の出力が“0"、これを反転し
たインバータ83の出力が“1"であり、これを入力したア
ンド回路77の出力が“1"となる。従って、アンド回路77
の出力信号“1"に応じて遅延フリップフロップ78、オア
回路53を介してプリセットパルスPRPが発生される。
一方、エンドパルスENDはアンド回路71にも加わり、
信号M4の“1"によりオア回路79の出力が“1"であるた
め、アンド回路71の条件が成立し、遅延フリップフロッ
プ84を介してT−フリップフロップ41のカウント入力C
に“1"が加わり、該T−フリップフロップ41の状態が
“1"から“0"に反転する。従って、方向指示信号DIRは
“0"となる。これにより、セレクタ42では、エンドアド
レスデータLPADを選択し、セレクタ39では、初期アドレ
スデータ(オール“0")を選択し、上述のように発生し
たプリセットパルスPRPにより、これらがカウンタ37に
プリセットされ、また、レジスタ40にロードされる。こ
うして、前回とは逆に、エンドアドレスLPADを起点と
し、初期アドレスを終点としてデータメモリ21から逆方
向に波形サンプルデータが読み出される。
読出しアドレスが初期アドレスに到達すると、比較器
38からエンドパルスENDが発生される。今度は、方向指
示信号DIRは“0"であり、その反転信号は“1"であり、
アンド回路80と85の条件が成立する。これにより、アン
ド回路73の出力が“1"となり、フリップフロップ43がリ
セットされる。これにより、読出しアドレスが初期アド
レス(オール“0")に到達したとき、アドレスカウンタ
37のカウントが停止する。また、アンド回路80の出力
“1"によりアンド回路77の出力が“0"となり、プリセッ
トパルスPRPはもはや発生されない。
こうして、「Uターン」の場合は、データメモリ21の
波形サンプルデータを順方向に1回読み出した後、該デ
ータメモリ21の波形サンプルデータを逆方向に折返して
1回読み出す。
(モードM5:リバース・ループ) モード信号M5が“1"のときは、オア回路54,74を介し
て与えられるキーオンパルスKONPと信号M5の“1"によっ
てアンド回路75の条件が成立し、T−フリップフロップ
41のリセット入力Rに“1"が与えられる。これにより、
T−フリップフロップ41がリセットされ、方向指示信号
DIRが“0"となる。この方向指示信号DIRの“0"により、
上述のモードM2のときと同様に、エンドアドレスLPADを
起点とし、初期アドレスを終点としてデータメモリ21か
ら逆方向に波形サンプルデータが読み出される。
読出しアドレスが初期アドレスに到達すると、比較器
38からエンドパルスENDが発生される。モードM3(ルー
プ)のときと同様に、エンドパルスENDによってはフリ
ップフロップ43がリセットされず、アドレスカウンタ37
のカウントは停止しない。また、エンドパルスENDに応
じてアンド回路77の条件が成立し、プリセットパルスPR
Pが発生される。また、エンドパルスENDが発生してもア
ンド回路71の条件が成立せず、T−フリップフロップ41
の状態は変化しない。従って、方向指示信号DIRは“0"
のまま変化せず、読出しアドレスが初期アドレスに到達
したときに上述のように発生されるプリセットパルスPR
Pに応じて、再び、アドレスカウンタ37にエンドアドレ
スデータLPADがプリセットされ、かつレジスタ40には初
期アドレスデータ(オール“0")がロードされる。ま
た、アドレスカウンタ37はダウンカウントモードのまま
である。こうして、エンドアドレスLPADを起点とし、初
期アドレスを終点としてデータメモリ21から再び逆方向
に波形サンプルデータが読み出される。
こうして、「リバース・ループ」の場合は、データメ
モリ21の波形サンプルデータが逆方向に繰返し読み出さ
れ、サンプリングした外部音を時間的に逆方向に並べ替
えた楽音が何回も繰返し発音される。押圧鍵を離鍵して
音量制御エンベロープを減衰させることにより、この発
音を終了することができる。
(モードM6:Uターン・ループ) モード信号M6が“1"のときは、オア回路54,55を介し
て与えられるキーオンパルスKONPと信号M6の“1"によっ
てアンド回路56の条件が成立し、T−フリップフロップ
41がセットされ、方向指示信号DIRが“1"となる。ま
た、キーオンパルスKONPに応じてオア回路53からプリセ
ットパルスPRPが発生される。これにより、モードM1の
ときと同様に、初期アドレスを起点とし、エンドアドレ
スLPADを終点としてデータメモリ21から順方向に波形サ
ンプルデータが読み出される。
読出しアドレスがエンドアドレスLPADに到達すると、
比較器38からエンドパルスENDが発生される。信号M6が
“1"のときは、アンド回路73の条件は成立せず、エンド
パルスENDによってはフリップフロップ43はリセットさ
れず、アドレスカウンタ37のカウントは停止しない。ま
た、エンドパルスENDによってアンド回路77の条件が成
立し、プリセットパルスPRPが発生される。また、信号M
6の“1"によりオア回路79の出力が“1"であるため、エ
ンドパルスENDによってアンド回路71の条件が成立し、
遅延フリップフロップ84を介してT−フリップフロップ
41のカウント入力Cに“1"が加わり、該T−フリップフ
ロップ41の状態が“1"から“0"に反転する。従って、方
向指示信号DIRは“0"となる。これにより、アドレスカ
ウンタ37のカウント方向が前回とは逆になり、エンドア
ドレスLPADを起点とし、初期アドレスを終点としてデー
タメモリ21から逆方向に波形サンプルデータが読み出さ
れる。
読出しアドレスが初期アドレスに到達すると、エンド
パルスENDが発生され、前述と同様に、アンド回路71と7
7の条件が成立し、プリセットパルスPRPが発生されると
共に、T−フリップフロップ41の状態が“0"から“1"に
反転して方向指示信号DIRが“1"となる。これにより、
アドレスカウンタ37のカウント方向が順方向に戻り、初
期アドレスを起点とし、エンドアドレスLPADを終点とし
てデータメモリ21から順方向に波形サンプルデータが読
み出される。次に、エンドパルスENDが発生されると、
アドレスカウンタ37のカウント方向が逆方向にされる。
以後、同様に、エンドパルスENDが発生される毎に、
Uターン読出しを繰返す。
こうして、「Uターン・ループ」の場合は、データメ
モリ21の波形サンプルデータを順方向に読み出した後、
該データメモリ21の波形サンプルデータを逆方向に折返
して読み出すUターン読出しを何回も繰返す。
(モードM7:Uターン・リバース) モード信号M7が“1"のときは、オア回路54,74を介し
て与えられるキーオンパルスKONPと信号M7の“1"によっ
てアンド回路75の条件が成立し、T−フリップフロップ
41がリセットされ、方向指示信号DIRが“0"となる。こ
の方向指示信号DIRの“0"により、上述のモードM2(リ
バース)のときと同様に、エンドアドレスLPADを起点と
し、初期アドレスを終点としてデータメモリ21から逆方
向に波形サンプルデータが読み出される。
読出しアドレスが初期アドレスに到達すると、比較器
38からエンドパルスENDが発生される。このエンドパル
スENDは、アンド回路73に加わるが、この出力は“0"で
ある。つまり、信号M7が“1"のとき回路指示信号DIRが
“0"(つまりアドレスが逆方向に変化している)なら
ば、該信号M7と方向指示信号DIRを入力したアンド回路8
6の出力が“0"、アンド回路85の出力も“0"であり、オ
ア回路87からアンド回路73に加わる信号は“0"であり、
アンド回路73の条件は成立しない。従って、モードM7の
ときは、逆方向のカウント動作中に発生されるエンドパ
ルスENDによってはフリップフロップ43はリセットされ
ず、アンドカウンタ37のカウントは停止しない。
また、信号M7の“1"と方向指示信号DIRの“0"により
アンド回路81及びオア回路82の出力が“0"であり、エン
ドパルスENDに応じてアンド回路77の出力が“1"とな
り、遅延フリップフロップ78、オア回路53を介してプリ
セットパルスPRPが発生される。
一方、エンドパルスENDはアンド回路71にも加わり、
信号M7の“1"によりオア回路79の出力が“1"であるた
め、アンド回路71の条件が成立し、遅延フリップフロッ
プ84を介してT−フリップフロップ41のカウント入力C
に“1"が加わり、該T−フリップフロップ41の状態が
“0"から“1"に反転する。従って、方向指示信号DIRは
“1"となる。これにより、セレクタ42では、初期アドレ
スデータ(オール“0")を選択し、セレクタ39では、エ
ンドアドレスデータLPADを選択し、上述のように発生し
たプリセットパルスPRPにより、これらがカウンタ37に
プリセットされ、また、レジスタ40にロードされる。こ
うして、前回とは逆に、初期アドレスを起点とし、エン
ドアドレスLPADを終点としてデータメモリ21から順方向
に波形サンプルデータが読み出される。
読出しアドレスがエンドアドレスLPADに到達すると、
比較器38からエンドパルスENDが発生される。今度は、
方向指示信号DIRは“1"であり、アンド回路81と86の条
件が成立する。これにより、アンド回路73の出力が“1"
となり、フリップフロップ43がリセットされる。これに
より、読出しアドレスがエンドアドレスLPADに到達した
とき、アドレスカウンタ37のカウントが停止する。ま
た、アンド回路81の出力“1"によりアンド回路77の出力
が“0"となり、プリセットパルスPRPはもはや発生され
ない。
こうして、「Uターン・リバース」の場合は、データ
メモリ21の波形サンプルデータを逆方向に1回読み出し
た後、該データメモリ21の波形サンプルデータを順方向
に折返して1回読み出す。これにより、サンプリングし
た外部音を時間的に逆方向に並べ替えた楽音を1回発音
した後、該サンプリング音を時間的に順方向に直しても
う1回発音する、という新しい演奏効果を実現すること
ができる。
(モードM8:Uターン・リバース・ループ) モード信号M8が“1"のときは、オア回路54,74を介し
て与えられるキーオンパルスKONPと信号M8の“1"によっ
てアンド回路75の条件が成立し、T−フリップフロップ
41がリセットされ、方向指示信号DIRが“0"となる。こ
の方向指示信号DIRの“0"により、上述のモードM7(U
ターン・リバース)のときと同様に、エンドアドレスLP
ADを起点とし、初期アドレスを終点としてデータメモリ
21から逆方向に波形サンプルデータが読み出される。
読出しアドレスが初期アドレスに到達すると、比較器
38からエンドパルスENDが発生される。信号M8が“1"の
ときは、アンド回路73の条件は成立せず、エンドパルス
ENDによってはフリップフロップ43はリセットされず、
アドレスカウンタ37のカウントは停止しない。また、エ
ンドパルスENDによってアンド回路77の条件が成立し、
プリセットパルスPRPが発生される。また、信号M8の
“1"によりオア回路79の出力が“1"であるため、エンド
パルスENDによってアンド回路71の条件が成立し、遅延
フリップフロップ84を介してT−フリップフロップ41の
カウント入力Cに“1"が加わり、該T−フリップフロッ
プ41の状態が“0"から“1"に反転する。従って、方向指
示信号DIRは“1"となる。これにより、アドレスカウン
タ37のカウント方向が前回とは逆になり、初期アドレス
(オール“0")を起点とし、エンドアドレスLPADを終点
としてデータメモリ21から順方向に波形サンプルデータ
が読み出される。
読出しアドレスがエンドアドレスLPADに到達すると、
エンドパルスENDが発生され、前述と同様に、アンド回
路71と77の条件が成立し、プリセットパルスPRPが発生
されると共に、T−フリップフロップ41の状態が“1"か
ら“0"に反転して方向指示信号DIRが“0"となる。これ
により、アドレスカウンタ37のカウント方向が逆方向に
戻り、エンドアドレスLPADを起点とし、初期アドレスを
終点としてデータメモリ21から逆方向に波形サンプルデ
ータが読み出される。次に、エンドパルスENDが発生さ
れると、アドレスカウンタ37のカウント方向が順方向に
される。
以後、同様に、エンドパルスENDが発生される毎に、
「Uターン・リバース」読出しを繰返す。
こうして、「Uターン・リバース・ループ」の場合
は、データメモリ21の波形サンプルデータを逆方向に読
み出した後、該データメモリ21の波形サンプルデータを
順方向に折返して読み出す「Uターン・リバース」読出
しを何回も繰返す。これにより、サンプリングした外部
音を時間的に逆方向に並べ替えた楽音を1回発音した
後、該サンプリング音を時間的に順方向に直してもう1
回発音する、という「Uターン・リバース」を何回も繰
返して新しい演奏効果を実現することができる。押圧鍵
を離鍵して音量制御エンベロープを減衰させることによ
り、この発音を終了することができる。
エンドアドレスの増減変更処理 前述の第14図のステップ115の処理により、マイクロ
コンピュータ部内のエンドアドレスバッファLPADBに記
憶するエンドアドレスデータとして、サンプリングした
原波形における最終ゼロクロス部分のデータを記憶して
いるアドレスつまり最終ゼロクロスアドレス(一例とし
てブロック単位のアドレス)が初期設定される。前述の
各演奏モードM1〜M8においてトーンジェネレータ部20で
利用されるエンドアドレスデータLPADはこのエンドアド
レスバッファLPADBに記憶されたデータであり、上記の
ように初期設定されたままであるとすると、前出のエン
ドアドレスデータLPADはサンプリングした原波形におけ
る最終ゼロクロスアドレスそのもの(つまりゼロクロス
アドレスバッファZCRADBに記憶しているデータ)であ
る。
このように、サンプリングした原波形における最終ゼ
ロクロスアドレスデータそのものをエンドアドレスデー
タLPADとして使用した場合は、外部からサンプリングし
た原波形全部に対応する楽音が演奏モード時に発音され
る。しかし、前述の各演奏モードM1〜M8においてトーン
ジェネレータ部20で利用するエンドアドレスデータLPAD
を、サンプリングした原波形における最終ゼロクロスア
ドレスデータそのものに限定せずに、適宜変更できるよ
うにすれば、演奏効果を更に高めることができる。
そのために、このエンドアドレスデータLPADを変更す
ることは、増加スイッチINC及び減少スイッチDECの操作
によって行うことができる。なお、この実施例では、サ
ンプリングした波形データを繰返し読み出して発音する
モードのとき、つまり「ループ」、「リバース・ルー
プ」、「Uターン・ループ」、又は「Uターン・リバー
ス・ループ」のとき、そのような変更処理が可能となっ
ている。これは、そのような繰返し演奏のときにエンド
アドレスの調整により繰返しの1サイクル長を制御する
ことはかなり有効だからである。しかし、これに限ら
ず、他の演奏モードのときにもエンドアドレスデータLP
ADの増減変更が行えるようにしてもよい。
増加スイッチINCがオンされると、第17図の増加イベ
ントルーチンが実行される。ここでは、ステップ135に
おいてループフラグLPFLGが“1"であるかを調べ、YESな
らステップ136に行くが、NOならばリターンへ行く。こ
れは、上述の「ループ」関連の演奏モードM3,M5,M6,M8
のときにこの制御を行うためである。ステップ136にお
いては、エンドアドレスバッファLPADBの内容を1増加
する。なお、この増加演算でバッファLPADBの内容が最
大値に達した場合は最大値を保持するものとする。前述
の通りバッファLPADBに記憶されるデータはブロック単
位であるため、この増加もブロック単位で行われる。こ
の場合、最大値は「15」である。次のステップ137で
は、エンドアドレスバッファLPADBの内容をエンドアド
レスデータLPADとしてトーンジェネレータ部20に送出す
る。
減少スイッチDECがオンされると、第18図の減少イベ
ントルーチンが実行される。ここのステップ135a,136a,
137aの処理は第17図の各ステップ135,136,137の処理と
ほぼ同様であり、異なる点は、ステップ136ではエンド
アドレスバッファLPADBの内容を1増加したのに対し
て、ステップ136aではこのバッファLPADBの内容を1減
少する点だけである。
こうして、エンドアドレスバッファLPADBの内容を増
減変更することによりトーンジェネレータ部20で利用す
るエンドアドレスデータLPADの値を増減変更することが
できる。
このようにエンドアドレスデータLPADの値を増減変更
することにより、順方向読み出しにおいては終点のアド
レスを、逆方向読み出しにおいては起点のアドレスを夫
々変更・調整することができ、ループ演奏における繰返
しの基点アドレスを自由に変更することができる。従っ
て、このエンドアドレスデータLPADの増減変更の調整の
仕方によって、繰返し読み出しの態様を自由に変更する
ことができる。
例えば、波形サンプルデータの最終アドレスの手前の
アドレスに記憶した波形サンプルデータ部分にノイズが
含まれているような場合は、エンドアドレスデータLPAD
の値を減少して手前のアドレス寄りに適宜調整すること
により、演奏時にデータメモリ21から読み出すべきアド
レスの範囲内にノイズを含むアドレスが入らないように
することができ、こうしてノイズを含む波形サンプルデ
ータの部分の発音をカットすることができる。
あるいは、エンドアドレスデータLPADの値を増加して
波形サンプルデータの最終アドレスよりも先のアドレス
に適宜調整することにより、演奏時にデータメモリ21か
ら読み出すべきアドレスの範囲を波形サンプルデータが
実際には記憶されていないアドレスにまで拡大すること
ができ、この拡大されたアドレス範囲で繰返し読出しを
行うことにより、繰返し読出しのつなぎ目で意識的に適
当な長さの無音区間を作り、この無音区間の存在により
音が断続的に繰返される特殊な演奏効果を作り出すこと
もできる。
なお、増加スイッチINC及び減少スイッチDECによって
変更されるのはエンドアドレスバッファLPADBの内容で
あり、ゼロクロスアドレスバッファZCRADBに記憶した原
波形における本来の最終ゼロクロスアドレスは変更され
ない。これは、後述するオールキャンセル処理のとき、
エンドアドレスバッファLPADBの内容を原波形における
本来の最終ゼロクロスアドレスに戻すために利用され
る。
エコー効果 エコースイッチECHOがオンされると、第16図のエコー
イベントルーチンが実行される。ステップ138では、エ
コーフラグECFLGを“0"から“1"に、又は“1"から“0"
に、反転する。ステップ139では、エコーフラグECFLGが
“1"であるかを調べ、“1"であれば、ステップ140に行
き、ループフラグLPFLGの内容をループフラグバッファL
PFLGBに保存してから該ループフラグLPFLGを“1"にセッ
トする。こうして、演奏モードを「ループ」に関連する
モード、つまり「ループ」、「リバース・ループ」、
「Uターン・ループ」、又は「Uターン・リバー・ルー
プ」に自動的に設定する。
次のステップ124a,125aでは、第15図のステップ124,1
25と同じ処理を行い、演奏モードをM1〜M8の何れかに決
定する。但し、この場合はループフラグLPFLGが“1"に
セットされているので、「ループ」関連の演奏モードM
3,M5,M6,M8の何れかに必ず決定される。
次に、ステップ141ではレリースタイムバッファRTBの
内容をレリースタイム保存バッファRTBUFに記憶し、ス
テップ142ではレリースタイムバッファRTBの内容を最大
値MAXに設定する。そして、ステップ143ではレリースタ
イムバッファRTBの内容をトーンジェネレータ部20に対
してレリースタイムデータRTとして送出する。
これにより、エンベロープ発生器47から発生されるエ
ンベロープ波形データのレリース時間が最長に設定さ
れ、発生楽音は、離鍵後に極めて緩やかに減衰するよう
になる。しかも、演奏モードは「ループ」関連のモード
M3,M5,M6,M8の何れかに設定されるので、データメモリ2
1に記憶した波形サンプルデータが順方向又は逆方向又
は交互に順方向と逆方向に切り替わりながら繰返し読み
出され、それに対応する楽音が次第に小さくなる音量レ
ベルで繰返し発音される。なお、繰返し読み出される波
形サンプルデータは外部音をサンプリングしたものであ
るため、一般に、それ自体で音の立上りから立下りに至
る振幅エンベロープを具備している。従って、音の立上
りから立下りに至る振幅エンベロープを具備した音が何
回も繰返し発音され、しかもその音量が次第に減衰す
る、エコーのような効果を実現することができる。しか
も、単なる従来のエコーと異なる点は、「ループ」関連
の演奏モードM3,M5,M6,M8による発音制御によって、音
がその本来の時系列とは逆に発音されたり、本来の時系
列通りに発音されたり、その組合せで交互に発音された
りすることである。しかも、上述のようなエンドアドレ
スの増減調整制御と組合せることにより、従来全くなか
った自由なエコー効果を実現することもできる。
エコーフラグECFLGが“0"になると、ステップ144の処
理によりループフラグバッファLPFLGBの内容をループフ
ラグLPFLGにに戻すことにより、該ループフラグLPFLGの
内容をエコー効果をかける前の状態に戻す。次のステッ
プ124a,125bでは、第15図のステップ124,125と同じ処理
を行い、演奏モードをM1〜M8の何れかに決定する。次の
ステップ145では、レリースタイム保存バッファRTBUFの
内容をレリースタイムバッファRTBに戻すことにより、
該レリースタイムバッファRTBの内容をエコー効果をか
ける前の状態に戻す。
オールキャンセル処理 サンプリングした波形サンプルデータに関連して操作
パネル部15で設定・選択・変更・調整した各種のデータ
の全く又は所定のものを、キャンセルし、これらのデー
タの内容を最初にサンプリングしたときの状態に戻した
い場合は、オールキャンセルスイッチCANSELを操作す
る。すると、第19図のオールキャンセルイベントルーチ
ンが実行される。
まず、ステップ146では、各フラグSMPFLG,OVWFLG,LPF
LG,UTFLG,RVFLG,ECFLGを“0"にリセットする。これは、
操作パネル部15における各スイッチSMPL,OVRWR,LOOP,UT
RN,RVRS,ECHOの操作に応じて設定されたサンプリングモ
ードや演奏モードM2〜M8をキャンセルし、演奏モードM1
に初期設定するためである。
次のステップ147では、ゼロクロスアドレスバッファZ
CRADBに記憶している原波形における本来の最終ゼロク
ロスアドレスデータをエンドアソレスバッファLPADBに
記憶する。これは、前述のようにエンドアドレスバッフ
ァLPADBの内容は増加スイッチINC及び減少スイッチDEC
の操作に応じて変更されることがあるので、そのような
変更をキャンセルして、エンドアドレスバッファLPADB
の内容を原波形における本来の最終ゼロクロスアドレス
に戻すためである。
ステップ148では、アタックタイムバッファATB、ディ
ケイタイムバッファDTB、サステインレベルバッファSL
B、レリースタイムバッファRTBの内容を前述の直接キー
イング型のエンベロープ波形を設定する内容に初期設定
する。これは、エンベロープ制御操作子群17の操作に応
じて変更された各バッファATB,DTB,SLB,RTBの内容をキ
ャンセルして、直接キーイング型のエンベロープ波形を
設定する内容に初期設定するためである。
ステップ149では、トーンジェネレータ部20に与える
べきデータを次のように初期設定してトーンジェネレー
タ部20に送出する。サンプリングモード信号SM1及びSM2
を“0"にする。演奏モード信号M1を“1"にし、残りの演
奏モード信号M2〜M8を“0"にする。エンドアドレスデー
タLPADを、エンドアドレスバッファLPADBに記憶された
最終ゼロクロスアドレスデータに設定する。アタックタ
イムデータAT、ディケイタイムテータDT、サステインレ
ベルデータSL、レリースタイムデータRTとして、夫々上
記バッファATB,DTB,SLB,RTBの内容を設定する。次のス
テップ150では、各種楽音効果用のデータも所定の内容
に初期設定する。
このように、オールキャンセルスイッチCANSELが操作
されると、波形サンプルデータに関連して操作パネル部
15で設定・選択・変更・調整した各種のデータの全て又
は所定のものが、キャンセルされ、これらのデータの内
容が最初にサンプリングしたときの状態に戻される。つ
まり、サンプリングした波形サンプルデータに関連して
編集した様々のデータの編集内容がキャンセルされ、編
集前の初期状態に戻されるのである。このように編集内
容をキャンセルして編集前の初期状態に戻せるようにす
ることにより、失敗をおそれることなく、自由な編集を
行うことができるようになり、サンプリングした波形サ
ンプルデータに関連する編集機能を向上させることがで
きる。
変更例 上記実施例では、データメモリに記憶する波形サンプ
ルデータは、PCM(パルスコード変調)方式で表現され
ているものとしているが、これに限らず、差分PCMや適
応差分PCM、デルタ変調(DM)、適応デルタ変調(ADM)
など、適宜のデータ圧縮方式を用いて表現するようにし
てもよい。また、サンプリングした波形サンプルデータ
に対して適宜のデータ補正処理(例えばその振幅レベル
が全区画でほぼ一定になるように規格化する処理など)
を行った後データメモリに書き込むようにしてもよい。
この場合、上記データ補正処理(レベル規格化処理な
ど)はマイクロフォンでピックアップしたアナログの音
信号に対し行うようにしてもよい。
マイクロコンピュータ部におけるソフトウェア処理に
よって実行する第8図〜第19図の処理は、専用のハード
ウェア回路によって実施してもよい。反対に、トーンジ
ェネレータ部におけるデータメモリの読み書き制御回路
は、第6図では専用のハードウェアによって構成してい
るが、これはマイクロコンピュータ部におけるソフトウ
ェア処理によって実行するようにすることもできる。ま
た、第6図では読み書き制御に一部共通の回路(例えば
アドレスカウンタなど)が用いられているが、書込み制
御と読出し制御を別々の回路で行ってもよい。
上記実施例では、単音発音方式であるが、複音発音方
式であってもよいのは勿論である。その場合は、周知の
複数チャンネルに対する発音割当て処理技術を用いれば
よい。
また、上記実施例では、鍵盤を具えた電子楽器におい
てこの発明の楽音発明装置が適用されているが、これに
限らず、その他の電気又は電子楽器、若しくは、モジュ
ール化された鍵盤あるいは適宜の入力機器や、サウンド
システム、効果装置あるいは汎用コンピュータなどと適
宜選択的に接続して使用される音源装置モジュールにお
いてこの発明の楽音発生装置を適用するようにしてもよ
い。
また、上記実施例では特に示さなかったが、操作パネ
ル部において、現在選択されている演奏モードや、現在
設定されているエンドアドレスデータLPADの内容、各種
のエンベロープ設定データの内容、その他の各種設定デ
ータの内容、などを表示するLED等からなる表示器を設
けるとよい。
また、上記実施例では、3つのスイッチRVRS,UTRN,LO
OPの操作に応じて8つの演奏モードM1〜M8を決定するよ
うにしているが、各モードM1〜M8を個別に選択するため
のスイッチを別々に設けてもよい。
第6図のトーンジェネレータ部においては外部からサ
ンプリングした音だけを音源としているが、これに限ら
ず、他の適宜の音源を有し、既成の複数の音色と外部サ
ンプリング音の音色の中から所望の音色を適宜選択でき
る構成としてもよい。
上記実施例では外部音をサンプリングした直後にサン
プリングした音を自動的にオウム返しに発音するための
トリガとしてのキーオンパルスOKONPをソフトウェア処
理(第14図のステップ118)によって発生しているが、
これは、トーンジェネレータ部における専用のハードウ
ェア回路によって発生するようにしてもよい。そのため
には、例えば、サンプリングエンド信号SMPENDが出たと
きつまりエンドパルスENDが出たときにアドレスカウン
タ37のカウントを停止せずにオーバーフローにまかせて
そのまま初期アドレスからのアップカウントを継続さ
せ、かつサンプリングエンド信号SMPENDをオウム返し用
のキーオンパルスOKONPとしてエンベロープ発生器47に
入力すると共に、サンプリングモード信号SM1,SM2を夫
々“0"にし、モード信号M1を“1"にするとよい。
また、上記実施例では外部音をサンプリングした直後
のオウム返しの発音におけるデータメモリの読出しレー
トは書込みレートと同じであるが、これは異ならせても
よい。
ゼロクロスの検出方法は上記実施例に示したものに限
らず、どのような方法でもよい。例えば、上記実施例の
ようなある程度の幅のあるゼロ判定範囲を採用せずに、
波形サンプルデータのレベルが実際にプラスからマイナ
スに又はマイナスからプラスに変化することを検出する
ようにしてもよい。また、マイクロフォンによってピッ
クアップしたアナログの音信号においてゼロクロスを検
出するようにしてもよい。
また、上記実施例では検出したゼロクロスに対応する
アドレスはブロック単位のデータで記憶しているが、こ
れはアドレス単位のデータで記憶するようにしてもよ
い。
同様に、最終ゼロクロスアドレスに対応するエンドア
ドレスデータ(LPAD)もブロック単位のデータに限ら
ず、アドレス単位のデータで記憶するようにしてもよ
い。その場合、エンドアドレスデータを増減調整する際
の増加量及び減少量もアドレス単位で細かに調整し得る
ようにするとよい。また、増減調整の対象とする基準ア
ドレスは、上記実施例のようなエンドアドレスに限ら
ず、初期アドレスであってもよく、また両方であっても
よい。
また、各ブロック毎に実際の最終ゼロクロスアドレス
を夫々記憶しておき、エンドアドレスデータをブロック
単位で増減調整した場合、エンドアドレスとして定めら
れたブロックにおける実際の最終ゼロクロスアドレスを
エンドアドレス(12ビットのアドレス単位のエンドアド
レス)とするようにしてもよい。
また、上記実施例ではエンドアドレスデータの増減調
整はループフラグが立っているとき、つまりサンプリン
グした外部音に対応する楽音を繰返し発音するときに可
能であるが、これに限らず、他の場合においてもエンド
アドレスデータ(基準アドレスデータ)の増減変更・調
整が行えるようにしてもよい。
また、上記実施例ではオールキャンセル処理において
は操作パネル部で設定・制御した全てのデータをキャン
セルして所定の初期状態に戻すようにしているが、これ
はサンプリングした外部音に密接に関連するデータのみ
キャンセルして所定の初期状態に戻すようにしてもよ
い。例えば、各種楽音効果用のデータはキャンセルしな
くてもよい。
〔発明の効果〕
以上の通り、この発明によれば、外部から入力した音
信号の波形サンプルデータを記憶した記憶手段から該波
形サンプルデータを書込み時のアドレス順序とは逆方向
に読み出し続いて該波形サンプルデータを書込み時のア
ドレス順序に順方向に読み出すことからなるシーケンス
を少なくとも1回行うようにしたので、サンプリングし
た外部音を時間的に逆方向に並べ替えた楽音を最初に1
回発音した後、引き続いて、該サンプリング音を時間的
に順方向に直してもう1回発音する、という新しい演奏
効果を実現することができる。また、このシーケンスを
複数回繰返し行うことによっても新しい演奏効果を実現
することができる。従って、サンプリング方式の楽音発
生装置としての演奏性能を向上させることができる、と
いう優れた効果を奏する。更に、この発明によれば、上
記とは逆に、1つの楽音発生指示に応答して、サンプリ
ングした外部音の波形サンプルデータを時間的に順方向
に読み出した波形データとこれを時間的に逆方向に並べ
替えて読み出した波形データとを接続したものを1つの
楽音信号として発生することもでき、これによっても特
殊な演奏効果を実現する楽音信号を楽音発生指示に対応
して得ることができる、という優れた効果を奏する。特
に、この発明によれば、上記のような逆方向読出しと順
方向読出しのシーケンスあるいは順方向読出しと逆方向
読出しのシーケンスを1回のみ行うかまたは複数回繰返
し行うかを選択できるようにしたことにより、この選択
に応じて異なる態様で楽音を発生することができるもの
であり、1つのサンプリング音を基にして多様なバリエ
ーションで楽音を発生することができるようになる、と
いう優れた効果を奏する。すなわち、そのシーケンスを
1回のみ行うことを選択した場合は、鍵押圧操作等によ
る楽音発生指示を続けていたとしても、1回のシーケン
スが終われば消音状態とすることができ、一方、上記シ
ーケンスを複数回繰返し行うことを選択した場合は、鍵
押圧操作等による楽音発生指示を続けている限り発音を
継続する持続音的な楽音発生態様とすることができるも
のであり、こうして、この選択を適宜行うことにより、
演奏する曲想に合わせた楽音発生態様とすることができ
る、という効果を奏するものである。その場合、逆方向
読み出しを先に行い順方向読み出しを後に行うシーケン
スでは、音の立ち上がりが逆方向読み出しになるために
特殊音の印象を強く与えることができるのに対して、順
方向読み出しを先に行い逆方向読み出しを後に行うシー
ケンスでは、音の立ち上がりが順方向読み出しになるた
めに通常音の印象が比較的強くなる。
更に、この発明によれば、記憶手段に記憶した外部音
の波形サンプルデータを順方向に読み出し、その後続け
て該波形サンプルデータを逆方向に読み出すこと(すな
わち「Uターン読出し」)を選択するUターン読出し選
択手段と、記憶手段に記憶した波形サンプルデータを逆
方向に読み出すこと(すなわち「リバース読出し」)を
選択するリバース読出し選択手段とを有しており、これ
ら各選択手段による個別の選択に応じて前記記憶手段の
読み出しを「Uターン読出し」または「リバース読出
し」によって制御することができるのみならず、これら
選択手段によりUターン読出しとリバース読出しが同時
に選択されたときは、波形サンプルデータを最初に逆方
向に読み出しその後続けて該波形サンプルデータを順方
向に読み出すよう前記記憶手段の読み出しを制御するこ
とができるのみならず、Uターン読出し選択手段及びリ
バース読出し選択手段の各選択状態を初期状態に復帰さ
せるキャンセル手段を具えたことにより、記憶手段の読
出し態様が上記各選択手段によってどのような状態に選
択されていようとも、即座に所定の初期状態に戻すこと
ができるので、特に、演奏中において楽音発生態様を基
本の初期状態に即座に戻したい場合などに有効であり、
演奏性を格段に向上させることができる、という優れた
効果を奏する。
【図面の簡単な説明】
第1図はこの発明に係る楽音発生装置の概要を示す機能
ブロック図、 第2図はこの発明に係る楽音発生装置を適用した電子楽
器の一実施例を示すハ−ド構成図、 第3図は第2図の実施例において実現される各種演奏モ
ードにおけるデータメモリの読出し形態も概略的に示す
図、 第4図は第2図のトーンジェネレータ部に含まれるデー
タメモリのアドレス構成の一例を示す図、 第5図は第2図のマイクロコンピュータ部におけるデー
タ及びワーキングメモリのメモリマップの一例を示す
図、 第6図は第2図のトーンジェネレータ部の詳細例を示す
ブロック図、 第7図は第6図におけるノートクロックパルスの発生例
を示すタイミングチャート、 第8図乃至第19図は第2図のマイクロコンピュータ部に
おいて実行されるプログラムの一例を示すフローチャー
トであって、第8図はメインルーチン、第9図はサンプ
リングイベントルーチン、第10図はオーバーライトイベ
ントルーチン、第11図はタイマビープエンドイベントル
ーチン、第12図はキーオンイベントルーチン、第13図は
キーオフイベントルーチン、第14図はサンプリングエン
ドイベントルーチン、第15図はリバースイベントルーチ
ン及びUターンイベントルーチン及びループイベントル
ーチン、第16図はエコーイベントルーチン、第17図は増
加イベントルーチン、第18図は減少イベントルーチン、
第19図はオールキャンセルイベントルーチンを夫々示す
もの、である。 1……外部音サンプリング手段、2……記憶手段、3…
…書込み制御手段、4……読出し制御手段、14……鍵
盤、15……操作パネル部、16……サンプリング制御操作
子群、17……エンベロープ制御操作子群、18……効果制
御操作子群、20……トーンジェネレータ部、21……デー
タメモリ、22……マイクロフォン、24……タイマビープ
回路、27……アナログ/ディジタル変換器、28……重ね
書き用の加算器、32……ゼロクロス検出回路、33……ゼ
ロクロスアドレスラッチ回路、34……ノートクロック発
生回路、37……アドレスカウンタ、38……比較器、40…
…終点アドレスレジスタ、47……エンベロープ発生器。
───────────────────────────────────────────────────── フロントページの続き (56)参考文献 特開 昭61−245196(JP,A) 特開 昭54−161313(JP,A) 特開 昭60−102693(JP,A) 実開 昭60−33399(JP,U)

Claims (5)

    (57)【特許請求の範囲】
  1. 【請求項1】外部から入力された音信号をサンプリング
    する外部音サンプリング手段と、 波形サンプルデータを記憶する読み書き可能な記憶手段
    と、 前記外部音サンプリング手段でサンプリングされた音信
    号の波形サンプルデータを前記記憶手段に書き込む書込
    み制御手段と、 1つの楽音を発生すべきときに、最初に前記記憶手段の
    波形サンプルデータを前記書込み時のアドレス順序とは
    逆方向に読み出し、続いて該記憶手段の波形サンプルデ
    ータを前記書込み時のアドレス順序に順方向に読み出す
    ことからなるシーケンスを少なくとも1回行う読出し制
    御手段と、 前記読出し制御手段において前記シーケンスを1回のみ
    行うかまたは複数回繰返し行うかを選択する選択手段と を具え、1つの楽音発生指示に応答して、前記逆方向に
    読み出された波形サンプルデータと前記順方向に読み出
    された波形サンプルデータとを接続してなる部分を含む
    1つの楽音信号が発生されることを特徴とする楽音発生
    装置。
  2. 【請求項2】前記書込み制御手段は、所定の初期アドレ
    スを起点として前記音信号の波形サンプルデータを前記
    記憶手段に書き込むものであり、 前記読出し制御手段は、前記記憶手段において前記音信
    号の波形サンプルデータの最終部分が書き込まれている
    アドレスに対応するエンドアドレスを特定し、前記逆方
    向読出しでは該エンドアドレスを起点とし前記初期アド
    レスを終点として読出しを行い、前記順方向読出しでは
    前記初期アドレスを起点とし前記エンドアドレスを終点
    として読出しを行うものである特許請求の範囲第1項記
    載の楽音発生装置。
  3. 【請求項3】前記選択手段は、前記記憶手段に記憶した
    波形サンプルデータを順方向に読み出し、その後続けて
    該波形サンプルデータを逆方向に読み出すことを選択す
    るUターン読出し選択手段と、前記記憶手段に記憶した
    波形サンプルデータを逆方向に読み出すことを選択する
    リバース読出し選択手段と、前記記憶手段からの波形サ
    ンプルデータの読出しを繰り返し行うことを選択するル
    ープ読出し選択手段とを含み、前記Uターン読出し選択
    手段とリバース読出し選択手段によりUターン読出しと
    リバース読出しが同時に選択されたとき、波形サンプル
    データを最初に逆方向に読み出し、その後続けて該波形
    サンプルデータを順方向に読み出すシーケンスを1回を
    行うことを前記読出し制御手段に指示し、前記Uターン
    読出し選択手段とリバース読出し選択手段によるUター
    ン読出しとリバース読出しの選択に加えて前記ループ読
    出し選択手段により繰り返し読出しが選択されたとき、
    前記シーケンスを複数回繰り返し実行することを前記読
    出し制御手段に指示するものである特許請求の範囲第1
    項記載の楽音発生装置。
  4. 【請求項4】外部から入力された音信号をサンプリング
    する外部音サンプリング手段と、 波形サンプルデータを記憶する読み書き可能な記憶手段
    と、 前記外部音サンプリング手段でサンプリングされた音信
    号の波形サンプルデータを前記記憶手段に書き込む書込
    み制御手段と、 1つの楽音を発生すべきときに、最初に前記記憶手段の
    波形サンプルデータを前記書込み時のアドレス順序とは
    順方向に読み出し、続いて該記憶手段の波形サンプルデ
    ータを前記書込み時のアドレス順序に逆方向に読み出す
    ことからなるシーケンスを少なくとも1回行う読出し制
    御手段と、 前記読出し制御手段において前記シーケンスを1回のみ
    行うかまたは複数回繰返し行うかを選択する選択手段と を具え、1つの楽音発生指示に応答して、前記順方向に
    読み出された波形サンプルデータと前記逆方向に読み出
    された波形サンプルデータとを接続してなる部分を含む
    1つの楽音信号が発生されることを特徴とする楽音発生
    装置。
  5. 【請求項5】外部から入力された音信号をサンプリング
    する外部音サンプリング手段と、 波形サンプルデータを記憶する読み書き可能な記憶手段
    と、 前記外部音サンプリング手段でサンプリングされた音信
    号の波形サンプルデータを前記記憶手段に書き込む書込
    み制御手段と、 前記記憶手段に記憶した波形サンプルデータを順方向に
    読み出し、その後続けて該波形サンプルデータを逆方向
    に読み出すことを選択するUターン読出し選択手段と、 前記記憶手段に記憶した波形サンプルデータを逆方向に
    読み出すことを選択するリバース読出し選択手段と、 前記各選択手段による個別の選択に応じて前記記憶手段
    の読み出しを制御すると共に、前記各選択手段によりU
    ターン読出しとリバース読出しが同時に選択されたとき
    は、波形サンプルデータを最初に逆方向に読み出しその
    後続けて該波形サンプルデータを順方向に読み出すよう
    前記記憶手段の読み出しを制御する読出し制御手段と、 前記Uターン読出し選択手段及びリバース読出し選択手
    段の各選択状態を初期状態に復帰させるキャンセル手段
    と を具える楽音発生装置。
JP63086124A 1988-04-07 1988-04-07 楽音発生装置 Expired - Fee Related JP2613788B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP63086124A JP2613788B2 (ja) 1988-04-07 1988-04-07 楽音発生装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP63086124A JP2613788B2 (ja) 1988-04-07 1988-04-07 楽音発生装置

Publications (2)

Publication Number Publication Date
JPS63289594A JPS63289594A (ja) 1988-11-28
JP2613788B2 true JP2613788B2 (ja) 1997-05-28

Family

ID=13877954

Family Applications (1)

Application Number Title Priority Date Filing Date
JP63086124A Expired - Fee Related JP2613788B2 (ja) 1988-04-07 1988-04-07 楽音発生装置

Country Status (1)

Country Link
JP (1) JP2613788B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111754962B (zh) * 2020-05-06 2023-08-22 华南理工大学 基于升降采样的民歌智能辅助作曲系统及方法

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS54161313A (en) * 1978-06-09 1979-12-20 Nippon Gakki Seizo Kk Electronic instrument
JPS6033399U (ja) * 1983-08-15 1985-03-07 株式会社ケンウッド 録音再生装置
JPS61245196A (ja) * 1985-04-24 1986-10-31 ヤマハ株式会社 楽音発生方法および装置

Also Published As

Publication number Publication date
JPS63289594A (ja) 1988-11-28

Similar Documents

Publication Publication Date Title
US4947723A (en) Tone signal generation device having a tone sampling function
US5160798A (en) Tone information processing device for an electronic musical instrument for generating sound having timbre corresponding to two parameters
KR0160493B1 (ko) 디지탈 오디오 신호 발생 장치 및 데이타 처리 장치
EP0149896A2 (en) Method and apparatus for dynamic reproduction of transient and steady state voices in an electronic musical instrument
JP2613788B2 (ja) 楽音発生装置
JP2586094B2 (ja) 楽音発生装置
US5239123A (en) Electronic musical instrument
JPH0664466B2 (ja) 電子楽器
JPH0213318B2 (ja)
US5116192A (en) Tone generation device capable of generating a special tone
JP2754646B2 (ja) 電子楽器
JPH0428319B2 (ja)
JPS6113239B2 (ja)
JPH07101351B2 (ja) 楽音発生装置
JP2701177B2 (ja) 楽音発生装置
JPS6248833B2 (ja)
JPS6359157B2 (ja)
JPS63169694A (ja) 楽音発生装置
JP3660125B2 (ja) 電子楽器の音像定位感制御装置
JPS63169696A (ja) 楽音発生装置
JP2666762B2 (ja) 電子楽器
JP2768241B2 (ja) 信号処理装置
JP2833485B2 (ja) 楽音発生装置
JP3508139B2 (ja) デジタル信号処理プロセッサ
JPS59113493A (ja) 電子楽器

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees