(57)【特許請求の範囲】
【請求項１】
チップ上に生成されるマイクロコンピュータであって、
データ入出力パッド、
前記データ入出力パッドに第１のバスを介して結合され、前記データ入出力パッドを介しての情報信号の入出力を行うためのインタフェースとして機能するバスインターフェース手段、
前記バスインタフェース手段と第２のバスを介して結合され、前記バスインタフェース手段と情報信号の授受を行う第１のメモリ、
第３のバスを介して前記第１のメモリに結合され、前記第１のメモリと双方向にデータを転送するための、ラッチ手段を含む第１の双方向転送手段、
前記第１の双方向転送手段と第４のバスを介して結合され、少なくとも前記第１の双方向転送手段と双方向にデータを転送するための、ラッチ手段を含む第２の双方向転送手段、
第５のバスを介して前記第２の双方向転送手段と結合され、前記第２の双方向転送手段と情報信号の授受を行うための第２のメモリ、および
前記第２の双方向転送手段と第６のバスを介して結合され、前記第２の双方向転送手段と情報信号の授受を行ない、該情報に含まれる命令を実行しかつ該実行結果のデータを前記第６のバスへ送出するプロセサ手段を備える、マイクロコンピュータ。
【請求項２】
前記第１の双方向転送手段は、
前記第３のバス上に与えられた情報信号をラッチして前記第２の双方向転送手段へ転送する第１のリードバッファ手段と、
前記第２の双方向転送手段から転送された情報信号をラッチして前記第３のバス上に送出する第１のライトバッファ手段とを含み、
前記第２の双方向転送手段は、
前記第１のリードバッファ手段および前記第２のメモリから与えられる情報信号を選択的にラッチして前記第６のバスへ転送する第２のリードバッファ手段と、
前記第６のバスを介して与えられる情報信号をラッチし、該ラッチした情報信号を前記第１のライトバッファ手段および前記第４のバスへ選択的に転送する第２のライトバッファ手段とを含み、
前記第１のリードバッファ手段と前記第２のリードバッファ手段の間のバスと前記第２のライトバッファ手段と前記第１のライトバッファ手段との間のバスは別々に設けられる、請求項１記載のマイクロコンピュータ。
【請求項３】
前記第２のリードバッファ手段は、ラッチした情報を増幅して転送する手段を含む、請求項２記載のマイクロコンピュータ。
【請求項４】
前記第２の双方向転送手段は、前記第２のメモリと前記プロセサ手段との間に配置される、請求項１記載のマイクロコンピュータ。
【請求項５】
前記第１のメモリは、前記バスインタフェース手段と前記第１の双方向転送手段との間に配置され、かつ
前記第１の双方向転送手段は、前記第１のメモリと前記第２のメモリとの間に配置される、請求項１記載のマイクロコンピュータ。
【請求項６】
前記第１の双方向転送手段と前記第２の双方向転送手段との間の前記第４のバスは、前記第２のメモリの上を横断して通過するように配置される、請求項４記載のマイクロコンピュータ。
【請求項７】
前記バスインタフェース手段は、前記チップの周辺部に分散して、前記プロセサ手段、前記第１のメモリ手段、前記第２のメモリ手段、前記第１の双方向転送手段および前記第２の双方向転送手段を間に挟むように配置される複数のサブインタフェース手段を含む、請求項１記載のマイクロコンピュータ。
【請求項８】
前記第１ないし第６のバスは互いに別々に設けられる、請求項１記載のマイクロコンピュータ。
【請求項９】
前記第１のバスのバス幅は前記第２のバスのそれよりも小さい、請求項１記載のマイクロコンピュータ。
【請求項１０】
前記バスインタフェース手段は、前記第２のバスを介して与えられる情報信号をラッチし、該ラッチした情報信号を選択的に前記第１のバスへ出力する第１の選択的転送手段と、
前記第２のバスのバス幅に等しい数のラッチ手段を含み、前記第１のバスを介して与えられる情報信号を前記ラッチ手段に選択的にラッチし、該ラッチした情報信号を前記第２のバスへ出力する第２の選択的転送手段を含む、請求項１記載のマイクロコンピュータ。
【請求項１１】
前記第２のメモリ手段は、前記チップ上に対称的に分散して配置される複数のメモリユニットを含み、
前記マイクロコンピュータはさらに、
前記複数のメモリユニット各々に近接して配置され、対応のメモリユニットの動作を制御する制御信号を発生する複数のドライブ手段を含む、請求項１記載のマイクロコンピュータ。
【請求項１２】
前記第２のメモリ手段は、前記チップ上に対称的に分散配置される複数のメモリユニットを含み、
前記マイクロコンピュータは、さらに、
前記複数のメモリユニットの中心部に配置され、クロック信号を発生するクロック信号発生手段と、
前記プロセサ手段からのコマンドをデコードし、該デコード結果に従って少なくとも前記第２のメモリ手段の動作を制御するための制御信号を発生する制御信号発生手段と、
前記複数のメモリユニット各々に近接して配置され、前記クロック信号に同期して前記制御信号を取込み、該取込んだ制御信号に従って対応のメモリユニットを駆動する複数のドライブ手段を備える、請求項１記載のマイクロコンピュータ。
【請求項１３】
前記第２の双方向転送手段は、前記複数のメモリユニットそれぞれに対応して配置される複数の双方向転送バッファ手段を備え、前記複数のドライブ手段の各々は、対応のメモリユニットと対応の双方向転送バッファ手段との間に配置される、請求項１２記載のマイクロコンピュータ。
【請求項１４】
前記第２の双方向転送手段は、前記第１の双方向転送手段から転送された情報信号と前記第２のメモリから読出される情報信号とを受けて一方を選択的に伝達させる選択手段と、
前記選択手段からの情報信号を増幅して前記第６のバスへ送出するための増幅手段を含む、請求項１記載のマイクロコンピュータ。
【請求項１５】
クロック信号を発生するクロック発生手段と、
前記クロック信号と独立に動作し、前記プロセサ手段からのコマンドをデコードし、該デコード結果に従って前記第２のメモリを動作させるための制御信号を生成する制御信号発生手段と、
前記第２の双方向転送手段と前記第２のメモリとの間に前記第２のメモリに近接して配置され、前記クロック信号に同期してかつ前記制御信号に従って前記第２のメモリを駆動するドライバ手段とをさらに備える、請求項１記載のマイクロコンピュータ。
【請求項１６】
前記プロセサ手段は、
与えられた命令を実行し、該実行結果を示すデータを生成するプロセサと、
前記プロセサと前記第６のバスとの間に結合され、前記第６のバス上の情報信号に含まれる命令をラッチして前記プロセサへ転送するための命令レジスタと、
与えられたデータ信号をラッチしかつ転送する手段を含み、前記プロセサと前記第６のバスとの間に結合されるデータレジスタを含む、請求項１記載のマイクロコンピュータ。
【請求項１７】
前記命令レジスタは、
前記第６のバスのバス幅と同じ数のラッチと、
前記ラッチのラッチする情報信号を選択的に前記プロセサへ転送する選択手段を含み、
前記データレジスタは、
前記第６のバスのバス幅と同じ数のデータラッチと、前記データラッチを選択的に前記プロセサへ結合するデータ選択手段を含む、請求項１６記載のマイクロコンピュータ。
【請求項１８】
前記データレジスタおよび前記命令レジスタ各々と前記プロセサとの間のバスのバス幅は前記第６のバスのバス幅よりも小さい、請求項１６記載のマイクロコンピュータ。
【請求項１９】
前記バスインタフェース手段、前記第１のメモリ、前記第１の双方向転送手段、前記第２のメモリ、前記第２の双方向転送手段、前記命令レジスタおよび前記データレジスタの各々は、前記プロセサに関して鏡映対称に的に配置される複数のサブユニットを含む、請求項１６記載のマイクロコンピュータ。
【発明の詳細な説明】
発明の技術分野
この発明は、プロセサとメモリとが同一チップ上に形成されたマイクロコンピュータに関し、特に、プロセサおよびメモリならびにこれらのプロセサおよびメモリ間のデータ転送を行なうための転送ユニットのレイアウトに関する。
従来の技術
図１は、従来の処理システムの構成の一例を概略的に示す図である。図１において、処理システムは、必要とされる演算処理操作を行なうプロセサ１と、プロセサ１外部に設けられ、このプロセサ１のための主記憶として機能する主メモリ２を含む。プロセサ１は、外部データバス３を介して主メモリ２に接続される。この主メモリ２は、命令および処理データ（以下、両者を含めて情報と称す）を格納する。
プロセサ１は、情報を格納するキャッシュメモリ１ａと、このキャッシュメモリ１ａに格納される情報を用いて各種制御信号を生成するコントローラ１ｂと、演算処理に必要なデータを一時的に格納するためのレジスタ群１ｃと、コントローラ１ｂからの制御信号に従って要求される演算を行なう演算器１ｄを含む。キャッシュメモリ１ａ、コントローラ１ｂ、レジスタ群１ｃおよび演算器１ｄは内部データバス１ｅを介して相互結合される。この内部データバス１ｅは、インタフェース１ｆを介して外部データバス３に結合される。インタフェース１ｆは、このコントローラ１ｂの制御の下に、主メモリ２とキャッシュメモリ１ａおよびコントローラ１ｂとの間のデータ転送を管理する。
この図１に示す処理システムの構成の場合、コントローラ１ｂが、キャッシュメモリ１ａに格納されていない情報を必要とする場合には、主メモリ２からこのコントローラ１ｂが必要とする情報が外部データバス３およびインタフェース１ｆを介して転送される。
主メモリ２は、たとえば大記憶容量のＤＲＡＭ（ダイナミック・ランダム・アクセス・メモリ）で構成されており、プロセサ１ほど高速で動作することはできない。また主メモリ２とプロセサ１との間のデータ転送速度は、外部データバス３のバス幅（ビット幅）により律速される。外部データバス３のバス幅は、主メモリ２のデータ入出力端子数により決定される。このため、主メモリ２とプロセサ１との間のデータ転送を高速で行なうことができず、プロセサ１は、この主メモリ２とのデータ転送時ウエイト状態とされ、処理システムの性能が低下するという問題が生じる。
この図１に示すような処理システムにおける主メモリ２の低速性に起因する問題を解消するために、プロセサ１と主メモリ２とを同一チップ上に形成し、外部データバス３のバス幅を広くし、データ転送を高速で行なうことが考えられる。
図２は、このようなプロセサと主メモリとが同一チップ上に形成されたマイクロコンピュータの構成の一例を概略的に示す図である。図２において、マイクロコンピュータ１０は、図１に示す構成と同様、キャッシュメモリ１ａ、コントローラ１ｂ、レジスタ群１ｃおよび演算器１ｄを含む。このマイクロコンピュータ１０は、さらに、主メモリ２を内蔵する。キャッシュメモリ１ａ、コントローラ１ｂ、レジスタ群１ｃ、演算器１ｄおよび主メモリ２は、内部データバス１１を介して相互接続される。この内部データバス１１は、インタフェースユニット１２を介して外部データバスに結合されて外部の装置と情報の授受を行なう。
主メモリ２をマイクロコンピュータ１０内に内蔵することにより、図１に示す構成と異なり、主メモリ２のデータ入出力端子数の制限を受けることなく、この内部データバス１１のバス幅（ビット幅）で情報を転送することができる。したがってこの内部データバス１１のバス幅を広くすることにより、大量の情報を同時に転送することができ、高速データ転送を実現することができる。また、内部データバス１１の負荷容量は、図１に示すボード上配線である外部データバス３の負荷容量に比べて十分小さく、より高速で主メモリ２とキャッシュメモリ１ａおよびコントローラ１ｂとの間で情報転送を行なうことができる。またこのとき、内部データバス１１の負荷容量は小さいため、主メモリ２の出力回路は大きな負荷容量を駆動することが要求されず、処理システムの消費電流が低減される。
しかしながら、この図２に示すマイクロコンピュータの構成の場合、外部の装置と情報の授受を行なう場合、インタフェースユニット１２が、内部データバス１１を占有する。したがって、たとえば、インタフェースユニット１２による主メモリ２へのアクセス時、コントローラ１ｂはこの内部データバス１１を利用することができず、その間演算操作が停止し、マイクロコンピュータの処理性能が低下するという問題が生じる。
また、このようなメモリ内蔵マイクロコンピュータにおいて、どのような内部バス配置とすれば、内部で情報転送を効率的かつ高速で行なうことができるかについて、十分に検討する余地がある。
また、プロセサ、主メモリおよびインタフェースユニットをどのように配置することにより、内部での情報転送を効率的かつ高速で行なうことができ、処理性能を向上させることができるかについても十分に検討の余地がある。
発明の概要
この発明の目的は、処理性能を低下させることなく情報転送を効率的かつ高速に行なうことのできるメモリ内蔵マイクロコンピュータを提供することである。
この発明の他の目的は、外部との情報転送時においても処理性能が低下することのないメモリ内蔵マイクロコンピュータを提供することである。
この発明に係るメモリ内蔵マイクロコンピュータは、複数のデータ入出力パッドと、これら複数のデータ入出力パッドに第１のバスを介して結合され、これらのデータ入出力パッドを介しての情報入出力を行なうためのインタフェースとして機能するバスインタフェース手段と、このバスインタフェース手段と第２のバスを介して結合され、バスインタフェース手段と情報の授受を行なう第１のメモリと、第３のバスを介して第１のメモリに結合され、この第１のメモリの選択されたメモリセルと双方向に情報を転送するための第１の双方向転送手段と、この第１の双方向転送手段と第４のバスを介して結合され、少なくともこの第１の双方向転送手段と双方向に情報を転送するための第２の双方向転送手段とを備える。第１および第２の双方向転送手段は、与えられた情報をラッチし、次いで転送する手段を含む。
この発明に係るメモリ内蔵マイクロコンピュータはさらに、第５のバス上に介して第２の双方向転送手段と結合され、この第２の双方向転送手段と情報の授受を行なうための第２のメモリと、第２の双方向転送手段と第６のバスを介して結合され、第２の双方向転送手段と情報の授受を行ない、この情報に含まれる命令を実行し、該実行結果のデータを第６のバス送出するプロセサ手段とを含む。
外部と情報の授受を行なうためのバスインタフェース手段は、第１のメモリと第２のバスを介して結合され、第１および第２のメモリはラッチおよび転送機能を備える第１および第２の双方向転送手段を介して結合される。第２のメモリは第５のバスを介して第２の双方向転送手段と結合され、またこの第２の双方向転送手段は第６のバスを介してプロセサ手段と結合される。したがって、バスインタフェース手段と第１のメモリとの間または装置外部との間の情報転送時において、プロセサ手段は第２のメモリへアクセスして、処理を行なうことができ、情報転送時における処理性能の低下が防止される。また、第１および第２の双方向転送手段を設けておくことにより、第１のメモリから第１の双方向転送手段への情報転送時依然プロセサ手段は第２の双方向転送手段を介して第２のメモリへアクセスすることができる。したがって、処理性能を低下させることなく内部で情報転送を行なうことができる。
この発明の目的および他の目的と特徴は、以下に添付の図面を参照して行なう好ましい実施例の詳細な説明からより一層明らかとなろう。
【図面の簡単な説明】
図１は、従来のプロセサの構成およびメモリシステムの構成を概略的に示す図である。
図２は、図１に示す処理システムを１チップの装置とした場合の構成を概略的に示す図である。
図３は、この発明の実施の形態１に従うマイクロコンピュータの内部の構成を概略的に示す図である。
図４は、図３に示すバス配置における情報信号の流れを示す図である。
図５は、この発明の実施の形態１における情報ロード要求時の情報信号の流れを示すタイミングチャート図である。
図６は、情報ストア要求発生時の情報信号の流れを示すタイミングチャート図である。
図７は、図３に示すデータレジスタ（ＤＲ）の全体の構成を概略的に示す図である。
図８は、図７に示すデータレジスタの１ビットの部分の構成を示す図である。
図９は、図３に示す命令レジスタの１ビットの部分の構成を示す図である。
図１０は、図３に示すバスインタフェースユニット（ＢＩＵ）の全体の構成を概略的に示すブロック図である。
図１１は、図１０に示すバスインタフェースユニットの１ビットの部分の構成を示す図である。
図１２は、図３に示すＤＲＡＭの構成を概略的に示す図である。
図１３は、図３に示す双方向転送回路部分の構成を概略的に示す図である。
図１４は、図１３に示すＤＲＡＭリードバッファの１ビットの部分の構成を示す図である。
図１５は、図１３に示すメモリリードバッファの１ビットの部分の構成を示す図である。
図１６は、図３に示すＤＲＡＭライトバッファおよびメモリライトバッファの１ビットの部分の構成を示す図である。
図１７は、図１３に示すメモリリードバッファの変更例の構成を示す図である。
図１８は、図１３に示すメモリリードバッファのさらに他の変更例の構成を概略的に示す図である。
図１９は、図１８に示すレベルシフタの１ビットの部分の構成を示す図である。
図２０は、この発明の実施の形態２に従うマイクロコンピュータのバス配線の配置を概略的に示す図である。
図２１は、この発明の実施の形態２に従うマイクロコンピュータのチップ上のレイアウトを概略的に示す図である。
図２２は、この発明の実施の形態３に従うマイクロコンピュータの要部の構成を概略的に示す図である。
図２３は、図２２に示すＳＲＡＭコントロール部の動作を示す波形図である。
図２４は、図２２に示すドライバ回路の入力初段の構成の一例を示す図である。
図２５は、図２２に示すＳＲＡＭコントロール部の他の動作シーケンスを示す図である。
図２６は、この発明の実施の形態３に従うマイクロコンピュータのチップ上のレイアウトを概略的に示す図である。
図２７は、この発明の実施の形態４に従うマイクロコンピュータの要部の構成を概略的に示す図である。
図２８は、この発明の実施の形態４の変更例の構成を概略的に示す図である。
好ましい実施例の説明
図３は、この発明の実施の形態１に従うメモリ内蔵マイクロコンピュータの要部の構成を概略的に示すブロック図である。図３において、マイクロコンピュータ２０は、外部バスに接続され、情報の入出力を行なうＤＱパッド２１と、ＤＱパッド２１に第１のバスとしてのＤＢバス２２を介して結合され、マイクロコンピュータ外部と内部との間の情報転送を管理しかつ実行するバスインタフェースユニット（ＢＩＵ）２３と、バスインタフェースユニットＢＩＵにＢＩＵバス２４を介して結合され、バスインタフェースユニット２３と記憶情報の転送を行なう第１のメモリとしてのダイナミック・ランダム・アクセス・メモリ（以下ＤＲＡＭと称す）２６を含む。ＤＲＡＭ２６は、また、第３のバスとしてのＧＩＯバス２８に結合される。
ＤＢバス２２は、バス幅（ビット幅）がたとえば１６ビットであり、一方ＢＩＵバス２４およびＧＩＯバス２８は、それぞれのバス幅（ビット幅）が１２８ビットである。バスインタフェースユニット２３は、その構成は後に詳細に説明するが、１２８個のラッチを含み、このラッチを選択的にＤＢバス２２に結合することにより、装置外部とは１６ビット単位での情報転送および装置内部では１２８ビット単位での情報転送を実行する。これにより、装置内部での情報転送の高速化を図る。ＤＲＡＭ２６は、ＢＩＵバス２４に結合されるポートとＧＩＯバス２８に結合されるボートとを有するデュアルポートメモリであり、メモリの競合が生じない限り、このＤＲＡＭ２６は、ＢＩＵバス２４およびＧＩＯバス２８と同時に情報転送を行なうことができる。
マイクロコンピュータ２０は、さらに、ＧＩＯバス２８を介してＤＲＡＭ２６から読出された情報をラッチしかつＤＲＢバス３１へ転送するＤＲＡＭリードバッファ（ＤＲＢ）３０と、ＤＲＢバス３１を介してＤＲＡＭリードバッファ（ＤＲＢ）３０から与えられる情報またはＳＢＬバス３２を介してスタティック・ランダム・アクセス・メモリ（以下ＳＲＡＭと称す）３４から読出された情報をラッチし該ラッチした情報をＩＴＢバス３５またはＳＢＬバス３２を介してメモリライトバッファ（ＭＷＢ）３８へ転送するメモリリードバッファ（ＭＲＢ）３６を含む。このメモリリードバッファ（ＭＲＢ）３６は、ラッチした情報を増幅する回路を含む。ＧＩＯバス１２８、ＤＲＢバス３１、およびＩＴＢバス３５は、それぞれのビット幅がたとえば１２８ビットである。ＳＢＬバス３２も、そのバス幅が１２８ビットであり、ＳＲＡＭ３４は、１２８ビットの情報の入出力を一度に行なう。
メモリライトバッファ（ＭＷＢ）３８は、ＩＴＢバス３５上に与えられた情報およびＳＢＬバス３２を介してメモリリードバッファ（ＭＲＢ）３６から与えられた情報をラッチし、ＤＷＢバス４０を介してＤＲＡＭライトバッファ（ＤＷＢ）４２へ転送する。このメモリライトバッファ（ＭＷＢ）３８は、またＩＴＢバス３５を介して与えられる情報をＳＢＬバス３２を介してＳＲＡＭ３４へ転送する機能を備える。
ＤＲＡＭライトバッファ（ＤＷＢ）４２は、ＤＷＢバス４０を介してメモリライトバッファ（ＭＷＢ）３８から与えられた情報をＧＩＯバス２８を介してＤＲＡＭ２６へ転送する。ＤＷＢバス４０は、１２８ビットのバス幅を有している。ＤＲＢバス３１およびＤＷＢバス４０を別々に設けることにより、ＤＲＡＭ２６からＳＲＡＭ３４へのデータ転送とＳＲＡＭ３４からＤＲＡＭ２６へのデータ転送を並列態様で実行することができる。
マイクロコンピュータ２０は、さらに、ＩＴＢバス３５を介してメモリリードバッファ（ＭＲＢ）３６から与えられる情報に含まれる命令を格納する命令レジスタ（ＩＲ）４４と、ＩＴＢバス３５と双方向にデータ転送を行なうように結合され、データを格納するデータレジスタ（ＤＲ）４６を含む。命令レジスタ４４およびデータレジスタ４６は、それぞれ命令バス４８およびデータバス５０を介してプロセサ（ＣＰＵ）５２に結合される。
命令レジスタ（ＩＲ）は、ＩＴＢバス３５のバス幅（ビット幅）と同じ数のラッチを備え、この１２８個のラッチのうち、３２個のラッチを同時に選択して、命令バス４８を介してプロセサ（ＣＰＵ）５２へラッチ情報（命令）を与える。データレジスタ（ＤＲ）も同様、１２８個のラッチを含み、選択的に３２個のラッチをデータバス５０に結合し、プロセサ（ＣＰＵ）とデータの授受を行なう。
プロセサ（ＣＰＵ）５２は、図１に示すような内部構成を備え、命令レジスタ（ＩＲ）４４から与えられる命令およびデータレジスタ（ＤＲ）４６から与えられるデータを用いて命令が指定する処理操作を実行し、その処理結果を再びデータレジスタ（ＤＲ）４６に格納する。
ＧＩＯバス２８は、たとえば３０ＭＨｚの速度で情報を転送する。一方、ＩＴＢバス３５は、たとえば１００ＭＨｚ程度の速度で情報を転送する。
図４は、図３のバス配置における情報転送経路を模式的に示す図である。図４において、矢印は情報の流れを示す。図４において、バスインタフェースユニット（ＢＩＵ）２３は、ＤＱパッド２１と、ＤＢバス２２を介して双方向的に情報を転送する。ＤＲＡＭ２６は、バスインタフェースユニット（ＢＩＵ）２３とＢＩＵバス２４を介して双方向的に情報を転送する。ＤＲＡＭ２６は、ＧＩＯバス２８を介して選択されたメモリセルの情報をＤＲＡＭリードバッファ（ＤＲＢ）３０へ転送し、またＤＲＡＭ２６は、ＧＩＯバス２８を介してＤＲＡＭライトバッファ（ＤＷＢ）から与えられる情報をその選択されたメモリセルへ書込む。ＤＲＡＭリードバッファ３０は、ＤＲＢバス３１を介してそのラッチした情報をメモリリードバッファ（ＭＲＢ）へ転送する。一方、ＤＲＡＭライトバッファ（ＤＷＢ）４２は、メモリライトバッファ（ＭＷＢ）３８からＤＷＢバス４０を介して与えられる情報をラッチし、次いで、ＤＲＡＭ２６へＧＩＯバス２８を介してラッチ情報を転送する。
メモリリードバッファ（ＭＲＢ）３６は、ＤＲＢバス３１を介して与えられる情報およびＳＲＡＭ３４から読出された情報の一方をラッチし、かつ増幅した後、ＩＴＢバス３５へまたはメモリライトバッファ（ＭＷＢ）３８へ転送する。このメモリリードバッファ（ＭＲＢ）３６からメモリライトバッファ（ＭＷＢ）３８への情報転送を行なうことにより、ＳＲＡＭ３４からＤＲＡＭ２６への情報転送が可能となる。
メモリライトバッファ（ＭＷＢ）３８は、データレジスタ（ＤＲ）４６からＩＴＢバス３５を介して与えられるデータおよびメモリリードバッファ（ＭＲＢ）３６から与えられる情報の一方をＳＲＡＭ３４またはＤＲＡＭライトバッファ（ＤＷＢ）４２へ転送する。
命令レジスタ（ＩＲ）４４は、ＩＴＢバス３５に与えられる情報のうちの命令を格納し、命令バス４８を介してプロセサ（ＣＰＵ）５２へ命令を与える。データレジスタ（ＤＲ）４６は、ＩＴＢバス３５を介して与えられる情報に含まれるデータを格納して、プロセサ（ＣＰＵ）５２へ与えるとともに、このプロセサ（ＣＰＵ）５２からデータバス５０を介して与えられるデータを格納し、再びＩＴＢバス３５を介してメモリライトバッファ（ＭＷＢ）３８へ転送する。
次にデータ転送動作について説明する。
（ｉ）  外部メモリなどの外部装置に対しプロセサ（ＣＰＵ）５２が情報ロード要求を発した場合：
ＤＱパッド２１およびＤＢバス２２を介して外部メモリ等から与えられた情報は、バスインタフェースユニット（ＢＩＵ）２３に格納される。バスインタフェースユニット（ＢＩＵ）２３は、ＢＩＵバス２４を介して外部からロードされた情報をＤＲＡＭ２６へ転送して書込む。ＤＲＡＭ２６は、このロード情報をＧＩＯバス２８を介してＤＲＡＭリードバッファ（ＤＲＢ）３０へ転送する。ＤＲＡＭリードバッファ（ＤＲＢ）３０は、このＤＲＡＭ２６からＧＩＯバス２８を介して与えられた情報をラッチし、次いでＤＲＢバス３１を介してメモリリードバッファ（ＭＲＢ）３６へ転送する。メモリリードバッファ（ＭＲＢ）３６は、このＤＲＡＭリードバッファ（ＤＲＢ）３０から転送された情報を増幅してＩＴＢバス３５を介して命令レジスタ（ＩＲ）４４およびデータレジスタ（ＤＲ）４６へ転送する。この命令レジスタ（ＩＲ）４４およびデータレジスタ（ＤＲ）４６へ転送された情報は、それぞれ命令バス４８およびデータバス５０を介してプロセサ（ＣＰＵ）５２へ転送される。
ＩＴＢバス３５は、たとえば１００ＭＨｚ程度の高速のクロック信号に従って情報を転送し、一方、ＧＩＯバス２８へは、低速メモリであるＤＲＡＭ２６または外部装置とアクセスするバスインタフェースユニット（ＢＩＵ）２３からの情報が転送されるため、ＧＩＯバス２８上では、低速なたとえば３０ＭＨｚ程度のクロック信号に従って情報が転送される。
したがって、プロセサ（ＣＰＵ）５２が情報ロード要求を発してから、必要とされる情報がプロセサ（ＣＰＵ）５２へ到達するまでには、このＩＴＢバス３５を駆動するクロック信号のサイクル数でかなりのサイクル数が必要とされる。この場合、ＧＩＯバス２８とＩＴＢバス３５とは互いにに分離されているため、このＩＴＢバス３５上に必要とされる情報が到達するまで、プロセサ（ＣＰＵ）５２は、命令バス４８およびデータバス５０ならびにＩＴＢバス３５を利用することができる。
すなわち、図５の情報転送シーケンスに示すように、時刻Ｔ０において、プロセサ（ＣＰＵ）５２がロード要求を発生した場合、時刻Ｔ１においてバスインタフェースユニット（ＢＩＵ）２３に有効情報が格納される。バスインタフェースユニット（ＢＩＵ）２３に格納された情報はＤＲＡＭ２６を介してＧＩＯバス２８へ転送され、時刻Ｔ２において、ＧＩＯバス２８上に有効情報が現われる。このＧＩＯバス２８上の有効情報は、ＤＲＡＭリードバッファ（ＤＲＢ）、メモリリードバッファ（ＭＲＢ）を介してＩＴＢバス３５へ転送され、時刻Ｔ３においてＩＴＢバス３５上に有効情報が転送される。このＩＴＢバス３５上の有効情報が、命令レジスタ（ＩＲ）４４およびデータレジスタ（ＤＲ）４６へそれぞれ転送され、時刻Ｔ４において、命令レジスタ（ＩＲ）４４およびデータレジスタ（ＤＲ）４６にプロセサ（ＣＰＵ）が要求した有効情報が格納される。時刻Ｔ４以降において、プロセサ（ＣＰＵ）は、命令レジスタ（ＩＲ）４４およびデータレジスタ（ＤＲ）４６の必要なロード要求した情報へアクセスすることができる。
したがって、この図５に示すように、外部メモリなどに対するロード要求が発行された場合、ＩＴＢバス３５上に有効情報が転送される時刻Ｔ３まで、プロセサ（ＣＰＵ）はこのＩＴＢバス３５を利用してＳＲＡＭ３４へアクセスすることができ、また命令レジスタ（ＩＲ）４４およびデータレジスタ（ＤＲ）４６へＣＰＵバス（命令バス４８およびデータバス５０両者を含む）を介してアクセスすることができる。さらに、命令レジスタ（ＩＲ）４４およびデータレジスタ（ＤＲ）４６へ有効情報が格納される時刻Ｔ４までの間、プロセサ（ＣＰＵ）は、ＣＰＵバス（命令バス４８およびデータバス５０）を利用して、命令レジスタ（ＩＲ）４４およびデータレジスタ（ＤＲ）４６へアクセスして処理を行なうことができる。
したがって、ＧＩＯバス２８、ＩＴＢバス３５およびＣＰＵバス（命令バス４８およびデータバス５０）を別々に設けることにより、プロセサ（ＣＰＵ）は、ロード要求した情報が到達するまでの間、利用可能なバスを利用して処理を実行することができ、外部装置からのデータ転送時においての処理性能の低下が抑制される。
（ii）  プロセサがデータを外部メモリ等へ格納するデータストア要求を発行した場合：
データストア要求発行時の動作を、図６に示すタイミングチャート図を併せて参照して説明する。
時刻Ｔ０において、プロセサ（ＣＰＵ）５２がストア要求を発生するとともに、ストアすべきデータをデータバス５０を介してデータレジスタ（ＤＲ）５０へ格納し、時刻Ｔ１においてデータレジスタ（ＤＲ）５０に有効データが格納される。このデータレジスタ（ＤＲ）５０に格納されたデータは、ＩＴＢバス３５を介してメモリライトバッファ（ＭＷＢ）３８へ転送されてそこに格納される。このメモリライトバッファ（ＭＷＢ）３８に格納されたデータは、ＤＷＢバス４０を介してＤＲＡＭライトバッファ（ＤＷＢ）４２へ転送されてそこにラッチされる。メモリライトバッファ（ＭＷＢ）３８は、ラッチ機能を備えている。したがって、ストアすべきデータがこのメモリライトバッファ（ＭＷＢ）３８に格納された後、プロセサ（ＣＰＵ）５２は、ＩＴＢバス３５およびＣＰＵバス（命令バス３８およびデータバス５０）を利用して、ＳＲＡＭ３４および命令レジスタ（ＩＲ）４４およびデータレジスタ（ＤＲ）４６へアクセスして処理を実行することができる。このＩＴＢバス３５は、高速バスであり、外部メモリへのデータストア動作時においても、プロセサ（ＣＰＵ）５２は、そのストアすべきデータをデータレジスタ（ＤＲ）５０を介してメモリライトバッファ（ＭＷＢ）３８に転送して格納した後、高速で必要とされる処理を実行することができ、このマイクロコンピュータの性能低下は抑制される。
このＤＲＡＭライトバッファ（ＤＷＢ）４２にラッチされたデータ（時刻Ｔ３において有効状態とされる）は、低速のＧＩＯバス２８を介してＤＲＡＭ２６に転送されて格納される。ＧＩＯバス２８は低速バスであり、時刻Ｔ４においてそこに有効データが現われ、ＤＲＡＭ２６には、時刻Ｔ５において有効データが格納される。ＤＲＡＭ２６は、２ポートメモリであり、この書込および読出を同一サイクルで行なうことにより、比較的早いタイミングで、ＤＲＡＭ２６からバスインタフェースユニット（ＢＩＵ）２３へ有効データを格納することができる。これにより、時刻Ｔ６において有効状態とされたバスインタフェースユニット２３内の有効データが順次１６ビット単位で外部へ転送されて外部メモリに格納される。したがって、このマイクロコンピュータにおいて、外部メモリに対するデータストア動作が行なわれている場合においても、時刻Ｔ２以降において、内部のプロセサ（ＣＰＵ）５２は、ＩＴＢバス３５を介してＳＲＡＭ３４へアクセスすることができ、また、時刻Ｔ５以降ＧＩＯバス２８が利用可能となり、処理性能の低下を抑制することができる。
また、図５および図６に示すタイミングチャート図から明らかなように、外部メモリとＤＲＡＭ２６との間でのデータ転送のみが行なわれる場合、プロセサ（ＣＰＵ）５２は、ＩＴＢバス３５、命令バス４８およびデータバス５０を常時利用して必要とされる処理を実行することができる。
以上のように、外部装置との間のデータ入出力を行なうためのバスインタフェースユニット（ＢＩＵ）をＤＲＡＭのみに接続し、プロセサ（ＣＰＵ）がアクセスするバス（ＩＴＢバス３５、命令バス４８およびデータバス５０）をバスインタフェースユニット（ＢＩＵ）から分離し、またＤＲＡＭ２６が結合するＧＩＯバス２８とＩＴＢバス３５の間には、双方向転送手段としてのバッファ（ＤＲＢ、ＤＷＢ、ＭＲＢ、およびＭＷＢ）を設け、これらにラッチ機能を持たせることにより、このマイクロコンピュータの装置外部との情報転送時においても、内部のＩＴＢバスを空き状態としてプロセサ（ＣＰＵ）が利用可能とすることができ、情報の外部転送時における処理停止を生じることがなく、処理性能を向上させることができる。
なお、バスインタフェースユニット（ＢＩＵ）とＤＱパッドとの間のＤＢバス２２は、情報入力用のバスおよび情報出力用のバスが別々に設けられる構成であってもよい。
［各部の構成］
（１）  データレジスタ（ＤＲ）４６の構成
図７は、図３および図４に示すデータレジスタ（ＤＲ）４６の全体の構成を概略的に示す図である。図７において、データレジスタ（ＤＲ）４６は、ＩＴＢバス３５のバス線Ｉ０〜Ｉ１２７それぞれに対応して設けられ、転送指示信号φＴＲの活性化に応答して対応のバス線と結合されるラッチアンプＬＡ０〜ＬＡ１２７を含む。このラッチアンプＬＡ０〜ＬＡ１２７は、後にその構成は詳細に説明するが、ＩＴＢバス３５からプロセサ（ＣＰＵ）へデータを転送するためのリードバッファと、プロセサ（ＣＰＵ）から与えられたデータをＩＴＢバス３５へ転送するためのライトバッファ両者を含む。いずれも、活性化時、与えられたデータを増幅してかつラッチする。
データレジスタ（ＤＲ）４６は、さらに、ラッチアンプＬＡ０〜ＬＡ３１それぞれに対応して設けられ、グループ選択信号φａに応答して導通し、ラッチアンプＬＡ０〜ＬＡ３１をプロセサデータバス５０のバス線Ｄ０〜Ｄ３１へ結合する選択ゲートＳＧ０ａ〜ＳＧ３１ａと、ラッチアンプＬＡ３２〜ＬＡ６３それぞれに対応して設けられ、グループ選択信号φｂに応答して導通し、ラッチアンプＬＡ３２〜ＬＡ６３をデータバス線Ｄ０〜Ｄ３１へそれぞれ結合する選択ゲートＳＧ０ｂ〜ＳＧ３１ｂと、ラッチアンプＬＡ６４〜ＬＡ９５それぞれに対応して設けられ、グループ選択信号φｃに応答して導通し、ラッチアンプＬＡ６４〜ＬＡ９５それぞれをデータバス線Ｄ０〜Ｄ３１へ結合する選択ゲートＳＧ０ｃ〜ＳＧ３１ｃと、ラッチアンプＬＡ９６〜ＬＡ１２７それぞれに対応して設けられ、グループ選択信号φｄに応答して導通し、ラッチアンプＬＡ９６〜ＬＡ１２７をデータバス線Ｄ０〜Ｄ３１へそれぞれ結合する選択ゲートＳＧ０ｄ〜ＳＧ３１ｄを含む。
ＩＴＢバス３５とプロセサデータバス５０のバス幅を異ならせることにより、ビット幅の異なる情報の授受を行なうことができ、プロセサ（ＣＰＵ）５２の処理性能を劣化させる必要がない。また、プロセサ（ＣＰＵ）５２に対するデータバス５０のバス幅が小さいため、このプロセサ（ＣＰＵ）５２近傍におけるバスに要するレイアウト面積を縮小することができる。
この図７に示すデータレジスタ（ＤＲ）４６の構成においては、ＩＴＢバス３５のバス線Ｉ０〜Ｉ１２７とラッチアンプＬＡ０〜ＬＡ１２７が転送指示信号φＴＲに従って同時に１２８ビットのデータの転送を行なう。これらの１２８ビットのラッチアンプＬＡ０〜ＬＡ１２７のうち３２ビットのラッチアンプが、グループ選択信号φａ〜φｄに従ってプロセサデータバス５０（データバス線Ｄ０〜Ｄ３１）に選択的に結合される。
図８は、図７に示すラッチアンプおよび選択ゲートの１ビットの構成の一例を示す図である。図８においては、ＩＴＢバス３５のバス線Ｉｉとデータバス線Ｄｊに対して設けられるラッチアンプおよび選択ゲートの構成が一例として示される。ＩＴＢバス線Ｉｉは相補の信号線ＩｉａおよびＺＩｉａを含む。
ラッチアンプは、転送指示信号φＴＲＲに応答して活性化され、ＩＴＢバス線Ｉｉ上の相補信号を増幅しかつラッチするリード・ラッチアンプＬＡｒと、データバス線Ｄｊ上の信号を増幅しかつラッチするライト・ラッチアンプＬＡｗを含む。選択ゲートＳＧは、グループ選択信号φｇｒに応答して導通し、リード・ラッチアンプＬＡｒのラッチデータをデータバス線Ｄｊへ転送するリード選択ゲートＳＧｒと、転送指示信号φＴＲＷに応答してライト・ラッチアンプＬＡｗのラッチ情報をＩＴＢバス信号線ＩｉａおよびＺＩｉａへ転送するライト選択ゲートＳＧｗを含む。
転送指示信号φＴＲＲおよびφＴＲＷは、リード転送時およびライト転送時それぞれにおいてラッチアンプＬＡ０〜ＬＡ１２７に共通に与えられる。グループ選択信号φｇｒおよびφｇｗはリード転送時およびライト転送時、それぞれ選択されたグループのラッチアンプグループに対してのみ与えられる。
リード・ラッチアンプＬＡｒは、信号線ＩｉａおよびＺＩｉａ上の信号電位を差動的に増幅する差動増幅器ＤＡｒと、リード転送指示信号φＴＲＲに応答して導通する転送ゲートＴＧｒと、転送ゲートＴＧｒにより伝達された差動増幅回路ＤＡｒのデータを増幅しかつラッチするラッチ回路ＬＣＨｒを含む。差動増幅回路ＤＡｒは、転送ゲートＴＧｒと接地電位の間に接続されかつそのゲートが信号線ＺＩｉａに接続されるｎチャネルＭＯＳトランジスタ（絶縁ゲート型電界効果トランジスタ）Ｔ１と、接地ノードと転送ゲートＴＧｒの間に接続されかつそのゲートが信号線Ｉｉａに接続されるｎチャネルＭＯＳトランジスタＴ２を含む。ラッチ回路ＬＣＨｒは、転送ゲートＴＧｒを介してＭＯＳトランジスタＴ１のドレインノードに接続される入力部を有するインバータ回路ＩＶ１と、転送ゲートＴＧｒを介してＭＯＳトランジスタＴ２のドレインノードに接続される入力部を有するインバータ回路ＩＶ２を含む。転送ゲートＴＧｒは、ＭＯＳトランジスタＴ１およびＴ２それぞれに対応して設けられるｎチャネルＭＯＳトランジスタを含む。リード選択ゲートＳＧｒは、グループ選択信号φｇｒに応答して導通してインバータＩＶ２の出力信号をデータ線Ｄｊへ伝達するトランスファゲートを含む。このリード選択ゲートＳＧｒに含まれるトランスファゲートは、１つのｎチャネルＭＯＳトランジスタが代表的に示されるが、ＣＭＯＳトランスミッションゲートで構成されてもよい。また、このリード選択ゲートＳＧｒは、トライステートバッファで構成されてもよい。
ライト・ラッチアンプＬＡｗは、データ線Ｄｊ上の信号を反転するインバータ回路ＩＶ５と、インバータ回路ＩＶ５の出力信号とデータ線Ｄｊの信号とを差動的に増幅する差動増幅回路ＤＡｗと、グループ選択信号φｇｗに応答してこの差動増幅回路ＤＡｗの出力信号を伝達する転送ゲートＴＧｗと、転送ゲートＴＧｗを介して伝達される差動増幅回路ＤＡｗの出力信号をラッチするラッチ回路ＬＣＨｗを含む。
差動増幅回路ＤＡｗは、転送ゲートＴＧｗと接地ノードとの間に接続され、かつそのゲートにインバータ回路ＩＶ５の出力信号を受けるｎチャネルＭＯＳトランジスタＴ３と、接地ノードと転送ゲートＴＧｗの間に接続されかつそのゲートがデータ線Ｄｊに接続されるｎチャネルＭＯＳトランジスタＴ４を含む。転送ゲートＴＧｗは、ＭＯＳトランジスタＴ３およびＴ４それぞれに対応して設けられるトランスファゲートトランジスタを含む。
ラッチ回路ＬＣＨｗは、転送ゲートＴＧｗを介してＭＯＳトランジスタＴ３のドレインノードに接続される入力部を有するインバータ回路ＩＶ３と、転送ゲートＴＧｗを介してＭＯＳトランジスタＴ４のドレインノードに接続される入力部を有するインバータ回路ＩＶ４を含む。
ライト選択ゲートＳＧｗは、ライト転送指示信号φＴＲＷに応答して導通し、インバータ回路ＩＶ３およびＩＶ４の出力信号をそれぞれ信号線ＺＩｉａおよびＩｉａへ転送するトランスファゲートトランジスタ対を含む。次に動作について簡単に説明する。
今、信号線Ｉｉａ上の信号がＨレベル、信号線ＺＩｉａ上の信号がＬレベルであるとする。この状態においては、差動増幅回路ＤＡｒにおいて、ＭＯＳトランジスタＴ１のコンダクタンスは、ＭＯＳトランジスタＴ２のコンダクタンスよりも小さくなる。リード転送指示信号φＴＲＲが活性状態（Ｈレベル）となると、転送ゲートＴＧｒが導通状態とされ、差動増幅回路ＤＡｒのＭＯＳトランジスタＴ１およびＴ２がインバータ回路ＩＶ１およびＩＶ２にそれぞれ接続される。ＭＯＳトランジスタＴ２のコンダクタンスがＭＯＳトランジスタＴ１のコンダクタンスよりも大きいため、インバータ回路ＩＶ２の入力ノードの電位が低下する。このインバータ回路ＩＶ２の入力ノードの電位低下は、インバータ回路ＩＶ２およびインバータ回路ＩＶ１で増幅されてかつラッチされる。これにより、差動増幅回路ＤＡｒにより検出された微小電位差が、ラッチ回路ＬＣＨｒにより増幅されてラッチされる。次いでグループ選択信号φｇｒが活性状態（Ｈレベル）となると、リード選択ゲートＳＣｒが導通し、インバータ回路ＩＶ２の出力信号（Ｈレベル）がデータ線Ｄｊに伝達され、プロセサへ伝達される。
プロセサからＩＴＢバスへのデータ転送時においては、ライトラッチアンプ回路ＬＡｗが活性化される。データ線Ｄｊ上にＨレベルのデータが転送された場合、インバータ回路ＩＶ５の出力信号はＬレベルである。この状態においては、差動増幅回路ＤＡｗにおいて、ＭＯＳトランジスタＴ３のコンダクタンスはＭＯＳトランジスタＴ４のそれよりも小さくなる。グループ選択信号φｇｗが活性状態（Ｈレベル）となると、転送ゲートＴＧｗが導通状態とされ、差動増幅回路ＤＡｗがラッチ回路ＬＣＨｗに接続される。ＭＯＳトランジスタＴ４の大きなコンダクタンスにより、インバータ回路ＩＶ４の入力ノードの電位が低下する。この電位低下は、インバータ回路ＩＶ４およびＩＶ３により増幅されかつラッチされる（ＭＯＳトランジスタＴ３はほぼオフ状態）。次いで、ライト転送指示信号φＴＲＷが活性状態（Ｈレベル）となり、選択ゲートＳＧｗが導通する。これにより、インバータ回路ＩＶ３の出力するＬレベルの信号およびインバータ回路ＩＶ４の出力するＨレベルの信号がそれぞれ信号線ＺＩｉａおよびＩｉａへ伝達される。
［命令レジスタ（ＩＲ）の構成］
命令レジスタ（ＩＲ）は、命令を命令バスを介してプロセサ（ＣＰＵ）へ転送することが要求されるだけである。この命令レジスタ（ＩＲ）も、図７に示したデータレジスタ（ＤＲ）４６と実質的に同じ構成を備える。
図９は、命令レジスタ（ＩＲ）の１ビットの構成を概略的に示す図である。図９においては、ＩＴＢバス線Ｉｉに対応して設けられた命令レジスタＩＲｉが示される。図９において、命令レジスタＩＲｉは、並列にＩＴＢバス線Ｉｉに結合される２つのラッチアンプＩＬＡａおよびＩＬＡｂを含む。
ラッチアンプＩＬＡａは、転送指示信号φＴＲＩａに応答して活性化され、ＩＴＢバス線Ｉｉ上の相補信号を増幅しかつラッチする。ラッチアンプＩＬＡｂは、転送指示信号φＴＲＩｂに応答して活性化され、このＩＴＢバス線Ｉｉ上の相補信号を増幅しかつラッチする。図９においては、ラッチアンプＩＬＡａの構成のみを示す。ラッチアンプＩＬＡｂも、ラッチアンプＩＬＡａと同様の構成を備える。
ラッチアンプＩＬＡａは、バス線Ｉｉの信号線ＩｉａおよびＺＩｉａ上の信号を差動的に増幅する差動増幅回路ＩＤＡと、転送指示信号φＴＲＩａに応答して導通し、差動増幅回路ＩＤＡの出力信号を伝達する転送ゲートＩＴＧと、転送ゲートＩＴＧを介して伝達される信号を増幅しかつラッチするラッチ回路ＩＬＣＨを含む。
差動増幅回路ＩＤＡは、接地ノードと転送ゲートＩＴＧの間に結合されかつそのゲートが信号線Ｉｉａに接続されるｎチャネルＭＯＳトランジスタＴ５と、接地ノードと転送ゲートＩＴＧの間に結合され、そのゲートが信号線ＺＩｉａに接続されるｎチャネルＭＯＳトランジスタＴ６を含む。
転送ゲートＩＴＧは、ＭＯＳトランジスタＴ５およびＴ６それぞれに対応して設けられ、転送指示信号φＴＲＩａの活性化時導通する２つのＭＯＳトランジスタ（トランスファゲートトランジスタ）を含む。この転送ゲートＩＴＧは、ＣＭＯＳトランスミッションゲートで構成されてもよい。
ラッチ回路ＩＬＣＨは、転送ゲートＩＴＧを介してＭＯＳトランジスタＴ６のドレインにこの入力部が接続されるインバータ回路ＩＶ６と、転送ゲートＩＴＧを介してＭＯＳトランジスタＴ５のドレインにその入力部が接続されるインバータ回路ＩＶ７を含む。
命令レジスタＩＲｉは、さらに、ラッチアンプＩＬＡａおよびＩＬＡｂの一方の出力信号を選択信号φＩＳＥＬに応答して選択するマルチプレクサＭＵＸと、グループ選択信号φＩｇに応答して導通し、マルチプレクサＭＵＸで選択された信号を命令バス線ＩＲＢｊへ伝達する選択ゲートＩＳＧを含む。図１０においては、選択ゲートＩＳＧは１つのＭＯＳトランジスタで構成されるように示されるが、この選択ゲートＩＳＧは、ＣＭＯＳトランスミッションゲートまたはトライステートバッファで構成されてもよい。
転送指示信号φＴＲＩａは、命令レジスタＩＲの各ＩＴＢバス線に対して設けられるラッチアンプＩＬＡａに共通に与えられる。転送指示信号φＴＲＩｂは、命令レジスタ（ＩＲ）の各レジスタ内のラッチアンプＩＬＡｂに共通に与えられる。転送指示信号φＴＲＩａおよびφＴＲＩｂの一方が活性状態とされる。グループ選択信号φＩｇは、３２ビットの命令レジスタを選択する。
ラッチアンプＩＬＡａおよびＩＬＡｂの活性化時の動作は、データレジスタ（ＤＲ）（図８参照）のそれと同じであり、差動増幅回路ＩＤＡにより、信号線ＩｉａおよびＺＩｉａの信号が差動増幅され、その差動増幅回路ＩＤＡの出力信号が転送ゲートＩＴＧの導通時ラッチ回路ＩＬＣＨへ転送されてそこでさらに増幅されかつラッチされる。したがって、１２８ビットのＩＴＢバス線Ｉ０〜Ｉ１２７の信号が、命令レジスタ（ＩＲ）の１２８ビットのラッチアンプＩＬＡａまたはＩＬＡｂに同時にラッチされる。次いで選択信号φＩＳＥＬに従って、ラッチアンプＩＬＡａおよびＩＬＡｂの一方が選択される。さらにグループ選択信号φＩｇに従って、この１２８ビットの命令から３２ビットの命令が選択され、命令バス線（ＩＲＢ）４８へ転送されてプロセサ５２へ与えられる。
命令レジスタ（ＩＲ）の各ビットにおいてラッチアンプＩＬＡａおよびＩＬＡｂを設ける。一方のラッチアンプに格納された命令情報をプロセサへ伝達している間に他方のラッチアンプへ次の命令を格納する。これにより、パイプライン態様で連続的に命令をプロセサ（ＣＰＵ）５２へ転送することができ、高速の命令転送を実現することができる。
また、命令レジスタ（ＩＲ）およびデータレジスタ（ＤＲ）をそれぞれ別々に設けることにより、プロセサ（ＣＰＵ）５２へ、命令およびデータを同時に転送することができ、高速の情報転送動作を実現することができる。
（３）  バスインタフェースユニット（ＢＩＵ）
図１０は、図３および図４に示すバスインタフェースユニット（ＢＩＵ）の全体の構成を概略的に示す図である。図１０において、バスインタフェースユニット（ＢＩＵ）２３は、ＢＩＵバス２４のバス線ＢＵ０〜ＢＵ１２７それぞれに対応して設けられ、転送指示信号φＴＲＢに応答して活性化され、対応のバス線ＢＵ０〜ＢＵ１２７と結合されるラッチアンプＢＬＡ０〜ＢＬＡ１２７を含む。
ラッチアンプＢＬＡ０〜ＢＬＡ１２７の各々は、ＢＩＵバス２４からＤＢバス２２への情報転送のためのラッチアンプ回路およびＤＢバス２２からＢＩＵバス２４への情報転送のためのラッチアンプ回路を含む。ラッチアンプＢＬＡ０〜ＢＬＡ１２７は、８個単位でグループに分割され、バイト制御信号φＢＹＨおよびφＢＹＬに応答して作動状態とされる。このバイト制御信号φＢＹＨおよびφＢＹＬを用いることにより、１６ビット情報および８ビット情報両者に対応することができる。
バスインタフェースユニット（ＢＩＵ）２３は、さらに、１２８個のラッチアップＢＬＡ０〜ＢＬＡ１２７から、１６個のラッチアンプを選択してＤＢバス２２のバス線ＤＢ０〜ＤＢ１５へそれぞれ接続するための選択開路ＢＳＧ０〜ＢＳＧ７を含む。選択回路ＢＳＧ０は、グループ選択信号φＢｇ０に応答して導通し、ラッチアンプＢＬＡ０〜ＢＬＡ１５を、ＤＢバス２２のバス線ＤＢＢ０〜ＤＢＢ１５へそれぞれ接続する。選択回路ＢＳＧ１は、グループ選択信号φＢｇ１に応答して導通し、ラッチアンプＢＬＡ１６〜ＢＬＡ３１を、バス線ＤＢＢ０〜ＤＢＢ１５へそれぞれ接続する。選択回路ＢＳＧ２は、グループ選択信号φＢｇ２に応答して導通し、ラッチアンプＢＬＡ３２〜ＢＬＡ４７それぞれを、バス線ＤＢＢ０〜ＤＢＢ１５へ接続する。選択回路ＢＳＧ３は、グループ選択信号φＢｇ３に応答して導通し、ラッチアンプＢＬＡ４８〜ＢＬＡ６３それぞれを、バス線ＤＢＢ０〜ＤＢＢ１５へ接続する。
選択回路ＢＳＧ４は、グループ選択信号φＢｇ４に応答して導通し、ラッチアンプＢＬＡ６４〜ＢＬＡ７９をバス線ＤＢＢ０〜ＤＢＢ１５へ接続する。選択回路ＢＳＧ５は、グループ選択信号φＢｇ５に応答して導通し、ラッチアンプＢＬＡ８０〜ＢＬＡ９５をバス線ＤＢＢ０〜ＤＢＢ１５へ接続する。選択回路ＢＳＧ６は、グループ選択信号φＢｇ６に応答して導通し、ラッチアンプＢＬＡ９６〜ＢＬＡ１１１をバス線ＤＢＢ０〜ＤＢＢ１５へ接続する。選択回路ＢＳＧ７は、グループ選択信号φＢｇ７に応答して導通し、ラッチアンプＢＬＡ１１２〜ＢＬＡ１２７をバス線ＤＢＢ０〜ＤＢＢ１５へ接続する。
選択回路ＢＳＧ０〜ＢＳＧ７を用いることにより、１２８ビット幅のＢＩＵバス２４と１６ビット幅のＤＢバス２２の間での情報の転送を効率的に行なうことができる。ＤＱパッドがＤＢバス２２のバス線ＤＢ０〜ＤＢ１５それぞれに接続される。装置外部へは、１６ビットのバス線が接続されるだけであり、外部のバス線を駆動するために、１２８個の入出力バッファを設ける必要がなく、この入出力バッファの数が低減され、消費電流も低減される。
図１１は、図１０に示すバスインタフェースユニットの１ビットの構成を示す図である。この図１１においては、ＢＩＵバス２４のバス線ＢＵｉとＤＢバス２２のバス線ＤＢＢｊの間に設けられるバスインタフェースユニット回路の構成が示される。バス線ＢＵｉは、相補信号線ＢＵｉａおよびＺＢＵｉａを含む。
図１１において、バスインタフェースユニット回路（１ビットのバスインタフェースユニット）は、バイト制御信号φＢＹおよび転送指示信号φＴＲＢｒａに応答して作動状態とされ、信号線ＢＵｉａおよびＺＢＵｉａ上の信号電位を増幅しかつラッチするラッチアンプ回路ＢＬＡｒａと、バイト制御信号φＢＹおよび転送指示信号φＴＲＢｒｂに応答して作動状態とされ、信号線ＢＵｉａおよびＺＢＵｉａ上の信号を増幅しかつラッチするラッチアンプ回路ＢＬＡｒｂと、選択信号φＢＳＥＬに応答してラッチアンプ回路ＢＬＡｒａおよびＢＬＡｒｂのラッチ信号の一方を選択するマルチプレクサ（ＭＵＸ）ＢＭＵｒと、グループ選択信号φＢｇｒに応答して導通し、マルチプレクサＢＭＵｒの出力信号をＤＢバス線ＤＢＢｊへ伝達する選択回路ＢＳＧｒを含む。
バイト制御信号φＢＹは、バイト制御信号φＢＹＨおよびφＢＹＬの一方である。また、１２８ビット一括転送指示信号φＴＲＢｒａおよびφＴＲＢｒｂの一方が活性状態とされる。ラッチアンプ回路ＢＬＡｒａおよびＢＬＡｒｂの一方からのラッチ信号のバス線ＤＢＢｊへの出力時に、他方のラッチアンプ回路に信号線ＢＵｉａおよびＺＢＵｉａの情報信号を格納する。これにより、高速の情報伝達を実現する。
ラッチアンプ回路ＢＬＡｒａおよびＢＬＡｒｂは同じ構成を備え、図１１においては、ラッチアンプ回路ＢＬＡｒａの回路構成のみを具体的に示す。ラッチアンプ回路ＢＬＡｒａは、信号線ＢＵｉａおよびＺＢＵｉａ上の信号電位を差動増幅する差動増幅回路ＢＤＡと、バイト制御信号φＢＹに応答して導通し、差動増幅回路ＢＤＡの出力信号を伝達する転送ゲートＢＴＧｂと、転送指示信号φＴＲＢｒａに応答して導通し、転送ゲートＢＴＧｂから伝達された信号をさらに伝達する転送ゲートＢＴＧａと、転送ゲートＢＴＧａから転送された信号電位を増幅しかつラッチするラッチ回路ＢＬＣＨｒを含む。
差動増幅回路ＢＤＡは、接地ノードと転送ゲートＢＴＧｂの間に設けられ、そのゲートが信号線ＢＵｉａに接続されるｎチャネルＭＯＳトランジスタＴ７と、接地ノードと転送ゲートＢＴＧｂの間に設けられ、そのゲートが信号線ＺＢＵｉａに接続されるｎチャネルＭＯＳトランジスタＴ８を含む。
転送ゲートＢＴＧｂは、ＭＯＳトランジスタＴ７およびＴ８それぞれに対応して設けられ、バイト制御信号φＢＹに応答して導通する転送ゲートトランジスタ対を含む。転送ゲートＢＴＧａは、転送指示信号φＴＲＢｒａに応答して導通する転送ゲートトランジスタＢＴＧｂの転送ゲートトランジスタ対それぞれに対して設けられる転送ゲートトランジスタ対を含む。転送ゲートＢＴＧａおよびＢＴＧｂの転送ゲートトランジスタは、ＣＭＯＳトランスミッションゲートで構成されてもよい。
ラッチ回路ＢＬＣＨｒは、転送ゲートＢＴＧａおよびＢＴＧｂの導通時、その入力部がＭＯＳトランジスタＴ７のドレインノードに接続されるインバータ回路ＩＶ８と、転送ゲートＢＴＧａおよびＢＴＧｂの導通時、その入力部がＭＯＳトランジスタのドレインノードに接続されるインバータ回路ＩＶ９を含む。
信号線ＢＵｉａの信号電位がＨレベルのときには、ＭＯＳトランジスタＴ７のコンダクタンスがＭＯＳトランジスタＴ８のそれよりも大きくなり、ＭＯＳトランジスタＴ７のドレイン電位が、ＭＯＳトランジスタＴ８のそれよりも低下する。転送ゲートトランジスタＢＴＧｂおよびＢＴＧａが信号φＢＹおよびφＴＲＢｒａに応答して導通すると、これらのＭＯＳトランジスタＴ７およびＴ８のドレインがラッチ回路ＢＬＣＨｒに接続される。ＭＯＳトランジスタＴ７のドレインノードの電位がＭＯＳトランジスタＴ８のドレインノードの電位よりも低いため、インバータ回路ＩＶ８の出力信号がＨレベルとされ、この出力信号がインバータ回路ＩＶ９によりフィードバックされて、このＭＯＳトランジスタＴ７およびＴ８のドレインノード電位がラッチ回路ＢＬＣＨｒにより増幅されてラッチされる。
マルチプレクサＢＭＵｒが、選択信号φＢＳＥＬに応答してこのラッチアンプ回路ＢＬＡｒａを選択すると、インバータ回路ＩＶ８のＨレベルの出力信号が選択ゲートＢＳＧｒへ伝達される。グループ選択信号φＢｇｒが活性状態とされると、マルチプレクサＢＭＵｒからのＨレベルの信号が選択ゲートＢＳＧｒを介してバス線ＤＢＢｊへ伝達される。
ラッチアンプ回路ＢＬＡｗは、バス線ＤＢＢｊ上の信号をラッチして相補信号を生成して信号線ＢＵｉａおよびＺＢＵｉａへ伝達する。ラッチアンプ回路ＢＬＡｗは、マルチプレクサＢＭＵｒの出力信号とバス線ＤＢＢｊ上の信号の一方を選択するマルチプレクサＢＭＵｗと、グループ選択φＢｇｗに応答して導通し、マルチプレクサＢＭＵｗの出力信号を伝達する転送ゲートＢＴＧｗと、転送ゲートＢＴＧｗから伝達された信号をラッチするラッチ回路ＢＬＣＨｗと、転送指示信号φＴＲＢｗに応答して導通し、ラッチ回路ＢＬＣＨｗにラッチされた信号を信号線ＢＵｉａおよびＺＢＵｉａへ伝達する選択ゲートＢＳＧｗを含む。
マルチプレクサＢＭＵｗは、マルチプレクサＢＭＵｒの出力信号とバス線ＤＢＢｊ上の信号の一方を選択する選択回路ＢＭＧａと、マルチプレクサＢＭＵｒの出力信号およびデータ線ＤＢＢｊの信号のそれぞれを反転しかつ一方を選択する選択回路ＢＭＧｂを含む。一例として、選択回路ＢＭＧａは、マルチプレクサＢＭＵｒの出力信号を伝達するｎチャネルＭＯＳトランジスタＴ９ａと、バス線ＤＢＢｊ上の信号を伝達するｐチャネルＭＯＳトランジスタＴ１０ａを含む。これらのＭＯＳトランジスタＴ９ａおよびＴ１０ａのゲートへは、選択信号φＢｓｒｗが与えられる。選択回路ＢＭＧｂは、マルチプレクサＢＭＵｒの出力信号を反転するインバータ回路ＩＶ１０と、バス線ＤＢＢｊ上の信号を反転するインバータ回路ＩＶ１１と、インバータ回路ＩＶ１０の出力信号を伝達するｎチャネルＭＯＳトランジスタＴ９ｂと、インバータ回路ＩＶ１１の出力信号を伝達するｐチャネルＭＯＳトランジスタＴ１０ｂを含む。ＭＯＳトランジスタＴ９ｂおよびＴ１０ｂのゲートへは、選択信号φＢｓｒｗが与えられる。選択回路ＢＭＧａおよびＢＭＧｂは、ＭＯＳトランジスタに代えて、ＣＭＯＳトランスミッションゲートまたはトライステートバッファを備えていてもよい。選択信号φＢｓｒｗに従って、マルチプレクサＢＭＵｒからの信号およびバス線ＤＢＢｊ上の信号の一方を選択する機能を備えていればよい。
転送ゲートＢＴＧｗは、選択回路ＢＭＧａおよびＢＭＧｂそれぞれに対して設けられる転送ゲートトランジスタ対を含む。ラッチ回路ＢＬＣＨｗは、入力部が転送ゲートＢＴＧｗを介して選択回路ＢＭＧａの出力ノードに結合されるインバータ回路ＩＶ１２と、転送ゲートＢＴＧｗを介してその入力部が選択回路ＢＭＧｂの出力ノードに接続されるインバータ回路ＩＶ１３を含む。
選択ゲートＢＳＧｗは、転送指示信号φＴＲＢｗに応答して導通し、インバータ回路ＩＶ１２およびＩＶ１３のそれぞれの出力信号を信号線ＺＢＵｉａおよびＢＵｉａへ伝達する転送ゲートトランジスタ対を含む。次に動作について簡単に説明する。
選択信号φＢｓｒｗに従って、マルチプレクサＢＭＵｗは、マルチプレクサＢＭＵｒから出力される信号およびバス線ＤＢＢｊの一方を選択する。次いで、グループ選択信号φＢｇｗが活性状態とされ、マルチプレクサＢＭＵｗの出力信号がラッチ回路ＢＬＣＨｗによりラッチされる。このグループ選択信号φＢｇｗは、１６ビットのバスインタフェースユニット回路に対し共通に与えられ、１６ビットのＤＢバス上の各ビットがラッチされる。次いで、転送指示信号φＴＲＢｗが活性状態とされ、バスインタフェースユニット（ＢＩＵ）において１２８ビットの選択ゲートＢＳＧｗが導通状態とされ、対応のラッチ回路ＢＬＣＨｗのラッチ信号が信号線ＢＵｉａおよびＺＢＵｉａへ伝達される。
たとえば、バス線ＤＢＢｊの信号が選択されかつこのバス線ＤＢＢｊの信号がＨレベルのときには、マルチプレクサＢＭＵｗおよび転送ゲートＢＴＧｗを介して、このＨレベルの信号がラッチ回路ＢＬＣＨｗにラッチされる。この状態においては、インバータ回路ＩＶ１２の出力信号がＬレベル、インバータ回路ＩＶ１３の出力信号がＨレベルである。したがって選択ゲートＢＳＧｗが導通すると、Ｈレベルの信号が信号線Ｂｕｉａに伝達され、Ｌレベルの信号が信号線ＺＢＵｉａに伝達される。
マルチプレクサＢＭＵｗを設けているのは、一旦ＤＲＡＭから読出された情報を再びＤＲＡＭへ格納する「コピーバック」動作を実現するためである。
ＤＢバスが、信号出力用バスおよび信号入力用バス別々に設けられている場合には、選択ゲートＢＳＧｒが、出力用バスに接続され、ラッチアンプ回路ＢＬＡｗが、信号入力用バスに結合される。
（４）  ＤＲＡＭ２６の構成
図１２は、図３および図４に示すＤＲＡＭ２６の構成を概略的に示す図である。図１２において、ＤＲＡＭ２６は、ＢＩＵバス２４に結合されるＡポート２６ａと、ＧＩＯバス２８に結合されるＢポート２６ｂと、Ａポート２６ａおよびＢポート２６ｂを介してアクセスされるＤＲＡＭアレイ部２６ｃを含む。ＤＲＡＭアレイ部２６ｃは、行列状に配列されるダイナミック型メモリセル、選択されたメモリセルの情報を増幅しかつラッチするセンスアンプ、各列（ビット線対）をスタンバイサイクル時所定電位にプリチャージするプリチャージ回路等を含む。Ａポート２６ａおよびＢポート２６ｂの各々は、ＤＲＡＭアレイ部の行を選択する行デコーダ、ＤＲＡＭアレイ部の列を選択する列デコーダ、およびＤＲＡＭアレイ部を選択状態へ駆動する制御信号を発生する周辺制御回路を含む。
Ａポート２６ａおよびＢポート２６ｂの各々は、互いに独立に活性状態とすることができる（図示しないメモリコントローラからの制御の下に）。このＤＲＡＭ２６の構成は、通常の２ポートメモリの構成と同様であればよい。Ａポート２６ａおよびＢポート２６ｂをそれぞれ互いに独立に駆動する構成とすることにより、ＤＲＡＭアレイ部２６ｃをバッファとして用いてＢＩＵバス２４とＧＩＯバス２８の間で情報を転送することができる。すなわち、Ａポート２６ａおよびＢポート２６ｂが、ＤＲＡＭアレイ部２６ｃの同じ行および列を選択状態とし、その情報転送方向に従って一方が情報書込モードで動作し、他方が情報読出モードで動作する。ＤＲＡＭアレイ部２６ｃへの情報の格納動作とＢＩＵバス２４とＧＩＯバス２８との間の情報転送とを同時に実行することができる。
ＳＲＡＭ３４は、通常のＳＲＡＭと同じであり、アドレスデコーダ、行デコーダ、列デコーダ、ＳＲＡＭセルマトリックスを含む。すなわちこのＳＲＡＭ３４は、ディスクリートデバイスとして構成されるＳＴＡＭ（チップ）と同じ内部構成を備える。
（５）  双方向転送ゲートの構成
図１３は、ＧＩＯバス２８、ＳＢＬバス３２、およびＩＴＢバス３５の間のデータ転送を行なうための転送部の構成を概略的に示すブロック図である。図１３において、ＧＩＯバス２８を介して与えられる情報を転送するＤＲＡＭリードバッファ（ＤＲＢ）３０は、プリアンプ活性化信号φＤＰＡＥの活性化に応答して活性化され、ＧＩＯバス２８上に伝達された情報信号を増幅しかつラッチするアンプラッチ６０と、転送指示信号φＤＲＴＥの活性化に応答してアンプラッチ６０によりラッチされた情報をメモリリードバッファ（ＭＲＢ）３６へ転送する転送バッファ６２を含む。この転送バッファ６２は、バッファ処理機能を備えているが、単にＣＭＯＳトランスミッションゲートのようなゲートであってもよい。
メモリリードバッファ（ＭＲＢ）３６は、転送動作活性化信号φＳＳＡＥの活性化に応答して活性化され、ＳＢＬバス３２上にＳＲＡＭから伝達された情報を転送する転送ゲート６４と、ＤＲＡＭリードバッファ（ＤＲＢ）３０および転送ゲート６４から転送された情報を選択的にラッチする選択ラッチ６６と、バス転送イネーブル信号φＤＢＩＴＢの活性化に応答して選択ラッチ６６にラッチされた情報信号を増幅してＩＴＢバス３５および／またはメモリライトバッファ（ＭＷＢ）３８へ出力するアンプ６８を含む。
選択ラッチ６６は、転送バッファ６２および転送ゲート６４の一方のみが一度に活性状態とされるため（これについては後に説明する）、この活性状態とされた転送バッファ６２または転送ゲート６４からの情報をラッチする。転送バッファ６２および転送ゲート６４は、非活性化時、その出力信号は所定電位レベルにリセットされる。
メモリライトバッファ（ＭＷＢ）３８は、ライトデコードイネーブル信号φＳＷＤＥＬの活性化に応答して、ＩＴＢバス３５上に与えられている情報をＳＢＬバス３２へ転送する。このライトデコードイネーブル信号φＳＷＤＥＬは、ＳＲＡＭのアドレスデコード動作を開始させる。この転送ゲート７０とＩＴＢバス３５の間のバス配線が、またラッチとして利用される。転送ゲート７０の非活性化時においては、この転送ゲート７０の入力部は、アンプ６８またはデータレジスタ（ＤＲ）の出力信号により所定の信号状態に保持されているためである。
ＤＲＡＭライトバッファ（ＤＷＢ）４２は、バッファライトイネーブル信号φＢＷＥの活性化に応答して活性状態とされ、メモリライトバッファ（ＭＷＢ）３８を介して与えられる情報を転送する転送ゲート７２と、転送ゲート７２から転送された情報をラッチしかつＧＩＯバス２８上に伝達するラッチ７４を含む。転送ゲート７２は、バス配線を介して直接ＩＴＢバス３５に接続される。
メモリライトバッファ（ＭＷＢ）３８において、ラッチ機能を実現する部分を単にバス配線のみとすることにより、このメモリライトバッファ（ＭＷＢ）３８において、ＳＢＬバス３２へ情報を転送する転送ゲート７０に加えて、さらにＤＲＡＭライトバッファ（ＤＷＢ）４２への転送を行なうための転送ゲートを設ける必要がなく、またラッチ回路を設ける必要がなく、このメモリライトバッファ（ＭＷＢ）３８の占有面積および消費電力を低減する。
図１３に示すように、各転送バッファにラッチ機能および増幅機能ならびに転送ゲートを設けることにより、データの衝突を伴うことなくまた信号損失を伴うことなく高速で情報の転送を行なうことができる。
この図１３において、プリアンプイネーブル信号φＤＰＡＥを除く信号φＤＲＴＥ、φＳＳＡＥ、φＤＢＩＴＢ、φＢＷＥおよびφＳＷＤＥＬは、後に説明するＳＲＡＭへのアクセスを制御するＳＲＡＭメモリコントローラからプロセサからのコマンドに基づいて生成される。ＤＲＡＭリードバッファ（ＤＲＢ）３０のアンプラッチ６０に対して与えられるＤＲＡＭプリアンプイネーブル信号φＤＰＡＥは、ＤＲＡＭおよびバスインタフェースユニット（ＢＩＵ）の動作を制御するＤＲＡＭメモリコントローラから生成される。
ＳＲＡＭコントローラからこれらの制御信号（信号φＤＰＡＥを除く）を生成することにより、正確なタイミングで情報の衝突を伴うことなく情報を転送することができる。
［ＤＲＡＭリードバッファ（ＤＲＢ）３０の構成］
図１４は、図１３に示すＤＲＡＭリードバッファ（ＤＲＢ）３０の具体的構成の一例を示す図である。図１４においては、１ビットのＤＲＡＭリードバッファの構成が示される。
図１４において、アンプラッチ６０は、プリアンプイネーブル信号φＤＰＡＥの活性化に応答して活性化され、ＧＩＯバス線ＧＩＯｉ上の信号を反転しかつ増幅するインバータバッファ６０ａと、プリアンプイネーブル信号φＤＰＡＥの活性化に応答して活性化され、ＧＩＯバス線ＺＧＩＯｉ上の信号を反転しかつ増幅するインバータバッファ６０ｂと、プリアンプイネーブル信号φＤＰＡＥの活性化に応答して活性化され、インバータバッファ６０ａの出力信号をさらに増幅するインバータバッファ６０ｃと、プリアンプイネーブル信号φＤＰＡＥの活性化に応答して活性化され、インバータバッファ６０ｂの出力信号をさらに増幅するインバータバッファ６０ｄと、プリアンプイネーブル信号φＤＰＡＥの活性化に応答して活性化され、インバータバッファ６０ａおよび６０ｂの出力信号を差動的に増幅しかつラッチする差動増幅回路６０ｅと、インバータバッファ６０ａおよび６０ｂの出力信号をラッチするラッチ回路６０ｆと、ラッチ回路６０ｆのラッチ信号をそれぞれ反転して出力するインバータ回路ＩＶ２０およびＩＶ２１を含む。
インバータ回路ＩＶ２０およびＩＶ２１からの相補信号ＤＲＢおよびＺＤＲＢは転送バッファ６２へ与えられる。
ＧＩＯバス線ＧＩＯｉおよびＺＧＩＯｉは互いに相補な信号線であり、１ビットのバス線を構成する。
インバータバッファ６０ａは、電源ノードＶｃｃとノードＮ１の間に接続されかつそのゲートがＧＩＯバス線ＧＩＯｉに接続されるｐチャネルＭＯＳトランジスタＱ１と、ノードＮ１と接地ノードとの間に直列に接続されるｎチャネルＭＯＳとランジスタＱ２およびＱ３を含む。ＭＯＳトランジスタＱ２のゲートへは、プリアンプイネーブル信号φＤＰＡＥが与えられる。ＭＯＳトランジスタＱ３のゲートは、ＧＩＯバス線ＧＩＯｉに接続される。インバータバッファ６０ｂは、電源ノードＶｃｃとノードＮ２の間に接続されかつそのゲートがＧＩＯバス線ＺＧＩＯｉに接続されるｐチャネルＭＯＳトランジスタＱ４と、ノードＮ２と接地ノードとの間に直列に接続されるｎチャネルＭＯＳトランジスタＱ５およびＱ６を含む。ＭＯＳトランジスタＱ５のゲートへは、プリアンプイネーブル信号φＤＰＡＥが与えられる。ＭＯＳトランジスタＱ６のゲートは、ＧＩＯバス線ＧＩＯｉに接続される。
インバータバッファ６０ｃは、電源ノードＶｃｃとノードＮ３の間に接続されかつそのゲートがノードＮ１に接続されるｐチャネルＭＯＳトランジスタＱ７と、ノードＮ３と接地ノードとの間に接続されるｎチャネルＭＯＳトランジスタＱ８およびＱ９を含む。ＭＯＳトランジスタＱ８のゲートへは、プリアンプイネーブル信号φＤＰＡＥが与えられる。ＭＯＳトランジスタＱ９のゲートは、ノードＮ１に接続される。
インバータバッファ６０ｄは、電源ノードＶｃｃとノードＮ４の間に接続されかつそのゲートがノードＮ２に接続されるｐチャネルＭＯＳトランジスタＱ１０と、ノードＮ４と接地ノードとの間に直列に接続されるｎチャネルＭＯＳトランジスタＱ１１およびＱ１２を含む。ＭＯＳトランジスタＱ１１のゲートへは、プリアンプイネーブル信号φＤＰＡＥを与えられる。ＭＯＳトランジスタＱ１２のゲートはノードＮ２に接続される。
ラッチ回路６０ｆは、ノードＮ４上の信号電位を反転してノードＮ３へ伝達するインバータ回路ＩＶ２２と、ノードＮ３上の信号を反転してノードＮ４へ伝達するインバータＩＶ２３を含む。
差動増幅回路６０ｅは、電源ノードＶｃｃとノードＮ１の間に接続されかつそのゲートにプリアンプイネーブル信号φＤＰＡＥを受けるｐチャネルＭＯＳトランジスタＱ１３と、電源ノードＶｃｃとノードＮ１の間に接続されかつそのゲートがノードＮ２に接続されるｐチャネルＭＯＳトランジスタＱ１４と、電源ノードＶｃｃとノードＮ２の間に接続されかつそのゲートにプリアンプイネーブル信号φＤＰＡＥを受けるｐチャネルＭＯＳトランジスタＱ１５と、電源ノードＶｃｃとノードＮ２の間に接続されかつそのゲートがノードＮ１に接続されるｐチャネルＭＯＳトランジスタＱ１６を含む。ＭＯＳトランジスタＱ１４およびＱ１６は交差結合されており、ノードＮ１およびＮ２のうちのＨレベルの電位を電源電位Ｖｃｃ（ノードと電圧とを同じ符号で示す）に上昇させる。次にこのアンプラッチ６０の動作について説明する。
ＧＩＯバス線ＧＩＯｉおよびＺＧＩＯｉは、スタンバイサイクル時、Ｈレベルにプリチャージされている。プリアンプイネーブル信号φＤＰＡＥがＬレベルのとき、ＭＯＳトランジスタＱ２およびＱ５がオフ状態であり、インバータバッファ６０ａおよび６０ｂは出力ハイインピーダンス状態にある。
差動増幅回路６０ｅにおいては、Ｌレベルのプリアンプイネーブル信号φＤＰＡＥに従って、ＭＯＳトランジスタＱ１３およびＱ１５がオン状態であり、ノードＮ１およびＮ２は、電源電位Ｖｃｃレベルにプリチャージされている。このノードＮ１およびＮ２がＨレベルであり、ＭＯＳトランジスタＱ７およびＱ１０はともにオフ状態である。さらに、プリアンプイネーブル信号φＤＰＡＥがＬレベルであり、ＭＯＳトランジスタＱ８およびＱ１１がオフ状態である。この状態においては、ラッチ回路６０ｆは前のサイクルにおける情報をラッチしており、インバータ回路ＩＶ２０およびＩＶ２１から前のサイクルにおける信号が持続的に出力される。
プリアンプイネーブル信号φＤＰＡＥがＨレベルに立上がると、ＭＯＳトランジスタＱ２およびＱ５がオン状態となり、インバータバッファ６０ａおよび６０ｂが作動状態とされ、ＧＩＯバス線ＧＩＯｉおよびＺＧＩＯｉの信号が反転しかつ増幅してノードＮ１およびＮ２へそれぞれ伝達される。差動増幅回路６０ｅにおいては、ＭＯＳトランジスタＱ１３およびＱ１４がオフ状態とされ、このノードＮ１およびＮ２上に伝達された信号電位がＭＯＳトランジスタＱ１４およびＱ１６によりさらに差動的に増幅される。今、ＧＩＯバス線ＧＩＯｉ上にＨレベルの信号が伝達され、ＧＩＯバス線ＺＧＩＯｉにＬレベルの信号が伝達されている場合を考える。この状態においては、ノードＮ１は、Ｌレベルであり、一方ノードＮ２は、Ｈレベルを維持する。ＭＯＳトランジスタＱ１６がノードＮ１のＬレベルに従ってオン状態となり、ノードＮ２を電源電位Ｖｃｃレベルに維持する。一方、ＭＯＳトランジスタＱ１４はオフ状態とされ、ノードＮ１の電位レベルは低下する。
このノードＮ１およびＮ２の電位変化に従って、ＭＯＳトランジスタＱ７のコンダクタンスが大きくなり、一方ＭＯＳトランジスタＱ１０はオフ状態を維持する。これにより、ＭＯＳトランジスタＱ７を介して、電源ノードＶｃｃからノードＮ３へ向かって電流が供給される。またＭＯＳトランジスタＱ８およびＱ１１がオン状態となり、ノードＮ４がＭＯＳトランジスタＱ１１およびＱ１２を介して放電される（ノードＮ２の電位はＨレベル）。一方、ＭＯＳトランジスタＱ９はノードＮ１の電位がＬレベルであり、オフ状態である。これにより、インバータバッファ６０ｃおよび６０ｄの出力信号が高速で変化し、インバータバッファ６０ｃおよび６０ｄの出力信号がラッチ回路６０ｆによりラッチされる。
この状態においては、ノードＮ３がＨレベル、ノードＮ４がＬレベルとなる。このノードＮ３およびＮ４上の信号は、インバータ回路ＩＶ２１およびＩＶ２０により反転かつ増幅されて伝達される。
このインバータバッファおよび差動増幅回路を利用することにより、ＧＩＯバス線ＧＩＯｉおよびＺＧＩＯｉの微小電位変化を高速で増幅する。また、ラッチ回路６０ｆのインバータ回路ＩＶ２２およびＩＶ２３により、高速でノードＮ３およびＮ４の電位が変化されてラッチされ、高速での情報転送が可能となる。
転送バッファ６２は電源ノードＶｃｃとノードＮ５の間に接続されかつそのゲートにリードトランスファイネーブル信号φＤＲＴＥを受けるｐチャネルＭＯＳトランジスタＱ２０と、ノードＮ５とノードＮ６の間に接続されかつそのゲートにアンプラッチ６０の出力信号ＺＤＲＢを受けるｐチャネルＭＯＳトランジスタＱ２１と、ノードＮ６と接地ノードとの間に接続されかつそのゲートに信号ＺＤＲＢを受けるｎチャネルＭＯＳトランジスタＱ２２と、ノードＮ６と接地ノードとの間に結合され、かつそのゲートに、リードトランスファイネーブル信号φＤＲＴＥを受けるｎチャネルＭＯＳトランジスタＱ２３と、ノードＮ５とノードＮ７の間に接続されかつそのゲートにアンプラッチ６０の出力信号ＤＲＢを受けるｐチャネルＭＯＳトランジスタＱ２４と、ノードＮ７と接地ノードとの間に接続されかつそのゲートに信号ＤＲＢを受けるｎチャネルＭＯＳトランジスタＱ２５と、ノードＮ７と接地ノードとの間に結合され、かつそのゲートにリードトランスファイネーブル信号φＤＲＴＥを受けるｎチャネルＭＯＳトランジスタＱ２６を含む。
ノードＮ６およびＮ７から、互いに相補な信号ＤＲＯおよびＺＤＲＯが出力され、メモリリードバッファ（ＭＲＢ）３６の選択ラッチ６６へ与えられる。次に動作について簡単に説明する。
リードトランスファイネーブル信号φＺＤＲＴＥが非活性状態のＨレベルのとき、ＭＯＳトランジスタＱ２０はオフ状態、ＭＯＳトランジスタＱ２３およびＱ２６がオン状態である。この状態においては、ノードＮ６およびＮ７は、ＭＯＳトランジスタＱ２３およびＱ２６を介して接地電位レベルに固定される。
リードトランスファイネーブル信号φＺＤＲＴＥがＬレベルの活性状態とされると、ＭＯＳトランジスタＱ２３およびＱ２６がオフ状態となり、またＭＯＳトランジスタＱ２０がオン状態となり、ノードＮ５へは電源電位Ｖｃｃが伝達される。これにより、ＭＯＳトランジスタＱ２１およびＱ２２がＣＭＯＳインバータとして動作し、アンプラッチ６０からの出力信号ＺＤＲＢを反転して信号ＤＲＯを生成する。またＭＯＳトランジスタＱ２４およびＱ２５がＣＭＯＳインバータとして動作し、アンプラッチ６０からの出力信号ＤＲＢを反転して信号ＺＤＲＯを生成する。
このアンプラッチ６０および転送バッファ６２と２段のラッチおよび増幅転送構成とすることにより、増幅されかつラッチされて安定化された情報が次段の回路へ確実に伝達される。またラッチを設けておくことにより、各クロックサイクル（転送サイクル）ごとに順次正確に情報を伝送することができる。
［メモリリードバッファ（ＭＲＢ）の構成］
図１５は、図１３に示すメモリリードバッファ（ＭＲＢ）３６の具体的構成の一例を示す図である。図１５においては、メモリリードバッファ（ＭＲＢ）３６の１ビットの部分の構成が示される。
図１５において、転送ゲート６４は、ＳＲＡＭ転送イネーブル信号φＳＳＡＥの活性化に応答して導通し、ＳＢＬバス線ＳＢＬｉおよびＺＳＢＬｉ上の信号をノードＮ８およびＮ９へそれぞれ伝達するｎチャネルＭＯＳトランジスタＱ３０およびＱ３１と、ＳＲＡＭ転送イネーブル信号φＳＳＡＥの非活性化時導通し、ノードＮ８およびＮ９への電源電位Ｖｃｃを伝達するｐチャネルＭＯＳトランジスタＱ３２およびＱ３３を含む。バス線ＳＢＬｉおよびＺＳＢＬｉは相補信号線であり、１ビットのＳＢＬバス線を構成する。
選択ラッチ６６は、この転送ゲート６４からノードＮ８およびＮ９上に転送された相補信号を差動的に増幅する差動増幅回路６６ａと、図１４に示す転送バッファ６２から伝達される相補信号ＤＲＯおよびＺＤＲＯを差動的に増幅する差動増幅回路６６ｂと、差動増幅回路６６ａおよび６６ｂの一方からの出力信号を増幅してラッチするラッチ回路６６ｃを含む。
差動増幅回路６６ａは、電源ノードＶｃｃとノードＮ１０の間に接続されかつそのゲートがノードＮ８に接続されるｐチャネルＭＯＳトランジスタＱ３４と、電源ノードＶｃｃとノードＮ１１の間に接続されかつそのゲートがノードＮ９に接続されるｐチャネルＭＯＳトランジスタＱ３５を含む。差動増幅回路６６ｂは、ノードＮ１１と接地ノードとの間に接続されかつそのゲートに転送バッファ６２からの出力信号ＤＲＯを受けるｎチャネルＭＯＳトランジスタＱ３６と、ノードＮ１０と接地ノードとの間に接続されかつそのゲートに転送バッファ６２からの出力信号ＺＤＲＯを受けるｎチャネルＭＯＳトランジスタＱ３７を含む。
ラッチ回路６６ｃは、ノードＮ１１上の信号を反転してノードＮ１０へ伝達するインバータ回路ＩＶ２５と、ノードＮ１０上の信号を反転してノードＮ１１へ伝達するインバータ回路ＩＶ２６を含む。次に、この選択ラッチ６６の動作について説明する。
転送ゲート６４からの信号をラッチする場合の動作についてまず説明する。この転送動作においては、図１４に示す転送バッファ６２は非活性状態であり、その出力信号ＤＲＯおよびＺＤＲＯはともにＬレベルである。したがって差動増幅回路６６ｂにおけるＭＯＳトランジスタＱ３６およびＱ３７はともにオフ状態にある。ＳＲＡＭ転送イネーブル信号φＳＳＡＥが非活性状態のＬレベルのときには、ノードＮ８およびＮ９はＭＯＳトランジスタＱ３２およびＱ３３により、電源電位Ｖｃｃレベルにプリチャージされており、差動増幅回路６６ａにおけるＭＯＳトランジスタＱ３４およびＱ３５はともにオフ状態にある。この状態において、ラッチ回路６６ｃは、先の状態を保持している。
ＳＲＡＭ転送イネーブル信号φＳＳＡＥが活性状態のＨレベルとされると、ＭＯＳトランジスタＱ３２およびＱ３３がオフ状態となり、ノードＮ８およびＮ９のプリチャージが完了し、ＳＢＬバスのバス信号線ＳＢＬｉおよびＺＳＢＬｉ上の信号がノードＮ８およびＮ９へ伝達される。このノードＮ８およびＮ９に現われた信号は相補な信号である。ノードＮ８上にＨレベルの信号が伝達された場合には、ＭＯＳトランジスタＱ３４はオフ状態にあり、一方、ＭＯＳトランジスタＱ３５は、そのコンダクタンスが低下し、オン状態へ移行する。これにより、ノードＮ１１は電源ノードＶｃｃから電流を供給され、ノードＮ１１の電位が上昇する。
ＭＯＳトランジスタＱ３４およびＱ３５の電流駆動力がインバータ回路ＩＶ２５およびＩＶ２６の電流駆動力よりも十分大きければ、このノードＮ１１の電位上昇に従って、インバータ回路ＩＶ２５の出力信号がＬレベルへ低下し、ノードＮ１１が電源電位ＶｃｃレベルのＨレベル、ノードＮ１０が接地電位レベルのＬレベルへと高速で駆動されかつラッチされる。これによりノードＮ１１からはＨレベルの信号ＺＭＲＢが出力され、ノードＮ１０からは、Ｌレベルの信号が出力される。
転送バッファ６２からの出力信号ＤＲＯおよびＺＤＲＯを転送する場合は、以下の動作が行なわれる。この状態においては、ＳＲＡＭ転送イネーブル信号φＳＳＡＥは非活性状態のＬレベルであり、ノードＮ８およびＮ９は、ともにＨレベルであり、差動増幅回路６６ａのＭＯＳトランジスタＱ３４およびＱ３５はともにオフ状態にある。出力信号ＤＲＯおよびＺＤＲＯは非活性状態時においては、Ｌレベルであり、ＭＯＳトランジスタＱ３６およびＱ３７はオフ状態にある。この状態においてラッチ回路６６ｃは先の状態を保持している。
転送バッファ６２（図１４参照）から信号ＤＲＯおよびＺＤＲＯが出力されると、ＭＯＳトランジスタＱ３６およびＱ３７の電位レベルが変化する。今、信号ＤＲＯがＨレベルのときには、ＭＯＳトランジスタＱ３６のコンダクタンスがＭＯＳトランジスタＱ３７のコンダクタンスよりも大きくなる。ＭＯＳトランジスタＱ３６およびＱ３７の電流駆動力がインバータ回路ＩＶ２５およびＩＶ２６の電流駆動力よりも十分大きければ、ノードＮ１１は、ＭＯＳトランジスタＱ３６を介して接地電位レベルへと放電される。
このノードＮ１１の電位低下により、インバータ回路ＩＶ２５およびＩＶ２６によりノードＮ１１およびＮ１０の電位が高速でそれぞれＬレベルおよびＨレベルにラッチされる。ＭＯＳトランジスタＱ３４、Ｑ３５、Ｑ３６、およびＱ３７の電流駆動力は、インバータ回路ＩＶ２５およびＩＶ２６の電流駆動力よりも大きくすることにより確実に転送ゲート６４および転送バッファ６２（図１４参照）から転送された信号を増幅しかつラッチすることができる。また、ラッチ回路６６ｃのラッチノードＮ１０およびＮ１１と電源ノードＶｃｃの間および接地ノードの間にそれぞれ差動増幅回路６６ａおよび６６ｂを設け、それぞれを転送ゲート６４および転送バッファ６２の出力信号に従って駆動することにより、マルチプレクサなどの回路を必要とすることなく確実にこれらの転送ゲート６４および転送バッファ６２の出力信号を選択的に増幅してラッチすることができる。。
アンプ６８は、選択ラッチ６６の出力信号ＡＭＲＤを反転するインバータ回路ＩＶ２７の出力信号に従って、ＩＴＢバス線Ｉｉを駆動する。このアンプ６８は、バス線転送イネーブル信号φＤＢＩＴＢおよびφＺＤＢＩＴＢの活性化時導通し、インバータ回路ＩＶ２７の出力信号をノードＮ１２およびＮ１３へそれぞれ伝達するＣＭＯＳトランスミッションゲートＴＦ１およびＴＦ２と、電源ノードＶｃｃとノードＮ１２の間に接続されかつそのゲートにバス転送イネーブル信号φＤＢＩＴＢを受けるｐチャネルＭＯＳトランジスタＱ３８と、ノードＢ１３と接地ノードとの間に接続されかつそのゲートにバス転送イネーブル信号φＺＤＢＩＴＢを受けるｎチャネルＭＯＳトランジスタＱ３９と、電源ノードＶｃｃと出力ノードＮ１４の間に接続されかつそのゲートがノードＮ１２に接続されるｐチャネルＭＯＳトランジスタＱ４０と、出力ノードＮ１４と接地ノードとの間に接続されかつそのゲートがノードＮ１３に接続されるｎチャネルＭＯＳトランジスタＱ４１を含む。次にこのアンプ６８の動作について簡単に説明する。
バス転送イネーブル信号φＤＢＩＴＢおよびφＺＤＢＩＴＢの非活性化時、ＣＭＯＳトランスミッションゲートＴＦ１およびＴＦ２はともに非導通状態にある。この状態においては、ＭＯＳトランジスタＱ３８が、非活性状態（Ｌレベル）のバス転送イネーブル信号φＤＢＩＴＢに応答して、ノードＮ１２を電源電位Ｖｃｃレベルに充電し、ＭＯＳトランジスタＱ４８をオフ状態に維持する。一方、ＭＯＳトランジスタＱ３９は、非活性状態（Ｈレベル）のバス転送イネーブル信号φＺＤＢＩＴＢに応答して、ノードＮ１３を接地電位レベルに保持し、ＭＯＳトランジスタＱ４１をオフ状態に維持する。
バス転送イネーブル信号φＤＢＩＴＢおよびφＺＤＢＩＴＢが活性状態とされると、ＭＯＳトランジスタＱ３８およびＱ３９がオフ状態とされる。このとき、ＣＭＯＳトランスミッションゲートＴＦ１およびＴＦ２が導通状態とされ、インバータ回路ＩＶ２７からの出力信号がノードＮ１２およびＮ１３へ伝達される。ノードＮ１２およびＮ１３は、インバータ回路ＩＶ２７の出力信号により、同じ電位レベルとされ、ＭＯＳトランジスタＱ４０およびＱ４１の一方が導通状態となり、一方が非導通状態となる。これにより、それまでハイインピーダンス状態にあったＩＴＢバス線Ｉｉへ、インバータ回路ＩＶ２７の出力信号を反転した信号が伝達される。アンプ６８を出力ハイインピーダンス状態とする構成により、後に説明するメモリライトバッファ（ＭＷＢ）からＤＲＡＭライトバッファ（ＤＷＢ）への情報転送に何ら悪影響を及ぼすことがない。
［ＤＲＡＭライトバッファ（ＤＷＢ）４２およびメモリライトバッファ（ＭＷＢ）３８の構成］
図１６は、図１３に示すＤＲＡＭライトバッファ（ＤＷＢ）４２およびメモリライトバッファ（ＭＷＢ）３８の具体的構成の一例を示す図である。図１６においては、１ビットのＤＲＡＭライトバッファ（ＤＷＢ）４２およびメモリライトバッファ（ＭＷＢ）３８の構成が示される。
図１６において、ＤＲＡＭライトバッファ（ＤＷＢ）４２の転送ゲート７２は、バッファライトイネーブル信号φＢＷＥおよびφＺＢＷＥの活性化時導通し、ＩＴＢバス線Ｉｉ上の信号を伝達するＣＭＯＳトランスミッションゲートで構成される。また、ラッチ回路７４は、インバータ回路ＩＶ３０ａおよびＩＶ３０ｂを含む。インバータ回路ＩＶ３１の出力回路がＧＩＯバス線（ＧＩＯｉ）へ伝達される。このＤＲＡＭライトバッファ（ＤＷＢ）の構成は、単にゲートとラッチ回路を含むだけであり、ＣＭＯＳトランスミッションゲートで構成される転送ゲート７２の非導通時、ＤＲＡＭライトバッファ（ＤＷＢ）４２が、ラッチ状態とされる。このラッチ回路７４は、インバータ回路ＩＶ３０ａおよびＩＶ３０ｂを含み、増幅機能を備えている。転送ゲート７２が導通すると、ＩＴＢバス線Ｉｉ上の信号電位がラッチ回路７４により増幅されてＧＩＯバス線へ伝達されるとともにラッチされる。このラッチ回路７４を設けることにより、各転送サイクルごとに正確にＩＴＢバスからＧＩＯバスへ情報を伝達することができる。
メモリライトバッファ（ＭＷＢ）３８は、ＩＴＢバス線Ｉｉ上の信号電位を受ける２段の縦続接続されるインバータ回路ＩＶ３１およびＩＶ３２と、インバータ回路ＩＶ３１およびＩＶ３２と並列に設けられてＩＴＢバス線Ｉｉ上の信号を受けるインバータ回路ＩＶ３３と、ライトデコードイネーブル信号φＳＷＤＥＬの活性化時導通し、インバータ回路ＩＶ３２およびＩＶ３３の出力信号をそれぞれＳＢＬバス線ＺＳＢＬｉおよびＳＢＬｉへ伝達する転送ゲート７０を含む。
転送ゲート７０は、ライトデコードイネーブル信号φＳＷＤＥＬの活性化時導通するトランスファゲートトランジスタ対を備える。メモリリードバッファ（ＭＲＢ）のアンプ６８の非活性化時、このアンプ６８は、出力ハイインピーダンス状態とされる。したがってインバータ回路ＩＶ３１、ＩＶ３２、およびＩＶ３３は、それぞれ互いに相補な信号を生成し、転送ゲート７０の非導通時、このＩＴＢバス線Ｉｉ上に伝達された信号を保持している。したがって、このメモリライトバッファ（ＭＷＢ）３８は、配線部分をラッチとして利用して回路占有面積を低減する。
この配線部分をラッチとして利用する構成により、メモリリードバッファ（ＭＲＢ）３６からＩＴＢバスおよびメモリライトバッファ（ＭＷＢ）への同時情報転送を容易に実現することができる。
［メモリリードバッファ（ＭＲＢ）の変更例１］
図１７はメモリリードバッファ（ＭＲＢ）３６の変更例の構成を示す図である。図１７において、メモリリードバッファ（ＭＲＢ）３６は、ＳＲＡＭ転送イネーブル信号φＳＳＡＥの活性化に応答して活性化されて、ＳＢＬバス３２上の情報を増幅して転送するアンプゲート６４ａと、アンプゲート６４ａの出力信号とＤＲＡＭリードバッファ（ＤＲＢ）の出力信号ＤＲＯの一方を選択的に増幅しかつラッチする選択ラッチ６６と、選択ラッチ６６の出力信号を増幅するアンプ６８ａと、バス転送イネーブル信号φＤＢＩＴＢの活性化に応答して活性化され、アンプ６８ａの出力信号をＩＴＢバス３５へ転送する転送ゲート６８ｂを含む。
選択ラッチ６６の構成は、図１５に示す構成と同じである。アンプゲート６４ａは、転送ゲートの機能と増幅器としての機能両者備える。このアンプゲート６４ａの構成としては、たとえば図１４に示すＤＲＡＭリードバッファに含まれるアンプラッチ６０と同様の構成を利用することができる。アンプ６８ａおよび６８ｂは別々に設けられるのではなく、先の図１５に示すように、一体となってラッチしかつ増幅する構成が用いられてもよい。
この図１７に示す構成においては、ＳＢＬバス３２上の情報がアンプゲート６４ａにより増幅される。したがって、確実にＳＢＬバス上の情報を増幅して選択ラッチ６６へ伝達することができ、正確な情報の伝達を実現することができる。
先の図１５に示す構成は、このアンプゲート６４ａのアンプ部分が、メモリリードバッファ（ＭＲＢ）のアンプと共用された構成と等価であり、占有面積を低減することができる。
［メモリリードバッファ（ＭＲＢ）の変更例２］
図１８は、メモリリードバッファ（ＭＲＢ）の変更例２の構成を示す図である。図１８に示すメモリリードバッファ（ＭＲＢ）３６においては、転送ゲート６４が、ＳＲＡＭ転送イネーブル信号φＳＳＡＥの活性化に応答してＳＢＬバス上の情報を伝達するゲート６４ｂと、ＳＲＡＭ転送イネーブル信号φＺＳＳＡＥの活性化に応答して、このゲート６４ｂからの信号電位レベルを保持して選択ゲート６６へ伝達するレベルシフタ６４ｃを含む。
このレベルシフタ６４ｃは、ＳＢＬバス上の信号レベルを保持する能力を備えており、ＳＢＬバス上の信号電位を選択ゲート６６へ伝達する。このＳＢＬバス上の信号電位はアンプ６８ａにより最終的に増幅されて、転送ゲート６８ｂを介してＩＴＢバスへ伝達される。レベルシフタ６４ｃは、大きな電流駆動力は要求されないため、消費電力を低減することができる。また、トランジスタサイズも小さくすることができ、回路占有面積を低減することができる。
図１９は、図１８に示すレベルシフタ６４ｃの具体的構成の一例を示す図である。図１９においては、１ビットのレベルシフタ部分が示される。
図１９において、レベルシフタ６４ｃは、電源ノードＶｃｃとノードＮ１７の間に接続され、かつそのゲートにＳＲＡＭ転送イネーブル信号φＺＳＳＡＥを受けるｐチャネルＭＯＳトランジスタＱ５０と、ノードＮ１７とノードＮ１５の間に接続されかつそのゲートがＳＢＬバス線ＳＢＬｉに接続されるｎチャネルＭＯＳトランジスタＱ５１と、ノードＮ１７とノードＮ１６の間に接続されかつゲートがＳＢＬバス線ＺＳＢＬｉに接続されるｎチャネルＭＯＳトランジスタＱ５２と、ノードＮ１５とノードＮ１６の間に接続されかつゲートにイコライズ指示信号φＥＱを受けるｎチャネルＭＯＳトランジスタＱ５３と、ノードＮ１５とノードＮ１６の間に接続されかつゲートにＳＲＡＭ転送イネーブル信号φＺＳＳＡＥを受けるｎチャネルＭＯＳトランジスタＱ５４を含む。
ＳＢＬバス線ＳＢＬｉおよびＺＳＢＬｉは互いに相補な信号線であり、１ビットのＳＢＬバス線を構成する。イコライズ指示信号φＥＱは、このメモリリードバッファ（ＭＲＢ）６４の非活性化時活性状態（Ｈレベル）とされる。
レベルシフタ６４ｃは、さらに、ノードＮ１５と接地ノードとの間に接続されかつそのゲートがノードＮ１６に接続されるｎチャネルＭＯＳトランジスタＱ５５と、ノードＮ１５と接地ノードとの間に接続されかつそのゲートにＳＲＡＭ転送イネーブル信号φＺＳＳＡＥを受けるｎチャネルＭＯＳトランジスタＱ５６と、ノードＮ１６と接地ノードとの間に接続されかつそのゲートにノードＮ１５に接続されるｎチャネルＭＯＳトランジスタＱ５７と、ノードＮ１６と接地ノードとの間に接続されかつそのゲートにＳＲＡＭ転送イネーブル信号φＺＳＳＡＥを受けるｎチャネルＭＯＳトランジスタＱ５８を含む。ノードＮ１５およびＮ１６が、選択ゲート６６に接続される。次に、この図１９に示すレベルシフタ６４ｃの動作について簡単に説明する。
メモリリードバッファ（ＭＲＢ）３６が非活性状態のとき、イコライズ指示信号φＥＱが活性状態のＨレベルにあり、またＳＲＡＭ転送イネーブル信号φＺＳＳＡＥが非活性状態のＨレベルにある。この状態において、ＭＯＳトランジスタＱ５０がオフ状態、ＭＯＳトランジスタＱ５３およびＱ５４がオン状態とされる。これにより、ノードＮ１５およびＮ１６の電位は、等しくされる。また、ＭＯＳトランジスタＱ５６およびＱ５８が、オン状態となり、ノードＮ１５およびＮ１６はともに接地電位レベルへ放電され、信号ＬＳＯｉおよびＺＬＳＯｉはＬレベルである。この信号ＬＳＯｉおよびＺＬＳＯｉがともにＬレベルであるため、選択ゲート６６における転送ゲート６４の出力信号ＬＳＯを選択する動作が禁止される（インバータを介してこの出力信号ＬＳＯｉ，ＺＬＳＯｉが選択ゲートへ与えられる）。
メモリリードバッファ（ＭＲＢ）３６が活性状態とされるとイコライズ指示信号φＥＱが非活性状態（Ｌレベル）とされ、ＭＯＳトランジスタＱ５３がオフ状態とされる。この状態においても、まだＭＯＳトランジスタＱ５４はオン状態であり、ノードＮ１５およびＮ１６の電位レベルは互いに等しくされる。ＳＢＬバス線ＳＢＬｉおよびＺＳＢＬｉ上に相補な信号が伝達され、ＭＯＳトランジスタＱ５１およびＱ５２のコンダクタンスが変化する。
この状態において、次いで、ＳＲＡＭ転送イネーブル信号φＺＳＳＡＥが活性状態（Ｌレベル）とされる。これにより、ＭＯＳトランジスタＱ５０がオン状態とされ、ノードＮ１７が電源電位Ｖｃｃレベルに充電される。またＭＯＳトランジスタＱ５４がオフ状態となり、ノードＮ１５およびＮ１６のイコライズ動作が停止される。これにより、ノードＮ１５およびＮ１６には、ＭＯＳトランジスタＱ５１およびＱ５２のソースフォロアモード動作により、ＳＢＬバス線ＳＢＬｉおよびＺＳＢＬｉの信号電位に応じた信号電位が伝達される。ＭＯＳトランジスタＱ５６およびＱ５８がオフ状態にある。
ノードＮ１５およびＮ１６の電位変化に従って、ＭＯＳトランジスタＱ５５およびＱ５７のコンダクタンスが変化し、ノードＮ１５およびＮ１６の低電位のノードの電位レベルがさらに低下される。ＭＯＳトランジスタＱ５５およびＱ５７の電流駆動力はそれほど大きくされていないため、ノードＮ１５およびＮ１６の低電位のノードの接地電位レベルへの放電は停止され、中間電位レベルに保持される。これにより、ＳＢＬバス線ＳＢＬｉおよびＺＳＢＬｉの信号電位差に応じた信号電位差を有する信号ＳＬＯｉおよびＺＳＬＯｉが生成される。
レベルシフタ６４ｃを利用することにより、必要最小限の信号振幅を有する信号を選択ゲート６６へ伝達することができ、このレベルシフタの占有面積を低減することができる。選択ゲート６６は、このレベルシフタ６４ｃから与えられた信号を選択してラッチし、アンプ６８ａへ与え、アンプ６８ａが、ＳＢＬバス線上の信号をＨレベルおよびＬレベルへと最終的に増幅して、転送ゲート６８ｂを介してＩＴＢバスへ伝達する。大きな電流駆動力を有するアンプＳＢＬバス線用およびＩＴＢバス駆動用両者に設ける必要がなく、回路占有面積が低減される。
以上のように、この発明の実施の形態１に従えば、バスインタフェースユニット、ＤＲＡＭ、ＳＲＡＭ、およびプロセサ（ＣＰＵ）をそれぞれ別々のバスで接続するように構成したため、バスインタフェースユニットを介して装置外部との情報転送時においても内部で情報を転送することができ、効率的に情報を転送することができる。また、内部のバス間情報転送を双方向転送回路を利用することにより、一方から他方への情報転送時、他方から一方へ情報を転送することができ、効率的な情報転送を実現することができる。
［実施の形態２］
図２０は、この発明の実施の形態２に従うマイクロコンピュータの内部構成要素の平面レイアウトを示す図である。図２０において、プロセサ（ＣＰＵ）５２の近傍に、命令レジスタ（ＩＲ）４４およびデータレジスタ（ＤＲ）４６が配置される。命令レジスタ（ＩＲ）４４はＩＲバス配線１４８を介してプロセサ（ＣＰＵ）５２に接続され、データレジスタ（ＤＲ）４６は、ＤＲバス配線１５０を介してプロセサ（ＣＰＵ）５２に接続される。これらのレジスタ４４および４６をプロセサ（ＣＰＵ）５２の近傍に配置することにより、ＩＲバス配線１４８およびＤＲバス配線１５０をほぼ直線的に配置することができ、これらのバス１４８および１５０の距離を短くすることができ、寄生容量および寄生抵抗をともに小さくすることができ、高速での命令およびデータ転送を実現することができる。
命令レジスタ（ＩＲ）４４およびデータレジスタ（ＤＲ）４６に近接して、第２の双方向転送回路８５が配置される。この第２の双方向転送回路８５は、メモリリードバッファ（ＭＲＢ）およびメモリライトバッファ（ＭＷＢ）を含む。第２の双方向転送回路８５は、ＩＴＢバス配線１３５を介して命令レジスタ（ＩＲ）４４およびデータレジスタ（ＤＲ）４６に接続される。このＩＴＢバス配線１３５は、この第２の双方向転送回路８５とレジスタ４４および４６との間の領域およびその周辺領域を利用して配設することができる。第２の双方向転送回路８５は、レジスタ４４および４６に隣接して配置されている。したがって、このＩＴＢバス配線も最短距離で配置することができる。これにより、ＩＴＢバス配線１３５の寄生容量および寄生抵抗を最小限にすることができ、高速での命令およびデータ（情報）を転送することができる。これらのＩＴＢバス配線１３５、ＩＲバス配線１４８、およびＤＲバス配線１５０を最短距離で配置することができることにより、たとえば１００ＭＨｚ程度のクロック周波数に対応する情報転送が可能なバスを実現することができる。
第２の双方向転送回路８５に関して命令レジスタ（ＩＲ）４４およびデータレジスタ（ＤＲ）４６と反対側にＳＲＡＭ３４が配置される。ＳＲＡＭ３４と第２の双方向転送回路８５の間の領域にＳＢＬバス配線１３２が配置される。第１の双方向転送回路８０は、ＳＲＡＭ３４に関して第２の双方向転送回路８５と対向するように配置される。第１の双方向転送回路８０は、ＤＲＡＭリードバッファ（ＤＲＢ）およびＤＲＡＭライトバッファ（ＤＷＢ）を含む。第２の双方向転送回路８５に含まれるメモリリードバッファ（ＭＲＢ）は、第１の双方向転送回路８０に含まれるＤＲＡＭリードバッファ（ＤＲＢ）とＤＲＢバス１３１を介して接続される。第２の双方向転送回路８５に含まれるメモリライトバッファ（ＭＷＢ）は、第１の双方向転送回路８０に含まれるＤＲＡＭライトバッファ（ＤＷＢ）とＤＷＢバス配線１４０を介して接続される。これらのＤＲＢバス配線１３１およびＤＷＢバス配線１４０は、ＳＲＡＭ３４と平面図的に見て重なり合うように配置される。すなわち、ＤＲＢバス配線１３１およびＤＷＢバス配線１４０は、ＳＲＡＭ３４上をわたって延在するように配置される。ＤＲＡＭバス配線１３１およびＤＷＢバス配線１４０は、ＳＢＬバス配線１３２よりも上層の配線層で形成される。したがって、これらのＤＲＢバス配線１３１およびＤＷＢバス配線１４０をＳＲＭＡ３４上にわたって延在するように配置しても、それらのバス配線１３１および１４０がＳＢＬバス配線１３２の配線に悪影響を及ぼすことはない。
この第２の双方向転送回路８５に隣接してＳＲＭＡ３４を配置することにより、ＳＲＡＭ３４と第２の双方向転送回路８５の間のＳＢＬバス配線１３２を最短距離とすることができ、高速バスを実現することができる。また、ＤＲＢバス配線１３１およびＤＷＢバス配線１４０をＳＲＡＭ３４上にわたって延在して配置させることにより、これらのＤＲＢバス配線１３１およびＤＷＢ配線１４０を特別の配線領域を必要とすることなく直線的に最短距離で配設することができ、これらのバスの寄生容量および寄生抵抗を最小とすることができ、配線による信号伝搬遅延およびバスの充放電電流をともに最小にすることができ（寄生容量の充放電が小さくなる）、高速かつ低消費電力のバスを実現することができる。
第１の双方向転送回路８０に関してＳＲＡＭ３４と反対側にＤＲＡＭ２６が配置される。このＤＲＡＭと第１の双方向転送回路８０とは、ＧＩＯバス配線１２８を介して接続される。このＧＩＯバス配線１２８は、ＤＲＡＭ２６および第１の双方向転送回路８０の周辺領域に配置される。このＧＩＯバスは高速動作が要求されないため、この周辺領域に少し長いＧＩＯバス配線１２８を配設しても、特に問題は生じない。
このＤＲＡＭ２６に関して第１の双方向転送回路８０と対向するように、バスインタフェースユニット（ＢＩＵ）２３が配置される。バスインタフェースユニット（ＢＩＵ）２３とＤＲＡＭ２６とは、ＢＩＵバス配線１２４を介して接続される。このＢＩＵバスも、低速のクロックに従って情報転送を行なうため、高速動作は要求されない。したがってこのＢＩＵバス配線１２４の距離が少し長くなっても何ら問題は生じない。
この図２０に示すように、マイクロコンピュータの構成要素をほぼ直線上に整列して配置することにより、各構成要素間のバス配線長を最小とすることができ、バスの寄生容量および寄生抵抗を最小とすることができ、配線による信号伝搬遅延およびバスの充放電電流を最小に抑制することができ、高速かつ低消費電力で情報を転送するバス配置を実現することができる。
なお、ＳＢＬバス配線１３２は、ＳＲＡＭ３４と、第２の双方向転送回路８５が隣接して配置されているため、特別の配線領域を必要とすることなく配置される（ＤＲＢバス１３１およびＤＷＢバス１４０は、そのＳＢＬバス配線よりも上層の配線層である）。
図２１は、この発明の実施の形態２に従うマイクロコンピュータのチップレイアウトの一例を示す図である。図２１において、メモリ内蔵マイクロコンピュータは、半導体チップ２００上に形成される。この半導体チップ２００は、４つの領域＃Ａ、＃Ｂ、＃Ｃおよび＃Ｄに分割される。
領域＃Ａにおいては、バスインタフェースユニット（ＢＩＵ）２３ａ、ＤＲＡＭ２６ａ、第１の双方向転送回路（ＤＲＢ／ＤＷＢ）８０ａ、ＳＲＡＭ３４ａ、第２の双方向転送回路（ＭＲＢ／ＭＷＢ）８５ａ、命令レジスタ（ＩＲ）４４ａおよびデータレジスタ（ＤＲ）４６ａが配置される。ＤＲＡＭ２６ａは、２Ｍビット（５１２行×２５６列×１６ブロック）の記憶容量を有し、ＳＲＡＭ３４ａは、８Ｋビット（２５６行×３２列）の記憶容量を備える。
バスインタフェースユニット（ＢＩＵ）２３ａとＤＲＡＭ２６ａとは、ＢＩＵバス配線１２４ａにより相互接続され、ＤＲＡＭ２６ａと第１の双方向転送回路８０ａとは、ＧＩＯバス配線１２８ａにより相互接続され、第１の双方向転送回路８０ａおよび第２の双方向転送回路８５ａとは、バス配線１３９ａにより相互接続される。このバス配線１３９ａは、ＤＲＡＭリードバッファ（ＤＲＢ）とメモリリードバッファ（ＭＲＢ）とを接続するバス配線およびＤＲＡＭライトバッファ（ＤＷＢ）およびメモリライトバッファ（ＭＷＢ）を相互接続するバス配線両者を含む。
さらに、ＳＲＡＭ３４ａと第２の双方向転送回路８５ａとは、バス配線１３２ａにより相互接続され、第２の双方向転送回路８５ａとデータレジスタ（ＤＲ）４６ａおよび命令レジスタ（ＩＲ）４４ａとは、ＩＴＢバス配線１３５ａにより相互接続される。この領域＃Ａにおける配線および構成要素のレイアウトは、バスのビット幅が１／４になることを除いて図２０に示すレイアウトと同じである。
バスインタフェースユニット（ＢＩＵ）２３ａと半導体チップ２００の短辺側端部との間に、４ビットのＤＱパッドＤＱａが配置される。ＤＱパッドＤＱａとバスインタフェースユニット（ＢＩＵ）２３ａとは、ＤＢバス２２ａにより接続される。
図２１に示すチップレイアウトにおいては、図２０に示すマイクロコンピュータの構成要素のうち、プロセサ（ＣＰＵ）５２を除いて個々の構成要素が４分割され、４つの領域＃Ａ〜＃Ｄに分散して配置される。したがって、領域＃Ｂ〜＃Ｄそれぞれにおいては、領域＃Ａと同じ構成要素が同じレイアウトで（チップ長辺中央に関して鏡映対称的に）配置される。これらの領域＃Ｂ〜＃Ｄの構成要素に対しては、領域＃Ａに示す構成要素およびバス配線と同じ参照数字を付し、その末尾の数字で領域を示す。
この図２１に示すように、領域＃Ａおよび＃Ｃの構成要素と領域＃Ｂおよび＃Ｄの構成要素を半導体チップ２００の長辺方向についての中央部に関して鏡映対称配置とすることにより、１つの領域における構成要素のレイアウト最適化を行なえばその最適化されたレイアウトを鏡映対称することにより、残りの領域も最適レイアウトで構成要素を配置することができる。
半導体チップ２００の長辺についての中央部に、プロセサ（ＣＰＵ）５２およびメモリコントローラ２１０が配置される。このメモリコントローラ２１０は、プロセサ（ＣＰＵ）からのコマンドをデコードし、先の実施の形態１において示した各種制御信号を発生する。すなわちこのメモリコントローラ２１０は、ＳＲＡＭに対するコントローラ、およびＤＲＡＭおよびバスインタフェースユニット（ＢＩＵ）に対するコントローラを含む。
領域＃Ａ〜＃Ｄの命令レジスタ（ＩＲ）４４ａ、４４ｂ、４４ｃおよび４４ｄは、バス配線４８ａ、４８ｂ、４８ｃおよび４８ｄそれぞれを介してプロセサ（ＣＰＵ）５２に接続され、データレジスタ（ＤＲ）４６ａ、４６ｂ、４６ｃおよび４６ｄは、バス配線１５０ａ、１５０ｂ、１５０ｃおよび１５０ｄそれぞれを介してプロセサ（ＣＰＵ）５２に接続される。
プロセサ（ＣＰＵ）５２を半導体チップ２００の長辺についての中央部に配置することにより、領域＃Ａ〜＃Ｄそれぞれの命令レジスタおよびデータレジスタのプロセサ（ＣＰＵ）との間のバス配線１５０ａ〜１５０ｄおよび１４８ａ〜１４８ｄの配線長さをほぼ同じとすることができ、これらのバス配線における信号伝搬遅延の領域依存性をなくすことができる。
また、領域＃Ａ〜＃Ｄのバスインタフェースユニット（ＢＩＵ）２３ａ〜２３ｄと半導体チップ２００の短辺端部の間にＤＱパッドＤＱａ〜ＤＱｄを配置することにより、バスインタフェースユニット（ＢＩＵ）２３ａ〜２３ｄそれぞれの近傍にＤＱパッドＤＱａ〜ＤＱｄを配置することができ、ＤＢバス２２ａ〜２２ｄの配線領域を低減することができ、チップ面積の増大を抑制することができる。
また、ＤＱパッドＤＱａ〜ＤＱｄを、半導体チップ２００の短辺端部に配置することにより、半導体チップ２００の長辺についての中央領域近傍に、プロセサ（ＣＰＵ）５２に隣接してプロセサ（ＣＰＵ）５２に対する制御信号入出力パッドを配置することができる。このプロセサ（ＣＰＵ）５２に対する制御信号入出力パッド配置領域を、図２１においては、破線ブロック２１５で示す。これにより、プロセサ（ＣＰＵ）５２に対し、最小の遅延時間で信号の入出力を行なうことができ、プロセサ（ＣＰＵ）５２を外部からの制御信号に従って早いタイミングで動作させることができ、またプロセサ（ＣＰＵ）５２からの信号を早いタイミングで装置外部へ出力することができ、高速動作するマイクロコンピュータを実現することができる。
以上のように、この発明の実施の形態２に従えば、マイクロコンピュータの構成要素を、整列して配置し、プロセサ（ＣＰＵ）と情報の授受を行なう構成要素はプロセサ（ＣＰＵ）近傍に配置しているため、各構成要素間のバス配線を最短距離でほぼ直線状に配置することができ、高速で情報を転送することが可能となる。これにより、高速動作するマイクロコンピュータを実現することができる。
［実施の形態３］
図２２は、この発明の実施の形態３に従うマイクロコンピュータの要部の構成を示す図である。図２２においては、ＳＲＡＭに関連する部分の構成のみが示される。複数のＳＲＡＭアレイ部２６ｘ、２６ｙ、…、２６ｚが配置される。これらのＳＲＡＭアレイ部２６ｘ〜２６ｚの各々は、ロウデコーダ、列デコーダ、ワード線、ビット線、ビット線イコライズ回路、および情報信号入出力回路を含む。
これらのＳＲＡＭアレイ部２６ｘ、２６ｙ、…、２６ｚ各々に対応して、クロック発生回路２５０からのクロック信号ＣＬＫに同期して動作するドライバ回路２１０ｘ、２１０ｙ、…、２１０ｚが設けられる。これらのドライバ回路２１０ｘ〜２１０ｚの各々は、共通にＳＲＡＭ制御用ロジック生成部２１０ａからの制御信号を受ける。このＳＲＡＭ制御用ロジック生成部２１０ａは、プロセサ（ＣＰＵ）５２から与えられるコマンドをクロック信号ＣＬＫと非同期でデコードし、このコマンドにより指定された動作を活性化するための制御信号を活性状態とする。図２２においては、このＳＲＡＭ制御用ロジック生成部２１０ａの内部構成が一例として示されるが、この内部に含まれる論理ゲートの接続態様は何ら特定的なものではない。単にプロセサ（ＣＰＵ）５２からのコマンドをデコードする機能を備えていればよい。
また、図２２においては、プロセサ（ＣＰＵ）５２からのコマンドとして、ＳＲＡＭリードコマンドＣＭＤ−ＳＲ、およびＲＡＭライトコマンドＣＭＤ−ＳＷが一例として示される。また、ＳＲＡＭ制御用ロジック生成部２１０ａからの制御信号としては、ＳＲＡＭワード線選択イネーブル信号ＳＷＬＥ−Ｔ、ＳＲＡＭセンスアンプイネーブル信号（ＳＲＡＭデータ転送イネーブル信号）ＳＳＡＥ−Ｔ、ＳＲＡＭビット線イコライズ指示信号ＳＢＬＥＱ−ＴおよびＳＲＡＭからの情報の読出および転送を指示するバッファリードトランスファイネーブル信号ＢＲＴＥ−Ｔ、およびＳＲＡＭへの情報の転送および書込を指示するバッファライトトランスファイネーブル信号ＢＷＴＥ−Ｔが一例として示される。
プロセサ（ＣＰＵ）５２は、クロック発生回路２５０からのクロック信号ＣＬＫに同期して動作して、命令を処理し、必要とされるコマンドを生成する。ＳＲＡＭ制御用ロジック生成部２１０ａからの制御信号はＳＲＡＭアレイ部２６ｘ〜２６ｚそれぞれに対応して設けられるドライブ回路２１０ｘ〜２１０ｚへ共通に与えられる。ＳＲＡＭ制御用ロジック生成部２１０ａからこれらのドライバ回路２１０ｘ〜２１０ｚへの配線の長さが異なる場合、制御信号の確定タイミングがドライバ回路２１０ｘ〜２１０ｚそれぞれにおいて異なる。
ドライバ回路２１０ｘ〜２１０ｚは、クロック発生回路２５０から与えられるクロック信号ＣＬＫのエッジ（立上がりまたは立下がり）に同期して、このＳＲＡＭ制御用ロジック生成部２１０ａから与えられた信号を取込み内部制御信号を発生し、対応のＳＲＡＭアレイ部２６ｘ〜２６ｚを駆動する。したがって、このＳＲＡＭ制御用ロジック生成部２１０ａとドライバ回路２１０ｘ〜２１０ｚ各々との配線長さが異なる場合においても、ドライバ回路２１０ｘ〜２１０ｚ各々の動作タイミングがクロック信号ＣＬＫにより決定され、ＳＲＡＭアレイ部２６ｘ〜２６ｚは同一タイミングで並列に動作することができる。これらのドライバ回路２１０ｘ〜２１０ｚは、ＳＲＡＭアレイ部２６ｘ〜２６ｚそれぞれに対応して設けられる双方向転送ゲートの転送動作を制御する制御信号をも発生する。これにより、配線遅延を最小とするために太い配線を用いる必要がなく、配線による面積増加を抑制することができる。また、配線遅延を最小にするように配線レイアウトまたは配線構造によりタイミング調整を行なう必要がなく、配線レイアウトが容易となる。
図２３は、図２２に示す配置における動作を示す信号波形図である。この図２３においては、プロセサ（ＣＰＵ）５２が、クロック信号ＣＬＫの立上がりに同期してコマンドを発行し、一方、ドライバ回路２１０ｘ〜２１０ｚはこのクロック信号ＣＬＫの立下がりに同期してＳＲＡＭ制御用ロジック生成部２１０ａからの制御信号を取込み内部制御信号を発生する場合の動作が示される。
図２３において、プロセサ（ＣＰＵ）５２は、命令を実行し、必要とされるコマンドを生成し、クロック信号ＣＬＫの立上がりに同期してこの生成したコマンドを発行してＳＲＡＭ制御用ロジック生成部２１０ａへ与える。こロジック生成部２１０ａは、プロセサ（ＣＰＵ）５２から与えられたコマンドをクロック信号ＣＬＫと非同期で（独立に）デコードし、コマンド実行に必要とされる制御信号を活性状態とする。したがってこのＳＲＡＭ制御用ロジック生成部２１０ａからは、クロック信号ＣＬＫの立上がり、コマンドが確定状態とされると、即座に対応の制御信号が確定状態とされる（図２３においては、制御信号をＨレベルに立上がる状態を一例として示す）。
このＳＲＡＭ制御用ロジック生成部２１０ａからの制御信号は、ドライバ回路２１０ｘ〜２１０ｚそれぞれへ共通に与えられる。ドライバ回路２１０ｘ〜２１０ｚは、クロック信号ＣＬＫの立下がりに同期してこの制御信号を取込み内部制御信号を発生しＳＲＡＭアレイ部２６ｘ〜２６ｚを駆動する。したがって、配線遅延の影響を受けることなくドライバ回路２１０ｘ〜２１０ｚはすべて同じタイミングで内部制御信号を発生して対応のＳＲＡＭアレイ部２６ｘ〜２６ｚをドライブすることができ、情報転送タイミングに対し、この配線遅延を考慮してマージンを設ける必要がなく、高速情報転送を行なうことができる。
ドライバ回路２１０ｘ〜２１０ｚは、ＳＲＡＭアレイ部２６ｘ〜２６ｚをドライブする制御信号を発生するいわゆるＳＲＡＭ周辺制御回路部分を併せて含んでもよい。クロック発生回路２５０からのクロック信号ＣＬＫはドライバ回路２１０ｘ〜２１０ｚへ共通に与えられる。このとき、このクロック信号ＣＬＫを伝搬する信号線は、その配線抵抗を下げるため、後に説明するようなレイアウト上の工夫がなされており、ドライバ回路２１０ｘ〜２１０ｚに対しては、クロック信号ＣＬＫの遅延はなく、同じタイミングでドライバ回路２１０ｘ〜２１０ｚにおいてクロック信号ＣＬＫが変化する。
図２４は、図２２に示すドライバ回路２１０ｘ〜２１０ｚの入力段の構成の一例を示す図である。図２４においては、ドライバ回路入力段は、クロック信号ＣＬＫの立下がりに応答して導通し、ロジック生成部から与えられる制御信号φＳｅを通過させるＣＭＯＳトランスミッションゲートＴＭと、ＣＭＯＳトランスミッションゲートＴＭの出力信号を伝達する２段のインバータ回路Ｖ１およびＶ２と、インバータ回路Ｖ１の出力信号を反転してインバータ回路Ｖ１の入力部へ伝達するインバータ回路Ｖ３を含む。インバータ回路Ｖ１およびＶ３は、ラッチ回路を構成する。インバータ回路Ｖ２から、内部制御信号φＳｉが出力される。
この図２４に示す構成においては、クロック信号ＣＬＫがＨレベルのときには、ＣＭＯＳトランスミッションゲートＴＭはオフ状態であり、内部制御信号φＳｉは先の状態を維持している。クロック信号ＣＬＫがＬレベルに立下がると、ＣＭＯＳトランスミッションゲートＴＭが導通し、内部制御信号φＳｉがロジック生成部２１０ａから与えられる制御信号φＳｅに従って変化する。これにより、クロック信号ＣＬＫの立下がりに同期して内部制御信号を生成するドライバ回路が実現される。
なおこの図２４に示すドライバ回路入力段としては、クロック信号ＣＬＫの立下がりに同期してスルー状態となり、クロック信号ＣＬＫの立上がりに応答してラッチ状態となるＮＡＮＤ回路を利用するフリップフロップが用いられてもよい。また、ＣＭＯＳトランスミッションゲートＴＭは、インバータ回路Ｖ２の出力部に設けられてもよい。
図２５は、この発明の実施の形態３の制御信号発生シーケンスの変更例を示す図である。図２５においては、プロセサ（ＣＰＵ）は、クロック信号ＣＬＫの立上がり時に確定状態とされるコマンドを発行する。したがって、プロセサ（ＣＰＵ）からは、クロック信号ＣＬＫの立上がりに対しセットアップ時間ｔｓｕ前にコマンドが発行される。この構成は、たとえば通常のクロック同期型メモリにおいてクロック信号の立上がり時にコマンドが確定状態とされる構成と同じである。このコマンドの発行に従って、ＳＲＡＭ制御用ロジック生成部からの制御信号がクロック信号ＣＬＫと非同期で確定状態とされる。この制御信号はクロック信号ＣＬＫの立上がりよりも早いタイミングで確定状態とされる。ドライバ回路は、クロック信号ＣＬＫの立上がりに同期してこの制御信号を取込み内部制御信号を生成する。
この図２５に示すシーケンスのように、プロセサ（ＣＰＵ）が、クロック信号ＣＬＫの立上がり時に確定状態とされるコマンドを発行する構成とすることにより、ドライバ回路２１０ｘ〜２１０ｚ（図２２参照）は、クロック信号ＣＬＫの立下がりを待つことなく早いタイミングで内部制御信号を生成することができ、より高速動作を実現することができる。
図２６は、この発明の実施の形態３に従うマイクロコンピュータのチップ上のレイアウトの構成を概略的に示す図である。図２６においては、ＤＲＡＭ、バスインタフェースユニット（ＢＩＵ）および第１の双方向転送回路部分は示していない。
図２６において、マイクロコンピュータは、半導体チップ２００の中央部に配置されるクロック発生回路２５０を含む。このクロック発生回路２５０を中心に対称的にＳＲＡＭアレイ部２６ａ、２６ｂ、２６ｃおよび２６ｄが分散して配置される（図２１のレイアウト参照）。ＳＲＡＭアレイ部２６ａ〜２６ｄそれぞれに対応してドライバ回路２１０ａ〜２１０ｄが配置される。ドライバ回路２１０ａ〜２１０ｄは、それぞれ半導体チップ２００の中央部に近い位置に配置される。クロック発生回路２５０からの信号配線長をできるだけ短くする。半導体チップ２００の中央部にクロック発生回路２５０に隣接してプロセサ（ＣＰＵ）５２が配置され、このプロセサ（ＣＰＵ）５２近傍領域に、メモリコントローラに含まれるＳＲＡＭ制御用ロジック生成部２１０ａが配置される。
プロセサ（ＣＰＵ）５２とＳＲＡＭ制御用ロジック生成部２１０ａとの間にはバス配線３４５が配設される。このバス配線３４５上に、プロセサ（ＣＰＵ）５２からのコマンドが伝達される。ＳＲＡＭ制御用ロジック生成部２１０ａからの制御信号はバス配線３５０を介して伝達される。このバス配線３５０は、クロック発生回路２５０を内に含むコの字形に配置され、かつドライバ回路２１０ａへ制御信号を与えるためのバス配線３５０ａ、ドライバ回路２１０ｂへ制御信号を与えるためのバス配線３５０ｂ、ドライバ回路２１０ｃへ制御信号を与えるためのバス配線３５０ｃ、およびドライバ回路２１０ｄへ制御信号を与えるためのバス配線３５０ｄの枝部分を有する。
クロック発生回路２５０からのクロック信号は、クロック信号２６０ａを介してドライバ回路２１０ａおよび２１０ｂへ与えられ、またクロック信号線２６０ｂを介してドライバ回路２１０ｃおよび２１０ｄへ与えられる。クロック発生回路２５０からのクロック信号の信号伝搬遅延を最小とするために、このクロック信号線２６０ａおよび２６０ｂの配線幅はできるだけ大きくされるか、またはこれに代えて、複数のクロック信号線を並列に配置して、等価的にその配線幅を広くする。この工夫により、クロック信号線２６０ａおよび２６０ｂの配線抵抗はできるだけ小さくされる。
ドライバ回路２１０ａ〜２１０ｄに対する制御信号は、このクロック信号の変化時点までに確定状態とされればよい。したがって、このＳＲＡＭ制御用ロジック生成部２１０ａからの制御信号を伝達する制御信号バス配線には、ドライバ回路２１０ａ〜２１０ｄそれぞれへ同時に確定状態となるように制御信号を伝達するという要求は課せられない。したがって、この制御信号バス配線３５０（３５０ａ〜３５０ｄ）は、配線幅を広くするまたは配線抵抗を下げるなどを行なう必要がなく、配線幅を必要最小限の線幅とすることができ、この配線レイアウト面積増加を抑制することができる。
また、このＳＲＡＭ制御用ロジック生成部２１０ａからの制御信号の確定タイミングが、クロック信号ＣＬＫの変化タイミングに間に合わない場合が生じるときには、図２５に示すように、制御信号を発生するタイミングを早くするだけでよい。これは、プロセサ（ＣＰＵ）５２のコマンド出力タイミングを調整するか、または、ＳＲＡＭ制御用ロジック生成部２１０ａにおけるゲート遅延をできるだけ小さくする工夫を行なうことにより実現される。このような場合においても、制御信号バス配線３５０の線幅を等価的に広くする必要がなく、この制御信号バス配線の占有面積の増加を抑制することができる。したがって、配線によるタイミング調整としては、クロック信号のみに対するタイミング調整を考慮すればよく、残りの制御信号に対するタイミング調整を配線のレイアウトで行なう必要はない。これにより、配線のレイアウト面積増加を生じさせることなく、プロセサ（ＣＰＵ）とＳＲＡＭとの間の高速情報転送を実現することができる。
なお、第２の転送回路（ＭＲＢ／ＭＷＢ）は、破線ブロックで示すようにドライバ回路２１０ａ〜２１０ｄに隣接して、ＳＲＡＭアレイ部２６ａ〜２６ｄと対向するように配置される。これらのドライバ回路２１０ａ〜２１０ｄは、ＳＲＡＭに対する制御信号を発生しており、したがって、これらの第２の双方向転送回路の転送タイミングを決定する制御信号をも発生する。第２の双方向転送回路（ＭＲＢ／ＭＷＢ）についても、ＳＲＡＭアレイ部２６ａ〜２６ｄが分散配置される場合においても、これらのＳＲＡＭアレイ部に対応して配置される第２の双方向転送回路（ＭＲＢ／ＭＷＢ）を同一タイミングで動作させることができ、転送タイミングのマージンを考慮する必要がなく、高速情報転送を実現することができる。
以上のように、この発明の実施の形態３に従えば、ＳＲＡＭアレイ部を駆動する制御信号を発生するドライバ回路をクロック信号に同期して動作させかつＳＲＡＭアレイ部それぞれに近接して配置したため、ＳＲＡＭアレイ部および第２の双方向転送回路それぞれを同一タイミングで動作させることができ、高速動作が実現される。
［実施の形態４］
図２７は、この発明の実施の形態４に従うマイクロコンピュータの要部の構成を示す図である。図２７において、ＳＲＡＭ２６両側に対向して配置されるＤＲＡＭリードバッファ（ＤＲＢ）３０とメモリリードバッファ（ＭＲＢ）３６とは、このＳＲＡＭ２６上層に配設されるＤＲＢバス３１を介して相互接続される。このメモリリードバッファ（ＭＲＢ）３６は、また、ＳＲＡＭ２６に接続されるＳＢＬバス３２上の情報を受ける。
メモリリードバッファ（ＭＲＢ）３６は、選択制御信号φＣＳＥＬに従って、ＳＢＬバス３２およびＤＲＢバス３１の一方を選択するセレクタ３６０と、セレクタ３６０により選択されたバス上の信号を増幅するアンプ３６２と、アンプ３６２により増幅された信号をラッチするラッチ３６４と、転送指示信号φＤＢＩＴＢに応答して活性化され、ラッチ３６４によりラッチされた信号をＩＴＢバス３５上へ転送する転送ゲート３６６を含む。
このＩＴＢバス３５は、データレジスタ（ＤＲ）４６および命令レジスタ（ＩＲ）４４に接続される。データレジスタ（ＤＲ）４６および命令レジスタ（ＩＲ）４４は、それぞれバス５０および４８を介してプロセサ（ＣＰＵ）５２に接続される。
この図２７に示す構成においては、ＳＢＬバス３２およびＤＲＢバス３１上に対して設けられる転送ゲートまたは転送バッファ（図１３参照）は示していない。この図２７に示す構成は、実施の形態１および２の組合せと等価である。セレクタ３６０によりＳＢＬバス３２およびＤＲＢバス３１の一方を選択することにより、ＳＢＬバス３２上の情報を増幅するアンプと、メモリリードバッファ（ＭＲＢ）３６の出力信号を増幅するアンプと共用することができ、回路占有面積を低減することができる。
この図２７に示すメモリリードバッファ（ＭＲＢ）３６の具体的構成は、図１５に示す構成と等価である。セレクタ３６０およびアンプ３６２は、選択ラッチ６６に対応し、ラッチ３６４および転送ゲート３６６がアンプ６８に対応する。また、これに代えて、選択ラッチ６６において、セレクタにより、ＳＢＬバスおよびＤＲＢバス一方が選択されて、増幅回路６６ａ（または６６ｂ）へ与えられて、その増幅結果がラッチ回路６６ｃによりラッチされる構成が用いられてもよい（図１５参照）。
［変更例］
図２８は、この発明の実施の形態４の変更例１の構成を示す図である。図２８においては、ＳＢＬバス３２に、ＳＲＡＭ転送活性化（イネーブル）信号φＳＳＡＥに応答して活性化され、ＳＢＬバス３２上の信号電位を保持してセレクタ３６０へ与えるレベルシフタ６４ｃが設けられる。このレベルシフタ６４ｃは、図１９に示すレベルシフタと同じ構成を備える（このレベルシフタ６４ｃは、図１９に示す構成を１２８個備える）。他の構成は図２７に示す構成と同じであり、対応する部分には同一参照番号を付し、その詳細説明は省略する。
この図２８に示す構成においては、ＳＢＬバス３２にレベルシフタ６４ｃが設けられているため、ＳＢＬバス３２の信号の転送時、信号損失を伴うことなくセレクタ３６０を介してアンプ３６２へ信号を伝達することができ、高速増幅を実現することができる。
なお、図２８に示す構成においても、図面を簡略化するため、ＤＲＢバス３１における転送バッファは示していない。また、ＳＢＬバス３２とレベルシフタ６４ｃの間の転送ゲート（６４ｂ；図１８参照）も示していない。
セレクタ３６０は、スイッチ回路であってもよく、また非活性化時出力ハイインピーダンス状態とされるトライステートバッファが用いられてもよい。また図１５に示すようにセレクタ３６０とアンプ３６２とが１つの回路で実現されてもよい。
以上のように、この発明の実施の形態４に従えば、ＤＲＢバス上をわたって伝達される情報信号とＳＢＬバス３２を介して伝達される情報信号を増幅するアンプを同じアンプとしたため、回路占有面積を低減することができる。
以上、本発明について詳細に説明してきたが、本発明は上述の実施の形態に限定されるものではない。たとえば、外部データバスが１６ビット、ＢＩＵバスが３２ビット、および内部バス（ＧＩＯバス、ＩＴＢバス、ＳＢＬバス）が１２８ビット、およびＣＰＵバス（ＩＲバス、ＤＲバス）が３２ビット（合計６４ビット）として説明しているが、このビット数は任意であり、本発明のマイクロコンピュータが用いられる用途に応じてこれらのバスの幅（ビット幅）は適宜、適当な値に定められる。
したがって、本発明の範囲は、添付の請求の範囲の記載によって定められる。
【図１】
0003743789.tif 000002
【図２】
0003743789.tif 000003
【図３】
0003743789.tif 000004
【図４】
0003743789.tif 000005
【図５】
0003743789.tif 000006
【図６】
0003743789.tif 000007
【図７】
0003743789.tif 000008
【図８】
0003743789.tif 000009
【図９】
0003743789.tif 000010
【図１０】
0003743789.tif 000011
【図１１】
0003743789.tif 000012
【図１２】
0003743789.tif 000013
【図１３】
0003743789.tif 000014
【図１４】
0003743789.tif 000015
【図１５】
0003743789.tif 000016
【図１６】
0003743789.tif 000017
【図１７】
0003743789.tif 000018
【図１８】
0003743789.tif 000019
【図１９】
0003743789.tif 000020
【図２０】
0003743789.tif 000021
【図２１】
0003743789.tif 000022
【図２２】
0003743789.tif 000023
【図２３】
0003743789.tif 000024
【図２４】
0003743789.tif 000025
【図２５】
0003743789.tif 000026
【図２６】
0003743789.tif 000027
【図２７】
0003743789.tif 000028
【図２８】
0003743789.tif 000029