情報処理装置、外部装置、ホスト装置、及び通信方法
【課題】回路規模を増大させることなく一対多の通信を行う。
【解決手段】 ホストデバイス10には、メモリカード20を装着する複数の装着部11が設けられている。装着部11に挿入されたメモリカード20は、一組の信号線CLK(クロック),BS(バスステート),DIO(データ入出力)を共有している。ホストデバイス10は、どのメモリカード20と通信しているために夫々のメモリカード20に識別子を割り当てる。識別子の割り当ては、メモリカード20の挿抜を検出する信号線XINSで行われる。
【解決手段】 ホストデバイス10には、メモリカード20を装着する複数の装着部11が設けられている。装着部11に挿入されたメモリカード20は、一組の信号線CLK(クロック),BS(バスステート),DIO(データ入出力)を共有している。ホストデバイス10は、どのメモリカード20と通信しているために夫々のメモリカード20に識別子を割り当てる。識別子の割り当ては、メモリカード20の挿抜を検出する信号線XINSで行われる。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、情報処理装置、外部装置、ホスト装置、及び通信方法に関し、特に、コンピュータ等のホスト装置のデータ伝送用の信号線を共有して装着される複数のメモリカード等の外部装置とを備える情報処理装置、このような情報処理装置に用いられる外部装置、ホスト装置、及び外部装置とホスト装置との間の通信方法に関する。
【背景技術】
【0002】
従来より、コンピュータ等のホスト装置に接続される外部装置として、いわゆるメモリカードと呼ばれるリムーバブルなカード型のメモリが知られている。メモリカードの一つであるメモリスティック(登録商標)は、内蔵するフラッシュメモリに静止画像データ、動画像データ、音声データ、音楽データ等の各種デジタルデータを格納することができる。このメモリスティック等のメモリカードは、ホスト装置としての例えば情報携帯端末、デスクトップ型コンピュータ、ノート型コンピュータ、携帯電話機、オーディオ装置、ディジタルカメラ、ビデオカメラ、その他の家電装置などの電子機器に装着される外部装置である外部記憶メディアとして機能する。
【0003】
ホストデバイスはメモリカードに記録されたデータの読み書きを行う。従来のメモリカード60とホストデバイス70を図19に示す。ホストデバイス70は、ホスト側インターフェース74を介してメモリカード60と接続される。この場合、具体的には、ホストデバイス70側に設けられたメモリカードスロットにメモリカード60が装着されることにより端子や接続ピン等が電気的及び機械的に接続されるものである。レジスタ75は、メモリカード60の内部状態、メモリカード60のコマンド動作のパラメータ、メモリカード60の管理情報などを記録する。ホストコントローラ73は、レジスタ75に記録された情報を元にメモリカード60を制御する。データ処理部76は、ホストコントローラ53の指示に従ってデータに所定の処理を施す。挿抜検出回路72は、ホストデバイス70にメモリカード60が装着されたことを信号線XINSの電圧の変化により検出する。ホストデバイス70側の信号線XINSにはプルアップ抵抗R1が設けられており、メモリカードが挿入されていないときには信号線XINSは“Highレベル”になっている。一方、信号線XINSに接続されるメモリカード70側の端子は接地されている。従って、メモリカード70を挿入すると、信号線XINSは“Lowレベル”になることにより、挿抜検出回路72は、信号線XINSのレベルの変化によってメモリカード70の挿入及び抜去を検出することができる。
【0004】
ホストデバイス70は、メモリカード60に対してコマンドを発行する。カードコントローラ62は、ホストデバイス70から受けたコマンドのパラメータやメモリカード60の内部状態、メモリカード60の管理情報などをレジスタ64に記録する。カードコントローラ62は、レジスタ64に記録した情報を参照しながらメモリ65の読み書き及びホストデバイス70との通信制御を行う。
【0005】
ホストデバイス70とメモリカード60とは、3本の信号線CLK,BS,DIOを用いて通信をしている。信号線CLKはクロックを供給し、信号線BSはバスの状態を示し、信号線DIOをデータの送受信に用いられる。信号線BSの状態には、状態0〜状態3の4つの状態が存在し、ライトプロトコルの場合、状態0では通信をせず、状態1ではプロトコル上のコマンドに相当するコードを送信し、状態2ではデータステートと呼ばれホストデバイス70がメモリカード60にデータを送信し、状態3ではメモリカード60のプロトコル処理状態を受信する。また、リードプロトコルでは、状態2でメモリカード60のプロトコル処理状態を受信し、状態3でメモリカード60からホストデバイス70にデータを送信する(例えば、特許文献1参照)。
【0006】
【特許文献1】特開平11−53306号公報
【発明の開示】
【発明が解決しようとする課題】
【0007】
ところで、メモリカードとホストデバイスは以上のようなプロトコルに従ってデータの読み書きを行うが、このプロトコルはメモリカードとホストデバイスの一対一の通信を前提としたものであり、メモリカードを複数使用する場合にはメモリカードの枚数分のホスト側回路を用意する必要があり、回路規模やチップのピン数が増大し、複数のカード挿入部を持った機器の構成が複雑化し高価となる等の問題点がある。
【0008】
本発明は、このような実情に鑑み、回路規模を増大させることなく一対多の通信を行うホストデバイス及びメモリカードを提供することを目的とする。
【課題を解決するための手段】
【0009】
本発明にかかる情報処理装置は、ホスト装置と、ホスト装置のデータ伝送用の信号線を共有して装着される複数の外部装置とを備える情報処理装置であって、外部装置は、外部装置を識別するための識別子の割り当てをホスト装置に要求する割当要求機能を有する外部装置側制御手段を備え、ホスト装置は、外部装置に対して識別子を割り当てるホスト側制御手段を備える。
【0010】
本発明にかかる外部装置は、ホスト装置のデータ伝送用の信号線を共有して装着される外部装置であって、ホスト装置に装着されたとき、識別子の割り当てをホスト装置に要求する割当要求機能を有する制御手段を備える。
【0011】
本発明にかかるホスト装置は、データ伝送用の信号線を共有する複数の外部装置が装着されるホスト装置であって、装着された外部装置からの識別子の割り当て要求を受信する割り当て要求受信手段と、外部装置に対して識別子を割り当てる制御手段とを備える。
【0012】
本発明にかかる通信方法は、ホスト装置と、ホスト装置のデータ伝送用の信号線を共有して装着される複数の外部装置との通信方法であって、外部装置が外部装置を識別するための識別子の割り当てをホスト装置に要求する割当要求工程と、ホスト装置が外部装置に対して識別子を割り当てる割当工程とを備える。
【発明の効果】
【0013】
本発明によれば、ホスト装置に装着された外部装置に対して識別子を割り当て、この識別子により通信中の外部装置を特定するため、複数の外部装置がデータ伝送用の信号線を共有することができ、回路規模を増大することなく、一対多の通信を行うことができる。また、識別子が割り当てられるまでデータ伝送用の信号線を用いた通信ができないため、挿抜検出用の信号線を用いて識別子の割り当てを行う。
【0014】
さらに、本発明におけるホスト装置は、外部装置から識別子の割り当てが要求されなかったとき、識別子を使用しない一対一の通信を開始するため、本発明が適用されていない外部装置との互換性を保つことができる。
【0015】
また、本発明における外部装置は、識別子の割り当てに要求するホストからの応答が取得できなかったとき、識別子を使用しない一対一の通信を開始するため、本発明が適用されていないホスト装置との互換性を保つことができる。
【発明を実施するための最良の形態】
【0016】
本発明は、ホスト装置としてのホストデバイスと、ホストデバイスに制御される外部装置としてのメモリカードと、メモリカードをホストデバイスとからなる情報処理装置とに適用される。
【0017】
以下、図面を参照して本発明に係る情報処理装置、外部装置、ホスト装置、及び通信方法を適用した実施の形態としてのメモリカード及びメモリカードのホストデバイスについて説明する。本発明を適用したホストデバイスとメモリカードとは、一対多の通信を行う。この通信では、複数のメモリカードがホストデバイスから出力された一組の信号線を共有する。ホストデバイスは、どのメモリカードと通信をしているかを識別するために夫々のメモリカードに識別子を割り当てる。識別子の割り当ては、メモリカードの挿抜を検出する信号線上で行われる。
【0018】
本発明に係る第1の実施の形態について、以下説明する。
【0019】
図1は、ホストデバイス10及びメモリカード20の外観を示す。ホストデバイス10は、メモリカード20を装着する複数の装着部(いわゆるメモリカードスロット)11を備えている。図1の例では、ホストデバイス10側に4つの装着部11a,11b,11c,11dが設けられ、これらの装着部11a〜11dに同時に4つまでのメモリカード20a〜20dを装着することができる。メモリカード20にはホストデバイス10との電気的接続を行うための接続端子(図示せず)が設けられ、ホストデバイス10の装着部(メモリカードスロット)11には、メモリカード20の各接続端子と電気的接続を行うためのコネクタ(図示せず)が設けられている。装着部11にメモリカード20を挿入すると、装着部10内の上記コネクタの接点とメモリカード20の上記接続端子とが電気的に接続され、ホストデバイス10の各信号線とメモリカード20の各端子とが接続状態となる。装着部10からメモリカード20を抜き出すとホストデバイス10からメモリカード20との電気的接続が遮断される。
【0020】
ホストデバイス10にメモリカード20を装着することにより接続状態となる信号線としては、図2に示すように、データ伝送のための信号線CLK(クロック),BS(バスステート),DIO(データ入出力)と、メモリカード20の装着あるいは挿抜を検出するための信号線XINSが挙げられる。なお、メモリカードとしては、この他にも接続端子として例えば電源端子を有しカード装着時に電源供給線が接続されるようになっていてもよいが、本発明の要旨には関係しないため図示せず説明を省略する。
【0021】
ここで、複数のメモリカード20の間では、データ伝送のための信号線CLK,BS,DIOを共有しており、ホストデバイス10から出力された信号CLK,BS,DIOは全てのメモリカード20に出力される。また、本発明の第1の実施の形態では、メモリカードの挿抜を検出するための信号線XINSは、各メモリカード毎に独立に設けられている。すなわち、図2のN個のメモリカード20−1,20−2,・・・,20−Nは、それぞれ独立のカード挿抜検出用の信号線XINS1,XINS2,...,XINSNを介してホストデバイス10に接続されるようになっている。
【0022】
図3は、ホストデバイス10及びメモリカード20の具体的な構成例を示すブロック回路図である。この図3において、ホストデバイス10のホスト側送受信回路12には、複数、例えばN個のメモリカード20−1,・・・,20−Nの挿抜をそれぞれ独立に検出するための信号線XINS1,...,XINSNが接続され、各メモリカード20−1,・・・,20−Nのホスト側送受信回路12−1,・・・,12−Nには、カード装着時にそれぞれ対応する信号線XINS1,...,XINSNが接続されるようになっている。ホスト側送受信回路12は、メモリカード20−1,・・・,20−Nの挿抜検出をそれぞれ独立に行うことができる。すなわち、各信号線XINS1,...,XINSNにはそれぞれプルアップ抵抗R1が設けられており、メモリカード20が挿入されていない信号線XINSは“Highレベル”になっている。
【0023】
一方、メモリカード20には、信号線XINSの接続端子にプルダウン抵抗R2が設けられている。メモリカード20を挿入すると、信号線XINSは、プルダウン抵抗R2によって“Lowレベル”になる。ホスト側送受信回路12は、N個の各信号線XINS1,...,XINSNの内の“Lowレベル”になった信号線XINSにメモリカード20が装着されたことを検出する。ホストデバイス10のホスト側送受信回路12は、このような信号線XINS1,...,XINSNのレベルの変化によってメモリカード20−1,・・・,20−Nの挿入及び抜去状態を検出する。
【0024】
本実施の形態におけるホストデバイス10のホスト側送受信回路12は、信号線XINSを用いて複数のメモリカードを識別するための識別子を割り当てるようにしている。信号線XINSを用いて識別子の割り当てが完了すると、信号線CLK,BS,DIOを用いたデータの送受信を開始することができる。
【0025】
図4を参照して、識別子の割当処理を説明する。この図4の例では、ホストデバイス10側の1つの装着部(メモリカードスロット)に対して装着されたメモリカートに着目して動作を説明しているが、複数の装着部のいずれについてもメモリカードの装着時には同様な処理が行われることは勿論である。まず、メモリカード20がホストデバイス10に装着されると(ステップS11)、メモリカード20のプルダウン抵抗により、対応する信号線XINSが“Lowレベル”に変化する(ステップS12)。ホストコントローラ13は、複数の信号線XINS1,...,XINSNの内の“Lowレベル”に変化した信号線XINSに対応するスロット(装着部)へのメモリカード20の挿入を検出し(ステップS13)、ホスト側インターフェース14の信号線CLKにカード装着確認信号としてのクロック信号を出力させる(ステップS14)。
【0026】
メモリカード20は、メモリ側インターフェース23によって信号線CLKから出力されるクロック信号を検出し識別子要求状態に遷移する。識別子要求状態において、メモリ側送受信回路21は、信号線XINSを使用して識別子の要求信号をホストデバイス10に送信する(ステップS16)。
【0027】
ホストデバイス10は、ホスト側送受信回路12によって識別子の要求信号を受信すると、メモリカード20に識別子を割り当てるための割当信号を生成して(ステップS17)、信号線XINSを使用して識別子の割当信号をメモリ側送受信回路21に出力する(ステップS18)。ホストデバイス10及びメモリカード20は、識別子の割当処理が完了すると、接続状態に遷移する。接続状態では、信号線CLK(クロック),BS(バスステート),DIO(データ入出力)を用いてデータの送受信を含む通信処理を行うことができる。
【0028】
上述した識別子の割当処理が正常に行われなければ、ホストデバイス10若しくはメモリカード20が一対多の通信規格に対応していないことが判別できる。以下、図5を参照してホストデバイス10がメモリカード20の通信モードを判別する処理を説明し、図6を参照してメモリカード20がホストデバイス10の通信モードを判別する処理を説明する。
【0029】
ここで、メモリカードには、本発明の実施の形態で説明したような上記1対多の通信を行う規格に準拠するものと、従来の1対1の通信規格に準拠するものとがあり、上記1対多の通信規格は上記従来の1対1の通信規格の上位互換性を持たせることが好ましい。そこで、上記1対多の通信を行う規格に準拠するメモリカードと、従来の1対1の通信規格に準拠するメモリカードとが混在してホストデバイスに接続された場合にも不具合無く、例えば少なくとも従来のメモリカードについては1対1の通信が行えるようにすることが望まれる。このような機能を実現するための例について説明する。以下の説明では、上記1対多の通信をマルチ通信、上記従来の1対1の通信をシングル通信ともいう。
【0030】
まず、図5を参照しながら、上記本発明の実施の形態を適用した1対多の通信(マルチ通信)を行う規格に準拠するホストデバイス10が、従来のメモリカードも含むメモリカード20との間の通信モードを判別する処理を説明する。ホストデバイス10は、メモリカード20の装着を検出すると(ステップS21)、信号線CLKにクロックを供給する。装着されたメモリカードが本発明を適用した上記1対多の通信(マルチ通信)を行う規格に準拠するメモリカードであればクロックの供給を受けると信号線XINSに識別子の要求信号を出力する。一方、装着されたメモリカードが従来の1対1の通信規格(シングル通信規格)に準拠するメモリカードであればクロックの供給に対しての応答が発生しない。
【0031】
ホストコントローラ13は、信号線XINSに識別子の要求信号が入力されない場合(ステップS22;NO)、装着されたメモリカード20が従来のメモリカード20であると判断して、識別子を用いない一対一の通信を開始する(ステップS23)。
【0032】
一方、ホストデバイス10は、メモリカード20から識別子の要求信号を入力すると(ステップS22;YES)、信号線XINSを介して識別子の割当信号を出力する(ステップS23)。そして、識別子を用いた一対多の通信を開始する(ステップS24)。
【0033】
このように、本発明の実施の形態を適用したホストデバイス10は、メモリカード20から識別子の要求信号を受信するか否かによって、装着されたメモリカード20が従来のものであるか本発明を適用したものであるかを判断し、これに応じて通信の形態を決定する。
【0034】
次に、ホストデバイスについても、本発明の実施の形態で説明したような上記1対多の通信(マルチ通信)を行う規格に準拠するものと、従来の1対1の通信(シングル通信)の規格に準拠するものとがあり、従来の1対1の通信規格に準拠するホストデバイスに、本発明の実施の形態で説明したような上記1対多の通信を行う規格に準拠するメモリカードを装着した場合にも、少なくとも従来のメモリカードと同様な機能を実現できることが望まれる。
【0035】
そこで、図6を参照して、本発明の実施の形態を適用したメモリカード20がホストデバイス10を判別する処理を説明する。まず、メモリカード20は、信号線CLKを監視し、ホストデバイス10からクロックが供給されない場合は(ステップS31;NO)、規定時間の間待機する。そして、規定時間経過後にクロックが供給されない場合(ステップS32;YES)、一対一の通信を開始する(ステップS37)。
【0036】
一方、規定時間経過しない場合(ステップS32;YES)、ステップS31に処理を移行する。次いで、信号線CLKにクロックが供給されると(ステップS31;YES)、信号線XINSに識別子の要求信号を出力する(ステップS33)。
【0037】
次いで、メモリカード20は、信号線XINSの状態を監視する。従来のホストデバイス10は、ステップS32で受信した要求信号を認識しないので、信号線XINSの状態が“Lowレベル”から変化しない。メモリカード20は、信号線XINSの状態が“Lowレベル”から変化しないとき(ステップS34;YES)、従来のホストデバイス10であると判別する。メモリカード20は、従来のホストデバイス10であると判別すると、識別子要求回数を1増加し(ステップS35)、識別子要求回数が規定値より小さい場合には(ステップS36;YES)、ステップS33に処理を移行する。一方、識別子要求カウントが規定値より大きいには(ステップS36;NO)、識別子を用いない一対一の通信を開始する(ステップS37)。
【0038】
一方、ステップS34においてホストデバイス10が信号線XINSの信号レベルが変化し(ステップS34;NO)、信号線XINSから識別子の割当信号を受信すると(ステップS38;YES)、メモリカード20は、識別子を用いた一対多の通信を開始する(ステップS39)。一方、ステップS37において識別子の割当信号を受信しないとき(ステップS38;NO)、メモリカード20は、ステップS33に処理を移行し、識別子の要求信号を出力する。
【0039】
このように、本発明の実施の形態を適用したメモリカード20は、識別子の割当要求に対する応答が返信されるか否かによって、通信しているホストデバイス10が従来のものであるか本発明の実施の形態を適用したものであるから判断し、これに応じて通信の形態を決定する。
【0040】
上述したように、メモリカード20とホストデバイス10との通信の形態が決定し、かつ、識別子の割当が終了すると、メモリカード20とホストデバイス10とが通信可能状態に遷移する。通信可能状態では、信号線CLK(クロック),BS(バスステート),DIO(データ入出力)を用いて通信を行う。
【0041】
このときのホストデバイス10の各構成及びメモリカード20の各構成について説明する。信号線CLK,BS,DIOを用いた通信において、ホスト側コントローラは、メモリカード20との間の通信を制御する。信号線CLK,BS,DIOを用いた通信は、3線式の半二重通信である。この通信では、信号線CLKがクロックを供給し、BSが通信の状態(バスステート)を示し、DIOでデータの送受信を行う。ホストコントローラ13は、通信の状態に応じて、メモリカード20にコマンドを発行したり、データを送信又は受信したりする。ホストコントローラ13から出力されるコマンドは、レジスタ15に格納されている。
【0042】
ホストデバイスとメモリカードとの通信の初期状態では、信号線BS(バスステート)が“Lowレベル”となる。この状態は、状態0と呼ぶ。バスステートは、状態0を初期状態として、状態1、状態2、状態3と変化する。バスステートは、メモリカードとホストデバイスとやり取りしているデータが何であるかを示している。状態0の期間はアイドリング状態、状態1の期間はホストデバイスがコマンドを発行するコマンド発行状態である。状態2と状態3は、データのリード時とライト時とで異なる。
【0043】
データのライト時は、図7(a)に示すように、状態2でホストデバイスからメモリカードへのデータの転送を行い、状態3でハンドシェイクを行う。一方、データのリード時には、図7(b)に示すように、状態2はハンドシェイク期間でありメモリカードがデータを出力できないときにはビジー信号を返し、データが出力できるようになるとレディー信号を返す。そして、レディー信号を受信すると状態3でメモリカードからホストデバイスへのデータ転送を行う。メモリカードの通信では、エラーが発生すると、信号線DIOでのバスの衝突を回避するために自動的に状態0,状態1を繰り返す2ステートアクセスモードに移行する。
【0044】
本発明の実施の形態を適用したホストデバイスは、状態0から状態1に移行したとき図8に示すようなコマンドをメモリカードに発行する。このコマンドは、先頭部分にダミーデータが付加され、終端部分に識別子が付加されている。識別子は、ホストデバイス上でのアドレスである。コマンドを受信したメモリカードは、自己に割り当てられた識別子とデータに付加された識別子とを比較して自分宛てに発行されたコマンドを判断する。メモリカードは、自分宛てのコマンドを受信するとそのコマンドに沿った動作を行う。
【0045】
ダミーデータは、上記従来の1対1通信規格に準拠したシングル通信カードが意図的に通信エラーを発生させるようなデータである。メモリカードは、通信エラーが発生すると2ステートアクセスモードに移行し、状態0と状態1を繰り返す。シングル通信カードは、ダミーデータが付加されたコマンドを受信すると通信エラーと判断して状態0のアイドリング状態に移行する。本発明を適用したホストデバイスでは、複数のメモリカードが一組のデータ線を共有しているが、ダミーデータを付加することによって識別子が割り当てられていないシングル通信カードであっても他のメモリカード宛てに出力されたデータを誤って受信することはない。
【0046】
ダミーデータの一例を紹介する。従来、ホストデバイスは、「コマンド+コマンドの反転信号」というようにコマンドの後ろにコマンドの反転信号を付加している。メモリカードは、コマンドを受信すると、コマンドとコマンドの反転信号の排他的論理和をとり、排他的論理和が全て1となったときに、コマンドが正常に転送されたと判断している。排他的論理和が全て1ならないようなダミーデータを生成して、「ダミーデータ+コマンド」というようにコマンドの反転信号の代わりにダミーデータを付加すると意図的な転送エラーを発生させることができる。なお、このダミーデータは、システムに存在するシングル通信カードが誤ってコマンドを正常に受け付けないようなデータであればよく、必ずしもコマンドの反転信号に限定されるものではない。
【0047】
また、図9に示すように、シングル通信カードが2ステートアクセスモードに移行すると、状態0,状態1,状態0,状態1を繰り返す。一方、マルチ通信カードとホストデバイスとの通信が順当に進んでいると、バスの状態は、状態0,状態1,状態2,状態3の順に変化する。マルチ通信カードがデータを出力する状態(状態3)と、シングル通信カードがコマンドを受信する状態(状態1)が重なり、マルチ通信カードが出力したデータをシングル通信カードがコマンドと誤認識するおそれがある。この誤認識を防止するために、マルチ通信カードが出力するデータにもダミー信号を付加する。マルチ通信カードから出力されるデータは、図10に示すように、先頭部分にダミーデータが付加され、終端部分にCRCが付加される。ダミーデータは、コマンドと誤認識されないようなデータ、例えばデータ先頭部分の反転とは異なる信号を使用すればよい。
【0048】
以上説明したように、本発明の第1の実施の形態を適用したホストデバイス10は、メモリカード20に識別子を割り当てることにより、複数のメモリカード20が一組の信号線CLK,BS,DIOを共用するため、端子数の増加を低く抑えて複数のカードを接続することが可能となるとともに、回路規模を増大することなく複数のカードを接続することが可能となる。
【0049】
また、本発明の実施の形態を適用したホストデバイス10は、識別子の割当要求を受信するか否かによってメモリカード20が従来のものであるか本発明を適用したものであるかを判別する。そして、ホストデバイス10は、従来のメモリカード20に対しては従来の一対一通信を行う。これにより、ホストデバイス10は、従来のメモリカード20との互換性を保つことができる。
【0050】
さらに、本発明の実施の形態を適用したメモリカード20は、信号線XINSの信号レベルが変化するか否かによって、ホストデバイス10が従来のものであるか本発明の実施の形態を適用したものであるかを判別する。そして、メモリカード20は、従来のホストデバイス10に対しては従来の一対一通信を行う。これにより、メモリカード20は、従来のホストデバイス10との互換性を保つことができる。
【0051】
次に、本発明に係る第2の実施の形態について説明する。この本発明の第2の実施の形態の構成は、基本的に上述した第1の実施の形態と同様であり、以下の説明では、上記第1の実施の形態との相違点について主に説明する。
【0052】
上述した本発明の第1の実施の形態に用いられるホストデバイス10は、以下のように変形させることもできる。図11は、ホストデバイス30とメモリカード40との接続関係を変形させた、本発明の第2の実施の形態を示すものである。図11に示すホストデバイス30では、全てのメモリカードが信号線XINSを共有している。すなわち、複数例えばN個のメモリカード40−1,・・・,40−Nは、カード装着状態で、ホストデバイス30の1本の信号線XINSに共通に接続されることになる。
【0053】
図12は、本発明の第2の実施の形態に係るホストデバイス30及びメモリカード40の具体的な構成例を示すブロック回路図である。この図12において、メモリカード40内のメモリ送受信回路21は、入出力制御回路50を備え、この入出力制御回路50により、メモリカード40の装着がホストデバイス30のホスト送受信回路12に検出されるようにしている。ホストデバイス30のホスト送受信回路12には、1本のカード挿抜検出用の信号線XINSが接続されている。他の構成は、上述した図3の本発明の第1の実施の形態のホストデバイス10及びメモリカード20とほぼ同様であるため、対応する部分に同じ指示符号を付して説明を省略する。
【0054】
図13は、入出力制御回路50の構成を示す。入出力制御回路50は、2つのフリップフロップ53,54、バッファ55、スリーステートバッファ56、電源検出回路51を有して構成されている。メモリカードのXINS信号接続端子は、XINS信号入力用のバッファ55の入力端子、及びXINS信号出力用のスリーステートバッファ56の出力端子に接続され、バッファ55の出力端子はメモリコントローラ52に接続されている。フリップフロップ53,54は、いわゆるD型フリップフロップであり、これらのフリップフロップ53,54の各データ入力端子Dには、メモリコントローラ22からのデータがそれぞれ入力されている。フリップフロップ53,54の各リセット端子Rには、電源検出回路51からの電源検出信号が供給されている。フリップフロップ54のQ出力端子は、出力用のスリーステートバッファ56の入力端子に接続され、フリップフロップ53のQ出力端子はスリーステートバッファ55の制御端子に接続されている。電源検出回路51は、メモリカード40の電源Vcc供給用の接続端子に接続されている。このような構成の入出力制御回路50の動作を、図14を参照しながら説明する。
【0055】
図12に示すメモリカード40がホストデバイス30に装着されると、ホストデバイス30の電源供給線がメモリカード40の電源供給用接続端子(いずれも図示せず)に接続され、電源Vccがメモリカード40に供給される。これは、図14のVccの時刻t1の電源ONに相当する。図13の電源検出回路51は、電源Vccの供給(電源ON)を検出すると、例えば時刻t2のタイミングで図14に示すように“Lowレベル”の電源検出信号を出力する。この“Lowレベル”の電源検出信号が各フリップフロップ53,54のローアクティブの各リセット端子Rに入力されることにより、フリップフロップ53,54はいずれもリセットされ、各フリップフロップ53,54のQ出力は、いずれも“Lowレベル”となる。フリップフロップ53のQ出力がスリーステートバッファ56をアクティブ状態にすると共に、フリップフロップ54のQ出力の“Lowレベル”がスリーステートバッファ56を介して出力されることにより、図14に示すように、信号線XINSが“Lowレベル”に切り替えられる。ホストデバイス30は、信号線XINSの変化によりメモリカード40の装着を検出する。
【0056】
このように、メモリカード40の装着が検出された後は、上述したような識別子の割り当て等を行うわけであるが、識別子の割り当て等が終わった後には、メモリコントローラ52から“Highレベル”の制御信号をフリップフロップ53を介してスリーステートバッファ56の制御端子に送って、スリーステートバッファ56をハイインピーダンス状態に切り替えることにより、信号線XINSをハイインピーダンス状態にし、他のメモリカードの装着を検出可能な状態にすることができる。また、メモリカード40から信号線XINSを介してホストデバイス50に信号を送りたいときには、メモリコントローラ52から“Lowレベル”の制御信号をフリップフロップ53を介してスリーステートバッファ56の制御端子に送って、スリーステートバッファ56をアクティブ状態にし、メモリコントローラ52からの通信データをフリップフロップ54を介してスリーステートバッファ56を介して信号線XINSに出力すればよい。
【0057】
次に、図15を参照してホストデバイス30にメモリカード40を装着したときのカード検出及び識別子の割当処理を説明する。
【0058】
まず、メモリカード40をホストデバイス30の装着部に装着すると(ステップS41)、ホストデバイス30は、電源線を介してメモリカード40に電源Vccを供給する(ステップS42)。入出力制御回路50は、電源Vccが供給されるとこれを検出して信号線XINSの出力を“Lowレベル”に切り替える(ステップS43)。ホストデバイス30は、信号線XINSが“Lowレベル”になったことによりメモリカード40の挿入を検出し(ステップS44)、ホスト側インターフェース14の信号線CLKにクロック信号を出力させる(ステップS45)。
【0059】
メモリカード40は、メモリ側インターフェース23によって信号線CLKから出力されるクロック信号を検出し識別子要求状態に遷移する。識別子要求状態において、メモリ側受信回路は、信号線XINSを使用して識別子の要求信号をホストデバイス30に出力する(ステップS46)。
【0060】
ホストデバイス30は、ホスト側送受信回路12によって識別子の要求信号を受信すると、識別子の割当信号を生成し(ステップS47)、信号線XINSを使用して識別子の割当信号をメモリ側送受信回路21に出力する(ステップS48)。メモリカード40は、識別子の割当信号を受信すると信号線XINSを用いた通信を完了する。また、このとき、入出力制御回路50は、信号線XINSをハイインピーダンス状態に変化させる。
【0061】
このように、識別子の割当処理が完了すると、ホストデバイス30及びメモリカード40は、接続状態に遷移する。接続状態では、信号線CLK,BS,DIOを用いたデータの送受信を行うことができる。
【0062】
次に、本発明の第3の実施の形態を説明する。この第3の実施の形態では、上記第2の実施の形態で説明した図11と同様に、カード装着状態で、ホストデバイス30の1本の信号線XINSにN個のメモリカード40−1,・・・,40−Nが共通に接続されるように構成されている。ただし、この第3の実施の形態のホストデバイス30は、信号線XINSではなく信号線CLK(クロック),BS(バスステート),DIO(データ入出力)を用いてカード識別子の割り当て等に関する信号を通信するようにしている。この場合、データ伝送のための信号線CLK,BS,DIOを用いて識別子を割り当てる際には、通常のデータ通信と識別子の割当処理に伴う通信とを区別するため、通常のデータ通信ではエラーとして無視されるような信号線の状態あるいは通信形態を識別子の割当処理等に利用している。
【0063】
この第3の実施の形態では、信号線BS(バスステート)を従来の1対1の通信(シングル通信)の規格の最小クロック数よりも短いタイミングで変化させることで、通常のデータ通信ではエラーとして無視される信号を識別子の割り当て等の通信に利用している。
【0064】
以下、図16及び図17を参照しながら、本発明の第3の実施の形態について説明する。この第3の実施の形態の構成は、上記図11と同様とすればよい。また、ホストデバイス30がメモリカード40の装着を検出する処理は、例えば上記第2の実施の形態と同様に行えばよい。このメモリカード装着を検出した後の本発明の第3の実施の形態における識別子の割当処理を説明する。
【0065】
ホストデバイス30は、メモリカード40の装着を検出すると、図16のステップS51に示すように、信号線BS(バスステート)を規定の最小クロック数(例えば6クロック)よりも短い期間あるいはパルス幅Ts(例えば4クロック)で“Highレベル”に切り替え(図17)、信号線DIO(データ入出力)にメモリカード40の装着を検出したことを示す装着確認信号としてのメモリ検出符号を出力する(ステップS52)。この間、メモリカード40側の信号線DIOは、図17に示すようにハイインピーダンス状態になっている。
【0066】
メモリカード40は、ホストデバイス30からのメモリ検出符号を受信すると、識別子の割り当てを要求する割当要求符号の送信待ち状態に入る(ステップS53)。次に、ホストデバイス30が信号線BSを上記パルス幅Tsで再び“Highレベル”に切り替える(ステップS54)と、メモリカード40は、図17に示すように、信号線BSが“Highレベル”の間に識別子の割当要求符号をホストデバイス30に出力する(ステップS55)。このとき、ホストデバイス30側の信号線DIOは、ハイインピーダンス状態になっている。
【0067】
ホストデバイス30は、メモリカード40から識別子の要求符号を受信すると、識別子の割当符号を生成する(ステップS56)。次いで、ホストデバイス30は、図17に示すように、信号線BSを上記パルス幅Tsで“Highレベル”に切り替え、信号線DIOに識別子の割当符号を出力し(ステップS57)、メモリカード40は、ホストデバイス30から識別子の割当符号を受信する。この間、メモリカード40側の信号線DIOは、ハイインピーダンス状態になっている。このようにして識別子の割当処理を終了する。
【0068】
ここで、上述したように、信号線BS(バスステート)を通常の通信規格上の最小クロック数(例えば6クロック)よりも短い期間あるいはパルス幅Ts(例えば4クロック)で“Highレベル”に切り替えた場合、従来の1対1の通信(シングル通信)の規格のメモリカードでは、エラーとして無視されるため、従来のメモリカードに悪影響を与えることなく、新規な1対多通信(マルチ通信)規格のホストデバイスとメモリカード間での識別子割当処理等のための通信を行うことができる。
【0069】
ところで、上述した本発明の実施の形態では、ホストデバイス側に複数の装着部(メモリカードスロット)を設ける場合について説明したが、これに限定されず、例えば図18に示すように、ホストデバイス100に接続されたカード筐体110に複数の装着部(メモリカードスロット、図示せず)を設け、これらの複数の装着部に複数(例えばN個)のメモリカード120−1,120−2,・・・,120−Nを装着するように構成してもよい。
【0070】
以上説明したように、本発明の第1〜第3の実施の形態では、複数のメモリカードが一組の信号線CLK,BS,DIOを共有する。ホストデバイスは、どのメモリカードと通信しているかを区別するために、夫々のメモリカードに識別子を割り当てる。ホストデバイスは、識別子を割り当てた後に信号線CLK,BS,DIOを用いた通常の通信を開始する。
【0071】
本発明の実施の形態では、通常の通信と識別子の割当処理における通信とを区別するために2つの方法を用いる。1つめの方法は、信号線XINSを使用する方法である。信号線XINSは、メモリカードの挿抜を検出するための信号線である。本発明の第1、第2の実施の形態では、メモリカードにメモリ側送受信回路を設け、ホストデバイスにホスト側送受信回路を設けて信号線XINSでの通信を可能にした。
【0072】
2つめの方法は、本発明の第3の実施の形態に示したように、通常の通信では、エラーとなる信号を使用する方法である。メモリカードは、信号線CLK,BS,DIOを用いた3線式半二重通信を行う。信号線CLKはクロックを供給し、信号線BSはバスの状態を示し、信号線DIOはデータの送受信に用いられる。この方法では、規定された最小クロック数以下のクロックで信号線BSを変化させ、この信号線BSの変化に同期して信号線DIOにデータをのせて、通常の通信ではエラーとなる信号を用いて通信を行う。
【0073】
本発明を適用したメモリカードは、識別子の割当処理に対する応答がない場合、ホストデバイスが従来のものであると判別して、識別子を用いない従来の通信を開始する。また、逆に、ホストデバイスは、識別子の割当処理に対する応答がない場合、メモリカードが従来のものであると判別して、識別子を用いない従来の通信を開始する。これにより、従来のメモリカード及びホストデバイスとの互換性を保つことができる。
【0074】
なお、本発明は、データの送受信を行う信号線を複数のメモリカードで共有し、どのメモリカードが通信を行っているかを判別するために各メモリカードに識別子を割り当てることを特徴としている。この本発明の要旨を含む変形及び改良は、本発明に含まれるものとする。
【0075】
また、上述した実施の形態では、信号線CLK,BS,DIOを用いた3線式の半二重通信を行うとしたが、データ送受信用の信号線を例えばDIO0,DIO1,DIO2,DIO3の4本に増加して6線式の半二重通信などにしてもよい。
【図面の簡単な説明】
【0076】
【図1】ホストデバイス及びメモリカードの外観を示す図である。
【図2】ホストデバイスとメモリカードとの接続関係を示す図である。
【図3】ホストデバイスとメモリカードの具体的な構成を示すブロック回路図である。
【図4】識別子の割当処理を説明する図である。
【図5】ホストデバイスがメモリカードの通信モードを判別する処理を説明する図である。
【図6】メモリカードがホストデバイスの通信モードを判別する処理を説明する図である。
【図7】データライト(記録)時及びデータリード(読取)時における信号線の状態を示す図である。
【図8】一対多の通信において伝送されるコマンドの形式を示す図である。
【図9】正常な通信時におけるバスステートとエラーが発生時におけるバスステートとの関係を示す図である。
【図10】一対多の通信において伝送されるデータの形式を示す図である。
【図11】第2の実施の形態に係るホストデバイスとメモリカードとの接続関係を示す図である。
【図12】第2の実施の形態に係るホストデバイスとメモリカードの具体的な構成を示すブロック回路図である。
【図13】入出力制御回路の構成を示すブロック図である。
【図14】入出力制御回路の動作を示すタイミングチャートである。
【図15】第2の実施の形態におけるカード検出及び識別子の割当処理を説明する図である。
【図16】第3の実施の形態における識別子の割当処理を説明する図である。
【図17】識別子の割当処理における信号線の状態を示す図である。
【図18】ホストデバイスとメモリカードとの接続関係を示す図である。
【図19】従来のホストデバイス及びメモリカードの構成を示す図である。
【符号の説明】
【0077】
10 ホストデバイス、11 装着部、12 ホスト側送受信回路、13 ホストコントローラ、14 ホスト側インターフェース、15 レジスタ、20 メモリカード、21メモリ側送受信回路、22 メモリコントローラ、23 メモリ側インターフェース、24 レジスタ、25 メモリ、50 入出力制御回路
【技術分野】
【0001】
本発明は、情報処理装置、外部装置、ホスト装置、及び通信方法に関し、特に、コンピュータ等のホスト装置のデータ伝送用の信号線を共有して装着される複数のメモリカード等の外部装置とを備える情報処理装置、このような情報処理装置に用いられる外部装置、ホスト装置、及び外部装置とホスト装置との間の通信方法に関する。
【背景技術】
【0002】
従来より、コンピュータ等のホスト装置に接続される外部装置として、いわゆるメモリカードと呼ばれるリムーバブルなカード型のメモリが知られている。メモリカードの一つであるメモリスティック(登録商標)は、内蔵するフラッシュメモリに静止画像データ、動画像データ、音声データ、音楽データ等の各種デジタルデータを格納することができる。このメモリスティック等のメモリカードは、ホスト装置としての例えば情報携帯端末、デスクトップ型コンピュータ、ノート型コンピュータ、携帯電話機、オーディオ装置、ディジタルカメラ、ビデオカメラ、その他の家電装置などの電子機器に装着される外部装置である外部記憶メディアとして機能する。
【0003】
ホストデバイスはメモリカードに記録されたデータの読み書きを行う。従来のメモリカード60とホストデバイス70を図19に示す。ホストデバイス70は、ホスト側インターフェース74を介してメモリカード60と接続される。この場合、具体的には、ホストデバイス70側に設けられたメモリカードスロットにメモリカード60が装着されることにより端子や接続ピン等が電気的及び機械的に接続されるものである。レジスタ75は、メモリカード60の内部状態、メモリカード60のコマンド動作のパラメータ、メモリカード60の管理情報などを記録する。ホストコントローラ73は、レジスタ75に記録された情報を元にメモリカード60を制御する。データ処理部76は、ホストコントローラ53の指示に従ってデータに所定の処理を施す。挿抜検出回路72は、ホストデバイス70にメモリカード60が装着されたことを信号線XINSの電圧の変化により検出する。ホストデバイス70側の信号線XINSにはプルアップ抵抗R1が設けられており、メモリカードが挿入されていないときには信号線XINSは“Highレベル”になっている。一方、信号線XINSに接続されるメモリカード70側の端子は接地されている。従って、メモリカード70を挿入すると、信号線XINSは“Lowレベル”になることにより、挿抜検出回路72は、信号線XINSのレベルの変化によってメモリカード70の挿入及び抜去を検出することができる。
【0004】
ホストデバイス70は、メモリカード60に対してコマンドを発行する。カードコントローラ62は、ホストデバイス70から受けたコマンドのパラメータやメモリカード60の内部状態、メモリカード60の管理情報などをレジスタ64に記録する。カードコントローラ62は、レジスタ64に記録した情報を参照しながらメモリ65の読み書き及びホストデバイス70との通信制御を行う。
【0005】
ホストデバイス70とメモリカード60とは、3本の信号線CLK,BS,DIOを用いて通信をしている。信号線CLKはクロックを供給し、信号線BSはバスの状態を示し、信号線DIOをデータの送受信に用いられる。信号線BSの状態には、状態0〜状態3の4つの状態が存在し、ライトプロトコルの場合、状態0では通信をせず、状態1ではプロトコル上のコマンドに相当するコードを送信し、状態2ではデータステートと呼ばれホストデバイス70がメモリカード60にデータを送信し、状態3ではメモリカード60のプロトコル処理状態を受信する。また、リードプロトコルでは、状態2でメモリカード60のプロトコル処理状態を受信し、状態3でメモリカード60からホストデバイス70にデータを送信する(例えば、特許文献1参照)。
【0006】
【特許文献1】特開平11−53306号公報
【発明の開示】
【発明が解決しようとする課題】
【0007】
ところで、メモリカードとホストデバイスは以上のようなプロトコルに従ってデータの読み書きを行うが、このプロトコルはメモリカードとホストデバイスの一対一の通信を前提としたものであり、メモリカードを複数使用する場合にはメモリカードの枚数分のホスト側回路を用意する必要があり、回路規模やチップのピン数が増大し、複数のカード挿入部を持った機器の構成が複雑化し高価となる等の問題点がある。
【0008】
本発明は、このような実情に鑑み、回路規模を増大させることなく一対多の通信を行うホストデバイス及びメモリカードを提供することを目的とする。
【課題を解決するための手段】
【0009】
本発明にかかる情報処理装置は、ホスト装置と、ホスト装置のデータ伝送用の信号線を共有して装着される複数の外部装置とを備える情報処理装置であって、外部装置は、外部装置を識別するための識別子の割り当てをホスト装置に要求する割当要求機能を有する外部装置側制御手段を備え、ホスト装置は、外部装置に対して識別子を割り当てるホスト側制御手段を備える。
【0010】
本発明にかかる外部装置は、ホスト装置のデータ伝送用の信号線を共有して装着される外部装置であって、ホスト装置に装着されたとき、識別子の割り当てをホスト装置に要求する割当要求機能を有する制御手段を備える。
【0011】
本発明にかかるホスト装置は、データ伝送用の信号線を共有する複数の外部装置が装着されるホスト装置であって、装着された外部装置からの識別子の割り当て要求を受信する割り当て要求受信手段と、外部装置に対して識別子を割り当てる制御手段とを備える。
【0012】
本発明にかかる通信方法は、ホスト装置と、ホスト装置のデータ伝送用の信号線を共有して装着される複数の外部装置との通信方法であって、外部装置が外部装置を識別するための識別子の割り当てをホスト装置に要求する割当要求工程と、ホスト装置が外部装置に対して識別子を割り当てる割当工程とを備える。
【発明の効果】
【0013】
本発明によれば、ホスト装置に装着された外部装置に対して識別子を割り当て、この識別子により通信中の外部装置を特定するため、複数の外部装置がデータ伝送用の信号線を共有することができ、回路規模を増大することなく、一対多の通信を行うことができる。また、識別子が割り当てられるまでデータ伝送用の信号線を用いた通信ができないため、挿抜検出用の信号線を用いて識別子の割り当てを行う。
【0014】
さらに、本発明におけるホスト装置は、外部装置から識別子の割り当てが要求されなかったとき、識別子を使用しない一対一の通信を開始するため、本発明が適用されていない外部装置との互換性を保つことができる。
【0015】
また、本発明における外部装置は、識別子の割り当てに要求するホストからの応答が取得できなかったとき、識別子を使用しない一対一の通信を開始するため、本発明が適用されていないホスト装置との互換性を保つことができる。
【発明を実施するための最良の形態】
【0016】
本発明は、ホスト装置としてのホストデバイスと、ホストデバイスに制御される外部装置としてのメモリカードと、メモリカードをホストデバイスとからなる情報処理装置とに適用される。
【0017】
以下、図面を参照して本発明に係る情報処理装置、外部装置、ホスト装置、及び通信方法を適用した実施の形態としてのメモリカード及びメモリカードのホストデバイスについて説明する。本発明を適用したホストデバイスとメモリカードとは、一対多の通信を行う。この通信では、複数のメモリカードがホストデバイスから出力された一組の信号線を共有する。ホストデバイスは、どのメモリカードと通信をしているかを識別するために夫々のメモリカードに識別子を割り当てる。識別子の割り当ては、メモリカードの挿抜を検出する信号線上で行われる。
【0018】
本発明に係る第1の実施の形態について、以下説明する。
【0019】
図1は、ホストデバイス10及びメモリカード20の外観を示す。ホストデバイス10は、メモリカード20を装着する複数の装着部(いわゆるメモリカードスロット)11を備えている。図1の例では、ホストデバイス10側に4つの装着部11a,11b,11c,11dが設けられ、これらの装着部11a〜11dに同時に4つまでのメモリカード20a〜20dを装着することができる。メモリカード20にはホストデバイス10との電気的接続を行うための接続端子(図示せず)が設けられ、ホストデバイス10の装着部(メモリカードスロット)11には、メモリカード20の各接続端子と電気的接続を行うためのコネクタ(図示せず)が設けられている。装着部11にメモリカード20を挿入すると、装着部10内の上記コネクタの接点とメモリカード20の上記接続端子とが電気的に接続され、ホストデバイス10の各信号線とメモリカード20の各端子とが接続状態となる。装着部10からメモリカード20を抜き出すとホストデバイス10からメモリカード20との電気的接続が遮断される。
【0020】
ホストデバイス10にメモリカード20を装着することにより接続状態となる信号線としては、図2に示すように、データ伝送のための信号線CLK(クロック),BS(バスステート),DIO(データ入出力)と、メモリカード20の装着あるいは挿抜を検出するための信号線XINSが挙げられる。なお、メモリカードとしては、この他にも接続端子として例えば電源端子を有しカード装着時に電源供給線が接続されるようになっていてもよいが、本発明の要旨には関係しないため図示せず説明を省略する。
【0021】
ここで、複数のメモリカード20の間では、データ伝送のための信号線CLK,BS,DIOを共有しており、ホストデバイス10から出力された信号CLK,BS,DIOは全てのメモリカード20に出力される。また、本発明の第1の実施の形態では、メモリカードの挿抜を検出するための信号線XINSは、各メモリカード毎に独立に設けられている。すなわち、図2のN個のメモリカード20−1,20−2,・・・,20−Nは、それぞれ独立のカード挿抜検出用の信号線XINS1,XINS2,...,XINSNを介してホストデバイス10に接続されるようになっている。
【0022】
図3は、ホストデバイス10及びメモリカード20の具体的な構成例を示すブロック回路図である。この図3において、ホストデバイス10のホスト側送受信回路12には、複数、例えばN個のメモリカード20−1,・・・,20−Nの挿抜をそれぞれ独立に検出するための信号線XINS1,...,XINSNが接続され、各メモリカード20−1,・・・,20−Nのホスト側送受信回路12−1,・・・,12−Nには、カード装着時にそれぞれ対応する信号線XINS1,...,XINSNが接続されるようになっている。ホスト側送受信回路12は、メモリカード20−1,・・・,20−Nの挿抜検出をそれぞれ独立に行うことができる。すなわち、各信号線XINS1,...,XINSNにはそれぞれプルアップ抵抗R1が設けられており、メモリカード20が挿入されていない信号線XINSは“Highレベル”になっている。
【0023】
一方、メモリカード20には、信号線XINSの接続端子にプルダウン抵抗R2が設けられている。メモリカード20を挿入すると、信号線XINSは、プルダウン抵抗R2によって“Lowレベル”になる。ホスト側送受信回路12は、N個の各信号線XINS1,...,XINSNの内の“Lowレベル”になった信号線XINSにメモリカード20が装着されたことを検出する。ホストデバイス10のホスト側送受信回路12は、このような信号線XINS1,...,XINSNのレベルの変化によってメモリカード20−1,・・・,20−Nの挿入及び抜去状態を検出する。
【0024】
本実施の形態におけるホストデバイス10のホスト側送受信回路12は、信号線XINSを用いて複数のメモリカードを識別するための識別子を割り当てるようにしている。信号線XINSを用いて識別子の割り当てが完了すると、信号線CLK,BS,DIOを用いたデータの送受信を開始することができる。
【0025】
図4を参照して、識別子の割当処理を説明する。この図4の例では、ホストデバイス10側の1つの装着部(メモリカードスロット)に対して装着されたメモリカートに着目して動作を説明しているが、複数の装着部のいずれについてもメモリカードの装着時には同様な処理が行われることは勿論である。まず、メモリカード20がホストデバイス10に装着されると(ステップS11)、メモリカード20のプルダウン抵抗により、対応する信号線XINSが“Lowレベル”に変化する(ステップS12)。ホストコントローラ13は、複数の信号線XINS1,...,XINSNの内の“Lowレベル”に変化した信号線XINSに対応するスロット(装着部)へのメモリカード20の挿入を検出し(ステップS13)、ホスト側インターフェース14の信号線CLKにカード装着確認信号としてのクロック信号を出力させる(ステップS14)。
【0026】
メモリカード20は、メモリ側インターフェース23によって信号線CLKから出力されるクロック信号を検出し識別子要求状態に遷移する。識別子要求状態において、メモリ側送受信回路21は、信号線XINSを使用して識別子の要求信号をホストデバイス10に送信する(ステップS16)。
【0027】
ホストデバイス10は、ホスト側送受信回路12によって識別子の要求信号を受信すると、メモリカード20に識別子を割り当てるための割当信号を生成して(ステップS17)、信号線XINSを使用して識別子の割当信号をメモリ側送受信回路21に出力する(ステップS18)。ホストデバイス10及びメモリカード20は、識別子の割当処理が完了すると、接続状態に遷移する。接続状態では、信号線CLK(クロック),BS(バスステート),DIO(データ入出力)を用いてデータの送受信を含む通信処理を行うことができる。
【0028】
上述した識別子の割当処理が正常に行われなければ、ホストデバイス10若しくはメモリカード20が一対多の通信規格に対応していないことが判別できる。以下、図5を参照してホストデバイス10がメモリカード20の通信モードを判別する処理を説明し、図6を参照してメモリカード20がホストデバイス10の通信モードを判別する処理を説明する。
【0029】
ここで、メモリカードには、本発明の実施の形態で説明したような上記1対多の通信を行う規格に準拠するものと、従来の1対1の通信規格に準拠するものとがあり、上記1対多の通信規格は上記従来の1対1の通信規格の上位互換性を持たせることが好ましい。そこで、上記1対多の通信を行う規格に準拠するメモリカードと、従来の1対1の通信規格に準拠するメモリカードとが混在してホストデバイスに接続された場合にも不具合無く、例えば少なくとも従来のメモリカードについては1対1の通信が行えるようにすることが望まれる。このような機能を実現するための例について説明する。以下の説明では、上記1対多の通信をマルチ通信、上記従来の1対1の通信をシングル通信ともいう。
【0030】
まず、図5を参照しながら、上記本発明の実施の形態を適用した1対多の通信(マルチ通信)を行う規格に準拠するホストデバイス10が、従来のメモリカードも含むメモリカード20との間の通信モードを判別する処理を説明する。ホストデバイス10は、メモリカード20の装着を検出すると(ステップS21)、信号線CLKにクロックを供給する。装着されたメモリカードが本発明を適用した上記1対多の通信(マルチ通信)を行う規格に準拠するメモリカードであればクロックの供給を受けると信号線XINSに識別子の要求信号を出力する。一方、装着されたメモリカードが従来の1対1の通信規格(シングル通信規格)に準拠するメモリカードであればクロックの供給に対しての応答が発生しない。
【0031】
ホストコントローラ13は、信号線XINSに識別子の要求信号が入力されない場合(ステップS22;NO)、装着されたメモリカード20が従来のメモリカード20であると判断して、識別子を用いない一対一の通信を開始する(ステップS23)。
【0032】
一方、ホストデバイス10は、メモリカード20から識別子の要求信号を入力すると(ステップS22;YES)、信号線XINSを介して識別子の割当信号を出力する(ステップS23)。そして、識別子を用いた一対多の通信を開始する(ステップS24)。
【0033】
このように、本発明の実施の形態を適用したホストデバイス10は、メモリカード20から識別子の要求信号を受信するか否かによって、装着されたメモリカード20が従来のものであるか本発明を適用したものであるかを判断し、これに応じて通信の形態を決定する。
【0034】
次に、ホストデバイスについても、本発明の実施の形態で説明したような上記1対多の通信(マルチ通信)を行う規格に準拠するものと、従来の1対1の通信(シングル通信)の規格に準拠するものとがあり、従来の1対1の通信規格に準拠するホストデバイスに、本発明の実施の形態で説明したような上記1対多の通信を行う規格に準拠するメモリカードを装着した場合にも、少なくとも従来のメモリカードと同様な機能を実現できることが望まれる。
【0035】
そこで、図6を参照して、本発明の実施の形態を適用したメモリカード20がホストデバイス10を判別する処理を説明する。まず、メモリカード20は、信号線CLKを監視し、ホストデバイス10からクロックが供給されない場合は(ステップS31;NO)、規定時間の間待機する。そして、規定時間経過後にクロックが供給されない場合(ステップS32;YES)、一対一の通信を開始する(ステップS37)。
【0036】
一方、規定時間経過しない場合(ステップS32;YES)、ステップS31に処理を移行する。次いで、信号線CLKにクロックが供給されると(ステップS31;YES)、信号線XINSに識別子の要求信号を出力する(ステップS33)。
【0037】
次いで、メモリカード20は、信号線XINSの状態を監視する。従来のホストデバイス10は、ステップS32で受信した要求信号を認識しないので、信号線XINSの状態が“Lowレベル”から変化しない。メモリカード20は、信号線XINSの状態が“Lowレベル”から変化しないとき(ステップS34;YES)、従来のホストデバイス10であると判別する。メモリカード20は、従来のホストデバイス10であると判別すると、識別子要求回数を1増加し(ステップS35)、識別子要求回数が規定値より小さい場合には(ステップS36;YES)、ステップS33に処理を移行する。一方、識別子要求カウントが規定値より大きいには(ステップS36;NO)、識別子を用いない一対一の通信を開始する(ステップS37)。
【0038】
一方、ステップS34においてホストデバイス10が信号線XINSの信号レベルが変化し(ステップS34;NO)、信号線XINSから識別子の割当信号を受信すると(ステップS38;YES)、メモリカード20は、識別子を用いた一対多の通信を開始する(ステップS39)。一方、ステップS37において識別子の割当信号を受信しないとき(ステップS38;NO)、メモリカード20は、ステップS33に処理を移行し、識別子の要求信号を出力する。
【0039】
このように、本発明の実施の形態を適用したメモリカード20は、識別子の割当要求に対する応答が返信されるか否かによって、通信しているホストデバイス10が従来のものであるか本発明の実施の形態を適用したものであるから判断し、これに応じて通信の形態を決定する。
【0040】
上述したように、メモリカード20とホストデバイス10との通信の形態が決定し、かつ、識別子の割当が終了すると、メモリカード20とホストデバイス10とが通信可能状態に遷移する。通信可能状態では、信号線CLK(クロック),BS(バスステート),DIO(データ入出力)を用いて通信を行う。
【0041】
このときのホストデバイス10の各構成及びメモリカード20の各構成について説明する。信号線CLK,BS,DIOを用いた通信において、ホスト側コントローラは、メモリカード20との間の通信を制御する。信号線CLK,BS,DIOを用いた通信は、3線式の半二重通信である。この通信では、信号線CLKがクロックを供給し、BSが通信の状態(バスステート)を示し、DIOでデータの送受信を行う。ホストコントローラ13は、通信の状態に応じて、メモリカード20にコマンドを発行したり、データを送信又は受信したりする。ホストコントローラ13から出力されるコマンドは、レジスタ15に格納されている。
【0042】
ホストデバイスとメモリカードとの通信の初期状態では、信号線BS(バスステート)が“Lowレベル”となる。この状態は、状態0と呼ぶ。バスステートは、状態0を初期状態として、状態1、状態2、状態3と変化する。バスステートは、メモリカードとホストデバイスとやり取りしているデータが何であるかを示している。状態0の期間はアイドリング状態、状態1の期間はホストデバイスがコマンドを発行するコマンド発行状態である。状態2と状態3は、データのリード時とライト時とで異なる。
【0043】
データのライト時は、図7(a)に示すように、状態2でホストデバイスからメモリカードへのデータの転送を行い、状態3でハンドシェイクを行う。一方、データのリード時には、図7(b)に示すように、状態2はハンドシェイク期間でありメモリカードがデータを出力できないときにはビジー信号を返し、データが出力できるようになるとレディー信号を返す。そして、レディー信号を受信すると状態3でメモリカードからホストデバイスへのデータ転送を行う。メモリカードの通信では、エラーが発生すると、信号線DIOでのバスの衝突を回避するために自動的に状態0,状態1を繰り返す2ステートアクセスモードに移行する。
【0044】
本発明の実施の形態を適用したホストデバイスは、状態0から状態1に移行したとき図8に示すようなコマンドをメモリカードに発行する。このコマンドは、先頭部分にダミーデータが付加され、終端部分に識別子が付加されている。識別子は、ホストデバイス上でのアドレスである。コマンドを受信したメモリカードは、自己に割り当てられた識別子とデータに付加された識別子とを比較して自分宛てに発行されたコマンドを判断する。メモリカードは、自分宛てのコマンドを受信するとそのコマンドに沿った動作を行う。
【0045】
ダミーデータは、上記従来の1対1通信規格に準拠したシングル通信カードが意図的に通信エラーを発生させるようなデータである。メモリカードは、通信エラーが発生すると2ステートアクセスモードに移行し、状態0と状態1を繰り返す。シングル通信カードは、ダミーデータが付加されたコマンドを受信すると通信エラーと判断して状態0のアイドリング状態に移行する。本発明を適用したホストデバイスでは、複数のメモリカードが一組のデータ線を共有しているが、ダミーデータを付加することによって識別子が割り当てられていないシングル通信カードであっても他のメモリカード宛てに出力されたデータを誤って受信することはない。
【0046】
ダミーデータの一例を紹介する。従来、ホストデバイスは、「コマンド+コマンドの反転信号」というようにコマンドの後ろにコマンドの反転信号を付加している。メモリカードは、コマンドを受信すると、コマンドとコマンドの反転信号の排他的論理和をとり、排他的論理和が全て1となったときに、コマンドが正常に転送されたと判断している。排他的論理和が全て1ならないようなダミーデータを生成して、「ダミーデータ+コマンド」というようにコマンドの反転信号の代わりにダミーデータを付加すると意図的な転送エラーを発生させることができる。なお、このダミーデータは、システムに存在するシングル通信カードが誤ってコマンドを正常に受け付けないようなデータであればよく、必ずしもコマンドの反転信号に限定されるものではない。
【0047】
また、図9に示すように、シングル通信カードが2ステートアクセスモードに移行すると、状態0,状態1,状態0,状態1を繰り返す。一方、マルチ通信カードとホストデバイスとの通信が順当に進んでいると、バスの状態は、状態0,状態1,状態2,状態3の順に変化する。マルチ通信カードがデータを出力する状態(状態3)と、シングル通信カードがコマンドを受信する状態(状態1)が重なり、マルチ通信カードが出力したデータをシングル通信カードがコマンドと誤認識するおそれがある。この誤認識を防止するために、マルチ通信カードが出力するデータにもダミー信号を付加する。マルチ通信カードから出力されるデータは、図10に示すように、先頭部分にダミーデータが付加され、終端部分にCRCが付加される。ダミーデータは、コマンドと誤認識されないようなデータ、例えばデータ先頭部分の反転とは異なる信号を使用すればよい。
【0048】
以上説明したように、本発明の第1の実施の形態を適用したホストデバイス10は、メモリカード20に識別子を割り当てることにより、複数のメモリカード20が一組の信号線CLK,BS,DIOを共用するため、端子数の増加を低く抑えて複数のカードを接続することが可能となるとともに、回路規模を増大することなく複数のカードを接続することが可能となる。
【0049】
また、本発明の実施の形態を適用したホストデバイス10は、識別子の割当要求を受信するか否かによってメモリカード20が従来のものであるか本発明を適用したものであるかを判別する。そして、ホストデバイス10は、従来のメモリカード20に対しては従来の一対一通信を行う。これにより、ホストデバイス10は、従来のメモリカード20との互換性を保つことができる。
【0050】
さらに、本発明の実施の形態を適用したメモリカード20は、信号線XINSの信号レベルが変化するか否かによって、ホストデバイス10が従来のものであるか本発明の実施の形態を適用したものであるかを判別する。そして、メモリカード20は、従来のホストデバイス10に対しては従来の一対一通信を行う。これにより、メモリカード20は、従来のホストデバイス10との互換性を保つことができる。
【0051】
次に、本発明に係る第2の実施の形態について説明する。この本発明の第2の実施の形態の構成は、基本的に上述した第1の実施の形態と同様であり、以下の説明では、上記第1の実施の形態との相違点について主に説明する。
【0052】
上述した本発明の第1の実施の形態に用いられるホストデバイス10は、以下のように変形させることもできる。図11は、ホストデバイス30とメモリカード40との接続関係を変形させた、本発明の第2の実施の形態を示すものである。図11に示すホストデバイス30では、全てのメモリカードが信号線XINSを共有している。すなわち、複数例えばN個のメモリカード40−1,・・・,40−Nは、カード装着状態で、ホストデバイス30の1本の信号線XINSに共通に接続されることになる。
【0053】
図12は、本発明の第2の実施の形態に係るホストデバイス30及びメモリカード40の具体的な構成例を示すブロック回路図である。この図12において、メモリカード40内のメモリ送受信回路21は、入出力制御回路50を備え、この入出力制御回路50により、メモリカード40の装着がホストデバイス30のホスト送受信回路12に検出されるようにしている。ホストデバイス30のホスト送受信回路12には、1本のカード挿抜検出用の信号線XINSが接続されている。他の構成は、上述した図3の本発明の第1の実施の形態のホストデバイス10及びメモリカード20とほぼ同様であるため、対応する部分に同じ指示符号を付して説明を省略する。
【0054】
図13は、入出力制御回路50の構成を示す。入出力制御回路50は、2つのフリップフロップ53,54、バッファ55、スリーステートバッファ56、電源検出回路51を有して構成されている。メモリカードのXINS信号接続端子は、XINS信号入力用のバッファ55の入力端子、及びXINS信号出力用のスリーステートバッファ56の出力端子に接続され、バッファ55の出力端子はメモリコントローラ52に接続されている。フリップフロップ53,54は、いわゆるD型フリップフロップであり、これらのフリップフロップ53,54の各データ入力端子Dには、メモリコントローラ22からのデータがそれぞれ入力されている。フリップフロップ53,54の各リセット端子Rには、電源検出回路51からの電源検出信号が供給されている。フリップフロップ54のQ出力端子は、出力用のスリーステートバッファ56の入力端子に接続され、フリップフロップ53のQ出力端子はスリーステートバッファ55の制御端子に接続されている。電源検出回路51は、メモリカード40の電源Vcc供給用の接続端子に接続されている。このような構成の入出力制御回路50の動作を、図14を参照しながら説明する。
【0055】
図12に示すメモリカード40がホストデバイス30に装着されると、ホストデバイス30の電源供給線がメモリカード40の電源供給用接続端子(いずれも図示せず)に接続され、電源Vccがメモリカード40に供給される。これは、図14のVccの時刻t1の電源ONに相当する。図13の電源検出回路51は、電源Vccの供給(電源ON)を検出すると、例えば時刻t2のタイミングで図14に示すように“Lowレベル”の電源検出信号を出力する。この“Lowレベル”の電源検出信号が各フリップフロップ53,54のローアクティブの各リセット端子Rに入力されることにより、フリップフロップ53,54はいずれもリセットされ、各フリップフロップ53,54のQ出力は、いずれも“Lowレベル”となる。フリップフロップ53のQ出力がスリーステートバッファ56をアクティブ状態にすると共に、フリップフロップ54のQ出力の“Lowレベル”がスリーステートバッファ56を介して出力されることにより、図14に示すように、信号線XINSが“Lowレベル”に切り替えられる。ホストデバイス30は、信号線XINSの変化によりメモリカード40の装着を検出する。
【0056】
このように、メモリカード40の装着が検出された後は、上述したような識別子の割り当て等を行うわけであるが、識別子の割り当て等が終わった後には、メモリコントローラ52から“Highレベル”の制御信号をフリップフロップ53を介してスリーステートバッファ56の制御端子に送って、スリーステートバッファ56をハイインピーダンス状態に切り替えることにより、信号線XINSをハイインピーダンス状態にし、他のメモリカードの装着を検出可能な状態にすることができる。また、メモリカード40から信号線XINSを介してホストデバイス50に信号を送りたいときには、メモリコントローラ52から“Lowレベル”の制御信号をフリップフロップ53を介してスリーステートバッファ56の制御端子に送って、スリーステートバッファ56をアクティブ状態にし、メモリコントローラ52からの通信データをフリップフロップ54を介してスリーステートバッファ56を介して信号線XINSに出力すればよい。
【0057】
次に、図15を参照してホストデバイス30にメモリカード40を装着したときのカード検出及び識別子の割当処理を説明する。
【0058】
まず、メモリカード40をホストデバイス30の装着部に装着すると(ステップS41)、ホストデバイス30は、電源線を介してメモリカード40に電源Vccを供給する(ステップS42)。入出力制御回路50は、電源Vccが供給されるとこれを検出して信号線XINSの出力を“Lowレベル”に切り替える(ステップS43)。ホストデバイス30は、信号線XINSが“Lowレベル”になったことによりメモリカード40の挿入を検出し(ステップS44)、ホスト側インターフェース14の信号線CLKにクロック信号を出力させる(ステップS45)。
【0059】
メモリカード40は、メモリ側インターフェース23によって信号線CLKから出力されるクロック信号を検出し識別子要求状態に遷移する。識別子要求状態において、メモリ側受信回路は、信号線XINSを使用して識別子の要求信号をホストデバイス30に出力する(ステップS46)。
【0060】
ホストデバイス30は、ホスト側送受信回路12によって識別子の要求信号を受信すると、識別子の割当信号を生成し(ステップS47)、信号線XINSを使用して識別子の割当信号をメモリ側送受信回路21に出力する(ステップS48)。メモリカード40は、識別子の割当信号を受信すると信号線XINSを用いた通信を完了する。また、このとき、入出力制御回路50は、信号線XINSをハイインピーダンス状態に変化させる。
【0061】
このように、識別子の割当処理が完了すると、ホストデバイス30及びメモリカード40は、接続状態に遷移する。接続状態では、信号線CLK,BS,DIOを用いたデータの送受信を行うことができる。
【0062】
次に、本発明の第3の実施の形態を説明する。この第3の実施の形態では、上記第2の実施の形態で説明した図11と同様に、カード装着状態で、ホストデバイス30の1本の信号線XINSにN個のメモリカード40−1,・・・,40−Nが共通に接続されるように構成されている。ただし、この第3の実施の形態のホストデバイス30は、信号線XINSではなく信号線CLK(クロック),BS(バスステート),DIO(データ入出力)を用いてカード識別子の割り当て等に関する信号を通信するようにしている。この場合、データ伝送のための信号線CLK,BS,DIOを用いて識別子を割り当てる際には、通常のデータ通信と識別子の割当処理に伴う通信とを区別するため、通常のデータ通信ではエラーとして無視されるような信号線の状態あるいは通信形態を識別子の割当処理等に利用している。
【0063】
この第3の実施の形態では、信号線BS(バスステート)を従来の1対1の通信(シングル通信)の規格の最小クロック数よりも短いタイミングで変化させることで、通常のデータ通信ではエラーとして無視される信号を識別子の割り当て等の通信に利用している。
【0064】
以下、図16及び図17を参照しながら、本発明の第3の実施の形態について説明する。この第3の実施の形態の構成は、上記図11と同様とすればよい。また、ホストデバイス30がメモリカード40の装着を検出する処理は、例えば上記第2の実施の形態と同様に行えばよい。このメモリカード装着を検出した後の本発明の第3の実施の形態における識別子の割当処理を説明する。
【0065】
ホストデバイス30は、メモリカード40の装着を検出すると、図16のステップS51に示すように、信号線BS(バスステート)を規定の最小クロック数(例えば6クロック)よりも短い期間あるいはパルス幅Ts(例えば4クロック)で“Highレベル”に切り替え(図17)、信号線DIO(データ入出力)にメモリカード40の装着を検出したことを示す装着確認信号としてのメモリ検出符号を出力する(ステップS52)。この間、メモリカード40側の信号線DIOは、図17に示すようにハイインピーダンス状態になっている。
【0066】
メモリカード40は、ホストデバイス30からのメモリ検出符号を受信すると、識別子の割り当てを要求する割当要求符号の送信待ち状態に入る(ステップS53)。次に、ホストデバイス30が信号線BSを上記パルス幅Tsで再び“Highレベル”に切り替える(ステップS54)と、メモリカード40は、図17に示すように、信号線BSが“Highレベル”の間に識別子の割当要求符号をホストデバイス30に出力する(ステップS55)。このとき、ホストデバイス30側の信号線DIOは、ハイインピーダンス状態になっている。
【0067】
ホストデバイス30は、メモリカード40から識別子の要求符号を受信すると、識別子の割当符号を生成する(ステップS56)。次いで、ホストデバイス30は、図17に示すように、信号線BSを上記パルス幅Tsで“Highレベル”に切り替え、信号線DIOに識別子の割当符号を出力し(ステップS57)、メモリカード40は、ホストデバイス30から識別子の割当符号を受信する。この間、メモリカード40側の信号線DIOは、ハイインピーダンス状態になっている。このようにして識別子の割当処理を終了する。
【0068】
ここで、上述したように、信号線BS(バスステート)を通常の通信規格上の最小クロック数(例えば6クロック)よりも短い期間あるいはパルス幅Ts(例えば4クロック)で“Highレベル”に切り替えた場合、従来の1対1の通信(シングル通信)の規格のメモリカードでは、エラーとして無視されるため、従来のメモリカードに悪影響を与えることなく、新規な1対多通信(マルチ通信)規格のホストデバイスとメモリカード間での識別子割当処理等のための通信を行うことができる。
【0069】
ところで、上述した本発明の実施の形態では、ホストデバイス側に複数の装着部(メモリカードスロット)を設ける場合について説明したが、これに限定されず、例えば図18に示すように、ホストデバイス100に接続されたカード筐体110に複数の装着部(メモリカードスロット、図示せず)を設け、これらの複数の装着部に複数(例えばN個)のメモリカード120−1,120−2,・・・,120−Nを装着するように構成してもよい。
【0070】
以上説明したように、本発明の第1〜第3の実施の形態では、複数のメモリカードが一組の信号線CLK,BS,DIOを共有する。ホストデバイスは、どのメモリカードと通信しているかを区別するために、夫々のメモリカードに識別子を割り当てる。ホストデバイスは、識別子を割り当てた後に信号線CLK,BS,DIOを用いた通常の通信を開始する。
【0071】
本発明の実施の形態では、通常の通信と識別子の割当処理における通信とを区別するために2つの方法を用いる。1つめの方法は、信号線XINSを使用する方法である。信号線XINSは、メモリカードの挿抜を検出するための信号線である。本発明の第1、第2の実施の形態では、メモリカードにメモリ側送受信回路を設け、ホストデバイスにホスト側送受信回路を設けて信号線XINSでの通信を可能にした。
【0072】
2つめの方法は、本発明の第3の実施の形態に示したように、通常の通信では、エラーとなる信号を使用する方法である。メモリカードは、信号線CLK,BS,DIOを用いた3線式半二重通信を行う。信号線CLKはクロックを供給し、信号線BSはバスの状態を示し、信号線DIOはデータの送受信に用いられる。この方法では、規定された最小クロック数以下のクロックで信号線BSを変化させ、この信号線BSの変化に同期して信号線DIOにデータをのせて、通常の通信ではエラーとなる信号を用いて通信を行う。
【0073】
本発明を適用したメモリカードは、識別子の割当処理に対する応答がない場合、ホストデバイスが従来のものであると判別して、識別子を用いない従来の通信を開始する。また、逆に、ホストデバイスは、識別子の割当処理に対する応答がない場合、メモリカードが従来のものであると判別して、識別子を用いない従来の通信を開始する。これにより、従来のメモリカード及びホストデバイスとの互換性を保つことができる。
【0074】
なお、本発明は、データの送受信を行う信号線を複数のメモリカードで共有し、どのメモリカードが通信を行っているかを判別するために各メモリカードに識別子を割り当てることを特徴としている。この本発明の要旨を含む変形及び改良は、本発明に含まれるものとする。
【0075】
また、上述した実施の形態では、信号線CLK,BS,DIOを用いた3線式の半二重通信を行うとしたが、データ送受信用の信号線を例えばDIO0,DIO1,DIO2,DIO3の4本に増加して6線式の半二重通信などにしてもよい。
【図面の簡単な説明】
【0076】
【図1】ホストデバイス及びメモリカードの外観を示す図である。
【図2】ホストデバイスとメモリカードとの接続関係を示す図である。
【図3】ホストデバイスとメモリカードの具体的な構成を示すブロック回路図である。
【図4】識別子の割当処理を説明する図である。
【図5】ホストデバイスがメモリカードの通信モードを判別する処理を説明する図である。
【図6】メモリカードがホストデバイスの通信モードを判別する処理を説明する図である。
【図7】データライト(記録)時及びデータリード(読取)時における信号線の状態を示す図である。
【図8】一対多の通信において伝送されるコマンドの形式を示す図である。
【図9】正常な通信時におけるバスステートとエラーが発生時におけるバスステートとの関係を示す図である。
【図10】一対多の通信において伝送されるデータの形式を示す図である。
【図11】第2の実施の形態に係るホストデバイスとメモリカードとの接続関係を示す図である。
【図12】第2の実施の形態に係るホストデバイスとメモリカードの具体的な構成を示すブロック回路図である。
【図13】入出力制御回路の構成を示すブロック図である。
【図14】入出力制御回路の動作を示すタイミングチャートである。
【図15】第2の実施の形態におけるカード検出及び識別子の割当処理を説明する図である。
【図16】第3の実施の形態における識別子の割当処理を説明する図である。
【図17】識別子の割当処理における信号線の状態を示す図である。
【図18】ホストデバイスとメモリカードとの接続関係を示す図である。
【図19】従来のホストデバイス及びメモリカードの構成を示す図である。
【符号の説明】
【0077】
10 ホストデバイス、11 装着部、12 ホスト側送受信回路、13 ホストコントローラ、14 ホスト側インターフェース、15 レジスタ、20 メモリカード、21メモリ側送受信回路、22 メモリコントローラ、23 メモリ側インターフェース、24 レジスタ、25 メモリ、50 入出力制御回路
【特許請求の範囲】
【請求項1】
ホスト装置と、上記ホスト装置のデータ伝送用の信号線を共有して装着される複数の外部装置とを備える情報処理装置であって、
上記外部装置は、該外部装置を識別するための識別子の割り当てを上記ホスト装置に要求する割当要求機能を有する外部装置側制御手段を備え、
上記ホスト装置は、上記外部装置に対して識別子を割り当てるホスト側制御手段を備えること
を特徴とする情報処理装置。
【請求項2】
上記ホスト装置は、上記外部装置の装着を検出する装着検出手段を有し、上記ホスト側制御手段は、上記装着検出手段が上記外部装置の装着を検出すると上記外部装置に対して装着確認信号を供給する機能を有し、
上記外部機器側制御手段は、上記装着確認信号が供給されたことを検出して上記ホスト装置に識別子の割り当てを要求する要求信号を送信することを特徴とする請求項1記載の情報処理装置。
【請求項3】
上記ホスト装置は、上記外部装置の装着検出用の信号線を備え、
上記ホスト側制御手段は、上記装着検出用の信号線を用いて上記外部装置の装着を検出して、上記装着確認信号としてクロック信号を上記外部装置に供給し、
上記外部装置側制御手段は、上記クロック信号が供給されたことを検出して上記識別子の割り当てを要求する信号を上記装着検出用の信号線を用いて上記ホスト装置に送信し、
上記ホスト側制御手段は、上記装着検出用の信号線を用いて上記外部装置に識別子を割り当てること
を特徴とする請求項2記載の情報処理装置。
【請求項4】
上記ホスト側制御手段は、上記識別子の割り当てが完了した後、上記データ伝送用の信号線を使用したデータの送受信を開始すること
を特徴とする請求項1記載の情報処理装置。
【請求項5】
上記ホスト側制御手段は、外部装置から識別子の割り当てが要求されなかったとき、識別子を使用しない一対一の通信を開始することを特徴とする請求項1記載の情報処理装置。
【請求項6】
上記外部装置側制御手段は、識別子の割り当て要求に対する上記ホスト装置からの応答が取得できなかったとき、識別子を使用しない一対一の通信を開始することを特徴とする請求項1記載の情報処理装置。
【請求項7】
上記外部装置は、メモリカードであることを特徴とする請求項1記載の情報処理装置。
【請求項8】
ホスト装置のデータ伝送用の信号線を共有して装着される外部装置であって、
上記ホスト装置に装着されたとき、識別子の割り当てを該ホスト装置に要求する割当要求機能を有する制御手段を備えることを特徴とする外部装置。
【請求項9】
上記制御手段は、上記ホスト装置から装着確認信号が供給されると上記ホスト装置に識別子の割り当てを要求することを特徴とする請求項8記載の外部装置。
【請求項10】
上記制御手段は、上記識別子の割り当て要求に対するホスト装置からの応答が取得できなかったとき、識別子を使用しない一対一の通信を開始することを特徴とする請求項8記載の外部装置。
【請求項11】
データ伝送用の信号線を共有する複数の外部装置が装着されるホスト装置であって、
装着された外部装置からの識別子の割り当て要求を受信する割り当て要求受信手段と、
上記外部装置に対して識別子を割り当てる制御手段と
を備えることを特徴とするホスト装置。
【請求項12】
上記外部装置の装着を検出する装着検出手段を有し、
上記制御手段は、上記装着検出手段が上記外部装置の装着を検出すると上記外部装置に対して装着確認信号を供給することを特徴とする請求項11記載のホスト装置。
【請求項13】
上記制御手段は、上記外部装置から識別子の割り当てが要求されなかったとき、識別子を使用しない一対一の通信を開始することを特徴とする請求項11記載のホスト装置。
【請求項14】
ホスト装置と、上記ホスト装置のデータ伝送用の信号線を共有して装着される複数の外部装置との通信方法であって、
上記外部装置が該外部装置を識別するための識別子の割り当てを上記ホスト装置に要求する割当要求工程と、
上記ホスト装置が上記外部装置に対して識別子を割り当てる割当工程と
を備えることを特徴とする通信方法。
【請求項15】
上記ホスト装置が上記外部装置の装着を検出する装着検出工程と、
上記ホスト装置が上記外部装置の装着を検出すると上記外部装置に対して装着確認信号を供給する装着確認信号供給工程とを有し、
上記外部装置は、上記装着確認信号が供給されると上記ホスト装置に識別子の割り当てを要求することを特徴とする請求項14記載の通信方法。
【請求項1】
ホスト装置と、上記ホスト装置のデータ伝送用の信号線を共有して装着される複数の外部装置とを備える情報処理装置であって、
上記外部装置は、該外部装置を識別するための識別子の割り当てを上記ホスト装置に要求する割当要求機能を有する外部装置側制御手段を備え、
上記ホスト装置は、上記外部装置に対して識別子を割り当てるホスト側制御手段を備えること
を特徴とする情報処理装置。
【請求項2】
上記ホスト装置は、上記外部装置の装着を検出する装着検出手段を有し、上記ホスト側制御手段は、上記装着検出手段が上記外部装置の装着を検出すると上記外部装置に対して装着確認信号を供給する機能を有し、
上記外部機器側制御手段は、上記装着確認信号が供給されたことを検出して上記ホスト装置に識別子の割り当てを要求する要求信号を送信することを特徴とする請求項1記載の情報処理装置。
【請求項3】
上記ホスト装置は、上記外部装置の装着検出用の信号線を備え、
上記ホスト側制御手段は、上記装着検出用の信号線を用いて上記外部装置の装着を検出して、上記装着確認信号としてクロック信号を上記外部装置に供給し、
上記外部装置側制御手段は、上記クロック信号が供給されたことを検出して上記識別子の割り当てを要求する信号を上記装着検出用の信号線を用いて上記ホスト装置に送信し、
上記ホスト側制御手段は、上記装着検出用の信号線を用いて上記外部装置に識別子を割り当てること
を特徴とする請求項2記載の情報処理装置。
【請求項4】
上記ホスト側制御手段は、上記識別子の割り当てが完了した後、上記データ伝送用の信号線を使用したデータの送受信を開始すること
を特徴とする請求項1記載の情報処理装置。
【請求項5】
上記ホスト側制御手段は、外部装置から識別子の割り当てが要求されなかったとき、識別子を使用しない一対一の通信を開始することを特徴とする請求項1記載の情報処理装置。
【請求項6】
上記外部装置側制御手段は、識別子の割り当て要求に対する上記ホスト装置からの応答が取得できなかったとき、識別子を使用しない一対一の通信を開始することを特徴とする請求項1記載の情報処理装置。
【請求項7】
上記外部装置は、メモリカードであることを特徴とする請求項1記載の情報処理装置。
【請求項8】
ホスト装置のデータ伝送用の信号線を共有して装着される外部装置であって、
上記ホスト装置に装着されたとき、識別子の割り当てを該ホスト装置に要求する割当要求機能を有する制御手段を備えることを特徴とする外部装置。
【請求項9】
上記制御手段は、上記ホスト装置から装着確認信号が供給されると上記ホスト装置に識別子の割り当てを要求することを特徴とする請求項8記載の外部装置。
【請求項10】
上記制御手段は、上記識別子の割り当て要求に対するホスト装置からの応答が取得できなかったとき、識別子を使用しない一対一の通信を開始することを特徴とする請求項8記載の外部装置。
【請求項11】
データ伝送用の信号線を共有する複数の外部装置が装着されるホスト装置であって、
装着された外部装置からの識別子の割り当て要求を受信する割り当て要求受信手段と、
上記外部装置に対して識別子を割り当てる制御手段と
を備えることを特徴とするホスト装置。
【請求項12】
上記外部装置の装着を検出する装着検出手段を有し、
上記制御手段は、上記装着検出手段が上記外部装置の装着を検出すると上記外部装置に対して装着確認信号を供給することを特徴とする請求項11記載のホスト装置。
【請求項13】
上記制御手段は、上記外部装置から識別子の割り当てが要求されなかったとき、識別子を使用しない一対一の通信を開始することを特徴とする請求項11記載のホスト装置。
【請求項14】
ホスト装置と、上記ホスト装置のデータ伝送用の信号線を共有して装着される複数の外部装置との通信方法であって、
上記外部装置が該外部装置を識別するための識別子の割り当てを上記ホスト装置に要求する割当要求工程と、
上記ホスト装置が上記外部装置に対して識別子を割り当てる割当工程と
を備えることを特徴とする通信方法。
【請求項15】
上記ホスト装置が上記外部装置の装着を検出する装着検出工程と、
上記ホスト装置が上記外部装置の装着を検出すると上記外部装置に対して装着確認信号を供給する装着確認信号供給工程とを有し、
上記外部装置は、上記装着確認信号が供給されると上記ホスト装置に識別子の割り当てを要求することを特徴とする請求項14記載の通信方法。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図19】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図19】
【公開番号】特開2006−24143(P2006−24143A)
【公開日】平成18年1月26日(2006.1.26)
【国際特許分類】
【出願番号】特願2004−203813(P2004−203813)
【出願日】平成16年7月9日(2004.7.9)
【出願人】(000002185)ソニー株式会社 (34,172)
【Fターム(参考)】
【公開日】平成18年1月26日(2006.1.26)
【国際特許分類】
【出願日】平成16年7月9日(2004.7.9)
【出願人】(000002185)ソニー株式会社 (34,172)
【Fターム(参考)】
[ Back to top ]