説明

インターフェース拡張回路

【課題】最小限のCPU資源で、複数のPCMCIA規格またはCFA規格に準拠したカードまたはモジュールを制御できるインターフェース拡張回路を提供する。
【解決手段】CPU200からのアドレス信号を保持するデータラッチ回路101と、データラッチ回路101からアクセスするスロットを判別するアクセス判定回路102と、データラッチ回路101からPCMCIA規格またはCFA規格に準拠したレジスタアクセスの有効アドレスを生成するアドレス変換回路103と、アドレス変換回路103から生成された有効アドレスを各スロットにアドレスとして出力する手段と、アクセス判定回路102で判別されたスロットにCPU200からの制御信号を出力する制御信号出力回路106と、アクセス判定回路102で判別されたスロットからのステータス信号をCPU200へ出力するステータス信号出力回路107とを有する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、パーソナルコンピュータや携帯情報端末をはじめとする情報処理端末に、着脱可能に装着あるいは情報処理端末に内蔵されて使用されるPCカード、及びPCカードインターフェースを備えたモジュール等を、情報処理端末で複数使用する場合に利用可能なインターフェース拡張回路に関する。
【背景技術】
【0002】
パーソナルコンピュータや携帯情報端末をはじめとする情報処理端末に着脱可能に装着されて使用されるPCカードには、例えば記憶媒体として利用されるメモリーカード、磁気ディスクなどのハードディスク装置を備えた補助記憶装置、有線通信に利用されるモデムカードやLANカード、無線通信に利用される無線LANカード等がある。これらのPCカードを使用することによってパーソナルコンピュータや携帯情報端末は、使用される状況や環境に応じて柔軟に対応できる。例えば、有線LANが使用できる環境であれば、LANカードを使用し、無線LANの環境の場合には、無線LANカードを使用した通信ができる。
【0003】
PCカードは、米国の標準化団体であるPCMCIA(Personal Computer Memory Card International Association)の統一規格(PC Card Standard)に基づき、情報処理端末に設けられたPCカードインターフェイスのPCカードスロットにコネクタを差し込んで使用され、使用しない場合にはPCカードスロットから引き抜くことができるようになっている。以下、上記の統一規格をPCMCIA規格と称す。
【0004】
また、CFA(Compact Flash Association)が提唱するコンパクトフラッシュ(登録商標)(以下、CFカードと略称する)は、小型で携帯性に優れた特徴から、デジタルカメラ、携帯情報端末などの小型の情報処理端末で利用されている。以下、CFAが規定するCFカードに関する規格をCFA規格と称す。
【0005】
PCカードは、68ピンを有するツーピースコネクタが採用され、またCFカードは50ピンのツーピースコネクタが採用されている。
【0006】
しかし、近年の携帯情報端末の小型化が進むに従って、このカードコネクタの実装面積の大きさが課題となってきている。そこで近年ではPCカードあるいはCFカードの規格に準拠したモジュール部品が普及してきており、このモジュール部品を情報処理端末に内蔵させることで、より小型な情報処理端末を提供できるようになってきた。
【0007】
上記のような、PCカードやCFカード、モジュール部品が普及してきたことに伴って、情報処理端末に搭載される中央演算処理装置(以下、CPUと略称する)にもPCMCIA規格あるいはCFA規格に準拠したインターフェースコントローラを備えたものが登場してきている。これにより、CPUはPCカードあるいはCFカードのインターフェースコントローラを介さずに、直接PCカードスロットあるいはCFカードスロットに差し込んだカードまたは、内蔵したモジュール部品を制御することが可能となった。
【0008】
しかし近年、情報処理端末は、通信やAV等の機能を有しマルチメディア化しており、より小型でより多くの機能が求められている。例えば、無線LANによる通信機能と、より多くの情報量を蓄積できるストレージ機能を併せ持った情報処理端末等が求められている。これを満たすには、無線LANカードあるいはモジュールとメモリーカードあるいはハードディスク装置を組み合わせることで、実現することができる。
【0009】
上記の構成を満たすには、従来では、CPUと各カードあるいはモジュール間にインターフェースコントロールLSI、すなわち複数のPCカードまたはCFカードあるいはモジュールを制御できるコントローラが必要であった。
【0010】
また、複数のカードを1つのスロットに接続するための技術として、PCカードを複数枚接続し、所望の機能1つを選択して、実行できるようにスイッチにて切り替えるものが考案されている(特許文献1参照)。
【特許文献1】特開平8−180148号公報
【非特許文献1】「PCカード/メモリカードの徹底研究」、CQ出版、2002年
【発明の開示】
【発明が解決しようとする課題】
【0011】
しかしながら、複数のPCカードまたはCFカード、あるいはモジュールを制御できるコントロールLSIを用いる場合、問題となるのがそのコントロールLSIを制御するCPUのアドレス空間の割り当てである。複数のカードやモジュールを制御する際、CPUは、各カードやモジュールにアドレス空間を割り当てる必要がある。また場合によっては、CPUから各カードやモジュールを制御する為の切替信号が必要になる場合がある。例えば、CFカードの場合、アドレス信号は10ビットであるが、この10ビットはCFカードにアクセスする際のレジスタをアドレス指定に用いる為、10ビット分のアドレス信号では、アドレス空間を割り当てる(アドレスをデコードする)ことはできない。よってコントロールLSIには10ビット以上のアドレス信号を入力するか、またはCPUからの切替信号を入力するしかない。前述の10ビット以上のアドレス信号を入力する場合は、各CPUのアドレス信号のビット数はCPUによって異なり、またアドレス空間の割り当ても各々異なることから、コントロールLSIの汎用性が無くなってしまう。そこで後述のCPUから各カードあるいはモジュールを制御する為の切替信号を用いることで制御が可能となる。CPUからあらかじめ割り当てたアドレス空間に対応する切替信号をコントロールLSIに出力することで、コントロールLSIは、接続されるCPUに関係なく、その切替信号を用いて各カード、あるいはモジュールを制御することが可能となる。しかし、今日の携帯情報処理端末のマルチメディア化、小型化に伴い、この切替信号を確保することが困難になる場合がある。またCPUがPCカードあるいはCFカードのコントローラを内蔵していた場合でも、CPUが内蔵しているコントローラが制御できるPCカードあるいはCFカードの数は決まっており、そのほとんどは1スロットまたは2スロットである。それ以上の数のカードあるいはモジュールを制御する場合には、上記のコントローラLSIが必要となる。またこの場合でも、アドレス空間の割り当ては必要となる。
【0012】
この際、CPUに複数のPCカードまたはCFカード、あるいはモジュールを制御するためのアドレス空間を割り当てる余裕がない。例えば、CPUの他の機能でアドレス空間が使用され、新たに割り当てるアドレス空間が無い場合は、CPUが内蔵するコントローラで制御できるスロット数のみ使用することができ、スロットを拡張する為のコントロールLSIを用いることはできないという問題がある。
【0013】
また、PCカードを複数枚接続し、所望の機能1つを選択して、実行できるようにスイッチにて切り替えるPCカード(特許文献1参照)では、複数枚接続されている機能のうち1つだけを選択し実行するので、複数枚のPCカードにわたった機能を連続的に処理を行うリアルタイムな処理を行うことができないといった問題があり、またPCカードを複数枚接続する構成では、実装面積が大きくなるという問題があった。
【0014】
本発明は、前記従来技術の問題を解決するものであり、パーソナルコンピュータや、携帯情報機器などの情報処理端末において、複数のPCカードまたはCFカード、あるいはモジュールを最小限のCPU資源で効率よく処理を行えるインターフェース拡張回路を提供することを目的とする。
【課題を解決するための手段】
【0015】
本発明は、上記目的を達成するため、基本的には以下に記載された技術構成を採用するものである。
【0016】
本発明に係る第1の発明は、PCMCIA規格またはCFA規格に準拠したカードまたはモジュールを制御するコントローラを含むCPUと接続され、1スロット分の制御信号で複数のスロットを制御するインターフェース拡張回路であって、CPUからのアドレス信号を保持する保持手段と、保持手段の状態に基づきアクセスするスロットを判別する判別手段と、保持手段から所定の規格に準拠したレジスタアドレスの有効アドレスを生成するアドレス生成手段と、有効アドレスを各スロットのアドレスとして出力するアドレス出力手段と、判別手段で判別されたスロットにCPUからの制御信号を出力する制御信号出力手段と、判別手段で判別されたスロットから出力されるステータス信号をCPUに出力するステータス信号出力信号とを備えるものである。
【0017】
また第2の発明は、CPUと接続され、PCMCIA規格またはCFA規格に準拠したカードまたはモジュールを周辺回路アクセス用の制御信号で、複数のスロットに装着されたカードまたはモジュールを制御するインターフェース拡張回路であって、CPUからのアドレス信号を保持する保持手段と、保持手段の状態に基づきアクセスするスロットを判別する判別手段と、保持手段から所定の規格に準拠したレジスタアドレスの有効アドレスを生成するアドレス生成手段と、有効アドレスを各スロットのアドレスとして出力するアドレス出力手段と、周辺回路アクセス用の制御信号からカードまたはモジュールを制御する制御信号を生成する制御信号生成手段と、判別手段で判別されたスロットに制御信号生成手段からの制御信号を出力する制御信号出力手段と、判別手段で判別されたスロットから出力されるステータス信号を前記CPUに出力するステータス信号出力信号とを備えるものである。
【発明の効果】
【0018】
本発明によれば、1スロット分または1周辺回路分の制御信号で複数のカードまたはモジュールを制御することができるため、CPUが有する資源を有効に利用して、カードまたはモジュール用のインターフェースを拡張して使用することができる。
【発明を実施するための最良の形態】
【0019】
本発明に係る第1の発明は、PCMCIA規格またはCFA規格に準拠したカードまたはモジュールを制御するコントローラを含むCPUと接続され、1スロット分の制御信号で複数のスロットを制御するインターフェース拡張回路であって、前記CPUからのアドレス信号を保持する保持手段と、前記保持手段の状態に基づきアクセスするスロットを判別する判別手段と、前記保持手段から所定の規格に準拠したレジスタアドレスの有効アドレスを生成するアドレス生成手段と、前記有効アドレスを各スロットのアドレスとして出力するアドレス出力手段と、前記判別手段で判別されたスロットに前記CPUからの制御信号を出力する制御信号出力手段と、前記判別手段で判別されたスロットから出力されるステータス信号を前記CPUに出力するステータス信号出力信号と、を備えるものである。
【0020】
上記第1の発明に係わるPCカードのインターフェース拡張回路によれば、情報処理端末に搭載されているCPUがPCMCIA規格またはCFA規格に準拠したカード、あるいはモジュールを制御できるコントローラを有する場合、1スロット分の制御信号で複数(最大4スロット)のカード、またはモジュールが制御できるため、CPUのアドレス空間の割り当てを行わずにPCカードまたはCFカードあるいはPCMCIA規格またはCFA規格に準拠したモジュールを拡張して使用することができ、CPUの資源を有効に使用することができる。
【0021】
また、第2の発明は、CPUと接続され、PCMCIA規格またはCFA規格に準拠したカードまたはモジュールを周辺回路アクセス用の制御信号で、複数のスロットに装着された前記カードまたはモジュールを制御するインターフェース拡張回路であって、前記CPUからのアドレス信号を保持する保持手段と、前記保持手段の状態に基づきアクセスするスロットを判別する判別手段と、前記保持手段から所定の規格に準拠したレジスタアドレスの有効アドレスを生成するアドレス生成手段と、前記有効アドレスを各スロットのアドレスとして出力するアドレス出力手段と、前記周辺回路アクセス用の制御信号から前記カードまたはモジュールを制御する制御信号を生成する制御信号生成手段と、前記判別手段で判別されたスロットに前記制御信号生成手段からの制御信号を出力する制御信号出力手段と、前記判別手段で判別されたスロットから出力されるステータス信号を前記CPUに出力するステータス信号出力信号と、を備えるものである。
【0022】
上記第2の発明に係わるPCカードのインターフェース拡張回路によれば、情報処理端末に搭載されているCPUがPCMCIA規格またはCFA規格に準拠したカード、あるいはモジュールを制御できるコントローラを有しない場合でも、1つ周辺回路の制御信号で複数(最大4スロット)のカード、またはモジュールが制御できるため、CPUのI/Oの割り当てを行わずにPCカードまたはCFカードあるいはPCMCIA規格またはCFA規格に準拠したモジュールを拡張して使用することができ、CPUの資源を有効に使用することができる。
【0023】
また、第3の発明は、上記第1または第2の発明において、前記アドレス生成手段は、前記カードまたはモジュールの情報テーブルと、前記カードまたはモジュールの状態の設定および監視を行うコンフィギュレーションレジスタにアクセスするための第1のアドレス制御部と、前記カードまたはモジュールとデータの読み書きを行うためのATAレジスタにアクセスするための第2のアドレス制御部と、前記第1または第2のアドレス制御部のいずれかで前記有効アドレスを生成するかを選択する選択部とを有することを特徴とするものである。
【0024】
以下、本発明の実施の形態について、図面を用いて説明する。
【0025】
(実施の形態)
本発明に係わるインターフェース拡張回路は、マイクロコンピュータシステムにおけるCPUとPCMCIA規格またはCFA規格に準拠したカードまたはモジュールを繋ぐバスインターフェース回路に、CPUから出力されるアドレス信号を保持する回路と、保持した値からPCMCIA規格またはCFA規格に準拠したレジスタアクセスの有効アドレスを生成する回路と、保持した値から該当するスロットを判別する回路と、判別されたスロットへCPUからの制御信号へ出力する回路、そしてCPUから出力される制御信号がPCMCIA規格またはCFA規格に準拠していない制御信号であれば、PCMCIA規格またはCFA規格に準拠した制御信号を生成する回路を設けたことを特徴とするものである。
【0026】
図1は、本発明の実施の形態によるインターフェース拡張回路の構成を示すブロック図である。
【0027】
図1において、CPU200と複数のスロット(スロット1〜スロット4)の間に本発明のインターフェース拡張回路としてのPCカード拡張回路100が実装される。
【0028】
PCカード拡張回路100は、図1に示すように、CPU200との間は、CPU200から出力されるアドレスバス111と、CPU200から出力される制御信号112と、CPU200へ出力される制御信号113とから成る。CPU200からは、データバス210が各スロット300〜600に接続される。PCカード拡張回路100は、アドレスバス111からのアドレス信号の保持回路となるデータラッチ回路101と、どのスロットにアクセスするかを判別するアクセス判定回路102と、データラッチ回路101の値からPCMCIA規格またはCFA規格に準拠したレジスタアクセスを行うための有効アドレスを生成するアドレス変換回路103と、CPU200から出力された制御信号112をアクセス判定回路102で判定されたスロットにスロット制御信号115,116,117,118として出力する制御信号出力回路106と、スロット1(300)、スロット2(400)、スロット3(500)、スロット4(600)それぞれから出力されるステータス信号1(119)、ステータス信号2(120)、ステータス信号3(121)、ステータス信号4(122)から、アクセス判定回路102で判定されたスロットのステータス信号のみを選択し、CPU200へ出力するステータス信号出力回路107とで構成している。
【0029】
ところで、PCMCIA規格及びCFA規格に準拠したカード及びモジュールは、その内部のレジスタにアクセスすることで、制御を可能とする。このレジスタにアクセスするのは、(表1)に示した制御信号と、11ビットのアドレス信号、16ビットのデータ信号が必要である。またPCMCIA規格及びCFA規格に準拠したPCカード及びモジュール部品のレジスタ制御はレジスタのアドレス値が規格化され、統一であるという特徴がある。
【0030】
しかし、PCMCIA規格に準拠したカード及びモジュールは26ビットのアドレス信号を入力するが、PCカードのATAレジスタの仕様では10ビットのアドレス信号のみ使用する。これはCF規格に準拠したPCカードでも同様である。すなわちPCMCIA規格及びCF規格に準拠したPCカードであれば同一の制御を行って問題がない。
【0031】
【表1】

