(57)【特許請求の範囲】
【請求項１】
複数の機能ブロックと、
該複数の機能ブロックに接続される別々の複数のバスと、
該複数の機能ブロックに接続される別々の複数の制御信号線と、
メインバスと、
該メインバスに接続されるバス制御部と、
該複数のバスと該メインバスの間に設けられ該バス制御部から該メインバスへ送出されるアドレスを含む情報をデコードした結果に基づいて該複数のバスの１つを該メインバスに接続すると共に、該メインバスに接続された該複数のバスの１つに対応する１つの機能ブロックを、該アドレスを含む情報をデコードした結果に基づいて生成した制御信号を該１つの機能ブロックに対応した該制御信号線に送出して制御するバス分割制御部
を含むことを特徴とする半導体装置。
【請求項２】
該バス分割制御部は、
該バス制御部から該メインバスへ送出されるアドレスを含む情報をデコードして該制御信号を生成するデコーダ部と、
該デコーダ部のデコード結果に応じて該複数のバスの１つを該メインバスに接続するバス分割部
を含むことを特徴とする請求項１記載の半導体装置。
【請求項３】
該複数の機能ブロックのうち少なくとも２つの機能ブロックは該複数のバスのうちで１つのバスを共有し、該バス分割制御部は、転送要求信号を受け取ると該転送要求信号に応答して該２つの機能ブロック間での該１つのバスを介した転送を制御することを特徴とする請求項１記載の半導体装置。
【請求項４】
該バス分割制御部は、該２つの機能ブロックの一方に対するライトイネーブル信号と他方に対するリードイネーブル信号とを同時に送出することを特徴とする請求項３記載の半導体装置。
【請求項５】
該バス分割制御部は、転送要求信号に加えて転送制御信号を受け取り該転送制御信号に応じて該２つの機能ブロックのうちでの転送先と転送元とを決定することを特徴とする請求項３記載の半導体装置。
【請求項６】
該バス分割制御部は、該バス制御部から該２つの機能ブロックの１つに対するアクセス要求があった場合には、該アクセス要求を該転送要求信号に優先して処理することを特徴とする請求項３記載の半導体装置。
【請求項７】
該バス分割制御部は、該バス制御部から該複数の機能ブロックのうち該２つの機能ブロック以外の１つに対するアクセス要求があった場合には、該アクセス要求を該転送要求信号と並行して処理することを特徴とする請求項３記載の半導体装置。
【請求項８】
該バス分割制御部は、該バス制御部から該メインバスへ送出されるアドレスを含む情報をデコードした結果に基づいて該バス制御部からのリードアクセスかライトアクセスかを判断して、判断した結果に応じたアクセス方向に該複数のバスの１つを該メインバスに接続することを特徴とする請求項１記載の半導体装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、一般に半導体装置に関し、詳しくは複数の機能ブロックとそれに接続されるアドレスバス及びデータバスを有する半導体装置に関する。
【０００２】
【従来の技術】
電子機器が多機能化するに伴って、電子機器内部で用いられる半導体装置には、多様な機能と拡張性とが求められるようになっている。これを実現するために、半導体装置内でバス上に多数の機能ブロックを接続し、バスを介して各機能ブロックの制御を行う構成が用いられる。
【０００３】
図１は、従来の半導体装置の構成を示す図である。
【０００４】
図１に示されるように、従来の半導体装置は、バス制御部１０、アドレス／データバス１１、及び複数の機能ブロック１２を含む。バス制御部１０はＣＰＵ等の制御ユニットであり、アドレス／データバス１１を介して機能ブロック１２を制御する。バス制御部１０が制御するアドレス空間において、各機能ブロック１２は所定のアドレス領域に割り当てられており、バス制御部１０が所定のアドレス領域にアクセスすることで対応する機能ブロック１２の制御を実行する。各機能ブロック１２にはラッチ・デコーダ部１２Ａが設けられる。ラッチ・デコーダ部１２Ａは、アドレス／データバス１１を介して送信されるアドレスをラッチしてデコードし、自らの機能ブロック１２に対するアクセスであるか否かを判断する。
【０００５】
このように、従来の半導体装置におけるバスの制御方法に於いては、アドレス／データバス１１に複数の機能ブロック１２を直接接続し、各機能ブロック１２へのアクセスは、各機能ブロックごとに用意されたラッチ・デコーダ部１２Ａにより判定していた。
【０００６】
【発明が解決しようとする課題】
このような構成の場合、１対のアドレス／データバス１１に複数の機能ブロック１２を接続するので、機能ブロック１２の数が多くなるとバスの負荷が増大することになる。従って、多数の機能ブロック１２が設けられる場合には、それに対応した高い駆動能力のバスドライバが必要となる。
【０００７】
更に、1対のアドレス／データバス１１に多数の機能ブロック１２を接続する場合には、基本的に機能ブロック１２間で同一の構成であるラッチ・デコーダ部１２Ａを多数設けることになり、重複した回路構成による回路規模の増大につながる。また更に、配線長が長くなることよって配線遅延が大きくなり、高速動作が難しくなると共に消費電流が大きくなり、またノイズも発生し易くなる。
【０００８】
また、１対のアドレス／データバス１１に複数の機能ブロック１２を接続しているので、アクセスは１つの機能ブロック１２に対してのみ可能である。更に、機能ブロック１２間の転送に於いては、ある機能ブロック１２に対するバス制御部１０によるリードサイクルと別の機能ブロック１２に対するバス制御部１０によるライトサイクルとの２サイクルが必要となり、そのサイクルの期間中はアドレス／データバス１１を占有する必要がある。このようにバスを専有すると、他の機能ブロック１２に対するアクセスや機能ブロック１２間でのデータ転送が不可能になり、また転送サイクルに２サイクル必要であることも理由となり、半導体装置全体としての性能を向上させることが出来ない。
【０００９】
以上を鑑みて、本発明は、アドレスバス及びデータバスを介して機能ブロックの制御を効率的に実行することが可能な半導体装置を提供することを目的とする。
【００１０】
【課題を解決するための手段】
本発明による半導体装置は、複数の機能ブロックと、該複数の機能ブロックに接続される別々の複数のバスと、該複数の機能ブロックに接続される別々の複数の制御信号線と、メインバスと、該メインバスに接続されるバス制御部と、該複数のバスと該メインバスの間に設けられ該バス制御部から該メインバスへ送出されるアドレスを含む情報をデコードした結果に基づいて該複数のバスの１つを該メインバスに接続すると共に、該メインバスに接続された該複数のバスの１つに対応する１つの機能ブロックを、該アドレスを含む情報をデコードした結果に基づいて生成した制御信号を該１つの機能ブロックに対応した該制御信号線に送出して制御するバス分割制御部を含むことを特徴とする。
【００１１】
本発明においては、アドレスのラッチ・デコーダ関係の回路をバス分割制御部として一個所にまとめ、各機能ブロックごとにアドレス・データバスを分割することで、回路規模を小さくすることが出来る。また、バスの負荷を削減すると共に、消費電流を小さくし、更にノイズを低減することが出来る。
【００１２】
更に本発明の有る側面によれば、上記半導体装置において、該複数の機能ブロックのうち少なくとも２つの機能ブロックは該複数のバスのうちで１つのバスを共有し、該バス分割制御部は、転送要求信号を受け取ると該転送要求信号に応答して該２つの機能ブロック間での該１つのバスを介した転送を制御することを特徴とする。
【００１３】
このようにバスが各機能ブロック毎に分割されているので、空いているバスを使うことにより、機能ブロック間転送を実行することが出来る。この際、転送先と転送元の機能ブロックにライト信号とリード信号を同時に供給することで、転送アクセス数を少なくして１アクセスでの転送が可能になる。これにより、半導体装置におけるデータ転送速度及びデータ転送効率を向上させることが出来る。
【００１４】
【発明の実施の形態】
以下に、本発明の実施例を添付の図面を用いて詳細に説明する。
【００１５】
図２は、本発明による半導体装置の構成を示すブロック図である。
【００１６】
図２の半導体装置は、バス制御部２１、アドレス・データバス２２、機能ブロック２３Ａ、２３Ｂ、２３Ｃ、及び２３Ｄ、機能ブロック２３Ａへの制御信号線２４Ａ、機能ブロック２３Ｂへの制御信号線２４Ｂ、機能ブロック２３Ｃへの制御信号線２４Ｃ、機能ブロック２３Ｄへの制御信号線２４Ｄ、機能ブロック２３Ａへのデータバス２５Ａ、機能ブロック２３Ｂへのデータバス２５Ｂ、機能ブロック２３Ｃ及び２３Ｄへのデータバス２５Ｃ、バス分割制御部２６、転送要求信号線２７、転送制御信号線２８、及びアドレス・データバス２２の制御信号線２９を含む。またバス分割制御部２６は、ラッチ・デコーダ部３１及びバス分割部３２を含む。また図２では、機能ブロック２３Ｂは、複数の機能ブロックからなる機能ブロック群として示してあるが、１つの機能ブロックであってもよい。
【００１７】
バス分割制御部２６のラッチ・デコーダ部３１は、バス制御部２１からアドレス・データバス２２を介して供給されるアドレス信号をラッチし、ラッチしたアドレスをデコードする。バス分割制御部２６のバス分割部３２は、ラッチ・デコーダ部３１のデコード結果に従って、バス分割制御部２６に接続される機能ブロック２３Ａ、２３Ｂ、２３Ｃ、及び２３Ｄの1つを選択し、選択した機能ブロックに対応するデータバス２５Ａ、２５Ｂ、及び２５Ｃの１つとアドレス・データバス２２とを接続する。またラッチ・デコーダ部３１は、アドレスのデコード結果に基づいて、選択された機能ブロックとデータバスの制御を行う制御信号を生成して、制御信号線２４Ａ、２４Ｂ、２４Ｃ、及び２４Ｄに供給する。
【００１８】
図２の構成により、アドレス・データバス２２及び各データバス２５Ａ、２５Ｂ、及び２５Ｃの負荷が軽くなることで、動作の高速化を図ることが出来ると共に、各バスを駆動するバスドライバを小型化することで低消費電力化が達成できる。また、従来各機能ブロックごとに持っていたアドレスのラッチ・デコード回路を、バス分割制御部２６にラッチ・デコーダ部３１として1つに纏めることにより、全体の回路規模が縮小される。
【００１９】
図２の構成は、機能ブロック２３Ｃと機能ブロック２３Ｄとの間で他の部分とは独立したデータ転送が可能な構成となっている。これを実現するために、バス分割制御部２６には、転送要求信号２７及び転送制御信号２８が供給される。転送要求信号２７は転送動作を要求する信号であり、転送制御信号２８は転送方向が機能ブロック２３Ｃから機能ブロック２３Ｄであるか或いは機能ブロック２３Ｄから機能ブロック２３Ｃであるかを制御する。バス分割制御部２６は、転送要求信号２７及び転送制御信号２８に応じて、機能ブロック２３Ｃ及び機能ブロック２３Ｄをアドレス・データバス２２から分離し、転送制御信号線２８を介して機能ブロック２３Ｃ及び機能ブロック２３Ｄに転送制御信号を供給する。これにより、他の分割されたデータバス２５Ａ及び２５Ｂの動作に影響を与えることなく、機能ブロック２３Ｃ及び機能ブロック２３Ｄ間での単独の転送を実行することが出来る。
【００２０】
上述のように本発明においては、アドレスのラッチ・デコーダ回路を一個所にまとめ、各機能ブロックごとにアドレス・データバスを分割することで、回路規模を小さくすることが出来る。また、バスの負荷を削減すると共に、消費電流を小さくし、更にノイズを低減することが出来る。
【００２１】
またバスが各機能ブロック毎に分割されているので、空いているバスを使うことにより、機能ブロック間転送を実行することが出来る。この際、転送要求信号と転送制御信号に応答して、転送先と転送元の機能ブロックにライト信号とリード信号を同時に供給することで、転送アクセス数を少なくして１アクセスでの転送が可能になる。
【００２２】
図３は、基本となるバス動作のタイミングを示すタイミング図である。
【００２３】
図２のアドレス・データバス２２は、アドレス情報とデータ情報とが時分割に転送されるバスであり、例えば１６ビット幅の信号ＲＢ［１５：０］を搬送する。制御信号線２９が、アドレス・データバス２２のバスサイクルの種類（例えば、ｉｄｌｅ、＃１、＃２等）を示す２ビットの信号ＢＳ［１：０］を搬送する。バス制御部２１は、制御信号線２９のバス制御信号ＢＳの状態により、時分割されたアドレス・データバス２２を制御する。これにより、機能ブロックに対するアクセスを２クロックサイクルで実行する。
【００２４】
以下に、バスの動作を、図３を参照して説明する。なお図３において、アドレス・データバス２２はＲＢとして示され、制御信号線２９はＢＳとして示される。また図３に示されるアクセスは、最初のアクセスが機能ブロック２３Ａに対するＲＥＡＤ動作であり、次のアクセスが機能ブロック２３Ａに対するＷＲＩＴＥ動作である。
【００２５】
１.ＩＤＬＥサイクル
ＩＤＬＥサイクルはアクセス要求がない状態であり、バス制御部２１は、アドレス・データバス２２をハイインピーダンス状態にする。
【００２６】
２．第１サイクル（＃１）
バス分割制御部２６において、２ビットのバス制御信号ＢＳをデコードすることで、第１のサイクルを示すデコード信号ｄｅｃｏｄｅ＃１を生成し、第１のサイクルに応じた制御を実行する。
【００２７】
この第１サイクル（＃１）で、バス制御部２１は、アドレス情報とリード/ライト情報をアドレス・データバス２２に出力する。ラッチ・デコーダ部３１は、例えば第１サイクルにおけるＲＢ［１５］とＲＢ［１２：０］をアドレスとして使用し、ＲＢ［１４］とＲＢ［１３］とをリード/ライト情報として使用する。図３に示される最初のアクセスにおいて、ラッチ・デコーダ部３１は、アドレスＡ１とリードを示す信号ＲＥＡＤをラッチする。また次のアクセスにおいては、ラッチ・デコーダ部３１は、アドレスＡ３とライトを示す信号ＷＲＩＴＥをラッチする。
【００２８】
３．第２サイクル（＃２）
バス分割制御部２６において、２ビットのバス制御信号ＢＳをデコードすることで、第２のサイクルを示すデコード信号ｄｅｃｏｄｅ＃２を生成し、第２のサイクルに応じた制御を実行する。
【００２９】
この第２サイクル（＃２）において、ラッチ・デコーダ部３１は、第１のサイクルでラッチした情報をデコードする。その結果、バスサイクルがリードである場合（図３の第１番目のアクセスの場合）、バス分割制御部２６のラッチ・デコーダ部３１は、制御信号２４Ａとしてリードイネーブル信号（ｒｅａｄ−ｅｎａｂｌｅ）を機能ブロック２３Ａに供給する。これに応答して、機能ブロック２３Ａは、クロックのＬｏｗ期間中にデータバス２５ＡにデータＤ１を出力する。この時、アドレス情報のデコード結果に基づいて、バス分割部３２により、データバス２５Ａはアドレス・データバス２２に読み出しアクセス方向に接続されている。従って、読み出されたデータＤ１は、アドレス・データバス２２に現れる。クロックの次の立ち上りエッジで、バス制御部２１が、ＲＢ［１５：０］のデータＤ１を取り込む。
【００３０】
バスサイクルがライトの場合（図３の第２番目のアクセスの場合）には、バス制御部２１が、クロックのＬｏｗ期間中にアドレス・データバス２２に対してデータＤ３を出力する。この時、アドレス情報のデコード結果に基づいて、バス分割部３２により、データバス２５Ａはアドレス・データバス２２に書き込みアクセス方向に接続されている。従って、データＤ３は、バス分割部３２を介してデータバス２５Ａに現れる。またバス制御部２１のラッチ・デコーダ部３１は、制御信号２４Ａとしてライトイネーブル信号（ｗｒｉｔｅ−ｅｎａｂｌｅ）を機能ブロック２３Ａに供給する。機能ブロック２３Ａは、クロックの次の立ち上りエッジで、データバス２５ＡのデータＤ３を取り込む。
【００３１】
同様に各機能ブロック２３Ｂ、２３Ｃ、及び２３Ｄへのアクセス要求の場合においても、バス分割制御部２６は、第１サイクルでラッチしたＲＢ［１５：０］を第２サイクルでデコードし、デコードしたリード/ライト情報に応じて各機能ブロック２３Ｂ、２３Ｃ、及び２３Ｄへの制御信号をアサートする。それと同時に、デコードしたアドレス情報に基づいて、バス分割制御部２６は、対応するデータバスをアドレス・データバス２２と接続する。
【００３２】
図４は、機能ブロック間でのデータ転送時におけるバス動作のタイミングを示すタイミング図である。
【００３３】
転送要求信号２７がアサートされた場合は、転送制御信号２８の指示に応じて、転送方向即ち転送先と転送元を決定する。例えば、バス分割制御部２６から機能ブロック２３Ｃに対する制御信号２４Ｃをリード（ｒｅａｄ−ｅｎａｂｌｅ−Ｃ）とし、機能ブロック２３Ｄに対する制御信号２４Ｄをライト（ｗｒｉｔｅ−ｅｎａｂｌｅ−Ｄ）とする。これにより、機能ブロック２３Ｃからデータバス２５ＣにデータＤ２が出力され、その次のクロックの立ち上りで機能ブロック２３Ｄがデータバス２５Ｃのデータを取り込む。これにより、1アクセスで機能ブロック２３Ｃ及び２３Ｄの間でのデータ転送を実行することができる。
【００３４】
なおこの際、機能ブロック２３Ｃ及び機能ブロック２３Ｄ間でのデータ転送を実行しながら、これとは独立に、他の機能ブロック２３Ａ或いは２３Ｂに対するバス制御部２１からのアクセスを実行することが可能である。また転送要求信号２７がアサートされた時にデータバス２５Ｃが使用中であれば、アイドル状態になりデータバス２５Ｃが使用可能になるまで待つように構成してよい。
【００３５】
転送要求信号２７が取り下げられると、データバス２５Ｃは解放される。また転送要求信号２７がアサートした状態で、バス制御部２１からデータバス２５Ｃにアクセス要求が発生した場合は、バス制御部２１からの通常アクセスが優先される。即ち、転送要求はアイドル状態になり、データバス２５Ｃが空くまで待つことになる。
【００３６】
図５は、バス分割制御部２６の詳細な構成の一例を示す回路図である。
【００３７】
図５のバス分割制御部２６は、デコーダ４１、ラッチ４２、デコーダ・制御信号生成回路４３、ラッチ４４、ラッチ４５、論理回路４６、インバータ４７、論理回路４８、セレクタ４９、及びバスドライバ５１乃至５４を含む。図２のラッチ・デコーダ部３１は、例えば、デコーダ４１、ラッチ４２、デコーダ・制御信号生成回路４３、ラッチ４４、ラッチ４５、論理回路４６、インバータ４７、及び論理回路４８に対応し、バス分割部３２は、セレクタ４９及びバスドライバ５１乃至５４に相当する。なお図５において、主要な信号に対しては、論理関係が論理式として示されている。
【００３８】
デコーダ４１は、アドレス・データバス２２に対する制御信号線２９の信号ＢＳ０及びＢＳ１を受け取り、これをデコードする。信号ＢＳ０及びＢＳ１がアドレスサイクルを示す場合には信号＃１をアサートし、信号ＢＳ０及びＢＳ１がデータサイクルを示す場合には信号＃２をアサートする。信号＃１はラッチ４２にイネーブル信号として供給され、信号＃２はデコーダ・制御信号生成回路４３にイネーブル信号として供給される。
【００３９】
ラッチ４２は、アドレスサイクルでイネーブルされ、アドレス・データバス２２からのアドレス情報をクロック信号ＣＬＫに同期してラッチする。ラッチした例えば１６ビットのアドレス信号は、ラッチ４２からデコーダ・制御信号生成回路４３に供給される。
【００４０】
デコーダ・制御信号生成回路４３は、データサイクルでイネーブルされ、アドレス・データバス２２からのアドレスをデコードした結果に基づいて、種々の制御信号を生成する。この制御信号の一部は、機能ブロック２３Ａ、２３Ｂ、２３Ｃ、及び２３Ｄに対する制御信号線２４Ａ、２４Ｂ、２４Ｃ、及び２４Ｄに供給される。これにより、アドレス信号により選択された機能ブロックに対して、アドレス信号の一部により指定されたリード動作或いはライト動作を実行させる。なお制御信号線２４Ｃ及び２４Ｄに対応する制御信号は、論理回路４８を介した後に、制御信号線２４Ｃ及び２４Ｄに供給される。論理回路４８は、機能ブロック２３Ｃ及び２３Ｄ間でのデータ転送を行う際に、制御信号線２４Ｃ及び２４Ｄへの制御信号をデコーダ・制御信号生成回路４３とは別に生成する回路である。
【００４１】
デコーダ・制御信号生成回路４３が生成する制御信号の一部は、バスドライバ５１乃至５３に供給される。供給された制御信号に基づいて、ライトアクセスの場合に、バスドライバ５１乃至５３の何れか１つが選択的に駆動される。これにより、アドレス・データバス２２がデータバス２５Ａ、２５Ｂ、及び２５Ｃの１つに選択的に接続され、アドレス・データバス２２から選択されたデータバスへのライトアクセスが可能になる。
【００４２】
またデコーダ・制御信号生成回路４３が生成する制御信号の一部は、セレクタ４９とバスドライバ５４に供給される。セレクタ４９は、供給された制御信号に基づいて、データバス２５Ａ、２５Ｂ、及び２５Ｃの何れかを選択して、バスドライバ５４に接続する。バスドライバ５４は、リードアクセスの場合に駆動され、選択されたデータバスをアドレス・データバス２２に接続する。これにより、選択されたデータバスからアドレス・データバス２２へのリードデータ転送が可能となる。
【００４３】
ラッチ４４は、転送要求信号線２７の転送要求信号をクロック信号ＣＬＫに同期してラッチする。ラッチ４５は、転送制御信号線２８の転送制御信号をクロック信号ＣＬＫに同期してラッチする。ラッチ４４及び４５がラッチした信号は、論理回路４６に供給される。論理回路４６は、転送要求がある状態（転送要求信号線がＨＩＧＨ）で且つ転送制御信号線２８がＨＩＧＨの場合に、論理回路４８に供給される信号ＣＤをＨＩＧＨにする。また転送要求がある状態（転送要求信号線がＨＩＧＨ）で且つ転送制御信号線２８がＬＯＷの場合に、論理回路４８に供給される信号ＤＣをＨＩＧＨにする。信号ＣＤ及びＤＣの何れがＨＩＧＨになるかによって、機能ブロック２３Ｃ及び２３Ｄのうちで転送元及び転送先を指定する。
【００４４】
上述のように、論理回路４８は、デコーダ・制御信号生成回路４３から制御信号２４Ｃ及び２４Ｄに対応する信号ＣＲ、ＣＷ、ＤＲ、及びＤＷを受け取ると共に、論理回路４６から信号ＣＤ及びＤＣを受け取る。論理回路４８は更に、デコーダ・制御信号生成回路４３からインバータ４７を介してデータバス２５Ｃ選択時にＨＩＧＨになる信号の反転信号を受け取る。これによって、データバス２５Ｃ選択時には論理回路４６からの信号ＣＤ及びＤＣを無視し、デコーダ・制御信号生成回路４３から供給される信号ＣＲ、ＣＷ、ＤＲ、及びＤＷを、制御信号線２４Ｃ及び２４Ｄに供給する。ここで例えば、信号ＣＲ及びＣＷは、機能ブロック２３Ｃに対するリードイネーブル及びライトイネーブルに対応する。従って、転送要求信号線２７からのデータ転送要求が存在するか否かに関わらず、データバス２５Ｃ選択時には、デコーダ・制御信号生成回路４３からの指示によって制御が行われる。
【００４５】
データバス２５Ｃが非選択であり且つ転送要求信号線２７からのデータ転送要求が存在する場合には、論理回路４８は、論理回路４６からの信号ＣＤ及びＤＣに基づいて、転送元及び転送先を指定する制御信号を制御信号線２４Ｃ及び２４Ｄに供給する。これによって、機能ブロック２３Ｃ及び機能ブロック２３Ｄ間でのデータ転送が実行される。この時バスドライバ５１は非選択であり、アドレス・データバス２２からのデータが機能ブロック間転送処理中のデータバス２５Ｃに影響を与えることは無い。なおこの際、機能ブロック２３Ｃ及び機能ブロック２３Ｄ間でのデータ転送を実行しながら、これとは独立に、他の機能ブロック２３Ａ或いは２３Ｂに対するバス制御部２１からのアクセスを実行することが可能である。
【００４６】
図６は、デコーダ・制御信号生成回路４３の回路構成を示す図である。
【００４７】
図６のデコーダ・制御信号生成回路４３は、ＲＷデコーダ６１、アドレスデコーダ６２、制御信号生成論理回路６３、及びＯＲ回路６４及び６５を含む。
【００４８】
ＲＷデコーダ６１は、ラッチ４２から供給される例えば１６ビットのアドレス信号のうちで、リード・ライトを示すアドレスビット（図の例ではＲＢ［１４］とＲＢ［１３］）を入力される。このアドレスビットをデコードすることで、リードを指示するリード信号ＲＤとライトを指示するライト信号ＷＲを生成する。リード信号ＲＤとライト信号ＷＲとは、制御信号生成論理回路６３に供給される。
【００４９】
アドレスデコーダ６２は、ラッチ４２から供給される例えば１６ビットのアドレス信号のうちで、アドレスを示すアドレスビット（図の例ではＲＢ［１２：０］）を入力される。このアドレスビットをデコードすることで、機能ブロック２３Ａ、２３Ｂ、２３Ｃ、及び２３Ｄに対応するデコード信号Ａ、Ｂ、Ｃ、及びＤを生成する。これらデコード信号Ａ、Ｂ、Ｃ、及びＤのうちで、選択された機能ブロックに対応する信号がＨＩＧＨになる。デコード信号Ａ、Ｂ、Ｃ、及びＤは、制御信号生成論理回路６３に供給される。
【００５０】
デコーダ・制御信号生成回路４３は、デコーダ４１からのイネーブル信号ＥＮＡがアサートされると動作し、図に示される所定の論理演算を実行して制御信号ＡＲ、ＡＷ、ＢＲ、ＢＷ、ＣＲ、ＣＷ、ＤＲ、及びＤＷを出力する。制御信号ＡＲ及びＡＷは、それぞれ機能ブロック２３Ａのリード及びライトを指示する。制御信号ＢＲ及びＢＷは、それぞれ機能ブロック２３Ｂのリード及びライトを指示する。制御信号ＣＲ及びＣＷは、それぞれ機能ブロック２３Ｃのリード及びライトを指示する。制御信号ＤＲ及びＤＷは、それぞれ機能ブロック２３Ｄのリード及びライトを指示する。
【００５１】
ＯＲ回路６４は、制御信号ＡＲ、ＢＲ、ＣＲ、及びＤＲのＯＲをとることで、リードアクセスを指示する信号を生成してバスドライバ５４に供給する。バスドライバ５４は、この信号に応答して、リード方向にバスを接続して駆動する。ＯＲ回路６５は、制御信号ＣＷ及びＤＷのＯＲをとることで、機能ブロック２３Ｃ或いは２３Ｄに対するライトアクセスを指示する信号を生成してバスドライバ５１に供給する。この信号に応答して、バスドライバ５１は、ライト方向にデータバス２５Ｃをアドレス・データバス２２に接続する。また図６に示されるように、制御信号ＡＷ及びＢＷが、それぞれバスドライバ５３及び５２に供給され、これにより対応するバスがアドレス・データバス２２にライト方向に接続される。
【００５２】
上記実施例は、本発明の構成の一例を示すものであり、開示された特定の内容に本発明を限定するものではない。例えば、上記実施例は、アドレス及びデータが時分割で伝送されるマルチプレクスバスを構成例として用いているが、本発明はこの方式に限定されるものではなく、アドレスバスとデータバスとが別個に設けられる構成に適用することも可能である。本発明の開示に基づけば、当業者はそのような構成を実施することが可能である。
【００５３】
以上、本発明を実施例に基づいて説明したが、本発明は上記実施例に限定されるものではなく、特許請求の範囲に記載の範囲内で様々な変形が可能である。
【００５４】
【発明の効果】
本発明においては、アドレスのラッチ・デコーダ回路を一個所にまとめ、各機能ブロックごとにアドレス・データバスを分割することで、回路規模を小さくすることが出来る。また、バスの負荷を削減すると共に、消費電流を小さくし、更にノイズを低減することが出来る。
【００５５】
またバスが各機能ブロック毎に分割されているので、空いているバスを使うことにより、機能ブロック間転送を実行することが出来る。この際、転送先と転送元の機能ブロックにライト信号とリード信号を同時に供給することで、転送アクセス数を少なくして１アクセスでの転送が可能になる。これにより、半導体装置におけるデータ転送速度及びデータ転送効率を向上させることが出来る。
【図面の簡単な説明】
【図１】従来の半導体装置の構成を示す図である。
【図２】本発明による半導体装置の構成を示すブロック図である。
【図３】本発明における基本となるバス動作のタイミングを示すタイミング図である。
【図４】本発明による機能ブロック間でのデータ転送時におけるバス動作のタイミングを示すタイミング図である。
【図５】バス分割制御部の詳細な構成の一例を示す回路図である。
【図６】デコーダ・制御信号生成回路の回路構成を示す図である。
【符号の説明】
２１  バス制御部
２２  アドレス・データバス
２３Ａ、２３Ｂ、２３Ｃ、２３Ｄ  機能ブロック
２４Ａ、２４Ｂ、２４Ｃ、２４Ｄ  制御信号線
２５Ａ、２５Ｂ、２５Ｃ、２５Ｄ  データバス
２６  バス分割制御部
２７  転送要求信号線
２８  転送制御信号線
２９  制御信号線
３１  ラッチ・デコーダ部
３２  バス分割部
【図１】
0004838458.tif 000002
【図２】
0004838458.tif 000003
【図３】
0004838458.tif 000004
【図４】
0004838458.tif 000005
【図５】
0004838458.tif 000006
【図６】
0004838458.tif 000007