JPH01137371A - Manufacture of semiconductor device - Google Patents

Manufacture of semiconductor device

Info

Publication number
JPH01137371A
JPH01137371A JP62296664A JP29666487A JPH01137371A JP H01137371 A JPH01137371 A JP H01137371A JP 62296664 A JP62296664 A JP 62296664A JP 29666487 A JP29666487 A JP 29666487A JP H01137371 A JPH01137371 A JP H01137371A
Authority
JP
Japan
Prior art keywords
logical
intermediate terminal
input variable
output
logical formula
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
JP62296664A
Other languages
Japanese (ja)
Inventor
Naomi Fujishima
藤島 尚美
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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP62296664A priority Critical patent/JPH01137371A/en
Publication of JPH01137371A publication Critical patent/JPH01137371A/en
Pending legal-status Critical Current

Links

Abstract

PURPOSE:To improve logical designing efficiency by searching an input variable group including an intermediate terminal and an input variable group of the intermediate terminal for each output variable. CONSTITUTION:A logic circuit is expressed in plural logical formulas and with use of the Boolean function and a middle member of a logical formula is extracted as an intermediate terminal. The input variable groups including the intermediate terminals are sorted for each product term of each logical formula and set opposite to the output variables. Then, the input variable groups of the intermediate terminals are sorted into plural groups for each product member of each logical formula. The search is carried out for each output variable based on both input variable groups for detection of the presence or absence of a loop of logical formulas. Based on this detecting result, a logic circuit is logically designed. Therefore, a logical formula is expressed in the numerical data and can be processed by a computer. After the same time, the number of coding steps is extremely decreased.

Description

【発明の詳細な説明】 〔目 次〕 概要 産業上の利用分野 従来の技術         (第3図)発明が解決し
ようとする問題点 問題点を解決するための手段 作用 実施例 (1)本発明の第1実施例   (第1.2図)(2)
本発明の第2実施例 発明の効果 〔概 要〕 半導体装置の製・遣方法に関し、 ループチエツクを行う際のコーデングステップを大幅に
減少させることができ、かつ電算機上で効率よく処理す
ることのできる半導体装置の製造方法を提供することを
目的とし、 各種論理演算を行う論理回路を、ブール関数を用い複数
の論理式で表現して、論理設計する半導体装置の製造方
法において、前記論理式の途中項を中間ターミナルとし
て抜き出し、該中間ターミナルを含む入力変数群を各論
理式の積項毎に分類して、出力変数に対応させ、該中間
ターミナルの入力変数群を各論理式の積項毎に複数に分
類し、前記入力変数群と前記中間ターミナルの入力変数
群とに基づいて出力変数毎に探索して論理式のループの
有無を検知し、この検知結果に基づいて論理回路を論理
設計するように構成する。
[Detailed Description of the Invention] [Table of Contents] Overview Industrial Application Fields Prior Art (Fig. 3) Problems to be Solved by the Invention Means for Solving the Problems Examples of Actions (1) Effects of the Invention First embodiment (Figure 1.2) (2)
Effects of the invention according to the second embodiment of the present invention [Summary] Regarding the method of manufacturing and using a semiconductor device, the number of coding steps when performing a loop check can be significantly reduced, and processing can be performed efficiently on a computer. The purpose of the present invention is to provide a method for manufacturing a semiconductor device in which a logic circuit that performs various logical operations is expressed by a plurality of logical expressions using Boolean functions, and is logically designed. The middle term of the formula is extracted as an intermediate terminal, the input variable group including the intermediate terminal is classified for each product term of each logical formula, and the input variable group of the intermediate terminal is classified into the product terms of each logical formula. Classify each term into multiple groups, search for each output variable based on the input variable group and the input variable group of the intermediate terminal to detect the presence or absence of a loop in the logical formula, and create a logical circuit based on the detection result. Configure to logically design.

〔産業上の利用分野〕[Industrial application field]

本発明は、半導体装置の製造方法に係り、詳しくは、論
理回路のループを自動的に検出して論理設計を行う際の
作業性の改善を図った半導体装置の製造方法に関する。
The present invention relates to a method for manufacturing a semiconductor device, and more particularly, to a method for manufacturing a semiconductor device that automatically detects loops in a logic circuit and improves workability when performing logic design.

論理回路は入力および出力がそれらに対して許される離
散的な状態のうちのどの状態にあるか、その状態が離散
的な時点でどのような系列になるかを対象とした回路で
あり、論理回路を大別すれば、出力が現時点における入
力のみによって決まるような組み合わせ論理回路(co
mbinational I。
A logic circuit is a circuit whose object is to determine which of the discrete states the input and output are in, and what series the states become at discrete points in time. Broadly speaking, circuits can be divided into combinational logic circuits (CO) whose output is determined only by the input at the current moment.
mbnational I.

gic circuit)と、出力が現時点の入力だけ
では決まらず、現時点の回路の状態や過去の入力によっ
て左右されるような順序回路(sequential 
circuit)とがある。
gic circuit), and sequential circuits in which the output is not determined solely by the current input, but is influenced by the current state of the circuit and past inputs.
circuit).

