JPH07200665A - Simulation device for logic circuit and compiling method for function describing language of logic circuit - Google Patents

Simulation device for logic circuit and compiling method for function describing language of logic circuit

Info

Publication number
JPH07200665A
JPH07200665A JP5336552A JP33655293A JPH07200665A JP H07200665 A JPH07200665 A JP H07200665A JP 5336552 A JP5336552 A JP 5336552A JP 33655293 A JP33655293 A JP 33655293A JP H07200665 A JPH07200665 A JP H07200665A
Authority
JP
Japan
Prior art keywords
simulation
hdl
logic circuit
circuit
description
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
Application number
JP5336552A
Other languages
Japanese (ja)
Inventor
Toru Fujita
透 藤田
Hiroshi Oyama
浩 大山
Kazuyoshi Kono
和義 河野
Takashi Ishikawa
貴史 石川
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Toshiba Corp
Original Assignee
Toshiba Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Toshiba Corp filed Critical Toshiba Corp
Priority to JP5336552A priority Critical patent/JPH07200665A/en
Publication of JPH07200665A publication Critical patent/JPH07200665A/en
Pending legal-status Critical Current

Links

Landscapes

  • Devices For Executing Special Programs (AREA)
  • Logic Circuits (AREA)

Abstract

PURPOSE:To provide a simulation device for logic circuits that can decrease the number of tables where the arithmetic results are previously stored and also can reduce the size of each table. CONSTITUTION:This simulation device is provided with a hardware description language(HDL) describing/analyzing part 11 which analyzes the HDL describing the function of a logic circuit to be simulated and extracts the operator string of each sentence, a merge deciding part 13 which decides the propriety of sharing of each operator string based on the operator string obtained at the part 11 for each sentence, an arithmetic code generating part 14 which generates an arithmetic code that is capable of simulation based on the deciding result of the part 13, and a table producing part 16 which produces a table that performs an arithmetic operation based on the arithmetic code generated at the part 14 and stores this arithmetic result.

Description

【発明の詳細な説明】Detailed Description of the Invention

【0001】[0001]

【産業上の利用分野】本発明は、論理回路の動作を検証
する論理回路のシミュレーション装置及び、シミュレー
ション対象となる論理回路の機能を記述する言語のコン
パイル方法に関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a logic circuit simulation apparatus for verifying the operation of a logic circuit, and a language compiling method for describing the function of the logic circuit to be simulated.

【0002】[0002]

【従来の技術】近年、論理回路規模の増大にともなって
検証作業に多くの時間を要するようになり、論理回路の
設計期間が長期化するという問題が生じてきている。こ
の問題に対し、シミュレータの実行速度を向上させる方
法として、従来はテーブル参照によるシミュレーション
手法が提案されていた。
2. Description of the Related Art In recent years, as the scale of logic circuits has increased, verification work has required a lot of time, and the problem of increasing the design period of logic circuits has arisen. In order to solve this problem, a simulation method based on table lookup has been proposed in the past as a method of improving the execution speed of the simulator.

【0003】この手法は、シミュレータの実行時間の多
くは演算実行時間で占められるため、演算実行時間を短
縮することを目的としたものである。この手法では、演
算結果を予めテーブルに格納しておき、演算実行時にこ
のテーブルを参照することにより、演算実行時間の短縮
を実現している。しかし、このテーブルを参照によるシ
ミュレーション手法には次のような問題点がある。
This method is intended to reduce the calculation execution time because most of the execution time of the simulator is occupied by the calculation execution time. In this method, the calculation result is stored in a table in advance, and the calculation execution time is shortened by referring to this table when the calculation is executed. However, the simulation method by referring to this table has the following problems.

【0004】第1の問題は、入力値のすべての値の組み
合わせに対して式の評価値のテーブルを用意しなくては
ならないため、入力数nの式に対し2n のテーブルサイ
ズとなり、テーブルサイズが膨大なものになってしまう
ことである。第2の問題は、文毎にテーブルが作成され
るためテーブルの数が文の数と同数必要となり、多数の
テーブルを作成する必要があることである。
The first problem is that since a table of evaluation values of expressions must be prepared for all combinations of input values, a table size of 2 n is obtained for an expression with n inputs, and The size is enormous. The second problem is that since a table is created for each sentence, the number of tables is the same as the number of sentences, and it is necessary to create a large number of tables.

【0005】第2の問題に対しては、テーブル数を抑え
るために異なる文同士でも演算が全く同じ場合にはテー
ブルを共有化するという手法も提案されている。しか
し、この手法では前記のテーブルの共有化は全く同じ演
算に対してのみしか適用できないため、一般に共有化の
効果が小さく、テーブル数をそれ程減少させることがで
きないという問題があった。
To address the second problem, there has been proposed a method of sharing the table in order to reduce the number of tables when different statements have exactly the same operation. However, in this method, since the sharing of the table can be applied only to exactly the same operation, there is a problem that the sharing effect is generally small and the number of tables cannot be reduced so much.

【0006】一方、論理シミュレーション装置の処理を
高速化する方法の一つとして、従来から真理値表を用い
る手法が使われている。真理値表は入力信号のパターン
に対する出力信号のパターンを対応づけたデータ構造
で、検証対象回路内の各回路構成要素の動作を求めるた
めに用いられる。即ち、入力信号のパターンが与えれる
と、それに対応して真理値表内の一つの記憶領域が一意
に定まる。その記憶領域の内容が、与えられた入力信号
のパターンに対応する出力信号のパターンである。
On the other hand, a method using a truth table has been conventionally used as one of the methods for speeding up the processing of the logic simulation apparatus. The truth table is a data structure in which the pattern of the output signal is associated with the pattern of the input signal, and is used to obtain the operation of each circuit constituent element in the circuit to be verified. That is, when the pattern of the input signal is given, one storage area in the truth table is uniquely determined correspondingly. The content of the storage area is an output signal pattern corresponding to the given input signal pattern.

【0007】入力信号の各パターンに対する出力信号の
パターンは、予め計算され真理値表に格納されているの
で、シミュレーション時には、各回路構成要素の出力す
る信号のパターンを再計算する必要はなく、入力信号の
パターンをキーとして真理値表を検索するだけでよい。
従って、出力信号のパターンを高速に求める事ができ、
シミュレーションに要する時間を短縮することが可能で
ある。
Since the pattern of the output signal for each pattern of the input signal is calculated in advance and stored in the truth table, it is not necessary to recalculate the pattern of the signal output by each circuit component during simulation, All you have to do is search the truth table using the signal pattern as a key.
Therefore, the pattern of the output signal can be obtained at high speed,
It is possible to reduce the time required for simulation.

【0008】次に、例えば4ビットALUの従来の真理
値表について説明する。
Next, a conventional truth table of, for example, a 4-bit ALU will be described.

【0009】図26(a)は4ビットALUの回路記号
を示す図で、図26(b)はその機能仕様の一例を示す
図である。
FIG. 26 (a) is a diagram showing a circuit symbol of a 4-bit ALU, and FIG. 26 (b) is a diagram showing an example of its functional specifications.

【0010】図26において、入力信号A,Bの両方或
いは一方の値に対して演算を実行し、結果を出力信号Y
に出力する。入力信号A,Bは4ビットのデータ系信号
で、2の補数表現を用いて−8から+7までの整数値を
表す。Yは5ビットのデータ系信号で、2の補数表現を
用いて−16から+15までの整数値を表す。実行され
る演算の種類は、4ビットの制御系入力信号OPによっ
て選択される。
In FIG. 26, the operation is executed on both or one of the values of the input signals A and B, and the result is output signal Y.
Output to. The input signals A and B are 4-bit data system signals and represent integer values from -8 to +7 by using 2's complement notation. Y is a 5-bit data system signal and represents an integer value from -16 to +15 by using 2's complement notation. The type of operation to be executed is selected by the 4-bit control system input signal OP.

【0011】図27は従来の論理シミュレーション装置
における真理値表と、その要素参照方法を示した図であ
る。
FIG. 27 is a diagram showing a truth table and its element reference method in the conventional logic simulation apparatus.

【0012】図27おいて、入力信号OP,A,Bの値
から作成した、連接ビット列271の値を、真理値表2
72の添え字と見なして、出力信号Yの値を求める。
In FIG. 27, the value of the concatenated bit string 271 created from the values of the input signals OP, A and B is converted into the truth table 2
The value of the output signal Y is obtained by regarding it as a subscript of 72.

【0013】例えば、OP=1000(十進数8:演算
Y=A+Bを選択)、A=0101(十進数5)、B=
0110(十進数6)である時のYの値、即ち5と6の
和11を求める場合、OP,A,Bの連接ビット列10
0001010110で表される値、即ち十進数213
4を添え字として、真理値表を参照しYの値01011
(十進数11)を得る。
For example, OP = 1000 (decimal number 8: operation Y = A + B is selected), A = 0101 (decimal number 5), B =
When the value of Y when 0110 (decimal number 6), that is, the sum 11 of 5 and 6, is obtained, the concatenated bit string 10 of OP, A, and B
The value represented by 0001010110, that is, the decimal number 213
The value of Y is 01011, referring to the truth table with 4 as a subscript
Get (decimal 11).

【0014】真理値表の1要素につき1単位の記憶領域
が必要であるとすると、従来方式における、4ビットA
LUの例の真理値表の格納に必要な記憶領域の大きさ
は、連接ビット列の長さが12ビットであるので、40
96(=2の12乗)単位となる。
Assuming that one unit of storage area is required for each element of the truth table, 4-bit A in the conventional method is used.
The size of the storage area required to store the truth table in the example of LU is 40 because the length of the concatenated bit string is 12 bits.
It becomes 96 (= 2 to the 12th power) unit.

【0015】しかしながら、この方法では、入力信号の
全ての可能なパターンに対して、出力信号のパターンを
決定可能でなければならないので、入力信号の個数が増
えるにつれ、その可能なパターンは指数関数的に増加
し、真理値表の格納に必要な記憶領域は膨大な量になる
という問題があった。
However, with this method, the pattern of the output signal must be able to be determined for all possible patterns of the input signal, so that as the number of input signals increases, the possible pattern becomes exponential. However, there is a problem that the storage area required for storing the truth table becomes huge.

【0016】従って、従来の論理シミュレーション装置
においては、ゲート単位や数個のゲートを組み合わせた
基本セルといった入力信号の少ない単純な回路構成要素
に対しては、真理値表を用いた高速化手法が適用できる
が、入力信号の多い比較的規模の大きな回路構成要素に
対しては、この手法を適用する事ができなかった。
Therefore, in the conventional logic simulation apparatus, a speed-up method using a truth table is used for a simple circuit component having a small number of input signals such as a gate unit or a basic cell in which several gates are combined. Although applicable, this technique could not be applied to a relatively large scale circuit component having many input signals.

【0017】一方、シミュレーション対象の論理回路の
機能を記述したハードウェア記述言語(HDL)の記述
では、ひとつの記述の中で別の記述を参照することがで
きるため参照される順序に従ってプログラムの記述の解
析が済んでいなくてはならない。
On the other hand, in the description of the hardware description language (HDL) describing the function of the logic circuit to be simulated, another description can be referred to in one description, and therefore the description of the program is performed in the order of reference. Must have been analyzed.

【0018】これまでのHDLをコンパイルするコンパ
イラでは、記述を修正して再コンパイルを実行しても、
直接に参照している記述のコンパイルが済んでいるかど
うかを調べているのみである。直接参照しているファイ
ルのコンパイル時刻を調べているのみであるから、参照
関係にあるファイルを再コンパイルするときには、今度
はそのファイルから直接参照しているファイルのコンパ
イルが済んでいるかどうかを調べて、必要ならば再コン
パイルしなくてはならない。
In the compiler for compiling HDL up to now, even if the description is corrected and recompilation is executed,
I'm just checking to see if the description that is directly referenced has been compiled. Since I am only checking the compile time of the file that is directly referenced, when recompiling a file that has a reference relationship, it is now necessary to check whether the file that is directly referenced by that file has been compiled. , You have to recompile if necessary.

【0019】すなわち、基本的に記述の参照関係(解析
順序でもある)はコンパイラの使用者が管理しなくては
ならない。また、記述が一部修正されている時でも、参
照系列に属するすべてのファイルを再コンパイルしてお
り無駄が多かった。
That is, basically, the reference relationship of the description (which is also the analysis order) must be managed by the user of the compiler. Moreover, even if the description was partially modified, it was wasteful because all files belonging to the reference sequence were recompiled.

【0020】[0020]

【発明が解決しようとする課題】以上説明したように、
テーブルを参照による従来の論理回路のシミュレーショ
ン装置においては、入力値のすべての値の組み合わせに
対してテーブルを用意しなくてはならないため、テーブ
ルサイズが膨大になるとともに。文毎にテーブルが作成
されるため多数のテーブルを作成する必要があった。
As described above,
In a conventional logic circuit simulation apparatus that refers to a table, the table must be prepared for all combinations of input values, and the table size becomes huge. Since a table is created for each statement, it was necessary to create many tables.

