Nothing Special   »   [go: up one dir, main page]

JP2007200042A - 回路設計方法および回路設計プログラム - Google Patents

回路設計方法および回路設計プログラム Download PDF

Info

Publication number
JP2007200042A
JP2007200042A JP2006018169A JP2006018169A JP2007200042A JP 2007200042 A JP2007200042 A JP 2007200042A JP 2006018169 A JP2006018169 A JP 2006018169A JP 2006018169 A JP2006018169 A JP 2006018169A JP 2007200042 A JP2007200042 A JP 2007200042A
Authority
JP
Japan
Prior art keywords
transmission side
voltage
reception side
transfer path
side region
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.)
Withdrawn
Application number
JP2006018169A
Other languages
English (en)
Inventor
Takashi Ejima
崇 江島
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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2006018169A priority Critical patent/JP2007200042A/ja
Publication of JP2007200042A publication Critical patent/JP2007200042A/ja
Withdrawn legal-status Critical Current

Links

Images

Landscapes

  • Design And Manufacture Of Integrated Circuits (AREA)

Abstract

【課題】電源を分離した領域ごとに電源ノイズの影響を考慮してそれらの領域間を接続する電源乗り換えパスのマージンを過不足なく設定すること。
【解決手段】電源を分離した送信側領域と受信側領域のそれぞれについて電圧の変動幅を見積もる(ステップS1)。その電圧の変動幅に基づいて、送信側領域および受信側領域のそれぞれについてタイミング検証用の遅延係数を求める(ステップS2)。送信側領域と受信側領域を接続する電源乗り換えパスを抽出する(ステップS3)。送信側領域において電源乗り換えパスに接続されたセルに対して送信側領域の遅延係数をかけ、受信側領域において電源乗り換えパスに接続されたセルに対して受信側領域の遅延係数をかけることによって、電源乗り換えパスのタイミング検証用のスクリプトを作成する(ステップS4)。このスクリプトを用いて、例えばSTAツールによりタイミング検証を行う(ステップS5)。
【選択図】図1

Description