一般に、入出力の状態が多値的な基本論理回路によって
構成されるディジタル論理回路を考えることができ、そ
れらは種々のディジタル演算に対し効率が良いことが知
られているが、簡単で性能の良い基本的な多値論理回路
を得ることは必ずしも容易ではないので、普通、ディジ
タル論理回路といえば2値的なものを指す。2値的な通
常のディジタル論理回路の入力と出力の値の2元性と、
ブー街代数(Boolean algebra)の変数
の2元性とは完全に対応するので、ディジタル論理回路
の入出力関係あるいは回路の状態などはブール代数によ
って表現される。
In general, digital logic circuits can be considered that are composed of basic logic circuits whose input/output states are multivalued, and they are known to be efficient for various digital operations, but they are simple and have low performance. Since it is not always easy to obtain a good basic multi-valued logic circuit, digital logic circuits usually refer to binary ones. The duality of the input and output values of a binary normal digital logic circuit,
Since it completely corresponds to the duality of variables in Boolean algebra, the input/output relationship of a digital logic circuit or the state of the circuit can be expressed by Boolean algebra.

〔従来の技術〕[Conventional technology]

一般に、集積回路は大規模になるほど素子数が増加する
ため、設計変更などによる回路変更回数が多くなり、品
種ごとの寿命も短くなる傾向がある。P L A (P
rogrammable Logic Array)は
ROMと同様、書き込み可能な集積回路であり、大規模
集積回路のこのような問題を減少させる一方法として期
待されている。PLAは1970年代後期に開発された
もので、2次元格子状に構成された回路の各格子点をプ
ログラムすることにより、論理回路を構成するもので、
ROMの1種とみることができる。通常、ANDアレイ
とORアレイとから成り、AND−OR2段構成によっ
て論理回路を実現する。すなわち、任意の論理回路はす
べてその論理を積和形(AND−OR形)に変形するこ
とによって達成される。PLAは電子機器設計者が開発
現場で、必要な論理機能をもったICを自作できるので
、需要が増加している。PLAはTTLに比べて、集積
度と自由性において優れ、゛ゲートアレイに対して、開
発コストと開発期間、設計上のリスク回避の点で利点を
もっており、TTLとゲートアレイの間のギヤ・ノブを
埋めるICである。また、PLAに不可欠なプログラマ
(書き込み器)も開発が進み、パソコンによって、論理
設計仕様の表現から書き込みデータの作成までを自動化
するソフトウェアも開発されている。
Generally, as integrated circuits become larger, the number of elements increases, so the number of circuit changes due to design changes increases, and the lifespan of each type tends to be shortened. P L A (P
A programmable logic array (ROM) is a writable integrated circuit similar to a ROM, and is expected to be a way to reduce such problems in large-scale integrated circuits. PLA was developed in the late 1970s, and it constructs a logic circuit by programming each grid point of a circuit configured in a two-dimensional grid.
It can be seen as a type of ROM. Usually, it consists of an AND array and an OR array, and a logic circuit is realized by a two-stage AND-OR configuration. That is, all arbitrary logic circuits are achieved by transforming the logic into a product-sum type (AND-OR type). Demand for PLA is increasing because it allows electronic device designers to create their own ICs with the necessary logic functions at the development site. PLA is superior to TTL in terms of integration and flexibility, and has advantages over gate arrays in terms of development costs, development time, and design risk avoidance. It is an IC that fills the Furthermore, the development of programmers (writers) essential to PLA is progressing, and software that automates everything from expressing logical design specifications to creating written data using a personal computer is also being developed.

ところで、上記のようなLSIを誤りなく短期間に設計
するためには、論理シュミレーションなどのCAD (
computer aided design  :計
算機授用設計)が不可欠であり、また最初から故障検査
の容易化を考慮に入れたループチエツク等などの論理検
査も重要である。
By the way, in order to design the above-mentioned LSI without errors in a short period of time, it is necessary to use CAD (such as logic simulation).
Computer aided design (computer aided design) is essential, and logic tests such as loop checks that take into account the ease of failure testing from the beginning are also important.

従来のこの種のLSIの論理設計方法としては、例えば
、第3図に示すようなものがある。PLAのCADツー
ルにおいて論理回路(以下、単に回路という)の入力と
出力の関係を論理式で表現する方法をとると、第3図の
ような入力xI+ xl+ x31x4、出力Vr、V
tというごく簡単な回路は次式■のように表現できる。
An example of a conventional logic design method for this type of LSI is shown in FIG. When using a PLA CAD tool to express the relationship between the input and output of a logic circuit (hereinafter simply referred to as a circuit) using a logical formula, the input xI + xl + x31x4 and the output Vr, V as shown in Figure 3 are used.
A very simple circuit called t can be expressed as the following equation (■).

’J+=X+  °Xz +X、−x3・・・・・・■ 3’z=X+  ° Xz  +X、  +x。'J+=X+   Xz +X, -x3・・・・・・■ 3'z=X+     Xz  +X,  +x.

但し、・:AND(以下、同様) +:OR(以下、同様) 第0式に示すように論理式が極めて単純なものであれば
出力=入力の式で表現することができるが、実際にはも
っと複雑であり、中間的変数(以下、中間ターミナルと
呼ぶ)が必要となる。例えば、X、・x2を中間ターミ
ナルT、で表すと、上記第0式は次式〇となる。
However, ・:AND (hereinafter the same) +:OR (hereinafter the same) If the logical expression is extremely simple as shown in equation 0, it can be expressed as an expression of output = input, but in reality is more complex and requires intermediate variables (hereafter referred to as intermediate terminals). For example, if X, x2 is represented by an intermediate terminal T, the above equation 0 becomes the following equation 〇.

)’+ =T+  +xl  −x3 y2=T、+x3+X、   ・−・・・・■T、=x
、−x。
)'+ =T+ +xl -x3 y2=T, +x3+X, ・−・・■T, =x
, -x.