【0021】また、真理値表を使用した従来の論理回路
のシミュレーション装置においては、検証対象回路中の
規模の大きな回路構成要素に対しては、真理値表格納に
必要な記憶領域が膨大になり、真理値表を用いた高速化
の手法が適用できないという問題があった。
Further, in the conventional logic circuit simulation apparatus using the truth table, the storage area required for storing the truth table becomes enormous for a large-scale circuit constituent element in the circuit to be verified. However, there is a problem that the speed-up method using the truth table cannot be applied.

【0022】さらに、HDL記述では、記述の参照関係
はコンパイラの使用者が管理しなくてはならず、また記
述が一部修正されている時でも参照系列に属するすべて
のファイルを再コンパイルしておりコンパイルに時間が
かかっていた。
Further, in the HDL description, the reference relation of the description must be managed by the user of the compiler, and even when the description is partially modified, all files belonging to the reference sequence are recompiled. It took a long time to compile.

【0023】そこで、本発明は、上記に鑑みてなされた
ものであり、その目的とするところは、演算結果を予め
格納したテーブルの数ならびにサイズを縮小化した論理
回路のシミュレーション装置を提供することにある。
Therefore, the present invention has been made in view of the above, and an object of the present invention is to provide a simulation apparatus of a logic circuit in which the number and size of tables in which operation results are stored in advance are reduced. It is in.

【0024】また、他の目的は、真理値表格納領域を縮
小化して、比較的規模の大きな複雑な回路構成要素に対
しても真理値表を用いた論理シミュレーションを可能と
する論理回路のシミュレーション装置を提供することに
ある。
Another object of the present invention is to simulate a logic circuit by reducing the storage area for the truth table and enabling logic simulation using the truth table even for complex circuit components having a relatively large scale. To provide a device.

【0025】さらに、他の目的は、必要のない再コンパ
イルを省略して、コンパイル時間の短縮化を達成し得る
論理回路の機能記述言語のコンパイル方法を提供するこ
とにある。
Another object of the present invention is to provide a method of compiling a functional description language for a logic circuit, which can shorten the compilation time by omitting unnecessary recompilation.

【0026】[0026]

【課題を解決するための手段】上記目的を達成するため
に、本発明の第1の特徴は、論理回路のシミュレーショ
ンを行うシミュレーション装置において、シミュレーシ
ョン対象の論理回路の機能を記述したハードウェア記述
言語(HDL)を解析して各文毎の演算子の列である演
算子列を抽出するHDL記述解析手段と、前記HDL記
述解析手段により得られた文毎の演算子列から各演演算
子列間の共有化の可否を判定するマージ判定手段と、前
記マージ判定手段によるマージ判定結果に基づいてシミ
ュレーション実行可能な演算コードを生成する演算コー
ド生成手段と、前記演算コード生成手段によって生成さ
れた演算コードから演算を実行し、その演算結果を格納
したテーブルを作成するテーブル作成手段とから構成さ
れる。
In order to achieve the above object, the first feature of the present invention is to provide a hardware description language for describing the function of a logic circuit to be simulated in a simulation device for simulating a logic circuit. HDL description analysis means for analyzing (HDL) to extract an operator sequence which is a sequence of operators for each sentence, and each operator sequence from the operator sequence for each sentence obtained by the HDL description analysis means A merge determination unit that determines whether or not sharing is possible, an operation code generation unit that generates a simulation-executable operation code based on a merge determination result by the merge determination unit, and an operation generated by the operation code generation unit. It comprises a table creating means for executing an operation from a code and creating a table storing the operation result.

【0027】本発明の第2の特徴は、論理回路のシミュ
レーションを行うシミュレーション装置において、回路
記述を入力として論理演算機能を有する回路構成要素の
各種類毎に、その機能仕様となる入力信号のパターンに
対する出力信号のパターンの定義情報を生成する回路記
述解析手段と、前記回路構成要素の機能仕様について、
その入力信号群を組分けし各々の組毎に部分真理値表を
作成し、それらを階層的に接続して構成される階層化真
理値表を作成する階層化真理値表作成手段と、前記階層
化真理値表を用いて、前記回路構成要素各々について、
その入力信号のパターンから出力信号パターンを決定す
るシミュレーション手段とから構成される。
A second feature of the present invention is that, in a simulation device for simulating a logic circuit, an input signal pattern which is a functional specification of each type of circuit constituent element having a logic operation function with a circuit description as an input. Circuit description analysis means for generating the definition information of the pattern of the output signal, and the functional specifications of the circuit components,
Hierarchized truth table creating means for grouping the input signal groups, creating a partial truth table for each set, and creating a hierarchical truth table configured by hierarchically connecting them, Using the hierarchical truth table, for each of the circuit components,
And a simulation means for determining an output signal pattern from the pattern of the input signal.

【0028】本発明の第3の特徴は、シミュレーション
対象の論理回路の機能を記述したハードウェア記述言語
(HDL)をコンパイルするコンパイル方法において、
HDLソース間の参照関係情報をファイルに格納するス
テップと、HDLソースのコンパイル時に前記参照関係
情報を基に、参照先ソースファイルの変更の有無を求
め、参照先ソースの再コンパイルが必要か否かを判断す
るステップと、前記参照先ソースの再コンパイルが必要
な場合には、予め再コンパイルを行うステップとから構
成される。
A third feature of the present invention is a compiling method for compiling a hardware description language (HDL) which describes the function of a logic circuit to be simulated.
A step of storing reference relationship information between HDL sources in a file, and whether or not the reference source file needs to be recompiled based on the reference relationship information at the time of compiling the HDL source. And a step of performing recompilation in advance when the reference source needs to be recompiled.

【0029】本発明の第4の特徴は、本発明の第1の特
徴において、HDL記述解析手段によって得られた各文
毎の演算子列を保持する演算子列保持手段と、前記マー
ジ判定手段によって得られたマージ判定結果と前記テー
ブル作成手段によって作成されたテーブルとを保持する
テーブル保持手段を有してなる。
A fourth aspect of the present invention is the same as the first aspect of the present invention, in which the operator sequence retaining means retains the operator sequence for each sentence obtained by the HDL description analyzing means, and the merge determining means. Table holding means for holding the merge determination result obtained by the above and the table created by the table creating means.

【0030】本発明の第5の特徴は、本発明の第2の特
徴において、階層化真理値表作成手段が入力信号のパタ
ーンの一部を無効化するマスクパターンを階層化真理値
表に付加する手段を有してなる。
The fifth feature of the present invention is that, in the second feature of the present invention, a mask pattern for invalidating a part of the pattern of the input signal by the hierarchical truth table creating means is added to the hierarchical truth table. Means for doing so.

【0031】[0031]

【作用】上記構成において、本発明の第1の特徴は、H
DL記述解析手段が、HDLを解析することにより文毎
の演算子列を得、得られた演算子列は演算子列保持手段
において保持し、マージ判定手段が、HDL記述解析手
段によって得られた文毎の式に対する演算子列を比較す
ることにより演算子列間の共有化の可否を判定し、得ら
れた判定結果は保持手段において保持され、演算コード
生成手段が、マージの判定結果にもとづいて共有化が可
能な文の組に対して式の評価値が不変でかつすべての演
算子列が同一となるように各文の演算式を変換し、変換
された演算式から演算実行可能な演算コードを生成し、
テーブル作成手段が、演算コード生成手段で生成された
演算コードに基づき演算を実行し、演算結果をテーブル
に格納するようにしている。
In the above construction, the first feature of the present invention is that H
The DL description analysis means obtains the operator sequence for each sentence by analyzing the HDL, holds the obtained operator sequence in the operator sequence holding means, and the merge determination means is obtained by the HDL description analysis means. Whether or not the operator sequences can be shared is determined by comparing the operator sequences for the expressions of each statement, and the obtained determination result is held in the holding unit, and the operation code generation unit is based on the merge determination result. It is possible to convert the arithmetic expression of each statement so that the evaluation value of the expression is invariable and the operator sequence is the same for the set of statements that can be shared, and execute the operation from the converted arithmetic expression. Generate opcode,
The table creating means executes the operation based on the operation code generated by the operation code generating means and stores the operation result in the table.

【0032】上記構成において、本発明の第2の特徴
は、回路記述解析手段が、回路記述を入力として論理演
算機能を持つ回路構成要素の各種類毎にその機能仕様を
生成し、回路記述解析手段はこの他にシミュレーション
実行時に必要となる回路構成要素間の接続を表した情報
等の接続情報も生成し、階層化真理値表作成手段が、回
路記述解析手段の生成した回路構成要素の機能仕様を入
力としてその入力信号群を組分けし各々の組毎に部分真
理値表を作成し、それらを階層的に接続した真理値表を
作成し、シミュレーション手段が、回路記述解析手段が
生成した接続情報と階層化真理値表作成手段が作成した
階層化真理値表及びテストパターンを入力として論理シ
ミュレーションを実行する。
In the above-mentioned configuration, the second characteristic of the present invention is that the circuit description analyzing means generates a functional specification for each kind of circuit constituent element having a logical operation function with the circuit description as an input, and analyzes the circuit description. In addition to this, the means also generates connection information such as information indicating the connection between the circuit components necessary for executing the simulation, and the hierarchical truth table creation means functions the circuit components generated by the circuit description analysis means. Inputting the specifications, the input signal groups are divided into groups, a partial truth table is created for each group, and a truth table is created by hierarchically connecting them, and the simulation means and the circuit description analysis means generate it. A logical simulation is executed with the connection information, the hierarchical truth table created by the hierarchical truth table creating means, and the test pattern as inputs.

【0033】上記構成において、本発明の第3の特徴
は、VDLソース間の参照関係情報をファイルに格納
し、HDLソースのコンパイル時に前記参照関係情報を
基に参照先ソースファイルの変更の有無を求め、参照先
ソースの再コンパイルが必要か否かを判断し、前記参照
先ソースの再コンパイルが必要な場合には、予め再コン
パイルを行うようにしている。
In the above structure, the third feature of the present invention is to store the reference relation information between VDL sources in a file, and check whether or not the reference destination source file is changed based on the reference relation information at the time of compiling the HDL source. Then, it is determined whether or not the reference source is required to be recompiled. If the reference source is required to be recompiled, the recompilation is performed in advance.

【0034】上記構成において、本発明の第4の特徴
は、HDL修正が施された場合は、HDL記述解析手段
によって得られた演算子列と演算子列保持手段において
保持されている修正前の演算子列を比較することにより
修正の施された文を発見し、修正の施された文の演算子
列に対してマージ判定手段による演算子列間の共有の可
否を調べ、マージ判定手段によって得られたマージ判定
結果とテーブル保持手段により保持されている修正前の
マージ判定結果を比較し、その結果更新された分に対し
てのみ演算コード生成手段において演算コードを生成
し、テーブル作成手段においてテーブルを再構築するよ
うにしている。
In the above configuration, the fourth feature of the present invention is that when HDL modification is performed, the operator sequence obtained by the HDL description analyzing means and the pre-modification stored in the operator sequence holding means The corrected sentence is found by comparing the operator sequences, and the merge determination means checks whether or not the operator sequence of the corrected sentence can be shared between the operator sequences. The obtained merge determination result is compared with the merge determination result before correction held by the table holding means, and the operation code generation means generates the operation code only for the updated result, and the table creation means I'm trying to rebuild the table.

【0035】上記構成において、本発明の第5の特徴
は、階層化真理値表作成手段が、入力信号のパターンの
一部を無効化するマスクパターンを含んだ階層化真理表
を作成し、シミュレーション手段が、マスクパターンを
付加した階層化真理値表の他接続情報やテストパターン
を入力して論理シミュレーションを実行するようにして
いる。
In the above structure, the fifth feature of the present invention is that the hierarchical truth table creating means creates a hierarchical truth table including a mask pattern for invalidating a part of the pattern of the input signal, and performs simulation. The means inputs the connection information and the test pattern other than the hierarchical truth table to which the mask pattern is added and executes the logic simulation.

【0036】[0036]

【実施例】以下、図面を用いて本発明の実施例を説明す
る。
Embodiments of the present invention will be described below with reference to the drawings.

【0037】図1は請求項1記載の発明の一実施例に係
わる論理回路のシミュレ−ション装置の構成を示す図で
ある。
FIG. 1 is a diagram showing the structure of a logic circuit simulation apparatus according to an embodiment of the present invention.

【0038】図1において、論理回路のシミュレ−ショ
ン装置1は、HDL記述解析部11、演算子列保持部1
2、マージ判定部13、演算コード生成部14、演算実
行部15、テーブル作成部16、テーブル保持部17、
シミュレ−ション実行部18を備えて構成されている。
In FIG. 1, a logic circuit simulation device 1 includes an HDL description analysis unit 11 and an operator sequence holding unit 1.
2, merge determination unit 13, operation code generation unit 14, operation execution unit 15, table creation unit 16, table holding unit 17,
The simulation executing unit 18 is provided.

