JP2697701B2 - Electronic musical instrument parameter supply device - Google Patents
Electronic musical instrument parameter supply deviceInfo
- Publication number
- JP2697701B2 JP2697701B2 JP7236170A JP23617095A JP2697701B2 JP 2697701 B2 JP2697701 B2 JP 2697701B2 JP 7236170 A JP7236170 A JP 7236170A JP 23617095 A JP23617095 A JP 23617095A JP 2697701 B2 JP2697701 B2 JP 2697701B2
- Authority
- JP
- Japan
- Prior art keywords
- parameter
- data
- signal
- filter
- address
- 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
Links
Landscapes
- Electrophonic Musical Instruments (AREA)
Description
【発明の詳細な説明】
【0001】
【発明の属する技術分野】この発明は、電子楽器その他
の楽音発生機能を有する機器あるいはディジタル音声処
理機器等において使用することができる電子楽器のパラ
メータ供給装置に関する。
【0002】
【従来の技術】電子楽器の音色回路にディジタルフィル
タを用いることは、例えば特開昭59−44096号公
報において示されている。1組のフィルタパラメータが
ディジタルフィルタに供給され、これに応じてフィルタ
特性(振幅一周波数特性)が設定される。音色決定因子
の各内容に対応して複数組のフィルタパラメータがメモ
リに予め記憶され、選択された音色決定因子の内容に応
じて1組のフィルタパラメータが読み出される。
【0003】
【発明が解決しようとする課題】従来のものにおいて
は、複数の音色決定因子(例えば鍵タッチ、音域、定常
的な音色選択情報、時間経過に応じた情報、ブリリアン
ス操作子等手動操作子の操作量など)に応じて異なる音
色制御を行う場合には、各音色決定因子の組合せに1対
1に対応させて複数組のフィルタパラメータをメモリに
記憶しておかねばならなかった。例えば、44通りの音
域、16通りの鍵タッチグループ、32種類の定常音
色、の組合せのすべて(22528通り)に1対1で対
応して個別にフィルタパラメータを記憶する場合、パラ
メータメモリには22528組のパラメータを記憶し得
る大容量が要求される。この発明は上述の点に鑑みてな
されたもので、複数のパラメータ決定因子(音色決定因
子)の組合せに応じて1組のパラメータを、楽音の設定
又は制御のために供給するようにする場合において、パ
ラメータメモリの容量を節約できるようにした電子楽器
のパラメータ供給装置を提供しようとするものである。
【0004】
【課題を解決するための手段】 この発明に係る電子楽
器のパラメータ供給装置は、複数組のパラメータを記憶
したパラメータ記憶手段と、音色情報、第1のパラメー
タ決定因子情報および第2のパラメータ決定因子情報を
夫々入力する入力手段と、音色毎に前記第1のパラメー
タ決定因子の各値をグループ分けし、音色毎に該グルー
プに関する第1のグループアドレスデータを記憶した第
1のグループアドレス記憶手段と、前記第2のパラメー
タ決定因子の各値をグループ分けし、該グループに関す
る第2のグループアドレスデータを記憶した第2のグル
ープアドレス記憶手段と、音色、第1のパラメータ決定
因子および第2のパラメータ決定因子の組合せに対応し
て前記パラメータ記憶手段から読み出すべきパラメータ
の該パラメータ記憶手段におけるアドレスを指示するパ
ラメータアドレスデータをそれぞれ記憶するものであっ
て、記憶された当該各パラメータアドレスデータの中に
は前記音色、第1のパラメータ決定因子のグループおよ
び第2のパラメータ決定因子のグループの異なる組合せ
に対して前記パラメータ記憶手段における同じアドレス
を指示するものがあることを特徴とするパラメータアド
レス記憶手段と、前記音色情報および第1のパラメータ
決定因子情報の入力に対応して、該入力によって特定さ
れる音色および第1のパラメータ決定因子の組合せに対
応する特定の第1のグループアドレスデータを前記第1
のグループアドレス記憶手段から読み出すとともに、前
記第2のパラメータ決定因子情報の入力に対応して、該
入力に対応する第2のグループアドレスデータを前記第
2のグループアドレス記憶手段から読み出し、該読み出
した第1および第2のグループアドレスの組合せに対応
する特定のパラメータアドレスデータを前記パラメータ
アドレス記憶手段から読み出して、読み出したパラメー
タアドレスデータに応じて前記パラメータ記憶手段から
1組のパラメータを読み出す読出し手段とを具え、読み
出したパラメータを楽音の設定又は制御のために供給す
るようにしたものである。
【0005】基本的には、パラメータ記憶手段に記憶さ
れたパラメータは、音色及び2つのパラメータ決定因子
(第1,第2のパラメータ決定因子)からなる三者の組
合せによって読み出される。ここで、この三者の組合せ
に対応してパラメータ記憶手段からパラメータが直接読
み出されるのではなく、パラメータアドレス記憶手段か
ら読み出されたパラメータアドレスに従ってパラメータ
記憶手段からパラメータが間接的に読み出される。ま
た、入力された音色情報、第1のパラメータ決定因子情
報および第2のパラメータ決定因子情報によってパラメ
ータアドレス記憶手段からパラメータアドレスが直接的
に読み出されるのではなく、入力された音色情報と第1
のパラメータ決定因子情報とが第1のグループアドレス
記憶手段に入力され、入力された第2のパラメータ決定
因子情報が第2のグループアドレス記憶手段に入力さ
れ、各グループアドレス記憶手段から読み出した第1お
よび第2のグループアドレスの組合せに対応して、特定
のパラメータアドレスデータを前記パラメータアドレス
記憶手段から読み出すように構成されている。こうし
て、読み出された特定のパラメータアドレスデータに対
応するパラメータがパラメータ記憶手段から読み出され
る。このように、第1及び第2のグループアドレス記憶
手段とパラメータアドレス記憶手段とを含む階層化され
たアドレッシング構成を採用して、パラメータ記憶手段
からパラメータを読み出すように構成したことを特徴と
している。ここで、第1のグループアドレス記憶手段で
は、音色毎に第1のパラメータ決定因子の各値をグルー
プ分けし、音色毎に該グループに関する第1のグループ
アドレスデータを記憶しているので、音色に応じた最適
なグループ分けが可能となり、音色に応じた最適なパラ
メータ発生を簡単な構成で行うことができるようにな
る、という優れた効果を奏する。また、グループ分けす
ることにより、全体的なデータ量を少なくし、構成を簡
略化することができる。更に、パラメータアドレス記憶
手段では、音色、第1のパラメータ決定因子および第2
のパラメータ決定因子の組合せに対応して前記パラメー
タ記憶手段から読み出すべきパラメータの該パラメータ
記憶手段におけるアドレスを指示するパラメータアドレ
スデータをそれぞれ記憶するものであるが、記憶された
当該各パラメータアドレスデータの中には前記音色、第
1のパラメータ決定因子のグループおよび第2のパラメ
ータ決定因子のグループの異なる組合せに対して前記パ
ラメータ記憶手段における同じアドレスを指示するもの
があるので、該組合せが多様であっても、パラメータ記
憶手段の記憶パラメータ量をそれほど増すこと無く、多
様な組合せに従う適切なパラメータ供給が可能になる、
という優れた効果を奏する。従って、パラメータ記憶手
段は複数組のパラメータを記憶するものであるが、パラ
メータアドレス記憶手段から読み出されたパラメータア
ドレスデータに基づきパラメータを読み出すようにした
間接アドレス方式であるため、音色及び第1,第2のパ
ラメータ決定因子の組合せのすべてに1対1で対応して
パラメータを記憶する必要がなくなり、パラメータ記憶
手段ではその組合せ数よりも少ない数のパラメータ組を
記憶するだけでもよいことものである。つまり、音色及
び第1,第2のパラメータ決定因子の組合せが異なって
いても或るパラメータ組は共通のものを使用することが
できる場合があるので、パラメータ記憶手段に記憶して
おくパラメータの組数を少なくし、これによりメモリ容
量を節約することができる。例えば、前述の音域、鍵タ
ッチ、音色種類からなる22528通りの組合せに対し
ては、僅か2620組のパラメータをパラメータ記憶手
段に記憶しておけば対処できることが後述の実施例にお
いて示されている。このような場合、音色及び第1,第
2のパラメータ決定因子の或る組合せに応じてパラメー
タアドレス記憶手段から読み出されたパラメータアドレ
スデータと別の組合せに応じて読み出されたパラメータ
アドレスデータとが同じであることがあり、パラメータ
記憶手段からはこの異なる組合せの各々に対応して同じ
パラメータを読み出す。なお、第1および第2のパラメ
ータ決定因子を示すデータとしては、例えば、押圧鍵を
示すキーコード、鍵タッチを示すタッチデータ、時間経
過に応じた情報、適宜の手動操作子出力情報、などを用
いることができる。
【0006】
【発明の実施の形態】以下、添付図面を参照してこの発
明の実施の形態を詳細に説明しよう。
<一実施例の全体構成説明>図1において、鍵盤10は
発生すべき楽音の音高を指定するための複数の鍵を具備
している。鍵タッチ検出器11は、鍵盤10で押圧され
た鍵に加えられたタッチを検出するものであり、イニシ
ャルタッチあるいはアフタータッチのどちらを検出する
ものであってもよい。音色選択装置12は発生すべき楽
音の音色を選択する操作子群から成るものである。ピッ
チベンド操作子13は、発生すべき楽音のピッチをその
操作量に応じて連続的に変調するためのものであり、例
えば、ダイヤル式の操作子から成る。マイクロコンピュ
ータ14は、CPU(中央処理ユニット)15、プログ
ラム及びその他データを記憶しているROM(リードオ
ンリメモリ)16、ワーキング及びデータ記憶用のRA
M(ランダムアクセスメモリ)17を含んでおり、デー
タ及びアドレスバス28を介して電子楽器内の各回路と
の間でデータの授受を行い、鍵盤10における押鍵検出
処理及び複数の発音チャンネルに対する押圧鍵の発音割
当て処理、音色選択装置12における音色選択操作の検
出処理、ピッチベント操作子13における操作量の検出
処理、その他種々の処理を実行する。
【0007】トーンジェネレータ18は複数の発音チャ
ンネルで夫々独立にディジタル楽音信号を発生すること
が可能なものであり、各チャンネルに割当てた鍵を示す
キーコードKC及び該鍵のオン・オフを示すキーオン信
号KONその他必要なデータをマイクロコンピュータ1
4からバス28を介して受け取り、これに基づき各チャ
ンネルでディジタル楽音信号を発生する。トーンジェネ
レータ18の内部にはピッチ同期信号発生回路19を含
んでおり、各チャンネルで発生する楽音信号のピッチに
同期するピッチ同期信号を各チャンネル毎に発生する。
【0008】この実施例の仕様においては、トーンジェ
ネレータ18は第1乃至第16チャンネル(Ch1〜C
h16)の合計16チャンネルで時分割的にディジタル
楽音信号を発生する。トーンジェネレータ18から時分
割多重的に出力されるディジタル楽音波形サンプル値デ
ータをTDXで示す。マスタクロック発生器20から発
生されるマスタクロックパルスφは、トーンジェネレー
タ18の基本的な動作時間を制御するものである。ディ
ジタル楽音波形サンプル値データTDXの時分割多重化
の1サイクルはマスタクロックパルスφの64周期であ
り、この1サイクル64周期における各周期毎のタイム
スロットを1〜64の番号を付して示すと第3図のよう
である。同図には、多重化されたディジタル楽音波形サ
ンプル値データTDXのチャンネルタイミング1〜16
の仕様も示されている。例えば、第1チャンネルのデー
タTDXはタイムスロット33〜36の4スロットに割
当てられている。
【0009】この実施例の仕様においては、楽音波形サ
ンプル値データTDXは16チャンネル分のデータが上
述のように共通に多重化されて出力されるが、各チャン
ネルのピッチ同期信号PS1,PS2は2系統に分けて
8チャンネル毎に時分割多重化されて出力される。一方
のピッチ同期信号PS1は第1〜第8(Ch1〜Ch
8)のピッチ同期信号を時分割多重化したもので、その
チャンネルタイミングは第3図のようである。他方のピ
ッチ同期信号PS2は第9〜第16(Ch9〜Ch1
6)のピッチ同期信号を時分割多重化したもので、その
チャンネルタイミングは図2のようである。図から明ら
かなように、各チャンネルのピッチ同期信号PS1,P
S2は1タイムスロットの幅で発生し、その時分割多重
化の1サイクルは8タイムスロットである。
【0010】2系列のアダプティブディジタルフィルタ
装置(以下ADFと略称することがある)21、22
は、楽音信号のフィルタリングに適するように構成され
たディジタルフィルタ装置であって、この実施例の仕様
では夫々8チャンネル分の楽音信号のフィルタリングが
可能であり、一方のADF21は第1〜第8チャンネル
の楽音信号のフィルタリングを行い、他方のADF21
は第9〜第16チャンネルの楽音信号のフィルタリング
を行う。このADF21、22の内部には、所定の型式
のディジタルフィルタ回路、フィルタパラメータメモ
リ、フィルタパラメータの供給を制御する各種回路、フ
ィルタを施すべき楽音信号のピッチに同期してフィルタ
演算動作を行わせる制御回路、フィルタを施した楽音信
号をそのピッチに同期して出力するピッチ同期出力回
路、など各種機能の回路が含まれており、楽音信号のフ
ィルタリングに適した構成となっている。
【0011】トーンジェネレータ18から出力されたデ
ィジタル楽音波形サンプル値データTDXはADF21
及び22に入力される。また、第1〜第8チャンネルの
ピッチ同期信号PS1はADF21に入力され、第9〜
第16チャンネルのピッチ同期信号PS2はADF22
に入力される。ADF21及び22では、ピッチ同期信
号PS1、PS2が発生した(信号“1”となった)タ
イムスロットに対応するチャンネルのデータTDXを内
部に取り込み、そのチャンネルの1サンプル値データに
関してフィルタ演算を実行する。従って、一方のADF
21では、ピッチ同期信号PS1に応じて第1〜第8チ
ャンネルの楽音信号のフィルタ演算を行い、他方のAD
F22では、ピッチ同期信号PS2に応じて第9〜第1
6チャンネルの楽音信号のフィルタ演算を行う。こうし
て、ADF21及び22におけるフィルタ演算の単位時
間(サンプリング周期に同期した信号遅延時間)がフィ
ルタを施すべき楽音信号のピッチに同期したものとな
り、ピッチに応じてフィルタ演算単位時間が変動するこ
とにより移動フォルマント特性のフィルタリングが実現
される。なお、回路の基本的な動作タイミングを制御す
るためにマスタクロックパルスφとシステムシンクロパ
ルスSYNCがADF21及び22に与えられる。シス
テムシンクロパルスSYNCは図2に示すように64タ
イムスロット周期で発生するパルスであり、ディジタル
楽音信号の時分割多重化の1サイクルに同期している。
また、ADF21及び22には、フィルタ動作を制御す
るための各種のデータがバス28を介してマイクロコン
ピュータ14の制御の下で与えられる。
【0012】また、このADF21及び22では、実際
のフィルタ演算動作がフィルタを施すべき楽音信号のピ
ッチに同期して行われるのみならず、フィルタ済みの楽
音波形サンプル値データをそのピッチに同期してサンプ
リングし直し、完全にピッチ同期させた状態で出力する
ようになっている。このフィルタ済みデータをピッチに
同期して再サンプリングするためにもピッチ同期信号P
S1、PS2が利用される。ADF21及び22出力さ
れた各チャンネルのディジタル楽音波形サンプル値デー
タをアキュムレータ23で合計し、16チャンネル分の
サンプル値データを合計した楽音波形サンプル値データ
を求める。アキュムレータ23の出力データをディジタ
ル/アナログ変換器24でアナログの楽音信号に変換
し、サウンドシステム25を介して発音する。
【0013】この実施例の仕様において、フィルタ係数
の供給は2つのモードで制御される。1つは「スタティ
ックモード」であり、これは楽音の発音期間中はフィル
タ係数を変更しないモードである。もう1つは「ダイナ
ミックモード」であり、これは楽音の発音期間中はフィ
ルタ係数を時間的に変化させるモードであり、フィルタ
リングによる音色の時間的変化が得られる。スタティッ
クモードのためのフィルタ係数は、ADF21及び22
の内部のフイルタパラメータメモリ内に記憶されてい
る。ダイナミックモードのためのフィルタ係数は、ダイ
ナミック制御用パラメータメモリ26に記憶されてお
り、これはマイクロコンピュータ14の制御の下で時間
的に切替えて読み出され、バス28を介してADF21
及び22に与えられる。ダイナミック/スタティック選
択スイッチ27は、フィルタ係数の供給をどちらのモー
ドで制御するかを選択するためのスイッチである。な
お、クロック周波数について一例を示すと、マスタクロ
ックパルスφは約3.2MHzであり、ピッチ同期信号
PS1,PS2の時分割1サイクル(8タイムスロッ
ト)の繰返し周波数は400kHzであり、ディジタル
楽音波形サンプル値データTDXの時分割1サイクル
(フィルタにおける1演算サイクル)(64タイムスロ
ット)の繰返し周波数は50kHZである。
【0014】次に、図1における各回路の詳細例につい
て説明する。
<ピッチ同期信号の発生について>図3はピッチ同期信
号発生回路19の一例を示すもので、これは一方の系統
(第1〜第8チャンネル)のピッチ同期信号PS1を発
生する。もう一方のピッチ同期信号PS2も図3と同一
の構成によって発生される。ピッチ同期信号PS1は、
Pナンバメモリ29から読み出したPンバをカウンタ3
0で各チャンネル毎に時分割的にカウントすることに基
づき発生される。Pナンバとは、或る基準オクターブに
おける各音名C〜Bに対応する周波数を持つ楽音波形の
1周期中のサンプル点数を示す数である。ピッチ同期信
号PS1を図2に示すように8チャンネル時分割で発生
するようにする場合、その基本的なサンプリング周波数
(換言すればピッチ同期信号PS1の分解能)はマスタ
クロックパルスφの1/8の周波数(例えば400kH
z)であり、これはどの音名でも共通である。他方、基
本的なサンプリング周波数が共通であるため、各音名の
Pナンバは、その音名周波数に対応して夫々異なる値を
示す。基準オクターブにおける或る音名の周波数をfn
とし、上述の共通のサンプリング周波数(400kH
z)をfcとすると、その音名に対応するPナンバは次
のようにして定まる。
【0015】Pナンバ=fc÷fn …(1)
ここで、共通サンプリング周波数fcがfc=400kH
z、音名Aの周波数fnがfn=440Hz(つまりA4
音)であるとすると、音名AのPナンバは、上記式か
ら、
音名AのPナンバ=400000÷440=909
となる。一方、トーンジェネレータ18内で発生可能な
楽音波形1周期当りの異なるサンプル点振幅値のサンプ
ル点数が64であるとすると、周波数fnの実効サンプ
リング周波数feは、
fe=fn×64 …(2)
となり、fn=440Hzの場合は、
fe=440×64=28160Hz
となる。同様にして、或る基準オクターブにおける各音
名のPナンバと実効サンプリング周波数feを下記表の
ように決定することができる。この場合、基準オクター
ブはG4音からF#5音までの1オクターブである。
【0016】
【表1】
【0017】図3のカウンタ30において、ピッチ同期
信号PS1は、マスタクロックパルスφに基づき確立さ
れる共通サンプリング周波数fcをPナンバに応じて分
周することにより得られる。前述から明らかなように、
Pナンバは1周期波形中の共通サンプリング周波数fc
の周期数つまりサンプル点数であり、一方、トーンジェ
ネレータ18で発生可能な楽音波形1周期当りの実効的
なサンプル点数は前述の通り64である。従って、共通
サンプリング周波数fcを分周する分周数を
分周数=Pナンバ÷64 …(3)
とすれば、その分周出力として楽音1周期当り64個の
パルスを得ることができ、これにより64個の実効的な
サンプル点をすべて確立することができる。このように
して定まる分周数によって共通サンプリング周波数fc
を分周すると、前記(1)、(2)、(3)式より、
fc÷分周数=(fn×Pナンバ)÷(Pナンバ÷64)
=fn×64=fe …(4)
となり、この分周出力によってサンプル点アドレスを変
化させることにより実効サンプリング周波数feを確立
することができる。このようにして確立される実効サン
プリング周波数feは、音名周波数fnに調和しており、
ピッチ同期が実現される。カウンタ30から発生される
各チャンネルのピッチ同期信号PS1はそのチャンネル
に割当てられた鍵の音名に対応して上記(4)式で示され
るような分周出力信号すなわち実効サンプリング周波数
feを持つ信号である。
【0018】ところで上記(3)式で定まる分周数は整数
になるとは限らず、小数を含むことが多い。例えば、音
名Aの場合、
分周数=909÷64=約14.20
である。そこで、カウンタ30における分周動作は、後
述のように、(3)式で定まる分周数に近い2つの整数で
適宜分周し、その平均的な結果として(3)式で定まる分
周数で分周したのと同じ結果が得られるようにしてい
る。
【0019】図3において、Pナンバメモリ29は、前
記表1に示すような基準オクターブにおける各音名のP
ナンバを予め記憶している。各チャンネルに割当てられ
た鍵のキーコードKCがバス28を介してトーンジェネ
レータ18に与えられ、該トーンジェネレータ18の内
部において第1〜第8チャンネルのキーコードKCが図
2のPS1のチャンネルタイミングに示すようなタイミ
ングで時分割多重化され、第9〜第16チャンネルのキ
ーコードKCが図2のPS2のチャンネルタイミングに
示すようなタイミングで時分割多重化される。こうして
時分割多重化された第1〜第8チャンネルのキーコード
KCがPナンバメモリ29に入力される。Pナンバメモ
リ29は入力された第1〜第8チャンネルのキーコード
KCの音名に対応してPナンバを時分割的に読み出す。
【0020】カウンタ30は、Pナンバメモリ29から
読み出されたPナンバを入力する加算器31と、この加
算器31の出力を「0」入力に入力したセレクタ32
と、このセレクタ32の出力を入力した8ステージのシ
フトレジスタ33と、シフトレジスタ33の出力の下位
ビット(小数部)をゲートして加算器31の他の入力に
与えるゲート34と、シフトレジスタ33の出力の上位
ビット(整数部)を入力して全ビットが“1”の7ビッ
トから成るオール“1”信号と加算する加算器35とを
含んでいる。Pナンバそれ自体は12ビットの2進コー
ド化信号であるが、加算器31の出力は桁上がり信号の
ビットとして1ビット余分に含む13ビットの信号から
成る。反転キーオンパルス/KONP(/は反転のバー
記号を示す)と加算器35のキャリアウト出力COから
出力された信号がアンド回路36に入力されており、こ
のアンド回路36の出力がセレクタ32の選択制御入力
に加わる。アンド回路36の出力信号が“0”のときは
加算器31からセレクタ32の「0」入力に与えられた
信号が選択され、“1”のときは「1」入力に与えられ
た信号が選択される。セレクタ32の「1」入力には、
シフトレジスタ33の出力の下位ビット(小数部)と加
算器35の出力7ビット(整数部)とから成る13ビッ
トの信号が与えられる。キーオンパルスKONPは鍵の
押し始めで一度だけ“1”となる信号であり、第1〜第
8チャンネルに対応するものが時分割多重化されてい
る。反転キーオンパルス/KONPはこのキーオンパル
スKONPを反転した信号である。
【0021】セレクタ32、シフトレジスタ33、加算
器35の部分は、Pナンバに応じて前記(3)式に示すよ
うな分周数を確立し、この分周数の整数部に応じて共通
サンプリング周波数fcの分周を行うための回路であ
る。加算器31は、上記分周数の小数部に応じて前記整
数部の値を調整するためのものである。前記(3)式にお
いて除数64は「2の6乗」であるため、分周数を求め
るために格別の割算を行うことなく、単にPナンバの下
位6ビットを小数部として取扱うだけで該Pナンバに対
応する分周数を確立することができる。従って、加算器
31、セレクタ32及びシフトレジスタ33の出力信号
13ビットのうち下位6ビットが小数部の重みであり、
上位7ビットが整数部の重みである。加算器35におい
てオール“1”信号を加算することは1減算することに
等しい。従って、加算器35では、事実上、シフトレジ
スタ33の出力の整数値から1減算することを行う。こ
の加算器35の減算結果は演算されなかった小数部の6
ビットデータと共にセレクタ32の「1」入力に戻さ
れ、シフトレジスタ33を経由して再び加算器35に入
力される。シフトレジスタ33はマスタクロックパルス
φによってシフト制御されるため、同じチャンネルの信
号がシフトレジスタ33から出力される周期はマスタク
ロックパルスφの8倍の周期つまり共通サンプリング周
波数fcの周期である。
【0022】鍵の押し始めにおいて、その鍵が割当てら
れたチャンネルタイミングで反転キーオンパルス/KO
NPが一度だけ“0”となり、このとき、セレクタ32
の「0」入力を介して該鍵のPナンバが選択される。こ
のPナンバの整数部がシフトレジスタ33から加算器3
5に与えられ、共通サンプリング周波数fcの周期で該
整数部から1が繰返し減算される。整数部の減算結果が
1以上の値のとき、加算器35のキャリィアウト出力C
Oからは絶えずキャリィアウト信号“1”が出力され、
アンド回路36の条件が成立するので、セレクタ32は
「1」入力を選択し続ける。減算の繰返しによってやが
て加算器35の出力が“0”になったときつまりPナン
バの整数部の数と同数のfcの周期が経過したとき、加
算器35のキャリィアウト信号は出力されず、アンド回
路36の条件は成立しない。そのとき、セレクタ32は
「0」入力を選択し、Pナンバとシフトレジスタ33の
出力の下位6ビット(小数部データ)とを加算した加算
器31の出力を選択する。こうして、小数部の加算によ
って幾分変更された値のPナンバがシフトレジスタ33
に与えられ、今度は変更されたPナンバの整数値から1
減算することが繰返される。なお、ゲート34は反転キ
ーオンパルス/KONPによって鍵の押し始めでだけ不
能化され、それ以外のときは常時小数部データを加算器
31に与える。加算器31におけるPナンバに対する小
数部データの加算によって実際に分周に使用する分周数
の整数値はPナンバから求まる分周数の整数値よりも1
大きくなることがある。例えば、音名AのPナンバは9
09であり、その分周数は14.20であるが、最初は
その整数値14に従って分周を行うが、次は14.20
+0.20=14.40となり、やがて15.00とな
りその整数値15に従って分周を行うことになる。こう
して、Pナンバによって求まる分周数の整数値と同じ
か、それよりも1大きい数に従って、共通サンプリング
周波数fcの分周が行われ、平均的な結果としてPナン
バによって求まる分周数に従う分周動作が達成される。
加算器35のキャリィアウト出力COの信号がその分周
出力に相当するものであり、これをインバータ37で反
転した信号がピッチ同期信号PS1として出力される。
【0023】理解を深めるために、音名Aを例にして、
セレクタ32の出力の変化の一例を示す。変化タイミン
グは共通サンプリング周波数fcの周期である。最初は
Pナンバ909に対応する分周数14.20であり、次にそ
の整数値が1減った13.20であり、以下、12.20、11.2
0、10.20、…2.20、1.20とその整数値が順次1づつ減少
する。fcの14周期目にセレクタ32の「1」入力に
加わる数値が0.20となり、このときキャリィアウト信号
が“0”となり、ピッチ同期信号PS1が“1”とな
り、セレクタ32では「0」入力を選択する。セレクタ
32の「0」入力にはPナンバ909に対応する分周数
14.20にシフトレジスタ33から与えられる小数値0.20
を加算した値14.40が与えられている。従って、14.40が
セレクタ32から出力される。その後セレクタ32の出
力は13.40、12.40、11.40、…2.40、1.40と順次1づつ
減少してゆき、fcの14周期目にセレクタ32の
「1」入力に加わる数値が0.40となると共に、加算器3
5のキャリィアウト信号が“0”となり、ピッチ同期信
号PS1が発生される。このとき加算器31の出力は1
4.20+0.40=14.60であり、これがセレクタ32の
「0」入力を介してシフトレジスタ33に与えられる。
こうして、音名Aの場合は14又は15を分周数として
分周が行われ、共通サンプリング周波数fc(例えば400
kHz)の14又は15サイクル毎にピッチ同期信号P
S1が“1”となる。もう一方の第9〜第16チャンネ
ルに対応するピッチ同期信号PS2も上述と同様にして
発生される。
【0024】<トーンジェネレータの説明>トーンジェ
ネレータ18においては上述のようにして発生した各チ
ャンネルのピッチ同期信号PS1、PS2を利用して、
発生すべき楽音のピッチに同期したサンプリングタイミ
ングに従って該楽音信号を発生するようにすることがで
きる。勿論、これに限らず、ピッチに同期していないサ
ンプリングタイミングに従って楽音信号を発生するよう
にすることも可能である。発生すべき楽音のサンプル点
アドレス(瞬時位相角)を指定するアドレスデータは、
各チャンネルのピッチ同期信号PS1、PS2をチャン
ネル別に夫々独立にカウントすることにより発生するこ
とができる。ただし、ピッチ同期信号PS1、PS2は
前述の基準オクターブ(G4〜F#5音)のピッチに対
応しているので、上記アドレスデータを発生する場合
は、発生すべき楽音のオクターブ音域に応じて上記ピッ
チ同期信号PS1、PS2のカウントの際のカウントレ
ートを切換える必要がある。例えば、G3〜F#4のオ
クターブの楽音を発生する場合は、ピッチ同期信号PS
1、PS2が発生する毎に0.5をカウントし、G4〜
F#5のオクターブの楽音を発生する場合は、ピッチ同
期信号PS1、PS2が発生する毎に1をカウントし、
G5〜F#6のオクターブの楽音を発生する場合は、ピ
ッチ同期信号PS1、PS2が発生する毎に2をカウン
トする。こうして、発生すべき楽音のピッチ及びオクタ
ーブに同期して変化するアドレスデータを各チャンネル
毎に発生し、このアドレスデータに基づきディジタル楽
音信号を発生する。
【0025】トーンジェネレータ18における楽音信号
発生方式はどのようなものを用いてもよい。例えば、上
記アドレスデータに応じて波形メモリに記憶した楽音波
形サンプル値データを順次読み出す方式(メモリ読出し
方式)、あるいは上記アドレスデータを位相角パラメー
タデータとして所定の周波数変調演算を実行して楽音波
形サンプル値データを求める方式(FM方式)、あるい
は上記アドレスデータを位相角パラメータデータとして
所定の振幅変調演算を実行して楽音波形サンプル値デー
タを求める方式(AM方式)、など公知のどのような方
式を用いてもよい。また、メモリ読出し方式を採用する
場合、波形メモリに記憶する楽音波形は1周期波形のみ
であってもよいが、複数周期波形である方が音質の向上
が図れるので好ましい。複数周期波形を波形メモリに記
憶しこれを読み出す方式は、例えば特開昭52ー121
313号に示されたように発音開始から終了までの全波
形を記憶しこれを1回読み出す方式、あるいは特開昭5
8ー142396号に示されたようにアタック部の複数
周期波形と持続部の1又は複数周期波形を記憶し、アタ
ック部の波形を1回読み出した後持続部の波形を繰返し
読み出す方式、あるいは特開昭60ー147793号に
示されたように離散的にサンプリングした複数の波形を
記憶し、読み出すべき波形を時間的に順次切換えて指定
し、指定された波形を繰返し読み出す方式、など種々の
方式が公知であり、これらを適宜採用してよい。
【0026】〈アダプティブディジタルフィルタの予備
的説明〉ディジタルフィルタの演算型式としては、基本
的には有限インパルス応答(FIR)フィルタと無限イ
ンパルス応答(IIR)フィルタとがあるが、この実施
例のアダプティブディジタルフィルタ装置21、22に
おいてはFIRフィルタを採用している。まずFIRフ
ィルタに関連する一般的説明を行う。
(a)FIRフィルタの基本回路構成
第5図はFIRフィルタの基本回路構成図であり、x
(n)は任意のn番目のサンプル点のディジタル楽音波形
サンプル値データであり、該FIRフィルタの入力信号
である。ここで、
【数1】
は単位時間遅れ要素であり、1サンプリング周期の時間
遅れを設定するものである。従って、x(n−1)はn−1
番目のサンプル点のディジタル楽音波形サンプル値デー
タであり、x(n−N+1)はn−N+1番目のサンプル
点のディジタル楽音波形サンプル値データである。Nは
インパルス応答の持続時間であり、該FIRフィルタの
次数に相当する。h(0)〜h(N−1)はN次のフィルタ
係数である。このフィルタ係数が入力された三角形のブ
ロックは乗算要素であり、遅延要素で遅延された各サン
プル点のデータx(n)〜x(n−N+1)に対して夫々に
対応するフィルタ係数h(0)〜h(N−1)を乗算する。
乗算出力が入力された+記号を付したブロックは加算要
素であり、各乗算出力を加算合計し、出力信号y(n)を
得る。このようなFIRフィルタのインパルス応答{h
(n)}のz変換すなわち伝達関数は、下記(5)式のよう
に、
【数2】
と表わされる。
【0027】(b)FIRフィルタの直線位相特性
このようなFIRフィルタの1つの特徴は、位相特性を
直線位相とすることができることである。直線位相とす
ると、フィルタの入出力波形間においてその位相が完全
に直線特性で対応し、出力波形に歪みが生じない。従っ
て、楽音、音声、オーディオ等の信号のフィルタ処理に
好適である。直線位相のFIRフィルタにおいては、位
相特性が角周波数ωの関数として
θ(ω)=−αω …(6)
となることが要求される。ここでαは位相遅れといわれ
る定数である。また、上記のような直線位相特性をもつ
FIRフィルタの必要十分条件は、下記(8)式のように
そのインパルス応答が対称性をもち、下記(7)式のよう
に位相遅れαが持続時間(フィルタの次数)Nによって
一意的に規定されることである。
α=(N−1)/2 …(7)
h(n)=h(N−1−n) …(8)
ただし0≦n≦N−1
【0028】(c)フィルタ係数の対称性
上記(8)式のようにインパルス応答が対称性をもつとい
うことは、フィルタ係数h(0)〜h(N−1)が対称性を
持つことを意味する。すなわち、フィルタ係数を対称特
性で設定することにより、前述の直線位相特性を実現す
ることができるのである。インパルス応答が対称性の一
例を図示すると、次数Nが奇数の場合は図5のようであ
り、Nが偶数の場合は図6のようである。図から明らか
なように、n=(N−1)/2を中心とする対称特性を示
す。Nが奇数の場合は、(N−1)/2次が中心となり、
その両側のインパルス応答が対称となる。Nが偶数の場
合は、(N−2)/2次とN/2の中間が中心となり、そ
の両側のインパルス応答が対称となる。対称位置にある
次数同士はフィルタ係数が同じ値であるため、全ての次
数Nのフィルタ係数を準備する必要はなく、その半分で
よい。詳しくは、Nが奇数の場合は、0次から(N−1)
/2次までの{(N−1)/2}+1個のフィルタ係数を準
備すればよく、{(N−1)/2}+1次からN−1次まで
のフィルタ係数は0次から{(N−1)/2}−1次までの
対称位置にあるフィルタ係数を利用すればよい。すなわ
ち0次とN−1次とでは同じフィルタ係数を使用し、1
次とN−2次とでも同じフィルタ係数を使用する。ま
た、Nが偶数の場合は、0次から(N−2)/2次までの
N/2個のフィルタ係数を準備すればよく、N/2次か
らN−1次までのフィルタ係数は0次から(N−2)/2
次までの対称位置にあるフィルタ係数を利用すればよ
い。
【0029】(d)直線位相FIRフィルタの周波数応
答
図5、図6のようにインパルス応答が対称性を示す直線
位相FIRフィルタの周波数応答
【数3】
の特性を例示すると図7、図8のようである。Nが奇数
の場合は図7のようにω=π(ここでπはサンプリング
周波数fsの1/2に対応している)のときのレベルが
0に固定されず、任意に設定できる。Nが偶数の場合は
図8のようにω=πのときのレベルが必らず0になる。
ここから明らかなように、次数Nが奇数の場合は、フィ
ルタ係数の設定によってハイパスフィルタ特性を実現す
ることが可能であるが、Nが偶数の場合はハイパスフィ
ルタ特性を実現することが不可能である。しかし、Nが
偶数の方がフィルタ設計がし易く、ローパスフィルタや
バンドパスフィルタの設計には適している。そこで、実
現しようとするフィルタ特性に応じてフィルタの次数N
の偶奇を切替えるようにすることが好ましく、この実施
例のアダプティブディジタルフィルタ装置21、22に
おいてはそのような次数Nの偶奇切替えを行うことがで
きるような仕様となっている。すなわちバンドパスフィ
ルタやローパスフィルタの特性のフィルタリングを行う
場合は次数Nを偶数に設定し、ハイパスフィルタ特性の
フィルタリングを行う場合は次数Nを奇数に設定する。
【0030】(e)FIRフィルタのその他の特徴
FIRフィルタのその他の特徴としては、フィードバッ
クループがないため、安定性がよいという特徴がある。
すなわち、IIRフィルタのようにフィードバックルー
プがある場合は発振等の問題が起るが、FIRフィルタ
では発振等の問題が生じず、設計も容易である。また、
フィルタ特性を時間的に変化させる場合においてもFI
Rフィルタは有利である。この場合、通常は、時間的に
異なるフィルタ特性の各々に対応してフィルタ係数の組
を夫々準備しなければならないが、そうするとフィルタ
特性の時変動を細かくするには多数のフィルタ係数の組
が必要とされる。この問題点を解決するために、時間的
にある程度離れた2組のフィルタ係数を準備し、その2
組のフィルタ係数の間で補間を行うことによりその間の
時間経過に伴ってフィルタ係数の組を密に発生させ、こ
うして補間によって発生したフィルタ係数によって時間
的に変動するフィルタ特性を設定することが考えられ
る。このようにフィルタ係数の補間を実時間で行いなが
ら時変動フィルタ特性を実現する場合、FIRフィルタ
のように安定性のよいものは、不安定性を考慮してフィ
ルタ係数を工夫する必要がないので、非常に有利であ
る。また、ディジタルフィルタにおける信号の語長は有
限であるため、制限された語長内に信号データを必然的
に丸めなければない。このような丸めがノイズとなるの
であるが、FIRフィルタではフィードバックループが
ないため、丸めによる誤差が累積されることがないの
で、ノイズ対策上有利である。なお、上述したようなF
IRフィルタの諸特性については、例えば書籍「Theory
and Application of Digital Signal Processing」(著
者:Lawrence,R.Rabiner;Bernard,Gold、発行社:P
rentice-Hall Inc)に詳しく記載されている。
【0031】次に、この実施例におけるアダプティブデ
ィジタルフィルタ装置21及び22におけるいくつかの
特徴について予め簡単に説明する。
(f)フィルタ係数の求め方
フィルタ係数は実際の楽音を分析することにより求めら
れる。フィルタ係数を求めるための手順の一例を図9を
参照して説明すると、まず、異なる音色を示す2種類の
楽音波形(原楽音波形)を自然楽器音からサンプリング
することにより準備する。例えば、原楽音波形1は強い
鍵タッチで演奏されたピアノ音の波形であり、原楽音波
形2は弱い鍵タッチで演奏されたピアノ音の波形であ
る。次に、高速フーリエ変換を行い、原楽音波形1、2
のフーリエ成分を分析し、これに基づき両波形1、2の
スペクトル特性を求める。次に、波形1、2のスペクト
ル特性の差を求める。次に、差のスペクトル特性を量子
化し、これに基づきフィルタ係数を求める処理を行う。
最後に求めたフィルタ係数をメモリに記憶する。フィル
タ特性の時変動を実現するするフィルタ係数はダイナミ
ック制御用パラメータメモリ26(図1)に記憶し、時
間的に変化しない定常的なフィルタ特性を実現するフィ
ルタ係数はADF22及び22(図1)内にパラメータ
メモリに記憶する。
【0032】なお、上述で2波形の差のスペクトル特性
に基づきフィルタ係数を求める理由は、トーンジェネレ
ータ18(図1)で一方の原楽音波形(例えば強い鍵タ
ッチに対応する波形)に相当する楽音信号を発生し、こ
れに対して差のスペクトル特性に従うフィルタリングを
施すことにより他方の原楽音波形(例えば弱いタッチに
対応する波形)に相当する楽音信号を得るようにするた
めである。鍵タッチに応じたフィルタリングを行う場
合、全ての鍵タッチ強度の段階に対応してフィルタ係数
の組を準備しておかずに、いくつかの段階に対応するフ
ィルタ係数の組だけを準備しておき、準備されていない
鍵タッチ強度に対応するフィルタ係数は上述と同様の補
間によって求めるようにしてもよい。勿論、鍵タッチに
対応するフィルタ係数のみならず、音高(又は音域)あ
るいは音色種類あるいはその他種々のファクタに対応す
るフィルタ係数を上述と同様の手法によって準備する。
【0033】(g)ピッチに同期したフィルタ演算
ADF21及び22(図1)における各サンプル点毎の
フィルタ演算タイミングはピッチ同期信号PS1及びP
S2によって設定される。このことは、フィルタ演算に
おける単位時間遅れ(図4参照)がピッチ同期信号PS
1,PS2によって設定されることを意味する。すなわ
ち、フィルタ演算におけるサンプリング周波数fsはピ
ッチ同期信号PS1,PS2によって設定される。具体
的には各音名G〜F#に対応するピッチ同期信号PS
1,PS2の周波数は前出の表1に示した実効サンプリ
ング周波数feと同じであるから、ADF21及び22
におけるフィルタ演算のサンプリング周波数fsは、入
力された楽音信号の音名に応じて同表に示すように異な
るものとなる。フィルタ演算におけるサンプリング周波
数fsは、図7及び図8に示すような周波数応答特性に
おけるω=2πに該当する。ここから明らかなように、
音名に応じてサンプリング周波数fsが変化すると、周
波数応答特性におけるω=2πに対応する周波数もそれ
に応じて変化することになり、得られるフィルタ特性は
移動フォルマント特性となる。このような移動フォルマ
ント特性は楽音信号の音色制御に非常に適したものであ
る。これに対してフィルタ演算におけるサンプリング周
波数が入力信号のピッチに無関係に一定である場合は、
得られるフィルタ特性は固定フォルマントとなる。
【0034】(h)ピッチ同期/非同期の切替
上述のように移動フォルマントのフィルタは楽音の音色
制御に適しているが、得ようとする音色又は効果によっ
ては固定フォルマントのフィルタの方が望ましい場合が
ある。また、ピッチベント操作子13(図1)を操作し
て発生音のピッチを大きくスライドさせる場合も固定フ
ォルマントのフィルタの方が好ましい。そのために、こ
の実施例のADF21及び22では、フィルタ演算をピ
ッチ同期で行うか非同期で行うかの切替えができるよう
な仕様となっている。また、このようなピッチ同期/非
同期の切替えは全チャンネル一様ではなく、各チャンネ
ル別に独立にピッチ同期又は非同期の指定を行うことが
できるようになっている。因みに、ピッチベント操作時
には固定フォルマントのフィルタの方が好ましい理由
は、次の通りである。ピッチベント操作子13によるピ
ッチ制御は、僅かなピッチずれ制御のみならず、数音程
にわたる大きなピッチスライド制御も可能であり、その
場合前出の表1に示す音名G〜F#のオクターブの境界
を横切ってピッチ制御が施されることがある。そのと
き、ピッチに同期したフィルタ演算を行っているとサン
プリング周波数fsが急激に変動し、それに伴ないカッ
トオフ周波数も急激に変動し(移動フォルマントである
ため)、不自然な音色変化をもたらす。例えば、ピッチ
ベント操作によって発音中の楽音がF#5音からG5音
にスライドしたとすると、サンプリング周波数が47.3
59kHzから25.088kHzに急激に変動し(前記表1
参照)移動フォルマントの場合は、その差と同じ分だけ
カット周波数も急激に変動する。このような不都合を防
ぐには、ピッチベント操作時は移動フォルマント(ピッ
チに同期したフィルタ演算)とせずに、固定フォルマン
ト(ピッチに非同期のフィルタ演算)とするのがよい。
ピッチ非同期のフィルタ演算の場合、ADF21及び2
2におけるフィルタ演算のサンプリング周波数は第3図
の例では50kHzである。
【0035】(i)ダイナミック/スタティックに応じ
たフィルタ次数の切替
前述の通り、ダイナミックモードにおいては、発音時に
実時間で、マイクロコンピュータ14の制御の下でダイ
ナミック制御用パラメータメモリ26(図1)からダイ
ナミック制御用パラメータデータを読み出し、これをA
DF21、22の内部に転送しなければならない。その
ため、データ転送時間に制限があり、フィルタ係数の次
数が多いと、制限された時間内に全次数のフィルタ係数
パラメータデータを転送できないおそれがある。従っ
て、ダイナミックモードにおけるフィルタ次数は実時間
のデータ転送時間に見合った制限された次数としなけれ
ばならない。他方、スタティックモードの場合は発音中
にフィルタ係数を変化させる必要がないためそのような
問題はない。また、フィルタ次数が多いほど細かなフィ
ルタ特性を実現することができるので好ましい。従っ
て、スタティックモードにおいてはフィルタ次数を十分
に多くするようにしている。以上のような理由で、この
実施例の仕様では、ダイナミックモードかスタティック
モードかに応じてフィルタ次数を切換えるようにしてい
る。例えば、スタティックモードのときのフィルタ次数
を32次(但しこれは偶数次特性の場合であって、奇数
次特性の場合は31次)とし、ダイナミックモードのと
きのフィルタ次数をその半分の16次(奇数次特性の場
合は15次)としている。
【0036】(j)フィルタ係数の重みづけ制御
1つのフィルタ係数の2進ディジタルデータ形式は、1
2ビットのフィルタ係数データ部と、3ビットの重みづ
けデータ部とからなる。3ビットの重みづけデータ部
は、0、+1、+2、+3、+4、及び+5ビットの6
通りのシフト量のうち1つを指示するものであり、この
シフト量に応じてフィルタ係数データ部がシフトされ、
その重みづけがなされる。12ビットのフィルタ係数デ
ータ部を最大で5ビットシフトし得る重みづけ制御を行
うことにより、フィルタ係数のダイナミックレンジが実
質的に17ビットに拡大される。このような重みづけ制
御によって、十分なダイナミックレンジを確保しつつ、
メモリに記憶しておくフィルタ係数のビット数は少なく
て済むので、フィルタ係数メモリの容量の節約に役立
つ。
【0037】<アダプティブディジタルフィルタの全体
説明>図10は第1〜第8チャンネルに対応するアダプ
ティブディジタルフィルタ装置(ADF)21の内部構
成例を略示するブロック図であり、もう一方のADF2
2も全く同様に構成することができる。入力インターフ
ェース38はトーンジェネレータ18(図1)からピッ
チ同期信号PS1を受入れて、各チャンネルのピッチ同
期信号PS1をADF21内部の演算タイミングに適合
させた状態に整形するものであり、その詳細例は図11
に示されている。タイミング信号発生回路39は、AD
F21内部の各種の動作を制御するタイミング信号を発
生すると共に、入力インターフェース38から与えられ
る各チャンネルのピッチ同期信号に対応する信号に基づ
きフィルタ演算動作に必要な種々の演算タイミング信号
を発生するものであり、その詳細例は図12に示されて
いる。後述するように、各チャンネルのフィルタ演算は
時分割的に行われるため、このタイミング信号発生回路
39から適切なタイミングで各チャンネルのフィルタ演
算動作制御用のタイミング信号を与えてやるようになっ
ている。
【0038】ステートメモリ40、42及び乗算器及び
アキュムレータ部41、43は、FIRフィルタのフィ
ルタ演算を実行するディジタルフィルタ回路である。ス
テートメモリ40と乗算器及びアキュムレータ部41か
らなるディジタルフィルタ回路(これをA系列のディジ
タルフィルタ回路という)は第1乃至第4チャンネル
(Ch1〜Ch4)のフィルタ演算を行うものでステー
トメモリ42と乗算器及びアキュムレータ部43からな
るディジタルフィルタ回路(これをB系列のディジタル
フィルタ回路という)は第5乃至第8チャンネル(Ch
5〜Ch8)のフィルタ演算を行うものである。各系列
A,Bのディジタルフィルタ回路では、夫々4チャンネ
ル分のフィルタ演算を時分割的に行うようになってい
る。第1〜第8チャンネルのフィルタ演算を2系列A,
Bに分けて行うようにした理由は、回路設計上の理由に
よる。ステートメモリ40、42はトーンジェネレータ
18(図1)から与えられたディジタル楽音信号サンプ
ル値データTDXをピッチ同期信号PS1に同期して取
込み、所定のフィルタ次数に対応する段数だけ該ピッチ
同期信号PS1に対応するタイミングで遅延するもので
あり、図4のFIRフィルタ基本回路における単位遅延
要素
【数4】
の集合に対応する。乗算器及びアキュムレータ部41、
43は、ステートメモリ40、42で遅延されたディジ
タル楽音信号サンプル値データに対してその遅延次数に
対応する次数のフィルタ係数を乗算し、各次数の乗算結
果を累算合計するものであり、図4のFIRフィルタ基
本回路における乗算要素及び加算要素に対応する。A系
列のステートメモリ40と乗算器及びアキュムレータ部
41の詳細例は第14図に示されており、B系列のもの
もこれと同様に構成することができる。
【0039】マイコンインタフェース44はマイクロコ
ンピュータ14(図1)の制御の下でデータ及びアドレ
スバス28を介して与えられる各種データを受入れ、A
DF21内の各回路に供給するものである。このインタ
フェース44を介して受入れられるデータの種類は次の
通りである。
キーコードKC: 各チャンネルに割当てられた鍵を示
す。
キーオンパルスKONP: 各チャンネルに割当てられ
た鍵の押し始めで一度だけ信号“1”となる。
タッチコードTCH: 各チャンネルに割当てられた鍵
の押圧時のタッチの強さを示す。
音色コードVN: 各チャンネルに割当てられた鍵に対
して選択されている音色種類(ボイス)を示す。
上記KC、KONP、TCH、VNは、所定の時分割タ
イミングに従って各チャンネルのものが時分割多重化さ
れた状態でインタフェース44から出力され、パラメー
タプロセシングユニット(PPUということがある)4
5に与えられる。
【0040】ピッチ同期/非同期指定信号PASY:
このADF21におけるディジタルフィルタ演算をピッ
チ同期で行うか非同期で行うかの指定を行う信号であ
る。この信号PASYも各チャンネル毎に時分割で与え
られるようにすることができ、フィルタ演算のピッチ同
期/非同期制御を各チャンネル毎に独立に行うことがで
きる。この信号PASYは、選択された音色種類、ある
いはピッチベント操作子13(図1)の操作内容、ある
いは専用又は適宜の操作子の操作状態、等に応じて発生
され、バス28を介してインタフェース44に与えられ
る。インタフェース44から出力されたピッチ同期/非
同期指定信号PASYは入力インタフェース38に与え
られ、ピッチ同期信号PS1に応じた信号の発生を該入
力インタフェース38が行うべきか否かの制御を行うため
に使用される。
ダイナミック用フィルタパラメータDPR: マイクロ
コンピュータ14の制御の下でダイナミック制御用パラ
メータメモリ26(図1)から読み出されたフィルタパ
ラメータ(フィルタ係数)である。前述の通り、このダ
イナミックモード用フィルタパラメータDPRの内容は
発音中の時間経過に伴って変化する。このダイナミック
モード用フィルタパラメータDPRのデータ形式も前述
と同様に、12ビットのフィルタ係数データ部と3ビッ
トの重みづけデータ部とから成り、更に、次数の偶奇を
識別するデータを含む。また、前述の通り、このダイナ
ミックモード用フィルタパラメータDPRの一組の次数
は16次(又は15次)である。更に、前述から明らか
なように、直線位相特性におけるフィルタ係数の対称性
により、実際に準備する一組のダイナミックモード用フ
ィルタパラメータDPRは8次分だけでよい。
【0041】ダイナミック/スタティック選択信号D
S: ダイナミック/スタティック選択スイッチ27
(図1)の操作に応じて発生される信号であり、フィル
タ演算を前述のダイナミックモードで行うかスタティッ
クモードで行うかを指示する。上記DPR、DSはイン
タフェース44からパラメータセレクタ46に与えられ
る。パラメータメモリ47は、スタティックモードのた
めのフィルタパラメータ(フィルタ係数)を記憶したも
のである。パラメータプロセシングユニット45は、上
記パラメータメモリ47からスタティックモード用のフ
ィルタパラメータを読み出す働きをする。すなわち、キ
ーオンパルスKONPが与えられたとき、音色コードV
N、タッチコードTCH、キーコードKCの内容に基づ
き読み出すべきパラメータメモリ47のアドレスを計算
し、このアドレスに記憶されているフィルタパラメータ
を該メモリ47から読み出す。読み出されたスタティッ
クモード用フィルタパラメータSPRはパラメータセレ
クタ46に与えられる。このスタティックモード用フィ
ルタパラメータSPRのデータ形式も前述のDPRと同
様である。また、前述の通り、スタティックモード用フ
ィルタパラメータSPRの一組の次数は32次(又は3
1次)である。更に、前述から明らかなように、直線位
相特性におけるフィルタ係数の対称性により、実際に準
備する一組のスタティックモード用フィルタパラメータ
SPRは16次分だけでよい。
【0042】パラメータセレクタ46は、ダイナミック
/スタティック選択信号DSの内容に応じてダイナミッ
クモード用又はスタティックモード用のフィルタパラメ
ータDPR、SPRの一方を選択する。選択されたパラ
メータはA系列及びB系列のパラメータ供給回路48、
49に入力される。A系列のパラメータ供給回路48で
は第1〜第4チャンネルのフィルタパラメータDPR又
はSPRを受け入れ、これを記憶し、フィルタ演算タイ
ミングに同期してステートメモリ40及び乗算器及びア
キュムレータ部41に供給する。B系列のパラメータ供
給回路49では第5〜第8チャンネルのフィルタパラメ
ータに関して同様のことを行う。スタティックモード用
のフィルタパラメータSPRは、鍵押圧当初に一度だけ
パラメータメモリ47から読み出されて、以後はパラメ
ータ供給回路48、49に記憶される。従って、スタテ
ィックモードにおいては発音期間中はフィルタ係数が変
化せず、一定のフィルタ特性を維持する。他方、ダイナ
ミックモード用のフィルタパラメータDPRは、新しい
内容のパラメータがマイコンインタフェース44を介し
て与えられるまでパラメータ供給回路48、49で記憶
され、その記憶内容はパラメータDPRの内容が時間的
に変化する毎に書替えられる。
【0043】パラメータ供給回路48、49から出力さ
れるフィルタパラメータのうち次数の偶奇を識別する偶
奇識別データEOA1〜EOA4,EOB1〜EOB4
はステートメモリ40、42に与えられ、フィルタ係数
データ部COEA、COEB及び重みづけデータ部WE
IA、WEIBは乗算器及びアキュームレータ部41、
43に与えられる。なお、図中の符号において末尾のA
又はBはA系列とB系列の区別を表わす。データEOA
1〜EOA4,EOB1〜EOB4は各チャンネルのも
のが並列的に与えられるが、データCOEA,COE
B,WEIA,WEIBは各チャンネルのものが時分割
的に与えられる。パラメータプロセシングユニット4
5、パラメータセレクタ46、パラメータメモリ47、
パラメータ供給回路48、49の詳細例は図14に示さ
れている。
【0044】ピッチ同期出力回路50は、乗算器及びア
キュムレータ部41,43から出力された各チャンネル
のフィルタ済みの楽音信号サンプル値データを入力し、
これらを各々のピッチに同期したタイミングでサンプリ
ングし直す回路である。ここでサンプリング制御に用い
る信号は、入力インタフェース38から与えられる。ピ
ッチ同期信号PS1Dであり、これは各チャンネルのピ
ッチ同期信号PS1を所定時間遅延したものである。ピ
ッチに同期した再サンプリングのために、遅延したピッ
チ同期信号PS1Dを用いる理由は、前段でのディジタ
ルフィルタ演算における各チャンネルの楽音信号の時間
遅れに合わせるためである。このようにディジタルフィ
ルタ出力信号をそのピッチに同期して再サンプリングす
る処理は、サンプリング周波数を楽音ピッチに調和させ
るので、折返しノイズの問題を解決する。ピッチに同期
してディジタルフィルタ演算を行う場合は、ディジタル
フィルタ出力信号はピッチに同期したサンプリング周期
を持つのでピッチ同期出力回路50を特に設けなかった
としてもピッチ同期を実現することができるが、ピッチ
に非同期でディジタルフィルタ演算を行う場合はピッチ
同期を実現するためにはピッチ同期出力回路50が必要
である。ピッチ同期出力回路50の詳細例は図15に示
されている。
【0045】次にアダプティブディジタルフィルタ装置
21の各部の詳細例について説明する。なお、各図にお
いてブロック中に「1D」、「8D」等の数字と文字D
が伴記された回路は、遅延回路若しくはシフトレジスタ
であり、前の数字は遅延段数若しくはステージ数を示
す。また、この遅延回路又はシフトレジスタブロックに
おいて、遅延制御クロックパルス又はシフト制御クロッ
クパルスが入力されることが図示されていないものは、
マスタクロックパルスφ(図2参照)によって遅延又は
シフト制御がなされる。
【0046】<入力インタフェース38:図11>図1
1において、ピッチ同期信号PS1はオア回路51、5
2を介してシフトレジスタ53に入力される。図2に示
すようにこのピッチ同期信号PS1は8タイムスロット
を1サイクルとして8チャンネル分が時分割多重化され
ており、或るチャンネルに割当てられた鍵のピッチに同
期する周期でそのチャンネルに対応する1タイムスロッ
トに信号“1”が生じる。シフトレジスタ53の出力は
アンド回路54、オア回路52を介して入力側に戻さ
れ、8チャンネル分のピッチ同期信号PS1が8ステー
ジのシフトレジスタ53内で循環保持される。各チャン
ネルに対応する8個のラッチ回路55が並列的に設けら
れており、シフトレジスタ53から出力されるピッチ同
期信号がそのデータ入力Dに並列的に入力される。各ラ
ッチ回路55のラッチ制御入力Lには各チャンネルに対
応するラッチタイミング信号φFS1(25),φFS2
(29),…φFS8(56)が夫々入力去れる。φF
Sの次に記された数字はチャンネル番号を示し、その次
のかっこ内の数字は1演算サイクル(図2に示す64タ
イムスロット)中のタイムスロット番号を示し、そのタ
イムスロット番号に対応するタイムスロットにおいて該
ラッチタイミング信号が信号“1”となる。例えば、信
号φFS1(25)はタイムスロット25で信号“1”
となり、これは第1チャンネルに対応している。図2を
参照すると明らかなようにタイムスロット25はピッチ
同期信号PS1における第1チャンネルの時分割タイミ
ングに対応している。従って、この信号φFS1(2
5)によってラッチ制御されるラッチ回路55の部分に
はチャンネル1のピッチ同期信号PS1の内容(ピッチ
に同期したタイミングでは信号“1”、それ以外のタイ
ミングでは信号“0”)がラッチされる。他のチャンネ
ル2〜8も同様であり、各チャンネルのピッチ同期信号
が所定のタイミングでラッチ回路55に夫々並列的にラ
ッチされる。
【0047】なお、各チャンネルに対応するラッチタイ
ミング信号φFS1(25)〜φFS8(56)は図1
2ものデコーダ56から発生される。デコーダ56はカ
ウンタ57の出力をデコードして様々な種類のタイミン
グ信号を発生する。カウンタ57はマスタクロックパル
スφをカウントするモジュロ64のカウンタであり、シ
ステムシンクロパルスSYNC(図2)によって定期的
にリセットされる。各チャンネル1〜8に対応するラッ
チタイミング信号φFS1(25)〜φFS8(56)
がどのタイムスロットで発生するかは図12の表示から
明らかであろう。図11に戻り、各タイミング信号φF
S1(25)〜φFS8(56)はノア回路58で多重化さ
れかつ反転される。ノア回路58の出力はアンド回路5
4に入力される。これにより、ラッチ回路55への取り
込みが行われたチャンネルに関するシフトレジスタ53
の記憶がクリアされる。
【0048】一方、ピッチ同期信号PS1が“1”とな
ったチャンネルに対応してラッチ回路55にラッチされ
た信号“1”は、次のサイクルでそれに対応するラッチ
タイミング信号φFS1(25)〜φFS8(56)が発生
するまで保持される。こうして、ラッチ回路55には、
ピッチ同期信号PS1が“1”となったチャンネルに対
応して64タイムスロット分の時間だけ信号“1”が保
持される。各チャンネルに対応するラッチ回路55の出
力はフィルタ演算要求信号φF1〜φF8として図12
のタイミング信号発生回路39に与えられる。後述する
ように、このフィルタ演算要求信号φF1〜φF8が
“1”になったとき1サンプル点分のフィルタ演算が実
行される。ピッチ同期信号PS1が発生したときのみフ
ィルタ演算要求信号φF1〜φF8が“1”となるの
で、結局、フィルタを施すべき楽音信号のピッチに同期
したディジタルフィルタ演算が行われることになる。例
えば、図16に示すように、タイムスロット9のときに
ピッチ同期信号PS1が“1”となったとすると(この
場合この信号“1”はチャンネル1のピッチ同期信号で
ある)、これがシフトレジスタ53で循環保持され、タ
イムスロット25でタイミング信号φFS1(25)が
発生したときラッチ回路55にラッチされ、チャンネル
1に対応するフィルタ演算要求信号φF1がそのタイム
スロット25において“1”に立上る。この信号φF1
は次のサイクルのタイムスロット24まで合計64タイ
ムスロット分の時間幅だけ信号“1”を維持する。
【0049】<タイミング信号発生回路39:図12>
図12において、タイミング信号発生回路39は、前述
のデコーダ56及びカウンタ57の他に、図11の入力
インタフェース38から与えられる各チャンネルのフィ
ルタ演算要求信号φF1〜φF8に応じてフィルタ演算
動作制御用のタイミング信号を発生する演算タイミング
発生回路391〜398を各チャンネル(Ch1〜Ch
8)毎に具えている。図ではチャンネル1の回路391
のみ詳細を示したが、他のチャンネル2〜8の回路39
2〜398も同一構成であり、そこに入力されるタイミ
ング信号T(33),T(49),…の時間関係だけが異な
る。タイミング信号T(33),T(49),…はデコーダ
56から発生される。前述と同様に、タイミング信号を
示す符号においてかっこ内の数字は、1演算サイクル
(図2に示す64タイムスロット)中のタイムスロット
番号を示し、そのタイムスロット番号に対応するタイム
スロットにおいて該タイミング信号が“1”となること
を示す。デコーダ56から発生される他のタイミング信
号についても同様であり、かっこ内の数字を参照するこ
とによりそのタイミング信号がどのタイムスロットにお
いて発生するか(“1”となるか)が容易に判る。例え
ば、タイミング信号T(33)は図16に示すようにタイ
ムスロット33において信号“1”となるものであり、
信号T(3−18)はタイムスロット3から18までの間
で信号“1”となるものである。
【0050】チャンネル1の演算タイミング信号発生回
路391について説明すると、フィルタ演算要求信号φ
F1とタイミング信号T(33)がアンド回路59に与え
られる。従って、フィルタ演算動作を行うべきことが要
求されたならば、タイムスロット33のタイミングでア
ンド回路59の出力が“1”となる。このアンド回路5
9の出力信号と、この信号を遅延回路60で1タイムス
ロット遅延した信号とがオア回路61に与えられる。こ
のオア回路61の出力はフィルタデータサンプリングク
ロック信号RLA1としてディジタルフィルタ回路にお
ける単位遅延を制御するために利用される。この信号R
LA1は図16に示すようにタイムスロット33と34
のときに“1”となる。
【0051】アンド回路62にはアンド回路59の出力
とチャンネル1の偶奇識別データEOA1(これは図1
0のパラメータ供給回路48から出力されたものであ
る)をインバータ63で反転した信号が与えられる。こ
のデータEOA1は実現しようとするフィルタ特性の次
数が偶数次のとき信号“1”であり、奇数次のとき信号
“0”、である。アンド回路62の出力は遅延回路64
で2タイムスロット遅延され、インヒビット信号INH
A1として出力される。フィルタ次数が奇数のときアン
ド回路62の出力信号はタイムスロット33で“1”と
なり、その2タイムスロット後のタイムスロット35の
とき信号INHA1が“1”となる(図16参照)。フ
ィルタ次数が偶数ならば、信号INHA1は常に“0”
である。このインビット信号INHA1は、ディジタル
フィルタ回路の演算動作において偶数次の最高次数(3
2次)の演算を禁止することにより奇数次のフィルタ特
性を実現するために使用される。
【0052】タイミング信号T(3−18)とT(35
−50)がオア回路65に入力されており、その出力と
アンド回路59の出力がオア回路66に入力されてい
る。オア回路66の出力は遅延回路67で1タイムスロ
ット遅延され、第1シフトクロック信号φFFA1とし
て出力される(図16参照)。また、オア回路66の出
力と遅延回路64の出力をインバータ68で反転した信
号がアンド回路69に加わっており、その出力を遅延回
路70で1タイムスロット遅延した信号が第2シフトク
ロック信号φFLA1として出力される(図16参
照)。信号φFLA1は、フィルタ次数が偶数ならばタ
イムスロット36のとき“1”であるが、奇数ならば
“0”である。これらのシフトクロック信号φFFA
1,φFLA1は、ディジタルフイルタ回路において各
次数毎の演算動作を時分割的に行うために、ステートメ
モリ40(図10)内の各遅延段階に対応する楽音信号
サンプル値データを順次シフトするために使用される。
タイミング信号T(35−50)に応じてタイムスロッ
ト35から50の間で“1”となる乗算タイミング信号
PDOA1(図16参照)は、ディジタルフィルタ回路
において楽音信号サンプル値データとフィルタ係数との
乗算を行うべき期間を指示するものである。
【0053】A系列における他のチャンネル2〜4に対
応する演算タイミング信号発生回路392〜394にお
いて用いられるタイミング信号T(49),T(19−
34),T(51−2),…はチャンネル1のタイミン
グ信号T(33),T(3−18),T(35−50)
のタイミングから順に16タイムスロットづつずれたも
のである。従って、チャンネル1の回路391から出力
される各信号RLA1〜PDOA1と同様の信号RLA
2〜PDOA2,…RLA4〜PDOA4が他のチャン
ネル2〜4の回路392〜394から夫々順次16タイ
ムスロットづつずれたタイミングで発生される。これに
基づき、A系列のディジタルフィルタ回路(特に乗算器
及びアキュムレータ部41)において、1演算サイクル
=64タイムスロットの間で16タイムスロット毎の時
間区間で4つのチャンネル1〜4のフィルタ演算動作を
時分割的に行わせることができるようになっている。
【0054】B系列の各チャンネル5〜8に対応する演
算タイミング信号発生回路395〜398においても各
チャンネル間で16タイムスロットづつずれた所定のタ
イミングでタイミング信号T(49),T(19−3
4),T(51−2),…が使用され、上述と同様の各
種信号RLB1〜PDOB1,…RLB4〜PDOB4
が発生される。A系列に対応する演算タイミング信号発
生回路391〜394で発生された各信号RLA1〜P
DOA4はA系列のステートメモリ40に与えられ、B
系列に対応する回路395〜398で発生された各信号
RLB1〜PDOB4はB系列のステートメモリ42
(図10)に与えられる。
【0055】<ステートメモリ40:図13>図13に
おいて、A系列のステートメモリ40はA系列の各チャ
ンネル1〜4に対応するステートメモリ401〜404
を並列的に具えている。チャンネル1のステートメモリ
401のみ詳細を示したが、他のチャンネル2〜4のス
テートメモリ402〜404も同一構成であり、そこに
入力される信号が異なっている。上述の各チャンネル1
〜4に対応する演算タイミング信号発生回路391〜3
94(図12)から発生された各信号RLA1〜PDO
A1,…RLA4〜PDOA4は、自己のチャンネルに
対応するステートメモリ401〜404に夫々入力され
る。同図に示したステートメモリ40と乗算器及びアキ
ュムレータ部41の詳細を説明する前に、これらの回路
から成るディジタルフィルタ回路の基本動作について図
17及び図18に示す略図を参照して説明する。
【0056】<偶数次のフィルタ演算基本動作:図17
>図17は、上記ディジタルフィルタ回路において偶数
次(32次)から成るフィルタ特性を実現する場合のF
IR型フィルタ演算の基本動作を説明するための略図で
あり、(a)はブロック図、(b)は各演算タイミング
における(a)のシフトレジスタSR1,SR2の各ス
テージQ0〜Q15,Q16〜Q31内の楽音信号サン
プル値の状態を示す。第1のシフトレジスタSR1は1
6ステージを持ち、フィルタをかけるべきディジタル楽
音信号サンプル値データxnがセレクタSEL1を介し
て入力される。セレクタSEL1を介して新しいサンプ
ル値データxnを取り込むための信号としては前述のフ
ィルタデータサンプリングクロック信号RLA(チャン
ネル1の場合はRLA1)が使用され、シフトレジスタ
SR1のシフトクロックパルスとしては前述の第1シフ
トクロック信号φFFA(チャンネル1の場合はφFF
A1)が使用される。第1のシフトレジスタSR1の各
ステージQ0〜Q15にはサンブル点nからn−15まで
の16個のサンプル値データxn〜xn-15が保持され
る。このシフトレジスタSR1の最終ステージの出力は
セレクタSEL1を介してサンプリングクロック信号R
LAが無いとき第1ステージに戻される。このシフトレ
ジスタSR1は右方向のみにシフトされる。
【0057】第2のシフトレジスタSR2も16ステー
ジを持ち、第1のシフトレジスタSR1の出力がセレク
タSEL2を介して入力される。セレクタSEL2を介
してSR1の出力をSR2に取り込むための信号として
前述のフィルタデータサンプリングクロック信号RLA
が使用され、該SR2のシフトクロックパルスとしては
前述の第2シフトクロック信号φFLA(チャンネル1
の場合はφFLA1)が使用される。この第2のシフト
レジスタSR2の各ステージQ16〜Q31にはサンブ
ル点nからn−16からn−31までの16個のサンプ
ル値データxn-16〜xn-31が保持される。シフトレジス
タSR2の最終ステージQ31はセレクタSEL2を介
してサンブリングクロック信号RLAが無いとき第1ス
テージQ16に接続される。このシフトレジスタSR2
は双方向シフト型であり、サンプリングクロック信号R
LAが“1”のとき右シフトモード,“0”のとき左シ
フトモードとなる。シフトレジスタSR1、SR2のス
テージQ15とQ16の出力が加算器ADDで加算さ
れ、その加算結果が乗算器MULに与えられ、フィルタ
係数COEAが乗算される。その乗算結果はアキュムレ
ータACCに与えられ、全次数に関する乗算結果がそこ
でアキュムレートされる。こうして、アキュムレータA
CCからは1サンプル点分のフィルタ演算結果が出力さ
れる。
【0058】加算器ADDで2サンプル点分のサンプル
値データを加算し、それに共通のフィルタ係数COEA
を乗算器MULで乗算する理由は、前述の「フィルタ係
数の対称性」による。すなわち、対称関係にある2つの
サンプル値データには同じ値のフィルタ係数が掛けられ
るため、それらを別々に乗算せずに、加算した上で1回
の乗算によって両サンプル値データへの係数乗算を同時
に行うようにしている。図17の(b)において、たて
軸の演算タイミングはマスタクロックに応じた1タイム
スロット毎に進行する。そこに示した数字は便宜上の順
序を示すもので1演算サイクル(64タイムスロット)
中のタイムスロット番号を絶対的に示すものではない。
図の例では、演算タイミング1のとき、シフトレジスタ
SR1、SR2の各ステージQ0〜Q31にxnからxn
-31までの32サンプル点のサンプル値データが入って
いる。
【0059】図の例では、演算タイミング2のときサン
プリングクロック信号RLAが“1”になるものとして
いる。これにより、シフトクロック信号φFFA、φF
LAに応じてシフトレジスタSR1、SR2が1ステー
ジ右シフトされ、この演算タイミング2では図示のよう
な状態となる。このときのシフトクロック信号φFF
A、φFLAはチャンネル1の場合は図16のφFFA
1、φFLA1の欄に示すようにタイムスロット34で
発生するものである。同図から明らかなように、次の1
タイムスロットはシフトクロック信号φFFA、φFL
Aは発生せず、従って図17(b)の演算タイミング3
では各ステージQ0〜Q31の状態は変化しない。しか
し、演算タイミング3から18までの16タイムスロッ
ト幅は、チャンネル1でいえば乗算タイミング信号PD
OA1(図16)が発生するタイムスロット35〜50
に対応しており、この間で乗算及びアキュムレートが行
われる。つまり、演算タイミング3では、ステージQ1
5とQ16に入っているxn-14とxn-15のサンプル値デ
ータが加算器ADDで加算され、これに第16次のフィ
ルタ係数が掛けられ、その結果がアキュムレータACC
に保持される。
【0060】演算タイミング4から18までの間は、1
タイムスロット毎に、第1のシフトレジスタSR1は右
シフト、第2のシフトレジスタSR2は左シフトされ、
各ステージQ0〜Q31の状態は図示のように順次変化
する。従って、演算タイミング4ではxn-13とxn-16が
加算され、これに第15次のフィルタ係数が乗算され、
その結果がアキュムレータACCに累算される。次の演
算タイミング5ではxn-12とxn-17について同様の演算
が行われ、こうして対称位置にある2サンプル値データ
に関して同様のフィルタ係数演算が順次時分割で行わ
れ、演算タイミング18では最後の対称位置にあるxn+
1とxn-30に関して同様の演算が行われ、これで全次数
のフィルタ演算が完了する。次の演算タイミング19で
はもう一度シフトが行われ、図示のように、各ステージ
Q0〜Q31に遅延された時間順に各サンプル値データ
xn+1〜xn-30が並ぶ。
【0061】<奇数次のフィルタ演算基本動作:図18
>図18は、奇数次(31次)からなるフィルタ特性を
実現する場合のFIR型フィルタ演算の基本動作を説明
するための略図であり、(a)はブロック図、(b)は
各演算タイミングにおける(a)のシフトレジスタSR
1、SR2の各ステージQ0〜Q15,Q16〜Q30
の楽音信号サンプル値の状態を示す。図18(a)にお
ける各ブロックは図17(a)に示したものと同一であ
り、異なる点は、ステージQ16の出力がゲートGTを
介して加算器ADDに与えられることである。ゲートG
Tはインヒビット信号INHA(第1チャンネルではI
NHA1)を反転した信号によって制御されるようにな
っており、該信号INHAが“1”のときステージQ1
6の出力信号が加算器ADDに与えられることを禁止す
る。また、第2のシフトレジスタSR2の第16ステー
ジQ31は利用せず、第15ステージQ30と第1ステ
ージQ16がセレクタSEL2を介して接続される。図
18(b)において、第1シフトレジスタSR1の状態
変化は図17(b)と同じである。第2シフトレジスタ
SR2の状態変化は図17(偶数次の場合)とは若干異
なる。第2のシフトレジスタSR2のシフトクロック信
号φFLAは、演算タイミング4のとき偶数次モードで
は“1”であったが奇数次モードでは“0”となる(チ
ャンネル1の場合は図16のφFLA1の欄のタイムス
ロット36参照)。従って、奇数次モードでは、図18
(b)に示すように、第2のシフトレジスタSR2の内
容は、演算タイミング4ではシフトされず、演算タイミ
ング5から19の間で順次左シフトされる。
【0062】演算タイミング3では、シフトレジスタS
R1、SR2の各ステージQ0〜Q30には31次の各
遅延段階に対応する楽音信号サンプル値xn+1〜xn-29
が順番に入っており、ステージQ15に中央の次数のサ
ンプル値xn-14が入っている。図5に示されているよう
に、奇数次モードの対称の中央に位置する次数ではそれ
単独に対応して固有のフィルタ係数が割り当てられる。
従って、演算タイミング3では、インヒビット信号IN
HAによってステージQ16の出力を禁止し、中央次数
に対応するステージQ15の出力信号のみを加算器ADD
に加え、乗算器MULにおいて該中央次数に対応する固
有のフィルタ係数を乗算する。演算タイミング4では、
第1のシフトレジスタSR1のみが右シフトされ、第2
のシフトレジスタSR2はシフトされない。従って、ス
テージQ15にはxn-13が入り、Q16にはxn-15が入
っている。また、インヒビット信号INHAは“0”と
なり、ゲートGTが開かれる。こうして、中央次数の両
隣の次数に対応するサンプル値xn-13,xn-15が加算器
ADDに与えられて加算され、乗算器MULにおいて両
者に共通のフィルタ係数が乗算される。演算タイミング
5〜18ではSR1が順次右シフト、SR2が順次左シ
フトされ、図示のように対称位置にあるサンプル値がス
テージQ15,Q16に入り、両者が加算されて共通の
フィルタ係数が乗算される。
【0063】<ディジタルフィルタ回路:図13>図1
3を参照してチャンネル1に対応するステートメモリ4
01について説明する。16ステージの一方向シフトレ
ジスタ71は図17、図18の第1のシフトレジスタS
R1に対応するものであり、チャンネル1に対応する第
1のシフトクロック信号φFFA1によってシフト制御
される。トーンジェネレータ18(図1)から供給され
たディジタル楽音信号サンプル値データTDXはラッチ
回路73に入力され、ラッチタイミング信号XLDA1
に従ってチャンネル1のサンプル値データが該ラッチ回
路73に取込まれる。楽音信号サンプル値データTDX
における各チャンネルの時分割タイミング(図2参照)
に対応して、各チャンネル1〜8に対応するラッチタイ
ミング信号XLDA1〜XLDA4,XLDB1〜XL
DB4がデコーダ56(図12)から発生される。前述
のように、図12の各信号表示の末尾のかっこ内の数字
はその信号が発生するタイムスロット番号を示す。各チ
ャンネルに対応するステートメモリ内にはラッチ回路7
3と同様のラッチ回路が設けられており、各々に対応す
るラッチタイミング信号XLDA1〜XLDA4,XL
DB1〜XLDB4によって各チャンネル1〜8の楽音
信号サンプル値データTDXが別々にラッチされ、こう
してデマルチプレクスされる。
【0064】ラッチ回路73にラッチされたチャンネル
1の楽音信号サンプル値データはセレクタ74のA入力
にあたえられる。セレクタ74は図12の演算タイミン
グ信号発生回路391から与えられるフィルタデータサ
ンプリングクロック信号RLA1が“1”のときA入力
を選択し、それ以外のときはB入力に加わるシフトレジ
スタ71の第16ステージの出力信号を選択する。前述
の通り、この信号RLA1は楽音のピッチに同期するも
のであり、ピッチに同期してセレクタ74で新しいサン
プル値データ(A入力)を選択し、これをシフトレジス
タ71に与える。図16から明らかなように、信号RL
A1が“1”となるタイムスロット34で、シフトクロ
ック信号φFFA1が“1”となるので、シフトレジス
タ71はセレクタ74から与えられる新しいサンプル値
データを第1ステージ(Q0)に取込む。次のタイムス
ロット35ではシフト動作を一時休止し、続くタイムス
ロット36〜51で順次右シフトするのは前述の通りで
ある。
【0065】双方向シフトレジスタ72は図17、図1
8の第2のシフトレジスタSR2に対応するものであ
る。この双方向シフトレジスタ72の各ステージQ16
〜Q31は図示のようにセレクタSL1〜SL16とラ
ッチ回路LC1〜LC16から成っていて、双方向シフ
トが可能なように接続されている。すなわち、最初のス
テージQ16のセレクタSL1のA入力には第1のシフ
トレジスタ71の最終ステージ(Q15)の出力信号が
入力され、他の各ステージQ17〜Q31のセレクタS
L2〜SL16のA入力には夫々前のステージのラッチ
回路LC1〜LC15の出力が入力され。また、各ステ
ージのセレクタSL1〜SL16のB入力には次のステ
ージのラッチ回路LC2〜LC16,LC1の出力が入
力される。これにより、各セレクタSL1〜SL16の
A入力が選択されたとき右シフトモードとなり、B入力
が選択されたとき左シフトモードとなる。各セレクタS
L1〜SL16の選択信号としてサンプリングクロック
信号RLA1が用いられ、これが“1”のときA入力選
択つまり右シフトモードとなる。ただし、奇数次モード
のときにステージQ31を無効にするために、ステージ
Q30のセレクタSL15が他とは幾分異なっている。
つまり、このセレクタSL15にはC入力が設けられて
おり、そこにステージQ16の出力信号が加わる。チャ
ンネル1に関する偶奇識別データEOA1が“1”(つ
まり偶数次モード)のときアンド回路751が可能化さ
れ、信号RLA1が“0”のとき該アンド回路751の
出力が信号“1”となり、これによりセレクタSL15
がB入力を選択し、ステージQ31の出力がステージQ
30に与えられる(左シフトされる)。EOA1が
“0”のとき(奇数次モードのとき)アンド回路761
が可能化され、信号RLA1が“0”のときセレクタS
L15がC入力を選択し、ステージQ16の出力がステ
ージQ30に与えられる(Q31を飛越して左シフトさ
れる)。以上の構成により、第1及び第2のシフトレジ
スタ71,72の内容の変化状態は偶数次モードと奇数
次モードの別に応じて図17(b)、図18(b)に示した
ものと全く同様になる。
【0066】第2のシフトレジスタ72の第1ステージ
Q16の出力信号はゲート75を介してゲート76に与
えられる。ゲート75はインヒビット信号INHA1を
反転した信号によって制御されるもので、図18のゲー
トGTに対応するものである。ゲート76は、第1のシ
フトレジスタ71の出力信号(ステージQ15の出力信
号)とゲート75を介して与えられる第2のシフトレジ
スタ72の出力信号(ステージQ16の出力信号)を入
力し、乗算タイミング信号PDOA1(図16参照)に
よって開放される。ゲート76の出力は乗算器及びアキ
ュムレート部41の加算器77に与えられ、そこで2つ
の楽音信号サンプル値データが加算される。この加算器
77は図17、図18の加算器ADDに対応するもので
ある。加算器77の出力は遅延回路78で1タイムスロ
ット遅延されて乗算器79に入力される。乗算器79は
遅延回路78を介して与えられる楽音信号サンプル値デ
ータに遅延回路80を介して与えられるフィルタ係数デ
ータCOEAを乗算するものである。乗算器79の出力
は遅延回路81で4タイムスロット遅延されてシフタ8
2に与えられる。シフタ82のシフト制御入力には5タ
イムスロットの遅延を設定する遅延回路83を介して重
みづけデータWEIAが与えられる。この乗算器79と
シフタ82は、図17、図18の乗算器MULに対応す
るものである。すなわち、前述の通り、フィルタ係数デ
ータCOEAはフィルタ係数の有効ビットのデータであ
り、乗算器79においてこのフィルタ係数の有効ビット
と楽音信号サンプル値データとの乗算が行われる。そし
て、この乗算結果をシフタ82において重みづけデータ
WEIAの値に応じたビット数だけシフトすることによ
り、フィルタ係数の実数と楽音信号サンプル値データと
の乗算が完了する。
【0067】シフタ82の出力はアキュムレータ84に
与えられ、1チャンネル分の各次数に対応する乗算結果
がアキュムレートされる。アキュムレータ84の出力は
ラッチ回路85に入力され、演算終了タイミング信号F
ENDAに従ってラッチされる。この信号FENDAは
図12のデコーダ56から発生される。同図中に表示さ
れているように、この信号FENDAはタイムスロット
8,24,40,56において“1”となる。タイムス
ロット56ではチャンネル1の演算結果をラッチし、8
ではチャンネル2の演算結果をラッチし、24ではチャ
ンネル3の演算結果をラッチし、40ではチャンネル4
の演算結果をラッチする。デコーダ56からはB系列の
演算終了タイミング信号FENDBも同様に発生され
る。
【0068】乗算器及びアキュムレート部41は、4つ
のチャンネルによって時分割共用される。すなわち、加
算器77には、チャンネル1のステートメモリ401の
ゲート76の出力のみならず、チャンネル2〜4のステ
ートメモリ402〜404内に設けられている同様の機
能をもつゲートの出力信号が多重的に入力される。各ス
テートメモリ401〜404の出力ゲート76には、1
6タイムスロット幅の乗算タイミング信号PDOA1〜
PDOA4が16タイムスロットづつずれた異なるタイ
ミングで夫々入力される。従って、加算器77には各チ
ャンネル1〜4の信号が16タイムスロット毎に時分割
多重的に入力される。フィルタ係数データCOEA及び
重みづけデータWEIAは、4つのチャンネルのものが
上述と同じタイミングで16タイムスロット毎に時分割
多重化されており、1つのチャンネルに関する16タイ
ムスロットにおいては1次から16次までのデータが時
分割多重化されている。B系列のステートメモリ42と
乗算器及びアキュムレータ部43も図13と同一の構成
であり、但し、各種信号のタイミングが適宜異なってい
る。
【0069】図13に示されたようなA系列及びB系列
のディジタルフィルタ回路(すなわちステートメモリ4
0,42と乗算器およぴアキュムレータ部41,43)
における各チャンネル1〜8に関するフィルタ動作のタ
イミングを図19に示す。図19において、シフト1の
欄には第1のシフトレジスタ(チャンネル1の場合は7
1)のシフトタイミングを示し、シフト2の欄には第2
のシフトレジスタ(チャンネル1の場合は72)のシフ
トタイミングを示している。矢印の方向はシフト方向
(右シフト又は左シフト)を示している。各チャンネル
のシフトタイミングは演算タイミング信号発生回路39
1〜398(図12)から発生される第1及び第2のシ
フトクロック信号φFFA1〜φFFB4、φFLA1
〜φFLB4の発生タイミングに対応している。シフト
動作には、フィルタ演算のためのシフト動作と記憶デー
タリフレッシュのためのダミーシフト動作とがある。例
えばチャンネル1の場合、タイムスロット4〜19での
シフトがダミーシフトである。シフト2の欄における
(←)の記号は偶数次モードのとき左シフトを行い、奇
数次モードのときシフトを行わないことを示す。
【0070】図19において、INHの欄はインヒビッ
ト信号INHA1〜INHB4の発生タイミングを示し
ている。奇数次モードのときは○印のタイムスロットに
おいてインヒビット信号INHA1〜INHB4が
“1”となる。PDOの欄は、各チャンネルのステート
メモリ40,42から乗算器及びアキュムレータ部4
1,43に楽音信号サンプル値データが入力されるタイ
ミングを示している。これは各チャンネルの乗算タイミ
ング信号PDOA1〜PDOB4の発生タイミングに対
応している。SUMの欄は、アキュムレータ84の出力
タイミングを示している。PDOとSUMのタイミング
の間に6タイムスロットの遅れがあるのは、遅延回路7
8,81による5タイムスロットの遅れとアキュムレー
ト84による1タイムスロットの遅れによる。アキュム
レータ84の出力タイミングの最後のタイムスロットで
は演算終了タイミング信号FENDAが発生し、アキュ
ムレータ84の出力をラッチ回路85に取り込む。
【0071】<パラメータメモリ47:図20>図20
はパラメータメモリ47の記憶フォーマットの一例を示
しており、キーグループテーブル、タッチグループテー
ブル、パラメータアドレステーブルとパラメータバンク
から成っている。実際のフィルタパラメータはパラメー
タバンクに記憶されており、パラメータアドレステーブ
ルにはパラメータバンクから読み出すべきパラメータの
アドレスデータが記憶されている。キーグループテーブ
ルは各鍵に対応してその鍵をグループ化する情報を記憶
している。一例として鍵数は88、グループ数は44で
あり、キーグループテーブルでは各鍵に対応するアドレ
ス位置にその鍵の属するキーグループに関する相対アド
レスデータ(キーグループアドレスという)を記憶して
いる。従って、キーグループテーブルはキーコードKC
によってアドレスされる。このキーグループテーブルは
パラメータメモリ47の所定の絶対アドレス(オフセッ
トアドレスOADSという)から始まる記憶エリアを占
めている。
【0072】タッチグループテーブルは各音色毎の鍵タ
ッチ強度の各段階に対応してそのタッチ強度をグループ
化する情報を記憶している。一例として音色数は32で
あり、このタッチグループテーブルは音色コードVNの
値0〜31に対応する32の音色別エリアを含んでお
り、またタッチコードTCHによって表現し得るタッチ
強度の段階は一例として64であり、各音色別エリアは
タッチ0から63に対応する64個のアドレス位置を有
している。各タッチ強度に対応するアドレス位置にはそ
のタッチ強度の属するタッチグループに関する相対アド
レスデータ(タッチグループアドレスという)が記憶さ
れている。一例としてタッチグループ数は16である。
従って、タッチグループテーブルは音色コードVNとタ
ッチコードTCHによってアドレスされる。このタッチ
グループテーブルはパラメータメモリ47の所定の絶対
アドレス(これをオフセットアドレスOAD1という)
から始まる記憶エリアを占めている。このタッチグルー
プテーブルを読み出すための絶対アドレスデータは、6
ビットのタッチコードTCHの上位に5ビットの音色コ
ードVNを組合せて11ビットの相対アドレスデータ
(オフセットアドレスOAD1を0とするアドレス)を
作成し、これをオフセットアドレスOAD1に加算する
ことにより作成される。
【0073】パラメータアドレステーブルは、各キーグ
ループ毎に、かつ各音色毎に、各タッチグループに対応
するフィルタパラメータを記憶しているアドレスの相対
アドレスデータ(パラメータアドレスという)を記憶し
ている。このパラメータアドレステーブルは、各キーグ
ループ0〜43に対応する44個のキーグループエリア
を含んでおり、このキーグループエリアは上述のキーグ
ループテーブルから読み出したキーグループアドレスに
よってアドレスされる。各キーグループエリアは音色0
〜31に対応する32個の音色別エリアを夫々含んでお
り、この音色別エリアは音色コードVNによってアドレ
スされる。各音色別エリアはタッチグループ0〜15に
対応する16個のアドレス位置を有しており、各アドレ
ス位置は上述のタッチグループテーブルから読み出した
タッチグループアドレスによってアドレスされる。な
お、1アドレス位置に2バイト分の記憶位置が割当てら
れており、そこに上記パラメータアドレスデータが12
ビットで記憶されている。このパラメータアドレステー
ブルはパラメータメモリ47の所定の絶対アドレス(こ
れをオフセットアドレスOAD2という)から始まる記
憶エリアを占めている。このパラメータアドレステーブ
ルを読み出すための絶対アドレスデータは、最下位の1
ビットを“0”又は“1”に設定し(これは1アドレス
位置が2バイトつまり2絶対アドレスを占めるため)、
その上位に4ビットのタッチグループアドレスデータを
位置させ、更にその上位に5ビットの音色コードVNを
位置させ、更にその上位に6ビットのキーグループコー
ドを位置させて合計16ビットの相対アドレスデータ
(オフセットアドレスOAD2を0とするアドレス)を
作成し、これをオフセットアドレスOAD2に加算する
ことにより作成される。
【0074】パラメータバンクは一例として2620種
類のフィルタパラメータを記憶しており、パラメータア
ドレス0から2619に対応する2620個のパラメー
タ記憶エリアを含んでいる。1つのパラメータ記憶エリ
アは32バイトの記憶位置(32個の絶対アドレス位
置)を含んでおり、16次数分の1組のフィルタ係数に
対応するパラメータを記憶している。1次数分のフィル
タ係数は2バイトの記憶位置に記憶されており、その内
訳は、前述の通り、12ビットのフィルタ係数データ
(COE)と3ビットの重みづけデータ(WEI)と1
ビットの偶奇識別データ(EO)から成る。但し、重み
づけデータ(WEI)と偶奇識別データ(EO)は1組
のパラメータにおいては各次数間で共通であるため第1
次の記憶位置にのみ記憶し、他の次数の記憶位置には記
憶しない。しかし、重みづけデータ(WEI)は各次数
毎に独立に記憶するようにすることも可能である。この
パラメータバンクは上述のパラメータアドレステーブル
から読み出されたパラメータアドレスによってアドレス
される。パラメータバンクはパラメータメモリ47の所
定の絶対アドレス(これをオフセットアドレスOAD3
という)から始まる記憶エリアを占めている。このパラ
メータバンクを読み出すための絶対アドレスデータは、
12ビットのパラメータアドレスデータを17ビットの
相対アドレスデータ(オフセットアドレスOAD3を0
とするアドレス)の上位12ビットに位置させることに
より該相対アドレスデータを作成し、これをオフセット
アドレスOAD3に加算することにより作成される。こ
の絶対アドレスデータの下位5ビットを32ステップで
順次変化させることにより、パラメータアドレスによっ
て指定された1パラメータ記憶エリア内の16次数分か
らなる1組のフィルタパラメータが順次読み出される。
【0075】図20に示したような階層化されたパラメ
ータメモリ構造は、メモリ容量を節約することができる
ので有利である。このようにせずに、44キーグルー
プ、32音色、16タッチグループの組合せのすべて
(22528通り)に対応して個別にフィルタパラメー
タを記憶したとすると、22528×32バイトの記憶
容量が要求されるが、図20のようにすればパラメータ
アドレステーブルの1408(=44×32)×32バ
イトとパラメータバンクの2620×32バイトを合わ
せた4028×32バイトの記憶容量しか要求されな
い。つまり、キーグループ、音色、タッチグループの組
合せが異なっていてもフィルタパラメータは共通のもの
を使用できる場合があるので、図20の例では2252
8通りの組合せに対して2620種のパラメータを共用
する構造としており、これによりメモリ容量の節約を図
っている。
【0076】<パラメータプロセシングユニット45、
パラメータセレクタ46、パラメータメモリ47、パラ
メータ供給回路48、49:図14>パラメータプロセ
シングユニット45は、前述のスタティックモードのた
めに、上述したようなパラメータメモリ47の読み出し
を制御するものである。プログラムメモリ451には、
上述のようなパラメータメモリ47の読み出し制御を実
行するプログラムが記憶されている。プログラムカウン
タ452はプログラムメモリ451を読み出すためのプ
ログラムステップ信号PCを発生するもので、8ステー
ジのシフトレジスタ86と加算器87、ゲート88、8
9、エンド検出回路90を含んでおり、8チャンネル分
のカウント動作を時分割的に行う。キーオンパルスKO
NPがインバータ91で反転され、ゲート88の制御入
力に加わる。このキーオンパルスKONPは、鍵の押し
始めで信号“1”となるもので、各チャンネルに対応す
るものが時分割多重化されている。加算器87はシフト
レジスタ86の出力に対してゲート89から与えられる
“1”を加算するもので、その加算結果はゲート88を
介してシフトレジスタ86に与えられる。エンド検出回
路90はシフトレジスタ86の出力の値がプログラムの
最終ステップになったか否かを検出するもので、最終ス
テップに至らない場合は信号“0”を出力し、インバー
タ92を介して信号“1”をゲート89の制御入力に与
え、1カウントアップを指示する信号“1”が加算器8
7に与えられるようにするが、最終ステップに至った場
合は、信号“1”を出力し、インバータ92を介して信
号“0”をゲート89に与え、該ゲート89を閉じ、カ
ウントが行われないようにする。
【0077】以上の構成により、プログラムカウンタ4
52の内容つまりステップ信号PCは、キーオンパルス
KONPが発生したとき「0」にリセットされ、以後シ
フトレジスタ86が一巡する毎に(8タイムスロット毎
に)1カウントアップされ、やがて最終ステップに到達
するとカウントが停止される。一例としてプログラムス
テップ数は37であり、カウンタ452から出力される
ステップ信号PCは「0」から「36」(最終ステッ
プ)まで順次変化する。ステップ信号PCはシフトレジ
スタ86の出力であり、8チャンネルのものが時分割多
重化されている。プログラムメモリ451は入力された
ステップ信号PCのステップに応じて選択制御信号SE
LC1〜SELC4を読み出し、かつオフセットアドレ
スメモリ453を読み出すためのアドレスデータを読み
出す。オフセットアドレスメモリ453は前述のオフセ
ットアドレスOADS〜OAD3の値を記憶している。
オフセットアドレスメモリ453から読み出されたオフ
セットアドレスデータADOF(OADS〜OAD3の
いずれか)は加算器454に入力される。加算器454
はセレクタ455から与えられる相対アドレスデータR
ADDとオフセットアドレスデータADOFとを加算
し、その出力をアドレスデータPRADとしてパラメー
タメモリ47のアドレス入力に加わる。
【0078】キーグループアドレスレジスタ456、タ
ッチグループアドレスレジスタ457、パラメータアド
レスレジスタ458は夫々8ステージのシフトレジスタ
から成り、キーグループアドレスデータKEYG、タッ
チグループアドレスデータTCHG、パラメータアドレ
スデータPADを各チャンネル毎に時分割的に記憶する
ものである。各レジスタ456〜458の入力側にセレ
クタ93〜95が設けられており、パラメータメモリ4
7から読み出されたデータが各セレクタの一方の入力に
加わる。各セレクタ93〜95の他方の入力には各レジ
スタ456〜458の出力が加わる。セレクタ93〜9
5の選択制御信号SELC2〜SELC4はプログラム
メモリ451から与えられるようになっており、プログ
ラムのステップに応じて、パラメータメモリ47の読み
出し出力データをレジスタ456〜458に取り込む
か、あるいはレジスタ456〜458に一旦取り込んだ
データを循環保持するかの制御を行う。明らかなよう
に、パラメータメモリ47から前述のキーグループアド
レスデータが読み出されたときこれをキーグループアド
レスレジスタ456に取り込み、前述のタッチグループ
アドレスデータが読み出されたときこれをタッチグルー
プアドレスレジスタ457に取り込み、前述のパラメー
タアドレスデータが読み出されたときこれをパラメータ
アドレスレジスタ458に取り込むように選択制御信号
SELC2〜SELC4が発生される。各レジスタ45
6〜458にストアされたアドレスデータKEYG、T
CHG、PADはセレクタ455に入力される。セクタ
455にはキーコードKC、音色コードVN及びタッチ
コードTCH更にはプログラムカウンタ452から出力
されるステップ信号PCの最下位ビットPCLSB及び
このステップ信号PCから「4」(2進の“100”)
を引いたデータPCー4も入力されている。セレクタ4
55ではプログラムメモリ451から与えられる選択制
御信号SELC1に応じて入力データを所定の組合せで
選択しかつ選択したデータを相対アドレスデータRAD
Dにおける所定の重みに対応するビット位置に位置さ
せ、こうして相対アドレスデータRADDを作成し出力
する。
【0079】このパラメータプロセシングユニット45
において実行される37ステップの処理内容は下記の通
りである。
PC=0のとき: キーグループテーブル読出し処理
選択制御信号SELC1によりキーコードKCを選択
し、オフセットアドレスデータADOFとしてキーグル
ープテーブルのオフセットアドレスOADSを読み出
す。また、選択制御信号SELC2によりパラメータメ
モリ47の出力データをキーグループアドレスレジスタ
456に取り込む。これにより、パラメータメモリ47
のキーグループテーブルからキーコードKCに対応する
キーグループアドレスが読み出され、これがレジスタ4
56にストアされる。
PC=1のとき: タッチグループテーブル読出し処理
信号SELC1により音色コードVNとタッチコードT
CHを選択し、最下位ビットにTCHを、その上位にV
Nを、位置させて相対アドレスデータRADDを作成す
る。オフセットアドレスデータADOFとしてタッチグ
ループテーブルのオフセットアドレスOAD1を読み出
す。また、信号SELC3によりパラメータメモリ47
の出力データをタッチグループアドレスレジスタ457
に取り込む。これにより、パラメータメモリ47のタッ
チグループテーブルから音色コードVN及びタッチコー
ドTCHに対応するタッチグループアドレスが読み出さ
れ、これがレジスタ457にストアされる。
【0080】PC=2,3のとき: パラメータアドレ
ステーブル読出し処理
信号SELC1によりキーグループアドレスデータKE
YG、音色コードVN、タッチグループアドレスデータ
TCHG、ステップ信号PCの最下位ビットPCLSB
を選択し、最下位ビットからPCLSB、TCHG、V
N、KEYGの順で位置させて相対アドレスデータRA
DDを作成する。データADOFとしてパラメータアド
レステーブルのオフセットアドレスOAD2を読み出
す。また、信号SELC4によりパラメータメモリ47
の出力データをパラメータアドレスレジスタ458に取
り込む。これにより、パラメータメモリ47のパラメー
タアドレステーブルから適切なパラメータアドレスが読
み出され、これがレジスタ458にストアされる。前述
の通り、1つのパラメータアドレスデータは12ビット
から成り、2バイトの記憶位置に記憶されている(図2
0参照)。ビットPCLSBが“0”のとき(PC=2
のステップ)、下位8ビットのパラメータアドレスデー
タが読み出され、PCLSBが“1”のとき(PC=3
のステップ)、その上位4ビットのパラメータアドレス
データが読み出される。セレクタ95では、このパラメ
ータアドレスデータが12ビットデータに並列化される
ようにビット位置を振分けてレジスタ458にストアす
る。
【0081】PC=4〜35のとき: パラメータバン
ク読出し処理
信号SELC1によりパラメータアドレスデータPAD
と4減算したステップ信号PCー4を選択し、最下位ビ
ットからPCー4、PADの順で位置させて相対アドレ
スデータRADDを作成する。また、データADOFと
してパラメータバンクのオフセットアドレスOAD3を
読み出す。信号PCー4は、PC=4〜35の32ステ
ップにおいてその値が「0」から「31」まで変化す
る。従って、パラメータアドレスによって指定された3
2バイトから成る1組のフィルタパラメータ(図20参
照)がパラメータメモリ47のパラメータバンクから1
バイトづつ順次読み出される。
【0082】PC=36のとき:プログラムカウンタ4
52をストップし、フィルタパラメータの読み出しシー
ケンスを終了する。パラメータメモリ47から読み出さ
れたフィルタパラメータはタイミング同期化回路459
に入力される。この回路459はプログラムステップ信
号PCとタイミング信号発生回路39のデコーダ56
(図12)から与えられるタイミング信号群TS1を受
入れ、これらの信号に基づき、各次数のフィルタパラメ
ータを所定のタイミングに同期化して出力する。この同
期化回路459の出力はスタティックモード用のフィル
タパラメータSPRとしてパラメータセレクタ46のA
入力に与えられる。パラメータセレクタ46のB入力に
はマイコンインタフェース44(図10)から出力され
たダイナミックモード用のフィルタパラメータDPRが
与えられる。セレクタ46の選択制御入力SBにはマイ
コンインタフェース44から出力されたダイナミック/
スタティック選択信号DSが与えられ、ダイナミックモ
ード時はB入力のパラメータDPRを選択し、スタティ
ックモード時はA入力のパラメータSPRを選択する。
【0083】セレクタ46の出力はA,B各系列のパラ
メータ供給回路48、49に入力される。A系列の回路
48のみ詳細例を示したが、B系列の回路49も同一構
成である。パラメータ供給回路49において、分配回路
485は、セレクタ46からシリアルに与えられるパラ
メータデータのうちA系列のチャンネル1〜4に関する
データを取り込み、これを各チャンネル別に並列化する
と共に、フィルタ係数データ(チャンネル1ではCOE
A1)、重みづけデータ(チャンネル1ではWEIA
1)、偶奇識別データ(チャンネル1ではEOA1)の
別に並列化し、これらを各チャンネルに対応する記憶回
路481〜484に分配する。このような分配制御のた
めに、適宜のタイミング信号TS2がタイミング信号発
生回路39のデコーダ56(図12)から発生され、分
配回路485に与えられる。
【0084】記憶回路481〜484はチャンネル1に
ついて詳細例を示すが、他のチャンネルに関しても同様
である。12ビットのフィルタ係数データCOEA1は
セレクタ96を介して16ステージのシフトレジスタ9
7に入力される。このフィルタ係数データCOEA1は
16タイムスロットにおいて16次数分のデータが時分
割多重化されており、この16次数分のデータがシフト
レジスタ97の各ステージに取り込まれる。シフトレジ
スタ97の内容はセレクタ96を介して循環保持され
る。3ビットの重みづけデータWEIA1はラッチ回路
98に入力される。1ビットの偶奇識別データEOA1
はラッチ回路99に入力される。セレクタ96及びラッ
チ回路98、99の制御は、図示しない適宜の制御信号
によって適切なタイミングで行われる。すなわち、スタ
ティックモードのときは、鍵の押し始めに応答してパラ
メータメモリ47から読み出された16次数分のパラメ
ータデータが、タイミング同期化回路459、セレクタ
46、分配回路485を経由して記憶回路481に入力
されるタイミングに同期して、セレクタ96が16次数
分のフィルタ係数データCOEA1をシフトレジスタ9
7に取り込み、ラッチ回路98、99が重みづけデータ
WEIA1、偶奇識別データEOA1をラッチする。以
後、そのチャンネルに対して新しい押圧鍵が割当てられ
るまで、シフトレジスタ97、ラッチ回路98、99の
記憶は保持される。一方、ダイナミックモードのとき
は、マイコンインタフェース44(図10)からセレク
タ46、分配回路485を経由して8次数分のダイナミ
ック制御用パラメータデータDPRが与えられるタイミ
ングに同期して、該パラメータデータDPRのうち8次
数分のフィルタ係数データCOEA1をシフトレジスタ
97に取り込み、重みづけデータWEIA1をラッチ回
路98にラッチし、偶奇識別データEOA1をラッチ回
路99にラッチする。以後、新たなダイナミック制御用
パラメータデータDPRが与えられるまで、シフトレジ
スタ97、ラッチ回路98、99の記憶は保持される。
なお、ダイナミックモードにおいては、シフトレジスタ
97の16ステージのうち、9次から16次に対応する
8ステージに8次数分のダイナミック制御用パラメータ
のフィルタ係数データをストアし、1次から8次に対応
する8ステージの内容は0にしておく。
【0085】各記憶回路481〜484のシフトレジス
タ97から出力されるフィルタ係数データはセレクタ4
86に与えられ、そこでタイミング信号TS3に従って
各チャンネルのものが順次選択され、時分割多重化され
る。こうして、チャンネル1〜4に関するフィルタ係数
データが時分割多重化され、A系列のフィルタ係数デー
タCOEAとしてA系列の乗算器及びアキュムレータ部
41(図13)に供給される。各記憶回路481〜48
4のラッチ回路98から出力される重みづけデータはセ
レクタ487に与えられ、そこでタイミング信号TS4
に従って各チャンネルのものが順次選択され、時分割多
重化される。こうして時分割多重化されたチャンネル1
〜4の重みづけデータWEIAはA系列の乗算器及びア
キュムレータ部41(図13)に供給される。各記憶回
路481〜484のラッチ回路99にラッチされた各チ
ャンネル1〜4の偶奇識別データEOA1〜EOA4は
対応するチャンネルのステートメモリ401〜404
(図13)に並列的に与えられる。
【0086】<ピッチ同期出力回路50:図15>図1
5において、セレクタ501のB入力にはA系列の乗算
器及びアキュムレータ部41(図10、図13)から出
力されたチャンネル1〜4のフィルタ済み楽音信号サン
プル値データSMAが時分割多重的に与えられる。図1
3のラッチ回路85において各チャンネル1〜4のフィ
ルタ済み出力が取り込まれるタイミングは図19のSU
Mの欄の累算最終タイムスロット(斜線の部分)であ
り、これにより、各チャンネル1〜4のフィルタ済みサ
ンプル値データSMAのチャンネルタイミングを示すと
図16のようになる。セレクタ501のC入力にはB系
列の乗算器及びアキュムレータ部43(図10)から出
力されたチャンネル5〜8のフィルタ済み楽音信号サン
プル値データSMBが時分割多重的に与えられる。この
データSMBのチャンネルタイミングは図16のようで
ある。
【0087】セレクタ501のA入力には8ステージの
シフトレジスタ502の出力が与えられ、該セレクタ5
01の出力は該シフトレジスタ502に入力される。こ
のセレクタ501とシフトレジスタ502は、各チャン
ネル1〜8のフィルタ済みサンプル値データを図2のP
S1のチャンネルタイミングに示すような1タイムスロ
ット単位の高速の時分割タイミングに従って時分割多重
化するためのものである。図12のデコーダ56からタ
イムスロット57、13、26、46において“1”と
なるタイミング信号1REGLDAとタイムスロット1
1、31、44、64において“1”となるタイミング
信号1REGLDBが発生され、これが図15のセレク
タ501のB選択制御入力SBとC選択制御入力SCに
与えられる。これにより、B入力に与えられるデータS
MAのうち、チャンネル1のデータがタイムスロット5
7(これは図2に示すPS1のチャンネルタイミングの
うちチャンネル1のタイミングに対応する)で選択さ
れ、チャンネル2のデータがタイムスロット13(図2
のPS1のチャンネル2のタイミング)で選択され、チ
ャンネル3のデータがタイムスロット26(図2のPS
1のチャンネル3のタイミング)で選択され、チャンネ
ル4のデータがタイムスロット46(図2のPS1のチ
ャンネル4のタイミング)で選択される。また、C入力
に与えられるデータSMBのうち、チャンネル5のデー
タがタイムスロット11(図2のPS1のチャンネル5
のタイミング)で選択され、チャンネル6のデータがタ
イムスロット31(図2のPS1のチャンネル6のタイ
ミング)で選択され、チャンネル7のデータがタイムス
ロット44(図2のPS1のチャンネル7のタイミン
グ)で選択され、チャンネル8のデータがタイムスロッ
ト64(図2のPS1のチャンネル8のタイミング)で
選択される。
【0088】タイミング信号1REGLDA、1REG
LDBをノア回路503で反転した信号がセレクタ50
1のA選択制御入力SAに与えられる。従って、上述の
各タイミングでシフトレジスタ502に取り込まれた各
チャンネルのフィルタ済みサンプル値データは、それ以
外のタイミングでは該シフトレジスタ502で循環保持
される。シフトレジスタ502の出力はセレクタ504
のA入力に与えられる。セレクタ504の出力は8ステ
ージのシフトレジスタ505に入力される。シフトレジ
スタ505の出力はセレクタ504のB入力を介して入
力側に戻される。セレクタ504及びシフトレジスタ5
05は、ディジタルフィルタの出力楽音信号をそのピッ
チに同期して再サンプリングするためのものである。セ
レクタ504のA選択制御入力SAには入力インタフェ
ース38(図11)から与えられる遅延されたピッチ同
期信号PS1Dが8タイムスロットの遅延回路506を
介して入力される。
【0089】図11において、ピッチ同期信号PS1は
オア回路51を介して64ステージのシフトレジスタ1
00に入力される。このシフトレジスタ100で24タ
イムスロット遅延されたピッチ同期信号がアンド回路1
01に入力され、40タイムスロット遅延されたものが
アンド回路102に入力され、48タイムスロット遅延
されたものがアンド回路103に入力され、64タイム
スロット遅延されたものがアンド回路104に入力され
る。各アンド回路101〜104の他の入力には、図1
2のデコーダ56から発生されたタイミング信号PSS
1〜PSS4が夫々入力される。各アンド回路101〜
104の出力はオア回路105に与えられ、遅延された
ピッチ同期信号PS1Dが得られる。各信号PSS1〜
PSS4の発生タイミングは図12中にかっこ書きで示
した通りである。そこにおいて、例えば「1y8」なる
表示は8タイムスロット周期で1番目のタイムスロット
で信号“1”が発生することを示す。従って、タイミン
グ信号PSS1の場合、「1y8,3y8」であるか
ら、8タイムスロット周期で1番目と3番目のタイムス
ロットで夫々信号“1”が発生する。図12中の各信号
PSS1〜PSS4のかっこ内の表示と図2のPS1の
チャンネルタイミングとを参照すれば明らかなように、
信号PSS1はPS1におけるチャンネル1と3のタイ
ミングで“1”となり、PSS2はPS1におけるチャ
ンネル2と6のタイミングで“1”となり、PSS3は
PS1におけるチャンネル3と7のタイミングで“1”
となり、PSS4はPS1におけるチャンネル4と8の
タイミングで“1”となる。以上により、チャンネル1
と5のピッチ同期信号PS1は24タイムスロット、2
と6のPS1は40タイムスロット、3と7のPS1は
48タイムスロット、4と8のPS1は64タイムスロ
ット、夫々遅延したものを遅延されたピッチ同期信号P
S1Dとする。このようにチャンネルによって遅延時間
が異なる理由は、アダプティブディジタルフィルタ装置
21(図10)における各チャンネル1〜4、5〜8の
演算タイミングのずれに合せたからである。
【0090】図15に戻り、遅延されたピッチ同期信号
PS1Dは遅延回路506で更に8タイムスロット遅延
され、セレクタ504の入力SAに与えられる。セレク
タ504は或るチャンネルの信号PS1Dが“1”のと
きそのチャンネルのフィルタ済みサンプル値データをシ
フトレジスタ502から取り込み、シフトレジスタ50
5に入力する。それ以外のときは、シフトレジスタ50
5の内容がセレクタ504のB入力を介して循環保持さ
れる。こうして、セレクタ504及びシフトレジスタ5
05の回路において、各チャンネルのフィルタ済みサン
プル値データがそのチャンネルで発生すべき楽音のピッ
チに同期して再サンプリングされる。
【0091】<フィルタ演算のピッチ同期/非同期の切
替>マイコンインタフェース44(図10)から図11
のオア回路51に与えられるピッチ同期/非同期指定信
号PASYは、ピッチ同期でフィルタ演算を行う場合常
に“0”であり、入力インタフェース38はピッチ同期
信号PS1に応答してフィルタ演算要求信号φF1〜φ
F8及び遅延されたピッチ同期信号PS1Dを発生す
る。従って、ピッチ同期信号PS1が発生したとき、つ
まりフィルタをかけるべき楽音信号のピッチに同期した
サンプリング周期で、ディジタルフィルタ演算が行われ
る。これにより、得られるフィルタ特性は移動フォルマ
ントとなる。ピッチに同期させずにフィルタ演算を行う
場合は、ピッチ同期/非同期指定信号PASYを常に
“1”とする。従って、図11のオア回路51の出力は
ピッチ同期信号PS1の有無にかかわらず、常に“1”
となる。従って、入力インタフェース38は各フィルタ
演算サイクル(64タイムスロット)毎に一定周期でフ
ィルタ演算要求信号φF1〜φF8及び信号PS1Dを
発生する。従って、ディジタルフィルタ演算におけるサ
ンプリング周波数はピッチに無関係に一定(例えば50
kHz)となり、得られるフィルタ特性は固定フォルマ
ントとなる。
【0092】<変更例>図15に示したピッチ同期出力
回路50はシフトレジスタ502、505を用いてチャ
ンネル時分割でピッチ同期処理を行っているが、これに
限らず、各チャンネル毎に並列的に記憶回路を設け、並
列的にピッチ同期処理を行うようにしてもよい。上記実
施例では、ディジタルフィルタとして係数が対称性を示
すFIRフィルタを用いたが、これに限らず非対称の係
数のFIRフィルタを用いてもよい。また、フィルタ型
式はFIRに限らずIIR(無限インパルス応答)やそ
の他の型式を用いるようにしてもよい。図20に示した
パラメータメモリの記憶フォーマットはこれに限定され
ず、様々な変更が可能である。また、パラメータメモリ
のアドレスの仕方は上記実施例に示した手順に限らず、
様々な変更が可能である。例えば、実施例ではキーグル
ープテーブルを先にアクセスし、次にタッチグループテ
ーブルをアクセスしているが、これは逆であってもよ
い。また、図14ではプログラムメモリ451に読み出
し手順を予め記憶したマイクロプログラミング方式を採
用し、これによりパラメータメモリ47の読み出しを行
うようにしているが、このようなマイクロプログラム方
式によらずに、完全なハードワイヤード回路あるいは完
全なソフトウェアプログラムによって読み出し制御を行
うようにしてもよい。
【0093】また、上記実施例ではパラメータ決定因子
が音高/音域、鍵タッチ、音色種類の3種であるとした
が、これに限らない。例えば時間経過をパラメータ決定
因子に含め、楽音発音時の時間経過に応じて変化するフ
ィルタパラメータを読み出すようにしてもよい。その場
合、図14のパラメータプロセシングユニット45は楽
音発音中も動作し得るように適宜設計するものとする。
また、ブリリアンス操作子等の適宜の手動操作子の操作
量に応じた出力をパラメータ決定因子として用いてもよ
い。また、上記実施例では複音型の電子楽器においてこ
の発明を適用しているが、単音型の電子楽器においても
適用することができるのは勿論である。また、専用の電
子楽器に限らず、楽音信号発生又は処理機能を持つ装置
一般においてこの発明を適用することができる。上記実
施例では、トーンジェネレータからアダプティブディジ
タルフィルタ装置に入力されるディジタル楽音信号サン
プル値データそれ自体がピッチに同期してサンプリング
された状態となっているものとしているが、これに限ら
ない。例えば、ピッチ非同期の固定サンプリング周期で
サンプリングされたディジタル楽音信号をディジタルフ
ィルタ装置に入力する場合でも、ピッチ同期信号によっ
てこの入力ディジタル楽音信号をサンプリングし直しな
がらピッチに同期したフィルタ演算動作を行うようにす
ればよい。また、上記実施例ではピッチ同期信号発生回
路はトーンジェネレータ内に含まれており、そこで発生
したピッチ同期信号をアダプティブディジタルフィルタ
装置に導入するようにしているが、これに限らない。例
えば、ピッチに同期したサンプリング周期を持つディジ
タル楽音信号をディジタルフィルタに入力する場合、こ
のディジタル楽音信号のサンプル値データの変化を検出
することによりピッチ同期信号を発生し、こうして発生
したピッチ同期信号によってフィルタ演算動作を制御す
るようにしてもよい。
【0094】
【発明の効果】 以上の通り、この発明によれば、音色
及び第1,第2のパラメータ決定因子の組合せの総数に
比較してパラメータ記憶手段で記憶しておくパラメータ
組数を少なくすることができるので、メモリ容量を節約
することができる。特に、鍵タッチや音域あるいは時間
経過など多種類のパラメータ決定因子の多様な組合せに
よって微妙な音色制御を行おうとする場合に、節約した
パラメータメモリ構成によって孫色のないそのような音
色制御を行うことができるので有利である。また、この
発明によれば、第1及び第2のグループアドレス記憶手
段とパラメータアドレス記憶手段とを含む階層化された
アドレッシング構成を採用して、パラメータ記憶手段か
らパラメータを読み出すように構成したことを特徴とし
ており、ここで、第1のグループアドレス記憶手段で
は、音色毎に第1のパラメータ決定因子の各値をグルー
プ分けし、音色毎に該グループに関する第1のグループ
アドレスデータを記憶しているので、音色に応じた最適
なグループ分けが可能となり、音色に応じた最適なパラ
メータ発生を簡単な構成で行うことができるようにな
る、という優れた効果を奏する。また、グループ分けす
ることにより、全体的なデータ量を少なくし、構成を簡
略化することができる。更に、パラメータアドレス記憶
手段では、音色、第1のパラメータ決定因子および第2
のパラメータ決定因子の組合せに対応して前記パラメー
タ記憶手段から読み出すべきパラメータの該パラメータ
記憶手段におけるアドレスを指示するパラメータアドレ
スデータをそれぞれ記憶するものであるが、記憶された
当該各パラメータアドレスデータの中には前記音色、第
1のパラメータ決定因子のグループおよび第2のパラメ
ータ決定因子のグループの異なる組合せに対して前記パ
ラメータ記憶手段における同じアドレスを指示するもの
があるので、該組合せが多様であっても、パラメータ記
憶手段の記憶パラメータ量をそれほど増すこと無く、多
様な組合せに従う適切なパラメータ供給が可能になる、
という優れた効果を奏する。Description: BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to an electronic musical instrument and others.
Device with digital tone generation function or digital audio processor
Parameters of electronic musical instruments that can be used in
The present invention relates to a meter supply device. 2. Description of the Related Art A digital filter is used for a tone circuit of an electronic musical instrument.
For example, Japanese Patent Application Laid-Open No. 59-44096 discloses
In the report. One set of filter parameters
Supplied to the digital filter, and the filter
Characteristics (amplitude-frequency characteristics) are set. Tone determinant
Note that multiple sets of filter parameters are
According to the content of the selected tone determinant.
Then, a set of filter parameters is read. [0003] In the prior art
Can be used for multiple timbre determinants (eg, key touch, range,
Timbre selection information, information over time, brilliant
Different sounds depending on the operation amount of the manual operation
When performing color control, one to one
Store multiple sets of filter parameters in memory corresponding to 1
I had to remember. For example, 44 sounds
Area, 16 key touch groups, 32 kinds of stationary sounds
One-to-one pairing for all combinations of colors (22528 patterns)
If the filter parameters are stored individually,
22528 sets of parameters can be stored in the meter memory.
Large capacity is required. The present invention has been made in view of the above points.
Determinants (timbre determinants)
One set of parameters according to the combination of
Or, when supplying for control,
Electronic musical instruments that can save the capacity of parameter memory
Is intended to provide a parameter supply device. [0004] An electronic musical instrument according to the present invention.
Device parameter supply device stores multiple sets of parameters
Parameter storage means, timbre information, and first parameter
Determinant information and second parameter determinant information
Input means for inputting each of them, and the first parameter for each tone color.
The values of the determinant are divided into groups, and the group
The first group address data relating to the
1 group address storage means, and the second parameter
Group each value of the determinant,
The second group storing the second group address data
Loop address storage means, tone color, and first parameter determination
Corresponding to the combination of the factor and the second parameter determinant.
Parameters to be read from the parameter storage means
A parameter indicating an address in the parameter storage means.
Parameter address data.
In each of the stored parameter address data.
Is the timbre, a group of first parameter determinants and
Different combinations of groups of second and second parameter determinants
The same address in the parameter storage means
Parameter indicating that there is an instruction for
Memory means, the tone color information and the first parameter
In response to the input of the determinant information,
The combination of the timbre and the first parameter determinant
Corresponding first group address data to the first
Read from the group address storage means of the
In response to the input of the second parameter determinant information,
The second group address data corresponding to the input is
2 from the group address storage means.
Corresponding to the combination of the first and second group addresses
The specific parameter address data
Read from the address storage means,
From the parameter storage means according to the data address data.
Reading means for reading a set of parameters.
The supplied parameters are supplied for setting or controlling the tone.
That's what I did. [0005] Basically, the parameters stored in the parameter storage means are stored.
Parameters are timbre and two parameter determinants
(A first and second parameter determinant)
Read by combining. Where the combination of the three
Parameters can be read directly from the parameter storage
Parameter address storage means
Parameter according to the parameter address read from
The parameters are read indirectly from the storage means. Ma
Input timbre information, first parameter determinant information
Parameter and the second parameter determinant information
Parameter address directly from data address storage means
Instead of being read out, the input timbre information and the first
Is the first group address.
Determined second parameter input to storage means
The factor information is input to the second group address storage means.
And the first and second addresses read from each group address storage means.
Specified according to the combination of and the second group address
The parameter address data of the parameter address
It is configured to read from the storage means. Like this
Corresponding to the read specific parameter address data
The corresponding parameter is read from the parameter storage means.
You. Thus, the first and second group address storage
Means including parameter means and parameter address storage means.
Parameter storage means by adopting an addressing configuration
Characterized in that it is configured to read parameters from
doing. Here, the first group address storage means
Group the values of the first parameter determinant for each timbre.
The first group related to the group for each tone
Because the address data is stored, it is optimal for the tone
Grouping is possible, and the optimal parameters
Meter generation can be performed with a simple configuration.
The effect is excellent. Also, group
This reduces the overall data volume and simplifies the configuration.
Can be abbreviated. Furthermore, parameter address storage
The means comprises a timbre, a first parameter determinant and a second parameter determinant.
Parameter corresponding to the combination of parameter determinants of
The parameter to be read from the data storage means
Parameter address indicating the address in the storage means
Data is stored, but the stored
Each of the parameter address data includes the tone color,
The first parameter determinant group and the second parameter
Data for different combinations of groups of data determinants.
Pointing to the same address in parameter storage means
Therefore, even if the combinations are various,
Without increasing the amount of storage parameters
It is possible to supply appropriate parameters according to various combinations.
It has an excellent effect. Therefore, parameter storage
The column stores a plurality of sets of parameters.
The parameter address read from the meter address storage means
Read parameters based on dress data
Because of the indirect addressing method, the timbre and the first and second
One-to-one correspondence with all combinations of parameter determinants
No need to memorize parameters
In the means, the number of parameter sets smaller than the number of combinations is
It is only necessary to memorize. In other words, the tone and
And the combination of the first and second parameter determinants is different
However, some parameter sets may use common ones
It may be possible to store it in the parameter storage
The number of parameter sets to be
The amount can be saved. For example, the above range, key
22528 combinations of pitch and tone types
Only 2620 sets of parameters
In the examples described later, it is possible to deal with
Is shown. In such a case, the timbre and the first and
Parameter according to a certain combination of the two parameter determinants.
Parameter address read from the
Parameters read according to the data and another combination
The address data may be the same as the parameter
From storage means the same for each of these different combinations
Read parameters. Note that the first and second parameters
As data indicating the data determinant, for example, a pressed key
Key code, touch data indicating key touch, time
Use the information according to the excess, the output information of the appropriate manual operator, etc.
Can be. BRIEF DESCRIPTION OF THE DRAWINGS FIG.
The embodiments of the present invention will be described in detail. <Description of Overall Configuration of One Embodiment> In FIG.
Equipped with multiple keys to specify the pitch of the musical tone to be generated
doing. The key touch detector 11 is pressed by the keyboard 10
To detect a touch applied to the key
Detects touch or after touch
It may be something. The tone selection device 12 is a
It is made up of a group of operators for selecting the tone of the sound. Pick
The tibend operator 13 determines the pitch of a musical tone to be generated.
This is for continuously modulating according to the operation amount.
For example, it is composed of a dial-type operator. Microcomputer
Data 14 is a CPU (central processing unit) 15,
ROM (read-only memory) that stores
Memory 16), RA for working and data storage
M (random access memory) 17
And each circuit in the electronic musical instrument via the address bus 28
Between the keyboard and the keyboard, and detects key presses on the keyboard 10.
Processing and sound assignment of pressed keys for multiple sound channels
Guessing processing, detection of a timbre selection operation in the timbre selection device 12.
Output processing, detection of the operation amount of the pitch vent operator 13
Processing and other various processing are executed. The tone generator 18 has a plurality of tone generators.
Generating digital tone signals independently on each channel
Indicates the key assigned to each channel
Key code KC and key-on signal indicating on / off of the key
No. KON and other necessary data from microcomputer 1
4 via the bus 28 and, based on this,
A digital tone signal is generated on the channel. Tone Gene
The pitch synchronizing signal generation circuit 19 is included in the
The pitch of the tone signal generated on each channel.
A synchronized pitch synchronization signal is generated for each channel. In the specification of this embodiment, the tone
The neerator 18 is provided for the first to sixteenth channels (Ch1 to C
h16) Digitally in a time-division manner with a total of 16 channels
Generates a tone signal. Hours and minutes from tone generator 18
Digital tone waveform sample value data output
The data is indicated by TDX. Emitted from master clock generator 20
The generated master clock pulse φ
The basic operation time of the data 18 is controlled. Day
Time division multiplexing of digital tone waveform sample value data TDX
Is 64 cycles of the master clock pulse φ.
And the time of each cycle in this 64 cycles of one cycle
The slots are numbered 1 to 64 as shown in FIG.
It is. The figure shows a multiplexed digital tone waveform
Channel timings 1 to 16 of sample value data TDX
Are also shown. For example, the first channel data
TDX is divided into four time slots 33 to 36.
Has been applied. In the specification of this embodiment, the
The sample value data TDX has data for 16 channels
As described above, they are multiplexed and output in common.
The channel pitch synchronizing signals PS1 and PS2 are divided into two systems.
The data is time-division multiplexed every eight channels and output. on the other hand
Are the first to eighth (Ch1 to Ch).
8) Time-division multiplexed pitch synchronization signal
The channel timing is as shown in FIG. The other
The switch synchronization signal PS2 is ninth to sixteenth (Ch9 to Ch1).
6) Time-division multiplexed pitch synchronization signal
The channel timing is as shown in FIG. Apparent from the figure
Like the pitch synchronizing signals PS1, P
S2 occurs in a time slot width and its time division multiplex
One cycle of the conversion is 8 time slots. Two-line adaptive digital filter
Apparatus (hereinafter sometimes abbreviated as ADF) 21, 22
Is configured to be suitable for filtering the tone signal
A digital filter device according to this embodiment
Now the filtering of the music signal for 8 channels
One ADF 21 is the first to eighth channels
Of the other ADF 21
Is the filtering of the tone signals of the 9th to 16th channels
I do. A predetermined model is provided inside the ADFs 21 and 22.
Digital filter circuit, filter parameter memo
And various circuits to control the supply of filter parameters
Filter synchronized with the pitch of the tone signal to be filtered
Control circuit for performing arithmetic operation, filtered musical tone signal
Pitch synchronization output circuit that outputs the signal in synchronization with the pitch
Circuit for various functions such as
The structure is suitable for filtering. The data output from the tone generator 18
Digital tone waveform sample value data TDX is ADF21
And 22. In addition, the first to eighth channels
The pitch synchronization signal PS1 is input to the ADF 21, and the ninth to
The pitch synchronization signal PS2 of the 16th channel is ADF22
Is input to In the ADFs 21 and 22, the pitch synchronization signal
The signals PS1 and PS2 are generated (signal "1")
The data TDX of the channel corresponding to the
To the sample data of that channel.
Perform a filter operation on Therefore, one ADF
At 21, the first to eighth channels according to the pitch synchronization signal PS1
The filter operation of the channel tone signal is performed, and the other AD
In F22, the ninth to first signals are performed according to the pitch synchronization signal PS2.
The filter operation of the musical tone signal of 6 channels is performed. Like this
The unit time of the filter operation in the ADFs 21 and 22
(The signal delay time synchronized with the sampling period)
It is synchronized with the pitch of the tone signal to be filtered.
The unit time of the filter operation may fluctuate depending on the pitch.
Realizes filtering of moving formant characteristics
Is done. Note that the basic operation timing of the circuit is controlled.
Master clock pulse φ and system sync
Luth SYNC is provided to ADFs 21 and 22. Cis
The system sync pulse SYNC has 64 pulses as shown in FIG.
It is a pulse generated in the time slot cycle and is a digital
This is synchronized with one cycle of time division multiplexing of a tone signal.
The ADFs 21 and 22 control the filter operation.
Data for the microcontroller via the bus 28
Provided under the control of the computer 14. In the ADFs 21 and 22, the actual
Of the tone signal to be filtered
Not only in sync with the
The sound waveform sample value data is sampled in synchronization with the pitch.
Re-ring and output with complete pitch synchronization
It has become. Turn this filtered data into pitch
Pitch synchronization signal P for synchronous resampling
S1 and PS2 are used. ADF21 and 22 output
Digital tone waveform sample value data for each channel
Are summed by the accumulator 23, and 16 channels
Musical sound waveform sample value data summing sample value data
Ask for. The output data of the accumulator 23 is digitized.
/ Analog converter 24 converts to analog tone signal
Then, the sound is pronounced via the sound system 25. In the specification of this embodiment, the filter coefficient
Is controlled in two modes. One is "Statistics
Mode, which is a
This mode does not change the data coefficient. The other is "Dyna
`` Mic mode '', which is
This mode changes the filter coefficient over time.
A temporal change in timbre due to the ring is obtained. Statistic
Filter coefficients for the ADFs 21 and 22
Stored in the filter parameter memory inside the
You. The filter coefficients for the dynamic mode are
Stored in the dynamic control parameter memory 26.
This is time under control of the microcomputer 14.
The ADF 21 is read out after being switched
And 22. Dynamic / Static selection
The selector switch 27 selects either mode for supplying the filter coefficient.
This is a switch for selecting whether or not to control with a command. What
As an example of the clock frequency, the master clock
The clock pulse φ is about 3.2 MHz, and a pitch synchronization signal
One cycle of time division of PS1 and PS2 (8 time slots)
G) is 400 kHz and the digital
Time-division 1 cycle of tone waveform sample value data TDX
(1 operation cycle in filter) (64 time slots
) Is 50 kHz. Next, a detailed example of each circuit in FIG. 1 will be described.
Will be explained. <Generation of pitch synchronization signal> FIG.
2 shows an example of the signal generation circuit 19, which is one of the systems.
(1st to 8th channel) pitch synchronization signal PS1
Live. The other pitch synchronization signal PS2 is also the same as in FIG.
Generated by the configuration. The pitch synchronization signal PS1 is
The P number read from the P number memory 29 is counted by the counter 3
Based on time-division counting for each channel at 0
Is generated. P number is a certain reference octave
Of the tone waveform having the frequency corresponding to each note name C-B
This is a number indicating the number of sample points in one cycle. Pitch synchronization signal
Signal PS1 is generated by 8 channels time division as shown in FIG.
If you want to, its basic sampling frequency
(In other words, the resolution of the pitch synchronization signal PS1) is the master
1/8 of the frequency of the clock pulse φ (for example, 400 kHz
z), which is common to all note names. On the other hand,
Since the basic sampling frequency is common,
The P number has a different value for each note name frequency.
Show. The frequency of a certain note name in the reference octave is fn
And the above-mentioned common sampling frequency (400 kHz
If z) is fc, the P number corresponding to the pitch name is
It is determined as follows. P number = fc ÷ fn (1) where the common sampling frequency fc is fc = 400 kHz.
z, the frequency fn of the pitch name A is fn = 440 Hz (that is, A4
Sound), the P number of note name A is
Therefore, the P number of the pitch name A = 400000 ÷ 440 = 909. On the other hand, it can be generated in the tone generator 18.
Sampling of different sample point amplitude values per cycle of musical tone waveform
If the number of points is 64, the effective sample of the frequency fn
The ring frequency fe is represented by fe = fn × 64 (2). In the case of fn = 440 Hz, fe = 440 × 64 = 28160 Hz. Similarly, each sound in a certain reference octave
The P number of the name and the effective sampling frequency fe are shown in the table below.
Can be determined as follows. In this case,
The pitch is one octave from the G4 note to the F # 5 note. [Table 1] In the counter 30 shown in FIG.
Signal PS1 is established based on master clock pulse φ.
The common sampling frequency fc is divided according to the P number.
It is obtained by going around. As is clear from the above,
P number is the common sampling frequency fc in one cycle waveform
Is the number of periods, or number of sample points.
Effective per musical sound waveform period that can be generated by the nerator 18
The number of sample points is 64 as described above. Therefore, common
Assuming that the frequency dividing frequency of the sampling frequency fc is frequency dividing number = P number 64 (3), the frequency divided output is 64 pieces per musical tone cycle.
Pulse, which allows 64 effective
All sample points can be established. in this way
Sampling frequency fc depending on the division number determined by
Is divided from the above equations (1), (2) and (3), fc ÷ division number = (fn × P number) ÷ (P number ナ ン 64) = fn × 64 = fe (4) The sample point address is changed by this divided output.
To establish the effective sampling frequency fe
can do. The effective sun established in this way
The pulling frequency fe is in harmony with the pitch frequency fn,
Pitch synchronization is realized. Generated from counter 30
The pitch synchronization signal PS1 of each channel is
(4) corresponding to the note name of the key assigned to
Divided output signal, that is, effective sampling frequency
This is a signal having fe. The frequency division number determined by the above equation (3) is an integer.
And often contains decimals. For example, sound
In the case of the name A, the division number = 9099064 = about 14.20. Therefore, the frequency division operation of the counter 30 is performed later.
As described above, two integers close to the frequency division number determined by equation (3)
Frequency division as appropriate, and the average result is the amount determined by equation (3).
To get the same result as dividing by the frequency
You. In FIG. 3, the P number memory 29 is
P of each note name in the reference octave as shown in Table 1
The number is stored in advance. Assigned to each channel
Key code KC of the key
To the tone generator 18, and
Key codes KC for the first to eighth channels in the figure
Time as shown in PS2 channel timing
Time-division multiplexed by
-Code KC corresponds to the channel timing of PS2 in FIG.
Time division multiplexing is performed at the timing shown. In this way
Time division multiplexed key codes of first to eighth channels
KC is input to the P number memory 29. P number memo
Re 29 is the input key code of the first to eighth channels
The P number is read out in a time-division manner corresponding to the note name of the KC. The counter 30 is read from the P number memory 29.
An adder 31 for inputting the read P number;
A selector 32 which inputs the output of the arithmetic unit 31 to the "0" input
And an 8-stage system to which the output of the selector 32 is input.
Shift register 33 and the lower order of the output of the shift register 33.
Gating a bit (decimal part) to another input of the adder 31
A gate 34 for giving a signal and the upper part of the output of the shift register 33
Enter the bit (integer part) and set all 7 bits to “1”
And an adder 35 for adding an all "1" signal
Contains. The P number itself is a 12-bit binary code.
The output of the adder 31 is a carry signal.
From a 13-bit signal that contains one extra bit
Become. Inversion key-on pulse / KONP (/ is the inversion bar
From the output CO of the adder 35
The output signal is input to the AND circuit 36.
Of the AND circuit 36 is the selection control input of the selector 32
Join. When the output signal of the AND circuit 36 is "0"
Provided from the adder 31 to the “0” input of the selector 32
When a signal is selected and "1", it is applied to the "1" input.
Is selected. The “1” input of the selector 32 includes:
The lower bits (decimal part) of the output of the shift register 33 and the addition
13 bits consisting of 7 bits (integer part) of the output of the arithmetic unit 35
Signal is given. The key-on pulse KONP is
This signal is "1" only once at the start of pressing,
Those corresponding to 8 channels are time-division multiplexed
You. The reverse key-on pulse / KONP is
This is a signal obtained by inverting the signal KONP. Selector 32, shift register 33, addition
The part of the vessel 35 is shown in the above equation (3) according to the P number.
Establish a frequency division number that is common to the integer part of this frequency division number.
This is a circuit for dividing the sampling frequency fc.
You. The adder 31 controls the integer according to the decimal part of the frequency division number.
It is for adjusting the value of several parts. Equation (3)
Since the divisor 64 is “2 to the sixth power”, the divisor is calculated.
Without any special division, just under the P number
Just by treating the 6 bits as decimal places,
A corresponding frequency division number can be established. Therefore, the adder
31, output signal of selector 32 and shift register 33
The lower 6 bits of the 13 bits are the weight of the decimal part,
The upper 7 bits are the weight of the integer part. In adder 35
Adding all “1” signals means subtracting 1
equal. Therefore, in the adder 35, the shift register
1 is subtracted from the integer value of the output of the star 33. This
The result of the subtraction by the adder 35 is 6
It is returned to the "1" input of the selector 32 together with the bit data.
Input to the adder 35 again via the shift register 33.
Is forced. The shift register 33 outputs the master clock pulse
Since the shift is controlled by φ, the signal of the same channel
The cycle in which the signal is output from the shift register 33 is the master clock.
8 times the period of the lock pulse φ, that is, the common sampling period
This is the cycle of the wave number fc. At the beginning of key press, the key is assigned
Key-on pulse / KO at the specified channel timing
NP becomes “0” only once, and at this time, the selector 32
The P number of the key is selected via the “0” input of the key. This
The integer part of the P number of the shift register 33 is
5 at the period of the common sampling frequency fc.
1 is repeatedly subtracted from the integer part. The result of subtraction of the integer part is
When the value is 1 or more, the carry-out output C of the adder 35
O continuously outputs carry-out signal "1",
Since the condition of the AND circuit 36 is satisfied, the selector 32
Keep selecting "1" input. By repeated subtraction
When the output of the adder 35 becomes "0"
When the same number of fc cycles as the number of integer parts of the
The carry-out signal of the calculator 35 is not output, and
The condition of the road 36 is not satisfied. At that time, the selector 32
Select the "0" input and enter the P number and shift register 33
Addition by adding lower 6 bits (decimal part data) of output
The output of the container 31 is selected. Thus, the addition of decimals
Thus, the P number having a slightly changed value is
From the integer value of the changed P number.
The subtraction is repeated. Note that the gate 34 is
-Only at the beginning of key press due to ON pulse / KONP
Enabled, otherwise always add fractional data
Give to 31. Small for P number in adder 31
Dividing number actually used for frequency division by adding several part data
Is 1 more than the integer value of the dividing number obtained from the P number.
May be larger. For example, P number of note name A is 9
09, and its division number is 14.20,
The frequency division is performed in accordance with the integer value 14, and the next is 14.20.
+ 0.20 = 14.40 and eventually 15.00
The frequency division is performed in accordance with the integer value 15. like this
And the same as the integer value of the division number obtained by the P number
Or common sampling according to a number one greater than
The frequency fc is divided, and as an average result the P
A frequency division operation according to the frequency division number obtained by the frequency division is achieved.
The signal of the carry-out output CO of the adder 35 is divided.
This is equivalent to the output, and this is
The inverted signal is output as pitch synchronization signal PS1. For better understanding, taking note name A as an example,
An example of a change in the output of the selector 32 is shown. Change timing
Is the period of the common sampling frequency fc. Initially
The frequency division number corresponding to P number 909 is 14.20.
Is 13.20, which is 1 less than the integer value of 12.20, 11.2
0, 10.20, ... 2.20, 1.20 and their integers decrease by one
I do. In the 14th cycle of fc, input “1” of selector 32
The added value is 0.20, at which time the carry-out signal
Becomes “0” and the pitch synchronization signal PS1 becomes “1”.
The selector 32 selects the "0" input. selector
The "0" input of 32 is the frequency division number corresponding to the P number 909
Decimal value 0.20 given from shift register 33 at 14.20
14.40 obtained by adding. Therefore, 14.40 becomes
Output from the selector 32. After that, the selector 32
The force is 13.40, 12.40, 11.40, ... 2.40, 1.40, one by one
The frequency of the selector 32 decreases in the 14th cycle of fc.
The value added to the “1” input is 0.40 and the adder 3
5 carry-out signal becomes "0" and the pitch synchronization signal
A signal PS1 is generated. At this time, the output of the adder 31 is 1
4.20 + 0.40 = 14.60, which is the
It is supplied to the shift register 33 via the “0” input.
Thus, in the case of note name A, 14 or 15 is used as the frequency division number.
The frequency division is performed, and the common sampling frequency fc (for example, 400
kHz) every 14 or 15 cycles
S1 becomes "1". The other 9th to 16th channels
The pitch synchronization signal PS2 corresponding to the
Generated. <Description of Tone Generator>
In the nerator 18, each channel generated as described above is used.
Utilizing the channel pitch synchronization signals PS1 and PS2,
Sampling timing synchronized with the pitch of the musical tone to be generated
The tone signal is generated according to the
Wear. Of course, not limited to this,
Generates tone signals according to sampling timing
It is also possible to Sample point of musical tone to be generated
The address data that specifies the address (instantaneous phase angle)
The pitch synchronization signals PS1 and PS2 of each channel are
This is caused by counting each channel independently.
Can be. However, the pitch synchronization signals PS1 and PS2 are
This corresponds to the pitch of the reference octave (G4-F # 5).
When the above address data is generated
Depends on the octave range of the musical tone to be generated.
Counts when counting the sync signals PS1 and PS2.
It is necessary to switch the port. For example, G3 to F # 4
To generate the tone of the pitch, the pitch synchronization signal PS
1, every time PS2 occurs, 0.5 is counted and G4 ~
To generate an octave tone of F # 5,
Count 1 each time the period signals PS1 and PS2 are generated,
To generate octave musical sounds of G5 to F # 6,
2 each time the switch synchronization signals PS1 and PS2 are generated.
To Thus, the pitch and octave of the tone to be generated
Address data that changes in synchronization with the
Generated every time the digital music
Generates a sound signal. A tone signal in the tone generator 18
Any generation method may be used. For example, on
Music sound wave stored in the waveform memory according to the address data
Method for sequentially reading sample value data (memory read
Method) or the above address data with the phase angle parameter.
Performs a predetermined frequency modulation operation as data
For obtaining sampled sample value data (FM method) or
Uses the above address data as phase angle parameter data
Performs a predetermined amplitude modulation operation to execute the tone waveform sample value data.
Any known method such as a method for finding data (AM method)
Expressions may be used. Also adopts a memory read method
In this case, only one cycle waveform is stored in the waveform memory
, But a multi-period waveform improves sound quality
Is preferred because Store multiple cycle waveforms in waveform memory
A method for reading out the information is disclosed in, for example,
Full wave from the start to the end as shown in 313
A method of storing a shape and reading it once, or
As shown in No. 8-142396, a plurality of attack parts
Store the periodic waveform and one or more periodic waveforms of the sustain part,
The waveform of the sustain part is repeated after reading the waveform of the lock part once.
Readout method or Japanese Patent Application Laid-Open No. 60-147793
Multiple discretely sampled waveforms as shown
Specify the waveform to be stored and read out by sequentially switching over time
And read out the specified waveform repeatedly.
The methods are known, and these may be appropriately adopted. <Preparation of adaptive digital filter
Description> The basic operation type of digital filter is
A finite impulse response (FIR) filter and an infinite
There is an impulse response (IIR) filter.
In the example adaptive digital filter devices 21 and 22
In this case, an FIR filter is employed. First, FIR
Provides a general description related to filters. (A) Basic circuit configuration of FIR filter FIG. 5 is a basic circuit configuration diagram of the FIR filter.
(n) is the digital tone waveform at any nth sample point
Sample value data, the input signal of the FIR filter
It is. Where: Is the unit time delay element, the time of one sampling cycle
This is to set a delay. Therefore, x (n-1) becomes n-1
Digital tone waveform sample value data at the th sample point
X (n-N + 1) is the (n-N + 1) th sample
Digital tone waveform sample value data of a point. N is
The duration of the impulse response,
It corresponds to the order. h (0) to h (N-1) are N-order filters
It is a coefficient. The triangular block with this filter coefficient
The lock is a multiplication element, and each sample delayed by the delay element
For pull point data x (n) to x (n−N + 1), respectively
The corresponding filter coefficients h (0) to h (N-1) are multiplied.
Blocks with + sign to which multiplication output is input need addition
, And sums the respective multiplied outputs to obtain an output signal y (n).
obtain. The impulse response Δh of such an FIR filter
(n)} z-transformation, that is, transfer function
, It is expressed as (B) Linear phase characteristic of FIR filter One characteristic of such an FIR filter is that the phase characteristic is
That is, a linear phase can be obtained. Linear phase
Then, the phase between the input and output waveforms of the filter is completely
And the output waveform is not distorted. Follow
To filter signals such as music, voice, audio, etc.
It is suitable. In a linear phase FIR filter,
It is required that the phase characteristics be θ (ω) = − αω (6) as a function of the angular frequency ω. Where α is called the phase lag
Is a constant. In addition, it has a linear phase characteristic as described above.
The necessary and sufficient conditions of the FIR filter are expressed by the following equation (8).
The impulse response has symmetry, as shown in the following equation (7).
The phase delay α depends on the duration (the order of the filter) N
It is uniquely specified. α = (N−1) / 2 (7) h (n) = h (N−1−n) (8) where 0 ≦ n ≦ N−1 (c) Symmetry of filter coefficient If the impulse response has symmetry as shown in equation (8)
This means that the filter coefficients h (0) to h (N-1)
Meaning to have. That is, the filter coefficients are
The linear phase characteristics described above can be realized by setting
You can do it. Impulse response is a symmetry
FIG. 5 shows an example in which the order N is odd.
FIG. 6 shows a case where N is an even number. Clear from figure
Thus, a symmetric characteristic centered on n = (N-1) / 2 is shown.
You. When N is an odd number, (N-1) / 2 is the center,
The impulse responses on both sides are symmetric. N is an even number
In this case, the center between (N-2) / 2 order and N / 2 is the center.
The impulse response on both sides of is symmetric. In symmetric position
Since the filter coefficients of the orders are the same, all the orders
There is no need to prepare a number N of filter coefficients,
Good. Specifically, when N is an odd number, from the 0th order to (N-1)
/ ({N-1) / 2} +1 filter coefficients up to the 2nd order
From ({(N-1) / 2} +1 order to N-1 order)
Are from 0th order to {(N-1) / 2} -1st order
What is necessary is just to use the filter coefficient in a symmetric position. Sand
That is, the same filter coefficient is used for the 0th order and the N-1th order,
The same filter coefficient is used for the second order and the N-th order. Ma
If N is an even number, the order from 0th order to (N-2) / 2th order
What is necessary is just to prepare N / 2 filter coefficients.
Filter coefficients from the 0th order to the (N-1) th order are (N-2) / 2
Use the filter coefficients at the symmetrical positions up to
No. (D) Frequency response of linear phase FIR filter
Answer As shown in Figs. 5 and 6, the impulse response shows a symmetrical straight line.
Frequency response of phase FIR filter FIG. 7 and FIG. 8 exemplify the characteristics of. N is odd
In the case of ω = π (where π is a sampling
(Corresponding to 1/2 of the frequency fs)
It is not fixed to 0 and can be set arbitrarily. If N is even
As shown in FIG. 8, the level when ω = π is necessarily 0.
As is clear from this, when the order N is odd, the filter is
Realizes high-pass filter characteristics by setting the filter coefficient
However, if N is an even number,
It is impossible to realize the filter characteristics. But N
The even number is easier to design the filter,
Suitable for bandpass filter design. So, the real
The order N of the filter according to the filter characteristic to be expressed
It is preferable to switch between even and odd
In the example adaptive digital filter devices 21 and 22
In such a case, even-odd switching of order N can be performed.
It is a specification that can be cut. That is, bandpass
Filters the characteristics of filters and low-pass filters
In this case, the order N is set to an even number,
When performing filtering, the order N is set to an odd number. (E) Other features of the FIR filter Other features of the FIR filter include feedback.
Because there is no croup, it is characterized by good stability.
That is, like the IIR filter, the feedback loop
If there is a filter, problems such as oscillation will occur.
In this case, problems such as oscillation do not occur, and the design is easy. Also,
Even when the filter characteristics are changed over time, the FI
An R filter is advantageous. In this case, usually
A set of filter coefficients corresponding to each of the different filter characteristics
Must be prepared respectively, but then the filter
To make the time variation of characteristics fine, many sets of filter coefficients
Is required. To solve this problem,
Prepare two sets of filter coefficients that are separated to some extent
By interpolating between a set of filter coefficients,
A set of filter coefficients is generated densely over time,
Thus, the time is determined by the filter coefficient generated by interpolation.
It is possible to set filter characteristics that fluctuate
You. In this way, interpolation of filter coefficients is performed in real time.
FIR filter
For those with good stability, such as
It is very advantageous because it is not necessary to devise
You. The word length of the signal in the digital filter is
Signal data within the limited word length
Must be rounded. Such rounding is noise
However, in the FIR filter, the feedback loop is
There is no accumulation of rounding errors
This is advantageous for noise suppression. Note that F as described above
Regarding various characteristics of the IR filter, for example, see the book “Theory
and Application of Digital Signal Processing "(Author)
: Lawrence, R. Rabiner; Bernard, Gold, Publisher: P
rentice-Hall Inc). Next, the adaptive decoding in this embodiment will be described.
Some of the digital filter devices 21 and 22
The features will be briefly described in advance. (F) How to calculate filter coefficients The filter coefficients are obtained by analyzing actual musical tones.
It is. FIG. 9 shows an example of a procedure for obtaining a filter coefficient.
Referring to the description, first, there are two types of sounds that indicate different timbres.
Sampling sound waveform (original music sound waveform) from natural musical instrument sound
Prepare by doing. For example, Haraku tone waveform 1 is strong
This is the waveform of the piano sound played by touching the key.
Form 2 is the waveform of the piano sound played with a weak key touch.
You. Next, fast Fourier transform is performed, and the original musical sound waveforms 1, 2
Is analyzed, and based on this, the two waveforms 1 and 2 are analyzed.
Find spectral characteristics. Next, the spectrum of waveforms 1 and 2
Find the difference between the characteristics. Next, the spectral characteristics of the difference
Then, a process of obtaining a filter coefficient is performed based on this.
Finally, the obtained filter coefficient is stored in the memory. fill
The filter coefficient that realizes the time variation of the
Clock control parameter memory 26 (FIG. 1).
Filter that realizes steady filter characteristics that do not change
The filter coefficient is a parameter in ADF 22 and 22 (FIG. 1).
Store in memory. The spectral characteristics of the difference between the two waveforms described above
The reason for finding the filter coefficient based on
Data 18 (FIG. 1) with one original musical tone waveform (for example, a strong key
Music signal corresponding to the
Filtering according to the spectral characteristics of the difference
By applying it to the other original music waveform (for example,
(Corresponding waveform)
It is. A place to perform filtering according to key touch
Filter coefficients for all key touch intensity levels
Without preparing a set of
Prepare only a set of filter coefficients, not prepared
The filter coefficient corresponding to the key touch strength is the same complement as described above.
It may be determined depending on the interval. Of course, for key touch
Not only the corresponding filter coefficients, but also the pitch (or
Or the tone type or various other factors.
Filter coefficients are prepared in the same manner as described above. (G) Filter operation synchronized with the pitch. For each sample point in the ADFs 21 and 22 (FIG. 1)
The filter operation timing is the pitch synchronization signals PS1 and P
It is set by S2. This means that the filter operation
The unit time delay (see FIG. 4) is the pitch synchronization signal PS.
1, PS2. Sand
That is, the sampling frequency fs in the filter operation is
It is set by the switch synchronization signals PS1 and PS2. Concrete
Specifically, the pitch synchronization signal PS corresponding to each note name G to F #
1 and PS2 are the effective sample shown in Table 1 above.
ADFs 21 and 22 are the same as the
The sampling frequency fs of the filter operation at
As shown in the table, different
Will be. Sampling frequency in filter operation
The number fs corresponds to the frequency response characteristics shown in FIGS.
Ω = 2π. As is clear from here,
When the sampling frequency fs changes according to the note name,
The frequency corresponding to ω = 2π in the wave number response characteristic also
And the resulting filter characteristic is
It becomes a moving formant characteristic. Such a moving forma
Characteristic is very suitable for controlling the timbre of a tone signal.
You. On the other hand, the sampling
If the wave number is constant regardless of the pitch of the input signal,
The filter characteristics obtained are fixed formants. (H) Switching Between Pitch Synchronous / Asynchronous As described above, the filter of the moving formant is used for the tone color of the musical tone.
Suitable for control, but depending on the tone or effect
Sometimes a fixed formant filter is more desirable
is there. Also, operating the pitch vent operator 13 (FIG. 1)
Fixed pitch when sliding the pitch of the generated sound
Olmant filters are preferred. For this,
In the ADFs 21 and 22 of the embodiments, the filter operation is performed
Switch between synchronous and asynchronous
Specifications. In addition, such pitch synchronization / non-
Synchronization switching is not the same for all channels.
It is possible to specify pitch synchronous or asynchronous independently for each file.
I can do it. By the way, during pitch vent operation
Why fixed formant filters are preferred
Is as follows. The pitch vent operator 13
Pitch control is not only a slight pitch shift control, but also several pitches.
Large pitch slide control over
The octave boundaries of note names G to F # shown in Table 1 above
The pitch control may be performed across the. And that
When performing a filter operation synchronized with the pitch,
The coupling frequency fs fluctuates rapidly, and
The toe-off frequency also fluctuates rapidly (moving formant
This causes unnatural tone changes. For example, pitch
Musical notes being produced by venting are changed from F # 5 to G5
, The sampling frequency is 47.3.
The frequency fluctuates rapidly from 59 kHz to 25.088 kHz (see Table 1 above).
See) For moving formants, only the difference
The cut frequency also fluctuates rapidly. Prevent such inconvenience
When moving the pitch form, move the formant (pitch
Fixed formman without using
(Filter operation asynchronous to pitch).
In the case of pitch asynchronous filter operation, ADFs 21 and 2
Fig. 3 shows the sampling frequency of the filter operation in Fig. 2.
In the example, the frequency is 50 kHz. (I) According to dynamic / static
As described above, in the dynamic mode,
In real time, die under the control of microcomputer 14
From the parameter control memory 26 (FIG. 1)
Read the parameter data for natural control, and
The data must be transferred inside the DFs 21 and 22. That
Therefore, the data transfer time is limited,
If the number is large, filter coefficients of all orders within a limited time
There is a possibility that parameter data cannot be transferred. Follow
Therefore, the filter order in the dynamic mode is
Must be of a limited order commensurate with the data transfer time of the
Must. On the other hand, in static mode
It is not necessary to change the filter coefficient
No problem. Also, the higher the filter order, the finer the filter.
This is preferable because the filter characteristics can be realized. Follow
In static mode, the filter order is sufficient
I try to do a lot. For the above reasons, this
In the specification of the embodiment, the dynamic mode or the static
The filter order is switched according to the mode.
You. For example, filter order in static mode
To the 32nd order (however, this is the case of the even order characteristic,
31th order in the case of the next characteristic)
The filter order of the 16th order (the odd order characteristic
In this case, the order is 15). (J) Weight control of filter coefficient The binary digital data format of one filter coefficient is 1
2-bit filter coefficient data part and 3-bit weight
And a data section. 3-bit weight data section
Is 6 of 0, +1, +2, +3, +4, and +5 bits.
This indicates one of the possible shift amounts.
The filter coefficient data part is shifted according to the shift amount,
The weight is given. 12-bit filter coefficient data
Weighting control that can shift the
The dynamic range of the filter coefficients
It is qualitatively expanded to 17 bits. Such weighting system
While maintaining a sufficient dynamic range,
The number of bits of filter coefficients stored in memory is small
To save filter filter memory capacity
One. <Overall Adaptive Digital Filter>
Description> FIG. 10 shows the adapter corresponding to the first to eighth channels.
Internal structure of active digital filter device (ADF) 21
FIG. 4 is a block diagram schematically illustrating an example of ADF2;
2 can be configured in exactly the same way. Input interface
Pace 38 from the tone generator 18 (FIG. 1).
The synchronization signal PS1 is received and the pitch of each channel is
Period signal PS1 conforms to the operation timing inside ADF21
FIG. 11 shows a detailed example.
Is shown in The timing signal generation circuit 39
Generates timing signals to control various operations inside F21
And input from the input interface 38.
Based on the signal corresponding to the pitch synchronization signal of each channel
Various operation timing signals required for filter operation
The detailed example is shown in FIG.
I have. As described later, the filter operation for each channel is
This timing signal generation circuit
Filter performance of each channel at appropriate timing from 39
Timing signals for arithmetic operation control.
ing. The state memories 40 and 42 and the multiplier and
The accumulator sections 41 and 43 are provided for the FIR filter.
This is a digital filter circuit that executes a filter operation. S
Tate memory 40 and multiplier / accumulator unit 41
Digital filter circuit (this is an A-series digital
Tal filter circuit) is the first to fourth channels
(Ch1 to Ch4) filter operation
Memory 42 and the multiplier and accumulator 43.
Digital filter circuit (this is a B-sequence digital
Filter circuits are referred to as fifth to eighth channels (Ch).
5 to Ch8). Each series
Each of the digital filter circuits A and B has four channels.
Filter calculations are performed in a time-sharing manner.
You. The filter operation of the first to eighth channels is performed by two series A,
The reason for dividing into B is that the reason for circuit design is
According to State memories 40 and 42 are tone generators
Digital tone signal sampler given from FIG. 18 (FIG. 1)
The value data TDX in synchronization with the pitch synchronization signal PS1.
The pitch corresponding to the number of stages corresponding to the predetermined filter order.
It is delayed at the timing corresponding to the synchronization signal PS1.
Yes, unit delay in FIR filter basic circuit of FIG.
Element [Equation 4] Corresponding to the set of Multiplier and accumulator unit 41,
Numeral 43 denotes a digital signal delayed by the state memories 40 and 42.
To the delay order for
Multiply the filter coefficients of the corresponding order, and multiply the
The results are cumulatively summed, and are based on the FIR filter shown in FIG.
This corresponds to the multiplication element and the addition element in this circuit. A system
Column state memory 40, multiplier and accumulator unit
A detailed example of 41 is shown in FIG.
Can be similarly configured. The microcomputer interface 44 is a microcomputer interface.
Data and address under the control of the computer 14 (FIG. 1).
Various data provided through the bus 28 are received, and A
This is supplied to each circuit in the DF 21. This interface
The types of data accepted via the face 44 are as follows:
It is on the street. Key code KC: Indicates the key assigned to each channel
You. Key-on pulse KONP: assigned to each channel
The signal becomes "1" only once at the start of the key depression. Touch code TCH: key assigned to each channel
5 shows the strength of the touch when the button is pressed. Tone code VN: A key assigned to each channel
Indicates the tone type (voice) selected. The above KC, KONP, TCH, and VN are predetermined time division timers.
Each channel is time division multiplexed according to the timing
Output from the interface 44 in the
Tapping unit (sometimes called PPU) 4
5 given. Pitch synchronous / asynchronous designation signal PASY:
The digital filter operation in the ADF 21 is
This signal specifies whether to perform synchronization or asynchronous.
You. This signal PASY is also given in time division for each channel.
The pitch of the filter operation
Period / asynchronous control can be performed independently for each channel.
Wear. This signal PASY has a selected tone type.
Or the operation contents of the pitch vent operator 13 (FIG. 1).
Or depending on the operating state of the dedicated or appropriate controls, etc.
And provided to the interface 44 via the bus 28.
You. Pitch synchronization / non-output from interface 44
The synchronization designation signal PASY is given to the input interface 38.
Signal generation corresponding to the pitch synchronization signal PS1.
To control whether force interface 38 should or should not
Used for Dynamic filter parameter DPR: Micro
A parameter for dynamic control under the control of the computer 14
The filter read out from the meter memory 26 (FIG. 1)
Parameter (filter coefficient). As mentioned earlier,
The content of the dynamic mode filter parameter DPR is
It changes with the passage of time during pronunciation. This dynamic
The data format of the mode filter parameter DPR is also described above.
Similarly, the 12-bit filter coefficient data section and 3-bit
And the weighted data part of
Contains identifying data. Also, as mentioned above, this dyna
A set of orders for the filter parameter DPR for the mic mode
Is the 16th (or 15th) order. Furthermore, it is clear from the above
Thus, the symmetry of the filter coefficient in the linear phase characteristic
The actual set of dynamic mode files
The filter parameter DPR need only be for the eighth order. Dynamic / static selection signal D
S: Dynamic / static selection switch 27
This signal is generated in response to the operation shown in FIG.
Data calculation in the dynamic mode described above or static
To perform in the lock mode. The above DPR and DS are in
From the interface 44 to the parameter selector 46.
You. The parameter memory 47 has a static mode
Filter parameters (filter coefficients)
It is. The parameter processing unit 45
From the parameter memory 47 for static mode.
Reads filter parameters. That is,
-When the on-pulse KONP is given, the tone color code V
N, Touch Code TCH, Key Code KC
Calculate the address of the parameter memory 47 to be read
And the filter parameters stored at this address
From the memory 47. The read static
Mode filter parameter SPR
Provided to the rectifier 46. This static mode filter
The data format of the filter parameter SPR is the same as the DPR described above.
It is like. Also, as described above, the static mode
A set of filter parameters SPR is of order 32 (or 3
Primary). Furthermore, as is clear from the above, the linear position
Due to the symmetry of the filter coefficients in the phase characteristics,
A set of static mode filter parameters
The SPR need only be for the 16th order. The parameter selector 46 has a dynamic
/ Dynamic according to the contents of the static selection signal DS
Filter mode or static mode filter parameters.
Data DPR or SPR. Selected para
The meter is a parameter supply circuit 48 for the A and B series,
49 is input. In the A-series parameter supply circuit 48
Are the filter parameters DPR of the first to fourth channels or
Accepts the SPR, stores it, and
The state memory 40, the multiplier and the
It is supplied to the accumulator section 41. Parameter B
In the supply circuit 49, the filter parameters of the fifth to eighth channels are set.
Do the same for the data. For static mode
Filter parameter SPR only once at the beginning of key press
It is read from the parameter memory 47, and
The data is stored in the data supply circuits 48 and 49. Therefore, the status
Filter mode during the sounding period in the
And maintain a constant filter characteristic. On the other hand, Dyna
The filter parameter DPR for the mic mode is new
The content parameters are transmitted via the microcomputer interface 44.
Stored in the parameter supply circuits 48 and 49 until given.
The contents of the parameter DPR are stored in time.
Is rewritten each time it changes. Output from the parameter supply circuits 48 and 49
Of the filter parameters
Odd identification data EOA1 to EOA4, EOB1 to EOB4
Are supplied to the state memories 40 and 42, and the filter coefficients
Data part COEA, COEB and weighting data part WE
IA and WEIB are multipliers and accumulator units 41,
43. It should be noted that the last A
Or, B represents the distinction between the A series and the B series. Data EOA
1 to EOA4, EOB1 to EOB4 are
Are given in parallel, but the data COEA, COE
B, WEIA, and WEIB are time-shared for each channel
Is given. Parameter processing unit 4
5, parameter selector 46, parameter memory 47,
A detailed example of the parameter supply circuits 48 and 49 is shown in FIG.
Have been. The pitch synchronization output circuit 50 includes a multiplier and an
Each channel output from the accumulator units 41 and 43
Input the filtered tone signal sample value data of
These are sampled at the timing synchronized with each pitch.
Circuit. Used here for sampling control
Are provided from the input interface 38. Pi
Switch synchronization signal PS1D, which is the pitch of each channel.
The latch synchronization signal PS1 is delayed for a predetermined time. Pi
Delayed pitch for resampling synchronized to
The reason for using the sync signal PS1D is that the digital
Of the tone signal of each channel in the filter operation
This is to match the delay. In this way, the digital filter
Resamples the output signal in synchronization with the pitch.
Process is to adjust the sampling frequency to the musical pitch.
Therefore, the problem of aliasing noise is solved. Sync to pitch
Digital filter operation
Filter output signal is sampling period synchronized with pitch
The pitch synchronization output circuit 50 is not particularly provided.
Can also achieve pitch synchronization, but the pitch
When digital filter operation is performed asynchronously to the pitch
Pitch synchronization output circuit 50 is required to achieve synchronization
It is. A detailed example of the pitch synchronization output circuit 50 is shown in FIG.
Have been. Next, an adaptive digital filter device
A detailed example of each unit of 21 will be described. Note that each figure
And the number and letter D such as "1D" and "8D"
Circuits marked with are delay circuits or shift registers
Where the preceding number indicates the number of delay stages or stages.
You. In addition, this delay circuit or shift register block
The delay control clock pulse or shift control clock
Those that are not shown that the pulse is input,
Delayed by the master clock pulse φ (see FIG. 2) or
Shift control is performed. <Input Interface 38: FIG. 11> FIG.
1, the pitch synchronization signal PS1 is
2 is input to the shift register 53. Shown in FIG.
As shown, this pitch synchronization signal PS1 has eight time slots.
Is a cycle, eight channels are time-division multiplexed.
The pitch of the key assigned to a channel
One time slot corresponding to the channel
A signal "1" is generated at this point. The output of the shift register 53 is
Returned to the input side via AND circuit 54 and OR circuit 52
The pitch synchronization signal PS1 for eight channels is
The data is cyclically held in the shift register 53. Each Chan
Eight latch circuits 55 corresponding to channels are provided in parallel.
The pitch output from the shift register 53.
The period signal is input in parallel to its data input D. Each la
The latch control input L of the latch circuit 55
Corresponding latch timing signals φFS1 (25), φFS2
(29),..., ΦFS8 (56) are input and left. φF
The number following S indicates the channel number,
The number in parentheses is one operation cycle (64 data shown in FIG. 2).
Time slot) and the time slot number.
Time slot corresponding to the time slot number.
The latch timing signal becomes signal “1”. For example,
The signal φFS1 (25) is a signal “1” in the time slot 25.
Which corresponds to the first channel. Figure 2
As can be seen, the time slot 25 is pitch
Time division time of the first channel in the synchronization signal PS1
Is supported. Therefore, this signal φFS1 (2
5) In the part of the latch circuit 55 that is latched by
Is the content (pitch) of the pitch synchronization signal PS1 of channel 1.
Signal “1” at the timing synchronized with
The signal "0") is latched in the ming. Other channels
The same applies to channels 2 to 8, and the pitch synchronization signal of each channel.
Are connected to the latch circuit 55 in parallel at a predetermined timing.
Is touched. The latch tie corresponding to each channel
The timing signals φFS1 (25) to φFS8 (56) are shown in FIG.
It is generated from two decoders 56. The decoder 56
Counter 57 to decode the output
Generate a reset signal. The counter 57 is a master clock pulse.
Is a modulo 64 counter that counts
Periodically by stem sync pulse SYNC (Fig. 2)
Is reset to Racks corresponding to channels 1 to 8
Timing signals φFS1 (25) to φFS8 (56)
In which time slot is generated from the display of FIG.
It will be obvious. Returning to FIG. 11, each timing signal φF
S1 (25) to φFS8 (56) are multiplexed by the NOR circuit 58.
And inverted. The output of the NOR circuit 58 is the AND circuit 5
4 is input. As a result, the latch circuit 55
Shift register 53 for the channel on which
Is cleared. On the other hand, the pitch synchronization signal PS1 becomes "1".
Latched by the latch circuit 55 corresponding to the
In the next cycle, the signal "1"
Timing signals φFS1 (25) to φFS8 (56) are generated
It is held until you do. Thus, the latch circuit 55 includes
For the channel for which the pitch synchronization signal PS1 is "1",
In response, the signal “1” is held for 64 time slots.
Be held. The output of the latch circuit 55 corresponding to each channel
The force is represented by filter operation request signals φF1 to φF8 in FIG.
To the timing signal generation circuit 39 of FIG. See below
Thus, the filter operation request signals φF1 to φF8
When it becomes “1”, filter operation for one sample point is executed.
Is performed. Only when the pitch synchronization signal PS1 is generated
The filter operation request signals φF1 to φF8 become “1”.
In the end, it synchronizes with the pitch of the tone signal to be filtered
The calculated digital filter operation is performed. An example
For example, as shown in FIG.
Assuming that the pitch synchronization signal PS1 has become "1" (this
In this case, this signal "1" is a pitch synchronization signal of channel 1.
This is cyclically held by the shift register 53, and
The timing signal φFS1 (25) is
When it occurs, it is latched by the latch circuit 55 and the channel
The filter operation request signal φF1 corresponding to 1
It rises to "1" in slot 25. This signal φF1
Is 64 ties until time slot 24 of the next cycle
The signal “1” is maintained for the time width of the time slot. <Timing signal generating circuit 39: FIG. 12>
In FIG. 12, the timing signal generation circuit 39
In addition to the decoder 56 and the counter 57 of FIG.
The filter of each channel provided from the interface 38
Filter operation according to filter operation request signals φF1 to φF8
Operation timing for generating timing signals for operation control
The generation circuits 391 to 398 are connected to each channel (Ch1 to Ch).
8) For each. In the figure, the circuit 391 of channel 1
Only the details are shown, but the circuits 39 of the other channels 2 to 8
2 to 398 have the same configuration, and the
Are different only in the time relationship of the switching signals T (33), T (49),.
You. The timing signals T (33), T (49),.
Generated from 56. As before, the timing signal is
The number in parentheses in the code indicates one operation cycle
Time slot in (64 time slots shown in FIG. 2)
Indicates the number and the time corresponding to the time slot number
The timing signal becomes "1" in the slot
Is shown. Other timing signals generated by decoder 56
The same applies to numbers, and refer to the numbers in parentheses.
The timing signal is assigned to which time slot.
It is easy to determine whether the error occurs (whether it becomes "1"). example
For example, the timing signal T (33) is tied as shown in FIG.
Signal "1" in the system slot 33,
Signal T (3-18) is between time slots 3 and 18
And the signal becomes "1". The generation timing signal of channel 1
The path 391 will be described.
F1 and the timing signal T (33) are supplied to the AND circuit 59.
Can be Therefore, it is necessary to perform the filter operation.
If it is requested,
The output of the AND circuit 59 becomes “1”. This AND circuit 5
9 and the output signal of the delay circuit 60 for one time
The signal delayed by the lot is supplied to OR circuit 61. This
The output of the OR circuit 61 is a filter data sampling clock.
The lock signal RLA1 is supplied to the digital filter circuit.
It is used to control the unit delay in This signal R
LA1 has time slots 33 and 34 as shown in FIG.
It becomes "1" when. The output of the AND circuit 59 is provided to the AND circuit 62.
And even / odd identification data EOA1 of channel 1 (this is shown in FIG.
0 output from the parameter supply circuit 48.
) Is inverted by the inverter 63. This
Data EOA1 is next to the filter characteristic to be realized.
The signal is “1” when the number is even order, and is signal when the number is odd order.
“0”. The output of the AND circuit 62 is a delay circuit 64
, And the inhibit signal INH
Output as A1. Unset when filter order is odd
The output signal of the circuit 62 is "1" in the time slot 33.
And the time slot 35 after two time slots
At this time, the signal INHA1 becomes "1" (see FIG. 16). H
If the filter order is even, the signal INHA1 is always "0".
It is. This in-bit signal INHA1 is a digital
In the arithmetic operation of the filter circuit, the highest order of even order (3
By prohibiting the (second order) operation, the odd-order filter
Is used to achieve sexuality. The timing signals T (3-18) and T (35)
−50) is input to the OR circuit 65, and its output and
The output of the AND circuit 59 is input to the OR circuit 66.
You. The output of the OR circuit 66 is delayed for one time by the delay circuit 67.
The first shift clock signal φFFA1
(See FIG. 16). The output of the OR circuit 66
Signal obtained by inverting the output of the
Signal is added to the AND circuit 69, and its output is delayed.
The signal delayed by one time slot on the path 70 is
It is output as lock signal φFLA1 (see FIG. 16).
See). The signal φFLA1 is a signal if the filter order is even.
It is "1" at the time of the im slot 36, but if it is an odd number,
It is "0". These shift clock signals φFFA
1 and φFLA1 are each a digital filter circuit.
In order to perform the operation for each order in a time-sharing manner,
Tone signal corresponding to each delay stage in the memory 40 (FIG. 10)
Used to sequentially shift sample value data.
The time slot is set according to the timing signal T (35-50).
Multiplication timing signal which becomes "1" between 35 and 50
PDOA1 (see FIG. 16) is a digital filter circuit
Between the tone signal sample value data and the filter coefficient
This indicates the period in which the multiplication should be performed. For the other channels 2 to 4 in the A series,
The corresponding operation timing signal generation circuits 392 to 394
Timing signals T (49) and T (19-
34), T (51-2), ... is the timing of channel 1.
Signal T (33), T (3-18), T (35-50)
16 time slots in order from the timing of
It is. Therefore, the output from the circuit 391 of channel 1
Signal RLA similar to each of the signals RLA1 to PDOA1
2 to PDOA2, ..., RLA4 to PDOA4 are other channels
16 ties from each of the circuits 392 to 394 in the channels 2 to 4
This is generated at the timing shifted by each slot. to this
Based on the A-series digital filter circuit (particularly the multiplier
And one accumulator section 41) in one operation cycle
= Time every 16 time slots between 64 time slots
In the interval, filter operation of four channels 1-4
It can be performed in a time-sharing manner. Performances corresponding to channels 5 to 8 of the B series
Also in the arithmetic timing signal generation circuits 395 to 398,
Predetermined timer offset by 16 time slots between channels
Timing signals T (49) and T (19-3)
4), T (51-2),... Are used.
Seed signals RLB1 to PDOB1,... RLB4 to PDOB4
Is generated. Generation of operation timing signal corresponding to A series
Each signal RLA1-P generated by the raw circuits 391-394
DOA 4 is applied to A-series state memory 40 and B
Each signal generated by the circuits 395 to 398 corresponding to the series
RLB1 to PDOB4 are B-series state memories 42
(FIG. 10). <State memory 40: FIG. 13>
The A-series state memory 40 stores each of the A-series channels.
State memories 401 to 404 corresponding to channels 1 to 4
Are provided in parallel. Channel 1 state memory
Although only the details of 401 are shown, the other channels 2 to 4
Tate memories 402 to 404 have the same configuration.
The input signals are different. Each of the above channels 1
-3 to 3 corresponding to operation timing signal generation circuits 391 to 3
Signals RLA1-PDO generated from signal 94 (FIG. 12)
A1, ... RLA4 ~ PDOA4 are in their own channel
Input to the corresponding state memories 401 to 404, respectively.
You. The state memory 40 shown in FIG.
Before describing the details of the accumulator section 41,
Of basic operation of digital filter circuit composed of
This will be described with reference to the schematic diagrams shown in FIGS. <Even-Order Filter Operation Basic Operation: FIG. 17
FIG. 17 shows an even number in the above digital filter circuit.
F when realizing a filter characteristic consisting of
FIG. 4 is a schematic diagram for explaining a basic operation of an IR type filter operation.
Yes, (a) is a block diagram, (b) is each operation timing
Of the shift registers SR1 and SR2 in FIG.
Music signal signals in the stages Q0 to Q15 and Q16 to Q31
Indicates the state of the pull value. The first shift register SR1 is 1
Digital music with 6 stages to be filtered
The sound signal sample value data xn is transmitted through the selector SEL1.
Is entered. New sump via selector SEL1
As a signal for taking in the value data xn,
Filter data sampling clock signal RLA (chan
In the case of channel 1, RLA1) is used, and the shift register
As the shift clock pulse of SR1, the first shift described above is used.
Clock signal φFFA (φFF for channel 1
A1) is used. Each of the first shift registers SR1
Stages Q0 to Q15 are from sample point n to n-15
16 sample value data xn to xn-15
You. The output of the last stage of this shift register SR1 is
The sampling clock signal R is output via the selector SEL1.
When there is no LA, the process returns to the first stage. This shift
The register SR1 is shifted only to the right. The second shift register SR2 also has 16 stages.
And the output of the first shift register SR1 is selected.
The data is input via the data SEL2. Via selector SEL2
To take the output of SR1 into SR2
The aforementioned filter data sampling clock signal RLA
Is used as the shift clock pulse of the SR2.
The above-described second shift clock signal φFLA (channel 1
In this case, φFLA1) is used. This second shift
Each stage Q16 to Q31 of the register SR2
16 samples from points n to n-16 to n-31
The value data xn-16 to xn-31 are held. Shift Regis
The final stage Q31 of the data SR2 is connected via the selector SEL2.
The first switch when there is no sampling clock signal RLA.
Connected to the stage Q16. This shift register SR2
Is a bidirectional shift type, and a sampling clock signal R
When LA is “1”, the right shift mode is set. When LA is “0”, the left shift mode is set.
Shift mode is activated. The shift registers SR1 and SR2
The outputs of the stages Q15 and Q16 are added by the adder ADD.
The result of the addition is given to the multiplier MUL,
The coefficient COEA is multiplied. The result of the multiplication is
Data ACC, and the multiplication result for all orders
Accumulated in. Thus, accumulator A
The filter operation result for one sample point is output from CC.
It is. Samples for two sample points by adder ADD
Add the value data, and apply the common filter coefficient COEA
Is multiplied by the multiplier MUL.
According to the symmetry of numbers. That is, two symmetrical
Sample value data is multiplied by the same value of filter coefficient.
Therefore, do not multiply them separately, add them once
Multiplies both sampled data simultaneously by coefficient multiplication
To do it. In (b) of FIG.
The axis operation timing is one time according to the master clock.
Progress for each slot. The numbers shown there are for convenience only
One operation cycle (64 time slots)
It does not absolutely indicate the time slot number inside.
In the example of the figure, at the operation timing 1, the shift register
Xn to xn for each of the stages Q0 to Q31 of SR1 and SR2
Contains sample value data of 32 sample points up to -31
I have. In the example shown in FIG.
Assuming that the pulling clock signal RLA becomes "1"
I have. Thereby, shift clock signals φFFA, φF
The shift registers SR1 and SR2 are set to one state according to LA.
At the operation timing 2 as shown in the figure.
It becomes a state. Shift clock signal φFF at this time
A, φFLA is φFFA of FIG. 16 for channel 1
1, as shown in the column of φFLA1,
What happens. As is clear from FIG.
The time slot is the shift clock signal φFFA, φFL
A does not occur, and therefore, the operation timing 3 shown in FIG.
Then, the state of each stage Q0 to Q31 does not change. Only
16 time slots from 3 to 18
In the case of channel 1, the multiplication timing signal PD
Time slots 35 to 50 in which OA1 (FIG. 16) occurs
Multiplication and accumulation are performed during this time.
Will be That is, at the calculation timing 3, the stage Q1
Sample data of xn-14 and xn-15 in Q5 and Q16
The data is added by the adder ADD, and the
The result is multiplied by the accumulator ACC
Is held. Between operation timings 4 and 18, 1
For each time slot, the first shift register SR1
Shift, the second shift register SR2 is shifted left,
The state of each stage Q0 to Q31 changes sequentially as shown
I do. Therefore, at operation timing 4, xn-13 and xn-16 are
Which is then multiplied by a fifteenth filter coefficient,
The result is accumulated in the accumulator ACC. Next performance
At calculation timing 5, the same calculation is performed for xn-12 and xn-17.
Is performed, and thus the two-sample value data at the symmetric position
The same filter coefficient calculation is performed sequentially in time division
At operation timing 18, xn + at the last symmetric position
A similar operation is performed for 1 and xn-30, which gives
Is completed. At the next operation timing 19
Is shifted again, and each stage is
Each sample value data in order of time delayed by Q0 to Q31
xn + 1 to xn-30 are arranged. <Basic Operation of Odd-Order Filter Operation: FIG.
> FIG. 18 shows the filter characteristics of odd-order (31st) order.
Explains basic operation of FIR filter operation when realizing
(A) is a block diagram, (b) is a schematic diagram for
(A) shift register SR at each operation timing
1. Each stage Q0 to Q15, Q16 to Q30 of SR2
3 shows the state of the musical tone signal sample value of FIG. As shown in FIG.
Each block is the same as that shown in FIG.
The difference is that the output of stage Q16
Through the adder ADD. Gate G
T is an inhibit signal INHA (for the first channel, IHA
NHA1) is controlled by the inverted signal.
When the signal INHA is "1", the stage Q1
6 is prohibited from being applied to the adder ADD
You. Also, the sixteenth state of the second shift register SR2
The 15th stage Q30 and the 1st stage are not used.
Page Q16 is connected via the selector SEL2. Figure
At 18 (b), the state of the first shift register SR1
The change is the same as in FIG. Second shift register
The state change of SR2 is slightly different from that in FIG.
Become. Shift clock signal of second shift register SR2
The signal φFLA is in even order mode at the operation timing 4.
Is "1", but becomes "0" in the odd-order mode.
In the case of channel 1, the time in the column of φFLA1 in FIG.
See lot 36). Therefore, in the odd-order mode, FIG.
As shown in (b), the second shift register SR2
The contents are not shifted at the operation timing 4 and the operation time
Are sequentially shifted to the left from ring 5 to ring 19. At the operation timing 3, the shift register S
Each of the stages Q0 to Q30 of R1 and SR2 has the 31st order
Tone signal sample values xn + 1 to xn-29 corresponding to the delay stage
Are placed in the order, and the center order
Contains the sample value xn-14. As shown in FIG.
In the odd-order mode, the center order of symmetry is
A unique filter coefficient is assigned correspondingly.
Therefore, at the operation timing 3, the inhibit signal IN
The output of stage Q16 is inhibited by HA and the central order
Adder ADD outputs only the output signal of stage Q15 corresponding to
In addition, in the multiplier MUL, a fixed value corresponding to the central order is obtained.
Multiplies the available filter coefficients. At operation timing 4,
Only the first shift register SR1 is shifted right and the second
Is not shifted. Therefore,
Xn-13 goes into the cottage Q15 and xn-15 goes into the Q16
ing. Further, the inhibit signal INHA is set to “0”.
And the gate GT is opened. Thus, both central orders
Sample values xn-13 and xn-15 corresponding to the next order are added.
ADD, and are added to each other.
Are multiplied by a common filter coefficient. Calculation timing
From 5 to 18, SR1 is sequentially shifted to the right and SR2 is sequentially shifted to the left.
The sample value at the symmetric position as shown
Enter the cottages Q15 and Q16, add both, and
The filter coefficients are multiplied. <Digital Filter Circuit: FIG. 13> FIG.
State memory 4 corresponding to channel 1 with reference to 3
01 will be described. 16 stage one-way shift lever
The register 71 is the first shift register S shown in FIGS.
R1 and corresponding to channel 1
Shift control by 1 shift clock signal φFFA1
Is done. Supplied from the tone generator 18 (FIG. 1).
The digital tone signal sample value data TDX is latched.
The latch timing signal XLDA1 input to the circuit 73
The sample value data of channel 1 is
It is taken into the road 73. Tone signal sample value data TDX
-Division timing of each channel in (see FIG. 2)
Latch tie corresponding to each channel 1-8
Signals XLDA1 to XLDA4, XLDB1 to XL
DB4 is generated from decoder 56 (FIG. 12). Above
The number in parentheses at the end of each signal display in Figure 12
Indicates a time slot number in which the signal is generated. Each
A latch circuit 7 is provided in the state memory corresponding to the channel.
3 are provided, and the corresponding latch circuits are provided.
Latch timing signals XLDA1 to XLDA4, XL
Musical sounds of each channel 1 to 8 by DB1 to XLDB4
The signal sample value data TDX is separately latched,
And demultiplexed. Channel latched by latch circuit 73
The tone signal sample value data of 1 is input to the A input of the selector 74.
Given to The selector 74 is an operation timing shown in FIG.
Filter data circuit provided from the
A input when the sampling clock signal RLA1 is "1"
Is selected, otherwise the shift register added to the B input is selected.
The output signal of the sixteenth stage of the star 71 is selected. Above
As described above, this signal RLA1 is synchronized with the pitch of the musical tone.
Therefore, a new sample is selected by the selector 74 in synchronization with the pitch.
Select pull value data (A input) and shift it
To the data 71. As is apparent from FIG.
In the time slot 34 where A1 becomes “1”, the shift clock
Since the clock signal φFFA1 becomes “1”, the shift register
Data 71 is the new sample value provided by selector 74
The data is taken into the first stage (Q0). Next Times
In the lot 35, the shift operation is temporarily stopped, and the time
As described above, the right shift is sequentially performed in lots 36 to 51.
is there. The bidirectional shift register 72 is shown in FIGS.
8 corresponding to the second shift register SR2.
You. Each stage Q16 of the bidirectional shift register 72
To Q31 are connected to the selectors SL1 to SL16 as shown.
Switch circuits LC1 to LC16, and a bidirectional shift
Connected as possible. That is, the first
The first shift is applied to the A input of the selector SL1 of the stage Q16.
The output signal of the final stage (Q15) of the register 71 is
Input, and the selector S of each of the other stages Q17 to Q31
Latch of previous stage is connected to A input of L2-SL16
Outputs of the circuits LC1 to LC15 are input. In addition, each step
The next stage is applied to the B inputs of the selectors SL1 to SL16 of the next page.
Output of the latch circuits LC2 to LC16 and LC1
Is forced. Thereby, each of the selectors SL1 to SL16
When the A input is selected, the mode shifts to the right and the B input
When is selected, the mode is the left shift mode. Each selector S
Sampling clock as a selection signal for L1 to SL16
The signal RLA1 is used, and when this signal is "1", the A input selection
Selection, that is, right shift mode. However, odd mode
Stage to disable stage Q31
The selector SL15 of Q30 is somewhat different from the others.
That is, the selector SL15 is provided with the C input.
The output signal of the stage Q16 is added thereto. Cha
Even / odd identification data EOA1 for channel 1 is “1” (one).
(Even mode), the AND circuit 751 is enabled.
When the signal RLA1 is "0", the AND circuit 751
The output becomes a signal “1”, which causes the selector SL15
Selects the B input and the output of stage Q31
30 (shifted left). EOA1
When it is “0” (in the odd-order mode), the AND circuit 761
Is enabled, and when the signal RLA1 is "0", the selector S
L15 selects the C input, and the output of stage Q16 is
Page Q30 (shift left over Q31
Is). With the above configuration, the first and second shift registers
The change states of the contents of the stars 71 and 72 are the even mode and the odd mode.
17 (b) and 18 (b) according to the next mode.
Just like the ones. First stage of second shift register 72
The output signal of Q16 is applied to gate 76 via gate 75.
available. The gate 75 outputs the inhibit signal INHA1.
It is controlled by the inverted signal.
This corresponds to GT. Gate 76 is connected to the first
Output signal of the shift register 71 (output signal of the stage Q15).
) And the second shift register provided through the gate 75
The output signal of the stage 72 (the output signal of the stage Q16) is input.
To the multiplication timing signal PDOA1 (see FIG. 16).
Therefore, it is released. The output of gate 76 is a multiplier and an accumulator.
To the adder 77 of the accumulation section 41, where two
Are added. This adder
77 corresponds to the adder ADD in FIGS. 17 and 18.
is there. The output of the adder 77 is delayed for one time by the delay circuit 78.
, And is input to the multiplier 79. The multiplier 79 is
The tone signal sample value data supplied through the delay circuit 78
Filter coefficient data provided to the data through the delay circuit 80.
Data COEA. Output of multiplier 79
Is delayed by 4 time slots by the delay circuit 81 and the shifter 8
2 given. The shift control input of the shifter 82 has five
Via the delay circuit 83 for setting the delay of the time slot.
Finding data WEIA is provided. This multiplier 79 and
Shifter 82 corresponds to multiplier MUL in FIGS.
Things. That is, as described above, the filter coefficient data
COEA is the effective bit data of the filter coefficient.
In the multiplier 79, the effective bits of the filter coefficient
Is multiplied by the tone signal sample value data. Soshi
Then, the result of this multiplication is
By shifting by the number of bits corresponding to the value of WEIA,
The real number of filter coefficients and the tone signal sample value data
Is completed. The output of the shifter 82 is supplied to an accumulator 84.
Given, multiplication result corresponding to each order for one channel
Is accumulated. The output of accumulator 84 is
The operation end timing signal F
Latched according to ENDA. This signal FENDA
It is generated from the decoder 56 of FIG. Displayed in the figure.
As shown, this signal FENDA
It becomes "1" at 8, 24, 40 and 56. Times
In lot 56, the calculation result of channel 1 is latched, and
Latches the operation result of channel 2 and channel 24
The calculation result of channel 3 is latched, and channel 4
Is latched. From the decoder 56, the
The operation end timing signal FENDB is generated in the same manner.
You. The number of multipliers and accumulate units 41 is four.
Is shared in a time-sharing manner by the channels of That is,
The arithmetic unit 77 stores the channel 1 state memory 401
In addition to the output of gate 76, the status of channels 2-4
Similar devices provided in the remote memory 402 to 404
The output signal of the gate having the function is multiplexed. Each
The output gate 76 of each of the Tate memories 401 to 404 has 1
6 timeslot width multiplication timing signals PDOA1 to PDOA1
Different ties for PDOA4 shifted by 16 time slots
Input each time. Therefore, each channel is added to the adder 77.
The signals of channels 1 to 4 are time-divided every 16 time slots
Multiple inputs. Filter coefficient data COEA and
The weighting data WEIA has four channels.
Time division every 16 time slots at the same timing as above
Multiplexed, 16 ties per channel
In the data slot, the first to 16th data
Divided and multiplexed. B state memory 42
Multiplier and accumulator unit 43 has the same configuration as in FIG.
However, the timing of various signals may be different
You. A sequence and B sequence as shown in FIG.
Digital filter circuit (that is, state memory 4)
0, 42 and multipliers and accumulator units 41, 43)
Of filter operation for each channel 1 to 8 in
FIG. 19 shows the timing. In FIG. 19, shift 1
Column contains the first shift register (7 for channel 1).
1) shows the shift timing, and the shift 2 column shows the second
Shift register (72 for channel 1)
3 shows the timing of the operation. The direction of the arrow is the shift direction
(Right shift or left shift). Each channel
The shift timing of the operation timing signal generation circuit 39
1 to 3 (FIG. 12).
Clock signals φFFA1 to φFFB4, φFLA1
... FLB4. shift
The operation includes shift operation for filter operation and stored data.
And a dummy shift operation for data refresh. An example
For example, in the case of channel 1, time slots 4 to 19
The shift is a dummy shift. In the column for shift 2
The symbol (←) shifts left in the even-order mode,
Indicates that no shift is performed in the numerical mode. In FIG. 19, the column of INH indicates an inhibit.
The generation timing of the signals INHA1 to INHB4.
ing. In the odd mode, the time slot marked with a circle
Inhibit signals INHA1 to INHB4
It becomes “1”. The column of PDO shows the state of each channel.
Multiplier and accumulator unit 4 from memories 40 and 42
Tie input of tone signal sample value data to 1, 43
Ming. This is the multiplication timing for each channel
With respect to the generation timing of the signaling signals PDOA1 to PDOB4.
I am responding. The SUM column is the output of the accumulator 84
The timing is shown. PDO and SUM timing
There is a delay of 6 timeslots between
Accumulation with 5 timeslot delay by 8,81
Due to the delay of one time slot due to the event 84. Accumulate
At the last time slot of the output timing of the
Indicates that the operation end timing signal FENDA is
The output of the mullator 84 is taken into the latch circuit 85. <Parameter Memory 47: FIG. 20> FIG.
Shows an example of the storage format of the parameter memory 47.
Key group table, touch group table
Table, parameter address table and parameter bank
Consists of The actual filter parameters are
Parameter address table stored in the
Contains the parameters to be read from the parameter bank.
Address data is stored. Key group table
Stores information that groups the keys for each key.
doing. As an example, the number of keys is 88, the number of groups is 44
In the key group table, the address corresponding to each key
Relative to the key group to which the key belongs
Address data (called a key group address)
I have. Therefore, the key group table stores the key code KC
Is addressed by This key group table
A predetermined absolute address (offset) of the parameter memory 47
Address OADS).
I'm worried. The touch group table stores key data for each tone color.
Group the touch intensity corresponding to each stage of touch intensity.
The information to be converted is stored. As an example, the number of tones is 32
There is a touch group table for the tone code VN.
Includes 32 timbre-specific areas corresponding to values 0 to 31
Touch that can be expressed by the touch code TCH
The intensity stage is 64 as an example, and each tone color area is
There are 64 address positions corresponding to touch 0 to 63
doing. The address position corresponding to each touch intensity is
Relative ad for touch group to which touch intensity belongs
Address data (called a touch group address) is stored.
Have been. As an example, the number of touch groups is 16.
Therefore, the touch group table stores the tone code VN and the
Address by the switch code TCH. This touch
The group table has a predetermined absolute value in the parameter memory 47.
Address (this is called offset address OAD1)
Occupies the storage area starting with. This touch glue
The absolute address data for reading the table is 6
5-bit tone code at the top of the bit touch code TCH
11 bits of relative address data by combining code VN
(The address that sets the offset address OAD1 to 0)
Create and add this to the offset address OAD1
Created by The parameter address table stores each key
Supports each touch group for each loop and for each tone
Relative to the address that stores the filter parameter to be
Stores address data (called parameter address)
ing. This parameter address table is
44 key group areas corresponding to loops 0 to 43
This key group area contains the key group described above.
To the key group address read from the loop table
Therefore, it is addressed. Each key group area has tone 0
Each of the 32 timbre-specific areas corresponding to
This tone-specific area is addressed by the tone code VN.
Is performed. Each tone area is assigned to touch group 0-15
It has 16 corresponding address locations, each address
Location read from the touch group table above
Addressed by touch group address. What
Note that a 2-byte storage location is assigned to one address location.
Where the parameter address data is 12
Stored in bits. This parameter address table
Is a predetermined absolute address (this
This is called offset address OAD2).
Occupies the storage area. This parameter address table
The absolute address data for reading the
Bit is set to “0” or “1” (this is one address
Because the position occupies 2 bytes, or 2 absolute addresses)
4-bit touch group address data on the upper
And further place a 5-bit tone color code VN
And a 6-bit key group code
Address, and a total of 16 bits of relative address data
(The address that sets the offset address OAD2 to 0)
Create and add this to the offset address OAD2
Created by As an example, there are 2620 parameter banks.
Types of filter parameters are stored.
2620 parameters corresponding to dresses 0 to 2619
Data storage area. One parameter storage area
Is a 32-byte storage location (32 absolute address locations)
), And a set of filter coefficients for the 16th order
The corresponding parameters are stored. First order fill
The coefficient is stored in a 2-byte storage location, of which
As described above, the 12-bit filter coefficient data
(COE) and 3-bit weighting data (WEI) and 1
It consists of bit even / odd identification data (EO). However, weight
Data (WEI) and even / odd identification data (EO)
Since the parameters are common among the orders, the first
It is stored only in the next storage location, and is stored in the other storage locations.
I do not remember. However, the weighting data (WEI) is
It is also possible to store them independently for each. this
Parameter bank is the parameter address table described above
Address by parameter address read from
Is done. The parameter bank is located in the parameter memory 47.
Fixed absolute address (this is the offset address OAD3
). This para
The absolute address data for reading the meter bank is
The 12-bit parameter address data is
Relative address data (set offset address OAD3 to 0
Address) in the upper 12 bits of
Create the relative address data and offset it
It is created by adding to the address OAD3. This
The lower 5 bits of the absolute address data in 32 steps
By changing sequentially, depending on the parameter address
For the 16th order in one parameter storage area specified by
A set of filter parameters is sequentially read. The hierarchical parameters as shown in FIG.
Data memory structure can save memory capacity
This is advantageous. Without doing this, 44 key glue
All of the combinations of 16 tones, 16 touch groups
(22528 patterns) corresponding to individual filter parameters
Data is stored, the storage of 22528 x 32 bytes
Although the capacity is required, the parameters shown in FIG.
1408 (= 44 × 32) × 32 bytes in the address table
And the parameter bank of 2620 x 32 bytes
Only the required storage capacity of 4028 x 32 bytes
No. In other words, a key group, tone, and touch group
Filter parameters are the same even if they are different
In some cases, 2252 can be used.
Share 2620 parameters for 8 combinations
To save memory capacity.
ing. <Parameter processing unit 45,
Parameter selector 46, parameter memory 47, parameter
Meter supply circuits 48, 49: FIG. 14> Parameter processing
The singing unit 45 operates in the static mode described above.
In order to read the parameter memory 47 as described above,
Is controlled. In the program memory 451,
The read control of the parameter memory 47 as described above is executed.
The program to be executed is stored. Program counsel
The program 452 is a program for reading the program memory 451.
A program step signal PC is generated.
Shift register 86, adder 87, gates 88, 8
9, including the end detection circuit 90, for eight channels
Is performed in a time-division manner. Key-on pulse KO
NP is inverted by the inverter 91 and the control input of the gate 88 is input.
Join forces. This key-on pulse KONP is a key press.
The signal becomes “1” at the beginning, and corresponds to each channel.
Are time division multiplexed. Adder 87 shifts
The output of register 86 is provided from gate 89
"1" is added, and the addition result is output to the gate 88.
The data is supplied to the shift register 86 via End detection times
The path 90 is used when the value of the output of the shift register 86 is
Detects whether the last step has been reached.
If the step is not reached, signal “0” is output.
A signal "1" is applied to the control input of the gate 89 via the
The signal "1" instructing 1 count-up is added to the adder 8
7 to be given to the final step
In this case, a signal “1” is output, and the
The signal "0" is given to the gate 89, the gate 89 is closed and
Prevent uncounting. With the above configuration, the program counter 4
52, that is, the step signal PC is a key-on pulse
It is reset to "0" when KONP occurs, and
Every time the shift register 86 makes a round (every 8 time slots)
2) Count up by 1 and finally reach the final step
Then, the counting is stopped. Programs as an example
The number of steps is 37 and is output from the counter 452.
The step signal PC changes from “0” to “36” (final step).
). The step signal PC is
The output of the star 86 is 8 channels for time division multiplexing.
It is heavy. The program memory 451 is input
The selection control signal SE according to the step of the step signal PC
LC1 to SELC4 are read and the offset address
Address data for reading the memory 453
put out. The offset address memory 453 stores the offset described above.
In this case, the values of the set addresses OADS to OAD3 are stored.
Off read from offset address memory 453
Set address data ADOF (of OADS to OAD3)
) Is input to the adder 454. Adder 454
Is relative address data R provided from selector 455.
Add ADD and offset address data ADOF
And outputs the output as address data PRAD as a parameter.
Of the data memory 47. The key group address register 456,
Switch group address register 457, parameter add
Less register 458 is an 8-stage shift register
Key group address data KEYG,
Group address data TCHG, parameter address
Data PAD is stored in a time-division manner for each channel.
Things. Select on the input side of each register 456-458.
Are provided, and the parameter memory 4
Data read from 7 is input to one input of each selector
Join. The other inputs of the selectors 93 to 95 are connected to the respective registers.
The outputs of the stars 456 to 458 are added. Selectors 93-9
5, the selection control signals SELC2 to SELC4 are programmed.
It is provided from the memory 451, and the program
Read the parameter memory 47 according to the step of the RAM.
Fetch output data into registers 456-458
Or once in registers 456-458
Controls whether data is kept cyclically. As obvious
The key group address described above is stored in the parameter memory 47.
When the address data is read out,
To the touch group described above.
When address data is read, this is
To the address register 457.
When the address data is read,
Select control signal to take in address register 458
SELC2 to SELC4 are generated. Each register 45
Address data KEYG, T stored in 6 to 458
CHG and PAD are input to the selector 455. sector
455 has key code KC, tone code VN and touch
Output from code TCH and program counter 452
Least significant bit PCLSB of the step signal PC
From this step signal PC, "4" (binary "100")
Is also input. Selector 4
At 55, a selection system given from the program memory 451
Input data in a predetermined combination according to the control signal SELC1
Select and select the selected data with relative address data RAD
D at the bit position corresponding to the predetermined weight.
And thus create and output the relative address data RADD
I do. This parameter processing unit 45
The processing contents of the 37 steps executed in
It is. When PC = 0: Key code KC is selected by key group table read processing selection control signal SELC1
And the key address as offset address data ADOF
Reads offset address OADS of loop table
You. Also, the parameter control is performed by the selection control signal SELC2.
Output data of memory 47 to key group address register
456. Thereby, the parameter memory 47
Corresponding to the key code KC from the key group table of
The key group address is read, and this is
56. When PC = 1: Tone code VN and touch code T by touch group table read processing signal SELC1
CH, select TCH as the least significant bit, and V
N to create relative address data RADD
You. Touching as offset address data ADOF
Reads the offset address OAD1 of the loop table
You. In addition, the parameter memory 47 is generated by the signal SELC3.
Output data of the touch group address register 457
Take in. This allows the parameter memory 47 to be touched.
Tone code VN and touch code
Read out the touch group address corresponding to the TCH
This is stored in the register 457. When PC = 2,3: Parameter address
The key group address data KE is output by the stable read processing signal SELC1.
YG, tone code VN, touch group address data
TCHG, the least significant bit PCLSB of the step signal PC
And PCLSB, TCHG, V
N, KEYG and the relative address data RA
Create a DD. Parameter add as data ADOF
Reads the offset address OAD2 of the rest table
You. In addition, the parameter memory 47 is output by the signal SELC4.
Is output to the parameter address register 458.
Embed. Thereby, the parameters in the parameter memory 47 are
Read the appropriate parameter address from the data address table.
And this is stored in register 458. Above
As shown, one parameter address data is 12 bits
2 is stored in a 2-byte storage location (FIG. 2).
0). When bit PCLSB is “0” (PC = 2
Step), lower 8 bits of parameter address data
Data is read out and PCLSB is "1" (PC = 3
Step), the upper 4 bits of the parameter address
Data is read. In the selector 95, this parameter
Data address data is parallelized to 12-bit data
The bit positions and store them in register 458
You. When PC = 4 to 35: Parameter van
Parameter address data PAD according to the read processing signal SELC1.
And the step signal PC-4 obtained by subtracting 4 is selected, and the least significant video
Relative to the PC-4 and PAD in this order.
Create data RADD. Also, data ADOF and
The offset address OAD3 of the parameter bank
read out. The signal PC-4 has 32 steps of PC = 4 to 35.
Value changes from "0" to "31"
You. Therefore, 3 specified by the parameter address
A set of filter parameters consisting of 2 bytes (see FIG. 20)
1) from the parameter bank of the parameter memory 47
They are read out byte by byte. When PC = 36: Program counter 4
52 is stopped and the filter parameter readout
End Kens. Read from parameter memory 47
The obtained filter parameters are output to the timing synchronization circuit 459.
Is input to This circuit 459 has a program step signal.
Signal PC and decoder 56 of timing signal generation circuit 39
(FIG. 12).
Based on these signals, filter parameters of each order
The data is output in synchronization with the predetermined timing. This same
The output of the initialization circuit 459 is a filter for static mode.
A of the parameter selector 46 as the parameter SPR
Given to the input. To B input of parameter selector 46
Is output from the microcomputer interface 44 (FIG. 10).
The dynamic mode filter parameter DPR
Given. The selection control input SB of the selector 46 is
Dynamic /
The static selection signal DS is provided, and the dynamic mode
In the load mode, select the B input parameter DPR and
In the lock mode, the parameter SPR of the A input is selected. The output of the selector 46 is a parameter for each of the A and B systems.
The signals are input to the meter supply circuits 48 and 49. A series circuit
Although only a detailed example is shown in FIG.
It is good. In the parameter supply circuit 49, a distribution circuit
485 is a parameter serially given from the selector 46.
Regarding channels A to 4 of A series in meter data
Capture data and parallelize it for each channel
Together with the filter coefficient data (COE for channel 1)
A1), weighted data (WEIA in channel 1)
1) of even / odd identification data (EOA1 in channel 1)
Separately parallelize them and store them for each channel.
It distributes to roads 481-484. Such distribution control
For this purpose, an appropriate timing signal TS2 is
The signal generated by the decoder 56 of the raw circuit 39 (FIG. 12)
It is provided to the distribution circuit 485. The storage circuits 481 to 484 correspond to channel 1
A detailed example is given below, but the same applies to other channels.
It is. The 12-bit filter coefficient data COEA1 is
16-stage shift register 9 via selector 96
7 is input. This filter coefficient data COEA1 is
Data of 16th order in 16 time slots
Divided and multiplexed, this 16th order data is shifted
The data is taken into each stage of the register 97. Shift cash register
The contents of the star 97 are circulated and held through the selector 96.
You. The 3-bit weight data WEIA1 is a latch circuit
98. 1-bit even / odd identification data EOA1
Is input to the latch circuit 99. Selector 96 and
The control of the switch circuits 98 and 99 is performed by an appropriate control signal (not shown).
Is performed at an appropriate timing. That is,
In the tick mode, the parameter responds to the start of the key press.
Parameters for the 16th order read from the meter memory 47
Data is synchronized with the timing synchronization circuit 459 and the selector.
46, input to the storage circuit 481 via the distribution circuit 485
The selector 96 sets the 16th order in synchronization with the timing
The filter coefficient data COEA1 for the shift register 9
7 and the latch circuits 98 and 99 store the weighted data.
WEIA1 latches even / odd identification data EOA1. Less than
Later, a new press key is assigned to that channel.
Until the shift register 97 and the latch circuits 98 and 99
The memory is kept. On the other hand, when in dynamic mode
Is selected from the microcomputer interface 44 (FIG. 10).
8 and the 8th order dynamics via the distribution circuit 485
Timing to which the parameter data DPR for
Of the parameter data DPR in synchronization with the
Shift register for several minutes of filter coefficient data COEA1
97, and the weighting data WEIA1 is latched
Path 98 to latch the even / odd identification data EOA1
Latch on road 99. Later, for new dynamic control
Until the parameter data DPR is given, the shift register
The storage of the star 97 and the latch circuits 98 and 99 is retained.
In the dynamic mode, the shift register
Corresponds to 9th to 16th out of 97 16 stages
Dynamic control parameters for the 8th order in 8 stages
Store the filter coefficient data of
The contents of the eight stages are set to 0. Shift register of each of storage circuits 481 to 484
The filter coefficient data output from the
86, where according to the timing signal TS3
Each channel is sequentially selected and time-division multiplexed.
You. Thus, the filter coefficients for channels 1-4
The data is time-division multiplexed and the A-series filter coefficient data
A-sequence multiplier and accumulator as COEA
41 (FIG. 13). Each storage circuit 481-48
4 is output from the latch circuit 98 of FIG.
The timing signal TS4
Are sequentially selected in accordance with
Weighted. Channel 1 thus time-division multiplexed
WEIA are weighted data WEIA of A series
It is supplied to the accumulator section 41 (FIG. 13). Each memory times
Each latch latched by the latch circuit 99 of the paths 481 to 484.
Even / odd identification data EOA1 to EOA4 of channels 1 to 4 are
State memories 401 to 404 of corresponding channels
(FIG. 13). <Pitch synchronization output circuit 50: FIG. 15>
In 5, the B input of the selector 501 is multiplied by the A sequence.
From the vessel and accumulator section 41 (FIGS. 10 and 13).
The filtered tone signal samples of channels 1-4
Pull value data SMA is given in a time-division multiplexed manner. FIG.
In the latch circuit 85 of FIG.
The timing at which the filtered output is captured is as shown in SU of FIG.
The last accumulated time slot in the column of M (shaded area)
As a result, the filtered
The channel timing of the sample value data SMA is
As shown in FIG. B input to C input of selector 501
Output from the column multiplier and accumulator unit 43 (FIG. 10).
The filtered tone signal of channels 5 to 8
Pull value data SMB is given in a time-division multiplexed manner. this
The channel timing of the data SMB is as shown in FIG.
is there. The A input of the selector 501 has eight stages.
The output of the shift register 502 is provided, and the selector 5
01 is input to the shift register 502. This
Selector 501 and shift register 502
The filtered sample value data of channels 1 to 8 is
One time slot as shown in the channel timing of S1
Time-division multiplexing according to high-speed time-division timing per unit
It is to make it. The decoder 56 of FIG.
"1" at the im slots 57, 13, 26, 46
Timing signal 1 REGLDA and time slot 1
Timing at which "1" is set at 1, 31, 44, and 64
A signal 1REGDB is generated, which is selected in FIG.
B selection control input SB and C selection control input SC
Given. As a result, the data S given to the B input
In MA, data of channel 1 is in time slot 5
7 (this is the channel timing of PS1 shown in FIG. 2)
(Corresponding to the timing of channel 1)
The data of channel 2 is stored in time slot 13 (FIG. 2).
At the timing of channel 2 of PS1).
The data of channel 3 is stored in time slot 26 (PS in FIG. 2).
1 channel 3 timing)
The data of the file 4 is stored in the time slot 46 (PS1 of FIG. 2).
(Timing of channel 4). Also, C input
Out of the data SMB given to
Is time slot 11 (channel 5 of PS1 in FIG. 2).
Timing), and the data of channel 6 is
Im slot 31 (tie of channel 6 of PS1 in FIG. 2)
), And the data of channel 7 is
Lot 44 (timing of channel 7 of PS1 in FIG. 2)
The data of channel 8 is selected in the time slot.
At 64 (timing of channel 8 of PS1 in FIG. 2)
Selected. Timing signals 1REGLDA, 1REG
A signal obtained by inverting the LDB by the NOR circuit 503 is output from the selector 50.
1 A selection control input SA. Therefore,
At each timing, each
The filtered sample value data for the channel
At the outside timing, the shift register 502 keeps the data in a circular manner.
Is done. The output of the shift register 502 is the selector 504
A input of The output of the selector 504 has eight stages.
Is input to the shift register 505 of the page. Shift cash register
The output of the star 505 is input through the B input of the selector 504.
It is returned to the force side. Selector 504 and shift register 5
Reference numeral 05 denotes the tone signal output from the digital filter.
This is for resampling in synchronization with the switch. C
Input selector SA of the selector 504 has an input interface
Source 38 (FIG. 11).
Period signal PS1D is transmitted through a delay circuit 506 of 8 time slots.
Is entered via In FIG. 11, the pitch synchronization signal PS1 is
64 stage shift register 1 via OR circuit 51
00 is input. This shift register 100
The pitch synchronization signal delayed by the time slot is AND circuit 1
01 and delayed for 40 time slots
48 time slot delay input to AND circuit 102
The result is input to the AND circuit 103, and 64 times
The signal delayed by the slot is input to the AND circuit 104.
You. The other inputs of the AND circuits 101 to 104 are shown in FIG.
Timing signal PSS generated from the second decoder 56
1 to PSS4 are respectively input. Each AND circuit 101-
The output of 104 is applied to OR circuit 105 and delayed
The pitch synchronization signal PS1D is obtained. Each signal PSS1
The generation timing of PSS4 is shown in parentheses in FIG.
As you did. There, for example, "1y8"
Display is the first time slot in 8 time slot cycle
Indicates that the signal "1" is generated. Therefore, Taimin
Is "1y8, 3y8" in the case of the switching signal PSS1?
The first and third time slots in an eight time slot cycle
A signal "1" is generated for each lot. Each signal in FIG.
The display in parentheses of PSS1 to PSS4 and the display of PS1 in FIG.
As you can see from the channel timing,
The signal PSS1 is the tie between channels 1 and 3 in PS1.
And PSS2 is the channel in PS1.
It becomes “1” at the timing of channels 2 and 6, and PSS3 becomes
"1" at the timing of channels 3 and 7 in PS1
And PSS4 is the channel 4 and 8 of PS1
It becomes "1" at the timing. Thus, channel 1
And 5 pitch synchronization signals PS1 are 24 time slots, 2
PS1 of and 6 is 40 time slots, PS1 of 3 and 7 is
48 time slots, PS1 of 4 and 8 are 64 time slots
, The pitch synchronization signal P delayed from the delay
S1D. Thus the delay time depending on the channel
The reason is that the adaptive digital filter device
21 (FIG. 10) of each channel 1-4, 5-8
This is because the calculation timing is adjusted. Referring back to FIG. 15, the delayed pitch synchronization signal
PS1D is further delayed by 8 time slots by the delay circuit 506
Then, it is supplied to the input SA of the selector 504. SEREC
Data 504 is a signal that the signal PS1D of a certain channel is "1".
The filtered sampled value data for that channel.
From the shift register 502 and the shift register 50
Enter 5 Otherwise, shift register 50
5 is cyclically held via the B input of the selector 504.
It is. Thus, the selector 504 and the shift register 5
In the circuit 05, the filtered sun
The pull value data is the pitch of the musical tone that should be generated on that channel.
Resampled in synchronization with the switch. <Pitch Synchronous / Asynchronous Off of Filter Operation
Change> from microcomputer interface 44 (FIG. 10) to FIG.
Pitch synchronous / asynchronous designation signal given to the OR circuit 51
No. PASY is always used when performing a filter operation in pitch synchronization.
And the input interface 38 is pitch-synchronized.
Filter operation request signals φF1 to φF1 in response to signal PS1
F8 and generate a delayed pitch synchronization signal PS1D
You. Therefore, when the pitch synchronization signal PS1 is generated,
Synchronized with the pitch of the tone signal to be filtered
Digital filter operation is performed in the sampling cycle.
You. As a result, the obtained filter characteristics
Be a point. Perform filter operation without synchronizing to pitch
In this case, always specify the pitch synchronous / asynchronous designation signal PASY.
Set to “1”. Therefore, the output of the OR circuit 51 in FIG.
Always "1" regardless of the presence or absence of the pitch synchronization signal PS1
Becomes Therefore, the input interface 38
At regular intervals every operation cycle (64 time slots)
Filter operation request signals φF1 to φF8 and signal PS1D.
Occur. Therefore, the support in digital filter operation
The sampling frequency is constant regardless of the pitch (for example, 50
kHz), and the obtained filter characteristics are fixed
Be a point. <Modification> Pitch synchronization output shown in FIG.
The circuit 50 uses the shift registers 502 and 505
Pitch synchronization processing is performed by channel time division.
Not limited to this, storage circuits are provided in parallel for each channel,
The pitch synchronization processing may be performed in a row. The above
In the example, the coefficient shows symmetry as a digital filter.
Although an FIR filter is used, the present invention is not limited to this.
A number of FIR filters may be used. Also, filter type
The formula is not limited to FIR, but IIR (infinite impulse response) and so on.
May be used. As shown in FIG.
The storage format of the parameter memory is limited to this.
Various changes are possible. Also, parameter memory
The method of addressing is not limited to the procedure shown in the above embodiment,
Various changes are possible. For example, in the embodiment,
Access the touch table first, then touch group
Cable, but this may be reversed.
No. In FIG. 14, the data is read out to the program memory 451.
The microprogramming method that stores the procedure in advance is adopted.
Reading the parameter memory 47.
The micro program method
Regardless of the formula, a completely hard-wired circuit or a complete
Read control by all software programs
You may make it. In the above embodiment, the parameter determining factor
Are three types: pitch / range, key touch, and tone type
However, it is not limited to this. For example, parameter determination of elapsed time
Factors that change with the passage of time
The filter parameter may be read. On the spot
In this case, the parameter processing unit 45 in FIG.
It shall be appropriately designed so that it can operate even during sound production.
In addition, operation of appropriate manual controls such as brilliance controls
The output according to the quantity may be used as a parameter determinant.
No. In the above-described embodiment, the present invention is applied to a double tone electronic musical instrument.
Is applied to the single-tone electronic musical instrument.
Of course, it can be applied. In addition, a dedicated
Not only for musical instruments, but also for musical signal generation or processing
In general, the present invention can be applied. The above
In the example, the adaptive digital
Digital music signal signal input to the
The pull value data itself is sampled in synchronization with the pitch
It is assumed that the state has been
Absent. For example, with a fixed sampling cycle that is asynchronous in pitch
Digitally sampled digital tone signal
Even when inputting to the filter device, the pitch synchronization signal
Do not resample the input digital tone signal.
To perform the filter operation synchronized with the pitch.
Just do it. In the above embodiment, the pitch synchronization signal
The path is contained within the tone generator and occurs there
Adaptive digital filter
It is introduced into the device, but is not limited to this. An example
For example, a digit with a sampling period synchronized with the pitch
When inputting a musical tone signal to a digital filter,
Of change in sample value data of digital tone signal
To generate a pitch synchronization signal,
Filter operation is controlled by the pitch synchronization signal
You may make it. As described above, according to the present invention, the timbre
And the total number of combinations of the first and second parameter determinants
Parameters to be compared and stored in parameter storage means
Saves memory capacity by reducing the number of sets
can do. In particular, key touch, range or time
For various combinations of various types of parameter determinants such as progress
Therefore, when trying to perform delicate tone control,
Such sound without grandchild by parameter memory configuration
This is advantageous because color control can be performed. Also this
According to the invention, the first and second group address storage means are provided.
Hierarchical including stages and parameter address storage means
Adopt addressing configuration and use parameter storage
And read the parameters from the
Here, the first group address storage means
Group the values of the first parameter determinant for each timbre.
The first group related to the group for each tone
Because the address data is stored, it is optimal for the tone
Grouping is possible, and the optimal parameters
Meter generation can be performed with a simple configuration.
The effect is excellent. Also, group
This reduces the overall data volume and simplifies the configuration.
Can be abbreviated. Furthermore, parameter address storage
The means comprises a timbre, a first parameter determinant and a second parameter determinant.
Parameter corresponding to the combination of parameter determinants of
The parameter to be read from the data storage means
Parameter address indicating the address in the storage means
Data is stored, but the stored
Each of the parameter address data includes the tone color,
The first parameter determinant group and the second parameter
Data for different combinations of groups of data determinants.
Pointing to the same address in parameter storage means
Therefore, even if the combinations are various,
Without increasing the amount of storage parameters
It is possible to supply appropriate parameters according to various combinations.
It has an excellent effect.
【図面の簡単な説明】
【図1】 この発明の一実施例に係る電子楽器の全体構
成を示すブロック図。
【図2】 同実施例における主要な信号のタイミングを
示すタイミングチャート。
【図3】 図1のトーンジェネレータ内に含まれるピッ
チ同期信号発生回路の一例を示すブロック図。
【図4】 FIRフィルタの基本構成を示すブロック
図。
【図5】 直線位相FIRフィルタにおけるインパルス
応答の対称性の一例を次数Nが奇数のときについて示す
グラフ。
【図6】 直線位相FIRフィルタにおけるインパルス
応答の対称性の一例を次数Nが偶数のときについて示す
グラフ。
【図7】 直線位相FIRフィルタにおける周波数応答
特性の一例を次数Nが奇数のときについて示すグラフ。
【図8】 直線位相FIRフィルタにおける周波数応答
特性の一例を次数Nが偶数のときについて示すグラフ。
【図9】 フィルタ係数を求めるための手順の一例を示
すフローチャート。
【図10】 図1におけるアダプティブディジタルフィ
ルタ装置の一例を示すブロック図。
【図11】 図10における入力インタフェースの一例
を示すブロック図。
【図12】 図10におけるタイミング信号発生回路の
一例を示すブロック図。
【図13】 図10におけるステートメモリと乗算器及
びアキュムレータ部の一例(すなわちFIR型ディジタ
ルフィルタ回路の一例)を示すブロック図。
【図14】 図10におけるパラメータプロセシングユ
ニットとパラメータ供給回路の一例を示すブロック図。
【図15】 図10におけるピッチ同期出力回路の一例
を示すブロック図。
【図16】 フィルタ演算タイミングを制御する各種信
号の発生例を示すタイミングチャート。
【図17】 図13に示されたディジタルフィルタ回路
において偶数次(32次)から成るフィルタ特性を実現
する場合のFIR型フィルタ演算の基本動作を説明する
ための略図。
【図18】 同じディジタルフィルタ回路において奇数
次(31次)から成るフィルタ特性を実現する場合のF
IR型フィルタ演算の基本動作を説明するための略図。
【図19】 図13に示したようなA、B2系列のディ
ジタルフィルタ回路における8チャンネル分のフィルタ
演算動作タイミングを示す図。
【図20】 図10及び図14に示されたパラメータメ
モリにおける記憶フォーマットの一例を示す図。
【符号の説明】
10 鍵盤
11 鍵タッチ検出器
18 トーンジェネレータ
19 ピッチ同期信号発生回路
21,22 アダプティブディジタルフィルタ装置
40,42 ステートメモリ
41,43 乗算器及びアキュムレータ部
45 パラメータプロセシングユニット
47 パラメータメモリ
50 ピッチ同期出力回路BRIEF DESCRIPTION OF THE DRAWINGS FIG. 1 is a block diagram showing the overall configuration of an electronic musical instrument according to one embodiment of the present invention. FIG. 2 is a timing chart showing timings of main signals in the embodiment. FIG. 3 is a block diagram showing an example of a pitch synchronization signal generation circuit included in the tone generator of FIG. 1; FIG. 4 is a block diagram showing a basic configuration of an FIR filter. FIG. 5 is a graph showing an example of the symmetry of the impulse response in the linear phase FIR filter when the order N is an odd number. FIG. 6 is a graph showing an example of the symmetry of an impulse response in a linear phase FIR filter when the order N is an even number. FIG. 7 is a graph showing an example of a frequency response characteristic of a linear phase FIR filter when an order N is an odd number. FIG. 8 is a graph showing an example of a frequency response characteristic of the linear phase FIR filter when the order N is an even number. FIG. 9 is a flowchart illustrating an example of a procedure for obtaining a filter coefficient. FIG. 10 is a block diagram showing an example of the adaptive digital filter device in FIG. 1; FIG. 11 is a block diagram showing an example of an input interface in FIG. 10; FIG. 12 is a block diagram illustrating an example of a timing signal generation circuit in FIG. 10; 13 is a block diagram showing an example of a state memory, a multiplier, and an accumulator unit in FIG. 10 (that is, an example of an FIR digital filter circuit). FIG. 14 is a block diagram showing an example of a parameter processing unit and a parameter supply circuit in FIG. 10; FIG. 15 is a block diagram showing an example of a pitch synchronization output circuit in FIG. 10; FIG. 16 is a timing chart showing an example of generation of various signals for controlling filter operation timing. FIG. 17 is a schematic diagram for explaining a basic operation of an FIR type filter operation in a case where filter characteristics of an even order (32 order) are realized in the digital filter circuit shown in FIG. 13; FIG. 18 is a diagram showing a case in which an odd-order (31st-order) filter characteristic is realized in the same digital filter circuit.
5 is a schematic diagram for explaining a basic operation of an IR-type filter operation. FIG. 19 is a diagram showing filter operation timings for eight channels in the digital filter circuits of the A and B2 series as shown in FIG. 13; FIG. 20 is a diagram showing an example of a storage format in the parameter memory shown in FIGS. 10 and 14. DESCRIPTION OF SYMBOLS 10 keyboard 11 key touch detector 18 tone generator 19 pitch synchronizing signal generating circuit 21, 22 adaptive digital filter device 40, 42 state memory 41, 43 multiplier and accumulator unit 45 parameter processing unit 47 parameter memory 50 pitch Synchronous output circuit
Claims (1)
と、音色情報、第1のパラメータ決定因子情報および第2の
パラメータ決定因子情報を夫々入力する入力手段と、 音色毎に前記第1のパラメータ決定因子の各値をグルー
プ分けし、音色毎に該グループに関する第1のグループ
アドレスデータを記憶した第1のグループアドレス記憶
手段と、 前記第2のパラメータ決定因子の各値をグループ分け
し、該グループに関する第2のグループアドレスデータ
を記憶した第2のグループアドレス記憶手段と、 音色、第1のパラメータ決定因子および第2のパラメー
タ決定因子 の組合せに対応して前記パラメータ記憶手段
から読み出すべきパラメータの該パラメータ記憶手段に
おけるアドレスを指示するパラメータアドレスデータを
それぞれ記憶するものであって、記憶された当該各パラ
メータアドレスデータの中には前記音色、第1のパラメ
ータ決定因子のグループおよび第2のパラメータ決定因
子のグループの異なる組合せに対して前記パラメータ記
憶手段における同じアドレスを指示するものがあること
を特徴とするパラメータアドレス記憶手段と、前記音色情報および第1のパラメータ決定因子情報の入
力に対応して、該入力によって特定される音色および第
1のパラメータ決定因子の組合せに対応する特定の第1
のグループアドレスデータを前記第1のグループアドレ
ス記憶手段から読み出すとともに、前記第2のパラメー
タ決定因子情報の入力に対応して、該入力に対応する第
2のグループアドレスデータを前記第2のグループアド
レス記憶手段から読み出し、該読み出した第1および第
2のグループアドレス の組合せに対応する特定のパラメ
ータアドレスデータを前記パラメータアドレス記憶手段
から読み出して、読み出したパラメータアドレスデータ
に応じて前記パラメータ記憶手段から1組のパラメータ
を読み出す読出し手段とを具え、読み出したパラメータ
を楽音の設定又は制御のために供給するようにした電子
楽器のパラメータ供給装置。 2.前記第1及び第2のパラメータ決定因子は、発生す
べき楽音の音高又は音域情報及びタッチ情報に夫々対応
するものである請求項1に記載の電子楽器のパラメータ
供給装置。(57) [Claims] Parameter storage means for storing a plurality of sets of parameters, timbre information, first parameter determinant information, and second
An input unit for inputting parameter determinant information; and a group of values of the first parameter determinant for each timbre.
The first group related to the group for each tone
First group address storage storing address data
Means and grouping each value of the second parameter determinant
And second group address data related to the group.
A second group address storing means for storing the timbre, the first parameter determining factor, and the second parameter.
It is one that each store parameters address data indicating the address in the parameter of the parameter memory means to correspond to a combination of data determinants read from the parameter storage unit, the stored the respective para
The tone color and the first parameter are included in the meter address data.
Determinant group and second parameter determinant
A parameter address storage means for designating the same address in the parameter storage means for different combinations of child groups ; and input of the timbre information and the first parameter determinant information.
The timbre specified by the input and the
A specific first corresponding to one parameter determinant combination
Group address data of the first group address.
Read out from the storage means, and read the second parameter
Data corresponding to the input of the determinant information,
2 group address data in the second group address.
The first and second readouts from the
A specific parameter corresponding to the combination of group addresses
Reads over data address data from said parameter address memory means, the read parameter address comprising a read means for reading a set of parameters from said parameter memory means in accordance with the data, for the read-out parameter settings or control of the tone A parameter supply device for an electronic musical instrument adapted to be supplied to the electronic musical instrument. 2. It said first and second parameter determining factors, parameter supply device for an electronic musical instrument according to claim 1 in which each corresponding to the pitch or tone range information and touch information tone to be generated.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP7236170A JP2697701B2 (en) | 1995-08-21 | 1995-08-21 | Electronic musical instrument parameter supply device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP7236170A JP2697701B2 (en) | 1995-08-21 | 1995-08-21 | Electronic musical instrument parameter supply device |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP61117522A Division JP2668676B2 (en) | 1985-11-29 | 1986-05-23 | Filter parameter supply device |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH08129382A JPH08129382A (en) | 1996-05-21 |
JP2697701B2 true JP2697701B2 (en) | 1998-01-14 |
Family
ID=16996815
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP7236170A Expired - Fee Related JP2697701B2 (en) | 1995-08-21 | 1995-08-21 | Electronic musical instrument parameter supply device |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2697701B2 (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4990099B2 (en) * | 2007-11-02 | 2012-08-01 | ダイヤモンド電機株式会社 | Combustion control device and combustion control method for internal combustion engine |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS5840593A (en) * | 1981-09-04 | 1983-03-09 | ヤマハ株式会社 | Electronic musical instrument |
JPS5950498A (en) * | 1982-09-16 | 1984-03-23 | ヤマハ株式会社 | Electronic musical instrument |
-
1995
- 1995-08-21 JP JP7236170A patent/JP2697701B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JPH08129382A (en) | 1996-05-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US4841828A (en) | Electronic musical instrument with digital filter | |
JPH079588B2 (en) | Musical sound generator | |
JPH0772829B2 (en) | Parameter supply device for electronic musical instruments | |
JPH0213319B2 (en) | ||
JPH0766267B2 (en) | Musical sound generator | |
JPS6310434B2 (en) | ||
US4939973A (en) | Tone signal generation device having waveshape changing means | |
JP2697701B2 (en) | Electronic musical instrument parameter supply device | |
JPH0230032B2 (en) | ||
JPS5925235B2 (en) | electronic musical instruments | |
JP2915452B2 (en) | Tone generator | |
JPS648838B2 (en) | ||
US6207885B1 (en) | System and method for rendition control | |
JPH0636149B2 (en) | Digital filter device | |
JPH0644702B2 (en) | Digital filter device | |
JPH052013B2 (en) | ||
JPS62129892A (en) | Filter parameter feeder | |
JPS62131297A (en) | Electronic musical apparatus | |
JPS62127899A (en) | Musical sound signal processor using digital filter | |
JP3878457B2 (en) | Effect device | |
JPH02181797A (en) | Musical tone signal synthesizer | |
US5315058A (en) | Electronic musical instrument having artificial string sound source with bowing effect | |
JP2580761B2 (en) | Music signal generator | |
JPH0117595B2 (en) | ||
JPH06149262A (en) | Method and device for musical sound synthesis |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
LAPS | Cancellation because of no payment of annual fees |