JP2679511B2 - Reverberation device - Google Patents

Reverberation device

Info

Publication number
JP2679511B2
JP2679511B2 JP4035594A JP3559492A JP2679511B2 JP 2679511 B2 JP2679511 B2 JP 2679511B2 JP 4035594 A JP4035594 A JP 4035594A JP 3559492 A JP3559492 A JP 3559492A JP 2679511 B2 JP2679511 B2 JP 2679511B2
Authority
JP
Japan
Prior art keywords
spd
memory
delay
output
register
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
JP4035594A
Other languages
Japanese (ja)
Other versions
JPH05134690A (en
Inventor
剛 二間瀬
充美 加藤
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Yamaha Corp
Original Assignee
Yamaha Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Yamaha Corp filed Critical Yamaha Corp
Priority to JP4035594A priority Critical patent/JP2679511B2/en
Publication of JPH05134690A publication Critical patent/JPH05134690A/en
Application granted granted Critical
Publication of JP2679511B2 publication Critical patent/JP2679511B2/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10KSOUND-PRODUCING DEVICES; METHODS OR DEVICES FOR PROTECTING AGAINST, OR FOR DAMPING, NOISE OR OTHER ACOUSTIC WAVES IN GENERAL; ACOUSTICS NOT OTHERWISE PROVIDED FOR
    • G10K15/00Acoustics not otherwise provided for
    • G10K15/08Arrangements for producing a reverberation or echo sound
    • G10K15/12Arrangements for producing a reverberation or echo sound using electronic time-delay networks

Landscapes

  • Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Acoustics & Sound (AREA)
  • Multimedia (AREA)
  • Reverberation, Karaoke And Other Acoustics (AREA)
  • Electrophonic Musical Instruments (AREA)

Description

【発明の詳細な説明】 【0001】 【産業上の利用分野】この発明は残響音付加装置に関
し、特に、複雑な残響音を付加することのできる残響音
付加装置に関する。 【0002】 【従来の技術】特開昭55−157796号公報におい
ては、自己の遅延出力信号を所定の帰還比率で入力側に
帰還する帰還ループを有する遅延回路からなる残響付加
ユニットを使用して残響音効果を付加する技術が示され
ている。その場合、入力信号は遅延回路の遅延時間に相
当する時間間隔で帰還ループを介して繰り返し循環し、
該遅延時間及び帰還比率に応じて定まる減衰特性で規則
的な残響音が発生される。同公報においては、遅延時間
を異ならせた2つの残響付加ユニットを並列的に設ける
ことも示されている。その場合は、規則的な時間間隔で
発生される2系統の規則的な残響音が混合されることに
なる。 【0003】 【発明が解決しようとする課題】上述の従来の技術にお
いては、規則的な時間間隔で発生される2系統の規則的
な残響音が単純に混合されるだけであるため、遅延時間
の密な複雑な残響音を得ることは困難であった。この発
明は上述の点に鑑みてなされたもので、遅延時間間隔が
密でかつ複雑な残響音を付加することのできる残響音付
加装置を提供しようとするものである。 【0004】 【課題を解決するための手段】 この発明に係る残響音
付加装置は、例えば図3及び図4に示されるように、複
数の遅延ユニット処理を縦列に行うことにより、入力信
号に対して残響処理を行うものであり、各遅延ユニット
処理は、入力信号に対して所定の演算を行い、この演算
結果を所定時間遅延して出力信号を出力し、該出力信号
に帰還係数を演算して入力信号に加算するものであっ
て、複数の遅延ユニット処理の遅延時間は後段になるほ
ど短くするものであり、この残響処理は、下記の具体的
構成により、複数の遅延ユニット処理を共通装置を用い
て時分割的に行うようにしたことを特徴するものであ
る。すなわち、例えば図1及び図2に示されるように、
所定のサンプリング周期毎に入力される入力信号に対し
て、設定された任意の時間の遅延を行うための、複数領
域個別利用可能なデータメモリ(100)と、前記各遅
延ユニット処理毎の帰還係数を記憶する係数メモリ(4
00)と、前記各遅延ユニット処理、及び、前記各遅延
ユニット処理の縦列接続を実現する処理を実行するプロ
グラムを記憶するプログラムメモリ(300)と、前記
各遅延ユニット処理毎の遅延時間を設定し、遅延時間情
報を発生する遅延時間情報発生手段(20)と、前記遅
延時間情報発生手段(20)から供給される遅延時間情
報に従って各遅延ユニット処理で必要とする出力信号、
及び、入力信号をデータメモリ(10)から読み出すた
めのアドレス情報を発生するアドレス情報発生手段(3
09)と、データメモリ(100)から供給される遅延
ユニット処理の入力信号、出力信号、及び、帰還係数と
を用いて遅延ユニット処理を行なう演算手段(401,
402,403,404)と、プログラムメモリ(30
0)から供給されるプログラムに従って、帰還係数、遅
延ユニット処理の入力信号、出力信号を演算手段(40
1,402,403,404)に対して供給し、かつ、
アドレス情報発生手段(309)、及び、演算手段(4
01,402,403,404)を時分割的に動作させ
ることによって、該プログラムに従う一連の残響処理を
1サンプリング周期で行う制御手段(303)とを備
え、これらによって、複数の遅延ユニット処理を共通装
置を用いて時分割的に行うことにより残響処理が行われ
る。 【0005】 【作用】 1つの遅延ユニット処理は、入力信号に対し
て所定の演算を行い、この演算結果を所定時間遅延して
出力信号を出力し、該出力信号に帰還係数を演算して入
力信号に加算するものである。こうして、1つの遅延ユ
ニット処理では、その入力信号は遅延時間に相当する時
間間隔で繰り返し循環し、該遅延時間及び帰還係数に応
じて定まる特性で規則的な残響音が付加される。残響処
理は、このような複数の遅延ユニット処理を縦列に行う
ことからなっており、ここで、各遅延ユニット処理にお
ける遅延時間が後段になるほど短くなるように設定され
ている。従って、後段の遅延ユニット処理においては、
前段の遅延ユニット処理で付加された所定遅延時間間隔
の複数の残響音における各遅延時間間隔の間で、それよ
りも密な所定遅延時間間隔で更に複数の残響音が付加さ
れることになる。その場合の特性の一例を図示すると図
11のようであり、前段の遅延ユニット処理の遅延時間
がx1であり、後段の遅延ユニット処理の遅延時間がy1
である。このように、遅延時間間隔が密でかつ複雑な残
響音を付加することができる。加えて、これらの複数の
遅延ユニット処理による残響処理は、データメモリ(1
00)、係数メモリ(400)、プログラムメモリ(3
00)、遅延時間情報発生手段(20)、アドレス情報
発生手段(309)、演算手段(401,402,40
3,404)、制御手段(303)により、共通装置を
用いて時分割的に行うので、複数の遅延ユニット処理に
よる残響処理を、簡単な構成で時分割的に同時処理する
ことができるという優れた効果を奏する。また、各遅延
ユニット処理毎の遅延時間を設定する遅延時間情報の可
変設定により、夫々の遅延時間を任意に変更して、残響
特性を簡単かつ自由に変更することができるという効果
を奏する。 【0006】 【実施例】以下、添付図面を参照してこの発明の一実施
例を詳細に説明しよう。図1及び図2はこの発明による
残響音付加装置の一実施例を示すブロック図、図3及び
図4はこの実施例の構成を機能的に表わした機能ブロッ
ク図、図5及び図6はデイジタルメモリを用いて所望の
遅延時間の残響音を発生させるための遅延回路の基本的
構成を示すブロック図である。説明の便宜上、まず図5
及び図6に示す遅延回路の基本的構成およびその動作を
説明し、次に図3及び図4の機能ブロック図により残響
音の形成過程を説明し、その次に図1及び図2に示す実
施例の具体的構成および動作を説明する。 【0007】 −−デイジタルメモリを用いた遅延回路の基本構成−− デイジタルメモリに対し所定のサンプリング周期T0で
順次サンプリングした入力楽音信号の振幅データSPD
(t)を時間経過に従って順次記憶させるようにした場
合、時刻(t−i)で記憶した振幅データSPD(t−
i)をi時間経過した時刻tで読出すには、サンプリン
グ時刻がtのときのアドレス情報ADR(t)に対し、
i時間の間に変化したアドレス間隔ΔADRを次の(1-
1)式または(1-2)式で示す如く加算または減算し、時
刻(t−i)におけるアドレス情報ADR(t−i)を
求め、このアドレス情報ADR(t−i)をディジタル
メモリのアドレス入力に与えれば良い。 ADR(t−i)=ADR(t)+ΔADR …(1-1) ADR(t−i)=ADR(t)−ΔADR …(1-2) 【0008】これによって、時刻(t−i)で記憶させ
た振幅データSPD(t−i)を次の(1-3)式で表わ
されるi時間遅れて読出すことができる。 i = ΔADR × T0 …(1-3) すなわち、所望の遅延時間iに対応するアドレス間隔Δ
ADRを遅延時間情報として与えれば、時刻(t−i)
で記憶させた振幅データSPD(t−i)をi時間遅れ
て読出すことができる。この場合、上記(1-1)式によ
って時刻(t−i)におけるアドレス情報ADR(t−
i)を求めるものは、振幅データSPD(t)を時間経
過に伴って高位アドレスから低位アドレスへ向けて順次
記憶させる場合に適用される。また、(1-2)式による
ものは、振幅データSPD(t)を低位アドレスから高
位アドレスへ向けて順次記憶させる場合に適用される。 【0009】従って、この発明における遅延回路は、振
幅データSPD(t)を順次記憶するディジタルメモリ
DMと、上記(1-1)式または(1-2)式で示される読出
し用のアドレス情報ADR(t−i)を形成するアドレ
ス情報発生回路AGと、上記アドレス間隔ΔADRを遅
延時間情報DLDとして発生するディレイレングスデー
タメモリDDMとが基本的に設けられる。 【0010】図5はこのような考え方に基づく遅延回路
の一例を示すブロック図であって、ディジタルメモリD
M,アドレス情報発生回路AG,ディレイレングスデー
タメモリDDM,乗算器Mを備えている。ディジタルメ
モリDMは、図7のタイムチャートに示すように、クロ
ックパルスφに従って所定周期T0でサンプリングした
振幅データSPD(t)を「0」〜「9」の各アドレス
に高位アドレス「9」側から低位アドレス「0」に向け
て順に記憶するものであり、例えばRAM(ランダムア
クセスメモリ)やシフトレジスタにより構成される。 【0011】このディジタルメモリDMにおける振幅デ
ータSPD(t)の書込みアドレスおよび読出しアドレ
スの指定は、アドレス情報発生回路AGによって行なわ
れる。すなわち、アドレス情報発生回路AGはアドレス
カウンタACと加算器ADとを備え、サンプリング時刻
の更新に伴って値が更新される書込みアドレス情報AD
R(t),ADR(t+1),ADR(t+2),……
ADR(t+i)を形成すると共に、前述の(1-1)式
で表わされる読出しアドレス情報ADR(t−i)を形
成し、これらをデイジタルメモリDMのアドレス情報D
M・ADRとして出力する。すなわち、アドレスカウン
タACは周期T0のクロックパルスφをカウントし、そ
のカウント値を現在のサンプリング時刻tにおける振幅
データSPD(t)の書込みアドレス情報ADR(t)
として出力し、この情報ADR(t)を加算器ADに供
給する。一方、ディレイレングスデータメモリDDMは
所望の遅延時間iに対応する時間情報DLD(ΔADR
=i/T0)を加算器ADの他の加算入力に供給する。
すると、加算器ADは当該サンプリング時刻tにおい
て、まず前述の(1-1)式で表わされる演算を行いその
演算値をi時間前の振幅データSPD(t−i)の読出
しアドレス情報ADR(t−i)として出力し、続いて
アドレスカウンタACの出力情報ADR(t)をそのま
ま現在時刻tにおける振幅データSPD(t)の書込み
アドレス情報ADR(t)として出力する。 【0012】これによって、ディジタルメモリDMから
は、時刻tにおいて、i時間前の時刻(t−i)で記憶
させた振幅データSPD(t−i)が読出されると共
に、現在時刻tにおける振幅データSPD(t)がアド
レス情報ADR(t)で指定されるアドレスに記憶され
る。このようにしてディジタルメモリDMからi時間遅
れて読出された振幅データSPD(t−i)は、乗算器
Mにおいて振幅レベル制御用の係数Kが乗算されてレベ
ル制御される。そして、レベル制御された振幅データK
・SPD(t−i)は図示しないDA変換器によりアナ
ログ信号に変換される。このような動作は各サンプリン
グ時刻毎に行なわれる。この結果、入力楽音よりi時間
遅れた残響音を発生させることができる。この場合、1
つのサンプリング時間において異なる複数の遅延時間情
報DLDを時分割で順次与えれば、同一サンプリング時
間内に遅延時間の異なる複数の残響音に関する情報を取
り出すことができる。従って、この発明の実施例では、
図5に示す遅延回路は、周囲の壁などの反射体への距離
の差によって振幅レベルや遅延時間がランダムに異なる
複雑な残響特性の初期反射音を形成するために利用され
る。 【0013】図6は遅延回路の他の例を示すブロック図
であって、この例の遅延回路はアドレス情報発生回路A
GのアドレスカウンタACをプリセット型のダウンカウ
ンタで構成する。そしてアドレスカウンタACに対して
所望の遅延時間iに対応する遅延時間情報DLDをプリ
セットしてこのプリセット値(DLD)からダウンカウ
ント動作させることにより、該アドレスカウンタACか
ら出力されるアドレス情報ADR(t),ADR(t+
1),……ADR(t+i)の繰り返し周期が遅延時間
情報DLDにより指定される遅延時間と一致するように
し、現在時刻tにおける振幅データSPD(t)を記憶
させるべきアドレスからi時間前に記憶させた振幅デー
タSPD(t−i)を読出すようにしたものである。 【0014】換言すれば、ディジタルメモリDMが図6
の如く10語で構成される場合にはアドレス間隔の最大
値が「10」となるため、最大で10・T0時間遅れた
振幅データSPD(t−10)を読出すことが可能であ
るが、所望の遅延時間iを例えば6・T0とする場合、
アドレスカウンタACの出力情報DM・ADRを5,
4,3,2,1,0,5,……0の繰り返しとし、ディ
ジタルメモリDMにおいて使用するアドレスの範囲を所
望の遅延時間i(i=6・T0)に対応して縮小し、現
在時刻tにおいてサンプリングした振幅データSPD
(t)を書込もうとするアドレスを、ちょうどi時間前
の振幅データSPD(t−i)を書込んだアドレスに一
致させ、現在時刻tにおける振幅データSPD(t)を
書込むべきアドレスからi時間前に書込んだ振幅データ
SPD(t−i)を読出すようにしたものである。この
ために、この図6の遅延回路では、アドレスカウンタA
Cの出力情報DM・ADRが「0」から「9」に変化し
たことを検出し、この検出信号によりデイレイレングス
データメモリDDMから出力されている時間情報DLD
をアドレスカウンタACにプリセットする最大値検出回
路MXDが設けられている。 【0015】一方、この図6の遅延回路は、現在時刻t
においてサンプリングした振幅データSPD(t)をそ
のままディジタルメモリDMに書込まず、i時間前の振
幅データSPD(t−i)を所定割合いで帰還し、その
帰還値K・SPD(t−i)と現在時刻tにおいてサン
プリングした振幅データSPD(t)との加算値を書込
むようにしたものである。このために、ディジタルメモ
リDMから読出されたi時間前の振幅データSPD(t
−i)に係数Kを乗算してディジタルメモリDMのデー
タ入力側に帰還する乗算器Mと、乗算器Mの出力データ
K・SPD(t−i)と現在時刻tの振幅データSPD
(t)とを加算し、その加算値「SPD(t)+K・S
PD(t−i)」をディジタルメモリDMのデータ入力
に供給する加算器ADとが設けられている。 【0016】従って、このように構成された遅延回路に
おいては、所望の遅延時間iを6・T0とする場合、ア
ドレスカウンタACには該カウンタACの出力情報DM
・ADRが「0」から最大値(この例では「9」)に変
化した時点で、 DLD=6−1=5 で表わされる遅延時間情報DLDがプリセットされる。
これによって、アドレスカウンタACはサンプリング時
刻の進行に伴って(サンプリング周期T0毎に)5,
4,3,2,1,0,5,……0という具合に変化する
アドレス情報DM・ADRを繰り返し出力するようにな
る。そして、各サンプリング時刻においては、アドレス
情報DM・ADRで指定されるアドレスに記憶されてい
るi時間前の振幅データSPD(t−i)がまず読出さ
れ、続いてこの読出しアドレスと同一アドレスに対しi
時間前の振幅データSPD(t−i)と現在時刻tでサ
ンプリングした振幅データSPD(t)とを所定割合い
で加算したデータ「SPD(t)+K・SPD(t−
i)」が書込まれる。 【0017】従って、このように構成した遅延回路で
は、現在のサンプリング時刻tにおける振幅データSP
D(t)の書込みアドレスとi時間前の振幅データSP
D(t−i)の読出しアドレスとが同一で、かつi時間
前の振幅データSPD(t−i)が帰還されているた
め、振幅レベルや遅延時間が規則的に変化する残響音に
関するデータを取り出すことができる。従って、この発
明の実施例では、図6に示す遅延回路は初期反射音発生
後の規則的残響特性の残響音を発生するために用いられ
ている。なお、振幅データSPDに係数Kを乗算してい
くと、最終的に得られる残響音に関するデータは元の振
幅データSPDよりレベルが大きくなってしまうため、
実際にはこの残響音に関するデータは減衰器を通して残
響音の出力部に導かれる。この場合、係数Kを「−1<
K<0」とするようにすれば、減衰器を必要としない。 【0018】次に、図3及び図4に示す機能ブロック図
を用いて残響音の形成過程を説明する。 −−残響音の形成過程−− まず、図3の実施例における残響音の形成過程は、振幅
レベルおよび遅延時間がランダムに変化する初期反射音
を形成する過程と、この初期反射音に続く、振幅レベル
および遅延時間が規則的に変化する残響音を形成する過
程とに大別される。そして、ここではこれらの初期反射
音および残響音は互いに独立した遅延回路系列で形成す
るように構成されている。図3において、入力楽音信号
を所定周期T0でサンプリングした振幅データSPD
(t)は第1の遅延回路系列である初期反射音形成部1
に供給される。 【0019】初期反射音形成部1は、図5に示した遅延
回路を利用したもので、2048語の記憶アドレスを有
するメモリD0と、現在のサンプリング時刻tにおいて
上記メモリD0から読出した互いに遅延時間の異なるi
n時間(n=1〜10:この nは異なるn個のiを区別す
るための添字であり、係数ではないことに注意された
い)前の10種類の振幅データSPD(t−i1),S
PD(t−i2),……SPD(t−i10)に対して任
意の振幅レベル制御用係数Kn(n=1〜10)を乗算
する乗算器M1〜M10と、これら乗算器M1〜M10
の乗算値出力K1・SPD(t−i1),K2・SPD
(t−i2),……K10・SPD(t−i10)の総和 【数1】 を求め、該総和を現在時刻tにおける初期反射音の瞬時
値ECH(t)として出力する加算器SUMとから構成
されている。 【0020】なお、加算器SUMは、上記数1に示され
た総和を次のサンプリング時刻(t+1)まで一時記憶
するレジスタR0を内蔵している。このような構成の初
期反射音形成部1において、現在時刻tでサンプリング
された入力楽音の振幅データSPD(t)は、メモリD
0の2048語の記憶アドレスのうち現在時刻tに対応
したアドレスに書込まれる。次に、加算器SUM内のレ
ジスタR0には前回のサンプリング時刻(t−1)にお
ける総和 【数2】 が記憶されているため、このレジスタR0の内容がリセ
ットされる。次に、in時間前の10種類の振幅データ
SPD(t−i1)〜SPD(t−i10)のうち、遅延
時間i1の振幅データSPD(t−i1)をメモリD0か
ら読出すため、遅延時間i1に対応するメモリD0のア
ドレスが指定され、該アドレスからi1時間前にサンプ
リングした振幅データSPD(t−i1)が読出され
る。この場合、i1時間前の振幅データSPD(t−i
1)を読出すためのアドレスは前述した(1-1)式によっ
て求められる。 【0021】このようにして読出された遅延時間i1の
振幅データSPD(t−i1)は、乗算器M1に入力さ
れ、この乗算器M1において遅延時間i1の第1反射音
ECH1に対応する振幅レベル制御用の係数K1と乗算さ
れる。そして、その乗算値K1・SPD(t−i1)は加
算器SUMに入力され、レジスタR0の現在値と加算さ
れ、その加算値はレジスタR0に再び記憶される。この
場合、レジスタR0の内容は、現在時刻tの振幅データ
SPD(t)の書込みの直後にリセットされているた
め、この時レジスタR0に書込まれる内容はデータK1
・SPD(t−i1)となる。このようにして、遅延時
間i1の振幅データSPD(t−i1)の読出し処理およ
びレベル制御処理が終了すると、すなわち第1反射音E
CH1に関する処理が終了すると、次に遅延時間i2の第
2反射音ECH2に関する振幅データSPD(t−i2)
の読出し処理およびレベル制御処理が第1反射音ECH
1の形成処理と同様にして行なわれる。この結果、加算
器SUM内のレジスタR0には、第1反射音ECH1に
関するデータK1・SPD(t−i1)と第2反射音EC
H2に関するデータK2・SPD(t−i2)との加算値
「K1・SPD(t−i1)+K2・SPD(t−i2)」
が記憶される。 【0022】このような処理は第3反射音ECH3〜第
10反射音ECH10についても同様に行なわれる。この
結果、レジスタR0には第1反射音ECH1〜第10反
射音ECH10に関する振幅データK1・SPD(t−i
1)〜K10・SPD(t−i10)の総和 【数1】が記憶される。そして、この数1に示す総和は
第1反射音ECH1〜第10反射音ECH10からなる初
期反射音の瞬時値ECH(t)としてスイッチ回路SW
を介して出力される。スイッチ回路SWは、次の表1に
示すように、1サンプリング周期T0内の初期反射音の
形成処理時間TaにおいてはレジスタR0出力を選択出
力し、初期反射音の形成処理後の時間Tbにおいては第
2の遅延回路系列の出力を選択出力するものである。 【0023】【0024】このスイッチ回路SWによって選択出力さ
れる情報ECH(t)は、図示しないDA変換器におい
てアナログ信号に変換された後スピーカに加えられ、入
力楽音に対する初期反射音として発音される。従って、
第1反射音ECH1〜第10反射音ECH10の遅延時間
inおよび振幅レベル制御用の係数Knをそれぞれ異なら
せることにより、図8に示すように振幅レベルおよび遅
延時間がランダムに変化する初期反射音を得ることがで
きる。ここで、入力楽音のサンプリング周期T0を0.
04ms(25kHz)とした場合、現在時刻tの振幅
データSPD(t)の書込みアドレスADR(t)より
例えば1626語離れたアドレスに記憶されている振幅
データSPD(t−1626)を読出した場合、その遅
延時間iは i=1626×0.04≒65ms となり、入力楽音より約65ms遅れた初期反射音EC
Hnを発生させることができる。 【0025】一方、入力楽音を所定周期T0でサンプリ
ングした振幅データSPD(t)は、初期反射音発生後
の残響音を形成する第2の遅延回路系列にも供給され
る。この第2の遅延回路系列は、振幅データSPD
(t)をj時間遅らせてバンドパスフィルタBPFに供
給する遅延用のメモリD10と、このメモリD10から
供給される遅延時間jの振幅データSPD(t−j)の
所定周波数帯域成分のみを通過させるローパスフィルタ
LPFおよびハイパスフィルタHPFとから成るディジ
タル型のバンドパスフィルタBPFと、該バンドパスフ
ィルタBPFを通過した振幅データSPD(t−j)に
基づき遅延時間間隔の粗い残響音データRVD1を形成
する櫛型フィルタ構成の第1残響音形成部2と、前記残
響音データRVD1に基づき遅延時間間隔が密な残響音
データRVD2を形成するオールパスフィルタ構成の第
2残響音形成部3とから構成されている。各残響音形成
部2,3の詳細は図4に示されている。 【0026】このような構成において、現在時刻tでサ
ンプリングした振幅データSPD(t)は、メモリD1
0における2048語の記憶アドレスのうち現在時刻t
に対応したアドレスADR(t)に書込まれる。次に、
メモリD10に記憶した振幅データSPD(t)のう
ち、j時間前のデータSPD(t−j)を読出すため、
遅延時間jに対応するメモリD10のアドレスが指定さ
れ、該アドレスからj時間前にサンプリングした振幅デ
ータSPD(t−j)が読出される。この場合、j時間
前の振幅データSPD(t−j)を読出すためのアドレ
スは、初期反射音の形成の場合と同様に、前述した(1-
1)式によって求められる。遅延時間jは、メモリD1
0のアドレスの大きさに応じた値から0まで任意に設定
でき、かつ初期反射音の設定とも全く無関係に設定でき
るが、一般的な残響とする場合、第10反射音ECH10
に関する遅延時間i10よりやや大きく(j>i10)設定
されている。 【0027】このようにしてメモリD10から読出され
た遅延時間jの振幅データSPD(t−j)はローパス
フィルタLPFの乗算器M11に入力され、ここにおい
て所定の係数K11と乗算される。そして、その乗算値K
11・SPD(t−j)はレジスタR1に一時記憶され
る。次に、1語の記憶アドレスを有するメモリSD0か
ら1サンプリング時間(1・T0)前に書込まれた振幅
データSPD(t−j−1)が読出され、このデータS
PD(t−j−1)に所定の係数K12が乗算器M12に
おいて乗算される。つぎに、乗算器M12の乗算値出力
K12・SPD(t−j−1)とレジスタR1に一時記憶
されているj時間前の振幅データK11・SPD(t−
j)とが加算され、その加算値「K12・SPD(t−j
−1)+K11・SPD(t−j)」は再びレジスタR1
に一時記憶されると共に、レジスタR2にも一時記憶さ
れる。次に、現在時刻tより1サンプリング時間(1・
T0)前に書込まれた振幅データSPD(t−j−1)
がメモリSD0から再び読出され、このデータSPD
(t−j−1)に所定の係数K13が乗算器M13におい
て乗算される。そして、この乗算値K13・SPD(t−
j−1)はレジスタR2に一時記憶されている値 「K12・SPD(t−j−1)+K11・SPD(t−
j)」 と加算され、その加算値 「K12・SPD(t−j−1)+K11・SPD(t−
j)+K13・SPD(t−j−1)」 はレジスタR2に再び一時記憶される。次に、レジスタ
R1に一時記憶されている値 「K12・SPD(t−j−1)+K11・SPD(t−
j)」 を次のサンプリング周期(t+1)で使用するため、こ
の値「K12・SPD(t−j−1)+K11・SPD(t
−j)」がメモリSD0に書込まれる。 【0028】このような動作が各サンプリング周期T0
毎に行なわれることにより、ローパスフィルタLPFの
レジスタR2からは所定帯域の高周波成分を除去したj
時間前の振幅データSPD(t−j)が出力され、この
振幅データSPD(t−j)はハイパスフィルタHPF
に送られる。すると、ハイパスフィルタHPFでは、ロ
ーパスフィルタの場合と同様にしてj時間前の振幅デー
タSPD(t−j)から所定帯域の低周波成分の除去が
行なわれる。 【0029】すなわち、ローパスフィルタLPFのレジ
スタR2の出力データSPD(t−j)は乗算器M14
に入力され、この乗算器M14において所定の係数K14
と乗算される。そして、その乗算値K14・SPD(t−
j)はレジスタR3に一時記憶される。次に、1語の記
憶アドレスを有するメモリSD1から1サンプリング時
間(1・T0)前に書込まれた振幅データSPD(t−
j−1)が読出され、このデータSPD(t−j−1)
に所定の係数K15が乗算器M15において乗算される。
次に、乗算器M15から得られた乗算値K15・SPD
(t−j−1)はレジスタR3に一時記憶されているj
時間前の振幅データK14・SPD(t−j)と加算さ
れ、その加算値「K14・SPD(t−j)+K15・SP
D(t−j−1)」はレジスタR3に一時記憶されると
共に、レジスタR4にも一時記憶される。次に、現在時
刻tより1サンプリング時間(1・T0)前に書込まれ
たデータSPD(t−j−1)がメモリSD1から再び
読出され、この読出しデータSPD(t−j−1)に所
定の係数K16が乗算器M16において乗算される。そし
て、この乗算値K16・SPD(t−j−1)はレジスタ
R4に一時記憶されている値「K14・SPD(t−j)
+K15・SPD(t−j−1)」と加算され、その加算
値 K16・SPD(t−j−1)+K14・SPD(t−j)
+K15・SPD(t−j−1) はレジスタR4に一時記憶される。次に、レジスタR3
に一時記憶されている値「K14・SPD(t−j)+K
15・SPD(t−j−1)」を次のサンプリング周期
(t+1)で使用するため、この値「K14・SPD(t
−j)+K15・SPD(t−j−1)」がメモリSD1
に書込まれる。 【0030】このような動作がサンプリング周期T0毎
に行なわれることにより、ハイパスフィルタHPFのレ
ジスタR4からは所定帯域の低周波成分を除去したj時
間前の振幅データSPD(t−j)が出力される。な
お、ローパスフィルタLPFのレジスタR1は、該レジ
スタの内容をメモリSD0に書込んだ後は次のサンプリ
ング周期まで使用しないので、ハイパスフィルタHPF
のレジスタR3と共用することができる。このようにし
て、所定帯域の低周波成分および高周波成分の除去され
たj時間前の振幅データSPD(t−j)は第1残響音
形成部2に入力される。図4に詳細を示した第1残響音
形成部2では、遅延時間の異なる櫛型フィルタ構成の遅
延回路2A,2B,2Cが3回路並列に設けられてい
る。3個の遅延回路2A,2B,2Cを並列に設けてい
るのは、櫛型フィルタ構成の遅延回路の周波数特性が単
独の場合には図9の記号A,B,Cで示す如く波状とな
ってしまうのでこれを平坦化するためである。すなわ
ち、遅延時間の異なる3個の遅延回路2A,2B,2C
を並列に設けることにより、全体としての周波数特性を
図9の記号Dで示すように平坦化することができる。こ
の場合、平坦化の度合いは遅延回路の並列接続数を増加
するほど良くなる。 【0031】この実施例では、遅延回路2Aの遅延時間
が最も長く、次に遅延回路2Bの遅延時間が長く、遅延
回路2Cの遅延時間が最も短く設定されている。そし
て、各遅延回路2A,2B,2Cは遅延時間の設定が異
なるのみで、その構成は全て同一である。従って、図に
おいては、回路2Bおよび2Cについては乗算器,レジ
スタ,メモリの番号を示すのみで、遅延回路2Aのみを
詳細に図示している。このような構成の第1残響音形成
部2において、バンドパスフィルタBPFを通過したj
時間前の振幅データSPD(t−j)には、まず乗算器
M17において振幅レベル制御用の係数K17が乗算され
る。そして、その乗算値K17・SPD(t−j)は乗算
器M17内のレジスタR5に一時記憶される。次に、2
048語の記憶アドレスを有するメモリD1にx1時間
前に書込まれた振幅データSPD(t−x1)を読出す
ため、遅延時間x1に対応するメモリD1のアドレスが
指定される。これによって、メモリD1からx1時間前
の振幅データSPD(t−x1)が読出される。そし
て、この振幅データSPD(t−x1)は加算器SUM
に供給され、この加算器SUMにおいて他のメモリD
2,D3の出力データおよび遅延回路2B,2Cのメモ
リD4〜D6,D7〜D9の出力データと加算され、該
加算器SUM内のレジスタR11に一時記憶される。こ
の場合、メモリD1〜D9の読出し動作はメモリD1か
らD9まで順に時分割で行なわれるようになっており、
メモリD1の読出し動作時には他のメモリD2〜D9か
らはデ−タが出力されていない。このため、加算器SU
M内のレジスタR11への書込み内容は、メモリD1か
ら読出されたデータSPD(t−x1)となる。 【0032】一方、メモリD1から読出された振幅デー
タSPD(t−x1)は乗算器M18において振幅レベ
ル制御用の係数K18が乗算された後メモリD1の入力側
に帰還される。そして、この乗算値K18・SPD(t−
x1)は現在時刻tにおいてレジスタR5に一時記憶さ
せたデータK17・SPD(t−j)と加算され、その加
算値 K17・SPD(t−j)+K18・SPD(t−x1) はレジスタR6に一時記憶される。次に、レジスタR6
に記憶された振幅データ「K17・SPD(t−j)+K
18・SPD(t−x1)」は、x1時間前の振幅データS
PD(t−x1)が記憶されていたアドレスと同一アド
レスに書込まれる。この後、レジスタR6の内容はリセ
ットされる。レジスタR6の内容をリセットするのは、
このレジスタR6を次の段階でメモリD2の系統の処理
に兼用しているためである。 【0033】このようにしてメモリD1の系統の処理が
終了すると、次にメモリD2の系統の処理が同様にして
行なわれる。すなわち、2048語のアドレスを有する
メモリD2にx2時間前に書込まれた振幅データSPD
(t−x2)を読出すため、遅延時間x2に対応するメモ
リD2のアドレスが指定される。これによって、メモリ
D2からx2時間前にサンプリングした振幅データSP
D(t−x2)が読出される。そして、この振幅データ
SPD(t−x2)は加算器SUMにおいてレジスタR
11の内容(メモリD1から読出された内容)SPD
(t−x1)と加算され、その加算値「SPD(t−x
1)+SPD(t−x2)」はレジスタR11に一時記憶
される。一方、メモリD2から読出された振幅データS
PD(t−x2)は乗算器M19において振幅レベル制
御用の係数K19が乗算された後、メモリD2の入力側に
帰還される。そして、その乗算値K19・SPD(t−x
2)はレジスタR5に一時記憶されている値K17・SP
D(t−j)と加算され、その加算値「K17・SPD
(t−j)+K19・SPD(t−x2)」はレジスタR
6に一時記憶される。このレジスタR6に記憶されたデ
ータ「K17・SPD(t−j)+K19・SPD(t−x
2)」は、x2時間前のデータSPD(t−x2)が記憶
されていたアドレスと同一アドレスに記憶される。この
後、レジスタR6の内容はリセットされる。 【0034】次に、メモリD3の系統の処理がメモリD
2の系統の処理と同様にして行なわれる。従って、メモ
リD1〜D3の系統の処理を終了した段階では、メモリ
D3の系統の遅延時間をx3とすると、レジスタR11
に記憶される内容は、 SPD(t−x1)+SPD(t−x2)+SPD(t−
x3) となり、またメモリD3に記憶される内容は K17・SPD(t−j)+K20・SPD(t−x3) となる。このような処理は遅延回路2B,2Cにおいて
も同様に行なわれる。 【0035】従って、遅延回路2BにおけるメモリD
4,D5,D6の各系統の遅延時間をそれぞれx4,x
5,x6とし、また遅延回路2CにおけるメモリD7,D
8,D9の各系統の遅延時間をそれぞれx7,x8,x9
とすると、遅延回路2A〜2Cの全ての処理を終了した
段階におけるレジスタR11の内容は、 【数3】 となる。この結果、初期反射音に続き、図10に示すよ
うに遅延時間間隔が粗く、そして振幅レベルおよび遅延
時間が規則的に変化する残響音が得られる。なお、図1
0においては、時間関係が複雑になるため、遅延回路2
Aについてのみの残響音を図示している。以上のように
して形成された遅延時間間隔の粗い残響音データRVD
1は、第2残響音形成部3に入力される。 【0036】図4に詳細を示した第2残響音形成部3で
は、周波数特性が平坦なオールパス型フィルタ構成の遅
延回路3A,3B,3Cが直列に設けられている。3個
の遅延回路3A,3B,3Cを直列に設けているのは、
第1残響音形成部2において得られた残響音データRV
1より密な遅延時間間隔の残響音データRVD2を形成
するためである。従って、この第2残響音形成部3にお
ける各遅延回路3A,3B,3Cの遅延時間は、第1残
響音形成部2における各遅延回路2A,2B,2Cの遅
延時間よりも短く設定される。そして、各遅延回路3
A,3B,3Cは遅延時間の設定が異なるのみでその構
成は全て同じである。従って、図においては、遅延回路
3B,3Cについては乗算器,レジスタ,メモリの番号
を示すのみで、遅延回路3Aについてのみ詳細構成を示
している。 【0037】まず、第2残響音形成部2から出力される
残響音データRVD1は遅延回路3AのレジスタR12
に供給されるが、このデータRVD1をレジスタR12
に記憶させる前に、まず512語の記憶アドレスを有す
るメモリMD0にy1時間前に書込まれたデータRVD1
(t−y1)を読出すため、遅延時間y1時間に対応する
メモリMD0のアドレスが指定される。これによって、
メモリMD0からy1時間前に書込まれたRVD1(t−
y1)が読出される。次に、このデータRVD1(t−y
1)には乗算器M30において、振幅レベル制御用の係
数K30が乗算され、その乗算値K30・RVD1(t−y
1)はメモリMD0の入力側に帰還される。そして、次
にこの帰還データK30・RVD1(t−y1)と第1残響
音形成部2から現在時刻tに供給されるデータRVD1
(t)とが加算され、その加算値「RVD1(t)+K3
0・RVD1(t−y1)」はレジスタR12に一時記憶
される。次に、遅延時間y1に対応するメモリMD0の
アドレスが再び指定され、メモリMD0からy1時間前
に書込まれたデータRVD1(t−y1)が再び読出さ
れ、その読出しデータRVD1(t−y1)がレジスタR
13に一時記憶される。次に、レジスタR12に一時記
憶されたデータ「RVD1(t)+K30・RVD1(t−
y1)」と振幅レベル制御用の定数K29とが乗算器M2
9において乗算される。そして、その乗算値 K29・{RVD1(t)+K30・RVD1(t−y1)} はレジスタR13に一時記憶されている値RVD1(t
−y1)と加算され、その加算値 RVD1(t−y1)+K29・{RVD1(t)+K30・R
VD1(t−y1)} はレジスタR13に一時記憶される。次に、レジスタR
12に一時記憶されているデータ「RVD1(t)+K3
0・RVD1(t−y1)」を現在時刻tよりy1時間遅れ
たサンプリング時刻(t+y1)において使用するた
め、該データ「RVD1(t)+K30・RVD1(t−y
1)」はy1時間前のデータRVD1(t−y1)が記憶さ
れていたアドレスと同一アドレスに書込まれる。 【0038】このようにして遅延回路3Aによる処理が
終了すると、レジスタR13に記憶されたデータ RVD1(t−y1)+K29・{RVD1(t)+K30・R
VD1(t−y1)} は遅延回路3Bに送られ、この遅延回路3Bにおいて回
路3Aの場合と同様の処理が行なわれる。ここで、遅延
回路3A,3B,3Cの出力データをRVD2A,RVD
2B,RVD2Cで表わし、回路3Bの遅延時間をy2,回
路3Cの遅延時間をy3とすると、回路3A,3B,3
CのレジスタR13,R15,R17の出力データは次
の(1-4)式,(1-5)式,(1-6)式によって表わされ
る。 【0039】 RVD2A=RVD1(t−y1)+K29・{RVD1(t) +K30・RVD1(t−y1)} …(1-4) RVD2B=RVD2A(t−y2)+K31・{RVD2A(t) +K32・RVD2A(t−y2)} …(1-5) RVD2C=RVD2B(t−y3)+K33・{RVD2B(t) +K34・RVD2B(t−y3)} …(1-6) そして、遅延回路3Cの出力データRVD2Cは初期反射
音に続く残響音を発生させるためのデータとしてスイッ
チ回路SWを経由して出力される。 【0040】ここで、各遅延回路3A,3B,3Cの遅
延時間を、 y1>y2>y3 の関係に設定した場合、図11に示すように遅延時間間
隔の密な残響音を形成することができる。すなわち、遅
延回路3Aは第1残響音形成部2で形成された遅延時間
間隔の粗い残響音データRVD1に基づき、第1残響音
形成部2の遅延時間間隔よりも短い時間間隔y1で第1
の残響音データRVD2Aを形成し、遅延回路3Bは回路
3Aの遅延時間間隔y1よりもさらに短い時間間隔y2で
第2の残響音データRVD2Bを形成する。このため、遅
延回路3A〜3Cにおける残響音の形成処理が進行する
に伴って遅延時間間隔の密な残響音が形成されるように
なる。 なお、遅延回路3A,3B,3Cにおけるレジ
スタR12,R14,R16は、自己の回路に関する処
理が終了した後は次のサンプリング周期まで使用しない
ので、時分割的に共用することができる。 【0041】次に、図1に示す実施例の具体的構成およ
び動作について説明する。なお、以下の説明では、図1
に示す装置が上述した図3及び図4の機能に従って残響
音の形成を行なうものとして述べる。 −−実施例の具体的構成−− 図1に示す実施例に係る残響音付加装置は、大別する
と、記憶部10,時間情報発生部20,アドレス情報発
生部30,演算部40とから構成されている。時間情報
発生部20とアドレス情報発生部30の詳細は図2に示
されている。 【0042】記憶部10は、図5,図6における遅延用
のデイジタルメモリDMに相当するもので、ここでは複
数のメモリブロックを有するデータメモリ100とラッ
チ101とから構成されている。データメモリ100に
おいては、複数のメモリブロックを利用して、図12に
示すように、1語(16ビット)のメモリSD0〜SD
15と、512語(1語は16ビット)のメモリMD0
〜MD15と、2048語(1語は16ビット)のメモ
リD0〜D15が設けられている。そして、このメモリ
SD0〜SD15,MD0〜MD15,D0〜D15に
記憶すべきデータは演算部40から与えられ、データの
記憶アドレスおよび読出しアドレスはアドレス情報発生
部30から出力されるアドレス情報DM・ADRによっ
て指定され、また各メモリSD0〜D15から読出され
たデータはラッチ101を介して演算部40に供給され
る構成になっている。 【0043】図2に詳細を示した時間情報発生部20
は、図5,図6におけるディレイレングスデータメモリ
DDMに相当するものであり、パラメータ指定回路20
0とディレイレングスデータメモリ201とを備え、こ
こではディレイレングスデータメモリ201はパラメー
タ指定回路200からの指示により、残響特性の異なる
8種類の残響音(初期反射音も含む)それぞれに対応し
て各データ遅延用のメモリD0〜D15,MD0〜MD
15に関する遅延時間情報DLDm〔n〕(n:D0〜
D15,MD0〜MD15のメモリを指示、m:1〜8
の種類を指示)のうちいずれか1つの種類を選択的に出
力するように構成されている。 【0044】すなわち、ディレイレングスデータメモリ
201は、図13に示すように、データ遅延用のメモリ
D0〜D15,MD0〜MD15それぞれに対応したメ
モリブロックMB(D0)〜MB(D15),MB(M
D0)〜MB(MD15)を備え、この各メモリブロッ
クMB(D0)〜MB(MD15)はそれぞれ上述した
8種類の残響音に対応して8つの記憶アドレス「0」〜
「7」を有し、各メモリブロックMB(D0)〜MB
(MD15)の各記憶アドレス「0」〜「7」にはそれ
ぞれ異なる遅延時間情報DLD1〔D0〕〜DLD8〔D
0〕,DLD1 〔D1〕〜DLD8〔D1〕,……DL
1〔D15〕〜DLD8〔D15〕,DLD1〔MD
0〕〜DLD8〔MD0〕,……DLD1〔MD15〕〜
DLD8〔MD15〕が予め記憶されている。そして、
発生すべき残響音の残響特性を指示する3ビット構成の
パラメータ指示情報PSLが下位アドレス情報としてパ
ラメータ指示回路200から供給され、更にメモリMD
0〜MD15,D0〜D15のメモリ番号「0〜15」
を指定する4ビット構成のメモリ番号情報DLn(n:
0〜15)およびメモリの種別「D,MD,SD」を指
定する2ビット構成のメモリ種別情報DLk(k:D,
MD,SD)が上位アドレス情報としてアドレス情報発
生部から供給されると、情報DLnおよびDLkで指定さ
れるメモリブロック(MB(D0)〜MB(MD15)
のうち1つ)のうち、情報PSLで指定される記憶アド
レス(「0」〜「7」のうち1つ)に記憶されている遅
延時間情報DLDm〔n〕が読出され、パラメータ指定
回路200で指定した所望の残響特性の残響音の遅延時
間関係を規定する情報としてアドレス情報発生部30へ
供給される。なお、メモリSD0〜SD15について
は、遅延時間が固定(1・T0)であるため、このメモ
リSD0〜SD15に対する遅延時間情報は必要としな
い。また、パラメータ指定回路200からは、パラメー
タ指定情報PSLとともに、8種類の残響音を形成する
ための制御プログラムのうち所望の制御プログラムの1
つを選択する3ビット構成のプログラム選択情報PGS
が出力される。 【0045】次に、図2に詳細を示したアドレス情報発
生部30は、時間情報発生部20から出力される遅延時
間情報DLDm〔n〕およびプログラム選択情報PGS
と、制御プログラムの1ステップの周期を定めるマスタ
クロックパルスφ0とに基づき、所望の残響特性の残響
音を形成するためのデータメモリ100に対するアドレ
ス情報DM・ADRを発生すると共に、各部回路の動作
を制御する各種の制御信号を発生するものであり、プロ
グラムメモリ300,プログラムカウンタ301,プロ
グラムデコードメモリ302,制御信号出力レジスタ3
03,セレクタ304,アドレスカウンタ305,ラッ
チ306,減算回路307,最大値検出回路308,ア
ドレス情報出力回路309とを備えている。 【0046】プログラムメモリ300には、8種類の残
響特性の残響音を形成するために8種類の制御プログラ
ムが予め記憶されており、どの種類の制御プログラムを
出力すべきかはパラメータ指定回路200からのプログ
ラム選択情報PGSによって指定される。そして、指定
された制御プログラムの内容はマスタクロックパルスφ
0をカウントするプログラムカウンタ301の出力情報
PCによって1ステップ毎に順次読出される。この場
合、図3及び図4で説明した初期反射音形成部1,バン
ドパスフィルタBPF,第1残響音形成部2,第2残響
音形成部3の全ての処理を1サンプリング周期(T0)
内で終了させるために、サンプリング周波数を25kH
z,マスタクロックパルスφ0の周波数を4.8MHzと
すると、1つの制御プログラムのステップ数は4800
/25=192以内で構成され、この192ステップの
制御プログラム内容が各サンプリング周期T0毎に実行
される。そして、各ステップにおける制御プログラムと
しては、表2に示すように、1ステップが16ビットの
情報から成るタイプ1,タイプ2,タイプ3の3種類の
内容が準備されており、初期反射音の形成,フィルタ処
理,残響音の形成はこれら3種類の制御プログラムの出
力順序および各ビット情報の内容を適宜組合せることに
よって行なわれる。 【0047】【0048】この場合、16ビットから成る1ステップ
の制御プログラムは、情報OF・ADRn,RGn,DL
n,ADR〔Kn〕の如く制御信号出力レジスタ303を
介してそのまま出力されるものと、メモリの書込み制御
信号WR1などの如くプログラムデコードメモリ302
によってデコードされた後制御信号出力レジスタ303
を介して出力されるものとが有り、後者はオペレーショ
ンコードOPCとしてプログラムメモリ300からプロ
グラムデコードメモリ302に与えられる。なお、表2
の内容の詳細については全体の動作説明とともに後述す
る。 【0049】一方、アドレスカウンタ305は図14に
示すように遅延用のメモリD0〜D15,MD0〜MD
15のそれぞれに対応したアドレスカウンタAC(D
0)〜AC(D15),AC(MD0)〜AC(MD1
5)を備えている。このアドレスカウンタ305におけ
る各カウンタAC(D0)〜AC(D15),AC(M
D0)〜AC(MD15)は、メモリ番号情報DLnお
よびメモリ種別情報DLkによって選択的に動作状態と
される。情報DLnおよびDLkによって動作状態となっ
たアドレスカウンタAC(n)(n:D0〜D15,M
D0〜MD15)のカウント出力情報ADR〔n〕はラ
ッチ306を介してアドレス情報出力回路309へ供給
されると共に、減算回路307へ供給される。この場
合、アドレスカウンタAC(n)の出力情報ADR
〔n〕はメモリD0〜D15,MD0〜MD15のうち
メモリD0〜D15が2048語のアドレス長となって
いるため、2048語までのアドレス範囲を指定できる
ように11ビットで構成されている。なお、アドレスカ
ウンタ305はRAMから構成される。 【0050】減算回路307は、ラッチ306を介して
入力されたアドレスカウンタAC(n)の出力内容AD
R〔n〕から「1」を減じ、その減算値「ADR〔n〕
−1」を次のサンプリング周期(t+1)において使用
するためセレクタ304のA側入力に帰還する。同時
に、最大値検出回路308に供給する。最大値検出回路
308は第4図の検出回路MXDに相当するものであ
り、メモリ番号情報DLnおよびメモリ種別情報DLkに
より指定されたアドレスカウンタAC(n)の出力情報
ADR〔n〕から「1」を減じた情報「ADR〔n〕−
1」が最大値(全ビットが“1”)に達したことを検出
すると、セレクタ304に対しB側入力を選択させるセ
レクト制御信号SLBを出力する。セレクタ304にお
いては、A側入力に減算回路307の出力情報「ADR
〔n〕−1」が入力され、B側入力にディレイレングス
データメモリ201の出力情報DLDm〔n〕が入力さ
れ、その出力はアドレスカウンタ305のデータ入力に
供給されて情報DLn,DLkにより指定されるアドレス
カウンタAC(n)に対して書込み制御信号WR3によ
り書込まれる(プリセットされる)構成となっている。
従って、情報DLn,DLkにより指定されたアドレスカ
ウンタAC(n)においては、最大値検出回路308か
らセレクト制御信号SLBが発生されていない条件で
は、1サンプリング周期毎に現在値ADR〔n〕から
「1」を減じた値「ADR〔n〕−1」が書込まれるこ
とになり、その出力情報ADR〔n〕は時間経過ととも
に「0」の方向へ減少する。ところが、値「ADR
(n)−1」が最大値になると、最大値検出回路308
からセレクト制御信号SLBが発生されるため、アドレ
スカウンタAC(n)にはセレクタ304を介して遅延
時間情報DLDm〔n〕が入力され、書込み制御信号W
R3により書込まれる。従って、アドレスカウンタAC
(n)の内容は、セレクト制御信号SLBの発生により
「DLDm〔n〕」になった後、サンプリング時刻の経
過とともに「0」に方向へ順次変化するものとなる。す
なわち、セレクタ304、アドレスカウンタ305、ラ
ッチ306、減算回路307、最大値検出回路308と
から成る部分では、情報DLn,DLkで指定されるアド
レスカウンタAC(n)において遅延時間情報DLDm
〔n〕に対応する遅延時間に等しい周期で一巡するアド
レス情報ADR〔n〕が形成される。このアドレス情報
ADR〔n〕はアドレス情報出力回路309へ供給され
る。 【0051】アドレス情報出力回路309は、メモリS
D0〜SD15,メモリD0〜D15,メモリMD0〜
MD15に対する情報の読出しおよび書込みのためのア
ドレス情報を出力するものである。このアドレス情報出
力回路309は、メモリD0からin時間遅れた情報を
読出して初期反射音ECH(t)を形成する場合には、
第1反射音ECH1〜第10反射音ECH10の各遅延時
間inに対応する11ビットのアドレス情報OF・AD
Rn(制御信号出力レジスタ303から出力される)を
下位アドレス情報とし、その上位にメモリ番号情報DL
nおよびメモリ種別情報DLkを付加し、この1組の情
報OF・ADRn,DLn,DLkをアドレス情報DM・
ADRとして出力する。また、現在時刻でサンプリング
した振幅データSPD(t)をメモリD0に書込む場
合、メモリD0に対応するアドレスカウンタAC(D
0)の出力情報ADR〔D0〕を下位アドレス情報と
し、その上位にメモリD0を指定する情報DLn(=D
L0)およびDLk(=DLD)を付加し、この1組の情
報ADR〔D0〕,DLn,DLkをアドレス情報DM・
ADRとして出力する。また、メモリSD0〜SD15
に対して振幅データの書込みおよび読出しを行う場合、
下位アドレス情報の全ビットを“0”とし、その上位に
メモリSD0〜SD15を指定する情報DLn(=DL0
〜DL15)およびDLk(=DLSD)を付加してアドレ
ス情報DM・ADRとして出力する。また、残響音RV
1,RVD2を形成する場合には、メモリD1〜D1
5,MD0〜MD15のそれぞれに対応するアドレスカ
ウンタAC(D1)〜AC(D15),AC(MD0)
〜AC(MD15)の各出力情報ADR〔D1〕〜AD
R〔D15〕,ADR〔MD0〕〜ADR〔MD15〕
を下位アドレス情報とし、その上位に情報DLnおよび
DLkを付加し、これら1組の情報ADR〔n〕,DL
n,DLkをアドレス情報DM・ADRとして出力する。
この場合、情報DLnおよびDLkの下位に情報OF・A
DRnを付加すべき時には制御信号出力レジスタ303
から制御パルスGP1が出力される。また、情報DLn
およびDLkに下位に付加する下位アドレス情報の全ビ
ットを“0”にすべき時には、制御信号出力レジスタ3
03から制御パルスGP2が出力される。なお、アドレ
ス情報出力回路309は、情報DLnおよびDLkを一時
記憶するレジスタを内部に備えている。 【0052】図1に詳細が示された演算部40は、メモ
リD0〜D15,MD0〜MD15,SD0〜SD15
に記憶させるデータおよび各メモリから読出したデータ
の振幅レベル制御を行うもので、係数メモリ400、セ
レクタ401、演算回路402、テンポラリレジスタ4
03、ラッチ404とを備えている。係数メモリ400
は、ディレイレングスデータメモリと同様、残響特性の
異なる8種類の残響音に対応して8個のメモリブロック
を有し、各メモリブロックには各種類別の残響音を形成
するために必要な一組の係数Kn(n:1〜32)が予
め記憶されている。そして、パラメータ指定回路200
からパラメータ指定情報PSLが供給され、かつ係数K
nを指定するアドレス情報ADR〔Kn〕が制御信号出力
レジスタ303から供給されると、情報PSLで指定さ
れるメモリブロックのうち情報ADR〔Kn〕で指定さ
れるアドレスから係数Knが読出され、演算回路402
の演算入力(A)に供給される構成になっている。 【0053】セレクタ401は、A側入力にサンプルホ
ールド回路SPHによりサンプリングされた入力楽音の
振幅データSPD(t)が入力され、B側入力に記憶部
10からの読出しデータMRDが入力され、C側入力に
ラッチ404を介してテンポラリレジスタ403の出力
データRGDが入力されており、これらの入力データS
PD(t),MRD,RGDは制御信号出力レジスタ3
03から出力されるセレクト制御信号SL1(2ビット
構成)によっていずれか1つが選択され、演算回路40
2の演算入力(X)に供給されている。 【0054】演算回路402は、演算入力(A)に係数
メモリ400から読出された係数Knが入力され、演算
入力(B)にラッチ404を介してテンポラリレジスタ
403の出力データRGDが入力され、演算入力(X)
にセレクタ401の選択出力データ(SPD(t),M
RD,RGD)が入力され、制御信号出力レジスタ30
3から出力される演算制御信号CTL(3ビット構成)
により、 (Y)=(A)・(X)+(B) (Y)=(X)+(B) (Y)=(X) (Y)=(B) (Y)=(0) の演算を実行し、その演算値(Y)をテンポラリレジス
タ403,記憶部10,出力レジスタ500に供給する
構成になっている。 【0055】テンポラリレジスタ403は、初期反射音
ECH(t),残響音RVD1,RVD2の形成過程にお
ける演算回路402の演算値(Y)を一時記憶し、その
記憶内容をレジスタ出力データRGDとしてセレクタ4
01のC側入力および演算回路402の演算入力(B)
に帰還するもので、5ビット構成のレジスタ指定情報R
Gn(n:1〜32)により指定される32個のレジス
タR0〜R31を有し、入力データは情報RGnにより
指定されたレジスタ(R0〜R31)に対し書込み制御
信号WR1の制御によって書込まれる。次に、出力レジ
スタ500は、演算回路402の演算値(Y)として得
られた初期反射音の瞬時値ECH(t)および初期反射
音に続く残響音の瞬時値RVD(t)を書込み制御信号
WR2によって取込み、この取込みデータを減衰器50
1を介してDA変換器(DAC)502に供給する。な
お、セレクタ401におけるセレクト制御信号SL1お
よび演算回路402における演算制御信号CTLは、制
御信号出力レジスタ303から出力されるオペレーショ
ンコードOPCに含まれるものである。 【0056】次に、以上の構成の動作について説明す
る。 −−動作説明−− a.初期反射音の形成動作 初期反射音BCH(t)を形成する場合、 (1)まず、現在時刻tでサンプリングした入力楽音の
振幅データSPD(t)をメモリD0に書込むため、 SL1;SELECT(A) CTL;(Y)=(X) で示される内容のセレクト制御信号SL1および演算制
御信号CTLがオペレーションコードOPCとして制御
信号出力レジスタ303から出力される。これによっ
て、セレクタ401はサンプリングホールド回路SPH
から出力される振幅データSPD(t)を演算回路40
2の演算入力(X)に供給する。また、演算回路402
は、演算入力(X)に入力された振幅データSPD
(t)を演算値(Y)として出力する。 【0057】(2)次に、現在のサンプリング時刻
(t)に対応したメモリD0のアドレスを指定した上、
このアドレスに演算回路402の出力データSPD
(t)を書込むため、 DLn;DL0 DLk;DLD WR4;“1”(WRITE) L3 ;“1”(LATCH) で示される内容のメモリ種別情報DLk、書込み制御信
号WR4,ラッチ制御信号L3がオペレーションコード
OPCとして、またメモリ番号情報DLnが制御信号出
力レジスタ303から出力される。 【0058】これによって、メモリD0に対応したアド
レスカウンタAC(D0)の出力情報ADR〔D0〕が
現在時刻tの振幅データSPD(t)を書込むための下
位アドレス情報としてラッチ306にラッチされる。そ
して、このラッチされた下位アドレス情報ADR〔D
0〕は、アドレス情報出力回路309においてその上位
にメモリ番号情報DLn(=DL0)およびメモリ種別情
報DLk(=DLD)が付加されてメモリD0に対する振
幅データSPD(t)の書込みアドレス情報DM・AD
Rとして出力される。これにより、演算回路402を介
してメモリD0のデータ入力に与えられている現在時刻
tの振幅データSPD(t)は書込み制御信号WR4に
よって現在時刻tに対応したアドレスに書込まれる。 【0059】(3)次に、各サンプリング時刻毎の初期
反射音の合成値を記憶するレジスタR0をクリアするた
め、 RGn ;R0 CTL;(Y)=0 WR1;“1”(WRITE) で示される内容の演算制御信号CTL,書込み制御信号
WR1がオペレーションコードOPCとして、またレジ
スタ番号情報RGnが制御信号出力レジスタ303から
出力される。これによって、レジスタR0には「0」が
書込まれる。すなわち、レジスタR0はクリアされる。 【0060】(4)次に、第1反射音ECH1を形成す
るため、 OF・ADRn;OF・ADR1 DLk ;DLD GP1 ;“1” L2 ;“1”(LATCH) で示される内容のメモリ種別情報DLk,制御パルスG
P1,ラッチ制御信号L2がオペレーションコードOP
Cとして、また第1反射音ECH1の遅延時間i1に対応
したアドレス情報OF・ADRnが制御信号出力レジス
タ303から出力される。この場合、アドレス情報出力
回路309には前記ステップ(3)におけるメモリ番号
情報DLn(=DL0)が保持されている。 【0061】これによって、アドレス情報出力回路30
9は、遅延時間i1に対応したアドレス情報OF・AD
R1を下位アドレス情報とし、メモリ番号情報DLn(=
DL0),メモリ種別情報DLk(=DLD)を上位アド
レス情報とし、メモリD0からi1時間前に書込んだ振
幅データSPD(t−i1)を読出すためのアドレス情
報DM・ADRとして出力する。これにより、メモリD
0からi1時間前の振幅データSPD(t−i1)が読出
され、この読出しデータSPD(t−i1)はラッチ制
御信号L2によってラッチ101にラッチされる。 【0062】(5)次に、レジスタR0の現在値をラッ
チ404に転送するため、 RGn ;R0 L1 ;“1”(LATCH) で示される内容のラッチ制御信号L1がオペレーション
コードとして、またレジスタ番号情報RGnが制御信号
出力レジスタ303から出力される。これによって、レ
ジスタR0の現在値はラッチ404に転送されて記憶さ
れる。 【0063】(6)次に、i1時間前の振幅データSP
D(t−i1)に振幅レベル制御用の係数K1を乗算し、
第1反射音ECH1に関する瞬時値K1・SPD(t−i
1)を得るため、 ADR〔Kn〕;ADR〔K1〕 SL1 ;SELECT(B) CTL ;(A)・(X)+(B)=(Y) で示されるセレクト制御信号SL1,演算制御信号CT
LがオペレーションコードOPCとして、また定数読出
し用のアドレス情報ADR〔Kn〕が制御信号出力レジ
スタ303から出力される。 【0064】これによって、係数メモリ400から第1
反射音ECH1に関する係数K1が読出されて演算回路4
02の演算入力(A)に供給される。また、セレクタ4
01は、B側選択入力にラッチ101から供給されてい
るi1時間前の振幅データSPD(t−i1)を選択し、
該データSPD(t−i1)を演算回路402の演算入
力(X)に供給する。また、演算回路402は (Y)=(A)・(X)+(B) =K1・SPD(t−i1)+〔R0〕 で示される演算を行う。この場合、レジスタR0の内容
は前述のステップ(3)においてクリアされているた
め、ここでは第1反射音ECH1に関する瞬時値K1・S
PD(t−i1)が演算回路402の演算値(Y)とし
て得られる。 【0065】(7)次に、第1に反射音ECH1の瞬時
値K1・SPD(t−i1)をレジスタR0に転送して記
憶させるため、 RGn ;R0 WR1;“1”(WRITE) で示される内容の書込み制御信号WR1がオペレーショ
ンコードOPCとして、またレジスタ番号情報RGnが
制御信号出力レジスタ303から出力される。これによ
って、演算回路402の出力データ(Y)=K1・SP
D(t−i1)がレジスタR0に書込まれる。ここまで
のステップを終了することにより、レジスタR0には第
1反射音ECH1の瞬時値K1・SPD(t−i1)が得
られる。 【0066】(8)次に、第2反射音ECH2〜第10
反射音ECH10に簡する瞬時値K2・SPD(t−i2)
〜K10・SPD(t−i10)が前述のステップ(4)〜
(7)と同様にして形成される。従って、第10反射音
ECH10に関するステップ(7)の動作を終了した段階
では、レジスタR0には第1反射音ECH1〜第10反
射音ECH10の瞬時値の総和 【数1】が得られる。そして、この総和は出力レジスタ
500に対して書込み制御信号WR2によって書込ま
れ、減衰器501に転送される。 【0067】b.フィルタ動作 フィルタ動作を行う場合 (1)まず、メモリD10からj時間前の振幅データS
PD(t−j)を読出すため、 DLn:DL10 DLk:DLD L3 :“1”(LATCH) L2 :“1”(LATCH) で示される内容のメモリ種別情報DLk,ラッチ制御信
号L3,L2がオペレーションコードOPCとして、ま
たメモリ番号情報DLnが制御信号出力レジスタ303
から出力される。 【0068】これによって、メモリD10に対応したア
ドレスカウンタAC(D10)の出力情報ADR〔D1
0〕がj時間前の振幅データSPD(t−j)を読出す
ための下位アドレス情報としてラッチ306にラッチさ
れる。そして、このラッチされた下位アドレス情報AD
R〔D10〕は、アドレス情報出力回路309において
その上位にメモリ番号情報DLn(=DL10)およびメ
モリ種別情報DLk(=DLD)が付加されてデータメモ
リ100のメモリD10に対して振幅データSPD(t
−j)の読出しアドレス情報DM・ADRとして出力さ
れる。これにより、メモリD10からj時間前の振幅デ
ータSPD(t−j)が読出され、この読出しデータS
PD(t−j)はラッチ制御信号L2によりラッチ10
1にラッチされる。 【0069】(2)次に、現在時刻tでサンプリングし
た振幅データSPD(t)を振幅データSPD(t−
j)の読出しアドレスと同一アドレスに書込むため、 SL1:SELECT(A) CTL:(Y)=(X) で示される内容のセレクト制御信号SL1および演算制
御信号CTLがオペレーションコードOPCとして制御
信号出力レジスタ303から出力される。これによっ
て、セレクタ401はサンプリングホールド回路SPH
から出力される振幅データSPD(t)を演算回路40
2の演算入力(X)に供給する。また、演算回路402
は、演算入力(X)に入力された振幅データSPD
(t)を演算値(Y)として出力する。 【0070】(3)次に、振幅データSPD(t)をメ
モリD10に書込むため、 DLn :DL10 DLk :DLD WR4:“1”(WRITE) L3 :“1”(LATCH) で示される内容のメモリ種別情報DLk,書込み制御信
号WR4、ラッチ制御信号L3がオペレーションコード
OPCとして、またメモリ番号情報DLnが制御信号出
力レジスタ303から出力される。 【0071】これによって、メモリD10に対応したア
ドレスカウンタAC(D10)の出力情報ADR〔D1
0〕が現在時刻tの振幅データSPD(t)を書込むた
めの下位アドレス情報としてラッチ306にラッチされ
る。そして、このラッチされた下位アドレス情報ADR
〔D10〕は、アドレス情報出力回路309においてそ
の上位にメモリ番号情報DLn(=DL10)およびメモ
リ種別情報DLk(=DLD)が付加されてメモリD10
に対する振幅データSPD(t)の書込みアドレス情報
DM・ADRとして出力される。これにより、演算回路
402を介してメモリD10のデータ入力に与えられて
いる現在時刻tの振幅データSPD(t)は書込み制御
信号WR4によって現在時刻tに対応したアドレスに書
込まれる。 【0072】(4)次に、ローパスフィルタLPFにお
いて、レジスタR1の内容、係数K11,j時間前の振幅
データSPD(t−j)により、 〔R1〕+K11・SPD(t−j) を演算し、この演算値をレジスタR1に再び記憶させる
ため、まず、 RGn:R1 L1 :“1”(LATCH) の内容で示されるラッチ制御信号L1がオペレーション
コードOPCとして、またレジスタ番号情報RGnが制
御信号出力レジスタ303から出力され、レジスタR1
の内容がラッチ404に転送される。 【0073】(5)次に、K11・SPD(t−j)の演
算を行うため、 ADR〔Kn〕:ADR〔K11〕 SL1 :SELECT(B) CTL :(Y)=(A)・(X)+(B) で示される内容のセレクト制御信号SL1,演算制御信
号CTLがオペレーションコードOPCとして、また定
数読出し用のアドレス情報ADR〔Kn〕が制御信号出
力レジスタ303から出力される。これによって、係数
メモリ400から係数K11が読出されて演算回路402
の演算入力(A)に供給される。また、セレクタ401
は先のb−(1)のステップでラッチ101にラッチさ
れている振幅データSPD(t−j)を選択し、演算回
路402の演算入力(X)に供給する。これによって、
演算回路402は、 (Y)=(A)・(X)+(B) =K11・SPD(t−j)+R1 の演算を行う。この場合、レジスタR1の内容は前回の
サンプリング時刻(t−1)におけるフィルタ処理が終
了した段階でクリアされているため、このステップでは
K11・SPD(t−j)が演算値(Y)として得られ
る。 【0074】(6)次に、この演算値(Y)=K11・S
PD(t−j)をレジスタR1に記憶させるため、 RGn :R1 WR1:“1”(WRITE) の内容で示される書込み制御信号WR1がオペレーショ
ンコードOPCとして、またレジスタ番号情報RGnが
制御信号出力レジスタ303から出力される。これによ
って、演算回路402の出力データK11・SPD(t−
j)がレジスタR1に記憶される。 【0075】(7)次に、メモリSD0から(j−1)
時間前の振幅データSPD(t−j−1)を読出すた
め、 DLn :DL0 DLk :DLSD GP2 :“1” L2 :“1”(LATCH) で示される内容のメモリ種別情報DLk、ラッチ制御信
号L2,ゲートパルス信号GP2がオペレーションコー
ドOPCとして、またメモリ番号情報DLnが制御信号
出力レジスタ303から出力される。すると、アドレス
情報出力回路309は、下位アドレス情報の全ビットを
“0”にし、その上位にメモリ番号情報DLn(=DL
0)およびメモリ種別情報DLk(=DLSD)を付加し、
メモリSD0に対するアドレス情報DM・ADRとして
出力する。これにより、メモリSD0から(j−1)時
間前の振幅データSPD(t−j−1)が読出され、ラ
ッチ101にラッチされる。 【0076】(8)次に、レジスタR1の内容K11・S
PD(t−j),係数K12,ラッチ101にラッチされ
ている振幅データSPD(t−j−1)により K12・SPD(t−j−1)+〔R1〕 を演算し、この演算値をレジスタR1に再び記憶させる
ため、まず RGn:R1 L1 :“1”(LATCH) で示される内容のラッチ制御信号L1がオペレーション
コードOPCとして、またレジスタ番号情報RGnが制
御信号出力レジスタ303から出力され、レジスタR1
の内容K11・SPD(t−j)がラッチ404に転送さ
れる。 【0077】(9)次に、K12,・SPD(t−j−
1)+〔R1〕の演算を行うため、 ADR〔Kn〕:ADR〔K12〕 SL1 :SELECT(B) CTL :(Y)=(A)・(X)+(B) で示される内容の信号SL1,CTLがオペレーション
コードOPCとして、またアドレス情報ADR〔Kn〕
が制御信号出力レジスタ303から出力される。これに
よって、係数メモリ400から係数K11が読出されて演
算回路402の演算入力(A)に供給される。また、セ
レクタ401はラッチ101にラッチされている振幅デ
ータSPD(t−j−1)を選択して演算回路402の
演算入力(X)に供給する。これによって、演算回路4
02は (Y)=(A)・(X)+(B)=K12・SPD(t−
j−1)+K11・SPD(t−j) の演算値(Y)を出力する。そして、この演算値(Y)は次
のステップでレジスタR1およびR2に記憶される。こ
れにより、レジスタR1およびR2の内容は、 〔R1〕=〔R2〕=K12・SPD(t−j−1)+K
11・SPD(t−j) となる。 【0078】(10)次に、レジスタR2の内容、係数
K13、メモリSD0に記憶されている(j−1)時間前
の振幅データSPD(t−j−1)により、K13・SP
D(t−j−1)+〔R2〕の演算を行うため、まず、
前述のb−(7)のステップと同様にして振幅データS
PD(t−j−1)がメモリSD0から読出され、ラッ
チ101にラッチされる。 【0079】(11)次に、レジスタR2の内容をラッ
チ404に転送するため、前述のb−(8)のステップ
と同様にしてレジスタR2の内容K12・SPD(t−j
−1)+K11・SPD(t−j)がラッチ404へ転送
される。 【0080】(12)次に、係数K13を読出してK13・
SPD(t−j−1)+〔R2〕の演算を行うため、 ADR〔Kn〕:ADR〔K13〕 SL1 :SELECT(B) CTL :(Y)=(A)・(X)+(B) で示される内容の信号SL1,CTLがオペレーション
コードOPCとして、またアドレス情報ADR〔Kn〕
が制御信号出力レジスタ303から出力される。これに
よって、係数メモリ400から係数K11が読出されて演
算回路402の演算入力(A)に供給される。また、セ
レクタ401はラッチ101にラッチされている振幅デ
ータSPD(t−j−1)を選択して演算回路402の
演算入力(X)に供給する。これにより、演算回路40
2は (Y)=(A)・(X)+(B) =K13・SPD(t−j−1) +K12・SPD(t−j−1)+K11・SPD(t−
j) の演算値(Y)を出力する。そして、この演算値(Y)
は次のステップでレジスタR2に記憶され、このレジス
タR2を介してハイパスフィルタHPFに供給される。 【0081】(13)ローパスフィルタLPFにおける
最終ステップでは、レジスタR1の内容をメモリSD0
に書込み、次のサンプリング時刻(t+1)で使用する
ため、まずレジスタR1の内容「K13・SPD(t−j
−1)+K11・SPD(t−j)」が前述b−(8)の
ステップと同様にしてラッチ404に転送された後、演
算回路402に(Y)=(B)の演算を行なわせ、その
演算値「(Y)=K12・SPD(t−j−1)+K11・
SPD(t−j)」がメモリSD0に書込まれる。この
書込み動作は、 DLn :DL0 DLk :DLSD GP2 :“1” WR4 :“1”(WRITE) で示される内容のオペレーションコードOPCとメモリ
番号情報DLnが制御信号出力レジスタ303から出力
されることによって行なわれる。ローパスフィルタLP
Fの動作が終了すると次にハイパスフィルタHPFの動
作が行なわれるが、このハイパスフィルタHPFの動作
については説明を省略する。 【0082】次に、遅延時間間隔の粗い残響音RVD1
の形成動作について説明する。 c.残響音RVD1の形成動作 残響音RVD1を形成する場合、 (1)まず、ハイパスフィルタHPFのレジスタR4の
記憶データSPD(t−j)に係数K17を乗算し、その
乗算値K17・SPD(t−j)をレジスタR5に記憶さ
せるため、 RGn:R4 L1 :“1”(LATCH) で示される内容のラッチ制御信号L1およびレジスタ番
号情報RGnが制御信号出力レジスタ303から出力さ
れ、レジスタR4の内容SPD(t−j)がラッチ40
4に転送される。 【0083】(2)次に、K17・SPD(t−j)を演
算するため、 ADR〔Kn〕:ADR〔K17〕 SL1 :SELECT(C) CTL :(Y)=(A)・(X) で示される内容のセレクト制御信号SL1,演算制御信
号CTL,係数読出し用のアドレス情報ADR〔Kn〕
が制御信号出力レジスタ303から出力される。これに
より、係数メモリ400から係数K17が読出されて演算
回路402の演算入力(A)に供給される。また、セレ
クタ401はラッチ404にラッチされているデータS
PD(t−j)を選択して演算回路402の演算入力
(X)に供給する。これにより、演算回路402は (Y)=(A)・(X)=K17・SPD(t−j)の演
算値(Y)を出力する。この演算値(Y)は次のステッ
プでレジスタR5に記憶される。 【0084】(3)次に、メモリD1からx1時間前の
振幅データSPD(t−x1)を読出し、このデータS
PD(t−x1)とレジスタR11の現在値とを加算
し、その加算値を再びレジスタR11に記憶させるた
め、まず、 DLn :DL1 DLk :DLSD L3 :“1”(LATCH) L2 :“1”(LATCH) で示される内容のラッチ制御信号L3,L2と、メモリ
番号情報DLnおよびメモリ種別情報DLkが制御信号出
力レジスタ303から出力される。これにより、メモリ
D1に対応したアドレスカウンタAC(D1)の出力情
報ADR〔D1〕が振幅データSPD(t−x1)を読
出すための下位アドレス情報としてラッチ306にラッ
チされる。そして、この下位アドレス情報ADR〔D
1〕はアドレス情報出力回路309においてその上位に
メモリ番号情報DLnおよびメモリ種別情報DLkが付加
されて、データメモリ100に対してメモリD1のアド
レス情報DM・ADRとして出力される。これにより、
メモリD1からx1時間前の振幅データSPD(t−x
1)を読出され、ラッチ101にラッチされる。 【0085】(4)次に、この読出しデータSPD(t
−x1)とレジスタR11の現在値とを加算するため、
レジスタR11の内容がラッチ404に転送された後、 SL1 :SELECT(B) CTL :(Y)=(X)+(B) で示される内容のセレクト制御信号SL1および演算制
御信号CTLが制御信号出力レジスタ303から出力さ
れる。すると、セレクタ401はラッチ101にラッチ
されている振幅データSPD(t−x1)を選択した演
算回路402の演算入力(X)に供給する。これによ
り、演算回路402は (Y)=(X)+(B) =〔R11〕+SPD(t−x1) で示される演算値(Y)を出力する。この場合、レジス
タR11の内容は前回のサンプリング時刻(t−1)に
おける動作を終了した段階でクリアされている。このた
め、このステップ(4)における演算値(Y)はSPD
(t−x1)となる。この後、演算値(Y)はレジスタ
R11に転送されて記憶される。 【0086】(5)次に、メモリD1から振幅データS
PD(t−x1)を読出し、これに係数K18を乗算し、
さらにその乗算値K18・SPD(t−x1)とレジスタ
R5の内容「K17・SPD(t−x1)」との加算値を
レジスタR6に再び記憶させるため、まず前述のc−
(1)のステップと同様にしてレジスタR5の内容「K
17・SPD(t−j)」がラッチ404に転送される。 【0087】(6)次に、ラッチ101にラッチされて
いる振幅データSPD(t−x1)、ラッチ404にラ
ッチされているデータ「K17・SPD(t−j)」,係
数K18とにより、 (Y)=K18・SPD(t−x1)+K17・SPD(t
−j) の演算を行うため、 ADR〔Kn〕:ADR〔K18〕 SL1 :SELECT(B) CTL :(Y)=(A)・(X)+(B) で示される内容のセレクト制御信号SL1,演算制御信
号CTL、係数読出し用のアドレス情報ADR〔Kn〕
が制御信号レジスタ303から出力される。これによ
り、係数メモリ400から係数K18が読出されて演算回
路402の演算入力(A)に供給される。また、セレク
タ401はラッチ101にラッチされている振幅データ
SPD(t−x1)を選択して演算回路402の演算入
力(X)に供給する。これにより、演算回路402は (Y)=(A)・(X)+(B) =K18・SPD(t−x1)+K17・SPD(t−j) を出力する。そして、この演算値(Y)は次のステップ
でレジスタR6を介してメモリD1の現在時刻tに対応
したアドレスに書込まれる。この後、レジスタR6はメ
モリD2に系統の処理を行なうためクリアされる。 【0088】(7)次に、メモリD2〜D9の各系統に
関する処理が前述のc−(3)〜c−(6)のステップ
と同様にして行なわれる。そして、メモリD1〜D9の
各系統の処理を終了すると、レジスタR11には 【数4】 で表わされる残響音RVD1に関する情報が得られる。 【0089】次に、遅延時間間隔の密な残響音RVD2
の形成動作について説明する。 d.残響音RVD2の形成動作 残響音RVD2を形成する場合、 (1)まず、メモリMD0からy1時間前の振幅データ
RVD1(t−y1)を読出すため、 DLn :DL0 DLk :DLMD L3 :“1”(LATCH) L2 :“1”(LATCH) で示される内容のラッチ制御信号L3,L1と、メモリ
番号情報DLnおよびメモリ種別情報DLkが制御信号出
力レジスタ303から出力される。これにより、アドレ
ス情報出力回路309において前述のc−(3)のステ
ップと同様にしてメモリMD0に対するアドレス情報D
M・ADRが形成され、メモリMD0からy1時間前の
振幅データRVD1(t−y1)が読出される。そして、
このデータRVD1(t−y1)はラッチ101にラッチ
される。 【0090】(2)次に、ラッチ101にラッチされた
振幅データRVD1(t−y1)、レジスタR11の出力
データRVD1(t)、係数K30により、 K30・RVD1(t−y1)+RVD1(t) を演算し、その演算値をレジスタR12に記憶させるた
め、まず、レジスタR11の出力データRVD1(t)
がラッチ404に転送された後、 ADR〔Kn〕:ADR〔K30〕 SL1 :SELECT(B) CTL :(Y)=(A)・(X)+(B) で示される内容のセレクト制御信号SL1,演算制御信
号CTLおよび係数読出し用のアドレス情報ADR〔K
n〕が制御信号出力レジスタ303から出力される。こ
れにより、演算回路402には前述のc−(6)のステ
ップと同様にして係数K30が演算入力(A)に供給さ
れ、また、データRVD1(t−y1)が演算入力(X)
に供給される。これにより、演算回路402は (Y)=(A)・(X)+(B) =K30・RVD1(t−y1)+RVD1(t) の演算値(Y)を出力する。そして、この演算値(Y)
は次のステップにおいてレジスタR12に記憶される。 【0091】(3)次に、レジスタR12の内容「K30
・RVD1(t−y1)+RVD1(t)」に係数K29を
乗算するため、まずレジスタR12の内容がラッチ40
4に転送された後、 ADR〔Kn〕:ADR〔K29〕 SL1 :SELECT(C) CTL :(Y)=(A)・(X) で示される内容のセレクト制御信号SL1,演算制御信
号CTLと係数読出し用のアドレス情報ADR〔Kn〕
が制御信号出力レジスタ303から出力される。これに
より、演算回路402には係数K30が演算入力(A)に
供給され、また、データ「K30・RVD1(t−y1)+
RVD1(t)」が演算入力(X)に供給される。これ
により、演算回路402は (Y)=(A)・(X) =K29・{K30・RVD1(t−y1)+RVD
1(t)} で示される演算値(Y)を出力する。この演算(Y)は
次のステップにおいてレジスタR13に記憶される。 【0092】(4)次に、レジスタR13の内容とy1
時間前のデータRVD1(t−y1)とを加算し、その加
算値をレジスタR13に再び記憶させるため、前述のd
−(1)のステップと同様にしてメモリMD0からy1
時間前のデータRVD1(t−y1)が読出されてラッチ
101にラッチされる。この後、レジスタR13の内容
「K29・{K30・RVD1(t−y1)+RVD
1(t)}」がラッチ404に転送された後、 SL1 :SELECT(B) CTL :(Y)=(B)+(X) で示される内容のセレクト制御信号SL1,演算制御信
号CTLが制御信号出力レジスタ303から出力され
る。これにより、演算回路402は (Y)=(B)+(X) =RVD1(t−y1)+K29・{K30・RVD1(t−y1)+
RVD1(t)} で示される演算値(Y)を出力する。この演算(Y)は
次のステップにおいてレジスタR13に記憶され、残響
音情報RVD2Aとして出力される。 【0093】(5)次に、レジスタR12の内容「K30
・RVD1(t−y1)+RVD1(t)」をy1時間遅れ
たサンプリング時刻(t+y1)で使用するため、レジ
スタR12の内容がメモリMD0の現在時刻tに対応し
たアドレスに書込まれる。 (6)この後、y1時間間隔よりさらに密な残響音RV
2B,RVD2Cが同様にして形成される。 【0094】なお、図1,図2(図3,図4)の実施例
ではバンドパスフィルタを設けているが、これは必要に
応じて省略するようにしても良い。また、図15,図1
6の機能ブロック図に示すように、メモリD10の出力
データをハイパスフィルタHPF、バンドパスフィルタ
BPF,ローパスフィルタLPFにより3系列の周波数
帯域に分け、第1残響音形成部2において各周波数帯域
別に異なる残響音を形成するようにしてもよい。これ
は、制御プログラムの内容を変更するのみで容易に実現
できる。図16は図15における第1残響音形成部2及
び第2残響音形成部3の詳細を示すものである。 【0095】 【発明の効果】 以上の通り、この発明によれば、入力
信号に対する残響処理は複数の遅延ユニット処理を縦列
に行うことかなっていて、各遅延ユニット処理は、入力
信号に対して所定の演算を行い、この演算結果を所定時
間遅延して出力信号を出力し、該出力信号に帰還係数を
演算して入力信号に加算するものであって、複数の遅延
ユニット処理の遅延時間は後段になるほど短くするもの
であるので、後段の遅延ユニット処理においては、前段
の遅延ユニット処理で付加された所定遅延時間間隔の複
数の残響音における各遅延時間間隔の間で、それよりも
密な所定遅延時間間隔で更に複数の残響音が付加される
ことになり、遅延時間間隔が密でかつ複雑な残響音を付
加することができる、という優れた効果を奏する。加え
て、これらの複数の遅延ユニット処理による残響処理
は、共通装置を用いて時分割的に行うので、複数の遅延
ユニット処理による残響処理を、簡単な構成で時分割的
に同時処理することができるという優れた効果を奏す
る。また、各遅延ユニット処理毎の遅延時間を設定する
遅延時間情報の可変設定により、夫々の遅延時間を任意
に変更して、残響特性を簡単かつ自由に変更することが
できるという効果を奏する。
DETAILED DESCRIPTION OF THE INVENTION [0001] BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a reverberation adding device.
In particular, reverberant sound that can add complex reverberant sound
Regarding the addition device. [0002] 2. Description of the Related Art Japanese Unexamined Patent Publication No. 55-157796
The self-delayed output signal to the input side with a specified feedback ratio.
Reverberation addition consisting of delay circuit with feedback loop for feedback
Techniques for adding reverberation effects using units are shown
ing. In that case, the input signal is proportional to the delay time of the delay circuit.
Cycles repeatedly through the feedback loop at the time intervals of interest,
Attenuation characteristics determined according to the delay time and feedback ratio
Reverberant sound is generated. In this publication, the delay time
Two reverberation adding units with different
It is also shown. In that case, at regular time intervals
That the two regular reverberations generated are mixed
Become. [0003] DISCLOSURE OF THE INVENTION Problems to be Solved by the Invention
In addition, there are two regular systems that are generated at regular time intervals.
Delay time, because different reverberations are simply mixed
It was difficult to obtain the dense and complex reverberation of. This departure
The reason is that the delay time interval is
With reverberation that can add dense and complex reverberation
It is intended to provide an additional device. [0004] Means for Solving the Problems Reverberation Sound According to the Present Invention
The add-on device is, for example, as shown in FIG. 3 and FIG.
Input signals by performing a number of delay unit processes in cascade.
Reverberation processing is performed on the signal and each delay unit
The processing performs a predetermined calculation on the input signal, and this calculation
The result is delayed by a predetermined time and an output signal is output.
To calculate the feedback coefficient and add it to the input signal.
Therefore, the delay time for processing multiple delay units is
This reverberation process should be
Depending on the configuration, multiple delay units can be processed using a common device.
It is characterized in that it is done in a time-division manner.
You. That is, for example, as shown in FIG. 1 and FIG.
For the input signal that is input at every predetermined sampling period
To set the desired time delay,
Data memory (100) that can be used separately for each area
A coefficient memory (4 that stores the feedback coefficient for each unit processing)
00), each delay unit processing, and each delay
A professional who executes the processing that realizes the cascade connection of unit processing.
A program memory (300) for storing a program,
Set the delay time for each delay unit process and set the delay time information.
A delay time information generating means (20) for generating
Delay time information supplied from the delay time information generating means (20)
Output signal required by each delay unit processing according to the report,
And read the input signal from the data memory (10).
Information generating means (3) for generating address information for
09) and the delay provided by the data memory (100)
Unit processing input signal, output signal, and feedback coefficient
Using an arithmetic unit (401,
402, 403, 404) and the program memory (30
0), according to the program supplied from
The input signal and the output signal of the extension unit processing are calculated by the calculating means (40
1, 402, 403, 404), and
Address information generating means (309) and calculating means (4
01, 402, 403, 404) to operate in a time-sharing manner
By doing so, a series of reverberation processing according to the program is performed.
Equipped with a control unit (303) that operates in one sampling cycle
With these, multiple delay unit processing can be implemented in common.
The reverberation processing is performed by performing
You. [0005] [Operation] One delay unit processing is applied to the input signal.
Perform a predetermined calculation by delaying the calculation result for a predetermined time.
Output the output signal, calculate the feedback coefficient to the output signal, and input it.
It is to be added to the force signal. Thus, one delay unit
In knit processing, when the input signal corresponds to the delay time,
It circulates repeatedly at intervals and responds to the delay time and feedback coefficient.
A regular reverberant sound is added with the characteristics that are determined. Reverberation
The logic is to perform such multiple delay unit processing in cascade.
This is where each delay unit process is processed.
Is set so that the delay time
ing. Therefore, in the latter delay unit processing,
Predetermined delay time interval added in the delay unit processing in the previous stage
Between each delay time interval in multiple reverberations of
More reverberant sounds are added at a very close predetermined delay time interval.
Will be. Figure showing an example of characteristics in that case
11 and the delay time of the preceding delay unit processing
Is x1, and the delay time of the subsequent delay unit processing is y1
It is. In this way, delay time intervals are tight and complex residual
A sound can be added. In addition, these multiple
The reverberation processing by the delay unit processing is performed by the data memory (1
00), coefficient memory (400), program memory (3
00), delay time information generating means (20), address information
Generating means (309), computing means (401, 402, 40
3, 404) and the control means (303)
Since it is used in a time-divisional manner, it can process multiple delay units.
Simultaneous reverberation processing by time division with a simple configuration
It has an excellent effect that it can. Also each delay
Allows delay time information to set the delay time for each unit processing
By changing the setting, each delay time can be changed arbitrarily and the reverberation
The effect that the characteristics can be changed easily and freely
To play. [0006] DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENT An embodiment of the present invention will now be described with reference to the accompanying drawings.
Let me explain the example in detail. 1 and 2 are according to the present invention
A block diagram showing an embodiment of a reverberation sound adding device, FIG.
FIG. 4 is a functional block diagram functionally showing the configuration of this embodiment.
Figures 5 and 6 show the desired digital memory.
Basic of delay circuit for generating reverberation sound with delay time
FIG. 3 is a block diagram illustrating a configuration. For convenience of explanation, first, FIG.
And the basic configuration and operation of the delay circuit shown in FIG.
Explain, and then reverberation by the functional block diagram of FIG. 3 and FIG.
The process of sound formation will be explained, and then the actual process shown in FIGS.
A specific configuration and operation of the embodiment will be described. [0007] −−Basic configuration of delay circuit using digital memory−− With a predetermined sampling period T0 for the digital memory
Amplitude data SPD of input musical tone signals sampled sequentially
If (t) is stored sequentially as time passes,
The amplitude data SPD (t- stored at time (ti)
To read i) at time t after i hours have passed,
Address information ADR (t) at the time t is
The address interval ΔADR changed during i time is calculated as
Add or subtract as shown in formula 1) or formula (1-2), and
The address information ADR (t-i) at the time (t-i)
Obtain this address information ADR (t-i) digitally
It should be given to the address input of the memory.   ADR (t-i) = ADR (t) + ΔADR (1-1)   ADR (t-i) = ADR (t) -ΔADR (1-2) As a result, the data is stored at the time (ti).
The amplitude data SPD (ti) is expressed by the following equation (1-3).
The data can be read out after a delay of i hours.   i = ΔADR × T0 (1-3) That is, the address interval Δ corresponding to the desired delay time i
If ADR is given as delay time information, time (ti)
Delay the amplitude data SPD (t-i) stored in
Can be read out. In this case, according to the above equation (1-1)
At time (t-i), the address information ADR (t-
i) is obtained by calculating the amplitude data SPD (t) with time.
Sequentially from higher address to lower address
It is applied when storing. Also, according to formula (1-2)
The amplitude data SPD (t) from the low address to the high
It is applied when the data is sequentially stored to the order address. Therefore, the delay circuit according to the present invention is
Digital memory for sequentially storing width data SPD (t)
DM and reading indicated by the above equation (1-1) or equation (1-2)
Address forming the address information ADR (t-i)
Of the address information generation circuit AG and the address interval ΔADR
Delay length day generated as delay time information DLD
A memory DDM is basically provided. FIG. 5 is a delay circuit based on such an idea.
2 is a block diagram showing an example of a digital memory D
M, address information generation circuit AG, delay length day
A data memory DDM and a multiplier M are provided. Digital
Mori DM, as shown in the time chart of FIG.
Sampling at a predetermined period T0 according to the clock pulse φ
Amplitude data SPD (t) is assigned to each address of “0” to “9”
From high-order address "9" to low-order address "0"
Are stored in order, such as a RAM (random memory).
Access memory) and shift register. The amplitude data in this digital memory DM is
Write address and read address of the data SPD (t)
The address is specified by the address information generation circuit AG.
It is. That is, the address information generation circuit AG
Sampling time with counter AC and adder AD
Address information AD whose value is updated with the update of
R (t), ADR (t + 1), ADR (t + 2), ...
ADR (t + i) is formed and the above-mentioned equation (1-1) is used.
Read address information ADR (t-i) represented by
Address information D of the digital memory DM.
Output as M ・ ADR. That is, the address count
The data AC counts the clock pulse φ of the period T0, and
The count value of the amplitude at the current sampling time t
Write address information ADR (t) of data SPD (t)
And outputs this information ADR (t) to the adder AD.
Pay. On the other hand, the delay length data memory DDM
Time information DLD (ΔADR corresponding to desired delay time i
= I / T0) to the other summing input of the adder AD.
Then, the adder AD is set at the sampling time t.
First, perform the operation represented by the above equation (1-1)
Reads the calculated value of amplitude data SPD (t-i) i hours ago
Output as address information ADR (t-i).
The output information ADR (t) of the address counter AC is kept as it is.
Write amplitude data SPD (t) at current time t
The address information is output as ADR (t). By this, from the digital memory DM
Is stored at time t (i) before time i at time t
When the amplitude data SPD (t-i) thus read is read,
The amplitude data SPD (t) at the current time t is added to
Stored in the address specified by the reply information ADR (t)
You. In this way, i time delay from the digital memory DM
And the amplitude data SPD (t-i) read by the multiplier
In M, the amplitude level control coefficient K is multiplied to obtain the level.
Controlled. Then, the amplitude data K whose level is controlled
・ SPD (t-i) can be analyzed by DA converter (not shown).
Converted to log signal. This kind of operation
It is carried out every time. As a result, i hours from the input musical sound
A delayed reverberation can be generated. In this case, 1
Multiple delay time information that differ in one sampling time
If DLD is sequentially given in time division, the same sampling
Information about multiple reverberations with different delay times
You can get out. Therefore, in the embodiment of the present invention,
The delay circuit shown in FIG. 5 has a distance to a reflector such as a surrounding wall.
Amplitude level and delay time vary randomly depending on
Used to create early reflections with complex reverberation characteristics
You. FIG. 6 is a block diagram showing another example of the delay circuit.
Therefore, the delay circuit of this example is the address information generating circuit A
Preset down counter for G address counter AC
Interface. And for the address counter AC
Predetermine the delay time information DLD corresponding to the desired delay time i.
Set and down from this preset value (DLD)
The address counter AC.
Address information ADR (t), ADR (t +
1), ... ADR (t + i) repeat cycle is delay time
To match the delay time specified by the information DLD
And stores the amplitude data SPD (t) at the current time t
Amplitude data stored i hours before the address to be
The data SPD (t-i) is read out. In other words, the digital memory DM is shown in FIG.
If it consists of 10 words like
Since the value is "10", it was delayed by a maximum of 10.T0 hours.
Amplitude data SPD (t-10) can be read.
However, if the desired delay time i is, for example, 6 · T0,
The output information DM / ADR of the address counter AC is 5,
Repeat 4, 3, 2, 1, 0, 5, ... 0
Specify the range of addresses used in Digital Memory DM
The delay time is reduced according to the desired delay time i (i = 6 · T0)
Amplitude data SPD sampled at the present time t
The address to which (t) is written is exactly i hours ago
To the address where the amplitude data SPD (ti) of
The amplitude data SPD (t) at the current time t.
Amplitude data written i hours before the address to be written
The SPD (t-i) is read out. this
Therefore, in the delay circuit of FIG. 6, the address counter A
The output information DM / ADR of C changes from “0” to “9”
Signal is detected, and the delay length is detected by this detection signal.
Time information DLD output from the data memory DDM
Value detection times to preset the address counter AC
A path MXD is provided. On the other hand, the delay circuit of FIG.
The amplitude data SPD (t) sampled at
The data is not written to the digital memory DM as it is.
The width data SPD (t-i) is returned at a predetermined ratio, and the
The feedback value K · SPD (ti) and the current time t
Write the added value with the pulled amplitude data SPD (t)
It is a thing that I chose. For this purpose, a digital memo
Amplitude data SPD (t
-I) is multiplied by the coefficient K to obtain the data of the digital memory DM.
Multiplier M that feeds back to the input side and output data of the multiplier M
K · SPD (t−i) and amplitude data SPD at current time t
(T) is added, and the added value is “SPD (t) + K · S
PD (t-i) ”is input to the digital memory DM data
And an adder AD for supplying Therefore, in the delay circuit configured as above,
In the case where the desired delay time i is 6 · T0,
The output information DM of the counter AC is stored in the dress counter AC.
-ADR changes from "0" to the maximum value ("9" in this example)
When it becomes, DLD = 6-1 = 5 The delay time information DLD represented by is preset.
As a result, the address counter AC is
As the time goes on (every sampling period T0),
4,3,2,1,0,5, ... 0
The address information DM / ADR is repeatedly output.
You. And at each sampling time, the address
Information is stored in the address specified by DM / ADR
The amplitude data SPD (t-i) i hours before is read first.
Then, for the same address as this read address, i
Amplitude data SPD (t-i) before time and current time t
The sampled amplitude data SPD (t)
The data added by "SPD (t) + K.SPD (t-
i) ”is written. Therefore, in the delay circuit configured as above,
Is the amplitude data SP at the current sampling time t
Write address of D (t) and amplitude data SP i hours ago
The read address of D (t-i) is the same and i time
The previous amplitude data SPD (t-i) was fed back.
The reverberation sound whose amplitude level and delay time change regularly.
Related data can be retrieved. Therefore, this departure
In the embodiment of the present invention, the delay circuit shown in FIG.
Used to generate a reverberant sound with a regular reverberation characteristic
ing. Note that the amplitude data SPD is multiplied by the coefficient K.
Finally, the final reverberation data
Since the level becomes larger than the width data SPD,
Actually, the data about this reverberant sound remains through the attenuator.
Guided to the output part of the sound. In this case, the coefficient K is set to "-1 <
If K <0 ”, no attenuator is required. Next, the functional block diagram shown in FIG. 3 and FIG.
The reverberation sound formation process will be explained using. --- Reverberation process- First, the reverberation sound formation process in the embodiment of FIG.
Early reflections with randomly varying levels and delay times
And the amplitude level following this early reflection
And reverberation with regular delay time.
It is roughly divided into two. And here these early reflections
Tones and reverberant sounds are formed by delay circuit series independent of each other.
It is configured to: In FIG. 3, the input musical tone signal
Amplitude data SPD sampled at a predetermined cycle T0
(T) is an initial reflected sound forming unit 1 which is a first delay circuit series
Supplied to The initial reflected sound forming section 1 has the delay shown in FIG.
It uses a circuit and has a memory address of 2048 words.
Memory D0 and the current sampling time t
I having different delay times read from the memory D0
n hours (n = 1 to 10: this n distinguishes n different i)
It was noted that it is a subscript for not a coefficient
I) Previous 10 types of amplitude data SPD (t-i1), S
PD (t-i2), ... to SPD (t-i10)
Multiply the desired amplitude level control coefficient Kn (n = 1 to 10)
And the multipliers M1 to M10
Output value of K1 · SPD (t-i1), K2 · SPD
(T-i2), ... Sum of K10 SPD (t-i10) (Equation 1) And the sum is calculated as the instant of the initial reflected sound at the current time t.
Composed of an adder SUM which outputs as a value ECH (t)
Have been. The adder SUM is represented by the above equation 1.
Temporarily stores the sum total until the next sampling time (t + 1)
It has a built-in register R0. The first of such a configuration
Sampling at the current time t in the first reflected sound forming unit 1
The amplitude data SPD (t) of the input musical sound thus input is stored in the memory D
Corresponds to the current time t out of the storage address of 2048 words of 0
It will be written to the address. Next, the register in the adder SUM
At the last sampling time (t-1),
Sum total (Equation 2) Is stored, the contents of this register R0 are reset.
Is set. Next, 10 kinds of amplitude data before in time
Delay of SPD (t-i1) to SPD (t-i10)
Is the amplitude data SPD (t-i1) at time i1 stored in the memory D0?
Read from the memory D0 corresponding to the delay time i1.
The dress is specified and the sample is sampled 1 hour before the address.
The ringed amplitude data SPD (t-i1) is read out.
You. In this case, the amplitude data SPD (t−i
The address for reading 1) is calculated by the equation (1-1) described above.
Required. The delay time i1 thus read
The amplitude data SPD (t-i1) is input to the multiplier M1.
The first reflected sound having the delay time i1 in the multiplier M1
It is multiplied by the coefficient K1 for amplitude level control corresponding to ECH1.
It is. Then, the multiplication value K1.SPD (t-i1) is added.
It is input to the calculator SUM and added with the current value of register R0.
And the added value is stored again in the register R0. this
In this case, the contents of the register R0 is the amplitude data at the current time t.
It was reset immediately after writing SPD (t).
Therefore, the contents written in the register R0 at this time is the data K1.
・ SPD (t-i1). In this way, when the delay
Read processing of amplitude data SPD (t-i1) of interval i1 and
And the level control process ends, that is, the first reflected sound E
When the processing for CH1 is completed, the second delay time i2
2 Amplitude data SPD (t-i2) regarding the reflected sound ECH2
Reading processing and level control processing of the first reflected sound ECH
It is performed in the same manner as the formation process of 1. As a result, addition
In the register R0 in the instrument SUM, the first reflected sound ECH1
Related data K1 SPD (t-i1) and second reflected sound EC
Value added with data K2 · SPD (t-i2) concerning H2
"K1 · SPD (t-i1) + K2 · SPD (t-i2)"
Is stored. Such processing is performed by the third reflected sound ECH3.
The ten reflected sound ECH10 is similarly processed. this
As a result, the first reflected sound ECH1 to the tenth reflected sound is stored in the register R0.
Amplitude data K1 · SPD (t-i) related to sound ECH10
1) ~ K10 · SPD (t-i10) sum [Equation 1] is stored. And the sum shown in this number 1 is
First reflection sound ECH1 to 10th reflection sound ECH10
Switch circuit SW as the instantaneous value ECH (t) of the reflected sound
Is output via. The switch circuit SW is shown in Table 1 below.
As shown, the initial reflection sound within one sampling period T0
Select the output of the register R0 at the formation processing time Ta
At the time Tb after the formation process of the initial reflected sound.
The output of the second delay circuit series is selectively output. [0023]This switch circuit SW selects and outputs
The information ECH (t) stored in the DA converter is not shown.
Converted to an analog signal and then added to the speaker,
It is pronounced as an early reflection of the tones. Therefore,
Delay time of the first reflected sound ECH1 to the tenth reflected sound ECH10
in and the coefficient Kn for amplitude level control are different
As shown in FIG. 8, the amplitude level and delay
It is possible to obtain an early reflection sound in which the delay time changes randomly.
Wear. Here, the sampling period T0 of the input musical tone is 0.
Amplitude at the current time t when 04 ms (25 kHz)
From the write address ADR (t) of the data SPD (t)
For example, the amplitude stored at an address 1626 words away
When the data SPD (t-1626) is read, the delay
Total time i is i = 1626 × 0.04≈65 ms And the initial reflected sound EC that is about 65 ms later than the input musical sound.
Hn can be generated. On the other hand, the input musical sound is sampled at a predetermined cycle T0.
Amplitude data SPD (t) after
Is also supplied to the second delay circuit sequence that forms the reverberation of
You. The second delay circuit series is the amplitude data SPD.
(T) is delayed by j hours and supplied to the bandpass filter BPF.
From the delay memory D10 to be supplied, and this memory D10
Of the supplied amplitude data SPD (t−j) of delay time j
Low-pass filter that passes only predetermined frequency band components
Digit comprising LPF and high pass filter HPF
Tal type bandpass filter BPF and the bandpass filter
Amplitude data SPD (t-j) passed through the filter BPF
Based on reverberation sound data RVD with coarse delay time intervals1Form
A first reverberation sound forming section 2 having a comb filter configuration
Sound data RVD1Reverberation sound with close delay time intervals based on
Data RVDTwoOf the all-pass filter configuration that forms the
2 and reverberation sound forming section 3. Reverberation sound formation
Details of parts 2 and 3 are shown in FIG. In such a configuration, the current time t
The sampled amplitude data SPD (t) is stored in the memory D1.
The current time t out of the storage address of 2048 words in 0
Is written in the address ADR (t) corresponding to. next,
The amplitude data SPD (t) stored in the memory D10
Then, in order to read the data SPD (t−j) j hours ago,
The address of the memory D10 corresponding to the delay time j is specified.
The amplitude data sampled j hours before the address.
The data SPD (t-j) is read. In this case, j hours
Address for reading previous amplitude data SPD (t-j)
The same as in the case of the formation of the early reflection sound, the above-mentioned (1-
It is calculated by the formula 1). The delay time j is the memory D1
Any value from 0 to 0 depending on the size of the address
Can be set independently of the initial reflection sound setting.
However, in the case of general reverberation, the 10th reflected sound ECH10
Setting slightly larger than the delay time i10 (j> i10)
Have been. In this way, the data is read from the memory D10.
Amplitude data SPD (t-j) with delay time j is low-pass
It is input to the multiplier M11 of the filter LPF and
Is multiplied by a predetermined coefficient K11. Then, the multiplication value K
11.SPD (t-j) is temporarily stored in register R1
You. Next, is the memory SD0 having a storage address of 1 word?
Amplitude written 1 sampling time (1 · T0) before
The data SPD (t-j-1) is read out, and this data S
A predetermined coefficient K12 is applied to the multiplier M12 in PD (t-j-1).
Is multiplied by. Next, the multiplication value output of the multiplier M12
Temporary storage in K12 SPD (t-j-1) and register R1
The amplitude data K11.SPD (t-
j) and the added value “K12 · SPD (t−j
-1) + K11.SPD (t-j) "is again in the register R1
Is temporarily stored in the register R2 as well as in the register R2.
It is. Next, one sampling time (1.
Amplitude data SPD (t-j-1) written before T0)
Is read again from the memory SD0, and this data SPD
A predetermined coefficient K13 is added to (t-j-1) in the multiplier M13.
Are multiplied. Then, this multiplication value K13.SPD (t-
j-1) is the value temporarily stored in the register R2 "K12 SPD (t-j-1) + K11 SPD (t-
j) " And the added value "K12 SPD (t-j-1) + K11 SPD (t-
j) + K13 SPD (t-j-1) " Are temporarily stored again in the register R2. Then register
Value temporarily stored in R1 "K12 SPD (t-j-1) + K11 SPD (t-
j) " Is used in the next sampling period (t + 1),
Value "K12.SPD (t-j-1) + K11.SPD (t
-J) "is written to the memory SD0. Such operation is performed in each sampling cycle T0.
The low pass filter LPF
From the register R2, the high frequency component of a predetermined band is removed j
The amplitude data SPD (t-j) before time is output.
The amplitude data SPD (t-j) is a high pass filter HPF.
Sent to Then, in the high pass filter HPF,
Similar to the case of the -pass filter, the amplitude data j hours ago
It is possible to remove low frequency components in a predetermined band from the data SPD (t-j).
Done. That is, the register of the low pass filter LPF
The output data SPD (t-j) of the star R2 is the multiplier M14.
Is input to the multiplier M14 and a predetermined coefficient K14
Is multiplied by. Then, the multiplication value K14.SPD (t-
j) is temporarily stored in the register R3. Next, one word
One sampling from memory SD1 with memory address
Amplitude data SPD (t- written before the interval (1 · T0)
j-1) is read, and this data SPD (t-j-1) is read.
Is multiplied by a predetermined coefficient K15 in the multiplier M15.
Next, the multiplication value K15 · SPD obtained from the multiplier M15
(T-j-1) is j temporarily stored in the register R3.
Amplitude data K14 · SPD (t-j) before time is added
And the added value "K14 SPD (t-j) + K15 SP
D (t-j-1) "is temporarily stored in the register R3.
Both are temporarily stored in the register R4. Next time
Written 1 sampling time (1 · T0) before time t
Data SPD (t-j-1) from the memory SD1 again
The data is read and the read data SPD (t-j-1) is stored.
The constant coefficient K16 is multiplied in the multiplier M16. Soshi
This multiplication value K16 SPD (t-j-1) is registered in the register
The value “K14 · SPD (t−j)” temporarily stored in R4
+ K15 · SPD (t-j-1) "is added and the addition is made.
value K16 ・ SPD (t-j-1) + K14 ・ SPD (t-j)
+ K15 ・ SPD (t-j-1) Is temporarily stored in the register R4. Next, register R3
The value temporarily stored in "K14 SPD (t-j) + K"
15 · SPD (t-j-1) ”for the next sampling cycle
Since it is used at (t + 1), this value “K14 · SPD (t
-J) + K15.SPD (t-j-1) "is memory SD1
Is written to. Such an operation is performed every sampling cycle T0.
The high pass filter HPF
When the low frequency component in the predetermined band is removed from the register R4 at j
The immediately preceding amplitude data SPD (t-j) is output. What
The register R1 of the low pass filter LPF is
After writing the contents of the memory to the memory SD0, the next sample
High-pass filter HPF
Can be shared with the register R3. Like this
To remove low frequency components and high frequency components in the specified band.
The amplitude data SPD (t−j) j hours before is the first reverberation sound.
It is input to the forming unit 2. First reverberation sound shown in detail in Fig. 4.
In the forming unit 2, the delay time of the comb filter configuration with different delay times is
Three extended circuits 2A, 2B, 2C are provided in parallel.
You. Three delay circuits 2A, 2B and 2C are provided in parallel
The frequency characteristics of the delay circuit with comb filter
In the case of Germany, it is wavy as shown by symbols A, B, and C in FIG.
This is because it is flattened. Sand
The three delay circuits 2A, 2B, 2C having different delay times
By installing in parallel, the overall frequency characteristics
It can be flattened as indicated by symbol D in FIG. This
, The degree of flattening increases the number of delay circuits connected in parallel.
The better you do it, the better. In this embodiment, the delay time of the delay circuit 2A is
Is the longest, followed by the delay time of the delay circuit 2B,
The delay time of the circuit 2C is set to be the shortest. Soshi
Therefore, the delay circuits 2A, 2B and 2C have different delay time settings.
However, the configurations are all the same. Therefore, in the figure
For the circuits 2B and 2C, a multiplier and a register are used.
Only the delay circuit 2A
This is illustrated in detail. First reverberation formation with such a configuration
In part 2, j that has passed through the bandpass filter BPF
For the amplitude data SPD (t−j) before time, first the multiplier
In M17, the amplitude level control coefficient K17 is multiplied.
You. Then, the multiplication value K17.SPD (t-j) is multiplied.
It is temporarily stored in the register R5 in the device M17. Then 2
X1 hour in memory D1 with 048 word storage address
Read the amplitude data SPD (t-x1) written previously.
Therefore, the address of the memory D1 corresponding to the delay time x1 is
It is specified. As a result, x1 hour before memory D1
The amplitude data SPD (t-x1) is read. Soshi
The amplitude data SPD (t-x1) is added to the adder SUM.
To the other memory D in this adder SUM.
Output data of 2, D3 and memo of delay circuits 2B, 2C
The output data of D4 to D6 and D7 to D9 are added to
It is temporarily stored in the register R11 in the adder SUM. This
In the case of, the read operation of the memories D1 to D9 is the memory D1.
It is supposed to be done in a time-sharing sequence from D9 to D9.
During the read operation of the memory D1, whether the other memories D2 to D9 are used.
No data is output. Therefore, the adder SU
Whether the content written to the register R11 in M is the memory D1
It becomes the data SPD (t-x1) read from the data. On the other hand, the amplitude data read from the memory D1
The data SPD (t-x1) is applied to the amplitude level in the multiplier M18.
Input side of memory D1 after being multiplied by coefficient K18 for control
Be returned to. Then, this multiplication value K18.SPD (t-
x1) is temporarily stored in the register R5 at the current time t.
The added data K17 · SPD (t−j) is added and the addition is made.
Arithmetic value K17 ・ SPD (t-j) + K18 ・ SPD (t-x1) Is temporarily stored in the register R6. Next, register R6
Amplitude data “K17 · SPD (t−j) + K” stored in
18 SPD (t-x1) "is the amplitude data S x1 hour before.
The same address as the address where PD (t-x1) was stored
Written in reply. After this, the contents of register R6 are reset.
Is set. To reset the contents of register R6,
This register R6 is processed by the system of the memory D2 in the next stage.
This is because it is also used for. In this way, the processing of the system of the memory D1
When finished, next, the processing of the system of the memory D2 is performed similarly.
Done. That is, it has an address of 2048 words
Amplitude data SPD written in memory D2 x 2 hours ago
Since (t-x2) is read, the memo corresponding to the delay time x2
The address of D2 is designated. This allows the memory
Amplitude data SP sampled x2 hours before D2
D (t-x2) is read. And this amplitude data
SPD (t-x2) is a register R in the adder SUM
11 contents (contents read from the memory D1) SPD
(T−x1) and the added value “SPD (t−x1
1) + SPD (t-x2) "is temporarily stored in the register R11.
Is done. On the other hand, the amplitude data S read from the memory D2
PD (t-x2) controls the amplitude level in the multiplier M19.
After being multiplied by the control coefficient K19, it is input to the memory D2.
Will be returned. Then, the multiplication value K19.SPD (t-x
2) is the value K17 · SP temporarily stored in register R5
D (t-j) is added and the added value "K17.SPD"
(T−j) + K19 · SPD (t−x2) ”is the register R
6 is temporarily stored. The data stored in this register R6
Data "K17 ・ SPD (t-j) + K19 ・ SPD (t-x)
2) ”stores the data SPD (t-x2) of x2 hours ago.
It is stored at the same address as the previously stored address. this
After that, the content of the register R6 is reset. Next, the processing of the system of the memory D3 is performed by the memory D.
It is carried out in the same manner as the processing of the second system. Therefore, the memo
When the processing of the system of D1 to D3 is completed, the memory is
Assuming that the delay time of the D3 system is x3, the register R11
The contents stored in SPD (t-x1) + SPD (t-x2) + SPD (t-
x3) And the contents stored in the memory D3 are K17 ・ SPD (t-j) + K20 ・ SPD (t-x3) Becomes Such processing is performed in the delay circuits 2B and 2C.
Is done in the same way. Therefore, the memory D in the delay circuit 2B
The delay time of each system of 4, D5, D6 is x4, x
5, x6, and memories D7 and D in the delay circuit 2C
The delay time of each system of 8 and D9 is x7, x8, x9 respectively.
Then, all the processes of the delay circuits 2A to 2C are completed.
The contents of register R11 at the stage are (Equation 3) Becomes As a result, as shown in FIG. 10, following the initial reflected sound.
Coarse delay time intervals, and amplitude levels and delays
A reverberant sound whose time changes regularly is obtained. FIG.
At 0, the delay circuit 2 has a complicated time relationship.
The reverberation sound only for A is shown. As above
Reverberation sound data RVD with coarse delay time intervals formed by
1Is input to the second reverberation sound forming unit 3. In the second reverberation forming section 3 shown in detail in FIG.
Is the delay of an all-pass filter configuration with flat frequency characteristics.
The extension circuits 3A, 3B, 3C are provided in series. Three
The delay circuits 3A, 3B, 3C of are provided in series are
Reverberation sound data RV obtained in the first reverberation sound forming unit 2.
D1Reverberant sound data RVD with a closer delay time intervalTwoForm
To do that. Therefore, in the second reverberation sound forming section 3,
The delay time of each delay circuit 3A, 3B, 3C
Delay of each delay circuit 2A, 2B, 2C in the sound formation unit 2
It is set shorter than the total time. Then, each delay circuit 3
A, 3B and 3C differ only in the setting of the delay time and
The success is all the same. Therefore, in the figure, the delay circuit
Numbers of multiplier, register and memory for 3B and 3C
The detailed configuration is shown only for the delay circuit 3A.
doing. First, it is output from the second reverberation sound forming section 2.
Reverberation data RVD1Is the register R12 of the delay circuit 3A
This data RVD is supplied to1Register R12
Have a storage address of 512 words before it is stored in
Data RVD written to memory MD0 y 1 hour ago1
Since (t−y1) is read, it corresponds to the delay time y1 time.
The address of the memory MD0 is designated. by this,
RVD written from memory MD0 y1 hour ago1(T-
y1) is read. Next, this data RVD1(Ty
1) is a function for controlling the amplitude level in the multiplier M30.
The number K30 is multiplied, and the product value K30RVD1(Ty
1) is fed back to the input side of the memory MD0. And next
This feedback data K30 ・ RVD1(T-y1) and first reverberation
Data RVD supplied from the sound forming unit 2 at the current time t1
(T) is added, and the added value "RVD1(T) + K3
0 · RVD1(T-y1) "is temporarily stored in the register R12.
Is done. Next, the memory MD0 corresponding to the delay time y1
Address is specified again, y1 hours before memory MD0
Data written in RVD1(T-y1) is read again
Read data RVD1(T-y1) is the register R
It is temporarily stored in 13. Next, write temporarily to register R12.
The stored data "RVD1(T) + K30 ・ RVD1(T-
y1) "and the constant K29 for controlling the amplitude level are multiplied by the multiplier M2.
Multiplied at 9. And the multiplication value K29 ・ {RVD1(T) + K30 ・ RVD1(T-y1)} Is the value RVD temporarily stored in the register R131(T
-Y1) and the added value RVD1(T-y1) + K29 ・ {RVD1(T) + K30 ・ R
VD1(T-y1)} Is temporarily stored in the register R13. Then register R
The data “RVD1(T) + K3
0 · RVD1(T−y1) ”is delayed by y1 hours from the current time t
Used at sampling time (t + y1)
Therefore, the data "RVD1(T) + K30 ・ RVD1(Ty
1) ”is the data RVD 1 hour before y1(T-y1) is remembered
It is written to the same address that was stored. In this way, the processing by the delay circuit 3A
When finished, the data stored in register R13 RVD1(T-y1) + K29 ・ {RVD1(T) + K30 ・ R
VD1(T-y1)} Is sent to the delay circuit 3B, and the delay circuit 3B rotates
The same processing as in the case of the road 3A is performed. Where delay
RVD the output data of the circuits 3A, 3B, 3C2A, RVD
2B, RVD2C, The delay time of the circuit 3B is y2 times
If the delay time of the path 3C is y3, the circuits 3A, 3B, 3
The output data of the C registers R13, R15, and R17 are as follows.
It is represented by the equations (1-4), (1-5), and (1-6)
You. [0039]   RVD2A= RVD1(T-y1) + K29 ・ {RVD1(T)             + K30 ・ RVD1(T-y1)} (1-4)   RVD2B= RVD2A(T-y2) + K31 ・ {RVD2A(T)             + K32 / RVD2A(T-y2)} (1-5)   RVD2C= RVD2B(T-y3) + K33 ・ {RVD2B(T)             + K34 ・ RVD2B(T-y3)} (1-6) Then, the output data RVD of the delay circuit 3C2CIs the early reflection
It is used as data to generate reverberation that follows the sound.
It is output via the H circuit SW. Here, the delay of each delay circuit 3A, 3B, 3C is delayed.
Extra time y1> y2> y3 When set to the relationship of
It is possible to form reverberant sounds that are closely spaced. I.e. late
The delay circuit 3A is the delay time formed by the first reverberation sound forming unit 2.
Reverb sound data RVD with coarse intervals1Based on the first reverberation
The first time interval y1 is shorter than the delay time interval of the forming unit 2.
Reverberation sound data RVD2A of the delay circuit 3B
With a time interval y2 that is shorter than the delay time interval y1 of 3A
Second reverberation sound data RVD2BTo form Because of this, late
Reverberation sound formation processing in the extended circuits 3A to 3C proceeds.
So that a reverberant sound with a delay time interval is formed
Become. The register in the delay circuits 3A, 3B, 3C is
Stars R12, R14, and R16 are processes related to their own circuits.
Do not use until the next sampling period after the end of processing
Therefore, they can be shared in a time-sharing manner. Next, the specific structure and the configuration of the embodiment shown in FIG.
And operation will be described. In the following description, FIG.
The device shown in Fig. 3 reverberates according to the functions of Figs.
Described as forming a sound. --Specific Configuration of Example ---- The reverberation sound adding apparatus according to the embodiment shown in FIG. 1 is roughly classified.
And storage unit 10, time information generation unit 20, address information generation
It is composed of a raw section 30 and an arithmetic section 40. Time information
Details of the generator 20 and the address information generator 30 are shown in FIG.
Have been. The storage unit 10 is for delaying in FIGS.
It is equivalent to the digital memory DM of
Data memory 100 having a number of memory blocks
It is composed of a chi 101. In the data memory 100
In Fig. 12, using multiple memory blocks,
As shown, 1-word (16-bit) memories SD0 to SD
Memory MD0 of 15 and 512 words (1 word is 16 bits)
~ MD15 and memo of 2048 words (1 word is 16 bits)
Re-D0 to D15 are provided. And this memory
SD0 to SD15, MD0 to MD15, D0 to D15
The data to be stored is given from the arithmetic unit 40,
Storage address and read address generate address information
According to the address information DM / ADR output from the unit 30,
Designated and read from each memory SD0 to D15
Data is supplied to the arithmetic unit 40 via the latch 101.
It is configured to. The time information generator 20 shown in detail in FIG.
Is the delay length data memory in FIGS.
This is equivalent to DDM, and the parameter designation circuit 20
0 and a delay length data memory 201,
Here, the delay length data memory 201
The reverberation characteristic differs depending on the instruction from the data specifying circuit 200.
Corresponds to each of 8 types of reverberation (including early reflections)
Memory for delaying data D0 to D15, MD0 to MD
Delay time information DLD regarding 15m[N] (n: D0
Instruct the memory of D15, MD0 to MD15, m: 1 to 8
Select one of the types)
Is configured to force. That is, the delay length data memory
201 is a memory for data delay, as shown in FIG.
D0 to D15, MD0 to MD15 compatible
Moly block MB (D0) to MB (D15), MB (M
D0) to MB (MD15), each memory block
Each of MB (D0) to MB (MD15) is described above.
Eight storage addresses "0" ~ corresponding to eight types of reverberation
Each of the memory blocks MB (D0) to MB has "7"
(MD15) for each storage address "0" to "7"
Different delay time information DLD1[D0] ~ DLD8[D
0], DLD1 [D1] ~ DLD8[D1], ... DL
D1[D15] ~ DLD8[D15], DLD1[MD
0] ~ DLD8[MD0], ... DLD1[MD15] ~
DLD8[MD15] is stored in advance. And
A 3-bit structure that indicates the reverberation characteristics of the reverberation to be generated
The parameter designation information PSL is used as the lower address information.
It is supplied from the parameter indicating circuit 200, and further the memory MD
0 to MD15, D0 to D15 memory numbers "0 to 15"
4-bit memory number information DLn (n:
0 to 15) and the type of memory “D, MD, SD”.
2-bit memory type information DLk (k: D,
(MD, SD) generate address information as upper address information
When supplied from Ikube, specified by information DLn and DLk
Memory block (MB (D0) to MB (MD15))
One of the above), the memory address specified by the information PSL
The delay stored in the reply (one of "0" to "7")
Delay time information DLDm[N] is read out and parameter is specified
When a reverberation sound having a desired reverberation characteristic designated by the circuit 200 is delayed
To the address information generation unit 30 as information defining the relationship
Supplied. Regarding memories SD0 to SD15
Since the delay time is fixed (1 · T0), this memo
No delay time information is required for SD0 to SD15.
No. In addition, the parameter specification circuit 200
Eight types of reverberation sound are formed with the data PSL specifying information
Of the desired control programs among the control programs for
3-bit program selection information PGS for selecting one
Is output. Next, the address information generation detailed in FIG. 2 is generated.
The live part 30 is the delay time output from the time information generating part 20.
Inter-information DLDm[N] and program selection information PGS
And a master that determines the cycle of one step of the control program
Reverberation with desired reverberation characteristics based on clock pulse φ0
Address for the data memory 100 for forming sound
Generates information DM / ADR and operates each circuit
It generates various control signals to control
Gram memory 300, program counter 301, professional
Gram decode memory 302, control signal output register 3
03, selector 304, address counter 305, latch
306, subtraction circuit 307, maximum value detection circuit 308,
And a dress information output circuit 309. The program memory 300 has eight types of remaining memory.
Eight kinds of control programs to form reverberation sound with reverberation characteristics
Stored in advance, which type of control program
Whether to output is determined by the progress from the parameter specifying circuit 200.
It is designated by the ram selection information PGS. And specify
Master program pulse φ
Output information of the program counter 301 that counts 0
The data is sequentially read by the PC step by step. This place
In this case, the initial reflected sound forming unit 1 and the van described in FIGS.
De-pass filter BPF, first reverberation sound forming unit 2, second reverberation
One sampling cycle (T0) for all processing of the sound forming unit 3
Sampling frequency is 25kH to finish within
z, the frequency of master clock pulse φ0 is 4.8 MHz
Then, the number of steps of one control program is 4800
/ 25 = 192 or less, and this 192 step
The control program contents are executed every sampling cycle T0
Is done. And with the control program in each step
Then, as shown in Table 2, one step consists of 16 bits.
Three types of information, type 1, type 2 and type 3
The contents are prepared, and the formation of the initial reflection sound and the filtering process are performed.
The formation of sound and reverberation sound is generated by these three types of control programs.
Force order and contents of each bit information are combined appropriately
This is done. [0047]In this case, one step consisting of 16 bits
Control program is information OF ・ ADRn, RGn, DL
n, ADR [Kn] like the control signal output register 303
Output as it is, and memory write control
Program decode memory 302 such as signal WR1
Control signal output register 303 after being decoded by
Some are output via the
From the program memory 300 as a code OPC.
It is provided to the gram decode memory 302. Table 2
The details of the contents of
You. On the other hand, the address counter 305 is shown in FIG.
As shown in the delay memories D0 to D15 and MD0 to MD
Address counters AC (D
0) to AC (D15), AC (MD0) to AC (MD1)
5) is provided. In this address counter 305
Counters AC (D0) to AC (D15), AC (M
D0) to AC (MD15) are memory number information DLn and
And memory type information DLk
Is done. Activated by information DLn and DLk
Address counter AC (n) (n: D0 to D15, M
The count output information ADR [n] of D0 to MD15) is
Supplied to the address information output circuit 309 via the switch 306.
At the same time, it is supplied to the subtraction circuit 307. This place
Output information ADR of the address counter AC (n)
[N] is one of the memories D0 to D15 and MD0 to MD15
The memories D0 to D15 have an address length of 2048 words.
Address range up to 2048 words can be specified
Thus, it is composed of 11 bits. In addition, the address
The unter 305 is composed of a RAM. The subtraction circuit 307 is connected via the latch 306.
Output contents AD of the input address counter AC (n)
"1" is subtracted from R [n], and the subtracted value "ADR [n]
-1 "is used in the next sampling period (t + 1)
In order to do so, it is fed back to the A side input of the selector 304. simultaneous
To the maximum value detection circuit 308. Maximum value detection circuit
Reference numeral 308 corresponds to the detection circuit MXD in FIG.
Memory number information DLn and memory type information DLk
Output information of more specified address counter AC (n)
Information obtained by subtracting "1" from ADR [n] "ADR [n]-
"1" reaches the maximum value (all bits are "1")
Then, the selector 304 is made to select the B side input.
The rect control signal SLB is output. To selector 304
In addition, the output information “ADR of the subtraction circuit 307 is input to the A side.
[N] -1 ”is input and the delay length is input to the B side input.
Output information DLD of data memory 201m[N] is entered
The output is input to the data input of the address counter 305.
Address supplied and specified by information DLn, DLk
The write control signal WR3 is applied to the counter AC (n).
It is configured to be written (preset).
Therefore, the address address specified by the information DLn, DLk
In the unter AC (n), the maximum value detection circuit 308
Under the condition that the select control signal SLB is not generated from
Is the current value ADR [n] for each sampling period
The value "ADR [n] -1" minus "1" is written.
And the output information ADR [n] changes with the passage of time.
It decreases in the direction of "0". However, the value "ADR
(N) −1 ”becomes the maximum value, the maximum value detection circuit 308
Since the select control signal SLB is generated from
Delay to the counter AC (n) via the selector 304
Time information DLDm[N] is input and the write control signal W
Written by R3. Therefore, the address counter AC
The content of (n) depends on the generation of the select control signal SLB.
"DLDm[N] ”and then the sampling time
With the passage of time, it gradually changes to "0". You
That is, the selector 304, the address counter 305, the LA
Switch 306, subtraction circuit 307, maximum value detection circuit 308
In the part consisting of, the add specified by the information DLn, DLk
The delay time information DLD in the response counter AC (n)m
An ad that makes one cycle with a cycle equal to the delay time corresponding to [n].
The reply information ADR [n] is formed. This address information
ADR [n] is supplied to the address information output circuit 309.
You. The address information output circuit 309 is a memory S
D0 to SD15, memories D0 to D15, memories MD0 to
An application for reading and writing information to the MD15.
It outputs the dress information. This address information is output
The output circuit 309 outputs the information delayed by in time from the memory D0.
When reading and forming the initial reflected sound ECH (t),
At each delay of the first reflected sound ECH1 to the tenth reflected sound ECH10
11-bit address information OF · AD corresponding to the space in
Rn (output from the control signal output register 303)
Lower-order address information, and memory number information DL above it
n and memory type information DLk are added, and this one set of information is added.
Report OF ・ ADRn, DLn, DLk address information DM ・
Output as ADR. Also, sample at the current time
When the written amplitude data SPD (t) is written in the memory D0
Address counter AC (D
0) output information ADR [D0] as lower address information
Information DLn (= D that specifies the memory D0 above it)
L0) and DLk (= DLD) Is added to this set of information
Report ADR [D0], DLn, DLk to address information DM
Output as ADR. In addition, memories SD0 to SD15
When writing and reading amplitude data for,
All bits of lower address information are set to "0"
Information DLn (= DL0 that specifies the memories SD0 to SD15)
~ DL15) and DLk (= DLSD) Is added to the address
Output as the information DM / ADR. In addition, the reverberation sound RV
D1, RVDTwoTo form the memories D1 to D1
5, address addresses corresponding to MD0 to MD15
Unta AC (D1) to AC (D15), AC (MD0)
-AC (MD15) output information ADR [D1] -AD
R [D15], ADR [MD0] to ADR [MD15]
Is used as lower address information, and information DLn and
DLk is added, and these one set of information ADR [n], DL
n and DLk are output as address information DM / ADR.
In this case, the information OF · A is subordinate to the information DLn and DLk.
When DRn should be added, the control signal output register 303
Outputs a control pulse GP1. Also, information DLn
And all bits of lower address information added to DLk
Control signal output register 3
A control pulse GP2 is output from 03. In addition,
The information output circuit 309 temporarily outputs the information DLn and DLk.
A register for storing is provided inside. The calculation unit 40 shown in detail in FIG.
Re D0-D15, MD0-MD15, SD0-SD15
Stored in memory and data read from each memory
Amplitude level control of the coefficient memory 400,
Lecter 401, arithmetic circuit 402, temporary register 4
03 and a latch 404. Coefficient memory 400
Is the same as the delay length data memory
8 memory blocks corresponding to 8 different reverberations
And has a reverberation sound of each type in each memory block
The set of coefficients Kn (n: 1 to 32) required for
Is memorized. Then, the parameter designating circuit 200
Parameter specification information PSL is supplied from
Address information ADR [Kn] designating n outputs control signal
When supplied from the register 303, it is specified by the information PSL.
Specified by the information ADR [Kn] of the memory blocks
The coefficient Kn is read from the address stored in the calculation circuit 402.
It is configured to be supplied to the calculation input (A). The selector 401 inputs the sample host to the A side input.
Of the input musical sound sampled by the field circuit SPH
The amplitude data SPD (t) is input, and the storage section is input to the B side.
The read data MRD from 10 is input and is input to the C side.
Output of temporary register 403 via latch 404
Data RGD is input, and these input data S
PD (t), MRD, RGD are control signal output registers 3
03 output select control signal SL1 (2 bits
One of them is selected according to the configuration), and the arithmetic circuit 40
2 is supplied to the operation input (X). The arithmetic circuit 402 inputs a coefficient to the arithmetic input (A).
The coefficient Kn read from the memory 400 is input, and calculation is performed.
Temporary register via latch 404 to input (B)
Output data RGD of 403 is input and calculation input (X)
Select output data (SPD (t), M
RD, RGD) is input to the control signal output register 30.
Operation control signal CTL output from 3 (3 bits configuration)
By (Y) = (A) / (X) + (B) (Y) = (X) + (B) (Y) = (X) (Y) = (B) (Y) = (0) Is executed, and the calculated value (Y) is temporarily registered.
Data 403, storage unit 10, and output register 500
It is configured. The temporary register 403 is used for the initial reflection sound.
ECH (t), reverberation sound RVD1, RVDTwoIn the formation process of
The calculation value (Y) of the calculation circuit 402 is temporarily stored, and
Selector 4 stores the stored contents as register output data RGD
C side input of 01 and operation input of operation circuit 402 (B)
5 bits of register designation information R
32 regis designated by Gn (n: 1-32)
Data R0 to R31, and the input data is based on the information RGn.
Write control to designated registers (R0 to R31)
Written under the control of signal WR1. Next, output cash register
The star 500 is obtained as the calculation value (Y) of the calculation circuit 402.
Instantaneous value ECH (t) and initial reflection of the generated early reflection sound
Write control signal with instantaneous value RVD (t) of reverberant sound following sound
It is acquired by WR2, and the acquired data is attenuator 50.
1 to the DA converter (DAC) 502. What
The selection control signal SL1 and the selector 401
And the arithmetic control signal CTL in the arithmetic circuit 402 is
Operation output from the control signal output register 303
Coded OPC. Next, the operation of the above configuration will be described.
You. --- Explanation of operation --- a. Initial reflection sound formation operation When forming the initial reflected sound BCH (t), (1) First, the input musical sound sampled at the current time t
Since the amplitude data SPD (t) is written in the memory D0, SL1; SELECT (A) CTL; (Y) = (X) Select control signal SL1 and operation control
Control signal CTL as operation code OPC
It is output from the signal output register 303. By this
The selector 401 is a sampling hold circuit SPH.
The amplitude data SPD (t) output from the arithmetic circuit 40
2 is supplied to the operation input (X). In addition, the arithmetic circuit 402
Is the amplitude data SPD input to the calculation input (X)
(T) is output as the calculated value (Y). (2) Next, the current sampling time
In addition to designating the address of the memory D0 corresponding to (t),
At this address, the output data SPD of the arithmetic circuit 402
To write (t), DLn; DL0 DLk; DLD WR4; "1" (WRITE) L3; "1" (LATCH) Memory type information DLk and write control signal
No. WR4, Latch control signal L3 is the operation code
As OPC, memory number information DLn is output as a control signal.
It is output from the force register 303. As a result, the address corresponding to the memory D0 is added.
Output information ADR [D0] of the response counter AC (D0)
Below for writing the amplitude data SPD (t) at the current time t
It is latched in the latch 306 as the unit address information. So
Then, the latched lower address information ADR [D
0] is higher than that in the address information output circuit 309.
Memory number information DLn (= DL0) and memory type information
Report DLk (= DLD) Is added to the memory D0
Write address information DM / AD of width data SPD (t)
It is output as R. As a result, via the arithmetic circuit 402
And the current time given to the data input of the memory D0
The amplitude data SPD (t) of t is used as the write control signal WR4.
Therefore, it is written in the address corresponding to the current time t. (3) Next, the initial at each sampling time
Clear the register R0 that stores the synthesized value of the reflected sound.
, RGn; R0 CTL; (Y) = 0 WR1; "1" (WRITE) Operation control signal CTL and write control signal with contents shown in
WR1 as the operation code OPC
The star number information RGn is output from the control signal output register 303.
Is output. As a result, "0" is stored in the register R0.
Written. That is, the register R0 is cleared. (4) Next, the first reflected sound ECH1 is formed
Because OF ・ ADRn; OF ・ ADR1 DLk; DLD GP1; "1" L2; "1" (LATCH) Memory type information DLk and control pulse G having contents shown by
P1, the latch control signal L2 is the operation code OP
Corresponding to the delay time i1 of the first reflected sound ECH1 as C
Address information OF / ADRn is control signal output register
Is output from the data 303. In this case, output address information
The circuit 309 stores the memory number in step (3) above.
Information DLn (= DL0) is held. As a result, the address information output circuit 30
9 is address information OF.AD corresponding to the delay time i1
Using R1 as lower address information, memory number information DLn (=
DL0), memory type information DLk (= DLD) Is the top ad
Information stored in memory D0 i1 hours ago
Address information for reading the width data SPD (t-i1)
Output as DM / ADR. This allows the memory D
Read amplitude data SPD (t-i1) from 0 to i1 hours ago
This read data SPD (t-i1) is latched.
It is latched in the latch 101 by the control signal L2. (5) Next, the current value of register R0
To transfer to 404 RGn; R0 L1; "1" (LATCH) Operation of the latch control signal L1
As a code, the register number information RGn is a control signal.
It is output from the output register 303. This allows
The current value of register R0 is transferred to and stored in latch 404.
It is. (6) Next, the amplitude data SP i1 time ago
Multiply D (t-i1) by a coefficient K1 for amplitude level control,
Instantaneous value K1.SPD (t-i) for the first reflected sound ECH1
1) to get ADR [Kn]; ADR [K1] SL1; SELECT (B) CTL; (A) / (X) + (B) = (Y) Select control signal SL1 and operation control signal CT
L is the operation code OPC and constant reading
The address information ADR [Kn] for use as a control signal is output to the control signal output register.
It is output from the star 303. As a result, from the coefficient memory 400 to the first
The coefficient K1 relating to the reflected sound ECH1 is read out and the arithmetic circuit 4
02 is supplied to the operation input (A). Also, selector 4
01 is supplied to the B-side selection input from the latch 101.
Select the amplitude data SPD (t-i1) i1 hours before,
The data SPD (t-i1) is input to the arithmetic circuit 402 for calculation.
Supply force (X). In addition, the arithmetic circuit 402 (Y) = (A) / (X) + (B) = K1 · SPD (t-i1) + [R0] Perform the operation indicated by. In this case, the contents of register R0
Was cleared in step (3) above.
Therefore, here, the instantaneous value K1 · S regarding the first reflected sound ECH1 is used.
PD (t-i1) is the calculation value (Y) of the calculation circuit 402.
Obtained. (7) Next, first, the moment of the reflected sound ECH1
Transfer the value K1 SPD (t-i1) to the register R0 and write it.
To remind you RGn; R0 WR1; "1" (WRITE) The write control signal WR1 having the content indicated by
Code OPC and register number information RGn
It is output from the control signal output register 303. This
Therefore, the output data (Y) of the arithmetic circuit 402 = K1 · SP
D (t-i1) is written to register R0. So far
By completing the steps of
1 Instantaneous value of reflected sound ECH1 K1 · SPD (t-i1) is obtained
Can be (8) Next, the second reflected sound ECH2 to tenth
Instantaneous value K2 ・ SPD (t-i2) which is simply reflected sound ECH10
~ K10 SPD (t-i10) is the above step (4) ~
It is formed in the same manner as (7). Therefore, the 10th reflected sound
The stage where the operation of step (7) for ECH10 is completed
Then, the register R0 has the first reflected sound ECH1 through the tenth reflected sound.
Sum of instantaneous values of sound ECH10 ## EQU1 ## is obtained. And this sum is the output register
500 is written by the write control signal WR2.
And transferred to the attenuator 501. B. Filter operation When performing filter operation (1) First, the amplitude data S j hours before from the memory D10
To read PD (t-j), DLn: DL10 DLk: DLD L3: "1" (LATCH) L2: "1" (LATCH) Memory type information DLk and latch control signal
No. L3 and L2 are used as the operation code OPC.
The memory number information DLn stored in the control signal output register 303
Is output from. As a result, the address corresponding to the memory D10 is obtained.
Output information ADR [D1 of dress counter AC (D10)
0] reads the amplitude data SPD (t−j) j hours ago.
Latched in the latch 306 as lower address information for
It is. Then, the latched lower address information AD
R [D10] is supplied to the address information output circuit 309.
Memory number information DLn (= DL10) and memory
Memory type information DLk (= DLD) Is added to the data memo
Amplitude data SPD (t
-J) output as read address information DM / ADR
It is. As a result, the amplitude data j hours before from the memory D10
The data SPD (t-j) is read and the read data S
PD (t-j) is latched by the latch control signal L2.
Latched to 1. (2) Next, sample at the current time t
The amplitude data SPD (t)
Because the same address as the read address of j) is written, SL1: SELECT (A) CTL: (Y) = (X) Select control signal SL1 and operation control
Control signal CTL as operation code OPC
It is output from the signal output register 303. By this
The selector 401 is a sampling hold circuit SPH.
The amplitude data SPD (t) output from the arithmetic circuit 40
2 is supplied to the operation input (X). In addition, the arithmetic circuit 402
Is the amplitude data SPD input to the calculation input (X)
(T) is output as the calculated value (Y). (3) Next, the amplitude data SPD (t) is measured.
To write to Mori D10, DLn: DL10 DLk: DLD WR4: "1" (WRITE) L3: "1" (LATCH) Memory type information DLk and write control signal
WR4 and latch control signal L3 are operation codes
As OPC, memory number information DLn is output as a control signal.
It is output from the force register 303. As a result, the address corresponding to the memory D10 is obtained.
Output information ADR [D1 of dress counter AC (D10)
0] has written the amplitude data SPD (t) at the current time t.
Latched in the latch 306 as lower address information for
You. Then, the latched lower address information ADR
[D10] is output to the address information output circuit 309.
Memory number information DLn (= DL10) and memo above
Retype information DLk (= DLD) is added to the memory D10.
Address information of amplitude data SPD (t) for
It is output as DM / ADR. This allows the arithmetic circuit
Given to the data input of the memory D10 via 402
Write control of the amplitude data SPD (t) at the present time t
Write to the address corresponding to the current time t by signal WR4
Be included. (4) Next, the low pass filter LPF
And the contents of register R1, coefficient K11, amplitude j hours ago
By the data SPD (t-j), [R1] + K11 ・ SPD (t-j) Is calculated and the calculated value is stored again in the register R1.
So first, RGn: R1 L1: "1" (LATCH) Operation of the latch control signal L1 indicated by
Register code information RGn is controlled as code OPC.
Output from the control signal output register 303, register R1
Is transferred to the latch 404. (5) Next, the performance of K11 SPD (t-j)
To calculate, ADR [Kn]: ADR [K11] SL1: SELECT (B) CTL: (Y) = (A) / (X) + (B) Select control signal SL1 having the contents shown by
No. CTL as operation code OPC
The address information ADR [Kn] for reading the number outputs a control signal.
It is output from the force register 303. This gives the coefficient
The coefficient K11 is read from the memory 400 and the arithmetic circuit 402
Is supplied to the calculation input (A). Also, the selector 401
Is latched by the latch 101 in step b- (1) above.
Select the amplitude data SPD (t-j) that has
It is supplied to the calculation input (X) of the path 402. by this,
The arithmetic circuit 402 is (Y) = (A) / (X) + (B) = K11 · SPD (t-j) + R1 Is calculated. In this case, the contents of register R1 are
The filtering process at the sampling time (t-1) ends.
It has been cleared at the stage of completion, so in this step
K11 SPD (t-j) is obtained as the calculated value (Y)
You. (6) Next, the calculated value (Y) = K11.S
In order to store PD (t-j) in the register R1, RGn: R1 WR1: "1" (WRITE) The write control signal WR1 indicated by
Code OPC and register number information RGn
It is output from the control signal output register 303. This
Therefore, the output data K11 · SPD (t−
j) is stored in register R1. (7) Next, from the memory SD0 to (j-1)
The amplitude data SPD (t-j-1) before time is read out.
, DLn: DL0 DLk: DLSD GP2: "1" L2: "1" (LATCH) Memory type information DLk and latch control signal
No. L2, gate pulse signal GP2 is the operation code
As the OPC, the memory number information DLn is a control signal.
It is output from the output register 303. Then the address
The information output circuit 309 outputs all bits of the lower address information.
It is set to “0” and the memory number information DLn (= DL
0) and memory type information DLk (= DLSD) Is added,
As address information DM / ADR for memory SD0
Output. As a result, from the memory SD0 to (j-1)
The amplitude data SPD (t-j-1) immediately before is read out, and
Latch 101. (8) Next, the contents K11.S of the register R1
PD (t-j), coefficient K12, latched by latch 101
The amplitude data SPD (t-j-1) K12 ・ SPD (t-j-1) + [R1] Is calculated and the calculated value is stored again in the register R1.
So first RGn: R1 L1: "1" (LATCH) Operation of the latch control signal L1
Register code information RGn is controlled as code OPC.
Output from the control signal output register 303, register R1
Contents K11.SPD (t-j) are transferred to the latch 404.
It is. (9) Next, K12, .SPD (t-j-
1) + [R1] is calculated, ADR [Kn]: ADR [K12] SL1: SELECT (B) CTL: (Y) = (A) / (X) + (B) The signals SL1 and CTL having the contents shown by are operated.
As code OPC, also address information ADR [Kn]
Is output from the control signal output register 303. to this
Therefore, the coefficient K11 is read from the coefficient memory 400 and played.
It is supplied to the operation input (A) of the arithmetic circuit 402. Also,
The lector 401 is the amplitude data latched in the latch 101.
Of the arithmetic circuit 402 by selecting the data SPD (t-j-1).
Supply to the calculation input (X). As a result, the arithmetic circuit 4
02 is (Y) = (A). (X) + (B) = K12.SPD (t-
j-1) + K11 SPD (t-j) The calculated value (Y) of is output. And this calculated value (Y) is
Are stored in the registers R1 and R2 in step. This
As a result, the contents of the registers R1 and R2 are [R1] = [R2] = K12.SPD (t-j-1) + K
11.SPD (t-j) Becomes (10) Next, the contents and coefficient of the register R2
K13, (j-1) hours ago stored in memory SD0
Of amplitude data SPD (t-j-1) of K13.SP
In order to perform the calculation of D (t-j-1) + [R2], first,
Amplitude data S is obtained in the same manner as in step b- (7) described above.
PD (t-j-1) is read from the memory SD0 and
It is latched by the switch 101. (11) Next, the contents of the register R2 are latched.
H-404, the above step b- (8) is performed.
The contents of register R2 K12.SPD (t-j
-1) + K11 · SPD (t-j) transferred to latch 404
Is done. (12) Next, the coefficient K13 is read out to obtain K13.
In order to calculate SPD (t-j-1) + [R2], ADR [Kn]: ADR [K13] SL1: SELECT (B) CTL: (Y) = (A) / (X) + (B) The signals SL1 and CTL having the contents shown by are operated.
As code OPC, also address information ADR [Kn]
Is output from the control signal output register 303. to this
Therefore, the coefficient K11 is read from the coefficient memory 400 and played.
It is supplied to the operation input (A) of the arithmetic circuit 402. Also,
The lector 401 is the amplitude data latched in the latch 101.
Of the arithmetic circuit 402 by selecting the data SPD (t-j-1).
Supply to the calculation input (X). As a result, the arithmetic circuit 40
2 is (Y) = (A) / (X) + (B) = K13 · SPD (t-j-1) + K12 ・ SPD (t-j-1) + K11 ・ SPD (t-
j) The calculated value (Y) of is output. And this calculated value (Y)
Will be stored in register R2 in the next step,
It is supplied to the high pass filter HPF via the filter R2. (13) In the low pass filter LPF
In the final step, the contents of the register R1 are stored in the memory SD0.
Write to and use at next sampling time (t + 1)
Therefore, first, the contents of the register R1 "K13.SPD (t-j
-1) + K11.SPD (t-j) "is the same as in b- (8) above.
After being transferred to the latch 404 in the same manner as the step,
The arithmetic circuit 402 is caused to perform the operation of (Y) = (B), and
Calculated value “(Y) = K12 · SPD (t−j−1) + K11 ·
SPD (t-j) "is written to the memory SD0. this
The write operation is DLn: DL0 DLk: DLSD GP2: "1" WR4: "1" (WRITE) Operation code OPC and memory with contents shown in
Number information DLn is output from the control signal output register 303
It is done by being done. Low pass filter LP
When the operation of F is completed, the operation of the high-pass filter HPF is performed next.
The operation of this high pass filter HPF
The description is omitted. Next, the reverberation sound RVD having a coarse delay time interval.1
The forming operation of will be described. c. Reverberation RVD1Forming action Reverberation RVD1To form (1) First, of the register R4 of the high pass filter HPF
The stored data SPD (t-j) is multiplied by the coefficient K17,
The multiplication value K17 · SPD (t−j) is stored in the register R5.
To let RGn: R4 L1: "1" (LATCH) Latch control signal L1 and register number
Signal information RGn is output from the control signal output register 303.
Then, the content SPD (t-j) of the register R4 is latched by the latch 40.
4 is transferred. (2) Next, perform K17 SPD (t-j)
To calculate ADR [Kn]: ADR [K17] SL1: SELECT (C) CTL: (Y) = (A) / (X) Select control signal SL1 having the contents shown by
No. CTL, address information for reading coefficient ADR [Kn]
Is output from the control signal output register 303. to this
The coefficient K17 is read from the coefficient memory 400 and calculated.
It is supplied to the operation input (A) of the circuit 402. In addition,
The data S latched in the latch 404.
Operation input of the operation circuit 402 by selecting PD (t-j)
Supply to (X). As a result, the arithmetic circuit 402 Performance of (Y) = (A) ・ (X) = K17 ・ SPD (t-j)
The calculated value (Y) is output. This calculated value (Y) is
Stored in the register R5. (3) Next, x 1 hour before the memory D1
Amplitude data SPD (t-x1) is read and this data S
Add PD (t-x1) and the current value of register R11
Then, the added value is stored again in the register R11.
First, DLn: DL1 DLk: DLSD L3: "1" (LATCH) L2: "1" (LATCH) And latch control signals L3 and L2 having the contents
Number information DLn and memory type information DLk output control signals
It is output from the force register 303. This allows the memory
Output information of address counter AC (D1) corresponding to D1
Report ADR [D1] reads amplitude data SPD (t-x1)
Latch 306 is used as the lower address information to output.
Is touched. The lower address information ADR [D
1] is in the higher order in the address information output circuit 309.
Memory number information DLn and memory type information DLk are added
Then, the memory D1 is added to the data memory 100.
It is output as the reply information DM / ADR. This allows
Amplitude data SPD (t-x 1 hour before the memory D1
1) is read and latched by the latch 101. (4) Next, the read data SPD (t
-X1) and the current value of register R11 are added,
After the content of the register R11 is transferred to the latch 404, SL1: SELECT (B) CTL: (Y) = (X) + (B) Select control signal SL1 and operation control
The control signal CTL is output from the control signal output register 303.
It is. Then, the selector 401 latches in the latch 101.
Selected amplitude data SPD (t-x1)
It is supplied to the calculation input (X) of the calculation circuit 402. This
The arithmetic circuit 402 (Y) = (X) + (B) = [R11] + SPD (t-x1) The calculated value (Y) indicated by is output. In this case, Regis
The contents of R11 are at the previous sampling time (t-1).
It has been cleared at the stage of completing the operation in. others
Therefore, the calculated value (Y) in this step (4) is SPD
(T-x1). After this, the calculated value (Y) is registered in the register
It is transferred to R11 and stored. (5) Next, the amplitude data S from the memory D1
Read PD (t-x1), multiply this by a coefficient K18,
Further, the multiplication value K18 SPD (t-x1) and the register
The value added with the contents of R5 "K17 SPD (t-x1)"
In order to store it again in the register R6, first, the above-mentioned c-
The contents of the register R5 "K
17 · SPD (t−j) ”is transferred to the latch 404. (6) Next, latched by the latch 101
Amplitude data SPD (t-x1), latched in latch 404
Checked data "K17 SPD (t-j)"
With the number K18, (Y) = K18 · SPD (t−x1) + K17 · SPD (t
-J) To calculate ADR [Kn]: ADR [K18] SL1: SELECT (B) CTL: (Y) = (A) / (X) + (B) Select control signal SL1 having the contents shown by
CTL, address information for reading coefficient ADR [Kn]
Is output from the control signal register 303. This
The coefficient K18 is read from the coefficient memory 400 and the calculation time is calculated.
It is supplied to the calculation input (A) of the path 402. Also select
The data 401 is the amplitude data latched by the latch 101.
Select SPD (t-x1) and enter the operation of operation circuit 402
Supply force (X). As a result, the arithmetic circuit 402 (Y) = (A) / (X) + (B) = K18 · SPD (t−x1) + K17 · SPD (t−j) Is output. Then, this calculated value (Y) is calculated in the next step.
Corresponds to the current time t of the memory D1 via the register R6
It will be written to the address. After this, register R6 is
It is cleared because the system processing is performed on the memory D2. (7) Next, in each system of the memories D2 to D9
The processing is related to steps c- (3) to c- (6) described above.
The same is done as. Then, in the memories D1 to D9
When the processing of each system is completed, the register R11 stores (Equation 4) Reverberation RVD represented by1The information about is obtained. Next, the reverberation sound RVD having a dense delay time interval.Two
The forming operation of will be described. d. Reverberation RVDTwoForming action Reverberation RVDTwoTo form (1) First, the amplitude data y1 hours before from the memory MD0
RVD1To read (t-y1), DLn: DL0 DLk: DLMD L3: "1" (LATCH) L2: "1" (LATCH) And latch control signals L3 and L1 having the contents
Number information DLn and memory type information DLk output control signals
It is output from the force register 303. This allows the address
In the information output circuit 309, the above-mentioned step of c- (3) is performed.
Address information D for the memory MD0 in the same manner as
M ・ ADR is formed and y1 hours before memory MD0
Amplitude data RVD1(T-y1) is read. And
This data RVD1(T-y1) is latched by latch 101
Is done. (2) Next, it is latched by the latch 101.
Amplitude data RVD1(T-y1), output of register R11
Data RVD1(T), coefficient K30 K30 / RVD1(T-y1) + RVD1(T) Is calculated and the calculated value is stored in the register R12.
First, the output data RVD of the register R111(T)
Is transferred to the latch 404, ADR [Kn]: ADR [K30] SL1: SELECT (B) CTL: (Y) = (A) / (X) + (B) Select control signal SL1 having the contents shown by
CTL and address information for reading coefficient ADR [K
n] is output from the control signal output register 303. This
As a result, the operation circuit 402 has the above-mentioned step of c- (6).
The coefficient K30 is supplied to the calculation input (A) in the same way
Also, the data RVD1(T-y1) is the calculation input (X)
Supplied to As a result, the arithmetic circuit 402 (Y) = (A) / (X) + (B) = K30 ・ RVD1(T-y1) + RVD1(T) The calculated value (Y) of is output. And this calculated value (Y)
Will be stored in register R12 in the next step. (3) Next, the contents of the register R12 "K30
・ RVD1(T-y1) + RVD1(T) ”with coefficient K29
First, the contents of the register R12 are latched by the latch 40 for multiplication.
After being transferred to 4, ADR [Kn]: ADR [K29] SL1: SELECT (C) CTL: (Y) = (A) / (X) Select control signal SL1 having the contents shown by
CTL and address information ADR [Kn] for reading coefficients
Is output from the control signal output register 303. to this
Therefore, the calculation circuit 402 receives the coefficient K30 as the calculation input (A).
Supplied and also data "K30 RVD1(T-y1) +
RVD1(T) ”is supplied to the calculation input (X). this
Therefore, the arithmetic circuit 402 (Y) = (A) / (X) = K29 ・ {K30 ・ RVD1(T-y1) + RVD
1(T)} The calculated value (Y) indicated by is output. This calculation (Y)
In the next step, it is stored in the register R13. (4) Next, the contents of register R13 and y1
Data RVD before time1(T−y1) and add
In order to store the calculated value in the register R13 again, the above d
-From the memory MD0 to y1 in the same manner as the step (1).
Data RVD before time1(T-y1) is read and latched
Latched at 101. After this, the contents of register R13
"K29 ・ {K30 ・ RVD1(T-y1) + RVD
1(T)} ”is transferred to the latch 404, SL1: SELECT (B) CTL: (Y) = (B) + (X) Select control signal SL1 having the contents shown by
No. CTL is output from the control signal output register 303
You. As a result, the arithmetic circuit 402 (Y) = (B) + (X) = RVD1(t-y1) + K29 ・ {K30 ・ RVD1(t-y1) +
RVD1(t)} The calculated value (Y) indicated by is output. This calculation (Y)
In the next step, stored in register R13, reverberation
Sound information RVD2AIs output as (5) Next, the contents of the register R12 "K30
・ RVD1(T-y1) + RVD1(T) ”is delayed by y1 hour
Since it is used at the sampling time (t + y1),
The contents of the star R12 corresponds to the current time t of the memory MD0.
Written to the address. (6) After this, the reverberation sound RV that is more dense than the y1 time interval
D2B, RVD2CAre similarly formed. The embodiment of FIGS. 1 and 2 (FIGS. 3 and 4)
Has a bandpass filter, but this is necessary
It may be omitted accordingly. Also, FIG. 15 and FIG.
As shown in the functional block diagram of 6, the output of the memory D10
Data is high pass filter HPF, band pass filter
3 series of frequencies by BPF and low pass filter LPF
The first reverberation forming unit 2 divides each frequency band into bands.
Alternatively, different reverberation sounds may be formed. this
Is easily realized by simply changing the contents of the control program
it can. FIG. 16 shows the first reverberation sound forming section 2
2 shows the details of the second reverberation sound forming unit 3. [0095] As described above, according to the present invention, the input
The reverberation processing for the signal is performed by cascading multiple delay unit processings.
It is supposed to be done in each delay unit processing input
Performs a predetermined calculation on the signal and outputs the calculation result at a predetermined time
Output the output signal after a delay of
Computes and adds to the input signal, with multiple delays
The unit processing delay time is shortened toward the later stage.
Therefore, in the latter delay unit processing,
Of the predetermined delay time intervals added by the delay unit processing of
Between each delay time interval in a number of reverberations
Multiple reverberant sounds are added at dense predetermined delay time intervals
Therefore, the reverberation sound with a dense delay time interval and complicated
It has an excellent effect that it can be added. In addition
Reverberation processing by these multiple delay unit processing
Is time-divisional using a common device, so multiple delays
Reverberation processing by unit processing is simple and time-sharing
It has an excellent effect that it can be processed simultaneously
You. Also, set the delay time for each delay unit process.
Variable delay time information allows each delay time to be set arbitrarily
To change the reverberation characteristics easily and freely.
It has the effect of being able to.

