(57)【特許請求の範囲】
【請求項１】
トリガ割り込み信号を出力してそれぞれの機能の実行を要求する複数の機能コントローラを備え、ホストと接続し、上記ホストへは単一のエッジトリガ割り込み信号で割り込み処理の実行を要求するマルチ機能カードにおいて、
上記複数の機能コントローラからのトリガ割り込み信号を入力し、上記機能コントローラの少なくとも１個が割り込みを要求している期間、合成割り込み信号を出力する割り込み要求合成手段、および上記合成割り込み信号を入力し、上記機能コントローラから要求された割り込み処理が終了し次回割り込み要求の受け入れが可能となったタイミングで上記合成割り込み信号にエッジを生成して上記ホストへ出力するエッジ生成手段を備え、
更に、上記各機能コントローラがエッジトリガ割り込み信号を出力する場合、
上記割り込み要求合成手段は、上記各機能コントローラからのエッジトリガ割り込み信号をラッチする複数のラッチ手段と、上記各機能コントローラからの割り込み要求がホストで認識されたタイミングで当該機能コントローラに係るラッチ手段をリセットするリセット手段と、上記複数のラッチ手段からの信号を入力して合成割り込み信号を出力する論理和手段とからなることを特徴とするマルチ機能カード。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は、コンピュータシステムの機能を拡張するための拡張用カードにおいて、限られたリソース内で、複数機能を実現するためのマルチ機能カードに関するものである。
【０００２】
【従来の技術】
図２２は、例えば、特開平９−２１２４４７号公報に示された従来のマルチ機能カードを示す構成図であり、図において、１２は、ホストコンピュータ、１０１、１０２は、入出力ソース、１０３は、どの入出力機能が割込み信号を送ったのかを表示する割り込み状態レジスタ、１０４は、前記ホストコンピュータ１２への割込み要求信号の生成を制御する割り込み制御回路、１２１は、ＰＣＭＣＩＡアダプタ、１２２は、インテル社によって製造された８２５９割り込みコントローラのようなプロセッサ割り込み制御回路である。
【０００３】
次に動作について説明する。２つの入出力ソース１０１、及び、１０２は、プロセッサに対して同じ割り込み線（ＩＲＥＱ）を共有している。このように、単一の割り込み信号でホストコンピュータ１２へ割り込み要求をする方式を採用するのは、ホストの割り込みコントローラはその入力ピン数が限られており（例えば、計１６本）、拡張用のマルチ機能カード用としては、１本のみの入力ピンで処理することが要請されるケースが多いからである。
入出力ソース１０１、及び、１０２の両方から割り込み要求が発生した場合、ホストＣＰＵ上のＳ／Ｗは、優先順位の高い入出力ソースに対応した処理を実行する。優先順位の低い入出力ソースに対応した処理を実行するために、遅延ブロック１０７によって一定の時間経過後に、第二の割り込みを発生するための信号（ＤＬＹ１）が生成され、ＡＮＤ回路１０８、及び、割り込み制御回路（ＩＣＬ）１０４を経由してホストＣＰＵに割り込みとして通知される。ホストＣＰＵ上のＳ／Ｗは、第二の割り込みを受けて、優先順位の低い入出力ソースに対応した処理を実行する。
【０００４】
【発明が解決しようとする課題】
従来のマルチ機能カードは以上のように、複数機能で、特にエッジトリガモードの割り込みを共有するためにＨ／Ｗで固定値の信号遅延時間を発生させる遅延ブロック１０７を採用している。そして、この遅延ブロック１０７で設定する遅延時間は、カード上の割り込みをクリアする命令と、プロセッサ割り込み制御回路１２２をクリアするＥＯＩ命令の時間より大きくなるよう設計する必要があるため、ホストＣＰＵの処理性能に依存して、遅延時間を変更する必要がある。あるいは、ホストＣＰＵの負荷率の上昇により、Ｓ／Ｗによる割り込み処理が前記遅延ブロックによる信号遅延時間内に終了できない場合などに割り込み処理を正常に終了させることができなくなるなどの問題点があった。
【０００５】
この発明は上記のような課題を解決するためになされたものであり、ホストＣＰＵの処理性能、及び、ホストＣＰＵの負荷率に依存せずに、割り込みの共有等を実現したマルチ機能カードを得ることを目的とする。
また、割り込み信号のトリガモードの種別にかかわらず適用が可能なマルチ機能カードを得ることを目的とする。
更に、割り込み要求に係るソフトウェア処理の負担を軽減して高速処理を可能とするマルチ機能カードを得ることを目的とする。
【０００６】
【課題を解決するための手段】
この発明に係るマルチ機能カードは、トリガ割り込み信号を出力してそれぞれの機能の実行を要求する複数の機能コントローラを備え、ホストと接続し、上記ホストへは単一のエッジトリガ割り込み信号で割り込み処理の実行を要求するマルチ機能カードにおいて、
上記複数の機能コントローラからのトリガ割り込み信号を入力し、上記機能コントローラの少なくとも１個が割り込みを要求している期間、合成割り込み信号を出力する割り込み要求合成手段、および上記合成割り込み信号を入力し、上記機能コントローラから要求された割り込み処理が終了し次回割り込み要求の受け入れが可能となったタイミングで上記合成割り込み信号にエッジを生成して上記ホストへ出力するエッジ生成手段を備え、
更に、その各機能コントローラがエッジトリガ割り込み信号を出力する場合、
上記割り込み要求合成手段は、上記各機能コントローラからのエッジトリガ割り込み信号をラッチする複数のラッチ手段と、上記各機能コントローラからの割り込み要求がホストで認識されたタイミングで当該機能コントローラに係るラッチ手段をリセットするリセット手段と、上記複数のラッチ手段からの信号を入力して合成割り込み信号を出力する論理和手段とからなるものである。
【０００７】
【発明の実施の形態】
実施の形態１．
以下、この発明の実施の形態１を図に基づいて説明する。図１において、２１はマルチ機能の第一の機能（機能１）を実現するためのコントローラ、２２はマルチ機能の第二の機能（機能２）を実現するためのコントローラ、２３はマルチ機能の第ｎの機能（機能ｎ）を実現するためのコントローラ、２４は機能１の割り込み要因を保持するためのフリップフロップ、２５は機能２の割り込み要因を保持するためのラッチ手段であるフリップフロップ、２６は機能ｎの割り込み要因を保持するためのフリップフロップ、２７は各機能コントローラが要求している割り込みの有無の状態を保持し、割り込み要因を読み出し可能とする要因レジスタ、２８は割り込み処理を行うドライバーＳ／Ｗによる処理が終了したことをマルチ機能カードに通知するための割り込み終了レジスタ、２９は割り込み要因を認識したドライバーＳ／Ｗによって割り込み要因をリセットするための要因リセットレジスタである。
また、１はフリップフロップ２４等とともに割り込み要求合成手段を構成する論理和手段としての論理和（ＯＲ）回路、２は割り込み終了レジスタ２８とともにエッジ生成手段を構成する論理積（ＡＮＤ）回路である。なお、第三から第ｎ−１の機能を実現するための回路は図では省略している。
【０００８】
また、図２は、マルチ機能カードが実装されるパーソナルコンピュータシステムのブロック図であり、３０はホストであるパーソナルコンピュータ本体、３１はマルチ機能カード、３２はその他のカードであり、マルチ機能カード３１はパーソナルコンピュータ本体３０のＩＳＡバスに接続し、マルチ機能カード３１にマウス、ネットワーク、ＨＤＤ等各機能を有する機器を接続する例を示している。
【０００９】
また、図３は、マルチ機能カード３１の内部ブロック図であり、３３は、パーソナルコンピュータ本体３０等からマルチ機能カード３１上のレジスタ等へのアクセスを行うためのバスＩ／Ｆコントローラである。
【００１０】
また、図４は、マルチ機能カード３１からの割り込み要求を処理するためのＳ／Ｗ構成を示したものであり、３４は全体を管理するオペレーティングシステム、３５は機能１からの割り込み要求を処理するための機能１用ドライバー、３６は機能２からの割り込みを処理するための機能２用ドライバー、３７は機能ｎからの割り込みを処理するための機能ｎ用ドライバーである。なお、機能３から機能ｎ-1までのコントローラからの割り込み処理を行うためのドライバーに関しては省略している。
【００１１】
また、図５は、マルチ機能カード３１からの割り込み要求が発生した際に、割り込み処理を行うドライバーＳ／Ｗの処理フローを示したフローチャートである。
【００１２】
また、図６は、マルチ機能カード３１からの割り込み要求が発生した際のマルチ機能カード３１上の各信号のタイミングを示したタイミングチャートである。
【００１３】
次に動作について説明する。
機能１から機能ｎの中の少なくとも１つのコントローラが処理を要求する場合、ＩＮＴ１からＩＮＴｎのいずれかの信号を使用してパーソナルコンピュータ本体３０に割り込みＩＲＱとして通知する。各コントローラ２１、２２、２３が割り込み処理を要求する場合には、ＩＮＴ１からＩＮＴｎのいずれかの信号をＬＯＷレベルからＨＩＧＨレベルに移行させる所謂エッジトリガモードで割り込み処理を要求する。これらの要求はフリップフロップ２４、２５、２６にてラッチされ、前記フリップフロップ２４、２５、２６の後段に配置された論理和（ＯＲ）回路１、論理積（ＡＮＤ）回路２を経由してパーソナルコンピュータ本体３０にＩＲＱ信号として割り込みが通知される。
【００１４】
また、前記フリップフロップ２４、２５、２６の出力は、どのコントローラ２１、２２、２３が割り込み処理を要求しているのかを識別するための要因レジスタ２７として、パーソナルコンピュータ本体３０から読み出し可能となっており、ドライバーＳ／Ｗによって要因レジスタ２７を読み出すことにより、割り込み処理を要求している機能に対応したドライバーＳ／Ｗのみが処理を行うように構成する。また、前記フリップフロップ２４、２５、２６は、要因リセットレジスタ２９を使用してリセット可能であり、ドライバーＳ／Ｗによる割り込み処理が終了した際に、対応するフリップフロップはドライバーＳ／Ｗによりリセットされる。また、割り込み終了レジスタ２８は、複数のコントローラが割り込み処理を要求している場合においても、パーソナルコンピュータ本体３０への割り込み信号（ＩＲＱ）を１度のみでなく、必要な回数分の割り込みを発生できるようにするためのレジスタである。
【００１５】
次に具体的な動作について説明する。図６は、まず、機能１、例えば、マウスコントローラ２１が割り込み処理を要求し、続いて、機能１の割り込み処理が終了する前に、機能２、例えば、ＨＤＤのコントローラ２２が割り込み処理を要求した場合のタイミングチャートを示している。
【００１６】
機能１コントローラ２１が割り込み処理を要求すると、ＩＮＴ１信号をＬＯＷからＨＩＧＨに変化させる。これは、マウス（機能１）からマウスコントローラがデータを受信したタイミングである。フリップフロップ２４は、ＩＮＴ１信号のＬＯＷからＨＩＧＨへの立ち上がりエッジを検出して、出力信号であるSTATUS1信号をＨＩＧＨに変化させる。STATUS1信号は、論理和（ＯＲ）回路１、論理積（ＡＮＤ）回路２に入力され、パーソナルコンピュータ本体３０にエッジトリガ信号として通知される割り込み信号ＩＲＱをＬＯＷからＨＩＧＨに変化させる。パーソナルコンピュータ本体３０には、ＩＲＱ信号のＬＯＷからＨＩＧＨへの移行がエッジトリガの割り込みとして通知される。
【００１７】
パーソナルコンピュータ本体３０上では、機能１用のドライバーＳ／Ｗが起動され対応した割り込み処理が実行される。機能１の割り込み処理中に、続いて、機能２コントローラ２２が割り込み処理を要求し、INT2信号をＬＯＷからＨＩＧＨに変化させるとSTATUS2信号は、ＬＯＷからＨＩＧＨに変化するが、パーソナルコンピュータ本体３０に通知される割り込み信号ＩＲＱに関しては、この時点では、ＬＯＷからＨＩＧＨへの変化が起こらず割り込みとしては通知されない。連続して発生した割り込み要求をもれなくパーソナルコンピュータ本体３０にエッジトリガ割り込みとして通知するために割り込み終了レジスタ２８を使用する。
【００１８】
機能１用ドライバーＳ／Ｗは、割り込み処理が終了した際に、割り込み終了レジスタ２８を使用してマルチ機能カード３１に割り込み処理が終了し、次の割り込みを発生させてもよいことを通知する。マルチ機能カード３１は、割り込み終了レジスタ２８へのアクセスがあった場合、即ち、ドライバーＳ／Ｗが割り込み終了レジスタ２８にWriteしたタイミングから、一定時間の間（時間に制限はない）、INTEND信号をＬＯＷレベルに保つように構成されており、図１に示す論理積（ＡＮＤ）回路２を使用して、割り込み信号ＩＲＱを一定時間ＬＯＷレベルとすることで、再度、割り込み信号ＩＲＱのＬＯＷからＨＩＧＨへのエッジを作り出すことで、二度目の割り込み要求を生成可能としている。
【００１９】
なお、Ｓ／Ｗの処理は以下の通りとなる。
マルチ機能カード３１からの前記割り込み信号ＩＲＱを受信したパーソナルコンピュータ本体３０のオペレーティングシステム３４は、図４、図５に示す通り、本マルチ機能カード３１に対応したドライバーＳ／Ｗを順に起動する。起動された各ドライバーＳ／Ｗは、要因レジスタ２７を読み出し、自ドライバーが処理すべき割り込みであれば、要因リセットレジスタ２９を使用して割り込み要因をリセットした後、処理すべき割り込み処理を実行即ち、機能コントローラ内に格納されたデータのRead等の処理を実行、更に、パーソナルコンピュータ本体３０上の割り込みコントローラのクリア処理を行うＥＯＩ命令を実行後、割り込み終了レジスタ２８を使用して割り込み処理の終了をマルチ機能カード３１に通知する。また、ドライバーＳ／Ｗは、割り込み要求が自ドライバーに対応するものであったことをオペレーティングシステム３４に通知し終了する。オペレーティングシステム３４は、割り込み処理が終了したと判断し、次のドライバーＳ／Ｗの起動は行わず、再度、割り込み待ちに移る。
【００２０】
要因レジスタ２７を読み出した結果、自ドライバーが処理すべき割り込みではない場合には、自ドライバーに対応した割り込みでない旨の通知をオペレーティングシステム３４に通知してドライバーＳ／Ｗの処理を終了する。オペレーティングシステム３４は、割り込み処理が終了していないと判断し、次のドライバーＳ／Ｗを起動する。以下、割り込みに対応したドライバーが起動され割り込み処理が終了するまでこれを繰り返す。
【００２１】
以上のように、この実施の形態１で示したマルチ機能カードでは、割り込み終了レジスタ２８を設け、ドライバーＳ／Ｗによる割り込み処理が終了し次回割り込み要求の受け入れが可能となったタイミングをドライバーＳ／Ｗからマルチ機能カードに通知し、そのタイミングで自動的に次のエッジトリガ割り込みを生成可能としたので、パーソナルコンピュータ本体側のホストＣＰＵの性能、または、ホストＣＰＵの負荷などによって割り込み通知が欠落することがなく、複数の機能コントローラから要求される割り込み要求を確実に１本のエッジトリガ割り込みにマージして通知することが可能となる。
【００２２】
実施の形態２．
次にこの発明の実施の形態２を図に基づいて説明する。図７は、本実施の形態２によるマルチ機能カードを示す回路図であり、相当部分には図１と同一符号を附してその説明を省略する。
【００２３】
なお、実施の形態１では、各機能コントローラ２１、２２、２３が出力する割り込み要求がエッジトリガである場合について述べたが、図７に示すように、各機能コントローラ２１、２２、２３が出力する割り込み信号がレベルトリガ信号であってもパーソナルコンピュータ本体３０にエッジトリガの割り込み信号ＩＲＱを供給することができる。
【００２４】
次に動作について説明する。
実施の形態１と同様に機能１コントローラ２１による割り込み要求に続き、機能１の割り込み処理が終了する前に機能２の割り込み要求が発生した場合を考える。各機能コントローラ２１、２２、２３は割り込みを要求する場合には、その処理が終了するまで、ＩＮＴ１からＩＮＴｎ信号のいずれかをＨＩＧＨレベルに固定する。したがって、まず、機能１コントローラ２１が割り込みを要求すると、ＩＮＴ１信号がＨＩＧＨに固定され、論理和（ＯＲ）回路１、論理積（ＡＮＤ）回路２を通して、パーソナルコンピュータ本体３０への割り込み信号ＩＲＱがＬＯＷからＨＩＧＨに変化し、エッジトリガ割り込みとして通知される。パーソナルコンピュータ本体３０は、実施の形態１と同様の手順でドライバーＳ／Ｗによる割り込み処理が行われる。ただし、フリップフロップ２４、２５、２６を削除したので、要因リセットレジスタ２９による要因のリセット処理は不要である。実施の形態１と同様に割り込み終了レジスタ２８を使用することにより、複数機能で１本のエッジトリガ割り込み信号ＩＲＱを共有することが可能である。
【００２５】
以上のように、この実施の形態２で示したマルチ機能カードでは、各機能コントローラ２１、２２、２３からの割り込み信号をフリップフロップ２４、２５、２６でラッチせず、直接、論理和（ＯＲ）回路１に入力し割り込み終了レジスタ２８への書き込みのタイミングでエッジトリガを生成するようにしたので、パーソナルコンピュータ本体側のホストＣＰＵの性能、または、ホストＣＰＵの負荷などによって割り込み通知が欠落することなく、レベルトリガ割り込み出力を持つ複数の機能コントローラからの割り込み要求を１本のエッジトリガ割り込みにマージして通知することが可能となる。
【００２６】
実施の形態３．
次にこの発明の実施の形態３を図に基づいて説明する。図８は、本実施の形態３によるマルチ機能カードを示すブロック図であり、相当部分には図１と同一符号を附してその説明を省略する。４０は、マルチ機能カード上に搭載されるマイクロプロセッサ（μＰ）、４１は、マルチ機能カード３１上の複数の機能コントローラ２１、２２、２３からの割り込み要求信号を受け付けて前記マイクロプロセッサ４０に通知するための割り込みコントローラ、４２は、パーソナルコンピュータ本体３０のホストＣＰＵにて実行される割り込み処理用のドライバーＳ／Ｗによる割り込み処理が終了したことをマルチ機能カード３１上のマイクロプロセッサ４０に通知するための割り込み処理終了レジスタ、４３は、マルチ機能カード３１上のマイクロプロセッサ４０とパーソナルコンピュータ本体３０上のホストＣＰＵとの間でデータをやり取りするためのデータ受け渡し用メモリ、４４は、マイクロプロセッサ４０により割り込みコントローラ４１からの割り込み要求が受け付けられ、パーソナルコンピュータ本体３０に割り込みを通知するための割り込み信号生成回路、４５は、前記マイクロプロセッサ４０上のＳ／Ｗを実行するためのＳ／Ｗ実行用メモリ、４６は、パーソナルコンピュータ本体３０上のホストＣＰＵ、４７は、ホストコンピュータ本体３０上の割り込みコントローラである８２５９チップ、４８は、ＰＣＩ-ＩＳＡブリッジなど、ホストコンピュータ本体３０上の前記ホストＣＰＵ４６、８２５９チップ４７を除く周辺回路である。
【００２７】
なお、実施の形態１、及び、実施の形態２では、各機能コントローラ２１、２２、２３が出力する割込み要求信号の種類が、レベルトリガモード、または、エッジトリガモードのいずれかに統一されている場合について述べたが、図８に示すように各機能コントローラ２１、２２、２３から出力される割込み信号を制御するための割り込みコントローラ４１と割り込みコントローラ４１が出力する割込み信号を受けて割り込みを処理するマイクロプロセッサ４０とマイクロプロセッサ４０にて処理された結果をパーソナルコンピュータ本体３０に通知するためのデータ受け渡し用メモリ４３とを設けたので、複数機能の割り込みをマルチ機能カード３１上に実装できることに加え、各機能コントローラ２１、２２、２３が出力する割込み信号のトリガモードが、レベルトリガモードであってもエッジトリガモードであっても、それらを自由に混在して構成させることが可能となる。
【００２８】
次に動作について説明する。
機能１から機能ｎの中の少なくとも１つのコントローラが処理を要求する場合、ＩＮＴ１からＩＮＴｎのいずれかの信号を使用して、マルチ機能カード３１上に実装された割り込みコントローラ４１（インテル社によって製造された８２５９割り込みコントローラのようなプロセッサ割り込み制御回路）に割込み要求を通知する。割り込みコントローラ４１に入力される割込み信号のモードは、プログラマブルであり、個別に設定することが可能である。割込み要求を受けた割り込みコントローラ４１は、マルチ機能カード３１上に搭載されたマイクロプロセッサ４０に対して割込み要求INTを発行する。マイクロプロセッサ４０とＳ／Ｗ実行用メモリ４５上では、割り込み処理専用のプログラムが実行されており、割り込みコントローラ４１からの割込み要求を受けて、機能コントローラからデータを読み出すなど、機能１コントローラ２１から機能ｎコントローラ２３に対応した処理を実行する。
【００２９】
以降の処理は、割り込み処理として、例えば、機能コントローラからデータを読み出す場合を例にとって説明する。前記の通り、割り込み要求に従って、対応する機能コントローラからデータを読み出したマイクロプロセッサ４０上の割り込み処理専用のプログラムは、引き続き、読み出したデータをデータ受け渡し用メモリ４３の予め決められた領域に格納する。続いて、割り込み処理が完了し、パーソナルコンピュータ本体３０に受け渡すためのデータと対応する機能番号とをデータ受け渡し用メモリ４３の所定の場所への格納が完了したことをパーソナルコンピュータ本体３０に通知するために、割り込み処理専用のプログラムは、割り込み信号生成回路４４に対して、パーソナルコンピュータ本体３０に割り込み要求を生成するように命令を発行する。割込み要求を生成するように命令された割込み信号生成回路４４は、パーソナルコンピュータのＩＳＡバスなどの割込み要求信号を使用して、パーソナルコンピュータ本体３０に通知する。
【００３０】
割り込み要求を受けたパーソナルコンピュータ本体のオペレーティングシステム３４は、マルチ機能カード用のドライバーＳ／Ｗを起動する。起動されたドライバーＳ／Ｗは、データ受け渡し用メモリ４３に書き込まれたデータと機能番号を読み出し、対応する処理を実行する。対応する処理の実行が終了し次回割り込み要求の受け入れが可能となると、ドライバーＳ／Ｗは、次の割り込みを発生させてよいことをマルチ機能カード３１上のマイクロプロセッサ４０に通知するために割り込み処理終了レジスタ４２に割り込み処理終了コードを書き込む。マイクロプロセッサ４０は、割り込み処理終了レジスタ４２を監視し、次の割り込み要求を出力できる状態になったことを確認した後で、次の割込み要求を同様の手順で発行する。
【００３１】
以上のように、この実施の形態３で示したマルチ機能カードでは、各機能コントローラ２１、２２、２３から出力される割込み要求信号を制御するための割り込みコントローラ４１と割り込みコントローラ４１が出力する割込み要求信号を受けて割り込みを処理するマイクロプロセッサ４０とマイクロプロセッサ４０にて処理された結果をパーソナルコンピュータ本体３０に通知するためのデータ受け渡し用メモリ４３とを設けたので、複数機能の割り込みをマルチ機能カード上に実装できることに加え、パーソナルコンピュータ本体３０では、ドライバーＳ／Ｗが読み出すべきコントローラのデータをデータ受け渡し用メモリ４３から直ちに入力することで割り込み要求処理が迅速に実行されるとともに、各機能コントローラ２１、２２、２３が出力する割込み要求信号のトリガモードが、レベルトリガモードであってもエッジトリガモードであっても、それらを自由に混在して構成させることが可能となる。
【００３２】
勿論、各コントローラ２１、２２、２３からの割り込み信号のトリガモードがエッジレベルまたはレベルモードに統一されたもので、割り込みコントローラ４１に替わり、先の実施の形態１または２で説明した、フリップフロップ２４、２５、２６や論理和（ＯＲ）回路１、論理積（ＡＮＤ）回路２、割り込み終了レジスタ２８等を使用した方式でマルチ機能カード３１上での割り込み要求処理を行い、パーソナルコンピュータ本体３０側へは、割り込み処理終了レジスタ４２、データ受け渡し用メモリ４３、割り込み信号生成回路４４を使用して順次割り込み要求をしていく構成としてもよい。
【００３３】
実施の形態４．
次にこの発明の実施の形態４を図に基づいて説明する。図９は、本実施の形態４によるマルチ機能カードを示す回路図であり、相当部分には図１と同一符号を附してその説明を省略する。図９において、５０は、パーソナルコンピュータ本体３０に通知する割り込み信号ＩＲＱをエッジトリガとレベルトリガとのいずれのモードで使用するか設定するための第１の切り替え指令手段としてのＩＲＱモード設定スイッチ、５１は、割り込み信号ＩＲＱに出力する割り込み信号として、Ａ入力から入力される信号とＢ入力から入力される信号のいずれか一方を選択して出力する第１のセレクタ手段としてのＩＲＱセレクタ回路である。本実施の形態では、各機能コントローラ２１、２２、２３は、エッジトリガモードの割り込み要求信号ＩＮＴ１からＩＮＴｎを生成する場合を例にとり説明する。
【００３４】
なお、実施の形態１では、パーソナルコンピュータ本体３０に通知する割り込み要求がエッジトリガである場合について述べたが、図９に示すようにレベルトリガ用割り込み信号を生成するために、STATUS1からSTATUSn信号の論理和（ＯＲ）回路１Ｂを追加し、エッジトリガ用信号ＩＲＱＡとレベルトリガ用信号ＩＲＱＢとをＩＲＱセレクタ回路５１によって選択してパーソナルコンピュータ本体３０に通知するようにしたので、マルチ機能カード３１が接続されるパーソナルコンピュータ本体３０のバスの割り込みモードが、エッジトリガモードであってもレベルトリガモードであっても同一のマルチ機能カードで対応可能となる。
【００３５】
次に動作について説明する。
ＩＲＱセレクタ回路５１は、ＩＲＱモード設定スイッチ５０により設定されたSEL信号がＨＩＧＨのとき、Ａ入力をＱ出力に出力し、SEL信号がＬＯＷのとき、Ｂ入力をＱ出力に出力するようなセレクタ回路である。パーソナルコンピュータ本体３０への割り込み信号のモードがエッジトリガモードの場合には、実施の形態１と同様に各フリップフロップ２４、２５、２６の出力信号STATUS1〜STATUSnを基に論理和（ＯＲ）回路１Ａと論利積（ＡＮＤ）回路２とにより生成された信号ＩＲＱAをＩＲＱセレクタ回路５１の出力として出力する。すなわち、パーソナルコンピュータ本体３０への割り込みがエッジトリガモードの場合には、実施の形態１と同一の動作となる。
【００３６】
パーソナルコンピュータ本体３０への割り込み信号のモードがレベルトリガモードの場合には、割り込み終了レジスタ２８を使用することなく、論理和（ＯＲ）回路１Ｂにより各フリップフロップ２４、２５、２６の出力信号STATUS1〜STATUSnの論理和（ＯＲ）を取ったものをＩＲＱセレクタ回路５１の出力として出力する。レベルトリガモードの場合には、複数機能の割り込み要求が連続して発生しても、論理和（ＯＲ）を取るのみで問題ない。
【００３７】
以上のように、この実施の形態４で示したマルチ機能カード３１では、パーソナルコンピュータ本体３０に通知する割り込み信号ＩＲＱをエッジトリガとレベルトリガとのいずれのモードで使用するか設定するためのＩＲＱモード設定スイッチ５０とＩＲＱモード設定スイッチ５０の設定に基づき、割り込み信号ＩＲＱに出力する割り込み信号として、エッジトリガモード割り込み信号とレベルトリガモード割り込み信号との一方を選択して出力するＩＲＱセレクタ回路５１とを設け、パーソナルコンピュータ本体３０に通知する割り込みをエッジトリガモードとレベルトリガモードとの間で切り替えられるようにしたので、同一のマルチ機能カードを使用して、エッジトリガモードの割り込みを要求するパーソナルコンピュータ本体とレベルトリガモードの割り込みを要求するパーソナルコンピュータ本体との両方で使用可能となる。
【００３８】
実施の形態５．
次にこの発明の実施の形態５を図に基づいて説明する。図１０は、本実施の形態５によるマルチ機能カードを示す回路図であり、相当部分には図１、図９と同一符号を附してその説明を省略する。図１０は、図９におけるＩＲＱモード設定スイッチ５０をパーソナルコンピュータ本体３０側に実装した構成となっている。
【００３９】
なお、実施の形態４では、パーソナルコンピュータ本体３０に通知する割り込みモードを設定するスイッチ５０をマルチ機能カード３１上に実装する場合について述べたが、この実施の形態５では、図１０に示すようにＩＲＱモード設定スイッチ５０をマルチ機能カード３１上に実装したので、複数枚実装される可能性のあるマルチ機能カードの割り込みモードの設定を１枚毎、行う必要がなく、パーソナルコンピュータ本体３０側にて設定を１度行うのみで複数枚のマルチ機能カードを使用可能となる。
【００４０】
次に動作について説明する。
動作に関しては、実施の形態５で説明した動作と同一であり、パーソナルコンピュータ本体３０側に実装されたＩＲＱモード設定スイッチ５０により設定されたモードの割り込み信号をＩＲＱセレクタ回路５１が選択して、パーソナルコンピュータ本体３０に通知する。
【００４１】
以上のように、この実施の形態５で示したマルチ機能カードでは、パーソナルコンピュータ本体３０側にＩＲＱモード設定スイッチ５０を実装し、複数枚が実装される可能性のあるマルチ機能カードの割り込みモードを一括して設定できるようにしたので、実装するマルチ機能カード１枚毎に割り込みモードを設定することなく、マルチ機能カードが使用可能となる。
【００４２】
実施の形態６．
次にこの発明の実施の形態６を図に基づいて説明する。図１１は、本実施の形態６によるマルチ機能カードを示す回路図であり、相当部分には図１、図９と同一符号を附してその説明を省略する。図１１は、図９におけるＩＲＱモード設定スイッチ５０を削除し、スイッチの代わりにパーソナルコンピュータ本体３０のＳ／Ｗから割り込みモードの設定を行うための割り込み種別レジスタ５２を追加したものである。
【００４３】
なお、実施の形態４では、パーソナルコンピュータ本体３０に通知する割り込みモードを設定するスイッチ５０をマルチ機能カード３１上に実装する場合について述べたが、この実施の形態６では、図１１に示すように割り込み種別レジスタ５２をマルチ機能カード３１上に実装し、パーソナルコンピュータ本体３０のＳ／Ｗから設定可能としたので、各マルチ機能カード毎にスイッチ設定をすることなくマルチ機能カードを使用可能となる。
【００４４】
次に動作について説明する。
パーソナルコンピュータ本体３０側のユーティリティＳ／ＷやドライバーＳ／Ｗによって割り込み種別レジスタ５２に使用する割り込みモード、すなわち、エッジトリガモード／レベルトリガモードのいずれかが設定される。マルチ機能カード３１は、上記の設定に基づいて、ＩＲＱセレクタ回路５１によりエッジトリガ割り込み、または、レベルトリガ割り込みのいずれか設定された信号をパーソナルコンピュータ本体３０に対して出力する。その他の動作に関しては、実施の形態４と同一である。
【００４５】
以上のように、この実施の形態６で示したマルチ機能カードでは、割り込み種別レジスタ５２を実装し、パーソナルコンピュータ本体３０側のＳ／Ｗから割り込み種別を設定できるようにしたので、スイッチ設定など、H/W的な設定を行うことなく、マルチ機能カードが使用可能となる。
【００４６】
実施の形態７．
次にこの発明の実施の形態７を図に基づいて説明する。図１２は、本実施の形態７によるマルチ機能カードを示す回路図であり、相当部分には図１と同一符号を附してその説明を省略する。５３、５４、５５は、各機能コントローラ２１、２２、２３が出力する割り込み信号のモードがエッジトリガモードであるかレベルトリガモードであるかを選択するための第２の切り替え指令手段としてのコントローラ割り込みモード設定スイッチ、５６、５７、５８は、論理和（ＯＲ）回路１に対して出力する信号として、Ａ入力から入力される信号とＢ入力から入力される信号とのいずれか一方を選択して出力する第２のセレクタ手段としてのコントローラ割り込みセレクタ回路である。
【００４７】
なお、実施の形態１、２、４、５、６では、各機能コントローラ２１、２２、２３が出力する割り込み要求信号は、すべて、エッジトリガモード、または、レベルトリガモードに統一された場合の例について述べたが、この実施の形態７では、図１２に示すように各機能毎にコントローラ割り込みモード設定スイッチ５３、５４、５５、及び、コントローラ割り込みセレクタ回路５６、５７、５８を実装し、各機能毎にエッジトリガモードとレベルトリガモードとの選択を可能としたので、エッジトリガモードの機能コントローラとレベルトリガモードの機能コントローラとを同一のマルチ機能カード３１上に混在させて使用することが可能となる。
【００４８】
次に動作について説明する。
コントローラ割り込みセレクタ回路５６、５７、５８は、それぞれ対応したコントローラ割り込みモード設定スイッチ５３、５４、５５により設定されたSEL信号がＨＩＧＨのとき、Ａ入力をＱ出力に出力し、SEL信号がＬＯＷのとき、Ｂ入力をＱ出力に出力するようなセレクタ回路である。機能コントローラが出力する割り込み要求信号INTxのモードがエッジトリガモードの場合には、実施の形態１と同様に各フリップフロップ２４、２５、２６の出力信号STATUSxをコントローラ割り込みセレクタ回路５６、５７、５８の出力として選択し、機能コントローラが出力する割り込み要求信号INTxのモードがレベルトリガモードの場合には、各機能コントローラが出力する割り込み要求信号INTxをコントローラ割り込みセレクタ回路５６、５７、５８の出力として選択する。ドライバーＳ／Ｗを含めた動作としては、実施の形態１で説明したものと同一である。
【００４９】
以上のように、この実施の形態７で示したマルチ機能カードでは、各機能毎にコントローラ割り込みモード設定スイッチ５３、５４、５５、及び、コントローラ割り込みセレクタ回路５６、５７、５８を実装し、各機能毎にエッジトリガモードとレベルトリガモードとの選択を可能としたので、エッジトリガモードの機能コントローラとレベルトリガモードの機能コントローラとを同一のマルチ機能カード上に混在させて使用することが可能となる。
【００５０】
実施の形態８．
次にこの発明の実施の形態８を図に基づいて説明する。図１３は、本実施の形態８によるマルチ機能カードを示す回路図であり、相当部分には図１、図１２と同一符号を附してその説明を省略する。図１３は、図１２におけるコントローラ割り込みモード設定スイッチ５３、５４、５５を削除し、その代わりに、パーソナルコンピュータ本体３０上のＳ／Ｗから設定可能な機能別割り込み種別レジスタ５９を追加したものである。
【００５１】
なお、実施の形態７では、各機能コントローラ２１、２２、２３が出力する割り込み信号のモードを設定するコントローラ割り込みモード設定スイッチ５３、５４、５５をマルチ機能カード３１上に実装する場合について述べたが、この実施の形態８では、図１３に示すように機能別割り込み種別レジスタ５９をマルチ機能カード３１上に実装し、パーソナルコンピュータ本体３０のＳ／Ｗから設定可能としたので、各機能コントローラ毎にスイッチ設定をすることなくマルチ機能カードを使用可能となる。
【００５２】
次に動作について説明する。
パーソナルコンピュータ本体３０側のユーティリティＳ／ＷやドライバーＳ／Ｗによって機能別割り込み種別レジスタ５９に各コントローラが使用する割り込みモード、すなわち、エッジトリガモード／レベルトリガモードのいずれかが設定される。マルチ機能カード３１は、上記の設定に基づいて、各機能毎に使用する割り込み信号をINTxとSTATUSxとから適当な割り込み信号を選択して、論理和（ＯＲ）回路１に出力し、パーソナルコンピュータ本体３０へ通知するための割り込み信号ＩＲＱを生成する。その他の動作に関しては、実施の形態７と同一である。
【００５３】
以上のように、この実施の形態８で示したマルチ機能カードでは、機能別割り込み種別レジスタ５９をマルチ機能カード上に実装し、パーソナルコンピュータ本体３０のＳ／Ｗから設定可能としたので、各機能コントローラ毎にスイッチ設定をすることなくマルチ機能カードを使用可能となる。
【００５４】
なお、実施の形態７および８では、パーソナルコンピュータ本体３０への割り込み要求信号ＩＲＱがエッジトリガモードである場合について説明したが、これがレベルトリガモードである場合には、論理和（ＯＲ）回路１の出力をそのままパーソナルコンピュータ本体３０への割り込み要求信号ＩＲＱとすることにより、以上で説明したと同様の要領で、各機能コントローラによって割り込み要求信号のトリガモードが異なるマルチ機能カードの使用が可能となる。
【００５５】
実施の形態９．
次にこの発明の実施の形態９を図に基づいて説明する。図１４は、本実施の形態９によるマルチ機能カードを示す回路図であり、相当部分には図１、図３と同一符号を附してその説明を省略する。図１４は、図１、図３に示すマルチ機能カードに各機能毎に対応する機器６０、６１の接続有無を設定する機器接続有無識別手段としての機器接続有無設定スイッチ７０を設けたものである。また、図１５は、本実施の形態９によるマルチ機能カード３１にアクセスするためのパーソナルコンピュータ本体３０上で動作するＳ／Ｗの構成図であり、相当部分には図４と同一符号を附してその説明を省略する。７１は、各機能毎のドライバーＳ／Ｗを一括して管理するマスタードライバーＳ／Ｗである。
【００５６】
なお、実施の形態１から８では、割り込み処理要求があった場合には、図５で説明したように、各機能に対応した機器の接続の有無にかかわらず、各機能に対応したドライバーＳ／Ｗを順に起動する場合について述べたが、この実施の形態９では、図１４に示すように機能毎に対応する機器６０、６１の接続の有無を設定し、接続されている機器に対応したドライバーＳ／Ｗのみを起動できるようにしたので、接続されていない機器用の不要なドライバーＳ／Ｗが起動されることがなく、Ｓ／Ｗ処理の負荷を低減させ、高速な処理が可能となる。
【００５７】
次に動作について説明する。
機器接続有無設定スイッチ７０には、機能１から機能ｎまでに対応したｎ個のスイッチが配置されており、ユーザーは、実際に接続する機器に対応したスイッチのみをONに設定する。機器接続有無設定スイッチ７０は、パーソナルコンピュータ本体３０側のＳ／Ｗからも読み出し可能となっており、マスタードライバー７１により読み出される。マルチ機能カード３１から割り込み要求があった場合、オぺレーティングシステム３４は、マスタードライバー７１を起動する。起動されたマスタードライバー７１は、機器接続有無設定スイッチ７０の設定情報を読み出すことで、マルチ機能カード３１に接続されている機器を判別し、実際に接続されている機器６０、６１に対応したドライバーＳ／Ｗのみを起動する。起動されたドライバーＳ／Ｗは、実施の形態１と同様の動作を行い、要求された割り込み処理を行う。図１４に示す例では、機能１（マウス６０）、機能ｎ（ＨＤＤ６１）に対応したドライバーＳ／Ｗである機能１用ドライバー３５、機能ｎ用ドライバー３７が起動され、機能２用ドライバー３６は起動されない。
【００５８】
以上のように、この実施の形態９で示したマルチ機能カードでは、機能毎に対応する機器の接続の有無を設定し、接続されている機器に対応したドライバーＳ／Ｗのみを起動できるようにしたので、接続されていない機器用の不要なドライバーＳ／Ｗが起動されることがなく、Ｓ／Ｗ処理の負荷を低減させ、高速な処理が可能となる。
【００５９】
実施の形態１０．
次にこの発明の実施の形態１０を図に基づいて説明する。図１６は、本実施の形態１０によるマルチ機能カードを示す回路図であり、相当部分には図１、図３と同一符号を附してその説明を省略する。図１６は、図１、図３に示すマルチ機能カードに各機能毎に対応する機器の接続有無をパーソナルコンピュータ本体３０から読み出し可能とする接続機器判別レジスタ７２を設けたものである。また、図１７は、本実施の形態１０によるマルチ機能カードに対応する機器を接続するための回路図を示したものであり、７３および７４は、機器接続有無検出手段としても利用される、それぞれ、マルチ機能カード３１上に実装された機器接続用コネクタ、およびマルチ機能カード３１に機器６０、６１を接続する際の機器側のコネクタである。
【００６０】
なお、実施の形態９では、機能毎に対応する機器の接続の有無を設定するスイッチ７０を設け、ユーザーによるスイッチ設定を行うことで、接続されている機器に対応したドライバーＳ／Ｗのみを起動できるようにする場合について述べたが、この実施の形態１０では、図１６、１７に示すように機器の接続の有無を自動で判別できるように接続機器判別レジスタ７２とその周辺回路をマルチ機能カードとコネクタ内に設けたので、ユーザーによるスイッチ設定を行うことなく、接続されている機器のドライバーＳ／Ｗのみを自動で起動することが可能となる。
【００６１】
次に動作について説明する。
図１７におけるCONNECT信号（図１７では機能１（マウス６０）のみ記載している）は、機器用コネクタ７４が接続されていない場合、Ｖcc（電源）に抵抗を介してプルアップされているため、ＨＩＧＨレベルとなる。また、機器用コネクタ７４が接続されている場合、CONNECT信号は、GND（グランド）に接続されるため、ＬＯＷレベルとなる。このＨＩＧＨ／ＬＯＷレベルに関しては、各機能毎に接続機器判別レジスタ７２を介して、パーソナルコンピュータ本体３０上のＳ／Ｗから読み出し可能となっており、実施の形態９と同様にマスタードライバー７１により読み出され、各機器毎にＨＩＧＨレベルであれば、機器は接続されておらず、ＬＯＷレベルであれば機器は接続されていると判別される。実際の動作は、実施の形態９と同様であり、実施の形態９で機器接続設定スイッチ７０の状態の読み出し動作が接続機器判別レジスタ７２の読み出し動作に変更されるのみである。
【００６２】
以上のように、この実施の形態１０で示したマルチ機能カードでは、機器の接続の有無を自動で判別できるように接続機器判別レジスタ７２とその周辺回路をマルチ機能カードとコネクタ内に設けたので、ユーザーによるスイッチ設定を行うことなく、接続されている機器のドライバーＳ／Ｗのみを自動で起動することが可能となり、Ｓ／Ｗ処理の負荷を低減させ、高速な処理が可能となる。
【００６３】
実施の形態１１．
次にこの発明の実施の形態１１を図に基づいて説明する。図１８は、本実施の形態１１によるマルチ機能カードにて使用するマルチ機能対応ドライバーＳ／Ｗ７５とパーソナルコンピュータ本体３０上のオペレーティングシステム３４との関係を示した図であり、複数機能の処理を１つのドライバーＳ／Ｗにて処理可能としたものである。また、図１９は、本実施の形態１１によるマルチ機能カードにて使用するマルチ機能対応ドライバーＳ／Ｗ７５の動作を示したフローチャートである。
【００６４】
なお、実施の形態１から実施の形態１０では、マルチ機能カード上で動作する各機能毎に対応するドライバーＳ／Ｗを実装し、複数のドライバーＳ／Ｗを起動する場合について述べたが、この実施の形態１１では、図１８、図１９に示すように複数機能の処理を１つのマルチ機能対応ドライバーＳ／Ｗ７５にて処理可能としたので、ドライバーＳ／Ｗを起動するオペレーティングシステム３４から見た場合に、マルチ機能カードであることを認識して複数のドライバーＳ／Ｗを起動する必要がなくなり、単一機能カードと同一のシーケンスを用いてマルチ機能対応ドライバーＳ／Ｗ７５を起動することが可能となり、オペレーティングシステム３４の処理を単純化できる。
【００６５】
次に動作について説明する。
マルチ機能カード３１は、実施の形態１から実施の形態１０までと同様のものとする。マルチ機能カード３１からパーソナルコンピュータ本体３０に対して割り込みが通知された場合、図１８に示す通り、パーソナルコンピュータ本体３０上のオペレーティングシステム３４は、マルチ機能対応ドライバーＳ／Ｗ７５を起動する。起動されたマルチ機能対応ドライバーＳ／Ｗ７５は、図１９に示すフローチャートに従って処理を進める。
【００６６】
まず、マルチ機能カード３１上の割り込み要因レジスタ２７の内容を読み出す。割り込み要因を読み出した結果、複数の要因（機能）からの割込み要求がある場合には、予め設定された優先順位に従い、最も優先順位の高い割り込み要因を特定し、対応した要因（機能ｘ）の割り込み処理を図１８に示す機能ｘ処理部のＳ／Ｗにて実行する。このように、一要因（機能）の割り込み要求に対して、割り込み要因レジスタ２７の読み出し処理が１回で済む。処理終了後、割り込み終了レジスタ２８に書き込みを行うことで、複数の割込み要求が発生している場合に、未処理の割込み要求を再度、割り込みとしてパーソナルコンピュータ本体３０に通知させる。未処理の割込み要求がある場合、本書き込みにより、再度、パーソナルコンピュータ本体３０に割り込みが通知されるため、ドライバーＳ／Ｗが、再度、起動され、同様の処理を繰り返すことで、全要因の割り込み処理がもれなく実施される。
【００６７】
以上のように、この実施の形態１１で示したマルチ機能カードでは、複数機能の処理を１つのマルチ機能対応ドライバーＳ／Ｗ７５にて処理可能としたので、ドライバーＳ／Ｗを起動するオペレーティングシステム３４から見た場合に、マルチ機能カードであることを認識して複数のドライバーＳ／Ｗを起動する必要がなくなり、単一機能カードと同一のシーケンスを用いてマルチ機能カード用のドライバーＳ／Ｗを起動することが可能となり、オペレーティングシステム３４の処理を単純化迅速化できる。
【００６８】
実施の形態１２．
次にこの発明の実施の形態１２を図に基づいて説明する。図２０は、本実施の形態１２によるマルチ機能カードを示す回路図であり、相当部分には図８と同一符号を附してその説明を省略する。図２０において、８０は、ネットワークに接続されてパーソナルコンピュータ本体３０から離れた場所に設置されるマルチ機能スレーブカード、８１は、パーソナルコンピュータ本体３０に実装されるマルチ機能マスターカード、８２は、前記マルチ機能スレーブカード８０に搭載されるスレーブカード用マイクロプロセッサ、８３は、前記マルチ機能マスターカード８１に搭載されるマスターカード用マイクロプロセッサ、８４は、前記マルチ機能スレーブカード８０上のプログラムが実行されるＳ／Ｗ実行用メモリ、８５は、前記マルチ機能スレーブカード８０上の各機能コントローラが出力する割込み要求を処理する割り込みコントローラ、８６は、前記マルチ機能マスターカード８１上の割り込み要求を処理する割り込みコントローラ、８７、８８は、ネットワークに接続するためのネットワークコントローラである。
【００６９】
なお、実施の形態３では、各機能に対応した機器がマルチ機能カードにケーブルなどを介して直接接続される場合について述べたが、図２０に示すようにマルチ機能マスターカード８１とマルチ機能スレーブカード８０との２枚のカードに分割し、それら２枚のカード８０、８１の間をネットワークコントローラ８７、８８で接続するようにしたので、接続する各種機器をパーソナルコンピュータ本体３０から離れた場所に設置することが可能となる。
【００７０】
次に動作について説明する。
基本的な動作は、実施の形態３と同一である。ただし、実施の形態３におけるマイクロプロセッサ４０により実行していたプログラムは、マスターカード用マイクロプロセッサ（μＰ２）８３とスレーブカード用マイクロプロセッサ（μＰ１）８２との２個のマイクロプロセッサに分割して処理を実行する。
【００７１】
各機能コントローラから割込み要求が発生した場合には、まず、スレーブカード用マイクロプロセッサ（μＰ１）８２が、各機能コントローラからのデータの読み出し等の処理を行い、パーソナルコンピュータ本体３０に通知すべきデータをネットワークコントローラ８８を使用してマルチ機能マスターカード８１に通知する。マルチ機能マスターカード８１に搭載されているネットワークコントローラ８７は、マルチ機能スレーブカード８０のネットワークコントローラ８８から送信されたデータを受信し、マスターカード用マイクロプロセッサ（μＰ２）８３に通知する。マスターカード用マイクロプロセッサ（μＰ２）８３は、受信したデータをデータ受け渡し用メモリに格納し、割り込み信号生成回路を使用してパーソナルコンピュータ本体３０に通知する。以降の処理は、実施の形態３と同一である。
【００７２】
以上のように、この実施の形態１２で示したマルチ機能カードでは、その機能をマルチ機能マスターカード８１とマルチ機能スレーブカード８０との２枚のカードに分割し、それら２枚のカードの間をネットワークで接続するようにしたので、接続する各種機器をパーソナルコンピュータ本体３０から離れた場所に設置することが可能となる。
【００７３】
実施の形態１３．
次にこの発明の実施の形態１３を図に基づいて説明する。図２１は、本実施の形態１３によるマルチ機能カードとそれらを使用したシステム構成を示す図であり、相当部分には図２、図２０と同一符号を附してその説明を省略する。
【００７４】
なお、実施の形態１２では、マルチ機能カードをマルチ機能マスターカード８１とマルチ機能スレーブカード８０とに分割し、両者の間を専用のネットワークで接続するようにする場合について述べたが、この実施の形態１３では、図２１に示すように１台のパーソナルコンピュータ本体３０に実装されるマルチ機能マスターカード８１から延長されるネットワークに複数枚のマルチ機能スレーブカード８０を接続するようにしたので、１枚のマルチ機能スレーブカード８０に接続可能な機器の数量の制限を越えて、複数台の機器を１台のパーソナルコンピュータ本体３０に接続することが可能となる。
【００７５】
次に動作について説明する。
基本的な動作は、実施の形態１２と同一である。機器Ａから機器Ｉの内のいずれかの機器が割り込み処理を要求する場合には、それぞれの機器が接続されたマルチ機能スレーブカード８０からネットワークを経由し、マルチ機能マスターカード８１を使用してパーソナルコンピュータ本体３０に通知する。データ処理の流れも実施の形態１２と同様である。
【００７６】
以上のように、この実施の形態１３で示したマルチ機能カードでは、１枚のマルチ機能マスターカード８１に対して、同一ネットワークで、複数枚のマルチ機能スレーブカード８０を接続するようにしたので、パーソナルコンピュータ本体３０から離れた場所に設置する機器の数量を容易に増やすことが可能となる。
【００７７】
なお、上記実施の形態１から１３では、パーソナルコンピュータ、ＩＳＡバス、ＰＣＩバスを例に説明したが、他のコンピュータシステムや、他のバスであってもよく、上記実施の形態と同様の効果を奏する。
【００７８】
また、接続される機器としては、マウス、ＨＤＤ、ネットワークなどを接続する構成の図を用いて説明しているが、これらの接続機器は他の種類のものであってもよく、上記実施の形態と同様の効果を奏する。
【００７９】
【発明の効果】
以上のように、この発明に係るマルチ機能カードは、トリガ割り込み信号を出力してそれぞれの機能の実行を要求する複数の機能コントローラを備え、ホストと接続し、上記ホストへは単一のエッジトリガ割り込み信号で割り込み処理の実行を要求するマルチ機能カードにおいて、
上記複数の機能コントローラからのトリガ割り込み信号を入力し、上記機能コントローラの少なくとも１個が割り込みを要求している期間、合成割り込み信号を出力する割り込み要求合成手段、および上記合成割り込み信号を入力し、上記機能コントローラから要求された割り込み処理が終了し次回割り込み要求の受け入れが可能となったタイミングで上記合成割り込み信号にエッジを生成して上記ホストへ出力するエッジ生成手段を備えたので、ホストの処理性能に依存する設定が不要となり、またホストの処理性能やホストの処理負荷などによって割り込み要求が正常に処理されないという恐れがなく、複数の機能コントローラからの割り込み要求をホストへの単一のエッジトリガ割り込み信号により確実に処理することが可能となる。
更に、その各機能コントローラがエッジトリガ割り込み信号を出力する場合、
上記割り込み要求合成手段は、上記各機能コントローラからのエッジトリガ割り込み信号をラッチする複数のラッチ手段と、上記各機能コントローラからの割り込み要求がホストで認識されたタイミングで当該機能コントローラに係るラッチ手段をリセットするリセット手段と、上記複数のラッチ手段からの信号を入力して合成割り込み信号を出力する論理和手段とからなるので、エッジトリガモードによる複数の機能コントローラからの割り込み要求をホストへの単一のエッジトリガ割り込み信号により確実に処理することが可能となる。
【図面の簡単な説明】
【図１】  この発明の実施の形態１におけるマルチ機能カードを示す回路図である。
【図２】  上記実施の形態１を示すシステム構成図である。
【図３】  上記実施の形態１のマルチ機能カード内の構成を示すブロック図である。
【図４】  上記実施の形態１で使用するＳ／Ｗの構成を示すブロック図である。
【図５】  上記実施の形態１で使用するＳ／Ｗの動作を示すフローチャートである。
【図６】  上記実施の形態１のＨ／Ｗの動作を示すタイミングチャートである。
【図７】  この発明の実施の形態２におけるマルチ機能カードを示す回路図である。
【図８】  この発明の実施の形態３におけるマルチ機能カードを示すブロック図である。
【図９】  この発明の実施の形態４におけるマルチ機能カードを示す回路図である。
【図１０】  この発明の実施の形態５におけるマルチ機能カードを示す回路図である。
【図１１】  この発明の実施の形態６におけるマルチ機能カードを示す回路図である。
【図１２】  この発明の実施の形態７におけるマルチ機能カードを示す回路図である。
【図１３】  この発明の実施の形態８におけるマルチ機能カードを示す回路図である。
【図１４】  この発明の実施の形態９におけるマルチ機能カードを示す回路図である。
【図１５】  上記実施の形態９で使用するＳ／Ｗの構成を示すブロック図である。
【図１６】  この発明の実施の形態１０におけるマルチ機能カードを示すブロック図である。
【図１７】  上記実施の形態１０で使用する機器の接続有無を検出する回路図である。
【図１８】  この発明の実施の形態１１で使用するＳ／Ｗの構成を示すブロック図である。
【図１９】  上記実施の形態１１で使用するＳ／Ｗの動作を示すフローチャートである。
【図２０】  この発明の実施の形態１２におけるマルチ機能カードを示すブロック図である。
【図２１】  この発明の実施の形態１３におけるマルチ機能カードを示すブロック図である。
【図２２】  従来のマルチ機能カードを示すブロック図である。
【符号の説明】
１，１Ａ，１Ｂ  論理和（ＯＲ）回路、２  論理積（ＡＮＤ）回路、
２１，２２，２３  機能コントローラ、２４，２５，２６  フリップフロップ、
２７  要因レジスタ、２８  割り込み終了レジスタ、２９  要因リセットレジスタ、
３０  パーソナルコンピュータ本体、３１  マルチ機能カード、
３４  オペレーティングシステム、３５，３６，３７  機能ドライバー、
４０  マイクロプロセッサ、４１  割り込みコントローラ、
４２  割り込み処理終了レジスタ、４３  データ受け渡し用メモリ、
４４  割り込み信号生成回路、４６  ホストＣＰＵ、４７  ８２５９チップ、
５０  ＩＲＱモード設定スイッチ、５１  ＩＲＱセレクタ回路、
５２  割り込み種別レジスタ、
５３，５４，５５  コントローラ割り込みモード設定スイッチ、
５６，５７，５８  コントローラ割り込みセレクタ回路、
５９  機能別割り込み種別レジスタ、６０，６１  機器、
７０  機器接続有無設定スイッチ、７１  マスタードライバーＳ／Ｗ、
７２  接続機器判別レジスタ、７３  機器接続用コネクタ、７４  機器側コネクタ、
７５  マルチ機能対応ドライバーＳ／Ｗ、８０  マルチ機能スレーブカード、
８１  マルチ機能マスターカード、８２  スレーブカード用マイクロプロセッサ、
８３  マスターカード用マイクロプロセッサ、８５，８６  割り込みコントローラ、
８７，８８  ネットワークコントローラ。
【図１】
0003827920.tif 000002
【図２】
0003827920.tif 000003
【図３】
0003827920.tif 000004
【図４】
0003827920.tif 000005
【図５】
0003827920.tif 000006
【図６】
0003827920.tif 000007
【図７】
0003827920.tif 000008
【図８】
0003827920.tif 000009
【図９】
0003827920.tif 000010
【図１０】
0003827920.tif 000011
【図１１】
0003827920.tif 000012
【図１２】
0003827920.tif 000013
【図１３】
0003827920.tif 000014
【図１４】
0003827920.tif 000015
【図１５】
0003827920.tif 000016
【図１６】
0003827920.tif 000017
【図１７】
0003827920.tif 000018
【図１８】
0003827920.tif 000019
【図１９】
0003827920.tif 000020
【図２０】
0003827920.tif 000021
【図２１】
0003827920.tif 000022
【図２２】
0003827920.tif 000023