(57)【要約】      （修正有）【課題】プリンターに同一種類の複数のカートリッジが装着された場合に、プリンター本体側からアクセス対象とする記憶装置に対して個別にアクセス可能とする。【解決手段】識別データを更新する識別更新モードへ移行するか否かを判定する識別更新モード判定部と、データ信号端子から固有データのデータ信号を出力し、出力したデータ信号の第１の電圧レベルと、折り返しデータ信号端子から入力されたデータ信号の第２の電圧レベルとを比較する比較部と、識別データを更新する識別データ更新部と、を有し、識別データ更新部は、識別更新モード判定部によって識別更新モードへ移行すると判定された場合（Ｓ３２，Ｙｅｓ）に、比較部によって第１の電圧レベルと第２の電圧レベルとが異なると判定されたときに、識別データを更新する（Ｓ３３）。【選択図】図８
2013200754.tif 000002
【特許請求の範囲】
【請求項１】
データ信号線を介してデータ通信を行う記憶装置であって、
通信用の識別データ、及び前記記憶装置に固有の固有データを記憶する記憶部と、
クロック信号が入力されるクロック信号端子と、
所定の電圧レベルにプルアップもしくはプルダウンされている前記データ信号線に接続されるデータ信号端子と、
前記識別データを更新する識別更新モードへ移行するか否かを判定する識別更新モード判定部と、
前記データ信号端子から前記固有データのデータ信号を出力し、出力した前記データ信号の第１の電圧レベルと、折り返し前記データ信号端子から入力されたデータ信号の第２の電圧レベルとを比較する比較部と、
前記識別データを更新する識別データ更新部と、を有し、
前記識別データ更新部は、
前記識別更新モード判定部によって前記識別更新モードへ移行すると判定され、且つ、前記比較部によって前記第１の電圧レベルと前記第２の電圧レベルとが異なると判定されたときに、前記識別データを更新することを特徴とする記憶装置。
【請求項２】
前記比較部は、前記第１の電圧レベルと前記第２の電圧レベルとを比較することにより、
自身が出力した前記固有データのデータ信号と、前記データ信号線と接続された他の記憶装置から出力された前記固有データのデータ信号との衝突を監視することを特徴とする請求項１に記載の記憶装置。
【請求項３】
前記比較部によって前記第１の電圧レベルと前記第２の電圧レベルとが異なると判定されたときに、前記固有データのデータ信号の出力を停止することを特徴とする請求項１又は２に記載の記憶装置。
【請求項４】
前記識別更新モード判定部は、前記データ信号端子から前記識別更新モードへの移行を指示するコマンドのデータ信号が入力されたとき、
もしくは、前記クロック信号端子から入力された前記クロック信号がハイレベルである所定期間において、前記データ信号端子から所定の電圧レベルのデータ信号が入力されたときに、
前記識別更新モードへ移行すると判定することを特徴とする請求項１から３のいずれか一項に記載の記憶装置。
【請求項５】
前記識別データ更新部は、前記データ信号端子から入力された処理対象の前記記憶装置を指定するＩＤデータと、前記記憶部に記憶されている前記識別データとが対応しない場合、前記識別データを更新しないことを特徴とする請求項１から４のいずれか一項に記載の記憶装置。
【請求項６】
前記識別データ更新部は、前記識別データを１だけインクリメントした値に更新することを特徴とする請求項１から５のいずれか一項に記載の記憶装置。
【請求項７】
前記識別データは複数の識別領域に分割され、
前記識別データ更新部は、複数の前記識別領域のうち、一部の前記識別領域を更新すること特徴とする請求項１から６のいずれか一項に記載の記憶装置。
【請求項８】
データ信号線を介してデータ通信を行う記憶装置を備える液体収容体であって、
前記記憶装置は、
通信用の識別データ、及び前記記憶装置に固有の固有データを記憶する記憶部と、
クロック信号が入力されるクロック信号端子と、
所定の電圧レベルにプルアップもしくはプルダウンされている前記データ信号線に接続されるデータ信号端子と、
前記識別データを更新する識別更新モードへ移行するか否かを判定する識別更新モード判定部と、
前記データ信号端子から前記固有データのデータ信号を出力し、出力した前記データ信号の第１の電圧レベルと、折り返し前記データ信号端子から入力されたデータ信号の第２の電圧レベルとを比較する比較部と、
前記識別データを更新する識別データ更新部と、を有し、
前記識別データ更新部は、
前記識別更新モード判定部によって前記識別更新モードへ移行すると判定され、且つ、前記比較部によって前記第１の電圧レベルと前記第２の電圧レベルとが異なると判定されたときに、前記識別データを更新することを特徴とする液体収容体。
【請求項９】
複数の記憶装置がバスを介して接続される通信システムであって、
各記憶装置は、
通信用の識別データ、及び前記記憶装置に固有の固有データを記憶する記憶部と、
クロック信号が入力されるクロック信号端子と、
所定の電圧レベルにプルアップもしくはプルダウンされている前記データ信号線に接続されるデータ信号端子と、
前記識別データを更新する識別更新モードへ移行するか否かを判定する識別更新モード判定部と、
前記データ信号端子から前記固有データのデータ信号を出力し、出力した前記データ信号の第１の電圧レベルと、折り返し前記データ信号端子から入力されたデータ信号の第２の電圧レベルとを比較する比較部と、
前記識別データを更新する識別データ更新部と、を有し、
前記識別データ更新部は、
前記識別更新モード判定部によって前記識別更新モードへ移行すると判定され、且つ、前記比較部によって前記第１の電圧レベルと前記第２の電圧レベルとが異なると判定されたときに、前記識別データを更新することを特徴とする通信システム。
【請求項１０】
通信用の識別データ、及び前記記憶装置に固有の固有データを記憶する記憶部と、クロック信号が入力されるクロック信号端子と、所定の電圧レベルにプルアップもしくはプルダウンされているデータ信号線に接続されるデータ信号端子と、を有し、前記データ信号線を介してデータ通信を行う記憶装置の制御方法であって、
前記識別データを更新する識別更新モードへ移行するか否かを判定する識別更新モード判定工程と、
前記データ信号端子から前記固有データのデータ信号を出力し、出力した前記データ信号の第１の電圧レベルと、折り返し前記データ信号端子から入力されたデータ信号の第２の電圧レベルとを比較する比較工程と、
前記識別データを更新する識別データ更新工程と、を有し、
前記識別データ更新工程では、
前記識別更新モード判定工程において前記識別更新モードへ移行すると判定され、且つ、前記比較工程において前記第１の電圧レベルと前記第２の電圧レベルとが異なると判定されたときに、前記識別データを更新することを特徴とする記憶装置の制御方法。
【請求項１１】
通信用の識別データ、及び前記記憶装置に固有の固有データを記憶する記憶部と、クロック信号が入力されるクロック信号端子と、所定の電圧レベルにプルアップもしくはプルダウンされているデータ信号線に接続されるデータ信号端子と、を有し、前記データ信号線を介してデータ通信を行う複数の記憶装置の検査方法であって、
前記各記憶装置は、
前記識別データを更新する識別更新モードへ移行するか否かを判定する識別更新モード判定工程と、
前記データ信号端子から前記固有データのデータ信号を出力し、出力した前記データ信号の第１の電圧レベルと、折り返し前記データ信号端子から入力されたデータ信号の第２の電圧レベルとを比較する比較工程と、
前記識別データを更新する識別データ更新工程と、を有し、
前記識別データ更新工程は、
前記識別更新モード判定工程において前記識別更新モードへ移行すると判定され、且つ、前記比較工程において前記第１の電圧レベルと前記第２の電圧レベルとが異なると判定されたときに、前記識別データを更新し、
前記各記憶装置において前記識別データを更新後に、前記各記憶装置にアクセスしてそれぞれの動作を検査する工程を含むことを特徴とする記憶装置の検査方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ホストコンピューターとのデータ通信を行う記憶装置、通信システム、液体収容体、記憶装置の制御方法、及び記憶装置の検査方法に関する。
【背景技術】
【０００２】
インクジェットプリンターなどの液体噴射装置は、複数種類のインクカートリッジが装着されて、各インクカートリッジからインクの供給を受けることにより、例えば、シアン、マゼンタ、イエロー、ブラックなどの複数色のインクを噴射するよう構成されている。
【０００３】
特許文献１には、インクカートリッジに、プリンター本体側からのアクセスを制御する機能を有した記憶装置が取り付けられ、プリンター本体側とインクカートリッジの記憶装置とがバスを介して接続されたシステムが開示されている。
この記憶装置には、カートリッジの種類、即ち収容するインクの種類に応じて予め決められた識別データが格納されている。プリンター本体側のコントローラーは、カートリッジの記憶装置にアクセスする際、アクセス対象とするカートリッジに対応するＩＤデータによってアクセス先を指定したデータ列を、バスを介して複数のインクカートリッジの各記憶装置に送出する。そして、各記憶装置は、データ列に含まれるＩＤデータと自身が格納する識別データとを比較して一致した場合に、コントローラーからメモリーアレイへのアクセスを許可する。従って、プリンター本体側のコントローラーは、データ列に含まれるＩＤデータを適宜設定することにより、複数の記憶装置のうちの任意の記憶装置に対してアクセスすることができる。
【０００４】
また、特許文献２には、交換部品の記憶装置に格納された識別データを参照することにより、装着されたカートリッジの種類を判別し、同一種類の複数のカートリッジが装着されている場合には交換部品のメモリーに対して書き込みを行わないようにした画像形成装置が開示されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００２−１４８７０号公報
【特許文献２】特開２００８−２９１８４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、特許文献１に記載のシステムでは、プリンターに同一種類の複数のカートリッジが装着された場合、複数のカートリッジの各記憶装置に記憶された識別データが同一となる。このため、プリンター本体側から、アクセス対象とする記憶装置に対して個別にアクセスできなくなるという課題がある。つまり、同一種類の複数のカートリッジがプリンターに装着された場合、プリンター本体側のコントローラーは、アクセス対象のカートリッジの記憶装置に対応するＩＤデータを含むデータ列を送出する。送出されたデータ列はバスを介して複数の記憶装置の各々に入力される。そして、各記憶装置では、それぞれが格納する識別データが同一であることから、各記憶装置においてアクセスが許可されてコントローラーとのデータ通信が開始される。この結果、複数の記憶装置のそれぞれから、コントローラーとのデータ通信を行うべく信号がバスに送出されることになり、バス上で信号が競合することとなって正しく通信できなくなることがある。また、特許文献２に記載の画像形成装置では、同一種類の複数のカートリッジが装着されている場合、メモリーに対して書き込みを行えないことから、同一種類の複数のカートリッジを扱うことが困難である。
【０００７】
なお、同一種類の複数のカートリッジが装着される例としては、洗浄液を収容した洗浄用カートリッジが挙げられる。洗浄用カートリッジは、インク色に関わらずに共通のものが一般に用いられるため、複数種類のインクカートリッジを装着するために設けられた複数の装着位置のそれぞれに対して、同一種類の洗浄用カートリッジが装着される。このため、複数の洗浄用カートリッジがプリンターに装着された場合、プリンター本体側のコントローラーでは、洗浄用カートリッジの記憶装置とのデータ通信ができなくなる。これにより、プリンター本体側では、各洗浄用カートリッジに収容された洗浄液の残量などを個別に管理することができなくなってしまう。
【課題を解決するための手段】
【０００８】
本発明は、上述の課題の少なくとも一部を解決するためになされたものであり、以下の形態又は適用例として実現することが可能である。
【０００９】
［適用例１］データ信号線を介してデータ通信を行う記憶装置であって、通信用の識別データ、及び前記記憶装置に固有の固有データを記憶する記憶部と、クロック信号が入力されるクロック信号端子と、所定の電圧レベルにプルアップもしくはプルダウンされている前記データ信号線に接続されるデータ信号端子と、前記識別データを更新する識別更新モードへ移行するか否かを判定する識別更新モード判定部と、前記データ信号端子から前記固有データのデータ信号を出力し、出力した前記データ信号の第１の電圧レベルと、折り返し前記データ信号端子から入力されたデータ信号の第２の電圧レベルとを比較する比較部と、前記識別データを更新する識別データ更新部と、を有し、前記識別データ更新部は、前記識別更新モード判定部によって前記識別更新モードへ移行すると判定され、且つ、前記比較部によって前記第１の電圧レベルと前記第２の電圧レベルとが異なると判定されたときに、前記識別データを更新することを特徴とする記憶装置。
【００１０】
この構成によれば、識別更新モードへ移行することにより、出力した固有データのデータ信号の電圧レベルと、折り返し入力されたデータ信号の電圧レベルとを比較し、それぞれが異なるときに識別データを更新する。従って、データ通信の範囲内において、自身が出力した固有データについての電圧レベルと、他の記憶装置から出力された他の固有データについての電圧レベルとを比較して識別データを更新することになる。
例えば、同一種類の複数のカートリッジが装着されたために、識別データの値が同一となる記憶装置が複数存在する場合、各記憶装置の固有データの値は異なることから、各記憶装置において、出力した電圧レベルと折り返し入力された電圧レベルとが異なるタイミングが必ず生じる。そして、このタイミングで識別データを更新することにより、これまで同一であった識別データの値を固有の値に変更することができる。この結果、複数の記憶装置がバスを介して接続されたシステムにおいても、個別にアクセスされることが可能な記憶装置を得ることができる。  
【００１１】
［適用例２］上記記憶装置において、前記比較部は、前記第１の電圧レベルと前記第２の電圧レベルとを比較することにより、自身が出力した前記固有データのデータ信号と、前記データ信号線と接続された他の記憶装置から出力された前記固有データのデータ信号との衝突を監視することを特徴とする記憶装置。
【００１２】
この構成によれば、複数の記憶装置がバスを介して接続されたシステムにおいて、出力した電圧レベルと折り返し入力された電圧レベルとを比較することにより、バスにおける各記憶装置からのデータ信号の衝突を監視することができる。そして、衝突を検出したタイミングで識別データを更新することができる。
【００１３】
［適用例３］上記記憶装置において、前記比較部によって前記第１の電圧レベルと前記第２の電圧レベルとが異なると判定されたときに、前記固有データのデータ信号の出力を停止することを特徴とする記憶装置。
【００１４】
この構成によれば、出力した電圧レベルと折り返し入力された電圧レベルとが異なる場合に、その時点で固有データのデータ信号の出力を停止する。これにより、１回の識別更新モードの処理において、自身の識別データの更新を１回のみで済ますことができ、識別更新モードの処理を短時間に効率的に行うことができる。
【００１５】
［適用例４］上記記憶装置において、前記識別更新モード判定部は、前記データ信号端子から前記識別更新モードへの移行を指示するコマンドのデータ信号が入力されたとき、もしくは、前記クロック信号端子から入力された前記クロック信号がハイレベルである所定期間において、前記データ信号端子から所定の電圧レベルのデータ信号が入力されたときに、前記識別更新モードへ移行すると判定することを特徴とする記憶装置。
【００１６】
この構成によれば、識別更新モードへの移行を指示するコマンドのデータ信号、もしくはクロック信号がハイレベルである所定期間において所定の電圧レベルのデータ信号に基づいて、識別更新モードへ移行すると判定する。これにより、特別な信号を伝送するための信号線や端子などの回路構成を記憶装置に新たに設ける必要がなく、記憶装置の回路規模を小さくできる。
【００１７】
［適用例５］上記記憶装置において、前記識別データ更新部は、前記データ信号端子から入力された処理対象の前記記憶装置を指定するＩＤデータと、前記記憶部に記憶されている前記識別データとが対応しない場合、前記識別データを更新しないことを特徴とする記憶装置。
【００１８】
この構成によれば、処理対象の記憶装置を指定するＩＤデータと識別データとが対応しない場合、識別データを更新しない。従って、ＩＤデータと識別データとが対応する記憶装置のみに対して識別データの更新を行う。これにより、識別データの値が重複する記憶装置に限定して識別データの更新を行うことができる。
【００１９】
［適用例６］上記記憶装置において、前記識別データ更新部は、前記識別データを１だけインクリメントした値に更新することを特徴とする記憶装置。
【００２０】
この構成によれば、識別データを１だけインクリメントした値に更新する。これにより、インクリメントによって識別データの値が識別データの領域のサイズからオーバーフローしてしまうのを防止することができる。
【００２１】
［適用例７］上記記憶装置において、前記識別データは複数の識別領域に分割され、前記識別データ更新部は、複数の前記識別領域のうち、一部の前記識別領域を更新すること特徴とする記憶装置。
【００２２】
この構成によれば、識別データを構成する一部の識別領域が更新されて、その他の識別領域は更新されないことになる。これにより、更新された一部の識別領域を用いることで個別にアクセスされることが可能であると共に、更新されないその他の識別領域に、変更されない有効な情報を保存することができる。
【００２３】
［適用例８］データ信号線を介してデータ通信を行う記憶装置を備える液体収容体であって、前記記憶装置は、通信用の識別データ、及び前記記憶装置に固有の固有データを記憶する記憶部と、クロック信号が入力されるクロック信号端子と、所定の電圧レベルにプルアップもしくはプルダウンされている前記データ信号線に接続されるデータ信号端子と、前記識別データを更新する識別更新モードへ移行するか否かを判定する識別更新モード判定部と、前記データ信号端子から前記固有データのデータ信号を出力し、出力した前記データ信号の第１の電圧レベルと、折り返し前記データ信号端子から入力されたデータ信号の第２の電圧レベルとを比較する比較部と、前記識別データを更新する識別データ更新部と、を有し、前記識別データ更新部は、前記識別更新モード判定部によって前記識別更新モードへ移行すると判定され、且つ、前記比較部によって前記第１の電圧レベルと前記第２の電圧レベルとが異なると判定されたときに、前記識別データを更新することを特徴とする液体収容体。
【００２４】
この構成によれば、識別更新モードへ移行することにより、出力した固有データのデータ信号の電圧レベルと、折り返し入力されたデータ信号の電圧レベルとを比較し、それぞれが異なるときに識別データを更新する。従って、データ通信の範囲内において、自身が出力した固有データについての電圧レベルと、他の記憶装置から出力された他の固有データについての電圧レベルとを比較して識別データを更新することになる。
例えば、同一種類の複数のカートリッジが装着されたために、識別データの値が同一となる記憶装置が複数存在する場合、各記憶装置の固有データの値は異なることから、各記憶装置において、出力した電圧レベルと折り返し入力された電圧レベルとが異なるタイミングが必ず生じる。そして、このタイミングで識別データを更新することにより、これまで同一であった識別データの値を固有の値に変更することができる。この結果、複数の記憶装置がバスを介して接続されたシステムにおいても、個別にアクセスされることが可能な記憶装置を備える液体収容体を得ることができる。
【００２５】
［適用例９］複数の記憶装置がバスを介して接続される通信システムであって、各記憶装置は、通信用の識別データ、及び前記記憶装置に固有の固有データを記憶する記憶部と、クロック信号が入力されるクロック信号端子と、所定の電圧レベルにプルアップもしくはプルダウンされている前記データ信号線に接続されるデータ信号端子と、前記識別データを更新する識別更新モードへ移行するか否かを判定する識別更新モード判定部と、前記データ信号端子から前記固有データのデータ信号を出力し、出力した前記データ信号の第１の電圧レベルと、折り返し前記データ信号端子から入力されたデータ信号の第２の電圧レベルとを比較する比較部と、前記識別データを更新する識別データ更新部と、を有し、前記識別データ更新部は、前記識別更新モード判定部によって前記識別更新モードへ移行すると判定され、且つ、前記比較部によって前記第１の電圧レベルと前記第２の電圧レベルとが異なると判定されたときに、前記識別データを更新することを特徴とする通信システム。
【００２６】
この構成によれば、識別更新モードへ移行することにより、出力した固有データのデータ信号の電圧レベルと、折り返し入力されたデータ信号の電圧レベルとを比較し、それぞれが異なるときに識別データを更新する。従って、データ通信の範囲内において、自身が出力した固有データについての電圧レベルと、他の記憶装置から出力された他の固有データについての電圧レベルとを比較して識別データを更新することになる。
例えば、同一種類の複数のカートリッジが装着されたために、識別データの値が同一となる記憶装置が複数存在する場合、各記憶装置の固有データの値は異なることから、各記憶装置において、出力した電圧レベルと折り返し入力された電圧レベルとが異なるタイミングが必ず生じる。そして、このタイミングで識別データを更新することにより、これまで同一であった識別データの値を固有の値に変更することができる。この結果、複数の記憶装置がバスを介して接続された通信システムにおいても、個別にアクセスされることが可能な記憶装置に対応する通信システムを得ることができる。
【００２７】
［適用例１０］通信用の識別データ、及び前記記憶装置に固有の固有データを記憶する記憶部と、クロック信号が入力されるクロック信号端子と、所定の電圧レベルにプルアップもしくはプルダウンされているデータ信号線に接続されるデータ信号端子と、を有し、前記データ信号線を介してデータ通信を行う記憶装置の制御方法であって、前記識別データを更新する識別更新モードへ移行するか否かを判定する識別更新モード判定工程と、前記データ信号端子から前記固有データのデータ信号を出力し、出力した前記データ信号の第１の電圧レベルと、折り返し前記データ信号端子から入力されたデータ信号の第２の電圧レベルとを比較する比較工程と、前記識別データを更新する識別データ更新工程と、を有し、前記識別データ更新工程では、前記識別更新モード判定工程において前記識別更新モードへ移行すると判定され、且つ、前記比較工程において前記第１の電圧レベルと前記第２の電圧レベルとが異なると判定されたときに、前記識別データを更新することを特徴とする記憶装置の制御方法。
【００２８】
この構成によれば、識別更新モードへ移行することにより、出力した固有データのデータ信号の電圧レベルと、折り返し入力されたデータ信号の電圧レベルとを比較し、それぞれが異なるときに識別データを更新する。従って、データ通信の範囲内において、自身が出力した固有データについての電圧レベルと、他の記憶装置から出力された他の固有データについての電圧レベルとを比較して識別データを更新することになる。
例えば、同一種類の複数のカートリッジが装着されたために、識別データの値が同一となる記憶装置が複数存在する場合、各記憶装置の固有データの値は異なることから、各記憶装置において、出力した電圧レベルと折り返し入力された電圧レベルとが異なるタイミングが必ず生じる。そして、このタイミングで識別データを更新することにより、これまで同一であった識別データの値を固有の値に変更することができる。この結果、複数の記憶装置がバスを介して接続されたシステムにおいても、個別にアクセスされることが可能な記憶装置の制御方法を得ることができる。
【００２９】
［適用例１１］通信用の識別データ、及び前記記憶装置に固有の固有データを記憶する記憶部と、クロック信号が入力されるクロック信号端子と、所定の電圧レベルにプルアップもしくはプルダウンされているデータ信号線に接続されるデータ信号端子と、を有し、前記データ信号線を介してデータ通信を行う複数の記憶装置の検査方法であって、前記各記憶装置は、前記識別データを更新する識別更新モードへ移行するか否かを判定する識別更新モード判定工程と、前記データ信号端子から前記固有データのデータ信号を出力し、出力した前記データ信号の第１の電圧レベルと、折り返し前記データ信号端子から入力されたデータ信号の第２の電圧レベルとを比較する比較工程と、前記識別データを更新する識別データ更新工程と、を有し、前記識別データ更新工程は、前記識別更新モード判定工程において前記識別更新モードへ移行すると判定され、且つ、前記比較工程において前記第１の電圧レベルと前記第２の電圧レベルとが異なると判定されたときに、前記識別データを更新し、前記各記憶装置において前記識別データを更新後に、前記各記憶装置にアクセスしてそれぞれの動作を検査する工程を含むことを特徴とする記憶装置の検査方法。
【００３０】
この構成によれば、識別更新モードへ移行することにより、出力した固有データのデータ信号の電圧レベルと、折り返し入力されたデータ信号の電圧レベルとを比較し、それぞれが異なるときに識別データを更新する。従って、データ通信の範囲内において、自身が出力した固有データについての電圧レベルと、他の記憶装置から出力された他の固有データについての電圧レベルとを比較して識別データを更新することになる。
例えば、同一種類の複数のカートリッジが装着されたために、識別データの値が同一となる記憶装置が複数存在する場合、各記憶装置の固有データの値は異なることから、各記憶装置において、出力した電圧レベルと折り返し入力された電圧レベルとが異なるタイミングが必ず生じる。そして、このタイミングで識別データを更新することにより、これまで同一であった識別データの値を固有の値に変更することができる。この結果、複数の記憶装置がバスを介して接続されたシステムにおいても、各記憶装置に個別にアクセスしてそれぞれの動作を検査することが可能な記憶装置の検査方法を得ることができる。
【図面の簡単な説明】
【００３１】
【図１】第１の実施形態に係る通信システムの概略構成を示す図。
【図２】カートリッジの概観斜視図。
【図３】ホストコンピューターの構成を示す図。
【図４】データ列のデータ構造を示す図。
【図５】記憶装置内部の回路構成を示すブロック図。
【図６】識別データ更新ユニットの内部の回路構成を示すブロック図。
【図７】ホストコンピューター及び記憶装置の動作を示すフローチャート。
【図８】識別更新モード処理の詳細を示すフローチャート。
【図９】通常アクセスモードにおけるホストコンピューター及び記憶装置の動作を示すフローチャート。
【図１０】各記憶装置におけるタイミングチャートを示す例。
【図１１】各記憶装置におけるタイミングチャートを示す例。
【図１２】各記憶装置におけるタイミングチャートを示す例。
【図１３】各記憶装置における識別データの更新例を示す表。
【図１４】カートリッジ交換後の各記憶装置におけるタイミングチャートを示す例。
【図１５】カートリッジ交換後の各記憶装置における識別データの更新例を示す表。
【図１６】第２の実施形態に係る識別データのデータ構造を示す図。
【図１７】識別更新モードにおける更新前後の識別データの例を示す図。
【図１８】第３の実施形態に係る検査システムの構成を示す図。
【図１９】第２の実施形態に係る検査システムの動作を示すフローチャート。
【発明を実施するための形態】
【００３２】
（第１の実施形態）
以下、本発明の実施形態について図面を参照して説明する。なお、第１の実施形態では、通信システムの例として、インクジェットプリンターに備わる通信システムについて説明する。
【００３３】
＜通信システムの概略構成＞
図１は、第１の実施形態に係る通信システムの概略構成を示す図である。図２は、カートリッジの概観斜視図である。図１に示すように、通信システム１は、複数の記憶装置２０（２０ａ〜２０ｄ）と、記憶装置２０のホスト装置としてのホストコンピューター１０とを含む。図２に示すように、記憶装置２０は、４個のカートリッジ（液体収容体）Ｃ（Ｃ１〜Ｃ４）にそれぞれ備えられるものである。４個のカートリッジＣ１〜Ｃ４の例としては、例えば、シアン、マゼンタ、イエロー、ブラックなどの各色インクを収容したインクカートリッジや、洗浄液を収容した洗浄用カートリッジがある。もっとも、記憶装置２０の数及びインクカートリッジの種類については、これに限られるものではない。また、ホストコンピューター１０の例としては、インクジェットプリンターの本体側に配置されたプリンターコントローラーなどが挙げられる。
【００３４】
記憶装置２０は、カートリッジＣに設けられたメモリーモジュール基板上に配置され、クロック信号端子ＣＴ及びデータ信号端子ＤＴを有している。クロック信号端子ＣＴにはクロック信号線ＣＬが接続されており、クロック信号線ＣＬは、クロックバスＣＢを介してホストコンピューター１０に接続されている。データ信号端子ＤＴにはデータ信号線ＤＬが接続されており、データ信号線ＤＬは、データバスＤＢを介してホストコンピューター１０に接続されている。また、データ信号線ＤＬは、プルアップ抵抗Ｒ１を介してホストコンピューター１０の電源端子ＶＤＤに接続されている。
【００３５】
図３は、ホストコンピューター１０の構成を示す図である。図３に示すように、ホストコンピューター１０は、クロック信号生成回路１１、電源回路１２、電源補償回路１３、データ記憶回路１４、及び各回路を制御する制御回路１５を備える制御装置である。ホストコンピューター１０は、印刷制御の他、記憶装置２０ａ〜２０ｄへのアクセス制御や、インク消費量、カートリッジＣの装着時間といったデータを記憶装置２０から取得してデータ記憶回路１４に記憶する制御などを行う。
【００３６】
クロック信号生成回路１１は、クロック信号ＳＣＫを生成する。生成されたクロック信号ＳＣＫは、クロック信号線ＣＬを介して各記憶装置２０ａ〜２０ｄに供給される。
【００３７】
電源補償回路１３は、電源の供給が遮断された場合にも所定期間（例えば、０．３ｓ）、記憶装置２０に電源を供給する。これにより、停電や電源プラグが抜かれることでデータ書き込み中の電源が遮断されても、上述した所定期間の間に書き込みを優先すべきデータの書き込みを完了することができる。電源補償回路１３としては、例えばコンデンサーが用いられる。
【００３８】
制御回路１５は、電源回路１２を制御して正電源及び正電源よりも電位の低い基準電位の基準電源の出力を制御する。ホストコンピューター１０は、各記憶装置２０ａ〜２０ｄに対して常時電源を供給しておらず、記憶装置２０ａ〜２０ｄに対するアクセス要求が発生した場合にのみ、記憶装置２０ａ〜２０ｄに対して正電源及び基準電源を供給する。また、制御回路１５は、ホストコンピューター１０と記憶装置２０とのデータ通信を制御する。そして、制御回路１５は、記憶装置２０とデータ通信する際、所定のフォーマットに従うデータ列を出力する。
【００３９】
＜通信で用いられるデータ列の構造＞
次に、ホストコンピューター１０と記憶装置２０との間のデータ通信で用いられるデータ列のデータ構造について説明する。
図４は、データ列のデータ構造を示す図である。ホストコンピューター１０と記憶装置２０との間のデータ通信では、データ列１００が用いられる。図４（ａ）は、記憶装置２０へのアクセスを開始する際に、ホストコンピューター１０が出力するデータ列１００ａを示している。また、図４（ｂ），（ｃ）は、記憶装置２０にデータを書き込む際に、ホストコンピューター１０と記憶装置２０との間で送受信されるデータ列を示している。図４（ｂ）は、ホストコンピューター１０が出力するデータ列１００ｂ、図４（ｃ）は、記憶装置２０が出力するデータ列１００ｃを示している。また、図４（ｄ），（ｅ）は記憶装置２０からデータを読み出す際と記憶装置２０の識別データを更新する際に、ホストコンピューター１０と記憶装置２０との間で送受信されるデータ列を示している。図４（ｄ）は、記憶装置２０からデータを読み出す際にホストコンピューター１０が出力するデータ列１００ｄと、記憶装置２０の識別データを更新する際にホストコンピューター１０が出力するデータ列１００ｅとを示している。図４（ｅ）は、記憶装置２０が出力するデータ列１００ｆを示している。
【００４０】
アクセスを開始する際に用いられるデータ列１００ａについて説明する。図４（ａ）に示すように、ホストコンピューター１０が出力するデータ列１００ａには、ＩＤデータ１１０が含まれる。ＩＤデータ１１０は、例えば、３ビットのデータであり、プリンターに装着された複数のカートリッジＣの各記憶装置２０ａ〜２０ｄのうちから、アクセスの対象とする記憶装置２０を指定するための識別データである。ホストコンピューター１０は、このＩＤデータ１１０を含むデータ列１００ａを出力することにより、ＩＤデータ１１０に対応する記憶装置２０に対して、データの書き込み、読み出し、識別データ更新などのアクセスを開始する。
【００４１】
次に、書き込み時に用いられるデータ列１００ｂ，１００ｃについて説明する。図４（ｂ）に示すように、書き込み時にホストコンピューター１０が出力するデータ列１００ｂには、書き込みコマンド１２０と、ライトデータ１３０とが含まれる。書き込みコマンド１２０は、記憶装置２０に対して書き込みの処理を指定するコマンドである。ライトデータ１３０は、書き込みコマンド１２０で指定された書き込みの対象となるデータである。
【００４２】
記憶装置２０は、データ列１００ｂを受け取ると、メモリーアレイ２１（図５参照）にライトデータ１３０を書き込むための処理を行い、書き込みを正常に行えた場合に、データ列１００ｃをホストコンピューター１０に出力する。図４（ｃ）に示すように、データ列１００ｃには、書き込みを正常に行えたことを示すＡＣＫデータ１４０が含まれる。ホストコンピューター１０は、ＡＣＫデータ１４０を受け取ることにより、データ列１００ｂに従うデータの書き込みが正常に行えたことを認識する。
【００４３】
次に、読み出し時と識別データ更新時に用いられるデータ列１００ｄ，１００ｅ，１００ｆについて説明する。図４（ｄ）に示すように、読み出し時にホストコンピューター１０が出力するデータ列１００ｄには、読み出しコマンド１５０が含まれる。読み出しコマンド１５０は、記憶装置２０に対して読み出しの処理を指定するコマンドである。また、識別データ更新時にホストコンピューター１０が出力するデータ列１００ｅには、識別更新コマンド１６０が含まれる。識別更新コマンド１６０は、記憶装置２０に対して識別データ更新の処理を指定するコマンドである。
【００４４】
記憶装置２０は、データ列１００ｄを受け取ると、読み出しコマンド１５０に応じてメモリーアレイ２１からデータを読み出すための処理を行い、読み出しが成功した場合、データ列１００ｆをホストコンピューター１０に出力する。図４（ｅ）に示すように、データ列１００ｆには、メモリーアレイ２１から読み出したデータがリードデータ１７０として含まれている。ホストコンピューター１０は、データ列１００ｆを受け取ることにより、データ列１００ｄに従うデータの読み出しが正常に行えたことを認識すると共に、メモリーアレイ２１から読み出されたデータを取得する。
【００４５】
また、記憶装置２０は、データ列１００ｅを受け取ると、識別更新コマンド１６０に応じてメモリーアレイ２１の識別データ２１０（図５参照）を更新するための処理を行う。記憶装置２０は、当該処理においてメモリーアレイ２１の固有データ２１１（図５参照）の読み出しを行い、読み出しが成功した場合、データ列１００ｆをホストコンピューター１０に出力する。図４（ｅ）に示すように、データ列１００ｆには、メモリーアレイ２１から読み出した固有データ２１１がリードデータ１７０として含まれている。ホストコンピューター１０は、データ列１００ｆを受け取ることにより、データ列１００ｄに従うデータの読み出しが正常に行えたこと、即ち、ＩＤデータ１１０に対応する記憶装置２０の存在を認識する。
【００４６】
以上に述べたように、ホストコンピューター１０と記憶装置２０との間の通信は、データ列１００（１００ａ〜１００ｆ）に従って行われる。なお、制御回路１５は、インクジェットプリンターの電源投入時、カートリッジＣの交換時、印刷ジョブの終了時、インクジェットプリンターの電源遮断時などに、データ列１００に従うデータ通信によって記憶装置２０ａ〜２０ｄに対するアクセスを実行する。
【００４７】
＜記憶装置の構成＞
次に、記憶装置２０の構成について説明する。
図５は、記憶装置２０内部の回路構成を示すブロック図である。なお、以下では、１つの記憶装置２０の内部構成を例に挙げて説明するが、各記憶装置２０ａ〜２０ｄの内部構成は、メモリーアレイ２１に格納されているデータを除いて同じである。図５に示すように、記憶装置２０は、メモリーアレイ２１と、アドレスカウンター２２と、メモリーコントローラー２３と、ＩＤコンパレーター２４と、オペレーションコードデコーダー２５と、Ｉ／Ｏコントローラー２６と、識別データ更新ユニット２７と、を備えている。なお、記憶装置２０の構成のうち、アドレスカウンター２２、ＩＤコンパレーター２４、オペレーションコードデコーダー２５、及びＩ／Ｏコントローラー２６が、通信制御部３０を構成する。
【００４８】
メモリーアレイ２１は、ＥＥＰＲＯＭやフラッシュＲＯＭなど、不揮発的に記憶内容を保持すると共に記憶内容を書き換え可能なメモリーであり、例えば、２５６ビットなどの所定容量の記憶領域を有している。メモリーアレイ２１には、通信用の識別データ２１０及び固有データ２１１が格納されている。識別データ２１０は、カートリッジＣの種類、即ちカートリッジＣが収容するインクの種類に応じて予め決められた情報であり、メモリーアレイ２１のアドレス空間の先頭に格納されている。固有データ２１１は、例えば、カートリッジＣの製造年月日を示す時間情報、シリアルナンバーなどを含むカートリッジＣ固有、即ち記憶装置２０に固有の情報であり、メモリーアレイ２１の記憶領域のうち読み出し専用に設定された所定の記憶領域に格納されている。
【００４９】
アドレスカウンター２２は、クロック信号ＳＣＫに同期してそのカウント値をインクリメントする回路であり、クロック信号端子ＣＴ及びメモリーコントローラー２３と接続されている。アドレスカウンター２２のカウント値とメモリーアレイ２１の記憶領域位置（アドレス）とは関連付けられており、アドレスカウンター２２のカウント値によってメモリーアレイ２１における書き込み位置又は読み出し位置を指定することができる。
【００５０】
メモリーコントローラー２３は、メモリーアレイ２１、アドレスカウンター２２、及びＩ／Ｏコントローラー２６に接続されており、Ｉ／Ｏコントローラー２６の制御に従ってメモリーアレイ２１の記憶領域のうち、アドレスカウンター２２が指定するアドレスの領域への情報の書き込みや読み出しを実行する。具体的には、メモリーアレイ２１から情報を読み出してＩ／Ｏコントローラー２６に受け渡す処理や、Ｉ／Ｏコントローラー２６から書き込み対象の情報を受け取ってメモリーアレイ２１の記憶領域に書き込む処理などを行う。
【００５１】
ＩＤコンパレーター２４は、クロック信号端子ＣＴ、データ信号端子ＤＴ、Ｉ／Ｏコントローラー２６、及びオペレーションコードデコーダー２５と接続されており、データ信号端子ＤＴを介して入力されるデータ列１００に含まれるＩＤデータ１１０とメモリーアレイ２１に格納されている識別データ２１０とを比較して一致するか否かを判定する。また、ＩＤコンパレーター２４は、ホストコンピューター１０から入力されたＩＤデータ１１０を格納する３ビットの第１レジスター２４０と、Ｉ／Ｏコントローラー２６を介してメモリーアレイ２１から取得した識別データ２１０を格納する第２レジスター２４１とを有している。ＩＤコンパレーター２４は、第１レジスター２４０に格納されたＩＤデータ１１０と、第２レジスター２４１に格納された識別データ２１０とが一致する場合に、ホストコンピューター１０からメモリーアレイ２１へのアクセスを許可する旨のアクセス許可信号ＥＮをオペレーションコードデコーダー２５に出力する。
【００５２】
なお、ＩＤコンパレーター２４の初期化は、第１レジスター２４０及び第２レジスター２４１に格納された情報をクリアすることによって行われる。初期化後のＩＤコンパレーター２４は新たなＩＤデータ１１０の入力待ちの状態となり、この状態においてホストコンピューター１０からデータ列１００が出力されると、データ列１００に含まれるＩＤデータ１１０を取得して第１レジスター２４０に格納するよう構成されている。また、ＩＤコンパレーター２４は、ＩＤデータ１１０を第１レジスター２４０に格納した後などの所定のタイミングで、Ｉ／Ｏコントローラー２６を介してメモリーアレイ２１から識別データ２１０を取得して第２レジスター２４１に格納する。
【００５３】
オペレーションコードデコーダー２５は、クロック信号端子ＣＴ、データ信号端子ＤＴ、ＩＤコンパレーター２４、及びＩ／Ｏコントローラー２６と接続されており、ホストコンピューター１０から出力されたデータ列１００より、書き込みコマンド１２０、読み出しコマンド１５０、識別更新コマンド１６０などを取得する。オペレーションコードデコーダー２５は、ＩＤコンパレーター２４からアクセス許可信号ＥＮが入力されると、取得したコマンドを解析して、解析結果に応じて書き込み処理要求、読み出し処理要求、識別データ更新要求などをＩ／Ｏコントローラー２６に出力する。
【００５４】
Ｉ／Ｏコントローラー２６は、クロック信号端子ＣＴ、データ信号端子ＤＴ、メモリーコントローラー２３、ＩＤコンパレーター２４、オペレーションコードデコーダー２５、及び識別データ更新ユニット２７と接続されており、オペレーションコードデコーダー２５からの要求に従ってメモリーアレイ２１に対するデータ転送方向並びにデータ信号端子ＤＴに対するデータ転送方向を切り換え制御する。また、Ｉ／Ｏコントローラー２６は、オペレーションコードデコーダー２５からの識別データ更新処理要求を識別データ更新ユニット２７に出力し、識別データ更新ユニット２７からの要求に従ってメモリーアレイ２１に対するデータ転送方向並びにデータ信号端子ＤＴに対するデータ転送方向を切り換え制御する。
【００５５】
ホストコンピューター１０から記憶装置２０にアクセスする場合、ホストコンピューター１０は、アクセス対象とする装置に対応するＩＤデータ１１０を含むデータ列１００を、データバスＤＢを介して各記憶装置２０に出力する。各記憶装置２０では、ＩＤコンパレーター２４が、ホストコンピューター１０から送られたＩＤデータ１１０と自装置の識別データ２１０とを比較して、一致した場合にメモリーアレイ２１へのアクセスを許可することにより、アクセス対象とした記憶装置２０とホストコンピューター１０との間でデータ通信が行われる。なお、通常の書き込み処理要求及び読み出し処理要求に伴う動作を行うときの記憶装置２０の動作モードを、通常アクセスモードという。
【００５６】
ここで、インクカートリッジに代えて、洗浄用カートリッジがインクジェットプリンターに装着される場合には、同一種類のカートリッジＣが複数装着されることになる。しかしながら、プリンターに同一種類のカートリッジＣが複数装着されている場合、プリンター本体側のホストコンピューター１０から、アクセス対象の記憶装置２０に個別にアクセスできなくなることがある。これは、各カートリッジＣの識別データ２１０が同一になるため、アクセス対象とするカートリッジＣに対応するＩＤデータ１１０を含むデータ列１００を、ホストコンピューター１０側からデータバスＤＢを介して各記憶装置２０に出力した場合に、データ列が入力された各々の記憶装置２０がアクセス可能な状態になってしまうからである。このため、ホストコンピューター１０とアクセス対象としたカートリッジＣの記憶装置２０だけでなく、アクセス対象としていないカートリッジＣの記憶装置２０との間でもデータ通信が開始されてしまう。この結果、各記憶装置２０から出力される信号がデータバスＤＢにおいて競合することとなって、ホストコンピューター１０が、本来アクセス対象としていた記憶装置２０とのデータ通信ができずにアクセスできなくなる事態が生じる。
【００５７】
そこで、本実施形態に係る通信システム１では、複数の洗浄用カートリッジが装着されている場合に対応するため、ホストコンピューター１０は、記憶装置２０を識別更新モードで動作させる。識別更新モードは、記憶装置２０に格納されている識別データ２１０を、少なくとも、通信システム１内におけるバスを介したデータ通信の範囲内において固有の識別データ、即ち、同じプリンターに装着されている複数のカートリッジＣの記憶装置２０間で重複しない識別データに更新するモードである。
【００５８】
＜識別データ更新ユニットの構成＞
次に、識別データ更新ユニット２７の構成について説明する。
記憶装置２０には、識別更新モードの動作を行うため、識別データ更新ユニット２７が備えられている。図６は、識別データ更新ユニット２７の内部の回路構成を示すブロック図である。図６に示すように、識別データ更新ユニット２７は、クロック信号端子ＣＴ、データ信号端子ＤＴ、及びＩ／Ｏコントローラー２６と接続されており、モード切替え制御部２７０と、衝突検出部２７１と、インクリメント部２７２と、更新処理部２７３とを有している。
【００５９】
モード切替え制御部２７０は、クロック信号端子ＣＴ、データ信号端子ＤＴ、及びＩ／Ｏコントローラー２６と接続されており、Ｉ／Ｏコントローラー２６からの識別データ更新処理要求に基づいて、通常アクセスモードと識別更新モードとの切替えを制御する。なお、本実施形態では、ホストコンピューター１０からの識別更新コマンド１６０を取得することにより、識別更新モードへ移行するようにしているが、これに限られず、例えば、クロック信号ＳＣＫの電圧レベルがハイレベル（Ｈレベル）である所定期間において、電圧レベルが例えばローレベル（Ｌレベル）のデータ信号ＳＤＡが入力されたタイミングに識別更新モードへ移行するようにしても良い。
【００６０】
衝突検出部２７１は、クロック信号端子ＣＴ、データ信号端子ＤＴ、Ｉ／Ｏコントローラー２６、モード切替え制御部２７０、及びインクリメント部２７２と接続されており、最初に、メモリーアレイ２１に記憶されている固有データ２１１を取得する処理を行う。次に、衝突検出部２７１は、データ信号端子ＤＴからデータバスＤＢを介して、取得した固有データ２１１を１ビットずつシーケンシャルに他の記憶装置へ出力する。そして、折り返しデータバスＤＢを介してデータ信号端子ＤＴに入力されたデータ信号ＳＤＡを監視し、データ信号ＳＤＡのいわゆる衝突を検出する処理を行う。具体的には、衝突検出部２７１は、プルアップされたデータ信号端子ＤＴの電圧レベルを、固有データ２１１の各ビットの内容に対応してハイインピーダンス状態（Ｈｉ−ｚ）からＬレベルに設定し、データ信号端子ＤＴからデータバスＤＢを介して他の記憶装置２０へ出力する。そして、折り返しデータバスＤＢを介してデータ信号端子ＤＴに入力されたデータ信号ＳＤＡの電圧レベルと、自装置が出力したデータ信号ＳＤＡの電圧レベルとを比較することにより、データ信号ＳＤＡの衝突を検出する。なお、衝突検出部２７１は、データ信号ＳＤＡの衝突が検出された場合、以降のデータ信号ＳＤＡの出力を停止する。
【００６１】
インクリメント部２７２は、クロック信号端子ＣＴ、衝突検出部２７１、及び更新処理部２７３と接続されており、衝突が検出された場合に、識別データ２１０の値を１だけインクリメントする。一方、衝突が検出されない場合は何もしない。
【００６２】
更新処理部２７３は、クロック信号端子ＣＴ、インクリメント部２７２、及びＩ／Ｏコントローラー２６と接続されており、衝突が検出された場合に、Ｉ／Ｏコントローラー２６を介して、メモリーアレイ２１の識別データ２１０をインクリメント部２７２によってインクリメントされた識別データに更新する処理を行う。
【００６３】
なお、メモリーアレイ２１が記憶部に相当し、モード切替え制御部２７０が識別更新モード判定部に相当し、衝突検出部２７１が比較部に相当し、識別データ更新ユニット２７が識別データ更新部に相当する。また、衝突検出部２７１においてデータバスＤＢを介して出力したデータ信号ＳＤＡの電圧レベルが第１の電圧レベル、データバスＤＢを介して入力されたデータ信号ＳＤＡの電圧レベルが第２の電圧レベルに相当する。
【００６４】
＜識別更新モードの動作＞
次に、識別更新モードの動作について説明する。
図７は、ホストコンピューター１０及び記憶装置２０の動作を示すフローチャートである。以下、通信システム１において行われる処理について、図７のフローチャートに従って説明する。
【００６５】
インクジェットプリンターの電源投入時、インクカートリッジや洗浄用カートリッジの交換時などに、図７のフローチャートの処理が開始される。処理が開始されると、ホストコンピューター１０は、識別更新モードへの移行条件が成立したか否かを判定する（ステップＳ１０）。ここで、識別更新モードへの移行条件が成立する例としては、ユーザー操作などにより、プリンターに装着された洗浄用カートリッジを用いてインクジェットヘッド内の流路を洗浄するための洗浄モードに移行した場合や、ホストコンピューター１０から、プリンターに装着されたカートリッジＣの記憶装置２０へのアクセスを試みた結果、同一種類の複数のカートリッジＣが装着されていたためにアクセスできなかった場合などが挙げられる。
【００６６】
識別更新モードへの移行条件が成立した場合（ステップＳ１０：Ｙｅｓ）は、ホストコンピューター１０は、記憶装置２０に電源を供給し、ＩＤデータ１１０に０などの初期値をセットする（ステップＳ１１）。他方、識別更新モードへの移行条件が成立しなかった場合（ステップＳ１０：Ｎｏ）は、図７のフローチャートの処理を終了する。
【００６７】
次に、ホストコンピューター１０は、ＩＤデータ１１０と、識別データ２１０の更新を要求する識別更新コマンド１６０とを各記憶装置２０に送信する（ステップＳ１２）。
【００６８】
一方、記憶装置２０は、ホストコンピューター１０から電源の供給を受けると電源オンの状態となって起動し、ホストコンピューター１０から送信されたＩＤデータ１１０と識別更新コマンド１６０とを受信する（ステップＳ２０）。このとき、記憶装置２０のＩＤコンパレーター２４は、受信したＩＤデータ１１０を第１レジスター２４０に格納する。
【００６９】
次に、記憶装置２０は、ＩＤコンパレーター２４により、Ｉ／Ｏコントローラー２６を介してメモリーアレイ２１に記憶された識別データ２１０を取得して第２レジスター２４１に格納する。そして、第１レジスター２４０に格納されたＩＤデータ１１０と、第２レジスター２４１に格納された識別データ２１０とが一致しているか否かを判定する（ステップＳ２１）。
【００７０】
ＩＤデータ１１０と識別データ２１０とが一致している場合（ステップＳ２１：Ｙｅｓ）は、記憶装置２０は、識別データ更新ユニット２７により、識別更新モードに移行して識別更新モード処理を行い（ステップＳ２２）、ステップＳ２３へ進む。なお、識別更新モード処理の詳細については後述する。他方、ＩＤデータ１１０と識別データ２１０とが一致していない場合（ステップＳ２１：Ｎｏ）は、識別更新モード処理を行わないで、ステップＳ２０に戻り、次のＩＤデータ１１０と識別更新コマンド１６０とを受信するまで待機する。
【００７１】
ステップＳ２３では、記憶装置２０は、ホストコンピューター１０において識別データ２１０の更新処理が全て終了したか否かを判定する。ここでは、ホストコンピューター１０から、例えば、クロック信号ＳＣＫ及びデータ信号ＳＤＡの電圧レベルに基づく更新処理終了の要求があったときに、更新処理が全て終了したと判定する。
識別データ２１０の更新処理が全て終了した場合（ステップＳ２３：Ｙｅｓ）は、図７の記憶装置２０における処理を終了する。他方、識別データ２１０の更新処理が終了していない場合（ステップＳ２３：Ｎｏ）は、ステップＳ２０に戻り、次のＩＤデータ１１０と識別更新コマンド１６０とを受信するまで待機する。
【００７２】
図８は、識別更新モード処理（図７のステップＳ２２）の詳細を示すフローチャートである。識別データ更新ユニット２７のモード切替え制御部２７０によって識別更新モードに移行すると、記憶装置２０は、衝突検出部２７１により、メモリーアレイ２１に記憶されている固有データ２１１を取得し、データバスＤＢを介して固有データ２１１のデータ信号ＳＤＡを他の記憶装置へ出力する（ステップＳ３０）。そして、記憶装置２０は、衝突検出部２７１により、折り返しデータバスＤＢを介して入力されたデータ信号ＳＤＡの電圧レベルを監視する（ステップＳ３１）。このとき、ホストコンピューター１０へもデータバスＤＢを介して固有データ２１１のデータ信号ＳＤＡが出力される。ホストコンピューター１０では、固有データ２１１のデータ信号ＳＤＡが入力されることによって記憶装置２０から応答があったと判断する。即ち、ＩＤデータ１１０に対応する記憶装置２０が存在したと判断する。
【００７３】
次に、記憶装置２０は、衝突検出部２７１により、データバスＤＢを介して出力したデータ信号ＳＤＡがＨｉ−ｚの場合に、データバスＤＢを介して入力されたデータ信号ＳＤＡがＬレベルであるか否かを判定する（ステップＳ３２）。
出力したデータ信号ＳＤＡがＨｉ−ｚであり、且つ入力されたデータ信号ＳＤＡがＬレベルの場合（ステップＳ３２：Ｙｅｓ）は、データ信号ＳＤＡの衝突が発生したと判断してステップＳ３３へ進む。つまり、自装置がＨｉ−ｚのデータ信号ＳＤＡを出力したにもかかわらず、他装置からＬレベルのデータ信号ＳＤＡが出力されたことにより、折り返しデータバスＤＢを介して自装置にＬレベルのデータ信号ＳＤＡが入力されたときに、データ信号ＳＤＡの衝突が発生したと判断する。
【００７４】
ステップＳ３３では、記憶装置２０は、インクリメント部２７２及び更新処理部２７３により、メモリーアレイ２１に記憶された識別データ２１０の値を１だけインクリメントして識別データ２１０を更新し、図８の識別更新モード処理を終了する。
【００７５】
他方、出力したデータ信号ＳＤＡがＬレベル、もしくは入力されたデータ信号ＳＤＡがＨレベルの場合（ステップＳ３２：Ｎｏ）は、識別データ２１０の更新を行わないで、固有データ２１１についてデータ信号ＳＤＡの出力が全て終了したか否かを判定する（ステップＳ３４）。
固有データ２１１の出力が終了した場合（ステップＳ３４：Ｙｅｓ）は、図８の識別更新モード処理を終了する。他方、固有データ２１１の出力がまだ残っている場合（ステップＳ３４：Ｎｏ）は、ステップＳ３０に戻り、固有データについて次のデータ信号ＳＤＡを出力し、折り返し入力されるデータ信号ＳＤを監視する。
【００７６】
図７に戻って、ステップＳ１３では、ホストコンピューター１０は、記憶装置２０から応答があったか否かを判定する（ステップＳ１３）。ここでは、ステップＳ１２において送信したＩＤデータ１１０に対応する記憶装置２０が存在した場合に応答があり、一方、ＩＤデータ１１０に対応する記憶装置２０が存在しない場合は応答がないことになる。
【００７７】
記憶装置２０から応答があった場合（ステップＳ１３：Ｙｅｓ）は、ＩＤデータ１１０に対応する記憶装置２０が存在したということで、このＩＤデータ１１０を保存して（ステップＳ１４）、ステップＳ１５へ進む。他方、記憶装置２０から応答がない場合（ステップＳ１３：Ｎｏ）は、ＩＤデータ１１０の値を１だけインクリメントして（ステップＳ１６）、ステップＳ１２に戻り、インクリメントされたＩＤデータ１１０について処理を繰り返す。
【００７８】
なお、ステップＳ１４において保存されるＩＤデータ１１０は、各記憶装置２０で重複しない固有の識別データ２１０の値となる。これは、識別更新モード処理において、識別データ２１０の値が各記憶装置２０で重複したときに、データ信号ＳＤＡの衝突を検出しなかった１つの記憶装置２０のみ、重複した識別データ２１０の値をそのままにして、データ信号ＳＤＡの衝突を検出した他の記憶装置２０の識別データ２１０の値については全て更新することによる。
【００７９】
ステップＳ１５では、識別データ２１０の更新処理が全て終了したか否かを判定する。ここでは、各記憶装置２０の識別データ２１０がそれぞれ異なる固有値となったときに、更新処理が全て終了したと判定する。なお、ステップＳ１４において保存されたＩＤデータ１１０の個数がカートリッジＣの個数（本実施形態では４個）に到達したときに、更新処理が全て終了したと判定するようにしても良い。
【００８０】
識別データ２１０の更新処理が全て終了した場合（ステップＳ１５：Ｙｅｓ）は、各記憶装置２０に対して更新処理終了の要求を送信して、図７のホストコンピューター１０の処理を終了する。他方、識別データ２１０の更新処理がまだ残っている場合（ステップＳ１５：Ｎｏ）は、ＩＤデータ１１０の値を１だけインクリメントして（ステップＳ１６）、ステップＳ１２に戻り、インクリメントされたＩＤデータ１１０について処理を繰り返す。
【００８１】
＜通常アクセスモードの動作＞
次に、通常アクセスモードにおける動作について説明する。
図９は、通常アクセスモードにおけるホストコンピューター１０及び記憶装置２０の動作を示すフローチャートである。インクジェットプリンターの電源投入時、インクカートリッジの交換時、印刷ジョブの終了時、インクジェットプリンターの電源遮断時などに、図９のフローチャートの処理が開始される。処理が開始されると、ホストコンピューター１０は、記憶装置２０に電源を供給し、ホストコンピューター１０と記憶装置２０の間において、データ列１００に従うデータ通信が開始される。ここでは、ホストコンピューター１０は、ＩＤデータ１１０を各記憶装置２０に送信する（ステップＳ４０）。
【００８２】
一方、記憶装置２０は、ホストコンピューター１０から電源の供給を受けると電源オンの状態となって起動し、ホストコンピューター１０から送信されたＩＤデータ１１０を受信する（ステップＳ５０）。このとき、記憶装置２０は、ＩＤコンパレーター２４により、受信したＩＤデータ１１０を第１レジスター２４０に格納する。
【００８３】
次に、記憶装置２０は、ＩＤコンパレーター２４により、Ｉ／Ｏコントローラー２６を介してメモリーアレイ２１に記憶された識別データ２１０を取得して第２レジスター２４１に格納する。そして、第１レジスター２４０に格納されたＩＤデータ１１０と、第２レジスター２４１に格納された識別データ２１０とが一致しているか否かを判定する（ステップＳ５１）。
【００８４】
ＩＤデータ１１０と識別データ２１０とが一致している場合（ステップＳ５１：Ｙｅｓ）は、ホストコンピューター１０と記憶装置２０との間でデータ列１００に従うデータ通信が行われて（ステップＳ４１）、記憶装置２０ではメモリーアレイ２１へのアクセス制御が行われる（ステップＳ５２）。他方、ＩＤデータ１１０と識別データ２１０とが一致していない場合（ステップＳ５１：Ｎｏ）は、ホストコンピューター１０からメモリーアレイ２１へのアクセスが禁止される。
【００８５】
ここで、記憶装置２０では、オペレーションコードデコーダー２５及びＩ／Ｏコントローラー２６により、受信した書き込みコマンド１２０、ライトデータ１３０、及び読み出しコマンド１５０に応じた処理を行うことにより、ホストコンピューター１０からメモリーアレイ２１への書き込み又は読み出しのアクセスを制御する。
【００８６】
ホストコンピューター１０と記憶装置２０との間のデータ通信が終了した場合は、図９のフローチャートの処理を終了する。
【００８７】
＜識別更新モード処理の例＞
次に、識別更新モード処理の例について説明する。
図１０〜図１２は、各記憶装置２０におけるタイミングチャートを示す例である。また、図１３は、各記憶装置２０における識別データ２１０の更新例を示す表である。図１０〜図１２のタイミングチャートでは、クロック信号ＳＣＫ、データバスＤＢを介して出力したデータ信号ＳＤＡ、及びデータバスＤＢを介して入力されたデータ信号ＳＤＡを示している。また、データ信号ＳＤＡは、プルアップ抵抗Ｒ１を介してプルアップされたＨｉ−ｚの状態を破線で示している。なお、タイミングチャートは、識別更新モードに移行してからの状態を示している。
【００８８】
本例では、記憶装置２０ａ，２０ｂ，２０ｃ，２０ｄの固有データ２１１は、それぞれ「０ｘ１０１Ｂ」（０ｘは１６進数表記を示す。），「０ｘ１０２Ｂ」，「０ｘ１０３Ｂ」，「０ｘ１１２Ｂ」である。これらの固有データ２１１は、データバスＤＢを介してシーケンシャルに１ビットずつ出力されるが、このときのデータ信号ＳＤＡは、ＬＳＢ（最下位ビット）から最初に出力する出力順（ＬＳＢ  Ｆｉｒｓｔ）となる。なお、説明を分かり易くするために固有データ２１１の値を簡略化している。
また、カートリッジＣの装着時の記憶装置２０ａ，２０ｂ，２０ｃ，２０ｄの各識別データ２１０の初期値は、図１３の識別データの項目「初期値」に示すように、全てが０の状態である。つまり、例えば洗浄用カートリッジのように同一種類の４個のカートリッジＣが装着されている状態である。
【００８９】
図１０のタイミングチャートは、記憶装置２０ａ，２０ｂ，２０ｃ，２０ｄにおける全て０の状態の各識別データ２１０に対して、１回目に識別更新モード処理を行う例を示している。ここでは、ホストコンピューター１０から、ＩＤデータ１１０に「０」をセットして各記憶装置２０に送信される（図７のステップＳ１２）。そして、識別データ２１０が「０」の各記憶装置２０ａ，２０ｂ，２０ｃ，２０ｄでは、データバスＤＢを介して固有データ２１１のデータ信号ＳＤＡを出力し、折り返しデータバスＤＢを介してデータ信号ＳＤＡが入力されて、これを監視する（図８のステップＳ３０〜Ｓ３２）。
【００９０】
図１０に示すように、時間Ｔ１１のタイミングにおいて、記憶装置２０ａ，２０ｃの出力レベルＰａ１１，Ｐｃ１１はＨｉ−ｚであり、記憶装置２０ｂ，２０ｄの出力レベルＰｂ１１，Ｐｄ１１はＬレベルである。このため、記憶装置２０ａ，２０ｃの入力レベルＰａ１１ｉ，Ｐｃ１１ｉはＨレベルではなくＬレベルとなり、記憶装置２０ａ，２０ｃではデータ信号ＳＤＡの衝突が発生したと判断する。そして、記憶装置２０ａ，２０ｃでは、以降のデータ信号ＳＤＡの出力を停止し、それぞれの識別データ２１０の値を１だけインクリメントして「１」に更新する（図８のステップＳ３３）。
【００９１】
一方、記憶装置２０ｂ，２０ｄでは、時間Ｔ１２のタイミングにおいて、記憶装置２０ｂの出力レベルＰｂ１２はＬレベルであり、記憶装置２０ｄの出力レベルＰｄ１２はＨｉ−ｚである。このため、記憶装置２０ｄの入力レベルＰｄ１２ｉはＨレベルではなくＬレベルとなり、記憶装置２０ｄではデータ信号ＳＤＡの衝突が発生したと判断する。そして、記憶装置２０ｄでは、以降のデータ信号ＳＤＡの出力を停止し、識別データ２１０の値を１だけインクリメントして「１」に更新する。また、記憶装置２０ｂでは、識別データ２１０の値が「０」のままデータ信号ＳＤＡの出力を継続する。以上の識別更新モード処理の結果、図１３の識別データの項目「１回目更新後」に示すように、記憶装置２０ａ，２０ｂ，２０ｃ，２０ｄの識別データ２１０の値は、それぞれ「１」，「０」，「１」，「１」となる。
【００９２】
続いて、図１１に示すタイミングチャートは、１回目に識別更新モード処理を行った各識別データ２１０に対して、２回目に識別更新モード処理を行う例を示している。ここでは、ホストコンピューター１０から、ＩＤデータ１１０に「１」をセットして各記憶装置２０に送信される。そして、識別データ２１０の値が「１」の各記憶装置２０ａ，２０ｃ，２０ｄでは、データバスＤＢを介して固有データ２１１のデータ信号ＳＤＡを出力し、折り返しデータバスＤＢを介してデータ信号ＳＤＡが入力されて、これを監視する。
【００９３】
図１１に示すように、時間Ｔ２１（図１０の時間Ｔ１１と同じ）のタイミングにおいて、記憶装置２０ａ，２０ｃの出力レベルＰａ２１，Ｐｃ２１はＨｉ−ｚであり、記憶装置２０ｄの出力レベルＰｄ２１はＬレベルである。このため、記憶装置２０ａ，２０ｃの入力レベルＰａ２１ｉ，Ｐｃ２１ｉはＨレベルではなくＬレベルとなり、記憶装置２０ａ，２０ｃではデータ信号ＳＤＡの衝突が発生したと判断する。そして、記憶装置２０ａ，２０ｃでは、以降のデータ信号ＳＤＡの出力を停止し、それぞれの識別データ２１０の値を１だけインクリメントして「２」に更新する。また、記憶装置２０ｄでは、識別データ２１０の値が「１」のままデータ信号ＳＤＡの出力を継続する。以上の識別更新モード処理の結果、図１３の識別データの項目「２回目更新後」に示すように、記憶装置２０ａ，２０ｃ，２０ｄの識別データ２１０の値は、それぞれ「２」，「２」，「１」となる。
【００９４】
更に続いて、図１２に示すタイミングチャートは、２回目に識別更新モード処理を行った各識別データ２１０に対して、３回目に識別更新モード処理を行う例を示している。ここでは、ホストコンピューター１０から、ＩＤデータ１１０に「２」をセットして各記憶装置２０に送信される。そして、識別データ２１０が「２」の各記憶装置２０ａ，２０ｃでは、データバスＤＢを介して固有データ２１１のデータ信号ＳＤＡを出力し、折り返しデータバスＤＢを介してデータ信号ＳＤＡが入力されて、これを監視する。
【００９５】
図１２に示すように、時間Ｔ３１のタイミングにおいて、記憶装置２０ａの出力レベルＰａ３１はＬレベルであり、記憶装置２０ｃの出力レベルＰｃ３１はＨｉ−ｚである。このため、記憶装置２０ｃの入力レベルＰｃ３１ｉはＨレベルではなくＬレベルとなり、記憶装置２０ｃではデータ信号ＳＤＡの衝突が発生したと判断する。そして、記憶装置２０ｃでは、以降のデータ信号ＳＤＡの出力を停止し、識別データ２１０の値を１だけインクリメントして「３」に更新する。また、記憶装置２０ａでは、識別データ２１０の値が「２」のままデータ信号ＳＤＡの出力を継続する。以上の識別更新モード処理の結果、図１３の識別データの項目「３回目更新後」に示すように、記憶装置２０ａ，２０ｃの識別データ２１０の値は、それぞれ「２」，「３」となる。最終的には、図１３の識別データの項目「最終結果」に示すように、記憶装置２０ａ，２０ｂ，２０ｃ，２０ｄの識別データ２１０の値は、それぞれ「２」，「０」，「３」，「１」となり、それぞれが異なった固有の値となる。
【００９６】
＜識別更新モード処理の別の例＞
次に、識別更新モード処理の別の例について説明する。
図１４は、カートリッジ交換後の各記憶装置２０におけるタイミングチャートを示す例である。図１５は、カートリッジ交換後の各記憶装置２０における識別データ２１０の更新例を示す表である。ここでは、図１３の識別データの項目「最終結果」に示す記憶装置２０ａ，２０ｂ，２０ｃ，２０ｄの各識別データ２１０の値、「２」，「０」，「３」，「１」の状態において、記憶装置２０ｂ（識別データ２１０の値「０」）を記憶装置２０ｅ（識別データ２１０の値「３」）に交換した例を示している（図１５の網掛けの部分）。従って、記憶装置２０ａ，２０ｅ，２０ｃ，２０ｄの各識別データ２１０の値が、「２」，「３」，「３」，「１」の状態であり、記憶装置２０ｅと記憶装置２０ｃとがカートリッジ交換によって値が重複している。
【００９７】
このような状態において、ホストコンピューター１０から、ＩＤデータ１１０に「０」をセットして各記憶装置２０に送信されると、識別データ２１０の値が「０」の記憶装置２０が存在しないことから、識別データ２１０の更新は行われない。続いて、ホストコンピューター１０からＩＤデータ１１０に「１」，「２」をセットして各記憶装置２０に送信されると、識別データ２１０の値が「１」，「２」である記憶装置２０ｄ，２０ａが対象となるが、記憶装置２０ｄ，２０ａのそれぞれではデータ信号ＳＤＡの衝突が発生しないことから、識別データ２１０の更新は行われない。
【００９８】
更に続いて、ホストコンピューター１０からＩＤデータ１１０に「３」をセットして各記憶装置２０に送信されると、識別データ２１０の値が「３」である記憶装置２０ｅ，２０ｃが対象となる。図１４に示すタイミングチャートは、記憶装置２０ｅ，２０ｃの各識別データ２１０に対して、１回目に識別更新モード処理を行う例を示している。ここでは、ホストコンピューター１０から、ＩＤデータ１１０に「３」をセットして各記憶装置２０に送信される。そして、識別データ２１０が「３」の各記憶装置２０ｅ，２０ｃでは、データバスＤＢを介して固有データ２１１のデータ信号ＳＤＡを出力し、折り返しデータバスＤＢを介してデータ信号ＳＤＡが入力されて、これを監視する。
【００９９】
図１４に示すように、時間Ｔ４１のタイミングにおいて、記憶装置２０ｅの出力レベルＰｅ４１はＬレベルであり、記憶装置２０ｃの出力レベルＰｃ４１はＨｉ−ｚである。このため、記憶装置２０ｃの入力レベルＰｃ４１ｉはＨレベルではなくＬレベルとなり、記憶装置２０ｃではデータ信号ＳＤＡの衝突が発生したと判断する。そして、記憶装置２０ｃでは、以降のデータ信号ＳＤＡの出力を停止し、識別データ２１０の値を１だけインクリメントして「４」に更新する。また、記憶装置２０ｅでは、識別データ２１０の値が「３」のままデータ信号ＳＤＡの出力を継続する。以上の識別更新モード処理の結果、図１５の識別データの項目「１回目更新後」に示すように、記憶装置２０ｅ，２０ｃの識別データ２１０は、それぞれ「３」，「４」となる。最終的には、図１５の識別データの項目「最終結果」に示すように、記憶装置２０ａ，２０ｅ，２０ｃ，２０ｄの識別データ２１０の値は、それぞれ「２」，「３」，「４」，「１」となり、それぞれが異なった固有の値となる。
【０１００】
以上に述べた第１の実施形態によれば、通信システム１の各記憶装置２０ａ〜２０ｄは、識別更新モードの動作により、メモリーアレイ２１に記憶された識別データ２１０の値が重複しない固有の識別データ２１０に更新される。従って、プリンターに、例えば、洗浄用カートリッジなど同一の種類のカートリッジＣが複数装着された場合であっても、識別更新モードの動作を行うことにより、以後、ホストコンピューター１０は、各カートリッジＣの記憶装置２０に個別にアクセスすることができる。
【０１０１】
（第２の実施形態）
次に、本発明に係る第２の実施形態について説明する。第１の実施形態では、メモリーアレイ２１に格納された識別データ２１０の全体を更新するようにしたが、第２の実施形態では識別データの全体ではなく一部分を更新する。なお、以下では、第１の実施形態と同様の構成については、同じ符号を付与し、詳細な説明を省略することとする。
【０１０２】
図１６は、第２の実施形態に係る識別データのデータ構造を示す図である。図１６に示すように、識別データ２１３は、付加識別データ２１４と固定識別データ２１５とを有しており、例えば、８ビットの識別データ２１３のうち、上位４ビットが付加識別データ２１４、下位４ビットが固定識別データ２１５となっている。つまり、識別データ２１３が、付加識別データ２１４と固定識別データ２１５との２つの識別領域に分割されている。
【０１０３】
付加識別データ２１４は、例えば、”００００”などの所定値が初期値とされており、識別更新モードの動作により、更新処理部２７３は、付加識別データ２１４のみを更新する。一方の固定識別データ２１５は、カートリッジＣの種類、即ち収容するインクや洗浄液の種類に応じて決められた識別情報であり、更新処理部２７３は固定識別データ２１５を更新しないようになっている。
【０１０４】
図１７は、識別更新モードにおける更新前後の識別データ２１３の例を示す図である。図１７（ａ）に示すように、更新前の識別データ２１３は、付加識別データ２１４の初期値が”００００”であり、固定識別データ２１５には、洗浄用カートリッジであることを示す値”１０１１”となっている。従って、更新前の識別データ２１３のビット列は”００００１０１１”である。
【０１０５】
識別更新モード処理によって識別データの更新が行われると、図１７（ｂ）に示すように、付加識別データ２１４が更新される一方で、固定識別データ２１５については更新されない。なお、図１７の例は、第１の実施形態の図１３において説明した記憶装置２０ａに対応しており、記憶装置２０ａの識別データ２１０の最終結果が”２”であったことから、付加識別データ２１４は”００１０”に更新される。従って、識別更新モードによる更新後の識別データ２１３のビット列は”００１０１０１１”となる。更新後の識別データ２１３は、付加識別データ２１４を含むため、プリンターに装着された記憶装置２０間で固有となる。
【０１０６】
以上に述べた第２の実施形態によれば、識別更新モードにおいて、識別データ２１３のうちの一部である付加識別データ２１４が更新されることにより、記憶装置２０間で固有の識別データ２１３が得られるので、第１の実施形態と同様にホストコンピューター１０から記憶装置２０に対して個別にアクセスすることが可能である。
【０１０７】
また、識別更新モードによって識別データ２１３を更新した後においても、固定識別データ２１５については更新されていないので、洗浄用カートリッジであることを示す情報”１０１１”が残っている。これにより、例えば、識別更新モードによって識別データ２１３を更新した洗浄用カートリッジが、他のプリンターに装着された場合に、他のプリンターは、固定識別データ２１５から判断して、装着されたカートリッジＣを洗浄用カートリッジと判断することが可能である。従って、いったん識別更新モードによって識別データ２１０を更新した後においても、更新が行われていないカートリッジＣと同様に用いることが可能であり、より使い勝手に優れたカートリッジＣを提供できるようになる。
【０１０８】
（第３の実施形態）
次に、本発明に係る第３の実施形態について説明する。第３の実施形態では、複数の同一種類のインクカートリッジについて動作検査を行う検査システムについて説明する。
【０１０９】
図１８は、第３の実施形態に係る検査システムの構成を示す図である。図１８に示すように、検査システム２は検査装置４０を含んでおり、検査装置４０のカートリッジ装着部４１には複数のインクカートリッジが装着される。また、検査装置４０は、ホストコンピューター４２を備えており、ホストコンピューター４２は、クロック信号線ＣＬ及びデータ信号線ＤＬにより、それぞれクロックバスＣＢ及びデータバスＤＢを介して、各インクカートリッジの記憶装置２０と接続されている。つまり、検査装置４０には、第１の実施形態と同様の構成をもつ通信システムが構築されている。なお、以下では、第１の実施形態と同様の構成については、同じ符号を付与し、詳細な説明を省略することとする。
【０１１０】
図１９は、第２の実施形態に係る検査システム２の動作を示すフローチャートである。図１９のフローチャートに従って、検査システム２の動作について説明する。検査対象とする複数のカートリッジＣが検査装置４０に装着されている状態で、例えば、検査開始を指示する所定の操作が行われると、図１９のフローチャートの処理が開始される。処理が開始されると、検査装置４０のホストコンピューター４２は、記憶装置２０に電源を供給し、ＩＤデータ１１０に０などの初期値をセットして（ステップＳ６０）、ＩＤデータ１１０と識別更新コマンド１６０とを各記憶装置２０に送信する（ステップＳ６１）。
【０１１１】
一方、記憶装置２０は、ホストコンピューター４２から電源の供給を受けると電源オンの状態となって起動し、ホストコンピューター４２から送信されたＩＤデータ１１０と識別更新コマンド１６０とを受信する（ステップＳ７０）。そして、記憶装置２０は、ＩＤデータ１１０と識別データ２１０とが一致しているか否かを判定する（ステップＳ７１）。
ＩＤデータ１１０と識別データ２１０とが一致している場合（ステップＳ７１：Ｙｅｓ）は、識別更新モードに移行して識別更新モード処理を行い（ステップＳ７２）、ステップＳ７３へ進む。他方、ＩＤデータ１１０と識別データ２１０とが一致していない場合（ステップＳ７１：Ｎｏ）は、ステップＳ７０に戻る。
【０１１２】
ステップＳ７３では、記憶装置２０は、ホストコンピューター４２において識別データ２１０の更新処理が全て終了したか否かを判定する。
識別データ２１０の更新処理が全て終了した場合（ステップＳ７３：Ｙｅｓ）は通常アクセスモードに移行する（ステップＳ７４）。他方、識別データ２１０の更新処理が終了していない場合（ステップＳ７３：Ｎｏ）は、ステップＳ７０に戻る。
【０１１３】
ホストコンピューター４２は、記憶装置２０から応答があったか否かを判定する（ステップＳ６２）。
記憶装置２０から応答があった場合（ステップＳ６２：Ｙｅｓ）は、送信したＩＤデータ１１０を保存して（ステップＳ６３）、ステップＳ６４へ進む。他方、記憶装置２０から応答がない場合（ステップＳ６２：Ｎｏ）は、ＩＤデータ１１０の値を１だけインクリメントして（ステップＳ６５）、ステップＳ６１に戻る。
【０１１４】
ステップＳ６４では、ホストコンピューター４２は、識別データ２１０の更新処理が全て終了したか否かを判定する。識別データ２１０の更新処理が全て終了した場合（ステップＳ６４：Ｙｅｓ）は、ステップＳ６６へ進む。他方、識別データ２１０の更新処理がまだ残っている場合（ステップＳ６４：Ｎｏ）は、ＩＤデータ１１０の値を１だけインクリメントして（ステップＳ６５）、ステップＳ６１に戻る。
【０１１５】
ステップＳ６６では、保存されたＩＤデータ１１０を用いて、検査装置４０が記憶装置２０にアクセスする。そして、検査装置４０と記憶装置２０との間でデータ列１００に従うデータ通信が行われて、記憶装置２０ではメモリーアレイ２１へのアクセス制御が行われる（ステップＳ７５）。このとき、検査装置４０は、メモリーアレイ２１への情報の書き込み動作や読み出し動作などを各記憶装置２０に実行させることにより、記憶装置２０の動作検査を行う（ステップＳ６７）。
【０１１６】
以上に述べた検査システム２によれば、検査装置４０のホストコンピューター４２は、検査装置４０に装着された複数のカートリッジＣの記憶装置２０に個別にアクセスして、各記憶装置２０の動作検査を行うことができる。従って、例えば、検査装置に１つずつカートリッジＣを装着して動作検査を行う場合に比べて、カートリッジＣの検査に要する工数を著しく低減できる。
【０１１７】
以上、本発明の第１〜第３の実施形態について説明したが、本発明は、これらの形態に限られることなく、その趣旨並びに特許請求の範囲を逸脱することなく、変更、改良され得ると共に、本発明にはその等価物が含まれることはもちろんである。また、本発明は、その趣旨に逸脱しない範囲で様々な態様とすることもできる。以下、変形例について説明する。
【０１１８】
（変形例１）
上記第１〜第３の実施形態では、データ信号線ＤＬがプルアップ抵抗Ｒ１を介して電源端子ＶＤＤに接続されており、データ信号端子ＤＴの電圧レベルをＨｉ−ｚからＬレベルに設定し、データバスＤＢを介して出力している。しかし、これに限られず、データ信号線ＤＬがプルダウン抵抗を介して接地電位に接続されるようにし、データ信号端子ＤＴの電圧レベルをＨｉ−ｚからＨレベルに設定し、データバスＤＢを介して出力しても良い。この場合、記憶装置２０の衝突検出部２７１では、データバスＤＢを介して出力したデータ信号ＳＤＡがＨｉ−ｚの場合に、折り返しデータバスＤＢを介して入力されたデータ信号ＳＤＡがＨレベルのときに、データ信号ＳＤＡの衝突が発生したと判断する。
【０１１９】
（変形例２）
上記第１，２の実施形態では、同一種類のカートリッジＣがプリンターに複数装着される例として、複数の洗浄用カートリッジが装着される場合を例に挙げて説明したが、記憶装置を備えるカートリッジＣの例としてはこれに限られない。例えば、モノクロ印刷の印刷可能枚数を増やすため、ブラックのインクを収容したインクカートリッジを複数個装着できるように構成されたプリンターの場合、識別更新モードの動作により、ブラックのインクカートリッジのそれぞれに備わる記憶装置２０について個別にアクセスすることが可能となる。もちろん、同一種類のインクカートリッジのインク色としてはブラックに限られない。
【０１２０】
（変形例３）
上記第１〜第３の実施形態では、識別データ２１０及び固有データ２１１を、記憶装置２０のメモリーアレイ２１に記憶する構成としたが、記憶装置２０内にメモリーアレイ２１とは別の記憶部を設け、この記憶部に識別データ２１０及び固有データ２１１の一方又は両方を格納する構成としてもよい。
【０１２１】
（変形例４）
上記第１〜第３の実施形態では、インクジェットプリンター用のカートリッジＣにインクカートリッジ情報を格納するための記憶装置２０を備えた構成について説明したが、本発明に係る記憶装置及び通信システムはこの態様に限られるものではない。本発明は、例えば、レーザープリンターのトナーカートリッジや現像ユニットなど、様々な交換部品に設けられる記憶装置、及びこの記憶装置を含む通信システムに適用することができる。
【符号の説明】
【０１２２】
１…通信システム、２…検査システム、１０，４２…ホストコンピューター、１１…クロック信号生成回路、１２…電源回路、１３…電源補償回路、１４…データ記憶回路、１５…制御回路、２０，２０ａ〜２０ｄ…記憶装置、２１…メモリーアレイ、２２…アドレスカウンター、２３…メモリーコントローラー、２４…ＩＤコンパレーター、２５…オペレーションコードデコーダー、２６…Ｉ／Ｏコントローラー、２７…識別データ更新ユニット、３０…通信制御部、４０…検査装置、４１…カートリッジ装着部、１００…データ列、１１０…ＩＤデータ、１２０…書き込みコマンド、１３０…ライトデータ、１４０…ＡＣＫデータ、１５０…読み出しコマンド、１６０…識別更新コマンド、１７０…リードデータ、２１０，２１３…識別データ、２１１…固有データ、２１４…付加識別データ、２１５…固定識別データ、２４０…第１レジスター、２４１…第２レジスター、２７０…モード切替え制御部、２７１…衝突検出部、２７２…インクリメント部、２７３…更新処理部、Ｃ，Ｃ１〜Ｃ４…カートリッジ、ＣＴ…クロック信号端子、ＤＴ…データ信号端子、Ｒ１…プルアップ抵抗、ＳＣＫ…クロック信号、ＳＤＡ…データ信号。
【図１】
2013200754.tif 000003
【図２】
2013200754.tif 000004
【図３】
2013200754.tif 000005
【図４】
2013200754.tif 000006
【図５】
2013200754.tif 000007
【図６】
2013200754.tif 000008
【図７】
2013200754.tif 000009
【図８】
2013200754.tif 000010
【図９】
2013200754.tif 000011
【図１０】
2013200754.tif 000012
【図１１】
2013200754.tif 000013
【図１２】
2013200754.tif 000014
【図１３】
2013200754.tif 000015
【図１４】
2013200754.tif 000016
【図１５】
2013200754.tif 000017
【図１６】
2013200754.tif 000018
【図１７】
2013200754.tif 000019
【図１８】
2013200754.tif 000020
【図１９】
2013200754.tif 000021