この発明は、半導体集積回路内を複数の領域に分割し、領域ごとに電源を分離する設計を行う回路設計方法および回路設計プログラムに関する。
一般に、半導体集積回路は、その設計段階においてチップ内での電源のノイズを求め、そのノイズが大きくなりすぎないように考慮して、設計される。そして、チップに配置されたセルごとに、IRドロップを考慮してセルにかかる電圧を求め、その電圧から算出された遅延係数を用いて、タイミング検証が行われる。その遅延係数に相当する遅延値を求める方法として、電源バンプからセルまでの距離とその電源バンプに印加される電圧に基づいて標準状態の遅延値に対する変動率を求め、標準状態の遅延値とその変動率に基づいて、実際にセルに印加されると推定される電圧を考慮した遅延値を求める方法が公知である(例えば、特許文献1参照。)。
特開2003−271696号公報
半導体集積回路内を複数の領域に分割し、領域ごとに電源を分離する設計の場合、同じ電圧で電源を分離しても、IRドロップや共振ノイズなどの影響により、各領域で電圧が異なることがある。例えば、一方の領域では、電源ノイズによって電圧が上がり、もう一方の領域では、電圧が下がるということが起こり得る。2つの領域間での電圧の差が、通常考慮されているオンチップ変動(OCV)よりも大きい場合には、タイミングマージン不足によりエラーになる可能性がある。逆に、2つの領域間での電圧の差が通常考慮されているOCVよりも小さい場合には、過剰なタイミングマージンを保証していることになる。
一般に、タイミング検証を行う際には、静的タイミング解析ツール(以下、STAツールとする)や論理シミュレーターが用いられる。これらのツールは、電源を分離した領域間でのノイズの影響を考慮していない。上記特許文献に開示された方法も同様である。電源が分離された異なる領域間を接続する電源乗り換えパスでは、タイミングマージンを十分に持つように設計されるが、全てのパスで過不足なくマージンを持って設計することは難しい。
この発明は、上述した従来技術による問題点を解消するため、半導体集積回路内の複数の領域ごとに電源を分離する設計において、電源が分離された領域ごとに電源ノイズの影響を考慮してそれらの領域間を接続する電源乗り換えパスのマージンを過不足なく設定することができる回路設計方法、およびその回路設計方法をコンピュータに実行させるための回路設計プログラムを提供することを目的とする。
上述した課題を解決し、目的を達成するため、本発明は、以下の特徴を有する。半導体集積回路内を分割した複数の領域のうち、送信側領域と受信側領域のそれぞれについて電圧の変動幅を見積もる。見積もられた送信側の電圧の変動幅に基づいて、送信側領域に対するタイミング検証用の遅延係数を求める。受信側領域についても同様に、見積もられた受信側の電圧の変動幅に基づいて、タイミング検証用の遅延係数を求める。
また、送信側領域と受信側領域を接続する電源乗り換えパスを抽出する。送信側領域において電源乗り換えパスに接続されたセルに対して送信側領域の遅延係数をかける。受信側領域についても同様に、電源乗り換えパスに接続されたセルに対して受信側領域の遅延係数をかける。このようにして、電源乗り換えパスのタイミング検証を行うためのスクリプトを生成し、そのスクリプトを用いて、例えばSTAツールによりタイミング検証を行う。あるいは、スクリプトを生成しないで、直接、STAツールにより電源乗り換えパスのタイミング検証を行ってもよい。
また、電源乗り換えパスの両端に接続されたセルをフリップフロップ回路で構成してもよい。この場合、送信側の電圧の変動幅に基づいて、送信側領域のフリップフロップ回路の遅延の変動分を求めるとともに、受信側の電圧の変動幅に基づいて、受信側領域のフリップフロップ回路のホールドマージンの変動分を求める。そして、送信側の遅延の変動分と受信側のホールドマージンの変動分を、タイミング解析において考慮するホールドマージンに追加する。
また、電源乗り換えパスの両端に接続されたセルとしてフリップフロップ回路を用いる場合、予め送信側領域と受信側領域のそれぞれについて電圧の変動幅の最大値を定めておき、送信側の電圧の変動幅が最大であるときの送信側の遅延の変動分と、受信側の電圧の変動幅が最大であるときの受信側のホールドマージンの変動分を追加したホールドマージンを有するフリップフロップ回路を用意する。そして、このホールドマージンが追加されたフリップフロップ回路を受信側のフリップフロップ回路として予めライブラリ化しておいてもよい。
また、電源乗り換えパスとしてフリップフロップ回路を用いてもよい。この場合、フリップフロップ回路の前段のラッチを送信側領域に配置し、前段のラッチに送信側領域の電源を供給する。また、フリップフロップ回路の後段のラッチを受信側領域に配置し、後段のラッチに受信側領域の電源を供給する。そして、このフリップフロップ回路の前段のラッチと後段のラッチの間のマージンを、送信側領域の電圧の変動幅および受信側領域の電圧の変動幅により生じる遅延の変化分を見積もったマージンとする。
あるいは、フリップフロップ回路の後段のラッチを構成するトランジスタのうち、ハイ側のトランジスタの閾値が、このフリップフロップ回路の前段のラッチを構成するトランジスタの、送信側領域の電圧の変動幅を考慮した出力電圧よりも低くなるようにする。このようなフリップフロップ回路を電源乗り換え用のセルとしてライブラリ化しておき、このライブラリを用いて回路設計を行う。上述したいずれの方法においても、送信側領域および受信側領域のそれぞれで電圧の変動幅を見積もった結果、送信側領域と受信側領域との電圧差が、電源乗り換えパスで信号の授受を行えないほどに大きい場合には、再設計を行う。
また、回路設計時には、送信側領域の電圧の変動幅および受信側領域の電圧の変動幅のそれぞれについて、予め許容できる範囲を定めて設計を行う。そして、タイミング検証時には、電圧の最大の変動幅を用いてタイミング検証を行うようにしてもよい。この発明によれば、送信側領域の電圧の変動幅および受信側領域の電圧の変動幅を考慮して、送信側領域と受信側領域を接続する電源乗り換えパスに対してタイミング検証を行うことができる。
本発明にかかる回路設計方法および回路設計プログラムによれば、半導体集積回路内の複数の領域ごとに電源を分離する設計を行う際に、電源乗り換えパスに対してタイミング検証を行うことができるので、電源が分離された領域ごとに電源ノイズの影響を考慮してそれらの領域間を接続する電源乗り換えパスのマージンを過不足なく設定することができるという効果を奏する。
以下に添付図面を参照して、この発明にかかる回路設計方法および回路設計プログラムの好適な実施の形態を詳細に説明する。実施の形態1〜4では、例えば、送信側領域と受信側領域を接続する電源乗り換えパスが、送信側領域に配置されたフリップフロップ回路から受信側領域に配置されたフリップフロップ回路までのパスであるとする。この場合、送信側のフリップフロップ回路は送信側領域に属し、受信側のフリップフロップ回路は受信側領域に属するとする。また、実施の形態5および6では、電源乗り換えパスがフリップフロップ回路で構成されており、このフリップフロップ回路の前段のラッチが送信側領域に属し、後段のラッチが受信側領域に属するとする。
(実施の形態1)
図1は、本発明の実施の形態1にかかる回路設計方法を示すフローチャートである。図1に示すように、配線容量情報1、回路規模情報2、動作周波数情報3およびトランジスタ特性などのその他の必要情報4を読み込み、電源乗り換えパスを介して相互に接続された送信側領域および受信側領域のそれぞれについて、電源ノイズを見積もり、電圧の変動幅(ノイズ電圧)ΔPowerを求める(ステップS1)。例えば送信側領域と受信側領域の基準電圧が1.2Vである場合、送信側領域の電圧の変動幅ΔPower1は0.05Vであり、受信側領域の電圧の変動幅ΔPower2は0.1Vであるというように求められる。
次いで、ステップS1で求められた送信側領域および受信側領域のノイズ電圧情報5に基づいて、STA用遅延係数ΔDelayの計算を行う(ステップS2)。送信側領域および受信側領域の各電圧は、電源ノイズによって上がる方向に振れる場合と下がる方向に振れる場合がある。そのため、ステップS2では、電圧が上下した場合の遅延係数ΔDelayを求める。
例えば、上述した例のように、送信側領域の電圧の変動幅ΔPower1が0.05Vである場合、[Power1+ΔPower1]から求まる送信側領域の遅延係数ΔDelay1は0.95倍である。ただし、Power1は送信側領域の基準電圧(例えば、1.2V)である。また、[Power1−ΔPower1]から求まる遅延係数ΔDelay1は1.06倍である。
同様に、受信側領域の電圧の変動幅ΔPower2が0.1Vである場合、[Power2+ΔPower2]から求まる受信側領域の遅延係数ΔDelay2は0.90倍である。ただし、Power2は受信側領域の基準電圧(例えば、1.2V)である。また、[Power2−ΔPower2]から求まる遅延係数ΔDelay2は1.15倍である。
なお、IRドロップを含めて遅延係数を求めることもできる。この場合、基準電圧PowerからIRドロップ分の電圧ΔPower_IRDを引いた値に対して、電圧の変動幅ΔPowerを加算または減算した[Power−ΔPower_IRD±ΔPower]に基づいて遅延係数を求める。このようにして、ステップS2によりSTA用遅延係数情報6が得られる。
一方、論理回路情報7および電源回路情報8を読み込み、電源乗り換えパスの抽出を行う(ステップS3)。得られた電源の乗り換えパス情報9に基づいて、電源乗り換えパスの両端に接続された各セルのうち、送信側領域に属するセルには遅延係数ΔDelay1をかけ、受信側領域に属するセルには遅延係数ΔDelay2をかけることにより、タイミング検証を行うためのSTA用スクリプト作成する(ステップS4)。
そして、生成されたSTA用スクリプトを出力する。ここまでは、STA用スクリプト作成プログラムをコンピュータで実行することにより、実現される。出力されたSTAスクリプト情報10を用いて、STAツールを実行し、電源乗り換えパスのタイミング検証を行う(ステップS5)。以上のようにすることによって、電源乗り換えパスのみを対象としてタイミング検証を実施することができる。従って、電源乗り換えパスに対して、必要かつ十分なノイズ量を考慮してマージンを設定することができる。
(実施の形態2)
図2は、本発明の実施の形態2にかかる回路設計方法を示すフローチャートである。図2に示すように、実施の形態2は、STA用スクリプトを作成しないで、STAツール内で送信側領域および受信側領域のそれぞれの遅延係数を考慮して電源乗り換えパスのタイミング検証を行うものである。
STAツールに配線容量情報1、回路規模情報2、動作周波数情報3、論理回路情報7および電源回路情報8などを読み込む。そして、STAツールにより、送信側領域および受信側領域のそれぞれについて、実施の形態1と同様にして、電源ノイズを見積もって電圧の変動幅ΔPower1、ΔPower2を求め(ステップS1)、STA用遅延係数ΔDelay1、ΔDelay2を計算する(ステップS2)。
一方、STAツールにより、電源乗り換えパスを抽出する。そして、その電源乗り換えパスに接続された、送信側領域のセルに送信側領域の遅延係数ΔDelay1をかけ、受信側領域のセルに受信側領域の遅延係数ΔDelay2をかけることにより、電源乗り換えパスのタイミング検証を行う(ステップS5)。このように、STAツールにより直接、電源乗り換えパスのみを対象としてタイミング検証を実施することができるので、実施の形態1と同様に、電源乗り換えパスに対して、必要かつ十分なノイズ量を考慮してマージンを設定することができる。
(実施の形態3)
図3は、本発明の実施の形態3にかかる回路設計方法を示すフローチャートである。図3に示すように、実施の形態3は、遅延変動分を、電源乗り換えパスに接続されたフリップフロップ回路のホールドマージンとして扱い、電源乗り換えパスのタイミング検証を行うものである。電源乗り換えパスに接続された送信側領域のフリップフロップ回路と受信側領域のフリップフロップ回路の間にはセルを配置しない。
STAツールに配線容量情報1、回路規模情報2、動作周波数情報3、論理回路情報7および電源回路情報8などを読み込み、STAツールにより、送信側領域および受信側領域のそれぞれについて、実施の形態1と同様にして、電源ノイズを見積もり、電圧の変動幅ΔPower1、ΔPower2を求める(ステップS1)。次いで、ステップS1で求められた送信側領域および受信側領域のノイズ電圧情報5に基づいて、電源乗り換えパスに接続されたフリップフロップ回路のホールドマージンに追加するマージンの計算を行う(ステップS6)。
その際、送信側領域のフリップフロップ回路では遅延値が小さくなる場合を考慮し、受信側領域のフリップフロップ回路ではホールドマージンが大きくなる場合を考慮する。送信側のセルの遅延Cell_Delay1と[Power1+ΔPower1]から求まる送信側の遅延値の変化[Cell_Delay1−Cell_Delay1・ΔDelay1]を見積もる。また、受信側のセルのホールドマージンHold_Margin2と[Power2−ΔPower2]から求まる受信側のホールドマージンの変化[Hold_Margin2・ΔDelay2−Hold_Margin2]を見積もる。
そして、送信側の遅延値の変化[Cell_Delay1−Cell_Delay1・ΔDelay1]と受信側のホールドマージンの変化[Hold_Margin2・ΔDelay2−Hold_Margin2]を合わせて、STAで考慮するホールドマージンへ追加する。フリップフロップ回路のセットアップ・ホールドマージンとして、この計算により得られたセットアップ・ホールドマージン情報11を用いてタイミング検証を行う(ステップS5)。このように、送信側では遅延値が小さくなり、受信側ではホールドマージンが大きくなる場合を考慮してフリップフロップ回路のセットアップ・ホールドマージンを設定するので、電源乗り換えパスに対して、ノイズが発生した場合でも影響のないマージンを確保することができる。
なお、実施の形態1のように、ステップS6で求められたセットアップ・ホールドマージン情報11を用いてSTA用スクリプト作成プログラムによりSTA用スクリプトを作成し、出力して、そのスクリプトをSTAツールに与えるようにしてもよい。また、送信側のフリップフロップ回路と受信側のフリップフロップ回路の間にバッファを挿入してもよい。その場合には、ステップS6で、挿入されたバッファを含めたマージンの計算を行う。
(実施の形態4)
図4は、本発明の実施の形態4にかかる回路設計方法を示すフローチャートである。図4に示すように、実施の形態4は、遅延変動分を、電源乗り換えパスに接続されたフリップフロップ回路のホールドマージンへ一律に定義してタイミング検証を行うものである。電源乗り換えパスに接続された送信側回路のフリップフロップ回路と受信側回路のフリップフロップ回路の間にはセルを配置しない。
予め、チップを設計する際に送信側領域および受信側領域でそれぞれ許容されるノイズの最大量を定めておく。そして、実施の形態3と同様にして、送信側領域および受信側領域のそれぞれでノイズが最大になった場合のフリップフロップ回路のホールドマージンの変化を求める。受信側回路のフリップフロップ回路として専用のセルを用意し、このセルをライブラリ化して専用タイミングライブラリ情報12とする。この専用のセルには、ノイズが最大になった場合のホールドマージンを追加しておく。
STAツールに配線容量情報1、回路規模情報2および動作周波数情報3などを読み込み、STAツールにより、送信側領域および受信側領域のそれぞれについて、実施の形態1と同様にして、電源ノイズを見積もり、電圧の変動幅ΔPower1、ΔPower2を求める(ステップS1)。得られたノイズ電圧情報5に基づいてノイズ量の判定を行い、ステップS1で求められた送信側領域および受信側領域の各ノイズ電圧が、それぞれ送信側領域および受信側領域で許容されるノイズの最大値を超えていないか否かを判定する(ステップS7)。送信側領域のノイズおよび受信側領域のノイズの両方ともノイズの最大値を超えていない場合(ステップS7:OK)には、専用タイミングライブラリ情報12を用いてタイミング検証を行う(ステップS5)。
送信側領域のノイズおよび受信側領域のノイズの少なくとも一方がノイズの最大値を超えている場合(ステップS7:NG)には、超えないように再設計を行う(ステップS8)。このように、送信側領域および受信側領域のそれぞれでノイズが最大になった場合のホールドマージンを追加したフリップフロップ回路を、受信側回路のフリップフロップ回路として専用に用意しておき、この専用のセルを用いてタイミング設計を行うことによって、ノイズが起こった場合のタイミング変動を電源乗り換えパスのみに適用して考慮することができる。また、ノイズが予め設定された最大値を超える場合には再設計を行うので、ノイズを影響のない範囲に抑えることができる。
(実施の形態5)
図5は、本発明の実施の形態5にかかる回路設計方法において用いられる電源乗り換えパス専用セルの一例を示す回路図である。図5に示すように、実施の形態5は、チップの設計を行う際に、電源乗り換えパスを構成する専用セルとして、タイミング違反対策を施したフリップフロップ回路21を用いるものである。このフリップフロップ回路21は、前段のラッチ22と後段のラッチ23から構成されている。前段のラッチ22は、送信側領域に配置され、送信側領域から電源を供給される。後段のラッチ23は、受信側領域に配置され、受信側領域から電源を供給される。図5には、Dタイプのフリップフロップ回路が示されているが、Dタイプに限らない。
図6は、本発明の実施の形態5における電源乗り換えパス専用セルの作成手順を示すフローチャートである。図6に示すように、まず、セル内で電源分離したセル、すなわち前段のラッチ22に送信側領域の電源が供給され、後段のラッチ23に受信側領域の電源が供給されるフリップフロップ回路21を形成する(ステップS9)。そして、作成されたセルのタイミング調整を行う(ステップS10)。一方、予め、送信側領域および受信側領域でそれぞれ許容されるノイズの最大量を定めておく。この許容できる電源ノイズの最大値と、送信側領域および受信側領域(電源領域間)で想定される電圧効果から最大の電位差を定義する(ステップS11)。
そして、ステップS10で得られたセル情報13、ステップS11で定義された最大の電位差情報14、および通常考慮するばらつき情報15に基づいて、タイミング検証を行う(ステップS12)。検証の結果、送信側領域の電圧と受信側領域の電圧の差が最大であるときでもタイミング違反が起こらない場合(ステップS12:OK)には、セルライブラリを作成する(ステップS13)。
一方、タイミング違反が起こる場合(ステップS12:NG)には、タイミング違反が起こらなくなるまで、ステップS10のタイミング調整とステップS12のタイミング検証を繰り返し行う。タイミング調整を行う際には、前段のラッチ22と後段のラッチ23の間でホールドエラーが起こらないように、前段と後段でクロックスキューを大きくするか、前段から後段へのデータの遅延を大きくする。
図7は、本発明の実施の形態5における電源乗り換えパス専用セルの使用手順を示すフローチャートである。図7に示すように、論理回路のネットリスト情報またはRTL(レジスタトランスファレベル)情報16と電源回路情報8に基づいて、置き換えスクリプトまたは論理合成CADにより、通常の1電源のセルを、セル内で電源が分離されたセル、すなわち前段のラッチ22に送信側領域の電源が供給され、後段のラッチ23に受信側領域の電源が供給されるフリップフロップ回路21に置き換える(ステップS14)。
これによって、上述した電源乗り換えパス専用セルとして2電源で駆動されるフリップフロップ回路21を用いた論理回路情報7が得られる。なお、チップの設計時には、送信側領域と受信側領域のそれぞれで予め、定められたノイズの最大値を超えないようにする。このように、タイミング違反対策を施した電源乗り換えパス専用セルを用いることによって、電源乗り換えパスにおいてタイミング違反が起こるのを防ぐことができる。
(実施の形態6)
電源ノイズにより起こり得る問題として、タイミング違反による誤動作の他に、電圧レベルによる誤動作がある。図8は、電圧レベルによる誤動作を説明するために電圧レベルを示す模式図であり、縦軸は電圧を表す。図8左側の正常状態の模式図80に示すように、送信側トランジスタ(送信Tr.)の出力電圧VOHが受信側のハイ側のトランジスタ(受信Tr.)の閾値VthHよりも高ければ、受信側で誤動作が起こらない。
しかし、図8右側の誤動作状態の模式図81に示すように、電源ノイズの影響により、送信側の電圧が下がり、受信側の電圧が上がると、送信側トランジスタの出力電圧VOHが受信側のハイ側のトランジスタの閾値VthHよりも低くなることがある。このような場合、受信側で誤動作が起こる。受信側がCMOSトランジスタで構成される場合には、そのCMOSトランジスタの出力が不定となり、電源とグランドの間に大きな貫通電流が流れるかCMOSトランジスタが動作しないことになる。
そこで、実施の形態6では、チップの設計を行う際に、電源乗り換えパスを構成する専用セルとして、信号の受け渡し対策を施したフリップフロップ回路を用いる。このフリップフロップ回路において、前段のラッチを構成するトランジスタのうち、後段のラッチに接続されている部分のトランジスタを送信側トランジスタと呼び、後段のラッチを構成するトランジスタのうち、前段のラッチに接続されている部分のトランジスタを受信側トランジスタと呼ぶ。
フリップフロップ回路の構成および電源の供給については、実施の形態5の電源乗り換えパス専用セルを構成するフリップフロップ回路と同じである。ただし、実施の形態6のフリップフロップ回路では、タイミング違反が起こらないようにマージンが確保されている(実施の形態5)代わりに、図9に示すように、受信側トランジスタのうち、ハイ側のトランジスタの閾値VthHの絶対値が低く、送信側トランジスタの出力電圧VOHが低くなった場合でも、[VOH>VthH]となるトランジスタが用いられている。
図9は、本発明の実施の形態6にかかる回路設計方法において用いられる電源乗り換えパス専用セルの電圧レベルを示す模式図である。電圧レベルの変動があっても正常に動作することを説明する模式図であり、縦軸は電圧を表す。図9において、左側の図は、電圧レベルの変動がない状態の模式図90であり、右側の図は、電圧レベルが変動した状態の模式図91である。このように、送信側領域および受信側領域の一方または両方で電圧が変動しても、受信側で[VOH>VthH]となるトランジスタを用いることによって、誤動作することなく受信側で信号を受け取ることができる。
図10は、本発明の実施の形態6における電源乗り換えパス専用セルの作成手順を示すフローチャートである。図10に示すように、まず、セル内で電源分離したセル、すなわち前段のラッチに送信側領域の電源が供給され、後段のラッチに受信側領域の電源が供給されるフリップフロップ回路を作成する(ステップS9)。そして、作成されたフリップフロップ回路を構成するトランジスタ(Tr.)を、予め用意されているトランジスタ群の中から選択するか、あるいは作成する(ステップS15)。一方、予め、送信側領域および受信側領域でそれぞれ許容されるノイズの最大量を定めておき、この許容できる電源ノイズの最大値と、送信側領域および受信側領域(電源領域間)で想定される電圧効果から最大の電位差を定義する(ステップS11)。
そして、ステップS15で得られたセル情報13、ステップS11で定義された最大の電位差情報14、および通常考慮するばらつき情報15に基づいて、出力値および電源リーク値の検証を行う(ステップS16)。検証の結果、出力値および電源リーク値のいずれにも問題がない場合(ステップS16:OK)には、セルライブラリを作成する(ステップS13)。一方、出力値および電源リーク値の少なくとも一方に問題がある場合(ステップS16:NG)には、その問題がなくなるまで、ステップS15のトランジスタの選択または作成と、ステップS16の出力値および電源リーク値の検証を繰り返し行う。電源乗り換えパス専用セルの使用手順は、実施の形態5で説明した通りであり、フローチャートは、図7に示す通りである。
なお、電源乗り換えパス専用セルとして用いる、信号の受け渡し対策を施したフリップフロップ回路は、上述した構成に限らない。ここで、信号受け渡し対策を施したフリップフロップ回路の他の構成について示す。図11は、本発明の実施の形態6にかかる回路設計方法において用いられる電源乗り換えパス専用セルの一例を示す回路図である。図11に示すように、送信側トランジスタの電源電圧VDD1を、受信側トランジスタのうちのハイ側のトランジスタpMOS2のバックバイアスVbsp2に印加する構成としたフリップフロップ回路を用いてもよい。なお、図11には、フリップフロップ回路の送信側トランジスタと受信側トランジスタの接続部分のみが示されている。
図11において、pMOS1およびnMOS1は、それぞれ送信側トランジスタのハイ側およびロー側のトランジスタであり、nMOS2は、受信側トランジスタのロー側のトランジスタである。また、VDD2は受信側トランジスタの電源電圧であり、VSSはグランドである。Vbsp1は、送信側トランジスタのうちのハイ側のトランジスタpMOS1のバックバイアスであり、Vbsnは、送信側のロー側のトランジスタnMOS1と受信側のロー側のトランジスタnMOS2のバックバイアスである。
受信側トランジスタのうち、ハイ側のトランジスタpMOS2について、そのバックバイアスへ送信側トランジスタの電源電圧VDD1を印加したときの閾値の変化をΔPower1_Bとし、閾値をVthHとする。送信側の電圧VDD1が上がると、受信側トランジスタの閾値の絶対値が上がり、[VthH+ΔPower1_B]となる。一方、送信側の電圧VDD1が下がると、受信側トランジスタの閾値の絶対値が下がり、[VthH−ΔPower1_B]となる。送信側トランジスタの出力電圧をVOHとし、送信側の電圧VDD1の変動幅をΔPower1とすると、[VOH±ΔPower1>VthH±ΔPower1_B]の関係を満足することによって、誤動作することなく受信側で信号を受け取ることができる。
(実施の形態7)
図12は、本発明の実施の形態7にかかる回路設計方法を示すフローチャートである。図12に示すように、実施の形態7は、電源乗り換えパスで信号を受け渡せないほど電圧差が大きくなった場合に再設計を行う方法であり、実施の形態1、2、3、5または6に適用可能である。
予め、電源乗り換えパスで送信側トランジスタの電源電圧がノイズで変化したときの送信側トランジスタの出力電圧に対して、受信側トランジスタが誤動作する受信側トランジスタの電源電圧を求めておく。そして、チップの設計時に、配線容量情報1、回路規模情報2および動作周波数情報3などに基づいて、送信側領域および受信側領域のそれぞれについて、実施の形態1と同様にして、電源ノイズを見積もり、電圧の変動幅ΔPower1、ΔPower2を求める(ステップS1)。
得られたノイズ電圧情報5に基づいてノイズ量の判定を行い、ステップS1で求められた送信側領域および受信側領域の各ノイズ電圧が、それぞれ送信側領域および受信側領域で許容されるノイズの最大値以下であり、かつ受信側トランジスタが誤動作するノイズ量よりも小さいか否かを判定する(ステップS17)。送信側領域のノイズおよび受信側領域のノイズの両方ともノイズの最大値以下であり、かつ受信側トランジスタが誤動作するノイズ量よりも小さい場合(ステップS17:OK)には、設計を続行する(ステップS18)。
送信側領域のノイズおよび受信側領域のノイズの少なくとも一方がノイズの最大値を超えているか、または受信側トランジスタが誤動作するノイズ量以上である場合(ステップS17:NG)には、再設計を行う(ステップS8)。送信側および受信側のそれぞれの電圧の変動幅をΔPower1およびΔPower2とすると、受信側トランジスタが誤動作しないノイズ量を、[ΔPower1<x1]および[ΔPower2<x2]というように、送信側と受信側で別々の関数で表してもよい。
あるいは、[ΔPower1+ΔPower2<x3]というように、受信側トランジスタが誤動作しないノイズ量を1つの関数で表してもよい。ただし、x1、x2およびx3は、予めセル特性のシミュレーションや実測などから求めておく。このようにすることによって、誤動作することなく受信側で信号を受け取ることができる。また、再設計を行うことによって、ノイズを影響のない範囲に抑えることができる。
(実施の形態8)
図13は、本発明の実施の形態8にかかる回路設計方法を示すフローチャートである。図13に示すように、実施の形態8は、送信側領域および受信側領域のそれぞれについてノイズの上限を定め、そのノイズの上限から一律に遅延係数をかけてタイミング検証を行うものであり、実施の形態1または2に適用可能である。
予め、実施の形態7と同様にして、誤動作しないノイズ量を[ΔPower1<x1]および[ΔPower2<x2]というように定義しておく。そして、配線容量情報1、回路規模情報2および動作周波数情報3などに基づいて、送信側領域および受信側領域のそれぞれについて、実施の形態1と同様にして、電源ノイズを見積もり、電圧の変動幅ΔPower1、ΔPower2を求める(ステップS1)。
得られたノイズ電圧情報5に基づいてノイズ量の判定を行い、ステップS1で求められた送信側領域および受信側領域の各ノイズ電圧が、それぞれ送信側領域および受信側領域で許容されるノイズの最大値以下であり、かつ誤動作しないノイズ量以下であるか否かを判定する(ステップS19)。送信側領域のノイズおよび受信側領域のノイズの両方ともノイズの最大値以下であり、かつ誤動作しないノイズ量以下である場合(ステップS19:OK)には、[ΔPower1=x1]および[ΔPower2=x2]として、STA用遅延係数ΔDelayの計算を行う(ステップS2)。
これ以降は、図1のステップS4以降の処理、すなわちSTA用スクリプトを出力してSTAを実行してもよいし、最初からSTAツール内で処理してる場合には、STAツール内で図2のステップS5の処理を行う。一方、送信側領域のノイズおよび受信側領域のノイズの少なくとも一方がノイズの最大値を超えているか、または誤動作しないノイズ量を超えている場合(ステップS19:NG)には、再設計を行う(ステップS8)。このようにすることによって、誤動作しない電圧振幅でタイミングを満足させることができる。
なお、本実施の形態で説明した回路設計方法は、予め用意されたプログラムをパーソナル・コンピュータやワークステーション等のコンピュータで実行することにより実現することができる。このプログラムは、ハードディスク、フレキシブルディスク、CD−ROM、MO、DVD等のコンピュータで読み取り可能な記録媒体に記録され、コンピュータによって記録媒体から読み出されることによって実行される。またこのプログラムは、インターネット等のネットワークを介して配布することが可能な伝送媒体であってもよい。
(付記1)半導体集積回路内を複数の領域に分割し、領域ごとに電源を分離する回路設計を行うにあたって、
送信側領域と受信側領域のそれぞれについて電圧の変動幅を見積もるノイズ見積工程と、
前記送信側領域と前記受信側領域のそれぞれについて前記見積工程で見積もられた電圧の変動幅に基づいてタイミング検証用の遅延係数を求める係数算出工程と、
前記送信側領域と前記受信側領域を接続する電源乗り換えパスを抽出するパス抽出工程と、
前記送信側領域の、前記パス抽出工程で抽出された電源乗り換えパスに接続されたセルに対して、前記係数算出工程で算出された送信側領域の遅延係数をかけるとともに、前記受信側領域の、前記電源乗り換えパスに接続されたセルに対して、前記係数算出工程で算出された受信側領域の遅延係数をかけることにより、前記電源乗り換えパスのタイミング検証を行うためのスクリプトを生成するスクリプト生成工程と、
を含むことを特徴とする回路設計方法。
(付記2)半導体集積回路内を複数の領域に分割し、領域ごとに電源を分離する回路設計を行うにあたって、
送信側領域と受信側領域のそれぞれについて電圧の変動幅を見積もるノイズ見積工程と、
前記送信側領域と前記受信側領域のそれぞれについて前記見積工程で見積もられた電圧の変動幅に基づいてタイミング検証用の遅延係数を求める係数算出工程と、
前記送信側領域と前記受信側領域を接続する電源乗り換えパスを抽出し、前記送信側領域の、前記電源乗り換えパスに接続されたセルに対して、前記係数算出工程で算出された送信側領域の遅延係数をかけるとともに、前記受信側領域の、前記電源乗り換えパスに接続されたセルに対して、前記係数算出工程で算出された受信側領域の遅延係数をかけることにより、前記電源乗り換えパスのタイミング検証を行う検証工程と、
を含むことを特徴とする回路設計方法。
(付記3)半導体集積回路内を複数の領域に分割し、領域ごとに電源を分離する回路設計を行うにあたって、
送信側領域と受信側領域のそれぞれについて電圧の変動幅を見積もるノイズ見積工程と、
前記ノイズ見積工程で見積もられた送信側の電圧の変動幅に基づいて、前記送信側領域の、同送信側領域と前記受信側領域を接続する電源乗り換えパスに接続されたフリップフロップ回路の遅延の変動分を求めるとともに、前記ノイズ見積工程で見積もられた受信側の電圧の変動幅に基づいて、前記受信側領域の、前記電源乗り換えパスに接続されたフリップフロップ回路のホールドマージンの変動分を求め、送信側の前記遅延の変動分と受信側の前記ホールドマージンの変動分を、タイミング解析において考慮するホールドマージンに追加することにより、タイミング検証を行う検証工程と、
を含むことを特徴とする回路設計方法。
(付記4)半導体集積回路内を複数の領域に分割し、領域ごとに電源を分離する回路設計を行うにあたって、
送信側領域と受信側領域のそれぞれについて電圧の変動幅の最大値を定め、前記送信側領域の、同送信側領域と前記受信側領域を接続する電源乗り換えパスに接続されたフリップフロップ回路の、送信側の電圧の変動幅が最大であるときの遅延の変動分を求めるとともに、前記受信側領域の、前記電源乗り換えパスに接続されたフリップフロップ回路の、受信側の電圧の変動幅が最大であるときのホールドマージンの変動分を求め、送信側の前記遅延の変動分と受信側の前記ホールドマージンの変動分を追加したホールドマージンを有するフリップフロップ回路を作成するライブラリ作成工程と、
前記ライブラリ作成工程で作成されたフリップフロップ回路を、前記電源乗り換えパスに接続された受信側のフリップフロップ回路に用いることにより、タイミング検証を行う検証工程と、
を含むことを特徴とする回路設計方法。
(付記5)半導体集積回路内を複数の領域に分割し、領域ごとに電源を分離する回路設計を行うにあたって、
送信側領域と受信側領域を接続する電源乗り換えパスとしてフリップフロップ回路を用い、該フリップフロップ回路の前段のラッチを前記送信側領域に配置し、該前段のラッチに前記送信側領域の電源を供給し、前記フリップフロップ回路の後段のラッチを前記受信側領域に配置し、該後段のラッチに前記受信側領域の電源を供給し、前記送信側領域の電圧の変動幅および前記受信側領域の電圧の変動幅により生じる遅延の変化分を見積もったマージンを有するフリップフロップ回路を作成するライブラリ作成工程と、
前記送信側領域と前記受信側領域を接続する電源乗り換え用のセルとして、前記ライブラリ作成工程で作成されたフリップフロップ回路を用いて、回路設計を行う設計工程と、
を含むことを特徴とする回路設計方法。
(付記6)半導体集積回路内を複数の領域に分割し、領域ごとに電源を分離する回路設計を行うにあたって、
送信側領域と受信側領域を接続する電源乗り換えパスとしてフリップフロップ回路を用い、該フリップフロップ回路の前段のラッチを前記送信側領域に配置し、該前段のラッチに前記送信側領域の電源を供給し、前記フリップフロップ回路の後段のラッチを前記受信側領域に配置し、該後段のラッチに前記受信側領域の電源を供給し、前記フリップフロップ回路の後段のラッチを構成するトランジスタのうち、ハイ側のトランジスタの閾値が、前記フリップフロップ回路の前段のラッチを構成するトランジスタの、前記送信側領域の電圧の変動幅を考慮した出力電圧よりも低いフリップフロップ回路を作成するライブラリ作成工程と、
前記送信側領域と前記受信側領域を接続する電源乗り換え用のセルとして、前記ライブラリ作成工程で作成されたフリップフロップ回路を用いて、回路設計を行う設計工程と、
を含むことを特徴とする回路設計方法。
(付記7)前記送信側領域および前記受信側領域のそれぞれで電圧の変動幅を見積もった結果、前記送信側領域と前記受信側領域との電圧差が、前記電源乗り換えパスで信号の授受を行えないほどに大きい場合に、再設計を行うことを特徴とする付記1〜6のいずれか一つに記載の回路設計方法。
(付記8)前記送信側領域および前記受信側領域のそれぞれについて、設計時には予め電圧の変動幅の許容できる範囲を定めて設計し、タイミング検証時には電圧の最大の変動幅を用いてタイミング検証を行うことを特徴とする付記1〜7のいずれか一つに記載の回路設計方法。
(付記9)付記1〜8のいずれか一つに記載の回路設計方法をコンピュータに実行させることを特徴とする回路設計プログラム。
以上のように、本発明にかかる回路設計方法および回路設計プログラムは、集積回路のタイミング解析ツールに有用であり、特に、静的タイミング解析を行うツールに適している。
実施の形態1にかかる回路設計方法を示すフローチャートである。 実施の形態2にかかる回路設計方法を示すフローチャートである。 実施の形態3にかかる回路設計方法を示すフローチャートである。 実施の形態4にかかる回路設計方法を示すフローチャートである。 実施の形態5にかかる回路設計方法において用いられる電源乗り換えパス専用セルの一例を示す回路図である。 実施の形態5における電源乗り換えパス専用セルの作成手順を示すフローチャートである。 実施の形態5における電源乗り換えパス専用セルの使用手順を示すフローチャートである。 電圧レベルによる誤動作を説明するために電圧レベルを示す模式図である。 実施の形態6にかかる回路設計方法において用いられる電源乗り換えパス専用セルの電圧レベルを示す模式図である。 実施の形態6における電源乗り換えパス専用セルの作成手順を示すフローチャートである。 実施の形態6にかかる回路設計方法において用いられる電源乗り換えパス専用セルの一例を示す回路図である。 実施の形態7にかかる回路設計方法を示すフローチャートである。 実施の形態8にかかる回路設計方法を示すフローチャートである。
符号の説明
S1 ノイズ見積工程
S2 係数算出工程
S3 パス抽出工程
S4 スクリプト作成工程
S5 検証工程
S13 ライブラリ作成工程

