JPH0644596B2 - Cmosセル・レイアウトの形成方法 - Google Patents
Cmosセル・レイアウトの形成方法Info
- Publication number
- JPH0644596B2 JPH0644596B2 JP60271728A JP27172885A JPH0644596B2 JP H0644596 B2 JPH0644596 B2 JP H0644596B2 JP 60271728 A JP60271728 A JP 60271728A JP 27172885 A JP27172885 A JP 27172885A JP H0644596 B2 JPH0644596 B2 JP H0644596B2
- Authority
- JP
- Japan
- Prior art keywords
- cell
- layout
- cmos
- logic block
- logic
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Lifetime
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
- G06F30/39—Circuit design at the physical level
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)
- Semiconductor Integrated Circuits (AREA)
- Metal-Oxide And Bipolar Metal-Oxide Semiconductor Integrated Circuits (AREA)
Description
【発明の詳細な説明】 以下の順序で本発明を説明する。
A.産業上の利用分野 B.従来技術 C.発明が解決しようとする問題点 D.問題点を解決するための手段 E.実施例 e1.概要 e2.ブール関数 e3.チップ上の結線構造 e4.ブール表現のグラフ e5.別の結線構造 e6.別のブール関数に対応する結線構造 e7.スタック配向技術 e8.コンピュータによるレイアウト作成動作 G.発明の効果 A.産業上の利用分野 この発明は、設計の自動化システムに関し、特に半導体
を処理するためのデータを準備するためのすぐれた方法
に関するものである。
を処理するためのデータを準備するためのすぐれた方法
に関するものである。
特にこの発明は、相補的金属酸化半導体(CMOS)デ
バイスに関する。
バイスに関する。
B.従来技術 大規模集積回路(LSI)が世に出たことにより、単一
の半導体ウェーハ・チップ上に何千もの回路を製造する
ことが可能となった。このとき、単一の半導体チップ上
に製造されるLSI回路の数に比例して、それらの回路
の結線と分離を正しく配置するための手続の複雑さが増
してくる。この複雑さのため、コンピュータ支援の自動
化設計システム(CAD)が必要になってきた。
の半導体ウェーハ・チップ上に何千もの回路を製造する
ことが可能となった。このとき、単一の半導体チップ上
に製造されるLSI回路の数に比例して、それらの回路
の結線と分離を正しく配置するための手続の複雑さが増
してくる。この複雑さのため、コンピュータ支援の自動
化設計システム(CAD)が必要になってきた。
自動化回路設計システムの典型的な従来技術として、米
国特許第3475621号及び米国特許第356791
4号に記載されているものがある。これらの従来技術
は、典型的には、直交座標を設け、これらの座標を利用
して、製造すべき回路中の論理素子の接続点を与えるた
めの技術を開示している。この技術はセル的な論理設計
(Clllular logic design)と呼ばれることがあり、その
論理素子はセルと呼ばれる。この方法においては、論理
素子を記述するデータと、直交座標と、論理素子の接続
点とがデータ処理ユニットに入力され、回路生成プログ
ラムがデータ処理ユニットを作動して回路素子またはセ
ルの間の接続を与える。しかし、これら従来技術のシス
テムは、製造できる回路の複雑さに限界がある。という
のは、単一パス内で論理機能の形成を可能ならしめるた
めに、各回路には、セル間のすべての可能な接続点に使
用されるすべての可能な論理セルの記述が必要だからで
ある。例えば、2入力のNANDゲートは、固定された
入出力位置につき垂直及び水平結線をはかるだけでも、
12の可能な入出力結線パターンの組み合わせを有す
る。従来技術のシステムでは、完全な内容としてこれら
の可能なNANDゲートの構成の各々を記述するデータ
は、システムに記憶されなくてはならない。そして、そ
の各構成がセルと考えられる。また、入出力結線配置に
加えて、この技術には多重電力レベルも必要となる。。
もし2つの電力が利用可能であるなら、必要とされるセ
ルの数は24まで増加する。このNANDゲートは、例
えばOR、AND、NOR及びNOTなどの他の基本的
な論理セルと組み合わせて使用することができる。これ
らの回路の各々は個別の構成を要し、回路の多様性はさ
らに増大する。このことにより、従来技術は、比較的簡
単な構成または、より複雑な構成のきわめて特殊な実施
例、例えば米国特許第3987287号に開示されてい
るような高集積密度論理アレイに限定される。さらに、
従来技術を利用して構成される回路パターンは、改変に
役立たない。すなわち、回路の任意のセルにおけるどの
ような変更も、全く新しい回路の製造を要するのであ
る。
国特許第3475621号及び米国特許第356791
4号に記載されているものがある。これらの従来技術
は、典型的には、直交座標を設け、これらの座標を利用
して、製造すべき回路中の論理素子の接続点を与えるた
めの技術を開示している。この技術はセル的な論理設計
(Clllular logic design)と呼ばれることがあり、その
論理素子はセルと呼ばれる。この方法においては、論理
素子を記述するデータと、直交座標と、論理素子の接続
点とがデータ処理ユニットに入力され、回路生成プログ
ラムがデータ処理ユニットを作動して回路素子またはセ
ルの間の接続を与える。しかし、これら従来技術のシス
テムは、製造できる回路の複雑さに限界がある。という
のは、単一パス内で論理機能の形成を可能ならしめるた
めに、各回路には、セル間のすべての可能な接続点に使
用されるすべての可能な論理セルの記述が必要だからで
ある。例えば、2入力のNANDゲートは、固定された
入出力位置につき垂直及び水平結線をはかるだけでも、
12の可能な入出力結線パターンの組み合わせを有す
る。従来技術のシステムでは、完全な内容としてこれら
の可能なNANDゲートの構成の各々を記述するデータ
は、システムに記憶されなくてはならない。そして、そ
の各構成がセルと考えられる。また、入出力結線配置に
加えて、この技術には多重電力レベルも必要となる。。
もし2つの電力が利用可能であるなら、必要とされるセ
ルの数は24まで増加する。このNANDゲートは、例
えばOR、AND、NOR及びNOTなどの他の基本的
な論理セルと組み合わせて使用することができる。これ
らの回路の各々は個別の構成を要し、回路の多様性はさ
らに増大する。このことにより、従来技術は、比較的簡
単な構成または、より複雑な構成のきわめて特殊な実施
例、例えば米国特許第3987287号に開示されてい
るような高集積密度論理アレイに限定される。さらに、
従来技術を利用して構成される回路パターンは、改変に
役立たない。すなわち、回路の任意のセルにおけるどの
ような変更も、全く新しい回路の製造を要するのであ
る。
米国特許第4377849号の技術は、後でより大きい
マクロな回路を構成すべく結合され得るような基本的な
セルの記述を可能とすることにより、レイアウトが階層
的に作成され得るような方法を簡単に与えるように思わ
れる。このセルは、自動的に生成れるのではなくて手書
きで設計される。これらのセルは、相当に小さい格子上
にレイアウトされる基本的な物理ユニットである。そし
て、回路のブール式または関数的な記述からのレイアウ
トの生成はない。この特許に記述されている単一のプロ
グラマブル論理アレイ(PLA)においてすら、PLA
自身の最小の機能的形式がそのパッケージの外側で実行
されているように見える。
マクロな回路を構成すべく結合され得るような基本的な
セルの記述を可能とすることにより、レイアウトが階層
的に作成され得るような方法を簡単に与えるように思わ
れる。このセルは、自動的に生成れるのではなくて手書
きで設計される。これらのセルは、相当に小さい格子上
にレイアウトされる基本的な物理ユニットである。そし
て、回路のブール式または関数的な記述からのレイアウ
トの生成はない。この特許に記述されている単一のプロ
グラマブル論理アレイ(PLA)においてすら、PLA
自身の最小の機能的形式がそのパッケージの外側で実行
されているように見える。
他の関連がある米国特許として番号だけを掲げておく:
4212026;4218693;4233526;4
402044;及び4412240。
4212026;4218693;4233526;4
402044;及び4412240。
上述の特許に記載された方法のうち、スタティックCM
OSブック・レイアウトの生成に利用し得るものはな
い。
OSブック・レイアウトの生成に利用し得るものはな
い。
C.発明が解決しようとする問題点 この発明の目的は、スタティックCMOSブック・レイ
アウトを自動的に形成するための方法を提供することに
ある。
アウトを自動的に形成するための方法を提供することに
ある。
D.問題点を解決するための手段 本発明によれば、機能的回路のレイアウトが、ブール式
から生成される。コンピュータ・プログラムは、そのブ
ックの高レベルの機能的な記述からCMOSブックのレ
イアウトを生成する。そのようなプログラムは2つの点
で有利である。第1にそのプログラムは、最小の時間で
ブック・セットを設計するのに使用できる。第2に、そ
のプログラムは、最小の時間でブック・セットを設計す
るのに使用できる。第2に、そのプログラムは、フロン
トエンドが論理を一組の直列並列ネットワークにマップ
し、プログラムがそのような各ネットワークのレイアウ
トを生成するような合成システムの一部として使用する
ことができる。そのプログラムへの入力は、出力にイン
バータを有するAND及びOR機能としてのネットワー
クの論理記述である。
から生成される。コンピュータ・プログラムは、そのブ
ックの高レベルの機能的な記述からCMOSブックのレ
イアウトを生成する。そのようなプログラムは2つの点
で有利である。第1にそのプログラムは、最小の時間で
ブック・セットを設計するのに使用できる。第2に、そ
のプログラムは、最小の時間でブック・セットを設計す
るのに使用できる。第2に、そのプログラムは、フロン
トエンドが論理を一組の直列並列ネットワークにマップ
し、プログラムがそのような各ネットワークのレイアウ
トを生成するような合成システムの一部として使用する
ことができる。そのプログラムへの入力は、出力にイン
バータを有するAND及びOR機能としてのネットワー
クの論理記述である。
尚、結線の労力を最小限にとどめるために、n側上のト
ランジスタのポリシリコン・ゲートをもつチップの影像
はP側上のトランジスタのポリシリコンゲートに垂直に
整合される。ソース及びドレインの間の接続線はゲート
に垂直であり、金属の1つの層に沿って走行している。
ランジスタのポリシリコン・ゲートをもつチップの影像
はP側上のトランジスタのポリシリコンゲートに垂直に
整合される。ソース及びドレインの間の接続線はゲート
に垂直であり、金属の1つの層に沿って走行している。
E.実施例 e1.概要 以下の記載は、シリコンにおけるCMOS論理ネットワ
ークのレイアウトの設計自動化技術であり、特に、ブッ
クの高レベル機能的記述からCMOSブックのレイアウ
トを生成するコンピュータ・プログラムが記載される。
このプログラムへの入力は、ある場合には出力に単一の
インバータを有するようなAND及びOR機能として実
現され得るネットワークの論理のブール表現である。こ
のプログラムは、IBMシステム370などのような任
意の汎用コンピュータ上で走らせることができる。
ークのレイアウトの設計自動化技術であり、特に、ブッ
クの高レベル機能的記述からCMOSブックのレイアウ
トを生成するコンピュータ・プログラムが記載される。
このプログラムへの入力は、ある場合には出力に単一の
インバータを有するようなAND及びOR機能として実
現され得るネットワークの論理のブール表現である。こ
のプログラムは、IBMシステム370などのような任
意の汎用コンピュータ上で走らせることができる。
CMOS回路のブックを支持することになるシリコン・
チップの影像は、n側にあるトランジスタのポリシリコ
ン・ゲートがp側にあるトランジスタのポリシリコン・
ゲートとは垂直に整合され、以てブック内の結線労力が
低減されるという事実によって特徴づけられる。さら
に、トランジスタのソースとドレイン間の内部結線は、
ゲートに垂直で、金属の1つの層にのみ沿って走行して
いる。第2のレベルの金属は、p側の出力をn側の出力
と相互接続するために使用される。しかし、このことは
必須ではない。なぜなら、その両側の出力が隣接するト
ラック上にあって重なり、以て直接接続を可能ならしめ
ることをプログラムが保証するからである。
チップの影像は、n側にあるトランジスタのポリシリコ
ン・ゲートがp側にあるトランジスタのポリシリコン・
ゲートとは垂直に整合され、以てブック内の結線労力が
低減されるという事実によって特徴づけられる。さら
に、トランジスタのソースとドレイン間の内部結線は、
ゲートに垂直で、金属の1つの層にのみ沿って走行して
いる。第2のレベルの金属は、p側の出力をn側の出力
と相互接続するために使用される。しかし、このことは
必須ではない。なぜなら、その両側の出力が隣接するト
ラック上にあって重なり、以て直接接続を可能ならしめ
ることをプログラムが保証するからである。
多くの場合、レイアウトにおいて別のトランジスタに隣
接するトランジスタは、p側においてもn側においても
その隣接するトランジスタのソースに接続されたドレイ
ンを有している。この場合、それらの拡散領域が共有さ
れるようにこれらのトランジスタを方向づけることが好
都合である。これにより開孔接点に関連する金属結線が
回避されるし、多くの場合、水平方向の結線トラックを
減少することもできる。
接するトランジスタは、p側においてもn側においても
その隣接するトランジスタのソースに接続されたドレイ
ンを有している。この場合、それらの拡散領域が共有さ
れるようにこれらのトランジスタを方向づけることが好
都合である。これにより開孔接点に関連する金属結線が
回避されるし、多くの場合、水平方向の結線トラックを
減少することもできる。
拡散領域の共有化を極大化することの問題として、p側
をあらわすグラフを経由する一組の経路をも形成するよ
うな、n側をあらわすグラフを経由する一組の経路を決
定することがある。しかし、拡散領域の切れ目の数を最
小限に減らすことは、拡散領域の切れ目の数の増大を許
す場合に比較して水平方向により多の結線を要求するこ
とになる。さらに詳しく分析を行うと、このことは特
に、グラフの所与のノードに接続されたトランジスタ
が、互いに遠くに拡がりすぎている場合に起こることが
分かる。そこでコンピュータ・プログラムは、拡散領域
の切り目の数を最適化するときに、グラフの局所領域を
視察することによって、この観察結果を利用する。
をあらわすグラフを経由する一組の経路をも形成するよ
うな、n側をあらわすグラフを経由する一組の経路を決
定することがある。しかし、拡散領域の切れ目の数を最
小限に減らすことは、拡散領域の切れ目の数の増大を許
す場合に比較して水平方向により多の結線を要求するこ
とになる。さらに詳しく分析を行うと、このことは特
に、グラフの所与のノードに接続されたトランジスタ
が、互いに遠くに拡がりすぎている場合に起こることが
分かる。そこでコンピュータ・プログラムは、拡散領域
の切り目の数を最適化するときに、グラフの局所領域を
視察することによって、この観察結果を利用する。
さらなる観察により、直列及び並列の結合グループを計
算することは、グラフの論理関数を変更しないけれど
も、よりよいレイアウト特性をもたらすということがわ
かる。プログラムは、このことも考慮する。もし、いく
つかのグループの順序を計算し、またはいくつかのグル
ープを配向することによって拡散領域の切れ目が減少す
るなら、プログラムはそれを実行する。
算することは、グラフの論理関数を変更しないけれど
も、よりよいレイアウト特性をもたらすということがわ
かる。プログラムは、このことも考慮する。もし、いく
つかのグループの順序を計算し、またはいくつかのグル
ープを配向することによって拡散領域の切れ目が減少す
るなら、プログラムはそれを実行する。
多くの場合、アースとVDD結線は、金属線と平行でト
ランジスタに直交して走行するバスのかたちで与えられ
る。このことは、結線接続の問題の性質を変更する。な
ぜなら、グリーディ(greedy)アルゴリズムによって最適
な結果をもたらす通常のスティック・パッキング(stick
-packing)は最早十分でないからである。このときは、
よりよい結果が得られるかどうか調べるために、出力ラ
インをp側のVDDラインと交換するか、出力ラインを
n側のアース・ラインと交換することが必要である。こ
のプログラムは、この種のチェックをも行う。
ランジスタに直交して走行するバスのかたちで与えられ
る。このことは、結線接続の問題の性質を変更する。な
ぜなら、グリーディ(greedy)アルゴリズムによって最適
な結果をもたらす通常のスティック・パッキング(stick
-packing)は最早十分でないからである。このときは、
よりよい結果が得られるかどうか調べるために、出力ラ
インをp側のVDDラインと交換するか、出力ラインを
n側のアース・ラインと交換することが必要である。こ
のプログラムは、この種のチェックをも行う。
さらに、経路の割り付けも両側の出力を接続を容易なら
しめる効果を及ぼす。プログラムは、迷路追跡手段(maz
e runner)を用いて、出力を接続するための可能な最善
の方法をチェックする。このプロセスにおいては、スタ
ックされた貫通孔、すなわち金属から拡散領域への貫通
孔上に金属から金属への貫通孔が来ることが回避され
る。
しめる効果を及ぼす。プログラムは、迷路追跡手段(maz
e runner)を用いて、出力を接続するための可能な最善
の方法をチェックする。このプロセスにおいては、スタ
ックされた貫通孔、すなわち金属から拡散領域への貫通
孔上に金属から金属への貫通孔が来ることが回避され
る。
プログラムのこのフェーズの結果は、接続経路と、必要
なすべての切れ目を有するレイアウトの置き換えをあら
わすスティック図である。この結果は次に、レイアウト
の位相幾何的規則を含む別のプログラムに送られる。こ
のプログラムの出力は、レイアウトの位相幾何的記述で
ある。この技術的規則はさまざまな影像に適合するよう
に容易に変更可能である。このプログラムはまた、例え
ばバッファや、異なるトランジスタの寸法や、接続され
た接点や、拡散領域の切れ目の代わりの分離デバイスを
もつブック・レイアウトを付加的に与えるように容易に
変更可能である。
なすべての切れ目を有するレイアウトの置き換えをあら
わすスティック図である。この結果は次に、レイアウト
の位相幾何的規則を含む別のプログラムに送られる。こ
のプログラムの出力は、レイアウトの位相幾何的記述で
ある。この技術的規則はさまざまな影像に適合するよう
に容易に変更可能である。このプログラムはまた、例え
ばバッファや、異なるトランジスタの寸法や、接続され
た接点や、拡散領域の切れ目の代わりの分離デバイスを
もつブック・レイアウトを付加的に与えるように容易に
変更可能である。
e2.ブール関数 所与のブール関数は、複数の異なる論理構成により実施
可能である。例えば、第1図に示すように、関数f=a
+bc+deは、ORゲート2及び3と、ANDゲート
4を用いて実現され、こうして得られた信号は、出力端
子6で関数fを与えるためにインバータ5により反転さ
れる。また別の構成例が第2図に示されている。第2図
においては、NANDゲート7、8及び9を用いて、関
数fが得られ、その関数は出力端子10に供給される。
ある種の例ではこれらは受容できる実施例であるけれど
も、スタティックCMOS技術は、全体の関数を、以下
で論理セルと呼ぶ単一のゲートで実行することを可能な
らしめる。
可能である。例えば、第1図に示すように、関数f=a
+bc+deは、ORゲート2及び3と、ANDゲート
4を用いて実現され、こうして得られた信号は、出力端
子6で関数fを与えるためにインバータ5により反転さ
れる。また別の構成例が第2図に示されている。第2図
においては、NANDゲート7、8及び9を用いて、関
数fが得られ、その関数は出力端子10に供給される。
ある種の例ではこれらは受容できる実施例であるけれど
も、スタティックCMOS技術は、全体の関数を、以下
で論理セルと呼ぶ単一のゲートで実行することを可能な
らしめる。
e3.チップ上の結線構造 第3図は、第2図に示す論理ネットワークのNAND回
路によるチップ上の結線構造である。この図において
は、n拡散領域11とp拡散領域12が存在し、VDD
バス13はp拡散領域に、アース・バス14はn拡散領
域に、それぞれ接続されている。金属から拡散領域への
接点15は、ライン16におけるように、同タイプの個
々の拡散領域を接続するために利用される。ライン17
のような垂直方向の第2レベルの金属線は、p拡散領域
とn拡散領域との間に接続をはかるために必要である。
ポリシリコン条片18は、さまざまな入力関数をp拡散
領域12とn拡散領域11の両方に与えるためのゲート
として機能する。ポリシリコンから金属への接点19も
また、ゲート・ソース及びドレイン間にさまざまな接続
をはかるために必要である。さらに、接点20などの、
第1レベル金属から第2レベル金属への接続接点もやは
り必要である。これらの回路構成において、各拡散領域
の間には、“切れ目”21があり、この結果、チップ上
で関数を実現するために必要な面積が増大することが見
てとれる。
路によるチップ上の結線構造である。この図において
は、n拡散領域11とp拡散領域12が存在し、VDD
バス13はp拡散領域に、アース・バス14はn拡散領
域に、それぞれ接続されている。金属から拡散領域への
接点15は、ライン16におけるように、同タイプの個
々の拡散領域を接続するために利用される。ライン17
のような垂直方向の第2レベルの金属線は、p拡散領域
とn拡散領域との間に接続をはかるために必要である。
ポリシリコン条片18は、さまざまな入力関数をp拡散
領域12とn拡散領域11の両方に与えるためのゲート
として機能する。ポリシリコンから金属への接点19も
また、ゲート・ソース及びドレイン間にさまざまな接続
をはかるために必要である。さらに、接点20などの、
第1レベル金属から第2レベル金属への接続接点もやは
り必要である。これらの回路構成において、各拡散領域
の間には、“切れ目”21があり、この結果、チップ上
で関数を実現するために必要な面積が増大することが見
てとれる。
これよりも有効な回路結線構造もCMOS技術で実現す
ることができる。関数=a+bc+deのCMOSに
よる実現は第4図に示されており、これはn拡散領域2
2をもつnチャネル・デバイスの組と、それに対応して
p拡散領域23をもつpチャネル・デバイスの組の存在
によって特徴づけられる。これらの各組は、相異するが
関連づけられた方法で相互接続されている。この構造
は、n拡散領域に接続された金属アース条片24と、p
拡散領域に接続された金属VDD条片25とを有してい
る。ポリシリコン条片26は、ネットワークに入力信号
を供給するための個々のゲートを構成する。金属から拡
散領域への接点27は、個々の拡散領域の間で金属条片
28を接続するために利用される。垂直方向の第2レベ
ル金属条片29は、デバイスの出力バスとして機能す
る。このネットワークにも“切れ目”の領域30及び3
1が存在し、特にデバイスのn側とp側の両方に4個の
そのような切れ目の領域が存在することが見てとれる。
第4図における切れ目領域の数は第3図よりも4つ少
い。従って、切れ目領域の数が減少するにつれて、回路
の物理的寸法がより小さくなることが見てとれる。
ることができる。関数=a+bc+deのCMOSに
よる実現は第4図に示されており、これはn拡散領域2
2をもつnチャネル・デバイスの組と、それに対応して
p拡散領域23をもつpチャネル・デバイスの組の存在
によって特徴づけられる。これらの各組は、相異するが
関連づけられた方法で相互接続されている。この構造
は、n拡散領域に接続された金属アース条片24と、p
拡散領域に接続された金属VDD条片25とを有してい
る。ポリシリコン条片26は、ネットワークに入力信号
を供給するための個々のゲートを構成する。金属から拡
散領域への接点27は、個々の拡散領域の間で金属条片
28を接続するために利用される。垂直方向の第2レベ
ル金属条片29は、デバイスの出力バスとして機能す
る。このネットワークにも“切れ目”の領域30及び3
1が存在し、特にデバイスのn側とp側の両方に4個の
そのような切れ目の領域が存在することが見てとれる。
第4図における切れ目領域の数は第3図よりも4つ少
い。従って、切れ目領域の数が減少するにつれて、回路
の物理的寸法がより小さくなることが見てとれる。
e4.ブール表現のグラフ 第5図及び第6図は、それぞれnチャネル・デバイスと
pチャネル・デバイスのブール表現のグラフである。こ
れらのグラフは、デバイス中の個々の結線をあらわし、
これらのグラフからは2つの事実が観察される。第1に
どちらのグラフも性質上直並列でありそれゆえ平面的で
ある。第2に、グラフ理論的な意味で、一方のグラフが
他方と双対である。すなわち、一方のグラフで直列であ
るものは他方のグラフで並列である。第1図と比較する
と、第5図の要素が直列であるとき、それに対応する第
6図の要素は並列である。さらに、これらの要素は、第
1図におけるANDゲートの入力に対応する。
pチャネル・デバイスのブール表現のグラフである。こ
れらのグラフは、デバイス中の個々の結線をあらわし、
これらのグラフからは2つの事実が観察される。第1に
どちらのグラフも性質上直並列でありそれゆえ平面的で
ある。第2に、グラフ理論的な意味で、一方のグラフが
他方と双対である。すなわち、一方のグラフで直列であ
るものは他方のグラフで並列である。第1図と比較する
と、第5図の要素が直列であるとき、それに対応する第
6図の要素は並列である。さらに、これらの要素は、第
1図におけるANDゲートの入力に対応する。
次の性質をもつことは、すべてのスタティックCMOS
複合論理セルにとって典型的である: (1)それらが実行する論理機能が、一組のORゲート
に信号を与えるANDゲート、またはANDゲートに信
号を与えるORゲート及びインバータに信号を与える最
終ステージによって特徴づけられること。
複合論理セルにとって典型的である: (1)それらが実行する論理機能が、一組のORゲート
に信号を与えるANDゲート、またはANDゲートに信
号を与えるORゲート及びインバータに信号を与える最
終ステージによって特徴づけられること。
(2)p側でのデバイスの接続をあらわすグラフがn側
の対応する接続と双対であること。
の対応する接続と双対であること。
e5.別の結線構造 第7図は第4図と同様の機能を行う別の結線構造を示す
図である。ただし、第7図においては、拡散領域が互い
に接触するようにデバイスを十分に近づけることによ
り、2つの拡散領域を接続する金属接続セグメント32
が省略されている点が異なる。すなわち、チップ上にあ
らわれる切れ目33の数が減少している。第4図におい
てはデバイスのn側とp側で4つづつの切れ目があった
が、第7図においてはデバイスのn側とp側とで切れ目
が1つづつであることが見てとれる。この操作の結果、
回路全体の幅が低減され以て回路動作が速くなることが
明らかである。結線に要するラインの本数の減少によ
り、セルの高さにも減少が見られる。このことは、より
大きいシステムにおいてセルの入出力を別のセルに接続
する余地が増大するという点で好ましい。
図である。ただし、第7図においては、拡散領域が互い
に接触するようにデバイスを十分に近づけることによ
り、2つの拡散領域を接続する金属接続セグメント32
が省略されている点が異なる。すなわち、チップ上にあ
らわれる切れ目33の数が減少している。第4図におい
てはデバイスのn側とp側で4つづつの切れ目があった
が、第7図においてはデバイスのn側とp側とで切れ目
が1つづつであることが見てとれる。この操作の結果、
回路全体の幅が低減され以て回路動作が速くなることが
明らかである。結線に要するラインの本数の減少によ
り、セルの高さにも減少が見られる。このことは、より
大きいシステムにおいてセルの入出力を別のセルに接続
する余地が増大するという点で好ましい。
第8図は、上述した同一のコンパクト化技術を用いて同
一の論理関数fをあらわすためのさらに別の結線構造で
ある。この図においては、単一のn拡散領域34及び単
一のp拡散領域35が存在し、従ってこのネットワーク
中には“切れ目”がなく、このことはより高速で動作す
るよりコンパクトなネットワークをもたらす。この結線
構造に対応する直並列グラフは第9図及び第10図に示
されている。これらのグラフと第5、6図のグラフとの
相違は単なる置換のみである。
一の論理関数fをあらわすためのさらに別の結線構造で
ある。この図においては、単一のn拡散領域34及び単
一のp拡散領域35が存在し、従ってこのネットワーク
中には“切れ目”がなく、このことはより高速で動作す
るよりコンパクトなネットワークをもたらす。この結線
構造に対応する直並列グラフは第9図及び第10図に示
されている。これらのグラフと第5、6図のグラフとの
相違は単なる置換のみである。
e6.別のブール関数に対応する結線構造 第11図及び第12図はブール関数=abc(d+
e)に対応する2つの結線構造である。第11図ではn
側に3本のラインを要し、一方、第12図ではn側に2
本のラインしか要さない。ラインの数が少ないので、第
12図の構造の方が好ましい。この結線構造は第13図
及び第14図のグラフから得られる。第13図は第11
図の回路のグラフであり、第14図は第12図の回路の
グラフである。第14図は、第13図を倒置したグラフ
であるが、これによりn側のラインが減少した結線構造
が得られる。
e)に対応する2つの結線構造である。第11図ではn
側に3本のラインを要し、一方、第12図ではn側に2
本のラインしか要さない。ラインの数が少ないので、第
12図の構造の方が好ましい。この結線構造は第13図
及び第14図のグラフから得られる。第13図は第11
図の回路のグラフであり、第14図は第12図の回路の
グラフである。第14図は、第13図を倒置したグラフ
であるが、これによりn側のラインが減少した結線構造
が得られる。
所与のAND−OR−NOTスタティックCMOSを実
現するための好適な方法の特徴は次のように要約され
る: (1)デバイスは、接触する拡散領域を有し得るデバイ
スの対の数が最大となるような方法でレイアウトされな
くてはならない。
現するための好適な方法の特徴は次のように要約され
る: (1)デバイスは、接触する拡散領域を有し得るデバイ
スの対の数が最大となるような方法でレイアウトされな
くてはならない。
(2)デバイスは、デバイスの相互結線に必要なトラッ
ク(ライン)の数が最小となるような方法でレイアウト
されなくてはならない。
ク(ライン)の数が最小となるような方法でレイアウト
されなくてはならない。
(3)デバイスは、さまざまな直列の素子や、さまざま
な並列の素子の順序を入れ換えることにより機能の実行
がより高められることのないような最適化された方法で
レイアウトされなくてはならない。
な並列の素子の順序を入れ換えることにより機能の実行
がより高められることのないような最適化された方法で
レイアウトされなくてはならない。
(4)各グラフの方向は、デバイスの接続に要するライ
ンの数を最小限にするような方法で選択されなくてはな
らない。
ンの数を最小限にするような方法で選択されなくてはな
らない。
従来では、これらのうち1つを満足させる方法の試みは
あったが、これらすべてを同時に満足させる試みは知ら
れていない。
あったが、これらすべてを同時に満足させる試みは知ら
れていない。
e7.スタック配向技術 前述したように、所与の関数をCMOSで実現すること
は、その関数のブール表現から導かれる。その後記述さ
れるプログラムにおいては、ブール関数は、因数分解さ
れたかたちで与えられることを仮定する。関数のブール
表現は次に、標準的なスタック配向技術を用いて後置あ
るいは逆ポーランド(LORP)記法に変換される。第
15図には、スタック配向(Stack-orinted)技術がブー
ル関数f=a+bc+deに対して示されている。第1
5図において、ステップ40で、スタックにはオペラン
ドa(オペランドは文中では小文字であるが図中では大
文字であらわされている)が配置され、ステップ41で
オペランドbがスタックの上方に配置され、次にステッ
プ42でオペランドcがスタックの上方に配置される。
スタックの上の2つのオペランド、すなわちb及びcは
b*cとして、ステップ43でスタックの上方に配置さ
れる。次にステップ44はオペランドd及びeが順次ス
タックの上方に配置される。d及びeはスタック中の上
方の2つのオペランドであるため、それらはd*eとし
て結合され、ステップ45でスタックの上方に配置され
る。このとき、スタック中の上方2つのオペランドはb
*c*d*eであるため、それらはb*c*+d*eと
して結合され、ステップ46でスタックの上方に配置さ
れる。ここで、スタック中の上方の2つのオペランドが
a及びb*c+d*eとなり、それらはステップ47に
示すように関数a+b*c+d*eとしてスタックに配
置される。
は、その関数のブール表現から導かれる。その後記述さ
れるプログラムにおいては、ブール関数は、因数分解さ
れたかたちで与えられることを仮定する。関数のブール
表現は次に、標準的なスタック配向技術を用いて後置あ
るいは逆ポーランド(LORP)記法に変換される。第
15図には、スタック配向(Stack-orinted)技術がブー
ル関数f=a+bc+deに対して示されている。第1
5図において、ステップ40で、スタックにはオペラン
ドa(オペランドは文中では小文字であるが図中では大
文字であらわされている)が配置され、ステップ41で
オペランドbがスタックの上方に配置され、次にステッ
プ42でオペランドcがスタックの上方に配置される。
スタックの上の2つのオペランド、すなわちb及びcは
b*cとして、ステップ43でスタックの上方に配置さ
れる。次にステップ44はオペランドd及びeが順次ス
タックの上方に配置される。d及びeはスタック中の上
方の2つのオペランドであるため、それらはd*eとし
て結合され、ステップ45でスタックの上方に配置され
る。このとき、スタック中の上方2つのオペランドはb
*c*d*eであるため、それらはb*c*+d*eと
して結合され、ステップ46でスタックの上方に配置さ
れる。ここで、スタック中の上方の2つのオペランドが
a及びb*c+d*eとなり、それらはステップ47に
示すように関数a+b*c+d*eとしてスタックに配
置される。
e8.コンピュータによるレイアウト作成動作 第16図はブール関数fを実現するために使用される手
続の全体的なフローチャートである。尚、ブール関数は
因数分解されたかたちで与えられ、論理ブロック100
で入力としてコンピュータに供給される。論理ブロック
101では、A+B*C+D*Eというブール表現が、
後置または逆ポーランド記法であるABC*DE*++
に変換される。
続の全体的なフローチャートである。尚、ブール関数は
因数分解されたかたちで与えられ、論理ブロック100
で入力としてコンピュータに供給される。論理ブロック
101では、A+B*C+D*Eというブール表現が、
後置または逆ポーランド記法であるABC*DE*++
に変換される。
この表現はブロック102で、ABC(*2)DE(*
2)(+3)とさらにコンパクト化される。これは、同
一のオペレータの連続するストリング(列)を集め、そ
のストリングを、オペレータとそれに続くオペレータの
長さプラス1の数字によってあらわすことにより得られ
る。この記法は、トランジスタの最適な順序とトランジ
スタ間の最適な結線を決定する論理ブロック103の手
続への入力に好都合である。このプログラムの詳細は第
18〜第24図とテーブル1に関連して説明される。
2)(+3)とさらにコンパクト化される。これは、同
一のオペレータの連続するストリング(列)を集め、そ
のストリングを、オペレータとそれに続くオペレータの
長さプラス1の数字によってあらわすことにより得られ
る。この記法は、トランジスタの最適な順序とトランジ
スタ間の最適な結線を決定する論理ブロック103の手
続への入力に好都合である。このプログラムの詳細は第
18〜第24図とテーブル1に関連して説明される。
付記:l1l2l3はl1の右側にl2を結合し、さら
にl2の右側にl3を結合したものである。
にl2の右側にl3を結合したものである。
l1Rは、ストリングl1が結合の前に反転されるべき
ことを示す。
ことを示す。
l1Ol2は、そのOの位置に分離デバイス(または拡
散領域の切れ目)が配置されるべきことを示す。
散領域の切れ目)が配置されるべきことを示す。
ブロック103の出力は、第17図に示すCMOSネッ
トワークの最終レイアウトをあらわす“スティック”表
示である。スティック表示は、第7図に示すような最終
的な構造を形成するために接地規則(ground rule)とと
もに使用するのに必要なすべての情報を有するとして
も、最終的な構造の接地規則に依存しない表示である。
この接地規則は、論理ブロック104で示されているよ
うに読み取られ、シリコン・マスクの最終的なトポロジ
ー(幾何形状)がブロック105で示すように決定され
る。尚このことは第26及び27図に関連してより詳細
に説明する。
トワークの最終レイアウトをあらわす“スティック”表
示である。スティック表示は、第7図に示すような最終
的な構造を形成するために接地規則(ground rule)とと
もに使用するのに必要なすべての情報を有するとして
も、最終的な構造の接地規則に依存しない表示である。
この接地規則は、論理ブロック104で示されているよ
うに読み取られ、シリコン・マスクの最終的なトポロジ
ー(幾何形状)がブロック105で示すように決定され
る。尚このことは第26及び27図に関連してより詳細
に説明する。
第18図は第16図の論理ブロックのより詳細なフロー
チャートであり、スティック表示を生成するための処理
が2つの主要なステップからなることを示している。
チャートであり、スティック表示を生成するための処理
が2つの主要なステップからなることを示している。
論理ブロック110で示した第1のプロセスは拡散領域
の共有化を極大化するためにトランジスタの最適な順序
を決定すること、すなわち切れ目の除去もしくは最小化
に関与する。論理ブロック111で示した第2のプロセ
スは、デバイス間の相互結線とともに、p側とn側の各
々のグラフの配向を決定することに関与する。尚、デバ
イスという用語はトランジスタという用語と相互交換的
に使用されている。
の共有化を極大化するためにトランジスタの最適な順序
を決定すること、すなわち切れ目の除去もしくは最小化
に関与する。論理ブロック111で示した第2のプロセ
スは、デバイス間の相互結線とともに、p側とn側の各
々のグラフの配向を決定することに関与する。尚、デバ
イスという用語はトランジスタという用語と相互交換的
に使用されている。
ここで、実際的にプログラムが隣接する拡散領域の高度
の共有化を首尾よく達成し、以て連続的に延長された長
い拡散領域を有する回路構成につながるということがし
ばしば観察されていることを述べておくべきであろう。
それゆえ、いくつかの拡散領域の切れ目が介在する大き
い拡散領域というものを考えることは容易である。事
実、拡散領域の切れ目の数が少ないときは、そのことに
より性能が低下することはなく、一方分離デバイスがそ
の切れ目に挿入されると集積密度が向上することが観察
されている。そのような分離デバイスとは、電力バスV
DDに接続されたp側のトランジスタと、アースに接続
されたn側のトランジスタである。
の共有化を首尾よく達成し、以て連続的に延長された長
い拡散領域を有する回路構成につながるということがし
ばしば観察されていることを述べておくべきであろう。
それゆえ、いくつかの拡散領域の切れ目が介在する大き
い拡散領域というものを考えることは容易である。事
実、拡散領域の切れ目の数が少ないときは、そのことに
より性能が低下することはなく、一方分離デバイスがそ
の切れ目に挿入されると集積密度が向上することが観察
されている。そのような分離デバイスとは、電力バスV
DDに接続されたp側のトランジスタと、アースに接続
されたn側のトランジスタである。
第19図は、第7図の回路に拡散領域の切れ目ではなく
分離デバイスを使用した回路の構造である。
分離デバイスを使用した回路の構造である。
第20図は、第18図のより詳しい論理ブロックを示す
フローチャートである。このフローチャートは、第16
図または第18図の論理ブロック102から論理ブロッ
ク120に後置または逆ポーランド記法で入力ストリン
グが与えられたときにトランジスタの順序を決定するた
めの再帰的な手続きを記述している。論理ブロック12
1に示されているように、ストリングの最初のトークン
にストリング・ポインタがセットされる。そして、その
トークンがオペレータであるかオペランドであるかを判
断するために、ストリング中の各トークンが調べられ
る。もしトークンがオペランドならば、論理ブロック1
25で示すように、そのトークンはタイプ値1とともに
スタックされる。一方、もしトークンがANDまはOR
のオペレータならば、論理ブロック123で示されるよ
うに、その添付数字(例えばBC(*2)における
“2”という数字である)も読み取られる。この添付数
字は、スタックから押し上げ(POP)られるオペラン
ドの数を決定するために使用される。スタックのオペラ
ンドとオペレータは論理ブロック124で示すトランジ
スタの順序決定手続に渡される。尚、論理ブロック12
4については、第21図でより詳細に説明する。論理ブ
ロック126で示されるように、ポインタは各々のトー
クンに対して順次進行される。論理ブロック127でポ
インタがストリングの終端に達したかどうかの判断が行
なわれる。もしポインタがストリングの終端に達してい
なければ、ストリングの次のトークンを調べるためにプ
ログラムは論理ブロック122に戻る。一方、ポインタ
がストリングの最後のトークンに達していたなら、スタ
ックを押し上げてトランジスタの順序を得るために、論
理ブロック128に手続が進む。ゆえに、ストリングか
ら読み出されるNOTである最後のオペレータまでこの
プロセスが継続する。スタックの頂部のオペランドは、
関数全体に対する成分の必要な順序とタイプとから成
る。
フローチャートである。このフローチャートは、第16
図または第18図の論理ブロック102から論理ブロッ
ク120に後置または逆ポーランド記法で入力ストリン
グが与えられたときにトランジスタの順序を決定するた
めの再帰的な手続きを記述している。論理ブロック12
1に示されているように、ストリングの最初のトークン
にストリング・ポインタがセットされる。そして、その
トークンがオペレータであるかオペランドであるかを判
断するために、ストリング中の各トークンが調べられ
る。もしトークンがオペランドならば、論理ブロック1
25で示すように、そのトークンはタイプ値1とともに
スタックされる。一方、もしトークンがANDまはOR
のオペレータならば、論理ブロック123で示されるよ
うに、その添付数字(例えばBC(*2)における
“2”という数字である)も読み取られる。この添付数
字は、スタックから押し上げ(POP)られるオペラン
ドの数を決定するために使用される。スタックのオペラ
ンドとオペレータは論理ブロック124で示すトランジ
スタの順序決定手続に渡される。尚、論理ブロック12
4については、第21図でより詳細に説明する。論理ブ
ロック126で示されるように、ポインタは各々のトー
クンに対して順次進行される。論理ブロック127でポ
インタがストリングの終端に達したかどうかの判断が行
なわれる。もしポインタがストリングの終端に達してい
なければ、ストリングの次のトークンを調べるためにプ
ログラムは論理ブロック122に戻る。一方、ポインタ
がストリングの最後のトークンに達していたなら、スタ
ックを押し上げてトランジスタの順序を得るために、論
理ブロック128に手続が進む。ゆえに、ストリングか
ら読み出されるNOTである最後のオペレータまでこの
プロセスが継続する。スタックの頂部のオペランドは、
関数全体に対する成分の必要な順序とタイプとから成
る。
第21A図と第21B図の結合である第21図を参照す
ると、第20図におけるトランジスタの部分的な順序を
決定するための論理ブロック124についてのより詳し
い論理フローチャートが示されている。第21図におい
て、検査されたトークンがオペレータであることが判定
されると、そのオペレータがANDかORかを判断する
ために手続は論理ブロック140へ進む。そして、もし
トークンがAND関数に進み、もしそのオペランドがタ
イプ2ならタイプ5に、タイプ5ならタイプ2に、テー
ブルIに基づき変換される。この動作に続いて、プログ
ラムは論理ブロック142に進み、すべてのオペランド
はタイプによってソートされる。プログラムは次に、ポ
インタをテーブルIの最初のラインにセットするための
論理ブロック143に進み、ここでオペランドはテーブ
ルIの最初のラインの左半分の基準を満足するオペラン
ドのサブセットが存在するかどうかについて検査され
る。具体的に述べると、このラインは、各々タイプ1で
ある3つのオペランドを要求する。そして、もしタイプ
1の3つのオペランドが見出されると、これらのオペラ
ンドに対応するストリングが、テーブルの右半分に示さ
れるように連結される。さらに、結合されたストリング
のタイプが1であることも示されている。この論理動作
は論理ブロック144で実行され、論理ブロック145
では、この段で実行された連続的な動作のレコードが結
線入力リストして出力される。そして、もしテーブルの
左半分で一致が存在しなければ、テーブル中のポインタ
を進めるために、プログラムは論理ブロック146に進
む。
ると、第20図におけるトランジスタの部分的な順序を
決定するための論理ブロック124についてのより詳し
い論理フローチャートが示されている。第21図におい
て、検査されたトークンがオペレータであることが判定
されると、そのオペレータがANDかORかを判断する
ために手続は論理ブロック140へ進む。そして、もし
トークンがAND関数に進み、もしそのオペランドがタ
イプ2ならタイプ5に、タイプ5ならタイプ2に、テー
ブルIに基づき変換される。この動作に続いて、プログ
ラムは論理ブロック142に進み、すべてのオペランド
はタイプによってソートされる。プログラムは次に、ポ
インタをテーブルIの最初のラインにセットするための
論理ブロック143に進み、ここでオペランドはテーブ
ルIの最初のラインの左半分の基準を満足するオペラン
ドのサブセットが存在するかどうかについて検査され
る。具体的に述べると、このラインは、各々タイプ1で
ある3つのオペランドを要求する。そして、もしタイプ
1の3つのオペランドが見出されると、これらのオペラ
ンドに対応するストリングが、テーブルの右半分に示さ
れるように連結される。さらに、結合されたストリング
のタイプが1であることも示されている。この論理動作
は論理ブロック144で実行され、論理ブロック145
では、この段で実行された連続的な動作のレコードが結
線入力リストして出力される。そして、もしテーブルの
左半分で一致が存在しなければ、テーブル中のポインタ
を進めるために、プログラムは論理ブロック146に進
む。
次に論理ブロック147は、テーブルの終端に到達した
かどうかを判断する。そして、もしそうでなければ、再
びテーブルの左半分で一致を捜すために論理ブロック1
44に戻る。もしテーブルの終端に到達したならば、オ
ペレータのタイプを決定するために、プログラムは論理
ブロック148に進む。そしてANDオペレータが見出
されたならば、プログラムは論理ブロック149に進
み、タイプが2から5に変換され、タイプ5の結合がタ
イプ2に変換される。次にプログラムは、トランジスタ
の順序を形成する最終結合とともに、タイプ情報を出力
するために論理ブロック150に進む。
かどうかを判断する。そして、もしそうでなければ、再
びテーブルの左半分で一致を捜すために論理ブロック1
44に戻る。もしテーブルの終端に到達したならば、オ
ペレータのタイプを決定するために、プログラムは論理
ブロック148に進む。そしてANDオペレータが見出
されたならば、プログラムは論理ブロック149に進
み、タイプが2から5に変換され、タイプ5の結合がタ
イプ2に変換される。次にプログラムは、トランジスタ
の順序を形成する最終結合とともに、タイプ情報を出力
するために論理ブロック150に進む。
第22図は、第18図の論理ブロック111のより詳し
い論理フローチャートであり、これはデバイスの結線を
はかるために結線セグメントをトラックに割り付けるこ
とを関与する手続の概観を示している。論理ブロック1
28によって与えられるトランジスタの順序と、論理ブ
ロック145によって与えられる結線入力リストは、最
適な順序と結線入力リストを作成するために、入力とし
て論理ブロック160に加えられる。論理ブロック16
1で、p側の結線セグメント・リストを決定するために
順序化用のデータが集められ、論理ブロック162はデ
バイスのn側に対してそれと同一のタスクを遂行する。
これらのセグメント・リストの各々における2つのセグ
メントは、末端セグメントとして識別される。p側で
は、これらのセグメントのうち一方がVDD電力セグメ
ントとして、他方が出力点として働く。n側では、これ
らのセグメントの一方がGND(アース)セグメントと
なり、他方が出力セグメントとなる。末端セグメントの
割に振りは、論理ブロック163−166で示されるよ
うに、4通りあり、セグメント対トラックの割り振り及
び出力の結線を決定するように選択されている。出力と
さまざまなトランジスタの間の相互接続の数は、論理ブ
ロック167−170で決定される。各々の末端セグメ
ントの割り振りにはコストが関連づけられている。論理
ブロック171−174で示されるこのコストは、論理
ブロック163−166に示されている必要なトラック
の数及びn側出力からp側出力への接続の複雑さの測定
の関数である。次に、最も低いコストにつながる末端セ
グメントの割り振りが論理ブロック175で選択され、
対応するセグメントからトラックへの割り振りが論理ブ
ロック176で計算され、関数の必要な最終的なスティ
ック図として出力される。
い論理フローチャートであり、これはデバイスの結線を
はかるために結線セグメントをトラックに割り付けるこ
とを関与する手続の概観を示している。論理ブロック1
28によって与えられるトランジスタの順序と、論理ブ
ロック145によって与えられる結線入力リストは、最
適な順序と結線入力リストを作成するために、入力とし
て論理ブロック160に加えられる。論理ブロック16
1で、p側の結線セグメント・リストを決定するために
順序化用のデータが集められ、論理ブロック162はデ
バイスのn側に対してそれと同一のタスクを遂行する。
これらのセグメント・リストの各々における2つのセグ
メントは、末端セグメントとして識別される。p側で
は、これらのセグメントのうち一方がVDD電力セグメ
ントとして、他方が出力点として働く。n側では、これ
らのセグメントの一方がGND(アース)セグメントと
なり、他方が出力セグメントとなる。末端セグメントの
割に振りは、論理ブロック163−166で示されるよ
うに、4通りあり、セグメント対トラックの割り振り及
び出力の結線を決定するように選択されている。出力と
さまざまなトランジスタの間の相互接続の数は、論理ブ
ロック167−170で決定される。各々の末端セグメ
ントの割り振りにはコストが関連づけられている。論理
ブロック171−174で示されるこのコストは、論理
ブロック163−166に示されている必要なトラック
の数及びn側出力からp側出力への接続の複雑さの測定
の関数である。次に、最も低いコストにつながる末端セ
グメントの割り振りが論理ブロック175で選択され、
対応するセグメントからトラックへの割り振りが論理ブ
ロック176で計算され、関数の必要な最終的なスティ
ック図として出力される。
第23図は、第22図の論理ブロック161及び162
中で実行される詳細な論理ブロックのフローチャートで
あり、これは結線セグメント及び末端セグメントを得る
ための手続である。第23図において、結線入力リスト
から論理ブロック180にラインが読み込まれる。テー
ブル1に関与する結合処理を記憶したこのラインは、要
素ストリング、結合ストリング及びそれに関わるオペレ
ータをあらわす。このオペレータは、論理ブロック18
1で示すように、p側に由来するものか否かにつき判断
される。もしオペレータがp側に由来するなら、プログ
ラムは論理ブロック182に進みここでANDからOR
(またはORからAND)に反転される。これは、P及
びn側の双対的な性質による。要素オペランドは、結合
オペランドであるかまたはタイプ1の原始オペランドで
あるかのどちらかである。もしそれが単に原始オペラン
ドであるなら、それらの末端セグメントは、そのオペラ
ンドに関連づけられたトランジスタのソース及びトレイ
ン位置に対応する点に縮退する。非原始的なオペランド
の末端セグメントは再帰的に生成される。尚、セグメン
トは、セグメント自体の両端に対応する一対の点により
決定されることに注意されたい。論理ブロック183で
は、末端セグメントが要素のために設定されているかど
うかが判断される。もしそうでなければ、プログラムは
論理ブロック184に進み、そこでセグメントは、第1
の要素オペランドの右端及び第2の要素オペランドの左
端に基づきソートされる。その結合が拡散領域の切れ目
を導入しない場合、論理ブロック185で示すように、
第1の要素の第2のセグメントの右端と、第2の要素の
第1のセグメントの右端との間に一致が見出されること
になる。論理ブロック185で示されるようにもし一致
が見出されないなら、論理ブロック187で示されるよ
うに2つの点を結ぶ結線セグメント出力リストに追加が
なされる。さらに、論理ブロック188で示すように、
オペレータがORであるなら、論理ブロック189で示
すように、2つの末端セグメントを結線することも必要
である。ゆえに、論理ブロック188及び189は、第
1の要素の第1の末端セグメントの右端から第2の要素
の第2の末端セグメントの左端への結線セグメント・リ
ストに別のセグメントが出力されなくてはならないこと
を示している。
中で実行される詳細な論理ブロックのフローチャートで
あり、これは結線セグメント及び末端セグメントを得る
ための手続である。第23図において、結線入力リスト
から論理ブロック180にラインが読み込まれる。テー
ブル1に関与する結合処理を記憶したこのラインは、要
素ストリング、結合ストリング及びそれに関わるオペレ
ータをあらわす。このオペレータは、論理ブロック18
1で示すように、p側に由来するものか否かにつき判断
される。もしオペレータがp側に由来するなら、プログ
ラムは論理ブロック182に進みここでANDからOR
(またはORからAND)に反転される。これは、P及
びn側の双対的な性質による。要素オペランドは、結合
オペランドであるかまたはタイプ1の原始オペランドで
あるかのどちらかである。もしそれが単に原始オペラン
ドであるなら、それらの末端セグメントは、そのオペラ
ンドに関連づけられたトランジスタのソース及びトレイ
ン位置に対応する点に縮退する。非原始的なオペランド
の末端セグメントは再帰的に生成される。尚、セグメン
トは、セグメント自体の両端に対応する一対の点により
決定されることに注意されたい。論理ブロック183で
は、末端セグメントが要素のために設定されているかど
うかが判断される。もしそうでなければ、プログラムは
論理ブロック184に進み、そこでセグメントは、第1
の要素オペランドの右端及び第2の要素オペランドの左
端に基づきソートされる。その結合が拡散領域の切れ目
を導入しない場合、論理ブロック185で示すように、
第1の要素の第2のセグメントの右端と、第2の要素の
第1のセグメントの右端との間に一致が見出されること
になる。論理ブロック185で示されるようにもし一致
が見出されないなら、論理ブロック187で示されるよ
うに2つの点を結ぶ結線セグメント出力リストに追加が
なされる。さらに、論理ブロック188で示すように、
オペレータがORであるなら、論理ブロック189で示
すように、2つの末端セグメントを結線することも必要
である。ゆえに、論理ブロック188及び189は、第
1の要素の第1の末端セグメントの右端から第2の要素
の第2の末端セグメントの左端への結線セグメント・リ
ストに別のセグメントが出力されなくてはならないこと
を示している。
論理ブロック190で示すようにもしオペレータがAN
Dであるなら、結合の末端セグメントは第1の要素の第
1のセグメント及び第2の要素の第2のセグメントであ
る。これらは、上述の一致に関与しない2つの要素であ
る。ORオペレータの場合、末端セグメントは結線セグ
メント・リストのために上述のように生成された2つの
新しいセグメントである。論理ブロック187,189
及び193により示されるように、結線セグメント・リ
ストは末端リストと相まってこの手続の出力をなす。論
理ブロック192で、リストの終端に到達したか否かの
判断が行なわれる。そして、そうでないなら、もう一度
反復するために、プログラムは論理ブロック180に戻
る。他方、もしそれがリストの終端であるなら、プログ
ラムは論理ブロック193に進み末端セグメントが出力
される。
Dであるなら、結合の末端セグメントは第1の要素の第
1のセグメント及び第2の要素の第2のセグメントであ
る。これらは、上述の一致に関与しない2つの要素であ
る。ORオペレータの場合、末端セグメントは結線セグ
メント・リストのために上述のように生成された2つの
新しいセグメントである。論理ブロック187,189
及び193により示されるように、結線セグメント・リ
ストは末端リストと相まってこの手続の出力をなす。論
理ブロック192で、リストの終端に到達したか否かの
判断が行なわれる。そして、そうでないなら、もう一度
反復するために、プログラムは論理ブロック180に戻
る。他方、もしそれがリストの終端であるなら、プログ
ラムは論理ブロック193に進み末端セグメントが出力
される。
第24図は、第22図の論理ブロック163−166中
で示されたトラックの割り付けに関するより詳細な論理
フローチャートである。論理ブロック200において示
されるように、結線セグメント・リストが読み込まれ
る。そしてプログラムは、セグメントのすべての閉集合
を検査するための手続をあらわす論理ブロック201及
び202に進む。セグメントの閉集合とは、別の閉集合
中のセグメントと端点を共有しないセグメントの集合で
ある。各閉集合は、端部として、その集合内にすべての
セグメントの端点の合併を有する網によってあらわされ
る。次にプログラムは、p側が考慮されているのかどう
かを判断するために論理ブロック203に進む。そし
て、もし否ならば、最終結合の接地網をトラック1に割
り当てるために、プログラムは論理ブロック205に進
む。また、もしそうであれば、最終結合のVDD網をト
ラック1に割り当てるために、プログラムは論理ブロッ
ク204に進む。どちらの場合にも、トラック1はブロ
ックされる。次にプログラムは、論理ブロック26に進
み、ここで電力網を除く網のリストが最左端の端子によ
ってソートされる。2から始まる最も小さい数のトラッ
クに各網を割り当てるために、グリーディ(greedy)アル
ゴリズム(greedy)が使用される。これはスティック・パ
ッキング(stick-packing)の従来の問題と同様である。
すべての網に割り当てが行なわれると、論理ブロック2
07で示すように、n側及びp側の各出力網を含むトラ
ックと、最後のトラックが交換される。次にプログラム
は、これがp側の動作であるか否かを再び判断するため
に、論理ブロック208へと進む。そして、もし否なら
ば、プログラムは論理ブロック209に進み、nトラッ
ク全体の方向は、GNDトラックが下になるように変更
される。プログラムは次に論理ブロック210に進み、
トラックの割り当てが出力される。
で示されたトラックの割り付けに関するより詳細な論理
フローチャートである。論理ブロック200において示
されるように、結線セグメント・リストが読み込まれ
る。そしてプログラムは、セグメントのすべての閉集合
を検査するための手続をあらわす論理ブロック201及
び202に進む。セグメントの閉集合とは、別の閉集合
中のセグメントと端点を共有しないセグメントの集合で
ある。各閉集合は、端部として、その集合内にすべての
セグメントの端点の合併を有する網によってあらわされ
る。次にプログラムは、p側が考慮されているのかどう
かを判断するために論理ブロック203に進む。そし
て、もし否ならば、最終結合の接地網をトラック1に割
り当てるために、プログラムは論理ブロック205に進
む。また、もしそうであれば、最終結合のVDD網をト
ラック1に割り当てるために、プログラムは論理ブロッ
ク204に進む。どちらの場合にも、トラック1はブロ
ックされる。次にプログラムは、論理ブロック26に進
み、ここで電力網を除く網のリストが最左端の端子によ
ってソートされる。2から始まる最も小さい数のトラッ
クに各網を割り当てるために、グリーディ(greedy)アル
ゴリズム(greedy)が使用される。これはスティック・パ
ッキング(stick-packing)の従来の問題と同様である。
すべての網に割り当てが行なわれると、論理ブロック2
07で示すように、n側及びp側の各出力網を含むトラ
ックと、最後のトラックが交換される。次にプログラム
は、これがp側の動作であるか否かを再び判断するため
に、論理ブロック208へと進む。そして、もし否なら
ば、プログラムは論理ブロック209に進み、nトラッ
ク全体の方向は、GNDトラックが下になるように変更
される。プログラムは次に論理ブロック210に進み、
トラックの割り当てが出力される。
第22図の論理ブロック167〜170で概要を示した
ように、p側トラックは、n側トラックの上方に配置さ
れ、これによりその2つの側の出力トラックは互いに近
接する。ここで出力間の接続が決定される。
ように、p側トラックは、n側トラックの上方に配置さ
れ、これによりその2つの側の出力トラックは互いに近
接する。ここで出力間の接続が決定される。
第25図及び第26図は第17図のステック図を具体化
するための手続の概要を示す論理フローチャートであ
る。これにより、この技術の規則及び影像の記述に従っ
てCMOSデバイスの全体の構成が得られる。この手続
の入力は論理ブロック220中で示されており、この入
力は、トランジスタの順序とp側及びn側にトラックの
割り付けを与えるスティック表示と、出力接続の経路と
から成っている。さらに、技術の規則と影像も、論理ブ
ロック221で示すようにプログラムの入力である。こ
れらは、デバイス間の許容された間隔、拡散領域間の最
小幅、接点のサイズ、バスのサイズなどを含む。プログ
ラムは、トランジスタ順序付けストリングの長さに比例
する幅と、割り付けにおけるトラックの数に比例する高
さをもつp型及びn型拡散井戸の特定のレイアウトを決
定するために論理ブロック222−223に進む。この
2つの井戸領域は、p側拡散井戸領域がn側拡散井戸領
域よりも上になるように論理ブロック223及び224
でレイアウトされる。2つの井戸領域の幅は同一であ
り、トランジスタ順序付けストリングの数に正反例し、
一方トランジスタ順序付けストリングの数は、トランジ
スタの数と拡散領域の切れ目の数を加えたものに等し
い。次にプログラムは論理ブロック224、225及び
226に進む。金属条片は、電力を輸送するために、p
側とn側に一本づつ、接地規則(ground rule)によって
要求される広さの幅でレイアウトされる。このバスは拡
散領域全体を横切って、VDDバス位置がp型井戸の上
部にありGNDバスがn型井戸の下部にあるように延長
される。
するための手続の概要を示す論理フローチャートであ
る。これにより、この技術の規則及び影像の記述に従っ
てCMOSデバイスの全体の構成が得られる。この手続
の入力は論理ブロック220中で示されており、この入
力は、トランジスタの順序とp側及びn側にトラックの
割り付けを与えるスティック表示と、出力接続の経路と
から成っている。さらに、技術の規則と影像も、論理ブ
ロック221で示すようにプログラムの入力である。こ
れらは、デバイス間の許容された間隔、拡散領域間の最
小幅、接点のサイズ、バスのサイズなどを含む。プログ
ラムは、トランジスタ順序付けストリングの長さに比例
する幅と、割り付けにおけるトラックの数に比例する高
さをもつp型及びn型拡散井戸の特定のレイアウトを決
定するために論理ブロック222−223に進む。この
2つの井戸領域は、p側拡散井戸領域がn側拡散井戸領
域よりも上になるように論理ブロック223及び224
でレイアウトされる。2つの井戸領域の幅は同一であ
り、トランジスタ順序付けストリングの数に正反例し、
一方トランジスタ順序付けストリングの数は、トランジ
スタの数と拡散領域の切れ目の数を加えたものに等し
い。次にプログラムは論理ブロック224、225及び
226に進む。金属条片は、電力を輸送するために、p
側とn側に一本づつ、接地規則(ground rule)によって
要求される広さの幅でレイアウトされる。このバスは拡
散領域全体を横切って、VDDバス位置がp型井戸の上
部にありGNDバスがn型井戸の下部にあるように延長
される。
順序付けストリングの各“O”−位置は絶縁デバイスに
対応する。そのような各位置に対して、接地規則によっ
て与えられる、垂直に延長され拡散領域に重なるポリシ
リコン条片がn側とp側とにレイアウトされる。こうし
て形成されたトランジスタから、n側上のGNDバス及
びp側上のVDDバスへ接点が形成される。トランジス
タ順序づけストリング中の“O”でない各位置に対して
は、垂直ポリシリコン条片がレイアウトされる。この条
片は、論理ブロック224で示されるように、n型井戸
の下部からp型井戸の上部へ延長されている。
対応する。そのような各位置に対して、接地規則によっ
て与えられる、垂直に延長され拡散領域に重なるポリシ
リコン条片がn側とp側とにレイアウトされる。こうし
て形成されたトランジスタから、n側上のGNDバス及
びp側上のVDDバスへ接点が形成される。トランジス
タ順序づけストリング中の“O”でない各位置に対して
は、垂直ポリシリコン条片がレイアウトされる。この条
片は、論理ブロック224で示されるように、n型井戸
の下部からp型井戸の上部へ延長されている。
プログラムは論理ブロック227に進む。この論理ブロ
ック227は、電力バス間のトラックが1つづつレイア
ウトされ、各網には水平の非接触金属セグメントが設け
られる。次にプログラムは論理ブロック228に進み、
ここで金属セグメントに対応する網の端子リストに従っ
て、各金属セグメントにおいて拡散領域に接点が形成さ
れる。次にプログラムは論理ブロック229に進み、こ
こで最終的に、p側の出力セグメントをn側の出力セグ
メントに相互接続するために垂直金属セグメントがレイ
アウトされる。そして、最終的なCMOSレイアウトが
完成される。
ック227は、電力バス間のトラックが1つづつレイア
ウトされ、各網には水平の非接触金属セグメントが設け
られる。次にプログラムは論理ブロック228に進み、
ここで金属セグメントに対応する網の端子リストに従っ
て、各金属セグメントにおいて拡散領域に接点が形成さ
れる。次にプログラムは論理ブロック229に進み、こ
こで最終的に、p側の出力セグメントをn側の出力セグ
メントに相互接続するために垂直金属セグメントがレイ
アウトされる。そして、最終的なCMOSレイアウトが
完成される。
G.発明の効果 この発明によれば、論理関数から、自動的にコンパクト
化されたCMOSブック・レイアウトが形成される。
化されたCMOSブック・レイアウトが形成される。
第1図及び第2図は、特定のブール関数を実現する論理
回路を示す図、 第3図及び第4図は、第1図及び第2図の回路に対応す
るチップ上の回路レイアウト及び結線構造の図、 第5図及び第6図は、ブール表現のグラフを示す図、 第7図及び第8図は、コンパクト化されたチップ上の回
路レイアウト及び結線構造の図、 第9図及び第10図は、ブール表現のグラフを示す図、 第11図及び第12図は、さらにコンパクト化されたチ
ップ上の回路レイアウト及び結線構造の図、 第13図及び第14図は、ブール表現のグラフを示す
図、 第15図は、スタック配向技術を示す図、 第16図は、制御プログラムの全体の概要フローチャー
ト、 第17図は、レイアウトのスティック図、 第18図は、第16図における論理ブロック103の詳
細な動作を示すフローチャート、 第19図は、チップ上の回路レイアウト及び結線構造の
図、 第20図は、第18図における論理ブロック110の詳
細な動作を示すフローチャート、 第21図は、第20図における論理ブロック124の詳
細な動作を示すフローチャート、 第22図は、第18図における論理ブロック111の詳
細な動作を示すフローチャート、 第23図は、第22図における論理ブロック161及び
162の詳細な動作を示すフローチャート、 第24図は、第22図における論理ブロック163−1
66の詳細な動作を示すフローチャート、 第25図及び第26図は、第17図のステック表示を実
際のCMOSレイアウトに変換するための動作を示すフ
ローチャートである。
回路を示す図、 第3図及び第4図は、第1図及び第2図の回路に対応す
るチップ上の回路レイアウト及び結線構造の図、 第5図及び第6図は、ブール表現のグラフを示す図、 第7図及び第8図は、コンパクト化されたチップ上の回
路レイアウト及び結線構造の図、 第9図及び第10図は、ブール表現のグラフを示す図、 第11図及び第12図は、さらにコンパクト化されたチ
ップ上の回路レイアウト及び結線構造の図、 第13図及び第14図は、ブール表現のグラフを示す
図、 第15図は、スタック配向技術を示す図、 第16図は、制御プログラムの全体の概要フローチャー
ト、 第17図は、レイアウトのスティック図、 第18図は、第16図における論理ブロック103の詳
細な動作を示すフローチャート、 第19図は、チップ上の回路レイアウト及び結線構造の
図、 第20図は、第18図における論理ブロック110の詳
細な動作を示すフローチャート、 第21図は、第20図における論理ブロック124の詳
細な動作を示すフローチャート、 第22図は、第18図における論理ブロック111の詳
細な動作を示すフローチャート、 第23図は、第22図における論理ブロック161及び
162の詳細な動作を示すフローチャート、 第24図は、第22図における論理ブロック163−1
66の詳細な動作を示すフローチャート、 第25図及び第26図は、第17図のステック表示を実
際のCMOSレイアウトに変換するための動作を示すフ
ローチャートである。
Claims (3)
- 【請求項1】半導体チップ上にCMOSセルにより実現
されるべき関数のブール表現から、および上記CMOS
セルの表現を構成するデバイスの幅および間隔を規定す
る所定の技術規則から、半導体チップ上のCMOSセル
のレイアウトを演算装置を利用して自動的に生成するた
めの方法において、 (a)上記実現されるべき関数のブール表現を上記演算
装置中に読み込み、 (b)上記ブール表現を特定の後置記法に変換し、 (c)上記ブール表現の後置記法に応答して、上記CM
OSセルのレイアウトの表現を作成するために、回路の
幅を最小にするように上記CMOSセルのレイアウト内
のトランジスタの最適配置順を決定しかつ上記CMOS
セルのp側及びn個の高さが最小になるように水平金属
トラックのトランジスタ結線セグメントの割り付けを決
定し、 (d)上記演算装置中に上記技術規則を読み込み、 (e)上記ブール表現に基づき上記CMOSセルのため
のシリコン拡散層及び金属結線層の幾何形状を決定す
る、 段階を具備するCMOSセル・レイアウトの形成方法。 - 【請求項2】上記段階(c)は、上記後置記法で表され
たストリングの各要素を順に検査し、上記要素がオペラ
ンドであれば該要素をそのタイプとともにプッシュ/ダ
ウン・スタックに押し込み、上記要素がオペランドであ
ればテーブルに記載された規則に従ってスタック中の上
部オペランドの順序を組み立て、上記組み立てたオペラ
ンドを上記プッシュ/ダウン・レジスタに押し込み、上
記後置記法のストリングが全て処理されるまで上記プロ
セスを続行する段階を含む請求項(1)記載のCMOS
セルのレイアウトの形成方法。 - 【請求項3】上記段階(c)は、セル上のパワー点と出
力点とを4つの異なる組み合わせで割り付けし、割り付
け毎に所定順序でトラックを結線路に割り当て、最小数
のトラックを占める結果になるような割り付け及び割り
当てを選択する段階を含む、請求項(1)記載のCMO
Sセルのレイアウトの形成方法。
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US06/707,353 US4700316A (en) | 1985-03-01 | 1985-03-01 | Automated book layout in static CMOS |
| US707353 | 1985-03-01 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPS61202453A JPS61202453A (ja) | 1986-09-08 |
| JPH0644596B2 true JPH0644596B2 (ja) | 1994-06-08 |
Family
ID=24841365
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP60271728A Expired - Lifetime JPH0644596B2 (ja) | 1985-03-01 | 1985-12-04 | Cmosセル・レイアウトの形成方法 |
Country Status (4)
| Country | Link |
|---|---|
| US (1) | US4700316A (ja) |
| EP (1) | EP0197646B1 (ja) |
| JP (1) | JPH0644596B2 (ja) |
| DE (1) | DE3683388D1 (ja) |
Families Citing this family (16)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| KR900008022B1 (ko) * | 1986-10-16 | 1990-10-29 | 페어차일드 세미콘덕터 코퍼레이션 | 동기배열논리회로 및 시스템 |
| US5257201A (en) * | 1987-03-20 | 1993-10-26 | International Business Machines Corporation | Method to efficiently reduce the number of connections in a circuit |
| US4922432A (en) * | 1988-01-13 | 1990-05-01 | International Chip Corporation | Knowledge based method and apparatus for designing integrated circuits using functional specifications |
| US5255156A (en) * | 1989-02-22 | 1993-10-19 | The Boeing Company | Bonding pad interconnection on a multiple chip module having minimum channel width |
| US5282147A (en) * | 1991-08-02 | 1994-01-25 | International Business Machines Corporation | Method and apparatus for optimizing a logic network |
| JP2601586B2 (ja) * | 1991-10-15 | 1997-04-16 | 富士通株式会社 | 配置要素の配置配線方法 |
| US5341310A (en) * | 1991-12-17 | 1994-08-23 | International Business Machines Corporation | Wiring layout design method and system for integrated circuits |
| US5701255A (en) * | 1994-09-14 | 1997-12-23 | Matsushita Electric Industrial Co., Ltd. | Cell generation method and cell generation system |
| US5757653A (en) * | 1996-05-16 | 1998-05-26 | International Business Machines Corporation | Method and apparatus for dynamically varying net rules |
| US5920486A (en) * | 1996-08-16 | 1999-07-06 | International Business Machines Corporation | Parameterized cells for generating dense layouts of VLSI circuits |
| US6580953B1 (en) * | 2000-06-14 | 2003-06-17 | Vansco Electronics Ltd. | Electrical control apparatus including retrievable stored operationing program |
| US7266787B2 (en) | 2005-02-24 | 2007-09-04 | Icera, Inc. | Method for optimising transistor performance in integrated circuits |
| US7386821B2 (en) * | 2006-06-09 | 2008-06-10 | Freescale Semiconductor, Inc. | Primitive cell method for front end physical design |
| US7681164B2 (en) * | 2007-08-31 | 2010-03-16 | Synopsys, Inc. | Method and apparatus for placing an integrated circuit device within an integrated circuit layout |
| KR102553260B1 (ko) | 2016-08-03 | 2023-07-07 | 삼성전자 주식회사 | 집적회로 소자 및 그 제조 방법 |
| KR102559010B1 (ko) | 2016-08-05 | 2023-07-25 | 삼성전자주식회사 | 반도체 소자 제조방법 |
Family Cites Families (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US4584653A (en) * | 1983-03-22 | 1986-04-22 | Fujitsu Limited | Method for manufacturing a gate array integrated circuit device |
| US4591993A (en) * | 1983-11-21 | 1986-05-27 | International Business Machines Corporation | Methodology for making logic circuits |
-
1985
- 1985-03-01 US US06/707,353 patent/US4700316A/en not_active Expired - Fee Related
- 1985-12-04 JP JP60271728A patent/JPH0644596B2/ja not_active Expired - Lifetime
-
1986
- 1986-02-24 DE DE8686301326T patent/DE3683388D1/de not_active Expired - Lifetime
- 1986-02-24 EP EP86301326A patent/EP0197646B1/en not_active Expired - Lifetime
Non-Patent Citations (1)
| Title |
|---|
| 日経エレクトロニクス第288号(1982−4−12)日経マグロウヒル社P.195〜205 |
Also Published As
| Publication number | Publication date |
|---|---|
| US4700316A (en) | 1987-10-13 |
| JPS61202453A (ja) | 1986-09-08 |
| DE3683388D1 (de) | 1992-02-27 |
| EP0197646A3 (en) | 1988-07-13 |
| EP0197646B1 (en) | 1992-01-15 |
| EP0197646A2 (en) | 1986-10-15 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US4612618A (en) | Hierarchical, computerized design of integrated circuits | |
| CN109426695B (zh) | 集成电路设计和/或制造 | |
| Lopez et al. | A dense gate matrix layout method for MOS VLSI | |
| JPH0644596B2 (ja) | Cmosセル・レイアウトの形成方法 | |
| Chiluvuri | Layout synthesis techniques for yield enhancement | |
| US6308309B1 (en) | Place-holding library elements for defining routing paths | |
| KR970008363B1 (ko) | 트리밍 회로 | |
| US5150309A (en) | Comprehensive logic circuit layout system | |
| JPH084111B2 (ja) | トリー内部配線の決定方法 | |
| CN112086453A (zh) | 多路复用器电路及其形成方法 | |
| Chang et al. | Pseudo pin assignment with crosstalk noise control | |
| US20100095262A1 (en) | Schematic Generation From Analog Netlists | |
| JPS61272948A (ja) | 論理ゲ−ト表現から回路を合成する方法 | |
| Hwang et al. | An efficient layout style for two-metal CMOS leaf cells and its automatic synthesis | |
| JP2002318827A (ja) | 集積回路製造システム | |
| US4870598A (en) | Comprehensive logic circuit layout system | |
| KR0134854B1 (ko) | 반도체 장치의 설계장치 및 방법 | |
| TW202305946A (zh) | 自動化標準胞元設計之方法 | |
| JP2835040B2 (ja) | 集積回路装置 | |
| JPH02121349A (ja) | 半導体集積回路装置 | |
| JP2570597B2 (ja) | 半導体集積回路のレイアウト設計方法 | |
| Ozaki et al. | MGX: An integrated symbolic layout system for VLSI | |
| JPH06216249A (ja) | Icチップ自動レイアウト設計システム | |
| JP2004157627A (ja) | 配置配線プログラムおよび半導体装置の製造方法 | |
| Breuer et al. | A methodology for custom VLSI layout |