JP2668676B2 - Filter parameter supply device - Google Patents
Filter parameter supply deviceInfo
- Publication number
- JP2668676B2 JP2668676B2 JP61117522A JP11752286A JP2668676B2 JP 2668676 B2 JP2668676 B2 JP 2668676B2 JP 61117522 A JP61117522 A JP 61117522A JP 11752286 A JP11752286 A JP 11752286A JP 2668676 B2 JP2668676 B2 JP 2668676B2
- Authority
- JP
- Japan
- Prior art keywords
- signal
- filter
- data
- parameter
- channel
- 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
【発明の詳細な説明】
〔産業上の利用分野〕
この発明は、ディジタルフィルタのためのフィルタパ
ラメータ供給装置に関し、電子楽器その他の楽音発生機
能を有する機器あるいはディジタル音声処理機器等にお
いて用いられるものである。
〔従来の技術〕
電子楽器の音色回路にディジタルフィルタを用いるこ
とは、例えば特開昭59−44096号公報において示されて
いる。1組のフィルタパラメータがディジタルフィルタ
に供給され、これに応じてフィルタ特性(振幅一周波数
特性)が設定される。音色決定因子の各内容に対応して
複数組のフィルタパラメータがメモリに予め記憶され、
選択された音色決定因子の内容に応じて1組のフィルタ
パラメータが読み出される。
〔発明が解決しようとする問題点〕
従来のものにおいては、複数の音色決定因子(例えば
鍵タッチ、音域、定常的な音色選択情報、時間経過に応
じた情報、ブリリアンス操作子等手動操作子の操作量な
ど)に応じて異なる音色制御を行う場合には、各音色決
定因子の組合せに1対1に対応させて複数組のフィルタ
パラメータをメモリに記憶しておかねばならなかった。
例えば、44通りの音域、16通りの鍵タッチグループ、32
通り定常音色、の組合せのすべて(22528通り)に1対
1で対応して個別にフィルタパラメータを記憶する場
合、パラメータメモリには22528組のパラメータを記憶
し得る大容量が要求される。
この発明は上述の点に鑑みてなされたもので、複数の
音色決定因子(パラメータ決定因子)の組合せに応じて
1組のフィルタパラメータをディジタルフィルタに供給
するようにする場合において、パラメータメモリの容量
を節約できるようにしたフィルタパラメータ供給装置を
提供しようとするものである。
〔問題点を解決するための手段〕
この発明に係るフィルタパラメータ供給装置は、複数
組のフィルタパラメータを記憶したパラメータ記憶手段
と、複数のパラメータ決定因子の組合せに対応して前記
パラメータ記憶手段から読み出すべきフィルタパラメー
タの該パラメータ記憶手段におけるアドレスを指示する
アドレスデータをそれぞれ記憶するものであって、記憶
された当該各アドレスデータの中には前記パラメータ決
定因子の異なる組合せに対して前記パラメータ記憶手段
における同じアドレスを指示するものがあることを特徴
とするパラメータアドレス記憶手段と、パラメータ決定
因子の組合せを特定する入力に対応して、該入力によっ
て特定されるパラメータ決定因子の組合せに対応する特
定のアドレスデータを前記パラメータアドレス記憶手段
から読み出し、読み出したアドレスデータに応じて前記
パラメータ記憶手段から1組のフィルタパラメータを読
み出す読み出し手段とを具えたことを特徴とする。これ
を概略的に図示すると、第1図のようであり、110はパ
ラメータ記憶手段、111はパラメータアドレス記憶手
段、112は読出し手段、113は読み出した1組のフィルタ
パラメータが供給されるディジタルフィルタ、である。
パラメータ決定因子を示すデータとしては、例えば、押
圧鍵を示すキーコード、鍵タッチを示すタッチデータ、
選択された定常音色を示す音色コード、時間経過に応じ
た情報、適宜の手動操作子出力情報、などを用いること
ができる。
〔作用〕
パラメータ決定因子の組合せに対応して、パラメータ
記憶手段からフィルタパラメータが直接読み出されるの
ではなく、パラメータアドレス記憶手段から該パラメー
タ記憶手段を読み出すためのアドレスデータが読み出さ
れ、このアドレスデータに応じて該パラメータ記憶手段
から1組のフィルタパラメータが読み出される。従っ
て、パラメータ決定因子の組合せに対応して1対1でデ
ータを記憶しているのはパラメータアドレス記憶手段で
あり、パラメータ記憶手段ではない。パラメータアドレ
ス記憶手段は単にアドレスデータだけを記憶するもので
あるのでそれほどの大容量は要求されない。パラメータ
記憶手段は複数組のフィルタパラメータを記憶するもの
であり、1組のフィルタパラメータが複数次数のフィル
タ係数からなるものであるので、比較的大きな容量が要
求される。しかし、パラメータ決定因子の組合せに対応
して記憶したアドレスデータに基づきパラメータを読み
出すようにした間接アドレス方式であるため、パラメー
タ決定因子の組合せのすべてに1対1で対応してフィル
タパラメータを記憶する必要がなくなり、パラメータ記
憶手段ではその組合せ数よりも少ない数のパラメータ組
を記憶するだけでもよいことになる。つまり、パラメー
タ決定因子の組合せが異なっていてもフィルタパラメー
タは共通のものを使用することができる場合があるの
で、パラメータ記憶手段に記憶しておくパラメータの組
数を少なくし、これによりメモリ容量を節約することが
できる。例えば、前述の音域、鍵タッチ、音色種類から
なる22528通りの組合せに対しては、僅か2620組のパラ
メータをパラメータ記憶手段に記憶しておけば対処でき
ることが後述の実施例において示されている。このよう
な場合、パラメータ決定因子の或る組合せに応じてパラ
メータアドレス記憶手段から読み出されたアドレスデー
タと別の組合せに応じて読み出されたアドレスデータと
が同じであることがあり、パラメータ記憶手段からはこ
の異なる組合せの各々に対応して同じパラメータを読み
出す。
〔発明の効果〕
従ってこの発明によれば、パラメータ決定因子の組合
せの総数に比較してパラメータ記憶手段で記憶しておく
パラメータ組数を少なくすることができるので、メモリ
容量を節約することができる。特に、鍵タッチや音域あ
るいは時間経過など多種類のパラメータ決定因子の多様
な組合せによって微妙な音色制御を行おうとする場合
に、節約したパラメータメモリ構成によって遜色のない
そのような音色制御を行うことができるので有利であ
る。すなわち、この発明によれば、複数のパラメータ決
定因子の組合せの各々に対応するパラメータ記憶手段読
出し用のアドレスデータをパラメータアドレス記憶手段
においてそれぞれ記憶しておくことにより、複数のパラ
メータ決定因子の組合せに従う音色制御を、多様な制御
状態で行なえることになり、夫々の組合せに最適な高品
質の音色制御が行なえるようになる、という効果を奏す
ると共に、これらの各アドレスデータの中には、パラメ
ータ決定因子の異なる組合せに対してパラメータ記憶手
段における同じアドレスを指示するものがあることを特
徴としていることにより、パラメータ記憶手段において
実際に記憶するパラメータ数を、可能なパラメータ決定
因子の組合せ数よりも少数とすることができ、メモリ容
量を節約することができる、という効果を奏する。
〔実施例〕
以下、添付図面を参照してこの発明の実施例を詳細に
説明しよう。
<一実施例の全体構成説明>
第2図において、鍵盤10は発生すべき楽音の音高を指
定するための複数の鍵を具備している。鍵タッチ検出器
11は、鍵盤10で押圧された鍵に加えられたタッチを検出
するものであり、イニシャルタッチあるいはアフタータ
ッチのどちらを検出するものであってもよい。音色選択
装置12は発生すべき楽音の音色を選択する操作子群から
成るものである。ピッチベンド操作子13は、発生すべき
楽音のピッチをその操作量に応じて連続的に変調するた
めのものであり、例えば、ダイヤル式の操作子から成
る。マイクロコンピュータ14は、CPU(中央処理ユニッ
ト)15、プログラム及びその他データを記憶しているRO
M(リード・オンリメモリ)16、ワーキング及びデータ
記憶用のRAM(ランダムアクセスメモリ)17を含んでお
り、データ及びアドレスバス28を介して電子楽器内の各
回路との間でデータの授受を行い、鍵盤10における押鍵
検出処理及び複数の発音チャンネルに対する押圧鍵の発
音割当て処理、音色選択装置12における音色選択操作の
検出処理、ピッチベント操作子13における操作量の検出
処理、その他種々の処理を実行する。
トーンジェネレータ18は複数の発音チャンネルで夫々
独立にディジタル楽音信号を発生することが可能なもの
であり、各チャンネルに割当てた鍵を示すキーコードKC
及び該鍵のオン・オフを示すキーオン信号KONその他必
要なデータをマイクロコンピュータ14からバス28を介し
て受け取り、これに基づき各チャンネルでディジタル楽
音信号を発生する。トーンジェネレータ18の内部にはピ
ッチ同期信号発生回路19を含んでおり、各チャンネルで
発生する楽音信号のピッチに同期するピッチ同期信号を
各チャンネル毎に発生する。
この実施例の使用においては、トーンジェネレータ18
は第1乃至第16チャンネル(Ch1〜Ch16)の合計16チャ
ンネルで時分割的にディジタル楽音信号を発生する。ト
ーンジェネレータ18から時分割多重的に出力されるディ
ジタル楽音波形サンプル値データをTDXで示す。マスタ
クロック発生器20から発生されるマスタクロックパルス
φは、トーンジェネレータ18の基本的な動作時間を制御
するものである。ディジタル楽音波形サンプル値データ
TDXの時分割多重化の1サイクルはマスタクロックパル
スφの64周期であり、この1サイクル64周期における各
周期毎のタイムスロットを1〜64の番号を付して示すと
第3図のようである。同図には、多重化されたディジタ
ル楽音波形サンプル値データTDXのチャンネルタイミン
グ1〜16の仕様も示されている。例えば、第1チャンネ
ルのデータTDXはタイムスロット33〜36の4スロットに
割当てられている。
この実施例の仕様においては、楽音波形サンプル値デ
ータTDXは16チャンネル分のデータが上述のように共通
に多重化されて出力されるが、各チャンネルのピッチ同
期信号SP1,SP2は2系統に分けて8チャンネル毎に時分
割多重化されて出力される。一方のピッチ同期信号PS1
は第1〜第8(Ch1〜Ch8)のピッチ同期信号を時分割多
重化したもので、そのチャンネルタイミングは第3図の
ようである。他方のピッチ同期信号PS2は第9〜第16図
(Ch9〜Ch16)のピッチ同期信号を時分割多重化したも
ので、そのチャンネルタイミングは第3図ようである。
図から明らかなように、各チャンネルのピッチ同期信号
PS1,PS2は1タイムスロットの幅で発生し、その時分割
多重化の1サイクルは8タイムスロットである。
2系列のアダプティブディジタルフィルタ装置(以下
ADFと略称することがある)21、22は、楽音信号のフィ
ルタリングに適するように構成されたディジタルフィル
タ装置であって、この実施例の仕様では夫々8チャンネ
ル分の楽音信号のフィルタリングが可能であり、一方の
ADF21は第1〜第8チャンネルの楽音信号のフィルタリ
ングを行い、他方のADF21は第9〜第16チャンネルの楽
音信号のフィルタリングを行う。このADF21,22の内部に
は、所定の型式のディジタルフィルタ回路、フィルタパ
ラメータメモリ、フィルタパラメータの供給を制御する
各種回路、フィルタを施すべき楽音信号のピッチに同期
してフィルタ演算動作を行わせる制御回路、フィルタを
施した楽音信号をそのピッチに同期して出力するピッチ
同期出力回路、など各種機能の回路が含まれており、楽
音信号のフィルタリングに適した構成となっている。
トーンジェネレータ18から出力されたディジタル楽音
波形サンプル値データTDXはADF21及び22に入力される。
また、第1〜第8チャンネルのピッチ同期信号PS1はADF
21に入力され、第9〜第16チャンネルのピッチ同期信号
PS2はADF22に入力される。ADF21及び22では、ピッチ同
期信号PS1、PS2が発生した(信号“1"となった)タイム
スロットに対応するチャンネルのデータTDXを内部に取
り込み、そのチャンネルの1サンプル値データに関して
フィルタ演算を実行する。従って、一方のADF21では、
ピッチ同期信号PS1に応じて第1〜第8チャンネルの楽
音信号のフィルタ演算を行い、他方のADF22では、ピッ
チ同期信号PS2に応じて第9〜第16チャンネルの楽音信
号のフィルタ演算を行う。こうして、ADF21及び22にお
けるフィルタ演算の単位時間(サンプリング周期に同期
した信号遅延時間)がフィルタを施すべき楽音信号のピ
ッチに同期したものとなり、ピッチに応じてフィルタ演
算時間が変動することにより移動フォルマント特性のフ
ィルタリングが実現される。なお、回路の基本的な動作
タイミングを制御するためにマスタクロックパルスφと
システムシンクロパルスSYNCがADF21及び22に与えられ
る。システムシンクロパルスSYNCは第3図に示すように
64タイムスロット周期で発生するパルスであり、ディジ
タル楽音信号の時分割多重化の1サイクルに同期してい
る。また、ADF21及び22には、フィルタ動作を制御する
ための各種のデータがバス28を介してマイクロコンピュ
ータ14の制御の下で与えられる。
また、このADF21及び22では、実際のフィルタ演算動
作がフィルタを施すべき楽音信号のピッチに同期して行
われるのみならず、フィルタ済みの楽音波形サンプル値
データをそのピッチに同期してサンプリングし直し、完
全にピッチ同期させた状態で出力するようになってい
る。このフィルタ済みデータをピッチに同期して再サン
プリングするためにもピッチ同期信号PS1、PS2が利用さ
れる。
ADF21及び22出力された各チャンネルのディジタル楽
音波形サンプル値データをアキュムレータ23で合計し、
16チャンネル分のサンプル値データを合計した楽音波形
サンプル値データを求める。アキュムレータ23の出力デ
ータをディジタル/アナログ変換器24でアナログの楽音
信号に変換し、サウンドシステム25を介して発音する。
この実施例の仕様において、フィルタ係数の供給は2
つのモードで制御される。1つは「スタティックモー
ド」であり、これは楽音の発音期間中はフィルタ係数を
変更しないモードである。もう1つは「ダイナミックモ
ード」であり、これは楽音の発音期間中はフィルタ係数
を時間的に変化させるモードであり、フィルタリングに
よる音色の時間的変化が得られる。スタティックモード
のためのフィルタ係数は、ADF21及び22の内部のフィル
タパラメータメモリ内に記憶されている。ダイナミック
モードのためのフィルタ係数は、ダイナミック制御用パ
ラメータメモリ26に記憶されており、これはマイクロコ
ンピュータ14の制御の下で時間的に切替えて読み出さ
れ、バス28を介してADF21及び22に与えられる。ダイナ
ミック/スタティック選択スイッチ27は、フィルタ係数
の供給をどちらのモードで制御するかを選択するための
スイッチである。
なお、クロック周波数について一例を示すと、マスタ
クロックパルスφは約3.2MHzであり、ピッチ同期信号PS
1,PS2の時分割1サイクル(8タイムスロット)の繰返
し周波数は400kHzであり、ディジタル楽音波形サンプル
値データTDXの時分割1サイクル(フィルタにおける1
演算サイクル)(64タイムスロット)の繰返し周波数は
50kHZである。
次に、第2図における各回路の詳細例について説明す
る。
<ピッチ同期信号の発生について>
第4図はピッチ同期信号発生回路19の一例を示すもの
で、これは一方の系統(第1〜第8チャンネル)のピッ
チ同期信号PS1を発生する。もう一方のピッチ同期信号P
S2も第4図と同一の構成によって発生される。
ピッチ同期信号PS1は、Pナンバメモリ29から読み出
したPンバをカウンタ30で各チャンネル毎に時分割的に
カウントすることに基づき発生される。Pナンバとは、
或る基準オクターブにおける各音名C〜Bに対応する周
波数を持つ楽音波形の1周期中のサンプル点数を示す数
である。ピッチ同期信号PS1を第3図に示すように8チ
ャンネル時分割で発生するようにする場合、その基本的
なサンプリング周波数(換言すればピッチ同期信号PS1
の分解能)はマスタクロックパルスφの1/8の周波数
(例えば400kHz)であり、これはどの音名でも共通であ
る。他方、基本的なサンプリング周波数が共通であるた
め、各音名のPナンバは、その音名周波数に対応して夫
々異なる値を示す。基準オクターブにおける或る音名の
周波数をfnとし、上述の共通のサンプリング周波数(40
0kHz)をfcとすると、その音名に対応するPナンバは次
のようにして定まる。
Pナンバ=fc÷fn …(1)
ここで、共通サンプリング周波数fcがfc=400kHz、音
名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を各音名のPナンバ
と実効サンプリング周波数feを下記表のように決定する
ことができる。この場合、基準オクターブはG4音からF
#5音までの1オクターブである。
第4図のカウンタ30において、ピッチ同期信号PS1
は、マスタクロックパルスφに基づき確立される共通サ
ンプリング周波数fcをPナンバに応じて分周することに
より得られる。前述から明らかなように、Pナンバは1
周期波形中の共通サンプリング周波数fcの周期数つまり
サンプル点数であり、一方、トーンジェネレータ18で発
生可能な楽音波形1周期当りの実効的なサンプル点数は
前述の通り64である。従って、共通サンプリング周波数
fcを分周する分周数を
分周数=Pナンバ÷64 …(3)
とすれば、その分周出力として楽音1周期当り4個のパ
ルスを得ることができ、これにより64個の実効的なサン
プル点をすべて確立することができる。このようにして
定まる分周数によって共通サンプリング周波数fcを分周
すると、前記(1)、(2)、(3)式より、
fc÷分周数=(fn×Pナンバ)÷(Pナンバ÷64)
=fn×64=fe …(4)
となり、この分周出力によってサンプル点アドレスを変
化させることにより実効サンプリング周波数feを確立す
ることができる。このようにして確立される実効サンプ
リング周波数feは、音名周波数fnに調和しており、ピッ
チ同期が実現される。カウンタ30から発生される各チャ
ンネルのピッチ同期信号PS1はそのチャンネルに割当て
られた鍵の音名に対応して上記(4)式で示されるよう
な分周出力信号すなわち実効サンプリング周波数feを持
つ信号である。
ところで上記(3)式で定まる分周数は整数になると
は限らず、小数を含むことが多い。例えば、音名Aの場
合、
分周数=909÷64≒14.20
である。そこで、カウンタ30における分周動作は、後述
のように、(3)式で定まる分周数に近い2つの整数で
適宜分周し、その平均的な結果として(3)式で定まる
分周数で分周したのと同じ結果が得られるようにしてい
る。
第4図において、Pナンバメモリ29は、前記第1表に
示すような基準オクターブにおける各音名のPナンバを
予め記憶している。各チャンネルに割当てられた鍵のキ
ーコードKCがバス28を介してトーンジェネレータ18に与
えられ、該トーンジェネレータ18の内部において第1〜
第8チャンネルのキーコードKCが第3図PS1のチャンネ
ルタイミングに示すようなタイミングで時分割多重化さ
れ、第9〜第16チャンネルのキーコードKCが第3図のPS
2のチャンネルタイミングに示すようなタイミングで時
分割多重化される。こうして時分割多重化された第1〜
第8チャンネルのキーコードKCがPナンバメモリ29に入
力される。Pナンバメモリ29は入力された第1〜第8チ
ャンネルのキーコードKCの音名に対応してPナンバを時
分割的に読み出す。カウンタ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ビットの信号から成る。
反転キーオンパルス▲▼と加算器35のキャリ
アウト出力COから出力された信号がアンド回路36に入力
されており、このアンド回路36の出力がセレクタ32の選
択制御入力に加わる。アンド回路36の出力信号が“0"の
ときは加算器31からセレクタ32の「0」入力に加えられ
た信号が選択され、“1"のときは「1」入力に与えられ
た信号が選択される。セレクタ32の「1」入力には、シ
フトレジスタ33の出力の下位ビット(小数部)と加算器
35の出力7ビット(整数部)とから成る13ビットの信号
が与えられる。キーオンパルスKONPは鍵の押し始めで一
度だけ“1"となる信号であり、第1〜第8チャンネルに
対応するものが時分割多重化されている。反転キーオン
パルス▲▼はこのキーオンパルスKONPを反転し
た信号である。
セレクタ32、シフトレジスタ33、加算器35の部分は、
Pナンバに応じて前記(3)式に示すような分周数を確
立し、この分周数の整数部に応じて共通サンプリング周
波数fcの分周を行うための回路である。加算器31は、上
記分周数の小数部に応じて前記整数部の値を調整するた
めのものである。
前記(3)式において除数64は26であるため、分周数
を求めるために格別の割算を行うことなく、単に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の周期である。
鍵の押し始めにおいて、その鍵が割当てられたチャン
ネルタイミングで反転キーオンパルス▲▼が一
度だけ“0"となり、このとき、セレクタ32の「0」入力
を介して該鍵のPナンバが選択される。このPナンバの
整数部がシフトレジスタ33から加算器35に与えられ、共
通サンプリング周波数fcの周期で該整数部から1が繰返
し減算される。整数部の減算結果が1以上の値のとき、
加算器35のキャリィアウト出力COからは絶えずキャリィ
アウト信号“1"が出力され、アンド回路36の条件が成立
するので、セレクタ32は「1」入力を選択し続ける。減
算の繰返しによってやがて加算器35の出力が“0"になっ
たときつまりPナンバの整数部の数と同数のfcの周期が
経過したとき、加算器35のキャリィアウト信号は出力さ
れず、アンド回路36の条件は成立しない。そのとき、セ
レクタ32は「0」入力を選択し、Pナンバとシフトレジ
スタ33の下位6ビット(小数部データ)とを加算した加
算器31の出力を選択する。こうして,小数部の加算によ
って幾分変更された値のPナンバがシフトレジスタ33に
与えられ、今度は変更されたPナンバの整数値から1減
算することが繰返される。なお、ゲート34は反転キーオ
ンパルス▲▼によって鍵の押し始めでだけ不能
化され、それ以外のときは常時小数部データを加算器31
に与える。加算器31におけるPナンバに対する小数部デ
ータの加算によって実際に分に使用する分周数の整数値
はPナンバから求まる分周数の整数値よりも1大きくな
ることがある。例えば、音名AのPナンバは909であ
り、その分周数は14.20であるが、最初はその整数値14
に従って分周を行うが、次は14.20+0.20=14.40とな
り、やがで15.00となりその整数値15に従って分周を行
うことになる。こうして、Pナンバによって求まる分周
数の整数値同じか、それよりも1大きい数に従って、共
通サンプリング周波数fcの分周が行われ、平均的な結果
としてPナンバによって求まる分周数に従う分周動作が
達成される、加算器35のキャリィアウト出力COの信号が
その分周出力に相当するものであり、これをインバータ
37で反転した信号がピッチ同期信号PS1として出力され
る。
理解を深めるために、音名Aを例にして、セレクタ32
の出力の変化の一例を示す。変化タイミングは共通サン
プリング周波数fcの周期である。最初はPナンバ909に
対応する分周数14.20であり、次にその整数値が1減っ
た13.20であり、以下、12.20、11.20、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となると共に、加算器32
のキャリィアウト信号が“0"となり、ピッチ同期信号PS
1が発生される。このとき加算器31の出力は14.20+0.40
=14.60であり、これがセレクタ32の「0」入力を介し
てシフトレジスタ33に与えられる。こうして、音名Aの
場合は14又は15を分周数として分周が行われ、共通サン
プリング周波数fc(例えば400kHz)の14又は15サイクル
毎にピッチ同期信号PS1が“1"となる。
もう一方の第9〜第16チャンネルに対応するピッチ同
期信号PS2も上述と同様にして発生される。
<トーンジェネレータの説明>
トーンジェネレータ18においては上述のようにして発
生した各チャンネルのピッチ同期信号PS1、PS2を利用し
て、発生すべき楽音のピッチに同期したサンプリングタ
イミングに従って該楽音信号を発生するようにすること
ができる。勿論、これに限らず、ピッチに同期していな
いサンプリングタイミングに従って楽音信号を発生する
ようにすることも可能である。
発生すべき楽音のサンプル点アドレス(瞬時位相角)
を指定するアドレスデータは、各チャンネルのピッチ同
期信号PS1、PS2をチャンネル別に夫々独立にカウントす
ることにより発生することができる。ただし、ピッチ同
期信号PS1、PS2は前述の基準オクターブ(G4〜F#5
音)のピッチに対応しているので、上記アドレスデータ
を発生する場合は、発生すべき楽音のオクターブ音域に
応じて上記ピッチ同期信号PS1、PS2のカウントの際のカ
ウントレートを切換える必要がある。例えば、G3〜F#
4のオクターブの楽音を発生する場合は、ピッチ同期信
号PS1、PS2が発生する毎に0.5をカウントし、G4〜F#
5のオクターブの楽音を発生する場合は、ピッチ同期信
号PS1、PS2が発生する毎に1をカウントし、G5〜F#6
のオクターブの楽音を発生する場合は、ピッチ同期信号
PS1、PS2が発生する毎に2をカウントする。こうして、
発生すべき楽音のピッチ及びオクターブに同期して変化
するアドレスデータを各チャンネル毎に発生し、このア
ドレスデータに基づきディジタル楽音信号を発生する。
トーンジェネレータ18における楽音信号発生方式はど
のようなものを用いてもよい。例えば、上記アドレスデ
ータに応じて波形メモリに記憶した楽音波形サンプル値
データを順次読み出す方式(メモリ読出し方式)、ある
いは上記アドレスデータを位相角パラメータデータとし
て所定の周波数変調演算を実効して楽音波形サンプル値
データを求める方式(FM方式)、あるいは上記アドレス
データを位相角パラメータデータとして所定の振幅変調
演算を実効して楽音波形サンプル値データを求める方式
(AM方式)、など公知のどのような方式を用いてもよ
い。また、メモリ読出し方式を採用する場合、波形メモ
リに記憶する楽音波形は1周期波形のみであってもよい
が、複数周期波形である方が音質の向上が図れるので好
ましい。複数周期波形を波形メモリに記憶しこれを読み
出す方式は、例えば特開昭52−121313号に示されたよう
に発音開始から終了までの全波形を記憶しこれを1回読
み出す方式、あるいは特開昭58−142396号に示されたよ
うにアタック部の複数周期波形と持続部の1又は複数周
期波形を記憶し、アタック部の波形を1回読み出した後
持続部の波形を繰返し読み出す方式、あるいは特開昭60
−147793号に示されたように離散的にサンプリングした
複数の波形を記憶し、読み出すべき波形を時間的に順次
切換えて指定し、指定された波形を繰返えし読み出す方
式、など種々の方式が公知であり、これらを適宜採用し
てよい。
<アダプティブディジタルフィルタの予備的説明>
ディジタルフィルタの演算型式としては、基本的には
有限インパルス応答(FIR)フィルタと無限インパルス
応答(IIR)フィルタとがあるが、この実施例のアダプ
ティブディジタルィルタ装置21、22においてはFIRフィ
ルタを採用している。まずFIRフィルタに関連する一般
的説明を行う。
(a)FIRフィルタの基本回路構成
第5図はFIRフィルタの基本回路構成図であり、x
(n)は任意のn番目のサンプル点のディジタル楽音波
形サンプル値データであり、該FIRフィルタの入力信号
である。z-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変換すなわち伝達関数は、
と表わされる。
(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
(c)フィルタ係数の対称性
上記(8)式のようにインパルス応答が対称性をもつ
ということは、フィルタ係数h(0)〜h(N−1)が
対称性を持つことを意味する。すなわち、フィルタ係数
を対称特性で設定することにより、前述の直線位相特性
を実現することができるのである。
インパルス応答が対称性の一例を図示すると、次数N
が奇数の場合は第6図のようであり、Nが偶数の場合は
第7図のようである。図から明らかなように、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次までの対称位置
にあるフィルタ係数を利用すればよい。
(d)直線位相FIRフィルタの周波数応答
第6図、第7図のようにインパルス応答が対称性を示
す直線位相FIRフィルタの周波数応答H*(ejω)の
特性を例示すると第8図、第9図のようである。Nが奇
数の場合は第8図のようにω=π(ここでπはサンプリ
ング周波数fsの1/2に対応している)のときのレベルが
0に固定されず、任意に設定できる。Nが偶数の場合は
第9図のようにω=πのときのレベルが必ず0になる。
ここから明らかなように、次数Nが奇数の場合は、フィ
ルタ係数の設定によってハイパスフィルタ特性を実現す
ることが可能であるが、Nが偶数の場合はハイパスフィ
ルタ特性を実現することが可能である。しかし、Nが偶
数の方がフィルタ設計がし易く、ローパスフィルタやバ
ンドパスフィルタの設計には適している。
そこで、実現しようとするフィルタ特性に応じてフィ
ルタの次数の偶奇を切替えるようにすることが好まし
く、この実施例のアダプティブディジタルフィルタ装置
21、22においてはそのような次数Nの偶奇切替えを行う
ことができるような仕様となっている。すなわちバンド
パスフィルタやローパスフィルタの特性のフィルタリン
グを行う場合は次数Nを偶数に設定し、ハイパスフィル
タ特性のフィルタリングを行う場合は次数Nを奇数に設
定する。
(e)FIRフィルタのその他の特徴
FIRフィルタのその他の特徴としては、フィードバッ
クループがないため、安定性がよいという特徴がある。
すなわち、IIRフィルタのようにフィードバックルー
プがある場合は発振等の問題が起るが、FIRフィルタで
は発振等の問題が生じず、設計も容易である。
また、フィルタ特性を時間的に変化させる場合におい
てもFIRフィルタは有利である。この場合、通常は、時
間的に異なるフィルタ特性の各々に対応してフィルタ係
数の組を夫々準備しなければならないが、そうするとフ
ィルタ特性の時変動を細かくするには多数のフィルタ係
数の組が必要とされる。この問題点を解決するために、
時間的にある程度離れた2組のフィルタ係数を準備し、
その2組のフィルタ係数の間で補間を行うことによりそ
の時間経過に伴ってフィルタ係数の組を密に発生させ、
こうして補間によって発生したフィルタ係数によって時
間的に変動するフィルタ特性を設定することが考えられ
る。このようにフィルタ係数の補間を実時間で行いなが
ら時変動フィルタ特性を実現する場合、FIRフィルタの
ように安定性のよいものは、不安定性を考慮してフィル
タ係数を工夫する必要がないので、非常に有利である。
また、ディジタルフィルタにおける信号の語長は有限
であるため、制限された語長内に信号データを必然的に
丸めなければならない。このような丸めがノイズとなる
のであるが、FIRフィルタではフィードバックループが
ないため、丸めによる誤差が累積されることがないの
で、ノイズ対策上有利である。
なお、上述したようなFIRフィルタの諸特性について
は、例えば書籍「Theory and Application of Digital
Signal Processing」(著書:Lawrence,R.Rabiner;Berna
rd,Gold、発行者:Prentice−Hall Inc)に詳しく記載さ
れている。
次に、この実施例におけるアダプティブディジタルフ
ィルタ装置21及び22におけるいくつかの特徴について予
め簡単に説明する。
(f)フィルタ係数の求め方
フィルタ係数は実際の楽音を分析することにより求め
られる。フィルタ係数を求めるための手順の一例を第10
図を参照して説明すると、まず、異なる音色を示す2種
類の楽音波形(原楽音波形)を自然楽器音からサンプリ
ングすることにより準備する。例えば、原楽音波形1は
強い鍵タッチで演奏されたピアノ音の波形であり、原楽
音波形2は弱い鍵タッチで演奏されたピアノ音の波形で
ある。次に、高速フリーエ変換を行い、原楽音波形1、
2のフリーエ成分を分析し、これに基づき両波形1、2
のスペクトル特性を求める。次に、波形1、2のスペク
トル特性の差を求める。次に、差のスペクトル特性を量
子化し、これに基づきフィルタ係数を求める処理を行
う。最後に求めたフィルタ係数をメモリに記憶する。
フィルタ特性の時変動を実現するするフィルタ係数は
ダイナミック制御用パラメータメモリ26(第2図)に記
憶し、時間的に変化しない定常的なフィルタ特性を実現
するフィルタ係数はADF22及び22(第2図)内にパラメ
ータメモリに記憶する。
なお、上述で2波形の差のスペクトル特性に基づきフ
ィルタ係数を求める理由は、トーンジェネレータ18(第
2図)で一方の原楽音波形(例えば強い鍵タッチに対応
する波形に相当する楽音信号を発生し、これに対して差
のスペクトル特性に従うフィルタリングを施すことによ
り他方の原楽音波形(例えば弱いタッチに対応する波
形)に相当する楽音信号を得るようにするためである。
鍵タッチに応じたフィルタリングを行う場合、全ての鍵
タッチ強度の段階に応じてフィルタ係数の組を準備して
おかずに、いくつかの段階に対応するフィルタ係数の組
だけを準備しておき、準備されていない鍵タッチ強度に
対応するフィルタ係数は上述と同様の補間によって求め
るようにしてもよい。
勿論、鍵タッチに対応するフィルタ係数のみならず、
音高(又は音域)あるいは音色種類あるいはその他種々
のファクタに対応するフィルタ係数を上述と同様の手法
によって準備する。
(g)ピッチに同期したフィルタ演算
ADF21及び22(第2図)における各サンプリング点毎
の演算タイミングはピッチ同期信号PS1及びPS2によって
設定される。このことは、フィルタ演算における単位時
間遅れ(第5図のz-1)がピッチ同期信号PS1,PS2によっ
て設定されることを意味する。すなわち、フィルタ演算
におけるサンプリング周波数fsはピッチ同期PS1,PS2に
よって設定される。具体的には各音名G〜F#に対応す
るピッチ同期信号PS1,PS2の周波数は前出の第1表に示
した実効サンプリング周波数上feと同じであるから、AD
F21及び22におけるフィルタ演算のサンプリング周波数f
sは、入力された楽音信号の音名に応じて同表に示すよ
うに異なるものとなる。フィルタ演算におけるサンプリ
ング周波数fsは、第8図及び第9図に示すような周波数
応答特性におけるω=2πに該当する。ここから明らか
なように、音名に応じてサンプリング周波数fsが変化す
ると、周波数応答特性におけるω=2πに対応する周波
数もそれに応じて変化することになり、得られるフィル
タ特性は移動フォルマント特性となる。このような移動
フォルマント特性は楽音信号の音色制御に非常に適した
ものである。
これに対してフィルタ演算におけるサンプリング周波
数が入力信号のピッチに無関係に一定である場合は、得
られるフィルタ特性は固定フォルマントとなる。
(h)ピッチ同期/非同期の切替
上述のように移動フォルマントのフィルタは楽音の音
色制御に適しているが、得ようとする音色又は効果によ
っては固定フォルマントのフィルタの方が望ましい場合
がある。また、ピッチベント操作子13(第2図)を操作
して発生音のピッチを大きくスライドさせる場合も固定
フォルマントのフィルタの方が好ましい。そのために、
この実施例のADF21及び22では、フィルタ演算をピッチ
同期で行うか非同期で行うかの切替えができるような仕
様となっている。また、このようなピッチ同期/非同期
の切替えは全チャンネル一様ではなく、各チャンネル別
に独立にピッチ同期又は非同期の指定を行うことができ
るようになっている。
因みに、ピッチベント操作子時には固定フォルマント
のフィルタの方が好ましい理由は次の通りである。ピッ
チベント操作子13によるピッチ制御は、僅かなピッチず
れ制御のみならず、数音程にわたる大きなピッチスライ
ド制御も可能であり、その場合前出の第1表に示す音名
G〜F#のオクターブの境界を横切ってピッチ制御が施
されることがある。そのとき、ピッチに同期したフィル
タ演算を行っているとサンプリング周波数fsが急激に変
動し、それに伴ないカットオフ周波数も急激に変動し
(移動フォルマントであるため)、不自然な音色変化を
もたらす。例えば、ピッチベント操作によって発音中の
楽音がF#5音からG5音にスライドしたとすると、サン
プリング周波数が47.359kHzから25.088kHzに急激に変動
し(前記第1表参照)移動フォルマントの場合は、その
差と同じ分だけカット周波数も急激に変動する。このよ
うな不都合を防ぐには、ピッチベント操作時は移動フォ
ルマント(ピッチに同期したフィルタ演算)とせずに、
固定フォルマント(ピッチに非同期のフィルタ演算)と
するのがよい。ピッチ非同期のフィルタ演算の場合、AD
F21及び22におけるフィルタ演算のサンプリング周波数
は第3図の例では50kHzである。
(i)ダイナミック/スタティックに応じたフィルタ次
数の切替
前述の通り、ダイナミックモードにおいては、発音時
に実時間で、マイクロコンピュータ14の制御の下でダイ
ナミック制御パラメータメモリ26(第2図)からダイナ
ミック制御用パラメータデータを読み出し、これをADF2
1、22の内部に転送しなければならない。そのため、デ
ータ転送時間に制限があり、フィルタ係数の次数が多い
と、制限された時間内に全次数のフィルタ係数パラメー
タデータを転送できないおそれがある。従って、ダイナ
ミックモードにおけるフィルタ次数は実時間のデータ転
送時間に見合った制限された次数としなければならな
い。
他方、スタティックモードの場合は発音中にフィルタ
係数を変化させる必要がないためそのような問題はな
い。また、フィルタ次数が多いほど細かなフィルタ特性
を実現することができるので好ましい。従って、スタテ
ィックモードにおいてはフィルタ次数を十分に多くする
ようにしている。
以上のような理由で、この実施例の仕様では、ダイナ
ミックモードかスタティックモードかに応じてフィルタ
次数を切換えるようにしている。例えば、スタティック
モードのときのフィルタ次数を32次(但しこれは偶数次
特性の場合であって、奇数次特性の場合は31次)とし、
ダイナミックモードのときのフィルタ次数をその半分の
16次(奇数次特性の場合は15次)としている。
(j)フィルタ係数の重みづけ制御
1つのフィルタ係数の2進ディジタルデータ形式は12
ビットのフィルタ係数データ部と、3ビットの重みづけ
データ部とからなる。3ビットの重みづけデータ部は、
0、+1、+2、+3、+4、及び+5ビットの6通り
のシフト量のうち1つを指示するものであり、このシフ
ト量に応じてフィルタ係数データ部がシフトされ、その
重みづけがなされる。12ビットのフィルタ係数データを
最大で5ビットシフトし得る重みづけ制御を行うことに
より、フィルタ係数のダイナミックレンジが実質的に17
ビットに拡大される。このような重みづけ制御によっ
て、十分なダイナミックレンジを確保しつつ、メモリに
記憶しておくフィルタ係数のビット数は少なくて済むの
で、フィルタ係数メモリの容量の節約に役立つ。
<アダプティブディジタルフィルタの全体説明>
第11図は第1〜第8チャンネルに対応するアダプティ
ブディジタルフィルタ装置(ADF)21の内部構成例を略
示するブロック図であり、もう一方のADF22も全く同様
に構成することができる。
入力インターフェース38はトーンジェネレータ18(第
2図)からピッチ同期信号PS1を受入れて、各チャンネ
ルのピッチ同期信号PS1をADF21内部の演算タイミングに
適合させた状態に整形するものであり、その詳細例は第
12図に示されている。
タイミング信号発生回路39は、ADF21内部の各種の動
作を制御するタイミング信号を発生すると共に、入力イ
ンターフェース38から与えられる各チャンネルのピッチ
同期信号に対応する信号に基づきフィルタ演算動作に必
要な種々の演算タイミング信号を発生するものであり、
その詳細は第13図に示されている。後述するように、各
チャンネルのフィルタ演算は時分割的に行われるため、
このタイミング信号発生回路39から適切なタイミングで
各チャンネルのフィルタ演算動作制御用のタイミング信
号を与えてやるようになっている。
ステートメモリ40、42及び乗算器及びアキュムレータ
部41、43は、FIRフィルタのフィルタ演算を実行するデ
ィジタルフィルタ回路である。ステートメモリ40と乗算
器及びアキュムレータ部41からなるディジタルフィルタ
回路(これをA系列のディジタルフィルタ回路という)
は第1乃至第4チャンネル(Ch1〜Ch4)のフィルタ演算
を行うものでステートメモリ42と乗算器及びアキュムレ
ータ部43からなるディジタルフィルタ回路(これをB系
列のディジタルフィルタ回路という)は第5乃至第8チ
ャンネル(Ch5〜Ch8)のフィルタ演算を行うものであ
る。各系列A,Bのディジタルフィルタ回路では、夫々4
チャンネル分のフィルタ演算を時分割的に行うようにな
っている。第1〜第8チャンネルのフィルタ演算を2系
列A,Bに分けて行うようにした理由は、回路設計上の理
由による。ステートメモリ40、42はトーンジェネレータ
18(第2図)から与えられたディジタル楽音信号サンプ
ル値データTDXをピッチ同期信号PS1に同期して取込み、
所定のフィルタ次数に対応する段数だけ該ピッチ同期信
号PS1に対応するタイミングで遅延するものであり、第
5図のFIRフィルタ基本回路における単位遅延要素z-1の
集合に対応する。乗算器及びアキュムレータ部41、43
は、ステートメモリ40、42で遅延されたディジタル楽音
信号サンプル値データに対してその遅延次数に対応する
次数のフィルタ係数を乗算し、各次数の乗算結果を累算
合計するものであり、第5図のFIRフィルタ基本回路に
おける乗算要素及び加算要素に対応する。A系列のステ
ートメモリ40と乗算器及びアキュムレータ部41の群細例
は第14図に示されており、B系列のものもこれと同様に
構成することができる。
マイコンインタフェース44はマイクロコンピュータ14
(第2図)の制御の下でデータ及びアドレスバス28を介
して与えられる各種データを受入れ、ADF21内の各回路
に供給するものである。このインタフェース44を介して
受入れられるデータの種類は次の通りである。
キーコードKC:各チャンネルに割当てられた鍵を示す。
キーオンパルスKONP:各チャンネルに割当てられた鍵の
押し始めで一度だけ信号“1"となる。
タッチコードTCH:各チャンネルに割当てられた鍵の押圧
時のタッチの強さを示す。
音色コードVN:各チャンネルに割当てられた鍵に対して
選択されている音色種類(ボイス)を示す。
上記KC、KONP、TCH、VNは、所定の時分割タイミング
に従って各チャンネルのものが時分割多重化された状態
でインタフェース44から出力され、パラメータプロセシ
ングユニット(PPUということがある)45に与えられ
る。
ピッチ同期/非同期指定信号PASY:このADF21におけるデ
ィジタルフィルタを演算ピッチ同期で行うか非同期で行
うかの指定を行う信号である。この信号PASYも各チャン
ネル毎に時分割で与えられるようにすることができ、フ
ィルタ演算のピッチ同期/非同期制御を各チャンネル毎
に独立に行うことができる。この信号PASYは、選択され
た音色種類、あるいはピッチベント操作子13(第2図)
の操作内容、あるいは専用又は適宜の操作子の操作状
態、等に応じて発生され、バス28を介してインターフェ
ース44に与えられる。インタフェース44から出力された
ピッチ同期/非同期指定信号PASYは入力インタフェース
38に与えられ、ピッチ同期信号/PS1に応じた信号の発生
を該入力インターフェース38が行うべきか否かの制御を
行うために使用される。
ダイナミック用フィルタパラメータDPR:マイクロコンピ
ュータ14の制御の下でダイナミック制御用パラメータメ
モリ26(第2図)から読み出されたフィルタパラメータ
(フィルタ係数)である。前述の通り、このダイナミッ
クモード用フィルタパラメータDPRの内容は発音中の時
間経過に伴って変化する。このダイナミックモード用フ
ィルタパラメータDPRのデータ形式も前述と同様に、12
ビットのフィルタ係数データ部と3ビットの重みづけデ
ータ部とから成り、更に、次数の偶奇を識別するデータ
を含む。また、前述の通り、このダイナミックモード用
フィルタパラメータDPRの一組の次数は16次(又は15
次)である。更に、前述から明らかなように、直線位相
特性におけるフィルタ係数の対称性により、実際に準備
する一組のダイナミックモード用フィルタパラメータDP
Rは8次分だけでよい。
ダイナミック/スタティック選択信号DS:ダイナミック
/スタティック選択スイッチ27(第2図)の操作に応じ
て発生される信号であり、フィルタ演算を前述のダイナ
イックモードで行うかスタティックモードで行うかを指
示する。
上記DPR、DSはインタフェース44からパラメータセレ
クタ46に与えられる。
パラメータメモリ47は、スタティックモードのための
フィルタパラメータ(フィルタ係数)を記憶したもので
ある。
パラメータプロセシングユニット45は、上記パラメー
タメモリ47からスタティックモード用のフィルタパラメ
ータを読み出す働きをする。すなわち、キーオンパルス
KONPが与えられたとき、音色コードVN、タッチコードTC
H、キーコードKCの内容に基づき読み出すべきパラメー
タメモリ47のアドレスを計算し、このアドレスに記憶さ
れているフィルタパラメータを該メモリ47から読み出
す。読み出されたスタティックモード用フィルタパラメ
ータSPRはパラメータセレクタ46に与えられる。このス
タティックモード用フィルタパラメータSPRのデータ形
式も前述のDPRと同様である。また、前述の通り、スタ
ティックモード用フィルタパラメータSPRの一組の次数
は32次(又は31次)である。更に、前述から明らかなよ
うに、直線位相特性におけるフィルタ係数の対称性によ
り、実際に準備する一組のスタティックモード用フィル
タパラメータSPRは16次分だけでよい。
パラメータセレクタ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の内容が時間
的に変化する毎に書替えられる。
パラメータ供給回路48、49から出力されるフィルタパ
ラメータのうち次数の偶奇を識別する偶奇識別データEO
A1〜EOA4,EOB1〜EOB4はステートメモリ40、42に与えら
れ、フィルタ係数データ部COEA、COEB及び重みづけデー
タ部WEIA、WEIBは乗算器及びアキュームレータ部41、43
に与えられる。なお、図中の符号において末尾のA又は
BはA系列とB系列の区別を表わす。データEOA1〜EOA
4,EOB1〜EOB4は各チャンネルのものが並列的に与えられ
るが、データCOEA,COEB,WEIA,WEIBは各チャンネルのも
のが時分割的に与えられる。
パラメータプロセシングユニット45、パラメータセレ
クタ46、パラメータメモリ47、パラメータ供給回路48、
49の詳細例は第15図に示されている。
ピッチ同期出力回路50は、乗算器及びアキュムレータ
部41、43から出力された各チャンネルのフィルタ済みの
楽音信号サンプル値データを入力し、これらを各々のピ
ッチに同期したタイミングでサンプリングし直す回路で
ある。ここでサンプリング制御に用いる信号は、入力イ
ンタフェース38から与えられる。ピッチ同期信号PS1Dで
あり、これは各チャンネルのピッチ同期信号PS1を所定
時間遅延したものである。ピッチに同期した再サンプリ
ングのために、遅延したピッチ同期信号PS1Dを用いる理
由は、前段でのディジタルフィルタ演算における各チャ
ンネルの楽音信号の時間遅れに合わせるためである。こ
のようにディジタルフィルタ出力信号をそのピッチに同
期して再サンプリングする処理は、サンプリング周波数
を楽音ピッチに調和させるので、折返しノイズの問題を
解決する。ピッチに同期してディジタルフィルタ演算を
行う場合は、ディジタルフィルタ出力信号はピッチに同
期したサンプリング周期を持つのでピッチ同期出力回路
50を特に設けなかったとしてもピッチ同期を実現するこ
とができるが、ピッチに非同期でディジタルフィルタ演
算を行う場合はピッチ同期を実現するためにはピッチ同
期出力回路5が必要である。ピッチ同期出力回路50の詳
細例は第16図に示されている。
次にアダプティブディジタルフィルタ装置21の各部の
詳細例について説明する。
なお、各図においてブロック中に「1D]、「8D」等の
数字と文字Dが伴記された回路は、遅延回路若しくはシ
フトレジスタであり、前の数字は遅延段階若しくはステ
ージ数を示す。また、この遅延回路又はシフトレジスタ
ブロックにおいて、遅延制御クロックパルス又はシフト
制御クロックパルスが入力されることが図示されていな
いものは、マスタクロックパルスφ(第3図参照)によ
って遅延又はシフト制御がなされる。
<入力インタフェース38:第12図>
第12図において、ピッチ同期信号PS1はオア回路51、5
2を介してシフトレジスタ53に入力される。第3図に示
すようにこのピッチ同期信号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)が夫々
入力去れる。φFSの次に記された数字はチャンネル番号
を示し、その次のかっこ内の数字は1演算サイクル(第
3図に示す64タイムスロット)中のタイムスロット番号
を示し、そのタイムスロット番号に対応するタイムスロ
ットにおいて該ラッチタイミング信号が信号“1"とな
る。例えば、信号φFS1(25)はタイムスロット25で信
号“1"となり、これは第1チャンネルに対応している。
第3図を参照すると明らかなようにタイムスロット25は
ピッチ同期信号PS1における第1チャンネルの時分割タ
イミングに対応している。従って、この信号φFS1(2
5)によってラッチ制御されるラッチ回路55の部分には
チャンネル1のピッチ同期信号PS1の内容(ピッチに同
期したタイミングでは信号“1"、それ以外のタイミング
では信号“0")がラッチされる。他のチャンネル2〜8
も同様であり、各チャンネルのピッチ同期信号が所定の
タイミングでラッチ回路55に夫々並列的にラッチされ
る。
なお、各チャンネルに対応するラッチタイミング信号
φFS1(25)〜φFS8(56)は第13図ものデコーダ56から
発生される。デコーダ56はカウンタ57の出力をデコード
して様々な種類のタイミング信号を発生する。カウンタ
57はマスタクロックパルスφをカウントするモジュロ64
のカウンタであり、システムシンクロパルスSYNC(第3
図)によって定期的にリセットされる。各チャンネル1
〜8に対応するラッチタイミング信号φFS1(25)〜φF
S8(56)がどのタイムスロットで発生するかは第13図の
表示から明らかであろう。
第12図に戻り、各タイミング信号φFS1(25)〜φFS8
(56)はノア回路58で多重化されかつ反転される。ノア
回路58の出力はアンド回路54に入力される。これによ
り、ラッチ回路55への取り込みが行われたチャンネルに
関するシフトレジスタ53の記憶がクリアされる。
一方、ピッチ同期信号PS1が“1"となったチャンネル
に対応してラッチ回路55にラッチされた信号“1"は、次
のサイクルでそれに対応するラッチタイミング信号φFS
1(25)〜φFS8(56)が発生するまで保持される。こう
して、ラッチ回路55には、ピッチ同期信号PS1が“1"と
なったチャンネルに対応して64タイムスロット分の時間
だけ信号“1"が保持される。各チャンネルに対応するラ
ッチ回路55の出力はフィルタ演算要求信号φF1〜φF8と
して第13図のタイミング信号発生回路39に与えられる。
後述するように、このフィルタ演算要求信号φF1〜φF8
が“1"になったとき1サンプル点分のフィルタ演算が実
行される。ピッチ同期信号PS1が発生したときのみフィ
ルタ演算要求信号φF1〜F8が“1"となるので、結局、フ
ィルタを施すべき楽音信号のピッチに同期したディジタ
ルフィルタ演算が行われることになる。
例えば、第17図に示すように、タイムスロット9のと
きにピッチ同期信号PS1が“1"となったとすると(この
場合この信号“1"はチャンネル1のピッチ同期信号であ
る)、これがシフトレジスタ53で循環保持され、タイム
スロット25でタイミング信号φFS1(25)が発生したと
きラッチ回路55にラッチされ、チャンネル1に対応する
フィルタ演算要求信号φF1がそのタイムスロット25にお
いて“1"に立上る。この信号φF1は次のサイクルのタイ
ムスロット24まで合計64タイムスロット分の時間幅だけ
信号“1"を維持する。
<タイミング信号発生回路39:第13図>
第13図において、タイミング信号発生回路39は、前述
のデコーダ及びカウンタ57の他に第12図の入力インタフ
ェース38から与えられる各チャンネルのフィルタ演算要
求信号φF1〜F8に応じてフィルタ演算動作制御用のタイ
ミング信号を発生する演算タイミング発生回路391〜398
を各チャンネル(Ch1〜Ch8)毎に具えている。図ではチ
ャンネル1の回路39のみ詳細を示したが、他のチャンネ
ル2〜8の回路392〜398も同一構成であり、そこに入力
されるタイミング信号T(33),T(49),…の時間関係
だけが異なる。タイミング信号T(33),T(49),…は
デコーダ56から発生される。前述と同様に、タイミング
信号を示す符号においてかっこ内の数字は、1演算サイ
クル(第3図に示す64タイムスロット)中のタイムスロ
ット番号を示し、そのタイムスロット番号に対応するタ
イムスロットにおいて該タイミング信号が“1"となるこ
とを示す。デコーダ56から発生される他のタイミング信
号についても同様であり、かっこ内の数字を参照するこ
とによりそのタイミング信号がどのタイムスロットにお
いて発生するか(“1"となるか)が容易に判る。例え
ば、タイミング信号T(33)は第17図に示すようにタイ
ムスロット33において信号“1"となるものであり、信号
T(3−18)はタイムスロット3から18までの間で信号
“1"となるものである。
チャンネル1の演算タイミング信号発生回路391につ
いて説明すると、フィルタ演算要求信号φF1とタイミン
グ信号T(33)がアンド回路59に与えられる。従って、
フィルタ演算動作を行うべきことが要求されたならば、
タイムスロット33のタイミングでアンド回路59の出力が
“1"となる。このアンド回路59の出力信号と、この信号
を遅延回路60で1タイムスロット遅延した信号とがオア
回路61に与えられる。このオア回路61の出力はフィルタ
データサンプリングクロック信号RLA1としてディジタル
フィルタ回路における単位遅延を制御するために利用さ
れる。この信号RLA1は第17図に示すようにタイムスロッ
ト33と34のときに“1"となる。
アンド回路62にはアンド回路59の出力とチャンネル1
の偶奇識別データEOA1(これは第11図のパラメータ供給
回路48から出力されたものである)をインバータ63で反
転した信号が与えられる。このデータEOA1は実現しよう
とするフィルタ特性の次数が偶数次のとき信号“1"であ
り、奇数次のとき信号“0"、である。アンド回路62の出
力は遅延回路64で2タイムスロット遅延され、インヒビ
ット信号INHA1として出力される。フィルタ次数が奇数
のときアンド回路62の出力信号はタイムスロット33で
“1"となり、その2タイムスロット後のタイムスロット
35のときINHA1が“1"となる(第17図参照)。フィルタ
次数が偶数ならば、信号INHA1は常に“0"である。この
インビット信号INHA1は、ディジタルフィルタ回路の演
算動作において偶数次の最高次数(32次)の演算を禁止
することにより奇数次のフィルタ特性を実現するために
使用される。
タイミング信号T(3−18)とT(35−50)がオア回
路65に入力されており、その出力とアンド回路59の出力
がオア回路66に入力されている。オア回路66の出力は遅
延回路67で1タイムスロット遅延され、第1シフトクロ
ック信号φFFA1として出力される(第17図参照)。ま
た、オア回路66の出力と遅延回路64の出力をインバータ
68で反転した信号がアンド回路69に加わっており、その
出力を遅延回路70で1タイムスロット遅延した信号が第
2シフトクロック信号φFLA1として出力される(第17図
参照)。信号φFLA1は、フィルタ次数が偶数ならばタイ
ムスロット36のとき“1"であるが、奇数ならば“0"であ
る。これらのシフトクロック信号φFFA1,φFLA1は、デ
ィジタルフイルタ回路において各次数毎の演算動作を時
分割的に行うために、ステートメモリ40(第11図)内の
各遅延段階に対応する楽音信号サンプル値データを順次
シフトするために使用される。
タイミング信号T(35−50)に応じてタイムスロット
35から50の間で“1"となる乗算タイミング信号PDOA1
(第17図参照)は、ディジタルフィルタ回路において楽
音信号サンプル値データとフィルタ係数との乗算を行う
べき期間を指示するものである。
A系列における他のチャンネル2〜4に対応する演算
タイミング信号発生回路392〜294において用いられるタ
イミング信号T(49),T(19−34),T(51−2),…は
チャンネル1のタイミング信号T(33),T(3−18),T
(35−50)のタイミングから順に16タイムスロットづつ
ずれたものである。従って、チャンネル1の回路391か
ら出力される各信号RLA1〜PDOA1と同様の信号RLA2〜PDO
A2,…RLA4〜PDOA4が他のチャンネル2〜4の回路392〜3
94から夫々順次16タイムスロットづつずれたタイミング
で発生される。これに基づき、A系列のディジタルフィ
ルタ回路(特に乗算器及びアキュムレータ部41)におい
て、1演算サイクル=64タイムスロットの間で16タイム
スロット毎の時間区間で4つのチャンネル1〜4のフィ
ルタ演算動作を時分割的に行わせることができるように
なっている。
B系列の各チャンネル5〜8に対応する演算タイミン
グ信号発生回路395〜398においても各チャンネル間で16
タイムスロットづつずれた所定のタイミングでタイミン
グ信号T(49),T(19−34),T(51−2),…が使用さ
れ、上述と同様の各種信号RLB1〜PDOB1,…RLB4〜PDOB4
が発生される。
A系列に対応する演算タイミング信号発生回路391〜3
94で発生された各信号RLA1〜PDOA4はA系列のステート
メモリ40に与えられ、B系列に対応する回路395〜398で
発生された各信号RLB1〜PDOB4はB系列のステートメモ
リ42(第11図)に与えられる。
<ステートメモリ40:第14図>
第14図において、A系列のステートメモリ40はA系列
の各チャンネル1〜4に対応するステートメモリ401〜4
04を並列的に具えている。チャンネル1のステートメモ
リ401のみ詳細を示したが、他のチャンネル2〜4のス
テートメモリ402〜404も同一構成であり、そこに入力さ
れる信号が異なっている。上述の各チャンネル1〜4に
対応する演算タイミング信号発生回路391〜394(第13
図)から発生された各信号RLA1〜PDOA1,…RLA4〜PDOA4
は、自己のチャンネルに対応するステートメモリ401〜4
04に夫々入力される。
同図に示したステートメモリ40と乗算器及びアキュム
レータ部41の詳細を説明する前に、これらの回路から成
るディジタルフィルタ回路の基本動作について第18図及
び第19図に示す略図を参照して説明する。
<偶数次のフィルタ演算基本動作:第18図>
第18図は、上記ディジタルフィルタ回路において偶数
次(32次)から成るフィルタ特性を実現する場合のFIR
型フィルタ演算の基本動作を説明するための略図であ
り、(a)はブロック図、(b)は各演算タイミングに
おける(a)のシフトレジスタSR1,SR2の各ステージQ0
〜Q15,Q16〜Q31内の楽音信号サンプル値の状態を示す。
第1のシフトレジスタSR1は16ステージを持ち、フィ
ルタをかけるべきディジタル楽音信号サンプル値データ
xnがセレクタSEL1を介して入力される。セレクタSEL1を
介して新しいサンプル値データxnを取り込むための信号
としては前述のフィルタデータサンプリングクロック信
号RLA(チャンネル1の場合はRLA1)が使用され、シフ
トレジスタSR1のシフトクロックパルスとしては前述の
第1シフトクロック信号φFFA(チャンネル1の場合は
φFFA1)が使用される。第1のシフトレジスタSR1の各
ステージQ0〜Q15にはサンプル点nからn−15までの16
個のサンプル値データxn〜xn-15が保持される。このシ
フトレジスタSR1の最終ステージの出力はセレクタSEL1
を介してサンプリングクロック信号RLAが無いとき第1
ステージに戻される。このシフトレジスタSR1は右方向
のみにシフトされる。
第2のシフトレジスタSR2も16ステージを持ち、第1
のシフトレジスタSR1の出力がセレクタSEL2を介して入
力される。セレクタSEL2を介してSR1の出力をSR2に取り
込むための信号として前述のフィルタデータサンプリン
グクロック信号RLAが使用され、該SR2のシフトクロック
パルスとしては前述の第2シフトクロック信号φFLA
(チャンネル1の場合はφFLA1)が使用される。この第
2のシフトレジスタSR2の各ステージQ16〜Q31にはサン
プル点nからn−31までの16個のサンプル値データx
n-16〜xn-31が保持される。シフトレジスタSR2の最終ス
テージQ31はセレクタSEL2を介してサンプリングクロッ
ク信号RLAが無いとき第1ステージQ16に接続される。こ
のシフトレジスタSR2は双方向シフト型であり、サンプ
リングクロック信号RLAが“1"のとき右シフトモード、
“0"のとき左シフトモードとなる。
シフトレジスタSR1、SR2のステージQ15とQ16の出力が
加算器ADDで加算され、その加算結果が乗算器MULに与え
られ、フィルタ係数COEAが乗算される。その乗算結果は
アキュムレータACCに与えられ、全次数に関する乗算結
果がそこでアキュムレートされる。こうして、アキュム
レータACCからは1サンプル点分のフィルタ演算結果が
出力される。
加算器ADDで2サンプル点分のサンプル値データを加
算し、それに共通のフィルタ係数COEAを乗算器MULで乗
算する理由は、前述の「フィルタ係数の対称性」によ
る。すなわち、対称関係にある2つのサンプル値データ
には同じ値のフィルタ係数が掛けられるため、それらを
別々に乗算せずに、加算した上で1回の乗算によって両
サンプル値データへの係数乗算を同時に行うようにして
いる。
第18図の(b)において、たて軸の演算タイミングは
マスタクロックに応じた1タイムスロット毎に進行す
る。そこに示した数字は便宜上の順序を示すもので1演
算サイクル(64タイムスロット)中のタイムスロット番
号を絶対的に示すものではない。図の例では、演算タイ
ミング1のとき、シフトレジスタSR1、SR2の各ステージ
Q2〜q31にxnからxn-31までの32サンプル点のサンプル値
データが入っている。
図の例では、演算タイミング2のときサンプリングク
ロック信号RLAが“1"になるものとしている。これによ
り、シフトクロック信号φFFA、φFLAに応じてシフトレ
ジスタSR1、SR2が1ステージ右シフトされ、この演算タ
イミング2では図示のような状態となる。このときのシ
フトクロック信号φFFA、φFFAはチャンネル1の場合は
第17図のφFFA1、φFLA1の欄に示すようにタイムスロッ
ト34で発生するものである。同図から明らかなように、
次の1タイムスロットはシフトクロック信号φFFA、φF
LAは発生せず、従って第18図(b)の演算タイミング3
では各ステージQ0〜Q31の状態は変化しない。しかし、
演算タイミング3から18までの16タイムスロット幅は、
チャンネル1でいえば乗算タイミング信号PDOA1(第17
図)が発生するタイムスロット35〜50に対応しており、
この間で乗算及びアキュムレートが行われる。
つまり、演算タイミング3では、ステージQ15とQ16に
入っているxn-14とxn-15のサンプル値データが加算器AD
Dで加算され、これに第16次のフィルタ係数が掛けら
れ、その結果がアキュムレータACCに保持される。
演算タイミング4から18までの間は、1タイムスロッ
ト毎に、第1のシフトレジスタSR1は右シフト、第2の
シフトレジスタSR2は左シフトされ、各ステージQ0〜Q31
の状態は図示のように順次変化する。従って、演算タイ
ミング4ではxn-13とxn-16が加算され、これに第15次の
フィルタ係数が乗算され、その結果がアキュムレータAC
Cに類算される。次の演算タイミング5ではxn-12とx
n-17について同様の演算が行われ、こうして非対称位置
にある2サンプル値データに関して同様のフィルタ係数
演算が順次時分割で行われ、演算タイミング18では最後
の対称位置にあるxn+1とxn-30に関して同様の演算が行
われ、これで全次数のフィルタ演算が完了する。次の演
算タイミング19ではもう一度シフトが行われ、図示のよ
うに、各ステージQ0〜Q31に遅延された時間順に各サン
プル値データxn+1〜xn-30が並ぶ。
<奇数次のフィルタ演算基本動作:第19図>
第19図は、奇数次(31次)からなるフィルタ特性を実
現する場合のFIR型フィルタ演算の基本動作を説明する
ための略図であり、(a)はブロック図、(b)は各演
算タイミングにおける(a)のシフトレジスタSR1、SR2
の各ステージQ0〜Q15,Q16〜Q30の楽音信号サンプル値の
状態を示す。
(a)における各ブロックは第18図(a)に示したも
のと同一であり、異なる点は、ステージQ16の出力がゲ
ートGTを介して加算器ADDに与えられることである。ゲ
ートGTはインヒビット信号INHA(第1チャンネルではIN
HA1)を反転した信号によって制御されるようになって
おり、該信号INHAが“1"のときステージQ16の出力信号
が加算器ADDに与えられることを禁止する。また、第2
のシフトレジスタSR2の第16ステージQ31は利用せず、第
15ステージQ30と第1ステージQ16がセレクタSEL2を介し
て接続される。
(b)において、第1シフトレジスタSR1の状態変化
は第18図(b)と同じである。第2シフトレジスタSR2
の状態変化は第18図(偶数次の場合)とは若干異なる。
第2のシフトレジスタSR2のシフトクロック信号φFLA
は、演算タイミング4のとき偶数次モードでは“1"であ
ったが奇数次モードでは“0"となる(チャンネル1の場
合は第17図のφFLA1の欄のタイムスロット36参照)。従
って、奇数次モードでは、第19図(b)に示すように、
第2のシフトレジスタSR2の内容は、演算タイミング4
ではシフトされず、演算タイミング5から19の間で順次
左シフトされる。
演算タイミング3では、シフトレジスタSR1、SR2の各
ステージQ0〜Q30には31次の各遅延段階に対応する楽音
信号サンプル値xn+1〜xn-29が順番に入っており、ステ
ージQ15に中央の次数のサンプル値xn-14が入っている。
第6図に示されているように、奇数次モードの対称の中
央に位置する次数ではそれ単独に対応して固有のフィル
タ係数が割り当てられる。従って演算タイミング3で
は、インヒビット信号INHAによってステージ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に入り、両者が加算されて共通
のフィルタ係数が嬢算される。
<ディジタルフィルタ回路:第14図>
第14図を参照してチャンネル1に対応するステートメ
モリ401について説明する。16ステートメモリ401につい
て説明する。16ステージの一方向シフトレジスタ71は第
18図、第19図の第1のシフトレジスタSR1に対応するも
のであり、チャンネル1に対応する第1のシフトクロッ
ク信号FFA1によってシフト制御される。トーンジェエレ
ータ18(第2図)から供給されたディジタル楽音信号サ
ンプル値データTDX又はラッチ回路73に入力され、ラッ
チタイミング信号XLDA1に従ってチャンネル1のサンプ
ル値データが該ラッチ回路73に取込まれる。楽音信号サ
ンプル値データTDXにおける各チャンネルの時分割タイ
ミング(第3図参照)に対応して、各チャンネル1〜8
に対応するラッチタイミングXLDA1〜XLDA4,XLDB1〜XLDB
4が、デコーダ56(第13図)から発生される。前述のよ
うに、第13図の各信号表示の末尾のかっこ内の数字はそ
の信号が発生するタイムスロット番号を示す。各チャン
ネルに対応するステートメモリ内にはラッチ回路73と同
様のラッチ回路が設けられており、各々に対応するラッ
チタイミング信号XLDA1〜XLDA4,XLDB1〜XLDB4によって
各チャンネル1〜8の楽音信号サンプル値データTDXが
別々にラッチされ、こうしてデマルチプレクスされる。
ラッチ回路73にラッチされたチャンネル1の楽音信号
サンプル値データはセレクタ74のA入力にあたえられ
る。セレクタ74は第13図の演算タイミング信号発生回路
391から与えられるフィルタデータサンプリングクロッ
ク信号RLA1が“1"のときA入力を選択し、それ以外のと
きはB入力に加わるシフトレジスタ71の第16ステージの
出力信号を選択する。前述の通り、この信号RLA1は楽音
のピッチに同期するものであり、ピッチに同期してセレ
クタ74で新しいサンプル値データ(A入力)を選択し、
これをシフトレジスタ71に与える。第17図から明らかな
ように、信号RLA1が“1"となるタイムスロット34で、シ
フトクロック信号φFFA1が“1"となるので、シフトレジ
スタ71はセレクタ74から与えられる新しいサンプル値デ
ータを第1ステージ(Q0)に取込む。次のタイムスロッ
ト35ではシフト動作を一時休止し、続くタイムスロット
36〜51で順次右シフトするのは前述の通りである。
双方向シフトレジスタ72は第18図、第19図の第2のシ
フトレジスタSR2に対応するものである。この双方向シ
フトレジスタ72の各ステージQ16〜Q31は図示のようにセ
レクタSL〜SL16とラッチ回路LC1〜LC16から成ってい
て、双方向シフトが可能なように接続されている。すな
わち、最初のステージQ16のセレクタSL1のA入力には第
1のシフトレジスタ71の最終ステージ(Q15)の出力信
号が入力され、他の各ステージQ17〜Q31のセレクタSL2
〜SL16のA入力には夫々前のステージのラッチ回路LC1
〜LC15の出力が入力され。また、各ステージのセレクタ
SL1〜SL16のB入力には次のステージのラッチ回路LC2〜
LC16,LC1の出力が入力される。これにより、各セレクタ
SL1〜SL16のA入力が選択されたとき右シフトモードと
なり、B入力が選択されたとき左シフトモードとなる。
各セレクタSL1〜SL16の選択信号としてサンプリングク
ロック信号RLA1が用いられ、これが“1"のときA入力選
択つまり右シフトモードとなる。ただし、奇数次モード
のときにステージQ31を無効にするために、ステージQ30
のセレクタSL15が他とは幾分異なっている。つまり、こ
のセレクタSL15にはC入力が設けられており、そこにス
テージQ16の出力信号が加わる。チャンネル1に関する
偶奇識別データEOA1が“1"(つまり偶数次モード)のと
きアンド回路751が可能化され信号RLA1が“0"のとき該
アンド回路751の出力が信号“1"となり、これによりセ
レクタSL15がB入力を選択し、ステージQ31の出力がス
テージQ30に与えられる(左シフトされる)。EOA1が
“1"のとき(奇数次モードのとき)アンド回路761が可
能化され、信号RLA1が“0"のときセレクタSL15がC入力
を選択し、ステージQ16の出力がステージQ30に与えられ
る(Q31を飛越して左シフトされる)。
以上の構成により、第1及び第2のシフトレジスタ7
1,72の内容の変化状態は偶数次モードと奇数次モードの
別に応じて第18図(b)、第19図(b)に示したものと
全く同様になる。
第2のシフトレジスタ72の第1ステージQ16の出力信
号はゲート75を介してゲート76に与えられる。ゲート75
はインヒビット信号INHA1を反転した信号によって制御
されるもので、第19図のゲートGTに対応するものであ
る。ゲート76は、第1のシフトレジスタ71の出力信号
(ステージQ15の出力信号)とゲート75を介して与えら
れる第2のシフトレジスタ72の出力信号)を入力し、乗
算タイミング信号PDOA1(第17図参照)によって開放さ
れる。
ゲート76の出力は乗算器及びアキュムレート部41の加
算器77に与えられ、そこで2つの楽音信号サンプル値デ
ータが加算される。この加算器77は第18図、第19図の加
算器ADDに対応するものである。加算器77の出力は遅延
回路78でタイムスロット遅延されて乗算器79に入力され
る。乗算器79は遅延回路78を介して与えられる楽音信号
サンプル値データに遅延回路80を介して与えられるフィ
ルタ係数データCOEAを乗算するものである。乗算器79の
出力は遅延回路8で48タイムスロット遅延されてシフタ
82に与えられる。シフタ82のシフト制御入力には5タイ
ムスロットの遅延を設定する遅延回路83を介して重みづ
けデータWEIAが与えられる。この乗算器79とシフタ82
は、第18図、第19図の乗算器MULに対応するものであ
る。すなわち、前述の通り、フィルタ係数データCOEAは
フィルタ係数の有効ビットのデータであり、乗算器79に
おいてこのフィルタ係数の有効ビットと楽音信号サンプ
ル値データとの乗算が行われる。そして、この乗算結果
をシフタ82において重みづけデータWEIAの値に応じたビ
ット数だけシフトすることにより、フィルタ係数の実数
と楽音信号サンプル値データとの乗算が完了する。
シフタ82の出力はアキュムレータ84に与えられ、1チ
ャンネル分の各次数に対応する乗算結果がアキュムレー
トされる。アキュムレータ84の出力はラッチ回路85に入
力され、演算終了タイミング信号FENDAに従ってラッチ
される。この信号FENDは第13図のデコーダ56から発生さ
れる。同図中に表示されているように、この信号FENDA
はタイムスロット8,24,40,56において“1"となる。タイ
ムスロット56ではチャンネル1の演算結果をラッチし、
8ではチャンネル2の演算結果をラッチし、24ではチャ
ンネル3の演算結果をラッチし、40ではチャンネル4の
演算結果をラッチする。デコーダ56からはB系列の演算
終了タイミング信号FENDAも同時に発生される。
乗算器及びアキュムレート部41は、4つのチャンネル
によって時分割共用される。すなわち、加算器77には、
チャンネル1のステートメモリ401のゲート76の出力の
みならず、チャンネル2〜4のステートメモリ402〜404
内に設けられている同様の機能をもつゲートの出力信号
が多重的に入力される。各ステートメモリ401〜404の出
力ゲート76には、16タイムスロット幅の乗算タイミング
信号PDOA1〜PDOA4が16タイムスロットづつずれた異なる
タイミングで夫々入力される。従って、加算器77には各
チャンネル1〜4の信号が16タイムスロット毎に時分割
多重的に入力される。フィルタ係数データCOEA及び重み
づけデータWEIAは、4つのチャンネルのものが上述と同
じタイミングで16タイムスロット毎に時分割多重化され
ており、1つのチャンネルに関する16タイムスロットに
おいては1次から16次までのデータが時分割多重化され
ている。
B系列のステートメモリ42と乗算器及びアキュムレー
タ部43も第14図と同一の構成であり、但し、各種信号の
タイミングが適宜異なっている。
第14図に示されたようなA系列及びB系列のディジタ
ルフィルタ回路(すなわちステートメモリ40,42と乗算
器およびアキュムレータ41,43)における各チャンネル
1〜8に関するフィルタ動作のタイミングを第20図に示
す。第20図において、シフト1の欄には第1のシフトレ
ジスタ(チャンネル1の場合は71)のシフトタイミング
を示し、シフト2の欄には第2のシフトレジスタ(チャ
ンネル1の場合は72)のシフトタイミングを示してい
る。矢印の方向はシフト方向(右シフト又は左シフト)
を示している。各チャンネルのシフトタイミングは演算
タイミング信号発生回路391〜398(第13図)から発生さ
れる第1及び第2のシフトクロック信号φFFA1〜φFFB
4、φFLA1〜FLB4の発生タイミングに対応している。シ
フト動作には、フィルタ演算のためのシフト動作と記憶
データリフレッシュのためのダミーシフト動作とがあ
る。例えばチャンネル1の場合、タイムスロット4〜19
でのシフトがダミーシフトである。シフト2の欄におけ
る(←)の記号は偶数次モードのとき左シフトを行い、
奇数次モードのときシフトを行わないことを示す。
第20図において、INHの欄はインヒビット信号INHA1〜
INHB4の発生タイミングを示している。奇数次モードの
ときは○印のタイムスロットにおいてインヒビット信号
INHA1〜INHB4が“1"となる。PDOの欄は、各チャンネル
のステートメモリ40,42から乗算器及びアキュムレータ
部41,43に楽音信号サンプル値データが入力されるタイ
ミングを示している。これは各チャンネルの乗算タイミ
ング信号PDOA1〜PDOB4の発生タイミングに対応してい
る。SUMの欄はアキュムレータ84の出力タイミングを示
している。PDOとSUMのタイミングの間に6タイムスロッ
トの遅れがあるのは、遅延回路78,81による5タイムス
ロットの遅れとアキュムレート84による1タイムスロッ
トの遅れによる。アキュムレータ84の出力タイミングの
最後のタイムスロットでは演算終了タイミング信号FEND
Aが発生し、アキュムレータ84の出力をラッチ回路85に
取り込む。
<パラメータメモリ47:第21図>
第21図はパラメータメモリ47の記憶フォーマットの一
例を示しており、キーグループテーブル、タッチグルー
プテーブル、パラメータアドレステーブルとパラメータ
バンクから成っている。実際のフィルタパラメータはパ
ラメータバンクに記憶されており、パラメータアドレス
テーブルにはパラメータバンクから読み出すべきパラメ
ータのアドレスデータが記憶されている。キーグループ
テーブルは各鍵に対応してその鍵をグループ化する情報
を記憶している。一例として鍵数は88、グループ数は44
であり、キーグループテーブルでは各鍵に対応するアド
レス位置にその鍵の属するキーグループに関する相対ア
ドレスデータ(キーグループアドレスという)を記憶し
ている。従って、キーグループテーブルはこのキーコー
ドKCによってアドレスされる。このキーグループテーブ
ルはパラメータメモリ47の所定の絶対アドレス(オフセ
ットアドレスOADSという)から始まる記憶エリアを占め
ている。
タッチグループテーブルは各音色毎の鍵タッチ強度の
各段階に対応してそのタッチ強度をグループ化する情報
を記憶している。一例として音色数は32であり、このタ
ッチグループテーブルは音色コードVNの値0〜31に対応
する32の音色別エリアを含んでおり、またタッチコード
TCHによって表現し得るタッチ強度の段階は一例として6
4であり、各音色別エリアはタッチ0から63に対応する6
4個のアドレス位置を有している。各タッチ強度に対応
するアドレス位置にはそのタッチ強度の属するタッチグ
ループに関する相対アドレスデータ(タッチグループア
ドレスという)が記憶されている。一例としてタッチグ
ループ数は16である。従って、タッチグループテーブル
は音色コードVNとタッチコードTCHによってアドレスさ
れる。このタッチグループテーブルはパラメータメモリ
47の所定の絶対アドレス(これをオフセットアドレスOA
D1という)から始まる記憶エリアを占めている。このタ
ッチグループテーブルを読み出すための絶対アドレスデ
ータは、6ビットのタッチコードTCHの上位に5ビット
の音色コードVNを組合せて11ビットの相対アドレスデー
タ(オフセットアドレスOAD1を0とするアドレス)を作
成し、これをオフセットアドレスOAD1に加算することに
より作成される。
パラメータアドレステーブルは、各キーグループ毎
に、かつ各音色毎に、各タッチグループに対応するフィ
ルタパラメータを記憶しているアドレスの相対アドレス
データ(パラメータアドレスという)を記憶している。
このパラメータアドレステーブルは、各キーグループの
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に加算す
ることにより作成される。
パラメータバンクは一例として2620種類のフィルタパ
ラメータを記憶しており、パラメータアドレス0から26
19に対応する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組のフィルタ
パラメータが順次読み出される。
第21図に示したような階層化されたパラメータメモリ
構造は、メモリ容量を節約することができるので有利で
ある。このようにせずに、44キーグループ、32音色、16
タッチグループの組合せのすべて(22528通り)に対応
して個別にフィルタパラメータを記憶したとすると、22
528×32バイトの記憶容量が要求されるが、第21図のよ
うにすればパラメータアドレステーブルの1408(=44×
32)×32バイトとパラメータバンクの2620×32バイトを
合わせた4028×32バイトの記憶容量しか要求されない。
つまり、キーグループ、音色、タッチグループの組合せ
が異なっていても、フィルタパラメータは共通のものを
使用できる場合があるので、第21図の例では22528通り
の組合せに対して2620種のパラメータを共用する構造と
しており、これによりメモリ容量の節約を図っている。
<パラメータはプロセシングユニット45、パラメータセ
レクタ46、パラメータメモリ47、パラメータ供給回路4
8、49:第15図>
パラメータプロセシングユニット45は、前述のスタテ
ィックモードのために、上述したようなパラメータメモ
リ47の読み出しを制御するものである。プログラムメモ
リ451には、上述のようなパラメータメモリ47の読み出
し制御を実行するプログラムが記憶されている。プログ
ラムカウンタ452はプログラムメモリ451を読み出すため
のプログラムステップ信号PCを発生するもので、8ステ
ージのシフトレジスタ86と加算記87、ゲート88、89、エ
ンド検出回路90を含んでおり、チャンネル分のカウント
動作を時分割的に行う。キーオンパルスKONPがインバー
タ91で反転され、ゲート88の制御入力に加わる。このキ
ーオンパルスKONPは、鍵の押し始めで信号“1"となるも
ので、各チャンネルに対応するものが時分割多重化され
ている。加算記87はシフトレジスタ86の出力に対してゲ
ート89から与えられる“1"を加算するもので、その加算
結果はゲート88を介してシフトレジスタ86に与えられ
る。エンド検出回路90はシフトレジスタ86の出力の値が
プログラムの最終ステップになったか否かを検出するも
ので、最終ステップに至らない場合は信号“0"を出力
し、インバータ92を介して信号“1"をゲート89の制御入
力に与え、1カウントアップを指示する信号“1"が加算
記87に与えられるようにするが、最終ステップに至った
場合は、信号“1"を出力し、インバータ92を介して信号
“0"をゲート89に与え、該ゲート89を閉じ、カウントが
行われないようにする。
以上の構成により、プログラムカウンタ452の内容つ
まりステップ信号PCは、キーオンパルスKONPが発生した
とき「0」にリセットされ以後シフトレジスタ86が一巡
する毎に(8タイムスロット毎に)1カウントアップさ
れ、やがて最終ステップに到達するとカウントが停止さ
れる。一例としてプログラムステップ数は37であり、カ
ウンタ452から出力されるステップ信号PCは「0」から
「36」(最終ステップ)まで順次変化する。ステップ信
号PCはシフトレジスタ86の出力であり、8チャンネルの
ものが時分割多重化されている。
プログラムメモリ451は入力されたステップ信号PCの
ステップに応じて選択制御信号SELC1〜SELC4を読み出
し、かつオフセットアドレスメモリ453を読み出すため
のアドレスデータを読み出す。オフセットアドレスメモ
リ453は前述のオフセットアドレスOADS〜OAD3の値3を
記憶している。オフセットアドレスメモリ453から読み
出されたアドレスデータADOF(OADS〜OAD3)のいずれか
は加算器454に入力される。加算器454はセレクタ455か
ら与えられる相対アドレスデータRADDとオフセットアド
レスデータADOFとを加算し、その出力をアドレスデータ
PRADとしてパラメータメモリ47のアドレス入力に加わ
る。
キーグループアドレスレジスタ456、タッチグループ
アドレスレジスタ457、パラメータアドレスレジスタ458
は夫々8ステージのシフトレジスタから成り、キーグル
ープアドレスデータKEYG、タッチグループアドレスデー
タTCHG、パラメータアドレスデータPADを各チャンネル
毎に時分割的に記憶するものである。各レジスタ456〜4
58の入力側にセレクタ93〜95が設けられており、パラメ
ータメモリ47から読み出されたデータが各セレクタの一
方の入力に加わる。各セレクタ93〜95の他方の入力には
各レジスタ456〜458の出力が加わる。セレクタ93〜95の
選択制御信号SELC2〜SELC4はプログラムメモリ451から
与えられるようになっており、プログラムのステップに
応じて、パラメータメモリ47の7読み出し出力データを
レジスタ456〜458に取り込むか、あるいはレジスタ456
〜458に一旦取り込んだデータを循環保持するかの制御
を行う。明らかなように、パラメータメモリ47から前述
のキーグループアドレスデータが読み出されたときこれ
をキーグループアドレスレジスタ456に取り込み、前述
のタッチグループアドレスデータが読み出されたときこ
れをタッチグループアドレスレジスタ457に取り込み、
前述のパラメータアドレスデータが読み出されたときこ
れをパラメータアドレスレジスタ458に取り込むように
選択制御信号SELC2〜SELC4が発生される。
各レジスタ456〜458にストアされたアドレスデータKE
YG、TCGH、PADはセレクタ455に入力される。セクタ455
にはキーコードKC、音色コードVN及びタッチコードTCH
更にはプログラムカウンタ452から出力されるステップ
信号PCの最下位ビットPCLSB及びこのステップ信号PCか
ら「4」(2進の“100")を引いたデータPC−4も入力
されている。セレクタ455ではプログラムメモリ451から
与えられる選択制御信号SELC1に応じて入力データを所
定の組合せで選択しかつ選択したデータを相対アドレス
データRADDにおける所定の重みに対応するビット位置に
位置させ、こうして相対アドレスデータRADDを作成し出
力する。
このパラメータプロセスシングユニット45において実
行される37ステップの処理内容は下記の通りである。
PC=0のとき:キーグループテーブル読出し処理
選択制御信号SELC1によりキーコードKCを選択し、オ
フセットアドレスデータADOFとしてキーグループテーブ
ルのオフセットアドレスOADSを読み出す。また、選択制
御信号SELC2によりパラメータメモリ47の出力データを
キーグループアドレスレジスタ456に取り込む。これに
より、パラメータメモリ47のキーグループテーブルから
キーコードKCに対応するキーグループアドレスが読み出
され、これがレジスタ456にストアされる。
PC=1のとき:タッチグループテーブル読出し処理
信号SELC1により音色コードVNとタッチコードTCHを選
択し、最下位ビットにTCHを、その上位にVNを、位置さ
せて相対アドレスデータRADDを作成する。オフセットア
ドレスデータADOFとしてタッチグループテーブルのオフ
セットアドレスOAD1を読み出す。また、信号SELC3によ
りパラメータメモリ47の出力データをタッチグループア
ドレスレジスタ457に取り込む。これにより、パラメー
タメモリ47のタッチグループテーブルから音色コードVN
及びタッチコードTCHに対応するタッチグループアドレ
スが読み出され、これがレジスタ457にストアされる。
PC=2,3のとき:パラメータアドレステーブル読出し処
理
信号SELC1によりキーグループアドレスデータKEYG、
音色コードVN、タッチグループアドレスデータTCHG、ス
テップ信号PCの最下位ビットPCLSBを選択し、最下位ビ
ットからPCLSB、TCHG、VN、KEYGの順で位置させて相対
アドレスデータRADDを作成する。データADOFとしてパラ
メータアドレステーブルのオフセットアドレスOAD2を読
み出す。また、信号SELC4によりパラメータメモリ47の
出力データをパラメータアドレスレジスタ458に取り込
む。これにより、パラメータメモリ47のパラメータアド
レステーブルから適切なパラメータアドレスが読み出さ
れ、これがレジスタ458にストアされる。前述の通り、
1つのパラメータアドレスデータは12ビットから成り、
2バイトの記憶位置に記憶されている(第21図参照)。
ビットPCLSBが“0"のとき(PC=2のステップ)、下位
8ビットのパラメータアドレスデータが読み出され、PC
LSBが“1"のとき(PC=3のステップ)、その上位4ビ
ットのパラメータアドレスデータが読み出される。セレ
クタ95では、このパラメータアドレスデータが12ビット
データに並列化されるようにビット位置を振分けてレジ
スタ458にストアする。
PC=4〜35のとき:パラメータバンク読出し処理
信号SELC1によりパラメータアドレスデータPADと4減
算したステップ信号PC−4を選択し、最下位ビットから
PC−4、PADの順で位置させて相対アドレスデータRADD
を作成する。また、データADOFとしてパラメータバンク
のオフセットアドレスOAD3を読み出す。信号PC−4は、
PC=4〜35の32ステップにおいてその値が「0」から
「31」まで変化する。従って、パラメータアドレスによ
って指定された32バイトから成る1組のフィルタパラメ
ータ(第21図参照)がパラメータメモリ47のパラメータ
バンクから1バイトづつ順次読み出される。
PC=36のとき:プログラムカウンタ452をストップ
し、フィルタパラメータの読み出しシーケンスを終了す
る。
パラメータメモリ47から読み出されたフィルタパラメ
ータはタイミング同期化回路459に入力される。この回
路459はプログラムステップ信号PCとタイミング信号発
生回路39のデコーダ56(第13図)から与えられるタイミ
ング信号群TS1を受入れ、これらの信号に基づき、各次
数のフィルタパラメータを所定のタイミングに同期化し
て出力する。この同期化回路459の出力はスタティック
モード用のフィルタパラメータSPRとしてパラメータセ
レクタ46のA入力に与えられる。パラメータセレクタ46
のB入力にはマイコンインターフェース44(第11図)か
ら出力されたダイナミックモード用のフィルタパラメー
タDPRが与えられる。セレクタ46の選択制御入力SBには
マイコンインタフェース44から出力されたダイナミック
/スタティック選択信号DSが与えられ、ダイナミックモ
ード時はB入力のパラメータDPRを選択し、スタティッ
クモード時はA入力のパラメータSPRを選択する。
セレクタ46の出力はA,B各系列のパラメータ供給回路4
8,49に入力される。A系列の回路48のみ詳細例を示した
が、B系列の回路49も同一構成である。パラメータ供給
回路49において、分配回路485は、セレクタ46からシリ
アルに与えられるパラメータデータのうちA系列のチャ
ンネル1〜4に関するデータを取り込み、これを各チャ
ンネル別に並列化すると共に、フィルタ係数データ(チ
ャンネル1ではCOEA1)、重みづけデータ(チャンネル
1ではWEIA1)、偶奇識別データ(チャンネル1ではEOA
1)の別に並列化し、これらを各チャンネルに対応する
記憶回路481〜484に分配する。このような分配制御のた
めに、適宜のタイミング信号TS2がタイミング信号発生
回路39のデコーダ56(第13図)から発生され、分配回路
485に与えられる。
記憶回路481〜484はチャンネル1について詳細例を示
すが、他のチャンネルに関しても同様である。12ビット
のフィルタ係数データCOEA1はセレクタ96を介して16ス
テージのシフトレジスタ97に入力される。このフィルタ
係数データCOEA1は16タイムスロットにおいて16次数分
のデータが時分割多重化されており、この16次数分のデ
ータがシフトレジスタ97の各ステージに取り込まれる。
シフトレジスタ97の内容はセレクタ96を介して循環保持
される。3ビットの重みづけデータWEIA1はラッチ回路9
8に入力される。1ビットの偶奇識別データEOA1はラッ
チ回路99に入力される。セレクタ96及びラッチ回路98、
99の制御は、図示しない適宜の制御信号によって適切な
タイミングで行われる。すなわち、スタティックモード
のときは、鍵の押し始めに応答してパラメータメモリ47
から読み出された16次数分のパラメータデータが、タイ
ミング同期化回路459、セレクタ46、分配回路485を経由
して記憶回路481に入力されるタイミングに同期して、
セレクタ96が16次数分のフィルタ係数データCOEA1をシ
フトレジスタ97に取り込み、ラッチ回路98、99が重みづ
けデータWEIA1、偶奇識別データEOA1をラッチする。以
後、そのチャンネルに対して新しい押圧鍵が割当てられ
るまで、シフトレジスタ97、ラッチ回路98、99の記憶は
保持される。一方、ダイナミックモードのときは、マイ
コンインタフェース44(第11図)からセレクタ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にしておく。
各記憶回路481〜484のシフトレジスタ97から出力され
るフィルタ係数データはセレクタ486に与えられ、そこ
でタイミグ信号TS3に従って各チャンネルのものが順次
選択され、時分割多重化される。こうして、チャンネル
1〜4に関するフィルタ係数データが時分割多重化さ
れ、A系列のフィルタ系列データCOEAとしてA系列の乗
算器及びアキュムレータ部41(第14図)に供給される。
各記憶回路481〜484のラッチ回路98から出力される重
みづけデータはセレクタ487に与えられ、そこでタイミ
ング信号TS4に従って各チャンネルのものが順次選択さ
れ、時分割多重化される。こうして時分割多重化された
チャンネル1〜4の重みづけデータWEIAはA系列の乗算
器アキュムレータ部41(第14図)に供給される。
各記憶回路481〜484のラッチ回路99にラッチされた各
チャンネル1〜4の偶奇識別データEOA1〜EOA4は対応す
るチャンネルのステートメモリ401〜404(第14図)に並
列的に与えられる。
<ピッチ同期出力回路50:第16図>
第16図において、セレクタ501のB入力にはA系列の
乗算器及びアキュムレータ部41(第11図、第14図)から
出力されたチャンネル1〜4のフィルタ済み楽音信号サ
ンプル値データSMAが時分割多重的に与えられる。第14
図のラッチ回路85において各チャンネル1〜4のフィル
タ済み出力が取り込まれるタイミングは第20図のSUMの
欄の累算最終タイムスロット(斜線の部分)であり、こ
れにより、各チャンネル1〜4のフィルタ済みサンプル
値データSMAのチャンネルタイミングを示すと第17図の
ようになる。セレクタ501のC入力にはB系列の乗算器
及びアキュムレータ部43(第11図)から出力されたチャ
ンネル5〜8のフィルタ済み楽音信号サンプル値データ
SMBが時分割多重的に与えられる。このデータSMBのチャ
ンネルターミングは第17図のようである。
セレクタ501のA入力には8ステージのシフトレジス
タ502の出力が与えられ、該セレクタ501の出力は該シフ
トレジスタ502に入力される。このセレクタ501とシフト
レジスタ502は、各チャンネル1〜8のフィルタ済みサ
ンプル値データを第3図のPS1のチャンネルタイミング
に示すような1タイムスロット単位の高速の時分割タイ
ミングに従って時分割多重化するためのものである。第
13図のデコーダ56からタイムスロット57、13、26、46に
おいて“1"となるタイミング信号1REGLDAとタイムスロ
ット11、31、44、64において“1"となるタイミング信号
1REGLDBが発生され、これが第16図のセレクタ501のB選
択制御入力SBとC選択制御入力SCに与えられる。これに
より、B入力に与えられるデータSMAのうち、チャンネ
ル1のデータがタイムスロット57(これは第3図に示す
PS1のチャンネルタイミングのうちチャンネル1のタイ
ミングに対応する)で選択され、チャンネル2のデータ
がタイムスロット13(第3図のPS1のチャンネル2のタ
イミング)で選択され、チャンネル3のデータがタイム
スロット26(第3図のPS1のチャンネル3のタイミン
グ)で選択され、チャンネル4のデータがタイムスロッ
ト46(第3図のSP1のチャンネル4のタイミング)で選
択される。また、C入力に与えられるデータSMBのう
ち、チャンネル5のデータがタイムスロット11(第3図
のPS1のチャンネル5のタイミング)で選択され、チャ
ンネル6のデータがタイムスロット31(第3図のPS1の
チャンネル6のタイミング)で選択され、チャンネル7
のデータがタイムスロット44(第3図のPS1のチャンネ
ル7のタイミング)で選択され、チャンネル8のデータ
がタイムスロット64(第3図のPS1のチャンネル8のタ
イミング)で選択される。
タイミング信号1REGLDA、1REGLDBをノア回路503で反
転した信号がセレクタ501のA選択制御入力SAに与えら
れる。従って、上述の各タイミングでシフトレジスタ50
2に取り込まれた各チャンネルのフィルタ済みサンプル
値データは、それ以外のタイミングでは該シフトレジス
タ502で循環保持される。
シフトレジスタ502の出力はセレクタ504のA入力に与
えられる。セレクタ504の出力は8ステージのシフトレ
ジスタ505に入力される。シフトレジスタ505の出力はセ
レクタ504のB入力を介して入力側に戻される。セレク
タ504及びシフトレジスタ505は、ディジタルフィルタの
出力楽音信号をそのピッチに同期して再生サンプリング
するためのものである。セレクタ504のA選択制御入力S
Aには入力インタフェース38(第12図)から与えられる
遅延されたピッチ同期信号PS1Dが8タイムスロットの遅
延回路506を介して入力される。
第12図において、ピッチ同期信号PS1はオア回路51を
介して64ステージのシフトレジスタ100に入力される。
このシフトレジスタ100で24タイムスロット遅延された
ピッチ同期信号がアンド回路101に入力され、40タイム
スロット遅延されたものがアンド回路102に入力され、4
8タイムスロット遅延されたものがアンド回路103に入力
され、64タイムスロット遅延されたものがアンド回路10
4に入力される。各アンド回路101〜104の他の入力に
は、第13図のデコーダ56から発生されたタイミング信号
PSS1〜PSS4が夫々入力される。各アンド回路101〜104の
出力はオア回路105に与えられ、遅延されたピッチ同期
信号PSIDが得られる。各信号PSS1〜PSS4の発生タイミン
グは第13図中にかっこ書きで示した通り、である。そこ
において、例えば「1y8」なる表示は8タイムスロット
周期で1番目のタイムスロットで信号“1"が発生するこ
とを示す。従って、タイミング信号PSS1の場合、「1y8,
3y8」であるから、8タイムスロット臭気で1番目と3
番目のタイムスロットで夫々信号“1"が発生する。第13
図中の各信号PSS1〜PSS4のかっこ内の表示と第3図のPS
1のチャンネルタイミングとを参照すれば明らかなよう
に、信号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
タイムスロット、夫々遅延したものを遅延されたピッチ
同期信号PS1Dとする。このようにチャンネルによって遅
延時間が異なる理由は、アダプティブディジタルフィル
タ装置21(第11図)における各チャンネル1〜4、5〜
8の演算タイミングのずれに合せたからである。
第16図に戻り、遅延されたピッチ同期信号PS1Dは遅延
回路506で更に8タイムスロット遅延され、セレクタ504
の入力SAに与えられる。セレクタ504は或るチャンネル
の信号PS1Dが“1"のときそのチャンネルのフィルタ済み
サンプル値データをシフトレジスタ502から取り込み、
シフトレジスタ505に入力する。それ以外のときは、シ
フトレジスタ505の内容がセレクタ504BのB入力を介し
て循環保持される。こうして、セレクタ504及びシフト
レジスタ505の回路において、各チャンネルのフィルタ
済みサンプル値データがそのチャンネルで発生すべき楽
音のピッチに同期して再サンプリングされる。
<フィルタ演算のピッチ同期/非同期の切替>
マイコンインタフェース44(第11図)から第12図のオ
ア回路51に与えられるピッチ同期/非同期指定信号PASY
は、ピッチ同期でフィルタ演算を行う場合常に“0"であ
り、入力インタフェース38はピッチ同期信号PS1に応答
してフィルタ演算要求信号φF1〜φF8及び遅延されたピ
ッチ同期信号PS1Dを発生する。従って、ピッチ同期信号
PS1が発生したとき、つまりフィルタをかけるべき楽音
信号のピッチに同期したサンプリング周期で、ディジタ
ルフィルタ演算が行われる。これにより、得られるフィ
ルタ特性は移動フォルマントとなる。
ピッチに同期させずにフィルタ演算を行なう場合は、
ピッチ同期/非同期指定信号PASYを常に“1"とする。従
って、第12図のオア回路51の出力はピッチ同期信号PS1
の有無にかかわらず、常に“1"となる。従って、入力イ
ンタフェース38は各フィルタ演算サイクル(64タイムス
ロット)毎に一定周期でフィルタ演算要求信号φF1〜φ
F8及び信号PS1Dを発生する。従って、ディジタルフィル
タ演算におけるサンプリング周波数はピッチに無関係に
一定(例えば50kHz)となり、得られるフィルタ特性は
固定フォルマントとなる。
<変更例>
第16図に示したピッチ同期出力回路50はシフトレジス
タ502、505を用いてチャンネル時分割でピッチ同期処理
を行っているが、これに限らず、各チャンネル毎に並列
的に記憶回路を設け、並列的にピッチ同期処理を行うよ
うにしてもよい。
上記実施例では、ディジタルフィルタとして係数が対
称性を示すFIRフィルタを用いたが、これに限らず非対
称の係数のFIRフィルタを用いてもよい。また、フィル
タ型式はFIRに限らずIIR(無限インパルス応答)やその
他の型式を用いるようにしてもよい。
第21図に示したパラメータメモリの記憶フォーマット
はこれに限定されず、様々な変更が可能である。
また、パラメータメモリのアドレスの仕方は上記実施
例に示した手順に限らず、様々な変更が可能である。例
えば、実施例ではキーグループテーブルを先にアクセス
し、次にタッチグループテーブルをアクセスしている
が、これは逆であってもよい。また、第15図ではプログ
ラムメモリ451に読み出し手順を予め記憶したマイクロ
クプログラミング方式を採用し、これによりパラメータ
メモリ47の読み出しを行うようにしているが、このよう
なマイクロプログラム方式によらずに、完全なハードワ
イヤー回路あるいは完全なソフトウェアプログラムによ
って読み出し制御を行うようにしてもよい。
また、上記実施例ではパラメータの決定因子が音高/
音域、鍵タッチ、音色種類の3種であるとしたが、これ
に限らない。例えば時間経過をパラメータ決定因子に含
め、楽音発生次の時間経過に応じて変化するフィルタパ
ラメータを読み出すようにしてもよい。その場合、第15
図のパラメータプロセシングユニット45は楽音発音中も
動作し得るように適宜設計するものとする。また、ブリ
リアンス操作子等の適宜の手動操作子の操作量に応じた
出力をパラメータ決定因子として用いてもよい。
また、上記実施例では複音型の電子楽器においてこの
発明を適用しているが、単音型の電子楽器においても適
用することができるのは勿論である。また、専用の電子
楽器に限らず、楽音信号発生又は処理機能を持つ装置一
般においてこの発明を適用することができる。
上記実施例は、トーンジェネレータからアダプティブ
ディジタルフィルタ装置に入力されるディジタル楽音信
号サンプル値データそれ自体がピッチに同期してサンプ
リングされた状態となっているものとしているが、これ
に限らない。例えば、ピッチ非同期の固定サンプリング
周期でサンプリングされたディジタル楽音信号をディジ
タルフィルタ装置に入力する場合でも、ピッチ同期信号
によってこの入力ディジタル楽音信号をサンプリングし
直しながらピッチに同期したフィルタ演算動作を行うよ
うにすればよい。
また、上記実施例ではピッチ同期信号発生回路はトー
ンジェネレータ内に含まれており、そこで発生したピッ
チ同期信号をアダプティブディジタルフィルタ装置に導
入するようにしているが、これに限らない。例えば、ピ
ッチに同期したサンプリング周期を持つディジタル楽音
信号をディジタルフィルタに入力する場合、このディジ
タル楽音信号のサンプル値のデータの変化を検出するこ
とによりピッチ同期信号を発生し、こうして発生したピ
ッチ同期信号によってフィルタ演算動作を制御するよう
にしてもよい。DETAILED DESCRIPTION OF THE INVENTION [Industrial Application Field] The present invention relates to a filter filter for a digital filter.
Electronic musical instruments and other musical tone generators for parameter supply devices
Functioning equipment or digital audio processing equipment, etc.
Are used. [Prior Art] Using digital filters in the tone circuit of electronic musical instruments
Is, for example, indicated in JP-A-59-44096.
I have. One set of filter parameters is a digital filter
And the filter characteristics (amplitude vs. frequency)
Characteristics) are set. Corresponding to each content of timbre determinant
A plurality of sets of filter parameters are stored in a memory in advance,
A set of filters depending on the selected timbre determinants
The parameters are read. [Problems to be Solved by the Invention] Conventionally, a plurality of timbre determining factors (for example,
Key touch, range, steady tone selection information,
Information, such as the amount of operation of manual controls such as brilliance controls.
If you want to perform different tone control depending on
Multiple sets of filters with one-to-one correspondence to constant factor combinations
The parameters had to be stored in memory.
For example, 44 ranges, 16 key touch groups, 32
One pair for all combinations of street tone (22,528 ways)
If you want to store the filter parameters individually corresponding to 1
Parameter memory, 22528 sets of parameters are stored
A large capacity is required. The present invention has been made in view of the above points, and
Depending on the combination of timbre determinants (parameter determinants)
Supply a set of filter parameters to a digital filter
The parameter memory capacity
Filter parameter supply device that can save
It is something to offer. [Means for Solving the Problems] The filter parameter supply device according to the present invention
Parameter storage means storing a set of filter parameters
And, corresponding to a combination of a plurality of parameter determinants,
Filter parameters to be read from parameter storage
The address of the parameter in the parameter storage means.
Address data is stored in each
The parameter determination is included in each of the address data.
Parameter storage means for different combinations of constant factors
Characterized by the fact that some address the same address in
Parameter address storage means and parameter determination
In response to an input that specifies a combination of factors,
Corresponding to the combination of parameter determinants specified
Parameter address storage means for storing fixed address data
From the memory, and according to the read address data,
Reading a set of filter parameters from the parameter storage means
It is characterized in that it has read-out means for projecting. this
FIG. 1 is a schematic diagram of FIG.
Parameter storage means, 111 is a parameter address storage
Stage, 112 is read means, 113 is a set of read filters
A digital filter to which the parameters are supplied.
As the data showing the parameter determinant, for example,
Key code indicating a pressed key, touch data indicating a key touch,
Tone code indicating the selected stationary tone, depending on the passage of time
Information, appropriate manual operator output information, etc.
Can be. [Action] The parameter corresponding to the combination of
The filter parameters are read directly from the storage means
Instead of the parameter address storage means
Address data for reading the data storage
The parameter storage means according to the address data.
A set of filter parameters is read from. Follow
Corresponding to the combination of parameter determinants.
The data is stored in the parameter address storage means.
Yes, it is not a parameter storage means. Parameter address
The storage means simply stores only the address data.
There is not so much capacity required. Parameters
The storage means stores a plurality of sets of filter parameters
And a set of filter parameters is a multi-order filter.
Relatively large capacity.
Required. However, it corresponds to the combination of parameter determinants
Parameters are read based on the stored address data.
Since it is an indirect address method that is designed to be issued,
One-to-one correspondence for all combinations of data determinants
It is no longer necessary to store data parameters
The number of parameter sets less than the number of combinations
Will be sufficient. That is, the parameter
Filter parameters even if the combination of
May be able to use common things
Is a set of parameters stored in the parameter storage means.
You can reduce the number, which saves memory space
it can. For example, from the above-mentioned range, key touch, and tone type
For 22528 combinations, only 2620 sets of parameters
If the meter is stored in the parameter storage means,
This is shown in the examples below. like this
In some cases, parameters are determined according to a certain combination of parameter determinants.
The address data read from the meter address storage means
Address data read according to another combination
May be the same, and the parameter storage
Read the same parameters for each of the different combinations of
put out. [Effects of the Invention] Therefore, according to the present invention, the combination of parameter determinants
Stored in the parameter storage means in comparison with the total number of
Since the number of parameter sets can be reduced, memory
You can save space. Especially, key touch and range
Various types of parameter determinants such as time
When trying to perform delicate tone control with various combinations
The same as the saved parameter memory configuration
This is advantageous because such tone control can be performed.
You. That is, according to the present invention, a plurality of parameter
Reading parameter storage means corresponding to each combination of constant factors
Parameter address storage means for outputting address data
You can store multiple parameters in each
Various control of timbre control according to the combination of meter determinants
High quality products that can be performed in a state and are optimal for each combination
It has the effect that quality tone control can be performed.
And each of these address data contains
Parameter memory for different combinations of data determinants
Note that some indicate the same address in a column.
The parameter storage means
Determine the number of parameters actually stored,
It can be smaller than the number of combinations of factors,
The effect is that the amount can be saved. Embodiments Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings.
Let me explain. <Description of Overall Configuration of One Embodiment> In FIG. 2, the keyboard 10 indicates the pitch of a musical tone to be generated.
It has a plurality of keys for setting. Key touch detector
11 detects the touch applied to the key pressed on the keyboard 10
The initial touch or after
Any of the switches may be detected. Tone selection
The device 12 is operated from a group of controls for selecting a tone of a musical tone to be generated.
It consists of Pitch bend operator 13 should occur
The pitch of the musical tone is continuously modulated according to the manipulated variable.
For example, a dial-type control
You. The microcomputer 14 has a CPU (central processing unit).
G) RO that stores programs and other data
M (read only memory) 16, working and data
Includes RAM (random access memory) 17 for storage
Via the data and address bus 28
Sends and receives data to and from the circuit and depresses keys on the keyboard 10.
Detection processing and generation of pressed keys for multiple sound channels
Tone assignment processing, tone color selection operation of the tone color selection device 12
Detection processing, detection of the operation amount of the pitch vent operator 13
Processing and other various processing are executed. The tone generator 18 has multiple pronunciation channels
Capable of independently generating digital tone signals
And the key code KC that shows the key assigned to each channel.
And a key-on signal KON that indicates whether the key is on or off.
The necessary data is transferred from the microcomputer 14 via the bus 28.
And receive digital music on each channel based on this.
Generates a sound signal. The tone generator 18 has a
Switch synchronization signal generation circuit 19, and each channel
A pitch synchronization signal that synchronizes with the pitch of the generated tone signal
Occurs for each channel. In the use of this embodiment, the tone generator 18
Is the total of 16 channels of the 1st to 16th channels (Ch1 to Ch16)
The digital tone signal is generated in a time-division manner in the channel. G
Output from the time generator 18 in a time-division multiplexed manner.
The digital tone waveform sample value data is indicated by TDX. Master
Master clock pulse generated from clock generator 20
φ controls the basic operating time of the tone generator 18
Is what you do. Digital tone waveform sample value data
One cycle of TDX time division multiplexing is the master clock pulse.
64 cycles of each cycle φ.
When the time slots for each cycle are numbered from 1 to 64
It is as shown in FIG. The figure shows a multiplexed digitizer.
Le tone waveform sampled data TDX channel timing
The specifications of groups 1 to 16 are also shown. For example, the first channel
Data TDX is divided into 4 slots of time slots 33 to 36
Have been assigned. In the specification of this embodiment, the tone waveform sample value data is used.
Data TDX uses 16 channels of data as described above.
Are multiplexed and output.
The period signals SP1 and SP2 are divided into two systems and the time is divided every 8 channels.
The output is divided and multiplexed. One pitch synchronization signal PS1
Is the time division multiplex of the first to eighth (Ch1 to Ch8) pitch synchronization signals.
The channel timing is shown in FIG.
It seems. The other pitch synchronizing signal PS2 is shown in FIGS.
Time-division multiplexed pitch synchronization signals (Ch9 to Ch16)
Therefore, the channel timing is as shown in FIG.
As can be seen from the figure, the pitch synchronization signal of each channel
PS1 and PS2 occur in the width of one time slot, and the time division
One cycle of multiplexing is 8 time slots. Two series of adaptive digital filter devices (hereinafter
(ADF is sometimes abbreviated as ADF) 21 and 22
Digital filter configured for filtering
And 8 channels each in the specification of this embodiment.
Filtering of the tone signal for
The ADF21 is a filter filter for the tone signals of channels 1 to 8.
ADF21 performs music on channels 9 to 16
Filter sound signals. Inside this ADF21,22
Is a digital filter circuit or filter
Control the supply of parameter memory and filter parameters
Synchronized with the pitch of the tone signal to be filtered and various circuits
The control circuit and filter
Pitch to output the applied tone signal in synchronization with the pitch
Includes circuits for various functions, such as a synchronous output circuit.
The configuration is suitable for filtering sound signals. Digital music output from tone generator 18
The waveform sample value data TDX is input to ADFs 21 and 22.
The pitch synchronization signal PS1 of the first to eighth channels is ADF
21 is input to the pitch synchronization signal of the 9th to 16th channels
PS2 is input to ADF22. ADF21 and 22 have the same pitch
Time when the period signals PS1 and PS2 were generated (signal became "1")
The data TDX of the channel corresponding to the slot is acquired internally.
The sampled data of that channel
Perform a filter operation. Therefore, in one ADF21,
In response to the pitch synchronization signal PS1,
The filter operation of the sound signal is performed, and the other ADF22
9th to 16th channel tone signals according to the sync signal PS2
Performs a signal filter operation. In this way, ADF21 and 22
Filter calculation unit time (synchronized with sampling cycle
Of the tone signal to be filtered.
The pitch is synchronized with the pitch, and the filter
As the calculation time fluctuates, the flow formant characteristics
Filtering is realized. Note that the basic operation of the circuit
With master clock pulse φ to control the timing
System sync pulse SYNC is given to ADF21 and ADF22.
You. The system sync pulse SYNC is as shown in FIG.
This is a pulse that occurs in a 64 time slot period and
Time-division multiplexing of the tone signal
You. Also, the ADFs 21 and 22 control the filter operation.
Data for the microcontroller via the bus 28
Given under the control of the data 14. In the ADFs 21 and 22, the actual filter operation
Works in synchronism with the pitch of the tone signal to be filtered.
As well as filtered tone waveform sample values
Data is re-sampled in synchronization with the pitch,
It is designed to output with all pitches synchronized
You. This filtered data is resampled in sync with the pitch.
Pitch synchronization signals PS1 and PS2 are also used for pulling.
It is. ADF21 and ADF21 digital output of each channel
The sound waveform sample value data is summed by the accumulator 23,
Musical sound waveform that sums up sample value data for 16 channels
Find sample value data. Output data of accumulator 23
Analog tones with digital / analog converter 24
It is converted into a signal and is pronounced via the sound system 25. In the specifications of this embodiment, the supply of filter coefficients is 2
Controlled in one mode. One is "Static mode
This means that the filter coefficient must be
This is the mode that does not change. The other is "Dynamic model.
Mode, which is the filter coefficient
Is a mode that changes over time.
It is possible to obtain the temporal change of the timbre. Static mode
Filter coefficients for ADF21 and ADF22
Stored in the parameter memory. dynamic
The filter coefficients for the mode are
Stored in the parameter memory 26,
Timed under the control of the computer 14
The data is supplied to ADFs 21 and 22 via a bus 28. Dyna
Mick / static selection switch 27 has a filter coefficient
To select in which mode to control the supply of
Switch. An example of the clock frequency is the master
The clock pulse φ is about 3.2 MHz, and the pitch synchronization signal PS
Repetition of 1 PS2 time division 1 cycle (8 time slots)
The frequency is 400 kHz and the digital tone waveform sample is
One time-division cycle of value data TDX (1 in the filter
The repetition frequency of the calculation cycle) (64 time slots)
50 kHz. Next, a detailed example of each circuit in FIG. 2 will be described.
You. <Generation of Pitch Synchronization Signal> FIG. 4 shows an example of the pitch synchronization signal generation circuit 19.
This is the pitch of one system (channels 1 to 8).
H sync signal PS1 is generated. The other pitch synchronization signal P
S2 is also generated by the same configuration as in FIG. The pitch synchronization signal PS1 is read from the P number memory 29.
The P-numbers are time-divided by the counter 30 for each channel.
It is generated based on counting. What is P number?
A cycle corresponding to each note name C-B in a certain reference octave
Number indicating the number of sample points in one cycle of a musical tone waveform having a wave number
It is. The pitch synchronization signal PS1 is set to 8 channels as shown in FIG.
If you want to occur in the channel time division, the basic
Sampling frequency (in other words, pitch synchronization signal PS1
Resolution) is 1/8 frequency of master clock pulse φ
(For example, 400 kHz), which is common to all note names.
You. On the other hand, the basic sampling frequency is common.
Therefore, the P number of each note name is assigned to the husband corresponding to the note name frequency.
Show different values. Of a certain note name in the standard octave
Let fn be the frequency and use the common sampling frequency (40
0kHz) is fc, the P number corresponding to the note name is
It is decided like. P number = fc / fn (1) Here, the common sampling frequency fc is fc = 400kHz, the sound
Assume that the frequency fn of name A is fn = 440 Hz (that is, A4 sound).
Then, the P number of the note name A is P number of the note name A = 400000 ÷ 440 = 909 from the above formula. On the other hand, the tone waveform that can be generated in the tone generator 18
The number of sample points with different sample point amplitude values per cycle is
Assuming 64, the effective sampling frequency of frequency fn
fe becomes fe = fn × 64 (2), and when fn = 440Hz, fe = 440 × 64 = 28160Hz. Similarly, the P of each note name in a certain reference octave
The number and the effective sampling frequency fe are the P number of each note name
And the effective sampling frequency fe are determined as shown in the table below.
be able to. In this case, the reference octave is F4
One octave up to the # 5 note. In the counter 30 of FIG.
Is the common support established based on the master clock pulse φ.
To divide the sampling frequency fc according to the P number
Is obtained. As is clear from the above, the P number is 1
The number of periods of the common sampling frequency fc in the periodic waveform,
The number of samples, while the tone generator 18
The effective number of sample points per cycle of the tone waveform that can be generated is
As mentioned above, it is 64. Therefore, the common sampling frequency
Assuming that the frequency dividing frequency of fc is frequency dividing number = P number ÷ 64 (3), the frequency dividing output is four parameters per musical tone cycle.
And obtain 64 effective samples.
All pull points can be established. Like this
Divide the common sampling frequency fc by the determined dividing number
Then, from the above equations (1), (2), and (3), fc / frequency division number = (fn x P number) ÷ (P number ÷ 64) = fn x 64 = fe (4) Change the sampling point address according to the frequency output
To establish the effective sampling frequency fe
Can be The effective sump established in this way
The ring frequency fe is in harmony with the pitch frequency fn.
H synchronization is realized. Each char generated from counter 30
Channel pitch sync signal PS1 is assigned to that channel
As shown in the above equation (4),
Output signal, that is, the effective sampling frequency fe.
One signal. By the way, when the frequency division number determined by the above equation (3) becomes an integer,
Is not limited, and often includes decimal numbers. For example, the place of note name A
In this case, the division number is 909 ÷ 64 ≒ 14.20. Therefore, the frequency division operation of the counter 30 will be described later.
And two integers close to the division number determined by equation (3)
Frequency division as appropriate, and the average result is determined by equation (3)
To get the same result as dividing by the divisor
You. In FIG. 4, the P number memory 29 is as shown in Table 1 above.
The P number of each note name in the reference octave as shown
It is stored in advance. Key key assigned to each channel
-Code KC is applied to tone generator 18 via bus 28.
First, the first to the first in the tone generator 18
The key code KC of the 8th channel is the channel of PS1 in Fig. 3.
Time-division multiplexing at the timing shown in the
The key code KC of the 9th to 16th channels is the PS of FIG.
When the timing is as shown in Channel timing 2
Division multiplexing is performed. In this way, time division multiplexed first to first
The key code KC of the 8th channel enters the P number memory 29
Is forced. The P number memory 29 stores the inputted first to eighth channels.
The P number corresponding to the key name of the channel key code KC
Read out in a divided manner. Is the counter 30 a P number memory 29?
Adder 31 for inputting the P number read from
A selector 32 that inputs the output of the arithmetic unit 31 to the “0” input;
8-stage shift register that receives the output of the selector 32
And the lower bits (decimal point) of the output of the shift register 33
Gate 34 which gates the second part) and supplies the other input to the adder 31
And the upper bits (integer part) of the output of the shift register 33
Input all "1" consisting of 7 bits with all bits "1"
And an adder 35 for adding the signal. P number it
The signal itself is a 12-bit binary coded signal.
The output includes one extra bit as a carry signal bit
It consists of a 13-bit signal. Reverse key-on pulse ▲ ▼ and carry of adder 35
The signal output from OUT output CO is input to AND circuit 36
The output of the AND circuit 36 is selected by the selector 32.
Add to selection control input. The output signal of the AND circuit 36 is "0".
Is added from the adder 31 to the "0" input of the selector 32.
Is selected, and when it is “1”, it is given to the “1” input.
Is selected. The “1” input of the selector 32 is
Lower bit (decimal part) of the output of the shift register 33 and the adder
13-bit signal consisting of 35 output 7 bits (integer part)
Is given. The key-on pulse KONP starts when the key is pressed.
This signal is “1” only once,
The corresponding ones are time division multiplexed. Invert key-on
Pulse ▲ ▼ reverses this key-on pulse KONP
Signal. The selector 32, the shift register 33, and the adder 35
Confirm the frequency division number as shown in the above equation (3) according to the P number.
The common sampling frequency according to the integer part of this frequency division number.
This is a circuit for dividing the frequency fc. The adder 31
The value of the integer part is adjusted according to the decimal part of the division number.
It is for In the formula (3), the divisor 64 is 2 6 , The division number
Without doing any special division to find
Only by treating the lower 6 bits of the
A frequency division number corresponding to the frequency can be established. Therefore,
Output signals of the adder 31, the selector 32 and the shift register 33
The lower 6 bits of the 13 bits are the weight of the decimal part.
The seven bits are the weight of the integer part. Adding all “1” signals in the adder 35 is one
Equivalent to subtracting. Therefore, in the adder 35,
Above, subtract 1 from the integer value of the output of the shift register 33.
And do. The subtraction result of this adder 35 was not calculated
"1" input of selector 32 together with 6-bit data of decimal part
Is returned to the adder 35 via the shift register 33.
Is entered. Shift register 33 is the master clock pulse
Since the shift is controlled by φ, the signal of the same channel
Signal is output from the shift register 33 in the master clock cycle.
8 times the clock pulse φ, that is, the common sampling frequency
This is a cycle of several fc. The key to which the key was assigned when the key was first pressed.
Inverted key-on pulse ▲ ▼ is
At the same time, and at this time, the “0” input of the selector 32
The P number of the key is selected via. Of this P number
The integer part is given from the shift register 33 to the adder 35, and the
1 is repeated from the integer part at the cycle of the continuous sampling frequency fc
Is subtracted. When the subtraction result of the integer part is 1 or more,
Carry out continuously from the carry-out output CO of the adder 35
OUT signal “1” is output and the condition of AND circuit 36 is satisfied
Therefore, the selector 32 continues to select the "1" input. Decrease
The output of the adder 35 eventually becomes “0” due to the repetition of the operation.
In other words, the period of fc equal to the number of integer parts of the P number is
When the elapsed time, the carry-out signal of the adder 35 is output.
Therefore, the condition of the AND circuit 36 is not satisfied. At that time,
The selector 32 selects the “0” input, and sets the P number and shift register
Adds the lower 6 bits (decimal part data) of the
Select the output of the calculator 31. Thus, the addition of decimals
Thus, the P number of the changed value is stored in the shift register 33.
Given, this time minus one from the integer value of the changed P number
Is repeated. The gate 34 is an inverted key
Impulse ▲ ▼ can only be used when the key is pressed.
Otherwise, the decimal data is always added to the adder 31.
Give to. Decimal part data for P number in adder 31
The integer value of the frequency division number actually used for the minute by adding the data
Is 1 greater than the integer value of the frequency division number obtained from the P number.
Sometimes. For example, the P number of note name A is 909.
The division number is 14.20, but initially its integer value is 14.
Is divided according to, but the next is 14.20 + 0.20 = 14.40
, The frequency becomes 15.00 and the frequency is divided according to the integer value of 15.
It will be. In this way, the frequency division obtained by the P number
If the integer value of the number is the same or one greater than
The average sampling frequency fc is divided and averaged.
The division operation according to the division number obtained by the P number is
Achieved, the signal at the carry-out output CO of the adder 35 is
It is equivalent to the frequency division output.
The signal inverted in 37 is output as the pitch synchronization signal PS1.
You. For better understanding, the selector 32
4 shows an example of a change in the output of the above. Change timing is common sun
This is the cycle of the pulling frequency fc. At first P number 909
The corresponding divide number is 14.20, then the integer value is decremented by 1.
12.20, 11.20, 10.20, ... 2.20,
1.20 and its integer value decrease by one. 14th cycle of fc
The signal applied to the “1” input of the selector 32 becomes 0.20
When the carry-out signal becomes “0”, the pitch sync signal is output.
The signal PS1 becomes “1” and the selector 32 selects “0” input.
I do. Corresponds to P number 909 for "0" input of selector 32
The division number given by shift register 33 to
The value of 14.40 is added to the numerical value of 0.20. Follow
Thus, 14.40 is output from the selector 32. Then select
The output of data 32 is 13.40, 12.40, 11.40, ... 2.40, 1.40
Next, it decreases by one, and the selector 32
The value added to the “1” input is 0.40, and the adder 32
The carry-out signal of becomes "0" and the pitch synchronization signal PS
1 is generated. At this time, the output of the adder 31 is 14.20 + 0.40
= 14.60, which is through the “0” input of selector 32
To the shift register 33. Thus, note name A
If the frequency is divided by 14 or 15, the common
14 or 15 cycles of pulling frequency fc (eg 400kHz)
The pitch synchronization signal PS1 becomes "1" every time. The pitch corresponding to the other 9th to 16th channels
The period signal PS2 is also generated in the same manner as described above. <Description of Tone Generator> The tone generator 18
Using the pitch synchronization signals PS1 and PS2 of each generated channel
The sampling rate synchronized with the pitch of the musical sound to be generated.
Generating the tone signal according to the imming
Can be. Of course, not limited to this, it is not synchronized with the pitch
Generates tone signal according to sampling timing
It is also possible to do so. Address of sample point of musical tone to be generated (instantaneous phase angle)
Address data to specify the pitch of each channel
Period signals PS1 and PS2 are counted independently for each channel
Can be caused by. However, the same pitch
The period signals PS1 and PS2 are based on the aforementioned reference octave (G4 to F # 5).
The above address data
Is generated in the octave range of the tones
Accordingly, when counting the pitch synchronization signals PS1 and PS2,
It is necessary to switch the count rate. For example, G3 ~ F #
To generate a 4 octave tone,
0.5 is counted each time the signals PS1 and PS2 occur, and G4 to F #
To generate a 5 octave tone, pitch synchronization signal
Each time a signal PS1 or PS2 occurs, 1 is counted, and G5 to F # 6
To generate the octave tone, the pitch sync signal
Every time PS1 and PS2 occur, 2 is counted. Thus,
Changes in sync with the pitch and octave of the musical tone to be generated
Address data to be generated for each channel, and
A digital tone signal is generated based on the dress data. What is the tone signal generation method in the tone generator 18?
The following may be used. For example, the address
Data sampled in the waveform memory according to the data
There is a method to read data sequentially (memory reading method)
Or the above address data is used as phase angle parameter data.
To perform a predetermined frequency modulation operation
Method for obtaining data (FM method) or the above address
Predetermined amplitude modulation using data as phase angle parameter data
A method of performing arithmetic operations to obtain musical tone waveform sample value data
(AM method), or any other known method may be used.
No. When the memory reading method is used,
The tone waveform stored in the memory may be only a one-cycle waveform.
However, a multi-period waveform is preferable because sound quality can be improved.
Good. Store multiple cycle waveforms in waveform memory and read them
For example, as shown in JP-A-52-121313,
All the waveforms from the start to the end of the pronunciation are memorized and read once
Or the method shown in JP-A-58-142396.
Multi-period waveform of attack part and one or more rounds of sustain part
After storing the period waveform and reading the attack waveform once
A method of repeatedly reading the waveform of the sustaining part, or
Discretely sampled as shown in -147793
Stores multiple waveforms and sequentially reads the waveforms to be read
Switching and specifying, and repeatedly reading the specified waveform
Various methods such as a formula are known, and these are appropriately adopted.
May be. <Preliminary explanation of adaptive digital filter> Basically, the operation type of the digital filter is basically as follows.
Finite impulse response (FIR) filter and infinite impulse
There is a response (IIR) filter.
The FIR digital filters 21 and 22 have FIR filters.
Ruta is adopted. First, general related to FIR filters
The explanation is given. (A) Basic circuit configuration of FIR filter FIG. 5 is a basic circuit configuration diagram of the FIR filter.
(N) is the digital tone at any nth sample point
Shape sampled data, the input signal of the FIR filter
It is. z -1 Is a unit time delay element, one sample
This is to set the time delay of the logging cycle. Therefore, x
(N-1) is the digital tone at the (n-1) th sample point
Waveform sample value data, where x (n-N + 1) is n-
Digital tone waveform sample at N + 1th sample point
Value data. N is the duration of the impulse response
Corresponds to the order of the FIR filter. h (0) -h
(N-1) is an Nth-order filter coefficient. This filter
The triangular block with the input coefficients is a multiplying element,
Data x (n) of each sample point delayed by the delay element
Filter coefficients corresponding to x (n-N + 1)
Multiply h (0) to h (N-1). Multiplication output is input
The blocks marked with a + sign are addition elements, and each multiplication
The outputs are added and summed to obtain an output signal y (n). The impulse response Δh of such an FIR filter
The z-transform of (n)}, that is, the transfer function is It is expressed as (B) Linear phase characteristic of FIR filter One feature 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, the phase
The characteristic is required to 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 for the FIR filter are as shown in the following equation (8).
The impulse response has symmetry, and is expressed by the following equation (7).
The phase delay α depends on the duration (filter order) N.
Is uniquely specified. α = (N−1) / 2 (7) h (n) = h (N−1−n) (8) where 0 ≦ n ≦ N−1 (c) Symmetry of filter coefficient (8) The impulse response has symmetry as in the formula
This means that the filter coefficients h (0) to h (N-1)
It means having symmetry. That is, the filter coefficient
Is set with symmetrical characteristics, the linear phase characteristics
Can be realized. To illustrate an example of the symmetry of the impulse response, the order N
When N is an odd number, it is as shown in FIG. 6, and when N is an even number,
It is as shown in FIG. As is clear from the figure, n = (N
-1) Shows symmetrical characteristics centered at / 2. When N is an odd number
Is the (N-1) / 2 order, and the impulse on both sides
The response is symmetrical. When N is an even number, (N-2) / 2
The center between the next and N / 2 is centered, and the impulse response
The answer is symmetric. Orders at symmetric positions are filter
Since the numbers are the same, all the filter coefficients of order N
There is no need to prepare, only half of it. For details, N is
In the case of an odd number, {(N−) from order 0 to (N−1) / 2 order
1) / 2} +1 filter coefficients may be prepared,
{(N-1) / 2} filter order from the + 1st to N-1th order
The number is symmetrical from the 0th order to {(N-1) / 2} -1st order
A certain filter coefficient may be used. That is, 0th order and N
The same filter coefficient is used for the -1st order, and the first order and the N-2
Use the same filter coefficients as N is an even number
In the case of, N / 2 number of filters from 0th order to (N-2) / 2nd order
What is necessary is just to prepare the filter coefficient, and from the N / 2 order to the N-1 order
Filter coefficient is symmetrical position from 0th order to (N-2) / 2th order
May be used. (D) Frequency response of linear phase FIR filter Impulse response shows symmetry as shown in Fig. 6 and Fig. 7
Frequency response H of linear phase FIR filter * (E jω )of
The characteristics are illustrated in FIGS. 8 and 9. N is odd
In the case of a number, ω = π (where π is a sampler) as shown in FIG.
(Corresponding to 1/2 of the ring frequency fs))
It is not fixed to 0 and can be set arbitrarily. If N is even
As shown in FIG. 9, the level when ω = π is always 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 possible to realize the noise characteristics. But N is even
The number of filters is easier to design, and low-pass filters and
It is suitable for the design of bandpass filters. Therefore, depending on the filter characteristics to be realized,
It is preferable to switch the order of the luta
The adaptive digital filter device of this embodiment
In 21 and 22, such even-odd switching of order N is performed.
It is designed so that you can do it. Ie band
Filter characteristics of pass filter and low pass filter
In order to perform high-pass filtering, set the order N to an even number
To filter the data characteristics, set the order N to an odd number.
Set. (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, a feedback loop like an IIR filter.
If there is a problem, the problem such as oscillation will occur, but with the FIR filter
Does not cause problems such as oscillation and is easy to design. Also, when changing the filter characteristics with time
However, FIR filters are advantageous. In this case, usually
The filter function corresponding to each of the different filter characteristics
You have to prepare each pair of numbers,
To reduce the time variation of the filter characteristics, many filter
A set of numbers is required. To solve this problem,
Prepare two sets of filter coefficients that are separated to some extent in time,
By interpolating between the two sets of filter coefficients,
Densely generate a set of filter coefficients with the passage of time,
Thus the filter coefficient generated by interpolation
It is possible to set a filter characteristic that fluctuates between
You. In this way, interpolation of filter coefficients is performed in real time.
To realize time-varying filter characteristics from
As for the one with good stability,
This is very advantageous because it is not necessary to devise the data coefficient. Also, the word length of the signal in the digital filter is finite.
Therefore, the signal data inevitably falls within the limited word length.
Must be rounded. Such rounding becomes noise
However, in the FIR filter, the feedback loop
There is no accumulation of rounding errors
This is advantageous for noise suppression. Regarding the characteristics of the FIR filter as described above
For example, the book "Theory and Application of Digital
Signal Processing "(Book: Lawrence, R. Rabiner; Berna
rd, Gold, Publisher: Prentice-Hall Inc)
Have been. Next, the adaptive digital filter in this embodiment is
For some features of filter devices 21 and 22,
This will be briefly described. (F) How to calculate filter coefficients The filter coefficients are obtained by analyzing actual musical sounds.
Can be An example of the procedure for obtaining the filter coefficient
Explaining with reference to the figure, first, two types showing different tones
Sample sound waveforms (original music sound waveforms) from natural instrument sounds
Prepare by doing For example, Haraku tone 1
The waveform of the piano sound played with a strong key touch.
Sound waveform 2 is the waveform of the piano sound played with a weak key touch
is there. Next, a high-speed Frayer conversion is performed, and the original musical sound waveform 1,
Analysis of 2 free components, based on which both waveforms 1 and 2
Is determined. Next, the waveforms 1 and 2
Calculate the difference in torque characteristics. Next, the spectral properties of the difference are quantified.
The child processing is performed and the filter coefficient is calculated based on this.
U. Finally, the obtained filter coefficient is stored in the memory. The filter coefficient that realizes the time variation of the filter characteristics is
Described in the dynamic control parameter memory 26 (Fig. 2)
Realize a steady filter characteristic that does not change over time
The filter coefficient to be set is set in ADF22 and 22 (Fig. 2).
Data memory. In addition, based on the spectral characteristics of the difference between the two waveforms,
The reason for obtaining the filter coefficient is that the tone generator 18 (No.
Fig. 2 shows one of the original sound waves (for example, a strong key touch is supported)
Tone signal corresponding to the waveform
By applying filtering according to the spectral characteristics of
The other harmonic sound waveform (for example, a wave corresponding to a weak touch)
This is to obtain a musical tone signal corresponding to (shape).
When filtering according to key touch, all keys
Prepare a set of filter coefficients according to the level of touch strength
Side-by-side set of filter coefficients corresponding to several stages
Just prepare and key strength not prepared
The corresponding filter coefficients are determined by interpolation as described above.
You may make it. Of course, not only the filter coefficient corresponding to the key touch,
Pitch (or range) or tone type or other
The filter coefficient corresponding to the factor of
Prepare by. (G) Filter operation synchronized with pitch For each sampling point in ADF21 and ADF22 (Fig. 2)
The calculation timing of is based on the pitch synchronization signals PS1 and PS2
Is set. This means that the unit time
Delay (z in Fig. 5) -1 ) Is generated by the pitch synchronization signals PS1 and PS2.
Means to be set. That is, the filter operation
Sampling frequency fs in pitch synchronization PS1, PS2
Therefore, it is set. Specifically, it corresponds to each note name G to F #
The frequencies of the pitch synchronization signals PS1 and PS2 are shown in Table 1 above.
Since it is the same as fe on the effective sampling frequency
Sampling frequency f of filter operation in F21 and F22
s is shown in the table according to the note name of the input tone signal.
Will be different. Sampler in filter operation
The ringing frequency fs is the frequency as shown in FIG. 8 and FIG.
This corresponds to ω = 2π in the response characteristics. Clear from here
In this way, the sampling frequency fs changes according to the note name.
Then, the frequency corresponding to ω = 2π in the frequency response characteristic
The number will change accordingly and the resulting fill
The data characteristic is a moving formant characteristic. Such a move
Formant characteristics are very suitable for tone color control of musical tone signals
Things. On the other hand, the sampling frequency in the filter operation
If the number is constant regardless of the pitch of the input signal, then
The filter characteristics used are fixed formants. (H) Pitch synchronization / asynchronous switching As described above, the moving formant filter produces a musical sound.
It is suitable for color control, but it depends on the timbre or effect to be obtained.
When a fixed formant filter is preferred
There is. Also, operate the pitch vent operator 13 (Fig. 2).
Fixed even if the pitch of the generated sound slides greatly
Formant filters are preferred. for that reason,
In the ADFs 21 and 22 of this embodiment, the filter operation
It is possible to switch between synchronous and asynchronous.
It is like. Also, such pitch synchronous / asynchronous
Switching is not uniform for all channels, but for each channel
It is possible to independently specify pitch synchronization or asynchronous
It has become so. By the way, a fixed formant is used for the pitch vent operator.
The reason why the filter is more preferable is as follows. Pick
Pitch control by the Tivent operator 13
Not only control, but also a large pitch slide
It is also possible to control the pitch, in which case the note names shown in Table 1 above.
Pitch control is applied across the octave boundary of G to F #.
May be done. At that time, the fill synchronized with the pitch
The sampling frequency fs changes suddenly during
And the cutoff frequency also fluctuates rapidly.
(Because it is a moving formant)
Bring. For example, the pitch vent operation
If the tone slides from F # 5 to G5,
Pulling frequency fluctuates rapidly from 47.359kHz to 25.088kHz
(See Table 1 above)
The cut frequency also fluctuates rapidly by the same amount as the difference. This
To prevent such inconveniences, move the mobile phone during pitch vent operation.
Instead of using a Lumant (filter operation synchronized with pitch),
Fixed formant (filter operation asynchronous to pitch)
Good to do. AD for pitch-asynchronous filter operation
Sampling frequency of filter operation in F21 and F22
Is 50 kHz in the example of FIG. (I) Dynamic / static filter
Switching the number As described above, in the dynamic mode,
In real time, under the control of microcomputer 14
Dynamic control parameter memory 26 (Fig. 2)
Read the parameter data for mic control and send it to ADF2
Must be forwarded inside 1,22. Therefore, the
Data transfer time is limited and the filter coefficient has many orders
And filter coefficient parameters of all orders within a limited time
Data may not be transferred. Therefore, Dyna
Filter order in mic mode is real-time data transfer.
Must have a limited order commensurate with the transit time
No. On the other hand, in static mode, filter
Since there is no need to change the coefficient, there is no such problem.
No. Also, the larger the filter order, the finer the filter characteristics
Is preferred because Therefore, the status
The filter order should be large enough in quick mode
Like that. For the above reasons, the specification of this embodiment
Filter depending on whether it is in Mic mode or Static mode
The order is switched. For example, static
In the mode, the filter order is 32nd order (however, this is an even order
If the characteristic is an odd-order characteristic, the order is 31)
The filter order in dynamic mode is half that
It is 16th order (15th order in the case of odd-order characteristics). (J) Weight control of filter coefficient The binary digital data format of one filter coefficient is 12
Bit filter coefficient data part and 3-bit weight
It consists of a data section. The 3-bit weight data part is
6 types of 0, +1, +2, +3, +4, and +5 bits
Of the shift amount of the shift.
The filter coefficient data part is shifted according to the
Weighting is performed. 12-bit filter coefficient data
To perform weight control that can shift up to 5 bits
Therefore, the dynamic range of the filter coefficient is substantially 17
Expanded to a bit. With such weight control,
Memory while securing a sufficient dynamic range
The number of bits of the filter coefficient to be stored is small
It helps to save the capacity of the filter coefficient memory. <Overview of Adaptive Digital Filter> FIG. 11 shows adaptive digital filters corresponding to the first to eighth channels.
The internal configuration example of the digital filter device (ADF) 21 is omitted.
This is the same block diagram as the other ADF22.
Can be configured. The input interface 38 is the tone generator 18 (second
2), and receives the pitch synchronization signal PS1 from each channel.
Pitch synchronization signal PS1 to the ADF21 internal calculation timing
It is shaped into an adapted state.
Shown in Figure 12. The timing signal generation circuit 39 controls various operations inside the ADF 21.
Generates a timing signal to control the
Pitch of each channel given from interface 38
Necessary for filter operation based on the signal corresponding to the synchronization signal.
It generates various necessary operation timing signals,
The details are shown in FIG. As described below,
Since the channel filter operation is performed in a time-sharing manner,
The timing signal generation circuit 39 provides appropriate timing
Timing signal for filter operation control of each channel
No. is given. State memories 40, 42 and multipliers and accumulators
The units 41 and 43 perform data processing for executing filter operation of the FIR filter.
It is a digital filter circuit. Multiply with state memory 40
Digital filter consisting of a compensator and accumulator unit 41
Circuit (this is called A-series digital filter circuit)
Is the filter operation for the first to fourth channels (Ch1 to Ch4)
The state memory 42, the multiplier and the accumulator
A digital filter circuit composed of the
Column digital filter circuits) are the fifth to eighth channels.
Performs channel (Ch5 to Ch8) filter operation.
You. In the digital filter circuit of each series A and B, 4
Filter calculations for channels are now performed in a time-sharing manner.
ing. Two filter operations for the first to eighth channels
The reason for dividing into columns A and B is as follows.
It depends. State memories 40 and 42 are tone generators
Digital tone signal sump given from 18 (Fig. 2)
Captures the value data TDX in synchronization with the pitch synchronization signal PS1,
The pitch synchronization signal is output by the number of stages corresponding to a predetermined filter order.
Signal PS1 at the timing corresponding to
The unit delay element z in the basic circuit of the FIR filter in FIG. -1 of
Corresponds to the set. Multiplier and accumulator unit 41, 43
Is the digital tone delayed by the state memories 40 and 42
Corresponds to the delay order for signal sample value data
Multiply the filter coefficients of the order and accumulate the result of multiplication of each order
This is the sum of the values.
Corresponding to the multiplication element and the addition element. A series of stations
Group example of the port memory 40, the multiplier and the accumulator unit 41
Is shown in FIG. 14, and the B-series
Can be configured. The microcomputer interface 44 is the microcomputer 14
Via the data and address bus 28 under the control of FIG.
Various data given by ADF21
Is to be supplied to Via this interface 44
The types of data that can be accepted are as follows. Key code KC: indicates a key assigned to each channel. Key-on pulse KONP: Key on pulse assigned to each channel
The signal becomes "1" only once at the start of pressing. Touch code TCH: Press key assigned to each channel
Indicates the strength of the touch at the time. Voice code VN: For the key assigned to each channel
Indicates the selected tone color (voice). The above KC, KONP, TCH, and VN are predetermined time division timings.
Time division multiplexed for each channel according to
Output from the interface 44 and the parameter processing
Unit (sometimes called PPU) 45
You. Pitch synchronous / asynchronous designation signal PASY: Data in this ADF21
Digital filter is executed synchronously or asynchronously.
This signal is used to specify whether This signal PASY is also
Can be provided in a time-sharing manner for each
Pitch synchronous / asynchronous control of filter operation for each channel
Can be done independently. This signal PASY is selected
Tone type or pitch vent operator 13 (Fig. 2)
Operation details, or operation status of dedicated or appropriate controls
Generated according to the status, etc., and
Given to S.44. Output from interface 44
Pitch synchronous / asynchronous designation signal PASY is an input interface
Generated according to pitch sync signal / PS1 given to 38
Control whether the input interface 38 should perform
Used to do. Dynamic filter parameter DPR: Microcomputer
Parameter control for dynamic control under the control of computer 14.
Filter parameters read from memory 26 (Fig. 2)
(Filter coefficient). As mentioned earlier, this dynamic
Mode filter parameter DPR content is sounding
It changes over time. This dynamic mode
The data format of the filter parameter DPR is
Bit filter coefficient data and 3-bit weighted data
Data that further identifies order odd / odd.
including. Also, as described above, this dynamic mode
The order of the filter parameter DPR is 16th (or 15th).
Next). Furthermore, as is clear from the above, the linear phase
Actual preparation due to the symmetry of the filter coefficients in the characteristics
Set of dynamic mode filter parameters DP
R only needs 8th order. Dynamic / static selection signal DS: Dynamic
/ According to the operation of the static selection switch 27 (Fig. 2)
Generated by the above-mentioned dyna
Quick mode or static mode
Show. The above DPR and DS are sent to the interface
Given to Kuta 46. Parameter memory 47 is for static mode
It stores the filter parameters (filter coefficients)
is there. The parameter processing unit 45
Filter parameters for static mode from
Functions to read data. That is, the key-on pulse
When KONP is given, tone code VN, touch code TC
H, the parameters to be read based on the contents of the key code KC
Calculates the address of the data memory 47 and stores it in this address.
The read filter parameters are read from the memory 47.
You. The readout static mode filter parameters
The data SPR is provided to the parameter selector 46. This
Data type of filter parameter SPR for antistatic mode
The formula is also similar to the DPR described above. Also, as mentioned above,
A set of orders for the filter parameter SPR for the tick mode
Is the 32nd order (or 31st order). Moreover, it's clear from the above
As described above, due to the symmetry of the filter coefficient in the linear phase characteristic,
A set of static mode filters
The parameter SPR need only be for the 16th order. The parameter selector 46 is a dynamic / static
For dynamic mode or according to the contents of the
Filter parameters for static mode DPR, SPR
Select one. The selected parameters are the parameters of A-series and B-series.
Input to the data supply circuits 48 and 49. Parameter supply of A series
In the supply circuit 48, the filter parameters of the first to fourth channels are
Accept DPR or SPR, store it, and filter
In synchronization with the timing, the state memory 40 and the multiplier and
It is supplied to the accumulator unit 41. Parameter B
In the supply circuit 49, the filter parameters of the fifth to eighth channels are set.
Do the same for data. Filter parameter SPR for static mode is
The key is read from the parameter memory 47 once at the beginning.
After that, it is stored in the parameter supply circuits 48 and 49. Obedience
Therefore, in static mode, during the sounding period
The filter coefficient does not change and a constant filter characteristic is maintained.
On the other hand, the filter parameter DPR for the dynamic mode
Is the new parameter of the microcomputer interface
In the parameter supply circuits 48, 49 until given through 44
It is stored, and the stored contents are the contents of the parameter DPR
It is rewritten every time it changes. Filters output from parameter supply circuits 48 and 49
Even / odd identification data EO that identifies even-odd of order
A1 to EOA4 and EOB1 to EOB4 are given to the state memories 40 and 42.
The filter coefficient data parts COEA, COEB and weighting data
WEIA and WEIB are multipliers and accumulators 41 and 43
Given to. In addition, in the code in the figure, the suffix A or
B represents the distinction between the A series and the B series. Data EOA1 to EOA
4, EOB1 to EOB4 are given in parallel for each channel.
Data COEA, COEB, WEIA, WEIB
Are given in a time-sharing manner. Parameter processing unit 45, parameter selection
, A parameter memory 47, a parameter supply circuit 48,
A detailed example of 49 is shown in FIG. The pitch synchronization output circuit 50 includes a multiplier and an accumulator.
Filtered for each channel output from sections 41 and 43
Input the tone signal sample value data, and
Circuit that resamples at the timing synchronized with the switch
is there. Here, the signal used for sampling control is
Interface 38. Pitch sync signal PS1D
Yes, this specifies the pitch synchronization signal PS1 for each channel.
It is a time delay. Resampler in sync with the pitch
Of using the delayed pitch synchronization signal PS1D for
The reason is that each channel in the digital filter operation in the previous stage is
This is for adjusting to the time delay of the tone signal of the channel. This
The pitch of the digital filter output signal is
The process of resampling in anticipation
Harmony with the musical tone pitch, so
Resolve. Digital filter calculation synchronized with pitch
If so, the digital filter output signal is equal to the pitch.
Pitch synchronous output circuit
Pitch synchronization can be achieved even if 50 is not provided.
Digital filter operation asynchronous to pitch.
In order to achieve pitch synchronization when performing
The output circuit 5 is required. Details of pitch synchronization output circuit 50
A specific example is shown in FIG. Next, each part of the adaptive digital filter device 21
A detailed example will be described. In each figure, “1D”, “8D”, etc.
Circuits with numbers and the letter D are delay circuits or serial circuits.
It is a shift register and the previous number is the delay stage or stage.
Indicates the number of pages. Also, this delay circuit or shift register
Delay control clock pulse or shift in block
It is not shown that the control clock pulse is input.
In this case, the master clock pulse φ (see FIG. 3)
Therefore, delay or shift control is performed. <Input interface 38: FIG. 12> In FIG. 12, the pitch synchronization signal PS1 is OR circuits 51 and 5.
The data is input to the shift register 53 through the line 2. Shown in FIG.
This pitch sync signal PS1 has 8 time slots
Eight channels are time-division multiplexed as one cycle
Sync with the pitch of the key assigned to a channel
1 time slot corresponding to the channel in the cycle
A signal "1" is generated at. The output of the shift register 53 is AND
Returned to the input side via the circuit 54 and the OR circuit 52,
8 stage shift register PS1
It is circulated and held in the star 53. 8 corresponding to each channel
Latch circuits 55 are provided in parallel,
The pitch synchronization signal output from the
Force D is input in parallel. Latch system for each latch circuit 55
Latch timing corresponding to each channel for input L
Signals φFS1 (25), φFS2 (29),… φFS8 (56) respectively
Input is gone. The number next to φFS is the channel number
And the number in parentheses next to it indicates one operation cycle (the
Time slot number in 64 time slots shown in Fig. 3)
Indicates the time slot number corresponding to that time slot number.
The latch timing signal becomes signal "1"
You. For example, the signal φFS1 (25) is transmitted in time slot 25.
The number "1" corresponds to the first channel.
As can be seen in FIG. 3, time slot 25
The time-sharing switch of the first channel in the pitch synchronization signal PS1
It supports imming. Therefore, this signal φFS1 (2
5) The part of the latch circuit 55 that is latch controlled by
Contents of pitch synchronization signal PS1 of channel 1 (same as pitch
The expected timing is signal "1", other timing
In this case, the signal “0”) is latched. Other channels 2-8
Similarly, the pitch synchronization signal of each channel is
It is latched in parallel by the latch circuit 55 at the timing.
You. The latch timing signal corresponding to each channel
φFS1 (25) to φFS8 (56) are from the decoder 56 shown in FIG.
Generated. Decoder 56 decodes the output of counter 57
To generate various types of timing signals. counter
57 is a modulo 64 that counts the master clock pulse φ
And the system sync pulse SYNC (third
It is reset periodically by (Fig.). Each channel 1
~ 8 latch timing signal φFS1 (25) to φF
Which time slot S8 (56) occurs is shown in Fig. 13.
It will be clear from the display. Returning to FIG. 12, each timing signal φFS1 (25) to φFS8
(56) is multiplexed and inverted by NOR circuit 58. Noah
The output of the circuit 58 is input to the AND circuit 54. This
To the channel that was captured by the latch circuit 55.
The memory of the related shift register 53 is cleared. On the other hand, the channel for which the pitch synchronization signal PS1 becomes "1"
The signal “1” latched by the latch circuit 55 corresponding to
Latch timing signal φFS corresponding to the cycle
It is held until 1 (25) to φFS8 (56) occur. like this
Then, the pitch synchronizing signal PS1 becomes “1” in the latch circuit 55.
Time corresponding to 64 time slots corresponding to the channel
Only the signal "1" is held. The channel corresponding to each channel
The output of the switch circuit 55 is a filter operation request signal φF1 to φF8.
Then, it is given to the timing signal generating circuit 39 in FIG.
As will be described later, this filter calculation request signal φF1 to φF8
When “1” is set, the filter operation for one sample point is executed.
Is performed. Only when the pitch sync signal PS1 is generated
Since the filter operation request signals φF1 to F8 become “1”,
Digit synchronized with the pitch of the tone signal to be filtered
The filter calculation will be performed. For example, as shown in FIG.
If the pitch synchronization signal PS1 becomes “1”
In this case, this signal “1” is the pitch synchronization signal of channel 1.
This is cyclically held by the shift register 53, and the time
When the timing signal φFS1 (25) occurs in slot 25
Latch circuit 55, corresponding to channel 1.
The filter operation request signal φF1 is
And rises to “1”. This signal φF1 is
Up to 24 time slots for a total of 64 time slots
Keep signal “1”. <Timing signal generating circuit 39: FIG. 13> In FIG.
The input interface shown in FIG.
Filter calculation required for each channel given from
A tie for controlling filter operation depending on the request signals φF1 to F8.
Operation timing generation circuits 391 to 398 for generating a timing signal
Is provided for each channel (Ch1 to Ch8). In the figure
Although only the circuit 39 of channel 1 is shown in detail, other channels are not shown.
The circuits 392 to 398 of the modules 2 to 8 have the same configuration, and input
Relation of time signals T (33), T (49), ...
Only differ. The timing signals T (33), T (49),.
Generated from decoder 56. As before, timing
In the code indicating the signal, the number in parentheses is one operation
Time slot in the kuru (64 time slots shown in Fig. 3)
Indicates the slot number and the time corresponding to the time slot number.
The timing signal becomes “1” in the time slot.
And 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 see if the error occurs (whether it becomes "1"). example
For example, timing signal T (33) is
Signal "1" in the memory slot 33.
T (3-18) is a signal from time slot 3 to 18
It becomes "1". Channel 1 computation timing signal generation circuit 391
To explain, the filter operation request signal φF1 and the timing
The signal T (33) is supplied to the AND circuit 59. Therefore,
If it is required to perform a filter operation,
The output of the AND circuit 59 is output at the timing of time slot 33.
It becomes “1”. The output signal of this AND circuit 59 and this signal
Is delayed by one time slot in the delay circuit 60.
Given to circuit 61. The output of this OR circuit 61 is a filter
Digital as data sampling clock signal RLA1
Used to control the unit delay in the filter circuit
It is. This signal RLA1 is time-slotted as shown in FIG.
It becomes "1" at the time of the points 33 and 34. The output of the AND circuit 59 and the channel 1 are included in the AND circuit 62.
Even / odd identification data EOA1 (this is the parameter
Is output from the circuit 48) by the inverter 63.
The inverted signal is given. Let's realize this data EOA1
When the order of the filter characteristics is even, the signal is “1”.
The signal is "0" at the odd order. Output of AND circuit 62
The force is delayed by two time slots in the delay circuit 64, and the
Output as the input signal INHA1. Odd filter order
The output signal of the AND circuit 62 is
"1", the time slot after 2 time slots
At the time of 35, INHA1 becomes "1" (see FIG. 17). filter
If the order is even, the signal INHA1 is always "0". this
The in-bit signal INHA1 is a digital filter circuit
In arithmetic operation, the operation of the highest order of the even order (32nd order) is prohibited
To realize odd-order filter characteristics
used. Timing signals T (3-18) and T (35-50) are OR times
The output of the AND circuit 59 is input to the
Are input to the OR circuit 66. The output of the OR circuit 66 is slow
Delayed by one time slot in the extension circuit 67, the first shift clock
The clock signal φFFA1 is output (see FIG. 17). Ma
The output of the OR circuit 66 and the output of the delay circuit 64 are
The signal inverted at 68 is added to the AND circuit 69.
The signal whose output is delayed by one time slot by the delay circuit 70 is
Output as 2 shift clock signal φFLA1 (Fig. 17
reference). The signal φFLA1 is a tie signal if the filter order is even.
It is “1” at the time of slot 36, but is “0” if it is odd.
You. These shift clock signals φFFA1 and φFLA1 are
When calculating operation for each order in the digital filter circuit
In order to perform divisionally, in the state memory 40 (Fig. 11)
Sample the tone signal sample value data corresponding to each delay stage
Used to shift. Time slot according to the timing signal T (35-50)
Multiplication timing signal PDOA1 that becomes “1” between 35 and 50
(Refer to Fig. 17) is easy for digital filter circuits.
Multiplies sound signal sample value data by filter coefficients
It dictates the time period that should be used. Operation corresponding to other channels 2 to 4 in A sequence
The timer used in the timing signal generation circuits 392 to 294
The timing signals T (49), T (19−34), T (51-2),.
Channel 1 timing signals T (33), T (3-18), T
16 time slots in order from the timing of (35-50)
It is out of alignment. Therefore, the circuit 391 of channel 1
Signals RLA2 to PDO similar to the signals RLA1 to PDOA1 output from
A2, ... RLA4 ~ PDOA4 is the circuit 392 ~ 3 of other channels 2 ~ 4
Timing shifted by 16 time slots from 94 each
Generated by Based on this,
In the filter circuit (especially the multiplier and accumulator unit 41)
1 operation cycle = 16 times during 64 time slots
Four channels 1 to 4
To be able to perform filter operation in a time-sharing manner
Has become. Operation timing corresponding to each channel 5 to 8 of B series
16 between each channel also in the
Timing at a predetermined timing shifted by time slot
Signal T (49), T (19−34), T (51-2),.
RLB1 to PDOB1,... RLB4 to PDOB4
Is generated. Operation timing signal generation circuits 391 to 3 corresponding to A series
The signals RLA1 to PDOA4 generated in 94 are the states of the A series.
Circuits 395 to 398 provided to the memory 40 and corresponding to the B series
The generated signals RLB1 to PDOB4 are B-state memos.
It is given to Li 42 (Fig. 11). <State memory 40: FIG. 14> In FIG.
State memories 401-4 corresponding to the respective channels 1-4
It is equipped with 04 in parallel. Channel 1 state memo
Only the details of the channel 401 are shown.
Tate memories 402 to 404 have the same configuration, and input
The signals are different. For each of the above channels 1 to 4
The corresponding operation timing signal generation circuits 391 to 394 (the thirteenth
Signals generated from RLA1 to PDOA1, ... RLA4 to PDOA4
Are the state memories 401 to 4 corresponding to the own channel.
Entered in 04 respectively. State memory 40, multiplier and accumulator shown in FIG.
Before describing the details of the oscillator section 41,
Figure 18 shows the basic operation of a digital filter circuit.
And the schematic diagram shown in FIG. <Basic operation of even-order filter operation: FIG. 18> FIG.
FIR for realizing filter characteristics consisting of the following (32th order)
5 is a schematic diagram for explaining a basic operation of a type filter operation.
(A) is a block diagram, and (b) is at each operation timing.
(A) each stage Q0 of the shift registers SR1 and SR2
This shows the state of the tone signal sample values in Q15, Q16-Q31. The first shift register SR1 has 16 stages,
Digital tone signal sample value data to be filtered
x n Is input via the selector SEL1. Selector SEL1
Via new sample value data x n Signal for capturing
The filter data sampling clock signal
No. RLA (RLA1 for channel 1) is used and shift
The shift clock pulse of the register SR1 is
First shift clock signal φFFA (for channel 1
φFFA1) is used. Each of the first shift registers SR1
16 stages from sample points n to n-15 on stages Q0 to Q15
Sample data x n ~ X n-15 Is held. This
The output of the final stage of the shift register SR1 is the selector SEL1.
When there is no sampling clock signal RLA via
Returned to the stage. This shift register SR1 moves to the right
Only shifted. The second shift register SR2 also has 16 stages,
The output of the shift register SR1 is input via the selector SEL2.
Is forced. SR1 output is taken to SR2 via selector SEL2.
The filter data sampler
Shift clock of the SR2 using the clock clock signal RLA.
As the pulse, the second shift clock signal φFLA
(ΦFLA1 for channel 1) is used. This second
Each stage Q16 to Q31 of the second shift register SR2 has a sun
16 sample value data x from pull point n to n-31
n-16 ~ X n-31 Is held. The final status of the shift register SR2
Tage Q31 is sampling clocked via selector SEL2.
When there is no clock signal RLA, it is connected to the first stage Q16. This
Shift register SR2 is a bidirectional shift type
Right shift mode when the ring clock signal RLA is “1”,
When it is “0”, it is in left shift mode. The outputs of shift register SR1 and SR2 stages Q15 and Q16
It is added by the adder ADD and the addition result is given to the multiplier MUL.
And multiplied by the filter coefficient COEA. The result of the multiplication is
The multiplication result for all orders given to the accumulator ACC.
The fruits are accumulated there. Thus, accumulate
The filter operation result for one sample point is output from the ACC
Is output. Adds sample value data for two sample points with adder ADD.
And multiply it by the common filter coefficient COEA with the multiplier MUL.
The reason for the calculation is based on the above-mentioned “symmetry of filter coefficient”.
You. That is, two sample value data in a symmetric relationship
Are multiplied by the same value of filter coefficient,
Instead of multiplying separately, add and then multiply by one
By multiplying the sample value data by coefficient at the same time
I have. In FIG. 18 (b), the vertical axis calculation timing is
Progress every time slot according to master clock
You. The numbers shown there indicate the order of convenience,
Time slot number in arithmetic cycle (64 time slots)
It does not indicate the number. In the example shown, the calculation type
Each stage of shift registers SR1 and SR2 when ming 1
X from Q2 to q31 n To x n-31 Up to 32 sample points
Contains data. In the example shown in FIG.
The lock signal RLA is supposed to be "1". This
Shift shift signal according to the shift clock signals φFFA and φFLA.
The transistors SR1 and SR2 are shifted to the right by one stage.
The state shown in FIG. At this time
In the case of channel 1, the soft clock signals φFFA and φFFA are
As shown in the columns of φFFA1 and φFLA1 in Fig. 17, the time slot
Occurs at the point 34. As is clear from the figure,
The next one time slot is shift clock signal φFFA, φF
LA does not occur, so the calculation timing 3 in Fig. 18 (b)
Then, the state of each stage Q0 to Q31 does not change. But,
The 16 time slot widths from operation timing 3 to 18 are:
Speaking of channel 1, multiplication timing signal PDOA1 (17th
It corresponds to the time slot 35 to 50)
Multiplication and accumulation are performed during this time. That is, at operation timing 3, the stages Q15 and Q16
X in n-14 And x n-15 Sample value data is the adder AD
D is added and this is multiplied by the 16th order filter coefficient
The result is stored in the accumulator ACC. Between operation timings 4 and 18, one time slot
The first shift register SR1 shifts right,
The shift register SR2 is shifted to the left, and each stage Q0 to Q31
Changes sequentially as shown. Therefore, the operation type
X in mining 4 n-13 And x n-16 Is added to the 15th order
The filter coefficients are multiplied and the result is accumulator AC
Classified as C. At the next operation timing 5, x n-12 And x
n-17 A similar operation is performed for the asymmetric position
Filter coefficients for the two sample value data in
Calculations are performed sequentially in a time-sharing manner.
X at the symmetric position of n + 1 And x n-30 A similar operation is performed for
This completes the filter operation of all orders. Next performance
At calculation timing 19, the shift is performed once again, as shown in the figure.
As shown in Fig.
Pull value data x n + 1 ~ X n-30 Are lined up. <Odd-order filter operation basic operation: Fig. 19> Fig. 19 shows the filter characteristics of odd-order (31st-order).
Explain the basic operation of FIR type filter operation when it appears
Is a block diagram, (a) is a block diagram, (b) is each performance
(A) shift registers SR1 and SR2 at the calculation timing
Of the tone signal sample values of each stage Q0-Q15, Q16-Q30
Indicates the status. Each block in (a) is shown in Fig. 18 (a).
The difference is that the output of stage Q16 is
Is provided to the adder ADD via the gate GT. Get
The GT is an inhibit signal INHA (IN channel 1
HA1) became controlled by the inverted signal
And when the signal INHA is “1”, the output signal of the stage Q16
Is not provided to the adder ADD. Also, the second
The 16th stage Q31 of the shift register SR2 of
15 stage Q30 and first stage Q16 via selector SEL2
Connected. In (b), the state change of the first shift register SR1
Is the same as FIG. 18 (b). Second shift register SR2
Are slightly different from those in FIG. 18 (for the even-numbered order).
Shift clock signal φFLA of second shift register SR2
Is "1" in the even-order mode at the operation timing 4.
However, it is “0” in the odd-order mode (channel 1
In this case, refer to the time slot 36 in the column of φFLA1 in FIG. 17). Obedience
Therefore, in the odd-order mode, as shown in FIG.
The content of the second shift register SR2 is calculated at operation timing 4
Is not shifted, and it is sequentially between operation timings 5 to 19.
Left shifted. At the operation timing 3, each of the shift registers SR1 and SR2
Stages Q0 to Q30 have musical tones corresponding to the 31st delay stages
Signal sample value x n + 1 ~ X n-29 Are in order,
Sample value x of center order in page Q15 n-14 Contains.
As shown in FIG. 6, in the symmetry of the odd-order mode
In the central position, the unique fill
Data coefficients are assigned. Therefore, at operation timing 3,
Is the output of stage Q16 by the inhibit signal INHA
And the output signal of stage Q15 corresponding to the central order
Add only to the adder ADD and in the multiplier MUL
Is multiplied by a unique filter coefficient corresponding to. At operation timing 4, the first shift register SR1
Is shifted right, and the second shift register SR2 is shifted
Not done. Therefore, stage Q15 has x n-13 Entered, Q16
X n-15 Contains. In addition, the inhibit signal INHA
Becomes "0" and the gate GT is opened. Thus, the central next
Sample value x corresponding to the order on both sides of the number n-13 , x n-15 Add
The data are added to the adder ADD and added.
Are multiplied by a common filter coefficient. At operation timings 5 to 18, SR1 shifts sequentially to the right and SR2 shifts
The sump is shifted left sequentially, and is symmetrical as shown
Values enter stages Q15 and Q16, and both are added and shared
Are calculated. <Digital filter circuit: FIG. 14> Referring to FIG.
The moly 401 will be described. About 16-state memory 401
Will be explained. The 16-stage unidirectional shift register 71
Corresponding to the first shift register SR1 in Fig. 18 and Fig. 19.
And the first shift clock corresponding to channel 1
The shift is controlled by the lock signal FFA1. Tornjeere
Digital sound signal signal supplied from the data 18 (Fig. 2)
Sample value data TDX or latch circuit 73
According to the timing signal XLDA1.
The value data is taken into the latch circuit 73. Music signal
Time division tie of each channel in sample value data TDX
1 to 8 for each channel (see FIG. 3).
Latch timing XLDA1 to XLDA4, XLDB1 to XLDB corresponding to
4 is generated from decoder 56 (FIG. 13). I mentioned earlier
The numbers in parentheses at the end of each signal display in Fig. 13 are
Indicates the time slot number in which the signal of. Each Chan
In the state memory corresponding to the
Latch circuits are provided.
The timing signals XLDA1 to XLDA4 and XLDB1 to XLDB4.
The tone signal sample value data TDX of each channel 1-8 is
Latched separately and thus demultiplexed. Tone signal of channel 1 latched by latch circuit 73
Sample value data is given to A input of selector 74
You. The selector 74 is the operation timing signal generation circuit shown in FIG.
Filter data sampling clock provided from 391
A input is selected when the lock signal RLA1 is "1",
The 16th stage of shift register 71 added to the B input
Select the output signal. As described above, this signal RLA1 is a musical tone
The pitch is synchronized with the pitch of the
Select new sample value data (A input) with
This is given to the shift register 71. It is clear from FIG.
Thus, in the time slot 34 where the signal RLA1 becomes “1”,
Since the shift clock signal φFFA1 is “1”, the shift register
Star 71 is the new sample value data provided by selector 74.
Data to the first stage (Q0). Next time slot
At time 35, the shift operation is paused and the following time slot
The right shift from 36 to 51 is performed as described above. The bidirectional shift register 72 is the second shift register shown in FIGS.
It corresponds to the shift register SR2. This bidirectional system
Each stage Q16-Q31 of the shift register 72 is set as shown.
Lectors SL to SL16 and latch circuits LC1 to LC16
And are connected so that bidirectional shift is possible. sand
That is, the A input of the selector SL1 of the first stage Q16 is
Output signal of the last stage (Q15) of 1 shift register 71
Signal is input to the selector SL2 of each of the other stages Q17 to Q31.
To the A input of SL16, the latch circuit LC1 of the previous stage
~ The output of LC15 is input. Also, the selector for each stage
The B inputs of SL1 to SL16 have latch circuits LC2 to LC2 of the next stage.
The outputs of LC16 and LC1 are input. This allows each selector
When the A input of SL1 to SL16 is selected,
When the B input is selected, a left shift mode is set.
The sampling clock is used as a selection signal for each of the selectors SL1 to SL16.
Lock signal RLA1 is used, and when this signal is "1", A input selection
That is, the right shift mode is selected. However, odd mode
To disable stage Q31 when stage Q30
Selector SL15 is somewhat different from the others. In other words, this
The selector SL15 has a C input,
The output signal of the stage Q16 is added. Regarding channel 1
When the even-odd identification data EOA1 is “1” (that is, even-order mode)
When the signal RLA1 is “0”, the AND circuit 751 is enabled.
The output of the AND circuit 751 becomes the signal "1", which causes the security
Lector SL15 selects the B input and the output of stage Q31 is switched
Provided to tage Q30 (shifted left). EOA1 is
When "1" (in odd-order mode), AND circuit 761 is enabled
When the signal RLA1 is "0", the selector SL15
And the output of stage Q16 is given to stage Q30.
(Shift left over Q31). With the above configuration, the first and second shift registers 7
The change state of the contents of 1,72 is between the even-order mode and the odd-order mode.
According to FIG. 18 (b) and FIG. 19 (b),
It will be exactly the same. The output signal of the first stage Q16 of the second shift register 72
The signal is provided to gate 76 via gate 75. Gate 75
Controlled by a signal that is the inverse of the inhibit signal INHA1
Which corresponds to the gate GT in FIG.
You. The gate 76 outputs the output signal of the first shift register 71.
(Output signal of stage Q15) and given through gate 75
Output signal of the second shift register 72 which is
Opened by calculation timing signal PDOA1 (see Figure 17)
It is. The output of gate 76 is applied to the multiplier and accumulator 41.
It is given to the calculator 77, where two tone signal sample values de
Data is added. This adder 77 is added to FIGS. 18 and 19.
This corresponds to the arithmetic unit ADD. Output of adder 77 is delayed
It is time slot delayed in circuit 78 and input to multiplier 79.
You. Multiplier 79 is a tone signal given via delay circuit 78
A filter applied to the sampled value data via the delay circuit 80
It is for multiplying the filter coefficient data COEA. Multiplier 79
The output is delayed by the delay circuit 8 for 48 time slots and then shifted.
Given to 82. 5 ties for shift control input of shifter 82
A delay circuit 83 that sets the delay of the
Receiving data WEIA. This multiplier 79 and shifter 82
Corresponds to the multiplier MUL in FIGS. 18 and 19.
You. That is, as described above, the filter coefficient data COEA is
This is the effective bit data of the filter coefficient, and
The effective bit of this filter coefficient and the tone signal sample
Multiplication with the default value data is performed. And this multiplication result
In shifter 82 according to the value of weighting data WEIA.
Real number of filter coefficients by shifting
And the tone signal sample value data are multiplied. The output of shifter 82 is applied to accumulator 84 and
The multiplication result corresponding to each order of the channel is accumulated
Is The output of accumulator 84 enters latch circuit 85.
Latched according to the computation end timing signal FENDA
Is done. This signal FEND is generated by the decoder 56 in FIG.
It is. As shown in the figure, this signal FENDA
Becomes "1" in the time slots 8, 24, 40 and 56. Thailand
In slot 56, the calculation result of channel 1 is latched,
8 latches the calculation result of channel 2, and 24 latches the result.
The operation result of channel 3 is latched.
Latch the operation result. B-series operation from decoder 56
The end timing signal FENDA is also generated at the same time. The multiplier and accumulation unit 41 has four channels
Is shared by time sharing. That is, the adder 77
Channel 1 state memory 401 gate 76 output
Not only the state memories 402-404 of channels 2-4
Output signal of a gate with similar function provided in
Are multiplexed. Output of each state memory 401-404
Force gate 76 has 16 timeslot width multiplication timing
Signals PDOA1 to PDOA4 differ by 16 time slots
Each is input at the timing. Therefore, each adder 77
Channels 1-4 signals are time-divided every 16 time slots
Multiple inputs. Filter coefficient data COEA and weight
WEIA data for 4 channels are the same as above.
It is time-division multiplexed every 16 time slots at the same timing.
To 16 time slots per channel
In this case, the data from 1st to 16th is time-division multiplexed.
ing. B-series state memory 42, multiplier and accumulator
The control section 43 has the same configuration as that of FIG.
The timing is appropriately different. Digit of A-sequence and B-sequence as shown in FIG.
Filter circuit (ie multiplication with state memories 40, 42)
Channels in the instrument and accumulator 41,43)
FIG. 20 shows the timing of the filter operation for 1 to 8.
You. In Fig. 20, the column of shift 1 indicates the first shift record.
Shift timing of the register (71 for channel 1)
The second shift register (cha
In the case of channel 1, the shift timing of 72) is shown.
You. The direction of the arrow is the shift direction (right shift or left shift)
Is shown. Calculation of shift timing of each channel
Generated from timing signal generation circuits 391 to 398 (Fig. 13).
First and second shift clock signals φFFA1 to φFFB
4. It corresponds to the generation timing of φFLA1 to FLB4. Shi
Shift operation and shift operation for filter operation and memory
There is a dummy shift operation for data refresh.
You. For example, in the case of channel 1, time slots 4 to 19
Is a dummy shift. In shift 2
The left (←) symbol shifts left in the even-order mode,
Indicates that no shift is performed in odd mode. In FIG. 20, the column of INH shows the inhibit signals INHA1 to INHA1.
The timing of INHB4 generation is shown. Odd mode
In some cases, the inhibit signal is used in the time slot marked with a circle.
INHA1 to INHB4 become “1”. The PDO column is for each channel
State memory 40, 42 from multiplier and accumulator
The tone signal sample value data is input to the parts 41 and 43.
Ming. This is the multiplication timing for each channel
Corresponding to the timing of the generation signals PDOA1 to PDOB4.
You. The SUM column shows the output timing of the accumulator 84.
doing. 6 time slots between PDO and SUM timing
There is a delay of 5 times due to delay circuits 78 and 81.
Lot delay and 1 time slot due to accumulation 84
Due to the delay of Accumulator 84 output timing
In the last time slot, calculation end timing signal FEND
A is generated and the output of the accumulator 84 is sent to the latch circuit 85.
take in. <Parameter memory 47: FIG. 21> FIG. 21 shows an example of the storage format of the parameter memory 47.
Examples are shown, key group table, touch group
Table, parameter address table and parameters
Made up of banks. The actual filter parameters are
Parameter address stored in parameter bank
The table shows the parameters to be read from the parameter bank.
Data address data is stored. Key group
The table is the information that groups each key for each key
I remember. As an example, 88 keys and 44 groups
And the key group table
Address relative to the key group to which the key belongs.
Stores dress data (called key group address)
ing. Therefore, the key group table
Addressed by De KC. This key group table
Is stored at a predetermined absolute address (offset) in the parameter memory 47.
Address OADS)
ing. The touch group table shows the key touch intensity for each tone.
Information that groups the touch intensity for each stage
I remember. As an example, the number of tones is 32.
Switch group table supports tone code VN values 0 to 31
Includes 32 tone-specific areas and touch code
The steps of touch strength that can be expressed by TCH are 6 as an example.
4 and each tone color area corresponds to touch 0 to 63 6
It has four address locations. For each touch intensity
Address where the touch intensity belongs
Relative address data related to the loop (touch group
Dress). Touching as an example
The number of loops is 16. Therefore, the touch group table
Is addressed by tone code VN and touch code TCH
It is. This touch group table has parameter memory
47 predetermined absolute addresses (this is the offset address OA
It occupies a storage area starting from D1). This
Absolute address data for reading the switch group table.
Data is 5 bits above the 6-bit touch code TCH
11-bit relative address data
Data (address with offset address OAD1 set to 0)
And add this to the offset address OAD1
Created by Parameter address table is set for each key group.
For each tone, and for each tone
Relative address of the address that stores the router parameter
Stores data (called parameter address).
This parameter address table is used for each key group.
Includes 44 key group areas corresponding to 0-43
This key group area is
Address by the key group address read from the
Be relieved. Each key group area corresponds to tones 0 to 31
Each of the 32 timbre-specific areas
The area is addressed by the timbre code VN. Each tone
Another area is 16 adverts corresponding to touch groups 0 to 15.
Each address position has the above-mentioned touch
Touch group address read from group table
Address. In addition, 2
A memory location for bytes is allocated, and the above-mentioned pad is stored there.
The parameter address data is stored in 12 bits.
This parameter address table is stored in the parameter memory 47.
A predetermined absolute address (this is the offset address OAD2
). This para
Absolute address to read the meter address table
For data, set the least significant bit to “0” or “1”.
(This means that one address position is two bytes, that is, two absolute addresses.
4 bits touch glue on top.
Address data, and the upper 5 bits
Locate the tone code VN, and the upper 6-bit key
Position the group code and add a total of 16 bits of relative address.
Address (offset address OAD2 is 0)
) And add this to the offset address OAD2
It is created by The parameter bank is an example of 2620 types of filter
Parameters from 0 to 26
Includes 2620 parameter storage areas corresponding to 19
You. One parameter storage area is a storage location of 32 bytes
Including (32 absolute address positions),
Parameters corresponding to one set of filter coefficients are stored.
You. The first-order filter coefficients are stored in 2-byte storage locations.
This is broken down into 12-bit files, as described above.
Filter coefficient data (COE) and 3-bit weighting data
(WEI) and 1-bit even / odd identification data (EO).
However, weighting data (WEI) and even / odd identification data (EO)
Is common among the orders in one set of parameters
Therefore, the data is stored only in the first-order storage location, and storage locations of other orders
Do not remember. However, the weighting data (WEI)
It is also possible to store each order independently.
This parameter bank contains the parameter address
The parameter address read from the
Be relieved. The parameter bank of the parameter memory 47
A predetermined absolute address (this is the offset address OAD3
The memory area starting from This parame
The absolute address data for reading the data bank is 12
17-bit relative address
Address data (address with offset address OAD3 set to 0)
Address) in the upper 12 bits of the
Address data OAD3
It is created by adding to. This absolute address
The lower 5 bits of data in 32 steps
The parameter specified by the parameter address
A set of filters consisting of 16 orders in the meter storage area
The parameters are read out sequentially. Hierarchical parameter memory as shown in Fig. 21
The structure is advantageous because it can save memory capacity
is there. Rather than doing this, 44 key groups, 32 tones, 16
Supports all combinations of touch groups (22528 patterns)
If you store the filter parameters individually,
A storage capacity of 528 × 32 bytes is required, but as shown in Fig. 21
In this case, the parameter address table 1408 (= 44 ×
32) x 32 bytes and 2620 x 32 bytes of the parameter bank
Only a combined storage capacity of 4028 x 32 bytes is required.
In other words, a combination of key groups, tones, and touch groups
Filter parameters are common even if
There are 22528 ways in the example of Fig. 21 as they may be used.
Structure that shares 2620 kinds of parameters for the combination of
In this way, the memory capacity is saved. <Parameters are processing unit 45, parameter
Lector 46, parameter memory 47, parameter supply circuit 4
8, 49: Fig. 15> The parameter processing unit 45 is
Parameter note as described above for
It controls the reading of the memory 47. Program memo
The parameter memory 47 as described above is read into the re-451.
A program for executing control is stored. Blog
The ram counter 452 reads the program memory 451
8 steps of program step signal PC
Page shift register 86 and addition notation 87, gates 88 and 89,
It includes a command detection circuit 90 and counts the number of channels.
The operation is performed in a time-sharing manner. Key-on pulse KONP is Inver
It is inverted by the switch 91 and added to the control input of the gate 88. This key
-On-pulse KONP becomes signal “1” at the beginning of key press.
Therefore, the one corresponding to each channel is time-division multiplexed.
ing. Addition 87 is a gain for the output of shift register 86.
Adds "1" given from port 89, and adds
The result is provided to shift register 86 through gate 88.
You. The end detection circuit 90 detects that the output value of the shift register 86 is
Detects whether the last step of the program has been reached
Therefore, if the final step is not reached, output signal "0"
The signal “1” is input to the control of the gate 89 through the inverter 92.
Signal "1" is added to force and count up 1
As given in Note 87, but reached the final step
Output the signal "1" and output the signal via the inverter 92.
Give “0” to gate 89, close gate 89, and count
Don't do it. With the above configuration, the contents of the program counter 452
The key-on pulse KONP occurred in the round step signal PC.
When it is reset to "0", the shift register 86 makes one cycle.
Every time you do it (every 8 time slots), you get 1 count up
The count stops when the final step is reached.
It is. As an example, the number of program steps is 37,
The step signal PC output from the counter 452 starts from "0".
It changes sequentially up to "36" (final step). Step signal
PC is the output of the shift register 86,
Things are time-division multiplexed. The program memory 451 stores the input step signal PC
Read the selection control signals SELC1 to SELC4 according to the step
And to read the offset address memory 453.
Is read. Offset address memo
453 uses the value 3 of the offset address OADS to OAD3 described above.
I remember. Read from offset address memory 453
Any of the issued address data ADOF (OADS to OAD3)
Is input to the adder 454. Adder 454 is selector 455
Relative address data RADD and offset add given by
Address data ADOF and the output is added as address data
It is added to the address input of the parameter memory 47 as PRAD.
You. Key group address register 456, touch group
Address register 457, Parameter address register 458
Each consists of an 8-stage shift register,
Group address data KEYG, touch group address data
Data TCHG, parameter address data PAD for each channel
It is stored for each time division. Each register 456-4
Selectors 93 to 95 are provided on the input side of 58,
The data read from the data memory 47 is stored in each selector.
Join the other input. The other input of each selector 93-95
The output of each register 456-458 is added. Selector 93-95
Select control signals SELC2 to SELC4 from program memory 451
To be given to the steps of the program
Accordingly, the 7 read output data of the parameter memory 47
Populate registers 456-458 or register 456
Controls whether to retain the data once captured in ~ 458
I do. Obviously, from the parameter memory 47,
When the key group address data of is read
To the key group address register 456,
When the touch group address data of
Take this into the touch group address register 457,
When the above parameter address data is read
Take this into the parameter address register 458
Selection control signals SELC2 to SELC4 are generated. Address data KE stored in each register 456 to 458
YG, TCGH, and PAD are input to the selector 455. Sector 455
Has key code KC, tone code VN and touch code TCH
Steps output from the program counter 452
Least significant bit PCLSB of signal PC and whether this step signal PC
Also input data PC-4 minus “4” (binary “100”)
Have been. In the selector 455, from the program memory 451
The input data is stored according to the applied selection control signal SELC1.
Relative address selected in a fixed combination and the selected data
In the bit position corresponding to the predetermined weight in the data RADD
Position and thus create the relative address data RADD.
Power. In this parameter processing unit 45
The processing contents of the 37 steps performed are as follows. When PC = 0: Key group table read processing Selects key code KC by selection control signal SELC1, and
Keyset table as fuset address data ADOF
Read offset address OADS. Also, the selection system
Output data of parameter memory 47 by control signal SELC2
Take in the key group address register 456. to this
From the key group table in parameter memory 47
Reads the key group address corresponding to the key code KC
And this is stored in register 456. PC = 1: Touch group table read processing Selects tone code VN and touch code TCH by signal SELC1
TCH in the least significant bit and VN in the higher bit.
Then, the relative address data RADD is created. Offset
Off touch group table as dress data ADOF
Read the set address OAD1. Also, the signal SELC3
Output data from the parameter memory 47 by touch group
Take it into the dress register 457. This allows the parameter
Tone code VN from the touch group table of data memory 47
And touch group address corresponding to touch code TCH.
Read out and stored in register 457. When PC = 2 or 3: Parameter address table read processing
The key group address data KEYG,
Voice code VN, touch group address data TCHG, switch
The least significant bit PCLSB of the step signal PC is selected, and the least significant bit PCLSB is selected.
Relative to PCLSB, TCHG, VN, KEYG
Create address data RADD. Data as para as para
Read the offset address OAD2 of the meter address table
Protrude. In addition, the signal SELC4 causes the parameter memory 47
Capture output data to parameter address register 458
No. As a result, the parameter address of the parameter memory 47 is
The appropriate parameter address is read from the table.
Which is stored in register 458. As mentioned above,
One parameter address data consists of 12 bits,
It is stored in a 2-byte storage location (see FIG. 21).
When bit PCLSB is “0” (PC = 2 step), the lower
8-bit parameter address data is read out and PC
When the LSB is “1” (PC = 3 step), the upper 4
Parameter address data of the network. Sele
This parameter address data is 12 bits
Register the bit positions so that they are parallelized to the data.
Store at Star 458. When PC = 4 to 35: Parameter bank read processing Reduces parameter address data PAD by 4 by signal SELC1.
Select the calculated step signal PC-4 and start from the least significant bit
Relative address data RADD by positioning in the order of PC-4 and PAD
Create Also, the parameter bank as data ADOF
Read the offset address OAD3 of. Signal PC-4 is
In 32 steps of PC = 4 to 35, the value is from "0"
It changes to "31". Therefore, depending on the parameter address
A set of filter parameters consisting of 32 bytes specified by
Data (see Fig. 21) is the parameter in parameter memory 47
The data is sequentially read from the bank one byte at a time. When PC = 36: Stop program counter 452
Complete the filter parameter read sequence.
You. The filter parameters read from the parameter memory 47
The data is input to the timing synchronization circuit 459. This time
Path 459 generates program step signal PC and timing signal
The timing given from the decoder 56 of the raw circuit 39 (FIG. 13)
Signal group TS1 and accepts each signal based on these signals.
Synchronize a number of filter parameters in time
Output. The output of this synchronization circuit 459 is static
Parameter set as filter parameter SPR for mode
It is applied to the A input of the rector 46. Parameter selector 46
Is the microcomputer interface 44 (Fig. 11) for the B input of?
Output filter parameters for dynamic mode
DPR is given. The selection control input SB of the selector 46
Dynamic output from the microcomputer interface 44
/ Static selection signal DS
In the loading mode, select the B input parameter DPR and
In input mode, the A input parameter SPR is selected. The output of the selector 46 is a parameter supply circuit 4 for each of the A and B systems.
Entered at 8,49. A detailed example is shown only for the A series circuit 48.
However, the B-series circuit 49 has the same configuration. Parameter supply
In circuit 49, distribution circuit 485 is
Out of the parameter data given to
Import data on channels 1 to 4
In addition to parallelizing channels, filter coefficient data (channels)
In channel 1, COEA1), weighted data (channel
1, WEIA1), even / odd identification data (EOA for channel 1)
1) Parallelized separately and correspond to each channel
It is distributed to the memory circuits 481 to 484. Such distribution control
The appropriate timing signal TS2 to generate the timing signal
The distribution circuit generated by the decoder 56 of the circuit 39 (FIG. 13)
Given to 485. Memory circuits 481 to 484 show detailed examples for channel 1.
However, the same applies to other channels. 12 bits
The filter coefficient data COEA1 of
It is input to the shift register 97 of the stage. This filter
Coefficient data COEA1 for 16 orders in 16 time slots
Data is time-division multiplexed.
The data is taken into each stage of the shift register 97.
The contents of the shift register 97 are cyclically held via the selector 96
Is done. The 3-bit weight data WEIA1 is stored in the latch circuit 9.
Entered in 8. The 1-bit even / odd identification data EOA1 is
Input to the switch circuit 99. A selector 96 and a latch circuit 98,
The control of 99 is performed by an appropriate control signal (not shown).
It is done at the timing. Ie static mode
When the key is pressed, the parameter memory 47
The 16th-order parameter data read from the
Via the synchronization circuit 459, selector 46 and distribution circuit 485
Then, in synchronization with the timing input to the memory circuit 481,
Selector 96 selects 16th-order filter coefficient data COEA1
Latch 97 and the latch circuits 98 and 99 are weighted.
WEIA1 and even / odd identification data EOA1 are latched. Less than
Later, a new press key is assigned to that channel.
Memory of the shift register 97 and the latch circuits 98 and 99 until
Will be retained. On the other hand, in dynamic mode,
Selector 46, distribution from con interface 44 (Fig. 11)
Dynamic control parameter for the 8th order via circuit 485
In synchronization with the timing when the meter data DPR is given,
Eighth order filter coefficient of the parameter data DPR
Import data COEA1 into shift register 97 and weight
The data WEIA1 is latched by the latch circuit 98 and the even / odd identification data is
Latch circuit EOA1 in the latch circuit 99. After that, a new die
Until the dynamic control parameter data DPR is given.
The memory of the shift register 97 and the latch circuits 98 and 99 is retained
Is done. In the dynamic mode, shift
Corresponding to 9th to 16th of 16 stages of register 97
8 stages of dynamic control parameters for 8 stages
And store the filter coefficient data of the
The contents of the corresponding eight stages are set to 0. It is output from the shift register 97 of each memory circuit 481 to 484.
The filter coefficient data to be supplied to the selector 486,
In accordance with the timing signal TS3,
Selected and time division multiplexed. Thus, the channel
Filter coefficient data for 1 to 4 are time-division multiplexed.
And the power of the A-series as the A-series filter series data COEA
It is supplied to the calculator and accumulator section 41 (Fig. 14). The weight output from the latch circuit 98 of each memory circuit 481 to 484 is
The found data is given to the selector 487, where it is timed.
Signal of each channel is selected sequentially according to the
And time-division multiplexed. Time multiplexed in this way
Weighted data WEIA of channels 1-4 is multiplied by A sequence
It is supplied to the instrument accumulator section 41 (FIG. 14). Each latched in the latch circuit 99 of each memory circuit 481 to 484
The even / odd identification data EOA1 to EOA4 of channels 1 to 4 correspond to
Channel state memories 401-404 (Fig. 14)
Given in columns. <Pitch synchronization output circuit 50: FIG. 16> In FIG.
From the multiplier and accumulator unit 41 (FIGS. 11 and 14)
The output filtered tone signal of channels 1 to 4
The sample value data SMA is given in time division multiplex. 14th
In the illustrated latch circuit 85, the fill of each channel 1 to 4
The timing at which the output that has been
Column is the last accumulated time slot (shaded area).
This allows filtered samples of each channel 1 to 4
FIG. 17 shows the channel timing of the value data SMA.
Become like The B input multiplier is used for the C input of the selector 501.
And the channel output from the accumulator 43 (FIG. 11).
Filtered tone signal sample value data for channels 5 to 8
SMB is given in time division multiplex. This data SMB
The channel terminating is as shown in FIG. 8-stage shift register for A input of selector 501
The output of the selector 502 is provided, and the output of the selector 501 is
Input to the register 502. Shift with this selector 501
Register 502 is the filtered support for each channel 1-8.
The sample value data is converted to the PS1 channel timing shown in Fig. 3.
High-speed time-division tie per time slot as shown in
This is for time-division multiplexing according to the timing. No.
From the decoder 56 in FIG. 13 to time slots 57, 13, 26, 46
Signal 1REGLDA and time slot
Timing signal that becomes "1" in units 11, 31, 44 and 64
1REGLDB is generated, and this is the B selection of the selector 501 in FIG.
Selection control input SB and C selection control input SC. to this
Of the data SMA given to the B input
The data of rule 1 is time slot 57 (this is shown in Fig. 3).
Channel 1 timing of PS1 channel timing
Data corresponding to channel 2)
Is the time slot 13 (PS1 channel 2
), And the data of channel 3
Slot 26 (timing of channel 3 of PS1 in FIG. 3)
), And the data of channel 4 is
To 46 (timing of channel 4 of SP1 in Figure 3)
Selected. In addition, the data SMB
That is, the data of channel 5 is stored in time slot 11 (FIG. 3).
Timing of PS5 channel 5)
The data of channel 6 is stored in time slot 31 (PS1 in FIG. 3).
Channel 6 timing), channel 7
The data of time slot 44 (channel of PS1 in Figure 3
Data at channel 8
Is the time slot 64 (PS1 channel 8
Imming) is selected. The timing signals 1REGLDA and 1REGLDB are
The inverted signal is given to the A selection control input SA of the selector 501.
It is. Therefore, at each timing described above, the shift register 50
Filtered sample for each channel captured in 2
The value data is stored in the shift register at other times.
502 is circulated and held. The output of the shift register 502 is applied to the A input of the selector 504.
available. The output of the selector 504 is the shift stage of 8 stages.
It is input to Dista 505. The output of shift register 505 is
The signal is returned to the input side via the B input of the collector 504. SEREC
And the shift register 505
Playback sampling of output music signal in synchronization with its pitch
It is for doing. A selection control input S of selector 504
A is provided from input interface 38 (FIG. 12)
The delayed pitch synchronization signal PS1D is delayed by 8 time slots.
It is input via the delay circuit 506. In FIG. 12, the pitch synchronizing signal PS1 is the OR circuit 51.
It is input to the 64-stage shift register 100 via.
24 time slots delayed in this shift register 100
The pitch synchronization signal is input to the AND circuit 101, and 40 times
The slot delayed signal is input to the AND circuit 102, and 4
The signal delayed by 8 time slots is input to AND circuit 103
And the circuit 10 delayed by 64 timeslots
Entered in 4. To the other inputs of each AND circuit 101-104
Is the timing signal generated by the decoder 56 of FIG.
PSS1 to PSS4 are input respectively. Of each AND circuit 101-104
Output is given to OR circuit 105 and delayed pitch synchronization
The signal PSID is obtained. Generation timing of each signal PSS1 to PSS4
Are as shown in parentheses in FIG. There
In, for example, the display "1y8" is 8 time slots
The signal "1" may occur in the first time slot of the cycle.
And Therefore, in the case of the timing signal PSS1, "1y8,
3y8 ”, the first and third in eight time slot odors
A signal "1" is generated in each of the second time slots. Thirteenth
The indication in parentheses of each signal PSS1 to PSS4 in the figure and the PS in FIG.
Seen with channel timing 1 and
In addition, the signal PSS1 is the timing of channels 1 and 3 in PS1.
And PSS2 is connected to channel 2 in PS1.
It becomes “1” at the timing of 6, and PSS3 is the channel in PS1.
It becomes “1” at the timing of channels 3 and 7, and PSS4 becomes PS1
It becomes “1” at the timing of channels 4 and 8 in the channel. From the above, the pitch synchronization signal PS1 of channels 1 and 5
24 time slots, 2 and 6 PS1 40 time slots
PS3 of 3 and 7 is 48 time slots, PS1 of 4 and 8 is 64
Time slot, delayed pitch for each delayed
Synchronous signal PS1D. Thus delayed by the channel
The reason for the different delay times is the adaptive digital fill.
Channels 1 to 4, 5 to 5 in the data device 21 (FIG. 11).
This is because the calculation timing of FIG. Referring back to FIG. 16, the delayed pitch synchronization signal PS1D is delayed.
The circuit 506 further delays by 8 time slots, and the selector 504
Given to the input SA of. Selector 504 is a channel
When the signal PS1D of is “1”, the channel is filtered
Sample value data is fetched from the shift register 502,
Input to the shift register 505. At other times,
Shift register 505 via the B input of selector 504B
Is kept in circulation. Thus, the selector 504 and shift
Filter of each channel in the circuit of register 505
The sampled value data that should be generated on that channel.
Resampled in sync with the pitch of the sound. <Pitch Synchronous / Asynchronous Switching of Filter Operation> From the microcomputer interface 44 (FIG. 11) to the
A Pitch synchronous / asynchronous designation signal PASY given to the circuit 51
Is always "0" when performing filter operation with pitch synchronization.
Input interface 38 responds to pitch synchronization signal PS1.
Filter request signals φF1 to φF8 and the delayed
Generate a sync signal PS1D. Therefore, the pitch sync signal
When PS1 occurs, that is, the musical sound to be filtered
The sampling period synchronized with the signal pitch
Filter calculation is performed. This will give you
Ruta characteristics are moving formants. When performing the filter operation without synchronizing to the pitch,
The pitch synchronous / asynchronous designation signal PASY is always set to “1”. Obedience
Therefore, the output of the OR circuit 51 in FIG.
Is always "1" regardless of the presence or absence of. Therefore, the input
The interface 38 is used for each filter operation cycle (64 time
Filter calculation request signals φF1 to φ at fixed intervals for each lot)
Generate F8 and signal PS1D. Therefore, the digital fill
Sampling frequency in data calculation is independent of pitch
Constant (for example, 50kHz) and the resulting filter characteristics
It becomes a fixed formant. <Modification> The pitch synchronization output circuit 50 shown in FIG.
Pitch synchronization processing by channel time division using 502 and 505
However, it is not limited to this, but it is parallel for each channel.
A memory circuit is installed to perform pitch synchronization processing in parallel.
You may do it. In the above embodiment, the digital filter has a pair of coefficients.
Although an FIR filter showing the nomenclature was used,
A FIR filter having a so-called coefficient may be used. Also Phil
The model is not limited to FIR, but IIR (infinite impulse response)
Other types may be used. Storage format of parameter memory shown in Fig. 21
Is not limited to this, and various modifications are possible. Also, the method of addressing the parameter memory is as described above.
Not limited to the procedure shown in the example, various modifications are possible. An example
For example, in the embodiment, the key group table is accessed first.
And then access the touch group table
However, this may be reversed. Fig. 15 shows the progress
A micro-processor that stores the readout procedure in the RAM memory 451 in advance
Programming method, which allows the
The data is read from the memory 47.
Complete hardware, regardless of the
Ear circuit or complete software program
The read control may be performed in such a manner. In the above embodiment, the determinant of the parameter is pitch /
The range, key touch, and timbre types
Not limited to For example, time lapse is included in the parameter determinant.
Filter that changes with the passage of time following the tone generation
The parameters may be read. In that case, the fifteenth
The parameter processing unit 45 shown in the figure
It shall be designed appropriately so that it can operate. Also, yellowtail
Depending on the amount of operation of appropriate manual controls such as lance controls
The output may be used as a parameter determinant. Further, in the above embodiment, this is applied to a multi-tone electronic musical instrument.
Although the invention is applied, it is also applicable to single-tone electronic musical instruments.
Of course, it can be used. Also, dedicated electronic
Not only musical instruments but also devices with musical signal generation or processing functions
In general, the present invention can be applied. In the above embodiment, the tone generator
Digital music signal input to digital filter device
Signal sample value data itself
It is assumed that it is in a ring state, but this
Not limited to For example, pitch asynchronous fixed sampling
Digital tone signal sampled at
Pitch synchronization signal even when input to the
Sample this input digital tone signal
Perform filter operation synchronized with pitch while correcting
You can do it. In the above embodiment, the pitch synchronizing signal generation circuit
Included in the
Switch to the adaptive digital filter device.
But it is not limited to this. For example,
Digital Music Sound with Sampling Period Synchronized with Switch
When inputting the signal to the digital filter,
Change in the sampled tone data signal
Generates a pitch synchronizing signal.
Control the filter operation by the switch synchronization signal.
It may be.
【図面の簡単な説明】
第1図はこの発明の概要を示すブロック図、
第2図はこの発明の一実施例に係る電子楽器の全体構成
を示すブロック図、
第3図は同実施例における主要な信号のタイミングを示
すタイミングチャート、
第4図は第2図のトーンジェネレータ内に含まれるピッ
チ同期信号発生回路の一例を示すブロック図、
第5図はFIRフィルタの基本構成を示すブロック図、
第6図及び第7図は直線位相FIRフィルタにおけるイン
パルス応答の対称性の一例を次数Nが奇数のときと偶数
のときについて夫々示すグラフ、
第8図及び第9図は直線位相FIRフィルタにおける周波
数応答特性の一例を次数Nが奇数のときと偶数のときに
ついて夫々示すグラフ、
第10図はフィルタ係数を求めるための手順の一例を示す
フローチャート、
第11図は第2図におけるアダプティブディジタルフィル
タ装置の一例を示すブロック図、
第12図は第11図における入力インタフェースの一例を示
すブロック図、
第13図は第11図におけるタイミング信号発生回路の一例
を示すブロック図、
第14図は第11図におけるステートメモリと乗算器及びア
キュムレータ部の一例(すなわちFIR型ディジタルフィ
ルタ回路の一例)を示すブロック図、
第15図は第11図におけるパラメータプロセシングユニッ
トとパラメータ供給回路の一例を示すブロック図、
第16図は第11図におけるピッチ同期出力回路の一例を示
すブロック図、
第17図はフィルタ演算タイミングを制御する各種信号の
発生例を示すタイミングチャート、
第18図は第14図に示されたディジタルフィルタ回路にお
いて偶数次(32次)から成るフィルタ特性を実現する場
合のFIR型フィルタ演算の基本動作を説明するための略
図、
第19図は同じディジタルフィルタ回路において奇数次
(31次)から成るフィルタ特性を実現する場合のFIR型
フィルタ演算の基本動作を説明するための略図、
第20図は第14図に示したようなA、B2系列のディジタル
フィルタ回路における8チャンネル分のフィルタ演算動
作タイミングを示す図、
第21図は第11図及び第15図に示されたパラメータメモリ
における記憶フォーマットの一例を示す図、である。
110……パラメータ記憶手段、111……パラメータアドレ
ス記憶手段、112……読出し手段、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 an outline of the present invention, FIG. 2 is a block diagram showing an overall configuration of an electronic musical instrument according to an embodiment of the present invention, and FIG. A timing chart showing timings of main signals, FIG. 4 is a block diagram showing an example of a pitch synchronization signal generating circuit included in the tone generator shown in FIG. 2, and FIG. 5 is a block diagram showing a basic configuration of an FIR filter. 6 and 7 are graphs showing examples of the symmetry of the impulse response in the linear phase FIR filter when the order N is odd and even, respectively, and FIGS. 8 and 9 are the frequencies in the linear phase FIR filter. FIG. 10 is a graph showing an example of response characteristics when the order N is odd and even, respectively. FIG. 10 is a flowchart showing an example of a procedure for obtaining the filter coefficient, and FIG. 2 is a block diagram showing an example of the adaptive digital filter device in FIG. 2, FIG. 12 is a block diagram showing an example of the input interface in FIG. 11, and FIG. 13 is a block diagram showing an example of the timing signal generating circuit in FIG. FIG. 14 is a block diagram showing an example of the state memory, the multiplier, and the accumulator section (that is, an example of the FIR type digital filter circuit) in FIG. 11, and FIG. 15 is an example of the parameter processing unit and the parameter supply circuit in FIG. 16 is a block diagram showing an example of the pitch synchronization output circuit in FIG. 11, FIG. 17 is a timing chart showing an example of generation of various signals for controlling the filter calculation timing, and FIG. Realizes filter characteristics of even-order (32nd-order) in the digital filter circuit shown in the figure. Fig. 19 is a schematic diagram for explaining the basic operation of the FIR type filter operation in the case of the following, Fig. 19 shows the basic operation of the FIR type filter operation when realizing the filter characteristics consisting of odd orders (31st order) in the same digital filter circuit. FIG. 20 is a diagram showing the filter operation timing for eight channels in the A, B2 series digital filter circuit as shown in FIG. 14, and FIG. 21 is shown in FIG. 11 and FIG. It is a figure which shows an example of the storage format in the parameter memory shown. 110 ... parameter storage means, 111 ... parameter address storage means, 112 ... readout means, 10 ... keyboard, 11 ...
Key touch detector, 18 ... Tone generator, 19 ... Pitch synchronization signal generation 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 synchronization output circuit.
フロントページの続き (56)参考文献 特開 昭59−49595(JP,A) 特開 昭58−40593(JP,A) 特開 昭56−117291(JP,A) 特開 昭61−264397(JP,A) 特開 昭61−264396(JP,A) 特開 昭61−45298(JP,A) 特開 昭59−197096(JP,A)Continuation of front page (56) References JP-A-59-49595 (JP, A) JP 58-40593 (JP, A) JP-A-56-117291 (JP, A) JP 61-264397 (JP, A) JP-A-61-264396 (JP, A) JP-A-61-45298 (JP, A) JP-A-59-197096 (JP, A)
Claims (1)
記憶手段と、 複数のパラメータ決定因子の組合せに対応して前記パラ
メータ記憶手段から読み出すべきフィルタパラメータの
該パラメータ記憶手段におけるアドレスを指示するアド
レスデータをそれぞれ記憶するものであって、記憶され
た当該各アドレスデータの中には前記パラメータ決定因
子の異なる組合せに対して前記パラメータ記憶手段にお
ける同じアドレスを指示するものがあることを特徴とす
るパラメータアドレス記憶手段と、 パラメータ決定因子の組合せを特定する入力に対応し
て、該入力によって特定されるパラメータ決定因子の組
合せに対応する特定のアドレスデータを前記パラメータ
アドレス記憶手段から読み出し、読み出したアドレスデ
ータに応じて前記パラメータ記憶手段から1組のフィル
タパラメータを読み出す読み出し手段と を具えたフィルタパラメータ供給装置。(57) [Claims] Parameter storage means for storing a plurality of sets of filter parameters, and address data for instructing addresses in the parameter storage means of filter parameters to be read from the parameter storage means in correspondence with a combination of a plurality of parameter determinants The parameter address storage means is characterized in that among the stored respective address data, the same address in the parameter storage means is designated for different combinations of the parameter determinants, In response to an input specifying a combination of determinants, specific address data corresponding to the combination of parameter determinants specified by the input is read from the parameter address storage means, and the parameter is read according to the read address data. Filter parameter supply device with a reading means for reading a set of filter parameters from 憶 means.
Priority Applications (6)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP61117522A JP2668676B2 (en) | 1986-05-23 | 1986-05-23 | Filter parameter supply device |
US06/934,781 US4841828A (en) | 1985-11-29 | 1986-11-25 | Electronic musical instrument with digital filter |
DE86116328T DE3689305T2 (en) | 1985-11-29 | 1986-11-25 | Sound signal processing device. |
EP86116328A EP0229926B1 (en) | 1985-11-29 | 1986-11-25 | Tone signal processing device |
SG6795A SG6795G (en) | 1985-11-29 | 1995-01-17 | Tone signal processing device |
HK134295A HK134295A (en) | 1985-11-29 | 1995-08-24 | Tone signal processing device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP61117522A JP2668676B2 (en) | 1986-05-23 | 1986-05-23 | Filter parameter supply device |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP7236170A Division JP2697701B2 (en) | 1995-08-21 | 1995-08-21 | Electronic musical instrument parameter supply device |
Publications (2)
Publication Number | Publication Date |
---|---|
JPS62129892A JPS62129892A (en) | 1987-06-12 |
JP2668676B2 true JP2668676B2 (en) | 1997-10-27 |
Family
ID=14713856
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP61117522A Expired - Fee Related JP2668676B2 (en) | 1985-11-29 | 1986-05-23 | Filter parameter supply device |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2668676B2 (en) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2734511B2 (en) * | 1987-12-04 | 1998-03-30 | カシオ計算機株式会社 | Electronic keyboard instrument |
JP2684833B2 (en) * | 1990-09-11 | 1997-12-03 | ヤマハ株式会社 | Music signal generator |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS5840593A (en) * | 1981-09-04 | 1983-03-09 | ヤマハ株式会社 | Electronic musical instrument |
JPS5949595A (en) * | 1982-09-14 | 1984-03-22 | ヤマハ株式会社 | Digital filter for electronic musical instrument |
JPS6145298A (en) * | 1984-08-09 | 1986-03-05 | カシオ計算機株式会社 | Electronic musical instrument |
JPH0812555B2 (en) * | 1985-05-20 | 1996-02-07 | 松下電器産業株式会社 | Electronic musical instrument |
JPH0812554B2 (en) * | 1985-05-20 | 1996-02-07 | 松下電器産業株式会社 | Electronic musical instrument |
-
1986
- 1986-05-23 JP JP61117522A patent/JP2668676B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JPS62129892A (en) | 1987-06-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US4633749A (en) | Tone signal generation device for an electronic musical instrument | |
EP0199192B1 (en) | Tone signal generation device | |
US4183275A (en) | Electronic musical instrument | |
TW199930B (en) | ||
JP2722907B2 (en) | Waveform generator | |
EP0229926B1 (en) | Tone signal processing device | |
JPS5919356B2 (en) | electronic musical instruments | |
US5140541A (en) | Digital filter system with changeable cutoff frequency | |
JPH0230033B2 (en) | ||
JPH0754432B2 (en) | Music signal generator | |
US5290965A (en) | Asynchronous waveform generating device for use in an electronic musical instrument | |
JP2668676B2 (en) | Filter parameter supply device | |
JPS6233599B2 (en) | ||
JPH09284094A (en) | Digital filter bank device and its operating method | |
US4231277A (en) | Process for forming musical tones | |
JP3081530B2 (en) | Electronic musical instrument | |
JPS62129893A (en) | Digital filter | |
JP2790066B2 (en) | Tone signal generator and waveform memory read-out interpolator | |
JPS62127899A (en) | Musical sound signal processor using digital filter | |
JPS62130009A (en) | Digital filter device | |
JPH052013B2 (en) | ||
JPH087642B2 (en) | Digital function generator | |
JP2697701B2 (en) | Electronic musical instrument parameter supply device | |
JPS62131297A (en) | Electronic musical apparatus | |
JPH02181797A (en) | Musical tone signal synthesizer |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
LAPS | Cancellation because of no payment of annual fees |