JP3591451B2 - データ処理装置およびデータ処理方法 - Google Patents
データ処理装置およびデータ処理方法 Download PDFInfo
- Publication number
- JP3591451B2 JP3591451B2 JP2000353415A JP2000353415A JP3591451B2 JP 3591451 B2 JP3591451 B2 JP 3591451B2 JP 2000353415 A JP2000353415 A JP 2000353415A JP 2000353415 A JP2000353415 A JP 2000353415A JP 3591451 B2 JP3591451 B2 JP 3591451B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- gain
- mode
- input
- read address
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Landscapes
- Reverberation, Karaoke And Other Acoustics (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
- Transmission Systems Not Characterized By The Medium Used For Transmission (AREA)
Description
【発明の属する技術分野】
本発明は、音声信号や楽音信号等のレベル値を非線形の利得特性に基づいて圧縮又は伸長するディジタルコンプレッサ/リミッタ及び音響信号効果装置(イフェクタ)等のデータ処理装置およびデータ処理方法に関する。
【0002】
【従来の技術】
従来より、放送設備の過変調を防止するために大振幅入力時にコンプレッサ(圧縮)処理を施したり、リミッタ処理するディジタルコンプレッサ/リミッタや、暗騒音下での音楽再生等において、小振幅信号をエキスパンダ(伸長)処理しつつ低レベル雑音を抑制するエキスパンダー/ノイズゲート等、入力信号レベルに応じた非線形の利得制御を行うデータ処理装置が知られている。図13は、この種のデータ処理装置の入出力特性の一例を示す図である。この図において、横軸は入力データ値の対数レベル、縦軸は系を通過した後の信号の対数レベルであり、点線は圧縮伸長を全く行わない場合の入出力関係直線である。また、図14は、同じく入力データ値に対する利得(乗算係数)を示したもので、同図(a)は対数利得、同図(b)はリニアな乗算係数として表わしたものである。
【0003】
この入出力特性では、入力のレベルに応じて系の利得が次のように変化する。(1)中間レベル(−24〜−84dB)の信号が入力された場合入出力利得を+12dBとして音量を増大させる。(2)高いレベル(−24dB以上)の信号が入力された場合伸張率1/2(圧縮率2)の圧縮動作に入り、大振幅でのクリップを防止する。(3)低いレベル(−84dB以下)の信号が入力された場合、伸長率2の伸長動作となるが、無信号時の低レベル雑音については抑圧する。
従来、このような非線形の利得特性を得るため、当該特性を利得データとしてメモリに予め記憶しておき、入力データの振幅レベルに応じて利得データをメモリから読み出し、読み出された利得データを入力データに乗算して出力データを生成することが行われていた。
【0004】
【発明が解決しようとする課題】
ところで、複数の入力データに各種の効果を付与してこれらを混合して出力するミキサー等のデータ処理装置にあっては、上述した手法で各入力データに効果を付与して得られた各データを混合して所望の出力データを生成することがある。
このようなデータ処理装置にあって、入力データに所望の利得特性を付与しようとすると、利得データのデータ量が増加し、メモリとして大容量のものを使用する必要がある。特に、複数の入力データに対して各々異なる利得特性を付与しようとすると、入力データの数が増える程、利得データのデータ量が増加する。一方、入力データの種類によって、利得特性の精度の要求度合が異なる場合もある。例えば、ミキサー内部で、入力段のコンプレッサよりもミキシング後のマスターレベルのコンプレッサの方を精度のよい利得特性を持つものにしたいとの要求などが考えられる。
【0005】
本発明は上述した点に鑑みてなされたものであり、その目的は、一定の記憶容量の下に、付与すべき利得特性の自由度を拡張し、データ処理装置の汎用性を高めることにある。
【0006】
【課題を解決するための手段】
上記課題を解決するため、請求項1に記載の発明にあっては、入力データに各種の利得特性を付与するデータ処理装置において、付与すべき利得特性の精度を示す処理モードに応じて定められた分離ビット数に従って、前記入力データに所定の処理を施して得た制御データから上位ビットデータを分離するデータ分離部と、前記処理モードに応じて、分割された各記憶領域に各利得データを予め記憶する記憶部と、前記上位ビットデータに前記処理モードに応じた処理を施して読出アドレスを生成する読出アドレス生成部と、前記読出アドレスに基づいて前記記憶部から読み出した利得データに基づいて、前記入力データに利得処理を施して出力データを生成するデータ生成部とを備えることを特徴とする。
【0007】
また、請求項2に記載の発明にあっては、前記入力データに基づいて入力信号の振幅を検出して振幅データを生成する振幅データ生成部を備え、前記振幅データが前記制御データとして与えられることを特徴とする。
また、請求項3に記載の発明にあっては、前記各利得データは、異なる利得特性を指示することを特徴とする。
【0008】
また、請求項4に記載の発明にあっては、前記データ分離部は、前記制御データを前記上位ビットデータと下位ビットデータに分離し、前記データ生成部は、前記記憶部から読み出した利得データに、前記下位ビットデータに基づいて補間処理を施して補間利得データを生成する補間部と、前記補間利得データと前記入力データとを乗算して前記出力データを生成する乗算部とを備えることを特徴とする。
【0009】
また、請求項5に記載の発明にあっては、前記読出アドレス生成部は、前記処理モードに応じて各記憶領域を指示するアドレスを生成し、当該アドレスと前記上位ビットデータとを組み合わせて前記読出アドレスを生成することを特徴とする。
また、請求項6に記載の発明にあっては、書き換え可能な記憶部に記憶された利得データに基づいて、入力データに各種の利得特性を付与するデータ処理方法において、付与すべき利得特性の精度を示す処理モードに応じて前記記憶部の記憶領域を分割し、分割された各記憶領域に各利得データを記憶し、前記処理モードに応じて定められた分離ビット数に従って、前記制御データから上位ビットデータを分離し、前記上位ビットデータに前記処理モードに応じた処理を施して読出アドレスを生成し、前記読出アドレスに基づいて前記記憶部から読み出した利得データに基づいて、前記入力データに利得処理を施して出力データを生成することを特徴とする。
【0010】
【発明の実施の形態】
<1.実施形態の構成>
<1−1:データ処理装置の概要>
以下、添付の図面を参照してこの発明の実施形態について説明する。図1はこの発明の一実施形態に係るデータ処理装置の主要構成を示すブロック図である。この装置は、絶対値生成回路1、対数変換回路2、ピークホールド/時間減衰回路3、データ分離回路4、ゲインテーブル5、データ補間回路6、対数逆変換回路7、乗算回路8および制御回路9を備えている。
【0011】
この装置の入力データDinは、2の補数コード、32ビットのパラレル形式のデータ列であり、基準クロック信号CKrefに同期して供給されるようになっている。基準クロック信号CKrefは図示せぬクロック信号発生回路から供給される。また、その周波数は、音楽信号のサンプリング周波数をfsとしたとき256fsとなるように設定されている。この装置は、1サンプリング期間あたり最大256個の入力データDinを処理することが可能である。
【0012】
また、この装置では、複数種類の精度で利得特性を付与できるようになっている。以下の説明では、それらの態様をモードと称する。モードは制御回路9によって自動的に設定されたり、あるいは操作者の指示入力によって設定される。制御回路9では、モード信号Smや各種の制御信号を生成する。モード信号Smは、モードを指示するとともに後述するRAM52を構成する各ページを指定する。なお、ページとはゲインテーブル5を構成するRAM52を分割して得られる各記憶領域の単位である。ここで、モードの数は任意であるが、この例では、第1モードから第3モードまでが用意されているものとする。第1モードにおける利得特性の精度は低く、第2モードの精度は普通であり、第3モードの精度は高くなるように設定されている。
【0013】
また、モード信号Smは4ビットのデータである。モード信号Smの上位2ビットは、モードを指示するものであり、そのデータ値が“00”のとき第1モードを、そのデータ値が“01”のとき第2モードを、そのデータ値が“10”のとき第3モードを各々指示する。一方、モード信号Smの下位2ビットは、RAM52のページを指示する。後述するようにRAM52はモードに応じて分割して使用される。第1モードでは分割されたページ数は4であり、第2モードでは分割されたページ数は2、第3モードでは分割されずRAM52全体を1ページとして使用する(図8参照)。
【0014】
まず、モード信号Smの上位2ビットが“00”の場合(第1モード)には、その下位2ビットが“00”のとき第1ページを、その下位2ビットが“01”のとき第2ページを、その下位2ビットが“10”のとき第3ページを、その下位2ビットが“11”のとき第4ページを各々指示する。次に、モード信号Smの上位2ビットが“01”の場合(第2モード)には、その下位2ビットが“00”のとき第1ページを、その下位2ビットが“01”のとき第2ページを各々指示する。次に、モード信号Smの上位2ビットが“10”の場合(第3モード)には、その下位2ビットは一義的に“00”となりRAM52全体を1ページとして指定する。
【0015】
図2は、入力データDinとモード信号Smとの関係の一例を示すタイミングチャートである。この図に示すように各データD1、D2、…、D256とモード信号Sm1〜Sm256は、基準クロック信号CKrefに同期している。また、データD1に対応するモード信号Sm1は“0001”となっている。この場合、モード信号Sm1の上位2ビットは“00”であるからデータD1は第1モードに従って処理され、その下位2ビットは“01”であるから第2ページが指定されることになる。
【0016】
<1−2:制御回路>
まず、制御回路9は、データ処理装置全体を制御する各種の制御信号を生成するものである。図3は、制御回路9の主要部を示すブロック図である。この図に示すように、制御回路9は、プログラムRAM90とアドレスカウンタ91とを備えている。プログラムRAM90はアドレス0からアドレス255で指定される256個の記憶領域を有しており、各記憶領域にモード信号Sm、ホールド時間T1を指示するホールドデータHD、第1減衰率R1を指示する第1減衰率データGDx、第2減衰率R2を指示する第2減衰率データGDy、および減衰切換レベルL1を指示するレベル切換データLDの組が記憶されている。なお、ホールド時間T1、第1減衰率R1、第2減衰率R2および減衰切換レベルL1は、後述するピークホールド/時間減衰回路3において入力データDinに付与される特性のパラメータであり、それらの詳細については後述する。
【0017】
これらのデータは、外部から供給されるようになっており、ミキサーに当該データ処理装置を組み込んで使用する場合には、ミキサー全体を制御するCPUからこれらのデータがロードされるようになっている。例えば、使用者がミキサーの操作子を操作すると、CPUはこれを検知して操作量に応じてデータ値を変更したデータの組を生成し、プログラムRAM90にロードする。したがって、入力データDinに付与する特性のパラメータは動的に変更することが可能である。
【0018】
また、プログラムRAM90に記憶されたデータの組は、アドレスカウンタ91のカウント値に従って読み出されるようになっている。アドレスカウンタ91は、8ビットのリングカウンタで構成されており、基準クロック信号CKrefをカウントしてアドレスを生成する。このため、プロクラムRAM90に記憶されたデータの組はアドレス0から順次読み出される。そして、アドレス255のデータの組が読み出された後は、アドレス0に戻りデータの組を読み出し、これを繰り返すことになる。上述したように基準クロック信号CKrefの周波数は256fsであるから、1サンプリング期間の入力データDinを構成する各データD1〜D256の各々に対して個別の処理を施すことが可能となる。
【0019】
<1−3:絶対値生成回路>
次に、絶対値生成回路1は、入力データDinの絶対値を生成する。図4は、絶対値生成回路の一構成例を示すブロック図である。この図に示すように絶対値生成回路1は、32ビットの入力データDin のうちの最上位ビット(MSB)B31と他の各ビットB0 〜B30との排他的論理和を出力する31個のEX−ORゲート1000 〜1030を備えており、入力データDinが正の値である場合[MSB(B63)=0の場合]には、B62〜B0 をそのまま出力し、入力データDinが負の値である場合[MSB(B31)=1の場合]には、B30〜B0を反転させて出力し、さらににMSB(Q31)を0に固定することにより、32ビットの絶対値データDzを生成する。
【0020】
<1−4:対数変換回路>
次に、図1に示す対数変換回路2は、セレクタとORゲートとを組み合わせた周知回路によって構成されており、32ビットのリニアの絶対値データDzを12ビットの瞬時対数データDLに変換する。対数変換回路2は、データのビット幅を圧縮して後段のピークホールド/時間減衰回路3、ゲインテーブル5およびデータ補間回路6等の回路規模を縮小するとともにそれらの演算時間を短縮するために用いられる。
【0021】
<1−5:ピークホールド/時間減衰回路>
次に、12ビットの瞬時対数データDLは、ピークホールド/時間減衰回路3に入力される。ピークホールド/時間減衰回路3は、入力される瞬時対数データDLに対して、ピーク保持と時間的減衰処理を施すことにより、概略的な対数エンベロープを求め、12ビットのエンベロープデータDe(振幅データ)として出力する回路である。
【0022】
この回路では、図9(c)に示すピークホールド/時間減衰された近似的な対数エンベロープが求められる。同図における「追従区間」は入力されるサンプル値のレベルの増大に伴ってエンベロープデータが増加する区間である。「ホールド区間」は信号のサンプル値は減少又は低い値をとるが、エンベロープデータは以前の値を保持し続ける区間である。この時間は、制御回路9から与えられるパラメータ(ホールドタイムT1)によって決められる。「ホールド区間」においては、入力が新たに保持レベルを超えない限りエンベロープデータが更新されないので、正弦波の谷の部分等がマスクされる。また、入力が新たに保持レベルを超えると、エンベロープデータが更新され、そこから再度「ホールド区間」が始まる。したがって、上述の「追従区間」は、出力データの更新が1サンプル毎に行われている区間であるともいえる。
【0023】
「ホールド区間」が終了すると、「自動減衰区間」に入る。ここでは、この区間を「自動減衰区間1」と「自動減衰区間2」の2つの区間に分けている。両者は対数レベルコードが外部から与えられるパラメータ(減衰切換レベルL1)より大か小かで分けられ、それぞれの区間で異なる減衰率R1,R2を持つ。これらの減衰率R1,R2は制御回路9から与えられるパラメータである。このように、瞬時対数データの正確なエンベロープではなく、減衰時定数等が調整された信号を使用することにより、コンプレッサ/リミッタにおける、いわゆる息継ぎ現象(信号の変動に応じて小刻みに雑音や背景音のレベルが変動し、息継ぎをするように感じられる不快な現象)を効果的に抑制することができる。適切な「ホールド区間」を持つことは、「息継ぎ現象」の防止に有効であり、信号レベルに応じて減衰率を切換えるのは、高い信号レベルでの圧縮動作と低い信号レベルでの伸長動作とで聴感上適切な減衰率が異なるためである。
【0024】
図5は、ピークホールド/時間減衰回路3の具体的な構成例を示すブロック図である。瞬時対数データDLは、ダウンカウンタ31に入力されると共に、コンパレータ32に入力される。ダウンカウンタ31は、新規入力された入力データが現在の出力データを超えたことを示すコンパレータ32の出力に基づいて、ANDゲート33を通過するクロックCK1に同期して入力データをロードする。入力データが出力データよりも小さいときは、コンパレータ32の出力が0となるので、ダウンカウンタ31にはピーク値がホールドされたままとなり、入力データは何の影響も与えない。
【0025】
一方、ダウンカウンタ31に新しい入力データがロードされるのと同時にダウンカウンタ34にも予め設定されたホールド時間T1がロードされる。ダウンカウンタ34は、クロックCK2によりダウンカウントし、ホールド時間T1だけカウントしたら出力Zを1にする。これにより、ANDゲート35を介してクロックCK2がダウンカウンタ31のクロックとして入力される1つの条件が成立する。Z出力は、ダウンカウンタ31が新規入力で更新されてからホールドタイムT1だけカウントダウンを禁止するための信号である。
【0026】
クロックCK2がダウンカウンタ31に入力されるもうひとつの条件は、分周器38の出力である。即ち、ダウンカウンタ31の出力は、コンパレータ36において、減衰切換レベルL1と比較される。その比較出力は、セレクタ37の切換入力信号SBとなる。セレクタ37は、切換入力信号SBが0(出力>L1)のときに減衰率R1を選択出力し、切換入力信号SBが1(出力<L1)のときに減衰率R2を選択出力する。セレクタ37の出力は、プログラマブル分周器38の分周数Nとして供給される。分周器38は、クロックCK2をN分周し、Nクロック周期のクロックをCに出力する。したがって、ANDゲート35からは、減衰率R1又はR2で決定される周期のパルスがダウンカウンタ31に与えられ、ダウンカウンタ31のダウンカウント速度が2段階に変化するようになっている。そして、ダウンカウンタ31の出力データが12ビットのエンベロープデータDeとしてデータ分離回路4に出力される。
【0027】
エンベロープデータDeは入力データDinの振幅レベルを示すものであるが、これに基づいて、最終的には入力データDinに付与する利得特性が制御されることになる。この意味において、エンベロープデータDeは利得特性を制御するための制御データとして機能する。
【0028】
<1−6:データ分離回路>
次に、図1に示すデータ分離回路4は、モード信号Smに基づいて、12ビットのエンベロープデータDeを上位ビットデータDxと下位ビットデータDyとに分離する。
【0029】
具体的には、エンベロープデータDeの最上位ビットMSBから何ビット目で上位と下位とを分離するかを定めた分離ビット数が、モード信号Smのデータ値に応じて予め定められており、データ分離回路4はこれに従って動作する。
【0030】
図6は、本実施形態におけるモードに応じた分離態様の一例を示す図である。例えば、モード信号Smの上位2ビットのデータ値が“00”で第1モードの場合には、同図(a)に示すように、エンベロープデータDeの最上位ビットMSBから4ビット目までが上位ビットデータDxとなり、残りの8ビットが下位ビットデータDyになる。また、モード信号Smの上位2ビットのデータ値が“01”で第2モードの場合には、同図(b)に示すように、エンベロープデータDeの最上位ビットMSBから5ビット目までが上位ビットデータDxになり、残りの7ビットが下位ビットデータDyになる。さらに、モード信号Smの上位2ビットのデータ値が“10”で第3モードの場合には、同図(c)に示すように、エンベロープデータDeの最上位ビットMSBから6ビット目までが上位ビットデータDxになり、残りの6ビットが下位ビットデータDyになる。
【0031】
<1−7:ゲインテーブル>
次に、ゲインテーブル5について説明する。図7は、ゲインテーブル5の詳細な構成を示すブロック図である。この図に示すようにゲインテーブル5は、読出アドレス生成回路51およびRAM52を備えている。
【0032】
まず、読出アドレス生成回路51は、4〜6ビットの上位ビットデータDxとモード信号Smとに基づいて、6ビットの読出アドレスRAを生成する。なお、後述するデータ補間回路6は連続する2つの利得データDgと下位ビットデータDyに基づいて直線補間を実行するので、読出アドレス生成回路51は、1個の上位ビットデータDxに対して2個の読出アドレスRAを生成するようになっている。以下の説明では、上位ビットデータDxから直接生成される読出アドレスRAを第1読出アドレスRAxと、これを“1”だけインクリメントして得られるアドレスを第2読出アドレスRAyと称することにする。但し、第1読出アドレスRAxが最大値のときは、インクリメントは行わずRAx=RAyとする。
【0033】
読出アドレス回路51は、具体的に以下の手順で第1読出アドレスRAxを生成する。第1にモード信号Smの上位2ビットに基づいてモードを特定する。第2に特定されたモードに基づいてモード信号Smの最下位ビットから所定数のビットを分離する。第1モードでは下位2ビット、第2モードにあっては下位1ビット、第3モードでは分離を行わない。第3に分離されたビットと上位ビットデータDxとを組み合わせて第1読出アドレスRAxを生成する。第1モードでは分離された下位2ビットと4ビットの上位ビットデータDxとを組み合わせて第1読出アドレスRAxを生成し、第2モードでは分離された下位1ビットと5ビットの上位ビットデータDxとを組み合わせて第1読出アドレスRAxを生成し、第3モードでは6ビットの上位ビットデータDxをそのまま第1読出アドレスRAxとして用いる。
【0034】
次に、RAM52は、1ワードが32ビットで64ワードの記憶容量を有するデュアルポート型の記憶装置であって、データの書き込みと読み出しを同時に実行することが可能である。RAM52は、ライトイネーブル信号WEがアクティブのときRAM52の書き込みが可能となり、ライトアドレスWAによって指定される記憶領域に利得データDgを書き込む。そして、リードイネーブル信号REがアクティブのとき読み出しが可能となる。利得データDgや信号WE、WAおよびREは制御回路9から供給されるようになっている。したがって、必要に応じてRAM52の記憶内容は書き換えることが可能であり、例えば、このデータ処理装置をミキサーに組み込んで使用する場合には、使用者が操作子を操作すると、上述したようにパラメータの変更が行われるが、これと連動してRAM52の記憶内容を更新することも可能である。
【0035】
また、RAM52には、1ワードが32ビットの利得データDgが記憶され、必要に応じて読み出されるようになっている。エンベロープデータDeのビット数は12ビットであるから、RAM52の記憶容量は、本来、4096ワード必要となる。しかしながら、本実施形態では、後述するデータ補間回路6を用いて補間処理を行うため、その記憶容量は大幅に圧縮されている。
【0036】
さらに、RAM52の記憶領域はモードに応じて分割して使用される。図8は、モードと記憶領域の分割の関係を示す概念図である。第1モードにあっては、同図(a)に示すようにRAM52の記憶領域は16ワード毎に4分割され、記憶領域52A(第1ページ)に第1利得データDgaが、記憶領域52B(第2ページ)に第2利得データDgbが、記憶領域52C(第3ページ)に第3利得データDgcが、記憶領域52D(第4ページ)に第4利得データDgdが書き込まれるようになっている。第1〜第4利得データDga〜Dgdは各々16個のデータから構成されている。RAM52には64ワードの利得データDgが記憶されるから、ある利得データDgを指定して読み出すためには6ビットの読出アドレスRAが必要となる。第1モードの読出アドレスRAのうち、上位2ビットはページ番号を指定する一方、下位4ビットはページ内のアドレスを指定する。
【0037】
次に、第2モードにあっては、同図(b)に示すようにRAM52の記憶領域は2分割され、記憶領域52Aおよび52Bに第5利得データDgeが、記憶領域52Cおよび52Dに第6利得データDgfが書き込まれる。第5利得データDgeと第6利得データDgfは、各々32個のデータから構成されている。第2モードの読出アドレスRAのうち、上位1ビットはページ番号を指定する一方、下位5ビットはページ内のアドレスを指定する。
次に、第3モードにあっては、同図(c)に示すようにRAM52の記憶領域は分割されず、記憶領域52A〜52Dに第7利得データDggが書き込まれる。第7利得データDggは、64個のデータから構成されている。
【0038】
ここで、第1〜第7利得データDga〜Dggの各ワード数は、第1〜第4利得データDga〜Dgdが各16ワードであり、第5および第6利得データDge,Dgfが各32ワードであり、第7利得データDggが64ワードになっている。すなわち、第1モード、第2モード、第3モードの順に、付与すべき利得特性の精度が向上する一方、処理可能な音楽データの数が減少する。
【0039】
付与すべき利得特性の精度は、高精度のものが要求されることもあれば、精度がそれ程要求されないこともある。この例では、モードに応じてRAM52の記憶領域を分割する態様を変更したので、精度がさほど要求されないときにはRAM52の分割数を増やして、そこに複数種類の利得データDgを記憶することができる一方、精度が要求される場合にはRAM52の分割数を減らしてデータ容量の大きい利得データDgを記憶することができる。
【0040】
以上の構成において、入力データDinに利得特性を付与する際には、まず、制御回路9がモードに応じた利得データDgと書込アドレスWAを生成して、ゲインテーブル5に供給する。すると、利得データDgが書込アドレスWAに従ってRAM52の所定の記憶領域に書き込まれ、必要に応じて利得データDgが読み出されることになる。
【0041】
<1−8:データ補間回路>
次に、図1に示すデータ補間回路6は、ゲインテーブル5から読み出される連続した2個の利得データDgと下位ビットデータDyとに基づいて、直線補間を施して補間利得データDg’を生成する。
例えば、第1モードの場合(下位ビットデータDyが8ビット)において、読み出された2個の利得データDgの値がX(n),X(n+1)であり、下位ビットデータDyの値がY、補間利得データDg’の値がGとすれば、データ補間回路6は、以下に示す式を計算して補間利得データDg’を生成する。
G=X(n)+(X(n+1)−X(n))・Y/2N
但し、Nは下位ビットデータDyのビット数であり、第1モードではN=8(2N=256)である。また、Nはモードに応じて定まるので、データ補間回路6は、モード信号Smのデータ値に応じてNを設定するようになっている。
このデータ補間回路6によって利得データDgのデータ補間を行うので、上述したRAM52の記憶容量を大幅に削減することができる。
【0042】
<1−9:対数逆変換回路および乗算回路>
次に、対数逆変換回路7は、対数変換回路と相補的な関係にあり、32ビットの補間利得データDg’を対数表現からリニア表現へ変換して32ビットのリニア利得データDGを生成する。
次に、乗算回路8は、入力データDinとリニア利得データDGとを乗算して出力データDoutを生成する。
【0043】
<2.実施形態の動作>
次に、データ処理装置の動作について説明する。まず、制御回路9においてモードが特定されると、ゲインテーブル5にモードに応じた利得データDgが書き込まれる。ここで、特定されたモードが第3モードであるとすれば、利得特性付与処理におけるデータ処理装置の各部の波形は、例えば、図9に示すものとなる。なお、この図においては、各部のデータ値をアナログ信号のレベルに置き換えて表現してある。
【0044】
同図(a)に示す入力データDin(アナログ信号として図示)が絶対値生成回路1に供給されると、絶対値生成回路1は同図(b)に示す絶対値データDzを生成する。これにより、アナログ的には両波整流が行われることになる。
この後、ピークホールド/時間減衰回路3が絶対値データDzに基づいて、同図(c)に示すエンベロープデータDeを生成すると、データ分離回路4によってエンベロープデータDeが上位ビットデータDxと下位ビットデータDyに分離される。この例のモード種別は第3モードであるから、上位ビットデータDxと下位ビットデータDyのビット数はともに6ビットである。
この場合、読出アドレス生成回路51は、エンベロープデータDeの1単位時間中(1/256fs)に、まず、上位ビットデータDxを第1読出アドレスRAxとして生成し、次に、上位ビットデータDxを“1”だけインクリメントしたデータを第2読出アドレスRAyとして生成する。これにより、RAM52からは2個の利得データDgが読み出されることになる。同図(d)に示したものは、最初に読み出される利得データDgである。
【0045】
この後、データ補間回路6が2個の利得データDgと下位ビットデータDyに基づいて補間処理を行って、補間利得データDg’を生成すると、対数逆変換回路7が補間利得データDg’をリニア表現に変換してリニア利得データDGを生成する。そして、乗算回路8においてリニア利得データDGと入力データDinとが乗算されることによって、入力データDinに利得特性が付与され、同図(e)に図示する出力データDoutが得られる。
【0046】
図10は、データ処理装置の各部の動作を示すタイミングチャートである。なお、この図において各部の動作遅延時間は無視してある。同図(a)に示すようにあるサンプリング期間において、256個の音楽データD1〜D256が入力データDinとしてデータ処理装置に供給されると、ピークホールド/時間減衰回路3は、各音楽データD1〜D256に対応して同図(b)に示すように各エンベロープデータDe1〜De256を生成する。
【0047】
次に、データ分離回路4は、モード信号Smが指示するモード種別に応じて、定められるビット数に従って、各エンベロープデータDe1〜De256のうち最上位ビットから所定ビットを各々抽出し、同図(c)に示す上位ビットデータDx1〜Dx256を生成する。例えば、モード信号Smの上位2ビットのデータ値が“00”であって第1モードを指示する場合には、上位4ビットを抽出して、上位ビットデータDx1〜Dx256を生成する。また、モード信号Smの上位2ビットのデータ値が“01”であって第2モードを指示する場合には上位5ビットが、モード信号Smの上位2ビットのデータ値が“10”であって第3モードを指示する場合には上位6ビットが抽出される。このようにして抽出された上位ビットデータDx1〜Dx256は、RAM52の各ページにおけるページ内アドレスに対応している。換言すれば、モードに応じてエンベロープデータDe1〜De256から抽出する上位ビットのビット数を定めている。
【0048】
次に、読出アドレス生成回路51は、同図(d)に示すように、基準クロック信号CKrefの1周期毎に、モード信号Smの下位ビットを抽出してページアドレスPA1〜PA256を生成する。各ページアドレスPA1〜PA256は記憶領域52A〜52Dの種別を指示するアドレスである。例えば、当該期間中は第1モードであり、モード信号Smの下位2ビットが、期間T1で“00”、期間T2で“01”、期間T3で“10”、期間T4で“11”といったように変化するならば、期間T1で第1ページ(記憶領域52A)、期間T2で第2ページ(記憶領域52B)、期間T3で第3ページ(記憶領域52C)、期間T4で第4ページ(記憶領域52D)が指定されることになる。
また、当該期間中は第2モードであり、モード信号Smの下位2ビットが、期間T1およびT2で“00”、期間T3およびT4で“01”といったように変化するならば、期間T1およびT2で第1ページ(記憶領域52Aおよび52B)、期間T3およびT4で第2ページ(記憶領域52Cおよび52D)が指定されることになる。
さらに、当該期間中が第3モードであるならば、モード信号Smの下位2ビットは一義的に“00”となる。この場合は、記憶領域52A〜52Dを1ページとして取り扱うので、ページアドレスPA1〜PA256の生成は行われない。
【0049】
次に、読出アドレス生成回路51は、ページアドレスPA1〜PA256と上位ビットデータDx1〜Dx256とを各々組み合わせて、第1読出アドレスRAx1〜RAx256を生成する。
例えば、第1モードにおいて、期間T3におけるページアドレスPA3が“10”であり、上位ビットデータDx3が“0000”であるとすれば、第1読出アドレスRAxは“100000”となる。これにより、第1モードにおける第3ページ(記憶領域52C)の先頭に記憶されているデータが指定される。第1モードでは、RAM52を4分割して、各ページに異なる種類の利得データDgを格納できるので、複数種類の利得特性を付与できるといった利点がある。
【0050】
また、第2モードにおいて、期間T4におけるページアドレスPA4が“1”であり、上位ビットデータDx4が“10000”であるとすれば、第1読出アドレスRAxは“110000”となる。これにより、第2モードにおける第2ページ後半(記憶領域52D)の先頭に記憶されているデータが指定される。第2モードにあってはRAM52の分割数が2であり、分割数が4である第1モードと比較して利得データDgの種類が少なくなる。しかしながら、1ページ当たりのワード数は32であり、1ページ当たり16ワードの第1モードと比較して利得精度を向上させることが可能である。
【0051】
さらに、第3モードにおいて、期間T1における上位ビットデータDx1が“000000”であるとすれば、第1読出アドレスRAxは“000000”となる。これにより、記憶領域52Aの先頭に記憶されているデータが指定される。第3モードにあっては、RAM52を分割して使用しないので、読出アドレス生成回路51は、6ビットの上位ビットデータDxをそのまま第1読出アドレスRAxとして使用する。第3モードにあっては、単一の利得特性しか付与することができないが、1ページ当たり64ワードを使用することが可能となるので、利得精度をより一層向上させることが可能となる。
【0052】
次に、アドレス生成回路51は、第1読出アドレスRAx1〜RAx256を“1”だけインクリメントして第2読出アドレスRAy1〜RAy256を生成する。なお、RAxとRAyの生成タイミングは、同図(e)に示すように、まず、基準クロック信号CKrefがHレベルの期間において第1読出アドレスRAx1〜RAx256が生成され、次に、基準クロック信号CKrefがLレベルの期間において第2読出アドレスRAy1〜RAy256が生成されるようになっている。
【0053】
第1および第2読出アドレスRAx,RAyがRAM52に供給されると、同図(f)に示すように2個で1組の利得データDgx1,Dgy1〜Dgx256,Dgy256がRAM52から読み出される。
この後、データ補間回路6は、2個の利得データDgx1,Dgy1〜Dgx256,Dgy256と同図(g)に示す下位ビットデータDy1〜Dy256とに基づいて補間処理を行い、同図(h)に示す補間利得データDg1’〜Dg256’を生成する。そして、これらの結果に基づいて、乗算回路8が入力データDinに利得特性を付与することによって、同図(i)に示す出力データDout1〜Dout256が生成される。
【0054】
このように本実施形態にあっては、モードに応じてRAM52を適宜分割して精度の異なる利得データDgを記憶する一方、エンベロープデータDeからモードに応じて定めた上位ビットを分離し、これに基づいてRAM52をアクセスする読出アドレスRAを生成するようにした。したがって、このデータ処理装置によれば、付与すべき利得特性の精度が低くてもよい場合には利得データDgの種類を増加させる一方、必要に応じて利得特性を高い精度で付与することもできる。この結果、データ処理装置の汎用性を高めることができる。
【0055】
さらに、利得データDgと下位ビットデータDyに基づいて補間処理を行うので、RAM52の記憶容量を削減することができる。くわえて、対数変換回路2と対数逆変換回路7を用いて、データのビット数を減らしているので、RAM52の記憶容量を削減するとともに、データ補間回路6の演算時間を短縮することができる。
【0056】
<3.変形例>
以上、本発明に係わる実施形態を説明したが、本発明は上述した実施形態に限定されるものではなく、以下に述べる各種の変形が可能である。
(1)上述した実施形態では、入力データDinより生成されたエンベロープデータDeに基づいて、利得特性の制御を行ったが、本発明はこれに限定されるものではなく、外部から与えられる信号より生成されたエンベロープデータDeに基づいて、利得制御を行ってもよいことは勿論である。
【0057】
(2)上述した実施形態では、入力データDinとして音楽データを想定したが、本発明はこれに限定されるものではなく、画像データにワイプやクロマキーといった各種の効果を付与するデータ処理装置であってもよい。
【0058】
(3)上述した実施形態では、RAM52の記憶領域を均等に分割したが、本発明はこれに限定されるものではなく、不均等に分割してもよいことは勿論である。例えば、図11(a)に示すように記憶領域52Aと52Bに16ワードの第1利得データDgaと第2利得データDgbを記憶し、記憶領域52Cおよび52Dに32ワードの第5利得データDgeを記憶するようにしてもよい。また、同図(b)に示すようにRAM52の替わりに128ワードのRAM52’を用いて、記憶領域52A〜52DにはRAM52と同様の利得データDgを記憶する一方、記憶領域52E〜52Hには64ワードの第7利得データDggを記憶するようにしてもよい。
要は、処理モードに応じてRAM52の記憶領域を分割し、各記憶領域に所望の利得データを予め記憶する一方、必要に応じて変換される当該処理モードに応じて、エンベロープデータDeから上位ビットデータDxを生成し、上位ビットデータDxにモードに応じた処理を施して読出アドレスRAを生成するのであれば、どのような構成であってもよい。
【0059】
さらに、入力データDinの処理中にRAM52の記憶内容を更新するようにしてもよい。例えば、ある期間中において第1モードが指定され、入力データDinを構成する各データD1〜D256に対して第1ページから第4ページを順次指定しこれを繰り返す場合には、当該期間において第1利得データDga〜第4利得データDgdを順次使用するため、図8(a)に示すように各ページ(記憶領域52A〜52D)に第1利得データDga〜第4利得データDgdを記憶しておく必要があるが、次のサンプリング期間において、そのサンプリング期間の前半において第1モードを指定して第1利得データDgaと第2利得データDgbを使用し、後半期間において第2モードを指定し第5利得データDgeを使用する場合には、図12に示すようにRAM52の記憶内容を更新してもよい。この場合、基準クロックCKrefの1周期を1単位時間tとしたとき、前半期間Taと後半期間Tbは128単位時間128tで構成される。この前半期間Taでは記憶領域52Cおよび52Dからデータが読み出されることがないので、前半期間Taのうち32単位時間32tを用いて、RAM52の記憶領域52Cおよび52Dの記憶内容を、第3利得データDgcおよび第4利得データDgdから第5利得データDgeに書き換える。これによって、後半期間Tbの開始時点において、第5利得データDgeを使用することが可能となる。
【0060】
したがって、本発明によれば、入力データDinを連続して処理している期間中にRAM52に記憶されている利得データDgを書き換えることができる。これにより、少ないRAM52の記憶容量を効率的に活用して、精度や種別の異なる各種の利得データを使用することが可能となるので、データ処理装置の汎用性をより一層高めることができる。
くわえて、入力データDinを連続して処理している期間中に利得データDgの更新を行わないのであれば、RAM52としてデュアルポート型のものを用いる必要はなくシングルポート型のものを用いればよいことは勿論である。
【0061】
【発明の効果】
上述したように本発明に係る発明特定事項によれば、処理モードに応じて記憶部の記憶領域を分割し、各記憶領域に利得データを記憶する一方、制御データの上位ビットを分離し、これに基づいて記憶部をアクセスするようにしたので、記憶領域を無駄なく活用することができ、データ処理装置の汎用性を大幅に向上させることができる。
【図面の簡単な説明】
【図1】この発明の一実施形態に係るデータ処理装置のブロック図である。
【図2】同装置における入力データとモード信号との関係の一例を示すタイミングチャートである。
【図3】同装置における制御回路の主要構成を示すブロック図である。
【図4】同装置における絶対値生成回路の一構成例を示すブロック図である。
【図5】同装置におけるピークホールド/時間減衰回路の具体的な構成例を示すブロック図である。
【図6】同装置のデータ分離回路におけるモードに応じた分離態様の一例を示す図である。
【図7】同装置のゲインテーブルの詳細な構成を示すブロック図である。
【図8】同テーブルにおけるモードと記憶領域の分割の関係を示す概念図である。
【図9】同装置の全体動作を示す波形図である。
【図10】同装置の各部の動作を示すタイミングチャートである。
【図11】変形例におけるRAMにおいて記憶領域の分割の様子を示す概念図である。
【図12】変形例におけるRAMにおいて記憶内容の更新動作を示すタイミングチャートである。
【図13】非線形な利得特性を持つ場合の入出力特性の一例を示す特性図である。
【図14】同入出力特性を得るための利得特性を示す特性図である。
【符号の説明】
1…絶対値生成回路、2…対数変換回路、3…ピークホールド/時間減衰回路、4…データ分離回路(データ分離部)、5…ゲインテーブル、51…読出アドレス生成回路(読出アドレス生成部)、52…RAM(記憶部)、6…データ補間回路(データ生成部、補間部)、8…乗算回路(データ生成部、乗算部)、9…制御回路、Sm…モード信号、RA…読出アドレス、De…エンベロープデータ(制御データ)、Din…入力データ、Dx…上位ビットデータ、Dy…下位ビットデータ、Dg…利得データ、Dg’…補間利得データ、Dout…出力データ。
Claims (6)
- 入力データに各種の利得特性を付与するデータ処理装置において、
付与すべき利得特性の精度を示す処理モードに応じて定められた分離ビット数に従って、前記入力データに所定の処理を施して得た制御データから上位ビットデータを分離するデータ分離部と、
前記処理モードに応じて、分割された各記憶領域に各利得データを予め記憶する記憶部と、
前記上位ビットデータに前記処理モードに応じた処理を施して読出アドレスを生成する読出アドレス生成部と、
前記読出アドレスに基づいて前記記憶部から読み出した利得データに基づいて、前記入力データに利得処理を施して出力データを生成するデータ生成部と
を備えることを特徴とするデータ処理装置。 - 前記入力データに基づいて入力信号の振幅を検出して振幅データを生成する振幅データ生成部を備え、前記振幅データが前記制御データとして与えられることを特徴とする請求項1に記載のデータ処理装置。
- 前記各利得データは、異なる利得特性を指示することを特徴とする請求項1または2に記載のデータ処理装置。
- 前記データ分離部は、前記制御データを前記上位ビットデータと下位ビットデータに分離し、
前記データ生成部は、
前記記憶部から読み出した利得データに、前記下位ビットデータに基づいて補間処理を施して補間利得データを生成する補間部と、
前記補間利得データと前記入力データとを乗算して前記出力データを生成する乗算部と
を備えることを特徴とする請求項1または2に記載のデータ処理装置。 - 前記読出アドレス生成部は、前記処理モードに応じて各記憶領域を指示するアドレスを生成し、当該アドレスと前記上位ビットデータとを組み合わせて前記読出アドレスを生成することを特徴とする請求項1または2に記載のデータ処理装置。
- 書き換え可能な記憶部に記憶された利得データに基づいて、入力データに各種の利得特性を付与するデータ処理方法において、
付与すべき利得特性の精度を示す処理モードに応じて前記記憶部の記憶領域を分割し、分割された各記憶領域に各利得データを記憶し、
前記処理モードに応じて定められた分離ビット数に従って、前記制御データから上位ビットデータを分離し、
前記上位ビットデータに前記処理モードに応じた処理を施して読出アドレスを生成し、
前記読出アドレスに基づいて前記記憶部から読み出した利得データに基づいて、前記入力データに利得処理を施して出力データを生成する
ことを特徴とするデータ処理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2000353415A JP3591451B2 (ja) | 2000-11-20 | 2000-11-20 | データ処理装置およびデータ処理方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2000353415A JP3591451B2 (ja) | 2000-11-20 | 2000-11-20 | データ処理装置およびデータ処理方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2002158620A JP2002158620A (ja) | 2002-05-31 |
JP3591451B2 true JP3591451B2 (ja) | 2004-11-17 |
Family
ID=18826186
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2000353415A Expired - Fee Related JP3591451B2 (ja) | 2000-11-20 | 2000-11-20 | データ処理装置およびデータ処理方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3591451B2 (ja) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010171839A (ja) * | 2009-01-26 | 2010-08-05 | Furuno Electric Co Ltd | 無線通信機 |
JP4811475B2 (ja) * | 2009-02-27 | 2011-11-09 | ソニー株式会社 | 録音装置、録音方法、音声信号補正回路及びプログラム |
-
2000
- 2000-11-20 JP JP2000353415A patent/JP3591451B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2002158620A (ja) | 2002-05-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3293240B2 (ja) | ディジタル信号処理装置 | |
JP2722907B2 (ja) | 波形発生装置 | |
CA1076400A (en) | Digital generator for musical notes | |
US4700393A (en) | Speech synthesizer with variable speed of speech | |
JP3591451B2 (ja) | データ処理装置およびデータ処理方法 | |
US5290965A (en) | Asynchronous waveform generating device for use in an electronic musical instrument | |
US5886277A (en) | Electronic musical instrument | |
JP3826870B2 (ja) | 圧縮データ構造、波形生成装置および波形記憶装置 | |
JP3137043B2 (ja) | 波形メモリ音源装置および楽音発生装置 | |
JP3912304B2 (ja) | 圧縮データ構造、波形生成装置および波形記憶装置 | |
JP2790160B2 (ja) | 波形生成装置および波形記憶装置 | |
JP3252296B2 (ja) | 波形データ出力装置 | |
JP2882464B2 (ja) | 波形メモリ音源装置 | |
JP4107085B2 (ja) | 波形データ圧縮方法 | |
JP2993344B2 (ja) | 波形生成装置、波形記憶装置、波形生成方泡および波形記憶方法 | |
JPS6212519B2 (ja) | ||
JPS6278599A (ja) | 楽音信号発生装置 | |
JP3112743B2 (ja) | 音源装置 | |
JP3447715B2 (ja) | 楽音生成装置及び楽音生成方法 | |
JP3651675B2 (ja) | 電子楽器 | |
JPH1152996A (ja) | データ圧縮装置およびデータ伸長装置 | |
JP2007286503A (ja) | エンベロープ発生装置 | |
JP2001166777A (ja) | 音源装置 | |
JPH09198049A (ja) | 楽音合成装置 | |
JPH1049170A (ja) | 音源装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20040720 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20040803 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20040816 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313532 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20070903 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080903 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090903 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100903 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100903 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110903 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120903 Year of fee payment: 8 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130903 Year of fee payment: 9 |
|
LAPS | Cancellation because of no payment of annual fees |