(57)【要約】【課題】記憶部からデータを読み出して転送先機器に転送するシステムにおいて、記憶部の記憶領域のうち所定の書込禁止領域へのデータの書き込みによる不具合の解析の効率を向上させる。【解決手段】外部制御部から転送指示に応じて、転送対象のデータを第１記憶部に書き込みかつ転送先機器のデータの処理速度に従って第１記憶部からデータを読み出して転送先機器に転送する転送部と、第１記憶部の記憶領域のうち所定の書込禁止領域に対するデータの書き込みを検知した場合、第１記憶部に対するデータの書き込みの異常を外部制御部に通知し、第１記憶部の記憶領域のうちデータを書き込んだ書込領域を特定可能とする第１情報を第１記憶部に書き込む制御部と、を備える。【選択図】図２
2015187833.tif 000002
【特許請求の範囲】
【請求項１】
外部制御部から転送指示に応じて、転送対象のデータを第１記憶部に書き込みかつ転送先機器のデータの処理速度に従って前記第１記憶部からデータを読み出して前記転送先機器に転送する転送部と、
前記第１記憶部の記憶領域のうち所定の書込禁止領域に対するデータの書き込みを検知
した場合、前記第１記憶部に対するデータの書き込みの異常を前記外部制御部に通知し、前記第１記憶部の記憶領域のうちデータを書き込んだ書込領域を特定可能とする第１情報を前記第１記憶部に書き込む制御部と、
を備えることを特徴とする情報処理装置。
【請求項２】
前記制御部は、前記第１記憶部に対するデータの書き込みに対応する前記転送指示を特定可能とする第２情報を前記第１記憶部に書き込むことを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記第１情報および前記第２情報を記憶する第２記憶部を備えることを特徴とする請求項２に記載の情報処理装置。
【請求項４】
前記第１情報には、前記第１記憶部にデータを書き込んだ前記転送部を特定可能とする情報が付加されていることを特徴とする請求項１〜３のいずれか一に記載の情報処理装置。
【請求項５】
前記転送部は、転送対象のデータの前記書込領域を特定可能とする第３情報を前記第１記憶部に書き込み、前記第３情報にアクセスして前記第１記憶部からデータを読み出し、
前記第１情報には、前記第１記憶部の記憶領域のうち前記第３情報が書き込まれた領域を特定可能とする情報と、前記第３情報にアクセスした時間を特定可能とする情報とが付加されていることを特徴とする請求項１〜４のいずれか一に記載の情報処理装置。
【請求項６】
前記制御部は、前記書込禁止領域に対するデータの書き込みを検知した場合、前記第１記憶部から読み出したデータの転送を禁止することを特徴とする請求項１〜５のいずれか一に記載の情報処理装置。
【請求項７】
前記外部制御部からのアクセス情報を記憶する前記第１記憶部のアドレス範囲を指定する保存範囲指定部を有するアクセス監視部をさらに備えることを特徴とする請求項１に記載の情報処理装置。
【請求項８】
前記アクセス監視部は、所定の制御信号に基づいて指定したアドレスの範囲内または範囲外を選択することを特徴とする請求項７に記載の情報処理装置。
【請求項９】
前記アクセス監視部は、前記転送部を起動させるレジスタだけを取得する起動情報取得部を有することを特徴とする請求項７に記載の情報処理装置。
【請求項１０】
前記起動情報取得部は、所定の制御信号に基づいて指定した前記転送部の起動レジスタを取得することを特徴とする請求項９に記載の情報処理装置。
【請求項１１】
前記アクセス監視部は、アドレスの範囲外を選択し場合、当該アドレスの範囲外の起動レジスタを取得することを特徴とする請求項８に記載の情報処理装置。
【請求項１２】
外部制御部から転送指示に応じて、転送対象のデータを第１記憶部に書き込みかつ転送先機器のデータの処理速度に従って前記第１記憶部からデータを読み出して前記転送先機器に転送し、
前記第１記憶部の記憶領域のうち所定の書込禁止領域に対するデータの書き込みを検知した場合、前記第１記憶部に対するデータの書き込みの異常を前記外部制御部に通知し、前記第１記憶部の記憶領域のうちデータを書き込んだ書込領域を特定可能とする第１情報を前記第１記憶部に書き込む、
ことを含む情報処理方法。
【請求項１３】
コンピュータを、
外部制御部から転送指示に応じて、転送対象のデータを第１記憶部に書き込みかつ転送先機器のデータの処理速度に従って前記第１記憶部からデータを読み出して前記転送先機器に転送する転送部と、
前記第１記憶部の記憶領域のうち所定の書込禁止領域に対するデータの書き込みを検知した場合、前記第１記憶部に対するデータの書き込みの異常を前記外部制御部に通知し、
前記第１記憶部の記憶領域のうちデータを書き込んだ書込領域を特定可能とする第１情報を前記第１記憶部に書き込む制御部と、
を実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、情報処理方法およびプログラムに関する。
【背景技術】
【０００２】
電子写真方式の画像形成装置のシステム構成には、ＲＡＭ（Random  Access  Memory）といったメモリや、演算処理を行うＣＰＵ（Central  Processing  Unit）といった半導体集積回路が含まれる。そして、ＲＡＭ等のメモリには、ＣＰＵ等の半導体集積回路を制御するためのシステムプログラム、転送対象のデータ（例えば、印刷対象の画像データや原稿をスキャンして得られた画像データなど）が書き込まれる。
【０００３】
システムプログラムと転送対象のデータとを同一のメモリに記憶させる場合、転送対象のデータをメモリに書き込むことが行われる。このような場合に、メモリにおいてシステムプログラムが記憶された領域に誤って転送対象のデータの書き込みを行ってしまい画像形成装置のシステムがフリーズすることがある。また、メモリにおいて他のデータが記憶された領域に転送対象のデータの書き込みを行ってしまい、メモリに記憶されたデータが異常なデータとなったりすることがある。そこで、メモリにおける所定の書込禁止領域への転送対象のデータの書き込みを禁止する技術が開示されている。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
このように、メモリにおける所定の書込禁止領域への転送対象のデータの書き込みを禁止している。この技術においては、所定の書込禁止領域のスタートアドレスとエンドアドレスとを予め設定し、所定の書込禁止領域への転送対象のデータの書き込みが発生した場合に、ＣＰＵ等の半導体集積回路に対して割込通知を行うことに留まっている。メモリに対する転送対象のデータの書き込みがＣＰＵ等の半導体集積回路により行われる。このような場合には、半導体集積回路内部で、当該半導体集積回路が最後にデータの書き込みを行ったメモリ内の領域のアドレス（以下、最終アクセスアドレスと言う）を検知することが可能である。
【０００５】
しかしながら、ＤＭＡ（Direct  Memory  Access）コントローラにより所定の書込禁止領域に対する転送対象のデータの書き込みが行われた場合、ＣＰＵが最終アクセスアドレスを検知することは困難である。このため、所定の書込禁止領域へのデータの書き込みによる不具合を解析する上で情報が不十分である。特に、製品開発段階において、不完全なシステムプログラムに従って画像形成装置を動作させている場合、下記問題があった。すなわち、システムプログラムの破壊、画像データまたはＤＭＡ転送情報（メモリにおいて転送対象のデータが書き込まれた領域を特定可能とする情報）の破壊といった不具合を発生することがあり、その不具合の解析に時間がかかっている。
【０００６】
例えば、メモリにおいてＤＭＡ転送情報および画像データはそれぞれ別々のアドレスの領域に書き込まれている。製品開発段階においては、メモリの管理が不完全であるが故に、転送対象のデータが、他の転送対象のデータまたは当該データのＤＭＡ転送情報の一部に上書きされてしまい、転送対象のデータやＤＭＡ転送情報が破壊されてしまうケースがある。また、メモリにおいて転送対象のデータを書き込む領域の管理が不完全であることにより、システムプログラムが記憶された領域などの所定の書込禁止領域に転送対象のデータが書き込まれてしまい、システムプログラムが破損するケースが発生することもある。
【０００７】
本発明は、上記に鑑みてなされたものであって、記憶部の記憶領域のうち所定の書込禁止領域へのデータの書き込みによる不具合の解析の効率を向上させることを目的とする。
【課題を解決するための手段】
【０００８】
上述した課題を解決し、目的を達成するために、本発明は、外部制御部から転送指示に応じて、転送対象のデータを第１記憶部に書き込みかつ転送先機器のデータの処理速度に従って前記第１記憶部からデータを読み出して前記転送先機器に転送する転送部と、前記第１記憶部の記憶領域のうち所定の書込禁止領域に対するデータの書き込みを検知した場合、前記第１記憶部に対するデータの書き込みの異常を前記外部制御部に通知し、前記第１記憶部の記憶領域のうちデータを書き込んだ書込領域を特定可能とする第１情報を前記第１記憶部に書き込む制御部と、を備えることを特徴とする。
【発明の効果】
【０００９】
本発明は、記憶部の記憶領域のうち所定の書込禁止領域へのデータの書き込みによる不具合の解析の効率を向上させることができる、という効果を奏する。
【図面の簡単な説明】
【００１０】
【図１】図１は、本実施の形態にかかる情報処理装置の一例である画像形成装置のハードウェア構成を示すブロック図である。
【図２】図２は、本実施の形態にかかる画像形成装置が有するＡＳＩＣの機能構成を示すブロック図である。
【図３】図３は、レジスタアクセス監視部の構成例を示すブロック図である。
【図４】図４は、本実施の形態にかかる画像形成装置が有するＲＡＭに書き込まれるＤＭＡ転送情報のデータ構成の一例を示す図である。
【図５】図５は、本実施の形態にかかる画像形成装置のアクセス履歴記憶制御部に送信するレジスタアクセス情報のデータ構成の一例を示す図である。
【図６】図６は、本実施の形態にかかる画像形成装置のアクセス履歴記憶制御部に送信するＤＭＡ転送情報のデータ構成の一例を示す図である。
【図７】図７は、本実施の形態にかかる画像形成装置が有するＡＳＩＣによるトレースデータの書込処理の流れを示すフローチャートである。
【図８】図８は、本実施の形態にかかるシステムの発生不具合を解析するフローチャートである。
【発明を実施するための形態】
【００１１】
以下に添付図面を参照して、この発明にかかる情報処理装置、情報処理方法およびプログラムの一実施の形態を詳細に説明する。
【００１２】
（実施の形態）
図１は、本実施の形態にかかる情報処理装置の一例である画像形成装置のハードウェア構成を示すブロック図である。本実施の形態にかかる画像形成装置は、ＡＳＩＣ（Application  Specific  Integrated  Circuit）１０１と、ＣＰＵ（Central  Processing  Unit）１０２と、ＲＡＭ（Random  Access  Memory）１０３と、スキャナ１０４と、プリンタ１０５と、を備えている。
【００１３】
ＡＳＩＣ１０１は、スキャナ１０４やプリンタ１０５等の周辺機器とＲＡＭ１０３との間における、各種データの入出力を制御する。この各種データは、例えば、スキャナ１０４から入力された画像データである読込データ、プリンタ１０５に出力する画像データである書込データなどである。また、ＡＳＩＣ１０１は、読込データや書込データ等の画像データに対して、ハードウェアにより画像処理を行う機能も有している。
【００１４】
本実施の形態では、ＡＳＩＣ１０１は、ＣＰＵ１０２からの転送開始指示（転送指示の一例）に応じて、転送対象のデータ（例えば、読込データや書込データなど）をＲＡＭ１０３に書き込む。また、ＡＳＩＣ１０１は、転送先機器（例えば、プリンタ１０５等の周辺機器、外部記憶装置など）のデータ処理速度に従ってＲＡＭ１０３からデータを読み出して当該転送先機器に転送するＤＭＡ（Direct  Memory  Access）転送機能を有する。さらに、ＡＳＩＣ１０１は、ＲＡＭ１０３の記憶領域のうちデータの書き込みを禁止する所定の書込禁止領域を設定する。そして、ＡＳＩＣ１０１は、書込禁止領域へのデータの書き込みを監視（検知）した場合、ＲＡＭ１０３に対するデータの書き込みの異常をＣＰＵ１０２に通知する。
【００１５】
ＣＰＵ１０２は、ＲＡＭ１０３に記憶されたシステムプログラム等の各種プログラムを実行することにより画像形成装置全体の動作を制御する。本実施の形態では、ＣＰＵ１０２は、ＡＳＩＣ１０１が有するレジスタへの各種情報の書き込みやソフトウェアにより画像処理を行う機能を有している。
【００１６】
ＲＡＭ１０３（第１記憶部の一例）は、転送対象のデータを記憶可能な記憶部である。本実施の形態では、ＲＡＭ１０３は、転送対象のデータ、ＲＡＭ１０３の記憶領域のうち当該転送対象のデータが書き込まれた領域（以下、書込領域と言う）を特定可能とする情報を含むＤＭＡ転送情報、各種プログラム等を記憶する。スキャナ１０４は、原稿を読み取り、当該原稿の読み取りにより得られた画像データ（読込データ）をＡＳＩＣ１０１に出力する読取部である。プリンタ１０５は、ＡＳＩＣ１０１から入力された画像データ（書込データ）に基づく画像を記録媒体に印刷する印刷部である。
【００１７】
図２は、本実施の形態にかかる画像形成装置が有するＡＳＩＣの機能構成を示すブロック図である。ＡＳＩＣ１０１は、第１インタフェース制御部２０１、第２インタフェース制御部２０２、アービタ２０３、画像処理部２０４〜２０６、レジスタ制御部２０７、レジスタアクセス監視部２０８、ＤＭＡ転送情報監視部２０９、アクセス履歴記憶制御部２１０、割込制御部２１１を有する。なお、上述のＡＳＩＣの機能の全部または一部をハードウェアで構成してもよい。
【００１８】
第１インタフェース制御部２０１は、例えばＣＰＵバスやＰＣＩ  Ｅｘｐｒｅｓｓなどの汎用インタフェースにより構成され、ＣＰＵ１０２からの各種指示（例えば、ＣＰＵ１０２からの転送開始指示など）を受け取る。
【００１９】
第２インタフェース制御部２０２は、例えばＤＤＲ（Double  Data  Rate）−ＳＤＲＡＭ（Synchronous  Dynamic  Random  Access  Memory）等の汎用インタフェースにより構成され、ＲＡＭ１０３との間で各種情報を送受信する。
【００２０】
アービタ２０３は、ＡＳＩＣ１０１の内部バスで接続された各部（デバイス）間での通信を制御する。
【００２１】
画像処理部２０４〜２０６は、ＲＡＭ１０３に書き込む転送対象のデータに対して画像処理を行う。本実施の形態では、画像処理部２０４〜２０６（転送部の一例）は、ＡＳＩＣ１０１におけるＤＭＡ転送機能を実現する。以下の説明では、画像処理部２０４により実現されるＤＭＡ転送機能について説明するが、他の画像処理部２０５，２０６においても同様にＤＭＡ転送機能が実現される。
【００２２】
画像処理部２０４は、第１インタフェース制御部２０１を介してＣＰＵ１０２（外部制御部の一例）によって後述するレジスタ制御部２０７が有するレジスタに転送開始指示が書き込まれると、次の送信を行う。すなわち、アービタ２０３に対してＤＭＡ転送情報の読み込みを指示するＤＭＡ転送情報読込指示（ディスクリプタリードフラグ）を送信する。次いで、画像処理部２０４は、アービタ２０３を介して後述するアクセス履歴記憶制御部２１０から、ＤＭＡ転送情報を取得する。そして、画像処理部２０４は、取得したＤＭＡ転送情報に基づいて、ＲＡＭ１０３に対する転送対象のデータを書き込む。その際、画像処理部２０４は、転送対象のデータとともに、当該転送対象のデータの書込領域を特定可能とするＤＭＡ転送情報（第３情報の一例）をＲＡＭ１０３に書き込む。
【００２３】
さらに、画像処理部２０４は、転送対象のデータの転送先である転送先機器におけるデータの処理速度に従ってＲＡＭ１０３から転送対象のデータを読み出して当該転送先機器に転送する。その際、画像処理部２０４は、ＲＡＭ１０３に記憶されたＤＭＡ転送情報にアクセスして、転送対象のデータの書込領域を特定し、特定した書込領域からデータを読み出して転送先機器へ転送する。
【００２４】
レジスタ制御部２０７は、ＣＰＵ１０２からのレジスタアクセス要求が発行されると各モジュールに対してレジスタアクセスを行う。
【００２５】
レジスタアクセス監視部２０８は、ＣＰＵ１０２からの各レジスタへのライトアクセスだけを抽出し、アクセス履歴記憶制御部２１０に情報を転送する。また、レジスタアクセス監視部２０８は、レジスタアクセス内容をモニタリングし、指定範囲内のレジスタアクセスの場合、アクセス履歴記憶制御部２１０に情報を転送する。
【００２６】
ＤＭＡ転送情報監視部２０９は、各ＤＭＡ機能を有した画像処理部２０４〜２０６よりディスクリプタリードフラグを受信すると、各画像処理部２０４〜２０６に付けられているＩＤ情報をもとにディスクリプタリード要求情報を抽出する。抽出されたデータは、時間情報、ＩＤ情報、ディスクリプタアドレス情報を付加させ、アクセス履歴記憶制御部２１０に転送される。
【００２７】
また、ＤＭＡ転送情報監視部２０９は、書き込み禁止領域へのライトアクセス要求を検知すると、ライトアドレスエラー通知を転送中の画像処理部に対し発行する。エラー通知を受けた画像処理部は、内部のＤＭＡ転送部のＤＭＡ転送の強制停止を行い、転送を停止する。さらに画像処理部は割込制御部２１１への割り込み通知を行う。
【００２８】
アクセス履歴記憶制御部２１０は、ＤＭＡ転送情報監視部２０９から送られてくる情報を時系列に並べ、内部バッファに保存していく。アクセス履歴記憶制御部２１０は、ＤＭＡ転送情報監視部２０９よりライトアドレスエラー通知を受けた場合、つぎの動作を実行する。アクセス履歴記憶制御部２１０は、アービタ２０３に対して第２インタフェース制御部２０２に接続されている記憶部（例えばＲＡＭ１０３）に対して、ＤＭＡ転送要求を発行し、レジスタアクセス履歴データ、ディスクリプタ履歴データを記憶部に転送する。
【００２９】
割込制御部２１１は、ＡＳＩＣ内部の割り込み制御を行う、例えばＣＰＵ１０２に割り込み通知を行い、異常であることを通知する。
【００３０】
図３は、レジスタアクセス監視部２０８の構成例を示すブロック図である。アクセス監視部としてのレジスタアクセス監視部２０８は、レジスタ情報入力部２２０、保存範囲指定部２２１、起動情報取得部２２２、出力部２２３を有する。なお、上述の機能の全部または一部をハードウェアで構成してもよい。
【００３１】
レジスタ情報入力部２２０は、レジスタ制御部２０７からレジスタライトアクセスを検知すると保存範囲指定部２２１、起動情報取得部２２２にレジスタアクセスデータを転送する。保存範囲指定部２２１は、指定されたアドレス範囲にフィルタをかける。起動情報取得部２２２は、ＤＭＡ起動レジスタ以外にフィルタをかける。出力部２２３は、保存範囲指定部２２１、起動情報取得部２２２のフィルタを通過したレジスタアクセスデータをアクセス履歴記憶制御部２１０に伝える。
【００３２】
制御信号２２５は、レジスタ制御部２０７から送られてくるアドレス範囲指定信号とその範囲の内外どちらを選択するかを制御する制御信号である。例えば、制御信号がＨｉｇｈのとき、指定されたアドレス範囲の外にフィルタをかけ、Ｌｏｗのとき、指定されたアドレス範囲内にフィルタをかけるといったものである。論理の設定はどちらでもよい。制御信号２２５は、レジスタ制御部２０７でアドレス範囲を指定するレジスタがあり、そこで指定されたアドレスを伝送する信号でも、保存範囲指定部２２１にレジスタを持っていてそのレジスタを制御するレジスタ制御信号でも、どちらでもよい。保存指定されたアドレスの場合、出力部２２３に伝送され、それ以外の場合は、起動情報取得部２２２に伝送する。
【００３３】
制御信号２２５は、レジスタ制御部２０７から送られてくる各画像処理部２０４〜２０６の起動レジスタのアドレスを保存するかどうかを制御する制御信号である。制御信号２２５は、レジスタ制御部２０７で画像処理部２０４〜２０６のどの起動レジスタのアドレスを保存するか指定するレジスタがあり、そこで指定されたアドレスを伝送する信号でもよい。また、保存範囲指定部２２１にレジスタを持っていてそのレジスタを制御するレジスタ制御信号でも、どちらでもよい。保存範囲指定部２２１から伝送されたレジスタアクセスデータは起動情報取得部２２２で再度フィルタリングされ、起動レジスタのアドレスだった場合、出力部２２３に伝送され、それ以外だった場合、データは破棄される。
【００３４】
レジスタアクセス監視部２０８は、外部制御部（ＣＰＵ１０２）からのアクセス情報を記憶する第１記憶部（ＲＡＭ１０３）のアドレス範囲を指定する保存範囲指定部２２１を有する。これにより、不具合解析時に不必要なレジスタライトアクセス情報を保存しないことで、本当に必要な情報だけを抽出することが可能となる。
【００３５】
レジスタアクセス監視部２０８は、制御信号２２５に基づいて指定したアドレスの範囲内または範囲外を選択する。これにより、不具合解析時に集中的に取得し、不必要な情報は削除したい、というケースにおいて柔軟に対応することが可能となる。
【００３６】
レジスタアクセス監視部２０８は、画像処理部２０４〜２０６を起動させるレジスタだけを取得する起動情報取得部２２２を有する。これにより、画像処理部２０４〜２０６の起動タイミングだけを解析するときに有効となり、解析をより効率的に行うことが可能となる。
【００３７】
上記起動情報取得部は、制御信号２２５に基づいて指定した画像処理部２０４〜２０６の起動レジスタを取得する。これにより、指定した画像処理部だけを集中的に解析したいときに有効なり、解析をより効率的に行うことが可能となる。
【００３８】
レジスタアクセス監視部２０８は、アドレスの範囲外を選択し場合、当該アドレスの範囲外の起動レジスタを取得する。これにより、取得したいアドレス範囲外に配置された起動レジスタも取得したい場合に有効となり、解析をより効率的に行うことが可能となる。
【００３９】
図４は、本実施の形態にかかる画像形成装置が有するＲＡＭに書き込まれるＤＭＡ転送情報のデータ構成の一例を示す図である。ＤＭＡ転送情報は、ＲＡＭ１０３の記憶領域のうち次のＤＭＡ転送情報が書き込まれた領域を特定可能とする情報であるアドレス情報３０１、転送対象のデータの書込領域の先頭のアドレス（先頭アドレス）情報３０２、転送対象のデータの書込領域のライン数を示すライン数情報３０３、転送対象のデータに関するその他の情報３０４と、を含む。本実施の形態では、ＤＭＡ転送情報に含まれる各情報３０１〜３０４は、３２ｂｉｔ幅のデータである。よって、ＤＭＡ転送情報は、１２８ｂｉｔのデータである。
【００４０】
図２に戻り、画像処理部２０４は、後述するＤＭＡ転送情報監視部２０９により書禁止領域へのデータの書き込みが検知されてライトアドレスエラー通知を受信する。すると、ＲＡＭ１０３へのデータの書き込みおよびＲＡＭ１０３からのデータの読み出しを停止する（言い換えると、データの転送を停止する）。さらに、画像処理部２０４は、後述する割込制御部２１１に対して、ＣＰＵ１０２に対する割込通知（ＲＡＭ１０３に対するデータの書き込みの異常の通知）の送信を指示する。
【００４１】
レジスタ制御部２０７は、第１インタフェース制御部２０１を介してＣＰＵ１０２によって各種指示が書き込まれるレジスタを有する。レジスタアクセス監視部２０８は、レジスタ制御部２０７が有するレジスタに対する各種指示の書き込みを検知する。そして、当該レジスタに対する各種指示（例えば、ＲＡＭ１０３に対するデータの書き込みに対応する転送開始指示など）を特定可能とする情報であるレジスタアクセス情報（第２情報の一例）をアクセス履歴記憶制御部２１０に送信する。
【００４２】
図５は、本実施の形態にかかる画像形成装置のアクセス履歴記憶制御部に送信するレジスタアクセス情報のデータ構成の一例を示す図である。本実施の形態では、レジスタアクセス情報には、図５に示すようにアドレス情報４０１，指示情報４０２が含まれる。アドレス情報４０１は、レジスタ制御部２０７が有するレジスタにおいてＣＰＵ１０２からの各種指示が書き込まれた記憶領域を特定可能とする情報である。また、指示情報４０２は、レジスタ制御部２０７が有するレジスタに書き込まれた各種指示を示す情報である。本実施の形態では、レジスタアクセス情報に含まれるアドレス情報４０１，指示情報４０２は、３２ｂｉｔ幅のデータである。よって、レジスタアクセス情報は、６４ｂｉｔのデータである。
【００４３】
図２に戻り、ＤＭＡ転送情報監視部２０９は、画像処理部２０４からアービタ２０３に対してディスクリプタリードフラグが送信されると、ＲＡＭ１０３からＤＭＡ転送情報を読み出す。そして、ＤＭＡ転送情報監視部２０９は、読み出したＤＭＡ転送情報を、アクセス履歴記憶制御部２１０に送信する。
【００４４】
図６は、本実施の形態にかかる画像形成装置のアクセス履歴記憶制御部に送信するＤＭＡ転送情報のデータ構成の一例を示す図である。本実施の形態では、ＤＭＡ転送情報監視部２０９は、図６に示すように、ＲＡＭ１０３から読み出した図４に示すＤＭＡ転送情報に、ＩＤ情報５０１とアドレス情報５０２と時間情報５０３とを付加して、アクセス履歴記憶制御部２１０に送信する。
【００４５】
ここで、ＩＤ情報５０１は、読み出したＤＭＡ転送情報により特定されるデータを書き込んだ画像処理部（画像処理部２０４〜２０６のいずれか）を特定可能とする情報の一例である。アドレス情報５０２は、ＲＡＭ１０３における当該ＤＭＡ転送情報の記憶領域を特定可能とする情報である。時間情報５０３は、当該ＤＭＡ転送情報にアクセスした時間を特定可能とする情報である。すなわち、時間情報５０３は、例えばＤＭＡ転送情報監視部２０９に入力される１／２５６分周のクロックを用いてカウントされる時間である。本実施の形態では、アクセス履歴記憶制御部２１０に送信するＤＭＡ転送情報に含まれる各情報５０１〜５０３，３０１〜３０４は、３２ｂｉｔ幅のデータである。よって、アクセス履歴記憶制御部２１０に送信するＤＭＡ転送情報は、２５６ｂｉｔのデータである。
【００４６】
図２に戻り、ＤＭＡ転送情報監視部２０９は、画像処理部２０４〜２０６による書込禁止領域へのデータの書き込みを検知する。ここで、書込禁止領域は、上述したように、ＲＡＭ１０３の記憶領域のうちデータの書き込みを禁止する領域である。本実施の形態では、書込禁止領域は、ＲＡＭ１０３の記憶領域のうち、システムプログラムが記憶された領域、ＤＭＡ転送情報が記憶された領域などである。ＤＭＡ転送情報監視部２０９は、書込禁止領域へのデータの書き込みを検知した場合、当該データの書き込みを行っている画像処理部２０４に対してエラー通知（以下、ライトアドレスエラー通知と言う）を送信する。
【００４７】
アクセス履歴記憶制御部２１０は、レジスタアクセス監視部２０８およびＤＭＡ転送情報監視部２０９から入力されるレジスタアクセス情報およびＤＭＡ転送情報を、入力される順に並べて内部バッファ（第２記憶部の一例）に書き込む。これにより、上述した画像処理部２０４は、アービタ２０３を介して、ＤＭＡ転送情報を取得可能となる。また、書込禁止領域へのデータの書き込みが検知された場合に、内部バッファに記憶されたＤＭＡ転送情報およびレジスタアクセス情報を利用して、不具合の解析を行うことができる。これにより、誤った転送開始指示が行われたことおよび書込禁止領域へのデータの書き込みを容易に検出することができる。
【００４８】
また、アクセス履歴記憶制御部２１０（制御部の一例）は、ＤＭＡ転送情報監視部２０９により書込禁止領域へのデータの書き込みが検知された場合、以下の動作を行う。すなわち、アクセス履歴記憶制御部２１０は、内部バッファに記憶されるレジスタアクセス情報およびＤＭＡ転送情報（第１情報の一例）を含むトレースデータを、ＲＡＭ１０３に書き込む。本実施の形態では、アクセス履歴記憶制御部２１０は、ＲＡＭ１０３の記憶領域のうち所定の記憶領域にトレースデータを書き込む。ここで、所定の記憶領域は、ＲＡＭ１０３の記憶領域のうち、転送対象のデータの書込領域、当該転送対象データのＤＭＡ転送情報が書き込まれた領域および書込禁止領域以外の記憶領域である。また、本実施の形態では、アクセス履歴記憶制御部２１０は、ＤＭＡ転送情報およびレジスタアクセス情報の両方をＲＡＭ１０３に書き込んでいるが、少なくともＤＭＡ転送情報をＲＡＭ１０３に書き込めば良い。
【００４９】
ＤＭＡ転送情報監視部２０９により書込禁止領域へのデータの書き込みが検知された場合に以下の動作を行う。すなわち、割込制御部２１１（制御部の一例）は、画像処理部２０４〜２０６から割込通知の送信が指示されると、第１インタフェース制御部２０１を介して、ＣＰＵ１０２に対して割込通知を送信する。
【００５０】
次に、図７を用いて、本実施の形態にかかる画像形成装置が有するＡＳＩＣによるトレースデータの書込処理について説明する。図７は、本実施の形態にかかる画像形成装置が有するＡＳＩＣによるトレースデータの書込処理の流れを示すフローチャートである。
【００５１】
ＤＭＡ転送情報監視部２０９は、ＣＰＵ１０２からの転送開始指示に応じて画像処理部２０４によるＲＡＭ１０３に対する転送対象のデータの書き込みが開始されると、所定の書込禁止領域に対してデータが書き込まれたか否かを判断する（ステップＳ６０１）。ＤＭＡ転送情報監視部２０９は、書込禁止領域へのデータの書き込みを検知した場合（ステップＳ６０１：Ｙｅｓ）、画像処理部２０４に対してライトアドレスエラー通知を送信する（ステップＳ６０２）。
【００５２】
また、ＤＭＡ転送情報監視部２０９は、レジスタ制御部２０７が有するレジスタに転送開始指示が書き込まれると、画像処理部２０４からアービタ２０３に対してディスクリプタリードフラグが送信されたか否かを判断する（ステップＳ６０３）。ＤＭＡ転送情報監視部２０９は、アービタ２０３に対してディスクリプタリードフラグが送信されると（ステップＳ６０３：Ｙｅｓ）、ＲＡＭ１０３から、ＲＡＭ１０３に書き込まれたＤＭＡ転送情報を読み出す（ステップＳ６０４）。そして、ＤＭＡ転送情報監視部２０９は、図６に示すデータフォーマットに従って、読み出したＤＭＡ転送情報に、ＩＤ情報５０１とアドレス情報５０２と時間情報５０３とを付加して、アクセス履歴記憶制御部２１０に送信する。
【００５３】
読み出したＤＭＡ転送情報にＩＤ情報５０１を付加しておく。このため、書込禁止領域へのデータの書き込みが検知された場合に、どの画像処理部２０４〜２０６によるメモリ管理（ＲＡＭ１０３に対するデータの書き込み処理）に異常があったのかを容易に特定することができる。これにより、ＲＡＭ１０３に対するデータの書き込みによる不具合の解析作業の負担を軽減することができる。
【００５４】
また、読み出したＤＭＡ転送情報にアドレス情報５０２および時間情報５０３を付加しておく。このため、書込禁止領域へのデータの書き込みが検知された場合に、画像処理部２０４によるどのデータの転送がいつ行われたかを特定することができる。これにより、当該画像処理部２０４によるデータの転送が、ＲＡＭ１０３に対するデータの書き込みによる不具合に直接関係するものであるか否かを容易に検出することができる。
【００５５】
アクセス履歴記憶制御部２１０は、ＤＭＡ転送情報監視部２０９から受信したＤＭＡ転送情報を、内部バッファに記憶させる。また、ＤＭＡ転送情報監視部２０９は、書込禁止領域へのデータの書き込みによるエラーを検知したか否かを判断する（ステップＳ６０５）。ＤＭＡ転送情報監視部２０９は、書込禁止領域へのデータの書き込みによるエラーが検知されなかった場合（ステップＳ６０５：Ｎｏ）、ステップＳ６０３およびステップＳ６０４に示す処理を繰り返す。
【００５６】
レジスタアクセス監視部２０８は、レジスタ制御部２０７が有するレジスタに対して転送開始指示が書き込まれたか否かを判断する（ステップＳ６０６）。レジスタアクセス監視部２０８は、レジスタ制御部２０７が有するレジスタに対して転送開始指示が書き込まれた場合（ステップＳ６０６：Ｙｅｓ）、図５に示すレジスタアクセス情報を取得してアクセス履歴記憶制御部２１０に送信する（ステップＳ６０７）。これにより、アクセス履歴記憶制御部２１０は、レジスタアクセス監視部２０８から受信したレジスタアクセス情報を内部バッファに書き込む。また、レジスタアクセス監視部２０８は、書込禁止領域へのデータの書き込みによるエラーを検知したか否かを判断する（ステップＳ６０８）。レジスタアクセス監視部２０８は、書込禁止領域へのデータの書き込みによるエラーが検知されなかった場合（ステップＳ６０８：Ｎｏ）、ステップＳ６０６およびステップＳ６０７に示す処理を繰り返す。ＡＳＩＣ１０１においては、書込禁止領域へのデータの書き込みによるエラーが検知されるまで、上述したステップＳ６０１〜ステップＳ６０８に示す処理が並行して行われる。
【００５７】
そして、書込禁止領域へのデータの書き込みによるエラーが検知された場合（ステップＳ６０１：Ｙｅｓ、ステップＳ６０５：Ｙｅｓ、ステップＳ６０８：Ｙｅｓ）、以下の動作を行う。すなわち、割込制御部２１１は、画像処理部２０４からの割込通知の送信の指示に応じて、第１インタフェース制御部２０１を介して、ＣＰＵ１０２に対して割込通知を送信する（ステップＳ６０９）。
【００５８】
また、ＤＭＡ転送情報監視部２０９は、書込禁止領域へのデータの書き込みを検知した場合、データの転送を禁止（強制停止）する。すなわち、ＤＭＡ転送情報監視部２０９は、ライトアドレスエラー通知を画像処理部２０４に対して送信する。この送信によって、画像処理部２０４によるＲＡＭ１０３へのデータの書き込みおよびＲＡＭ１０３からのデータの読み込みを停止させて、データの転送を禁止（強制停止）する（ステップＳ６１０）。これにより、書込禁止領域へのデータの書き込みを検知した場合に、ＲＡＭ１０３に対するトレースデータの書き込みを遅延なく開始することができる。よって、直ちに、ＲＡＭ１０３に対するデータの書き込みによる不具合の解析作業が行える状態とすることができる。
【００５９】
さらに、アクセス履歴記憶制御部２１０は、書込禁止領域へのデータの書き込みによるエラーが検知されると、次の動作を行う。すなわち、アクセス履歴記憶制御部２１０は、当該アクセス履歴記憶制御部２１０に記憶されるレジスタアクセス情報およびＤＭＡ転送情報を含むトレースデータを、ＲＡＭ１０３の所定の記憶領域に書き込む（トレースする）（ステップＳ６１１）。
【００６０】
図８は、本実施の形態にかかるシステムの発生不具合を解析するフローチャートである。まず、上述したＡＳＩＣを含むシステムにおいてトレース設定を施した後に、所定の評価事項に基づいて実機解析テストを実施する（ステップＳ８０１）。続いて、上記テストの実施の結果からトレース情報を取得し、当該トレース情報の取得を行う（ステップＳ８０２）。続いて、上記実機解析テストにおいて必要な情報を全て取得した否かを解析者が判断する（ステップＳ８０３）。ステップＳ８０３において情報が不十分であると判断した場合（ステップＳ８０３：Ｎｏ）、トレースするアドレス範囲を絞るため、アドレス範囲、各画像処理部２０４〜２０６の起動レジスタの取得範囲の指定を画像形成システムに施し（ステップＳ８０４）、再度実機テストを行う。一方、ステップＳ８０３において、十分な情報が得られた場合は（ステップＳ８０３：Ｙｅｓ）、解析のための情報取得を終了する。
【００６１】
このように本実施の形態にかかるによれば、ＲＡＭ１０３の書込禁止領域にデータが書き込まれた際に、当該ＲＡＭ１０３に書き込まれたＤＭＡ転送情報を用いて、ＲＡＭ１０３に対するデータの書き込みの不具合を容易に検出することができる。これにより、ＣＰＵ１０２からの転送開始指示に応じて画像処理部２０４によって転送対象のデータをＲＡＭ１０３に書き込むシステムにおいて、ＲＡＭ１０３の記憶領域のうち書込禁止領域へのデータの書き込みによる不具合の解析の効率を向上させることができる。
【００６２】
本実施の形態の画像形成装置で実行されるプログラムは、ＲＯＭ（Read  Only  Memory）等に予め組み込まれて提供される。本画像形成装置で実行されるプログラムは、インストール可能な形式又は実行可能な形式のファイルでＣＤ−ＲＯＭ、フレキシブルディスク（ＦＤ）、ＣＤ−Ｒ、ＤＶＤ（Digital  Versatile  Disk）等のコンピュータで読み取り可能な記録媒体に記録して提供するように構成してもよい。
【００６３】
さらに、本実施の形態の画像形成装置で実行されるプログラムを、インターネット等のネットワークに接続されたコンピュータ上に格納し、ネットワーク経由でダウンロードさせることにより提供するように構成しても良い。また、本実施の形態の画像形成装置で実行されるプログラムをインターネット等のネットワーク経由で提供または配布するように構成しても良い。
【００６４】
本実施の形態の画像形成装置のＡＳＩＣ１０１で実行されるプログラムは、上述した各部（第１インタフェース制御部２０１、第２インタフェース制御部２０２、アービタ２０３、画像処理部２０４〜２０６、レジスタ制御部２０７、レジスタアクセス監視部２０８、ＤＭＡ転送情報監視部２０９、アクセス履歴記憶制御部２１０、割込制御部２１１）を含むモジュール構成となっている。実際のハードウェアとしてはＡＳＩＣ１０１が有するＣＰＵ等の制御部が上記ＲＯＭからプログラムを読み出して実行することにより上記各部が主記憶装置上にロードされ、第１インタフェース制御部２０１、第２インタフェース制御部２０２、アービタ２０３、画像処理部２０４〜２０６、レジスタ制御部２０７、レジスタアクセス監視部２０８、ＤＭＡ転送情報監視部２０９、アクセス履歴記憶制御部２１０、割込制御部２１１が主記憶装置上に生成されるようになっている。
【００６５】
以上の説明では、本実施の形態にかかる情報処理装置、情報処理方法およびプログラムを画像形成装置に適用した例について説明したが、これに限定するものではない。例えば、携帯電話機や携帯型情報端末、プロジェクタやテレビ会議システムなどの画像処理装置にも適用することができる。
【符号の説明】
【００６６】
１０１  ＡＳＩＣ
１０２  ＣＰＵ（外部制御部の一例）
１０３  ＲＡＭ（第１記憶部の一例）
１０４  スキャナ
１０５  プリンタ
２０１  第１インタフェース制御部
２０２  第２インタフェース制御部
２０３  アービタ
２０４，２０５，２０６  画像処理部（転送部の一例）
２０７  レジスタ制御部
２０８  レジスタアクセス監視部
２０９  ＤＭＡ転送情報監視部
２１０  アクセス履歴記憶制御部（制御部、第２記憶部の一例）
２１１  割込制御部（制御部の一例）
２２０  レジスタ情報入力部
２２１  保存範囲指定部
２２２  起動情報取得部
２２３  出力部
２２５  制御信号
【先行技術文献】
【特許文献】
【００６７】
【特許文献１】特開２００６−０１１６４５号公報
【特許文献２】特開２０１１−２４３１８５号公報
【図１】
2015187833.tif 000003
【図２】
2015187833.tif 000004
【図３】
2015187833.tif 000005
【図４】
2015187833.tif 000006
【図５】
2015187833.tif 000007
【図６】
2015187833.tif 000008
【図７】
2015187833.tif 000009
【図８】
2015187833.tif 000010