説明

リモートアクセスシステム、電子機器およびリモートアクセス処理方法

【課題】記憶装置を他の電子機器を介して遠隔制御するリモートアクセス機能を、利便性および拡張性に優れた仕組みとして実現するリモートアクセスシステムを提供する。
【解決手段】実施形態によれば、リモートアクセスシステムは、第2の電子機器が、記憶装置に対して発行する第1のプロトコルのローカルコマンドとコマンドタイプ情報とを伝達する第2のプロトコルのリモートコマンドを第1の電子機器に対して発行するリモートコマンド発行手段を具備する。第1の電子機器は、前記コマンドタイプ情報によって特定される手順に従って、前記リモートコマンドによって前記第2の電子機器から伝達される前記ローカルコマンドを含む1以上のローカルコマンドの前記記憶装置に対する発行と、前記記憶装置からのレスポンスを前記リモートコマンドに対するレスポンスに含めた前記第2の電子機器への伝達とを実行するコマンド処理手段を具備する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明の実施形態は、第1の電子機器によって制御される記憶装置を第2の電子機器から第1の電子機器を介して遠隔制御するリモートアクセス技術に関する。
【背景技術】
【0002】
近年、データ通信技術の向上やネットワーク環境の整備等に伴い、複数の電子機器間におけるデータのやり取りが様々な様態で行われている。このようなことから、複数の電子機器間におけるデータのやり取りに関する仕組みが、これまでも種々提案されている。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特表2004−531001号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
最近では、オフィス環境に止まらず、家庭環境においても、テレビジョン受像機、HDD(Hard disk drive)/DVD(Digital versatile disc)レコーダ、パーソナルコンピュータ(PC:Personal computer)、プリンタ等の家庭用電化製品間を無線通信によってケーブルレスで接続する無線LAN(Local area network)を構築することが行われ始めている。
【0005】
例えば、HDD/DVDレコーダやプリンタ等の中には、SDカード(登録商標)等の可搬媒体を収納するためのスロットを備えたものも存在する。そのため、これらHDD/DVDレコーダやプリンタ等に収納された可搬媒体を、無線通信によってPC等から遠隔制御したいという要望が高まっている。
【0006】
ところで、複数の家庭用電化製品間における通信は、有線または無線に関わらず、一般に、半二重方式またはそれに準ずる通信方式である。一方、可搬媒体の中には、全二重方式のインタフェースを有するものも少なくない。ある家庭用電化製品に収納された(全二重方式のインタフェースを有する)可搬媒体を(半二重方式の通信を実行する)他の家庭用電化製品から遠隔制御する場合、前段の半二重通信部分と後段の全二重通信部分とを整合させる必要が生じるが、複数の家庭用電化製品間における通信、つまり前段の半二重通信部分の処理は、後段の全二重通信部分との整合を意識することのない軽微なものであることが好ましい。
【0007】
また、可搬媒体の中には、新たな機能が追加され得るものも存在する。よって、新機能の追加に伴い、将来、後段の全二重通信部分で処理されるコマンドが増えたとしても、前段の半二重通信部分の処理を変更することなく運用できることが好ましい。
【0008】
本発明は、第1の電子機器によって制御される記憶装置を第2の電子機器から第1の電子機器を介して遠隔制御するリモートアクセス機能を、利便性および拡張性に優れた仕組みとして実現するリモートアクセスシステム、電子機器およびリモートアクセス処理方法を提供することを目的とする。
【課題を解決するための手段】
【0009】
実施形態によれば、第1の電子機器によって制御される記憶装置を第2の電子機器から前記第1の電子機器を介して遠隔制御するリモートアクセスシステムは、前記第2の電子機器が、前記記憶装置に対して発行する第1のプロトコルのローカルコマンドを伝達するためのコマンドであって、前記ローカルコマンドの種類を示すコマンド情報を含む第2のプロトコルのリモートコマンドを前記第1の電子機器に対して発行するリモートコマンド発行手段を具備する。前記第1の電子機器は、前記リモートコマンドに含まれる前記コマンドタイプ情報によって特定される手順に従って、前記リモートコマンドによって前記第2の電子機器から伝達される前記ローカルコマンドを含む1以上のローカルコマンドの前記記憶装置に対する発行と、前記記憶装置からのレスポンスを前記リモートコマンドに対するレスポンスに含めた前記第2の電子機器への伝達とを実行するコマンド処理手段を具備する。
【図面の簡単な説明】
【0010】
【図1】第1実施形態のリモートアクセスシステムの概略構成を示すブロック図。
【図2】第1実施形態のリモートアクセスシステムが適用する第1のプロトコルのコマンドタイプを示す図。
【図3】第1実施形態のリモートアクセスシステムが適用する第1のプロトコルのレスポンスタイプを示す図。
【図4】第1実施形態のリモートアクセスシステムにおけるデータ無しのコマンド実行シーケンスを示す図。
【図5】第1実施形態のリモートアクセスシステムにおけるデータアウトのコマンド実行シーケンスを示す図。
【図6】第1実施形態のリモートアクセスシステムにおけるデータインのコマンド実行シーケンスを示す図。
【図7】第2実施形態のリモートアクセスシステムにおけるACMDフラグをオンにした場合のコマンド実行シーケンスを示す図。
【図8】第2実施形態のリモートアクセスシステムにおけるtransフラグをオンにした場合のコマンド実行シーケンスを示す図。
【図9】第2実施形態のリモートアクセスシステムにおけるstbyフラグをオンにした場合のコマンド実行シーケンスを示す図。
【図10】第2実施形態のリモートアクセスシステムにおけるSTOPフラグをオンにした場合のコマンド実行シーケンスを示す図。
【図11】第2実施形態のリモートアクセスシステムにおけるBLKCOUNTフラグをオンにした場合のコマンド実行シーケンスを示す図。
【図12】第3実施形態のリモートアクセスシステムの概略構成を示すブロック図。
【発明を実施するための形態】
【0011】
以下、実施の形態について図面を参照して説明する。
【0012】
(第1実施形態)
まず、第1実施形態について説明する。
【0013】
図1は、本実施形態に係るリモートアクセスシステムの概略構成を示すブロック図である。図1に示すように、本実施形態のリモートアクセスシステムは、大きく分けて、リモートホスト1、ローカルホスト2および可搬デバイス3によって構成される。リモートホスト1は、例えばPCであり、ローカルホスト2は、例えばHDD/DVDレコーダである。可搬デバイス3は、例えばSDカード(登録商標)であり、例えばローカルホスト2に設けられたスロットに取り外し自在に収納される。
【0014】
ローカルホスト2は、ホストコントローラ25を介して可搬デバイス3を直接制御している。例えばローカルホスト2に設けられたスロットに収容された可搬デバイス3は、このホストコントローラ25と、コマンド/レスポンスポートおよびデータポートの物理伝送路を介して接続される。そのために、ホストコントローラ25と可搬デバイス3との間の通信は、コマンド/レスポンスポートとデータポートとが異なるデータ線構成を前提に設計されているコマンド、レスポンス、データ送受信体系の第1のプロトコル(全二重方式)が適用されている。また、図示していないが、ローカルホスト2からは、可搬デバイス3に対して、電源およびクロックも別の伝送路を用いて供給されている。ローカルホスト2に可搬デバイス3が接続されると、ローカルホスト2によって自動的に可搬デバイス3の初期化処理が行われ、可搬デバイス3は、スタンバイ(stby)状態になる。
【0015】
リモートホスト1とローカルホスト2とは、有線または無線の通信手段によって接続されている。当該有線または無線の通信手段による接続用のインタフェースとして、リモートホスト1とローカルホスト2との双方が、リモートコマンド送受信部(14,21)を有している。そして、リモートコマンド送受信部(14,21)間の通信は、入力ポートと出力ポートとが異なるデータ線構成を前提に設計されているコマンド、レスポンス、データ送受信体系の第2のプロトコル(半二重方式)が適用されている。
【0016】
従って、リモートホスト1からローカルホスト2を介して可搬デバイス3を遠隔制御する場合に実行される通信には、第2のプロトコルが適用される半二重通信部分と第1のプロトコルが適用される全二重通信部分とが混在することになる。そこで、本実施形態のリモートアクセスシステムは、リモートホスト1からローカルホスト2を介して可搬デバイス3を遠隔制御するリモートアクセス機能を、利便性および拡張性に優れた仕組みとして実現したものであり、以下、この点について詳述する。
【0017】
前述した(コマンド/レスポンスポートとデータポートとが異なるデータ線構成を前提に設計されているコマンド、レスポンス、データ送受信体系の)第1のプロトコルは、図2に示すように、br、bcr、ac、adtcの4つのコマンドタイプを持つ。brは、”Broadcast commands, no response”、bcrは、”Broad commands with response”、acは、”Addressed (point-to-point) commands”、adtcは、”Addressed (point-to-point) data transfer commands”と定義されている。また、第1のプロトコルは、図3に示すように、r1、r1b、r2、r3、r4、r5、r6、r7の8つのレスポンスタイプを持つ。r1は、”Normal Response Command”、r1bは、”Normal Response Command with busy”、r2は、”CID, CSD register”、r3は、”OCR register”、r4は、”IO_SEND_OP_COND response”、r5は、”IO_RW_DIRECT response”、r6は、”Published RCA response”、r7は、”Card interface condition”と定義されており、かつ、それぞれデータフォーマットとデータサイズとが定義されている。
【0018】
本実施形態のリモートアクセスシステムでは、リモート環境からの可搬デバイス3に対するアクセスを、以下の3体系に整理する。
【0019】
(1)データ無しのコマンド実行
(2)データアウトのコマンド実行
(3)データインのコマンド実行
上記(1)は、br、bcr、acのコマンドタイプに対応する。上記(2)は、adtcのコマンドタイプにおいてホスト機器がデータを書き込む場合である。また、上記(3)は、adtcのコマンドタイプにおいてホスト機器がデータを読み出す場合である。
【0020】
リモートホスト1は、ローカルホスト2を介して可搬デバイス3を遠隔制御する際、可搬デバイス3に発行する第1のプロトコルのコマンド(ローカルコマンド)を、第2のプロトコルのコマンド(リモートコマンド)でローカルホスト2に伝達する。ローカルコマンドは、コマンド番号と引数とで構成される。この際、リモートホスト1は、ローカルコマンドのコマンドタイプをリモートコマンドのヘッダ情報として併せて伝達する。
【0021】
一方、ローカルホスト2は、このコマンドタイプから、伝達されたローカルコマンドが上記(1)〜(3)の3体系のいずれに属するのかを判定し、判定した体系に対応する手順に従って、伝達されたローカルコマンドを含む1以上のローカルコマンドを可搬デバイス3に対して発行する。
【0022】
また、リモートホスト1は、このコマンドタイプに加えて、ローカルコマンドに対して期待される可搬デバイス3からのレスポンスの種類を示すレスポンスタイプをリモートコマンドのヘッダ情報としてローカルホスト2にさらに伝達する。前述したように、レスポンスタイプそれぞれにデータサイズが定義されているので、ローカルホスト2は、伝達されたレスポンスタイプに基づき、可搬デバイス3からのレスポンスを格納するための記憶領域を確保する。さらに、このレスポンスタイプによって、ローカルホスト2は、レスポンスのタイミングを認識することができる。
【0023】
ここで、図1を再び参照して、本実施形態のリモートアクセスシステムにおけるリモートホスト1およびローカルホスト2の各部の基本的な動作について説明する。
【0024】
リモートホスト1上で動作するアプリケーションプログラム11が、可搬デバイス3の制御を行う場合、コマンド生成部12にて、可搬デバイス3を制御するためのコマンドが生成される。制御対象の可搬デバイス3がリモートの環境に存在する場合、コマンド生成部12にて生成されたコマンドは、リモートコマンド生成部13にて、生成されたコマンドに応じて、リモートコマンドに変換される。この時、ヘッダ情報として、上記コマンドタイプとレスポンスタイプとが付与される。変換されたリモートコマンドは、リモートコマンド送受信部14によって、ローカルホスト2に送信される。
【0025】
ローカルホスト2は、リモートホスト1からのリモートコマンドをリモートコマンド送受信部21によって受信し、コマンドヘッダ解釈部22に転送する。コマンドヘッダ解釈部22は、このリモートコマンド送受信部21によって受信されたリモートコマンドについてヘッダの解釈を実行する。コマンドヘッダ解釈部22は、リモートコマンドヘッダから解釈したコマンドタイプとリモートコマンド本体とをローカルコマンド生成部24、リモートコマンドヘッダから解釈したレスポンスタイプをレスポンス解釈部23にそれぞれ転送する。
【0026】
ローカルコマンド生成部24は、コマンドヘッダ解釈部22から受け取ったコマンドタイプとリモートコマンド本体とから可搬デバイス3を制御するためのコマンド群を生成する。ローカルコマンド生成部24は、この生成したコマンド群を、コマンドヘッダ解釈部22から受け取ったコマンドタイプから特定される上記(1)〜(3)のいずれかの体系に対応する手順に従って、ホストコントローラ25経由で可搬デバイス3に発行する。
【0027】
可搬デバイス3内にて実行された結果は、ホストコントローラ25に戻され、レスポンス解釈部23にて確認される。レスポンス解釈部23は、コマンドヘッダ解釈部22から受け取ったレスポンスタイプに対応する、期待されるレスポンスデータフォーマットの場合、この結果をリモートコマンド送受信部21に送る。これにより、この結果はリモートホスト1に転送される。リモートホスト1では、レスポンス解釈部15にてレスポンスが解釈され、最終的に、アプリケーションプログラム11に実行結果が通知される。
【0028】
以上が、本実施形態のリモートアクセスシステムにおけるリモートホスト1およびローカルホスト2の各部の基本的な動作である。
【0029】
次に、上記(1)〜(3)の各体系のコマンド実行シーケンスを各々説明する。
【0030】
図4は、データ無しのコマンド実行シーケンスを示す図である。
【0031】
データなしのコマンドタイプ(br、bcr、ac)の場合、リモートホスト1は、ローカルホスト2に対して、コマンドタイプ、コマンド番号、引数およびレスポンスタイプを送信する(図4のa1)。一方、ローカルホスト2は、受信したコマンドタイプがデータなしのコマンドタイプ(br、bcr、ac)の場合、受信したコマンド番号および引数を可搬デバイス3に送信する(図4のa2,a3)。そして、ローカルホスト2は、可搬デバイス3から返却されたレスポンスをリモートホスト1に送信する(図4のa4〜a6)。なお、レスポンスがないコマンドの場合、ローカルホスト2は、レスポンスデータが空のレスポンスをリモートホスト1に送信する。
【0032】
図5は、データアウトのコマンド実行シーケンスを示す図である。
【0033】
データアウトのコマンドタイプ(adtc)の場合、リモートホスト1は、ローカルホスト2に対して、コマンドタイプ、コマンド番号、引数、レスポンスタイプおよびデータを送信する(図5のb1)。一方、ローカルホスト2は、受信したコマンドタイプがデータアウトのコマンドタイプ(adtc)の場合、まず、受信したコマンド番号および引数を可搬デバイス3に送信する(図5のb2,b3)。ローカルホスト2は、可搬デバイス3からレスポンスが返却されたら(図5のb4,b5)、受信したデータの可搬デバイス3への送信を実行する(図5のb6,b7)。ローカルホスト2は、受信したデータを可搬デバイス3へ送信し終えると、自動的に、ストップコマンドであるCMD13を発行する(図5のb8,b9)。ローカルホスト2は、このCMD13でデータの送信終了およびエラーが発生していないことを確認し(図5のb10,b11)、実行済みのコマンドのレスポンスをリモートホスト1に送信する(図5のb12)。
【0034】
図6は、データインのコマンド実行シーケンスを示す図である。
【0035】
データインのコマンドタイプ(adtc)の場合、リモートホスト1は、ローカルホスト2に対して、コマンドタイプ、コマンド番号、引数およびレスポンスタイプを送信する(図6のc1)。一方、ローカルホスト2は、受信したコマンドタイプがデータインのコマンドタイプ(adtc)の場合、まず、受信したコマンド番号および引数を可搬デバイス3に送信する(図6のc2,c3)。また、ローカルホスト2は、可搬デバイス3から返却されるレスポンスを受信する(図6のc4,c5)。ローカルホスト2は、可搬デバイス3からレスポンスを受信し終えると(図6のc6,c7)、自動的に、ストップコマンドであるCMD13を発行する(図6のc8,c9)。ローカルホスト2は、このCMD13でデータの受信終了およびエラーが発生していないことを確認し(図6のc10,c11)、実行済みのコマンドのレスポンスと受信したデータとをリモートホスト1に送信する(図6のc12)。
【0036】
以上のように、本実施形態のリモートアクセスシステムは、リモートホスト1からローカルホスト2にコマンドタイプおよびレスポンスタイプをコマンド(コマンド番号および引数)と同時に伝達する。ローカルホスト2は、伝達されたコマンドタイプおよびレスポンスタイプに基づき、コマンド実行シーケンスや、レスポンスのタイミング、サイズ等を認識する。これにより、リモートホスト1とローカルホスト2との間の通信を軽微なものとすることができる。また、将来、可搬デバイス3のコマンドが増えても、上記(1)〜(3)の3体系のいずれかに合致すれば、追加の実装が必要ない。
【0037】
また、データアウトにおいては、コマンドとデータとを一緒にリモートホスト1からローカルホスト2に伝達することによって、リモートホスト1とローカルホスト2とが無線接続されていた場合、当該無線区間上でのプロトコル情報のやりとりを削減することができる。同様に、データインにおいても、レスポンスとデータとを一緒にローカルホスト2からリモートホスト1に伝達することによって、無線区間上でのプロトコル情報のやりとりを削減することができる
(第2実施形態)
次に、第2実施形態について説明する。
【0038】
可搬デバイス3は、特定のコマンドにおいて、そのコマンドの前または後に固有のコマンドの実行を必要とする場合がある。本実施形態のリモートアクセスシステムは、前段の半二重通信部分でのコマンドおよびレスポンスの送受信を省略し、プロトコルのオーバヘッド削減を実現するために、当該特定のコマンドをリモートホスト1からローカルホスト2に伝達するためのリモートコマンドのヘッダにフラグを設定することで、ローカルホスト2と可搬デバイス3との間で前述の固有のコマンドを自動実行させる仕組みをさらに備える。
【0039】
図7は、ACMDフラグをオンにした場合のコマンド実行シーケンスを示す図である。
【0040】
可搬デバイス3に対してアプリケーション(拡張)コマンドを発行する場合、その前にCMD55を発行する必要がある。リモートホスト1は、アプリケーションコマンドをローカルホスト2に伝達する際、ACMDフラグをオンに設定する(図7のd1)。ローカルホスト2は、ACMDフラグがオンの場合、指定されたコマンドの前に、CMD55を可搬デバイス3に対して発行する(図7のd2,d3)。可搬デバイス3からレスポンスが返却されたら(図7のd4,d5)、ローカルホスト2は、伝達されたコマンドを可搬デバイス3に対して発行する(図7のd6,d7)。ローカルホスト2は、伝達されたコマンドに対して可搬デバイス3から返却されたレスポンスをリモートホスト1に送信する(図7のd8〜d10)。
【0041】
図8は、transフラグをオンにした場合のコマンド実行シーケンスを示す図である。
【0042】
可搬デバイス3のコマンドの中には、可搬デバイス3がtrans状態にあるときに発行されるべきコマンドが存在する。この種のコマンドを発行する際、可搬デバイス3がstby状態であったならば、その前に、可搬デバイス3をstby状態からtrans状態に遷移させるためのCMD7を発行する必要がある。リモートホスト1は、この種のコマンドをローカルホスト2に伝達する際、transフラグをオンに設定する(図8のe1)。
【0043】
ローカルホスト2は、可搬デバイス3がstby状態またはtrans状態のいずれの状態であるのかを把握しているので、transフラグがオンの場合、可搬デバイス3がstby状態であったならば、CMD7を発行してtrans状態に遷移させる(図8のe2,e3)。CMD7に対するレスポンスが可搬デバイス3から返却されたら(図8のe4,e5)、ローカルホスト2は、伝達されたコマンドを可搬デバイス3に対して発行する(図8のe6,e7)。可搬デバイス3が元々trans状態であった場合、CMD7の発行は不要であることは言うまでもない。ローカルホスト2は、伝達されたコマンドに対して可搬デバイス3から返却されたレスポンスをリモートホスト1に送信する(図8のe8〜e10)。
【0044】
図9は、stbyフラグをオンにした場合のコマンド実行シーケンスを示す図である。
【0045】
可搬デバイス3のコマンドの中には、可搬デバイス3がstby状態にあるときに発行されるべきコマンドが存在する。この種のコマンドを発行する際、可搬デバイス3がtrans状態であったならば、その前に、可搬デバイス3をtrans状態からstby状態に遷移させるためのCMD7を発行する必要がある。つまり、CMD7は、可搬デバイス3をstby状態とtrans状態との間で遷移させるためのコマンドである。リモートホスト1は、この種のコマンドをローカルホスト2に伝達する際、stbyフラグをオンに設定する(図9のf1)。
【0046】
ローカルホスト2は、可搬デバイス3がstby状態またはtrans状態のいずれの状態であるのかを把握しているので、stbyフラグがオンの場合、可搬デバイス3がtrans状態であったならば、CMD7を発行してstby状態に遷移させる(図9のf2,f3)。CMD7に対するレスポンスが可搬デバイス3から返却されたら(図9のf4,f5)、ローカルホスト2は、伝達されたコマンドを可搬デバイス3に対して発行する(図9のf6,f7)。可搬デバイス3が元々stby状態であった場合、CMD7の発行は不要であることは言うまでもない。ローカルホスト2は、伝達されたコマンドに対して可搬デバイス3から返却されたレスポンスをリモートホスト1に送信する(図9のf8〜f10)。
【0047】
図10は、STOPフラグをオンにした場合のコマンド実行シーケンスを示す図である。
【0048】
例えば、可搬デバイス3に対して複数ブロックのデータライト・リードを行う場合、通常、転送ストップコマンドであるCMD12を最後に発行する。そこで、例えば複数ブロックのデータライトを伴うコマンドをローカルホスト2に伝達する際、リモートホスト1は、STOPフラグをオンに設定する(図10のg1)。
【0049】
第1実施形態で説明したように、データアウトのコマンドタイプの場合、ローカルホスト2は、まず、受信したコマンド番号および引数を可搬デバイス3に送信し(図10のg2,g3)、可搬デバイス3からレスポンスが返却されたら(図10のg4,g5)、受信したデータの可搬デバイス3への送信を実行する(図10のg6,g7)。そして、STOTフラグがオンに設定されている場合、ローカルホスト2は、受信したデータを可搬デバイス3へ送信し終えた際、転送ストップコマンドであるCMD12を自動的に発行する(図10のg8,g9)。このCMD12に対するレスポンスが可搬デバイス3から返却されたら(図10のg10,g11)、ローカルホスト2は、実行済みのコマンドのレスポンスをリモートホスト1に送信する(図10のg12)。
【0050】
図11は、BLKCOUNTフラグをオンにした場合のコマンド実行シーケンスである。
【0051】
可搬デバイス3のコマンドのうち、CMD18またはCMD25は、データアウトのコマンドタイプであって、データサイズをCMD23によって事前に通知するためのコマンドである。リモートホスト1は、これらのコマンドをローカルホスト2に伝達する際、BLKCOUNTフラグをオンに設定する(図11のh1)。
【0052】
BLKCOUNTフラグがオンの場合、ローカルホスト2は、リモートホスト1から伝達されたデータのデータサイズを事前に可搬デバイス3に通知するためにCMD23を発行する(図11のh2,h3)。このCMD23に対するレスポンスが可搬デバイス3から返却されたら(図11のh4,h5)、ローカルホスト2は、伝達されたコマンドであるCMD18またはCMD25を可搬デバイス3に対して発行する(図11のh6,h7)。ローカルホスト2は、可搬デバイス3からレスポンスが返却されたら(図11のh8,h9)、受信したデータの可搬デバイス3への送信を実行する(図11のh10,h11)。ローカルホスト2は、受信したデータを可搬デバイス3へ送信し終えると、実行済みのコマンドのレスポンスをリモートホスト1に送信する(図11のh12)。
【0053】
以上のように、本実施形態のリモートアクセスシステムは、特定のコマンドの前後に必要とされるコマンド(引数なし、または伝達されたコマンドの引数から推測できるもの)については、リモートホスト1とローカルホスト2との間の通信パケットのヘッダにフラグを設定することで、リモートホスト1とローカルホスト2との間の通信を省略し、ローカルホスト2と可搬デバイス3との間で自動的かつ適時に実行させることを実現する。
【0054】
(第3実施形態)
次に、第3実施形態について説明する。
【0055】
図12は、本実施形態に係るリモートアクセスシステムの概略構成を示すブロック図である。図12に示すように、本実施形態のリモートアクセスシステムにおいては、ローカルホスト2のホストコントローラ25が、2つの接続インタフェース(SDバス、UHS−IIバス)に対応している。
【0056】
SDバスでは、コマンドはCommand Token Format、レスポンスはResponse Token Formatにてパケット化される。一方、UHS−IIバスでは、コマンドおよびレスポンスの双方がUHS-II Packet Formatにてパケット化される。ローカルホスト2のホストコントローラ25が、1つの接続インタフェースのみに対応する場合、リモートホスト1とローカルホスト2との間のリモート区間でのデータ形式も、当該1つの接続インタフェースのデータ形式に対応させればよい。これに対して、ローカルホスト2のホストコントローラ25が、2つの接続インタフェースに対応する場合には、リモートホスト1とローカルホスト2との間のリモート区間でのデータ形式について何らかの工夫が必要となる。このような状況下において、本実施形態のリモートアクセスシステムは、リモートホスト1とローカルホスト2との間のリモート区間でのデータ形式として、以下の4形式のいずれかを採用する。
【0057】
(a)リモートホスト1は、独自形式にて、コマンドタイプ、ローカルコマンド(コマンド番号および引数)、レスポンスタイプ、データを伝達するためのリモートコマンドをローカルホスト2に対して発行する。ローカルホスト2は、ホストコントローラ25において、伝達されたコマンドがSDバス経由で接続された可搬デバイス3宛てまたはUHS−IIバス経由で接続された可搬デバイス3宛てかに応じて、当該コマンドを各々の接続インタフェースのデータ形式にてパケット化する。
【0058】
(b)リモートホスト1は、(SDバスの)Command Token Format形式にて、コマンドタイプ、コマンド(コマンド番号および引数)、レスポンスタイプ、データを伝達するためのリモートコマンドをローカルホスト2に対して発行する。ローカルホスト2は、伝達されたコマンドがSDバス経由で接続された可搬デバイス3宛てであれば、ホストコントローラ25によって、そのまま可搬デバイス3に送信する。この場合、可搬デバイス3からResponse Token Format形式のレスポンスが返却されるので、そのままリモートコマンドのレスポンスに含めてリモートホスト1に伝達する。
【0059】
一方、伝達されたコマンドがUHS−IIバス経由で接続された可搬デバイス3宛てであれば、ホストコントローラ25において、当該コマンドをUHS-II Packet Formatのパケットに変換して可搬デバイス3に送信する。この場合、可搬デバイス3からUHS-II Packet Format形式のレスポンスが返却されるので、ホストコントローラ25において、当該レスポンスをResponse Token Format形式に変換し、リモートコマンドのレスポンスに含めてリモートホスト1に伝達する。
【0060】
(c)リモートホスト1は、(UHS−IIバスの)UHS-II Packet Format形式にて、コマンドタイプ、コマンド(コマンド番号および引数)、レスポンスタイプ、データを伝達するためのリモートコマンドをローカルホスト2に対して発行する。ローカルホスト2は、伝達されたコマンドがUHS−IIバス経由で接続された可搬デバイス3宛てであれば、ホストコントローラ25によって、そのまま可搬デバイス3に送信する。この場合、可搬デバイス3からUHS-II Packet Format形式のレスポンスが返却されるので、そのままリモートコマンドのレスポンスに含めてリモートホスト1に伝達する。
【0061】
一方、伝達されたコマンドがSDバス経由で接続された可搬デバイス3宛てであれば、ホストコントローラ25において、当該コマンドをCommand Token Formatのパケットに変換して可搬デバイス3に送信する。この場合、可搬デバイス3からResponse Token Format形式のレスポンスが返却されるので、ホストコントローラ25において、当該レスポンスをUHS-II Packet Format形式に変換し、リモートコマンドのレスポンスに含めてリモートホスト1に伝達する。
【0062】
(d)リモートホスト1は、ローカルホスト2に接続された可搬デバイス3のバスを認識して、コマンドタイプ、コマンド(コマンド番号および引数)、レスポンスタイプ、データを伝達するためのリモートコマンドを、適切なバケット形式にてローカルホスト2に送出する。ローカルホスト2は、伝達されたコマンドを可搬デバイス3に、また、可搬デバイス3から返却されたレスポンスをリモートホスト1にパススルーするだけでよい。
【0063】
上記(a)〜(d)のいずれの形式を採用した場合であっても、ローカルコマンドを3つの体系に分類することによって、リモートホスト1とローカルホスト2との間の通信は軽微なものとなる。
【0064】
このように、第1実施形態乃至第3実施形態のリモートアクセスシステムによれば、第1の電子機器によって制御される記憶装置を第2の電子機器から第1の電子機器を介して遠隔制御するリモートアクセス機能を、利便性および拡張性に優れた仕組みとして実現できる。
【0065】
なお、第1実施形態乃至第3実施形態の可搬媒体はSDカード(登録商標)を例に説明したが、前記第1のプロトコルを具備する可搬媒体としてはメモリ機能を持つメモリカードおよび通信機能を持つIOカード、およびメモリ機能と通信機能の両方をもつコンボカードがこれら可搬媒体に含まれる。また、可搬媒体は可搬可能な形態でなくてもよく、電子機器に内蔵される形態で前記第1のプロトコルを具備する媒体でもよい。
【0066】
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれると共に、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【0067】
1…リモートホスト、2…ローカルホスト、3…可搬デバイス、11…アプリケーションプログラム、12…コマンド生成部、13…リモートコマンド生成部、14…リモートコマンド送受信部、15…レスポンス解釈部、21…リモートコマンド送受信部、22…コマンドヘッダ解釈部、23…レスポンス解釈部、24…ローカルコマンド生成部、25…ホストコントローラ。

