JPS63132347A - 論理回路のコンパイル方式 - Google Patents

論理回路のコンパイル方式

Info

Publication number
JPS63132347A
JPS63132347A JP61278289A JP27828986A JPS63132347A JP S63132347 A JPS63132347 A JP S63132347A JP 61278289 A JP61278289 A JP 61278289A JP 27828986 A JP27828986 A JP 27828986A JP S63132347 A JPS63132347 A JP S63132347A
Authority
JP
Japan
Prior art keywords
circuit
macro
data
link
description level
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
JP61278289A
Other languages
English (en)
Inventor
Fumiyasu Hirose
広瀬 文保
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 JP61278289A priority Critical patent/JPS63132347A/ja
Publication of JPS63132347A publication Critical patent/JPS63132347A/ja
Pending legal-status Critical Current

Links

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 〔概要〕 本発明は、論理回路のシミュレーションにおいて、現回
路の設計変更後、再び断回路のシミュレーションデータ
を作成するための回路の展開に要する時間が長く、設計
検証の効率が悪い現状を解決するため、既に展開済の現
回路のコンパイルデータを利用し、設計変更となった回
路マクロ展開範囲のみ展開前の記述レベルに戻し、その
展開範囲を新しい回路マクロで再び展開することにより
、真にデータ変更の必要な展開範囲のみに展開処理をし
ぼって再コンパイル時間を飛躍的に短縮したものである
〔産業上の利用分野〕
本発明は、論理回路設計の検証に用いられる論理シミュ
レータなどにおいて、階層的に記述された論理回路を指
定の記述レベルヘ一様に展開する論理回路のコンパイル
方式に関する。
論理設計の検証のためには、論理シミュレータは不可欠
である。設計図入力の効率化のために、設計者はシステ
ムによって用意された回路マクロや、その回路マクロを
使って自分で作成した回路マクロ等を用いて階層的な記
述により設計を行なう。一方、論理シミュレータは、製
造する部品の動作をなるべく忠実に模擬する必要がある
。そこで、階層的に上位の記述レベルで設計された回路
を、例えばゲートレベル等、指定する下位の記述レベル
に一様に展開(コンパイル)し、その回路データ上でシ
ミュレーションを行う。
論理装置の大規模化により、そこで使用される論理回路
のコンパイル時間が増大している。一方では、シミュレ
ーション専用マシンでシミュレーション自身に要する時
間が大幅に短縮されたり、EWSの導入により会話的に
回路設計が進められるようになったため、回路のコンパ
イルに要する時間のオーバへ・ノドが目立ち始め、論理
検証の効率化が求められている。
〔従来の技術〕
第6図ば階層的な記述による設計例を示すもので、アッ
プダウンカウンタ回路UDCの最終的な全体回路であり
、第7図の(a)右に示すEOR(エクスクル−シブオ
ア回路) 、 (bl右に示すMUX(マルチプレクサ
) 、 (C)右に示すDFF (Dタイプフリップフ
ロップ)はUDCを構成する各国力側の回路マクロの内
容を表している。第8図はUDCの設計の階層の状態の
説明図である。
今、仮にDFFの回路マクロのデータ内に設計ミスが発
覚し、設計変更を行ったとする。この時の従来の再コン
パイル方法を第8図に示す。まず、第7図(C1に示す
DFFの回路マクロデータを修正し、これをコンパイル
する。その他の回路マクロEOR,MUXについては変
更がないため、現回路マクロのデータをそのまま流用で
きる。従来の上記再コンパイル方式はUDCを構成する
回路マクロのデータを全てそろえて、UDC内の回路マ
クロI) F F O〜DFF3.MUXO〜MUX 
3゜EORO−EOR3に各々の回路マクロのデータを
代入してUDCを第7図ta)、 (b)、 (Co)
各左側に示すようなナントゲート(NAN)やアンドゲ
ート(AND)、ノアゲー) (NOR)、  インバ
ータ(INV)等による下位の記述レベルに再び展開す
るものであった。
〔発明が解決しようとする問題点〕
しかしながら、上記従来技術において問題となるのは、
回路変更のなかった回路マクロのデータ(MUXO〜M
UX3. EORO−EOR3)までも、設計変更のた
めの再コンパイルにおいて、再びUDCの回路マクロ表
現部分に置き換えて展開しなければならないことである
。上記従来技術のUDCの例では回路規模が小さいので
、12個ノ回路マ’)T:l (DFFO〜DFF3.
MUXO〜MUX3.EORO〜EOR3)のうち33
%にあたる4個の回路マクロ(D F F O〜DFF
3)に変更が生じたので、無駄は67%にとどまってい
るが、数十刃〜数百万ゲートからなる大規模回路では、
展開するほとんどのデータが置き換える必要のないデー
タであるということである。即ちその無駄な展開のため
にコンパイル時間が増大し、論理回路のシミュレーショ
ン等において能率の低下を招いていた。
本発明は上記問題点に鑑みて創案されたものであり、設
計変更によって論理回路の再コンパイルを行なう場合の
再コンパイル時間を大幅に短縮することを目的とする。
〔問題点を解決するための手段〕
第1図は本発明の原理説明図である。本発明における上
記目的を達成するための手段は、階層的に記述した論理
回路を指定の記述レベルに展開する論理回路のコンパイ
ル方式において、既に展開されている論理回路のコンパ
イルデータを利用し、そのコンパイルデータ上で設計変
更のあった回路マクロの展開範囲を認識する手段3と、
前記認識した展開範囲を展開前の記述レベルに戻す手段
4とを有し、前記設計変更に供ない真に再コンパイルの
必要な回路マクロの展開範囲のみを一旦展開前の記述レ
ベルに戻し、設計変更後の新しい回路マクロを用いて再
び展開することを特徴とする論理回路のコンパイル方式
である。
〔作用〕
本発明は上記構成によって、設計変更となった回路マク
ロの展開範囲を現在のコンパイルデータから認識して、
その展開部分のみを展開前の上位の記述レベル(マクロ
表現)に戻し、設計変更後の新しい回路マクロのデータ
によって、真にデータ変更の必要な展開範囲のみに展開
処理をしぼり、設計変更に係わらない部分の展開を省く
ことで無駄なコンパイル時間を減少させる。
C実施例〕 以下に本発明の実施例を図面に基づいて詳細に説明する
第1図は、本発明の一実施例の説明図でもある。
まずその構成を説明する。本実施例はデータ編集命令部
1と回路データ記憶部2から構成される。
データ編集命令部1は、下位の記述レベルで表現された
回路マクロデータを基に上位の記述レベル表現即ちマク
ロ表現の回路データを下位の記述レベルに展開し編集す
る。その展開され編集されたデータがコンパイルデータ
である。データ編集命令部1内には設計変更が指示され
た場合に機能する現コンパイルデータにおける設計変更
範囲を認識する手段3およびその設計変更範囲のみを上
位の記述レベルに戻す手段4とを有している。また回路
データ記憶部2はコンパイルデータと回路マクロデータ
等の回路データを格納する。
第2図は上記回路データの概略構造図であり、第3図は
それを前述のアップダウンカウンタ回路(U D C)
の例に対応させたものである。回路データは回路マクロ
データあるいは回路マクロを構成するモジュールあるい
は入出力ビンデータを表すノード(図中○印)とその特
定のノードをサイクル状にポインタでつなく5渾重のリ
ンク (ライフ゛ラリリンク:Libリンク、システム
リンク:SYSリンク、コールリンク: CALリンク
、ビンリンク:Pinリンク、ネットワークリンク: 
Netリンク)から構成される。回路マクロを階層表現
したデータは、全てI月りリンク上にリンクにより結合
されている。また、シミュレーションによるデパック対
象回路を下位の記述レベルに展開した回路データ(以下
ベタ回路データと記す)もLibリンク上に結合されて
いる。回路マクロを構成する下位の回路マクロを使った
モジュールは、Libリンク上の回路マクロと共にSY
Sリンクを構成している。Libリンクの回路マクロ及
びその回路マクロを構成するモジュールのそれぞれの入
出力ビンは、それぞれのモジュールと共にPinリンク
を構成している。
第4図は上記ベタ回路データの構造図である。
ベタ回路データ上ではマクロ回路が次々と下位モジュー
ルに展開されてプリミティブなモジュールまで展開され
ており、回路マクロの入出力ビンと回路マクロを構成す
るモジュールの入出力ビンのうち、同一電位となるもの
は、1つのNetリンクを構成している。Libリンク
上の回路マクロ八と、そのAを上位の回路マクロがモジ
、ニールとして使っている場合のその回路マクロの下位
のマクロを使った表現であるところのSYSリンク表現
上にある回路マクロAに対応するモジュールの全ては、
一つのCALリンクで結ばれている。
次に以上の構成による本実施例の作用を述べる。
まず、通常時のベタ回路データを作成する場合の作用は
、最初に展開すべき最上位の回路マクロをLibリンク
上でコピーする。(ノード■印にコピー)この時、CA
Lリンクは矛盾のないように張り換えられている。他の
リンクは修正不要である。
次に、ベタ回路のSYSリンクを回って、もしCALリ
ンクが存在していればCALリンクをLibリンク上の
回路マクロに到達するまで回し、その回路マクロ上のS
YSリンクをベタ回路の注目しているモジュールの後ろ
へSYSリンク」二で挿入する。このときNetリンク
、CA、Lリンクは矛盾のないように張り換えられる。
最後に、只今展開したモジュールとそのモジュール上の
Pinリンクのビンにグイ(die)マークをつける。
以上のことをベタ回路上めSYSリンクにCALリンク
が存在しなくなるまで続けることによって、現回路のベ
タ回路データが既に作成されたと判断する。
続いて、回路マクロに設計変更が生じた場合の本実施例
による再コンパイル方法を述べる。Fx 初に、ベタ回
路上で変更前の回路マクロの展開範囲を認識する手段3
 (第1図)が以下のように作用する。今、回路マクロ