ところで、このような形式で回路を設計すると、回路が
大規模になるにつれ、複雑な数式の羅列になり、設計者
は意図せずにループを作ってしまうことが考えられる。
By the way, if a circuit is designed in this format, as the circuit becomes large-scale, it will become a series of complicated mathematical formulas, and the designer may unintentionally create a loop.

ループが出来ると必ずしも悪いというわけではないが、
設計のミスが考えられ、出力が出ない等の不具合が生じ
る。そこで、CADツールには論理式で書かれたものか
らループがあるかないかをチエツクする機能が必要とな
る。
It is not necessarily bad if a loop occurs, but
There may be a design error, resulting in problems such as no output. Therefore, a CAD tool is required to have a function to check whether there is a loop or not based on a logical expression.

〔発明が解決しようとする問題点〕[Problem that the invention seeks to solve]

しかしながら、このような従来の論理回路のループチエ
ツク方法を用いた半導体装置の製造方法にあっては、L
SIの規模が大きくなり論理回路が複雑化し、かつデー
タ量が増大した場合、処理が複雑になりループをチエツ
クするまでの手間および時間が増大してしまうという問
題点があった。
However, in a semiconductor device manufacturing method using such a conventional logic circuit loop check method, L
When the scale of the SI becomes larger, the logic circuit becomes more complex, and the amount of data increases, there is a problem in that the processing becomes complicated and the effort and time required to check the loop increases.

すなわち、人間がループを発見するにはいくつかの方法
があり、その一つとしてシュミレーションによる方法が
ある。これはデータのパターンを入力し、中でループが
発生するとどういう出力が出るかをみるものであるが、
入力するデータのパターンを1つ1つ作るのが大変であ
る。また、第2の方法として、前述したように論理式に
中間ターミナルを代入する方法があるが、この方法は文
字(キャラクタ)に依存する態様であるため、キャラク
タの判断をしなければならないことに加えて、手作業で
行っているため、コンピュータ処理には向かず、処理の
筒便化を図るために導入した中間ターミナルの意味が失
われてしまう。何れにしても回路が複雑かつデータ量が
増すと処理が複雑になりループの発見は困難であった。
In other words, there are several ways for humans to discover loops, one of which is through simulation. This is to input a data pattern and see what kind of output is produced when a loop occurs inside.
It is difficult to create patterns for input data one by one. Also, as a second method, there is a method of substituting the intermediate terminal into the logical expression as described above, but since this method depends on characters, it is necessary to judge the characters. In addition, since the process is done manually, it is not suitable for computer processing, and the intermediate terminal introduced to streamline the process loses its meaning. In any case, as the circuit becomes more complex and the amount of data increases, processing becomes more complicated, making it difficult to discover loops.

そこで本発明は、ループチエツクを行う際のコーデング
ステップを大幅に減少させることができ、かつ電算機上
で効率よく処理することのできる半導体装置の製造方法
を提供することを目的としている。
SUMMARY OF THE INVENTION Therefore, an object of the present invention is to provide a method for manufacturing a semiconductor device that can significantly reduce the number of coding steps when performing a loop check and can be efficiently processed on a computer.

〔問題点を解決するための手段〕[Means for solving problems]

