(57)【要約】【課題】ＰＣＩバスを使用したデータ転送時にデータエラーが発生した場合に、即システムダウンをすることなくまたシステムダウン時間を最少にしつつリアルタイムなデータ転送を実現すること。【解決手段】マスターライト（又はターゲットリード）時には、現在の転送データから数ワード前までのデータを常に保持し、エラー検出時にはエラー発生アドレス及びエラー発生後に転送したデータをＣＰＵ２０からアクセス可能に構成する。ＣＰＵ２０がエラー発生後にシステムＲＡＭ２５に書き込まれたデータを書き換えて、未転送のデータのアドレスを指定アドレスとしてリスタートさせる。また、マスターリード（又はターゲットライト）時には、デバイス側ＰＣＩコントローラ１１がエラー検出時にエラー発生アドレスをセーブし、ＣＰＵ２０がエラー発生アドレスを指定アドレスとしてリスタートさせる。【選択図】　　　図８
2004062619.tif 000002
【特許請求の範囲】
【請求項１】
ＰＣＩバスを介して接続された制御手段と、ＰＣＩコントローラと、前記制御手段に接続されたメモリと、前記ＰＣＩコントローラに接続されたデバイスとを具備し、
前記デバイスから前記メモリの指定アドレスへデータを書込む場合に、
前記制御手段は、前記デバイス側ＰＣＩコントローラに前記指定アドレスを通知してデータ転送をスタートさせ、
前記デバイス側ＰＣＩコントローラは、前記デバイスから前記メモリの指定アドレスへのデータ転送を開始し、データ転送中は所定数ワード前までの転送済みデータを常に保持し、ＰＣＩバス上の信号からエラーを検出した場合に、前記保持している転送済みデータをセーブすると共にエラー発生アドレスをセーブしてエラー割り込み信号を発生し、リスタートされるまで転送を中止し、
前記制御手段は、前記エラー割り込み信号を受けた場合に、前記デバイス側ＰＣＩコントローラがセーブしたエラー発生アドレス及び前記転送済みデータを取得して前記メモリの該当アドレスのデータを書換え、前記デバイス側ＰＣＩコントローラへ前記転送済みデータの次アドレスを指定アドレスとしてリスタートさせることを特徴とするＰＣＩバス制御装置。
【請求項２】
ＰＣＩバスを介して接続された制御手段と、ＰＣＩコントローラと、前記制御手段に接続されたメモリと、前記ＰＣＩコントローラに接続されたデバイスとを具備し、
前記メモリの指定アドレスから前記デバイスへデータを読込む場合に、
前記制御手段は、前記デバイス側ＰＣＩコントローラに前記メモリの指定アドレスを通知してデータ転送をスタートさせ、
前記デバイス側ＰＣＩコントローラは、前記メモリの指定アドレスから前記デバイスへのデータ転送を開始し、ＰＣＩバス上の信号からエラーを検出した場合に、エラー発生アドレスをセーブしてエラー割り込み信号を発生し、リスタートされるまで転送を中止し、
前記制御手段は、前記エラー割り込み信号を受けた場合に、前記デバイス側ＰＣＩコントローラがセーブしたエラー発生アドレスを取得し、当該エラー発生アドレスを指定アドレスとしてリスタートさせて、エラー発生アドレスから引き続きデータを転送させることを特徴とするＰＣＩバス制御装置。
【請求項３】
ＰＣＩバスを介して接続された制御手段と、ＰＣＩコントローラと、前記制御手段に接続されたメモリと、前記ＰＣＩコントローラに接続されたデバイスとを具備し、
前記デバイスから前記メモリの指定アドレスへデータを書込む場合に、
前記制御手段は、前記デバイス側ＰＣＩコントローラに前記指定アドレスを通知してデータ転送をスタートさせ、
前記デバイス側ＰＣＩコントローラは、前記デバイスから前記メモリの指定アドレスへのデータ転送を開始し、データ転送中は所定数ワード前までの転送済みデータを常に保持し、ＰＣＩバス上の信号からエラーを検出した場合に、前記保持している転送済みデータをセーブすると共にエラー発生アドレスをセーブしてエラー割り込み信号を発生し、リスタートされるまで転送を中止し、
前記制御手段は、前記エラー割り込み信号を受けた場合に、前記デバイス側ＰＣＩコントローラがセーブしたエラー発生アドレス及び前記転送済みデータを取得して前記メモリの該当アドレスのデータを書換え、前記デバイス側ＰＣＩコントローラへ前記転送済みデータの次アドレスを指定アドレスとしてリスタートさせることを特徴とする画像通信装置。
【請求項４】
ＰＣＩバスを介して接続された制御手段と、ＰＣＩコントローラと、前記制御手段に接続されたメモリと、前記ＰＣＩコントローラに接続されたデバイスとを具備し、
前記メモリの指定アドレスから前記デバイスへデータを読込む場合に、
前記制御手段は、前記デバイス側ＰＣＩコントローラに前記メモリの指定アドレスを通知してデータ転送をスタートさせ、
前記デバイス側ＰＣＩコントローラは、前記メモリの指定アドレスから前記デバイスへのデータ転送を開始し、ＰＣＩバス上の信号からエラーを検出した場合に、エラー発生アドレスをセーブしてエラー割り込み信号を発生し、リスタートされるまで転送を中止し、
前記制御手段は、前記エラー割り込み信号を受けた場合に、前記デバイス側ＰＣＩコントローラがセーブしたエラー発生アドレスを取得し、当該エラー発生アドレスを指定アドレスとしてリスタートさせて、エラー発生アドレスから引き続きデータを転送させることを特徴とする画像通信装置。
【請求項５】
ＰＣＩバスを介して接続された制御手段と、ＰＣＩコントローラと、前記制御手段に接続されたメモリと、前記ＰＣＩコントローラに接続されたデバイスとを具備し、
前記デバイスから前記メモリの指定アドレスへデータを書込む場合に、
前記制御手段は、前記デバイス側ＰＣＩコントローラに前記指定アドレスを通知してデータ転送をスタートさせ、
前記デバイス側ＰＣＩコントローラは、前記デバイスから前記メモリの指定アドレスへのデータ転送を開始し、データ転送中は所定数ワード前までの転送済みデータを常に保持し、ＰＣＩバス上の信号からエラーを検出した場合に、前記保持している転送済みデータをセーブすると共にエラー発生アドレスをセーブしてエラー割り込み信号を発生し、リスタートされるまで転送を中止し、
前記制御手段は、前記エラー割り込み信号を受けた場合に、前記デバイス側ＰＣＩコントローラがセーブしたエラー発生アドレス及び前記転送済みデータを取得して前記メモリの該当アドレスのデータを書換え、前記デバイス側ＰＣＩコントローラへ前記転送済みデータの次アドレスを指定アドレスとしてリスタートさせることを特徴とするデジタル複写機。
【請求項６】
ＰＣＩバスを介して接続された制御手段と、ＰＣＩコントローラと、前記制御手段に接続されたメモリと、前記ＰＣＩコントローラに接続されたデバイスとを具備し、
前記メモリの指定アドレスから前記デバイスへデータを読込む場合に、
前記制御手段は、前記デバイス側ＰＣＩコントローラに前記メモリの指定アドレスを通知してデータ転送をスタートさせ、
前記デバイス側ＰＣＩコントローラは、前記メモリの指定アドレスから前記デバイスへのデータ転送を開始し、ＰＣＩバス上の信号からエラーを検出した場合に、エラー発生アドレスをセーブしてエラー割り込み信号を発生し、リスタートされるまで転送を中止し、
前記制御手段は、前記エラー割り込み信号を受けた場合に、前記デバイス側ＰＣＩコントローラがセーブしたエラー発生アドレスを取得し、当該エラー発生アドレスを指定アドレスとしてリスタートさせて、エラー発生アドレスから引き続きデータを転送させることを特徴とするデジタル複写機。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、エラー回復処理を行うＰＣＩバス制御装置およびこれを備えた画像通信装置ならびにデジタル複写機に関するものである。
【０００２】
【従来の技術】
従来、画像通信装置ならびにデジタル複写機に使用されるシステムバスとしては、ＩＳＡ（Ｉｎｄｕｓｔｒｙ　　Ｓｔａｎｄａｒｄ　　Ａｒｃｈｉｔｅｃｔｕｒｅ）バスやＥＩＳＡ（Ｅｘｔｅｎｄｅｄ　　ＩＳＡ）バスが主流であったが、最近ではデータ転送速度の高速化やプロセッサに依存しないシステムアーキテクチャの構築のためにＰＣＩ（Ｐｅｒｉｐｈｅｒａｌ　Ｃｏｍｐｏｎｅｎｔ　Ｉｎｔｅｒｃｏｎｎｅｃｔ）バスが採用されている。
【０００３】
ＰＣＩバスシステムにおいては、全てのデータ転送はブロック転送を基本としており、これら各ブロック転送はバースト転送を用いて実現されている。これにより、ＰＣＩバスでは、例えば最大１３３Ｍバイト／秒（バスのクロック周波数＝３３ＭＨＺ、データバス幅＝３２ビットの時）のデータ転送速度を実現できる。したがって、ＰＣＩバスを採用すると、Ｉ／Ｏデバイス間、およびシステムメモリとＩ／Ｏデバイスとの間のデータ転送などを高速に行うことが可能となり、システム性能を高めることができる。
【０００４】
かかる、ＰＣＩバスシステムは、一般的にメモリとデバイス間で転送されるデータの異常を検出するためパリティチェック等を行うチェック機能とエラー検出時の障害処理機能とを有している。そして、ＰＣＩバスでエラーが発生した場合は次のように対応していた。
【０００５】
▲１▼エラー発生時、ＮＭＩ（＝マスク不可能）割り込みを発生させシステムをリセットする。
【０００６】
▲２▼ＲＡＭなどのメモリに保存されたデータは先頭データから（何処でエラーが発生したか分からない為）再実行して回復させる。
【０００７】
【発明が解決しようとする課題】
しかし、かかる従来の技術では、ＰＣＩバスを使用したデータ転送時にデータエラーが発生した場合に以下の問題が発生していた。
【０００８】
▲１▼システムをリセットすると、即座にシステムダウンしてしまう為、システム運用に重大な支障を発生させる。
【０００９】
▲２▼ＲＡＭなどのメモリに保存されたデータを先頭データから再実行して回復させると、回復するために余計な時間が必要となる。
【００１０】
▲３▼さらに上記対策では、ＣＯＤＥＣのようにリアルタイムに処理される符号データにエラーが発生した場合、エラー発生したデータから回復処理させ、続くデータも正確に連続させる必要があるが、これに対応できない。
【００１１】
そこで、本発明は、上記課題を鑑みてなされたもので、ＰＣＩバスを使用したデータ転送時にデータエラーが発生した場合に、即システムダウンをすることなくまたシステムダウン時間を最少にしつつリアルタイムなデータ転送を実現するＰＣＩバス制御装置およびこれを備えた画像通信装置ならびにデジタル複写機を提供することを目的とする。
【００１２】
【課題を解決するための手段】
上記課題を解決するために、本発明のＰＣＩバス制御装置は、デバイスからメモリへデータ転送するマスターライト（又はターゲットリード）時には、現在の転送データから数ワード前までのデータを常に保持し、エラー検出時にはデータ転送を中断してエラー発生アドレス及びエラー発生後に転送したデータをシステム側のＣＰＵからアクセス可能に構成し、ＣＰＵがエラー発生後にメモリに書き込まれたデータを書き換えて、未転送データのアドレスを指定アドレスとしてリスタートさせる。
【００１３】
また、本発明のＰＣＩバス制御装置は、メモリからデバイスへデータ転送するマスターリード（又はターゲットライト）時には、エラー検出時にはデータ転送を中断してエラー発生アドレスをセーブしシステム側のＣＰＵからアクセス可能に構成し、ＣＰＵがエラー発生アドレスを指定アドレスとしてリスタートさせる。
【００１４】
【発明の実施の形態】
本発明の第１の態様は、ＰＣＩバスを介して接続された制御手段とＰＣＩコントローラと、前記制御手段に接続されたメモリと、前記ＰＣＩコントローラに接続されたデバイスとを具備し、前記デバイスから前記メモリの指定アドレスへデータを書込む場合に、前記制御手段は、前記デバイス側ＰＣＩコントローラに前記指定アドレスを通知してデータ転送をスタートさせ、前記デバイス側ＰＣＩコントローラは、前記デバイスから前記メモリの指定アドレスへのデータ転送を開始し、データ転送中は所定数ワード前までの転送済みデータを常に保持し、ＰＣＩバス上の信号からエラーを検出した場合に、前記保持している転送済みデータをセーブすると共にエラー発生アドレスをセーブしてエラー割り込み信号を発生し、リスタートされるまで転送を中止し、前記制御手段は、前記エラー割り込み信号を受けた場合に、前記デバイス側ＰＣＩコントローラがセーブしたエラー発生アドレス及び前記転送済みデータを取得して前記メモリの該当アドレスのデータを書換え、前記デバイス側ＰＣＩコントローラへ前記転送済みデータの次アドレスを指定アドレスとしてリスタートさせることを特徴とするＰＣＩバス制御装置である。
【００１５】
これによると、ＰＣＩバスを使用してデバイスからメモリへデータを書込む際に、データエラーが発生した場合は、即座にシステムをリセットしてシステムをダウンさせることなく、またＲＡＭなどのメモリに保存されたエラー発生データのみ再書込みして回復させ、引き続き未転送の先頭データから正確に書込みを連続させることができるので、ＰＣＩバスを使用したデータ転送時にデータエラーが発生した場合に、即システムダウンをすることなくまたシステムダウン時間を最少にしつつリアルタイムなデータ転送を実現することができる。
【００１６】
本発明の第２の態様は、ＰＣＩバスを介して接続された制御手段とＰＣＩコントローラと、前記制御手段に接続されたメモリと、前記ＰＣＩコントローラに接続されたデバイスとを具備し、前記メモリの指定アドレスから前記デバイスへデータを読込む場合に、前記制御手段は、前記デバイス側ＰＣＩコントローラに前記メモリの指定アドレスを通知してデータ転送をスタートさせ、前記デバイス側ＰＣＩコントローラは、前記メモリの指定アドレスから前記デバイスへのデータ転送を開始し、ＰＣＩバス上の信号からエラーを検出した場合に、エラー発生アドレスをセーブしてエラー割り込み信号を発生し、リスタートされるまで転送を中止し、前記制御手段は、前記エラー割り込み信号を受けた場合に、前記デバイス側ＰＣＩコントローラがセーブしたエラー発生アドレスを取得し、当該エラー発生アドレスを指定アドレスとしてリスタートさせて、エラー発生アドレスから引き続きデータを転送させることを特徴とするＰＣＩバス制御装置である。
【００１７】
これによると、ＰＣＩバスを使用してメモリから前記デバイスへデータを読込む際に、データエラーが発生した場合は、即座にシステムをリセットしてシステムをダウンさせることなく、引き続きエラー発生したデータから正確に書込みを連続させることができるので、ＰＣＩバスを使用したデータ転送時にデータエラーが発生した場合に、即システムダウンをすることなくまたシステムダウン時間を最少にしつつリアルタイムなデータ転送を実現することができる。
【００１８】
本発明の第３の態様は、ＰＣＩバスを介して接続された制御手段と、ＰＣＩコントローラと、前記制御手段に接続されたメモリと、前記ＰＣＩコントローラに接続されたデバイスとを具備し、前記デバイスから前記メモリの指定アドレスへデータを書込む場合に、前記制御手段は、前記デバイス側ＰＣＩコントローラに前記指定アドレスを通知してデータ転送をスタートさせ、前記デバイス側ＰＣＩコントローラは、前記デバイスから前記メモリの指定アドレスへのデータ転送を開始し、データ転送中は所定数ワード前までの転送済みデータを常に保持し、ＰＣＩバス上の信号からエラーを検出した場合に、前記保持している転送済みデータをセーブすると共にエラー発生アドレスをセーブしてエラー割り込み信号を発生し、リスタートされるまで転送を中止し、前記制御手段は、前記エラー割り込み信号を受けた場合に、前記デバイス側ＰＣＩコントローラがセーブしたエラー発生アドレス及び前記転送済みデータを取得して前記メモリの該当アドレスのデータを書換え、前記デバイス側ＰＣＩコントローラへ前記転送済みデータの次アドレスを指定アドレスとしてリスタートさせることを特徴とする画像通信装置である。
【００１９】
本発明の第４の態様は、ＰＣＩバスを介して接続された制御手段と、ＰＣＩコントローラと、前記制御手段に接続されたメモリと、前記ＰＣＩコントローラに接続されたデバイスとを具備し、前記メモリの指定アドレスから前記デバイスへデータを読込む場合に、前記制御手段は、前記デバイス側ＰＣＩコントローラに前記メモリの指定アドレスを通知してデータ転送をスタートさせ、前記デバイス側ＰＣＩコントローラは、前記メモリの指定アドレスから前記デバイスへのデータ転送を開始し、ＰＣＩバス上の信号からエラーを検出した場合に、エラー発生アドレスをセーブしてエラー割り込み信号を発生し、リスタートされるまで転送を中止し、前記制御手段は、前記エラー割り込み信号を受けた場合に、前記デバイス側ＰＣＩコントローラがセーブしたエラー発生アドレスを取得し、当該エラー発生アドレスを指定アドレスとしてリスタートさせて、エラー発生アドレスから引き続きデータを転送させることを特徴とする画像通信装置である。
【００２０】
本発明の第５の態様は、ＰＣＩバスを介して接続された制御手段と、ＰＣＩコントローラと、前記制御手段に接続されたメモリと、前記ＰＣＩコントローラに接続されたデバイスとを具備し、前記デバイスから前記メモリの指定アドレスへデータを書込む場合に、前記制御手段は、前記デバイス側ＰＣＩコントローラに前記指定アドレスを通知してデータ転送をスタートさせ、前記デバイス側ＰＣＩコントローラは、前記デバイスから前記メモリの指定アドレスへのデータ転送を開始し、データ転送中は所定数ワード前までの転送済みデータを常に保持し、ＰＣＩバス上の信号からエラーを検出した場合に、前記保持している転送済みデータをセーブすると共にエラー発生アドレスをセーブしてエラー割り込み信号を発生し、リスタートされるまで転送を中止し、前記制御手段は、前記エラー割り込み信号を受けた場合に、前記デバイス側ＰＣＩコントローラがセーブしたエラー発生アドレス及び前記転送済みデータを取得して前記メモリの該当アドレスのデータを書換え、前記デバイス側ＰＣＩコントローラへ前記転送済みデータの次アドレスを指定アドレスとしてリスタートさせることを特徴とするデジタル複写機である。
【００２１】
本発明の第６の態様は、ＰＣＩバスを介して接続された制御手段と、ＰＣＩコントローラと、前記制御手段に接続されたメモリと、前記ＰＣＩコントローラに接続されたデバイスとを具備し、前記メモリの指定アドレスから前記デバイスへデータを読込む場合に、前記制御手段は、前記デバイス側ＰＣＩコントローラに前記メモリの指定アドレスを通知してデータ転送をスタートさせ、前記デバイス側ＰＣＩコントローラは、前記メモリの指定アドレスから前記デバイスへのデータ転送を開始し、ＰＣＩバス上の信号からエラーを検出した場合に、エラー発生アドレスをセーブしてエラー割り込み信号を発生し、リスタートされるまで転送を中止し、前記制御手段は、前記エラー割り込み信号を受けた場合に、前記デバイス側ＰＣＩコントローラがセーブしたエラー発生アドレスを取得し、当該エラー発生アドレスを指定アドレスとしてリスタートさせて、エラー発生アドレスから引き続きデータを転送させることを特徴とするデジタル複写機である。
【００２２】
以下、本発明のＰＣＩバス制御装置を画像通信装置又はデジタル複写機としての機能を持つデジタル複合機に適用した実施の形態について図面を参照して具体的に説明する。
【００２３】
図１は本実施の形態にかかるデジタル複合機の全体構成図である。このデジタル複合機は、デバイス側となるデバイス画像処理ＬＳＩ１０とシステム側となるＣＰＵ２０とがＰＣＩバス３０を介して接続されている。
【００２４】
ここで、デジタル複合機の構成について説明する。デバイス画像処理ＬＳＩ１０においては、後述するデバイス側ＰＣＩコントローラ１１がＰＣＩバス３０の制御を行っている。デバイス側では、ＣＣＤ１２により原稿から画像データを読み込んで読取りＬＳＩ１３を介してページメモリ１４へ格納される。さらに、画像データをページメモリ１４からＣＯＤＥＣＬＳＩ１５に入力して圧縮し、圧縮した画像データをソートメモリ１６へ格納してソート処理が行われる。ソート後の圧縮画像データをＣＯＤＥＣＬＳＩ１５に入力して復元してからページメモリ１４へ格納する。そして、ページメモリ１４から画像データを読み出して記録制御ＬＳＩ１７経由でＬＳＵ１８へ渡す。これが複写機として機能する場合の、デバイス側の基本的な動作である。画像データを外部へ送受信する場合はＰＣＩバス３０を介してシステム側と転送する。
【００２５】
ＣＰＵ２０は、システム側においてメモリに対するリード／ライトなどを制御する制御手段として機能する。システム側におけるＰＣＩバス３０の制御はシステム側ＰＣＩコントローラ／アービター２１が行う。また、システム側では、オペレータが指示を入力したりオペレータに対する提示情報を表示するパネル２２、ハードディスク２３、システムＲＯＭ２４、システムＲＡＭ２５が備えられている。システムＲＡＭ２５とデバイスとの間でデータ転送を行うことになる。また、ＣＰＵ２０には、各種通信媒体に対応した通信インターフェースとしてＬＡＮＩ／Ｆ２６、セントロＵＳＢポート２７、モデム２８が接続されている。外部から受信したデータを記録する場合はＰＣＩバス３０を介してデバイス側へ渡されることになる。
【００２６】
次に、デバイス側ＰＣＩコントローラ１１の構成について詳細に説明する。図２はデバイス側ＰＣＩコントローラ１１の構成図である。同図に示すように、デバイス側ＰＣＩコントローラ１１は、ＰＣＩマスターコントロール部３１、ＰＣＩターゲットコントロール部３２、ＰＣＩコンフィグレーションレジスタ３３から構成されている。ＰＣＩマスターコントロール部３１は、デバイス側がマスタとなってシステム側のシステムＲＡＭ２５をアクセスする場合のＰＣＩ制御を行う部分である。ＰＣＩターゲットコントロール部３２は、システム側からデバイスをアクセスする場合のＰＣＩ制御を行う部分である。ＰＣＩコンフィグレーションレジスタ３３は、デバイスの種類、機能等を設定するためのレジスタであり、サイズは２５６バイトある。先頭から６４バイトはＰＣＩで規定されており、残りの１９２バイトはデバイス固有に使用できるレジスタである。本実施の形態では、デバイス固有の空間にエラー情報をセーブする空間を持たせてエラー回復処理を可能にする。
【００２７】
図３はＰＣＩコンフィグレーションレジスタ３３のアドレス空間の一実施例概念図である。ユーザ固有のアドレス空間に、マスターリード／ライト時のエラー情報と、ターゲットリード／ライト時のエラー情報と、を記録するレジスタを確保している。割り込みコントロールレジスタには、ＰＣＩバス３０上で発生したエラーの種類が記録される。図４は割り込み要因を示すエラーの種類を定義した割り込みステータスレジスタの例である。図５はエラーではあるが割り込みを発生させないエラーの種類を定義した割り込みマスクレジスタの例である。ＰＣＩバス３０上で発生するエラーのうち処理を停止させるまでもないエラーは割り込みマスクレジスタに登録される。
【００２８】
エラー発生アドレスレジスタは、エラーが発生した先頭アドレスが記録され、エラー発生コマンドレジスタは、ＰＣＩコマンドや有効バイトレーン等が記録される。エラーデータレジスタは、エラー発生した先頭データからエラー発生後に転送したデータが記録されるレジスタである。エラーステータスレジスタは、ＰＣＩバス３０に転送されるデータ数は可変であるためエラーデータレジスタに記録されるデータがどこまで有効であるかを示すデータが記録される。
【００２９】
次に、以上のように構成されたデジタル複合機におけるＰＣＩバス制御に係る処理について説明する。
【００３０】
図６はマスターライト（又はターゲットリード）時にＰＣＩバス３０上を流れる信号波形を示す一実施例図である。マスターライトとターゲットリードとではＰＣＩバス３０上に同じ信号波形が現れるので同一の図を用いて示している。
【００３１】
マスターライト（又はターゲットリード）時には、ＳＹＣＫに同期してデバイス側からシステム側に対して転送データ（Ｄ０，Ｄ１，…）が転送される。さらに、各転送データに対して１クロック遅れてＰＡＲ（パリティ信号）がデバイス側からシステム側に送信される。システム側では、ＰＡＲのパリティをチェックしてエラーの有無を認識している。そして、システム側では転送データをチェックしていてエラーを検出するとＰＥＲＲをローレベルに落とす。
【００３２】
図６に示すように、ＰＣＩバス３０では、ＰＥＲＲがＤ１にエラーが発生したことを示したときにはＤ４までデータを転送していることになる。したがって、デバイス側でＰＥＲＲがローベルになったのを受けてデータ転送を停止し、その後回復したときには、エラー発生データ（Ｄ１）及びエラー発生後に転送したデータ（Ｄ２，Ｄ３、Ｄ４）にてシステムＲＡＭ２５を書き換える必要がある。
【００３３】
図７はマスターリード（又はターゲットライト）時にＰＣＩバス３０上を流れる信号波形を示す図である。マスターリードとターゲットライトとではＰＣＩバス３０上に同じ信号波形が現れるので同一の図を用いて示している。
【００３４】
マスターリード（又はターゲットライト）時には、ＳＹＣＫに同期してシステム側からデバイス側に対して転送データ（Ｄ０，Ｄ１，…）が転送される。各転送データから１クロック遅れてＰＡＲがシステム側からデバイス側に対して送信される。デバイス側では、ＰＡＲのパリティをチェックしてエラーの有無を認識する。デバイス側ＰＣＩコントローラ１１は、ＰＡＲからエラーの発生を認識したときはエラー発生転送データのアドレスをセーブする。このとき、デバイス側ではエラー発生以降のデータはエラーデータとしてローカル（例えばＣＯＤＥＣ）には転送しない。すなわち、マスターリード（又はターゲットライト）時のエラーではエラー発生転送データのアドレスをセーブするが、データはエラーデータレジスタに保持する必要は無い。
【００３５】
図８はマスターライト時のデータ転送及びエラー回復処理を示すシーケンス図である。システム側のＣＰＵ２０がシステムＲＡＭスタートアドレス指定をＰＣＩバス３０経由でデバイス側に通知して来ると、デバイス側ＰＣＩコントローラ１１がデバイス（本例ではＣＯＤＥＣＬＳＩ１５とする）に起動を掛ける。ＣＯＤＥＣＬＳＩ１５は、データライト要求を発生し、デバイス側ＰＣＩコントローラ１１によってシステム側ＰＣＩコントローラ／アービター２１にＰＣＩバス要求（ＲＥＱ）を通知する。
【００３６】
システム側ＰＣＩコントローラ／アービター２１は、ＰＣＩバス３０が空いていればＰＣＩバス使用許可（ＧＮＴ）をデバイス側ＰＣＩコントローラ１１へ返す。デバイス側ＰＣＩコントローラ１１はＰＣＩバス使用許可（ＧＮＴ）を検出したらＣＯＤＥＣＬＳＩ１５にＡＣＫを返す。
【００３７】
ＣＯＤＥＣＬＳＩ１５は、ＡＣＫを受けたらデバイスデータの転送を開始する。ＰＣＩバス３０上に送出された転送データはシステム側ＰＣＩコントローラ２１がシステムＲＡＭ２５へ書き込む処理を実行する。
【００３８】
このとき、デバイス側ではＰＣＩコンフィグレションレジスタ３３のエラーデータレジスタに常に３つ前までのデータをセーブしている。具体的には、図３においてエラーデータ−０のレジスタに３つ前に転送したデータが記録され、エラーデータ−１のレジスタに２つ前に転送したデータ、エラーデータ−２のレジスタに１つ前に転送したデータ、エラーデータ−３のレジスタに今回転送したデータが夫々記録される。また、エラー発生アドレスレジスタには、エラーデータ−０のレジスタに記録されている転送データの先頭アドレスが記録される。
【００３９】
上述した通り、ＰＣＩバス３０を転送される転送データに同期して１クロック遅れでＰＡＲがシステム側ＰＣＩコントローラ２１へ送られている。システム側ＰＣＩコントローラ２１は、ＰＡＲのパリティをチェックしてエラーの発生を認識すると、デバイス側ＰＣＩコントローラ１１に対してエラー発生通知（ＰＥＲＲ）を送信する。
【００４０】
デバイス側ＰＣＩコントローラ１１では、エラー発生通知（ＰＥＲＲ）を検出するとデータ転送要求は保留状態とする。同時に、ＰＣＩコンフィグレーションレジスタ３３の割り込みコントロールレジスタに発生エラーの種別を示すデータを書き込む。また、エラー発生アドレスレジスタにはエラーデータ−０のレジスタにセーブしているデータのアドレスが保持される。さらに、エラーステータスレジスタには、エラーデータ０−３に対して「有効」ステータスを示すビットが立てられる。
【００４１】
このようにして、デバイス側ではマスターライト（又はターゲットリード）時にエラーが発生したときは、エラーが発生した先頭データ及びエラー発生後に転送されたデータがセーブされると共に、エラーが発生した先頭アドレスがセーブされる。
【００４２】
デバイス側ＰＣＩコントローラ１１は、エラー発生通知（ＰＥＲＲ）を検出すると、直ちにデータ転送を中断してシステム側のＣＰＵ２０に対して割り込みを掛ける。
【００４３】
デバイス側ＰＣＩコントローラ１１は、エラー発生後は再開されるまでデバイス側からのデータ転送要求を保留状態とする。
【００４４】
システム側のＣＰＵ２０は、ＰＣＩコンフィグレーションレジスタ３３にアクセスして、エラーステータスレジスタに記録されたエラーデータ０−３の「有効」ステータスを取得する。
【００４５】
システム側のＣＰＵ２０は、取得したエラーステータスを解析して「有効」ステータスであれば、さらにＰＣＩコンフィグレーションレジスタ３３にアクセスして、エラー発生アドレスレジスタ及びエラーデータレジスタの内容を取得する。
【００４６】
システム側のＣＰＵ２０は、取得したエラー発生アドレス及びエラー後に転送しているデータを用いて、システムＲＡＭ２５の該当アドレスにデータを上書きする。上述したように、エラー発生データ（Ｄ１）及びその後の３つの転送データ（Ｄ２，Ｄ３、Ｄ４）がシステムＲＡＭ２５に書き込まれているので、デバイス側にセーブしておいたＤ１，Ｄ２，Ｄ３、Ｄ４を上書きすることにより、システムＲＡＭ２５上のエラーデータが回復されたことになる。したがって、ＰＣＩコンフィグレーションレジスタ３３にセーブした転送済みデータのうち最後の転送データの次アドレスからデータ転送を再開することができる。例えば、図６に示すケースでは、Ｄ４が最後の転送データとなるので、Ｄ５のアドレスを指定アドレスとして指定する事になる。
【００４７】
システム側のＣＰＵ２０は、システムＲＡＭ２５の回復処理が完了したらデバイス側ＰＣＩコントローラにに対してリスタートを掛ける。
【００４８】
デバイス側ＰＣＩコントローラ１１は、リスタートを検出すると、ＰＣＩコンフィグレーションレジスタ３３のエラー発生アドレスレジスタに記録されているアドレスの次アドレスを開始アドレスとしてデータ転送を再開する。
【００４９】
なお、ターゲットリード時の制御フローも上記マスターライト時と同じ制御フローになる。
【００５０】
図９はマスターリード時のデータ転送及びエラー回復処理を示すシーケンス図である。データ転送を開始すると、図３に示すＰＣＩコンフィグレーションレジスタ３３のデータが順次更新される。
【００５１】
一方、図７に示したように、マスターリード時はデバイス側ＰＣＩコントローラ１１がシステム側ＰＣＩコントローラ２１から送られてきたＰＡＲのパリティをチェックしてエラーを検出する。エラーを認識したらデバイス側ＰＣＩコントローラ１１がＰＥＲＲをローレベルに落とすことで、システム側ＰＣＩコントローラ２１に対してエラー発生通知を行う。このとき、ＰＣＩコンフィグレーションレジスタ３３には、エラー発生時のエラーステータス、エラー発生アドレスがセーブされる。
【００５２】
なお、マスターリード時のデータ転送でエラーが発生したときは、デバイス側ＰＣＩコントローラ１１はエラー発生以降のデータをデバイス側へ転送しない。
【００５３】
システム側のＣＰＵ２０は、ＰＣＩコンフィグレーションレジスタ３３にアクセスして、エラーステータス及びエラー発生アドレスを取得する。
【００５４】
システム側のＣＰＵ２０は、取得したエラー発生アドレスをシステムＲＡＭのスタートアドレスとして再設定し、デバイス側へ通知する。そして、システム側からリスタートが掛けられてデータ転送が再開する。
【００５５】
なお、ターゲットライト時の制御フローも上記マスターリード時と同様な制御フローになる。
【００５６】
以上のように本実施の形態によれば、ＰＣＩバス３０を使用してデバイスからシステムＲＡＭ２５へデータを書込む際に、データエラーが発生した場合は、即座にシステムをリセットしてシステムをダウンさせることなく、またＰＣＩコンフィグレーションレジスタ３３に保存されたエラー発生データのみ再書込みして回復させ、引き続き未転送の先頭データから正確に書込みを連続させることができるので、ＰＣＩバス３０を使用したデータ転送時にデータエラーが発生した場合に、即システムダウンをすることなくまたシステムダウン時間を最少にしつつリアルタイムなデータ転送を実現することができる。
【００５７】
また、ＰＣＩバス３０を使用してシステムＲＡＭ２５からデバイスへデータを読込む際に、データエラーが発生した場合は、即座にシステムをリセットしてシステムをダウンさせることなく、引き続きエラー発生したデータから正確に書込みを連続させることができるので、ＰＣＩ３０バスを使用したデータ転送時にデータエラーが発生した場合に、即システムダウンをすることなくまたシステムダウン時間を最少にしつつリアルタイムなデータ転送を実現することができる。
【００５８】
なお、本発明の一実施の形態では、上記データエラー発生した場合に、ＣＰＵ２０が介在して処理を行ったが、ＣＰＵ２０を介在させることなくデバイス側ＰＣＩコントローラ１１が直接処理を行っても実現できる。また、本発明のＰＣＩバス制御装置は、デジタル複合機に適用することに限定されるものではなく、デバイス−システム側ＣＰＵ間でＰＣＩバスを介したデータ転送を行う装置であれば、ファクシミリ装置、画像通信装置、データ通信装置、外部通信機能を持たない電気機器などに適用可能である。
【００５９】
【発明の効果】
以上詳記したように本発明によれば、ＰＣＩバスを使用したデータ転送時にデータエラーが発生した場合に、即システムダウンをすることなくまたシステムダウン時間を最少にしつつリアルタイムなデータ転送を実現するＰＣＩバス制御装置およびこれを備えた画像通信装置ならびにデジタル複写機を提供できる。
【図面の簡単な説明】
【図１】本発明の一実施の形態となるデジタル複合機の全体構成図
【図２】図１に示すデジタル複合機のデバイス側ＰＣＩコントローラの詳細図
【図３】図２に示すデバイス側ＰＣＩコントローラのＰＣＩコンフィグレーションレジスタのメモリアドレス空間の概念図
【図４】割り込みステータスレジスタの構成例を示す図
【図５】割り込みマスクレジスタの構成例を示す図
【図６】上記実施の形態におけるマスターライト（又はターゲットリード）時のＰＣＩバス上の波形図
【図７】上記実施の形態におけるマスターリード（又はターゲットライト）時のＰＣＩバス上の波形図
【図８】上記実施の形態におけるマスターライト時のシーケンス図
【図９】上記実施の形態におけるマスターリード時のシーケンス図
【符号の説明】
１０　デバイス画像処理ＬＳＩ
１１　デバイス側ＰＣＩコントローラ
１２　ＣＣＤ
１３　読取りＬＳＩ
１４　ページメモリ
１５　ＣＯＤＥＣＬＳＩ
１６　ソートメモリ
１７　記録制御ＬＳＩ
１８　ＬＳＵ
２０　ＣＰＵ
２１　システム側ＰＣＩコントローラ／アービター
２２　パネル
２３　ハードディスク
２４　システムＲＯＭ
２５　システムＲＡＭ
２６　ＬＡＮＩ／Ｆ
２７　セントロＵＳＢポート
２８　モデム
３０　ＰＣＩバス
３１　ＰＣＩマスターコントロール部
３２　ＰＣＩターゲットコントロール部
３３　ＰＣＩコンフィグレーションレジスタ
【図１】
2004062619.tif 000003
【図２】
2004062619.tif 000004
【図３】
2004062619.tif 000005
【図４】
2004062619.tif 000006
【図５】
2004062619.tif 000007
【図６】
2004062619.tif 000008
【図７】
2004062619.tif 000009
【図８】
2004062619.tif 000010
【図９】
2004062619.tif 000011