(57)【特許請求の範囲】
【請求項１】
外部端子から入力されたクロック信号を取り込む入力バッファ回路と、
上記入力バッファ回路により取り込まれたクロック信号を遅延させる遅延回路と、
上記クロック信号に対して十分高い周波数の発振パルスを形成するパルス発生回路と、
上記遅延回路を通したクロック信号により起動され、上記発振パルスを一方の方向にカウント動作を行い、上記入力バッファ回路を通した１周期遅れのクロック信号により他方の方向のカウント動作に切り換えられ、計数値が計数開始時に戻ったときに出力タイミング信号を形成するカウンタ回路と、
上記カウンタ回路からの出力タイミング信号を受けて内部回路の動作に必要なクロック信号を出力させるクロックドライバとを含む同期クロック発生回路を備え、
上記パルス発生回路は、
アップカウント用の複数段の第１のリングオシレータ回路と、
かかる第１のリングオシレータと同様の複数段とされ、
かつ上記入力バッファ回路を通した１周期遅れのクロック信号の立ち上がりエッジに同期してかかるアップカウント用の各段の出力がミラー転写されて伝えられダウンカウント用の第２のリングオシレータから構成されるものであり、
上記遅延回路の遅延時間は、上記入力バッファ回路の遅延時間と上記クロックドライバの遅延時間の和に対応した遅延時間に設定してなることを特徴とする半導体集積回路装置。
【請求項２】
請求項１において、
上記カウンタ回路は、アップ／ダウンカウンタ回路であり、上記遅延回路を通したクロック信号の立ち上がりエッジに同期してアップカウント動作を行い、上記入力バッファ回路を通した１周期遅れのクロック信号の立ち上がりエッジに同期してダウンカウント動作を行い、計数値がゼロになったときにカウント動作を停止させるとともに、出力部に設けられたフリップフロップ回路をセットして出力タイミング信号を形成し、上記フリップフロップ回路は上記遅延回路を通したクロック信号の立ち上がりエッジによりリセット動作が行われるとともに上記アップカウント動作を開始するものであることを特徴とする半導体集積回路装置。
【請求項３】
請求項１において、
上記カウンタ回路は、上記遅延回路を通したクロック信号の立ち上がりエッジに同期してカウント動作を開始するアップカウンタ回路と、上記入力バッファ回路を通した１周期遅れのクロック信号の立ち上がりエッジに同期して上記アップカウント回路からの計数出力を受け取りダウンカウント動作を行うダウンカウンタ回路と、かかるダウンカウンタ回路の計数値がゼロになったことを検出するゼロ検出回路とからなり、
上記ゼロ検出回路の検出出力によりフリップフロップ回路をセットし、上記入力バッファ回路を通したクロック信号により上記フリップフロップ回路をリセットして上記出力タイミング信号を形成するものであることを特徴とする半導体集積回路装置。
【請求項４】
請求項１から３のいずれかにおいて、
上記遅延回路は、上記入力バッファ回路に対応した遅延時間を形成する第１の遅延回路と、上記クロックドライバに対応した遅延時間を形成する第２の遅延回路の直列回路から構成されるものであることを特徴とする半導体集積回路装置。
【請求項５】
請求項１から４のいずれかにおいて、
上記第１のリングオシレータは、２入力の第１のナンドゲート回路とかかる第１のナンドゲート回路の出力信号を反転させて次段回路の一方の入力に伝えるインバータ回路とからなる単位回路の偶数段で構成された第１の直列回路と、上記第１の直列回路の出力信号が一方の入力に帰還され、他方の入力に動作制御信号が供給され、その出力信号を上記第１の直列回路の初段の単位回路における第１のナンドゲート回路の一方の入力に伝える第２のナンドゲート回路からなり、
上記第２のリングオシレータは、２入力の第３のナンドゲート回路とかかる第３のナンドゲート回路の出力信号を反転させて次段回路の一方の入力に伝えるインバータ回路とからなる単位回路の上記第１のリングオシレータと同一の偶数段で構成された第２の直列回路と、上記第２の直列回路の出力信号が一方の入力に帰還され、他方の入力に動作制御信号が供給され、その出力信号を上記第２の直列回路の初段の単位回路における第３のナンドゲート回路の一方の入力に伝える第４のナンドゲート回路からなり、
上記第１のリングオシレータを構成する各単位回路と、上記第２のリングオシレータを構成する各単位回路とは、信号伝達方向が互いに逆とされ、かつ第１のリングオシレータにおける上記第１段位目の単位回路の出力が第２のリングオシレータの最終段目の単位回路に対応され、
上記第１のリングオシレータにおける上記各段位目の単位回路の出力と上記入力バッファ回路を通した１周期遅れのクロック信号の立ち上がりエッジに同期して発生されたセット信号とを受け、その出力信号を次段回路の第１のナンドゲート回路の他方の入力と、上記対応する第２のリングオシレータの単位回路の上記第３のナンドゲート回路の他方の入力に伝える第５のナンドゲート回路が設けられるものであることを特徴とする半導体集積回路装置。
【請求項６】
請求項１から５のいずれかにおいて、
上記第２のリングオシレータを構成する各単位回路の出力には、上記第５のナンドゲート回路に対応したダミー回路が設けられるものであることを特徴とする半導体集積回路装置。
【請求項７】
請求項１から６のいずれかにおいて、
上記カウンタ回路には、オーバーフロー検出回路が設けられ、かかるオーバーフロー検出回路によりカウントオーバーが検出されたときには、上記入力バッファ回路を通して取り込まれたクロック信号をそのまま上記内部クロック信号として伝えられる信号切り換え回路が設けられるものであることを特徴とする半導体集積回路装置。
【請求項８】
請求項１から７のいずれかにおいて、
上記半導体集積回路装置は、シンクロナスダイナミック型ＲＡＭを構成するものであり、上記内部クロック信号は、データ出力バッファ回路の活性化信号として用いられるものであることを特徴とする半導体集積回路装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は、半導体集積回路装置に関し、クロック信号により同期して動作する半導体集積回路装置、例えばシンクロナスダイナミック型ＲＡＭ（ランダム・アクセス・メモリ）の同期クロック発生回路や外部クロックに対して周波数逓倍された内部クロックを発生させる同期クロック発生回路を備えた１チップマイクロコンピュータ等に利用して有効な技術に関するものである。
【０００２】
【従来の技術】
シンクロナス・ミラー・ディレイ回路（ＳＭＤ）は、外部クロックと内部クロックとの同期をとるための回路である。このようなシンクロナス・ミラー・ディレイ回路については、アイ・エス・エス・シー・シー  ダイジェスト  オブ  テクニカル  ペーパーズ（ＩＳＳＣＣ  ＤＩＧＩＳＴ  ＯＦ  ＴＥＣＨＮＩＣＡＬ  ＰＡＰＥＲＳ）誌１９９６年２月１０日、第  ３７４頁〜第  ３７５頁がある。
【０００３】
【発明が解決しようとする課題】
図１８には、本願発明者等において先に検討されたシンクロナス・ミラー・ディレイ回路の回路図が示され、図１９にはその動作を説明するための波形図が示されている。この回路において、内部クロックＣＬＫｏｕｔ  の立ち上がりと外部クロックＣＬＫｉｎの立ち上がりが同期する場合を考える。外部クロックＣＬＫｉｎは、遅延時間がそれぞれｄ１、ｄ２及びｄ１の３つの遅延回路を通してフォワード・ディレイ・アレイ回路（以下、ＦＤＡという）に入力される。このＦＤＡ中を伝播しているｎサイクル目のクロックの立ち上がりエッジは、コモンＣＯＭＭＯＮとして伝播されるｎ＋１サイクル目のクロックの立ち上がりにより、上記ＦＤＡ中での伝播が止められ、同時に伝播が止められた位置とちょうど対称の位置にあるバックワード・ディレイ・アレイ（以下、ＢＤＡという）中のノードに立ち上がりエッジが転送される。
【０００４】
上記立ち上がりエッジは、ＦＤＡ中の伝播時間ｔＤＡとちょうど同じ時間をかけてＢＤＡ中を伝播し、遅延時間ｄ２の遅延回路（内部クロックドライバに相当する）を通して、内部クロックＣＬＫｏｕｔ  として出力される。上記ＦＤＡ中のｎサイクル目の立ち上がりエッジがｎ＋１サイクル目のＣＯＭＭＯＮの立ち上がりエッジによって伝播が止められることから、次式（１）という関係が成立する。ここで、ｔＣＫは、クロックＣＬＫｉｎのサイクル時間（１周期）である。
ｄ２＋ｄ１＋ｔＤＡ＝ｔＣＫ                                ………（１）
【０００５】
また、外部クロックＣＬＫｉｎから内部クロックＣＬＫｏｕｔ  までの立ち上がりエッジの伝播時間は、上記のような伝播経路に沿って計算すると次式（２）の関係が成立する。つまり、外部クロックＣＬＫｉｎから内部クロックＣＬＫｏｕｔ  までがちょうど２ｔＣＫに等しくなり、上記の外部クロックＣＬＫｉｎと内部クロックＣＬＫｏｕｔ  とが同期することとなる。
ｄ１＋ｄ２＋ｄ１＋ｔＤＡ＋ｔＤＡ＋ｄ２＝２（ｄ１＋ｄ２＋ｔＤＡ）
＝２ｔＣＫ            ……（２）
【０００６】
上記のような同期回路では、動作周波数範囲を広くするためには、上記ＦＤＡ、ＭＣＣ及びＢＤＡを構成する論理段数が膨大となり、回路規模が増大するという問題が生じる。例えば、シンクロナスＤＲＡＭでは、メモリアクセス動作の高速化に伴い動作周波数は高くなる傾向になる。これに対して、リフレッシュ等においては、低消費電力化を図るためにクロック信号の周波数を低くして行うことが便利でありその差は益々拡大する傾向にある。また、汎用メモリとして用いられようクロック信号の周波数範囲は広くなるように要求されている。このように同期化させるクロック信号の周波数範囲が広くしようとすると、それに適合すべくＦＤＡ、ＭＣＣ及びＢＤＡを構成する遅延段数が膨大となって回路規模を増大させるとともに、例えばリフレッシュ動作等のように低消費電力化のためにクロック信号の周波数を低くしたにも係わらずに同期クロック発生回路での電流消費を増大させてしまうという相反する問題を引き起こす。
【０００７】
なお、ＰＬＬ回路やＤＬＬ回路を用いた場合には、位相ロック状態になるまでの引込み時間に相当の時間を費やすこととなって、応答性に大きな問題を持つとともに、ディジタル回路での電源線に発生する比較的大きなノイズの影響を受けて動作の安定性の点でも問題があり、上記のようなディジタル回路による同期クロック発生回路の開発に至ったものである。
【０００８】
この発明の目的は、簡単な構成で同期可能なクロック周波数帯域を拡大させた同期クロック発生回路を備えた半導体集積回路装置を提供することにある。この発明の他の目的は、簡単な構成で、しかも短い時間内に逓倍されたクロック信号を形成することができる同期クロック発生回路を備えた半導体集積回路装置を提供することにある。この発明の前記ならびにそのほかの目的と新規な特徴は、本明細書の記述および添付図面から明らかになるであろう。
【０００９】
【課題を解決するための手段】
本願において開示される発明のうち代表的なものの概要を簡単に説明すれば、下記の通りである。すなわち、外部端子から入力バッファ回路を介して取り込まれたクロック信号を遅延回路で遅延させ、上記遅延回路を通したクロック信号により起動され、上記クロック信号に対して十分高くされた発振パルスをカウント動作し、上記入力バッファ回路を通した１周期遅れのクロック信号により上記カウント値を逆方向にカウント動作してその計数値が計数開始時に戻ったときに出力タイミング信号を発生させ、その出力タイミング信号をクロックドライバを介して内部回路に伝えるとともに、遅延回路の遅延時間は、上記入力バッファ回路の遅延時間と上記クロックドライバの遅延時間の和に対応した遅延時間に設定する。
【００１０】
【発明の実施の形態】
図１には、この発明に係る同期クロック発生回路の基本的な概念を説明するためのブロック図が示されている。この同期クロック発生回路は、特に制限されないが、シンクロナスＤＲＡＭを構成する他の回路とともに、公知の半導体集積回路の製造技術により、単結晶シリコンのような１個の半導体基板上において形成される。
【００１１】
クロックバッファＣＫＢは、入力バッファ回路であり、外部端子から供給される外部クロック信号ｅｘｔ．ＣＬＫを取り込むために設けられるものである。このクロックバッファＣＫＢの出力信号は、一方において遅延回路ＤＬ１とＤＬ２を通してタイミング発生回路ＴＧのスタート端子（ＳＴＡＲＴ）に伝えられる。上記クロックバッファＣＫＢの出力信号は、他方において上記タイミング発生回路ＴＧのリバース端子（ＲＥＶＥＲＳＥ）に伝えられる。タイミング発生回路ＴＧは、回路規模を小さくするために、カウンタ回路で構成されており、スタート端子（ＳＴＲＡＴ）に供給される第１の入力信号で計数動作の起動がかかり一方向（例えばアップ計数）に計数動作を開始し、リバース端子（ＲＥＶＥＲＳＥ）に供給される第２の入力信号で上記計数動作が逆転（例えばダウン計数）され、上記第１と第２の入力信号の時間差に対応した時間経過後に、言い換えるならばアップ計数値と同じダウン計数を行って出力端子ＯＵＴからタイミング信号を出力させる。
【００１２】
上記計数動作のためにパルスは、内部に設けられた発振回路により形成される。この発振回路の発振周波数は、上記クロック信号ＣＬＫに対して十分高い周波数に設定されものである。上記タイミング発生回路ＴＧにより形成されたタイミング信号は、クロックドライバＣＫＤを介して内部クロックｉｎｔ．ＣＬＫが形成される。
【００１３】
図２には、上記図１の同期クロック発生回路の動作を説明するためのタイミング図が示されている。外部クロック信号ｅｘｔ．ＣＬＫの１周期はｔＣＫであり、上記クロックバッファＣＫＢの出力ノードｎ１の信号は、その遅延時間ｔｄ１だけ遅れたクロック信号とされる。クロックバッファＣＫＢの出力ノードｎ１の信号は、上記遅延回路ＤＬ１とＤＬ２により、上記クロックドライバＣＫＢの遅延時間ｔｄ１と、上記クロックドライバの遅延時間ｔｄ２だけ遅れてタイミング発生回路ＴＧのスタート端子に伝えられる。一方、上記クロックバッファＣＫＢの出力ノードｎ１の信号は、そのまま上記タイミング発生回路ＴＧのリバース端子に伝えられる。
【００１４】
上記タイミング発生回路ＴＧのスタート端子には、外部クロック信号ｅｘｔ．ＣＬＫの立ち上がりから、遅延時間ｔｄ１＋ｔｄ１＋ｔｄ２の後に入力信号（ノードｎ２）が供給されて計数動作を開始し、リバース端子には１周期（ｔＣＫ）遅れた外部クロック信号から上記遅延時間ｔｄ１の後に入力信号（ノードｎ２）が供給されて計数動作を逆転させる。これにより、ノードｎ１のクロック信号の１周期ｔＣＫは、次式（１）のように表される。
ｔＣＫ＝ｔｄ１＋ｔｄ２＋ｔＤＡ                          ………  （３）
【００１５】
上記タイミング発生回路ＴＧは、上記時間差ｔＤＡに対応した計数値と同じ時間ｔＤＡだけ計数動作を行ってタイミング信号（ノードｎ３）を形成し、クロックドライバＣＫＤの遅延時間ｔｄ２の内部クロック信号ｉｎｔ．ＣＬＫを立ち上げる。つまり、外部クロック信号ｅｘｔ．ＣＬＫの立ち上がりから内部クロック信号ｉｎｔ．ＣＬＫまでに費やされた時間は、ｔｄ１＋ｔｄ１＋ｔｄ２＋ｔＤＡ＋ｔＤＡ＋ｔｄ２＝２（ｔｄ１＋ｔｄ２＋ｔＤＡ）となる。この時間ｔｄ１＋ｔｄ２＋ｔＤＡは、上記式（３）のようにクロック信号の１周期ｔＣＫに等しいから、内部クロック信号ｉｎｔ．ＣＬＫは、２クロック後に入力される外部クロック信号ｅｘｔ．ＣＬＫと同期することとなる。
【００１６】
図３には、この発明に係る同期パルス発生回路の一実施例の論理回路図が示されている。この実施例では、タイミング発生回路ＴＧは、可逆カウンタにより構成される。つまり、Ｔ型フリップフロップ回路Ｔ１ないしＴｎの非反転出力Ｑと反転信号／Ｑとをアップ・ダウン制御信号ｕｐ／ｄｏｗｎにより切り換えて次段回路に順次伝えるようにして、ｎ桁のアップ・ダンウの可逆カウンタが構成される。上記切り換え回路は、各桁の出力に対応してそれぞれ設けられる。この切り換え回路は、最終段のＴ型フリップフロップ回路Ｔｎにおいて、例示的に示されているように、上記アップ・ダウン制御信号ｕｐ／ｄｏｗｎと上記非反転出力Ｑとを受けるノアゲート回路Ｇ１と、上記アップ・ダウン制御信号ｕｐ／ｄｏｗｎがインバータ回路Ｎ１により反転された信号と上非反転出力／Ｑとを受けるノアゲート回路Ｇ２と、かかる２つのノアゲート回路Ｇ１，Ｇ２の出力を受けて出力信号を形成するノアゲート回路Ｇ３を単位回路とするｎ−１個の単位回路から構成される。
【００１７】
上記カウンタ回路を構成するＴ型フリップフロップ回路Ｔ１〜Ｔｎの各段の非反転出力Ｑは、オール０の検出信号を形成するノアゲート回路Ｇ４に入力される。つまり、オール０（ａｌｌ０）の検出回路は、カウンタの計数値がゼロであることを検出するものであり、かかるオール０の検出信号は、フリップフロップ回路ＦＦ３のセット信号Ｓとして用いられる。
【００１８】
上記可逆カウンタのアップ／ダウン動作の制御のために、フリップフロップ回路ＦＦ１とＦＦ２が設けられる。フリップフロップ回路ＦＦ１は、クロックバッファ回路ＣＫＢの出力信号（ノードｎ１）がトリガ端子Ｔに供給され、その立ち上がりエッジに同期して出力Ｑが反転させられて、上記アップ・ダウン制御信号ｕｐ／ｄｏｗｎを形成する。フリップフロップ回路ＦＦ２は、上記遅延回路ＤＬ１とＤＬ２を通した遅延信号（ノードｎ２）よりセットされ、上記オール０の検出信号によりリセットされる。このフリップフロップ回路ＦＦ２の非反転出力Ｑは、上記カウンタ回路を構成するＴ型フリップフロップ回路Ｔ１〜Ｔｎのリセット信号ｒｅｓｅｔとされる。
【００１９】
奇数個のインバータ回路列をリング状態に接続して計数クロック発振回路が形成される。この発振パルスは、上記外部クロック信号ｅｘｔ．ＣＬＫに対して十分高い周波数にされており、上記カウンタ回路を構成する初段のＴ型フリップフロップ回路Ｔ１のトリガ端子Ｔに供給される。このようなカウンタ回路を利用することにより、例えば１０段のバイナリーカウンタにより１０２４の計数出力を得ることができる。つまり、前記図１８に示したようなＦＤＡ、ＭＣＣ及びＢＤＡを用いた同期パルス発生回路では、１０２４段の回路に相当するものであり、回路規模を大幅に小さくすることができる。
【００２０】
図４には、上記同期パルス発生回路の動作を説明するためのタイミング図が示されている。最初の外部クロック信号ｅｘｔ．ＣＬＫの立ち上がりに対してクロックバッファ回路ＣＫＢの遅延時間ｔｄ１だけ遅れて出力信号（ノードｎ１）がハイレベルに立ち上がり、フリップフロップ回路ＦＦ１の出力がロウレベルからハイレベルに変化してアップ計数動作を指示する。このとき、フリップフロップ回路ＦＦ２は、リセット状態であり出力Ｑのロウレベルにより、リセット信号／ｒｅｓｅｔをロウレベルにして上記カウンタ回路を構成するＴ型フリップフロップ回路Ｔ１〜Ｔｎをリセット状態にしているので、その計数動作が強制的に停止状態にさせられるものである。遅延時間ｔｄ１とｔｄ２の経過後に、遅延回路ＤＬ１とＤＬ２を通した遅延信号（ノードｎ２）がハイレベルに立ち上がり、フリップフロップ回路ＦＦ２をセット状態として出力Ｑをハイレベルにする。これにより、カウンタ回路は、そのリセット信号／ｒｅｓｅｔがハイレベルとなるために上記発振パルスの計数動作を開始する。
【００２１】
次の外部クロック信号ｅｘｔ．ＣＬＫの立ち上がりから遅延時間ｔｄ１経過の後に、クロックバッファ回路ＣＫＢの出力信号（ノードｎ１）がハイレベルとなり、フリップフロップ回路ＦＦ１を反転させる。これにより、アップ・ダウン制御信号ｕｐ／ｄｏｗｎがロウレベルとなりダウン計数動作に切り換えられるとともに、フリップフロップ回路ＦＦ３をリセットさせる。上記時間差ｔＤＡに対応したアップ計数値からダウン動作を行い、同じ時間ｔＤＡに対応したダウン計数動作によって計数値が０になる。このような計数値の０に対応してオール０の検出信号ａｌｌ０がハイレベルとなって、上記フリップフロップ回路ＦＦ３をセットし、その出力Ｑ（ノードｎ３）をハイレベルに立ち上げる。これにより、クロックバッファ回路ＣＫＤから出力される内部クロック信号ｉｎｔ．ＣＬＫは、２周期（２ＴＣＫ）遅れて入力された外部クロック信号ｅｘｔ．ＣＬＫと正確に同期した信号とされる。
【００２２】
図５には、この発明に係る同期パルス発生回路の他の一実施例のブロック図が示されている。この実施例では、時間差を検出し、それと同じ時間を作り出すタイミング発生回路として、アップカウンタとダウンカウンタの２つのカウンタ回路が用いられる。つまり、図３の実施例のようなアップ／ダウンの可逆カウンタに代えて、上記２つのカウンタ回路が用いられる。このような２つのカウンタ回路を用いることは、回路規模が増加する反面、その動作範囲を拡大させることができる。
【００２３】
上記アップカウンタは、スタート端子に入力信号が供給されるとセット入力端子ＳＥＴに供給されるオール０を取り込んで、アップ計数動作を開始する。上記ダウンカウンタは、スタート端子に入力信号が供給されると、セット入力ＳＥＴに供給された上記アップカウンタの計数出力を取り込んで、ダウン計数動作を開始する。このダウンカウンタの出力は、オール０の検出回路に入力され、ここで前記同様なオール０の検出信号ａｌｌ０が形成される。
【００２４】
この実施例では、上記のようにアップカウンタとダウンカウンタの２つのカウンタ回路を必要とし、その部分では回路規模がほぼ２倍になるが、図３の実施例のようなアップ・ダウンの切り換えを行うゲート回路、動作制御のためのフリップフロップ回路ＦＦ１，ＦＦ２等が不要になるので、回路規模がそれほど増加しないばかりか、フリップフロップ回路ＦＦ１，ＦＦ２等での遅延時間が誤差として入り込むことがないから精度を高くすることができる。また、アップ計数値に対応したダウン計数動作中に、遅延回路ＤＬ１とＤＬ２を通した次の周期のクロック信号が到来しても、上記のようにアップ計数動作とダウン計数動作とを同時並行的に行うことができるので動作範囲を拡大できる。
【００２５】
図６には、上記図５の実施例回路の動作を説明するためのタイミング図が示されている。第１番目の外部クロック信号ｅｘｔ．ＣＬＫは、クロックバッファ回路ＣＫＢを通して取り込まれ、ノードｎ１の信号は遅延時間ｔｄ１経過後に立ち上がる。これにより、ダウンカウンタは計数動作を開始するが、この計数動作それ自体は意味を持たない。上記ノードｎ１の立ち上がりにより、フリップフロップ回路ＦＦ３がリセットされて、ノードｎ３がロウレベルにされる。クロックバッファＣＫＢの遅延時間ｔｄ２が経過して、内部クロック信号ｉｎｔ．ＣＬＫもロウレベルになる。
【００２６】
遅延回路ＤＬ１とＤＬ２による遅延時間ｔｄ１＋ｔｄ２の後に、ノードｎ２の信号がハイレベルにされたアップカウンタはオール０を初期値として取り込んでアップ計数動作を開始する。同図では、アップ計数動作を判り易く示すために計数値を階段状にアナログ的に表している。このことは、上記ダウン計数値も同様である。上記アップカウンタとダウンカウンタのクロック入力端子ＣＬＫには、同じ計数クロック信号ｆＣが供給されており、この計数クロック信号ｆＣは、前記のようなリングオシレータにより形成されるものである。
【００２７】
第２番目の外部クロック信号ｅｘｔ．ＣＬＫが到来し、クロックバッファ回路ＣＫＢの出力ノードｎ１が遅延時間ｔｄ１経過後に立ち上がると、ダウンカウンタは上記アップカウンタの計数値を初期値として取り込んでダウン計数動作を開始する。この計数動作は、上記アップカウンタにより形成された時間ｔＤＡに対応した時間ｔＤＡを作り出すための本来のダウン計数動作である。この実施例において、注目すべきは、上記ダウンカウンタにおいて上記時間ｔＤＡに対応した計数動作の途中において、上記第２番目の外部クロック信号ｅｘｔ．ＣＬＫの上記ダウン計数動作を指示するノードｎ１の出力信号に対応した遅延信号（ｔｄ１＋ｔｄ２）がハイレベルになると、アップカウンタは上記オール０の初期値を取り込んでアップ計数動作を行うことができることである。つまり、上記のように２つのアップとダウンのカウンタを設けた場合には、上記のように動作条件のもとでもそれに応答して、同期パルス発生動作を行うようにすることができるものである。これにより、その動作範囲の拡大を図ることができるものである。
【００２８】
上記アップカウンタの動作と並行して、ダウンカウンタはダウン計数動作を行い、その計数値がゼロになると、オール０検出回路がこれを検出してフリップフロップ回路ＦＦ３をセットするので、その出力ノードｎ３の信号がハイレベルに変化し、クロックドライバ回路ＣＫＤから出力される内部クロック信号ｉｎｔ．ＣＬＫは、２周期遅れてハイレベルに立ち上がり、それは第３番目の外部クロック信号ｅｘｔ．ＣＬＫの立ち上がりに同期したものとされる。
【００２９】
なお、上記フリップフロップ回路ＦＦ３は、上記のようにノードｎ１のハイレベルによりリセットされるので、その出力パルスのパルス幅、言い換えるならば、内部クロック信号ｉｎｔ．ＣＬＫの出力パルスのパルス幅は、上記クロックドライバ回路ＣＫＤと上記クロックバッファ回路ＣＫＢによる総合の遅延時間ｔｄ２＋ｔｄ１に対応したものとされる。
【００３０】
図７には、この発明に係る同期クロック発生回路に用いられるリングオシレータの一実施例の回路図が示されている。リングオシレータは、奇数段のインバータ回路列等により構成される。一般に、最小の３段のインバータ回路をリング状に縦列接続したものは動作が不安定になるので、発振動作の安定化の観点から比較的大きな論理段数から構成される。この実施例では、ナンドゲート回路とインバータ回路とを合わせて１１段によりリングオシレータを構成する。
【００３１】
精度を高くるために、アップカウント用のリングオシレータとダウンカウト用のリングオレータの２つが用いられる。上記２つのリングオシレータは、制御信号ＵＣＥとＤＣＥにより、ナンドゲート回路のゲートが制御されて、発振動作の制御が可能にされる。つまり、同期クロック発生回路が非動作状態に置かれるときには、信号ＵＣＥとＤＣＥがロウレベルにされて、発振帰還信号に無関係にナンドゲート回路の出力をハイレベルに固定して、発振動作を停止させるようにして低消費電力化を図るようにするものである。
【００３２】
上記のようなアップカウンタでの計数動作の終了タイミングは、上記リングオシレータの発振動作とは非同期で発生するために、リングオシレータ内では遅延段において端数が生じている。このような端数は、常に切捨てられるものであるので、それが誤差として生じてしまう。この実施例では、上記のような端数についても実質的に計数するように次のような工夫を行うものである。
【００３３】
アップカウント用のリングオシレータ（ＲＯ）は、例えば左側から右側に向かってナンドゲート回路とインバータ回路の組み合わせで合計１１段の遅延段を構成し、右端の最終段の出力を上記左端の初段に帰還させてリングオシレータを構成する。この場合、入力段には、ナンドゲート回路を設け、そこに上記動作制御信号ＵＣＥを供給して、上記のように非動作状態での発振動作を停止させて無駄な電流消費を抑えている。
【００３４】
ダウンカウント用のリングオシレータ（ＲＯ）は、上記アップカウント用のリングオシレータとは逆に、右端から左端に向かってナンドゲート回路とインバータ回路との組み合わせで合計１１段の遅延段を構成し、左端の最終段の出力を上記右端の初段に帰還させてリングオシレータを構成する。この場合、入力段には、ナンドゲート回路を設け、そこに上記動作制御信号ＤＣＥを供給して、上記のように非動作状態での発振動作を停止させて無駄な電流消費を抑えている。
【００３５】
上記のようにミラー反転させて２つのリングオシレータを平行に並べ、アップカウント用の各遅延段のうち、ナンドゲート回路に入力される信号をミラー反転の関係にあるダウンカウント用の各遅延段を構成するナンドゲート回路の入力に伝えるようにする。つまり、アップカウント用のリングオシレータの最終出力段の出力信号は、上記のように初段のナンドゲート回路が発振制御に用いられているので、ダウンカウント用のリングオシレータの第２段目のナンドゲート回路の入力に伝えられる。以下、順次に実質的にミラー反転させた形態でアップカウント用のリングオシレータにおける遅延段の信号をダウンカウント用のリングオシレータに伝えるようにする。
【００３６】
アップカウント用のリングオシレータの各遅延段の信号は、セット信号ＳＥＴによりゲートが制御されるナンドゲート回路を介して、上記ダウンカウント用のリングオシレータに伝えられる。この場合、セット信号ＳＥＴが出力されたタイミングで、アップカウント用のリングオシレータはそのときの状態で発振動作を停止させるようにするため、上記セット信号ＳＥＴによりゲートが制御されるナンドゲート回路の出力信号は、上記のようにダウンカウント用のリングオシレータに伝えられるとともに、その遅延段のナンドゲート回路の他方の入力にも供給される。ダウンカウント用のリングオシレータでは、上記状態転写用のナンドゲート回路に対応したダミーのナンドゲート回路が負荷として設けられる。つまり、アップカウント用のリングオシレータとダウンカウント用のリングオシレータとを同じ回路条件とすることにより、両者の発振周波数を等しくさせるようにするものである。
【００３７】
例えば、同図に示すようにアップカウント用の各遅延段を構成するナンドゲート回路の入力信号がＨＨＨＨＬＬ（ここでＨはハイレベル、Ｌはロウレベル）であるときにセット信号ＳＥＴがハイレベルに立ち上がり、アップ計数動作が停止して、そのときのアップ計数値をダウンカウンタに伝えるとき、それとともにアップカウント用のリングオシレータの上記信号ＨＨＨＨＬＬがダウンカウント用のリングオシレータに投影される。アップカウント用のリングオシレータでは、セット信号ＳＥＴのハイレベルの期間においてＨが入力されている第２段目のナンドゲート回路では、その出力信号がＬに変化して第３段目のナンドゲート回路の入力をＨからＬに変化させる。以下、同様にして各遅延段のＨの出力はＬに変化し、Ｌの出力はそのままＬになる。
【００３８】
これにより、ダウンカウント用のリングオシレータでは、上記セット信号ＳＥＴのハイレベルに取り込まれた信号ＬＬＬＨＨを基準にして、次段のナンドゲート回路の帰還入力は（Ｌ）（Ｌ）（Ｌ）（Ｈ）（Ｈ）（Ｈ）にセットされ、上記アップカウント用のリングオシレータの各段の出力のＬへの変化に対応して帰還動作が開始されて発振動作を行うようになる。
【００３９】
図８には、上記のようなアップカウント用とダウンカウント用のリングオシレータを用いた場合の同期クロック発生回路の動作を説明するためのタイミング図が示されている。アップカウント用のリングオシレータの１廻りの遅延時間に対応してアップ計数用のクロック信号ＵＣＬＫが形成され、これによりアップカウンタの計数値Ｑ１とＱ２がバイナリーカウンタに対応して変化する。このようなバイナリーカウント動作の途中で、上記のように次の外部クロック信号の到来により、ノードｎ１の遅延信号がハイレベルに立ち上がり、それに同期してセット信号ＳＥＴがハイレベルに変化すると、上記アップ計数用のクロックＵＣＬＫが、その立ち下がりから時間ｔａだけ遅れているにもかかわらず、計数値Ｑ１とＱ２は変化しない。そのため、アップカウンタの計数値のみをダウンカウンタに伝える方式では、上記時間ｔａが切捨てられてしまうことなる。
【００４０】
図７のようなアップカウント用とダウンカウント用のリングオシレータを設け、そのアップカウント用のリングオシレータの遅延段の信号をダウンカウント用の遅延段に転写させ、そこからダウンカウント用のリングオシレータを発振させると、上記計数値に対して端数とされる時間ｔａがダウンカウント用のリングオシレータに伝えられて、ダウン計数動作を上記時間ｔａだけ遅らせることができる。これにより、上記リングオシレータでの信号遅延状態を含めて実質的な計数動作を行わせることができるので、時間ｔＤＡを高精度に作り出すことができるという効果が得られる。
【００４１】
図９には、この発明に係る同期クロック発生回路の他の一実施例のブロック図が示されている。上記のように外部端子から供給されるクロック信号を取り込むために必要とされるクロックバッファ回路ＣＫＢ及び内部回路に内部クロック信号を伝えるクロックドライバＣＫＤにおいて遅延時間が生じる。上記外部端子から供給されるクロック信号の１周期に対して上記遅延時間が無視できなくなるために、上記のような同期クロック発生回路が必要になるものである。このことは、逆にいうならば、上記外部端子から供給されるクロック信号の周波数が低くて、その周期が上記遅延時間に対して十分長いときには、上記同期クロック発生回路による同期化は実質的に意味を持たない。このこと及び上記アップカウンタ回路は、実質的に外部クロック信号の周期に対応した計時動作を行うものであることに着目し、アップカウンタ回路にオーバーフロー検出用のフリップフロップ回路ＦＦ４を設ける。
【００４２】
上記フリップフロップ回路ＦＦ４は、アップカウンタからのオーバーフロー信号ＯＦによりセットされ、上記遅延回路の遅延信号（ノードｎ２）によりリセットされるものである。そして、上記フリップフロップ回路ＦＦ４の出力信号ＴＨＲにより、セレクタを制御して上記クロックバッファからの出力信号をそのままクロックドライバに伝えるようにするものである。この構成では、外部端子から供給される外部クロック信号ｅｘｔ．ＣＬＫに対して、内部クロック信号ｉｎｔ．ＣＬＫはクロックバッファとクロックドライバの遅延時間ｔｄ１とｔｄ２だけ遅れたものであるが、上記のように外部クロック信号ｅｘｔ．ＣＬＫの１周期が上記遅延時間ｔｄ１＋ｔｄ２に比べて十分長いので、実質的には問題になららない。
【００４３】
図１０には、上記図９の実施例回路の動作を説明するためのタイミング図が示されている。外部クロック信号ｅｘｔ．ＣＬＫの１周期ｔＣＫが長い場合には、クロックバッファと遅延回路を通したノードｎ２に対応してアップカウンタが計数動作を開始し、次の周期の上記クロックバッファを通したノードｎ１の信号が到来する前に、アップカウンタではオーバーフローが生じてしまう。このような場合には、オーバーフロー信号によりフリップフロップ回路ＦＦ４がセットされて信号ＴＨＲを発生させる。これにより、そのときのクロックバッファを通したノードｎ１の信号が内部クロック信号ｉｎｔ．ＣＬＫとしてクロックドライバを通して伝えられる。
【００４４】
図１３には、この発明が適用されるシンクロナスＤＲＡＭ（以下、単にＳＤＲＡＭという）の一実施例の全体ブロック図が示されている。同図に示されたＳＤＲＡＭは、特に制限されないが、公知の半導体集積回路の製造技術によって単結晶シリコンのような１つの半導体基板上に形成される。
【００４５】
この実施例のＳＤＲＡＭは、メモリバンク０を構成するメモリアレイ２００Ａと、メモリバンク１を構成するメモリアレイ２００Ｂを備える。それぞれのメモリアレイ２００Ａと２００Ｂは、マトリクス配置されたダイナミック型メモリセルを備え、図に従えば同一列に配置されたメモリセルの選択端子は列毎のワード線（図示せず）に結合され、同一行に配置されたメモリセルのデータ入出力端子は行毎に相補データ線（図示せず）に結合される。
【００４６】
上記メモリアレイ２００Ａの図示しないワード線は行（ロウ）デコーダ２０１Ａによるロウアドレス信号のデコード結果に従って１本が選択レベルに駆動される。メモリアレイ２００Ａの図示しない相補データ線はセンスアンプ及びカラム選択回路を含むＩ／Ｏ線２０２Ａに結合される。センスアンプ及びカラム選択回路を含むＩ／Ｏ線２０２Ａにおけるセンスアンプは、メモリセルからのデータ読出しによって夫々の相補データ線に現れる微小電位差を検出して増幅する増幅回路である。それにおけるカラムスイッチ回路は、相補データ線を各別に選択して相補Ｉ／Ｏ線に導通させるためのスイッチ回路である。カラムスイッチ回路はカラムデコーダ２０３Ａによるカラムアドレス信号のデコード結果に従って選択動作される。
【００４７】
メモリアレイ２００Ｂ側にも同様にロウデコーダ２０１Ｂ，センスアンプ及びカラム選択回路を含むＩ／Ｏ線２０２Ｂ，カラムデコーダ２０３Ｂが設けられる。上記相補Ｉ／Ｏ線はライトバッファ２１４Ａ，Ｂの出力端子及びメインアンプ２１２Ａ，Ｂの入力端子に接続される。上記メインアンプ２１２Ａ，Ｂの出力信号は、ラッチ／レジスタ２１３の入力端子に伝えられ、このラッチ／レジスタ２１３の出力信号は、出力バッファ２１１を介して外部端子から出力される。また、外部端子から入力された書き込み信号は、入力バッファ２１０を介して上記ライトバッファ２１４Ａ，Ｂの入力端子に伝えられる。上記外部端子は、特に制限されないが、１６ビットからなるデータＤ０−Ｄ１５を出力するデータ入出力端子とされる。
【００４８】
アドレス入力端子から供給されるアドレス信号Ａ０〜Ａ９はカラムアドレスバッファ２０５とロウアドレスバッファ２０６にアドレスマルチプレクス形式で取り込まれる。供給されたアドレス信号はそれぞれのバッファが保持する。ロウアドレスバッファ２０６はリフレッシュ動作モードにおいてはリフレッシュカウンタ２０８から出力されるリフレッシュアドレス信号をロウアドレス信号として取り込む。カラムアドレスバッファ２０５の出力はカラムアドレスカウンタ２０７のプリセットデータとして供給され、列（カラム）アドレスカウンタ２０７は後述のコマンドなどで指定される動作モードに応じて、上記プリセットデータとしてのカラムアドレス信号、又はそのカラムアドレス信号を順次インクリメントした値を、カラムデコーダ２０３Ａ，２０３Ｂに向けて出力する。
【００４９】
同図において点線で示したコントローラ２０９は、特に制限されないが、クロック信号ＣＬＫ、クロックイネーブル信号ＣＫＥ、チップセレクト信号／ＣＳ、カラムアドレスストローブ信号／ＣＡＳ（記号／はこれが付された信号がロウイネーブルの信号であることを意味する）、ロウアドレスストローブ信号／ＲＡＳ、及びライトイネーブル信号／ＷＥなどの外部制御信号と、アドレス入力端子Ａ０〜Ａ９からの制御データとが供給され、それらの信号のレベルの変化やタイミングなどに基づいてＳＤＲＡＭの動作モード及び上記回路ブロックの動作を制御するための内部タイミング信号を形成するもので、モードレジスタ１０、コマンドデコーダ２０、タイミング発生回路３０、クロックバッファ４０及び同期クロック発生回路５０を備える。
【００５０】
クロック信号ＣＬＫは、前記のようにクロックバッファ４０を介して同期クロック発生回路に入力され、ここで形成された内部クロックとの同期がとられる。この内部クロックは、特に制限されないが、出力バッファ２１１を活性化させるタイミング信号ｉｎｔ．ＣＬＫとして用いられ、他の回路には上記クロックバッファを通した信号がそのまま伝えられる。その他の外部入力信号は当該内部クロック信号の立ち上がりエッジに同期して有意とされる。チップセレクト信号／ＣＳはそのロウレベルによってコマンド入力サイクルの開始を指示する。チップセレクト信号／ＣＳがハイレベルのとき（チップ非選択状態）やその他の入力は意味を持たない。但し、後述するメモリバンクの選択状態やバースト動作などの内部動作はチップ非選択状態への変化によって影響されない。／ＲＡＳ，／ＣＡＳ，／ＷＥの各信号は通常のＤＲＡＭにおける対応信号とは機能が相違し、後述するコマンドサイクルを定義するときに有意の信号とされる。
【００５１】
クロックイネーブル信号ＣＫＥは次のクロック信号の有効性を指示する信号であり、当該信号ＣＫＥがハイレベルであれば次のクロック信号ＣＬＫの立ち上がりエッジが有効とされ、ロウレベルのときには無効とされる。なお、図示しないがリードモードにおいて、出力バッファ２１１に対するアウトプットイネーブルの制御を行う外部制御信号／ＯＥを設けた場合には、かかる信号／ＯＥもコントローラ２０９に供給され、その信号が例えばハイレベルのときには出力バッファ２１１は高出力インピーダンス状態にされる。
【００５２】
上記ロウアドレス信号は、クロック信号ＣＬＫ（内部クロック信号）の立ち上がりエッジに同期する後述のロウアドレスストローブ・バンクアクティブコマンドサイクルにおけるＡ０〜Ａ８のレベルによって定義される。
【００５３】
アドレス信号Ａ９は、上記ロウアドレスストローブ・バンクアクティブコマンドサイクルにおいてバンク選択信号とみなされる。即ち、Ａ９の入力がロウレベルの時はメモリバンク０が選択され、ハイレベルの時はメモリバンク１が選択される。メモリバンクの選択制御は、特に制限されないが、選択メモリバンク側のロウデコーダのみの活性化、非選択メモリバンク側のカラムスイッチ回路の全非選択、選択メモリバンク側のみの入力バッファ２１０及び出力バッファ２１１への接続などの処理によって行うことができる。
【００５４】
後述のプリチャージコマンドサイクルにおけるアドレス信号Ａ８は、相補データ線などに対するプリチャージ動作の態様を指示し、そのハイレベルはプリチャージの対象が双方のメモリバンクであることを指示し、そのロウレベルは、アドレス信号Ａ９で指示されている一方のメモリバンクがプリチャージの対象であることを指示する。
【００５５】
上記カラムアドレス信号は、クロック信号ＣＬＫ（内部クロック）の立ち上がりエッジに同期するリード又はライトコマンド（後述のカラムアドレス・リードコマンド、カラムアドレス・ライトコマンド）サイクルにおけるＡ０〜Ａ７のレベルによって定義される。そして、この様にして定義されたカラムアドレスはバーストアクセスのスタートアドレスとされる。
【００５６】
次に、コマンドによって指示されるＳＤＲＡＭの主な動作モードを説明する。
（１）モードレジスタセットコマンド（Ｍｏ）
上記モードレジスタ３０をセットするためのコマンドであり、／ＣＳ，／ＲＡＳ，／ＣＡＳ，／ＷＥ＝ロウレベルによって当該コマンド指定され、セットすべきデータ（レジスタセットデータ）はＡ０〜Ａ９を介して与えられる。レジスタセットデータは、特に制限されないが、バーストレングス、ＣＡＳレイテンシイ、ライトモードなどとされる。特に制限されないが、設定可能なバーストレングスは、１，２，４，８，フルページとされ、設定可能なＣＡＳレイテンシイは１，２，３とされ、設定可能なライトモードは、バーストライトとシングルライトとされる。
【００５７】
上記ＣＡＳレイテンシイは、後述のカラムアドレス・リードコマンドによって指示されるリード動作において／ＣＡＳの立ち下がりから出力バッファ２１１の出力動作までに内部クロック信号の何サイクル分を費やすかを指示するものである。読出しデータが確定するまでにはデータ読出しのための内部動作時間が必要とされ、それを内部クロック信号の使用周波数に応じて設定するためのものである。換言すれば、周波数の高い内部クロック信号を用いる場合にはＣＡＳレイテンシイを相対的に大きな値に設定し、周波数の低い内部クロック信号を用いる場合にはＣＡＳレイテンシイを相対的に小さな値に設定する。
【００５８】
（２）ロウアドレスストローブ・バンクアクティブコマンド（Ａｃ）
これは、ロウアドレスストローブの指示とＡ９によるメモリバンクの選択を有効にするコマンドであり、／ＣＳ，／ＲＡＳ＝ロウレベル、／ＣＡＳ，／ＷＥ＝ハイレベルによって指示され、このときＡ０〜Ａ８に供給されるアドレスがロウアドレス信号として、Ａ９に供給される信号がメモリバンクの選択信号として取り込まれる。取り込み動作は上述のように内部クロック信号の立ち上がりエッジに同期して行われる。例えば、当該コマンドが指定されると、それによって指定されるメモリバンクにおけるワード線が選択され、当該ワード線に接続されたメモリセルがそれぞれ対応する相補データ線に導通される。
【００５９】
（３）カラムアドレス・リードコマンド（Ｒｅ）
このコマンドは、バーストリード動作を開始するために必要なコマンドであると共に、カラムアドレスストローブの指示を与えるコマンドであり、／ＣＳ，／ＣＡＳ＝ロウレベル、／ＲＡＳ，／ＷＥ＝ハイレベルによって指示され、このときＡ０〜Ａ７に供給されるカラムアドレスがカラムアドレス信号として取り込まれる。これによって取り込まれたカラムアドレス信号はバーストスタートアドレスとしてカラムアドレスカウンタ２０７に供給される。これによって指示されたバーストリード動作においては、その前にロウアドレスストローブ・バンクアクティブコマンドサイクルでメモリバンクとそれにおけるワード線の選択が行われており、当該選択ワード線のメモリセルは、内部クロック信号に同期してカラムアドレスカウンタ２０７から出力されるアドレス信号に従って順次選択されて連続的に読出される。連続的に読出されるデータ数は上記バーストレングスによって指定された個数とされる。また、出力バッファ２１１からのデータ読出し開始は上記ＣＡＳレイテンシイで規定される内部クロック信号のサイクル数を待って行われる。
【００６０】
（４）カラムアドレス・ライトコマンド（Ｗｒ）
ライト動作の態様としてモードレジスタ１０にバーストライトが設定されているときは当該バーストライト動作を開始するために必要なコマンドとされ、ライト動作の態様としてモードレジスタ１０にシングルライトが設定されているときは当該シングルライト動作を開始するために必要なコマンドとされる。更に当該コマンドは、シングルライト及びバーストライトにおけるカラムアドレスストローブの指示を与える。当該コマンドは、／ＣＳ，／ＣＡＳ，／ＷＥ＝ロウレベル、／ＲＡＳ＝ハイレベルによって指示され、このときＡ０〜Ａ７に供給されるアドレスがカラムアドレス信号として取り込まれる。これによって取り込まれたカラムアドレス信号はバーストライトにおいてはバーストスタートアドレスとしてカラムアドレスカウンタ２０７に供給される。これによって指示されたバーストライト動作の手順もバーストリード動作と同様に行われる。但し、ライト動作にはＣＡＳレイテンシイはなく、ライトデータの取り込みは当該カラムアドレス・ライトコマンドサイクルから開始される。
【００６１】
（５）プリチャージコマンド（Ｐｒ）
これは、Ａ８，Ａ９によって選択されたメモリバンクに対するプリチャージ動作の開始コマンドとされ、／ＣＳ，／ＲＡＳ，／ＷＥ＝ロウレベル、／ＣＡＳ＝ハイレベルによって指示される。
【００６２】
（６）オートリフレッシュコマンド
このコマンドはオートリフレッシュを開始するために必要とされるコマンドであり、／ＣＳ，／ＲＡＳ，／ＣＡＳ＝ロウレベル、／ＷＥ，ＣＫＥ＝ハイレベルによって指示される。
【００６３】
（７）バーストストップ・イン・フルページコマンド
フルページに対するバースト動作を全てのメモリバンクに対して停止させるために必要なコマンドであり、フルページ以外のバースト動作では無視される。このコマンドは、／ＣＳ，／ＷＥ＝ロウレベル、／ＲＡＳ，／ＣＡＳ＝ハイレベルによって指示される。
【００６４】
（８）ノーオペレーションコマンド（Ｎｏｐ）
これは実質的な動作を行わないこと指示するコマンドであり、／ＣＳ＝ロウレベル、／ＲＡＳ，／ＣＡＳ，／ＷＥのハイレベルによって指示される。
【００６５】
ＳＤＲＡＭにおいては、一方のメモリバンクでバースト動作が行われているとき、その途中で別のメモリバンクを指定して、ロウアドレスストローブ・バンクアクティブコマンドが供給されると、当該実行中の一方のメモリバンクでの動作には何ら影響を与えることなく、当該別のメモリバンクにおけるロウアドレス系の動作が可能にされる。例えば、ＳＤＲＡＭは外部から供給されるデータ、アドレス、及び制御信号を内部に保持する手段を有し、その保持内容、特にアドレス及び制御信号は、特に制限されないが、メモリバンク毎に保持されるようになっている。或は、ロウアドレスストローブ・バンクアクティブコマンドサイクルによって選択されたメモリブロックにおけるワード線１本分のデータがカラム系動作の前に予め読み出し動作のためにラッチ／レジスタ２１３に保持されるようになっている。
【００６６】
したがって、例えば１６ビットからなるデータ入出力端子においてデータＤ０−Ｄ１５が衝突しない限り、処理が終了していないコマンド実行中に、当該実行中のコマンドが処理対象とするメモリバンクとは異なるメモリバンクに対するプリチャージコマンド、ロウアドレスストローブ・バンクアクティブコマンドを発行して、内部動作を予め開始させることが可能である。
【００６７】
ＳＤＲＡＭは、クロック信号ＣＬＫ（内部クロック信号）に同期してデータ、アドレス、制御信号を入出力できるため、ＤＲＡＭと同様の大容量メモリをＳＲＡＭに匹敵する高速動作させることが可能であり、また、選択された１本のワード線に対して幾つのデータをアクセスするかをバーストレングスによって指定することによって、内蔵カラムアドレスカウンタ２０７で順次カラム系の選択状態を切り換えていって複数個のデータを連続的にリード又はライトできることが理解されよう。
【００６８】
この実施例では、上記のように同期クロック発生回路で形成された内部クロック信号ｉｎｔ．ＣＬＫにより出力バッファを制御している。これにより、図１４の動作波形図（ｂ）のように、外部クロック信号ｅｘｔ．ＣＬＫに位相同期した内部クロック信号ｉｎｔ．ＣＬＫの立ち上がりから出力バッファでの動作遅延時間ｔＤＯだけ遅れて出力信号ＤＯを出力させることができる。このように、上記動作遅延時間ｔＤＯが、クロック信号からデータ出力までの時間ｔＡＣに等しく高速になる。
【００６９】
つまり、上記のような同期クロック発生回路を設けない従来の回路では、図１４（ａ）に示すように、外部クロック信号ｅｘｔ．ＣＬＫから上記クロックバッファ及びクロックドライバにて費やされる遅延時間ｔｄに、出力バッファの動作遅延時間ｔＤＯが加わって上記時間ｔＡＣが長くされる。そのため、クロック信号ＣＬＫの１周期ｔＣＫが短くなる高周波では上記遅延時間ｔｄが無視できなくなり、高速化を妨げるものとなる。ちなみに、クロック信号ＣＬＫの周波数を２５０ＭＨｚにすると、その１周期は４ｎｓｅｃとなるので、上記のような同期クロック発生回路を用いないと、かかるクロック信号での読み出し動作が不能になるものである。
【００７０】
図１１には、図１３のクロックバッファ４０の一実施例の回路図が示されている。この実施例のクロックバッファは、上記のような同期クロック発生回路に伝えるクロック信号を取り込むものと、他のタイミング発生回路等に供給されるクロック信号を取り込むものとから構成される。外部クロック信号ｅｘｔ．ＣＬＫの取り込みは、クロックイネーブル信号ＣＫＥがハイレベルのときに有効とされる。それ故、抵抗素子とダイオード形態のＭＯＳＦＥＴからなる公知の静電破壊保護回路を通して入力されたクロック信号は、ナンドゲート回路Ｇ１０とＧ１１の一方の入力に供給される。このナンドゲート回路Ｇ１０の他方の入力には、上記同様な静電破壊防止回路を介して入力されたクロックイネーブル信号ＣＫＥが入力バッファを構成するインバータ回路Ｎ１０とＮ１２を通して伝えられる。上記クロックイネーブル信号ＣＫＥがハイレベルにされると、ナンドゲート回路Ｇ１０がゲートを開いて外部クロック信号ｅｘｔ．ＣＬＫを取り込み、ワンショットパルス発生回路に伝える。
【００７１】
ＳＤＲＡＭにおいては、クロックパルスの立ち上がりエッジにおいて全ての信号処理が行われる。そこで、この実施例では上記１ショットパルス発生回路により、上記クロックパルスの立ち上がりエッジに同期して遅延回路ｄｅｌａｙＡの遅延時間で決定されるパルス幅のパルスを発生させ、クロックドライバを構成するＣＭＯＳインバータ回路列により内部クロック信号ｉｎｔ．ＣＬＫ２を出力させて上記出力バッファ以外の内部回路に伝えられる。
【００７２】
ＳＤＲＡＭでは、モードレジスタ等によりパワーダウンモードが指定されたなら、出力バッファを非動作状態にするというパワーダウンモードを持つものである。そのため、かかるパワーダウン信号ＰＤＭにより上記同期クロック発生回路へのクロック供給を停止させるよう、上記クロックイネーブル信号は上記パワーダウン信号ＰＤＭにより制御されるノアゲート回路Ｇ１２を介して上記外部クロック信号ｅｘｔ．ＣＬＫを取り込むナンドゲート回路Ｇ１１の制御を行うようにするものである。つまり、クロックイネーブル信号ＣＫＥがハイレベルであっても、パワーダウン信号ＰＤＭがハイレベルならノアゲート回路Ｇ１２の出力信号をロウレベルにして、上記ナンドゲート回路Ｇ１１のゲートを閉じて外部クロック信号ｅｘｔ．ＣＬＫの取り込みを停止させるものである。これにより、同期クロック発生回路では、内部クロック信号ｉｎｔ．ＣＬＫ１をロウレベルのままにして出力バッファを非動作状態にするものである。
【００７３】
上記出力バッファの動作制御を行う内部クロック信号ｉｎｔ．ＣＬＫは、上記のような同期クロック発生回路により形成されるが、その入力部には上記のようなワンショットパルス発生回路が設けられる。つまり、前記実施例のクロックバッファＣＫＢは、上記静電破壊保護回路、ゲート回路及びワンショットパルス発生回路の３段の回路から構成される。また、クロックドライバＣＫＤは、特に制限されないが、３段のＣＭＯＳインバータ回路から構成される。つまり、その駆動能力を順次に大きくして大きな容量性負荷を駆動するために大きな出力ＭＯＳＦＥＴからなる出力段ＣＭＯＳインバータ回路を高速に駆動するようにするものである。
【００７４】
図１２には、出力バッファの一実施例の回路図が示されている。同図には、１ビットに対応した１個の出力回路が代表として例示的に示されている。つまり、上記のように１６ビットの単位でのデータ出力を行うものでは、同図の回路が１６個から構成される。そして、その動作制御を行うクロック信号ＤＯＣＬＫ（ｉｎｔ．ＣＬＫ）は、１６個の出力バッファに対して共通に供給されるものである。
【００７５】
出力バッファは、Ｎチャンネル型の出力ＭＯＳＦＥＴＱ４とＱ５と、かかる出力ＭＯＳＦＥＴＱ４とＱ５を動作時にはデータＤＡＴＡに対応して相補的にオン状態／オフ状態にし、非動作状態のときには出力ＭＯＳＦＥＴＱ４とＱ５を共にオフ状態にして出力ハイインピーダンス状態にさせるため、ナンドゲート回路Ｇ２０とＧ２１及びインバータ回路Ｎ２０からなる駆動回路が設けられる。また、上記電源電圧ＶＤＤ側の出力ＭＯＳＦＥＴＱ４のゲート電圧を、電源電圧ＶＤＤ以上に昇圧して、ハイレベルの出力信号を上記電源電圧ＶＤＤまで得るようにするために、ＭＯＳＦＥＴＱ１〜Ｑ３、インバータ回路Ｎ２１及びキャパシタＣからなる昇圧回路が設けられる。
【００７６】
クロック信号ＤＯＣＬＫがロウレベルの非動作状態において、データＤＡＴＡに無関係にナンドゲート回路Ｇ２０の出力がハイレベルとなり、Ｎチャンネル型ＭＯＳＦＥＴＱ３をオン状態にして上記出力ＭＯＳＦＥＴＱ４のゲート電圧を接地電位にしてかかる出力ＭＯＳＦＥＴＱ４をオフ状態にしている。このとき、インバータ回路Ｎ２１の出力はロウレベルとなり、キャパシタＣにはダイオード形態のＭＯＳＦＥＴＱ１を介してプリチャージがなされている。クロック信号ＤＯＣＬＫがハイレベルの動作状態に変化し、データＤＡＴＡがハイレベルならナンドゲート回路Ｇ２０の出力がロウレベルとなり、インバータ回路Ｎ２１の出力信号がロウレベルからハイレベルに変化する。
【００７７】
上記キャパシタＣにおいては、上記プリチャージ電圧に上記インバータ回路Ｎ２１の出力ハイレベルが加算された昇圧電圧を発生する。そして、上記ナンドゲート回路Ｇ２０の出力信号のロウレベルにより、Ｎチャンネル型ＭＯＳＦＥＴＱ３がオフ状態に、Ｐチャンネル型ＭＯＳＦＥＴＱ２がオン状態になるので、上記キャパシタＣの昇圧電圧は、上記オン状態にされたＭＯＳＦＥＴＱ２を通して出力ＭＯＳＦＥＴＱ４のゲートに伝えられて、その電圧を電源電圧ＶＤＤ以上に昇圧する。この結果、出力端子から出力されるデータＤＯのハイレベル電源電圧ＶＤＤのようなハイレベルにされる。なお、上記出力すべきデータＤＡＴＡがロウレベルなら、ナンドゲート回路Ｇ２１の出力信号がハイレベルとなり、出力ＭＯＳＦＥＴＱ５をオン状態にして回路の接地電位のようなロウレベルを出力させるものである。
【００７８】
このような出力バッファにおいて、出力すべきデータＤＡＴＡは、上記ラッチ／レジスタに保持されているので、上記同期クロック発生回路により形成されるクロック信号ＤＯＣＬＫの立ち上がりに同期して動作を開始し、かかるＤＯＣＬＫを上記外部クロック信号ｅｘｔ．ＣＬＫと同期させることにより、上記アクセスタイムｔＡＣをかかる出力バッファの動作遅延時間に等しく短くできる。
【００７９】
図１５には、この発明に係る同期クロック発生回路の更に他の一実施例のブロック図が示されている。この実施例では、外部クロック信号と内部クロック信号とを同期化させることの他に周波数逓倍機能を付加するようにするものである。特に制限されないが、この実施例では、外部クロック信号ｅｘｔ．ＣＬＫと同期し、かつ周波数が２倍にされた内部クロック信号ｉｎｔ．ＣＬＫが形成される。
【００８０】
基本的な回路は、前記の同期クロック発生回路と同様であるが、２倍の周波数の内部クロック信号ｉｎｔ．ＣＬＫを形成するために、遅延回路ＤＬ１とＤＬ２は、それぞれ２倍の遅延時間２ｔｄ１と２ｔｄ２に設定される。また、アップカウントとダウンカウンタとは、同じ計数クロックではなく、ダウンカウンタの計数クロックｆＣに対して、アップカウンタの計数クロックをｆＣ／２のように半分の周波数にする。つまり、ダウンカウンタの計数クロックｆＣを１／２分周して、上記アップカウンタの計数クロックｆＣ／２を形成する。
【００８１】
上記アップカウンタの計数出力は、レジスタに保持させてかかるレジスタを介してダウンカウンタに伝えられる。ダウンカウンタの出力を受けるオール０検出回路の出力信号は、前記のようなフリップフロップ回路ＦＦ３のセット信号として用いられることの他、遅延回路ＤＬ１’とＤＬ２’を介してダウンカウンタコントローラに伝えられる。ダウンカウンタコントローラは、上記クロックバッファ回路ＣＫＢの出力ノードｎ１の信号と、上記遅延回路ＤＬ１’とＤＬ２’を通したオール０検出信号とにより、スタート入力信号を発生させる。なお、同図では省略されているが、上記フリップフロップ回路ＦＦ３のリセット端子には、オール０の検出信号を遅延させた信号が供給されること等によりリセットして、それに対応してクロックドライバ回路ＣＫＤから出力される内部クロック信号ｉｎｔ．ＣＬＫのパルス幅が設定される。それ故、フリップフロップ回路ＦＦ３に代えて、ワンショットパルス発生回路を用いるものであってもよい。上記ＤＬ１’とＤＬ２’の遅延時間は、ｔｄ１とｔｄ２のように設定されている。
【００８２】
図１６には、上記図１５の同期クロック発生回路の動作を説明するためのタイミング図が示されている。外部クロック信号ｅｘｔ．ＣＬＫがハイレベルに立ち上がり、それよりクロックバッファ回路ＣＫＢの遅延時間ｔｄ１だけ遅れてノードｎ１の信号がハイレベルに変化し、それより更に２（ｔｄ１＋ｔｄ２）遅れてノードｎ２の信号がハイレベルに変化する。これにより、アップカウンタにスタート信号が供給されて、上記計数クロックｆＣ／２の計数動作を開始する。
【００８３】
次に到来する外部クロック信号ｅｘｔ．ＣＬＫがハイレベルに立ち上がり、上記クロックバッファ回路ＣＫＢの出力ノードｎ１が遅延時間ｔｄ１の後にハイレベルに立ち上がり、ダウンカウンタコントローラはダウンカウンタのスタート信号が供給されて、上記レジスタを介して上記アップカウンタの計数値を初期値として取り込み、上記計数クロックｆＣの計数動作を開始する。この計数動作は、上記のように計数クロックｆＣがアップカウンタの計数クロックｆＣ／２の２倍にされているから、カウント０に至る時間がｔＤＡ／２の半分にされる。この結果、ｔＤＡ／２によりオール０の検出信号が形成され、それから上記遅延回路ＤＬ１’とＤＬ２’による遅延時間ｔｄ１＋ｔｄ２の後に再びダウンカウンタコントローラを介してスタート信号が入力されるので、上記レジスタに保持されているアップ計数値を初期値として取り込み、再び上記計数クロックｆＣの計数動作を開始する。
【００８４】
この計数動作は、上記のように計数クロックｆＣがアップカウンタの計数クロックｆＣ／２の２倍にされているから、上記同様にカウント０に至る時間がｔＤＡ／２の半分にされる。この結果、ダウンカウンタでは２回に分けた計数動作により、ｔＤＡ／２＋ｔＤＡ／２＝ｔＤＡの計数動作を行う。このようにして形成された内部クロック信号ｉｎｔ．ＣＬＫは、上記外部クロック信号ｅｘｔ．ＣＬＫに対して２倍の周波数で、かつ同期した信号とされる。この構成では、同図のように外部クロック信号ｅｘｔ．ＣＬＫが２クロック入力された後に、それと同期しかつ上記のように２倍の周波数にされた内部クロック信号ｉｎｔ．ＣＬＫを形成することができる。この構成は、従来のようなＰＬＬ回路を用いた場合にくらべて、その応答性が早く、かつ帰還ループが存在しないのでディジタル回路を混在させても安定的に動作するという特徴を持つものとなる。
【００８５】
図１７には、この発明が適用されるシングルチップマイクロコンピュータの一実施例のブロック図が示されている。同図の各回路ブロックは、公知のＣＭＯＳ（相補型ＭＯＳ）半導体集積回路の製造技術によって、単結晶シリコンのような１個の基板上において形成される。
【００８６】
この実施例におけるシングルチップマイクロコンピュータは、特に制限されないが、ＲＩＳＣ（Ｒｅｄｕｃｅｄ  ｉｎｓｔｒｕｃｔｉｏｎ  ｓｅｔ  ｃｏｍｐｕｔｅｒ）タイプの中央処理装置ＣＰＵにより、高性能な演算処理を実現し、システム構成に必要な周辺機器を集積すると同時に、携帯機器応用に不可欠な低消費電力化を実現した、いわば新世代に向けられたシングルチップマイクロコンピュータである。
【００８７】
中央処理装置ＣＰＵは、ＲＩＳＣタイプの命令セットを持っており、基本命令はパイプライン処理を行って１命令１ステート（１システムクロックサイクル）で動作するので、命令実行速度が飛躍的に向上させることができる。そして、乗算器ＭＵＬＴを内蔵しており、積和演算処理をも高速に行うようにしている。
【００８８】
最少部品点数によりユーザーシステムを構成できるように内蔵周辺モジュールとして、割り込みコントローラＩＮＴＣ、直接メモリアクセス制御装置ＤＭＡＣ、除算器ＤＩＶＵ、タイマＦＲＴ，ＷＤＴ、シリアルコミュニケーションインターフェイスＳＣＩを内蔵している。さらに、キャッシュメモリ内蔵の外部メモリアクセスサポート機能により、グルーロジックなしにダイナミック型ＲＡＭ（ラチンダム・アクセス・メモリ）、シンクロナスダイナミック型ＲＡＭ、擬似スタティック型ＲＡＭと直接接続できるようにしている。
【００８９】
上記のような高速な中央処理装置ＣＰＵを中心にし、その性能を十分に発揮し、しかも低消費電力化を図りつつ、高性能、高機能又は多機能のために設けられた周辺モジュールを効率よく動作させるようにするため、内部バスは３つに分けられている。
【００９０】
第１のバスは、アドレスバスＡＢ１とデータバスＤＢ１から構成され、中央処理装置ＣＰＵ、乗算器（積和演算器）ＭＵＬＴ及びキャッシュメモリが接続される。上記乗算器ＭＵＬＴは、上記第１のバスのうちデータバスＤＢ１にのみ接続され、中央処理装置ＣＰＵと一体的に動作して乗算と加算を行うようにされる。それ故、第１バス（ＡＢ１，ＤＢ１）は、主に中央処理装置ＣＰＵとキャッシュメモリとの間でのデータ転送に利用されるからキャッシュアドレスバスとキャッシュデータバスと呼ぶことができる。キャッシュメモリは、タグメモリＴＡＧとデータメモリＣＤＭ及びキャッシュコントローラから構成される。
【００９１】
中央処理装置ＣＰＵの概略構成は次の通りである。内部は３２ビット構成とされる。汎用レジスタマシンは、１６本からなる３２ビットの汎用レジスタと、３本からなる３２ビットのコントロールレジスタと、４本からなる３２ビットのシステムレジスタから構成される。ＲＩＳＣタイプの命令セットは、１６ビット固定長命令によりコード効率化を図っている。無条件／条件分岐命令を遅延分岐方式とすることにより、分岐時のパイプラインの乱れを軽減している。命令実行は、１命令／１ステートとされ、２８．７ＭＨｚ動作時においては、３５ｎｓ／命令のように高速とされる。中央処理装置ＣＰＵの性能は動作周波数と、１命令実行あたりのクロック数（ＣＰＩ：Ｃｙｃｌｅｓ  Ｐｅｒ    Ｉｎｓｔｒｕ  ｃｔｉｏｎ  ）で決まる。このうち動作周波数は、テレビ用のビデオ信号処理系とクロックを共用するようにするなら、上記２８．７ＭＨｚに設定にすることが便利である。ちなみに、ＮＴＳＣ方式のカラー・テレビで画像データをノンインタレース表示する場合には通常、ビデオ信号回路に色副搬送波（カラー・サブキャリヤ）周波数（約３．５８Ｍｚの８倍のクロック（２８．６ＭＨｚ）を使っている。
【００９２】
この実施例では、キャッシュメモリ（ＴＡＧ，ＣＡＣ，ＣＤＭ）及び乗算器ＭＵＬＴしか接続されない第１バス（ＡＢ１とＤＢ１）に中央処理装置ＣＰＵを接続するものであるので、バスの負荷容量が大幅に低減でき、上記のような高速動作を行う中央処理装置ＣＰＵのバス駆動回路の簡素化と、低消費電力化を図ることができる。
【００９３】
第２のバスは、アドレスバスＡＢ２とデータバスＤＢ２から構成され、除算器ＤＩＶＵ、直接メモリアクセス制御装置ＤＭＡＣ、外部バスインターフェイスＯＢＩＦが接続される。上記キャッシュメモリでのミスヒットのときに、中央処理装置ＣＰＵは、外部メモリをアクセスしてデータを取り込む必要がある。このため、第１のバスのアドレス信号を第２のバスに伝える機能が必要とされる。また、上記のように第１と第２のバスを分離すると、プログラムミス等によって直接メモリアクセス制御装置ＤＭＡＣがキャッシュメモリのデータメモリＣＤＭの内容を勝手に書き換えてしまうという問題が生じる。
【００９４】
この実施例では、上記のようなキャッシュメモリでのミスヒットやキャッシュメモリのデータ破壊といった問題を解決するために、ブレークコントローラＵＢＣが利用される。ブレークコントローラＵＢＣは、本来プログラムデバッグ等に用いられるのであるが、上記第１バス及び第２バスに接続される必要があることを利用し、それにトランシーバ回路を設けて上記キャッシュメモリでのミスヒットのときに第１バスのアドレス信号を第２のバスのアドレスバスＡＢ２に伝えて、外部メモリのアクセスを行うようにするものである。また、第２のバスでのアドレス信号を監視し、直接メモリアセクセス制御装置ＤＭＡＣによるデータメモリＣＤＭへ書き換えを監視させる。
【００９５】
第３のバスは、アドレスバスＡＢ３とデータバスＤＢ３から構成され、特に制限されないが、フリーランニングタイマＦＲＴ、シリアルコミュニケーションインターフェイスＳＣＩ、ウォッチドッグタイマＷＤＴと動作モードコントローラＭＣが接続される。
【００９６】
上記第３のバスは、上記第１や第２のバスに比べてバスサイクルが遅くされる。すなわち、これらの各周辺モジュールは、その動作速度を速くしても実質的な性能や機能が向上するものではないことに着目し、約１０ＭＨｚ程度で動作する既存のシングルチップマイクロコンピュータに搭載されているものを実質的にそのまま利用するものである。このようにすることにより、設計効率の向上を図ることができるとともに、動作周波数が低くされることによって低消費電力化とすることができる。
【００９７】
割り込みコントローラＩＮＴＣの概略は、次の通りである。外部割り込みに関しては、後述するようなＮＭＩ、／ＩＲＬ０〜／ＩＲＬ３からなる５本の外部割り込み端子を持っている。／ＩＲＬ０〜／ＩＲＬ３端子による１５外部割り込みレベル設定が可能にされる。この明細書及び一部の図面において、アルファベットの記号に付した／（スラッシュ）は、ロウレベルがアクティブレベルであるバー信号を表している。なお、図面では従来の記述方法により、バー信号はアルファベットによる信号名又は端子名の上に線が付されている。
【００９８】
内部割り込み要因は、直接メモリアクセス制御装置により２つ、除算器ＤＩＶＵにより１つ、フリーランニングタイマＦＲＴにより３つ、ウォッチドッグタイマＷＤＴにより１つ、シリアルコミュニケーションインターフェイスＳＣＩにより４つからなる１１要因とされる。内部割り込み要因ごとにベクタ番号設定可能とされる。
【００９９】
以上のようなバスの分割方式を採ることにより、それぞれのバスの長さが短くされたり、あるいはそれに接続される素子を減らすことができるからバスの負荷容量が大幅に低減し、中央処理装置ＣＰＵの高速化と相俟って低消費電力で高速なデータ処理が可能になる。また、ユーザーブレークコントローラに直接メモリアクセス制御装置をＤＭＡＣを設けた場合には、上記のようなバスの分離によって直接メモリアクセス制御装置ＤＭＡＣによる誤ったキャッシュデータの書き換えを検出する機能が設けられているので、信頼性を損なうことがない。
【０１００】
中央処理装置ＣＰＵやキャッシュメモリ及び直接メモリアクセス制御装置ＤＭＡＣのように、そのバスサイクルが直ちに性能や機能に影響を及ぼすものは、上記のような高速なバスサイクルのバスに接続し、フリーランニングタイマＦＲＴ、シリアルコミュニケーションインターフェイスＳＣＩ又はウォッチドッグタイマＷＤＴのように、そのバスサイクルがデータ処理に直接影響を及ぼさないものは、低速のバスサイクルの第３のバスに接続するようにするものである。これにより、中央処理装置ＣＰＵの高速化に追従して、高速タイプの周辺モジュールを開発設計する必要がなく、既存のものをそのまま流用して用いることができるから、設計の効率化を図ることができるとともに、そこでの動作クロックを低くできるので低消費電力化を図ることができる。
【０１０１】
上記中央処理装置ＣＰＵ等とのデータの授受を同期化して行うようにするために、バスステートコントローラＢＳＣが設けられる。このバスステートコントローラＢＳＣは、第３のバスから第２のバスに信号（データ信号）を転送するときには、そのまま信号の伝達を行う。これは、図１５に示したような同期パルス発生回路を用いたパルス発生回路ＣＰＧにより、第１や第２のバスサイクルを決定するシステムクロックと、それと同期した第３のバスサイクルに使用するクロックパルスを形成しているので、上記第３のバスの信号をそのまま第２のバスに伝えることができる。バスステートコントローラＢＳＣは第２のバスの信号を第３のバスに伝えるときには、第３のクロックパルスに適合させてデータの抜けがないように伝達するという動作を行う。
【０１０２】
この実施例のクロックパルス発生回路ＣＰＧは、外部端子から供給された外部クロック信号と内部クロック信号とを同期化させ、あるいはそれを逓倍した周波数にできるので、上記のようにテレビ用のビデオ信号処理系とクロックを共用する場合や、複数のシングルチップマイクロコンピュータを同期化させて動作させる場合に有効である。
【０１０３】
上記の実施例から得られる作用効果は、下記の通りである。
（１）  外部端子から入力バッファ回路を介して取り込まれたクロック信号を遅延回路で遅延させ、上記遅延回路を通したクロック信号により起動され、上記上記クロック信号に対して十分高くされた発振パルスをカウント動作し、上記入力バッファ回路を通した１周期遅れのクロック信号により上記カウント値を逆方向にカウント動作してその計数値が計数開始時に戻ったときに出力タイミング信号を発生させ、その出力タイミング信号をクロックドライバを介して内部回路に伝えるとともに、遅延回路の遅延時間は、上記入力バッファ回路の遅延時間と上記クロックドライバの遅延時間の和に対応した遅延時間に設定することより、回路規模を増大させることなく、高周波数から比較的低い周波数までの広い範囲で同期化ができる内部クロック信号を形成することができるという効果が得られる。
【０１０４】
（２）  上記カウンタ回路をアップ／ダウンカウンタ回路とし、上記遅延回路を通したクロック信号の立ち上がりエッジに同期してアップカウント動作を行い、上記入力バッファ回路を通した１周期遅れのクロック信号の立ち上がりエッジに同期してダウンカウント動作を行い計数値がゼロになっときにカウント動作を停止させるとともに、出力部に設けられたフリップフロップ回路をセットして出力タイミング信号を形成し、上記フリップフロップ回路は上記遅延回路を通したクロック信号の立ち上がりエッジによりリセット動作が行われるとともに上記アップカウント動作を開始することにより、回路規模が小さくて高周波数から比較的低い周波数までの広い範囲で同期化ができる内部クロック信号を形成することができるという効果が得られる。
【０１０５】
（３）  上記カウンタ回路として、上記遅延回路を通したクロック信号の立ち上がりエッジに同期してカウント動作を開始するアップカウンタ回路と、上記入力バッファ回路を通した１周期遅れのクロック信号の立ち上がりエッジに同期して上記アップカウント回路からの計数出力を受け取りダウンカウント動作を行うダウンカウンタ回路と、かかるダウンカウンタ回路の計数値がゼロになったことを検出するゼロ検出回路により構成し、上記ゼロ検出回路の検出出力によりフリップフロップ回路をセットし、上記入力バッファ回路を通したクロック信号により上記フリップフロップ回路をリセットして上記出力タイミング信号を形成することにより、動作周波数の変化を含めて広い範囲で同期化ができる内部クロック信号を形成することができるという効果が得られる。
【０１０６】
（４）  上記遅延回路として、上記入力バッファ回路に対応した遅延時間を形成する第１の遅延回路と、上記クロックドライバに対応した遅延時間を形成する第２の遅延回路の直列回路とにより構成することにより、それぞれの回路と実質的に同じ段数の論理回路等を用いる等して精度よく遅延時間を形成することができるという効果が得られる。
【０１０７】
（５）  上記パルス発生回路として、アップカウント用の複数段の第１のリングオシレータ回路と、かかる第１のリングオシレータと同様の複数段とされ、かつ上記入力バッファ回路を通した１周期遅れのクロック信号の立ち上がりエッジに同期してかかるアップカウント用の各段の出力が転写して伝えられダウンカウント用の第２のリングオシレータとを構成することにより、リングオシレータでの端数も転写させた高精度での同期化が実現できるという効果が得られる。
【０１０８】
（６）  上記カウンタ回路にオーバーフロー検出回路を設け、かかるオーバーフロー検出回路によりカウントオーバーが検出されたときに、上記入力バッファ回路を通して取り込まれたクロック信号をそのまま上記内部クロック信号として伝えられる信号切り換え回路が設けることにより、低周波側での動作範囲を実質的に拡大させることができ、カウンタ回路の段数を減らすことによって回路規模を小さくすることができるという効果が得られる。
【０１０９】
（７）  上記アップカウンタに対してダウンカウンタの周波数をＮ倍に高くし、上記入力バッファ回路を通した１周期遅れのクロック信号により上記アップカウンタ回路の計数値をレジスタを介して受け取り、上記発振パルスを計数して計数値がゼロになる毎に上記遅延回路の１／Ｎに対応した遅延時間経過後に上記レジスタの計数値を受け取りＮ回の計数動作がゼロになる毎にダウンカウンタで繰り返して行うことにより、Ｎ倍に逓倍された内部クロック信号を形成することができるという効果が得られる。
【０１１０】
（８）外部端子から供給されるクロック信号に対して、かかるクロック信号とそのＮ倍の周波数のクロック信号により内部回路が動作させられるマイクロコンピュータに上記同期パルス発生回路を用いることにより、応答性が高く、しかも安定的に動作するクロック発生回路を得ることができるという効果が得られる。
【０１１１】
以上本発明者よりなされた発明を実施例に基づき具体的に説明したが、本願発明は前記実施例に限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能であることはいうまでもない。例えば、遅延回路ＤＬ１とＤＬ２は、２つの遅延回路で上記遅延時間ｔｄ１＋ｔｄ２を形成するものであってもよい。入力パルスと内部パルスとの同期化は、パルスの立ち下がりエッジを同期させるようにするものであってもよい。この発明に係る同期パルス発生回路は、シンクロナスＤＲＡＭの他、外部から入力されたクロック信号と同期した内部クロック信号を必要とする前記シングルチップマイクロコンピュータ等各種半導体集積回路装置に広く利用できる。
【０１１２】
【発明の効果】
本願において開示される発明のうち代表的なものによって得られる効果を簡単に説明すれば、下記の通りである。すなわち、外部端子から入力バッファ回路を介して取り込まれたクロック信号を遅延回路で遅延させ、上記遅延回路を通したクロック信号により起動され、上記上記クロック信号に対して十分高くされた発振パルスをカウント動作し、上記入力バッファ回路を通した１周期遅れのクロック信号により上記カウント値を逆方向にカウント動作してその計数値が計数開始時に戻ったときに出力タイミング信号を発生させ、その出力タイミング信号をクロックドライバを介して内部回路に伝えるとともに、遅延回路の遅延時間は、上記入力バッファ回路の遅延時間と上記クロックドライバの遅延時間の和に対応した遅延時間に設定することより、回路規模を増大させることなく、高周波数から比較的低い周波数までの広い範囲で同期化ができる内部クロック信号を形成することができる。
【図面の簡単な説明】
【図１】この発明に係る同期クロック発生回路の基本的な概念を説明するためのブロック図である。
【図２】図１の同期クロック発生回路の動作を説明するためのタイミング図である。
【図３】この発明に係る同期パルス発生回路の一実施例を示す論理回路図である。
【図４】図３の同期パルス発生回路の動作を説明するためのタイミング図である。
【図５】この発明に係る同期パルス発生回路の他の一実施例を示すブロック図である。
【図６】図５の同期パルス発生回路の動作を説明するためのタイミング図である。
【図７】この発明に係る同期クロック発生回路に用いられるリングオシレータの一実施例を示す回路図である。
【図８】図７のリングオシレータを用いた場合の同期クロック発生回路の動作を説明するためのタイミング図である。
【図９】この発明に係る同期パルス発生回路の他の一実施例を示すブロック図である。
【図１０】図９の同期パルス発生回路の動作を説明するためのタイミング図である。
【図１１】この発明が適用されたＳＤＲＡＭに設けられるクロックバッファの一実施例を示す回路図である。
【図１２】この発明が適用されたＳＤＲＡＭに設けられる出力バッファの一実施例を示す回路図である。
【図１３】この発明が適用されたＳＤＲＡＭの一実施例を示すブロック図である。
【図１４】上記図１３のＳＤＲＡＭの動作の一例を説明するためのタイミング図である。
【図１５】この発明に係る同期パルス発生回路の更に他の一実施例を示すブロック図である。
【図１６】図１５の同期パルス発生回路の動作を説明するためのタイミング図である。
【図１７】この発明が適用されたシングルチップマイクロコンピュータの一実施例を示すブロック図である。
【図１８】本願発明に先立って検討されたシンクロナス・ミラー・ディレイ回路の一部回路図である。
【図１９】図１８の回路の動作を説明するためのタイミング図である。
【符号の説明】
ＣＫＢ…クロックバッファ、ＤＬ１，ＤＬ２…遅延回路、ＴＧ…タイミング発生回路、ＣＫＤ…クロックドライバ、ＦＦ１〜ＦＦ４…フリップフロップ回路、Ｔ１〜Ｔｎ…Ｔ型フリップフロップ回路、Ｎ１…インバータ回路、Ｇ１〜Ｇ４…ゲート回路、Ｎ１０〜Ｎ１６…インバータ回路、Ｇ１０〜１４…ゲート回路、
１０…モードレジスタ、２０…コマンドデコーダ、３０…タイミング発生回路、３０…クロックバッファ、５０…同期クロック発生回路、２００Ａ，２００Ｂ…メモリアレイ、２０１Ａ，２０１Ｂ…ロウデコーダ、２０２Ａ，２０２Ｂ…センスアンプ及びカラム選択回路、２０３Ａ，２０３Ｂ…カラムデコーダ、２０５…カラムアドレスバッファ、２０６…ロウアドレスバッファ、２０７…カラムアドレスカウンタ、２０８…リフレッシュカウンタ、２０９…コントローラ、２１０…入力バッファ、２１１…出力バッファ、２１２Ａ，Ｂ…メインアンプ、２１３…ラッチ／レジスタ、２１４Ａ，Ｂ…ライトバッファ。
ＣＰＵ…中央処理装置、ＭＵＬＴ…乗算器、ＩＮＴＣ…割り込みコントーラ、ＤＭＡＣ…直接メモリアクセス制御装置、ＤＩＶＵ…除算器、ＦＲＭ…フリーランニングタイマ、ＷＤＴ…ウォッチドッグタイマ、ＳＣＩ…シリアルコミュニケーションインターフェイス、ＡＢ１〜ＡＢ４…アドレスバス、ＤＢ１〜ＤＢ４…データバス、ＢＳＣ…バスステートコントローラ、ＤＭＡＣ…直接メモリアクセス制御装置、ＯＢＩＦ…外部バスインターフェイス、ＭＣＴＧ…メモリ制御信号発生回路、ＵＢＣ…ブレークコントローラ、ＩＮＴＣ…割り込みコントローラ、ＣＤＭ…データメモリ（キャッシュ）ＴＡＧ…タグメモリ（キャッシュ）、ＣＡＣ…キャッシュコントローラ、ＣＰＧ…パルス発生回路。
ＦＤＡ…フォワード・ディレイ・アレイ、ＭＣＣ…ミラー制御回路、ＢＤＡ…バックワード・ディレイ・アレイ。
【図１】
0003607439.tif 000002
【図２】
0003607439.tif 000003
【図３】
0003607439.tif 000004
【図４】
0003607439.tif 000005
【図５】
0003607439.tif 000006
【図６】
0003607439.tif 000007
【図７】
0003607439.tif 000008
【図８】
0003607439.tif 000009
【図９】
0003607439.tif 000010
【図１０】
0003607439.tif 000011
【図１１】
0003607439.tif 000012
【図１２】
0003607439.tif 000013
【図１３】
0003607439.tif 000014
【図１４】
0003607439.tif 000015
【図１５】
0003607439.tif 000016
【図１６】
0003607439.tif 000017
【図１７】
0003607439.tif 000018
【図１８】
0003607439.tif 000019
【図１９】
0003607439.tif 000020