本発明による半導体装置の製造方法は上記目的達成のた
め、各種論理演算を行う論理回路を、ブール関数を用い
複数の論理式で表現して、論理設計する半導体装置の製
造方法において、前記論理式の途中項を中間ターミナル
として抜き出し、該中間ターミナルを含む入力変数群を
各論理式の積項毎に分類して、出力変数に対応させ、該
中間ターミナルの入力変数群を各論理式の積項毎に複数
に分類し、前記入力変数群と前記中間ターミナルの入力
変数群とに基づいて出力変数毎に探索して論理式のルー
プの有無を検知し、この検知結果に基づいて論理回路を
論理設計するようにしている。
In order to achieve the above object, the method for manufacturing a semiconductor device according to the present invention includes a method for manufacturing a semiconductor device in which a logic circuit that performs various logical operations is expressed by a plurality of logical expressions using Boolean functions, and the method for manufacturing a semiconductor device is logically designed. The middle term of is extracted as an intermediate terminal, the input variable group including the intermediate terminal is classified for each product term of each logical formula, and it is made to correspond to the output variable, and the input variable group of the intermediate terminal is classified as the product term of each logical formula. The presence or absence of a loop in the logical formula is detected by searching for each output variable based on the input variable group and the input variable group of the intermediate terminal, and the logic circuit is configured based on the detection result. I try to design it.

〔作 用〕[For production]

本発明では、中間ターミナルを含む入力変数群と中間タ
ーミナルの入力変数群とが出力変数毎に探索される。
In the present invention, the input variable group including the intermediate terminal and the input variable group of the intermediate terminal are searched for each output variable.

したがって、論理式が数値データで表現され、計算機上
で処理が行われるようになるとともに、コーディングス
テップが大幅に減少する。
Therefore, logical expressions can be expressed as numerical data and processed on a computer, and the number of coding steps can be significantly reduced.

〔実施例〕〔Example〕

以下、本発明を図面に基づいて説明する。 Hereinafter, the present invention will be explained based on the drawings.

筆1大施開 第1.2図は本発明に係る半導体装置の製造方法の第1
実施例を、示す図であり、本発明は大規模な中間ターミ
ナルを使った論理式のループを自動的に検出する方法を
提出するものである。この問題を補うために論理式を別
の表現で表す必要がある。そこで、論理積をn次元の超
立方体(cube :キューブ)で表現したいわゆるキ
ューブ表現の手法を用いて論理式を表現する。例えば、
入力変数全てを横1列にとり、各論理式を積項に分けて
横1列(cover)と対応させ、その項に出現するも
のは1または0(否定)、出力しないものは2とし、そ
の項の現れる出力を5、出現しない出力を4とすると、
前述の第1図に示す論理回路の論理式(第0式)は第1
表のように示される。この場合、計算機上では入力キュ
ーブと出力キューブとに分けて2次元配列にとる。
Figure 1.2 shows the first method of manufacturing a semiconductor device according to the present invention.
1 is a diagram illustrating an embodiment, and the present invention proposes a method for automatically detecting loops in logical expressions using large-scale intermediate terminals. To compensate for this problem, it is necessary to express logical expressions in another way. Therefore, the logical formula is expressed using a so-called cube expression technique in which the logical product is expressed as an n-dimensional hypercube. for example,
All input variables are placed in one horizontal column, and each logical formula is divided into product terms and corresponds to the one horizontal column (cover). Those that appear in that term are set as 1 or 0 (negation), those that do not output are set as 2, and the If the output where the term appears is 5 and the output where the term does not appear is 4, then
The logical formula (0th formula) of the logic circuit shown in FIG.
Shown as a table. In this case, the input cube and output cube are divided into two-dimensional arrays on the computer.

第1表 ループの検出方法は、まず、同一出力キューブに分けて
順次調べていく。すなわち、ある出力キューブに対する
入力キューブを第2表に示すように左から(1,1)→
(1,2)→・・・・・・→(x +%。
The method for detecting loops in Table 1 is to first divide them into the same output cube and sequentially examine them. In other words, as shown in Table 2, the input cube for a certain output cube is (1, 1) →
(1, 2)→・・・・・・→(x +%.

xn)の順に検索し、“1”か“O”があればそれが中
間ターミナルであるか調べて、中間ターミナルであれば
その中間ターミナルを出力としてもつ大力キューブを上
記と同じ方法で左から検索し、また中間ターミナルが“
1”か“θ″であればじ2”の場合はとばす)中間ター
ミナルの入力キューブを検索する。これを中間ターミナ
ルが現れなくなるまで繰り返す。途中、現れた中間ター
ミナルは別に記憶し、同じものが2度出現してきたらル
ープであると認識して警告する。ループがないときは、
最初の段階の入力キューブが。終了するまで繰り返し行
う。
xn), and if "1" or "O" is found, check whether it is an intermediate terminal, and if it is an intermediate terminal, search from the left for a large power cube that has that intermediate terminal as an output using the same method as above. Also, the intermediate terminal is “
1" or "θ"; if 2", skip) Search the input cube of the intermediate terminal. Repeat this until no intermediate terminals appear. Intermediate terminals that appear along the way are memorized separately, and if the same terminal appears twice, it is recognized as a loop and a warning is issued. When there is no loop,
The input cube for the first stage is. Repeat until finished.

