JP2985922B2 - Logic function data processor - Google Patents
Logic function data processorInfo
- Publication number
- JP2985922B2 JP2985922B2 JP5268891A JP26889193A JP2985922B2 JP 2985922 B2 JP2985922 B2 JP 2985922B2 JP 5268891 A JP5268891 A JP 5268891A JP 26889193 A JP26889193 A JP 26889193A JP 2985922 B2 JP2985922 B2 JP 2985922B2
- Authority
- JP
- Japan
- Prior art keywords
- node
- intermediate node
- binary
- branch
- nodes
- 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 - Fee Related
Links
Landscapes
- Tests Of Electronic Circuits (AREA)
Description
【0001】[0001]
【産業上の利用分野】本発明は、複数の入力変数をもつ
論理関数、または複数の要素からなる集合の任意の部分
集合を処理する装置に係り、さらに詳述すれば、ノード
と枝からなる2分決定グラフを用いて論理関数または部
分集合を表現し、この2分決定グラフに基づいて、論理
関数の簡単化を実行する、論理関数データ処理装置に関
する。BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to an apparatus for processing a logical function having a plurality of input variables or an arbitrary subset of a set consisting of a plurality of elements. The present invention relates to a logical function data processing device that expresses a logical function or a subset using a binary decision diagram and executes simplification of the logical function based on the binary decision diagram.
【0002】[0002]
【従来の技術】論理関数の表現方法の1つとして、2分
決定グラフと呼ばれる方法が用いられている(R.E.Brya
nt, "Graph-Based Algorithms for Boolean Function M
anipulation", IEEE Trans. Comput. Vol. C-35, No.
8, pp 677 - 691) 。この表現方法は、以下の各処理か
らなっている。2. Description of the Related Art As one method of expressing a logical function, a method called a binary decision diagram is used (REBrya
nt, "Graph-Based Algorithms for Boolean Function M
anipulation ", IEEE Trans. Comput. Vol. C-35, No.
8, pp 677-691). This expression method includes the following processes.
【0003】(1) 順序づけ処理 論理関数のすべての入力変数に、ある固定した順序を与
える。たとえば、図1においては、3つの入力変数に対
して、x3,x2,x1という固定した順序が与えられ
ている。(1) Ordering processing A fixed order is given to all input variables of a logic function. For example, in FIG. 1, a fixed order of x3, x2, x1 is given to three input variables.
【0004】(2) 展開処理 入力変数の1つに0および1の論理値を代入することに
よって、論理関数から2つの部分関数を導出する。たと
えば、図1において、入力変数x3に0および1を代入
することによって、2つの部分関数が導出される。(2) Expansion processing Two partial functions are derived from a logical function by substituting logical values of 0 and 1 into one of the input variables. For example, in FIG. 1, two partial functions are derived by substituting 0 and 1 for an input variable x3.
【0005】(3) 二分木グラフ生成処理 順序づけ処理によって与えられた順序にしたがって、上
記展開処理をすべての入力変数について繰り返し、図1
に示すような2分木グラフを生成する。図1において、
丸は中間ノードを示し、四角は終端ノードを示す。中間
ノードは、個々の展開処理に対応するもので、展開処理
によって得られた2つの部分関数を指す2本の枝をもっ
ている。また、終端ノードは、一連の展開処理の結果と
して得られた0または1の論理値を表している。(3) Binary tree graph generation processing According to the order given by the ordering processing, the above expansion processing is repeated for all input variables.
A binary tree graph as shown in FIG. In FIG.
Circles indicate intermediate nodes, and squares indicate terminal nodes. The intermediate node corresponds to each expansion process, and has two branches indicating two partial functions obtained by the expansion process. The end node represents a logical value of 0 or 1 obtained as a result of a series of expansion processing.
【0006】(4) 共有化処理 図2(a)に示すように、第1の中間ノード11から出
た0の枝と第2の中間ノード12から出た0の枝が同じ
中間ノード13を指し、かつ、これら第1および第2の
中間ノードから出た1の枝が別の同じ中間ノード14を
指すとき、これら第1および第2の2つの中間ノード1
1および12は、図2(b)に示すように共有化され、
1つの中間ノード15にまとめられる。(4) Sharing process As shown in FIG. 2 (a), the 0 branch from the first intermediate node 11 and the 0 branch from the second intermediate node 12 have the same intermediate node 13. And when one branch emanating from these first and second intermediate nodes points to another and the same intermediate node 14, these first and second two intermediate nodes 1
1 and 12 are shared as shown in FIG.
They are combined into one intermediate node 15.
【0007】(5) 非冗長化処理 図3(a)に示すように、第1の中間ノード17から出
た0および1の2本の枝が、同じ第2の中間ノード18
を指しているときには、図3(b)に示すように第1の
中間ノード17を取り除き、第1の中間ノード17を指
していた枝を第2の中間ノード18に直結する。(5) Non-redundancy processing As shown in FIG. 3A, two branches 0 and 1 coming out of the first intermediate node 17 are connected to the same second intermediate node 18.
, The first intermediate node 17 is removed as shown in FIG. 3B, and the branch pointing to the first intermediate node 17 is directly connected to the second intermediate node 18.
【0008】これらの共有化処理と非冗長化処理とによ
って、図1に示す二分木グラフは、図4に示す二分決定
グラフに圧縮される。By the sharing process and the non-redundancy process, the binary tree graph shown in FIG. 1 is compressed into a binary decision diagram shown in FIG.
【0009】このように、二分決定グラフを用いて、論
理関数を表現することができた。二分決定グラフは、さ
らに、集合データの表現に用いることができる。As described above, a logical function can be expressed by using a BDD. BDDs can also be used to represent aggregate data.
【0010】図5は、二分決定グラフを用いた、集合デ
ータの表現方法の一例を示す図である。この図におい
て、8個の要素からなる集合の各要素a,b,c,d,
e,f,g,hは、番号テーブル21において、3桁の
2進数で表現された番号0、1、2、3、4、5、6、
7に、それぞれ対応づけられている。集合データ中の要
素bおよびcが初期データ22として与えられると、番
号テーブル21にしたがって、要素bおよびcが符号化
され、3桁の2進数で表された符号化データ23が作ら
れる。この2進数の各桁を上からx3,x2,x1で表
せば、符号化データ23から二分木グラフ24が生成さ
れる。FIG. 5 is a diagram showing an example of a method of expressing set data using a BDD. In this figure, each element a, b, c, d, of a set of eight elements
e, f, g, and h are numbers 0, 1, 2, 3, 4, 5, 6, and 3 represented by a three-digit binary number in the number table 21.
7, respectively. When the elements b and c in the set data are given as the initial data 22, the elements b and c are encoded according to the number table 21, and encoded data 23 represented by a three-digit binary number is created. If each digit of this binary number is represented by x3, x2, x1 from the top, a binary tree graph 24 is generated from the encoded data 23.
【0011】この二分木グラフ24において、要素bに
対応する{001}、および要素cに対応する{01
0}のみが、1の終端ノードに連なっており、他の要素
に対応する枝は、0の終端ノードに連なっている。これ
は、要素bおよびcが、8個の要素をもつ集合の部分集
合に含まれていることを示している。この二分木グラフ
24が、上述した共有化処理と非冗長化処理とを受け、
二分決定グラフ25が生成される。In the binary tree graph 24, {001} corresponding to the element b and {01} corresponding to the element c
Only 0 # is connected to the 1 end node, and the branches corresponding to the other elements are connected to the 0 end node. This indicates that elements b and c are included in a subset of the set having eight elements. The binary tree graph 24 receives the above-described sharing processing and non-redundancy processing,
A binary decision diagram 25 is generated.
【0012】このように、集合の各要素を相異なる整数
で表現し、この整数を2進数で表したときの各桁の0お
よび1を論理値とみなすことによって、集合を論理関数
に対応づけることができる。その上で、これらの集合
を、上述した二分木グラフの生成処理、共有化処理、お
よび非冗長化処理によって簡単化することができる。こ
の場合、二分木グラフの各中間ノードにおいて、入力変
数に0および1を代入して、2つの部分グラフを得ると
いう処理は、集合データの処理としてみると、要素番号
を示す2進数のある桁が0か1かによって、すべての要
素を2つの部分集合に分類するという意味をもってい
る。As described above, each element of the set is represented by a different integer, and the set is associated with a logical function by considering each digit 0 and 1 when the integer is represented by a binary number as a logical value. be able to. Then, these sets can be simplified by the above-described binary tree graph generation processing, sharing processing, and non-redundancy processing. In this case, in each intermediate node of the binary tree graph, the process of substituting 0 and 1 for input variables to obtain two subgraphs is a set of binary digits indicating an element number in the processing of aggregate data. Has the meaning of classifying all elements into two subsets depending on whether is 0 or 1.
【0013】[0013]
【発明が解決しようとする課題】上述した二分決定グラ
フの手法を用いることによって、中間ノードの共有化お
よび非冗長化が行われる。したがって、二分決定グラフ
の手法を、計算機を用いた自動設計等に適用すれば、論
理回路の簡単化を実現することができ、少ない記憶量で
データを表現することが可能となる。また、記憶量の減
少によって、計算時間も短縮される。By using the above-mentioned binary decision diagram technique, sharing and non-redundancy of intermediate nodes are performed. Therefore, if the method of the BDD is applied to automatic design or the like using a computer, simplification of a logic circuit can be realized, and data can be expressed with a small storage amount. Also, the calculation time is shortened by the reduction of the storage amount.
【0014】ところが、この種の処理においては、全体
集合の要素数に比較して、要素数のかなり少ない部分集
合(疎な集合)を処理する場合がしばしば生じる。この
ような場合に、出現頻度の高い要素に小さな要素番号を
割り当て、それを2進数で表現すると、2進数の各桁に
おける0の出現頻度が、1の出現頻度よりも相当に大き
くなってしまう。この結果、中間ノードから出た、0お
よび1の2本の枝の行き先が一致する可能性が減り、ノ
ード数の削減頻度が減少し、記憶容量が増加するという
不都合があった。However, in this type of processing, a subset (sparse set) having a considerably smaller number of elements than the number of elements in the entire set is often processed. In such a case, if a small element number is assigned to an element having a high appearance frequency and the element number is expressed in a binary number, the frequency of occurrence of 0 in each digit of the binary number becomes considerably higher than the frequency of occurrence of 1. . As a result, the possibility that the destinations of the two branches 0 and 1 coming out of the intermediate node coincide with each other is reduced, the frequency of reducing the number of nodes is reduced, and the storage capacity is increased.
【0015】さらに、従来の二分決定グラフを用いた方
法では、図6(a)および(b)に示すように、同じ集
合を表すデータでも、2進数の桁数(図6(a)は3桁
のデータ、図6(b)は4桁のデータ)によってグラフ
の形が異なるため、あらかじめ全体集合の要素数を固定
しておかなければならないという問題もあった。Further, in the conventional method using the BDD, even if the data represents the same set, as shown in FIGS. 6A and 6B, the number of binary digits (FIG. 6A shows 3 digits). Since the form of the graph differs depending on the digit data (four-digit data in FIG. 6B), there is also a problem that the number of elements of the whole set must be fixed in advance.
【0016】よって、本発明の目的は、全体集合の要素
数に比べて、要素数がかなり少ない部分集合(疎な集
合)を、少ないノード数のグラフで表現し、記憶容量と
計算時間の削減を図った論理関数データ処理装置を提供
することにある。Accordingly, an object of the present invention is to represent a subset (sparse set) having a considerably small number of elements as compared with the number of elements of the whole set in a graph with a small number of nodes, thereby reducing storage capacity and calculation time. To provide a logic function data processing device.
【0017】[0017]
【課題を解決するための手段】本発明による論理関数デ
ータ処理装置は、論理関数データを構成する複数の入力
変数xのそれぞれに、ある固定した順番を与える順序テ
ーブルと、複数個の中間ノードと0および1の論理値を
表す2つの終端ノードt0,t1との組合せからなる二
分木状のグラフを格納するためのノードテーブルで、前
記各中間ノードに関わる一つの入力変数xと、該入力変
数xへ0および1を代入したときの行き先を表す2つの
枝e0,e1とを記憶するエリアを備えたノードテーブ
ルと、前記順序テーブルに記録されている第1の入力変
数x1に、0および1を代入して2つの部分論理関数に
分解する展開処理を行い、該各部分論理関数について、
前記順序テーブルの第2の入力変数x2に0および1を
代入して、各々2つの部分論理関数に分解する展開処理
を行い、以下同様の展開処理を前記順序テーブルの示す
順序にしたがって、すべての入力変数xについて繰り返
し、該一連の展開処理によって得られた展開を前記中間
ノードおよび前記終端ノードt0,t1で表現して前記
二分木状のグラフを生成し、該二分木状のグラフを構成
する中間ノードおよび終端ノードt0,t1を前記ノー
ドテーブルに格納する手段と、前記展開処理中に、新た
な中間ノードaを生成して前記ノードテーブルに格納す
る前に、該中間ノードaと同一の入力変数xおよび枝e
0,e1を有する等価な中間ノードbが、前記ノードテ
ーブル中にすでに存在しているか否かを調べ、すでに存
在している場合は、新たな中間ノードaは生成せずに、
中間ノードaを指すべき枝が前記中間ノードbを指すよ
うにし、前記中間ノードの共有化を行う手段と、前記展
開処理中に、新たな中間ノードaの一方の枝e1が終端
ノードt0を直接指す場合は、該中間ノードaは生成せ
ずに、前記中間ノードaを指すべき枝がもう一方の枝e
0の行き先を直接指すようにし、冗長な中間ノードの生
成を防ぐ非冗長化を行う手段とを具備することを特徴と
する。According to the present invention, there is provided a logic function data processing apparatus comprising: an order table for giving a fixed order to each of a plurality of input variables x constituting logic function data; A node table for storing a binary tree-like graph composed of a combination of two terminal nodes t0 and t1 representing logical values of 0 and 1, wherein one input variable x relating to each intermediate node and one input variable a node table having an area for storing two branches e0 and e1 representing destinations when 0 and 1 are substituted into x, and 0 and 1 as first input variables x1 recorded in the order table. Is performed to decompose into two partial logical functions, and for each partial logical function,
Substituting 0 and 1 for the second input variable x2 in the order table, and performing expansion processing for decomposing each into two partial logical functions, and thereafter performing the same expansion processing according to the order shown in the order table, The input variable x is repeated, and the expansion obtained by the series of expansion processing is expressed by the intermediate node and the terminal nodes t0 and t1, to generate the binary tree-like graph, and configure the binary tree-like graph. Means for storing the intermediate node and the terminal nodes t0 and t1 in the node table, and the same input as the intermediate node a before generating a new intermediate node a and storing it in the node table during the expansion processing. Variable x and branch e
It is checked whether or not an equivalent intermediate node b having 0, e1 already exists in the node table, and if it already exists, a new intermediate node a is not generated, and
Means for pointing the branch that should point to the intermediate node a to the intermediate node b, and sharing the intermediate node; and, during the expansion processing, one branch e1 of the new intermediate node a directly connects the terminal node t0. If so, the intermediate node a is not generated, and the branch that should point to the intermediate node a is the other branch e.
Means for directly indicating a destination of 0 and performing non-redundancy to prevent generation of redundant intermediate nodes.
【0018】前記論理関数データ処理装置は、さらに、
複数個の要素からなる集合データ中の任意の要素からな
る部分集合データを前記論理関数データに対応させるた
めの番号テーブルを備え、該番号テーブルは、前記集合
データの各要素と該各要素に付与された0以上の相異な
る整数番号とを含み、該整数番号を2進数で表したとき
の各桁を前記各入力変数xに対応させ、前記論理関数デ
ータは、前記各入力変数xが構成する2進数によって表
現された前記整数番号に対応する要素が、前記部分集合
データに含まれるときに値1をとり、そうでないときに
値0をとることを特徴とする。The logic function data processing device further comprises:
A number table for associating subset data consisting of arbitrary elements in the aggregate data consisting of a plurality of elements with the logical function data, wherein the number table is assigned to each element of the aggregate data and to each element; And each of the digits when the integer number is represented by a binary number is made to correspond to each of the input variables x, and the logic function data is constituted by each of the input variables x. An element corresponding to the integer number represented by a binary number takes a value 1 when included in the subset data, and takes a value 0 otherwise.
【0019】本発明による論理関数データ処理装置は、
また、論理回路のオン集合を積項の和の形で表現した集
合データの、前記積項を構成するリテラルの総数に等し
い桁数の2進数を用いて、該2進数の各桁の0および1
を前記リテラルの有無に対応づけることによって、前記
積項を相異なる2進数で表し、前記オン集合を論理関数
として表現し、該論理関数に基づいて論理回路を設計す
る論理回路の設計装置において、前記積項と前記2進数
との対応を示す番号テーブルと、前記各リテラルに、あ
る固定した順番を与える順序テーブルと、複数個の中間
ノードと0および1の論理値を表す2つの終端ノードt
0,t1との組合せからなる二分木状のグラフを格納す
るためのノードテーブルで、前記各中間ノードに関わる
一つのリテラルと、該リテラルへ1および0を代入した
ときの行き先を表す2つの枝e0,e1とを記憶するエ
リアを備えたノードテーブルと、前記順序テーブルに記
録されている第1のリテラルに、0および1を代入して
2つの部分論理関数に分解する展開処理を行い、該各部
分論理関数について、前記順序テーブルの第2のリテラ
ルに0および1を代入して、各々2つの部分論理関数に
分解する展開処理を行い、以下同様の展開処理を前記順
序テーブルの示す順序にしたがって、すべてのリテラル
について繰り返し、該一連の展開処理によって得られた
展開を前記中間ノードおよび前記終端ノードt0,t1
で表現して前記二分木状のグラフを生成し、該二分木状
のグラフを構成する中間ノードおよび終端ノードt0,
t1を前記ノードテーブルに格納する手段と、前記展開
処理中に、新たな中間ノードaを生成して前記ノードテ
ーブルに格納する前に、該中間ノードaと同一のリテラ
ルおよび枝e0,e1を有する等価な中間ノードbが、
前記ノードテーブル中にすでに存在しているか否かを調
べ、すでに存在している場合は、新たな中間ノードaは
生成せずに、中間ノードaを指すべき枝が前記中間ノー
ドbを指すようにし、前記中間ノードの共有化を行う手
段と、前記展開処理中に、新たな中間ノードaの一方の
枝e1が終端ノードt0を直接指す場合は、該中間ノー
ドaは生成せずに、前記中間ノードaを指すべき枝がも
う一方の枝e0の行き先を直接指すようにし、冗長な中
間ノードの生成を防ぐ非冗長化を行う手段と、前記共有
化および冗長化によって得られた積項の含むリテラルに
したがって、前記論理回路の入力端子とAND素子の入
力端子とを回路図上で接続する手段と、前記AND素子
の各出力を1つのOR素子に回路図上で接続する手段と
を具備することを特徴とする。The logic function data processing device according to the present invention comprises:
Further, using a binary number having the same number of digits as the total number of literals constituting the product term of the set data representing the ON set of the logic circuit in the form of the sum of the product terms, 0 and 0 of each digit of the binary number are used. 1
Is associated with the presence or absence of the literal, the product term is represented by a different binary number, the ON set is represented as a logic function, and a logic circuit design device that designs a logic circuit based on the logic function, A number table indicating the correspondence between the product term and the binary number, an order table for giving a fixed order to each of the literals, a plurality of intermediate nodes and two terminal nodes t representing logical values of 0 and 1
In a node table for storing a binary tree-like graph composed of combinations of 0 and t1, one literal relating to each intermediate node and two branches representing destinations when 1 and 0 are substituted into the literals A node table having an area for storing e0 and e1 and a first literal recorded in the order table are subjected to expansion processing for substituting 0 and 1 to decompose them into two partial logical functions. For each partial logical function, 0 and 1 are assigned to the second literal of the order table, and expansion processing for decomposing each of the partial logical functions into two partial logical functions is performed. Thereafter, similar expansion processing is performed in the order shown in the order table. Therefore, for all literals, the expansion obtained by the series of expansion processing is performed on the intermediate node and the terminal nodes t0 and t1.
To generate the above-mentioned binary tree-like graph, and the intermediate node and the terminal node t0,
means for storing t1 in the node table, and the same literals and branches e0 and e1 as the intermediate node a before generating a new intermediate node a and storing it in the node table during the expansion processing. The equivalent intermediate node b is
It is checked whether or not the node already exists in the node table. If the node already exists, a new intermediate node a is not generated, and a branch pointing to the intermediate node a is pointed to the intermediate node b. Means for sharing the intermediate node, and when one branch e1 of the new intermediate node a directly points to the terminal node t0 during the expansion processing, the intermediate node a is not generated and the intermediate node a is not generated. Means for making the branch that should point to node a directly point to the destination of the other branch e0, and performing non-redundancy to prevent generation of redundant intermediate nodes, and including the product term obtained by the sharing and redundancy According to a literal, there are provided means for connecting an input terminal of the logic circuit and an input terminal of an AND element on a circuit diagram, and means for connecting each output of the AND element to one OR element on the circuit diagram. That And butterflies.
【0020】前記論理関数データ処理装置は、さらに、
前記AND素子およびOR素子を組み合わせた回路を生
成した後、該回路に等価的な置換を施すことによって、
NAND素子およびNOR素子を用いた回路を生成する
こと特徴とする。The logic function data processing device further comprises:
After generating a circuit in which the AND element and the OR element are combined, by performing equivalent replacement on the circuit,
It is characterized by generating a circuit using a NAND element and a NOR element.
【0021】本発明による故障診断装置は、論理回路の
信号線上で信号が0または1に固定される故障が複数箇
所で発生すると仮定される場合に、前記各信号線につい
て、該信号線上の信号値を正常値と異ならせる故障の集
合を、前記論理回路の入力端子から出力端子に向かっ
て、回路の論理にしたがって集合演算を用いて順次計算
し、前記論理回路の出力の信号値に影響を与える故障の
集合を求める故障診断装置において、前記故障の集合デ
ータを、仮定される故障の総数と等しい桁数の2進数を
用いて、該2進数の各桁の1および0を各故障の有無に
対応づけ、前記故障の集合データを論理関数で表現する
手段と、前記各故障に、ある固定した順番を与える順序
テーブルと、複数個の中間ノードと0および1の論理値
を表す2つの終端ノードt0,t1との組合せからなる
二分木状のグラフを格納するためのノードテーブルで、
前記各中間ノードに関わる一つの故障と、該故障へ1お
よび0を代入したときの行き先を表す2つの枝e0,e
1とを記憶するエリアを備えたノードテーブルと、前記
順序テーブルに記録されている第1の故障に、0および
1を代入して2つの部分論理関数に分解する展開処理を
行い、該各部分論理関数について、前記順序テーブルの
第2の故障に0および1を代入して、各々2つの部分論
理関数に分解する展開処理を行い、以下同様の展開処理
を前記順序テーブルの示す順序にしたがって、すべての
故障について繰り返し、該一連の展開処理によって得ら
れた展開を前記中間ノードおよび前記終端ノードt0,
t1で表現して前記二分木状のグラフを生成し、該二分
木状のグラフを構成する中間ノードおよび終端ノードt
0,t1を前記ノードテーブルに格納する手段と、前記
展開処理中に、新たな中間ノードaを生成して前記ノー
ドテーブルに格納する前に、該中間ノードaと同一の故
障および枝e0,e1を有する等価な中間ノードbが、
前記ノードテーブル中にすでに存在しているか否かを調
べ、すでに存在している場合は、新たな中間ノードaは
生成せずに、中間ノードaを指すべき枝が前記中間ノー
ドbを指すようにし、前記中間ノードの共有化を行う手
段と、前記展開処理中に、新たな中間ノードaの一方の
枝e1が終端ノードt0を直接指す場合は、該中間ノー
ドaは生成せずに、前記中間ノードaを指すべき枝がも
う一方の枝e0の行き先を直接指すようにし、冗長な中
間ノードの生成を防ぐ非冗長化を行う手段とを具備する
ことを特徴とする。According to the fault diagnosis apparatus of the present invention, when it is assumed that a fault in which a signal is fixed to 0 or 1 occurs on a signal line of a logic circuit at a plurality of locations, a signal on the signal line A set of faults whose values differ from the normal value is sequentially calculated from the input terminal of the logic circuit to the output terminal using a set operation according to the logic of the circuit, and the influence on the signal value of the output of the logic circuit is affected. In the fault diagnosis apparatus for obtaining a set of faults to be given, the set data of the faults is represented by a binary number having the same number of digits as the total number of assumed faults, and 1 and 0 of each digit of the binary number are used to determine whether each fault exists. Means for expressing the set data of the faults as a logical function, an order table for giving a fixed order to each fault, and a plurality of intermediate nodes and two end points representing logical values of 0 and 1. No In node table for storing the binary tree-like graph, which consist of a combination of de t0, t1,
One fault related to each of the intermediate nodes, and two branches e0 and e representing destinations when 1 and 0 are substituted into the fault.
A node table having an area for storing 1 and an expansion process of substituting 0 and 1 into the first fault recorded in the order table to decompose the first fault into two partial logical functions. With respect to the logic function, 0 and 1 are substituted for the second fault in the order table, and expansion processing is performed to decompose the logic function into two partial logical functions. It repeats for all the faults, and deploys the deployment obtained by the series of deployment processing to the intermediate node and the terminal nodes t0, t0,
The binary tree-like graph is generated by expressing the binary tree-like graph by t1, and the intermediate node and the terminal node t constituting the binary tree-like graph
Means for storing 0, t1 in the node table, and the same faults and branches e0, e1 as the intermediate node a before generating a new intermediate node a and storing it in the node table during the expansion processing. An equivalent intermediate node b with
It is checked whether or not the node already exists in the node table. If the node already exists, a new intermediate node a is not generated, and a branch pointing to the intermediate node a is pointed to the intermediate node b. Means for sharing the intermediate node, and when one branch e1 of the new intermediate node a directly points to the terminal node t0 during the expansion processing, the intermediate node a is not generated and the intermediate node a is not generated. Means for directing the branch to point to the node a to the destination of the other branch e0, and for performing non-redundancy to prevent generation of redundant intermediate nodes
It is characterized by the following.
【0022】[0022]
【作用】本発明は、ゼロサプレス二分決定グラフを用い
た手法(以下、簡単に、ゼロサプレス法という)を用い
て、ノード数の削減を図っている。このゼロサプレス法
は、個々の中間ノードにおいて、入力変数への0および
1の代入を表す枝を、それぞれe0およびe1としたと
き、枝e1が0の終端ノードを指す場合は、この中間ノ
ードと、枝e1と、0の終端ノードとを取り除いて、こ
の中間ノードを指す枝を枝e0に直結させるという非冗
長化手法である。According to the present invention, the number of nodes is reduced by using a technique using a zero suppression binary decision diagram (hereinafter simply referred to as a zero suppression method). In the zero suppression method, when the branches representing the assignment of 0 and 1 to the input variables are e0 and e1, respectively, at each intermediate node, if the branch e1 indicates the terminal node of 0, This is a non-redundant method in which the branch e1 and the terminal node of 0 are removed, and the branch indicating the intermediate node is directly connected to the branch e0.
【0023】[0023]
【実施例】以下、図面を参照して本発明の実施例を詳細
に説明するが、その前に、図7から図9を参照して本発
明の原理を説明する。DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings, but before that, the principle of the present invention will be described with reference to FIGS.
【0024】図7において、二分木グラフ24が生成さ
れるところまでは、図5の従来例と同様である。この二
分木グラフ24からゼロサプレス二分決定グラフ30を
生成する手法が、本発明の主要な点である。FIG. 7 is the same as the conventional example of FIG. 5 up to the point where the binary tree graph 24 is generated. The method of generating the zero suppression binary decision diagram 30 from the binary tree graph 24 is the main point of the present invention.
【0025】図8は、本発明で用いる新たな非冗長化処
理を示す図であり、この方法が、従来の非冗長化処理
(図3参照)に代わって使用される。この非冗長化処理
は、中間ノード33を生成して、後述するノードテーブ
ルに格納する前に実行される。FIG. 8 is a diagram showing a new non-redundancy process used in the present invention. This method is used in place of the conventional non-redundancy process (see FIG. 3). This non-redundancy processing is executed before the intermediate node 33 is generated and stored in the node table described later.
【0026】図8において、33は中間ノード、e0お
よびe1は、入力変数へ0および1を代入したときの分
岐先を示す枝、t0は0の終端ノードを示している。本
発明のゼロサプレス法は、中間ノード33の一方の枝e
1が終端ノードt0を直接指しているか否かを調べ、直
接指している場合は、中間ノード33は生成しない。ま
た、中間ノード33を指すべき枝31は、中間ノード3
3のもう一方の枝e0が指しているノード32を直接指
すようにする。この結果、図8(a)は、図8(b)に
示すように、非冗長化される。In FIG. 8, 33 is an intermediate node, e0 and e1 are branches indicating branch destinations when 0 and 1 are substituted for input variables, and t0 is a terminal node of 0. The zero suppression method of the present invention uses one branch e of the intermediate node 33.
It is checked whether or not 1 directly points to the terminal node t0. If it does, the intermediate node 33 is not generated. The branch 31 that should point to the intermediate node 33 is the intermediate node 3
The other branch e0 of 3 directly points to the node 32 to which it points. As a result, FIG. 8A is made non-redundant as shown in FIG.
【0027】図9は、図7の二分木グラフ24が、ゼロ
サプレス二分決定グラフ30に簡単化される過程を示し
た図である。図9(a)の二分木グラフ24は、終端ノ
ードの共有化処理によって、同図(b)のように圧縮さ
れる。さらに、図8の非冗長化処理によって、同図
(c)に示すように、中間ノードB,C,Dが削除され
る。これは、これらの中間ノードの1の枝が0の終端ノ
ードを直接指しているためである。さらに、ゼロサプレ
ス法による非冗長化処理を繰り返すと、同図(d)に示
すように、1の枝が0の終端を直接指している中間ノー
ドFが削除される。最後に、同図(e)に示すように、
中間ノードGが削除されて、簡単化の結果として、ゼロ
サプレス二分決定グラフ30が得られる。FIG. 9 is a diagram showing a process in which the binary tree graph 24 of FIG. 7 is simplified to a zero suppression binary decision diagram 30. The binary tree graph 24 in FIG. 9A is compressed as shown in FIG. 9B by the sharing process of the end node. Further, as shown in FIG. 8C, the intermediate nodes B, C, and D are deleted by the non-redundancy processing of FIG. This is because the 1 branch of these intermediate nodes directly points to the 0 end node. Further, when the non-redundancy processing by the zero suppression method is repeated, the intermediate node F in which one branch directly points to the end of 0 is deleted as shown in FIG. Finally, as shown in FIG.
The intermediate node G is deleted, and the simplification results in a zero-suppressed binary decision diagram 30.
【0028】このゼロサプレス二分決定グラフ30が、
従来の二分決定グラフ25(図5)と1対1に対応して
いることは、次のようにして分かる。すなわち、従来の
二分決定グラフにおいて、図2および図3の簡約化規則
を逆向きに適用すれば、もとの完全な二分木グラフに戻
すことができる。同様に、ゼロサプレス二分決定グラフ
に図2および図8の規則を逆向きに適用すれば、もとの
二分木グラフに戻せる。すなわち、ゼロサプレス二分決
定グラフ30は、従来の二分決定グラフと同様の情報を
備えていることが分かる。This zero suppression binary decision graph 30 is
The one-to-one correspondence with the conventional BDD 25 (FIG. 5) can be understood as follows. That is, in the conventional binary decision diagram, the original complete binary tree graph can be restored by applying the simplification rules of FIGS. 2 and 3 in the opposite direction. Similarly, if the rules of FIGS. 2 and 8 are applied to the zero suppression binary decision diagram in the opposite direction, the original binary tree graph can be restored. That is, it can be seen that the zero suppression binary decision diagram 30 has the same information as the conventional binary decision diagram.
【0029】本発明のゼロサプレス法による非冗長化処
理を、図6(b)に示す二分決定グラフに適用すると、
中間ノードx4が削除され、図6(b)に示す二分決定
グラフが得られる。すなわち、図10に示すように、要
素番号の2進数の桁数が異なっても、要素が同じなら
ば、グラフの形も同じとなる。この結果、全体集合の要
素数および2進数の桁数を、最初に固定する必要がな
く、処理中に変えることができる。したがって、柔軟な
処理が可能となる。When the non-redundancy processing by the zero suppression method of the present invention is applied to the binary decision diagram shown in FIG.
The intermediate node x4 is deleted, and the BDD shown in FIG. 6B is obtained. That is, as shown in FIG. 10, even if the binary numbers of the element numbers are different, if the elements are the same, the shape of the graph is the same. As a result, the number of elements and the number of binary digits of the whole set need not be fixed first, but can be changed during processing. Therefore, flexible processing becomes possible.
【0030】さらに、論理回路の簡単化処理における積
項の集合データのように、要素番号の各桁における0の
出現頻度が、1の出現頻度よりも非常に多い集合データ
を扱う場合には、各中間ノードの枝e1の行き先が、0
の終端ノードt0を指す可能性が高くなる。したがっ
て、本発明の新たな非冗長化処理が行われる機会が多
く、ノード数を従来よりもさらに削減できる。Further, when handling set data in which the appearance frequency of 0 in each digit of the element number is much larger than the appearance frequency of 1, such as set data of product terms in the simplification processing of a logic circuit, The destination of the branch e1 of each intermediate node is 0
Is more likely to point to the end node t0. Therefore, there are many opportunities for performing the new non-redundancy processing of the present invention, and the number of nodes can be further reduced as compared with the conventional case.
【0031】図11は、本発明のゼロサプレス非冗長化
処理の効果を示すために行った実験結果を示すグラフで
ある。100個からk個を選ぶという組合せを、ランダ
ムに100個生成し、この100個を要素とする組合せ
集合を、従来の二分決定グラフと、本発明のゼロサプレ
ス二分決定グラフとで表現し、そのノード数を比較し
た。図11は、kを1から99まで変化させたときの結
果であり、ノード数は、実験を100回試行して、平均
をとったものである。この実験結果が示すように、ゼロ
サプレス法の方がコンパクトな表現を与え、その差は、
kが小さいときに特に顕著である。kが大きくなると効
果は減少するが、kが半数を超えるときには、補集合を
使用することによってkを小さくできる。たとえば、1
00個から90個を選ぶ組合せは、残りの10個を選ぶ
ことと等価である。FIG. 11 is a graph showing the results of an experiment performed to show the effect of the zero suppression non-redundancy processing of the present invention. 100 combinations are randomly selected to select k from 100, and a set of combinations having the 100 elements is represented by a conventional BDD and a zero-suppressed BDD of the present invention. The numbers were compared. FIG. 11 shows the results when k is changed from 1 to 99. The number of nodes is obtained by averaging 100 experiments. As this experimental result shows, the zero suppression method gives a more compact expression, and the difference is
This is particularly noticeable when k is small. The effect decreases as k increases, but when k exceeds half, k can be reduced by using a complement. For example, 1
A combination of selecting 90 to 90 pieces is equivalent to selecting the remaining 10 pieces.
【0032】なお、図3に示す従来の非冗長化処理と、
図8に示す本発明によるゼロサプレス非冗長化処理とを
併用すると、図3と図8とを比較して分かるように、こ
れらの図(a)に示すような相異なるパターンから出発
して、(b)に示すような同一のパターンが得られてし
まう。すなわち、グラフの一意性が損なわれてしまう。
これを避けるために、本発明では、従来の非冗長化処理
は使用しない。The conventional non-redundancy processing shown in FIG.
When the zero suppression non-redundancy processing according to the present invention shown in FIG. 8 is used together, as can be seen by comparing FIGS. 3 and 8, starting from different patterns as shown in FIG. The same pattern as shown in b) is obtained. That is, the uniqueness of the graph is lost.
To avoid this, the present invention does not use the conventional non-redundancy processing.
【0033】上述した本発明によるゼロサプレス法は、
論理回路の設計装置、故障診断装置、集合データ処理装
置などに適用できる。以下、それらの実施例を説明す
る。The zero suppression method according to the present invention described above
The present invention can be applied to a logic circuit design device, a fault diagnosis device, a collective data processing device, and the like. Hereinafter, examples thereof will be described.
【0034】実施例1 図12は、本発明によるゼロサプレス法を論理回路の設
計装置に適用した実施例を示すブロック図である。Embodiment 1 FIG. 12 is a block diagram showing an embodiment in which the zero suppression method according to the present invention is applied to a logic circuit design apparatus.
【0035】図において、符号50は論理合成処理装
置、60は集合データ処理装置である。論理合成処理装
置50は、制御装置51と積和形記憶テーブル52とを
備えている。制御装置51は、入力装置53を通して入
力された論理式データ54を記憶し、この論理式データ
54に基づいて、集合データ処理装置60に命令を出
す。論理式データ54は、例えば、図16に示す論理式
データ54aで与えられる。積和形記憶テーブル52
は、積項および積和項が、後述するノードテーブルのど
のアドレスから始まるかを記録するテーブルである。In the figure, reference numeral 50 denotes a logic synthesis processing device, and 60 denotes an aggregate data processing device. The logic synthesis processing device 50 includes a control device 51 and a product-sum storage table 52. The control device 51 stores the logical expression data 54 input through the input device 53, and issues a command to the aggregate data processing device 60 based on the logical expression data 54. The logical expression data 54 is given, for example, as logical expression data 54a shown in FIG. Product-sum storage table 52
Is a table that records where the product term and the product-sum term start from a node table described later.
【0036】集合データ処理装置60は、論理合成処理
装置50からの命令を実行し、その計算結果を論理合成
処理装置50に返す。論理合成処理装置50は、計算結
果を積和形記憶テーブル52に記憶する。制御装置51
は、計算結果に基づいて、回路を構成する。この回路
は、出力装置55から回路図56として出力される。回
路図56は、例えば、図16に示す回路図56aで与え
られる。The aggregate data processing device 60 executes the instruction from the logic synthesis processing device 50 and returns the calculation result to the logic synthesis processing device 50. The logic synthesis processing device 50 stores the calculation result in the product-sum storage table 52. Control device 51
Configures a circuit based on the calculation results. This circuit is output from the output device 55 as a circuit diagram 56. The circuit diagram 56 is given, for example, by a circuit diagram 56a shown in FIG.
【0037】集合データ処理装置60は、制御装置61
と、順序づけテーブル62と、ノードテーブル63とを
備えている。順序づけテーブル62は、図13に示すよ
うに、入力変数の各文字とその否定とを表すリテラル
に、固定した順番を与えるものである。一方、ノードテ
ーブル63は、図14(a)−図14(c)に示すよう
に、各ノード(すなわち、中間ノードおよび終端ノー
ド)について、そのノードにかかわるリテラルと、その
ノードから出る2本の枝e0,e1が指すノードとを格
納するテーブルである。たとえば、図17(a)−図1
7(c)に示すゼロサプレス二分決定グラフに対応する
ノードテーブルは、図14(a)−図14(c)に示す
ものである。The aggregate data processing device 60 includes a control device 61
, An ordering table 62, and a node table 63. As shown in FIG. 13, the ordering table 62 gives a fixed order to the literals representing each character of the input variable and its negation. On the other hand, as shown in FIGS. 14A to 14C, the node table 63 includes, for each node (ie, an intermediate node and a terminal node), a literal related to the node and two nodes exiting from the node. It is a table for storing nodes indicated by branches e0 and e1. For example, FIG.
The node table corresponding to the zero-suppression binary decision diagram shown in FIG. 7 (c) is that shown in FIGS. 14 (a) to 14 (c).
【0038】次に、図12から図19を参照して、本実
施例による論理回路の設計処理を説明する。Next, with reference to FIGS. 12 to 19, a description will be given of the logic circuit design processing according to the present embodiment.
【0039】まず、回路の仕様は、図16の論理式54
aのように、論理和、論理積等の論理演算を含んだ論理
式の組合せとして記述され、入力ファイルとして与えら
れる。この論理式を、2段積和形論理式、すなわち、複
数の積項の総和の形に展開する。First, the specifications of the circuit are expressed by a logical expression 54 in FIG.
As shown in a, it is described as a combination of logical expressions including logical operations such as logical sum and logical product, and is given as an input file. This logical expression is developed into a two-stage product-sum logical expression, that is, a form of a sum of a plurality of product terms.
【0040】2段積和形は、積項の集合データとして扱
うことができる。論理式は、次のようにして、2段積和
形に変換される。まず、論理式中に現れる各要素を、1
個の積項からなる積項の集合データとする。次に、それ
ら複数の積項どうしの演算を、与えられた論理式の構造
にしたがって繰り返すことによって、2段積和形データ
を得る。具体的には、次のようにして実行される。The two-stage sum of products form can be treated as set data of product terms. The logical expression is converted into a two-stage product-sum form as follows. First, each element appearing in the logical expression is represented by 1
It is a set of product terms consisting of product terms. Next, two-stage sum-of-products data is obtained by repeating the operation of the plurality of product terms according to the structure of the given logical expression. Specifically, it is executed as follows.
【0041】図15のステップS1において、論理合成
処理装置50の制御装置51は、入力ファイルから論理
式データ54を読み込む。このデータは、制御装置51
の内部記憶装置に一旦記憶される。例えば、図16に示
す論理式データ54aが読み込まれ、内部記憶装置に格
納される。In step S1 of FIG. 15, the control device 51 of the logic synthesis processing device 50 reads the logic expression data 54 from the input file. This data is stored in the controller 51
Is temporarily stored in the internal storage device. For example, the logical expression data 54a shown in FIG. 16 is read and stored in the internal storage device.
【0042】ステップS2において、制御装置51は、
論理式の各要素を、1個の積項からなる積和形71−7
4(図16)で表現する。次いで、制御装置51は、積
和形71−74を構成するリテラルと、リテラル間の演
算方法(この場合は積)を、集合データ処理装置60に
供給し、図17(a)−図17(b)に示すようなゼロ
サプレス二分決定グラフを計算するように命令する。集
合データ処理装置60は、先に説明した本発明のゼロサ
プレス法によって、ゼロサプレス二分決定グラフを生成
する。その結果、ノードテーブル63の内容は、図14
(a)および図14(b)のようになり、積項71およ
び72と、それらの開始アドレスN0およびN2が、集
合データ処理装置60から論理合成処理装置50に、計
算結果として返される。論理合成処理装置50は、これ
らの計算結果を積和形記憶テーブル52に格納する。In step S2, the control device 51
Each element of the logical expression is sum-of-products form 71-7 consisting of one product term
4 (FIG. 16). Next, the control device 51 supplies the set data processing device 60 with the literals constituting the sum-of-products form 71-74 and the method of operation between the literals (in this case, the product), and outputs them to the aggregate data processing device 60 as shown in FIGS. Command to calculate a zero-suppressed binary decision diagram as shown in b). The aggregate data processing device 60 generates the zero suppression binary decision diagram by the zero suppression method of the present invention described above. As a result, the contents of the node table 63 are as shown in FIG.
14A and FIG. 14B, the product terms 71 and 72 and their start addresses N0 and N2 are returned from the set data processing device 60 to the logic synthesis processing device 50 as calculation results. The logic synthesis processing device 50 stores these calculation results in the product-sum storage table 52.
【0043】積和形71および72を従来の二分決定グ
ラフで表現すると、図20(a)−図20(b)のよう
になる。すなわち、5個の入力変数に関わる10個のリ
テラルが、積項に含まれるか否かを、2進数の各桁の
0、1に対応づけることによって、各積項を2進数で表
し、積項の集合データを従来の二分決定グラフで表すこ
とができる。この詳細は、Tsutomu Sasao 編 "Logic Sy
nthesis and Optimization" Kluwer Academic Publishe
rs, 1993 の第2章36−38ページに説明されてい
る。When the sum-of-products forms 71 and 72 are represented by a conventional BDD, they are as shown in FIGS. 20 (a) and 20 (b). That is, each product term is represented by a binary number by associating whether or not ten literals relating to five input variables are included in the product term with each digit 0 and 1 of the binary number. A set of terms can be represented by a conventional BDD. For details, see "Logic Sy" edited by Tsutomu Sasao.
nthesis and Optimization "Kluwer Academic Publishe
rs, 1993, Chapter 2, pages 36-38.
【0044】同じ積和形71および72を本発明のゼロ
サプレス法で表現すると、図17(a)および図17
(b)に示すような、コンパクトな表現となる。これ
は、上述した本発明のゼロサプレス非冗長化処理による
効果であって、その処理は、集合データ処理装置60に
よって実行される。If the same sum-of-products 71 and 72 are expressed by the zero suppression method of the present invention, FIGS.
The expression is compact as shown in FIG. This is an effect of the above-described zero suppression non-redundancy processing of the present invention, and the processing is executed by the aggregate data processing device 60.
【0045】図15のステップS3において、制御装置
51は、論理式の構造にしたがって、積項71と72の
和75、積項73と74の和76、および、これらの和
75と76との積77を計算せよとの命令を集合データ
処理装置60に送る。In step S3 in FIG. 15, the control device 51 determines the sum 75 of the product terms 71 and 72, the sum 76 of the product terms 73 and 74, and the sum of the product terms 75 and 76 according to the structure of the logical expression. An instruction to calculate the product 77 is sent to the aggregate data processing device 60.
【0046】これに応じて、集合データ処理装置60
は、ゼロサプレス二分決定グラフで表された積項集合ど
うしの和、および積の演算を行う。その具体的な方法
は、たとえば、上述したBryantの論文681−687ペ
ージに記載されている。この演算方法は、上位変数から
順に、0の場合と1の場合とに場合分けすることによっ
て、与えられた演算を場合分けされたものどうしの演算
に分解する。この演算を各変数について繰り返しなが
ら、演算結果のグラフを生成していくものである。1回
の演算ごとに、共有化およびゼロサプレス非冗長化とい
う簡単化処理が適用される。In response, the aggregate data processing device 60
Calculates the sum of the product term sets represented by the zero-suppression binary decision diagram and the product. The specific method is described, for example, in the above-mentioned Bryant's dissertation, pp. 681-687. In this operation method, a given operation is decomposed into operations of the divided cases by dividing the case into 0 and 1 in order from the upper variable. This operation is repeated for each variable to generate a graph of the operation result. Simplified processing of sharing and zero suppression non-redundancy is applied for each operation.
【0047】図17(c)および図18(a)は、本発
明のゼロサプレス法によって得られたゼロサプレス二分
決定グラフを示している。また、図17(c)のグラフ
に対応するノードテーブル63が図14(c)に示され
ている。このノードテーブルの内容に基づいて、積和7
5の開始アドレスN3が、集合データ処理装置60から
論理合成処理装置50へ、計算結果として供給される。
積和77についても、同じようにしてノードテーブル6
3が作成され、その計算結果が論理合成処理装置50に
送られる。図20(c)および図21(a)は、従来の
非冗長化を用いて得られた二分決定グラフを示してい
る。図18(a)が本実施例による、回路の論理を表す
最終的な積和形表現であり、図21(a)が従来技術に
よる、回路の論理を表す最終的な積和形表現である。FIG. 17 (c) and FIG. 18 (a) show a zero-suppression binary decision diagram obtained by the zero-suppression method of the present invention. FIG. 14C shows a node table 63 corresponding to the graph of FIG. Based on the contents of this node table,
The start address N3 of No. 5 is supplied from the collective data processing device 60 to the logic synthesis processing device 50 as a calculation result.
Similarly, for the sum of products 77, the node table 6
3 is generated, and the calculation result is sent to the logic synthesis processing device 50. FIGS. 20 (c) and 21 (a) show a BDD obtained using the conventional de-redundancy. FIG. 18A shows a final product-sum expression representing the logic of the circuit according to the present embodiment, and FIG. 21A shows a final product-sum expression representing the logic of the circuit according to the prior art. .
【0048】図15のステップS4において、制御装置
51は、積和形77の簡単化を、集合データ処理装置6
0に命令する。集合データ処理装置60の制御装置61
は、制御装置51の指示する手順にしたがって、積項ど
うしの包含関係を調べて簡単化を実行し、図18(b)
に示すような、簡単化されたゼロサプレス二分決定グラ
フ80を作成する。この簡単化演算は、周知の技術であ
り、たとえば、R.K. Brayton 他著、"Logic Minimizat
ion Algorithms for VLSI Synthesis", KluwerAcademic
Publishers, 1990年に記載されている。従来の簡
単化によれば、図21(b)の二分決定グラフが得られ
るが、これは、本実施例のゼロサプレス二分決定グラフ
80と比較して、相当に複雑であることが分かる。In step S4 of FIG. 15, the control unit 51 determines that the product-sum form 77 is simplified by the set data processing unit 6
Command 0. Control device 61 of aggregate data processing device 60
According to the procedure instructed by the control device 51, the simplification is performed by examining the inclusion relation between the product terms, and FIG.
A simplified zero suppression binary decision diagram 80 is created as shown in FIG. This simplification operation is a well-known technique. For example, RK Brayton et al., "Logic Minimizat
ion Algorithms for VLSI Synthesis ", KluwerAcademic
Publishers, 1990. According to the conventional simplification, the binary decision diagram of FIG. 21B is obtained. However, it is understood that this is considerably complicated as compared with the zero suppression binary decision diagram 80 of the present embodiment.
【0049】ステップS5において、制御装置51は、
簡単化されたゼロサプレス二分決定グラフ80に基づい
て回路図を作成する。具体的には、制御装置51は、グ
ラフ80のパスをたどるように、集合データ処理装置6
0に命令する。集合データ処理装置60の制御装置61
は、この命令に応じて、ノードテーブル63をたどり、
上位のノードから1の終端ノードt1に達するパスを見
いだす。この場合は、2本のパスが見いだされる。ここ
で、制御装置51は、パスの途中にあるリテラルをAN
Dゲート81および82でまとめ、2つのANDゲート
の出力をORゲート83でまとめる。また、否定を表す
リテラルには、インバータ84および85を配する。最
後に、入力が一つのANDゲート81を取り除く。こう
して、最終的に、図16の回路図56aが得られる。In step S5, the control device 51
A circuit diagram is created based on the simplified zero suppression binary decision diagram 80. Specifically, the control device 51 causes the aggregate data processing device 6 to follow the path of the graph 80.
Command 0. Control device 61 of aggregate data processing device 60
Traverses the node table 63 in response to this instruction,
A path from the upper node to one terminal node t1 is found. In this case, two passes are found. Here, the control device 51 converts the literal in the middle of the path to AN.
The outputs of the two AND gates are combined by the OR gate 83, and are combined by the D gates 81 and 82. Inverters 84 and 85 are provided for the literals indicating negation. Finally, the input removes one AND gate 81. Thus, the circuit diagram 56a of FIG. 16 is finally obtained.
【0050】最後に、ステップS6において、制御装置
51は、出力装置55に回路図データ56を出力させ
る。Finally, in step S6, the control device 51 causes the output device 55 to output the circuit diagram data 56.
【0051】なお、本実施例では、論理素子としてAN
D素子およびOR素子を用いたが、局所的な等価な置換
によって、これらの素子をNAND素子およびNOR素
子に置き換えることができる。In this embodiment, AN is used as a logic element.
Although the D element and the OR element are used, these elements can be replaced with a NAND element and a NOR element by local equivalent replacement.
【0052】こうして、本実施例は、ゼロサプレス非冗
長化処理を採用することによって、大幅な記憶容量の削
減と、計算時間の短縮とを実現できる。このことは、本
実施例にかかわる図17(a)−図18(b)と、従来
技術にかかわる図20(a)−図21(b)とを比較す
ることによって、容易に理解される。As described above, in this embodiment, by employing the zero suppression non-redundancy processing, it is possible to realize a significant reduction in storage capacity and a reduction in calculation time. This can be easily understood by comparing FIGS. 17 (a) and 18 (b) according to the present embodiment with FIGS. 20 (a) and 21 (b) according to the related art.
【0053】実施例2 実施例2は、本発明を故障診断装置に適用した例であ
る。この実施例を説明する前に、故障の伝搬という概念
について、図22を参照して説明する。Embodiment 2 Embodiment 2 is an example in which the present invention is applied to a failure diagnosis device. Before describing this embodiment, the concept of fault propagation will be described with reference to FIG.
【0054】図22において、論理回路90に、あるテ
ストベクトルを入力した場合、ある出力端子92に正常
値と異なる出力が得られたとすると、この論理回路90
に故障があることが知られる。これをさらに進めると、
あるテストベクトルを入力した場合に、どの点の故障が
どの出力信号線に伝搬するかという問題が提起される。
例えば、あるテストベクトルを入力した場合に、0また
は1に固定された故障91に起因して、ある出力端子9
2に異常出力が得られたとすれば、このテストベクトル
に関して、故障91は出力信号線92まで伝搬したとい
う。In FIG. 22, when a certain test vector is input to a logic circuit 90, and an output different from a normal value is obtained at a certain output terminal 92, this logic circuit 90
Is known to have a fault. Going further,
When a certain test vector is input, a problem of which fault at which point propagates to which output signal line is raised.
For example, when a certain test vector is input, a certain output terminal 9 is generated due to a fault 91 fixed to 0 or 1.
If an abnormal output is obtained in No. 2, it is said that the fault 91 has propagated to the output signal line 92 with respect to this test vector.
【0055】たとえば、図23のANDゲート95に、
テストベクトル(0、1)を入力した場合を考察する。
ANDゲート95の第1入力端が0に固定された故障を
a0、1に固定された故障をa1で表わす。同様に、A
NDゲート95の第2入力端が0に固定された故障をb
0、1に固定された故障をb1で表わす。この場合、正
常出力は0、異常出力は1である。したがって、第1入
力端が1に固定され、第2入力端が0に固定されていな
い場合に、異常出力が得られる。したがって、故障の集
合96が得られる。For example, the AND gate 95 in FIG.
Consider a case where a test vector (0, 1) is input.
A fault whose first input terminal of the AND gate 95 is fixed to 0 is denoted by a0, and a fault whose first input terminal is fixed to 1 is denoted by a1. Similarly, A
A failure in which the second input terminal of the ND gate 95 is fixed to 0 is represented by b
A fault fixed to 0 or 1 is represented by b1. In this case, the normal output is 0 and the abnormal output is 1. Therefore, when the first input terminal is fixed at 1 and the second input terminal is not fixed at 0, an abnormal output is obtained. Thus, a set 96 of faults is obtained.
【0056】このような故障の集合を、論理回路90の
入力端子から出力端子に向かって各論理素子について計
算することによって、論理回路90の各出力信号線と、
各テストベクトルとについて、故障の集合が得られる。
この故障の集合を二分決定グラフで表すことは公知であ
り、たとえば、N. Takahashi, et al, "Fault Simulati
on for Multiple Faults Using Shared BDD Representa
tion of Fault Sets",Processing of IEEE/ACM ICCAD'9
1, pp. 550 - 553, 1991, に記載されている。本実施
例では、従来の二分決定グラフに代えて、前述した本発
明のゼロサプレス二分決定グラフを用いて、故障の集合
を得るものである。By calculating such a set of faults for each logic element from the input terminal to the output terminal of the logic circuit 90, each output signal line of the logic circuit 90 is
A set of faults is obtained for each test vector.
It is known to represent this set of faults in a BDD, for example, see N. Takahashi, et al, "Fault Simulati
on for Multiple Faults Using Shared BDD Representa
tion of Fault Sets ", Processing of IEEE / ACM ICCAD'9
1, pp. 550-553, 1991. In this embodiment, a set of faults is obtained by using the above-described zero-suppression binary decision diagram of the present invention instead of the conventional binary decision diagram.
【0057】本実施例の故障診断装置は、図12に示し
た論理回路の設計装置と同様の構成となる。本実施例で
は、仮定される故障の数と等しい桁数の2進数を用い、
その各桁の1、0を各故障の有無に対応づけることによ
って、複数の故障の組合せを表現する。この場合、順序
テーブル62は、この2進数の0および1に、ある固定
した順番を与える。また、図12の論理式データ54の
代わりに、論理回路90の回路図データおよび入力信号
データが与えられ、回路図データ56の代わりに、簡単
化された故障の集合データが与えられる。The fault diagnosis device of this embodiment has the same configuration as the logic circuit design device shown in FIG. In this embodiment, a binary number having the same number of digits as the number of assumed failures is used.
A combination of a plurality of faults is expressed by associating each digit 1, 0 with the presence or absence of each fault. In this case, the order table 62 gives the binary numbers 0 and 1 a fixed order. Further, circuit diagram data and input signal data of the logic circuit 90 are provided instead of the logic expression data 54 in FIG. 12, and simplified failure set data is provided instead of the circuit diagram data 56.
【0058】図24は、故障診断装置の動作を示すフロ
ーチャートである。FIG. 24 is a flowchart showing the operation of the failure diagnosis device.
【0059】ステップS11において、制御装置51
は、回路図データおよび入力信号データを読み込む。こ
の回路図データは、論理回路90に相当し、入力信号デ
ータは、上述したテストベクトルに相当する。At step S11, the controller 51
Reads circuit diagram data and input signal data. This circuit diagram data corresponds to the logic circuit 90, and the input signal data corresponds to the test vector described above.
【0060】ステップS12において、制御装置51
は、入力端子から各出力端子に向かって、各素子ごと
に、正常な信号の流れを計算するように、制御装置61
に命令する。制御装置61は、その結果を制御装置51
に返す。この手順を繰り返すことによって、論理回路9
0の、各入力信号データに対する正常出力が得られる。In step S12, the controller 51
The control unit 61 calculates a normal signal flow for each element from the input terminal to each output terminal.
To order. The control device 61 outputs the result to the control device 51.
To return. By repeating this procedure, the logic circuit 9
A normal output of 0 for each input signal data is obtained.
【0061】ステップS13において、制御装置51
は、入力端子から各出力端子に向かって、各素子ごと
に、故障の伝搬を計算するように、制御装置61に命令
する。制御装置61は、その結果を制御装置51に返
す。この手順を繰り返すことによって、論理回路90
の、各入力信号データに対する故障の伝搬が計算され
る。言い替えれば、故障の集合データが得られる。この
ステップで、本発明によるゼロサプレス非冗長化処理が
用いられる。At step S13, the controller 51
Instructs the controller 61 to calculate the propagation of the fault for each element from the input terminal to each output terminal. The control device 61 returns the result to the control device 51. By repeating this procedure, the logic circuit 90
Is calculated for each input signal data. In other words, failure aggregate data is obtained. In this step, the zero suppression non-redundancy processing according to the present invention is used.
【0062】ステップS14において、制御装置51
は、出力装置55から故障の集合データを出力させる。In step S14, the controller 51
Causes the output device 55 to output aggregated data of failures.
【0063】制御装置51は、この故障の集合を用いて
故障診断を行うことができる。たとえば、複数個のテス
トベクトルに対して故障が検出された場合に、本手法で
求めた故障の積を計算することにより、故障発生箇所を
限定することができる。The control device 51 can make a fault diagnosis using the set of faults. For example, when a fault is detected for a plurality of test vectors, the location of the fault occurrence can be limited by calculating the product of the faults obtained by the present method.
【0064】本実施例によるゼロサプレス二分決定グラ
フは、従来の二分決定グラフよりも大幅に簡単化され
る。これは、論理回路で仮定される故障のうち、同時に
発生する故障の数は比較的少ないため、故障の集合を表
現する2進数の桁のうち、0をとるものが1をとるもの
よりはるかに多く、本発明のゼロサプレスが有効に働く
からである。この結果、従来の二分決定グラフによるよ
りも、記憶容量が大幅に削減され、処理時間も短縮され
る。The zero-suppression binary decision diagram according to the present embodiment is greatly simplified than the conventional binary decision diagram. This is because, among the faults assumed in the logic circuit, the number of simultaneously occurring faults is relatively small, so that a binary digit representing a set of faults that takes 0 is far more than a binary digit that takes 1 In many cases, the zero suppression of the present invention works effectively. As a result, the storage capacity is greatly reduced and the processing time is reduced as compared with the conventional binary decision diagram.
【0065】[0065]
【発明の効果】以上説明したように、本発明によれば、
全体集合の要素数に比べて少ない要素数の集合(疎な集
合)を、従来よりも少ないノード数のグラフで表現する
ことができる。その結果、従来よりも大規模な論理回路
の設計自動化が可能となる。また、処理データ量の減
少、処理速度の向上、設計時間の短縮を図ることができ
る。As described above, according to the present invention,
A set with a smaller number of elements (sparse set) than the number of elements in the whole set can be represented by a graph with a smaller number of nodes than in the past. As a result, it becomes possible to automate the design of a logic circuit larger than before. Further, it is possible to reduce the amount of processing data, improve the processing speed, and shorten the design time.
【図1】論理関数を展開した二分木グラフの一例を示す
図である。FIG. 1 is a diagram illustrating an example of a binary tree graph obtained by expanding a logical function.
【図2】二分決定グラフの生成における従来の共有化処
理を示す図である。FIG. 2 is a diagram showing a conventional sharing process in generating a BDD.
【図3】二分決定グラフの生成における従来の非冗長化
処理を示す図である。FIG. 3 is a diagram showing a conventional non-redundancy process in generating a BDD.
【図4】従来の共有化処理および非冗長化処理によっ
て、図1の二分木グラフを簡単化して生成した、二分決
定グラフを示す図である。FIG. 4 is a diagram showing a binary decision diagram generated by simplifying the binary tree graph of FIG. 1 by a conventional sharing process and a non-redundancy process.
【図5】従来の二分決定グラフを用いて、集合データを
表現した一例を示すブロック図である。FIG. 5 is a block diagram showing an example of expressing set data using a conventional BDD.
【図6】二分決定グラフを用いて同一の集合データを表
現した場合に、集合データを表わす2進数の桁数によっ
て、グラフの形が異なる例を示す図である。FIG. 6 is a diagram showing an example in which, when the same set of data is expressed using a BDD, the shape of the graph differs depending on the number of binary digits representing the set of data.
【図7】本発明によるゼロサプレス二分決定グラフの生
成原理を示すブロック図である。FIG. 7 is a block diagram showing a principle of generating a zero suppression binary decision diagram according to the present invention.
【図8】本発明によるゼロサプレス非冗長化処理を示す
図である。FIG. 8 is a diagram showing zero-suppress non-redundancy processing according to the present invention.
【図9】本発明によるゼロサプレス非冗長化処理を用い
て、図7の二分木グラフを簡単化する場合のプロセスを
示す図である。FIG. 9 is a diagram showing a process for simplifying the binary tree graph of FIG. 7 using zero-suppress non-redundancy processing according to the present invention.
【図10】本発明によるゼロサプレス二分決定グラフで
は、集合データを表わす2進数の桁数によって、グラフ
の形が変化しないことを示す図である。FIG. 10 is a diagram showing that the shape of the zero-suppressed binary decision diagram according to the present invention does not change depending on the number of binary digits representing the set data.
【図11】本発明によるゼロサプレス二分決定グラフ
と、従来の二分決定グラフにおけるノード数を比較した
グラフである。FIG. 11 is a graph comparing the number of nodes in a zero-suppression binary decision diagram according to the present invention with a conventional binary decision diagram.
【図12】本発明による論理回路の設計装置の一実施例
の構成を示すブロック図である。FIG. 12 is a block diagram showing a configuration of an embodiment of a logic circuit designing apparatus according to the present invention.
【図13】上記実施例における順序づけテーブルの一例
を示す図である。FIG. 13 is a diagram showing an example of an ordering table in the embodiment.
【図14】上記実施例におけるノードテーブルの変化を
示す図である。FIG. 14 is a diagram showing a change in a node table in the embodiment.
【図15】上記実施例の動作を説明するためのフローチ
ャートである。FIG. 15 is a flowchart for explaining the operation of the embodiment.
【図16】上記実施例における論理回路の簡単化の概要
を示すブロック図である。FIG. 16 is a block diagram showing an outline of simplification of a logic circuit in the embodiment.
【図17】上記実施例において生成される積和形のゼロ
サプレス二分決定グラフの例を示す図である。FIG. 17 is a diagram showing an example of a sum-of-products zero suppression binary decision diagram generated in the embodiment.
【図18】上記実施例において生成される積和形のゼロ
サプレス二分決定グラフの例を示す図である。FIG. 18 is a diagram showing an example of a product-sum zero-suppression binary decision diagram generated in the embodiment.
【図19】上記実施例において、最終的に得られた積和
形表現を回路図に変換する方法を示す図である。FIG. 19 is a diagram illustrating a method of converting a finally obtained product-sum representation into a circuit diagram in the embodiment.
【図20】図17に示す積和形を、従来の二分決定グラ
フで表現した図である。FIG. 20 is a diagram expressing the product-sum form shown in FIG. 17 by a conventional binary decision diagram.
【図21】図18に示す積和形を、従来の二分決定グラ
フで表現した図である。FIG. 21 is a diagram expressing the product-sum form shown in FIG. 18 by a conventional BDD.
【図22】本発明による故障診断装置の実施例におけ
る、故障の伝搬を説明するための図である。FIG. 22 is a diagram for explaining propagation of a fault in an embodiment of the fault diagnosis device according to the present invention.
【図23】ANDゲートにおける故障の集合の一例を示
す図である。FIG. 23 is a diagram illustrating an example of a set of faults in an AND gate;
【図24】図22の実施例の動作を説明するためのフロ
ーチャートである。FIG. 24 is a flowchart for explaining the operation of the embodiment in FIG. 22;
50 論理合成処理装置 51 制御装置 52 積和形記憶テーブル 53 入力装置 54,54a 論理式データ 55 出力装置 56,56a 回路図 60 集合データ処理装置 61 制御装置 62 順序テーブル 63 ノードテーブル Reference Signs List 50 logic synthesis processing device 51 control device 52 sum-of-products storage table 53 input device 54, 54a logical expression data 55 output device 56, 56a circuit diagram 60 aggregate data processing device 61 control device 62 order table 63 node table
Claims (5)
数xのそれぞれに、ある固定した順番を与える順序テー
ブルと、 複数個の中間ノードと0および1の論理値を表す2つの
終端ノードt0,t1との組合せからなる二分木状のグ
ラフを格納するためのノードテーブルで、前記各中間ノ
ードに関わる一つの入力変数xと、該入力変数xへ0お
よび1を代入したときの行き先を表す2つの枝e0,e
1とを記憶するエリアを備えたノードテーブルと、 前記順序テーブルに記録されている第1の入力変数x1
に、0および1を代入して2つの部分論理関数に分解す
る展開処理を行い、該各部分論理関数について、前記順
序テーブルの第2の入力変数x2に0および1を代入し
て、各々2つの部分論理関数に分解する展開処理を行
い、以下同様の展開処理を前記順序テーブルの示す順序
にしたがって、すべての入力変数xについて繰り返し、
該一連の展開処理によって得られた展開を前記中間ノー
ドおよび前記終端ノードt0,t1で表現して前記二分
木状のグラフを生成し、該二分木状のグラフを構成する
中間ノードおよび終端ノードt0,t1を前記ノードテ
ーブルに格納する手段と、 前記展開処理中に、新たな中間ノードaを生成して前記
ノードテーブルに格納する前に、該中間ノードaと同一
の入力変数xおよび枝e0,e1を有する等価な中間ノ
ードbが、前記ノードテーブル中にすでに存在している
か否かを調べ、すでに存在している場合は、新たな中間
ノードaは生成せずに、中間ノードaを指すべき枝が前
記中間ノードbを指すようにし、前記中間ノードの共有
化を行う手段と、 前記展開処理中に、新たな中間ノードaの一方の枝e1
が終端ノードt0を直接指す場合は、該中間ノードaは
生成せずに、前記中間ノードaを指すべき枝がもう一方
の枝e0の行き先を直接指すようにし、冗長な中間ノー
ドの生成を防ぐ非冗長化を行う手段とを具備することを
特徴とする論理関数データ処理装置。1. An order table for giving a fixed order to each of a plurality of input variables x constituting logic function data, a plurality of intermediate nodes and two terminal nodes t0, A node table for storing a binary tree-like graph composed of a combination of t1 and one input variable x relating to each of the intermediate nodes, and a destination 2 when 0 and 1 are assigned to the input variable x. Branches e0, e
And a first input variable x1 recorded in the order table.
Is decomposed into two partial logical functions by substituting 0 and 1 for each of the partial logical functions. For each of the partial logical functions, 0 and 1 are substituted for the second input variable x2 of the order table, and 2 Performing expansion processing for decomposing into two partial logic functions, and thereafter repeating the same expansion processing for all input variables x according to the order shown in the order table,
The expansion obtained by the series of expansion processing is expressed by the intermediate node and the terminal nodes t0 and t1 to generate the binary tree-like graph, and the intermediate node and the terminal node t0 constituting the binary tree-like graph , T1 in the node table, and before the new intermediate node a is generated and stored in the node table during the expansion processing, the same input variable x and branch e0, It is checked whether or not an equivalent intermediate node b having e1 already exists in the node table. If an existing intermediate node b already exists, a new intermediate node a should not be generated and the intermediate node a should be pointed to. Means for causing a branch to point to the intermediate node b and sharing the intermediate node; and one branch e1 of a new intermediate node a during the expansion processing.
Directly points to the end node t0, the intermediate node a is not generated, and the branch pointing to the intermediate node a is directly pointed to the destination of the other branch e0, thereby preventing generation of a redundant intermediate node. A logic function data processing device, comprising: means for performing non-redundancy.
に、複数個の要素からなる集合データ中の任意の要素か
らなる部分集合データを前記論理関数データに対応させ
るための番号テーブルを備え、該番号テーブルは、前記
集合データの各要素と該各要素に付与された0以上の相
異なる整数番号とを含み、該整数番号を2進数で表した
ときの各桁を前記各入力変数xに対応させ、前記論理関
数データは、前記各入力変数xが構成する2進数によっ
て表現された前記整数番号に対応する要素が、前記部分
集合データに含まれるときに値1をとり、そうでないと
きに値0をとることを特徴とする請求項1に記載の論理
関数データ処理装置。2. The logical function data processing device further comprises a number table for associating subset data composed of arbitrary elements in the aggregate data composed of a plurality of elements with the logical function data. The table includes each element of the set data and different integer numbers of 0 or more assigned to each element, and associates each digit when the integer number is represented by a binary number with each of the input variables x. , The logic function data takes the value 1 when the element corresponding to the integer number represented by the binary number which each input variable x constitutes is included in the subset data, and takes the value 0 otherwise. 2. The logic function data processing device according to claim 1, wherein:
現した集合データの、前記積項を構成するリテラルの総
数に等しい桁数の2進数を用いて、該2進数の各桁の0
および1を前記リテラルの有無に対応づけることによっ
て、前記積項を相異なる2進数で表し、前記オン集合を
論理関数として表現し、該論理関数に基づいて論理回路
を設計する論理回路の設計装置において、前記積項と前
記2進数との対応を示す番号テーブルと、 前記各リテラルに、ある固定した順番を与える順序テー
ブルと、 複数個の中間ノードと0および1の論理値を表す2つの
終端ノードt0,t1との組合せからなる二分木状のグ
ラフを格納するためのノードテーブルで、前記各中間ノ
ードに関わる一つのリテラルと、該リテラルへ1および
0を代入したときの行き先を表す2つの枝e0,e1と
を記憶するエリアを備えたノードテーブルと、 前記順序テーブルに記録されている第1のリテラルに、
0および1を代入して2つの部分論理関数に分解する展
開処理を行い、該各部分論理関数について、前記順序テ
ーブルの第2のリテラルに0および1を代入して、各々
2つの部分論理関数に分解する展開処理を行い、以下同
様の展開処理を前記順序テーブルの示す順序にしたがっ
て、すべてのリテラルについて繰り返し、該一連の展開
処理によって得られた展開を前記中間ノードおよび前記
終端ノードt0,t1で表現して前記二分木状のグラフ
を生成し、該二分木状のグラフを構成する中間ノードお
よび終端ノードt0,t1を前記ノードテーブルに格納
する手段と、 前記展開処理中に、新たな中間ノードaを生成して前記
ノードテーブルに格納する前に、該中間ノードaと同一
のリテラルおよび枝e0,e1を有する等価な中間ノー
ドbが、前記ノードテーブル中にすでに存在しているか
否かを調べ、すでに存在している場合は、新たな中間ノ
ードaは生成せずに、中間ノードaを指すべき枝が前記
中間ノードbを指すようにし、前記中間ノードの共有化
を行う手段と、 前記展開処理中に、新たな中間ノードaの一方の枝e1
が終端ノードt0を直接指す場合は、該中間ノードaは
生成せずに、前記中間ノードaを指すべき枝がもう一方
の枝e0の行き先を直接指すようにし、冗長な中間ノー
ドの生成を防ぐ非冗長化を行う手段と、 前記共有化および冗長化によって得られた積項の含むリ
テラルにしたがって、前記論理回路の入力端子とAND
素子の入力端子とを回路図上で接続する手段と、 前記AND素子の各出力を1つのOR素子に回路図上で
接続する手段とを具備することを特徴とする論理関数デ
ータ処理装置。3. Each set of binary digits of a set of data representing an ON set of a logic circuit in the form of a sum of product terms, using a binary number of digits equal to the total number of literals constituting the product terms Of 0
And 1 are associated with the presence or absence of the literal, the product term is represented by different binary numbers, the ON set is represented as a logical function, and a logic circuit designing apparatus that designs a logical circuit based on the logical function , A number table indicating a correspondence between the product term and the binary number, an order table for giving a fixed order to each of the literals, a plurality of intermediate nodes and two terminations representing logical values of 0 and 1 In a node table for storing a binary tree-like graph composed of a combination of nodes t0 and t1, two literals representing one literal relating to each of the intermediate nodes and a destination when 1 and 0 are substituted into the literals A node table having an area for storing the branches e0 and e1, and a first literal recorded in the order table,
An expansion process of substituting 0 and 1 to decompose into two partial logical functions is performed, and for each of the partial logical functions, 0 and 1 are substituted into the second literal of the order table to obtain two partial logical functions. The same expansion processing is repeated for all the literals in the order shown in the order table, and the expansion obtained by the series of expansion processing is performed on the intermediate node and the end nodes t0 and t1. Means for generating the above-mentioned binary tree-like graph, and storing intermediate nodes and terminal nodes t0 and t1 constituting the binary-tree-like graph in the node table; Before generating the node a and storing it in the node table, an equivalent intermediate node b having the same literals and branches e0 and e1 as the intermediate node a Checks whether the node already exists in the node table. If the node already exists, a new intermediate node a is not generated, and a branch pointing to the intermediate node a points to the intermediate node b. Means for sharing the intermediate node, and one branch e1 of a new intermediate node a during the expansion processing.
Directly points to the end node t0, the intermediate node a is not generated, and the branch pointing to the intermediate node a is directly pointed to the destination of the other branch e0, thereby preventing generation of a redundant intermediate node. Means for performing non-redundancy; and an input terminal of the logic circuit and an AND according to a literal including a product term obtained by the sharing and redundancy.
A logic function data processing device comprising: means for connecting an input terminal of an element on a circuit diagram; and means for connecting each output of the AND element to one OR element on the circuit diagram.
に、前記AND素子およびOR素子を組み合わせた回路
を生成した後、該回路に等価的な置換を施すことによっ
て、NAND素子およびNOR素子を用いた回路を生成
すること特徴とする請求項3に記載の論理関数データ処
理装置。4. The logic function data processing device further uses a NAND element and a NOR element by generating a circuit in which the AND element and the OR element are combined and performing equivalent replacement on the circuit. The logic function data processing device according to claim 3, wherein the logic function data processing device generates a circuit.
に固定される故障が複数箇所で発生すると仮定される場
合に、前記各信号線について、該信号線上の信号値を正
常値と異ならせる故障の集合を、前記論理回路の入力端
子から出力端子に向かって、回路の論理にしたがって集
合演算を用いて順次計算し、前記論理回路の出力の信号
値に影響を与える故障の集合を求める故障診断装置にお
いて、 前記故障の集合データを、仮定される故障の総数と等し
い桁数の2進数を用いて、該2進数の各桁の1および0
を各故障の有無に対応づけ、前記故障の集合データを論
理関数で表現する手段と、 前記各故障に、ある固定した順番を与える順序テーブル
と、 複数個の中間ノードと0および1の論理値を表す2つの
終端ノードt0,t1との組合せからなる二分木状のグ
ラフを格納するためのノードテーブルで、前記各中間ノ
ードに関わる一つの故障と、該故障へ1および0を代入
したときの行き先を表す2つの枝e0,e1とを記憶す
るエリアを備えたノードテーブルと、 前記順序テーブルに記録されている第1の故障に、0お
よび1を代入して2つの部分論理関数に分解する展開処
理を行い、該各部分論理関数について、前記順序テーブ
ルの第2の故障に0および1を代入して、各々2つの部
分論理関数に分解する展開処理を行い、以下同様の展開
処理を前記順序テーブルの示す順序にしたがって、すべ
ての故障について繰り返し、該一連の展開処理によって
得られた展開を前記中間ノードおよび前記終端ノードt
0,t1で表現して前記二分木状のグラフを生成し、該
二分木状のグラフを構成する中間ノードおよび終端ノー
ドt0,t1を前記ノードテーブルに格納する手段と、 前記展開処理中に、新たな中間ノードaを生成して前記
ノードテーブルに格納する前に、該中間ノードaと同一
の故障および枝e0,e1を有する等価な中間ノードb
が、前記ノードテーブル中にすでに存在しているか否か
を調べ、すでに存在している場合は、新たな中間ノード
aは生成せずに、中間ノードaを指すべき枝が前記中間
ノードbを指すようにし、前記中間ノードの共有化を行
う手段と、 前記展開処理中に、新たな中間ノードaの一方の枝e1
が終端ノードt0を直接指す場合は、該中間ノードaは
生成せずに、前記中間ノードaを指すべき枝がもう一方
の枝e0の行き先を直接指すようにし、冗長な中間ノー
ドの生成を防ぐ非冗長化を行う手段とを具備することを
特徴とする故障診断装置。5. A signal having a value of 0 or 1 on a signal line of a logic circuit.
When it is assumed that a fault fixed at a plurality of locations occurs at each of the signal lines, a set of faults that makes the signal value on the signal line different from a normal value is output from the input terminal to the output terminal of the logic circuit. In the fault diagnosis apparatus, which sequentially calculates using a set operation in accordance with the logic of the circuit and obtains a set of faults that affect the signal value of the output of the logic circuit, Using a binary number of digits equal to the total number of 1's and 0's in each digit of the binary number
Means for expressing the set data of the faults by a logical function, an order table for giving a fixed order to each of the faults, a plurality of intermediate nodes and logical values of 0 and 1 Is a node table for storing a binary tree-like graph consisting of a combination of two terminal nodes t0 and t1 representing a fault, one fault relating to each of the intermediate nodes, and one fault when 1 and 0 are substituted into the fault. A node table having an area for storing two branches e0 and e1 representing a destination; and substituting 0 and 1 into the first fault recorded in the sequence table to decompose the two faults into two partial logic functions Expansion processing is performed, and for each of the partial logical functions, 0 and 1 are substituted for the second fault in the order table, and expansion processing is performed to decompose each of the partial logical functions into two partial logical functions. According to the order indicating the of the sequence table, repeated for all faults, the deployment obtained by the series of development processing intermediate node and the terminating node t
Means for expressing the binary tree-like graph by expressing the binary tree-like graph with 0, t1 and storing intermediate nodes and terminal nodes t0, t1 constituting the binary tree-like graph in the node table; Before generating a new intermediate node a and storing it in the node table, an equivalent intermediate node b having the same fault and branches e0 and e1 as the intermediate node a
Checks whether the node already exists in the node table. If the node already exists, a new intermediate node a is not generated, and a branch pointing to the intermediate node a points to the intermediate node b. Means for sharing the intermediate node, and one branch e1 of a new intermediate node a during the expansion processing.
Directly points to the end node t0, the intermediate node a is not generated, and the branch that should point to the intermediate node a directly points to the destination of the other branch e0, thereby preventing generation of a redundant intermediate node. A failure diagnosis device comprising: means for performing non-redundancy.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP5268891A JP2985922B2 (en) | 1992-10-28 | 1993-10-27 | Logic function data processor |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP29004992 | 1992-10-28 | ||
JP4-290049 | 1992-10-28 | ||
JP5268891A JP2985922B2 (en) | 1992-10-28 | 1993-10-27 | Logic function data processor |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH06215065A JPH06215065A (en) | 1994-08-05 |
JP2985922B2 true JP2985922B2 (en) | 1999-12-06 |
Family
ID=26548517
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP5268891A Expired - Fee Related JP2985922B2 (en) | 1992-10-28 | 1993-10-27 | Logic function data processor |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2985922B2 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104515950A (en) * | 2015-01-12 | 2015-04-15 | 华南师范大学 | Built-in self-testing method and application of integrated circuit |
Families Citing this family (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6260185B1 (en) | 1995-04-21 | 2001-07-10 | Hitachi, Ltd. | Method for designing semiconductor integrated circuit and automatic designing device |
US6845349B1 (en) | 1995-04-21 | 2005-01-18 | Renesas Technology Corp. | Method for designing semiconductor integrated circuit and automatic designing device |
TW298686B (en) * | 1995-04-25 | 1997-02-21 | Hitachi Ltd | |
JP4071449B2 (en) * | 2001-03-27 | 2008-04-02 | 株式会社東芝 | Sensor abnormality detection method and sensor abnormality detection device |
JP5194856B2 (en) * | 2007-02-07 | 2013-05-08 | 富士通株式会社 | Efficient indexing using compact decision diagrams |
US8468142B2 (en) * | 2008-08-06 | 2013-06-18 | Fujitsu Limited | Caching query results with binary decision diagrams (BDDs) |
JP5195149B2 (en) * | 2008-08-11 | 2013-05-08 | 富士通株式会社 | Authenticity judgment method |
US8572146B2 (en) * | 2010-08-17 | 2013-10-29 | Fujitsu Limited | Comparing data samples represented by characteristic functions |
US8645108B2 (en) * | 2010-08-17 | 2014-02-04 | Fujitsu Limited | Annotating binary decision diagrams representing sensor data |
US8725462B2 (en) * | 2011-05-13 | 2014-05-13 | Fujitsu Limited | Data aggregation platform |
US8838523B2 (en) * | 2011-09-23 | 2014-09-16 | Fujitsu Limited | Compression threshold analysis of binary decision diagrams |
US20140351677A1 (en) * | 2011-12-09 | 2014-11-27 | Nec Corporation | Minimum cut set evaluation system, minimum cut set calculation method, and program |
CN107534601B (en) | 2015-05-15 | 2018-11-20 | 三菱电机株式会社 | Packet filtering device |
JP6451997B2 (en) * | 2015-12-16 | 2019-01-16 | 日本電信電話株式会社 | Arithmetic execution apparatus, method, and program |
JP6558864B2 (en) * | 2016-09-05 | 2019-08-14 | 日本電信電話株式会社 | ZSDD construction apparatus, method, and program |
JP6709740B2 (en) * | 2017-01-06 | 2020-06-17 | 日本電信電話株式会社 | Strictly spread calculation device, method, and program |
-
1993
- 1993-10-27 JP JP5268891A patent/JP2985922B2/en not_active Expired - Fee Related
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104515950A (en) * | 2015-01-12 | 2015-04-15 | 华南师范大学 | Built-in self-testing method and application of integrated circuit |
Also Published As
Publication number | Publication date |
---|---|
JPH06215065A (en) | 1994-08-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2985922B2 (en) | Logic function data processor | |
US5493504A (en) | System and method for processing logic function and fault diagnosis using binary tree representation | |
Sasao | Representations of logic functions using EXOR operators | |
US5515383A (en) | Built-in self-test system and method for self test of an integrated circuit | |
Chang et al. | Postlayout logic restructuring using alternative wires | |
US20070061765A1 (en) | Method and system for case-splitting on nodes in a symbolic simulation framework | |
JP2689908B2 (en) | How to synthesize an initializeable asynchronous circuit design | |
Tabloski et al. | A numerical expansion technique and its application to minimal multiplexer logic circuits | |
US5761487A (en) | Sequential network optimization designing apparatus | |
US20080201128A1 (en) | Method and System for Performing Ternary Verification | |
JP2002269162A (en) | Action synthesizing method | |
JPH10187656A (en) | Physical environment representation system, operating method, and testing method | |
JP2877023B2 (en) | Logic circuit division method | |
Swamy et al. | Incremental formal design verification | |
JP2003156544A (en) | Generation of compression test plan for testing integrated circuit, and test series generation and test | |
Chakradhar et al. | Redundancy removal and test generation for circuits with non-Boolean primitives | |
Du et al. | Circuit structure and switching function verification | |
Aarna et al. | Parallel fault simulation of digital circuits | |
EP0592076B1 (en) | Compilation mechanism for a simulation model | |
JP2560990B2 (en) | Logic circuit minimization device | |
JP2839574B2 (en) | Matching method for logic circuits containing indefinite values | |
JPH063420A (en) | Test pattern generation method for combinational logic circuit | |
JP3702475B2 (en) | Automatic circuit generator | |
JP3696302B2 (en) | Test vector generation method and generation apparatus | |
JPH06290230A (en) | Logical simulation device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
LAPS | Cancellation because of no payment of annual fees |