【0032】
次に、PCMCIA規格またはCFA規格に準拠したカードおよびモジュールには、前記カード及びモジュールの情報が格納された情報テーブル(CIS:Card Information Structure)と、前記カード及びモジュールに対して、各種設定を行うレジスタ(CCR:Card Configuration Register)が格納された、アトリビュートメモリ領域と、タスクファイルレジスタを格納できるコモンメモリ領域からなるメモリアドレス空間と、コモンメモリ領域同様、タスクファイルレジスタを格納できるI/Oアドレス空間がある。
【0033】
タスクファイルレジスタをコモンメモリ領域に格納するか、I/Oアドレス空間に格納するかは、PCカードのカードモードに依存する。PCカードがメモリカードモードで動作する場合は、タスクファイルレジスタはコモンメモリ領域に格納され、PCカードがI/Oカードモードで動作する場合は、I/Oアドレス空間に格納される。PCMCIA規格またはCFA規格に準拠したカード及びモジュールを使用する際には、はじめに、アトリビュートメモリ領域の情報テーブル(CIS:Card Information Structure)にアクセスし、カード及びモジュールの情報を取得し、次に各種設定を行うレジスタ(CCR:Card Configuration Register)にて必要な設定を行ってから、タスクファイルレジスタにアクセスして、実際に前記カードまたはモジュールとデータのやり取りを行うといった特徴がある。このPCカード拡張回路100は上記の特徴を利用している。
【0034】
以下に、本発明に係わるPCカード拡張回路とその制御方法の具体例を図面を参照しながら詳細に説明する。
【0035】
(第1の具体例)
図2は、本発明に係わるPCカード拡張回路の第1の具体例における構成を示すブロック図である。この図には、CPU200がPCMCIA規格またはCFA規格に準拠したカードまたはモジュールを制御できるコントローラを内蔵している場合に、このCPUが1つ分の制御信号で複数のスロット(最大4スロット)を制御するために用いられるPCカード拡張回路100において、CPU200から出力されるアドレス信号を保持するデータラッチ回路101と、データラッチ回路101からアクセスしたいスロットを判別するアクセス判定回路102と、データラッチ回路101からPCMCIA規格またはCFA規格に準拠したレジスタアクセスの有効アドレスを生成するアドレス変換回路103と、アドレス変換回路103から生成された有効アドレスを各スロットのアドレスとして出力するアドレス出力回路104と、CPU200からの制御信号112がPCMCIA規格またはCFA規格に準拠したものかを判別し、PCMCIA規格またはCFA規格に準拠したものであれば、そのまま出力し、PCMCIA規格またはCFA規格に準拠しない制御信号であれば、その制御信号から、PCMCIA規格またはCFA規格に準拠した制御信号を生成し出力する制御信号生成回路105と、アクセス判定回路102によって判別されたアクセスしたいスロットに制御信号生成回路105から出力された制御信号を出力する制御信号出力回路106と、各スロットから出力されるステータス信号を入力し、アクセス判定回路102により判別されたスロットのステータス信号をCPU200へ判別して出力するステータス信号出力回路107とで構成したことを特徴とするPCカード拡張回路100が示されている。
【0036】
また、アドレス変換回路103には、PCMCIA規格またはCFA規格に準拠したカードまたはモジュールの情報テーブル(CIS:Card Information Structure)と、PCMCIA規格またはCFA規格に準拠したカードまたはモジュールの状態の設定および監視を行うコンフィギュレーションレジスタにアクセスするための制御と、PCMCIA規格またはCFA規格に準拠したカードまたはモジュールと実際にデータの読込み、書込みを行うためのATAレジスタにアクセスするための制御を行い、データラッチ回路101で保持せしめたCPU200からのアドレス信号でどちらの制御を行うか選択するように構成したことを特徴とするPCカード拡張回路が示されている。
【0037】
以下に、図2に示すPCカード拡張回路について更に詳細に説明する。
【0038】
図2には、PCMCIA規格またはCFA規格に準拠したカードまたはモジュールを制御できるコントローラを内蔵したCPUにおいて、1スロット分の制御信号で4スロット接続された上記カードまたはモジュールを制御するためのPCカード拡張回路が示されている。
【0039】
図2におけるアドレスバス111は、CPU200が持つアドレスバスの下位10ビットが割り当てられる。本発明のPCカード拡張回路100では、このアドレスバス111に一定の決まりを持たせる。この一定の決まり(フォーマット)を図4に示す。
【0040】
図4より、下位2ビットがどのスロットにアクセスするかを示すビット(ID番号)であり、このビットの割り当ては次のようになる。
アドレス(1)、アドレス(0) 該当スロット
0 0 スロット1(300)
0 1 スロット2(400)
1 0 スロット3(500)
1 1 スロット4(600)
次に、図4より下位3ビット目は、CPU200が各スロットに接続されたカードまたはモジュールの前記アトリビュートメモリ領域または、コモンメモリ領域のどちらにアクセスするのかを示す。即ち、このビットが「0」の場合は、コモンメモリ領域を、また「1」の場合はアトリビュートメモリ領域にアクセスすることを示す。
【0041】
ここで、上記3ビット目が「0」、のときは、図4の上位8ビットは全て「0」とする。
【0042】
これは、PCMCIA規格及びCFA規格に準拠したカード、及びモジュールのアトリビュート領域は000h〜3FFh即ち、9ビットのアドレスが必要となり、上記のビットの割り当てでは、有効なアドレスを指定することができない。よってアドレスバス111は、アトリビュート領域にアクセスする際、まず初めにどのスロットにアクセスするかという情報と、アトリビュート領域にアクセスするという情報のみを出力し、次に有効なアドレス値を出力しなければならない。よってCPU200は、アトリビュート領域にアクセスする際、実際には2度のアクセスを行わなければならないが、このアトリビュート領域へのアクセスは、スロットに接続される上記カードまたはモジュールの初期設定時のみアクセスし、常時アクセスするものではないため、処理速度の低下といった大きな影響はほとんどない。
【0043】
次に、上記3ビット目が「1」、のときは図4の上位8ビットには、PCカードATAレジスタのインデックス化されたテーブル番号を示す。
【0044】
表2にPCカードATAレジスタのインデックス化されたテーブルとテーブルに割当てられた有効アドレスを示す。
【0045】
【表2】