(本頁、以下余白) 第2表 Xl  Xzo”−−−−−−−−−−−0−X 。(This page, margins below) Table 2 Xl Xzo”−−−−−−−−−−0−X.

(1,1) (1,2)・・・・・・・・・(1,X、
)(2,1) (2,2) ・・−”・(2,X、 )
(x、、 1) (x、、 2) ”・・・・・・・(
x、、 X、 )次に、作用を説明する。
(1,1) (1,2)・・・・・・・・・(1,X,
)(2,1) (2,2) ・・−”・(2,X, )
(x,, 1) (x,, 2) ”・・・・・・・・・(
x, , X, ) Next, the effect will be explained.

第1図は論理回路のループチエ・ツク方法のプログラム
を示すフローチャートであり、第1図中、Pn (n=
1.2.・・・・・・)はプログラムの各ステップを示
す。
FIG. 1 is a flowchart showing a program for a loop check method for a logic circuit, and in FIG. 1, Pn (n=
1.2. ...) indicates each step of the program.

プログラムが開始すると、まず、P+で論理式をキュー
ブ表現番こ変換し、P2でAP配列をOクリアする。中
間ターミナルが1回出てくると“1”を立てるので、初
めはOクリアしておく。次いで、P、で出力キューブに
対する入力キューブを第2表に示す順に検索する。すな
わち、出力Yのに番目のものをYK  (本実施例では
Y In Y t )とし、その項数(第1表における
縦の数)をi、中間ターミナル数(本実施例では“l”
)をjとすると、P3ではYK  (i、  J+入力
数)が“0”または“l”であるか否かを判別すること
になる。例えば、Yl  (1,4)のときは第1表の
*印で示す項目をみてこれが“O”か“1”ならば、P
4でAP(j)(この場合、AP (1))=1とし、
P、でループチエツクを行う。なお、このループチエツ
ク方法については第2図に示すサブルーチン(LOOP
−CHK)で後述する。
When the program starts, first, P+ converts the logical expression into cube representation, and P2 clears the AP array to O. When the intermediate terminal appears once, it sets "1", so initially clear it to O. Then, P searches for input cubes for the output cube in the order shown in Table 2. That is, the second output Y is YK (Y In Y t in this embodiment), the number of terms (vertical number in Table 1) is i, and the number of intermediate terminals (“l” in this embodiment) is
) is j, then in P3 it is determined whether YK (i, J+number of inputs) is "0" or "l". For example, when Yl (1, 4), look at the item marked * in Table 1, and if it is “O” or “1”, P
4, AP (j) (in this case, AP (1)) = 1,
Perform a loop check with P. This loop check method is explained in the subroutine (LOOP) shown in Figure 2.
-CHK) will be described later.

YK  (i、  j十人)j数)=0またはyエ (
It  J+入力数)=1でないときは該当する項目が
ないと判断してそのままPhに進む。P6では中間ター
ミナル数j (本実施例では、中間ターミナルj=1)
だけ処理を行ったか否かを判別し、j回処理をしたとき
はP?に進み、j回処理をしていないときは再びP、に
戻る。次いで、P7で出力Yの項数i (第1表に示す
縦の数)だけ処理を行ったか否かを判別し、i回処理を
したときはP、に進み、i回処理をしていないときは再
びP、に戻る。次いで、P8で出力Yの出力数K(本実
施例では、Y l、 Y zの2つ)だけ処理したか否
かを判別し、K回処理をしたときは今回の処理を終了し
、K回処理をしていないときは再びP、に戻る。
YK (i, j ten people) j number) = 0 or ye (
If it J + number of inputs) is not 1, it is determined that there is no corresponding item and the process directly proceeds to Ph. In P6, the number of intermediate terminals j (in this example, intermediate terminal j = 1)
It is determined whether or not processing has been performed for j times. If the process has not been processed j times, the process returns to P. Next, in P7, it is determined whether or not the number of terms i (the vertical number shown in Table 1) of the output Y has been processed. Time returns to P again. Next, in P8, it is determined whether or not the number of outputs Y (in this example, two, Y l and Y z) has been processed, and when the process has been performed K times, the current processing is finished, and When the process is not completed, the process returns to P again.