【0039】シミュレ−ション装置1がHDL記述2を
読み込むと、HDL記述解析部11にて文毎に演算子列
を求める。この後、各文の演算子列の情報は演算子列保
持部15にて保持される。保持した演算子列は記述に修
正が施された場合、修正後の演算子列を比較することに
より修正が施された文を発見するために用いられる。次
に、マージ判定部13において、HDL記述解析部11
で求めた演算子列を用いて演算子列の共有の可否を調
べ、さらに共有可能な文の中から最適なマージを選択す
る。ここで得られた結果はテーブル保持部17において
保持される。
When the simulation apparatus 1 reads the HDL description 2, the HDL description analysis unit 11 obtains an operator sequence for each sentence. After this, the information on the operator sequence of each sentence is held in the operator sequence holding unit 15. When the description is modified, the retained operator sequence is used to find the modified sentence by comparing the modified operator sequences. Next, in the merge determination unit 13, the HDL description analysis unit 11
Whether or not the operator sequence can be shared is checked using the operator sequence obtained in step 1, and the optimum merge is selected from the sharable statements. The result obtained here is held in the table holding unit 17.

【0040】次に、演算コード生成部14において、演
算実行のための演算コードを文毎に生成する。演算コー
ドを生成する際、マージ可能な文同士は論理を変えずに
同一の演算となるように変換する。
Next, the operation code generator 14 generates an operation code for executing the operation for each sentence. When generating the operation code, the mergeable statements are converted so as to be the same operation without changing the logic.

【0041】次に、演算実行部15において、前で求め
た演算コードに従い演算実行をおこなう。演算結果によ
りテーブル作成部16はテーブルを作成する。こうして
得られたテーブルはテーブル保持部17において保持さ
れる。
Next, the operation executing section 15 executes the operation according to the operation code obtained previously. The table creation unit 16 creates a table based on the calculation result. The table thus obtained is held in the table holding unit 17.

【0042】次に、各処理部の処理フローについて、図
7のHDL記述を例にして説明する。
Next, the processing flow of each processing unit will be described by taking the HDL description of FIG. 7 as an example.

【0043】初めに、図7のHDL記述71が読み込ま
れると、HDL記述解析部11にて以下の処理がおこな
われる。
First, when the HDL description 71 shown in FIG. 7 is read, the HDL description analysis unit 11 performs the following processing.

【0044】この処理フローは図2に示すように、まず
ステップ21にて、記述に修正が入っているかどうかを
チェックする。これは演算子列保持部12に修正前の演
算子列が残っているかどうかで判断される。演算子列が
残っていれば現在、読み込まれているHDL記述は修正
されたものとみなされる。記述に修正が施されていなけ
れば直ちにステップ24を実行し、各文それぞれについ
て演算子列を求める。図7の記述71の演算子列につい
ては図8の81に示してある。
In this processing flow, as shown in FIG. 2, first, at step 21, it is checked whether or not the description is modified. This is determined by whether or not the operator sequence before correction remains in the operator sequence holding unit 12. If the operator string remains, the currently read HDL description is regarded as modified. If the description has not been modified, step 24 is immediately executed to find the operator sequence for each sentence. The operator sequence of the description 71 in FIG. 7 is shown at 81 in FIG.

【0045】一方、ステップ21において、記述に修正
が施されていればステップ22にて修正が施された文を
見つけだす。これは、演算子列保持部12に残っている
修正前の演算子列と新たに求めた演算子列とを比較し、
演算子列が異なっていれば修正が施されていることがわ
かる。
On the other hand, if the description is modified in step 21, the modified sentence is found in step 22. This compares the uncorrected operator sequence remaining in the operator sequence holding unit 12 with the newly obtained operator sequence,
If the operator sequence is different, it can be seen that the correction has been made.

【0046】このようにして、修正の施された文を見つ
けると、次にステップ23において修正の施された文の
演算子列を求める。図7のHDLの修正後の例72の演
算子列は図8の82に示してある。
When the corrected sentence is found in this way, the operator sequence of the corrected sentence is obtained in step 23. The operator sequence of the modified example 72 of the HDL of FIG. 7 is shown at 82 in FIG.

【0047】次に、テーブル・マージ判定部13では、
まず図3に示すようにステップ31においてド・モルガ
ンの定理等を用いて論理式を展開する。例えば、図7の
71の演算式は、 w=(not a1) and (n
ot a2) and a3のように展開される。
Next, in the table merge determination section 13,
First, as shown in FIG. 3, in step 31, a logical expression is developed using De Morgan's theorem or the like. For example, the arithmetic expression 71 in FIG. 7 is w = (not a1) and (n
ot a2) and a3.

【0048】次に、ステップ32において、文が2つ以
上あるかどうか調べる。ステップ32の条件を満たして
いれば、ステップ33において同じ記述上の演算子列を
比較し、演算子列が最も長いものを選び出す。次に、ス
テップ34において、その最長の演算子列と他の演算子
列とを比較し、演算子列のすべてが最長の演算子列に含
まれているかどうかを調べる。含まれていれば、2つの
演算はマージできる。ステップ34のアルゴリズムは図
4に示してある。
Next, in step 32, it is checked whether there are two or more sentences. If the condition of step 32 is satisfied, the operator sequences in the same description are compared in step 33, and the one having the longest operator sequence is selected. Next, in step 34, the longest operator sequence is compared with other operator sequences to see if all of the operator sequences are included in the longest operator sequence. If included, the two operations can be merged. The algorithm of step 34 is shown in FIG.

【0049】次に、図4を用いてステップ34について
説明する。
Next, step 34 will be described with reference to FIG.

【0050】ステップ33で求めた演算子列が最も長い
ものを選び出すと、ステップ41において最長の演算子
列以外の文を一つ選ぶ。次に、ステップ42において、
ステップ41で選んだ文の演算子列に含まれる演算子を
一つ取り出す。次に、ステップ43において、前で取り
出した演算子が最長の演算子列の中の演算子と一致する
ものがあるかどうか調べる。ステップ43の条件を満た
していれば次にステップ44に進み、選ばれた文の演算
子列の演算子をすべて取り出したかどうかを調べる。ス
テップ44の条件を満たしていればステップ41で選ん
だ文は最長の演算子列を持つ文とマージ可能であり求め
る文である。
When the longest operator sequence is selected in step 33, one sentence other than the longest operator sequence is selected in step 41. Then, in step 42,
One operator included in the operator sequence of the sentence selected in step 41 is extracted. Next, in step 43, it is checked whether or not the previously fetched operator matches the operator in the longest operator sequence. If the condition of step 43 is satisfied, the routine proceeds to step 44, where it is checked whether all the operators in the operator sequence of the selected sentence have been taken out. If the condition of step 44 is satisfied, the sentence selected in step 41 is the desired sentence that can be merged with the sentence having the longest operator sequence.

【0051】一方、ステップ43の条件を満たしていな
ければ、ステップ41で選んだ文はステップ34で求め
る文ではない。すなわち、最長の演算子列を持つ文とは
マージ不可能である。また、ステップ44において条件
が満たされていないならば、ステップ42に戻り、先に
選んだ演算子とは別の演算子を取り出す。したがって、
ステップ42〜44は各演算子列に対して繰り返される
ことになる。
On the other hand, if the condition of step 43 is not satisfied, the sentence selected in step 41 is not the sentence obtained in step 34. That is, it cannot be merged with the statement having the longest operator sequence. If the condition is not satisfied in step 44, the process returns to step 42 and another operator different from the operator selected previously is taken out. Therefore,
Steps 42-44 will be repeated for each operator sequence.

【0052】こうして、ステップ45および46に達し
た後は、ステップ47を実行し、最長の演算子列を持つ
文以外のすべての文に対し、ステップ41〜45,46
を実行し終えれば一つのマージの組み合わせが得られる
ことになる。こうして、ステップ34が終了すると、次
に、ステップ35へと進み、ステップ34で求めた文の
演算子列と最長の演算子列の差分を求める。次に、ステ
ップ36において最長の演算子列をもつものを除き、さ
らに差分の中にnotが含まれない文を取り除いて再び
ステップ32へ戻る。
Thus, after reaching steps 45 and 46, step 47 is executed, and steps 41 to 45, 46 are executed for all statements other than the statement having the longest operator sequence.
After executing, you will get one merge combination. Thus, when step 34 is completed, the process proceeds to step 35, and the difference between the operator sequence of the sentence obtained in step 34 and the longest operator sequence is obtained. Next, in step 36, the one having the longest operator sequence is removed, and the sentence in which not is not included in the difference is removed, and the process returns to step 32 again.

【0053】なお、差分にnotを含まないもののみを
取り除くのは、差分にnotを含む文はマージしないよ
うにするためである。ステップ32〜36はすべてのマ
ージの組みわせを求め終えるまで繰り返される。
The reason why only the difference does not include "not" is to prevent the sentence including "not" from being merged. Steps 32-36 are repeated until all merge combinations have been determined.

【0054】以上を図8の演算子列81の例に適用する
とマージすべき文番号の組み合わせが(1、2)、
(3、4)と求められる。また、図8の82の例を以上
に適用すると、(2、3、4)の組み合わせが一つ求め
られる。こうして、すべてのマージの組み合わせを得る
ことができればステップ32を経てステップ37に進
む。
When the above is applied to the example of the operator sequence 81 of FIG. 8, the combination of sentence numbers to be merged is (1, 2),
It is calculated as (3, 4). Further, if the example of 82 in FIG. 8 is applied to the above, one combination of (2, 3, 4) is obtained. In this way, if all merge combinations can be obtained, the process proceeds to step 37 through step 32.

【0055】一方、ステップ32で条件が満たされない
場合は、すべてのマージのみ組み合わせを求めた場合
か、あるいは初めから文が一つしかなかった場合であ
る。ステップ32の条件が満たされない場合は、次にス
テップ37へ進む。ステップ37ではマージの組み合わ
せが求められた場合はステップ38に進み、ステップ3
7の条件を満たしていない場合は直ちに演算コード生成
部14の処理へ進む。ステップ38ではマージ規則の適
用をおこない、ステップ31〜36で求められたマージ
可能な文の組み合わせから最適なマージの組み合わせを
求める。
On the other hand, if the condition is not satisfied in step 32, it means that the combination of all merges is obtained, or that there is only one sentence from the beginning. If the condition of step 32 is not satisfied, the process proceeds to step 37. If a combination of merges is required in step 37, the process proceeds to step 38, and step 3
If the condition 7 is not satisfied, the process immediately proceeds to the process of the operation code generator 14. In step 38, the merge rule is applied, and the optimal merge combination is obtained from the mergeable sentence combinations obtained in steps 31 to 36.

【0056】例えば、図9のHDL記述例、文(5)と
(6)はマージ可能ではあるが、このマージは文(5)
の演算が頻繁におこなわれる場合にはかえってシミュレ
ーションの演算効率を下げることもある。従って、この
ようなマージはステップ38のマージ規則によって無効
にされる。
For example, although the sentences (5) and (6) in the HDL description example of FIG. 9 can be merged, this merge is performed by the sentence (5).
When the calculation of is frequently performed, the calculation efficiency of the simulation may be reduced. Therefore, such a merge is overridden by the merge rule of step 38.

【0057】例えば図9のようなマージを回避するため
のマージ規則を図10に示した。図10のマージ規則は
最長の演算子列が6以上のものはマージをおこなわない
ようにするものである。このマージ規則の適用によって
文(5)と(6)のマージは禁止されることになる。
FIG. 10 shows a merge rule for avoiding the merge as shown in FIG. 9, for example. The merging rule of FIG. 10 is to prevent merging if the longest operator sequence is 6 or more. By applying this merge rule, merging of sentences (5) and (6) is prohibited.

【0058】次に、ステップ39では、マージ情報テー
ブルを作成し、ステップ23で得られたマージの組をマ
ージ情報テーブルに登録する。
Next, in step 39, a merge information table is created, and the merge set obtained in step 23 is registered in the merge information table.

【0059】図11にはマージ情報テーブルの例が示し
てある。
FIG. 11 shows an example of the merge information table.

