JP2006092259A - Logic equivalence verification system - Google Patents
Logic equivalence verification system Download PDFInfo
- Publication number
- JP2006092259A JP2006092259A JP2004276778A JP2004276778A JP2006092259A JP 2006092259 A JP2006092259 A JP 2006092259A JP 2004276778 A JP2004276778 A JP 2004276778A JP 2004276778 A JP2004276778 A JP 2004276778A JP 2006092259 A JP2006092259 A JP 2006092259A
- Authority
- JP
- Japan
- Prior art keywords
- logic
- logical
- equivalence verification
- hardware description
- file
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Design And Manufacture Of Integrated Circuits (AREA)
Abstract
Description
本発明はHDL(Hardware Description Language)で記述した回路論理と、これを論理合成したGateレベルのネットリストとの論理等価性検証を行うための論理等価性検証システムに関する。 The present invention relates to a logical equivalence verification system for performing logical equivalence verification between a circuit logic described in HDL (Hardware Description Language) and a gate level netlist obtained by logically synthesizing the circuit logic.
近年、半導体技術の進歩により、1つのLSIに集積される論理規模は益々向上している。このような大規模なLSIを回路設計する場合は、RTL(Register Transfer Level)であるHDLと呼ばれるハードウェア記述用プログラム言語を使ってLSIの論理を記述し、これを論理合成ツールと呼ばれるソフトウェアを使用して論理記述を実際のゲート回路に合成する設計手法が一般的である。 In recent years, with the advance of semiconductor technology, the logical scale integrated in one LSI has been increasing. When designing a circuit for such a large-scale LSI, the logic of the LSI is described using a hardware description program language called HDL, which is RTL (Register Transfer Level), and software called a logic synthesis tool is described. A design method is generally used to synthesize a logic description into an actual gate circuit.
このとき、設計者が記述したHDLの論理(以降、HDLファイルと呼ぶ)を基準論理回路とし、論理合成ツールで合成したGateレベルのゲート回路(以降、ネットリストと呼ぶ)を比較対象論理回路として、両者が論理的に等価である事を保証する設計工程を論理等価性検証と呼ぶ。この論理等価性検証は、等価検証ツールと呼ばれるソフトウェアで実行される。 At this time, HDL logic (hereinafter referred to as HDL file) described by the designer is used as a reference logic circuit, and a Gate level gate circuit (hereinafter referred to as netlist) synthesized by a logic synthesis tool is used as a comparison target logic circuit. The design process that guarantees that both are logically equivalent is called logical equivalence verification. This logical equivalence verification is executed by software called an equivalence verification tool.
等価検証ツールはHDLファイルと、これを論理合成したネットリストを読込んで、両者の回路構造を認識し、検証ポイント(出力ポートやフリップフロップなど)の対応付けを行い、これらの前段に配置された論理を、HDLファイルでは論理式、ネットリストでは組合せ回路としてロジックコーンと呼ばれるコーンを生成して等価性を検証する。 The equivalence verification tool reads the HDL file and a netlist obtained by logically synthesizing the HDL file, recognizes the circuit structure of both, associates verification points (output ports, flip-flops, etc.), and is arranged in the preceding stage. Equivalence is verified by generating a cone called a logic cone as a logic, a logical expression in the HDL file, and a combinational circuit in the netlist.
また、論理合成ツールに対して設計者が記述したHDLファイルを機械的に合成しても、配置などを含めて、必ずしも設計者の意図したネットリストの回路構造が得られるわけではない。 Moreover, even if the HDL file described by the designer is mechanically synthesized with respect to the logic synthesis tool, the circuit structure of the netlist intended by the designer is not necessarily obtained including the layout.
そこで、従来、設計者は論理合成ツールに対してさまざまな設定、または人手による介入を行って、設計者が意図した回路構造をネットリストに出力している。 Therefore, conventionally, the designer performs various settings or manual intervention on the logic synthesis tool, and outputs the circuit structure intended by the designer to the netlist.
また、HDLファイルのデータ管理不良により、設計者が意図しないHDLファイルで論理合成を行ったために、論理不良がその後の設計工程に進む可能性がある。そのため、論理等価性検証を実施することで回路の論理的な等価性を保証することは有効である。 In addition, since logic synthesis is performed using an HDL file that is not intended by the designer due to data management failure of the HDL file, there is a possibility that the logic failure proceeds to the subsequent design process. Therefore, it is effective to guarantee the logical equivalence of circuits by performing logical equivalence verification.
また、大規模なLSIを設計する場合は、LSIをいくつかの階層部位に分割して論理設計する。 Further, when designing a large-scale LSI, the LSI is logically designed by dividing the LSI into several hierarchical parts.
具体的には、実際の回路動作を記述した下位階層部品を設計してHDLファイルを記述し、これをいくつか組み合わせて上位階層部品を作成し、これを繰り返して1つのLSIの論理として組み立てていく。このような手法で論理設計した場合、結果的にHDLファイルは巨大な階層構造を持ったものになる。 Specifically, a lower layer component that describes the actual circuit operation is designed, an HDL file is described, several combinations are created to create an upper layer component, and this is repeated and assembled as one LSI logic. Go. When logical design is performed by such a method, the HDL file has a huge hierarchical structure as a result.
同様に大規模LSI設計における論理合成は、階層型論理合成と呼ばれる手法を用いて、下位階層からHDLファイルをネットリストに合成して、これらを組み合わせてLSI全体のネットリストを作成していくのが一般的である。ネットリストもHDLファイルと同様に、巨大な階層構造を持ったネットリストが生成される。 Similarly, logic synthesis in large-scale LSI design uses a technique called hierarchical logic synthesis to synthesize HDL files from a lower hierarchy into a netlist and combine them to create a netlist for the entire LSI. Is common. Similarly to the HDL file, the netlist is generated with a huge hierarchical structure.
しかし、ネットリストの階層構造は、HDLファイルの論理合成時における設計者の設定などにより、必ずしもHDLファイルと1対1で対応する訳ではない。 However, the hierarchical structure of the netlist does not necessarily correspond to the HDL file on a one-to-one basis due to the setting of the designer at the time of logic synthesis of the HDL file.
このような手法で設計されたHDLファイルとネットリストとの等価性検証を行う場合、従来は等価検証ツールに対して、人手で設定を与えて検証していた。 When performing equivalence verification between an HDL file and a netlist designed by such a method, conventionally, the equivalence verification tool has been manually set to verify.
また、LSIの最上位階層より一括で検証し、HDLファイルとネットリストの階層差を意識することなく、論理等価性を検証するのが従来の一般的な論理等価性検証手法であった。 Further, it has been a conventional general logic equivalence verification method that performs batch verification from the highest layer of LSI and verifies the logical equivalence without being aware of the hierarchical difference between the HDL file and the netlist.
しかしながら、従来の一般的な検証手法では次の2つの課題がある。 However, the conventional general verification method has the following two problems.
1つ目の課題は、論理等価検証を実行するために、論理合成ツールに対して特別に行った設定や、人手で介入した部分などを、等価検証ツールに情報として与える必要がある事である。 The first problem is that in order to perform logical equivalence verification, it is necessary to provide the equivalence verification tool with information such as specially configured settings for the logic synthesis tool and manually intervening parts. .
代表例の1つ目として、HDLファイルでAと定義された変数が、ネットリストではAと定義されたレジスタにマッピングされたとする。等価検証ツールは同じAと定義された変数とレジスタを自動で対応付けすることで検証を行う。しかし、ネットリストにて意図的にAと定義されたレジスタを、Bと定義されたレジスタに置き換えたとすると、等価検証ツールは対応付けができなくなる場合がある。 As a first representative example, assume that a variable defined as A in the HDL file is mapped to a register defined as A in the netlist. The equivalence verification tool performs verification by automatically associating a variable defined with the same A with a register. However, if the register defined as A in the netlist is intentionally replaced with a register defined as B, the equivalence verification tool may not be able to associate.
代表例の2つ目として、タイミングディレイを削減するために、物理的なレイアウトを考慮したグループ階層をネットリストのゲート回路に追加する事である。これは論理合成で新たに追加される階層であるため、HDLファイルには存在しないので等価検証ツールは自動での対応付けができなくなる場合がある。 A second representative example is to add a group hierarchy considering the physical layout to the gate circuit of the netlist in order to reduce the timing delay. Since this is a hierarchy that is newly added by logic synthesis, it does not exist in the HDL file, so the equivalence verification tool may not be able to automatically associate.
つまり、HDLファイルからネットリストへの論理合成の過程で、変更や追加されたもので、等価検証ツールが自動対応できない場合は別途、情報として人手で与える必要がある。このような人手による設定追加は検証効率を悪化させるだけでなく、人手ミスにより検証精度を低下させる。 In other words, if it is changed or added in the process of logic synthesis from the HDL file to the netlist and the equivalence verification tool cannot automatically handle it, it must be provided manually as information separately. Such manual setting addition not only deteriorates verification efficiency, but also reduces verification accuracy due to manual error.
2つ目の課題は、LSIのHDLファイルとネットリストを最上位階層より、一括して等価検証する場合に、論理規模が大きいために等価検証ツールのキャパシティを超えてしまう場合がある。キャパシティとは等価検証ツールのプログラムキャパシティや、これを実行する計算機のメモリ使用量や検証時間を指す。 The second problem is that when the LSI HDL file and netlist are collectively verified from the highest level, the capacity of the equivalent verification tool may be exceeded due to the large logical scale. The capacity refers to the program capacity of the equivalent verification tool, the memory usage of the computer that executes this, and the verification time.
このような場合、HDLファイルとネットリストを、分割して検証することで、等価検証ツールおよび計算機に対する負荷を最小化した論理等価性検証する手法が用いられる。 In such a case, the equivalence verification tool and the method of verifying the logical equivalence with the load on the computer minimized by dividing and verifying the HDL file and the netlist are used.
この分割検証では、LSIの一部の論理階層に対して論理を変更または追加した場合に、LSI全体ですべて検証せずに、変更または追加があった部分に特化して、差分で検証できるので頻繁な論理変更に対して、検証効率の面で有効である。 In this split verification, when the logic is changed or added to a part of the logic hierarchy of the LSI, the entire LSI can be verified without using the entire LSI, and can be verified with the difference. It is effective in terms of verification efficiency against frequent logic changes.
しかし、分割検証を行うためには、HDLファイル、ネットリスト両方の階層構造を正確に把握して、変更、追加のあった階層を等価検証ツールに情報として与える必要がある。 However, in order to perform division verification, it is necessary to accurately grasp the hierarchical structure of both the HDL file and the netlist, and to give the changed and added hierarchy as information to the equivalence verification tool.
特に、HDLファイルは、下位部品や上位部品にファイル分割されている事が一般的であり、分割検証を行うために必要なHDLファイルを人手で選択することは検証効率を低下させ、ファイル管理不良による検証精度の低下を引き起こす。 In particular, the HDL file is generally divided into lower parts and upper parts, and manually selecting an HDL file necessary for performing division verification reduces verification efficiency and causes poor file management. Cause a decrease in verification accuracy.
そこで、本発明の目的は、RTLで記述したHDLファイルを基準論理回路とし、それを論理合成したGateレベルのネットリストを比較対象論理回路とした論理等価性検証を、大規模LSIに対して、等価検証ツールに与える情報収集と、検証を実行する論理階層を構成するHDLファイルの収集を自動化し、また、検証可能な単位に分割して自動実行する検証効率の高い論理等価性検証システムを提供することにある。 Therefore, an object of the present invention is to perform logical equivalence verification on a large-scale LSI using an HDL file described in RTL as a reference logic circuit and a gate-level netlist obtained by logically synthesizing the HDL file as a comparison target logic circuit. Automates the collection of information given to the equivalence verification tool and the collection of HDL files that make up the logical hierarchy for performing verification, and provides a logical equivalence verification system with high verification efficiency that is automatically divided into units that can be verified. There is to do.
本願において開示される発明のうち、代表的なものの概要を簡単に説明すれば、次のとおりである。 Of the inventions disclosed in the present application, the outline of typical ones will be briefly described as follows.
本発明による論理等価性検証システムは、論理記述したハードウェア記述用プログラム言語ファイルを入力する論理入力用端末と、複数のハードウェア記述用プログラム言語ファイルおよび複数のハードウェア記述用プログラム言語ファイルを論理合成したゲート回路の情報を格納する記憶装置と、記憶装置内に格納された複数のハードウェア記述用プログラム言語ファイルを論理合成し、ゲート回路を生成する論理合成手段と、複数のハードウェア記述用プログラム言語ファイルによる基準論理回路と複数のハードウェア記述用プログラム言語ファイルを論理合成したゲート回路による比較対象論理回路とを比較し、論理等価性を検証する論理等価性検証手段とを備え、論理等価性検証手段は、論理合成手段より論理変更または追加のあった論理階層の情報を受け取り、基準論理回路に必要なハードウェア記述用プログラム言語ファイルを検索して論理階層を組み立て、比較対象論理回路との論理等価性検証を分割して実行するものである。 A logical equivalence verification system according to the present invention includes a logical input terminal for inputting a logically described hardware description program language file, a plurality of hardware description program language files, and a plurality of hardware description program language files. A storage device for storing information of the synthesized gate circuit, a logic synthesis means for generating a gate circuit by logically synthesizing a plurality of hardware description program language files stored in the storage device, and for a plurality of hardware descriptions Comparing the reference logic circuit by the program language file with the logic circuit to be compared by the gate circuit obtained by logically synthesizing the program language files for hardware description, and equipped with a logic equivalence verification means for verifying the logic equivalence, and the logic equivalence The property verification means can change or add logic more than the logic synthesis means. It receives information of a logical hierarchy, assembling a logical hierarchy to find a hardware description program language files necessary criteria logic circuit, and executes by dividing the logical equivalence checking the comparison logic.
本願において開示される発明のうち、代表的なものによって得られる効果を簡単に説明すれば以下のとおりである。 Among the inventions disclosed in the present application, effects obtained by typical ones will be briefly described as follows.
本発明の第1の効果は、論理等価性検証手段が論理合成手段と連動して論理等価性検証を実施するため、作業工数の削減が可能である。 The first effect of the present invention is that the logic equivalence verification means performs logic equivalence verification in conjunction with the logic synthesis means, so that the number of work steps can be reduced.
また、本発明の第2の効果は、ハードウェア記述用プログラム言語ファイルの論理階層を検索し、論理階層分割検証を行うため、論理追加または変更があった場合の検証効率の向上と検証ミス削減が可能である。 In addition, the second effect of the present invention is to search the logical hierarchy of the hardware description program language file and perform logical hierarchy division verification, thereby improving verification efficiency and reducing verification mistakes when logic is added or changed. Is possible.
また、本発明の第3の効果は、設計中のハードウェア記述用プログラム言語および未検証のハードウェア記述用プログラム言語を高速記憶装置に格納し、検証が完了したハードウェア記述用プログラム言語を低速大容量記憶装置に格納するため、コストパフォーマンスの高い設計データ管理が可能である。 The third effect of the present invention is that the hardware description program language under design and the unverified hardware description program language are stored in a high-speed storage device, and the hardware description program language that has been verified is stored at a low speed. Since the data is stored in a mass storage device, design data management with high cost performance is possible.
以下、本発明の実施の形態を図面に基づいて詳細に説明する。なお、実施の形態を説明するための全図において、同一の部材には原則として同一の符号を付し、その繰り返しの説明は省略する。 Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings. Note that components having the same function are denoted by the same reference symbols throughout the drawings for describing the embodiment, and the repetitive description thereof will be omitted.
<論理等価性検証システムの構成>
図1により、本発明の一実施の形態に係る論理等価性検証システムの構成について説明する。図1は本発明の一実施の形態に係る論理等価性検証システムの構成を示す構成図である。
<Configuration of logical equivalence verification system>
With reference to FIG. 1, the configuration of a logical equivalence verification system according to an embodiment of the present invention will be described. FIG. 1 is a configuration diagram showing a configuration of a logical equivalence verification system according to an embodiment of the present invention.
図1において、論理等価性検証システムは、論理入力用端末10、論理入力用サーバ20、論理合成用サーバ30、設計データ格納用外部記憶装置50から構成されている。
In FIG. 1, the logical equivalence verification system includes a
論理入力用端末10、論理入力用サーバ20および論理合成用サーバ30はローカルエリアネットワーク60により接続され、論理入力用サーバ20、論理合成用サーバ30および設計データ格納用外部記憶装置50はストレージエリアネットワーク40で接続されている。
The
論理入力用端末10は、設計者がHDLファイルを作成したり、論理合成時の設定や情報の入力を行うための端末であり、複数の設計者によりHDLファイルを作成することができるように複数台の論理入力用端末10が設けられている。
The
論理入力用サーバ20は、論理入力用端末10から入力されたHDLファイルを受け取り、設計データ格納用外部記憶装置50内にHDLファイル群501として格納する。
The
論理合成用サーバ30は、論理合成手段である論理合成処理部301と論理等価性検証手段である論理等価性検証処理部302を有する。
The
論理合成処理部301は、設計データ格納用外部記憶装置50内に格納されたHDLファイル群501を論理合成し、LSIのネットリスト502を生成する。
The logic
論理等価性検証処理部302は、HDLファイル群501とそれを論理合成したネットリスト502との論理等価性を検証する。
The logical equivalence
<HDLファイル群とネットリストの階層構造>
次に、図2〜図4により、本発明の一実施の形態に係る論理等価性検証システムのHDLファイル群とネットリストの階層構造について説明する。図2は、本発明の一実施の形態に係る論理等価性検証システムのHDLファイル群(基準論理回路)の論理階層の模式図、図3は本発明の一実施の形態に係る論理等価性検証システムのネットリスト(比較対象論理回路)の論理階層の模式図、図4は本発明の一実施の形態に係る論理等価性検証システムの検証対象階層を示す模式図である。
<Hierarchical structure of HDL files and netlist>
Next, the hierarchical structure of the HDL file group and netlist of the logical equivalence verification system according to the embodiment of the present invention will be described with reference to FIGS. 2 is a schematic diagram of the logical hierarchy of the HDL file group (reference logic circuit) of the logical equivalence verification system according to the embodiment of the present invention, and FIG. 3 is the logical equivalence verification according to the embodiment of the present invention. FIG. 4 is a schematic diagram showing a verification target hierarchy of the logical equivalence verification system according to the embodiment of the present invention.
図2において、HDLファイル群201は、例えば、複数の設計者により作成され、このHDLファイル群201の各HDLファイルの結合情報を辿っていくと、図2の202に示す論理階層図を構築することができ、大規模なLSIの設計では、その階層構造は、巨大なものとなる。
In FIG. 2, an
図3において、ネットリスト311の内部構造は図3の312に示すように階層構造を持ち、HDLファイル群201と同様に大規模なLSIの設計では、その階層構造は、巨大なものとなる。
In FIG. 3, the internal structure of the
図4において、基準論理回路(HDLファイル群)の階層構造401と比較対象論理回路(ネットリスト)の階層構造402の論理等価性検証において、図4中の波線で示した階層が分割した階層であり、巨大な階層構造の論理等価性検証を行う際の分割検証の対象である。
4, in the logical equivalence verification of the
<論理等価性検証システムの論理等価性検証の動作>
次に、図5により、本発明の一実施の形態に係る論理等価性検証システムの論理等価性検証の動作について説明する。図5は本発明の一実施の形態に係る論理等価性検証システムの論理等価性検証の動作を示すフローチャートである。
<Operation of logical equivalence verification of logical equivalence verification system>
Next, the operation of logical equivalence verification of the logical equivalence verification system according to the embodiment of the present invention will be described with reference to FIG. FIG. 5 is a flowchart showing the logical equivalence verification operation of the logical equivalence verification system according to the embodiment of the present invention.
図5に示すように、本実施の形態の論理等価性検証の動作は、論理合成処理部301と連動することにより、論理等価性検証を自動実行するようになっており、論理等価検証に必要な情報の収集および等価検証ツールへの反映の自動化と、分割検証を行う階層を構築するHDLファイルの自動収集を行っている。
As shown in FIG. 5, the logical equivalence verification operation of the present embodiment automatically performs logical equivalence verification in conjunction with the logic
まず、HDLファイル群501を論理合成処理部301にて合成しLSIのネットリスト502を生成すると直ちに、論理等価性検証処理部302を実行する。この際、論理合成処理部301から論理等価性検証処理部302に対して論理合成時の論理合成した階層情報と合成情報からなる論理合成情報60が受け渡される。
First, as soon as the
そして、論理等価性検証処理部302では、ステップ101で、論理合成処理部301より、論理合成情報60を取得する。
In
ステップ102で、論理合成処理部301より受け取った論理合成情報60の階層情報から、検証対象階層となるLSI最上位階層から見て第2階層を抽出する。検証対象階層となる第2階層は複数存在する場合もあり、これらの第2階層以下の論理規模は、等価検証ツールが検証可能な規模である。
In
ステップ103で、HDLファイル階層検索処理部を用いて、検証対象となる第2階層以下を構成するHDLファイルをそれぞれ収集する。
In
ステップ104で、等価検証処理部1を用いて検証対象階層の論理等価性検証を行い、検証対象階層の数だけこれを繰り返す。 In step 104, the equivalence verification processing unit 1 is used to perform logical equivalence verification of the verification target hierarchy, and this is repeated for the number of verification target hierarchies.
ステップ105で第2階層の検証が終了すると、ステップ106で、等価検証処理部2を用いてHDLファイルとネットリストの第2階層をすべて空箱(ブラックボックス)にした状態で、第2階層同士の結線関係の等価性を検証する。
When the verification of the second hierarchy is completed in
<HDLファイル階層検索処理部の動作>
次に、図6〜図11により、本発明の一実施の形態に係る論理等価性検証システムの論理等価性検証処理部内のHDLファイル階層検索処理部の動作について説明する。
<Operation of HDL file hierarchy search processing unit>
Next, the operation of the HDL file hierarchy search processing unit in the logical equivalence verification processing unit of the logical equivalence verification system according to the embodiment of the present invention will be described with reference to FIGS.
図6は本発明の一実施の形態に係る論理等価性検証システムのHDLファイル階層検索処理部で用いられる第3階層のみを持つHDLファイル群の階層図、図7は本発明の一実施の形態に係る論理等価性検証システムのHDLファイル階層検索処理部で用いられる中間階層を含むHDLファイル群の階層図、図8は本発明の一実施の形態に係る論理等価性検証システムの論理等価性検証処理部内のHDLファイル階層検索処理部の動作を示すフローチャート、図9は本発明の一実施の形態に係る論理等価性検証システムのHDLファイル階層検索処理部内のHDLファイル第1検索処理部の動作を示すフローチャート、図10は本発明の一実施の形態に係る論理等価性検証システムのHDLファイル階層検索処理部内のHDLファイル第2検索処理部の動作を示すフローチャート、図11は本発明の一実施の形態に係る論理等価性検証システムのHDLファイル第1検索処理部およびHDLファイル第2検索処理部内の下位階層検索処理部の動作を示すフローチャートである。 FIG. 6 is a hierarchical diagram of an HDL file group having only the third hierarchy used in the HDL file hierarchy search processing unit of the logical equivalence verification system according to the embodiment of the present invention, and FIG. 7 is an embodiment of the present invention. FIG. 8 is a hierarchy diagram of an HDL file group including an intermediate hierarchy used in the HDL file hierarchy search processing unit of the logical equivalence verification system according to FIG. 8, and FIG. 8 is a logical equivalence verification of the logical equivalence verification system according to the embodiment of the present invention. FIG. 9 is a flowchart showing the operation of the HDL file hierarchy search processing unit in the processing unit, and FIG. 9 shows the operation of the HDL file first search processing unit in the HDL file hierarchy search processing unit of the logical equivalence verification system according to the embodiment of the present invention. FIG. 10 is a flowchart showing the second HDL file search in the HDL file hierarchy search processing unit of the logical equivalence verification system according to the embodiment of the present invention. FIG. 11 is a flowchart showing the operation of the processing unit, and FIG. 11 shows the operation of the lower level search processing unit in the HDL file first search processing unit and the HDL file second search processing unit of the logical equivalence verification system according to the embodiment of the present invention. It is a flowchart to show.
まず、前提として、基準論理回路となるHDLファイル群501は、図6に示すような第2階層の下にある第3階層がそれぞれ1つのHDLファイルに記述されたものと、図7に示すような第2階層の下に中間階層があり、中間階層の下に機能記述された最下位階層があるものに大別される。
First, as a premise, the
HDLファイル群501のファイル名にはネーミングルールがあらかじめ決まっており、“<識別子>_<階層名>”の名前で命名されている。ただし、同じ<階層名>で異なるHDLファイルが存在する場合があり、“<識別子1>_<階層名A>”、”<識別子2>_<階層名A>”のように識別子を使って区別される。論理合成処理部においては同じ階層名Aでも最新のHDLファイルに含まれる方がネットリストに合成された論理である。
Naming rules are determined in advance for the file names of the
図8に示すHDLファイル検索処理部の動作を、図7に示すHDLファイル群を例として説明する。 The operation of the HDL file search processing unit shown in FIG. 8 will be described using the HDL file group shown in FIG. 7 as an example.
図5のステップ103のHDLファイル検索処理部の動作は、図8に示すように、まず、ステップ701でHDLファイル群501のファイルについて、作成日が新しい順に並べたHDLファイルリスト70を作成し、ステップ702でHDLファイル第1検索処理部を用いて、図7の第2階層に相当するファイル61と第3階層に相当するファイル611、ファイル612、ファイル613を、基準論理回路読込みファイルリスト71に出力する。
As shown in FIG. 8, the operation of the HDL file search processing unit in
中間階層の存在する場合は、ステップ704でHDLファイル第2検索処理部を用いて、中間階層に相当するファイル613、ファイル6131、ファイル6132、中間階層の下の最下位階層に相当するファイル61311、ファイル61312、ファイル61321、ファイル61322を基準論理回路読込みファイルリスト71に出力する。
If an intermediate hierarchy exists, in step 704, using the HDL file second search processing unit, a file 613 corresponding to the intermediate hierarchy, a file 6131, a file 6132, a file 61131 corresponding to the lowest hierarchy below the intermediate hierarchy, The file 61312, the file 61321, and the file 61322 are output to the reference logic circuit read
ステップ705で基準論理回路読込みファイルリスト71中の重複したファイル名を省く。これにより検証を行う第2階層配下をすべて記述したHDLファイルのファイル名のリストが、基準論理回路読込みファイルリスト71から得ることができる。
In
また、図8のステップ702のHDLファイル第1検索処理部の動作は、図9に示すように、ステップ801で論理合成情報60より検証対象の第2階層を記述したHDLファイル61を取得する。
Further, in the operation of the HDL file first search processing unit in step 702 in FIG. 8, the HDL file 61 describing the second hierarchy to be verified is acquired from the
ステップ802で検証対象の第2階層のHDLファイル名を基準論理回路読込みファイルリスト71に登録し、ステップ803で下位階層検索処理部にファイル61を渡し、ステップ804で下位階層検索処理部を用いて、下位階層を検索する。
In step 802, the HDL file name of the second layer to be verified is registered in the reference logic circuit read
また、図9のステップ804の下位階層検索処理部の動作は、図11に示すように、ステップ1001でファイル61を読込んで、ステップ1002で構文解析してファイル61に記述された第3階層名を抽出して下位階層リスト73に出力する。
Further, as shown in FIG. 11, the operation of the lower hierarchy search processing unit in step 804 of FIG. 9 is to read the file 61 in
ステップ1003で第3階層名をキーとしてHDLファイルリスト70のファイル名<識別子>_<階層名>と照会する。ステップ1004でキーに最初ヒットするファイル名が存在した場合、ステップ1005で基準論理回路読込みファイルリスト71に追加する。最初にヒットするファイル名を選択するのは作成日付が最新のものを選択するためである。ステップ1004でキーに合致するファイル名にヒットしなかった場合は、エラーとして終了する。
In step 1003, the file name <identifier> _ <layer name> in the
ステップ1006で下位階層リスト73の最終判定を行い、最終でなければ、ステップ1003に戻り、次の第3階層名をキーとしてHDLファイルリストと照会する。これにより基準論理回路読込みファイルリスト71には、ファイル61、ファイル611、ファイル612、ファイル613が出力される。
In step 1006, the final determination of the
また、図8のステップ704のHDLファイル第2検索処理部の動作は、図10に示すように、中間階層が存在する場合は、ステップ901で論理合成情報より中間階層のHDLファイル名ファイル613、ファイル6131、ファイル6132を取得し、ステップ902で基準回路読込みファイルリスト71に追加する。
In addition, as shown in FIG. 10, the operation of the HDL file second search processing unit in step 704 in FIG. 8 is as follows. If there is an intermediate hierarchy, the HDL file name file 613 in the intermediate hierarchy is obtained from the logic synthesis information in step 901. The files 6131 and 6132 are acquired and added to the reference circuit read
ステップ903で中間階層ファイルリスト72を作成し、ステップ904で中間階層ファイルリスト72よりHDLファイル名を1つ取り出し下位階層検索処理部に与え、ステップ905で下位階層検索処理部を実行する。
In step 903, the intermediate
図11に示す下位階層検索処理部を実行する事で、ファイル613からその子階層を記述したファイル6131、ファイル6132を検索し、ファイル6131からはファイル61311、ファイル61312を検索し、ファイル6132からはファイル61321、ファイル61322を検索して基準論理回路読込みファイルリスト71に追加する。基準論理回路読込みファイルリスト71ではファイル613、ファイル6131、ファイル6132が重複するため図8のステップ705で重複したHDLファイル名を省く。
By executing the lower layer search processing unit shown in FIG. 11, the file 6131 and the file 6132 describing the child layers are searched from the file 613, the file 61131 and the file 61312 are searched from the file 6131, and the file from the file 6132 is searched. 61321 and the file 61322 are searched and added to the reference logic circuit read
ステップ906で中間階層ファイルリスト72の最終判定を行い、最終でなければ、ステップ904に戻り、最終であれば終了する。
In step 906, the intermediate
<等価検証処理部1の動作>
次に、図12により、本発明の一実施の形態に係る論理等価性検証システムの論理等価性検証処理部内の等価検証処理部1の動作について説明する。図12は本発明の一実施の形態に係る論理等価性検証システムの論理等価性検証処理部内の等価検証処理部1の動作を示すフローチャートである。
<Operation of Equivalence Verification Processing Unit 1>
Next, the operation of the equivalence verification processing unit 1 in the logical equivalence verification processing unit of the logical equivalence verification system according to the embodiment of the present invention will be described with reference to FIG. FIG. 12 is a flowchart showing the operation of the equivalence verification processing unit 1 in the logical equivalence verification processing unit of the logical equivalence verification system according to the embodiment of the present invention.
図5のステップ104の等価検証処理部1の動作は、図12に示すように、ステップ1101で、論理合成情報より論理合成に使用されたテクノロジライブラリ74を等価検証ツールに読込む。テクノロジライブラリ74はネットリストを構成するゲート回路のライブラリである。
As shown in FIG. 12, the operation of the equivalence verification processing unit 1 in Step 104 of FIG. 5 reads the
ステップ1102で、図8のステップ705で出力した基準回路読込みファイルリスト71を参照してHDLファイル群501のHDLファイルを等価検証ツールに読込み基準論理回路を生成する。
In step 1102, the reference logic read
ステップ1103で、ネットリスト502を等価検証ツールに読込み比較対象論理回路を生成する。
In step 1103, the
ステップ1104で、論理合成情報60より等価検証ツールに設定を実行し、ステップ1105で第2階層の検証対象階層について検証を実行する。
In step 1104, setting is performed in the equivalence verification tool from the
<等価検証処理部2の動作>
次に、図13により、本発明の一実施の形態に係る論理等価性検証システムの論理等価性検証処理部内の等価検証処理部2の動作について説明する。
<Operation of Equivalence Verification Processing Unit 2>
Next, the operation of the equivalence verification processing unit 2 in the logical equivalence verification processing unit of the logical equivalence verification system according to the embodiment of the present invention will be described with reference to FIG.
図13は本発明の一実施の形態に係る論理等価性検証システムの論理等価性検証処理部内の等価検証処理部2の動作を示すフローチャートである。 FIG. 13 is a flowchart showing the operation of the equivalence verification processing unit 2 in the logical equivalence verification processing unit of the logical equivalence verification system according to the embodiment of the present invention.
図5のステップ106の等価検証処理部2の動作は、ステップ1201で、論理合成情報60より論理合成に使用されたテクノロジライブラリ74を等価検証ツールに読込む。
The operation of the equivalence verification processing unit 2 in
ステップ1202で、HDLファイル群501から第1階層のみのHDLファイルを等価検証ツールに読込む。
In step 1202, the HDL file of only the first hierarchy is read from the
ステップ1203で、ネットリスト502を等価検証ツールに読込み、ステップ1204で、第2階層以下をすべてブラックボックスにする。ステップ1205で論理合成情報60より等価検証ツールに設定を実行し、ステップ1206で第2階層間の結線関係を検証する。
In step 1203, the
以上の等価検証処理部1と等価検証処理部2によって論理等価性が保証されたネットリスト502を、設計後工程に進める。
The
以上のように、本実施の形態では、論理合成装置と連動して自動的に論理等価性検証を実施するため、作業工数の削減が可能である。 As described above, in this embodiment, logical equivalence verification is automatically performed in conjunction with the logic synthesis apparatus, so that the number of work steps can be reduced.
また、HDLファイルの階層検索処理部を利用した論理階層分割検証の自動化により、論理追加または変更があった場合の検証効率の向上と検証ミス削減が可能である。 Further, by automating logical hierarchy division verification using the hierarchy search processing unit of the HDL file, it is possible to improve verification efficiency and reduce verification errors when there is a logic addition or change.
<HDLファイルの管理方法>
次に、図14により、本発明の一実施の形態に係る論理等価性検証システムのHDLファイルの管理方法の一例について説明する。図14は本発明の一実施の形態に係る論理等価性検証システムのHDLファイルの管理方法の一例を説明するための説明図である。
<HDL file management method>
Next, an example of a HDL file management method of the logical equivalence verification system according to the embodiment of the present invention will be described with reference to FIG. FIG. 14 is an explanatory diagram for explaining an example of the HDL file management method of the logical equivalence verification system according to the embodiment of the present invention.
図14において、設計中/未検証HDLファイル群1301および検証済HDLファイル群1302は、それぞれ、高速外部記憶装置80および低速大容量外部記憶装置81内に格納されている。
In FIG. 14, a designed / unverified
設計中または論理等価性未検証の設計中/未検証HDLファイル群1301は、論理設計中のため様々なCADツール(シミュレータ、論理合成、等価検証など)から頻繁にアクセスされるものである。そのため、設計中または未検証の設計中/未検証HDLファイル群1301は高速外部記憶装置80に格納する。
The in-design / unverified
また、論理等価性検証が完了したHDLファイルに記述された論理は、正しくゲート回路に変換されLSIとして製造工程に入っていくものであるから、これは設計資産である。このような設計資産である検証済HDLファイル1302は、長期的に保管されるものでありアクセス頻度は少なくなるので、比較的低速な低速大容量外部記憶装置81に保管する。
In addition, since the logic described in the HDL file for which the logic equivalence verification has been completed is correctly converted into a gate circuit and enters the manufacturing process as an LSI, this is a design asset. Since the verified
つまり、本実施の形態の論理等価性検証システムは、高速外部記憶装置80に格納された設計中/未検証HDLファイル群1301の中から論理等価性が保証されたHDLファイルを、設計資産に昇格させ低速大容量外部記憶装置81に移動することで、高コストパフォーマンスな設計データ管理を実現する。
In other words, the logical equivalence verification system according to the present embodiment promotes an HDL file whose logical equivalence is guaranteed from the in-designed / unverified
検証済HDLファイル群1302は、分割されたファイル群であるがそれらの接続情報を辿ると、LSIのネットリストと論理等価な階層構造になることは自明である。
The verified
以上のように、本実施の形態では、設計中/未検証HDLファイル群1301と検証済HDLファイル群1302を、高速外部記憶装置80と低速大容量外部記憶装置81に格納することにより、コストパフォーマンスの高い設計データ管理を行うことが可能である。
As described above, according to the present embodiment, cost performance is achieved by storing the in-design / unverified
以上、本発明者によってなされた発明を実施の形態に基づき具体的に説明したが、本発明は前記実施の形態に限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能であることはいうまでもない。 As mentioned above, the invention made by the present inventor has been specifically described based on the embodiment. However, the present invention is not limited to the embodiment, and various modifications can be made without departing from the scope of the invention. Needless to say.
例えば、本実施の形態では、論理合成処理部301および論理等価性検証処理部302を論理合成用サーバ30内で実行しているが、論理合成処理部301および論理等価性検証処理部302を論理入力用サーバ20内で実行したり、それぞれ別々のサーバ内で実行することも可能である。
For example, in this embodiment, the logic
10…論理入力用端末、20…論理入力用サーバ、30…論理合成用サーバ、40…ストレージエリアネットワーク、50…設計データ格納用外部記憶装置、60…論理合成情報、70…HDLファイルリスト、71…基準論理回路読込みファイルリスト、72…中間階層ファイルリスト、73…下位階層リスト、74…テクノロジライブラリ、80…高速外部記憶装置、81…低速大容量外部記憶装置、301…論理合成処理部、302…論理等価性検証処理部、501…HDLファイル群、502…ネットリスト。
DESCRIPTION OF
Claims (5)
複数の前記ハードウェア記述用プログラム言語ファイルおよび前記複数のハードウェア記述用プログラム言語ファイルを論理合成したゲート回路の情報を格納する記憶装置と、
前記記憶装置内に格納された前記複数のハードウェア記述用プログラム言語ファイルを論理合成し、前記ゲート回路を生成する論理合成手段と、
前記複数のハードウェア記述用プログラム言語ファイルによる基準論理回路と前記複数のハードウェア記述用プログラム言語ファイルを論理合成したゲート回路による比較対象論理回路とを比較し、論理等価性を検証する論理等価性検証手段とを備え、
前記論理等価性検証手段は、前記論理合成手段より論理変更または追加のあった論理階層の情報を受け取り、前記基準論理回路に必要な前記ハードウェア記述用プログラム言語ファイルを検索して論理階層を組み立て、前記比較対象論理回路との論理等価性検証を分割して実行することを特徴とする論理等価性検証システム。 A logical input terminal for inputting a logically described hardware description program language file;
A storage device for storing a plurality of hardware description program language files and gate circuit information obtained by logical synthesis of the plurality of hardware description program language files;
Logic synthesis means for logically synthesizing the plurality of hardware description program language files stored in the storage device and generating the gate circuit;
Logical equivalence of comparing a reference logic circuit by the plurality of hardware description program language files with a comparison target logic circuit by a gate circuit obtained by logical synthesis of the plurality of hardware description program language files and verifying logic equivalence A verification means,
The logical equivalence verifying means receives information on the logic hierarchy that has undergone logic change or addition from the logic synthesis means, and searches the hardware description program language file necessary for the reference logic circuit to assemble the logic hierarchy. A logic equivalence verification system that divides and executes logic equivalence verification with the comparison target logic circuit.
前記論理等価性検証手段は、前記ハードウェア記述用プログラム言語ファイルを検索する際、前記ハードウェア記述用プログラム言語の言語文法に基づいて、上位階層のハードウェア記述用プログラム言語ファイルに記述された下位階層名を抽出し、下位階層を有するハードウェア記述用プログラム言語ファイルを検索することを特徴とする論理等価性検証システム。 The logical equivalence verification system according to claim 1,
The logical equivalence verification means, when searching the hardware description program language file, based on the language grammar of the hardware description program language, the lower level hardware description program language file described in the lower level hardware description program language file A logical equivalence verification system that extracts a hierarchy name and searches for a program language file for hardware description having a lower hierarchy.
前記論理等価性検証手段は、前記ハードウェア記述用プログラム言語ファイルを検索する際、前記ハードウェア記述用プログラム言語ファイルの名前に与えられた論理階層名をキーとして、該当する前記ハードウェア記述用プログラム言語ファイルを検索し、キーが重複した場合にはファイル作成日付の最新のものを選択することを特徴とする論理等価性検証システム。 The logical equivalence verification system according to claim 1,
The logical equivalence verification means, when searching the hardware description program language file, uses the logical hierarchy name given to the name of the hardware description program language file as a key, and the corresponding hardware description program A logical equivalence verification system that searches a language file and selects the latest file creation date when keys are duplicated.
前記論理等価性検証手段は、前記論理等価性検証に必要な情報を、前記論理合成手段よりリアルタイムで取得し、取得した情報を論理等価性の検証時に反映させことを特徴とする論理等価性検証システム。 The logical equivalence verification system according to claim 1,
The logical equivalence verification means acquires information necessary for the logical equivalence verification in real time from the logic synthesis means, and reflects the acquired information when verifying logical equivalence. system.
前記記憶装置は、高速記憶装置および低速大容量記憶装置から構成され、
前記高速記憶装置は、設計中の前記ハードウェア記述用プログラム言語ファイルおよび論理等価性が未検証の前記ハードウェア記述用プログラム言語ファイルを格納し、
前記低速大容量記憶装置は、論理等価性の検証が完了した前記ハードウェア記述用プログラム言語ファイルを格納することを特徴とする論理等価性検証システム。 The logical equivalence verification system according to claim 1,
The storage device is composed of a high-speed storage device and a low-speed mass storage device,
The high-speed storage device stores the program language file for hardware description under design and the program language file for hardware description whose logical equivalence is not verified,
The logical equivalence verification system, wherein the low-speed mass storage device stores the program language file for hardware description that has been verified for logical equivalence.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004276778A JP2006092259A (en) | 2004-09-24 | 2004-09-24 | Logic equivalence verification system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004276778A JP2006092259A (en) | 2004-09-24 | 2004-09-24 | Logic equivalence verification system |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2006092259A true JP2006092259A (en) | 2006-04-06 |
Family
ID=36233159
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2004276778A Pending JP2006092259A (en) | 2004-09-24 | 2004-09-24 | Logic equivalence verification system |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2006092259A (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007328646A (en) * | 2006-06-09 | 2007-12-20 | Nec Engineering Ltd | Logic synthesis method and device |
-
2004
- 2004-09-24 JP JP2004276778A patent/JP2006092259A/en active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007328646A (en) * | 2006-06-09 | 2007-12-20 | Nec Engineering Ltd | Logic synthesis method and device |
JP4679442B2 (en) * | 2006-06-09 | 2011-04-27 | Necエンジニアリング株式会社 | Logic synthesis device |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6530073B2 (en) | RTL annotation tool for layout induced netlist changes | |
US7111269B2 (en) | Comparison of two hierarchical netlist to generate change orders for updating an integrated circuit layout | |
US9576092B2 (en) | Synthesis using multiple synthesis engine configurations | |
US8117576B2 (en) | Method for using an equivalence checker to reduce verification effort in a system having analog blocks | |
US7159202B2 (en) | Methods, apparatus and computer program products for generating selective netlists that include interconnection influences at pre-layout and post-layout design stages | |
US8196075B1 (en) | Generation of input/output models | |
US8495535B2 (en) | Partitioning and scheduling uniform operator logic trees for hardware accelerators | |
JP2002149730A (en) | Device and method for designing circuit and timing allocation device | |
TW200837591A (en) | Circuit-design-modifying method executable in computer system | |
US8522182B2 (en) | Generation of an end point report for a timing simulation of an integrated circuit | |
CN113255258B (en) | Logic synthesis method and device, electronic equipment and storage medium | |
US20220075920A1 (en) | Automated Debug of Falsified Power-Aware Formal Properties using Static Checker Results | |
US6526561B2 (en) | Database for designing integrated circuit device, and method for designing integrated circuit device | |
US6993740B1 (en) | Methods and arrangements for automatically interconnecting cores in systems-on-chip | |
US20050188336A1 (en) | System and method for waiving a verification check | |
US6834379B2 (en) | Timing path detailer | |
JPH06274568A (en) | Expansion method for hierarchical graphic data | |
US6993730B1 (en) | Method for rapidly determining the functional equivalence between two circuit models | |
US7949509B2 (en) | Method and tool for generating simulation case for IC device | |
JP2006092259A (en) | Logic equivalence verification system | |
US7328415B2 (en) | Modeling blocks of an integrated circuit for timing verification | |
JPH06252266A (en) | Automatic design equipment of semiconductor integrated circuit device | |
Beerel et al. | Automatic synthesis of gate-level speed-independent circuits | |
Plassan et al. | Improving the efficiency of formal verification: the case of clock-domain crossings | |
CN114492256B (en) | Integrated circuit digital back-end ECO method, system and computer storage medium |