【0046】
図2のデータラッチ回路101は、図4の下位2ビットと下位3ビット目の信号、計3ビットをアクセス判定回路102に引き渡す。また、残りの8ビットをアドレス変換回路103へ引き渡す。ただし、CPU200がアトリビュートメモリアクセスを行う場合は、図4の下位2ビットと下位3ビット目の信号、計3ビットをアクセス判定回路102に引き渡すが、残りの8ビットはアドレス変換に引き渡さず、次の2回目のアクセスで、11ビットの信号すべてを、アドレス出力回路104に引き渡す。
【0047】
図2のアクセス判定回路102は、データラッチ回路101から出力された3ビットの信号、すなわちどのスロットにアクセスするかを示す2ビットの信号と、CPU200がアトリビュートメモリアクセスを行うかコモンメモリアクセスを行うかを示す1ビットの信号を入力し、アドレス出力回路104、制御信号出力回路105、ステータス信号出力回路106に対して、出力を許可する出力イネーブル信号と、制御信号出力回路105、ステータス信号出力回路106にどのスロットに出力するかの情報を引き渡す。
【0048】
CPU200がアトリビュートメモリアクセスを行う場合、アドレス判定回路102は、1回目のアクセスでどのスロットにアクセスするかという情報のみ保持し、アドレス出力回路104、制御信号出力回路105、ステータス信号出力回路106に対して出力イネーブル信号を出力しない。
【0049】
次に2回目のアクセスで、保持しておいた情報とアドレス出力回路104、制御信号出力回路105、ステータス信号出力回路106に対して、出力イネーブル信号を出力する。
【0050】
次に、図3のアドレス変換回路103では、CPU200がコモンメモリアクセスを行う場合は、データラッチ回路101から出力された、PCカードATAレジスタのインデックス化された情報を、有効アドレスに変換し、アドレス出力回路104に引き渡す。PCカードATAレジスタのインデックス化されたテーブルとテーブルに割当てられた有効アドレスは、(表2)の通りとなる。
【0051】
一方、CPU200がアトリビュートメモリアクセスを行う場合は、1回目のアクセスでは、何も行わず、2回目のアクセスで出力された有効アドレスをそのままアドレス出力回路104へ出力する。
【0052】
次に、図2のアドレス出力回路104は、アクセス判定回路102から出力される出力イネーブル信号をもとに、アドレス変換回路103で出力された有効アドレスを各スロット、スロット1(300)、スロット2(400)、スロット3(500)、スロット4(600)に出力する。アクセス判定回路102から出力される出力イネーブル信号が「0」のとき、アドレス出力回路104は出力を行わず、出力イネーブル信号が「1」のときに、アドレス変換回路103から出力される有効アドレスを出力する。
【0053】
次に、図2の制御信号生成回路105はCPU200が、PCMCIA規格またはCFA規格に準拠した制御信号を出力する場合、制御信号生成回路105の設定ピンを設定することによりCPU200からの制御信号をそのまま制御信号出力回路106へ引き渡す。すなわち、CPU200がPCMCIA規格またはCFA規格に準拠した制御信号を出力する、すなわちCPU200がPCMCIA規格またはCFA規格に準拠したカードまたはモジュールを制御できるコントローラを内蔵している場合は、制御信号生成回路105の設定ピンを「0」に設定することで、CPU200からの制御信号をそのまま制御信号出力回路106へ出力する。
【0054】
次に、図2の制御信号出力回路106は、制御信号生成回路105から出力された(表1)に示すCPU200から出力される制御信号112をアクセス判定回路102から出力される出力イネーブル信号と、どのスロットにアクセスするかの情報をもとに、各スロットの制御信号である制御信号1(115)、制御信号2(116)、制御信号3(117)、制御信号4(118)のいずれかに、CPU200から出力される制御信号を出力する。アドレス出力回路104と同様、アクセス判定回路102から出力される出力イネーブル信号が「0」のとき、制御信号出力回路105は出力を行わず、出力イネーブル信号が「1」のときに、制御信号出力回路106は、該当するスロットに、制御信号を出力する。
【0055】
次に、図2のステータス出力回107は、各スロットから出力されるステータス信号1(119)、ステータス信号2(120)、ステータス信号3(121)、ステータス信号4(122)を、アクセス判定回路102から出力される出力イネーブル信号と、どのスロットにアクセスするかの情報をもとに、該当するスロットのステータス信号をCPU200のステータス信号へ出力する。アドレス出力回路104、制御信号出力回路105と同様、アクセス判定回路102から出力される出力イネーブル信号が「0」のとき、ステータス出力回路107は、各スロットからのステータス信号を入力せず、出力イネーブル信号が「1」のときは、各スロットからのステータス信号を入力し、CPU200のステータス信号へ出力する。
【0056】
このようにして、本発明のPCカード拡張回路100は、前述した処理を実行することで、情報処理端末に搭載されているCPU200がPCMCIA規格またはCFA規格に準拠したカードあるいはモジュールを制御できるコントローラを有する場合、1スロット分の制御信号で複数(最大4スロット)のカード、またはモジュールが制御できるため、CPU200のアドレス空間の割り当てを行わずにPCカードまたはCFカードあるいはPCMCIA規格またはCFA規格に準拠したモジュールを拡張して使用することができ、CPU200の資源を有効に使用することができる。
【0057】
(第2の具体例)
図3は、本発明に係わるPCカード拡張回路の第2の具体例による構成を示すブロック図である。
【0058】
図3には、PCMCIA規格またはCFA規格に準拠したカードまたはモジュールを制御できるコントローラを内蔵していないCPU200において、1つの周辺回路の制御信号112で4スロット接続された上記カードまたはモジュールを制御するためのPCカード拡張回路100が示されている。
【0059】
本発明のPCカード拡張回路100は、CPU200から出力されるアドレスバス111と、CPU200から出力される制御信号112と、CPU200へ出力される制御信号113と、アドレス信号の保持回路となるデータラッチ回路101と、どのスロットにアクセスするかを判別するアクセス判定回路102と、データラッチ回路101の値からPCMCIA規格またはCFA規格に準拠したレジスタアクセスを行うための有効アドレスを生成するアドレス変換回路103と、アドレス変換回路103で生成された有効アドレスを出力する、アドレス出力回路104と、CPU200から出力された制御信号112がPCMCIA規格またはCFA規格に準拠したものかを判別し、PCMCIA規格またはCFA規格に準拠したものであれば、そのまま出力し、PCMCIA規格またはCFA規格に準拠しない制御信号であれば、その制御信号から、PCMCIA規格またはCFA規格に準拠した制御信号を生成し出力する制御信号生成回路105と、アクセス判定回路102で判定されたスロットにスロット制御信号1(115),制御信号2(116),制御信号3(117),制御信号4(118)として出力する制御信号出力回路106と、スロット1(300)、スロット2(400)、スロット3(500)、スロット4(600)それぞれかから出力されるステータス信号1(119),ステータス信号2(120)、ステータス信号3(121)、ステータス信号4(122)を、アクセス判定回路102で判定されたスロットの制御信号のみを選択し、CPU200へ出力するステータス信号出力回路107を有する。
【0060】
図3におけるアドレスバス111はCPU200が持つアドレスバスの下位10ビットが割り当てられる。本発明のPCカード拡張回路100では、このアドレスバス111に一定の決まりを持たせる。この一定の決まり(フォーマット)は、前述の図4の通りとなる。
【0061】
図4に示す通り、下位2ビットがどのスロットにアクセスするかを示すビットであり、このビットの割り当ては次のようになる。
アドレス(1)、アドレス(0) 該当スロット
0 0 スロット1(300)
0 1 スロット2(400)
1 0 スロット3(500)
1 1 スロット4(600)
次に、図4より下位3ビット目は、CPU200が各スロットに接続されたカードまたはモジュールの前記アトリビュートメモリ領域または、コモンメモリ領域のどちらにアクセスするのかを示す。即ち、このビットが「0」の場合は、コモンメモリ領域を、また「1」の場合はアトリビュートメモリ領域にアクセスすることを示す。
【0062】
ここで上記3ビット目が「0」、のときは、図3の上位8ビットは全て「0」とする。
【0063】
これは、PCMCIA規格及びCFA規格に準拠したカード、及びモジュールのアトリビュート領域は000h〜3FFh即ち、9ビットのアドレスが必要となり、上記のビットの割り当てでは、有効なアドレスを指定することができない。よってアドレスバス(111)は、アトリビュート領域にアクセスする際、まず初めにどのスロットにアクセスするかという情報と、アトリビュートアトリビュート領域にアクセスするという情報のみを出力し、次に有効なアドレス値を出力しなければならない。よってCPU200は、アトリビュート領域にアクセスする際、実際には2度のアクセスを行わなければならないが、このアトリビュート領域へのアクセスは、スロットに接続される上記カードまたはモジュールの初期設定時のみアクセスし、常時アクセスするものではないため、処理速度の低下といった大きな影響はほとんどない。
【0064】
次に上記3ビット目が「1」、ときは、図4の上位8ビットには、PCカードATAレジスタのインデックス化されたテーブル番号を示す。PCカードATAレジスタのインデックス化されたテーブルとテーブルに割当てられた有効アドレスは前記表2の通りとなる。
【0065】
図3のデータラッチ回路101は、図4の下位2ビットと下位3ビット目の信号、計3ビットをアクセス判定回路102に引き渡す。また、残りの8ビットをアドレス変換回路103へ引き渡す。ただし、CPU200がアトリビュートメモリアクセスを行う場合は、図4の下位2ビットと下位3ビット目の信号、計3ビットをアクセス判定回路102に引き渡すが、残りの8ビットはアドレス変換に引き渡さず、次の2回目のアクセスで、11ビットの信号すべてを、アドレス出力回路104に引き渡す。
【0066】
図3のアクセス判定回路102は、データラッチ回路101から出力された3ビットの信号、すなわちどのスロットにアクセスするかを示す2ビットの信号と、CPU200がアトリビュートメモリアクセスを行うかコモンメモリアクセスを行うかを示す1ビットの信号を入力し、アドレス出力回路104、制御信号出力回路106、ステータス信号出力回路107に対して、出力を許可する出力イネーブル信号と、制御信号出力回路106、ステータス信号出力回路107にどのスロットに出力するかの情報を引き渡す。
【0067】
CPU200がアトリビュートメモリアクセスを行う場合、アドレス判定回路102は、1回目のアクセスでどのスロットにアクセスするかという情報のみ保持し、アドレス出力回路104、制御信号出力回路106、ステータス信号出力回路107に対して出力イネーブル信号を出力しない。
【0068】
次に2回目のアクセスで、前記保持しておいた情報とアドレス出力回路104、制御信号出力回路106、ステータス信号出力回路107に対して、出力イネーブル信号を出力する。
【0069】
次に、図3のアドレス変換回路103では、CPU200がコモンメモリアクセスを行う場合は、データラッチ回路101から出力された、PCカードATAレジスタのインデックス化された情報を、有効アドレスに変換し、アドレス出力回路104に引き渡す。PCカードATAレジスタのインデックス化されたテーブルとテーブルに割当てられた有効アドレスは前述の(表2)の通りとなる。
【0070】
一方、CPU200がアトリビュートメモリアクセスを行う場合は、1回目のアクセスでは、何も行わず、2回目のアクセスで出力された有効アドレスをそのままアドレス出力回路104へ出力する。
【0071】
次に、図3のアドレス出力回路104は、アクセス判定回路102から出力される出力イネーブル信号をもとに、アドレス変換回路103で出力された有効アドレスを各スロット、スロット1(300)、スロット2(400)、スロット3(500)、スロット4(600)に出力する。アクセス判定回路102から出力される出力イネーブル信号が「0」のとき、アドレス出力回路104は出力を行わず、出力イネーブル信号が「1」のときに、アドレス変換回路103から出力される有効アドレスを出力する。
【0072】
次に図3の制御信号生成回路105は、CPU200から出力される制御信号からPCMCIA規格またはCFA規格に準拠した制御信号を生成する。制御信号生成の設定ピンを「1」に設定することで、CPU200からの制御信号より、PCMCIA規格及びCFA規格に準拠した制御信号を生成し、制御信号出力回路106へ出力する。
【0073】
次に、図3の制御信号出力回路106は、制御信号生成回路105で生成された制御信号をアクセス判定回路102から出力される出力イネーブル信号と、どのスロットにアクセスするかの情報をもとに、各スロットの制御信号である制御信号1(115)、制御信号2(116)、制御信号3(117)、制御信号4(118)のいずれかに出力する。アドレス出力回路104と同様、アクセス判定回路102から出力される出力イネーブル信号が「0」のとき、制御信号出力回路106は出力を行わず、出力イネーブル信号が「1」のときに、制御信号出力回路106は、該当するスロットに、制御信号を出力する。
【0074】
次に、図3のステータス出力回路107は、各スロットから出力されるステータス信号1(119)、ステータス信号2(120)、ステータス信号3(121)、ステータス信号4(122)を、アクセス判定回路102から出力される出力イネーブル信号と、どのスロットにアクセスするかの情報をもとに、該当するスロットのステータス信号をCPU200のステータス信号へ出力する。アドレス出力回路104、制御信号出力回路106と同様、アクセス判定回路102から出力される出力イネーブル信号が「0」のとき、ステータス出力回路107は、各スロットからのステータス信号を入力せず、出力イネーブル信号が「1」のときは、各スロットからのステータス信号を入力し、CPU200のステータス信号へ出力する。
【0075】
このようにして、本発明のPCカード拡張回路100は、前述した処理を実行することで、情報処理端末に搭載されているCPU200がPCMCIA規格またはCFA規格に準拠したカードあるいはモジュールを制御できるコントローラを有しない場合でも、1つ周辺回路の制御信号で複数(最大4スロット)のカードまたはモジュールが制御できるため、CPU200のI/Oの割り当てを行わずにPCカードまたはCFカードあるいはPCMCIA規格またはCFA規格に準拠したモジュールを拡張して使用することができ、CPU200の資源を有効に使用することができる。
【0076】
なお、上記の第1の具体例及び第2の具体例では、本発明のPCカード拡張回路に4個のPCMCIA規格またはCFA規格に準拠したカード及びモジュールが接続されていることを前提としたが、前記のカード及びモジュールが2個または3個でも問題なく制御することができる。また本発明のPCカード拡張回路は接続するCPUにPCMCIA規格及びCFA規格に準拠したカードまたはモジュールを制御できるコントローラを内蔵していない場合でかつ上記カード及びモジュール1個しか接続しないシステムにも対応することができ、今後のスロット拡張にもCPUの資源を新たに使用、または割当てる必要もなく柔軟に対応することが可能となる。
【産業上の利用可能性】
【0077】
本発明にかかるインターフェース拡張回路は、今後更なる小型化・高性能化が必要とされる携帯端末機器においてだけでなく使用目的が異なるPCカード(あるいはモジュール)を複数同時に、カードを挿しかえることなく使用したいといった用途に適用できる。
【図面の簡単な説明】
【0078】
【図1】本発明の実施の形態によるPCカード拡張回路の構成を示すブロック図
【図2】同PCカード拡張回路の第1の具体例を示すブロック図
【図3】同PCカード拡張回路の第2の具体例を示すブロック図
【図4】同PCカード拡張回路のアドレス入力信号のフォーマットを示す図
【符号の説明】
【0079】
100 PCカード拡張回路
101 データラッチ回路
102 アクセス判定回路
103 アドレス変換回路
104 アドレス出力回路
105 制御信号生成回路
106 制御信号出力回路
107 ステータス信号出力回路
111 アドレスバス
112、113 制御信号
115〜118 スロット制御信号
119〜122 ステータス信号
200 CPU
210 データバス
300、400、500、6000 PCカードスロット

