JP4988758B2 - マルチサイクル・クロック・ゲーティングのための方法および装置 - Google Patents
マルチサイクル・クロック・ゲーティングのための方法および装置 Download PDFInfo
- Publication number
- JP4988758B2 JP4988758B2 JP2008546321A JP2008546321A JP4988758B2 JP 4988758 B2 JP4988758 B2 JP 4988758B2 JP 2008546321 A JP2008546321 A JP 2008546321A JP 2008546321 A JP2008546321 A JP 2008546321A JP 4988758 B2 JP4988758 B2 JP 4988758B2
- Authority
- JP
- Japan
- Prior art keywords
- gating
- group
- data latch
- latch device
- circuit
- 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
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03K—PULSE TECHNIQUE
- H03K19/00—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
Landscapes
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Geometry (AREA)
- Evolutionary Computation (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Design And Manufacture Of Integrated Circuits (AREA)
- Logic Circuits (AREA)
- Synchronisation In Digital Transmission Systems (AREA)
Description
1997European Design and Test ConferenceにおけるL. Benini、G. De Micheli、E. Macii、M. Poncino、R. Scarsiによる「Symbolic Synthesis of Clock-Gating Logic for Power Optimization ofControl-Oriented Synchronous Networks」
Proc. IFIP Int. Workshop on Logic andArchitecture Synthesis, 1996におけるF. Theeuwen、E. Seelenによる「Power Reduction through Clock Gating by Symbolic Manipulation」
Proc. Twelfth International Conference onVLSI Design, 1999におけるN. Raghavan、V. Akella、S. Bakshiによる「Automatic Insertion of GatedClocks at Register Transfer Level」
IEEE Transactions on Circuits and Systems- II: Analog and Digital Signal Processing, Vol. 44, No. 6, June 1997におけるT.Lang、E. Musoll、J. Cortadellaによる「Individual Flip-Flops with Gated Clocks for Low Power Datapaths」
イネーブル信号enで信号a(n)をゲーティングして、ゲート・クロックg0を生成し、
イネーブル信号enのラッチ・バージョンで信号b(n)をゲーティングして、ゲート・クロックg1を生成し、
イネーブル信号enの二重ラッチ・バージョンで出力信号o(n)をゲーティングして、ゲート・クロックg2を生成する。
クロック・ゲーティング関数Fjでレベル0のフリップフロップに関する信号をゲーティングし、
クロック・ゲーティング関数Fjのi番目のラッチ・バージョンでi番目のレベルのフリップフロップに関する信号をゲーティングする。
Claims (10)
- データ・ラッチ・デバイスのマルチサイクル・ゲーティング・グループを生成するためのプログラムであって、コンピュータに、
入力回路設計のデータ・ラッチ・デバイスの値が変化しないことを識別する論理によってインジケータ信号を作成するステップと、
K回という複数回、前記インジケータ信号で前記回路を展開するステップと、
少なくとも前記展開インジケータ信号から前記データ・ラッチ・デバイスに関する複数の候補ゲーティング関数を決定するステップであって、
前記展開インジケータ信号の複数サイクルについてまとめてANDが取られた前記展開インジケータ信号のサイクルによる決定の値を示す二分決定グラフ(BDD)Xを構築するステップと、
前記データ・ラッチ・デバイスの値が変化しないときに前記インジケータ信号の生成する値を有するXの無変更BDD Yを生成するステップと、
各タイム・スタンプkごとに、その入力がk番目のサイクルのものではないBDD Ykの前記インジケータ信号の生成する値を除去するステップと、
を含む、前記決定するステップと、
を実行させる前記プログラム。 - 各前記ゲーティング・グループが単一ゲーティング関数に関連付けられ、各ゲーティング・グループごとに、前記ゲーティング・グループの0番目の段に対応するレベルのデータ・ラッチ・デバイスを前記ゲーティング関数でゲーティングし、前記ゲーティング・グループのi番目のレベルのデータ・ラッチ・デバイスを前記ゲーティング関数のi番目用でゲーティングするステップを実行させることも含む、請求項1に記載のプログラム。
- 前記生成するステップが、
入力サイクルにのみ依存する、前記回路のデータ・ラッチ・デバイスのグループGを検出するステップと、
j番目のゲーティング関数Fjを共用する、前記グループGのデータ・ラッチ・デバイスのグループHjを決定するステップと、
各グループHjごとに、グループHjの既存のデータ・ラッチ・デバイスから入力を受け取る、前記回路のデータ・ラッチ・デバイスを追加するステップと、
を含む、請求項1ないし2のいずれかに記載のプログラム。 - 前記追加するステップが、
各初期グループHjごとに、そこに含まれるデータ・ラッチ・デバイスをレベル0のデータ・ラッチ・デバイスとして定義するステップと、
各i番目のレベルごとに、前記データ・ラッチ・デバイスがすでにグループHjに存在するレベルiのデータ・ラッチ・デバイスのみに依存する場合、前記回路のデータ・ラッチ・デバイスをレベルi+1のデータ・ラッチ・デバイスとしてグループHjに追加するステップと、
を含む、請求項3に記載のプログラム。 - データ・ラッチ・デバイスのマルチサイクル・ゲーティング・グループを生成するためのマルチサイクル・クロック・ゲータにおいて、
入力回路設計のデータ・ラッチ・デバイスの値が変化しないことを識別する論理によってインジケータ信号を作成するためのインジケータ信号発生器と、
K回という複数回、前記インジケータ信号で前記回路を展開するための展開器と、
少なくとも前記展開インジケータ信号から前記データ・ラッチ・デバイスに関する複数の候補ゲーティング関数を決定するためのゲーティング関数決定器と、
を含み、
前記ゲーティング関数決定器が、
前記展開インジケータ信号の複数サイクルについてまとめてANDが取られた前記展開インジケータ信号のサイクルによる決定の値を示す二分決定グラフ(BDD)Xを構築して、前記データ・ラッチ・デバイスの値が変化しないときに前記インジケータ信号の生成する値を有するXの無変更BDD Yを生成し、各タイム・スタンプkごとに、その入力がk番目のサイクルのものではないBDD Ykの前記インジケータ信号の生成する値を除去するための二分決定グラフ・オペレータを含む、
前記マルチサイクル・クロック・ゲータ。 - 入力サイクルにのみ依存する、前記回路のデータ・ラッチ・デバイスのグループGを検出するための回路レビュアと、
j番目のゲーティング関数Fjを共用する、前記グループGのデータ・ラッチ・デバイスのグループHjを決定するためのゲーティング関数決定器と、
各グループHjごとに、グループHjの既存のデータ・ラッチ・デバイスから入力を受け取る、前記回路のデータ・ラッチ・デバイスを追加するグループ発生器と、
を含む、請求項5に記載のマルチサイクル・クロック・ゲータ。 - 前記グループ発生器が、
各初期グループHjごとに、そこに含まれるデータ・ラッチ・デバイスを段に対応するレベルが0のデータ・ラッチ・デバイスとして定義するためのレベル0の定義器と、
各i番目のレベルごとに、前記データ・ラッチ・デバイスがすでにグループHjに存在するレベルiのデータ・ラッチ・デバイスのみに依存する場合、前記回路のデータ・ラッチ・デバイスをレベルi+1のデータ・ラッチ・デバイスとしてグループHjに追加するための非レベル0の定義器と、
を含む、請求項6に記載のマルチサイクル・クロック・ゲータ。 - 各前記ゲーティング・グループが単一ゲーティング関数に関連付けられ、前記データ・ラッチ・デバイスをゲーティングするためのゲーティング関数インプリメンタを含み、各ゲーティング・グループごとに、前記インプリメンタが前記ゲーティング・グループの0番目のレベルのデータ・ラッチ・デバイスを前記ゲーティング関数でゲーティングし、前記ゲーティング・グループのi番目のレベルのデータ・ラッチ・デバイスを前記ゲーティング関数のi番目用でゲーティングする、請求項5ないし7のいずれかに記載のマルチサイクル・クロック・ゲータ。
- 前記データ・ラッチ・デバイスがフリップフロップおよびラッチのタイプである、請求項5ないし8のいずれかに記載のマルチサイクル・クロック・ゲータ。
- 回路設計のデータ・ラッチ・デバイスのマルチサイクル・ゲーティング・グループを生成するための請求項5ないし9のいずれかに記載のマルチサイクル・クロック・ゲータと、
選択されたマルチサイクル・ゲーティング・グループで前記回路設計を更新するための回路設計アップデータと、
を含む装置。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/311,756 | 2005-12-19 | ||
US11/311,756 US7594200B2 (en) | 2005-12-19 | 2005-12-19 | Method for finding multi-cycle clock gating |
PCT/EP2006/068582 WO2007071506A1 (en) | 2005-12-19 | 2006-11-16 | A method for multi-cycle clock gating |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2009520287A JP2009520287A (ja) | 2009-05-21 |
JP4988758B2 true JP4988758B2 (ja) | 2012-08-01 |
Family
ID=37880745
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2008546321A Expired - Fee Related JP4988758B2 (ja) | 2005-12-19 | 2006-11-16 | マルチサイクル・クロック・ゲーティングのための方法および装置 |
Country Status (9)
Country | Link |
---|---|
US (1) | US7594200B2 (ja) |
EP (1) | EP1964266B1 (ja) |
JP (1) | JP4988758B2 (ja) |
KR (1) | KR100992025B1 (ja) |
CN (1) | CN101341656B (ja) |
AT (1) | ATE425585T1 (ja) |
DE (1) | DE602006005714D1 (ja) |
TW (1) | TW200745891A (ja) |
WO (1) | WO2007071506A1 (ja) |
Families Citing this family (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008028930A (ja) * | 2006-07-25 | 2008-02-07 | Toshiba Corp | 半導体集積回路及びその設計方法 |
US7930673B2 (en) | 2007-05-29 | 2011-04-19 | Magma Design Automation, Inc. | Method for automatic clock gating to save power |
US7458050B1 (en) | 2008-03-21 | 2008-11-25 | International Business Machines Corporation | Methods to cluster boolean functions for clock gating |
US7884649B1 (en) * | 2009-02-27 | 2011-02-08 | Magma Design Automation, Inc. | Selection of optimal clock gating elements |
US8132144B2 (en) * | 2009-06-17 | 2012-03-06 | Oracle America, Inc. | Automatic clock-gating insertion and propagation technique |
US8166444B2 (en) * | 2009-06-23 | 2012-04-24 | International Business Machines Corporations | Clock gating using abstraction refinement |
JP5368941B2 (ja) * | 2009-11-06 | 2013-12-18 | シャープ株式会社 | 論理回路設計支援方法及び装置 |
JP5494468B2 (ja) * | 2010-12-27 | 2014-05-14 | 富士通株式会社 | 状態検出装置、状態検出方法および状態検出のためのプログラム |
KR20140020404A (ko) | 2012-08-08 | 2014-02-19 | 삼성전자주식회사 | 집적 회로의 소비 전력 모델링 방법 및 장치 |
US8890573B2 (en) * | 2012-09-07 | 2014-11-18 | Nvidia Corporation | Clock gating latch, method of operation thereof and integrated circuit employing the same |
US8656326B1 (en) * | 2013-02-13 | 2014-02-18 | Atrenta, Inc. | Sequential clock gating using net activity and XOR technique on semiconductor designs including already gated pipeline design |
US10318695B2 (en) | 2013-12-05 | 2019-06-11 | International Business Machines Corporation | Phase algebra for virtual clock and mode extraction in hierarchical designs |
US9916407B2 (en) | 2013-12-05 | 2018-03-13 | International Business Machines Corporation | Phase algebra for analysis of hierarchical designs |
US10503856B2 (en) | 2013-12-05 | 2019-12-10 | International Business Machines Corporation | Phase algebra for specifying clocks and modes in hierarchical designs |
US9268889B2 (en) | 2013-12-05 | 2016-02-23 | International Business Machines Corporation | Verification of asynchronous clock domain crossings |
US10761559B2 (en) * | 2016-12-13 | 2020-09-01 | Qualcomm Incorporated | Clock gating enable generation |
CN116959519B (zh) * | 2023-09-20 | 2023-12-15 | 深圳比特微电子科技有限公司 | 存储设备、包含该存储设备的片上系统和计算装置 |
Family Cites Families (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH03131976A (ja) * | 1989-10-18 | 1991-06-05 | Hitachi Ltd | 論理回路の製造方法 |
US5980092A (en) | 1996-11-19 | 1999-11-09 | Unisys Corporation | Method and apparatus for optimizing a gated clock structure using a standard optimization tool |
US6247134B1 (en) | 1999-03-31 | 2001-06-12 | Synopsys, Inc. | Method and system for pipe stage gating within an operating pipelined circuit for power savings |
US6434704B1 (en) * | 1999-08-16 | 2002-08-13 | International Business Machines Corporation | Methods for improving the efficiency of clock gating within low power clock trees |
US6785832B2 (en) * | 2001-06-22 | 2004-08-31 | International Business Machines Corporation | Process independent source synchronous data capture apparatus and method |
GB0210625D0 (en) | 2002-05-09 | 2002-06-19 | Paradigm Design Systems | Control of guard flops |
JP2003330568A (ja) | 2002-05-09 | 2003-11-21 | Toshiba Corp | 半導体集積回路および回路設計システム |
JP4083544B2 (ja) * | 2002-11-18 | 2008-04-30 | 富士通株式会社 | マルチサイクルパス解析方法 |
JP4288066B2 (ja) * | 2002-12-27 | 2009-07-01 | エヌエックスピー ビー ヴィ | 回路装置 |
GB0301241D0 (en) * | 2003-01-20 | 2003-02-19 | Paradigm Design Systems Ltd | Clocked gating on measured performance |
GB0301244D0 (en) | 2003-01-20 | 2003-02-19 | Paradigm Design Systems Ltd | Improved clock gating for synchronous circuits |
US7080334B2 (en) * | 2003-05-09 | 2006-07-18 | Incentia Design Systems Corp. | Automatic clock gating insertion in an IC design |
US7032192B2 (en) * | 2003-05-22 | 2006-04-18 | Fujitsu Limited | Performing latch mapping of sequential circuits |
US6844767B2 (en) * | 2003-06-18 | 2005-01-18 | Via-Cyrix, Inc. | Hierarchical clock gating circuit and method |
US6983437B2 (en) * | 2003-11-05 | 2006-01-03 | Sun Microsystems, Inc. | Timing verification, automated multicycle generation and verification |
JP2007164590A (ja) * | 2005-12-15 | 2007-06-28 | Fujitsu Ltd | 回路設計装置、回路設計プログラム、及び回路設計方法 |
-
2005
- 2005-12-19 US US11/311,756 patent/US7594200B2/en not_active Expired - Fee Related
-
2006
- 2006-11-16 WO PCT/EP2006/068582 patent/WO2007071506A1/en active Application Filing
- 2006-11-16 DE DE602006005714T patent/DE602006005714D1/de active Active
- 2006-11-16 CN CN2006800478040A patent/CN101341656B/zh active Active
- 2006-11-16 KR KR1020087015495A patent/KR100992025B1/ko not_active IP Right Cessation
- 2006-11-16 EP EP06819558A patent/EP1964266B1/en active Active
- 2006-11-16 AT AT06819558T patent/ATE425585T1/de not_active IP Right Cessation
- 2006-11-16 JP JP2008546321A patent/JP4988758B2/ja not_active Expired - Fee Related
- 2006-12-04 TW TW095144997A patent/TW200745891A/zh unknown
Also Published As
Publication number | Publication date |
---|---|
US20070157130A1 (en) | 2007-07-05 |
US7594200B2 (en) | 2009-09-22 |
TW200745891A (en) | 2007-12-16 |
CN101341656A (zh) | 2009-01-07 |
ATE425585T1 (de) | 2009-03-15 |
KR100992025B1 (ko) | 2010-11-05 |
JP2009520287A (ja) | 2009-05-21 |
WO2007071506A1 (en) | 2007-06-28 |
DE602006005714D1 (de) | 2009-04-23 |
EP1964266A1 (en) | 2008-09-03 |
CN101341656B (zh) | 2010-09-22 |
EP1964266B1 (en) | 2009-03-11 |
KR20080077231A (ko) | 2008-08-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4988758B2 (ja) | マルチサイクル・クロック・ゲーティングのための方法および装置 | |
Clow et al. | A pythonic approach for rapid hardware prototyping and instrumentation | |
US7934179B2 (en) | Systems and methods for logic verification | |
US20090106719A1 (en) | Method and system for asynchronous chip design | |
US8302041B1 (en) | Implementation flow for electronic circuit designs using choice networks | |
US7849428B2 (en) | Formally deriving a minimal clock-gating scheme | |
US20140165022A1 (en) | Relative timing architecture | |
JP2009535718A (ja) | 同期回路設計の表現から非同期回路設計の表現へおよび非同期回路設計の表現から同期回路設計の表現への自動変換を実行するためのシステムおよび方法 | |
US7523029B2 (en) | Logic verification and logic cone extraction technique | |
JP4403187B2 (ja) | 設計データ変換プログラム、該プログラムを記録した記録媒体、設計データ変換装置、および設計データ変換方法 | |
JP4200465B2 (ja) | 半導体集積回路の設計方法及び設計システム | |
CN115204076B (zh) | 集成电路的逻辑优化方法、装置、电子设备及可读介质 | |
JP2008299464A (ja) | 消費電力計算方法、消費電力計算プログラムおよび消費電力計算装置 | |
US10657210B2 (en) | Slack time recycling | |
Ahmadi et al. | Symbolic noise analysis approach to computational hardware optimization | |
Lanneer et al. | An object-oriented framework supporting the full high-level synthesis trajectory | |
Huang | On speeding up extended finite state machines using catalyst circuitry | |
Thillai Rani et al. | Recurrent deep neural learning classification algorithm based high level synthesis in VLSI circuit with runtime adaptability | |
US11657205B2 (en) | Construction, modeling, and mapping of multi-output cells | |
US8245178B2 (en) | Method for multi-cycle clock gating | |
Li et al. | Functional vectors generation for RT-level Verilog descriptions based on path enumeration and constraint logic programming | |
Madorsky et al. | VPP-a Verilog HDL simulation and generation library for C++ | |
WO2011007640A1 (ja) | 動作合成装置、動作合成方法、ならびに、記録媒体 | |
Daryanavard et al. | Design of CAD ASIP for JIT extensible processor: Case study on simulated annealing placer | |
Phillips | AC to register transfer level algorithm using structured circuit templates: A case study with simulated annealing |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20090217 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20090818 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20110419 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20110713 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20110830 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20111122 |
|
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: 20120410 |
|
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: 20120426 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20150511 Year of fee payment: 3 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
LAPS | Cancellation because of no payment of annual fees |