(57)【要約】【課題】複数のチップを縦列接続した電子機器において、他のチップでエラーが発生した場合のエラーの発生状態を確認できるようにすること。【解決手段】縦列接続した複数のチップを含む電子機器であって、各チップは、後段に位置する他チップから受信したエラーを示すエラー信号、または、自チップで発生したエラーを示すエラー信号を、前段に位置する他チップに伝達する伝達手段と、エラーの発生に関する情報をメモリに書き込む書き込み手段と、後段に位置する他チップから受信したエラー信号の経路を、伝達手段に接続される第一経路と記書き込み手段に接続される第二経路との間で切り替える切り替え手段と、を備え、前記切り替え手段は、初期状態においては前記第二経路と接続するように構成されており、前記情報が前記メモリに書き込まれた後に、前記第一経路に接続を切り替えるように構成されている。【選択図】図４
2019164536.tif 000002
【特許請求の範囲】
【請求項１】
縦列接続した複数のチップを含む電子機器であって、
各チップは、
後段に位置する他チップから受信したエラーを示すエラー信号、または、自チップで発生したエラーを示すエラー信号を、前段に位置する他チップに伝達する伝達手段と、
前記エラーの発生に関する情報をメモリに書き込む書き込み手段と、
前記後段に位置する他チップから受信した前記エラー信号の経路を、前記伝達手段に接続される第一経路と、前記書き込み手段に接続される第二経路との間で切り替える切り替え手段と、
を備え、
前記切り替え手段は、初期状態においては前記第二経路と接続するように構成されており、前記情報が前記メモリに書き込まれた後に、前記第一経路に接続を切り替えるように構成されていることを特徴とする電子機器。
【請求項２】
前記エラー信号は、ウォッチドッグタイマ割り込みを示すウォッチドッグタイマ割り込み信号であることを特徴とする請求項１に記載の電子機器。
【請求項３】
前記情報は、前記ウォッチドッグタイマ割り込みが発生したチップを特定する情報、前記ウォッチドッグタイマ割り込み発生した時のステータス、およびログ情報の少なくとも１つを含むことを特徴とする請求項２に記載の電子機器。
【請求項４】
前記メモリは、チップごとに備えられ、各チップは、自チップに接続されたメモリに前記情報を書き込み可能であることを特徴とする請求項１から３のいずれか一項に記載の電子機器。
【請求項５】
前記前段に位置する他チップは、伝達された前記エラー信号の受信に応じて、自身よりも後段のチップに接続されたメモリに書き込まれた前記情報を取得する取得手段をさらに備えることを特徴とする請求項４に記載の電子機器。
【請求項６】
前記前段に位置する他チップは、前記取得手段が前記メモリに書き込まれた前記情報を取得できない場合、自身の後段に位置するチップを前記エラーが発生したチップとして特定する特定手段をさらに備えることを特徴とする請求項５に記載の電子機器。
【請求項７】
前記取得手段は、自身の後段のチップとの通信ログをさらに取得可能であり、
前記前段に位置する他チップは、
前記取得手段によって取得した前記情報または前記通信ログに基づいて前記後段のチップにリセット信号を出力するリセット制御手段をさらに備えることを特徴とする請求項５または６に記載の電子機器。
【請求項８】
前記各チップは、
前記前段に位置する他チップでリセット処理が行われると、当該他チップから出力されるリセット信号に応じて自チップのリセット処理を行い、自チップの後段に位置する他チップにリセット信号を出力することを特徴とする請求項１から７のいずれか一項に記載の電子機器。
【請求項９】
縦列接続した複数のチップを含む電子機器の制御方法であって、
各チップは、
後段に位置する他チップから受信したエラー信号が示すエラーに関する情報をメモリに書き込むステップと、
前記書き込みが完了した後に、前記後段に位置する他チップから受信した前記エラー信号の経路を、前記書き込み手段に接続される第二経路から、前記後段に位置する他チップから受信した前記エラー信号または自チップで発生したエラーを示すエラー信号を前段に位置する他チップに伝達する伝達手段に接続される第一経路に切り替えるステップと、
を実行可能であり、
前記エラー信号の経路が、初期状態においては前記第二経路と接続するように構成されていることを特徴とする電子機器の制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、縦列接続した複数のチップを含む電子機器およびその制御方法に関する。
【背景技術】
【０００２】
複数のチップを縦列接続したマルチチップシステムがある。各チップにおいては、ウォッチドッグタイマによる監視が行われている。例えばチップに含まれているＣＰＵが暴走するなどして異常状態（例えば、ウォッチドッグタイマーエラー）が発生した場合、そのチップにおいて備えられているウォッチドッグタイマが異常状態を検知して、自動的にそのチップに対するリセット制御が行われる。マルチチップシステムでは、各チップで発生し得る異常状態を互いのチップで共有することが求められる。例えば、チップに含まれているＣＰＵが暴走した場合、記録ヘッドの制御や、モータ制御が正常に行えなくなり、本体の故障につながる可能性があるからである。このため、これらの制御を行う各チップにおいて異常状態を共有し、システムを安全に停止し、リセットすることが求められる。
【０００３】
特許文献１には、複数のコントロールチップを縦列接続して構成された電子機器が開示されている。そして、外部から入力される他のコントロールチップからのウォッチドッグタイマの割り込み信号と、自チップのウォッチドッグタイマの割り込み信号との論理和信号を、前段のチップへ伝達する技術が開示されている。また、ウォッチドッグタイマが動作した自チップおよびその後段に位置するチップの全てをリセットする技術が開示されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１６−２２４７３０号
【発明の概要】
【発明が解決しようとする課題】
【０００５】
特許文献１の技術では、システム全体を安全にリセットすることは可能である。しかしながら、エラーの発生状況を記憶する前にリセットが行われるとエラーの発生状況に関する情報がメモリに格納されていないことがある。このため、エラー発生時の状態の確認が困難となるおそれがある。
【０００６】
本発明は、複数のチップを縦列接続した電子機器において、他のチップでエラーが発生した場合のエラーの発生状態を容易に確認可能にすることを目的とする。
【課題を解決するための手段】
【０００７】
本発明の一態様に係る電子機器は、縦列接続した複数のチップを含む電子機器であって、各チップは、後段に位置する他チップから受信したエラーを示すエラー信号、または、自チップで発生したエラーを示すエラー信号を、前段に位置する他チップに伝達する伝達手段と、前記エラーの発生に関する情報をメモリに書き込む書き込み手段と、前記後段に位置する他チップから受信したエラー信号の経路を、前記伝達手段に接続される第一経路と、前記書き込み手段に接続される第二経路との間で切り替える切り替え手段と、を備え、前記切り替え手段は、初期状態においては前記第二経路と接続するように構成されており、前記情報が前記メモリに書き込まれた後に、前記第一経路に接続を切り替えるように構成されていることを特徴とする。
【発明の効果】
【０００８】
本発明によれば、複数のチップを縦列接続した電子機器において、他のチップでエラーが発生した場合のエラーの発生状態を容易に確認することができる。
【図面の簡単な説明】
【０００９】
【図１】記録装置が待機状態にあるときの図である。
【図２】記録装置の制御構成を示すブロック図である。
【図３】コントローラに関する構成を示す図である。
【図４】チップの詳細な構成を示す図である。
【図５】第３チップにてエラーが発生した場合のフローチャートである。
【図６】第２チップにてエラーが発生した場合のフローチャートである。
【発明を実施するための形態】
【００１０】
以下、図面を参照して、本発明の実施形態に係る記録装置について説明する。なお、以下の実施形態は、本発明を限定するものではなく、また、本実施形態で説明されている特徴の組み合わせの全てが本発明の解決手段に必須のものとは限らない。また、本実施形態においては、電子機器として、インクジェット記録装置を、その一例として説明する。
【００１１】
＜記録装置の内部構成＞
図１は、インクジェット記録装置１（以下、記録装置１）の内部構成図である。図において、ｘ方向は水平方向、ｙ方向は後述する記録ヘッド８において吐出口が配列される方向、ｚ方向は鉛直方向をそれぞれ示す。
【００１２】
記録装置１は、プリント部２とスキャナ部３とを備える複合機であり、記録動作と読取動作とに関する様々な処理を、プリント部２とスキャナ部３とで個別にあるいは連動して実行することができる。スキャナ部３は、ＡＤＦ（オートドキュメントフィーダ）とＦＢＳ（フラットベッドスキャナ）とを備えており、ＡＤＦで自動給紙される原稿の読み取りと、ユーザによってＦＢＳの原稿台に置かれた原稿の読み取り（スキャン）とを行うことができる。
【００１３】
なお、ここではプリント部２とスキャナ部３とを併せ持った複合機を示すが、スキャナ部３を備えない形態であっても良い。図１は、記録装置１が記録動作も読取動作も行っていない待機状態にあるときを示す。
【００１４】
プリント部２において、筐体４の鉛直方向下方の底部には、記録媒体（カットシート）Ｓを収容するための第１カセット５Ａと第２カセット５Ｂとが着脱可能に設置されている。
【００１５】
搬送ローラ７、排出ローラ１２、ピンチローラ７ａ、拍車７ｂ、ガイド１８、インナーガイド１９、およびフラッパ１１は、記録媒体Ｓを所定の方向に導くための搬送機構である。搬送ローラ７は、記録ヘッド８の上流側および下流側に配され、不図示の搬送モータによって駆動される駆動ローラである。ピンチローラ７ａは、搬送ローラ７と共に記録媒体Ｓをニップして回転する従動ローラである。排出ローラ１２は、搬送ローラ７の下流側に配され、不図示の搬送モータによって駆動される駆動ローラである。拍車７ｂは、記録ヘッド８の下流側に配される搬送ローラ７及び排出ローラ１２と共に記録媒体Ｓを挟持して搬送する。排出トレイ１３は、記録動作が完了し排出ローラ１２によって排出された記録媒体Ｓを積載保持するためのトレイである。
【００１６】
記録ヘッド８は、フルラインタイプのカラーインクジェット記録ヘッドであり、記録データに従ってインクを吐出する吐出口が、図１におけるｙ方向に沿って記録媒体Ｓの幅に相当する分だけ複数配列されている。記録ヘッド８が待機位置にあるとき、記録ヘッド８の吐出口面８ａは、図１のように鉛直下方を向きキャップユニット１０によってキャップされている。記録動作を行う際は、後述するプリントコントローラ２０２によって、吐出口面８ａがプラテン９と対向するように記録ヘッド８の向きが変更される。プラテン９は、ｙ方向に延在する平板によって構成され、記録ヘッド８によって記録動作が行われる記録媒体Ｓを背面から支持する。
【００１７】
インクタンクユニット１４は、記録ヘッド８へ供給される４色のインクをそれぞれ貯留する。ここで４色のインクとは、シアン（Ｃ）、マゼンダ（Ｍ）、イエロー（Ｙ）、ブラ
ック（Ｋ）のインクを指す。インク供給ユニット１５は、インクタンクユニット１４と記録ヘッド８とを接続する流路の途中に設けられ、記録ヘッド８内のインクの圧力及び流量を適切な範囲に調整する。記録装置１は循環型のインク供給システムを有し、インク供給ユニット１５は、記録ヘッド８へ供給されるインクの圧力と記録ヘッド８から回収されるインクの流量とを適切な範囲に調整する。
【００１８】
メンテナンスユニット１６は、キャップユニット１０とワイピングユニット１７とを備え、所定のタイミングにこれらを作動させて、記録ヘッド８に対するメンテナンス動作を行う。
【００１９】
＜記録装置の制御構成＞
図２は、記録装置１における制御構成を示すブロック図である。記録装置１は、主にプリント部２を統括するプリントエンジンユニット２００と、スキャナ部３を統括するスキャナエンジンユニット３００と、電源ユニット４００と、記録装置１全体を統括するコントローラユニット１００とを備える。プリントコントローラ２０２は、コントローラユニット１００のメインコントローラ１０１の指示に従ってプリントエンジンユニット２００の各種機構を制御する。スキャナエンジンユニット３００の各種機構は、コントローラユニット１００のメインコントローラ１０１によって制御される。以下、制御構成の詳細について説明する。
【００２０】
コントローラユニット１００において、ＣＰＵを含むメインコントローラ１０１は、ＲＯＭ１０７に記憶されているプログラムや各種パラメータに従って、ＲＡＭ１０６をワークエリアとしながら記録装置１全体を制御する。ＲＯＭ１０７は、不揮発性のメモリの例であり、ＲＡＭ１０６は、揮発性のメモリの例である。ホストＩ／Ｆ１０２またはワイヤレスＩ／Ｆ１０３を介してホスト装置５００から印刷ジョブが入力されると、メインコントローラ１０１の指示に従って、画像処理部１０８が、受信した画像データに対して所定の画像処理を施す。メインコントローラ１０１は、プリントエンジンＩ／Ｆ１０５を介して、画像処理を施した画像データをプリントエンジンユニット２００へ送信する。
【００２１】
なお、記録装置１は無線通信や有線通信を介してホスト装置５００から画像データを取得しても良いし、記録装置１に接続された外部記憶装置（ＵＳＢメモリ等）から画像データを取得しても良い。ホスト装置５００から読取コマンドが入力されると、メインコントローラ１０１は、スキャナエンジンＩ／Ｆ１０９を介してこのコマンドをスキャナエンジンユニット３００に送信する。
【００２２】
操作パネル１０４は、ユーザが記録装置１に対して入出力を行うための機構である。ユーザは、操作パネル１０４を介してコピーやスキャン等の動作を指示したり、印刷モードを設定したり、記録装置１の情報を認識したりすることができる。
【００２３】
プリントエンジンユニット２００において、ＣＰＵを含むプリントコントローラ２０２は、ＲＯＭ２０３に記憶されているプログラムや各種パラメータに従って、ＲＡＭ２０４をワークエリアとしながら、プリント部２が備える各種機構を制御する。ＲＯＭ２０３は、不揮発性のメモリの例であり、ＲＡＭ２０４は、揮発性のメモリの例である。コントローラＩ／Ｆ２０１を介して各種コマンドや画像データが受信されると、プリントコントローラ２０２は、これを一旦ＲＡＭ２０４に保存する。記録ヘッド８が記録動作に利用できるように、プリントコントローラ２０２は、画像処理コントローラ２０５に、保存した画像データを記録データへ変換させる。記録データが生成されると、プリントコントローラ２０２は、ヘッド制御コントローラ２１１を経て、ヘッドＩ／Ｆ２０６を介して記録ヘッド８に記録データに基づく記録動作を実行させる。プリントコントローラ２０２の指示に従って、記録媒体Ｓの搬送動作に連動して記録ヘッド８による記録動作が実行され、印刷処理が行われる。
【００２４】
ヘッドキャリッジ制御部２０８は、記録装置１のメンテナンス状態や記録状態といった動作状態に応じて記録ヘッド８の向きや位置を変更する。インク供給制御部２０９は、記録ヘッド８へ供給されるインクの圧力が適切な範囲に収まるように、インク供給ユニット１５を制御する。メンテナンス制御部２１０は、記録ヘッド８に対するメンテナンス動作を行う際に、メンテナンスユニット１６におけるキャップユニット１０やワイピングユニット１７等のクリーニング機構の動作を制御する。
【００２５】
スキャナエンジンユニット３００においては、メインコントローラ１０１が、ＲＯＭ１０７に記憶されているプログラムや各種パラメータに従って、ＲＡＭ１０６をワークエリアとしながら、スキャナコントローラ３０２のハードウェアリソースを制御する。これにより、スキャナ部３が備える各種機構は制御される。例えばコントローラＩ／Ｆ３０１を介してメインコントローラ１０１がスキャナコントローラ３０２内のハードウェアリソースを制御することにより、ユーザによってＡＤＦに搭載された原稿を、搬送制御部３０４を介して搬送し、センサ３０５によって読み取る。そして、スキャナコントローラ３０２は読み取った画像データをＲＡＭ３０３に保存する。なお、プリントコントローラ２０２は、上述のように取得された画像データを記録データに変換することで、記録ヘッド８に、スキャナコントローラ３０２で読み取った画像データに基づく記録動作を実行させることが可能である。
【００２６】
＜複数のチップの接続例＞
図３は、コントローラに関する構成を示す図である。図３は、複数のチップを接続した構成を示している。以下、複数のチップを接続した構成をマルチチップシステムともいう。マルチチップシステムは、外部リセットＩＣ７０１、第１チップ６０１、第２チップ６０２、および第３チップ６０３を有する。その他のチップも含み得るが、ここでは説明を簡便にするため、３つのチップを有するものとして説明する。各チップは縦列接続されている。
【００２７】
第１チップ６０１は、メインコントローラ１０１に相当するメインコントローラチップである。第１チップ６０１は、主にＩ／Ｆ処理や電源制御等のシステム全体を管理するメインチップとしての役割を果たす。第２チップ６０２および第３チップ６０３は、プリントコントローラ２０２及び画像処理コントローラ２０５に相当するプリントコントローラチップである。第２チップ６０２および第３チップ６０３は、それぞれ役割を分担した処理を行う。例えば、第２チップ６０２は、記録ヘッド８の移動、クリーニング動作、インク供給に関するモータ及びセンサの制御、並びに、画像処理の半分の制御を担当する。第３チップ６０３は、記録媒体Ｓを搬送するモータの制御、画像処理の半分の制御、及び、記録ヘッド８へのデータ転送を担当する。
【００２８】
第１チップ６０１、第２チップ６０２、及び第３チップ６０３は、図３に示すように縦列に接続されている。外部リセットＩＣ７０１に接続される第１チップ６０１を前段側（上流側）とする。図３では、第３チップが最後段（最下流）のチップである。各チップは、前段側のチップまたは外部リセットＩＣ７０１によってリセット制御されることが可能となっている。例えば、第１チップ６０１に対しては、外部リセットＩＣ７０１によるリセット制御が行われる。即ち、外部リセットＩＣ７０１から第１チップ６０１に対してリセット制御信号が出力され、このリセット制御信号に基づいて第１チップ６０１がリセットされる。
【００２９】
第２チップ６０２及び第３チップ６０３に対しては、自チップの前段に位置する他チップの汎用のＩＯ端子を用いてリセット制御が行われる。例えば第２チップ６０２に対しては、前段のチップである第１チップ６０１の汎用のＩＯ端子からリセット制御信号が出力され、このリセット制御信号に基づいて第２チップ６０２がリセット制御される。
【００３０】
ここで、前段チップが立ち上がるまでの間（即ち、リセット後に前段チップの汎用ＩＯ端子を制御可能になるまでの間）、前段チップの汎用ＩＯ端子は入力状態になっている。前段チップが立ち上がった後に、前段チップでは、汎用ＩＯ端子が制御可能となり、汎用ＩＯ端子を出力に切り替えて次段チップのリセット制御を行うことが可能となる。
【００３１】
本実施形態では、外部抵抗を用意し、入力状態の前段チップの汎用ＩＯ端子を、出力に切り替えて制御できる状態にするまでの論理レベルを固定している。固定する論理レベルは、前段チップがリセット状態の時に、リセット信号が接続されるチップ（次段チップ）がリセットされる論理レベルとする。こうする事で、例えば、２番目の第２チップ６０２がリセットされた場合、２番目のチップでリセット制御している３番目の第３チップ６０３も自動的にリセットすることが可能となる。即ち、第２チップ６０２がリセットされた場合、そのリセットに応じて、リセット制御に用いられる汎用ＩＯ端子の論理レベルが、次段チップがリセットされる論理レベルに固定され、第３チップ６０３は、この信号を受けて、リセットされることになる。
【００３２】
なお、このように前段側のチップがリセットされた場合に、後段側のチップをリセット可能としている理由は、前段側のチップが後段側のチップを制御している場合があり、前段側で生じた異常が後段側に影響を及ぼすことを避けるためである。本実施形態では、第１チップ６０１がシステム全体を管理しており、その後段側のチップが、第１チップ６０１の制御を受けて記録ヘッド８やモータの制御等を行っている。第１チップ６０１に異常が発生し、後段側のチップを正しく制御ができない状態になった場合、後段側のチップをリセットせずにしておくと、記録ヘッド８やモータの制御状態を保障できなくなる恐れがある。
【００３３】
このように、前段側のチップのリセットに応じて後段側のチップのリセットが行われるので、安全性を保障することは可能である。しかしながら、エラー（異常）が発生した状況を示す情報（以下、エラー情報という）が、リセット処理に起因して適切にメモリに格納されない場合がある。例えば、エラー情報を外部メモリなどに格納する前にリセット処理が開始されてしまう場合がある。この場合、例えば、ユーザやサービスマンは、エラーが発生した状況を把握することができなくなってしまう。以下で示す本実施形態では、エラー情報が把握可能な構成を説明する。
【００３４】
＜チップの詳細構成例＞
図４は、チップの詳細な構成を示す図である。図４では、第２チップ６０２を例に挙げて詳細な構成を説明する。第２チップ６０２は、ＣＰＵ６０４を有する。ＣＰＵ６０４は、外部メモリ６０５に接続される。図４では、第２チップ６０２を例に挙げているが、第１チップ６０１および第３チップ６０３も、図４と同等の構成を有する。即ち、各チップには、それぞれ外部メモリが接続されている。なお、前述した図２は、機能的な構成例を示しているものであり、第３チップ６０３にも、第２チップ６０２の外部メモリ６０５とは異なる別個の外部メモリが接続されている。外部メモリ６０５は、図２のＲＯＭ２０３に相当する。外部メモリ６０５は、ＲＡＭ２０４に相当してもよい。
【００３５】
ウォッチドッグタイマ生成部６０７は、ウォッチドッグタイマ機能によって異常を検知した場合、ＷＤＴ＿ＩＮＴ信号を出力する機能を有する。ウォッチドッグタイマは、例えばクロックをカウントするタイマであり、カウント値をクリアすることは可能であるものの、停止できないタイマであり、所定のタイミングでカウント値がクリアされるものである。異常等によってカウント値がクリアされずにカウント値がオーバーフローした場合、ＷＤＴ＿ＩＮＴ信号が出力される。なお、本実施形態では理解を容易にするため、態様に応じてＷＤＴ＿ＩＮＴ信号（エラー信号）を、ＷＤＴ＿ＩＮＴ外部入力信号と呼んだり、ＷＤＴ＿ＩＮＴ外部出力信号と呼んだりすることがある。なお、本実施形態では、異常等によってカウント値がクリアされずにカウント値がオーバーフローすることをウォッチドッグタイマエラーと呼ぶ。
【００３６】
論理回路６０８は、論理和を演算するＯＲゲートを有する。論理回路６０８は、自チップのウォッチドッグタイマ生成部６０７で生成されるＷＤＴ＿ＩＮＴ信号と、第３チップ６０３から出力され第２チップ６０２へ入力されるＷＤＴ＿ＩＮＴ外部入力信号と、の論理和を演算する。論理回路６０８は、論理和の結果を、第１チップ６０１にＷＤＴ＿ＩＮＴ外部出力信号として出力する。この論理回路６０８から出力される信号を前段の第１チップ６０１へ受け渡していく事で、自身よりも下段に位置するチップで発生したウォッチドッグタイマの割り込み信号ＷＤＴ＿ＩＮＴを、先頭のチップへ供給する事が可能となる。
【００３７】
第３チップ６０３から出力されて第２チップ６０２へ入力されるＷＤＴ＿ＩＮＴ外部入力信号が論理回路６０８に入力される前段には、セレクタ６０９が存在している。セレクタ６０９は、ＷＤＴ＿ＩＮＴ外部入力信号を論理回路６０８に接続する第一経路と、ＷＤＴ＿ＩＮＴ外部入力信号を割り込み制御部６０６に接続する第二経路とを切り替えることができるようになっている。セレクタ６０９は、ＣＰＵ６０４からのセレクタ設定信号（設定値）に応じて経路の切り替えを行う。このセレクタ６０９の設定値の初期状態は‘０’であり、セレクタ６０９は、ＷＤＴ＿ＩＮＴ外部入力信号を割り込み制御部６０６に出力する状態である。セレクタ６０９の設定値が‘１’に設定された場合、セレクタ６０９は、ＷＤＴ＿ＩＮＴ外部入力信号を論理回路６０８に出力する状態となる。
【００３８】
ＣＰＵ６０４は、割り込み制御部６０６から割り込み検出信号を受けると割り込み要因を確認する。また、ＣＰＵ６０４は、外部メモリ６０５への情報の書き込みを行ったりセレクタ６０９の設定を変更するセレクタ設定信号を出力したりする。
【００３９】
＜第３チップ６０３でのウォッチドッグタイマ割り込み発生の場合＞
図５は、３番目に位置する第３チップ６０３でエラーが発生した場合の処理の流れの一例を示す図である。以下、図４および図５を用いて、３番目に位置する第３チップ６０３においてエラーが発生し、ウォッチドッグタイマが動作した場合の例を説明する。
【００４０】
Ｓ３１において第３チップ６０３でウォッチドッグタイマエラーが発生する。ウォッチドッグタイマエラーが発生すると、Ｓ３２において第３チップ６０３は、ＷＤＴ＿ＩＮＴ＃３信号を出力する。Ｓ２１においてＷＤＴ＿ＩＮＴ＃３信号（ＷＤＴ＿ＩＮＴ外部入力信号）が、２番目に位置する第２チップ６０２内のセレクタ６０９に入力される。第３チップ６０３はその後、Ｓ３３においてチップ全体がウォッチドッグタイマ割り込みによってリセットされることで、安全な状態に変化する。自チップで発生したウォッチドッグタイマ割り込みによるリセット処理の詳細については、後述する。
【００４１】
第２チップ６０２では、Ｓ２１において第２チップ６０２内のセレクタ６０９にＷＤＴ＿ＩＮＴ外部入力信号が入力される。セレクタ６０９の設定値の初期値は‘０’のため、セレクタ６０９は、ＷＤＴ＿ＩＮＴ外部入力信号を、割り込み制御部６０６に出力する経路に接続されている状態となっている。このため、ＷＤＴ＿ＩＮＴ外部入力信号は、割り込み制御部６０６に入力される。Ｓ２２において割り込み制御部６０６は、ＷＤＴ＿ＩＮＴ外部入力信号の入力を検出し、ＣＰＵ６０４へ割り込み検出信号を送信する。
【００４２】
Ｓ２３においてＣＰＵ６０４は、割り込み検出信号から、第３チップ６０３からのＷＤＴ＿ＩＮＴ外部入力信号が入力されたことを確認する。ＣＰＵ６０４は、外部メモリ６０５に、第３チップ６０３からＷＤＴ＿ＩＮＴ信号が入力されたという情報、並びに、その時点の第２チップ６０２の各ステータス及びログ情報などを書き込む。具体的には、第２チップ６０２と第３チップ６０３間の通信ログや第２チップ６０２のシーケンスがどこまで進んでいるか等の情報を書き込む。このように、ＣＰＵ６０４は、外部メモリ６０５に、エラーが発生した状況を示すエラー情報を書き込む。なお、エラーが発生した状況を示すのでステータス情報と呼ぶこともある。外部メモリ６０５への書き込みが完了すると、Ｓ２４においてＣＰＵ６０４は、セレクタ設定信号を送信しセレクタ６０９の設定値を‘１’に変更する。ここまでＣＰＵ６０４が担った役割の一部または全てを専用の制御部が担っても良い。
【００４３】
セレクタ６０９の設定値が‘０’の間は、論理回路６０８への信号出力はされない。外部メモリ６０５への書き込み完了後にセレクタ６０９の設定値が‘１’に設定されることで、ＷＤＴ＿ＩＮＴ外部入力信号が論理回路６０８に出力される。このように、本実施形態では、ＣＰＵ６０４がエラー情報を外部メモリ６０５に書き込んだ後に、ＷＤＴ＿ＩＮＴ信号が前段の第１チップ６０１に伝達されるように構成されている。このため、エラー情報の外部メモリ６０５への書き込みが完了する前に、前段の第１チップ６０１の制御によるリセット処理によって自チップ（第２チップ６０２）のリセット処理が動作してしまうことを抑制することができる。
【００４４】
Ｓ２５において論理回路６０８は、第２チップ６０２自身の内部ＷＤＴ＿ＩＮＴ信号とＷＤＴ＿ＩＮＴ外部入力信号との論理和演算された信号を、ＷＤＴ＿ＩＮＴ外部出力信号（ＷＤＴ＿ＩＮＴ＃２信号）として出力する。本例では、ウォッチドッグタイマ割り込みが発生したことを示すＷＤＴ＿ＩＮＴ外部入力信号が入力されるので、ウォッチドッグタイマ割り込みが発生したことを示すＷＤＴ＿ＩＮＴ外部出力信号が論理回路６０８から出力される。論理回路６０８から出力されたＷＤＴ＿ＩＮＴ外部出力信号は、１番目に位置する第１チップ６０１に到達する。それによりシステム全体を管理している第１チップ６０１は、２番目以降のチップで異常が発生していることを認識する。このように、本実施形態においては縦列接続されている後段のチップでエラーが発生した場合、少なくともそのエラーが発生したチップよりも前段のチップ間では、エラーが発生しているチップが存在していることを共有できる。さらに、エラー情報が外部メモリ６０５に書き込まれているので、例えば、後述するようにユーザまたはサービスマン等が、エラーが発生した状況をより詳細に把握することができる。
【００４５】
第１チップ６０１にＷＤＴ＿ＩＮＴ外部出力信号（ＷＤＴ＿ＩＮＴ＃２信号）が入力された後の第１チップ６０１の処理としては、例えば２つのパターンの処理が挙げられる。
【００４６】
第一の例は、第１チップ６０１が２番目以降のチップで異常が発生していることを認識した際、安全を確保するため、プリントコントローラ２０２を含むプリントエンジンユニット２００全体を即座に停止する形態である。この場合、第１チップ６０１は、２番目以降のチップで異常が発生していることを認識した時点で、第２チップ６０２及び第３チップ６０３の電源、並びに、それらの制御下にあるモジュールの電源を遮断する処理を行う。あるいは、第１チップ６０１は、第２チップ６０２及び第３チップ６０３をリセットする制御を行う。ここで、本実施形態で説明した構成を採用していない場合、外部メモリ６０５へのエラー情報の書き込みが行われていない。もしくは、書き込みを行う形態であったとしても、第１チップ６０１からの制御によって書き込みが中断されてしまうため、外部メモリ６０５においてエラー情報が格納されていることが保障できない。一方、本実施形態では、上述したように外部メモリ６０５への書き込みが完了した後に、前段の第１チップ６０１にＷＤＴ＿ＩＮＴ＃２信号を出力している。このため、外部メモリ６０５にエラー情報の書き込みが完了した後に、電源が遮断されたりリセット制御が行われたりすることになる。このため、外部メモリ６０５においてエラー情報が格納されていることを保障することができる。その後は、例えばユーザまたはサービスマン等が、動作確認及び不具合解析のために、遮断した電源を復帰させたりリセット状態からの解除を行ったりする。本例では、第３チップ６０３でウォッチドッグタイマ割り込みが発生したこと、並びに、第２チップ６０２の各ステータスやログ情報などが外部メモリ６０５に格納されている。従って、外部メモリ６０５に格納されているエラー情報を第１チップ６０１が読み出して、サービスマンコール時や製品設計フェーズにおける不具合解析をスムーズに行うことができる。なお、第１チップ６０１は、第２チップ６０２と不図示のチップ間通信を行っており、第１チップ６０１は、チップ間通信を介して第２チップ６０２と接続されている外部メモリ６０５のエラー情報を読み出すことができる。即ち、第１チップ６０１は、第２チップ６０２と接続されている外部メモリ６０５のエラー情報を取得可能に構成されている。この第一の例では、一旦電源が遮断されるので、外部メモリ６０５には、不揮発性メモリ（ＲＯＭ）が用いられることが好ましい。  次に、第二の例を説明する。第二の例は、第１チップ６０１が２番目以降のチップで異常が発生していることを認識した場合、直ちに後段チップの電源遮断又はリセット処理を行わず、第１チップ６０１がウォッチドッグ割り込みの発生個所および状況等を確認する形態である。図５のフローは、第二の例を示している。Ｓ１１において第１チップ６０１は、後段チップからのウォッチドッグの割り込み信号であるＷＤＴ＿ＩＮＴ信号を入力する。Ｓ１２において第１チップ６０１は、後段チップにおいてウォッチドッグタイマエラーが発生したことを検出する。Ｓ１３において第１チップ６０１は、２番目に位置する第２チップ６０２に接続されている外部メモリ６０５内に格納されているエラー情報を読み出す。前述したように、第１チップ６０１は、不図示���チップ間通信を介して第２チップ６０２にされている外部メモリ６０５からエラー情報を読み出す。そして、Ｓ１４において第１チップ６０１は、読み出したエラー情報から、３番目の第３チップ６０３でウォッチドッグタイマ割り込みが発生したことを特定することができる。また、第１チップ６０１は、ウォッチドッグ割り込み発生時の各ステータスおよびログ情報等を読み出すことでエラー発生時の状況を特定することができる。第二の例では、外部メモリ６０５に不揮発性メモリ（ＲＯＭ）が用いられても良いし、揮発性メモリ（ＲＡＭ）が用いられても良い。
【００４７】
第一の例および第二の例は、例えば製品仕様に応じて適した例を用いれば良い。なお、第二の例は、第２チップ６０２と通信が可能な場合を説明している。以下では、第２チップ６０２でエラーが発生した場合、即ち、第１チップ６０１が第２チップ６０２に接続されている外部メモリ６０５からエラー情報を読み出すことができない形態を説明する。なお、第２チップ６０２の処理としてＳ２４においてセレクタ設定値が１に変更されているが、その後の第１チップから第２チップへのリセット制御により第２チップ６０２のセレクタ値は０に戻る。
【００４８】
＜第２チップ６０２でのウォッチドッグタイマ割り込み発生の場合＞
図６は、２番目に位置する第２チップ６０２でエラーが発生した場合の処理の流れの一例を示す図である。以下、図４および図６を用いて、２番目に位置する第２チップ６０２においてエラーが発生し、ウォッチドッグタイマが動作した場合の例を説明する。
【００４９】
Ｓ５１において第２チップ６０２でウォッチドッグタイマエラーが発生する。すると、第２チップ６０２のウォッチドッグタイマ生成部６０７からＷＤＴ＿ＩＮＴ信号（内部）が論理回路６０８に送信される。第２チップ６０２の論理回路６０８は、ＷＤＴ＿ＩＮＴ信号（内部）と、セレクタ６０９から入力されるＷＤＴ＿ＩＮＴ＃３信号（ＷＤＴ＿ＩＮＴ外部入力信号）とを論理和演算する。本例では、ウォッチドッグタイマ割り込みが発生したことをしめすＷＤＴ＿ＩＮＴ信号（内部）が入力されているので、ウォッチドッグタイマ割り込みが発生したことを示すＷＤＴ＿ＩＮＴ外部出力信号が論理回路６０８から出力される。Ｓ５２において第２チップ６０２からＷＤＴ＿ＩＮＴ外部出力信号（ＷＤＴ＿ＩＮＴ＃２信号）が第１チップ６０１に出力される。
【００５０】
Ｓ４１において第１チップ６０１は、ＷＤＴ＿ＩＮＴ＃２信号を受信する。Ｓ４２において第１チップ６０１は、２番目以降のチップでエラーが発生していることを検出する。また、並行してＳ５３において第２チップ６０２は、ウォッチドッグタイマ機能によってチップ全体がリセットされることで、安全な状態に変化する。
【００５１】
以下、第２チップ６０２において、自身のウォッチドッグタイマ機能によって第２チップ６０２がリセットされる詳細を説明する。第２チップ６０２にエラーが発生した場合、ウォッチドッグタイマ生成部６０７から出力されるＷＤＴ＿ＩＮＴ信号（内部）に応じて割り込み制御部６０６から割り込み制御信号がＣＰＵ６０４に出力される。また、ウォッチドッグタイマ生成部６０７から出力されるＷＤＴ＿ＩＮＴ信号（内部）に応じてリセット制御部６１０から第２チップシステムリセット信号がアサートされる。第２チップシステムリセット信号により、ＣＰＵ６０４を含む第２チップ６０２全体がリセットされる。第２チップ６０２がリセットされると、前述したように、第２チップ６０２の汎用ＩＯ端子が入力状態に変化する。このため、汎用ＩＯの一つに割り付けられている第３チップリセット制御信号が入力状態となる。また、この第３チップリセット制御信号は、外部抵抗によりリセット状態に固定される。この第３チップリセット制御信号は、第３チップ６０３のリセット制御部（不図示）に入力される。これにより第３チップ６０３では、第３チップシステムリセット信号がアサートされて第３チップ６０３全体がリセットされる。
【００５２】
このように、Ｓ５３において第２チップ６０２がリセットされると、第２チップ６０２によってリセットの制御を行っている第３チップ６０３もＳ６１においてリセットされる。これにより、第３チップ６０３も安全な状態に変化させることができる。  第１チップ６０１の処理の続きを説明する。即ち、Ｓ４２において第１チップ６０１が、２番目以降のチップでエラーが発生していることを検出した以降の処理を説明する。以降の処理は、前述の第一の例でも第二の例でも、第１チップ６０１は、第２チップ６０２に接続されている外部メモリ６０５に格納されているエラー情報を読み出すことができない点では共通である。例えば、システム全体を即座に停止すべく、電源遮断またはリセット処理が行われる第一の例では、システム再開後に第１チップ６０１が外部メモリ６０５内に格納されているエラー情報を読み出すことができない。これは、第２チップ６０２でエラーが発生した場合には、外部メモリ６０５へ書き込みが行われることなく第２チップ６０２のリセット処理が行われているからである。即ち、外部メモリ６０５にエラー情報が格納されていないからである。また、直ちにシステム全体を停止するのではなく、ウォッチドッグ割り込みの発生個所や状況を先に確認する第二の例でも、第１チップ６０１が外部メモリ６０５内に格納されているエラー情報を読み出すことができない。これは、第１チップ６０１が外部メモリ６０５内に格納されているエラー情報を読み出そうとしても、第２チップ６０２との通信を行うことができないからである。
【００５３】
このように第２チップ６０２にウォッチドッグ割り込みによるリセットが発生した場合、第１チップ６０１は、第２チップ６０２に接続されている外部メモリ６０５に格納されているエラー情報を読み出すことができない。
【００５４】
したがって、Ｓ４２でエラーが発生していることを検出した第１チップ６０１は、Ｓ４３で第２チップ６０２に接続されている外部メモリ６０５に格納されているエラー情報を読み出す処理を行うが、失敗する。ここで、第１チップ６０１と第２チップ６０２間の通信が確立していないために読み出し処理が失敗する。また、第１チップ６０１と第２チップ６０２間の通信が確立していたとしても、そもそも外部メモリ６０５に情報が含まれないため読み出し処理が失敗する。このため、Ｓ４４で第１チップ６０１は、後段チップで発生したウォッチドッグタイマ割り込みは、第２チップ６０２で発生したものであると特定することができる。また第１チップ６０１は、第１チップ６０１と第２チップ６０２間の通信ログ、および、第１チップ６０１のシーケンスがどこまで進んでいるかの情報などを参照することで、ある程度エラー発生時の状況を特定することができる。なお、これらの情報は、第１チップ６０１の外部メモリに保存されている。
【００５５】
このように、本実施形態においては、後段のチップでウォッチドッグタイマ割り込みが発生した場合、または、自チップでウォッチドッグタイマ割り込みが発生した場合に、前段のチップに、後段または自チップで割り込みが発生したことを伝達する。後段のチップでウォッチドッグタイマ割り込みが発生した場合、自チップに接続されている外部メモリにエラー情報を書き込む。書き込みが完了した後に、後段または自チップでウォッチドッグタイマ割り込みが発生したことを前段のチップに伝達する。このような構成によれば、後段に位置するチップのいずれかでウォッチドッグタイマ割り込みが発生した際に、いずれのチップでウォッチドッグタイマ割り込みが発生したかを、前段に位置するチップで特定することができる。また、外部メモリに格納されているウォッチドッグタイマ割り込み発生時のログおよびステータス情報などを読み出すことでエラー発生状況を知ることができる。従って、サービスマンの故障対応時や製品設計フェーズにおける不具合解析をスムーズに行うことができる。
【００５６】
また、エラー原因およびエラー発生時の状況を特定できることから、リセット後の再起動時に状況に応じた設定及びシーケンスを行うことができる。例えば、エラー発生時に記録ヘッド８が、イニシャルポジションでスタンバイ状態であったが、記録媒体Ｓは搬送途中であった場合を想定する。この場合、記録ヘッド８のイニシャル動作は実施せず、搬送部のイニシャル動作のみ実施する、といったシーケンスを実行可能である。
【００５７】
また、エラー原因やエラー発生時の状況を特定できるので、第１チップ６０１は、エラー原因やエラー発生時の状況に基づいて第２チップ６０２をリセットするか否かを切り替える処理を行っても良い。例えば、メインコントローラ１０１はリセットする必要はないが、プリントエンジンユニット２００の全体をリセットする必要がある場合などである。
【００５８】
以上説明した実施形態では、チップが３列に縦列接続される形態を例に挙げて説明したが、これに限られるものではない。４つ以上の縦列接続構成でも適用が可能である。また、メインコントローラ１０１とプリントエンジンユニット２００とのチップを例に挙げて説明したが、スキャナエンジンユニット３００のチップをさらに含む構成としてもよい。また、電子機器として記録装置１を例に挙げて説明したが、これに限られるものではない。複数のチップが縦列接続される構成を備える任意の電子機器を用いることが可能である。
【００５９】
また、以上説明した実施形態では、最前段のチップがシステム全体のリセットを司る形態を例に挙げて説明したが、この限りではない。例えば４つ以上の縦列接続の構成において、最前段から２番目のチップがシステム全体のリセットを司る形態でもよい。また、この場合、すべてのチップが同等の構成でなくても良く、例えばリセットを司らない最前段のチップは、異なる構成でも良い。この場合、形式的には最前段のチップも縦列接続されているものではあるが、その最前段のチップを除いた複数のチップによって縦列接続されているマルチチップシステムが構成されているとみなして良い。最後段のチップについても同様である。
【符号の説明】
【００６０】
６０１  第１チップ
６０２  第２チップ
６０３  第３チップ
６０５  外部メモリ
【図１】
2019164536.tif 000003
【図２】
2019164536.tif 000004
【図３】
2019164536.tif 000005
【図４】
2019164536.tif 000006
【図５】
2019164536.tif 000007
【図６】
2019164536.tif 000008