【図面の簡単な説明】 【図1】この発明による残響音付加装置の一実施例を示
すブロック図。 【図2】図1における時間情報発生部とアドレス情報発
生部の詳細例を示すブロック図。 【図3】図1の実施例を機能的に表わした機能ブロック
図。 【図4】図3における第1及び第2残響音形成部の詳細
例を示すブロック図。 【図5】初期反射音形成用の遅延回路の基本的構成を示
すブロック図。 【図6】残響音形成用の遅延回路の基本的構成を示すブ
ロック図。 【図7】図5の遅延回路の動作を説明するためのタイム
チャート。 【図8】図1の実施例において発生される初期反射音の
特性図。 【図9】櫛型フィルタ構成の遅延回路の周波数特性を示
す図。 【図10】図1の実施例における第1残響音形成部に相
当する部分において発生される残響音の特性図。 【図11】図1の実施例における第2残響音形成部に相
当する部分において発生される残響音の特性図。 【図12】図1の実施例におけるデータメモリの構成を
示す図。 【図13】図1の実施例におけるディレイレングスデー
タメモリの構造を示す図。 【図14】図1の実施例におけるアドレスカウンタの構
造を示す図。 【図15】この発明による残響音付加装置の他の実施例
を示す機能プロック図。 【図16】図15における第1及び第2残響音形成部の
詳細例を示すブロック図。 【符号の説明】 1…初期反射音形成部、2…第1残響音形成部、3…第
2残響音形成部、BPF…バンドパスフィルタ、10…
記憶部、20…時間情報発生部、30…アドレス情報発
生部、40…演算部。
BRIEF DESCRIPTION OF THE DRAWINGS FIG. 1 is a block diagram showing an embodiment of a reverberation sound adding device according to the present invention. FIG. 2 is a block diagram showing a detailed example of a time information generating unit and an address information generating unit in FIG. FIG. 3 is a functional block diagram functionally showing the embodiment of FIG. FIG. 4 is a block diagram showing a detailed example of first and second reverberation sound forming units in FIG. FIG. 5 is a block diagram showing a basic configuration of a delay circuit for forming an initial reflected sound. FIG. 6 is a block diagram showing a basic configuration of a delay circuit for forming reverberation sound. FIG. 7 is a time chart for explaining the operation of the delay circuit in FIG. 8 is a characteristic diagram of an initial reflected sound generated in the embodiment of FIG. FIG. 9 is a diagram showing frequency characteristics of a delay circuit having a comb filter configuration. 10 is a characteristic diagram of reverberant sound generated in a portion corresponding to a first reverberant sound forming unit in the embodiment of FIG. 11 is a characteristic diagram of reverberation sound generated in a portion corresponding to a second reverberation sound forming unit in the embodiment of FIG. 12 is a diagram showing the configuration of a data memory in the embodiment of FIG. 13 is a diagram showing the structure of a delay length data memory in the embodiment of FIG. 14 is a diagram showing the structure of an address counter in the embodiment of FIG. FIG. 15 is a functional block diagram showing another embodiment of the reverberation sound adding device according to the present invention. 16 is a block diagram showing a detailed example of first and second reverberation sound forming units in FIG. [Explanation of Codes] 1 ... Initial reflected sound forming unit, 2 ... First reverberation sound forming unit, 3 ... Second reverberation sound forming unit, BPF ... Band pass filter, 10 ...
Storage unit, 20 ... Time information generating unit, 30 ... Address information generating unit, 40 ... Arithmetic unit.