Claims (5)

  1. 半導体集積回路内を複数の領域に分割し、領域ごとに電源を分離する回路設計を行うにあたって、
    送信側領域と受信側領域のそれぞれについて電圧の変動幅を見積もるノイズ見積工程と、
    前記送信側領域と前記受信側領域のそれぞれについて前記見積工程で見積もられた電圧の変動幅に基づいてタイミング検証用の遅延係数を求める係数算出工程と、
    前記送信側領域と前記受信側領域を接続する電源乗り換えパスを抽出するパス抽出工程と、
    前記送信側領域の、前記パス抽出工程で抽出された電源乗り換えパスに接続されたセルに対して、前記係数算出工程で算出された送信側領域の遅延係数をかけるとともに、前記受信側領域の、前記電源乗り換えパスに接続されたセルに対して、前記係数算出工程で算出された受信側領域の遅延係数をかけることにより、前記電源乗り換えパスのタイミング検証を行うためのスクリプトを生成するスクリプト生成工程と、
    を含むことを特徴とする回路設計方法。
  2. 半導体集積回路内を複数の領域に分割し、領域ごとに電源を分離する回路設計を行うにあたって、
    送信側領域と受信側領域のそれぞれについて電圧の変動幅を見積もるノイズ見積工程と、
    前記送信側領域と前記受信側領域のそれぞれについて前記見積工程で見積もられた電圧の変動幅に基づいてタイミング検証用の遅延係数を求める係数算出工程と、
    前記送信側領域と前記受信側領域を接続する電源乗り換えパスを抽出し、前記送信側領域の、前記電源乗り換えパスに接続されたセルに対して、前記係数算出工程で算出された送信側領域の遅延係数をかけるとともに、前記受信側領域の、前記電源乗り換えパスに接続されたセルに対して、前記係数算出工程で算出された受信側領域の遅延係数をかけることにより、前記電源乗り換えパスのタイミング検証を行う検証工程と、
    を含むことを特徴とする回路設計方法。
  3. 半導体集積回路内を複数の領域に分割し、領域ごとに電源を分離する回路設計を行うにあたって、
    送信側領域と受信側領域のそれぞれについて電圧の変動幅を見積もるノイズ見積工程と、
    前記ノイズ見積工程で見積もられた送信側の電圧の変動幅に基づいて、前記送信側領域の、同送信側領域と前記受信側領域を接続する電源乗り換えパスに接続されたフリップフロップ回路の遅延の変動分を求めるとともに、前記ノイズ見積工程で見積もられた受信側の電圧の変動幅に基づいて、前記受信側領域の、前記電源乗り換えパスに接続されたフリップフロップ回路のホールドマージンの変動分を求め、送信側の前記遅延の変動分と受信側の前記ホールドマージンの変動分を、タイミング解析において考慮するホールドマージンに追加することにより、タイミング検証を行う検証工程と、
    を含むことを特徴とする回路設計方法。
  4. 半導体集積回路内を複数の領域に分割し、領域ごとに電源を分離する回路設計を行うにあたって、
    送信側領域と受信側領域のそれぞれについて電圧の変動幅の最大値を定め、前記送信側領域の、同送信側領域と前記受信側領域を接続する電源乗り換えパスに接続されたフリップフロップ回路の、送信側の電圧の変動幅が最大であるときの遅延の変動分を求めるとともに、前記受信側領域の、前記電源乗り換えパスに接続されたフリップフロップ回路の、受信側の電圧の変動幅が最大であるときのホールドマージンの変動分を求め、送信側の前記遅延の変動分と受信側の前記ホールドマージンの変動分を追加したホールドマージンを有するフリップフロップ回路を作成するライブラリ作成工程と、
    前記ライブラリ作成工程で作成されたフリップフロップ回路を、前記電源乗り換えパスに接続された受信側のフリップフロップ回路に用いることにより、タイミング検証を行う検証工程と、
    を含むことを特徴とする回路設計方法。
  5. 請求項1〜4のいずれか一つに記載の回路設計方法をコンピュータに実行させることを特徴とする回路設計プログラム。