【0060】図11中の111は修正前の記述71にお
いて作成されたマージ情報テーブルである。マージ情報
テーブルの文番号は記述中の文に割り付けられた文の番
号である。この文番号は図1のHDL解析部11にて割
り付けられる。マージ文番号の欄にはマージされる文の
番号が入っている。また、マージ文番号欄の[−]はマ
ージされる文が存在しないことを表している。したがっ
て、例えば、111のマージ情報テーブルから文(1)
の演算テーブルは文(2)の演算テーブルにマージさ
れ、文(3)は文(4)にマージされることがわかる。
Reference numeral 111 in FIG. 11 is a merge information table created in the description 71 before correction. The statement number of the merge information table is the number of the statement assigned to the statement being described. This sentence number is assigned by the HDL analysis unit 11 in FIG. The merged sentence number column contains the number of the sentence to be merged. Further, [-] in the merge statement number column indicates that there is no statement to be merged. Therefore, for example, from the merge information table 111, the sentence (1)
It can be seen that the calculation table of 1 is merged with the calculation table of sentence (2), and the sentence (3) is merged with the sentence (4).

【0061】また、修正後のマージ情報テーブル112
においては、修正が施された文 (2)’と文(3)が
文(4)にマージされていることがわかる。更新チェッ
クフラグはHDL記述に修正がおこなわれ、マージ文番
号が修正前と異なることを判別するためのものである。
この更新チェックフラグは修正前のマージ文番号と修正
後のマージ判定結果が異なる場合には1にセットされ、
同じ場合には0がセットされる。
The corrected merge information table 112
In Fig. 7, it can be seen that the corrected sentence (2) 'and the sentence (3) are merged into the sentence (4). The update check flag is used to determine that the HDL description is modified and the merge statement number is different from that before modification.
This update check flag is set to 1 when the merge statement number before correction and the merge determination result after correction are different,
If they are the same, 0 is set.

【0062】例えば、記述修正前のマージ情報テーブル
111では更新はおこなわれていないので、更新チェッ
クフラグはどの文も0となる。しかし、記述修正後のマ
ージ情報テーブル112は文(1)と(2)’に対して
修正前のマージ結果と修正後のマージ結果が異なるため
に更新チェックフラグに1がセットされている。以上で
作成されたマージ情報テーブルはテーブル保持部17に
保持される。
For example, since no update is performed in the merge information table 111 before description correction, the update check flag is 0 for all statements. However, in the merge information table 112 after description correction, the update check flag is set to 1 because the merge result before correction and the merge result after correction are different for the statements (1) and (2) ′. The merge information table created as described above is held in the table holding unit 17.

【0063】こうしてマージ判定部12の処理が終了す
ると、演算コード生成部14にて演算実行のための演算
コードが生成される。演算コード生成の際、マージされ
る文の組み合わせの中で演算子列が最長のものは、演算
コードの生成はそのまま演算コードに変換されるが、マ
ージされる文、すなはち演算子列が最長でないものに対
しては、例えば図7の文(1)、(3)は図13の例の
ように、最長の演算と同一の演算コードに変換される。
このアルゴリズムは図12に示してある。
When the processing of the merge determination section 12 is completed in this way, the operation code generation section 14 generates an operation code for executing the operation. When generating the opcode, if the operator string that has the longest combination of sentences to be merged is converted to the opcode as it is, the merged statement, that is, the operator sequence is For the non-longest one, for example, the sentences (1) and (3) in FIG. 7 are converted into the same operation code as the longest operation as in the example of FIG.
This algorithm is shown in FIG.

【0064】図12において、まず、ステップ121で
マージの組み合わせの中ら最長の演算子の列を取り出
す。次に、ステップ122で変換対象の文の演算子列と
の差分を求め、ステップ123において差分の演算子の
中にand演算子が出てきたらandを(and 1)
に置き換え、またor演算子が出てきたらorを(or
0)に置き換え、変換対象の文の演算コードに置き換え
た演算の演算コードを付加する。
In FIG. 12, first, in step 121, the longest operator sequence is extracted from the merge combinations. Next, in step 122, the difference with the operator sequence of the sentence to be converted is obtained, and in step 123, if the and operator appears in the difference operators, and is (and 1)
, Or when the or operator appears, replace or with (or
0), and the operation code of the operation replaced with the operation code of the sentence to be converted is added.

【0065】演算コードが生成された後は演算実行部1
5において演算実行し、演算結果はテーブル作成部16
にて演算結果を格納したテーブルが作成される。テーブ
ル作成部の処理フローはHDL記述に修正が施されてい
る場合と修正が施されていない場合とで図5に示すよう
に処理が異なる。
After the operation code is generated, the operation execution unit 1
5 executes the calculation, and the calculation result is the table creation unit 16
A table storing the calculation results is created in. The processing flow of the table creation unit differs depending on whether the HDL description is modified or not, as shown in FIG.

【0066】まず、図5のステップ51にて、記述に修
正が施されているかどうかチェックした結果、修正が施
されていない場合はステップ53においてすべてのテー
ブルを作成する。一方、修正が施されている場合はステ
ップ52のように修正が施されたものすなわちマージ情
報テーブルの更新チェックフラグが1にセットされたも
ののみテーブルを再生成する。こうして作成された演算
テーブルはテーブル保持部17にて保持される。
First, in step 51 of FIG. 5, it is checked whether or not the description has been modified. If no modification has been made, all tables are created in step 53. On the other hand, if the correction has been made, the table is regenerated only in the case where the correction is made as in step 52, that is, the update check flag of the merge information table is set to 1. The calculation table created in this way is held in the table holding unit 17.

【0067】なお、テーブルの作成は図6に示してあ
る。
The creation of the table is shown in FIG.

【0068】図6において、ステップ61においてテー
ブル領域を確保した後、ステップ62において演算実行
部15で求めた演算結果を取り出し、ステップ63にお
いて演算結果をテーブルに書き込む。こうしてテーブル
の作成が終了すると、シミュレーション実行部18にお
いてシミュレーションを実行する。シミュレーション結
果が期待値と一致していなければ、設計者がHDL記述
を修正した後、再度HDL記述をシミュレーション装置
が読み込み、以上の処理を繰り返す。
In FIG. 6, after the table area is secured in step 61, the calculation result obtained by the calculation executing section 15 is taken out in step 62, and the calculation result is written in the table in step 63. When the table creation is completed in this way, the simulation executing unit 18 executes the simulation. If the simulation result does not match the expected value, the designer corrects the HDL description, then the simulation apparatus reads the HDL description again, and the above processing is repeated.

【0069】このように、上記実施例によれば、全く同
一のものでない演算同士において、理論の等価な演算に
変換することにより他の演算と同一のテーブルを参照が
可能となる。これによって、複数の演算間においてテー
ブルを共有することが可能となり、テーブル数を削減す
ることができ、シミュレーション時に記憶容量を削減す
ることができる。
As described above, according to the above-described embodiment, it is possible to refer to the same table as other operations by converting the operations that are not completely the same into theoretical equivalent operations. This makes it possible to share a table among a plurality of operations, reduce the number of tables, and reduce the storage capacity during simulation.

【0070】次に、本発明の請求項2記載の発明の一実
施例を説明する。
Next, an embodiment of the invention described in claim 2 of the present invention will be described.

【0071】図14は請求項2記載の発明の一実施例に
係わる論理回路のシミュレーション装置の構成図であ
る。
FIG. 14 is a block diagram of a logic circuit simulation apparatus according to an embodiment of the present invention.

【0072】図14において、論理回路のシミュレーシ
ョン装置141は、回路記述解析手段142と階層化真
理値表作成手段143、及びシミュレーション手段14
4とから構成され、その外部には、回路記述145、機
能仕様146、階層化真理値表147、ライブラリ情報
148、接続情報149、テストパターン150、及び
シミュレーション結果151が備えられている。
In FIG. 14, a logic circuit simulation device 141 includes a circuit description analysis means 142, a hierarchical truth table creation means 143, and a simulation means 14.
4, and a circuit description 145, a functional specification 146, a hierarchical truth table 147, library information 148, connection information 149, a test pattern 150, and a simulation result 151 are provided outside thereof.

【0073】回路記述解析手段142は、回路記述14
5とライブラリ情報148を入力とし、論理演算機能を
持つ回路構成要素の各種類毎にその機能仕様146を生
成する。回路構成要素の機能がシステム側で予め定義さ
れたものならば、ライブラリ情報148を検索してその
機能仕様146を得る。ユーザが定義したものならば、
回路記述145からその機能仕様146を得る。回路記
述解析手段142はこの他に、シミュレーション実行時
に必要となる回路構成要素間の接続を表した情報等の接
続情報149も生成する。
The circuit description analyzing means 142 is used for the circuit description 14.
5 and the library information 148 are input, and the functional specification 146 is generated for each type of circuit component having a logical operation function. If the function of the circuit component is predefined on the system side, the library information 148 is searched to obtain the function specification 146 thereof. If user defined,
The functional specification 146 is obtained from the circuit description 145. In addition to this, the circuit description analysis means 142 also generates connection information 149 such as information indicating the connection between the circuit components necessary for executing the simulation.

【0074】階層化真理値表作成手段143は、回路記
述解析手段142の生成した機能仕様146を入力と
し、その入力信号群を組分けし各々の組毎に部分真理値
表を作成し、それらを階層的に接続した階層化真理値表
147を作成する。
The layered truth table creation means 143 receives the functional specification 146 generated by the circuit description analysis means 142 as an input, groups the input signal groups, creates a partial truth table for each group, and creates them. A hierarchical truth table 147 is created by hierarchically connecting.

【0075】シミュレーション手段144は、回路記述
解析手段142が生成した接続情報149と、階層化真
理値表作成手段143が作成した階層化真理値表147
及びテストパターン150を入力として、論理シミュレ
ーションを実行し、シミュレーション結果151を出力
する。
The simulation means 144 has the connection information 149 generated by the circuit description analysis means 142 and the hierarchical truth value table 147 created by the hierarchical truth value table creation means 143.
And the test pattern 150 is input, the logic simulation is executed, and the simulation result 151 is output.

【0076】図15は2段構造の階層化真理値表を作成
する場合の階層化真理値表作成手段143の処理内容を
示したフローチャートである。
FIG. 15 is a flow chart showing the processing contents of the hierarchized truth table creating means 143 in the case of creating a hierarchized truth table having a two-stage structure.

【0077】図15において、ステップ15−1では、
全入力信号を制御系の入力信号とデータ系の入力信号の
2組に分類する。制御系の入力信号はデータ系の入力信
号の扱われ方を決定しているので、制御系の入力信号を
「上位の信号」、データ系の入力信号を「下位の信号」
とする。次に、ステップ15−2では、上位の信号の値
の全パターンに対応する要素を格納可能な表を1個用意
する。これを「上位の表」とする。この時点では「上位
の表」の要素は全て未定義である。次に、ステップ15
−3では、もし「上位の表」の全要素の内容が定義され
たならば終了する。未定義の要素が存在するならばステ
ップ15−4に移る。次に、ステップ15−4では、
「上位の表」の対応する要素が未定義である上位の信号
のパターンP1を一つ選ぶ。次に、ステップ15−5で
は、下位の信号の全パターンに対応する要素を格納可能
な表を1個用意する。これを「下位の表」とする。次
に、ステップ15−6では、上位の信号のパターンP1
を固定した場合の下位の信号の各パターンP2に対する
出力信号のパターンを求め、それを下位の表に格納す
る。
In FIG. 15, in step 15-1,
All the input signals are classified into two sets, a control system input signal and a data system input signal. Since the control system input signal determines how the data system input signal is handled, the control system input signal is the “upper signal” and the data system input signal is the “lower signal”.
And Next, in step 15-2, one table capable of storing elements corresponding to all patterns of higher-order signal values is prepared. This is referred to as the "upper table." At this point, all the elements of the "upper table" are undefined. Next, step 15
In -3, if the contents of all the elements of the "upper table" are defined, the process ends. If there are undefined elements, go to step 15-4. Next, in step 15-4,
Select one upper-level signal pattern P1 in which the corresponding element of the "upper table" is undefined. Next, in step 15-5, one table capable of storing elements corresponding to all the patterns of the lower signals is prepared. This is the "lower table". Next, in step 15-6, the pattern P1 of the higher-order signal is generated.
The pattern of the output signal for each pattern P2 of the lower-order signals when is fixed is stored and stored in the lower-order table.

【0078】次に、ステップ15−7では、ステップ1
5−5及び15−6で作成した「下位の表」が以前に作
成した「別の下位の表」と同じならば、ステップ15−
9へ移る。次に、ステップ15−8では、「上位の表」
のP1に対応する要素に「下位の表」を指し示すポイン
タ等の情報を格納し、ステップ15−3へ戻る。次に、
ステップ15−9では、「下位の表」を破棄する。次
に、ステップ15−10では、「上位の表」のP1に対
応する要素にステップ15−7で見つけた「別の下位の
表」を指し示す情報を格納し、ステップ15−3へ戻
る。「別の下位の表」と同じ内容の「下位の表」につい
て、ステップ15−5及び15−6で一旦作成してから
ステップ15−9で破棄しているが、破棄する事を作成
前に判定してステップ15−5から15−9まで省略し
ても良い。
Next, in step 15-7, step 1
If the "subordinate table" created in 5-5 and 15-6 is the same as the "other subordinate table" created previously, step 15-
Move to 9. Next, in step 15-8, "upper table"
Information such as a pointer pointing to the "lower table" is stored in the element corresponding to P1 of No., and the process returns to step 15-3. next,
At step 15-9, the "lower table" is discarded. Next, in step 15-10, information indicating "another lower table" found in step 15-7 is stored in the element corresponding to P1 of the "upper table", and the process returns to step 15-3. The "lower table" having the same content as "another lower table" is once created in steps 15-5 and 15-6 and then destroyed in step 15-9. It may be determined and steps 15-5 to 15-9 may be omitted.

