(57)【特許請求の範囲】
【請求項１】
予め設定された割込要因の発生に応じて割込信号を出力する一又は複数のモジュールと、
前記モジュール各々から出力される前記割込信号が記憶される第１記憶部と、
前記モジュールごとに対応して設けられ、前記モジュール各々で発生した前記割込要因の内容が記憶される第２記憶部と、
前記割込要因のうち予め設定されるデバッグ対象の割込要因の内容がダミー割込要因の内容として記憶される第３記憶部と、
前記割込要因が発生した前記モジュールを前記第１記憶部を参照して特定すると共に前記割込要因の内容を前記モジュールに対応する前記第２記憶部を参照して特定し、前記割込要因に対応して予め設定された割込処理を実行する割込処理部と、
前記ダミー割込要因に対応する前記割込要因の内容が記憶される前記第２記憶部に対する前記割込処理部のアクセスを検知した場合に前記割込処理部によるアクセス先を前記第３記憶部に切り換える切換制御部と、
を備える情報処理装置。
【請求項２】
前記ダミー割込要因に対応する前記割込要因が発生する前記モジュールに対する前記割込処理部のアクセスを検知した場合にダミー割込信号を出力するダミー割込信号出力部と、
前記モジュール各々から出力される前記割込信号又は前記ダミー割込信号出力部から出力される前記ダミー割込信号を前記第１記憶部に記憶させるデバッグ制御部と、
前記第１記憶部に前記割込信号又は前記ダミー割込信号が記憶された場合に前記割込処理部に割込要求信号を出力する割込要求制御部と、
を更に備え、
前記割込処理部が、前記割込要求信号の入力に応じて、前記割込要因が発生した前記モジュールを特定すると共に前記割込要因の内容を特定し、前記割込要因の内容に対応する前記割込処理を実行する請求項１に記載の情報処理装置。
【請求項３】
前記ダミー割込信号出力部が、予め設定される第１監視アドレスに対する前記割込処理部のアクセスを検知した場合に前記ダミー割込信号を出力し、
前記切換制御部が、予め設定される第２監視アドレスに対する前記割込処理部のアクセスを検知した場合に、前記割込処理部によるアクセス先を前記第３記憶部に切り換える請求項２に記載の情報処理装置。
【請求項４】
前記ダミー割込要因のデバッグ種別を、前記割込信号を使用してデバッグを実行する第１種別と前記ダミー割込信号を使用してデバッグを実行する第２種別とのいずれかに設定するデバッグ種別設定部を更に備え、
前記デバッグ制御部が、前記ダミー割込要因のデバッグ種別が前記第１種別である場合は、前記モジュール各々から出力される前記割込信号を前記第１記憶部に記憶させ、前記ダミー割込要因のデバッグ種別が前記第２種別である場合は、前記ダミー割込出力部から出力される前記ダミー割込信号を前記第１記憶部に記憶させる請求項２又は３に記載の情報処理装置。
【請求項５】
前記割込要因又は前記ダミー割込要因が発生した場合に、前記割込処理部の動作ログを記憶するログ記憶処理を開始するログ記憶処理部を更に備える請求項１〜４のいずれかに記載の情報処理装置。
【請求項６】
前記割込処理部に接続された制御バスと、前記制御バスを前記第２記憶部及び前記第３記憶部に接続する二つのアクセスバスと、前記制御バスの接続先を前記アクセスバス各々に切り換えるバス切換部を更に備え、
前記切換制御部が、前記バス切換部を用いて前記割込処理部のアクセス先を切り換える請求項１〜５のいずれかに記載の情報処理装置。
【請求項７】
請求項１〜６のいずれかに記載の情報処理装置と、画像データに基づいて画像を形成する画像形成部及び原稿から画像データを読み取る画像読取部のいずれか一方又は両方と、を備える画像処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、割込要因の発生に応じて割込処理が実行される情報処理装置及び画像処理装置に関する。
【背景技術】
【０００２】
プリンター及び複写機のような画像処理装置に搭載される各種のモジュールは、予め設定された割込要因が発生した場合にプロセッサーに割込要求信号を出力する。そして、プロセッサーは、モジュールで発生した割込要因に応じて予め設定された割込処理を実行する（例えば特許文献１参照）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００６−１８５３６５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ところで、画像処理装置のデバッグ作業では、モジュールで割込要因が発生した場合にその割込要因に対応する割込処理が正常に実行されるか否かが評価される。しかしながら、割込要因には、任意に発生させることが困難な割込要因がある。例えば、モジュールにおけるシリアル転送中に１ビット単位のデータ誤り（ＣＲＣエラー等）を任意に発生させることは困難である。また、転送先アドレスの指定が既定の範囲を超えるアドレスエラーを任意に発生させるためにはプロセッサーで実行されるプログラムを一部変更する必要がある。
【０００５】
本発明の目的は、デバッグ作業時に任意の割込要因に対応する割込処理の実行の適否を容易に評価することのできる情報処理装置及び画像処理装置を提供することにある。
【課題を解決するための手段】
【０００６】
本発明の一の局面に係る情報処理装置は、一又は複数のモジュールと、第１記憶部と、第２記憶部と、第３記憶部と、割込処理部と、切換制御部と、を備える。前記モジュールは、予め設定された割込要因の発生に応じて割込信号を出力する。前記第１記憶部には、前記モジュール各々から出力される前記割込信号が記憶される。前記第２記憶部には、前記モジュールごとに対応して設けられ、前記モジュール各々で発生した前記割込要因の内容が記憶される。前記第３記憶部には、前記割込要因のうち予め設定されるデバッグ対象の割込要因の内容がダミー割込要因の内容として記憶される。前記割込処理部は、前記割込要因が発生した前記モジュールを前記第１記憶部を参照して特定すると共に前記割込要因の内容を前記モジュールに対応する前記第２記憶部を参照して特定し、前記割込要因に対応して予め設定された割込処理を実行する。前記切換制御部は、前記ダミー割込要因に対応する前記割込要因の内容が記憶される前記第２記憶部に対する前記割込処理部のアクセスを検知した場合に前記割込処理部によるアクセス先を前記第３記憶部に切り換える。
【０００７】
本発明の他の局面に係る画像処理装置は、前記情報処理装置と、画像データに基づいて画像を形成する画像形成部及び原稿から画像データを読み取る画像読取部のいずれか一方又は両方と、を備える。
【発明の効果】
【０００８】
本発明によれば、デバッグ作業時に任意の割込要因に対応する割込処理の実行の適否を容易に評価することのできる情報処理装置及び画像形成装置が実現される。
【図面の簡単な説明】
【０００９】
【図１】本発明の実施の形態に係る画像処理装置の概略構成を示す図。
【図２】本発明の実施の形態に係る画像処理装置のハードウェア構成を示すブロック図。
【図３】本発明の実施の形態に係る情報処理装置のハードウェア構成を示すブロック図。
【図４】本発明の実施の形態に係る画像処理装置で実行されるデバッグ制御処理の手順の一例を示すフローチャート。
【発明を実施するための形態】
【００１０】
＜画像処理装置１０の概略構成＞
まず、図１及び図２を参照しつつ、本発明の実施の形態に係る画像処理装置１０の概略構成について説明する。
【００１１】
図１及び図２に示すように、前記画像処理装置１０は、ＡＤＦ１、画像読取部２、画像形成部３、給紙部４、操作表示部６、通信Ｉ／Ｆ７、及び情報処理装置２０などを備える複合機である。また、前記情報処理装置２０は、制御部５、モジュール８、及び割込制御部９などを備える。
【００１２】
なお、本発明に係る情報処理装置の他の例には、パーソナルコンピューター、タブレット端末、スマートフォン、及び携帯電話などが含まれる。また、本発明に係る画像処理装置の他の例には、前記画像読取部２及び前記画像形成部３のいずれか一方又は両方を備えるプリンター、コピー機、スキャナー、及びファクシミリーなどの画像形成装置又は画像読取装置が含まれる。
【００１３】
前記ＡＤＦ１は、複数の搬送ローラーを駆動させることにより、原稿載置部１１にセットされた原稿を前記画像読取部２による画像読取位置を通過させて排紙トレイ１３まで搬送させる原稿自動送り装置である。
【００１４】
前記画像読取部２は、原稿台２１、光源ユニット２２、ミラー２３、２４、光学レンズ２５、及びＣＣＤ（Charge Coupled Device）２６などを備え、原稿から画像データを読み取る。前記原稿台２１は、前記画像読取部２の上面に設けられた原稿の載置部である。前記読取ユニット２２は、ＬＥＤ光源２２１及びミラー２２２を備え、不図示のモーターによって副走査方向２Ａに移動可能である。前記ＬＥＤ光源２２１は、前記副走査方向２Ａに垂直な主走査方向に沿って配列された多数の白色ＬＥＤを備える。前記ミラー２２２は、前記ＬＥＤ光源２２１から照射されて前記原稿台２１上の読取位置にある前記原稿の表面で反射した後の光を前記ミラー２３に向けて反射させる。そして、前記ミラー２２２で反射した光は、前記ミラー２３、２４によって前記光学レンズ２５に導かれる。前記光学レンズ２５は、入射した光を集光して前記ＣＣＤ２６に入射させる。前記ＣＣＤ２６は、前記光学レンズ２５から入射される光の受光量に応じた電気信号を前記原稿の画像データとして前記制御部５に入力する光電変換素子などを有する。
【００１５】
前記画像形成部３は、前記画像読取部２で読み取られた画像データ、又は外部のパーソナルコンピューター等の情報処理装置から入力された画像データに基づいて画像形成処理（印刷処理）を実行する電子写真方式の画像形成部である。具体的に、前記画像形成部３は、搬送部３０、感光体ドラム３１、帯電装置３２、露光装置（ＬＳＵ）３３、現像装置３４、転写ローラー３５、クリーニング装置３６、定着ローラー３７、加圧ローラー３８、及び排紙トレイ３９などを備える。
【００１６】
前記給紙部４は、前記画像処理装置１０に対して着脱可能な給紙カセット４１に収容された紙などのシートを前記画像形成部３に供給する。そして、前記画像形成部３に供給されたシートは、前記搬送部３０により前記感光体ドラム３１及び前記転写ローラー３５を経て前記定着ローラー３７及び前記加圧ローラー３８を通過した後、排紙トレイ３９に排出される。このとき、前記画像形成部３では、前記給紙部４から供給されて前記搬送部３０により搬送されるシートに画像を形成する画像形成処理が以下の手順で実行される。
【００１７】
まず、前記帯電装置３２によって前記感光体ドラム３１が所定の電位に一様に帯電される。次に、前記露光装置３３により前記感光体ドラム３１の表面に画像データに基づく光が照射される。これにより、前記感光体ドラム３１の表面に画像データに対応する静電潜像が形成される。そして、前記感光体ドラム３１上の静電潜像は前記現像装置３４によって磁性トナーにより現像（可視像化）される。なお、前記現像装置３４には、前記画像形成部３に着脱可能なトナーコンテナ３４Ａから磁性トナーが補給される。続いて、前記感光体ドラム３１に形成されたトナー像は前記転写ローラー３５によってシートに転写される。その後、シートに転写されたトナー像は、そのシートが前記定着ローラー３７及び前記加圧ローラー３８の間を通過する際に前記定着ローラー３７で加熱されて溶融定着する。なお、前記画像形成部３による前記画像形成処理後に前記感光体ドラム３１の表面に残存する前記磁性トナーは前記クリーニング装置３６によって除去される。
【００１８】
前記制御部５は、ＣＰＵ５１、ＲＯＭ５２、ＲＡＭ５３、及びＥＥＰＲＯＭ５４などの制御機器を有する。前記ＣＰＵ５１は、各種の演算処理を実行するプロセッサーである。前記ＲＯＭ５２は、前記ＣＰＵ５１に各種の処理を実行させるための制御プログラムなどの情報が予め記憶される不揮発性の記憶手段である。前記ＲＡＭ５３は、各種の情報を記憶する揮発性の記憶手段であり、前記ＥＥＰＲＯＭ５４は、各種の情報を記憶する不揮発性の記憶手段である。前記ＲＡＭ５３及び前記ＥＥＰＲＯＭ５４は、前記ＣＰＵ５１が実行する各種の処理の一時記憶メモリー（作業領域）として使用される。
【００１９】
そして、前記制御部５は、前記ＲＯＭ５２に予め記憶された各種の制御プログラムを前記ＣＰＵ５１を用いて実行することにより前記画像処理装置１０を統括的に制御する。なお、前記制御部５は、集積回路（ＡＳＩＣ）などの電子回路で構成されたものであってもよく、前記画像処理装置１０を統括的に制御するメイン制御部と別に前記画像形成部３などに設けられたエンジン制御部であってもよい。
【００２０】
前記操作表示部６は、前記画像処理装置１０の外面に設けられている。前記操作表示部６は、前記制御部５からの制御指示に応じて各種の情報を表示する液晶ディスプレー又は有機ＥＬディスプレーなどの表示部を有する。また、前記操作表示部６は、ユーザー操作に応じて前記制御部５に各種の情報を入力するハードキー又はタッチパネルなどの操作部を有する。
【００２１】
前記通信Ｉ／Ｆ７は、前記画像処理装置１０を有線又は無線でインターネット又はＬＡＮ等のネットワークに接続し、前記ネットワークを介して外部装置との間でデータ通信を実行する通信インターフェースである。
【００２２】
前記モジュール８は、ＳＡＴＡ規格又はＵＳＢ規格などの通信方式に従って記憶装置、ディスクドライブ、又はＵＳＢ機器などとの間におけるデータの入出力を制御するインターフェース回路などである。前記記憶装置は、例えばＨＤＤ又はＳＳＤなどである。前記ディスクドライブは、例えばＣＤドライブ、ＤＶＤドライブ又はＢＤドライブなどである。前記ＵＳＢ機器は、例えばＵＳＢメモリー又はデジタルカメラなどである。なお、前記モジュール８は、前記画像読取部２で読み取られる画像データに対して回転処理などの画像処理を実行する画像処理回路であってもよい。もちろん、前記モジュール８はこれらに限らない。例えば、前記通信Ｉ／Ｆ７を前記モジュール８の一例として捉えてもよい。
【００２３】
また、前記モジュール８各々は、予め設定された割込要因が発生した場合に割込信号を前記割込制御部９に出力する。前記割込要因には、例えばデータ転送完了、データ誤り、又はアドレスエラーなどが含まれる。もちろん、前記割込要因は、これらに限らず前記モジュール８各々の機能に対応して予め任意に設定可能である。
【００２４】
前記割込制御部９は、前記モジュール８各々における前記割込要因の発生に応じて前記ＣＰＵ５１に割り込みを発生させる。具体的に、前記割込制御部９は、前記モジュール８各々から前記割込信号を受信すると、前記ＣＰＵ５１に割込要求信号を出力する。そして、前記ＣＰＵ５１は、前記割込要求信号を受信すると、前記割込要因が発生した前記モジュール８を特定すると共に、前記モジュール８で発生した前記割込要因を特定し、前記割込要因に対応して予め設定されている割込処理を実行する。ここに、前記割込処理を実行するときの前記ＣＰＵ５１が割込処理部の一例である。なお、前記割込要因と前記割込処理との対応関係は前記ＲＯＭ５２又は前記ＥＥＰＲＯＭ５４などに予め記憶されている。
【００２５】
ところで、従来から、前記モジュール８各々で発生する前記割込要因にはデバッグ作業時に任意に発生させることが困難な割込要因がある。例えば、前記モジュール８におけるシリアル転送中に生じる１ビット単位のデータ誤り（ＣＲＣエラー等）を任意に発生させることは困難である。また、前記モジュール８に転送先として設定されるアドレスが既定の範囲を超えるアドレスエラーを任意に発生させるためには、前記制御部５で実行されるプログラムを一部変更する等の作業を要する。これに対し、前記画像処理装置１０では、以下に説明するように、デバッグ作業時に任意の割込要因に対応する割込処理の実行の適否を容易に評価することが可能である。
【００２６】
［情報処理装置の構成］
次に、図３を参照しつつ、前記情報処理装置２０の構成について説明する。なお、前記情報処理装置２０では、一又は複数の前記モジュール８と前記割込制御部９とが一つのＡＳＩＣ上に搭載されている。
【００２７】
図３に示すように、前記モジュール８各々は、起動レジスター８１及び要因レジスター８２などを有する。前記起動レジスター８１は、前記ＣＰＵ５１が前記モジュール８を起動する際に前記ＣＰＵ５１により起動信号が書き込まれる記憶領域である。前記モジュール８は、前記起動レジスター８１への前記起動信号の書き込みに応じて起動し、予め設定されたデータ転送処理などの各種の処理を実行する。
【００２８】
前記要因レジスター８２は、前記モジュール８ごとに対応して設けられ、前記モジュール８各々において前記割込要因が発生した場合に前記割込要因の内容が記憶される第２記憶部の一例である。具体的に、前記要因レジスター８２には、前記割込要因各々に対応するデータビットが含まれている。前記モジュール８は、前記割込要因の発生時に、前記要因レジスター８２のうち前記モジュール８で発生した前記割込要因の内容に対応する前記データビットの値を「０」から「１」に変更する。これにより、前記ＣＰＵ５１は、前記要因レジスター８２を参照することにより、前記モジュール８で発生した前記割込要因の内容を特定することが可能である。
【００２９】
前記割込制御部９は、デバッグ制御部９１、割込要求制御部９２、切換制御部９３、及びバス切換部９４を有する。
【００３０】
前記デバッグ制御部９１は、割込レジスター９１１、ダミー割込レジスター９１２、ダミー要因レジスター９１３、及び切換レジスター９１４を有する。前記割込レジスター９１１には、前記モジュール８各々から出力される前記割込信号が記憶される。前記ダミー割込レジスター９１２には、前記切換制御部９３から出力されるダミー割込信号が記憶される。具体的に、前記割込レジスター９１１及び前記ダミー割込レジスター９１各々には、前記モジュール８各々に対応するデータビットが含まれている。前記ダミー要因レジスター９１３は、前記割込要因のうち前記ＣＰＵ５１により予め設定されるデバッグ対象の割込要因の内容がダミー割込要因の内容として記憶される第３記憶部の一例である。
【００３１】
前記切換レジスター９１４には、前記ＣＰＵ５１により予め設定されるデバッグ種別が記憶される。前記デバッグ種別は、前記モジュール８から出力される前記割込信号を使用してデバッグを実行する第１種別と、前記切換制御部９３から出力される前記ダミー割込信号を使用してデバッグを実行する第２種別とに分類される。例えば、前記第１種別に属する前記割込要因は、前記モジュール８における処理開始時に発生する要因であり、前記第２種別に属する前記割込要因は、前記モジュール８における処理終了時に発生する要因であることが考えられる。なお、前記デバッグ種別の初期値は前記第１種別である。
【００３２】
前記デバッグ制御部９１は、前記モジュール８各々から出力されて前記割込レジスター９１１に記憶される前記割込信号又は前記切換制御部９３から出力されて前記ダミー割込レジスター９１２に記憶される前記ダミー割込信号を前記デバッグ種別に応じて選択的に前記割込要求制御部９２に出力する。具体的に、前記デバッグ制御部９１は、前記デバッグ種別が前記第１種別である場合は前記割込信号を出力し、前記デバッグ種別が前記第２種別である場合は前記ダミー割込信号を出力する。なお、前記デバッグ制御部９１は、前記ダミー割込信号が前記ダミー割込レジスター９１２に記憶された場合に、予め設定された所定時間が経過してから前記ダミー割込信号を前記割込要求制御部９２に出力することも考えられる。
【００３３】
また、前記デバッグ制御部９１が、前記モジュール８に前記記憶装置、前記ディスクドライブ、又は前記ＵＳＢ機器などの外部機器が接続されていない場合に、自動的に前記ダミー割込信号を前記割込要求制御部９２に出力すると判断することも考えられる。この場合、前記切換レジスター９１４が省略可能であり、前記ＣＰＵ５１からの前記切換レジスター９１４の設定処理も省略可能である。
【００３４】
前記割込要求制御部９２は、割込レジスター９２１を有する。前記割込レジスター９２１は、前記割込信号及び前記ダミー割込信号が記憶される第１記憶部の一例である。具体的に、前記割込レジスター９２１は、前記モジュール８各々に対応する前記割込信号及び前記ダミー割込信号が記憶されるデータビットを含む。なお、一つの前記モジュール８に対応する前記割込信号及び前記ダミー割込信号は、前記割込レジスター９２１における共通のデータビットに書き込まれる。これにより、前記ＣＰＵ５１は、前記割込レジスター９２１を参照することにより、前記割込要因が発生している前記モジュール８を特定することが可能である。
【００３５】
前記割込要求制御部９２は、前記デバッグ制御部９１により前記割込信号又は前記ダミー割込信号が前記割込レジスター９２１に記憶された場合に、前記切換制御部９３及び前記ＣＰＵ５１に前記割込要求信号を出力する。例えば、前記割込要求制御部９２は、前記割込レジスター９２１の前記データビット各々の論理和を前記割込要求信号として出力する。なお、前記割込要求制御部９２は、前記割込レジスター９２１のうち前記ＣＰＵ５１などにより予め設定される特定データビットの値をマスクすることにより前記特定データビットの値に前記割込信号又は前記ダミー割込信号が書き込まれた場合に前記割込要求信号を出力しないマスク機能なども有する。
【００３６】
また、前記情報処理装置２０では、前記バス切換部９４と前記起動レジスター８１、前記要因レジスター８２、前記切換レジスター９１４、及び前記割込レジスター９２１とがアクセスバス９５により接続されている。また、前記バス切換部９４と前記ダミー要因レジスター９１３とがアクセスバス９６により接続されている。そして、前記バス切換部９４は、前記切換制御部９３からの制御指示に応じて、前記ＣＰＵ５１に接続されたＣＰＵバス５１Ａ（制御バス）の接続先を前記アクセスバス９５及び前記アクセスバス９６各々に切り換える。
【００３７】
前記切換制御部９３は、デバッグ設定レジスター９３１、切換レジスター９３２、及びログメモリー９３３を有する。前記切換レジスター９３２には、前記ＣＰＵ５１により予め設定される前記デバッグ種別が記憶される。
【００３８】
前記デバッグ設定レジスター９３１には、前記ＣＰＵ５１により予め設定されるデバッグモジュール情報、第１監視アドレス、及び第２監視アドレスなどが記憶される。前記デバッグモジュール情報は、デバッグ対象の前記モジュール８を示す。前記デバッグモジュール情報は、前記ダミー割込レジスター９１２と同様のデータ構造で前記デバッグ設定レジスター９３１に記憶される。前記第１監視アドレスは、前記ダミー割込要因に対応する前記割込要因が本来発生する前記デバッグ対象の前記モジュール８に対応する前記起動レジスター８１のアドレスである。前記第２監視アドレスは、前記ダミー割込要因に対応する前記割込要因の内容が本来記憶される前記要因レジスター８２のアドレスである。
【００３９】
そして、前記切換制御部９３は、前記デバッグ設定レジスター９３１に記憶された前記第１監視アドレス及び前記第２監視アドレスに対する前記ＣＰＵ５１のアクセスの有無を監視する。ここで、前記切換制御部９３は、前記デバッグ種別が前記第１種別である場合は、前記第１監視アドレスに対する前記ＣＰＵ５１のアクセスを検知した場合、前記ダミー割込信号を前記デバッグ制御部９２に出力し、前記ダミー割込レジスター９１２に記憶させる。ここに、前記ダミー割込信号を出力するときの前記切換制御部９３がダミー割込信号出力部の一例である。一方、前記切換制御部９３は、前記デバッグ種別が前記第２種別である場合は、前記デバッグ設定レジスター９３１に記憶される前記第１監視アドレスに前記ＣＰＵ５１がアクセスしても前記ダミー割込信号を出力しない。なお、前記切換制御部９３が、前記デバッグ種別にかかわらず前記第１監視アドレスに対する前記ＣＰＵ５１のアクセスを検知した場合、前記ダミー割込信号を前記デバッグ制御部９２に出力することも考えられ、この場合、前記切換レジスター９３２は省略可能である。
【００４０】
また、前記切換制御部９３は、前記第２監視アドレスに対する前記ＣＰＵ５１のアクセスを検知した場合、前記ＣＰＵ５１のＣＰＵバス５１Ａの接続先を前記バス切換部９４を用いて前記アクセスバス９６に切り換え、前記ＣＰＵ５１によるアクセス先を前記ダミー要因レジスター９１３に切り換える。一方、前記切換制御部９３は、前記第２監視アドレスに対する前記ＣＰＵ５１のアクセスを検知していない場合、前記ＣＰＵバス５１Ａの接続先を前記バス切換部９４を用いて前記アクセスバス９５側に設定する。このように、前記切換制御部９３は、前記第２監視アドレスに対する前記ＣＰＵ５１のアクセスの有無に応じて、前記ＣＰＵ５１のアクセス先を切り換える。
【００４１】
また、前記切換制御部９３は、前記割込要求制御部９２から前記割込要求信号を受信すると、前記ＣＰＵ５１から出力される前記ＣＰＵバス５１Ａ上の信号を動作ログとして前記ログメモリー９３３に記憶するログ記憶処理を開始する。ここに、前記ログ記憶処理を実行するときの前記切換制御部９３がログ記憶処理部の一例である。前記ログ情報には、前記ＣＰＵ５１のアクセス先のアドレス、及び前記アクセス先への送信信号の内容などが含まれる。なお、前記ログメモリー９３３は、ＳＲＡＭ又はＥＥＰＲＯＭなどの記憶部である。
【００４２】
［割込制御部の動作例］
以下、図４を参照しつつ、前記画像処理装置１０のデバッグ工程の手順について説明する。なお、前記デバッグ工程では、予め設定されるデバッグ対象の割込要因とは異なる割込要因が発生した場合にも前記割込要因に対応する割込処理が前記ＣＰＵ５１によって実行されるが、ここではその説明を省略する。
【００４３】
＜ステップＳ１＞
まず、ステップＳ１において、前記ＣＰＵ５１は、デバッグ対象の前記モジュール８及び前記割込要因に対応する前記デバッグモジュール情報、前記第１監視アドレス、前記第２監視アドレス、及び前記デバッグ種別を設定する。前記デバッグモジュール情報、前記第１監視アドレス、及び前記第２監視アドレスは、前記デバッグ制御部９１の前記デバッグ設定レジスター９３１に記憶される。前記デバッグ種別は、前記デバッグ制御部９１の前記切換レジスター９３２に記憶される。なお、前記デバッグ対象は、前記画像処理装置１０のデバッグ作業を行う開発者などにより任意に設定可能である。例えば、前記画像処理装置１０のデバッグ作業を行う開発者は、前記デバッグ対象となる前記モジュール８及び前記割込要因を設定した後、前記ＣＰＵ５１に前記制御プログラムに従った通常の処理を実行させる。即ち、前記デバッグ作業において前記制御プログラムに変更を加える必要は生じない。
【００４４】
＜ステップＳ２＞
また、ステップＳ２において、前記ＣＰＵ５１は、前記ダミー割込要因のデバッグ種別及び前記ダミー割込要因の内容を設定する。具体的に、前記ＣＰＵ５１は、前記ダミー割込要因のデバッグ種別を前記第１種別と前記第２種別とのいずれかに設定する。ここに、前記設定を実行するときの前記ＣＰＵ５１がデバッグ種別設定部の一例である。前記デバッグ種別は前記切換レジスター９１４に記憶され、前記ダミー割込要因の内容は前記ダミー要因レジスター９１３に記憶される。なお、前記デバッグ種別は、前記割込要因の内容ごとに対応して予め設定されており、又は前記デバッグ工程の開始時に開発者などにより操作部に対する操作によって予め設定される。
【００４５】
＜ステップＳ３＞
そして、前記画像処理装置１０では、前記デバッグ種別が前記ダミー割込信号を使用する前記第２種別であるか否かに応じて処理が分岐する。具体的に、前記デバッグ種別が前記第２種別である場合には（Ｓ３のＹｅｓ側）、ステップＳ４以降の処理が実行される。一方、前記デバッグ種別が前記ダミー割込信号を使用する前記第１種別である場合には（Ｓ３のＮｏ側）、ステップＳ３１以降の処理が実行される。
【００４６】
＜ステップＳ４＞
ステップＳ４において、前記切換制御部９３は、前記ＣＰＵ５１による前記第１監視アドレスへのアクセスの有無を判断する。ここで、前記第１監視アドレスへのアクセスがあったと判断されると（Ｓ４のＹｅｓ側）、処理はステップＳ５に移行する。なお、前記切換制御部９３が、前記第１監視アドレスへの前記ＣＰＵ５１のアクセスの有無に代えて、前記ＣＰＵ５１からのデバッグ信号の受信の有無を監視することも他の実施形態として考えられる。
【００４７】
＜ステップＳ５＞
ステップＳ５において、前記切換制御部９３は、前記ダミー割込信号を前記デバッグ制御部９１に出力する。具体的に、前記切換制御部９３は、前記デバッグ設定レジスター９３１に記憶された前記デバッグモジュール情報が示す前記モジュール８に対応する前記ダミー割込レジスター９１２のデータビットに前記ダミー割込信号を記憶させる。このとき、前記切換レジスター９１４に記憶されている前記デバッグ種別も前記第１種別である。そのため、前記デバッグ制御部９１は、前記切換制御部９３から出力されて前記ダミー割込レジスター９１２に記憶される前記ダミー割込信号を前記割込要求制御部９２に出力する。なお、前記ダミー割込信号は、前記デバッグ対象の前記モジュール８に対応する前記割込レジスター９２１のデータビットに記憶される。
【００４８】
＜ステップＳ３１＞
一方、ステップＳ３１において、前記デバッグ制御部９１は、前記割込レジスター９１１のデータビットの値に応じて、前記モジュール８の処理終了を示す予め設定されたデータ転送終了のような前記割込信号が前記モジュール８から出力されたか否かを判断する。ここで、前記割込信号が出力されると（Ｓ３１のＹｅｓ側）、処理はステップＳ３２に移行する。
【００４９】
＜ステップＳ３２＞
ここで、前記切換レジスター９１４に記憶されている前記デバッグ種別も前記第２種別である。そのため、ステップＳ３２において、前記デバッグ制御部９１は、前記モジュール８各々から出力されて前記割込レジスター９１１に記憶される前記割込信号を前記割込要求制御部９２に出力する。具体的に、前記割込信号は、前記デバッグ対象の前記モジュール８に対応する前記割込レジスター９２１のデータビットに記憶される。
【００５０】
＜ステップＳ６＞
そして、ステップＳ６において、前記割込要求制御部９２は、前記割込レジスター９２１に記憶された情報に基づいて、前記割込要求信号を前記ＣＰＵ５１及び前記切換制御部９３に出力する。具体的に、前記割込要求制御部９２は、前記割込レジスター９２１のデータビットのいずれかに前記割込信号又は前記ダミー割込信号が書き込まれた場合に前記割込要求信号を出力する。
【００５１】
＜ステップＳ７＞
ステップＳ７において、前記切換制御部９３は、前記割込要求制御部９２から前記割込要求信号を受信し、前記ＣＰＵ５１から出力される前記ＣＰＵバス５１Ａ上の信号を動作ログとして前記ログメモリー９３３に記憶するログ記憶処理を開始する。これにより、前記画像処理装置１０の開発者などは、前記画像処理装置１０における前記割込要求信号の発生時の前記ＣＰＵ５１の動作履歴を参照することが可能である。なお、前記ログ記憶処理は、例えば前記ＣＰＵ５１が実行する前記割込要因に対応する前記割込処理の終了後まで継続する。
【００５２】
＜ステップＳ８＞
一方、ステップＳ８において、前記ＣＰＵ５１は、前記割込要因が発生した前記モジュール８を前記割込要求制御部９２の前記割込レジスター９２１を参照して特定すると共に、前記割込要因の内容を前記要因レジスター８２を参照して特定するための処理を実行する。しかしながら、前記割込要因が発生している前記モジュール８の前記要因レジスター８２のアドレスは、前記デバッグ設定レジスター９３１に前記第２監視アドレスとして記憶されている。そのため、前記切換制御部９３は、前記バス切換部９４を用いて前記ＣＰＵバス５１Ａの接続先を前記アクセスバス９６に切り換え、前記ＣＰＵ５１のアクセス先を前記デバッグ制御部９１の前記ダミー要因レジスター９１３に切り換える。従って、前記ＣＰＵ５１は、前記モジュール８の前記要因レジスター８２ではなく前記ダミー要因レジスター９１３を参照して前記割込要因の内容を特定することになる。
【００５３】
＜ステップＳ９＞
そして、前記ＣＰＵ５１は、前記ステップＳ８で特定された前記割込要因に対応する前記割込処理を実行する。
【００５４】
以上説明したように、前記画像処理装置１０では、任意に発生させることが困難な前記割込要因であっても、前記ＣＰＵ５１に前記ダミー要因レジスター９１３を参照させ、前記割込要因が発生した状況を擬似的に作り出すことができる。従って、前記画像処理装置１０では、デバッグ作業時に任意の割込要因に対応する割込処理の実行の適否を容易に評価することができる。
【００５５】
また、前記画像処理装置１０では、前記デバッグ対象の割込要因のデバッグ種別を前記第１種別に設定しておくことにより、前記モジュール８で実際の処理が終了するタイミングで発生する前記割込信号を前記ダミー割込要因に対応する割込信号として利用することが可能である。従って、前記モジュール８の処理終了時に発生するような前記割込要因に対応する前記割込処理の評価を実際の動作に近い状況で行うことが可能である。
【符号の説明】
【００５６】
１    ：ＡＤＦ
２    ：画像読取部
３    ：画像形成部
４    ：給紙カセット
５    ：制御部
５１  ：ＣＰＵ
５１Ａ：ＣＰＵバス
５２  ：ＲＯＭ
５３  ：ＲＡＭ
５４  ：ＥＥＰＲＯＭ
６    ：操作表示部
７    ：通信Ｉ／Ｆ
８    ：モジュール
８１  ：起動レジスター
８２  ：要因レジスター
９    ：割込制御部
９１  ：デバッグ制御部
９１１：割込レジスター
９１２：ダミー割込レジスター
９１３：ダミー要因レジスター
９１４：切換レジスター
９２  ：割込要求制御部
９２１：割込レジスター
９３  ：切換制御部
９３１：デバッグ設定レジスター
９３２：切換レジスター
９３３：ログメモリー
９４  ：バス切換部
９５  ：アクセスバス
９６  ：アクセスバス
１０  ：複合機
【図１】
0005921503.tif 000002
【図２】
0005921503.tif 000003
【図３】
0005921503.tif 000004
【図４】
0005921503.tif 000005