JP4845400B2 - 半導体装置の設計方法および半導体装置 - Google Patents

半導体装置の設計方法および半導体装置 Download PDF

Info

Publication number
JP4845400B2
JP4845400B2 JP2005090529A JP2005090529A JP4845400B2 JP 4845400 B2 JP4845400 B2 JP 4845400B2 JP 2005090529 A JP2005090529 A JP 2005090529A JP 2005090529 A JP2005090529 A JP 2005090529A JP 4845400 B2 JP4845400 B2 JP 4845400B2
Authority
JP
Japan
Prior art keywords
group
reset
semiconductor device
current value
computer
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
JP2005090529A
Other languages
English (en)
Other versions
JP2006278370A (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.)
Fujitsu Semiconductor Ltd
Original Assignee
Fujitsu Semiconductor 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 Semiconductor Ltd filed Critical Fujitsu Semiconductor Ltd
Priority to JP2005090529A priority Critical patent/JP4845400B2/ja
Priority to US11/175,200 priority patent/US7519926B2/en
Publication of JP2006278370A publication Critical patent/JP2006278370A/ja
Application granted granted Critical
Publication of JP4845400B2 publication Critical patent/JP4845400B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/32Circuit design at the digital level
    • G06F30/327Logic synthesis; Behaviour synthesis, e.g. mapping logic, HDL to netlist, high-level language to RTL or netlist
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2119/00Details relating to the type or aim of the analysis or the optimisation
    • G06F2119/06Power analysis or power optimisation

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Evolutionary Computation (AREA)
  • Geometry (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Design And Manufacture Of Integrated Circuits (AREA)

Description

本発明は半導体装置の設計方法に関し、特にリセットによる電源変動を抑制するように半導体装置を設計するコンピュータを用いた半導体装置の設計方法および半導体装置に関する。
フリップフロップなどの記憶回路は、データを保持する機能を有する。そのため、記憶回路を搭載したLSI(Large Scale Integration)などの半導体装置は、最初に動作を始める前や試験を開始する前に、記憶回路を初期状態にする必要がある。
半導体装置には、半導体チップ上の記憶回路をリセットするための端子と、その端子から各記憶回路のリセット端子へつながるリセット線とが設けてある。端子からリセット信号を送ることにより、記憶回路を初期化することができる。このような、記憶回路にリセットをかけることができる半導体装置の設計は、コンピュータを用いて以下のようにして行われていた。
図7は、従来の半導体装置の設計方法を示したフローチャートである。
ステップS101において、コンピュータは、入力された配置情報に基づいて、半導体チップ上にSRAM(Static Random Access Memory)やRAM(Random Access Memory)、PLL(Phase Locked Loop)等のマクロを配置する。
ステップS102において、コンピュータは、入力された配線情報に基づいて、半導体チップ上に電源線を配線する。
ステップS103において、コンピュータは、入力された配置情報に基づいて、半導体チップ上にセルを配置する。セルは、例えば、ロジック回路であり、AND回路、OR回路、または、これらから構成されるフリップフロップ(記憶回路)などである。
ステップS104において、コンピュータは、入力された配線情報に基づいて、クロック線を配線する。クロック線は、例えば、前述したセルが同期して動作するためのクロックをセルに供給する。
ステップS105において、コンピュータは、リセットされる全ての記憶回路に対し、リセット線を配線する。
ステップS106において、コンピュータは、入力された配線情報に基づいて、データ線を配線する。
ステップS107において、コンピュータは、半導体装置が適正に動作するようにタイミング調整をする。例えば、配線間にバッファ等を挿入し、各回路の動作タイミングが合うようにする。
なお、リセット時のピーク電流を抑えることで、電源、グランドにのるノイズを低減させ、ラッチアップの発生を抑えた半導体集積回路がある(例えば、特許文献1参照)。
特開平8−8706号公報
しかし、従来では、リセットされる全ての記憶回路に対し、同時にリセットがかかるように設計されていたため、リセットがかかると大電流が流れて電源に大きなAC(Alternating Current)ノイズが発生し、半導体装置を破壊する恐れがあるという問題点があった。
本発明はこのような点に鑑みてなされたものであり、記憶回路にリセットをかけても、半導体装置が破壊しないように半導体装置を設計する半導体装置の設計方法および半導体装置を提供することを目的とする。
本発明では上記問題を解決するために、図1に示すようなリセットによる電源変動を抑制するように半導体装置を設計する半導体装置の設計方法において、コンピュータによって、配置された記憶回路1a〜1l,2a〜2m,3a〜3nをグループ化し、コンピュータによって、グループ化された記憶回路1a〜1l,2a〜2m,3a〜3nのグループ1〜3ごとにおいて記憶回路1a〜1l,2a〜2m,3a〜3nのリセットタイミングが異なるようにリセット線4に遅延回路5a,5bを挿入する、ことを特徴とする半導体装置の設計方法が提供される。
このような半導体装置の設計方法によれば、コンピュータは、記憶回路1a〜1l,2a〜2m,3a〜3nをグループ1〜3にグループ化し、グループ1〜3ごとにおいて記憶回路1a〜1l,2a〜2m,3a〜3nのリセットタイミングが異なるように、リセット線4に遅延回路5a,5bを挿入する。これにより、リセットの際の大電流を抑制し、ACノイズを抑制する。
また、本発明では、上記問題を解決するために、リセットによる電源変動を抑制する半導体装置において、グループ化された記憶回路と、グループ化された記憶回路のグループごとにおいて記憶回路のリセットタイミングが異なるようにリセット線に挿入された遅延回路と、を有し、グループ化された記憶回路の個数が、グループ化された記憶回路を同時リセットした場合に流れるグループリセット電流によって発生するノイズが、最大定格に収まるように決定されたことを特徴とする半導体装置が提供される。
このような半導体装置によれば、リセットの際、記憶回路は、グループごとに異なったタイミングでリセットされる。これにより、リセットの際の大電流を抑制し、ACノイズを抑制する。
本発明の半導体装置の設計方法では、記憶回路をグループ化し、グループごとにおいて記憶回路のリセットタイミングが異なるように、リセット線に遅延回路を挿入するようにした。これにより、リセットの際の大電流を抑制してACノイズを抑制し、半導体装置が破壊されるのを防止することができる。
また、本発明の半導体装置では、リセットの際、記憶回路は、グループごとに異なったタイミングでリセットされる。これにより、リセットの際の大電流を抑制してACノイズを抑制し、半導体装置が破壊されるのを防止することができる。
以下、本発明の原理を図面を参照して詳細に説明する。
図1は、半導体装置の設計方法の概要を説明するための半導体装置を示した図である。図に示すように、オペレータがコンピュータを用いて、記憶回路1a〜1l,2a〜2m,3a〜3nを半導体チップ上に配置したとする。なお、図には、リセット信号が伝播するリセット線4およびリセット線4に挿入された、例えば、バッファである遅延回路5a,5bが示してある。
コンピュータは、配置された記憶回路1a〜1l,2a〜2m,3a〜3nをグループ1〜3にグループ化する。そして、コンピュータは、グループ1〜3のそれぞれにおいて、記憶回路1a〜1l,2a〜2m,3a〜3nのリセットタイミングが異なるように遅延回路5a,5bをリセット線4に挿入する。例えば、コンピュータは、グループ1とグループ3の間に遅延回路5aを挿入する。グループ3とグループ2の間に遅延回路5bを挿入する。これによって、各グループ1〜3におけるリセットタイミングは異なる。
このように、記憶回路1a〜1l,2a〜2m,3a〜3nをグループ化し、グループ1〜3ごとにおいて記憶回路1a〜1l,2a〜2m,3a〜3nのリセットタイミングが異なるように設計するようにした。これにより、リセットの際の大電流を抑制してACノイズを抑制し、半導体装置が破壊されるのを防止することができる。
次に、本発明の実施の形態を図面を参照して詳細に説明する。
図2は、半導体装置の設計を行うコンピュータのハードウェア構成例を示す図である。コンピュータ10は、CPU(Central Processing Unit)10aによって装置全体が制御されている。CPU10aには、バス10gを介してRAM10b、ハードディスクドライブ(HDD:Hard Disk Drive)10c、グラフィック処理装置10d、入力インターフェース10e、および通信インターフェース10fが接続されている。
RAM10bには、CPU10aに実行させるOS(Operating System)のプログラムや半導体装置を設計するためのアプリケーションプログラムの少なくとも一部が一時的に格納される。また、RAM10bには、CPU10aによる処理に必要な各種データが保存される。HDD10cには、OSやアプリケーションプログラムが格納される。
グラフィック処理装置10dには、モニタ10hが接続されている。グラフィック処理装置10dは、CPU10aからの命令に従って、画像をモニタ10hの表示画面に表示させる。入力インターフェース10eには、キーボード10iと、マウス10jとが接続されている。入力インターフェース10eは、キーボード10iやマウス10jから送られてくる信号を、バス10gを介してCPU10aに送信する。
通信インターフェース10fは、図示しない他のコンピュータに接続されている。通信インターフェース10fは、LANなどのネットワーク10kを介して、他のコンピュータとの間のデータの送受信を行う。
以上のようなハードウェア構成のコンピュータ10によって、半導体装置の設計を行うことができる。
次に、コンピュータ10を用いた半導体装置の設計方法の概略についてフローチャートを用いて説明する。図3は、半導体装置の設計方法の概略を示したフローチャートである。
ステップS1において、コンピュータ10は、入力された配置情報に基づいて、半導体チップ上にSRAMやRAM、PLL等のマクロを配置する。
ステップS2において、コンピュータ10は、入力された配線情報に基づいて、半導体チップ上に電源線を配線する。
ステップS3において、コンピュータ10は、入力された配置情報に基づいて、半導体チップ上にセルを配置する。セルは、例えば、ロジック回路であり、AND回路、OR回路、または、これらから構成されるフリップフロップ(記憶回路)などである。
ステップS4において、コンピュータ10は、入力された配線情報に基づいて、クロック線を配線する。クロック線は、例えば、前述したセルが同期して動作するためのクロックをセルに供給する。
ステップS5において、コンピュータ10は、半導体装置のリセット時に、複数のフリップフロップにおいて流れてもよい最大の電流値を算出する。すなわち、コンピュータ10は、リセット時にフリップフロップに流れる電流により発生するACノイズによって、半導体チップが破壊されないための最大の電流値を算出する。
具体的には、コンピュータ10は、レイアウトデータDB(DB:データベース)内にある電源のレイアウトデータから、半導体チップが破壊されないための最大の電流値を算出する。電源配線は、半導体チップ上に網目上に張り巡らされ、インダクタ成分と抵抗成分を持つ。この電源配線のインダクタをL、抵抗をR、流れる電流をiとすると、ACノイズVは、V=L*(di/dt)+Riで示される。コンピュータ10は、このACノイズVが最大定格に収まるように、複数のフリップフロップに流れてもよい最大の電流値(以下、許容電流値)を算出する。
ステップS6において、コンピュータ10は、最初に動作を始める前や試験を開始する前にリセットされるフリップフロップをグループ化していく。このとき、コンピュータ10は、グループ内のフリップフロップのリセット時に流れる最大電流値の総和が、許容電流値以下となるように、フリップフロップをグループ化する。
ステップS7において、コンピュータ10は、フリップフロップに対し、リセット線を配線する。このとき、コンピュータ10は、グループ化されたフリップフロップの各グループが、異なるタイミングでリセットされるように、リセット線に遅延回路であるバッファを配置する。例えば、図1で示したように、各グループにつながっているリセット線の各グループ間において、バッファを挿入するようにする。これによって、各グループのリセットタイミングが異なる。
ステップS8において、コンピュータ10は、入力された配線情報に基づいて、データ線を配線する。
ステップS9において、コンピュータ10は、半導体チップが適正に動作するようにタイミング調整をする。例えば、配線間にバッファ等を挿入し、各回路の動作タイミングが合うようにする。
次に、コンピュータ10を用いた半導体装置の設計方法の詳細についてフローチャートを用いて説明する。図4は、半導体装置の設計方法の詳細を示したフローチャートである。
ステップS11において、コンピュータ10は、P&R(Place & Routing)、電源配線を行う。コンピュータ10は、P&R、電源配線によって配置したマクロ、セル、電源配線などのレイアウトデータをレイアウトデータDB11に記憶する。レイアウトデータDB11は、例えば、図2で示したHDD10cに構築される。なお、ステップS11の処理は、図3のステップS1〜S4に対応する。ステップS12〜S20は、ステップS5,S6に対応する。
ステップS12において、コンピュータ10は、図3のステップS5の説明と同様に、レイアウトデータDB11に記憶されている電源のレイアウトデータに基づいて許容電流値Ilmtを算出する。
ステップS13において、コンピュータ10は、レイアウトデータDB11から全てのフリップフロップ(FF)名および配置座標を抽出する。なお、フリップフロップ名は、ステップS11のP&Rにおいて配置されたときに付与される。
ステップS14において、コンピュータ10は、グループA1を定義する。コンピュータ10は、ステップS13において抽出したフリップフロップ名および配置座標から、グループ化するフリップフロップを決めていく。例えば、コンピュータ10は、半導体チップの最も左上(半導体チップの形状は四角形であるとする)にあるフリップフロップ名(これをFF1とする)と、そのフリップフロップの右隣にあるフリップフロップ名(これをFF2とする)を取得し、これらのフリップフロップによって構成されるグループA1を定義する。そして、コンピュータ10は、以下で説明するFFライブラリ12を参照して、FF1,2のリセット時に流れる最大電流値Iff1,Iff2を取得し、最大電流値Iff1,Iff2を加算して、グループA1のグループ電流値Ig1を算出する。すなわち、コンピュータ10は、FF1,FF2によって構成されたグループA1の、リセット時に流れる最大電流値を算出する。
FFライブラリ12について説明する。図5は、FFライブラリのデータ構成例を示した図である。図に示すようにFFライブラリ12は、フリップフロップの名前が記憶されるFF名の欄、リセット時にフリップフロップに流れる最大電流値の欄、およびリセット時にフリップフロップに流れる電流の電流変化時間の欄を有している。
FFライブラリ12には、設計時に使用されるフリップフロップのFF名、最大電流値、および電流変化時間が予め登録されている。コンピュータ10は、FFライブラリ12を参照することによって、例えば、名前がFF1のフリップフロップの、リセット時に流れる最大電流値は、Iff1であることがわかる。電流変化時間は、tff1であることがわかる。
図4の説明に戻る。ステップS15において、コンピュータ10は、ステップS12で算出した許容電流値Ilmtと、ステップS14で算出したグループA1のグループ電流値Ig1を比較する。コンピュータ10は、グループ電流値Ig1が許容電流値Ilmtより小さければ、ステップS16へ進む。許容電流値Ilmtがグループ電流値Ig1以上であれば、ステップS18へ進む。
ステップS16において、コンピュータ10は、グループA1に新たなフリップフロップを追加し、新たなフリップフロップが追加されたグループA1のグループ電流値Ig1を算出する。例えば、コンピュータ10は、ステップS14で抽出したフリップフロップ名FF2の右隣にあるフリップフロップをグループA1に追加する。コンピュータ10は、追加したフリップフロップのフリップフロップ名(これをFF3とする)を取得し、FFライブラリ12を参照して、フリップフロップ名FF3の最大電流値Iff3を取得する。そして、コンピュータ10は、フリップフロップ名FF1〜FF3の最大電流値Iff1〜Iff3を加算し、グループA1のグループ電流値Ig1を算出する。
ステップS17において、コンピュータ10は、ステップS12で算出した許容電流値Ilmtと、ステップS16で算出したグループA1のグループ電流値Ig1を比較する。コンピュータ10は、グループ電流値Ig1が許容電流値Ilmtより小さければ、ステップS16と同様にグループA1にフリップフロップを追加して、グループ電流値Ig1を算出する処理へと進む。グループ電流値Ig1が許容電流値Ilmt以上であれば、ステップS18へ進む。以下、コンピュータ10は、グループ電流値Ig1が許容電流値Ilmtより小さければ、グループA1にフリップフロップを追加していく処理を繰り返し、グループ電流値Ig1が許容電流値Ilmt以上であれば、ステップS18へ進む。そして、グループA1に全てのフリップフロップが追加された場合には、処理を終了する。
ステップS18において、コンピュータ10は、グループA1に追加したことによって、グループ電流値Ig1が許容電流値Ilmtを超えたフリップフロップを削除する。これによって、グループ電流値Ig1が許容電流値Ilmtを超えないグループA1が決定される。なお、ステップS15の分岐からステップS18の処理が行われる場合、削除されるフリップフロップ名はFF2であり、グループA1は、フリップフロップ名FF1の1つのフリップフロップのみによって構成されることになる。
ステップS19において、コンピュータ10は、グループA1から削除したフリップフロップに基づいて、グループA2を定義する。すなわち、コンピュータ10は、フリップフロップ名FF2のフリップフロップは、グループA2に属すると定義する。コンピュータ10は、グループA2のグループ電流値Ig2を算出する。
そして、コンピュータ10は、ステップS12で算出した許容電流値Ilmtと、ステップS19で算出したグループA2のグループ電流値Ig2を比較する。コンピュータ10は、グループ電流値Ig2が許容電流値Ilmtより小さければ、ステップS16,S17で説明したのと同様に、グループA2においてフリップフロップを追加する処理を繰り返し行う。グループ電流値Ig2が許容電流値Ilmt以上であれば、ステップS18,S19で説明したのと同様に、グループA2からフリップフロップを削除した処理を行い、新たなグループA3を定義する。
ステップS20において、コンピュータ10は、上記の処理を繰り返し、全てのフリップフロップのグループ化が終わると、処理を終了する。
なお、コンピュータ10は、図4のグループ化の処理が終了すると、図3で説明したように各グループでリセットタイミングが異なるように、リセット線にバッファを挿入する処理を行う。
次に、リセットタイミングについて説明する。図6は、半導体装置のリセットタイミングの例を示した図である。図には、フリップフロップをグループ化したグループB1およびグループB2のリセット時における電流値が示してある。グループB1,B2のリセット線の間には、バッファが挿入され、リセットされるタイミングがずれるようになっている。図のt1は、グループB1内にあるフリップフロップの最も大きい電流変化時間であり、t2は、グループB2内にあるフリップフロップの最も大きい電流変化時間であるとする。
グループB2をリセットするタイミングは、少なくとも、グループB1の最大の電流変化時間t1後となるようにリセットタイミングを決めなければならない。グループB1,B2の電流変化時間t1,t2が重なると、リセット時、グループB1,B2に流れる電流を加算した電流が半導体装置を流れるからである。従って、図6に示すように、各グループB1,B2の電流変化時間t1,t2に基づいて、リセット時に流れるグループB1,B2の電流が重ならないようバッファの遅延時間を決める必要がある。
なお、電流変化時間は、図5で説明したようにFFライブラリ12に格納されている。コンピュータ10は、フリップフロップ名を基にFFライブラリ12を参照して、各グループ内で最も大きい電流変化時間を取得する。そして、コンピュータ10は、各グループにおいて取得した電流変化時間が重ならないようにバッファの遅延時間を決定する。
このように、フリップフロップをグループ化し、グループごとにおいてフリップフロップのリセットタイミングが異なるように設計するようにした。これにより、リセットの際の大電流を低減してACノイズを抑制し、半導体装置が破壊されるのを防止することができる。
なお、上記では、グループ化される回路をフリップフロップとしたが、他のデータを記憶する素子、回路であってもよい。すなわち、リセットの必要な素子、回路をグループ化するようにしてもよい。
(付記1) リセットによる電源変動を抑制するように半導体装置を設計する半導体装置の設計方法において、
コンピュータによって、配置された記憶回路をグループ化し、
前記コンピュータによって、前記グループ化された前記記憶回路のグループごとにおいて前記記憶回路のリセットタイミングが異なるようにリセット線に遅延回路を挿入する、
ことを特徴とする半導体装置の設計方法。
(付記2) 前記グループ化される前記記憶回路の個数は、前記グループ化された前記記憶回路を同時リセットした場合に流れるグループリセット電流によって発生するノイズが、最大定格に収まるように決定することを特徴とする付記1記載の半導体装置の設計方法。
(付記3) 前記リセットタイミングは、前記グループのそれぞれが、リセット時の電流変化時間分ずれてリセットされるように決定することを特徴とする付記1記載の半導体装置の設計方法。
(付記4) 前記記憶回路ごとにリセット時に流れる最大電流値が定義されており、前記最大電流値に基づいて、前記グループリセット電流を算出することを特徴とする付記2記載の半導体装置の設計方法。
(付記5) 前記グループリセット電流は、前記グループ化された前記記憶回路のそれぞれの前記最大電流値を加算して算出することを特徴とする付記4記載の半導体装置の設計方法。
(付記6) 前記ノイズが前記最大定格に収まるための前記グループに流れる許容電流値を算出し、前記許容電流値と前記グループリセット電流とを比較することを特徴とする付記2記載の半導体装置の設計方法。
(付記7) 前記グループリセット電流が前記許容電流値より小さければ、前記グループに前記記憶回路を追加し、再度比較することを特徴とする付記6記載の半導体装置の設計方法。
(付記8) 前記グループリセット電流が前記許容電流値以上であれば、前記グループに最後に追加した前記記憶回路を前記グループに追加しないことを特徴とする付記6記載の半導体装置の設計方法。
(付記9) 前記グループリセット電流が前記許容電流値より小さければ、前記グループに前記記憶回路を追加して再度比較し、前記グループリセット電流が前記許容電流値以上であれば、前記グループに最後に追加した前記記憶回路を前記グループに追加せず新たな前記グループに追加する処理を、全ての前記記憶回路において繰り返すことを特徴とする付記6記載の半導体装置の設計方法。
(付記10) 前記許容電流値は、電源網のレイアウトデータから算出することを特徴とする付記6記載の半導体装置の設計方法。
(付記11) 前記グループの前記記憶回路の最少数は1つであることを特徴とする付記1記載の半導体装置の設計方法。
(付記12) 前記記憶回路の名称および配置座標が記憶されたレイアウトデータから、前記名称および前記配置座標を抽出し、前記記憶回路をグループ化することを特徴とする付記1記載の半導体装置の設計方法。
(付記13) 前記記憶回路ごとにリセット時の前記電流変化時間が定義されており、前記グループの前記電流変化時間は、前記記憶回路の最大の前記電流変化時間であることを特徴とする付記3記載の半導体装置の設計方法。
(付記14) 前記グループごとの前記電流変化時間が重ならないように前記遅延回路の遅延時間を決定することを特徴とする付記3記載の半導体装置の設計方法。
(付記15) 前記記憶回路は、フリップフロップであることを特徴とする付記1記載の半導体装置の設計方法。
(付記16) リセットによる電源変動を抑制するように半導体装置を設計する半導体装置の設計装置において、
配置された記憶回路をグループ化するグループ化手段と、
前記グループ化された前記記憶回路のグループごとにおいて前記記憶回路のリセットタイミングが異なるようにリセット線に遅延回路を挿入する遅延回路挿入手段と、
を有することを特徴とする半導体装置の設計装置。
(付記17) リセットによる電源変動を抑制する半導体装置において、
グループ化された記憶回路と、
前記グループ化された前記記憶回路のグループごとにおいて前記記憶回路のリセットタイミングが異なるようにリセット線に挿入された遅延回路と、
を有し、
前記グループ化された前記記憶回路の個数が、前記グループ化された前記記憶回路を同時リセットした場合に流れるグループリセット電流によって発生するノイズが、最大定格に収まるように決定された
ことを特徴とする半導体装置。
半導体装置の設計方法の概要を説明するための半導体装置を示した図である。 半導体装置の設計を行うコンピュータのハードウェア構成例を示す図である。 半導体装置の設計方法の概略を示したフローチャートである。 半導体装置の設計方法の詳細を示したフローチャートである。 FFライブラリのデータ構成例を示した図である。 半導体装置のリセットタイミングの例を示した図である。 従来の半導体装置の設計方法を示したフローチャートである。
符号の説明
1〜3 グループ
1a〜1l,2a〜2m,3a〜3n 記憶回路
4 リセット線
5a,5b 遅延回路

Claims (4)

  1. リセットによる電源変動を抑制するように半導体装置を設計する半導体装置の設計方法において、
    コンピュータによって、配置された記憶回路をグループ化し、
    前記コンピュータによって、前記グループ化された前記記憶回路のグループごとにおいて前記記憶回路のリセットタイミングが異なるようにリセット線に遅延回路を挿入
    前記グループ化される前記記憶回路の個数は、前記グループ化された前記記憶回路を同時リセットした場合に流れるグループリセット電流によって発生するノイズが、最大定格に収まるように決定し、
    前記ノイズが前記最大定格に収まるための前記グループに流れる許容電流値を算出し、前記許容電流値と前記グループリセット電流とを比較し、
    前記グループリセット電流が前記許容電流値より小さければ、前記グループに前記記憶回路を追加して再度比較し、前記グループリセット電流が前記許容電流値以上であれば、前記グループに最後に追加した前記記憶回路を前記グループに追加せず新たな前記グループに追加する処理を、全ての前記記憶回路において繰り返す、
    ことを特徴とする半導体装置の設計方法。
  2. 前記リセットタイミングは、前記グループのそれぞれが、リセット時の電流変化時間分ずれてリセットされるように決定することを特徴とする請求項1記載の半導体装置の設計方法。
  3. 前記記憶回路ごとにリセット時に流れる最大電流値が定義されており、前記最大電流値に基づいて、前記グループリセット電流を算出することを特徴とする請求項1記載の半導体装置の設計方法。
  4. 前記グループリセット電流は、前記グループ化された前記記憶回路のそれぞれの前記最大電流値を加算して算出することを特徴とする請求項3記載の半導体装置の設計方法。
JP2005090529A 2005-03-28 2005-03-28 半導体装置の設計方法および半導体装置 Expired - Fee Related JP4845400B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2005090529A JP4845400B2 (ja) 2005-03-28 2005-03-28 半導体装置の設計方法および半導体装置
US11/175,200 US7519926B2 (en) 2005-03-28 2005-07-07 Semiconductor device and method for designing the same

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005090529A JP4845400B2 (ja) 2005-03-28 2005-03-28 半導体装置の設計方法および半導体装置

Publications (2)

Publication Number Publication Date
JP2006278370A JP2006278370A (ja) 2006-10-12
JP4845400B2 true JP4845400B2 (ja) 2011-12-28

Family

ID=37109965

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005090529A Expired - Fee Related JP4845400B2 (ja) 2005-03-28 2005-03-28 半導体装置の設計方法および半導体装置

Country Status (2)

Country Link
US (1) US7519926B2 (ja)
JP (1) JP4845400B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014149738A (ja) * 2013-02-01 2014-08-21 Fujitsu Ltd 回路解析装置、回路解析方法およびプログラム

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07142963A (ja) * 1993-11-19 1995-06-02 Nec Eng Ltd 集積回路
JPH07168652A (ja) * 1993-12-14 1995-07-04 Shikoku Nippon Denki Software Kk 同期リセット回路
JP2682453B2 (ja) 1994-06-22 1997-11-26 日本電気株式会社 半導体集積回路
JP2002312071A (ja) * 2001-04-10 2002-10-25 Mitsubishi Electric Corp リセット回路およびリセット方法
JP4437741B2 (ja) * 2004-11-26 2010-03-24 富士通マイクロエレクトロニクス株式会社 半導体集積回路の設計装置、半導体集積回路および半導体集積回路の設計プログラム

Also Published As

Publication number Publication date
US7519926B2 (en) 2009-04-14
US20060236137A1 (en) 2006-10-19
JP2006278370A (ja) 2006-10-12

Similar Documents

Publication Publication Date Title
KR100249251B1 (ko) 논리회로 최적화 장치 및 그 방법
TWI647582B (zh) 增強去耦電容的實施方式的系統、方法及電腦產品
US20130346931A1 (en) Timing error removing method and design support apparatus
EP3239865A1 (en) Method for analyzing ir drop and electromigration of ic
US9275186B2 (en) Optimization for circuit migration
US8099701B2 (en) Efficient chip routing method and apparatus for integrated circuit blocks with multiple connections
JP2010049386A (ja) 遅延解析装置、遅延解析方法、及びプログラム
JP4845400B2 (ja) 半導体装置の設計方法および半導体装置
US20050289494A1 (en) I/o circuit power routing system and method
Friedrich et al. Design methodology for the IBM POWER7 microprocessor
JP4717944B2 (ja) 半導体集積回路の設計方法およびその設計装置
CN110658885B (zh) 时钟树合成方法
JP2003281212A (ja) 自動配置配線方法、装置及びプログラム
JP2001267429A (ja) レイアウト設計装置およびレイアウト設計方法
JP4855283B2 (ja) 半導体集積回路の設計装置
JP2002024310A (ja) マクロ作成方法、レイアウト方法、半導体装置及び記録媒体
JP2011077426A (ja) 半導体装置の製造方法及び半導体装置
JP2006319162A (ja) クロックツリー作成方法およびクロックツリー作成プログラム
JP2005129869A (ja) 半導体集積回路設計方法
JP2001308186A (ja) フリップフロップ追加修正が可能なレイアウト方法およびレイアウトプログラムを記録した記録媒体
JP2008171399A (ja) 半導体装置の設計方法、半導体装置設計システム及びコンピュータプログラム
JP2006215688A (ja) 配線修正方法および配線修正プログラム
JP2009004700A (ja) スペアセルの挿入/配置方法
JP2007273847A (ja) 半導体集積回路装置の設計方法及び設計装置
JP2005108065A (ja) 集積回路の配線処理装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080212

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A712

Effective date: 20080729

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20101008

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20101019

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20101215

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: 20111011

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20111011

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20141021

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees