JP6135279B2 - バッファ回路及び半導体集積回路 - Google Patents

バッファ回路及び半導体集積回路 Download PDF

Info

Publication number
JP6135279B2
JP6135279B2 JP2013093259A JP2013093259A JP6135279B2 JP 6135279 B2 JP6135279 B2 JP 6135279B2 JP 2013093259 A JP2013093259 A JP 2013093259A JP 2013093259 A JP2013093259 A JP 2013093259A JP 6135279 B2 JP6135279 B2 JP 6135279B2
Authority
JP
Japan
Prior art keywords
pulse width
clock
unit
buffer
transistors
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2013093259A
Other languages
English (en)
Other versions
JP2014216875A (ja
Inventor
亮一 稲川
亮一 稲川
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Socionext Inc
Original Assignee
Socionext Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Socionext Inc filed Critical Socionext Inc
Priority to JP2013093259A priority Critical patent/JP6135279B2/ja
Priority to US14/256,815 priority patent/US9312839B2/en
Publication of JP2014216875A publication Critical patent/JP2014216875A/ja
Application granted granted Critical
Publication of JP6135279B2 publication Critical patent/JP6135279B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K5/00Manipulating of pulses not covered by one of the other main groups of this subclass
    • H03K5/156Arrangements in which a continuous pulse train is transformed into a train having a desired pattern
    • H03K5/1565Arrangements in which a continuous pulse train is transformed into a train having a desired pattern the output pulses having a constant duty cycle
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K5/00Manipulating of pulses not covered by one of the other main groups of this subclass
    • H03K5/22Circuits having more than one input and one output for comparing pulses or pulse trains with each other according to input signal characteristics, e.g. slope, integral
    • H03K5/26Circuits having more than one input and one output for comparing pulses or pulse trains with each other according to input signal characteristics, e.g. slope, integral the characteristic being duration, interval, position, frequency, or sequence

Landscapes

  • Physics & Mathematics (AREA)
  • Nonlinear Science (AREA)
  • Pulse Circuits (AREA)
  • Logic Circuits (AREA)

Description

本発明は、バッファ回路及び半導体集積回路に関する。
半導体集積回路や半導体集積回路を含むシステムにおいて、たとえば、PLL(Phase Locked Loop)回路などのクロック生成回路で生成されたクロックは、クロックの立ち上がりまたは立ち下がりタイミングに同期して演算などの動作を行う回路に供給される。その際、たとえば、クロック生成回路から離れた位置にある回路には、複数段のバッファ回路(クロックバッファと呼ばれる)を含むクロック経路を介してクロックが供給される。
なお、従来、PLLなどから発生されるクロックのデューティ比を50:50に補正する技術や、クロックを受ける回路の規模や特性に応じてデューティ比を変える技術があった。なお、デューティ比が50:50とは、1周期のクロックにおいて、H(High)レベルのパルス幅が占めるパーセンテージが50%、L(Low)レベルのパルス幅が占めるパーセンテージが50%であることを示す。
特開2005−159613号公報 特開2004−348573号公報 特開2005−294947号公報
しかしながら、クロック経路のバッファ回路内に含まれるトランジスタの特性のばらつきにより、クロックを用いて動作する回路に到達する際には、クロックのデューティ比が意図したものと異なってしまい、回路が適切に動作しなくなる可能性があった。
発明の一観点によれば、以下のようなバッファ回路が提供される。バッファ回路は、入力クロックを受け取り、前記入力クロックの波形整形を行うことにより、出力クロックを出力するバッファ部と、前記出力クロックの第1の電位レベルの第1のパルス幅と第2の電位レベルの第2のパルス幅とを測定する測定部と、前記測定部での測定結果に基づき、前記バッファ部の駆動能力を変化させることにより、前記第1のパルス幅と前記第2のパルス幅の比を調整する調整部と、を有する。
また、発明の一観点によれば、クロックに同期して動作する回路部と、前記回路部に前記クロックを供給するクロック経路に含まれるバッファ回路と、を有し、前記バッファ回路は、入力クロックを受け取り、前記入力クロックの波形整形を行うことにより、出力クロックを出力するバッファ部と、前記出力クロックの第1の電位レベルの第1のパルス幅と第2の電位レベルの第2のパルス幅とを測定する測定部と、前記測定部での測定結果に基づき、前記バッファ部の駆動能力を変化させることにより、前記第1のパルス幅と前記第2のパルス幅の比を調整する調整部と、を有する半導体集積回路が提供される。
開示のバッファ回路及び半導体集積回路によれば、クロックのデューティ比の悪化を抑制できる。
第1の実施の形態の半導体集積回路及びバッファ回路の一例を示す図である。 第2の実施の形態の半導体集積回路の一例を示す図である。 第2の実施の形態のバッファ回路の一例を示す図である。 第2の実施のバッファ回路の動作の一例を示すフローチャートである。 クロックのHレベルのパルス幅の測定例を示すタイミングチャートである。 クロックのLレベルのパルス幅の測定例を示すタイミングチャートである。 調整部の動作を記述したコードの一例を示す図である。 本実施の形態の半導体集積回路及びバッファ回路を用いたことによる効果の一例を示す図である。 第3の実施の形態のバッファ回路の一例を示す図である。 第3の実施のバッファ回路の動作の一例を示すフローチャートである。 クロックのパルス幅の測定及び調整例を示すタイミングチャートである。 調整部の動作を記述したコードの一例を示す図である。
以下、発明を実施するための形態を、図面を参照しつつ説明する。
(第1の実施の形態)
以下に示す半導体集積回路及びバッファ回路は、クロック経路に含まれるバッファ回路内のトランジスタの特性のばらつきにより、クロックのデューティ比が悪化すること(意図したものと異なってしまうこと)を防止するものである。トランジスタの特性のばらつきとは、たとえば、バッファ回路に含まれるpチャネル型MOSFET(Metal-Oxide Semiconductor Field Effect Transistor)(以下pMOSと略す)とnチャネル型MOSFET(以下nMOSと略す)の抵抗比のばらつきなどがある。
クロックのデューティ比の悪化はクロックが高周波数化するほど顕著となるが、本実施の形態の半導体集積回路及びバッファ回路はそのような場合でも、伝搬するクロックのデューティ比の悪化を抑制できるようにしたものである。
図1は、第1の実施の形態の半導体集積回路及びバッファ回路の一例を示す図である。
半導体集積回路1は、クロック生成回路2、バッファ回路3−1,3−2,…,3−n、回路部4、制御回路5を有する。
クロック生成回路2は、半導体集積回路1内で使用するクロックを生成する。クロック生成回路2は、たとえば、外部からの基準クロックをもとに内部クロックを生成するPLL回路またはDLL(Delay Locked Loop)回路などである。なお、クロック生成回路2は、半導体集積回路1の外部にあってもよい。
バッファ回路3−1〜3−nは、クロック生成回路2と回路部4との間のクロック経路に直列に複数段設けられており、入力されるクロックの波形整形を行う。
回路部4は、クロックの立ち上がりタイミングまたは立ち下がりタイミングに応じて所定の動作を行う。回路部4としては、たとえば、高速インターフェース回路、DDR SDRAM(Double-Data-Rate Synchronous Dynamic Random Access Memory)などがあるが、これらに限定されるものではないことは言うまでもない。
制御回路5は、バッファ回路3−1〜3−nなどの制御を行う。
バッファ回路3−1は、バッファ部3a、測定部3b、調整部3cを有する。
バッファ部3aは、クロックを入力し、クロックの波形整形を行う。図1の例では、バッファ部3aは、インバータINV、トランジスタta1,ta2,…,tan、tb1,tb2,…,tbn、tc1,tc2,…,tcn、td1,td2,…,tdnを有している。トランジスタta1〜tan,tb1〜tbnは、pMOSである。トランジスタtc1〜tcn、td1〜tdnは、nMOSである。
トランジスタta1〜tanのソースには電源電圧が印加されており、ドレインは、トランジスタtb1〜tbnのソースに接続されている。トランジスタtb1〜tbnのドレインは、後段のバッファ回路3−2及びトランジスタtc1〜tcnのドレインに接続されている。トランジスタtc1〜tcnのソースは、トランジスタtd1〜tdnのドレインに接続されており、トランジスタtd1〜tdnのソースは接地されている。
また、トランジスタta1〜tan,td1〜tdnのゲートは、調整部3cに接続されており、トランジスタtb1〜tbn,tc1〜tcnのゲートはインバータINVの出力端子に接続されている。
このようなバッファ部3aでは、調整部3cからの制御信号により、トランジスタta1〜tan,td1〜tdnが個別にオンまたはオフされる。これによって、トランジスタta1〜tan,td1〜tdnに接続されるトランジスタtb1〜tbn,tc1〜tcnが個別に活性化するか非活性化するかが選択される。トランジスタtb1〜tbn,tc1〜tcnのうち、活性化させるnMOSとpMOSの組により、インバータとしての機能が行われる。
なお、図1の例において、インバータINVについても、上記と同様に、活性化または非活性化が選択される複数のトランジスタを有していてもよい。
測定部3bは、バッファ部3aから出力される出力クロックのHレベルのパルス幅と、Lレベルのパルス幅とを測定し、測定結果を調整部3cに通知する。
調整部3cは、測定部3bでの測定結果に基づき、バッファ部3aの駆動能力を変化させて、クロックのHレベルのパルス幅と、Lレベルのパルス幅の比(つまりデューティ比)を調整する。たとえば、調整部3cは、測定部3bでの測定結果に基づき、pMOSであるトランジスタtb1〜tbnと、nMOSであるトランジスタtc1〜tcnのうち、活性化させるpMOSとnMOSを選択することで、バッファ部3aの駆動能力を変化させる。
次に、第1の実施の形態の半導体集積回路1の動作の一例を説明する。なお、以下の説明では、他のバッファ回路3−2〜3−nについてもバッファ回路3−1と同様の回路を有しているものとして説明するが、バッファ回路3−1〜3−nのうち、少なくとも何れか1つが図1に示したようなバッファ回路3−1の各要素を有していてもよい。
制御回路5は、バッファ回路3−1〜3−nの調整部3cがバッファ部3aの駆動能力を調整するか否かを制御する。制御回路5から、バッファ回路3−1〜3−nの調整部3cに対して、バッファ部3aの駆動能力の調整を指示する旨の信号が供給されると、調整部3cは、トランジスタtb1〜tbn,tc1〜tcnのうち、任意のpMOSとnMOSの組を活性化させる。
バッファ部3aは、入力されたクロックCK1を、インバータINVと、トランジスタtb1〜tbn,tc1〜tcnのうち、活性化されているpMOSとnMOSの組によるインバータとで、波形整形を行う。このとき、バッファ部3aの出力クロックは、たとえば、図1に示すような波形のクロックCK2であったとする。このクロックCK2は、Hレベルのパルス幅が、Lレベルのパルス幅よりも短くなっている。
測定部3bは、クロックCK2のHレベルのパルス幅と、Lレベルのパルス幅とを測定し、測定結果を調整部3cに通知する。詳細は後述するが、調整部3cは、たとえば、デューティ比を50:50にする場合、制御信号により、トランジスタta1〜tan,td1〜tdnを制御して、活性化させるpMOSとnMOSの組み合わせを変える。そして、調整部3cは、そのときの測定結果を測定部3bから受け、デューティ比が最も50:50に近くなるpMOSとnMOSの組み合わせを探す。
デューティ比が最も50:50に近くなるpMOSとnMOSの組み合わせが見つかると、調整部3cは、そのときの制御信号の値を、図示しない保持部に保持しておく。以上のようにして、バッファ部3aの駆動能力の調整が終了すると、調整部3cは、調整が完了した旨の信号を制御回路5に送る。これにより、バッファ回路3−1からは、デューティ比が50:50により近いクロックCK3が出力される。以上のような処理が、たとえば、バッファ回路3−2〜3−nにおいても行われる。
なお、調整部3cは、制御信号により、トランジスタta1〜tan,td1〜tdnを制御して、活性化させるpMOSとnMOSの組み合わせを変えて、クロックのデューティ比を30:70や、70:30など任意に変更することができる。
以上のように、本実施の形態の半導体集積回路1及びバッファ回路3−1では、バッファ部3aから出力されるクロックのH側とL側のパルス幅を測定し、測定結果に応じてバッファ部3aの駆動能力を変化させてクロックのデューティ比が調整される。これにより、クロックが高周波数化しても、バッファ部3aに含まれるトランジスタの特性の製造ばらつきによらず、伝搬されるクロックのデューティ比の悪化を抑制できる。このため、意図しないデューティ比のクロックが入力されることによる回路部4での誤動作の発生を抑制できる。
たとえば、回路部4が、クロックの立ち上がりエッジと立ち下がりエッジの両方を用いるDDR SDRAMのような回路であっても、H側またはL側の一方のパルス幅が狭くなってセットアップに支障がでてくるような問題の発生を低減できる。
(第2の実施の形態)
図2は、第2の実施の形態の半導体集積回路の一例を示す図である。
半導体集積回路10は、PLL回路11、バッファ回路12−1,12−2,…,12−n、回路部13、制御回路14を有している。
PLL回路11は、外部クロックを受けて、所定の周波数のクロック(内部クロック)を生成する。バッファ回路12−1〜12−nは、PLL回路11と回路部13との間のクロック経路に複数段設けられており、入力されるクロックの波形整形を行う。制御回路14は、バッファ回路12−1〜12−nなどの制御を行う。
図3は、第2の実施の形態のバッファ回路の一例を示す図である。図3では、図2に示したバッファ回路12−1の一例を示しているが、他のバッファ回路12−2〜12−nも同様の回路であってもよいし、たとえば、バッファ回路12−nが、図3に示すような回路であり、他は通常のバッファ回路であってもよい。
バッファ回路12−1は、バッファ部12a、測定部12b、調整部12cを有している。
バッファ部12aは、図3の例では、図1に示したバッファ部3aと同じ回路としている。
測定部12bは、D型のフリップフロップ(以下DFFと表記する)21,22,23,24、セレクタ25、遅延調整回路26を有している。
DFF21,22のデータ端子(図3中では“D”と表記されている)は、調整部12cに接続されている。DFF21のクロック端子には、バッファ部12aからの出力クロックが入力され、DFF22のクロック端子には、バッファ部12aからの出力クロックが、電位レベルが反転されて入力される。DFF21,22の出力端子(図3中では“Q”と表記されている)は、それぞれセレクタ25の一方の入力端子と他方の入力端子に接続されている。セレクタ25は、調整部12cからの選択信号に応じて、DFF21の出力信号か、DFF22の出力信号の何れか一方を選択して出力する。
遅延調整回路26は、セレクタ25の出力信号を遅延する。遅延調整回路26は、遅延バッファbf1,bf2,…,bfmとセレクタselを有している。
遅延バッファbf1〜bfmは、直列に接続されており、さらに、各遅延バッファbf1〜bfmの出力端子は、それぞれセレクタselの複数の入力端子の何れかに接続されている。
セレクタselは、m個の遅延バッファbf1〜bfmに対応して、m個の入力端子を有している。m個の入力端子には、遅延バッファbf1で遅延されたセレクタ25の出力信号、2段の遅延バッファbf1,bf2で遅延されたセレクタ25の出力信号、…、m段の遅延バッファbf1〜bfmで遅延されたセレクタ25の出力信号が入力される。セレクタselは、調整部12cからの選択信号に応じて、m個の入力端子の何れかに入力された信号を選択して出力する。
DFF23,24のデータ端子は、遅延調整回路26の出力端子(すなわちセレクタselの出力端子)に接続されている。DFF23のクロック端子には、バッファ部12aからの出力クロックが、電位レベルが反転されて入力される。DFF24のクロック端子には、バッファ部12aからの出力クロックが入力される。DFF23,24の出力端子は、調整部12cに接続されている。
調整部12cは、測定部12bでの測定結果に基づいた制御信号を生成し、バッファ部12aのトランジスタta1〜tan,td1〜tdnに供給し、バッファ部12aの駆動能力を変化させて、クロックのデューティ比を調整する。
以下、第2の実施の形態のバッファ回路12−1の動作例を説明する。
(バッファ回路12−1の動作例)
図4は、第2の実施のバッファ回路の動作の一例を示すフローチャートである。
調整部12cは、制御回路14から、バッファ部12aの駆動能力を調整する旨の指示を受け付けると(ステップS1)、トランジスタtb1〜tbn,tc1〜tcnから任意の組み合わせで、活性化させるトランジスタを設定する(ステップS2)。ステップS2の処理では、調整部12cは、トランジスタta1〜tan、td1〜tdnに制御信号(ゲート電圧)の初期値を供給することで、トランジスタtb1〜tbn,tc1〜tcnのうち活性化または非活性化させるトランジスタを設定する。
その後、調整部12cの制御のもと、測定部12bは、バッファ部12aから出力されるクロックのHレベルのパルス幅と、Lレベルのパルス幅を測定する(ステップS3,S4)。そして、調整部12cは、トランジスタtb1〜tbn,tc1〜tcnの全組み合わせを用いて測定が終わったか否かを判定する(ステップS5)。残っているトランジスタの組み合わせがある場合には、ステップS2の処理で、未測定の組み合わせが選択され、ステップS3,S4のパルス幅の測定処理が繰り返される。
全組み合わせで測定が終わった場合、調整部12cは、測定結果に基づき、所定のデューティ比に応じて、活性化させるトランジスタの組み合わせを決定し、バッファ部12aに設定し(ステップS6)、駆動能力の調整処理を終了する。このとき調整部12cは、制御回路14に対して、駆動能力の調整が終了した旨を通知するようにしてもよい。
なお、上記の各ステップの順序は特に限定されるものではなく、たとえば、ステップS3の処理とステップS4の処理の順序を入れ替えるようにしてもよい。
以下、クロックのパルス幅の測定例を説明する。
(クロックのパルス幅の測定例)
図5は、クロックのHレベルのパルス幅の測定例を示すタイミングチャートである。
図5には、調整部12cから遅延調整回路26のセレクタselに供給される複数ビットの選択信号が示されている。また、バッファ部12aから測定部12bに入力されるクロックCLK、調整部12cからDFF21への入力データDFF21_D、DFF21への入力クロックDFF21_CKが示されている。さらに、DFF21の出力データDFF21_Q、DFF23の入力データDFF23_Dと入力クロックDFF23_CK、DFF23の出力データDFF23_Q、調整部12c内で生成される信号である測定結果1〜5の例が示されている。なお、図5の例では、入力データDFF21_Dは、クロックCLKの1周期分のパルス幅をもつ信号としている。また、以下の例では、各遅延バッファbf1〜bfmの遅延量は等しいものとするが、ばらついていてもよい。
図5に示されている例では、タイミングt1で、選択信号が“1”となり、クロックCLKがHレベルに立ち上がり、入力データDFF21_Dが“1”になっている。次にクロックCLKがHレベルに立ち上がるタイミングt2で、入力データDFF21_DがDFF21に取り込まれ、出力データDFF21_Qが“1”となる。
なお、クロックのHレベルのパルス幅の測定の際、調整部12cは、測定部12bのセレクタ25に対して、DFF21の出力データDFF21_Qを選択する旨の選択信号(図示せず)を供給している。
選択信号が“1”のとき、遅延調整回路26のセレクタselは、1段の遅延バッファbf1の出力信号を選択して出力する。そのため、DFF23の入力データDFF23_Dは、DFF21の出力データDFF21_Qに対して、遅延バッファbf1分の遅延時間d1だけ遅れる。
クロックCLKの電位レベルが反転したものであるDFF23の入力クロックDFF23_CKが立ち上がるタイミングt3では、DFF23の入力データDFF23_Dは“1”であるため、DFF23に“1”が取り込まれる。その結果、出力データDFF23_Qが“1”となる。この結果を受けて、調整部12cは、次にクロックCLKがHレベルに立ち上がるタイミングt4で、測定結果1を“1”としている。
また、タイミングt4では、調整部12cは、セレクタselに供給する選択信号を“2”、入力データDFF21_Dを“1”とする。これにより、次にクロックCLKがHレベルに立ち上がるタイミングt5で、入力データDFF21_DがDFF21に取り込まれ、出力データDFF21_Qが“1”となる。
選択信号が“2”のとき、遅延調整回路26のセレクタselは、2段の遅延バッファbf1,bf2の出力信号を選択して出力する。そのため、DFF23の入力データDFF23_Dは、DFF21の出力データDFF21_Qに対して、遅延バッファ2段分の遅延時間d2だけ遅れる。
DFF23の入力クロックDFF23_CKが立ち上がるタイミングt6では、DFF23の入力データDFF23_Dは“1”であるため、DFF23に“1”が取り込まれる。その結果、出力データDFF23_Qも“1”となる。この結果を受けて、調整部12cは、次にクロックCLKがHレベルに立ち上がるタイミングt7で、測定結果2を“1”としている。
タイミングt7以降のタイミングt8,t9,t10,t11,t12,t13,t14,t15,t16においても同様の処理が行われる。すなわち、調整部12cは、選択信号の値を“3”、“4”、“5”とインクリメントし、遅延調整回路26に遅延バッファ3段分、4段分、5段分の遅延時間d3,d4,d5を生じさせる。このときもタイミングt9,t12では、DFF23の入力データDFF23_Dは“1”であるため、DFF23に“1”が取り込まれ、出力データDFF23_Qも“1”となる。この結果を受けて、調整部12cは、タイミングt10,t13で、測定結果3,4を“1”としている。
一方、タイミングt15では、DFF23の入力データDFF23_Dは“0”であるため、DFF23に“0”が取り込まれ、出力データDFF23_Qも“0”となる。この結果を受けて、調整部12cは、タイミングt16で、測定結果5を“0”とする。
これにより、調整部12cは、クロックCLKのHレベルのパルス幅が、遅延バッファ4段分の遅延時間以上、遅延バッファ5段分の遅延時間未満であることを検出する。
このように、測定部12bでは、DFF21の出力値をDFF23で取り込める遅延バッファbf1〜bfmによる遅延量の境界値に基づきHレベルのパルス幅が測定される。
図6は、クロックのLレベルのパルス幅の測定例を示すタイミングチャートである。
図6でも、調整部12cから遅延調整回路26のセレクタselに供給される複数ビットの選択信号が示されている。また、バッファ部12aから測定部12bに入力されるクロックCLK、調整部12cからDFF22への入力データDFF22_D、DFF22への入力クロックDFF22_CKが示されている。さらに、DFF22の出力データDFF22_Q、DFF24への入力データDFF24_Dと入力クロックDFF24_CK、DFF24の出力データDFF24_Q、調整部12c内で生成される測定結果6〜10の例が示されている。なお、図6の例では、入力データDFF22_Dは、クロックCLKの1周期分のパルス幅をもつ信号としている。
図6に示されている例では、タイミングt20で、選択信号が“1”となり、クロックCLKがLレベルに立ち下がり、入力データDFF22_Dが“1”になっている。なお、DFF22には、クロックCLKの電位レベルが反転した入力クロックDFF22_CKが入力される。そのため、タイミングt20では、入力クロックDFF22_CKはHレベルに立ち上がる。
次に入力クロックDFF22_CKがHレベルに立ち上がるタイミングt21では、入力データDFF22_DがDFF22に取り込まれ、出力データDFF22_Qが“1”となる。
なお、クロックのLレベルのパルス幅の測定の際、調整部12cは、測定部12bのセレクタ25に対して、DFF22の出力データDFF22_Qを選択する旨の選択信号(図示せず)を供給している。
前述したように、選択信号が“1”のとき、遅延調整回路26のセレクタselは、1段の遅延バッファbf1の出力信号を選択して出力する。そのため、DFF24の入力データDFF24_Dは、DFF22の出力データDFF22_Qに対して、遅延バッファbf1分の遅延時間d1だけ遅れる。
クロックCLKと同じ電位レベルとなるDFF24の入力クロックDFF24_CKが立ち上がるタイミングt22では、DFF24の入力データDFF24_Dは“1”であるため、DFF24に“1”が取り込まれ、出力データDFF24_Qが“1”となる。この結果を受けて、調整部12cは、次にクロックCLKがLレベルに立ち下がるタイミングt23で、測定結果6を“1”としている。
タイミングt23以降のタイミングt24,t25,t26,t27,t28,t29,t30,t31,t32,t33,t34,35においても同様の処理が行われる。すなわち、調整部12cは、選択信号の値を“2”、“3”、“4”、“5”とインクリメントし、遅延調整回路26に遅延バッファ2段分、3段分、4段分、5段分の遅延時間d2,d3,d4,d5を生じさせる。このときもタイミングt25,t28,t31では、DFF24の入力データDFF24_Dは“1”であるため、DFF24に“1”が取り込まれ、出力データDFF24_Qも“1”となる。この結果を受けて、調整部12cは、タイミングt26,t29,t32で、測定結果7,8,9を“1”としている。
一方、タイミングt34では、DFF24の入力データDFF24_Dは“0”であるため、DFF24に“0”が取り込まれ、出力データDFF24_Qも“0”となる。この結果を受けて、調整部12cは、タイミングt35で、測定結果10を“0”とする。
これにより、調整部12cは、クロックCLKのLレベルのパルス幅が、遅延バッファ4段分の遅延時間以上、遅延バッファ5段分の遅延時間未満であることを検出する。
このように、測定部12bでは、DFF22の出力値をDFF24で取り込める遅延バッファbf1〜bfmによる遅延量の境界値に基づきLレベルのパルス幅が測定される。
なお、上記のように、クロックのHレベルのパルス幅を測定するときも、Lレベルのパルス幅を測定するときも、同じ遅延調整回路26の遅延バッファbf1〜bfmが用いられる。そのため、各遅延バッファbf1〜bfmの遅延時間にばらつきがあっても、Hレベルのパルス幅の測定時と、Lレベルのパルス幅の測定時に同じだけの影響を及ぼすことになる。したがって、クロックのデューティ比の調整の際には、同じばらつきによる影響を受けて測定されたHレベルとLレベルのパルス幅が用いられるため、上記ばらつきによりクロックのデューティ比の調整精度が悪化することを抑制できる。
次に、第2の実施の形態における調整部12cの動作を記述したコードの一例を示す。
(調整部30cの動作を記述したコード例)
図7は、調整部の動作を記述したコードの一例を示す図である。調整部12cは、たとえば、CPU(Central Processing Unit)などの制御装置を有しており、図7に示すようなコード(ソフトウェア)を実行することで、クロックのHレベルのパルス幅と、Lレベルのパルス幅の調整を行う。なお、調整部12cは、図7に示すような記述の処理を実行する回路であってもよい。
1〜3行目では、変数curmindiff,pchmindiff,nchmindiffの初期値が与えられている。
変数curmindiffは、クロックのHレベルのパルス幅とLレベルのパルス幅の差の最小値が代入される変数である。図7に示した例では、Hレベルのパルス幅とLレベルのパルス幅の差は、前述した遅延調整回路26の遅延バッファbf1〜bfmの段数で表され、変数curmindiffの初期値は、総遅延バッファ段数(=m)+1である。
変数pchmindiffは、クロックのHレベルのパルス幅とLレベルのパルス幅の差が最小のときの、バッファ部12aのトランジスタta1〜tanへの制御信号(ゲート電圧のレベル)の構成情報が保持される変数である。変数pchmindiffの初期値は、0である。図7において、調整部12cからトランジスタta1〜tanに供給される制御信号は、pch1_en,pch2_en,…,pchN_enと表記されている。また、制御信号pch1_en〜pchN_enによるNビットの構成情報は、{pchN_en,…,pch2_en,pch1_en}と表記されている。
変数nchmindiffは、クロックのHレベルのパルス幅とLレベルのパルス幅の差が最小のときの、バッファ部12aのトランジスタtd1〜tdnへの制御信号(ゲート電圧のレベル)の構成情報が保持される変数である。変数nchmindiffの初期値は、0である。図7において、調整部12cからトランジスタtd1〜tdnに供給される制御信号は、nch1_en,nch2_en,…,nchN_enと表記されている。また、制御信号nch1_en〜nchN_enのNビットの構成情報は、{nchN_en,…,nch2_en,nch1_en}と表記されている。
4行目では、構成情報{pchN_en,…,pch2_en,pch1_en}が、1(たとえば、N=4ビットの場合だと{0001})に初期化される。
この場合、図3に示したバッファ部12aのトランジスタta1がオフしてta2〜tanがオンするので、トランジスタtb1が非活性化し、トランジスタtb2〜tbnが活性化する。
その後、{pchN_en,…,pch2_en,pch1_en}<2Nの関係を満たさなくなるまで、構成情報{pchN_en,…,pch2_en,pch1_en}の値がインクリメントされて、以下の5〜15行の処理が繰り返される。
5行目では、構成情報{nchN_en,…,nch2_en,nch1_en}が、1に初期化される。
この場合、図3に示したバッファ部12aのトランジスタtd1がオンしてtd2〜tdnがオフするので、トランジスタtc1が活性化し、トランジスタtc2〜tcnが非活性化する。
以上のような構成情報{pchN_en,…,pch2_en,pch1_en},{nchN_en,…,nch2_en,nch1_en}の初期化により、図4に示したステップS2の処理が行われる。
その後、{nchN_en,…,nch2_en,nch1_en}<2Nの関係を満たさなくなるまで、構成情報{nchN_en,…,nch2_en,nch1_en}の値がインクリメントされて、以下の6〜14行の処理が繰り返される。
6〜8行目では、上記の構成情報の値に応じた制御信号により駆動能力が設定されたバッファ部12aから出力されるクロックのパルス幅の測定で得られた測定結果に基づき、変数hpwidth,lpwidthが更新される。
変数hpwidthには、クロックのHレベルのパルス幅(High Pulse幅)の測定値が代入され、変数lpwidthには、クロックのLレベルのパルス幅(Low Pulse幅)の測定値が代入される。パルス幅の測定値は、たとえば、遅延バッファbf1〜bfmの段数で表現される。
そして、9行目で、クロックのHレベルのパルス幅とLレベルのパルス幅との差分(|hpwidth−lpwidth|)が、変数curmindiffの値よりも小さいか否かが判定される。そして、|hpwidth−lpwidth|<curmindiffの場合には、10行目に示されているように変数curmindiffに、|hpwidth−lpwidth|が代入される。また、11行目に示されているように、変数pchmindiffに、そのときの構成情報{pchN_en,…,pch2_en,pch1_en}の値が保持される。また、12行目に示されているように、変数nchmindiffに、そのときの構成情報{nchN_en,…,nch2_en,nch1_en}の値が保持される。
{pchN_en,…,pch2_en,pch1_en}=2Nとなると(トランジスタtb1〜tbn,tc1〜tcnの全組み合わせで測定が終了すると)、16,17行目の処理が行われる。16行目では、{pchN_en,…,pch2_en,pch1_en}=pchmindiffの処理が行われ、構成情報{pchN_en,…,pch2_en,pch1_en}に変数pchmindiffに保持されている値が代入される。17行目では、{nchN_en,…,nch2_en,nch1_en}=pchmindiffの処理が行われ、構成情報{nchN_en,…,nch2_en,nch1_en}に変数nchmindiffに保持されている値が代入される。
以上のような処理によって、クロックのHレベルのパルス幅とLレベルのパルス幅の差分が最も小さいときの、制御信号pch1_en〜pchN_en,nch1_en〜nchN_enの値が求められ、バッファ部3aに供給される。これにより、バッファ部3aからは、デューティ比が50:50により近いクロックが出力されることになる。
なお、デューティ比は、50:50に限定されるわけではなく、図7の16,17行目で得られた構成情報を変更することで、任意に設定可能である。たとえば、デューティ比を30:70に設定する場合、構成情報の制御信号pch1_en〜pchN_enで、“1”になっている個数を3/5に減らし、制御信号nch1_en〜nchN_enで“1”になっている個数を2/5増やすようにすればよい。
以上のように、本実施の形態の半導体集積回路10及びバッファ回路12−1では、バッファ部12aから出力されるクロックのH側とL側のパルス幅を測定し、測定結果に応じてバッファ部12aの駆動能力を変化させてクロックのデューティ比が調整される。これにより、クロックが高周波数化しても、バッファ部12aに含まれるトランジスタの特性の製造ばらつきによらず、伝搬されるクロックのデューティ比の悪化を抑制できる。このため、意図しないデューティ比のクロックが入力されることによる回路部13での誤動作の発生を抑制できる。
図8は、本実施の形態の半導体集積回路及びバッファ回路を用いたことによる効果の一例を示す図である。ここでは、PLL回路11から、デューティ比50:50で出力されたクロックが回路部13に達したときの様子と、回路部13に取り込まれるデータの例が示されている。図8(A)は、クロックのデューティ比が悪化しているときのデータ取り込みの例を示す図であり、図8(B)は、本実施の形態のバッファ回路12−1によりデューティ比が調整されたクロックによるデータ取り込みの例を示す図である。なお、図8(A),(B)の例では、回路部13は、クロックの立ち上がりエッジと立ち下がりエッジの両方を用いるDDR SDRAMのような回路であるものとしている。
図8(A)では、タイミングt40でデータD0が入力され、クロックの立ち下がりタイミングt41からホールド時間後のタイミングt42で次のデータD1が入力されている。また、クロックの立ち上がりタイミングt43からホールド時間後のタイミングt44で次のデータD2が入力されている。
図8(A)に示されているクロックはデューティ比が50:50から悪化して、回路部13に達する際には、Hレベルのパルス幅がLレベルのパルス幅に比べて短くなっている。このような現象は、たとえば、クロックバッファ内のnMOSとpMOSの抵抗比が一致しておらず、nMOS側の抵抗が大きい場合に生じる。
このような現象が起きると、セットアップのためのタイミングt40〜t41間の時間が、タイミングt42〜t43間の時間よりも短くなり、立ち下がりエッジでデータの取り込みを行う際のセットアップマージンが小さくなる。この場合、回路部13が正しくデータD0を取り込めなくなる可能性がある。
一方、本実施の形態のバッファ回路12−1では、クロックのデューティ比を50:50になるように調整できるため、図8(B)に示すようなクロックを回路部13に供給することができる。
図8(B)では、タイミングt50でデータD0が入力され、クロックの立ち下がりタイミングt51からホールド時間後のタイミングt52で次のデータD1が入力されている。また、クロックの立ち上がりタイミングt53からホールド時間後のタイミングt54で次のデータD2が入力されている。
図8(B)の例では、データD0が入力されるタイミングt50から、クロックの立ち下がりタイミングt51までの時間と、データD1が入力されるタイミングt52からクロックの立ち上がりタイミングt53までの時間とが等しい。そのため、回路部13は、クロックの立ち上がりエッジ及び立ち下がりエッジの両方でのデータD0,D1の取り込みの際のセットアップマージンを適切に確保でき、データが取り込めなくなるという不具合の発生が抑制される。
また、第2の実施の形態の半導体集積回路10のバッファ回路12−1では、アナログ回路のPLL回路などを用いずに、クロックのデューティ比を調整できるため、回路面積の増大を抑制できる。
(第3の実施の形態)
図9は、第3の実施の形態のバッファ回路の一例を示す図である。
図9のバッファ回路30−1は、図3に示したバッファ回路12−1の他の例を示している。図2に示したバッファ回路12−2〜12−nもバッファ回路30−1と同様の回路であってもよい。
バッファ回路30−1は、バッファ部30a、測定部30b、調整部30cを有している。
バッファ部30aは、図9の例では、図1及び図3に示したバッファ部3a、バッファ部12aと同じ回路としている。
測定部30bは、第2の実施の形態のバッファ回路12−1と異なり、ローパスフィルタ31とAD(Analogue to Digital)変換回路32を有している。
ローパスフィルタ31は、バッファ部30aから出力されるクロックを入力し、クロックのHレベルのパルス幅とLレベルのパルス幅の比に応じた電圧を出力する。
AD変換回路32は、ローパスフィルタ31の出力信号をデジタル値に変換して調整部30cに供給する。
調整部30cは、目標とする所定のデューティ比のときのAD変換回路32の出力値−VDD(電源電圧)/2の値のAD変換値を理想値として保持している。そして、調整部30cは、理想値と、測定部30bによるクロックのパルス幅に応じたAD変換回路32の出力値−VDD/2の値との比較結果に応じた制御信号を生成し、バッファ部30aのトランジスタta1〜tan,td1〜tdnに供給する。なお、AD変換回路32の出力値からVDD/2を引くのは、負値を除外して正値をサンプリングするためである。
以下、第3の実施の形態のバッファ回路30−1の動作例を説明する。
(バッファ回路30−1の動作例)
図10は、第3の実施のバッファ回路の動作の一例を示すフローチャートである。
調整部30cは、制御回路14から、バッファ部30aの駆動能力を調整する旨の指示を受け付けると(ステップS10)、トランジスタtb1〜tbn,tc1〜tcnの中から活性化するトランジスタを設定する(ステップS11)。ステップS11の処理では、調整部30cは、トランジスタta1〜tan,td1〜tdnに制御信号(ゲート電圧)の初期値を供給することで、トランジスタtb1〜tbn,tc1〜tcnのうち活性化または非活性化させるトランジスタを設定する。
その後、ステップS12の処理で測定部30bはパルス幅の測定を行う(図9の例では測定部30bの出力値としてはHレベルとLレベルのパルス幅の比に応じた値となる)。調整部30cは、測定結果に基づき、AD変換回路32の出力値(ADC出力)−VDD/2が理想値と一致しているか否かを判定する(ステップS13)。ADC出力−VDD/2が理想値と一致していれば、駆動能力の調整が終了する。このとき調整部30cは、制御回路14に対して、駆動能力の調整が終了した旨を通知するようにしてもよい。
ADC出力−VDD/2が理想値と一致していない場合には、調整部30cは、トランジスタtb1〜tbn,tc1〜tcnの全組み合わせを用いて測定が終わったか否かを判定する(ステップS14)。残っているトランジスタの組み合わせがある場合には、ステップS11で、未測定の組み合わせが選択され、ステップS12,S13の処理が繰り返される。
全組み合わせで測定が終わった場合、駆動能力の調整処理が終了する。このとき、調整部30cは、トランジスタtb1〜tbn,tc1〜tcnの全組み合わせを用いて測定が終わった時点で、理想値に最も近い測定結果が得られたときの制御信号を、バッファ部30aに供給するようにしてもよい。
以下、測定部30bと調整部30cによるクロックのパルス幅の測定と調整の一例を説明する。なお、以下では、クロックのデューティ比を50:50に調整する場合について説明する。
(クロックのパルス幅の測定/調整例)
図11は、クロックのパルス幅の測定及び調整例を示すタイミングチャートである。クロック、ローパスフィルタ31の出力信号(LPF出力)、ADC出力−VDD/2、High固定判定信号、Low固定判定信号の例が示されている。なお、High固定判定信号は、AD変換回路32の入力が、所定期間、VDDで固定されている場合に“1”となる信号であり、AD変換回路32から出力される。また、Low固定判定信号は、AD変換回路32の入力が、所定期間、GND(接地電位)に固定されている場合に“1”となる信号であり、AD変換回路32から出力される。
タイミングt60〜t62では、デューティ比が30:70のクロックがローパスフィルタ31に入力された場合について示されている。この場合、ローパスフィルタ31の出力信号は、クロックのデューティ比が50:50のときのローパスフィルタ31の出力信号よりも値aだけ小さい。よって、ADC出力−VDD/2も、クロックのデューティ比が50:50のときの理想値よりも値aだけ小さくなる(タイミングt61)。
このような場合、調整部30cは、たとえば、図10に示したステップS13の処理から、ステップS14の処理を行い、ステップS11の処理に戻って、トランジスタtb1〜tbn,tc1〜tcnの別の組み合わせを試す。
なお、デューティ比が30:70のとき、調整部30cは、バッファ部30aのpMOS抵抗とnMOS抵抗のうち、pMOS抵抗の方を下げるような制御信号をバッファ部30aに供給することで、ADC出力−VDD/2を理想値に近づけることができる。バッファ部30aのpMOS抵抗を下げるには、トランジスタta1〜tanのうち、オンする数を減らせばよい。
タイミングt63〜t65では、デューティ比が70:30のクロックがローパスフィルタ31に入力された場合について示されている。この場合、ローパスフィルタ31の出力信号は、クロックのデューティ比が50:50のときのローパスフィルタ31の出力信号よりも値bだけ大きい。よって、ADC出力−VDD/2も、クロックのデューティ比が50:50のときの理想値よりも値bだけ大きくなる(タイミングt64)。
このような場合、調整部30cは、たとえば、図10に示したステップS13の処理からステップS14の処理を行い、ステップS11の処理に戻って、トランジスタtb1〜tbn,tc1〜tcnの別の組み合わせを試す。
なお、デューティ比が70:30のとき、調整部30cは、バッファ部30aのpMOS抵抗とnMOS抵抗のうち、nMOS抵抗の方を下げるような制御信号をバッファ部30aに供給することで、ADC出力−VDD/2を理想値に近づけることができる。バッファ部30aのnMOS抵抗を下げるには、トランジスタtd1〜tdnのうち、オンする数を減らせばよい。
タイミングt66〜t67では、デューティ比が0:100のクロックがローパスフィルタ31に入力された場合について示されている。この場合、ローパスフィルタ31の出力信号は、GNDに固定される。このとき、ADC出力−VDD/2は不定となるが、AD変換回路32は、Low固定判定信号を“1”とする。
調整部30cは、“1”のLow固定判定信号を受けると、ステップS11の処理に戻って、トランジスタtb1〜tbn,tc1〜tcnの別の組み合わせを試す。
なお、デューティ比が0:100のとき、調整部30cは、バッファ部30aのpMOS抵抗とnMOS抵抗のうち、pMOS抵抗の方を下げるような制御信号をバッファ部30aに供給することで、ADC出力−VDD/2を理想値に近づけることができる。
タイミングt68〜t69では、デューティ比が100:0のクロックがローパスフィルタ31に入力された場合について示されている。この場合、ローパスフィルタ31の出力信号は、VDDに固定される。このとき、ADC出力−VDD/2は不定となるが、AD変換回路32は、High固定判定信号を“1”とする。
調整部30cは、“1”のHigh固定判定信号を受けると、ステップS11の処理に戻って、トランジスタtb1〜tbn,tc1〜tcnの別の組み合わせを試す。
なお、デューティ比が100:0のとき、調整部30cは、バッファ部30aのpMOS抵抗とnMOS抵抗のうち、nMOS抵抗の方を下げるような制御信号をバッファ部30aに供給することで、ADC出力−VDD/2を理想値に近づけることができる。
タイミングt70〜t72では、デューティ比が50:50のクロックがローパスフィルタ31に入力された場合について示されている。この場合、ADC出力−VDD/2は、理想値と一致する(タイミングt71)。
このような場合、調整部30cは、バッファ部30aの駆動能力の調整処理を終了する。
次に、第3の実施の形態における調整部30cの動作を記述したコードの一例を示す。
(調整部30cの動作を記述したコード例)
図12は、調整部の動作を記述したコードの一例を示す図である。図7に示したコードと同じ要素については同じ記号を用いており、説明を省略する。
調整部30cは、たとえば、CPUなどの制御装置を有しており、図12に示すようなコード(ソフトウェア)を実行することで、クロックのHレベルのパルス幅と、Lレベルのパルス幅の調整を行う。なお、調整部30cは、図12に示すような記述の処理を実行する回路であってもよい。
1行目では、構成情報{pchN_en,…,pch2_en,pch1_en}が、1に初期化される。その後、{pchN_en,…,pch2_en,pch1_en}<2Nの関係を満たさなくなるまで、構成情報{pchN_en,…,pch2_en,pch1_en}がインクリメントされて、以下の2〜7行の処理が繰り返される。
3行目では、構成情報{nchN_en,…,nch2_en,nch1_en}が、1に初期化される。その後、{nchN_en,…,nch2_en,nch1_en}<2Nの関係を満たさなくなるまで、構成情報{nchN_en,…,nch2_en,nch1_en}がインクリメントされて、以下の3〜6行の処理が繰り返される。
3〜6行目では、上記の構成情報の値に応じたパルス幅の測定で得られた測定結果に基づき、ADC出力−VDD/2が、デューティ比が50:50のときの理想値(50:50)と一致するか否かの判定が行われる。ADC出力−VDD/2==理想値(50:50)のときには、“exit”となり、処理が終了する。
以上のように、第3の実施の形態のバッファ回路30−1では、バッファ部30aから出力されるクロックのH側とL側のパルス幅の比に応じてバッファ部30aの駆動能力を変化させることで、クロックのデューティ比が調整される。これにより、クロックが高周波数化しても、バッファ部30aに含まれるトランジスタの特性の製造ばらつきによらず、伝搬されるクロックのデューティ比の悪化を抑制できる。このため、意図しないデューティ比のクロックが入力されることによる回路部13での誤動作の発生を抑制できる。
以上、実施の形態に基づき、本発明のバッファ回路及び半導体集積回路の一観点について説明してきたが、これらは一例にすぎず、上記の記載に限定されるものではない。
たとえば、制御回路5,14は、測定部3b,12b,30bでの測定結果を受け、デューティ比が悪化してきたら、調整部3c,12c,30cの機能を有効にするようにしてもよい。たとえば、制御回路5,14は、Hレベルのパルス幅がLレベルのパルス幅に対し所定の割合以下または以上になったら、調整部3c,12c,30cの機能を有効にするようにしてもよい。
また、バッファ部3a,12a,30aのトランジスタの能力を変えて、バッファ部3a,12a,30aに含まれるトランジスタの個数を減らすことにより、回路面積を縮小したり、信号数を削減したりするようにしてもよい。
1 半導体集積回路
2 クロック生成回路
3−1〜3−n バッファ回路
3a バッファ部
3b 測定部
3c 調整部
4 回路部
5 制御回路
CK1〜CK3 クロック
INV インバータ
ta1〜tan,tb1〜tbn,tc1〜tcn,td1〜tdn トランジスタ

Claims (10)

  1. 複数のトランジスタを含み、入力クロックを受け取り、前記入力クロックの波形整形を行うことにより、出力クロックを出力するバッファ部と、
    前記出力クロックの第1の電位レベルの第1のパルス幅と第2の電位レベルの第2のパルス幅とを測定する測定部と、
    前記複数のトランジスタを全ての組み合わせで活性化して前記測定部が前記全ての組み合わせで活性化したときの前記第1のパルス幅と前記第2のパルス幅を測定するまで、前記測定部での測定結果によらず、活性化する組み合わせの変更を継続し、前記全ての組み合わせで活性化したときの前記第1のパルス幅と前記第2のパルス幅が測定されたのち、前記第1のパルス幅と前記第2のパルス幅の比が、目標値に最も近くなる第1の組み合わせを前記全ての組み合わせから検出し、前記複数のトランジスタのうち、前記第1の組み合わせに含まれる複数の第1のトランジスタを活性化し、前記第1の組み合わせに含まれない複数の第2のトランジスタを非活性化することで、前記バッファ部の駆動能力を調整する調整部と、
    を有することを特徴とするバッファ回路。
  2. 前記バッファ部は、複数の第1極性のトランジスタと複数の第2極性のトランジスタとを有し、
    前記調整部は、前記測定結果に基づき、前記複数の第1極性のトランジスタと前記複数の第2極性のトランジスタのうち、活性化させる第1極性のトランジスタと第2極性のトランジスタの数を制御することで、前記バッファ部の駆動能力を変化させる、ことを特徴とする請求項1に記載のバッファ回路。
  3. 前記測定部は、
    前記出力クロックの前記第1の電位レベルから前記第2の電位レベルへの遷移タイミングに同期して動作する第1フリップフロップ及び第2フリップフロップと、
    前記出力クロックの前記第2の電位レベルから前記第1の電位レベルへの遷移タイミングに同期して動作する第3フリップフロップ及び第4フリップフロップと、
    前記第1フリップフロップ及び前記第3フリップフロップの出力値を遅延する直列に接続された複数の遅延素子と、前記複数の遅延素子のうち使用する遅延素子を選択するセレクタを備えた遅延調整回路と、を有し、
    前記第1フリップフロップの出力値を前記第4フリップフロップで取り込める前記遅延素子による遅延量の境界値に基づき前記第1のパルス幅を測定し、
    前記第3フリップフロップの出力値を前記第2フリップフロップで取り込める前記遅延素子による遅延量の境界値に基づき前記第2のパルス幅を測定する、
    ことを特徴とする請求項1または2に記載のバッファ回路。
  4. 前記測定部は、
    前記出力クロックを受け取り、前記出力クロックの前記第1のパルス幅と前記第2のパルス幅の比に応じた電圧値を出力するフィルタを有し、
    前記調整部は、前記電圧値と、目標とする前記第1のパルス幅と前記第2のパルス幅の比に応じた前記電圧値の理想値との比較結果に基づいて、前記バッファ部の駆動能力を変化させる、
    ことを特徴とする請求項1または2に記載のバッファ回路。
  5. 前記バッファ回路は、クロックに同期して動作する回路部に前記出力クロックを供給するクロック経路に含まれる、
    ことを特徴とする請求項1乃至4の何れか一項に記載のバッファ回路。
  6. クロックに同期して動作する回路部と、
    前記回路部に前記クロックを供給するクロック経路に含まれるバッファ回路と、を有し、
    前記バッファ回路は、
    複数のトランジスタを含み、入力クロックを受け取り、前記入力クロックの波形整形を行うことにより、出力クロックを出力するバッファ部と、
    前記出力クロックの第1の電位レベルの第1のパルス幅と第2の電位レベルの第2のパルス幅とを測定する測定部と、
    前記複数のトランジスタを全ての組み合わせで活性化して前記測定部が前記全ての組み合わせで活性化したときの前記第1のパルス幅と前記第2のパルス幅を測定するまで、前記測定部での測定結果によらず、活性化する組み合わせの変更を継続し、前記全ての組み合わせで活性化したときの前記第1のパルス幅と前記第2のパルス幅が測定されたのち、前記第1のパルス幅と前記第2のパルス幅の比が、目標値に最も近くなる第1の組み合わせを前記全ての組み合わせから検出し、前記複数のトランジスタのうち、前記第1の組み合わせに含まれる複数の第1のトランジスタを活性化し、前記第1の組み合わせに含まれない複数の第2のトランジスタを非活性化することで、前記バッファ部の駆動能力を調整する調整部と、
    を有することを特徴とする半導体集積回路。
  7. 前記バッファ回路の前記調整部が前記バッファ部の駆動能力を調整するか否かを制御する制御回路を有することを特徴とする請求項6に記載の半導体集積回路。
  8. 前記バッファ部は、複数の第1極性のトランジスタと複数の第2極性のトランジスタとを有し、
    前記調整部は、前記測定結果に基づき、前記複数の第1極性のトランジスタと前記複数の第2極性のトランジスタのうち、活性化させる第1極性のトランジスタと第2極性のトランジスタの数を制御することで、前記バッファ部の駆動能力を変化させる、ことを特徴とする請求項6に記載の半導体集積回路。
  9. 前記測定部は、
    前記出力クロックの前記第1の電位レベルから前記第2の電位レベルへの遷移タイミングに同期して動作する第1フリップフロップ及び第2フリップフロップと、
    前記出力クロックの前記第2の電位レベルから前記第1の電位レベルへの遷移タイミングに同期して動作する第3フリップフロップ及び第4フリップフロップと、
    前記第1フリップフロップ及び前記第3フリップフロップの出力値を遅延する直列に接続された複数の遅延素子と、前記複数の遅延素子のうち使用する遅延素子を選択するセレクタを備えた遅延調整回路と、を有し、
    前記第1フリップフロップの出力値を前記第4フリップフロップで取り込める前記遅延素子による遅延量の境界値に基づき前記第1のパルス幅を測定し、
    前記第3フリップフロップの出力値を前記第2フリップフロップで取り込める前記遅延素子による遅延量の境界値に基づき前記第2のパルス幅を測定する、
    ことを特徴とする請求項6に記載の半導体集積回路。
  10. 前記測定部は、
    前記出力クロックを受け取り、前記出力クロックの前記第1のパルス幅と前記第2のパルス幅の比に応じた電圧値を出力するフィルタを有し、
    前記調整部は、前記電圧値と、目標とする前記第1のパルス幅と前記第2のパルス幅の比に応じた前記電圧値の理想値との比較結果に基づいて、前記バッファ部の駆動能力を変化させる、
    ことを特徴とする請求項6に記載の半導体集積回路。
JP2013093259A 2013-04-26 2013-04-26 バッファ回路及び半導体集積回路 Expired - Fee Related JP6135279B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2013093259A JP6135279B2 (ja) 2013-04-26 2013-04-26 バッファ回路及び半導体集積回路
US14/256,815 US9312839B2 (en) 2013-04-26 2014-04-18 Buffer circuit and semiconductor integrated circuit

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013093259A JP6135279B2 (ja) 2013-04-26 2013-04-26 バッファ回路及び半導体集積回路

Publications (2)

Publication Number Publication Date
JP2014216875A JP2014216875A (ja) 2014-11-17
JP6135279B2 true JP6135279B2 (ja) 2017-05-31

Family

ID=51788741

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013093259A Expired - Fee Related JP6135279B2 (ja) 2013-04-26 2013-04-26 バッファ回路及び半導体集積回路

Country Status (2)

Country Link
US (1) US9312839B2 (ja)
JP (1) JP6135279B2 (ja)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9866208B2 (en) 2015-06-15 2018-01-09 Microsoft Technology Lincensing, LLC Precision measurements and calibrations for timing generators
CN108123705B (zh) * 2016-11-29 2021-01-19 比亚迪股份有限公司 信号的同步控制方法和装置
KR102665713B1 (ko) * 2016-12-21 2024-05-14 에스케이하이닉스 주식회사 듀티 보정 회로 및 듀티 보정 방법
CN107395166B (zh) * 2017-07-18 2020-06-23 中国电子科技集团公司第二十四研究所 基于延迟锁相的时钟占空比稳定电路
KR102540232B1 (ko) * 2017-12-21 2023-06-02 삼성전자주식회사 디지털 측정 회로 및 이를 이용한 메모리 시스템
JP7211260B2 (ja) * 2019-05-17 2023-01-24 株式会社デンソー 通信装置

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3745123B2 (ja) * 1998-08-24 2006-02-15 三菱電機株式会社 デューティ比補正回路及びクロック生成回路
US6967514B2 (en) * 2002-10-21 2005-11-22 Rambus, Inc. Method and apparatus for digital duty cycle adjustment
JP2004348573A (ja) 2003-05-23 2004-12-09 Renesas Technology Corp クロック生成回路およびそれを含むシステム
JP4191579B2 (ja) 2003-11-25 2008-12-03 川崎マイクロエレクトロニクス株式会社 デューティ比補正回路
JP3953041B2 (ja) 2004-03-31 2007-08-01 日本電気株式会社 出力バッファ回路および半導体集積回路
JP2006345405A (ja) * 2005-06-10 2006-12-21 Sony Corp デューティ比可変回路およびこれを用いたad変換回路
JP2007096410A (ja) * 2005-09-27 2007-04-12 Interchip Kk パルス信号発生器及びクロック信号発生器
KR100945797B1 (ko) * 2008-05-30 2010-03-08 주식회사 하이닉스반도체 듀티 사이클 보정 회로 및 방법
JP5241776B2 (ja) * 2010-06-25 2013-07-17 株式会社日立製作所 デューティ補償回路
KR101068572B1 (ko) * 2010-07-06 2011-10-04 주식회사 하이닉스반도체 듀티 보정 회로
US8462906B1 (en) * 2011-09-15 2013-06-11 Altera Corporation Apparatus and methods for detection and correction of transmitter duty cycle distortion
US9148135B2 (en) * 2012-06-26 2015-09-29 Taiwan Semiconductor Manufacturing Co., Ltd. Real time automatic and background calibration at embedded duty cycle correlation

Also Published As

Publication number Publication date
US20140320187A1 (en) 2014-10-30
US9312839B2 (en) 2016-04-12
JP2014216875A (ja) 2014-11-17

Similar Documents

Publication Publication Date Title
JP6135279B2 (ja) バッファ回路及び半導体集積回路
JP6722900B2 (ja) タイムインターリーブ型ad変換器
US7457191B2 (en) Apparatus and method of generating output enable signal for semiconductor memory apparatus
US9755657B2 (en) Successive approximation register analog-to-digital converter and semiconductor device including the same
US9172385B2 (en) Timing adjustment circuit and semiconductor integrated circuit device
US8644440B1 (en) Apparatus and methods for detection and correction of transmitter duty cycle distortion
US20100213991A1 (en) Delay-locked loop circuit and method for synchronization by delay-locked loop
US11662762B2 (en) Clock duty cycle adjustment and calibration circuit and method of operating same
US8446199B2 (en) Duty cycle correction circuit
US10890938B2 (en) Clock duty cycle adjustment and calibration circuit and method of operating same
JP2004187200A (ja) デューティ比補正回路
TW202211630A (zh) 用於雙倍資料率裝置的占空比更正電路
US10868541B1 (en) Code generator including asynchronous counter and synchronous counter, and operating method thereof
US20170063363A1 (en) Comparator, electronic circuit, and method of controlling comparator
US20200373919A1 (en) Digital measurement circuit and memory system using the same
US8384460B1 (en) Techniques for phase adjustment
US8471617B2 (en) Duty cycle correction in a delay-locked loop
KR100902047B1 (ko) 클럭 조절 회로 및 이를 이용한 반도체 메모리 장치
US8854093B2 (en) Multi-phase clock generation circuit
CN113381750A (zh) 循环借用计数器
JP2009044579A (ja) クロック生成回路及び電子機器
US10587256B2 (en) Operation method of signal receiver, pulse width controller, and electronic device including the same
KR101215954B1 (ko) 듀티 사이클 보정 회로
CN112578700A (zh) 电子装置和该电子装置的操作方法
TWI482172B (zh) 用以產生多相位時脈信號和對應的指示信號之電路及方法

Legal Events

Date Code Title Description
A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A712

Effective date: 20150611

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20160104

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20160809

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20160816

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20161013

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20170328

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20170410

R150 Certificate of patent or registration of utility model

Ref document number: 6135279

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees