(57)【要約】【課題】障害が発生した時点で実際に入力された信号をより忠実に再現することが可能である信号処理装置、カード型デバイス及び信号処理装置における障害再現方法を提供する。【解決手段】コネクタ部１０から実際にデバイス１１に入力される信号はモニタＦＰＧＡ１３へも入力される。モニタＦＰＧＡ１３は、入力される信号を該信号の周波数よりも高い周波数でサンプリングし、サンプリングした結果をメモリ１４へ記録し続ける。デバイス１１で障害が発生した場合、モニタＦＰＧＡ１３によるメモリ１４への記録が停止される。これにより、障害が発生した時点でデバイス１１へ入力されていた信号が遡って記録されていることとなる。メモリ１４の記録から入力信号／位相関係を復元してデバイス１１に入力することにより、障害発生に至った状況を再現する。【選択図】図１
2009110284.tif 000002
【特許請求の範囲】
【請求項１】
外部からの信号を入力する入力部と、
該入力部が入力した信号に基づいて障害を検出する信号処理部と、
前記入力部から前記信号処理部へ入力される信号を、該信号の周波数よりも高い周波数でサンプリングするサンプリング手段と、
該サンプリング手段がサンプリングした信号を記録する記録手段と
を備え、
前記信号処理部にて障害が検出された際に、前記記録手段への記録を停止するようにしてあること
を特徴とする信号処理装置。
【請求項２】
前記入力部から前記信号処理部への信号の入力を遮断する手段と、
前記記録手段が記録した信号を前記信号処理部へ入力する手段と
を更に備えることを特徴とする請求項１に記載の信号処理装置。
【請求項３】
前記入力部が入力した信号の周波数を判定する判定手段と、
前記サンプリング手段によるサンプリング周波数を、前記判定手段が判定した周波数よりも高く設定する手段と
を更に備えることを特徴とする請求項１又は２に記載の信号処理装置。
【請求項４】
外部からの信号を入力するコネクタ部と、
該コネクタ部とバスを介して接続されており、前記コネクタ部が入力した信号に基づいて障害を検出するデバイスと、
前記コネクタ部から前記デバイスへ入力される信号を、該信号の周波数よりも高い周波数でサンプリングするサンプリング手段と、
該サンプリング手段がサンプリングした信号を記録する記録手段と
を備え、
前記デバイスにて障害が検出された際に、前記記録手段への記録を停止するようにしてあること
を特徴とするカード型デバイス。
【請求項５】
外部から信号を入力する入力部と、該入力部が入力した信号に基づいて所定の処理を行なう信号処理部とを備える信号処理装置で発生する障害を再現する障害再現方法において、
前記入力部から前記信号処理部へ入力される信号を、該信号の周波数よりも高い周波数でサンプリングし、
サンプリングした信号を記録し、
前記信号処理部における障害が検出された場合、
前記入力部から前記信号処理部への信号の入力を遮断し、
記録しておいた信号を前記信号処理部へ入力する
ことを特徴とする障害再現方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、入力された信号に基づく処理を行なう信号処理装置で障害が発生した場合に、その原因となる信号を再現する方法に関し、特に、障害が発生した時点で実際に入力された信号をより忠実に再現することが可能である信号処理装置、カード型デバイス及び信号処理装置における障害再現方法に関する。
【背景技術】
【０００２】
近年では、ＣＰＵ（Central Processing Unit）、メモリ、ビデオチップ、ネットワークチップ等、多数のデバイスにおける高速処理化の技術が進歩している。高速に処理を行なうため、信号の周波数が高いと共に、同期された複数の信号がバスを介してパラレル伝送され、夫々の信号間の位相関係に基づいて処理が行なわれている。
【０００３】
例えば、メモリにデータを高速に書き込む場合、データの書き込み先のアドレスを示す信号と、データ信号とを含む複数の信号がパラレル伝送されることによって高速伝送を実現している。
【０００４】
これに対し、各デバイスに入力される信号が予期しない波形であることが原因で、デバイスで障害が発生する場合がある。また、信号がパラレル伝送されて入力される場合、何らかの原因で信号間で位相がずれた場合、デバイスで障害が発生する場合がある。
【０００５】
障害が発生した場合にその原因を究明するための方法として、障害が発生した時点で実行されていた処理をログ等に記録しておく方法がある。
【０００６】
特許文献１には、プロセス入出力装置から入力されるプロセス信号に基づいてプロセスの監視をする系統監視計算機システムで、システムにおける異常が検出された場合に、その前後に監視対象からプロセス入出力装置を介して入力されるプロセス信号をサンプリングして保存しておき、プロセス信号の波形を表示させることができる技術が開示されている。これにより、計算機システムの実稼動に支障を来たすことなく異常時に行なわれていたプロセスを再現させることができる。
【特許文献１】特開平６−６８３６９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
しかしながら、結果として障害が発生している場合でも、デバイスで実行された処理は入力された信号に対しては正常な処理であるときがある。デバイスにおける処理を記録しており、処理自体を再現することは可能であるとしても、デバイスでは入力された信号に従った処理の記録が残されるのみである。この場合、入力された信号をより忠実に再現できなければ、障害の原因を究明することは難しい。
【０００８】
また、高速に信号がパラレル伝送される場合、各信号の波形が正しいとしても位相がずれたときには、誤った処理が行なわれるときがある。例えば、メモリにデータを高速に書き込む場合、アドレス信号とデータ信号とで位相がずれたときには、本来書き込まれるべきアドレス以外のアドレスにデータが書き込まれることになる。しかしながら、この場合に書き込まれたアドレス及びデータをログに記録したとしても、入力された信号に従って処理が行なわれたことが記録されるのであって、入力された信号が障害を発生させる信号であったか否かをログから判断することは難しい。
【０００９】
さらに、障害を発生させた信号は稀有な原因によって入力された信号である場合があり、そのような信号を推測して擬似的に再現することは難しい。想定した原因が異なる場合には同一の障害は再現されない。
【００１０】
本発明は斯かる事情に鑑みてなされたものであり、入力された信号に基づき所定の処理を行なう信号処理部（デバイス）へ入力された信号を該信号の周波数よりも高周波数でサンプリングして記録し、障害が検出された場合に記録を停止する構成とすることにより、障害が発生した時点で入力されていた信号を確実に記録しておき、忠実に再現することを可能とする信号処理装置及びカード型デバイスを提供することを目的とする。
【００１１】
本発明の他の目的は、入力された信号を記録しておき、更に実際の信号処理部へ記録された信号を入力する構成とすることにより、実際に信号処理部で障害を再現させることができる信号処理装置及び障害再現方法を提供することにある。
【００１２】
本発明の他の目的は、入力された信号の周波数を判定する構成とすることにより、実際に信号処理部へ入力される信号をより忠実に再現することを可能とする信号処理装置を提供することにある。
【課題を解決するための手段】
【００１３】
第１発明に係る信号処理装置は、外部からの信号を入力する入力部と、該入力部が入力した信号に基づいて障害を検出する信号処理部と、前記入力部から前記信号処理部へ入力される信号を、該信号の周波数よりも高い周波数でサンプリングするサンプリング手段と、該サンプリング手段がサンプリングした信号を記録する記録手段とを備え、前記信号処理部にて障害が検出された際に、前記記録手段への記録を停止するようにしてあることを特徴とする。
【００１４】
第２発明に係る信号処理装置は、前記入力部から前記信号処理部への信号の入力を遮断する手段と、前記記録手段が記録した信号を前記信号処理部へ入力する手段とを更に備えることを特徴とする。
【００１５】
第３発明に係る信号処理装置は、前記入力部が入力した信号の周波数を判定する判定手段と、前記サンプリング手段によるサンプリング周波数を、前記判定手段が判定した周波数よりも高く設定する手段とを更に備えることを特徴とする。
【００１６】
第４発明に係るカード型デバイスは、外部からの信号を入力するコネクタ部と、該コネクタ部とバスを介して接続されており、前記コネクタ部が入力した信号に基づいて障害を検出するデバイスと、前記コネクタ部から前記デバイスへ入力される信号を、該信号の周波数よりも高い周波数でサンプリングするサンプリング手段と、該サンプリング手段がサンプリングした信号を記録する記録手段とを備え、前記デバイスにて障害が検出された際に、前記記録手段への記録を停止するようにしてあることを特徴とする。
【００１７】
第５発明に係る信号処理装置における障害再現方法は、外部から信号を入力する入力部と、該入力部が入力した信号に基づいて所定の処理を行なう信号処理部とを備える信号処理装置で発生する障害を再現する障害再現方法において、前記入力部から前記信号処理部へ入力される信号を、該信号の周波数よりも高い周波数でサンプリングし、サンプリングした信号を記録し、前記信号処理部における障害が検出された場合、前記入力部から前記信号処理部への信号の入力を遮断し、記録しておいた信号を前記信号処理部へ入力することを特徴とする。
【００１８】
本発明では、外部から入力部によって信号処理部（デバイス）へ入力される実信号が、実信号よりも高い周波数でサンプリングされて記録される。入力部によって入力される信号がデジタル信号であっても、信号処理部へ入力されるまでのバスで伝送される信号をより高い周波数でサンプリングするので、よりアナログ的な実信号に近い信号を記録することが可能となる。また、外部から入力部によって信号が入力されている間は記録が継続して行なわれ、障害が検出された場合に記録が停止される。これにより、障害が発生した時点で入力された信号を過去に遡って記録することができ、また、新しく記録される信号によって障害が発生した時点で入力された信号が上書きされることが回避される。
【００１９】
本発明では、信号処理部における障害が発生した時点で信号処理部へ入力されている信号がサンプリングされて記録されており、更に、記録されていた信号が信号処理部へ入力される。これにより、入力される信号を原因として発生する障害が再現される。
【００２０】
本発明では、外部から入力部によって入力される信号の周波数が判定され、サンプリングする際のサンプリング周波数が判定された周波数よりも高い周波数に設定される。これにより、入力される実信号が忠実に再現される。
【発明の効果】
【００２１】
本発明による場合、信号処理部（デバイス）に入力される信号よりも高い周波数でサンプリングされて信号が記録されるので、アナログ的に信号を再現することができる。また、信号処理部に入力される信号を記録し続け、障害が発生した場合に記録処理を停止するので、容量が有限である記録領域に信号を記録し続けている場合であっても上書きされない。障害が発生した時点で入力されていた信号をより確実に、忠実に再現することが可能である。
【００２２】
本発明による場合、障害を再現するために擬似的に作成された信号が入力されるのではなく、障害が発生した場合に記録しておいた信号が実際に信号処理部に入力されるので、発生した障害を忠実に再現させることが可能となる。
【００２３】
本発明による場合、信号処理部に入力される信号よりも確実に高い周波数であるサンプリング周波数で信号をサンプリングするので、入力される実信号をより忠実に再現することが可能となる。
【発明を実施するための最良の形態】
【００２４】
以下本発明をその実施の形態を示す図面に基づき具体的に説明する。
【００２５】
図１は、本実施の形態における信号処理装置１の構成を示すブロック図である。信号処理装置１は、外部から信号を入力するコネクタ部１０と、入力される信号に基づいて所定の処理を行なうデバイス１１と、各構成部を接続している内部バス１２と、コネクタ部１０により入力される信号をモニタするモニタＦＰＧＡ（Field Programmable Gate Array）１３と、モニタＦＰＧＡ１３に内部バス１２を介して接続しているメモリ１４とを備えている。
【００２６】
コネクタ部１０、デバイス１１及びモニタＦＰＧＡ１３は内部バス１２によって接続されており、コネクタ部１０により入力された信号は、デバイス１１へ入力されると共にモニタＦＰＧＡ１３へも入力される。
【００２７】
コネクタ部１０は、外部からの信号を入力する入力端子であり、外部からの信号を内部バス１２で伝送するために適宜変換する機能を有している。コネクタ部１０は、アナログ信号をデジタル信号へ変換するＡＤ変換器の機能、及びシリアル伝送される信号を内部バス１２へパラレル伝送する機能を有していてもよい。
【００２８】
デバイス１１は、ＣＰＵ（Central Processing Unit）、ネットワークコントローラチップ、ビデオコントローラチップ、メモリ等である。信号処理装置１が含むデバイス１１の種類によって、信号処理装置１は通信カード、ビデオカード、メモリカード等の種々の機能を実現するカード型デバイスを構成する。デバイス１１は複数備えられていてもよいし、夫々が異なる種類のデバイス１１であってもよい。
【００２９】
なお、デバイス１１は、自身で障害が発生した場合にこれを検出し、障害が発生したことを通知する障害発生信号を出力する機能を有している。本実施の形態における信号処理装置１のデバイス１１は、障害発生信号を内部バス１２又は異なる信号線を介してモニタＦＰＧＡ１３へ入力する。
【００３０】
モニタＦＰＧＡ１３は、コネクタ部１０から入力される信号を所定のサンプリング周波数でサンプリングし、サンプリングした結果をメモリ１４に書き込み続けるように構成される。入力される信号がパラレル伝送される信号である場合でも、複数の信号を同時にサンプリングする。なお、メモリ１４の容量は有限であるので、モニタＦＰＧＡ１３はメモリ１４をサイクリックに使用し、最も古い信号に新しい信号を上書きする構成とする。
【００３１】
また、モニタＦＰＧＡ１３は、内蔵する所定のレジスタの停止ＢＩＴが外部からオンへ書き換えられるか、内蔵する書込開始／停止スイッチへ信号が入力されるか等のトリガにより、書き込みを停止する。なお、本実施の形態ではデバイス１１から出力される障害発生信号がトリガとして利用され、障害が発生した場合に書き込みが停止される。書き込みの再開は、内蔵する停止ＢＩＴがオフに書き換えられるか、前記書込開始／停止スイッチへ再度信号が入力されるか等のトリガにより再開されるとしてもよい。
【００３２】
さらに、モニタＦＰＧＡ１３は内蔵する所定のレジスタの再生ＢＩＴが外部から書き換えられるか、内蔵する再生スイッチへ信号が入力されるか等のトリガにより、メモリ１４に記録した信号を読み出してデバイス１１へ入力する再生を開始する。障害発生信号が書き込み停止のトリガとして利用することと同様に、障害発生信号を再生開始のトリガとして利用してもよい。この場合、モニタＦＰＧＡ１３からデバイス１１へ入力される信号とコネクタ部１０により入力され続ける信号とがデバイス１１で重畳されて入力されないよう、コネクタ部１０からのデバイス１１への入力が自動的に遮断される。
【００３３】
なお、モニタＦＰＧＡ１３は信号をサンプリングする際のサンプリング周波数を以下のように設定する。モニタＦＰＧＡ１３は、内蔵するレジスタに記憶されているサンプリング周波数に基づいて、モニタした信号をサンプリングする構成とする。なお、モニタＦＰＧＡ１３は、サンプリング及びメモリ１４への記録を開始する前に、内蔵する切替スイッチへ信号が入力されることにより予め記憶されているサンプリング周波数のいずれかを読み出して切り替える構成としてもよいし、又は、レジスタに記憶されているサンプリング周波数を書き換えることによってサンプリング周波数を切り替える構成としてもよい。
【００３４】
モニタＦＰＧＡ１３をＦＰＧＡのみならず、ＰＬＤ（Programmable Logic Device）等も含むプログラマブルな集積回路によって実現することにより、ソフトウェア的に適宜、実行される処理を変更することが可能であると共に、ハードウェア的に高速処理を実行することが可能である。
【００３５】
メモリ１４は、ＳＲＡＭ（Static Random Access Memory）、ＤＲＡＭ（Dynamic Random Access Memory）等の揮発性メモリ、及びＥＥＰＲＯＭ（Electronically Erasable and Programmable Read Only Memory）等の不揮発性メモリのいずれかが利用される。ただし、本実施の形態における信号処理装置１はカード型デバイスを構成しているので、信号処理装置１単体で後に障害の原因を解析する場合、接続されている装置から取り外されても記録された信号が保持されていることが望まれる。したがって、不揮発性のメモリがより好ましい。
【００３６】
上述のように構成される信号処理装置１において、信号処理装置１へ外部から入力される信号に基づいてデバイス１１の種類に応じた処理がなされると共に、モニタＦＰＧＡ１３で入力される信号が記録される処理について説明する。図２は、本実施の形態における信号処理装置１のデバイス１１へ入力される信号が、モニタＦＰＧＡ１３により記録される処理手順の一例を示すフローチャートである。
【００３７】
モニタＦＰＧＡ１３は、コネクタ部１０により入力されている信号のメモリ１４への記録を開始し（ステップＳ１１）、設定してあるサンプリング周波数での信号のサンプリング及びメモリ１４への書き込みを行なう（ステップＳ１２）。モニタＦＰＧＡ１３は、障害発生信号を受信したか否かによって障害が発生したか否かを判断する（ステップＳ１３）。モニタＦＰＧＡ１３は、障害が発生していないと判断した場合（Ｓ１３：ＮＯ）、処理をステップＳ１２へ戻し、サンプリング及びメモリ１４への書き込みを繰り返す。
【００３８】
モニタＦＰＧＡ１３は、障害が発生したと判断した場合（Ｓ１３：ＹＥＳ）、メモリ１４への記録を停止し（ステップＳ１４）、処理を終了する。
【００３９】
上述の処理により、デバイス１１へ入力される信号がサンプリングされ続け、障害が発生したことが検出されるまでメモリ１４へ書き込まれ続ける。障害が発生した場合にメモリ１４への書き込みを停止することにより、障害が発生した時点に入力されていた信号が遡って記録されている。
【００４０】
次に、障害が発生した時点で入力されていた信号がメモリ１４に記録されているのに対し、これを実際に再生し、デバイス１１へ入力して障害を再現する処理について説明する。図３は、本実施の形態における信号処理装置１のモニタＦＰＧＡ１３が、記録しておいた信号を再生してデバイス１１へ入力する処理手順の一例を示すフローチャートである。
【００４１】
モニタＦＰＧＡ１３は、再生ＢＩＴがオンに書き換えられるか、又は再生スイッチへ信号が入力されるか等のトリガによって再生開始指示がされたか否かを判断する（ステップＳ２１）。モニタＦＰＧＡ１３は、再生開始指示がされていないと判断した場合（Ｓ２１：ＮＯ）、処理をステップＳ２１へ戻す。
【００４２】
モニタＦＰＧＡ１３が再生開始指示がされたと判断した場合（Ｓ２１：ＹＥＳ）、コネクタ部１０からデバイス１１への信号の入力が遮断される（ステップＳ２２）。これは、コネクタ部１０とデバイス１１との間に信号の遮断機構を備え、モニタＦＰＧＡ１３からの指示によって信号が遮断されてもよいし、モニタＦＰＧＡ１３へ入力される再生開始指示のトリガが同様に遮断指示として遮断機構に入力される構成としてもよい。また、コネクタ部１０が、モニタＦＰＧＡ１３からの指示又は再生開始指示のトリガを受け付けてデバイス１１への信号の入力を停止する構成としてもよい。
【００４３】
モニタＦＰＧＡ１３は、メモリ１４に記録されている信号を読み出してデバイス１１へ入力する再生を開始する（ステップＳ２３）。次に、モニタＦＰＧＡ１３は、再生終了指示がされたか否かを判断する（ステップＳ２４）。なお、ステップＳ２４における再生終了指示は、再生ＢＩＴがオフに書き換えられるか、又は再生スイッチへの信号入力によりオフに切り替わったか等のトリガである。モニタＦＰＧＡ１３は、再生終了指示がされていないと判断した場合（Ｓ２４：ＮＯ）、処理をステップＳ２４へ戻して再生した信号の入力を継続する。
【００４４】
モニタＦＰＧＡ１３は、再生終了指示がされたと判断した場合（Ｓ２４：ＹＥＳ）、メモリ１４に記録されている信号を読み出してデバイス１１へ入力する再生を終了し（ステップＳ２５）、処理を終了する。
【００４５】
このとき、モニタＦＰＧＡ１３は、再生を開始した場合には記録しておいた信号を繰り返しデバイス１１へ入力する構成とする。これにより、入力された信号を原因とする障害を繰り返し再現させることが可能となる。繰り返し発生する障害をユーザが観測することによって原因が究明できる可能性がある。
【００４６】
なお、モニタＦＰＧＡ１３は、コネクタ部１０から入力される信号の周波数を判定し、判定した周波数に応じてサンプリング周波数を設定する構成としてもよい。図４は、本実施の形態における信号処理装置１のデバイス１１へ入力される信号が、モニタＦＰＧＡ１３により記録される処理手順の一例を示すフローチャートである。なお、図４のフローチャートに示す処理手順の内の、図２のフローチャートに示した処理手順と共通する処理については、同一のステップ番号を付して詳細な説明を省略する。
【００４７】
モニタＦＰＧＡ１３は、入力されている信号の周波数を判定する（ステップＳ３１）。
判定した周波数をレジスタに記憶する（ステップＳ３２）。モニタＦＰＧＡ１３は、記憶した周波数の例えば２倍にサンプリング周波数を設定し（ステップＳ３３）、入力された信号をメモリ１４への記録を開始し（Ｓ１１）、後の処理を継続する。
【００４８】
図４のフローチャートに示したように、モニタＦＰＧＡ１３は入力される信号の周波数よりも確実に高いサンプリング周波数に設定することができるので、より適したタイミングで信号をサンプリングして記録し、忠実に信号を再現することが可能となる。
【００４９】
次に、フローチャートに示した処理によってメモリ１４に記録される信号について説明する。図５は、本実施の形態における信号処理装置１に備えられるモニタＦＰＧＡ１３によりサンプリングされる信号を模式的に示す波形図である。図５の横軸は右へ向かって時間の経過を表している。
【００５０】
図５（ａ）は、コネクタ部１０から入力される信号の波形を示している。入力される信号はデジタル信号であるので、本来は矩形波であるが、伝送によってゆるやかに台形波となる。また、図５（ａ）に示される矩形波は、本来は破線で表わされる波形で伝送されるべきであるのに対し、ノイズの影響を受けていることが示されている。
【００５１】
図５（ｂ）は、デバイス１１における信号の取り込みタイミング、及び取り込まれた結果を示している。図５（ｂ）の矢印は取り込みタイミングを示している。図５（ｂ）に示すように、図５（ｂ）中での２番目の取り込みタイミングが、ノイズの影響を受けた部分と合致していることにより、本来は「１」として取り込まれるべき信号が、「０」として取り込まれていることが示されている。
【００５２】
図５（ｃ）は、モニタＦＰＧＡ１３における信号のサンプリングタイミング、及びサンプリングされてメモリ１４に記録される結果を示している。図５（ｃ）の矢印は、サンプリングされるタイミングを示している。図５（ｃ）に示すように、モニタＦＰＧＡ１３におけるサンプリング周波数は、デバイス１１における信号の取り込みタイミング（図５（ｂ）参照）のレートよりも高く設定され、即ち入力される信号の周波数よりも高く設定されている。したがって、モニタＦＰＧＡ１３によりサンプリングされて記録される結果は、信号のノイズの影響をより忠実に捉えていることが示されている。
【００５３】
図５（ｄ）は、モニタＦＰＧＡ１３が記録した信号を再生した場合に、モニタＦＰＧＡ１３からデバイス１１へ入力される信号の波形、及びデバイス１１における取り込みタイミングを示している。図５（ｄ）の矢印は、デバイス１１における信号が取り込まれるタイミングを示している。モニタＦＰＧＡ１３がデバイス１１へ入力する信号は、メモリ１４に記録された結果（図５（ｃ））に基づいて再現されるデジタル信号である。なお、デバイス１１の取り込みタイミングに対して忠実に再現させるために、タイミングが１サンプリングクロック分、早められて入力されていることが示されている。これにより、本来であれば「１」として取り込まれて処理が行なわれるべきところ、「０」として取り込まれる信号が入力されたことにより実行された処理を起因として発生する障害がデバイス１１で再現される。
【００５４】
図５の波形図に示したように、モニタＦＰＧＡ１３は高周波数でサンプリングするので、コネクタ部１０からデバイス１１へ入力される信号を、よりアナログ的な波形によって再現することが可能に記録することができる。さらに、モニタＦＰＧＡ１３は、実信号に忠実な信号を再生して実際にデバイス１１へ入力することが可能であるので、実際に発生した障害の原因を特定することが可能となる。
【００５５】
次に、デバイス１１がメモリであり、デバイス１１でデータの書き込み処理が行なわれる場合を例に、コネクタ部１０からデバイス１１へ入力される信号がパラレル伝送されるときであっても、有効に障害を再現することができることを示す。
【００５６】
図６は、本実施の形態における信号処理装置１においてデバイス１１へ入力される信号を模式的に示す波形図である。図６の横軸は右へ向かって時間の経過を表している。
【００５７】
図６（ａ）は、データが書き込まれるべきアドレスを示すアドレス信号であり、図６（ｂ）は、書き込みが有効であるタイミングを示すアドレス有効信号（Write Enable信号）である。また、図６（ｃ）は、書き込まれるデータを示すデータ信号であり、図６（ｄ）はデバイス１１への処理を有効（アクティブ）にするチップセレクト（デバイスセレクト）信号である。アドレス信号及びデータ信号がデバイス１１へ入力され続けていたとしても、チップセレクト信号及びアドレス有効信号が共に有効（アクティブ）、即ち「１」を示していない場合は、アドレス信号が示すアドレスへのデータの書き込み処理は行なわれない。
【００５８】
図６（ｅ）は、デバイス１１における図６（ａ）から（ｄ）までに示した信号の取り込みタイミング、及び信号に基づいて行なわれる処理を示している。なお、図６（ｂ）及び図６（ｅ）に破線で示した波形及びブロックは、本来あるべきタイミングで入力されたアドレス有効信号、及び本来あるべき処理を示している。
【００５９】
図６（ａ）から（ｅ）までに示されるように、本来あるべきタイミングでアドレス有効信号が入力された場合、デバイス１１が各信号を取り込んだタイミングでチップセレクト信号及びアドレス有効信号がアクティブであるときに入力されているアドレス信号はアドレス「０ｘＣＣ」（ｈｅｘ）を示しており、データ信号は「０ｘ０１」を示している。したがって、本来はデバイス１１において、アドレス「０ｘＣＣ」にデータ「０ｘ０１」が書き込まれるべきである。しかしながら、アドレス有効信号の位相が他の信号とずれていることにより、取り込みタイミングの時点でいずれもがアクティブであるときに入力されているアドレス信号は、アドレス「０ｘ５５」を示している。したがって、誤ってアドレス「０ｘ５５」にデータ「０ｘ０１」が書き込まれる。
【００６０】
これらの処理の結果がログとして記録されている場合、ログにはアドレス「０ｘ５５」にデータ「０ｘ０１」が書き込まれたことが示されている。ログを読み出したユーザは、本来アドレス「０ｘＣＣ」に書き込まれるべきデータが、異なるアドレス「０ｘ５５」に書き込まれたという障害が発生した事実を知ることができる。しかしながら、何を原因として「０ｘ５５」にデータが書き込まれたかを知ることはできない。
【００６１】
これに対し、図６（ｆ）は、モニタＦＰＧＡ１３におけるアドレス有効信号のサンプリングタイミング、及びサンプリングされてメモリ１４に記録される結果を示している。図６（ｆ）の矢印はサンプリングされるタイミングを示している。図６（ｆ）に示すように、モニタＦＰＧＡ１３によりサンプリングされて記録される結果は、実際のアドレス有効信号をより忠実に捉えていることが示されている。
【００６２】
図６（ｇ）は、モニタＦＰＧＡ１３によって記録され、再生されるアドレス有効信号であり１サンプリングクロック分、タイミングが早められている。図６（ｈ）は、モニタＦＰＧＡ１３によって記録され、再生されるアドレス信号である。また、図６（ｉ）は、モニタＦＰＧＡ１３によって記録され、再生されるデータ信号であり、図６（ｊ）はモニタＦＰＧＡ１３によって記録され、再生されるチップセレクト信号である。
【００６３】
図６（ｋ）は、デバイス１１における図６（ｇ）から（ｊ）までに示した信号の取り込みタイミングを示している。図６（ｇ）から（ｋ）までに示されるように、障害が発生した場合のアドレス有効信号（図６（ｇ））が忠実にモニタＦＰＧＡ１３により再現されて入力される。これにより、本来であれば「１」即ちアクティブの信号が入力され、デバイス１１に取り込まれて「０ｘＣＣ」へのデータの書き込みが行なわれるべきところ、取り込みタイミングには「０」即ち非アクティブの信号が入力され、次の取り込みタイミングでアドレス有効信号がアクティブであるために誤って「０ｘ５５」へデータの書き込み処理が行なわれる障害がデバイス１１で再現される。
【００６４】
図６の波形図に示したように、複数の信号がパラレル伝送された場合であってもいずれも再現されることにより、位相関係を復元することができる。したがって、図６の波形図に示される例ではアドレス有効信号のタイミングがずれていることを特定することができ、原因を特定することが可能である。
【００６５】
このように、信号処理装置１の内部に備えられたモニタＦＰＧＡ１３が、障害が発生した時点で入力されていた実際の信号を高い周波数でサンプリングして記録しているので、よりアナログ的に忠実に実信号を再現することが可能である。信号処理装置１に対して推測に基づき作成された信号を疑似的に外部から入力して再現を図ることなしに、信号処理装置１単体で実信号に近い信号を用いて再現試験を行なうことが可能である。
【００６６】
なお、本実施の形態における信号処理装置１ではデバイス１１が障害発生信号をモニタＦＰＧＡ１３へ直接入力する構成とした。しかしながら、本発明はこれに限らず、信号処理装置１はエラー検出部を更に備え、デバイス１１を含む各構成部で障害が発生した場合にこれを検出してモニタＦＰＧＡ１３へ入力する構成としてもよい。
【００６７】
また、本実施の形態における信号処理装置１は、カード型デバイスで構成した。しかしながら本発明はこれに限らず、入力される信号に基づく処理を行なうデバイス１１を備えた装置の内部に、モニタＦＰＧＡ１３及びメモリ１４を備えることによって装置で発生する障害の原因究明を装置単体で実施することができる。モニタＦＰＧＡ１３及びメモリ１４は、開発過程のみならず運用後もそのままカード型デバイス又は対象装置に備えられたままにしておくことにより、開発過程から運用、保守管理に至るまでいずれの場合における障害発生に対して有効に利用できる点、優れた効果を奏する。
【図面の簡単な説明】
【００６８】
【図１】本実施の形態における信号処理装置の構成を示すブロック図である。
【図２】本実施の形態における信号処理装置のデバイスへ入力される信号が、モニタＦＰＧＡにより記録される処理手順の一例を示すフローチャートである。
【図３】本実施の形態における信号処理装置のモニタＦＰＧＡが、記録しておいた信号を再生してデバイスへ入力する処理手順の一例を示すフローチャートである。
【図４】本実施の形態における信号処理装置のデバイスへ入力される信号が、モニタＦＰＧＡにより記録される処理手順の一例を示すフローチャートである。
【図５】本実施の形態における信号処理装置に備えられるモニタＦＰＧＡによりサンプリングされる信号を模式的に示す波形図である。
【図６】本実施の形態における信号処理装置においてデバイスへ入力される信号を模式的に示す波形図である。
【符号の説明】
【００６９】
１  信号処理装置
１０  コネクタ部
１１  デバイス（信号処理部）
１２  内部バス
１３  モニタＦＰＧＡ
１４  メモリ
【図１】
2009110284.tif 000003
【図２】
2009110284.tif 000004
【図３】
2009110284.tif 000005
【図４】
2009110284.tif 000006
【図５】
2009110284.tif 000007
【図６】
2009110284.tif 000008