(57)【要約】  【課題】  ＣＰＵと内蔵周辺モジュール間またはＣＰＵと内蔵メモリ間の転送と、内蔵周辺モジュールと外部メモリ間の転送を並列に行うことで内部バス効率を改善し、処理速度向上を実現できる半導体装置を提供する。  【解決手段】  内部バスＢＵＳ１と、内部バスＢＵＳ２を有し、半導体装置ＳＣＤの内蔵周辺モジュールはＢＵＳ１を経由してＣＰＵまたはその他の内蔵周辺モジュールと該内蔵周辺モジュールとの間でデータを転送する手段と、内部バスＢＵＳ２を経由して該内蔵周辺モジュールと外部メモリまたはその他内蔵周辺モジュールとの間でデータを転送する手段を持ち、ＢＵＳ１に接続されたＣＰＵと内蔵周辺モジュール間の転送と、ＢＵＳ２に接続された内蔵周辺モジュールと外部メモリ１８間の転送を並列に行う構成とする。【選択図】  図１
2006185253.tif 000002
【特許請求の範囲】
【請求項１】
ＣＰＵと、
該ＣＰＵに接続される第１の内部バスと、
外部メモリへのアクセスを行なうための第２の内部バスと、
前記第１の内部バスと前記第２の内部バスとの間に接続される第１および第２の内蔵周辺モジュールとを有し、
前記第１の内蔵周辺モジュールは、前記第１の内部バスを経由して前記ＣＰＵまたは前記第２の内蔵周辺モジュールとのデータ転送、もしくは、前記第２のバスを経由して前記外部メモリとのデータ転送が行なうことができ、
前記第２の内蔵周辺モジュールは、前記第１の内部バスを経由して前記ＣＰＵまたは前記第１の内蔵周辺モジュールとのデータ転送、もしくは、前記第２のバスを経由して前記外部メモリとのデータ転送を行なうことができ、
前記第１の内部バスを経由する前記データ転送と、前記第２の内部バスを経由する前記外部メモリとのデータ転送とが並列に行なわれることを特徴とする半導体装置。
【請求項２】
請求項１に記載の半導体装置において、
前記第１の内蔵周辺モジュールは、前記第２の内部バスを経由して転送するデータを一時的に記憶する記憶手段と、前記第２の内部バスに対してデータを入出力する手段と、前記第２の内部バスのバス権を要求する手段とを有し、前記第２の内部バスを経由してデータを転送している間でも、前記第１の内部バスを経由して前記ＣＰＵまたは前記第２の内蔵周辺モジュールとの間でデータ転送が可能であるることを特徴とする半導体装置。
【請求項３】
請求項１に記載の半導体装置において、
前記第２の内蔵周辺モジュールは、前記第２の内部バスを経由して転送するデータを一時的に記憶する記憶手段と、前記第２の内部バスに対してデータを入出力する手段と、前記第２の内部バスのバス権を要求する手段とを有し、前記第２の内部バスを経由してデータを転送している間でも、前記第１の内部バスを経由して前記ＣＰＵまたは前記第１の内蔵周辺モジュールとの間でデータ転送が可能であることを特徴とする半導体装置。
【請求項４】
請求項１に記載の半導体装置において、
前記第１の内蔵周辺モジュールは、前記外部メモリまたは前記第２の内蔵周辺モジュールに対し転送を行うためのデータの転送元アドレス、データの転送先アドレス、転送するデータの量を記憶するための、前記ＣＰＵまたは前記第２の内蔵周辺モジュールから読み書き可能な転送元アドレスレジスタ、転送先アドレスレジスタ、転送サイズレジスタの少なくとも１つを有し、前記少なくとも１つレジスタ設定値に基づいて前記第２の内部バスを経由して前記第２の内蔵周辺モジュールと前記外部メモリとの間でデータを転送することを特徴とする半導体装置。
【請求項５】
請求項１に記載の半導体装置において、
前記第１及び第２の内蔵周辺モジュールの数に対応して前記第２の内部バスのバス権の調停を行うバス権制御手段と、前記外部メモリにアクセスするためのプロトコルを生成する手段とを少なくとも１つ有することを特徴とする半導体装置。
【請求項６】
請求項１に記載の半導体装置において、
前記第１の内部バスから前記外部メモリへの転送要求を受け付ける手段と、転送するデータを一時的に記憶する記憶手段と、前記第２の内部バスに対する転送リクエストを生成する手段とを有し、前記第１の内部バスに接続された前記ＣＰＵから、前記第２の内部バスを経由してデータを転送することを特徴とする半導体装置。
【請求項７】
請求項１に記載の半導体装置において、
前記第２の内部バスから読み出した転送するデータを一時的に記憶する記憶手段と、前記第２の内部バスに対し書き込み転送リクエストを生成する手段とを有し、前記第２の内部バスに接続された前記外部メモリまたは前記第１の内蔵周辺モジュールと、前記第２の内部バスに接続された前記外部メモリまたは前記第１の内蔵周辺モジュール間でデータを転送することを特徴とする半導体装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は内蔵周辺モジュールまたは内蔵メモリと、外部メモリとの間のデータ転送を行う情報処理装置に係り、特にシステムＬＳＩまたはマイクロプロセッサに用いるのに好適な半導体装置に関する。
【背景技術】
【０００２】
マイクロコンピュータの中には、ダイレクトメモリアクセスコントローラ（以下、ＤＭＡＣと表記する）を内蔵し、中央処理装置（以下、ＣＰＵと表記する）とは独立にデータ転送を可能にするものがある。ＣＰＵと、ＤＭＡＣと、内蔵周辺モジュールとは、内部バスを介して接続される。通常、内部バスのイニシエータとなるのはＤＭＡＣとＣＰＵである。内部バスは通常、同時にひとつのイニシエータしか使用できないので、ＤＭＡＣが大量のデータを転送しているときには、ＣＰＵによる転送ができなくなる問題があった。
【０００３】
ＤＭＡＣによる転送は、内蔵メモリを含む内蔵周辺モジュールと別の内蔵周辺モジュール間、内蔵周辺モジュールと外部メモリ間、外部メモリと外部メモリ間の３つのケースに分類される。
【０００４】
従来、半導体装置上の内部バスを、ＣＰＵと内蔵周辺モジュール（特に内蔵メモリ）と第１のＤＭＡＣが接続される第１の内部バスと、内蔵周辺モジュールと外部メモリ用ＤＭＡＣが接続される第２の内部バスに分離するマイクロコンピュータおよびマイクロコンピュータシステムが知られている（例えば、特許文献１参照）。図２にその構造を示す。
【０００５】
図２において、半導体装置ＳＣＤ内に設けられたＣＰＵ９、第１のＤＭＡＣ４５、内蔵メモリ（ＩＮＴ−ＭＥＭ）１０は、第１の内部バス（ＢＵＳ）１に接続され、内蔵周辺モジュール（Ｉ／Ｏ）４３と、外部メモリ用ＤＭＡＣ（ＥＸＴ−ＤＭＡＣ）１５は、第２の内部バス（ＢＵＳ）２に接続される。ＢＵＳ１とＢＵＳ２は、バスブリッジ（Ｉ−ＢＳＣ）４０に接続され、いる。外部メモリ用ＤＭＡＣ１５は、外部メモリ（ＥＸＴ−ＭＥＭ）１８から外部メモリ１８へのダイレクトメモリアクセス（ＤＭＡ）転送を行うために使用される。この従来例の構造では、ＢＵＳ１のみで完結するＣＰＵ９による内蔵メモリアクセスと、ＢＵＳ２のみで完結する外部メモリ１８と外部メモリ１８間のＤＭＡ転送とを並列化できる。なお図２において、４１は内部バスＢＵＳ２の制御信号、４２は内部バスＢＵＳ２のデータ、４４は外部バス（ＥＸＴ−ＢＵＳ）へのアクセス調停回路、１４は外部バスコントローラである。
【０００６】
【特許文献１】特開２０００−２３５５６０号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
発明者は、ＣＰＵが内部バスのイニシエータとなる転送は、命令フェッチなど内蔵メモリに対するアクセスと、内蔵周辺モジュールの動作設定を行うためのレジスタアクセスが多く、ＤＭＡＣが内部バスのイニシエータとなる転送は、外部内蔵周辺モジュールと外部メモリ間のデータ転送が多いということに着目し、ＣＰＵが内部バスを使用中に、内蔵周辺モジュールと外部メモリ間の転送を並列に行うことで内部バスの性能を改善できることを見出した。
【０００８】
図２に示した構造の従来例では、内蔵周辺モジュール４３と外部メモリ１８間の転送、および内蔵周辺モジュール４３と内蔵メモリ１０間の転送は、ＢＵＳ１に接続された第１のＤＭＡＣ４５によって行う。これらの転送中は第１の内部バス１と第２の内部バス２の両方が占有されてしまうため、ＣＰＵ９とＢＵＳ２に接続された他の周辺モジュールとの間の転送を行うことができない。同様に、ＣＰＵ９とＢＵＳ２に接続された内蔵周辺モジュール４３間の転送を行っている間は、ＢＵＳ１とＢＵＳ２の両方が占有されるため、ＤＭＡＣによるその他の転送を行うことができない。
【０００９】
本発明の目的は、ＣＰＵと内蔵周辺モジュール間、またはＣＰＵと内蔵メモリ間の転送と、内蔵周辺モジュールと外部メモリ間の転送とを並列に行うことが可能な構造を有する半導体装置を提供することにある。
【課題を解決するための手段】
【００１０】
本明細書で開示される発明のうち代表的手段の一例を示せば次の通りである。すなわち本発明に係る半導体装置は、ＣＰＵと、該ＣＰＵに接続される第１の内部バスと、外部メモリへのアクセスを行なうための第２の内部バスと、前記第１の内部バスと前記第２の内部バスとの間に接続される第１および第２の内蔵周辺モジュールとを有し、
前記第１の内蔵周辺モジュールは、前記第１の内部バスを経由して前記ＣＰＵまたは前記第２の内蔵周辺モジュールとのデータ転送、もしくは、前記第２のバスを経由して前記外部メモリとのデータ転送が行なうことができ、前記第２の内蔵周辺モジュールは、前記第１の内部バスを経由して前記ＣＰＵまたは前記第１の内蔵周辺モジュールとのデータ転送、もしくは、前記第２のバスを経由して前記外部メモリとのデータ転送を行なうことができ、前記第１の内部バスを経由する前記データ転送と、前記第２の内部バスを経由する前記外部メモリとのデータ転送とを並列に行なうことができることを特徴とするものである。
【００１１】
要するに、本発明の特徴は、半導体装置上にＣＰＵが接続される第１の内部バスと、外部メモリへのアクセスを行うための第２の内部バスを備え、内蔵周辺モジュールは、その両方へアクセス可能な構造を持つことである。本構造により、内蔵周辺モジュールが第２の内部バスを使用して外部メモリとの間でデータを転送しているときに、ＣＰＵが並列に第１の内部バスを使用して内蔵メモリまたは内蔵周辺モジュールとの間でデータを転送することを可能にする。
【発明の効果】
【００１２】
半導体装置の処理速度の向上が図れる。
【発明を実施するための最良の形態】
【００１３】
以下、本発明の好適な実施例について添付図面を参照しながら詳細に説明する。
【実施例１】
【００１４】
図１は、本発明に係る半導体装置の第１の実施例を示す回路ブロック図である。本実施例は、本発明を特にシステムＬＳＩ（またはマイクロプロセッサ、以下同じ。）に適用した場合の構成の概念図を示している。特に制限されないが、同図に示されるシステムＬＳＩは、公知のＣＭＯＳ（相補型ＭＯＳトランジスタ）やバイポーラトランジスタ等の半導体集積回路技術によって、単結晶シリコンのような１個の半導体基板に形成された半導体集積回路とされる。
【００１５】
半導体装置ＳＣＤは、中央処理装置（ＣＰＵ）９、第１の内部バス（ＢＵＳ１）、第１の内部バスの調停回路（ＡＲＢ１）、第２の内部バス（ＢＵＳ２）、第２の内部バスの調停回路（ＡＲＢ２）、外部バスコントローラ（ＥＸＴ−ＢＳＣ）１４、外部バスＤＭＡＣ（ＥＸＴ−ＤＭＡＣ）１５、外部メモリアクセス回路（ＦＥＴ）１６、内蔵メモリ（ＩＮＴ−ＭＥＭ）１０、液晶コントローラ（ＬＣＤＣ）１１、ＰＣＩバスコントローラ（ＰＣＩＣ）１２から構成される。
【００１６】
液晶コントローラ１１は半導体装置外部に液晶表示装置（ＬＣＤ−ＰＮＬ）１９を接続するためのインタフェースを有し、液晶表示装置に対して表示データを出力する。ＰＣＩバスコントローラ１２は、外部ＰＣＩバス１７に接続するためのインタフェースを有し、外部ＰＣＩデバイス（ＰＣＩ−ＤＥＶ）２０との間でデータを転送する。本実施例の説明において、内蔵周辺モジュールとは、液晶コントローラ１１とＰＣＩバスコントローラ１２を総称して指すこととする。また、各回路から調停回路ＡＲＢ２へ入力される信号線は、実アドレス信号線とバス権の要求信号線であるが、図面上では煩雑となるため、省略して単線で表示している。
【００１７】
本実施例の特徴は、半導体装置ＳＣＤ内の内部バスを内部バスＢＵＳ１と内部バスＢＵＳ２に分け、外部バスＤＭＡＣ１５、外部メモリアクセス回路１６、内蔵メモリ１０、液晶コントローラ１１、ＰＣＩバスコントローラ１２が、それぞれ内部バスＢＵＳ１と内部バスＢＵＳ２のブリッジ構造を持つことである。
【００１８】
さらに、本実施例と従来の半導体装置との相違点は、従来ＤＭＡＣを用いて行っていた内蔵周辺モジュールと外部メモリとの転送および内蔵メモリと外部メモリとの転送を、周辺モジュールまたは内蔵メモリ自身が行う機構を持つことである。
【００１９】
本構造では、内蔵周辺モジュールと外部メモリ間の転送は、すべて内部バスＢＵＳ２で完結するため、転送中に内部バスＢＵＳ１が開放される。したがって、この間ＢＵＳ１を介してＣＰＵ９と内蔵メモリ１０間の転送や、ＣＰＵ９によりその他の内蔵周辺モジュールの動作モードの設定を行うことができる。
【００２０】
内部バスＢＵＳ１は、専らＣＰＵ９がイニシエータとなり、内蔵周辺モジュールまたは内蔵メモリ１０、または外部メモリ１８にアクセスする際に使用される内部バスである。さらに、内部バスＢＵＳ１はアドレス７、データ８に分けられる。外部バスＤＭＡＣ１５、外部メモリアクセス回路１６、内蔵メモリ１０、液晶コントローラ１１、ＰＣＩバスコントローラ１２は、内部バスＢＵＳ１ではターゲットとして動作する。ＣＰＵ９がどの内蔵周辺モジュールにアクセスするかは、ＢＵＳ１のアドレス７によって判断される。
【００２１】
内部バスＢＵＳ２は、外部バスＤＭＡＣ１５、外部メモリアクセス回路１６、内蔵メモリ１０、液晶コントローラ１１、ＰＣＩバスコントローラ１２がイニシエータとなり、ＣＰＵ９または内蔵周辺モジュールと外部メモリ１８間で転送を行う際に使用される内部バスである。
【００２２】
ＣＰＵ９は、外部メモリ１８または内蔵メモリ１０から命令およびデータを読み込んで動作する。特に図示しないが、ＣＰＵ９は、読み込んだ命令を解釈する命令制御回路と、演算を実行する演算回路と、ＢＵＳ１に対して転送要求を発行するバス制御回路とを持っている。また、ＣＰＵ９がキャッシュおよびキャッシュ制御回路を内蔵する構成であってもよい。
【００２３】
ＣＰＵ９が命令またはデータを読み込む場合、まずバスの調停回路ＡＲＢ１にバス権要求信号３２を出力する。内部バスＢＵＳ１が使用可能である場合、調停回路ＡＲＢ１はＣＰＵ９に対しバス獲得信号３３を出力する。本実施例のように内部バスＢＵＳ１のバス権要求をＣＰＵ９のみが発行する構成の場合は、バス調停回路ＡＲＢ１を省略することも可能である。
【００２４】
図３に内蔵周辺モジュールの代表的な構成例として、ＰＣＩバスコントローラ１２の構成を示す。ＰＣＩバスコントローラ１２は、内部バスＢＵＳ１と内部バスＢＵＳ２のブリッジ部（ＢＲＧ）１０１と、ＰＣＩインタフェース部（ＰＣＩ−Ｉ／Ｆ）１０２から構成される。
【００２５】
内部バスＢＵＳ１と内部バスＢＵＳ２のブリッジ部１０１は、動作モードを設定する制御レジスタ（ＲＥＧ）１０３、転送制御回路（ＢＲＧ−ＣＴＬ）１０７、転送データを一時的に蓄えるメモリ（ＦＩＦＯ）１０６、ＢＵＳ１とＢＵＳ２へのアクセスが競合したときの調停を行う調停回路（ＢＲＧ−ＡＲＢ）１０４、調停結果によりアクセスを選択するセレクタ（ＳＥＬ）１０５から構成される。
【００２６】
ＰＣＩバスコントローラ１２は、内部バスＢＵＳ１ではターゲットとして、内部バスＢＵＳ２ではイニシエータとして動作する。内部バスＢＵＳ１と内部バスＢＵＳ２のブリッジ部１０１は、ＣＰＵ９による内部バスＢＵＳ１からのアクセスへの応答と、内部バスＢＵＳ２を使用した内蔵周辺モジュールと外部メモリ１８との転送の制御を行う。
【００２７】
ＣＰＵ９は、内部バスＢＵＳ１を介して、ＰＣＩインタフェース部１０２のレジスタ（ＰＣＩ−ＲＥＧ）１０８とＰＣＩバス（ＰＣＩ−ＢＵＳ）１７への制御回路（ＰＣＩ−ＣＴＬ）１０９をアクセスすることができる。さらに、ＣＰＵ９は内部バスＢＵＳ１と内部バスＢＵＳ２のブリッジ部１０１の制御レジスタ１０３に、ＰＣＩバス１７と内部バスＢＵＳ２との転送の動作モードの設定を行う。制御レジスタ１０３に設定する情報は、例えば、転送元アドレス、転送先アドレス、転送サイズなどである。
【００２８】
ＰＣＩバスコントローラ１２が外部メモリ１８との間でデータを転送するとき、転送制御回路１０７は、レジスタ設定値１１０に従い、バス調停回路ＡＲＢ２に対してバス権要求信号３０を出力する。内部バスＢＵＳ２が使用可能である場合は、内部バスＢＵＳ２の調停回路ＡＲＢ２は、内部バスＢＵＳ２のバス権獲得信号３１をＰＣＩバスコントローラ１２に対し出力すると同時に、外部バスコントローラ１４が外部バス制御信号３８を外部バスＥＸＴ−ＢＵＳに出力し、外部メモリ１８から入出力されるデータ３９が内部バスＢＵＳ２を介して外部メモリアクセス回路１６に対し入出力される。入出力されるデータはメモリ１０６により一時的に記憶することで、外部バスＥＸＴ−ＢＵＳへのバースト転送を可能にする。
【００２９】
図４に内蔵メモリ１０の構成を示す。本実施例における内蔵メモリ１０は、ＰＣＩバスコントローラ１２に代表される内蔵周辺モジュールと類似の構成を持つ。ＰＣＩバスコントローラ１２の構造と異なる点は、ＰＣＩインタフェース部１０２の代わりに、内蔵メモリマット（ＭＥＭ−ＭＡＴ）１１８を備えることである。内蔵メモリ１０は、内部バスＢＵＳ１と内部バスＢＵＳ２とのブリッジ部１０１と、内蔵メモリマット１１８で構成される。
【００３０】
内蔵メモリ１０は、内部バスＢＵＳ１経由のＣＰＵ９によるアクセスに対する応答と、内部バスＢＵＳ２を経由した外部メモリ１８とのＤＭＡ転送の２つの機能を持つ。ＣＰＵ９は、内部バスＢＵＳ１を使用して、内蔵メモリマット１１８に対し読み出し、書き込みを行うことができる。また、ＣＰＵ９は内部バスＢＵＳ１を介して制御レジスタ１０３に内蔵メモリ１０対外部メモリ間１８のＤＭＡ転送の動作モードの設定を行う。制御レジスタ１０３に設定する情報は、たとえば転送元アドレス、転送先アドレス、転送サイズなどである。動作モードの設定に従い、転送制御回路１０７は内部バスＢＵＳ２の調停回路ＡＲＢ２に対して内部バスＢＵＳ２のバス権要求信号２６を出力する。内部バスＢＵＳ２が使用可能であれば、内部バスＢＵＳ２の調停回路ＡＲＢ２は内部バスＢＵＳ２のバス権獲得信号２７を出力する。このバス権獲得信号のタイミングに従い、内蔵メモリ１０は内部バスＢＵＳ２を介して外部メモリ１８との間でデータを転送する。
【００３１】
このとき、ＣＰＵ９による内蔵メモリマット１１８へのアクセスと、内蔵メモリ対外部メモリのＤＭＡ転送が同時に行われる場合、調停回路１０４により調停が行われ、アクセスはセレクタ１０５により選択される。なお、図４において、１１６は内蔵メモリへのアドレス・制御信号、１１７は内蔵メモリのデータである。
【００３２】
図５に外部バスＤＭＡＣ１５の構成を示す。外部バスＤＭＡＣ１５は、内蔵周辺モジュールまたは内蔵メモリ１０の、内部バスＢＵＳ１と内部バスＢＵＳ２のブリッジ部１０１と類似の構造を持つが、内部バスＢＵＳ１から制御レジスタ１０３のみにアクセス可能である点が異なる。
【００３３】
外部バスＤＭＡＣ１５は、外部メモリ１８から外部メモリ１８へのＤＭＡ転送を行う。ＣＰＵ９は、内部バスＢＵＳ１を介して制御レジスタ１０３に動作モードの設定を行う。制御レジスタ１０３に設定する情報は、たとえば転送元アドレス、転送先アドレス、転送サイズなどである。動作モードの設定に従い、転送制御回路１０７は内部バスＢＵＳ２の調停回路ＡＲＢ２に対して内部バスＢＵＳ２のバス権要求信号２２を出力する。内部バスＢＵＳ２が使用可能であれば、内部バスＢＵＳ２の調停回路ＡＲＢ２は内部バスＢＵＳ２のバス権獲得信号２３を出力する。このバス権獲得信号のタイミングに従い、外部バスＤＭＡＣ１５は内部バスＢＵＳ２を介して外部メモリ１８との間でデータを転送する。
【００３４】
外部メモリ１８から外部メモリ１８へのＤＭＡ転送では、転送元の外部メモリ１８から一旦、外部バスＤＭＡＣ１５内部のメモリ１０６にデータを読み込み、その後再び転送先の外部メモリ１８に対して書き出す。
【００３５】
図６に外部メモリアクセス回路（ＦＥＴ）１６の構成を示す。外部メモリアクセス回路１６は、ＣＰＵ９が外部メモリをアクセスするときに使用するフェッチャ−とも呼ばれる回路である。外部メモリアクセス回路１６は、内蔵周辺モジュールまたは内蔵メモリ１０の、内部バスＢＵＳ１と内部バスＢＵＳ２のブリッジ部１０１と類似の構造を持つが、制御レジスタ１０３を持たず、内部バスＢＵＳ１の転送を内部バスＢＵＳ２に伝達する構造である点が異なる。
【００３６】
外部メモリアクセス回路１６は、内部バスＢＵＳ２の転送を制御するための転送制御回路１０７と、転送データを一時的に記憶するためのメモリ１０６から構成される。ＣＰＵ９が、内部バスＢＵＳ１に発行した転送リクエストが外部メモリ１８に対するものだった場合、外部メモリアクセス回路１６は内部バスＢＵＳ１とＢＵＳ２のブリッジとなり、ＣＰＵ９と外部メモリ１８との間の転送を制御する。
【００３７】
ＣＰＵ９が発行した転送リクエストが外部メモリ１８に対するものであるかどうかは、内部バスＢＵＳ１のアドレス７によって判断される。転送制御回路１０７は、内部バスＢＵＳ２の調停回路ＡＲＢ２に対して内部バスＢＵＳ２のバス権要求信号２４を出力する。内部バスＢＵＳ２が使用可能であれば、内部バスＢＵＳ２の調停回路ＡＲＢ２は内部バスＢＵＳ２のバス権獲得信号２５を出力する。このバス権獲得信号のタイミングに従い、外部メモリアクセス回路１６は、内部バスＢＵＳ１で発行された転送リクエストを内部バスＢＵＳ２に対して発行し、ＣＰＵ９と外部メモリ１８との間でデータを転送する。
【００３８】
次に、図７と図８を共に参照しながら、本実施例における内部バスＢＵＳ１とＢＵＳ２のタイミングの一例を説明する。
【００３９】
図７は、図１で示した本発明に係る半導体装置ＳＣＤの内部バスＢＵＳ１と内部バスＢＵＳ２、および外部バスＥＸＴ−ＢＵＳのタイミングの一例を示したタイムチャートである。図８は、図７で示したタイムチャートの、主要な処理手順を示したシーケンスチャートである。図７と図８には、ＣＰＵ９による内蔵メモリアクセス、ＰＣＩバスコントローラ１２と外部メモリ間１８の転送、ＣＰＵ９による外部メモリアクセス２０２とＰＣＩバスコントローラ１２と外部メモリ１８間の転送２０３が競合した場合の３種類の内部バスの動作が示されている。
【００４０】
なお、図７において、括弧内の数字は図１における信号線の参照番号である。また、図８において参照符号２００はＣＰＵ９による内蔵メモリアクセスのシーケンス、２０１はＰＣＩバスコントローラ１２と外部メモリ間１８の１回目の転送シーケンス、２０２はＣＰＵ９による外部メモリアクセスのシーケンス、２０３はＰＣＩバスコントローラ１２と外部メモリ間１８の２回目の転送シーケンスを示している。
【００４１】
まず、タイミングＴ１において、内部バスＢＵＳ１のイニシエータ（ＩＮＡ１）であるＣＰＵ９は、内蔵メモリアクセスを行うために、内部バスＢＵＳ１に対するバスリクエストＲＥＱ１（図１の信号３２）を発行する。同時に、内部バスＢＵＳ２のイニシエータ（ＩＮＡ２）であるＰＣＩバスコントローラ１２は、外部メモリアクセスを行うために、内部バスＢＵＳ２に対するバスリクエストＲＥＱ２（図１の信号３０）を発行する。ＣＰＵ９による内蔵メモリアクセスは、内部バスＢＵＳ１のみで完結する転送であり、また、ＰＣＩバスコントローラ１２による外部メモリアクセスは、内部バスＢＵＳ２のみで完結する転送であるので、両転送は完全に並列して行われる。
【００４２】
タイミングＴ２において、内部バスＢＵＳ１のバス獲得信号ＧＮＴ１（図１の信号３３）がＣＰＵ９に対して発行され、続くＴ３サイクルでＣＰＵ９と内蔵メモリ１０間のデータ転送Ｄ１が行われる。これと平行して、同様にＴ２サイクルにおいて内部バスＢＵＳ２のバス獲得信号ＧＮＴ２（図１の信号３１）がＰＣＩバスコントローラ１２に対して発行され、続くＴ３サイクルからＴ６サイクルの間、バースト転送でＰＣＩコントローラ１２と外部メモリ１８との間でデータＤ２Ａ〜Ｄ２Ｄの転送が行われる。
【００４３】
続いて、Ｔ７サイクルでＣＰＵ９は外部メモリアクセスを行うために内部バスＢＵＳ１に対してバスリクエストＲＥＱ３Ａを発行する。
【００４４】
Ｔ８サイクルにおいて、内部バスＢＵＳ１のバス獲得信号ＧＮＴ３ＡがＣＰＵ９に対して発行され、ＣＰＵ９はバスサイクルを開始する。このとき外部メモリアクセス回路（ＦＥＴ）１６は、内部バスＢＵＳ１にＣＰＵ９が出力するアドレスが、外部メモリであることを認識し（ＥＸＴ−ＡＤＤ）、内部バスＢＵＳ２に対しバスリクエスト（ＲＥＱ３Ｂ）を発行する。
【００４５】
ＣＰＵ９による外部メモリアクセスは、内部バスＢＵＳ１とＢＵＳ２の両方を使用する転送である。
【００４６】
Ｔ９サイクルにおいて、外部メモリアクセス回路１６に対し内部バスＢＵＳ２のバス権獲得信号ＧＮＴ３Ｂ（図１の信号２５）が与えられ、バスサイクルが開始される。このＴ９サイクルにおいて、ＰＣＩバスコントローラ１２が内部バスＢＵＳ２のリクエストＲＥＱ４（図１の信号３０）を発行しているが、すでにこのＴ９サイクルにおいて外部メモリアクセス回路１６が内部バスＢＵＳ２のバスサイクルを開始しているので、ＰＣＩバスコントローラ１２に対するバス獲得信号ＧＮＴ４（図１の信号３１）は、バスサイクルが終了するＴ１１サイクルまで発行されない。
【００４７】
Ｔ１０サイクルにおいて、外部バス４と内部バスＢＵＳ２との間でデータＤ３が転送されるが、これは同時に、内部バスＢＵＳ１にも転送され、ＣＰＵ９と外部メモリ間１８の転送が完了する。
【００４８】
Ｔ１１サイクルにおいて、ＰＣＩバスコントローラ１２に対し内部バスＢＵＳ２のバス権ＧＮＴ４が与えられると、ＰＣＩバスコントローラ１２と外部メモリ間１８の転送が行われ、Ｔ１２サイクルにおいてデータ（Ｄ４）が転送される。
【実施例２】
【００４９】
図９は、本発明に係る半導体装置の第２の実施例を示す回路ブロック図である。本実施例は、第１の実施例の半導体装置において説明したブリッジ構造を有する内蔵周辺モジュールに加え、従来構造の内蔵周辺モジュールと従来構造のＤＭＡＣ４５とを併用して互換性の維持と内部バス効率の改善を図ったシステム構成である。
【００５０】
本実施例では、ブリッジ構造を持たない従来構造の内蔵周辺モジュールのシリアルコントローラ（ＳＣＩＦ）１３を、内部バスＢＵＳ１に接続する。シリアルコントローラ１３へのデータの入出力には、従来構造のＤＭＡＣ４５を使用する方法と、ＣＰＵ９により行う方法の２通りがある。従来構造のＤＭＡＣ４５を使用して、内蔵周辺モジュールと外部メモリ１８との間で転送を行う場合、内部バス上では２回の転送が行われる。第１の転送は、内部バスＢＵＳ１上でのＤＭＡＣ４５とシリアルコントローラ１３との転送であり、第２の転送は内部バスＢＵＳ１とＢＵＳ２を使用したＤＭＡＣ４５と外部メモリ１８との間の転送である。
【００５１】
従来構造のＤＭＡＣ４５を使用したシリアルコントローラ１３と外部メモリ１８との間のＤＭＡ転送は、第１の転送において内部バスＢＵＳ１を占有し、第２の転送において内部ＢＵＳ１とＢＵＳ２の両方を占有する。この期間、ＣＰＵ９は内部バスＢＵＳ１を使用した転送を行うことができないので、図１で示した第１の実施例と比較して内部バスの効率は低い。しかし、第１の転送の間は、本発明で開示したブリッジ構造を持つ内蔵周辺モジュールは、外部メモリ１８との間で転送が可能となるため、従来構造のＤＭＡＣ４５および従来構造の内蔵周辺モジュールを使用した場合でもバス効率の改善ができる。
【００５２】
以上、説明してきた実施例によれば、半導体装置上にＣＰＵが接続される第１の内部バスと、外部メモリへのアクセスを行うための第２の内部バスを備え、内蔵周辺モジュールは、その両方へアクセス可能な構造を持つことにより、内蔵周辺モジュールが第２の内部バスを使用して外部メモリとの間でデータを転送しているときに、ＣＰＵが並列に第１の内部バスを使用して内蔵メモリまたは内蔵周辺モジュールとの間でデータを転送するが可能になる。このため、内蔵周辺モジュールが第２の内部バスを使用して外部メモリとの間で転送を行っている間、ＣＰＵが接続される第１の内部バスを占有しないので、並行してＣＰＵと内蔵周辺モジュールとの間の転送を行うことができ、半導体装置の処理速度の向上が図れる。
【図面の簡単な説明】
【００５３】
【図１】本発明に係る半導体装置の第１の実施例を示す回路ブロック図。
【図２】従来例を示す回路ブロック図。
【図３】第１の実施例の内蔵周辺モジュールの一例のＰＣＩバスコントローラの構成を示す回路ブロック図。
【図４】第１の実施例の内蔵メモリの一例を示す回路ブロック図。
【図５】第１の実施例の外部バスＤＭＡＣの一例を示す回路ブロック図。
【図６】第１の実施例の外部メモリアクセス回路の一例を示す回路ブロック図。
【図７】第１の内部バスと第２の内部バスの使用の一例を示すタイムチャート。
【図８】図７で示したタイムチャートの主要な処理手順を示すシーケンスチャート。
【図９】本発明に係る半導体装置の第２の実施例を示す回路ブロック図。
【符号の説明】
【００５４】
７…ＢＵＳ１のアドレス、８…ＢＵＳ１のデータ、９…中央処理装置（ＣＰＵ）、１０…内蔵メモリ、１１…液晶コントローラ、１２…ＰＣＩバスインタフェース、１３…シリアルインタフェース、１４…外部バスコントローラ、１５…外部バスＤＭＡＣ、１６…外部メモリアクセス回路、１７…ＰＣＩバス、１８…外部メモリ、１９…液晶表示装置、２０…外部ＰＣＩデバイス、２１…シリアル通信デバイス、２２…外部ＤＭＡＣの内部バスＢＵＳ２へのバス要求信号、２３…外部ＤＭＡＣへの内部バスＢＵＳ２のバス権獲得信号、２４…外部メモリアクセス回路の内部バスＢＵＳ２へのバス権要求信号、２５…外部メモリアクセス回路への内部バスＢＵＳ２のバス権獲得信号、２６…内蔵メモリの内部バスＢＵＳ２へのバス要求信号、２７…内蔵メモリへの内部バスＢＵＳ２のバス権獲得信号、２８…液晶コントローラの内部バスＢＵＳ２へのバス要求信号、２９…液晶コントローラへの内部バスＢＵＳ２のバス権獲得信号、３０…ＰＣＩバスインタフェースの内部バスＢＵＳ２へのバス要求信号、３１…ＰＣＩバスインタフェースへの内部バスＢＵＳ２のバス権獲得信号、３２…中央処理装置の内部バスＢＵＳ１へのバス要求信号、３３…中央処理装置への内部バスＢＵＳ１のバス権獲得信号、３４…内蔵ＤＭＡＣの内部バスＢＵＳ１へのバス要求信号、３５…内蔵ＤＭＡＣへの内部バスＢＵＳ１のバス権獲得信号、３６…内蔵ＤＭＡＣの内部バスＢＵＳ２へのバス要求信号、３７…内蔵ＤＭＡＣへの内部バスＢＵＳ２のバス権獲得信号、３８…外部バスの制御信号、３９…外部バスのデータ、４０…バスブリッジ、４１…内部バスＢＵＳ２の制御信号、４２…内部バスＢＵＳ２のデータ、４３…内蔵周辺モジュール（Ｉ／Ｏ）、４４…外部バスアクセスの調停回路、４５…ＤＭＡコントローラ、１０１…バスブリッジ部、１０２…ＰＣＩインタフェース部、１０３…バスブリッジの制御レジスタ、１０４…バスブリッジの調停回路、１０５…セレクタ、１０６…メモリ、１０７…バスブリッジの転送制御回路、１０８…ＰＣＩインタフェース部の制御レジスタ、１０９…ＰＣＩインタフェース部の転送制御回路、１１０…バスブリッジの制御レジスタ設定値、１１１…ＰＣＩインタフェース部の制御レジスタ設定値、１１２…バスブリッジの制御レジスタの選択信号、１１３…ＰＣＩインタフェース部の制御レジスタの選択信号、１１４…ＰＣＩバスへの転送要求信号、１１６…内蔵メモリへのアドレス・制御信号、１１７…内蔵メモリのデータ、１１８…内蔵メモリマット、ＡＲＢ１…ＢＵＳ１の調停回路、ＡＲＢ２…ＢＵＳ２の調停回路、ＢＵＳ１…第１の内部バス、ＢＵＳ２…第２の内部バス、ＥＸＴ−ＢＵＳ…外部バス、ＳＣＤ…半導体装置。
【図１】
2006185253.tif 000003
【図２】
2006185253.tif 000004
【図３】
2006185253.tif 000005
【図４】
2006185253.tif 000006
【図５】
2006185253.tif 000007
【図６】
2006185253.tif 000008
【図７】
2006185253.tif 000009
【図８】
2006185253.tif 000010
【図９】
2006185253.tif 000011