JP2009230350A - 統合異常検知用データ取得装置 - Google Patents
統合異常検知用データ取得装置 Download PDFInfo
- Publication number
- JP2009230350A JP2009230350A JP2008073528A JP2008073528A JP2009230350A JP 2009230350 A JP2009230350 A JP 2009230350A JP 2008073528 A JP2008073528 A JP 2008073528A JP 2008073528 A JP2008073528 A JP 2008073528A JP 2009230350 A JP2009230350 A JP 2009230350A
- Authority
- JP
- Japan
- Prior art keywords
- unit
- control software
- logic circuit
- log information
- data acquisition
- 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.)
- Pending
Links
Images
Landscapes
- Debugging And Monitoring (AREA)
Abstract
【課題】製品化後でも測定データとログ情報とのリンクが可能となり、障害解析が容易に行える統合異常検知用データ取得装置を提供する。
【解決手段】統合異常検知用データ取得装置は、論理回路部10と、前記論理回路部10を用いて所定の処理を行う制御ソフトウェア部40と、ログ情報を記憶するログ情報記憶部50と、を備え、前記論理回路部10は、事象が発生した場合に内部の単数又は複数の任意の信号線から前記制御ソフトウェア部40に割り込み信号を発信し、前記制御ソフトウェア部40は、前記割り込み信号を受信したことをログ情報として前記ログ情報記憶部50に記録する。
【選択図】図1
【解決手段】統合異常検知用データ取得装置は、論理回路部10と、前記論理回路部10を用いて所定の処理を行う制御ソフトウェア部40と、ログ情報を記憶するログ情報記憶部50と、を備え、前記論理回路部10は、事象が発生した場合に内部の単数又は複数の任意の信号線から前記制御ソフトウェア部40に割り込み信号を発信し、前記制御ソフトウェア部40は、前記割り込み信号を受信したことをログ情報として前記ログ情報記憶部50に記録する。
【選択図】図1
Description
本発明は、統合異常検知用データ取得装置に関する。
従来、論理回路(ハードウェア)のデバッグにおいては、ロジックアナライザなどの測定器からの情報(測定データ)が、また、制御ソフトウェアを含むソフトウェアのデバッグにおいては、デバッガやソフトウェア自身が生成するログ情報(表示情報を含む)が用いられている。つまり、基本的には、ハードウェアではハードウェアの世界で得られる情報を基に、ソフトウェアではソフトウェアの世界で得られる情報を基に障害解析を行っている。
一方、ハードウェアとソフトウェア(デバイスドライバ)の境界で発生する障害(どちらの障害か容易には判別できない障害)においては、相互の情報を利用することで障害解析を効率的に行うことが可能となる。
しかしながら、測定器で得られる情報(測定データ)とソフトウェア側の情報(ログ情報)は時間的に独立しており、更には、両者の保持する情報は時間的な精度と保持時間に大きな開きがある。一般的に測定器ではソフトウェアが持つログ情報のごく一部の時間しか情報の記録ができない。そのため、相互の情報のリンクをとることは困難である。
そのような状況では、予め設計またはコーディングされた
(1)ソフトウェアからハードウェアへのアクセス(レジスタ書き込みを起点として動作する信号線の変化)
(2)ハードウェアからソフトウェアへのアクセス(割り込み)
が主に総合の情報のリンクをとるための手がかりとなる。
(1)ソフトウェアからハードウェアへのアクセス(レジスタ書き込みを起点として動作する信号線の変化)
(2)ハードウェアからソフトウェアへのアクセス(割り込み)
が主に総合の情報のリンクをとるための手がかりとなる。
しかし、図14に示すように、リセット信号91のような通常は割り込み処理を実施していないものについて、不正なリセット92が発生した場合、不正リセットが発生したという事実が制御ソフトウェアのログ情報に残らず、ソフトエェアのログ情報を障害解析に利用することができない。
また、図15に示すように、測定器の情報(測定データ)に上記アクセス情報が記録され、かつ、そのアクセスの位置がソフトウェアのログ情報、あるいはコードシーケンスから特定できる場合にのみ相互の情報のリンクをとることができるが、それ以外の場合には測定データとソフトウェアのログ情報を障害解析に利用することはできない。図15の例では、測定データ93がログ情報A94とログ情報B95とのどちらと対応するか、共通の時間軸がないために特定できない。
更に、測定器のトリガー条件は、既存の外部信号線(プローブで掴めるもの)のみを組み合わせて作るため、複雑なロジックは組み難く、ソフトウェアがもつ情報や処理結果を利用したトリガー条件を生成することはできない。そのため、所望の位置でトリガーをかけることが困難な状況が発生し、それに起因して回路の一部を追加または修正する必要があったり、最悪の場合にはデータの採取自体をあきらめるしかなかった。
このようにハードウェアとソフトウェアの両方にまたがる不具合の解析を容易にし、デバッグを効率化するための、プロセッサを含むLSI用のデバッグ装置(例えば、特許文献1参照。)が提案されている。
特許文献1のデバッグ装置では、ソフトウェアからハードウェアへの同期は、ソフトウェアブレイク状態を取り出し、それを基に模擬LSI内部のアナライザ手段へトリガーをかけることで行う。そのため、1ステップ単位の同期が可能となる。
一方、ハードウェアからソフトウェアへの同期は、模擬LSI内部のアナライザ手段へのトリガー状態を取り出し、それを基にプロセッサに割り込みを掛けることで行う。そして、モニタプログラムに制御を切り替えることで、LSI及び周辺チップのデバッグを実施する。
このため、特許文献1のデバッグ装置では、実際のターゲットLSIと異なり、対象のLSIはアナライザ手段やモニタプログラムを含み、他にも外部のデバッグ装置との通信手段や、外部からのクロック入力等が付加されており、商品化後はデバッグはできない。
また、外部には専用コントローラや、ソフトウェアとハードウェアに対する専用のデバッグ手段が必要となる。
特開2003−140923号公報
本発明は、製品化後でも測定データとログ情報とのリンクが可能となり、障害解析が容易に行える統合異常検知用データ取得装置を提供することを目的とする。
上記目的と解決するために、請求項1記載の統合異常検知用データ取得装置は、論理回路部と、前記論理回路部を用いて所定の処理を行う制御ソフトウェア部と、ログ情報を記憶するログ情報記憶手段と、を備え、前記論理回路部は、事象が発生した場合に内部の単数又は複数の任意の信号線から前記制御ソフトウェア部に割り込み信号を発信し、前記制御ソフトウェア部は、前記割り込み信号を受信したことをログ情報として前記ログ情報記憶手段に記録する。
請求項2記載の統合異常検知用データ取得装置は、請求項1記載の統合異常検知用データ取得装置において、前記論理回路部は、前記論理回路部の出力信号を測定する外部の測定器と接続され、前記割り込み信号が発信された場合に、測定開始を指示するトリガー信号を前記測定器に供給する。
請求項3記載の統合異常検知用データ取得装置は、請求項1又は請求項2記載の統合異常検知用データ取得装置において、前記論理回路部は、前記信号線に変化が生じた場合に前記制御ソフトウェア部に前記割り込み信号を発信する。
請求項4記載の統合異常検知用データ取得装置は、請求項2又は請求項3記載の統合異常検知用データ取得装置において、前記測定器は、外部の機器と接続され、前記機器の出力信号を取り込んだ場合に、割り込みを指示するトリガー信号を前記論理回路部に供給し、前記機器は、事象が発生した場合に事象の発生を知らせる出力信号を前記測定器に供給し、前記論理回路部は、前記測定器と接続され、前記測定器に接続された前記機器に事象が発生した場合に、前記制御ソフトウェア部に割り込み信号を発信し、前記制御ソフトウェア部は、前記割り込み信号を受信したことをログ情報として前記ログ情報記憶手段に記録する。
請求項5記載の統合異常検知用データ取得装置は、請求項4記載の統合異常検知用データ取得装置において、前記論理回路部は、前記機器と接続され、前記機器から所定の同期信号が入力されるとリセットした後所定時間まで計時するタイマーを備え、該タイマーが前記所定時間を計時した場合に割り込み信号を発信する。
請求項6記載の統合異常検知用データ取得装置は、所定のクロック数毎にカウントするカウンタを有する論理回路部と、前記論理回路部を用いて所定の処理を行う制御ソフトウェア部と、ログ情報を記憶するログ情報記憶手段と、を備え、前記制御ソフトウェア部は、前記カウンタから出力されるカウント値をログ情報として前記ログ情報記憶手段に記録する。
請求項7記載の統合異常検知用データ取得装置は、所定の処理を行う制御ソフトウェア部と、前記制御ソフトウェア部と制御情報及びデータの交換を行って所定の処理を行う処理部と、前記論理回路部の出力信号を測定する外部の測定器と接続され、前記制御ソフトウェア部からのアクセスがあった場合に前記測定器に測定開始を指示する信号を供給するトリガー部とを含む論理回路部と、を備え、前記制御ソフトウェア部は、エラーが発生した場合に前記トリガー部にアクセスする。
請求項8記載の統合異常検知用データ取得装置は、請求項7記載の統合異常検知用データ取得装置において、ログ情報を記憶するログ情報記憶手段を、更に備え、前記ソフトウェア部は、前記トリガー部をアクセスした場合に該アクセスを示す情報をログ情報として前記ログ情報記憶手段に記録する。
請求項9記載の統合異常検知用データ取得装置は、請求項7又は請求項8記載の統合異常検知用データ取得装置において、前記制御ソフトウェア部は、他の制御ソフトウェア部のデータ処理により前記論理回路部にエラーが発生した場合に、前記他の制御ソフトウェア部から前記トリガー部にアクセス可能にするインタフェース部を有する。
請求項1記載の発明によれば、論理回路の障害事象をソフトウェアに伝えることができる。
請求項2記載の発明によれば、測定器の測定波形にリンクしたソフトウェアのログ情報が記録され、障害解析に利用できる。
請求項3記載の発明によれば、通常は割り込み処理としないリセットなどの論理回路内部の信号線の変化もソフトウェアのログ情報に記録され、障害解析に利用できる。
請求項4記載の発明によれば、外部に接続されたプリンタ等の機器に異常が発生したときに測定器を介してソフトウェアのログ情報が記録され、異常時の測定波形とログ情報を照合させることができる。
請求項5記載の発明によれば、定期的に送出される信号が所定の時間に送出されない場合に、その原因の解析に利用できる。
請求項6記載の発明によれば、ハードウェアとソフトウェアに共通の絶対的な時計を備えることにより、外部の測定器の測定データとソフトウェアのログ情報とのリンクが可能となり、障害解析に利用できる。
請求項7記載の発明によれば、外部の測定器に出力信号を供給するための機構を論理回路部内に設けることにより、測定器の測定データを障害解析に利用できる。
請求項8記載の発明によれば、外部の測定器に出力信号を供給するための機構を論理回路部内に設けることにより、外部の測定器の測定データとソフトウェアのログ情報とのリンクが可能となり、障害解析に利用できる。
請求項19記載の発明によれば、他のソフトウェアから測定器の波形が採取でき、障害解析に利用できる。
以下、本発明の実施の形態について図面を参照しながら詳細に説明する。第1から第4の実施の形態では、ハードウェアからソフトウェアへのアクセス(割り込み)により、割り込みをトリガーとして測定器で観測された波形と制御ソフトウェア部のログ情報とをリンクする。また、従来は割り込みにしていなかった通常のデータバス、アドレスバス、制御信号、リセット信号、タイマーによる割り込み発生回路を活用することで、測定器のトリガー条件の幅を広げるものである。
<第1の実施の形態>
図1は、第1の実施の形態に係る統合異常検知用データ取得装置の構成を表すブロック図である。同図に示すように、統合異常検知用データ取得装置は、論理回路部10と、制御ソフトウェア部40と、ログ情報記憶部50と、を備えている。
図1は、第1の実施の形態に係る統合異常検知用データ取得装置の構成を表すブロック図である。同図に示すように、統合異常検知用データ取得装置は、論理回路部10と、制御ソフトウェア部40と、ログ情報記憶部50と、を備えている。
論理回路部10は、マルチプレクサ11と、割り込みレジスタ21と、タイマーレジスタ22とを含んで構成され、何らかの事象が発生したときに制御ソフトウェア部40に対して割り込み信号を発信する。
制御ソフトウェア部40は、論理回路部10を用いて所定の処理を行うと共に、論理回路部10からの割り込み信号を受信したことをログ情報としてログ情報記憶部50に記録する。
ログ情報記憶部50は、割り込み信号を受信したこと記録する。ログ情報記憶部50は、通常の割り込み事象のみならず、障害発生時に備えて、どの部分(時点)でエラーが発生したかを特定するために、処理の主要な部分で関連する情報と共にログ(トレース情報)を記録する。また、ログ情報記憶部50は、エラーが発生した場合は、それを解析するために必要な情報も記録する。
具体的には、ソフトウェア上でエラー(パラメータエラーなど)と判断できる箇所には、その判断の元になる情報とそれを補う情報が記録される。また、OS(オペレーションシステム)からエラーが返された場合には、OSからの返り値と、その関数への引数などの情報およびそれを補う情報が記録される。更に、ハードウェアからのエラー(割り込み)に関しては、そのエラーを示すレジスタの情報、関連するハードウェアのレジスタ情報及びソフトウェアで保持している関連情報が記録される。
このように構成された統合異常検知用データ取得装置では、割り込みレジスタ21が、論理回路部10の内部に設けたマルチプレクサ11から選択された信号またはタイマーレジスタ22のキャリーオーバーによる割り込み信号を受け、制御ソフトウェア部40に割り込みをかける。制御ソフトウェア部40は、予めマルチプレクサ11によって選択する信号線をセレクトレジスタ(図示省略)への書き込みにより選択できるようにする。制御ソフトウェア部40は、これらの割り込み信号を受信したことをログ情報記憶部50に記録する。これによって、論理回路部10の内部で発生した事象が、ログ情報として記録される。
また、本実施の形態では、図1に示すように、論理回路部10の出力信号を測定する外部の測定器60(例えばロジックアナライザ)を接続してもよい。この場合には、割り込みレジスタ21が、制御ソフトウェア部40に割り込みをかけると同時に、測定器60にもトリガーをかける。これによって、測定器60の所望の波形とそれにリンクしたログ情報が記録される。
<第2の実施の形態>
第2の実施の形態は、論理回路部10の内部の信号による割り込みがトリガーとなる場合である。
第2の実施の形態は、論理回路部10の内部の信号による割り込みがトリガーとなる場合である。
図2は、第2の実施の形態に係る統合異常検知用データ取得装置の構成を表すブロック図である。同図に示すように、統合異常検知用データ取得装置は、プリンタコントローラ80内に設置され、論理回路部10と、制御ソフトウェア部40と、を備えている。
論理回路部10は、外部のオシロスコープ等の測定器60と接続され、マルチプレクサ11と、各種レジスタを含むレジスタ群20と、コンパレータ12と、外部のプリンタ本体70と接続された印刷制御部13とを備えている。
制御ソフトウェア部40は、バスブリッジ41と汎用バス42とを介して論理回路部10と接続されている。
このように構成された統合異常検知用データ取得装置では、論理回路部10が、内部信号31をマルチプレクサ11に入力し、制御ソフトウェア部40により選択されたセレクトレジスタ23によって指定された信号をコンパレータ12に出力する。コンパレータ12は、入力された信号と制御ソフトウェア部40によってセットされた比較データレジスタ24とを比較し、一致したときには割り込みレジスタ21に割り込み要求を出力する。割り込みレジスタ21は、割り込みイネーブルレジスタ26によりイネーブルにされた割り込みであれば、割り込み要求信号32をアサートして制御ソフトウェア部40に割り込む。
また、これと同時に、割り込みレジスタ21は、トリガー信号33を外部に接続している測定器60に出力する。測定器60は、入力されたそのトリガー信号33をトリガーとしてプロービングしてある信号線波形35を取り込んで表示する。このように割り込み処理が実施されると、ログ情報が記録される。
図3は、制御ソフトウェア部40の処理の流れの概要を示すフローチャートであり、図3(A)は通常の処理時、図3(B)は割り込み処理時の流れを表す。
図3(A)に示すように、通常の処理においては、制御ソフトウェア部40は、ステップ100からステップ120を通じて、例えば、処理A(例:画像出力パラメータ処理)、処理B(例:画像出力開始)、処理C(例:出力終了待ち)のように、論理回路部10を用いて所定の処置を行う。
一方、図3(B)に示すように、割り込み処理においては、制御ソフトウェア部40は、ステップ200で割り込み処理があったことをログ情報として記録する。
ステップ210では、制御ソフトウェア部40は、測定のための割り込みか通常の割り込みか、即ち、事象の同期をとるために意図的に行う割り込みか否かを判定し、測定のための割り込みのときにはステップ230に進み、測定のための割り込みでないときにはステップ220に進む。
ステップ220では、通常の割り込みなので、制御ソフトウェア部40は、割り込み内容に応じた処理を行って割り込み処理を終了する。
ステップ230では、測定のための割り込みなので、制御ソフトウェア部40は、障害解析のために必要な情報を取得し、これらをログ情報として記録した後に割り込み処理を終了する。
このように、ログ情報には、設定したレジスタの情報など障害解析に利用できる情報が記録されるため、測定器60で取り込んだ波形と制御ソフトウェア部40の処理フローとを照合させることができる。
図4は、本実施の形態の概念図である。同図に示すように、通常は割り込み処理を実施しないリセット信号61や不正リセット信号62が発生した場合に割り込み63が発生することにより、制御ソフトウェア部40により不正リセット信号62に対応するログ情報が記録される。
<第3の実施の形態>
第3の実施の形態は、外部に接続された機器の信号による割り込みがトリガーとなる場合である。
第3の実施の形態は、外部に接続された機器の信号による割り込みがトリガーとなる場合である。
図2のプリンタ本体70は、プリンタコントローラ80から出力される信号に異常があった場合、異常を示す信号を測定器60に出力する。測定器60は、その異常を示す信号をトリガーにして論理回路部10内部の必要な信号を取り込む。
また、測定器60の外部トリガー出力とプリンタコントローラ80の論理回路部10のトリガー入力が外部ケーブル34で接続されている。これにより、測定器60は、論理回路部10のマルチプレクサ11を経由して制御ソフトウェア部40に割り込むことができる。
このように、外部の機器の異常時のログ情報を記録することができ、異常時の測定器60の波形と制御ソフトウェア部40の処理フローとを照合させることができる。
<第4の実施の形態>
第4の実施の形態は、論理回路部10のタイマー部やカウンタ部による割り込みがトリガーとなる場合である。
第4の実施の形態は、論理回路部10のタイマー部やカウンタ部による割り込みがトリガーとなる場合である。
図5は、第4の実施の形態に係る統合異常検知用データ取得装置の構成を表すブロック図であり、図2を簡略化したものである。
図5に示すように、統合異常検知用データ取得装置は、外部に接続されたプリンタ本体70から1ページの印刷毎に定期的に送出されるページ同期信号(PageSync)の立下りで制御ソフトウェア部40に割り込みを発生させることで各ページの印刷処理を制御する。但し、不定期にPageSync割り込みが発生しないという不具合が発生する場合の例である。
この場合、制御ソフトウェア部40から設定、起動、リセットができるタイマーレジスタ22を論理回路部10上に配置し、PageSyncよりも長めのタイマー値を設定、起動し、各ページの印刷終了時(PageSyncの立下り)の割り込み処理にてそのタイマーをリセット(再設定)する。
そして、図6に示すように、PageSyncの割り込みが4ページ目の印刷終了時71に抜けた場合、タイマーレジスタ22はリセットされず、そのままタイムアウトでキャリー信号が立つ。測定器60は、これをトリガーとして、PageSyncをはじめとする論理回路部10の内部の信号を採取する。これによって、PageSync割り込み抜けの原因を特定することが可能となる。
ここで、測定器60で測定する波形は、以下のようなものである。
例えば、PageSyncの終了割り込みが来ないという異常が発生した場合、不具合がどこにあるか切り分けるためにPageSyncと次のPageSyncの通常の間隔をカウントするように設定しているタイマーがキャリーオーバーになったときには、このタイマーのキャリーオーバー割り込み信号と、PageSyncと、PageSyncの立ち上がり(1ページの終了割り込み)とを測定する。これによって、論理回路部10の内部にPageSyncが本当に来てないのか、割り込みが発生したのにログ情報として記録されていないのかを切り分けることができる。
なお、図2の論理回路部10の内部構成には、マルチプレクサ11、コンパレータ12及び比較データレジスタ24は1組しか記載していないが、これらを複数組備えて、AND条件、OR条件が組み合わせられるように構成してもよい。
<第5の実施の形態>
第5の実施の形態は、ハードウェアとソフトウェアに共通な時間軸を持つことにより、ソフトウェアのログへの時刻の記録と、ハードウェア測定波形での時刻の観測が可能となる。
第5の実施の形態は、ハードウェアとソフトウェアに共通な時間軸を持つことにより、ソフトウェアのログへの時刻の記録と、ハードウェア測定波形での時刻の観測が可能となる。
図7は、第5の実施の形態に係る統合異常検知用データ取得装置の構成を表すブロック図である。同図に示すように、統合異常検知用データ取得装置は、プリンタコントローラ80内に設置され、論理回路部10と、制御ソフトウェア部40と、を備えている。
論理回路部10は、外部のオシロスコープ等の測定器60と接続され、マルチプレクサ11と、各種レジスタを含むレジスタ群20と、シリアライザ36と、外部のプリンタ本体70と接続された印刷制御部13とを備えている。
制御ソフトウェア部40は、バスブリッジ41と汎用バス42とを介して論理回路部10と接続されている。
このように構成された統合異常検知用データ取得装置では、論理回路部10が、内部信号31をマルチプレクサ11に入力し、測定すべき内部の信号線を制御ソフトウェア部40にのり選択されたセレクトレジスタ23によって指定して外部に出力し、測定器60のプローブに接続される。
通常、制御ソフトウェア部40は、ハードウェアにアクセスしたり、事象が変化した場合(例えば、1ページの印刷終了割り込み信号)にハードウェアのレジスタの情報や制御ソフトウェア部40の変数等をログ情報として記録する。このとき、ハードウェアレジスタの情報には、ハードウェアクロック・レジスタ27の値も記録される。
ハードウェアクロック・レジスタ27は、論理回路部10が動作する基準クロックの数(カウンタの値)を保持するものであり、50MHzのクロックであれば20nsごとにインクリメントされる。ハードウェアクロック・マスクレジスタ28は、ハードウェアクロック・レジスタ27の読み出し値をマスクするためのものであり、例えば、最下位ビットbit8をマスクすると、20ns×256=5120nsごとにbit8がインクリメントされるようになる。これは、ハードウェアとソフトウェアの処理速度が異なっており、ログ情報と測定波形の値の最下位ビットが数ビット一致しないので、必要に応じたビットをマスクすることで下位ビットを丸め込み、ログ情報として記録される値と測定器に表示される値を極力近づけるか、または一致させることができる。
ハードウェアクロック・レジスタ27の出力は、カウンタのバス幅分のビット幅があるが、シリアライザ36を設置することによりシリアライズすることができる。この結果、論理回路部10からの出力ピン数を減らすことが可能となる。このシリアライザ36も論理回路で設計されており、シリアライズしないでパラレルのまま出力することもでき、ハードウェアリソースの余裕度によって自由に選択することができる。
また、トリガレジスタ29は、制御ソフトウェア部40から測定すべきタイミングの時に書き込むことによってトリガー信号を発生させるものであり、処理の状況に応じてアクセスする。
このような構成において、ある事象で何らかのトリガー条件で観測信号波形を採取したとき、測定器60上にハードウェアクロックの値がパラレルデータまたはシリアルデータで現れる。また、制御ソフトウエア部40のログ情報にもハードウェアクロックの値が常に記録されるため、測定器60の波形と制御ソフトウェア部40の処理フローとを照合させることができる。
図8は、本実施の形態の概念図である。同図に示すように、同じ波形の測定データA73と測定データB74が、ハードウェアクロック値72が記録されているため、測定データA73がログ情報A75に対応し、測定データB74がログ情報B76に対応するようにリンクをとることができる。
<第6の実施の形態>
第6以降の実施の形態は、ソフトウェアからハードウェアへのアクセス(レジスタ書き込み)の一種として、制御ソフトウェア部から測定器へ直接トリガーを掛けられるようにすることで、測定器の測定データと制御ソフトウェア部のログ情報とのリンクを可能とするものである。また、制御ソフトウェア部の持つ情報やソフトウェアの処理結果を活用することで測定器のトリガー条件の幅が格段に広がる。
第6以降の実施の形態は、ソフトウェアからハードウェアへのアクセス(レジスタ書き込み)の一種として、制御ソフトウェア部から測定器へ直接トリガーを掛けられるようにすることで、測定器の測定データと制御ソフトウェア部のログ情報とのリンクを可能とするものである。また、制御ソフトウェア部の持つ情報やソフトウェアの処理結果を活用することで測定器のトリガー条件の幅が格段に広がる。
図9は、第6の実施の形態に係る統合異常検知用データ取得装置の構成を表すブロック図である。同図に示すように、統合異常検知用データ取得装置は、論理回路部10と、制御ソフトウェア部40と、を備えている。また、論理回路部10は、論理回路部10の出力信号を測定する外部の測定器60と接続されている。
論理回路部10は、制御ソフトウェア部40と制御情報やデータの交換を行って所定の処理を行う処理部15と、制御ソフトウェア部40からのアクセスにより外部に接続された測定器60にトリガーをかけるトリガー部14とを含んでいる。制御ソフトウェア部40は、論理回路部10を用いて所定の処理を行う。また、測定器60は、測定したデータを測定データ記録部65に格納する。
このように構成された統合異常検知用データ取得装置では、制御ソフトウェア部40が、論理回路部10の内部に設けられたトリガー部14に対してレジスタ書き込みを行うことで、外部の測定器60に対するトリガー信号を発生させる。
測定器60は、測定したい信号線(測定信号線)と共に、トリガー部14の出力に接続され、測定データ取得時には、トリガー部14によるトリガー信号をトリガー条件(必要に応じて他の信号線との組み合わせも可能)として、所望の信号線の波形を観測および採取する。
なお、本実施の形態では、図9に示す統合異常検知用データ取得装置において、制御ソフトウェア部40の内部にログ情報記憶部(図示省略)を保持する構成としてもよい。この場合には、制御ソフトウェア部40は、トリガー部14をアクセスした場合に、ログ情報記憶部にそのアクセスを示す情報を記録する。
<第7の実施の形態>
第7の実施の形態は、制御ソフトウェア部40で予めコーディングされた位置でトリガーを掛ける場合である。この場合、制御ソフトウェアの修正はない。
第7の実施の形態は、制御ソフトウェア部40で予めコーディングされた位置でトリガーを掛ける場合である。この場合、制御ソフトウェアの修正はない。
図9のように構成された本実施の形態に係る統合異常検知用データ取得装置は、制御ソフトウェア部40の作成時に、論理回路部10に関連するエラーが発生した場合(例えば、プリンタの制御信号であるライン同期信号(LineSync)の時間幅の異常検知時にエラー割り込みが発生)、トリガー部14をアクセスするように予めコーディングしておく。これにより、対象となるエラー発生時には、制御ソフトウェアを再コンパイルすることなく、測定器60を接続するだけで必要な信号波形を採取できる。
なお、このように予め定義されたエラーに伴うトリガーの場合、測定器60で採取されて測定データ記録部65に格納された測定データは、コードシーケンスから制御ソフトウェア部40のログ情報との対応付けが可能である。また、同じ条件でトリガー部14をアクセスする場所が複数存在する場合には、トリガーを掛けた場所を特定できるような情報を併せてログ情報に残しておく。
図10は、本実施の形態の概念図である。同図に示すように、トリガー信号69に対する波形が測定データとソフトウェアのログ上に記録されることにより、測定データ66がログ情報A67ではなく、ログ情報B68とリンクを取ることが可能となる。
<第8の実施の形態>
第8の実施の形態は、制御ソフトウェア部40の任意の位置でトリガーを掛ける場合である。この場合、制御ソフトウェアの修正を行う。
第8の実施の形態は、制御ソフトウェア部40の任意の位置でトリガーを掛ける場合である。この場合、制御ソフトウェアの修正を行う。
図9のように構成された統合異常検知用データ取得装置では、制御ソフトウェア部40の任意の位置(状態)でトリガーを掛けたい場合(例えば、処理部15内にあるステータス・レジスタが所定の値を示す場合)、その位置(またはその条件を満たす場合)にトリガー部14をアクセスするように制御ソフトウェアに追加のコーディングを行い、再コンパイルする。再コンパイル後、制御ソフトウェア部40を置き換えて測定器60を接続することで、測定器60は所望の位置で必要な信号波形を採取できる。この場合も、必要に応じて、アクセス情報をログ情報としてログ情報記憶部50に記録しておく。これによって、測定データ記録部65に格納された測定データとログ情報記憶部50に記録されたログ情報との対応付けが可能となる。
図12は、制御ソフトウェア部40における処理概要を示すフローチャートであり、トリガー部14をアクセスするために制御ソフトウェアに追加コーディングする場合の例を示す。同図のフローチャートは、図3(A)の第2の実施の形態に係るフローチャートにステップ300からステップ320を加えたものであり、この部分が制御ソフトウェア部40に追加コーディングされる部分である。第2の実施の形態と同一のステップには同一の符号を付して詳細な説明を省略し、第2の実施の形態と異なる部分について説明する。
本実施の形態では、所定の処理であるステップ100からステップ120の処理A、処理B、処理Cを行う過程で、制御ソフトウェア部40の任意の位置(図12の例ではステップ100とステップ110の間)で、トリガーを掛ける。
具体的には、ステップ100に続くステップ300で、制御ソフトウェア部40が、トリガー条件が成立するか否かを判定し、成立する場合にはステップ310に進み、成立しない場合にはステップ110に進み通常の処理を行う。トリガー条件としては、例えば、処理部15のステータス・レジスタが所定の値を示すか否か、表面印刷から裏面印刷への変更時、印刷ページのサイズ変更時などが考えられる。
ステップ310では、制御ソフトウェア部40が論理回路部10のトリガー部14にアクセスする。これを受けてトリガー部14は測定器60にトリガー信号を出力し、測定器60では必要な信号波形が採取できる。また、ステップ320では、制御ソフトウェア部40が、トリガー部14にアクセスした場所を特定できる情報をログ情報としてログ情報記憶部50に記録する。
<第9の実施の形態>
第9の実施の形態は、制御ソフトウェア部40の持つ情報を基にして複雑なトリガーを掛ける場合である。
第9の実施の形態は、制御ソフトウェア部40の持つ情報を基にして複雑なトリガーを掛ける場合である。
図9の論理回路部10の内部信号線(図示省略)ではトリガー条件を生成できず、制御ソフトウェア部40の持つ情報を用いることでのみトリガー条件を作り出すことができるような場合がある。
例えば、論理回路部10の処理部15は、表面でも裏面でも同じ処理をして画像データを出力する。よって、表/裏を示す印刷面情報は論理回路部10へは通知されない。このため、プリンタで両面印刷する際の裏面印刷時に障害が発生するような場合、論理回路部10の信号線のみで測定器60のトリガー条件を発生することはできない。
一方、制御ソフトウェア部40は、プリンタを制御するための印刷面情報を持っているため、裏面印刷時にトリガー部14をアクセスして測定器60にトリガーを掛けるようにすることで、必要な信号波形を採取できる。
また、障害の発生条件が、裏面印刷時に用紙サイズがA4からA3に切り替わった場合といったように、トリガー条件が複雑化しても、簡単にトリガーを掛けることが可能である。
<第10の実施の形態>
第10の実施の形態は、制御ソフトウェア部40の処理結果を基にしてトリガーを掛ける場合である。
第10の実施の形態は、制御ソフトウェア部40の処理結果を基にしてトリガーを掛ける場合である。
ハードウェア上にトリガー条件の基となる信号は存在するが、ハードウェアでの処理ではトリガー条件を生成することは困難であり、ソフトウェア処理を加えることでトリガー条件を生成することが可能となる場合が存在する。
例えば、図13に示すプリンタに出力する例において、制御ソフトウェア部40と論理回路部10の通信処理部17とでプリンタ本体70の制御を行い、プリンタ本体70への画像出力を画像処理部16で行うシステム構成において、プリンタ本体70側で発生して通信処理部17を経由して伝えられたエラー情報をもとに画像処理部16の信号波形の採取を行うような場合である。
このような場合には、プリンタ本体70からのエラー情報自体は論理回路部10の通信処理部17に入力されるが、他の多くのコマンド・ステータスのビット列からエラー情報を示すステータスデータの信号波形を抜き出すことは困難である。通常は、通信処理部17でキャラクタ化された後、制御ソフトウェア部40でより上位のステータス情報に変換して、ようやくエラー情報と判定可能となる。そして、その時点でトリガー部14をアクセスするように制御ソフトウェア部40を修正する(予め、コーディングすることも可能)ことで、画像処理部16による必要な信号波形が採取可能となる。
<第11の実施の形態>
第11の実施の形態は、制御ソフトウェア部とその他のソフトウェアの処理と組み合わせでトリガーを掛ける場合である。
第11の実施の形態は、制御ソフトウェア部とその他のソフトウェアの処理と組み合わせでトリガーを掛ける場合である。
図11は、第11の実施の形態に係る統合異常検知用データ取得装置の構成を表すブロック図であり、図9に示す統合異常検知用データ取得装置の制御ソフトウェア部40の詳細な構成を示す。同図に示すように、統合異常検知用データ取得装置は、論理回路部10と、制御ソフトウェア部40と、を備えている。
制御ソフトウェア部40は、OS(オペレーション・システム)45等のプラットフォーム上で動作する場合には、論理回路部10を直接的に制御するドライバ・ソフトウェア44と、より上位の制御を行うアプリケーション・ソフトウェア43とに分けられる。
ドライバ・ソフトウェア44は、上位制御ソフトウェアであるアプリケーション・ソフトウェア43からも間接的にトリガー部14(図9参照)をアクセス可能な第1のAPI(Application Program Interface)47を有する。また、アプリケーション・ソフトウェア43は、OS45上で動作する他のソフトウェア48からも間接的にトリガー部14をアクセス可能なように第2のAPI46を有する。
制御ソフトウェア部以外のモジュール(他のソフトウェア)から測定器にトリガーを掛けて論理回路部などで信号波形を採取したい場合が存在する。
例えば、図11に示す統合異常検知用データ取得装置において、他のソフトウェア48がネットワークを経由して他ホストと多量のデータ交換を行っているときに、論理回路部10が影響を受けて障害が発生するような場合である。具体的には、ネットワークデバ イスと共用しているバス帯域制限や割り込み処理の頻発などである。
このような場合、間接的に論理回路部10のトリガー部14(図9参照)をアクセスできるような第1のAPI46を制御ソフトウェア部40のアプリケーション・ソフトウェア43上に予め設けておく。これにより、他のソフトウェア48が多量のデータ交換を行う際にその第1のAPI46をアクセスすることで、測定器60(図9参照)でバスなどの信号波形の採取が可能となる。
なお、本発明は、上述の実施の形態に限定されるものではなく、特許請求の範囲に記載された範囲内で設計上の変更をされたものにも適用可能である。
10 論理回路部
40 制御ソフトウェア部
50 ログ情報記憶部
60 測定器
70 プリンタ本体
40 制御ソフトウェア部
50 ログ情報記憶部
60 測定器
70 プリンタ本体
Claims (9)
- 論理回路部と、
前記論理回路部を用いて所定の処理を行う制御ソフトウェア部と、
ログ情報を記憶するログ情報記憶手段と、を備え、
前記論理回路部は、事象が発生した場合に内部の単数又は複数の任意の信号線から前記制御ソフトウェア部に割り込み信号を発信し、
前記制御ソフトウェア部は、前記割り込み信号を受信したことをログ情報として前記ログ情報記憶手段に記録する統合異常検知用データ取得装置。 - 前記論理回路部は、前記論理回路部の出力信号を測定する外部の測定器と接続され、前記割り込み信号が発信された場合に、測定開始を指示するトリガー信号を前記測定器に供給する請求項1記載の統合異常検知用データ取得装置。
- 前記論理回路部は、前記信号線に変化が生じた場合に前記制御ソフトウェア部に前記割り込み信号を発信する請求項1又は請求項2記載の統合異常検知用データ取得装置。
- 前記測定器は、外部の機器と接続され、前記機器の出力信号を取り込んだ場合に、割り込みを指示するトリガー信号を前記論理回路部に供給し、
前記機器は、事象が発生した場合に事象の発生を知らせる出力信号を前記測定器に供給し、
前記論理回路部は、前記測定器と接続され、前記測定器に接続された前記機器に事象が発生した場合に、前記制御ソフトウェア部に割り込み信号を発信し、
前記制御ソフトウェア部は、前記割り込み信号を受信したことをログ情報として前記ログ情報記憶手段に記録する請求項2又は請求項3記載の統合異常検知用データ取得装置。 - 前記論理回路部は、前記機器と接続され、前記機器から所定の同期信号が入力されるとリセットした後所定時間まで計時するタイマーを備え、該タイマーが前記所定時間を計時した場合に割り込み信号を発信する請求項4記載の統合異常検知用データ取得装置。
- 所定のクロック数毎にカウントするカウンタを有する論理回路部と、
前記論理回路部を用いて所定の処理を行う制御ソフトウェア部と、
ログ情報を記憶するログ情報記憶手段と、を備え、
前記制御ソフトウェア部は、前記カウンタから出力されるカウント値をログ情報として前記ログ情報記憶手段に記録する統合異常検知用データ取得装置。 - 所定の処理を行う制御ソフトウェア部と、
前記制御ソフトウェア部と制御情報及びデータの交換を行って所定の処理を行う処理部と、前記論理回路部の出力信号を測定する外部の測定器と接続され、前記制御ソフトウェア部からのアクセスがあった場合に前記測定器に測定開始を指示する信号を供給するトリガー部とを含む論理回路部と、を備え、
前記制御ソフトウェア部は、エラーが発生した場合に前記トリガー部にアクセスする統合異常検知用データ取得装置。 - ログ情報を記憶するログ情報記憶手段を、更に備え、
前記ソフトウェア部は、前記トリガー部をアクセスした場合に該アクセスを示す情報をログ情報として前記ログ情報記憶手段に記録する請求項7記載の統合異常検知用データ取得装置。 - 前記制御ソフトウェア部は、他の制御ソフトウェア部のデータ処理により前記論理回路部にエラーが発生した場合に、前記他の制御ソフトウェア部から前記トリガー部にアクセス可能にするインタフェース部を有する請求項7又は請求項8記載の統合異常検知用データ取得装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008073528A JP2009230350A (ja) | 2008-03-21 | 2008-03-21 | 統合異常検知用データ取得装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008073528A JP2009230350A (ja) | 2008-03-21 | 2008-03-21 | 統合異常検知用データ取得装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2009230350A true JP2009230350A (ja) | 2009-10-08 |
Family
ID=41245682
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2008073528A Pending JP2009230350A (ja) | 2008-03-21 | 2008-03-21 | 統合異常検知用データ取得装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2009230350A (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2018201172A (ja) * | 2017-05-29 | 2018-12-20 | 京セラ株式会社 | 電子機器及びその制御方法 |
CN111324527A (zh) * | 2019-12-09 | 2020-06-23 | 许华敏 | 一种通过数据采集方式测试中断程序的装置及方法 |
-
2008
- 2008-03-21 JP JP2008073528A patent/JP2009230350A/ja active Pending
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2018201172A (ja) * | 2017-05-29 | 2018-12-20 | 京セラ株式会社 | 電子機器及びその制御方法 |
CN111324527A (zh) * | 2019-12-09 | 2020-06-23 | 许华敏 | 一种通过数据采集方式测试中断程序的装置及方法 |
CN111324527B (zh) * | 2019-12-09 | 2023-08-11 | 武汉滨湖电子有限责任公司 | 一种通过数据采集方式测试中断程序的装置及方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7610526B2 (en) | On-chip circuitry for bus validation | |
US9952963B2 (en) | System on chip and corresponding monitoring method | |
US7873874B2 (en) | System and method for controlling synchronous functional microprocessor redundancy during test and analysis | |
US7673188B2 (en) | System and method for controlling synchronous functional microprocessor redundancy during test and method for determining results | |
JP2007122543A (ja) | 半導体集積回路装置、それのデバッグシステム及びデバッグ方法。 | |
KR100462177B1 (ko) | 주변 장치의 동작 상태를 실시간으로 백업할 수 있는엠베디드 컨트롤러 | |
CN104572385B (zh) | 存储器故障检测系统及方法 | |
JP5153774B2 (ja) | 試験装置、プログラム、および、記録媒体 | |
US9442815B2 (en) | Distributed on-chip debug triggering with allocated bus lines | |
CN112395122A (zh) | 闪存控制器及闪存控制器的方法 | |
CN111078492A (zh) | 一种SoC内部总线的状态监控系统及方法 | |
JP2005165653A (ja) | 情報処理装置の障害情報採取システム | |
JP2009230350A (ja) | 統合異常検知用データ取得装置 | |
US7617428B2 (en) | Circuits and associated methods for improved debug and test of an application integrated circuit | |
CN102262583A (zh) | 一种嵌入式系统的调试信息处理方法和系统 | |
US20160282408A1 (en) | Integrated Circuit Including a Programmable Logic Analyzer with Enhanced and Debugging Capabilities and a Method Therefor | |
CN113032177B (zh) | 一种软错误的监控方法和设备 | |
US11144687B1 (en) | Method and system providing visualization of sub-circuit iterations based on handshake signals | |
JP4795147B2 (ja) | 伝送装置 | |
US20240168861A1 (en) | Semiconductor chip, debug system, and synchronization method | |
JP2009069036A (ja) | プリント基板の不良解析システム | |
JP2009258857A (ja) | デバッグ装置及びデバッグ方法 | |
Jarus et al. | Software-based monitoring and analysis of a USB host controller subject to electrostatic discharge | |
JP3953467B2 (ja) | チップ中の欠陥を検出し報告するためのシステム | |
JP5066189B2 (ja) | 試験装置、試験方法、およびプログラム |