(57)【要約】【課題】デジタルフィルタのソフトウエア検証とハードウエア検証の整合性を高め、量子化誤差やオーバフローなどによる性能劣化の発見を容易にしかつ検証にかかるコストを削減するデジタルフィルタ検査装置を提供する。【解決手段】端末装置（１７）はデジタルフィルタ回路（１２）にテスト信号を発生し、デジタルフィルタ回路を動作させ、その内部信号等を端末装置にて選択的に観測する。また端末装置とデジタルフィルタ回路の動作速度の差を吸収すべく、メモリ（１４，１５）およびメモリコントローラ（１６）を設け、「テスト信号書き込みモード」時は端末装置に同期してテスト信号を書き込み、「テスト実行モード」時はデジタルフィルタ回路に同期してテスト信号を読み出しかつその内部信号を書き込み、「内部信号読み出しモード」時は端末装置に同期して内部信号を読み出す。【選択図】図１
2005124113.tif 000002
【特許請求の範囲】
【請求項１】
検査対象とするデジタルフィルタの信号を観測するデジタルフィルタ検査装置において、デジタルフィルタの入力信号および出力信号を選択的に出力する第１のセレクタと、テスト信号の書き込みおよび読み出しが可能な第１のメモリと、第１のセレクタの出力信号の書き込みおよび読み出しが可能な第２のメモリと、外部入力信号と第１のメモリから読み出されたテスト信号を選択的にデジタルフィルタに出力する第２のセレクタと、第１のメモリおよび第２のメモリにアドレスおよび制御信号を出力するメモリコントローラと、モード信号、観測点選択信号およびテスト信号を出力しかつ第２のメモリから読み出されたテスト信号を観測可能な端末装置を有し、前記メモリコントローラはモード信号が「テスト信号書き込みモード」を示す場合は、端末装置に同期して第１のメモリにテスト信号を書き込み、モード信号が「テスト実行モード」を示す場合は、デジタルフィルタに同期して第１のメモリからテスト信号を読み出しかつデジタルフィルタに同期して第２のメモリに第１のセレクタの出力信号を書き込み、モード信号が「内部信号読み出しモード」を示す場合は、端末装置に同期して第２のメモリから第１のセレクタの出力信号を読み出し、前記第２のセレクタはモード信号が「テスト実行モード」を示す場合は第１のメモリから読み出されたテスト信号を選択し、前期第１のセレクタは観測点選択信号により所望の信号を選択し出力することを特徴とするデジタルフィルタ検査装置。
【発明の詳細な説明】
【技術分野】
【０００１】  本発明は、デジタルフィルタのソフトウエア検証とハードウエア検証の整合性を高め、量子化誤差やオーバフローなどによる性能劣化の発見を容易にしかつ検証にかかるコストを削減するデジタルフィルタ検査装置を提供する。
【背景技術】
【０００２】  従来のデジタルフィルタ検査装置は、デジタルフィルタの構成および係数の決定において、先ず端末装置によるソフトウエア検証を非リアルタイムで行い、その後専用ハードウエアを作成し、ハードウエア検証をリアルタイムで行っていた。図２に従来技術におけるハードウエア検証の一例を示す。テスト期間中は測定対象であるデジタルフィルタ回路にテスト信号を入力し、デジタルフィルタを動作させ、各デジタルフィルタの入出力信号を適当に選択しモニタしていた。その際テスト信号発生器やモニタはリアルタイムに高速で動作する必要があり、またソフトウエア検証で使用した入力パターンをそのままハードウエア検証に用いることはできず、ソフトウエア検証とハードウエア検証の結果を比較検討するのは困難であった。
【発明の開示】
【発明が解決しようとする課題】
【０００３】  ソフトウエア検証とハードウエア検証では、そのリアルタイム性の違いゆえ、完全に同一の入力パターンに対する出力同士を比較することが難しく、量子化ビット幅決定による量子化誤差やオーバフローによる微妙な性能の劣化を発見することが困難であった。
またソフトウエア検証において量子化ビット幅を決定することも可能ではあるが、回路内のすべての信号においてビット幅や、ビットの切り捨て、丸め誤差などを考慮に入れながら完全なシミュレーションを行うことは困難であった。
またリアルタイムのハードウエア検証には高価な信号発生装置や高速の波形モニタ等を必要としていた。本発明ではデジタルフィルタのソフトウエア検証とハードウエア検証の整合性を高め、量子化誤差やオーバフローなどによる性能劣化の発見を容易にしかつ検証にかかるコストを削減するデジタルフィルタ検査装置を提供する。
【課題を解決するための手段】
【０００４】図１に本発明のデジタルフィルタ検証装置の構成の一例を示す。端末装置（１７）は、
（Ａ）テスト信号をデジタルフィルタ回路（１２）に供給するテスト信号発生器（１７１）
（Ｂ）デジタルフィルタ回路の内部信号を観測するモニタ（１７２）
（Ｃ）「通常モード」、「テスト信号書き込みモード」、「テスト実行モード」、「内部信号読み出しモード」などを出力するモード信号発生器（１７３）
（Ｄ）デジタルフィルタ回路の内部信号の選択を指示する観測点選択信号発生器（１７４）
といった手段を持ち、デジタルフィルタ回路にテスト信号を供給し、その際の内部信号を選択しモニタすることができる。
また、第１のメモリ（１４）、第２のメモリ（１５）およびメモリコントローラ（１６）において、
（Ｅ）「テスト信号書き込みモード」時は、端末装置に同期して第１のメモリにテスト信号を書き込む
（Ｆ）「テスト実行モード」時は、デジタルフィルタ回路に同期して第１のメモリからテスト信号を読み出し、それと並行してデジタルフィルタ回路に同期して第２のメモリにデジタルフィルタ回路の内部信号を書き込む
（Ｇ）「内部信号読み出しモード」時は、端末装置に同期して第２のメモリからデジタルフィルタ回路の内部信号を読み出す
といった手段により、端末装置とデジタルフィルタ回路の動作速度の差を吸収する。
また、第１のセレクタ（１３）において、
（Ｈ）端末装置からの観測点選択信号にしたがってデジタルフイルタ回路の内部信号、すなわち各デジタルフィルタ（１２１，１２２）の入力および出力信号を選択する
といった手段を持つことにより、デジタルフィルタ回路内の複数の内部信号を観測できる。
また、第２のセレクタ（１１）において、
（Ｉ）「テスト実行モード」時は、第１のメモリから読み出されるテスト信号を選択し、「通常モード」時は、外部入力信号を選択する
といった手段により、通常時は外部入力信号をフィルタリングするようデジタルフィルタ回路が動作し、テスト時は端末装置からのテスト信号をフィルタリングするようデジタルフィルタ回路が動作し、更にテスト時はデジタルフィルタ回路内の各デジタルフィルタの入力および出力信号が端末装置において選択的に観測可能となる。
【発明の効果】
【０００５】  一般的にデジタルフィルタを設計する場合、先ず端末装置によるソフトウエア検証を非リアルタイムで行い、デジタルフィルタの構成および係数を決定する。その際デジタルフィルタの入力信号および係数は浮動小数点で表現され、それらの畳み込み演算を施すことによりフィルタリングが行われる。その後専用ハードウエアを作成し、ハードウエア検証をリアルタイムで行う。しかしハードウエアにおいての入力信号および係数は整数で表現される必要があり、そのためには「量子化」により小数点以下を切り捨て、入力信号および係数を、ある一定のビット幅を持つ２進数に変換しなければらない。つまりハードウエア化においては必ず量子化誤差が発生し、またビット幅の制限によりオーバフローが発生する可能性があるため、それらを検証する手段が必要である。
本発明によれば、ソフトウエア検証の際に使用されたテスト信号をそのままハードウエア検証にも使用できるため、ソフトウエア検証とハードウエア検証の結果を比較し、量子化誤差やオーバフローによる微妙な性能の劣化を容易に発見することができる。また端末装置からテスト信号を供給しかつハードウエア検証結果をモニタするため、高価な信号発生器や高速の波形モニタを必要としない。
【発明を実施するための最良の状態】
【０００６】  本発明では、端末装置で動作するアプリケーション内でテスト信号、モード信号および観測点選択信号を発生し、適当なインターフェイスを通じて測定対象であるデジタルフィルタ回路に伝え、また適当なインターフェイスを通じて測定対象であるデジタルフィルタ回路の内部信号を受け取り、それを端末装置のアプリケーション内で観測するものとする。
【実施例１】
【０００７】  デジタルフィルタの一例として音声ノイズリダクションを取り上げる。一般的に人の声の周波数成分は５ｋＨｚ以下に集中しており、それ以上の成分はノイズとみなしてフィルタリング（ろ過）することにより、人の声が聞きやすくなる。よってここではカットオフ周波数５ｋＨｚのデジタルローパスフィルタを設計する。【０００８】  図３にソフトウエア検証の一手順を示す。最初にデジタルフィルタの構成を決定する。ここではデジタルローパスフィルタのカットオフ周波数を５ｋＨｚとし、段数（デジタルフィルタの個数）を２個とする、その後適当な係数計算手段によりそれらの係数を算出し、そこで得られたデジタルフィルタ回路をソフトウエアモデルとしてシミュレーションし、高周波ノイズ成分のフィルタリングの様子を検証する。この作業は非リアルタイムの検証ゆえ、デジタルフィルタ回路へ入力されるテスト信号は「ファイルの読み出し」などの手段で供給され、フィルタリング結果および経過はアプリケーション内のモニタ手段によって観測される。様々な入力信号に対する応答を観測し、フィルタリング結果が不十分な場合はもう一度デジタルフィルタの構成や係数を検討し、特性が十分となったところでソフトウエア検証は終了となる。【０００９】  例えばテスト信号として図５（ａ）に示すような４ｋＨｚのサイン波を入力する。ローパスフィルタゆえに、フィルタリング結果は図５（ｂ）のようにほとんど減衰しない。しかしテスト信号が図５（ｃ）に示すような８ｋＨｚのサイン波の場合、フィルタリング結果は図５（ｄ）のように大幅に減衰する。これはデジタルローパスフィルタのカットオフ周波数が５ｋＨｚであることによる。人の声の周波数成分はほとんど５ｋＨｚ以下に集中しているため、このデジタルフィルタ回路はノイズリダクションとして動作し得ることが検証できる。またソフトウエア検証では、量子化やビット幅の制限は設けておらず、量子化誤差やオーバフローは起こらない、いわゆる「理想的なデジタルフィルタ」の特性検証である。【００１０】  次にハードウエア検証について説明する。図４に示すように、ソフトウエア検証によって決定されたデジタルフィルタ回路は、その係数や内部信号の量子化ビット幅が適当に決定され、量子化される。その後専用ハードウエアが作成され、そのハードウエアにおいてテスト信号による検証、外部入力信号によるリアルタイムの検証が行われ、特性が不十分の場合は量子化の仕方を再検討し、特性が十分となったところでハードウエア検証は終了となる。【００１１】  ここでハードウエア内部の動作を説明する。図１に示すように、端末装置から適当なインターフェイスを介してモード信号、観測点選択信号およびテスト信号がハードウエアに入力されている。観測点選択信号はハードウエア内の第１のセレクタを制御し、所望の信号を選択する。またモード信号はハードウエア内の第２のセレクタを制御し、「テスト実行モード」の場合は第１のメモリから読み出されるテスト信号を選択する。【００１２】  モード信号はメモリコントローラも制御し、「テスト信号書き込みモード」の場合は、端末装置に同期して第１のメモリにテスト信号を書き込む。「テスト実行モード」の場合は、デジタルフィルタ回路に同期して第１のメモリからテスト信号を読み出し、それと並行してデジタルフィルタ回路に同期して第２のメモリに、デジタルフィルタ回路の内部信号を書き込む。「内部信号読み出しモード」の場合は、端末装置に同期して第２のメモリから、デジタルフィルタ回路の内部信号を読み出す。この際メモリコントローラは第１のメモリおよび第２のメモリにシーケンシャルにアドレスを出力し、先に書き込んだデータから先に読み出すものとする。【００１３】  端末装置は適当なインターフェイスを介して、第２のメモリから読み出されたデジタルフィルタ回路の内部信号を受け取り、端末装置のアプリケーションにおいてモニタする。それを前記ソフトウエア検証で観測された内部信号（量子化されていない、理想的なもの）と比較し、ハードウエア内での量子化誤差やオーバフローによる性能劣化について吟味する。その性能が不十分の場合は、ビット幅を増加させる等の変更をハードウエアに施す。【００１４】  例えばテスト信号として図５（ｅ）に示すような４ｋＨｚのサイン波を入力する。この信号は、ソフトウエア検証で使用された図５（ａ）を４ビットで量子化したものであり、量子化ビット幅が少ないため信号は劣化している。また、デジタルフィルタの係数も４ビットで量子化しており、その結果畳み込み演算で誤差が増加し、デジタルフィルタ回路の出力信号は更に劣化し図５（ｆ）のようになる。本発明ではソフトウエア検証にて使用された入力パターンをそのまま量子化し、ハードウエア検証に使用するため、これらの信号劣化の原因は全て量子化によるものと考えられる。性能を上げるためには量子化ビット幅を増加させる必要があり、例えば８ビットとすれば量子化誤差は大幅に改善される。【００１５】  量子化誤差改善の様子は端末装置によって容易に観測できる。図５（ｅ）は図１における第１のデジタルフィルタ（１２１）の入力を端末装置で観測したものであり、図５（ｆ）は図１における第２のデジタルフィルタ（１２２）の出力を端末装置で観測したものである。【００１６】  またビット幅を８ビットとした場合、データ範囲は最低−１２８から最高＋１２７であり、その範囲を超えた場合はオーバフローが発生する。これを検証するためには、テスト信号としてフルスケールの信号（最低−１２８から最高＋１２７まで振れるサイン波など）を入力し、デジタルフィルタの出力信号を検証する。もしデジタルフィルタ回路の出力信号が図５（ｇ）のようにオーバフロー（上下にクリップ）している場合は、更にビット幅を増加させなければならない。またデジタルフィルタ回路の内部信号（例えば図１における第１のデジタルフィルタ（１２１）の出力）に関しても同様にオーバフローの検証を行い、必要に応じてビット幅を増加する。【００１７】  このようにソフトウエア検証で得られる理想的な波形と、ハードウエア検証で得られる劣化した波形とを、デジタルフィルタ回路の入力、出力および内部信号において比較し、性能対回路規模比を吟味しながらビット幅を決定する。例えば高音質のノイズリダクションが必要かつ回路規模に余裕がある場合はビット幅を大きくし、音質をそれほど気にせずに回路規模をコンパクトにしたい場合はビット幅を小さくする。【��０１８】  最後に第２のセレクタに外部入力信号を選択させるべく、モード信号を「通常モード」とし、デジタルフィルタ回路に音声をリアルタイムに入力、処理および出力させ、ノイズリダクションを聴覚的に検証する。この外部入力信号による検証は、テスト信号による検証の前に行ってもよい。【００１９】  以上でデジタルフィルタ回路の設計および検証は終了である。要約すると
（検証１）ソフトウエア検証でデジタルフィルタの理想的な（量子化誤差やオーバフローがない）特性を検証し、その構成や係数を決定する
（検証２）ハードウエア検証では量子化誤差、オーバフローおよび聴覚的特性を検証し、量子化ビット幅を決定する
検証１，２で検証項目を分担することにより、効率的なデジタルフィルタ回路の設計および検証が可能になる。また従来はハードウエア検証に高価な信号発生器と高速な波形モニタを使用していたが、本発明では信号発生手段、モニタ手段いずれも安価で扱いやすい端末装置で行われ、検証にかかるコストも減少することができる。【００２０】  また第２のセレクタに外部入力信号を選択させ、第１のセレクタがその第２のセレクタの出力を選択するような観測点選択信号を出力することにより、外部入力からの信号を端末装置に取り込み、観測することができる。この信号に対し端末装置でＦＦＴ（高速フーリエ変換）等を行い周波数分析することにより、人の声の成分が何ｋＨｚ以下に存在し、ノイズ成分が何ｋＨｚ以上に存在するか確認でき、デジタルローパスフィルタのカットオフ周波数の決定に利用することができる。
【図面の簡単な説明】
【００２１】
【図１】本発明のデジタルフィルタ検証装置の構成の一例を示すブロック図
【図２】従来技術によるハードウエア検証の一例を示すブロック図
【図３】本発明におけるソフトウエア検証の一手順を示すフローチャート
【図４】本発明におけるハードウエア検証の一手順を示すフローチャート
【図５】本発明の一実施例およびその説明に供する説明図
【符号の説明】
【００２２】１１、１３  セレクタ
１２  デジタルフィルタ回路
１２１、１２２  デジタルフィルタ
１４、１５  メモリ
１６  メモリコントローラ
１７  端末装置
１７１  テスト信号発生器
１７２  モニタ
１７３  モード信号発生器
１７４  観測点選択信号発生器
【図１】
2005124113.tif 000003
【図２】
2005124113.tif 000004
【図３】
2005124113.tif 000005
【図４】
2005124113.tif 000006
【図５】
2005124113.tif 000007