(57)【特許請求の範囲】
【請求項１】
制約・経路情報テーブルと制約・経路情報記憶部とを含みタイミング検証に必要な情報を記憶する記憶部と、
所定のネーミングルールに基づき、インスタンス名にタイミング制約及びその制約対象経路に関する情報がパラメータとして付加されたレジスタ・トランスファ・レベル（以下、ＲＴＬと略記する）を読込む回路入力部と、
前記回路入力部で読込まれたＲＴＬの記述内容から前記制約・経路情報テーブル内のタイミング制約名と経路指定名を基に、タイミング制約及びその制約対象経路に関する情報が付加されたレジスタ群を抽出する回路解析部と、
前記レジスタ群を受け、前記回路解析部で抽出されたレジスタ群の記載に含まれる前記タイミング制約及びその制約対象経路に関する情報を前記制約・経路情報テーブルと比較し、インスタンス内に付加したタイミング制約及びその制約対象経路に関する情報をコマンド化し、制約・経路コマンドとして前記制約・経路情報記憶部に格納する制約・経路情報抽出部と、
クロック制約情報を入力するクロック条件入力部と、
前記クロック制約情報と、前記制約・経路情報記憶部に記憶された制約・経路コマンドとを合わせてタイミング検証用コマンドを生成する制約情報生成部と、
前記制約情報生成部により作成されたタイミング検証用コマンドをもとにタイミング検証を行うタイミング検証部と、
を備えることを特徴とする非同期回路のタイミング検証装置。
【請求項２】
前記レジスタ群は、フリップ・フロップで構成される請求項１記載の非同期回路のタイミング検証装置。
【請求項３】
前記レジスタ群は、ラッチで構成される請求項１または２記載の非同期回路のタイミング検証装置。
【請求項４】
前記制約・経路情報テーブルは、前記タイミング制約及びその制約対象経路に関する情報を書き記したＲＴＬからインスタンス名を抽出するタイミング制約名の一覧を含む請求項１ないし３いずれか１項記載の非同期回路のタイミング検証装置。
【請求項５】
前記タイミング制約情報は、最大遅延である請求項４記載の非同期回路のタイミング検証装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、非同期回路のタイミング検証装置とそのタイミング検証方法に関し、特に、同期回路と非同期回路とが混在する場合の非同期回路のタイミング検証装置とそのタイミング検証方法に関する。
【０００２】
【従来の技術】
半導体集積回路の同期回路と非同期回路とが混在する場合、前述の非同期回路のタイミングを検証する方法として、実際の遅延値を使用し、シュミレーションを行うダイナミック・シュミレーションがある。
【０００３】
また、近年の集積規模の増大により、シュミレーション時間も膨大になっている。
【０００４】
そのため、設計工数を削減するために、非同期回路もスタティックなタイミング検証に移行していることは、周知である。
【０００５】
このような従来のシュミレーション技術は、例えば、特開平１０−１９８７２３号公報（引用文献１とする）に開示されている。この従来のシュミレーション技術の処理フローを図９に示す。
【０００６】
図９を参照すると、引用文献１に記載の従来のシュミレーション技術は、同期型回路と非同期型回路とが混在する回路のタイミングの検証方法（ステップＳ１７）において、まず、同期型回路を処理する。すなわち、回路接続情報（１５）とタイミング指定およびクロック指定の情報（１６）に基づいて、同期型回路部分のスタティックなタイミング検証（ステップＳ１９）を実行し、ＯＫなら非同期型回路部分のタイミング検証（ステップＳ２０）を実行する。
【０００７】
そして、非同期型回路部分のタイミング検証（ステップＳ２０）の際に、同期型回路部分のスタティックなタイミング検証フェーズで、抽出済みの経路遅延データが利用可能な場合は、これを用い、経路指定・経路関係指定を制約ファイル（１８）として入力することで、前述の非同期型回路部分について指定された経路に対して、各経路に関して抽出された遅延データから該経路の経路遅延が所望の遅延条件を充たすか否かを検証するものである。
【０００８】
【発明が解決しようとする課題】
しかしながら、この従来技術では、大きく２つの問題があった。
【０００９】
第１は、非同期回路でスタティックな検証を行うためには回路がクロック同期していないため、レジスタ間の遅延値を経路ごとに指定しなければならない。
【００１０】
この経路と遅延値を指定するのが制約ファイルである。現状、タイミング検証装置はメーカ毎にその経路と遅延値をフォーマットがことなるため装置毎に制約ファイルを作成しなければならないため時間がかかっていた。
【００１１】
第２は、回路規模の増大より作業の分離が進んでいて、ＲＴＬ設計者とタイミング検証者が異なることがある。この場合、ＲＴＬ設計者が制約ファイル作成する事になるが、経路指定時にレジスタのインスタンス名をＲＴＬから人間が探して指定する必要があるため間違えてしまう場合がある。
【００１２】
このようなミスを含んだ制約ファイルで検証者は作業を行うため、タイミング検証の前に制約ファイルのデバックが必要になる。制約ファイルの内容は、ＲＴＬ設計者しかわからないためエラーが発生するたびに、正しいインスタンス名を修正することを設計者に確認する作業が必要となり、作業時間が増えていた。
【００１３】
したがって、本発明の目的は、上記問題を解決した同期回路と非同期回路とが混在する場合の非同期回路のタイミング検証装置とそのタイミング検証方法を提供することにある。
【００１４】
【課題を解決するための手段】
本発明の非同期回路のタイミング検証装置は、制約・経路情報テーブルと制約・経路情報記憶部とを含みタイミング検証に必要な情報を記憶する記憶部と、所定のネーミングルールに基づき、インスタンス名にタイミング制約及びその制約対象経路に関する情報がパラメータとして付加されたレジスタ・トランスファ・レベル（以下、ＲＴＬと略記する）を読込む回路入力部と、前記回路入力部で読込まれたＲＴＬの記述内容から前記制約・経路情報テーブル内のタイミング制約名と経路指定名を基に、タイミング制約及びその制約対象経路に関する情報が付加されたレジスタ群を抽出する回路解析部と、前記レジスタ群を受け、前記回路解析部で抽出されたレジスタ群の記載に含まれる前記タイミング制約及びその制約対象経路に関する情報を前記制約・経路情報テーブルと比較し、インスタンス内に付加したタイミング制約及びその制約対象経路に関する情報をコマンド化し、制約・経路コマンドとして前記制約・経路情報記憶部に格納する制約・経路情報抽出部と、クロック制約情報を入力するクロック条件入力部と、前記クロック制約情報と、前記制約・経路情報記憶部に記憶された制約・経路コマンドとを合わせてタイミング検証用コマンドを生成する制約情報生成部と、前記制約情報生成部により作成されたタイミング検証用コマンドをもとにタイミング検証を行うタイミング検証部とを備える構成である。
【００１６】
【発明の実施の形態】
次に、図面を参照しながら、本発明の実施の形態を以下に詳述する。図１を参照して、本発明の特徴を説明する。
【００１７】
まず、本発明の特徴は、非同期回路のタイミング検証を行う際、タイミング検証装置１４内の回路入力部１よりＲＴＬ記述を読み込み、回路解析部２で制約を付加したインスタンスを抽出し、経路・制約抽出部３で、回路解析部２で抽出されたインスタンスに記載されたタイミング制約と経路制約をコマンド化する。
【００１８】
また、クロック条件入力部４よりクロック制約を読み込ませ、制約情報生成部５にて、制約・経路情報抽出部３より作成された制約コマンドとクロック制約情報をもとにタイミング検証を行うタイミング検証方法と装置である。
【００１９】
ここで、ＲＴＬとは、レジスタ・トランスファ・レベルの略であり回路の構造要素であるクロック概念が入り、レジスタやカウンタなどを表現した記述レベルを示し、また今回の発明では、ＲＴＬ（レジスタ・トランスファ・レベル）中のインスタンス名に、あらかじめタイミング制約情報、経路指定情報をパラメータとして付加しているものを示す。
【００２０】
また、インスタンスとは、ＲＴＬ記述中に記載されている呼び出したモジュールに付加した個別の名前のことを示す。
【００２１】
次に、本発明の第１の実施の形態について、図１を参照して説明する。
【００２２】
図１を参照すると、本発明の第１の実施の形態の非同期回路のタイミング検証装置１４内のデータ処理装置１３は、ＲＴＬを読込む回路入力部１と、ＲＴＬからインスタンス名の抽出を行なう回路解析部２と、インスタンス名から経路・制約を抽出しコマンド化する経路制約抽出部３と、クロック制約を入力するクロック条件入力部４、経路・制約抽出部３より抽出しコマンドとしたとクロック制約を合わせる制約情報生成部５と、タイミング検証を行うタイミング検証部６をもち、タイミング検証に必要な情報を記憶する記憶部１２とを備える。
【００２３】
記憶部１２は、制約・経路情報テーブル７と、制約・経路情報記憶部８と、クロック条件テーブル９と、クロック情報記憶部１０、タイミング検証用作成コマンド１１を備える。
【００２４】
ＭＵＬＴｎ、ＦＡＬＳＥ、Ｍａｘ_ｄｅｌａｙ等の制約を書き記した制約情報テーブル７は、ＲＴＬからインスタンス名を抽出するタイミング制約名の一覧を含む。
【００２５】
同様に、クロック条件テーブル９は、クロックの波形に関する指定を含む、制約・経路記憶部８は、回路解析部３にて作成されたコマンドを格納し、クロック情報記憶部１０は、クロック条件入力部４より入力したクロック制約を記憶し、タイミング検証用作成コマンド記憶部１１は、制約情報生成部５より作成されたコマンドを記憶する。
【００２６】
次に、本発明の第１の実施の形態の非同期回路のタイミング検証装置１４の動作について、図２を参照して説明する。
【００２７】
図２を参照すると、本発明の第１の実施の形態の非同期回路のタイミング検証装置の回路入力部１は、所定のネーミングルールに基づき、インスタンス名にタイミング制約情報と、経路・制約情報をパラメータとして付加されたＲＴＬを読込み、回路解析部２に供給する。（図２のステップＳ１〜Ｓ３）。
【００２８】
回路解析部２は、読込まれたＲＴＬの記述内容から制約情報テーブル７内のタイミング制約名と経路指定名を基に、タイミング制約情報及び経路制約を付加されたレジスタ（フリップ・フロップ、ラッチ等の素子）を抽出し、そのレジスタを経路・制約抽出部３に供給する（ステップＳ５）。
【００２９】
クロック条件入力部４より入力された、クロック条件ファイルを入力（ステップＳ4）し、経路・制約抽出部３では、回路解析部２で抽出された制約インスタンスより記載された制約と経路を記憶部１２内にある制約・経路情報テーブル７と比較し、インスタンス内に付加した制約と経路をコマンド化し制約・経路情報記憶部８に格納する（ステップＳ６）。
【００３０】
ステップＳ4にて入力されたコマンド化したクロック条件ファイルまたは、クロック制約情報は、記憶部１２内にあるクロック条件テーブル９と比較し、クロック条件入力部４より与えられたクロック制約をコマンド化し、クロック情報記憶部１０に情報を格納する（ステップＳ７）。
【００３１】
インスタンスより制約を抽出し、コマンド化したファイルを出力し、タイミング検証用作成コマンド記述部１１に格納され、このタイミング検証コマンドとしてタイミング検証フェーズに読み込み、タイミング検証を行う方法と装置である。
【００３２】
次に、本発明の動作について、より詳細に実例を挙げて説明する。検証対象の一部が最大遅延制約を持つ回路について、図３に示すＲＴＬ図のレジスタ構成でフリップフロップＦＦ０からフリップフロップＦＦ１まで遅延値の制限が、最大１０ｎｓで、フリップフロップＦＦ０からフリップフロップＦＦ２まで遅延値の制限が、最大１５ｎｓで、フリップフロップＦＦｘからフリップフロップＦＦ１まで遅延値の制限が、最大２０ｎｓである場合、タイミング検証用コマンドが設定される（図４参照）。
【００３３】
従来技術においては、この制約ファイルは、各タイミング検証検証装置が必要とするフォーマットに従い、制約となるコマンドを一つ一つ作成しなければならなかった。
【００３４】
本発明の実施形態における図１の形態でタイミング検証を行う際、ＲＴＬ（レジスタ・トランスファ・レベル）には、制約条件を付加したパラメータを付加する。
【００３５】
そして、制約条件を付加したパラメータとは、ＲＴＬ内に記述されたレジスタのインスタンス名にあらかじめ検証経路・制約条件を加えたパラメータのことを示す。
【００３６】
あらかじめ検証経路・制約条件を加えたパラメータとは、以下に示す最大遅延の例で説明を行うと、「条件：最大遅延」、「制約対象経路：ＦＦ０からＦＦ１」という情報をインスタンスに付加することである。
【００３７】
インスタンス名の命名例は、以下のようなネーミング・ルールを基に「“ユニーク名”＿“制約名”＿“パス指定”」の例を付加し設定することである。
《パラメータ・ネーミング・ルール名例》
〈ユニーク名〉
：素子を選別するためにユニークな名前
〈制約名〉
：ＭＵＬＴｎ（ｎはサイクル数）：マルチ・サイクル・パス
：ＦＡＬＳＥ：ファルス・パス
：Ｍａｘ＿ｄｅｌａｙｎ（ｎは遅延値）  ：最大遅延
〈パス指定〉
：ＦＲ“対象インスタンス名”対象インスタンス名からこの命名ルールでインスタンス名を付けたセルまでのパス
：＿ＴＯ“対象インスタンス名”この命名インスタンス名を付けたセルから対象インスタンス名までのパス
：＿ＦＲＯＭ“対象インスタンス名”この命名ルールでインスタンス名を付けたセルまでのすべてのパス
：＿ＴＯＡＬＬ“対象インスタンス名”この命名ルールでインスタンス名を付けたセルからのすべてのパス
上記ルールより、「ＦＦ０よりＦＦ１までの最大遅延１０ｎｓである」インスタンス指定を行う場合、インスタンス名はユニーク名：ＦＦ０、制約名：Ｍａｘ＿ｄｅｌａｙｎ（遅延値は１０ｎｓと設定のためｎ＝１０）、パス（経路）：ＦＦ１（現在のＦＦ０よりＦＦ１まで）となり、インスタンス名はＦＦ０＿Ｍａｘ＿ｄｅｌａｙ１０＿ＴＯＦＦ１”となる。
【００３８】
この、上記制約パラメータを持ったＲＴＬを図５に示す。
【００３９】
図５に記載のＲＴＬを図１の回路入力部１より読み込ませ、回路解析部２におけるＲＴＬに記載された経路・制約条件パラメータを使用したレジスタを抽出し、経路・制約抽出部３にて経路・制約条件パラメータより経路・制約を抽出し制約・経路情報記憶部に格納する。
【００４０】
また、クロック条件入力部４には、クロック制約を記載したコマンドを読み込ませる。
【００４１】
クロック制約とは、クロックの立ち上がりと立ち下がりクロック・ピンの名前やクロックサイクル名を指定する。
【００４２】
指定形式は
「set clockpinクロック・ピン名 rise Rise_Min Rise_Max FALL_Min FALL_Max periodクロック・サイクル値」と記載する。
【００４３】
制約情報生成部５では、制約・経路抽出部３で作成され制約経路情報記憶部８にて記憶された図７に記載のコマンドＦ２とクロック情報記憶部１０にて記憶されたコマンド、すなわち、クロック指定と経路・経路関係コマンドＦ３とをパターン変換より、１つのコマンドファイルＦ４にして出力する（図６に示すコマンドとなる）。この工程を図７に示す。
【００４４】
このように、タイミング検証を行う目的で、回路設計者があらかじめＲＴＬ（レジスタ・トランスファ・レベル）作成段階より、レジスタ等をネーミング・ルールにもとづいたインスタンス名を付けて作成し、タイミング検証は、ＲＴＬよりインスタンス名を抽出し、ネーミングルールに従って制約ファイルを自動で作成を行い検証するため、図９で示す従来技術におけるタイミング検証の処理フローで必要であった制約条件や経路指定した制約ファイル１８は必要としない。
【００４５】
次に、本発明の第２の実施の形態について説明する。
【００４６】
本発明の第１の実施の形態の非同期回路のタイミング検証装置の検証方法では、ＲＴＬ設計者とタイミング検証者が同じ場合を説明したが、この本発明の第２の実施の形態では、ＲＴＬ設計者とタイミング検証者が異なる場合について、図８を参照し説明する。
【００４７】
図８を参照すると、本発明の第２の実施の形態の非同期回路のタイミング検証装置の検証方法では、ＲＴＬの制約付加よりタイミング検証用コマンド生成までは、本発明の第１の実施の形態の非同期回路のタイミング検証装置の検証方法と同じであるため、省略する。
【００４８】
図１に記載の制約情報生成部５より作成されたコマンドは、タイミング検証用コマンドしてタイミング検証装置に使用することが可能となるため、タイミング装置に、このコマンドを媒体または、ネットワーク上で、受け渡すことによりタイミング検証が可能となる。
【００４９】
また、本発明の第１の実施の形態の非同期回路のタイミング検証装置の検証方法の動作の説明では最大遅延を例に示したが、制約をかえることでマルチ・サイクルパス、フォルス・パスにも適用可能となる。
【００５０】
次に、本発明の第３の実施の形態について説明する。
【００５１】
本発明の第１の実施の形態の非同期回路のタイミング検証装置の検証方法では、単一素子間の例であったが、本発明の第３の実施の形態の非同期回路のタイミング検証装置の検証方法では、多素子間の経路測定も制約パラメータを増やすことで可能となる。
【００５２】
本発明の第３の実施の形態の非同期回路のタイミング検証装置の検証方法では、図５にて、フリップフロップＦＦ０からフリップフロップＦＦ１まで最大遅延１０ｎｓの場合、制約パラメータを「ＦＦ０_Ｍａｘ_ｄｅｌａｙ１０_ＴＯＦＦ１」と指定したが、多素子間のフリップフロップＦＦ０からフリップフロップＦＦ1、フリップフロップＦＦ２へ経路を指定する場合、制約パラメータは「ＦＦ０_Ｍａｘ_ｄｅｌａｙ１０_ＴＯＦＦ１_ＦＦ2」と設定することで検証が可能となる。
【００５３】
【発明の効果】
以上説明した通り、本発明による第１の効果は、タイミング検証時使用する制約ファイル作成時間が削減される。
【００５４】
すなわち、従来は、非同期回路でスタティックな検証を行うためには回路がクロック同期していないためレジスタ間の遅延値を経路ごとに指定しなければならなかった。
【００５５】
また、従来、タイミング検証装置はメーカ毎にその経路と遅延値をフォーマットがことなるため装置毎に、コマンドで検証対象となる制約を全て設定する必要があり、制約ファイルを作成する時間がかかっていた。
【００５６】
しかし、本発明では、回路設計者がＲＴＬ(レジスタ・トランスファ・レベル)のインスタンス名に、タイミング制約情報、経路指定情報をパラメータとして付加したため、タイミング装置が検証を行う際、付加されたパラメータを抽出しパタン変換より制約情報を作成可能となり、制約ファイルを作成する必要がなくなり、制約ファイル作成時間がなくなる。
【００５７】
第２の効果は、制約コマンドの間違えやミスパスなどによる検証時間の削減が計れる。その理由は、従来タイミング検証時、ＲＴＬ設計者とタイミング検証者が異なる場合、ＲＴＬ設計者の意図をそのまま反映させるためにＲＴＬ設計者が制約ファイルを作成するが、経路指定時にレジスタのインスタンス名をＲＴＬから人間が探して指定する必要があるため間違えてしまう場合がある。
【００５８】
このようなミスを含んだ制約ファイルで検証者は作業を行うためタイミング検証の前に制約ファイルのデバックが必要になり、制約ファイルの内容はＲＴＬ設計者しかわからないため、制約コマンドで素子の指定間違えや素子名の間違えやミスパスなどのエラーを、正しいインスタンス名に修正するたび設計者に確認すると言う作業が必要となり作業時間が増えていた。
【００５９】
しかし、本発明では、回路設計者が検証対象となる回路にタイミング制約情報、経路指定情報をインスタンス名にあらかじめ経路指定や制約を付加しているため、検証対象に設計者の意図をそのまま制約条件を加えていることとなり、従来、起きていた回路設計者とタイミング検証者間による、素子の指定間違えや素子名の間違えまたミスパスなどのエラーや、正しいインスタンス名に修正するたび設計者に確認すると言う作業がなくなり検証時間の削減となる。
【図面の簡単な説明】
【図１】本発明の第１の実施の形態におけるタイミング検証のシステムを示す図である。
【図２】本発明の第１の実施の形態におけるタイミング検証の処理フローを示す図である。
【図３】最大遅延での例である。
【図４】制約ファイルの例である。
【図５】ＲＴＬの記述例である。
【図６】タイミング検証用作成コマンド例である。
【図７】コマンド工程図である。
【図８】本発明の第２の実施の形態におけるＲＴＬ設計者とタイミング検証者が異なる場合のタイミング検証の処理フローを示す図である。
【図９】従来技術のタイミング検証の処理フローを示す図である。
【符号の説明】
１    回路入力部
２    回路解析部
３    経路・制約抽出例
４    クロック条件入力入力部
５    制約情報作成部
６    タイミング検証部
７    制約・経路情報テーブル
８    制約・経路情報記憶部
９    クロック条件テーブル
１０    クロック情報記憶部
１１    タイミング検証用作成コマンド記憶部
１２    記憶部
１３    データ処理装置
１４    検証装置
１５    検証対象とする回路接続情報
１６    入出力信号のタイミング指定とクロック指定情報
１８    非同期回路で計測する経路指定と経路の関係を示した情報
Ｆ１    ＲＴＬ例
Ｆ２    制約・経路コマンド例
Ｆ３    クロックコマンド例
Ｆ４    作成コマンド例
Ｓ１    ＲＴＬ作成ステップ
Ｓ２    ＲＴＬ制約付加ステップ
Ｓ３    ＲＴＬ読み込みステップ
Ｓ４    クロック条件読み込みステップ
Ｓ５    制約を付加したインスタンス名の抽出ステップ
Ｓ６    インスタンス名より制約経路の抽出ステップ
Ｓ７    クロック制約の抽出ステップ
Ｓ８    タイミング機能用コマンド生成ステップ
Ｓ１７    従来のスタティックなタイミング検証方法
Ｓ１９    同期回路のスタティック・タイミング検証フェーズ
Ｓ２０    非同期回路のスタティック・タイミング検証フェーズ
【図１】
0003759007.tif 000002
【図２】
0003759007.tif 000003
【図３】
0003759007.tif 000004
【図４】
0003759007.tif 000005
【図５】
0003759007.tif 000006
【図６】
0003759007.tif 000007
【図７】
0003759007.tif 000008
【図８】
0003759007.tif 000009
【図９】
0003759007.tif 000010