【0079】図15では2段構造の階層化真理値表につ
いて説明しているが、3段以上の階層化真理値表も作成
可能である。一般的にn段構造の階層化真理値表を作成
する場合、入力信号をその強さに応じてn組に分類す
る。但し、ここで言う強さとは、ある入力信号S1の値
によって、別のある入力信号S2の扱われ方が決定する
ならばS1はS2よりも強いとする。入力信号をn組に
分類した後は上記の手順を再帰的に適用すれば良い。
Although FIG. 15 illustrates a hierarchical truth table having a two-level structure, a hierarchical truth table having three or more levels can be created. Generally, when creating a hierarchical truth table having an n-stage structure, input signals are classified into n sets according to their strength. However, the term "strength" here means that S1 is stronger than S2 if another input signal S2 is treated according to the value of a certain input signal S1. After classifying the input signals into n sets, the above procedure may be applied recursively.

【0080】図16はシミュレーション手段144の、
詳細な構成の一例を示した図である。
FIG. 16 shows the simulation means 144,
It is a figure showing an example of detailed composition.

【0081】シミュレーション手段144は、シミュレ
ーション時計1441、イベント管理手段1442、信
号値格納部1443、再評価対象決定手段1444、評
価手段1445、及び結果出力手段1446とから構成
され、テストパターン150と、回路記述解析手段14
2が生成した接続情報149と、階層化真理値表作成手
段143が生成した階層化真理値表147を入力とし
て、シミュレーション結果151を出力する。
The simulation means 144 is composed of a simulation clock 1441, an event management means 1442, a signal value storage section 1443, a re-evaluation target determination means 1444, an evaluation means 1445, and a result output means 1446, and a test pattern 150 and a circuit. Description analysis means 14
The connection result 149 generated by No. 2 and the hierarchical truth value table 147 generated by the hierarchical truth value table creating means 143 are input, and the simulation result 151 is output.

【0082】シミュレーション時計1441は、シミュ
レーション上の「現在時刻」を示す。
The simulation clock 1441 indicates "current time" in simulation.

【0083】イベント管理手段1442は、イベント群
を管理する。イベントは信号値の変化情報である。
The event management means 1442 manages an event group. An event is change information of a signal value.

【0084】図17はイベントの構成の一例を示す図で
ある。
FIG. 17 is a diagram showing an example of the structure of an event.

【0085】各イベント170は、信号の識別情報17
1、新しい値172、変化予定時刻173の3つの情報
から構成される。イベント群は評価手段1445によっ
てイベント管理手段1442に登録され、シミュレーシ
ョン時計1441の内容に基づいてイベント管理手段1
442から取り出される。更に、イベント管理手段14
42は、取り出したイベント群に基づいて信号値格納部
1443に格納された検証対象回路内の信号の値を更新
する。
Each event 170 includes signal identification information 17
It is composed of three pieces of information of 1, a new value 172, and a scheduled change time 173. The event group is registered in the event management means 1442 by the evaluation means 1445, and based on the contents of the simulation clock 1441, the event management means 1
It is taken out from 442. Furthermore, the event management means 14
42 updates the value of the signal in the verification target circuit stored in the signal value storage unit 1443 based on the extracted event group.

【0086】信号値格納部1443は、検証対象回路内
の信号の値を格納する。
The signal value storage unit 1443 stores the value of the signal in the circuit to be verified.

【0087】再評価対象決定手段1444は、値が変化
した信号のリストと接続情報149から評価手段144
5による再評価が必要な回路構成要素を見つけだす。あ
る回路構成要素について、その入力信号のパターンが変
化した、即ち入力信号の一つでも値が変化したならば、
その回路構成要素の出力信号のパターンを評価手段14
45によって再評価する必要がある。
The re-evaluation object determining means 1444 determines the evaluation means 144 from the list of signals whose values have changed and the connection information 149.
Find circuit components that need to be re-evaluated according to 5. For a circuit component, if the pattern of its input signal changes, that is, the value of even one of the input signals changes,
The means 14 for evaluating the pattern of the output signal of the circuit component
45 need to be re-evaluated.

【0088】評価手段1445は、ある回路構成要素に
ついてその階層化真理値表147と入力信号のパターン
から出力信号の新しいパターンを求める。
The evaluating means 1445 obtains a new pattern of the output signal from the hierarchical truth table 147 and the pattern of the input signal for a certain circuit component.

【0089】結果出力手段1446は、検証対象回路の
信号の値の時間変化を表示装置や外部記憶媒体等に出力
する。
The result output means 1446 outputs the time change of the value of the signal of the circuit to be verified to the display device, the external storage medium or the like.

【0090】図18は図16に示したシミュレーション
手段144の処理内容を示したフローチャートである。
FIG. 18 is a flow chart showing the processing contents of the simulation means 144 shown in FIG.

【0091】図18において、まず、ステップ18−1
では、シミュレーション手段の内部状態の初期設定を行
う。この時、テストパターン150に対応したイベント
群をイベント管理手段1442に登録する。次に、ステ
ップ18−2では、イベント管理手段1442にイベン
トが一つも残っていなければ終了する。次に、ステップ
18−3では、イベント管理手段1443に登録されて
いるイベント群の中で、最も変化予定時刻173の早い
ものを探し、その時刻までシミュレーション時計144
1を進める。次に、ステップ18−4では、変化予定時
刻173がシミュレーション時計1441の内容に等し
いイベント群を全てイベント管理手段1442から取り
出し、それらに基づいて信号値格納部1443に格納さ
れた信号の値を更新する。次に、ステップ18−5で
は、接続情報149を基に値が変化した信号を入力信号
に含む回路構成要素(再評価対象)を再評価対象決定手
段1444によって見つけだす。次に、ステップ18−
6では、ステップ18−5で見つけた各回路構成要素に
ついてその入力信号のパターンと機能仕様146から出
力信号の新しいパターンを求め、新たなイベントとして
イベント管理手段1442に登録しステップ18−2に
戻る。
In FIG. 18, first, step 18-1.
Then, the internal state of the simulation means is initialized. At this time, the event group corresponding to the test pattern 150 is registered in the event management means 1442. Next, in step 18-2, if no event remains in the event management means 1442, the process ends. Next, in step 18-3, the earliest scheduled change time 173 is searched for from the event group registered in the event management means 1443, and the simulation clock 144 until that time.
Advance 1. Next, in step 18-4, all event groups whose scheduled change time 173 is equal to the contents of the simulation clock 1441 are fetched from the event management means 1442, and the value of the signal stored in the signal value storage unit 1443 is updated based on them. To do. Next, in step 18-5, the circuit component (re-evaluation target) including the signal whose value has changed in the input signal based on the connection information 149 is found by the reevaluation target determining means 1444. Next, step 18-
In step 6, a new pattern of the output signal is obtained from the pattern of the input signal and the functional specification 146 of each circuit component found in step 18-5, registered as a new event in the event management means 1442, and the process returns to step 18-2. .

【0092】図19は評価手段1445の処理内容を説
明する図である。
FIG. 19 is a diagram for explaining the processing contents of the evaluation means 1445.

【0093】図19(a)はn個の入力信号I1,I
2,・・・,Inと、m個の出力信号O1,O2,・・
・,Omとを持つ回路構成要素Uを示す。図19(b)
は回路構成要素Uについて、入力信号のパターンから出
力信号のパターンを求める場合の過程を示す。入力信号
の内上位の信号をH1,H2,・・・,Hpと表し、下
位の信号をL1,L2・・・,Lqと表す(p+q=
n)。
FIG. 19A shows n input signals I1 and I.
2, ..., In and m output signals O1, O2, ...
., Om is a circuit component U. FIG. 19 (b)
Shows the process of obtaining the output signal pattern from the input signal pattern for the circuit component U. The higher-order signals of the input signals are represented as H1, H2, ..., Hp, and the lower-order signals are represented as L1, L2, ..., Lq (p + q =
n).

【0094】図19(b)において、ステップ19−1
では、ビット表現された上位の信号の値を連接して一つ
の連結ビット列191を得る。次に、ステップ19−2
では、連接ビット列191で表される値を添え字として
配列表現された上位の表192の1要素を参照する。次
に、ステップ19−3では、ステップ19−2で参照し
た要素の内容(ポインタ)を辿って上位の信号のパター
ンに対応した下位の表193を見つける。次に、ステッ
プ19−3では、ビット表現された下位の信号の値を連
接し、一つの連接ビット列194を得る。次に、ステッ
プ19−5では、連接ビット列194で表される値を添
え字として下位の表193の1要素を参照する。その内
容が入力信号のパターンに対応する出力信号のパターン
である。
In FIG. 19B, step 19-1
Then, the value of the higher-order signal expressed in bits is concatenated to obtain one concatenated bit string 191. Next, Step 19-2
Now, reference is made to one element of the upper table 192, which is arrayed using the value represented by the concatenated bit string 191 as a subscript. Next, in step 19-3, the contents (pointers) of the elements referred to in step 19-2 are traced to find the lower table 193 corresponding to the upper signal pattern. Next, in step 19-3, the values of the lower-order signals expressed in bits are concatenated to obtain one concatenated bit string 194. Next, in step 19-5, one element of the lower table 193 is referred to by using the value represented by the concatenated bit string 194 as a subscript. The content is the pattern of the output signal corresponding to the pattern of the input signal.

【0095】上記実施例によれば、回路構成要素の機能
仕様を階層化された真理値表として実現する事により、
上位の部分真理値表の複数の要素間で一部の下位の部分
真理値表を共有でき、真理値表の格納に必要な記憶領域
を節約する効果がある。したがって、真理値表格納領域
が節約できる事から、比較的大きな回路構成要素につい
ても、真理値表を用いた論理シミュレーションを可能と
する効果もある。
According to the above embodiment, by implementing the functional specifications of the circuit components as a hierarchical truth table,
A part of the lower partial truth table can be shared by a plurality of elements of the upper partial truth table, and there is an effect of saving the storage area required for storing the truth table. Therefore, since the storage area for the truth table can be saved, there is an effect that the logic simulation using the truth table can be performed even for a relatively large circuit component.

【0096】次に、本発明の請求項2記載の発明の他の
実施例を説明する。
Next, another embodiment of the invention according to claim 2 of the present invention will be described.

【0097】図20は請求項2記載の発明の他の実施例
に係わる論理回路のシミュレーション装置の構成図であ
る。
FIG. 20 is a block diagram of a logic circuit simulation apparatus according to another embodiment of the present invention.

【0098】図20において、論理回路のシミュレーシ
ョン装置201は、回路記述解析手段142と階層化真
理値表作成手段203、及びシミュレーション手段20
4とから構成され、その外部には回路記述145、機能
仕様146、階層化真理値表207、ライブラリ情報1
48、接続情報149、テストパターン150、及びシ
ミュレーション結果151が備えられている。
In FIG. 20, a logic circuit simulation device 201 includes a circuit description analysis means 142, a hierarchical truth table creation means 203, and a simulation means 20.
4 and a circuit description 145, a functional specification 146, a hierarchy truth table 207, and library information 1
48, connection information 149, a test pattern 150, and a simulation result 151 are provided.

【0099】回路記述解析手段142の作用は上述した
実施例と同様であるが、階層化真理値表作成手段203
は、入力信号のパターンの一部を無効化するマスクパタ
ーンを含んだ階層化真理表207を作成する。そして、
シミュレーション手段204は、階層化真理値表207
と接続情報149及びテストパターン150を入力とし
て論理シミュレーションを実行する。手順の詳細につい
ては、図26に示す4ビットALUの例を用いて述べ
る。
The operation of the circuit description analysis means 142 is the same as that of the above-mentioned embodiment, but the layered truth table creation means 203 is used.
Creates a hierarchical truth table 207 including a mask pattern for invalidating a part of the pattern of the input signal. And
The simulation means 204 uses the layered truth table 207.
A logical simulation is executed by using the connection information 149 and the test pattern 150 as input. Details of the procedure will be described using an example of a 4-bit ALU shown in FIG.

【0100】図21は図14に示す論理回路のシミュレ
ーション装置141における階層化真理値表147の一
実施例を示した図である。
FIG. 21 is a diagram showing an embodiment of the hierarchical truth value table 147 in the simulation apparatus 141 for the logic circuit shown in FIG.

