(57)【要約】【課題】１ビットデジタル信号のレベル生成において、積和演算を行わなくとも、積和演算を行った場合と等価な結果を高速に算出することができる信号レベル生成方法及び装置、並びに信号レベル表示装置を提供する。【解決手段】順次入力される１ビットデジタル信号を時系列順に並べた並列的なビットパタンと、そのビットパタンに基づいてフィルタ演算処理した結果の値との対応関係を示すルックアップテーブルを予め生成しておき、ΔΣ変調により得られた１ビットデジタル信号が入力され、その入力された１ビットデジタル信号の各ビットを時系列順に並べた並列的なビットパタンを出力し、出力されたビットパタンをインデックスとして、上記ルックアップテーブルからそのビットパタンに対応するフィルタ演算処理結果の値を出力して信号レベルを生成する。【選択図】図５
2010032903.tif 000002
【特許請求の範囲】
【請求項１】
ΔΣ変調により得られた１ビットデジタル信号が入力され、該入力された１ビットデジタル信号の各ビットを時系列順に並べた並列的なビットパタンを出力するビットパタン出力部と、
上記ビットパタン出力部から出力されるビットパタンと、該ビットパタンに基づいてフィルタ演算処理した結果の値との対応関係を示すルックアップテーブルを記憶するルックアップテーブル記憶部とを備え、
上記ビットパタン出力部から出力されたビットパタンをインデックスとして、上記ルックアップテーブル記憶部に記憶されたルックアップテーブルに示される、該ビットパタンに対応するフィルタ演算処理結果の値を出力する信号処理装置。
【請求項２】
上記ビットパタンのインデックスは、フィルタ演算処理の結果が示された上記ルックアップテーブルのアドレスである請求項１記載の信号処理装置。
【請求項３】
上記ビットパタン出力部から出力される並列的なビットパタンは、ｎビットの部分ビットパタンのｍ個からなり、
上記ｎビットの部分ビットパタンをインデックスとして、該部分ビットパタン毎に上記ルックアップテーブルを参照して、該部分ビットパタンに対応するフィルタ演算処理結果の値をｍ個出力し、
さらに上記フィルタ演算処理結果のｍ個の値を合成する合成部を備え、
上記合成部において、上記部分ビットパタン毎に出力したｍ個の上記フィルタ処理演算結果の値を加算することによって、上記１ビットデジタル信号のフィルタ演算処理結果を算出する請求項１又は２記載の信号処理装置。
【請求項４】
上記ビットパタン出力部から出力される並列的なビットパタンは、ｎビットの部分ビットパタンのｍ個からなり、
上記ｎビットの部分ビットパタンをインデックスとして、該部分ビットパタン毎に上記ルックアップテーブルを参照して、該部分ビットパタンに対応するフィルタ演算処理結果の値をｍ個出力し、
さらに、上記部分ビットパタン毎の上記フィルタ演算処理結果の値をビットパタン化して生成した第２のルックアップテーブルを備え、
上記部分ビットパタン毎の上記フィルタ演算処理結果の値をビットパタン化したビットパタンをインデックスとして、上記第２のルックアップテーブルに示される該ビットパタンに対応するフィルタ演算処理結果を出力する請求項１又は２記載の信号処理装置。
【請求項５】
上記フィルタ演算処理は、信号レベルを生成するための処理である請求項１乃至４のうち何れか１項記載の信号処理装置。
【請求項６】
上記１ビットデジタル信号は、音声信号である請求項１乃至５のうちの何れか１項記載の信号処理装置。
【請求項７】
上記１ビットデジタル信号は、画像信号である請求項１乃至５のうちの何れか１項記載の信号処理装置。
【請求項８】
順次入力される１ビットデジタル信号を時系列順に並べた並列的なビットパタンと、該ビットパタンに基づいてフィルタ演算処理した結果の値との対応関係を示すルックアップテーブルを予め生成しておき、
ΔΣ変調により得られた１ビットデジタル信号が入力され、該入力された１ビットデジタル信号の各ビットを時系列順に並べた並列的なビットパタンを出力し、出力された該ビットパタンをインデックスとして、上記ルックアップテーブルから該ビットパタンに対応するフィルタ演算処理結果の値を出力する信号処理方法。
【請求項９】
ΔΣ変調により得られた１ビットデジタル信号が入力され、該入力された１ビットデジタル信号の各ビットを時系列順に並べた並列的なビットパタンを出力するビットパタン出力部と、
上記ビットパタン出力部から出力されるビットパタンと、該ビットパタンに基づいてフィルタ演算処理した結果の値との対応関係を示すルックアップテーブルを記憶するルックアップテーブル記憶部と、
上記ビットパタン出力部から出力されたビットパタンをインデックスとして、上記ルックアップテーブル記憶部に記憶されたルックアップテーブルに示される、該ビットパタンに対応するフィルタ演算処理結果の値を出力する信号レベル生成部と、
上記信号レベル生成部において出力されたフィルタ演算処理結果の値に基づいて信号レベルを表示する信号レベル表示部と
を備える信号レベル表示装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、信号処理装置及び方法に関し、特にΔΣ変調により得られた１ビットデジタル信号の信号を処理する信号処理装置及び信号処理方法に関する。また、その信号処理装置を適用することによって処理された信号レベルを表示する信号レベル表示装置に関する。
【背景技術】
【０００２】
例えば、サンプリング周波数ｆｓを４４．１ｋＨｚとし、ＰＣＭ方式により１サンプルを各チャネル１６ビットのマルチビットオーディオ信号として記録しているコンパクトディスク（Ｃｏｍｐａｃｔ Ｄｉｓｃ：ＣＤ)に対して、ΔΣ変調方式により生成された、サンプリング周波数が非常に高い周波数（例えば、６４ｆｓ；ＣＤのサンプリング周波数ｆｓの６４倍の周波数）での１ビットオーディオ信号を記録しているスーパーオーディオコンパクトディスク（Ｓｕｐｅｒ Ａｕｄｉｏ Ｃｏｍｐａｃｔ Ｄｉｓｃ：ＳＡＣＤ（商標）)が知られている。
【０００３】
また、近年では、１ビットオーディオ信号をＳＡＣＤだけでなく、記録再生可能なＤＶＤや半導体メモリへ記録・再生する装置や方法も提案されている。
【０００４】
これらオーディオ装置には、記録・再生音量の確認のため、レベルメータが取り付けられていることが多い。
【０００５】
ＰＣＭ方式では、１つ１つのサンプルがレベル（振幅情報）そのものを表しているため、オーディオデータのレベルをレベルメータに表示することは容易であった。
【０００６】
しかしながら、上述したＳＡＣＤに記録される１ビットオーディオ信号では、ＰＣＭ方式により得られたマルチビットオーディオ信号とは異なり、ノイズシェーピング技術によって高いＳ／Ｎを実現しているため、人間の可聴帯域（およそ２０ｋＨｚ）外にも周波数成分を持っている。この可聴帯域外成分は、アナログＬＰＦによって、概ね除去されるものであるため、１ビットオーディオ信号だけをみても可聴帯域内の信号レベルが分からないという問題があった。
【０００７】
このため、従来は、デジタルフィルタを使って１ビットオーディオ信号にローパスフィルタ処理を実施して可聴帯域内の信号成分を取り出し、マルチビット化してレベルを取り出すという操作が行われてきた。
【０００８】
具体的には、図１１に示すように、従来の記録・再生装置におけるレベル生成は、レベル生成部１０１において録音時・再生時ともに、１ビットオーディオ信号Ｄを順次連続して入力し、この１ビットオーディオ信号をタップ長ＮのフィルタＦＬＴ１０３にてフィルタ処理を施してレベル信号Ｌを生成し、レベル表示部１０２へと供給していた。
【０００９】
例として、図１２（Ａ）に入力される１ビットオーディオ信号を入力データＤ［ｉ］として、タップ長ｎのローパスフィルタ処理を行うフィルタのブロック図を示す。順次入力されてメモリＦＦ２００１〜２００ｎに格納される入力データＤ［ｉ］とローパスフィルタの係数Ｃ２０１１〜２０１ｎを乗算し、ＡＤＤ部２０２にてＮタップ分加算することでローパス出力Ｌｌｐｆ［ｉ］を得ることができ、これをレベル表示部にて表示する。なお、この処理を施す場合には、１ビットオーディオ信号Ｄは論理値（０／１）ではなく、実際の値（−１／＋１）を用いる必要がある。
【００１０】
また、フィルタ係数Ｃを必要としないローパスフィルタの実現方法として、移動平均フィルタ処理を挙げることができる。図１２（Ｂ）に移動平均フィルタ処理を行うブロック図を示す。順次入力されてメモリＦＦ３００１〜３００ｎに格納される入力データＤ［ｉ］を加算器３０１で加算し、その加算した結果をタップ長ｎで除算（１／ｎ）することによって、移動平均出力Ｌｍａ［ｉ］を得ることができ、これをレベル表示部にて表示する。この移動平均フィルタ処理のローパス特性はタップ長ｎで一意に決まってしまうため、任意のフィルタ係数Ｃを用いるローパスフィルタと比べて自由度は低いが、レベル生成を目的とする場合には、必要十分な特性を持つといえる。なお、この処理を施す場合には、１ビットオーディオ信号Ｄは論理値（０／１）ではなく、実際の値（−１／＋１）を用いる必要がある。
【００１１】
また、移動平均フィルタ処理と等価な処理を、フィルタ演算を行わずに１ビットオーディオ信号Ｎ個中の論理値０と１の個数をカウントしてレベルを生成する方法が提案されている（例えば、特許文献１参照）。
【００１２】
【特許文献１】特開２００３−１６７６７号公報
【発明の開示】
【発明が解決しようとする課題】
【００１３】
しかしながら、従来のレベル生成方法では、上述したローパスフィルタ処理を実施した場合でも、移動平均フィルタ処理を実施した場合でも、カウンタ処理を実施した場合でも、レベルを求めるためには１ビットオーディオ信号を１サンプルずつフィルタ演算処理して積和演算する必要があった。そして、ここで用いられている１ビットオーディオ信号は、例えば６４ｆｓ（＝２．８２２４ＭＨｚ）という極めて高いサンプリング周波数を持つため、単位時間に掛かる演算処理量が膨大なものとなっていた。
【００１４】
このため、ハードウェア、ソフトウェアを問わず、レベル生成を行う処理は、システム全体に大きな負荷を与えるものとなっており、回路規模、コスト、消費電力等が大きくなってしまうという問題があった。
【００１５】
そこで、本発明は、このような実情に鑑みて提案されたものであり、１ビットデジタル信号の信号処理において、積和演算を行わなくとも、積和演算を行った場合と等価な結果を高速に算出することができる信号処理装置及び方法を提供することを目的とする。
【課題を解決するための手段】
【００１６】
上述した課題を解決するため、本発明における信号処理装置は、ΔΣ変調により得られた１ビットデジタル信号が入力され、該入力された１ビットデジタル信号の各ビットを時系列順に並べた並列的なビットパタンを出力するビットパタン出力部と、上記ビットパタン出力部から出力されるビットパタンと、該ビットパタンに基づいてフィルタ演算処理した結果の値との対応関係を示すルックアップテーブルを記憶するルックアップテーブル記憶部とを備え、上記ビットパタン出力部から出力されたビットパタンをインデックスとして、上記ルックアップテーブル記憶部に記憶されたルックアップテーブルに示される、該ビットパタンに対応するフィルタ演算処理結果の値を出力する。
【００１７】
また、本発明における信号処理方法は、順次入力される１ビットデジタル信号を時系列順に並べた並列的なビットパタンと、該ビットパタンに基づいてフィルタ演算処理した結果の値との対応関係を示すルックアップテーブルを予め生成しておき、ΔΣ変調により得られた１ビットデジタル信号が入力され、該入力された１ビットデジタル信号の各ビットを時系列順に並べた並列的なビットパタンを出力し、出力された該ビットパタンをインデックスとして、上記ルックアップテーブルから該ビットパタンに対応するフィルタ演算処理結果の値を出力する。
【００１８】
また、上述した課題を解決するため、本発明における信号レベル表示装置は、ΔΣ変調により得られた１ビットデジタル信号が入力され、該入力された１ビットデジタル信号の各ビットを時系列順に並べた並列的なビットパタンを出力するビットパタン出力部と、上記ビットパタン出力部から出力されるビットパタンと、該ビットパタンに基づいてフィルタ演算処理した結果の値との対応関係を示すルックアップテーブルを記憶するルックアップテーブル記憶部と、上記ビットパタン出力部から出力されたビットパタンをインデックスとして、上記ルックアップテーブル記憶部に記憶されたルックアップテーブルに示される、該ビットパタンに対応するフィルタ演算処理結果の値を出力する信号レベル生成部と、上記信号レベル生成部において出力されたフィルタ演算処理結果の値に基づいて信号レベルを表示する信号レベル表示部とを備える。
【発明の効果】
【００１９】
本発明によれば、予めフィルタ演算を行った結果を示すルックアップテーブルを記憶しておき、入力された１ビットオーディオ信号をビットパタンとみなし、このビットパタンをインデックスとして、対応するフィルタ演算処理結果をルックアップテーブルから出力するようにしているので、簡単な回路によって、高速に信号レベルを生成することができる。
【発明を実施するための最良の形態】
【００２０】
以下、本発明を適用したいくつかの実施形態について、図面を参照にして詳細に説明する。なお、以下の説明では主に、説明の便宜の観点から１ビットデジタル信号は音声信号であるとし、この音声信号を１ビットオーディオ信号という用語をもって説明を行うこととするが、１ビットデジタル信号としては、当然画像信号であってもかまわず、この詳細な説明の最後において、１ビットデジタル信号が画像信号である場合の一例について説明する。
【００２１】
図１は、本発明に係る信号レベル生成装置及び信号レベル生成方法の具体例となる、レベル表示装置１５を内蔵した構成の半導体メモリ記録再生装置１のブロック図である。なお、本発明は半導体メモリ記録再生装置にのみ適用されるものではなく、例えば光ディス記録再生装置等にも適用することができる。
【００２２】
この半導体メモリ記録表示装置１は、図１に示す構成により、内蔵されたレベル表示装置１５を用い、Ａ／Ｄ変換器から出力される１ビットオーディオ信号、または半導体メモリから取り込んだ１ビットオーディオ信号のレベルを表示する。このレベル表示装置１５の構成及び動作については後述する。
【００２３】
まず、この半導体メモリ記録再生装置１の構成、及びこの半導体メモリ記録再生装置１が記録・再生するシステムについて説明する。
【００２４】
この半導体メモリ記録再生装置１は、メモリコントローラ１０と、ＣＰＵ／ＤＳＰ（Central Processing Unit／Digital Signal Processor）１１と、Ａ／Ｄ変換器１２と、Ｄ／Ａ変換器１３と、操作部１４と、レベル表示装置１５とから構成され、入力された１ビットオーディオ信号を半導体メモリ１６に書き込むとともに、その半導体メモリ１６から記録されたオーディオ信号を読み出して再生する。また、読み書きされる１ビットオーディオ信号は、レベル表示装置１５に送られて、信号レベルが生成されて表示される。
【００２５】
具体的に、メモリコントローラ１０は、ＣＰＵ／ＤＳＰ１１の制御に基づいて、半導体メモリ１６に対するオーディオデータの読み書きを制御する。すなわち、メモリコントローラ１０は、ＣＰＵ／ＤＳＰ１１の制御に基づいて、生成されたデジタル信号Ｄに基づくオーディオデータ等の各種データを一旦記憶すると共に、そのオーディオデータ等の各種データの半導体メモリ１６への書き込みを制御する。また、メモリコントローラ１０は、半導体メモリ１６からオーディオデータ等の各種データの読み出しを制御し、その読み出したデータをＣＰＵ／ＤＳＰ１１に供給する。
【００２６】
ＣＰＵ／ＤＳＰ１１には、メモリコントローラ１０を介して半導体メモリ１６が接続され、またＣＰＵ／ＤＳＰ１１には、信号レベルを生成して表示するレベル生成装置１５が接続されている。このＣＰＵ／ＤＳＰ１１は、操作部１４からの操作信号等に基づき、メモリコントローラ１０、Ａ／Ｄ変換器１２、Ｄ／Ａ変換器１３を制御するとともに、デジタル信号をレベル表示装置１５に供給し、レベル表示装置１５におけるレベル生成を制御する。
【００２７】
Ａ／Ｄ変換器１２は、信号入力端子１７を通じたアナログ信号Ａをデジタル信号Ｄに変換し、そのデジタル信号をＣＰＵ／ＤＳＰ１１に供給する。
【００２８】
Ｄ／Ａ変換器１３は、ＣＰＵ／ＤＳＰ１１の制御に基づいて半導体メモリ１６から読み出され、ＣＰＵ／ＤＳＰ１１を介して入力されたデジタル信号Ｄを受信すると、そのデジタル信号Ｄをアナログ信号Ａに変換する。生成したアナログ信号Ａは、図示しないパワーアンプ等を介し、信号出力端子１８を通じて出力される。
【００２９】
操作部１４は、図示しないが、例えば表面パネル等から構成されており、液晶表示板等によって形成された表示部を有し、またその表示部に各種の操作キーを備えている。操作部１４は、例えば、ユーザによるその表示部に表示された各種操作キーの操作によって、半導体メモリ１６への各種データの記録、または各種データの再生等を指定する。
【００３０】
ここで、半導体メモリ記録再生装置１の記録・再生処理を例にして、さらに上記各構成の動作について具体的に説明する。
【００３１】
半導体メモリ１６には、ΔΣ変調器により生成された１ビットオーディオ信号が直接記録される。図２には、１ビットオーディオ信号を生成するΔΣ変調器３０を示す。ΔΣ変調器３０は、入力されたアナログ信号Ａと、１ビットの出力信号の積分値（Σ：シグマ）との差分（Δ：デルタ）を加算器３１によって求め、１ビット量子化器３２に供給する。出力信号は論理０と論理１のビットよりなるが、図３に示すように、論理０と論理１は、実際の値としては＋１と−１をそれぞれ表している。
【００３２】
積分器３３は、１ビットの出力信号を累積し、入力されたアナログ信号Ａの値に追従する累積値を出力する。１ビット量子化器３２は、生成するビット毎に、累積値を増加（＋１）または減少（−１）させる。サンプリング周波数は、累積値がアナログ信号Ａの変化に十分追従することができるような高い周波数が必要となる。例えば、サンプリング周波数は、ＣＤの４４．１ｋＨｚ／１６ｂｉｔを１ｆｓとすると、１ビットオーディオ信号Ｄのそれは６４ｆｓ（＝２．８２２４ＭＨｚ）にも達する。
【００３３】
そして、この１ビットオーディオ信号Ｄは、操作部１４からの指示を受けたＣＰＵ／ＤＳＰ１１によって処理され、メモリコントローラ１０を介して半導体メモリ１６に記録される。また、この１ビットオーディオ信号Ｄは、レベル表示装置１５にも供給される。
【００３４】
一方、再生処理においては、まずＣＰＵ／ＤＳＰ１１が操作部１４からの指示を受けると、このＣＰＵ／ＤＳＰ１１は、半導体メモリ１６に記録された１ビットオーディオ信号Ｄをメモリコントローラ１０を介して取り出し、図１に示すメモリコントローラ１０を介してＤ／Ａ変換器１３に供給する。
【００３５】
図４に、１ビットオーディオ信号Ｄをアナログオーディオ信号Ａ”に変換するＤ／Ａ変換器１３であるところの、波形整形器４０とアナログローパスフィルタ４１を示す。１ビットオーディオ信号Ｄは波形整形器４０にて、図３と同様に、単なるビット情報から波形へと整形される。この段階では波形に可聴帯域外の周波数成分が含まれており、アナログローパスフィルタ４１を通過させることによって、可聴帯域外の周波数成分を概ね除去し、アナログオーディオ信号Ａ”に変換される。また、１ビットオーディオ信号Ｄは、レベル表示装置１５にも供給される。
【００３６】
次に、本実施の形態に係るレベル表示装置１５の構成及び動作について説明する。このレベル表示装置１５は、供給された１ビットオーディオ信号のレベルを生成するレベル生成部２０と、このレベル生成部２０で生成されたレベルを表示するレベル表示部２１を備えている。本実施の形態に係るレベル表示装置１５では、レベル生成部２０において、ΔΣ変調器３０からの１ビットオーディオ信号Ｄを順次連続して入力し、この１ビットオーディオ信号Ｄをビットパタンとみなし、そのビットパタンをインデックスとして、予めシステムに組み込まれているルックアップテーブルからそのインデックスに対応する演算結果の値を読み出すことによって信号レベルを生成する。そして、レベル生成部２０において生成した信号レベルに基づいて、レベル表示部２１において信号レベルを表示する。
【００３７】
図５は、本実施の形態に係るレベル表示装置１５におけるレベル生成部２０を示すブロック図と、このレベル生成部２０におけるレベル生成方法について説明するための図である。以下、具体的に図５を参照にして、レベル生成部２０におけるレベル生成方法について説明する。なお、この説明においては、移動平均フィルタ処理によって、レベルが生成できるものと仮定して説明を続ける。
【００３８】
図５に示すように、レベル生成部２０は、フリップフロップ（ＦＦ）回路等で構成される１ビットオーディオ信号Ｄ[ｉ]用のｎ個のメモリＦＦ５０１〜５０ｎ（図５の例においては、ｎ＝４）からなるビットパタン出力部５０と、入力される１ビットオーディオ信号Ｄ[ｉ]を時系列順に並べてなる全ビットパタンについての移動平均フィルタ処理結果を示すルックアップテーブルを記憶するルックアップテーブル記憶部５１と、メモリＦＦ５０１〜５０ｎに格納された１ビットオーディオ信号Ｄ[ｉ]をｎビットのビットパタンとみなし、ビットパタン出力部５０から出力されたそのビットパタンを、ｎビットのインデックスとしてのアドレス値に変換するインデックス変換部５２とから構成されている。なお、図５は、メモリＦＦ５０１〜５０４の４つのメモリからなるビットパタン出力部５０を用いて、４ビットのビットパタンを出力し、インデックス変換部５２においては、４ビットのビットパタンのインデックスとして１０進の表現にしたものの例を示す。
【００３９】
レベル生成部２０は、１ビットオーディオ信号Ｄ[ｉ]が入力されると、従来の移動平均フィルタ処理と同様に、ビットパタン出力部５０のメモリＦＦ５００〜５０ｎ−１に１ビットオーディオ信号Ｄ[ｉ]を順次格納していく。上述したように、このメモリＦＦ５０１〜５０ｎは、フリップフロップ（ＦＦ）回路等で構成され、信号入力端子を介して入力される１ビットオーディオ信号をシフトして、所定個数ｎからなる１ビットデジタル信号列を格納する。このメモリＦＦ５０１〜５０ｎに格納する１ビットデジタル信号列の値は、実際の値（−１／＋１）ではなく、論理値（０／１）であり、論理値をそのまま格納していく。なお、実際には必要十分なローパス特性を持つ移動平均フィルタは数十タップを必要とするが、以下の説明では、便宜のためタップ数（Ｎ）をＮ＝４とし、図５に示すように、メモリＦＦ５０１〜５０ｎはｎ＝４とし、メモリＦＦ５０１〜５０４が備えられているものとして説明する。
【００４０】
上述のようにメモリＦＦ５０１〜５０４に順次格納される１ビットオーディオ信号列に関して、このレベル表示装置１５におけるレベル生成部２０では、入力される１ビットオーディオ信号Ｄ[ｉ]が論理値０と１の２値しか持たないことを利用し、ビットパタン出力部５０は、メモリＦＦ５０１〜５０４に蓄えられた１ビットオーディオ信号Ｄ[ｉ]を時系列順に連結し、単なるビットパタンとして出力する。例えば、この図５に示す例ではＮ＝４であるので、入力される１ビットデジタル信号Ｄ[ｉ]の全ビットパタンの種類は２の４乗の数になり、１６種類のビットパタンが考えられることになる。
【００４１】
本実施の形態に係るレベル表示装置１５では、このレベル生成部２０において、入力される１ビットデジタル信号Ｄ[ｉ]の全ビットパタンについて、図５中のＴａｂｌｅ.１−Ａに示すようなテーブルを生成する。ただし、フィルタ処理されるべき値は、論理値ではなく実際の値であるので、このレベル生成部２０においては、Ｔａｂｌｅ.１−Ａを実際の値に変換し、実際の値に変換したＴａｂｌｅ.１−Ｂを生成する。すなわち、このＴａｂｌｅ.１−ＡとＴａｂｌｅ.１−Ｂとの関係は、論理値と実際の値との関係となる。
【００４２】
そして、このレベル生成部２０では、入力される全ての１ビットオーディオ信号Ｄ[ｉ]のビットパタンを実際の値で表示したＴａｂｌｅ.１−Ｂに基づいて、ビットパタン毎に、実際の値からなる各値を加算してタップ数Ｎ＝４で除算する移動平均フィルタ処理結果の値を算出し、この算出結果を示すＴａｂｌｅ.１−Ｄを生成する。
【００４３】
このように、本実施の形態に係るレベル表示装置１５においては、レベル生成部２０において、Ｔａｂｌｅ.１−Ｄで表わされるようなテーブルを予め生成し、ルックアップテーブルとして利用可能となるように、ルックアップテーブル記憶部５１に予め記憶している。すなわち、このレベル生成部２０においては、Ｔａｂｌｅ.１−Ｄで表わされるような移動平均結果を示すルックアップテーブルを予めシステムに組み込んでおき、ルックアップテーブルとして用いることによって、演算処理を高速化している。
【００４４】
一方で、このレベル生成部２０は、図５に示すようにインデックス変換部５２を有している。このインデックス変換部５２は、図５中のＴａｂｌｅ.１−Ａのビットパタンを、ｎビットのインデックスとしてアドレス値に変換する。例えば、Ｔａｂｌｅ.１−Ａの４ビットのビットパタンのインデックスとして、１０進の表現にしたＴａｂｌｅ.１−Ｃを生成する。そして、この１０進の表現にしたＴａｂｌｅ.１−Ｃは、ルックアップテーブルであるＴａｂｌｅ.１−Ｄのインデックスとして利用することができるようになっている。
【００４５】
すなわち、図５に示すように、Ｔａｂｌｅ.１−Ｃにおけるインデックス『０』は、Ｔａｂｌｅ.１−Ａにおけるビットパタン『００００』に対応するとともに、このビットパタンを実際の値（−１／＋１）に基づいて移動平均結果を算出したＴａｂｌｅ.１−Ｄにおける移動平均結果『−１．０』に対応する。同様に、インデックス『１』は、Ｔａｂｌｅ.１−Ａにおけるビットパタン『０００１』と、Ｔａｂｌｅ.１−Ｄにおける移動平均結果『−０．５』に対応し、インデックス『２』は、Ｔａｂｌｅ.１−Ａにおけるビットパタン『００１０』と、Ｔａｂｌｅ.１−Ｄにおける移動平均結果『−０．５』に対応する。以下同様にして、インデックス『０』〜『１５』が、Ｔａｂｌｅ.１−Ａにおけるビットパタンと共に、ルックアップテーブルであるＴａｂｌｅ.１−Ｄにおける移動平均結果に、それぞれ対応するようになっている。
【００４６】
また、このインデックス変換部５２は、実際にメモリＦＦ５０１〜５０４に入力され、時系列順に並べて出力される１ビットオーディオ信号Ｄ[ｉ]の並列的なビットパタンをインデックス化して、例えば１０進の値で表現する。これにより、入力された１ビットオーディオ信号Ｄ[ｉ]のビットパタンを、予め全ビットパタンについてのインデックス化したＴａｂｌｅ.１−Ｃと対応可能にしている。
【００４７】
なお、このインデックス変換部５２においては、ビットパタンのインデックスとして、１０進の値で表現される場合に限られるものではない。ビットパタンのインデックスとしては、ビットパタン出力部５０から出力されたビットパタンに対応するルックアップテーブル上のフィルタ演算処理結果にアクセスするアドレス値となるものであればよい。また、ハードウェアやソフトウェアでは、２進でインデックスを求めることが可能であることから、所定のアドレス値に変換しなくても、Ｔａｂｌｅ.１−ＡをそのままＴａｂｌｅ.１−Ｄのインデックスとして利用してもよい。
【００４８】
このように、本実施の形態に係るレベル表示装置１５においては、レベル生成部２０が移動平均フィルタ処理して算出した結果を示すルックアップテーブルを、ルックアップテーブル記憶部５１に予め記憶しておく。そして、１ビットオーディオ信号Ｄ[ｉ]が入力されてメモリＦＦ５０１〜５０４に格納されると、このメモリＦＦ５０１〜５０４を構成するビットパタン出力部５０は、まずこの１ビットオーディオ信号Ｄ[ｉ]の信号列をＴａｂｌｅ.１−Ａのように時系列順に並べた並列的なビットパタンとして出力する。
【００４９】
そして、インデックス変換部５２においては、出力されたビットパタンを、４ビットのビットパタンのインデックスとしてのアドレス値に変換する。例えば、図５に示すように出力されたビットパタンを１０進の表現でインデックスとする。変換した値は、予めＴａｂｌｅ.１−Ａに基づいてインデックス変換部５２で数値変換して生成したＴａｂｌｅ.１−Ｃに示すインデックスと対応することから、このＴａｂｌｅ.１−Ｃに示すインデックスに基づいて、計算済の移動平均フィルタ処理結果が示されているルックアップテーブルＴａｂｌｅ.１−Ｄから、そのインデックスに対応する移動平均フィルタ処理結果を読み出す。
【００５０】
本実施の形態に係るレベル表示装置１５においては、このようにして、メモリＦＦ５０１〜５０４から出力されたビットパタンをインデックスとして、ルックアップテーブル記憶部５１に記憶されたルックアップテーブルからフィルタ演算処理結果を読み出すようにすることで、従来のようなフィルタ処理やカウント処理を一切行わずに、移動平均フィルタ処理の結果を得ることができ、極めて高速に、かつ多くの演算処理負荷をかけることなく、フィルタ処理やカウント処理と全く等価な結果を得ることができる。
【００５１】
ここで、具体的に、メモリＦＦ５０１に『０』、メモリＦＦ５０２に『１』、メモリＦＦ５０３に『１』、メモリＦＦ５０４に『１』の１ビットオーディオ信号Ｄ[ｉ]が順次格納された場合を例に挙げて説明する。
【００５２】
まず、入力されてメモリＦＦ５０１〜５０４に格納された１ビットオーディオ信号Ｄ[ｉ]をビットパタンとみなすと、『０１１１』とのパタンになる。この入力された１ビットオーディオ信号Ｄ[ｉ]のビットパタン『０１１１』がビットパタン出力部５０から出力されると、インデックス変換部５２において例えば１０進の表現に変換され、インデックス『７』が算出される。すなわち、出力されたビットパタンがインデックスとして使用されることになる。なお、ビットパタン『０１１１』をそのままインデックスとして用いることもできる。
【００５３】
一方、このレベル生成部２０においては、入力される１ビットオーディオ信号Ｄ[ｉ]の各ビットパタンを実際に値に変換し、その変換された数値列のそれぞれを加算してタップ数Ｎで除算することで算出した移動平均フィルタ処理結果を示すルックアップテーブルＴａｂｌｅ.１−Ｄを予め生成し、ルックアップテーブル記憶部５１に記憶している。そしてまた、インデックス変換部５２において、このルックアップテーブルＴａｂｌｅ.１−Ｄの各表示はＴａｂｌｅ.１−Ｃと対応させてインデックス化されている。
【００５４】
したがって、入力された１ビットオーディオ信号のビットパタン『０１１１』から、１０進値化したインデックス『７』を、Ｔａｂｌｅ.１−Ｃのインデックス表示に当てはめると、ルックアップテーブルＴａｂｌｅ.１−Ｄのうちのインデックス“７”から、『＋０．５』という移動平均算出結果を容易に算出することができる。
【００５５】
同様にして、例えば、メモリＦＦ５０１に『１』、メモリＦＦ５０２に『０』、メモリＦＦ５０３に『１』、メモリＦＦ５０４に『０』の１ビットオーディオ信号Ｄ[ｉ]が格納された場合には、これをビットパタン化すると、『１０１０』となり、１０進で表現したインデックスでは『１０』となる。これをルックアップテーブル記憶部５１に予め記憶されているルックアップテーブルＴａｂｌｅ.１−Ｄのインデックスに対応させると、１０進値『１０』のビットパタンの１ビットオーディオ信号Ｄ[ｉ]の移動平均結果は、このルックアップテーブルＴａｂｌｅ.１−Ｄのうちのインデックス“１０”から、『０．０』と算出される。
【００５６】
このように、１ビットオーディオ信号Ｄ[ｉ]のＮ入力全てに対して積和演算、またはカウント処理を行って結果を得る必要があった従来のレベル生成に比べて、本実施の形態に係るレベル表示装置１５においては、入力される１ビットオーディオ信号Ｄ[ｉ]の全ビットパタンに対応する移動平均フィルタ処理結果を算出して表示したルックアップテーブルＴａｂｌｅ.１−Ｄを予め記憶しており、実際に入力されたＮ入力をインデックス化して、そのインデックス値が指し示す先にある計算済みのルックアップテーブルＴａｂｌｅ.１−Ｄからフィルタ演算処理結果の値を取ってくるだけで、従来のレベル生成装置で算出された結果と全く同じ結果を極めて高速に得ることができる。
【００５７】
したがって、本実施の形態に係るレベル表示装置１５によれば、従来のレベル表示装置１５のように、乗算器や加算器等を一切用意する必要がなくなり、また演算処理を高速化するとともに、フィルタ演算処理によるシステムに係る負荷を大幅に減少させることができる。
【００５８】
ところで、上述した例（タップ数Ｎ＝４）の場合には、予めシステムに記憶させておくルックアップテーブルは、１６種類のビットパタンに対応するものを用意すればよかったが、Ｎ＝６の場合には６４個、Ｎ＝８の場合には２５６個、つまりタップ数Ｎの数に応じて２のＮ乗（２＾Ｎ）の種類のビットパタンに対応するルックアップテーブルを用意しておくことが必要となる。しかしながら、Ｎが大きくなりすぎると、２＾Ｎが巨大になり、この２＾Ｎ種類のビットパタンに対応するルックアップテーブルを予め記憶するルックアップテーブル記憶部５１の記憶容量を十分量確保しておくことが必要となるため、Ｎは現実的な値を設定することが必要となる。
【００５９】
例えば、図６に示すような、Ｎ＝１６の移動平均フィルタを使用していると仮定した場合では、そのサイズは２＾Ｎ＝６５５３６（６５ＫＢ）と、ＬＳＩ／ＤＳＰへの実装は不可能ではないレベルではあるものの、非常に大きなテーブルが必要となってしまい、ルックアップテーブル記憶部５１は、６５ＫＢのルックアップテーブルを記憶することが可能な容量を有するものとする必要が生じる。
【００６０】
そこで、本実施の形態に係るレベル表示装置１５おいては、ΔΣ変調により得られた１ビットデジタル信号が入力され、ビットパタン出力部から出力される並列的なビットパタンは、ｎビットの部分ビットパタンのｍ個からなるものとみなし、ｎビットの部分ビットパタンをインデックスとして、ｍ個の部分ビットパタン毎に上述したルックアップテーブルを参照して、部分ビットパタンに対応するフィルタ演算処理結果の値をｍ個出力する。そして、さらにこのレベル表示装置１５のレベル生成部２０においては、フィルタ演算処理結果のｍ個の値を合成する合成部を備えており、２段目の処理として、この合成部において、部分ビットパタン毎に出力したｍ個のフィルタ処理演算結果の値を合成することによって、入力した１ビットデジタル信号のフィルタ演算処理結果を算出するようにしている。
【００６１】
具体的に、例えば図７に示すようにＮ＝１６の処理を行う場合には、まず１段目の処理として、メモリＦＦ５００〜５０１５に順次格納された１ビットオーディオ信号Ｄ[ｉ]を、４＋４＋４＋４という４つのサブブロック５５１〜５５４に分割して処理する。すなわち、１ビットオーディオ信号Ｄ[ｉ]が入力されてビットパタン出力部５０から出力される並列的なビットパタンは、４ビットの部分ビットパタンの４個からなるものとみなし、サブブロック５５１〜５５４において、４ビットの各部分ビットパタンをインデックスとして、この４個の部分ビットパタン毎にルックアップテーブルを参照することによって、各部分ビットパタンに対応するフィルタ演算処理結果の値を４個出力する。
【００６２】
そしてその後、２段目の処理として、各サブブロック５５１〜５５４におけるルックアップテーブル記憶部５１１〜５１４に記憶されたルックアップテーブルを参照して、部分ビットパタン毎に出力した移動平均フィルタ処理結果に基づき、その各サブブロック５５１〜５５４の４個の結果の値を加算器５３によって加算する。また、加算器５３によって得られた結果に対し、乗算器５４を用いてサブブロックの数である４の逆数を乗算することによって、入力された１ビットデジタル信号の移動平均フィルタ処理結果を算出する。
【００６３】
なお、上述のように４つのサブブロックに分割すると、各サブブロック５５１〜５５４におけるタップ数（Ｎ）はＮ＝４となり、図５において説明したレベル生成演算処理の例と同様であるので、１段目のルックアップテーブルを参照してフィルタ演算処理結果の値を出力する処理の詳細な説明は省略する。
【００６４】
このように、レベル表示装置１５において、例えば移動平均フィルタを複数のサブブロックに分割し、１ビットデジタル信号Ｄ[ｉ]を時系列順に並べた並列的なビットパタンをｎビットの部分ビットパタンｍ個とみなして出力し、この出力されたｍ個の各部分ビットパタンをインデックスとして、各部分ビットパタン毎にルックアップテーブルを参照して、各部分ビットパタンに対応するフィルタ演算処理結果の値を出力する。移動平均フィルタ処理結果を高速に算出する場合では、各サブブロック５５１〜５５４は全く同じ処理を行うものであるため、ルックアップテーブルは同一のものを使用することができる。すなわち、ルックアップテーブル格納部５１１〜５１４に記憶させるルックアップテーブルは同一のものでよい。したがって、ルックアップテーブルのサイズは、Ｎ＝４の場合には１６種類のビットパタンに対応するものであれば済み、図６に示したような、単に２＾１６＝６５５３６個のルックアップテーブルを使用する場合に比べて、１／４０９６のサイズでフィルタを構築することが可能となり、非常に効率的なレベル生成を実現することができる。
【００６５】
本実施の形態に係るレベル表示装置１５おいては、上述のように、タップ数Ｎからなる移動平均フィルタを複数のサブブロックに分割し、分割した各サブブロック毎にルックアップテーブルを用いて処理することできる。これにより、十分な容量からなるルックアップテーブル記憶部を用意して大きなサイズのルックアップテーブルを記憶させておく必要がなくなり、効率的なレベル生成を行うことができる。
【００６６】
次に、図７を用いてＮ＝１６を例に挙げて説明した上述のレベル生成処理においては、２段目の処理として通常の数値演算を適用した場合について説明したが、図８に示すように、この２段目の処理もルックアップテーブルを使用して処理することよって、レベル生成処理をより高速化することが可能となる。
【００６７】
すなわち、１段目の処理としては、図７に示した例と同様に、メモリＦＦ５００〜５０ｎ−１において、ΔΣ変調により得られた１ビットデジタル信号を時系列順に並べてなるビットパタンをｎビットの部分ビットパタンｍ個とみなして各部分ビットパタンを出力し、この出力されたｍ個の各部分ビットパタンをインデックスとして、各部分ビットパタン毎にルックアップテーブルを参照して、各部分ビットパタンに対応するフィルタ演算処理結果の値を出力する。一方、図８に示すように、２段目の処理として、このレベル生成部２０は、さらに各部分ビットパタン毎のフィルタ演算処理結果の値をビットパタン化して生成した第２のルックアップテーブルを備えており、この各部分ビットパタン毎のフィルタ演算処理結果の値をビットパタン化したビットパタンをインデックスとして、第２のルックアップテーブルを参照することによって、そのビットパタンに対応するフィルタ演算処理結果を出力してレベルを生成するようにしている。
【００６８】
具体的に説明すると、例えば、図５中のＴａｂｌｅ.１−Ｄのルックアップテーブルには、移動平均フィルタ処理結果として、「−１．０／−０．５／０．０／＋０．５／＋１．０」の５種類の値が存在するが、レベル生成部２０において、この５種類の値をビットパタン化する。この５種類の値をビットパタン化する場合には、３ｂｉｔ（２＾２bit＝４＜５＜８＝２＾３bit）が必要となり、レベル生成部２０は、この５種類の値を、例えば図９（Ａ）のＴａｂｌｅ.２のようにしてビットパタンに置き換える。なお、ビットパタンの「０１１／１００／１１１」は、この例では必要のないビットパタンであるため、「禁止」と表示している。
【００６９】
図５に示したＴａｂｌｅ.１−Ｄは、この図９（Ａ）のＴａｂｌｅ.２に示すようにビットパタンに変形することができるので、レベル生成部２０では、このＴａｂｌｅ.２に基づき、図５に示したＴａｂｌｅ.１−Ｄを、図９（Ｂ）のＴａｂｌｅ.３に示すようにビットパタン化して置き換えることができる。
【００７０】
そして、図８中の４つのサブブロック５５１〜５５４からの１段目の出力として、それぞれ図９（Ｂ）のＴａｂｌｅ.３に示す値が得られるが、この出力を並べて接続すると１２ビット（３ビット×４サブブロック）のビットパタンを得ることができる。
【００７１】
このようにして、図９（Ｂ）のＴａｂｌｅ.３に示す１２ビット（３ビット×４サブブロック）のビットパタンに対応する２段目の処理に用いる第２のルックアップテーブルを予め生成し、ルックアップテーブル記憶部５１５に記憶させておくことにより、図７に示した数値演算を一切行わずに、単にそのルックアップテーブルから値を取ってくるだけで、容易に演算結果を得ることが可能となる。
【００７２】
この例では、ルックアップテーブル記憶部５１５に記憶される２段目の処理に用いる第２のルックアップテーブルとして、２＾１２＝４０９６個の種類のパタンに対応することが可能なテーブルが必要となるが、図６の場合と比較すると、テーブルサイズは１／１６で済むため優位性は著しく高い。なお、１段目の結果を用いて２段目の処理に用いる第２のルックアップテーブルから値を取ってくる流れは、１段目の処理と全く同じであるので、詳細な説明は省略する。
【００７３】
なお、ここでは４サブブロックに分割したブロックを２段で処理する例を挙げて説明したが、サブブロックサイズや処理段数は、任意の値で組み替えが可能であることは言うまでもない。
【００７４】
ところで、ここまでの説明においては、簡略化のためにフィルタ係数を必要としない移動平均フィルタ処理によって算出した値を表示するルックアップテーブルを用いた例について説明してきたが、当然、フィルタ係数に任意の値を持つ一般的なフィルタ処理によって算出した値を表示するルックアップテーブルを用いて処理することもできる。以下では、第２の実施の形態として、図１０を参照して、具体的にフィルタ係数Ｃに任意の値を持つフィルタ処理を用いた例について説明する。
【００７５】
まず図５と同様に、１ビットオーディオ信号Ｄ用のメモリＦＦ５０１〜５０４を用意し、これらに１ビットオーディオ信号Ｄ[ｉ]を順次格納していく。なお、この場合においても実際の値ではなく、論理値をそのまま格納していく。そして、１ビットオーディオ信号Ｄ[ｉ]が、論理値０と１の２値しか持たないことを利用して、ビットパタン出力部５０は、メモリＦＦ５０１〜５０４に蓄えられた１ビットオーディオ信号Ｄ[ｉ]を時系列順に連結し、単なるビットパタンとして出力する。例えば、この例においても図５に示した例と同様にタップ数Ｎ＝４であるので、そのビットパタン数は２の４乗の数のビットパタンが考えられる。そして、この実施の形態においても、レベル生成部２０において、図１０中のＴａｂｌｅ.４−Ａに示すような１６種類のビットパタンのテーブルを生成する。
【００７６】
このフィルタ係数Ｃに任意の値を持つフィルタ処理を用いた場合においても、フィルタ処理されるべき値は、論理値（０／１）ではなく実際の値（−１／＋１）であるので、レベル生成部２０は、Ｔａｂｌｅ.４−Ａを図１０中のＴａｂｌｅ.４−Ｂのよう実際の値に変換する。すなわち、このＴａｂｌｅ.４−ＡとＴａｂｌｅ.４−Ｂとの関係は論理値と実際の値との関係になる。
【００７７】
ここで、この図１０における例では、移動平均フィルタによる処理ではなく、一般的なフィルタ係数に任意の値を持つフィルタ処理を実現するため、各メモリＦＦ５０１〜５０４にフィルタ係数Ｃ６０１〜６０４が存在している。なお、この例において、フィルタ係数Ｃ６０１は『１』、フィルタ係数Ｃ６０２は『０．５』、フィルタ係数Ｃ６０３は『０.３』、フィルタ係数Ｃ６０４は『０．２』とする。
【００７８】
従来の方法では、このフィルタ係数Ｃと、１ビットオーディオ信号Ｄ用のメモリＦＦ (論理値ではなく実際の値)とを用いて、畳み込み演算を行ってフィルタ結果を得るようにしていた。このような従来の方法では、１ビットオーディ信号Ｄ[ｉ]が入力される度に、各入力信号に対して乗算器や加算器を用いて演算処理を行っていたため、タップ数Ｎが増加するに従って演算処理の負荷は非常に大きくなり、処理の高速化にも限界があった。
【００７９】
これに対し、この第２の実施の形態に係るレベル表示装置１５おいては、フィルタ演算処理を全く行わず、このフィルタ係数Ｃ６０１〜６０４は、図１０中のＴａｂｌｅ.４−Ｂに対して影響を与えるようにしている。
【００８０】
すなわち具体的には、このレベル表示装置１５におけるレベル生成部２０は、入力された１ビットオーディオ信号Ｄ[ｉ]を時系列順に並べた並列的なビットパタンを実際の値に変換したＴａｂｌｅ.４−Ｂにおける各パタンの各数値に対し、フィルタ係数Ｃ６０１〜６０４を掛けることによってＴａｂｌｅ.４−Ｂ’を生成する。これは、メモリＦＦ５０１〜５０４とフィルタ係数Ｃ６０１〜６０４を掛けたことと等価となる。そして、レベル生成部２０は、Ｔａｂｌｅ.４−Ｂ’の各パタン内の数値を全て加算することで、一般的なフィルタ処理を行って得られる結果であるＴａｂｌｅ.４−Ｄを生成するようにしている。
【００８１】
このように、本実施の形態に係るレベル表示装置１５においては、レベル生成部２０において、フィルタ係数Ｃ６０１〜６０４を掛け合わせることによって生成したＴａｂｌｅ.４−Ｄで表わされるようなテーブルを予め生成し、ルックアップテーブルとして利用可能となるように、ルックアップテーブル記憶部５１に予め記憶している。すなわち、このレベル生成部２０においては、Ｔａｂｌｅ.４−Ｄで表わされるようなフィルタ処理結果を示すルックアップテーブルを予めシステムに組み込んでおき、ルックアップテーブルとして用いることによって、従来のような乗算器や加算器を用いて演算処理を行っていた従来の方法と比較して、より高速な演算処理を可能にしている。
【００８２】
また、このレベル生成部２０におけるインデックス変換部５２では、図１０中のＴａｂｌｅ.４−Ａのビットパタンを、ｎビットのインデックスとしてアドレス値に変換する。例えば、Ｔａｂｌｅ.４−Ａの４ビットのビットパタンのインデックスとして、１０進の表現にしたＴａｂｌｅ.４−Ｃを生成する。そして、このＴａｌｂｅ.４−Ｃは、上述したＴａｂｌｅ.４−Ｄのインデックスとして用いることができるようになっている。すなわち、図１０に示すように、Ｔａｂｌｅ.４−Ｃにおけるインデックス『０』は、Ｔａｂｌｅ.４−Ａにおけるビットパタン『００００』に対応するとともに、このビットパタンを実際の値（−１／＋１）に基づいてフィルタ係数を持つ一般的なフィルタ処理して算出したＴａｂｌｅ.４−Ｄにおけるフィルタ処理結果『−２．０』に対応する。同様に、インデックス『１』は、Ｔａｂｌｅ.４−Ａにおけるビットパタン『０００１』と、Ｔａｂｌｅ.４−Ｄにおけるフィルタ処理結果『−１．６』に対応し、インデックス『２』は、Ｔａｂｌｅ.４−Ａにおける『００１０』と、Ｔａｂｌｅ.４−Ｄにおけるフィルタ処理結果『−１．４』に対応する。以下同様にして、インデックス『０』〜『１５』が、Ｔａｂｌｅ.４−Ａにおけるビットパタンと共に、Ｔａｂｌｅ.４−Ｄにおけるフィルタ処理結果にそれぞれ対応するようになっている。
【００８３】
また、このインデックス変換部５２は、実際にメモリＦＦ５０１〜５０４に入力され、時系列順に並べて出力される１ビットオーディオ信号Ｄ[ｉ]の並列的なビットパタンをインデックス化して、例えば１０進の値で表現する。これにより、入力された１ビットオーディオ信号Ｄ[ｉ]のビットパタンを、予め全ビットパタンについてのインデックス化したＴａｂｌｅ.１−Ｃと対応可能にしている。
【００８４】
なお、このインデックス変換部５２においては、ビットパタンのインデックスとして、１０進の値で表現される場合に限られるものではない。ビットパタンのインデックスとしては、ビットパタン出力部５０から出力されたビットパタンに対応するルックアップテーブル上のフィルタ演算処理結果にアクセスするアドレス値となるものであればよい。また、ハードウェアやソフトウェアでは、２進でインデックスを求めることが可能であることから、所定のアドレス値に変換しなくても、Ｔａｂｌｅ.４−ＡをそのままＴａｂｌｅ.４−Ｄのインデックスとして利用してもよい。
【００８５】
このように、第２実施の形態に係るレベル表示装置１５においては、レベル生成部２０がフィルタ係数を持つ一般的なフィルタ処理して算出した結果を示すルックアップテーブルを予めルックアップテーブル記憶部５１に記憶しておく。そして、１ビットオーディオ信号Ｄ[ｉ]が入力されてメモリＦＦ５０１〜５０４に格納されると、このメモリＦＦ５０１〜５０４を構成するビットパタン出力部５０は、まずこの１ビットオーディオ信号Ｄ[ｉ]の信号列をＴａｂｌｅ.４−Ａのように時系列順に並べた並列的なビットパタンとして出力する。
【００８６】
そして、インデックス変換部５２においては、出力されたビットパタンを、４ビットのビットパタンのインデックスとしてのアドレス値に変換する。例えば、図１０に示すように出力されたビットパタンを１０進の表現でインデックスとする。変換した値は、予めＴａｂｌｅ.４−Ａに基づいてインデックス変換部５２で数値変換して生成したＴａｂｌｅ.４−Ｃに示すインデックスと対応することから、このＴａｂｌｅ.４−Ｃに示すインデックスに基づいて、フィルタ係数を持つ一般的なフィルタ処理して算出した結果が示されているルックアップテーブルＴａｂｌｅ.４−Ｄからそのインデックスに対応するフィルタ処理結果を読み出す。
【００８７】
この第２の実施の形態に係るレベル表示装置１５においては、このようにして、メモリＦＦ５００〜５０３を構成するビットパタン出力部５０から出力されたビットパタンをインデックスとして、ルックアップテーブル記憶部５１に記憶されたルックアップテーブルからフィルタ演算処理の結果を読み出すようにすることで、従来のような一般的なフィルタ処理に必要な積和演算処理を一切せずに、フィルタ係数を持つ一般的なフィルタ処理して算出した結果を得ることができ、極めて高速に、かつ多くの演算処理負荷をかけることなく、フィルタ処理やカウント処理と全く等価な結果を得ることができる。
【００８８】
したがって、このレベル表示装置１５によれば、従来のレベル表示装置のように、乗算器や加算器等を一切用意する必要がなくなり、また演算処理を高速化するとともに、演算処理によるシステムに掛かる負荷を大幅に減少させることができる。
【００８９】
ところで、以上の説明においては、説明の便宜の観点から、１ビットデジタル信号は音声信号であるとし、この音声信号を１ビットオーディオ信号という用語をもって説明をしてきたが、１ビットデジタル信号としては画像信号であっても同様に本発明を適用して処理することができる。
【００９０】
例えば、１ビット信号の論理０を『白』、論理１を『黒』として、オーディオ信号の時系列を、画像信号の縦軸・横軸のピクセル順とおけば、ここまで説明してきたオーディオ信号に対するフィルタ処理は、画像信号に対する補間処理と置き換えて考えることができる。
【００９１】
具体的には、画像データにおいて横方向に４つのピクセルが、
『１（黒）、１（黒）、０（白）、０（白）』
と並んでいる場合を考える。
【００９２】
これに、タップ数Ｎ＝４の移動平均フィルタを掛けると、（１＋１＋０＋０）／４＝０．５となり、４つのピクセルを平均化すると１（黒）と０（白）の中間、つまり０．５（灰色）が出ることがわかる。この移動平均フィルタ処理を、上述の１ビットオーディオ信号を用いて説明した、ルックアップテーブルを用いた高速化処理手法を用いて処理することも可能となっている。
【００９３】
その他、画像信号向けにフィルタを２次元に拡張するなど様々な方法が考えられるが、本発明によるルックアップテーブルが、ソフトウェア又はハードウェアで現実可能なサイズであれば、適宜自由に拡張してかまわない。
【００９４】
以上に詳細に説明したように、従来のレベル表示装置におけるレベル生成では、Ｎ入力全てに対して積和演算を行って結果を得る必要があったのに対し、上述した各実施の形態に係るレベル表示装置１５によれば、Ｎ入力をインデックス化し、そのインデックスの指し示す先にある計算済み結果を示すルックアップテーブルを用いて、このルックアップテーブルからフィルタ処理結果を取ってくるという処理をするだけで、従来の結果と全く同じ結果を極めて高速に得ることができる。
【００９５】
したがって、例えばタップ数（Ｎ）がＮ＝６４や、Ｎ＝１２８のように多くなっても、複雑な積和演算を行わずに、積和演算を行った場合と等価な結果を、演算処理負荷を最小限に抑えて高速に得ることができる。
【００９６】
また、各実施の形態に係る、高速なレベル生成の利点を生かして、段数・サブブロックを直列・並列に適宜組み合わせて、自由度の高い高速なフィルタの設計を行うことができる。なお、本発明は単に１ビット信号のレベル生成のみでなく、１ビット信号からマルチビット信号を取り出す場合に用いることも可能である。
【００９７】
また、このようにルックアップテーブルを用いた簡単な処理によってレベル生成を行っているので、専用の回路を設けなくても、１ビットデジタル信号のレベルをＣＰＵとそのソフトウェアで処理して検出することができる。さらに、演算精度の問題がないので、信号レベルを一意に決めることができる。
【００９８】
また、ハードウェアによって構成する場合においても、乗算器や加算器を必要とせず、簡単な回路規模により、高速かつ演算処理負荷の少ないレベル生成を実現することができる。さらに、回路が簡単なので装置のコスト、消費電力を削減することができる。
【００９９】
また、光ディスク再生装置や半導体メモリ記録再生装置等に、このレベル表示装置１５を内蔵することによって、例えば編集後の同じ音楽を複数の光ディスクに記録したにもかかわらず、内蔵している再生、記録及び編集装置それぞれの機種によってレベル表示が異なるという好ましくない結果を避けることができる。
【０１００】
また、上述の各実施の形態に係るレベル表示装置１５を用いることによって、再生又は記録の信号レベルを操作者に知らせるために１ビットデジタル信号のレベルを検出することができるとともに、さらに、このレベル生成方法により、例えばオーディオ再生装置の再生レベルを常に監視し、一定以上のレベルの信号が入力されたときに自動的に出力を小さくするようにして、アンプやスピーカを保護してもよい。
【０１０１】
また、このレベル表示装置１５は、電子ファイル化された音のデータのレベルチェックのために使われてもよい。最近は音のデータはコンピュータのデータファイルとして録音、再生、編集されることが多い。このような音のファイルの中の音のレベルチェックをするにあたって、各実施の形態に係るレベル生成方法によれば、複雑な信号処理が必要ないので、特別なハードウェアを必要とせずに、また一度音として再生する必要もなく、ＣＰＵとそのソフトウェアだけを用いて、ファイルになった音のデータのレベルを調べ、異常に大きなレベルの音が含まれていないか、チェックすることができる。
【０１０２】
なお、本明細書において説明したレベル生成方法における各ステップは、記載された順序に従って、時系列的に行われる処理は勿論、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。
【０１０３】
その他、本発明はこれらの実施形態に限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々の変更や修正を加えることが可能である。
【図面の簡単な説明】
【０１０４】
【図１】本実施の形態に係るレベル生成方法を適用した半導体メモリ記録再生装置のブロック図である。
【図２】ΔΣ変調器の構成を示す図である。
【図３】論理値と実際の値との関係を説明するための図である。
【図４】１ビットオーディオ信号をアナログオーディオ信号に変換するＤ／Ａ変換器における波形整形器とローパスフィルタを示す図である。
【図５】本実施の形態に係るレベル表示装置におけるレベル生成部を示すブロック構成と、このレベル生成部におけるレベル生成方法について説明するための図である。
【図６】タップ数Ｎ＝１６の移動平均フィルタを使用していると仮定した場合のレベル生成部のブロック図である。
【図７】複数のサブブロックに分割して処理する場合について説明するための図である。
【図８】複数のサブブロックに分割して処理する場合について説明するための図である。
【図９】（Ａ）は、図５中Ｔａｂｌｅ.１−Ｄに示された５種類の値と、この５種類の値のビットパタンとの対応関係についてのテーブルを示す図であり、（Ｂ）は、（Ａ）のテーブルに基づいてビットパタン化したテーブルを示す図である。
【図１０】フィルタ係数に任意の値を持つ一般的なフィルタ処理によって算出した値を表示するルックアップテーブルを利用してレベル生成処理を実行する方法を説明するための図である。
【図１１】従来のレベル表示装置のブロック図である。
【図１２】従来のレベル表示装置におけるフィルタ処理について説明するためのブロック図であり、（Ａ）は１ビットオーディオ信号Ｄ［ｉ］に対してタップ長Ｎのローパスフィルタ処理を行うフィルタのブロック図であり、（Ｂ）は移動平均フィルタ処理を行うフィルタのブロック図である。
【符号の説明】
【０１０５】
１  半導体メモリ記録再生装置、１０  メモリコントローラ、１１  ＣＰＵ／ＤＳＰ、１２  Ａ／Ｄ変換器、１３  Ｄ／Ａ変換器、１４  操作部、１５  レベル表示装置、１６  半導体メモリ、１７  信号入力端子、１８  信号出力端子、２０  レベル生成部、２１  レベル表示部、３０  ΔΣ変調器、３１  加算器、３２  １ビット量子化器、３３  積分器、４０  波形整形器、４１  アナログローパスフィルタ、５０ビットパタン出力部、５０1〜５０ｎ  メモリＦＦ、５１,５１１〜５１４,５１５  ルックアップテーブル記憶部、５２  インデックス変換部、５３  加算器、５４  乗算器、５５１〜５５４  サブブロック
【図１】
2010032903.tif 000003
【図２】
2010032903.tif 000004
【図３】
2010032903.tif 000005
【図４】
2010032903.tif 000006
【図５】
2010032903.tif 000007
【図６】
2010032903.tif 000008
【図７】
2010032903.tif 000009
【図８】
2010032903.tif 000010
【図９】
2010032903.tif 000011
【図１０】
2010032903.tif 000012
【図１１】
2010032903.tif 000013
【図１２】
2010032903.tif 000014