JPH01279372A - Production of logic circuit - Google Patents

Production of logic circuit

Info

Publication number
JPH01279372A
JPH01279372A JP63109000A JP10900088A JPH01279372A JP H01279372 A JPH01279372 A JP H01279372A JP 63109000 A JP63109000 A JP 63109000A JP 10900088 A JP10900088 A JP 10900088A JP H01279372 A JPH01279372 A JP H01279372A
Authority
JP
Japan
Prior art keywords
polarity
output
logic
parts
boolean
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
JP63109000A
Other languages
Japanese (ja)
Inventor
Michihiro Hikosaka
彦坂 満弘
Takao Niiya
新舎 隆夫
Kazuhiko Matsumoto
和彦 松本
Yukio Ikariya
碇谷 幸夫
Masato Morita
正人 森田
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.)
Hitachi Microcomputer System Ltd
Hitachi Ltd
Original Assignee
Hitachi Ltd
Hitachi Microcomputer Engineering 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 Hitachi Ltd, Hitachi Microcomputer Engineering Ltd filed Critical Hitachi Ltd
Priority to JP63109000A priority Critical patent/JPH01279372A/en
Publication of JPH01279372A publication Critical patent/JPH01279372A/en
Pending legal-status Critical Current

Links

Abstract

PURPOSE:To realize the optimum allocation of optional parts when a gate logic is produced from a given Boolean formula by giving the shared information to the Boolean formula and allocating the parts while checking the correlation between Boolean formulas with said shared information used as a key. CONSTITUTION:A binary tree structure is formed for a Boolean formula according to the priority order of logical operators and then converted into a multi- split tree structure based on the number of fines of technology. Then the multi- split trees are integrated with the shared information used as a key and a parts which satisfies the designing limitation is retrieved out of a parts group 55 while transmitting successively the polarities to the input (or output) side from the output (or input) side of the multi-split tree structure. Thus a back (or front) tracking is carried out. A design rule group 56 of the technology is applied to a logic circuit obtained in such a way. Thus an optimum logic circuit is obtained.

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明は、論理回路の製造方法に係り、特にディジタル
システムの設計に好適な論理設計の自動′化に関する。
DETAILED DESCRIPTION OF THE INVENTION [Field of Industrial Application] The present invention relates to a method for manufacturing a logic circuit, and particularly to automation of logic design suitable for designing a digital system.

〔従来の技術〕[Conventional technology]

ブール式レベルの機能論理からゲート論理を自動生成す
る試みは、古くから行われており公知例は多い(例えば
特開昭58−74971号公報、あるいは特願昭60−
233299号公報)が1人手に比しゲート数やゲート
段数が増大するという問題がある。
Attempts to automatically generate gate logic from Boolean level functional logic have been made for a long time, and there are many known examples (for example, Japanese Patent Application Laid-Open No. 58-74971, or Japanese Patent Application No. 1983-1989).
233299), there is a problem in that the number of gates and the number of gate stages increases compared to when it is done by one person.

従来は、上記公知例に記載のよう1已、両極出力から成
る部品群(2出力部品群)および単極出力から成る部品
群(1出力部品群)を対象とし、最適なゲート論理生成
を行っていた。
Conventionally, as described in the above-mentioned known example, optimal gate logic generation has been performed for a component group consisting of bipolar outputs (2-output component group) and a component group consisting of unipolar output (1-output component group). was.

〔発明が解決しようとする課題〕[Problem to be solved by the invention]

上記従来技術は、単極出力から成る部品群(1出力部品
群)および両極出力から成る部品群(2出力部品群)を
ゴール式から最適に割当てる手法も実現するものである
が、一般の多出力から成る部品群(2以上の出力を持つ
部品群)の割当てについて配慮されておらず、適用対象
となる部品群が制限されるという問題があった。
The above conventional technology also realizes a method of optimally allocating a component group consisting of unipolar output (1-output component group) and a component group consisting of bipolar output (2-output component group) from the goal formula, but it is not possible to There was a problem in that the allocation of parts groups consisting of outputs (parts groups having two or more outputs) was not considered, and the parts groups to which the method could be applied were limited.

本発明の目的は、与えられたゴール式からゲート論理を
生成する際に、多出力部品を含む任意の部品群の中から
最適な部品を選択し、割当てる手法を提供することにあ
る6 〔課題を解決するための手段〕 上記目的は、予めブール式に共有情報を付与し、この共
有情報をキーにブール式間の相関関係を調べながら部品
割当てを実現することにより、達成される。これは、論
理回路の部品の各出力端子が入力端子の論理関数により
一義的に論理表現可能なこと、およびそれら論理表現が
多出力部品において必ずしも同一にならないこと等に着
目した結果である。
An object of the present invention is to provide a method for selecting and allocating optimal components from an arbitrary component group including multi-output components when generating gate logic from a given goal expression. [Means for Solving] The above object is achieved by assigning shared information to Boolean expressions in advance and realizing component allocation while examining correlations between Boolean expressions using this shared information as a key. This is a result of focusing on the fact that each output terminal of a logic circuit component can be logically expressed uniquely by the logic function of the input terminal, and that these logical expressions are not necessarily the same in multi-output components.

〔作用〕[Effect]

ブール式に付随する共有情報は、論理設計者により予め
付与される1部品割当て時、共有情報を有するブール式
に関しては、それらブール式群の機能を満足する部品を
選択する。他方、共有情報を有さないブール式に関して
は、個別に各ブール式の機能を満足する部品を選択する
。共有情報の有無により、展開対象ブール式の範囲が決
まる。
The shared information accompanying the Boolean expressions is given in advance by the logic designer. When one part is allocated, for the Boolean expressions having the shared information, a part that satisfies the function of the group of Boolean expressions is selected. On the other hand, for Boolean expressions that do not have shared information, components that satisfy the function of each Boolean expression are individually selected. The range of Boolean expressions to be expanded is determined by the presence or absence of shared information.

したがって、与えられた条件のもとで、多出力部品を含
めた最適な部品割当てが可能となるので、人手展開と同
等な展開性能が得られる。
Therefore, under given conditions, it is possible to optimally allocate parts, including multi-output parts, so that deployment performance equivalent to manual deployment can be obtained.

〔実施例〕〔Example〕

まず、第2図を参照して、本発明を実行するためのハー
ドウェア構成の一例を説明する。入出力装置52は、ブ
ール水とその出力および変数の極性を表現した機能論理
図51を入力し1機能論理ファイル53を作成するため
に用いられる。処理装置54は、先に入力した機能論理
ファイル53、予め準備されたテクノロジーの部品群5
5および該テクノロジーの最適化に必要な設計ルール群
56をもとに、以降に述べる処理を実施し、ゲート論理
を生成する6人出力装置57は、先に生成したゲート論
理をゲート論理ファイル58に出力し、さらにゲート論
理図59を生成するために用いられる。
First, an example of a hardware configuration for carrying out the present invention will be described with reference to FIG. The input/output device 52 is used to input a functional logic diagram 51 expressing Boolean water, its output, and the polarity of variables to create a 1-function logic file 53. The processing device 54 stores the previously input functional logic file 53 and the technology component group 5 prepared in advance.
5 and a set of design rules 56 necessary for optimization of the technology, an output device 57 generates gate logic by performing the processing described below and converts the previously generated gate logic into a gate logic file 58. and is used to generate a gate logic diagram 59.

次に、本発明の実施手順の概要を説明する。ブール式を
論理オペレータの優先順位にしたがって2本木構造を作
成し、該テクノロジーのファンイン数により多分木構造
に変換する。次に、共有情報をキーに多分木を統合した
後、多分木構造の出力側(または入力側)から順次極性
を入力側(または出力側)に伝搬させながら設計制約を
満足する部品を部品群55から検索し後方追跡(または
前方追跡)する。これにより得られた論理@路に  ′
該テクノロジーの設計ルール群56を適用し、最適な論
理回路を製造する。
Next, an outline of the implementation procedure of the present invention will be explained. A two-tree structure is created for the Boolean expression according to the priority of logical operators, and it is converted into a multi-tree structure according to the fan-in number of the technology. Next, after integrating the multi-tree using the shared information as a key, parts that satisfy the design constraints are created as a group of parts while sequentially propagating the polarity from the output side (or input side) of the multi-tree structure to the input side (or output side). 55 and perform backward tracking (or forward tracking). In the logic @ path obtained by this ′
The design rule group 56 of the technology is applied to manufacture an optimal logic circuit.

以下、本発明の実施手順を詳細に説明する。なお、後方
追跡も前方追跡も基本的に同じ手順であるので、以下の
説明は、出力側から入力側に後方追跡する手順に限定す
る。
Hereinafter, the implementation procedure of the present invention will be explained in detail. Note that since backward tracking and forward tracking are basically the same procedure, the following explanation will be limited to the procedure of backward tracking from the output side to the input side.

第1図(a)は、ブール式を記述した機能論理図の1例
である。ブール式をボックスの中に、ブール式の出力極
性および変数の極性をボックスの切り口に記述する。ボ
ックスに丸印を介して出入りする変数は負極を、丸印を
介さずに出入りする変数は正極を示す、共有情報(以下
、展開グループ番号と呼ぶ)は、ブール式の先頭に記述
する。
FIG. 1(a) is an example of a functional logic diagram describing a Boolean expression. Write the Boolean expression in a box, and write the output polarity of the Boolean expression and the polarity of the variable on the cut edge of the box. Variables that enter and exit the box via a circle indicate a negative pole, and variables that enter and exit a box without a circle indicate a positive pole.Shared information (hereinafter referred to as an expansion group number) is written at the beginning of the Boolean expression.

本例では、出力変数01,02および03のブール式は
展開グループ番号1を、出力変数P1およびP2のブー
ル式は展開グループ番号2を持つ。
In this example, the Boolean expressions for output variables 01, 02, and 03 have expansion group number 1, and the Boolean expressions for output variables P1 and P2 have expansion group number 2.

便宜上、ブール式は正論理表現で、部品群は第3図に示
すテクノロジーの基本部品で考える。第1ステツプでは
、出力変数01,02,03.PLおよびP2で示され
る各ブール式をボーランド変換することにより2分木構
造を作成する。この2分木構造を第1図(b)に示す。
For convenience, we will consider the Boolean expression as a positive logic expression, and the parts group as the basic parts of the technology shown in Figure 3. In the first step, output variables 01, 02, 03 . A binary tree structure is created by performing Borland transformation on each Boolean expression represented by PL and P2. This binary tree structure is shown in FIG. 1(b).

第2ステツプでは、上記第1ステツプで作成した2分木
構造上で、連続する同−論理オペレータを持つノードに
ついて、該テクノロジーで対応相は可能な部品群の最大
ファンイン数以内にノードを統合し多分木構造に変換す
る。具体的には、第1図(b)のノード8および9が連
続する論理積オペレータを持つノードであるので、これ
らを第1図(C)のノード21に変換する。他ノードに
ついても同様な処理を施すことにより、第1図(b)は
、第1図(c)の様に変換できる。
In the second step, on the binary tree structure created in the first step above, nodes with consecutive same logical operators are integrated within the maximum fan-in number of the parts group that can be supported by the technology. and convert it to a multi-tree structure. Specifically, since nodes 8 and 9 in FIG. 1(b) are nodes having consecutive logical product operators, these are converted into node 21 in FIG. 1(c). By applying similar processing to other nodes, the image shown in FIG. 1(b) can be converted into the image shown in FIG. 1(c).

第3ステツプでは、上記第2ステツプで作成した多分水
橋造上で、同一展開グループ番号を持つ多分木群につい
て、各ノード間の機能対応を兄ながら多分木統合を行う
。具体的には、第1図(C)の展開グループ番号1の多
分木群(出力変数が01.02および03の多分木)で
、ノード21と23は、それぞれノード24と25に機
能対応があるので、第1図(d)の左図の様に多分本統
合できる。展開グループ番号2の多分木群についても同
様に第1図(d)の右図の様に多分木統合できる。
In the third step, multitree integration is performed on the polygon Mizuhashi structure created in the second step, regarding polytree groups having the same expansion group number, while maintaining functional correspondence between nodes. Specifically, in the multitree group with expansion group number 1 in Figure 1(C) (multitree with output variables 01.02 and 03), nodes 21 and 23 have functional correspondences to nodes 24 and 25, respectively. Therefore, it is possible to perform main integration as shown in the left diagram of Figure 1(d). Similarly, the multitree group of expansion group number 2 can be integrated as shown in the right diagram of FIG. 1(d).