第2図はループチエツクのサブルーチン(LOOP−C
HK)を示すフローチャートであり、中間ターミナルj
を引数でわたす(arg−+n。
Figure 2 shows the loop check subroutine (LOOP-C
This is a flowchart showing the intermediate terminal j
is passed as an argument (arg-+n.

W)ことにより開始される。まず、P、で引数をTno
騨 (ここでは、Tno−士1)とすれば、中間ターミ
ナルTnow  (in  j十入力数)が“0”また
は“1”であるか否かを判別し、Tnow(i。
W) is initiated by First, P, sets the argument Tno
(Here, Tno-shi1), it is determined whether the intermediate terminal Tnow (in j ten input number) is "0" or "1", and Tnow(i.

j十入力数)−〇またはTnow (t、  j十入力
数)=1のときはPI2でAP (j)=0  (、:
、ニーでは、AP (1)=O)か否かを判別する。前
記P4でAP (j)=1として中間ターミナルjに“
1”を立てたはずであるから、AP (j)≠0のとき
はルーチンエラー発生をアラーム等で設計者に警告して
処理を終える。一方、P+□でAP(j)=Oのときは
PI4でAP (j)=1としてPISに進むが、仮に
もっと多くの中間ターミナルであって中間ターミナルの
中にまだ中間ターミナルの“1″が立っていたら、pu
sで再び本ルーチンを呼び出して同じ処理を繰り返し次
々に深くチエツクしていく。Pl&では中間ターミナル
数jだけ処理を行ったか否かを判別し、j回処理をした
ときはPI7に進み、j回処理をしていないときは再び
pHに戻る。次いで、PI?で中間ターミナルの引数T
now  (本実施例では、Tno鰹=1)の項数(こ
こでは、“1”のみ)分処理を行ったか否かを判別し、
Tno−の項数分処理をしたときはPIl+に進み、T
 nowO項数分処理をしていないときは再びP、に戻
る。pH+ではAP (nov)=Qとしてこのルーチ
ンの処理を終え、第1図に示すメインルーチンに戻る。
When j 10 inputs) - 〇 or Tnow (t, j 10 inputs) = 1, AP (j) = 0 in PI2 (,:
, knee, it is determined whether AP (1)=O). At P4 above, AP (j) = 1 and “
1", so when AP (j) ≠ 0, the designer is alerted to the occurrence of a routine error with an alarm, etc., and the process ends. On the other hand, when AP (j) = O at P+□, Set AP (j) = 1 in PI4 and proceed to PIS, but if there are more intermediate terminals and intermediate terminal "1" is still standing among the intermediate terminals, pu
This routine is called again with s, and the same process is repeated to deeply check one after another. In PI&, it is determined whether or not the number of intermediate terminals has been processed. If the process has been performed j times, the process proceeds to PI7, and if the process has not been performed j times, the process returns to pH again. Next, PI? and the intermediate terminal argument T
Determine whether processing has been performed for the number of terms (here, only "1") of now (Tno katsuo = 1 in this embodiment),
When the number of terms of Tno− has been processed, proceed to PIl+ and T
If processing has not been completed for the number of nowO terms, the process returns to P again. At pH+, AP (nov)=Q, this routine ends, and the process returns to the main routine shown in FIG.

これは、同一出力変数および同一中間ターミナルの項に
同一中間ターミナルが複数回出現しても、問題はないの
で、ここでクリアする(第■、0式参照)。
This is cleared here because there is no problem even if the same intermediate terminal appears multiple times in the same output variable and same intermediate terminal term (see No. 2, Equation 0).

)’+  ”’X+  ・Xz +T+  ・Xl  
+T+  −Xs問題なし   ・・・・・・■ y=x、  −x、+T、  −x、  +T、  ・
 X=T=x、  −x2 ・T。
)'+ ”'X+ ・Xz +T+ ・Xl
+T+ -Xs No problem......■ y=x, -x, +T, -x, +T, ・
X=T=x, -x2 ・T.

oop ・・・・・・■ したがって、本実施例では論理式を数値データで表現し
たことにより、計算機上で表現しやすい形として論理回
路のループチエツクを手作業から解放してコンピュータ
処理で実現することができる。また、同様の理由でルー
プチエツクを行う際にサブルーチンを再起的に利用する
ことができ、コーディングステップを大幅に減少させる
ことができる。その結果、論理回路が複雑化しかつデー
タ量が増大した場合であっても、ループをチエツクする
までの手間および時間を大幅に減少させることができ、
論理設計の効率化を図ることができる。
oop ・・・・・・■ Therefore, in this embodiment, by expressing the logical formula as numerical data, it is easy to express on a computer, and the loop check of the logic circuit is freed from manual work and realized by computer processing. be able to. Furthermore, for the same reason, subroutines can be used recursively when performing a loop check, and the number of coding steps can be significantly reduced. As a result, even when the logic circuit becomes complex and the amount of data increases, the effort and time required to check the loops can be significantly reduced.
Logic design can be made more efficient.

なお、本実施例では本発明をPLAのCADツールに適
用した例を示したが、勿論これには限定されず、論理式
をブール代数で用いて表すものであれば、PLAに限定
されないことは言うまでもない。
Although this embodiment shows an example in which the present invention is applied to a PLA CAD tool, the present invention is of course not limited to this, and as long as a logical formula is expressed using Boolean algebra, it is not limited to PLA. Needless to say.

裏」」υ1桝 次式■に示す論理式のループチエツクをする場合を考え
゛る。
Let us consider the case of loop checking the logical formula shown in the following formula.

