(57)【要約】【課題】  記憶回路にリセットをかけた際に半導体装置が破壊しないように半導体装置を設計する。【解決手段】  コンピュータは、配置情報に基づいて配置された記憶回路１ａ〜１ｌ，２ａ〜２ｍ，３ａ〜３ｎをグループ１〜３にグループ化する。コンピュータは、グループ１〜３のそれぞれにおいて、記憶回路１ａ〜１ｌ，２ａ〜２ｍ，３ａ〜３ｎのリセットタイミングが異なるように遅延回路５ａ，５ｂをリセット線４に挿入する。例えば、コンピュータは、グループ１とグループ３の間に遅延回路５ａを挿入する。グループ３とグループ２の間に遅延回路５ｂを挿入する。これによって、各グループ１〜３におけるリセットタイミングは異なり、リセットの際に流れる大電流を抑制してＡＣノイズを抑制し、半導体装置が破壊されるのを防止する。【選択図】  図１
2006278370.tif 000002
【特許請求の範囲】
【請求項１】
リセットによる電源変動を抑制するように半導体装置を設計する半導体装置の設計方法において、
コンピュータによって、配置された記憶回路をグループ化し、
前記コンピュータによって、前記グループ化された前記記憶回路のグループごとにおいて前記記憶回路のリセットタイミングが異なるようにリセット線に遅延回路を挿入する、
ことを特徴とする半導体装置の設計方法。
【請求項２】
前記グループ化される前記記憶回路の個数は、前記グループ化された前記記憶回路を同時リセットした場合に流れるグループリセット電流によって発生するノイズが、最大定格に収まるように決定することを特徴とする請求項１記載の半導体装置の設計方法。
【請求項３】
前記リセットタイミングは、前記グループのそれぞれが、リセット時の電流変化時間分ずれてリセットされるように決定することを特徴とする請求項１記載の半導体装置の設計方法。
【請求項４】
前記記憶回路ごとにリセット時に流れる最大電流値が定義されており、前記最大電流値に基づいて、前記グループリセット電流を算出することを特徴とする請求項２記載の半導体装置の設計方法。
【請求項５】
前記グループリセット電流は、前記グループ化された前記記憶回路のそれぞれの前記最大電流値を加算して算出することを特徴とする請求項４記載の半導体装置の設計方法。
【請求項６】
前記ノイズが前記最大定格に収まるための前記グループに流れる許容電流値を算出し、前記許容電流値と前記グループリセット電流とを比較することを特徴とする請求項２記載の半導体装置の設計方法。
【請求項７】
前記グループリセット電流が前記許容電流値より小さければ、前記グループに前記記憶回路を追加し、再度比較することを特徴とする請求項６記載の半導体装置の設計方法。
【請求項８】
前記グループリセット電流が前記許容電流値以上であれば、前記グループに最後に追加した前記記憶回路を前記グループに追加しないことを特徴とする請求項６記載の半導体装置の設計方法。
【請求項９】
前記グループリセット電流が前記許容電流値より小さければ、前記グループに前記記憶回路を追加して再度比較し、前記グループリセット電流が前記許容電流値以上であれば、前記グループに最後に追加した前記記憶回路を前記グループに追加せず新たな前記グループに追加する処理を、全ての前記記憶回路において繰り返すことを特徴とする請求項６記載の半導体装置の設計方法。
【請求項１０】
リセットによる電源変動を抑制する半導体装置において、
グループ化された記憶回路と、
前記グループ化された前記記憶回路のグループごとにおいて前記記憶回路のリセットタイミングが異なるようにリセット線に挿入された遅延回路と、
を有し、
前記グループ化された前記記憶回路の個数が、前記グループ化された前記記憶回路を同時リセットした場合に流れるグループリセット電流によって発生するノイズが、最大定格に収まるように決定された
ことを特徴とする半導体装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は半導体装置の設計方法に関し、特にリセットによる電源変動を抑制するように半導体装置を設計するコンピュータを用いた半導体装置の設計方法および半導体装置に関する。
【背景技術】
【０００２】
フリップフロップなどの記憶回路は、データを保持する機能を有する。そのため、記憶回路を搭載したＬＳＩ（Large Scale Integration）などの半導体装置は、最初に動作を始める前や試験を開始する前に、記憶回路を初期状態にする必要がある。
【０００３】
半導体装置には、半導体チップ上の記憶回路をリセットするための端子と、その端子から各記憶回路のリセット端子へつながるリセット線とが設けてある。端子からリセット信号を送ることにより、記憶回路を初期化することができる。このような、記憶回路にリセットをかけることができる半導体装置の設計は、コンピュータを用いて以下のようにして行われていた。
【０００４】
図７は、従来の半導体装置の設計方法を示したフローチャートである。
ステップＳ１０１において、コンピュータは、入力された配置情報に基づいて、半導体チップ上にＳＲＡＭ（Static Random Access Memory）やＲＡＭ（Random Access Memory）、ＰＬＬ（Phase Locked Loop）等のマクロを配置する。
【０００５】
ステップＳ１０２において、コンピュータは、入力された配線情報に基づいて、半導体チップ上に電源線を配線する。
ステップＳ１０３において、コンピュータは、入力された配置情報に基づいて、半導体チップ上にセルを配置する。セルは、例えば、ロジック回路であり、ＡＮＤ回路、ＯＲ回路、または、これらから構成されるフリップフロップ（記憶回路）などである。
【０００６】
ステップＳ１０４において、コンピュータは、入力された配線情報に基づいて、クロック線を配線する。クロック線は、例えば、前述したセルが同期して動作するためのクロックをセルに供給する。
【０００７】
ステップＳ１０５において、コンピュータは、リセットされる全ての記憶回路に対し、リセット線を配線する。
ステップＳ１０６において、コンピュータは、入力された配線情報に基づいて、データ線を配線する。
【０００８】
ステップＳ１０７において、コンピュータは、半導体装置が適正に動作するようにタイミング調整をする。例えば、配線間にバッファ等を挿入し、各回路の動作タイミングが合うようにする。
【０００９】
なお、リセット時のピーク電流を抑えることで、電源、グランドにのるノイズを低減させ、ラッチアップの発生を抑えた半導体集積回路がある（例えば、特許文献１参照）。
【特許文献１】特開平８−８７０６号公報
【発明の開示】
【発明が解決しようとする課題】
【００１０】
しかし、従来では、リセットされる全ての記憶回路に対し、同時にリセットがかかるように設計されていたため、リセットがかかると大電流が流れて電源に大きなＡＣ（Alternating Current）ノイズが発生し、半導体装置を破壊する恐れがあるという問題点があった。
【００１１】
本発明はこのような点に鑑みてなされたものであり、記憶回路にリセットをかけても、半導体装置が破壊しないように半導体装置を設計する半導体装置の設計方法および半導体装置を提供することを目的とする。
【課題を解決するための手段】
【００１２】
本発明では上記問題を解決するために、図１に示すようなリセットによる電源変動を抑制するように半導体装置を設計する半導体装置の設計方法において、コンピュータによって、配置された記憶回路１ａ〜１ｌ，２ａ〜２ｍ，３ａ〜３ｎをグループ化し、コンピュータによって、グループ化された記憶回路１ａ〜１ｌ，２ａ〜２ｍ，３ａ〜３ｎのグループ１〜３ごとにおいて記憶回路１ａ〜１ｌ，２ａ〜２ｍ，３ａ〜３ｎのリセットタイミングが異なるようにリセット線４に遅延回路５ａ，５ｂを挿入する、ことを特徴とする半導体装置の設計方法が提供される。
【００１３】
このような半導体装置の設計方法によれば、コンピュータは、記憶回路１ａ〜１ｌ，２ａ〜２ｍ，３ａ〜３ｎをグループ１〜３にグループ化し、グループ１〜３ごとにおいて記憶回路１ａ〜１ｌ，２ａ〜２ｍ，３ａ〜３ｎのリセットタイミングが異なるように、リセット線４に遅延回路５ａ，５ｂを挿入する。これにより、リセットの際の大電流を抑制し、ＡＣノイズを抑制する。
【００１４】
また、本発明では、上記問題を解決するために、リセットによる電源変動を抑制する半導体装置において、グループ化された記憶回路と、グループ化された記憶回路のグループごとにおいて記憶回路のリセットタイミングが異なるようにリセット線に挿入された遅延回路と、を有し、グループ化された記憶回路の個数が、グループ化された記憶回路を同時リセットした場合に流れるグループリセット電流によって発生するノイズが、最大定格に収まるように決定されたことを特徴とする半導体装置が提供される。
【００１５】
このような半導体装置によれば、リセットの際、記憶回路は、グループごとに異なったタイミングでリセットされる。これにより、リセットの際の大電流を抑制し、ＡＣノイズを抑制する。
【発明の効果】
【００１６】
本発明の半導体装置の設計方法では、記憶回路をグループ化し、グループごとにおいて記憶回路のリセットタイミングが異なるように、リセット線に遅延回路を挿入するようにした。これにより、リセットの際の大電流を抑制してＡＣノイズを抑制し、半導体装置が破壊されるのを防止することができる。
【００１７】
また、本発明の半導体装置では、リセットの際、記憶回路は、グループごとに異なったタイミングでリセットされる。これにより、リセットの際の大電流を抑制してＡＣノイズを抑制し、半導体装置が破壊されるのを防止することができる。
【発明を実施するための最良の形態】
【００１８】
以下、本発明の原理を図面を参照して詳細に説明する。
図１は、半導体装置の設計方法の概要を説明するための半導体装置を示した図である。図に示すように、オペレータがコンピュータを用いて、記憶回路１ａ〜１ｌ，２ａ〜２ｍ，３ａ〜３ｎを半導体チップ上に配置したとする。なお、図には、リセット信号が伝播するリセット線４およびリセット線４に挿入された、例えば、バッファである遅延回路５ａ，５ｂが示してある。
【００１９】
コンピュータは、配置された記憶回路１ａ〜１ｌ，２ａ〜２ｍ，３ａ〜３ｎをグループ１〜３にグループ化する。そして、コンピュータは、グループ１〜３のそれぞれにおいて、記憶回路１ａ〜１ｌ，２ａ〜２ｍ，３ａ〜３ｎのリセットタイミングが異なるように遅延回路５ａ，５ｂをリセット線４に挿入する。例えば、コンピュータは、グループ１とグループ３の間に遅延回路５ａを挿入する。グループ３とグループ２の間に遅延回路５ｂを挿入する。これによって、各グループ１〜３におけるリセットタイミングは異なる。
【００２０】
このように、記憶回路１ａ〜１ｌ，２ａ〜２ｍ，３ａ〜３ｎをグループ化し、グループ１〜３ごとにおいて記憶回路１ａ〜１ｌ，２ａ〜２ｍ，３ａ〜３ｎのリセットタイミングが異なるように設計するようにした。これにより、リセットの際の大電流を抑制してＡＣノイズを抑制し、半導体装置が破壊されるのを防止することができる。
【００２１】
次に、本発明の実施の形態を図面を参照して詳細に説明する。
図２は、半導体装置の設計を行うコンピュータのハードウェア構成例を示す図である。コンピュータ１０は、ＣＰＵ（Central Processing Unit）１０ａによって装置全体が制御されている。ＣＰＵ１０ａには、バス１０ｇを介してＲＡＭ１０ｂ、ハードディスクドライブ（ＨＤＤ:Hard Disk Drive）１０ｃ、グラフィック処理装置１０ｄ、入力インターフェース１０ｅ、および通信インターフェース１０ｆが接続されている。
【００２２】
ＲＡＭ１０ｂには、ＣＰＵ１０ａに実行させるＯＳ（Operating System）のプログラムや半導体装置を設計するためのアプリケーションプログラムの少なくとも一部が一時的に格納される。また、ＲＡＭ１０ｂには、ＣＰＵ１０ａによる処理に必要な各種データが保存される。ＨＤＤ１０ｃには、ＯＳやアプリケーションプログラムが格納される。
【００２３】
グラフィック処理装置１０ｄには、モニタ１０ｈが接続されている。グラフィック処理装置１０ｄは、ＣＰＵ１０ａからの命令に従って、画像をモニタ１０ｈの表示画面に表示させる。入力インターフェース１０ｅには、キーボード１０ｉと、マウス１０ｊとが接続されている。入力インターフェース１０ｅは、キーボード１０ｉやマウス１０ｊから送られてくる信号を、バス１０ｇを介してＣＰＵ１０ａに送信する。
【００２４】
通信インターフェース１０ｆは、図示しない他のコンピュータに接続されている。通信インターフェース１０ｆは、ＬＡＮなどのネットワーク１０ｋを介して、他のコンピュータとの間のデータの送受信を行う。
【００２５】
以上のようなハードウェア構成のコンピュータ１０によって、半導体装置の設計を行うことができる。
次に、コンピュータ１０を用いた半導体装置の設計方法の概略についてフローチャートを用いて説明する。図３は、半導体装置の設計方法の概略を示したフローチャートである。
【００２６】
ステップＳ１において、コンピュータ１０は、入力された配置情報に基づいて、半導体チップ上にＳＲＡＭやＲＡＭ、ＰＬＬ等のマクロを配置する。
ステップＳ２において、コンピュータ１０は、入力された配線情報に基づいて、半導体チップ上に電源線を配線する。
【００２７】
ステップＳ３において、コンピュータ１０は、入力された配置情報に基づいて、半導体チップ上にセルを配置する。セルは、例えば、ロジック回路であり、ＡＮＤ回路、ＯＲ回路、または、これらから構成されるフリップフロップ（記憶回路）などである。
【００２８】
ステップＳ４において、コンピュータ１０は、入力された配線情報に基づいて、クロック線を配線する。クロック線は、例えば、前述したセルが同期して動作するためのクロックをセルに供給する。
【００２９】
ステップＳ５において、コンピュータ１０は、半導体装置のリセット時に、複数のフリップフロップにおいて流れてもよい最大の電流値を算出する。すなわち、コンピュータ１０は、リセット時にフリップフロップに流れる電流により発生するＡＣノイズによって、半導体チップが破壊されないための最大の電流値を算出する。
【００３０】
具体的には、コンピュータ１０は、レイアウトデータＤＢ（ＤＢ：データベース）内にある電源のレイアウトデータから、半導体チップが破壊されないための最大の電流値を算出する。電源配線は、半導体チップ上に網目上に張り巡らされ、インダクタ成分と抵抗成分を持つ。この電源配線のインダクタをＬ、抵抗をＲ、流れる電流をｉとすると、ＡＣノイズＶは、Ｖ＝Ｌ＊（ｄｉ／ｄｔ）＋Ｒｉで示される。コンピュータ１０は、このＡＣノイズＶが最大定格に収まるように、複数のフリップフロップに流れてもよい最大の電流値（以下、許容電流値）を算出する。
【００３１】
ステップＳ６において、コンピュータ１０は、最初に動作を始める前や試験を開始する前にリセットされるフリップフロップをグループ化していく。このとき、コンピュータ１０は、グループ内のフリップフロップのリセット時に流れる最大電流値の総和が、許容電流値以下となるように、フリップフロップをグループ化する。
【００３２】
ステップＳ７において、コンピュータ１０は、フリップフロップに対し、リセット線を配線する。このとき、コンピュータ１０は、グループ化されたフリップフロップの各グループが、異なるタイミングでリセットされるように、リセット線に遅延回路であるバッファを配置する。例えば、図１で示したように、各グループにつながっているリセット線の各グループ間において、バッファを挿入するようにする。これによって、各グループのリセットタイミングが異なる。
【００３３】
ステップＳ８において、コンピュータ１０は、入力された配線情報に基づいて、データ線を配線する。
ステップＳ９において、コンピュータ１０は、半導体チップが適正に動作するようにタイミング調整をする。例えば、配線間にバッファ等を挿入し、各回路の動作タイミングが合うようにする。
【００３４】
次に、コンピュータ１０を用いた半導体装置の設計方法の詳細についてフローチャートを用いて説明する。図４は、半導体装置の設計方法の詳細を示したフローチャートである。
【００３５】
ステップＳ１１において、コンピュータ１０は、Ｐ＆Ｒ（Place & Routing）、電源配線を行う。コンピュータ１０は、Ｐ＆Ｒ、電源配線によって配置したマクロ、セル、電源配線などのレイアウトデータをレイアウトデータＤＢ１１に記憶する。レイアウトデータＤＢ１１は、例えば、図２で示したＨＤＤ１０ｃに構築される。なお、ステップＳ１１の処理は、図３のステップＳ１〜Ｓ４に対応する。ステップＳ１２〜Ｓ２０は、ステップＳ５，Ｓ６に対応する。
【００３６】
ステップＳ１２において、コンピュータ１０は、図３のステップＳ５の説明と同様に、レイアウトデータＤＢ１１に記憶されている電源のレイアウトデータに基づいて許容電流値Ｉｌｍｔを算出する。
【００３７】
ステップＳ１３において、コンピュータ１０は、レイアウトデータＤＢ１１から全てのフリップフロップ（ＦＦ）名および配置座標を抽出する。なお、フリップフロップ名は、ステップＳ１１のＰ＆Ｒにおいて配置されたときに付与される。
【００３８】
ステップＳ１４において、コンピュータ１０は、グループＡ１を定義する。コンピュータ１０は、ステップＳ１３において抽出したフリップフロップ名および配置座標から、グループ化するフリップフロップを決めていく。例えば、コンピュータ１０は、半導体チップの最も左上（半導体チップの形状は四角形であるとする）にあるフリップフロップ名（これをＦＦ１とする）と、そのフリップフロップの右隣にあるフリップフロップ名（これをＦＦ２とする）を取得し、これらのフリップフロップによって構成されるグループＡ１を定義する。そして、コンピュータ１０は、以下で説明するＦＦライブラリ１２を参照して、ＦＦ１，２のリセット時に流れる最大電流値Ｉｆｆ１，Ｉｆｆ２を取得し、最大電流値Ｉｆｆ１，Ｉｆｆ２を加算して、グループＡ１のグループ電流値Ｉｇ１を算出する。すなわち、コンピュータ１０は、ＦＦ１，ＦＦ２によって構成されたグループＡ１の、リセット時に流れる最大電流値を算出する。
【００３９】
ＦＦライブラリ１２について説明する。図５は、ＦＦライブラリのデータ構成例を示した図である。図に示すようにＦＦライブラリ１２は、フリップフロップの名前が記憶されるＦＦ名の欄、リセット時にフリップフロップに流れる最大電流値の欄、およびリセット時にフリップフロップに流れる電流の電流変化時間の欄を有している。
【００４０】
ＦＦライブラリ１２には、設計時に使用されるフリップフロップのＦＦ名、最大電流値、および電流変化時間が予め登録されている。コンピュータ１０は、ＦＦライブラリ１２を参照することによって、例えば、名前がＦＦ１のフリップフロップの、リセット時に流れる最大電流値は、Ｉｆｆ１であることがわかる。電流変化時間は、ｔｆｆ１であることがわかる。
【００４１】
図４の説明に戻る。ステップＳ１５において、コンピュータ１０は、ステップＳ１２で算出した許容電流値Ｉｌｍｔと、ステップＳ１４で算出したグループＡ１のグループ電流値Ｉｇ１を比較する。コンピュータ１０は、グループ電流値Ｉｇ１が許容電流値Ｉｌｍｔより小さければ、ステップＳ１６へ進む。許容電流値Ｉｌｍｔがグループ電流値Ｉｇ１以上であれば、ステップＳ１８へ進む。
【００４２】
ステップＳ１６において、コンピュータ１０は、グループＡ１に新たなフリップフロップを追加し、新たなフリップフロップが追加されたグループＡ１のグループ電流値Ｉｇ１を算出する。例えば、コンピュータ１０は、ステップＳ１４で抽出したフリップフロップ名ＦＦ２の右隣にあるフリップフロップをグループＡ１に追加する。コンピュータ１０は、追加したフリップフロップのフリップフロップ名（これをＦＦ３とする）を取得し、ＦＦライブラリ１２を参照して、フリップフロップ名ＦＦ３の最大電流値Ｉｆｆ３を取得する。そして、コンピュータ１０は、フリップフロップ名ＦＦ１〜ＦＦ３の最大電流値Ｉｆｆ１〜Ｉｆｆ３を加算し、グループＡ１のグループ電流値Ｉｇ１を算出する。
【００４３】
ステップＳ１７において、コンピュータ１０は、ステップＳ１２で算出した許容電流値Ｉｌｍｔと、ステップＳ１６で算出したグループＡ１のグループ電流値Ｉｇ１を比較する。コンピュータ１０は、グループ電流値Ｉｇ１が許容電流値Ｉｌｍｔより小さければ、ステップＳ１６と同様にグループＡ１にフリップフロップを追加して、グループ電流値Ｉｇ１を算出する処理へと進む。グループ電流値Ｉｇ１が許容電流値Ｉｌｍｔ以上であれば、ステップＳ１８へ進む。以下、コンピュータ１０は、グループ電流値Ｉｇ１が許容電流値Ｉｌｍｔより小さければ、グループＡ１にフリップフロップを追加していく処理を繰り返し、グループ電流値Ｉｇ１が許容電流値Ｉｌｍｔ以上であれば、ステップＳ１８へ進む。そして、グループＡ１に全てのフリップフロップが追加された場合には、処理を終了する。
【００４４】
ステップＳ１８において、コンピュータ１０は、グループＡ１に追加したことによって、グループ電流値Ｉｇ１が許容電流値Ｉｌｍｔを超えたフリップフロップを削除する。これによって、グループ電流値Ｉｇ１が許容電流値Ｉｌｍｔを超えないグループＡ１が決定される。なお、ステップＳ１５の分岐からステップＳ１８の処理が行われる場合、削除されるフリップフロップ名はＦＦ２であり、グループＡ１は、フリップフロップ名ＦＦ１の１つのフリップフロップのみによって構成されることになる。
【００４５】
ステップＳ１９において、コンピュータ１０は、グループＡ１から削除したフリップフロップに基づいて、グループＡ２を定義する。すなわち、コンピュータ１０は、フリップフロップ名ＦＦ２のフリップフロップは、グループＡ２に属すると定義する。コンピュータ１０は、グループＡ２のグループ電流値Ｉｇ２を算出する。
【００４６】
そして、コンピュータ１０は、ステップＳ１２で算出した許容電流値Ｉｌｍｔと、ステップＳ１９で算出したグループＡ２のグループ電流値Ｉｇ２を比較する。コンピュータ１０は、グループ電流値Ｉｇ２が許容電流値Ｉｌｍｔより小さければ、ステップＳ１６，Ｓ１７で説明したのと同様に、グループＡ２においてフリップフロップを追加する処理を繰り返し行う。グループ電流値Ｉｇ２が許容電流値Ｉｌｍｔ以上であれば、ステップＳ１８，Ｓ１９で説明したのと同様に、グループＡ２からフリップフロップを削除した処理を行い、新たなグループＡ３を定義する。
【００４７】
ステップＳ２０において、コンピュータ１０は、上記の処理を繰り返し、全てのフリップフロップのグループ化が終わると、処理を終了する。
なお、コンピュータ１０は、図４のグループ化の処理が終了すると、図３で説明したように各グループでリセットタイミングが異なるように、リセット線にバッファを挿入する処理を行う。
【００４８】
次に、リセットタイミングについて説明する。図６は、半導体装置のリセットタイミングの例を示した図である。図には、フリップフロップをグループ化したグループＢ１およびグループＢ２のリセット時における電流値が示してある。グループＢ１，Ｂ２のリセット線の間には、バッファが挿入され、リセットされるタイミングがずれるようになっている。図のｔ１は、グループＢ１内にあるフリップフロップの最も大きい電流変化時間であり、ｔ２は、グループＢ２内にあるフリップフロップの最も大きい電流変化時間であるとする。
【００４９】
グループＢ２をリセットするタイミングは、少なくとも、グループＢ１の最大の電流変化時間ｔ１後となるようにリセットタイミングを決めなければならない。グループＢ１，Ｂ２の電流変化時間ｔ１，ｔ２が重なると、リセット時、グループＢ１，Ｂ２に流れる電流を加算した電流が半導体装置を流れるからである。従って、図６に示すように、各グループＢ１，Ｂ２の電流変化時間ｔ１，ｔ２に基づいて、リセット時に流れるグループＢ１，Ｂ２の電流が重ならないようバッファの遅延時間を決める必要がある。
【００５０】
なお、電流変化時間は、図５で説明したようにＦＦライブラリ１２に格納されている。コンピュータ１０は、フリップフロップ名を基にＦＦライブラリ１２を参照して、各グループ内で最も大きい電流変化時間を取得する。そして、コンピュータ１０は、各グループにおいて取得した電流変化時間が重ならないようにバッファの遅延時間を決定する。
【００５１】
このように、フリップフロップをグループ化し、グループごとにおいてフリップフロップのリセットタイミングが異なるように設計するようにした。これにより、リセットの際の大電流を低減してＡＣノイズを抑制し、半導体装置が破壊されるのを防止することができる。
【００５２】
なお、上記では、グループ化される回路をフリップフロップとしたが、他のデータを記憶する素子、回路であってもよい。すなわち、リセットの必要な素子、回路をグループ化するようにしてもよい。
【００５３】
（付記１）  リセットによる電源変動を抑制するように半導体装置を設計する半導体装置の設計方法において、
コンピュータによって、配置された記憶回路をグループ化し、
前記コンピュータによって、前記グループ化された前記記憶回路のグループごとにおいて前記記憶回路のリセットタイミングが異なるようにリセット線に遅延回路を挿入する、
ことを特徴とする半導体装置の設計方法。
【００５４】
（付記２）  前記グループ化される前記記憶回路の個数は、前記グループ化された前記記憶回路を同時リセットした場合に流れるグループリセット電流によって発生するノイズが、最大定格に収まるように決定することを特徴とする付記１記載の半導体装置の設計方法。
【００５５】
（付記３）  前記リセットタイミングは、前記グループのそれぞれが、リセット時の電流変化時間分ずれてリセットされるように決定することを特徴とする付記１記載の半導体装置の設計方法。
【００５６】
（付記４）  前記記憶回路ごとにリセット時に流れる最大電流値が定義されており、前記最大電流値に基づいて、前記グループリセット電流を算出することを特徴とする付記２記載の半導体装置の設計方法。
【００５７】
（付記５）  前記グループリセット電流は、前記グループ化された前記記憶回路のそれぞれの前記最大電流値を加算して算出することを特徴とする付記４記載の半導体装置の設計方法。
【００５８】
（付記６）  前記ノイズが前記最大定格に収まるための前記グループに流れる許容電流値を算出し、前記許容電流値と前記グループリセット電流とを比較することを特徴とする付記２記載の半導体装置の設計方法。
【００５９】
（付記７）  前記グループリセット電流が前記許容電流値より小さければ、前記グループに前記記憶回路を追加し、再度比較することを特徴とする付記６記載の半導体装置の設計方法。
【００６０】
（付記８）  前記グループリセット電流が前記許容電流値以上であれば、前記グループに最後に追加した前記記憶回路を前記グループに追加しないことを特徴とする付記６記載の半導体装置の設計方法。
【００６１】
（付記９）  前記グループリセット電流が前記許容電流値より小さければ、前記グループに前記記憶回路を追加して再度比較し、前記グループリセット電流が前記許容電流値以上であれば、前記グループに最後に追加した前記記憶回路を前記グループに追加せず新たな前記グループに追加する処理を、全ての前記記憶回路において繰り返すことを特徴とする付記６記載の半導体装置の設計方法。
【００６２】
（付記１０）  前記許容電流値は、電源網のレイアウトデータから算出することを特徴とする付記６記載の半導体装置の設計方法。
（付記１１）  前記グループの前記記憶回路の最少数は１つであることを特徴とする付記１記載の半導体装置の設計方法。
【００６３】
（付記１２）  前記記憶回路の名称および配置座標が記憶されたレイアウトデータから、前記名称および前記配置座標を抽出し、前記記憶回路をグループ化することを特徴とする付記１記載の半導体装置の設計方法。
【００６４】
（付記１３）  前記記憶回路ごとにリセット時の前記電流変化時間が定義されており、前記グループの前記電流変化時間は、前記記憶回路の最大の前記電流変化時間であることを特徴とする付記３記載の半導体装置の設計方法。
【００６５】
（付記１４）  前記グループごとの前記電流変化時間が重ならないように前記遅延回路の遅延時間を決定することを特徴とする付記３記載の半導体装置の設計方法。
（付記１５）  前記記憶回路は、フリップフロップであることを特徴とする付記１記載の半導体装置の設計方法。
【００６６】
（付記１６）  リセットによる電源変動を抑制するように半導体装置を設計する半導体装置の設計装置において、
配置された記憶回路をグループ化するグループ化手段と、
前記グループ化された前記記憶回路のグループごとにおいて前記記憶回路のリセットタイミングが異なるようにリセット線に遅延回路を挿入する遅延回路挿入手段と、
を有することを特徴とする半導体装置の設計装置。
【００６７】
（付記１７）  リセットによる電源変動を抑制する半導体装置において、
グループ化された記憶回路と、
前記グループ化された前記記憶回路のグループごとにおいて前記記憶回路のリセットタイミングが異なるようにリセット線に挿入された遅延回路と、
を有し、
前記グループ化された前記記憶回路の個数が、前記グループ化された前記記憶回路を同時リセットした場合に流れるグループリセット電流によって発生するノイズが、最大定格に収まるように決定された
ことを特徴とする半導体装置。
【図面の簡単な説明】
【００６８】
【図１】半導体装置の設計方法の概要を説明するための半導体装置を示した図である。
【図２】半導体装置の設計を行うコンピュータのハードウェア構成例を示す図である。
【図３】半導体装置の設計方法の概略を示したフローチャートである。
【図４】半導体装置の設計方法の詳細を示したフローチャートである。
【図５】ＦＦライブラリのデータ構成例を示した図である。
【図６】半導体装置のリセットタイミングの例を示した図である。
【図７】従来の半導体装置の設計方法を示したフローチャートである。
【符号の説明】
【００６９】
１〜３  グループ
１ａ〜１ｌ，２ａ〜２ｍ，３ａ〜３ｎ  記憶回路
４  リセット線
５ａ，５ｂ  遅延回路
【図１】
2006278370.tif 000003
【図２】
2006278370.tif 000004
【図３】
2006278370.tif 000005
【図４】
2006278370.tif 000006
【図５】
2006278370.tif 000007
【図６】
2006278370.tif 000008
【図７】
2006278370.tif 000009