(57)【要約】【課題】割込みソフトウェアを削減しＣＰＵの負荷を低減し動作効率を向上させる情報処理装置を提供する。【解決手段】本発明の情報処理装置は、プログラムを実行するＣＰＵ４と、複数の周辺デバイス１ａ〜１ｃと、周辺デバイス１ａ〜１ｃからの割込み要求を受け付けてＣＰＵ４に通知する割込みコントローラ３とを備え、第１の周辺デバイス（例えば周辺デバイス１ａ）は、割込み要求の出力先を割込みコントローラ３とするか第２の周辺デバイス（例えば周辺デバイス１ｂ）とするか切り替え可能な切り替え部２ａを有する。【選択図】図１
2009048573.tif 000002
【特許請求の範囲】
【請求項１】
プログラムを実行するＣＰＵと、
複数の周辺デバイスと、
周辺デバイスからの割込み要求を受け付けて前記ＣＰＵに通知する割込みコントローラとを備え、
前記複数の周辺デバイスのうちの第１の周辺デバイスは、割込み要求の出力先を前記割込みコントローラとするか第２の周辺デバイスとするか切り替え可能な切り替え手段を有する
ことを特徴とする情報処理装置。
【請求項２】
前記切り替え手段は、
前記ＣＰＵから書き込み可能なレジスタと、前記レジスタに書き込まれた制御データに従って前記割込み要求の出力先を切り替えるスイッチと
を備えることを特徴とする請求項１記載の情報処理装置。
【請求項３】
前記第２の周辺デバイスは、前記第１の周辺デバイスから割込み要求が入力されたとき、当該割込み要求に対応する処理を行なう
ことを特徴とする請求項１記載の情報処理装置。
【請求項４】
前記第２の周辺デバイスは、前記第１の周辺デバイスからの割込み要求に基づいて割込み要求を前記割込みコントローラに出力する
ことを特徴とする請求項１記載の情報処理装置。
【請求項５】
前記割込みコントローラは、前記第１の周辺デバイスから前記第２の周辺デバイスを経由して入力された割込み要求を、前記第２の周辺デバイスの割込み要求として前記ＣＰＵに通知し、
前記ＣＰＵは、前記第１の周辺デバイスから前記第２の周辺デバイスおよび前記割込みコントローラを経由して入力された割込み要求に対して、前記第２の周辺デバイスに対する割込み処理を実行する
ことを特徴とする請求項４記載の情報処理装置。
【請求項６】
前記第２の周辺デバイスは、前記第１の周辺デバイスから入力される割込み要求と、前記第２の周辺デバイスで発生した割込み要求との論理演算を行い、論理演算の結果に従って割込み要求を前記割込みコントローラに出力する
ことを特徴とする請求項１記載の情報処理装置。
【請求項７】
前記第１の周辺デバイスは、前記ＣＰＵからの動作コマンドをキューとして保持するコマンドキュー手段を有し、動作コマンドに対応する処理完了時に割込み要求を発生する
ことを特徴とする請求項１記載の情報処理装置。
【請求項８】
前記動作コマンドは割込み要求の出力先指定を含み、
前記切り替え手段は前記出力先指定に従い前記スイッチを切り替える
ことを特徴とする請求項７記載の情報処理装置。
【請求項９】
前記第１の周辺デバイスおよび前記第２の周辺デバイスの一方は、さらに、動作コマンドに対応する処理完了時に発生した割込み要求をキューとして保持する割込み要求保持手段を備えることを特徴とする請求項７記載の情報処理装置。
【請求項１０】
前記第１の周辺デバイスは、ダイレクト・メモリ・アクセス・コントローラである
ことを特徴とする請求項１記載の情報処理装置。
【請求項１１】
前記第２の周辺デバイスは、データを入力または出力する入出力周辺デバイスであり、
前記第１の周辺デバイスは、前記２の周辺デバイスからメモリへ、または、前記メモリから前記入出力周辺デバイスへデータを転送し、転送完了時に前記割込み要求を発生する
ことを特徴とする請求項１０記載の情報処理装置。
【請求項１２】
前記第１の周辺デバイスは、データ転送が完了する毎に前記割込み要求を発生し、
前記切り替え手段は、第２の周辺デバイスに前記割込み要求を出力する
ことを特徴とする請求項１１記載の情報処理装置。
【請求項１３】
前記割込みコントローラは、前記第１の周辺デバイスから前記第２の周辺デバイスを経由して入力された割込み要求を、前記第２の周辺デバイスの割込み要求として前記ＣＰＵに通知し、
前記ＣＰＵは、前記第１の周辺デバイスから前記第２の周辺デバイスおよび前記割込みコントローラを経由して入力された割込み要求に対して、前記第２の周辺デバイスに対する割込み処理を実行する
ことを特徴とする請求項１２記載の情報処理装置。
【請求項１４】
前記第１の周辺デバイスは、前記ＣＰＵからの動作コマンドをキューとして保持するコマンドキュー手段を有し、動作コマンドに対応する処理完了時に割込み要求を発生し、
前記動作コマンドは、前記第２の周辺デバイスとメモリとの間のデータ転送を指示する
ことを特徴とする請求項１１記載の情報処理装置。
【請求項１５】
前記動作コマンドは割込み要求の出力先指定を含み、
前記切り替え手段は前記出力先指定に従い前記スイッチを動的に切り替える
ことを特徴とする請求項１４記載の情報処理装置。
【請求項１６】
前記第２の周辺デバイスは、さらに、前記第１の周辺デバイスからの割込み要求をキューとして保持する割込み要求保持手段を備える
ことを特徴とする請求項１５記載の情報処理装置。
【請求項１７】
前記第２の周辺デバイスは、オーディオデータを入力または出力するＩ／Ｏ周辺デバイスであることを特徴とする請求項１１記載の情報処理装置。
【請求項１８】
請求項１〜１７の何れかに記載の情報処理装置を備え、
前記第１の周辺デバイスは、ダイレクト・メモリ・アクセス・コントローラであり、
前記第２の周辺デバイスは、オーディオデータを入力または出力するＩ／Ｏ周辺デバイスであることを特徴とするオーディオ装置。
【請求項１９】
プログラムを実行するＣＰＵと、複数の周辺デバイスと、周辺デバイスからの割込み要求を受け付けて前記ＣＰＵに通知する割込みコントローラとを備える情報処理装置における情報処理方法であって、
前記複数の周辺デバイスのうちの第１の周辺デバイスから第２の周辺デバイスに割込み要求を出力するステップと、
前記第１の周辺デバイスからの割込み要求に基づいて前記第２の周辺デバイスから割込み要求を前記割込みコントローラに出力するステップと、
前記割込みコントローラから、前記第１の周辺デバイスから前記第２の周辺デバイスを経由して入力された割込み要求を、前記第２の周辺デバイスの割込み要求として前記ＣＰＵに通知するステップと、
前記第１の周辺デバイスから前記第２の周辺デバイスおよび前記割込みコントローラを経由して入力された割込み要求に対して、前記ＣＰＵが前記第２の周辺デバイスに対する割込み処理を実行するステップと
を有することを特徴とする情報処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、プログラムを実行するＣＰＵと、複数の周辺デバイスと、周辺デバイスからの割込み要求を受け付けて前記ＣＰＵに通知する割込みコントローラとを備える情報処理装置、オーディオ装置および情報処理方法に関する。
【背景技術】
【０００２】
従来、情報処理装置では、その核であるＣＰＵに対して非同期な事象が発生した場合、割込みを用いてＣＰＵに情報を伝達する構成を有していた。
【０００３】
図８は、従来の情報処理装置の一例を示すブロック図である。同図の情報処理装置は、周辺デバイス群５１、割込みコントローラ５３、ＣＰＵ５４を備える。
【０００４】
割込みコントローラ５３は、周辺デバイス群５１により生成される割込み要求を検出し、ＣＰＵ５４に対して割込み要求を伝える。ＣＰＵ５４は、割込み要求に応じた処理を実行する。
【０００５】
つまり、割込要求の発生によりＣＰＵに対して負荷が発生している。
ところで、ＣＰＵは高速化される一方、多数の周辺デバイスが接続されることにより、周辺デバイスからの割込み要求の増加に伴いＣＰＵにおける処理が複雑化、大規模化してきている。
【０００６】
また、特許文献１は、ベクタフェッチ先の優先順を指示するコントロールレジスタと、ベクトル要求先を切換える切換回路を備える。複数の周辺デバイスが同じレベルの割込みを発生している場合には、優先順に従って各周辺デバイスのベクタフェッチを行なう割込みベクタ判別方式を開示している。これにより、同じレベルの割込み時に処理時間がかからず、簡単な処理でフェッチ先の割込みベクタを判別し、ＣＰＵの負荷軽減を図っている。
【特許文献１】特公平８−２７７２４号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
ところで、上記従来技術によれば、周辺デバイスの増加に伴って、ＣＰＵで用意すべき割込み処理プログラムの種類も増加し、割込み要求の頻発によるＣＰＵへの負荷が増大するという問題も有している。
【０００８】
このため、ＣＰＵで用意すべき割込み処理プログラムは煩雑となり、また、複数の周辺デバイスから割込み要求が発生した場合、処理されるまで各周辺デバイスは処理待ち状態になってしまい動作効率に落ちるという問題を有している。
【０００９】
本発明は、上記従来の問題点を解決するものであり、割込みに対するソフトウェアを削減し、ＣＰＵの負荷を低減し、動作効率を向上させる情報処理装置、オーディオ装置および情報処理方法を提供することを目的とする。
【課題を解決するための手段】
【００１０】
上記課題を解決するため本発明の情報処理装置は、プログラムを実行するＣＰＵと、複数の周辺デバイスと、周辺デバイスからの割込み要求を受け付けて前記ＣＰＵに通知する割込みコントローラとを備え、前記複数の周辺デバイスのうちの第１の周辺デバイスは、割込み要求の出力先を前記割込みコントローラとするか第２の周辺デバイスとするか切り替え可能な切り替え手段を有する。
【００１１】
この構成によれば、ＣＰＵへの割込み要求の削減によりＣＰＵで用意すべきソフトウェアを削減し、ＣＰＵの負荷を低減し、ＣＰＵおよび周辺デバイスの動作効率を向上させることができる。
【００１２】
ここで、前記切り替え手段は、前記ＣＰＵから書き込み可能なレジスタと、前記レジスタに書き込まれた制御データに従って前記割込み要求の出力先を切り替えるスイッチとを備えるようにしてもよい。
【００１３】
この構成によれば、第１および第２周辺デバイスの種類に応じて割込み要求の出力先をＣＰＵから設定することができる。
【００１４】
ここで、前記第２の周辺デバイスは、前記第１の周辺デバイスから割込み要求が入力されたとき、当該割込み要求に対応する処理を行なうようにしてもよい。
【００１５】
この構成によれば、第２周辺デバイスが第１周辺デバイスの割込み要求を満たす処理を実行する、あるいは、第２周辺デバイスを介して第１周辺デバイスの割込み要求をＣＰＵに出力するので、周辺デバイスの動作効率を向上させることができる。
【００１６】
ここで、前記第２の周辺デバイスは、前記第１の周辺デバイスからの割込み要求に基づいて割込み要求を前記割込みコントローラに出力するとしてもよい。
【００１７】
この構成によれば、第１周辺デバイスで発生する割込み処理と第２周辺デバイスで発生する割込み処理とを一本化するので、ＣＰＵの負荷を低減し、ＣＰＵおよび周辺デバイスの動作効率を向上させることができる。
【００１８】
ここで、前記割込みコントローラは、前記第１の周辺デバイスから前記第２の周辺デバイスを経由して入力された割込み要求を、前記第２の周辺デバイスの割込み要求として前記ＣＰＵに通知し、前記ＣＰＵは、前記第１の周辺デバイスから前記第２の周辺デバイスおよび前記割込みコントローラを経由して入力された割込み要求に対して、前記第２の周辺デバイスに対する割込み処理を実行するようにしてもよい。
【００１９】
この構成によれば、第１周辺デバイスで発生する割込み処理は第２周辺デバイスで発生する割込み処理に吸収されるので、ＣＰＵで用意すべきソフトウェアを削減することができる。
【００２０】
ここで、前記第２の周辺デバイスは、前記第１の周辺デバイスから入力される割込み要求と、前記第２の周辺デバイスで発生した割込み要求との論理演算を行い、論理演算の結果に従って割込み要求を前記割込みコントローラに出力するようにしてもよい。
【００２１】
この構成によれば、第１周辺デバイスで発生する割込み要求と第２周辺デバイスで発生する割込み要求とを論理演算により一本化して、割込みコントローラに出力するタイミングを適切に調整することができる。
【００２２】
ここで、前記第１の周辺デバイスは、前記ＣＰＵからの動作コマンドをキューとして保持するコマンドキュー手段を有し、動作コマンドに対応する処理完了時に割込み要求を発生するようにしてもよい。
【００２３】
この構成によれば、第１の周辺デバイスは割込み要求を発生した直後に次の動作コマンドを実行することができ、周辺デバイスの動作効率を向上させることができる。
【００２４】
ここで、前記動作コマンドは割込み要求の出力先指定を含み、前記切り替え手段は前記出力先指定に従い前記スイッチを切り替えるようにしてもよい。
【００２５】
この構成によれば、第１の周辺デバイスは動作コマンド毎に割込み要求の出力先を動的に切り替えることができる。
【００２６】
ここで、前記第１の周辺デバイスおよび前記第２の周辺デバイスの一方は、さらに、動作コマンドに対応する処理完了時に発生した割込み要求をキューとして保持する割込み要求保持手段を備えるようにしてもよい。
【００２７】
この構成によれば、第１の周辺デバイスまたは第２の周辺デバイスは割込み要求を複数保持することができるので、割込み要求発生の直後に次の処理を実行することができる。
【００２８】
ここで、前記第１の周辺デバイスは、ダイレクト・メモリ・アクセス・コントローラであってもよい。
【００２９】
この構成によれば、ダイレクト・メモリ・アクセス・コントローラ（ＤＭＡＣと略す。）とＩ／Ｏ周辺デバイス、ＤＭＡＣとＤＳＰ、ＤＭＡＣとＤＭＡＣなど、ＤＭＡＣと第２の周辺デバイスとが同期して動作する場合などに割込み要求を集約することができる。
【００３０】
ここで、前記第２の周辺デバイスは、データを入力または出力する入出力周辺デバイスであり、前記第１の周辺デバイスは、前記２の周辺デバイスからメモリへ、または、前記メモリから前記入出力周辺デバイスへデータを転送し、転送完了時に前記割込み要求を発生するようにしてもよい。
【００３１】
この構成によれば、ＤＭＡＣによるデータ転送と、Ｉ／Ｏ周辺デバイス（第２の周辺デバイス）によるデータ入力またはデータ出力とが連動している場合に、割込み要求を集約することができる。
【００３２】
ここで、前記第１の周辺デバイスは、データ転送が完了する毎に前記割込み要求を発生し、前記切り替え手段は、第２の周辺デバイスに前記割込み要求を出力するようにしてもよい。
【００３３】
ここで、前記割込みコントローラは、前記第１の周辺デバイスから前記第２の周辺デバイスを経由して入力された割込み要求を、前記第２の周辺デバイスの割込み要求として前記ＣＰＵに通知し、前記ＣＰＵは、前記第１の周辺デバイスから前記第２の周辺デバイスおよび前記割込みコントローラを経由して入力された割込み要求に対して、前記第２の周辺デバイスに対する割込み処理を実行するようにしてもよい。
【００３４】
この構成によれば、ＣＰＵは、ＤＭＡＣとＩ／Ｏ周辺デバイスとが連動しているので、ＤＭＡＣとＩ／Ｏ周辺デバイスに対して個別に割込み処理を行なう必要がなく、ＤＭＡＣのみに対して割込み処理をすればよく、ソフトウェアを削減し、ＣＰＵの負荷を低減することができる。
【００３５】
ここで、前記第１の周辺デバイスは、前記ＣＰＵからの動作コマンドをキューとして保持するコマンドキュー手段を有し、動作コマンドに対応する処理完了時に割込み要求を発生し、前記動作コマンドは、前記第２の周辺デバイスとメモリとの間のデータ転送を指示するようにしてもよい。
【００３６】
この構成によれば、第１の周辺デバイスは割込み要求を発生した直後に次の動作コマンドに従って処理を開始することができるので、周辺デバイスの動作効率を向上させることができる。
【００３７】
ここで、前記動作コマンドは割込み要求の出力先指定を含み、前記切り替え手段は前記出力先指定に従い前記スイッチを動的に切り替えるようにしてもよい。
【００３８】
この構成によれば、第１の周辺デバイスは動作コマンド毎に割込み要求の出力先を動的に切り替えることができる。
【００３９】
ここで、前記第２の周辺デバイスは、さらに、前記第１の周辺デバイスからの割込み要求をキューとして保持する割込み要求保持手段を備えてもよい。
【００４０】
この構成によれば、第２の周辺デバイスは割込み要求を複数保持することができるので、割込み要求を発生した直後に次の処理を実行することができる。
【００４１】
ここで、前記第２の周辺デバイスは、オーディオデータを入力または出力するＩ／Ｏ周辺デバイスであってもよい。
【００４２】
また、本発明のオーディオ装置および情報処理方法も、上記と同様の手段を有し、同様の効果を奏する。
【発明の効果】
【００４３】
以上のように、本発明の情報処理装置によれば、ＣＰＵへの割込み要求の削減によりＣＰＵで用意すべきソフトウェアを削減し、ＣＰＵの負荷を低減し、ＣＰＵおよび周辺デバイスの動作効率を向上させることができる。
【００４４】
また、第１の周辺デバイスまたは第２の周辺デバイスは割込み要求を発生した直後に次の処理を実行することができる。
【発明を実施するための最良の形態】
【００４５】
（実施の形態１）
実施の形態１の情報処理装置は、前記複数の周辺デバイスのうちの少なくとも１つの周辺デバイス（周辺デバイスＡ）は、割込み要求の出力先を前記割込みコントローラとするか他の周辺デバイスとするか切り替え可能な切り替え部を備える。これにより、ＣＰＵへの割込み要求を削減し、ＣＰＵで用意すべきソフトウェアを削減し、ＣＰＵの負荷を低減し、ＣＰＵおよび周辺デバイスの動作効率を向上させることを図っている。なお、請求項での第１、第２の周辺デバイスは実施の形態での周辺デバイスＡ、Ｂに対応する。
【００４６】
以下、本発明の実施の形態１を図面に基づいて説明する。
図１は実施の形態１における情報処理装置の構成を示すブロック図である。
【００４７】
同図において情報処理装置は、複数の周辺デバイスを含む周辺デバイス群１と、プログラムを実行するＣＰＵ４と、周辺デバイスからの割込み要求を受け付けてＣＰＵ４に通知する割込みコントローラ３とを備える。周辺デバイス群１は、周辺デバイス１ａ、周辺デバイス１ｂ、周辺デバイス１ｃ等の複数の周辺デバイスを含む。以下では、周辺デバイス１ａ、１ｂ、１ｃを単に周辺デバイスＡ、周辺デバイスＢ、周辺デバイスＣと呼ぶ。
【００４８】
周辺デバイスＡは、割込み要求の出力先を前記割込みコントローラ３とするか他の周辺デバイスとするか切り替え可能な切り替え部２ａを含む。周辺デバイスＢ、周辺デバイスＣも同様の切り替え部２ｂ、２ｃを含む。
【００４９】
複数の周辺デバイスのうち２つ以上が切り替え部を備えていればよい。
図２は、切り替え部２ａの構成例を示すブロック図である。
【００５０】
同図のように切り替え部２ａは、スイッチ２１（ＳＷ２１と略す。）と、レジスタ２２とを備える。
【００５１】
レジスタ２２は、ＣＰＵ４から書き込み可能であり、割込み要求の出力先を指定する制御データを保持する。ＣＰＵ４は、周辺デバイスの種類や、動作設定に応じて割込み要求の出力先を制御データとして指定する。
【００５２】
ＳＷ２１は、レジスタ２２に書き込まれた制御データに従って割込み要求の出力先を切り替える。
【００５３】
以下、実施の形態１の動作について説明する。
周辺デバイスＡにおいて発生する割込み要求は、切り替え部２ａにより指定される周辺デバイスＢもしく割込みコントローラ３へ出力される。
【００５４】
周辺デバイスＡから出力された割込み要求が周辺デバイスＢへ出力された場合、周辺デバイスＢは割込み要求に対応する処理を実行するか、もしくは周辺デバイスＢが有する切り替え部２ｂにより、周辺デバイス１の１ａもしくは割込みコントローラ３へ割込み要求を出力する。
【００５５】
周辺デバイスＡまたはＢから出力された割込み要求が割込みコントローラ３へ出力された場合、割込み要求はＣＰＵ４へ出力される。
【００５６】
このとき、ＣＰＵ４は、周辺デバイスＡから周辺デバイスＢおよび割込みコントローラ３を経由して入力された割込み要求に対して、周辺デバイスＢに対する割込み処理を実行する。
【００５７】
このとき、割込みコントローラ３は、周辺デバイスＡから周辺デバイスＢを経由して入力された割込み要求を、周辺デバイスＢの割込み要求としてＣＰＵ４に通知する。
【００５８】
ＣＰＵ４においては、割込み要求が周辺デバイスＡから出力されているのであれば、周辺デバイスＡに対する割込み処理を実行し、また周辺デバイスＢから割込み要求が出力されているのであれば、周辺デバイスＢに対する割込み処理を実行する。
【００５９】
なお、周辺デバイスＡが割込み要求を出力する先は、周辺デバイスＣなど他の複数の周辺デバイスに出力をしてもよい。
【００６０】
ここで、周辺デバイスＡ、Ｂの具体的なケースについて例を挙げて説明する。
第１のケースは、周辺デバイスＡと周辺デバイスＢが連動してデータを処理するケースである。
【００６１】
例えば、本情報処理装置がオーディオデータの符号化および復号化を行なうオーディオ装置である場合を説明する。周辺デバイスＡはメモリから周辺デバイスＢにオーディオデータを転送するダイレクト・メモリ・アクセス・コントローラ（ＤＭＡＣと略す。）であり、周辺デバイスＢが周辺デバイスＡにより転送されたオーディオデータを外部に出力するＩ／Ｏ周辺デバイスである。
【００６２】
あるいは、周辺デバイスＡは周辺デバイスＢからメモリにデータを転送するＤＭＡＣであり、周辺デバイスＢが外部からオーディオデータを入力するＩ／Ｏ周辺デバイスである。このケースでは、周辺デバイスＡと周辺デバイスＢのそれぞれの割込み要求を一本化することができる。
【００６３】
つまり、周辺デバイスＡと周辺デバイスＢはデータ処理の上流と下流（またはその逆）の関係にあり、連動しているので、本実施の形態では周辺デバイスＡと周辺デバイスＢそれぞれの割込み要求は一本に集約している。また、ＣＰＵ４は、上流および下流の一方に対して割込み処理をすれば、他方の割込み要求も満たされるので、ＣＰＵで用意すべきソフトウェアを削減することができる。
【００６４】
第２のケースは、周辺デバイスＡと周辺デバイスＢが同期してデータを処理するケースである。
【００６５】
例えば、周辺デバイスＡと周辺デバイスＢは、それぞれデータを入力するＩ／Ｏ周辺デバイスであり、データ入力の周期が同じである。あるいは、周辺デバイスＡと周辺デバイスＢは、それぞれデータを入力または出力するＩ／Ｏ周辺デバイスであり、入力または出力の周期が同じである。
【００６６】
このケースでは、例えば、英語と日本語など２つのオーディオデータを並列に入力または出力する場合など、周辺デバイスＡと周辺デバイスＢは個別に異なるデータを処理する関係であるが、データの周期が同じであれば、割込み要求を兼用させることができる。
【００６７】
以上説明してきたように、実施の形態１における情報処理装置によれば、特定の周辺デバイス（周辺デバイスＡ）からの割込み要求を前記他の周辺デバイス（周辺デバイスＢ）へ出力することにより、前記特定の周辺デバイス（周辺デバイスＡ）からＣＰＵへの割込み要求を出力しない。ＣＰＵ４では周辺デバイスＡ、Ｂ個別の割込み処理プログラムを用意する必要がなくなることでソフトウェアの簡略を図ることができるという効果がある。
【００６８】
なお、周辺デバイスＢは、周辺デバイスＡから割込み要求が入力されたとき、当該割込み要求に対応する処理として、ＣＰＵ４の代わりに周辺デバイスＡの割込み要求を満たす処理を実行してもよい。
【００６９】
また、周辺デバイスＡおよび周辺デバイスＢが連動して処理するデータは、オーディオデータに限らずビデオデータ、ストリームデータ、放送データなどでもよい。
【００７０】
（実施の形態２）
本実施の形態では、周辺デバイスＢが、周辺デバイスＡから入力される割込み要求と、周辺デバイスＢで発生した割込み要求との論理演算を行い、論理演算の結果に従って割込み要求を割込みコントローラに出力する情報処理装置について説明する。本実施の形態における情報処理装置では、複数の割込み要求を論理演算により集約し、しかも割込みコントローラに出力するタイミングを適切に調整することが可能になる。
【００７１】
以下、本発明の実施の形態２を図面に基づいて説明する。
図３は本実施の形態２における情報処理装置の構成を示すブロック図である。同図は、図１と比較して、周辺デバイス群１の代わりに周辺デバイス群１１を備える点が異なっている。実施の形態１と同一部分については同じ符号を付して説明を省略し、以下異なる部分を中心に説明する。
【００７２】
周辺デバイス群１１は、周辺デバイス１ａの代わりに周辺デバイス１１ａを備える。なお、周辺デバイス１ｂ、１ｃも周辺デバイス１１ａと同様の構成であってもよい。
【００７３】
周辺デバイス１１ａは、切り替え部１２ａと論理演算部１５とを備える。
切り替え部１２ａは、切り替え部２ａと同様であるので省略する。
【００７４】
論理演算部１５は、切り替え部１２ａ、切り替え部２ｂおよび切り替え部２ｃからの割込み要求に対して、論理演算を行い、論理演算の結果に従って割込み要求を割込みコントローラ３に出力する。ここでいう論理演算は、論理和、論理積、排他的論理輪などでよい。
【００７５】
例えば、論理演算が論理和であれば、複数の割込み要求のうち最も早い時点で発生した割込み要求のタイミングで割込み要求を割込みコントローラ３に出力する。論理演算が論理積であれば、複数の割込み要求のうち最も遅い時点で発生した割込み要求のタイミングで割込み要求を割込みコントローラ３に出力する。なお、論理演算部１５は、複数の割込み要求のうち特定の１つを選択するセレクタでもよい。
【００７６】
すなわち、周辺デバイス群１１の周辺デバイス１１ａ、周辺デバイス１ｂおよび周辺デバイス１ｃからの割込み要求に対して、論理演算を実施することにより、複数の割込み要求を１つの割込み要求として集約し、周辺デバイス群１１の１１ａから割込みコントローラ３へ出力する。
【００７７】
割込みコントローラ３は、周辺デバイス群１１の１１ａからの割込み要求としてＣＰＵ４へ通知する。
【００７８】
割込み要求を受けたＣＰＵ４は、周辺デバイス群１１の１１ａに対して割込み要求に応じた処理を実行する。
【００７９】
以上説明したように実施の形態２における情報処理装置によれば、複数の割込み要求を論理演算により集約し、しかも割込みコントローラに出力するタイミングを適切に調整することが可能になる。
【００８０】
なお、図３において、周辺デバイス１ｂ、１ｃは、周辺デバイス１１ａと同じく切り替え部１２ａおよび論理演算部１５を備える構成としてもよい。
【００８１】
（実施の形態３）
本実施の形態では、周辺デバイスがＣＰＵからの動作コマンドをキューとして保持するコマンドキュー部を有し、動作コマンドに対応する処理完了時に割込み要求を発生する方法処理装置について説明する。この情報処理装置によれば、周辺デバイスは割込み要求を発生した直後に次の動作コマンドを実行することができ、周辺デバイスの動作効率を向上させることができる。
【００８２】
以下、本発明の実施の形態３を図面に基づいて説明する。
図４は本実施の形態における情報処理装置の構成を示すブロック図である。同図は、図１と比較して、周辺デバイス１ａの代わりに周辺デバイス２１ａを備える点が異なっている。実施の形態１と同一部分については同じ符号を付して説明を省略し、以下異なる部分を中心に説明する。
【００８３】
周辺デバイス２１ａは、周辺デバイス１ａに対してコマンドキュー部２６が追加されている点が異なっている。これ以外は同じであるので説明を省略する。
【００８４】
コマンドキュー部２６は、ＣＰＵ４からの複数の動作コマンドをキューとして保持する。例えば、周辺デバイス２１ａがＤＭＡＣである場合、コマンドキュー部２６に保持される動作コマンド（図中のコマンドＡ等）は、メモリと周辺デバイス１ｂとの間でのデータ転送を指示する転送要求であり、転送元アドレスまたは転送先アドレスや、転送データ長等を含む。
【００８５】
ＣＰＵ４は、周辺デバイス２１ａの処理実行中あるいは処理完了後において、周辺デバイス２１ａへの転送要求が発生した場合、その転送要求を動作コマンドとしてコマンドキュー部２６に格納する。
【００８６】
周辺デバイス２１ａは、動作コマンドに従って処理を完了すれば割込み要求を発生し、その時点で次の動作コマンドがコマンドキュー部２６に存在している場合、直ちに処理を開始することができる。これにより、周辺デバイスの動作効率を向上させることができる。
【００８７】
なお、コマンドキュー部２６に保持された動作コマンドはＣＰＵ４から任意のタイミングで設定することが可能である。
【００８８】
なお、図４において、周辺デバイス１ｂは、周辺デバイス２１ａと同じく切り替え部１２ａおよびコマンドキュー部２６を備える構成としてもよい。
【００８９】
（実施の形態４）
本実施の形態では、実施の形態３の変形例として、上記の動作コマンドがさらに割込み要求の出力先指定を含み、切り替え部が動作コマンド中の出力先指定に従い出力先を動的に切り替える情報処理装置について説明する。
【００９０】
以下、本発明の実施の形態４を図面に基づいて説明する。
図５は本実施の形態における情報処理装置の構成を示すブロック図である。同図は、図４と比較して、周辺デバイス２１ａの代わりに周辺デバイス３１ａを備える点と、周辺デバイス１ｃを明示している点とが異なっている。実施の形態１と同一部分については同じ符号を付して説明を省略し、以下異なる部分を中心に説明する。
【００９１】
周辺デバイス３１ａは、コマンドキュー部２６の代わりにコマンドキュー部３６を備える点と、切り替え部２ａの代わりに切り替え部３ａを備える点とが異なっている。
【００９２】
コマンドキュー部３６は、割込み要求の出力先指定を含む動作コマンドをキューとして保持する。
【００９３】
図６は、切り替え部３ａの構成例を示すブロック図である。同図のように切り替え部３ａは、コマンドキュー部３６からの制御信号に従って切り替えるスイッチ２１（ＳＷ２１と略す。）を備える。
【００９４】
コマンドキュー部３６は、コマンドキュー部２６の機能に加えて、先頭の動作コマンドの一部つまり出力先指定の部分を制御信号としてＳＷ２１に出力する。同図では、動作コマンドは、動作コマンド本体（コマンドＡ）と、出力先指定（ｓｗＡ）とを含む。先頭の動作コマンドの出力先指定（ｓｗＡ）は、制御信号としてＳＷ２１に出力される。
【００９５】
ＳＷ２１は、制御信号に従う出力先に割込み要求を出力する。
ＣＰＵ４は、周辺デバイスの種類や、動作設定に応じて割込み要求の出力先を動作コマンドの一部に指定する。
【００９６】
以上の構成によれば、コマンドキュー部３６における動作コマンド毎に、割込み要求切り替え部３ａが動的に出力先を変更することができる。
【００９７】
なお、ＣＰＵ４は、コマンドキュー部３６に動作コマンドを任意のタイミングで設定することが可能である。また、ＣＰＵが周辺デバイス３１ａの実行終了や周辺デバイス１ｂ、１ｃから割込み要求によりコマンドキュー部３６から処理済の動作コマンドをデキューしてもよい。
【００９８】
また、図５において、周辺デバイス１ｂ、１ｃは、周辺デバイス３１ａと同じく切り替え部３ａおよびコマンドキュー部３６を備える構成としてもよい。
【００９９】
（実施の形態５）
本実施の形態では、周辺デバイスＢが、周辺デバイスＡからの割込み要求をキューとして保持する割込み要求キュー部を備える情報処理装置について説明する。この情報処理装置によれば、周辺デバイスＢは割込み要求を複数保持することができるので、割込み要求を発生した直後に次の処理を開始することができる。
【０１００】
以下、本発明の実施の形態５を図面に基づいて説明する。
図７は本実施の形態における情報処理装置の構成を示すブロック図である。同図は、図５と比較して、周辺デバイス１ｂの代わりに周辺デバイス４１ｂを備える点と、周辺デバイス１ｃを明示していない点とが異なっている。実施の形態４と同一部分については同じ符号を付して説明を省略し、以下異なる部分を中心に説明する。
【０１０１】
周辺デバイス４１ｂは、周辺デバイス１ｂに対して、割込み要求キュー部４７ｂが追加されている点が異なっている。切り替え部２ｂは図示を省略してある。
【０１０２】
割込み要求キュー部４７ｂは、周辺デバイスＡからの割込み要求をキューとして保持する。割込み要求キュー部４７ｂにおけるエンキューおよびデキューはＣＰＵ４により任意に可能である。
【０１０３】
この構成によれば、周辺デバイス３１ａから出力された割込み要求は、割込み要求キュー部４７ｂは、空きがある限り、待ち時間を発生せずに直ちに受け取ることができる。周辺デバイス３１ａは、割込み要求の受け取りを待つことなく、直ちに次の動作コマンドの処理を開始することができる。周辺デバイス３１ａは、割込み要求の受け取り待ちが発生しないので、動作効率を改善することができる。
【０１０４】
なお、割込み要求キュー４７ｂは、周辺デバイス３１ａ以外の周辺デバイスからの割込み要求についても保持しても良い。
【０１０５】
また、周辺デバイス４１ｂも動作コマンドキュー部３６と切り替え部３ａとを備える構成としてもよい。全周辺デバイスがこのような構成としてもよい。
【０１０６】
なお、上記各実施の形態で示した周辺デバイスは一例であり、周辺デバイス内部の構成要素のうち矛盾しない組み合わせを備える周辺デバイスとしてもよい。
【産業上の利用可能性】
【０１０７】
本発明は、プログラムを実行するＣＰＵと複数の周辺デバイスと周辺デバイスからの割込み要求を受け付けてＣＰＵに通知する割込みコントローラとを備える情報処理装置に適しており、具体的には、オーディオデータの符号化および復号化を行なうオーディオ装置、ビデオデータやストリームデータの符号化および復号化を行なうビデオ装置等の情報処理装置に適している。
【図面の簡単な説明】
【０１０８】
【図１】本発明の実施の形態１による情報処理装置の構成を示すブロック図である。
【図２】切り替え部の構成を示すブロック図である。
【図３】本発明の実施の形態２による情報処理装置の構成を示すブロック図である。
【図４】本発明の実施の形態３による情報処理装置の構成を示すブロック図である。
【図５】本発明の実施の形態４による情報処理装置の構成を示すブロック図である。
【図６】切り替え部の構成を示すブロック図である。
【図７】本発明の実施の形態５による情報処理装置の構成を示すブロック図である。
【図８】従来技術による情報処理装置の構成を示すブロック図である。
【符号の説明】
【０１０９】
１ａ、１１ａ、２１ａ、３１ａ  周辺デバイス
１ｂ、４１ｂ  周辺デバイス
１ｃ 周辺デバイス
２ａ〜２ｃ、３ａ〜３ｃ  切り替え部
３  割込みコントローラ
４  ＣＰＵ
１５  論理演算部
２１  スイッチ
２６、３６  コマンドキュー部
４７ｂ  割込み要求キュー部
【図１】
2009048573.tif 000003
【図２】
2009048573.tif 000004
【図３】
2009048573.tif 000005
【図４】
2009048573.tif 000006
【図５】
2009048573.tif 000007
【図６】
2009048573.tif 000008
【図７】
2009048573.tif 000009
【図８】
2009048573.tif 000010