3’+ −Tt 十x、  txt  ’X3 +xl
  *)(、9X3’It =X+  ” Xz  ’
 )C+ txt  ・x2’x3・x重・xzlx3
+x11x1=φx:IT、=x、−xz ・・・・・・■ 第■弐をキューブ表現に変換すると(左からXl 、X
g s X3 、Ttの順)、第3表となる。
3'+ -Tt x, txt 'X3 +xl
*) (, 9X3'It =X+ "Xz'
)C+ txt ・x2'x3・xju・xzlx3
+ x11
g s X3 , Tt), as shown in Table 3.

第3表 01120012      yr l  0 1 2  1 0 0  ”       
     )’1ここで、y、に注目し、ループのチエ
ツクを行う。y、の入力キューブを)’l  (3,4
)という配列にとると、第4表の左側のようになる。y
Table 3 01120012 yr l 0 1 2 1 0 0”
)'1 Here, pay attention to y and check the loop. y, input cube)'l (3,4
), it will look like the left side of Table 4. y
.

(1,4)に着目すると、この項は“1”丈から中間タ
ーミナルT1を出力としてもつ入力キューブを検索すれ
ば、第4表右側に示すように“入力”と“2” (未定
義)となり、ここでは、中間ターミナルは存在しないこ
とがわかる。
Focusing on (1, 4), if we search for an input cube that has the intermediate terminal T1 as an output from the "1" length, we can find "input" and "2" (undefined) as shown on the right side of Table 4. Therefore, it can be seen that there is no intermediate terminal here.

(本頁、以下余白) 第4表 (1,1)→2 (1,2)→2 (1,3)−2 (1,4)−1−中間ターミナル−T+  (1,1)
−1−人力T、    TI(1,2)−1−人力T、
 (1,3)→2 TI (1,4) −2 、°、中間ターミナルは存在 しない。
(This page, blank space below) Table 4 (1,1)→2 (1,2)→2 (1,3)-2 (1,4)-1-Intermediate terminal-T+ (1,1)
-1-Manpower T, TI(1,2)-1-Manpower T,
(1,3)→2 TI (1,4) −2 , °, there is no intermediate terminal.

)’+  (2,1) −0 y、  (3,4)→2 さらに、ループチエツクを進めていくと、yl(2,1
)以降は入力と“2” (未定義)なので中間ターミナ
ルは出現しない。また、y2に関しても同様にチエツク
を行い、ループがないことを確認する。例えば、ここで
第4表右側に示すT1(1,4)が0”か1″であれば
、T、という中間ターミナルが2度現れるので、ループ
が存在することになり、警告を発する。
)'+ (2,1) -0 y, (3,4)→2 Furthermore, as the loop check progresses, yl(2,1
) and subsequent ones are input and “2” (undefined), so no intermediate terminal appears. Also, check y2 in the same way to confirm that there is no loop. For example, if T1 (1, 4) shown on the right side of Table 4 is 0" or 1", the intermediate terminal T appears twice, so a loop exists and a warning is issued.

〔効 果〕〔effect〕

本発明によれば、中間ターミナルを含む入力変数群と中
間ターミナルの入力変数群とを出力変数毎に探索してい
るので、論理式を数値データで表現して、計算機上で処
理を行うことができるようになるとともに、コーディン
グステップが大幅に減少させることができ、論理設計の
効率化を図ることができる。
According to the present invention, since the input variable group including the intermediate terminal and the input variable group of the intermediate terminal are searched for each output variable, it is possible to express the logical formula with numerical data and process it on a computer. At the same time, the number of coding steps can be significantly reduced, and logic design can be made more efficient.

【図面の簡単な説明】[Brief explanation of the drawing]

第1.2図は本発明に係る半導体装置の製造方法の第1
実施例を示す図であり、 第1図はその論理回路のループチエツク方法のプログラ
ムを示すフローチャート、 第2図はそのループチエツクのサブルーチンを示すフロ
ーチャート、 第3図は従来の半導体装置の製造方法の論理回路を示す
図である。 従来例の論理回路を示す図 第3図
Figure 1.2 shows the first method of manufacturing a semiconductor device according to the present invention.
FIG. 1 is a flowchart showing a program for a loop check method of a logic circuit, FIG. 2 is a flowchart showing a subroutine of the loop check, and FIG. 3 is a flowchart showing a conventional method for manufacturing a semiconductor device. FIG. 3 is a diagram showing a logic circuit. Figure 3 shows a conventional logic circuit.

Claims (1)

