(57)【特許請求の範囲】
【請求項１】
ＣＰＵと、
複数の周辺デバイスからの割り込みを受付けて処理し、この複数の周辺デバイスからの割り込みに対する前記ＣＰＵにおける実行順序をプログラムに従って変更して、処理結果を出力すると共に、前記ＣＰＵに対して所定のタイミングで割り込み信号を発生するワンチップマイコンと、
このワンチップマイコンからの処理結果の出力を受け取って格納し、前記ＣＰＵに受け渡すためのコミュニケーション用ＲＡＭとを有し、
前記ＣＰＵは、前記ワンチップマイコンからの割り込み信号を受付けたことに基づいて前記コミュニケーション用ＲＡＭに格納された処理結果を取り出して、前記ワンチップマイコンにより変更された実行順序に従って、前記複数の周辺デバイスからの割り込みに対する処理を実行することを特徴とする制御システム。
【請求項２】
請求項1記載の制御システムにおいて、前記ワンチップマイコンは、前記周辺デバイスから前記ＣＰＵへの割り込みが生じた場合、前記ＣＰＵからの通知に応じて割り込みが生じた周辺デバイスを特定するデータを前記コミュニケーション用ＲＡＭに格納し、前記ＣＰＵは、前記ワンチップマイコンからの割り込み信号を受け付けたことに基づいて、前記コミュニケーション用ＲＡＭから割り込みが生じた周辺デバイスを特定するデータを受け取って、前記周辺デバイスからの割り込みを処理することを特徴とする制御システム。
【請求項３】
請求項1記載の制御システムにおいて、
前記周辺デバイスには、ディスプレイコントローラを含み、
前記ワンチップマイコンは、前記ＣＰＵに対する割り込み信号を、前記ディスプレイコントローラからの同期信号に基づいて発生することを特徴とする制御システム。
【請求項４】
請求項1記載の制御システムにおいて、
前記コミュニケーション用ＲＡＭは、前記ワンチップマイコンと比較的低速な複数の周辺デバイスとが接続される第１のバスと、前記ＣＰＵと複数の周辺デバイスが接続される第２のバスとに接続され、
前記ワンチップマイコンは、前記第１のバスに接続された周辺デバイスからの割り込みを処理して処理結果を前記コミュニケーション用ＲＡＭに書き込むことを特徴とする制御システム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は、メインプログラムを実行するメイン制御装置への割り込みを効率的に制御するための制御システムに関するものである。
【０００２】
【従来の技術】
一般に、特定のゲームのみを実行できるように特化された業務用ゲーム装置においては、ディスプレイデバイス、サウンドデバイスやジョイスティック等の入出力デバイス等の周辺機器が多いため、中央演算装置（ＣＰＵ）に対して様々なタイミングで多種多様の割り込みが発生する。
【０００３】
ところが、このようなゲーム機に用いられる高速のＣＰＵには割り込みコントローラが内蔵されていないことが多く、ＣＰＵのみでは周辺デバイスからの割り込みを効率的に制御することは不可能である。このため、従来のゲーム機においては、各ＣＰＵ製造メーカが供給するＣＰＵサポート用のチップセットを装備する必要があった。
【０００４】
このチップセットは、当該ＣＰＵ専用のインタラプト処理ロジックを使用し、高度な割り込みを実現できるようになっている。
【０００５】
【発明が解決しようとする課題】
ところで、ゲーム装置においては、高速なＣＰＵを必要とする一方、ゲーム専用のＯＳを使用し、特定の周辺装置のみからの割り込みを処理すれば良いので、それほど高度な割り込み処理回路を必要としないことが多い。これに対して、ＣＰＵ製造メーカが供給するチップセットは、汎用のシステムに対応するために非常に高度な割り込み処理ロジックを有し、非常に高価であるということがある。このため、コスト面でのデメリットが大きいということがあった。
【０００６】
この発明はこのような事情に鑑みてなされたものであり、ＣＰＵ専用の割り込み処理回路を必要とすることなく、必要な割り込み処理が行なえる制御システムを提供することを目的とするものである。
【０００７】
【課題を解決するための手段】
上記課題を解決するため、この発明は、ＣＰＵと、複数の周辺デバイスからの割り込みを受付けて処理し、この複数の周辺デバイスからの割り込みに対する前記ＣＰＵにおける実行順序をプログラムに従って変更して、処理結果を出力すると共に、前記ＣＰＵに対して所定のタイミングで割り込み信号を発生するワンチップマイコンと、このワンチップマイコンからの処理結果の出力を受け取って格納し、前記ＣＰＵに受け渡すためのコミュニケーション用ＲＡＭとを有し、前記ＣＰＵは、前記ワンチップマイコンからの割り込み信号を受付けたことに基づいて前記コミュニケーション用ＲＡＭに格納された処理結果を取り出して、前記ワンチップマイコンにより変更された実行順序に従って、前記複数の周辺デバイスからの割り込みに対する処理を実行することを特徴とする。
【０００８】
また、前記システムにおいて、前記ワンチップマイコンは、前記周辺デバイスから前記ＣＰＵへの割り込みが生じた場合、前記ＣＰＵからの通知に応じて割り込みが生じた周辺デバイスを特定するデータを前記コミュニケーション用ＲＡＭに格納し、前記ＣＰＵは、前記ワンチップマイコンからの割り込み信号を受け付けたことに基づいて、前記コミュニケーション用ＲＡＭから割り込みが生じた周辺デバイスを特定するデータを受け取って、前記周辺デバイスからの割り込みを処理するように構成されていることが好ましい。
【０００９】
このような構成によれば、全ての割り込みをワンチップマイコンでプログラム的に一元管理することができるから、前記ＣＰＵに専用のインタラプトコントローラを設ける必要がない。
【００１０】
【発明の実施の形態】
次に、この発明に係る制御装置の一実施形態を、ゲーム装置の制御回路に適用した例をとって説明する。
【００１１】
図１は、この発明の制御回路を示す機能ブロック図である。
メインＣＰＵ１が接続されたバスＡには、バスＡ用の第1のＲＯＭ２、第1のＲＡＭ３の他、このメインＣＰＵ１によって直接制御される通信用ＩＣ４や画像プロセッサとしてのＡＳＩＣ５が接続されている。ＡＳＩＣ５は、図示しないＣＲＴ（ディスプレイ装置）に接続され、ディスプレイコントローラとして機能する他、表示との同期をとるための同期信号を発生させる機能を有する。
【００１２】
また、通信用ＩＣ４は、外部との通信を行なう場合に作動し、その動作に応じて割り込みを発生する。そして、第１のＲＯＭ２には、割り込み動作に対するメインＣＰＵ１の動作手順を格納するマイクロプログラム（メインＣＰＵ用ＯＳ）が記憶されている。
【００１３】
バスＡは、コミュニケーション用ＲＡＭ７を介してバスＢに接続されている。このバスＢには、比較的低速の周辺デバイス、すなわち、サウンドコントローラ８やＩ／Ｏ等９が接続されている。また、このバスＢには、これらの周辺デバイスを制御するためのワンチップマイコン１０及びバスＢ用の第２のＲＯＭ１１及び第２のＲＡＭ１２が接続されている。すなわち、このバスＢに接続されたデバイスは原則として全てワンチップマイコン１０が制御する。前記第２のＲＯＭ１１には、このワンチップマイコン１０を制御するためのマイクロプログラム（ワンチップマイコン用ＯＳ）が格納されている。
【００１４】
この発明の制御回路は、メインＣＰＵ１に対する割り込みを、前記ワンチップマイコン１０で一元管理することを特徴とし、そのための手順が前記第１、第２のＲＯＭ２、１１に格納されたマイクロプログラムに含まれている。
【００１５】
すなわち、この制御回路において割り込みを発生させるデバイスは、バスＡに接続されたＡＳＩＣ５、通信用ＩＣ４、及びバスＢに接続されたサウンド回路８、Ｉ／Ｏ等９である。ここで、バスＢに接続されているデバイス（サウンド回路８、Ｉ／Ｏ等９）からの割り込みは、ワンチップマイコン１０により処理され、ワンチップマイコン１０はその処理結果のみをメインＣＰＵ１への割り込みに備えてコミュニケーション用ＲＡＭ７に書き込む手順を実行する。一方、バスＡに接続されたデバイス（ＡＳＩＣ５、通信用ＩＣ４）が割り込みを発生した場合には、ワンチップマイコン１０は、割り込みが発生したデバイスが何であるかのデータをコミュニケーション用ＲＡＭ７に書き込む動作を行なう。
【００１６】
そして、ワンチップマイコン１０は、例えば前記ＡＳＩＣ５からの同期信号を元に、一定のタイミングでメインＣＰＵ１に割り込みを行なう（図に一点鎖線で示す）。これに基づいて、メインＣＰＵ１は、前記コミュニケーション用ＲＡＭ７にアクセスし、このＲＡＭ７に格納されたデータ毎に割り込みタスクを行なう。すなわち、前記バスＡに接続されたデバイスの処理結果を受け取って処理すると共に、バスＢに接続されたデバイスの割り込みを許可する。この割り込みタスクの実行順序（優先順序）は、例えば、前記第２のＲＯＭ１１に格納されたプログラムによって決定される。
【００１７】
この手順を示したのが図２のフローチャートである。
このフローチャートでは、ワンチップマイコン１０の処理フローを左側に、メインＣＰＵ１の処理フローを右側に表示している。
【００１８】
ワンチップマイコン１０は、先ず、ステップＳ１でバスＢに接続された機器（８、９）からの割り込みを監視する。バスＢに接続された機器からの割り込みが検知された場合には、その割り込みを処理し（ステップＳ２）、処理結果をコミュニケーション用ＲＡＭ７に書き込む（ステップＳ３）。
【００１９】
一方、右側のフローに示すように、メインＣＰＵ１においてバスＡに接続された機器（４、５）からの割り込みを検出したならば（ステップＳ４）、ワンチップマイコン１０に割り込みをかけそのことを通知する（ステップＳ５）。
【００２０】
ワンチップマイコン１０は、ステップＳ６でＣＰＵ１からの割り込みを検知すると、バスＡにおいて割り込みが生じた機器が何であるかのデータをコミュニケーション用ＲＡＭ７に書き込む（ステップＳ７）。
【００２１】
そして、ワンチップマイコン１０は、メインＣＰＵ１への所定の割り込みタイミングが到来するまでステップＳ１〜Ｓ７を繰り返す（ステップＳ８）。このステップＳ１〜Ｓ７によって、割り込み処理に必要なすべての情報がワンチップマイコン１０によってコミュニケーション用ＲＡＭ７に書き込まれたことになる。
【００２２】
次に、ステップＳ８で、メインＣＰＵ１への割り込みタイミングが到来したことを検出（例えばＡＳＩＣ５で発生する信号に基づく検出）したならば、ステップＳ９でメインＣＰＵ１への割り込みをかける。これを受けたメインＣＰＵ１は、ステップＳ１０でワンチップマイコン１０からの割り込み信号があったかを判断し、割り込みがあった場合には、そのことに基づいて、所定の割り込みタスクを実行する（ステップＳ１１，Ｓ１２）。
【００２３】
すなわち、先ず、ステップＳ１１で、コミュニケーション用ＲＡＭ７に書き込まれたバスＢ接続機器の処理結果を取り出し、これを処理する。処理結果はコミュニケーション用ＲＡＭ７を介してワンチップマイコン１０へ受け渡される。
【００２４】
次に、ステップＳ１２で、コミュニケーション用ＲＡＭ７に書き込まれたデータを元にバスＡに接続された機器の割り込みを許可し、割り込み処理を行なう。
【００２５】
なお、メインＣＰＵ１によって行われる割り込み処理の順序は、ワンチップマイコン１０が決定してコミュニケーション用ＲＡＭ７に書き込んでおいても良いし、メインＣＰＵ１が独自に決定するようにしても良い。
【００２６】
このような構成によれば、ＣＰＵ専用の割り込み処理回路を必要とすることなく、必要な割り込み処理が行なえる制御回路を提供することができる。特に、高速のＣＰＵ（メインＣＰＵ１）と低速のＣＰＵ（ワンチップマイコン１０）によって構成されている一般の業務用ゲーム装置の場合、専用サポート用チップセットを組み込む必要がないから、コスト的なメリットが大きい。
【００２７】
また、システム全体の割り込み発生信号が、ワンチップマイコン１０でソフトウエア的に処理されるため、自由度が高く、動的かつインテリジェントに割り込み処理ができる。例えばマイクロプログラムを入れ替えるのみで処理に応じた割り込み優先順序を変更することも可能である。
【００２８】
なお、この発明は上記一実施形態に限定されるものではなく、発明の要旨を変更することなく種々変形可能である。
【００２９】
例えば、上記一実施形態では、ゲーム用の制御システムを例に挙げたがゲームに限定されるものではない。
【００３０】
また、前記マイクロプログラムはＲＯＭに記憶されていたがＲＡＭに記憶されていても良い。この場合、プログラムを変更することが容易に行なえる効果がある。また、前記プログラムはＯＳに組み込まれていなくても良く、アプリケーションプログラムに含まれるものであっても良い。
【００３１】
【発明の効果】
以上説明したこの発明の構成によれば、ＣＰＵ専用の割り込み処理回路を必要とすることなく、必要な割り込み処理が行なえる効果がある。
【図面の簡単な説明】
【図１】この発明の一実施形態を説明するための機能ブロック図。
【図２】この発明の一実施形態を説明するためのフローチャート。
【符号の説明】
１…メインＣＰＵ（メイン制御装置）
２…第１のＲＯＭ
３…第１のＲＡＭ
４…通信用ＩＣ（外部周辺機器）
５…ＡＳＩＣ（外部周辺機器）
７…コミュニケーション用ＲＡＭ（コミュニケーション用メモリ）
８…サウンドコントローラ（外部周辺機器）
９…Ｉ／Ｏ等（外部周辺機器）
１０…ワンチップマイコン（副制御装置）
１１…第２のＲＯＭ
１２…第２のＲＡＭ
【図１】
0003745545.tif 000002
【図２】
0003745545.tif 000003