(57)【要約】【課題】パススルー方式の無線通信を行う場合に、回路又は装置の選択幅を広くすることを目的とする。【解決手段】第１回路と、第１回路と第１インタフェースを用いて接続され、外部装置と第２インタフェースを用いて接続される第２回路と、を有する。第２回路は、外部装置から送信データを受信した場合、第２インタフェースにおける第１のエンドポイント構成を示す第１情報を送信データに設定し、第１情報が設定された送信データを第１のエンドポイント構成とは異なる第２のエンドポイト構成で第１インタフェースから第１回路に送信する。また、第１回路は、受信した前記送信データに付与された第１情報に基づいて、送信データにおける第１のエンドポイント構成を解釈するデータ解釈部を有する。【選択図】図２
2015065499.tif 000002
【特許請求の範囲】
【請求項１】
外部装置とＵＳＢ規格に応じた通信経路を用いて着脱可能に接続される通信装置であって、
第１回路と、
前記第１回路と第１インタフェースを用いて接続され、前記外部装置と第２インタフェースを用いて接続される第２回路と、を有し、
前記第２回路は、前記外部装置から送信データを受信した場合、前記第２インタフェースにおける第１のエンドポイント構成を示す第１情報を前記送信データに設定し、
前記第１情報が設定された前記送信データを前記第１のエンドポイント構成とは異なる第２のエンドポイト構成で前記第１インタフェースから前記第１回路に送信し、
前記第１回路は、受信した前記送信データに付与された前記第１情報に基づいて、前記送信データにおける前記第１のエンドポイント構成を解釈するデータ解釈部、を有することを特徴とする通信装置。
【請求項２】
前記第２回路は、前記第１インタフェースにおける複数のエンドポイント構成の使用状態を記録する記録部と、
前記記録部に記録されたエンドポイント構成の内、使用されていない前記エンドポイント構成を、前記第２のエンドポイント構成として選択する選択部と、を有することを特徴とする請求項１に記載の通信装置。
【請求項３】
前記データ解釈部は、前記外部装置の駆動を制御するドライバである、ことを特徴とする請求項１から請求項２のいずれかに記載の通信装置。
【請求項４】
前記第２回路は、前記外部装置から前記送信データを受信する前に、前記外部装置と通信を行い、前記第１のエンドポイント構成を決定する、ことを特徴とする請求項１から請求項３のいずれか一項に記載の通信装置。
【請求項５】
前記第２回路は、前記外部装置から送信データを受信した場合、前記送信データの送信目的を示す第２情報を前記送信データに設定する、ことを特徴とする請求項１から請求項４のいずれか一項に記載の通信装置。
【請求項６】
前記第１回路は、外部装置とネッワークを通じて通信を行うネットワーク通信部を有し、
前記第１回路は、前記外部装置から前記ネットワークを通じて取得したデータを、前記第１インタフェースを用いて前記第２回路に送信する、ことを特徴とする請求項１から請求項５のいずれか一項に記載の通信装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、外部装置との間でデータの通信を行う通信装置に関する。
【背景技術】
【０００２】
従来、ＵＳＢ（Universal Serial Bus）規格等に対応する通信経路を用いて通信を行う通信装置が知られている。また、ＵＳＢ規格では、１つの物理的な通信経路に対して、エンドポイント構成を複数設定することができる。即ち、装置間をワイヤー等の物理的な通信経路で繋いだ場合でも、この通信経路を複数に区別するエンドポイント構成を設定することで、１つの通信経路を用いてパラレル通信を行うことができる（例えば、特許文献１参照）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００８−４６８５８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ＵＳＢ規格に応じた通信方式として、パススルー方式が知られている。このパススルー方式では、まず、送信側の回路と、受信側の回路（又は装置）との間に、中継回路が介在しており、各回路はＵＳＢ方式の通信経路を用いて直列接続されている。そして、中継回路は、送信側の回路から通信経路を通じて入力した送信データに対して、何ら処理を行なうことなく、受信側の回路に送信データを送信する。
このようなパススルー方式を行う前提として、送信側の回路と中継回路との間のエンドポイント構成と、中継回路と受信側の回路との間のエンドポイント構成とが一致している必要がある。ここで、一致とは、エンドポイント構成の種別が一致していることを意味する。即ち、送信側の回路と中継回路との間で予めエンドポイント構成が規定されている場合、パススルー方式を採用するためには、エンドポイント構成が同じ受信側の回路しか使用することができなかった。
【０００５】
本発明は、上記課題にかんがみてなされたもので、パススルー方式の無線通信を行う場合に、回路又は装置の選択幅を広くすることを目的とする。
【課題を解決するための手段】
【０００６】
上記課題を解決するために、本発明の一態様では、外部装置とＵＳＢ規格に応じた通信経路を用いて着脱可能に接続される通信装置であって、第１回路と、前記第１回路と第１インタフェースを用いて接続され、前記外部装置と第２インタフェースを用いて接続される第２回路と、を有し、前記第２回路は、前記外部装置から送信データを受信した場合、前記第２インタフェースにおける第１のエンドポイント構成を示す第１情報を前記送信データに設定し、前記第１情報が設定された前記送信データを前記第１のエンドポイント構成とは異なる第２のエンドポイト構成で前記第１インタフェースから前記第１回路に送信し、前記第１回路は、受信した前記送信データに付与された前記第１情報に基づいて、前記送信データにおける前記第１のエンドポイント構成を解釈するデータ解釈部、を有する。
【０００７】
上記のように構成された発明では、第１回路と第２回路間との間の第２のエンドポイント構成が、第２回路と外部装置間との間の第１のエンドポイント構成と異なる場合でも、データ解釈部が、第１情報に基づいて、送信データにおける第１のエンドポイント構成を解釈することが可能となる。
そのため、第１回路と第２回路との間のエンドポイント構成と、第２回路と外部装置との間のエンドポイント構成とを、一致させる必要がなくなる。その結果、第１回路、第２回路、及び外部装置の組合せの幅を広げることができる。
【０００８】
また、本発明の一態様では、前記第２回路は、前記第１インタフェースにおける複数のエンドポイント構成の使用状態を記録する記録部と、前記記録部に記録されたエンドポイント構成の内、使用されていない前記エンドポイント構成を、前記第２のエンドポイント構成として選択する選択部と、を有する。
上記のように構成された発明では、第１回路と第２回路との間のエンドポイント構成を動的に変更する場合でも、本発明を適用することができる。
【０００９】
そして、本発明の一態様では、前記データ解釈部は、前記外部装置の駆動を制御するドライバである。
上記のように構成された発明では、外部装置の駆動を制御するためのドライバを、第１回路内に実装することができ、回路配置に関する設計の柔軟度を高めることができる。
【００１０】
さらに、本発明の一態様では、前記第２回路は、前記外部装置から前記送信データを受信する前に、前記外部装置と通信を行い、前記第１のエンドポイント構成を決定する。
上記のように構成された発明では、第２回路と外部装置との間で規定されるエンドポイント構成をより柔軟に決定することができる。
【００１１】
さらに、本発明の一態様では、前記第２回路は、前記外部装置から送信データを受信した場合、前記送信データの送信目的を示す第２情報を前記送信データに設定する。
上記のように構成された発明では、第２回路が送信目的の異なる送信データを受信する場合でも、各送信データを区別することができる。
【００１２】
そして、本発明の一態様では、前記第１回路は、外部装置とネッワークを通じて通信を行うネットワーク通信部を有し、前記第１回路は、前記外部装置から前記ネットワークを通じて取得したデータを、前記第１インタフェースを用いて前記第２回路に送信する、構成としてもよい。
上記のように構成された発明では、第１回路は、ネットワークを通じて取得されたデータを第２回路に供給する機能を備えることで、第２回路の機能をＵＳＢ規格に応じたものに限定することができる。
【図面の簡単な説明】
【００１３】
【図１】通信システム１００を説明する斜視図である。
【図２】プリンター１の構成を説明するブロック構成図である。
【図３】認証用デバイス５の構成を説明するブロック構成図である。
【図４】内部通信経路３０と、外部通信経路２とに設定されるエンドポイント構成を示す図である。
【図５】各エンドポイントを通じて送信される送信データ３００を説明する図である。
【図６】プリンター１と認証用デバイス５との間で行なわれる通信を説明するタイミングチャートである。
【図７】第２回路２０により行われるヘッダ付与処理を説明するフローチャートである。
【図８】ステップＳＡ１において実行される発行処理を説明するフローチャートである。
【図９】第１回路１０と第２回路２０との間で行なわれるバス操作を説明するタイミングチャートである。
【発明を実施するための形態】
【００１４】
以下、下記の順序に従って本発明の実施形態を説明する。
１．第１の実施形態：
１．１．通信装置の構成：
１．２．パススルーについて：
１．３．バス操作について：
２．第２の実施形態：
３．その他の実施形態：
【００１５】
１．第１の実施形態：
１．１．通信装置の構成：
図１は、通信システム１００を説明する斜視図である。
通信システム１００は、プリンター１と、認証用デバイス５と、ＰＣ４を備える。本実施形態では通信装置は、プリンター１により実現される。プリンター１は、ＵＳＢ規格に対応する外部通信経路２を通じて認証用デバイス５と接続されている。また、プリンター１は、ネットワーク３を通じてＰＣ４にも接続されている。なお、通信経路２及びネットワーク３は、有線のみならず、無線を含む総称である。
通信システム１００では、ユーザが認証用デバイス５に認証用カード６を挿入することで、プリンター１を用いた印刷処理を可能とする。また、ユーザは、ＰＣ４を操作することで、ＰＣ４に記録された画像データをネットワーク３を通じてダウンロードし、プリンター１に印刷させることができる。
【００１６】
図２は、プリンター１の構成を説明するブロック構成図である。また、図３は、認証用デバイス５の構成を説明するブロック構成図である。
プリンター１は、第１回路１０と、第２回路２０と、内部通信経路３０と、プリント機構４０と、を有する。そして、第１回路１０と第２回路２０とは、内部通信経路３０を通じて通信可能に接続されている。また、第２回路２０は、着脱可能に接続される外部通信経路２を通じて、認証用デバイス５と通信可能に接続されている。
【００１７】
第１回路１０は、コントローラ１１と、ＮＷＩＦ１２と、ＵＳＢホスト１３と、メモリ１４と、備える。コントローラ１１は、例えば、ＣＰＵ（Central Processing Unit）や、ＲＯＭ（Read Only Memory）、ＲＡＭ（Random Access Memory）等を備えて構成されている。また、コントローラ１１は、バス１５を通じて、ＮＷＩＦ１２と、ＵＳＢホスト１３と、メモリ１４と、にそれぞれ電気的に接続されている。
そして、コントローラ１１は、ＲＯＭに記録されたプログラムを実行することで、認証用ドライバ１１１と、バス制御ドライバ１１２と、を機能的に備える。
【００１８】
ＮＷＩＦ（Network Inter Face）１２は、例えば、周知のＬＡＮボードや、ＬＡＮカードにより構成される。ＮＷＩＦ１２は、第１回路１０をネットワーク３に繋ぐＴＣＰ／ＩＰプロトコルに応じたインタフェースとして機能する。ＮＷＩＦ１２は、コントローラ１１の制御のもと、ＰＣ４との間で、データやコマンドの通信を行う。
また、ＮＷＩＦ１２は、コントローラ１１の内部に実装されたＬＡＮチップとして実現されるものであってもよい。
そのため、本発明のネットワーク通信部はＮＷＩＦ１２により実現される。
【００１９】
ＵＳＢホスト１３は、第２回路２０のＵＳＢデバイス２３との間でＵＳＢ（Universal Serial Bus）規格に準じた通信を行う。ＵＳＢホスト１３は、第２回路２０に実装されたＵＳＢデバイス２３との間で、論理的な通信経路であるエンドポイント構成を設定する。エンドポイント構成は、物理的な内部通信経路３０を論理的に複数の通信経路に分割する。ＵＳＢホスト１３が対応するＵＳＢ方式は、ＵＳＢ２．０や、ＵＳＢ３．０である。また、ＵＳＢホスト１３は、コントローラ１１の内部に実装されたＵＳＢチップとして実現されるものであってもよい。
【００２０】
メモリ１４には、ＵＳＢホスト１３と、ＵＳＢデバイス２３との間で設定された各エンドポイント構成に応じた、バッファ領域が動的に割当てられている。即ち、ＵＳＢデバイス２３からＵＳＢホスト１３へ送信されたデータは、対応するエンドポイント構成に応じて、メモリ１４の所定のバッファ領域に記録される。
【００２１】
認証用ドライバ１１１は、認証用デバイス５の駆動を制御するためのドライバとして機能する。認証用ドライバ１１１は、認証用デバイス５との間でデータの通信を行いつつ、プリンター１の使用を許可するための認証処理を行なう。本実施形態では、データ解釈部は、認証用ドライバ１１１により実現される。
バス制御ドライバ１１２は、第２回路２０と接続される外部通信経路２のバスのオン・オフや、シャットダウン等を制御するドライバとして機能する。
【００２２】
第２回路２０は、コントローラ２１と、ＵＳＢホスト２２と、ＵＳＢデバイス２３と、メモリ２４と、メカコントローラ２５と、備える。コントローラ２１は、例えば、ＣＰＵや、ＲＯＭ、ＲＡＭを備えて構成されている。コントローラ２１は、ＵＳＢホスト２２、ＵＳＢデバイス２３、メモリ２４、メカコントローラ２５と、に、それぞれバス２６を通じて接続されている。そのため、コントローラ２１は、ＵＳＢデバイス２３と、ＵＳＢホスト２２との間に電気的に介在している。
また、コントローラ２１は、ＲＯＭに記録されたプログラムを実行することで、印刷データ展開部２１１と、ヘッダ付与部２１２と、を機能的に有する。
【００２３】
ＵＳＢデバイス２３は、第１回路１０のＵＳＢホスト１３との間でＵＳＢ規格に応じた通信を行う。また、ＵＳＢデバイス２３とＵＳＢホスト１３との間には、論理的な通信経路であるエンドポイント構成が設定されている。本実施形態では、ＵＳＢデバイス２３が第１のインタフェースとして機能する。
【００２４】
ＵＳＢホスト２２は、認証用デバイス５のＵＳＢデバイス５２との間でＵＳＢ規格に準じた通信を行う。即ち、ＵＳＢホスト２２と、認証用デバイス５のＵＳＢデバイス５２との間には、論理的な通信経路であるエンドポイント構成が設定されている。本実施形態では、ＵＳＢホスト２２が第２のインタフェースとして機能する。
【００２５】
メモリ２４には、ＵＳＢホスト１３とＵＳＢデバイス２３との間で設定したエンドポイント構成、更には、ＵＳＢホスト２２とＵＳＢデバイス５２との間で設定したエンドポイント構成に応じた、バッファ領域が動的に割当てられている。即ち、ＵＳＢホスト１３からＵＳＢデバイス２３へ送信されたデータ、又は、ＵＳＢデバイス５２からＵＳＢホスト２２へ送信されたデータは、対応するエンドポイント構成に応じて、メモリ２４の所定のバッファ領域に記録される。
【００２６】
メカコントローラ２５は、印刷データ展開部２１１によりデコードされた印刷用データをもとに、プリント機構４０を駆動させる。この印刷用データは、例えば、第１回路１０のＮＷＩＦ１２を通じてＰＣ４から取得される。
【００２７】
プリント機構４０は、メカコントローラ２５に電気的に接続されている。プリント機構４０は、搬送機構（図示しない）や、印刷ヘッド（図示しない）を有する。印刷ヘッドは、例えば、シアン、マゼンダ、イエロー、ブラック、ライトシアン、ライトマゼンダ、グレーの各種液体に対応したカートリッジと接続され、各カートリッジから供給されるインクを吐出する。
搬送機構は、紙送りモーターや紙送りローラーを備え、メカコントローラ２５に駆動制御されることにより、用紙を搬送する方向である送り方向に沿って被印刷物を搬送する。
【００２８】
そして、図３に示すように、認証用デバイス５は、コントローラ５１と、ＵＳＢデバイス５２と、認証用モジュール５３と、メモリ５５と、備えている。認証用デバイス５は、第１回路１０が備える認証用ドライバ１１１により駆動を制御される。そのため、認証用デバイス５と認証用ドライバ１１１との間の通信は、第２回路２０を介在させた『パススルー』により行われる。
【００２９】
コントローラ５１は、ＵＳＢデバイス５２と、認証用モジュール５３と、メモリ５５とに、バス５６を通じて電気的に接続されている。そして、コントローラ５１は、ＵＳＢデバイス５２、認証用モジュール５３の駆動を制御する。
【００３０】
ＵＳＢデバイス５２は、第２回路２０のＵＳＢホスト２２との間でＵＳＢ規格に応じた無線通信を行う。即ち、認証用デバイス５のＵＳＢデバイス５２と、第２回路２０のＵＳＢホスト２２との間には、論理的な通信経路であるエンドポイント構成が設定されている。
【００３１】
メモリ５５は、ＵＳＢホスト２２とＵＳＢデバイス２３との間で設定したエンドポイント構成に応じた、バッファ領域が動的に割当てられている。即ち、ＵＳＢホスト２２からＵＳＢデバイス５２へ送信されたデータは、対応するエンドポイント構成に応じて、メモリ５５の所定のバッファ領域に記録される。
【００３２】
認証用モジュール５３は、例えば、カードリーダー等の読み取り装置により構成される。また、認証用モジュール５３は、認証用カード６がカードスロット５４に挿入されると、この認証用カード６に記録された認証情報を読み取り、この認証情報を、コントローラ５１に出力する。コントローラ５１は、プリンター１から、この認証情報を読み出す旨のコマンド（リードコマンド）の送信を受けると、読み取られた認証情報（リードデータ）を、ＵＳＢデバイス５２に出力する。ＵＳＢデバイス５２は、第２回路２０のＵＳＢホスト２２との間で設定された所定のエンドポイント構成を通じて、認証情報をプリンター１に送信する。
【００３３】
図４は、内部通信経路３０と、外部通信経路２とに設定されるエンドポイント構成を示す図である。本実施形態では、第１回路１０と第２回路２０とを繋ぐ内部通信経路３０でのエンドポイント構成は、『Ｂｕｌｋ』が用いられる。そのため、第１回路１０のＵＳＢホスト１３から、第２回路２０のＵＳＢデバイス２３への送信データの送信は、『Ｂｕｌｋ−ＯＵＴ』が用いられる。また、第２回路２０のＵＳＢデバイス２３から、第１回路１０のＵＳＢホスト１３への送信データの送信は、『Ｂｕｌｋ−ＩＮ』が用いられる。
また、第２回路２０と認証用デバイス５とを繋ぐ外部通信経路２でのエンドポイント構成は、『Ｉｎｔｅｒｒｕｐｔ』又は『Ｃｏｎｔｒｏｌ』が用いられる。そのため、第２回路２０のＵＳＢホスト２２から、認証用デバイス５のＵＳＢデバイス５２への送信データの送信は、『Ｉｎｔｅｒｒｕｐｔ−ＯＵＴ』、又は『Ｃｏｎｔｒｏｌ−ＯＵＴ』が用いられる。また、認証用デバイス５のＵＳＢデバイス５２から第２回路２０のＵＳＢホストへの送信データの送信は、『Ｉｎｔｅｒｒｕｐｔ−ＩＮ』、又は『Ｃｏｎｔｒｏｌ−ＩＮ』が用いられる。
無論、ここに記載したエンドポイント構成は一例に過ぎない。
【００３４】
第２回路２０は、認証用デバイス５からデータを受信する前に、認証用デバイス５と通信を行い、エンドポイント構成（第１のエンドポイント構成）を決定する。そのため、第２回路２０と認証用デバイス５との間で規定されるエンドポイント構成をより柔軟に決定することができる。
【００３５】
図５は、各エンドポイントを通じて送信される送信データ３００を説明する図である。送信データ３００はヘッダ３１０と、本データ３２０と、を備える。ヘッダは、第１回路１０と第２回路２０との間の通信の際に付与される。また、ヘッダ３１０には、本データ３２０の内容を識別するための各種の情報が格納されている。本実施形態では、ヘッダ３１０には、通信種別特定部３１１と、エンドポイント特定部３１２と、を備える。
【００３６】
通信種別特定部（第２情報）３１１は、送信データを通信する通信種別を示す。本実施形態では、通信種別特定部３１１は、少なくとも、『パススルー』、『バス操作』のいずれかの通信種別を識別する。『パススルー』は、第２回路２０がデータの中継を行う通信方法である。即ち、この『パススルー』では、認証用デバイス５から送信された送信データ３００を、第２回路２０のＵＳＢホスト２２とＵＳＢデバイス２３とを経由して、第１回路１０に送信する。また、『パススルー』では、第１回路１０から送信された送信データ３００を、第２回路２０のＵＳＢデバイス２３とＵＳＢホスト２２とを経由して、認証用デバイス５に送信する。
『バス操作』は、第１回路１０のバス制御ドライバ１１２が、第２回路２０のＵＳＢホスト２２に対して行う処理である。
【００３７】
エンドポイント特定部３１２は、送信データ３００が送信された際のエンドポイント構成を示す。例えば、認証用デバイス５から、エンドポイント構成として、『Interrupt-IN』により送信データ３００の送信が行われた場合、エンドポイント特定部３１２には、『Interrupt-IN』が示される。
【００３８】
本データ３２０は、第１回路１０、第２回路２０、認証用デバイス５において処理の対象となるデータである。例えば、制御コマンドや、認証用データ等が含まれる。
【００３９】
通信方式が『パススルー』の場合、認証用デバイス５と認証用ドライバ１１１との間の通信は、第２回路２０を経由して行われる。ここで、認証用ドライバ１１１は、認証用デバイス５から送信される送信データ３００を、エンドポイント構成に応じて解釈する。例えば、認証用デバイス５から送信される『検出信号』は、『Ｉｎｔｅｒｒｕｐｔ−ＩＮ』で送信された場合に解釈でき、『Ｃｏｎｔｏｒ』といった、他のエンドポイント構成では解釈できない。しかし、第２回路２０が第１回路１０と認証用デバイス５との間で介在しているため、第２回路２０から第１回路１０間でのエンドポイント構成が異なると、認証用ドライバ１１１は、送信データ３００を適切に解釈することができなくなる。そのため、従来の『パススルー』では、認証用デバイス５と第２回路２０との間で設定されたエンドポイント構成と、第２回路２０と第１回路１０との間で設定されたエンドポイント構成とを一致させる必要があった。
【００４０】
そこで、本発明では、送信データ３００のヘッダ３１０に、エンドポイント構成を特定するためのエンドポイント特定部３１２を付与しておき、第２回路２０が送信データ３００を中継する際に、エンドポイント構成が変化する場合でも、もとのエンドポイント構成を判断できるようにしている。
【００４１】
１．２．パススルーについて：
図６は、プリンター１と認証用デバイス５との間で行なわれる通信を説明するタイミングチャートである。また、図７は、第２回路２０により行われるヘッダ付与処理を説明するフローチャートである。図６で示す処理では、第１回路１０と第２回路２０との間で行われるエンドポイント構成の設定、及び第２回路２０と認証用デバイス５との間で行われるエンドポイント構成の設定は、時前に行われているものとする。
【００４２】
認証用デバイス５のコントローラ５１が、カードスロット５４に認証用カード６が挿入されたことを検出すると、コントローラ５１は、ステップＳＣ１では、ＵＳＢデバイス５２を用いて、検出信号を送信する。このとき、認証用デバイス５のＵＳＢデバイス５２から第２回路２０のＵＳＢホスト２２へは、エンドポイント構成『ＩｎｔｅｒｒｕｐｔーＩＮ』を用いて検出信号が送信される。このエンドポイント構成は、認証用ドライバ１１１との間で事前に取り決められたものである。
【００４３】
第２回路２０のＵＳＢホスト２２は、検出信号を受信すると、ステップＳＢ１においてヘッダ付与処理を行う。図７は、ステップＳＢ１において実行されるヘッダ付与処理を詳細に示すフローチャートである。
【００４４】
まず、図７のステップＳＢ１１において、第２回路２０がＵＳＢホスト２２を通じてデータを受信すると（ステップＳＢ１１：ＹＥＳ）、ステップＳＢ１２では、ヘッダ付与部２１２がデータを解析する。この実施形態では、データには、認証用デバイス５のコントローラ５１により認証用カード６が挿入されたことを検出した『検出信号』が含まれている。
一例として、ヘッダ付与部２１２は、メモリ２４に記録された図示しないテーブルを参照して、検出信号が『パススルー』の通信方式に対応していることを判断する。
【００４５】
そして、ヘッダ付与部２１２は、ステップＳＢ１３において、データ（検出信号）にヘッダ３１０を付与し、送信データ３００を生成する。この実施形態では、ヘッダ付与部２１２は、ヘッダ３１０に含まれる通信種別特定部３１１に『パススルー』を設定する。同様に、ヘッダ付与部２１２は、ヘッダ３１０に含まれるエンドポイント特定部３１２に『Interrupt-IN』を設定する。
【００４６】
そして、図６に戻り、ステップＳＢ２において、コントローラ２１は、ＵＳＢデバイス２３を用いて、送信データ３００を第１回路１０に送信する。このとき、送信データ３００は、第１回路１０と第２回路２０との間で設定したエンドポイント構成（Ｂｕｌｋ−ＩＮ）により送信される。
【００４７】
第１回路１０では、エンドポイント構成（Bulk-IN）により、送信データ３００を受信すると、認証用ドライバ１１１は、送信データ３００を解析し、新たな送信データを発行する（ＳＡ１）。本実施形態では、認証用ドライバ１１１は、検出信号を受信すると、認証用カード６に記録された認証用データを読み出すためのリードコマンドを発行する。
【００４８】
図８は、ステップＳＡ１において実行される発行処理を説明するフローチャートである。第１回路１０の認証用ドライバ１１１は、第２回路２０から送信データ３００を受信すると（ステップＳＡ１１：ＹＥＳ）、ステップＳＡ１２では、送信データ３００のヘッダ３１０を解析する。この実施形態では、第２回路２０から送信された送信データ３００のヘッダ３１０は、エンドポイント特定部３１２が『Interrupt-IN』となっている。そのため、認証用ドライバ１１１は、ヘッダ３１０に基づいて、本データ３２０が『検出信号』であることを解釈する。無論、認証用ドライバ１１１は、通信種別特定部３１１が『パススルー』であることを判断要素に加えるものであってもよい。
【００４９】
ステップＳＡ１３では、認証用ドライバ１１１は、受信した送信データ３００に応じて、新たな本データ３２０を発行する。具体的には、認証用ドライバ１１１は、返信信号に応じて、コマンド（リードコマンド）を発行し本データ３２０とする。
【００５０】
ステップＳＡ１４では、認証用ドライバ１１１は、発行した本データ３２０にヘッダ３１０を付与し、送信データ３００を発行する。本実施形態では、認証用ドライバ１１１は、『リードコマンド』を、認証用デバイス５に送信するために、送信データ３００のヘッダ３１０として、通信種別を『パススルー』とし、エンドポイント構成を『Control』とする。ステップＳＡ１４において、設定される通信種別と、エンドポイントとは、認証用ドライバ１１１と認証用デバイス５との間で予め取り決められている設定である。
【００５１】
そして、図６に戻り、ステップＳＡ２において、第１回路１０のＵＳＢホスト１３は、新たに発行された送信データ３００を第２回路２０のＵＳＢデバイス２３との間で設定されたエンドポイント構成『Bulk-OUT』で送信する。
【００５２】
第２回路２０では、ヘッダ付与部２１２は、第１回路１０から送信された送信データ３００を受信すると、ステップＳＢ３において、送信データ３００のヘッダ３１０を削除するヘッダ削除処理を行なう。そして、ステップＳＢ４では、第２回路２０のＵＳＢホスト２２は、データ（リードコマンド）を、エンドポイント（Contorol）により認証用デバイス５のＵＳＢデバイス５２に送信する。
【００５３】
認証用デバイス５では、第２回路２０から送信されたデータを受信すると、エンドポイント構成が『Control』であることから、データが『リードコマンド』であることを判断する。そして、ステップＳＣ２において、リードコマンドに対応するデータ（リードデータ）を発行する発行処理を行なう。そして、ステップＳＣ３では、認証用カード６から読み出したリードデータをエンドポイント構成（Control）から送信する。
【００５４】
第２回路２０は、ステップＳＢ５において、認証用デバイス５から送信されたデータ（リードデータ）に対して、ヘッダ付与処理を行う。このヘッダ付与処理は、ステップＳＢ１における処理と同様のものである。そして、第２回路２０は、ＳＢ６において、新たに発行された送信データ３００を、エンドポイント構成（Bukl-IN）で第１回路１０に送信する。
【００５５】
以上、説明したようにこの実施形態では、第１回路１０と第２回路間２０との間のエンドポイント構成が、第２回路２０と認証用デバイス５との間のエンドポイント構成と異なる場合でも、認証用ドライバ１１１が、ヘッダ３１０に付与された情報に基づいて、送信データ３００におけるエンドポイント構成を解釈することが可能となる。
そのため、第１回路１０と第２回路２０との間のエンドポイント構成と、第２回路２０と認証用デバイス５との間のエンドポイント構成とを、一致させる必要がなくなる。その結果、第１回路、第２回路、及び認証用デバイス（外部装置）５の組合せの幅を広げることができる。
また、外部装置の駆動を制御するためのドライバを、第１回路内に実装することができ、回路配置に関する設計の柔軟度を高めることができる。
【００５６】
１．３．バス操作について：
図９は、第１回路１０と第２回路２０との間で行なわれるバス操作を説明するタイミングチャートである。このバス操作では、第１回路１０のバス制御ドライバ１１２から、第２回路２０に対して、通信経路３のバスをオンする命令『ＶＢＵＳ  ＯＮ操作』が送信される。
【００５７】
まず、ステップＳＡ２１において、第１回路１０のバス制御ドライバ１１２から、第２回路２０に対して、通信経路３のバスをオンする『ＶＢＵＳ  ＯＮ操作』がエンドポイント（Ｂｕｌｋ−ＯＵＴ）で送信される。具体的には、バス制御ドライバ１１２は、送信データ３００のヘッダ３１０を構成する通信種別特定部３１１を『バス操作』に設定する。また、バス制御ドライバ１１２は、ヘッダ３１０を構成するエンドポイント特定部３１２を『ＮＡ』とする。即ち、『バス操作』においては、エンドポイント特定部３１２を特定しない。さらに、バス制御ドライバ１１２は、本データ３２０を『ＶＢＵＳ  ＯＮ操作』とする。
【００５８】
第２回路２０は、送信データ３００を受信すると、ステップＳＢ２１では、コントローラ２１は、送信データ３００のヘッダ３１０を解析し、送信データ３００が『バス操作』であることを判断する。そのため、ステップＳＢ２２では、コントローラ２１は、ＵＳＢホスト２２に対して通信経路３のバスをオンさせる。そして、ステップＳＢ２３では、コントローラ２１は、処理が終了したことを示す『処理結果』をエンドポイント（Ｂｕｌｋ−ＩＮ）で、第１回路１０に返信する。このとき、コントローラ２１は、本データである『処理結果』に付与するヘッダ３１０として、通信種別特定部３１１を『バス操作』とし、エンドポイント特定部３１２を『ＮＡ』とする。
【００５９】
以上説明したように、ヘッダ３１０には、送信データ３００の送信目的を示す通信種別特定部３１１（第２情報）が付与されているため、第１回路１０又は第２回路２０により、送信データ３００が、『パススルー』である場合と、『バス操作』である場合とを区別することが可能となる。
【００６０】
２．第２の実施形態：
また、第１回路１０と第２回路２０との間で設定されるエンドポイント構成を、以下のような構成とするものであってもよい。即ち、第２回路２０のコントローラ２１は、メモリ（記録部）２４に複数のエンドポイント構成の使用状態を記録している。また、コントローラ２１は、メモリ２４に記録されたエンドポイント構成の内、現在使用されていないエンドポイント構成を、第１回路１０と第２回路２０との間で設定されるエンドポイント構成（第２のエンドポイント構成）として選択する。例えば、メモリ２４には、『Ｂｕｌｋ』と『Ｃｏｎｔｒｏｌ』とが記録されている場合に、第２回路２０において、『Ｂｕｌｋ』がメカコントローラ２５に送信する送信データのためのエンドポイント構成として使用されている場合を想定する。このような場合、コントローラ２１は、第１回路１０と第２回路２０間での『パススルー』で使用するエンドポイント構成を『Ｃｏｎｔｒｏｌ』とする。
そのため、コントローラ２１は、本発明の選択部として機能する。
上記のように構成されることで、第１回路１０と第２回路２０との間のエンドポイント構成を動的に変更する場合でも、第２回路２０と認証用デバイス５との間のエンドポイント構成を変更することなく、『パススルー』を用いることができる。
【００６１】
３．その他の実施形態：
第１回路１０のコントローラ１１が、印刷データ展開部２１１を機能的に備えるものであってもよい。この場合、コントローラ１１は、まず、ＮＷＩＦ１２を通じて、ＰＣ４から印刷用データを取得する。次に、コントローラ１１の印刷データ展開部２１１は、取得した印刷用データをデコードし、内部通信経路３０を通じて、メカコントローラ２５に出力する。メカコントローラ２５は、デコードされた印刷用データをもとに、プリント機構４０を駆動させる。
また、第１回路１０のコントローラ１１が、ＰＣ４から供給された画像データを、プリンター１が処理可能な印刷データに変更するプリンタドライバとしての機能を有するものであってもよい。
第１回路１０にＰＣ４との通信を行う機能を集約することで、第２回路２０の機能をＵＳＢ通信のみに制限することができる。その結果、第２回路２０の回路構成をシンプルにすることができる。
【００６２】
なお、本発明は上記実施例に限られるものでないことは言うまでもない。
即ち、上記実施例の中で開示した相互に置換可能な部材および構成等を適宜その組み合わせを変更して適用してもよい。
公知技術であって上記実施例の中で開示した部材および構成等と相互に置換可能な部材および構成等を適宜置換し、またその組み合わせを変更して適用してもよい。
公知技術等に基づいて当業者が上記実施例の中で開示した部材および構成等の代用として想定し得る部材および構成等と適宜置換し、またその組み合わせを変更して適用してもよい。
【符号の説明】
【００６３】
１…プリンター、２…外部通信経路、３…ネットワーク、５…認証用デバイス、６…認証用カード、１０…第１回路、１１…コントローラ、１２…ＮＷＩＦ、１３…ＵＳＢホスト、１４…メモリ、１５…バス、２０…第２回路、２１…コントローラ、２２…ＵＳＢホスト、２３…ＵＳＢデバイス、２４…メモリ、２５…メカコントローラ、２６…バス、３０…内部通信経路、４０…プリント機構、５１…コントローラ、５２…ＵＳＢデバイス、５３…認証用モジュール、５４…カードスロット、５５…メモリ、５６…バス、１００…通信システム、１１１…認証用ドライバ、１１２…バス制御ドライバ、２１１…印刷データ展開部、２１２…ヘッダ付与部、３００…送信データ、３１０…ヘッダ、３１１…通信種別特定部、３１１…通信種別特定部、３１２…エンドポイント特定部、３２０…本データ
【図１】
2015065499.tif 000003
【図２】
2015065499.tif 000004
【図３】
2015065499.tif 000005
【図４】
2015065499.tif 000006
【図５】
2015065499.tif 000007
【図６】
2015065499.tif 000008
【図７】
2015065499.tif 000009
【図８】
2015065499.tif 000010
【図９】
2015065499.tif 000011