(57)【要約】      （修正有）【課題】  処理時間を短縮することができ、消費電力を容易に低減することができる情報処理システム及び情報処理システムの制御方法を提供する。【解決手段】  情報処理システム１は、バス３と、ＵＳＢ用Ｉ／Ｏ３０と、ＵＡＲＴ用Ｉ／Ｏ４０と、ＤＭＡＣ２０と、バス調停回路７０と、クロック分周回路８０とを備える。ＵＳＢ用Ｉ／Ｏ３０及びＵＡＲＴ用Ｉ／Ｏ４０は、ＤＭＡ要求信号を出力する。ＤＭＡＣ２０は、ＤＭＡ要求信号に基づいて、バス権要求第１信号を出力する。バス調停回路７０は、バス権要求第１信号に基づいて、バス権許可第１信号を出力する。ＤＭＡＣ２０は、バス権許可第１信号に基づいて、ＤＭＡ許可信号を入出力デバイスに出力する。クロック分周回路８０は、バス権許可第１信号とＤＭＡ許可信号とに基づいて、クロック周波数を決定する。【選択図】      図１
2007128196.tif 000002
【特許請求の範囲】
【請求項１】
データ転送が行われるバスと、
前記バスに接続され、外部機器からの入出力のインターフェースとなる複数の入出力デバイスと、
前記バスに接続され、ダイレクトメモリアクセス転送を制御するＤＭＡ制御部と、
前記バスに接続され、前記バスを使用する権利であるバス権を調停するバス調停回路と、
前記バスに接続され、クロック周波数を切り替えるクロック切り替え回路と、
を備え、
前記入出力デバイスは、前記ダイレクトメモリアクセス転送を要求する信号であるＤＭＡ要求信号を出力し、
前記ＤＭＡ制御部は、前記ＤＭＡ要求信号に基づいて、バス権を要求する信号であるバス権要求第１信号を出力し、
前記バス調停回路は、前記バス権要求第１信号に基づいて、前記ＤＭＡ制御部にバス権を許可する信号であるバス権許可第１信号を出力し、
前記ＤＭＡ制御部は、前記バス権許可第１信号に基づいて、前記ダイレクトメモリアクセス転送を許可する信号であるＤＭＡ許可信号を前記入出力デバイスに出力し、
前記クロック切り替え回路は、前記バス権許可第１信号と前記ＤＭＡ許可信号とに基づいて、前記クロック周波数を決定する、
情報処理システム。
【請求項２】
前記クロック切り替え回路は、
前記バス権許可第１信号と前記ＤＭＡ許可信号とに基づいて、前記クロック周波数を決定する信号である周波数制御信号を生成する制御信号生成部と、
第１クロック信号が入力され、前記周波数制御信号に基づいて、前記第１クロック信号を分周して第２クロック信号を生成するクロック生成部と、
を有する、
請求項１に記載の情報処理システム。
【請求項３】
前記バスに接続され、ソフトウェアからの要求に基づいて、バス権を要求する信号であるバス権要求第２信号を出力する中央処理部をさらに備え、
前記バス調停回路は、前記バス権要求第１信号と前記バス権要求第２信号とに基づいて、前記中央処理部にバス権を許可する信号であるバス権許可第２信号と、前記バス権許可第１信号とのいずれかを出力する、
請求項１又は２に記載の情報処理システム。
【請求項４】
前記クロック切り替え回路の前記制御信号生成部は、前記バス権許可第１信号及び前記バス権許可第２信号の一方と、前記ＤＭＡ許可信号とに基づいて、前記周波数制御信号を生成する、
請求項３に記載の情報処理システム。
【請求項５】
前記クロック切り替え回路の前記制御信号生成部は、前記バス権許可第１信号と前記ＤＭＡ許可信号と前記周波数制御信号とを対応付けた情報である第１対応付け情報を記憶しており、前記バス権許可第１信号及び前記ＤＭＡ許可信号と前記第１対応付け情報とに基づいて前記周波数制御信号を生成し、
前記クロック切り替え回路の前記クロック生成部は、前記周波数制御信号とクロック周波数とを対応付けた情報である第２対応付け情報を記憶しており、前記周波数制御信号と前記第２対応付け情報とに基づいてクロック周波数を決定し、
前記クロック切り替え回路は、前記第１対応付け情報を書き換える周波数設定レジスタをさらに有する、
請求項２に記載の情報処理システム。
【請求項６】
前記クロック切り替え回路の前記周波数設定レジスタは、動作中に前記第１対応付け情報を書き換える、
請求項５に記載の情報処理システム。
【請求項７】
データ転送が行われるバスと、前記バスに接続され外部機器からの入出力のインターフェースとなる複数の入出力デバイスと、前記バスに接続されダイレクトメモリアクセス転送を制御するＤＭＡ制御部と、前記バスに接続され前記バスを使用する権利であるバス権を調停するバス調停回路と、前記バスに接続されクロック周波数を切り替えるクロック切り替え回路とを有する情報処理システムの制御方法であって、
ダイレクトメモリアクセス転送を要求する信号であるＤＭＡ要求信号が出力される第１ステップと、
前記ＤＭＡ要求信号に基づいて、バス権を要求する信号であるバス権要求第１信号が出力される第２ステップと、
前記バス権要求第１信号に基づいて、前記ＤＭＡ制御部にバス権を許可する信号であるバス権許可第１信号が出力される第３ステップと、
前記バス権許可第１信号に基づいて、前記ダイレクトメモリアクセス転送を許可する信号であるＤＭＡ許可信号が出力される第４ステップと、
前記バス権許可第１信号と前記ＤＭＡ許可信号とに基づいて、前記クロック周波数が決定される第５ステップと、
を備えた、
情報処理システムの制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理システム及び情報処理システムの制御方法に関する。
【背景技術】
【０００２】
従来から、ハードウェアの省電力化手法として、クロック周波数を必要に応じて低減する情報処理システムが提案されている（例えば、特許文献１，特許文献２参照）。
【特許文献１】特開２００３−３４５４５５（第１−６頁、第１−４図）
【特許文献２】特開２００３−１４１０６１（第１−６頁、第１−６図）
【発明の開示】
【発明が解決しようとする課題】
【０００３】
特許文献１の技術や特許文献２の技術では、ＣＰＵ（中央処理装置）がシステムのクロック周波数を設定している。しかし、ＣＰＵは、ソフトウェアに基づいて処理を行うので、クロック周波数を変える場合にソフトウェアを切り替える時間が必要であり、その分が遅延時間となり高速な処理が困難になる傾向にある。
【０００４】
一方、ダイレクトメモリアクセスコントローラ（以下、「ＤＭＡＣ」とする）がシステムのクロック周波数を設定すれば、ソフトウェアを切り替える時間が不要になるので、処理時間を短縮することができる。しかし、この場合、ＤＭＡＣが処理を行う場合に、ＤＭＡＣの数の自由度でしかクロック周波数が決定されない傾向にあるので、クロック周波数を十分に抑えることができないことがあり、消費電力を低減することが困難なことがある。
【０００５】
本発明の課題は、処理時間を短縮することができ、消費電力を容易に低減することができる情報処理システム及び情報処理システムの制御方法を提供することにある。
【課題を解決するための手段】
【０００６】
本発明に係る情報処理システムは、バスと、複数の入出力デバイスと、ＤＭＡ制御部と、バス調停回路と、クロック切り替え回路とを備える。バスでは、データ転送が行われる。入出力デバイスは、バスに接続されている。入出力デバイスは、外部機器からの入出力のインターフェースとなる。ＤＭＡ制御部は、バスに接続されている。ＤＭＡ制御部は、ダイレクトメモリアクセス転送を制御する。バス調停回路は、バスに接続されている。バス調停回路は、バス権を調停する。バス権は、バスを使用する権利である。クロック切り替え回路は、バスに接続されている。クロック切り替え回路は、クロック周波数を切り替える。入出力デバイスは、ＤＭＡ要求信号を出力する。ＤＭＡ要求信号は、ダイレクトメモリアクセス転送を要求する信号である。ＤＭＡ制御部は、ＤＭＡ要求信号に基づいて、バス権要求第１信号を出力する。バス権要求第１信号は、バス権を要求する信号である。バス調停回路は、バス権要求第１信号に基づいて、バス権許可第１信号を出力する。バス権許可第１信号は、ＤＭＡ制御部にバス権を許可する信号である。ＤＭＡ制御部は、バス権許可第１信号に基づいて、ＤＭＡ許可信号を入出力デバイスに出力する。ＤＭＡ許可信号は、ダイレクトメモリアクセス転送を許可する信号である。クロック切り替え回路は、バス権許可第１信号とＤＭＡ許可信号とに基づいて、クロック周波数を決定する。
【０００７】
この情報処理システムでは、ＤＭＡ制御部は、入出力デバイスにＤＭＡ許可信号を出力する。これにより、入出力デバイスが中央処理部を介さずに直接メモリにアクセスできる。このため、ソフトの切り替えに伴う遅延時間の発生を避けることができるので、処理時間を短縮することができる。
【０００８】
また、クロック切り替え回路は、バス権許可第１信号とＤＭＡ許可信号とに基づいて、クロック周波数を決定する。これにより、ＤＭＡ制御部にバス権が与えられた場合に、ＤＭＡ制御部の数よりも多くの自由度でクロック周波数を決定することができるので、クロック周波数を必要最低限に抑えて消費電力を容易に低減することができる。
【０００９】
このように、処理時間を短縮することができ、消費電力を容易に低減することができる。
【００１０】
本発明に係る情報処理システムの制御方法は、バスと複数の入出力デバイスとＤＭＡ制御部とバス調停回路とクロック切り替え回路とを有する情報処理システムの制御方法であって、第１ステップと、第２ステップと、第３ステップと、第４ステップと、第５ステップとを備える。バスでは、データ転送が行われる。入出力デバイスは、バスに接続されている。入出力デバイスは、外部機器からの入出力のインターフェースとなる。ＤＭＡ制御部は、バスに接続されている。ＤＭＡ制御部は、ダイレクトメモリアクセス転送を制御する。バス調停回路は、バスに接続されている。バス調停回路は、バス権を調停する。バス権は、バスを使用する権利である。クロック切り替え回路は、バスに接続されている。クロック切り替え回路は、クロック周波数を切り替える。第１ステップでは、ＤＭＡ要求信号が出力される。ＤＭＡ要求信号は、ダイレクトメモリアクセス転送を要求する信号である。第２ステップでは、ＤＭＡ要求信号に基づいて、バス権要求第１信号が出力される。バス権要求第１信号は、バス権を要求する信号である。第３ステップでは、バス権要求第１信号に基づいて、バス権許可第１信号が出力される。バス権許可第１信号は、ＤＭＡ制御部にバス権を許可する信号である。第４ステップでは、バス権許可第１信号に基づいて、ＤＭＡ許可信号が出力される。ＤＭＡ許可信号は、ダイレクトメモリアクセス転送を許可する信号である。第５ステップでは、バス権許可第１信号とＤＭＡ許可信号とに基づいて、クロック周波数が決定される。
【００１１】
この情報処理システムの制御方法では、第４ステップにおいて、バス権許可第１信号に基づいて、ＤＭＡ許可信号が出力される。これにより、ＤＭＡ制御部にバス権が与えられた場合に、入出力デバイスが中央処理部を介さずに直接メモリにアクセスできる。このため、ソフトの切り替えに伴う遅延時間の発生を避けることができるので、処理時間を短縮することができる。
【００１２】
また、第５ステップにおいて、バス権許可第１信号とＤＭＡ許可信号とに基づいて、クロック周波数が決定される。これにより、ＤＭＡ制御部の数よりも多くの自由度でクロック周波数を決定することができるので、クロック周波数を必要最低限に抑えて消費電力を容易に低減することができる。
【００１３】
このように、処理時間を短縮することができ、消費電力を容易に低減することができる。
【発明の効果】
【００１４】
本発明に係る情報処理システムでは、処理時間を短縮することができ、消費電力を容易に低減することができる。
【００１５】
本発明に係る情報処理システムの制御方法では、処理時間を短縮することができ、消費電力を容易に低減することができる。
【発明を実施するための最良の形態】
【００１６】
＜第１実施形態＞
本発明の第１実施形態に係る情報処理システムの構成図を図１に示す。図１では、信号の流れが破線の矢印で示されている。
【００１７】
（情報処理システムの概略構成）
情報処理システム１は、主として、バス３，ＣＰＵ１０，ＤＭＡＣ２０，ＵＳＢ（Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ）用Ｉ／Ｏ３０，ＵＡＲＴ（Ｕｎｉｖｅｒｓａｌ  Ａｓｙｎｃｈｒｏｎｏｕｓ  Ｒｅｃｅｉｖｅｒ  Ｔｒａｎｓｍｉｔｔｅｒ）用Ｉ／Ｏ４０，ＲＡＭ（Ｒａｎｄａｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）５０，ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）６０，バス調停回路７０及びクロック分周回路８０を備える。
【００１８】
ＣＰＵ１０，ＤＭＡＣ２０，ＵＳＢ用Ｉ／Ｏ３０，ＵＡＲＴ用Ｉ／Ｏ４０，ＲＡＭ５０，ＲＯＭ６０，バス調停回路７０及びクロック分周回路８０は、バス３にブランチ状に接続されている。ここで、ＣＰＵ１０及びＤＭＡＣ２０がマスターデバイスであり、ＵＳＢ用Ｉ／Ｏ３０，ＵＡＲＴ用Ｉ／Ｏ４０，ＲＡＭ５０及びＲＯＭ６０がスレーブデバイスである。
【００１９】
バス３は、ＣＰＵ１０，ＤＭＡＣ２０，ＵＳＢ用Ｉ／Ｏ３０，ＵＡＲＴ用Ｉ／Ｏ４０，ＲＡＭ５０，ＲＯＭ６０，バス調停回路７０及びクロック分周回路８０を互いに接続している。バス３では、ＣＰＵ１０，ＤＭＡＣ２０，ＵＳＢ用Ｉ／Ｏ３０，ＵＡＲＴ用Ｉ／Ｏ４０，ＲＡＭ５０，ＲＯＭ６０，バス調停回路７０及びクロック分周回路８０の間で、データ転送が行われる。バス３は、データ転送が円滑に行われるのに十分な幅を有していることが望ましく、例えば、８ビット幅を有している。
【００２０】
ＣＰＵ１０は、ソフトウェアに基づいて処理を行う。ＣＰＵ１０は、クロック周波数を変える場合にソフトウェアを切り替える時間が必要である。
【００２１】
ＤＭＡＣ２０は、ダイレクトメモリアクセス（以下、「ＤＭＡ」とする）転送を制御する。ここで、ＤＭＡ転送は、ＣＰＵ１０を介さずに、ＵＳＢ用Ｉ／Ｏ３０やＵＡＲＴ用Ｉ／Ｏ４０などの入出力デバイスと、ＲＡＭ５０やＲＯＭ６０などのメモリとの間で行われるデータ転送である。
【００２２】
ＵＳＢ用Ｉ／Ｏ３０は、ＵＳＢ機器からの入出力のインターフェースとなる入出力デバイスである。ＵＳＢ機器は、高速（例えば、４８０Ｍｂｐｓ）でのデータ転送する能力を有している。そのため、ＵＳＢ用Ｉ／Ｏ３０とＲＡＭ５０及びＲＯＭ６０との間のデータ転送も高速で行われる必要があり、システムのクロック周波数も高速（例えば、１００ＭＨｚ）になっている必要がある。
【００２３】
ＵＡＲＴ用Ｉ／Ｏ４０は、ＵＡＲＴ機器（例えば、モデム）からの入出力のインターフェースとなる入出力デバイスである。ＵＡＲＴ機器は、低速（例えば、９．６ｋｂｐｓ）でのデータ転送する能力しか有していない。そのため、ＵＡＲＴ用Ｉ／Ｏ４０とＲＡＭ５０及びＲＯＭ６０との間のデータ転送も低速で行われれば十分であり、システムのクロック周波数も低速（例えば、１０ＭＨｚ）で十分である。
【００２４】
ＲＯＭ６０は、読み出し専用のメモリであり、例えば、ＣＰＵ１０に処理を行わせるプログラム（ソフトウェア）が記憶されている。
【００２５】
ＲＡＭ５０は、読み書き可能なメモリであり、主として、データが一時的に記憶されるのに使用される。例えば、ＲＡＭ５０は、ＲＯＭ６０から読み出されたプログラムなどのデータを一時的に記憶する。あるいは、例えば、ＲＡＭ５０は、ＵＳＢ用Ｉ／Ｏ３０やＵＡＲＴ用Ｉ／Ｏ４０から入力されたデータを一時的に記憶する。
【００２６】
バス調停回路７０は、バス権を調停する。ここで、バス権は、バス３を使用する権利である。これにより、複数のマスターデバイス（例えば、ＣＰＵ１０とＤＭＡＣ２０と）がバス３にアクセスを要求する場合に、優先度の高いバス権を持つマスターデバイスがバス権を取得するようになるので、バス３上でデータが衝突することが回避される。
【００２７】
クロック分周回路８０は、クロック周波数を切り替える。このクロック周波数は、システムのほぼ全体におけるクロック信号の周波数である。クロック周波数が高くされれば、ＣＰＵ１０，ＤＭＡＣ２０，ＵＳＢ用Ｉ／Ｏ３０，ＵＡＲＴ用Ｉ／Ｏ４０，ＲＡＭ５０，ＲＯＭ６０及びバス調停回路７０も高速で動作するようになる。クロック周波数が低くされれば、ＣＰＵ１０，ＤＭＡＣ２０，ＵＳＢ用Ｉ／Ｏ３０，ＵＡＲＴ用Ｉ／Ｏ４０，ＲＡＭ５０，ＲＯＭ６０及びバス調停回路７０も低速で動作するようになる。
【００２８】
（情報処理システムの概略動作）
（（高速動作））
ＵＳＢ用Ｉ／Ｏ３０にＵＳＢ機器が接続され、ＵＡＲＴ用Ｉ／Ｏ４０にＵＡＲＴ機器が接続されていない場合を一例として説明する。
【００２９】
このとき、ＵＳＢ用Ｉ／Ｏ３０は、バス３を介して、ＤＭＡ要求第１信号ＤＲＥＱ１をＤＭＡＣ２０へ出力する。ここで、ＤＭＡ要求第１信号ＤＲＥＱ１は、ＵＳＢ用Ｉ／Ｏ３０とＲＡＭ５０やＲＯＭ６０との間のＤＭＡ転送を要求する信号である。ＤＭＡＣ２０は、ＤＭＡ要求第１信号ＤＲＥＱ１を受け取る。
【００３０】
ＤＭＡＣ２０は、ＤＭＡ要求第１信号ＤＲＥＱ１に基づいて、バス３を介して、バス権要求第１信号ＲＥＱＤをバス調停回路７０へ出力する。バス調停回路７０は、バス権要求第１信号ＲＥＱＤを受け取る。
【００３１】
一方、ＣＰＵ１０は、ソフトウェアからの要求に基づいて、バス３を介して、バス権要求第２信号ＲＥＱＣをバス調停回路７０へ出力する。バス調停回路７０は、バス権要求第２信号ＲＥＱＣを受け取る。
【００３２】
バス調停回路７０は、バス権要求第１信号ＲＥＱＤのみを受け取った場合、バス権要求第１信号ＲＥＱＤに基づいて、バス３を介して、バス権許可第１信号ＧＲＡＮＴＤをＤＭＡＣ２０及びクロック分周回路８０へ出力する。あるいは、バス調停回路７０は、バス権要求第２信号ＲＥＱＣのみを受け取った場合、バス権要求第２信号ＲＥＱＣに基づいて、バス３を介して、バス権許可第２信号ＧＲＡＮＴＣをＣＰＵ１０及びクロック分周回路８０へ出力する。あるいは、バス調停回路７０は、バス権要求第１信号ＲＥＱＤとバス権要求第２信号ＲＥＱＣとを受け取った場合、バス権要求第１信号ＲＥＱＤとバス権要求第２信号ＲＥＱＣとに基づいて、（バス権要求第１信号ＲＥＱＤよりも優先度が高く設定されている）バス権許可第２信号ＧＲＡＮＴＣをＣＰＵ１０及びクロック分周回路８０へ出力する。
【００３３】
ＤＭＡＣ２０は、バス権許可第１信号ＧＲＡＮＴＤを受け取った場合、バス権許可第１信号ＧＲＡＮＴＤに基づいて、バス３を介して、ＤＭＡ許可信号ＤＡＣＫ１をアサートしてＵＳＢ用Ｉ／Ｏ３０へ出力する。これにより、ＵＳＢ用Ｉ／Ｏ３０は、ＣＰＵ１０を介さずに、ＲＡＭ５０やＲＯＭ６０との間でＤＭＡ転送を行うようになる。このため、ソフトウェアの切り替えに伴う遅延時間の発生が避けられ、処理時間は短縮される。
【００３４】
ＣＰＵ１０は、バス権許可第２信号ＧＲＡＮＴＣを受け取った場合、バス権許可第２信号ＧＲＡＮＴＣに基づいて、所定の処理を行う。
【００３５】
クロック分周回路８０は、ＤＭＡ許可第１信号ＤＡＣＫ１，バス権要求第１信号ＲＥＱＤ及びバス権要求第２信号ＲＥＱＣを受け取る。クロック分周回路８０は、ＤＭＡ許可第１信号ＤＡＣＫ１，バス権要求第１信号ＲＥＱＤ及びバス権要求第２信号ＲＥＱＣに基づいて、クロック周波数を決定し、クロック周波数を切り替える。
【００３６】
（（低速動作））
ＵＳＢ用Ｉ／Ｏ３０にＵＳＢ機器が接続されておらず、ＵＡＲＴ用Ｉ／Ｏ４０にＵＡＲＴ機器が接続される場合を一例として説明する。
【００３７】
このとき、ＵＡＲＴ用Ｉ／Ｏ４０は、バス３を介して、ＤＭＡ要求第２信号ＤＲＥＱ２をＤＭＡＣ２０へ出力する。ここで、ＤＭＡ要求第２信号ＤＲＥＱ２は、ＵＡＲＴ用Ｉ／Ｏ４０とＲＡＭ５０やＲＯＭ６０との間のＤＭＡ転送を要求する信号である。ＤＭＡＣ２０は、ＤＭＡ要求第２信号ＤＲＥＱ２を受け取る。
【００３８】
ＤＭＡＣ２０は、ＤＭＡ要求第２信号ＤＲＥＱ２に基づいて、バス３を介して、バス権要求第１信号ＲＥＱＤをバス調停回路７０へ出力する。バス調停回路７０は、バス権要求第１信号ＲＥＱＤを受け取る。
【００３９】
一方、ＣＰＵ１０は、ソフトウェアからの要求に基づいて、バス３を介して、バス権要求第２信号ＲＥＱＣをバス調停回路７０へ出力する。バス調停回路７０は、バス権要求第２信号ＲＥＱＣを受け取る。
【００４０】
バス調停回路７０は、バス権要求第１信号ＲＥＱＤのみを受け取った場合、バス権要求第１信号ＲＥＱＤに基づいて、バス３を介して、バス権許可第１信号ＧＲＡＮＴＤをＤＭＡＣ２０及びクロック分周回路８０へ出力する。あるいは、バス調停回路７０は、バス権要求第２信号ＲＥＱＣのみを受け取った場合、バス権要求第２信号ＲＥＱＣに基づいて、バス３を介して、バス権許可第２信号ＧＲＡＮＴＣをＣＰＵ１０及びクロック分周回路８０へ出力する。あるいは、バス調停回路７０は、バス権要求第１信号ＲＥＱＤとバス権要求第２信号ＲＥＱＣとを受け取った場合、バス権要求第１信号ＲＥＱＤとバス権要求第２信号ＲＥＱＣとに基づいて、（バス権要求第１信号ＲＥＱＤよりも優先度が高く設定されている）バス権許可第２信号ＧＲＡＮＴＣをＣＰＵ１０及びクロック分周回路８０へ出力する。
【００４１】
ＤＭＡＣ２０は、バス権許可第１信号ＧＲＡＮＴＤを受け取った場合、バス権許可第１信号ＧＲＡＮＴＤに基づいて、バス３を介して、ＤＭＡ許可信号ＤＡＣＫ２をアサートしてＵＡＲＴ用Ｉ／Ｏ４０へ出力する。これにより、ＵＡＲＴ用Ｉ／Ｏ４０は、ＣＰＵ１０を介さずに、ＲＡＭ５０やＲＯＭ６０との間でＤＭＡ転送を行うようになる。このため、ソフトウェアの切り替えに伴う遅延時間の発生が避けられ、処理時間は短縮される。
【００４２】
ＣＰＵ１０は、バス権許可第２信号ＧＲＡＮＴＣを受け取った場合、バス権許可第２信号ＧＲＡＮＴＣに基づいて、所定の処理を行う。
【００４３】
クロック分周回路８０は、ＤＭＡ許可第２信号ＤＡＣＫ２，バス権要求第１信号ＲＥＱＤ及びバス権要求第２信号ＲＥＱＣを受け取る。クロック分周回路８０は、ＤＭＡ許可第２信号ＤＡＣＫ２，バス権要求第１信号ＲＥＱＤ及びバス権要求第２信号ＲＥＱＣに基づいて、クロック周波数を決定し、クロック周波数を切り替える。
【００４４】
（クロック分周回路の詳細構成）
クロック分周回路の構成図を図２に示す。
【００４５】
クロック分周回路８０は、図２に示すように、主として、クロック分周制御回路９０，クロック分周設定レジスタ８１，クロック分周変更設定回路８２及びバスインターフェース回路８３を備える。
【００４６】
クロック分周制御回路９０は、クロック入力端子Ｐ１が外部入力端子（図示せず）に接続されており、外部から基準となる第１クロック信号ＣＬＫ１を入力することができるようになっている。また、クロック分周制御回路９０は、クロック出力端子Ｐ２がバス３に接続されており（図１参照）、バス３を介して第２クロック信号ＣＬＫ２を出力することができるようになっている。また、クロック分周制御回路９０は、制御信号入力端子Ｐ３がクロック分周設定レジスタ８１に接続されている。クロック分周設定レジスタ８１は、分岐するように、バスインターフェース回路８３とクロック分周変更設定回路８２とに接続されている。バスインターフェース回路８３とクロック分周変更設定回路８２とは、それぞれ、バス３に接続されている。クロック分周変更設定回路８２は、第１対応付け情報（図３参照）を記憶している。第１対応付け情報は、バス権許可第１信号ＧＲＡＮＴＤ又はバス権許可第２信号ＧＲＡＮＴＣと、ＤＭＡ許可第１信号ＤＡＣＫ１及びＤＭＡ許可第２信号ＤＡＣＫ２と、周波数制御第１信号ＦＣＳ１とを対応付けた情報である。
【００４７】
クロック分周制御回路９０は、主として、セレクタ９１，８分周回路９２，４分周回路９３，２分周回路９４及びバイパス配線９５を有する。８分周回路９２，４分周回路９３，２分周回路９４及びバイパス配線９５は、ぞれそれ、クロック入力端子Ｐ１とセレクタ９１とを接続している。
【００４８】
また、セレクタ９１は、クロック分周設定レジスタ８１が接続されており、クロック分周設定レジスタ８１から周波数制御第２信号ＦＣＳ２を入力されるようになっている。セレクタ９１は、８分周回路９２，４分周回路９３，２分周回路９４及びバイパス配線９５と、クロック出力端子Ｐ２との間に位置しており、８分周回路９２，４分周回路９３，２分周回路９４及びバイパス配線９５のいずれかをクロック出力端子Ｐ２と接続することができるようになっている。また、セレクタ９１は、第２対応付け情報（図４参照）を記憶している。
【００４９】
（クロック分周回路の詳細動作）
クロック分周制御回路９０のクロック入力端子Ｐ１に、第１クロック信号ＣＬＫ１が入力される。
【００５０】
クロック分周変更設定回路８２には、バス権許可第２信号ＧＲＡＮＴＣ，バス権許可第１信号ＧＲＡＮＴＤ，ＤＭＡ許可第１信号ＤＡＣＫ１及びＤＭＡ許可第２信号ＤＡＣＫ２が入力される。クロック分周変更設定回路８２は、バス権許可第２信号ＧＲＡＮＴＣ又はバス権許可第１信号ＧＲＡＮＴＤと、ＤＭＡ許可第１信号ＤＡＣＫ１及びＤＭＡ許可第２信号ＤＡＣＫ２の一方又は両方と、第１対応付け情報（図３参照）とに基づいて、周波数制御第１信号ＦＣＳ１を生成する。
【００５１】
クロック分周設定レジスタ８１は、周波数制御第１信号ＦＣＳ１をクロック分周変更設定回路８２から受け取る。
【００５２】
一方、クロック分周設定レジスタ８１は、バス３及びバスインターフェース回路８３を介して、周波数制御第３信号ＦＣＳ３をＣＰＵ１０から受け取る。
【００５３】
クロック分周設定レジスタ８１は、周波数制御第１信号ＦＣＳ１のみを受け取った場合、周波数制御第１信号ＦＣＳ１を周波数制御第２信号ＦＣＳ２としてセレクタ９１へ出力する。クロック分周設定レジスタ８１は、周波数制御第３信号ＦＣＳ３のみを受け取った場合、周波数制御第３信号ＦＣＳ３を周波数制御第２信号ＦＣＳ２としてセレクタ９１へ出力する。クロック分周設定レジスタ８１は、周波数制御第１信号ＦＣＳ１と周波数制御第３信号ＦＣＳ３とを受け取った場合、（周波数制御第１信号ＦＣＳ１よりも優先度が高く設定されている）周波数制御第３信号ＦＣＳ３を周波数制御第２信号ＦＣＳ２としてセレクタ９１へ出力する。
【００５４】
セレクタ９１は、周波数制御第２信号ＦＣＳ２と第２対応付け情報（図４参照）とに基づいて、８分周回路９２，４分周回路９３，２分周回路９４及びバイパス配線９５のいずれかをクロック出力端子Ｐ２と接続する。
【００５５】
これにより、８分周回路９２とクロック出力端子Ｐ２とが接続された場合、クロック入力端子Ｐ１に入力された第１クロック信号ＣＬＫ１は、８分周回路９２で８分周されて、第２クロック信号ＣＬＫ２としてセレクタ９１経由でクロック出力端子Ｐ２へ出力される。あるいは、４分周回路９３とクロック出力端子Ｐ２とが接続された場合、クロック入力端子Ｐ１に入力された第１クロック信号ＣＬＫ１は、４分周回路９３で４分周されて、第２クロック信号ＣＬＫ２としてセレクタ９１経由でクロック出力端子Ｐ２へ出力される。あるいは、２分周回路９４とクロック出力端子Ｐ２とが接続された場合、クロック入力端子Ｐ１に入力された第１クロック信号ＣＬＫ１は、２分周回路９４で２分周されて、第２クロック信号ＣＬＫ２としてセレクタ９１経由でクロック出力端子Ｐ２へ出力される。あるいは、バイパス配線９５とクロック出力端子Ｐ２とが接続された場合、クロック入力端子Ｐ１に入力された第１クロック信号ＣＬＫ１は、バイパス配線９５を通ることで分周されずに、第２クロック信号ＣＬＫ２としてセレクタ９１経由でクロック出力端子Ｐ２へ出力される。
【００５６】
ここで、バス権許可第１信号ＧＲＡＮＴＤと、ＤＭＡ許可第１信号ＤＡＣＫ１及びＤＭＡ許可第２信号ＤＡＣＫ２との組み合わせに応じて周波数制御第１信号ＦＣＳ１を変えることにより、ＤＭＡＣ２０にバス権が与えられた場合に、ＤＭＡＣ２０の数（１つ）よりも多くの自由度（２つの自由度）でクロック周波数を決定することができるようになっている。
【００５７】
（第１対応付け情報の詳細構成）
第１対応付け情報は、バス権許可第１信号ＧＲＡＮＴＤ又はバス権許可第２信号ＧＲＡＮＴＣと、ＤＭＡ許可第１信号ＤＡＣＫ１及びＤＭＡ許可第２信号ＤＡＣＫ２と、周波数制御第１信号ＦＣＳ１とを対応付けた情報である。第１対応付け情報は、図３に示すように、主として、バス権許可信号欄８２１，ＤＭＡ許可信号欄８２２及び周波数制御信号欄８２３を備える。
【００５８】
バス権許可信号欄８２１には、バス権許可第１信号ＧＲＡＮＴＤ又はバス権許可第２信号ＧＲＡＮＴＣが記録されている。ＤＭＡ許可信号欄８２２には、ＤＭＡ許可第１信号ＤＡＣＫ１及びＤＭＡ許可第２信号ＤＡＣＫ２の一方又は両方が記録されている。周波数制御信号欄８２３には、周波数制御第１信号ＦＣＳ１が記録されている。
【００５９】
第１対応付け情報が参照されることにより、バス権許可第１信号ＧＲＡＮＴＤ又はバス権許可第２信号ＧＲＡＮＴＣと、ＤＭＡ許可第１信号ＤＡＣＫ１及びＤＭＡ許可第２信号ＤＡＣＫ２の一方又は両方とに対応する周波数制御第１信号ＦＣＳ１が決定される。
【００６０】
例えば、クロック分周変更設定回路８２にバス権許可第２信号ＧＲＡＮＴＣとＤＭＡ許可第１信号ＤＡＣＫ１とが入力された場合、周波数制御第１信号ＦＣＳ１が「００Ｂ」に決定される。あるいは、例えば、クロック分周変更設定回路８２にバス権許可第１信号ＧＲＡＮＴＤとＤＭＡ許可第２信号ＤＡＣＫ２とが入力された場合、周波数制御第１信号ＦＣＳ１が「１１Ｂ」に決定される。あるいは、例えば、クロック分周変更設定回路８２にバス権許可第１信号ＧＲＡＮＴＤとＤＭＡ許可第１信号ＤＡＣＫ１とが入力された場合、周波数制御第１信号ＦＣＳ１が「０１Ｂ」に決定される。あるいは、例えば、クロック分周変更設定回路８２にバス権許可第１信号ＧＲＡＮＴＤとＤＭＡ許可第１信号ＤＡＣＫ１及びＤＭＡ許可第２信号ＤＡＣＫ２とが入力された場合、周波数制御第１信号ＦＣＳ１が「１０Ｂ」に決定される。
【００６１】
なお、クロック分周変更設定回路８２にバス権許可第１信号ＧＲＡＮＴＤとバス権許可第２信号ＧＲＡＮＴＣとが同時に入力されることはないので、バス権許可信号欄８２１には、バス権許可第１信号ＧＲＡＮＴＤとバス権許可第２信号ＧＲＡＮＴＣとのいずれかが記録されている。
【００６２】
（第２対応付け情報の詳細構成）
第２対応付け情報は、周波数制御第２信号ＦＣＳ２とクロック周波数とを対応付けた情報である。第１対応付け情報は、図４に示すように、主として、周波数制御信号欄９１１及びクロック周波数欄９１２を備える。
【００６３】
周波数制御信号欄９１１には、周波数制御第２信号ＦＣＳ２が記録されている。クロック周波数欄９１２には、クロック周波数がどれだけ分周されたものが第２クロック信号ＣＬＫ２の周波数になるかの情報が記録されている。
【００６４】
第２対応付け情報が参照されることにより、周波数制御第２信号ＦＣＳ２に対応するクロック周波数が決定される。
【００６５】
例えば、セレクタ９１に周波数制御第２信号ＦＣＳ２「００Ｂ」が入力された場合、第１クロック信号ＣＬＫ１と同じ周波数が第２クロック信号ＣＬＫ２の周波数に決定される。あるいは、例えば、セレクタ９１に周波数制御第２信号ＦＣＳ２「０１Ｂ」が入力された場合、第１クロック信号ＣＬＫ１が２分周された周波数が第２クロック信号ＣＬＫ２の周波数に決定される。あるいは、例えば、セレクタ９１に周波数制御第２信号ＦＣＳ２「１０Ｂ」が入力された場合、第１クロック信号ＣＬＫ１が４分周された周波数が第２クロック信号ＣＬＫ２の周波数に決定される。あるいは、例えば、セレクタ９１に周波数制御第２信号ＦＣＳ２「１１Ｂ」が入力された場合、第１クロック信号ＣＬＫ１が８分周された周波数が第２クロック信号ＣＬＫ２の周波数に決定される。
【００６６】
（情報処理システムに関する特徴）
（１）
ここでは、ＤＭＡＣ２０は、ＤＭＡ許可信号ＤＡＣＫ１をアサートしてＵＳＢ用Ｉ／Ｏ３０へ出力する。あるいは、ＤＭＡＣ２０は、ＤＭＡ許可信号ＤＡＣＫ２をアサートしてＵＡＲＴ用Ｉ／Ｏ４０へ出力する。これにより、ＵＳＢ用Ｉ／Ｏ３０やＵＡＲＴ用Ｉ／Ｏ４０は、ＣＰＵ１０を介さずに直接ＲＡＭ５０やＲＯＭ６０にアクセスできるようになる。このため、ソフトの切り替えに伴う遅延時間の発生が避けられるので、処理時間は短縮する。
【００６７】
また、クロック分周回路８０は、バス権許可第２信号ＧＲＡＮＴＣ又はバス権許可第１信号ＧＲＡＮＴＤと、ＤＭＡ許可第１信号ＤＡＣＫ１及びＤＭＡ許可第２信号ＤＡＣＫ２の一方又は両方と、第１対応付け情報（図３参照）とに基づいて、周波数制御第１信号ＦＣＳ１を決定する。これにより、ＤＭＡＣ２０にバス権が与えられた場合に、ＤＭＡＣ２０の数よりも多くの自由度でクロック周波数が決定されるので、クロック周波数を必要最低限に抑えて消費電力を低減することが容易になっている。
【００６８】
このように、処理時間は短縮され、消費電力は容易に低減される。
【００６９】
（２）
ここでは、クロック分周変更設定回路８２は、バス権許可第２信号ＧＲＡＮＴＣ又はバス権許可第１信号ＧＲＡＮＴＤと、ＤＭＡ許可第１信号ＤＡＣＫ１及びＤＭＡ許可第２信号ＤＡＣＫ２の一方又は両方と、第１対応付け情報（図３参照）とに基づいて、周波数制御第１信号ＦＣＳ１を生成する。これにより、入出力デバイス（ＵＳＢ用Ｉ／Ｏ３０やＵＡＲＴ用Ｉ／Ｏ４０）の種類に応じてクロック周波数が決定されるようになる。
【００７０】
また、クロック分周制御回路９０は、周波数制御第２信号ＦＣＳ２に基づいて、第１クロック信号ＣＬＫ１を分周して第２クロック信号ＣＬＫ２を生成する。これにより、クロック周波数は容易に切り替えられる。
【００７１】
（３）
ここでは、バス調停回路７０は、バス権要求第１信号ＲＥＱＤとバス権要求第２信号ＲＥＱＣとに基づいて、バス権許可第１信号ＧＲＡＮＴＤとバス権要求第２信号ＧＲＡＮＴＣとのいずれかを出力する。これにより、ＤＭＡＣ２０とＣＰＵ１０とのいずれにバス権を与えるかが決められてバス権は調停される。
【００７２】
（４）
ここでは、クロック分周回路８のクロック分周変更設定回路８２は、バス権許可第２信号ＧＲＡＮＴＣ又はバス権許可第１信号ＧＲＡＮＴＤと、ＤＭＡ許可第１信号ＤＡＣＫ１及びＤＭＡ許可第２信号ＤＡＣＫ２の一方又は両方と、第１対応付け情報（図３参照）とに基づいて、周波数制御第１信号ＦＣＳ１を生成する。すなわち、バス権許可第２信号ＧＲＡＮＴＣ又はバス権許可第１信号ＧＲＡＮＴＤと、ＤＭＡ許可第１信号ＤＡＣＫ１及びＤＭＡ許可第２信号ＤＡＣＫ２の一方又は両方との組み合わせに応じて、周波数制御第１信号ＦＣＳ１を変えることができるようになっている。これにより、マスターデバイスの種類やスレーブデバイスの種類を考慮して、クロック周波数は決定される。
【００７３】
＜第２実施形態＞
本発明の第２実施形態に係る情報処理システムの構成図を図５に示す。図５では、信号の流れが破線の矢印で示されている。
【００７４】
情報処理システム１００は、基本的な構成は第１実施形態と同様であるが、クロック分周回路８０の代わりにクロック分周回路１８０が備えられている点で第１実施形態と異なる。
【００７５】
すなわち、クロック分周回路１８０は、図６に示すように、バスインターフェース回路８３の代わりにバスインターフェース回路１８３を備え、クロック分周変更設定回路８２の代わりにクロック分周変更設定回路１８２を備え、マスタ周波数設定レジスタ１８４をさらに備える。
【００７６】
クロック分周回路１８０のバスインターフェース回路１８３は、周波数制御第４信号ＦＣＳ１０４を、バス３を介してＣＰＵ１０から受け取る。その周波数制御第４信号ＦＣＳ１０４は、バスインターフェース回路１８３からマスタ周波数設定レジスタ１８４に供給される。マスタ周波数設定レジスタ１８４は、周波数制御第４信号ＦＣＳ１０４をクロック分周変更設定回路８２へ供給して、クロック分周変更設定回路８２に記憶された第１対応付け情報を書き換える。
【００７７】
具体的には、マスタ周波数設定レジスタ１８４は、図７（ａ）に示すように、８ビット構成であり、上位（左側）から順番に、第１ビット群１８４ａ，第２ビット群１８４ｂ，第３ビット群１８４ｃ及び第４ビット群１８４ｄを有している。第１ビット群１８４ａには、バス権許可第１信号ＧＲＡＮＴＤとＤＭＡ許可第１信号ＤＡＣＫ１との組み合わせに対する周波数制御第１信号ＦＣＳ１の設定値が記憶される。第２ビット群１８４ｂには、バス権許可第１信号ＧＲＡＮＴＤとＤＭＡ許可第２信号ＤＡＣＫ２との組み合わせに対する周波数制御第１信号ＦＣＳ１の設定値が記憶される。第３ビット群１８４ｃには、バス権許可第２信号ＧＲＡＮＴＣと、ＤＭＡ許可第１信号ＤＡＣＫ１又はＤＭＡ許可第２信号ＤＡＣＫ２との組み合わせに対する周波数制御第１信号ＦＣＳ１の設定値が記憶される。第４ビット群１８４ｄには、バス権許可第１信号ＧＲＡＮＴＤと、ＤＭＡ許可第１信号ＤＡＣＫ１及びＤＭＡ許可第２信号ＤＡＣＫ２の少なくとも一方との組み合わせのうち、第１ビット群１８４ａ及び第２ビット群１８４ｂで指定された組み合わせ以外の組み合わせに対する周波数制御第１信号ＦＣＳ１の設定値が記憶される。
【００７８】
例えば、周波数制御第４信号ＦＣＳ１０４が入力されたマスタ周波数設定レジスタ１８４が図７（ｂ）に示すようになっている場合、第１対応付け情報は図８に示すように書き換えられる。これにより、特に、バス権許可第１信号ＧＲＡＮＴＤと、ＤＭＡ許可第２信号ＤＡＣＫ２との組み合わせに対して、クロック周波数を高くすることができるようになっている。
【００７９】
あるいは、例えば、周波数制御第４信号ＦＣＳ１０４が入力されたマスタ周波数設定レジスタ１８４が図７（ｃ）に示すようになっている場合、第１対応付け情報は図９に示すように書き換えられる。これにより、特に、バス権許可第１信号ＧＲＡＮＴＤと、ＤＭＡ許可第２信号ＤＡＣＫ２との組み合わせに対して、クロック周波数を低く抑えることができるようになっている。
【００８０】
このように、クロック分周回路１８０の周波数設定レジスタ１８４は、動作中に第１対応付け情報を書き換える。これにより、動作中に状態が変化した場合でも、クロック周波数は柔軟に決定される。
【００８１】
ソフトの切り替えに伴う遅延時間の発生が避けられ、ＤＭＡＣ２０の数よりも多くの自由度でクロック周波数が決定される点は、第１実施形態と同様である。したがって、このような情報処理システム１００によっても、処理時間は短縮され、消費電力は容易に低減される。
【００８２】
＜他の実施形態＞
以上の通り、本発明に係る情報処理システム及び情報処理システムの制御方法では、バス権を得たマスタデバイスと、このマスタデバイスをアクセスする対象のスレーブデバイスとによって、最適な周波数のクロックを選択することができる。
【００８３】
上記説明では、マスタデバイスであるＤＭＡＣが１つの場合について説明している。それに対して、例えば、スレーブデバイスに応じてクロック周波数を変更したいマスタデバイスが複数ある場合には、各マスタデバイスに上記のような本発明を適用させて、クロック分周回路も、バス権許可信号ＧＲＡＮＴと、上記におけるＤＭＡ許可信号のようなマスタデバイスからアクセス対象のスレーブデバイスへ送られる許可信号ＤＡＣＫとに基づいて、種々の分周クロックを出力できるようにしてもよい。
【００８４】
また、上記説明では、１つのマスタデバイス（ＤＭＡＣ）に対応したスレーブデバイス（ＵＡＲＴ用Ｉ／ＯとＵＳＢ用Ｉ／Ｏ）が２つの場合を例に説明したが、スレーブデバイスの数を３つ以上とし、許可信号ＤＡＣＫも各スレーブに出力させ、前述のようなクロック分周回路が許可信号ＤＡＣのそれぞれに応じて分周クロックを出力することができるようになっていてもよい。
【００８５】
さらに、ＤＭＡＣに限らず、スレーブデバイスに応じてクロック周波数を変更したいマスタデバイスであれば、本発明を適用可能である。また、ＵＡＲＴ用Ｉ／ＯやＵＳＢ用Ｉ／Ｏに限らず、異なるクロック周波数で動作させる必要性が生じる複数のスレーブデバイスであれば、本発明を適用可能である。このように、本発明は、その趣旨を逸脱しない範囲で変更可能である。
【産業上の利用可能性】
【００８６】
本発明に係る情報処理システム及び情報処理システムの制御方法は、処理時間を短縮することができ、消費電力を容易に低減することができるという効果を有し、情報処理システム及び情報処理システムの制御方法等として有用である。
【図面の簡単な説明】
【００８７】
【図１】本発明の第１実施形態に係る情報処理システムの構成図。
【図２】本発明の第１実施形態におけるクロック分周回路の回路図。
【図３】第１対応付け情報の構成を示す図。
【図４】第２対応付け情報の構成を示す図。
【図５】本発明の第２実施形態に係る情報処理システムの構成図。
【図６】本発明の第２実施形態におけるクロック分周回路の回路図。
【図７】第１対応付け情報の構成を示す図。
【図８】第２対応付け情報の構成を示す図。
【図９】第２対応付け情報の構成を示す図。
【符号の説明】
【００８８】
１，１００  情報処理システム
３  バス
１０  ＣＰＵ
２０  ＤＭＡＣ
３０  ＵＳＢ用Ｉ／Ｏ
４０  ＵＡＲＴ用Ｉ／Ｏ
５０  ＲＡＭ
６０  ＲＯＭ
７０  バス調停回路
８０  クロック分周回路
【図１】
2007128196.tif 000003
【図２】
2007128196.tif 000004
【図３】
2007128196.tif 000005
【図４】
2007128196.tif 000006
【図５】
2007128196.tif 000007
【図６】
2007128196.tif 000008
【図７】
2007128196.tif 000009
【図８】
2007128196.tif 000010
【図９】
2007128196.tif 000011