(57)【要約】【課題】回路設計において、回路構成に依存せず電力削減効果のある箇所のみクロックを停止させる。【解決手段】１つ以上のフリップフロップが含まれる回路の仕様が記述されているＲＴＬ１と、回路の動作を検証するためのユーザー検証パタン２とを用いて、論理検証実行部１１が、回路の動作の論理検証を行う。ＦＦ信号遷移検出部１２、ＦＦ信号遷移解析部１３及びクロック停止実施判定部１４が、回路に含まれるフリップフロップごとに、フリップフロップの入力値と出力値の遷移を監視し、監視結果に基づき、フリップフロップごとに、クロックゲーティングの対象とするか否かを判断する。クロック停止回路挿入部１５が、クロックゲーティングの対象とされたフリップフロップにクロックゲーティング回路が接続されるようにＲＴＬ１を書換える。【選択図】図１
2013242714.tif 000002
【特許請求の範囲】
【請求項１】
１つ以上のフリップフロップが含まれる回路の仕様が記述されている回路仕様情報と、前記回路の動作を検証するための検証パタンが記述されている検証パタン情報とを入力する情報入力部と、
前記回路仕様情報と前記検証パタン情報とを用いて、前記回路の動作の論理検証を行う論理検証実行部と、
前記回路に含まれるフリップフロップごとに、前記論理検証実行部によって論理検証が行われている間のフリップフロップの入力値と出力値の遷移を監視し、監視結果に基づき、フリップフロップごとに、クロックゲーティングの対象とするか否かを判断するクロックゲーティング判断部と、
前記クロックゲーティング判断部によりクロックゲーティングの対象とされたフリップフロップにクロックゲーティング回路が接続されるように、前記回路仕様情報を書き換える情報書換え部とを有することを特徴とする情報処理装置。
【請求項２】
前記クロックゲーティング判断部は、
前記回路に含まれるフリップフロップごとに、前記論理検証実行部によって論理検証が行われている間のフリップフロップの入力値と出力値の遷移を監視し、フリップフロップの入力値と出力値とが一致している入出力値一致時間、及び入力値と出力値とが一致していない入出力値不一致時間の少なくともいずれかを測定し、
前記入出力値一致時間及び前記入出力値不一致時間の少なくともいずれかを解析して、フリップフロップごとに、クロックゲーティングの対象とするか否かを判断することを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記クロックゲーティング判断部は、
前記回路に含まれるフリップフロップごとに、前記入出力値一致時間と前記入出力値不一致時間とを測定し、
前記入出力値一致時間と前記入出力値不一致時間との比率が所定の条件を満たすフリップフロップを、クロックゲーティングの対象とすることを特徴とする請求項２に記載の情報処理装置。
【請求項４】
前記情報書換え部は、
フリップフロップの入力値を監視し、入力値が変化したことを検出した後に最初に発生したクロックのみを前記フリップフロップに供給するクロックゲーティング回路が接続されるように、前記回路仕様情報を書き換えることを特徴とする請求項１〜３のいずれかに記載の情報処理装置。
【請求項５】
前記情報入力部は、
クロックゲーティング回路が接続されているフリップフロップが含まれる回路の仕様が記述されている回路仕様情報を入力し、
前記クロックゲーティング判断部は、
クロックゲーティング回路が接続されているフリップフロップに対して、前記論理検証実行部によって論理検証が行われている間の前記フリップフロップの入力値と出力値の遷移を監視し、更に、前記論理検証実行部によって論理検証が行われている間の前記クロックゲーティング回路へのイネーブル信号の遷移を監視し、前記フリップフロップに新たなクロックゲーティング回路が必要か否かを判断し、
前記情報書換え部は、
前記クロックゲーティング判断部により新たなクロックゲーティング回路が必要と判断されたフリップフロップに新たなクロックゲーティング回路が接続されるように、前記回路仕様情報を書き換えることを特徴とする請求項１〜４のいずれかに記載の情報処理装置。
【請求項６】
前記クロックゲーティング判断部は、
クロックゲーティング回路が接続されているフリップフロップに対して、
前記論理検証実行部によって論理検証が行われている間の前記フリップフロップの入力値と出力値の遷移を監視し、前記フリップフロップの入力値と出力値とが一致している入出力値一致時間を測定し、
更に、前記論理検証実行部によって論理検証が行われている間の前記クロックゲーティング回路へのイネーブル信号の遷移を監視し、前記イネーブル信号がインアクティブであるイネーブル信号インアクティブ時間を測定し、
前記入出力値一致時間と前記イネーブル信号インアクティブ時間とを解析して、前記フリップフロップに新たなクロックゲーティング回路が必要か否かを判断することを特徴とする請求項５に記載の情報処理装置。
【請求項７】
前記クロックゲーティング判断部は、
前記入出力値一致時間と前記イネーブル信号インアクティブ時間との比率が所定の条件を満たす場合に、前記フリップフロップに新たなクロックゲーティング回路が必要であると判断することを特徴とする請求項６に記載の情報処理装置。
【請求項８】
前記情報書換え部は、
フリップフロップの入力値と出力値を監視し、前記クロックゲーティング回路へのイネーブル信号を監視し、フリップフロップの入力値と出力値が不一致であり、前記クロックゲーティング回路へのイネーブル信号がアクティブである場合に、最初に発生したクロックのみを前記フリップフロップに供給する新たなクロックゲーティング回路が接続されるように、前記回路仕様情報を書き換えることを特徴とする請求項５〜７のいずれかに記載の情報処理装置。
【請求項９】
前記情報入力部は、
クロックゲーティング回路が接続されているフリップフロップが含まれる回路の仕様が記述されている回路仕様情報を入力し、
前記クロックゲーティング判断部は、
クロックゲーティング回路が接続されているフリップフロップに対して、前記論理検証実行部によって論理検証が行われている間の前記フリップフロップの入力値と出力値の遷移を監視し、更に、前記論理検証実行部によって論理検証が行われている間の前記クロックゲーティング回路へのイネーブル信号の遷移を監視し、前記フリップフロップに前記クロックゲーティング回路が必要か否かを判断し、
前記情報書換え部は、
前記クロックゲーティング判断部によりクロックゲーティング回路が必要でないと判断されたフリップフロップからクロックゲーティング回路が取り外されるように、前記回路仕様情報を書き換えることを特徴とする請求項１〜８のいずれかに記載の情報処理装置。
【請求項１０】
前記クロックゲーティング判断部は、
クロックゲーティング回路が接続されているフリップフロップに対して、
前記論理検証実行部によって論理検証が行われている間の前記フリップフロップの入力値と出力値の遷移を監視し、前記フリップフロップの入力値と出力値とが一致している入出力値一致時間と、入力値と出力値とが一致していない入出力値不一致時間とを測定し、
更に、前記論理検証実行部によって論理検証が行われている間の前記クロックゲーティング回路へのイネーブル信号の遷移を監視し、前記イネーブル信号がインアクティブであるイネーブル信号インアクティブ時間を測定し、
前記入出力値一致時間と前記入出力値不一致時間と前記イネーブル信号インアクティブ時間とを解析して、前記フリップフロップに前記クロックゲーティング回路が必要か否かを判断することを特徴とする請求項９に記載の情報処理装置。
【請求項１１】
コンピュータが、１つ以上のフリップフロップが含まれる回路の仕様が記述されている回路仕様情報と、前記回路の動作を検証するための検証パタンが記述されている検証パタン情報とを入力する情報入力ステップと、
前記コンピュータが、前記回路仕様情報と前記検証パタン情報とを用いて、前記回路の動作の論理検証を行う論理検証実行ステップと、
前記コンピュータが、前記回路に含まれるフリップフロップごとに、前記論理検証実行ステップによって論理検証が行われている間のフリップフロップの入力値と出力値の遷移を監視し、監視結果に基づき、フリップフロップごとに、クロックゲーティングの対象とするか否かを判断するクロックゲーティング判断ステップと、
前記クロックゲーティング判断ステップによりクロックゲーティングの対象とされたフリップフロップにクロックゲーティング回路が接続されるように、前記コンピュータが、前記回路仕様情報を書き換える情報書き換えステップとを有することを特徴とする情報処理方法。
【請求項１２】
１つ以上のフリップフロップが含まれる回路の仕様が記述されている回路仕様情報と、前記回路の動作を検証するための検証パタンが記述されている検証パタン情報とを入力する情報入力ステップと、
前記回路仕様情報と前記検証パタン情報とを用いて、前記回路の動作の論理検証を行う論理検証実行ステップと、
前記回路に含まれるフリップフロップごとに、前記論理検証実行ステップによって論理検証が行われている間のフリップフロップの入力値と出力値の遷移を監視し、監視結果に基づき、フリップフロップごとに、クロックゲーティングの対象とするか否かを判断するクロックゲーティング判断ステップと、
前記クロックゲーティング判断ステップによりクロックゲーティングの対象とされたフリップフロップにクロックゲーティング回路が接続されるように、前記回路仕様情報を書き換える情報書き換えステップとを有することを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、回路設計においてクロックゲーティングの対象を選択する技術に関する。
【背景技術】
【０００２】
半導体集積回路の消費電力削減の一手法として、クロックを止めるクロックゲーティングが一般的に知られている。
クロックゲーティングの手法には、主に設計者が意図して回路に埋め込む手法と、合成ツールにて既存のイネーブル信号を用いて自動で回路変更する場合がある。
また、フリップフロップ（以降、「ＦＦ」ともいう）の内部に監視回路を組み込み、ＦＦごとに監視回路がＦＦの信号遷移を監視し、信号が変わらない場合のみＦＦへのクロックを止める手法も提案されている（例えば、特許文献１）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００８−２８９３０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、従来クロックゲーティング手法では、設計者の負荷がかかる、もしくは回路構成依存（ハードウェア記述言語ＲＴＬ（Ｒｅｇｉｓｔｅｒ  Ｔｒａｎｓｆｅｒ  Ｌｅｖｅｌ）より自動抽出）でクロックを止める箇所を決めるため、回路依存ではない個所やＲＴＬの記述方法が悪い箇所のゲーティングができないという課題がある。
また、信号遷移の状態によっては、クロックゲーティング回路を挿入する部分の増加で却って電力が増える、という課題がある。
【０００５】
この発明は上記のような課題を解決することを主な目的としており、回路構成に依存せず電力削減効果のある箇所のみクロックを停止できるようにすることを主な目的とする。
【課題を解決するための手段】
【０００６】
本発明に係る情報処理装置は、
１つ以上のフリップフロップが含まれる回路の仕様が記述されている回路仕様情報と、前記回路の動作を検証するための検証パタンが記述されている検証パタン情報とを入力する情報入力部と、
前記回路仕様情報と前記検証パタン情報とを用いて、前記回路の動作の論理検証を行う論理検証実行部と、
前記回路に含まれるフリップフロップごとに、前記論理検証実行部によって論理検証が行われている間のフリップフロップの入力値と出力値の遷移を監視し、監視結果に基づき、フリップフロップごとに、クロックゲーティングの対象とするか否かを判断するクロックゲーティング判断部と、
前記クロックゲーティング判断部によりクロックゲーティングの対象とされたフリップフロップにクロックゲーティング回路が接続されるように、前記回路仕様情報を書き換える情報書換え部とを有することを特徴とする。
【発明の効果】
【０００７】
本発明によれば、回路の動作の論理検証を行い、論理検証が行われている間のフリップフロップの入力値と出力値の遷移を監視してクロックゲーティングの対象とするフリップフロップを判断する。
このため、実動作の信号遷移に応じてクロックゲーティングの対象を決定できるため、電力削減効果のあるフリップフロップのみクロックを停止できる。
【図面の簡単な説明】
【０００８】
【図１】実施の形態１に係る半導体集積回路設計支援システムの構成例を示す図。
【図２】実施の形態１に係る半導体集積回路設計支援システムの動作例を示すフローチャート図。
【図３】クロック停止回路を接続する前の回路図。
【図４】クロック停止回路を接続した後の回路図。
【図５】クロック停止回路を接続した後の回路のタイミング波形図。
【図６】実施の形態２に係る半導体集積回路設計支援システムの構成例を示す図。
【図７】実施の形態２に係る半導体集積回路設計支援システムの動作例を示すフローチャート図。
【図８】新たなクロック停止回路を追加する前の回路図。
【図９】新たなクロック停止回路を追加した後の回路図。
【図１０】新たなクロック停止回路を追加した後の回路のタイミング波形図。
【図１１】実施の形態３に係る半導体集積回路設計支援システムの構成例を示す図。
【図１２】実施の形態３に係る半導体集積回路設計支援システムの動作例を示すフローチャート図。
【図１３】クロック停止回路を削除した後の回路図。
【図１４】実施の形態１〜３に係る半導体集積回路設計支援システムのハードウェア構成例を示す図。
【発明を実施するための形態】
【０００９】
実施の形態１．
実施の形態１〜３では、回路構成に依存せず電力削減効果のある箇所のみクロックを停止するようＲＴＬ又はネットリストを自動で変更する半導体集積回路設計支援システムを説明する。
そして、実施の形態１〜３に係る半導体集積回路設計支援システムにより、設計者の手を煩わさずに従来以上の電力削減をすることが可能となる。
【００１０】
図１は、実施の形態１による半導体集積回路設計支援システム及びそのプログラムを示す構成図である。
【００１１】
図１において、ＲＴＬ  ｏｒ  ネットリスト１（以降、「ＲＴＬ１」と呼ぶ）は、半導体集積回路の回路仕様を記述したハードウェア記述言語のＲＴＬ（Ｒｅｇｉｓｔｅｒ  Ｔｒａｎｓｆｅｒ  Ｌｅｖｅｌ）、もしくは回路構成要素の相互関係を示すネットリストである。
ＲＴＬ１は回路仕様情報の例に相当する。
【００１２】
また、ユーザー検証パタン２は、半導体集積回路の動作を検証するための検証パタン情報であり、この半導体集積回路を実際に使用するシステムに即した検証パタンが記述されている。
「ユーザー検証パタン２」とは、言い換えれば、「ＲＴＬ１検証用入力パタン」と呼ぶこともできる。
「ユーザー検証パタン２」における「検証パタン」とは、ユーザーがＲＴＬ１を用いて論理検証を実行する時に、ユーザーが想定した仕様（機能）が正しく動作しているかを見るための入力データ信号列の集合体である。
通常、全回路の想定動作を確認するために複数の入力パタン（検証パタン）を使用する。
全回路の動作を確認するので、この複数の入力パタンを全て流せば、全回路の動作が網羅されることになる。
なお、実際には全回路の「全動作」を再現することは不可能（組合せ等が膨大にあるため）であり、全回路の全組合せを見ることは困難である。
しかし、想定している動作を、ユーザー検証パタンとして確認することで、ＬＳＩ（Ｌａｒｇｅ  Ｓｃａｌｅ  Ｉｎｔｅｇｒａｔｉｏｎ）として問題ないことを判断する。
【００１３】
次に、半導体集積回路設計支援システム１０は、ＲＴＬ１とユーザー検証パタン２とを用いて、半導体集積回路の動作の論理検証を行い、半導体集積回路に含まれるフリップフロップごとに、論理検証が行われている間のフリップフロップの入力値と出力値の遷移を監視し、監視結果に基づき、フリップフロップごとに、クロックゲーティングの対象とするか否かを判断する。
また、半導体集積回路設計支援システム１０は、クロックゲーティングの対象のフリップフロップにクロックゲーティング回路（「クロック停止回路」ともいう）が接続されるように、ＲＴＬ１を書き換えてクロック停止制御ＲＴＬ  ｏｒ  ネットリスト３（以降、「クロック停止制御ＲＴＬ３」と呼ぶ）を生成する。
半導体集積回路設計支援システム１０は、情報処理装置の例に相当する。
【００１４】
半導体集積回路設計支援システム１０において、情報入力部１６は、ＲＴＬ１とユーザー検証パタン２を入力する。
【００１５】
論理検証実行部１１は、ＲＴＬ１とユーザー検証パタン２とを用いて、半導体集積回路の動作の論理検証（ＲＴＬシミュレーション）を行う。
なお、論理検証実行部１１には、市販のツールを使用しても構わない。
【００１６】
ＦＦ信号遷移検出部１２は、対象となる半導体集積回路に搭載されている全ＦＦの前後の値（入力値と出力値）の遷移を常時監視するものである。
つまり、ＦＦ信号遷移検出部１２は、半導体集積回路に含まれるＦＦごとに、論理検証実行部１１によって論理検証が行われている間のＦＦの入力値と出力値の遷移を監視する。
【００１７】
ＦＦ信号遷移解析部１３は、ＦＦ信号遷移検出部１２で得られた信号遷移データを解析する。
例えば、ＦＦ信号遷移解析部１３は、ＦＦの入力値と出力値とが一致している時間（入出力値一致時間）と、入力値と出力値とが一致していない時間（入出力値不一致時間）とを測定する。
【００１８】
クロック停止実施判定部１４は、ＦＦ信号遷移解析部１３で解析した結果を基に、そのＦＦのクロックを停止するかどうかを判定するものである。
つまり、クロック停止実施判定部１４は、半導体集積回路内のＦＦごとに、クロックゲーティングの対象とするか否かを判断する。
例えば、クロック停止実施判定部１４は、ＦＦ信号遷移解析部１３により測定された入出力値一致時間と入出力値不一致時間との比率が所定の条件を満たすＦＦを、クロックゲーティングの対象とする。
【００１９】
ＦＦ信号遷移検出部１２、ＦＦ信号遷移解析部１３及びクロック停止実施判定部１４は、クロックゲーティング判断部の例に相当する。
【００２０】
クロック停止回路挿入部１５は、クロック停止実施判定部１４でクロックを停止すると判定されたＦＦに、ＲＴＬ１上でクロック停止回路を挿入する。
クロック停止回路挿入部１５の出力ファイルが、クロック停止回路が挿入されたクロック停止制御ＲＴＬ３である。
つまり、クロック停止回路挿入部１５は、クロック停止実施判定部１４によりクロックゲーティングの対象とされたＦＦにクロック停止回路が接続されるように、ＲＴＬ１を書き換えてクロック停止制御ＲＴＬ３を生成する。
クロック停止回路挿入部１５は、情報書換え部の例に相当する。
【００２１】
次に、実施の形態１の半導体集積回路設計支援システム１０の動作を説明する。
図２は、半導体集積回路設計支援システム１０の動作を示すフローチャートである。
図３は、クロック停止回路を接続する前の回路図である。
図４は、本実施の形態に係る半導体集積回路設計支援システム１０によってクロック停止回路を接続した後の回路図である。
図５は、図４に基づくタイミング波形図である。
【００２２】
先ず、クロックゲーティングしたい半導体集積回路のＲＴＬ１と、設計者もしくは検証担当者が論理検証（ＲＴＬシミュレーション）で使用したユーザー検証パタン２を、情報入力部１６を介して半導体集積回路設計支援システム１０に入力する（ステップＳ１０）。
ここで、「ユーザー検証パタン２を使用した論理検証（ＲＴＬシミュレーション）」と、Ｓ１１で実行される論理検証実行部１１によるＲＴＬシミュレーション（論理検証）は同じものである。
半導体集積回路設計支援システム１０を使用する前に「論理検証（ＲＴＬシミュレーション）」を実施していることを意味する。
【００２３】
そして、論理検証の結果（全てのＦＦの入力／出力データ）を得るために、半導体集積回路設計支援システム１０において、論理検証実行部１１が、論理検証（ＲＴＬシミュレーション）を再度実行する。
通常論理検証を実行する場合は、データ量が膨大になるため全ＦＦの入力／出力データを出力（記憶）しないが、ここ（論理検証実行部１１）では全ＦＦの信号遷移を検出するために、全ＦＦの入力／出力データを使用する（ステップＳ１１）。
【００２４】
次に、ステップＳ１１のデータを用い、ＦＦ信号遷移検出部１２が全てのＦＦの信号遷移を検出する。
例えば、ＦＦ信号遷移検出部１２は、ＦＦの入力と出力の値が異なる時はＨｉｇｈ、同じ時はＬｏｗを出力するようにする。
この出力信号を以降、遷移イネーブル信号と呼ぶ。
この遷移イネーブル信号は図４のｅｎ＿ｔが相当するが、この時点で実際に回路を挿入する必要はなく、コンピュータや検証ツール上で同様のことを実施すればよい（ステップＳ１２）。
そして、ＦＦ信号遷移解析部１３が、前記遷移イネーブル信号ｅｎ＿ｔの動作を解析することで、ＦＦ前後の信号遷移状態が分かる。
図５にＦＦの信号遷移（入力信号Ｄａと出力信号Ｑａの比較）と遷移イネーブル信号ｅｎ＿ｔのタイミング関係を示す。
なお、この時点では、図５のｃｌｋ＿ｇの信号波形は得られていない。
入力信号Ｄａ１と出力信号Ｑａ１は同じ値であり、入力信号Ｄａ２と出力信号Ｑａ２も同じ値である。以降についても同様である。
前述したように、遷移イネーブル信号ｅｎ＿ｔは、入力信号Ｄａと出力信号Ｑａの値が同じ間はＬｏｗ（インアクティブ状態）であり、入力信号Ｄａと出力信号Ｑａの値が異なっている間はＨｉｇｈ（アクティブ状態）となる。
例えば、遷移イネーブル信号ｅｎ＿ｔのＬｏｗ期間が長ければ、その期間はＦＦ出力の値に変化が無いのでクロックを長い期間止めておくことができるし、遷移イネーブル信号ｅｎ＿ｔがずっとＨｉｇｈであれば、ＦＦ出力の値が１クロック毎に変化しておりクロックを止めることができない。
ＦＦ信号遷移解析部１３の解析手法としては、遷移イネーブル信号ｅｎ＿ｔのＬｏｗ期間の連続最長値／最短値の抽出や遷移イネーブル信号ｅｎ＿ｔのＨｉｇｈ／Ｌｏｗ比率の抽出が考えられる（ステップＳ１３）。
【００２５】
次に、クロック停止実施判定部１４が、任意の閾値を境にクロックゲーティングするかしないかをＦＦごとに判定する（ステップＳ１４）。
例えば、ステップＳ１３での解析で遷移イネーブル信号ｅｎ＿ｔのＨｉｇｈ／Ｌｏｗ比率を抽出した場合、この値（信号遷移率）が任意の値よりも上であれば、クロック停止する期間（比率）は短いので、そのままクロックゲーティングせずにステップＳ１６に進む。
逆に、この値が任意の値よりも下であれば、クロック停止する期間（比率）が長いので、ＦＦ信号遷移解析部１３は、このＦＦをクロックゲーティングの対象とし、ステップＳ１５に進み、クロック停止回路挿入部１５がＲＴＬ１を書き換えて、そのＦＦに対してクロック停止回路を挿入する（ステップＳ１５）。
【００２６】
図４にクロック停止回路を挿入した一例を示す。
図４中の対象ＦＦの入力ポートＤａｔａ  Ｉｎと出力ポートＤａｔａ  Ｏｕｔの信号を入力としたＥｘ−ＯＲがクロック停止回路の一部である遷移イネーブル信号ｅｎ＿ｔの生成回路であり、そのｅｎ＿ｔでクロックｃｌｋを制御するＣＧＣ（Ｃｌｏｃｋ  Ｇａｔｉｎｇ  Ｃｅｌｌ）がＦＦのクロックｃｌｋ＿ｇを止めるクロック停止回路の主要部に相当する。
前記例の場合、ＣＧＣは単なるＡＮＤセルでも機能的には同じであるが、最近ではタイミング等を考慮したＣＧＣが用いられることが多い。
このＣＧＣの出力で、ゲーティングされたＦＦ用クロックｃｌｋ＿ｇの波形を図５に示す。
接続されたクロック停止回路は、ＦＦの入力値（Ｄａｔａ  Ｉｎ）を監視し、入力値が変化したことを検出した後に最初に発生したクロック信号ｃｌｋのみをｃｌｋ＿ｇとしてＦＦに供給する。
換言すれば、図５に示すように、立ち上がりエッジが遷移イネーブル信号ｅｎ＿ｔのＨｉｇｈ期間内にある最初のｃｌｋのみがｃｌｋ＿ｇとしてＦＦに供給される。
【００２７】
以上のこと（ステップＳ１２〜ステップＳ１５）を全てのＦＦについて実施し解析が完了すれば、このシステムの動作は終了となる（ステップＳ１６）。
【００２８】
なお、ステップＳ１４の任意の値は、遷移イネーブル信号生成回路とクロック停止回路挿入分の電力増加と、クロック停止による電力減少との兼ね合いで決まり、半導体のプロセスルールやライブラリによって異なる。
本実施の形態の方法を実施する前に、使用する条件にて遷移イネーブル信号ｅｎ＿ｔと挿入回路の電力関係を測定／解析し、その結果に基づいた閾値にすることで、より電力削減効果が出せるようになる。
【００２９】
以上のように、この半導体集積回路を実際に使用するシステムとしての動作に即した検証パタンを入力して、実動作の信号遷移を解析してクロック停止しているので、従来の回路構成に依存するクロックゲーティングよりも確実に電力削減効果がある。
また、電力削減に本当に効果のある箇所のみクロック停止するようにしているため、従来のように、クロックゲーティング回路追加分の電力増加がクロックゲーティングの電力削減効果を上回ってしまう可能性もなくなる。
また、信号遷移の解析やクロック停止の実施判定、更にはクロック停止回路挿入のＲＴＬ書き換えまで自動で行うため、設計者の手を煩わさずに従来以上の電力削減をすることが可能となる。
【００３０】
以上、本実施の形態では、
半導体集積回路の設計において、
半導体集積回路の回路仕様を記述したＲＴＬ、もしくは回路構成要素の相互関係を示すネットリストと、任意の検証パタンを基に論理検証を実行する論理検証手段と、
フリップフロップの前後の値（入力値と出力値）の遷移を常時監視するＦＦ信号遷移検出手段と、
前記ＦＦ信号遷移検出手段で得られた信号遷移データを解析するＦＦ信号遷移解析手段と、
前記ＦＦ信号遷移解析手段で解析した結果を基に、そのフリップフロップのクロックを停止するかどうかを判定するクロック停止実施判定手段と、
前記クロック停止実施判定手段でクロックを停止すると判定されたフリップフロップに、前記ＲＴＬ（もしくはネットリスト）上でクロック停止回路を挿入するクロック停止回路挿入手段
とを備えた半導体集積回路設計支援システム及びそのプログラムを説明した。
【００３１】
実施の形態２．
以上の実施の形態１は、クロックゲーティングされていない半導体集積回路に対して実施するものであるが、次に、既にクロックゲーティングされている半導体集積回路に対しての実施の形態を示す。
つまり、本実施の形態では、実施の形態１とは別の方法により既にＦＦにクロックゲーティング回路が接続されている半導体集積回路において新たなクロックゲーティング回路を追加すべきＦＦを検知する。
【００３２】
図６は、実施の形態２による半導体集積回路設計支援システム及びそのプログラムを示す構成図である。
【００３３】
図６において、ＲＴＬ  ｏｒ  ネットリスト１Ａ（以降、ＲＴＬ１Ａと呼ぶ）は、既にクロックゲーティングされている半導体集積回路の回路仕様を記述したハードウェア記述言語のＲＴＬ（Ｒｅｇｉｓｔｅｒ  Ｔｒａｎｓｆｅｒ  Ｌｅｖｅｌ）、もしくは回路構成要素の相互関係を示すネットリストである。
ユーザー検証パタン２は、実施の形態１と同じため説明を省略する。
【００３４】
次に、半導体集積回路設計支援システム２０において、情報入力部１６、論理検証実行部１１、ＦＦ信号遷移検出部１２は、実施の形態１と同じため説明を省略する。
【００３５】
ＦＦ信号遷移解析部２３は、ＦＦ信号遷移検出部１２で得られた信号遷移データを解析するもので、実施の形態１とは解析の方法が異なる。
クロック停止追加実施判定部２４は、ＦＦ信号遷移解析部２３で解析した結果を基に、既にクロックゲーティングされているＦＦに、更なるクロック停止回路を追加するかどうかを判定するものである。
クロック停止回路追加挿入部２５は、クロック停止追加実施判定部２４で新たなクロック停止回路を追加すると判定されたＦＦに、ＲＴＬ１Ａ上でクロック停止回路を追加挿入する。
クロック停止回路追加挿入部２５の出力ファイルが、クロック停止回路が追加挿入されたクロック停止制御ＲＴＬ  ｏｒ  ネットリスト３Ａ（以降、クロック停止制御ＲＴＬ３Ａと呼ぶ）である。
【００３６】
なお、本実施の形態では、ＦＦ信号遷移検出部１２、ＦＦ信号遷移解析部２３及びクロック停止追加実施判定部２４がクロックゲーティング判断部の例に相当し、クロック停止回路追加挿入部２５が情報書換え部の例に相当する。
【００３７】
次に、実施の形態２の半導体集積回路設計支援システム２０の動作を説明する。
図７は、半導体集積回路設計支援システム２０の動作を示すフローチャートである。
図８は、新たなクロック停止回路を追加する前の回路図である。
図９は、本実施の形態に係る半導体集積回路設計支援システム２０によって新たなクロック停止回路を追加した後の回路図である。
図１０は、図９に基づくタイミング波形図である。
【００３８】
先ず、追加でクロックゲーティングしたい半導体集積回路のＲＴＬ１Ａと、設計者もしくは検証担当者が論理検証（ＲＴＬシミュレーション）で使用したユーザー検証パタン２を、情報入力部１６を介して半導体集積回路設計支援システム２０に入力する（ステップＳ２０）。
【００３９】
次に、論理検証実行部１１が、ＲＴＬシミュレーション（論理検証）を行い、全てのＦＦの入力／出力データを出力する（ステップＳ２１）。
ステップＳ２１のデータを用い、ＦＦ信号遷移検出部１２が全てのＦＦの信号遷移を検出する（ステップＳ２２）。
ステップＳ２０〜ステップＳ２２の動作は、入力のＲＴＬ１Ａが異なること以外実施の形態１とすべて同じ作業である。
【００４０】
そして、ＦＦ信号遷移解析部２３が前記遷移イネーブル信号ｅｎ＿ｔの動作を解析することで、ＦＦ前後の信号遷移状態が分かる。
図１０にＦＦの信号遷移（入力信号Ｄａと出力信号Ｑａの比較）と遷移イネーブル信号ｅｎ＿ｔのタイミング関係を示す。
例えば、遷移イネーブル信号ｅｎ＿ｔのＬｏｗ期間が長ければ、その期間はＦＦ出力の値に変化が無いのでクロックを長い期間止めておくことができるし、遷移イネーブル信号ｅｎ＿ｔがずっとＨｉｇｈであれば、ＦＦ出力の値が１クロック毎に変化しておりクロックを止めることができない。
ＦＦ信号遷移解析部２３の解析手法としては、実施の形態１と同様に、遷移イネーブル信号ｅｎ＿ｔのＬｏｗ期間の連続最長値／最短値の抽出や遷移イネーブル信号ｅｎ＿ｔのＨｉｇｈ／Ｌｏｗ比率の抽出でもよいが、ここでは更に判定精度が上がるよう次のような解析手段を用いる。
【００４１】
先ず、ＦＦ信号遷移解析部２３が、本々回路（図８）に存在するクロックゲーティング用のイネーブル信号ｅｎ＿ｇと、前記遷移イネーブル信号ｅｎ＿ｔの両信号を監視し、Ｌｏｗ期間を比較する（ステップＳ２３）。
次に、クロック停止追加実施判定部２４が、任意の閾値を境に追加でクロックゲーティングするかしないかを判定する（ステップＳ２４）。
例えば、ステップＳ２３での解析で遷移イネーブル信号ｅｎ＿ｔと元のイネーブル信号ｅｎ＿ｇのＬｏｗ期間を比較した場合、元のイネーブル信号ｅｎ＿ｇに任意の値（サイクル）加算分ほど遷移イネーブル信号ｅｎ＿ｔのＬｏｗ期間が短ければ、クロック停止追加実施判定部２４は、元のクロックゲーティングに対し効果が少ないと判断し、追加のクロックゲーティングは行わずに、ステップＳ２６に進む。
逆に、元のイネーブル信号ｅｎ＿ｇに任意の値（サイクル）加算分だけ遷移イネーブル信号ｅｎ＿ｔのＬｏｗ期間が長ければ、クロック停止追加実施判定部２４は、元のクロックゲーティングに対して更に効果があると判断し、ステップＳ２５に進み、クロック停止回路追加挿入部２５がＲＴＬ１Ａ上でクロック停止回路を追加挿入する（ステップＳ２５）。
【００４２】
図９にクロック停止回路を追加挿入した一例を示す。
図９中の対象ＦＦの入力ポートＤａｔａ  Ｉｎと出力ポートＤａｔａ  Ｏｕｔの信号を入力とするＥｘ−ＯＲ回路である遷移イネーブル信号ｅｎ＿ｔの生成回路と、そのｅｎ＿ｔと元のイネーブル信号ｅｎ＿ｇとのＡＮＤ回路とが新たなクロック停止回路である。
そして、ＣＧＣ（Ｃｌｏｃｋ  Ｇａｔｉｎｇ  Ｃｅｌｌ）は、ＡＮＤ回路により新しく生成されたイネーブル信号でクロックｃｌｋを制御してＦＦにクロックｃｌｋ＿ｇを供給する。
ここでの遷移イネーブル信号生成回路とＣＧＣは実施の形態１と全く同一のものである。
新たに追加されたクロック停止回路は、ＦＦの入力値（Ｄａｔａ  Ｉｎ）と出力値（Ｄａｔａ  ｏｕｔ）を監視し、更に、イネーブル信号ｅｎ＿ｇを監視し、ＦＦの入力値と出力値が不一致であり、イネーブル信号ｅｎ＿ｇがアクティブ（Ｈｉｇｈ）である場合に、最初に発生したクロック信号ｃｌｋのみをｃｌｋ＿ｇとしてＦＦに供給するようにする。
換言すれば、図１０に示すように、立ち上がりエッジが遷移イネーブル信号ｅｎ＿ｔとイネーブル信号ｅｎ＿ｇの両者がＨｉｇｈの期間にある最初のｃｌｋのみがｃｌｋ＿ｇとしてＦＦに供給される。
【００４３】
以上のこと（ステップＳ２２〜ステップＳ２５）を全てのＦＦについて実施し解析が完了すれば、このシステムの動作は終了となる（ステップＳ２６）。
【００４４】
なお、前記説明では、ＲＴＬ１Ａに既にクロックゲーティング回路が入っている例を示したが、合成ツールによるクロックゲーティングを実施する場合、入力のＲＴＬはまだクロックゲーティング回路が挿入されていない（合成ツールにより、ネットリストに変換される段階でクロックゲーティング回路が挿入されるため）。
その場合、解析を簡略化して実施の形態１のように信号遷移比率で判断してもよいが、より判定精度を上げるためには、ＲＴＬ上の元のイネーブル信号ｅｎ＿ｇを監視し、実施の形態２の前記解析方法と同様に、ｅｎ＿ｔとｅｎ＿ｇを比較する方が望ましい。
【００４５】
以上のように、既にクロックゲーティングされている半導体集積回路においても、従来のクロック停止期間と比較することで、更なる電力削減効果を期待できる。
また、クロック停止回路のＣＧＣは元々回路挿入されているため、回路をあまり増やすことなく電力削減効果を期待できる。
【００４６】
また、この半導体集積回路を実際に使用するシステムとしての動作に即した検証パタンを入力して、実動作の信号遷移を解析してクロック停止しているので、従来の回路構成に依存するクロックゲーティングよりも確実に電力削減効果がある。
【００４７】
また、電力削減に本当に効果のある箇所のみクロック停止するようにしているため、従来のように、クロックゲーティング回路追加分の電力増加がクロックゲーティングの電力削減効果を上回ってしまう可能性もなくなる。
また、信号遷移の解析やクロック停止の実施判定、更にはクロック停止回路挿入のＲＴＬ書き換えまで自動で行うため、設計者の手を煩わさずに従来以上の電力削減をすることが可能となる。
【００４８】
以上、本実施の形態では、
クロックゲーティングされている半導体集積回路の設計において、
半導体集積回路の回路仕様を記述したＲＴＬ、もしくは回路構成要素の相互関係を示すネットリストと、任意の検証パタンを基に論理検証を実行する論理検証手段と、
フリップフロップの前後の値（入力値と出力値）の遷移を常時監視するＦＦ信号遷移検出手段と、
前記ＦＦ信号遷移検出手段で得られた信号遷移データを解析するＦＦ信号遷移解析手段と、
前記ＦＦ信号遷移解析手段で解析した結果を基に、既にクロックゲーティングされているＦＦに、更なるクロック停止手段を追加するかどうかを判定するクロック停止追加実施判定手段と、
前記クロック停止追加実施判定手段でクロック停止手段を追加すると判定されたフリップフロップに、前記ＲＴＬ（もしくはネットリスト）上でクロック停止回路を追加挿入するクロック停止回路追加挿入手段
とを備えた半導体集積回路設計支援システム及びそのプログラムを説明した。
【００４９】
実施の形態３．
以上の実施の形態２では、クロックゲーティングされている半導体集積回路に対して追加でクロック停止を実施するものであるが、次に元のクロックゲーティングを削除する実施の形態を示す。
つまり、本実施の形態では、実施の形態１及び２とは別の方法により既にＦＦにクロックゲーティング回路が接続されている半導体集積回路においてクロックゲーティング回路を取り外すべきＦＦを検知する。
【００５０】
図１１は、実施の形態３による半導体集積回路設計支援システム及びそのプログラムを示す構成図である。
【００５１】
図１１において、ＲＴＬ  ｏｒ  ネットリスト１Ａ（以降、ＲＴＬ１Ａと呼ぶ）は、既にクロックゲーティングされている半導体集積回路の回路仕様を記述したハードウェア記述言語のＲＴＬ（Ｒｅｇｉｓｔｅｒ  Ｔｒａｎｓｆｅｒ  Ｌｅｖｅｌ  ）、もしくは回路構成要素の相互関係を示すネットリストであり、実施の形態２と同じものである。
ユーザー検証パタン２は、実施の形態１、２と同じため説明を省略する。
【００５２】
次に、半導体集積回路設計支援システム３０において、情報入力部１６、論理検証実行部１１、ＦＦ信号遷移検出部１２は、実施の形態１、２と同じため説明を省略する。
【００５３】
ＦＦ信号遷移解析部３３は、ＦＦ信号遷移検出部１２で得られた信号遷移データを解析するもので、実施の形態１、２とは解析の方法が異なる。
クロック停止削除実施判定部３４は、ＦＦ信号遷移解析部３３で解析した結果を基に、既にクロックゲーティングされているＦＦのクロックゲーティング回路を削除するかどうかを判定するものである。
クロック停止回路削除部３５は、クロック停止削除実施判定部３４でクロック停止手段を削除すると判定されたＦＦに対し、ＲＴＬ１Ａ上でクロック停止回路を削除する。
クロック停止回路削除部３５の出力ファイルが、クロック停止回路が削除されたクロック停止制御ＲＴＬ  ｏｒ  ネットリスト３Ｂ（以降、クロック停止制御ＲＴＬ３Ｂと呼ぶ）である。
【００５４】
なお、本実施の形態では、ＦＦ信号遷移検出部１２、ＦＦ信号遷移解析部３３及びクロック停止削除実施判定部３４がクロックゲーティング判断部の例に相当し、クロック停止回路削除部３５が情報書換え部の例に相当する。
【００５５】
次に、実施の形態３の半導体集積回路設計支援システム３０の動作を説明する。
図１２は、半導体集積回路設計支援システム３０の動作を示すフローチャートである。
図１３は、本実施の形態に係る半導体集積回路設計支援システム３０によってクロック停止回路を削除した後の回路図である。
なお、クロック停止回路を削除する前の回路図は、図８に示したものと同じである。
【００５６】
先ず、クロックゲーティングを削除したい半導体集積回路のＲＴＬ１Ａと、設計者もしくは検証担当者が論理検証（ＲＴＬシミュレーション）で使用したユーザー検証パタン２を、情報入力部１６を介して半導体集積回路設計支援システム３０に入力する（ステップＳ３０）。
【００５７】
次に、論理検証実行部１１が、ＲＴＬシミュレーション（論理検証）を行い、全てのＦＦの入力／出力データを出力する（ステップＳ３１）。
ステップＳ３１のデータを用い、ＦＦ信号遷移検出部１２が全てのＦＦの信号遷移を検出する（ステップＳ３２）。
ステップＳ３０〜ステップＳ３２の動作は、実施の形態２とすべて同じ作業である。
【００５８】
そして、ＦＦ信号遷移解析部３３が前記遷移イネーブル信号ｅｎ＿ｔの動作を解析することで、ＦＦ前後の信号遷移状態が分かる。
図１０にＦＦの信号遷移（入力信号Ｄａと出力信号Ｑａの比較）と遷移イネーブル信号ｅｎ＿ｔのタイミング関係を示す。
例えば、遷移イネーブル信号ｅｎ＿ｔのＬｏｗ期間が長ければ、その期間はＦＦ出力の値に変化が無いのでクロックを長い期間止めておくことができるし、遷移イネーブル信号ｅｎ＿ｔがずっとＨｉｇｈであれば、ＦＦ出力の値が１クロック毎に変化しておりクロックを止めることができない。
ＦＦ信号遷移解析部３３の解析手段としては、遷移イネーブル信号ｅｎ＿ｔと元のイネーブル信号ｅｎ＿ｇのＡＮＤを取った信号に対し、実施の形態１と同様にＬｏｗ期間の連続最長値／最短値の抽出や遷移イネーブル信号ｅｎ＿ｔのＨｉｇｈ／Ｌｏｗ比率の抽出を行う（ステップＳ３３）。
【００５９】
次に、クロック停止削除実施判定部３４で、任意の閾値を境にクロック停止回路を削除するかしないかを判定する（ステップＳ３４）。
例えば、ステップＳ３３での解析で遷移イネーブル信号ｅｎ＿ｔのＨｉｇｈ／Ｌｏｗ比率を抽出した場合、この値（信号遷移率）が任意の値よりも下であれば、クロック停止する期間（比率）は長いので、クロック停止回路を削除せずにステップＳ３６に進む。
逆に、この値が任意の値よりも上であれば、クロック停止する期間（比率）が短いので、ステップＳ３５に進み、クロック停止回路削除部３５が、そのＦＦのクロック停止回路をＲＴＬ１Ａ上で削除する（ステップＳ３５）。
この場合、本々存在するクロックゲーティング回路の効果と信号遷移による新たな効果の両方を見ていることになる。
【００６０】
図１３にクロック停止回路を削除した一例を示す。
また、クロック停止回路削除前の回路は図８に示す。
図１３中の対象ＦＦの出力信号Ｄａｔａ  Ｏｕｔと入力信号Ｄａｔａ  Ｉｎを入力としたセレクタを追加し、その出力を対象ＦＦの入力に接続する。
次に、図８中の対象ＦＦのクロックに接続されているＣＧＣを削除し、ＣＧＣに接続されていたｅｎ＿ｇを前記のセレクタの制御信号として接続する。
こうすることで、対象ＦＦの出力信号Ｄａｔａ  Ｏｕｔは、クロック停止回路削除前と全く変わらず、クロック停止動作だけがなくなる。
【００６１】
以上のこと（ステップＳ３２〜ステップＳ３５）を全てのＦＦについて実施し解析が完了すれば、このシステムの動作は終了となる（ステップＳ３６）。
【００６２】
なお、前記説明では、ＲＴＬ１Ａに既にクロックゲーティング回路が入っている例を示したが、合成ツールによるクロックゲーティングを実施する場合、入力のＲＴＬはまだクロックゲーティング回路が挿入されていない（合成ツールにより、ネットリストに変換される段階でクロックゲーティング回路が挿入されるため）。
その場合もＲＴＬ上の元のイネーブル信号ｅｎ＿ｇと遷移イネーブル信号ｅｎ＿ｔをＡＮＤして解析するのが望ましい。
【００６３】
以上のように、既にクロックゲーティングされている半導体集積回路において、この半導体集積回路を実際に使用するシステムとしての動作に即した検証パタンを入力して、実動作の信号遷移を解析して効果の少ないクロックゲーティング回路を削除するようにしたので、従来のクロックゲーティングされている半導体集積回路において、クロックゲーティング回路挿入で却って電力が増加している箇所を削除することで、更なる電力削減効果を期待できる。
【００６４】
以上、本実施の形態では、
クロックゲーティングされている半導体集積回路の設計において、
半導体集積回路の回路仕様を記述したＲＴＬ、もしくは回路構成要素の相互関係を示すネットリストと、任意の検証パタンを基に論理検証を実行する論理検証手段と、
フリップフロップの前後の値（入力値と出力値）の遷移を常時監視するＦＦ信号遷移検出手段と、
前記ＦＦ信号遷移検出手段で得られた信号遷移データを解析するＦＦ信号遷移解析手段と、
前記ＦＦ信号遷移解析手段で解析した結果を基に、既にクロックゲーティングされているＦＦのクロック停止回路を削除するかどうかを判定するクロック停止削除実施判定手段と、
前記クロック停止削除実施判定手段でクロック停止回路を削除すると判定されたフリップフロップに、前記ＲＴＬ（もしくはネットリスト）上でクロック停止回路を削除するクロック停止回路削除手段
とを備えた半導体集積回路設計支援システム及びそのプログラムを説明した。
【００６５】
なお、上記では、半導体集積回路について、ＦＦにクロックゲーティングを実施する例又はクロックゲーティングを解除する例を説明したが、適用対象は半導体集積回路に限定されない。
ＦＦのクロックゲーティングが必要な回路又はクロックゲーティングの解除が必要な回路であれば、半導体集積回路以外であっても実施の形態１〜３の方法を適用できる。
【００６６】
最後に、実施の形態１〜３に示した半導体集積回路設計支援システム１０、２０、３０のハードウェア構成例を図１４を参照して説明する。
半導体集積回路設計支援システム１０、２０、３０はコンピュータであり、半導体集積回路設計支援システム１０、２０、３０の各要素はプログラムにより処理を実行することができる。
半導体集積回路設計支援システム１０、２０、３０のハードウェア構成としては、バスに、演算装置９０１、外部記憶装置９０２、主記憶装置９０３、通信装置９０４、入出力装置９０５が接続されている。
【００６７】
演算装置９０１は、プログラムを実行するＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）である。
外部記憶装置９０２は、例えばＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）やフラッシュメモリ、ハードディスク装置である。
主記憶装置９０３は、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）である。
通信装置９０４は、他の装置と通信を行う。
入出力装置９０５は、例えば、マウス、キーボード、ディスプレイ装置である。
【００６８】
プログラムは、通常は外部記憶装置９０２に記憶されており、主記憶装置９０３にロードされた状態で、順次演算装置９０１に読み込まれ、実行される。
プログラムは、図１、図６及び図１１において「〜部」として説明している機能を実現するプログラムである。
更に、外部記憶装置９０２にはオペレーティングシステム（ＯＳ）も記憶されており、ＯＳの少なくとも一部が主記憶装置９０３にロードされ、演算装置９０１はＯＳを実行しながら、図１、図６及び図１１の「〜部」の機能を実現するプログラムを実行する。
また、入力されたＲＴＬ１等は、外部記憶装置９０２に格納され、ＦＦの入出力値の抽出が行われる際に、外部記憶装置９０２から主記憶装置９０３にロードされる。
また、実施の形態１〜３の説明において、「〜の判断」、「〜の判定」、「〜の抽出」、「〜の検出」、「〜の検知」、「〜の解析」、「〜の確認」、「〜の決定」、「〜の設定」、「〜の比較」、「〜の選択」、「〜の生成」、「〜の入力」、「〜の出力」等として説明している処理の結果を示す情報やデータや信号値や変数値が主記憶装置９０３にファイルとして記憶されている。
また、暗号鍵・復号鍵や乱数値やパラメータが、主記憶装置９０３にファイルとして記憶されてもよい。
【００６９】
なお、図１４の構成は、あくまでも半導体集積回路設計支援システム１０、２０、３０のハードウェア構成の一例を示すものであり、半導体集積回路設計支援システム１０、２０、３０のハードウェア構成は図１４に記載の構成に限らず、他の構成であってもよい。
【００７０】
また、実施の形態１〜３に示す手順により、本発明に係る情報処理方法を実現可能である。
【符号の説明】
【００７１】
１  ＲＴＬ、１Ａ  ＲＴＬ、２  ユーザー検証パタン、３  クロック停止制御ＲＴＬ、３Ａ  クロック停止制御ＲＴＬ、３Ｂ  クロック停止制御ＲＴＬ、１０  半導体集積回路設計支援システム、１１  論理検証実行部、１２  ＦＦ信号遷移検出部、１３  ＦＦ信号遷移解析部、１４  クロック停止実施判定部、１５  クロック停止回路挿入部、１６  情報入力部、２０  半導体集積回路設計支援システム、２３  ＦＦ信号遷移解析部、２４  クロック停止追加実施判定部、２５  クロック停止回路追加挿入部、３０  半導体集積回路設計支援システム、３３  ＦＦ信号遷移解析部、３４  クロック停止削除実施判定部、３５  クロック停止回路削除部。
【図１】
2013242714.tif 000003
【図２】
2013242714.tif 000004
【図３】
2013242714.tif 000005
【図４】
2013242714.tif 000006
【図５】
2013242714.tif 000007
【図６】
2013242714.tif 000008
【図７】
2013242714.tif 000009
【図８】
2013242714.tif 000010
【図９】
2013242714.tif 000011
【図１０】
2013242714.tif 000012
【図１１】
2013242714.tif 000013
【図１２】
2013242714.tif 000014
【図１３】
2013242714.tif 000015
【図１４】
2013242714.tif 000016