Claims (1)

(57)【特許請求の範囲】 1.入力信号に対して残響処理を行う残響音付加装置に
おいて残響処理は複数の遅延ユニット処理を縦列に行い、 各遅延ユニット処理は、入力信号に対して所定の演算を
行い、この演算結果を所定時間遅延して出力信号を出力
し、該出力信号に帰還係数を演算して入力信号に加算す
るものであって、複数の遅延ユニット処理の遅延時間は
後段になるほど短くするものであり、 残響処理は、 所定のサンプリング周期毎に入力される入力信号に対し
設定された任意時間の遅延を行うための、複数領
域個別利用可能なデータメモリ(100)と、 各遅延ユニット処理毎の帰還係数を記憶する係数メモリ
(400)と、 各遅延ユニット処理、及び、前記各遅延ユニット処理
接続を実現する処理を実行するプログラムを記憶す
プログラムメモリ(300)と、 各遅延ユニット処理毎の遅延時間を設定し、遅延時間情
報を発生する遅延時間情報発生手段(20)と、 遅延時間情報発生手段(20)から供給される遅延時間
情報に従って遅延ユニット処理で必要とする出力信
号、及び、入力信号をデータメモリ(10)から読み出
すためのアドレス情報を発生するアドレス情報発生手段
(309)と、データメモリ(100) から供給される遅延ユニット処
理の入力信号、出力信号、及び、帰還係数とを用いて遅
延ユニット処理を行なう演算手段(401,402,4
03,404)と、プログラムメモリ(300) から供給されるプログラム
に従って、帰還係数、遅延ユニット処理の入力信号、出
力信号を演算手段(401,402,403,404)
に対して供給し、かつ、アドレス情報発生手段(30
9)、及び、演算手段(401,402,403,40
4)を時分割的に動作させることによって、プログラム
に従う一連の残響処理を1サンプリング周期で行う制御
手段(303)とにより 複数の遅延ユニット処理を共通
装置を用いて時分割的に行う残響音付加装置。
(57) [Claims] A reverberation sound adding device that performs reverberation processing on an input signal
In the reverberation process, a plurality of delay unit processes are performed in cascade, and each delay unit process performs a predetermined calculation on the input signal.
Output the output signal after delaying this calculation result for a predetermined time
Then, calculate the feedback coefficient for the output signal and add it to the input signal
The delay time of processing multiple delay units is
It is intended to shorter as will later stage, reverberation processing on the input signal input to the predetermined sampling period, for performing any of the time delay is set, a plurality territory
Data memory (100) that can be used individually for each area, and coefficient memory that stores the feedback coefficient for each delay unit processing
And (400), each delay unit processes, and, to store a program for executing a process to realize <br/> vertical column connection of each delay unit process
A program memory (300) that sets a delay time of each delay unit processes each, and the delay time information generating means for generating a delay time information (20), the delay time supplied from the delay time information generating means (20) Output signal required by each delay unit processing according to the information
No. and address information generating means for generating address information for reading an input signal from the data memory (10)
(309) and the delay unit processing supplied from the data memory (100).
Of the input signal, output signal, and feedback coefficient
Arithmetic means (401, 402, 4 for performing total unit processing)
And 03,404), I follow the program <br/> supplied from the program memory (300), the feedback factor, the input signal of the delay unit process, out
Force signal calculation means (401, 402, 403, 404)
To the address information generating means (30
9) and arithmetic means (401, 402, 403, 40)
4) is operated in a time-division manner, and a reverberation sound addition is performed in which a plurality of delay unit processes are performed in a time-division manner using a common device by a control means (303) that performs a series of reverberation processes according to a program in one sampling cycle. apparatus.
JP4035594A 1992-01-27 1992-01-27 Reverberation device Expired - Lifetime JP2679511B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP4035594A JP2679511B2 (en) 1992-01-27 1992-01-27 Reverberation device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP4035594A JP2679511B2 (en) 1992-01-27 1992-01-27 Reverberation device

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP56113122A Division JPS5814898A (en) 1981-07-20 1981-07-20 Reverberation adding apparatus

