JP2009252028A - トランジスタ自動配置装置、方法及びプログラム - Google Patents
トランジスタ自動配置装置、方法及びプログラム Download PDFInfo
- Publication number
- JP2009252028A JP2009252028A JP2008100576A JP2008100576A JP2009252028A JP 2009252028 A JP2009252028 A JP 2009252028A JP 2008100576 A JP2008100576 A JP 2008100576A JP 2008100576 A JP2008100576 A JP 2008100576A JP 2009252028 A JP2009252028 A JP 2009252028A
- Authority
- JP
- Japan
- Prior art keywords
- transistor
- programmable
- unnecessary
- layout
- hard macro
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
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
- G06F30/392—Floor-planning or layout, e.g. partitioning or placement
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
- G06F30/36—Circuit design at the analogue level
-
- 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
- G06F30/394—Routing
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)
- Computer Networks & Wireless Communication (AREA)
- Architecture (AREA)
- Design And Manufacture Of Integrated Circuits (AREA)
Abstract
【課題】レイアウト面積を削減することができるトランジスタ自動配置装置を提供すること。
【解決手段】トランジスタ自動配置装置30は、生成手段31と配置手段32とを備える。生成手段31は、回路接続情報に基づいて互いに隣接するように配置された第1及び第2のハードマクロ・トランジスタの拡散領域の電位が等しい場合には、第1のハードマクロ・トランジスタにおける不要な拡散領域及び/又は不要なコンタクトを削除した第1のプログラマブル・トランジスタを生成するとともに、第2のハードマクロ・トランジスタにおける不要な拡散領域及び/又は不要なコンタクトを削除した第2のプログラマブル・トランジスタを生成する。配置手段32は、第1及び第2のプログラマブル・トランジスタを回路接続情報に基づいて配置する。
【選択図】図1
【解決手段】トランジスタ自動配置装置30は、生成手段31と配置手段32とを備える。生成手段31は、回路接続情報に基づいて互いに隣接するように配置された第1及び第2のハードマクロ・トランジスタの拡散領域の電位が等しい場合には、第1のハードマクロ・トランジスタにおける不要な拡散領域及び/又は不要なコンタクトを削除した第1のプログラマブル・トランジスタを生成するとともに、第2のハードマクロ・トランジスタにおける不要な拡散領域及び/又は不要なコンタクトを削除した第2のプログラマブル・トランジスタを生成する。配置手段32は、第1及び第2のプログラマブル・トランジスタを回路接続情報に基づいて配置する。
【選択図】図1
Description
本発明は、トランジスタ自動配置装置、方法及びプログラムに関し、特に、LSI開発の際のレイアウト設計におけるトランジスタ自動配置装置、方法及びプログラムに関する。
従来のアナログ部のレイアウト設計においては、回路を構成する各素子に対応づけられたトランジスタを一つずつ設計するとともに、決められた領域内に配置していた。また、レイアウト設計において、多くの手作業が必要とされていた。ところが、近年のLSI開発においては、システムLSI化が進み、LSI全体に占めるアナログ部の比率が増大している。したがって、従来のようなレイアウト設計を行った場合には、開発期間が長期化するおそれがあるため、設計の自動化が必要となる。トランジスタを自動配置するツールは存在するものの、現状では、要求される領域に納めるために手作業によるレイアウトの修正を何度も繰り返さねばならない。
そこで、レイアウト設計を自動化する技術がいくつか提案されている。例えば、特許文献1において、トランジスタのレイアウト条件を普遍的に表現するパラメータを用いてレイアウト設計方法が記載されている。また、特許文献2において、拡散共有(電位が等しいトランジスタの拡散領域の共有化)が行われる箇所を推定する手段を備えるレイアウト設計装置が記載されている。
以下の分析は、本発明者によってなされたものである。特許文献1に記載されたレイアウト設計方法においては、普遍的なパラメータに基づいてレイアウト設計が行われるため、拡散共有をした場合において、面積を削減する効果が乏しいという問題がある。
そこで、レイアウト面積を削減することができるトランジスタ自動配置装置を提供することが課題となる。
本発明の第1の視点に係るトランジスタ自動配置装置は、回路接続情報に基づいて互いに隣接するように配置された第1及び第2のハードマクロ・トランジスタの拡散領域の電位が等しい場合には、該第1のハードマクロ・トランジスタにおける不要な拡散領域及び/又は不要なコンタクトを削除した第1のプログラマブル・トランジスタを生成するとともに、該第2のハードマクロ・トランジスタにおける不要な拡散領域及び/又は不要なコンタクトを削除した第2のプログラマブル・トランジスタとを生成するように構成された生成手段と、
前記第1及び第2のプログラマブル・トランジスタを前記回路接続情報に基づいて配置するように構成された配置手段と、
を備えることを特徴とする。
前記第1及び第2のプログラマブル・トランジスタを前記回路接続情報に基づいて配置するように構成された配置手段と、
を備えることを特徴とする。
本発明の第2の視点に係るトランジスタ自動配置方法は、
生成手段によって、回路接続情報に基づいて互いに隣接するように配置された第1及び第2のハードマクロ・トランジスタの拡散領域の電位が等しい場合には、該第1のハードマクロ・トランジスタにおける不要な拡散領域及び/又は不要なコンタクトを削除した第1のプログラマブル・トランジスタを生成するとともに、該第2のハードマクロ・トランジスタにおける不要な拡散領域及び/又は不要なコンタクトを削除した第2のプログラマブル・トランジスタとを生成する工程と、
配置手段によって、前記第1及び第2のプログラマブル・トランジスタを前記回路接続情報に基づいて配置する工程と、
を含むことを特徴とする。
生成手段によって、回路接続情報に基づいて互いに隣接するように配置された第1及び第2のハードマクロ・トランジスタの拡散領域の電位が等しい場合には、該第1のハードマクロ・トランジスタにおける不要な拡散領域及び/又は不要なコンタクトを削除した第1のプログラマブル・トランジスタを生成するとともに、該第2のハードマクロ・トランジスタにおける不要な拡散領域及び/又は不要なコンタクトを削除した第2のプログラマブル・トランジスタとを生成する工程と、
配置手段によって、前記第1及び第2のプログラマブル・トランジスタを前記回路接続情報に基づいて配置する工程と、
を含むことを特徴とする。
本発明の第3の視点に係るトランジスタ自動配置プログラムは、
回路接続情報に基づいて互いに隣接するように配置された第1及び第2のハードマクロ・トランジスタの拡散領域の電位が等しい場合には、該第1のハードマクロ・トランジスタにおける不要な拡散領域及び/又は不要なコンタクトを削除した第1のプログラマブル・トランジスタを生成するとともに、該第2のハードマクロ・トランジスタにおける不要な拡散領域及び/又は不要なコンタクトを削除した第2のプログラマブル・トランジスタとを生成する処理と、
前記第1及び第2のプログラマブル・トランジスタを記憶装置に記録する処理と、
前記記憶装置に記録された前記第1及び第2のプログラマブル・トランジスタを前記回路接続情報に基づいて配置する処理と、
をコンピュータに実行させることを特徴とする。
回路接続情報に基づいて互いに隣接するように配置された第1及び第2のハードマクロ・トランジスタの拡散領域の電位が等しい場合には、該第1のハードマクロ・トランジスタにおける不要な拡散領域及び/又は不要なコンタクトを削除した第1のプログラマブル・トランジスタを生成するとともに、該第2のハードマクロ・トランジスタにおける不要な拡散領域及び/又は不要なコンタクトを削除した第2のプログラマブル・トランジスタとを生成する処理と、
前記第1及び第2のプログラマブル・トランジスタを記憶装置に記録する処理と、
前記記憶装置に記録された前記第1及び第2のプログラマブル・トランジスタを前記回路接続情報に基づいて配置する処理と、
をコンピュータに実行させることを特徴とする。
本発明によって、トランジスタを自動配置する際にレイアウト面積を削減することができる。なぜなら、本発明のトランジスタ自動配置装置は、ハードマクロ・トランジスタにおいて、電位が等しく拡散共有が可能な拡散領域及び/又は不要なコンタクトを削除したプログラマブル・トランジスタを生成し、ハードマクロ・トランジスタを配置する代わりに、生成されたプログラマブル・トランジスタを配置するからである。すなわち、本発明のトランジスタ自動配置装置によって、拡散領域をトランジスタ間で共有し、かつ/又は、コンタクトを削減することによって、レイアウト面積の削減が可能となるからである。
本発明の実施形態に係るトランジスタ自動生成装置について図面を参照して説明する。図1は、本発明の実施形態に係るトランジスタ自動配置装置の構成を示すブロック図である。図1を参照すると、トランジスタ自動配置装置30は、生成手段31と配置手段32とを備える。
生成手段31は、回路接続情報に基づいて互いに隣接するように配置された第1及び第2のハードマクロ・トランジスタの拡散領域の電位が等しい場合には、第1のハードマクロ・トランジスタにおける不要な拡散領域及び/又は不要なコンタクトを削除した第1のプログラマブル・トランジスタを生成するとともに、第2のハードマクロ・トランジスタにおける不要な拡散領域及び/又は不要なコンタクトを削除した第2のプログラマブル・トランジスタを生成する。配置手段32は、第1及び第2のプログラマブル・トランジスタを回路接続情報に基づいて配置する。
本発明の実施例に係る自動配置装置について、図面を参照して説明する。図2は、本発明の第1の実施例に係るトランジスタ自動配置装置の構成を示すブロック図である。図2を参照すると、トランジスタ自動配置装置10は、ネットドリブン(回路図ドリブン)レイアウト部(レイアウト部)T1、自動配置部T2、LVS検証部T3、プログラマブル・トランジスタ生成部T4、GDS2(レイアウト)F1、ネットリスト(回路接続情報)F2、LVS検証結果F3、仮想トランジスタファイルF4、及び、経路変更情報F5を備える。
なお、自動配置装置は、図4に示すようなコンピュータ上で動作するソフトウェアとハードウェアとの組み合わせによって実現してもよい。トランジスタ自動配置装置20は、入力装置H1、CPU(中央処理装置)H2、表示装置H3、及び、記憶装置H4を備える。入力装置H1はキーボードやマウス等であって、オペレータによる操作を受け付ける。表示装置H3は、液晶ディスプレイやCRT等であって、オペレータの目視の用に供する。記憶装置H4はメモリやハードディスクによって構成され、本実施例における各種のファイル(F1〜F6)、上記各部を実現するプログラム、及び、OS(非図示)を記録する。CPUH2は入力装置H1を介して受け付けた指示に従って記憶装置H4に格納されたプログラムを実行し、実行結果を表示装置H3に表示するとともに記憶装置H4に格納する。
GDS2(レイアウト)F1は、レイアウトデータとして扱われる代表的なバイナリ形式のフォーマットのファイルである。
LVS(Layout Versus Schematic、レイアウト対スケマティック)検証部T3は、ハードマクロ・トランジスタを含むレイアウト情報であるGDS2F1、及び、ネットリストF2を入力し、回路設計段階で作られた回路素子や回路素子間の接続がレイアウト設計において正しく実現されているか否かの検証を行ない、検証結果をLVS検証結果F3に出力する。ここで、ハードマクロ・トランジスタとは、回路素子のサイズや縦横比等の変更ができず、形状が固定されたトランジスタをいう。一方、プログラマブル・トランジスタとは、トランジスタの拡散領域の幅の調整やコンタクトの配置の有無等を外部から与えるパラメータにより変更することができるトランジスタをいう。
レイアウト部T1は、LVS検証結果F3、GDS2F1及びネットリストF2を入力する。レイアウト部T1は、ネットリストF2に格納された回路素子とGDS2F1に格納されたハードマクロ・トランジスタとを1対1に対応づけて、回路変更情報F5に応じて変更した回路変更情報を配置情報F6に出力する。ここで、回路変更情報とは、回路の修正内容を示すものであって、回路トランジスタの拡散領域の幅や長さの変更情報や回路接続の変更情報をいう。
レイアウト部T1は、自動配置部T2と配置情報F6との間で再配置の情報を共有する。自動配置部T2は、仮想トランジスタファイルF4を入出力する。プログラムブル・トランジスタ生成部T4は、仮想トランジスタファイルF4を出力する。レイアウト部T1は、回路変更情報F5のレイアウト修正における回路素子とハードマクロ・トランジスタとを1対1に対応付ける情報を、配置情報F6に記録する。
図3は、本実施例に係るトランジスタ自動配置装置10の動作を示すフローチャートである。
レイアウト部T1は、GDS2F1、ネットリストF2、LVS検証結果F3、及び、回路変更情報F5を読み込む(ステップS1〜S4)。レイアウト部T1は、ステップS1〜ステップS4において読み込んだ情報を保持する(トランジスタ自動配置装置を図4のように構成した場合には、記憶装置H4に記録する)。レイアウト部T1は、LVS検証結果F3、GDS2F1のデータ、及び、ネットリストF2のデータを用いて、回路とレイアウトのトランジスタとを1対1に対応づけ、その結果を配置情報F6に格納する(ステップS5)。レイアウト部T1は、自動配置部T2にステップS7及びS8の処理を実行するように指示する。
自動配置部T2は、ステップS7及びS8の処理を再配置処理として実行する。自動配置部T2は、拡散領域Dが互いに結合されたハードマクロ・トランジスタを検索する。自動配置部T2は、検索されたハードマクロ・トランジスタについて、拡散領域Dの面積が縮小可能である場合には、仮想トランジスタを生成して再配置を実施する(ステップS7)。また、自動配置部T2は、生成した仮想トランジスタを仮想トランジスタファイルF4に格納する。自動配置部T2は、自動配置を行い、生成された再配置情報を配置情報F6に格納する。
自動配置部T2は、ステップS7で生成した仮想トランジスタファイルF4に基づいて、ステップS7で面積の縮小が可能と判定されたハードマクロ・トランジスタと同形状のプログラマブル・トランジスタを生成する(ステップS8)。
レイアウト部T1は、ステップS7及びS8の処理によって生成され、配置情報F6に保持された配置情報を表示する(ステップS9)。
図5は、仮想トランジスタファイルF4の構成の一例を示す。仮想トランジスタファイルF4は、再配置前のレイアウトデータに含まれているハードマクロ・トランジスタを検出し、回路と1対1に対応付けたトランジスタ個々の素子情報であって、トランジスタの寸法や配置座標、回転や反転等の素子情報を含む。仮想トランジスタファイルF4は、ハードマクロ・トランジスタに対応したプログラマブル・トランジスタを自動生成するために使用される。
図6は、本発明の第1の実施例に係るトランジスタ自動配置装置によって、複数のハードマクロ・トランジスタの拡散領域を重ね合わせて自動配置する方法を説明するための図である。
図6(A)は、ネットリストF2に格納されている回路情報を示す。図6(B)は、GDS2F1に格納されているレイアウト情報を示す。図6(C)は、仮想トランジスタファイルF4に格納されている仮想トランジスタを示す。図6(D)は、拡散領域を重ねたレイアウト情報を示す。
レイアウト部T1は、まず、ステップS1〜ステップS4を実行することによって、ネットリストF2から、図9(A)に示すハードマクロ・トランジスタC0−1と同じ構成のトランジスタC1−1〜C1−3が3個直列に接続された回路素子C1の情報を取得する。さらに、レイアウト部T1は、GDS2F1からハードマクロ・トランジスタC0−1に対応するレイアウトL0−1の情報を入手する。
レイアウト部T1は、ステップS5でネットリストF2内のハードマクロ・トランジスタC1−1〜C1−3と、GDS2F1内のレイアウトL1−1〜L1−3を1対1に対応づけてレイアウトする情報を取得し、配置情報F6に格納する。
次に、レイアウト部T1は、ステップS6では配置情報F6を用いて自動配置部T2に再配置の指示を出す。
自動配置部T2は、レイアウトL1−1〜L1−3に関して拡散領域D1〜D3を重ね合わせるために必要な素子寸法等の素子情報を持つ仮想トランジスタのレイアウトL6−1〜L6−3を作成する(ステップS7)。
自動配置部T2は、配置情報F6に格納された情報に基づいて、レイアウトL1−1の拡散領域D1のドレイン電位と、レイアウトL1−2の拡散領域D2のソース電位とが等しく、かつ、他に接続される配線が存在しないものと判定する。このとき、自動配置部T2は、レイアウトL1−1のドレイン側のコンタクトを削除するとともに、ドレイン側の拡散領域D1のうち設計基準で設定されたゲート・ゲート間距離分だけを残して、仮想トランジスタのレイアウトL6−1を生成する。また、自動配置部T2は、レイアウトL1−2のソース側の拡散領域D2のコンタクトを削除するとともに、ドレイン側の拡散領域D2のうち設計基準で設定されたゲート・ゲート間距離分だけを残して、仮想トランジスタのレイアウトL6−2を生成する。
さらに、自動配置部T2は、レイアウトL1−2の拡散領域D2のドレイン電位と、レイアウトL1−3の拡散領域D3のソース電位とが等しく、かつ、他に接続される配線が存在しないものと判定する。このとき、自動配置部T2は、レイアウトL1−2のドレイン側のコンタクトを削除するとともに、拡散領域D2のうち設計基準で設定されたゲート・ゲート間距離分だけを残して、仮想トランジスタのレイアウトL6−2を生成する。さらに、自動配置部T2は、レイアウトL1−3のソース側のコンタクトを削除するとともに、拡散領域D3のうち設計基準で設定されたゲート・ゲート間距離分だけを残して、仮想トランジスタL6−3を生成する。また、自動配置部T2は、生成した仮想トランジスタのレイアウトL6−1〜L6−3を仮想トランジスタファイルF4に格納する(ステップS7)。
なお、本実施例では、一例として、トランジスタの拡散領域を重ねる場合について説明したが、拡散領域間の距離、ゲート間隔、ゲートとコンタクトとの間隔その他の設計基準で定められている寸法を適宜使用することによって、仮想トランジスタを生成するようにしてもよい。
自動配置部T2は、ステップS7で作成した仮想トランジスタファイルF4の情報に基づいて、プログラマブル・トランジスタL4−1〜L4−3の拡散領域を重ね合わせたレイアウトL4を生成する(ステップS8)。ここで、プログラマブル・トランジスタL4−1〜L4−3として、プログラマブル・トランジスタ生成部T4によって生成されたものを用いるようにしてもよい。
レイアウトL4におけるプログラマブル・トランジスタL4−1のゲートとレイアウトL4−2のゲートの間隔Cは、次式(1)で表される。
間隔C=(ゲート・ゲート間距離) 式(1)
ここでゲート・ゲート間距離のパラメータはプロセスに応じて決められる設計基準に基づいて設定される。ただし、
(ゲート・ゲート間距離)<(ゲート・コンタクト間距離)×2+(コンタクト幅)
である。なお、レイアウトL4−2とレイアウトL4−3の間隔も、間隔Cと同じ距離となる。
間隔C=(ゲート・ゲート間距離) 式(1)
ここでゲート・ゲート間距離のパラメータはプロセスに応じて決められる設計基準に基づいて設定される。ただし、
(ゲート・ゲート間距離)<(ゲート・コンタクト間距離)×2+(コンタクト幅)
である。なお、レイアウトL4−2とレイアウトL4−3の間隔も、間隔Cと同じ距離となる。
本実施例に係るトランジスタ自動配置装置10は、再配置前のレイアウトデータに含まれているハードマクロ・トランジスタをそのまま使用するのではなく、自動配置部T2と仮想トランジスタファイルF4とによって、次の処理を行う。すなわち、自動配置部T2は、仮想トランジスタファイルF4を作成し、仮想トランジスタファイルF4内のトランジスタの寸法や配置座標、回転や反転等の回路接続情報と1対1に対応づけられたトランジスタ個々の素子情報に基づいて、プログラマブル・トランジスタを自動生成する。これによって、レイアウト部T1は、再配置前のレイアウトデータに含まれていたハードマクロ・トランジスタを、生成したプログラマブル・トランジスタによって差し替えたレイアウトを取得する。
差し替え後のプログラマブル・トランジスタ間の間隔は、トランジスタ間にコンタクトが挟まれておらず、ゲート・ゲート間距離をプロセス最小ルールとして配置することができるため、レイアウト面積を削減する効果がある。
また、本実施例に係るトランジスタ自動配置装置によって、個々のトランジスタ毎に、ハードマクロ・トランジスタをプログラマブル・トランジスタに差し替える手作業を省くことができる。また、本実施例に係るトランジスタ自動配置装置によって、仮想トランジスタファイルに格納された仮想トランジスタの情報に基づいて、プログラマブル・トランジスタファイルの生成が自動化されることによって、設計期間の短縮を図ることができる。さらに、本実施例に係るトランジスタ自動配置装置によって、ハードマクロ・トランジスタと、自動生成されたプログラマブル・トランジスタとの差し替えも自動化されるため、手作業による差し替えの漏れの防ぐことができる。
本発明の第2の実施例に係るトランジスタ自動配置装置について図面を参照して説明する。図7(A)は、ゲート分割数が3である場合の回路素子を示す。図7(B)は、図7(A)に対応づけたゲート分割数3のプログラマブル・トランジスタを示す。
実施例1とは異なり、ここではプログラマブル・トランジスタ生成部T4によって生成されるプログラマブル・トランジスタが自動配置の対象とされる。
図8は、本発明の第2の実施例に係るトランジスタ自動配置装置によって、複数のプログラマブル・トランジスタの拡散領域を重ね合わせて自動配置する方法を説明するための図である。ここでは、図7(A)に示すゲート分割数が3のプログラマブル・トランジスタを例として説明する。
レイアウト部T1は、図7(A)に示すトランジスタC0−2が3個直列に接続された回路素子C2(図8(A)のトランジスタC2−1〜C2−3)の情報を取得し、GDS2F1に存在するプログラマブル・トランジスタL0−2を3個(図8(B)のレイアウトL2−1〜L2−3)読み出すことによって、プログラマブル・トランジスタC2−1〜C2−3の回路接続情報と、レイアウトL2−1〜L2−3のプログラマブル・トランジスタとを1対1に対応づけてレイアウトする情報を得る。
自動配置ツールT2は、レイアウトL2−1〜L2−3に関して拡散領域D1〜D3を重ね合わせるために必要な素子寸法等の素子情報を有する仮想トランジスタのレイアウトL7−1〜L7−3を作成する(ステップS7)。
自動配置ツールT2は、配置情報F6に格納された情報に基づいて、レイアウトL2−1の拡散領域D1のドレイン電位とレイアウトL2−2の拡散領域D2のソース電位とが等しく、かつ、他に接続される配線が存在しないものと判定した場合、レイアウトL2−1のドレイン側のコンタクトを削除するとともに、ドレイン側の拡散領域D1のうち設計基準で設定されたゲート・ゲート間距離分だけを残して、仮想トランジスタのレイアウトL7−1を生成する。同様にして、自動配置ツールT2は、レイアウトL2−2のソース側のコンタクトを削除するとともに、ソース側の拡散領域D2のうち設計基準で設定されたゲート・ゲート間距離分だけを残して、仮想トランジスタのレイアウトL7−2を生成する。
さらに、自動配置ツールT2は、レイアウトL2−2の拡散領域D2のドレイン電位とレイアウトL2−3の拡散領域D3のソース電位とが等しく、かつ、他に接続される配線が存在しないものと判定した場合、レイアウトL2−2のドレイン側のコンタクトを削除するとともに、ドレイン側の拡散領域D2のうち設計基準で設定されたゲート・ゲート間距離分だけを残して、仮想トランジスタのレイアウトL7−2を生成する。同様にして、自動配置ツールT2は、レイアウトL5−3のソース側のコンタクトを削除するとともに、ソース側の拡散領域D3のうち設計基準で設定されたゲート・ゲート間距離分だけを残して、仮想トランジスタL7−3を生成する。自動配置部T2は、作成した仮想トランジスタのレイアウトL7−1〜L7−3を仮想トランジスタファイルF4に格納する。
なお、本実施例では、一例として、トランジスタの拡散領域を重ねる場合について説明したが、拡散領域間の距離、ゲート間隔、ゲートとコンタクト間隔その他の設計基準で定められている寸法を適宜使用することによって、仮想トランジスタを生成するようにしてもよい。
自動配置部T2は、ステップS7で作成した仮想トランジスタファイルF4の情報に基づいて、プログラマブル・トランジスタL5−1〜L5−3を再生成し、生成されたプログラマブル・トランジスタの拡散領域を重ね合わせたレイアウトL5を生成する(ステップS8)。
このとき、レイアウトL5−1のゲートとレイアウトL5−2のゲートとの間隔Cは、図6の間隔Cと同じ距離となり、上記式(1)で表される。レイアウトL5−2のゲートとレイアウトL5−3のゲートとの間隔も、間隔Cと同じ距離になる。
本実施例に係るトランジスタ自動配置装置は、仮想トランジスタファイルF4の生成時において、レイアウトL2−1〜L2−3のようなハードマクロ・トランジスタに対してトランジスタのゲート分割数により1対1に対応づけられた情報を仮想トランジスタファイルF4に追加することによって、多様なハードマクロ・トランジスタの構造に対応することができる。以上の記載は実施例に基づいて行ったが、本発明は、上記実施例に限定されるものではない。
10、20、30 トランジスタ自動配置装置
31 生成手段
32 配置手段
C0−1、C0−2、C1、C1−1〜C1−3、C2、C2−1〜C2−3 回路
D、D1〜D3 拡散領域
F1 GDS2(レイアウト)
F2 ネットリスト(回路接続情報)
F3 LVS検証結果
F4 仮想トランジスタファイル
F5 回路変更情報
F6 配置情報
H1 入力装置
H2 CPU(中央処理装置)
H3 出力装置
H4 記憶装置
L0−1、L1−1〜L1−3 ハードマクロ・トランジスタ
L2−1〜L2−3 プログラマブル・トランジスタ
L6−1〜L6−3、L7−1〜L7−3 仮想トランジスタ
L4−1〜L4−3、L5−1〜L5−3 プログラマブル・トランジスタ
L4、L5 再配置後のレイアウト
T1 ネットドリブン(回路図ドリブン)レイアウト部(レイアウト部)
T2 自動配置部
T3 LVS検証部
T4 プログラマブル・トランジスタ生成部
31 生成手段
32 配置手段
C0−1、C0−2、C1、C1−1〜C1−3、C2、C2−1〜C2−3 回路
D、D1〜D3 拡散領域
F1 GDS2(レイアウト)
F2 ネットリスト(回路接続情報)
F3 LVS検証結果
F4 仮想トランジスタファイル
F5 回路変更情報
F6 配置情報
H1 入力装置
H2 CPU(中央処理装置)
H3 出力装置
H4 記憶装置
L0−1、L1−1〜L1−3 ハードマクロ・トランジスタ
L2−1〜L2−3 プログラマブル・トランジスタ
L6−1〜L6−3、L7−1〜L7−3 仮想トランジスタ
L4−1〜L4−3、L5−1〜L5−3 プログラマブル・トランジスタ
L4、L5 再配置後のレイアウト
T1 ネットドリブン(回路図ドリブン)レイアウト部(レイアウト部)
T2 自動配置部
T3 LVS検証部
T4 プログラマブル・トランジスタ生成部
Claims (3)
- 回路接続情報に基づいて互いに隣接するように配置された第1及び第2のハードマクロ・トランジスタの拡散領域の電位が等しい場合には、該第1のハードマクロ・トランジスタにおける不要な拡散領域及び/又は不要なコンタクトを削除した第1のプログラマブル・トランジスタを生成するとともに、該第2のハードマクロ・トランジスタにおける不要な拡散領域及び/又は不要なコンタクトを削除した第2のプログラマブル・トランジスタとを生成するように構成された生成手段と、
前記第1及び第2のプログラマブル・トランジスタを前記回路接続情報に基づいて配置するように構成された配置手段と、
を備えることを特徴とするトランジスタ自動配置装置。 - 生成手段によって、回路接続情報に基づいて互いに隣接するように配置された第1及び第2のハードマクロ・トランジスタの拡散領域の電位が等しい場合には、該第1のハードマクロ・トランジスタにおける不要な拡散領域及び/又は不要なコンタクトを削除した第1のプログラマブル・トランジスタを生成するとともに、該第2のハードマクロ・トランジスタにおける不要な拡散領域及び/又は不要なコンタクトを削除した第2のプログラマブル・トランジスタとを生成する工程と、
配置手段によって、前記第1及び第2のプログラマブル・トランジスタを前記回路接続情報に基づいて配置する工程と、
を含むことを特徴とするトランジスタ自動配置方法。 - 回路接続情報に基づいて互いに隣接するように配置された第1及び第2のハードマクロ・トランジスタの拡散領域の電位が等しい場合には、該第1のハードマクロ・トランジスタにおける不要な拡散領域及び/又は不要なコンタクトを削除した第1のプログラマブル・トランジスタを生成するとともに、該第2のハードマクロ・トランジスタにおける不要な拡散領域及び/又は不要なコンタクトを削除した第2のプログラマブル・トランジスタとを生成する処理と、
前記第1及び第2のプログラマブル・トランジスタを記憶装置に記録する処理と、
前記記憶装置に記録された前記第1及び第2のプログラマブル・トランジスタを前記回路接続情報に基づいて配置する処理と、
をコンピュータに実行させることを特徴とするトランジスタ自動配置プログラム。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008100576A JP2009252028A (ja) | 2008-04-08 | 2008-04-08 | トランジスタ自動配置装置、方法及びプログラム |
US12/382,547 US20090254870A1 (en) | 2008-04-08 | 2009-03-18 | Automatic transistor arrangement device to arrange serially connected transistors, and method thereof |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008100576A JP2009252028A (ja) | 2008-04-08 | 2008-04-08 | トランジスタ自動配置装置、方法及びプログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2009252028A true JP2009252028A (ja) | 2009-10-29 |
Family
ID=41134402
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2008100576A Pending JP2009252028A (ja) | 2008-04-08 | 2008-04-08 | トランジスタ自動配置装置、方法及びプログラム |
Country Status (2)
Country | Link |
---|---|
US (1) | US20090254870A1 (ja) |
JP (1) | JP2009252028A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2317091A1 (en) | 2009-11-02 | 2011-05-04 | Honda Motor Co., Ltd. | Exhaust purification system for internal combustion engine |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4975661B2 (ja) * | 2008-02-26 | 2012-07-11 | ルネサスエレクトロニクス株式会社 | 半導体集積回路のレイアウト設計方法 |
CN107293542B (zh) * | 2011-11-14 | 2021-09-07 | 英特尔公司 | 宏晶体管器件 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH113973A (ja) * | 1997-04-14 | 1999-01-06 | Matsushita Electric Ind Co Ltd | 集積回路のレイアウト設計装置、トランジスタサイズ決定装置、回路特性評価方法およびトランジスタサイズ決定方法 |
JP2000195958A (ja) * | 1998-12-24 | 2000-07-14 | Sharp Corp | レイアウト生成装置、レイアウト生成方法、レイアウト生成プログラムを記録した媒体、および基本セルのデータを記録した媒体 |
JP2001094054A (ja) * | 1999-09-22 | 2001-04-06 | Toshiba Corp | スタンダードセル、半導体集積回路およびそのレイアウト方法 |
JP2004031706A (ja) * | 2002-06-26 | 2004-01-29 | Nec Corp | Esd保護回路のレイアウト設計方法、及びレイアウトプログラムとライブラリ |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6393601B1 (en) * | 1997-04-14 | 2002-05-21 | Matsushita Electric Industrial Co., Ltd. | Layout designing apparatus for integrated circuit, transistor size determining apparatus, circuit characteristic evaluating method, and transistor size determining method |
US8440569B2 (en) * | 2007-12-07 | 2013-05-14 | Cadence Design Systems, Inc. | Method of eliminating a lithography operation |
-
2008
- 2008-04-08 JP JP2008100576A patent/JP2009252028A/ja active Pending
-
2009
- 2009-03-18 US US12/382,547 patent/US20090254870A1/en not_active Abandoned
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH113973A (ja) * | 1997-04-14 | 1999-01-06 | Matsushita Electric Ind Co Ltd | 集積回路のレイアウト設計装置、トランジスタサイズ決定装置、回路特性評価方法およびトランジスタサイズ決定方法 |
JP2000195958A (ja) * | 1998-12-24 | 2000-07-14 | Sharp Corp | レイアウト生成装置、レイアウト生成方法、レイアウト生成プログラムを記録した媒体、および基本セルのデータを記録した媒体 |
JP2001094054A (ja) * | 1999-09-22 | 2001-04-06 | Toshiba Corp | スタンダードセル、半導体集積回路およびそのレイアウト方法 |
JP2004031706A (ja) * | 2002-06-26 | 2004-01-29 | Nec Corp | Esd保護回路のレイアウト設計方法、及びレイアウトプログラムとライブラリ |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2317091A1 (en) | 2009-11-02 | 2011-05-04 | Honda Motor Co., Ltd. | Exhaust purification system for internal combustion engine |
Also Published As
Publication number | Publication date |
---|---|
US20090254870A1 (en) | 2009-10-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103093020A (zh) | 访问设计规则和设计特征库的方法、系统和软件 | |
JP2019036199A (ja) | 情報処理装置、タイミングエラー解析プログラム及びタイミングエラー解析方法 | |
US10055520B2 (en) | Process simulator, layout editor, and simulation system | |
JP2009252028A (ja) | トランジスタ自動配置装置、方法及びプログラム | |
US8028265B2 (en) | System and method for improved placement in custom VLSI circuit design with schematic-driven placement | |
JP5573278B2 (ja) | 表示制御装置、表示装置、表示方法及びコンピュータプログラム | |
JP2009259081A (ja) | ラダー図編集方式 | |
JP2009009473A (ja) | Guiの設計装置、設計方法およびプログラム | |
JP5207008B2 (ja) | プログラム再編成システム、及びプログラム再編成方法 | |
JP5309625B2 (ja) | ヒューマンインターフェースの表示/操作部設計方法 | |
JP5910132B2 (ja) | 電子回路のレイアウト作成装置及び方法 | |
JPWO2015019421A1 (ja) | 組み込みソフトウェアのプログラム開発方法、プログラミング装置および組み込み機器 | |
JP4913021B2 (ja) | ラダー図編集方法 | |
JP5360423B2 (ja) | Plcのラダー回路図式プログラミング装置における回路要素の並列入力支援方法、並列入力支援装置及びコンピュータプログラム | |
JP2014041482A (ja) | 組版装置、組版方法、および、組版装置用プログラム | |
JP2008242846A (ja) | 情報処理装置および情報処理方法 | |
JP2016139203A (ja) | 設計情報作成方法、設計情報作成装置及びプログラム | |
JP2006221528A (ja) | プログラマブルコントローラの表示装置 | |
JP2012118913A (ja) | フロアプラン設計装置およびフロアプラン設計方法 | |
JP2016105234A (ja) | 自動設計 | |
JP2007156711A (ja) | フロアプラン設計装置、フロアプラン設計方法およびプログラム | |
JP6324132B2 (ja) | 回路図変更装置、方法、プログラム及び記録媒体 | |
JP6314141B2 (ja) | 組み込みソフトウェアのドキュメント作成方法およびドキュメント作成装置 | |
JP2015176070A (ja) | 暗号化プログラム、復号化プログラム、暗号化装置、復号化装置、暗号化/復号化装置、暗号化方法、及び復号化方法 | |
JP2007233802A (ja) | イベントドリブン型アプリケーションの画面制御装置,画面制御方法およびそのプログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20110225 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20120405 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20120417 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20120904 |