(57)【要約】【課題】回路規模の増大を抑制しつつ、回路の誤動作を防止することができる、半導体回路設計装置を提供する。【解決手段】高閾値トランジスタと低閾値トランジスタの両方から成るＭＴセルを含み、予め設定されたタイミング制約を満たすSelective-ＭＴ回路を生成する初期Selective-MT回路生成部１１と、出力先を記憶素子や外部出力端子まで辿っていき、その途中に現れる回路素子と回路素子のインタフェースとなる端子との中に誤動作を起こす可能性のある回路素子や端子が含まれているセルをSelective-ＭＴ回路から抽出し、該セルに含まれるＭＴセルの出力先の信号線と電源電位を供給する信号線との間に挿入されているＰＭＯＳトランジスタを削除し、かつ、抽出したＭＴセルを低閾値セルに置換し回路の論理制約が満たされるようにSelective-ＭＴ回路を再構成するＭＴセル置換部１２とを具備する。【選択図】図１
2007328446.tif 000002
【特許請求の範囲】
【請求項１】
高閾値トランジスタと低閾値トランジスタの両方から成るＭＴセルを含み、予め設定されたタイミング制約を満たすSelective-ＭＴ回路を生成するSelective-ＭＴ回路生成部と、
前記Selective-ＭＴ回路の全てのセルのうち、その出力先を記憶素子や外部出力端子まで辿っていき、途中に現れる回路素子と回路素子のインタフェースとなる端子との中に誤動作を起こす可能性のある回路素子や端子が含まれているセルを抽出し、前記抽出したセルに含まれるＭＴセルの出力先の信号線と電源電位を供給する信号線との間にＰＭＯＳトランジスタが挿入されている場合は前記ＰＭＯＳトランジスタを削除し、かつ、回路の論理制約が満たされるように前記Selective-ＭＴ回路を再構成する回路再構成部と、
を具備することを特徴とする半導体回路設計装置。
【請求項２】
前記回路再構成部は、前記抽出したセルから更にＭＴセルのみを抽出し、前記抽出したＭＴセルを低閾値トランジスタのみから成る低閾値セルに置換し、前記置換されたＭＴセルの出力先の信号線と電源電位を供給する信号線との間にＰＭＯＳトランジスタが挿入されている場合は前記ＰＭＯＳトランジスタを削除することを特徴とする、請求項１に記載の半導体回路設計装置。
【請求項３】
前記回路再構成部は、前記抽出したセルのうち、その出力先に別のＭＴセルを含まない経路が存在するＭＴセルを更に抽出し、前記抽出したＭＴセルの出力先の信号線と電源電位を供給する信号線との間に挿入されているＰＭＯＳトランジスタを削除してラッチを挿入することを特徴とする、請求項１に記載の半導体回路設計装置。
【請求項４】
前記回路再構成部は、前記抽出したセルがＭＴセルである場合は前記ＭＴセルを高閾値トランジスタのみから成る高閾値セルに置換し、前記置換されたＭＴセルの出力先の信号線と電源電位を供給する信号線との間にＰＭＯＳトランジスタが挿入されている場合は前記ＰＭＯＳトランジスタを削除し、前記Selective-ＭＴ回路において予め設定されたタイミング制約条件に違反する経路が存在する場合、前記抽出されたセルの構成を保ったまま、前記Selective-ＭＴ回路の全ての経路がタイミング制約を満たすように回路を再構成することを特徴とする、請求項１に記載の半導体回路設計装置。
【請求項５】
前記回路再構成部は、前記抽出したセルがＭＴセルである場合は前記ＭＴセルを高閾値トランジスタのみから成る高閾値セルに置換し、前記置換されたＭＴセルの出力先の信号線と電源電位を供給する信号線との間にＰＭＯＳトランジスタが挿入されている場合は前記ＰＭＯＳトランジスタを削除するセル抽出部と、入力されたSelective-ＭＴ回路において予め設定されたタイミング制約条件に違反する経路が存在する場合、前記抽出されたセルの構成を保ったまま、前記Selective-ＭＴ回路がタイミング制約を満たすように回路を再構成するセル再構成部と、前記セル再構成部から出力されたSelective-ＭＴ回路のうちタイミング制約を満たさない回路部分に存在し、その出力先を記憶素子や外部出力端子まで辿っていき、その途中に現れる回路素子と回路素子のインタフェースとなる端子との中に誤動作を起こす可能性のある回路素子や端子が含まれており、かつ、その出力先に別のＭＴセルを含まない経路が存在するＭＴセルを更に抽出し、前記抽出したＭＴセルの出力先の信号線と電源電位を供給する信号線との間に挿入されているＰＭＯＳトランジスタを削除してラッチを挿入するホルダセル置換部と、前記ホルダセル置換部から出力されたSelective-ＭＴ回路のうちタイミング制約を満たさない回路部分に存在し、その出力先を記憶素子や外部出力端子まで辿っていき、その途中に現れる回路素子と回路素子のインタフェースとなる端子との中に誤動作を起こす可能性のある回路素子や端子が含まれているＭＴセルを抽出し、前記抽出したＭＴセルを低閾値トランジスタのみから成る低閾値セルに置換し、前記置換されたＭＴセルの出力先の信号線と電源電位を供給する信号線との間にＰＭＯＳトランジスタが挿入されている場合は前記ＰＭＯＳトランジスタを削除するＭＴセル置換部とを具備することを特徴とする、請求項１に記載の半導体回路設計装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＣＭＯＳ論理ＬＳＩのリーク電流を削減する回路を設計する半導体回路設計装置に関する。
【背景技術】
【０００２】
近年、ＬＳＩの微細化や低電圧化に伴い、トランジスタの閾値（Ｖｔｈ）は低下の一途を辿っている。この低Ｖｔｈ化によって、トランジスタのサブスレッショルド・リーク電流が増大するため、携帯電話や携帯端末などの機器では、バッテリー寿命が短くなってしまうことが問題となっている。このリーク電流は、回路が停止しているスタンバイ時、および、回路が動作しているアクティブ時のいずれの状態でも流れる。
【０００３】
従来、リーク電流を削減する手法として、Selective-MT (Multi Threshold) 回路やＭＴ−ＣＭＯＳ回路が提案されている（例えば、特許文献１、非特許文献１参照）。これらの提案に記載されたSelective-MT回路では、半導体回路のうちタイミング設計上のクリティカルパスにあたる論理回路（ＮＡＮＤ回路やインバータ回路など）にはＬｏｗ−Ｖｔｈトランジスタ（低閾値トランジスタ）で構成されたＭＴセルが用いられ、それ以外の論理回路にはＨｉｇｈ―Ｖｔｈトランジスタ（高閾値トランジスタ）で構成された高閾値セルが用いられている。
【０００４】
ＭＴセルには、ＶＳＳ（グランド）線との間にＨｉｇｈ―Ｖｔｈトランジスタが挿入されている。このＨｉｇｈ―Ｖｔｈトランジスタは、ＭＴＥ（ＭＴ−Ｅｎａｂｌｅ）信号によって、アクティブ時にはオン状態、スタンバイ時にはオフ状態となるように制御される。すなわち、スタンバイ時にＨｉｇｈ―Ｖｔｈトランジスタがオフ状態になされることにより、ＭＴセルからグランドへのパスを遮断し、リーク電流を削減する効果がある。
【０００５】
また、出力先にＭＴセル以外のセルが接続されているＭＴセルには、ＶＤＤ（電源）線との間にＰＭＯＳトランジスタが挿入されている。このＰＭＯＳトランジスタはホルダセルとよばれており、ＶＤＤ線からＶＳＳ線へ予期せぬ貫通電流が発生することを防ぐ効果がある。
【０００６】
例えば、ＭＴセルで構成されたインバータの出力が論理値‘０’の状態でスタンバイ状態に入ったとする。該インバータの出力先にホルダセルが挿入されていない場合、該インバータは、ＰＭＯＳトランジスタが非導通状態、ＮＭＯＳトランジスタが非導通状態であり、ＶＤＤ線からもＶＳＳ線からも分離されたフローティング状態になる。このため、該インバータから出力される信号の電位が固定されず、電源電位とグランド電位との中間程度の値になってしまう場合がありうる。このような状態では、例えば該インバータの出力先に高閾値インバータが接続されている場合、高閾値インバータを構成するＰＭＯＳトランジスタとＮＭＯＳトランジスタの両方が導通状態となってしまい、ＶＤＤ線からＶＳＳ線へ貫通電流が発生する。
【０００７】
一方、該インバータの出力先にホルダセルが挿入されている場合、スタンバイ時にＶＤＤ線と該インバータの出力先の信号線とを導通させて、信号線の論理値を‘１’に固定することができるため、高閾値インバータにおける貫通電流の発生を防止することができる。
【０００８】
しかしながら、ホルダセルは、スタンバイ状態における信号線の論理値を、ＭＴセルからの出力信号値にかかわらず常に‘１’に固定してしまうため、回路が誤動作してしまうという問題があった。例えば、ブロックごとにアクティブ状態とスタンバイ状態とを切り替えるような回路において、ＭＴセルで構成されたインバータの出力先の信号線が、該インバータが属するブロック（以下、ブロックＡと示す）での論理としては‘０’となるべきところでスタンバイ状態に入った場合、出力先に挿入されたホルダセルによって論理値‘１’に固定されてしまう。
【０００９】
ここで、該インバータが属するブロックとは別のブロック（以下、ブロックＢと示す）に、該インバータからの出力が入力されるＡＮＤ回路が存在する場合を考える。ブロックＢがアクティブ状態であり、ＡＮＤ回路に入力されるもう１本の信号線の論理値が‘１’である場合、これら２本の信号線の論理積を入力とするＡＮＤ回路の出力先の論理値は、本来ならば論理値‘０’となるべきところ、論理値‘１’となってしまう。すなわち、ＡＮＤ回路の出力先に期待された論理値がセットされず、回路が誤動作してしまうという問題があった。
【００１０】
また、例えば、ブロックＡにおいて、インバータの出力先に高閾値インバータが接続されており、その出力に更にＦ／Ｆ（フリップフロップ）が接続されている場合を考える。該Ｆ／Ｆ（フリップフロップ）が、入力信号が‘０’となったときに、即座にＦ／Ｆの内部データがリセットされる非同期リセット端子を有する場合、ブロックＡがスタンバイ状態に入るとインバータの出力先の信号線の論理値が ‘１’にセットされてしまうため、該インバータの出力が論理値‘０’であっても、スタンバイ状態に入るとすぐにＦ／Ｆにリセットがかかってしまい、回路が誤動作してしまうという問題があった。
【００１１】
この問題を回避する方法として、ホルダセルであるＰＭＯＳトランジスタの代わりにラッチを使うことで、論理値を‘１’に固定することなく、信号線の値を保持することが可能となるが、回路規模や回路面積が増大してしまうという問題が発生してしまう。
【特許文献１】特開２００２−１５０１７号公報（図４）
【非特許文献１】Takeshi Kitahara et al, “Area-efficient Selective Multi-Threshold CMOS Design Methodology for Standby Leakage Power Reduction”, Proc. Design Automation & Test in Europe, pp.646-647, 2005
【発明の開示】
【発明が解決しようとする課題】
【００１２】
本発明は、以上の点に鑑みてなされたもので、回路規模の増大を抑制しつつ、回路の誤動作を防止することができる、半導体回路設計装置を提供することを目的とする。
【課題を解決するための手段】
【００１３】
本発明の一形態に係る半導体回路設計装置は、高閾値トランジスタと低閾値トランジスタの両方から成るＭＴセルを含み、予め設定されたタイミング制約を満たすSelective-ＭＴ回路を生成するSelective-ＭＴ回路生成部と、前記Selective-ＭＴ回路の全てのセルのうち、その出力先を記憶素子や外部出力端子まで辿っていき、その途中に現れる回路素子と回路素子のインタフェースとなる端子との中に誤動作を起こす可能性のある回路素子や端子が含まれているセルを抽出し、前記抽出したセルに含まれるＭＴセルの出力先の信号線と電源電位を供給する信号線との間にＰＭＯＳトランジスタが挿入されている場合は前記ＰＭＯＳトランジスタを削除し、かつ、回路の論理制約が満たされるように前記Selective-ＭＴ回路を再構成する回路再構成部とを具備することを特徴とする。
【発明の効果】
【００１４】
回路規模の増大を抑制しつつ、回路の誤動作を防止することができる、半導体回路設計装置を実現することができる。
【発明を実施するための最良の形態】
【００１５】
以下、図面を参照して本発明の実施の形態を説明する。
【００１６】
（第１の実施の形態）
始めに、本発明の第１の実施の形態に係わる半導体回路設計装置１の構造について、図１を用いて説明する。図１は、本発明の第１の実施の形態に係わる半導体回路設計装置１の構造を説明する概略ブロック図である。
【００１７】
本実施の形態における半導体回路設計装置１は、Selective-ＭＴ回路生成部としての初期Selective-MT回路生成部１１と、回路再構成部としてのＭＴセル置換部１２と、後処理部１３とから構成されている。
【００１８】
初期Selective-MT回路生成部１１では、タイミング制約を満たすようなSelective-MT回路が生成される。タイミング制約を満たすようなSelective-MT回路は、例えば、次のようにして生成される。すなわち、初期Selective-MT回路生成部１１に、高閾値セルのみから成る論理回路とタイミング制約とが入力されると、自動でタイミング解析が行われ、タイミング違反パスに含まれる高閾値セルが高速動作可能なＭＴセルに置き換えられる。これによって、タイミング制約を満たすような初期Selective-MT回路が生成され、ＭＴセル置換部１２に出力される。
【００１９】
ＭＴセル置換部１２では、入力されたSelective-MT回路に含まれるＭＴセルについて、推移的ファンアウト先に誤動作を起こす可能性のあるセルや端子が含まれているか否かが検討され、含まれている場合には該ＭＴセルが低閾値セルに置き換えられる。ここで、ＭＴセルの推移的ファンアウト先とは、ＭＴセルの出力先を記憶素子や外部出力端子まで辿っていき、その途中に現れる回路素子と、回路素子のインタフェースとなる端子や信号線の集合を示している。なお、低閾値セルとは、Ｌｏｗ−Ｖｔｈトランジスタのみで構成されたセルであり、Ｈｉｇｈ−Ｖｔｈトランジスタを介することなくＶＳＳ線に直接接続される点がＭＴセルと異なっている。従って、ＭＴセルが低閾値セルに置換される場合、Ｈｉｇｈ−Ｖｔｈトランジスタを介することなくＶＳＳ線に直接接続されるように信号線の接続が変更される。また、低閾値セルに置き換えられたＭＴセルの出力先にホルダセルが接続されている場合、該ホルダセルも削除される。
【００２０】
このように、ＭＴセルを低閾値セルに置換し、Ｈｉｇｈ−Ｖｔｈトランジスタを介することなくＶＳＳ線と直接接続することで、スタンバイ時にＭＴセルを構成するトランジスタがフローティング状態になるのを防ぐことができ、ホルダセルが不要となるため、ＭＴセルの出力先の信号線の論理値が強制的に‘１’に固定されることを防ぐことができる。従って、ＭＴセルの推移的ファンアウト先に、他のブロックの回路素子や、記憶素子の非同期リセット端子などが接続されている場合にも、これらの素子や端子が誤動作を起こすことを防ぐことができる。
【００２１】
後処理部１３では、ＭＴセル置換部１２から出力された、ＭＴセルが低閾値セルに置換された後のSelective-MT回路について、不要となったＨｉｇｈ―Ｖｔｈトランジスタや信号線などが削除され、最適化されたSelective-MT回路が出力される。
【００２２】
次に、上述した半導体回路設計装置１を用いた半導体回路設計方法について、図２を用いて説明する。図２は、本発明の第１の実施の形態に係わる半導体回路設計の手順を説明するフローチャートである。
【００２３】
まず、ステップＳ１において、タイミング制約を満たすSelective-MT回路が初期Selective-MT回路生成部１１で生成される。ステップＳ１では、例えば、図３に示すような回路が生成される。図３は、タイミング制約を満たすSelective-MT回路の論理回路構成の一例を示す回路図である。
【００２４】
次に、ステップＳ２に進み、ステップＳ１で生成されたSelective-MT回路から、低閾値セルとの置換検討対象となるＭＴセルを一つ抽出する。例えば、図３に示す回路の場合、ブロック２１においては、ＮＡＮＤ２２、インバータ２３，２４の３つのＭＴセルが置換検討対象となるため、これらのＭＴセルのうち、置換未検討のＭＴセルを一つ抽出する。
【００２５】
続いて、ステップＳ３において、ステップＳ２で抽出したＭＴセルについて、推移的ファンアウト先に誤動作を起こす可能性のあるセルや端子が含まれているか否かを判定する。ここで、誤動作を起こす可能性のあるセルや端子とは、例えば、他のブロックの回路素子や、記憶素子の非同期リセット端子などがあげられ、具体的には、図３のＡＮＤ２５やＦ／Ｆ２６の非同期リセット端子がこれに相当する。
【００２６】
ステップＳ３において、推移的ファンアウト先に誤動作を起こす可能性のあるセルや端子が含まれていると判定された場合、ステップＳ４へ進み、検討対象となっているＭＴセルを低閾値セルに置換する。また、置換後の低閾値セルの出力先にホルダセルが接続されている場合、該ホルダセルを削除する。例えば、図３の回路において、ＮＡＮＤ２２とインバータ２３の２つのＭＴセルは、推移的ファンアウト先に他のブロックの回路素子であるＡＮＤ２５や、記憶素子Ｆ／Ｆ２６の非同期リセット端子が含まれているため、ステップＳ４によって低閾値セルに置換される。このとき、ホルダセル２８も削除される。ステップＳ４の処理が終了すると、ステップＳ５へ進む。
【００２７】
一方、ステップＳ３において、推移的ファンアウト先に誤動作を起こす可能性のあるセルや端子が含まれていないと判定された場合、ステップＳ５へ進む。例えば、図３の回路において、ＮＡＮＤ２４のＭＴセルは、推移的ファンアウト先に他のブロックの回路素子や記憶素子の非同期リセット端子が存在しないため、低閾値セルに置換せずにステップＳ５へ進む。
【００２８】
ステップＳ５では、ステップＳ１で生成されたSelective-MT回路に存在する全てのＭＴセルについて、低閾値セルとの置換要否を検討したか否かを判定する。置換検討未実施のＭＴセルが存在すると判定された場合、ステップＳ２に戻り、次の検討対象となるＭＴセルを抽出する。
【００２９】
一方、ステップＳ５において、全てのＭＴセルについて低閾値セルとの置換要否検討が終了していると判定された場合、ステップＳ６に進み、ステップＳ１で生成されたSelective-MT回路においてＭＴセルとＶＳＳ線との間に挿入されているＨｉｇｈ−Ｖｔｈトランジスタのうち、ステップＳ４においてＭＴセルを低閾値セルに置換することで不要となったＨｉｇｈ−Ｖｔｈトランジスタや、不要な信号線などを削除し、Selective-MT回路の設計を終了する。例えばステップＳ１において図３に示す回路が生成された場合、以上のステップＳ２からステップＳ６の手順を実行することにより、図４に示すようなSelective-MT回路に変換される。図４は、本発明の第１の実施の形態における半導体回路設計装置１で設計されたSelective-MT回路の論理回路構成の一例を示す回路図である。なお、回路図において、黒塗りのセルは低閾値セルを示している。
【００３０】
このように、本実施の形態においては、タイミング制約を満たすSelective-MT回路を基に、該回路において推移的ファンアウト先に誤動作を起こす可能性のあるセルや端子が含まれているＭＴセルを低閾値セルに置換し、Ｈｉｇｈ−Ｖｔｈトランジスタを介することなくＶＳＳ線と直接接続するようにしてSelective-MT回路を設計しているので、スタンバイ時にＭＴセルを構成するトランジスタがフローティング状態になることがない。これにより、ホルダセルが不要となるため、ＭＴセルの出力先の信号線の論理値が強制的に‘１’に固定されることを防ぐことができるため、推移的ファンアウト先に存在するセルや端子が誤動作を起こすことを防ぐことができる。
【００３１】
また、ＭＴセルを低閾値セルに置換することで、Ｈｉｇｈ−Ｖｔｈトランジスタやホルダセルを削除することができるため、回路規模や回路面積を縮小することができる。更に、推移的ファンアウト先に誤動作を起こす可能性のあるセルや端子が含まれているＭＴセルのみを低閾値セルに置換するため、スタンバイ時のリーク電流の増加を最小限にとどめることができる。
【００３２】
（第２の実施の形態）
次に、本発明の第２の実施の形態に係わる半導体回路設計装置１Ａの構造について、図５を用いて説明する。図５は、本発明の第２の実施の形態に係わる半導体回路設計装置１Ａの構造を説明する概略ブロック図である。本実施の形態の半導体回路設計装置１Ａは、図１を用いて説明した第１の実施の形態の半導体回路設計装置１において、ＭＴセル置換部１２をホルダセル置換部１２ａに置き換えたものであるので、同一の構成要素については、同一の符号を付して説明を省略する。
【００３３】
回路再構成部であるホルダセル置換部１２ａでは、入力されたSelective-MT回路に含まれるＭＴセルのうち、推移的ファンアウト先に誤動作を起こす可能性のあるセルや端子が含まれており、かつ、出力先に別のＭＴセルを含まない経路が存在するＭＴセルが抽出される。そして、抽出されたＭＴセルの出力先に接続されているホルダセルが削除され、替わりにラッチが挿入される。また、ラッチの動作タイミングを制御するために、該ラッチと同じブロックに存在するＭＴセルとＶＳＳ線との間に挿入されたＨｉｇｈ−ＶｔｈトランジスタにＭＴＥ信号を供給する信号線と、ラッチとが接続される。
【００３４】
すなわち、ホルダセルが動作することにより、該ホルダセルよりも下流に配置されたセルや端子が誤動作を起こす可能性がある場合に限り、該ホルダセルをラッチに置換することで、ＭＴセルの出力先の信号線の論理値が強制的に‘１’に固定されることを防ぐことができる。従って、ＭＴセルの推移的ファンアウト先に、他のブロックの回路素子や、記憶素子の非同期リセット端子などが接続されている場合にも、これらの素子や端子が誤動作を起こすことを防ぐことができる。
【００３５】
次に、上述した半導体回路設計装置１Aを用いた半導体回路設計方法について、図６を用いて説明する。図６は、本発明の第２の実施の形態に係わる半導体回路設計の手順を説明するフローチャートである。
【００３６】
まず、ステップＳ１１において、タイミング制約を満たすSelective-MT回路が初期Selective-MT回路生成部１１で生成される。次に、ステップＳ１２に進み、ステップＳ１１で生成されたSelective-MT回路からＭＴセルを一つ抽出する。続いて、ステップＳ１３において、ステップＳ１２で抽出したＭＴセルについて、推移的ファンアウト先に誤動作を起こす可能性のあるセルや端子が含まれているか否かを判定する。なお、ステップＳ１１，ステップＳ１２，ステップＳ１３の処理は、図２を用いて説明した第１の実施の形態におけるステップＳ１，ステップＳ２，ステップＳ３の処理と同様の処理である。
【００３７】
ステップＳ１３において、推移的ファンアウト先に誤動作を起こす可能性のあるセルや端子が含まれていないと判定された場合、ステップＳ１６に進む。
【００３８】
一方、ステップＳ１３において、推移的ファンアウト先に誤動作を起こす可能性のあるセルや端子が含まれていると判定された場合、ステップＳ１４へ進み、検討対象となっているＭＴセルの出力先の全ての経路上に他のＭＴセルが存在するか否を判定する。例えば、ステップＳ１１において図３に示す回路が生成された場合、ＮＡＮＤ２２とインバータ２３の２つのＭＴセルは、推移的ファンアウト先に他のブロックの回路素子であるＡＮＤ２５や記憶素子Ｆ／Ｆ２６の非同期リセット端子が含まれているため、ステップＳ１４の処理が実施される。
【００３９】
ステップＳ１４において、検討対象となっているＭＴセルの出力先の全ての経路上に、他のＭＴセルが存在すると判定された場合、ステップＳ１６に進む。例えば、図３の回路において、ＮＡＮＤ２２からの出力は、ＭＴセルであるインバータ２３に入力されており、これ以外の出力経路を持たないため、ステップＳ１６に進む。
【００４０】
一方、ステップＳ１４において、検討対象となっているＭＴセルの出力先に、他のＭＴセルが存在しない経路があると判定された場合、ステップＳ１５に進み、該ＭＴセルの出力先に挿入されているホルダセルを削除し、替わりにラッチを挿入する。また、ラッチのタイミングを制御するために、該ラッチと同じブロックに存在するＭＴセルとＶＳＳ線との間に挿入されたＨｉｇｈ−ＶｔｈトランジスタにＭＴＥ信号を供給する信号線と、ラッチとを接続する。
【００４１】
例えば、図３の回路において、インバータ２３の出力は、ＭＴセルであるインバータ２４と、高閾値セルであるインバータ２７とに入力されている。従って、インバータ２３は、出力先にＭＴセルが存在しない経路を有するため、インバータ２３の出力先に挿入されているホルダセル２８を削除し、替わりにラッチ２９を挿入する（図７参照）。図７は、本発明の第２の実施の形態における半導体回路設計装置１で設計されたSelective-MT回路の論理回路構成の一例を示す回路図である。
【００４２】
また、ラッチ２９の動作タイミングを制御するために、ブロック２１に存在するＭＴセル、例えばインバータ２３とＶＳＳ線との間に挿入されたＨｉｇｈ−Ｖｔｈトランジスタ３０にＭＴＥ信号を供給する信号線ＭＴＥ１と、ラッチ２９とを接続する。ステップＳ１５の処理が終了すると、ステップＳ１６へ進む。
【００４３】
ステップＳ１６では、ステップＳ１１で生成されたSelective-MT回路に存在する全てのＭＴセルについて、出力先に挿入されたホルダセルとラッチの置換要否を検討したか否かを判定する。置換検討未実施のＭＴセルが存在すると判定された場合、ステップＳ１２に戻り、次の検討対象となるＭＴセルを抽出する。
【００４４】
一方、ステップＳ１６において、全てのＭＴセルについて出力先に挿入されたホルダセルとラッチの置換要否検討が終了していると判定された場合、Selective-MT回路の設計を終了する。例えばステップＳ１１において図３に示す回路が生成された場合、以上のステップＳ１２からステップＳ１６の手順を実行することにより、図７に示すようなSelective-MT回路に変換される。
【００４５】
このように、本実施の形態においては、タイミング制約を満たすSelective-MT回路を基に、該回路において、推移的ファンアウト先に誤動作を起こす可能性のあるセルや端子が含まれており、かつ、出力先に他のＭＴセルが存在しない経路が存在するＭＴセルについて、該ＭＴセルの出力先に挿入されているホルダセルをラッチに置換してSelective-MT回路を設計しているので、回路を誤動作させる要因となりうるＭＴセルの出力先の信号線の論理値が強制的に‘１’に固定されることを防ぐことができるため、推移的ファンアウト先に存在するセルや端子が誤動作を起こすことを防ぐことができる。
【００４６】
なお、ホルダセルをラッチに置換することで回路規模や回路面積は増大するが、全てのホルダセルを置換するのではなく、回路の誤動作の要因となりうるホルダセルのみを抽出してラッチに置換しているため、回路規模や回路面積の増大を必要最低限にとどめることができる。
【００４７】
（第３の実施の形態）
次に、本発明の第３の実施の形態に係わる半導体回路設計装置１Ｂの構造について、図８を用いて説明する。図８は、本発明の第３の実施の形態に係わる半導体回路設計装置１Ｂの構造を説明する概略ブロック図である。本実施の形態の半導体回路設計装置１Ｂは、図１を用いて説明した第１の実施の形態の半導体回路設計装置１において、ＭＴセル置換部１２を、タイミング最適化処理部１２ｂに置き換えたものであるので、同一の構成要素については、同一の符号を付して説明を省略する。
【００４８】
回路再構成部としてのタイミング最適化処理部１２ｂでは、入力されたSelective-MT回路に含まれる全てのセル（ＭＴセル及び高閾値セル）のうち、推移的ファンアウト先に誤動作を起こす可能性のあるセルや端子が含まれているセルが抽出される。そして、抽出されたセルのうち、ＭＴセルは同じ論理を持つ高閾値セルに置換される。なお、高閾値セルに置換されたＭＴセルの出力先に接続されているホルダセルは削除され、Ｈｉｇｈ−Ｖｔｈトランジスタを介さずに直接ＶＳＳ線とセルとが接続されるように信号線が再配線される。
【００４９】
更に、抽出された高閾値セルと、ＭＴセルから置換された高閾値セルとに対してドントタッチ指定がなされ、回路全体のタイミング最適化処理が実行される。ここで、ドントタッチ指定とは、指定されたセルがタイミング最適化処理の対象外となるように設定する処理をいい、ドントタッチ指定がなされた高閾値セルは、タイミング最適化処理後も低閾値セルやＭＴセルに置換されることなく高閾値セルのままになされる。
【００５０】
すなわち、誤動作を起こす可能性のあるセルや端子を含む経路に存在するセルを全て高閾値セルに置換することで、該回路からＭＴセルやホルダセルを削除することができるため、素子や端子が誤動作を起こすことを防ぐことができる。また、ＭＴセルから高閾値セルへの置換によって遅延時間が大きくなるが、タイミング制約上のクリティカルパスに存在し、かつ、誤動作を起こす可能性のあるセルや端子を含む経路以外の経路に存在する高閾値セルをＭＴセルに置換するようなタイミング最適化処理を施すことにより、遅延時間を縮小することができる。
【００５１】
次に、上述した半導体回路設計装置１Ｂを用いた半導体回路設計方法について、図９を用いて説明する。図９は、本発明の第３の実施の形態に係わる半導体回路設計の手順を説明するフローチャートである。
【００５２】
まず、ステップＳ２１において、タイミング制約を満たすSelective-MT回路が初期Selective-MT回路生成部１１で生成される。次に、ステップＳ２２に進み、ステップＳ２１で生成されたSelective-MT回路からセル（ＭＴセルまたは高閾値セル）を一つ抽出する。続いて、ステップＳ２３において、ステップＳ２２で抽出したセルについて、推移的ファンアウト先に誤動作を起こす可能性のあるセルや端子が含まれているか否かを判定する。
【００５３】
ステップＳ２３において、推移的ファンアウト先に誤動作を起こす可能性のあるセルや端子が含まれていないと判定された場合、ステップＳ２７に進む。一方、ステップＳ２３において、推移的ファンアウト先に誤動作を起こす可能性のあるセルや端子が含まれていると判定された場合、ステップＳ２４へ進む。例えば、ステップＳ２１において図３に示す回路が生成され、ステップＳ２２において、ＮＡＮＤ２２、インバータ２３（以上、ＭＴセル）もしくはインバータ２７（高閾値セル）が抽出されている場合、これらのセルは、推移的ファンアウト先に他のブロックの回路素子であるＡＮＤ２５や記憶素子Ｆ／Ｆ２６の非同期リセット端子が含まれているため、ステップＳ２４へ進む。
【００５４】
ステップＳ２４では、ステップＳ２２において抽出されたセルがＭＴセルであるか否かが判定される。ＭＴセルである場合、ステップＳ２５に進み、該ＭＴセルを同じ論理を持つ高閾値セルに置換する。また、出力先にホルダセルが存在する場合、該ホルダセルを削除する。更に、Ｈｉｇｈ−Ｖｔｈトランジスタを介さずに直接ＶＳＳ線とセルとが接続されるように信号線を再配線する。ステップＳ２５の処理が終了すると、ステップＳ２６へ進む。
【００５５】
例えば、図３におけるＮＡＮＤ２２は、ステップＳ２５の処理によって高閾値セル４１に置換され、Ｈｉｇｈ−Ｖｔｈトランジスタ３０を介さずに直接ＶＳＳ線に接続されるよう再配線される（図１０参照）。図１０は、本発明の第３の実施の形態における半導体回路設計装置１Ｂで設計されたSelective-MT回路の論理回路構成の一例を示す回路図である。また、図３におけるインバータ２３は、ステップＳ２５の処理によって高閾値セル４２に置換され、Ｈｉｇｈ−Ｖｔｈトランジスタ３０を介さずに直接ＶＳＳ線に接続されるよう再配線される。更に、インバータ２３の出力先に挿入されていたホルダセル２８が削除される（図１０参照）。
【００５６】
一方、ステップＳ２４において、ステップＳ２２において抽出されたセルがＭＴセルでない、すなわち高閾値セルであると判定された場合、ステップＳ２６へ進む。ステップＳ２６では、ステップＳ２２において抽出されたセルを、後に行われるタイミング最適化処理の対象外とするようドントタッチ指定する。ステップＳ２６の処理が終了すると、ステップＳ２７へ進む。
【００５７】
ステップＳ２７では、ステップＳ２１で生成されたSelective-MT回路に存在する全てのセルについて、ステップＳ２３の判定が行われたか否かを判定する。ステップＳ２３の判定が未実施のセルが存在すると判定された場合、ステップＳ２２に戻り、次の判定対象となるセルを抽出する。
【００５８】
一方、ステップＳ２７において、全てのセルについてステップＳ２３の判定が終了していると判定された場合、ステップＳ２８に進み、タイミング制約を満たすように回路全体のタイミング最適化処理を実行する。最後にステップＳ２９において、不要となったＨｉｇｈ−Ｖｔｈトランジスタや配線を削除し、Selective-MT回路の設計を終了する。なお、ステップＳ２８においては、ステップＳ２６においてドントタッチ指定がなされたセルについては、高閾値セルからＭＴセルへの置換が行われないように処理の対象外として最適化処理を実行する。
【００５９】
例えばステップＳ２１において図３に示す回路が生成されており、ＮＡＮＤ２２、インバータ２３、ＡＮＤ２５を通る経路がタイミング上のクリティカルパスである場合、以上のステップＳ２２からステップＳ２９の手順を実行することにより、図１０に示すようなSelective-MT回路に変換される。
【００６０】
すなわち、ステップＳ２５において、ＮＡＮＤ２２とインバータ２３とがそれぞれ高閾値セル４１、４２に置換されて、Ｈｉｇｈ−Ｖｔｈトランジスタ３０を介さずに直接ＶＳＳ線に接続されるよう信号線が再接続される。また、ホルダセル２７が削除される。次に、ステップＳ２６において、ＭＴセルから置換された高閾値セル４１、４２、及びインバータ２７がドントタッチ指定される。ステップＳ２５におけるＭＴセルから高閾値セルへの置換によって、高閾値セル４１、４２、ＡＮＤ２５を通るクリティカルパスの信号遅延時間が増大し、タイミング制約を満たさなくなってしまった場合、更に、ステップＳ２８のタイミング最適化処理によって、クリティカルパス上に存在するドントタッチ指定がなされていない高閾値セル、すなわちＡＮＤ２５が同じ論理を持つＭＴセル４３に置換される。
【００６１】
最後に、ステップＳ２９において、どのＭＴセルとも接続されていないＨｉｇｈ−Ｖｔｈトランジスタ３０や不要となった信号線を削除し、図１０に示す回路の設計を完了する。
【００６２】
このように、本実施の形態においては、タイミング制約を満たすSelective-MT回路を基に、該回路において、誤動作を起こす可能性のあるセルや端子を含む経路に存在するセルを全て高閾値セルに置換してSelective-MT回路する設計ことで、該経路に存在するホルダセルを削除することができるため、素子や端子が誤動作を起こすことを防ぐことができる。
【００６３】
なお、ＭＴセルから高閾値セルへの置換によって遅延時間が大きくなるが、タイミング制約上のクリティカルパスに存在し、かつ、誤動作を起こす可能性のあるセルや端子を含む経路に存在しない高閾値セルをＭＴセルに置換するようなタイミング最適化処理を施すことにより、遅延時間を縮小することができる。
【００６４】
（第４の実施の形態）
次に、本発明の第４の実施の形態に係わる半導体回路設計装置１Ｃの構造について、図１１を用いて説明する。図１１は、本発明の第４の実施の形態に係わる半導体回路設計装置１Ｃの構造を説明する概略ブロック図である。図１１に示すように、本実施の形態の半導体回路設計装置１Ｃは、初期Selective-MT回路生成部１１と、回路再構成部１４と、後処理部１３とから構成されている。なお、初期Selective-MT回路生成部１１と後処理部１３とは、図１を用いて説明した第１の実施の形態の半導体回路設計装置１と同一の構成要素であるので、説明を省略する。
【００６５】
回路再構成部１４は、タイミング最適化処理部１２ｂと、ホルダセル置換部１２ａと、ＭＴセル置換部１２とを有している。回路再構成部１４では、初期Selective-MT回路生成部１１で生成されたタイミング制約を満たすSelective-MT回路が、誤動作が起きないように再構成される。
【００６６】
具体的には、まず、タイミング最適化処理部１２ｂにおいて、タイミング制約を満たすSelective-MT回路について、誤動作を起こす可能性のあるセルや端子を含む経路に存在するセルを全て高閾値セルに置換し、また、タイミング制約上のクリティカルパスに存在し、かつ、誤動作を起こす可能性のあるセルや端子を含む経路以外の経路に存在する高閾値セルをＭＴセルに置換するようなタイミング最適化処理が施される。タイミング最適化処理を施してもタイミング制約が満たされない部分が存在する場合、当該回路部分のドントタッチ指定を解除してタイミング最適化処理を施す。
【００６７】
また、当該回路部分に対し、ホルダセル置換部１２ａにおいて、推移的ファンアウト先に誤動作を起こす可能性のあるセルや端子が含まれており、かつ、出力先に別のＭＴセルを含まない経路が存在するＭＴセルに接続されているホルダセルを削除し、ラッチを挿入する。
【００６８】
ホルダセルとラッチとの置換によってもタイミング制約が満たされない部分が存在する場合、当該回路部分に存在するラッチをホルダセルに戻した後、ＭＴセル置換部１２において、推移的ファンアウト先に誤動作を起こす可能性のあるセルや端子が含まれている経路に存在するＭＴセルを低閾値セルに置換する。
【００６９】
すなわち、回路再構成部１４には、上述した第１の実施の形態から第３の実施の形態の半導体回路設計装置１，１Ａ，１Ｂがそれぞれ有している、誤動作を起こす可能性のあるセルや端子を含む経路に存在するホルダセルを削除する機能が全て含まれている。回路全体がタイミング制約を満たすまで、これらの機能を順に適用してホルダセルを削除していくことにより、回路再構成に要する時間や、再構成後の回路規模・回路面積・リーク電流量などを総合的に勘案して最適な回路を短時間で実現することができる。
【００７０】
次に、上述した半導体回路設計装置１Ｃを用いた半導体回路設計方法について、図１２を用いて説明する。図１２は、本発明の第４の実施の形態に係わる半導体回路設計の手順を説明するフローチャートである。
【００７１】
まず、ステップＳ３１において、タイミング制約を満たすSelective-MT回路を初期Selective-MT回路生成部１１で生成する。また、回路再構成部１４のタイミング最適化処理部１２ｂにおいて、生成されたSelective-MT回路に含まれるセルのうち、誤動作を起こす可能性のあるセルや端子を含む経路に存在するセルを全て高閾値セルに置換し、また、タイミング制約上のクリティカルパスに存在し、かつ、誤動作を起こす可能性のあるセルや端子を含む経路以外の経路に存在する高閾値セルをＭＴセルに置換するようなタイミング最適化処理を施す。なお、ステップＳ３１の処理は、第３の実施の形態における半導体回路設計の処理手順と同様であり、具体的には、図９におけるステップＳ２１からステップＳ２９の一連の処理を行う。
【００７２】
次に、ステップＳ３２に進み、ステップＳ３１で生成されたSelective-MT回路がタイミング制約を満たしているか否かを判定する。タイミング制約を満たしているか否かは、例えば、回路のタイミング解析を行い、当該回路に含まれるセルのタイミングスラックが負であるか否かによって判定することができる。タイミングスラックが負である場合、当該回路部分はタイミング制約を満たしていないと判定される。ステップＳ３２において、Selective-MT回路全体がタイミング制約を満たしていると判定した場合、回路の設計を完了する。一方、ステップＳ３２において、Selective-MT回路はタイミング制約が満たされていないと判定した場合、ステップＳ３３に進む。
【００７３】
ステップＳ３３では、ステップＳ３２においてタイミング制約が満たされていないと判定された回路部分に関し、ステップＳ３１においてドントタッチ指定がなされているセルの指定を解除し、当該回路部分のタイミング最適化処理を行う。このとき、ステップＳ３２において、タイミング制約が満たされていると判定された回路部分は最適化対象外とし、
ステップＳ３１で生成した回路構成を保つようにする。
【００７４】
続くステップＳ３４では、回路再構成部１４のホルダセル置換部１２ａにおいて、ステップＳ３３においてタイミング最適化処理を行った回路部分に関し、推移的ファンアウト先に誤動作を起こす可能性のあるセルや端子が含まれており、かつ、出力先に別のＭＴセルを含まない経路が存在するＭＴセルを抽出する。そして、抽出されたＭＴセルの出力先に接続されているホルダセルを削除し、替わりにラッチを挿入する。なお、ステップＳ３４の処理は、第２の実施の形態における半導体回路設計の処理手順と同様であり、具体的には、図６におけるステップＳ１２からステップＳ１７の一連の処理を行う。
【００７５】
次に、ステップＳ３５に進み、ステップＳ３４で生成された回路部分がタイミング制約を満たしているか否かを判定する。判定は、例えばステップＳ３２と同様の方法で行う。ステップＳ３５において、Selective-MT回路全体がタイミング制約を満たしていると判定した場合、回路の設計を完了する。一方、ステップＳ３５において、Selective-MT回路はタイミング制約が満たされていないと判定した場合、ステップＳ３６に進む。
【００７６】
ステップＳ３６では、ステップＳ３５においてタイミング制約が満たされていないと判定された回路部分に関し、ステップＳ３４で挿入されたラッチを削除してホルダセルを挿入し、当該回路部分をステップＳ３４実施前の回路構成に戻す。
【００７７】
最後にステップＳ３７において、回路再構成部１４のＭＴセル置換部１２において、ステップＳ３５においてタイミング制約が満たされていないと判定された回路部分に関し、推移的ファンアウト先に誤動作を起こす可能性のあるセルや端子が含まれているＭＴセルを抽出する。そして、抽出されたＭＴセルを低閾値セルに置換し、不要となったホルダセルを削除し、回路の設計を完了する。なお、このステップＳ３７の処理は、第１の実施の形態における半導体回路設計の処理手順と同様であり、具体的には、図２におけるステップＳ２からステップＳ６の一連の処理を行う。
【００７８】
このように、本実施の形態においては、回路全体がタイミング制約を満たすまで、第１から第３の実施の形態において説明した回路設計手順を順に適用し、回路の誤動作を引き起こす可能性のあるホルダセルを削除していくことにより、回路再構成に要する時間や、再構成後の回路規模・回路面積・リーク電流量などを総合的に勘案して最適であり、かつ素子や端子が誤動作を起こさない回路を短時間で実現することができる。
【図面の簡単な説明】
【００７９】
【図１】本発明の第１の実施の形態に係わる半導体回路設計装置１の構造を説明する概略ブロック図。
【図２】本発明の第１の実施の形態に係わる半導体回路設計の手順を説明するフローチャート。
【図３】タイミング制約を満たす初期Selective-MT回路の論理回路構成の一例を示す回路図。
【図４】本発明の第１の実施の形態における半導体回路設計装置１で設計されたSelective-MT回路の論理回路構成の一例を示す回路図。
【図５】本発明の第２の実施の形態に係わる半導体回路設計装置１Ａの構造を説明する概略ブロック図。
【図６】本発明の第２の実施の形態に係わる半導体回路設計の手順を説明するフローチャート。
【図７】本発明の第２の実施の形態における半導体回路設計装置１Ａで設計されたSelective-MT回路の論理回路構成の一例を示す回路図。
【図８】本発明の第３の実施の形態に係わる半導体回路設計装置１Ｂの構造を説明する概略ブロック図。
【図９】本発明の第３の実施の形態に係わる半導体回路設計の手順を説明するフローチャート。
【図１０】本発明の第３の実施の形態における半導体回路設計装置１Ｂで設計されたSelective-MT回路の論理回路構成の一例を示す回路図。
【図１１】本発明の第４の実施の形態に係わる半導体回路設計装置１Ｃの構造を説明する概略ブロック図。
【図１２】本発明の第４の実施の形態に係わる半導体回路設計の手順を説明するフローチャート。
【符号の説明】
【００８０】
１…半導体回路設計装置、１１…初期Selective-MT回路生成部、１２…ＭＴセル置換部、１３…後処理部、
【図１】
2007328446.tif 000003
【図２】
2007328446.tif 000004
【図３】
2007328446.tif 000005
【図４】
2007328446.tif 000006
【図５】
2007328446.tif 000007
【図６】
2007328446.tif 000008
【図７】
2007328446.tif 000009
【図８】
2007328446.tif 000010
【図９】
2007328446.tif 000011
【図１０】
2007328446.tif 000012
【図１１】
2007328446.tif 000013
【図１２】
2007328446.tif 000014