Publications (2)

Publication Number Publication Date
JPH05134690A JPH05134690A (en) 1993-05-28
JP2679511B2 true JP2679511B2 (en) 1997-11-19

Family

ID=12446128

Family Applications (1)

Application Number Title Priority Date Filing Date
JP4035594A Expired - Lifetime JP2679511B2 (en) 1992-01-27 1992-01-27 Reverberation device

Country Status (1)

Country Link
JP (1) JP2679511B2 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2006047387A2 (en) * 2004-10-26 2006-05-04 Burwen Technology Inc Unnatural reverberation
JP5169584B2 (en) * 2008-07-29 2013-03-27 ヤマハ株式会社 Impulse response processing device, reverberation imparting device and program

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5092722A (en) * 1973-12-07 1975-07-24
JPS5611495A (en) * 1979-07-09 1981-02-04 Matsushita Electric Ind Co Ltd Echo attaching apparatus

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5092722A (en) * 1973-12-07 1975-07-24
JPS5611495A (en) * 1979-07-09 1981-02-04 Matsushita Electric Ind Co Ltd Echo attaching apparatus

Also Published As

Publication number Publication date
JPH05134690A (en) 1993-05-28

Similar Documents

Publication Publication Date Title
US4472993A (en) Sound effect imparting device for an electronic musical instrument
US4731835A (en) Reverberation tone generating apparatus
JPH0157799B2 (en)
US4570523A (en) Reverberation tone generating apparatus
JP2565073B2 (en) Digital signal processor
JP2679511B2 (en) Reverberation device
JPS63278411A (en) Multistage digital filter
JPH0883066A (en) Electronic musical instrument
JPH0115075B2 (en)
JPH0157800B2 (en)
US4108039A (en) Switch selectable harmonic strength control for a tone synthesizer
JPS6255158B2 (en)
JPH01198797A (en) Electronic musical instrument
JPH0112320Y2 (en)
JPH03269583A (en) Electronic musical instrument
JPH07168563A (en) Electronic musical instrument capable of extending sound source
US5687105A (en) Processing device performing plural operations for plural tones in response to readout of one program instruction
JP3050779B2 (en) Signal processing device
JP2003050582A (en) Musical sound signal processing device
JP3116447B2 (en) Digital signal processor
JP3094759B2 (en) Music signal distribution processor
JP3430575B2 (en) Electronic music signal synthesizer
JP2674454B2 (en) Automatic accompaniment device
JPS5838999A (en) Electronic musical instrument
JPH09128221A (en) Signal processor