(57)【要約】【課題】出力バッファの出力インピーダンスとスルーレートを同時に自動調整すること。【解決手段】本発明に係る半導体集積回路は、出力データが出力される出力端子に接続された複数の出力トランジスタ（ＭＰ１〜ＭＰ３，ＭＮ１〜ＭＮ３）と、インピーダンス制御回路（１００）と、スルーレート制御回路（１０，２０）とを備える。インピーダンス制御回路（１００）は、複数の出力トランジスタのうち出力データの出力時にＯＮされる出力トランジスタを指定する指定信号（ＰＡ〜ＰＣ，ＮＡ〜ＮＣ）を生成する。スルーレート制御回路（１０、２０）は、それらＯＮされる出力トランジスタのそれぞれを駆動する駆動信号（Ｐ１〜Ｐ３，Ｎ１〜Ｎ３）を指定信号に基づいて生成し、且つ、それら駆動信号（Ｐ１〜Ｐ３，Ｎ１〜Ｎ３）のそれぞれの遅延時間を指定信号（ＰＡ〜ＰＣ，ＮＡ〜ＮＣ）に応じて可変に設定する。【選択図】図１
2008125061.tif 000002
【特許請求の範囲】
【請求項１】
出力データが出力される出力端子に接続された複数の出力トランジスタと、
前記複数の出力トランジスタのうち前記出力データの出力時にＯＮされる出力トランジスタを指定する指定信号を生成するインピーダンス制御回路と、
前記ＯＮされる出力トランジスタのそれぞれを駆動する駆動信号を前記指定信号に基づいて生成し、且つ、前記駆動信号のそれぞれの遅延時間を前記指定信号に応じて可変に設定するスルーレート制御回路と
を備える
半導体集積回路。
【請求項２】
請求項１に記載の半導体集積回路であって、
前記スルーレート制御回路は、前記ＯＮされる出力トランジスタの数が少なくなるにつれて、前記それぞれの遅延時間をより長く設定する
半導体集積回路。
【請求項３】
請求項１又は２に記載の半導体集積回路であって、
前記スルーレート制御回路は、前記それぞれの遅延時間を異なる値に設定する
半導体集積回路。
【請求項４】
請求項１乃至３のいずれかに記載の半導体集積回路であって、
前記インピーダンス制御回路は、前記ＯＮされる出力トランジスタによる出力インピーダンスが一定値となるように前記指定信号を設定する
半導体集積回路。
【請求項５】
出力データが出力される出力端子に接続された複数の出力トランジスタと、
前記複数の出力トランジスタのうち前記出力データの出力時にＯＮされる出力トランジスタを指定する指定信号を生成するインピーダンス制御回路と、
前記ＯＮされる出力トランジスタをそれぞれ異なるタイミングで順番にＯＮさせ、且つ、前記異なるタイミング間の間隔を前記指定信号に応じて可変に設定するスルーレート制御回路と
を備える
半導体集積回路。
【請求項６】
請求項５に記載の半導体集積回路であって、
前記スルーレート制御回路は、前記ＯＮされる出力トランジスタの数が少なくなるにつれて、前記間隔をより長く設定する
半導体集積回路。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、半導体集積回路に関する。特に、本発明は、半導体集積回路の出力インピーダンス及びスルーレート（slew rate）を調整する技術に関する。
【背景技術】
【０００２】
半導体集積回路の分野において、出力インピーダンスの調整やスルーレートの調整に関連する技術として、次のものが知られている。
【０００３】
特許文献１には、インピーダンス整合用の制御信号の生成方法が記載されている。当該従来技術によれば、複数のＭＯＳＦＥＴが並列接続された被インピーダンス整合回路のレプリカ回路と外部基準抵抗が直列接続され、それらの接続点での電圧が基準電圧と比較される。インピーダンス制御回路は、その比較結果に基づいて、上記２つの電圧が等しくなるように、レプリカ回路中でＯＮされるＭＯＳＦＥＴの数を決定する制御信号を生成する。この制御信号は、レプリカ回路に供給される。また、この制御信号は、被インピーダンス整合回路にも供給され、それによりＭＯＳＦＥＴの制御が行われる。
【０００４】
特許文献２には、スルーレートを調整するためのスルーレート調整回路が記載されている。当該従来技術によれば、プロセス条件や環境条件に依存せず、外部基準抵抗により自動的にスルーレートが設定される。具体的には、スルーレート調整回路は、外部基準抵抗によって設定される電流値に応じてプリバッファ部の動作電流を決定する。これによって、メインバッファ部への入力波形の傾きがプロセス条件や環境条件に依存せず一定となり、出力バッファ回路のスルーレートが制御される。
【０００５】
特許文献３には、外部からの制御信号にしたがって出力インピーダンスの切り替えが可能な出力バッファ回路が記載されている。また、この出力バッファ回路は、システムに実装された状態で、周囲環境の変動に対してクロスポイントやスルーレートの変動を十分に補償する。具体的には、その出力バッファ回路は、メインバッファ部とプリバッファ部とを備える。メインバッファ部は、複数のＭＯＳＦＥＴを備え、負荷を駆動するＭＯＳＦＥＴの数を外部からの制御信号に応じて変更することにより出力インピーダンスを切り替える。プリバッファ部は、外部からの制御信号に応じて駆動能力を変更し、スルーレートの制御を行う。すなわち、この出力バッファ回路は、外部から設定される出力インピーダンスに応じてスルーレートを補償するように構成されている。
【０００６】
特許文献４には、インピーダンス調整とスルーレート調整を互いに独立して行なうための技術が記載されている。当該従来技術に係る半導体集積回路装置は、出力回路と、第１制御手段と、第２制御手段を備えている。出力回路は、並列に接続された複数の出力ＭＯＳＦＥＴを備えている。第１制御手段は、インピーダンス調整コードに基づいて、複数の出力ＭＯＳＦＥＴのうちオンされるものを選択する。一方、第２制御手段は、スルーレート調整コードに基づいて、オンされる出力ＭＯＳＦＥＴの駆動信号を調整する。インピーダンス調整コードとスルーレート調整コードは別々であり、それにより、インピーダンスとスルーレートを互いに影響を及ぼすことなく独立に設定することが可能となる。
【０００７】
【特許文献１】特開２００４−３２７２１号公報
【特許文献２】特開２００２−２６７１２号公報
【特許文献３】特開２００３−１８８７０５号公報
【特許文献４】特開２００４−３２７６０２号公報
【発明の開示】
【発明が解決しようとする課題】
【０００８】
出力バッファの出力インピーダンスやスルーレートは、製造ばらつきによって、チップ毎にばらつく可能性がある。また、電源電圧や温度等の動作環境の変化によっても、出力インピーダンスやスルーレートは変動してしまう。これらばらつきや変動は、半導体集積回路の誤動作を招く可能性がある。例えば、スルーレートが大き過ぎる場合、オーバーシュートやリンギングといったノイズが顕著になり、そのノイズが半導体集積回路の誤動作を引き起こす。そのようなノイズを低減するために、出力インピーダンスを大きくすることによってスルーレートを小さくすることも考えられる。しかしながらその場合、出力パルスの振幅が十分大きくならず、結果として誤ったデータが出力される可能性がある。
【０００９】
従って、出力インピーダンスを所望の値に保ちつつ、且つ、スルーレートも所望の範囲内に制御することができる技術が望まれる。すなわち、出力インピーダンス及びスルーレートを共に一定値に調整することができる技術が望まれる。ここで、上述の特許文献４に記載された技術によれば、インピーダンス調整とスルーレート調整を互いに独立して行なうために、別々の制御手段及び別々の調整コードが必要である。このことは、回路面積の増大と制御の複雑化を招く。
【課題を解決するための手段】
【００１０】
以下に、［発明を実施するための最良の形態］で使用される番号・符号を用いて、［課題を解決するための手段］を説明する。これらの番号・符号は、［特許請求の範囲］の記載と［発明を実施するための最良の形態］との対応関係を明らかにするために括弧付きで付加されたものである。ただし、それらの番号・符号を、［特許請求の範囲］に記載されている発明の技術的範囲の解釈に用いてはならない。
【００１１】
本発明に係る半導体集積回路は、複数の出力トランジスタ（ＭＰ１〜ＭＰ３，ＭＮ１〜ＭＮ３）と、インピーダンス制御回路（１００）と、スルーレート制御回路（１０，２０）とを備える。複数の出力トランジスタ（ＭＰ１〜ＭＰ３，ＭＮ１〜ＭＮ３）は、出力データ（ＤＡＴＡ）が出力される出力端子（ＯＵＴ）に接続される。インピーダンス制御回路（１００）は、複数の出力トランジスタ（ＭＰ１〜ＭＰ３，ＭＮ１〜ＭＮ３）のうち出力データ（ＤＡＴＡ）の出力時にＯＮされる出力トランジスタを指定する指定信号（ＰＡ〜ＰＣ，ＮＡ〜ＮＣ）を生成する。スルーレート制御回路（１０，２０）は、それらＯＮされる出力トランジスタのそれぞれを駆動する駆動信号（Ｐ１〜Ｐ３，Ｎ１〜Ｎ３）を指定信号（ＰＡ〜ＰＣ，ＮＡ〜ＮＣ）に基づいて生成し、且つ、それら駆動信号（Ｐ１〜Ｐ３，Ｎ１〜Ｎ３）のそれぞれの遅延時間を指定信号（ＰＡ〜ＰＣ，ＮＡ〜ＮＣ）に応じて可変に設定する。
【００１２】
出力インピーダンスは、データ出力時にＯＮされる出力トランジスタを指定信号（ＰＡ〜ＰＣ，ＮＡ〜ＮＣ）で指定することによって制御される。つまり、ＯＮされる出力トランジスタの数を調整することによって、出力インピーダンスを所望の値に制御することが可能である。一方、スルーレートは、それらＯＮされる出力トランジスタのそれぞれのＯＮタイミングを調整することによって制御可能である。そのために、ＯＮされる出力トランジスタのそれぞれの駆動信号（Ｐ１〜Ｐ３，Ｎ１〜Ｎ３）の遅延時間が調整される。
【００１３】
ここで、本発明によれば、スルーレート制御回路（１０，２０）は、駆動信号（Ｐ１〜Ｐ３，Ｎ１〜Ｎ３）のそれぞれの遅延時間を上記指定信号（ＰＡ〜ＰＣ，ＮＡ〜ＮＣ）に基づいて設定する。言い換えれば、スルーレート制御回路（１０，２０）は、出力インピーダンスを所望の値に制御するための指定信号（ＰＡ〜ＰＣ，ＮＡ〜ＮＣ）に応じて、スルーレートも制御する。すなわち、ＯＮされる出力トランジスタの数とそれらのＯＮタイミングは互いに連関しており、出力インピーダンスの調整に連動してスルーレートも自動的に調整される。その結果、出力インピーダンスを所望の値に保ちつつ、且つ、スルーレートも所望の範囲内に制御することが可能となる。従って、出力パルスに関して十分な大きさの振幅が得られ、また、ノイズに起因する誤動作も防止される。
【００１４】
更に、本発明によれば、出力インピーダンス制御用のコードとスルーレート制御用のコードを別々に設ける必要はない。出力インピーダンスを所望の値に制御するための指定信号（ＰＡ〜ＰＣ，ＮＡ〜ＮＣ）は、同時に、スルーレートの制御にも寄与する。従って、回路面積の増大と制御の複雑化が防止される。
【発明の効果】
【００１５】
本発明によれば、出力インピーダンスを所望の値に保ちつつ、且つ、スルーレートも所望の範囲内に制御することが可能となる。従って、出力パルスに関して十分な大きさの振幅が得られ、また、ノイズに起因する誤動作も防止される。また、回路面積の増大と制御の複雑化が防止される。
【発明を実施するための最良の形態】
【００１６】
添付図面を参照して、本発明の実施の形態に係る半導体集積回路を説明する。
【００１７】
１．構成
図１は、本実施の形態に係る半導体集積回路の構成を概略的に示す回路図である。図１において、半導体集積回路は、出力端子ＯＵＴ、出力端子ＯＵＴに接続された出力バッファ１、及び出力バッファ１の出力インピーダンスを制御するインピーダンス制御回路１００を備えている。
【００１８】
出力バッファ１には、例えばセンスアンプによってメモリセルから読み出されたデータＤＡＴＡが、出力データとして供給される。そして、出力バッファ１は、その出力データＤＡＴＡを、出力端子ＯＵＴを通して外部に出力する。図１に示されるように、この出力バッファ１は、プリバッファ１０、メインバッファ１１、プリバッファ２０、及びメインバッファ２１を備えている。
【００１９】
メインバッファ１１は、電源と出力端子ＯＵＴとの間に並列に接続された出力トランジスタＭＰ０〜ＭＰ３を有している。これら出力トランジスタＭＰ０〜ＭＰ３は、ＰＭＯＳトランジスタである。ＰＭＯＳトランジスタＭＰ０〜ＭＰ３の各々のソースは電源に接続されており、そのドレインは出力端子ＯＵＴに接続されている。また、ＰＭＯＳトランジスタＭＰ０〜ＭＰ３のそれぞれのゲートはプリバッファ１０の出力に接続されており、それぞれのゲートには駆動信号Ｐ０〜Ｐ３が入力される。
【００２０】
プリバッファ１０は、インバータ３０、ＮＡＮＤ３１〜３３、及び遅延回路５１〜５３を有している。インバータ３０の入力端子には出力データＤＡＴＡが入力される。ＮＡＮＤ３１の入力端子の一方には、遅延回路５１を通して出力データＤＡＴＡが入力され、その他方には、信号ＰＡが入力される。ＮＡＮＤ３２の入力端子の一方には、遅延回路５２を通して出力データＤＡＴＡが入力され、その他方には、信号ＰＢが入力される。ＮＡＮＤ３３の入力端子の一方には、遅延回路５３を通して出力データＤＡＴＡが入力され、その他方には、信号ＰＣが入力される。インバータ３０、ＮＡＮＤ３１〜３３のそれぞれの出力端子は、出力トランジスタＭＰ０〜ＭＰ３のゲートに接続されており、それぞれの出力信号が上述の駆動信号Ｐ０〜Ｐ３となる。このように、プリバッファ１０は、出力データＤＡＴＡに基づいて、その出力データＤＡＴＡに応じた駆動信号Ｐ０を生成する。更に、プリバッファ１０は、出力データＤＡＴＡと信号ＰＡ〜ＰＣに基づいて、出力データＤＡＴＡに応じた駆動信号Ｐ１〜Ｐ３を生成する。信号ＰＡ〜ＰＣの役割に関しては、後述される。
【００２１】
メインバッファ２１は、グランドと出力端子ＯＵＴとの間に並列に接続された出力トランジスタＭＮ０〜ＭＮ３を有している。これら出力トランジスタＭＮ０〜ＭＮ３は、ＮＭＯＳトランジスタである。ＮＭＯＳトランジスタＭＮ０〜ＭＮ３の各々のソースはグランドに接続されており、そのドレインは出力端子ＯＵＴに接続されている。また、ＮＭＯＳトランジスタＭＮ０〜ＭＮ３のそれぞれのゲートはプリバッファ２０の出力に接続されており、それぞれのゲートには駆動信号Ｎ０〜Ｎ３が入力される。
【００２２】
プリバッファ２０は、インバータ４０、ＮＯＲ４１〜４３、及び遅延回路６１〜６３を有している。インバータ４０の入力端子には出力データＤＡＴＡが入力される。ＮＯＲ４１の入力端子の一方には、遅延回路６１を通して出力データＤＡＴＡが入力され、その他方には、信号ＮＡが入力される。ＮＯＲ４２の入力端子の一方には、遅延回路６２を通して出力データＤＡＴＡが入力され、その他方には、信号ＮＢが入力される。ＮＯＲ４３の入力端子の一方には、遅延回路６３を通して出力データＤＡＴＡが入力され、その他方には、信号ＮＣが入力される。インバータ４０、ＮＯＲ４１〜４３のそれぞれの出力端子は、出力トランジスタＭＮ０〜ＭＮ３のゲートに接続されており、それぞれの出力信号が上述の駆動信号Ｎ０〜Ｎ３となる。このように、プリバッファ２０は、出力データＤＡＴＡに基づいて、その出力データＤＡＴＡに応じた駆動信号Ｎ０を生成する。更に、プリバッファ２０は、出力データＤＡＴＡと信号ＮＡ〜ＮＣに基づいて、出力データＤＡＴＡに応じた駆動信号Ｎ１〜Ｎ３を生成する。信号ＮＡ〜ＮＣの役割に関しては、後述される。
【００２３】
尚、図１において、出力トランジスタとして４個のＰＭＯＳトランジスタＭＰ０〜ＭＰ３及び４個のＮＭＯＳトランジスタＭＮ０〜ＭＮ３が例示されているが、出力トランジスタの総数は任意である。
【００２４】
２．インピーダンス制御
図１において、出力データＤＡＴＡとして「１（Ｈレベル）」が出力される場合を考える。この場合、Ｐ側のプリバッファ１０及びメインバッファ１１が機能する。信号ＰＡ〜ＰＣが全て「１」であれば、駆動信号Ｐ０〜Ｐ３は全て「０（Ｌレベル）」となる。結果として、メインバッファ１１の全ての出力トランジスタＭＰ０〜ＭＰ３がＯＮする。しかしながら、信号ＰＡが「０」の場合、駆動信号Ｐ１は「１」であり、出力トランジスタＭＰ１がＯＦＦする。つまり、ＯＮされる出力トランジスタの数が減る。同様に、信号ＰＢが「０」の場合、駆動信号Ｐ２は「１」であり、出力トランジスタＭＰ２がＯＦＦする。また、信号ＰＣが「０」の場合、駆動信号Ｐ３は「１」であり、出力トランジスタＭＰ３がＯＦＦする。
【００２５】
このように、信号ＰＡ〜ＰＣは、出力データＤＡＴＡの出力時にＯＮされる出力トランジスタを指定する「指定信号」としての役割を果たしている。言い換えれば、出力データＤＡＴＡの出力時にＯＮされる出力トランジスタの数は、指定信号ＰＡ〜ＰＣによって制御され得る。ＯＮされる出力トランジスタの数が大きくなるほど、出力トランジスタによる出力インピーダンスは小さくなり、その数が小さくなるほど、出力インピーダンスは大きくなる。すなわち、出力バッファ１の出力インピーダンスは、指定信号ＰＡ〜ＰＣによって制御され得る。その意味で、指定信号ＰＡ〜ＰＣを、「インピーダンス設定コード」と呼ぶことができる。
【００２６】
出力データＤＡＴＡが「０」の場合も同様である。その場合、Ｎ側のプリバッファ２０及びメインバッファ２１が機能する。信号ＮＡ〜ＮＣが全て「０」であれば、駆動信号Ｎ０〜Ｎ３は全て「１」となる。結果として、メインバッファ２１の全ての出力トランジスタＭＮ０〜ＭＮ３がＯＮする。しかしながら、信号ＮＡが「１」の場合、駆動信号Ｎ１は「０」であり、出力トランジスタＭＮ１がＯＦＦする。このように、信号ＮＡ〜ＮＣは、出力データＤＡＴＡの出力時にＯＮされる出力トランジスタを指定する指定信号であり、出力インピーダンスを制御するための「インピーダンス設定コード」と呼ぶことができる。
【００２７】
図２は、インピーダンス設定コードＰＡ〜ＰＣ、ＮＡ〜ＮＣのパターンと、ＯＮされる出力トランジスタの数（以下、「ＯＮ数」と参照される）との対応を要約的に示している。本実施の形態において、インピーダンス設定コード｛ＰＡ，ＰＢ，ＰＣ｝は、｛０，０，０｝、｛１，０，０｝、｛１，１，０｝、及び｛１，１，１｝の４パターンのうちいずれかに設定される。また、インピーダンス設定コード｛ＮＡ，ＮＢ，ＮＣ｝は、｛１，１，１｝、｛０，１，１｝、｛０，０，１｝、及び｛０，０，０｝の４パターンのうちいずれかに設定される。これにより、ＯＮ数を１個〜４個の範囲で調整することが可能となる。
【００２８】
図１に示されたインピーダンス制御回路１００は、このようなインピーダンス設定コードＰＡ〜ＰＣ、ＮＡ〜ＮＣを生成し、出力バッファ１に対して出力するための回路である。出力データＤＡＴＡの出力時のＯＮ数は、出力バッファ１に供給されるインピーダンス設定コードＰＡ〜ＰＣ、ＮＡ〜ＮＣによって決定される。それにより、出力バッファ１の出力インピーダンスが、ある値に制御される。
【００２９】
出力インピーダンスは、製造ばらつきによって、チップ毎にばらつく可能性がある。また、電源電圧や温度等の動作環境の変化によっても、出力インピーダンスが変動する可能性がある。出力インピーダンスが所望の値から逸脱すると、所望の回路特性が得られなくなる。従って、インピーダンス制御回路１００は、出力バッファ１の出力インピーダンスが所望の値（一定値）となるように、インピーダンス設定コードＰＡ〜ＰＣ、ＮＡ〜ＮＣを適切な値に設定する。つまり、インピーダンス制御回路１００は、インピーダンス設定コードＰＡ〜ＰＣ、ＮＡ〜ＮＣのトリミングを行う機能も有する。
【００３０】
図３は、インピーダンス制御回路１００の構成の一例を示している。図３において、インピーダンス設定コードＰＡ〜ＰＣのトリミングを行なうために、レプリカバッファ１１１、抵抗１１２、コンパレータ１１３、分割抵抗１１４、アップダウンカウンタ１１５、デコーダ１１６、及びラッチ回路１１７が設けられている。
【００３１】
レプリカバッファ１１１は、図１で示されたメインバッファ１１と同一の構成を有しており、同一の駆動能力を有している。つまり、レプリカバッファ１１１は、並列に接続されたＰＭＯＳトランジスタＭＰ０〜ＭＰ３を有している。ＰＭＯＳトランジスタＭＰ０は常時ＯＮされる。ＰＭＯＳトランジスタＭＰ１〜ＭＰ３は、インピーダンス設定コードＰＡ〜ＰＣの反転信号ＰＡＢ〜ＰＣＢによってそれぞれ駆動される。このレプリカバッファ１１１は、それら反転信号ＰＡＢ〜ＰＣＢに応じて抵抗値が変わる可変抵抗であると言える。
【００３２】
その可変抵抗１１１と抵抗１１２による抵抗分割で得られる電位ＶＰは、コンパレータ１１３の反転入力端子に入力される。コンパレータ１１３の非反転入力端子には、分割抵抗１１４によって生成される基準電位ＶＲＥＦが入力される。コンパレータ１１３は、電位ＶＰと基準電位ＶＲＥＦとの比較を行い、その比較結果を示す結果信号ＳＣをアップダウンカウンタ１１５に出力する。
【００３３】
結果信号ＳＣがＨレベルの間、アップダウンカウンタ１１５は、クロック信号ＣＬＫに基づいてカウントアップ動作を行なう。一方、結果信号ＳＣがＬレベルの間、アップダウンカウンタ１１５は、クロック信号ＣＬＫに基づいてカウントダウン動作を行なう。カウント値を示すカウントデータＣＮＴは、デコーダ１１６に出力される。
【００３４】
デコーダ１１６は、カウントデータＣＮＴをデコードし、インピーダンス設定コードＰＡ〜ＰＣと、それらの反転信号ＰＡＢ〜ＰＣＢを生成する。例えば、２ビットのカウントデータＣＮＴが“００”の場合、インピーダンス設定コード｛ＰＡ，ＰＢ，ＰＣ｝は｛０，０，０｝である。カウントデータＣＮＴが“０１”の場合、インピーダンス設定コード｛ＰＡ，ＰＢ，ＰＣ｝は｛１，０，０｝である。カウントデータＣＮＴが“１０”の場合、インピーダンス設定コード｛ＰＡ，ＰＢ，ＰＣ｝は｛１，１，０｝である。カウントデータＣＮＴが“１１”の場合、インピーダンス設定コード｛ＰＡ，ＰＢ，ＰＣ｝は｛１，１，１｝である。生成されたインピーダンス設定コードＰＡ〜ＰＣの反転信号ＰＡＢ〜ＰＣＢは、レプリカバッファ１１１のトランジスタＭＰ１〜ＭＰ３のそれぞれのゲートに供給される。
【００３５】
このような構成により、出力インピーダンスが所望の値になるように、インピーダンス設定コードＰＡ〜ＰＣがトリミングされる。すなわち、電位ＶＰが基準電位ＶＲＥＦよりも低い場合、コンパレータ１１３から出力される結果信号ＳＣはＨレベルとなり、アップダウンカウンタ１１５はカウントアップ動作を行い、レプリカバッファ１１１の抵抗値は低下する。逆に、電位ＶＰが基準電位ＶＲＥＦよりも高い場合、コンパレータ１１３から出力される結果信号ＳＣはＬレベルとなり、アップダウンカウンタ１１５はカウントダウン動作を行い、レプリカバッファ１１１の抵抗値は上昇する。トリミング開始から所定の時間後、ラッチ信号ＬＳがラッチ回路１１７に入力される。ラッチ信号ＬＳに応答して、ラッチ回路１１７は、その時点でのインピーダンス設定コードＰＡ〜ＰＣをラッチする。インピーダンス制御回路１００は、ラッチされたインピーダンス設定コードＰＡ〜ＰＣを、出力バッファ１に出力する。
【００３６】
Ｎ側も同様である。インピーダンス設定コードＮＡ〜ＮＣのトリミングを行なうために、レプリカバッファ１２１、抵抗１２２、コンパレータ１２３、分割抵抗１２４、アップダウンカウンタ１２５、デコーダ１２６、及びラッチ回路１２７が設けられている。レプリカバッファ１２１は、図１で示されたメインバッファ２１と同一の構成を有しており、並列に接続されたＮＭＯＳトランジスタＭＮ０〜ＭＮ３を有している。ＮＭＯＳトランジスタＭＮ０は常時ＯＮされる。ＮＭＯＳトランジスタＭＮ１〜ＭＮ３は、インピーダンス設定コードＮＡ〜ＮＣの反転信号ＮＡＢ〜ＮＣＢによってそれぞれ駆動される。そのレプリカバッファ１２１と抵抗１２２による抵抗分割で得られる電位ＶＮが、コンパレータ１２３の非反転入力端子に入力される。このように構成されたＮ側の動作もＰ側と同様であり、その説明は省略される。
【００３７】
尚、インピーダンス設定コードＰＡ〜ＰＣ、ＮＡ〜ＮＣのトリミングは、リアルタイムで行なわれてもよい。その場合は、ラッチ回路１１７、１２７が省略される。その代わり、アップダウンカウンタ１１５、１２５とデコーダ１１６、１２６との間に平均化回路が挿入されることが望ましい。
【００３８】
以上に説明されたように、インピーダンス制御回路１００は、出力バッファ１の出力インピーダンスが一定値になるように、インピーダンス設定コードＰＡ〜ＰＣ、ＮＡ〜ＮＣを決定する。決定されたインピーダンス設定コードＰＡ〜ＰＣ、ＮＡ〜ＮＣは、出力バッファ１に供給される。出力データＤＡＴＡの出力時にＯＮされる出力トランジスタの数は、そのインピーダンス設定コードＰＡ〜ＰＣ、ＮＡ〜ＮＣによって制御される。結果として、出力インピーダンスが所望の値に制御される。
【００３９】
３．スルーレート制御
出力インピーダンスを所望の値に設定するために出力トランジスタのＯＮ数を単に変化させた場合、スルーレートが変化してしまう。特に、トランジスタの製造ばらつきの影響が大きく、ＯＮ抵抗の低いトランジスタになるほど、スルーレートが大きくなってしまう。スルーレートが所望の値から逸脱すると、半導体集積回路が誤動作する可能性がある。例えば、スルーレートが大き過ぎる場合、オーバーシュートやリンギングといったノイズが顕著になり、そのノイズが半導体集積回路の誤動作を引き起こす。一方、スルーレートが小さ過ぎる場合、高速動作時の出力パルスの振幅が十分大きくならず、正しい論理判定ができなくなる。出力インピーダンスだけでなくスルーレートも所望の値に制御するために、本実施の形態において、次のような工夫がなされている。
【００４０】
上述の通り、図１に示されたプリバッファ１０は、出力データＤＡＴＡ及びインピーダンス設定コードＰＡ〜ＰＣに基づいて、駆動信号Ｐ１〜Ｐ３を生成する。本実施の形態によれば、それら駆動信号Ｐ１〜Ｐ３のそれぞれの遅延時間は、インピーダンス設定コードＰＡ〜ＰＣに応じて可変に設定される。そのために、本実施の形態に係るプリバッファ１０には、図１で示されたように、特有な遅延回路群５１〜５３が設けられている。同様に、本実施の形態に係るプリバッファ２０には、図１で示されたように、特有な遅延回路群６１〜６３が設けられている。
【００４１】
図４Ａは、駆動信号Ｐ１に寄与する遅延回路５１の構成の一例を示す回路図である。この遅延回路５１は、ＰＭＯＳトランジスタ７１、７２、ＮＭＯＳトランジスタ７３〜７８を有している。ＰＭＯＳトランジスタ７１とＮＭＯＳトランジスタ７３、７５〜７８は、第１インバータを構成している。ＰＭＯＳトランジスタ７２とＮＭＯＳトランジスタ７４は、第２インバータを構成している。第１インバータと第２インバータは直列に接続されている。第１インバータにおいて、ＰＭＯＳトランジスタ７１とＮＭＯＳトランジスタ７３のゲートには、出力データＤＡＴＡが印加される。ＮＭＯＳトランジスタ７５〜７８は、ＮＭＯＳトランジスタ７３とグランドとの間に並列に接続されている。ＮＭＯＳトランジスタ７５のゲートは、電源に接続されている。ＮＭＯＳトランジスタ７６〜７８のゲートには、インピーダンス設定コードＰＡ〜ＰＣがそれぞれ印加される。このような構成により、遅延回路５１による出力データＤＡＴＡの遅延時間は、インピーダンス設定コードＰＡ〜ＰＣに応じて変化する。
【００４２】
図４Ｂは、駆動信号Ｐ２に寄与する遅延回路５２の構成の一例を示す回路図である。図４Ａで示された遅延回路５１と比較して、遅延回路５２は、インピーダンス設定コードＰＡが印加されるＮＭＯＳトランジスタ７６を有していない。従って、遅延回路５２による出力データＤＡＴＡの遅延時間は、インピーダンス設定コードＰＢ、ＰＣに応じて変化する。
【００４３】
図４Ｃは、駆動信号Ｐ３に寄与する遅延回路５３の構成の一例を示す回路図である。図４Ｂで示された遅延回路５２と比較して、遅延回路５３は、インピーダンス設定コードＰＢが印加されるＮＭＯＳトランジスタ７７を有していない。従って、遅延回路５３による出力データＤＡＴＡの遅延時間は、インピーダンス設定コードＰＣに応じて変化する。
【００４４】
図５Ａは、駆動信号Ｎ１に寄与する遅延回路６１の構成の一例を示す回路図である。この遅延回路６１は、ＮＭＯＳトランジスタ８１、８２、ＰＭＯＳトランジスタ８３〜８８を有している。ＮＭＯＳトランジスタ８１とＰＭＯＳトランジスタ８３、８５〜８８は、第１インバータを構成している。ＮＭＯＳトランジスタ８２とＰＭＯＳトランジスタ８４は、第２インバータを構成している。第１インバータと第２インバータは直列に接続されている。第１インバータにおいて、ＮＭＯＳトランジスタ８１とＰＭＯＳトランジスタ８３のゲートには、出力データＤＡＴＡが印加される。ＰＭＯＳトランジスタ８５〜８８は、ＰＭＯＳトランジスタ８３と電源との間に並列に接続されている。ＰＭＯＳトランジスタ８５のゲートは、グランドに接続されている。ＰＭＯＳトランジスタ８６〜８８のゲートには、インピーダンス設定コードＮＡ〜ＮＣがそれぞれ印加される。このような構成により、遅延回路６１による出力データＤＡＴＡの遅延時間は、インピーダンス設定コードＮＡ〜ＮＣに応じて変化する。
【００４５】
図５Ｂは、駆動信号Ｎ２に寄与する遅延回路６２の構成の一例を示す回路図である。図５Ａで示された遅延回路６１と比較して、遅延回路６２は、インピーダンス設定コードＮＡが印加されるＰＭＯＳトランジスタ８６を有していない。従って、遅延回路６２による出力データＤＡＴＡの遅延時間は、インピーダンス設定コードＮＢ、ＮＣに応じて変化する。
【００４６】
図５Ｃは、駆動信号Ｎ３に寄与する遅延回路６３の構成の一例を示す回路図である。図５Ｂで示された遅延回路６２と比較して、遅延回路６３は、インピーダンス設定コードＮＢが印加されるＰＭＯＳトランジスタ８７を有していない。従って、遅延回路６３による出力データＤＡＴＡの遅延時間は、インピーダンス設定コードＮＣに応じて変化する。
【００４７】
このような構成を有する遅延回路群５１〜５３、６１〜６３によって実現される遅延は、次の通りである。例として、図４Ａ〜図４Ｃで示されたＰ側の遅延回路５１〜５３を考える。図４Ａ〜図４Ｃにおいて、初段の第１インバータの出力はそれぞれ信号Ｄ１〜Ｄ３で表されている。また、遅延回路５１〜５３のそれぞれを通して出力される出力データＤＡＴＡは、それぞれＤＡＴＡ１、ＤＡＴＡ２、ＤＡＴＡ３で示されている。図６には、遅延回路５１〜５３に入力される出力データＤＡＴＡに対する信号Ｄ１〜Ｄ３の反転信号のそれぞれの波形の一例が示されている。
【００４８】
まず、インピーダンス設定コード｛ＰＡ，ＰＢ，ＰＣ｝が｛１，１，１｝の場合を考える。この場合、図４Ａ〜図４Ｃで示されたＮＭＯＳトランジスタ７６〜７８の全てがＯＮする。ＮＭＯＳトランジスタ全体の駆動能力が異なるため、遅延回路５１〜５３における信号Ｄ１〜Ｄ３の波形鈍りはそれぞれ異なる。より詳細には、図６に示されるように、信号Ｄ１の波形鈍りが最も小さく、信号Ｄ３の波形鈍りが最も大きくなる。その結果、遅延回路５１による遅延時間が最も小さく、遅延回路５３による遅延時間が最も大きくなる（ＤＡＴＡ１＜ＤＡＴＡ２＜ＤＡＴＡ３）。つまり、駆動信号Ｐ１の遅延時間が最も小さく、駆動信号Ｐ３の遅延時間が最も大きくなる。
【００４９】
次に、インピーダンス設定コード｛ＰＡ，ＰＢ，ＰＣ｝が｛１，１，０｝の場合を考える。インピーダンス設定コードＰＣが「０」のとき、駆動信号Ｐ３は必ず「１」となるため、遅延回路５３に関してはここでは考慮しない。｛ＰＡ，ＰＢ，ＰＣ｝＝｛１，１，０｝の場合、ＮＭＯＳトランジスタ７８がＯＦＦする。この場合も、遅延回路５１、５２における信号Ｄ１、Ｄ２の波形鈍りはそれぞれ異なる。ここで着目すべき点は、上記｛ＰＡ，ＰＢ，ＰＣ｝＝｛１，１，１｝の場合と比較して、信号Ｄ１、Ｄ２の波形鈍りがそれぞれ大きくなっていることである。これは、ＮＭＯＳトランジスタ７８がＯＦＦし、ＮＭＯＳトランジスタ全体の駆動能力が減少したためである。結果として、駆動信号Ｐ１の遅延時間は、｛ＰＡ，ＰＢ，ＰＣ｝＝｛１，１，１｝の場合よりも、｛ＰＡ，ＰＢ，ＰＣ｝＝｛１，１，０｝の場合の方が大きくなる。駆動信号Ｐ２の遅延時間も、｛ＰＡ，ＰＢ，ＰＣ｝＝｛１，１，１｝の場合よりも、｛ＰＡ，ＰＢ，ＰＣ｝＝｛１，１，０｝の場合の方が大きくなる。
【００５０】
このように、駆動信号Ｐ１〜Ｐ３のそれぞれの遅延時間は、インピーダンス設定コードＰＡ〜ＰＣに応じて変化する。このことは、出力データＤＡＴＡの出力時にＯＮされる出力トランジスタの数に応じて、それらＯＮされる出力トランジスタを駆動する駆動信号のそれぞれの遅延時間が変化することを意味する。具体的には、ＯＮされる出力トランジスタの数が少なくなるにつれて、それぞれの駆動信号Ｐ１〜Ｐ３の遅延時間はより長くなる。
【００５１】
図７は、本実施の形態に係る出力バッファ１の動作の一例を示すグラフ図である。横軸は時間を表し、縦軸は出力能力を表している。
【００５２】
まず、インピーダンス設定コード｛ＰＡ，ＰＢ，ＰＣ｝が｛１，１，１｝の場合を考える。この場合、４個の出力トランジスタＭＰ０〜ＭＰ３が全てＯＮする（ＯＮ数＝４）。但し、それら出力トランジスタＭＰ０〜ＭＰ３は、それぞれ異なるタイミングｔ０〜ｔ３で順番にＯＮする。具体的には、図７に示されるように、タイミングｔ０で出力トランジスタＭＰ０がＯＮする。タイミングｔ０から遅延時間ΔＴ１後のタイミングｔ１で、出力トランジスタＭＰ１がＯＮする。タイミングｔ０から遅延時間ΔＴ２（＞ΔＴ１）後のタイミングｔ２で、出力トランジスタＭＰ２がＯＮする。タイミングｔ０から遅延時間ΔＴ３（＞ΔＴ２）後のタイミングｔ３で、出力トランジスタＭＰ３がＯＮする。このようにして、４個の出力トランジスタＭＰ０〜ＭＰ３が順番にＯＮし、あるスルーレートの出力波形が得られる。
【００５３】
次に、インピーダンス設定コード｛ＰＡ，ＰＢ，ＰＣ｝が｛１，１，０｝の場合を考える。この場合、３個の出力トランジスタＭＰ０〜ＭＰ２がＯＮし、出力トランジスタＭＰ３はＯＮしない。つまり、ＯＮ数は３である。出力トランジスタＭＰ０〜ＭＰ２は、それぞれ異なるタイミングｔ０〜ｔ２’で順番にＯＮする。具体的には、図７に示されるように、タイミングｔ０で出力トランジスタＭＰ０がＯＮする。タイミングｔ０から遅延時間ΔＴ１’後のタイミングｔ１’で、出力トランジスタＭＰ１がＯＮする。タイミングｔ０から遅延時間ΔＴ２’（＞ΔＴ１’）後のタイミングｔ２’で、出力トランジスタＭＰ２がＯＮする。ここで、遅延時間ΔＴ１’は上述の遅延時間ΔＴ１よりも大きく、遅延時間ΔＴ２’は上述の遅延時間ΔＴ２よりも大きくなっている。すなわち、ＯＮされる出力トランジスタの数が少なくなると、それらのＯＮタイミング間の間隔はより長くなるように自動的に調整されている。その結果、出力波形のスルーレートが、一定値に保たれる。
【００５４】
このように、本実施の形態に係るプリバッファ１０は、ＯＮされる出力トランジスタのそれぞれのＯＮタイミングを、インピーダンス設定コードＰＡ〜ＰＣに応じて可変に設定している。言い換えれば、プリバッファ１０は、駆動信号Ｐ１〜Ｐ３のそれぞれの遅延時間を、インピーダンス設定コードＰＡ〜ＰＣに応じて可変に設定する。具体的には、プリバッファ１０は、ＯＮ数が少なくなるにつれて、駆動信号Ｐ１〜Ｐ３のそれぞれの遅延時間をより長く設定する。その結果、出力インピーダンスを所望の値に設定するためにＯＮ数を変化させても、スルーレートは所望の範囲に制御される。その意味で、本実施の形態に係るプリバッファ１０は、「スルーレート制御回路」としての役割も果たしていると言える。
【００５５】
Ｎ側のプリバッファ２０に関しても同様である。プリバッファ２０は、出力データＤＡＴＡ及びインピーダンス設定コードＮＡ〜ＮＣに基づいて、駆動信号Ｎ１〜Ｎ３を生成する。この時、プリバッファ２０は、それら駆動信号Ｎ１〜Ｎ３のそれぞれの遅延時間を、インピーダンス設定コードＮＡ〜ＮＣに応じて可変に設定する。このプリバッファ２０は、「スルーレート制御回路」としての役割も果たしていると言える。
【００５６】
４．効果
以上に説明されたように、本実施の形態によれば、出力インピーダンスが所望の値になるように、出力トランジスタのＯＮ数が、インピーダンス設定コードＰＡ〜ＰＣ、ＮＡ〜ＮＣによって制御される。更に、スルーレートが所望の範囲に収まるように、ＯＮされる出力トランジスタのそれぞれのＯＮタイミングが、同じインピーダンス設定コードＰＡ〜ＰＣ、ＮＡ〜ＮＣによって制御される。
【００５７】
すなわち、出力インピーダンスの制御とスルーレートの制御は、同じインピーダンス設定コードＰＡ〜ＰＣ、ＮＡ〜ＮＣを通じて、互いに連動している。ＯＮされる出力トランジスタの数とそれらのＯＮタイミングは互いに連関しており、出力インピーダンスの調整に連動してスルーレートも自動的に調整される。その結果、出力インピーダンスを所望の値に保ちつつ、且つ、スルーレートも所望の範囲内に制御することが可能となる。従って、出力パルスに関して十分な大きさの振幅が得られ、また、ノイズに起因する誤動作も防止される。
【００５８】
また、本実施の形態によれば、出力インピーダンスとスルーレートを独立して制御する必要はなく、出力インピーダンス制御用のコードとスルーレート制御用のコードを別々に設ける必要はない。出力インピーダンスを所望の値に制御するためのインピーダンス設定コードＰＡ〜ＰＣ、ＮＡ〜ＮＣは、同時に、スルーレートの制御にも寄与する。従って、制御信号の数が削減され、制御の複雑化が防止される。また、回路構成が単純になり、回路面積の増大と製造コストの増大が抑制される。
【図面の簡単な説明】
【００５９】
【図１】図１は、本発明の実施の形態に係る半導体集積回路の構成を示す回路図である。
【図２】図２は、インピーダンス設定コードのパターンと、ＯＮされる出力トランジスタとの対応関係を示すテーブルである。
【図３】図３は、本実施の形態に係るインピーダンス制御回路の構成の一例を示すブロック図である。
【図４Ａ】図４Ａは、駆動信号Ｐ１に寄与する遅延回路の構成の一例を示す回路図である。
【図４Ｂ】図４Ｂは、駆動信号Ｐ２に寄与する遅延回路の構成の一例を示す回路図である。
【図４Ｃ】図４Ｃは、駆動信号Ｐ３に寄与する遅延回路の構成の一例を示す回路図である。
【図５Ａ】図５Ａは、駆動信号Ｎ１に寄与する遅延回路の構成の一例を示す回路図である。
【図５Ｂ】図５Ｂは、駆動信号Ｎ２に寄与する遅延回路の構成の一例を示す回路図である。
【図５Ｃ】図５Ｃは、駆動信号Ｎ３に寄与する遅延回路の構成の一例を示す回路図である。
【図６】図６は、本実施の形態に係る遅延回路の動作を説明するための図である。
【図７】図７は、本実施の形態に係る出力バッファの動作例を説明するためのグラフ図である。
【符号の説明】
【００６０】
１    出力バッファ
１０    プリバッファ
１１    メインバッファ
２０    プリバッファ
２１    メインバッファ
５１、５２、５３  遅延回路
６１、６２、６３  遅延回路
１００    インピーダンス制御回路
ＤＡＴＡ  出力データ
ＭＰ０〜ＭＰ３  出力トランジスタ
ＭＮ０〜ＭＮ３  出力トランジスタ
ＰＡ〜ＰＣ  インピーダンス設定コード
ＮＡ〜ＮＣ  インピーダンス設定コード
Ｐ０〜Ｐ３  駆動信号
Ｎ０〜Ｎ３  駆動信号
【図１】
2008125061.tif 000003
【図２】
2008125061.tif 000004
【図３】
2008125061.tif 000005
【図４Ａ】
2008125061.tif 000006
【図４Ｂ】
2008125061.tif 000007
【図４Ｃ】
2008125061.tif 000008
【図５Ａ】
2008125061.tif 000009
【図５Ｂ】
2008125061.tif 000010
【図５Ｃ】
2008125061.tif 000011
【図６】
2008125061.tif 000012
【図７】
2008125061.tif 000013