JP2006018169A 2006-01-26 2006-01-26 回路設計方法および回路設計プログラム Withdrawn JP2007200042A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2006018169A JP2007200042A (ja) 2006-01-26 2006-01-26 回路設計方法および回路設計プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006018169A JP2007200042A (ja) 2006-01-26 2006-01-26 回路設計方法および回路設計プログラム

Publications (1)

Publication Number Publication Date
JP2007200042A true JP2007200042A (ja) 2007-08-09

Family

ID=38454596

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006018169A Withdrawn JP2007200042A (ja) 2006-01-26 2006-01-26 回路設計方法および回路設計プログラム

Country Status (1)

Country Link
JP (1) JP2007200042A (ja)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003271696A (ja) * 2002-03-19 2003-09-26 Fujitsu Ltd 電圧変動反映遅延計算方法および電圧変動反映遅延計算システム
WO2004077556A1 (ja) * 2003-02-26 2004-09-10 Sanyo Electric Co., Ltd. 半導体集積回路装置及びその電源配線方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003271696A (ja) * 2002-03-19 2003-09-26 Fujitsu Ltd 電圧変動反映遅延計算方法および電圧変動反映遅延計算システム
WO2004077556A1 (ja) * 2003-02-26 2004-09-10 Sanyo Electric Co., Ltd. 半導体集積回路装置及びその電源配線方法