【0101】図21は制御系信号OPを添え字として利
用する上位の表211が1個と、データ系信号A,Bの
連接ビット列を添え字として利用する下位の表212が
11個(区別の為に、212(1)〜(11)と表す)
とから構成される2段の階層構造を持つた真理値表であ
る。
FIG. 21 shows one upper table 211 that uses the control system signal OP as a subscript and eleven lower tables 212 that use the concatenated bit strings of the data system signals A and B as subscripts. Therefore, it is expressed as 212 (1) to (11))
It is a truth table having a two-tiered hierarchical structure composed of and.

【0102】図21において、演算の種類毎に下位の表
212は存在し、その各要素はデータ系信号A,Bの値
に対する演算結果Yの値である。上位の表211の各要
素は、制御系信号OPの値で選択される演算に対応する
下位の表212を指し示す。OPの値が0000〜00
11(十進数0〜3)の何れの場合も選択される演算は
Y=0であるので、上位の表の4要素が演算Y=0に対
応する下位の表212(1)を指し示す事になる。即
ち、下位の表212(1)を共有する。
In FIG. 21, there is a lower table 212 for each type of calculation, and each element thereof is the value of the calculation result Y with respect to the value of the data system signals A and B. Each element of the upper table 211 indicates the lower table 212 corresponding to the operation selected by the value of the control system signal OP. OP value is 0000-00
In any case of 11 (decimal number 0 to 3), the operation selected is Y = 0. Therefore, the four elements of the upper table indicate the lower table 212 (1) corresponding to the operation Y = 0. Become. That is, the lower table 212 (1) is shared.

【0103】同様に、OPの値0100及び0101
(十進数4及び5)に対して、演算Y=Aに対応する下
位の表212(2)を共有でき、OPの値0110及び
0111(十進数6及び7)に対して、演算Y=Bに対
応する下位の表212(3)を共有できる。これによ
り、共有しなければ16個必要な下位の表が11個で済
んでいる。
Similarly, the OP values 0100 and 0101
The lower table 212 (2) corresponding to the operation Y = A can be shared for (decimal numbers 4 and 5), and the operation Y = B for the OP values 0110 and 0111 (decimal numbers 6 and 7). Can share the lower table 212 (3) corresponding to. As a result, if not shared, 16 subordinate tables are required, and 11 sub tables are sufficient.

【0104】図22は図21に示した階層化真理値表1
47の要素参照方法を示した図である。
FIG. 22 is a hierarchical truth table 1 shown in FIG.
It is a figure showing the element reference method of 47.

【0105】前記同様、5と6の和11を求める場合を
例として、階層化真理値表147の要素参照方法を説明
する。
Similarly to the above, the method for referring to the elements of the hierarchical truth table 147 will be described by taking the case of obtaining the sum 11 of 5 and 6 as an example.

【0106】まず、制御系信号OPの値1000(十進
数8:図中、符号221で表す)を添え字として上位の
表101の一要素を参照し、その内容によって演算Y=
A+Bに対応する下位の表212(4)を見つける。次
に、データ系信号Aの値0101とBの値0110の連
接ビット列01010110(図中の符号222)が表
す値、即ち十進数86を添え字として演算Y=A+Bに
対応する下位の表212(4)の一要素を参照する。そ
の内容01011(十進数11)が求めるYの値であ
る。
First, one element of the upper table 101 is referred to by using the value 1000 of the control system signal OP (decimal number 8: represented by reference numeral 221 in the figure) as a subscript, and the operation Y =
Find the lower table 212 (4) corresponding to A + B. Next, the value represented by the concatenated bit string 0101110 (reference numeral 222 in the figure) of the value 0101 of the data system signal A and the value 0110 of the B, that is, the lower table 212 (corresponding to the operation Y = A + B using the decimal number 86 as a subscript). 4) Refer to one element. The content 01011 (decimal number 11) is the Y value to be obtained.

【0107】上位の表211及び下位の表212共にそ
の要素1個について1単位の記憶領域が必要であるとす
ると、上位の表211には4ビットの信号OPの取り得
る各値に対して要素が必要なので、16(=2の4乗)
単位の記憶領域が必要である。一個の下位の表212に
ついては、信号A,Bの連接ビット列(長さ8ビット)
の取り得る各値に対して要素が必要なので、256(=
2の8乗)単位の記憶領域が必要である。下位の表は1
1個有るから、4ビットALUの例に対して、図14に
示す装置における階層化真理値表147の格納に必要な
記憶領域は、2832(=16+256×11)単位で
ある。これは、図27に示した従来技術を用いた場合
(4096単位)の69%の大きさであり、およそ3割
の記憶領域を節約できている。
Assuming that one unit of storage area is required for each element of the upper table 211 and the lower table 212, the upper table 211 has an element for each possible value of the 4-bit signal OP. Is required, so 16 (= 2 to the 4th power)
A unit storage area is required. For one lower table 212, a concatenated bit string of signals A and B (length 8 bits)
Since an element is required for each possible value of, 256 (=
A storage area of 2 8) is required. The lower table is 1
Since there is one, for the example of the 4-bit ALU, the storage area required for storing the hierarchical truth table 147 in the device shown in FIG. 14 is 2832 (= 16 + 256 × 11) units. This is 69% of the size (4096 units) when the conventional technique shown in FIG. 27 is used, and the storage area of about 30% can be saved.

【0108】図23は図20に示す論理回路のシミュレ
ーション装置201における階層化真理値表207の一
実施例を示した図である。
FIG. 23 is a diagram showing an embodiment of the hierarchical truth value table 207 in the logic circuit simulation apparatus 201 shown in FIG.

【0109】図23は制御系信号OPを添え字として利
用する上位の表231が1個と、データ系信号A,Bの
連接ビット列を添え字として利用する下位の表232が
7個(区別の為、符号232(1)〜(7)で表す)と
から構成される2段の階層構造を持った真理値表であ
る。
FIG. 23 shows one upper table 231 that uses the control system signal OP as a subscript and seven lower table 232 that uses the concatenated bit string of the data system signals A and B as a subscript. Therefore, it is a truth table having a two-tiered hierarchical structure composed of reference numerals 232 (1) to 232 (7).

【0110】図23において、演算の種類毎に下位の表
232は存在し、その各要素はデータ系信号A,Bの値
に対する演算結果Yの値である。上位の表231の各要
素は2種類の情報を持っており、一つは図21の実施例
と同様に、制御信号OPの値で選択される演算に対応す
る下位の表232を指し示す。もう一つの情報がこの実
施例によるもので、下位の表232の参照時にデータ系
信号A,Bの連接ビット列とビット毎のAND演算を行
うためのマスクパターンである。
In FIG. 23, there is a lower table 232 for each type of calculation, and each element thereof is the value of the calculation result Y with respect to the value of the data system signals A and B. Each element of the upper table 231 has two kinds of information, and one indicates the lower table 232 corresponding to the operation selected by the value of the control signal OP, as in the embodiment of FIG. Another piece of information is according to this embodiment, which is a mask pattern for performing a bitwise AND operation with the concatenated bit string of the data system signals A and B when referring to the lower table 232.

【0111】データ系信号A,Bの一方の値しか使用し
ない演算については、使用しない方の信号の値を0と見
なせば、A,Bの両方の値を使用する演算の特別な場合
と見なす事が可能である。例えば演算Y=−Bは、演算
Y=A−Bに於いてA=0である場合と考えられる。こ
のことを利用すれば演算Y=−Bに対応する下位の表を
参照する代わりにA,Bの値の連接ビット列にマスクパ
ターン00001111とのビット毎のAND演算を施
し、演算Y=A−Bに対応する下位の表232(2)を
参照しても正しいYの値が得られる。従って、演算Y=
−Bに対応する下位の表は不要となる。
Regarding an operation that uses only one value of the data signals A and B, if the value of the signal that is not used is regarded as 0, there is a special case of an operation that uses both values of A and B. It is possible to see. For example, the calculation Y = -B is considered to be the case where A = 0 in the calculation Y = A-B. If this is utilized, instead of referring to the lower table corresponding to the operation Y = −B, the concatenated bit string of the values of A and B is subjected to bitwise AND operation with the mask pattern 00001111, and the operation Y = A−B The correct Y value can also be obtained by referring to the lower table 232 (2) corresponding to. Therefore, calculation Y =
The lower table corresponding to -B is unnecessary.

【0112】同様にして、演算Y=0はA=B=0の場
合の演算Y=A+Bと見なせる(Y=A−B、Y=A&
B、Y=A|Bの何れかとも見なせる)し、演算Y=A
はB=0の場合の演算Y=A+B(又はY=A−B、Y
=A|B)、演算Y=BはA=0の場合の演算Y=A+
B(又はY=A|B)と各々扱える。従って、演算Y=
0、Y=A、Y=B、Y=−Bに対応する4個の下位の
表は不要となる。
Similarly, the operation Y = 0 can be regarded as the operation Y = A + B when A = B = 0 (Y = A−B, Y = A &).
B, Y = A | B), and calculation Y = A
Is an operation when B = 0, Y = A + B (or Y = A−B, Y
= A | B), the operation Y = B is the operation Y = A + when A = 0.
It can be treated as B (or Y = A | B). Therefore, calculation Y =
The four lower tables corresponding to 0, Y = A, Y = B, Y = -B are unnecessary.

【0113】また、A=0と見なせば、演算Y=!B、
Y=B+1、Y=B−1に対応する3個の下位の表を小
さくする事が可能である。A,Bの値の連接ビット列に
マスクパターン00001111とのビット毎のAND
演算を施す事により、連接ビット列は00000000
から00001111までの16通りの値しか取り得な
くなるので、下位の表の要素数を256から16に減ら
す事が可能である。
If A = 0, the operation Y =! B,
It is possible to reduce the three subordinate tables corresponding to Y = B + 1 and Y = B-1. Bitwise AND of concatenated bit string of A and B values with mask pattern 00001111
By performing the operation, the concatenated bit string is 00000000
Since only 16 possible values from 0 to 00001111 are possible, it is possible to reduce the number of elements in the lower table from 256 to 16.

【0114】図24は図23に示した階層化真理値表2
07の要素参照方法を説明する図である。
FIG. 24 is a hierarchy truth table 2 shown in FIG.
It is a figure explaining the element reference method of 07.

【0115】次に、信号OPの値が1100(十進数1
2:演算Y=−Bが選択される)、Aの値が0101
(十進数5)、Bの値が0110(十進数6)である時
のYの値を求める場合を例として、この階層化真理値表
207の要素参照方法を説明する。
Next, the value of the signal OP is 1100 (decimal 1
2: calculation Y = -B is selected), and the value of A is 0101
The method of referring to the elements of the hierarchical truth value table 207 will be described by taking the case of obtaining the value of Y when the value of (decimal number 5) and the value of B are 0110 (decimal number 6) as an example.

【0116】まず、制御系信号OPの値12(図中の符
号241)を添え字として上位の表231の一要素を参
照する。その内容によって(演算Y=−Bではなく)演
算Y=A−Bに対応する下位の表232(2)を見つけ
る。次に、データ系信号Aの値0101とBの値011
0の連接ビット列01010110(図中の符号24
2)にマスクパターン00001111(図中の符号2
43)とのビット毎のAND演算を施し、その結果00
000110(十進数6:図中の符号244)を添え字
として演算Y=A−Bに対応する下位の表232(2)
の一要素を参照する。その内容11010(十進数−
6)が求めるYの値である。
First, one element of the upper table 231 is referred to using the value 12 (reference numeral 241 in the figure) of the control system signal OP as a subscript. Find the lower table 232 (2) corresponding to operation Y = A−B (rather than operation Y = −B) by its contents. Next, the value 0101 of the data system signal A and the value 011 of the B signal
0 concatenated bit string 0101110 (reference numeral 24 in the figure
2) mask pattern 00001111 (reference numeral 2 in the figure)
43) and bitwise AND operation is performed, and the result 00
Lower table 232 (2) corresponding to operation Y = A-B with 000110 (decimal number 6: 244 in the figure) as a subscript
Refer to one element of. The content 11010 (decimal number-
6) is the calculated Y value.

