JPH0782074B2 - Logic verification device - Google Patents
Logic verification deviceInfo
- Publication number
- JPH0782074B2 JPH0782074B2 JP1166074A JP16607489A JPH0782074B2 JP H0782074 B2 JPH0782074 B2 JP H0782074B2 JP 1166074 A JP1166074 A JP 1166074A JP 16607489 A JP16607489 A JP 16607489A JP H0782074 B2 JPH0782074 B2 JP H0782074B2
- Authority
- JP
- Japan
- Prior art keywords
- level
- circuit
- logic
- partial
- boolean expression
- 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.)
- Expired - Lifetime
Links
Landscapes
- Tests Of Electronic Circuits (AREA)
Description
【発明の詳細な説明】 〔産業上の利用分野〕 本発明は論理回路の論理検証装置に関し、特に機能レベ
ルのハードウェア記述言語によるハードウェア記述で表
現された論理回路と、ゲートレベルのハードウェア記述
言語によるハードウェア記述で表現された前記と同じ論
理回路にかかる論理回路との間の論理の一致,不一致を
検出する論理検証装置に関する。BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a logic verification device for a logic circuit, and more particularly to a logic circuit represented by a hardware description in a hardware description language of a function level and a gate level hardware. The present invention relates to a logic verification device for detecting a logic match or a logic mismatch between a logic circuit represented by a hardware description in a description language and the same logic circuit as described above.
1つの論理回路にかかる設計仕様にに基づき、その機能
を、機能レベルのハードウェア記述言語を用いて記述す
ると共に、更にゲートレベルのハードウェア記述言語を
用いて記述し、両記述間の論理の一致,不一致を検証す
ることが従来より行われている。そして、従来、この種
の論理検証を行う装置としては、 (1) 両方のレベルの論理回路にかかるハードウェア
記述に対し、十分なテストパターンを用いて両者をシミ
ュレーションし、その出力値を比較する方法(たとえ
ば、T.Sasaki etal.“Logic Design Verification Usin
g Automated Test Generation"1984.Int′l Test Confe
rence.pp88〜94)を採用した装置。Based on the design specifications of one logic circuit, its function is described by using a hardware level description language, and further by using a gate level hardware description language. Conventionally, verification of agreement and inconsistency has been performed. In the past, as a device for performing this type of logic verification, (1) the hardware description related to the logic circuits of both levels was simulated by using sufficient test patterns, and the output values were compared. Method (eg, T. Sasaki et al. “Logic Design Verification Usin
g Automated Test Generation "1984.Int'l Test Confe
Rence.pp 88-94) adopted device.
(2) 機能レベルのハードウェア記述を徹底的にブー
ル式(FB)に変換し、ゲートレベルのハードウェア記述
により変換したブール式(GB)との間で、F=FB・▲
▼+▲▼・GB≡0を証明する方法を採用した装
置。(2) The function level hardware description is thoroughly converted into a Boolean expression (FB), and between the Boolean expression (GB) converted by the gate level hardware description, F = FB.
▼ + ▲ ▼ ・ A device that adopts the method to prove GB≡0.
が提案されている。Is proposed.
上述した従来の装置のうち前者の論理検証装置は、回路
規模が大きくなるにつれ、特に組み合わせ回路における
入力信号数が増加するにつれ、回路を検証するのに必要
十分なテストパターン数が指数的に増大し、回路のシミ
ュレーション時間が長大になって検証時間が大幅に増加
するという欠点がある。The former logic verification device among the above-mentioned conventional devices exponentially increases the number of test patterns necessary for verifying the circuit as the number of input signals in the combinational circuit increases, as the circuit scale increases. However, there is a drawback that the simulation time of the circuit becomes long and the verification time significantly increases.
また、後者の論理検証装置は、機能レベルのハードウェ
ア記述を全てブール式に変換するので、得られるブール
式は複雑化する傾向にあり、ゲートレベルの論理回路に
対応するブール式と等価であることの証明が困難にな
る。即ち、論理検証が困難になりがちである。特に、高
級な演算機能を機能レベルのハードウェア記述で行う
と、容易にブール式に変換できない為に論理検証が困難
化する場合が多く、たとえブール式に変換できてもその
変換に多大なマシンリソースを消費してしまうという欠
点もある。Further, the latter logic verification device converts all the hardware description at the function level into a Boolean expression, so that the obtained Boolean expression tends to be complicated and is equivalent to the Boolean expression corresponding to the gate level logic circuit. It becomes difficult to prove that. That is, logic verification tends to be difficult. In particular, if a high-level arithmetic function is written in a function-level hardware description, the logic verification often becomes difficult because it cannot be easily converted into a Boolean expression. It also has the drawback of consuming resources.
本発明はこのような従来の欠点を解決したものであり、
その目的は、ブール式の比較による論理検証とテストパ
ターンを使用した比較シミュレーションによる論理検証
との何れを使用するかを、論理回路を分割して得られる
個々の部分回路毎に切り分けることにより、容易に論理
の検証を行うことができる論理検証装置を提供すること
にある。The present invention has solved such a conventional drawback,
The purpose is easy by dividing which of the logic verification by Boolean expression comparison and the logic verification by comparison simulation using a test pattern to be used for each partial circuit obtained by dividing the logic circuit. Another object of the present invention is to provide a logic verification device capable of verifying logic.
本発明は上記の目的を達成するために、同一の論理回路
について、機能レベルのハードウェア記述言語で記述さ
れたハードウェア記述とゲートレベルのハードウェア記
述言語で記述されたハードウェア記述とが存在する場合
に、両記述で表現された機能レベルの論理回路とゲート
レベルの論理回路との論理の等価性を検証する論理検証
装置において、前記機能レベルの論理回路と前記ゲート
レベルの論理回路とを同範囲の複数の部分回路に分割す
る分割手段と、この分割手段により得られた機能レベル
の部分回路のうちブール式に変換容易な部分回路とそれ
に対応するゲートレベルの部分回路とをブール式の比較
方法で論理の検証を行う第1の検証手段と、前記分割手
段により得られた機能レベルの部分回路のうちブール式
に変換することが容易でない機能レベルの部分回路とそ
れに対応するゲートレベルの部分回路とをテストパター
ンを用いた比較シミュレーションによる方法で論理の検
証を行う第2の検証手段とを有している。In order to achieve the above object, the present invention has a hardware description written in a functional level hardware description language and a hardware description written in a gate level hardware description language for the same logic circuit. In this case, in the logic verification device for verifying the logic equivalence of the logic circuit of the function level and the logic circuit of the gate level expressed by both the description, the logic circuit of the function level and the logic circuit of the gate level are A dividing means for dividing into a plurality of partial circuits in the same range, a partial circuit of the functional level partial circuits obtained by the dividing means, which is easy to convert into a Boolean expression, and a corresponding gate level partial circuit, A first verification means for verifying logic by a comparison method, and conversion into a Boolean expression of a partial circuit of a functional level obtained by the dividing means may be provided. And a second verifying means for verifying logical in the method according to the partial circuit of the functional level does not easily compared simulation using a test pattern and a partial circuit of a gate level corresponding thereto.
本発明の論理検証装置においては、分割手段が、機能レ
ベルの論理回路とゲートレベルの論理回路とを同範囲の
複数の部分回路に分割し、第1の検証手段がその分割手
段により得られた機能レベルの部分回路のうちブール式
に変換容易な部分回路とそれに対応するゲートレベルの
部分回路とをブール式の比較方法で論理の検証を行い、
第2の論理検証手段が前記分割手段により得られた機能
レベルの部分回路のうちブール式に変換することが容易
でない機能レベルの部分回路とそれに対応するゲートレ
ベルの部分回路とをテストパターンを用いた比較シミュ
レーションによる方法で論理の検証を行う。In the logic verification device of the present invention, the dividing means divides the functional level logic circuit and the gate level logic circuit into a plurality of partial circuits in the same range, and the first verifying means is obtained by the dividing means. Of the functional level sub-circuits, the partial circuit that is easy to convert into a Boolean expression and the corresponding gate-level sub-circuit are verified in logic by the Boolean expression comparison method,
The second logic verification means uses a test pattern for a functional level partial circuit which is not easy to convert into a Boolean expression among the functional level partial circuits obtained by the dividing means and a corresponding gate level partial circuit. The logic is verified by the method using the comparative simulation.
次に、本発明の実施例について図面を参照して詳細に説
明する。Next, embodiments of the present invention will be described in detail with reference to the drawings.
第1図を参照すると、本発明の一実施例の論理検証装置
1は、同一の論理回路について機能レベルのハードウェ
ア記述言語で記述されたハードウェア記述21とゲートレ
ベルのハードウェア記述言語で記述されたハードウェア
記述22とを入力して処理を行い、処理過程において機能
レベルの部分回路群23,ゲートレベルの部分回路群24,ブ
ール式に変換容易でない部分回路群25,ブール式に変換
容易な部分回路群26,部分回路のブール式27,部分回路の
ブール式28,テストパターン29を逐次に生成し且つこれ
らを使用しつつ、機能レベルのハードウェア記述21とゲ
ートレベルのハードウェア記述22との両記述で表現され
た機能レベルの論理回路とゲートレベルの論理回路との
論理の等価性を検証し、その判定結果30,31を外部に出
力するものである。この論理検証装置1は、同図に示す
ように、機能レベル回路分割手段11,ゲートレベル回路
分割手段12,機能レベル分類手段13,ゲートレベルブール
式変換手段14,機能レベルブール式変換手段15,ブール式
比較検証手段16,自動テストパターン生成手段17および
比較シミュレーション手段18で構成されている。各々の
手段は次のような処理を行う。Referring to FIG. 1, a logic verification device 1 according to an embodiment of the present invention describes a same logic circuit in a hardware description 21 written in a function-level hardware description language and a gate-level hardware description language. The hardware description 22 and the processed hardware description 22 are input and processed, and in the process, the functional level partial circuit group 23, the gate level partial circuit group 24, the partial circuit group 25 that is not easy to convert into a Boolean expression, and the easy conversion to a Boolean expression A sub-circuit group 26, a sub-circuit Boolean expression 27, a sub-circuit Boolean expression 28, and a test pattern 29 are sequentially generated and used, and the function-level hardware description 21 and the gate-level hardware description 22 are used. The logic equivalence of the logic circuit of the function level and the logic circuit of the gate level expressed by the above description is verified, and the judgment results 30 and 31 are output to the outside. As shown in FIG. 1, the logic verification device 1 includes a function level circuit dividing means 11, a gate level circuit dividing means 12, a function level classifying means 13, a gate level Boolean expression converting means 14, a function level Boolean expression converting means 15, It is composed of a Boolean comparison verification means 16, an automatic test pattern generation means 17 and a comparison simulation means 18. Each means performs the following processing.
○機能レベル回路分割手段11 機能レベルのハードウェア記述21で表現された論理回路
を、その論理回路の入力信号と出力信号と内部のフリッ
プフロップとに注目して、各々機能レベルのハードウェ
ア記述で表現された複数の部分回路に分割し、これを機
能レベルの部分回路群23として出力する。その分割処理
の内容としては各種考えられるが、例えば所定の出力信
号を先頭として直前の所定の入力信号または所定のフリ
ップフロップが出現するまでファンイン方向にトレース
し、そのトレースされた範囲を1つの部分回路とする方
法が採用可能である。○ Function level circuit dividing means 11 The logic circuit represented by the hardware description 21 of the function level is focused on the input signals and output signals of the logic circuit and the internal flip-flops, and each is described by the hardware description of the function level. It is divided into a plurality of expressed partial circuits and is output as a functional level partial circuit group 23. Various contents can be considered as the content of the division processing. For example, a predetermined output signal is headed and traced in the fan-in direction until the immediately preceding predetermined input signal or a predetermined flip-flop appears, and the traced range is set to one. A method of forming a partial circuit can be adopted.
○ゲートレベル回路分割手段12 ゲートレベルのハードウェア記述22で表現された論理回
路を、その論理回路の入力信号と出力信号と内部のフリ
ップフロップとに注目して、各々ゲートレベルのハード
ウェア記述で表現され且つ各々が機能レベル回路分割手
段11で得られた部分回路と1対1で対応する複数の部分
回路に分割し、これをゲートレベルの部分回路群24とし
て出力する。ゲートレベルのハードウェア記述22は、機
能レベルのハードウェア記述21と同じ論理回路にかかる
仕様を基に作成されたものであり、同じ入力信号,出力
信号,フリップフロップが存在するので、例えば機能レ
ベル回路分割手段11と同じ出力信号を先頭として直前の
所定の入力信号または所定のフリップフロップが出現す
るまでファンイン方向にトレースし、そのトレースされ
た範囲を1つの部分回路とする方法を採用することによ
り、機能レベル回路分割手段11と同範囲の部分回路を得
ることができる。○ Gate level circuit dividing means 12 The logic circuit represented by the gate level hardware description 22 is focused on the input signal, the output signal and the internal flip-flop of the logic circuit, and each is described by the gate level hardware description. It is divided into a plurality of partial circuits which are expressed and correspond one-to-one with the partial circuits obtained by the function level circuit dividing means 11 and output as a gate level partial circuit group 24. The gate-level hardware description 22 is created based on the specifications related to the same logic circuit as the function-level hardware description 21, and has the same input signal, output signal, and flip-flop. A method is adopted in which the same output signal as that of the circuit dividing means 11 is traced in the fan-in direction until the immediately preceding predetermined input signal or predetermined flip-flop appears, and the traced range is made into one partial circuit. This makes it possible to obtain a partial circuit in the same range as the functional level circuit dividing unit 11.
○機能レベル分類手段13 機能レベルの部分回路群23を入力し、それに含まれる複
数の部分回路を、容易にブール式表現に変換できる部分
回路とそれ以外の他の部分回路とに分類し、前者をブー
ル式に変換容易な部分回路群26として、後者をブール式
に変換容易でない部分回路群25として出力する。Function level classification means 13 Inputs a functional level subcircuit group 23 and classifies a plurality of subcircuits included in the subcircuit group into a subcircuit that can be easily converted into a Boolean expression and another subcircuit other than the subcircuit. Is output as a partial circuit group 26 that is easy to convert into a Boolean expression, and the latter is output as a partial circuit group 25 that is not easy to convert into a Boolean expression.
○ゲートレベルブール式変換手段14 ゲートレベルの部分回路群24を入力し、それに含まれる
全ての部分回路をブール式に変換して部分回路のブール
式27を生成する。具体的には、ゲートレベルの部分回路
群24に含まれる部分回路のうち機能レベル分類手段13で
ブール式に変換容易と分類された機能レベルの部分回路
に対応するゲートレベルの部分回路、およびブール式に
変換容易でないと分類された機能レベルの部分回路に対
応するゲートレベルの部分回路をそれぞれブール式表現
に変換し、前者を部分回路のブール式27b、後者を部分
回路のブール式27aとして出力する。Gate level Boolean expression conversion means 14 Inputs the gate level partial circuit group 24 and converts all the partial circuits included therein into a Boolean expression to generate a partial circuit Boolean expression 27. Specifically, among the partial circuits included in the gate-level partial circuit group 24, a gate-level partial circuit corresponding to a functional-level partial circuit classified as easy to convert into a Boolean expression by the functional-level classifying unit 13, and a Boolean Converting the gate-level sub-circuits corresponding to the functional-level sub-circuits classified as not easy to expression to Boolean expressions, and outputting the former as sub-circuit Boolean expression 27b and the latter as sub-circuit Boolean expression 27a To do.
○機能レベルブール式変換手段15 ブール式に変換容易な部分回路群26を入力してその中の
各部分回路をブール式表現に変換し、部分回路のブール
式28として出力する。Function level Boolean expression conversion means 15 Inputs a partial circuit group 26 that can be easily converted into a Boolean expression, converts each partial circuit therein into a Boolean expression, and outputs it as a Boolean expression 28 of the partial circuit.
○ブール式比較検証手段16 部分回路のブール式28と部分回路のブール式27bとを入
力し、対応する部分回路のブール式が同一の論理を表し
ているか否かを、ブール式の構造を比較して検証し、そ
の結果を判定結果30として出力する。○ Boolean expression comparison verification means 16 Input the Boolean expression 28 of the partial circuit and the Boolean expression 27b of the partial circuit, and compare the structures of the Boolean expressions to see if the Boolean expressions of the corresponding partial circuits represent the same logic. Then, the result is output as the determination result 30.
○自動テストパターン生成手段17 部分回路のブール式27aすなわちブール式に変換容易で
ない部分回路群25中の機能レベルの部分回路に対応する
ゲートレベルの部分回路にかかるブール式より、その部
分回路の論理検証のためのテストパターンを生成し、こ
れをテストパターン29として出力する。Automatic test pattern generation means 17 A Boolean expression 27a of a partial circuit, that is, a logic of the partial circuit from a Boolean expression applied to a gate level partial circuit corresponding to a functional level partial circuit in the partial circuit group 25 that is not easily converted into a Boolean expression. A test pattern for verification is generated and this is output as a test pattern 29.
○比較シミュレーション手段18 テストパターン29中の該当するテストパターンを用い
て、ブール式に変換容易でない部分回路群25中の機能レ
ベルの部分回路と、部分回路のブール式27aに変換され
たそれに対応するゲートレベルの部分回路とをシミュレ
ーションし、両シミュレーション結果を比較することに
より、両部分回路の論理が同一か否かを判定し、その判
定結果31を出力する。○ Comparison simulation means 18 By using the corresponding test pattern in the test pattern 29, the partial circuit of the functional level in the partial circuit group 25 that is not easily converted into the Boolean expression and the partial circuit corresponding to the converted into the Boolean expression 27a of the partial circuit By simulating a gate level partial circuit and comparing both simulation results, it is determined whether or not the logics of both partial circuits are the same, and the determination result 31 is output.
第2図は、機能レベルのハードウェア記述21で表現され
た機能レベルの論理回路と、ゲートレベルのハードウェ
ア記述22で表現されたゲートレベルの論理回路とのそれ
ぞれの例を示す。以下、第2図の例を参照して本実施例
の動作を説明する。FIG. 2 shows an example of each of the functional level logic circuit represented by the functional level hardware description 21 and the gate level logic circuit represented by the gate level hardware description 22. The operation of this embodiment will be described below with reference to the example of FIG.
機能レベルのハードウェア記述21およびゲートレベルの
ハードウェア記述22を与えて論理検証装置1を起動する
と、先ず、機能レベル回路分割手段11は、全体の論理回
路を表した機能レベルのハードウェア記述21を入力し解
析して、入力信号または出力信号またはフリップフロッ
プで区切られた第2図(a)に示す如き部分回路C1fお
よびC2fを切り出す。即ち複数の部分回路に分割し、そ
れらを機能レベルの部分回路群23として出力する。な
お、第2図(a)において、A,B,E,Fは入力信号または
フリップフロップからの出力であり、D,Gは出力信号ま
たはフリップフロップへの入力である。また部分回路C1
fの機能レベルの記述はD=A・Bであり、部分回路C2f
の機能レベルの記述はG=E.ADD.Fである。ここで、
「・」は論理積、「.ADD.」は2進加算を表す。When the logic verification device 1 is activated by giving the hardware description 21 of the function level and the hardware description 22 of the gate level, first, the function level circuit dividing means 11 causes the hardware description 21 of the function level representing the entire logic circuit. Is input and analyzed to cut out partial circuits C1f and C2f as shown in FIG. 2 (a) separated by an input signal or an output signal or a flip-flop. That is, the circuit is divided into a plurality of partial circuits, and these are output as the functional level partial circuit group 23. In FIG. 2A, A, B, E and F are input signals or outputs from the flip-flops, and D and G are output signals or inputs to the flip-flops. Also partial circuit C1
The description of the function level of f is D = AB, and the partial circuit C2f
The functional level description of G is E = ADD.F. here,
"." Represents logical product and ".ADD." Represents binary addition.
一方、ゲートレベル回路分割手段12は、ゲートレベルの
ハードウェア記述22を入力し、例えば機能レベル回路分
割手段11で1つの部分回路が切り出される毎に、それに
対応するゲートレベルの部分回路をハードウェア記述22
から切ら出す。すなわち、すなわち、第2図(b)に示
すように、ゲートレベルのハードウェア記述22より、入
力信号または出力信号またはフリップフロップで区切ら
れた部分回路C1g(これは部分回路C1fに対応する),部
分回路C2g(これは部分回路C2fに対応する)を切り出
し、それらをゲートレベルの部分回路群24として出力す
る。なお、第2図(b)において、各部分回路C1g,C2g
はそれぞれ論理回路表現であるANDゲートやORゲートで
表されているものである。On the other hand, the gate level circuit dividing means 12 inputs the gate level hardware description 22 and, for example, every time one partial circuit is cut out by the function level circuit dividing means 11, the corresponding gate level partial circuit is generated by the hardware. Description 22
Cut out from. That is, that is, as shown in FIG. 2B, from the hardware description 22 at the gate level, a partial circuit C1g separated by an input signal or an output signal or a flip-flop (this corresponds to the partial circuit C1f), The partial circuit C2g (this corresponds to the partial circuit C2f) is cut out and output as a gate-level partial circuit group 24. In addition, in FIG. 2B, each partial circuit C1g, C2g
Are respectively represented by AND gates and OR gates which are logic circuit expressions.
機能レベル回路分割手段11における分割処理が完了する
と、次に機能レベル分類手段13が起動され、機能レベル
の部分回路群23に含まれる部分回路を、ブール式に変換
容易な部分回路群26とブール式に変換容易でない部分回
路群25とに分類する。第2図では、部分回路C1fは容易
にブール式D=A∧Bに変換できるので部分回路群26側
に分類され、部分回路C2fは容易にはブール式に変換で
きないので部分回路群25側に分類される。When the division processing in the function level circuit dividing means 11 is completed, the function level classifying means 13 is activated next, and the partial circuits included in the functional level partial circuit group 23 are easily converted into a Boolean expression. It is classified into a partial circuit group 25 that is not easily converted into an expression. In FIG. 2, since the partial circuit C1f can be easily converted into the Boolean expression D = A∧B, it is classified into the partial circuit group 26 side. Since the partial circuit C2f cannot be easily converted into the Boolean expression, the partial circuit group 25 side is included. being classified.
一方、ゲートレベルブール式変換手段14は、ゲートレベ
ルの部分回路群24に含まれる各部分回路をブール式表現
に変換し、機能レベル分類手段13の分類結果を踏まえ
て、部分回路のブール式27a,部分回路のブール式27bに
分けて出力する。第2図では、部分回路C1gはd=a∧
bに変換されてブール式27b側に、C2gはg=e∧∨
∧fに変換されてブール式27a側に出力される。On the other hand, the gate-level Boolean expression conversion means 14 converts each partial circuit included in the gate-level partial circuit group 24 into a Boolean expression, and based on the classification result of the function level classification means 13, the partial circuit Boolean expression 27a. Then, the Boolean expression 27b of the partial circuit is divided and output. In FIG. 2, the partial circuit C1g is d = a∧
C2g is converted to b on the Boolean expression 27b side and g = e∧∨
It is converted into ∧f and output to the Boolean expression 27a side.
機能レベル分類手段13の分類処理が完了すると、機能レ
ベルブール式変換手段15および自動テストパターン生成
手段17が起動される。When the classification processing of the function level classification means 13 is completed, the function level Boolean expression conversion means 15 and the automatic test pattern generation means 17 are activated.
機能レベルブール式変換手段15は起動されると、ブール
式に変換容易な部分回路群26に含まれる各機能レベルの
部分回路をブール式表現に変換し、部分回路のブール式
28を生成する。そして、ブール式比較検証手段16を起動
する。また、起動された自動テストパターン生成手段17
は、ゲートレベルブール式変換手段14の変換処理の完了
後、部分回路のブール式27aを入力して、すべての論理
を活性化するテストパターン(テスト入力パターン)を
D−アルゴリズムなどを用いて生成する。例えば第2図
の部分回路C2gでは(e,f)=(0,0),(0,1),(1,
0),(1,1)の4つのパターンを生成し、その部分回路
用のテストパターンとしてテストパターン29に出力す
る。そして、テストパターンの生成処理完了後に比較シ
ミュレーション手段18を起動する。When the function level Boolean expression conversion means 15 is activated, it converts the partial circuits of each function level included in the partial circuit group 26 that can be easily converted into a Boolean expression into a Boolean expression, and the Boolean expression of the partial circuit is converted.
Generates 28. Then, the Boolean expression comparison verification means 16 is activated. In addition, the activated automatic test pattern generation means 17
After the conversion process of the gate level Boolean expression conversion means 14 is completed, the Boolean expression 27a of the partial circuit is input to generate a test pattern (test input pattern) that activates all logics by using a D-algorithm or the like. To do. For example, in the partial circuit C2g in FIG. 2, (e, f) = (0,0), (0,1), (1,
Four patterns 0) and (1, 1) are generated and output to the test pattern 29 as test patterns for the partial circuits. Then, after the test pattern generation processing is completed, the comparison simulation means 18 is activated.
ブール式比較検証手段16は起動されると、部分回路のブ
ール式28に含まれる各機能レベルの部分回路のブール式
と、部分回路のブール式27bに含まれるゲートレベルの
対応する部分回路のブール式とを比較する。この比較
は、例えば第2図の部分回路C1f,C1gの場合、D∧∨
∧dが常に0になるか否かを調べることである。上記
の式は、 であり、A=a,B=bであるから展開すると、(A∧B
∧∨A∧B∧)∨(∧A∧B∨∧A∧B)とな
り、A∧=0,B∧=0なので(0∧B∨0∧A)∨
(0∧B∨0∧A)となり、このブール式の値は0とな
る。この値が0であると論理的一致と判定し、他の値ま
たはブール式となると論理的不一致と判定し、判定結果
30を出力する。When the Boolean expression comparison / verification means 16 is activated, the Boolean expression of the partial circuit of each functional level included in the Boolean expression 28 of the partial circuit and the Boolean expression of the corresponding partial circuit of the gate level included in the Boolean expression 27b of the partial circuit. Compare with the expression. For example, in the case of the partial circuits C1f and C1g shown in FIG. 2, this comparison is D∧∨
It is to check whether ∧d is always 0. The above formula is And A = a and B = b, so when expanded, (A∧B
∧∨A∧B∧) ∨ (∧A∧B∨∧A∧B), and A∧ = 0, B∧ = 0, so (0∧B∨0∧A) ∨
(0∧B∨0∧A), and the value of this Boolean expression is 0. If this value is 0, it is determined to be a logical match, and if it is another value or a Boolean expression, it is determined to be a logical mismatch and the determination result
Outputs 30.
他方、比較シミュレーション手段18は、ブール式に変換
容易でない部分回路群25含まれる機能レベルの部分回路
と、ブール式27a中のその部分回路に対応するブール式
で表現されたゲートレベルの部分回路とに対し、テスト
パターン29中の該当するテストパターンを用いてシミュ
レーションを行い、両シミュレーション結果を比較し、
その結果に基づいて判定結果31を出力する。例えば、上
記のテストパターン(e,f)=(0,0),(0,1),(1,
0),(1,1)を用いて第2図の部分回路C2fと部分回路C
2gの両方をシミュレーションすると、部分回路C2fのシ
ミュレーション結果はG=(0),(1),(1),
(0)…(キャリーは除く)であり、部分回路C2gのシ
ミュレーション結果はg=(0),(1),(1),
(0)であり、両者は一致するので部分回路C2fと部分
回路C2gの論理は等しいと判定される。若し、Gとgの
出力値が異なれば、両部分回路の論理は等しくないと判
定される。On the other hand, the comparison simulation means 18 includes a functional level partial circuit included in the partial circuit group 25 which is not easily converted into a Boolean expression, and a gate level partial circuit represented by a Boolean expression corresponding to the partial circuit in the Boolean expression 27a. On the other hand, a simulation is performed using the corresponding test pattern in the test pattern 29, and both simulation results are compared,
The determination result 31 is output based on the result. For example, the above test pattern (e, f) = (0,0), (0,1), (1,
0) and (1,1), the partial circuit C2f and the partial circuit C of FIG. 2 are used.
When both 2g are simulated, the simulation result of the partial circuit C2f is G = (0), (1), (1),
(0) (excluding carry), and the simulation result of the partial circuit C2g is g = (0), (1), (1),
Since it is (0) and both match, it is determined that the logics of the partial circuit C2f and the partial circuit C2g are the same. If the output values of G and g are different, it is determined that the logics of both partial circuits are not equal.
以上説明したように、本発明の論理検証装置において
は、機能レベルのハードウェア記述による論理回路とゲ
ートレベルのハードウェア記述による論理回路とを同範
囲の複数の部分回路に分割し、機能レベルの部分回路の
うちブール式に変換容易な部分回路とそれに対応するゲ
ートレベルの部分回路とはブール式の比較方法で論理の
検証を行い、ブール式に変換することが容易でない機能
レベルの部分回路とそれに対応するゲートレベルの部分
回路とはテストパターンを用いた比較シミュレーション
による方法で論理の検証を行うことにより、次のような
効果を得ることができる。As described above, in the logic verification device of the present invention, the logic circuit based on the hardware description of the function level and the logic circuit based on the hardware description of the gate level are divided into a plurality of partial circuits in the same range, and Of the partial circuits, the partial circuits that are easy to convert into Boolean expressions and the corresponding gate-level partial circuits are the logical level verification method by the comparison method of Boolean expressions, and the partial circuits of the functional level that are not easy to convert into Boolean expressions. The following effects can be obtained by verifying the logic of the corresponding gate-level partial circuit by a method of comparison simulation using a test pattern.
(1) 機能レベルの論理回路を全てブール式に変換す
る場合、ブール式への変換が困難なときは論理検証が困
難になるか或いはブール式への変換に多大のマシンリソ
ースを費やす羽目に陥り易いが、本発明ではブール式へ
の変換が容易でない部分回路については比較シミュレー
ションにより論理の検証を行うので、そのような問題点
が解消される。(1) When all the logic circuits of the function level are converted into Boolean expressions, the logic verification becomes difficult when it is difficult to convert to Boolean expressions, or a lot of machine resources are spent on conversion to Boolean expressions. Although it is easy, in the present invention, since the logic is verified by the comparison simulation for the partial circuit which is not easily converted into the Boolean expression, such a problem is solved.
(2) 比較シミュレーションだけによる論理検証で
は、回路規模が大きくなるにつれテストパターン数が指
数的に増大するが、本発明では、ブール式に変換するこ
とが容易でない機能レベルの部分回路とそれに対応する
ゲートレベルの部分回路との論理の検証にのみ比較シミ
ュレーションによる方法を用いるためテストパターン数
の増加を防ぎ、検証に要する時間を短くすることができ
る。(2) In the logic verification only by the comparative simulation, the number of test patterns increases exponentially as the circuit scale increases, but in the present invention, the functional level partial circuit that is not easily converted into the Boolean expression and the partial circuit corresponding thereto are dealt with. Since the method based on the comparison simulation is used only for verifying the logic with the gate-level partial circuit, it is possible to prevent an increase in the number of test patterns and shorten the time required for verification.
第1図は本発明の一実施例の要部ブロック図および、 第2図は機能レベルのハードウェア記述21で表現された
機能レベルの論理回路とゲートレベルのハードウェア記
述22で表現されたゲートレベルの論理回路との例を示す
図である。 図において、 1……論理検証装置 11……機能レベル回路分割手段 12……ゲートレベル回路分割手段 13……機能レベル分類手段 14……ゲートレベルブール式変換手段 15……機能レベルブール式変換手段 16……ブール式比較検証手段 17……自動テストパターン生成手段 18……比較シミュレーション手段 21……機能レベルのハードウェア記述 22……ゲートレベルのハードウェア記述 23……機能レベルの部分回路群 24……ゲートレベルの部分回路群 25……ブール式に変換容易でない部分回路群 26……ゲート式に変換容易な部分回路群 27……部分回路のブール式 28……部分回路のブール式 29……テストパターン 30,31……判定結果FIG. 1 is a block diagram of an essential part of one embodiment of the present invention, and FIG. 2 is a functional level logic circuit represented by a functional level hardware description 21 and a gate represented by a gate level hardware description 22. It is a figure which shows the example with a logic circuit of a level. In the figure, 1 ... Logic verification device 11 ... Function level circuit dividing means 12 ... Gate level circuit dividing means 13 ... Function level classifying means 14 ... Gate level Boolean conversion means 15 ... Function level Boolean conversion means 16 …… Boolean comparison verification means 17 …… Automatic test pattern generation means 18 …… Comparison simulation means 21 …… Function level hardware description 22 …… Gate level hardware description 23 …… Function level subcircuit group 24 …… Gate-level subcircuits 25 …… Subcircuits that are not easily converted to Boolean expressions 26 …… Subcircuits that are easily converted to gate expressions 27 …… Subcircuit Boolean expressions 28 …… Subcircuit Boolean expressions 29… … Test pattern 30,31 …… Judgment result
Claims (1)
ードウェア記述言語で記述されたハードウェア記述とゲ
ートレベルのハードウェア記述言語で記述されたハード
ウェア記述とが存在する場合に、両記述で表現された機
能レベルの論理回路とゲートレベルの論理回路との論理
の等価性を検証する論理検証装置において、 前記機能レベルの論理回路と前記ゲートレベルの論理回
路とを同範囲の複数の部分回路に分割する分割手段と、 該分割手段により得られた機能レベルの部分回路のうち
ブール式に変換容易な部分回路とそれに対応するゲート
レベルの部分回路とをブール式の比較方法で論理の検証
を行う第1の検証手段と、 前記分割手段により得られた機能レベルの部分回路のう
ちブール式に変換することが容易でない機能レベルの部
分回路とそれに対応するゲートレベルの部分回路とをテ
ストパターンを用いた比較シミュレーションによる方法
で論理の検証を行う第2の検証手段とを具備したことを
特徴とする論理検証装置。1. When there is a hardware description written in a function-level hardware description language and a hardware description written in a gate-level hardware description language for the same logic circuit, both of them are described. In a logic verification device for verifying logic equivalence between a logic circuit of a functional level and a logic circuit of a gate level, a logic circuit of the functional level and a logic circuit of the gate level have a plurality of partial circuits in the same range. And a gate level partial circuit corresponding to the partial circuit which is easily converted into a Boolean expression among the partial circuits of the function level obtained by the dividing means and the logic verification is performed by a Boolean comparison method. A first verifying unit to perform, and a functional level unit that is not easily converted into a Boolean expression among functional level partial circuits obtained by the dividing unit. Logic verification apparatus characterized by comprising a second verifying means for verifying logical in the method according to the circuit and compared simulation using a test pattern and a partial circuit of a gate level corresponding thereto.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP1166074A JPH0782074B2 (en) | 1989-06-28 | 1989-06-28 | Logic verification device |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP1166074A JPH0782074B2 (en) | 1989-06-28 | 1989-06-28 | Logic verification device |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPH0329868A JPH0329868A (en) | 1991-02-07 |
| JPH0782074B2 true JPH0782074B2 (en) | 1995-09-06 |
Family
ID=15824499
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP1166074A Expired - Lifetime JPH0782074B2 (en) | 1989-06-28 | 1989-06-28 | Logic verification device |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH0782074B2 (en) |
Families Citing this family (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP5959162B2 (en) | 2011-06-09 | 2016-08-02 | ルネサスエレクトロニクス株式会社 | Semiconductor device and manufacturing method of semiconductor device |
-
1989
- 1989-06-28 JP JP1166074A patent/JPH0782074B2/en not_active Expired - Lifetime
Also Published As
| Publication number | Publication date |
|---|---|
| JPH0329868A (en) | 1991-02-07 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US6557150B1 (en) | Method of extracting timing characteristics of transistor circuits, storage medium storing timing characteristic library, LSI designing method, and gate extraction method | |
| US20100211922A1 (en) | Method of Performing Statistical Timing Abstraction for Hierarchical Timing Analysis of VLSI circuits | |
| US20170228309A1 (en) | System and method for equivalence class analysis-based automated requirements-based test case generation | |
| CN112597718B (en) | Verification method, verification device and storage medium for integrated circuit design | |
| Gaber et al. | Improved automatic correction for digital VLSI circuits | |
| US6049662A (en) | System and method for model size reduction of an integrated circuit utilizing net invariants | |
| JPH0782074B2 (en) | Logic verification device | |
| US6983429B2 (en) | Formal proof methods for analyzing circuit loading problems under operating conditions | |
| US7047173B1 (en) | Analog signal verification using digital signatures | |
| Van Tassel | An operational semantics for a subset of VHDL | |
| US6877140B1 (en) | Method and system for generating a schematic representing bus structures | |
| JP2845173B2 (en) | Logical collation method | |
| Bidjan-Irani | A rule-based design-for-testability rule checker | |
| US20030188302A1 (en) | Method and apparatus for detecting and decomposing component loops in a logic design | |
| Thatcher et al. | Automatic partitioning and dynamic mixed-mode simulation | |
| Yuan et al. | A SAT Enhanced Word-Level Solver for Constrained Random Simulation | |
| Raja et al. | BNSynth: Bounded Boolean Functional Synthesis | |
| ROY CHOWDHURY et al. | Modelling and simulation of combinational digital circuits using Petri nets | |
| JP2560800B2 (en) | Logical circuit verification device | |
| Miyoshi et al. | Speed up techniques of logic simulation | |
| JP2658857B2 (en) | Equivalent fault extraction method and device | |
| CN121144130A (en) | An Automated Simulation and Testing System and Method for Engineering FPGA Based on RAG-Enhanced Large Language Model | |
| JP2001060216A (en) | Logical equivalence verification device | |
| JPH05128200A (en) | Logic synthesis method and apparatus | |
| El Mandouh et al. | Accelerating Functional Verification Coverage Data Manipulation Using Map Reduce |