Similar Documents

Publication Publication Date Title
US10289483B2 (en) Methods and apparatus for embedding an error correction code in storage circuits
US8566767B1 (en) System and method for parametric intercoupling of static and dynamic analyses for synergistic integration in electronic design automation
US20070136705A1 (en) Timing analysis method and device
US20080034338A1 (en) Timing analysis method and device
US8042010B2 (en) Two-phase clock-stalling technique for error detection and error correction
US7352212B2 (en) Opposite-phase scheme for peak current reduction
US20010048333A1 (en) Buffer circuit block and design method of semiconductor integrated circuit by using the same
US20080320427A1 (en) Apparatus and method for integrated circuit design with improved delay variation calculation based on power supply variations
JP2008140821A (ja) 半導体装置および半導体装置の設計方法
JP4554509B2 (ja) タイミング解析装置及びタイミング解析手法
US20090271747A1 (en) Logic circuit designing device, logic circuit designing method and logic circuit designing program for asynchronous logic circuit
US20110295536A1 (en) Clock jitter analyzing method and apparatus
JP2007200042A (ja) 回路設計方法および回路設計プログラム
Kim et al. Post silicon management of on-package variation induced 3D clock skew
JP4419633B2 (ja) 論理回路設計システム、論理回路設計方法およびそのプログラム
JP4425300B2 (ja) 半導体集積回路装置の設計プログラム、および、記録媒体
JP2005044854A (ja) クロックツリー回路、半導体集積回路装置、半導体集積回路装置の設計方法、および、半導体集積回路の設計プログラムを記録した媒体
JP2004280439A (ja) クロストークノイズ検出方法、並びに半導体集積回路の設計方法及び設計検証方法
US8718999B2 (en) Circuit simulation method and circuit simulation device
US7509603B2 (en) Semiconductor integrated circuit and design method thereof
US6553557B1 (en) Inter-functional-block restriction high-speed extraction method and recording medium having stored thereon an inter-functional-block restriction high-speed extraction program
US8564351B2 (en) Clock phase compensation for adjusted voltage circuits
Hiremath et al. Alu design using low power GDI standard cells
JP2002259488A (ja) クロックスキュー検証方法
JP2003296386A (ja) 半導体集積回路の設計方法及び半導体集積回路

Legal Events

Date Code Title Description
A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A712

Effective date: 20080730

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080916

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100803

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20101004

A761 Written withdrawal of application

Free format text: JAPANESE INTERMEDIATE CODE: A761

Effective date: 20101203