(57)【特許請求の範囲】
【請求項１】
バスを介して接続されるホスト装置との通信処理を行う制御部と、
前記ホスト装置からのデータが書き込まれる記憶部と、
前記記憶部のアクセス制御を行う記憶制御部とを含み、
前記制御部は、
前記バスに接続される複数の記憶装置のうちのｍ（ｍは１以上の整数）個の記憶装置に対する前記ホスト装置によるデータの書き込み期間の終了後に、前記ホスト装置からのＩＤ情報を受信し、且つ、自身の前記記憶部に前記ホスト装置からのデータが正常に書き込まれている場合に、前記ホスト装置に対してアクノリッジを返信することを特徴とする記憶装置。
【請求項２】
請求項１において、
リセット端子を含み、
前記制御部は、
前記リセット端子に入力される前記ホスト装置からのリセット信号がリセット解除を表すレベルである第１のリセット解除期間〜第ｍ（ｍは２以上の整数）のリセット解除期間の各々において、
前記ｍ個の記憶装置に対応するｍ個のＩＤ情報のいずれか１つを受信し、受信された前記いずれか１つのＩＤ情報と自身のＩＤ情報とが一致する場合に、前記ホスト装置に対して前記アクノリッジを返信することを特徴とする記憶装置。
【請求項３】
請求項２において、
クロック端子を含み、
前記制御部は、
前記クロック端子に入力される第１のクロック期間のクロックに基づいて、前記いずれか１つのＩＤ情報を受信し、
前記第１のクロック期間の後に前記クロック端子に入力される第２のクロック期間のクロックに基づいて、前記アクノリッジを返信することを特徴とする記憶装置。
【請求項４】
請求項３において、
前記制御部は、
前記記憶制御部からの内部アクノリッジ信号に基づいて、前記記憶部に前記ホスト装置からのデータが正常に書き込まれたか否かを判断することを特徴とする記憶装置。
【請求項５】
請求項３又は４において、
データ端子を含み、
前記制御部は、
前記第２のクロック期間のクロックに基づいて、前記アクノリッジを表す論理レベルの信号を前記データ端子から出力することを特徴とする記憶装置。
【請求項６】
請求項５において、
前記制御部は、
前記第２のクロック期間のクロックに基づいて、前記データ端子を高インピーダンス状態から第１の論理レベルに変化させ、次に前記第１の論理レベルから第２の論理レベルに変化させ、
前記第２のクロック期間の終了後に、前記データ端子を高インピーダンス状態に戻すことを特徴とする記憶装置。
【請求項７】
バスを介して接続される複数の記憶装置との通信処理を行う通信処理部と、
前記通信処理部を制御する制御部と、
を含むホスト装置であって、
前記複数の記憶装置の各記憶装置は、
前記各記憶装置が前記ホスト装置の前記通信処理部からのＩＤ情報を受信し、且つ、前記各記憶装置内の記憶部にデータが正常に書き込まれた場合に、前記ホスト装置に対してアクノリッジを返信し、
前記通信処理部は、
前記複数の記憶装置のうちのｍ（ｍは１以上の整数）個の記憶装置に対するデータの書き込み期間の終了後に、前記ｍ個の記憶装置に対応するｍ個のＩＤ情報を送信し、前記ＩＤ情報の送信後に前記アクノリッジの受信処理を行うことを特徴とするホスト装置。
【請求項８】
請求項７において、
リセット端子を含み、
前記通信処理部は、
前記リセット端子から出力されるリセット信号がリセット解除を表すレベルである第１のリセット解除期間〜第ｍ（ｍは２以上の整数）のリセット解除期間の各々において、前記ｍ個のＩＤ情報のいずれか１つを送信し、前記アクノリッジの受信処理を行うことを特徴とするホスト装置。
【請求項９】
請求項８において、
クロック端子と、
データ端子とを含み、
前記通信処理部は、
前記第１のリセット解除期間〜前記第ｍのリセット解除期間の各リセット解除期間のうちの第１のクロック期間において、
前記クロック端子から前記第１のクロック期間のクロックを出力し、
前記第１のクロック期間のクロックに基づいて、前記いずれか１つのＩＤ情報を前記データ端子から出力し、
前記各リセット解除期間のうちの、前記第１のクロック期間の後の第２のクロック期間において、
前記アクノリッジを受信するための前記第２のクロック期間のクロックを前記クロック端子から出力することを特徴とするホスト装置。
【請求項１０】
請求項９において、
前記通信処理部は、
前記第１のクロック期間の終了後に、前記データ端子を高インピーダンス状態に設定することを特徴とするホスト装置。
【請求項１１】
請求項１乃至６のいずれかに記載の記憶装置を含むことを特徴とする回路基板。
【請求項１２】
請求項１乃至６のいずれかに記載の記憶装置を含むことを特徴とする液体容器。
【請求項１３】
請求項１乃至６のいずれかに記載の記憶装置と、
請求項７乃至１０のいずれかに記載のホスト装置とを含むことを特徴とするシステム。
【請求項１４】
請求項５又は６に記載の記憶装置と、
請求項９又は１０に記載のホスト装置とを含み、
前記第１のクロック期間と前記第２のクロック期間との間において、
前記記憶装置の前記データ端子及び前記ホスト装置の前記データ端子が共に高インピーダンス状態に設定されることを特徴とするシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、記憶装置、ホスト装置、回路基板、液体容器及びシステム等に関する。
【背景技術】
【０００２】
インクジェット方式のプリンターで用いられるインクカートリッジ（液体容器）には、記憶装置が設けられているものがある。この記憶装置には、例えばインクの色やインク消費量などの情報が格納される。インク消費量に関するデータは、プリンター本体（ホスト装置）から記憶装置に送信され、記憶装置に含まれる不揮発性メモリーなどに書き込まれる。このようなシステムでは、記憶装置がアクノリッジ（Acknowledge）を返信することで、データ書き込みが完了したことをホスト装置に知らせる。すなわち、記憶装置は、ホスト装置からデータを受信して、メモリーに書き込み、書き込みが完了した後にアクノリッジをホスト装置に返信する。ホスト装置は、アクノリッジを受け取ってから、次の記憶装置にデータを送信する。通常、不揮発性メモリーへの書き込み時間はデータ通信時間よりかなり長いから、記憶装置の個数が増加すると共に、全体の書き込み処理時間は長くなる。
【０００３】
一方、インクカートリッジは、通常交換可能な構造になっているために、電気的接続部分の接触不良が生じ易く、接触不良による通信エラーや書き込みエラーなどが発生するおそれがある。このような不具合の発生を抑えるためには、ホスト装置から各記憶装置への書き込み処理時間をできるだけ短縮することが望ましい。
【０００４】
この課題に対して、例えば特許文献１には、複数の記憶装置に対して同時にデータの書き込みを行う手法が開示されている。しかしながらこの手法では、ホスト装置が各記憶装置からアクノリッジを受け取ることができないなどの問題がある。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００２−１４８７０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
本発明の幾つかの態様によれば、アクノリッジを送受信し、且つ、書き込み処理時間を短縮することができる記憶装置、ホスト装置、回路基板、液体容器及びシステム等を提供できる。
【課題を解決するための手段】
【０００７】
本発明の一態様は、バスを介して接続されるホスト装置との通信処理を行う制御部と、前記ホスト装置からのデータが書き込まれる記憶部と、前記記憶部のアクセス制御を行う記憶制御部とを含み、前記制御部は、前記バスに接続される複数の記憶装置のうちのｍ（ｍは１以上の整数）個の記憶装置に対する前記ホスト装置によるデータの書き込み期間の終了後に、前記ホスト装置からのＩＤ情報を受信し、且つ、自身の前記記憶部に前記ホスト装置からのデータが正常に書き込まれている場合に、前記ホスト装置に対してアクノリッジを返信する記憶装置に関係する。
【０００８】
本発明の一態様によれば、記憶装置は、ｍ個の記憶装置に対するデータの書き込み期間が終了した後に、ホスト装置からのＩＤ情報を受信し、ホスト装置からのデータが正常に書き込まれている場合に、ホスト装置に対してアクノリッジを返信することができる。こうすることで、ホスト装置は、ｍ個の記憶装置に対するデータ書き込みの終了後に、各記憶装置からのアクノリッジを順次受け取ることができる。その結果、各記憶装置においてデータの書き込みが正常に行われたか否かをホスト装置が判断することができると共に、ホスト装置からｍ個の記憶装置への書き込み処理に要する時間を短縮することができる。さらに、記憶装置の電気的接続部分の接触不良等による通信エラーや書き込みエラーなどを低減することなどが可能になる。
【０００９】
また本発明の一態様では、リセット端子を含み、前記制御部は、前記リセット端子に入力される前記ホスト装置からのリセット信号がリセット解除を表すレベルである第１のリセット解除期間〜第ｍ（ｍは２以上の整数）のリセット解除期間の各々において、前記ｍ個の記憶装置にそれぞれ対応するｍ個のＩＤ情報のいずれか１つを受信し、受信された前記いずれか１つのＩＤ情報と自身のＩＤ情報とが一致する場合に、前記ホスト装置に対して前記アクノリッジを返信してもよい。
【００１０】
このようにすれば、記憶装置は、受信したＩＤ情報と自身のＩＤ情報とが一致する場合にアクノリッジを返信することができるから、ホスト装置は、アクノリッジを返信した記憶装置及びアクノリッジを返信しない記憶装置を特定することができる。
【００１１】
また本発明の一態様では、クロック端子を含み、前記制御部は、前記クロック端子に入力される第１のクロック期間のクロックに基づいて、前記いずれか１つのＩＤ情報を受信し、前記第１のクロック期間の後に前記クロック端子に入力される第２のクロック期間のクロックに基づいて、前記アクノリッジを返信してもよい。
【００１２】
このようにすれば、記憶装置は、ホスト装置から送信されるクロックに同期してＩＤ情報を受信し、その後にホスト装置から送信される別のクロックに同期してアクノリッジを返信することができる。こうすることで、記憶装置がＩＤ情報を受信する期間とアクノリッジを返信する期間とを時間的に分離することができるから、ＩＤ情報とアクノリッジとを確実に送受信することができる。
【００１３】
また本発明の一態様では、前記制御部は、前記記憶制御部からの内部アクノリッジ信号に基づいて、前記記憶部に前記ホスト装置からのデータが正常に書き込まれたか否かを判断してもよい。
【００１４】
このようにすれば、記憶装置は、ホスト装置からのデータが記憶部に正常に書き込まれた場合に、アクノリッジを返信することができる。
【００１５】
また本発明の一態様では、データ端子を含み、前記制御部は、前記第２のクロック期間のクロックに基づいて、前記アクノリッジを表す論理レベルの信号を前記データ端子から出力してもよい。
【００１６】
このようにすれば、記憶装置は、アクノリッジを表す論理レベルの信号をデータ端子から適正なタイミングで出力することができるから、ホスト装置に対してアクノリッジを確実に返信することができる。
【００１７】
また本発明の一態様では、前記制御部は、前記第２のクロック期間のクロックに基づいて、前記データ端子を高インピーダンス状態から第１の論理レベルに変化させ、次に前記第１の論理レベルから第２の論理レベルに変化させ、前記第２のクロック期間の終了後に、前記データ端子を高インピーダンス状態に戻してもよい。
【００１８】
このようにすれば、記憶装置は、第２のクロック期間の後半期間において、データ端子の電圧レベルを第１の論理レベルから第２の論理レベルに急速に変化させることができるから、次のＩＤ情報が送信されるまでの待ち時間を短縮することができる。その結果、全体の書き込み処理に要する時間を短縮することなどが可能になる。
【００１９】
本発明の他の態様は、バスを介して接続される複数の記憶装置との通信処理を行う通信処理部と、前記通信処理部を制御する制御部とを含み、前記通信処理部は、前記複数の記憶装置のうちのｍ（ｍは１以上の整数）個の記憶装置に対するデータの書き込み期間の終了後に、前記ｍ個の記憶装置に対応するｍ個のＩＤ情報を送信し、前記ＩＤ情報の送信後にアクノリッジ受信処理を行うホスト装置に関係する。
【００２０】
本発明の他の態様によれば、ホスト装置は、ｍ個の記憶装置に対するデータ書き込みの終了後に、各記憶装置からアクノリッジを順次受け取ることができる。その結果、各記憶装置においてデータの書き込みが正常に行われたか否かをホスト装置が判断することができると共に、ホスト装置からｍ個の記憶装置への書き込み処理に要する時間を短縮することができる。さらに、記憶装置の電気的接続部分の接触不良等による通信エラーや書き込みエラーなどを低減することなどが可能になる。
【００２１】
また本発明の他の態様では、リセット端子を含み、前記通信処理部は、前記リセット端子から出力されるリセット信号がリセット解除を表すレベルである第１のリセット解除期間〜第ｍ（ｍは２以上の整数）のリセット解除期間の各々において、前記ｍ個のＩＤ情報のいずれか１つを送信し、前記アクノリッジ受信処理を行ってもよい。
【００２２】
このようにすれば、ホスト装置は、ＩＤ情報を送信することで、アクノリッジの返信を要求する記憶装置を特定することができる。その結果、ホスト装置は、どの記憶装置からアクノリッジが返信されたかを認識することができる。
【００２３】
また本発明の他の態様では、クロック端子と、データ端子とを含み、前記通信処理部は、前記第１のリセット解除期間〜前記第ｍのリセット解除期間の各リセット解除期間のうちの第１のクロック期間において、前記クロック端子から前記第１のクロック期間のクロックを出力し、前記第１のクロック期間のクロックに基づいて、前記いずれか１つのＩＤ情報を前記データ端子から出力し、前記各リセット解除期間のうちの、前記第１のクロック期間の後の第２のクロック期間において、前記アクノリッジを受信するための前記第２のクロック期間のクロックを前記クロック端子から出力してもよい。
【００２４】
このようにすれば、ホスト装置は、クロック端子からクロックを出力し、そのクロックに同期してＩＤ情報を送信し、その後に出力する別のクロックに同期してアクノリッジを受信することができる。こうすることで、ホスト装置がＩＤ情報を送信する期間とアクノリッジを受信する期間とを時間的に分離することができるから、ＩＤ情報とアクノリッジとを確実に送受信することができる。
【００２５】
また本発明の他の態様では、前記通信処理部は、前記第１のクロック期間の終了後に、前記データ端子を高インピーダンス状態に設定してもよい。
【００２６】
このようにすれば、ホスト装置のデータ端子が、第１のクロック期間の後の第２のクロック期間に記憶装置から出力されるアクノリッジ信号に干渉することを防止できる。その結果、ホスト装置は記憶装置から返信されたアクノリッジを確実に受信することができる。
【００２７】
本発明の他の態様は、上記いずれかに記載の記憶装置を含む回路基板に関係する。
【００２８】
本発明の他の態様は、上記いずれかに記載の記憶装置を含む液体容器に関係する。
【００２９】
本発明の他の態様は、上記いずれかに記載の記憶装置と、上記いずれかに記載のホスト装置とを含むシステムに関係する。
【００３０】
また本発明の他の態様では、前記第１のクロック期間と前記第２のクロック期間との間において、前記記憶装置の前記データ端子及び前記ホスト装置の前記データ端子が共に高インピーダンス状態に設定されてもよい。
【００３１】
このようにすれば、ＩＤ情報の送信終了後であって、アクノリッジ返信開始前である期間に、バスに接続されるデータ端子が高インピーダンス状態に設定されるから、ＩＤ情報の信号及びアクノリッジ信号の相互の干渉を防止し、両者を確実に送受信することができる。
【図面の簡単な説明】
【００３２】
【図１】記憶装置及びホスト装置の基本的な構成例。
【図２】アクノリッジの返信を説明するタイミングチャート。
【図３】比較例のタイミングチャート。
【図４】データが書き込まれるまでの詳細なタイミングチャート。
【図５】アクノリッジを返信するまでの詳細なタイミングチャート。
【図６】ホスト装置のデータ端子及び第１の記憶装置のデータ端子の状態を説明する図。
【図７】図７（Ａ）、図７（Ｂ）は、アクノリッジ信号波形を説明する図。
【図８】入出力バッファーの構成例。
【図９】システムの基本的な構成例。
【図１０】液体容器の詳細な構成例。
【図１１】図１１（Ａ）、図１１（Ｂ）は、回路基板の詳細な構成例。
【発明を実施するための形態】
【００３３】
以下、本発明の好適な実施の形態について詳細に説明する。なお以下に説明する本実施形態は特許請求の範囲に記載された本発明の内容を不当に限定するものではなく、本実施形態で説明される構成の全てが本発明の解決手段として必須であるとは限らない。
【００３４】
１．記憶装置及びホスト装置
図１に本実施形態の記憶装置及びホスト装置の基本的な構成例を示す。本実施形態の記憶装置１００は、制御部１１０、記憶部１２０、記憶制御部１３０を含む。また、本実施形態のホスト装置４００は、通信処理部４１０、制御部４２０を含む。なお、本実施形態の記憶装置及びホスト装置は図１の構成に限定されず、その構成要素の一部を省略したり、他の構成要素に置き換えたり、他の構成要素を追加するなどの種々の変形実施が可能である。
【００３５】
複数の記憶装置１００−１〜１００−ｎ（ｎは２以上の整数）は、バスＢＳを介してホスト装置４００と接続される。バスＢＳは、例えば図１に示すように、クロック信号線ＳＣＫ、データ信号線ＳＤＡ、リセット信号線ＸＲＳＴを含む。クロック信号線ＳＣＫを介して、ホスト装置４００は、複数の記憶装置１００−１〜１００−ｎに対してクロックを供給する。また、データ信号線ＳＤＡを介して、ホスト装置４００と各記憶装置１００との間でデータ等のやり取りが行われる。また、リセット信号線ＸＲＳＴを介して、ホスト装置４００は、複数の記憶装置１００−１〜１００−ｎに対してリセット信号を出力する。
【００３６】
複数の記憶装置１００−１〜１００−ｎは各々ＩＤ情報を有し、ホスト装置４００は、このＩＤ情報を指定することで、複数の記憶装置１００−１〜１００−ｎのうちの１つの記憶装置に対してコマンドやデータを送信することができる。例えば図１では、第１の記憶装置１００−１のＩＤ情報はＩＤ＝１であり、第２の記憶装置１００−２のＩＤ情報はＩＤ＝２である。
【００３７】
記憶装置１００は、クロック端子ＴＣＫ、データ端子ＴＤＡ及びリセット端子ＴＲＳＴを含む。クロック端子ＴＣＫにはクロック信号線ＳＣＫが接続され、データ端子ＴＤＡにはデータ信号線ＳＤＡが接続され、リセット端子ＴＲＳＴにはリセット信号線ＸＲＳＴが接続される。
【００３８】
記憶装置１００の制御部１１０は、バスＢＳを介して接続されるホスト装置４００との通信処理を行う。具体的には、例えば図１に示すように、ホスト装置４００からのクロック及びリセット信号に基づいて、データ信号線ＳＤＡを介してホスト装置４００から送信されるコマンドや書き込みデータなどを受信し、またデータ信号線ＳＤＡを介してホスト装置４００に対して記憶部１２０から読み出されたデータや後述するアクノリッジ（Acknowledge）などを送信する。
【００３９】
記憶部１２０は、例えばＥＥＰＲＯＭや強誘電体メモリーなどの不揮発性メモリー装置であって、ホスト装置４００からのデータが書き込まれる。記憶制御部１３０は、記憶部１２０のアクセス制御を行う。
【００４０】
制御部１１０は、例えばＩＤコンパレーターＩＤ＿ＣＯＭＰ、Ｉ／ＯコントローラーＩ／Ｏ＿ＣＮＴＬ、オペレーションコードデコーダーＯＰＣＤＥＣ、アドレスカウンターＡＤＤＲ＿ＣＯＵＮＴを含む。ＩＤコンパレーターＩＤ＿ＣＯＭＰは、ホスト装置４００から送信されたＩＤ情報が自分自身のＩＤ情報と一致するか否かを比較する。一致する場合には、オペレーションコードデコーダーＯＰＣＤＥＣに対してイネーブル信号を出力し、オペレーションコードデコーダーＯＰＣＤＥＣはホスト装置４００から送信されたコマンド（オペレーションコード）をデコードする。一方、ホスト装置４００から送信されたＩＤ情報が自分自身のＩＤ情報と一致しない場合には、送信されたコマンドは無視される。
【００４１】
具体的には、ホスト装置４００から送信されたコマンドが書き込みコマンドである場合には、Ｉ／ＯコントローラーＩ／Ｏ＿ＣＮＴＬは、ホスト装置４００からの書き込みデータを受信し、受信した書き込みデータｄａｔａを記憶制御部１３０に出力する。記憶制御部１３０は、オペレーションコードデコーダーＯＰＣＤＥＣからの書き込み命令ｗｒに基づいて、メモリーデータｍ＿ｄａｔａを記憶部１２０に書き込む。この書き込む際のアドレス情報ａｄｄｒは、ホスト装置４００からのクロックに基づいてアドレスカウンターＡＤＤＲ＿ＣＯＵＮＴにより生成され、書き込みデータはシーケンシャルに、すなわち送信された順番に記憶部１２０の連続するアドレスに書き込まれる。
【００４２】
書き込みデータが記憶部１２０に正常に書き込まれた場合には、記憶制御部１３０は、内部アクノリッジ（Acknowledge）信号ｉ＿ａｃｋをＩ／ＯコントローラーＩ／Ｏ＿ＣＮＴＬに出力する。
【００４３】
制御部１１０は、記憶制御部１３０からの内部アクノリッジ信号ｉ＿ａｃｋに基づいて、記憶部１２０にホスト装置４００からのデータが正常に書き込まれたか否かを判断することができる。そしてホスト装置４００から自身のＩＤ情報と一致するＩＤ情報を受信した場合に、Ｉ／ＯコントローラーＩ／Ｏ＿ＣＮＴＬはホスト装置４００に対してアクノリッジＡＣＫを返信する。ホスト装置４００はアクノリッジＡＣＫを受信することで、各記憶装置においてデータが正常に書き込まれたことを認識することができる。なお、アクノリッジＡＣＫの詳細については、後述する。
【００４４】
ホスト装置４００から送信されたコマンドが読み出しコマンドである場合には、記憶制御部１３０は、オペレーションコードデコーダーＯＰＣＤＥＣからの読み出し命令ｒｄに基づいて、記憶部１２０からメモリーデータｍ＿ｄａｔａを読み出す。この読み出す際のアドレス情報ａｄｄｒもホスト装置４００からのクロックに基づいてアドレスカウンターＡＤＤＲ＿ＣＯＵＮＴにより生成され、シーケンシャルに読み出される。
【００４５】
ホスト装置４００は、通信処理部４１０、制御部４２０、クロック端子ＨＣＫ、データ端子ＨＤＡ、リセット端子ＨＲＳＴを含む。通信処理部４１０は、バスＢＳを介して接続される複数の記憶装置１００−１〜１００−ｎとの通信処理を行う。制御部４２０は、通信処理部４１０を制御する。
【００４６】
通信処理部４１０は、バスＢＳに接続される複数の記憶装置１００−１〜１００−ｎのうちのｍ（ｍは１≦ｍ≦ｎの整数）個の記憶装置に対して書き込みデータをそれぞれ送信し、ｍ個の記憶装置の各記憶部１２０に書き込みデータを書き込むことができる。
【００４７】
通信処理部４１０は、複数の記憶装置１００−１〜１００−ｎのうちのｍ個の記憶装置に対するデータの書き込み期間の終了後に、ｍ個の記憶装置にそれぞれ対応するｍ個のＩＤ情報のいずれか１つを送信し、いずれか１つのＩＤ情報の送信後にアクノリッジ受信処理を行う。
【００４８】
本実施形態の記憶装置及びホスト装置によれば、制御部１１０は、２つの条件が満足された場合に、ホスト装置４００に対してアクノリッジを返信する。第１の条件は、複数の記憶装置１００−１〜１００−ｎのうちのｍ個の記憶装置に対するデータの書き込み期間の終了後に、ホスト装置４００からのＩＤ情報を受信し、受信したＩＤ情報が自身のＩＤ情報と一致することである。第２の条件は、自身の記憶部１２０にホスト装置４００からのデータが正常に書き込まれていることである。
【００４９】
このようにすることで、ホスト装置４００はｍ個の記憶装置１００に対するデータ書き込みが終了した後に、各記憶装置１００からのアクノリッジを順次受け取ることができる。その結果、各記憶装置１００においてデータの書き込みが正常に行われたか否かをホスト装置４００が判断することができると共に、データ書き込みに要する時間を短縮することができる。
【００５０】
図２は、本実施形態の記憶装置におけるアクノリッジの返信を説明するタイミングチャートである。図２には、リセット信号ＸＲＳＴ、クロック信号ＳＣＫ及びデータ信号ＳＤＡの各信号波形を示す。なお、図２ではｎ＝４、ｍ＝４の場合、即ち４個の記憶装置がバスに接続され、それら４個の記憶装置に対してデータを書き込む場合を示してあるが、それ以外の個数であってもよい。例えばｎ＝４、ｍ＝２の場合、即ち４個の記憶装置がバスに接続され、それら４個の記憶装置のうちの２個の記憶装置に対してデータを書き込む場合であっても同様である。
【００５１】
各記憶装置１００のＩＤ情報は、例えば図２に示すように８ビットで構成することができる。例えば、第１〜第４の記憶装置のＩＤ情報は、ＩＤ＝０ｘ０１、０ｘ０Ｆ、０ｘＥ２、０ｘＥＦである。ここで０ｘは１６進数であることを示す。なお、ＩＤ情報は図２に示すものに限定されず、８ビット以外のビット数で構成してもよい。
【００５２】
リセット信号ＸＲＳＴがＨレベル（高電位レベル、広義には第１の論理レベル）である場合に、記憶装置１００はリセット解除状態であり、リセット信号ＸＲＳＴがＬレベル（低電位レベル、広義には第２の論理レベル）である場合に、記憶装置１００はリセット状態である。リセット信号ＸＲＳＴがＨレベルである期間、すなわちリセットが解除されている期間において、ホスト装置４００から記憶装置１００に対して書き込みデータが送信される。
【００５３】
具体的には、図２に示すように、クロックＳＣＫに基づいて、ＩＤ情報、書き込みコマンド、書き込みデータが順番に送信される。例えば図２のＩＣＤ１は、第１の記憶装置１００−１に対するＩＤ情報（ＩＤ＝０ｘ０１）、書き込みコマンド及び書き込みデータが送信されるタイミングを示す。同様に、ＩＣＤ２〜ＩＣＤ４は、それぞれ第２〜第４の記憶装置１００−２〜１００−４に対するＩＤ情報（ＩＤ＝０ｘ０Ｆ、０ｘＥ２、０ｘＥＦ）、書き込みコマンド及び書き込みデータが送信されるタイミングを示す。
【００５４】
第１〜第４の記憶装置への送信が終了後、リセット信号ＸＲＳＴがＬレベルに設定されてアクノリッジ待ち期間ＴＷが開始する。そしてアクノリッジ待ち期間ＴＷの経過後であって、リセット端子ＨＲＳＴから出力されるリセット信号ＸＲＳＴがリセット解除を表すレベル（例えばＨレベル）であるの第１〜第４（広義には第ｍ）のリセット解除期間の各々において、ホスト装置４００の通信処理部４１０は、４個（広義にはｍ個）の記憶装置にそれぞれ対応する４個（広義にはｍ個）のＩＤ情報のいずれか１つを送信し、アクノリッジ受信処理を行う。
【００５５】
具体的には、ホスト装置４００の通信処理部４１０は、リセット信号ＸＲＳＴを再びＨレベルに設定し、第１のリセット解除期間ＴＲ１において、ＩＤ情報ＩＤ１（例えばＩＤ＝０ｘ０１）を送信し、アクノリッジ受信処理を行う。そして順次、第２〜第４のリセット解除期間ＴＲ２〜ＴＲ４において、ＩＤ情報ＩＤ２〜ＩＤ４（例えばＩＤ＝０ｘ０Ｆ、０ｘＥ２、０ｘＥＦ）を送信し、アクノリッジ受信処理を行う。
【００５６】
より具体的には、通信処理部４１０は、第１〜第４のリセット解除期間ＴＲ１〜ＴＲ４の各リセット解除期間のうちの第１のクロック期間ＴＣ１において、クロック端子ＨＣＫから第１のクロック期間ＴＣ１のクロックを出力する。そして第１のクロック期間ＴＣ１のクロックに基づいて、いずれか１つのＩＤ情報をデータ端子ＨＤＡから出力する。
【００５７】
さらに通信処理部４１０は、各リセット解除期間のうちの、第１のクロック期間ＴＣ１の後の第２のクロック期間ＴＣ２において、アクノリッジＡＣＫを受信するための第２のクロック期間ＴＣ２のクロックをクロック端子ＨＣＫから出力する。
【００５８】
各記憶装置１００の制御部１１０は、自身の記憶部１２０に書き込みデータが正常に書き込まれた場合には、リセット端子ＴＲＳＴに入力されるホスト装置４００からのリセット信号ＸＲＳＴがリセット解除を表すレベル（例えばＨレベル）である第１〜第４のリセット解除期間ＴＲ１〜ＴＲ４の各々において、４個（広義にはｍ個）の記憶装置に対応する４個（広義にはｍ個）のＩＤ情報のいずれか１つを受信し、受信されたいずれか１つのＩＤ情報と自身のＩＤ情報とが一致する場合に、ホスト装置４００に対してアクノリッジＡＣＫを返信する。
【００５９】
具体的には、各記憶装置１００の制御部１１０は、クロック端子ＴＣＫに入力される第１のクロック期間ＴＣ１のクロックに基づいて、いずれか１つのＩＤ情報を受信し、第１のクロック期間ＴＣ１の後にクロック端子ＴＣＫに入力される第２のクロック期間ＴＣ２のクロックに基づいて、アクノリッジＡＣＫを返信する。
【００６０】
例えば図２に示すように、第１のリセット解除期間ＴＲ１の第２のクロック期間ＴＣ２において、第１の記憶装置（例えばＩＤ＝０ｘ０１）がアクノリッジＡＣＫを返信する。続いて第２のリセット解除期間ＴＲ２の第２のクロック期間ＴＣ２において、第２の記憶装置（例えばＩＤ＝０ｘ０Ｆ）がアクノリッジＡＣＫを返信する。同様に第３、第４のリセット解除期間ＴＲ３、ＴＲ４の第２のクロック期間ＴＣ２において、第３、第４の記憶装置（例えばＩＤ＝０ｘＥ２、０ｘＥＦ）がアクノリッジＡＣＫを返信する。
【００６１】
ホスト装置４００は、第１〜第４のリセット解除期間ＴＲ１〜ＴＲ４の第２のクロック期間ＴＣ２において、各記憶装置１００からのアクノリッジＡＣＫを受信する。
【００６２】
アクノリッジＡＣＫは、アクノリッジ（書き込み完了通知）を表す論理レベルの信号であって、第２のクロック期間ＴＣ２のクロックに基づいて、各記憶装置１００のデータ端子ＴＤＡから出力される。具体的には、例えば図２に示すように、第２のクロック期間ＴＣ２においてＨレベルに設定され、第２のクロック期間ＴＣ２の終了後に緩やかにＬレベルに降下する信号である。なお、アクノリッジＡＣＫを表す信号は、図２に示す信号波形に限定されない。
【００６３】
ホスト装置４００は、ＩＤ情報を送信した後に、送信したＩＤ情報を有する記憶装置からのアクノリッジＡＣＫの有無を判断することができるから、データが正常に書き込まれなかった記憶装置を特定することができる。そしてデータが正常に書き込まれなかった記憶装置に対しては、ホスト装置４００は、再書き込み（リトライ）を行うことができる。
【００６４】
アクノリッジ待ち期間ＴＷは、ｍ個の記憶装置に対する書き込みデータの送信終了後に、ホスト装置４００がアクノリッジの返信を要求するためのＩＤ情報を送信するまでの待ち期間である。すなわち、ホスト装置４００は、アクノリッジ待ち期間ＴＷの経過後に、アクノリッジの返信を要求するためのＩＤ情報を出力する。具体的には、記憶装置１００において、記憶部１２０へのデータ書き込みに必要な期間（書き込み必要期間）の長さをｔＴＭとした場合に、アクノリッジ待ち期間の長さｔＴＷは、ｔＴＭ≦ｔＴＷ＜２×ｔＴＭを満たす。
【００６５】
こうすることで、ホスト装置４００は、ｍ個の記憶装置のうちの最後にデータが送信された記憶装置において、データの書き込みが完了し、その記憶装置のアクノリッジの返信が可能な状態になるまで待つことができる。例えば図２では、ホスト装置４００は、アクノリッジ待ち期間ＴＷを設けることで、最後にデータが送信された第４の記憶装置の記憶部１２０へのデータ書き込みが完了し、アクノリッジの返信が可能な状態になるまで待つことができる。
【００６６】
図３に、比較例として、ｍ個の記憶装置に対する書き込み終了後にアクノリッジを順次返信するのではなく、各記憶装置がそれぞれの書き込み終了後にアクノリッジを返信する構成のタイミングチャートを示す。
【００６７】
図３の比較例では、例えば第１の記憶装置（ＩＤ＝１）に対してＩＤ情報（ＩＤ＝１）、書き込みコマンド及び書き込みデータが送信され（図３のＩＣＤ１）、第１の記憶装置の記憶部にデータが書き込まれた後に、アクノリッジＡＣＫが返信される。そして次に、第２の記憶装置（ＩＤ＝２）に対して同様にデータ等が送信され、データの書き込みが完了した後に、アクノリッジＡＣＫが返信される。
【００６８】
図３に示すように、比較例では、記憶装置が書き込みデータを受信してから、データの書き込みが完了するまでの期間、すなわち書き込み必要期間ＴＭの経過後に、記憶装置からアクノリッジＡＣＫが返信される。このために、例えば図３に示すように、４個の記憶装置が接続されている場合では、データ等の通信に要する時間の他に、さらに書き込み必要期間ＴＭの４倍の長さ（４×ｔＴＭ）が必要になる。通常の場合、記憶部にデータを書き込むための時間は、通信に要する時間よりも長い。例えば１個の記憶装置に対するデータ等の通信に要する時間は約１００μｓであるが、書き込み必要期間ＴＭの長さは約５ｍｓである。従って、図３の比較例では、全体の書き込み必要期間の長さは約２０ｍｓになる。
【００６９】
一方、本実施形態の記憶装置及びホスト装置によれば、図２に示したように、１つのアクノリッジ待ち期間ＴＷを設けることでよく、このアクノリッジ待ち期間ＴＷの長さｔＴＷは、上述したようにｔＴＭ≦ｔＴＷ＜２×ｔＴＭを満たす。例えばｔＴＭ＝５ｍｓの場合には、５ｍｓ≦ｔＴＷ＜１０ｍｓとなるから、図３の比較例よりもデータ書き込み処理に要する時間を短縮することができる。また、比較例では記憶装置の個数に比例して全体の書き込み時間が増加するが、本実施形態の記憶装置及びホスト装置では、通信に要する時間は増加するが、アクノリッジ待ち期間ＴＷの長さは増加しない。
【００７０】
このように本実施形態の記憶装置及びホスト装置によれば、ホスト装置が、バスに接続された複数の記憶装置の各記憶装置に対してデータを書き込む処理において、各記憶装置へのデータ送信が完了した後にアクノリッジＡＣＫを順次受け取ることができるから、全体の書き込み処理時間を短縮することができる。さらに記憶装置の個数が増加した場合でも、アクノリッジ待ち期間の長さは増加しないから、全体の書き込み処理時間の増加を抑えることができる。
【００７１】
２．データ書き込み処理
図４は、ホスト装置４００から第１〜第４の記憶装置１００−１〜１００−４にデータが送信されてから、各記憶装置１００の記憶部１２０にデータが書き込まれるまでの詳細なタイミングチャートである。
【００７２】
最初に、ホスト装置４００は、第１の記憶装置（ＩＤ＝０ｘ０１）に対してＩＤ情報、書き込みコマンド及びデータを送信する。図４に示すように、例えばＩＤ情報はＩ０〜Ｉ７の８ビットで構成され、これにパリティビットＩＰが付加される。また例えば書き込みコマンドはＣ０〜Ｃｊ（ｊは自然数）のｊ＋１ビットで構成され、これにパリティビットＣＰが付加される。また例えばデータはＤ０〜Ｄｋのｋ＋１ビットで構成され、これにパリティビットＤＰが付加される。パリティビットＩＰ、ＣＰ、ＤＰは、パリティチェックのために付加されるビットであって、１の個数が常に偶数若しくは奇数となるように付加されるビットである。
【００７３】
第１の記憶装置（ＩＤ＝０ｘ０１）のＩＤコンパレーターＩＤ＿ＣＯＭＰは、ＩＤ認識期間ＩＤＣにおいて、受信したＩＤ情報と自身のＩＤ情報とが一致することを認識する。続くコマンド認識期間ＣＭＤにおいて、オペレーションコードデコーダーＯＰＣＤＥＣは、受信したコマンドが書き込みコマンドであることを認識する。そして次のデータ受信期間ＤＡＴにおいて、Ｉ／ＯコントローラーＩ／Ｏ＿ＣＮＴＬは、データを受信して記憶制御部１３０に出力する。記憶制御部１３０は、次のメモリー書き込み期間ＭＷＲＴにおいて、記憶部１２０にデータを書き込む。データが正常に書き込まれた場合には、記憶制御部１３０は、内部アクノリッジ信号ｉ＿ａｃｋをＨレベルに設定する。その後、第１の記憶装置は、ホスト装置４００からアクノリッジの返信を要求するためのＩＤ情報が送信されるのを待つ。
【００７４】
一方、第２の記憶装置（ＩＤ＝０ｘ０Ｆ）のＩＤコンパレーターＩＤ＿ＣＯＭＰは、最初のＩＤ認識期間ＩＤＣにおいて、受信したＩＤ情報と自身のＩＤ情報とが不一致であることを認識する。そして第２の記憶装置は、コマンド及びデータを受信せずに、アイドル期間ＩＤＬになる。その後のＩＤ認識期間ＩＤＣにおいて、受信したＩＤ情報と自身のＩＤ情報とが一致することを認識した場合には、書き込みコマンド及びデータを受信する。なお、図４では、ＩＤ認識期間ＩＤＣ、コマンド認識期間ＣＭＤ及びデータ受信期間ＤＡＴをまとめてＩＤＣＭＤＡと表記した。そしてメモリー書き込み期間ＭＷＲＴにおいて、記憶部１２０にデータを書き込み、データが正常に書き込まれた場合には、内部アクノリッジ信号ｉ＿ａｃｋをＨレベルに設定する。その後、第２の記憶装置は、ホスト装置４００からアクノリッジの返信を要求するためのＩＤ情報が送信されるのを待つ。
【００７５】
同様にして、第３、第４の記憶装置（ＩＤ＝０ｘＥ２、０ｘＥＦ）についても、受信したＩＤ情報と自身のＩＤ情報とが一致することを認識した場合には、書き込みコマンド及びデータを受信し、メモリー書き込み期間ＭＷＲＴにおいて、記憶部１２０にデータを書き込み、データが正常に書き込まれた場合には、内部アクノリッジ信号ｉ＿ａｃｋをＨレベルに設定する。その後、第３、第４の記憶装置は、ホスト装置４００からアクノリッジの返信を要求するためのＩＤ情報が送信されるのを待つ。
【００７６】
図４に示すように、アクノリッジ待ち期間ＴＷは、最後にデータ書き込みを実行する第４の記憶装置において、記憶部１２０にデータを書き込むために必要な期間である。
【００７７】
図５は、各記憶装置１００の記憶部１２０にデータが書き込まれた後、ホスト装置４００からＩＤ情報が送信され、各記憶装置１００がアクノリッジＡＣＫを返信するまでの詳細なタイミングチャートである。なお、図５には第１、第２の記憶装置のＡＣＫ返信を示し、第３、第４の記憶装置のＡＣＫ返信については第１、第２の記憶装置と同様であるから省略した。
【００７８】
アクノリッジ待ち期間ＴＷの経過後に、ホスト装置４００はリセット信号ＸＲＳＴをＨレベルに設定し、このタイミングで第１のリセット解除期間ＴＲ１が開始される。この時点では、第４の記憶装置（ＩＤ＝０ｘＥＦ）がデータ書き込みを完了しているから、第１〜第４の記憶装置はいずれもアクノリッジ返信が可能な状態にある。
【００７９】
第１のリセット解除期間ＴＲ１では、ホスト装置４００は、第１のクロック期間ＴＣ１においてクロックを送信し、そのクロックに基づいて第１の記憶装置のＩＤ情報（ＩＤ＝０ｘ０１）を送信する。第１の記憶装置は、第１のクロック期間ＴＣ１のクロックに基づいてＩＤ情報を受信し、そのＩＤ情報が自身のＩＤ情報と一致することを認識する（ＩＤ認識期間ＩＤＣ）。そして内部アクノリッジ信号ｉ＿ａｃｋがＨレベルに設定されているから、第１の記憶装置はＡＣＫ返信待機期間ＡＳＢに移行する。ホスト装置４００は、第１のクロック期間ＴＣ１の終了後に、第２のクロック期間ＴＣ２においてＡＣＫを受信するためのクロックを送信し、第１の記憶装置は、第２のクロック期間ＴＣ２のクロックに基づいてＡＣＫを返信する（ＡＣＫ出力期間ＡＳＤ）。第２〜第４の記憶装置は、ＩＤ認識期間ＩＤＣにおいてＩＤ情報を受信するが、そのＩＤ情報が自身のＩＤ情報と一致しないからアイドル期間ＩＤＬに移行する。
【００８０】
第２のリセット解除期間ＴＲ２では、ホスト装置４００は、第１のクロック期間ＴＣ１においてクロックを送信し、そのクロックに基づいて第２の記憶装置のＩＤ情報（ＩＤ＝０ｘ０Ｆ）を送信する。第２の記憶装置は、第１のクロック期間ＴＣ１のクロックに基づいてＩＤ情報を受信し、そのＩＤ情報が自身のＩＤ情報と一致することを認識する（ＩＤ認識期間ＩＤＣ）。そして内部アクノリッジ信号ｉ＿ａｃｋがＨレベルに設定されているから、第２の記憶装置はＡＣＫ返信待機期間ＡＳＢに移行する。ホスト装置４００は、第１のクロック期間ＴＣ１の終了後に、第２のクロック期間ＴＣ２においてＡＣＫを受信するためのクロックを送信し、第２の記憶装置は、第２のクロック期間ＴＣ２のクロックに基づいてＡＣＫを返信する（ＡＣＫ出力期間ＡＳＤ）。第１、第３、第４の記憶装置は、ＩＤ認識期間ＩＤＣにおいてＩＤ情報を受信するが、そのＩＤ情報が自身のＩＤ情報と一致しないからアイドル期間ＩＤＬに移行する。
【００８１】
同様にして、第３、第４のリセット解除期間ＴＲ３、ＴＲ４において、第３、第４の記憶装置がＡＣＫを返信する。
【００８２】
図５では、各記憶装置は、ＡＣＫ出力期間ＡＳＤにおいてデータ端子ＴＤＡをＨレベルに設定し、それ以外の期間において高インピーダンス状態に設定する。こうすることで、データ信号線ＳＤＡの信号レベルは、ＡＣＫ出力期間ＡＳＤ（即ち第２のクロック期間ＴＣ２）においてＨレベルに保持され、その後緩やかにＬレベルに降下する。なお、後述するように、アクノリッジＡＣＫを表す信号は、図５に示す信号波形に限定されず、他の信号波形であってもよい。
【００８３】
図６は、第１のリセット解除期間ＴＲ１における、ホスト装置４００のデータ端子ＨＤＡ及び第１の記憶装置１００−１のデータ端子ＴＤＡの状態を説明する図である。なお、第２〜第４のリセット解除期間ＴＲ２〜ＴＲ４については、第１のリセット解除期間ＴＲ１と同様であるから説明を省略する。
【００８４】
図６に示すように、ホスト装置４００のデータ端子ＨＤＡは、第１のクロック期間ＴＣ１ではＩＤ情報を出力する出力状態ＯＵＴであり、それ以外の期間では高インピーダンス状態Ｈｉ−Ｚである。即ち、ホスト装置４００の通信処理部４１０は、第１のクロック期間ＴＣ１の終了後に、データ端子ＨＤＡを高インピーダンス状態Ｈｉ−Ｚに設定する。一方、第１の記憶装置１００−１のデータ端子ＴＤＡは、第２のクロック期間ＴＣ２ではＡＣＫを出力する出力状態ＯＵＴであり、それ以外の期間では高インピーダンス状態Ｈｉ−Ｚである。また、図示していないが、第２〜第４の記憶装置の各データ端子ＴＤＡは、ＡＣＫを出力しないから、高インピーダンス状態Ｈｉ−Ｚである。このようにすることで、第１のクロック期間ＴＣ１においてホスト装置から出力されるＩＤ情報の信号が第１〜第４の記憶装置により干渉を受けることを防止できる。また、第２のクロック期間ＴＣ２において、第１の記憶装置から出力されるＡＣＫ信号がホスト装置４００及び他の記憶装置により干渉を受けることを防止できる。
【００８５】
さらに第１のクロック期間ＴＣ１と第２のクロック期間ＴＣ２との間において、記憶装置１００のデータ端子ＴＤＡ及びホスト装置４００のデータ端子ＨＤＡが共に高インピーダンス状態Ｈｉ−Ｚに設定される。このように、バスＢＳのデータ信号線に接続される全てのデータ端子が高インピーダンス状態Ｈｉ−Ｚに設定される期間を設けることで、ＩＤ情報の信号及びＡＣＫ信号の相互の干渉を防止し、両者を確実に送受信することができる。
【００８６】
図７（Ａ）、図７（Ｂ）は、記憶装置１００が出力するアクノリッジＡＣＫ信号波形を説明する図である。
【００８７】
図７（Ａ）に示すＡＣＫ信号波形は、例えば図６に示したＡＣＫ信号波形である。すなわち、記憶装置１００は、第２のクロック期間ＴＣ２においてデータ端子ＴＤＡをＨレベルＶＨに設定し、それ以外の期間において高インピーダンス状態Ｈｉ−Ｚに設定する。ホスト装置４００のデータ端子ＨＤＡと第２の電源ノードＶＳＳ（低電位電源ノード）との間には、抵抗素子（終端抵抗素子）が設けられている。この抵抗素子により電荷が放電されるから、データ信号線ＳＤＡの電圧レベルは、第２のクロック期間ＴＣ２の終了後に緩やかにＬレベルに降下する。
【００８８】
図７（Ｂ）は、ＡＣＫ信号波形の別の例である。図７（Ｂ）に示すＡＣＫ信号波形では、記憶装置１００の制御部１１０は、第２のクロック期間ＴＣ２のクロックに基づいて、データ端子ＴＤＡの電圧レベルを高インピーダンス状態Ｈｉ−ＺからＨレベルＶＨ（広義には第１の論理レベル）に変化させ、次にＨレベルＶＨからＬレベルＶＬ（広義には第２の論理レベル）に変化させる。そして第２のクロック期間ＴＣ２の終了後に、データ端子ＴＤＡを高インピーダンス状態Ｈｉ−Ｚに戻す。
【００８９】
具体的には、第２のクロック期間ＴＣ２の開始タイミングから第１の遅延時間ＴＤ１が経過するまで高インピーダンス状態Ｈｉ−Ｚに設定し、その後Ｈレベルに設定する。そして第２のクロック期間ＴＣ２の開始タイミングから第２の遅延時間ＴＤ２が経過するまでＨレベルを保持した後、Ｌレベルに設定する。そして第２のクロック期間ＴＣ２の終了タイミングで、高インピーダンス状態Ｈｉ−Ｚに戻す。
【００９０】
図７（Ｂ）に示すＡＣＫ信号波形では、第２のクロック期間ＴＣ２の後半期間において、データ端子ＴＤＡの電圧レベルをＨレベルＶＨからＬレベルＶＬに変化させることで、データ信号線ＳＤＡの電圧レベルを急速に降下させることができる。こうすることで、次のリセット解除期間までの待ち時間を短くすることができるから、全体の書き込み処理時間をさらに短縮することができる。
【００９１】
以上説明したように、本実施形態の記憶装置及びホスト装置によれば、ホスト装置が、バスに接続された複数の記憶装置の各記憶装置に対してデータを書き込む処理において、各記憶装置へのデータ送信が完了した後にアクノリッジＡＣＫを順次受け取ることができる。こうすることで、各記憶装置に対して各々アクノリッジ待ち期間を設ける必要がなくなり、１つのアクノリッジ待ち期間を設ければよいから、全体の書き込み処理時間を短縮することができる。さらに記憶装置の個数が増加した場合でも、アクノリッジ待ち期間の長さは増加しないから、全体の書き込み処理時間の増加を抑えることができる。
【００９２】
図８に、記憶装置１００及びホスト装置４００のデータ端子ＴＤＡ、ＨＤＡに接続される入出力バッファーの構成例を示す。図８の入出力バッファーは、記憶装置１００の制御部１１０及びホスト装置４００の通信処理部４１０に設けられる。
【００９３】
入出力バッファーは、出力バッファーＯＢＦ、入力バッファーＩＢＦ及び２つのインバーターＩＮＶ１、ＩＮＶ２を含む。出力バッファーＯＢＦは、Ｐ型トランジスターＴＰ１、ＴＰ２及びＮ型トランジスターＴＮ１、ＴＮ２を含む。入力バッファーＩＢＦは、Ｐ型トランジスターＴＰ３、ＴＰ４及びＮ型トランジスターＴＮ３、ＴＮ４を含む。
【００９４】
制御信号ＶＣＮＴは、入出力バッファーの動作モード（入力モードと出力モード）を設定するための信号である。入出力バッファーが入力モードに設定されている場合には、データ端子ＴＤＡ（又はＨＤＡ）からの信号がバッファーされて、内部信号ＶＡとして内部回路に供給される。また、入出力バッファーが出力モードに設定されている場合には、内部回路からの内部信号ＶＡがバッファーされてデータ端子ＴＤＡ（又はＨＤＡ）から出力される。
【００９５】
制御信号ＶＣＮＴがＨレベルの場合には、ＴＮ２のゲートはＨレベルに、ＴＰ２のゲートはＬレベルに設定されるから、ＴＮ２、ＴＰ２は共にオン状態になる。一方、ＴＮ４のゲートはＬレベルに、ＴＰ４のゲートはＨレベルに設定されるから、ＴＮ４、ＴＰ４は共にオフ状態になる。従って、出力バッファーＯＢＦは、内部信号ＶＡをバッファーしてデータ端子ＴＤＡ（又はＨＤＡ）から出力することができる。また、入力バッファーＩＢＦは、第１、第２の電源ＶＤＤ、ＶＳＳと非接続になるから動作しない。
【００９６】
制御信号ＶＣＮＴがＬレベルの場合には、ＴＮ２のゲートはＬレベルに、ＴＰ２のゲートはＨレベルに設定されるから、ＴＮ２、ＴＰ２は共にオフ状態になる。一方、ＴＮ４のゲートはＨレベルに、ＴＰ４のゲートはＬレベルに設定されるから、ＴＮ４、ＴＰ４は共にオン状態になる。従って、入力バッファーＩＢＦは、データ端子ＴＤＡ（又はＨＤＡ）からの入力信号をバッファーして内部回路へ出力することができる。また、出力バッファーＯＢＦは、第１、第２の電源ＶＤＤ、ＶＳＳと非接続になるから動作せず、データ端子ＴＤＡ（又はＨＤＡ）は高インピーダンス状態に設定される。
【００９７】
このように図８の入出力バッファーを用いることで、図６に示したように、第１のクロック期間ＴＣ１では、データ端子ＨＤＡを出力状態に、データ端子ＴＤＡを高インピーダンス状態に設定することができる。また第２のクロック期間ＴＣ２では、データ端子ＴＤＡを出力状態に、データ端子ＨＤＡを高インピーダンス状態に設定することができる。そして第１のクロック期間ＴＣ１と第２のクロック期間ＴＣ２との間においては、データ端子ＨＤＡとデータ端子ＴＤＡとを共に高インピーダンス状態に設定することができる。
【００９８】
３．システム、液体容器及び回路基板
図９に本実施形態のシステムの基本的な構成例を示す。本実施形態のシステムは、例えばインクジェット方式のプリンターなどであって、第１の記憶装置１００−１〜第ｎ（ｎは２以上の整数）の記憶装置１００−ｎ、記憶装置が実装されるｎ個の回路基板２００−１〜２００−ｎ、回路基板を備えるｎ個の液体容器３００−１〜３００−ｎ及びホスト装置４００を含む。なお、本実施形態のシステムは図９の構成に限定されず、その構成要素の一部を省略したり、他の構成要素に置き換えたり、他の構成要素を追加するなどの種々の変形実施が可能である。
【００９９】
以下では、ホスト装置４００がインクジェット方式のプリンター本体であり、液体容器３００がインクカートリッジであり、回路基板２００がインクカートリッジに設けられた回路基板である場合を例に説明する。但し、本実施形態では、ホスト装置、液体容器、回路基板は、他の装置、容器、回路基板であってもよい。例えば、ホスト装置はメモリーカードのリーダー／ライターであってもよく、回路基板はメモリーカードに設けられた回路基板であってもよい。
【０１００】
第１の記憶装置１００−１〜第ｎの記憶装置１００−ｎは、それぞれリセット端子ＴＲＳＴ、クロック端子ＴＣＫ、データ端子ＴＤＡ、第１の電源端子ＶＤＤ及び第２の電源端子ＶＳＳを含む。これらｎ個の記憶装置１００−１〜１００−ｎの各々は、記憶部１２０（例えば不揮発性メモリー等）を含み、それぞれの記憶部１２０にはｎ個の液体容器（例えばインクカートリッジ等）３００−１〜３００−ｎを識別するためのＩＤ（Identification)情報（例えばＩＤ＝１、ＩＤ＝２、ＩＤ＝３など）が記憶されている。ＩＤは、液体容器が収容する液体の色などの種類毎に異なるものが付与される。
【０１０１】
ホスト装置４００は、例えばプリンター本体などであって、ホスト側リセット端子ＨＲＳＴ、ホスト側クロック端子ＨＣＫ、ホスト側データ端子ＨＤＡ、第１の電源端子ＶＤＤ及び第２の電源端子ＶＤＤを含む。
【０１０２】
上述したように、本実施形態の記憶装置、ホスト装置及びシステムによれば、ホスト装置（プリンター本体）が、バスに接続された複数の記憶装置の各記憶装置に対してデータを書き込む処理において、各記憶装置へのデータ送信が完了した後にアクノリッジＡＣＫを順次受け取ることができるから、全体の書き込み処理時間を短縮することができる。
【０１０３】
インクジェット方式のプリンターなどでは、インクカートリッジ（液体容器）は、通常交換可能な構造になっているために、電気的接続部分の接触不良が生じ易い。例えば通信中にデータ端子の接触不良が生じると通信エラーになり、誤ったデータが書き込まれるおそれがある。或いは、記憶部の書き込み動作中に電源端子の接触不良が生じると、書き込みエラーが発生するおそれがある。このような不具合の発生を抑えるためには、ホスト装置から各記憶装置への書き込み処理時間をできるだけ短縮することが望ましい。
【０１０４】
本実施形態の記憶装置、ホスト装置及びシステムによれば、ホスト装置から各記憶装置への書き込み処理時間を短縮することができるから、電気的接続部分の接触不良等による不具合の発生を低減することが可能になる。
【０１０５】
図１０に、本実施形態の液体容器（インクカートリッジ）３００の詳細な構成例を示す。液体容器３００の内部には、インクを収容するための図示しないインク室が形成される。また、液体容器３００には、インク室に連通するインク供給口３４０が設けられる。このインク供給口３４０は、液体容器３００がプリンターに装着された時に、印刷ヘッドユニットにインクを供給するためのものである。
【０１０６】
液体容器３００は、回路基板２００を含む。回路基板２００には、本実施形態の記憶装置１００が設けられ、インク消費量などのデータの記憶やホスト装置４００とのデータ送受信を行う。回路基板２００は、例えばプリント基板により実現され、液体容器３００の表面に設けられる。回路基板２００には、第１の電源端子ＶＤＤ等の端子が設けられる。そして、液体容器３００がプリンターに装着された時に、それらの端子とプリンター側の端子が接触（電気的に接続）することで、電源やデータのやり取りが行われる。
【０１０７】
図１１（Ａ）、図１１（Ｂ）に、本実施形態の記憶装置１００が設けられた回路基板２００の詳細な構成例を示す。図１１（Ａ）に示すように、回路基板２００の表面（プリンターと接続される面）には、複数の端子を有する端子群が設けられる。この端子群は、第１の電源端子ＶＤＤ、第２の電源端子ＶＳＳ、リセット端子ＴＲＳＴ、クロック端子ＴＣＫ、データ端子ＴＤＡを含む。各端子は、例えば矩形状（略矩形状）に形成された金属端子により実現される。そして、各端子は、回路基板２００に設けられた図示しない配線パターン層やスルーホールを介して、記憶装置１００に接続される。
【０１０８】
図１１（Ｂ）に示すように、回路基板２００の裏面（プリンターと接続される面の裏側の面）には、本実施形態の記憶装置１００が設けられる。記憶装置１００は、例えば、ＥＥＰＲＯＭ、フラッシュメモリーや強誘電体メモリー等を有する半導体記憶装置により実現できる。この記憶装置１００には、インク又は液体容器３００に関連する種々のデータが格納され、例えば、液体容器３００を識別するためのＩＤ情報やインクの消費量等のデータが格納される。インク消費量のデータは、液体容器３００内に収容されたインクについて、印刷の実行等に伴い消費されるインク量の累計を示すデータである。このインク消費量のデータは、液体容器３００内のインク量を示す情報であってもよく、消費したインク量の割合を示す情報であってもよい。
【０１０９】
なお、以上のように本実施形態について詳細に説明したが、本発明の新規事項及び効果から実体的に逸脱しない多くの変形が可能であることは当業者には容易に理解できるであろう。従って、このような変形例は全て本発明の範囲に含まれるものとする。例えば、明細書又は図面において、少なくとも一度、より広義又は同義な異なる用語と共に記載された用語は、明細書又は図面のいかなる箇所においても、その異なる用語に置き換えることができる。また記憶装置、ホスト装置、回路基板、液体容器及びシステムの構成、動作も本実施形態で説明したものに限定されず、種々の変形実施が可能である。
【符号の説明】
【０１１０】
１００  記憶装置、１１０  制御部、１２０  記憶部、１３０  記憶制御部、
２００  回路基板、３００  液体容器、３４０  インク供給口、４００  ホスト装置、
４１０  通信処理部、４２０  制御部、
ＩＤ＿ＣＯＭＰ  ＩＤコンパレーター、Ｉ／Ｏ＿ＣＮＴＬ  Ｉ／Ｏコントローラー、
ＯＰＣＤＥＣ  オペレーションコードデコーダー、
ＡＤＤＲ＿ＣＯＵＮＴ  アドレスカウンター、
ＳＣＫ  クロック信号線、ＳＤＡ  データ信号線、ＸＲＳＴ  リセット信号線、
ＴＣＫ  クロック端子、ＴＤＡ  データ端子、ＴＲＳＴ  リセット端子、
ＨＣＫ  クロック端子、ＨＤＡ  データ端子、ＨＲＳＴ  リセット端子
【図１】
0005790119.tif 000002
【図２】
0005790119.tif 000003
【図３】
0005790119.tif 000004
【図４】
0005790119.tif 000005
【図５】
0005790119.tif 000006
【図６】
0005790119.tif 000007
【図７】
0005790119.tif 000008
【図８】
0005790119.tif 000009
【図９】
0005790119.tif 000010
【図１０】
0005790119.tif 000011
【図１１】
0005790119.tif 000012