Aを設計変更しようとすると、まず、新しい回路マクロ
A′を作成して、Libリンク上に挿入する。次に、現
回路マクロAのCALリンクを伝って、ベタ回路上のモ
ジュールに到達する。このモジュールはdieマークが
ついており、自分の展開データはベタ回路のS Y S
 IJンク上でこのモジュールの直後に連結しているの
で、このモジュールより回路マクロ八を構成するモジュ
ール数分だけベタ回路のSYSリンクをたどっていき、
到達するモジュールに次々に縮退マークをつけてゆく。
但し、SYSリンク上をたどって行く時にdieマーク
のついたモジュールに到達したら、それら回路マクロA
を構成するモジュールがさらに下位のマクロBであり、
展開されていることを意味するので、そのマクロBを構
成するモジュールの数をリンクたどる数に加えてそのリ
ンクをたどる数がOになるまでたどり続ける。
この結果、縮退マークのついたモジュールが回路マクロ
への展開部分であることが認識できる。
次に上記で認識された回路マクロAの展開部分(縮退マ
ークのついたモジュール)を展開前の回路マクロに戻す
手段4 (第1図)が以下のように作用する。手段4は
再びベタ回路のSYSリンク上でモジュールとして存在
する回路マクロAをみつけ、回路マクロAのPinリン
クをたどって回路マクロAの入出力ビンの各ピンを見つ
け、各々についてNetリンクを旅して、もし同一ネッ
トに属するビンが縮退マークのついているモジュールな
らばこのピンをNetリンクから削除する。以上をくり
返すことによって、Netリンクは展開前の状態に復元
される。次に、縮退マークのついたモジュールをSYS
リンク上から削除し、モジュールに付随する入出力ビン
もPinリンク上がら削除すると、SYSリンクも元の
状態に戻る。最後に、回路マクロAのモジュールおよび
ビンについたdieマークをとり消すことによって、回
路マクロへの展開範囲は完全に元の状態に復元される。
この結果、ベタ回路データでは、現回路マクロAのみが
展開前の状態に戻ったことになる。ここで、断回路マク
ロA′に現回路マクロAのCALリンクをつなぎかえ、
現回路マクロAをLibリンク上から削除することによ
り、Ljbリンクは新しくアップディトされる。最後に
、ベタ回路データを断回路マクロAで通常通り展開する
ことにより、ベタ回路データのアップディトが完了する
以上の説明を第3図、第4図のUDCO例を使用し、第
5図の本実施例のフローチャートにより説明する。上記
例において、UDC中の回路マクロDFF内に設計変更
が生じた場合の変更方法を示す。まず新しい回路マクロ
DFFをLibリンク上に挿入する。続いて設計変更を
行うLibリンク上の回路マクロDFFより出発してC
ALリンクを旅すると、ベタ回路上のDFFOに達する
。DFFは6個のジュールからなるので、UDCベタ回
路のSYSリンクを伝って6コ分のモジュール及びビン
に縮退マーク*をつける。次に、DFFOの入出力ビン
、例えば信号CLKのNetリンクを伝ってゆくとDF
FO中のNANOのピンi。
に到達する。ここには*マークがあるのでNetリンク
から取り除く。(以上DFFのマクロ化)。
この操作をくり返す(DFF3までのマクロ化)。
CLK(7)Netリンクは最終的にrUDC(7)C
LK→DFFO/NANOのi、→DFFO/NAN3
の12→・・・・・・・・・→DFF/NAN2の12
→UDCのCLKJとなり、回路マクロを展開するため
のNetリンクに戻る。次に、*マークのモジュールを
UDCのSYSリンクから取り除(と、SYSリンクも
回路マクロの形に戻る。最後にdieマークを除いて、
完全に回路マクロで記述した回路データに戻され、その
後は新しいDFFで通常通りの展開を行う。(以上DF
FO−DFF3の展開)。
上記本発明の実施例の効果を第8図に示す従来技術のフ
ローチャートにおけるステップ数とコンパイル時に操作
されるゲート数により比較して見る。従来技術において
、再コンパイルを行なう場合には13ステツプによりゲ
ート全体即ち94ゲ−トが展開操作されるのに対し、本
実施例の再コンパイルによれば、第4図から明らかなよ
うに9ステツプにより、変更のあった回路マクロに係わ
る54ゲートを操作するのみで良い。即ち、ステ・ノブ
数や操作ゲート数が少いことはコンパイル時間が少ない
ことであり、本実施例によって大幅に再コンパイル時間
を短縮することができる。この効果は、回路が大規模に
なればなるほど全体に占める操作部分の割合が少くなる
ので、大きいものとなる。
〔発明の効果〕
以上述べたように、本発明によれば、設計変更によりベ
タ回路データを再び構築する際に、ベタ回路データ上で
真に修正の必要な回路マクロについてのみデータをマク
ロ表現に戻し、再び断回路マクロで展開するため、従来
技術のように全体を展開し直す手法に比べて再コンパイ
ル時間が大幅に短縮される。
【図面の簡単な説明】
第1図は本発明の原理および一実施例の説明図、第2図
は実施例における回路データの概略構造図、 第3図はアップダウンカウンタ(UDC)における回路
データの概略構造図、 第4図はUDCにおける展開した回路データの構造図、 第5図は実施例における再コンパイル方式のフローチャ
ート、 第6図はUDCのマクロ表現図、 第7図は回路マクロ例を示す説明図、 第8図は階層設計の説明図、 第9図は従来の再コンパイル方式を示すフローチャート
である。 図中、 1・・・データ編集命令部、 2・・・回路データ記憶部、 3・・・認識する手段、 4・・・戻す手段、 である。 事遼明O反理δ°1乍゛−実亮介・10髭明図第1図 炙死例12%“→口回黛j−タり橢、略話丘昌第2図 Y・・・ブリ′つン4つンタ(uoc)lsh′*つ回
踏データ0椙む壜構工図第3図 UDC+:b□叶)L3したビ■塔テータQ禅ばし回第
4図 ス#!、#I;th→う声コンl\°イル乃六つ20−
ナイート第5図 1JDcoYり口表還図 第6図 (a)FOR 回路770イケ1乞水す誌明図 第7図 階屑護針の洸明簡 第8図

Claims (1)

  1. 【特許請求の範囲】 階層的に記述した論理回路を指定の記述レベルに展開す
    る論理回路のコンパイル方式において、既に展開されて
    いる論理回路のコンパイルデータを利用し、そのコンパ
    イルデータ上で設計変更のあった回路マクロの展開範囲
    を認識する手段(3)と、 前記認識した展開範囲を展開前の記述レベルに戻す手段
    (4)とを有し、 前記設計変更に供ない真に再コンパイルの必要な回路マ
    クロの展開範囲のみを一旦展開前の記述レベルに戻し、
    設計変更後の新しい回路マクロを用いて再び展開するこ
    とを特徴とする論理回路のコンパイル方式。
JP61278289A 1986-11-21 1986-11-21 論理回路のコンパイル方式 Pending JPS63132347A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP61278289A JPS63132347A (ja) 1986-11-21 1986-11-21 論理回路のコンパイル方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP61278289A JPS63132347A (ja) 1986-11-21 1986-11-21 論理回路のコンパイル方式

Publications (1)

Publication Number Publication Date
JPS63132347A true JPS63132347A (ja) 1988-06-04

Family

ID=17595273

Family Applications (1)

Application Number Title Priority Date Filing Date
JP61278289A Pending JPS63132347A (ja) 1986-11-21 1986-11-21 論理回路のコンパイル方式

Country Status (1)

Country Link
JP (1) JPS63132347A (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06231199A (ja) * 1993-02-02 1994-08-19 Nec Corp 回路解析方法
US6068663A (en) * 1996-04-25 2000-05-30 Nec Corporation Design support system with circuit designing data editing function
JP2015122065A (ja) * 2013-12-06 2015-07-02 シノプシス,インコーポレイティド システム検証のための障害挿入

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06231199A (ja) * 1993-02-02 1994-08-19 Nec Corp 回路解析方法
US6068663A (en) * 1996-04-25 2000-05-30 Nec Corporation Design support system with circuit designing data editing function
JP2015122065A (ja) * 2013-12-06 2015-07-02 シノプシス,インコーポレイティド システム検証のための障害挿入

Similar Documents

Publication Publication Date Title
US6298319B1 (en) Incremental compilation of electronic design for work group
US5210699A (en) Process for extracting logic from transistor and resistor data representations of circuits
JP2862886B2 (ja) Asic用計算機支援設計システム
US5150308A (en) Parameter and rule creation and modification mechanism for use by a procedure for synthesis of logic circuit designs
US6301553B1 (en) Method and apparatus for removing timing hazards in a circuit design
JP2003518666A (ja) 動的に再構成可能な論理回路のための物理設計を実現する方法
Bushnell et al. VLSI CAD tool integration using the Ulysses environment
US4954953A (en) Machine process for converting one representation of an electronic integrated circuit into another representation
Bretschneider et al. Knowledge based design flow management
JPS63132347A (ja) 論理回路のコンパイル方式
WO2023150019A1 (en) Memory instance reconfiguration using super leaf cells
JP2001159986A (ja) システムlsiのテストデータ最適化生成方式
Powell et al. The icewater language and interpreter
JP2845154B2 (ja) 論理シミュレーション用モデルの作成方法
Sakai et al. An Interactive Simulation System for Structured Logic Design--ISS
Lu et al. Linking Higher Order Logic to a VLSI CAD system
JP2600572B2 (ja) 順序回路を含む論理検証対象回路の論理検証容易化回路への変換方法とその装置
Singh et al. SIS: A system for sequential circuit synthesis
Gharehbaghi et al. A new approach for constructing logic functions after ECO
Sklyarov et al. Development system for FPGA-based digital circuits
Wuerdig et al. LEX-A Cell Switching Arcs Extractor: A Simple SPICE-Input Interface for Electrical Characterization
Aarna et al. Parallel fault simulation of digital circuits
JPH09251483A (ja) セルライブラリ作成方法
Hicks et al. Overview of semicustom IC design
JPH01137372A (ja) 半導体装置の製造方法