【0117】上位の表231の各要素は、下位の表を指
し示す情報とマスクパターンとを持つので、2単位の記
憶領域が必要であるとする。下位の表232の1個当た
りについては、各要素毎に1単位の記憶領域が必要であ
るとする。上位の表231は4ビットの信号OPの取り
得る各値に対して要素が必要なので、32(=2×2の
4乗)単位の記憶領域を必要とする。演算Y=A+B、
Y=A−B、Y=A&B,Y=A|Bに対応する4個の
下位の表232(1)〜(4)は、その各々について2
56(=2の8乗)単位の記憶領域を必要とする。演算
Y=!B,Y=B+1,Y=B−1に対応する下位の表
232(5)〜(7)は、その各々について16(=2
の4乗)単位の記憶領域を必要とする。
Since each element of the upper table 231 has information indicating the lower table and the mask pattern, it is assumed that two units of storage area are required. For each of the lower table 232, one unit of storage area is required for each element. Since the upper table 231 needs an element for each possible value of the 4-bit signal OP, it requires a storage area of 32 (= 2 × 2 4) units. Calculation Y = A + B,
The four lower tables 232 (1)-(4) corresponding to Y = A-B, Y = A & B, Y = A | B have 2 for each.
A storage area of 56 (= 2 to the 8th power) units is required. Calculation Y =! The lower tables 232 (5) to 232 (7) corresponding to B, Y = B + 1, Y = B-1 have 16 (= 2
(4 to the fourth power) unit is required.

【0118】従って、4ビットALUの例に対して、こ
の実施例による階層化真理値表207の格納に必要な記
憶領域は、1104(=32+256×4+16×3)
単位である。これは、図27で示した従来技術による場
合(4096単位)の27%の大きさであり、約4分の
1の記憶領域で済んでいる。
Therefore, for the example of the 4-bit ALU, the storage area required for storing the hierarchical truth table 207 according to this embodiment is 1104 (= 32 + 256 × 4 + 16 × 3).
It is a unit. This is 27% of the size (4096 units) according to the conventional technique shown in FIG. 27, and the storage area is about 1/4.

【0119】この実施例によれば、上記実施例に加え
て、入力信号のパターンの一部を無効化するマスクパタ
ーンを、上位の表の各要素に付加した事により、上位の
表の更に多くの要素間で下位の表を共有できる他、場合
によっては下位の表の幾つかについて、その大きさを小
さく抑える事も可能となり、真理値表の格納に必要な記
憶領域をより一層節約する効果がある。
According to this embodiment, in addition to the above embodiment, a mask pattern for invalidating a part of the pattern of the input signal is added to each element of the upper table, so that more of the upper table can be obtained. In addition to being able to share the lower table among the elements of, it is also possible to keep the size of some of the lower tables small, which further reduces the storage area required to store the truth table. There is.

【0120】上記実施例では、2段の階層構造を持つ真
理値表を用いたが、任意の段数の階層構造についても本
発明は適用可能であり、複雑な機能仕様を持つ回路構成
要素に対して有効である。また、下位の表に対してマス
クパターンとのビット毎のAND演算を施しているが、
ビット毎のOR演算等その他の演算も利用可能である。
更に、上記実施例は、論理シミュレーションだけでな
く、例えば関係データベースに於ける関係演算機構等、
定義域が有限個の離散値である関数の演算を、基本操作
とする様な分野にも適用可能である。
In the above embodiment, the truth table having a two-level hierarchical structure is used. However, the present invention can be applied to a hierarchical structure having an arbitrary number of stages, and can be applied to circuit components having complicated functional specifications. Is effective. Also, the AND operation is performed on the lower table for each bit with the mask pattern.
Other operations such as bitwise OR operation can also be used.
Further, the above-described embodiment is not limited to the logical simulation, but may be, for example, a relational operation mechanism in a relational database,
The calculation of a function whose domain is a finite number of discrete values can also be applied to a field such as a basic operation.

【0121】図25は請求項3記載の発明の一実施例に
係わる論理回路の記述言語のコンパイル方法におけるV
HDL記述ファイルの参照系列を示す図である。
FIG. 25 shows V in the compiling method of the description language of the logic circuit according to the third embodiment of the invention.
It is a figure which shows the reference sequence of a HDL description file.

【0122】図25において、論理回路の記述言語(H
DL)の一種であるVHDL記述のコンパイル時に次の
ような処理をする。コンパイルしている記述が参照して
いるファイルがあれば、それを参照先ファイル表に登録
する。その際に、参照している宣言エンティティ名も参
照エンティティ表に登録する。また、参照先ファイルの
参照元ファイル表にコンパイルしているファイル名を登
録する。
In FIG. 25, a description language (H
The following processing is performed at the time of compiling a VHDL description which is a type of DL). If there is a file referenced by the compiling description, register it in the referenced file table. At that time, the declarative entity name that is referred to is also registered in the reference entity table. In addition, the compiled file name is registered in the reference source file table of the reference destination file.

【0123】図25では、VHDL記述のPKG2をコ
ンパイルする時に、PKG2の参照先ファイル表にファ
イル名PKG1を登録して、PKG1の参照元ファイル
表にはファイル名PKG2を登録する。また、PKG2
の参照エンティティ表に宣言名PKG1.Tを登録す
る。このような登録をVHDL記述PKG1,PKG
2,ENTA,ENTBのコンパイル時に作成する。
In FIG. 25, when compiling PKG2 of VHDL description, the file name PKG1 is registered in the reference file table of PKG2, and the file name PKG2 is registered in the reference source file table of PKG1. Also, PKG2
In the reference entity table of the declaration name PKG1. Register T. Such registration can be performed by using the VHDL description PKG1, PKG.
2. Created when compiling ENTA and ENTB.

【0124】これらのデータを登録しておけば、例えば
VHDL記述のENTBを修正してから再コンパイルす
る時には、ENTBの参照先ファイル表からファイル名
PKG2を取り出し、VHDL記述PKG2の参照先フ
ァイル表からファイル名PKG1を取り出す。そして、
PKG1のソースプログラムとオブジェントプログラム
の作成時刻を比較して再コンパイルの必要があるかどう
かを調べる。
If these data are registered, for example, when the ENTB of the VHDL description is modified and then recompiled, the file name PKG2 is extracted from the reference file table of the ENTB, and the reference file table of the VHDL description PKG2 is extracted. The file name PKG1 is taken out. And
It is checked whether or not recompilation is necessary by comparing the creation times of the PKG1 source program and the objet program.

【0125】まず、PKG1のオブジェクトプログラム
の作成時刻がソースプログラムの作成時刻よりも遅けれ
ば再コンパイルの必要がないものとして、PKG1の参
照元ファイル表からファイル名PKG2、ENTBを取
り出す。次に、PKG2、ENTBのオブジェクトプロ
グラムの作成時刻をPKG1のオブジェクトプログラム
の作成時刻と比較する。PKG2、ENTBのオブジェ
クトプログラムの作成時刻がPKG1よりも早ければ、
記述PKG2,ENTBの再コンパイルをする。
First, if the creation time of the object program of PKG1 is later than the creation time of the source program, it is determined that recompilation is not necessary, and the file names PKG2 and ENTB are fetched from the reference source file table of PKG1. Next, the creation time of the object program of PKG2 and ENTB is compared with the creation time of the object program of PKG1. If the creation time of the object program of PKG2, ENTB is earlier than that of PKG1,
Recompile the description PKG2 and ENTB.

【0126】PKG2,ENTBのオブジェクトプログ
ラムの作成時刻がPKG1よりも遅ければ、PKG2,
ENTBのソースプログラムとオブジェクトプログラム
の作成時刻を比較して、必要があれば再コンパイルす
る。この参照系列の順序に従ったコンパイルを自動的に
行ってくれる。
If the creation time of the object program of PKG2, ENTB is later than PKG1, PKG2,
Compare the creation time of the source program of the ENTB and the object program, and recompile if necessary. It will automatically compile in the order of this reference sequence.

【0127】また、コンパイル時には次の処理もする。
コンパイルしている記述が参照される可能性のある記述
(VHDLではパッケージ宣言、コンフィグレーション
宣言)であれば、そこには各種の宣言が記述されてい
る。再コンパイル時に修正されている宣言があれば修正
エンティティ表に登録する。他のファイルを参照してい
るのであれば、参照している宣言名を参照エンティティ
表に登録する。
The following processing is also performed at the time of compiling.
If the description being compiled may be referred to (a package declaration or a configuration declaration in VHDL), various declarations are described therein. If there is a declaration that has been modified during recompilation, register it in the modified entity table. If you are referencing another file, register the referencing name in the reference entity table.

【0128】図25では、PKG1のUという宣言が修
正されて、修正エンティティ表に登録されている。Uを
用いて宣言されているAも修正エンティティ表に登録さ
れている。ここで、ENTAを再コンパイルした時に
は、参照先ファイル表からファイル名PKG2、参照エ
ンティティ表から宣言名PKG2.Bを得る。さらに、
PKG2の参照先ファイル表からファイル名PKG1、
参照エンティティ表から宣言名PKG1.Tを得る。
In FIG. 25, the declaration U of PKG1 is modified and registered in the modified entity table. A declared with U is also registered in the modified entity table. Here, when ENTA is recompiled, the file name PKG2 from the referenced file table and the declaration name PKG2. Get B. further,
From the reference file table of PKG2, file name PKG1,
From the reference entity table, declare name PKG1. Get T.

【0129】ここで、再コンパイルの済んでいるPKG
1の修正エンティティ表からU,Aという宣言名を得る
が、PKG2の参照エンティティ名Tとは異なるため
に、PKG2には再コンパイルの必要がないことが判
る。そこで、PKG2を再コンパイルせずに、コンパイ
ル時刻のみを更新してENTAの再コンパイルを実行す
る。結果的には再コンパイルを実行するのはENTAの
みとなり、コンパイル時間が短縮される。
Here, the PKG that has been recompiled
Although the declared names U and A are obtained from the modified entity table of No. 1, it is understood that PKG2 does not need to be recompiled because it is different from the reference entity name T of PKG2. Therefore, without recompiling the PKG2, only the compile time is updated and the ENTA is recompiled. As a result, only the ENTA performs the recompilation, which shortens the compilation time.

【0130】[0130]

【発明の効果】以上説明したように、請求項1記載の発
明によれば、全く同一のものでない演算同士において、
理論の等価な演算に変換することにより他の演算と同一
のテーブルを参照が可能となる。これによって、複数の
演算間においてテーブルを共有することが可能となり、
テーブル数を削減することができ、シミュレーション時
に記憶容量を削減することができる。
As described above, according to the first aspect of the invention, in operations that are not exactly the same,
By converting the calculation into an equivalent calculation, it is possible to refer to the same table as other calculation. This makes it possible to share a table between multiple operations,
The number of tables can be reduced, and the storage capacity can be reduced during simulation.

【0131】請求項2記載の発明によれば、回路構成要
素の機能仕様を階層化された真理値表として実現する事
により、上位の部分真理値表の複数の要素間で一部の下
位の部分真理値表を共有でき、真理値表の格納に必要な
記憶領域を節約する効果がある。したがって、真理値表
格納領域が節約できる事から、比較的大きな回路構成要
素についても、真理値表を用いた論理シミュレーション
を可能とする効果もある。
According to the second aspect of the present invention, by implementing the functional specifications of the circuit constituent elements as a hierarchical truth table, a part of the lower ranks of a plurality of elements of the upper partial truth table can be used. The partial truth table can be shared, which has the effect of saving the storage area required for storing the truth table. Therefore, since the storage area for the truth table can be saved, there is an effect that the logic simulation using the truth table can be performed even for a relatively large circuit component.

【0132】請求項3記載の発明によれば、HDL記述
の参照系列に従って順にコンパイルする作業は自動的に
処理される。さらに、コンパイルする必要のないファイ
ルを判断してそのコンパイルを省くことができるため、
コンパイル時間を節約することができる。
According to the third aspect of the invention, the work of sequentially compiling in accordance with the reference sequence of the HDL description is automatically processed. In addition, you can determine which files do not need to be compiled and skip the compilation,
You can save compilation time.

【図面の簡単な説明】[Brief description of drawings]

【図1】請求項1記載の発明の一実施例に係わる論理回
路のシミュレーション装置の構成を示す図である。
FIG. 1 is a diagram showing a configuration of a logic circuit simulation apparatus according to an embodiment of the present invention.

【図2】図1に示す装置のHDL記述解析処理フローを
示すフローチャートである。
FIG. 2 is a flowchart showing an HDL description analysis processing flow of the device shown in FIG.

【図3】図1に示す装置のマージ判定部処理フローを示
すフローチャートである。
FIG. 3 is a flowchart showing a merge determination unit processing flow of the apparatus shown in FIG.

【図4】図3に示す一部ステップのアルゴリズムを示す
フローチャートである。
FIG. 4 is a flowchart showing an algorithm of some steps shown in FIG.

【図5】図1に示す装置のテーブル作成部処理フローを
示すフローチャートである。
5 is a flowchart showing a processing flow of a table creating unit of the apparatus shown in FIG.

【図6】図1に示す装置のテーブル作成処理フローを示
すフローチャートである。
6 is a flowchart showing a table creation processing flow of the device shown in FIG.

【図7】図1に示す装置のHDL記述の一例を示す図で
ある。
7 is a diagram showing an example of an HDL description of the device shown in FIG.

【図8】図1に示す装置の演算子列の一例を示す図であ
る。
FIG. 8 is a diagram showing an example of an operator sequence of the apparatus shown in FIG.

【図9】シミュレーション効率の悪いマージの一例を示
す図である。
FIG. 9 is a diagram showing an example of merge with poor simulation efficiency.

【図10】図1に示す装置のマージ規則の適用の一例を
示す図である。
10 is a diagram showing an example of application of a merge rule of the device shown in FIG.

【図11】図1に示す装置のマージ情報テーブルの一例
を示す図である。
11 is a diagram showing an example of a merge information table of the device shown in FIG.

【図12】図1に示す装置の冗長表現のアルゴリズムの
一例を示す図である。
FIG. 12 is a diagram showing an example of an algorithm of a redundant expression of the apparatus shown in FIG.

【図13】図1に示す装置の冗長表現の変換の一例を示
す図である。
13 is a diagram showing an example of conversion of a redundant expression of the apparatus shown in FIG.

【図14】請求項2記載の発明の一実施例に係わる論理
回路のシミュレーション装置の構成を示す図である。
FIG. 14 is a diagram showing a configuration of a logic circuit simulation apparatus according to an embodiment of the present invention.

【図15】図14に示す2段構造の階層化真理値表作成
手段の処理フローを示すフローチャートである。
15 is a flowchart showing a processing flow of the hierarchical truth value table creating means of the two-stage structure shown in FIG.

【図16】図14に示すシミュレーション手段の一構成
を示す図である。
16 is a diagram showing one configuration of the simulation means shown in FIG.

【図17】図14に示す装置のイベントの構造を示す
図。
FIG. 17 is a diagram showing the structure of an event of the device shown in FIG.

【図18】図14に示すシミュレーション手段の処理フ
ローを示すフローチャート。
18 is a flowchart showing a processing flow of the simulation means shown in FIG.

【図19】図14に示すシミュレーション手段の評価手
段の処理内容の説明図である。
FIG. 19 is an explanatory diagram of the processing contents of the evaluation means of the simulation means shown in FIG.

【図20】請求項2記載の発明の他の実施例に係わる論
理回路のシミュレーション装置の構成を示す図である。
FIG. 20 is a diagram showing the configuration of a logic circuit simulation apparatus according to another embodiment of the invention as set forth in claim 2;

【図21】図14に示す装置における階層化真理値表の
構造を示す図である。
FIG. 21 is a diagram showing the structure of a hierarchical truth table in the device shown in FIG.

【図22】図14に示す装置における階層化真理値表の
要素参照方法の説明図である。
22 is an explanatory diagram of an element reference method of a hierarchical truth value table in the device shown in FIG.

【図23】図20に示す装置における階層化真理値表の
構造を示す図である。
23 is a diagram showing the structure of a hierarchical truth table in the device shown in FIG.

【図24】図20に示す装置における階層化真理値表の
要素参照方法の説明図である。
FIG. 24 is an explanatory diagram of an element reference method of a hierarchical truth value table in the device shown in FIG.

【図25】請求項3記載の発明の一実施例に係わる論理
回路の記述言語のコンパイル方法を説明するための図で
ある。
FIG. 25 is a diagram for explaining a method of compiling a description language of a logic circuit according to an embodiment of the invention described in claim 3;

【図26】4ビットALUの一構成例を示す図である。FIG. 26 is a diagram showing a configuration example of a 4-bit ALU.

【図27】従来技術による真理値を用いた論理回路のシ
ミュレーション装置における真理値表の構造と要素参照
方法の説明図である。
FIG. 27 is an explanatory diagram of a structure of a truth table and an element referring method in a logic circuit simulation device using a truth value according to a conventional technique.

【符号の説明】[Explanation of symbols]

1 シミュレーション装置本体 2 HDL記述 11 HDL記述解析部 12 演算子列保持部 13 マージ判定部 14 演算コード生成部 15 演算実行部 16 テーブル作成部 17 テーブル保持部 71 修正前のHDL記述例 72 修正後のHDL記述例 81 修正前の演算子列の例 82 修正後の演算子列の例 111 修正前のマージ情報テーブル 112 修正後のマージ情報テーブル 141,201 論理回路のシミュレーション装置 142 回路記述解析手段 143 階層化真理値表作成手段 144 シミュレーション手段 145 回路記述 146 機能仕様 147 階層化真理値表 148 ライブラリ情報 149 接続情報 150 テストパターン 151 シミュレーション結果 170 イベント 171 信号の識別情報 172 信号の新しい値 173 信号の変化予定時刻 191,221,241 上位の信号による連接ビット
列 192,211,231 上位の表 193,212,232 下位の表 194,222,242 下位の信号よる連接ビット列 203 階層化真理値表作成手段 204 シミュレーション手段 207 階層化真理値表 243 マスクパターン 244 ビット毎のAND演算の結果 271 連接ビット列 272 真理値表 1441 シミュレーション時計 1442 イベント管理手段 1443 信号値格納部 1444 再評価対象決定手段 1445 評価手段 1446 結果出力手段
1 Simulation device main body 2 HDL description 11 HDL description analysis unit 12 Operator sequence holding unit 13 Merge determination unit 14 Operation code generation unit 15 Operation execution unit 16 Table creation unit 17 Table holding unit 71 HDL description example before correction 72 After correction HDL description example 81 Example of operator sequence before modification 82 Example of operator sequence after modification 111 Merge information table before modification 112 Merge information table after modification 141,201 Logic circuit simulation device 142 Circuit description analysis means 143 Hierarchy Truth table creation means 144 Simulation means 145 Circuit description 146 Functional specifications 147 Hierarchical truth table 148 Library information 149 Connection information 150 Test pattern 151 Simulation result 170 Event 171 Signal identification information 172 Signal new value 17 3 Scheduled change time of signal 191, 221, 241 Concatenated bit string by upper signal 192, 211, 231 Upper table 193, 212, 232 Lower table 194, 222, 242 Concatenated bit string by lower signal 203 Hierarchical truth table Creating means 204 Simulation means 207 Hierarchical truth table 243 Mask pattern 244 Result of AND operation for each bit 271 Concatenated bit string 272 Truth table 1441 Simulation clock 1442 Event management means 1443 Signal value storage section 1444 Re-evaluation target determining means 1445 Evaluation means 1446 result output means

───────────────────────────────────────────────────── フロントページの続き (72)発明者 石川 貴史 神奈川県川崎市幸区小向東芝町1 株式会 社東芝研究開発センター内 ─────────────────────────────────────────────────── ─── Continuation of the front page (72) Inventor Takashi Ishikawa 1 Komukai Toshiba-cho, Sachi-ku, Kawasaki-shi, Kanagawa Toshiba Research & Development Center

Claims (3)

【特許請求の範囲】[Claims] 【請求項1】 シミュレーション対象の論理回路の機能
を記述したハードウェア記述言語(HDL)を解析して
各文毎の演算子の列である演算子列を抽出するHDL記
述解析手段と、 前記HDL記述解析手段により得られた文毎の演算子列
から各演算子列間の共有化の可否を判定するマージ判定
手段と、 前記マージ判定手段によるマージ判定結果に基づいてシ
ミュレーション実行可能な演算コードを生成する演算コ
ード生成手段と、 前記演算コード生成手段によって生成された演算コード
から演算を実行し、その演算結果を格納したテーブルを
作成するテーブル作成手段とを有することを特徴とする
論理回路のシミュレーション装置。
1. An HDL description analyzing means for analyzing a hardware description language (HDL) describing a function of a logic circuit to be simulated and extracting an operator sequence which is a sequence of operators for each sentence, and the HDL. A merge determination unit that determines whether or not sharing between the operator sequences is possible from the operator sequence for each sentence obtained by the description analysis unit, and an operation code that can perform simulation based on the merge determination result by the merge determination unit. Simulation of a logic circuit comprising: an operation code generating unit for generating; and a table creating unit for executing an operation from the operation code generated by the operation code generating unit and creating a table storing the operation result. apparatus.
【請求項2】 回路記述を入力として論理演算機能を有
する回路構成要素の各種類毎に、その機能仕様となる入
力信号のパターンに対する出力信号のパターンの定義情
報を生成する回路記述解析手段と、 前記回路構成要素の機能仕様について、その入力信号群
を組分けし各々の組毎に部分真理値表を作成し、それら
を階層的に接続して構成される階層化真理値表を作成す
る階層化真理値表作成手段と、 前記階層化真理値表を用いて前記回路構成要素各々につ
いてその入力信号のパターンから出力信号パターンを決
定するシミュレーション手段とを有することを特徴とす
る論理回路のシミュレーション装置。
2. A circuit description analysis means for inputting a circuit description and for each kind of circuit constituent element having a logical operation function, and generating definition information of a pattern of an output signal with respect to a pattern of an input signal which is a functional specification thereof. Hierarchy for creating a hierarchical truth table composed of input signal groups of the above-mentioned circuit components, creating partial truth tables for each set, and connecting them hierarchically A logic circuit simulation device, comprising: a conversion truth value table creating means; and a simulation means for determining an output signal pattern from an input signal pattern for each of the circuit components using the hierarchical truth value table. .
【請求項3】 シミュレーション対象の論理回路の機能
を記述したハードウェア記述言語(HDL)をコンパイ
ルする際に、 HDLソース間の参照関係情報をファイルに格納するス
テップと、 HDLソースのコンパイル時に前記参照関係情報を基に
して参照先ソースファイルの変更の有無を求め、参照先
ソースの再コンパイルが必要か否かを判断するステップ
と、 前記参照先ソースの再コンパイルが必要な場合には、予
め再コンパイルを行うステップとを有することを特徴と
する論理回路の機能記述言語のコンパイル方法。
3. A step of storing reference relationship information between HDL sources in a file when compiling a hardware description language (HDL) that describes the function of a logic circuit to be simulated, and the reference when compiling the HDL source. The step of determining whether or not the referenced source file has been changed based on the relation information and determining whether or not the referenced source needs to be recompiled; A method of compiling a functional description language for a logic circuit, comprising: a step of compiling.
JP5336552A 1993-12-28 1993-12-28 Simulation device for logic circuit and compiling method for function describing language of logic circuit Pending JPH07200665A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP5336552A JPH07200665A (en) 1993-12-28 1993-12-28 Simulation device for logic circuit and compiling method for function describing language of logic circuit

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP5336552A JPH07200665A (en) 1993-12-28 1993-12-28 Simulation device for logic circuit and compiling method for function describing language of logic circuit

Publications (1)

Publication Number Publication Date
JPH07200665A true JPH07200665A (en) 1995-08-04

Family

ID=18300321

Family Applications (1)

Application Number Title Priority Date Filing Date
JP5336552A Pending JPH07200665A (en) 1993-12-28 1993-12-28 Simulation device for logic circuit and compiling method for function describing language of logic circuit

Country Status (1)

Country Link
JP (1) JPH07200665A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013206290A (en) * 2012-03-29 2013-10-07 Fujitsu Ltd Program, code generation method and information processing apparatus

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013206290A (en) * 2012-03-29 2013-10-07 Fujitsu Ltd Program, code generation method and information processing apparatus

Similar Documents

Publication Publication Date Title
Burns Performance analysis and optimization of asynchronous circuits
EP1964266B1 (en) A method for multi-cycle clock gating
US6606734B2 (en) Simulation method and compiler for hardware/software programming
US20040117168A1 (en) Global analysis of software objects generated from a hardware description
Mishchenko et al. A new enhanced constructive decomposition and mapping algorithm
US20020010899A1 (en) Digital circuit layout techniques
Baer et al. Model, design, and evaluation of a compiler for a parallel processing environment
US5949993A (en) Method for the generation of ISA simulators and assemblers from a machine description
US8935512B2 (en) Instruction operation code generation system
Reichenbach et al. RISC-V3: A RISC-V compatible CPU with a data path based on redundant number systems
JPH07200665A (en) Simulation device for logic circuit and compiling method for function describing language of logic circuit
CN109117142B (en) Basic type reconstruction method based on variable association tree
US11657205B2 (en) Construction, modeling, and mapping of multi-output cells
O’Donnell Embedding a hardware description language in template haskell
JPH06231203A (en) Compilation mechanism for simulation model
Bornebusch et al. Performance Aspects of Correctness-oriented Synthesis Flows.
Walton et al. Parallel FPGA-based implementation of scatter search
Jeng et al. FACE: Fine-tuned architecture codesign environment for ASIP development
Hung et al. Transparent in-circuit assertions for FPGAs
JP2990882B2 (en) Functional simulation device
Petković et al. Processor Modelling for Silicon Compilation: A Methodology Derived from Lessons Learned
JPH04288678A (en) Lag time calculator
Van den Bout 1ST FIRST PLACE WINNER Axe: A language for the simulation of digital hardware
Habibi et al. Formal Verificaction of the ADSP-2100 Processor Using the HOL Theorem Prover
Wasaki et al. Development of A Meta Description Language for Software/Hardware Cooperative Design and Verification for Model-Checking Systems