(57)【要約】【課題】電源ノイズ量を抑えること。【解決手段】集積回路１００は、出力回路１０１と、デカップリングコンデンサ１０２と、判定部１０３と、制御部１０４と、を有する。出力回路１０１は、電源ラインとグランドラインとに接続され、集積回路１００内のコア回路から入力される信号を出力する。また、出力回路１０１に入力される信号の周波数に応じて電源ラインのグランドラインに対するインピーダンスが変化する。デカップリングコンデンサ１０２は、一端が電源ラインに接続され、他端がグランドラインに接続され、容量値が可変である。判定部１０３は、出力回路１０１に入力される信号の周波数を判定する。制御部１０４は、デカップリングコンデンサ１０２の容量値を、判定部１０３が判定した周波数に基づき決定した容量値に設定する。【選択図】図１
2015076451.tif 000002
【特許請求の範囲】
【請求項１】
電源ラインとグランドラインとに接続され、入力される信号を出力する出力回路であって、前記入力される信号の周波数に応じて前記電源ラインの前記グランドラインに対するインピーダンスが変化する出力回路と、
一端が前記電源ラインに接続され、他端が前記グランドラインに接続され、容量値が可変なデカップリングコンデンサと、
前記入力される信号の周波数を判定する判定部と、
前記デカップリングコンデンサの容量値を、前記判定部が判定した前記周波数に基づき決定した容量値に設定する制御部と、
を有することを特徴とする集積回路。
【請求項２】
前記制御部は、周波数と容量値との対応情報と、前記判定部が判定した前記周波数と、に基づき決定した容量値に設定することを特徴とする請求項１に記載の集積回路。
【請求項３】
前記出力回路が複数であって、
前記デカップリングコンデンサの前記一端は、前記出力回路の各々に接続された前記電源ラインに接続され、前記デカップリングコンデンサの前記他端は、前記出力回路の各々に接続された前記グランドラインに接続され、
前記判定部は、前記出力回路の各々について、前記入力される信号の周波数を判定し、
前記制御部は、前記デカップリングコンデンサの容量値を、前記出力回路の各々について前記判定部が判定した前記周波数に基づき決定した容量値に設定することを特徴とする請求項１または２に記載の集積回路。
【請求項４】
容量値の複数の候補値の各々について、前記デカップリングコンデンサの容量値を前記候補値にした場合の複数の周波数帯の各々に対応する前記インピーダンスに基づく値を記憶する記憶部を有し、
前記判定部は、前記出力回路の各々について、前記複数の周波数帯のうち、前記入力される信号の周波数がいずれの周波数帯であるかを判定し、
前記制御部は、
前記複数の候補値の各々について、前記複数の周波数帯の各々について前記判定部が前記周波数帯であると判定した数と、前記複数の周波数帯の各々について前記記憶部に記憶された前記インピーダンスに基づく値と、に基づいて、指標値を算出し、
前記デカップリングコンデンサの容量値を、前記複数の候補値のうち、前記複数の周波数帯の各々について算出した前記指標値に基づいていずれかの候補値に設定することを特徴とする請求項３に記載の集積回路。
【請求項５】
電源ラインとグランドラインとに接続され、入力される信号を出力する出力回路であって、前記入力される信号の周波数に応じて前記電源ラインの前記グランドラインに対するインピーダンスが変化する出力回路と、
一端が前記電源ラインに接続され、他端が前記グランドラインに接続され、容量値が可変なデカップリングコンデンサと、
を有する集積回路が、
前記入力される信号の周波数を判定し、
前記デカップリングコンデンサの容量値を、判定した前記周波数に基づき決定した容量値に設定する、
ことを特徴とする制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、集積回路、および制御方法に関する。
【背景技術】
【０００２】
従来、半導体集積回路の信号の高速化や低電圧化に伴い、同時動作信号ノイズや共振ノイズの影響により電源電圧が変動することがある。これに対して、電源ラインとグランドラインとの間にデカップリングコンデンサを設けて電源インピーダンスを調整することにより、電源電圧を安定化させる技術が公知である。また、デカップリングコンデンサの容量値を示す情報を外部からメモリに格納し、メモリに格納された容量値にデカップリングコンデンサの容量値を設定する技術が公知である（例えば、以下特許文献１参照。）。また、デカップリングコンデンサの容量値を電圧値によって動的に制御する技術が公知である（例えば、以下特許文献２参照。）。
【０００３】
また、ＦＰＧＡ（Ｆｉｅｌｄ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｇａｔｅ  Ａｒｒａｙ）等の半導体装置における、複数のピンの入出力信号が同時動作することにより発生する同時動作信号ノイズを見積もる技術が公知である（例えば、以下特許文献３参照。）。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００６−２９５０２７号公報
【特許文献２】特開２００９−１７６９２２号公報
【特許文献３】特開２００９−１４０２６５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、出力回路に入力される信号の周波数によっては電源ノイズ量を抑えることが困難であるという問題点がある。
【０００６】
１つの側面では、本発明は、電源ノイズ量を抑えることができる集積回路、および制御方法を提供することを目的とする。
【課題を解決するための手段】
【０００７】
本発明の一側面によれば、電源ラインとグランドラインとに接続され、入力される信号を出力する出力回路であって、前記入力される信号の周波数に応じて前記電源ラインの前記グランドラインに対するインピーダンスが変化する出力回路と、一端が前記電源ラインに接続され、他端が前記グランドラインに接続され、容量値が可変なデカップリングコンデンサと、を有し、前記入力される信号の周波数を判定し、前記デカップリングコンデンサの容量値を、判定した前記周波数に基づき決定した容量値に設定する集積回路、および制御方法が提案される。
【発明の効果】
【０００８】
本発明の一態様によれば、電源ノイズ量を抑えることができる。
【図面の簡単な説明】
【０００９】
【図１】図１は、本実施の形態にかかる集積回路例を示す説明図である。
【図２】図２は、電源インピーダンスを変更できない例を示す説明図である。
【図３】図３は、集積回路の他の例を示す説明図である。
【図４】図４は、集積回路のレイアウト例を示す説明図である。
【図５】図５は、重み付け情報の詳細例を示す説明図である。
【図６】図６は、閾値の決定例を示す説明図である。
【図７】図７は、重み付け係数の決定例を示す説明図である。
【図８】図８は、判定部と動作本数検出部との詳細例を示す説明図である。
【図９】図９は、周波数の検出例を示す説明図である。
【図１０】図１０は、制御部の詳細例を示す説明図である。
【図１１】図１１は、デカップリングコンデンサ例１を示す説明図である。
【図１２】図１２は、デカップリングコンデンサ例２を示す説明図である。
【図１３】図１３は、デカップリングコンデンサ領域例１を示す説明図である。
【図１４】図１４は、デカップリングコンデンサ領域例２を示す説明図である。
【図１５】図１５は、抵抗値の選択例１を示す説明図である。
【図１６】図１６は、抵抗値の選択例２を示す説明図である。
【図１７】図１７は、抵抗値の選択例３を示す説明図である。
【図１８】図１８は、抵抗値の選択例４を示す説明図である。
【発明を実施するための形態】
【００１０】
以下に添付図面を参照して、本発明にかかる集積回路、および制御方法の実施の形態を詳細に説明する。
【００１１】
図１は、本実施の形態にかかる集積回路例を示す説明図である。本実施の形態にかかる集積回路１００は、出力回路１０１と、デカップリングコンデンサ１０２と、判定部１０３と、制御部１０４と、を有する。出力回路１０１は、電源ラインとグランドラインとに接続され、集積回路１００内のコア回路からＦＩＦＯ（Ｆｉｒｓｔ  Ｉｎ  Ｆｉｒｓｔ  Ｏｕｔ）１０５を介して入力される信号を出力する。また、出力回路１０１に入力される信号の周波数に応じて電源ラインのグランドラインに対するインピーダンスが変化する。デカップリングコンデンサ１０２は、一端が電源ラインに接続され、他端がグランドラインに接続され、容量値が可変である。
【００１２】
判定部１０３は、出力回路１０１に入力される信号の周波数を判定する。例えば、判定部１０３は、複数の周波数帯のいずれの周波数であるかを判定してもよい。そして、制御部１０４は、デカップリングコンデンサ１０２の容量値を、判定部１０３が判定した周波数に基づき決定した容量値に設定する。例えば、制御部１０４は、周波数と容量値との対応情報１１０と、判定部１０３が判定した周波数と、に基づき決定した容量値に設定する。例えば、制御部１０４は、判定した周波数に基づいて、対応情報１１０から容量値を決定してもよい。
【００１３】
このように、信号の周波数に応じた電源インピーダンス特性に制御することができる。したがって、周波数が変動しても電源インピーダンスのピークを低くすることができ、電源ノイズ量を抑えることができる。
【００１４】
また、判定部１０３と制御部１０４とＦＩＦＯ１０５とは、論理積回路であるＡＮＤ、否定論理回路であるＩＮＶＥＲＴＥＲ、論理和回路であるＯＲや、ラッチ回路であるＦＦ（Ｆｌｉｐ  Ｆｌｏｐ）などの素子によって形成されてもよい。また、各部は、スタンダードセルやストラクチャードＡＳＩＣ（Ａｐｐｌｉｃａｔｉｏｎ  Ｓｐｅｃｉｆｉｃ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）などの特定用途向けＩＣ（以下、単に「ＡＳＩＣ」と称す。）やＦＰＧＡなどのＰＬＤ（Ｐｒｏｇｒａｍｍａｂｌｅ  Ｌｏｇｉｃ  Ｄｅｖｉｃｅ）によって実現されてもよい。具体的には、例えば、上述した各部の機能をハードウェア記述言語などによってネットリストに機能定義し、そのネットリストを論理合成してＰＬＤに与えることにより、各部を実現してもよい。
【００１５】
また、後述するが、例えば、デカップリングコンデンサ１０２は、抵抗値が可変な抵抗と容量とを有し、抵抗の一端が電源ラインに接続され、抵抗の他端が容量の一端に接続され、容量の他端がグランドラインに接続されてもよい。例えば、抵抗値が変更されることにより、容量値が擬似的に可変になる。
【００１６】
図２は、電源インピーダンスを変更できない例を示す説明図である。電源インピーダンスを変更できない場合、出力回路から出力される信号の周波数に依存して電源インピーダンスＺが周波数に応じたターゲットインピーダンス以下となるか否かが変化する。図２の例では、ＤＩＥには、集積回路が作り込まれ、出力回路からの信号線がＰＫＧ（パッケージ）に接続される。ＤＩＥとＰＫＧとＰＣＢ（Ｐｒｉｎｔｅｄ  Ｃｉｒｃｕｉｔ  Ｂｏａｒｄ，プリント基板）とは、電源ＶＤＥとグランドＶＳＳとに接続される。ＤＩＥとＰＫＧとの間、ＰＫＧとＰＣＢとの間、ＰＣＢの電源ラインは、抵抗やインダクタンスＬ１，Ｌ２，Ｌ３の成分がある。ＤＩＥに作り込まれた集積回路には、電源ラインとグランドラインとの間にデカップリングコンデンサＣ１が設けられる。また、ＰＣＢには、デカップリングコンデンサＣ２やバルクコンデンサＣ３が設けられる。
【００１７】
１倍周期の場合、「ＯＫ」となっているように、電源インピーダンスは、１倍周期のターゲットインピーダンス以下であるため、電源ノイズ量によって誤動作が発生する可能性が低い。２倍周期の場合、「ＮＧ」となっているように、電源インピーダンスは、２倍周期のターゲットインピーダンスより大きいため、電源ノイズ量によって誤動作が発生する可能性が高い。３倍周期の場合、「ＯＫ」となっているように、電源インピーダンスは、３倍周期のターゲットインピーダンス以下であるため、電源ノイズ量によって誤動作が発生する可能性が低い。
【００１８】
また、デカップリングコンデンサＣ１の容量値によってインピーダンス特性が異なる。そのため、２倍周期において電源インピーダンスがターゲットインピーダンス以下となるように容量値が設定されても、１倍周期または３倍周期において電源インピーダンスが各周期のターゲットインピーダンス以下とならない場合がある。
【００１９】
本実施の形態では、出力回路に入力される信号の周波数に応じてデカップリングコンデンサの容量値を変更する。これにより、信号の周波数に応じた電源インピーダンス特性に制御することができる。したがって、電源インピーダンスのピークを低くすることができ、電源ノイズ量を抑えることができる。
【００２０】
図３は、集積回路の他の例を示す説明図である。ＤＩＥには、集積回路３００が作り込まれ、Ｉ／Ｏ回路３０１からの信号線がパッケージに接続される。集積回路３００は、複数のＩ／Ｏ回路３０１と、デカップリングコンデンサ３０２と、ＦＩＦＯ３０３と、判定部３０４と、動作本数検出部３０５と、制御部３０６と、を有する。Ｉ／Ｏ回路３０１の各々は、電源ラインｖｄｌとグランドラインｖｓｌとに接続され、外部から入力される信号を内部に出力する入力機能と、内部のコアロジックから入力される信号を出力する出力機能とを有する回路である。以降、出力機能のみについて説明するため、入力された信号とは、内部のコアロジックから入力された信号を指す。Ｉ／Ｏ回路３０１に入力される信号の周波数に応じて電源ラインｖｄｌのグランドラインｖｓｌに対するインピーダンスが変化する。
【００２１】
ＦＩＦＯ３０３は、Ｉ／Ｏ回路３０１ごとに、Ｉ／Ｏ回路３０１への信号の値を格納する。ＦＩＦＯ３０３は、Ｉ／Ｏ回路３０１ごとに、電源インピーダンスが切り替わる時に、格納した信号の値をＩ／Ｏ回路３０１へ出力する。図３の集積回路３００例では、デカップリングコンデンサ３０２は、抵抗値が可変な抵抗と容量とを有し、抵抗の一端が電源ラインｖｄｌに接続され、抵抗の他端が容量の一端に接続され、容量の他端がグランドラインｖｓｌに接続される。例えば、抵抗の抵抗値が変更されることにより、容量値が疑似的に変化することになる。
【００２２】
データベース３１０は、抵抗値の複数の候補値の各々について、デカップリングコンデンサ３０２の抵抗値を候補値にした場合の複数の周波数帯の各々に対応するインピーダンスに基づく値を記憶する記憶部である。データベース３１０は、例えば、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）によって実現される。データベース３１０の内容は、例えば、製造時に書き込まれる。本実施の形態では、抵抗値が可変であるため、抵抗値の複数の候補の各々についてインピーダンスに基づく値が記憶されているが、これに限らない。例えば、抵抗を有さないデカップリングコンデンサ３０２の場合、容量値の複数の候補値の各々について抵抗値を候補値にした場合の複数の周波数帯の各々に対応するインピーダンスに基づく値が記憶される。
【００２３】
判定部３０４は、Ｉ／Ｏ回路３０１の各々について、入力される信号の周波数を判定する。また、例えば、判定部３０４は、Ｉ／Ｏ回路３０１の各々について、複数の周波数帯のうち、入力される信号の周波数がいずれの周波数帯であるかを判定してもよい。
【００２４】
制御部３０６は、デカップリングコンデンサ３０２の容量値を、Ｉ／Ｏ回路３０１の各々について判定部３０４が判定した周波数に基づき決定した容量値に設定する。本実施の形態では、デカップリングコンデンサ３０２の抵抗値を可変にするため、制御部３０６は、デカップリングコンデンサ３０２の抵抗値をＩ／Ｏ回路３０１の各々について判定部３０４が判定した周波数に基づき決定した抵抗値に設定する。
【００２５】
また、制御部３０６は、複数の周波数帯の各々について判定部３０４が周波数帯であると判定した数と、複数の周波数帯の各々についてデータベース３１０に記憶されたインピーダンスに基づく値と、に基づいて、指標値を算出する。具体的には、動作本数検出部３０５は、複数の周波数帯の各々について判定部３０４が周波数帯であると判定した数を検出する。そして、制御部３０６は、動作本数検出部３０５が検出した数と、データベース３１０に記憶されたインピーダンスに基づく値と、に基づいて、指標値を算出する。つぎに、制御部３０６は、デカップリングコンデンサ３０２の抵抗値を複数の候補値のうち、複数の周波数の各々について算出した指標値に基づいていずれかの候補値に設定する。具体的には、制御部３０６は、デカップリングコンデンサ３０２の抵抗値を、複数の候補値のうち、指標値の合計値が閾値ｔｈ以下である候補値に設定する。判定部３０４と動作本数検出部３０５と制御部３０６との詳細例は後述する。
【００２６】
図４は、集積回路のレイアウト例を示す説明図である。図４の例では、コアロジック４０２からの各信号線がＦＩＦＯ３０３に接続される。ＦＩＦＯ３０３からの出力の信号線とＩ／Ｏ回路３０１への入力の信号線との間が短くなるように、ＦＩＦＯ３０３とＩ／Ｏ回路３０１とがレイアウトされる。また、図４の例では、デカップリングコンデンサ領域４０１は、Ｉ／Ｏ回路３０１の近くにレイアウトされる。デカップリングコンデンサ領域４０１については後述する。
【００２７】
図５は、重み付け情報の詳細例を示す説明図である。データベース３１０は、抵抗値ごとに、ノイズ量の指標値を算出するための周波数に対応する重み付け係数を記憶する。データベース３１０は、抵抗値、重み付け係数のフィールドを有する。各フィールドに情報が設定されることにより重み付け情報５０１として設定される。上述したように、データベース３１０は、ＲＯＭによって実現され、各重み付け情報５０１については、例えば、出荷前に書き込まれてあることとする。
【００２８】
抵抗値のフィールドには、上述したように、抵抗値を示す識別情報が設定される。抵抗値を示す識別情報は、例えば、デカップリングコンデンサ３０２が有する抵抗の値を制御部３０６が設定するための情報である。重み付け係数のフィールドには、各周波数に対応する重み付け係数が設定される。ここでは、基準となる周波数を１倍周期とする。例えば、１倍周期を５３３［ＭＨｚ］とし、２倍周期を２６６［ＭＨｚ］とし、３倍周期を１７８［ＭＨｚ］とする。
【００２９】
例えば、抵抗値がａの場合、１倍周期に対応する重み付け係数は０．２であり、２倍周期に対応する重み付け係数は３であり、３倍周期に対応する重み付け係数は５である。
【００３０】
グラフｇ５０に示すように、抵抗値ａの場合のインピーダンス特性を基準にした場合に、反共振周波数のピークを下げるには、デカップリングコンデンサ３０２の抵抗の値を抵抗値ａから微調整すればよい。グラフｇ５０の例では、抵抗値ｃの場合のインピーダンス特性は抵抗の値を微調整することにより電源インピーダンスのピークが下げられた例である。抵抗値ａを基準にした場合に、反共振周波数の位置をずらすには、デカップリングコンデンサ３０２の抵抗を高抵抗にすればよい。グラフｇ５０の例では、抵抗値ｂの場合のインピーダンス特性は抵抗を高抵抗にした場合の例である。ここでの高抵抗とは、例えば、１［ＭΩ］などのようにデカップリングコンデンサ３０２の容量を電源から切り離すことと等価な程度に抵抗値が高いことをいう。
【００３１】
図６は、閾値の決定例を示す説明図である。グラフｇ６１は、所定の抵抗値にした場合の各周波数のインピーダンス特性を示す。例えば、所定の抵抗値において５３３［ＭＨｚ］の場合、インピーダンス値が０．３２［Ω］である。例えば、２６６［ＭＨｚ］の場合、インピーダンス値が３．６５［Ω］である。１７８［ＭＨｚ］の場合、インピーダンス値が０．４９［Ω］である。
【００３２】
グラフｇ６３は、各周波数である信号の本数の条件ごとに、電源ノイズ量と指標値の合計値との関係を示す。指標値は、周波数ごとに、取得したインピーダンス値と、本数と、を乗算した値であり、指標値の合計値は乗算した値の合計値である。グラフｇ６３の◆は条件ごとにプロットした結果である。グラフｇ６３の直線はプロットした結果の近似直線である。グラフｇ６２は、動作条件Ｃにおける電源ノイズ量のシミュレーション結果である。グラフｇ６３における重み付け値が４０から６０の間にある◆の電源ノイズ量は、グラフｇ６２における矢印範囲である。
【００３３】
誤動作が発生する可能性がある電源ノイズ量が８０［ｍＶ］以上であるとすると、グラフｇ６３によれば、指標値の合計値は２３より大きいと誤動作が発生する可能性がある。そのため、指標値の合計値の閾値ｔｈを２３とし、指標値の合計値が閾値ｔｈ以下であれば、誤動作が発生する可能性が低いとする。このようにして、閾値ｔｈが決定される。閾値ｔｈは例えば集積回路３００内のＲＯＭに記憶される。例えば、集積回路３００の出荷前には、閾値ｔｈがＲＯＭに書き込まれてあることとする。
【００３４】
図７は、重み付け係数の決定例を示す説明図である。重み付け係数の決定手順では、例えば、抵抗値の複数の候補値の各々について、抵抗値を候補値にした場合の周波数の各々に対応するインピーダンス値をシミュレーションによって取得する。そして、重み付け係数の決定手順では、各動作条件について、デカップリングコンデンサ３０２の抵抗を各抵抗値にした場合の電源ノイズ量の想定値と、各抵抗値にした場合の指標値の合計値と、を比較する。グラフｇ７０は、比較例を示す。グラフｇ７０の○印は、各動作条件について、各抵抗値にした場合の電源ノイズ量と各抵抗値にした場合の指標値の合計値との交点である。例えば、（Ａ−ｘ）の点は、動作条件Ａについて、デカップリングコンデンサ３０２の抵抗を抵抗値ｘにした場合の電源ノイズ量と指標値の合計値との交点である。想定値とは、例えば、各交点を線形近似して各電源ノイズ量における指標値の合計値である。グラフｇ７０の斜めの直線は線形近似を示す。
【００３５】
重み付け係数の決定手順では、指標値の合計値と想定値とが大きく異なっている場合に、重み付け係数を補正する。動作条件Ｂにおいて抵抗値ｙの場合に、指標値の合計値が想定値と大きく異なっているため、抵抗値ｙの場合の２倍周期についての重み付け係数が１．５５から１．１１に補正される。
【００３６】
図８は、判定部と動作本数検出部との詳細例を示す説明図である。上述したように、集積回路３００は、Ｉ／Ｏ回路３０１の各々について、ＦＩＦＯ３０３と、判定部３０４と、を有する。ＦＩＦＯ３０３のＦＦの段数は、検出したい周波数によって変更される。例えば、ＦＩＦＯ３０３は、Ｉ／Ｏ回路３０１への信号の値を格納する。ＦＩＦＯ３０３は、電源インピーダンスが切り替わる時に、格納した信号の値をＩ／Ｏ回路３０１へ出力する。
【００３７】
判定部３０４は、論理回路８０１と、カウンタＣ１〜Ｃ３と、判定回路８０２−１〜８０２−３と、によって、信号Ｄａｔａの周波数がいずれの周波数帯であるかを検出する。例えば、カウンタＣ１は、１倍周期が何サイクル連続で入力されるかカウントする。判定回路８０２は、カウンタＣによって２回以上連続して同じ周期の信号が入力された場合を判定基準としカウンタＣの値が２以上の時に１にすることにより、信号Ｄａｔａの周波数が１倍周期であることを示す。図示していないが、ここでは、判定回路８０２−１から出力される信号をＦｌａｇ１とし、判定回路８０２−２から出力される信号をＦｌａｇ２とし、判定回路８０２−３から出力される信号をＦｌａｇ３とする。
【００３８】
動作本数検出部３０５は、複数の周波数帯の各々について、判定部３０４が周波数であると判定した信号の数を検出する。具体的には、動作本数検出部３０５は、周波数帯の各々について、加算回路８０３を有する。加算回路８０３−１は、Ｉ／Ｏ回路３０１の各々についての判定回路８０２−１から出力される信号の値を加算する。加算回路８０３−２は、Ｉ／Ｏ回路３０１の各々についての判定回路８０２−２から出力される信号の値を加算する。加算回路８０３−３は、Ｉ／Ｏ回路３０１の各々についての判定回路８０２−３から出力される信号の値を加算する。加算回路８０３−１からは、１倍周期の場合の信号数Ｓ１が制御部３０６へ出力される。加算回路８０３−２からは、２倍周期の場合の信号数Ｓ２が制御部３０６へ出力される。加算回路８０３−３からは、３倍周期の場合の信号数Ｓ３が制御部３０６へ出力される。
【００３９】
図９は、周波数の検出例を示す説明図である。図９には、Ｉ／Ｏ回路３０１へ入力される信号の周波数の検出結果を示す。例えば、入力信号ＤａｔａはＩ／Ｏ回路３０１へ入力される信号である。カウンタＣ１〜Ｃ３はリセットされない場合には値を保持する。
【００４０】
真理値表９００によれば、ＦＦ１の値とＦＦ２の値とＦＦ３の値とＦＦ４の値とが０である場合に、カウンタＣ１の値とカウンタＣ２の値とカウンタＣ３の値とがリセットされる。真理値表９００によれば、ＦＦ１の値とＦＦ２の値とＦＦ３の値とが０であり、ＦＦ４の値が１である場合に、カウンタＣ１の値とカウンタＣ２の値とカウンタＣ３の値とが保持される。
【００４１】
真理値表９００によれば、ＦＦ１の値とＦＦ２の値とＦＦ４の値とが０であり、ＦＦ３の値が１である場合に、カウンタＣ１の値がカウントアップされ、カウンタＣ２の値とカウンタＣ３の値とがリセットされる。真理値表９００によれば、ＦＦ１の値とＦＦ２の値とが０であり、ＦＦ３の値とＦＦ４の値が１である場合に、カウンタＣ１の値がリセットされ、カウンタＣ２の値がカウントアップされ、カウンタＣ３の値が保持される。
【００４２】
真理値表９００によれば、ＦＦ１の値とＦＦ３の値とＦＦ４の値とが０であり、ＦＦ２の値が１である場合に、カウンタＣ１の値とカウンタＣ３の値とがリセットされ、カウンタＣ２の値が保持される。真理値表９００によれば、ＦＦ１の値とＦＦ３の値とが０であり、ＦＦ２の値とＦＦ４の値とが１である場合に、カウンタＣ１の値が保持され、カウンタＣ２の値とカウンタＣ３の値とがリセットされる。
【００４３】
真理値表９００によれば、ＦＦ１の値とＦＦ４の値とが０であり、ＦＦ２の値とＦＦ３の値が１である場合に、カウンタＣ１の値がカウントアップされ、カウンタＣ２の値が保持され、カウンタＣ３の値がリセットされる。真理値表９００によれば、ＦＦ１の値が０であり、ＦＦ２の値とＦＦ３の値とＦＦ４の値とが１である場合に、カウントＣ１の値とカウントＣ２の値とがリセットされ、カウンタＣ３の値がカウントアップされる。
【００４４】
真理値表９００によれば、ＦＦ１の値が１であり、ＦＦ２の値とＦＦ３の値とＦＦ４の値とが０である場合に、カウンタＣ１の値とカウンタＣ２の値とがリセットされ、カウンタＣ３の値が保持される。真理値表９００によれば、ＦＦ１の値とＦＦ４の値とが１であり、ＦＦ２の値とＦＦ３の値とが０である場合に、カウンタＣ１の値とカウンタＣ２の値とが保持され、カウンタＣ３の値がリセットされる。
【００４５】
真理値表９００によれば、ＦＦ１の値とＦＦ３の値とが１であり、ＦＦ２の値とＦＦ４の値とが０である場合に、カウンタＣ１の値がカウントアップされ、カウンタＣ２の値とカウンタＣ３の値とがリセットされる。真理値表９００によれば、ＦＦ１の値とＦＦ３の値とＦＦ４の値とが１であり、ＦＦ２の値が０である場合に、カウンタＣ１の値とカウンタＣ３の値がリセットされ、カウンタＣ２の値がカウントアップされる。
【００４６】
真理値表９００によれば、ＦＦ１の値とＦＦ２の値とが１であり、ＦＦ３の値とＦＦ４の値とが０である場合に、カウンタＣ１の値がリセットされ、カウンタＣ２の値とカウンタＣ３の値とが保持される。真理値表９００によれば、ＦＦ１の値とＦＦ２の値とＦＦ４の値とが１であり、ＦＦ３の値が０である場合に、カウンタＣ１の値が保持され、カウンタＣ２の値とカウンタＣ３の値とがリセットされる。
【００４７】
真理値表９００によれば、ＦＦ１の値とＦＦ２の値とＦＦ３の値とが１であり、ＦＦ４の値が０である場合に、カウンタＣ１の値がカウントアップされ、カウンタＣ２の値とカウンタＣ３の値とが保持される。真理値表９００によれば、ＦＦ１の値とＦＦ２の値とＦＦ３の値とＦＦ４の値とが１である場合に、カウンタＣ１の値とカウンタＣ２の値とカウンタＣ３の値とがリセットされる。
【００４８】
図９のタイミングチャートｔｇでは、入力信号Ｄａｔａは、１倍周期の信号、２倍周期の信号、３倍周期の信号の順に変化する。カウンタＣ１の値が２以上の期間にＦｌａｇ１は１となり、カウンタＣ２の値が２以上の期間にＦｌａｇ２は１となり、カウンタＣ３の値が２以上の期間にＦｌａｇ３は１となる。
【００４９】
図１０は、制御部の詳細例を示す説明図である。制御部３０６は、データベース３１０に記憶された順に重み付け情報５０１を取得する。制御部３０６は、動作本数検出部３０５によって検出された各周期の信号数Ｓと、重み付け情報５０１に設定された各周期の重み付け係数Ｄと、を乗算する。そして、制御部３０６は、乗算結果をすべて加算する。具体的には、制御部３０６は、以下の式（１）の計算を行う。
【００５０】
Ｔｏｔａｌ＝Ｄ１×Ｓ１＋Ｄ２×Ｓ２＋Ｄ３×Ｓ３・・・（１）
【００５１】
つぎに、制御部３０６は、合計値Ｔｏｔａｌが閾値ｔｈより小さいか否かを判断する。閾値ｔｈ以上であれば、Ａｄｄｒｅｓｓ［ｎ］の値を１インクリメントする。これにより、制御部３０６は、あらたな重み付け情報５０１を取得する。閾値ｔｈより小さい場合、制御部３０６は、Ａｄｄｒｅｓｓ［ｎ］が示す重み付け情報５０１に含まれる抵抗値をデカップリングコンデンサ３０２へ出力する。また、デカップリングコンデンサ３０２にデコーダが設けられている場合、制御部３０６は、抵抗値としてデコード前の信号を出力すればよい。また、デカップリングコンデンサ３０２にデコーダが設けられていない場合、制御部３０６は、抵抗値としてデコード済みの信号を出力すればよい。
【００５２】
複数の出力回路から出力される各信号の周波数が異なっているため、指標値の合計値Ｔｏｔａｌが閾値ｔｈ未満となる抵抗値の候補値に抵抗の値を設定することにより、電源ノイズによって誤動作が発生する可能性を低下させることができる。また、制御部３０６は、指標値の合計値が閾値ｔｈ未満となる重み付け情報５０１を検出した時点で、抵抗値を設定する処理を行う。これにより、抵抗値の設定に要する時間の短縮化を図ることができる。
【００５３】
図１１は、デカップリングコンデンサ例１を示す説明図である。図１１に示すデカップリングコンデンサ３０２は、デコード済みの信号が制御部３０６から入力される例である。デカップリングコンデンサ３０２は、複数の抵抗ｒ１〜ｒｌと、セレクタｓｅｌと、コンデンサＤＣと、を有する。
【００５４】
セレクタｓｅｌは、制御部３０６からのデコード済みの信号の値によって、複数の抵抗ｒ１〜ｒｌからコンデンサＤＣに接続させる抵抗を選択する。例えば、複数の抵抗ｒ１〜ｒｌの各々の抵抗値は、１［ＭΩ］、１００［Ω］、２００［Ω］などのように異なっている。
【００５５】
例えば、１［ＭΩ］の抵抗が選択された場合、高抵抗となり、コンデンサＤＣがＶＤＥ電源と切り離されるため、電源インピーダンスの共振周波数の位置がずれる。例えば、１００［Ω］、２００［Ω］などの抵抗が選択された場合には、電源インピーダンスの共振周波数のピークを変化させることができる。
【００５６】
図１２は、デカップリングコンデンサ例２を示す説明図である。図１２に示すデカップリングコンデンサ３０２は、デコード前の信号が制御部３０６から入力される例である。デカップリングコンデンサ３０２は、デコーダ１２００と、複数の抵抗ｒ１〜ｒｌと、セレクタｓｅｌと、コンデンサＤＣと、を有する。デコーダ１２００は、制御部３０６からの信号をデコードし、デコードした信号をセレクタｓｅｌへ出力する。表１２０１はデコード例を示す。例えば、制御部３０６からセレクタｓｅｌへの３ビットの入力値が“００１”の場合、デコーダ１２００からセレクタｓｅｌへの出力値は“００００００１０”となる。
【００５７】
そして、複数の抵抗ｒ１〜ｒｌと、セレクタｓｅｌと、コンデンサＤＣと、については、例１と同じであるため、詳細な説明を省略する。
【００５８】
図１３は、デカップリングコンデンサ領域例１を示す説明図である。図１３の例１では、デカップリングコンデンサ領域４０１にある四角がそれぞれ図１１に示したデカップリングコンデンサ３０２である。また、図１３の例１では、すべてのデカップリングコンデンサ３０２が同時に制御可能である。
【００５９】
図１４は、デカップリングコンデンサ領域例２を示す説明図である。図１４の例２では、デカップリングコンデンサ領域４０１にある四角がそれぞれ図１１に示したデカップリングコンデンサ３０２である。また、図１４の例２では、デカップリングコンデンサ領域４０１が複数に分割され、分割された領域ごとに制御可能であるため、デコーダ１２００が複数ある。
【００６０】
図１５は、抵抗値の選択例１を示す説明図である。ここでは、３つの抵抗値ａ〜ｃから１つの抵抗値が選択される例を示す。グラフｇ５０は、３つの抵抗値ａ〜ｃの各々に設定した場合の周波数に応じたインピーダンスを示す。データベース３１０に含まれる重み付け情報５０１の各係数は、インピーダンスに基づいて設定された値である。
【００６１】
選択例１では、１倍周期の信号の数が４つであり、２倍周期の信号の数が１２であり、３倍周期の信号の数が２つである。そして、制御部３０６は、データベース３１０から重み付け情報５０１を１つ読み出す。制御部３０６は、周波数の各々について、重み付け情報５０１に設定された係数と、信号の数と、を乗算する。そして、制御部３０６は、乗算結果の和を指標値として算出する。
【００６２】
例えば、抵抗値ａの場合、指標値の合計値Ｔｏｔａｌは４６．８である。例えば、抵抗値ｂの場合、指標値の合計値は３９．４である。例えば、抵抗値ｃの場合、指標値の合計値Ｔｏｔａｌは１９．６である。ここで、閾値ｔｈは２３である。制御部３０６は、抵抗値ｃの場合、合計値Ｔｏｔａｌが閾値ｔｈよりも小さいため、重み付け情報５０１−３に設定された抵抗値ｃにデカップリングコンデンサ３０２の抵抗値を設定する。
【００６３】
図１６は、抵抗値の選択例２を示す説明図である。選択例２では、１倍周期の信号の数が１２であり、２倍周期の信号の数が５であり、３倍周期の信号の数が１である。例えば、抵抗値ａの場合、指標値の合計値Ｔｏｔａｌは２２．４である。例えば、抵抗値ｂの場合、指標値の合計値Ｔｏｔａｌは２２．７である。例えば、抵抗値ｃの場合、指標値の合計値Ｔｏｔａｌは２９である。ここで、閾値ｔｈは例えば２３である。ここでは、制御部３０６は、抵抗値ａの場合についての合計値Ｔｏｔａｌが閾値ｔｈよりも小さいため、デカップリングコンデンサ３０２の抵抗値を重み付け情報５０１−１に設定された抵抗値ａに設定する。図１６の例では、制御部３０６は、抵抗値ａ〜ｃの場合のそれぞれについて合計値Ｔｏｔａｌを算出しているが、これに限らない。例えば、抵抗値ａの場合についての合計値Ｔｏｔａｌが閾値ｔｈよりも小さいと判断された時点でデカップリングコンデンサ３０２の抵抗値ａを設定してもよい。これにより、抵抗値の設定時間の短縮を図ることができる。
【００６４】
図１７は、抵抗値の選択例３を示す説明図である。選択例３では、１倍周期の信号の数が２であり、２倍周期の信号の数が２であり、３倍周期の信号の数が１４である。例えば、抵抗値ａの場合、指標値の合計値Ｔｏｔａｌは７６．４である。例えば、抵抗値ｂの場合、指標値の合計値Ｔｏｔａｌは１４．２である。例えば、抵抗値ｃの場合、指標値の合計値Ｔｏｔａｌは１９．６である。ここで、閾値ｔｈは例えば２３である。制御部３０６は、例えば、データベース３１０に登録された重み付け情報５０１を順に選択する。そして、制御部３０６は、指標値の合計値Ｔｏｔａｌが閾値ｔｈ以下となる重み付け情報５０１を検出した時点で抵抗値を決定してもよい。ここでは、制御部３０６は、抵抗値ｂの場合についての合計値Ｔｏｔａｌが閾値ｔｈよりも小さいため、デカップリングコンデンサ３０２の抵抗値を重み付け情報５０１−２に設定された抵抗値ｂに設定する。
【００６５】
図１８は、抵抗値の選択例４を示す説明図である。選択例４では、対象外の信号の数が６であり、１倍周期の信号の数が４であり、２倍周期の信号の数が３であり、３倍周期の信号の数が３である。ある一定の時間において、１倍周期から３倍周期のいずれにもあてはまらない信号については、対象外とする。例えば、抵抗値ａの場合、指標値の合計値Ｔｏｔａｌは２４．８である。例えば、抵抗値ｂの場合、指標値の合計値Ｔｏｔａｌは１２．９である。例えば、抵抗値ｃの場合、指標値の合計値Ｔｏｔａｌは１３．４である。ここで、閾値ｔｈは例えば２３である。制御部３０６は、例えば、データベース３１０に登録された重み付け情報５０１を順に選択する。そして、制御部３０６は、指標値の合計値Ｔｏｔａｌが閾値ｔｈ以下となる重み付け情報５０１を検出した時点で抵抗値を決定してもよい。ここでは、制御部３０６は、抵抗値ｂの場合についての合計値Ｔｏｔａｌが閾値ｔｈよりも小さいため、デカップリングコンデンサ３０２の抵抗値を重み付け情報５０１−２に設定された抵抗値ｂに設定する。
【００６６】
以上説明したように、本実施の形態にかかる集積回路３００は、電源とグラウンドにデカップリングコンデンサが接続された出力回路への入力信号の周波数を判定し、判定結果に応じてデカップリングコンデンサの容量値を設定する。したがって、電源インピーダンスのピークを低くすることができ、電源ノイズ量を抑えることができる。また、集積回路３００は、周波数と容量値との対応情報と、判定結果と、に基づいて、デカップリングコンデンサの容量値を設定する。これにより、信号の周波数に応じた電源インピーダンス特性に制御することができる。したがって、電源インピーダンスのピークを低くすることができる。
【００６７】
また、出力回路が複数であって、デカップリングコンデンサの一端は、出力回路の各々に接続された電源ラインに接続され、デカップリングコンデンサの他端は、出力回路の各々に接続されたグランドラインに接続される。また、集積回路３００は、出力回路の各々について、入力される信号の周波数を判定し、デカップリングコンデンサの容量値を、出力回路の各々について判定した周波数に基づき決定した容量値に設定する。このように、複数の出力回路からの各信号の周波数が変動しても、電源インピーダンスのピークを低くすることができる。
【００６８】
また、集積回路３００は、容量値の複数の候補値の各々について、周波数帯の各々について当該周波数帯であると判定した数と、周波数帯の各々についての重み付け係数と、によって指標値を算出する。そして、集積回路３００は、デカップリングコンデンサの容量値を、複数の候補値のうち、複数の周波数の各々について算出した指標値に基づいていずれかの候補値に設定する。これにより、複数の出力回路からの各信号の周波数が変動しても、電源ノイズ量を規定値以下とすることができ、電源ノイズによって生じる信号の誤動作を抑止する。
【００６９】
また、デカップリングコンデンサは可変でなく、デカップリングコンデンサの一端は、電源ラインに代わって、抵抗値が可変な抵抗の一端に接続され、抵抗の他端は、電源ラインに接続される。そして、集積回路３００は、抵抗の抵抗値を、判定した周波数に基づき決定した抵抗値に設定する。これにより、容量に代わって抵抗を用いて電源インピーダンスを調整することにより、本実施の形態にかかる集積回路３００の面積の縮小化を図ることができる。
【００７０】
本実施の形態にかかる集積回路３００のデカップリングコンデンサの面積は、複数の周波数に応じて電源インピーダンスを満たすようにデカップリングコンデンサを設計した場合の面積と比較して、小さくすることができる。例えば、信号の周波数が５３３［ＭＨｚ］の場合にターゲットインピーダンス以下となる容量値であるデカップリングコンデンサに要する面積は、０．５８［ｍｍ２］である。例えば、信号の周波数が２６６［ＭＨｚ］と５３３［ＭＨｚ］の場合にターゲットインピーダンス以下となる容量値であるデカップリングコンデンサに要する面積は、１．０２［ｍｍ２］である。そのため、デカップリングに要する面積は７５［％］増加する。一方、信号の周波数が５３３［ＭＨｚ］の場合にターゲットインピーダンス以下となる容量値であるデカップリングコンデンサであれば、抵抗の抵抗値を制御するだけで、信号の周波数が２６６［ＭＨｚ］の場合にターゲットインピーダンスを満たすようになる。そのため、２６６［ＭＨｚ］と５３３［ＭＨｚ］の場合に電源インピーダンスがターゲットインピーダンス以下となるための集積回路３００の抵抗付きデカップリングコンデンサに要する面積は、抵抗なしのデカップリングコンデンサに要する面積と同じである。
【００７１】
上述した実施の形態に関し、さらに以下の付記を開示する。
【００７２】
（付記１）電源ラインとグランドラインとに接続され、入力される信号を出力する出力回路であって、前記入力される信号の周波数に応じて前記電源ラインの前記グランドラインに対するインピーダンスが変化する出力回路と、
一端が前記電源ラインに接続され、他端が前記グランドラインに接続され、容量値が可変なデカップリングコンデンサと、
前記入力される信号の周波数を判定する判定部と、
前記デカップリングコンデンサの容量値を、前記判定部が判定した前記周波数に基づき決定した容量値に設定する制御部と、
を有することを特徴とする集積回路。
【００７３】
（付記２）前記制御部は、周波数と容量値との対応情報と、前記判定部が判定した前記周波数と、に基づき決定した容量値に設定することを特徴とする付記１に記載の集積回路。
【００７４】
（付記３）前記出力回路が複数であって、
前記デカップリングコンデンサの前記一端は、前記出力回路の各々に接続された前記電源ラインに接続され、前記デカップリングコンデンサの前記他端は、前記出力回路の各々に接続された前記グランドラインに接続され、
前記判定部は、前記出力回路の各々について、前記入力される信号の周波数を判定し、
前記制御部は、前記デカップリングコンデンサの容量値を、前記出力回路の各々について前記判定部が判定した前記周波数に基づき決定した容量値に設定することを特徴とする付記１または２に記載の集積回路。
【００７５】
（付記４）容量値の複数の候補値の各々について、前記デカップリングコンデンサの容量値を前記候補値にした場合の複数の周波数帯の各々に対応する前記インピーダンスに基づく値を記憶する記憶部を有し、
前記判定部は、前記出力回路の各々について、前記複数の周波数帯のうち、前記入力される信号の周波数がいずれの周波数帯であるかを判定し、
前記制御部は、
前記複数の候補値の各々について、前記複数の周波数帯の各々について前記判定部が前記周波数帯であると判定した数と、前記複数の周波数帯の各々について前記記憶部に記憶された前記インピーダンスに基づく値と、に基づいて、指標値を算出し、
前記デカップリングコンデンサの容量値を、前記複数の候補値のうち、前記複数の周波数帯の各々について算出した前記指標値に基づいていずれかの候補値に設定することを特徴とする付記３に記載の集積回路。
【００７６】
（付記５）前記デカップリングコンデンサは可変でなく、前記デカップリングコンデンサの前記一端は前記電源ラインに代わって抵抗値が可変な抵抗の一端に接続され、前記抵抗の他端は前記電源ラインに接続され、
前記制御部は、
前記抵抗の抵抗値を、前記判定部が判定した前記周波数に基づき決定した抵抗値に設定することを特徴とする付記１〜４のいずれか一つに記載の集積回路。
【００７７】
（付記６）電源ラインとグランドラインとに接続され、入力される信号を出力する出力回路であって、前記入力される信号の周波数に応じて前記電源ラインの前記グランドラインに対するインピーダンスが変化する出力回路と、
一端が前記電源ラインに接続され、他端が前記グランドラインに接続され、容量値が可変なデカップリングコンデンサと、
を有する集積回路が、
前記入力される信号の周波数を判定し、
前記デカップリングコンデンサの容量値を、判定した前記周波数に基づき決定した容量値に設定する、
ことを特徴とする制御方法。
【符号の説明】
【００７８】
１００，３００  集積回路
１０１  出力回路
１０２，３０２  デカップリングコンデンサ
１０３，３０４  判定部
１０４，３０６  制御部
１１０  対応情報
３０１  Ｉ／Ｏ回路
３１０  データベース
ＤＣ  コンデンサ
ｒ１〜ｒｌ  抵抗
【図１】
2015076451.tif 000003
【図２】
2015076451.tif 000004
【図３】
2015076451.tif 000005
【図４】
2015076451.tif 000006
【図５】
2015076451.tif 000007
【図６】
2015076451.tif 000008
【図７】
2015076451.tif 000009
【図８】
2015076451.tif 000010
【図９】
2015076451.tif 000011
【図１０】
2015076451.tif 000012
【図１１】
2015076451.tif 000013
【図１２】
2015076451.tif 000014
【図１３】
2015076451.tif 000015
【図１４】
2015076451.tif 000016
【図１５】
2015076451.tif 000017
【図１６】
2015076451.tif 000018
【図１７】
2015076451.tif 000019
【図１８】
2015076451.tif 000020