JP5263393B2 - 設計支援方法、設計支援装置、および設計支援プログラム - Google Patents
設計支援方法、設計支援装置、および設計支援プログラム Download PDFInfo
- Publication number
- JP5263393B2 JP5263393B2 JP2011518109A JP2011518109A JP5263393B2 JP 5263393 B2 JP5263393 B2 JP 5263393B2 JP 2011518109 A JP2011518109 A JP 2011518109A JP 2011518109 A JP2011518109 A JP 2011518109A JP 5263393 B2 JP5263393 B2 JP 5263393B2
- Authority
- JP
- Japan
- Prior art keywords
- clock
- data
- data holding
- clock signal
- holding element
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/04—Generating or distributing clock signals or signals derived directly therefrom
- G06F1/10—Distribution of clock signals, e.g. skew
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03K—PULSE TECHNIQUE
- H03K5/00—Manipulating of pulses not covered by one of the other main groups of this subclass
- H03K5/13—Arrangements having a single output and transforming input signals into pulses delivered at desired time intervals
- H03K5/135—Arrangements having a single output and transforming input signals into pulses delivered at desired time intervals by the use of time reference signals, e.g. clock signals
Landscapes
- Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Nonlinear Science (AREA)
- Design And Manufacture Of Integrated Circuits (AREA)
Description
図1は、実施の形態1にかかる半導体集積回路の一例を示す説明図である。半導体集積回路100は、クロック入力端子から入力されるクロック信号を伝播するクロックパス101と、クロックパス101に接続されているFF1〜FF3と、ゲート段数1段であり、クロックパス101上のBUF1〜BUF5により構成されている。実施の形態1では、クロック入力端子をクロック供給源として説明するが、クロック信号を生成するクロック生成回路などがクロック供給源であってもよい。
つぎに、実施の形態2では、クロックバッファがゲート段数1段であるクロックパスに接続されているFFを、FFの入力元であるクロックバッファがクロック供給源からのクロック信号を正論理で出力するか否かにより第1のFFまたは第2のFFに置換する。これにより、クロックパス上のゲート段数を可能な限り削減し、低消費電力化を図ることができる。まず、図2−1および図2−2により第1のFFおよび第2のFFの一例を示す。
図4は、設計対象のレイアウトデータを示す説明図である。レイアウトデータ400は、クロック入力端子へ入力されるクロック信号を伝播するクロックパス401と、クロックパス401に接続されているFF1〜FF3と、組み合わせ回路と、クロックバッファ301であるBUF1〜BUF4を含む構成である。
図5は、実施の形態2にかかる設計支援装置のハードウェア構成例を示すブロック図である。図5において、設計支援装置は、CPU(Central Processing Unit)501と、ROM(Read‐Only Memory)502と、RAM(Random Access Memory)503と、磁気ディスクドライブ504と、磁気ディスク505と、光ディスクドライブ506と、光ディスク507と、ディスプレイ508と、I/F(Interface)509と、キーボード510と、マウス511と、スキャナ512と、プリンタ513と、を備えている。また、各構成部はバス500によってそれぞれ接続されている。
図6は、実施の形態2にかかる設計支援装置の機能的構成例を示すブロック図である。設計支援装置600は、生成部601と、検出部602と、選択部603と、特定部604と、判断部605と、置換部606と、出力部607と、を含む構成である。設計支援装置600の制御部となる機能(生成部601〜出力部607)は、具体的には、たとえば、図5に示したROM502、RAM503、磁気ディスク505、光ディスク507などの記憶装置に記憶されたプログラムをCPU501に実行させることにより、または、I/F509により、その機能を実現する。
図10は、実施の形態2にかかる設計支援装置600の設計支援処理手順を示すフローチャートである。まず、レイアウトデータを取得する(ステップS1001)。ここで取得されるレイアウトデータは、初期配置済のレイアウトデータである。つぎに、生成部601により、取得されたレイアウトデータにクロックツリーを構築する(ステップS1002)。上述したレイアウトデータ400が、クロックツリーが構築されたレイアウトデータの例である。
コンピュータが、
前記半導体集積回路のレイアウトデータ内から、前記クロック信号を伝播し、クロックバッファがゲート段数1段の反転論理であるクロックパスを検出する検出工程、
前記検出工程により検出されたクロックパスに接続されているデータ保持素子を順次選択する選択工程、
前記選択工程によりデータ保持素子が選択される都度、前記データ保持素子の入力元であるクロックバッファを特定する特定工程、
前記クロック供給源から前記特定工程により特定されたクロックバッファまでのゲート段数に基づいて、前記クロックバッファが前記クロック供給源からの前記クロック信号を正論理で出力するか、反転論理で出力するかを判断する判断工程、
前記判断工程により判断された判断結果に基づいて、前記データ保持素子を、前記クロック信号の立ち上がりエッジに同期してデータを取り込む第1のデータ保持素子、または前記クロック信号の立ち下がりエッジに同期してデータを取り込む第2のデータ保持素子に置換する置換工程、
前記置換工程により置換された置換結果を出力する出力工程、
を実行することを特徴とする設計支援方法。
前記ゲート段数が、偶数段の場合、前記特定工程により特定されたクロックバッファが前記クロック信号を正論理で出力すると判断し、奇数段の場合、反転論理で出力すると判断し、
前記置換工程は、
前記判断工程により正論理で出力すると判断された場合、前記データ保持素子を前記第1のデータ保持素子に置換し、反転論理で出力すると判断された場合、前記第2のデータ保持素子に置換することを特徴とする付記1に記載の設計支援方法。
ゲート段数1段の反転論理であるクロックバッファのみを用いて指定されたクロックパスにクロックツリーを構築することによりレイアウトデータを生成する生成工程、を実行し、
前記検出工程は、
前記生成工程により生成されたレイアウトデータ内から、クロック供給源からのクロック信号を伝播し、クロックバッファがゲート段数1段の反転論理であるクロックパスを検出することを特徴とする付記2に記載の設計支援方法。
ゲート段数1段の反転論理であるクロックバッファのみを用いて指定されたクロックパスのスキューを調整することによりレイアウトデータを生成し、
前記検出工程は、
前記生成工程により生成されたレイアウトデータ内から、クロック供給源からのクロック信号を伝播し、クロックバッファがゲート段数1段の反転論理であるクロックパスを検出することを特徴とする付記3に記載の設計支援方法。
クロックの起点として指定された箇所が前記クロック供給源からのクロック信号を正論理で出力する場合、前記クロックの起点から前記クロックバッファまでのゲート段数が、偶数段の場合、前記クロックバッファが前記クロック信号を正論理で出力すると判断し、奇数段の場合、反転論理で出力すると判断し、
前記置換工程は、
前記判断工程により正論理で出力すると判断された場合、前記データ保持素子を前記第1のデータ保持素子に置換し、反転論理で出力すると判断された場合、前記第2のデータ保持素子に置換することを特徴とする付記4に記載の設計支援方法。
クロックの起点として指定された箇所が前記クロック供給源からのクロック信号を反転論理で伝播している場合、前記クロックの起点から前記クロックバッファまでのゲート段数が、偶数段の場合、前記クロックバッファが前記クロック信号を反転論理で出力すると判断し、奇数段の場合、正論理で出力すると判断し、
前記置換工程は、
前記判断工程により正論理で出力すると判断された場合、前記データ保持素子を前記第1のデータ保持素子に置換し、反転論理で出力すると判断された場合、前記第2のデータ保持素子に置換することを特徴とする付記5に記載の設計支援方法。
前記検出手段により検出されたクロックパスに接続されているデータ保持素子を順次選択する選択手段と、
前記選択手段によりデータ保持素子が選択される都度、前記データ保持素子の入力元であるクロックバッファを特定する特定手段と、
前記クロック供給源から前記特定手段により特定されたクロックバッファまでのゲート段数に基づいて、前記クロックバッファが前記クロック供給源からの前記クロック信号を正論理で出力するか、反転論理で出力するかを判断する判断手段と、
前記判断手段により判断された判断結果に基づいて、前記データ保持素子を、前記クロック信号の立ち上がりエッジに同期してデータを取り込む第1のデータ保持素子、または前記クロック信号の立ち下がりエッジに同期してデータを取り込む第2のデータ保持素子に置換する置換手段と、
前記置換手段により置換された置換結果を出力する出力手段と、
を備えることを特徴とする設計支援装置。
コンピュータを、
レイアウトデータ内から、クロック供給源からのクロック信号を伝播し、クロックバッファがゲート段数1段の反転論理であるクロックパスを検出する検出手段、
前記検出手段により検出されたクロックパスに接続されているデータ保持素子を順次選択する選択手段、
前記選択手段によりデータ保持素子が選択される都度、前記データ保持素子の入力元であるクロックバッファを特定する特定手段、
前記クロック供給源から前記特定手段により特定されたクロックバッファまでのゲート段数に基づいて、前記クロックバッファが前記クロック供給源からの前記クロック信号を正論理で出力するか、反転論理で出力するかを判断する判断手段、
前記判断手段により判断された判断結果に基づいて、前記データ保持素子を、前記クロック信号の立ち上がりエッジに同期してデータを取り込む第1のデータ保持素子、または前記クロック信号の立ち下がりエッジに同期してデータを取り込む第2のデータ保持素子に置換する置換手段、
前記置換手段により置換された置換結果を出力する出力手段、
として機能させることを特徴とする設計支援プログラム。
前記クロックパスに接続されているデータ保持素子群と、
前記データ保持素子群の各データ保持素子へ前記クロック信号を出力するゲート段数1段の反転論理であるクロックバッファと、
を備えることを特徴とする半導体集積回路。
前記クロック供給源から当該データ保持素子の入力元であるクロックバッファまでのゲート段数が、偶数段の場合、前記クロック信号の立ち上がりエッジに同期してデータを取り込み、奇数段の場合、前記クロック信号の立ち下がりエッジに同期してデータを取り込むことを特徴とする付記9に記載の半導体集積回路。
202 第2のFF
301 クロックバッファ
400,700,800,900 レイアウトデータ
Claims (4)
- 複数のデータ保持素子と、クロック供給源からのクロック信号を前記複数のデータ保持素子へ伝播するクロックパスと、を備える半導体集積回路を設計する設計支援方法であって、
コンピュータが、
前記半導体集積回路のレイアウトデータ内から、前記クロック信号を伝播し、ゲート段数1段の反転論理であるクロックバッファのみを含むクロックパスを検出する検出工程、
前記検出工程により検出された前記ゲート段数1段の反転論理であるクロックバッファのみを含むクロックパスに接続されているデータ保持素子を前記レイアウトデータ内から順次選択する選択工程、
前記選択工程によりデータ保持素子が選択される都度、前記選択されたデータ保持素子の入力元であるクロックバッファを前記レイアウトデータ内から特定する特定工程、
前記クロック供給源から前記特定工程により特定されたクロックバッファまでのゲート段数に基づいて、前記特定されたクロックバッファが前記クロック供給源からの前記クロック信号を正論理で出力するか、反転論理で出力するかを判断する判断工程、
前記判断工程により判断された判断結果に基づいて、前記選択されたデータ保持素子を、前記特定されたクロックバッファが前記クロック信号を正論理で出力する場合には前記クロック信号の立ち上がりエッジに同期してデータを取り込む第1のデータ保持素子、前記特定されたクロックバッファが前記クロック信号を反転論理で出力する場合には前記クロック信号の立ち下がりエッジに同期してデータを取り込む第2のデータ保持素子に置換する置換工程、
前記置換工程により置換された置換結果を出力する出力工程、
を実行することを特徴とする設計支援方法。 - 前記ゲート段数1段の反転論理であるクロックバッファのみを用いて指定されたクロックパスのスキューを調整することによりレイアウトデータを生成する生成工程、を実行し、
前記検出工程は、
前記生成工程により生成されたレイアウトデータ内から、クロック供給源からのクロック信号を伝播し、前記ゲート段数1段の反転論理であるクロックバッファのみを含むクロックパスを検出することを特徴とする請求項1に記載の設計支援方法。 - レイアウトデータ内から、クロック供給源からのクロック信号を伝播し、ゲート段数1段の反転論理であるクロックバッファのみを含むクロックパスを検出する検出手段と、
前記検出手段により検出された前記ゲート段数1段の反転論理であるクロックバッファのみを含むクロックパスに接続されているデータ保持素子を前記レイアウトデータ内から順次選択する選択手段と、
前記選択手段によりデータ保持素子が選択される都度、前記選択されたデータ保持素子の入力元であるクロックバッファを前記レイアウトデータ内から特定する特定手段と、
前記クロック供給源から前記特定手段により特定されたクロックバッファまでのゲート段数に基づいて、前記特定されたクロックバッファが前記クロック供給源からの前記クロック信号を正論理で出力するか、反転論理で出力するかを判断する判断手段と、
前記判断手段により判断された判断結果に基づいて、前記選択されたデータ保持素子を、前記特定されたクロックバッファが前記クロック信号を正論理で出力する場合には前記クロック信号の立ち上がりエッジに同期してデータを取り込む第1のデータ保持素子、前記特定されたクロックバッファが前記クロック信号を反転論理で出力する場合には前記クロック信号の立ち下がりエッジに同期してデータを取り込む第2のデータ保持素子に置換する置換手段と、
を備えることを特徴とする設計支援装置。 - 複数のデータ保持素子と、クロック供給源からのクロック信号を前記複数のデータ保持素子へ伝播するクロックパスと、を備える半導体集積回路を設計する設計支援プログラムであって、
コンピュータを、
前記半導体集積回路のレイアウトデータ内から、前記クロック信号を伝播し、ゲート段数1段の反転論理であるクロックバッファのみを含むクロックパスを検出する検出手段、
前記検出手段により検出された前記ゲート段数1段の反転論理であるクロックバッファのみを含むクロックパスに接続されているデータ保持素子を前記レイアウトデータ内から順次選択する選択手段、
前記選択手段によりデータ保持素子が選択される都度、前記選択されたデータ保持素子の入力元であるクロックバッファを前記レイアウトデータ内から特定する特定手段、
前記クロック供給源から前記特定手段により特定されたクロックバッファまでのゲート段数に基づいて、前記特定されたクロックバッファが前記クロック供給源からの前記クロック信号を正論理で出力するか、反転論理で出力するかを判断する判断手段、
前記判断手段により判断された判断結果に基づいて、前記選択されたデータ保持素子を、前記特定されたクロックバッファが前記クロック信号を正論理で出力する場合には前記クロック信号の立ち上がりエッジに同期してデータを取り込む第1のデータ保持素子、前記特定されたクロックバッファが前記クロック信号を反転論理で出力する場合には前記クロック信号の立ち下がりエッジに同期してデータを取り込む第2のデータ保持素子に置換する置換手段、
前記置換手段により置換された置換結果を出力する出力手段、
として機能させることを特徴とする設計支援プログラム。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2009/060069 WO2010140216A1 (ja) | 2009-06-02 | 2009-06-02 | 設計支援方法、設計支援装置、設計支援プログラム、および半導体集積回路 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPWO2010140216A1 JPWO2010140216A1 (ja) | 2012-11-15 |
JP5263393B2 true JP5263393B2 (ja) | 2013-08-14 |
Family
ID=43297362
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2011518109A Expired - Fee Related JP5263393B2 (ja) | 2009-06-02 | 2009-06-02 | 設計支援方法、設計支援装置、および設計支援プログラム |
Country Status (3)
Country | Link |
---|---|
US (1) | US8365121B2 (ja) |
JP (1) | JP5263393B2 (ja) |
WO (1) | WO2010140216A1 (ja) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9032356B2 (en) * | 2013-03-06 | 2015-05-12 | Lsi Corporation | Programmable clock spreading |
US11526650B1 (en) * | 2021-03-31 | 2022-12-13 | Cadence Design Systems, Inc. | Switching power aware driver resizing by considering net activity in buffering algorithm |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000029562A (ja) * | 1998-07-10 | 2000-01-28 | Hitachi Ltd | 半導体集積回路及びクロック供給回路の設計方法 |
JP2003347404A (ja) * | 2002-05-22 | 2003-12-05 | Mitsubishi Electric Corp | 半導体集積回路のレイアウト方法および半導体集積回路のレイアウトプログラム |
JP2007110403A (ja) * | 2005-10-13 | 2007-04-26 | Kawasaki Microelectronics Kk | 半導体集積回路およびその設計方法 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6385759B1 (en) * | 2000-02-01 | 2002-05-07 | Cadence Design Systems, Inc. | Method for reducing memory requirements in static timing analysis |
JP3450293B2 (ja) * | 2000-11-29 | 2003-09-22 | Necエレクトロニクス株式会社 | クロック制御回路及びクロック制御方法 |
JP4108418B2 (ja) * | 2002-09-10 | 2008-06-25 | 松下電器産業株式会社 | 半導体集積回路の設計方法 |
US6774395B1 (en) * | 2003-01-15 | 2004-08-10 | Advanced Micro Devices, Inc. | Apparatus and methods for characterizing floating body effects in SOI devices |
-
2009
- 2009-06-02 WO PCT/JP2009/060069 patent/WO2010140216A1/ja active Application Filing
- 2009-06-02 JP JP2011518109A patent/JP5263393B2/ja not_active Expired - Fee Related
-
2011
- 2011-11-14 US US13/373,397 patent/US8365121B2/en not_active Expired - Fee Related
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000029562A (ja) * | 1998-07-10 | 2000-01-28 | Hitachi Ltd | 半導体集積回路及びクロック供給回路の設計方法 |
JP2003347404A (ja) * | 2002-05-22 | 2003-12-05 | Mitsubishi Electric Corp | 半導体集積回路のレイアウト方法および半導体集積回路のレイアウトプログラム |
JP2007110403A (ja) * | 2005-10-13 | 2007-04-26 | Kawasaki Microelectronics Kk | 半導体集積回路およびその設計方法 |
Also Published As
Publication number | Publication date |
---|---|
JPWO2010140216A1 (ja) | 2012-11-15 |
WO2010140216A1 (ja) | 2010-12-09 |
US20120060136A1 (en) | 2012-03-08 |
US8365121B2 (en) | 2013-01-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5445358B2 (ja) | 検証支援プログラム、検証支援装置および検証支援方法 | |
JP4261502B2 (ja) | 検証支援装置、検証支援方法、検証支援プログラム、および記録媒体 | |
JP5263393B2 (ja) | 設計支援方法、設計支援装置、および設計支援プログラム | |
JP5359655B2 (ja) | 生成方法 | |
KR101117397B1 (ko) | Lsi 시험 장치, lsi 시험 방법, 및 lsi 시험 프로그램을 기록한 기록 매체 | |
US7911466B2 (en) | Method and apparatus for editing timing diagram, and computer product | |
JP5167740B2 (ja) | 設計支援プログラム、設計支援装置、および設計支援方法 | |
JP4471794B2 (ja) | タイミング解析装置、タイミング解析方法、タイミング解析プログラムおよび記録媒体 | |
JP2008004024A (ja) | レイアウト設計プログラム、該プログラムを記録した記録媒体、レイアウト設計装置、およびレイアウト設計方法 | |
US20080209368A1 (en) | Layout design method, layout design apparatus, and computer product | |
JP4231837B2 (ja) | クロックツリー生成装置、クロックツリー生成方法、クロックツリー生成プログラムおよび記録媒体 | |
JP4852464B2 (ja) | 論理等価検証装置、論理等価検証方法、論理等価検証プログラムおよび記録媒体 | |
JP4275636B2 (ja) | 検証支援装置、検証支援方法、検証支援プログラム、および記録媒体 | |
JP4682059B2 (ja) | フォールスパス記述情報生成プログラム、フォールスパス記述情報生成装置およびフォールスパス記述情報生成方法 | |
JP4825905B2 (ja) | レイアウト設計装置、レイアウト設計プログラム、および記録媒体 | |
JP2006344165A (ja) | レイアウト設計装置、レイアウト設計方法、レイアウト設計プログラム、および記録媒体 | |
JP4848298B2 (ja) | 集積回路の製造方法、クロックゲーティング回路挿入プログラムおよび設計支援装置 | |
JP4968294B2 (ja) | レイアウト設計装置、レイアウト設計プログラム、および記録媒体 | |
JP4217204B2 (ja) | タイミング例外パス検出装置、タイミング例外パス検出方法およびタイミング例外パス検出プログラム | |
JP2010198293A (ja) | 設計支援プログラム、設計支援装置、および設計支援方法 | |
JP5212218B2 (ja) | 設計支援プログラム、設計支援装置、および設計支援方法 | |
JP4747036B2 (ja) | Lsi解析プログラム、該プログラムを記録した記録媒体、lsi解析装置、およびlsi解析方法 | |
JP2010271853A (ja) | 検証支援プログラム、検証支援装置、および検証支援方法 | |
JP2010204749A (ja) | レイアウト支援プログラム、レイアウト支援装置およびレイアウト支援方法 | |
JP2011034489A (ja) | 設計支援プログラム、設計支援装置、および設計支援方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20120904 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20121105 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20121127 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20130227 |
|
A911 | Transfer of reconsideration by examiner before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20130306 |
|
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: 20130402 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20130415 |
|
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 |