【手続補正書】
【提出日】平成27年3月13日(2015.3.13)
【手続補正１】
【補正対象書類名】明細書
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【発明の詳細な説明】
【発明の名称】通信装置、及び通信方法
【技術分野】
【０００１】
本発明は、予め定められたインターフェース通信規格に基づき記憶装置と通信してデータ転送を行う通信装置と通信方法に関する。
【背景技術】
【０００２】
複写機やプリンター、ファクシミリなどの画像形成装置は、入力された画像データを圧縮して一時的に記憶装置に保存し、再び記憶装置から読み出された圧縮データを伸張してから、その伸張後の画像データに基づいて画像形成処理を実行する。また、複写機やファクシミリなどに搭載されたスキャナー等の画像読取装置は、読み取られた画像データを圧縮してから記憶装置に保存し、読み出しコマンドが入力されたときに記憶装置から圧縮データを読み出して伸張している。
【０００３】
また、記憶装置としては、ハードディスク記憶装置（以下「ＨＤＤ」という。）が用いられている。ＨＤＤとの間で行われるデータ転送は、ＳＡＴＡ（Serial Advanced Technology Attachment）規格等のインターフェース（以下「Ｉ／Ｆ」という）規格に基づいて行われる。一般に、ＳＡＴＡ規格では、ＨＤＤや接続ポートにエラー（異常）が生じた場合や、転送エラーが生じた場合に、発生したエラー内容や状態などを示すエラーコードを通知することが定められており、複数のエラーコードが用意されている。
【０００４】
ところで、ＨＤＤにエラーが生じていなくても、ＨＤＤを搭載した装置に外部からノイズが印加されることによって、ＨＤＤからの応答信号にビットエラーが生じ、特定のエラーが発生していることを示すエラーコードが通知される場合がある。特に、静電気を貯めやすい記録用紙や原稿などのシート材を取り扱う画像形成装置や画像読取装置などの画像処理装置では、静電気が生じやすいため、静電気によるノイズが通信ケーブルやフレームを伝って各デバイスに印加されやすい。このノイズは転送エラー等の原因となる。
【０００５】
そこで、特許文献１には、１回のシリアル通信で同一データを２回転送し、１回目と２回目のデータを比較してデータ通信が正常に行われたか否かを判断するシステムについて記載されている。また、特許文献２には、ノイズ検出回路がノイズを検出すると、ＳＡＴＡ−Ｉ／Ｆは通信異常が発生したとしてデータ通信をリセットする装置について記載されている。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２０００−４１０５７号公報
【特許文献２】特開２００８−１２３０５９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかし、特許文献１の場合、データ通信が正常に行われているか否かを判断するタイミングが１回目と２回目のデータ転送後のみであり、データ転送完了後にしか通信が正常に行われたか否かを判断できない。つまり、異常発生を検知するまでに時間がかかる。また、特許文献２の場合、ノイズ検出回路が必要となるためコストがかかる。更にＳＡＴＡ−Ｉ／Ｆ上のノイズ検出ができる位置に検出回路を設置しなければならず、基板構成上の制約が発生してしまう。
【０００８】
本発明は、上記の問題を解決するためになされたもので、ＳＡＴＡ−Ｉ／Ｆが受信したエラー情報を用いてノイズ検知をすると共に、その後のデータ再転送を迅速に行うことを目的とする。
【課題を解決するための手段】
【０００９】
本発明の一局面に係る通信装置は、予め定められたインターフェース通信規格に基づき記憶装置と通信してデータ転送を行う第１通信部と、前記インターフェース通信規格以外の方法で外部装置と通信してデータ送信を行う第２通信部と、前記インターフェース通信規格で定められたエラーコードのうち、ノイズによるビットエラーを発生させるとして予め定められた選択エラーコードを記憶する記憶部と、前記第１通信部が前記記憶装置からエラー情報を受信した際、当該エラー情報が示すエラーコードと前記選択エラーコードとが一致するか否かを判定する判定部と、前記判定部が一致すると判定した場合、前記第１通信部及び前記第２通信部に対してデータ転送の中止とデータ再転送を指示する制御部と、を備えたものである。
【００１０】
また、本発明における通信方法は、予め定められたインターフェース通信規格に基づき記憶装置と通信してデータ転送を行う通信ステップと、前記第１通信ステップの後に前記記憶装置からエラー情報が出力された場合、当該エラー情報が示すエラーコードと前記インターフェース通信規格で定められたエラーコードのうち、ノイズによるビットエラーを発生させるとして予め定められた選択エラーコードと一致するか否かを判定する判定ステップと、前記判定ステップにおいて一致すると判定された場合、前記インターフェース通信規格に基づいた通信と当該インターフェース通信規格以外の通信のデータ転送を中止させ、その後データを再転送させる再転送ステップと、を含むものである。
【発明の効果】
【００１１】
本発明では、記憶装置から送信されたエラー情報の示すエラーコードがノイズによるビットエラーを発生させるとして予め定められた選択エラーコードである場合、制御部は第１通信部及び第２通信部に対してデータ転送の一旦中止及び再転送を指示することで、タイムアウトを待たずにデータ再転送を行わせることができる。つまり、データ転送終了までの時間を短縮することができる。更に、本発明は、上記通信規格で定められたエラー情報を用いてノイズを検出するため、ノイズ検出回路等を設けなくてもノイズ検知ができ、その分のコストを削減できる。
【図面の簡単な説明】
【００１２】
【図１】画像形成装置の構造を示す正面断面図である。
【図２】画像形成装置の主要内部構成を示す機能ブロック図である。
【図３】ＰｘＳＥＲＲレジスタのデータ構成の一部を示した図である。
【図４】エラー処理の流れを示したフローチャートである。
【図５】データ転送について説明するための図であり、（Ａ）はエラー不発生の場合を示す図、（Ｂ）はエラー後にタイムアウトを待ってデータ再転送を行う場合を示す図、（Ｃ）は本発明の一実施形態に係るエラー処理を用いてデータ転送を行う場合を示す図である。
【発明を実施するための形態】
【００１３】
以下、本発明の一実施形態に係る通信装置、及び通信方法について図面を参照して説明する。図１は、本実施の形態における画像形成装置１の構造を示す正面断面図である。
【００１４】
通信装置の一例である画像形成装置１は、例えば、コピー機、プリンター、スキャナー及びファクシミリ等であってもよいし、これらの機能を備えた複合機であってもよい。画像形成装置１は、装置本体１１に、操作部４７、画像形成部１２、定着部１３、給紙部１４、原稿給送部６及び画像読取部５等を備えて構成されている。
【００１５】
操作部４７は、画像形成装置１が実行可能な各種動作及び処理について操作者から画像形成動作実行指示や原稿読取動作実行指示等の指示を受け付ける。操作部４７は、操作者への操作案内等を表示する表示部４７３を備えている。
【００１６】
画像形成装置１が原稿読取動作を行う場合、原稿給送部６により給送されてくる原稿、又は原稿載置ガラス１６１に載置された原稿の画像を画像読取部５が光学的に読み取り、画像データを生成する。画像読取部５により生成された画像データはＨＤＤ等に保存される。
【００１７】
画像形成装置１が画像形成動作を行う場合は、上記原稿読取動作により生成された画像データ又はＨＤＤに記憶されている画像データ等に基づいて、画像形成部１２が、給紙部１４から給紙される記録媒体としての記録紙Ｐにトナー像を形成する。カラー印刷を行う場合、画像形成部１２のマゼンタ用の画像形成ユニット１２Ｍ、シアン用の画像形成ユニット１２Ｃ、イエロー用の画像形成ユニット１２Ｙ及びブラック用の画像形成ユニット１２Ｂｋは、それぞれに、上記画像データを構成するそれぞれの色成分からなる画像に基づいて、帯電、露光及び現像の工程により感光体ドラム１２１上にトナー像を形成し、そのトナー像を一次転写ローラー１２６により中間転写ベルト１２５上に転写させる。
【００１８】
中間転写ベルト１２５上に転写される上記各色のトナー画像は、転写タイミングを調整して中間転写ベルト１２５上で重ね合わされ、カラーのトナー像となる。二次転写ローラー２１０は、中間転写ベルト１２５の表面に形成されたカラーのトナー像を、中間転写ベルト１２５を挟んで駆動ローラー１２５ａとのニップ部Ｎにおいて、給紙部１４から搬送路１９０を搬送されてきた記録紙Ｐに転写させる。この後、定着部１３が、記録紙Ｐ上のトナー像を、熱圧着により記録紙Ｐに定着させる。定着処理の完了したカラー画像形成済みの記録紙Ｐは、排出トレイ１５１に排出される。
【００１９】
給紙部１４は、複数の給紙カセットを備える。そして後述する制御ユニットが、操作者による指示で指定されたサイズの記録紙が収容された給紙カセットのピックアップローラー１４５を回転駆動させて、各給紙カセットに収容されている記録紙Ｐをニップ部Ｎに向けて搬送させる。
【００２０】
尚、画像形成装置１において、両面印刷を行う場合は、画像形成部１２より一方の面に画像が形成された記録紙Ｐを、排出ローラー対１５９にニップされた状態とした後、記録紙Ｐを排出ローラー対１５９によりスイッチバックさせて反転搬送路１９５に送り、搬送ローラー対１９により、ニップ部Ｎ及び定着部１３に対して記録紙Ｐの搬送方向上流域に再度搬送する。これにより、画像形成部１２により記録紙の他方の面に画像が形成される。
【００２１】
図２は、画像形成装置１の主要内部構成を示す機能ブロック図である。画像形成装置１は、制御ユニット３１（通信装置）、操作部４７、原稿給送部６、画像読取部５、画像形成部１２、給紙部１４及び記憶装置３２等を備える。以下、図１において説明した構成要素については同じ符号を付し、説明を省略する。
【００２２】
記憶装置３２は、画像読取部５によって読み取られた原稿画像等を記憶する大容量の記憶装置で、ＳＡＴＡ規格に準拠した不揮発性記憶装置であり、磁気ディスク装置あるいは光ディスク装置である。もちろん、その他の方式の記録媒体を備えた装置であってもよい。なお、本実施形態では、記憶装置として記憶装置３２を例示するが、ＳＡＴＡ規格による通信によって画像データなどが読み書きされるものであれば、記憶装置３２に代えて、メモリカード、ＣＤ（Compact Disk）ドライブ、ＤＶＤ（Digital Video Disk）ドライブ等の記憶装置を適用してもかまわない。
【００２３】
制御ユニット３１は、ＣＰＵ(Central Processing Unit)３１１（判定部、制御部）、メモリー３１２（記憶部）、インターフェース回路（以下「Ｉ／Ｆ」という）４１（第２通信部）及びＳＡＴＡ−Ｉ／Ｆ４２（第１通信部）等から構成される。ＣＰＵ３１１は、メモリー３１２に記憶された各種プログラムを読み出して処理を実行し、各機能部への指示信号の出力、データ転送等を行って画像形成装置１を統括的に制御する。
【００２４】
Ｉ／Ｆ４１は、ＳＡＴＡ規格以外の通信を行うためのインターフェース回路である。ＳＡＴＡ規格以外の通信とは、シリアル通信又はパラレル通信であり、データ転送中に送信されるエラー情報からノイズが発生したことを検知できない通信規格とする。例えば、制御ユニット３１と操作部４７、原稿給送部６、画像読取部５、画像形成部１２及び給紙部１４の間のデータ通信はシリアル通信が用いられ、本実施の形態ではＩ／Ｆ４１はシリアルＩ／Ｆとする。
【００２５】
ＳＡＴＡ−Ｉ／Ｆ４２は、ＳＡＴＡ規格に基づいたインターフェース回路であり、制御ユニット３１と記憶装置３２はＳＡＴＡ規格に基づいた通信を行う。また、ＳＡＴＡ規格通信は、データ転送中に送信されるエラー情報からノイズが発生したことを検知できる規格である。
【００２６】
メモリー３１２には、各種プログラムの他に、記憶装置３２との接続ポートにおけるＳＡＴＡ通信に関するエラーの詳細なステータスを示したＰｘＳＥＲＲ（Port x Serial ATA Error）レジスタが記憶されている。図３は、ＰｘＳＥＲＲレジスタのデータ構成の一部を示した図である。
【００２７】
図３に示したエラーコードは、エラーの内容と、ビット番号とを組み合わせたものであり、例えばＰｘＳＥＲＲ＃２１と表される。また、エラーコードのエラー状態を示すエラー情報は、エラーの内容と、ビット番号と、エラー内容の状態を示す１ビット情報とを組み合わせたものである。つまり、エラー情報は、エラーコードに１ビット情報が加えられたものである。
【００２８】
例えば、１ビット情報の部分の情報が「０」の場合はエラー状態ではなく正常であることを示し、「１」の場合はエラー状態であることを示す。本実施の形態では、ＰｘＳＥＲＲ＃２１、ＰｘＳＥＲＲ＃１９及びＰｘＳＥＲＲ＃１６が選択エラーコードに設定されており、メモリー３１２に記憶されている。本願出願人が画像形成装置１に対する静電気によるノイズ実験を繰り返し行った結果、静電気が記憶装置３２に伝わったときにビットエラーが生じて、エラー状態を示す前記１ビット情報が書き換えられ、上記各エラーコード（ＰｘＳＥＲＲ＃２１、ＰｘＳＥＲＲ＃１９及びＰｘＳＥＲＲ＃１６）が発生することが判明している。
【００２９】
ここで、ＰｘＳＥＲＲ＃２１のＣＲＣ  Ｅｒｒｏｒは、画像データが転送される１単位であるフレーム（パケットと呼ばれている。）の誤り検出方法である巡回冗長検査（CRC：Cyclic Redundancy Check）におけるエラーである。このエラーを伴うフレームを受け取った記憶装置３２は、そのフレームを破棄する。また、ＰｘＳＥＲＲ＃１９の１０Ｂ−ｔｏ−８Ｂ  Ｄｅｃｏｄｅ  ＥＲＲＯＲは、１０ビットから８ビットへの符号化のエラーである。また、ＰｘＳＥＲＲ＃１６のＰＨＹＲＤＹ  Ｃｈａｎｇｅは、記憶装置３２が読み書き可能な準備状態であることを示すＰＨＹＲＤＹ状態（physical layer ready state）に変化があることをエラーとするものである。
【００３０】
次に、ＣＰＵ３１１が実行するエラー処理の一例について説明する。図４は、本実施の形態におけるエラー処理の流れを示したフローチャートである。
【００３１】
まず、ＣＰＵ３１１は、記憶装置３２に対してＳＡＴＡ規格に基づくデータ転送を行う場合に、データ転送に先駆けて記憶装置３２との間で通信を確立する初期処理を行う。その後、通信が確立したのちに、データの転送処理が行われる。
【００３２】
このデータ転送の最中に、ＳＡＴＡ−Ｉ／Ｆ４２がエラー情報を受信したことをＣＰＵ３１１が検知したとき、ＣＰＵ３１１はエラーコードがＰｘＩＳの＃２６〜＃２９の何れかであるかどうかを判定する（ステップＳ１１）。ＰｘＩＳは記憶装置３２とＳＡＴＡ−Ｉ／Ｆ４２の接続ポートにおける割り込みステータス（Port x Interrupt Status）を示すものである。ここで、エラーコードがＰｘＩＳの＃２６〜＃３０の何れでもない場合（ステップＳ１１；ＮＯ）、ＣＰＵ３１１はこのエラー処理を終了する。
【００３３】
エラーコードがＰｘＩＳの＃２６〜＃２９の何れかである場合（ステップＳ１１；ＹＥＳ）、ＣＰＵ３１はエラーコードがＰｘＳＥＲＲ＃２１であるかどうかを判定する（ステップＳ１２）。エラーコードがＰｘＳＥＲＲ＃２１でない場合（ステップＳ１２；ＮＯ）、ＣＰＵ３１はエラーコードがＰｘＳＥＲＲ＃１９であるかどうかを判定する（ステップＳ１３）。エラーコードがＰｘＳＥＲＲ＃１９でない場合（ステップＳ１３；ＮＯ）、ＣＰＵ３１はエラーコードがＰｘＳＥＲＲ＃１６であるかどうかを判定する（ステップＳ１４）。つまり、ＣＰＵ３１１は、エラーコードが、ノイズによるビットエラーを発生させるとして予め定められた選択エラーコードであるＰｘＳＥＲＲ＃２１、ＰｘＳＥＲＲ＃１９又はＰｘＳＥＲＲ＃１６であるかどうかを判定する。
【００３４】
受信したエラーコードが上記３つのエラーコードではない場合（ステップＳ１２〜Ｓ１４において全てＮＯ）、つまり、記憶装置３２から送信されたエラーコードと３つの選択エラーコードとが不一致である場合、エラーの原因はノイズではないため別の対処を行う。
【００３５】
エラーコードの何れかが３つの選択エラーコードである場合（ステップＳ１２〜Ｓ１４の何れかにおいてＹＥＳ）、ノイズによるビットエラーであるとして、ＣＰＵ３１１はシリアルＩ／Ｆ４１に対してデータ転送の中止と再転送を指示する（ステップＳ１５）。その後、エラー回復処理を実行する（ステップＳ１６）。
【００３６】
エラー回復処理について説明する。ＣＰＵ３１は、ＳＡＴＡ−Ｉ／Ｆ４２と記憶装置３２との間の通信を一旦切断させてから再び初期処理を行って記憶装置３２との通信を確立するエラー回復処理を行う。但し、エラー回復処理は、これに限定されない。例えば、記憶装置３２からエラーコードが通知されたことによって記憶装置３２へのアクセス許可が失われたり、アクセスが制限されたりした場合は、そのアクセス権を回復させる処理もエラー回復処理となる。
【００３７】
図５は、データ転送について説明するための図であり、（Ａ）はエラー不発生の場合を示す図、（Ｂ）はエラー後にタイムアウトを待ってデータ再転送を行う場合を示す図、（Ｃ）は本発明の一実施形態に係るエラー処理を用いてデータ転送を行う場合を示す図である。
【００３８】
まず、予め定められたデータ量のデータ転送を行い、転送中にエラーが発生しなかった場合（図５（Ａ））、転送準備から転送終了まで時間Ｔ１かかるとする。そして、図５（Ｂ）は同じデータの転送中に何らかの通信障害が起こった場合を示している。通常なら転送準備から転送終了まで上記時間Ｔ１で済むが、何らかの問題が発生して時間Ｔ１から予め定められた時間が過ぎてもデータ転送が終わらない場合、ＣＰＵ３１はタイムアウトを検知してから、Ｉ／Ｆ４１に対して転送を一旦中止させるリセット処理を行わせる。その後、再び転送準備とデータ転送を行わせる。
【００３９】
図５（Ｃ）は、本発明を適用した場合を示している。データ転送中、ＳＡＴＡ−Ｉ／Ｆ４２がエラー情報を受信し、そのエラー情報の示すエラーコードがＰｘＩＳの＃１６、＃１９或いは＃２１の何れかである場合、ＣＰＵ３１はノイズが発生したと判断し、Ｉ／Ｆ４１に対して転送を一旦中止させるリセット処理を行わせる。その後、再び転送準備とデータ転送を行わせる。つまり、ＳＡＴＡ−Ｉ／Ｆ４２からのエラー情報からノイズが発生したとＣＰＵ３１が判断した場合、ＣＰＵ３１１は転送中の処理を一旦中止させた後、Ｉ／Ｆ４１に実際にノイズが発生したかしないかにかかわらず、データ再転送を行わせる。
【００４０】
ＳＡＴＡ−Ｉ／Ｆ４２のエラー情報からはＩ／Ｆ４１にノイズが発生したかは不明である。しかし、Ｉ／Ｆ４１にもノイズが発生した可能性は高く、放置しておくと図５（Ｂ）のようにタイムアウトまで転送エラーを検知することができず、データ転送終了までに時間がかかってしまう。そこで、本実施形態では、ＳＡＴＡ−Ｉ／Ｆ４２が受けたエラー情報を、制御ユニット３１が有する全てのＩ／Ｆのノイズ検知に利用する。こうすることで、データ転送のタイムアウトを待たずにデータ再転送を開始することができるため、データ転送終了までにかかる時間を短縮することができる。
【００４１】
以上、説明したように、記憶装置３２から送信されたエラーコードがノイズによるビットエラーを生じさせるとして予め定められているエラーコード、例えばＰｘＳＥＲＲ＃１６、＃１９或いは＃２１である場合、ＣＰＵ３１はＩ／Ｆ４１に対してデータ転送の一旦中止及び再転送を指示することで、タイムアウトを待たずにデータ再転送を行わせることができる。つまり、データ転送終了までの時間を短縮することができる。
【００４２】
更に、ＳＡＴＡ−Ｉ／Ｆ４２のエラー情報を用いることで、ノイズ検出回路等を設けなくても、Ｉ／Ｆ４１におけるノイズ検知ができるため、その分のコストを削減できる。
【００４３】
また、上述の実施形態では、静電気などのノイズによってビットエラーを生じるエラーコードをＰｘＳＥＲＲ＃２１、ＰｘＳＥＲＲ＃１９及びＰｘＳＥＲＲ＃１６に特定した例を説明したが、この例は、画像形成装置１に対して静電気によるノイズ実験した場合の例であり、上記３つのエラーコードに限られない。
【００４４】
また、上述の実施形態では、本発明を、画像形成装置１に適用される例について説明したが、画像データを処理するスキャナーなどの画像読取装置やプリンターなどの画像形成装置に代表される画像処理装置、或いは種々のデータを処理するコンピューターなどの通信装置又は情報処理装置にも本発明は適用可能である。
【符号の説明】
【００４５】
１      画像形成装置
１２    画像形成部
１４    給紙部
３１    制御ユニット
３１１  ＣＰＵ
３１２  メモリー
３２    ＨＤＤ
４１    Ｉ／Ｆ
４２    ＳＡＴＡ−Ｉ／Ｆ
４７    操作部
４７３  表示部
５      画像読取部
６      原稿給送部
【手続補正２】
【補正対象書類名】図面
【補正対象項目名】図３
【補正方法】変更
【補正の内容】
【図３】
2015046050.tif 000001