【特許請求の範囲】
【請求項1】
第1の電子機器によって制御される記憶装置を第2の電子機器から前記第1の電子機器を介して遠隔制御するリモートアクセスシステムにおいて、
前記第2の電子機器は、前記記憶装置に対して発行する第1のプロトコルのローカルコマンドを伝達するためのコマンドであって、前記ローカルコマンドの種類を示すコマンドタイプ情報を含む第2のプロトコルのリモートコマンドを前記第1の電子機器に対して発行するリモートコマンド発行手段を具備し、
前記第1の電子機器は、前記リモートコマンドに含まれる前記コマンドタイプ情報によって特定される手順に従って、前記リモートコマンドによって前記第2の電子機器から伝達される前記ローカルコマンドを含む1以上のローカルコマンドの前記記憶装置に対する発行と、前記記憶装置からのレスポンスを前記リモートコマンドに対するレスポンスに含めた前記第2の電子機器への伝達とを実行するコマンド処理手段を具備する
リモートアクセスシステム。
【請求項2】
前記第1のプロトコルは、全二重方式の通信を行うためのプロトコルであり、前記第2のプロトコルは、半二重方式の通信を行うためのプロトコルである請求項1に記載のリモートアクセスシステム。
【請求項3】
前記リモートコマンド発行手段は、前記ローカルコマンドに対する前記記憶装置からのレスポンスの種類を示すレスポンスタイプ情報を前記リモートコマンドに含め、
前記コマンド処理手段は、前記リモートコマンドに含まれる前記レスポンスタイプ情報に基づき、前記記憶装置からのレスポンスを格納するための記憶領域を確保する
請求項1に記載のリモートアクセスシステム。
【請求項4】
前記コマンド処理手段は、前記リモートコマンドに含まれる前記レスポンスタイプ情報に基づき、前記記憶装置からのレスポンスのタイミングを認識する請求項3に記載のリモートアクセスシステム。
【請求項5】
前記リモートコマンド発行手段は、前記ローカルコマンドによって前記記憶装置に書き込むデータを前記リモートコマンドに含めて前記第1の電子機器に伝達する請求項1に記載のリモートアクセスシステム。
【請求項6】
前記リモートコマンド発行手段は、前記リモートコマンドを格納するパケットのヘッダ内に定義されるフラグをオンに設定することによって、前記リモートコマンドによって伝達する第1のローカルコマンドの発行前または発行後に前記記憶装置に対して第2のローカルコマンドを発行すべきことを伝達し、
前記コマンド処理手段は、前記フラグがオンに設定されていた場合、前記第1のローカルコマンドの発行前または発行後に前記記憶装置に対して前記第2のローカルコマンドを発行する
請求項1に記載のリモートアクセスシステム。
【請求項7】
前記コマンド処理手段は、前記フラグがオンに設定されていた場合、前記第2のローカルコマンドの発行要否を判定し、必要と判定した場合に、前記記憶装置に対して前記第2のローカルコマンドを発行する請求項6に記載のリモートアクセスシステム。
【請求項8】
前記第1の電子機器と前記記憶装置とは、第1のインタフェースまたは第2のインタフェースのいずれかによって接続され、
前記リモートコマンド発行手段は、前記ローカルコマンドを含む前記リモートコマンドを前記第1のインタフェースに準拠したフォーマットでパケット化し、
前記コマンド処理手段は、前記第1の電子機器と前記記憶装置とが前記第1のインタフェースで接続されている場合、前記リモートコマンドに含まれる前記ローカルコマンドを格納するパケットをそのまま前記記憶装置に対して転送し、前記第2のインタフェースで接続されていた場合、前記リモートコマンドに含まれる前記ローカルコマンドを格納するパケットを前記第1のインタフェースに準拠したフォーマットから前記第2のインタフェースに準拠したフォーマットに変換して前記記憶装置に対して転送する
請求項1に記載のリモートアクセスシステム。
【請求項9】
前記第1の電子機器と前記記憶装置とは、第1のインタフェースまたは第2のインタフェースのいずれかによって接続され、
前記リモートコマンド発行手段は、前記第1の電子機器と前記記憶装置とが前記第1のインタフェースでまたは第2のインタフェースのいずれによって接続されているのかを認識して、前記第1のインタフェースで接続されていた場合、前記ローカルコマンドを含む前記リモートコマンドを前記第1のインタフェースに準拠したフォーマットでパケット化し、前記第2のインタフェースで接続されていた場合には、前記ローカルコマンドを含む前記リモートコマンドを前記第2のインタフェースに準拠したフォーマットでパケット化し、
前記コマンド処理手段は、前記リモートコマンドに含まれる前記ローカルコマンドを格納するパケットをそのまま前記記憶装置に対して転送する
請求項1に記載のリモートアクセスシステム。
【請求項10】
記憶装置に対して発行する第1のプロトコルのローカルコマンドを伝達するためのコマンドであって、前記ローカルコマンドの種類を示すコマンドタイプ情報を含む第2のプロトコルのリモートコマンドを他の電子機器から受信すると共に、当該リモートコマンドに対するレスポンスを前記他の電子機器に送信するリモートコマンド送受信手段と、
前記リモートコマンド送受信手段が前記他の電子機器から受信する前記リモートコマンドに含まれる前記コマンドタイプ情報によって特定される手順に従って、前記リモートコマンドによって前記他の電子機器から伝達される前記ローカルコマンドを含む1以上のローカルコマンドの前記記憶装置に対する発行と、前記記憶装置からのレスポンスを前記リモートコマンド送受信手段が前記他の電子機器に送信する前記リモートコマンドに対するレスポンスに含めた前記他の電子機器への伝達とを実行するコマンド処理手段と
を具備する電子機器。
【請求項11】
前記第1のプロトコルは、全二重方式の通信を行うためのプロトコルであり、前記第2のプロトコルは、半二重方式の通信を行うためのプロトコルである請求項10に記載の電子機器。
【請求項12】
前記リモートコマンドは、前記ローカルコマンドに対する前記記憶装置からのレスポンスの種類を示すレスポンスタイプ情報を含み、
前記コマンド処理手段は、前記リモートコマンドに含まれる前記レスポンスタイプ情報に基づき、前記記憶装置からのレスポンスを格納するための記憶領域を確保する
請求項10に記載の電子機器。
【請求項13】
前記コマンド処理手段は、前記リモートコマンドに含まれる前記レスポンスタイプ情報に基づき、前記記憶装置からのレスポンスのタイミングを認識する請求項12に記載の電子機器。
【請求項14】
前記コマンド処理手段は、前記リモートコマンドを格納するパケットのヘッダ内に定義されるフラグであって、前記リモートコマンドによって伝達される第1のローカルコマンドの発行前または発行後に前記記憶装置に対して第2のローカルコマンドを発行すべきことを伝達するためのフラグがオンに設定されていた場合、前記第1のローカルコマンドの発行前または発行後に前記記憶装置に対して前記第2のローカルコマンドを発行する請求項10に記載の電子機器。
【請求項15】
前記コマンド処理手段は、前記フラグがオンに設定されていた場合、前記第2のローカルコマンドの発行要否を判定し、必要と判定した場合に、前記記憶装置に対して前記第2のローカルコマンドを発行する請求項14に記載の電子機器。
【請求項16】
前記記憶装置とは、第1のインタフェースまたは第2のインタフェースのいずれかによって接続され、
前記ローカルコマンドを含む前記リモートコマンドは、前記第1のインタフェースに準拠したフォーマットでパケット化されており、
前記コマンド処理手段は、前記記憶装置と前記第1のインタフェースで接続されている場合、前記リモートコマンドに含まれる前記ローカルコマンドを格納するパケットをそのまま前記記憶装置に対して転送し、前記第2のインタフェースで接続されていた場合、前記リモートコマンドに含まれる前記ローカルコマンドを格納するパケットを前記第1のインタフェースに準拠したフォーマットから前記第2のインタフェースに準拠したフォーマットに変換して前記記憶装置に対して転送する
請求項10に記載の電子機器。
【請求項17】
前記記憶装置とは、第1のインタフェースまたは第2のインタフェースのいずれかによって接続され、
前記ローカルコマンドを含む前記リモートコマンドは、前記記憶装置と前記第1のインタフェースで接続されていた場合、前記第1のインタフェースに準拠したフォーマットでパケット化され、前記第2のインタフェースで接続されていた場合には、前記第2のインタフェースに準拠したフォーマットでパケット化されており、
前記コマンド処理手段は、前記リモートコマンドに含まれる前記ローカルコマンドを格納するパケットをそのまま前記記憶装置に対して転送する
請求項10に記載の電子機器。
【請求項18】
第1の電子機器によって制御される記憶装置を第2の電子機器から前記第1の電子機器を介して遠隔制御するリモートアクセスシステムのリモートアクセス処理方法であって、
前記第2の電子機器が、前記記憶装置に対して発行する第1のプロトコルのローカルコマンドを伝達するためのコマンドであって、前記ローカルコマンドの種類を示すコマンドタイプ情報を含む第2のプロトコルのリモートコマンドを前記第1の電子機器に対して発行し、
前記第1の電子機器が、前記リモートコマンドに含まれる前記コマンドタイプ情報によって特定される手順に従って、前記リモートコマンドによって前記第2の電子機器から伝達される前記ローカルコマンドを含む1以上のローカルコマンドの前記記憶装置に対する発行と、前記記憶装置からのレスポンスを前記リモートコマンドに対するレスポンスに含めた記第2の電子機器への伝達とを実行する
リモートアクセス処理方法。
【請求項19】
前記第2の電子機器は、前記ローカルコマンドに対する前記記憶装置からのレスポンスの種類を示すレスポンスタイプ情報を前記リモートコマンドに含め、
前記第1の電子機器は、前記リモートコマンドに含まれる前記レスポンスタイプ情報に基づき、前記記憶装置からのレスポンスを格納するための記憶領域を確保する
請求項18に記載のリモートアクセス処理方法。
【請求項20】
前記第1の電子機器は、前記リモートコマンドに含まれる前記レスポンスタイプ情報に基づき、前記記憶装置からのレスポンスを取得するタイミングを認識する
請求項19に記載のリモートアクセス処理方法。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate


【公開番号】特開2013−58018(P2013−58018A)
【公開日】平成25年3月28日(2013.3.28)
【国際特許分類】
【出願番号】特願2011−195020(P2011−195020)
【出願日】平成23年9月7日(2011.9.7)
【出願人】(000003078)株式会社東芝 (54,554)
【Fターム(参考)】