(57)【要約】【課題】様々なパルス発生仕様に柔軟に対応することが可能な半導体集積回路装置を提供する。【解決手段】例えば、外部クロック信号ＣＬＫのパルスを受けて、これよりも細いパルス幅を備えた基準パルス信号ＲＰＵＬを発生し、単位遅延ブロックＤＬＹＢＫがリング状に接続されたディレイリング部ＤＬＹＲＧ内でこのＲＰＵＬを巡回させる。そして、各単位遅延ブロックＤＬＹＢＫ［１］〜［ｎ］からの出力信号ＯＵＴ［１］〜［ｎ］を用いて、所定のパルス幅を備えた内部パルス信号ＩＰＵＬを連続して生成する。また、ＯＵＴ［１］〜［ｎ］の発生回数をカウントし、所定の回数となった際にストップ信号ＳＴＰを発生する。ＳＴＰは、ＤＬＹＲＧに供給され、ＲＰＵＬの巡回が停止する。これによって、ＩＰＵＬの発生回数が設定できる。【選択図】図１
2007243667.tif 000002
【特許請求の範囲】
【請求項１】
外部から入力される第１パルス信号を受けて、前記第１パルス信号のパルス幅よりも細いパルス幅を備えた基準パルス信号を生成する回路と、
リング状に接続された複数の遅延回路からなり、前記基準パルス信号が入力された際に、前記入力された前記基準パルス信号を前記複数の遅延回路を介しながら巡回させる遅延リング回路と、
前記基準パルス信号の巡回に伴い前記複数の遅延回路のそれぞれの出力から得られる複数位相のパルス信号を用いて、所望のパルス幅を備えた第２パルス信号を生成する回路とを有することを特徴とする半導体集積回路装置。
【請求項２】
請求項１記載の半導体集積回路装置において、
さらに、前記複数位相のパルス信号の発生回数をカウントし、前記発生回数が所定の回数となった際に停止信号を出力するカウンタ回路を備え、
前記遅延リング回路は、前記停止信号を受けて前記基準パルス信号の巡回を停止させる手段を有することを特徴とする半導体集積回路装置。
【請求項３】
請求項１記載の半導体集積回路装置において、
さらに、前記第１パルス信号を受けてリセット信号を発生する回路を備え、
前記遅延リング回路は、前記リセット信号を受けて前記遅延リング回路内に含まれる各回路のノードを初期状態に設定する手段を有することを特徴とする半導体集積回路装置。
【請求項４】
請求項２記載の半導体集積回路装置において、
前記カウンタ回路は、さらに、前記複数位相のパルス信号を用いて時系列的に状態を変化させるステート信号を発生し、
前記第２パルス信号を生成する回路は、前記複数位相のパルス信号と前記ステート信号を用いて前記第２パルス信号を生成することを特徴とする半導体集積回路装置。
【請求項５】
外部から入力される第１パルス信号を受けて、前記第１パルス信号のパルス幅よりも細いパルス幅を備えた基準パルス信号を生成する回路と、
前記第１パルス信号を受けてリセット信号を発生する回路と、
リング状に接続された複数段の遅延回路からなり、前記基準パルス信号を遅延させながら巡回させる遅延リング回路と、
前記複数段の遅延回路における各段の出力から得られる複数位相のパルス信号を用いて、所望のパルス幅を備えた第２パルス信号を生成する回路と、
前記複数段の遅延回路における各段の出力から得られる複数位相のパルス信号をカウントするカウンタ回路とを備え、
前記複数段の遅延回路の中の１つとなる初段の遅延回路の入力部には、複数入力を備えた論理演算素子が設けられ、
前記複数入力の１つには、前記基準パルス信号が入力され、
前記複数入力の他の１つには、前記複数段の遅延回路の中の他の１つとなる最終段の遅延回路からの出力が入力され、
前記遅延リング回路は、前記リセット信号または前記カウンタ回路からの出力信号を受けて前記複数段の遅延回路の各ノードを初期状態に設定する手段を有することを特徴とする半導体集積回路装置。
【請求項６】
請求項５記載の半導体集積回路装置において、
前記基準パルス信号を生成する回路は、前記第１パルス信号と、前記第１パルス信号を遅延させたパルス信号との論理演算を用いて前記基準パルス信号を生成することを特徴とする半導体集積回路装置。
【請求項７】
請求項５記載の半導体集積回路装置において、
前記第２パルス信号を生成する回路は、前記複数位相のパルス信号の中から２つのパルス信号を用いて、一方のパルス信号で前記第２パルス信号の立ち上がりを形成し、他方のパルス信号で前記第２パルス信号の立ち下がりを形成するラッチ回路を含むことを特徴とする半導体集積回路装置。
【請求項８】
請求項５記載の半導体集積回路装置において、
前記複数段の遅延回路のそれぞれは、
複数入力の中の１つが前記リセット信号または前記カウンタ回路からの出力信号に接続された第１論理演算素子および第２論理演算素子と、
前記第１論理演算素子と前記第２論理演算素子との間で直列に接続された奇数個のインバータ回路とを含み、
前記リセット信号または前記カウンタ回路からの出力信号の入力に伴い前記複数段の遅延回路の各ノードを初期状態に設定することを特徴とする半導体集積回路装置。
【請求項９】
互いにリング状に接続され、パルス信号を遅延させながら巡回させる遅延リング回路と、
前記遅延リング回路内のそれぞれ異なるノードから取り出した複数のパルス信号を用いて所望のパルス幅を備えたパルス信号を生成する回路とを有することを特徴とする半導体集積回路装置。
【請求項１０】
請求項９記載の半導体集積回路装置において、
さらに、前記生成したパルス信号が所定の回数発生した際に、前記遅延リング回路内でのパルス信号の巡回を停止する回路を有することを特徴とする半導体集積回路装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、半導体集積回路装置に関し、特に外部クロックからこれよりも高速な内部クロックを生成する回路を含んだ半導体集積回路装置に適用して有効な技術に関する。
【背景技術】
【０００２】
本発明者が検討したところによれば、クロック生成回路の技術に関しては、以下のようなものが考えられる。
【０００３】
例えば、特許文献１には、外部クロックと内部クロックのスキューを補償する装置であり、単位遅延素子をリング状に配置し、内部クロックの立ち上がりで発生するパルスをこのリング内で回転させる構成を含んだクロック信号遅延装置が示されている。このリングは遅延時間を設定するものであり、リング内でのパルスの回転数のカウント結果から遅延時間の粗設定が行われ、リング内でのパルスが停止した位置から遅延時間の微設定が行われる。このような構成を用いると、単位遅延素子の数を減少させることが可能となる。
【０００４】
また、特許文献２には、特許文献１と同様に、単位遅延素子をリング状に配置した構成を含んだリングレジスタ制御型遅延固定ループが示されている。このリングは、入力クロックと出力クロックの位相検出結果に応じて、入力クロックを遅延させて出力クロックを生成するものとなっている。具体的には、位相検出結果に応じて、入力クロックのリング内での入射位置および回転数を定めることで入力クロックを遅延させた出力クロックを生成する。このような構成を用いると、単位遅延素子の数を減少させることができ、小面積な遅延固定ループ（ＤＬＬ）を実現できる。
【特許文献１】特開平１１−３０６７５９号公報
【特許文献２】特開２００３−６９４２４号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
ところで、前記のようなクロック生成回路の技術について、本発明者が検討した結果、以下のようなことが明らかとなった。
【０００６】
通常、半導体チップに対して供給されるクロック信号は、５０％のデューティ比を備えたものとなっている。このようなデューティ比が揃ったクロック信号は、ＰＬＬ（Ｐｈａｓｅ  Ｌｏｃｋｅｄ  Ｌｏｏｐ）回路やＤＬＬ（Ｄｅｌａｙ  Ｌｏｃｋｅｄ  Ｌｏｏｐ）回路等によって生成される。ところが、このようなクロック信号は、ＰＬＬ回路等の直後では５０％のデューティ比を保っているが、半導体チップ内部のクロックツリーを通して伝送されると、プロセス・電源電圧・温度などの要因により５０％からずれてしまう。このようなデューティ比の変化は、半導体チップ内部に限らず、半導体チップ外部の例えば実装基板上の伝送線路などによっても生じる。近年では、クロック信号の高速化が進んでおり、この高速化に伴いデューティ比の変化も益々顕著に現れつつある。
【０００７】
一方、半導体チップは、一般的に、供給されたクロック信号（外部クロック信号）を基に内部クロック信号を生成し、内部クロック信号に基づいて半導体チップ内部の動作を行う。このような半導体チップの中には、外部クロック信号よりも高速な内部クロック信号を生成し、半導体チップ内部を外部クロック信号の速度によりも高速で動作させるようなものも多く存在する。このような半導体チップでは、例えば、内部にＰＬＬ回路等を搭載し、これによって外部クロック信号を逓倍化して内部クロック信号を生成するような方式が用いられる。ＣＰＵ等のロジック系の半導体チップなどではこのような方式が有益となるが、例えば、メモリ等の半導体チップでは、外部クロック信号の１周期の間に、ある決まったパルス幅を備えたパルス信号を任意の回数だけ発生させたいような場合がある。このような場合、ＰＬＬ回路等による方式を適用するのは困難である。
【０００８】
したがって、このような半導体チップでは、例えば、図８に示すような回路を用いることが考えられる。図８は、本発明の前提として検討したクロック生成回路の一例を示すものであり、（ａ）は回路図、（ｂ）は（ａ）の動作波形図である。図８（ａ）のクロック生成回路では、外部クロック信号ＣＬＫを遅延および反転させた信号となる遅延回路ＤＬＹ１の出力信号と外部クロック信号ＣＬＫとをＮＡＮＤ演算および反転することによって、内部クロック信号ＣＬＫＡを生成している。さらに、ＤＬＹ１の出力信号を遅延および反転させた信号となる遅延回路ＤＬＹ２の出力信号と、ＤＬＹ２の出力信号を更に遅延および反転させた信号となる遅延回路ＤＬＹ３の出力信号とをＮＡＮＤ演算および反転することによって、内部クロック信号ＣＬＫＢを生成している。
【０００９】
このような回路を用いることで、図８（ｂ）に示すように外部クロック信号ＣＬＫの１周期の間に、所定のパルス幅を備えた２つの内部クロック信号ＣＬＫＡ，ＣＬＫＢをシリアルに生成できる。この際に、ＣＬＫＡ，ＣＬＫＢのパルス幅は、それぞれＤＬＹ１，ＤＬＹ３の遅延時間によって調整でき、ＣＬＫＡとＣＬＫＢの間隔はＤＬＹ２の遅延時間によって調整できる。ただし、ＣＬＫＡ，ＣＬＫＢのパルス幅を的確に調整するためには、外部クロック信号ＣＬＫの‘Ｈ’区間を図８（ｂ）の区間Ｔｗよりも長く確保する必要がある。そうすると、仮に前述したような各種要因によりデューティ比が変動し、外部クロック信号ＣＬＫの‘Ｈ’区間が短くなった場合には、所望の内部クロック信号を発生できないことになる。
【００１０】
そこで、本発明の目的の１つは、このような問題等を鑑み、様々なパルス発生仕様に柔軟に対応することが可能な半導体集積回路装置を提供することにある。本発明の前記ならびにその他の目的と新規な特徴は、本明細書の記述および添付図面から明らかになるであろう。
【課題を解決するための手段】
【００１１】
本願において開示される発明のうち、代表的なものの概要を簡単に説明すれば、次のとおりである。
【００１２】
本発明による半導体集積回路装置は、基準パルス信号を生成する回路と、リング状に接続された複数の遅延回路からなり入力された基準パルス信号を巡回させる遅延リング回路と、複数の遅延回路の各出力から得られる複数位相のパルス信号を用いて、所望のパルス幅を備えた第２パルス信号を生成する回路とを有するものである。なお、基準パルス信号は、例えばクロックの‘Ｈ’パルス信号などである第１パルス信号を受けて生成され、このパルス幅よりも細いパルス幅を備えたものとなっている。
【００１３】
このような構成によると、遅延回路の遅延時間の設定や複数位相のパルス信号のどれを用いるかによって、所望のパルス幅を備えた第２パルス信号を複数回連続して生成することが可能となる。また、クロックから一旦細いパルス幅を備えた基準パルス信号を生成し、この基準パルス信号を巡回させて第２パルス信号を生成しているが、この基準パルス信号は、クロックのデューティ比が変動しても容易または確実に生成することが可能であるため、クロックのデューティ比の変動によらず安定して第２パルス信号を生成できる。このようなことから、様々なパルス発生仕様に柔軟に対応することが可能な半導体集積回路装置が実現できる。また、遅延リング回路を用いることで小面積化も可能となる。
【００１４】
また、本発明による半導体集積回路装置は、前述したような構成に加えて、複数位相のパルス信号の発生回数が所定の回数となった際に停止信号を出力するカウンタ回路を備え、遅延リング回路が、この停止信号を受けて、基準パルス信号の巡回を停止するものとなっている。これによって、前述した第２パルス信号のパルス幅に加えて、その発生回数も制御することができるため、様々なパルス発生仕様に柔軟に対応することが可能となる。また、第２パルス信号が所定の回数発生した後は基準パルス信号の巡回が停止するため、無駄な電力消費などを抑えることができる。
【００１５】
また、本発明による半導体集積回路装置は、前述したような構成に加えて、第１パルス信号を受けてリセット信号を発生する回路を備え、遅延リング回路が、このリセット信号を受けて、遅延リング回路内の各ノードを初期状態に設定するものとなっている。これによって、基準パルス信号を巡回させる前に、遅延リング回路内で生じている恐れがある不要なパルスを除去できるため、誤動作等を防止することが可能となる。
【発明の効果】
【００１６】
本願において開示される発明のうち、代表的なものによって得られる効果を簡単に説明すれば、様々なパルス発生仕様に柔軟に対応することが可能な半導体集積回路装置を実現できる。
【発明を実施するための最良の形態】
【００１７】
以下、本発明の実施の形態を図面に基づいて詳細に説明する。なお、実施の形態を説明するための全図において、同一の部材には原則として同一の符号を付し、その繰り返しの説明は省略する。また、図面において、ＰＭＯＳトランジスタにはゲートに丸印の記号を付すことで、ＮＭＯＳトランジスタと区別することとする。また、図面において、ＭＯＳトランジスタの基板電位の接続は明記していないが、ＭＯＳトランジスタが正常動作可能な範囲であれば、その接続方法は特に限定しない。
【００１８】
（実施の形態１）
図１は、本発明の実施の形態１による半導体集積回路装置において、その構成概要の一例を示す回路ブロック図であり、（ａ）〜（ｄ）には、各構成要素を分割して示している。まず、図１の構成例において中核となるのが図１（ａ）の回路ブロックである。図１（ａ）の回路ブロックは、例えば、外部クロック信号ＣＬＫが入力され基準パルス信号ＲＰＵＬを出力する基準パルス生成回路ＲＰＧと、ＲＰＵＬが入力され、それに遅延を加えながら巡回させるディレイリング部ＤＬＹＲＧから構成される。
【００１９】
基準パルス生成回路ＲＰＧは、外部クロック信号ＣＬＫを受けて、例えばＣＬＫの‘Ｈ’レベル（第１パルス信号）のパルス幅よりも十分に小さく、動作可能な限り細い‘Ｈ’レベルのパルス幅を備えた基準パルス信号ＲＰＵＬを出力する。ディレイリング部ＤＬＹＲＧは、それぞれリング状に接続されたｎ（ｎ≧２）個の単位遅延ブロックＤＬＹＢＫ［１］〜［ｎ］を含んでいる。基準パルス信号ＲＰＵＬはＤＬＹＢＫ［１］に入力され、ＤＬＹＢＫ［１］の出力がシリアルにＤＬＹＢＫ［２］，ＤＬＹＢＫ［３］，…，ＤＬＹＢＫ［ｎ］に入力され、ＤＬＹＢＫ［ｎ］の出力がＤＬＹＢＫ［１］の入力に帰還される。ここで、ＤＬＹＢＫ［１］〜［ｎ］の出力は、それぞれ出力信号ＯＵＴ［１］〜［ｎ］となっている。
【００２０】
各単位遅延ブロックＤＬＹＢＫ［１］〜［ｎ］のそれぞれは、例えば、図１（ｂ）に示すような構成となっている。図１（ｂ）に示す単位遅延ブロックＤＬＹＢＫは、２入力のＮＯＲ回路ＮＲと、その出力に接続された遅延回路ＤＬＹＡから構成される。遅延回路ＤＬＹＡは、ＮＯＲ回路ＮＲの出力を遅延および反転させると共に、リセット信号ＲＳＴまたはストップ信号ＳＴＰが入力された際に、ＤＬＹＡを構成する各回路のノードを固定し、出力論理を固定する機能を備える。このようなＤＬＹＢＫを図１（ａ）のＤＬＹＢＫ［１］〜［ｎ］に適用した場合、ＤＬＹＢＫ［１］では、ＮＯＲ回路ＮＲの一方に基準パルス信号ＲＰＵＬが入力され、他方にＤＬＹＢＫ［ｎ］の遅延回路ＤＬＹＡの出力信号が入力され、ＤＬＹＢＫ［１］のＤＬＹＡの出力信号がＤＬＹＢＫ［２］のＮＲの一方に入力されることになる。また、ＤＬＹＢＫ［２］のＮＲの他方やＤＬＹＢＫ［３］〜［ｎ］のＮＲの他方は、接地電圧ＧＮＤに固定させているため、これらのＮＲは、実質的にインバータ回路として機能する。
【００２１】
図１（ａ）のように構成された回路ブロックは、ＤＬＹＢＫ［１］に対して基準パルス生成回路ＲＰＧから基準パルス信号（細いパルス幅を備えた信号）ＲＰＵＬが入力されると、この入力されたＲＰＵＬを、ディレイリング部ＤＬＹＲＧ内で巡回させるように動作する。この際に、この入力されたＲＰＵＬは、一定の時間間隔毎に、出力信号ＯＵＴ［１］，ＯＵＴ［２］，…，ＯＵＴ［ｎ］，ＯＵＴ［１］，…として順次出力される。すなわち、ＯＵＴ［１］〜［ｎ］からは、それぞれ位相が異なる複数位相のパルス信号が出力される。ディレイリング部ＤＬＹＲＧ内でのＲＰＵＬの巡回は、リセット信号ＲＳＴまたはストップ信号ＳＴＰが入力されると停止し、ＯＵＴ［１］〜［ｎ］の論理が固定される。
【００２２】
出力信号ＯＵＴ［１］〜［ｎ］において順次出力されたＲＰＵＬは、図１（ｃ）および図１（ｄ）のような回路ブロックに入力される。図１（ｃ）では、パルス生成回路ＩＰＧが示されており、ＩＰＧは、例えば、ＯＵＴ［１］〜［ｎ］の中の２本（場合によっては１本）などを用いて所望のパルス幅を備えた内部パルス信号（第２パルス信号）ＩＰＵＬを生成する。この際に、ＩＰＵＬのパルス幅や、ＩＰＵＬ間の間隔（ＩＰＵＬの発生周期）は、単位遅延ブロックＤＬＹＢＫの遅延時間や、ＯＵＴ［１］〜［ｎ］の中のどの位相を用いてＩＰＵＬを生成するかによって調整可能となる。
【００２３】
一方、図１（ｄ）では、カウンタ回路ＣＵＮＴが示されており、ＣＵＮＴは、ＯＵＴ［１］〜［ｎ］の中のいずれか（単数本または複数本）を用いて、そのパルス発生回数をカウントする。そして、ＣＵＮＴは、パルス発生回数が所定の回数に達した場合にストップ信号ＳＴＰを出力する。このストップ信号ＳＴＰは、図１（ａ）のディレイリング部ＤＬＹＲＧに入力され、これによってＲＰＵＬの巡回が停止し、ＯＵＴ［１］〜［ｎ］が所定の論理に固定される。そうすると、図１（ｃ）のパルス生成回路ＩＰＧも、内部パルス信号ＩＰＵＬの生成を停止することになる。
【００２４】
なお、図１（ａ），（ｂ）におけるリセット信号ＲＳＴは、電源投入時などの他、例えば、外部クロック信号ＣＬＫが入力される度にその直後に発生するようにしておく。これによって、基準パルス信号ＲＰＵＬがディレイリング部ＤＬＹＲＧ内を巡回する前にＤＬＹＲＧ内の不要なパルスを除去でき、誤動作を防止できる。また、各単位遅延ブロックＤＬＹＢＫの遅延時間をＣＬＫの周期に比べて十分に小さくなるように構成しておくと、ＣＬＫの１周期の間に出力信号ＯＵＴ［１］〜［ｎ］がそれぞれ複数回出力され、これに伴い、ＣＬＫの１周期の間に内部パルス信号ＩＰＵＬを複数回生成できる。そして、次のＣＬＫが入力されると、ＤＬＹＲＧが一旦リセットされ、再び同様の動作が行われる。
【００２５】
以上のような構成および動作によって、例えば、外部クロック信号ＣＬＫの１周期内に、所定のパルス幅を備えた内部パルス信号ＩＰＵＬを所定の回数だけ生成することが可能となる。この際に、図１（ａ）のようなディレイリング部ＤＬＹＲＧを用いているため、回路面積の低減が可能となる。すなわち、例えば、内部パルス信号ＩＰＵＬの発生回数を多くしたい場合、図８（ａ）のような構成ではその分遅延回路ＤＬＹを数珠繋ぎに追加する必要があるが、ディレイリング部ＤＬＹＲＧではその必要がない。
【００２６】
さらに、外部クロック信号ＣＬＫのデューティ比が変動した場合でも、その影響を受けることがない。すなわち、図１（ａ）では基準パルス生成回路ＲＰＧによって外部クロック信号ＣＬＫから可能な限り細いパルス幅を備えた基準パルス信号ＲＰＵＬを生成しており、このＲＰＵＬは、細いパルス幅でよいためＣＬＫのデューティ比が比較的大きく変動しても問題なく生成することが可能である。そして、内部パルス信号ＩＰＵＬは、この安定して生成可能なＲＰＵＬに基づいて生成されるため、ＩＰＵＬも、クロック信号ＣＬＫのデューティ比の影響を受けずに安定生成が可能となる。
【００２７】
図２は、図１（ａ），（ｂ）の詳細な構成の一例を示す回路図である。図３は、図１（ｃ），（ｄ）の詳細な構成の一例を示す回路図である。図４は、図２および図３の動作の一例を示す波形図である。図２では、前述した基準パルス生成回路ＲＰＧおよびディレイリング部ＤＬＹＲＧと、その他の回路としてリセット信号ＲＳＴの生成回路が示されている。基準パルス生成回路ＲＰＧは、例えば、インバータ回路ＩＮＶ２０〜ＩＮＶ２２と、ＮＡＮＤ回路ＮＤ２０と、それぞれ５段のインバータ回路からなる２つの遅延回路ＤＬＹ４，ＤＬＹ５から構成される。ＩＮＶ２０には、外部クロック信号ＣＬＫが入力される。ＩＮＶ２０の出力は、ＩＮＶ２１を介してＮＤ２０の一方の入力となり、ＮＤ２０の他方には、ＩＮＶ２０の出力からＤＬＹ４とＤＬＹ５を介した信号が入力される。そして、ＮＤ２０の出力から、ＩＮＶ２２を介して基準パルス信号ＲＰＵＬが生成される。
【００２８】
また、ＩＮＶ２０の出力とＤＬＹ４の出力がＮＯＲ回路ＮＲ２０に入力され、ＮＲ２０の出力がＮＯＲ回路ＮＲ２１の一方の入力に接続され、ＮＲ２１の出力から反転リセット信号ＲＳＴＢが生成される。ＮＲ２１の他方の入力には、ＮＡＮＤ回路ＮＤ２１の出力が接続され、ＮＤ２１の一方の入力には、リング活性化信号ＲＩＮＧＥＮが接続され、ＮＤ２１の他方の入力には、動作選択信号ＰＳの反転信号ＰＳ１Ｂが接続される。なお、ＮＤ２１の出力からは、インバータ回路を介して内部クロック活性化信号ＩＣＫＥＮが生成される。
【００２９】
ディレイリング部ＤＬＹＲＧは、ここでは、例えば４つの単位遅延ブロックＤＬＹＢＫ［１］〜［４］を含むものとする。図１（ａ）での説明と同様に、ＤＬＹＢＫ［１］のＮＯＲ回路ＮＲ［１］の一方の入力には、基準パルス信号ＲＰＵＬが接続され、ＮＲ［１］の他方の入力には、ＤＬＹＢＫ［４］の出力（すなわち出力信号ＯＵＴ［４］）が接続される。単位遅延ブロックＤＬＹＢＫ［１］は、ＮＯＲ回路ＮＲ［１］と、その出力に接続された遅延回路ＤＬＹＡから構成される。遅延回路ＤＬＹＡでは、ＮＲ［１］の出力がインバータ回路を介してＮＡＮＤ回路ＮＤ１［１］の一方の入力に接続され、ＮＤ［１］の出力が３段のインバータ回路を介してＮＡＮＤ回路ＮＤ２［１］の一方の入力に接続され、ＮＤ２［１］の出力がインバータ回路を介してＤＬＹＢＫ［２］に接続されている。
【００３０】
なお、単位遅延ブロックＤＬＹＢＫ［２］〜［４］も、ＤＬＹＢＫ［１］と同様の構成であり、図１（ａ）で述べたように、それぞれに含まれるＮＯＲ回路ＮＲ［２］〜［４］の一方の入力は接地電圧ＧＮＤに接続され、他方の入力は前段の単位遅延ブロックＤＬＹＢＫからの出力に接続される。また、ここでは、ＤＬＹＢＫ［１］，［３］，［４］のそれぞれに２つずつ含まれるＮＡＮＤ回路ＮＤ１［１］，ＮＤ２［１］，ＮＤ１［３］，ＮＤ２［３］，ＮＤ１［４］，ＮＤ２［４］の他方の入力には、反転リセット信号ＲＳＴＢが接続されている。一方、ＤＬＹＢＫ［２］に含まれる２つのＮＡＮＤ回路ＮＤ１［２］，ＮＤ２［２］の他方の入力には、図１（ａ）で説明したストップ信号ＳＴＰに該当するステート信号ＳＴＡＴＥ４Ｂが接続されている。
【００３１】
図３では、前述したパルス生成回路ＩＰＧやカウンタ回路ＣＵＮＴなどが示されている。パルス生成回路ＩＰＧは、ここでは、２つの３入力ＮＡＮＤ回路ＮＤ３０，ＮＤ３１を含むＲＳラッチ回路から構成される。ＮＤ３０の３入力の中の１つは、図２のＤＬＹＢＫ［１］の出力信号ＯＵＴ［１］と内部クロック活性化信号ＩＣＫＥＮ（活性化時‘Ｈ’レベル）とをＮＡＮＤ演算した出力が接続され、他の１つは、ＮＤ３１の出力に接続される。また、残りの１つは、動作選択信号ＰＳが‘Ｌ’レベル（外部ＣＬＫスルーモードＯＦＦ）時にはＰＭＯＳトランジスタＭＰ３０を介して‘Ｈ’レベルを出力する回路に接続され、動作選択信号ＰＳが‘Ｈ’レベル（外部ＣＬＫスルーモードＯＮ）時には外部クロック信号ＣＬＫ２Ｄに接続される。したがって、仮に外部ＣＬＫスルーモードＯＮを選択した場合には、ＣＬＫ２ＤでＮＤ３０，ＮＤ３１を含むＲＳラッチ回路が制御され、ＣＬＫ２Ｄの信号をＩＰＵＬへ伝送することになる。一方、ＮＤ３１の３入力の中の１つは、図２のＤＬＹＢＫ［３］の出力信号ＯＵＴ［３］の反転信号に接続され、他の１つは、ＮＤ３０の出力に接続され、残りの１つは、反転リセット信号ＲＳＴＢに接続される。そして、ＮＤ３０の出力から内部パルス信号ＩＰＵＬが生成される。
【００３２】
カウンタ回路ＣＵＮＴは、ここでは、高速性を考慮し、４段のスルーラッチ回路ＬＴ１〜ＬＴ４を用いている。ＬＴ１は、反転リセット信号ＲＳＴＢをデータ入力Ｄとして、図２のＤＬＹＢＫ［２］の出力信号ＯＵＴ［２］をクロック入力ＣＫとしてデータ入力Ｄをラッチする。ＬＴ２は、ＬＴ１の出力をデータ入力Ｄとして、図２のＤＬＹＢＫ［４］の出力信号ＯＵＴ［４］をクロック入力ＣＫとしてデータ入力Ｄをラッチする。ＬＴ３は、ＬＴ２の出力をデータ入力Ｄとして、図２のＤＬＹＢＫ［２］の出力信号ＯＵＴ［２］をクロック入力ＣＫとしてデータ入力Ｄをラッチする。ＬＴ４は、ＬＴ３の出力をデータ入力Ｄとして、図２のＤＬＹＢＫ［３］の出力信号ＯＵＴ［３］をクロック入力ＣＫとしてデータ入力Ｄをラッチする。そして、ＬＴ４の出力の反転信号が、ステート信号（ストップ信号）ＳＴＡＴＥ４Ｂとして、図２のＤＬＹＢＫ［２］に接続される。また、ＬＴ１〜ＬＴ４は、リセット信号ＲＳＴを受けた際、データ出力が‘Ｌ’レベルにリセットされる。
【００３３】
この図２および図３に示した回路は、例えば図４のように動作する。図４に示すように、図２および図３の回路は、例えば外部クロック信号ＣＬＫの１周期の間に、ある一定のパルス幅を備えた２つの内部クロック信号ＩＣＬＫＡ，ＩＣＬＫＢを生成する回路の主要部となっている。この際に、ＩＣＬＫＢは、ＩＣＬＫＡから一定時間経過後に発生する仕様となっている。なお、最終的にＩＣＬＫＡ，ＩＣＬＫＢを出力する回路は、本発明の本質的な部分ではないため、図２および図３では省略している。
【００３４】
図４においては、まず、動作選択信号ＰＳが‘Ｌ’レベル、リング活性化信号ＲＩＮＧＥＮが‘Ｈ’レベルの状態で、外部クロック信号ＣＬＫが入力される。図２の基準パルス生成回路ＲＰＧは、このＣＬＫを受けて基準パルス信号ＲＰＵＬを生成し、また、図２のＮＯＲ回路ＮＲ２０は、リセット信号ＲＳＴを生成する。この際に、ＲＰＵＬのパルス幅は、遅延回路ＤＬＹ４とＤＬＹ５の遅延時間の合計にほぼ等しくなり、ＲＳＴのパルス幅は、ＤＬＹ４の遅延時間にほぼ等しくなる。図４では、外部クロック信号ＣＬＫのデューティ比が偏っている例を示しているが、このような場合でも、ＤＬＹ４とＤＬＹ５の遅延時間をＣＬＫのパルス幅（‘Ｈ’レベル）よりも十分に短くすることで、ＲＰＵＬのパルス幅には影響が生じない。すなわち、ＤＬＹ４とＤＬＹ５の遅延時間よりもＣＬＫのパルス幅が短くならない限り問題は生じない。
【００３５】
リセット信号ＲＳＴ（反転リセット信号ＲＳＴＢ）は、図２のディレイリング部ＤＬＹＲＧ内のＤＬＹＢＫ［１］，［３］，［４］に入力され、これによってＤＬＹＲＧ内に生じている恐れがある不要なパルスが除去される。この動作は、ＲＳＴが‘Ｈ’レベル（ＲＳＴＢが‘Ｌ’レベル）の間行われ、これに伴いＤＬＹＢＫ［１］，［３］，［４］内の各ノードの論理が固定され、出力信号ＯＵＴ［１］，［３］，［４］が‘Ｌ’レベルに固定される。なお、出力信号ＯＵＴ［２］に関しても、ＯＵＴ［１］の‘Ｌ’レベルが伝達することで‘Ｌ’レベルに固定される。
【００３６】
このようにしてＤＬＹＲＧ内のパルス除去が行われ、ＲＳＴが‘Ｌ’レベルに戻る一方で、ＤＲＹＢＫ［１］のＮＯＲ回路ＮＲ［１］に対しては、基準パルス信号ＲＰＵＬが入力される。このＲＰＵＬは、ＤＬＹＢＫ［１］の遅延時間を経て出力信号ＯＵＴ［１］となり、その後、ＤＬＹＢＫ［２］の遅延時間を経て出力信号ＯＵＴ［２］となり、以降同様にして、順次、出力信号ＯＵＴ［３］，［４］が得られる。その後も、ＯＵＴ［４］がＤＬＹＢＫ［１］に帰還され、同様にして各単位遅延ブロックの遅延時間を単位としてそれぞれ位相が異なる出力信号ＯＵＴ［１］〜［４］が得られる。
【００３７】
ここで、ＯＵＴ［１］とＯＵＴ［３］は、図３のパルス生成回路（ＲＳラッチ）ＩＰＧに入力され、ＯＵＴ［１］で立ち上がりＯＵＴ［３］で立ち下がる内部パルス信号ＩＰＵＬが得られる。一方、図３のスルーラッチ回路ＬＴ１〜ＬＴ４は、それぞれのデータ出力ＳＴＡＴＥ１〜ＳＴＡＴＥ４がＲＳＴによって‘Ｌ’レベルとなり、その後、ＬＴ１のデータ出力ＳＴＡＴＥ１がＯＵＴ［２］によって‘Ｈ’レベルとなる。以降、ＯＵＴ［４］，［２］，［３］によって、ＬＴ２，３，４のデータ出力ＳＴＡＴＥ２，３，４が順次‘Ｈ’レベルとなる。
【００３８】
データ出力ＳＴＡＴＥ４が‘Ｈ’レベルになると、その反転データ出力ＳＴＡＴＥ４Ｂが図２のＤＬＹＢＫ［２］に入力される。そうすると、ＤＬＹＢＫ［２］内で入口付近と出口付近に設けたＮＡＮＤ回路ＮＤ１［２］，ＮＤ２［２］の出力論理が‘Ｈ’レベルに固定され、これに伴いＮＤ１［２］とＮＤ２［２］に挟まれた３段のインバータ回路の入出力論理も固定され、出力信号ＯＵＴ［２］が‘Ｌ’レベルに固定される。これによって、ＤＬＹＢＫ［２］以降のパルス伝達が停止し、ＯＵＴ［３］，［４］も‘Ｌ’レベルを維持することになる。なお、ＯＵＴ［２］が‘Ｌ’レベルに固定された後、ＤＬＹＢＫ［２］より前のＤＬＹＢＫ［１］においては、１回分の出力信号ＯＵＴ［１］を発生することになるが、この信号はＤＬＹＢＫ［２］以降には伝達されず、ＤＬＹＲＧ内のパルス巡回が完全に停止する。また、次の外部クロック信号ＣＬＫが入力されると、同様にリセット信号ＲＳＴや基準パルス信号ＲＰＵＬが発生し、パルス巡回が再び行われる。
【００３９】
図４に示す内部クロック信号ＩＣＬＫＡ，ＩＣＬＫＢは、回路は図示しないが、内部パルス信号ＩＰＵＬとデータ出力（ステート信号）ＳＴＡＴＥ１〜４を用いて生成することができる。例えば、ＩＣＬＫＡは、ＳＴＡＴＥ２が‘Ｌ’レベルの区間でＩＰＵＬを出力すればよく、ＩＣＬＫＢは、ＳＴＡＴＥ２が‘Ｈ’レベルでＳＴＡＴＥ４が‘Ｌ’レベルの区間にＩＰＵＬを出力すればよい。
【００４０】
なお、図２および図３の回路は、図１の構成の一例であって、勿論図２および図３のような回路に限定されるものではない。例えば、図３においては、外部クロック信号ＣＬＫの１周期内で発生させたいパルスの幅および回数や各種タイミングマージンなどに応じて、スルーラッチ回路ＬＴの段数や、出力信号ＯＵＴ［１］〜［４］の接続方法を変えればよい。また、場合によっては、スルーラッチ回路ＬＴの代わりに例えばエッジトリガのカウンタ回路などを用いて、単純に所定の出力信号の発生回数を所定の数だけカウント後にパルス巡回の停止信号を発生するような方式でもよい。また、図２においては、例えば、反転リセット信号ＲＳＴＢとデータ出力（ストップ信号）ＳＴＡＴＥ４ＢのＯＲ出力を各単位遅延ブロックＤＬＹＢＫ［１］〜［４］に入力するようなことも可能であり、また、ＲＰＵＬやＲＳＴ等の極性を変えて、ＤＬＹＢＫ内の論理演算素子（ＮＡＮＤ回路やＮＯＲ回路）の種類を変更するようなことも勿論可能である。
【００４１】
以上、本発明の実施の形態１の半導体集積回路装置を用いることで、例えば、外部クロック信号の１周期内に、所定のパルス幅を備えた内部クロック信号を所定の回数だけ生成するといったような様々なパルス発生仕様に対して柔軟に対応することが可能となる。また、回路面積の低減が実現できる。さらに、外部クロック信号のデューティ比に依存せず、常に安定した内部クロック信号を生成可能となる。
【００４２】
（実施の形態２）
本実施の形態２では、実施の形態１で述べた図２および図３のような回路を例えばＳＲＡＭ（Ｓｔａｔｉｃ  Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）などのメモリ回路に適用した場合を想定して、その構成例および動作例について説明する。図５は、本発明の実施の形態２による半導体集積回路装置において、その構成概要の一例を示す回路ブロック図である。図６は、図５の半導体集積回路装置の動作例を示す波形図である。
【００４３】
図５に示す半導体集積回路装置は、例えば、内部クロック生成回路ＩＣＬＫ＿ＧＥＮと、デコーダ回路ＤＥＣと、アドレスラッチ回路ＡＤＤ＿ＬＴと、データ入出力回路ＤＩＯと、メモリアレイＭＥＭ＿ＡＲＹなどから構成される。内部クロック生成回路ＩＣＬＫ＿ＧＥＮは、例えば、前述したような図２および図３の回路を含み、外部クロック信号ＣＬＫが入力され、内部クロック信号ＣＬＫＩ＜１：０＞を出力する。アドレスラッチ回路ＡＤＤ＿ＬＴは、外部アドレス信号ＡＤＲＡ，ＡＤＲＢやＣＬＫＩ＜１：０＞が入力され、内部アドレス信号ＡＤＲＩを出力する。
【００４４】
デコーダ回路ＤＥＣは、ＡＤＲＩが入力され、メモリセル選択信号ＷＤを出力する。データ入出力回路ＤＩＯは、外部データ入力信号ＤＩＮやＣＬＫＩ＜１：０＞が入力され、内部データ入力信号ＤＩＮＩを出力すると共に、内部データ出力信号ＤＯＵＴＩが入力され、外部データ出力信号ＤＯＵＴを出力する。メモリアレイＭＥＭ＿ＡＲＹは、アレイ状に配置された複数のＳＲＡＭメモリセルを含み、ＷＤやＤＩＮＩが入力され、ＤＯＵＴＩを出力する。
【００４５】
このような半導体集積回路装置は、例えば、図６のように動作する。まず、外部クロック信号ＣＬＫが入力されると、ＣＬＫの１周期の間に内部クロック生成回路ＩＣＬＫ＿ＧＥＮによって、内部クロック信号ＣＬＫ＜０＞が生成され、その一定時間経過後に内部クロック信号ＣＬＫ＜１＞が生成される。この内部クロック信号の生成に際しては、前述した図２および図３に示すような回路で図４のような動作が行われ、図４のＩＣＬＫＡがＣＬＫ＜０＞に対応し、ＩＣＬＫＢがＣＬＫ＜１＞に対応することになる。
【００４６】
また、ＣＬＫの立ち上がりの際に、アドレスラッチ回路ＡＤＤ＿ＬＴに対して外部アドレス信号ＡＤＲＡ，ＡＤＲＢが入力され、これらの信号はＡＤＤ＿ＬＴによってラッチされる。ＡＤＤ＿ＬＴは、このラッチされているアドレス信号を、ＣＬＫ＜０＞およびＣＬＫ＜１＞のタイミングでそれぞれ内部アドレス信号ＡＤＲＩとしてデコーダ回路ＤＥＣに出力する。ＤＥＣは、各ＡＤＲＩをデコードし、ＣＬＫの１周期の間にメモリセル選択信号ＷＤ（ＷＤの‘Ｈ’パルス）をメモリアレイＭＥＭ＿ＡＲＹに対して２回出力する。
【００４７】
また、ＣＬＫの立ち上がりの際には、ＡＤＲＡ，ＡＤＲＢに加えて、データ入出力回路ＤＩＯに対し外部データ入力信号ＤＩＮが入力され、ＤＩＯは、このＤＩＮをラッチする。なお、図６では、ＣＬＫの１周期内でリード／ライト動作を行う場合を想定しており、メモリアレイＭＥＭ＿ＡＲＹでは、１回目のＷＤを受けて、それに対応するメモリセルからデータが読み出され、それが内部データ出力信号ＤＯＵＴＩとしてＤＩＯに出力される。ＤＩＯは、ＣＬＫ＜０＞のタイミングを用いてＤＯＵＴＩをラッチすると共に、それを外部データ出力信号ＤＯＵＴとして出力する。
【００４８】
ＤＩＯは、このようなＤＯＵＴの出力と並行して、ＣＬＫ＜１＞のタイミングで、ラッチしているＤＩＮを内部データ入力信号ＤＩＮＩとしてメモリアレイＭＥＭ＿ＡＲＹに出力する。この際に、ＭＥＭ＿ＡＲＹに対しては、ＤＩＮＩに加えて２回目のＷＤが入力されており、ＭＥＭ＿ＡＲＹでは、このＷＤで選択されたメモリセルに対してＤＩＮＩの書き込みが行われる。
【００４９】
以上、本発明の実施の形態２の半導体集積回路装置を用いることで、実施の形態１で述べたような各種効果を備えたメモリ回路を実現できる。また、例えば、ＳＲＡＭなどでは、特に高速性が要求されるため、ＳＲＡＭをＣＰＵ等の内部に搭載した場合や、ＳＲＡＭを単体として誘電体基板上に実装した場合においても、外部クロック信号ＣＬＫのデューティ比が大きく変動する恐れがある。このような場合でも、図５のような半導体集積回路装置を用いることで、確実にメモリ動作を行うことが可能となる。
【００５０】
（実施の形態３）
本実施の形態３では、実施の形態１で述べた図１のような回路を、例えば非パイプライン方式の除算器に適用した場合を想定して説明を行う。図７は、本発明の実施の形態３による半導体集積回路装置において、その構成例および動作例を示す説明図である。図７では、非パイプライン方式の除算器の概略構成が示されている。非パイプライン方式の除算器は、例えば、浮動小数点の除算を行うアルゴリズムをハードウエア化したものである。その構成および動作の概要は、まず、与えられた除数や被除数が非正規化数であった場合に、バレルシフタを用いて正規化を行う。次に、指数部同士の減算と、仮数部同士の除算を行い、正規化および丸めを行って商を出力する。また、その他、商の符号を生成したり、除数が０であった場合等の例外処理も行う。
【００５１】
ここで、仮数部同士の除算を行う際には、減算シフト法と呼ばれる方式を用いることが知られている。この減算シフト法をハードウエアで実現する際、図７に示すように、減算シフトを３回行う回路を順序回路によって８回巡回させるような処理が行われる。このような巡回を制御する回路として、前述した図１に示すような回路を用いることが有益となる。すなわち、例えば、外部クロック信号が入力された際に、外部クロック信号の１周期の間に、同一パルス幅の内部クロック信号を８回生成し、この内部クロック信号に基づいて減算シフトを３回行う回路を動作させる。
【００５２】
このように、本発明の実施の形態３の半導体集積回路装置を用いることで、実施の形態１で述べたような各種効果を備えた除算器を実現できる。また、非パイプライン方式の除算器においては、通常、演算速度が外部クロック信号の速度に支配されるため、除算器の回路が備えている速度性能を最大に発揮させることが困難となっている。そこで、除算器内に、前述したような独自の内部クロック信号を生成する回路を設け、その内部クロック信号の周期等を除算器の最大速度に設定すると、一般的に長い時間が必要とされる浮動小数点の除算処理を高速で行うことが可能となる。
【００５３】
以上、本発明者によってなされた発明を実施の形態に基づき具体的に説明したが、本発明は前記実施の形態に限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能であることはいうまでもない。
【産業上の利用可能性】
【００５４】
本発明の半導体集積回路装置は、所定のパルス幅を備えたパルス信号を所定の回数だけ発生させることが必要となるデバイス全般に対して広く適用可能であり、中でも特に、高速性や小面積化などが要求されるメモリ回路や高速ロジック回路などに適用して有益なものとなる。
【図面の簡単な説明】
【００５５】
【図１】本発明の実施の形態１による半導体集積回路装置において、その構成概要の一例を示す回路ブロック図であり、（ａ）〜（ｄ）には、各構成要素を分割して示している。
【図２】図１（ａ），（ｂ）の詳細な構成の一例を示す回路図である。
【図３】図１（ｃ），（ｄ）の詳細な構成の一例を示す回路図である。
【図４】図２および図３の動作の一例を示す波形図である。
【図５】本発明の実施の形態２による半導体集積回路装置において、その構成概要の一例を示す回路ブロック図である。
【図６】図５の半導体集積回路装置の動作例を示す波形図である。
【図７】本発明の実施の形態３による半導体集積回路装置において、その構成例および動作例を示す説明図である。
【図８】本発明の前提として検討したクロック生成回路の一例を示すものであり、（ａ）は回路図、（ｂ）は（ａ）の動作波形図である。
【符号の説明】
【００５６】
ＡＤＤ＿ＬＴ  アドレスラッチ回路
ＡＤＲＡ，ＡＤＲＢ  外部アドレス信号
ＡＤＲＩ  内部アドレス信号
ＣＫ  クロック入力
ＣＬＫ，ＣＬＫ２Ｄ  外部クロック信号
ＣＵＮＴ  カウンタ回路
Ｄ  データ入力
ＤＥＣ  デコーダ回路
ＤＩＮ  外部データ入力信号
ＤＩＮＩ  内部データ入力信号
ＤＩＯ  データ入出力回路
ＤＫＹＢＫ  単位遅延ブロック
ＤＫＹＲＧ  ディレイリング部
ＤＬＹ，ＤＬＹＡ  遅延回路
ＤＯＵＴ  外部データ出力信号
ＤＯＵＴＩ  内部データ出力信号
ＧＮＤ  接地電圧
ＩＣＬＫ＿ＧＥＮ  内部クロック生成回路
ＩＣＬＫＡ，ＩＣＬＫＢ，ＣＬＫＩ  内部クロック信号
ＩＮＶ  インバータ回路
ＩＰＧ  パルス生成回路
ＬＴ  スルーラッチ回路
ＭＥＭ＿ＡＲＹ  メモリアレイ
ＭＰ  ＰＭＯＳトランジスタ
ＮＤ  ＮＡＮＤ回路
ＮＲ  ＮＯＲ回路
ＯＵＴ  出力信号
ＰＳ  動作選択信号
ＲＩＮＧＥＮ  リング活性化信号
ＲＰＧ  基準パルス生成回路
ＲＰＵＬ  基準パルス信号
ＲＳＴ  リセット信号
ＳＴＡＴＥ  ステート信号
ＳＴＰ  ストップ信号
ＷＤ  メモリセル選択信号
【図１】
2007243667.tif 000003
【図２】
2007243667.tif 000004
【図３】
2007243667.tif 000005
【図４】
2007243667.tif 000006
【図５】
2007243667.tif 000007
【図６】
2007243667.tif 000008
【図７】
2007243667.tif 000009
【図８】
2007243667.tif 000010