(57)【要約】【課題】異なるスレーブモジュールへのアクセス並列を可能とすることにより、半導体集積回路装置の処理速度を大幅に向上させる。【解決手段】ＤＭＡＣ３がスレーブモジュール８とのアクセスを要求すると、バスコントローラ５はバスアクセス調停部６にバスアクセス要求信号を出力する。バスアクセス調停部６は、ＤＭＡＣ３がスレーブモジュール８にアクセスできるように調停を行う。ＤＭＡＣ３のアクセス中に、ＣＰＵ２がスレーブモジュール７とのアクセスを要求すると、バスコントローラ４は、バスアクセス調停部６にバスアクセス要求信号を出力する。バスアクセス調停部６は、ＤＭＡＣ３がアクセス中であってもＣＰＵ２がスレーブモジュール７にアクセスできるように調停を行う。これにより、複数のバスマスタが、異なるスレーブモジュールにそれぞれアクセスすることが可能となる。【選択図】図１
2007188214.tif 000002
【特許請求の範囲】
【請求項１】
複数のバスマスタと、前記バスマスタのアクセス対象となる複数のスレーブモジュールとを有した半導体集積回路装置であって、
少なくとも２つの前記バスマスタがそれぞれ異なる前記スレーブモジュールにアクセス要求を行った際に、各々の前記バスマスタが並列してアクセス処理できるように内部バスを調停するバスアクセス調停手段を備えたことを特徴とする半導体集積回路装置。
【請求項２】
請求項１記載の半導体集積回路装置において、
前記バスアクセス調停手段は、
前記複数のバスマスタに対応してそれぞれ設けられ、内部バスのアクセスの制御を行うバスコントローラと、
前記バスコントローラから出力されたバスアクセス要求信号に基づいて、前記内部バスを調停し、各々のバスマスタにおけるアクセス処理の制御を行うバスアクセス調停部とよりなることを特徴とする半導体集積回路装置。
【請求項３】
請求項１または２記載の半導体集積回路装置において、
前記複数のバスマスタは、
前記半導体集積回路装置の制御を司る中央処理装置と、
スレーブモジュールにおけるデータ転送処理を実行するＤＭＡＣとを含むことを特徴とする半導体集積回路装置。
【請求項４】
請求項１〜３のいずれか１項に記載の半導体集積回路装置において、
前記バスアクセス調停部は、
少なくとも２つの前記バスマスタが同じ前記スレーブモジュールにアクセス要求を行った際に、最初にバスアクセス要求を行った前記バスマスタのアクセス処理が完了した後、遅れてバスアクセス要求を行った前記バスマスタがアクセス処理を行うように、遅れてバスアクセス要求を行った前記バスマスタに接続されたバスコントローラに対してバスアクセスウェイト信号を出力することを特徴とする半導体集積回路装置。
【請求項５】
請求項１〜４のいずれか１項に記載の半導体集積回路装置において、
高速なアクセス処理が不要な際には、１つの前記バスコントローラのみを動作させ、他の前記バスコントローラに対してクロック信号の供給停止、または電源遮断を行うことを特徴とする半導体集積回路装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、半導体集積回路装置の高速動作技術に関し、特に、複数のマスタモジュールによる異なるリソースへのアクセス処理の高速化に有効な技術に関する。
【背景技術】
【０００２】
ＣＰＵ（Ｃｅｎｔａｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）やＤＭＡＣ（Ｄｉｒｅｃｔ  Ｍｅｍｏｒｙ  Ａｃｃｅｓｓ）などのバスマスタとなる複数のマスタモジュールがスレーブモジュールにアクセスする構成の半導体集積回路装置においては、これらマスタモジュールとスレーブモジュールとがバスコントローラを介して接続されている。
【０００３】
この種の半導体集積回路装置では、スレーブモジュールに対するアクセス要求の発生した順番にアクセスが処理されている。たとえば、先行してＤＭＡＣがアクセス要求を行った後、ＣＰＵがアクセスを要求した場合、バスコントローラは、まず、ＤＭＡＣのアクセス処理を行い、その処理が終了した後に、ＣＰＵのアクセス処理を行うように制御している。
【発明の開示】
【発明が解決しようとする課題】
【０００４】
ところが、上記のような半導体集積回路装置におけるマスタモジュールのアクセス処理技術では、次のような問題点があることが本発明者により見い出された。
【０００５】
前述したように、先行してＤＭＡＣがアクセス要求を行った後、ＣＰＵがアクセスを要求した場合、ＤＭＡＣとＣＰＵとが異なるスレーブモジュールにそれぞれアクセスするにもかかわらず、ＤＭＡＣのアクセス処理が終了するまでＣＰＵのアクセス処理が待たされてしまうことになる。
【０００６】
たとえば、ＣＰＵの割り込み処理が優先の処理の場合であっても、先行しているＤＭＡＣのアクセス処理を待たなければならず、半導体集積回路装置の処理性能の向上の妨げとなっている。
【０００７】
本発明の目的は、異なるスレーブモジュールへのアクセス並列を可能とすることにより、半導体集積回路装置の処理速度を大幅に向上させることのできる技術を提供することにある。
【０００８】
本発明の前記ならびにそのほかの目的と新規な特徴については、本明細書の記述および添付図面から明らかになるであろう。
【課題を解決するための手段】
【０００９】
本願において開示される発明のうち、代表的なものの概要を簡単に説明すれば、次のとおりである。
【００１０】
本発明は、複数のバスマスタと、該バスマスタのアクセス対象となる複数のスレーブモジュールとを有した半導体集積回路装置であって、少なくとも２つのバスマスタがそれぞれ異なるスレーブモジュールにアクセス要求を行った際に、各々のバスマスタが並列してアクセス処理できるように内部バスを調停するバスアクセス調停手段を備えたものである。
【００１１】
また、本願のその他の発明の概要を簡単に示す。
【００１２】
本発明は、前記バスアクセス調停手段が、複数のバスマスタに対応してそれぞれ設けられ、内部バスのアクセスの制御を行うバスコントローラと、該バスコントローラから出力されたバスアクセス要求信号に基づいて、内部バスを調停し、各々のバスマスタにおけるアクセス処理の制御を行うバスアクセス調停部とよりなるものである。
【００１３】
また、本発明は、前記複数のバスマスタが、半導体集積回路装置の制御を司る中央処理装置と、スレーブモジュールにおけるデータ転送処理を実行するＤＭＡＣとを含むものである。
【００１４】
さらに、本発明は、前記バスアクセス調停部が、少なくとも２つのバスマスタが同じスレーブモジュールにアクセス要求を行った際に、最初にバスアクセス要求を行ったバスマスタのアクセス処理が完了した後、遅れてバスアクセス要求を行ったバスマスタがアクセス処理を行うように、遅れてバスアクセス要求を行ったバスマスタに接続されたバスコントローラに対してバスアクセスウェイト信号を出力するものである。
【００１５】
また、本発明は、高速なアクセス処理が不要な際に１つのバスコントローラのみを動作させ、他のバスコントローラに対してクロック信号の供給停止、または電源遮断を行うものである。
【発明の効果】
【００１６】
本願において開示される発明のうち、代表的なものによって得られる効果を簡単に説明すれば以下のとおりである。
【００１７】
（１）複数のバスマスタが異なるスレーブモジュールに並列してアクセス処理をすることができる。
【００１８】
（２）上記（１）により、半導体集積回路装置の処理速度を大幅に向上させることができる。
【発明を実施するための最良の形態】
【００１９】
以下、本発明の実施の形態を図面に基づいて詳細に説明する。なお、実施の形態を説明するための全図において、同一の部材には原則として同一の符号を付し、その繰り返しの説明は省略する。
【００２０】
図１は、本発明の一実施の形態による半導体集積回路装置のブロック図、図２は、図１の半導体集積回路装置におけるスレーブモジュールへのアクセス動作の一例を示すタイミングチャートである。
【００２１】
本実施の形態において、半導体集積回路装置１は、たとえば、携帯電話などの移動通信システムに用いられる。半導体集積回路装置１は、図１に示すように、ＣＰＵ２、ＤＭＡＣ３、バスコントローラ４，５、バスアクセス調停部６、およびスレーブモジュール７，８などから構成されている。
【００２２】
ＣＰＵ２は、アプリケーション処理用であり、たとえば、画像や音声処理用のアクセラレータ回路を制御する。ＤＭＡＣ３は、スレーブモジュール７，８におけるデータ転送処理を実行する。なお、図１では、１つのＣＰＵが設けられた例を示しているが、該ＣＰＵは、２以上であってもよい。
【００２３】
ＣＰＵ２、ＤＭＡＣ３、ならびにバスコントローラ４，５は、内部バスＢを介して相互に接続されている。ＣＰＵ２、およびＤＭＡＣ３は、バスマスタとして内部バスＢを使用することができる。該内部バスＢは、アドレス信号、データ信号及び制御信号を伝達するバスで構成され、ＣＰＵ２、ＤＭＡＣ３及び図示されないマスタモジュールは、内部バスＢ、バスコントローラ４，５、およびバスアクセス調停部６を介して、スレーブモジュール７，８にアドレス信号の出力、データ信号の入出力を含めたアクセスを行う。
【００２４】
バスコントローラ４は、ＣＰＵ２から出力されるアクセス要求信号に基づいてバスアクセス要求信号を出力し、バスアクセスの制御を行う。バスコントローラ５は、ＤＭＡＣ３から出力されるアクセス要求信号に基づいてバスアクセス要求信号を出力し、バスアクセスの制御を行う。
【００２５】
バスアクセス調停部６は、それぞれのバスコントローラ４，５から出力されたバスアクセス要求信号に従ってバスＢの調停を行う。そして、これらバスコントローラ４，５、ならびにバスアクセス調停部６によってバスアクセス調停手段が構成されている。
【００２６】
スレーブモジュール７，８は、半導体集積回路装置１に属する周辺回路の機能モジュール（たとえば、シリアルインタフェースやタイマなど）からなる。なお、図１では、２つのスレーブモジュールが設けられた例を示しているが、該スレーブモジュールは、３以上であってもよい。
【００２７】
次に、本実施の形態による半導体集積回路装置１の作用について説明する。
【００２８】
始めに、バスマスタであるＣＰＵ２とＤＭＡＣ３とが並列動作している状態で、図２に示すように、ＤＭＡＣ３がアクセス要求信号を出力して該ＤＭＡＣ３がスレーブモジュール８にアクセス中に、ＣＰＵ２がスレーブモジュール７にアクセスを要求した場合について説明する。
【００２９】
まず、ＤＭＡＣ３がスレーブモジュール８とのアクセスを要求するアクセス要求信号をバスコントローラ５に対して出力する。これを受けてバスコントローラ５は、バスアクセス調停部６に対してバスアクセス要求信号を出力する。
【００３０】
バスアクセス要求信号が入力されたバスアクセス調停部６は、ＤＭＡＣ３がスレーブモジュール８にアクセスできるように調停を行う。
【００３１】
そして、ＤＭＡＣ３のアクセス中に、ＣＰＵ２がスレーブモジュール７とのアクセスを要求するアクセス要求信号をバスコントローラ４に対して出力すると、バスコントローラ４は、アクセス要求信号を受けて、バスアクセス調停部６に対してバスアクセス要求信号を出力する。
【００３２】
このとき、バスアクセス調停部６は、ＤＭＡＣ３がスレーブモジュール８にアクセスしている場合であってもＣＰＵ２がスレーブモジュール７にアクセスできるように調停を行う。これにより、複数のバスマスタが、異なるスレーブモジュールにそれぞれアクセスすることを可能にすることができる。
【００３３】
また、ＣＰＵ２とＤＭＡＣ３とが同じスレーブモジュール７にアクセス要求信号を出力した場合について説明する。
【００３４】
最初に、ＤＭＡＣ３がスレーブモジュール８とのアクセスを要求するアクセス要求信号をバスコントローラ５に対して出力する。これを受けてバスコントローラ５は、バスアクセス調停部６に対してバスアクセス要求信号を出力する。
【００３５】
バスアクセス要求信号が入力されたバスアクセス調停部６は、ＤＭＡＣ３がスレーブモジュール８にアクセスできるように調停を行う。
【００３６】
その後、ＤＭＡＣ３のアクセス中に、ＣＰＵ２が同じくスレーブモジュール８とのアクセスを要求するアクセス要求信号をバスコントローラ４に対して出力する。バスコントローラ４は、アクセス要求信号を受けて、バスアクセス調停部６に対してバスアクセス要求信号を出力する。
【００３７】
バスアクセス調停部６は、ＤＭＡＣ３がスレーブモジュール８にアクセス中であるので、バスコントローラ４に対してバスアクセスウェイト信号を出力する。バスコントローラ４からは、バスアクセス調停部６からのバスアクセスウェイト信号がネゲートになるまでバスアクセス要求信号が出力され続ける。
【００３８】
そして、ＤＭＡＣ３のアクセスが終了してバスアクセスウェイト信号がネゲートになると、バスアクセス調停部６は、バスコントローラ４からのバスアクセス要求信号を受けて、ＣＰＵ２がスレーブモジュール８にアクセスできるように調停を行う。
【００３９】
また、ＣＰＵ２がスレーブモジュール７とアクセス中に、ＤＭＡＣ３が該スレーブモジュール７にアクセス要求を行った場合、バスアクセス調停部６は、バスコントローラ５に対してバスアクセスウェイト信号を出力する。
【００４０】
それにより、本実施の形態によれば、バスマスタであるＣＰＵ２、およびＤＭＡＣ３がそれぞれ異なるスレーブモジュールに並列してアクセスすることが可能となるので、半導体集積回路装置１の処理速度を向上させることができる。
【００４１】
また、本実施の形態では、２つのバスマスタ（ＣＰＵ２、ＤＭＡＣ３）がスレーブモジュールにそれぞれアクセスする場合について記載したが、バスマスタ（これらＣＰＵ、ＤＭＡＣの他に、たとえば、グラフィックアクセラレータやＬＣＤ（Ｌｉｑｕｉｄ  Ｃｒｙｓｔａｌ  Ｄｉｓｐｌａｙ）コントローラなど）が３つ以上ある構成であってもよい。
【００４２】
さらに、半導体集積回路装置１の処理速度の高速化が不要な場合には、図示しないが、クロック生成回路（Ｃｌｏｃｋ  Ｐｕｌｓｅ  Ｇｅｎｅｒａｔｏｒ）が生成するクロック信号のバスコントローラ４，５のいずれか一方に対するクロック信号供給の停止、またはバスコントローラ４，５のいずれか一方に対する内部電源（ＶＣＣ）、もしくは接地電位（ＶＳＳ）の供給を一時的に停止する電源遮断を行うようにしてもよい。
【００４３】
この場合、バスマスタの並列アクセスができなくなるが、半導体集積回路装置１の低消費電力化を実現することができる。
【００４４】
以上、本発明者によってなされた発明を実施の形態に基づき具体的に説明したが、本発明は前記実施の形態に限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能であることはいうまでもない。
【産業上の利用可能性】
【００４５】
本発明は、複数のバスマスタと複数のスレーブモジュールとを有した半導体集積回路装置において、複数のバスマスタが異なるスレーブモジュールに並列アクセスする際のアクセス処理技術に適している。
【図面の簡単な説明】
【００４６】
【図１】本発明の一実施の形態による半導体集積回路装置のブロック図である。
【図２】図１の半導体集積回路装置におけるスレーブモジュールへのアクセス動作の一例を示すタイミングチャートである。
【符号の説明】
【００４７】
１  半導体集積回路装置
２  ＣＰＵ
２  ＤＭＡＣ
４  バスコントローラ
５  バスコントローラ
６  バスアクセス調停部
７  スレーブモジュール
８  スレーブモジュール
Ｂ  内部バス
【図１】
2007188214.tif 000003
【図２】
2007188214.tif 000004