(57)【要約】【課題】  静的タイミングの検証によって機能モジュール間におけるディレイ違反を検出する。【解決手段】  ディレイ検出ツールによって、信号配線ネットにおけるネットディレイとネットトランジッションを計算し（ステップＳ１０１）、信号配線ネットの転送仕様と出力側モジュールに設けられたドライバセルの制御方式とに基づいてドライブ期間を決定する（ステップＳ１０２）。信号配線ネットのネットディレイとトランジッションとドライブ期間とより、以下の判定式の条件を満たしているかをチェックする（ステップＳ１０３）。ネットドライブ期間−（ネットディレイ＋ネットトランジッション／２）≧０、条件を満たさない信号配線ネットはディレイ違反とし（ステップＳ１０４）、ステップＳ１０１〜Ｓ１０３の処理を実行する。条件を満たす場合、トランジッションチェックが終了となる。【選択図】  図１
2006252032.tif 000002
【特許請求の範囲】
【請求項１】
半導体集積回路装置に設けられた機能モジュールにおける信号配線ネットのディレイ違反を計算機システムによって静的タイミングで検証する半導体集積回路装置の設計方法であって、
前記機能モジュール間における信号配線ネットのネットディレイ、およびネットトランジッションを計算する第１の工程と、
前記信号配線ネットの転送仕様、および出力側の前記機能モジュールに設けられたドライバセルの制御方式から、前記信号配線ネットのドライブ期間を決定する第２の工程と、
前記第１の工程において計算されたネットディレイとネットトランジッション、および前記第２の工程において決定された前記信号配線ネットのドライブ期間とから、前記機能モジュールにおける信号配線ネットのディレイ違反があるか否かをチェックする第３の工程とを有すること特徴とする半導体集積回路装置の設計方法。
【請求項２】
請求項１記載の半導体集積回路装置の設計方法において、
前記第３の工程は、
前記第１の工程において計算されたネットディレイの時間とネットトランジッションの１／２の時間とを加えた期間が、前記第２の工程において決定された前記信号配線ネットのドライブ期間内に収まっているか否かをチェックし、前記信号配線ネットのドライブ期間内に収まっていない場合に前記機能モジュールにおける信号配線ネットのディレイ違反を検出することを特徴とする半導体集積回路装置の設計方法。
【請求項３】
請求項１または２記載の半導体集積回路装置の設計方法において、
前記第２の工程は、
出力側の前記機能モジュールに設けられたドライバセルの制御端子からパスをトレースし、制御信号を出力しているセルを検出する工程と、
検出した前記セルがクロック信号を出力している際に、前記信号配線ネットのドライブ期間をクロック信号の１／２サイクルに設定し、検出した前記セルがラッチの場合、前記信号配線ネットのドライブ期間をクロック信号の１サイクル分に設定する工程とを有することを特徴とする半導体集積回路装置の設計方法。
【請求項４】
請求項３記載の半導体集積回路装置の設計方法において、
検出した前記セルがクロック信号を出力している、またはラッチのいずれでもない場合に、前記ドライバセルのドライブ期間を外部入力された設定値に基づいて設定する工程を有することを特徴とする半導体集積回路装置の設計方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、半導体集積回路装置の設計技術に関し、特に、機能モジュール静的タイミングによるディレイ違反の検証に有効な技術に関する。
【背景技術】
【０００２】
半導体集積回路装置における論理回路の大規模化が進むにしたがって、該論理回路における信号の遅延時間などを精密に算出することが重要となっている。
【０００３】
本発明者が検討したところによれば、論理回路（機能モジュール）の信号遅延時間をチェックするツールとして、たとえば、ＥＤＡ（Ｅｌｅｃｔｒｏｎｉｃｓ  Ｄｅｓｉｇｎ  Ａｕｔｏｍａｔｉｏｎ）などにおける静的タイミング検証ツールなどが広く用いられている。
【０００４】
この静的タイミング検証ツールでは、たとえば、機能モジュール間における最大トランジッション（ｔｒａｎｓｉｔｉｏｎ：信号の立ち上がり／立ち下がり時間）をチェックする場合、出力側モジュールから受け側モジュールに信号が出力される際に信号配線ネットのトランジッションが受け側モジュールに設定された制限値以内か否かをチェックしている。
【０００５】
また、セットアップチェックでは、出力側モジュールに設けられレジスタセルと受け側モジュールに設けられたレジスタセルとの間のパスディレイが転送制限時間以内であるか否かをチェックしている。
【発明の開示】
【発明が解決しようとする課題】
【０００６】
ところが、上記のような論理回路の信号遅延時間のチェック技術では、次のような問題点があることが本発明者により見い出された。
【０００７】
すなわち、静的タイミング検証ツールによる最大トランジッション（信号の立ち上がり／立ち下がり時間）チェックの場合、信号配線ネットのドライブ期間が考慮されておらず、該ドライブ期間中にトランジッションが変化するかをチェックすることができず、実際の動作時にディレイ違反などが発生してしまうという問題がある。
【０００８】
また、セットアップチェックでは、信号配線ネットのトランジッションが考慮されておらず、この場合には、信号配線ネットのトランジッションが原因となるディレイ違反を検出することができないという問題がある。
【０００９】
本発明の目的は、静的タイミングの検証によって機能モジュール間におけるディレイ違反を検出する技術を提供することにある。
【００１０】
本発明の前記ならびにそのほかの目的と新規な特徴については、本明細書の記述および添付図面から明らかになるであろう。
【課題を解決するための手段】
【００１１】
本願において開示される発明のうち、代表的なものの概要を簡単に説明すれば、次のとおりである。
【００１２】
本発明は、半導体集積回路装置に設けられた機能モジュールにおける信号配線ネットのディレイ違反を計算機システムによって静的タイミングで検証する半導体集積回路装置の設計方法であって、該機能モジュール間における信号配線ネットのネットディレイ、およびネットトランジッションを計算する第１の工程と、信号配線ネットの転送仕様、および出力側の機能モジュールに設けられたドライバセルの制御方式から、信号配線ネットのドライブ期間を決定する第２の工程と、第１の工程において計算されたネットディレイとネットトランジッション、および第２の工程において決定された信号配線ネットのドライブ期間とから、機能モジュールにおける信号配線ネットのディレイ違反があるか否かをチェックする第３の工程とを有するものである。
【００１３】
また、本願のその他の発明の概要を簡単に示す。
【００１４】
本発明は、前記第３の工程が、第１の工程において計算されたネットディレイの時間とネットトランジッションの１／２の時間とを加えた期間が、第２の工程において決定された信号配線ネットのドライブ期間内に収まっているか否かをチェックし、該信号配線ネットのドライブ期間内に収まっていない場合に機能モジュールにおける信号配線ネットのディレイ違反を検出するものである。
【００１５】
また、本発明は、前記第２の工程が、出力側の機能モジュールに設けられたドライバセルの制御端子からパスをトレースし、制御信号を出力しているセルを検出する工程と、検出したセルがクロック信号を出力している際に、信号配線ネットのドライブ期間をクロック信号の１／２サイクルに設定し、検出したセルがラッチの場合、信号配線ネットのドライブ期間をクロック信号の１サイクル分に設定する工程とを有するものである。
【００１６】
さらに、本発明は、前記検出したセルがクロック信号を出力している、またはラッチのいずれでもない場合に、ドライバセルのドライブ期間を外部入力された設定値に基づいて設定する工程を有するものである。
【００１７】
本発明の前記ならびにそのほかの目的と新規な特長は、本発明書の記述および添付図面から明らかになるであろう。
【発明の効果】
【００１８】
本願において開示される発明のうち、代表的なものによって得られる効果を簡単に説明すれば以下のとおりである。
【００１９】
（１）静的タイミング検証により信号配線ネットにおけるトランジッションのディレイ違反を検出することが可能となる。
【００２０】
（２）上記（１）により、半導体集積回路装置の開発コストを大幅に低減することが可能となり、該半導体集積回路装置の信頼性を向上させることができる。
【発明を実施するための最良の形態】
【００２１】
以下、本発明の実施の形態を図面に基づいて詳細に説明する。なお、実施の形態を説明するための全図において、同一の部材には原則として同一の符号を付し、その繰り返しの説明は省略する。
【００２２】
図１は、本発明の一実施の形態によるトランジッションチェックの処理例を示すフローチャート、図２は、本発明の一実施の形態によるクロック制御による出力側モジュールの構成例を示したブロック図、図３は、図２の出力側モジュールに設けられたドライバセルの信号タイミングチャート、図４は、本発明の一実施の形態によるラッチ制御による出力側モジュールの構成例を示したブロック図、図５は、図４の出力側モジュールに設けられたドライバセルの信号タイミングチャート、図６は、図１におけるドライブ期間の決定の処理例を示すフローチャートである。
【００２３】
本実施の形態において、ディレイ違反の検出技術は、回路シミュレータなどの計算機システムにより、ＥＤＡの機能の１つであるディレイ計算ツールを用いてモジュール間の信号配線ネットにおけるトランジッション起因のディレイ違反を検出する技術である。
【００２４】
出力側モジュール（機能モジュール）１（図２、図４）と受け側モジュール（機能モジュール）２（図２、図４）と間の信号配線ネットにおけるトランジッションチェックの処理例を、図１のフローチャートを用いて説明する。
【００２５】
まず、前述したディレイ検出ツールによって、信号配線ネットにおけるネットディレイＴｄｌｙとネットトランジッションＴｔｒｓを計算する（ステップＳ１０１）。
【００２６】
ネットディレイＴｄｌｙは、出力側モジュール１から出力された信号の立ち上がり（または立ち下がり）から受け側モジュール２に入力される信号の立ち上がり（または立ち下がり）までの時間であり、トランジッションＴｔｒｓは、受け側モジュール２における信号の立ち上がり（または立ち下がり）時間を示す。
【００２７】
続いて、信号配線ネットの転送仕様、および出力側モジュール１に設けられたドライバセルの制御方式（ドライバセルがクロック信号により制御されるか、またはラッチにより制御されるかなど）などに基づいてドライブ期間Ｔｄｒｖを決定する（ステップＳ１０２）。ドライブ期間Ｔｄｒｖとは、出力側モジュール１に設けられたドライバセル４（図２）から出力された信号が受け側モジュール２のドライバセル５（図２）に入力されるまでの時間である。
【００２８】
図２は、クロック制御による出力側モジュール１の構成例を示したものである。
【００２９】
この場合、出力側モジュール１は、ラッチセル３、入力されたクロック信号をイネーブル信号として出力するドライバ（セル）３ａ、ならびに該ドライバ３ａから出力されたクロック信号によって出力がイネーブルとなるドライバセル４から構成されている。
【００３０】
ドライバ３ａの入力部には、クロック信号が入力されており、ドライバセル４の制御ピン（制御端子）には、該ドライバ３ａから出力されたイネーブル信号が入力されるように接続されている。そして、ドライバセル４の出力部には、受け側モジュール２が接続されている。
【００３１】
受け側モジュール２は、否定論理積回路ＮＡＮＤ、およびインバータＩｖからなるドライバセル５とその後段に接続されたラッチセル６とから構成されている。
【００３２】
図３は、図２に示す出力側モジュール１におけるクロック信号、およびドライバ３ａから出力されるイネーブル信号のタイミングチャートである。
【００３３】
クロック制御されるドライバセル４の場合、ドライブ期間Ｔｄｒｖは、図３に示すように、クロック信号がＨｉ信号の期間、すなわちクロック信号の下方に示すように、該ドライバセル４がイネーブルとなる期間がネットドライブ期間Ｔｄｒｖとなる。
【００３４】
図４は、ラッチ制御による出力側モジュール１の構成例を示したものである。
【００３５】
この場合、出力側モジュール１は、ラッチセル７、クロック信号に同期してイネーブル信号を出力するラッチセル（セル）８、ならびにイネーブル信号によって出力がイネーブルとなるドライバセル９から構成されている。
【００３６】
ドライバセル９の制御ピンにはラッチセル８から出力されるイネーブル信号が入力されるように接続されており、該ドライバセル９の出力部には、受け側モジュール２が接続されている。
【００３７】
受け側モジュール２は、図２と同様にドライバセル５とその後段に接続されたラッチセル６とから構成されている。
【００３８】
図５は、図４に示す出力側モジュール１におけるクロック信号、およびラッチセル８から出力されるイネーブル信号のタイミングチャートである。
【００３９】
ラッチ制御されるドライバセル９の場合、ドライブ期間Ｔｄｒｖは、図５に示すように、クロック信号の１周期の期間、すなわちクロック信号の下方に示すように、該ドライバセル９がイネーブルとなるラッチセル８のラッチ期間がネットドライブ期間Ｔｄｒｖとなる。
【００４０】
その後、図１において、ステップＳ１０１の処理で算出した信号配線ネットにおけるネットディレイＴｄｌｙとトランジッションＴｔｒｓと、ステップＳ１０２の処理で決定されたドライブ期間Ｔｄｒｖとより、以下に示す判定式を用いて条件を満たしているか否かのチェックを行う（ステップＳ１０３）。
ネットドライブ期間Ｔｄｒｖ−（ネットディレイＴｄｌｙ＋
ネットトランジッションＴｔｒｓ／２）≧０  （式１）
上記の判定式（式１）の条件を満たさない信号配線ネットは、トランジッションがドライブ期間中に変化しないディレイ違反のネットとして（ステップＳ１０４）、再度ステップＳ１０１〜Ｓ１０３の処理を実行する。
【００４１】
また、ステップＳ１０３の処理において、判定式（式１）の条件を満たす場合には、ディレイ違反のない信号配線ネットとなり、トランジッションチェックが終了となる。
【００４２】
次に、ステップＳ１０２（図１）の処理におけるドライブ期間Ｔｄｒｖの決定処理の一例を、図６のフローチャートを用いて説明する。
【００４３】
まず、出力側モジュールにおけるドライバセルの制御ピンからパスをトレースし、制御信号を出力しているセルを検出する（ステップＳ２０１）。続いて、検出した制御信号を出力するセルがクロック信号を出力している場合（図２、図３参照）には（ステップＳ２０２）、信号配線ネットのドライブ期間Ｔｄｒｖをクロック信号の１／２サイクルに設定する（ステップＳ２０３）。
【００４４】
また、検出した制御信号を出力するセルがラッチの場合（図４、図５参照）には（ステップＳ２０４）、信号配線ネットのドライブ期間Ｔｄｒｖをクロック信号の１サイクルに設定する（ステップＳ２０５）。
【００４５】
ステップＳ２０２，２０４の処理において、セルがクロック信号を出力している場合、またはセルがラッチの場合のいずれでもない場合には、ドライバセルのドライブ期間Ｔｄｒｖを外部から指定して設定する（ステップＳ２０６）。
【００４６】
以上により、ドライブ期間Ｔｄｒｖの決定処理が終了となる。
【００４７】
それにより、本実施の形態によれば、静的タイミング検証により信号配線ネットにおけるトランジッションのディレイ違反を検出することが可能となり、半導体集積回路装置の開発コストを大幅に低減しながら信頼性を向上させることができる。
【００４８】
以上、本発明者によってなされた発明を実施の形態に基づき具体的に説明したが、本発明は前記実施の形態に限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能であることはいうまでもない。
【産業上の利用可能性】
【００４９】
本発明の半導体集積回路装置の設計方法は、静的タイミングによる機能モジュール間におけるディレイ違反の検証技術に適している。
【図面の簡単な説明】
【００５０】
【図１】本発明の一実施の形態によるトランジッションチェックの処理例を示すフローチャートである。
【図２】本発明の一実施の形態によるクロック制御による出力側モジュールの構成例を示したブロック図である。
【図３】図２の出力側モジュールに設けられたドライバセルの信号タイミングチャートである。
【図４】本発明の一実施の形態によるラッチ制御による出力側モジュールの構成例を示したブロック図である。
【図５】図４の出力側モジュールに設けられたドライバセルの信号タイミングチャートである。
【図６】図１におけるドライブ期間の決定の処理例を示すフローチャートである。
【符号の説明】
【００５１】
１  出力側モジュール（機能モジュール）
２  受け側モジュール（機能モジュール）
３  ラッチセル
３ａ  ドライバ（セル）
４  ドライバセル
５  ドライバセル
６  ラッチセル
７  ラッチセル
８  ラッチセル（セル）
９  ドライバセル
ＮＡＮＤ  否定論理積回路
Ｉｖ  インバータ
【図１】
2006252032.tif 000003
【図２】
2006252032.tif 000004
【図３】
2006252032.tif 000005
【図４】
2006252032.tif 000006
【図５】
2006252032.tif 000007
【図６】
2006252032.tif 000008