JPH052013B2 - - Google Patents
Info
- Publication number
- JPH052013B2 JPH052013B2 JP61155066A JP15506686A JPH052013B2 JP H052013 B2 JPH052013 B2 JP H052013B2 JP 61155066 A JP61155066 A JP 61155066A JP 15506686 A JP15506686 A JP 15506686A JP H052013 B2 JPH052013 B2 JP H052013B2
- Authority
- JP
- Japan
- Prior art keywords
- filter
- data
- signal
- channel
- pitch
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Lifetime
Links
- 238000004364 calculation method Methods 0.000 claims description 80
- 239000011295 pitch Substances 0.000 description 163
- 230000015654 memory Effects 0.000 description 108
- 238000005070 sampling Methods 0.000 description 46
- 230000004044 response Effects 0.000 description 34
- 238000000034 method Methods 0.000 description 30
- 230000001360 synchronised effect Effects 0.000 description 29
- 238000012545 processing Methods 0.000 description 24
- 238000010586 diagram Methods 0.000 description 23
- 230000003111 delayed effect Effects 0.000 description 22
- 230000007274 generation of a signal involved in cell-cell signaling Effects 0.000 description 21
- 230000003068 static effect Effects 0.000 description 18
- 101100096030 Oryza sativa subsp. japonica SMOS1 gene Proteins 0.000 description 11
- 230000003044 adaptive effect Effects 0.000 description 11
- 230000008859 change Effects 0.000 description 10
- 238000001914 filtration Methods 0.000 description 10
- 101001124824 Homo sapiens Nucleolar protein of 40 kDa Proteins 0.000 description 7
- 102100029156 Nucleolar protein of 40 kDa Human genes 0.000 description 7
- 230000006870 function Effects 0.000 description 6
- 230000000717 retained effect Effects 0.000 description 6
- 102100039298 Phosphatidylserine synthase 1 Human genes 0.000 description 5
- 101710138331 Somatostatin-1 Proteins 0.000 description 5
- 238000009825 accumulation Methods 0.000 description 5
- 230000008569 process Effects 0.000 description 5
- 230000003595 spectral effect Effects 0.000 description 5
- 101001076604 Homo sapiens Inhibin alpha chain Proteins 0.000 description 4
- 102100025885 Inhibin alpha chain Human genes 0.000 description 4
- 101100422768 Saccharomyces cerevisiae (strain ATCC 204508 / S288c) SUL2 gene Proteins 0.000 description 4
- 239000008186 active pharmaceutical agent Substances 0.000 description 4
- 230000002457 bidirectional effect Effects 0.000 description 4
- 238000013461 design Methods 0.000 description 4
- 238000003825 pressing Methods 0.000 description 4
- 101100191136 Arabidopsis thaliana PCMP-A2 gene Proteins 0.000 description 3
- 241000239290 Araneae Species 0.000 description 3
- 102100025297 Mannose-P-dolichol utilization defect 1 protein Human genes 0.000 description 3
- 101710089919 Mannose-P-dolichol utilization defect 1 protein Proteins 0.000 description 3
- 238000012952 Resampling Methods 0.000 description 3
- 101100048260 Saccharomyces cerevisiae (strain ATCC 204508 / S288c) UBX2 gene Proteins 0.000 description 3
- 230000003247 decreasing effect Effects 0.000 description 3
- 235000013399 edible fruits Nutrition 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 230000008676 import Effects 0.000 description 3
- 238000012546 transfer Methods 0.000 description 3
- 235000021419 vinegar Nutrition 0.000 description 3
- 239000000052 vinegar Substances 0.000 description 3
- 101000700752 Homo sapiens Serum response factor-binding protein 1 Proteins 0.000 description 2
- 102100029282 Serum response factor-binding protein 1 Human genes 0.000 description 2
- 101001022944 Xenopus laevis LIM domain-binding protein 1 Proteins 0.000 description 2
- 230000001186 cumulative effect Effects 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 230000001934 delay Effects 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 230000010355 oscillation Effects 0.000 description 2
- 230000005236 sound signal Effects 0.000 description 2
- 101150024356 ADF2 gene Proteins 0.000 description 1
- 206010011416 Croup infectious Diseases 0.000 description 1
- 235000016496 Panda oleosa Nutrition 0.000 description 1
- 240000000220 Panda oleosa Species 0.000 description 1
- 241000287462 Phalacrocorax carbo Species 0.000 description 1
- 244000309464 bull Species 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 201000010549 croup Diseases 0.000 description 1
- 239000003292 glue Substances 0.000 description 1
- PCHJSUWPFVWCPO-UHFFFAOYSA-N gold Chemical compound [Au] PCHJSUWPFVWCPO-UHFFFAOYSA-N 0.000 description 1
- 239000010931 gold Substances 0.000 description 1
- 229910052737 gold Inorganic materials 0.000 description 1
- 230000002401 inhibitory effect Effects 0.000 description 1
- 230000000737 periodic effect Effects 0.000 description 1
- 230000002829 reductive effect Effects 0.000 description 1
- 239000004576 sand Substances 0.000 description 1
- 235000012046 side dish Nutrition 0.000 description 1
- 210000002784 stomach Anatomy 0.000 description 1
Landscapes
- Electrophonic Musical Instruments (AREA)
Description
〔産業上の利用分野〕
この発明は電子楽器で使用されるデイジタルフ
イルタ装置に関する。 〔従来の技術〕 電子楽器の音色回路にデイジタルフイルタを用
いることは、例えば特開昭59−44096号公報にお
いて示されている。 〔発明が解決しようとする問題点〕 従来のデイジタルフイルタにおいては、全ての
次数に対応して(N次フイルタの場合は0次から
N−1次までの全次数に対応して)フイルタ係数
を夫々用意しなければならなかつた。そのためフ
イルタ係数供給装置(例えば係数記憶装置)の構
成が大型化するという問題点があつた。また、望
みのフイルタ特性を設計する場合において、全次
数のフイルタ係数の値を考慮しなければならない
ため面倒であつた。特に、楽音信号用のフイルタ
は直線位相特性(入出力波形間においてその位相
が完全に直線特性で対応すること)であれば出力
波形に歪みが生じないので、フイルタ特性を直線
位相特性に設定することが望まれる。 この発明は上述の点に鑑みてなされたもので、
フイルタ係数を供給するための装置の構成を簡単
化すると共に、フイルタ係数の設定を容易化し、
かつ、楽音信号用のフイルタとして好ましい直線
位相特性を容易に実現すると共に、電子楽器での
使用に適した多様なフイルタ特性を比較的簡単に
実現することができ、しかも回路構成が簡単にし
た電子楽器のデイジタルフイルタ装置を提供しよ
うとするものである。 〔問題点を解決するための手段〕 この発明に係る電子楽器のデイジタルフイルタ
装置は、N次のフイルタ演算のために、Nが偶数
の場合はN/2次分、Nが奇数の場合は(N+
1)/2次分のフイルタ係数を順次時分割で供給
する係数供給手段と、デイジタル楽音信号サンプ
ル値データを順次遅延し、N次分のサンプル値デ
ータのうちN次の中央を中心にした対称位置に位
置する2つのサンプル値データを順次提供すると
共に、Nが奇数の場合は対称の中心に位置するサ
ンプル値データについては単独で提供する遅延手
段と、この遅延手段から順次提供される前記2つ
のサンプル値データ同士を順次時分割で加算する
演算と、その加算値に対して該2つのサンプル値
データに共通の前記フイルタ係数を順次時分割で
乗算すると共にNが奇数の場合は対称の中心に位
置する前記単独のサンプル値データには単独のフ
イルタ係数を乗算する演算と、これらの時分割で
逐次乗算された乗算結果を累算する演算とを実行
する演算手段とを具えたものである。 〔作用〕 係数供給手段は、N次のフイルタ演算のための
フイルタ係数を供給するものであり、Nが偶数の
場合はN/2次分、Nが奇数の場合は(N+
1)/2次分のフイルタ係数を順次時分割で供給
する。 遅延手段は、デイジタル楽音信号サンプル値デ
ータを順次遅延するものであり、N次分のサンプ
ル値データのうちN次の中央を中心にした対称位
置に位置する2つのサンプル値データを順次提供
すると共に、Nが奇数の場合は対称の中心に位置
するサンプル値データについては単独で提供す
る。 演算手段は、遅延手段から順次提供される前記
2つのサンプル値データ同士を順次時分割で加算
する演算と、その加算値に対して該2つのサンプ
ル値データに共通の前記フイルタ係数を順次乗算
すると共にNが奇数の場合は対称の中心に位置す
る前記単独のサンプル値データには単独のフイル
タ係数を乗算する演算と、これらの時分割で逐次
乗算された乗算結果を累算する演算とを実行す
る。 こうして、偶数次及び奇数次のどちらのフイル
タ特性でも実現することができ、しかも実現する
N次特性の約半分の係数を使用するだけで、か
つ、時分割により数少ない演算回路要素によつ
て、実現することができる。 〔発明の効果〕 従つて、この発明によれば、偶数次のフイルタ
特性及び奇数次のフイルタ特性のどちらでも実現
することが可能である。後述するように、奇数次
においてはハイパスフイルタ特性を実現すること
が容易であり、一方、偶数次はローパスまたはバ
ンドパス特性に適している。電子楽器において
は、実現しようとする音色特性等に応じて多様な
フイルタ特性を実現することができることが望ま
れるので、この発明のように偶数次のフイルタ特
性及び奇数次のフイルタ特性のどちらでも実現す
ることができるものは、電子楽器のデイジタルフ
イルタ装置に非常に適している。 しかも、Nが偶数の場合はN/2次分、Nが奇
数の場合は(N+1)/2次分のフイルタ係数を
供給するだけでよいので、フイルタ係数供給手段
(例えば係数記憶装置)の構成を簡単化すること
ができる。 また、演算手段においては、対称位置に有る2
つのサンプル値データの加算を時分割で行なうと
共にそれらの加算値に対する係数の乗算も時分割
で行なうので、演算回路構成を極めて簡単にする
ことができる。 また、対称位置に有る2つのサンプル値データ
に共通のフイルタ係数を乗算するようにしたこと
により、インパルス応答が対称特性を示すフイル
タ特性とすることができ、楽音信号のフイルタ処
理に好適な直線位相特性のフイルタを容易に実現
することができる。また、フイルタ係数の数は必
要な次数の約半分で済むため、それだけ係数の設
定も容易となる。など、種々の優れた効果を奏す
る。 〔実施例〕 以下、添付図面を参照してこの発明の実施例を
詳細に説明しよう。 まず、この発明に従うデイジタルフイルタ装置
の基本構成を等価回路によつて示すと第1図のよ
うである。図において、110は係数供給手段、
111は遅延手段、112は演算手段である。ま
た、Dは単位遅延要素、×記号を付した丸形ボツ
クスは乗算要素、+記号を付した丸形ボツクスは
加算要素、を示す。第1図cはNの偶数/奇数を
切り換えることができる点を示しており、aはN
が偶数の場合の等価回路、bはNが奇数の場合の
等価回路、を示す。cにおいて112Gは切換え
ゲートであり、Nが偶数の場合は遅延手段111
からのサンプル値データを実線のように伝達して
aの等価回路に示す構成とし、奇数の場合は2点
鎖線のように伝達してbの等価回路に示す構成と
する。 入力されたデイジタル楽音信号サンプル値デー
タは、遅延手段111で順次遅延され、N次分の
サンプル値データS0〜SN-1(つまり遅延時間0の
S0と1〜N−1段の遅延が施されたS1〜SN-1)が
供給される。係数供給手段110からはNの偶
数/奇数に応じてN/2次分又は(N+1)/2
次分のフイルタ係数k0〜kiが供給される。演算手
段112では、N次分のサンプル値データS0〜
SN-1のうちN次の中央を中心にした対称位置に位
置する2つのサンプル値データに共通のフイルタ
係数を乗算する。図示のような有限インパルス応
答(FIR)型のフイルタ演算形式の場合は、全て
の次数に関するサンプル値データとフイルタ係数
との乗算結果を合計したものが最終的なフイルタ
出力となる。 Nが偶数の場合は、係数供給手段110から供
給されるフイルタ係数k0〜kiはN/2次分であ
り、i=(N−2)/2である。(N−2)/2次
とN/2次の中間が中心となり、その両側の0次
〜i次とi+1次〜N−1次が対称位置に位置す
る。対称位置に位置する2つのサンプル値データ
の組は、S0とSN-1,S1とSN-2,…,SiとSi+1の合
計N/2組である。従つて、例えば、0次の楽音
信号サンプル値データS0とN−1次の楽音信号サ
ンプル値データSN-1に共通のフイルタ係数k0を乗
算し、また、i次の楽音信号サンプル値データSi
とi+1次の楽音信号サンプル値データSi+1に共
通のフイルタ係数kiを乗算する、というように、
対称位置に位置する2つのサンプル値データに対
して各組毎に共通のフイルタ係数k0〜kiを夫々乗
算する。これにより、N(=偶数)次のデイジタ
ルフイルタにおける各次数0〜N−1に対応する
フイルタ係数k0〜ki,ki+1〜kN-1が、事実上、対
称特性で設定されることになる。しかも、実際に
用意するフイルタ係数は必要な次数の半分の数で
済む。このように偶数次のフイルタ係数が対称特
性で設定された場合のインパルス応答の一例を示
すと第7図のようである。 Nが奇数の場合は、係数供給手段110から供
給されるフイルタ係数k0〜kiは(N+1)/2次
分であり、i=(N−1)/2である。そして、
i=(N−1)/2次が中心となり、その両側の
0次〜i−1次とi+1次〜N−1次が対称位置
に位置する。対称位置に位置する2つのサンプル
値データの組は、S0とSN-1,S1とSN-2,…,Si-1
とSi+1の合計(N−1)/2組である。従つて、
例えば、0次の楽音信号サンプル値データS0とN
−1次の楽音信号サンプル値データSN-1に共通の
フイルタ係数k0を乗算し、また、i−1次の楽音
信号サンプル値データSi-1とi+1次の楽音信号
サンプル値データSi+1に共通のフイルタ係数ki-1
を乗算する、というように、対称位置に位置する
2つのサンプル値データに対して各組毎に共通の
フイルタ係数k0〜ki-1を夫々乗算する。但し、丁
度対称の中心に位置するi=(N−1)/2次の
楽音信号サンプル値データSiには単独のフイルタ
係数kiを乗算する。これにより、N(=奇数)次
のデイジタルフイルタにおける各次数0〜N−1
に対応するフイルタ係数k0〜ki-1,ki,ki+1〜
kN-1が、事実上、対称特性で設定されることにな
る。しかも、実際に用意するフイルタ係数は必要
な次数の半分プラス1の数で済む。このように奇
数次のフイルタ係数が対称特性で設定された場合
のインパルス応答の一例を示すと第6図のようで
ある。 第6図、第7図から明らかなように、フイルタ
係数を対称特性で設定したことによりインパルス
応答はn=(N−1)/2を中心とする対称特性
を示す(なお、h(n)はフイルタ係数であり、0≦
n≦N−1であるとする)。Nが奇数の場合は、
(N−1)/2次が中心となり、その両側のイン
パルス応答が対称となる。Nが偶数の場合は、
(N−2)/2次とN/2の中間が中心となり、
その両側のインパルス応答が対称となる。このよ
うにインパルス応答が対称特性を示すことは直線
位相特性をもつFIRフイルタの必要十分条件であ
る。従つて、この発明によれば、直線位相特性の
フイルタを容易に実現することができる。直線位
相特性とすると、フイルタの入出力波形間におい
てその位相が完全に直線特性で対応し、出力波形
に歪みが生じない。従つて、楽音、音声、オーデ
イオ等の信号のフイルタ処理に好適である。 なお、第1図では対称位置に有る2つのサンプ
ル値データに共通のフイルタ係数を乗算するにあ
たり、両データを加算した後にフイルタ係数の乗
算を行うようにしている。これにより、乗算器の
数も必要な次数の約半分にすることができるので
有利である。 〈一実施例の全体構成説明〉 第2図において、鍵盤10は発生すべき楽音の
音高を指定するための複数の鍵を具備している。
鍵タツチ検出器11は、鍵盤10で押圧された鍵
に加えられたタツチを検出するものであり、イニ
シヤルタツチあるいはアフタータツチのどちらを
検出するものであつてもよい。音色選択装置12
は発生すべき楽音の音色を選択する操作子群から
成るものである。ピツチベンド操作子13は、発
生すべき楽音のピツチをその操作量に応じて連続
的に変調するためのものであり、例えば、ダイヤ
ル式の操作子から成る。マイクロコンピユータ1
4は、CPU(中央処理ユニツト)15、プログラ
ム及びその他データを記憶しているROM(リー
ドオンリメモリ)16、ワーキング及びデータ記
憶用のRAM(ランダムアクセスメモリ)17を
含んでおり、データ及びアドレスバス28を介し
て電子楽器内の各回路との間でデータの授受を行
い、鍵盤10における押鍵検出処理及び複数の発
音チヤンネルに対する押圧鍵の発音割当て処理、
音色選択装置12における音色選択操作の検出処
理、ピツチベント操作子13における操作量の検
出処理、その他種々の処理を実行する。 トーンジエネレータ18は複数の発音チヤンネ
ルで夫々独立にデイジタル楽音信号を発生するこ
とが可能なものであり、各チヤンネルに割当てた
鍵を示すキーコードKC及び該鍵のオン・オフを
示すキーオン信号KONその他必要なデータをマ
イクロコンピユータ14からバス28を介して受
け取り、これに基づき各チヤンネルでデイジタル
楽音信号を発生する。トーンジエネレータ18の
内部にはピツチ同期信号発生回路19を含んでお
り、各チヤンネルで発生する楽音信号のピツチに
同期するピツチ同期信号を各チヤンネル毎に発生
する。 この実施例の仕様においては、トーンジエネレ
ータ18は第1乃至第16チヤンネル(Ch1〜
ch16)の合計16チヤンネルで時分割的にデイジ
タル楽音信号を発生する。トーンジエネレータ1
8から時分割多重的に出力されるデイジタル楽音
波形サンプル値データをTDXで示す。マスタク
ロツク発生器20から発生されるマスタクロツク
パルスφは、トーンジエネレータ18の基本的な
動作時間を制御するものである。デイジタル楽音
波形サンプル値データTDXの時分割多重化の1
サイクルはマスタクロツクパルスφの64周期であ
り、この1サイクル64周期における各周期毎のタ
イムスロツトを1〜64の番号を付して示すと第3
図のようである。同図には、多重化されたデイジ
タル楽音波形サンプル値データTDXのチヤンネ
ルタイミング1〜16の仕様も示されている。例
えば、第1チヤンネルのデータTDXはタイムス
ロツト33〜36の4スロツトに割当てられてい
る。 この実施例の仕様においては、楽音波形サンプ
ル値データTDXは16チヤンネル分のデータが上
述のように共通に多重化されて出力されるが、各
チヤンネルのピツチ同期信号PS1,PS2は2系
統に分けて8チヤンネル毎に時分割多重化されて
出力される。一方のピツチ同期信号PS1は第1
〜第8(Ch1〜Ch8)のピツチ同期信号を時分割多
重化したもので、そのチヤンネルタイミングは第
3図のようである。他方のピツチ同期信号PS2
は第9〜第16(Ch9〜Ch16)のピツチ同期信号を
時分割多重化したもので、そのチヤンネルタイミ
ングは第3図のようである。図から明らかなよう
に、各チヤンネルのピツチ同期信号PS1,PS2
は1タイムスロツトの幅で発生し、その時分割多
重化の1サイクルは8タイムスロツトである。 2系列のアダプテイブデイジタルフイルタ装置
(以下ADFと略称することがある)21,22
は、楽音信号のフイルタリングに適するように構
成されたデイジタルフイルタ装置であつて、この
実施例の仕様では夫々8チヤンネル分の楽音信号
のフイルタリングが可能であり、一方のADF2
1は第1〜第8チヤンネルの楽音信号のフイルタ
リングを行い、他方のADF21は第9〜第16チ
ヤンネルの楽音信号のフイルタリングを行う。こ
のADF21,22の内部には、所定の型式のデ
イジタルフイルタ回路、フイルタパラメータメモ
リ、フイルタパラメータの供給を制御する各種回
路、フイルタを施すべき楽音信号のピツチに同期
してフイルタ演算動作を行わせる制御回路、フイ
ルタを施した楽音信号をそのピツチに同期して出
力するピツチ同期出力回路、など各種機能の回路
が含まれており、楽音信号のフイルタリングに適
した構成となつている。 トーンジエネレータ18から出力されたデイジ
タル楽音波形サンプル値データTDXはADF21
及び22に入力される。また、第1〜第8チヤン
ネルのピツチ同期信号PS1はADF21に入力さ
れ、第9〜第16チヤンネルのピツチ同期信号PS
2はADF22に入力される。ADF21及び22
では、ピツチ同期信号PS1,PS2が発生した
(信号“1”となつた)タイムスロツトに対応す
るチヤンネルのデータTDXを内部に取り込み、
そのチヤンネルの1サンプル値データに関してフ
イルタ演算を実行する。従つて、一方のADF2
1では、ピツチ同期信号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に
記憶されており、これはマイクロコンピユータ1
4の制御の下で時間的に切替えて読み出され、バ
ス28を介してADF21及び22に与えられる。
ダイナミツク/スタテイツク選択スイツチ27
は、フイルタ係数の供給をどちらのモードで制御
するかを選択するためのスイツチである。 なお、クロツク周波数について一例を示すと、
マスタクロツクパルスφは約3.2MHzであり、ピ
ツチ同期信号PS1,PS2の時分割1サイクル
(8タイムスロツト)の繰返し周波数は400kHzで
あり、デイジタル楽音波形サンプル値データ
TDXの時分割1サイクル(フイルタにおける1
演算サイクル)(64タイムスロツト)の繰返し周
波数は50kHzである。 次に、第2図における各回路の詳細例について
説明する。 〈ピツチ同期信号の発生について〉 第4図はピツチ同期信号発生回路19の一例を
示すもので、これは一方の系統(第1〜第8チヤ
ンネル)のピツチ同期信号PS1を発生する。も
う一方のピツチ同期信号PS2も第4図と同一の
構成によつて発生される。 ピツチ同期信号PS1は、Pナンバメモリ29
から読み出したPンバをカウンタ30で各チヤン
ネル毎に時分割的にカウントすることに基づき発
生される。Pナンバとは、或る基準オクターブに
おける各音名C〜Bに対応する周波数を持つ楽音
波形の1周期中のサンプル点数を示す数である。
ピツチ同期信号PS1を第3図に示すように8チ
ヤンネル時分割で発生するようにする場合、その
基本的なサンプリング周波数(換言すればピツチ
同期信号PS1の分解能)はマスタクロツクパル
スφの1/8の周波数(例えば400kHz)であり、こ
れはどの音名でも共通である。他方、基本的なサ
ンプリング周波数が共通であるため、各音名のP
ナンバは、その音名周波数に対応して夫々異なる
値を示す。基準オクターブにおける或る音名の周
波数をnとし、上述の共通のサンプリング周波
数(400kHz)をcとすると、その音名に対応す
るPナンバは次のようにして定まる。 Pナンバ=c÷n …(1) ここで、共通サンプリング周波数cがfc=400k
Hz、音名Aの周波数nがn=440Hz(つまりA4
音)であるとすると、音名AのPナンバは、上記
式から、 音名AのPナンバ=400000÷440=909 となる。 一方、トーンジエネレータ18内で発生可能な
楽音波形1周期当りの異なるサンプル点振幅値の
サンプル点数が64であるとすると、周波数nの
実効サンプリング周波数eは、 e=n×64 …(2) となり、n=440Hzの場合は、 e=440×64=28160Hz となる。 同様にして、或る基準オクターブにおける各音
名のPナンバと実効サンプリング周波数eを下記
表のように決定することができる。この場合、基
準オクターブはG4音からF#5音までの1オク
ターブである。
イルタ装置に関する。 〔従来の技術〕 電子楽器の音色回路にデイジタルフイルタを用
いることは、例えば特開昭59−44096号公報にお
いて示されている。 〔発明が解決しようとする問題点〕 従来のデイジタルフイルタにおいては、全ての
次数に対応して(N次フイルタの場合は0次から
N−1次までの全次数に対応して)フイルタ係数
を夫々用意しなければならなかつた。そのためフ
イルタ係数供給装置(例えば係数記憶装置)の構
成が大型化するという問題点があつた。また、望
みのフイルタ特性を設計する場合において、全次
数のフイルタ係数の値を考慮しなければならない
ため面倒であつた。特に、楽音信号用のフイルタ
は直線位相特性(入出力波形間においてその位相
が完全に直線特性で対応すること)であれば出力
波形に歪みが生じないので、フイルタ特性を直線
位相特性に設定することが望まれる。 この発明は上述の点に鑑みてなされたもので、
フイルタ係数を供給するための装置の構成を簡単
化すると共に、フイルタ係数の設定を容易化し、
かつ、楽音信号用のフイルタとして好ましい直線
位相特性を容易に実現すると共に、電子楽器での
使用に適した多様なフイルタ特性を比較的簡単に
実現することができ、しかも回路構成が簡単にし
た電子楽器のデイジタルフイルタ装置を提供しよ
うとするものである。 〔問題点を解決するための手段〕 この発明に係る電子楽器のデイジタルフイルタ
装置は、N次のフイルタ演算のために、Nが偶数
の場合はN/2次分、Nが奇数の場合は(N+
1)/2次分のフイルタ係数を順次時分割で供給
する係数供給手段と、デイジタル楽音信号サンプ
ル値データを順次遅延し、N次分のサンプル値デ
ータのうちN次の中央を中心にした対称位置に位
置する2つのサンプル値データを順次提供すると
共に、Nが奇数の場合は対称の中心に位置するサ
ンプル値データについては単独で提供する遅延手
段と、この遅延手段から順次提供される前記2つ
のサンプル値データ同士を順次時分割で加算する
演算と、その加算値に対して該2つのサンプル値
データに共通の前記フイルタ係数を順次時分割で
乗算すると共にNが奇数の場合は対称の中心に位
置する前記単独のサンプル値データには単独のフ
イルタ係数を乗算する演算と、これらの時分割で
逐次乗算された乗算結果を累算する演算とを実行
する演算手段とを具えたものである。 〔作用〕 係数供給手段は、N次のフイルタ演算のための
フイルタ係数を供給するものであり、Nが偶数の
場合はN/2次分、Nが奇数の場合は(N+
1)/2次分のフイルタ係数を順次時分割で供給
する。 遅延手段は、デイジタル楽音信号サンプル値デ
ータを順次遅延するものであり、N次分のサンプ
ル値データのうちN次の中央を中心にした対称位
置に位置する2つのサンプル値データを順次提供
すると共に、Nが奇数の場合は対称の中心に位置
するサンプル値データについては単独で提供す
る。 演算手段は、遅延手段から順次提供される前記
2つのサンプル値データ同士を順次時分割で加算
する演算と、その加算値に対して該2つのサンプ
ル値データに共通の前記フイルタ係数を順次乗算
すると共にNが奇数の場合は対称の中心に位置す
る前記単独のサンプル値データには単独のフイル
タ係数を乗算する演算と、これらの時分割で逐次
乗算された乗算結果を累算する演算とを実行す
る。 こうして、偶数次及び奇数次のどちらのフイル
タ特性でも実現することができ、しかも実現する
N次特性の約半分の係数を使用するだけで、か
つ、時分割により数少ない演算回路要素によつ
て、実現することができる。 〔発明の効果〕 従つて、この発明によれば、偶数次のフイルタ
特性及び奇数次のフイルタ特性のどちらでも実現
することが可能である。後述するように、奇数次
においてはハイパスフイルタ特性を実現すること
が容易であり、一方、偶数次はローパスまたはバ
ンドパス特性に適している。電子楽器において
は、実現しようとする音色特性等に応じて多様な
フイルタ特性を実現することができることが望ま
れるので、この発明のように偶数次のフイルタ特
性及び奇数次のフイルタ特性のどちらでも実現す
ることができるものは、電子楽器のデイジタルフ
イルタ装置に非常に適している。 しかも、Nが偶数の場合はN/2次分、Nが奇
数の場合は(N+1)/2次分のフイルタ係数を
供給するだけでよいので、フイルタ係数供給手段
(例えば係数記憶装置)の構成を簡単化すること
ができる。 また、演算手段においては、対称位置に有る2
つのサンプル値データの加算を時分割で行なうと
共にそれらの加算値に対する係数の乗算も時分割
で行なうので、演算回路構成を極めて簡単にする
ことができる。 また、対称位置に有る2つのサンプル値データ
に共通のフイルタ係数を乗算するようにしたこと
により、インパルス応答が対称特性を示すフイル
タ特性とすることができ、楽音信号のフイルタ処
理に好適な直線位相特性のフイルタを容易に実現
することができる。また、フイルタ係数の数は必
要な次数の約半分で済むため、それだけ係数の設
定も容易となる。など、種々の優れた効果を奏す
る。 〔実施例〕 以下、添付図面を参照してこの発明の実施例を
詳細に説明しよう。 まず、この発明に従うデイジタルフイルタ装置
の基本構成を等価回路によつて示すと第1図のよ
うである。図において、110は係数供給手段、
111は遅延手段、112は演算手段である。ま
た、Dは単位遅延要素、×記号を付した丸形ボツ
クスは乗算要素、+記号を付した丸形ボツクスは
加算要素、を示す。第1図cはNの偶数/奇数を
切り換えることができる点を示しており、aはN
が偶数の場合の等価回路、bはNが奇数の場合の
等価回路、を示す。cにおいて112Gは切換え
ゲートであり、Nが偶数の場合は遅延手段111
からのサンプル値データを実線のように伝達して
aの等価回路に示す構成とし、奇数の場合は2点
鎖線のように伝達してbの等価回路に示す構成と
する。 入力されたデイジタル楽音信号サンプル値デー
タは、遅延手段111で順次遅延され、N次分の
サンプル値データS0〜SN-1(つまり遅延時間0の
S0と1〜N−1段の遅延が施されたS1〜SN-1)が
供給される。係数供給手段110からはNの偶
数/奇数に応じてN/2次分又は(N+1)/2
次分のフイルタ係数k0〜kiが供給される。演算手
段112では、N次分のサンプル値データS0〜
SN-1のうちN次の中央を中心にした対称位置に位
置する2つのサンプル値データに共通のフイルタ
係数を乗算する。図示のような有限インパルス応
答(FIR)型のフイルタ演算形式の場合は、全て
の次数に関するサンプル値データとフイルタ係数
との乗算結果を合計したものが最終的なフイルタ
出力となる。 Nが偶数の場合は、係数供給手段110から供
給されるフイルタ係数k0〜kiはN/2次分であ
り、i=(N−2)/2である。(N−2)/2次
とN/2次の中間が中心となり、その両側の0次
〜i次とi+1次〜N−1次が対称位置に位置す
る。対称位置に位置する2つのサンプル値データ
の組は、S0とSN-1,S1とSN-2,…,SiとSi+1の合
計N/2組である。従つて、例えば、0次の楽音
信号サンプル値データS0とN−1次の楽音信号サ
ンプル値データSN-1に共通のフイルタ係数k0を乗
算し、また、i次の楽音信号サンプル値データSi
とi+1次の楽音信号サンプル値データSi+1に共
通のフイルタ係数kiを乗算する、というように、
対称位置に位置する2つのサンプル値データに対
して各組毎に共通のフイルタ係数k0〜kiを夫々乗
算する。これにより、N(=偶数)次のデイジタ
ルフイルタにおける各次数0〜N−1に対応する
フイルタ係数k0〜ki,ki+1〜kN-1が、事実上、対
称特性で設定されることになる。しかも、実際に
用意するフイルタ係数は必要な次数の半分の数で
済む。このように偶数次のフイルタ係数が対称特
性で設定された場合のインパルス応答の一例を示
すと第7図のようである。 Nが奇数の場合は、係数供給手段110から供
給されるフイルタ係数k0〜kiは(N+1)/2次
分であり、i=(N−1)/2である。そして、
i=(N−1)/2次が中心となり、その両側の
0次〜i−1次とi+1次〜N−1次が対称位置
に位置する。対称位置に位置する2つのサンプル
値データの組は、S0とSN-1,S1とSN-2,…,Si-1
とSi+1の合計(N−1)/2組である。従つて、
例えば、0次の楽音信号サンプル値データS0とN
−1次の楽音信号サンプル値データSN-1に共通の
フイルタ係数k0を乗算し、また、i−1次の楽音
信号サンプル値データSi-1とi+1次の楽音信号
サンプル値データSi+1に共通のフイルタ係数ki-1
を乗算する、というように、対称位置に位置する
2つのサンプル値データに対して各組毎に共通の
フイルタ係数k0〜ki-1を夫々乗算する。但し、丁
度対称の中心に位置するi=(N−1)/2次の
楽音信号サンプル値データSiには単独のフイルタ
係数kiを乗算する。これにより、N(=奇数)次
のデイジタルフイルタにおける各次数0〜N−1
に対応するフイルタ係数k0〜ki-1,ki,ki+1〜
kN-1が、事実上、対称特性で設定されることにな
る。しかも、実際に用意するフイルタ係数は必要
な次数の半分プラス1の数で済む。このように奇
数次のフイルタ係数が対称特性で設定された場合
のインパルス応答の一例を示すと第6図のようで
ある。 第6図、第7図から明らかなように、フイルタ
係数を対称特性で設定したことによりインパルス
応答はn=(N−1)/2を中心とする対称特性
を示す(なお、h(n)はフイルタ係数であり、0≦
n≦N−1であるとする)。Nが奇数の場合は、
(N−1)/2次が中心となり、その両側のイン
パルス応答が対称となる。Nが偶数の場合は、
(N−2)/2次とN/2の中間が中心となり、
その両側のインパルス応答が対称となる。このよ
うにインパルス応答が対称特性を示すことは直線
位相特性をもつFIRフイルタの必要十分条件であ
る。従つて、この発明によれば、直線位相特性の
フイルタを容易に実現することができる。直線位
相特性とすると、フイルタの入出力波形間におい
てその位相が完全に直線特性で対応し、出力波形
に歪みが生じない。従つて、楽音、音声、オーデ
イオ等の信号のフイルタ処理に好適である。 なお、第1図では対称位置に有る2つのサンプ
ル値データに共通のフイルタ係数を乗算するにあ
たり、両データを加算した後にフイルタ係数の乗
算を行うようにしている。これにより、乗算器の
数も必要な次数の約半分にすることができるので
有利である。 〈一実施例の全体構成説明〉 第2図において、鍵盤10は発生すべき楽音の
音高を指定するための複数の鍵を具備している。
鍵タツチ検出器11は、鍵盤10で押圧された鍵
に加えられたタツチを検出するものであり、イニ
シヤルタツチあるいはアフタータツチのどちらを
検出するものであつてもよい。音色選択装置12
は発生すべき楽音の音色を選択する操作子群から
成るものである。ピツチベンド操作子13は、発
生すべき楽音のピツチをその操作量に応じて連続
的に変調するためのものであり、例えば、ダイヤ
ル式の操作子から成る。マイクロコンピユータ1
4は、CPU(中央処理ユニツト)15、プログラ
ム及びその他データを記憶しているROM(リー
ドオンリメモリ)16、ワーキング及びデータ記
憶用のRAM(ランダムアクセスメモリ)17を
含んでおり、データ及びアドレスバス28を介し
て電子楽器内の各回路との間でデータの授受を行
い、鍵盤10における押鍵検出処理及び複数の発
音チヤンネルに対する押圧鍵の発音割当て処理、
音色選択装置12における音色選択操作の検出処
理、ピツチベント操作子13における操作量の検
出処理、その他種々の処理を実行する。 トーンジエネレータ18は複数の発音チヤンネ
ルで夫々独立にデイジタル楽音信号を発生するこ
とが可能なものであり、各チヤンネルに割当てた
鍵を示すキーコードKC及び該鍵のオン・オフを
示すキーオン信号KONその他必要なデータをマ
イクロコンピユータ14からバス28を介して受
け取り、これに基づき各チヤンネルでデイジタル
楽音信号を発生する。トーンジエネレータ18の
内部にはピツチ同期信号発生回路19を含んでお
り、各チヤンネルで発生する楽音信号のピツチに
同期するピツチ同期信号を各チヤンネル毎に発生
する。 この実施例の仕様においては、トーンジエネレ
ータ18は第1乃至第16チヤンネル(Ch1〜
ch16)の合計16チヤンネルで時分割的にデイジ
タル楽音信号を発生する。トーンジエネレータ1
8から時分割多重的に出力されるデイジタル楽音
波形サンプル値データをTDXで示す。マスタク
ロツク発生器20から発生されるマスタクロツク
パルスφは、トーンジエネレータ18の基本的な
動作時間を制御するものである。デイジタル楽音
波形サンプル値データTDXの時分割多重化の1
サイクルはマスタクロツクパルスφの64周期であ
り、この1サイクル64周期における各周期毎のタ
イムスロツトを1〜64の番号を付して示すと第3
図のようである。同図には、多重化されたデイジ
タル楽音波形サンプル値データTDXのチヤンネ
ルタイミング1〜16の仕様も示されている。例
えば、第1チヤンネルのデータTDXはタイムス
ロツト33〜36の4スロツトに割当てられてい
る。 この実施例の仕様においては、楽音波形サンプ
ル値データTDXは16チヤンネル分のデータが上
述のように共通に多重化されて出力されるが、各
チヤンネルのピツチ同期信号PS1,PS2は2系
統に分けて8チヤンネル毎に時分割多重化されて
出力される。一方のピツチ同期信号PS1は第1
〜第8(Ch1〜Ch8)のピツチ同期信号を時分割多
重化したもので、そのチヤンネルタイミングは第
3図のようである。他方のピツチ同期信号PS2
は第9〜第16(Ch9〜Ch16)のピツチ同期信号を
時分割多重化したもので、そのチヤンネルタイミ
ングは第3図のようである。図から明らかなよう
に、各チヤンネルのピツチ同期信号PS1,PS2
は1タイムスロツトの幅で発生し、その時分割多
重化の1サイクルは8タイムスロツトである。 2系列のアダプテイブデイジタルフイルタ装置
(以下ADFと略称することがある)21,22
は、楽音信号のフイルタリングに適するように構
成されたデイジタルフイルタ装置であつて、この
実施例の仕様では夫々8チヤンネル分の楽音信号
のフイルタリングが可能であり、一方のADF2
1は第1〜第8チヤンネルの楽音信号のフイルタ
リングを行い、他方のADF21は第9〜第16チ
ヤンネルの楽音信号のフイルタリングを行う。こ
のADF21,22の内部には、所定の型式のデ
イジタルフイルタ回路、フイルタパラメータメモ
リ、フイルタパラメータの供給を制御する各種回
路、フイルタを施すべき楽音信号のピツチに同期
してフイルタ演算動作を行わせる制御回路、フイ
ルタを施した楽音信号をそのピツチに同期して出
力するピツチ同期出力回路、など各種機能の回路
が含まれており、楽音信号のフイルタリングに適
した構成となつている。 トーンジエネレータ18から出力されたデイジ
タル楽音波形サンプル値データTDXはADF21
及び22に入力される。また、第1〜第8チヤン
ネルのピツチ同期信号PS1はADF21に入力さ
れ、第9〜第16チヤンネルのピツチ同期信号PS
2はADF22に入力される。ADF21及び22
では、ピツチ同期信号PS1,PS2が発生した
(信号“1”となつた)タイムスロツトに対応す
るチヤンネルのデータTDXを内部に取り込み、
そのチヤンネルの1サンプル値データに関してフ
イルタ演算を実行する。従つて、一方のADF2
1では、ピツチ同期信号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に
記憶されており、これはマイクロコンピユータ1
4の制御の下で時間的に切替えて読み出され、バ
ス28を介してADF21及び22に与えられる。
ダイナミツク/スタテイツク選択スイツチ27
は、フイルタ係数の供給をどちらのモードで制御
するかを選択するためのスイツチである。 なお、クロツク周波数について一例を示すと、
マスタクロツクパルスφは約3.2MHzであり、ピ
ツチ同期信号PS1,PS2の時分割1サイクル
(8タイムスロツト)の繰返し周波数は400kHzで
あり、デイジタル楽音波形サンプル値データ
TDXの時分割1サイクル(フイルタにおける1
演算サイクル)(64タイムスロツト)の繰返し周
波数は50kHzである。 次に、第2図における各回路の詳細例について
説明する。 〈ピツチ同期信号の発生について〉 第4図はピツチ同期信号発生回路19の一例を
示すもので、これは一方の系統(第1〜第8チヤ
ンネル)のピツチ同期信号PS1を発生する。も
う一方のピツチ同期信号PS2も第4図と同一の
構成によつて発生される。 ピツチ同期信号PS1は、Pナンバメモリ29
から読み出したPンバをカウンタ30で各チヤン
ネル毎に時分割的にカウントすることに基づき発
生される。Pナンバとは、或る基準オクターブに
おける各音名C〜Bに対応する周波数を持つ楽音
波形の1周期中のサンプル点数を示す数である。
ピツチ同期信号PS1を第3図に示すように8チ
ヤンネル時分割で発生するようにする場合、その
基本的なサンプリング周波数(換言すればピツチ
同期信号PS1の分解能)はマスタクロツクパル
スφの1/8の周波数(例えば400kHz)であり、こ
れはどの音名でも共通である。他方、基本的なサ
ンプリング周波数が共通であるため、各音名のP
ナンバは、その音名周波数に対応して夫々異なる
値を示す。基準オクターブにおける或る音名の周
波数をnとし、上述の共通のサンプリング周波
数(400kHz)をcとすると、その音名に対応す
るPナンバは次のようにして定まる。 Pナンバ=c÷n …(1) ここで、共通サンプリング周波数cがfc=400k
Hz、音名Aの周波数nがn=440Hz(つまりA4
音)であるとすると、音名AのPナンバは、上記
式から、 音名AのPナンバ=400000÷440=909 となる。 一方、トーンジエネレータ18内で発生可能な
楽音波形1周期当りの異なるサンプル点振幅値の
サンプル点数が64であるとすると、周波数nの
実効サンプリング周波数eは、 e=n×64 …(2) となり、n=440Hzの場合は、 e=440×64=28160Hz となる。 同様にして、或る基準オクターブにおける各音
名のPナンバと実効サンプリング周波数eを下記
表のように決定することができる。この場合、基
準オクターブはG4音からF#5音までの1オク
ターブである。
【表】
第4図のカウンタ30において、ピツチ同期信
号PS1は、マスタクロツクパルスφに基づき確
立される共通サンプリング周波数cをPナンバに
応じて分周することにより得られる。前述から明
らかなように、Pナンバは1周期波形中の共通サ
ンプリング周波数cの周期数つまりサンプル点数
であり、一方、トーンジエネレータ18で発生可
能な楽音波形1周期当りの実効的なサンプル点数
は前述の通り64である。従つて、共通サンプリン
グ周波数cを分周する分周数を 分周数=Pナンバ÷64 …(3) とすれば、その分周出力として楽音1周期当り64
個のパルスを得ることができ、これにより64個の
実効的なサンプル点をすべて確立することができ
る。このようにして定まる分周数によつて共通サ
ンプリング周波数cを分周すると、前記(1)、(2)、
(3)式より、 c÷分周数=(n×Pナンバ)÷(Pナンバ÷
64) =n×64=e …(4) となり、この分周出力によつてサンプル点アドレ
スを変化させることにより実効サンプリング周波
数eを確立することができる。このようにして確
立される実効サンプリング周波数eは、音名周波
数nに調和しており、ピツチ同期が実現される。
カウンタ30から発生される各チヤンネルのピツ
チ同期信号PS1はそのチヤンネルに割当てられ
た鍵の音名に対応して上記(4)式で示されるような
分周出力信号すなわち実効サンプリング周波数e
を持つ信号である。 ところで上記(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図のPS2のチヤンネルタイミング
に示すようなタイミングで時分割多重化される。
こうして時分割多重化された第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、加算器3
5の部分は、Pナンバに応じて前記(3)式に示すよ
うな分周数を確立し、この分周数の整数部に応じ
て共通サンプリング周波数cの分周を行うための
回路である。加算器31は、上記分周数の小数部
に応じて前記整数部の値を調整するためのもので
ある。 前記(3)式において除数64は26であるため、分
周数を求めるために格別の割算を行うことなく、
単にPナンバの下位6ビツトを小数部として取扱
うだけで該Pナンバに対応する分周数を確立する
ことができる。従つて、加算器31、セレクタ3
2及びシフトレジスタ33の出力信号13ビツトの
うち下位6ビツトが小数部の重みであり、上位7
ビツトが整数部の重みである。 加算器35においてオール“1”信号を加算す
ることは1減算することに等しい。従つて、加算
器35では、事実上、シフトレジスタ33の出力
の整数値から1減算することを行う。この加算器
35の減算結果は演算されなかつた小数部の6ビ
ツトデータと共にセレクタ32の「1」入力に戻
され、シフトレジスタ33を経由して再び加算器
35に入力される。シフトレジスタ33はマスタ
クロツクパルスφによつてシフト制御されるた
め、同じチヤンネルの信号がシフトレジスタ33
から出力される周期はマスタクロツクパルスφの
8倍の周期つまり共通サンプリング周波数cの周
期である。 鍵の押し始めにおいて、その鍵が割当てられた
チヤンネルタイミングで反転キーオンパルス
KONPが一度だけ“0”となり、このとき、セ
レクタ32の「0」入力を介して該鍵のPナンバ
が選択される。このPナンバの整数部がシフトレ
ジスタ33から加算器35に与えられ、共通サン
プリング周波数cの周期で該整数部から1が繰返
し減算される。整数部の減算結果が1以上の値の
とき、加算器35のキヤリイアウト出力COから
は絶えずキヤリイアウト信号“1”が出力され、
アンド回路36の条件が成立するので、セレクタ
32は「1」入力を選択し続ける。減算の繰返し
によつてやがて加算器35の出力が“0”になつ
たときつまりPナンバの整数部の数と同数のcの
周期が経過したとき、加算器35のキヤリイアウ
ト信号は出力されず、アンド回路36の条件は成
立しない。そのとき、セレクタ32は「0」入力
を選択し、Pナンバとシフトレジスタ33の出力
の下位6ビツト(小数部データ)とを加算した加
算器31の出力を選択する。こうして、小数部の
加算によつて幾分変更された値のPナンバがシフ
トレジスタ33に与えられ、今度は変更されたP
ナンバの整数値から1減算することが繰返され
る。なお、ゲート34は反転キーオンパルス
KONPによつて鍵の押し始めでだけ不能化され、
それ以外のときは常時小数部データを加算器31
に与える。加算器31におけるPナンバに対する
小数部データの加算によつて実際に分周に使用す
る分周数の整数値はPナンバから求まる分周数の
整数値よりも1大きくなることがある。例えば、
音名AのPナンバは909であり、その分周数は
14.20であるが、最初はその整数値14に従つて
分周を行うが、次は14.20+0.20=14.40となり、
やがて15.00となりその整数値15に従つて分周
を行うことになる。こうして、Pナンバによつて
求まる分周数の整数値と同じか、それよりも1大
きい数に従つて、共通サンプリング周波数cの分
周が行われ、平均的な結果としてPナンバによつ
て求まる分周数に従う分周動作が達成される。加
算器35のキヤリイアウト出力COの信号がその
分周出力に相当するものであり、これをインバー
タ37で反転した信号がピツチ同期信号PS1と
して出力される。 理解を深めるために、音名Aを例にして、セレ
クタ32の出力の変化の一例を示す。変化タイミ
ングは共通サンプリング周波数cの周期である。
最初はPナンバ909に対応する分周数14.20で
あり、次にその整数値が1減つた13.20であり、
以下、12.20,11.20,10.20,…2.20,1.20とその
整数値が順次1づつ減少する。cの14周期目にセ
レクタ32の「1」入力に加わる数値が0.20とな
り、このときキヤリイアウト信号が“0”とな
り、ピツチ同期信号PS1が“1”となり、セレ
クタ32では「0」入力を選択する。セレクタ3
2の「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づつ減少してゆき、
cの14周期目にセレクタ32の「1」入力に加わ
る数値が0.40となると共に、加算器35のキヤリ
イアウト信号が“0”となり、ピツチ同期信号
PS1が発生される。このとき加算器31の出力
は14.20+0.40=14.60であり、これがセレクタ3
2の「0」入力を介してシフトレジスタ33に与
えられる。こうして、音名Aの場合は14又は15を
分周数として分周が行われ、共通サンプリング周
波数c(例えば400kHz)の14又は15サイクル毎に
ピツチ同期信号PS1が“1”となる。 もう一方の第9〜第16チヤンネルに対応するピ
ツチ同期信号PS2も上述と同様にして発生され
る。 〈トーンジエネレータの説明〉 トーンジエネレータ18においては上述のよう
にして発生した各チヤンネルのピツチ同期信号
PS1,PS2を利用して、発生すべき楽音のピツ
チに同期したサンプリングタイミングに従つて該
楽音信号を発生するようにすることができる。勿
論、これに限らず、ピツチに同期していないサン
プリングタイミングに従つて楽音信号を発生する
ようにすることも可能である。 発生すべき楽音のサンプル点アドレス(瞬時位
相角)を指定するアドレスデータは、各チヤンネ
ルのピツチ同期信号PS1,PS2をチヤンネル別
に夫々独立にカウントすることにより発生するこ
とができる。ただし、ピツチ同期信号PS1,PS
2は前述の基準オクターブ(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変換すなわち伝達関数は、 H(z)=N-1 〓n=0 (n)z-n =h(0)+h(1)z-1+…h(N−1)z-(N-1) …(5) と表わされる。 (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*
(ejw)の特性を例示すると第8図、第9図のよう
である。Nが奇数の場合は第8図のようにω=π
(ここでπはサンプリング周波数sの1/2に対応し
ている)のときのレベルが0に固定されず、任意
に設定できる。Nが偶数の場合は第9図のように
ω=πのときのレベルが必らず0になる。ここか
ら明らかなように、次数Nが奇数の場合は、フイ
ルタ係数の設定によつてハイパスフイルタ特性を
実現することが可能であるが、Nが偶数の場合は
ハイパスフイルタ特性を実現することが不可能で
ある。しかし、Nが偶数の方がフイルタ設計がし
易く、ローパスフイルタやバンドパスフイルタの
設計には適している。 そこで、実現しようとするフイルタ特性に応じ
てフイルタの次数Nの偶奇を切替えるようにする
ことが好ましく、この実施例のアダプテイブデイ
ジタルフイルタ装置21,22においてはそのよ
うな次数Nの偶奇切替えを行うことができるよう
な仕様となつている。すなわちバンドパスフイル
タやローパスフイルタの特性のフイルタリングを
行う場合は次数Nを偶数に設定し、ハイパスフイ
ルタ特性のフイルタリングを行う場合は次数Nを
奇数に設定する。 (e) FIRフイルタのその他の特徴 FIRフイルタのその他の特徴としては、フイド
ーバツクループがないため、安定性がよいという
特徴がある。 すなわち、IIRフイルタのようにフイードバツ
クループがある場合は発振等の問題が起るが、
FIRフイルタでは発振等の問題が生じず、設計も
容易である。 また、フイルタ特性を時間的に変化させる場合
においてもFIRフイルタは有利である。この場
合、通常は、時間的に異なるフイルタ特性の各々
に対応してフイルタ係数の組を夫々準備しなけれ
ばならないが、そうするとフイルタ特性の時変動
を細かくするには多数のフイルタ係数の組が必要
とされる。この問題点を解決するために、時間的
にある程度離れた2組のフイルタ係数を準備し、
その2組のフイルタ係数の間で補間を行うことに
よりその間の時間経過に伴つてフイルタ係数の組
を密に発生させ、こうして補間によつて発生した
フイルタ係数によつて時間的に変動するフイルタ
特性を設定することが考えられる。このようにフ
イルタ係数の補間を実時間で行いながら時変動フ
イルタ特性を実現する場合、FIRフイルタのよう
に安定性のよいものは、不安定性を考慮してフイ
ルタ係数を工夫する必要がないので、非常に有利
である。 また、デイジタルフイルタにおける信号の語長
は有限であるため、制限された語長内に信号デー
タを必然的に丸めなければない。このような丸め
がノイズとなるものであるが、FIRフイルタでは
フイードバツクループがないため、丸めによる誤
差が累積されることがないので、ノイズ対策上有
利である。 なお、上述したようなFIRフイルタの諸特性に
ついては、例えば書籍「Theory and Applicati
on of Digital Signal Processing」(著者:
Lawrence,R.Rabiner;Bernard,Gold、発行
社:Prentice−Hall Inc)に詳しく記載されてい
る。 次に、この実施例におけるアダプテイブデイジ
タルフイルタ装置21及び22におけるいくつか
の特徴について予め簡単に説明する。 (f) フイルタ係数の求め方 フイルタ係数は実際の楽音を分析することによ
り求められる。フイルタ係数を求めるための手順
の一例を第10図を参照して説明すると、まず、
異なる音色を示す2種類の楽音波形(原楽音波
形)を自然楽器音からサンプリングすることによ
り準備する。例えば、原楽音波形1は強い鍵タツ
チで演奏されたピアノ音の波形であり、原楽音波
形2は弱い鍵タツチで演奏されたピアノ音の波形
である。次に、高速フーリエ変換を行い、原楽音
波形1,2のフーリエ成分を分析し、これに基づ
き両波形1,2のスペクトル特性を求める。次
に、波形1,2のスペクトル特性の差を求める。
次に、差のスペクトル特性を量子化し、これに基
づきフイルタ係数を求める処理を行う。最後に求
めたフイルタ係数をメモリに記憶する。 フイルタ特性の時変動を実現するするフイルタ
係数はダイナミツク制御用パラメータメモリ26
(第2図)に記憶し、時間的に変化しない定常的
なフイルタ特性を実現するフイルタ係数はADF
22及び22(第2図)内にパラメータメモリに
記憶する。 なお、上述で2波形の差のスペクトル特性に基
づきフイルタ係数を求める理由は、トーンジエネ
レータ18(第2図)で一方の原楽音波形(例え
ば強い鍵タツチに対応する波形)に相当する楽音
信号を発生し、これに対して差のスペクトル特性
に従うフイルタリングを施すことにより他方の原
楽音波形(例えば弱いタツチに対応する波形)に
相当する楽音信号を得るようにするためである。
鍵タツチに応じたフイルタリングを行う場合、全
ての鍵タツチ強度の段階に対応してフイルタ係数
の組を準備しておかずに、いくつかの段階に対応
するフイルタ係数の組だけを準備しておき、準備
されていない鍵タツチ強度に対応するフイルタ係
数は上述と同様の補間によつて求めるようにして
もよい。 勿論、鍵タツチに対応するフイルタ係数のみな
らず、音高(又は音域)あるいは音色種類あるい
はその他種々のフアクタに対応するフイルタ係数
を上述と同様の手法によつて準備する。 (g) ピツチに同期したフイルタ演算 ADF21及び22(第2図)における各サン
プル点毎のフイルタ演算タイミングはピツチ同期
信号PS1及びPS2によつて設定される。このこ
とは、フイルタ演算における単位時間遅れ(第5
図のz-1)がピツチ同期信号PS1,PS2によつて
設定されることを意味する。すなわち、フイルタ
演算におけるサンプリング周波数sはピツチ同期
信号PS1,PS2によつて設定される。具体的に
は各音名G〜F#に対応するピツチ同期信号PS
1,PS2の周波数は前出の第1表に示した実効
サンプリング周波数eと同じであるから、ADF
21及び22におけるフイルタ演算のサンプリン
グ周波数sは、入力された楽音信号の音名に応じ
て同表に示すように異なるものとなる。フイルタ
演算におけるサンプリング周波数sは、第8図及
び第9図に示すような周波数応答特性におけるω
=2πに該当する。ここから明らかなように、音
名に応じてサンプリング周波数sが変化すると、
周波数応答特性におけるω=2πに対応する周波
数もそれに応じて変化することになり、得られる
フイルタ特性は移動フオルマント特性となる。こ
のような移動フオルマント特性は楽音信号の音色
制御に非常に適したものである。 これに対してフイルタ演算におけるサンプリン
グ周波数が入力信号のピツチに無関係に一定であ
る場合は、得られるフイルタ特性は固定フオルマ
ントとなる。 (h) ピツチ同期/非同期の切替 上述のように移動フオルマントのフイルタは楽
音の音色制御に適しているが、得ようとする音色
又は効果によつては固定フオルマントのフイルタ
の方が望ましい場合がある。また、ピツチベント
操作子13(第2図)を操作して発生音のピツチ
を大きくスライドさせる場合も固定フオルマント
のフイルタの方が好ましい。そのために、この実
施例のADF21及び22では、フイルタ演算を
ピツチ同期で行うか非同期で行うかの切替えがで
きるような仕様となつている。また、このような
ピツチ同期/非同期の切替えは全チヤンネル一様
ではなく、各チヤンネル別に独立にピツチ同期又
は非同期の指定を行うことができるようになつて
いる。 因みに、ピツチベント操作時には固定フオルマ
ントのフイルタの方が好ましい理由は、次の通り
である。ピツチベント操作子13によるピツチ制
御は、僅かなピツチずれ制御のみならず、数音程
にわたる大きなピツチスライド制御も可能であ
り、その場合前出の第1表に示す音名G〜F#の
オクターブの境界を横切つてピツチ制御が施され
ることがある。そのとき、ピツチに同期したフイ
ルタ演算を行つているとサンプリング周波数sが
急激に変動し、それに伴ないカツトオフ周波数も
急激に変動し(移動フオルマントであるため)、
不自然な音色変化をもたらす。例えば、ピツチベ
ント操作によつて発音中の楽音がF#5音から
G5音にスライドしたとすると、サンプリング周
波数が47.359kHzから25.088kHzに急激に変動し
(前記第1表参照)移動フオルマントの場合は、
その差と同じ分だけカツト周波数も急激に変動す
る。このような不都合を防ぐには、ピツチベント
操作時は移動フオルマント(ピツチに同期したフ
イルタ演算)とせずに、固定フオルマント(ピツ
チに非同期のフイルタ演算)とするのがよい。ピ
ツチ非同期のフイルタ演算の場合、ADF21及
び22におけるフイルタ演算のサンプリング周波
数は第3図の例では50kHzである。 (i) ダイナミツク/スタテイツクに応じたフイル
タ次数の切替 前述の通り、ダイナミツクモードにおいては、
発音時に実時間で、マイクロコンピユータ14の
制御の下でダイナミツク制御用パラメータメモリ
26(第2図)からダイナミツク制御用パラメー
タデータを読み出し、これをADF21,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)2
1の内部構成例を略示するブロツク図であり、も
う一方の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に分けて行うようにした理由
は、回路設計上の理由による。ステートメモリ4
0,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に与えられ、ピツチ同期信号PSlに応じ
た信号の発生を該入力インタフエース38が行う
べきか否かの制御を行うために使用される。 ダイナミツク用フイルタパラメータDPR:マ
イクロコンピユータ14の制御の下でダイナミツ
ク制御用パラメータメモリ26(第2図)から読
み出されたフイルタパラメータ(フイルタ係数)
である。前述の通り、このダイナミツクモード用
フイルタパラメータDPRの内容は発音中の時間
経過に伴つて変化する。このダイナミツクモード
用フイルタパラメータDPRのデータ形式も前述
と同様に、12ビツトのフイルタ係数データ部と3
ビツトの重みづけデータ部とから成り、更に、次
数の偶奇を識別するデータを含む。また、前述の
通り、このダイナミツクモード用フイルタパラメ
ータDPRの一組の次数は16次(又は15次)であ
る。更に、前述から明らかなように、直線位相特
性におけるフイルタ係数の対称性により、実際に
準備する一組のダイナミツクモード用フイルタパ
ラメータDPRは8次分だけでよい。 ダイナミツク/スタテイツク選択信号DS:ダ
イナミツク/スタテイツク選択スイツチ27(第
2図)の操作に応じて発生される信号であり、フ
イルタ演算を前述のダイナミツクモードで行うか
スタテイツクモードで行うかを指示する。 上記DPR,DSはインタフエース44からパラ
メータセレクタ46に与えられる。 パラメータメモリ47は、スタテイツクモード
のためのフイルタパラメータ(フイルタ係数)を
記憶したものである。 パラメータプロセシングユニツト45は、上記
パラメータメモリ47からスタテイツクモード用
のフイルタパラメータを読み出す働きをする。す
なわち、キーオンパルスKONPが与えられたと
き、音色コードVN、タツチコードTCH、キー
コード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から出力される
フイルタパラメータのうち次数の偶奇を識別する
偶奇識別データEOA1〜EOA4,EOB1〜EOB
4はステートメモリ40,42に与えられ、フイ
ルタ係数データ部COEA,COEB及び重みづけデ
ータ部WEIA,WEIBは乗算器及びアキユムレー
タ部41,43に与えられる。なお、図中の符号
において末尾のA又はBはA系列とB系列の区別
を表わす。データEOA1〜EOA4,EOB1〜
EOB4は各チヤンネルのものが並列的に与えら
れるが、データCOEA,COEB,WEIA,WEIB
は各チヤンネルのものが時分割的に与えられる。 パラメータプロセシングユニツト45、パラメ
ータセレクタ46、パラメータメモリ47、パラ
メータ供給回路48,49の詳細例は第15図に
示されている。 ピツチ同期出力回路50は、乗算器及びアキユ
ムレータ部41,43から出力された各チヤンネ
ルのフイルタ済みの楽音信号サンプル値データを
入力し、これらを各々のピツチに同期したタイミ
ングでサンプリングし直す回路である。ここでサ
ンプリング制御に用いる信号は、入力インタフエ
ース38から与えられる。ピツチ同期信号PS1
Dであり、これは各チヤンネルのピツチ同期信号
PS1を所定時間遅延したものである。ピツチに
同期した再サンプリングのために、遅延したピツ
チ同期信号PS1Dを用いる理由は、前段でのデ
イジタルフイルタ演算における各チヤンネルの楽
音信号の時間遅れに合わせるためである。このよ
うにデイジタルフイルタ出力信号をそのピツチに
同期して再サンプリングする処理は、サンプリン
グ周波数を楽音ピツチに調和させるので、折返し
ノイズの問題を解決する。ピツチに同期してデイ
ジタルフイルタ演算を行う場合は、デイジタルフ
イルタ出力信号はピツチに同期したサンプリング
周期を持つのでピツチ同期出力回路50を特に設
けなかつたとしてもピツチ同期を実現することが
できるが、ピツチに非同期でデイジタルフイルタ
演算を行う場合はピツチ同期を実現するためには
ピツチ同期出力回路50が必要である。ピツチ同
期出力回路50の詳細例は第16図に示されてい
る。 次にアダプテイブデイジタルフイルタ装置21
の各部の詳細例について説明する。 なお、各図においてブロツク中に「1D」、
「8D」等の数字と文字Dが伴記された回路は、遅
延回路若しくはシフトレジスタであり、前の数字
は遅延段数若しくはステージ数を示す。また、こ
の遅延回路又はシフトレジスタブロツクにおい
て、遅延制御クロツクパルス又はシフト制御クロ
ツクパルスが入力されることが図示されていない
ものは、マスタクロツクパルスφ(第3図参照)
によつて遅延又はシフト制御がなされる。 〈入力インタフエース38:第12図) 第12図において、ピツチ同期信号PS1なオ
ア回路51,52を介してシフトレジスタ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”となる。例えば、信号φFS
1,25はタイムスロツト25で信号“1”とな
り、これは第1チヤンネルに対応している。第3
図を参照すると明らかなようにタイムスロツト2
5はピツチ同期信号PS1における第1チヤンネ
ルの時分割タイミングに対応している。従つて、
この信号φFS1,25によつてラツチ制御される
ラツチ回路55の部分にはチヤンネル1のピツチ
同期信号PS1の内容(ピツチに同期したタイミ
ングでは信号“1”、それ以外のタイミングでは
信号“0”)がラツチされる。他のチヤンネル2
〜8も同様であり、各チヤンネルのピツチ同期信
号が所定のタイミングでラツチ回路55に夫々並
列的にラツチされる。 なお、各チヤンネルに対応するラツチタイミン
グ信号φFS1,25〜φFS8,56は第13図も
のデコーダ56から発生される。デコーダ56は
カウンタ57の出力をデコードして様々な種類の
タイミング信号を発生する。カウンタ57はマス
タクロツクパルスφをカウントするモジユロ64
のカウンタであり、システムシンクロパルス
SYNC(第3図)によつて定期的にリセツトされ
る。各チヤンネル1〜8に対応するラツチタイミ
ング信号φFS1,25〜φFS8,56がどのタイ
ムスロツトで発生するかは第13図の表示から明
らかであろう。 第12図に戻り、各タイミング信号φFS1,2
5〜φFS8,56はノア回路58で多重化されか
つ反転される。ノア回路58の出力はアンド回路
54に入力される。これにより、ラツチ回路55
への取り込みが行われたチヤンネルに関するシフ
トレジスタ53の記憶がクリアされる。 一方、ピツチ同期信号PS1が“1”となつた
チヤンネルに対応してラツチ回路55にラツチさ
れた信号“1”は、次のサイクルでそれに対応す
るラツチタイミング信号φFS1,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で循環保持され、タイムスロツト2
5でタイミング信号φFS1,25が発生したとき
ラツチ回路55にラツチされ、チヤンネル1に対
応するフイルタ演算要求信号φF1がそのタイム
スロツト25において“1”に立上る。この信号
φF1は次のサイクルのタイムスロツト24まで
合計64タイムスロツト分の時間幅だけ信号“1”
を維持する。 〈タイミング信号発生回路39:第13図〉 第13図において、タイミング信号発生回路3
9は、前述のデコーダ56及びカウンタ57の他
に、第12図の入力インタフエース38から与え
られる各チヤンネルのフイルタ演算要求信号φF
1〜φF8に応じてフイルタ演算動作制御用のタ
イミング信号を発生する演算タイミング発生回路
391〜398を各チヤンネル(Ch1〜Ch8)毎
に具えている。図ではチヤンネル1の回路391
のみ詳細を示したが、他のチヤンネル2〜8の回
路392〜398も同一構成であり、そこに入力
されるタイミング信号T33,T49,…の時間
関係だけが異なる。タイミング信号T39,T4
9,…はデコーダ56から発生される。前述と同
様に、タイミング信号を示す符号においてかつこ
内の数字は、1演算サイクル(第3図に示す64タ
イムスロツト)中のタイムスロツト番号を示し、
そのタイムスロツト番号に対応するタイムスロツ
トにおいて該タイミング信号が“1”となること
を示す。デコーダ56から発生される他のタイミ
ング信号についても同様であり、かつこ内の数字
を参照することによりそのタイミング信号がどの
タイムスロツトにおいて発生するか(“1”とな
るか)が容易に判る。例えば、タイミング信号T
33は第17図に示すようにタイムスロツト33
において信号“1”となるものであり、信号T3
−18はタイムスロツト3から18までの間で信
号“1”となるものである。 チヤンネル1の演算タイミング信号発生回路3
91について説明すると、フイルタ演算要求信号
φF1とタイミング信号T33がアンド回路59
に与えられる。従つて、フイルタ演算動作を行う
べきことが要求されたならば、タイムスロツト3
3のタイミングでアンド回路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次)の演算を
禁止することにより奇数次のフイルタ特性を実現
するために使用される。 タイミング信号T3−18とT35−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図)内の各遅
延段階に対応する楽音信号サンプル値データを順
次シフトするために使用される。 タイミング信号T35−50に応じてタイムス
ロツト35から50の間で“1”となる乗算タイ
ミング信号PDOA1(第17図参照)は、デイ
ジタルフイルタ回路において楽音信号サンプル値
データとフイルタ係数との乗算を行うべき期間を
指示するものである。 A系列における他のチヤンネル2〜4に対応す
るる演算タイミング信号発生回路392〜394
において用いられるタイミング信号T49,T1
9−34,T51−2,…はチヤンネル1のタイ
ミング信号T33,T3−18,T35−50の
タイミングから順に16タイムスロツトづつずれた
ものである。従つて、チヤンネル1の回路391
から出力される各信号RLA1〜PDOA1と同様
の信号RLA2〜PDOA2,…RLA4〜PDOA4
が他のチヤンネル2〜4の回路392〜394か
ら夫々順次16タイムスロツトづつずれたタイミン
グで発生される。これに基づき、A系列のデイジ
タルフイルタ回路(特に乗算器及びアキユムレー
タ部41)において、1演算サイクル=64タイム
スロツトの間で16タイムスロツト毎の時間区間で
4つのチヤンネル1〜4のフイルタ演算動作を時
分割的に行わせることができるようになつてい
る。 B系列の各チヤンネル5〜8に対応する演算タ
イミング信号発生回路395〜398においても
各チヤンネル間で16タイムスロツトづつずれた所
定のタイミングでタイミング信号T49,T19
−34,T51−2,…が使用され、上述と同様
の各種信号RLB1〜PDOB1,…RLB4〜
PDOB4が発生される。 A系列に対応する演算タイミング信号発生回路
391〜394で発生された各信号RLA1〜
PDOA4はA系列のステートメモリ40に与え
られ、B系列に対応する回路395〜398で発
生された各信号RLB1〜PDOB4はB系列のス
テートメモリ42(第11図)に与えられる。 〈ステートメモリ40:第14図〉 第14図において、A系列のステートメモリ4
0はA系列の各チヤンネル1〜4に対応するステ
ートメモリ401〜404を並列的に具えてい
る。チヤンネル1のステートメモリ401のみ詳
細を示したが、他のチヤンネル2〜4のステート
メモリ402〜404も同一構成であり、そこに
入力される信号が異なつている。上述の各チヤン
ネル1〜4に対応する演算タイミング信号発生回
路391〜394(第13図)から発生された各
信号RLA1〜PDOA1,…RLA4〜PDOA4
は、自己のチヤンネルに対応するステートメモリ
401〜404に夫々入力される。 同図に示したステートメモリ40と乗算器及び
アキユムレータ部41の詳細を説明する前に、こ
れらの回路から成るデイジタルフイルタ回路の基
本動作について第18図及び第19図に示す略図
を参照して説明する。 〈偶数次のフイルタ演算基本動作:第18図〉 第18図は、上記デイジタルフイルタ回路にお
いて偶数次(32次)から成るフイルタ特性を実現
する場合のFIR型フイルタ演算の基本動作を説明
するための略図であり、aはブロツク図、bは各
演算タイミングにおけるaのシフトレジスタSR
1,SR2の各ステージQ0〜Q15,Q16〜
Q31内の楽音信号サンプル値の状態を示す。 第1のシフトレジスタSR1は16ステージを持
ち、フイルタをかけるべきデイジタル楽音信号サ
ンプル値データxoがセレクタSEL1を介して入力
される。セレクタSEL1を介して新しいサンプル
値データxoを取り込むための信号としては前述の
フイルタデータサンプリングクロツク信号RLA
(チヤンネル1の場合はRLA1)が使用され、シ
フトレジスタSR1のシフトクロツクパルスとし
ては前述の第1シフトクロツク信号φFFA(チヤ
ンネル1の場合はφFFA1)が使用される。第1
のシフトレジスタSR1の各ステージQ0〜Q1
5にはサンプル点nからn−15までの16個のサ
ンプル値データxo〜xo-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−
16からn−31までの16個のサンプル値データ
xo-16〜xo-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の各ステージQ0〜Q
31にxoからxo-31までの32サンプル点のサンプ
ル値データが入つている。 図の例では、演算タイミング2のときサンプリ
ングクロツク信号RLAが“1”になるものとし
ている。これにより、シフトクロツク信号
φFFA,φFLAに応じてシフトレジスタSR1,
SR2が1ステージ右シフトされ、この演算タイ
ミング2では図示のような状態となる。このとき
のシフトクロツク信号φFFA,φFLAはチヤンネ
ル1の場合は第17図のφFFA1,φFLA1の欄
に示すようにタイムスロツト34で発生するもの
である。同図から明らかなように、次の1タイム
スロツトはシフトクロツク信号φFFA,φFLAは
発生せず、従つて第18図bの演算タイミング3
では各ステージQ0〜Q31の状態は変化しな
い。しかし、演算タイミング3から18までの16
タイムスロツト幅は、チヤンネル1でいえば乗算
タイミング信号PDOA1(第17図)が発生す
るタイムスロツト35〜50に対応しており、こ
の間で乗算及びアキユムレートが行われる。 つまり、演算タイミング3では、ステージQ1
5とQ16に入つているxo-14とxo-15のサンプル
値データが加算器ADDで加算され、これに第16
次のフイルタ係数が掛けられ、その結果がアキユ
ムレータACCに保持される。 演算タイミング4から18までの間は、1タイ
ムスロツト毎に、第1のシフトレジスタSR1は
右シフト、第2のシフトレジスタSR2は左シフ
トされ、各ステージQ0〜Q31の状態は図示の
ように順次変化する。従つて、演算タイミング4
ではxn−13とxo-16が加算され、これに第15次
のフイルタ係数が乗算され、その結果がアキユム
レータACCに累算される。次の演算タイミング
5ではxo-12とxn−17について同様の演算が行
われ、こうして対称位置にある2サンプル値デー
タに関して同様のフイルタ係数演算が順次時分割
で行われ、演算タイミング18では最後の対称位
置にあるxo+1とxo-30に関して同様の演算が行わ
れ、これで全次数のフイルタ演算が完了する。次
の演算タイミング19ではもう一度シフトが行わ
れ、図示のように、各ステージQ0〜Q31に遅
延された時間順に各サンプル値データxo+1〜
xo-30が並ぶ。 〈奇数次のフイルタ演算基本動作:第19図〉 第19図は、奇数次(31次)からなるフイルタ
特性を実現する場合のFIR型フイルタ演算の基本
動作を説明するための略図であり、aはブロツク
図、bは各演算タイミングにおけるaのシフトレ
ジスタSR1,SR2の各ステージQ0〜Q15,
Q16〜Q30の楽音信号サンプル値の状態を示
す。 aにおける各ブロツクは第18図aに示したも
のと同一であり、異なる点は、ステージQ16の
出力がゲートGTを介して加算器ADDに与えられ
ることである。ゲートGTはインヒビツト信号
INHA(第1チヤンネルではINHA1)を反転し
た信号によつて制御されるようになつており、該
信号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次の各遅
延段階に対応する楽音信号サンプル値xo+1〜
xo-29が順番に入つており、ステージQ15に中
央の次数のサンプル値xo-14が入つている。第6
図に示されているように、奇数次モードの対称の
中央に位置する次数ではそれ単独に対応して固有
のフイルタ係数が割り当てられる。従つて、演算
タイミング3では、インヒビツト信号INHAによ
つてステージQ16の出力を禁止し、中央次数に
対応するステージQ15の出力信号のみを加算器
ADDに加え、乗算器MULにおいて該中央次数に
対応する固有のフイルタ係数を乗算する。 演算タイミング4では、第1のシフトレジスタ
SR1のみが右シフトされ、第2のシフトレジス
タSR2はシフトされない。従つて、ステージQ
15にはxo-13が入り、Q16にはxo-15が入つて
いる。また、インヒビツト信号INHAは“0”と
なり、ゲートGTが開かれる。こうして、中央次
数の両隣の次数に対応するサンプル値xo-13,
xo-15が加算器ADDに与えられて加算され、乗算
器MULにおいて両者に共通のフイルタ係数が乗
算される。 演算タイミング5〜18ではSR1が順次右シ
フト、SR2が順次左シフトされ、図示のように
対称位置にあるサンプル値がステージQ15,Q
16に入り、両者が加算されて共通のフイルタ係
数が乗算される。 〈デイジタルフイルタ回路:第14図〉 第14図を参照してチヤンネル1に対応するス
テートメモリ401について説明する。16ステー
ジの一方向シフトレジスタ71は第18図、第1
9図の第1のシフトレジスタSR1に対応するも
のであり、チヤンネル1に対応する第1のシフト
クロツク信号φFFA1によつてシフト制御され
る。トーンジエネレータ18(第2図)から供給
されたデイジタル楽音信号サンプル値データ
TDXはラツチ回路73に入力され、ラツチタイ
ミング信号XLDA1に従つてチヤンネル1のサ
ンプル値データが該ラツチ回路73に取込まれ
る。楽音信号サンプル値データTDXにおける各
チヤンネルの時分割タイミング(第3図参照)に
対応して、各チヤンネル1〜8に対応するラツチ
タイミング信号XLDA1〜XLDA4,XLDB1
〜XLDB4がデコーダ56(第13図)から発
生される。前述のように、第13図の各信号表示
の末尾のかつこ内の数字はその信号が発生するタ
イムスロツト番号を示す。各チヤンネルに対応す
るステートメモリ内にはラツチ回路73と同様の
ラツチ回路が設けられており、各々々に対応する
ラツチタイミング信号XLDA1〜XLDA4,
XLDB1〜XLDB4によつて各チヤンネル1〜
8の楽音信号サンプル値データTDXが別々にラ
ツチされ、こうしてデマルチプレクスされる。 ラツチ回路73にラツチされたチヤンネル1の
楽音信号サンプル値データはセレクタ74のA入
力にあたえられる。セレクタ74は第13図の演
算タイミング信号発生回路391から与えられる
フイルタデータサンプリングクロツク信号RLA
1が“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
1〜SL16とラツチ回路LC1〜LC16から成
つていて、双方向シフトが可能なように接続され
ている。すなわち、最初のステージQ16のセレ
クタSL1のA入力には第1のシフトレジスタ7
1の最終ステージ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が他と
は幾分異なつている。つまり、このセレクタSL
15にはC入力が設けられており、そこにステー
ジQ16の出力信号が加わる。チヤンネル1に関
する偶奇識別データEOA1が“1”(つまり偶数
次モード)のときアンド回路751が可能化さ
れ、信号RLA1が“0”のとき該アンド回路7
51の出力が信号“1”となり、これによりセレ
クタSL15がB入力を選択し、ステージQ31
の出力がステージQ30に与えられる(左シフト
される)。EOA1が“0”のとき(奇数次モード
のとき)アンド回路761が可能化され、信号
RLA1が“0”のときセレクタSL15がC入力
を選択し、ステージQ16の出力がステージQ3
0に与えられる(Q31を飛越して左シフトされ
る)。 以上の構成により、第1及び第2のシフトレジ
スタ71,72の内容の変化状態は偶数次モード
と奇数次モードの別に応じて第18図b、第19
図bに示したものと全く同様になる。 第2のシフトレジスタ72の第1ステージQ1
6の出力信号はゲート75を介してゲート76に
与えられる。ゲート75はインヒビツト信号
INHA1を反転した信号によつて制御されるもの
で、第19図のゲートGTに対応するものであ
る。ゲート76は、第1のシフトレジスタ71の
出力信号(ステージQ15の出力信号)とゲート
75を介して与えられる第2のシフトレジスタ7
2の出力信号(ステージQ16の出力信号)を入
力し、乗算タイミング信号PDOA1(第17図
参照)によつて開放される。 ゲート76の出力は乗算器及びアキユムレート
部41の加算器77に与えられ、そこで2つの楽
音信号サンプル値データが加算される。この加算
器77は第18図、第19図の加算器ADDに対
応するものである。加算器77の出力は遅延回路
78で1タイムスロツト遅延されて乗算器79に
入力される。乗算器79は遅延回路78を介して
与えられる楽音信号サンプル値データに遅延回路
80を介して与えられるフイルタ係数データ
COEAを乗算するものである。乗算器79の出力
は遅延回路81で4タイムスロツト遅延されてシ
フタ82に与えられる。シフタ82のシフト制御
入力には5タイムスロツトの遅延を設定する遅延
回路83を介して重みづけデータWEIAが与えら
れる。この乗算器79とシフタ82は、第18
図、第19図の乗算器MULに対応するものであ
る。すなわち、前述の通り、フイルタ係数データ
COEAはフイルタ係数の有効ビツトのデータであ
り、乗算器79においてこのフイルタ係数の有効
ビツトと楽音信号サンプル値データとの乗算が行
われる。そして、この乗算結果をシフタ82にお
いて重みづけデータWEIAの値に応じたビツト数
だけシフトすることにより、フイルタ係数の実数
と楽音信号サンプル値データとの乗算が完了す
る。 シフタ82の出力はアキユムレータ84に与え
られ、1チヤンネル分の各次数に対応する乗算結
果がアキユムレートされる。アキユムレータ84
の出力はラツチ回路85に入力され、演算終了タ
イミング信号FENDAに従つてラツチされる。こ
の信号FENDAは第13図のデコーダ56から発
生される。同図中に表示されているように、この
信号FENDAはタイムスロツト8,24,40,
56において“1”となる。タイムスロツト56
ではチヤンネル1の演算結果をラツチし、8では
チヤンネル2の演算結果をラツチし、24ではチ
ヤンネル3の演算結果をラツチし、40ではチヤ
ンネル4の演算結果をラツチする。デコーダ56
からはB系列の演算終了タイミング信号FENDB
も同様に発生される。 乗算器及びアキユムレート部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と乗算器およびアキユムレータ部4
1,43)における各チヤンネル1〜8に関する
フイルタ動作のタイミングを第20図に示す。第
20図において、シフト1の欄には第1のシフト
レジスタ(チヤンネル1の場合は71)のシフト
タイミングを示し、シフト2の欄には第2のシフ
トレジスタ(チヤンネル1の場合は72)のシフ
トタイミングを示している。矢印の方向はシフト
方向(右シフト又は左シフト)を示している。各
チヤンネルのシフトタイミングは演算タイミング
信号発生回路391〜398(第13図)から発
生される第1及び第2のシフトクロツク信号
φFFA1〜φFFB4,φFLA1〜φFLB4の発生
タイミングに対応している。シフト動作には、フ
イルタ演算のためのシフト動作と記憶データリフ
レツシユのためのダミーシフト動作とがある。例
えばチヤンネル1の場合、タイムスロツト4〜1
9でのシフトがダミーシフトである。シフト2の
欄における(←)の記号は偶数次モードのとき左
シフトを行い、奇数次モードのときシフトを行わ
ないことを示す。 第20図において、INHの欄はインヒビツト
信号INHA1〜INHB4の発生タイミングを示し
ている。奇数次モードのときは〇印のタイムスロ
ツトにおいてインヒビツト信号INHA1〜INHB
4が“1”となる。PDOの欄は、各チヤンネル
のステートメモリ40,42から乗算器及びアキ
ユムレータ部41,43に楽音信号サンプル値デ
ータが入力されるタイミングを示している。これ
は各チヤンネルの乗算タイミング信号PDOA1
〜PDOB4の発生タイミングに対応している。
SUMの欄は、アキユムレータ84の出力タイミ
ングを示している。PDOとSUMのタイミングの
間に6タイムスロツトの遅れがあるのは、遅延回
路78,81による5タイムスロツトの遅れとア
キユムレート84による1タイムスロツトの遅れ
による。アキユムレータ84の出力タイミングの
最後のタイムスロツトでは演算終了タイミング信
号FENDAが発生し、アキユムレータ84の出力
をラツチ回路85に取り込む。 〈パラメータメモリ47:第21図〉 第21図はパラメータメモリ47の記憶フオー
マツトの一例を示しており、キーグループテーブ
ル、タツチグループテーブル、パラメータアドレ
ステーブルとパラメータバンクから成つている。
実際のフイルタパラメータはパラメータバンクに
記憶されており、パラメータアドレステーブルに
はパラメータバンクから読み出すべきパラメータ
のアドレスデータが記憶されている。キーグルー
プテーブルは各鍵に対応してその鍵をグループ化
する情報を記憶している。一例として鍵数は8
8、グループ数は44であり、キーグループテー
ブルでは各鍵に対応するアドレス位置にその鍵の
属するキーグループに関する相対アドレスデータ
(キーグループアドレスという)を記憶している。
従つて、キーグループテーブルはキーコードKC
によつてアドレスされる。このキーグループテー
ブルはパラメータメモリ47の所定の絶対アドレ
ス(オフセツトアドレスOADSという)から始ま
る記憶エリアを占めている。 タツチグループテーブルは各音色毎の鍵タツチ
強度の各段階に対応してそのタツチ強度をグルー
プ化する情報を記憶している。一例として音色数
は32であり、このタツチグループテーブルは音色
コードVNの値0〜31に対応する32の音色別エリ
アを含んでおり、またタツチコードTCHによつ
て表現し得るタツチ強度の段階は一例として64で
あり、各音色別エリアはタツチ0から63に対応
する64個のアドレス位置を有している。各タツチ
強度に対応するアドレス位置にはそのタツチ強度
の属するタツチグループに関する相対アドレスデ
ータ(タツチグループアドレスという)が記憶さ
れている。一例としてタツチグループ数は16であ
る。従つて、タツチグループテーブルは音色コー
ドVNとタツチコードTCHによつてアドレスさ
れる。このタツチグループテーブルはパラメータ
メモリ47の所定の絶対アドレス(これをオフセ
ツトアドレスOAD1という)から始まる記憶エ
リアを占めている。このタツチグループテーブル
を読み出すための絶対アドレスデータは、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から2619に対応する2620個のパラメー
タ記憶エリアを含んでいる。1つのパラメータ記
憶エリアは32バイトの記憶位置(32個の絶対アド
レス位置)を含んでおり、16次数分の1組のフイ
ルタ係数に対応するパラメータを記憶している。
1次数分のフイルタ係数は2バイトの記憶位置に
記憶されており、その内訳は、前述の通り、12ビ
ツトのフイルタ係数データ(COE)と3ビツト
の重みづけデータ(WEI)と1ビツトの偶奇識
別データ(EO)から成る。但し、重みづけデー
タ(WEI)と偶奇識別データ(EO)は1組のパ
ラメータにおいては各次数間で共通であるため第
1次の記憶位置にのみ記憶し、他の次数の記憶位
置には記憶しない。しかし、重みづけデータ
(WEI)は各次数毎に独立に記憶するようにする
ことも可能である。このパラメータバンクは上述
のパラメータアドレステーブルから読み出された
パラメータアドレスによつてアドレスされる。パ
ラメータバンクはパラメータメモリ47の所定の
絶対アドレス(これをオフセツトアドレスOAD
3という)から始まる記憶エリアを占めている。
このパラメータバンクを読み出すための絶対アド
レスデータは、12ビツトのパラメータアドレスデ
ータを17ビツトの相対アドレスデータ(オフセツ
トアドレスOAD3を0とするアドレス)の上位
12ビツトに位置させることにより該相対アドレス
データを作成し、これをオフセツトアドレス
OAD3に加算することにより作成される。この
絶対アドレスデータの下位5ビツトを32ステツプ
で順次変化させることにより、パラメータアドレ
スによつて指定された1パラメータ記憶エリア内
の16次数分からなる1組のフイルタパラメータが
順次読み出される。 第21図に示したような階層化されたパラメー
タメモリ構造は、メモリ容量を節約することがで
きるので有利である。このようにせずに、44キー
グループ、32音色、16タツチグループの組合せの
すべて(22528通り)に対応して個別にフイルタ
パラメータを記憶したとすると、22528×32バイ
トの記憶容量が要求されるが、第21図のように
すればパラメータアドレステーブルの1408(=44
×32)×32バイトとパラメータバンクの2620×32
バイトを合わせた4028×32バイトの記憶容量しか
要求されない。つまり、キーグループ、音色、タ
ツチグループの組合せが異なつていてもフイルタ
パラメータは共通のものを使用できる場合がある
ので、第21図の例では22528通りの組合せに対
して2620種のパラメータを共用する構造としてお
り、これによりメモリ容量の節約を図つている。 〈パラメータプロセシングユニツト45、パラ
メータセレクタ46、パラメータメモリ47、
パラメータ供給回路48,49:第15図〉 パラメータプロセシングユニツト45は、前述
のスタテイツクモードのために、上述したような
パラメータメモリ47の読み出しを制御するもの
である。プログラムメモリ451には、上述のよ
うなパラメータメモリ47の読み出し制御を実行
するプログラムが記憶されている。プログラムカ
ウンタ452はプログラムメモリ451を読み出
すためのプログラムステツプ信号PCを発生する
もので、8ステージのシフトレジスタ86と加算
器87、ゲート88,89、エンド検出回路90
を含んでおり、8チヤンネル分のカウント動作を
時分割的に行う。キーオンパルス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のステツプに応じて選択制御信号SELC
1〜SELC4を読み出し、かつオフセツトアドレ
スメモリ453を読み出すためのアドレスデータ
を読み出す。オフセツトアドレスメモリ453は
前述のオフセツトアドレスOADS〜OAD3の値
を記憶している。オフセツトアドレスメモリ45
3から読み出されたオフセツトアドレスデータ
ADOF(OADS〜OAD3のいずれか)は加算器4
54に入力される。加算器454はセレクタ45
5から与えられる相対アドレスデータRADDと
オフセツトアドレスデータADOFとを加算し、
その出力をアドレスデータPRADとしてパラメ
ータメモリ47のアドレス入力に加わる。 キーグループアドレスレジスタ456、タツチ
グループアドレスレジスタ457、パラメータア
ドレスレジスタ458は夫々8ステージのシフト
レジスタから成り、キーグループアドレスデータ
KEYG、タツチグループアドレスデータTCHG、
パラメータアドレスデータPADを各チヤンネル
毎に時分割的に記憶するものである。各レジスタ
456〜458の入力側にセレクタ93〜95が
設けられており、パラメータメモリ47から読み
出されたデータが各セレクタの一方の入力に加わ
る。各セレクタ93〜95の他方の入力には各レ
ジスタ456〜458の出力が加わる。セレクタ
93〜95の選択制御信号SELC2〜SELC4は
プログラムメモリ451から与えられるようにな
つており、プログラムのステツプに応じて、パラ
メータメモリ47の読み出し出力データをレジス
タ456〜458に取り込むか、あるいはレジス
タ456〜458に一旦取り込んだデータを循環
保持するかの制御を行う。明らかなように、パラ
メータメモリ47から前述のキーグループアドレ
スデータが読み出されたときこれをキーグループ
アドレスレジスタ456に取り込み、前述のタツ
チグループアドレスデータが読み出されたときこ
れをタツチグループアドレスレジスタ457に取
り込み、前述のパラメータアドレスデータが読み
出されたときこれをパラメータアドレスレジスタ
458に取り込むように選択制御信号SELC2〜
SELC4が発生される。 各レジスタ456〜458にストアされたアド
レスデータKEYG,TCHG,PADはセレクタ4
55に入力される。セクタ455にはキーコード
KC、音色コードVN及びタツチコードTCH更に
はプログラムカウンタ452から出力されるステ
ツプ信号PCの最下位ビツトPCLSB及びこのステ
ツプ信号PCから「4」(2進の“100”)を引いた
データPC−4も入力されている。セレクタ45
5ではプログラムメモリ451から与えられる選
択制御信号SELC1に応じて入力データを所定の
組合せで選択しかつ選択したデータを相対アドレ
スデータRADDにおける所定の重みに対応する
ビツト位置に位置させ、こうして相対アドレスデ
ータRADDを作成し出力する。 このパラメータプロセシングユニツト45にお
いて実行される37ステツプの処理内容は下記の通
りである。 PC=0のとき:キーグループテーブル読出し処
理 選択制御信号SELC1によりキーコードKCを
選択し、オフセツトアドレスデータADOFとし
てキーグループテーブルのオフセツトアドレス
OADSを読み出す。また、選択制御信号SELC2
によりパラメータメモリ47の出力データをキー
グループアドレスレジスタ456に取り込む。こ
れにより、パラメータメモリ47のキーグループ
テーブルからキーコードKCに対応するキーグル
ープアドレスが読み出され、これがレジスタ45
6にストアされる。 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ビツトのパラメータアドレスデータが読み
出され、PCLSBが“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各系列のパラメー
タ供給回路48,49に入力される。A系列の回
路48のみ詳細例を示したが、B系列の回路49
も同一構成である。パラメータ供給回路49にお
いて、分配回路485は、セレクタ46からシリ
アルに与えられるパラメータデータのうちA系列
のチヤンネル1〜4に関するデータを取り込み、
これを各チヤンネル別に並列化すると共に、フイ
ルタ係数データ(チヤンネル1ではCOEA1)、
重みづけデータ(チヤンネル1ではWEIA1)、
偶奇識別データ(チヤンネル1ではEOA1)の
別に並列化し、これらを各チヤンネルに対応する
記憶回路481〜484に分配する。このような
分配制御のために、適宜のタイミング信号TS2
がタイミング信号発生回路39のデコーダ56
(第13図)から発生され、分配回路485に与
えられる。 記憶回路481〜484はチヤンネル1につい
て詳細例を示すが、他のチヤンネルに関しても同
様である。12ビツトのフイルタ係数データCOEA
1はセレクタ96を介して16ステージのシフトレ
ジスタ97に入力される。このフイルタ係数デー
タCOEA1は16タイムスロツトにおいて16次数分
のデータが時分割多重化されており、この16次数
分のデータがシフトレジスタ97の各ステージに
取り込まれる。シフトレジスタ97の内容はセレ
クタ96を介して循環保持される。3ビツトの重
みづけデータWEIA1はラツチ回路98に入力さ
れる。1ビツトの偶奇識別データEOA1はラツ
チ回路99に入力される。セレクタ96及びラツ
チ回路98,99の制御は、図示しない適宜の制
御信号によつて適切なタイミングで行われる。す
なわち、スタテイツクモードのときは、鍵の押し
始めに応答してパラメータメモリ47から読み出
された16次数分のパラメータデータが、タイミン
グ同期化回路459、セレクタ46、分配回路4
85を経由して記憶回路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のシフトレジスタ9
7から出力されるフイルタ係数データはセレクタ
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のフ
イルタ済み出力が取り込まれるタイミングは第2
0図のSUMの欄の累算最終タイムスロツト(斜
線の部分)であり、これにより、各チヤンネル1
〜4のフイルタ済みサンプル値データSMAのチ
ヤンネルタイミングを示すと第17図のようにな
る。セレクタ501のC入力にはB系列の乗算器
及びアキユムレータ部43(第11図)から出力
されたチヤンネル5〜8のフイルタ済み楽音信号
サンプル値データSMBが時分割多重的に与えら
れる。このデータSMBのチヤンネルタイミング
は第17図のようである。 セレクタ501のA入力には8ステージのシフ
トレジスタ502の出力が与えられ、該セレクタ
501の出力は該シフトレジスタ502に入力さ
れる。このセレクタ501とシフトレジスタ50
2は、各チヤンネル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図のPS1のチヤ
ンネル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に与えられる。従つて、上述
の各タイミングでシフトレジスタ502に取り込
まれた各チヤンネルのフイルタ済みサンプル値デ
ータは、それ以外のタイミングでは該シフトレジ
スタ502で循環保持される。 シフトレジスタ502の出力はセレクタ504
のA入力に与えられる。セレクタ504の出力は
8ステージのシフトレジスタ505に入力され
る。シフトレジスタ505の出力はセレクタ50
4のB入力を介して入力側に戻される。セレクタ
504及びシフトレジスタ505は、デイジタル
フイルタの出力楽音信号をそのピツチに同期して
再サンプリングするためのものである。セレクタ
504のA選択制御入力SAには入力インタフエ
ース38(第12図)から与えられる遅延された
ピツチ同期信号PS1Dが8タイムスロツトの遅
延回路506を介して入力される。 第12図において、ピツチ同期信号PS1はオ
ア回路51を介して64ステージのシフトレジスタ
100に入力される。このシフトレジスタ100
で24タイムスロツト遅延されたピツチ同期信号が
アンド回路101に入力され、40タイムスロツト
遅延されたものがアンド回路102に入力され、
48タイムスロツト遅延されたものがアンド回路1
03に入力され、64タイムスロツト遅延されたも
のがアンド回路104に入力される。各アンド回
路101〜104の他の入力には、第13図のデ
コーダ56から発生されたタイミング信号PSS1
〜PSS4が夫々入力される。各アンド回路101
〜104の出力はオア回路105に与えられ、遅
延されたピツチ同期信号PS1Dが得られる。各
信号PSS1〜PSS4の発生タイミングは第13図
中にかつこ書きで示した通りである。そこにおい
て、例えば「1y8」なる表示は8タイムスロツト
周期で1番目のタイムスロツトで信号“1”が発
生することを示す。従つてて、タイミング信号
PSS1の場合、「1y8,3y8」であるから、8タイ
ムスロツト周期で1番目と3番目のタイムスロツ
トで夫々信号“1”が発生する。第13図中の各
信号PSS1〜PSS4のかつこ内の表示と第3図の
PS1のチヤンネルタイミングとを参照すれば明
らかなように、信号PSS1はPS1におけるチヤ
ンネル1と3のタイミングで“1”となり、PSS
2はPS1におけるチヤンネル2と6のタイミン
グで“1”となり、PSS3はPS1におけるチヤ
ンネル3と7のタイミングで“1”となり、PSS
4はPS1におけるチヤンネル4と8のタイミン
グで“1”となる。 以上により、チヤンネル1と5のピツチ同期信
号PS1は24タイムスロツト、2と6のPS1は40
タイムスロツト、3と7のPS1は48タイムスロ
ツト、4と8のPS1は64タイムスロツト、夫々
遅延したものを遅延されたピツチ同期信号PS1
Dとする。このようにチヤンネルによつて遅延時
間が異なる理由は、アダプテイブデイジタルフイ
ルタ装置21(第11図)における各チヤンネル
1〜4,5〜8の演算タイミングのずれに合せた
からである。 第16図に戻り、遅延されたピツチ同期信号
PS1Dは遅延回路506で更に8タイムスロツ
ト遅延され、セレクタ504の入力SAに与えら
れる。セレクタ504は或るチヤンネルの信号
PS1Dが“1”のときそのチヤンネルのフイル
タ済みサンプル値データをシフトレジスタ502
から取り込み、シフトレジスタ505に入力す
る。それ以外のときは、シフトレジスタ505の
内容がセレクタ504の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を発生する。従つ
て、デイジタルフイルタ演算におけるサンプリン
グ周波数はピツチに無関係に一定(例えば50k
Hz)となり、得られるフイルタ特性は固定フオル
マントとなる。 〈フイルタ特性の一例〉 上記実施例によつて実現できるフイルタ特性の
一例を第22図及び第23図に示す。 第22図はフイルタの次数を奇数次(31次)に
設定した場合に得られる特性の一例を示すもの
で、ハイパスフイルタ特性を実現したものであ
る。s/2はサンプリング周波数sの1/2であり、
ピツチ同期モードのときは楽音のピツチに同期し
た周波数であり、ピツチ非同期モードのときは一
定の周波数である。 第23図はフイルタの次数を偶数次(32次)に
設定した場合に得られる特性の一例を示すもの
で、ローパスフイルタ特性を実現したものであ
る。 〈変更例〉 第16図に示したピツチ同期出力回路50はシ
フトレジスタ502,505を用いてチヤンネル
時分割でピツチ同期処理を行つているが、これに
限らず、各チヤンネル毎に並列的に記憶回路を設
け、並列的にピツチ同期処理を行うようにしても
よい。 上記実施例では、デイジタルフイルタとして
FIRフイルタを用いたが、これに限らずIIR(無限
インパルス応答)やその他の型式のデイジタルフ
イルタを用いて係数が対称性を示すようにしても
よい。 第21図に示したパラメータメモリの記憶フオ
ーマツトはこれに限定されず、様々な変更が可能
である。例えば、そのような階層構造を採用しな
いようにしてもよい。 また、パラメータメモリのアドレスの仕方は上
記実施例に示した手順に限らず、様々な変更が可
能である。例えば、実施例ではキーグループテー
ブルを先にアクセスし、次にタツチグループテー
ブルをアクセスしているが、これは逆であつても
よい。また、第15図ではプログラムメモリ45
1に読み出し手順を予め記憶したマイクロプログ
ラミング方式を採用し、これによりパラメータメ
モリ47の読み出しを行うようにしているが、こ
のようなマイクロプログラム方式によらずに、完
全なハードワイヤード回路あるいは完全なソフト
ウエアプログラムによつて読み出し制御を行うよ
うにしてもよい。 また、上記実施例では複音型の電子楽器におい
てこの発明を適用しているが、単音型の電子楽器
においても適用することができるのは勿論であ
る。また、専用の電子楽器に限らず、楽音信号発
生又は処理機能を持つ装置一般においてこの発明
を適用することができる。 上記実施例では、トーンジエネレータからアダ
プテイブデイジタルフイルタ装置に入力されるデ
イジタル楽音信号サンプル値データそれ自体がピ
ツチに同期してサンプリングされた状態となつて
いるものとしているが、これに限らない。例え
ば、ピツチ非同期の固定サンプリング周期でサン
プリングされたデイジタル楽音信号をデイジタル
フイルタ装置に入力する場合でも、ピツチ同期信
号によつてこの入力デイジタル楽音信号をサンプ
リングし直しながらピツチに同期したフイルタ演
算動作を行うようにすればよい。 また、上記実施例ではピツチ同期信号発生回路
はトーンジエネレータ内に含まれており、そこで
発生したピツチ同期信号をアダプテイブデイジタ
ルフイルタ装置に導入するようにしているが、こ
れに限らない。例えば、ピツチに同期したサンプ
リング周期を持つデイジタル楽音信号をデイジタ
ルフイルタに入力する場合、このデイジタル楽音
信号のサンプル値データの変化を検出することに
よりピツチ同期信号を発生し、こうして発生した
ピツチ同期信号によつてフイルタ演算動作を制御
するようにしてもよい。 勿論、ピツチに非同期でフイルタ演算を行うよ
うにしてもよい。
号PS1は、マスタクロツクパルスφに基づき確
立される共通サンプリング周波数cをPナンバに
応じて分周することにより得られる。前述から明
らかなように、Pナンバは1周期波形中の共通サ
ンプリング周波数cの周期数つまりサンプル点数
であり、一方、トーンジエネレータ18で発生可
能な楽音波形1周期当りの実効的なサンプル点数
は前述の通り64である。従つて、共通サンプリン
グ周波数cを分周する分周数を 分周数=Pナンバ÷64 …(3) とすれば、その分周出力として楽音1周期当り64
個のパルスを得ることができ、これにより64個の
実効的なサンプル点をすべて確立することができ
る。このようにして定まる分周数によつて共通サ
ンプリング周波数cを分周すると、前記(1)、(2)、
(3)式より、 c÷分周数=(n×Pナンバ)÷(Pナンバ÷
64) =n×64=e …(4) となり、この分周出力によつてサンプル点アドレ
スを変化させることにより実効サンプリング周波
数eを確立することができる。このようにして確
立される実効サンプリング周波数eは、音名周波
数nに調和しており、ピツチ同期が実現される。
カウンタ30から発生される各チヤンネルのピツ
チ同期信号PS1はそのチヤンネルに割当てられ
た鍵の音名に対応して上記(4)式で示されるような
分周出力信号すなわち実効サンプリング周波数e
を持つ信号である。 ところで上記(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図のPS2のチヤンネルタイミング
に示すようなタイミングで時分割多重化される。
こうして時分割多重化された第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、加算器3
5の部分は、Pナンバに応じて前記(3)式に示すよ
うな分周数を確立し、この分周数の整数部に応じ
て共通サンプリング周波数cの分周を行うための
回路である。加算器31は、上記分周数の小数部
に応じて前記整数部の値を調整するためのもので
ある。 前記(3)式において除数64は26であるため、分
周数を求めるために格別の割算を行うことなく、
単にPナンバの下位6ビツトを小数部として取扱
うだけで該Pナンバに対応する分周数を確立する
ことができる。従つて、加算器31、セレクタ3
2及びシフトレジスタ33の出力信号13ビツトの
うち下位6ビツトが小数部の重みであり、上位7
ビツトが整数部の重みである。 加算器35においてオール“1”信号を加算す
ることは1減算することに等しい。従つて、加算
器35では、事実上、シフトレジスタ33の出力
の整数値から1減算することを行う。この加算器
35の減算結果は演算されなかつた小数部の6ビ
ツトデータと共にセレクタ32の「1」入力に戻
され、シフトレジスタ33を経由して再び加算器
35に入力される。シフトレジスタ33はマスタ
クロツクパルスφによつてシフト制御されるた
め、同じチヤンネルの信号がシフトレジスタ33
から出力される周期はマスタクロツクパルスφの
8倍の周期つまり共通サンプリング周波数cの周
期である。 鍵の押し始めにおいて、その鍵が割当てられた
チヤンネルタイミングで反転キーオンパルス
KONPが一度だけ“0”となり、このとき、セ
レクタ32の「0」入力を介して該鍵のPナンバ
が選択される。このPナンバの整数部がシフトレ
ジスタ33から加算器35に与えられ、共通サン
プリング周波数cの周期で該整数部から1が繰返
し減算される。整数部の減算結果が1以上の値の
とき、加算器35のキヤリイアウト出力COから
は絶えずキヤリイアウト信号“1”が出力され、
アンド回路36の条件が成立するので、セレクタ
32は「1」入力を選択し続ける。減算の繰返し
によつてやがて加算器35の出力が“0”になつ
たときつまりPナンバの整数部の数と同数のcの
周期が経過したとき、加算器35のキヤリイアウ
ト信号は出力されず、アンド回路36の条件は成
立しない。そのとき、セレクタ32は「0」入力
を選択し、Pナンバとシフトレジスタ33の出力
の下位6ビツト(小数部データ)とを加算した加
算器31の出力を選択する。こうして、小数部の
加算によつて幾分変更された値のPナンバがシフ
トレジスタ33に与えられ、今度は変更されたP
ナンバの整数値から1減算することが繰返され
る。なお、ゲート34は反転キーオンパルス
KONPによつて鍵の押し始めでだけ不能化され、
それ以外のときは常時小数部データを加算器31
に与える。加算器31におけるPナンバに対する
小数部データの加算によつて実際に分周に使用す
る分周数の整数値はPナンバから求まる分周数の
整数値よりも1大きくなることがある。例えば、
音名AのPナンバは909であり、その分周数は
14.20であるが、最初はその整数値14に従つて
分周を行うが、次は14.20+0.20=14.40となり、
やがて15.00となりその整数値15に従つて分周
を行うことになる。こうして、Pナンバによつて
求まる分周数の整数値と同じか、それよりも1大
きい数に従つて、共通サンプリング周波数cの分
周が行われ、平均的な結果としてPナンバによつ
て求まる分周数に従う分周動作が達成される。加
算器35のキヤリイアウト出力COの信号がその
分周出力に相当するものであり、これをインバー
タ37で反転した信号がピツチ同期信号PS1と
して出力される。 理解を深めるために、音名Aを例にして、セレ
クタ32の出力の変化の一例を示す。変化タイミ
ングは共通サンプリング周波数cの周期である。
最初はPナンバ909に対応する分周数14.20で
あり、次にその整数値が1減つた13.20であり、
以下、12.20,11.20,10.20,…2.20,1.20とその
整数値が順次1づつ減少する。cの14周期目にセ
レクタ32の「1」入力に加わる数値が0.20とな
り、このときキヤリイアウト信号が“0”とな
り、ピツチ同期信号PS1が“1”となり、セレ
クタ32では「0」入力を選択する。セレクタ3
2の「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づつ減少してゆき、
cの14周期目にセレクタ32の「1」入力に加わ
る数値が0.40となると共に、加算器35のキヤリ
イアウト信号が“0”となり、ピツチ同期信号
PS1が発生される。このとき加算器31の出力
は14.20+0.40=14.60であり、これがセレクタ3
2の「0」入力を介してシフトレジスタ33に与
えられる。こうして、音名Aの場合は14又は15を
分周数として分周が行われ、共通サンプリング周
波数c(例えば400kHz)の14又は15サイクル毎に
ピツチ同期信号PS1が“1”となる。 もう一方の第9〜第16チヤンネルに対応するピ
ツチ同期信号PS2も上述と同様にして発生され
る。 〈トーンジエネレータの説明〉 トーンジエネレータ18においては上述のよう
にして発生した各チヤンネルのピツチ同期信号
PS1,PS2を利用して、発生すべき楽音のピツ
チに同期したサンプリングタイミングに従つて該
楽音信号を発生するようにすることができる。勿
論、これに限らず、ピツチに同期していないサン
プリングタイミングに従つて楽音信号を発生する
ようにすることも可能である。 発生すべき楽音のサンプル点アドレス(瞬時位
相角)を指定するアドレスデータは、各チヤンネ
ルのピツチ同期信号PS1,PS2をチヤンネル別
に夫々独立にカウントすることにより発生するこ
とができる。ただし、ピツチ同期信号PS1,PS
2は前述の基準オクターブ(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変換すなわち伝達関数は、 H(z)=N-1 〓n=0 (n)z-n =h(0)+h(1)z-1+…h(N−1)z-(N-1) …(5) と表わされる。 (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*
(ejw)の特性を例示すると第8図、第9図のよう
である。Nが奇数の場合は第8図のようにω=π
(ここでπはサンプリング周波数sの1/2に対応し
ている)のときのレベルが0に固定されず、任意
に設定できる。Nが偶数の場合は第9図のように
ω=πのときのレベルが必らず0になる。ここか
ら明らかなように、次数Nが奇数の場合は、フイ
ルタ係数の設定によつてハイパスフイルタ特性を
実現することが可能であるが、Nが偶数の場合は
ハイパスフイルタ特性を実現することが不可能で
ある。しかし、Nが偶数の方がフイルタ設計がし
易く、ローパスフイルタやバンドパスフイルタの
設計には適している。 そこで、実現しようとするフイルタ特性に応じ
てフイルタの次数Nの偶奇を切替えるようにする
ことが好ましく、この実施例のアダプテイブデイ
ジタルフイルタ装置21,22においてはそのよ
うな次数Nの偶奇切替えを行うことができるよう
な仕様となつている。すなわちバンドパスフイル
タやローパスフイルタの特性のフイルタリングを
行う場合は次数Nを偶数に設定し、ハイパスフイ
ルタ特性のフイルタリングを行う場合は次数Nを
奇数に設定する。 (e) FIRフイルタのその他の特徴 FIRフイルタのその他の特徴としては、フイド
ーバツクループがないため、安定性がよいという
特徴がある。 すなわち、IIRフイルタのようにフイードバツ
クループがある場合は発振等の問題が起るが、
FIRフイルタでは発振等の問題が生じず、設計も
容易である。 また、フイルタ特性を時間的に変化させる場合
においてもFIRフイルタは有利である。この場
合、通常は、時間的に異なるフイルタ特性の各々
に対応してフイルタ係数の組を夫々準備しなけれ
ばならないが、そうするとフイルタ特性の時変動
を細かくするには多数のフイルタ係数の組が必要
とされる。この問題点を解決するために、時間的
にある程度離れた2組のフイルタ係数を準備し、
その2組のフイルタ係数の間で補間を行うことに
よりその間の時間経過に伴つてフイルタ係数の組
を密に発生させ、こうして補間によつて発生した
フイルタ係数によつて時間的に変動するフイルタ
特性を設定することが考えられる。このようにフ
イルタ係数の補間を実時間で行いながら時変動フ
イルタ特性を実現する場合、FIRフイルタのよう
に安定性のよいものは、不安定性を考慮してフイ
ルタ係数を工夫する必要がないので、非常に有利
である。 また、デイジタルフイルタにおける信号の語長
は有限であるため、制限された語長内に信号デー
タを必然的に丸めなければない。このような丸め
がノイズとなるものであるが、FIRフイルタでは
フイードバツクループがないため、丸めによる誤
差が累積されることがないので、ノイズ対策上有
利である。 なお、上述したようなFIRフイルタの諸特性に
ついては、例えば書籍「Theory and Applicati
on of Digital Signal Processing」(著者:
Lawrence,R.Rabiner;Bernard,Gold、発行
社:Prentice−Hall Inc)に詳しく記載されてい
る。 次に、この実施例におけるアダプテイブデイジ
タルフイルタ装置21及び22におけるいくつか
の特徴について予め簡単に説明する。 (f) フイルタ係数の求め方 フイルタ係数は実際の楽音を分析することによ
り求められる。フイルタ係数を求めるための手順
の一例を第10図を参照して説明すると、まず、
異なる音色を示す2種類の楽音波形(原楽音波
形)を自然楽器音からサンプリングすることによ
り準備する。例えば、原楽音波形1は強い鍵タツ
チで演奏されたピアノ音の波形であり、原楽音波
形2は弱い鍵タツチで演奏されたピアノ音の波形
である。次に、高速フーリエ変換を行い、原楽音
波形1,2のフーリエ成分を分析し、これに基づ
き両波形1,2のスペクトル特性を求める。次
に、波形1,2のスペクトル特性の差を求める。
次に、差のスペクトル特性を量子化し、これに基
づきフイルタ係数を求める処理を行う。最後に求
めたフイルタ係数をメモリに記憶する。 フイルタ特性の時変動を実現するするフイルタ
係数はダイナミツク制御用パラメータメモリ26
(第2図)に記憶し、時間的に変化しない定常的
なフイルタ特性を実現するフイルタ係数はADF
22及び22(第2図)内にパラメータメモリに
記憶する。 なお、上述で2波形の差のスペクトル特性に基
づきフイルタ係数を求める理由は、トーンジエネ
レータ18(第2図)で一方の原楽音波形(例え
ば強い鍵タツチに対応する波形)に相当する楽音
信号を発生し、これに対して差のスペクトル特性
に従うフイルタリングを施すことにより他方の原
楽音波形(例えば弱いタツチに対応する波形)に
相当する楽音信号を得るようにするためである。
鍵タツチに応じたフイルタリングを行う場合、全
ての鍵タツチ強度の段階に対応してフイルタ係数
の組を準備しておかずに、いくつかの段階に対応
するフイルタ係数の組だけを準備しておき、準備
されていない鍵タツチ強度に対応するフイルタ係
数は上述と同様の補間によつて求めるようにして
もよい。 勿論、鍵タツチに対応するフイルタ係数のみな
らず、音高(又は音域)あるいは音色種類あるい
はその他種々のフアクタに対応するフイルタ係数
を上述と同様の手法によつて準備する。 (g) ピツチに同期したフイルタ演算 ADF21及び22(第2図)における各サン
プル点毎のフイルタ演算タイミングはピツチ同期
信号PS1及びPS2によつて設定される。このこ
とは、フイルタ演算における単位時間遅れ(第5
図のz-1)がピツチ同期信号PS1,PS2によつて
設定されることを意味する。すなわち、フイルタ
演算におけるサンプリング周波数sはピツチ同期
信号PS1,PS2によつて設定される。具体的に
は各音名G〜F#に対応するピツチ同期信号PS
1,PS2の周波数は前出の第1表に示した実効
サンプリング周波数eと同じであるから、ADF
21及び22におけるフイルタ演算のサンプリン
グ周波数sは、入力された楽音信号の音名に応じ
て同表に示すように異なるものとなる。フイルタ
演算におけるサンプリング周波数sは、第8図及
び第9図に示すような周波数応答特性におけるω
=2πに該当する。ここから明らかなように、音
名に応じてサンプリング周波数sが変化すると、
周波数応答特性におけるω=2πに対応する周波
数もそれに応じて変化することになり、得られる
フイルタ特性は移動フオルマント特性となる。こ
のような移動フオルマント特性は楽音信号の音色
制御に非常に適したものである。 これに対してフイルタ演算におけるサンプリン
グ周波数が入力信号のピツチに無関係に一定であ
る場合は、得られるフイルタ特性は固定フオルマ
ントとなる。 (h) ピツチ同期/非同期の切替 上述のように移動フオルマントのフイルタは楽
音の音色制御に適しているが、得ようとする音色
又は効果によつては固定フオルマントのフイルタ
の方が望ましい場合がある。また、ピツチベント
操作子13(第2図)を操作して発生音のピツチ
を大きくスライドさせる場合も固定フオルマント
のフイルタの方が好ましい。そのために、この実
施例のADF21及び22では、フイルタ演算を
ピツチ同期で行うか非同期で行うかの切替えがで
きるような仕様となつている。また、このような
ピツチ同期/非同期の切替えは全チヤンネル一様
ではなく、各チヤンネル別に独立にピツチ同期又
は非同期の指定を行うことができるようになつて
いる。 因みに、ピツチベント操作時には固定フオルマ
ントのフイルタの方が好ましい理由は、次の通り
である。ピツチベント操作子13によるピツチ制
御は、僅かなピツチずれ制御のみならず、数音程
にわたる大きなピツチスライド制御も可能であ
り、その場合前出の第1表に示す音名G〜F#の
オクターブの境界を横切つてピツチ制御が施され
ることがある。そのとき、ピツチに同期したフイ
ルタ演算を行つているとサンプリング周波数sが
急激に変動し、それに伴ないカツトオフ周波数も
急激に変動し(移動フオルマントであるため)、
不自然な音色変化をもたらす。例えば、ピツチベ
ント操作によつて発音中の楽音がF#5音から
G5音にスライドしたとすると、サンプリング周
波数が47.359kHzから25.088kHzに急激に変動し
(前記第1表参照)移動フオルマントの場合は、
その差と同じ分だけカツト周波数も急激に変動す
る。このような不都合を防ぐには、ピツチベント
操作時は移動フオルマント(ピツチに同期したフ
イルタ演算)とせずに、固定フオルマント(ピツ
チに非同期のフイルタ演算)とするのがよい。ピ
ツチ非同期のフイルタ演算の場合、ADF21及
び22におけるフイルタ演算のサンプリング周波
数は第3図の例では50kHzである。 (i) ダイナミツク/スタテイツクに応じたフイル
タ次数の切替 前述の通り、ダイナミツクモードにおいては、
発音時に実時間で、マイクロコンピユータ14の
制御の下でダイナミツク制御用パラメータメモリ
26(第2図)からダイナミツク制御用パラメー
タデータを読み出し、これをADF21,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)2
1の内部構成例を略示するブロツク図であり、も
う一方の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に分けて行うようにした理由
は、回路設計上の理由による。ステートメモリ4
0,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に与えられ、ピツチ同期信号PSlに応じ
た信号の発生を該入力インタフエース38が行う
べきか否かの制御を行うために使用される。 ダイナミツク用フイルタパラメータDPR:マ
イクロコンピユータ14の制御の下でダイナミツ
ク制御用パラメータメモリ26(第2図)から読
み出されたフイルタパラメータ(フイルタ係数)
である。前述の通り、このダイナミツクモード用
フイルタパラメータDPRの内容は発音中の時間
経過に伴つて変化する。このダイナミツクモード
用フイルタパラメータDPRのデータ形式も前述
と同様に、12ビツトのフイルタ係数データ部と3
ビツトの重みづけデータ部とから成り、更に、次
数の偶奇を識別するデータを含む。また、前述の
通り、このダイナミツクモード用フイルタパラメ
ータDPRの一組の次数は16次(又は15次)であ
る。更に、前述から明らかなように、直線位相特
性におけるフイルタ係数の対称性により、実際に
準備する一組のダイナミツクモード用フイルタパ
ラメータDPRは8次分だけでよい。 ダイナミツク/スタテイツク選択信号DS:ダ
イナミツク/スタテイツク選択スイツチ27(第
2図)の操作に応じて発生される信号であり、フ
イルタ演算を前述のダイナミツクモードで行うか
スタテイツクモードで行うかを指示する。 上記DPR,DSはインタフエース44からパラ
メータセレクタ46に与えられる。 パラメータメモリ47は、スタテイツクモード
のためのフイルタパラメータ(フイルタ係数)を
記憶したものである。 パラメータプロセシングユニツト45は、上記
パラメータメモリ47からスタテイツクモード用
のフイルタパラメータを読み出す働きをする。す
なわち、キーオンパルスKONPが与えられたと
き、音色コードVN、タツチコードTCH、キー
コード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から出力される
フイルタパラメータのうち次数の偶奇を識別する
偶奇識別データEOA1〜EOA4,EOB1〜EOB
4はステートメモリ40,42に与えられ、フイ
ルタ係数データ部COEA,COEB及び重みづけデ
ータ部WEIA,WEIBは乗算器及びアキユムレー
タ部41,43に与えられる。なお、図中の符号
において末尾のA又はBはA系列とB系列の区別
を表わす。データEOA1〜EOA4,EOB1〜
EOB4は各チヤンネルのものが並列的に与えら
れるが、データCOEA,COEB,WEIA,WEIB
は各チヤンネルのものが時分割的に与えられる。 パラメータプロセシングユニツト45、パラメ
ータセレクタ46、パラメータメモリ47、パラ
メータ供給回路48,49の詳細例は第15図に
示されている。 ピツチ同期出力回路50は、乗算器及びアキユ
ムレータ部41,43から出力された各チヤンネ
ルのフイルタ済みの楽音信号サンプル値データを
入力し、これらを各々のピツチに同期したタイミ
ングでサンプリングし直す回路である。ここでサ
ンプリング制御に用いる信号は、入力インタフエ
ース38から与えられる。ピツチ同期信号PS1
Dであり、これは各チヤンネルのピツチ同期信号
PS1を所定時間遅延したものである。ピツチに
同期した再サンプリングのために、遅延したピツ
チ同期信号PS1Dを用いる理由は、前段でのデ
イジタルフイルタ演算における各チヤンネルの楽
音信号の時間遅れに合わせるためである。このよ
うにデイジタルフイルタ出力信号をそのピツチに
同期して再サンプリングする処理は、サンプリン
グ周波数を楽音ピツチに調和させるので、折返し
ノイズの問題を解決する。ピツチに同期してデイ
ジタルフイルタ演算を行う場合は、デイジタルフ
イルタ出力信号はピツチに同期したサンプリング
周期を持つのでピツチ同期出力回路50を特に設
けなかつたとしてもピツチ同期を実現することが
できるが、ピツチに非同期でデイジタルフイルタ
演算を行う場合はピツチ同期を実現するためには
ピツチ同期出力回路50が必要である。ピツチ同
期出力回路50の詳細例は第16図に示されてい
る。 次にアダプテイブデイジタルフイルタ装置21
の各部の詳細例について説明する。 なお、各図においてブロツク中に「1D」、
「8D」等の数字と文字Dが伴記された回路は、遅
延回路若しくはシフトレジスタであり、前の数字
は遅延段数若しくはステージ数を示す。また、こ
の遅延回路又はシフトレジスタブロツクにおい
て、遅延制御クロツクパルス又はシフト制御クロ
ツクパルスが入力されることが図示されていない
ものは、マスタクロツクパルスφ(第3図参照)
によつて遅延又はシフト制御がなされる。 〈入力インタフエース38:第12図) 第12図において、ピツチ同期信号PS1なオ
ア回路51,52を介してシフトレジスタ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”となる。例えば、信号φFS
1,25はタイムスロツト25で信号“1”とな
り、これは第1チヤンネルに対応している。第3
図を参照すると明らかなようにタイムスロツト2
5はピツチ同期信号PS1における第1チヤンネ
ルの時分割タイミングに対応している。従つて、
この信号φFS1,25によつてラツチ制御される
ラツチ回路55の部分にはチヤンネル1のピツチ
同期信号PS1の内容(ピツチに同期したタイミ
ングでは信号“1”、それ以外のタイミングでは
信号“0”)がラツチされる。他のチヤンネル2
〜8も同様であり、各チヤンネルのピツチ同期信
号が所定のタイミングでラツチ回路55に夫々並
列的にラツチされる。 なお、各チヤンネルに対応するラツチタイミン
グ信号φFS1,25〜φFS8,56は第13図も
のデコーダ56から発生される。デコーダ56は
カウンタ57の出力をデコードして様々な種類の
タイミング信号を発生する。カウンタ57はマス
タクロツクパルスφをカウントするモジユロ64
のカウンタであり、システムシンクロパルス
SYNC(第3図)によつて定期的にリセツトされ
る。各チヤンネル1〜8に対応するラツチタイミ
ング信号φFS1,25〜φFS8,56がどのタイ
ムスロツトで発生するかは第13図の表示から明
らかであろう。 第12図に戻り、各タイミング信号φFS1,2
5〜φFS8,56はノア回路58で多重化されか
つ反転される。ノア回路58の出力はアンド回路
54に入力される。これにより、ラツチ回路55
への取り込みが行われたチヤンネルに関するシフ
トレジスタ53の記憶がクリアされる。 一方、ピツチ同期信号PS1が“1”となつた
チヤンネルに対応してラツチ回路55にラツチさ
れた信号“1”は、次のサイクルでそれに対応す
るラツチタイミング信号φFS1,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で循環保持され、タイムスロツト2
5でタイミング信号φFS1,25が発生したとき
ラツチ回路55にラツチされ、チヤンネル1に対
応するフイルタ演算要求信号φF1がそのタイム
スロツト25において“1”に立上る。この信号
φF1は次のサイクルのタイムスロツト24まで
合計64タイムスロツト分の時間幅だけ信号“1”
を維持する。 〈タイミング信号発生回路39:第13図〉 第13図において、タイミング信号発生回路3
9は、前述のデコーダ56及びカウンタ57の他
に、第12図の入力インタフエース38から与え
られる各チヤンネルのフイルタ演算要求信号φF
1〜φF8に応じてフイルタ演算動作制御用のタ
イミング信号を発生する演算タイミング発生回路
391〜398を各チヤンネル(Ch1〜Ch8)毎
に具えている。図ではチヤンネル1の回路391
のみ詳細を示したが、他のチヤンネル2〜8の回
路392〜398も同一構成であり、そこに入力
されるタイミング信号T33,T49,…の時間
関係だけが異なる。タイミング信号T39,T4
9,…はデコーダ56から発生される。前述と同
様に、タイミング信号を示す符号においてかつこ
内の数字は、1演算サイクル(第3図に示す64タ
イムスロツト)中のタイムスロツト番号を示し、
そのタイムスロツト番号に対応するタイムスロツ
トにおいて該タイミング信号が“1”となること
を示す。デコーダ56から発生される他のタイミ
ング信号についても同様であり、かつこ内の数字
を参照することによりそのタイミング信号がどの
タイムスロツトにおいて発生するか(“1”とな
るか)が容易に判る。例えば、タイミング信号T
33は第17図に示すようにタイムスロツト33
において信号“1”となるものであり、信号T3
−18はタイムスロツト3から18までの間で信
号“1”となるものである。 チヤンネル1の演算タイミング信号発生回路3
91について説明すると、フイルタ演算要求信号
φF1とタイミング信号T33がアンド回路59
に与えられる。従つて、フイルタ演算動作を行う
べきことが要求されたならば、タイムスロツト3
3のタイミングでアンド回路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次)の演算を
禁止することにより奇数次のフイルタ特性を実現
するために使用される。 タイミング信号T3−18とT35−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図)内の各遅
延段階に対応する楽音信号サンプル値データを順
次シフトするために使用される。 タイミング信号T35−50に応じてタイムス
ロツト35から50の間で“1”となる乗算タイ
ミング信号PDOA1(第17図参照)は、デイ
ジタルフイルタ回路において楽音信号サンプル値
データとフイルタ係数との乗算を行うべき期間を
指示するものである。 A系列における他のチヤンネル2〜4に対応す
るる演算タイミング信号発生回路392〜394
において用いられるタイミング信号T49,T1
9−34,T51−2,…はチヤンネル1のタイ
ミング信号T33,T3−18,T35−50の
タイミングから順に16タイムスロツトづつずれた
ものである。従つて、チヤンネル1の回路391
から出力される各信号RLA1〜PDOA1と同様
の信号RLA2〜PDOA2,…RLA4〜PDOA4
が他のチヤンネル2〜4の回路392〜394か
ら夫々順次16タイムスロツトづつずれたタイミン
グで発生される。これに基づき、A系列のデイジ
タルフイルタ回路(特に乗算器及びアキユムレー
タ部41)において、1演算サイクル=64タイム
スロツトの間で16タイムスロツト毎の時間区間で
4つのチヤンネル1〜4のフイルタ演算動作を時
分割的に行わせることができるようになつてい
る。 B系列の各チヤンネル5〜8に対応する演算タ
イミング信号発生回路395〜398においても
各チヤンネル間で16タイムスロツトづつずれた所
定のタイミングでタイミング信号T49,T19
−34,T51−2,…が使用され、上述と同様
の各種信号RLB1〜PDOB1,…RLB4〜
PDOB4が発生される。 A系列に対応する演算タイミング信号発生回路
391〜394で発生された各信号RLA1〜
PDOA4はA系列のステートメモリ40に与え
られ、B系列に対応する回路395〜398で発
生された各信号RLB1〜PDOB4はB系列のス
テートメモリ42(第11図)に与えられる。 〈ステートメモリ40:第14図〉 第14図において、A系列のステートメモリ4
0はA系列の各チヤンネル1〜4に対応するステ
ートメモリ401〜404を並列的に具えてい
る。チヤンネル1のステートメモリ401のみ詳
細を示したが、他のチヤンネル2〜4のステート
メモリ402〜404も同一構成であり、そこに
入力される信号が異なつている。上述の各チヤン
ネル1〜4に対応する演算タイミング信号発生回
路391〜394(第13図)から発生された各
信号RLA1〜PDOA1,…RLA4〜PDOA4
は、自己のチヤンネルに対応するステートメモリ
401〜404に夫々入力される。 同図に示したステートメモリ40と乗算器及び
アキユムレータ部41の詳細を説明する前に、こ
れらの回路から成るデイジタルフイルタ回路の基
本動作について第18図及び第19図に示す略図
を参照して説明する。 〈偶数次のフイルタ演算基本動作:第18図〉 第18図は、上記デイジタルフイルタ回路にお
いて偶数次(32次)から成るフイルタ特性を実現
する場合のFIR型フイルタ演算の基本動作を説明
するための略図であり、aはブロツク図、bは各
演算タイミングにおけるaのシフトレジスタSR
1,SR2の各ステージQ0〜Q15,Q16〜
Q31内の楽音信号サンプル値の状態を示す。 第1のシフトレジスタSR1は16ステージを持
ち、フイルタをかけるべきデイジタル楽音信号サ
ンプル値データxoがセレクタSEL1を介して入力
される。セレクタSEL1を介して新しいサンプル
値データxoを取り込むための信号としては前述の
フイルタデータサンプリングクロツク信号RLA
(チヤンネル1の場合はRLA1)が使用され、シ
フトレジスタSR1のシフトクロツクパルスとし
ては前述の第1シフトクロツク信号φFFA(チヤ
ンネル1の場合はφFFA1)が使用される。第1
のシフトレジスタSR1の各ステージQ0〜Q1
5にはサンプル点nからn−15までの16個のサ
ンプル値データxo〜xo-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−
16からn−31までの16個のサンプル値データ
xo-16〜xo-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の各ステージQ0〜Q
31にxoからxo-31までの32サンプル点のサンプ
ル値データが入つている。 図の例では、演算タイミング2のときサンプリ
ングクロツク信号RLAが“1”になるものとし
ている。これにより、シフトクロツク信号
φFFA,φFLAに応じてシフトレジスタSR1,
SR2が1ステージ右シフトされ、この演算タイ
ミング2では図示のような状態となる。このとき
のシフトクロツク信号φFFA,φFLAはチヤンネ
ル1の場合は第17図のφFFA1,φFLA1の欄
に示すようにタイムスロツト34で発生するもの
である。同図から明らかなように、次の1タイム
スロツトはシフトクロツク信号φFFA,φFLAは
発生せず、従つて第18図bの演算タイミング3
では各ステージQ0〜Q31の状態は変化しな
い。しかし、演算タイミング3から18までの16
タイムスロツト幅は、チヤンネル1でいえば乗算
タイミング信号PDOA1(第17図)が発生す
るタイムスロツト35〜50に対応しており、こ
の間で乗算及びアキユムレートが行われる。 つまり、演算タイミング3では、ステージQ1
5とQ16に入つているxo-14とxo-15のサンプル
値データが加算器ADDで加算され、これに第16
次のフイルタ係数が掛けられ、その結果がアキユ
ムレータACCに保持される。 演算タイミング4から18までの間は、1タイ
ムスロツト毎に、第1のシフトレジスタSR1は
右シフト、第2のシフトレジスタSR2は左シフ
トされ、各ステージQ0〜Q31の状態は図示の
ように順次変化する。従つて、演算タイミング4
ではxn−13とxo-16が加算され、これに第15次
のフイルタ係数が乗算され、その結果がアキユム
レータACCに累算される。次の演算タイミング
5ではxo-12とxn−17について同様の演算が行
われ、こうして対称位置にある2サンプル値デー
タに関して同様のフイルタ係数演算が順次時分割
で行われ、演算タイミング18では最後の対称位
置にあるxo+1とxo-30に関して同様の演算が行わ
れ、これで全次数のフイルタ演算が完了する。次
の演算タイミング19ではもう一度シフトが行わ
れ、図示のように、各ステージQ0〜Q31に遅
延された時間順に各サンプル値データxo+1〜
xo-30が並ぶ。 〈奇数次のフイルタ演算基本動作:第19図〉 第19図は、奇数次(31次)からなるフイルタ
特性を実現する場合のFIR型フイルタ演算の基本
動作を説明するための略図であり、aはブロツク
図、bは各演算タイミングにおけるaのシフトレ
ジスタSR1,SR2の各ステージQ0〜Q15,
Q16〜Q30の楽音信号サンプル値の状態を示
す。 aにおける各ブロツクは第18図aに示したも
のと同一であり、異なる点は、ステージQ16の
出力がゲートGTを介して加算器ADDに与えられ
ることである。ゲートGTはインヒビツト信号
INHA(第1チヤンネルではINHA1)を反転し
た信号によつて制御されるようになつており、該
信号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次の各遅
延段階に対応する楽音信号サンプル値xo+1〜
xo-29が順番に入つており、ステージQ15に中
央の次数のサンプル値xo-14が入つている。第6
図に示されているように、奇数次モードの対称の
中央に位置する次数ではそれ単独に対応して固有
のフイルタ係数が割り当てられる。従つて、演算
タイミング3では、インヒビツト信号INHAによ
つてステージQ16の出力を禁止し、中央次数に
対応するステージQ15の出力信号のみを加算器
ADDに加え、乗算器MULにおいて該中央次数に
対応する固有のフイルタ係数を乗算する。 演算タイミング4では、第1のシフトレジスタ
SR1のみが右シフトされ、第2のシフトレジス
タSR2はシフトされない。従つて、ステージQ
15にはxo-13が入り、Q16にはxo-15が入つて
いる。また、インヒビツト信号INHAは“0”と
なり、ゲートGTが開かれる。こうして、中央次
数の両隣の次数に対応するサンプル値xo-13,
xo-15が加算器ADDに与えられて加算され、乗算
器MULにおいて両者に共通のフイルタ係数が乗
算される。 演算タイミング5〜18ではSR1が順次右シ
フト、SR2が順次左シフトされ、図示のように
対称位置にあるサンプル値がステージQ15,Q
16に入り、両者が加算されて共通のフイルタ係
数が乗算される。 〈デイジタルフイルタ回路:第14図〉 第14図を参照してチヤンネル1に対応するス
テートメモリ401について説明する。16ステー
ジの一方向シフトレジスタ71は第18図、第1
9図の第1のシフトレジスタSR1に対応するも
のであり、チヤンネル1に対応する第1のシフト
クロツク信号φFFA1によつてシフト制御され
る。トーンジエネレータ18(第2図)から供給
されたデイジタル楽音信号サンプル値データ
TDXはラツチ回路73に入力され、ラツチタイ
ミング信号XLDA1に従つてチヤンネル1のサ
ンプル値データが該ラツチ回路73に取込まれ
る。楽音信号サンプル値データTDXにおける各
チヤンネルの時分割タイミング(第3図参照)に
対応して、各チヤンネル1〜8に対応するラツチ
タイミング信号XLDA1〜XLDA4,XLDB1
〜XLDB4がデコーダ56(第13図)から発
生される。前述のように、第13図の各信号表示
の末尾のかつこ内の数字はその信号が発生するタ
イムスロツト番号を示す。各チヤンネルに対応す
るステートメモリ内にはラツチ回路73と同様の
ラツチ回路が設けられており、各々々に対応する
ラツチタイミング信号XLDA1〜XLDA4,
XLDB1〜XLDB4によつて各チヤンネル1〜
8の楽音信号サンプル値データTDXが別々にラ
ツチされ、こうしてデマルチプレクスされる。 ラツチ回路73にラツチされたチヤンネル1の
楽音信号サンプル値データはセレクタ74のA入
力にあたえられる。セレクタ74は第13図の演
算タイミング信号発生回路391から与えられる
フイルタデータサンプリングクロツク信号RLA
1が“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
1〜SL16とラツチ回路LC1〜LC16から成
つていて、双方向シフトが可能なように接続され
ている。すなわち、最初のステージQ16のセレ
クタSL1のA入力には第1のシフトレジスタ7
1の最終ステージ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が他と
は幾分異なつている。つまり、このセレクタSL
15にはC入力が設けられており、そこにステー
ジQ16の出力信号が加わる。チヤンネル1に関
する偶奇識別データEOA1が“1”(つまり偶数
次モード)のときアンド回路751が可能化さ
れ、信号RLA1が“0”のとき該アンド回路7
51の出力が信号“1”となり、これによりセレ
クタSL15がB入力を選択し、ステージQ31
の出力がステージQ30に与えられる(左シフト
される)。EOA1が“0”のとき(奇数次モード
のとき)アンド回路761が可能化され、信号
RLA1が“0”のときセレクタSL15がC入力
を選択し、ステージQ16の出力がステージQ3
0に与えられる(Q31を飛越して左シフトされ
る)。 以上の構成により、第1及び第2のシフトレジ
スタ71,72の内容の変化状態は偶数次モード
と奇数次モードの別に応じて第18図b、第19
図bに示したものと全く同様になる。 第2のシフトレジスタ72の第1ステージQ1
6の出力信号はゲート75を介してゲート76に
与えられる。ゲート75はインヒビツト信号
INHA1を反転した信号によつて制御されるもの
で、第19図のゲートGTに対応するものであ
る。ゲート76は、第1のシフトレジスタ71の
出力信号(ステージQ15の出力信号)とゲート
75を介して与えられる第2のシフトレジスタ7
2の出力信号(ステージQ16の出力信号)を入
力し、乗算タイミング信号PDOA1(第17図
参照)によつて開放される。 ゲート76の出力は乗算器及びアキユムレート
部41の加算器77に与えられ、そこで2つの楽
音信号サンプル値データが加算される。この加算
器77は第18図、第19図の加算器ADDに対
応するものである。加算器77の出力は遅延回路
78で1タイムスロツト遅延されて乗算器79に
入力される。乗算器79は遅延回路78を介して
与えられる楽音信号サンプル値データに遅延回路
80を介して与えられるフイルタ係数データ
COEAを乗算するものである。乗算器79の出力
は遅延回路81で4タイムスロツト遅延されてシ
フタ82に与えられる。シフタ82のシフト制御
入力には5タイムスロツトの遅延を設定する遅延
回路83を介して重みづけデータWEIAが与えら
れる。この乗算器79とシフタ82は、第18
図、第19図の乗算器MULに対応するものであ
る。すなわち、前述の通り、フイルタ係数データ
COEAはフイルタ係数の有効ビツトのデータであ
り、乗算器79においてこのフイルタ係数の有効
ビツトと楽音信号サンプル値データとの乗算が行
われる。そして、この乗算結果をシフタ82にお
いて重みづけデータWEIAの値に応じたビツト数
だけシフトすることにより、フイルタ係数の実数
と楽音信号サンプル値データとの乗算が完了す
る。 シフタ82の出力はアキユムレータ84に与え
られ、1チヤンネル分の各次数に対応する乗算結
果がアキユムレートされる。アキユムレータ84
の出力はラツチ回路85に入力され、演算終了タ
イミング信号FENDAに従つてラツチされる。こ
の信号FENDAは第13図のデコーダ56から発
生される。同図中に表示されているように、この
信号FENDAはタイムスロツト8,24,40,
56において“1”となる。タイムスロツト56
ではチヤンネル1の演算結果をラツチし、8では
チヤンネル2の演算結果をラツチし、24ではチ
ヤンネル3の演算結果をラツチし、40ではチヤ
ンネル4の演算結果をラツチする。デコーダ56
からはB系列の演算終了タイミング信号FENDB
も同様に発生される。 乗算器及びアキユムレート部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と乗算器およびアキユムレータ部4
1,43)における各チヤンネル1〜8に関する
フイルタ動作のタイミングを第20図に示す。第
20図において、シフト1の欄には第1のシフト
レジスタ(チヤンネル1の場合は71)のシフト
タイミングを示し、シフト2の欄には第2のシフ
トレジスタ(チヤンネル1の場合は72)のシフ
トタイミングを示している。矢印の方向はシフト
方向(右シフト又は左シフト)を示している。各
チヤンネルのシフトタイミングは演算タイミング
信号発生回路391〜398(第13図)から発
生される第1及び第2のシフトクロツク信号
φFFA1〜φFFB4,φFLA1〜φFLB4の発生
タイミングに対応している。シフト動作には、フ
イルタ演算のためのシフト動作と記憶データリフ
レツシユのためのダミーシフト動作とがある。例
えばチヤンネル1の場合、タイムスロツト4〜1
9でのシフトがダミーシフトである。シフト2の
欄における(←)の記号は偶数次モードのとき左
シフトを行い、奇数次モードのときシフトを行わ
ないことを示す。 第20図において、INHの欄はインヒビツト
信号INHA1〜INHB4の発生タイミングを示し
ている。奇数次モードのときは〇印のタイムスロ
ツトにおいてインヒビツト信号INHA1〜INHB
4が“1”となる。PDOの欄は、各チヤンネル
のステートメモリ40,42から乗算器及びアキ
ユムレータ部41,43に楽音信号サンプル値デ
ータが入力されるタイミングを示している。これ
は各チヤンネルの乗算タイミング信号PDOA1
〜PDOB4の発生タイミングに対応している。
SUMの欄は、アキユムレータ84の出力タイミ
ングを示している。PDOとSUMのタイミングの
間に6タイムスロツトの遅れがあるのは、遅延回
路78,81による5タイムスロツトの遅れとア
キユムレート84による1タイムスロツトの遅れ
による。アキユムレータ84の出力タイミングの
最後のタイムスロツトでは演算終了タイミング信
号FENDAが発生し、アキユムレータ84の出力
をラツチ回路85に取り込む。 〈パラメータメモリ47:第21図〉 第21図はパラメータメモリ47の記憶フオー
マツトの一例を示しており、キーグループテーブ
ル、タツチグループテーブル、パラメータアドレ
ステーブルとパラメータバンクから成つている。
実際のフイルタパラメータはパラメータバンクに
記憶されており、パラメータアドレステーブルに
はパラメータバンクから読み出すべきパラメータ
のアドレスデータが記憶されている。キーグルー
プテーブルは各鍵に対応してその鍵をグループ化
する情報を記憶している。一例として鍵数は8
8、グループ数は44であり、キーグループテー
ブルでは各鍵に対応するアドレス位置にその鍵の
属するキーグループに関する相対アドレスデータ
(キーグループアドレスという)を記憶している。
従つて、キーグループテーブルはキーコードKC
によつてアドレスされる。このキーグループテー
ブルはパラメータメモリ47の所定の絶対アドレ
ス(オフセツトアドレスOADSという)から始ま
る記憶エリアを占めている。 タツチグループテーブルは各音色毎の鍵タツチ
強度の各段階に対応してそのタツチ強度をグルー
プ化する情報を記憶している。一例として音色数
は32であり、このタツチグループテーブルは音色
コードVNの値0〜31に対応する32の音色別エリ
アを含んでおり、またタツチコードTCHによつ
て表現し得るタツチ強度の段階は一例として64で
あり、各音色別エリアはタツチ0から63に対応
する64個のアドレス位置を有している。各タツチ
強度に対応するアドレス位置にはそのタツチ強度
の属するタツチグループに関する相対アドレスデ
ータ(タツチグループアドレスという)が記憶さ
れている。一例としてタツチグループ数は16であ
る。従つて、タツチグループテーブルは音色コー
ドVNとタツチコードTCHによつてアドレスさ
れる。このタツチグループテーブルはパラメータ
メモリ47の所定の絶対アドレス(これをオフセ
ツトアドレスOAD1という)から始まる記憶エ
リアを占めている。このタツチグループテーブル
を読み出すための絶対アドレスデータは、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から2619に対応する2620個のパラメー
タ記憶エリアを含んでいる。1つのパラメータ記
憶エリアは32バイトの記憶位置(32個の絶対アド
レス位置)を含んでおり、16次数分の1組のフイ
ルタ係数に対応するパラメータを記憶している。
1次数分のフイルタ係数は2バイトの記憶位置に
記憶されており、その内訳は、前述の通り、12ビ
ツトのフイルタ係数データ(COE)と3ビツト
の重みづけデータ(WEI)と1ビツトの偶奇識
別データ(EO)から成る。但し、重みづけデー
タ(WEI)と偶奇識別データ(EO)は1組のパ
ラメータにおいては各次数間で共通であるため第
1次の記憶位置にのみ記憶し、他の次数の記憶位
置には記憶しない。しかし、重みづけデータ
(WEI)は各次数毎に独立に記憶するようにする
ことも可能である。このパラメータバンクは上述
のパラメータアドレステーブルから読み出された
パラメータアドレスによつてアドレスされる。パ
ラメータバンクはパラメータメモリ47の所定の
絶対アドレス(これをオフセツトアドレスOAD
3という)から始まる記憶エリアを占めている。
このパラメータバンクを読み出すための絶対アド
レスデータは、12ビツトのパラメータアドレスデ
ータを17ビツトの相対アドレスデータ(オフセツ
トアドレスOAD3を0とするアドレス)の上位
12ビツトに位置させることにより該相対アドレス
データを作成し、これをオフセツトアドレス
OAD3に加算することにより作成される。この
絶対アドレスデータの下位5ビツトを32ステツプ
で順次変化させることにより、パラメータアドレ
スによつて指定された1パラメータ記憶エリア内
の16次数分からなる1組のフイルタパラメータが
順次読み出される。 第21図に示したような階層化されたパラメー
タメモリ構造は、メモリ容量を節約することがで
きるので有利である。このようにせずに、44キー
グループ、32音色、16タツチグループの組合せの
すべて(22528通り)に対応して個別にフイルタ
パラメータを記憶したとすると、22528×32バイ
トの記憶容量が要求されるが、第21図のように
すればパラメータアドレステーブルの1408(=44
×32)×32バイトとパラメータバンクの2620×32
バイトを合わせた4028×32バイトの記憶容量しか
要求されない。つまり、キーグループ、音色、タ
ツチグループの組合せが異なつていてもフイルタ
パラメータは共通のものを使用できる場合がある
ので、第21図の例では22528通りの組合せに対
して2620種のパラメータを共用する構造としてお
り、これによりメモリ容量の節約を図つている。 〈パラメータプロセシングユニツト45、パラ
メータセレクタ46、パラメータメモリ47、
パラメータ供給回路48,49:第15図〉 パラメータプロセシングユニツト45は、前述
のスタテイツクモードのために、上述したような
パラメータメモリ47の読み出しを制御するもの
である。プログラムメモリ451には、上述のよ
うなパラメータメモリ47の読み出し制御を実行
するプログラムが記憶されている。プログラムカ
ウンタ452はプログラムメモリ451を読み出
すためのプログラムステツプ信号PCを発生する
もので、8ステージのシフトレジスタ86と加算
器87、ゲート88,89、エンド検出回路90
を含んでおり、8チヤンネル分のカウント動作を
時分割的に行う。キーオンパルス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のステツプに応じて選択制御信号SELC
1〜SELC4を読み出し、かつオフセツトアドレ
スメモリ453を読み出すためのアドレスデータ
を読み出す。オフセツトアドレスメモリ453は
前述のオフセツトアドレスOADS〜OAD3の値
を記憶している。オフセツトアドレスメモリ45
3から読み出されたオフセツトアドレスデータ
ADOF(OADS〜OAD3のいずれか)は加算器4
54に入力される。加算器454はセレクタ45
5から与えられる相対アドレスデータRADDと
オフセツトアドレスデータADOFとを加算し、
その出力をアドレスデータPRADとしてパラメ
ータメモリ47のアドレス入力に加わる。 キーグループアドレスレジスタ456、タツチ
グループアドレスレジスタ457、パラメータア
ドレスレジスタ458は夫々8ステージのシフト
レジスタから成り、キーグループアドレスデータ
KEYG、タツチグループアドレスデータTCHG、
パラメータアドレスデータPADを各チヤンネル
毎に時分割的に記憶するものである。各レジスタ
456〜458の入力側にセレクタ93〜95が
設けられており、パラメータメモリ47から読み
出されたデータが各セレクタの一方の入力に加わ
る。各セレクタ93〜95の他方の入力には各レ
ジスタ456〜458の出力が加わる。セレクタ
93〜95の選択制御信号SELC2〜SELC4は
プログラムメモリ451から与えられるようにな
つており、プログラムのステツプに応じて、パラ
メータメモリ47の読み出し出力データをレジス
タ456〜458に取り込むか、あるいはレジス
タ456〜458に一旦取り込んだデータを循環
保持するかの制御を行う。明らかなように、パラ
メータメモリ47から前述のキーグループアドレ
スデータが読み出されたときこれをキーグループ
アドレスレジスタ456に取り込み、前述のタツ
チグループアドレスデータが読み出されたときこ
れをタツチグループアドレスレジスタ457に取
り込み、前述のパラメータアドレスデータが読み
出されたときこれをパラメータアドレスレジスタ
458に取り込むように選択制御信号SELC2〜
SELC4が発生される。 各レジスタ456〜458にストアされたアド
レスデータKEYG,TCHG,PADはセレクタ4
55に入力される。セクタ455にはキーコード
KC、音色コードVN及びタツチコードTCH更に
はプログラムカウンタ452から出力されるステ
ツプ信号PCの最下位ビツトPCLSB及びこのステ
ツプ信号PCから「4」(2進の“100”)を引いた
データPC−4も入力されている。セレクタ45
5ではプログラムメモリ451から与えられる選
択制御信号SELC1に応じて入力データを所定の
組合せで選択しかつ選択したデータを相対アドレ
スデータRADDにおける所定の重みに対応する
ビツト位置に位置させ、こうして相対アドレスデ
ータRADDを作成し出力する。 このパラメータプロセシングユニツト45にお
いて実行される37ステツプの処理内容は下記の通
りである。 PC=0のとき:キーグループテーブル読出し処
理 選択制御信号SELC1によりキーコードKCを
選択し、オフセツトアドレスデータADOFとし
てキーグループテーブルのオフセツトアドレス
OADSを読み出す。また、選択制御信号SELC2
によりパラメータメモリ47の出力データをキー
グループアドレスレジスタ456に取り込む。こ
れにより、パラメータメモリ47のキーグループ
テーブルからキーコードKCに対応するキーグル
ープアドレスが読み出され、これがレジスタ45
6にストアされる。 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ビツトのパラメータアドレスデータが読み
出され、PCLSBが“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各系列のパラメー
タ供給回路48,49に入力される。A系列の回
路48のみ詳細例を示したが、B系列の回路49
も同一構成である。パラメータ供給回路49にお
いて、分配回路485は、セレクタ46からシリ
アルに与えられるパラメータデータのうちA系列
のチヤンネル1〜4に関するデータを取り込み、
これを各チヤンネル別に並列化すると共に、フイ
ルタ係数データ(チヤンネル1ではCOEA1)、
重みづけデータ(チヤンネル1ではWEIA1)、
偶奇識別データ(チヤンネル1ではEOA1)の
別に並列化し、これらを各チヤンネルに対応する
記憶回路481〜484に分配する。このような
分配制御のために、適宜のタイミング信号TS2
がタイミング信号発生回路39のデコーダ56
(第13図)から発生され、分配回路485に与
えられる。 記憶回路481〜484はチヤンネル1につい
て詳細例を示すが、他のチヤンネルに関しても同
様である。12ビツトのフイルタ係数データCOEA
1はセレクタ96を介して16ステージのシフトレ
ジスタ97に入力される。このフイルタ係数デー
タCOEA1は16タイムスロツトにおいて16次数分
のデータが時分割多重化されており、この16次数
分のデータがシフトレジスタ97の各ステージに
取り込まれる。シフトレジスタ97の内容はセレ
クタ96を介して循環保持される。3ビツトの重
みづけデータWEIA1はラツチ回路98に入力さ
れる。1ビツトの偶奇識別データEOA1はラツ
チ回路99に入力される。セレクタ96及びラツ
チ回路98,99の制御は、図示しない適宜の制
御信号によつて適切なタイミングで行われる。す
なわち、スタテイツクモードのときは、鍵の押し
始めに応答してパラメータメモリ47から読み出
された16次数分のパラメータデータが、タイミン
グ同期化回路459、セレクタ46、分配回路4
85を経由して記憶回路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のシフトレジスタ9
7から出力されるフイルタ係数データはセレクタ
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のフ
イルタ済み出力が取り込まれるタイミングは第2
0図のSUMの欄の累算最終タイムスロツト(斜
線の部分)であり、これにより、各チヤンネル1
〜4のフイルタ済みサンプル値データSMAのチ
ヤンネルタイミングを示すと第17図のようにな
る。セレクタ501のC入力にはB系列の乗算器
及びアキユムレータ部43(第11図)から出力
されたチヤンネル5〜8のフイルタ済み楽音信号
サンプル値データSMBが時分割多重的に与えら
れる。このデータSMBのチヤンネルタイミング
は第17図のようである。 セレクタ501のA入力には8ステージのシフ
トレジスタ502の出力が与えられ、該セレクタ
501の出力は該シフトレジスタ502に入力さ
れる。このセレクタ501とシフトレジスタ50
2は、各チヤンネル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図のPS1のチヤ
ンネル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に与えられる。従つて、上述
の各タイミングでシフトレジスタ502に取り込
まれた各チヤンネルのフイルタ済みサンプル値デ
ータは、それ以外のタイミングでは該シフトレジ
スタ502で循環保持される。 シフトレジスタ502の出力はセレクタ504
のA入力に与えられる。セレクタ504の出力は
8ステージのシフトレジスタ505に入力され
る。シフトレジスタ505の出力はセレクタ50
4のB入力を介して入力側に戻される。セレクタ
504及びシフトレジスタ505は、デイジタル
フイルタの出力楽音信号をそのピツチに同期して
再サンプリングするためのものである。セレクタ
504のA選択制御入力SAには入力インタフエ
ース38(第12図)から与えられる遅延された
ピツチ同期信号PS1Dが8タイムスロツトの遅
延回路506を介して入力される。 第12図において、ピツチ同期信号PS1はオ
ア回路51を介して64ステージのシフトレジスタ
100に入力される。このシフトレジスタ100
で24タイムスロツト遅延されたピツチ同期信号が
アンド回路101に入力され、40タイムスロツト
遅延されたものがアンド回路102に入力され、
48タイムスロツト遅延されたものがアンド回路1
03に入力され、64タイムスロツト遅延されたも
のがアンド回路104に入力される。各アンド回
路101〜104の他の入力には、第13図のデ
コーダ56から発生されたタイミング信号PSS1
〜PSS4が夫々入力される。各アンド回路101
〜104の出力はオア回路105に与えられ、遅
延されたピツチ同期信号PS1Dが得られる。各
信号PSS1〜PSS4の発生タイミングは第13図
中にかつこ書きで示した通りである。そこにおい
て、例えば「1y8」なる表示は8タイムスロツト
周期で1番目のタイムスロツトで信号“1”が発
生することを示す。従つてて、タイミング信号
PSS1の場合、「1y8,3y8」であるから、8タイ
ムスロツト周期で1番目と3番目のタイムスロツ
トで夫々信号“1”が発生する。第13図中の各
信号PSS1〜PSS4のかつこ内の表示と第3図の
PS1のチヤンネルタイミングとを参照すれば明
らかなように、信号PSS1はPS1におけるチヤ
ンネル1と3のタイミングで“1”となり、PSS
2はPS1におけるチヤンネル2と6のタイミン
グで“1”となり、PSS3はPS1におけるチヤ
ンネル3と7のタイミングで“1”となり、PSS
4はPS1におけるチヤンネル4と8のタイミン
グで“1”となる。 以上により、チヤンネル1と5のピツチ同期信
号PS1は24タイムスロツト、2と6のPS1は40
タイムスロツト、3と7のPS1は48タイムスロ
ツト、4と8のPS1は64タイムスロツト、夫々
遅延したものを遅延されたピツチ同期信号PS1
Dとする。このようにチヤンネルによつて遅延時
間が異なる理由は、アダプテイブデイジタルフイ
ルタ装置21(第11図)における各チヤンネル
1〜4,5〜8の演算タイミングのずれに合せた
からである。 第16図に戻り、遅延されたピツチ同期信号
PS1Dは遅延回路506で更に8タイムスロツ
ト遅延され、セレクタ504の入力SAに与えら
れる。セレクタ504は或るチヤンネルの信号
PS1Dが“1”のときそのチヤンネルのフイル
タ済みサンプル値データをシフトレジスタ502
から取り込み、シフトレジスタ505に入力す
る。それ以外のときは、シフトレジスタ505の
内容がセレクタ504の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を発生する。従つ
て、デイジタルフイルタ演算におけるサンプリン
グ周波数はピツチに無関係に一定(例えば50k
Hz)となり、得られるフイルタ特性は固定フオル
マントとなる。 〈フイルタ特性の一例〉 上記実施例によつて実現できるフイルタ特性の
一例を第22図及び第23図に示す。 第22図はフイルタの次数を奇数次(31次)に
設定した場合に得られる特性の一例を示すもの
で、ハイパスフイルタ特性を実現したものであ
る。s/2はサンプリング周波数sの1/2であり、
ピツチ同期モードのときは楽音のピツチに同期し
た周波数であり、ピツチ非同期モードのときは一
定の周波数である。 第23図はフイルタの次数を偶数次(32次)に
設定した場合に得られる特性の一例を示すもの
で、ローパスフイルタ特性を実現したものであ
る。 〈変更例〉 第16図に示したピツチ同期出力回路50はシ
フトレジスタ502,505を用いてチヤンネル
時分割でピツチ同期処理を行つているが、これに
限らず、各チヤンネル毎に並列的に記憶回路を設
け、並列的にピツチ同期処理を行うようにしても
よい。 上記実施例では、デイジタルフイルタとして
FIRフイルタを用いたが、これに限らずIIR(無限
インパルス応答)やその他の型式のデイジタルフ
イルタを用いて係数が対称性を示すようにしても
よい。 第21図に示したパラメータメモリの記憶フオ
ーマツトはこれに限定されず、様々な変更が可能
である。例えば、そのような階層構造を採用しな
いようにしてもよい。 また、パラメータメモリのアドレスの仕方は上
記実施例に示した手順に限らず、様々な変更が可
能である。例えば、実施例ではキーグループテー
ブルを先にアクセスし、次にタツチグループテー
ブルをアクセスしているが、これは逆であつても
よい。また、第15図ではプログラムメモリ45
1に読み出し手順を予め記憶したマイクロプログ
ラミング方式を採用し、これによりパラメータメ
モリ47の読み出しを行うようにしているが、こ
のようなマイクロプログラム方式によらずに、完
全なハードワイヤード回路あるいは完全なソフト
ウエアプログラムによつて読み出し制御を行うよ
うにしてもよい。 また、上記実施例では複音型の電子楽器におい
てこの発明を適用しているが、単音型の電子楽器
においても適用することができるのは勿論であ
る。また、専用の電子楽器に限らず、楽音信号発
生又は処理機能を持つ装置一般においてこの発明
を適用することができる。 上記実施例では、トーンジエネレータからアダ
プテイブデイジタルフイルタ装置に入力されるデ
イジタル楽音信号サンプル値データそれ自体がピ
ツチに同期してサンプリングされた状態となつて
いるものとしているが、これに限らない。例え
ば、ピツチ非同期の固定サンプリング周期でサン
プリングされたデイジタル楽音信号をデイジタル
フイルタ装置に入力する場合でも、ピツチ同期信
号によつてこの入力デイジタル楽音信号をサンプ
リングし直しながらピツチに同期したフイルタ演
算動作を行うようにすればよい。 また、上記実施例ではピツチ同期信号発生回路
はトーンジエネレータ内に含まれており、そこで
発生したピツチ同期信号をアダプテイブデイジタ
ルフイルタ装置に導入するようにしているが、こ
れに限らない。例えば、ピツチに同期したサンプ
リング周期を持つデイジタル楽音信号をデイジタ
ルフイルタに入力する場合、このデイジタル楽音
信号のサンプル値データの変化を検出することに
よりピツチ同期信号を発生し、こうして発生した
ピツチ同期信号によつてフイルタ演算動作を制御
するようにしてもよい。 勿論、ピツチに非同期でフイルタ演算を行うよ
うにしてもよい。
第1図a,b,cはこの発明の概要を示すブロ
ツク図、第2図はこの発明の一実施例に係る電子
楽器の全体構成を示すブロツク図、第3図は同実
施例における主要な信号のタイミングを示すタイ
ミングチヤート、第4図は第2図のトーンジエネ
レータ内に含まれるピツチ同期信号発生回路の一
例を示すブロツク図、第5図はFIRフイルタの基
本構成を示すブロツク図、第6図及び第7図は直
線位相FIRフイルタにおけるインパルス応答の対
称性の一例を次数Nが奇数のときと偶数のときに
ついて夫々示すグラフ、第8図及び第9図は直線
位相FIRフイルタにおける周波数応答特性の一例
を次数Nが奇数のときと偶数のときについて夫々
示すグラフ、第10図はフイルタ係数を求めるた
めの手順の一例を示すフローチヤート、第11図
は第2図におけるアダプテイブデイジタルフイル
タ装置の一例を示すブロツク図、第12図は第1
1図における入力インタフエースの一例を示すブ
ロツク図、第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図に示されたパラメータメモリにおける記
憶フオーマツトの一例を示す図、第22図及び第
23図は第2図乃至第21図に示されたこの発明
の一実施例において実現されるフイルタ特性の一
例を奇数次と偶数次について夫々示す図、であ
る。 110……係数供給手段、111……遅延手
段、112……演算手段、10……鍵盤、11…
…鍵タツチ検出器、18……トーンジエネレー
タ、19……ピツチ同期信号発生回路、21,2
2……アダプテイブデイジタルフイルタ装置、4
0,42……ステートメモリ、41,43……乗
算器及びアキユムレータ部、45……パラメータ
プロセシングユニツト、47……パラメータメモ
リ、50……ピツチ同期出力回路。
ツク図、第2図はこの発明の一実施例に係る電子
楽器の全体構成を示すブロツク図、第3図は同実
施例における主要な信号のタイミングを示すタイ
ミングチヤート、第4図は第2図のトーンジエネ
レータ内に含まれるピツチ同期信号発生回路の一
例を示すブロツク図、第5図はFIRフイルタの基
本構成を示すブロツク図、第6図及び第7図は直
線位相FIRフイルタにおけるインパルス応答の対
称性の一例を次数Nが奇数のときと偶数のときに
ついて夫々示すグラフ、第8図及び第9図は直線
位相FIRフイルタにおける周波数応答特性の一例
を次数Nが奇数のときと偶数のときについて夫々
示すグラフ、第10図はフイルタ係数を求めるた
めの手順の一例を示すフローチヤート、第11図
は第2図におけるアダプテイブデイジタルフイル
タ装置の一例を示すブロツク図、第12図は第1
1図における入力インタフエースの一例を示すブ
ロツク図、第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図に示されたパラメータメモリにおける記
憶フオーマツトの一例を示す図、第22図及び第
23図は第2図乃至第21図に示されたこの発明
の一実施例において実現されるフイルタ特性の一
例を奇数次と偶数次について夫々示す図、であ
る。 110……係数供給手段、111……遅延手
段、112……演算手段、10……鍵盤、11…
…鍵タツチ検出器、18……トーンジエネレー
タ、19……ピツチ同期信号発生回路、21,2
2……アダプテイブデイジタルフイルタ装置、4
0,42……ステートメモリ、41,43……乗
算器及びアキユムレータ部、45……パラメータ
プロセシングユニツト、47……パラメータメモ
リ、50……ピツチ同期出力回路。
Claims (1)
- 【特許請求の範囲】 1 N次のフイルタ演算のために、Nが偶数の場
合はN/2次分、Nが奇数の場合は(N+1)/
2次分のフイルタ係数を順次時分割で供給する係
数供給手段と、 デイジタル楽音信号サンプル値データを順次遅
延し、N次分のサンプル値データのうちN次の中
央を中心にした対称位置に位置する2つのサンプ
ル値データを順次提供すると共に、Nが奇数の場
合は対称の中心に位置するサンプル値データにつ
いては単独で提供する遅延手段と、 この遅延手段から順次提供される前記2つのサ
ンプル値データ同士を順次時分割で加算する演算
と、その加算値に対して該2つのサンプル値デー
タに共通の前記フイルタ係数を順次時分割で乗算
すると共にNが奇数の場合は対称の中心に位置す
る前記単独のサンプル値データには単独のフイル
タ係数を乗算する演算と、これらの時分割で逐次
乗算された乗算結果を累算する演算とを実行する
演算手段と を具えた電子楽器のデイジタルフイルタ装置。 2 前記係数供給手段から供給されるフイルタ係
数は、フイルタ係数データとそのフイルタ係数デ
ータを重みづけるための重みづけデータとからな
り、前記演算手段における乗算は、各次数に対応
するサンプル値データに対してそれに対応する前
記フイルタ係数データを乗算し、この乗算結果デ
ータを前記重みづけデータに応じてシフトするこ
とにより実行される特許請求の範囲第1項記載の
電子楽器のデイジタルフイルタ装置。
Priority Applications (6)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP61155066A JPS62129895A (ja) | 1986-07-03 | 1986-07-03 | 電子楽器のディジタルフィルタ装置 |
US06/934,781 US4841828A (en) | 1985-11-29 | 1986-11-25 | Electronic musical instrument with digital filter |
DE86116328T DE3689305T2 (de) | 1985-11-29 | 1986-11-25 | Tonsignalsbehandlungsvorrichtung. |
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 |
---|---|---|---|
JP61155066A JPS62129895A (ja) | 1986-07-03 | 1986-07-03 | 電子楽器のディジタルフィルタ装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPS62129895A JPS62129895A (ja) | 1987-06-12 |
JPH052013B2 true JPH052013B2 (ja) | 1993-01-11 |
Family
ID=15597922
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP61155066A Granted JPS62129895A (ja) | 1985-11-29 | 1986-07-03 | 電子楽器のディジタルフィルタ装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPS62129895A (ja) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8266195B2 (en) * | 2006-03-28 | 2012-09-11 | Telefonaktiebolaget L M Ericsson (Publ) | Filter adaptive frequency resolution |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS53138212A (en) * | 1977-05-10 | 1978-12-02 | Nippon Hoso Kyokai <Nhk> | Emphasis system |
-
1986
- 1986-07-03 JP JP61155066A patent/JPS62129895A/ja active Granted
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS53138212A (en) * | 1977-05-10 | 1978-12-02 | Nippon Hoso Kyokai <Nhk> | Emphasis system |
Also Published As
Publication number | Publication date |
---|---|
JPS62129895A (ja) | 1987-06-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JPS6325359B2 (ja) | ||
JPS642958B2 (ja) | ||
US6721711B1 (en) | Audio waveform reproduction apparatus | |
US4841828A (en) | Electronic musical instrument with digital filter | |
US4114498A (en) | Electronic musical instrument having an electronic filter with time variant slope | |
JPH0119594B2 (ja) | ||
JPS6310434B2 (ja) | ||
JPS6140118B2 (ja) | ||
US5036541A (en) | Modulation effect device | |
US4223583A (en) | Apparatus for producing musical tones having time variant harmonics | |
JPS5925235B2 (ja) | 電子楽器 | |
EP0235538B1 (en) | Waveform generator for electronic musical instrument | |
GB2103005A (en) | Modulation effect device | |
JPH052013B2 (ja) | ||
KR100236686B1 (ko) | 데이터 샘플열 액세스 장치 | |
JPH0422275B2 (ja) | ||
JPH0313595B2 (ja) | ||
JP2668676B2 (ja) | フィルタパラメータ供給装置 | |
JPH0332078B2 (ja) | ||
JP2697701B2 (ja) | 電子楽器のパラメータ供給装置 | |
JPS6286394A (ja) | 楽音信号発生方法 | |
JPH0636149B2 (ja) | デイジタルフイルタ装置 | |
JPH0644702B2 (ja) | デイジタルフイルタ装置 | |
JPH02181797A (ja) | 楽音信号合成装置 | |
JPS58200294A (ja) | 包絡線信号発生装置 |