【特許請求の範囲】
【請求項1】
PCMCIA規格またはCFA規格に準拠したカードまたはモジュールを制御するコントローラを含むCPUと接続され、1スロット分の制御信号で複数のスロットを制御するインターフェース拡張回路であって、
前記CPUからのアドレス信号を保持する保持手段と、
前記保持手段の状態に基づきアクセスするスロットを判別する判別手段と、
前記保持手段から所定の規格に準拠したレジスタアドレスの有効アドレスを生成するアドレス生成手段と、
前記有効アドレスを各スロットのアドレスとして出力するアドレス出力手段と、
前記判別手段で判別されたスロットに前記CPUからの制御信号を出力する制御信号出力手段と、
前記判別手段で判別されたスロットから出力されるステータス信号を前記CPUに出力するステータス信号出力信号と、を備えるインターフェース拡張回路。
【請求項2】
CPUと接続され、PCMCIA規格またはCFA規格に準拠したカードまたはモジュールを周辺回路アクセス用の制御信号で、複数のスロットに装着された前記カードまたはモジュールを制御するインターフェース拡張回路であって、
前記CPUからのアドレス信号を保持する保持手段と、
前記保持手段の状態に基づきアクセスするスロットを判別する判別手段と、
前記保持手段から所定の規格に準拠したレジスタアドレスの有効アドレスを生成するアドレス生成手段と、
前記有効アドレスを各スロットのアドレスとして出力するアドレス出力手段と、
前記周辺回路アクセス用の制御信号から前記カードまたはモジュールを制御する制御信号を生成する制御信号生成手段と、
前記判別手段で判別されたスロットに前記制御信号生成手段からの制御信号を出力する制御信号出力手段と、
前記判別手段で判別されたスロットから出力されるステータス信号を前記CPUに出力するステータス信号出力信号と、を備えるインターフェース拡張回路。
【請求項3】
前記アドレス生成手段は、前記カードまたはモジュールの情報テーブルと、前記カードまたはモジュールの状態の設定および監視を行うコンフィギュレーションレジスタにアクセスするための第1のアドレス制御部と、前記カードまたはモジュールとデータの読み書きを行うためのATAレジスタにアクセスするための第2のアドレス制御部と、前記第1または第2のアドレス制御部のいずれかで前記有効アドレスを生成するかを選択する選択部とを有することを特徴とする請求項1または2記載のインターフェース拡張回路。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate