JPH01309185A - Asic用計算機支援設計システム - Google Patents
Asic用計算機支援設計システムInfo
- Publication number
- JPH01309185A JPH01309185A JP1007550A JP755089A JPH01309185A JP H01309185 A JPH01309185 A JP H01309185A JP 1007550 A JP1007550 A JP 1007550A JP 755089 A JP755089 A JP 755089A JP H01309185 A JPH01309185 A JP H01309185A
- Authority
- JP
- Japan
- Prior art keywords
- integrated circuit
- conditions
- flowchart
- operations
- hardware
- 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.)
- Granted
Links
- 238000013461 design Methods 0.000 claims abstract description 57
- 238000004519 manufacturing process Methods 0.000 claims abstract description 16
- 238000006243 chemical reaction Methods 0.000 claims abstract description 4
- 238000000034 method Methods 0.000 claims description 34
- 230000006870 function Effects 0.000 claims description 27
- 230000009471 action Effects 0.000 claims description 20
- 230000007704 transition Effects 0.000 claims description 12
- 238000011960 computer-aided design Methods 0.000 claims description 10
- 239000010432 diamond Substances 0.000 claims description 7
- 230000008569 process Effects 0.000 claims description 6
- 229910003460 diamond Inorganic materials 0.000 claims 2
- 230000004044 response Effects 0.000 claims 1
- 238000013473 artificial intelligence Methods 0.000 abstract description 4
- XUIMIQQOPSSXEZ-UHFFFAOYSA-N Silicon Chemical compound [Si] XUIMIQQOPSSXEZ-UHFFFAOYSA-N 0.000 abstract description 2
- 229910052710 silicon Inorganic materials 0.000 abstract description 2
- 239000010703 silicon Substances 0.000 abstract description 2
- 238000010586 diagram Methods 0.000 description 16
- 238000005516 engineering process Methods 0.000 description 8
- 238000005457 optimization Methods 0.000 description 6
- 235000013361 beverage Nutrition 0.000 description 5
- 238000012360 testing method Methods 0.000 description 5
- 238000004088 simulation Methods 0.000 description 4
- 101100316753 Arabidopsis thaliana VAL2 gene Proteins 0.000 description 3
- 230000008859 change Effects 0.000 description 3
- 238000012938 design process Methods 0.000 description 3
- 230000007246 mechanism Effects 0.000 description 3
- 238000013459 approach Methods 0.000 description 2
- 238000003745 diagnosis Methods 0.000 description 2
- 238000003780 insertion Methods 0.000 description 2
- 230000037431 insertion Effects 0.000 description 2
- 230000002452 interceptive effect Effects 0.000 description 2
- 102100034004 Gamma-adducin Human genes 0.000 description 1
- 101000799011 Homo sapiens Gamma-adducin Proteins 0.000 description 1
- 101100409543 Homo sapiens PSMA3 gene Proteins 0.000 description 1
- 102100035908 Proteasome subunit alpha type-3 Human genes 0.000 description 1
- 101100409549 Spinacia oleracea PAG1 gene Proteins 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 239000004020 conductor Substances 0.000 description 1
- 239000000470 constituent Substances 0.000 description 1
- 239000013256 coordination polymer Substances 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 230000006378 damage Effects 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 230000014509 gene expression Effects 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 230000000638 stimulation Effects 0.000 description 1
- 238000003860 storage Methods 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 238000012549 training Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
- 238000010200 validation analysis Methods 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
- G06F30/39—Circuit design at the physical level
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
Landscapes
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Evolutionary Computation (AREA)
- Geometry (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Design And Manufacture Of Integrated Circuits (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
産業上の利用分野
この発明は集積回路の設計に関し、特に集積回路を設計
する計算機支援自動設計方法と設計装置に関するもので
ある。
する計算機支援自動設計方法と設計装置に関するもので
ある。
従来の技術
特定用途向集積回路(application sp
eciricintegrated circuit
以下ASICという)はマイクロプロセッサやメモ
リチップなどの汎用R積回路チップとは異なり、特定の
機能を実行するように設計された集積回路チップのこと
である。VLSI回路設計に特別な知識を有する高級な
設計技術者はASICの設計を担当させられる。設計過
程においては、VLS I設計技術者は実現すべき特別
の方針ないしは目的と当該集積回路によって行うべき作
業(タスク)を考慮し、各コンポーネント間の必要な相
互接続と七もに、所望の機能や作用を実行するに要する
種々のハードウェア部品を決定するための、構造レベル
での設計仕様書を作成する。これらの部品間の同期動作
を行なうためにシステム制御装置をも設計しなければな
らない。この作業は、必要な素子間の接続、信号レベル
の互換性、タイミング互換性、物理的配置等と同様に所
望の目的や方針を達成するために要する種々のハードウ
ェア部品の全般的なかつ豊富な知識を必要とする。各設
計過程において、設計者は長い、単調な解析をしなけれ
ばならない。VLS■設計技術者によって作成された設
計仕様書は、たとえば回路図、回路パラメータ、あるい
は特別な六−ドウエア記述7N(HDLS)などの形式
で示される0構造レベルでの設計仕様書から、ハードウ
ェア部品と相互接続についての記述が、集積回路チップ
の実際の微細構造の特徴を斜述する具体的チップ配置レ
ベルの記述に変換される。この具体的チップ配置レベル
の記述によって当該チップを製造するのに必要なマスク
データを供給する。
eciricintegrated circuit
以下ASICという)はマイクロプロセッサやメモ
リチップなどの汎用R積回路チップとは異なり、特定の
機能を実行するように設計された集積回路チップのこと
である。VLSI回路設計に特別な知識を有する高級な
設計技術者はASICの設計を担当させられる。設計過
程においては、VLS I設計技術者は実現すべき特別
の方針ないしは目的と当該集積回路によって行うべき作
業(タスク)を考慮し、各コンポーネント間の必要な相
互接続と七もに、所望の機能や作用を実行するに要する
種々のハードウェア部品を決定するための、構造レベル
での設計仕様書を作成する。これらの部品間の同期動作
を行なうためにシステム制御装置をも設計しなければな
らない。この作業は、必要な素子間の接続、信号レベル
の互換性、タイミング互換性、物理的配置等と同様に所
望の目的や方針を達成するために要する種々のハードウ
ェア部品の全般的なかつ豊富な知識を必要とする。各設
計過程において、設計者は長い、単調な解析をしなけれ
ばならない。VLS■設計技術者によって作成された設
計仕様書は、たとえば回路図、回路パラメータ、あるい
は特別な六−ドウエア記述7N(HDLS)などの形式
で示される0構造レベルでの設計仕様書から、ハードウ
ェア部品と相互接続についての記述が、集積回路チップ
の実際の微細構造の特徴を斜述する具体的チップ配置レ
ベルの記述に変換される。この具体的チップ配置レベル
の記述によって当該チップを製造するのに必要なマスク
データを供給する。
大規模集積回路(VL’S[)技術の発展によって非常
に複IIIな回路システムが単一のチップに形成される
ようになっている。その慢雑さと早期に■LS+チップ
を設計するようにという要求とで、多量性と、特別の用
途の増加とに対してコンピュータ支援設計即ちCAD技
術を用いる必要がある。
に複IIIな回路システムが単一のチップに形成される
ようになっている。その慢雑さと早期に■LS+チップ
を設計するようにという要求とで、多量性と、特別の用
途の増加とに対してコンピュータ支援設計即ちCAD技
術を用いる必要がある。
CA D技術は、集積回路の構造レベルと物理的配置レ
ベルとの両面において成功裡に集積回路の設計と検査と
に用いられている。たとえばCADシステムはVLS
Iの構造レベルの記述を実際の製造に必要な物理的配置
(レイアウト)レベルでの微細構造のマスクデータに変
換する作業を支援することに用いられている。現存する
CADシステムはVLS Iの設計工程を容易にするの
に役立ってはいるが、現在の実務は高度のVLS I設
計技術者が必要な構造レベルのハードウェア記述を作成
することが必要である。
ベルとの両面において成功裡に集積回路の設計と検査と
に用いられている。たとえばCADシステムはVLS
Iの構造レベルの記述を実際の製造に必要な物理的配置
(レイアウト)レベルでの微細構造のマスクデータに変
換する作業を支援することに用いられている。現存する
CADシステムはVLS Iの設計工程を容易にするの
に役立ってはいるが、現在の実務は高度のVLS I設
計技術者が必要な構造レベルのハードウェア記述を作成
することが必要である。
そのような集積回路のハードウェア記述を作成できる高
度の技術を身につけた技術者は少ししかいない。利用可
能なVLSI CADツールを用いてもこの種の設計は
長時間を要し、また人的作業を伴うから誤りが発生する
可能性もある。カスタム集積回路のより良い、かつ安価
な方法が要望されている。
度の技術を身につけた技術者は少ししかいない。利用可
能なVLSI CADツールを用いてもこの種の設計は
長時間を要し、また人的作業を伴うから誤りが発生する
可能性もある。カスタム集積回路のより良い、かつ安価
な方法が要望されている。
課題を解決する手段と作用
99発明のCADシステムと方法は理解容易な機能レベ
ルの表現を用いて、目的とする集積回路の機能的必要事
項を使用者が決定でき、かつ特有の具体的機能を実行す
ることができるASICを直接作成するに要する詳細な
情報を上記機能的必要事項から発生し得る。このように
して、本発明は、高度のVLS’l設計技術が有してい
る特別な専門家の知識を有しないASIC設計者、技術
者でなくても、設計と製造を可能にしたものである。
ルの表現を用いて、目的とする集積回路の機能的必要事
項を使用者が決定でき、かつ特有の具体的機能を実行す
ることができるASICを直接作成するに要する詳細な
情報を上記機能的必要事項から発生し得る。このように
して、本発明は、高度のVLS’l設計技術が有してい
る特別な専門家の知識を有しないASIC設計者、技術
者でなくても、設計と製造を可能にしたものである。
上述の所望ASICの機能的な仕様は、リスト形式や好
ましくはフローチャートの形式などの適宜な仕方で決定
することができる。フローチャートハ種々の熟練レベル
と訓練度とを有するソフトウェア技術者やハードウェア
技術者が容易に理解でき、論理動作の順序を記述するの
に極めて有効である。本発明のシステムと方法はフロー
チャートから(或いは池の機能的な仕様書から)、機能
的仕様を、ASICを直接製造するのに使用できる構造
レベルの定義に翻訳する。この構造レベルの定義は、所
定の機能の仕様を完成するために必要す集積回路のハー
ドウェアセルのリストをも含んでいる。これらのセルは
種々の機能と技術的仕様あるいは明細を実現するための
予じめ設計されたハードウェア素子を記憶させた素子ラ
イブラリから選択される。さらに、この発明はシステム
コントローラと選択された集積回路用ハードウェア素子
の制御経路をも発生する。ハードウェア素子のリストと
その相互接続の必要条件はネットリストの形式で表わさ
れる。公知のマニュアルta 作または既存のVLSI
CAD配置システムを用いて、ネットリストから、
チップ形式のASICを製造するのに必要な、詳細なチ
ップレベルのマスクデータなどの幾何学的図形情報を発
生させることができる。
ましくはフローチャートの形式などの適宜な仕方で決定
することができる。フローチャートハ種々の熟練レベル
と訓練度とを有するソフトウェア技術者やハードウェア
技術者が容易に理解でき、論理動作の順序を記述するの
に極めて有効である。本発明のシステムと方法はフロー
チャートから(或いは池の機能的な仕様書から)、機能
的仕様を、ASICを直接製造するのに使用できる構造
レベルの定義に翻訳する。この構造レベルの定義は、所
定の機能の仕様を完成するために必要す集積回路のハー
ドウェアセルのリストをも含んでいる。これらのセルは
種々の機能と技術的仕様あるいは明細を実現するための
予じめ設計されたハードウェア素子を記憶させた素子ラ
イブラリから選択される。さらに、この発明はシステム
コントローラと選択された集積回路用ハードウェア素子
の制御経路をも発生する。ハードウェア素子のリストと
その相互接続の必要条件はネットリストの形式で表わさ
れる。公知のマニュアルta 作または既存のVLSI
CAD配置システムを用いて、ネットリストから、
チップ形式のASICを製造するのに必要な、詳細なチ
ップレベルのマスクデータなどの幾何学的図形情報を発
生させることができる。
以下に詳細に述べる本発明のシステムと方法の好ましい
実施例においては、知識ベースンリコンコンパイラ(K
nowledge based 5ilicon
compitar)(略してKBSCという))と
弥する。K、BSCは人工知能(artificial
Cartificeal 1ntell ige
nce)とエキスパート(expert)システム技術
に基いてなされたASICの設計技術である。KBSC
の使用者のインターフェイスはフローチャートエディタ
(flow chart editor)であり、こ
のフローチャートエディタは、設計者がフローチャート
形式でVLS Iシステムを表わすことができるもので
ある。KBSCはVLS l設計における高度のエキス
パート化技術を有スるエキスパートASIC設計者から
抽出した知識データベースを備えた知識ベースエキスパ
ートシステムを用いたものであり、フローチャートがら
、選択されたハードウェア素子と各素子の相互接続条件
を記述したネ、1、リストを発生するものである。
実施例においては、知識ベースンリコンコンパイラ(K
nowledge based 5ilicon
compitar)(略してKBSCという))と
弥する。K、BSCは人工知能(artificial
Cartificeal 1ntell ige
nce)とエキスパート(expert)システム技術
に基いてなされたASICの設計技術である。KBSC
の使用者のインターフェイスはフローチャートエディタ
(flow chart editor)であり、こ
のフローチャートエディタは、設計者がフローチャート
形式でVLS Iシステムを表わすことができるもので
ある。KBSCはVLS l設計における高度のエキス
パート化技術を有スるエキスパートASIC設計者から
抽出した知識データベースを備えた知識ベースエキスパ
ートシステムを用いたものであり、フローチャートがら
、選択されたハードウェア素子と各素子の相互接続条件
を記述したネ、1、リストを発生するものである。
実施例
第1a図、第1b図1、第1c図は集積回路設計を表わ
す3つの異なったレベルを示す。第1a図はフローチャ
ート形式の機能的あるいは動作上の表現を示す。フロー
チャートはアルゴリズムの図形的表現であり、2種のブ
ロックまたは状態、即ち動作と条件(あるいは決定)か
ら成り立っている。
す3つの異なったレベルを示す。第1a図はフローチャ
ート形式の機能的あるいは動作上の表現を示す。フロー
チャートはアルゴリズムの図形的表現であり、2種のブ
ロックまたは状態、即ち動作と条件(あるいは決定)か
ら成り立っている。
フローチャートでは動作は矩形状のブロックにて表わさ
れ、条件(、ま菱形で表わされる。各動作及び各条件間
の移行は矢印付の線で示される。第1b図は集積回路の
構造レベルあるいは論理表現レベルを示す。この表現に
おいては、ブロックは種々の機能を実行する集積回路の
ハードウェア素子を示すために用いられ、ブロックを結
ぶ線は各ブロック間のデータの流れや制御信号の通路(
パス)を示す。ブロックはたとえば、加算器、・比較器
レジスタ、システムコントローラなどのハードウェア素
子を示す。第1c図は集積回路設計の具体的レイアウト
レベルの表現であり、集積回路を構成する装置と接続導
体を実際に製造するのに必要な詳細なマスクデータを、
提供する。
れ、条件(、ま菱形で表わされる。各動作及び各条件間
の移行は矢印付の線で示される。第1b図は集積回路の
構造レベルあるいは論理表現レベルを示す。この表現に
おいては、ブロックは種々の機能を実行する集積回路の
ハードウェア素子を示すために用いられ、ブロックを結
ぶ線は各ブロック間のデータの流れや制御信号の通路(
パス)を示す。ブロックはたとえば、加算器、・比較器
レジスタ、システムコントローラなどのハードウェア素
子を示す。第1c図は集積回路設計の具体的レイアウト
レベルの表現であり、集積回路を構成する装置と接続導
体を実際に製造するのに必要な詳細なマスクデータを、
提供する。
既に述べたように、構造レベルでの集積回路設計は高度
でVLS l設計について専門化した設計技術者が望ま
れる。しかしながら、この発明のKBSCシステムによ
ればVLS l設計のエキスパート化がなされ、また該
エキスパート化が本発明により応用されて、集積回路は
機能レベルで設計され得る。論理回路の図形表現化に代
えてフローチャートで設計者が作業を行なえるようにし
たことによってカスタム集積回路の設計作業を容易にか
つ迅速化して、かつ安価化するとともに、信頼度を高め
得る。動作レベルの簡単なフローチャートを用いて設計
者はアルゴリズムを取り扱い、設計者は目的の仕事(t
ask)を完成するための具体的手段を知るよりはむし
ろその仕事をするに必要な 。
でVLS l設計について専門化した設計技術者が望ま
れる。しかしながら、この発明のKBSCシステムによ
ればVLS l設計のエキスパート化がなされ、また該
エキスパート化が本発明により応用されて、集積回路は
機能レベルで設計され得る。論理回路の図形表現化に代
えてフローチャートで設計者が作業を行なえるようにし
たことによってカスタム集積回路の設計作業を容易にか
つ迅速化して、かつ安価化するとともに、信頼度を高め
得る。動作レベルの簡単なフローチャートを用いて設計
者はアルゴリズムを取り扱い、設計者は目的の仕事(t
ask)を完成するための具体的手段を知るよりはむし
ろその仕事をするに必要な 。
論理ステップだけを知ればよいのである。フローチャー
トを用いて設計することによって、テストにおける作業
が軽減することかできる。なぜならば、フローチャート
による作業は設計者にとっては、アルゴリズムにより近
いからである。一方、既存のVLS r設計ツールは設
計者が、構造レベルでの複雑な回路図でアルゴリズムを
表現する必要かあり、テストのための作業を要する。回
路図は、ハードウェアと機能とについての考慮を混合す
るので、目的とする設計に導入することを要する演算機
能に回路図が打ち勝つのは困難である。
トを用いて設計することによって、テストにおける作業
が軽減することかできる。なぜならば、フローチャート
による作業は設計者にとっては、アルゴリズムにより近
いからである。一方、既存のVLS r設計ツールは設
計者が、構造レベルでの複雑な回路図でアルゴリズムを
表現する必要かあり、テストのための作業を要する。回
路図は、ハードウェアと機能とについての考慮を混合す
るので、目的とする設計に導入することを要する演算機
能に回路図が打ち勝つのは困難である。
カスタム設計集積回路を設計するために、フローチャー
トを使用することは以前はハードウェアの記述を得るた
めに、少数の設計者だけが知識を有していたVLSI技
術に多数のシステム設計者が関与することを可能にする
。
トを使用することは以前はハードウェアの記述を得るた
めに、少数の設計者だけが知識を有していたVLSI技
術に多数のシステム設計者が関与することを可能にする
。
本発明に用いられる全体的なシステムの流れを第2図に
示す。使用者は回路の機能(動作)仕様をフローチャー
ト11の形式でKBSC(知識ベースシリコンコンパイ
ラ)10に入力する。KBSC10はフローチャート1
1からネットリスト15を発生する。ネットリスト15
はカスタム生成システムコントローラ、必要な動作をさ
せるために必要な、他のハードウェア素子および上記ハ
ードウェア素子間およびシステムコントローラを接続す
る相互接続情報を含んでいる。このネットリストは幾何
図形的レイアウト用のマスクデータ18を生成するため
に既存のVLS Iレイアウトならびにルーティング(
routing)ツール16への入力として使用するこ
とができる。
示す。使用者は回路の機能(動作)仕様をフローチャー
ト11の形式でKBSC(知識ベースシリコンコンパイ
ラ)10に入力する。KBSC10はフローチャート1
1からネットリスト15を発生する。ネットリスト15
はカスタム生成システムコントローラ、必要な動作をさ
せるために必要な、他のハードウェア素子および上記ハ
ードウェア素子間およびシステムコントローラを接続す
る相互接続情報を含んでいる。このネットリストは幾何
図形的レイアウト用のマスクデータ18を生成するため
に既存のVLS Iレイアウトならびにルーティング(
routing)ツール16への入力として使用するこ
とができる。
システム概観
KBSCシステムを有する基本的な素子あるいはモジュ
ールを第3図に示す。この実施例において、これらの素
子あるいはモジュールはソフトウェアプログラムの形式
であり、当業者にとってはこれらの素子を他の適宜な形
態のハードウェアに具現することは容易であろう。
ールを第3図に示す。この実施例において、これらの素
子あるいはモジュールはソフトウェアプログラムの形式
であり、当業者にとってはこれらの素子を他の適宜な形
態のハードウェアに具現することは容易であろう。
第3図を参照して、KBSCシステム10はEDS I
Mと呼ばれるプログラム20を含むKBSCシステムが
示されている。このシステムはフローチャートを作りか
つ編集するフローチャートエディタ21とそのフローチ
ャートを模擬し、検査するフローチャート シミュレー
タ22を含んでいる。フローチャートにおいて各四角形
によって実行される動作はマクロ ライブラリ23から
選択される。P S CS (path 5ynLh
esizer andcell 5elector
通路同期器および素子選択器)と呼ばれるプログラ
ム30はデータおよび制御信号同期器モジュール31を
含み、同期器モジュール31はデータおよび制御信号同
期用の知識ベースシステムである。pscsはさらにシ
ステム設計に必要な素子を選択するための素子選択器3
2を含んでいる。この素子選択器32は以前に設計され
たハードウェア素子の素子ライブラリ34から、フロー
チャートに示される各動作と条件に必要な適宜な素子を
選択する。制御信号発生器33は池のハードウェア素子
の動作を制御するためのカスタム設計システム制御信号
を発生する。知識ベース35はデータ通路同期器および
素子選択に必要なAS■C設計エ設計エキスパー加用を
含んでいる。この構成で機能的なフローチャート入力に
よりPSC8はシステム制御信号を発生し、他のすべて
のハードウェア素子を選択し、さらにデータと制御通路
を発生し、さらにすべての設計情報を記載したネットリ
ストを発生する。
Mと呼ばれるプログラム20を含むKBSCシステムが
示されている。このシステムはフローチャートを作りか
つ編集するフローチャートエディタ21とそのフローチ
ャートを模擬し、検査するフローチャート シミュレー
タ22を含んでいる。フローチャートにおいて各四角形
によって実行される動作はマクロ ライブラリ23から
選択される。P S CS (path 5ynLh
esizer andcell 5elector
通路同期器および素子選択器)と呼ばれるプログラ
ム30はデータおよび制御信号同期器モジュール31を
含み、同期器モジュール31はデータおよび制御信号同
期用の知識ベースシステムである。pscsはさらにシ
ステム設計に必要な素子を選択するための素子選択器3
2を含んでいる。この素子選択器32は以前に設計され
たハードウェア素子の素子ライブラリ34から、フロー
チャートに示される各動作と条件に必要な適宜な素子を
選択する。制御信号発生器33は池のハードウェア素子
の動作を制御するためのカスタム設計システム制御信号
を発生する。知識ベース35はデータ通路同期器および
素子選択に必要なAS■C設計エ設計エキスパー加用を
含んでいる。この構成で機能的なフローチャート入力に
よりPSC8はシステム制御信号を発生し、他のすべて
のハードウェア素子を選択し、さらにデータと制御通路
を発生し、さらにすべての設計情報を記載したネットリ
ストを発生する。
KBSシステムは第4図に示したようにハイアラキ素子
選択ASIC設計アプローチを用いている。スクラッチ
(scratch)即ち所望の機能を果たす種々の素子
をかき集めた群からそれぞれの必要なハードウェア素子
を発生するよりもKBSシステムは以前に設計されたま
た試験され証明された種々の形のあるいは与えられた形
態の種々の動作能力を持つハードウェア素子についての
素子ライブラリ34を備えている。マクロ ライブラリ
23はフローチャートにおいて具体化される種々の動作
を定めるマクロを含んでいる。マクロ ライブラリ23
内の各マクロ機能に対して特有の機能を実行する別の幾
何図形的および特性の素子ライブラリ34内にいくつか
のハードウェア素子をも有する。エキスパートASIC
設計者から引き出した知識ベース35を有する規則ベー
スエキスパートシステムを用いることによってKBSC
シス−テムは素子ライブラリ34から所望の機能を実行
するための最適の素子を選択する。
選択ASIC設計アプローチを用いている。スクラッチ
(scratch)即ち所望の機能を果たす種々の素子
をかき集めた群からそれぞれの必要なハードウェア素子
を発生するよりもKBSシステムは以前に設計されたま
た試験され証明された種々の形のあるいは与えられた形
態の種々の動作能力を持つハードウェア素子についての
素子ライブラリ34を備えている。マクロ ライブラリ
23はフローチャートにおいて具体化される種々の動作
を定めるマクロを含んでいる。マクロ ライブラリ23
内の各マクロ機能に対して特有の機能を実行する別の幾
何図形的および特性の素子ライブラリ34内にいくつか
のハードウェア素子をも有する。エキスパートASIC
設計者から引き出した知識ベース35を有する規則ベー
スエキスパートシステムを用いることによってKBSC
シス−テムは素子ライブラリ34から所望の機能を実行
するための最適の素子を選択する。
第3図を参照して、素子選択2に32によって選択され
た素子、制御信号発生器33により発生した制御情報お
よびデータ/制御通路同期器31により発生したデータ
および制御通路はすべてネットリスト15を発生するた
めにpscsプログラム30によって用いられる。ネッ
トリストは回路内における各ブロックおよび各ブロック
の入力端子と出力端子の間の相互接続を示すリストであ
る。
た素子、制御信号発生器33により発生した制御情報お
よびデータ/制御通路同期器31により発生したデータ
および制御通路はすべてネットリスト15を発生するた
めにpscsプログラム30によって用いられる。ネッ
トリストは回路内における各ブロックおよび各ブロック
の入力端子と出力端子の間の相互接続を示すリストであ
る。
このネットリストは集積回路を製造するのに必要なすべ
ての情報を提供する。市販の素子配置および素子接続用
の計算機支援設計システムは上記ネットリストデータを
入力として受信し、チップ内のそれぞれの素子の配置(
レイアウト)をなし、又必要な接続を定め、集積回路の
製造におけるチップ工場(foundry)によって直
接用いられるマスクデータを発生する。
ての情報を提供する。市販の素子配置および素子接続用
の計算機支援設計システムは上記ネットリストデータを
入力として受信し、チップ内のそれぞれの素子の配置(
レイアウト)をなし、又必要な接続を定め、集積回路の
製造におけるチップ工場(foundry)によって直
接用いられるマスクデータを発生する。
システムに要求される条件
KBSCシステムは適当なプログラムされた汎用デジタ
ルコンピュータによって操作される。例えばKBSCシ
ステムの一例においては5un3 and VAXSt
ation −I I/GPX Running UN
T X Operating S ystea and
X Wjndow Managerなどのワークステ
ィジョンで操作される。このワークスティジョンは8メ
ガバイトの主記憶部と20メガバイトのハードディスク
とを少なくとも必要とする。使用されたモニターとして
は8ビット平面のカラーテレビである。ソフトウェアは
Cプログラミング言語とINGRESリレーショナルデ
ータベースを用いる。
ルコンピュータによって操作される。例えばKBSCシ
ステムの一例においては5un3 and VAXSt
ation −I I/GPX Running UN
T X Operating S ystea and
X Wjndow Managerなどのワークステ
ィジョンで操作される。このワークスティジョンは8メ
ガバイトの主記憶部と20メガバイトのハードディスク
とを少なくとも必要とする。使用されたモニターとして
は8ビット平面のカラーテレビである。ソフトウェアは
Cプログラミング言語とINGRESリレーショナルデ
ータベースを用いる。
人とのインターフェイスは主としてポツプアップメニュ
ー、ボタンおよび特別の目的のコマンド言語を用いる。
ー、ボタンおよび特別の目的のコマンド言語を用いる。
集積回路設計の永久データは抽出と更新を容易にするた
めにデータベースの形でストアされる。主記憶部は一時
的な次回データ(neXt data tempo
rarily)、 エグゼキユータプルコード(exe
cutable code)、設計データ(フローチ
ャート、論理など)、データベース(素子ライブラリ)
および知識ベースを記憶する。CPUはフローチャート
の生成と模擬および設計の自動同期を実行する。
めにデータベースの形でストアされる。主記憶部は一時
的な次回データ(neXt data tempo
rarily)、 エグゼキユータプルコード(exe
cutable code)、設計データ(フローチ
ャート、論理など)、データベース(素子ライブラリ)
および知識ベースを記憶する。CPUはフローチャート
の生成と模擬および設計の自動同期を実行する。
フローチャートの例
ひとつのネットリストに対するフローチャートの図形表
示を行うために第5図に示すような大型のシステムの一
部分としての第5図に示すフローチャート例を考える。
示を行うために第5図に示すような大型のシステムの一
部分としての第5図に示すフローチャート例を考える。
この図示されたフローチャートにおいて二つの変数VA
LIおよびVAL2が比較され、もし両者が等しければ
両者が合計される。この例において第1の動作(Act
ion 1)は変数VALIをレジスタAへ移す動作を
含む。第2の動作は変数VAL2をレジスタBへ移す動
作を含む。条件1 (condition 1 )はレ
ジスタAとBの容置を比較する( Compare)動
作を含む。第3の動作(Action 3)はレジス
タAとBの値を加算(Add) L、その結果をレジス
タCに蓄える(Store)。
LIおよびVAL2が比較され、もし両者が等しければ
両者が合計される。この例において第1の動作(Act
ion 1)は変数VALIをレジスタAへ移す動作を
含む。第2の動作は変数VAL2をレジスタBへ移す動
作を含む。条件1 (condition 1 )はレ
ジスタAとBの容置を比較する( Compare)動
作を含む。第3の動作(Action 3)はレジス
タAとBの値を加算(Add) L、その結果をレジス
タCに蓄える(Store)。
第5図に示された機能を実行するための集積回路を製造
するに際してKBSCはハードウェア素子間の相互接続
条件についてのシステムの動作のフローチャート記述を
図示する。これらのハードウェア素子はすべての制御信
号を発生するシステムコントローラによって制御される
。システムコントローラに含まれる変数としては次の2
種類がある。
するに際してKBSCはハードウェア素子間の相互接続
条件についてのシステムの動作のフローチャート記述を
図示する。これらのハードウェア素子はすべての制御信
号を発生するシステムコントローラによって制御される
。システムコントローラに含まれる変数としては次の2
種類がある。
(1)入力変数:入力変数はハードウェア素子によって
作られるか、あるいはコントローラへの外部からの入力
である。これらはフローチャートにおける条件に対応す
る。
作られるか、あるいはコントローラへの外部からの入力
である。これらはフローチャートにおける条件に対応す
る。
(2)出力変数:出力変数はシステムコントローラによ
って作られ、フローチャートにおける動作に対応する。
って作られ、フローチャートにおける動作に対応する。
第6図はハードウェア素子についての第5図のフローチ
ャートを図示する結果を示す。フローチャートの動作と
条件は素子選択とデータならびに制御通路同期化に用い
られる。V A L ’ルジスタおよびVAL2レジス
タおよび各レジスタから導かれるデータ通路は現実施例
における動作1の以前に生じている。動作lはレジスタ
Aのデータを発生させる。同様に動作2はレジスタBの
データを位置付けさせる。比較2:(は条件1における
比較動作の結果として位置付けられる。この比較動作は
l)比較器の素子を選ぶこと、2)レジスタΔとBに対
する比較器素子の入力を定めること、3)比較器をレジ
スタAとBに接続する通路を定めること、4)等しいか
、より大きいか、より小さいかにしたがって、システム
コントローラ用の入力変数を発生させる。同様に動作3
における加算動作は加算素子の選択を行いレジスタに対
する加算器のパラメータを作りデータ通路を生成する。
ャートを図示する結果を示す。フローチャートの動作と
条件は素子選択とデータならびに制御通路同期化に用い
られる。V A L ’ルジスタおよびVAL2レジス
タおよび各レジスタから導かれるデータ通路は現実施例
における動作1の以前に生じている。動作lはレジスタ
Aのデータを発生させる。同様に動作2はレジスタBの
データを位置付けさせる。比較2:(は条件1における
比較動作の結果として位置付けられる。この比較動作は
l)比較器の素子を選ぶこと、2)レジスタΔとBに対
する比較器素子の入力を定めること、3)比較器をレジ
スタAとBに接続する通路を定めること、4)等しいか
、より大きいか、より小さいかにしたがって、システム
コントローラ用の入力変数を発生させる。同様に動作3
における加算動作は加算素子の選択を行いレジスタに対
する加算器のパラメータを作りデータ通路を生成する。
この過程の後ブロックリストかフローチャートに対して
生成される。このブロックリストはシステムコントロー
ラおよび必要な動作を実行するのに要する種々のブロッ
クについての情報を含み各ブロックはデータ通路で接続
され、かつ制御通路を介してシステムコントローラによ
って制御される。これらのブロックは素子リストを作る
ために素子ライブラリから素子を選択するために作られ
る。
生成される。このブロックリストはシステムコントロー
ラおよび必要な動作を実行するのに要する種々のブロッ
クについての情報を含み各ブロックはデータ通路で接続
され、かつ制御通路を介してシステムコントローラによ
って制御される。これらのブロックは素子リストを作る
ために素子ライブラリから素子を選択するために作られ
る。
相互作動フローチャートエディタおよびシミュレータ
7o−チャートの作成と検証とはVLS [投射手法の
第1段階である。ひとつのアルゴリズムからひとつの等
価なフローチャートへの変換はフローチャートエディタ
21(第3図)によってなされる。編集されたフローチ
ャートの検証はフローチャートシミュレータ22によっ
てなされる。フローチャートエディタとシミュレータは
親密なインターフェイスの設計者によってフローチャー
ト編集動作を行うために同一の作業環境内に一体的に設
けられる。
第1段階である。ひとつのアルゴリズムからひとつの等
価なフローチャートへの変換はフローチャートエディタ
21(第3図)によってなされる。編集されたフローチ
ャートの検証はフローチャートシミュレータ22によっ
てなされる。フローチャートエディタとシミュレータは
親密なインターフェイスの設計者によってフローチャー
ト編集動作を行うために同一の作業環境内に一体的に設
けられる。
EDS IMはフローチャートエディタ21とフローチ
ャートシミュレータ22とを含むプログラムである。こ
のEDS IMはフローチャートをロードし、あるいは
セーブするなどの機能を提供する。EDS IMは状態
リストと呼−ばれる各フローチャートに対する中間ファ
イルを生成する。この中間ファイルはネットリストを生
成するためにPSCSプログラム30によって使用され
る。
ャートシミュレータ22とを含むプログラムである。こ
のEDS IMはフローチャートをロードし、あるいは
セーブするなどの機能を提供する。EDS IMは状態
リストと呼−ばれる各フローチャートに対する中間ファ
イルを生成する。この中間ファイルはネットリストを生
成するためにPSCSプログラム30によって使用され
る。
フローチャートエディタ
フローチャートエディタ21はフローチャートを表示し
、作成し、編集するなめに使用されるソフトウェアモジ
ュールである。このモジュールは第7図に示されたフロ
ーチャート編集窓を介して制御される。編集機能ととも
にフローチャートエディタは設計エラーのチエツクを行
う。
、作成し、編集するなめに使用されるソフトウェアモジ
ュールである。このモジュールは第7図に示されたフロ
ーチャート編集窓を介して制御される。編集機能ととも
にフローチャートエディタは設計エラーのチエツクを行
う。
フローチャートエディタの動作を以下に説明する。主編
集機能は状態と条件と遷移の生成と編集と削除とを含ん
でいる。生成動作においては設計者か新しい状態と条件
あるいは遷移をフローチャートに追加することを許可す
る。編集は設計者がフローチャートの状態の位置、条件
、遷移を変更することを許可し、削除は設計者が現存の
フローチャートから状態と条件と遷移を削除することを
許可する。動作を含む状態は四角の箱で示され、条件は
菱形で示され、遷移は遷移の方向を示す矢印を伴った線
で示される。
集機能は状態と条件と遷移の生成と編集と削除とを含ん
でいる。生成動作においては設計者か新しい状態と条件
あるいは遷移をフローチャートに追加することを許可す
る。編集は設計者がフローチャートの状態の位置、条件
、遷移を変更することを許可し、削除は設計者が現存の
フローチャートから状態と条件と遷移を削除することを
許可する。動作を含む状態は四角の箱で示され、条件は
菱形で示され、遷移は遷移の方向を示す矢印を伴った線
で示される。
編集動作は設計者が各市に対して動作を付与することを
許可する。これらの動作はマクロ名および注書き(A
rgument)を含んでいる。注書きの例は外部信号
の設定およびクリアなどである。マクロライブラリ23
における利用可能な基本的なマクロのリストを表1に示
す。
許可する。これらの動作はマクロ名および注書き(A
rgument)を含んでいる。注書きの例は外部信号
の設定およびクリアなどである。マクロライブラリ23
における利用可能な基本的なマクロのリストを表1に示
す。
男 1
フローチャートエディタはフローチャートシミュレータ
がフローチャートを模擬するにしたがってフローチャー
トをグラフィック的に表示する。このグラフィック表示
は第7図に示すような箱と菱形と線とを含んでいる。す
べてが表示スクリーン上に画かれ従来のフローチャート
と同様な形に表示される。シミュレーションの間に表示
スクリーン上にフローチャートを表示することによって
設計者がフローチャートを同時に設計し検証することを
許可する。
がフローチャートを模擬するにしたがってフローチャー
トをグラフィック的に表示する。このグラフィック表示
は第7図に示すような箱と菱形と線とを含んでいる。す
べてが表示スクリーン上に画かれ従来のフローチャート
と同様な形に表示される。シミュレーションの間に表示
スクリーン上にフローチャートを表示することによって
設計者がフローチャートを同時に設計し検証することを
許可する。
フローチャートシミュレータ
フローチャートシミュレータ22はフローチャートをシ
ミュレート(模擬)するのに使用されるソフトウェアモ
ジュールである。このモジュールは第8図に示したシミ
ュレータ窓を介して制御される。フローチャートシミュ
レータはフローチャートの状態とあるいは条件間での遷
移をシミュレートする。フローチャートシミュレータの
動作を以下に示す。
ミュレート(模擬)するのに使用されるソフトウェアモ
ジュールである。このモジュールは第8図に示したシミ
ュレータ窓を介して制御される。フローチャートシミュ
レータはフローチャートの状態とあるいは条件間での遷
移をシミュレートする。フローチャートシミュレータの
動作を以下に示す。
データ編集−レジスタあるいはメモリ内の値を変状態設
定−シミュレートされるべき次の状態を設定 詳細あるいは要約のデイスプレィの設定−シミュレーシ
ョンの間の詳細なあるいは要約の情報を表示 破断設定−破断点を設定 破断のクリアーすべての破断点をクリア破断の表示−現
在の破断点の表示 ステップ−ひとつの遷移を歩進 実行−フローチャートの実行 停止−フローチャートの実行を停止 ヒストリーオンあるいはヒストリーオフ−ヒストリー(
履歴)の記録のオンあるいはオフキャンセル−実行中の
動作のキャンセルヘルプ(help)−ヘルプ(hel
p)画面の表示 ゛クローズ(close)−シミ
ュレータ窓を閉じる(ctose) シミュレーションの結果はシミュレータ窓に表示される
。またエディタ窓はフローチャートがシミュレートされ
るにしたがってシミュレートしている部分を追跡する。
定−シミュレートされるべき次の状態を設定 詳細あるいは要約のデイスプレィの設定−シミュレーシ
ョンの間の詳細なあるいは要約の情報を表示 破断設定−破断点を設定 破断のクリアーすべての破断点をクリア破断の表示−現
在の破断点の表示 ステップ−ひとつの遷移を歩進 実行−フローチャートの実行 停止−フローチャートの実行を停止 ヒストリーオンあるいはヒストリーオフ−ヒストリー(
履歴)の記録のオンあるいはオフキャンセル−実行中の
動作のキャンセルヘルプ(help)−ヘルプ(hel
p)画面の表示 ゛クローズ(close)−シミ
ュレータ窓を閉じる(ctose) シミュレーションの結果はシミュレータ窓に表示される
。またエディタ窓はフローチャートがシミュレートされ
るにしたがってシミュレートしている部分を追跡する。
フローチャートの追跡はエラーが発見された時フローチ
ャートの編集を容易にする。
ャートの編集を容易にする。
素子選択
素子選択器32はVl、S[システムを実現するために
素子ライブラリ34から最適の素子の一群を選択するた
めの知識ベースシステムである。この選択はフローチャ
ート内の機能の記述に基づいてなされるものでフローチ
ャート内において表示されている各動作に対して割り当
てられたマクロによって具体化される。VLS Tシス
テムを作成するために選択される素子は種々の条件例え
ば素子の機能、製造技術の種類、使用される電力の制限
、遅延時間などに依存する。素子選択器は素子選択を行
うためのVLS I設計専門技術者(エキスパート)か
ら抽出した知識ベースを用いる。
素子ライブラリ34から最適の素子の一群を選択するた
めの知識ベースシステムである。この選択はフローチャ
ート内の機能の記述に基づいてなされるものでフローチ
ャート内において表示されている各動作に対して割り当
てられたマクロによって具体化される。VLS Tシス
テムを作成するために選択される素子は種々の条件例え
ば素子の機能、製造技術の種類、使用される電力の制限
、遅延時間などに依存する。素子選択器は素子選択を行
うためのVLS I設計専門技術者(エキスパート)か
ら抽出した知識ベースを用いる。
使用者の利用におけるフローチャートの記械からVLS
[システムを設計するためにフローチャート内の機能
と素子ライブラリからの素子との間の整合が必要である
。この整合を行うためには、素子選択工程が′fu雑で
あり多数の設計パラメータおよび拘束に基づいてなされ
るものであるから、人口知能技術を用いる必要がある。
[システムを設計するためにフローチャート内の機能
と素子ライブラリからの素子との間の整合が必要である
。この整合を行うためには、素子選択工程が′fu雑で
あり多数の設計パラメータおよび拘束に基づいてなされ
るものであるから、人口知能技術を用いる必要がある。
素子選択に用いられる技術的思想はソフトウェアにおけ
るコンパイルで用いられる技術的思想と同様である。ソ
フトウェアにおけるコンパイルにおいては多数のサブル
ーチンがライブラリから結合される。VLS Iシステ
ムの設計においては機能的マクロがライブラリ素子に表
される。
るコンパイルで用いられる技術的思想と同様である。ソ
フトウェアにおけるコンパイルにおいては多数のサブル
ーチンがライブラリから結合される。VLS Iシステ
ムの設計においては機能的マクロがライブラリ素子に表
される。
第4図はハイアラキ的素子選択の技術的思想を示す。素
子選択工程は二つのステップで構成される。
子選択工程は二つのステップで構成される。
(1)機能的マクロの選択
(2)幾何図形的素子の選択
基本的なマクロの一群を表1に示す。一つのマグロはフ
ローチャート内の一つの動作に対応する。
ローチャート内の一つの動作に対応する。
例えばAとBを加算し、その結果Cをストアする動作を
考える。この機能は加算マクロADD(X。
考える。この機能は加算マクロADD(X。
y、z)として表される。フローチャートエディタとフ
ローチャートシミュレータはフローチャートの方形状の
箱と菱形および線を引くために用いられ、さらにマクロ
ライブラリ23から選択されたマクロをフローチャート
内に示される各動作に割り当てることならびにフローチ
ャート内での機能を検証するために用いられる。フロー
チャートは中間の形状(状態リスト)に変換され素子選
択器に入力される。
ローチャートシミュレータはフローチャートの方形状の
箱と菱形および線を引くために用いられ、さらにマクロ
ライブラリ23から選択されたマクロをフローチャート
内に示される各動作に割り当てることならびにフローチ
ャート内での機能を検証するために用いられる。フロー
チャートは中間の形状(状態リスト)に変換され素子選
択器に入力される。
素子選択器は各動作を実行するための適当な素子を選択
するための規則ベースエキスパートシステムを用いる。
するための規則ベースエキスパートシステムを用いる。
もし素子ライブラリが、マクロによって特定される動作
を実行するための異なる形状の多数の素子を有している
ならば、素子機能、使用されるプロセス技術、遅延時間
、電力制限値などの条件に基づいて素子の選択が行われ
る。
を実行するための異なる形状の多数の素子を有している
ならば、素子機能、使用されるプロセス技術、遅延時間
、電力制限値などの条件に基づいて素子の選択が行われ
る。
素子選択器32の知識ベースは以下の各項に関係する情
報あるいは規則を含んでいる。
報あるいは規則を含んでいる。
(1)マクロの選択
(2)二つのマクロの併合
(3)マクロと素子の連結
(4)二つの素子の併合
(5)エラーの診断
上記情報は規則として知識ベース35にストアされる。
素子リスト作成
第9図は素子リスト作成の段階を示す。
素子リスト作成の第1の段階はフローチャート記載の素
子選択器によって利用できる構造への変換である。この
変換は状態リストと呼ばれる。ブロックリストはインタ
ーフェイスエンジンによって状態リストから作成される
。このブロックリストは集積回路において使用される機
能ブロックのリストを含んでいる。この段階においては
以下に述べる形態の規則が利用される。
子選択器によって利用できる構造への変換である。この
変換は状態リストと呼ばれる。ブロックリストはインタ
ーフェイスエンジンによって状態リストから作成される
。このブロックリストは集積回路において使用される機
能ブロックのリストを含んでいる。この段階においては
以下に述べる形態の規則が利用される。
一データ通路への注書きの作成
一マクロに対する動作の作成
−6ブロックの接続
規則はこのレベルにおける素子の最適化とエラー診断と
を用意する。
を用意する。
素子選択器は素子ライブラリ34から選択された素子に
対するブロックを作成する。また、素子選択器は一つの
ブロックに対して最適の素子を選択する。この動作は素
子ライブラリからの適当な素子の選択のための規則の型
式化をも含んでいる。
対するブロックを作成する。また、素子選択器は一つの
ブロックに対して最適の素子を選択する。この動作は素
子ライブラリからの適当な素子の選択のための規則の型
式化をも含んでいる。
各素子には四つの形式の情報をストアしている。
(1)機能レベル情報;レジスタ転送レベルでの素子に
ついての記述 (2)論理レベル情報:フリノブフロノブとゲートに関
する記述 (3)回路レベル情報ニドランジスタレベルでの記述 (4)レイアウトレベル情報:幾何図形マスクレベルの
明細 素子の属性は 一素子名 一記述 一機能 一幅 −高さ −状態 −技術 一最小遅延時間 一典型的な遅延時間 一最大遅延時間 一電力 一フアイル 一設計者 一口付 一コメント ー検査者 素子選択工程において、上述の情報を使用することがで
きg。素子に対するマクロを生成するために用いること
ができるいくつかのパラメータは(1)マクロ名 (2)実行すべき機能 (3)チップの複雑さ (4)製造技術 (5)可能な遅延時間 (6)消費電力 (7)マクロデータ通路のビットサイズネットリスト生
成 ネットリストは素子がpscsによって選択された後に
生成される。pscsはまた素子の端子を他の素子に接
続するためのマクロの定義を使用する。pscsはネッ
トリストを生成するために例えば状態リストなどのフロ
ーチャートの表示形式の中間リストから状態から状態へ
の遷移を使用する。pscsはネットリスト生成のため
の以下の知識を含んでいる。
ついての記述 (2)論理レベル情報:フリノブフロノブとゲートに関
する記述 (3)回路レベル情報ニドランジスタレベルでの記述 (4)レイアウトレベル情報:幾何図形マスクレベルの
明細 素子の属性は 一素子名 一記述 一機能 一幅 −高さ −状態 −技術 一最小遅延時間 一典型的な遅延時間 一最大遅延時間 一電力 一フアイル 一設計者 一口付 一コメント ー検査者 素子選択工程において、上述の情報を使用することがで
きg。素子に対するマクロを生成するために用いること
ができるいくつかのパラメータは(1)マクロ名 (2)実行すべき機能 (3)チップの複雑さ (4)製造技術 (5)可能な遅延時間 (6)消費電力 (7)マクロデータ通路のビットサイズネットリスト生
成 ネットリストは素子がpscsによって選択された後に
生成される。pscsはまた素子の端子を他の素子に接
続するためのマクロの定義を使用する。pscsはネッ
トリストを生成するために例えば状態リストなどのフロ
ーチャートの表示形式の中間リストから状態から状態へ
の遷移を使用する。pscsはネットリスト生成のため
の以下の知識を含んでいる。
■)データ通路同期
2)データ通路最適化
3)マクロの定義
4)素子ライブラリ
5)エラー検出および訂正
上述の情報は知識ベース35に規則としてストアされる
。知識技術者はASIC設計エキスパートから上述の規
則を作成することを補助する。マクロライブラリ23と
素子ライブラリ34はKBSCのデータベースにストア
される。
。知識技術者はASIC設計エキスパートから上述の規
則を作成することを補助する。マクロライブラリ23と
素子ライブラリ34はKBSCのデータベースにストア
される。
pscsによっていくつかの操作がおこなわれる。ps
cs操作の最高レベルの記述を以下に示す。
cs操作の最高レベルの記述を以下に示す。
(1)フローチャート中間ファイルを読み状態リストを
形成する (2)現在のコンテキスト(context)= S
T A RT(3)インターフェイスエンジンを起動し
現在のコンテキスト規則をロード (4)現在のコンテキストにしたがって以下のうちのい
ずれかを実行する (a)正しい履行のために状態リストを修正(b)ブロ
ックのリストとマクロリストとデータ通路とを作成 (c)ブロックリストとデータ通路を最適化し、エラー
チエツクを実行 (d)ブロックを素子に変換 (e)素子リストを最適化し、エラーチエツクを実行 (Oネットリストの作成 (g)ネットリストの最適化とエラーチエツクの実行、
その完了後7へ行< (go to 7)(5)もし現
在のコンテキストが変化したならば新しいコンテキスト
規則をロード (6)4へ行<(goto4) (7)ネットリストファイルとstfファイルを出力し
ストップ 次の章においてステップ4において述べた操作が記述さ
れる。規則言語およびpscs表示が記述される。
形成する (2)現在のコンテキスト(context)= S
T A RT(3)インターフェイスエンジンを起動し
現在のコンテキスト規則をロード (4)現在のコンテキストにしたがって以下のうちのい
ずれかを実行する (a)正しい履行のために状態リストを修正(b)ブロ
ックのリストとマクロリストとデータ通路とを作成 (c)ブロックリストとデータ通路を最適化し、エラー
チエツクを実行 (d)ブロックを素子に変換 (e)素子リストを最適化し、エラーチエツクを実行 (Oネットリストの作成 (g)ネットリストの最適化とエラーチエツクの実行、
その完了後7へ行< (go to 7)(5)もし現
在のコンテキストが変化したならば新しいコンテキスト
規則をロード (6)4へ行<(goto4) (7)ネットリストファイルとstfファイルを出力し
ストップ 次の章においてステップ4において述べた操作が記述さ
れる。規則言語およびpscs表示が記述される。
規則言語pscsの規則言語は宣言的でありかつ規則の
編集を容易にするように設計される。専門家にとって知
識ベースの構造を理解できるために規則言語は知識表示
をするための手段を提供する。この動作はデータ構造の
形式(フォーマント)を規則ベースで述べられるように
し、専門家がデータ構造を参照でき、システムによって
利用される種々の構造を理解できるようにする。例えば
エキスパートは配線の構造を解析でき、構成部分を決定
できる。エキスパートはそれらの構成部分を規則の中へ
取り込むことができる。新しい対象物が決められたとき
エキスパートは新しい構造を宣言し、この新しい構造に
既存の構造をリンズさせるように修正する。この方法に
おいてデータ構造の成長がエキスパートによってより良
く視覚化される。そして次に、これによって設計者が規
則を修正し、あるいは追加することができる。
編集を容易にするように設計される。専門家にとって知
識ベースの構造を理解できるために規則言語は知識表示
をするための手段を提供する。この動作はデータ構造の
形式(フォーマント)を規則ベースで述べられるように
し、専門家がデータ構造を参照でき、システムによって
利用される種々の構造を理解できるようにする。例えば
エキスパートは配線の構造を解析でき、構成部分を決定
できる。エキスパートはそれらの構成部分を規則の中へ
取り込むことができる。新しい対象物が決められたとき
エキスパートは新しい構造を宣言し、この新しい構造に
既存の構造をリンズさせるように修正する。この方法に
おいてデータ構造の成長がエキスパートによってより良
く視覚化される。そして次に、これによって設計者が規
則を修正し、あるいは追加することができる。
以下の態様が規則言語の中に含まれる。
i)レコード構造の形状の知識表示
ii)規則の前文における状態の表示
1ii)規則動作における構造の作成および破壊の容易
化 iv)規則の動作における任務の記述 ■)規則′動作における入力と出力の容易化vi)規則
動作からのC機能の刺激の容易化使用される規則フォー
マットは以下の通りである。
化 iv)規則の動作における任務の記述 ■)規則′動作における入力と出力の容易化vi)規則
動作からのC機能の刺激の容易化使用される規則フォー
マットは以下の通りである。
規則 番号 コンテキスト1 r
if clause Then Then clauseWhere
number 規則番号context
この規則は活性であるというコンテキスト インターフェイス方式 インターフェイス方式は高速パターンマツチングアルゴ
リズムに基づ、く。この規則はネットワーク中にストア
され規則を通して繰り返して述べるための必要条件は回
避される。これによって実行の速度を上げることができ
る。コンフリクトレソルーション(conflict
resolution)方式は以下のものに基づく。
if clause Then Then clauseWhere
number 規則番号context
この規則は活性であるというコンテキスト インターフェイス方式 インターフェイス方式は高速パターンマツチングアルゴ
リズムに基づ、く。この規則はネットワーク中にストア
され規則を通して繰り返して述べるための必要条件は回
避される。これによって実行の速度を上げることができ
る。コンフリクトレソルーション(conflict
resolution)方式は以下のものに基づく。
(1)最も近い時点のデータが含まれている規則が選択
される。
される。
(2)最も複雑な条件を有する規則が選択される。
(3)最明に宣言された規則が選択される。
規則エディタ
r’scsはエキスパートが規則のセラトラ更新できる
ように相互作用をする規則エディタを提供する。この規
則はデータベースパッケージの編集能力が規則の編集に
用いることができるように、ff1則がデータベース内
にストアされる。この動作を実行するためにエキスパー
トは種々の知識構造とインターフェイス工程とを熟知し
ていることが必要である。もしこれか不可能ならば、知
識技術者の援助が必要である。
ように相互作用をする規則エディタを提供する。この規
則はデータベースパッケージの編集能力が規則の編集に
用いることができるように、ff1則がデータベース内
にストアされる。この動作を実行するためにエキスパー
トは種々の知識構造とインターフェイス工程とを熟知し
ていることが必要である。もしこれか不可能ならば、知
識技術者の援助が必要である。
pscsは種々のオプションを設定できるメニューを提
供する。種々のデバッグフラグを設定するための機構、
および表示オプションの機構、さらにpscsの全体的
な制御を行うための機構か設けられる。
供する。種々のデバッグフラグを設定するための機構、
および表示オプションの機構、さらにpscsの全体的
な制御を行うための機構か設けられる。
使用者によって作成されたブロックリストをセーブし、
表示するための機構も設けられる。使用者によって作成
されたブロックリストの形状はファイルにセーブするこ
とができ、後にプロッタによって印刷することができる
。pscs表示工程を再スタートさせるためにリセット
することができる。
表示するための機構も設けられる。使用者によって作成
されたブロックリストの形状はファイルにセーブするこ
とができ、後にプロッタによって印刷することができる
。pscs表示工程を再スタートさせるためにリセット
することができる。
pscs規則例
規則l
IF もしブロックが存在しなければTHEN
システムコントローラを発生させる規則2 IF もしマクロを有する状態が存在し、ΔN’
D(および)このマクロかプロ。
システムコントローラを発生させる規則2 IF もしマクロを有する状態が存在し、ΔN’
D(および)このマクロかプロ。
りに作られていなければ
T HE N ライブラリ内で対応するマクロを見出
たし、このマクロに対するブロッ クを生成する。
たし、このマクロに対するブロッ クを生成する。
規則3
IF もし二つの状態間で遷移があればAND(
および)同じ注書きを用いた状 態でマクロがあれば THEN 最初のマクロに対応するレジスタから第2
のマクロに対応する他のレジ スタへ接続を作成する。
および)同じ注書きを用いた状 態でマクロがあれば THEN 最初のマクロに対応するレジスタから第2
のマクロに対応する他のレジ スタへ接続を作成する。
規則4
1F もし一つのレジスタが他の一つのレジスタ
から一つだけ接続されている ならば T HE N これらのレジスタを一つのレジスタに
結合する 規則5 IF もし二つの比較器がありAND(おヨヒ)
入力データ幅が同じサイズで ありAND(および)それらの一つの 入力か同じでありAND(および)比 較器の出力が同じ動作を行うのに用 いられるならば T I(E N これらの比較器を一つの比較器に結
合する 規則6 IF もしレジスタなしてデータがあればT H
E N 一つのレジスタをこのデータのために設ける 規則7 1F もしすべてのブロックが既に相互に接続さ
れAND(および)一つのブロックが接続されないいく
つかの端子を 有しているならば THEN これらのブロックとその端子を除きあるい
はエラーメツセージを出力す 規則8 1F もしメモリが使用され、しかしそのメモリ
のためのブロックが作成され ていないならば T HE N データ、アドレス、データおよび制御
用の読出、書込端子とともにメモ リブロックを作成する 規則9 IF もしレジスタかカウンタへの一つの接続を
有しているならば T HE N レジスタとカウンタを結合してレジス
タとその端子を除去する 規則10 1F もし異なるいくつかのブロックから一つのブ
ロックの一つの端子へ接続 があるならば T )(E N マルチプレクサを挿入し、端子への
接続を除去し、それらの端子をマル チプレクサの入力へ接続し、マルチ プレクサの出力を上記−つのブロッ クへ接続する 池の規則の要点は、以下に示すように、−他の素子の出
力を用いることによって置換できる素子は除去する 一多虫のトリーを簡略化する ー素子からのファンアウトを利用する などである。
から一つだけ接続されている ならば T HE N これらのレジスタを一つのレジスタに
結合する 規則5 IF もし二つの比較器がありAND(おヨヒ)
入力データ幅が同じサイズで ありAND(および)それらの一つの 入力か同じでありAND(および)比 較器の出力が同じ動作を行うのに用 いられるならば T I(E N これらの比較器を一つの比較器に結
合する 規則6 IF もしレジスタなしてデータがあればT H
E N 一つのレジスタをこのデータのために設ける 規則7 1F もしすべてのブロックが既に相互に接続さ
れAND(および)一つのブロックが接続されないいく
つかの端子を 有しているならば THEN これらのブロックとその端子を除きあるい
はエラーメツセージを出力す 規則8 1F もしメモリが使用され、しかしそのメモリ
のためのブロックが作成され ていないならば T HE N データ、アドレス、データおよび制御
用の読出、書込端子とともにメモ リブロックを作成する 規則9 IF もしレジスタかカウンタへの一つの接続を
有しているならば T HE N レジスタとカウンタを結合してレジス
タとその端子を除去する 規則10 1F もし異なるいくつかのブロックから一つのブ
ロックの一つの端子へ接続 があるならば T )(E N マルチプレクサを挿入し、端子への
接続を除去し、それらの端子をマル チプレクサの入力へ接続し、マルチ プレクサの出力を上記−つのブロッ クへ接続する 池の規則の要点は、以下に示すように、−他の素子の出
力を用いることによって置換できる素子は除去する 一多虫のトリーを簡略化する ー素子からのファンアウトを利用する などである。
ソフト飲料自動販売機用コントローラの設計側以下の例
は特定用途向集積回路(ASIC)の設計において本発
明の前述の態様が以下に用いられるかを示す。この例に
おいてはASICは自動販売機のコントローラの設計に
用いたものである。
は特定用途向集積回路(ASIC)の設計において本発
明の前述の態様が以下に用いられるかを示す。この例に
おいてはASICは自動販売機のコントローラの設計に
用いたものである。
自動販売機のコントローラは硬貨受は取り部に硬貨か投
入されるごとに信号を受ける。受は取った硬貨の総額が
適正な値になると、その硬貨の金額が記録され、コント
ローラは一つの飲料を搬出する信号を出力する。飲料の
価格よりも高額の金額の硬貨が受は取られるとコントロ
ーラは正しい金額になるようにつり銭を出す。
入されるごとに信号を受ける。受は取った硬貨の総額が
適正な値になると、その硬貨の金額が記録され、コント
ローラは一つの飲料を搬出する信号を出力する。飲料の
価格よりも高額の金額の硬貨が受は取られるとコントロ
ーラは正しい金額になるようにつり銭を出す。
この自動販売機のコントローラの例においてはデジタル
システムコントローラを教えるテキストを用いた後にパ
ターンが作られる。F 1etcher、 Willi
am I 、、 An Engineering A
pproach LoDigital Desig
n、 Pretice−Hall、 Inc
、。
システムコントローラを教えるテキストを用いた後にパ
ターンが作られる。F 1etcher、 Willi
am I 、、 An Engineering A
pproach LoDigital Desig
n、 Pretice−Hall、 Inc
、。
pp、491−5059照。このテキストを参照して自
動販売機のコントローラの要件をより完全に説明し、コ
ントローラのハードウェアを設計するためには、本発明
の以前においてはいかにその設計手法が複雑であったか
を理解することかできよう。
動販売機のコントローラの要件をより完全に説明し、コ
ントローラのハードウェアを設計するためには、本発明
の以前においてはいかにその設計手法が複雑であったか
を理解することかできよう。
110図は自動販売機のコントローラのフローチャート
を示す。このフローチャートはフローチャートエディタ
を介して使用者により、KL3SCシステムに入力され
る。フローチャートを一見すると硬貨が硬貨受は取り部
に存在するときコントローラが硬貨有りの信号を受ける
。S tateOおよびCondOは硬貨の投入を待っ
ていることを示すウェイト状態を定義している。CPは
硬貨有りを示しており、ICPは硬貨無しを示す。S
tale lおよびCond lは硬貨が硬貨受は取り
部からクリアされたときを決定する。S tate20
テハ硬貨を受ケ取った後にマクロインストラクション
ADD3゜1 (1c、 cv、 5un)がシステム
に1c(last coin)およびcv(coin
value)を指示し、その合計をストアする。5ta
te21と協働するマクロインストラクションはレジス
タsumの値をレジスタCVへ移動させる。
を示す。このフローチャートはフローチャートエディタ
を介して使用者により、KL3SCシステムに入力され
る。フローチャートを一見すると硬貨が硬貨受は取り部
に存在するときコントローラが硬貨有りの信号を受ける
。S tateOおよびCondOは硬貨の投入を待っ
ていることを示すウェイト状態を定義している。CPは
硬貨有りを示しており、ICPは硬貨無しを示す。S
tale lおよびCond lは硬貨が硬貨受は取り
部からクリアされたときを決定する。S tate20
テハ硬貨を受ケ取った後にマクロインストラクション
ADD3゜1 (1c、 cv、 5un)がシステム
に1c(last coin)およびcv(coin
value)を指示し、その合計をストアする。5ta
te21と協働するマクロインストラクションはレジス
タsumの値をレジスタCVへ移動させる。
5taLe22におけるマクロCMP、lはレジスタC
Vの値をPR(飲料の価格price orsoft
drink)と比較して信号EQ、GTおよびLTを返
す。条件Cond 2は比較動作CMP、lの結果を検
査する。
Vの値をPR(飲料の価格price orsoft
drink)と比較して信号EQ、GTおよびLTを返
す。条件Cond 2は比較動作CMP、lの結果を検
査する。
ソノ結果が”太き(ない”(!GT、CMP、I)であ
れば条件cond 3は結果が゛等しい”(EQ、CM
P、 1)であるかどうかをみるための検査を行う。
れば条件cond 3は結果が゛等しい”(EQ、CM
P、 1)であるかどうかをみるための検査を行う。
もし結果が°°等しくない”(!EQ、CMP、1)で
あれば制御は状態5tateoへ戻り他の硬貨の投入を
待つ。もしcond 3がEQであれば、状態5tat
e4は飲料を搬出するための制御信号を発生し、マクロ
インストラクションCLR,1(cv)はCVをOにリ
セットして、他の顧客を待つ。
あれば制御は状態5tateoへ戻り他の硬貨の投入を
待つ。もしcond 3がEQであれば、状態5tat
e4は飲料を搬出するための制御信号を発生し、マクロ
インストラクションCLR,1(cv)はCVをOにリ
セットして、他の顧客を待つ。
もし投入された硬貨の合計金額が飲料価格を越えている
ときは、状態5LaLe3 Qは動作”return
coin”(硬貨返却)を出力する。さらにマクロDE
CR,1(cv)は返却された硬貨の合計金額だけcv
の値を減算する。状態5Late31でcvとPRが再
び比較される。もしcvがまだPRよりも大きければ、
制御は状態5tate30へとび、他の硬貨を返却する
。条件cond 5はCMP、2の結果か等しいかどう
かを検査し、飲料を搬出するか(droppop)ある
いは状態5tateoへ戻り他の硬貨の没入を待つ。
ときは、状態5LaLe3 Qは動作”return
coin”(硬貨返却)を出力する。さらにマクロDE
CR,1(cv)は返却された硬貨の合計金額だけcv
の値を減算する。状態5Late31でcvとPRが再
び比較される。もしcvがまだPRよりも大きければ、
制御は状態5tate30へとび、他の硬貨を返却する
。条件cond 5はCMP、2の結果か等しいかどう
かを検査し、飲料を搬出するか(droppop)ある
いは状態5tateoへ戻り他の硬貨の没入を待つ。
状態と協働する第10図に示すマクロは上述の表1に定
義したものに対応し、それぞれの状態において実行され
るべき特定の動作を決定する。
義したものに対応し、それぞれの状態において実行され
るべき特定の動作を決定する。
付表Aは第10図に示したフローチャートで作成される
中間ファイルあるいは状態リストを示す。
中間ファイルあるいは状態リストを示す。
この状態リストはEDS 1Mプログラム20からの出
力として作成され、pscsプログラム30(第3図)
への入力どして用いられる。
力として作成され、pscsプログラム30(第3図)
への入力どして用いられる。
第11図は第10図のフローチャートに用いられる各マ
クロと対応するハードウェアブロックを示す。比較マク
ロCMP(A、B)は、値へをストアするレジスタ、B
をストアするレジスタ、比較器のブロックを生成し、さ
らに比較の結果発生するEQ、LT、GT倍信号のシス
テムコントローラのための制御通路を生成する。別のマ
クロADD(A、B、C)は各入力値ΔおよびB用のレ
ジスタ、出力値C用のレジスタおよび加算?lr (a
dder)ブロックを生成する。マクロDECR(Δ)
はカウンタ(Counter)ブロックを生成する。p
scsプログラム30は第10図のフローチャートに用
いられたマクロを対応するハードウェア素子へ生成し、
第12図に示すハードウェアブロックを生成する。
クロと対応するハードウェアブロックを示す。比較マク
ロCMP(A、B)は、値へをストアするレジスタ、B
をストアするレジスタ、比較器のブロックを生成し、さ
らに比較の結果発生するEQ、LT、GT倍信号のシス
テムコントローラのための制御通路を生成する。別のマ
クロADD(A、B、C)は各入力値ΔおよびB用のレ
ジスタ、出力値C用のレジスタおよび加算?lr (a
dder)ブロックを生成する。マクロDECR(Δ)
はカウンタ(Counter)ブロックを生成する。p
scsプログラム30は第10図のフローチャートに用
いられたマクロを対応するハードウェア素子へ生成し、
第12図に示すハードウェアブロックを生成する。
図示されたブロックの生成においてPSCSプログラム
30はすでに述べた規則の例のうち規則1と規則2とに
よっている。
30はすでに述べた規則の例のうち規則1と規則2とに
よっている。
第13図はデータ通路と制御通路をともに示した第12
図のブロックの接続を示す。データおよび制御通路の生
成においてデータ/制御シンセサイザプログラム31に
より規則3を用いた。
図のブロックの接続を示す。データおよび制御通路の生
成においてデータ/制御シンセサイザプログラム31に
より規則3を用いた。
第14図は冗長なレジスタを消去するために規則4を適
用して回路を最適化した結果を示す。この規則の適用の
結果、第13図のレジスタR2゜R3,R7,R8,’
R9が除かれた。第15図は冗長な比較器を省略したさ
らなる最適化を行った結果のブロックダイアグラムを示
す。この最適化は規則5の適用によりp 、s c s
プログラムで完成した。
用して回路を最適化した結果を示す。この規則の適用の
結果、第13図のレジスタR2゜R3,R7,R8,’
R9が除かれた。第15図は冗長な比較器を省略したさ
らなる最適化を行った結果のブロックダイアグラムを示
す。この最適化は規則5の適用によりp 、s c s
プログラムで完成した。
システムコントローラブロックが決定したので、集積回
路の他の必要なハードウェアブロックとデータおよび制
御通路およびpscsプログラム30はこれらのハード
ウェア部分および必要な接続を決定するネットリスト1
5を生成する。このネットリストから集積回路を製造す
るマスクデータが利用可能なVLSI CADツール
を用いて直接的に作られる。
路の他の必要なハードウェアブロックとデータおよび制
御通路およびpscsプログラム30はこれらのハード
ウェア部分および必要な接続を決定するネットリスト1
5を生成する。このネットリストから集積回路を製造す
るマスクデータが利用可能なVLSI CADツール
を用いて直接的に作られる。
APPENDIX A
name rpop;
data path @ic< 0:5>、 cv<
0:5>、 sum< O:5>、 @pr< O:5
> ;state4 : 5tateo: 5tate30 : 5tate31 :5tate
21 : 5tate22;5tate20 :
5tate21 ;5tateO:、 ! cp 5
Lateo ;5tateo :、cp 5tate
l ;5tatel :、 cp 5Latel
;5tate 1 :、 ! cp 5tate
20 ;5tate22 :、 GT、CMP、
l 5tate30:5Late22 :、 !
GT、CMP、1 *EQ、CMP、l 5tat
e4 :5tate22 :、 ! GT、CMP
、 l* j EQ、CMP、 1 5tateo:5
tate31 :、 GT、CMP、2 5tat
e30;5tate31 :、 !GT、CMP、
2*EQ、CMP、2 5tate4:5tate31
:、 ! GT、CMP、 2* ! EQ、C
MP、25tateo:5tate30 :: re
Lurncorn:5tate30 :: DECR
,1(cv);5tate4 :: droppop
;5tate4 :: CLR,((cv):5ta
te31 :: CMP、 2(cv、pr);5t
ate22 :: CMP、 1(cv、pr):5
tate21 :: MOVE、 1(sum、cv
);5tate20 :: ADD3.1(ic、c
v、5un);
0:5>、 sum< O:5>、 @pr< O:5
> ;state4 : 5tateo: 5tate30 : 5tate31 :5tate
21 : 5tate22;5tate20 :
5tate21 ;5tateO:、 ! cp 5
Lateo ;5tateo :、cp 5tate
l ;5tatel :、 cp 5Latel
;5tate 1 :、 ! cp 5tate
20 ;5tate22 :、 GT、CMP、
l 5tate30:5Late22 :、 !
GT、CMP、1 *EQ、CMP、l 5tat
e4 :5tate22 :、 ! GT、CMP
、 l* j EQ、CMP、 1 5tateo:5
tate31 :、 GT、CMP、2 5tat
e30;5tate31 :、 !GT、CMP、
2*EQ、CMP、2 5tate4:5tate31
:、 ! GT、CMP、 2* ! EQ、C
MP、25tateo:5tate30 :: re
Lurncorn:5tate30 :: DECR
,1(cv);5tate4 :: droppop
;5tate4 :: CLR,((cv):5ta
te31 :: CMP、 2(cv、pr);5t
ate22 :: CMP、 1(cv、pr):5
tate21 :: MOVE、 1(sum、cv
);5tate20 :: ADD3.1(ic、c
v、5un);
第1a図はフローチャート形式で示された所望の回路の
一部分についての機能レベルでの設計の表現を示す図、 第ib図は集積回路の構造レベルの設計表現を示す図、 第1c図は集積回路チップの製造において用いられる物
理的なレイアウトレベルの回路の設計表現を示す図、 第2図は集積回路が本発明のKBSCシステムによって
フローチャート記載からどのように集積回路のマスクデ
ータが作られるかを示すブロックダイアグラム、 第3図はKBSCシステムの最初の部分の詳細を示す図
、 第4図は本発明のAS rc設計システムがどのように
して素子ライブラリから集積回路ハードウェア素子を抽
出するかを示す図、 第5図は集積回路によって実行される機能的動作のシー
ケンスを決定するフローチャートの一例を示す図、 第6図は第5図において定義された集積回路用のハード
ウェアブロックおよび相互接続条件を示した構造を表す
図、 第7図はフローチャートエディタ窓を示す図、第8図は
フローチャートシミュレータ窓を示す図、 第9図は素子リスト生成に含まれるステップを示す図、 第10図は自動販売機システムの一例を示すフローチャ
ート、 第11図は第10図のフローチャートに用いられる三つ
のマクロのそれぞれに対応するハードウェア部分を示す
図、 第12図は第1O図のフローチャートで決定される集積
回路のハードウェア部分を示す初期のブロックダイアグ
ラム、 第13図は各ブロック間の相互接続を示す、第12図に
対応するブロックタイアゲラム、第14図はレジスタの
最適化後の第13図に対応するブロックダイアグラム、 第15図はさらに最適化を行った後の第14図に対応す
るブロックダイアグラムである。 10・・・KBSCS 11・・・フローチャート、I
5・・・ネットリスト、16・・・CADツール、18
・・・マスクデータ、23・・・マクロライブラリ、3
4・・・素子ライブラリ、35・・・知識ヘース特許出
願人 インターナショナル・チップ・コーポレーション
外1名
一部分についての機能レベルでの設計の表現を示す図、 第ib図は集積回路の構造レベルの設計表現を示す図、 第1c図は集積回路チップの製造において用いられる物
理的なレイアウトレベルの回路の設計表現を示す図、 第2図は集積回路が本発明のKBSCシステムによって
フローチャート記載からどのように集積回路のマスクデ
ータが作られるかを示すブロックダイアグラム、 第3図はKBSCシステムの最初の部分の詳細を示す図
、 第4図は本発明のAS rc設計システムがどのように
して素子ライブラリから集積回路ハードウェア素子を抽
出するかを示す図、 第5図は集積回路によって実行される機能的動作のシー
ケンスを決定するフローチャートの一例を示す図、 第6図は第5図において定義された集積回路用のハード
ウェアブロックおよび相互接続条件を示した構造を表す
図、 第7図はフローチャートエディタ窓を示す図、第8図は
フローチャートシミュレータ窓を示す図、 第9図は素子リスト生成に含まれるステップを示す図、 第10図は自動販売機システムの一例を示すフローチャ
ート、 第11図は第10図のフローチャートに用いられる三つ
のマクロのそれぞれに対応するハードウェア部分を示す
図、 第12図は第1O図のフローチャートで決定される集積
回路のハードウェア部分を示す初期のブロックダイアグ
ラム、 第13図は各ブロック間の相互接続を示す、第12図に
対応するブロックタイアゲラム、第14図はレジスタの
最適化後の第13図に対応するブロックダイアグラム、 第15図はさらに最適化を行った後の第14図に対応す
るブロックダイアグラムである。 10・・・KBSCS 11・・・フローチャート、I
5・・・ネットリスト、16・・・CADツール、18
・・・マスクデータ、23・・・マクロライブラリ、3
4・・・素子ライブラリ、35・・・知識ヘース特許出
願人 インターナショナル・チップ・コーポレーション
外1名
Claims (30)
- (1)集積回路の機能的仕様から直接的に特定用途向集
積回路を設計するための計算機支援設計システムであっ
て、 集積回路についての機能の仕様を定めるために使用者に
よって操作可能な入力手段と、 上記機能的仕様を集積回路の構造レベルの定義に変換す
るコンピュータで作動する変換手段とを備えたことを特
徴とする計算機支援設計システム。 - (2)機能的仕様は一連の動作と条件とを有し、構造レ
ベルの定義はブロックと、ブロック間の相互接続とを有
している請求(1)項記載のシステム。 - (3)入力手段は、集積回路の機能の仕様を記述した一
連の動作と条件を表わす要素を有するフローチャートを
作成するフローチャートエディタを備えている請求(1
)項記載のシステム。 - (4)コンピュータで作動する手段は、動作と条件を実
現する集積回路ハードウェア素子を定める素子ライブラ
リと、構造的な定義に対するブロックに対応する適切な
ハードウェア素子を素子ライブラリから選択する素子選
択手段とを含む請求(1)項記載のシステム。 - (5)集積回路の機能的仕様から直接的に特定用途向集
積回路を設計するための計算機支援設計システムであっ
て、 動作と条件を定めるマクロライブラリと、 集積回路についての機能の仕様を定めるために使用者に
よって操作可能な入力手段であって、この機能的仕様は
一連の動作と条件とを有し、さらに入力手段は使用者が
マクロライブラリから選択されたマクロを各限定された
一連の動作と条件に含まれる動作と条件に対して特定す
ることが可能にする手段を含む入力手段と、 動作と条件を実現する集積回路ハードウェア素子を定め
る素子ライブラリと、上記仕様によって特定されたマク
ロについて素子ライブラリからマクロによって決定され
た動作または条件を実行するためにハードウェア素子を
素子ライブラリから選択する素子選択手段とを含む計算
機支援設計システム。 - (6)素子選択手段は、素子ライブラリからハードウェ
ア素子を選択する規則を含む知識ベースと、上記知識ベ
ースの規則にしたがって素子ライブラリから適切なハー
ドウェア素子を選択するインターフェースエンジン手段
とを備えている請求(5)項に記載のシステム。 - (7)入力手段は一連の動作と条件とを表わす要素を有
するフローチャートを含むフローチャートエディタを備
えた請求(5)項記載のシステム。 - (8)集積回路の動作を使用者が検証し得るためにフロ
ーチャート内で定められた機能を模擬するフローチャー
トシュミレータを備えている請求(7)項記載のシステ
ム。 - (9)入力手段は一連の動作と条件を定めるリストの使
用者による入力を受信する手段を備えている請求(5)
項記載のシステム。 - (10)素子選択手段は素子選択手段と協働してこの素
子選択手段によって選択されたハードウェア素子につい
てのデータ通路を生成するデータ通路発生手段を含む請
求(5)項記載のシステム。 - (11)データ通路発生手段はハードウェア素子間ある
いはハードウェア素子とインターフェースエンジン間の
データ通路を選択する規則を含む知識ベースを含み、素
子選択手段によって選択されたハードウェア素子間のデ
ータ通路を、上記知識ベースの規則と特定マクロの注書
とにしたがって選択する請求(10)項記載のシステム
。 - (12)セル選択手段によって選択されたハードウェア
素子についてのコントローラと制御通路を生成する制御
発生器を含む請求(10)項記載のシステム。 - (13)素子選択手段と協働するネットリスト生成手段
を備え、集積回路の機能的条件を完成するに必要なハー
ドウェア素子を決定するネットリストを出力するもので
ある請求(5)項記載のシステム。 - (14)ネットリストから、特定の機能的条件を有する
集積回路を製造するために必要なマスクデータを生成す
るマスクデータ生成手段を備えている請求(13)項記
載のシステム。 - (15)集積回路の機能的仕様から直接的に特定用途向
集積回路を設計するための計算機支援設計システムであ
って、 一連の動作と条件を定めるマクロライブラリと、一連の
動作と条件を表わす要素を有するフローチャートを作成
するフローチャートエディタであって、フローチャート
で表される各動作と条件に対して、マクロライブラリか
ら選択されたマクロを使用者が特定することを可能にし
ているマクロ特定手段を含むフローチャートエディタと
、 動作と条件を実現する集積回路ハードウェア素子を定め
る素子ライブラリと、 マクロによって決定された動作または条件を実行するた
めにハードウェア素子を素子ライブラリから選択する素
子選択手段と、 素子選択手段と協働してこの素子選択手段によって選択
されたハードウェア素子についてのデータ通路を生成す
るデータ通路発生手段と を備えたことを特徴とする計算機支援設計システム。 - (16)素子選択手段は素子ライブラリからハードウェ
ア素子を選択するための規則を含む知識ベースとインタ
ーフェースエンジンとを備え、 知識ベースの規則にしたがって素子ライブラリからハー
ドウェア素子を選択し、 データ通路発生手段はハードウェア素子間あるいはハー
ドウェア素子とインターフェースエンジン間のデータ通
路を選択する規則を含む知識ベースを含み、素子選択手
段によって選択されたハードウェア素子間のデータ通路
を、上記知識ベースの規則と特定マクロの注書とにした
がって選択する請求(15)項記載のシステム。 - (17)セル選択手段によって選択されたハードウェア
素子についてのコントローラと制御通路を生成する制御
発生器を含む請求(15)項記載のシステム。 - (18)集積回路の機能的仕様から直接的に特定用途向
集積回路を設計するための計算機支援設計システムであ
って、 動作を表わす四角な箱形と条件を表わすひし形と、動作
と条件との間の遷移を示す矢印を有する線を有するフロ
ーチャートを使用者によつて作成し得るとともに、各箱
形やひし形に関して実行すべき特定の動作や条件を与え
る手段を含むフローチャート編集手段と、 動作と条件を実現する集積回路ハードウェア素子を定め
る素子ライブラリと、 素子ライブラリからハードウェア素子を選択する規則お
よびハードウェア素子用のデータおよび制御通路を生成
する規則を含む知識ベース および上記知識ベースと協働して、フローチャート編集
手段で定められたフローチャートを、特定の機能要件を
備えた集積回路に要求される所要のハードウェア素子と
データ用および制御用通路とを決めるネットリストに変
換するエキスパートシステムとを備えたことを特徴とす
る計算機支援設計システム。 - (19)ネットリストから、特別の機能要件を備えた集
積回路を製造するに要するマスクデータを生成する手段
を備えた請求(18)項記載のシステム。 - (20)所望の機能を実行する特定用途向集積回路を設
計する計算機支援設計方法であって、 動作と条件の定義をストアすること、 ストアされた動作と条件を実行するために、利用可能な
集積回路のハードウェア素子を記述したデータをストア
すること、 要求される特定用途向集積回路に対して動作と条件とを
記述すること、 記述された動作と条件に対して、実行すべき所要の動作
と条件に対応する上記ストアされた定義を特定すること
、 特定用途向集積回路の所望の機能を実行するため、特定
の定義に対して、ストアされたデータから集積回路ハー
ドウェア素子を選択することを備えた計算機支援設計方
法。 - (21)ハードウェア素子を選択する過程は実行すべき
動作と条件の特定の定義に対して知識ベースにストアさ
れている素子選択規則を付与するものである請求(20
)項記載の設計方法。 - (22)選択された集積回路のハードウェア素子用のデ
ータ通路を生成する工程を含む請求(21)項記載の方
法。 - (23)データ通路を生成する工程は知識ベースにスト
アされたデータ通路規則を選択された素子に適応するこ
とおよびデータ通路を生成することを含む請求(22)
項記載の方法。 - (24)選択された集積回路のハードウェア素子用の制
御通路を生成する工程を含む請求(23)項記載の方法
。 - (25)集積回路の所望の機能を実行するのに必要なハ
ードウェア素子を決定するネットリストおよび各素子間
の接続条件を選択された集積回路ハードウェア素子に対
して生成する工程を含む請求(20)項記載の方法。 - (26)所望の機能を有する集積回路を製造するために
必要なマスクデータをネットリストから生成することを
含む請求(25)項記載の方法。 - (27)所望の機能を実行する特定用途向集積回路を設
計する知識ベース設計方法であって、 所要の動作と条件を定義するマクロをマクロライブラリ
にストアすること、 動作と条件を実行するために集積回路の利用可能なハー
ドウェア素子を素子ライブラリにストアすること、 ストアされた、マクロによって定義される動作と条件を
実行するために素子ライブラリから選択されたハードウ
ェア素子用の規則を知識ベースにストアすること、 所望の特定用途向集積回路について集積回路によって実
行されるべき機能を行う一連の動作と条件を提案された
特定用途向集積回路について記述すること、 各記述された動作と条件について動作と条件に対応して
マクロライブラリから一連の選択されたマクロを特定す
ること および特定用途向集積回路の所望の機能を実行するに必
要なハードウェア素子を素子ライブラリから選択するた
めに特定のマクロに対して知識ベースの規則を適用する
ことを含むことを特徴とする知識ベース設計方法。 - (28)動作と条件を記述する工程は動作と条件を表す
要素を含むフローチャートを生成することを含む請求(
27)項記載の方法。 - (29)ハードウェア素子間のデータ通路を生成する規
則を知識ベースにストアすることおよび知識ベースの規
則を選択されたハードウェア素子に対してデータ通路を
生成するために知識ベースの規則を特定する手段に適用
することを含む請求(27)項記載の方法。 - (30)選択されたハードウェア素子に対してコントロ
ーラと制御通路を生成する工程を含む請求(29)項記
載の方法。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US07/143,821 US4922432A (en) | 1988-01-13 | 1988-01-13 | Knowledge based method and apparatus for designing integrated circuits using functional specifications |
US143,821 | 1988-01-13 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH01309185A true JPH01309185A (ja) | 1989-12-13 |
JP2862886B2 JP2862886B2 (ja) | 1999-03-03 |
Family
ID=22505806
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP1007550A Expired - Fee Related JP2862886B2 (ja) | 1988-01-13 | 1989-01-12 | Asic用計算機支援設計システム |
Country Status (5)
Country | Link |
---|---|
US (1) | US4922432A (ja) |
JP (1) | JP2862886B2 (ja) |
DE (1) | DE3900750A1 (ja) |
GB (1) | GB2213967B (ja) |
NL (1) | NL192892C (ja) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH06168291A (ja) * | 1992-11-27 | 1994-06-14 | Nec Corp | 接続先一覧表によるフローチャートマクロの接続方式 |
US5751592A (en) * | 1993-05-06 | 1998-05-12 | Matsushita Electric Industrial Co., Ltd. | Apparatus and method of supporting functional design of logic circuit and apparatus and method of verifying functional design of logic circuit |
JP2020510389A (ja) * | 2017-08-18 | 2020-04-02 | エルジー・ケム・リミテッド | カスタマイズされたbmsモジュールおよびその設計方法 |
Families Citing this family (151)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5610828A (en) * | 1986-04-14 | 1997-03-11 | National Instruments Corporation | Graphical system for modelling a process and associated method |
US5095441A (en) * | 1986-09-12 | 1992-03-10 | Digital Equipment Corporation | Rule inference and localization during synthesis of logic circuit designs |
US5151867A (en) * | 1986-09-12 | 1992-09-29 | Digital Equipment Corporation | Method of minimizing sum-of-product cases in a heterogeneous data base environment for circuit synthesis |
US5212650A (en) * | 1986-09-12 | 1993-05-18 | Digital Equipment Corporation | Procedure and data structure for synthesis and transformation of logic circuit designs |
US5150308A (en) * | 1986-09-12 | 1992-09-22 | Digital Equipment Corporation | Parameter and rule creation and modification mechanism for use by a procedure for synthesis of logic circuit designs |
US5197016A (en) * | 1988-01-13 | 1993-03-23 | International Chip Corporation | Integrated silicon-software compiler |
JPH01226066A (ja) * | 1988-03-04 | 1989-09-08 | Hitachi Ltd | ディジタル信号処理プロセッサ |
JPH0769926B2 (ja) * | 1988-03-18 | 1995-07-31 | 株式会社日立製作所 | 符号解読型選択論理生成装置 |
US5173864A (en) * | 1988-08-20 | 1992-12-22 | Kabushiki Kaisha Toshiba | Standard cell and standard-cell-type integrated circuit |
JPH0786883B2 (ja) * | 1988-09-09 | 1995-09-20 | 松下電器産業株式会社 | 網図または諭理回路図自動生成方法およびそのシステム |
US5452231A (en) * | 1988-10-05 | 1995-09-19 | Quickturn Design Systems, Inc. | Hierarchically connected reconfigurable logic assembly |
US5283857A (en) * | 1988-11-14 | 1994-02-01 | Digital Equipment Corporation | Expert system including arrangement for acquiring redesign knowledge |
US5208768A (en) * | 1988-11-14 | 1993-05-04 | Digital Equipment Corporation | Expert system including arrangement for acquiring redesign knowledge |
US5109353A (en) * | 1988-12-02 | 1992-04-28 | Quickturn Systems, Incorporated | Apparatus for emulation of electronic hardware system |
US5329470A (en) * | 1988-12-02 | 1994-07-12 | Quickturn Systems, Inc. | Reconfigurable hardware emulation system |
US5140526A (en) * | 1989-01-06 | 1992-08-18 | Minc Incorporated | Partitioning of Boolean logic equations into physical logic devices |
US5187784A (en) * | 1989-01-13 | 1993-02-16 | Vlsi Technology, Inc. | Integrated circuit placement method using netlist and predetermined ordering constraints to produce a human readable integrated circuit schematic diagram |
US5241656A (en) * | 1989-02-06 | 1993-08-31 | International Business Machines Corporation | Depth buffer clipping for window management |
US5371683A (en) * | 1989-03-22 | 1994-12-06 | Kabushiki Kaisha Toshiba | LSI design support system |
US5353243A (en) | 1989-05-31 | 1994-10-04 | Synopsys Inc. | Hardware modeling system and method of use |
US5369593A (en) | 1989-05-31 | 1994-11-29 | Synopsys Inc. | System for and method of connecting a hardware modeling element to a hardware modeling system |
JPH0341519A (ja) * | 1989-07-10 | 1991-02-22 | Hitachi Ltd | 知識処理システム |
US5243538B1 (en) * | 1989-08-09 | 1995-11-07 | Hitachi Ltd | Comparison and verification system for logic circuits and method thereof |
EP0416669B1 (en) * | 1989-09-05 | 1998-09-09 | Lsi Logic Corporation | Logic compiler for design of circuit models |
JP2801931B2 (ja) * | 1989-09-07 | 1998-09-21 | 松下電器産業株式会社 | 論理設計処理装置および回路変換ルール翻訳装置ならびに回路変換ルール翻訳方法 |
US5307282A (en) * | 1989-09-22 | 1994-04-26 | Hewlett-Packard Company | Method of computer-aided prediction of collisions between objects including fabrication tools and parts to be fabricated |
US5231590A (en) * | 1989-10-13 | 1993-07-27 | Zilog, Inc. | Technique for modifying an integrated circuit layout |
US5448493A (en) * | 1989-12-20 | 1995-09-05 | Xilinx, Inc. | Structure and method for manually controlling automatic configuration in an integrated circuit logic block array |
US5448494A (en) * | 1989-12-20 | 1995-09-05 | Fujitsu Limited | Mask data processing apparatus for integrated circuit production |
US5367468A (en) * | 1990-02-21 | 1994-11-22 | Kabushiki Kaisha Toshiba | Design aid method and design aid apparatus for integrated circuits |
US5384710A (en) * | 1990-03-13 | 1995-01-24 | National Semiconductor Corporation | Circuit level netlist generation |
US5084824A (en) * | 1990-03-29 | 1992-01-28 | National Semiconductor Corporation | Simulation model generation from a physical data base of a combinatorial circuit |
US5553002A (en) | 1990-04-06 | 1996-09-03 | Lsi Logic Corporation | Method and system for creating and validating low level description of electronic design from higher level, behavior-oriented description, using milestone matrix incorporated into user-interface |
US5870308A (en) * | 1990-04-06 | 1999-02-09 | Lsi Logic Corporation | Method and system for creating and validating low-level description of electronic design |
US5222030A (en) * | 1990-04-06 | 1993-06-22 | Lsi Logic Corporation | Methodology for deriving executable low-level structural descriptions and valid physical implementations of circuits and systems from high-level semantic specifications and descriptions thereof |
US5557531A (en) * | 1990-04-06 | 1996-09-17 | Lsi Logic Corporation | Method and system for creating and validating low level structural description of electronic design from higher level, behavior-oriented description, including estimating power dissipation of physical implementation |
US5572436A (en) * | 1990-04-06 | 1996-11-05 | Lsi Logic Corporation | Method and system for creating and validating low level description of electronic design |
US5572437A (en) * | 1990-04-06 | 1996-11-05 | Lsi Logic Corporation | Method and system for creating and verifying structural logic model of electronic design from behavioral description, including generation of logic and timing models |
US5544067A (en) * | 1990-04-06 | 1996-08-06 | Lsi Logic Corporation | Method and system for creating, deriving and validating structural description of electronic system from higher level, behavior-oriented description, including interactive schematic design and simulation |
US5623418A (en) * | 1990-04-06 | 1997-04-22 | Lsi Logic Corporation | System and method for creating and validating structural description of electronic system |
US5544066A (en) * | 1990-04-06 | 1996-08-06 | Lsi Logic Corporation | Method and system for creating and validating low level description of electronic design from higher level, behavior-oriented description, including estimation and comparison of low-level design constraints |
US5555201A (en) * | 1990-04-06 | 1996-09-10 | Lsi Logic Corporation | Method and system for creating and validating low level description of electronic design from higher level, behavior-oriented description, including interactive system for hierarchical display of control and dataflow information |
US5867399A (en) * | 1990-04-06 | 1999-02-02 | Lsi Logic Corporation | System and method for creating and validating structural description of electronic system from higher-level and behavior-oriented description |
US5278769A (en) * | 1991-04-12 | 1994-01-11 | Lsi Logic Corporation | Automatic logic model generation from schematic data base |
US5541849A (en) * | 1990-04-06 | 1996-07-30 | Lsi Logic Corporation | Method and system for creating and validating low level description of electronic design from higher level, behavior-oriented description, including estimation and comparison of timing parameters |
US5598344A (en) * | 1990-04-06 | 1997-01-28 | Lsi Logic Corporation | Method and system for creating, validating, and scaling structural description of electronic device |
US5428550A (en) * | 1990-06-28 | 1995-06-27 | National Semiconductor Corporation | Hierarchical hardware flowchart using symbolic macros |
US5258919A (en) * | 1990-06-28 | 1993-11-02 | National Semiconductor Corporation | Structured logic design method using figures of merit and a flowchart methodology |
US5699310A (en) * | 1990-06-29 | 1997-12-16 | Dynasty Technologies, Inc. | Method and apparatus for a fully inherited object-oriented computer system for generating source code from user-entered specifications |
US5713034A (en) * | 1990-08-07 | 1998-01-27 | Oki Electric Industry Co., Ltd. | CAE system for preparing transmission network and analyzing load in mechanical system |
US5412591A (en) * | 1990-08-09 | 1995-05-02 | Vlsi Technology, Inc. | Schematic compiler for a multi-format high speed multiplier |
US5187671A (en) * | 1990-08-24 | 1993-02-16 | Microelectronics And Computer Technology Corporation | Automated interconnect routing system |
US5406497A (en) * | 1990-09-05 | 1995-04-11 | Vlsi Technology, Inc. | Methods of operating cell libraries and of realizing large scale integrated circuits using a programmed compiler including a cell library |
JPH04116951A (ja) * | 1990-09-07 | 1992-04-17 | Fujitsu Ltd | 半導体集積回路 |
JPH04127275A (ja) * | 1990-09-19 | 1992-04-28 | Fujitsu Ltd | Lsi論理回路自動合成における組合せ回路のテクノロジーマッピング方式 |
US5490082A (en) * | 1990-11-07 | 1996-02-06 | Vlsi Technology, Inc. | Method of graphically designing circuits |
JP2573414B2 (ja) * | 1990-11-21 | 1997-01-22 | 株式会社東芝 | 半導体集積回路製造方法 |
US5303161A (en) * | 1990-12-10 | 1994-04-12 | Hughes Aircraft Company | Technology independent integrated circuit mask artwork generator |
US5740070A (en) * | 1991-06-11 | 1998-04-14 | Mega Chips Corporation | Apparatus for automatically generating logic circuit |
US5473546A (en) * | 1991-06-12 | 1995-12-05 | Lsi Logic Corporation | Method for flattening hierarchical design descriptions |
US5521836A (en) * | 1991-06-28 | 1996-05-28 | Vlsi Technology, Inc. | Method for determining instance placements in circuit layouts |
US5471398A (en) * | 1991-07-01 | 1995-11-28 | Texas Instruments Incorporated | MTOL software tool for converting an RTL behavioral model into layout information comprising bounding boxes and an associated interconnect netlist |
JP3172211B2 (ja) * | 1991-09-05 | 2001-06-04 | 富士通株式会社 | 回路合成システム |
FR2681748B1 (fr) * | 1991-09-20 | 1994-10-14 | Sgs Thomson Microelectronics Sa | Procede pour concevoir des circuits integres controleurs de protocole et systeme pour sa mise en óoeuvre. |
US5574655A (en) * | 1991-10-30 | 1996-11-12 | Xilinx, Inc. | Method of allocating logic using general function components |
US5337255A (en) * | 1991-10-30 | 1994-08-09 | Xilinx, Inc. | Method for implementing set/reset synchronously or asynchronously in a programmable logic device |
US5553001A (en) * | 1991-10-30 | 1996-09-03 | Xilinx, Inc. | Method for optimizing resource allocation starting from a high level |
JPH05128085A (ja) * | 1991-11-08 | 1993-05-25 | Toshiba Corp | システム制御の学習方法 |
US5452227A (en) * | 1991-11-13 | 1995-09-19 | Westinghouse Elec. Corp. | Method and apparatus for converting a programmable logic device designed into a selectable target gate array design |
US5386558A (en) * | 1992-02-24 | 1995-01-31 | Adapsys, Inc. | Method and apparatus for executing control system functions in a computer system |
JPH05274390A (ja) * | 1992-03-30 | 1993-10-22 | Matsushita Electric Ind Co Ltd | 回路素子割り付け方法及び遅延最適化方法並びに論理設計システム |
US5517421A (en) * | 1992-03-31 | 1996-05-14 | Dai Nippon Printing Co., Ltd. | System for managing LSI design part data |
US5491640A (en) * | 1992-05-01 | 1996-02-13 | Vlsi Technology, Inc. | Method and apparatus for synthesizing datapaths for integrated circuit design and fabrication |
US5347465A (en) * | 1992-05-12 | 1994-09-13 | International Business Machines Corporation | Method of integrated circuit chips design |
US5526517A (en) * | 1992-05-15 | 1996-06-11 | Lsi Logic Corporation | Concurrently operating design tools in an electronic computer aided design system |
WO1993024896A1 (en) * | 1992-06-02 | 1993-12-09 | Hewlett-Packard Company | Computer-aided design methods and apparatus for multilevel interconnect technologies |
EP0964345A3 (en) * | 1992-08-26 | 2006-05-03 | Matsushita Electric Industrial Co., Ltd. | A function design device in an LSI automated design system |
EP0600608B1 (en) * | 1992-10-29 | 1999-12-22 | Altera Corporation | Design verification method for programmable logic design |
US5566079A (en) * | 1992-11-12 | 1996-10-15 | Vlsi Technology, Inc. | Parameterized generic multiplier complier |
US5557532A (en) * | 1992-11-12 | 1996-09-17 | Vlsi Technology, Inc. | Parameterized generic compiler |
US5416719A (en) * | 1992-12-17 | 1995-05-16 | Vlsi Technology, Inc. | Computerized generation of truth tables for sequential and combinatorial cells |
WO1994015311A1 (en) * | 1992-12-28 | 1994-07-07 | Xilinx, Inc. | Method for entering state flow diagrams using schematic editor programs |
US5617327A (en) * | 1993-07-30 | 1997-04-01 | Xilinx, Inc. | Method for entering state flow diagrams using schematic editor programs |
WO1994019741A2 (en) * | 1993-02-25 | 1994-09-01 | Reticular Systems, Inc. | Real-time rule based processing system |
US5519633A (en) * | 1993-03-08 | 1996-05-21 | International Business Machines Corporation | Method and apparatus for the cross-sectional design of multi-layer printed circuit boards |
JP3172617B2 (ja) * | 1993-03-10 | 2001-06-04 | 三菱電機株式会社 | 論理記述変換装置及び方法並びに論理合成方法 |
US7043407B2 (en) * | 1997-03-10 | 2006-05-09 | Trilogy Development Group, Inc. | Method and apparatus for configuring systems |
US5956257A (en) * | 1993-03-31 | 1999-09-21 | Vlsi Technology, Inc. | Automated optimization of hierarchical netlists |
FR2704663B1 (fr) * | 1993-04-29 | 1995-06-23 | Sgs Thomson Microelectronics | Procédé et dispositif de détermination de la composition d'un circuit intégré. |
US5465216A (en) * | 1993-06-02 | 1995-11-07 | Intel Corporation | Automatic design verification |
US5487018A (en) * | 1993-08-13 | 1996-01-23 | Vlsi Technology, Inc. | Electronic design automation apparatus and method utilizing a physical information database |
JPH0765040A (ja) * | 1993-08-24 | 1995-03-10 | Matsushita Electric Ind Co Ltd | 機能データインターフェース方法および機能データインターフェース装置 |
CA2126265A1 (en) * | 1993-09-27 | 1995-03-28 | Michael Robert Cantone | System for synthesizing field programmable gate array implementations from high level circuit descriptions |
JPH07105253A (ja) * | 1993-10-07 | 1995-04-21 | Nec Corp | データパス回路レイアウト生成システム |
US5502645A (en) * | 1993-11-05 | 1996-03-26 | Nec Usa, Inc. | Behavioral synthesis for reconfigurable datapath structures |
US5613102A (en) * | 1993-11-30 | 1997-03-18 | Lucent Technologies Inc. | Method of compressing data for use in performing VLSI mask layout verification |
US5481475A (en) * | 1993-12-10 | 1996-01-02 | International Business Machines Corporation | Method of semiconductor device representation for fast and inexpensive simulations of semiconductor device manufacturing processes |
US5680583A (en) * | 1994-02-16 | 1997-10-21 | Arkos Design, Inc. | Method and apparatus for a trace buffer in an emulation system |
GB9404078D0 (en) * | 1994-03-03 | 1994-04-20 | Int Computers Ltd | Design automation method for digital electronic circuits |
JPH07249748A (ja) * | 1994-03-14 | 1995-09-26 | Fujitsu Ltd | マスタースライス型lsiの設計装置 |
US5629860A (en) * | 1994-05-16 | 1997-05-13 | Motorola, Inc. | Method for determining timing delays associated with placement and routing of an integrated circuit |
US5617328A (en) * | 1994-05-23 | 1997-04-01 | Winbond Electronics Corporation | Automatic code pattern generator for repetitious patterns in an integrated circuit layout |
US5535134A (en) * | 1994-06-03 | 1996-07-09 | International Business Machines Corporation | Object placement aid |
EP0685803B1 (en) | 1994-06-03 | 2001-04-18 | Hyundai Electronics America | Method of producing an electrical device adapter |
US5537330A (en) * | 1994-06-10 | 1996-07-16 | International Business Machines Corporation | Method for mapping in logic synthesis by logic classification |
US5586319A (en) * | 1994-07-27 | 1996-12-17 | Vlsi Technology, Inc. | Netlist editor allowing for direct, interactive low-level editing of netlists |
US5646862A (en) * | 1994-09-29 | 1997-07-08 | Ford Motor Company | Vendor-neutral integrated vehicle electrical design and analysis system and method |
US5515302A (en) * | 1994-11-07 | 1996-05-07 | Motorola, Inc. | Method for identifying excessive power consumption sites within a circuit |
US7068270B1 (en) * | 1994-12-02 | 2006-06-27 | Texas Instruments Incorporated | Design of integrated circuit package using parametric solids modeller |
US5748943A (en) * | 1995-10-04 | 1998-05-05 | Ford Global Technologies, Inc. | Intelligent CAD process |
US5870588A (en) * | 1995-10-23 | 1999-02-09 | Interuniversitair Micro-Elektronica Centrum(Imec Vzw) | Design environment and a design method for hardware/software co-design |
JP2869379B2 (ja) * | 1996-03-15 | 1999-03-10 | 三菱電機株式会社 | プロセッサ合成システム及びプロセッサ合成方法 |
US5903886A (en) * | 1996-04-30 | 1999-05-11 | Smartlynx, Inc. | Hierarchical adaptive state machine for emulating and augmenting software |
US5812416A (en) * | 1996-07-18 | 1998-09-22 | Lsi Logic Corporation | Integrated circuit design decomposition |
US6178494B1 (en) * | 1996-09-23 | 2001-01-23 | Virtual Computer Corporation | Modular, hybrid processor and method for producing a modular, hybrid processor |
US5963454A (en) * | 1996-09-25 | 1999-10-05 | Vlsi Technology, Inc. | Method and apparatus for efficiently implementing complex function blocks in integrated circuit designs |
US5943485A (en) * | 1996-10-15 | 1999-08-24 | Motorola, Inc. | Method for testing and for generating a mapping for an electronic device |
US5841967A (en) * | 1996-10-17 | 1998-11-24 | Quickturn Design Systems, Inc. | Method and apparatus for design verification using emulation and simulation |
US5799293A (en) * | 1996-11-04 | 1998-08-25 | Ford Global Technologies, Inc. | Method for optimizing the design of a product using knowledge-based engineering techniques |
US6910200B1 (en) * | 1997-01-27 | 2005-06-21 | Unisys Corporation | Method and apparatus for associating selected circuit instances and for performing a group operation thereon |
US5883814A (en) * | 1997-03-13 | 1999-03-16 | International Business Machines Corporation | System-on-chip layout compilation |
US5867180A (en) * | 1997-03-13 | 1999-02-02 | International Business Machines Corporation | Intelligent media memory statically mapped in unified memory architecture |
US5901304A (en) * | 1997-03-13 | 1999-05-04 | International Business Machines Corporation | Emulating quasi-synchronous DRAM with asynchronous DRAM |
US6389379B1 (en) | 1997-05-02 | 2002-05-14 | Axis Systems, Inc. | Converification system and method |
US6026230A (en) * | 1997-05-02 | 2000-02-15 | Axis Systems, Inc. | Memory simulation system and method |
US6134516A (en) * | 1997-05-02 | 2000-10-17 | Axis Systems, Inc. | Simulation server system and method |
US6421251B1 (en) | 1997-05-02 | 2002-07-16 | Axis Systems Inc | Array board interconnect system and method |
US6321366B1 (en) | 1997-05-02 | 2001-11-20 | Axis Systems, Inc. | Timing-insensitive glitch-free logic system and method |
US6009256A (en) * | 1997-05-02 | 1999-12-28 | Axis Systems, Inc. | Simulation/emulation system and method |
US5960191A (en) | 1997-05-30 | 1999-09-28 | Quickturn Design Systems, Inc. | Emulation system with time-multiplexed interconnect |
US6152612A (en) * | 1997-06-09 | 2000-11-28 | Synopsys, Inc. | System and method for system level and circuit level modeling and design simulation using C++ |
US5970240A (en) * | 1997-06-25 | 1999-10-19 | Quickturn Design Systems, Inc. | Method and apparatus for configurable memory emulation |
GB2354614B (en) * | 1998-05-06 | 2003-05-14 | Acuid Corp Ltd | A system for modelling memory business parameters |
US6272671B1 (en) | 1998-09-11 | 2001-08-07 | Lsi Logic Corporation | Extractor and schematic viewer for a design representation, and associated method |
ATE231992T1 (de) * | 1998-11-30 | 2003-02-15 | Actcon Control Ab | Verfahren um objekte in den arbeitsbereich in eine rechneranwendung einzubringen |
EP1156523A4 (en) * | 1999-02-17 | 2003-08-06 | Hitachi Ltd | STORAGE MEDIUM AND METHOD FOR MANUFACTURING AN INTEGRATED SEMICONDUCTOR CIRCUIT |
US6832182B1 (en) | 1999-04-08 | 2004-12-14 | Transim Technology Corporation | Circuit simulator |
US6999907B2 (en) | 2000-09-19 | 2006-02-14 | Draftlogic System, Inc. | System and process for client-driven automated computer-aided drafting |
US7043408B2 (en) | 2000-11-08 | 2006-05-09 | Virtual Supply Chain Engineering, Inc. | Computer-aided design neutral graphical data interface |
US6668360B1 (en) | 2001-01-08 | 2003-12-23 | Taiwan Semiconductor Manufacturing Company | Automatic integrated circuit design kit qualification service provided through the internet |
US6609238B1 (en) * | 2001-06-15 | 2003-08-19 | Lsi Logic Corporation | Method of control cell placement to minimize connection length and cell delay |
JP2003216670A (ja) * | 2002-01-25 | 2003-07-31 | Hitachi Ltd | コンピュータ読み取り可能な記録媒体および半導体集積回路装置 |
US7873223B2 (en) * | 2002-10-15 | 2011-01-18 | Definiens Ag | Cognition integrator and language |
US8594410B2 (en) * | 2006-08-28 | 2013-11-26 | Definiens Ag | Context driven image mining to generate image-based biomarkers |
US7801361B2 (en) * | 2002-10-15 | 2010-09-21 | Definiens Ag | Analyzing pixel data using image, thematic and object layers of a computer-implemented network structure |
US7164355B2 (en) * | 2004-05-19 | 2007-01-16 | Rosemount Inc. | Process transmitter with a plurality of operating modes |
WO2006074239A2 (en) * | 2005-01-05 | 2006-07-13 | Xtremedata, Inc. | Systems and methods for providing co-processors to computing systems |
US7603573B2 (en) * | 2006-10-24 | 2009-10-13 | Silicon Graphics, Inc. | System and method for optimizing computational density |
US8989468B2 (en) | 2007-05-25 | 2015-03-24 | Definiens Ag | Generating an anatomical model using a rule-based segmentation and classification process |
US10541046B2 (en) * | 2009-09-02 | 2020-01-21 | Microsoft Technology Licensing, Llc | Creating genetic devices |
US11556406B2 (en) | 2018-12-03 | 2023-01-17 | Synopsys, Inc. | Automatic root cause analysis of complex static violations by static information repository exploration |
Family Cites Families (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FR2245984B1 (ja) * | 1973-09-27 | 1977-03-18 | Ibm | |
US4584653A (en) * | 1983-03-22 | 1986-04-22 | Fujitsu Limited | Method for manufacturing a gate array integrated circuit device |
GB8329888D0 (en) * | 1983-11-09 | 1983-12-14 | Philips Electronic Associated | Generating component interconection lists |
JPS60114968A (ja) * | 1983-11-28 | 1985-06-21 | Hitachi Ltd | 推論システム |
US4656603A (en) * | 1984-03-01 | 1987-04-07 | The Cadware Group, Ltd. | Schematic diagram generating system using library of general purpose interactively selectable graphic primitives to create special applications icons |
US4648044A (en) * | 1984-06-06 | 1987-03-03 | Teknowledge, Inc. | Basic expert system tool |
US4658370A (en) * | 1984-06-07 | 1987-04-14 | Teknowledge, Inc. | Knowledge engineering tool |
US4703435A (en) * | 1984-07-16 | 1987-10-27 | International Business Machines Corporation | Logic Synthesizer |
EP0169576B1 (en) * | 1984-07-27 | 1990-12-19 | Hitachi, Ltd. | Method and system of circuit pattern understanding and layout |
US4675829A (en) * | 1984-07-27 | 1987-06-23 | Intellicorp Corporation | Method and apparatus for building knowledge-based systems |
US4635208A (en) * | 1985-01-18 | 1987-01-06 | Hewlett-Packard Company | Computer-aided design of systems |
US4700316A (en) * | 1985-03-01 | 1987-10-13 | International Business Machines Corporation | Automated book layout in static CMOS |
JPS6274158A (ja) * | 1985-09-27 | 1987-04-04 | Hitachi Ltd | 回路変換方式 |
AU7727987A (en) * | 1986-09-12 | 1988-03-17 | Digital Equipment Corporation | Cad of logic circuits: procedure and data structure |
-
1988
- 1988-01-13 US US07/143,821 patent/US4922432A/en not_active Expired - Lifetime
-
1989
- 1989-01-11 GB GB8900594A patent/GB2213967B/en not_active Expired - Lifetime
- 1989-01-12 JP JP1007550A patent/JP2862886B2/ja not_active Expired - Fee Related
- 1989-01-12 DE DE3900750A patent/DE3900750A1/de not_active Ceased
- 1989-01-13 NL NL8900084A patent/NL192892C/nl not_active IP Right Cessation
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH06168291A (ja) * | 1992-11-27 | 1994-06-14 | Nec Corp | 接続先一覧表によるフローチャートマクロの接続方式 |
US5751592A (en) * | 1993-05-06 | 1998-05-12 | Matsushita Electric Industrial Co., Ltd. | Apparatus and method of supporting functional design of logic circuit and apparatus and method of verifying functional design of logic circuit |
JP2020510389A (ja) * | 2017-08-18 | 2020-04-02 | エルジー・ケム・リミテッド | カスタマイズされたbmsモジュールおよびその設計方法 |
Also Published As
Publication number | Publication date |
---|---|
GB8900594D0 (en) | 1989-03-15 |
US4922432A (en) | 1990-05-01 |
GB2213967A (en) | 1989-08-23 |
NL192892C (nl) | 1998-04-02 |
NL8900084A (nl) | 1989-08-01 |
JP2862886B2 (ja) | 1999-03-03 |
DE3900750A1 (de) | 1989-07-27 |
NL192892B (nl) | 1997-12-01 |
GB2213967B (en) | 1992-06-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JPH01309185A (ja) | Asic用計算機支援設計システム | |
US6366874B1 (en) | System and method for browsing graphically an electronic design based on a hardware description language specification | |
US5933356A (en) | Method and system for creating and verifying structural logic model of electronic design from behavioral description, including generation of logic and timing models | |
US6889370B1 (en) | Method and apparatus for selecting and aligning cells using a placement tool | |
US6216252B1 (en) | Method and system for creating, validating, and scaling structural description of electronic device | |
US5880971A (en) | Methodology for deriving executable low-level structural descriptions and valid physical implementations of circuits and systems from semantic specifications and descriptions thereof | |
US5220512A (en) | System for simultaneous, interactive presentation of electronic circuit diagrams and simulation data | |
US6470482B1 (en) | Method and system for creating, deriving and validating structural description of electronic system from higher level, behavior-oriented description, including interactive schematic design and simulation | |
US6311309B1 (en) | Methods and apparatus for simulating a portion of a circuit design | |
US5493508A (en) | Specification and design of complex digital systems | |
JP3027009B2 (ja) | 設計取り込みシステム | |
US8417504B2 (en) | Conversion of circuit description to a transaction model | |
US8046735B1 (en) | Transforming graphical objects in a graphical modeling environment | |
JP2001282878A (ja) | コンピュータドローイングシステム | |
EP0508620B1 (en) | Method and System for automatically determing the logical function of a circuit | |
US6754879B1 (en) | Method and apparatus for providing modularity to a behavioral description of a circuit design | |
Carter | Computer-aided design of integrated circuits | |
Keutzer | The need for formal methods for integrated circuit design | |
Foulk | CAD in electronics | |
JP4652072B2 (ja) | シミュレーション機能付設計支援装置及び方法並びにシミュレーション機能付運転支援装置及び方法 | |
JPH05282394A (ja) | 半導体集積回路設計支援装置 | |
Falk | Tools II/Design techniques: Design for production: The computer steps in to automate physical design and testing of computers and other electronic equipment | |
JPH04255075A (ja) | Vlsiレイアウト設計支援装置 | |
JP2937381B2 (ja) | 集積回路の設計方法及び設計装置 | |
JPH0388071A (ja) | 設計装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
LAPS | Cancellation because of no payment of annual fees |