(57)【要約】【課題】従来と比べてクロストークノイズの影響を受けないレイアウト設計を行った機能ブロックを有する半導体集積回路を提供する。【解決手段】レイアウト設計対象の機能ブロック１の境界周辺に最も近く位置する信号配線ネットである第１ネットＮ１および第２ネットＮ２と機能ブロック１の境界との間に、信号配線ネットの長さの一部または全部にわたって信号配線ネットと隣接しかつ並行に、接地電位に接続される第１グラウンド配線ＧＬ１および第２グラウンド配線ＧＬ２を敷設する。【選択図】  図１Ａ
2004186257.tif 000002
【特許請求の範囲】
【請求項１】
基本素子と、前記基本素子間を接続する配線とから構成される半導体集積回路であって、レイアウト設計対象の機能ブロックの境界周辺に最も近い位置にある信号配線ネットと前記機能ブロックの境界との間に、前記信号配線ネットの長さの一部または全部にわたって前記信号配線ネットと隣接しかつ並行に、接地電位に接続されるグラウンド配線を敷設することを特徴とする半導体集積回路。
【請求項２】
基本素子、または前記基本素子を複数個用いて構成された論理セルとその間を接続する配線とから構成される半導体集積回路の設計を階層的に処理してタイミング設計を行なう際に用いる遅延計算方法であって、下位階層にある機能ブロックの外部端子から内部回路へ電気信号の流れ方向もしくは逆方向に辿って初めに到達する順序回路のセルまでに存在する論理セル群の、寄生抵抗および寄生容量で表わした抵抗・容量ネットワークの情報と、前記機能ブロックの境界周辺に最も近い信号配線ネットの、寄生抵抗および寄生容量で表わした抵抗・容量ネットワークの情報と、前記信号配線ネットから電気信号の流れ方向もしくは逆方向に辿って初めに到達する順序回路のセルまでに存在する論理セル群の、寄生抵抗および寄生容量で表わした抵抗・容量ネットワークの情報とを抽出し、上位階層のタイミング設計時に、抽出された情報を用いて遅延計算を行うことを特徴とする遅延計算方法。
【請求項３】
基本素子、または前記基本素子を複数個用いて構成された論理セルとその間を接続する配線とから構成される半導体集積回路の設計を階層的に処理してタイミング設計を行なう際に用いる遅延計算方法であって、
（ａ）下位階層で設計された機能ブロックから、ブロック境界に最も近い位置にある信号配線ネットＮｉ（ｉは自然数）を抽出するステップと、
（ｂ）上位階層にあり、前記ステップ（ａ）で抽出された信号配線ネットのそれぞれと隣接した位置にある信号配線ネットＮｊ（ｊは自然数）を抽出するステップと、
（ｃ）前記ステップ（ａ）で抽出された信号配線ネットＮｉと前記ステップ（ｂ）で抽出された信号配線ネットＮｊとの間でクロストークを考慮して遅延計算を行なうステップと、
（ｄ）前記ステップ（ｃ）で遅延計算された信号配線ネットＮｉの遅延値を下位階層設計時に計算した遅延値と置き換えるステップとを備えたことを特徴とする遅延計算方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、半導体集積回路を階層的に処理するときのレイアウト設計とクロストークを考慮した遅延解析に関する。
【０００２】
【従来の技術】
近年の半導体ＬＳＩ製造技術の向上により、システムＬＳＩと呼ばれる大規模なＬＳＩ回路が設計されるようになってきている。その回路を設計するために、同期設計した機能ブロックを設計したあと、階層的に組み上げている設計スタイルをとることが多い。例えば、図３Ａにその一例を示す。下位階層の機能ブロックのフリップフロップ回路間を省略し、機能ブロックのフリップフロップ回路から外部端子までの回路を上位階層に持ち上げて設計する。これは次の理由から可能である。
【０００３】
同期設計であるので、フリップフロップ間のタイミングを満足していれば、回路の動作は保障できる。即ち、フリップフロップとの間で構成される全ての回路は、その機能ブロック内で回路動作の保障が可能となる。しかしながら、機能ブロックの外部端子を介して外部の回路と接続してはじめてフリップフロップの間で挟まれる回路を構成する部分については、機能ブロック内では回路動作を保障できない。
【０００４】
図３Ａにおいて、フリップフロップ（ＦＦ）である第１セル１１とインバータ１３とが第１ネットＮ１で接続され、同じくフリップフロップ（ＦＦ）である第２セル１２とインバータ１４とが第２ネットＮ２で接続されている。インバータ１３、１４を介して、第１セル１１と第２セル１２との間に挟まれた内部回路１５については、その機能ブロック１０内で回路動作の保障が可能であるが、第１セル１１と外部端子Ａに挟まれた回路についてはタイミングまで保障できないし、第２セル１２と外部端子Ｂに挟まれた回路についても同様である。
【０００５】
図３Ｂは、図３Ａのレイアウトイメージ図である。ここでは、標準セル方式でレイアウト設計された例を示している。図３Ｂにおいて、複数のセル行ＣＲ１、ＣＲ２、…、ＣＲｎがあり、一番上のセル行ＣＲ１に第１セル１１があり、第１セル１１とインバータ１３とを接続する第１ネットＮ１がある。同様に、一番下のセル行ＣＲｎに第２セル１２があり、第２セル１２とインバータ１４とを接続する第２ネットＮ２がある。ここで、第１ネットＮ１と第２ネットＮ２は、機能ブロック１０の境界（破線部分）の周辺に長い配線で敷設されていることに注意する。これは、レイアウト設計ではよくあることである。
【０００６】
次に、図３Ｃは、図３Ｂの機能ブロック１０（第１機能ブロック）を、第２機能ブロック２０、第３機能ブロック３０、および第４機能ブロック４０と上位階層で配線して接続したときの模式図である。
【０００７】
図３Ｃにおいて、第２機能ブロック２０と第３機能ブロック３０との間に第３ネットＮ３があり、第１機能ブロック１０と第４機能ブロック４０との間にも第４ネットＮ４がある。また、第３ネットＮ３は第１ネットＮ１と、第４ネットＮ４は第２ネットＮ２と長い配線で隣接関係にある。このような状態において、Ｃ１、Ｃ２の破線で囲んで示す部分で、クロストークノイズと呼ばれる信号干渉が起きる可能性が高い。この現象は、信号が変化するとき、配線間の容量を介して電流が流れると発生するものであり、結果として、電気信号の流れる時間を変化させることを引き起こす。即ち、回路のタイミングが少し変動することになる。例えば、既に設計済みの第１機能ブロック１０において、第１ネットＮ１と第２ネットＮ２を流れる電気信号が、それぞれ、第３ネットＮ３と第４ネットＮ４とのクロストークノイズの干渉により、遅延が変化する。結果として、第１機能ブロック１０のタイミング関係が満足できなくなり、誤動作を起こすことになるので、もう一度、第１機能ブロック１０を設計し直すことになる。
【０００８】
この原因は、明らかなように第３ネットＮ３と第４ネットＮ４が存在することである。しかしながら、第１機能ブロック１０の設計時点では、第３ネットＮ３と第４ネットＮ４が存在するかどうかわからないし、その存在は上位階層の設計を行なって初めてわかる。
【０００９】
従来では、例えば、機能ブロックの境界を内部回路に対して大きくとることによってクロストークノイズの干渉を低減していた。これは、クロストークが容量結合に起因することから、配線間隔を広げることによってカップリング容量を下げることができ、結果として干渉を低減する、という考えによるものである。
【００１０】
【特許文献１】
特開平１１−４０６７７号公報
【００１１】
【発明が解決しようとする課題】
従来の方法では、クロストークノイズを低減するために、機能ブロックの境界と内部の信号配線との間を十分に間隔をとることが必要となるので、結果的に、配線ができないデッドスペースを生むことになっていた。結果として、面積の大きい半導体ＬＳＩを設計することになり、ウェーハ取りが悪くなってしまう。
【００１２】
また、上位階層の設計において、第３ネットＮ３や第４ネットＮ４のような配線がなければ、第１機能ブロック１０の境界近くに第１ネットＮ１や第２ネットＮ２を配線してもよく、レイアウトの敷き詰め率の低下を招くことになる。
【００１３】
第１機能ブロック１０の面積を最小に抑え、かつ上位階層の設計でも第３ネットＮ３や第４ネットＮ４のようなネットの存在の有無に関わらず、クロストークノイズの影響を無くすか、もしくはそれを考慮してタイミング設計することが望まれる。
【００１４】
本発明は、上記の問題点に鑑みてなされたものであり、その目的は、従来と比べてクロストークノイズの影響を受けないレイアウト設計を行った機能ブロックを有する半導体集積回路を提供すること、また、もし影響があったとしても、それを機能ブロックのタイミング検証へ最小工数でフィードバックできる遅延計算方法を提供することにある。
【００１５】
【課題を解決するための手段】
前記の目的を達成するため、本発明に係る半導体集積回路は、基本素子と、基本素子間を接続する配線とから構成される半導体集積回路であって、レイアウト設計対象の機能ブロックの境界周辺に最も近い位置にある信号配線ネット（例えば、第１ネットＮ１、第２ネットＮ２）と機能ブロックの境界との間に、信号配線ネットの長さの一部または全部にわたって信号配線ネットと隣接しかつ並行に、接地電位に接続されるグラウンド配線（例えば、第１グラウンド配線ＧＬ１、第２グラウンド配線ＧＬ２）を敷設することを特徴とする。
【００１６】
この構成によれば、機能ブロックの境界周辺の信号配線ネットに隣接しかつ並行にグラウンド配線を配置することで、最小面積のダメージで、上位階層でのレイアウト設計に影響されないで、クロストークノイズを抑えて下位階層の機能ブロックの回路動作を保障することができる。
【００１７】
前記の目的を達成するため、本発明に係る第１の遅延計算方法は、基本素子、または基本素子を複数個用いて構成された論理セルとその間を接続する配線とから構成される半導体集積回路の設計を階層的に処理してタイミング設計を行なう際に用いる遅延計算方法であって、下位階層にある機能ブロックの外部端子から内部回路へ電気信号の流れ方向もしくは逆方向に辿って初めに到達する順序回路（例えば、フリップフロップ）のセルまでに存在する論理セル群の、寄生抵抗および寄生容量で表わした抵抗・容量ネットワークの情報と、機能ブロックの境界周辺に最も近い信号配線ネット（例えば、第１ネットＮ１、第２ネットＮ２）の、寄生抵抗および寄生容量で表わした抵抗・容量ネットワークの情報と、信号配線ネット（Ｎ１、Ｎ２）から電気信号の流れ方向もしくは逆方向に辿って初めに到達する順序回路のセルまでに存在する論理セル群の、寄生抵抗および寄生容量で表わした抵抗・容量ネットワークの情報とを抽出し、上位階層のタイミング設計時に、抽出された情報を用いて遅延計算を行うことを特徴とする。
【００１８】
この構成によれば、クロストークノイズの影響で、例えば第１ネットＮ１や、第１ネットＮ１と上位階層で隣接する第３ネットＮ３の遅延時間が変化したとしても、それを反映させて上位階層のタイミング設計で検証することが可能である。また、最小工数でタイミングを再び確定することが可能になる。
【００１９】
前記の目的を達成するため、本発明に係る第２の遅延計算方法は、基本素子、または基本素子を複数個用いて構成された論理セルとその間を接続する配線とから構成される半導体集積回路の設計を階層的に処理してタイミング設計を行なう際に用いる遅延計算方法であって、（ａ）下位階層で設計された機能ブロックから、ブロック境界に最も近い位置にある信号配線ネットＮｉ（ｉは自然数）（例えば、第１ネットＮ１、第２ネットＮ２）を抽出するステップと、（ｂ）上位階層にあり、ステップ（ａ）で抽出された信号配線ネットのそれぞれと隣接した位置にある信号配線ネットＮｊ（ｊは自然数）（例えば、第３ネットＮ３、第４ネットＮ４）を抽出するステップと、（ｃ）ステップ（ａ）で抽出された信号配線ネットＮｉとステップ（ｂ）で抽出された信号配線ネットＮｊとの間でクロストークを考慮して遅延計算を行なうステップと、（ｄ）ステップ（ｃ）で遅延計算された信号配線ネットＮｉの遅延値を下位階層設計時に計算した遅延値と置き換えるステップとを備えたことを特徴とする。
【００２０】
この構成によれば、クロストークノイズの影響を受ける最小のネット数だけを抽出して遅延計算を行って値を更新しているので、工数が少なくてすむ。
【００２１】
【発明の実施の形態】
以下、本発明の好適な実施形態について、図面を参照しながら説明する。
【００２２】
（第１の実施形態）
図１Ａは、本発明の第１の実施形態に係る半導体集積回路における機能ブロック内のレイアウトを示す模式図である。なお、図１Ａにおいて、図３Ｂに示す従来例と同じ構成および機能を有する部分については、同一の符号を付して説明を省略する。
【００２３】
図１Ａにおいて、本実施形態が従来例と異なるのは、機能ブロック１の境界に近い第１ネットＮ１と機能ブロック１の境界との間に、第１ネットＮ１と隣接しかつ平行に、接地電位に接続される第１グラウンド配線ＧＬ１を敷設し、また機能ブロック１の境界に近い第２ネットＮ２と機能ブロック１の境界との間に、第２ネットＮ２と隣接しかつ平行に、接地電位に接続される第２グラウンド配線ＧＬ２を敷設している点にある。
【００２４】
ここで、第１ネットＮ１は、第１グラウンド配線ＧＬ１とその全てが隣接しかつ並行に敷設されているのに対して、第２ネットＮ２は、第２グラウンド配線ＧＬ２とその一部（この場合、約２／３程度）だけが隣接しかつ並行に敷設されている。これは、長く並行に配線が施されている場合、クロストークノイズの影響は大きいが、グラウンド配線を敷設するとしても、全長にわたってグラウンド配線を敷設しなくても影響がない状態がありえるからである。例えば、隣接しかつ並行な配線の長さは、他の信号配線を含めた配線混雑度の程度によって決めてもよい。
【００２５】
図１Ｂは、図１Ａの機能ブロック１（第１機能ブロック）を、第２機能ブロック２、第３機能ブロック３、および第４機能ブロック４と上位階層で配線して接続したときの模式図である。
【００２６】
図１Ｂにおいて、第３ネットＮ３および第４ネットＮ４は、それぞれ、第１ネットＮ１および第２ネットＮ２の近くに敷設されているが、それらの間に第１グラウンド配線ＧＬ１および第２グラウンド配線ＧＬ２があるので、Ｄ１、Ｄ２の破線で囲んで示す部分で、クロストークノイズの干渉が起こることは殆どない。これにより、第１機能ブロック１の回路動作は保障されたままとなる。
【００２７】
以上のように、本実施形態によれば、機能ブロックの境界周辺の信号配線ネットに隣接しかつ並行にグラウンド配線を配置することで、最小面積のダメージで、上位階層でのレイアウト設計に影響されないで、クロストークノイズを抑えて下位階層の機能ブロックの回路動作を保障することができる。
【００２８】
（第２の実施形態）
図３Ｃに示すように、機能ブロック１０の境界周辺にある第１ネットＮ１と第２ネットＮ２が、上位階層で設計したときにクロストークノイズの影響を受けやすいネットである。第１ネットＮ１と第２ネットＮ２を含んでフリップフロップ間に存在する回路は、これらのネットの影響によってタイミングの検証を行なう必要がある。
【００２９】
そこで、本実施形態では、外部端子Ａ（またはＢ）からフリップフロップ１１（またはフリップフロップ１２）までに存在する回路の、寄生抵抗及び寄生容量で表わした抵抗・容量ネットワーク情報以外に、クロストークノイズの影響を受けやすい、下位階層の機能ブロック１の境界周辺にある信号配線ネットである第１ネットＮ１と第２ネットＮ２の、寄生抵抗及び寄生容量で表わした抵抗・容量ネットワーク情報と、そのネットを含んでフリップフロップ１１と１２間に存在する回路全ての、寄生抵抗及び寄生容量で表わした抵抗・容量ネットワーク情報とを上位階層設計時に考慮して遅延計算を行うことにより、タイミング設計で検証する。
【００３０】
以上のように、本実施形態によれば、もしクロストークノイズの影響で、第１ネットＮ１や第３ネットＮ３の遅延時間が変化したとしても、それを反映させて上位階層のタイミング設計で検証することが可能である。また、最小工数でタイミングを再び確定することが可能になる。
【００３１】
（第３の実施形態）
図２は、本発明の第３の実施形態に係る遅延計算方法における処理手順を示すフローチャートである。
【００３２】
まず、ステップ２０１で、機能ブロックからブロック境界にもっとも近い位置にある信号配線ネット群Ｎｉ（ｉは自然数）を抽出する。例えば、図３Ｂに示す機能ブロック１０の内部レイアウトの場合、第１ネットＮ１と第２ネットＮ２が抽出される。
【００３３】
次に、ステップ２０２で、上位階層にあり（ブロック境界の外側にあり）、Ｎｉとそれぞれと隣接した位置にある信号配線ネット群Ｎｊ（ｊは自然数）を抽出する。例えば、図３Ｃに示す上位階層でのレイアウトの場合、第３ネットＮ３と第４ネットＮ４が抽出される。
【００３４】
次に、ステップ２０３で、ステップ２０１で抽出された信号配線ネットである第１ネットＮ１および第２ネットＮ２と、それぞれ、ステップ２０２で抽出された信号配線ネットである第３ネットＮ３および第４ネットＮ４との間のクロストークノイズを考慮して遅延計算を行なう。このとき、第１ネットＮ１と第２ネットＮ２についても遅延計算を行う。この遅延計算は任意の方法で実現可能である。
【００３５】
もし、ステップ２０３で遅延計算された第１ネットＮ１と第２ネットＮ２の値が、下位階層の機能ブロック１０だけで遅延計算したときの値と比較して、異なっていた場合、それらの遅延値を各々更新することにする。これを行なうのがステップ２０４である。図２に示すステップ２０４での判定は、全てのネットについて処理を行なうことを意味している。
【００３６】
もし、更新された第１ネットＮ１と第２ネットＮ２の遅延値によって、機能ブロック１０のタイミング仕様が満足できない場合、再設計が必要となる。そこで、２つの選択肢が存在する。一つは、機能ブロック１０を再設計することであり、もう一つは、第３のネットＮ３と第４のネットＮ４を引き剥がして再配線することである。前者を選択した場合、工数がかかるが、遅延変動値が小さい場合、比較的容易に再設計可能である。また、後者を選択した場合、上位階層の配線ネットだけ考慮すればよいので比較的対処しやすい。本実施形態では、いずれの方法を用いたとしても実施可能である。
【００３７】
以上のように、本実施形態によれば、クロストークノイズの影響を受ける最小のネット数だけを抽出して遅延計算を行って値を更新しているので、工数が少なくてすむ。
【００３８】
【発明の効果】
以上説明したように、本発明によれば、機能ブロックの境界周辺に存在する信号配線ネットの外側（ブロック境界側）にグラウンド配線を隣接しかつ平行に敷設する回路設計を行なうことで、最小の面積ダメージで、確実にクロストークを回避することができる。また、下位階層の機能ブロックを中抜き状態にする場合、フリップフロップと外部端子間に存在する回路のみ抽出するだけでなく、ブロック境界に一番近い信号配線ネットとそれに関係するフリップフロップ間の回路も合わせて抽出しておくことで、上位階層時の遅延計算とデータの更新が容易になる。さらに、下位階層の機能ブロックで上位階層の配線ネットとクロストークを起こしやすいネットのみを計算するので、遅延計算工数が少なくてすむ。
【図面の簡単な説明】
【図１Ａ】本発明の第１の実施形態に係る半導体集積回路における機能ブロック内のレイアウトを示す模式図
【図１Ｂ】図１Ａの機能ブロック１（第１機能ブロック）を、第２機能ブロック２、第３機能ブロック３、および第４機能ブロック４と上位階層で配線して接続したときの模式図
【図２】本発明の第３の実施形態に係る遅延計算方法における処理手順を示すフローチャート
【図３Ａ】同期設計されたある機能ブロックの構成を概念的に示す回路図
【図３Ｂ】従来の半導体集積回路における機能ブロック内のレイアウトを示す模式図
【図３Ｃ】図３Ｂの機能ブロック１０（第１機能ブロック）を、第２機能ブロック２０、第３機能ブロック３０、および第４機能ブロック４０と上位階層で配線して接続したときの模式図
【符号の説明】
１  第１機能ブロック
２  第２機能ブロック
３  第３機能ブロック
４  第４機能ブロック
１１、１２  フリップフロップ
１３、１４  インバータ
１５  内部回路
Ａ、Ｂ  外部端子
ＣＲ１、ＣＲ２、ＣＲｎ  セル行
ＧＬ１  第１グラウンド配線
ＧＬ２  第２グラウンド配線
Ｎ１  第１機能ブロックの境界周辺にある第１ネット
Ｎ２  第１機能ブロックの境界周辺にある第２ネット
Ｎ３  上位階層で第１ネットＮ１と隣接した位置にある第３ネット
Ｎ４  上位階層で第２ネットＮ２と隣接した位置にある第４ネット
【図１Ａ】
2004186257.tif 000003
【図１Ｂ】
2004186257.tif 000004
【図２】
2004186257.tif 000005
【図３Ａ】
2004186257.tif 000006
【図３Ｂ】
2004186257.tif 000007
【図３Ｃ】
2004186257.tif 000008