(57)【特許請求の範囲】
【請求項１】
基本バスからの信号に対して各々所定の機能を実行する複数のファンクション部と、前記基本バス部との間で入出力信号をインターフェースするインターフェース部を有するステートマシン部と、を備え、前記ステートマシン部は、前記ファンクション部ごとにそれぞれ対応して複数設けられ、前記各ステートマシン部は、その担当する各ファンクション部に対して前記基本バスとは異なる各々別のバスを介して接続され、前記複数のステートマシン部の各インターフェース部に基本バス部よりアドレスが与えられ、当該アドレスが対応するステートマシン部のみが動作を続け、他のステートマシン部は動作を終了することを特徴とするデータ処理装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は、例えばＬＡＮ機能とモデム機能といった複数のファンクション部を持つデータ処理装置に関する。
【０００２】
【従来の技術】
ＬＡＮ機能を実現するＬＡＮカード、或いはモデム機能を実現するモデムカードなどが知られている。そして、近年においては、複数の機能を備えるマルチファンクションデバイス（ＰＣカード）が提供されている。このマルチファンクションデバイスは、一つの機能を実行するファンクション部を複数備えるとともに、これら複数のファンクション部の状態を管理する一つのステートマシン部と、このステートマシン部をバスに接続するためのインターフェースとを備えて構成される。前記のステートマシン部は、同時に複数のファンクション部の状態を管理するのではなく、バスからの命令が或るファンクション部に対するものである場合、そのファンクション部についての状態管理を行うが、この状態管理中に前記バスから他のファンクション部に対する命令が来たとしても、この命令への対応は行うことができない（特開平７−３３４５６４号公報参照：ＩＰＣ  Ｇ０６Ｆ  １７／５０）。
【０００３】
また、規格が異なる複数のバス、例えば、ＰＣＩ（Peripheral Component Interconnect ）バスと第１カードバス及び第２カードバスとを接続するためのブリッジ回路を構成するマルチファンクションデバイスも考えられる。このマルチファンクションデバイス（ブリッジ回路）は、前記第１カードバスに接続される第１のファンクション部及び前記第２カードバスに接続される第２のファンクション部についての状態を管理する一つのステートマシン部を備えることになるが、かかるステートマシン部も、前述のＰＣカードにおけるステートマシン部と同様、複数のファンクション部の状態を同時に管理するものではない。
【０００４】
【発明が解決しようとする課題】
図４は、従来のマルチファンクションデバイスにおけるＰＣＩバスからカードバスへのディレイドトランザクション（Delayed Transaction ）によるバス間転送の一例を示した説明図である。この図において、ＦＲＡＭＥ＃は、それがＬｏｗのときにＰＣＩバスからアドレス（命令）が来ているということをデバイス側に知らせる信号（信号線）であり、ＩＲＤＹ＃は、アドレス（命令）を出したＰＣＩバス側においてデータの授受の準備ができているということをデバイス側に知らせるための信号（信号線）である。そして、ＤＥＶＳＥＬ＃は、前記アドレス（命令）に対してそれに対応するファンクション部が選択されたことをＰＣＩバス側に知らせる信号（信号線）であり、その際にＰＣＩバスに渡すべきデータの準備ができていなければ、ＴＲＤＹ＃はＨｉｇｈであり、ＳＴＯＰ＃はＬｏｗとなる。
【０００５】
ＰＣＩバス側からアドレス（Ａ１）が最初に来たときは、それに対するデータの準備はできていないので、ＴＲＤＹ＃はＨｉｇｈとなり、ＳＴＯＰ＃はＬｏｗとなるが、アドレス（Ａ１）の受付は行っており、これに対応するファンクション部によるデータの生成処理が開始される。そして、このデータ生成処理においてステートマシン部は前記ファンクション部に対して状態管理を実行することになる。ステートマシン部による前記ファンクション部に対する状態管理中においては、他のファンクション部に対する状態管理は行えないので、ＰＣＩバス側から他のアドレス（Ａ２）が来ても、その受付は行われないことになる。そして、前述のデータ生成処理でデータ（Ｄ１）の送出準備ができた後に２度目のアドレス（Ａ１）が来ると、ＴＲＤＹ＃はＬｏｗに、ＳＴＯＰ＃はＨｉｇｈになり、データ（Ｄ１）がＰＣＩバス側へと送出されることになる。また、前記ステートマシン部は前記ファンクション部に対する状態管理から開放されることになる。そして、この開放後に再び他のアドレス（Ａ２）を受けたときには、それに対するデータの準備はできていないから、このときに初めて他のアドレス（Ａ２）に対応するファンクション部によるデータの生成処理を開始することになる。
【０００６】
以上の説明から分かるように、ステートマシン部による或るファンクション部に対する状態管理中に他のアドレス（Ａ２）が来たとしても、これを受け付けることができず、これに対する処理は、再び他のアドレス（Ａ２）が来たときに初めて開始されることになる。つまり、ファンクション部が複数あるとしても、それを同時的に動作させることができないことになり、バス間或いはデバイス内でのデータ転送等が効率良く行われていないという問題点を有していた。
【０００７】
この発明は、上記の事情に鑑み、複数のファンクション部を同時的に動作させることを可能にして、バス間或いはデバイス内でのデータ転送等を効率良く行えるデータ処理装置を提供することを目的とする。
【０００８】
【課題を解決するための手段】
この発明のデータ処理装置は、上記の課題を解決するために、基本バスからの信号に対して各々所定の機能を実行する複数のファンクション部と、前記基本バス部との間で入出力信号をインターフェースするインターフェース部を有するステートマシン部と、を備え、前記ステートマシン部は、前記ファンクション部ごとにそれぞれ対応して複数設けられ、前記各ステートマシン部は、その担当する各ファンクション部に対して前記基本バスとは異なる各々別のバスを介して接続され、前記複数のステートマシン部の各インターフェース部に基本バス部よりアドレスが与えられ、当該アドレスが対応するステートマシン部のみが動作を続け、他のステートマシン部は動作を終了することを特徴とする。
【０００９】
上記の構成であれば、或るファンクション部によるデータ生成処理中、即ち、そのファンクション部に対応するステートマシン部の状態管理中に、バスを通じて別のファンクション部に対するアドレス（命令）が来た場合、当該別のファンクション部にはそれ用のステートマシン部が存在しており、且つ他のステートマシン部の従属を受けずに独立して動作するため、当該別のファンクション部によるデータの生成処理を行わせることが可能になる。つまり、複数のファンクション部を同時的に動作させることが可能になり、一つのファンクション部によるバスの独占を回避してデータ転送等を効率的に行うことができる。そして、上記した構成は、例えば、プライマリーバスと二つの別のセカンダリーバスとの間でデータ等の橋渡しを行うブリッジ回路として機能することになり、バス間でのデータ転送等の効率化が図れる。
【００１２】
【発明の実施の形態】
以下、この発明の実施の形態を図に基づいて説明する。
【００１３】
図１は、例えば、ＰＣカードとして構成されているマルチファンクションデバイス１を示したブロック図である。このマルチファンクションデバイス１は、ＰＣＩバス１０からの信号に対してそれぞれ所定の機能を実行するｎ個のファンクション部Ｆ（Ｆ-1，Ｆ-2，…，Ｆ-n）を備える。例えば、ファンクション部Ｆ-1はモデム機能を実行し、ファンクション部Ｆ-2はＬＡＮ機能を実行し、ファンクション部Ｆ-nはＳＣＳＩ機能を実行することができる。各ファンクション部Ｆにはステートマシン部Ｓが設けられている。図１の例では、前記のファンクション部Ｆ-1にはステートマシン部Ｓ-1が、ファンクション部Ｆ-2にはステートマシン部Ｓ-2が、ファンクション部Ｆ-nにはステートマシン部Ｓ-nが、という具合に接続されている。これらステートマシン部Ｓ-1，Ｓ-2，…，Ｓ-nは、互いに独立して動作することができる。また、各ステートマシン部Ｓには、ＰＣＩバス１０との間で入出力信号をインターフェースするインターフェース部（図示せず）が設けられている。なお、ＰＣＩバス１０とマルチファンクションデバイス１とを繋ぐ線は、一つのファンクション命令分（例えば、３２本）しかなく、マルチでも非マルチでもハード的には変わらない。
【００１４】
図１の構成において、例えば、ファンクション部Ｆ-1によるデータの生成処理中、即ち、そのファンクション部に対応するステートマシン部Ｓ-1の状態管理中にＰＣＩバス１０を通じてファンクション部Ｆ-2に対するアドレス（命令）が来た場合、当該ファンクション部Ｆ-2にはそれ用のステートマシン部Ｓ-2が存在しており、このステートマシン部Ｓ-2は他のステートマシン部の従属を受けずに独立して動作するため、ファンクション部Ｆ-2によるデータの生成処理も同時的に行わせることが可能になる。つまり、複数のファンクション部を同時的に動作させることが可能になり、一つのファンクション部によるバスの独占を回避してデータ転送等を効率的に行うことができる。また、各ステートマシン部Ｓとしては既存のステートマシンを用いることができる。
【００１５】
図２は、コンピュータ装置内の規格の異なる複数のバスを接続するブリッジ回路を成すマルチファンクションデバイス２を示したブロック図である。つまり、このマルチファンクションデバイス２は、ＰＣＩバス１１と第１カードバス１２及び第２カードバス１３との間でのデータ等の橋渡しを行うブリッジ回路部分２ａに、各々がファンクション部である二つのカードバスデバイスＤ-1及びカードバスデバイスＤ-2を、第１カードバス１２と第２カードバス１３を介して接続させたものとして把握できる。そして、前記ブリッジ回路部分２ａは、マスターブロック２ｂとスレーブブロック２ｃとから成り、前記スレーブブロック２ｃ内において、前記のカードバスデバイスＤ-1用のステートマシン部ｓ-1、及びカードバスデバイスＤ-2用のステートマシン部ｓ-2を備えている。これらステートマシン部ｓ-1，ｓ-2は、互いに独立して動作することができる。なお、前記のマスターブロック２ｂは、カードバスデバイスから受け取った信号（例えば、後述するＴＲＤＹ＃）をＰＣＩバス１１に送出するといった処理を行う。
【００１６】
ここで、ＰＣＩバス１１に接続されているＰＣＩデバイス１５から第１カードバス１２に対してデータ転送が行われる場合について説明すると、ＰＣＩデバイス１５からＰＣＩバス１１を経由したデータは、ステートマシン部ｓ-1及びステートマシン部ｓ-2の双方に入力される。両ステートマシン部ｓ-1，ｓ-2がそれぞれアドレスのデコード等を行うことによって、当該アドレスが第１カードバス１２に対する指令であることを検出すると、ステートマシン部ｓ-1のみが動作を続け、ステートマシン部ｓ-2は動作を終了する。そして、ステートマシン部ｓ-1は入力されたデータを第１カードバス１２に転送する。なお、カードデバイス（カードバス）側からのデータ転送については説明を省略するが、上述した処理と同様の処理によって行われることになる。
【００１７】
次に、図３を用い、前記図２の構成のマルチファンクションデバイス２におけるＰＣＩバス１１からカードバス１２，１３へのディレイドトランザクション（Delayed Transaction ）によるバス間転送を説明する。この図において、ＦＲＡＭＥ＃は、それがＬｏｗのときにＰＣＩバス１１からアドレス（命令）が来ているということをデバイス側に知らせる信号（信号線）であり、ＩＲＤＹ＃は、アドレス（命令）を出したＰＣＩバス１１側においてデータの受け取り準備ができているということをデバイス側（ブリッジ回路部分２ａ側）に知らせるための信号（信号線）である。そして、ＤＥＶＳＥＬ＃は、前記アドレス（命令）に対してそれに対応するファンクション部（カードバスデバイスＤ-1，Ｄ-2）が選択されたことをＰＣＩバス１１側に知らせる信号（信号線）であり、その際にＰＣＩバス１１に渡すべきデータの準備ができていなければ、ＴＲＤＹ＃はＨｉｇｈであり、ＳＴＯＰ＃はＬｏｗとなる。
【００１８】
ＰＣＩバス１１側から前記カードバスデバイスＤ-1に対するアドレス（Ａ１）が最初に来たときは、それに対するデータの準備はできていないので、ＴＲＤＹ＃はＨｉｇｈとなり、ＳＴＯＰ＃はＬｏｗとなるが、アドレス（Ａ１）の受付は行っており、これに対応するカードバスデバイスＤ-1によるデータの生成処理が開始される。そして、このデータ生成処理においてステートマシン部ｓ-1によるカードバスデバイスＤ-1の状態管理が実行されることになる。ステートマシン部ｓ-1がカードバスデバイスＤ-1に対する状態管理を実行している場合でも、ステートマシン部ｓ-2によるカードバスデバイスＤ-2の状態管理は可能であるので、ＰＣＩバス１１側からカードバスデバイスＤ-2に対するアドレス（Ａ２）が来た場合、その受付を行うことができる。即ち、最初に来たアドレス（Ａ２）に対するデータの準備はできていないので、ＴＲＤＹ＃はＨｉｇｈとなり、ＳＴＯＰ＃はＬｏｗとなるものの、アドレス（Ａ２）の受付は行い、これに対応するカードバスデバイスＤ-2によるデータの生成処理を開始することになる。そして、前述のカードバスデバイスＤ-1によるデータ生成処理でデータ（Ｄ１）の送出準備ができた後に２度目のアドレス（Ａ１）が来ると、ＴＲＤＹ＃はＬｏｗに、ＳＴＯＰ＃はＨｉｇｈになり、データ（Ｄ１）がＰＣＩバス１１側へと送出される。同様に、前述のカードバスデバイスＤ-2によるデータ生成処理でデータ（Ｄ２）の送出準備ができた後に２度目のアドレス（Ａ２）が来ると、ＴＲＤＹ＃はＬｏｗに、ＳＴＯＰ＃はＨｉｇｈになり、データ（Ｄ２）がＰＣＩバス１１側へと送出されることになる。即ち、独立して各ファンクション部を管理するステートマシン部ｓ-1，ｓ-2を有したことで、カードバスデバイスＤ-1及びカードバスデバイスＤ-2は独自にその状態を管理されて動作することが可能になったため、一つのファンクション部によるバスの独占を排除し、バス間におけるデータ転送等を効率良く行うことができる。
【００１９】
なお、上記の説明では、ＰＣＩバスとカードバスとをブリッジする例を示したが、これに限らず、ＰＣＩバスとＰＣＩバスとを接続するブリッジ回路、カードバスとカードバスとを接続するブリッジ回路、或いは、ＰＣＩバスとＩＳＡ（Industory Standerd Architecture ）バスとを接続するブリッジ回路、或いは、これら以外のバスを接続するブリッジ回路としてもよいものである。なお、ＰＣＩ−ＰＣＩブリッジ回路は、ＰＣＩバスに接続するＬＳＩや拡張スロットを増やす場合などに用いられる。
【００２０】
また、例えば、第１のＰＣＩバスに第２のＰＣＩバス及び他のバスがこの発明のマルチファンクションデバイスであるブリッジ回路によって接続され、更に、前記第２のＰＣＩバスにＩＳＡバス及び他のバスが同様にこの発明のマルチファンクションデバイスであるブリッジ回路で接続される形態も考えられる。このような形態は、マルチファンクションデバイスを構成している幾つかのファンクション部のうちの少なくとも一つが、マルチファンクションデバイス（即ち、バスからの信号に対して各々所定の機能を実行する複数のファンクション部と、前記の各ファンクション部ごとに設けられ、独立して動作する複数のステートマシン部とを備える）であるものに相当することになる。そして、このような構成もこの発明に含まれるものである。
【００２１】
【発明の効果】
以上説明したように、この発明によれば、複数のファンクション部を同時的に動作させることが可能になり、一つのファンクション部によるバスの独占を排除してバス間或いはファンクションデバイス内でのデータ転送等を効率良く行うことができるという効果を奏する。
【図面の簡単な説明】
【図１】この発明の実施の形態のデータ処理装置（マルチファンクションデバイス）を示したブロック図である。
【図２】この発明の実施の形態のデータ処理装置（ブリッジ回路タイプのマルチファンクションデバイス）を示したブロック図である。
【図３】図２の構成において、ＰＣＩバスからカードバスへのディレイドトランザクションによるバス間転送を説明するタイミングチャートである。
【図４】従来の構成において、ＰＣＩバスからカードバスへのディレイドトランザクションによるバス間転送を説明するタイミングチャートである。
【符号の説明】
１    マルチファンクションデバイス
２    マルチファンクションデバイス
２ａ  ブリッジ回路部
２ｂ  マスターブロック
２ｃ  スレーブブロック
１０  ＰＣＩバス
１１  ＰＣＩバス
１２  第１カードバス
１３  第２カードバス
１５  ＰＣＩデバイス
Ｓ    ステートマシン部
ｓ    ステートマシン部
Ｆ    ファンクション部
【図１】
0004236729.tif 000002
【図２】
0004236729.tif 000003
【図３】
0004236729.tif 000004
【図４】
0004236729.tif 000005