(57)【要約】【課題】半導体集積回路設計の上位工程でトグル情報を抽出し、それを論理合成時やレイアウト設計時に適用することにより低消費電力設計効果を最大にする。【解決手段】スタンダードセル合成工程１０１でＲＴＬ記述からネットリストを合成しレジスタ記述部分とネットリスト中のインスタンス名を対照するインスタンス名リストを作成し、シミュレーション工程１０３でＲＴＬ記述の動作シミュレーションを行い、そこで抽出されたレジスタ間のトグル情報をトグル格納工程１０４で記録し、そのトグル情報とインスタンス名リストから得られるフリップフロップ間インスタンス名を対応させたフリップフロップ間トグル情報データベースをマッピング工程１０５で構築し、電力最適化工程１０２でネットリストとフリップフロップ間トグル情報データベースとタイミング制約とを用いて消費電力を低減するための物理設計の最適化を行う。【選択図】  図１
2006190149.tif 000002
【特許請求の範囲】
【請求項１】
回路構造のＲＴＬ記述からネットリストを合成し前記ＲＴＬ記述中のレジスタ記述部分とネットリスト中のインスタンス名を対照するインスタンス名リストを作成するスタンダードセル合成工程と、与えられた実動作パターンを入力してＲＴＬ記述の動作シミュレーションを行うシミュレーション工程と、前記シミュレーション工程で抽出されたレジスタ間のトグル情報を記録するトグル格納工程と、前記トグル格納工程から得られるトグル情報と前記インスタンス名リストから得られるフリップフロップ間インスタンス名を対応させたフリップフロップ間トグル情報データベースを構築するマッピング工程と、前記ネットリストと前記フリップフロップ間トグル情報データベースと任意に与えられるタイミング制約とを用いて消費電力を低減するための物理設計の最適化を行う電力最適化工程とを含む半導体集積回路の低消費電力設計方法。
【請求項２】
前記電力最適化工程は、前記ネットリストのフリップフロップ間をトレースしトレースされた各インスタンスに前記トグル情報を付与するトグルトレース工程と、前記トグル情報が付与された各インスタンス間の配線の容量を抽出する容量抽出工程と、前記容量抽出工程から得られた容量値と前記マッピング工程から得られたトグル情報に基づき活性化率が高い配線の容量を小さくするように回路を再構築する回路再構築工程と、前記容量抽出工程から得られた容量値とトグル情報から回路の消費電力を計算するスタティック電力解析工程とを含む請求項１記載の半導体集積回路の低消費電力設計方法。
【請求項３】
前記トグルトレース工程は、前記ネットリストと前記タイミング制約に基づきクロックラインにトグル情報を付与するクロックトグル付与工程と、前記ネットリストと前記タイミング制約と前記フリップフロップ間トグルデータベースのトグル情報とを用いてフリップフロップの出力端子側から信号をトレースし前記トグル情報をフリップフロップ間の信号すべてに割り当てるフリップフロップ間トグル付与工程と、トグル情報が重複する配線ではトグル情報の最大値を選択するトグル選択工程とを含む請求項２記載の半導体集積回路の低消費電力設計方法。
【請求項４】
前記トグル選択工程において、トグル情報が重複する配線ではトグル情報の最大値に代えてトグル情報の最小値を選択する請求項３記載の半導体集積回路の低消費電力設計方法。
【請求項５】
半導体集積回路電源ネットワークの抵抗値を抽出する抵抗抽出工程と、前記スタティック電力解析工程から得られた消費電力値と前記抵抗抽出工程から得られた抵抗値から電源降下測定を行う電源降下測定工程とを含む電圧降下解析を実施する請求項２記載の半導体集積回路の低消費電力設計方法。
【請求項６】
前記シミュレーション工程において与えられた複数の実動作パターンに応じて前記マッピング工程で構築される複数のフリップフロップ間トグル情報データベースを用い、前記電力最適化工程にて得られる前記複数の実動作パターンに応じた複数の消費電力値を比較し、消費電力を最も低減できる場合を選択することにより最適化ネットリストを作成する請求項１記載の半導体集積回路の低消費電力設計方法。
【請求項７】
論理合成後、配置合成後、配線最適化後の各段階で請求項１から６のいずれかに記載の低消費電力設計方法を実施する半導体集積回路の低消費電力設計方法。
【請求項８】
レイアウト上のセルグループを活性化率で分離し、不活性領域を別電源にして電源制御を適用する請求項１から７のいずれかに記載の半導体集積回路の低消費電力設計方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は半導体集積回路の低消費電力設計方法に関するものである。
【背景技術】
【０００２】
半導体集積回路における回路規模の増大とともにその消費電力の増加が問題となり、従来、これを低減するための低消費電力設計手法が研究され実施されてきた。特に近年の携帯機器の普及に伴い、それに搭載される半導体集積回路の消費電力を可能な限り低減することが極めて重要な課題となっている。
【０００３】
半導体集積回路の低消費電力設計方法として、レイアウト設計終了後に半導体集積回路内の各部に流れる電流の大きさを確認し、消費電力を低減するためにレイアウトに修正を加える旧来の手法は、レイアウト設計の繰り返しが発生することから開発コストの増大を招くものであった。
【０００４】
これに対して、レイアウト設計前に消費電力を見積もり、その結果をレイアウト設計に反映させる手法が従来とられてきた。具体的に、特許文献１に開示された手法は、設計対象の半導体集積回路の論理シミュレーションを実行し、各回路部のトグル動作回数を集計することで消費電力を予測し、その結果に基づいてレイアウト設計における制約条件を決定することで消費電力を低減するというものである。
【０００５】
また、特許文献２に開示された手法は、動作特性の異なる２種類のフリップフロップがデータ動作率および入力波形遷移時間に依存して消費電力が変化することに着目し、論理パス毎のデータ動作率および入力波形遷移時間に応じて消費電力が低くなる方のフリップフロップを個々に選択するというものである。
【０００６】
図９は従来の半導体集積回路の低消費電力設計方法を示すフロー図である。図９において、半導体集積回路設計は、論理合成工程２０１、配置合成工程２０４、クロックツリーシンセシス工程２０７、配線最適化工程２０８から構成され、設計のそれぞれの段階において上述したような電力最適化手法を採用し、それを実施するために各回路部に一律のトグル情報を与えている。
【特許文献１】特開平９−２４６３８９号公報
【特許文献２】特開２００２−３１８８２６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
しかしながら、上記従来の低消費電力設計手法は、論理合成後に構成要素および配線系統が決定した後に論理シミュレーションを実施するため、トグル情報を取得するまでに多大な時間がかかるという問題があった。
【０００８】
また、時間短縮のために一律のトグル情報を与える設計手法もとられているが、一律のトグル情報では情報量も少なく精度も低いため、最大の効果を挙げる低消費電力化が実現できないという問題もあった。
【０００９】
本発明は、半導体集積回路設計の上位工程においてトグル情報抽出を可能にし、それらの情報を論理合成時やレイアウト設計時に適用することにより消費電力を低減する半導体集積回路の低消費電力設計手法を提供することを目的とする。
【課題を解決するための手段】
【００１０】
本発明は、回路構造のレジスタトランスファレベル記述（ＲＴＬ記述）からネットリストを合成し前記ＲＴＬ記述中のレジスタ記述部分とネットリスト中のインスタンス名を対照するインスタンス名リストを作成するスタンダードセル合成工程と、与えられた実動作パターンを入力してＲＴＬ記述の動作シミュレーションを行うシミュレーション工程と、前記シミュレーション工程で抽出されたレジスタ間のトグル情報を記録するトグル格納工程と、前記トグル格納工程から得られるトグル情報と前記インスタンス名リストから得られるフリップフロップ間インスタンス名を対応させたフリップフロップ間トグル情報データベースを構築するマッピング工程と、前記ネットリストと前記フリップフロップ間トグル情報データベースと任意に与えられるタイミング制約とを用いて消費電力を低減するための物理設計の最適化を行う電力最適化工程とを含む。
【００１１】
本発明において、前記電力最適化工程は、前記ネットリストのフリップフロップ間をトレースしトレースされた各インスタンスに前記トグル情報を付与するトグルトレース工程と、前記トグル情報が付与された各インスタンス間の配線の容量を抽出する容量抽出工程と、前記容量抽出工程から得られた容量値と前記マッピング工程から得られたトグル情報に基づき活性化率が高い配線の容量を小さくするように回路を再構築する回路再構築工程と、前記容量抽出工程から得られた容量値とトグル情報から回路の消費電力を計算するスタティック電力解析工程とを含む。
【００１２】
本発明において、前記トグルトレース工程は、前記ネットリストと前記タイミング制約に基づきクロックラインにトグル情報を付与するクロックトグル付与工程と、前記ネットリストと前記タイミング制約と前記フリップフロップ間トグルデータベースのトグル情報とを用いてフリップフロップの出力端子側から信号をトレースし前記トグル情報をフリップフロップ間の信号すべてに割り当てるフリップフロップ間トグル付与工程と、トグル情報が重複する配線ではトグル情報の最大値を選択するトグル選択工程とを含む。さらに、前記トグル選択工程において、トグル情報が重複する配線ではトグル情報の最大値に代えてトグル情報の最小値を選択する。
【００１３】
本発明において、半導体集積回路電源ネットワークの抵抗値を抽出する抵抗抽出工程と、前記スタティック電力解析工程から得られた消費電力値と前記抵抗抽出工程から得られた抵抗値から電源降下測定を行う電源降下測定工程とを含む電圧降下解析を実施する。
【００１４】
本発明において、前記シミュレーション工程で与えられた複数の実動作パターンに応じて前記マッピング工程で構築される複数のフリップフロップ間トグル情報データベースを用い、前記電力最適化工程にて得られる前記複数の実動作パターンに応じた複数の消費電力値を比較し、消費電力を最も低減できる場合を選択することにより最適化ネットリストを作成する。
【００１５】
本発明は、論理合成後、配置合成後、配線最適化後の各段階で請求項１から６のいずれかに記載の低消費電力設計方法を実施する。
【００１６】
本発明は、請求項１から７のいずれかに記載の半導体集積回路の低消費電力設計方法において、レイアウト上のセルグループを活性化率で分離し、不活性領域を別電源にして電源制御を適用する。
【００１７】
上記構成によれば、より抽象度の高いＲＴＬ記述から機能シミュレーションによりトグル情報を抽出して消費電力を予測し、それらの情報を論理合成時、レイアウト設計時に適用して低消費力を実現することができるため、半導体集積回路を構成する各回路要素の決定時、各回路要素の配置および配線時に消費電力の予測値として信頼性の高いものを得ることが可能となり、最大の効果を挙げる低消費電力化が高い精度で効率よく実現できる。
【発明の効果】
【００１８】
本発明によれば、より抽象度の高いＲＴＬ記述からトグル情報を抽出し、それら情報を論理合成時やレイアウト設計時に適用することにより、消費電力の低減に最大の効果を挙げることができる半導体集積回路の低消費電力設計手法を提供することができる。
【発明を実施するための最良の形態】
【００１９】
図１は本発明の一実施の形態に係る半導体集積回路の低消費電力設計方法を示すフロー図である。図１において、半導体集積回路の低消費電力設計方法は、スタンダードセル合成工程１０１、電力最適化工程１０２、シミュレーション工程１０３、トグル格納工程１０４、マッピング工程１０５から構成される。
【００２０】
スタンダードセル合成工程１０１は回路構造のＲＴＬ記述１２１からネットリスト１２２を合成する工程であり、作成されたネットリスト１２２に加えて、ＲＴＬ記述中のレジスタ記述部分とネットリスト中のインスタンス名の対照リストを出力する。
【００２１】
シミュレーション工程１０３はＲＴＬ記述された回路に動作パターンを入力することで動作シミュレーションを行う工程であり、その際に動作する信号のトグル情報をトグル格納工程１０４に渡す。
【００２２】
図２はトグル格納工程１０４の処理内容を説明する図である。ここでは、シミュレーション工程１０３で得られたＲＴＬベースのトグル情報を各レジスタ間に割り当て、レジスタ記述毎に活性化率をまとめてレジスタ間トグルデータベース１２４を構築する。
【００２３】
マッピング工程１０５は、レジスタ間トグルデータベース１２４と、スタンダードセル合成工程１０１から得られるインスタンス名の対照リストから、トグル情報をネットリスト中のフリップフロップ（以下、ＦＦ）間のトグル情報に変換したデータベースであるＦＦ間トグルデータベース１２５を構築する。
【００２４】
この工程で得られたＦＦ間のトグル情報は、後工程で回路の変更があった場合でもＦＦのインスタンス名は変わらないため、レイアウト工程のどの段階でも活用することができる。ここまでの段階で、後工程での電力最適化に必要な情報として、電力最適化前の回路構造を表現したネットリストとＦＦ間のトグル情報が得られる。
【００２５】
電力最適化工程１０２は、トグルトレース工程１０６、容量抽出工程１０７、回路再構築工程１０８、スタティック電力解析工程１０９で構成される。
【００２６】
図３はトグルトレース工程１０６の処理内容を説明する図である。ここでは、図３のトグルＡ、トグルＢに示すように、ＦＦ間トグルデータベース１２５のトグル情報を前段ＦＦの出力ポイントからトレースすることにより、ＦＦ間の信号すべてにトグル情報を割り当てるとともに、クロックラインに関しては、図３のトグルＣに示すように、タイミング制約を入力することでトグル情報を与える。
【００２７】
図４はトグルトレース工程１０６の処理方法を詳しく示したフロー図である。図４において、トグルトレース工程１０６は、クロックトグル付与工程１１１、ＦＦ間トグル付与工程１１２、トグル選択工程１１３から構成される。
【００２８】
クロックトグル付与工程１１１はネットリスト１２２とタイミング制約１２３を入力し、タイミング制約１２３からクロック周波数を抽出し、クロックラインに対してトグル情報を付与する工程である。
【００２９】
ＦＦ間トグル付与工程１１２はＦＦ間トグルデータベース１２５とタイミング制約１２３を入力し、前段のＦＦ出力から後段のＦＦに向けてネットリストをトレースし、経路上の配線に対してＦＦ間トグルデータベース１２５から得たトグル情報を付与する工程である。
【００３０】
トグル選択工程１１３は、トグル情報が２重に付与された配線が存在する場合に、付与されたトグル値の最大値もしくは最小値を選択する工程である。
【００３１】
容量抽出工程１０７では仮想配線もしくは実配線を考慮して配線容量を抽出し、これを回路再構築工程１０８およびスタティック電力解析工程１０９へ渡す。
【００３２】
回路再構築工程１０８では、容量抽出工程１０７から得られた配線容量値とトグル情報を元に活性化率が高い配線の容量を小さくするように回路を再構築し、電力最適化されたネットリストを出力する。
【００３３】
スタティック電力解析工程１０９では、配線容量値とトグル情報から回路の消費電力を計算する。
【００３４】
図５は、ここで得られた消費電力値を用いて、さらに電圧降下解析を行う方法を示したフロー図である。ここでは、抵抗抽出工程１１４において半導体集積回路電源ネットワークの抵抗値を抽出し、スタティック電力解析工程１０９から電力値データベース１２７に得られた消費電力値と抵抗抽出工程１１４から得られた抵抗値から電源電圧降下測定工程１１５において電源電圧降下測定を行う。
【００３５】
図６は、以上説明した半導体集積回路の低消費電力設計方法を踏まえて、さらなる電力最適化を達成する方法を示したフロー図である。ここでは、数種類のシミュレーションパターンから作成された複数のＦＦ間トグルデータベース１２５を電力最適化工程１０２に順次入力し、その結果を比較しながら最適な解を選択する手法をとる。
【００３６】
図６において、まず一つ目のＦＦ間トグルデータベース１２５を電力最適化工程１０２に入力することで電力最適化を実施する。その結果出力された仮最適化ネットリスト１２６と他の動作パターンのＦＦ間トグルデータベース１２５とを再度電力最適化工程１０２に入力し、電力値データベース１２７に出力された消費電力値を比較する電力比較工程１１０を実施する。これを繰り返すことにより、複数の動作パターンの中から最適な解を与えることができる最適化ネットリスト１２８を作成する。
【００３７】
図７は、本発明による半導体集積回路の低消費電力設計方法を適用した電力最適化の実施方法を説明するフロー図である。図７において、電力最適化の実施方法は、論理合成工程２０１、配置合成工程２０４、クロックツリーシンセシス工程２０７、配線最適化工程２０８から構成される。
【００３８】
論理合成工程２０１は、スタンダードセル合成工程２０２、電力最適化工程２０３からなり、電力最適化工程２０３においてはＦＦ間トグルデータベース１２５の情報を入力することで、活性化率の高い配線の入力ピン容量を下げるように回路の再構築を行う。
【００３９】
配置合成工程２０４は、配置工程２０５、電力最適化工程２０６からなり、電力最適化工程２０６においてはＦＦ間トグルデータベース１２５の情報を入力することで、仮想配線容量を抽出し活性化率が高い配線の容量を下げるように配置最適化を実施する。
【００４０】
配線最適化工程２０８は、配線工程２０９、電力最適化工程２１０からなり、電力最適化工程２１０においてはＦＦ間トグルデータベース１２５の情報を入力することで、実配線容量を抽出し活性化率が高い配線の容量を下げるように配線最適化を実施する。
【００４１】
これらの工程を実施することで、物理情報（レイアウト情報）の抽象度が高い状態から段階的に電力最適化を行うことができるため、最大の効果を得ることができる。
【００４２】
図８は上記電力最適化方法の実施例における活性化率を表示した図である。図８においては、配置合成工程の電力最適化工程２０６もしくは配線最適化工程の電力最適化工程２１０における、動作パターンのＦＦ間トグルデータベースから得られた活性化率がレイアウト描画上に表示されている。
【００４３】
これはセルグループ毎に活性化率で色分けした電力分布を表示しているため、この表示をもとに不活性領域となっている部分を別電源とすることで、半導体集積回路における動作中のリーク電流を削減するために電源制御を適用する領域を抽出することが可能となる。
【産業上の利用可能性】
【００４４】
本発明の半導体集積回路の低消費電力設計方法は、より抽象度の高いＲＴＬ記述からトグル情報を抽出し、それら情報を論理合成時やレイアウト設計時に適用することにより、消費電力の低減に最大の効果を挙げることができるという効果を有し、半導体集積回路の低消費電力化技術等として有用である。
【図面の簡単な説明】
【００４５】
【図１】本発明の一実施の形態に係る半導体集積回路の低消費電力設計方法を示すフロー図。
【図２】本発明の一実施の形態におけるトグル格納工程の処理内容を説明する図。
【図３】本発明の一実施の形態におけるトグルトレース工程の処理内容を説明する図。
【図４】本発明の一実施の形態におけるトグルトレース工程の処理方法を示すフロー図。
【図５】本発明の一実施の形態における電圧降下解析を行う方法を示すフロー図。
【図６】本発明の一実施の形態における電力最適化の達成方法を示すフロー図。
【図７】本発明を適用した電力最適化の実施方法を説明するフロー図。
【図８】本発明を適用した電力最適化の実施例における活性化率を表示した図。
【図９】従来の半導体集積回路の低消費電力設計方法を示すフロー図。
【符号の説明】
【００４６】
１０１  スタンダードセル合成工程
１０２  電力最適化工程
１０３  シミュレーション工程
１０４  トグル格納工程
１０５  マッピング工程
１０６  トグルトレース工程
１０７  容量抽出工程
１０８  回路再構築工程
１０９  スタティック電力解析工程
１１０  電力比較工程
１１１  クロックトグル付与工程
１１２  ＦＦ間トグル付与工程
１１３  トグル選択工程
１１４  抵抗抽出工程
１１５  電源電圧降下測定工程
１２１  ＲＴＬ記述
１２２  ネットリスト
１２３  タイミング制約
１２４  レジスタ間トグルデータベース
１２５  ＦＦ間トグルデータベース
１２６  仮最適化ネットリスト
１２７  電力値データベース
１２８  最適化ネットリスト
２０１  論理合成工程
２０２  スタンダードセル合成工程
２０３  論理合成工程の電力最適化工程
２０４  配置合成工程
２０５  配置工程
２０６  配置合成工程の電力最適化工程
２０７  クロックツリーシンセシス工程
２０８  配線最適化工程
２０９  配線工程
２１０  配線最適化工程の電力最適化工程
２１１  ＧＤＳ出力工程
【図１】
2006190149.tif 000003
【図２】
2006190149.tif 000004
【図３】
2006190149.tif 000005
【図４】
2006190149.tif 000006
【図５】
2006190149.tif 000007
【図６】
2006190149.tif 000008
【図７】
2006190149.tif 000009
【図８】
2006190149.tif 000010
【図９】
2006190149.tif 000011