第4ステツプでは、多分木統合を終了した多分木+lv
!造を出力側ノードから設計制約を満足する基本部品に
変換する。具体的には、第1図(d)の左図の多分木は
、論理機能がAND−OR1出力側ノード29の出力極
性が負極でかつファンイン数が2、入力側ノード28お
よび30のファンイン数が3でかついずれも出力側ノー
ド29への接続とは別に外部への出力極性が正極である
ので、これらの制約条件を満足する基本部品を第3図の
部品群から選択(制約条件を満足する基本部品が複数存
在するときは、部品選択のための優先順序付は等により
決定)し、第1図(e)の左図の様に変換する。同様に
して、展開グループ番号2で表現される第1図(d)の
右図の多分木は、第1図(e)の右図の基本部品に変換
する。
In the fourth step, the multi-tree +lv that has completed the multi-tree integration
! Convert the structure from the output node into a basic part that satisfies the design constraints. Specifically, the multitree shown in the left diagram of FIG. 1(d) has a logic function of AND-OR1, an output polarity of output node 29 is negative, a fan-in number of 2, and fans of input nodes 28 and 30. Since the number of inputs is 3 and the output polarity to the outside is positive in addition to the connection to the output side node 29, basic parts that satisfy these constraints are selected from the parts group in Figure 3 (constraints When there are a plurality of basic parts that satisfy the following, the priority order for parts selection is determined by (etc.), and the conversion is performed as shown in the left diagram of FIG. 1(e). Similarly, the multitree shown in the right diagram of FIG. 1(d) expressed by expansion group number 2 is converted into the basic component shown in the right diagram of FIG. 1(e).

第5ステツプでは、上記第4ステツプで変換された基本
部品の入力極性を、そのファンイン先ノードの出力極性
とし、出力極性が決定されたノードについて、上記第4
ステツプと同様にして基本部品に変換する。以下、順次
極性を入力側に伝搬させ、すべてのノードを基本部品に
変換する。本ステップ以降の具体例は、便宜上、省略す
る。
In the fifth step, the input polarity of the basic component converted in the fourth step is set as the output polarity of the fan-in destination node.
Convert to basic parts in the same way as steps. Thereafter, the polarity is sequentially propagated to the input side and all nodes are converted into basic parts. Specific examples after this step will be omitted for convenience.

第6ステツプでは、上記第5ステツプで変換された基本
部品のネット構造について、そのプライマリ入力極性と
ボックスの対応する入力極性をチエツクし、論理的な矛
盾があれば、極性合わせのアンプを挿入する。
In the 6th step, the net structure of the basic component converted in the 5th step is checked for its primary input polarity and the corresponding input polarity of the box, and if there is a logical contradiction, an amplifier with matching polarity is inserted. .

第7ステツプでは、上記第6ステツプで得られた論理回
路に、予め抽出された設計ルールに基づいて回路変換も
施し、最適な論理回路を生成する。
In the seventh step, the logic circuit obtained in the sixth step is also subjected to circuit transformation based on design rules extracted in advance to generate an optimal logic circuit.

第3図の基本部品との対応はないが、第4図に最適化の
ための設計ルールの1例を示す。
Although there is no correspondence with the basic parts shown in FIG. 3, FIG. 4 shows an example of a design rule for optimization.

本実施例によれば、簡単にかつ最適な論理回路を製造で
きる効果がある。
According to this embodiment, it is possible to easily manufacture an optimal logic circuit.

〔発明の効果〕〔Effect of the invention〕

本発明によれば、ブール式に共有情報を付与することに
より、ブール式群から任意の多出力部品を選択でき、最
適な論理回路を生成することができる。生成される論理
回路は、人手間等の展開性能を有する。また、処理手順
が比較的簡単であるので論理設計工程への適用により、
設計工数の節減と製品の質の向上をもたらす。
According to the present invention, by adding shared information to Boolean expressions, any multi-output component can be selected from a group of Boolean expressions, and an optimal logic circuit can be generated. The generated logic circuit has development performance such as manual labor. In addition, since the processing procedure is relatively simple, it can be applied to the logical design process.
This reduces design man-hours and improves product quality.

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

第1図は本発明を用いて論理回路を製造する過程の一例
を示す図、第2図は本発明を実施するためのハードウェ
ア構成の一例を示すブロックダイヤグラム、第3図は特
定テクノロジーの部品群を示す図、第4図はあるテクノ
ロジーの最適化のための変換ルールの一例を示す図であ
る。 1・・・負極性、2・・・正極性、3・・・両極性、4
・・・入力変数、5・・・出力変数、6・・・展開グル
ープ番号、7・・・ブール式、8〜31・・ノード、3
2〜35・・・基本部品、52.57・・・入出力装置
rt、53・・・機能論理ファイル、54・・・データ
処理装置、55・・・部、情  。 ファイル、56・・・設計ルールファイル、58・・・
ゲート論理ファイル。 代理人 弁理士 小J11勝すy71 −ノS 箒 1図 第 2[Z] 早 3 国
Fig. 1 is a diagram showing an example of the process of manufacturing a logic circuit using the present invention, Fig. 2 is a block diagram showing an example of a hardware configuration for implementing the present invention, and Fig. 3 is a diagram showing parts of specific technology. FIG. 4 is a diagram showing an example of a conversion rule for optimization of a certain technology. 1...Negative polarity, 2...Positive polarity, 3...Bipolarity, 4
...Input variable, 5...Output variable, 6...Development group number, 7...Boolean expression, 8-31...Node, 3
2 to 35... Basic parts, 52.57... Input/output device rt, 53... Functional logic file, 54... Data processing device, 55... Section, information. File, 56...Design rule file, 58...
Gate logic file. Agent Patent Attorney Elementary J11 Katsuy71 -NoS Houki 1 Figure 2 [Z] Early 3 Country

Claims (1)

【特許請求の範囲】 1、ブール式表現された機能論理を特定テクノロジーの
論理回路で製造するに際し、ゴール式の出力と変数の極
性を正または負論理で統一的に与える手段と、同一部品
を共有するための情報をブール式に与える手段と、特定
テクノロジーの製造単位となる部品毎にファンイン数・
ファンアウト数・消費電力・部品ディレイ・論理機能(
論理積、論理和等)と入出力端子の極性を正または負論
理で統一的に表現し、これを参照する手段とを具備し、
前記ブール式を演算子・変数の二分木構造に変換した後
、該テクノロジーの論理機能で写像可能な範囲内での演
算子統合による多分木構造変換を施し、前記ブール式に
付与された同一部品の共有情報に基づき多分木構造を統
合し、該ブール式の出力極性(または入力極性)を鍵に
して、前記部品表を参照して論理機能・出力極性(また
は入力極性)を満足する部品を探し、これで求めた部品
の入力極性(または出力極性)を次の部品選択のための
出力極性(または入力極性)として用い未処理多分木が
なくなるまで順次後方(または前方)追跡を続け、多分
木を部品に写像していくことで目的のブール式を満足す
る組合せ回路を簡単にかつ最適に実現することを特徴と
する論理回路の製造方法。 2、前記テクノロジーの最適な設計ルールを与える手段
を具備し、前記多分木を部品に写像する過程にて必要に
応じ該設計ルールを適用することで最適な組合せ回路を
実現することを特徴とする特許請求の範囲第1項記載の
論理回路の製造方法。
[Claims] 1. When manufacturing functional logic expressed in Boolean expressions using logic circuits of a specific technology, there is a means for uniformly providing the output of the goal expression and the polarity of variables with positive or negative logic, and the same parts. A means of providing Boolean information for sharing, and fan-in numbers and
Fan-out number, power consumption, component delay, logic function (
(logical product, logical sum, etc.) and a means for uniformly expressing the polarity of input/output terminals in positive or negative logic and referring to this,
After converting the Boolean expression into a binary tree structure of operators and variables, a multi-tree structure conversion is performed by integrating operators within the range that can be mapped by the logic function of the technology, and the same parts added to the Boolean expression are The multi-tree structure is integrated based on the shared information of the Boolean expression, and the output polarity (or input polarity) of the Boolean expression is used as a key to find the parts that satisfy the logical function and output polarity (or input polarity) by referring to the parts list. Search, and use the input polarity (or output polarity) of the component found in this way as the output polarity (or input polarity) for the next component selection, and continue sequential backward (or forward) tracking until there are no unprocessed polygon trees. A method for manufacturing a logic circuit characterized by easily and optimally realizing a combinational circuit that satisfies a target Boolean expression by mapping a tree to parts. 2. It is characterized by comprising means for providing an optimal design rule for the technology, and realizing an optimal combinational circuit by applying the design rule as necessary in the process of mapping the multitree to a component. A method for manufacturing a logic circuit according to claim 1.
JP63109000A 1988-05-06 1988-05-06 Production of logic circuit Pending JPH01279372A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP63109000A JPH01279372A (en) 1988-05-06 1988-05-06 Production of logic circuit

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP63109000A JPH01279372A (en) 1988-05-06 1988-05-06 Production of logic circuit

Publications (1)

Publication Number Publication Date
JPH01279372A true JPH01279372A (en) 1989-11-09

Family

ID=14499031

Family Applications (1)

Application Number Title Priority Date Filing Date
JP63109000A Pending JPH01279372A (en) 1988-05-06 1988-05-06 Production of logic circuit

Country Status (1)

Country Link
JP (1) JPH01279372A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05174098A (en) * 1991-12-25 1993-07-13 Kawasaki Steel Corp Logic circuit forming method
US6035108A (en) * 1996-10-17 2000-03-07 Nec Corporation Figure layout compaction method and compaction device

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05174098A (en) * 1991-12-25 1993-07-13 Kawasaki Steel Corp Logic circuit forming method
US6035108A (en) * 1996-10-17 2000-03-07 Nec Corporation Figure layout compaction method and compaction device

Similar Documents

Publication Publication Date Title
Yeh et al. OBDD-based evaluation of k-terminal network reliability
US5257201A (en) Method to efficiently reduce the number of connections in a circuit
Possani et al. Graph-based transistor network generation method for supergate design
US5991524A (en) Cluster determination for circuit implementation
JPH04127275A (en) Technology mapping system for combinational circuit in automatic synthesis of lsi logic circuit
Muroga et al. Design of optimal switching networks by integer programming
US20030105785A1 (en) Method and apparatus for verification of digital arithmetic circuits by means of an equivalence comparison
Homobono et al. Connectivity of Imase and Itoh digraphs
JPH01279372A (en) Production of logic circuit
Pal An algorithm for optimal logic design using multiplexers
US5881274A (en) Method and apparatus for performing add and rotate as a single instruction within a processor
Kania A technology mapping algorithm for PAL-based devices using multi-output function graphs
CN113255257B (en) S box circuit optimization method and system based on process library
Borowik et al. Logic synthesis method for pattern matching circuits implementation in FPGA with embedded memories
JPS62194578A (en) Production of logic circuit
JPH06149927A (en) Processing method for conjuncture normal form
Vijayakumari et al. An improved design of combinational digital circuits with multiplexers using genetic algorithm
JP3166521B2 (en) Logic circuit generation method
JPH04153780A (en) Logical circuit composing method
JPH04124775A (en) Method for generating logic circuit
JPS62297974A (en) Production system for logic circuit
Solovjev et al. The universal algorithm for fitting targeted to complex programmable logic devices
JPH08153129A (en) Reuse facilitating device
JPH03131976A (en) Production of logical circuit
JPH05165918A (en) Generating method for logic circuit