JP2009520287A - マルチサイクル・クロック・ゲーティングのための方法および装置 - Google Patents
マルチサイクル・クロック・ゲーティングのための方法および装置 Download PDFInfo
- Publication number
- JP2009520287A JP2009520287A JP2008546321A JP2008546321A JP2009520287A JP 2009520287 A JP2009520287 A JP 2009520287A JP 2008546321 A JP2008546321 A JP 2008546321A JP 2008546321 A JP2008546321 A JP 2008546321A JP 2009520287 A JP2009520287 A JP 2009520287A
- 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.)
- Granted
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)
Abstract
【解決手段】 マルチサイクル・クロック・ゲータは、回路設計のデータ・ラッチ・デバイスのマルチサイクル・ゲーティング・グループを生成する。回路設計アップデータは、選択されたマルチサイクル・ゲーティング・グループで回路設計を更新する。各ゲーティング・グループは、単一ゲーティング関数に関連付けられる。各ゲーティング・グループごとに、そのゲーティング・グループの0番目のレベルのデータ・ラッチ・デバイスがそのゲーティング関数でゲーティングされ、そのゲーティング・グループのi番目のレベルのデータ・ラッチ・デバイスがそのゲーティング関数のi番目のラッチ・バージョンでゲーティングされる。
【選択図】 図3
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 (13)
- マルチサイクル・クロック・ゲーティングのための方法において、
データ・ラッチ・デバイスのマルチサイクル・ゲーティング・グループを生成することを含む前記方法。 - 各前記ゲーティング・グループが単一ゲーティング関数に関連付けられ、各ゲーティング・グループごとに、前記ゲーティング・グループの0番目のレベルのデータ・ラッチ・デバイスを前記ゲーティング関数でゲーティングし、前記ゲーティング・グループのi番目のレベルのデータ・ラッチ・デバイスを前記ゲーティング関数のi番目のラッチ・バージョンでゲーティングすることも含む、請求項1に記載の方法。
- 前記生成することが、
入力回路設計のデータ・ラッチ・デバイスの値が変化しない条件を識別するインジケータ信号を作成することと、
K回という複数回、前記インジケータ信号で前記回路を展開することと、
少なくとも前記展開インジケータ信号から前記データ・ラッチ・デバイスに関する複数の候補ゲーティング関数を決定することと、
を含む、請求項1または2に記載の方法。 - 前記決定することが、
まとめてANDが取られた前記展開インジケータ信号の二分決定グラフ(BDD)Xを構築することと、
無変更値でXのBDD Yを生成することと、
各タイム・スタンプkごとに、その入力がk番目のサイクルのものではないBDD Ykの変数を除去することと、
を含む、請求項3に記載の方法。 - 前記生成することが、
入力サイクルにのみ依存する、前記回路のデータ・ラッチ・デバイスのグループGを検出することと、
j番目のゲーティング関数Fjを共用する、前記グループGのデータ・ラッチ・デバイスのグループHjを決定することと、
各グループHjごとに、グループHjの既存のデータ・ラッチ・デバイスから入力を受け取る、前記回路のデータ・ラッチ・デバイスを追加することと、
を含む、請求項1ないし4のいずれかに記載の方法。 - 前記追加することが、
各初期グループHjごとに、そこに含まれるデータ・ラッチ・デバイスをレベル0のデータ・ラッチ・デバイスとして定義することと、
各i番目のレベルごとに、前記データ・ラッチ・デバイスがすでにグループHjに存在するレベルiのデータ・ラッチ・デバイスのみに依存する場合、前記回路のデータ・ラッチ・デバイスをレベルi+1のデータ・ラッチ・デバイスとしてグループHjに追加することと、
を含む、請求項5に記載の方法。 - データ・ラッチ・デバイスのマルチサイクル・ゲーティング・グループを生成するためのマルチサイクル・クロック・ゲータにおいて、
入力回路設計のデータ・ラッチ・デバイスの値が変化しない条件を識別するインジケータ信号を作成するためのインジケータ信号発生器と、
K回という複数回、前記インジケータ信号で前記回路を展開するための展開器と、
少なくとも前記展開インジケータ信号から前記データ・ラッチ・デバイスに関する複数の候補ゲーティング関数を決定するためのゲーティング関数決定器と、
を含む、マルチサイクル・クロック・ゲータ。 - 前記ゲーティング関数決定器が、
まとめてANDが取られた前記展開インジケータ信号の二分決定グラフ(BDD)Xを構築して無変更値でXのBDD Yを生成し、各タイム・スタンプkごとに、その入力がk番目のサイクルのものではないBDD Ykの変数を除去するための二分決定グラフ・オペレータを含む、請求項7に記載のマルチサイクル・クロック・ゲータ。 - 入力サイクルにのみ依存する、前記回路のデータ・ラッチ・デバイスのグループGを検出するための回路レビュアと、
j番目のゲーティング関数Fjを共用する、前記グループGのデータ・ラッチ・デバイスのグループHjを決定するためのゲーティング関数決定器と、
各グループHjごとに、グループHjの既存のデータ・ラッチ・デバイスから入力を受け取る、前記回路のデータ・ラッチ・デバイスを追加するグループ発生器と、
を含む、請求項7または8に記載のマルチサイクル・クロック・ゲータ。 - 前記グループ発生器が、
各初期グループHjごとに、そこに含まれるデータ・ラッチ・デバイスをレベル0のデータ・ラッチ・デバイスとして定義するためのレベル0の定義器と、
各i番目のレベルごとに、前記データ・ラッチ・デバイスがすでにグループHjに存在するレベルiのデータ・ラッチ・デバイスのみに依存する場合、前記回路のデータ・ラッチ・デバイスをレベルi+1のデータ・ラッチ・デバイスとしてグループHjに追加するための非レベル0の定義器と、
を含む、請求項9に記載のマルチサイクル・クロック・ゲータ。 - 各前記ゲーティング・グループが単一ゲーティング関数に関連付けられ、前記回路設計アップデータが前記データ・ラッチ・デバイスをゲーティングするためのゲーティング関数インプリメンタを含み、各ゲーティング・グループごとに、前記インプリメンタが前記ゲーティング・グループの0番目のレベルのデータ・ラッチ・デバイスを前記ゲーティング関数でゲーティングし、前記ゲーティング・グループのi番目のレベルのデータ・ラッチ・デバイスを前記ゲーティング関数のi番目のラッチ・バージョンでゲーティングする、請求項7ないし10のいずれかに記載のマルチサイクル・クロック・ゲータ。
- 前記データ・ラッチ・デバイスがフリップフロップおよびラッチのタイプである、請求項7ないし11のいずれかに記載のマルチサイクル・クロック・ゲータ。
- 回路設計のデータ・ラッチ・デバイスのマルチサイクル・ゲーティング・グループを生成するための請求項7ないし12のいずれかに記載のマルチサイクル・クロック・ゲータと、
選択されたマルチサイクル・ゲーティング・グループで前記回路設計を更新するための回路設計アップデータと、
を含む装置。
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 true JP2009520287A (ja) | 2009-05-21 |
JP4988758B2 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) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011100346A (ja) * | 2009-11-06 | 2011-05-19 | Sharp Corp | 論理回路設計支援方法及び装置 |
Families Citing this family (16)
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 |
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 |
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 |
US9916407B2 (en) | 2013-12-05 | 2018-03-13 | International Business Machines Corporation | Phase algebra for analysis of hierarchical designs |
US10761559B2 (en) * | 2016-12-13 | 2020-09-01 | Qualcomm Incorporated | Clock gating enable generation |
CN116959519B (zh) * | 2023-09-20 | 2023-12-15 | 深圳比特微电子科技有限公司 | 存储设备、包含该存储设备的片上系统和计算装置 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH03131976A (ja) * | 1989-10-18 | 1991-06-05 | Hitachi Ltd | 論理回路の製造方法 |
JP2003330568A (ja) * | 2002-05-09 | 2003-11-21 | Toshiba Corp | 半導体集積回路および回路設計システム |
JP2007164590A (ja) * | 2005-12-15 | 2007-06-28 | Fujitsu Ltd | 回路設計装置、回路設計プログラム、及び回路設計方法 |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
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 |
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 |
-
2005
- 2005-12-19 US US11/311,756 patent/US7594200B2/en not_active Expired - Fee Related
-
2006
- 2006-11-16 EP EP06819558A patent/EP1964266B1/en active Active
- 2006-11-16 CN CN2006800478040A patent/CN101341656B/zh active Active
- 2006-11-16 WO PCT/EP2006/068582 patent/WO2007071506A1/en active Application Filing
- 2006-11-16 AT AT06819558T patent/ATE425585T1/de not_active IP Right Cessation
- 2006-11-16 DE DE602006005714T patent/DE602006005714D1/de active Active
- 2006-11-16 KR KR1020087015495A patent/KR100992025B1/ko 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
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH03131976A (ja) * | 1989-10-18 | 1991-06-05 | Hitachi Ltd | 論理回路の製造方法 |
JP2003330568A (ja) * | 2002-05-09 | 2003-11-21 | Toshiba Corp | 半導体集積回路および回路設計システム |
JP2007164590A (ja) * | 2005-12-15 | 2007-06-28 | Fujitsu Ltd | 回路設計装置、回路設計プログラム、及び回路設計方法 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011100346A (ja) * | 2009-11-06 | 2011-05-19 | Sharp Corp | 論理回路設計支援方法及び装置 |
Also Published As
Publication number | Publication date |
---|---|
CN101341656B (zh) | 2010-09-22 |
EP1964266B1 (en) | 2009-03-11 |
EP1964266A1 (en) | 2008-09-03 |
TW200745891A (en) | 2007-12-16 |
US20070157130A1 (en) | 2007-07-05 |
ATE425585T1 (de) | 2009-03-15 |
CN101341656A (zh) | 2009-01-07 |
JP4988758B2 (ja) | 2012-08-01 |
DE602006005714D1 (de) | 2009-04-23 |
KR100992025B1 (ko) | 2010-11-05 |
US7594200B2 (en) | 2009-09-22 |
KR20080077231A (ko) | 2008-08-21 |
WO2007071506A1 (en) | 2007-06-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4988758B2 (ja) | マルチサイクル・クロック・ゲーティングのための方法および装置 | |
US7934179B2 (en) | Systems and methods for logic verification | |
JP5045961B2 (ja) | 同期回路設計の表現から非同期回路設計の表現へおよび非同期回路設計の表現から同期回路設計の表現への自動変換を実行するためのシステムおよび方法 | |
US8302041B1 (en) | Implementation flow for electronic circuit designs using choice networks | |
US7849428B2 (en) | Formally deriving a minimal clock-gating scheme | |
US20090106719A1 (en) | Method and system for asynchronous chip design | |
US20140165022A1 (en) | Relative timing architecture | |
CN115204076B (zh) | 集成电路的逻辑优化方法、装置、电子设备及可读介质 | |
US7523029B2 (en) | Logic verification and logic cone extraction technique | |
JP4200465B2 (ja) | 半導体集積回路の設計方法及び設計システム | |
JP4403187B2 (ja) | 設計データ変換プログラム、該プログラムを記録した記録媒体、設計データ変換装置、および設計データ変換方法 | |
Raghunathan et al. | Integrating variable-latency components into high-level synthesis | |
US10657210B2 (en) | Slack time recycling | |
JP2008299464A (ja) | 消費電力計算方法、消費電力計算プログラムおよび消費電力計算装置 | |
US11308025B1 (en) | State machine block for high-level synthesis | |
Ahmadi et al. | Symbolic noise analysis approach to computational hardware optimization | |
Bommu et al. | Retiming-based factorization for sequential logic optimization | |
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 | |
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++ | |
Lloyd et al. | Asynchronous microprocessors: From high level model to FPGA implementation | |
Phillips | AC to register transfer level algorithm using structured circuit templates: A case study with simulated annealing | |
US8516413B1 (en) | Compilation and simulation of a circuit design |
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 |