【特許請求の範囲】 各種論理演算を行う論理回路を、ブール関数を用い複数
の論理式で表現して、論理設計する半導体装置の製造方
法において、 前記論理式の途中項を中間ターミナルとして抜き出し、 該中間ターミナルを含む入力変数群を各論理式の積項毎
に分類して、出力変数に対応させ、該中間ターミナルの
入力変数群を各論理式の積項毎に複数に分類し、 前記入力変数群と前記中間ターミナルの入力変数群とに
基づいて出力変数毎に探索して論理式のループの有無を
検知し、この検知結果に基づいて論理回路を論理設計す
るようにしたことを特徴とする半導体装置の製造方法。
[Claims] A method for manufacturing a semiconductor device in which a logic circuit that performs various logical operations is expressed by a plurality of logical formulas using Boolean functions, and a logic design is performed, comprising: extracting a term in the middle of the logical formula as an intermediate terminal; The input variable group including the intermediate terminal is classified for each product term of each logical formula and made to correspond to the output variable, and the input variable group of the intermediate terminal is classified into a plurality of groups for each product term of each logical formula, The present invention is characterized in that the presence or absence of a loop in a logical expression is detected by searching for each output variable based on the variable group and the input variable group of the intermediate terminal, and the logic circuit is logically designed based on the detection result. A method for manufacturing a semiconductor device.
JP62296664A 1987-11-25 1987-11-25 Manufacture of semiconductor device Pending JPH01137371A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP62296664A JPH01137371A (en) 1987-11-25 1987-11-25 Manufacture of semiconductor device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP62296664A JPH01137371A (en) 1987-11-25 1987-11-25 Manufacture of semiconductor device

Publications (1)

Publication Number Publication Date
JPH01137371A true JPH01137371A (en) 1989-05-30

Family

ID=17836477

Family Applications (1)

Application Number Title Priority Date Filing Date
JP62296664A Pending JPH01137371A (en) 1987-11-25 1987-11-25 Manufacture of semiconductor device

Country Status (1)

Country Link
JP (1) JPH01137371A (en)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0368076A (en) * 1989-08-07 1991-03-25 Fujitsu Ltd Loop detection of logic circuit
JP2007283256A (en) * 2006-04-19 2007-11-01 Saraya Kk Dilution apparatus
JP2009066535A (en) * 2007-09-13 2009-04-02 Jfe Engineering Kk Venturi tube device and ballast water treatment apparatus using the same
JP2009257021A (en) * 2008-04-18 2009-11-05 Panasonic Electric Works Co Ltd Wash water discharge apparatus
JP2009257022A (en) * 2008-04-18 2009-11-05 Panasonic Electric Works Co Ltd Wash water discharge apparatus

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0368076A (en) * 1989-08-07 1991-03-25 Fujitsu Ltd Loop detection of logic circuit
JP2007283256A (en) * 2006-04-19 2007-11-01 Saraya Kk Dilution apparatus
JP2009066535A (en) * 2007-09-13 2009-04-02 Jfe Engineering Kk Venturi tube device and ballast water treatment apparatus using the same
JP2009257021A (en) * 2008-04-18 2009-11-05 Panasonic Electric Works Co Ltd Wash water discharge apparatus
JP2009257022A (en) * 2008-04-18 2009-11-05 Panasonic Electric Works Co Ltd Wash water discharge apparatus

Similar Documents

Publication Publication Date Title
US5956257A (en) Automated optimization of hierarchical netlists
US5210699A (en) Process for extracting logic from transistor and resistor data representations of circuits
US8225246B2 (en) Logic injection
US5568396A (en) Identifying overconstraints using port abstraction graphs
JP3175322B2 (en) Automatic logic generation method
CN114742001B (en) System static time sequence analysis method based on multiple FPGA
US5463561A (en) High capacity netlist comparison
Kubica et al. A technology mapping of FSMs based on a graph of excitations and outputs
KR100521289B1 (en) Method of extracting timing characteristics of transistor circuits, storage medium storing timing characteristic library, lsi designing method, and gate extraction method
JPH01137371A (en) Manufacture of semiconductor device
US6190433B1 (en) Method of recovering a gate-level netlist from a transistor-level
Zanden et al. MILO: a microarchitecture and logic optimizer
US5854926A (en) Method and apparatus for identifying flip-flops in HDL descriptions of circuits without specific templates
US20040002846A1 (en) Transistor level verilog
Gokhale et al. The logic description generator
US8782587B2 (en) Systems and methods for generating a higher level description of a circuit design based on connectivity strengths
Newton et al. CAD tools for ASIC design
Gawanmeh et al. Interfacing ASM with the MDG tool
US6868535B1 (en) Method and apparatus for optimizing the timing of integrated circuits
Solov’ev Minimization of mealy finite state machines via internal state merging
Steinbach et al. Synthesis for full testability of partitioned combinational circuits using boolean differential calculus
US20060136851A1 (en) Method for the generation of static noise check data
Dobrzhinskaya et al. Diagnostic modeling of mixed analog-digital systems
Majeed et al. Evolving Behavioural Level Sequence Detectors in SystemVerilog Using Grammatical Evolution.
KR100248380B1 (en) Wire connection checker method in schematic editor