Nothing Special   »   [go: up one dir, main page]

JP5776413B2 - 回路設計支援装置、回路設計支援方法および回路設計支援プログラム - Google Patents

回路設計支援装置、回路設計支援方法および回路設計支援プログラム Download PDF

Info

Publication number
JP5776413B2
JP5776413B2 JP2011165342A JP2011165342A JP5776413B2 JP 5776413 B2 JP5776413 B2 JP 5776413B2 JP 2011165342 A JP2011165342 A JP 2011165342A JP 2011165342 A JP2011165342 A JP 2011165342A JP 5776413 B2 JP5776413 B2 JP 5776413B2
Authority
JP
Japan
Prior art keywords
pair
pin
vertex
pins
graph
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 - Fee Related
Application number
JP2011165342A
Other languages
English (en)
Other versions
JP2013029970A (ja
Inventor
育生 大塚
育生 大塚
寿康 坂田
寿康 坂田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2011165342A priority Critical patent/JP5776413B2/ja
Priority to US13/555,245 priority patent/US8832630B2/en
Publication of JP2013029970A publication Critical patent/JP2013029970A/ja
Priority to US14/325,405 priority patent/US9275183B2/en
Application granted granted Critical
Publication of JP5776413B2 publication Critical patent/JP5776413B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/39Circuit design at the physical level
    • G06F30/394Routing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/39Circuit design at the physical level
    • G06F30/392Floor-planning or layout, e.g. partitioning or placement
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2113/00Details relating to the application field
    • G06F2113/18Chip packaging
    • HELECTRICITY
    • H05ELECTRIC TECHNIQUES NOT OTHERWISE PROVIDED FOR
    • H05KPRINTED CIRCUITS; CASINGS OR CONSTRUCTIONAL DETAILS OF ELECTRIC APPARATUS; MANUFACTURE OF ASSEMBLAGES OF ELECTRICAL COMPONENTS
    • H05K3/00Apparatus or processes for manufacturing printed circuits
    • H05K3/0005Apparatus or processes for manufacturing printed circuits for designing circuits by computer

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Geometry (AREA)
  • Evolutionary Computation (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Architecture (AREA)
  • Manufacturing & Machinery (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Design And Manufacture Of Integrated Circuits (AREA)

Description

本発明は回路設計支援装置、回路設計支援方法および回路設計支援プログラムに関する。
BGA(Ball Grid Array)のピン間を配線するバスについて、所属するネット(論理接続情報)の引き出し経路を1ネットずつ探索して、バス内の全てのネットがBGA外に脱出できるような配線引き出し経路を決定する技術が知られている。
また、配線複数本分の間隔の総和を配線幅とする1本の仮想配線としてレイアウトした後に仮想配線を配線群に置換する技術が知られている。
特開2002−217302号公報
Lijuan Luo、他4名、「B-Escape: A Simultaneous Escape Routing Algorithm Based on Boundary Routing」、International Symposium on Physical Design Proceedings of the 19th international symposium on Physical design San Francisco, California USA 2010年 p.19-25
ピンが密集している場合、仮想配線に含めるネットのピンの候補が近隣に複数存在するため、どのピンのネットをペアにして1つのバスとするべきかの判断が容易ではないという問題があった。
本発明はこのような点に鑑みてなされたものであり、ペアにするネットのピンの判断を容易にする回路設計支援装置、回路設計支援方法および回路設計支援プログラムを提供することを目的とする。
上記目的を達成するために、開示の回路設計支援装置が提供される。この回路設計支援装置は、ペア候補決定部とペア決定部とを有している。
ペア候補決定部は、配線の論理接続情報を有するピンを複数備える第1のピン群と、この第1のピン群の各ピンの配線の接続先となり論理接続情報を有するピンを備える第2のピン群とが与えられたとき、第1のピン群および第2のピン群それぞれにおいて所定距離内にある異なる論理接続情報を有するピン同士をペア候補に決定する。
ペア決定部は、ペア候補決定部が決定したペア候補を用いて第1のピン群および第2のピン群それぞれのピンのペアを決定する。
ペアにするネットのピンの判断を容易にすることができる。
第1の実施の形態の回路設計支援装置を説明する図である。 第2の実施の形態の回路設計支援装置のハードウェア構成を示す図である。 第2の実施の形態の回路設計支援装置の機能を示すブロック図である。 バスピン群記憶部に記憶されている情報を説明する図である。 ピン座標情報記憶部に記憶されている情報の一例を示す図である。 ペア候補グラフ作成部の処理を説明する図である。 ペア候補グラフ作成部の処理を説明する図である。 ペア候補グラフ作成部が作成したグラフを説明する図である。 ペア決定部が作成したグラフを説明する図である。 グラフ管理テーブルを示す図である。 ペア決定部の処理を説明する図である。 ペア決定部の処理を説明する図である。 ペア決定部の処理を説明する図である。 ペア決定部の処理を説明する図である。 ペア決定部の処理を説明する図である。 ペア決定部の処理を説明する図である。 ペア決定部の処理を説明する図である。 グラフの推移を示す図である。 ピンペア情報記憶部に記憶されたターゲットピンのペアに関する情報を説明する図である。 第2の実施の形態のペア候補グラフ作成部およびペア決定部の処理を示すフローチャートである。 テーブル更新処理を示すフローチャートである。 第3の実施の形態のネットリストを示す図である。 第3の実施の形態のペア候補グラフ作成部が作成したグラフを示す図である。 配線スペースが効率よく使える理由を説明する図である。 第4の実施の形態の回路設計支援装置の機能を示すブロック図である。 第4の実施の形態のネットリストを示す図である。 信号種別距離係数記憶部に記憶されている情報を説明する図である。 第4の実施の形態のソースピン距離管理テーブルを示す図である。 第4の実施の形態のターゲットピン距離管理テーブルを示す図である。 第4の実施の形態のペア候補グラフ作成部が作成したグラフを説明する図である。 第4の実施の形態のペア候補グラフ作成部およびペア決定部の処理を示すフローチャートである。 第5の実施の形態の回路設計支援装置の機能を示すブロック図である。 第5の実施の形態のペア候補グラフ作成部の処理を説明する図である。 第5の実施の形態のグラフ管理テーブルを示す図である。 第5の実施の形態のペア決定部の処理を説明する図である。 第5の実施の形態のペア決定部の処理を説明する図である。 第5の実施の形態のペア決定部の処理を説明する図である。 第5の実施の形態のペア決定部の処理を説明する図である。 第5の実施の形態のペア決定部の処理を説明する図である。 第5の実施の形態のペア決定部の処理を説明する図である。 第5の実施の形態のペア決定部の処理を説明する図である。 第5の実施の形態のピンペア情報記憶部に記憶されたターゲットピンのペアに関する情報を説明する図である。 第5の実施の形態のペア候補グラフ作成部およびペア決定部の処理を示すフローチャートである。 第5の実施の形態のテーブル更新処理を示すフローチャートである。
以下、実施の形態の回路設計支援装置を、図面を参照して詳細に説明する。第1の実施の形態において、開示の回路設計支援装置の実施の形態について説明し、その後、第2の実施の形態において、開示の回路設計支援装置をより具体的に説明する。
<第1の実施の形態>
図1は、第1の実施の形態の回路設計支援装置を説明する図である。
第1の実施の形態の回路設計支援装置(コンピュータ)1は、プリント配線板(PCB)等に配置されたBGA等の配線設計を支援する装置である。この回路設計支援装置1は、基板情報格納部1aとペア候補決定部1bとペア決定部1cと配線部1dとを有している。なお、本実施の形態では、回路設計支援装置1が基板情報格納部1aを有する構成としたが、基板情報格納部1aは、回路設計支援装置1の外部に設けられていてもよい。
基板情報格納部1aには、基板の同一層の所定の領域に設定されたバスピン間を接続する配線のネット(論理接続情報)等がリスト化された基板情報が格納されている。図1では、基板情報により具現化された基板2を示している。この基板2は、BGAを配置する領域2a、2bを有している。領域2aには、ネットを有するピンp1、p2、p3、p4を備える第1のピン群3と、第1のピン群3の各ピンp1、p2、p3、p4の配線の接続先となるネットを有するピンp5、p6、p7、p8を備える第2のピン群4とを有している。接続されるネット同士には、同じネット名(A、B、C、D)を示している。以下、例えばネット名Aのネットを「ネットA」と表記する。例えば、同じネットAの第1のピン群3のピンp1と第2のピン群4のピンp5が接続される。
ペア候補決定部1bは、第1のピン群3および第2のピン群4それぞれにおいてピン間の距離を計測する。例えば基板2では、各ピンの一区画を距離1であるものと仮定すると、ピンp1とp2の最短距離は1である。ペア候補決定部1bは、第1のピン群3および第2のピン群4それぞれにおいて所定の距離内にある同じネットを有するピン同士をペア候補に決定する。図1に示す例では、ピンの距離が2以下のピン同士をペア候補に決定する。第1のピン群3においてピンp2とピンp4の組み合わせ、つまり、ネットBとネットDのピンの組み合わせは距離が2以上であるため、ペア候補から除外する。また、第2のピン群4においてピンp5とピンp6の組み合わせ、つまり、ネットAとネットBのピンの組み合わせは距離が2以上であるため、ペア候補から除外する。この結果、図1におけるペア候補は、ネットBとネットDおよびネットAとネットBのピンの組み合わせを除外したネットAとネットCのピンの組み合わせ、ネットAとネットDのピンの組み合わせ、ネットBとネットCのピンの組み合わせ、およびネットCとネットDのピンの組み合わせの4つになる。図1では、各ネットのピンの組み合わせを、ピン間に直線を配置することで示している。
ところで、ペア候補決定部1bは、第1のピン群3において所定の距離内にあるピン同士を計測した後に、第1のピン群3においてピンの距離が2以下のネットのピンについてのみ、ピン間の距離を計測するのが好ましい。この処理によって、ピンの距離を計測する回数を減らすことができる。
ペア決定部1cは、ペア候補決定部1bが決定したペア候補を用いて第1のピン群3および第2のピン群4それぞれのピンのペアを決定する。ここで、ペア候補決定部1bが決定したペア候補は、それぞれのピン間隔が所定距離内にある。従って、ペア決定部1cが、ペア候補に基づきペアを決定することで、ペア間に行った配線に他のペアの配線が入り込んでしまう可能性を減らすことができる。例えば、第1のピン群3側のピン間の距離が短くなる組み合わせを考慮してピンp1、p2と、ピンp3、p4をペア候補に決定し、第2のピン群4側のピンp5、p6とピンp7、p8を最短距離で配線すると、配線が重なってしまう。このため、最短距離で配線をすることができない。
ペア決定部1cは、第1のピン群3と第2のピン群4のうちいずれか一方のピン群の各ペア候補について、隣接するペア候補の数が少ないペア候補を優先してペアに決定するのが好ましい。この処理により、他のピンのペアの成立に影響を及す可能性が低いピンを優先してペアに決定することで、ペアを成立する機会を増やすことができる。図1では、例えば、ピンp2は、ピンp3以外のペア候補が存在しないので、ピンp2とピンp3の組み合わせを最初にペアに決定するのが好ましい。この結果、ネットBとネットCのピンがペアになるので、残りのネットAとネットDのピンがペアになる。図1では、決定したペアを示している。
配線部1dは、ペア決定部1cが決定したピンのペアを接続する配線を行う。具体的には、領域2aのピンのペアと領域2bのピンのペアを1つの配線で仮想的に接続した後にネットそれぞれの配線を行う。図1では、配線部1dが行った配線の一例を示している。
なお、ペア候補決定部1b、ペア決定部1cおよび配線部1dは、回路設計支援装置1が有するCPU(Central Processing Unit)が備える機能により実現することができる。また、基板情報格納部1aは、回路設計支援装置1が有するRAM(Random Access Memory)やハードディスクドライブ(HDD:Hard Disk Drive)等が備えるデータ記憶領域により実現することができる。
<第2の実施の形態>
図2は、第2の実施の形態の回路設計支援装置のハードウェア構成を示す図である。
回路設計支援装置10は、CPU101によって装置全体が制御されている。CPU101には、バス108を介してRAM102と複数の周辺機器が接続されている。
RAM102は、回路設計支援装置10の主記憶装置として使用される。RAM102には、CPU101に実行させるOS(Operating System)のプログラムやアプリケーションプログラムの少なくとも一部が一時的に格納される。また、RAM102には、CPU101による処理に使用する各種データが格納される。
バス108には、ハードディスクドライブ103、グラフィック処理装置104、入力インタフェース105、ドライブ装置106、および通信インタフェース107が接続されている。
ハードディスクドライブ103は、内蔵したディスクに対して、磁気的にデータの書き込みおよび読み出しを行う。ハードディスクドライブ103は、回路設計支援装置10の二次記憶装置として使用される。ハードディスクドライブ103には、OSのプログラム、アプリケーションプログラム、および各種データが格納される。なお、二次記憶装置としては、フラッシュメモリ等の半導体記憶装置を使用することもできる。
グラフィック処理装置104には、モニタ104aが接続されている。グラフィック処理装置104は、CPU101からの命令に従って、画像をモニタ104aの画面に表示させる。モニタ104aとしては、CRT(Cathode Ray Tube)や液晶表示装置等が挙げられる。
入力インタフェース105には、キーボード105aとマウス105bとが接続されている。入力インタフェース105は、キーボード105aやマウス105bから送られてくる信号をCPU101に送信する。なお、マウス105bは、ポインティングデバイスの一例であり、他のポインティングデバイスを使用することもできる。他のポインティングデバイスとしては、例えばタッチパネル、タブレット、タッチパッド、トラックボール等が挙げられる。
ドライブ装置106は、例えば、光の反射によって読み取り可能なようにデータが記録された光ディスクや、USB(Universal Serial Bus)メモリ等の持ち運び可能な記録媒体に記録されたデータの読み取りを行う。例えば、ドライブ装置106が光学ドライブ装置である場合、レーザ光等を利用して、光ディスク200に記録されたデータの読み取りを行う。光ディスク200には、Blu−ray(登録商標)、DVD(Digital Versatile Disc)、DVD−RAM、CD−ROM(Compact Disc Read Only Memory)、CD−R(Recordable)/RW(ReWritable)等が挙げられる。
通信インタフェース107は、ネットワーク50に接続されている。通信インタフェース107は、ネットワーク50を介して、他のコンピュータまたは通信機器との間でデータを送受信する。
以上のようなハードウェア構成によって、本実施の形態の処理機能を実現することができる。
回路設計支援装置10は、回路設計対象の基板上に配置されるBGA等の部品間を接続する各バス(ネットの束)について、配線プラン(バスの配線経路および配線層の割り当てを示す情報)を生成する機能を有している。回路設計支援装置10内には、以下のような機能が設けられる。
図3は、第2の実施の形態の回路設計支援装置の機能を示すブロック図である。
回路設計支援装置10は、バスピン群記憶部11と、ピン座標情報記憶部12と、ネット情報記憶部13と、部品情報記憶部14と、ネット種別情報記憶部15と、ペア候補グラフ作成部16と、ペア決定部17と、結果出力部18と、ピンペア情報記憶部19とを有している。
図4は、バスピン群記憶部に記憶されている情報を説明する図である。
図4に示す基板110には、それぞれ複数のピンホールPH1が形成された領域111、112が設けられている。領域111、112には、BGA等の部品が載置される。領域111、112の所定のピンホールPH1には、バスピンP1が配置されている。図4では、バスピンP1が配置されている箇所にバスピンのネットを示すアルファベットを示している。領域111に配置されたバスピンP1に付したアルファベットと領域112に配置されたバスピンP1に付したアルファベットの一致するバスピンP1が、同じネットのバスピンP1である。
バスピン群記憶部11には、領域111、112の各バスピンP1の座標、バスピンP1に接続されるネット(論理接続情報)のID、バスピンの形状(円、矩形等)、およびバスピンの半径等が記憶されている。
バスピンP1は、シングル(他のバスピンP1との組み合わせが決定していない)のバスピンP1と、他のバスピンP1との組み合わせが決定している差動ペアのバスピンP1が存在する。例えば、ネットNのバスピンP1とネットOのバスピンP1とは差動ペアを構成するバスピンP1であり、ペアが確定している。ネットA〜ネットMのバスピンは、ペアが未確定である。
回路設計支援装置10は、ペアが未確定のネットA〜ネットMをグループにして単層のバス配線で領域111、112間を接続する処理を行う。本実施の形態では、2つのネットをグループにした1つのバス配線で領域111、112間を接続する場合について説明するが、3つ以上のネットをグループにした1つのバス配線で領域111、112間を接続する場合にも適用することができる。
領域111および領域112には、各バスピンP1の位置を識別する座標(相対座標)が、配線設計に対する入力情報として予め設定されている。例えば、領域111、112の左上が原点(0,0)に設定されており、領域111のネットAのバスピンP1の座標は(1,1)である。
以下、領域111に配置されたバスピンP1を「ソースピンP1」とも言い、領域112に配置されたバスピンP1を「ターゲットピンP1」とも言う。
図5は、ピン座標情報記憶部に記憶されている情報の一例を示す図である。
本実施の形態では、情報がテーブル化されてピン座標情報記憶部に記憶されている。
図5に示すネットリスト12aには、ピンID、ピン群ID、ネット、座標およびペアピンIDの欄が設けられている。横方向に並べられた情報同士が互いに関連づけられている。
ピンIDの欄には、バスピンP1それぞれを識別するIDが設定されている。ピンIDは、バスピンP1毎に設けられており、同じネットのバスピンP1であってもピンIDは異なる。
ピン群IDの欄には、領域111のバスピンP1か、領域112のバスピンP1かを識別する情報が設定されている。具体的には、領域111のバスピンP1には「左」、領域112のバスピンP2には「右」が設定されている。
ネットの欄には、バスピンP1のネットを識別する情報が設定されている。
座標の欄には、バスピンP1の相対座標が設定されている。
ペアピンIDの欄には、差動ペアを構成するバスピンを識別する番号が設定されている。例えば、ペアピンIDに「28」が設定されバスピンID27のバスピンP1は、バスピンID28のバスピンP1と差動ペアを構成するピンである。
再び図3に戻って説明する。ネット情報記憶部13には、バスに属するネット毎に、ネットが所属するバス、ソースピンP1、ターゲットピンP1および配線幅等を識別する情報が記憶されている。
部品情報記憶部14には、領域111、112毎に、領域の基準位置(例えば、領域111の左上の頂点)の座標、左上ピン(例えば、ピン番号AのバスピンP1)の中心座標、領域の幅や高さ、バスピンP1間の距離、バスピンP1の配列数等が記憶されている。
ネット種別情報記憶部15には、ネットの種別を識別する情報が記憶されている。
ペア候補グラフ作成部16は、ネットリスト12aを用いてバスピンP1のペアを構成する候補(ペア候補)のグラフを作成する。なお、ここで言うグラフはグラフ理論上のグラフである。ペア候補グラフ作成部16は、グラフを作成する際、領域111、112それぞれにおいてバスピンP1間の距離を記憶したソースピン距離管理テーブルを作成する。
図6は、ペア候補グラフ作成部の処理を説明する図である。
図6に示すソースピン距離管理テーブル16aは、ペア候補グラフ作成部16が測定したソースピンP1間の距離を記憶するテーブルである。ソースピン距離管理テーブル16aの行方向および列方向には、それぞれピンIDおよびネットの欄が設定されている。
ペア候補グラフ作成部16は、各ソースピンP1間の距離を測定し、距離が2以下のソースピンP1の組み合わせを抽出する。この処理により、距離が2より大きな箇所のソースピンP1の組み合わせは、ペア候補から除外する。なお、距離が2以下は一例である。図6では、抽出したソースピンP1の組み合わせを斜線で示している。なお、図6においては、距離が2より大きいソースピンP1の組み合わせの箇所は、「>2」または、実測値を示している。
次に、ペア候補グラフ作成部16は、距離が2以下のソースピンP1の組み合わせを抽出した箇所を明記したターゲットピン距離管理テーブルを作成する。
図7は、ペア候補グラフ作成部の処理を説明する図である。
図7に示すターゲットピン距離管理テーブル16bは、ペア候補グラフ作成部16が測定したターゲットピンP1間の距離を記憶するテーブルである。ターゲットピン距離管理テーブル16bの行方向および列方向には、それぞれピンIDおよびネットの欄が設定されている。図7では、距離が2以下のソースピンP1の組み合わせのネットと同じネットの組み合わせを斜線で示している。ペア候補グラフ作成部16は、ターゲットピン距離管理テーブル16bの斜線で示された箇所について、ターゲットピンP1間の距離を測定する。すなわち、ペア候補グラフ作成部16は、距離が2より大きな箇所のソースピンP1の組み合わせは、ペア候補から除外したので、ターゲットピンP1側でも距離の測定を省略する。測定を省略することにより、距離を測定する箇所を減らすことができる。図7では、距離が2以下のターゲットピンP1の組み合わせの実測値を示し、距離が2より大きいターゲットピンP1の組み合わせは、実測値の図示を省略している。そして、ペア候補グラフ作成部16は、抽出したソースピンP1の組み合わせおよびターゲットピンP1の組み合わせに基づいて、グラフを作成する。
図8は、ペア候補グラフ作成部が作成したグラフを説明する図である。
図8には、ペア候補グラフ作成部16が作成したグラフLとグラフRを示している。グラフLは、各ソースピンP1をノードに設定し、ソースピン距離管理テーブル16aにおいて距離が2以下のソースピンP1間に枝を張ったグラフである。グラフRは、各ターゲットピンP1をノードに設定し、ターゲットピン距離管理テーブル16bにおいて距離が2以下のターゲットピンP1間に枝を張ったグラフである。なお、グラフRでは、距離が2以下のターゲットピンP1の組み合わせのうち、グラフL側で距離が2より大きいソースピンP1の組み合わせに対応するターゲットピンP1の組み合わせを点線で示している。点線で示した組み合わせは、距離の測定を省略した組み合わせである。
ペア決定部17は、ペア候補グラフ作成部16が作成したグラフLおよびグラフRに基づいて、バス配線を行うバスピンP1のペアを決定する。ペア決定部17は、グラフLおよびグラフRに基づき、バスピンP1のペアを決定することで、ペアのネットの配線経路の間に他のネットの配線経路が入り込んでしまう可能性を減らすことができる。具体的には、まず、ペア決定部17は、グラフRの各枝を頂点とし、グラフRで隣接(頂点を共有)する枝間に枝を出したグラフ(以下、グラフGと言う)を作成する。
図9は、ペア決定部が作成したグラフを説明する図である。
図9では、グラフRの枝に1から16までIDを振っている。グラフGの頂点のIDが、グラフRの枝の番号に対応している。すなわち、グラフGの1つの頂点が1つのペア候補に対応している。例えば、グラフGのID「1」の頂点は、ID「2」、ID「3」およびID「4」の頂点に接続されている。これは、ネットAのターゲットピンP1とネットDのターゲットピンP1のペア候補は、ネットAのターゲットピンP1とネットBのターゲットピンP1のペア候補、ネットDのターゲットピンP1とネットFのターゲットピンP3のペア候補、およびネットDのターゲットピンP1とネットBのターゲットピンP1のペア候補に隣接していることを示している。なお、グラフGの形状は特に限定されない。
ペア決定部17は、作成したグラフGの各頂点から出ている枝の数(以下、次数と言う)を計数し、グラフ管理テーブルを作成する。
図10は、グラフ管理テーブルを示す図である。
グラフ管理テーブル17aは、G頂点ID、ネットの組、採否、採択順、次数、隣接頂点、枝距離、および機会逸失距離の欄が設けられている。横方向に並べられた情報同士が互いに関連づけられている。
G頂点IDの欄には、グラフGの頂点のIDが設定される。
ネットの組の欄には、G頂点IDに対応するペア候補を構成するターゲットピンP1のネットの組み合わせが設定される。
採否の欄には、G頂点IDに対応するペア候補がペアとして採択されたか否かを識別する情報が設定される。具体的には、採択されたペア候補の欄には「採」が設定される。採択されなかったペア候補の欄には「否」が設定される。なお、初期状態は未決を示す「未」が設定されている。
採択順の欄には、ペアを採択した順序を示す値が設定される。初期状態は空白である。
次数の欄には、前述したように、作成したグラフGの各頂点から出ている枝の数が設定される。
隣接頂点の欄には、G頂点IDの欄のIDを備える頂点に隣接する頂点のG頂点IDが設定される。
枝距離の欄には、さらに、左L、右R、合計の欄が設けられている。左Lの欄には、ネットの組の欄に設定されたネットのグラフLのソースピンP1の距離が設定される。例えば、1行目のネットAのソースピンP1とネットDのソースピンP1間の距離1.4(小数点2桁以下切り捨て)が設定されている。右Rの欄には、ネットの組の欄に設定されたネットのグラフRのターゲットピンP1の距離が設定される。合計の欄には、左Lの欄に設定された距離と右Rの欄に設定された距離の合計値が設定される。
機会逸失距離の欄には、さらに左L、右R、合計の欄が設けられている。左Lの欄には、当該レコードのネットの組を採択することによりペアの成立機会を逸失するグラフL側のソースピンP1のペアの距離が設定されている。右Rの欄には、当該レコードのネットの組を採択することによりペアの成立機会を逸失するグラフR側のターゲットピンP1のペアの距離が設定されている。合計の欄には、左Lの欄に設定された距離と右Rの欄に設定された距離の合計値が設定される。
ペア決定部17は、グラフ管理テーブル17aを用いてターゲットピンP1のペア候補からターゲットピンP1のペアを決定する処理を繰り返し行う。以下、グラフ管理テーブル17aを用いてペア決定部17の処理を説明する。
図11〜図17は、ペア決定部の処理を説明する図である。
ペア決定部17は、グラフ管理テーブル17aを参照し、次数の最も小さいグラフGのG頂点IDを取得する。図11に示すグラフ管理テーブル17aでは、G頂点ID「15」の次数が「1」で最も小さい。このため、ペア決定部17は、G頂点ID「15」に対応するネットKのターゲットピンP1とネットMのターゲットピンP1のペア候補をペアに決定する。すなわち、ペア決定部17は、G頂点ID「15」の採否の欄を「採」に設定する。また、G頂点ID「15」の採択順の欄に「1」を設定する。このように、次数が小さい順にペアに決定すること、すなわち、他のターゲットピンP1のペアの成否に影響を与える可能性の少ないペア候補から順に処理を進めることで、最終的に成立するペアの個数が増える可能性を高めることができる。
ところで、図9のグラフRを参照すると、ネットKのターゲットピンP1とネットMのターゲットピンP1のペアの決定により、枝「14」により接続されたターゲットピンP1のペア、すなわち、ネットLのターゲットピンP1とネットMのターゲットピンP1のペアの可能性がなくなる。従って、ペア決定部17は、G頂点ID「14」の頂点を、グラフGから削除する処理を行う。具体的には、ペア決定部17は、G頂点ID「14」の採否の欄を「否」に設定する。また、ペア決定部17は、グラフ管理テーブル17aの採否の欄が「未」の全てのレコードの隣接頂点の欄から、「14」を削除する。「14」を削除した結果、G頂点ID「13」の隣接頂点の数が1つ減るので、ペア決定部17は、G頂点ID「13」の次数の欄を3から2に更新する。図11の円で囲った「2<3」は、次数が3から2に更新されたことを示している。なお、以下の図面の説明においても、注目すべき箇所を円で囲むこととする。なお、ペア決定部17は、次数の更新に伴い、グラフ管理テーブル17aの枝距離および機会逸失距離も更新する。更新のタイミングは任意である。また、採否の欄が「採」または「否」の枝距離および機会逸失距離については、更新しなくてもよい。以下、グラフ管理テーブル17aにおいて、採否の欄を「否」に設定したレコードのG頂点ID、次数および隣接頂点の欄を斜線で示す。また、採否の欄を「採」に設定したレコードの隣接頂点の欄を斜線で示す。採否の欄を「否」に設定したレコードについては、次数の欄を更新しない。
1つのペアを決定したので、ペア決定部17は、再び次数の最も少なく、かつ、採否の欄が「未」であるG頂点IDを取得する。図11に示すグラフ管理テーブル17aでは、G頂点ID「13」およびG頂点ID「16」の次数がそれぞれ「2」である。このため、ペア決定部17は、G頂点ID「13」およびG頂点ID「16」それぞれの枝距離の合計の欄を参照し、値が小さいG頂点IDに対応するターゲットピンP1のペア候補をペアに決定する。ここで、G頂点ID「13」およびG頂点ID「16」それぞれの枝距離の合計の欄はともに「2.8」である。このため、ペア決定部17は、G頂点ID「13」およびG頂点ID「16」それぞれの機会逸失距離の合計の欄を参照し、値が大きいG頂点IDに対応するターゲットピンP1のペア候補をペアに決定する。
ここで、G頂点ID「13」の機会逸失距離の合計の欄には「5.8」が設定されており、G頂点ID「16」の機会逸失距離の合計の欄には「4.8」が設定されている。このため、ペア決定部17は、図12に示すように、グラフG頂点ID「13」に対応するネットJのターゲットピンP1とネットLのターゲットピンP1のペア候補をペアに決定する。これは、G頂点ID「13」を残すと、G頂点ID「13」のネットの組のターゲットピンP1とその他のターゲットピンP1の距離が、G頂点ID「16」を残した場合に比べ大きくなってしまい、ペアの成立する可能性が減ってしまうからである。ペア決定部17は、G頂点ID「13」の採否の欄を「採」に設定する。また、G頂点ID「13」の採択順の欄に「2」を設定する。ここで、図9のグラフRを参照すると、ネットJのターゲットピンP1とネットLのターゲットピンP1のペアの決定により、新たに枝「10」および枝「12」のペアの可能性がなくなる。従って、ペア決定部17は、G頂点ID「10」および「12」の頂点を、グラフGから削除する処理を行う。具体的には、ペア決定部17は、図13に示すように、G頂点ID「10」および「12」の採否の欄を「否」に設定する。また、ペア決定部17は、グラフ管理テーブル17aの採否の欄が「未」の全てのレコードの隣接頂点の欄から、「10」および「12」を削除する。「10」および「12」を削除した結果、G頂点ID「5」の隣接頂点の数が1つ減るので、ペア決定部17は、G頂点ID「5」の次数の欄を4から3に更新する。また、G頂点ID「9」の隣接頂点の数が1つ減るので、ペア決定部17は、G頂点ID「9」の次数の欄を4から3に更新する。また、G頂点ID「11」の隣接頂点の数が2つ減るので、ペア決定部17は、G頂点ID「11」の次数の欄を4から2に更新する。
1つのペアを決定したので、ペア決定部17は、再び次数の最も少なく、かつ、採否の欄が「未」であるG頂点IDを取得する。図13に示すグラフ管理テーブル17aでは、G頂点ID「11」およびG頂点ID「16」の次数がそれぞれ「2」である。このため、ペア決定部17は、G頂点ID「11」およびG頂点ID「16」それぞれの枝距離の合計の欄を参照し、値が小さいG頂点IDに対応するターゲットピンP1のペア候補をペアに決定する。ここで、G頂点ID「11」の枝距離の合計の欄は「2.4」であり、G頂点ID「16」の枝距離の合計の欄は「2.8」である。このため、ペア決定部17は、G頂点ID「11」に対応するターゲットピンP1のペア候補をペアに決定する。ペア決定部17は、G頂点ID「11」の採否の欄を「採」に設定する。また、G頂点ID「11」の採択順の欄に「3」を設定する。ここで、図9のグラフRを参照すると、ネットGのターゲットピンP1とネットIのターゲットピンP1のペアの決定により、新たに枝「5」および枝「9」のペアの可能性がなくなる。従って、ペア決定部17は、G頂点ID「5」および「9」の頂点を、グラフGから削除する処理を行う。具体的には、ペア決定部17は、図14に示すように、G頂点ID「5」および「9」の採否の欄を「否」に設定する。また、ペア決定部17は、グラフ管理テーブル17aの採否の欄が「未」の全てのレコードの隣接頂点の欄から、「5」および「9」を削除する。「5」および「9」を削除した結果、G頂点ID「3」の隣接頂点の数が2つ減るので、ペア決定部17は、G頂点ID「3」の次数の欄を4から2に更新する。
1つのペアを決定したので、ペア決定部17は、再び次数の最も少なく、かつ、採否の欄が「未」であるG頂点IDを取得する。図14に示すグラフ管理テーブル17aでは、G頂点ID「3」およびG頂点ID「16」の次数がそれぞれ「2」である。このため、ペア決定部17は、G頂点ID「3」およびG頂点ID「16」それぞれの枝距離の合計の欄を参照し、値が小さいG頂点IDに対応するターゲットピンP1のペア候補をペアに決定する。ここで、G頂点ID「3」およびG頂点ID「16」それぞれの枝距離の合計の欄はともに「2.8」である。このため、ペア決定部17は、G頂点ID「3」およびG頂点ID「16」それぞれの機会逸失距離の合計の欄を参照し、値が大きいG頂点IDに対応するターゲットピンP1のペア候補をペアに決定する。ここで、G頂点ID「3」の機会逸失距離の合計は「5.2」が設定されており、G頂点ID「16」の機会逸失距離の合計の欄には「4.8」が設定されている。このため、ペア決定部17は、グラフG頂点ID「3」に対応するネットDのターゲットピンP1とネットFのターゲットピンP1のペア候補をペアに決定する。ペア決定部17は、G頂点ID「3」の採否の欄を「採」に設定する。また、G頂点ID「3」の採択順の欄に「4」を設定する。ここで、図9のグラフRを参照すると、ネットDのターゲットピンP1とネットFのターゲットピンP1のペアの決定により、新たに枝「1」および枝「4」のペアの可能性がなくなる。従って、ペア決定部17は、G頂点ID「1」およびG頂点ID「4」の頂点を、グラフGから削除する処理を行う。具体的には、ペア決定部17は、図15に示すように、G頂点ID「1」および「4」の採否の欄を「否」に設定する。また、ペア決定部17は、グラフ管理テーブル17aの採否の欄が「未」の全てのレコードの隣接頂点の欄から、「1」および「4」を削除する。「1」および「4」を削除した結果、G頂点ID「6」の隣接頂点の数が1つ減るので、ペア決定部17は、G頂点ID「6」の次数の欄を5から4に更新する。また、G頂点ID「7」の隣接頂点の数が1つ減るので、ペア決定部17は、G頂点ID「7」の次数の欄を4から3に更新する。
1つのペアを決定したので、ペア決定部17は、再び次数の最も少なく、かつ、採否の欄が「未」であるG頂点IDを取得する。図15に示すグラフ管理テーブル17aでは、G頂点ID「2」およびG頂点ID「16」の次数がそれぞれ「2」である。このため、ペア決定部17は、G頂点ID「2」およびG頂点ID「16」それぞれの枝距離の合計の欄を参照し、値が小さいG頂点IDに対応するターゲットピンP1のペア候補をペアに決定する。ここで、G頂点ID「2」の枝距離の合計の欄は「3」であり、G頂点ID「16」の枝距離の合計の欄は「2.8」である。このため、ペア決定部17は、G頂点ID「16」に対応するターゲットピンP1のペア候補をペアに決定する。ペア決定部17は、G頂点ID「16」の採否の欄を「採」に設定する。また、G頂点ID「16」の採択順の欄に「5」を設定する。ここで、図9のグラフRを参照すると、ネットのターゲットピンP1とネットのターゲットピンP1のペアの決定により、新たに枝「6」および枝「8」のペアの可能性がなくなる。従って、ペア決定部17は、G頂点ID「6」および「8」の頂点を、グラフGから削除する処理を行う。具体的には、ペア決定部17は、図16に示すように、G頂点ID「6」および「8」の採否の欄を「否」に設定する。また、ペア決定部17は、グラフ管理テーブル17aの採否の欄が「未」の全てのレコードの隣接頂点の欄から、「6」および「8」を削除する。「6」および「8」を削除した結果、G頂点ID「2」の隣接頂点の数が1つ減るので、ペア決定部17は、G頂点ID「2」の次数の欄を2から1に更新する。「6」および「8」を削除した結果、G頂点ID「7」の隣接頂点の数が2つ減るので、ペア決定部17は、G頂点ID「7」の次数の欄を3から1に更新する。
1つのペアを決定したので、ペア決定部17は、再び次数の最も少なく、かつ、採否の欄が「未」であるG頂点IDを取得する。図16に示すグラフ管理テーブル17aでは、G頂点ID「2」およびG頂点ID「7」の次数がそれぞれ「1」である。このため、ペア決定部17は、G頂点ID「2」およびG頂点ID「7」それぞれの枝距離の合計の欄を参照し、値が小さいG頂点IDに対応するターゲットピンP1のペア候補をペアに決定する。ここで、G頂点ID「2」の枝距離の合計の欄は「3」であり、G頂点ID「7」の枝距離の合計の欄は「2」である。このため、ペア決定部17は、G頂点ID「7」に対応するターゲットピンP1のペア候補をペアに決定する。ペア決定部17は、G頂点ID「7」の採否の欄を「採」に設定する。また、G頂点ID「7」の採択順の欄に「6」を設定する。ここで、図9のグラフRを参照すると、ネットEのターゲットピンP1とネットHのターゲットピンP1のペアの決定により、新たに枝「2」のペアの可能性がなくなる。従って、ペア決定部17は、G頂点ID「2」の頂点を、グラフGから削除する処理を行う。具体的には、ペア決定部17は、図17に示すように、G頂点ID「2」の採否の欄を「否」に設定する。この結果、グラフ管理テーブル17aの全ての採否の欄が「採」または「否」となったので、ペア決定部17は、処理を終了する。
図18は、グラフの推移を示す図である。
図10に示すグラフ管理テーブル17aから図11に示すグラフ管理テーブル17aに処理が遷移すると、処理状況が、図18(a)に示すグラフRから図18(b)に示すグラフRに遷移する。図11に示すグラフ管理テーブル17aから図12に示すグラフ管理テーブル17aに処理が遷移すると、処理状況が、図18(b)に示すグラフRから図18(c)に示すグラフRに遷移する。図12に示すグラフ管理テーブル17aから図13に示すグラフ管理テーブル17aに処理が遷移すると、処理状況が、図18(c)に示すグラフRから図18(d)に示すグラフRに遷移する。図13に示すグラフ管理テーブル17aから図14に示すグラフ管理テーブル17aに処理が遷移すると、処理状況が、図18(d)に示すグラフRから図18(e)に示すグラフRに遷移する。図14に示すグラフ管理テーブル17aから図15に示すグラフ管理テーブル17aに処理が遷移すると、処理状況が、図18(e)に示すグラフRから図18(f)に示すグラフRに遷移する。図15に示すグラフ管理テーブル17aから図16に示すグラフ管理テーブル17aに処理が遷移すると、処理状況が、図18(f)に示すグラフRから図18(g)に示すグラフRに遷移する。
結果出力部18は、ペア決定部17が決定したターゲットピンP1のペアに関する情報をピンペア情報記憶部19に記憶する。また、結果出力部18は、ペア決定部17が決定したターゲットピンP1のペアに関する情報をモニタ104aに出力してもよい。
図19は、ピンペア情報記憶部に記憶されたターゲットピンのペアに関する情報を説明する図である。
ピンペア情報記憶部19には、図18(g)に示したグラフRを形成し得る情報が記憶される。また、ペア決定部17が決定したターゲットピンP1のペアに関する情報を用いてソースピンP1のペアを形成すると、図19に示すグラフLのようになる。
次に、前述したペア候補グラフ作成部16およびペア決定部17の処理を、フローチャートを用いて説明する。
図20は、第2の実施の形態のペア候補グラフ作成部およびペア決定部の処理を示すフローチャートである。
[ステップS1] ペア候補グラフ作成部16は、ネットリスト12aからソースピンP1群およびターゲットピンP1群の座標データを読み込む。その後、ステップS2に遷移する。
[ステップS2] ペア候補グラフ作成部16は、ステップS1にて読み込んだ座標データに基づいて領域111に配置されたソースピンP1間の距離を測定し、測定結果をソースピン距離管理テーブル16aに記憶する。そして、ペア候補グラフ作成部16は、距離が2以下のソースピンP1の組み合わせを抽出してグラフLを作成する。その後、ステップS3に遷移する。
[ステップS3] ペア候補グラフ作成部16は、ターゲットピン距離管理テーブル16bを参照する。そして、ペア候補グラフ作成部16は、距離が2以下のソースピンP1の組み合わせを抽出した箇所について、ターゲットピンP1間の距離を測定し、測定結果をターゲットピン距離管理テーブル16bに記憶する。そして、ペア候補グラフ作成部16は、距離が2以下のターゲットピンP1の組み合わせを抽出してグラフRを作成する。その後、ステップS4に遷移する。
[ステップS4] ペア決定部17は、ステップS2にて作成されたグラフLおよびステップS3にて作成されたグラフRに基づいて、グラフGおよびグラフ管理テーブル17aを作成する。その後、ステップS5に遷移する。
[ステップS5] ペア決定部17は、グラフ管理テーブル17aの採否の欄が「未」のG頂点IDを次の(1)〜(3)のキーワードでソートする。(1)次数(昇順)、(2)枝距離の合計(昇順)、(3)機会逸失距離(降順)。その後、ステップS6に遷移する。
[ステップS6] ペア決定部17は、ステップS5のソートの結果に基づいて、グラフ管理テーブル17aを更新するテーブル更新処理を行う。なお、テーブル更新処理については後述する。テーブル更新処理が終了するとステップS7に遷移する。
[ステップS7] ペア決定部17は、グラフGの頂点の採否が全て終了したか否かを判断する。具体的には、ペア決定部17は、グラフ管理テーブル17aの採否の欄に「未」が存在するか否かを判断する。グラフ管理テーブル17aの採否の欄に「未」が存在する場合(ステップS7のYes)、ステップS5に遷移する。グラフ管理テーブル17aの採否の欄に「未」が存在しない場合、すなわち、採否の欄が全て「採」または「否」の場合(ステップS7のNo)、ステップS8に遷移する。
[ステップS8] ペア決定部17は、グラフ管理テーブル17aの採否の欄に「採」が設定されたターゲットピンP1のペアの情報をピンペア情報記憶部19に記憶する。その後、図20の処理を終了する。
以上で図20の処理の説明を終了する。
次に、ステップS6のテーブル更新処理を説明する。
図21は、テーブル更新処理を示すフローチャートである。
[ステップS6a] ペア決定部17は、ステップS5のソートの結果、一番上に表示されたG頂点IDを変数Vtに設定する。その後、ステップS6bに遷移する。
[ステップS6b] ペア決定部17は、グラフ管理テーブル17aの隣接頂点の欄を参照し、変数Vtに隣接するG頂点IDを全て抽出する。その後、ステップS6cに遷移する。
[ステップS6c] ペア決定部17は、ステップS6bにて抽出したG頂点IDを1つ選択する。その後、ステップS6dに遷移する。
[ステップS6d] ペア決定部17は、ステップS6cにて選択したG頂点IDを変数Vxに代入する。その後、ステップS6eに遷移する。
[ステップS6e] ペア決定部17は、グラフ管理テーブル17aの、変数Vxに隣接する全てのG頂点IDの次数を1減らす。その後、ステップS6fに遷移する。
[ステップS6f] ペア決定部17は、グラフ管理テーブル17aの、変数Vxに隣接する全てのG頂点IDの機会逸失距離を更新する。その後、ステップS6gに遷移する。
[ステップS6g] ペア決定部17は、変数Vxの採否の欄を「否」に設定する。その後、ステップS6hに遷移する。
[ステップS6h] ペア決定部17は、ステップS6bにて抽出した全てのG頂点IDについてステップS6c〜S6gの処理を行ったか否かを判断する。ステップS6bにて抽出した全てのG頂点IDについてステップS6c〜S6gの処理を行った場合(ステップS6hのYes)、ステップS6iに遷移する。ステップS6bにて抽出した全てのG頂点IDについてステップS6c〜S6gの処理を行っていない場合(ステップS6hのNo)、ステップS6cに遷移し、ステップS6c以降の処理を引き続き行う。
[ステップS6i] ペア決定部17は、変数Vtに設定されているG頂点IDの採否の欄を「採」に設定する。その後、テーブル更新処理を終了する。
以上述べたように、回路設計支援装置10によれば、ペア候補グラフ作成部16が、領域111、112それぞれのバスピンP1間の距離がいずれも所定距離以内であるバスピンP1のペア候補を決定したグラフRを作成した。ペア決定部17が、このグラフRを用いてペアを決定することにより、間に他のバス配線が入り込むようなペアが作成される可能性を低くすることができる。
また、2ネットずつ同時に経路を求めることができるため、バス配線の処理時間を短縮することができる。例えば探索するN本のネットの配線引き出し順の組み合わせをN!から(N/2)!に削減することができる。例えば、N=4であれば、24通りを2通りにすることができる。
<第3の実施の形態>
次に、第3の実施の形態の回路設計支援装置について説明する。
以下、第3の実施の形態の回路設計支援装置について、前述した第2の実施の形態との相違点を中心に説明し、同様の事項については、その説明を省略する。
第3の実施の形態の回路設計支援装置10は、領域111に配置された各ソースピンP1および領域112に配置された各ターゲットピンP1が2つの信号種別毎に区別されている点が第2の実施の形態と異なっている。
図22は、第3の実施の形態のネットリストを示す図である。
図22に示すネットリスト12bには、ネットリスト12aに比べ、信号種IDの欄がさらに設けられている。信号種IDの欄には、「1」または「2」が設定されており、値が等しい信号種を備えるネット同士は、ピン間に2本セットで通す配線ができて異なる信号種のネット同士は同じピン間を通すことができないように決められている。
この場合、同じ信号種のネット同士をまとめて同じピン間に通すようにした方が配線スペースを効率よく使うことができる。以下、第3の実施の形態のペア候補グラフ作成部16の処理を説明する。
第3の実施の形態のペア候補グラフ作成部16は、ネットリスト12bを用いてペア候補のグラフを作成する。
ペア候補グラフ作成部16は、各ソースピンP1間の距離を測定し、距離が2以下、かつ、信号種別が同種のソースピンP1の組み合わせを抽出する。
また、ペア候補グラフ作成部16は、図7に示すターゲットピン距離管理テーブル16bの距離が2以下、かつ、信号種別が同種のソースピンP1の組み合わせを抽出した箇所について、距離が2以下、かつ、信号種別が同種のターゲットピンP1の組み合わせを抽出する。
図23は、第3の実施の形態のペア候補グラフ作成部が作成したグラフを示す図である。
図23には、図6に示すソースピン距離管理テーブル16aにおいて、距離が2以下、かつ、信号種別が同種のソースピンP1間に枝を張ったグラフL1と、図7に示すターゲットピン距離管理テーブル16bにおいて、距離が2以下、かつ、信号種別が同種のターゲットピンP1間に枝を張ったグラフR1を示している。グラフL1、R1において、信号種が異なるバスピンP1間には枝が存在しないため、信号種が異なるバスピンP1のペアが生じる可能性がない。
この第3の実施の形態の回路設計支援装置10によれば、第2の実施の形態の回路設計支援装置10と同様の効果が得られる。
そして、第3の実施の形態の回路設計支援装置10によれば、同じ信号種IDを備えるピンの配線が隣接する可能性を高めることができる。このため、配線スペースを効率よく使うことができる。
図24は、配線スペースが効率よく使える理由を説明する図である。
バスピンP1a、P3aが同じ信号種IDを有しており、バスピンP2a、P4aが同じ信号種IDを有しているものとする。そして、同じ信号種IDの配線同士は隣接してよいが、異なる信号種IDの配線は少なくとも1マス開けるという配線ルールが設定されているものとする。この配線ルールでは、同じ信号種IDの配線同士を隣接させて配線した方が、配線スペースを効率よく使える場合が多い。例えば図24(a)は、ピンの信号種IDを考慮せずに配線した例を示している。ピンの信号種IDを考慮せずに配線した結果、同じ信号種IDの配線同士が隣接せずに配線されている。対して図24(b)は、ピンの信号種IDを考慮して回路設計支援装置10が配線をした例を示している。図24(a)、(b)の斜線部は、いずれも他のピンについて配線ができないデッドスペースを示している。図24(b)の斜線部の面積は、図24(a)の斜線部の面積に比べ少ないことが確認できる。このため、同じ信号種IDの配線同士を隣接させて配線した方が、配線スペースを効率よく使うことができる。
なお、本実施の形態の回路設計支援装置10では、2つの信号種IDを備える場合を説明したが、3つ以上の信号種IDを備えていてもよい。
<第4の実施の形態>
次に、第4の実施の形態の回路設計支援装置について説明する。
以下、第4の実施の形態の回路設計支援装置について、前述した第3の実施の形態との相違点を中心に説明し、同様の事項については、その説明を省略する。
図25は、第4の実施の形態の回路設計支援装置の機能を示すブロック図である。
第4の実施の形態の回路設計支援装置10aは、信号種別距離係数記憶部20をさらに有している。
図26は、第4の実施の形態のネットリストを示す図である。
図26に示すネットリスト12cの信号種IDの欄には、信号の種別を示す「1」、「2」または「3」が設定されている。
図27は、信号種別距離係数記憶部に記憶されている情報を説明する図である。
図27では情報がテーブル化されて記憶されている。
図27に示す距離係数テーブル20aは、信号種ID(a)、信号種ID(b)および距離係数の欄が設けられている。横方向に並べられた情報同士が互いに関連づけられている。
信号種ID(a)の欄および信号種ID(b)の欄には、ネットリスト12cに設定した信号種IDの組み合わせが設定されている。
距離係数の欄には、信号種ID(a)の欄の信号種IDを持つバスピンP1と信号種ID(b)の欄の信号種IDを持つバスピンP1とのペアになり易さを示す指標が設定されている。本実施の形態では、「1」が最もペアとなり易く、「3」が最もペアとなりにくい。この距離係数テーブル20aにより、例えば、図26に示すネットリスト12cのピンID「1」のソースピンP1は、ピンID「2」、「3」、「4」、「6」、「7」のソースピンP1とペアになり易く、ピンID「5」のソースピンP1とペアになりにくいことが確認できる。なお、距離係数を「1」に設定する一例としては、信号種ID(a)の欄および信号種ID(b)の欄の信号種IDによって特定される信号種が差動信号である場合が挙げられる。また、距離係数を「3」に設定する一例としては、信号種ID(a)の欄および信号種ID(b)の欄の信号種IDによって特定される信号種のいずれかがクロック信号である場合が挙げられる。
次に、第4の実施の形態のペア候補グラフ作成部16の処理を説明する。
ペア候補グラフ作成部16は、領域111の各ソースピンP1について、各ソースピンP1間の距離を求める。そして、ペア候補グラフ作成部16は、距離係数テーブル20aを参照し、求めた距離それぞれに距離係数を掛ける。そして、距離が2以下のソースピンP1の組み合わせを抽出する。
図28は、第4の実施の形態のソースピン距離管理テーブルを示す図である。
図28に示すソースピン距離管理テーブル16cは、距離が2以下である箇所を斜線で示している。また、ソースピン距離管理テーブル16cは、ソースピン距離管理テーブル16aでは距離が2以下となっていた箇所であって、ソースピン距離管理テーブル16cでは距離が2より大きくなった箇所について計算式を示している。
図29は、第4の実施の形態のターゲットピン距離管理テーブルを示す図である。
図29に示すターゲットピン距離管理テーブル16dは、距離が2以下のターゲットピンP1の組み合わせを抽出した箇所を斜線で示している。ここで、ピンID「14」とピンID「16」のターゲットピンP1の距離は2以下の「1.4」であるが、後述するグラフL2に枝が存在しない。このため、後述するグラフR2の作成対象から除外する。
図30は、第4の実施の形態のペア候補グラフ作成部が作成したグラフを説明する図である。
図30には、ペア候補グラフ作成部16が作成したグラフL2とグラフR2を示している。グラフL2とグラフR2には、それぞれ同じ信号種IDを持つバスピンP1の周辺には同じ模様を示している。グラフL2は、各ソースピンP1をノードに設定し、ソースピン距離管理テーブル16cにおいて距離が2以下のソースピンP1間に枝を張ったグラフである。グラフR2は、各ターゲットピンP1をノードに設定し、ターゲットピン距離管理テーブル16dにおいて距離が2以下のターゲットピンP1間に枝を張ったグラフである。第4の実施の形態のペア候補グラフ作成部16の処理の結果、同じ信号種のソースピンP1間およびターゲットピンP1に枝が張られていることが確認できる。
次に、第4の実施の形態のペア候補グラフ作成部16およびペア決定部17の処理を、フローチャートを用いて説明する。
図31は、第4の実施の形態のペア候補グラフ作成部およびペア決定部の処理を示すフローチャートである。
[ステップS11] ペア候補グラフ作成部16は、ネットリスト12cからソースピンP1群およびターゲットピンP1群の座標データを読み込む。その後、ステップS12に遷移する。
[ステップS12] ペア候補グラフ作成部16は、ステップS11にて読み込んだ座標データに基づいて領域111に配置されたソースピンP1間の距離を測定する。そして、ペア候補グラフ作成部16は、距離係数テーブル20aを参照し、測定結果に距離係数を掛けてソースピン距離管理テーブル16cに記憶する。そして、ペア候補グラフ作成部16は、距離が2以下のソースピンP1の組み合わせを抽出してグラフL2を作成する。その後、ステップS13に遷移する。
[ステップS13] ペア候補グラフ作成部16は、ターゲットピン距離管理テーブル16bを参照する。そして、ペア候補グラフ作成部16は、距離が2以下のソースピンP1の組み合わせを抽出した箇所について、ターゲットピンP1間の距離を測定する。そして、距離係数テーブル20aを参照し、測定結果に距離係数を掛けてターゲットピン距離管理テーブル16dに記憶する。そして、ペア候補グラフ作成部16は、グラフL2に同区間の枝が存在する距離が2以下のターゲットピンP1の組み合わせを抽出してグラフR2を作成する。その後、ステップS14に遷移する。
ステップS14からステップS18は、ペア決定部17は、ステップS4からステップS8と同じ処理を行う。以上で図31の処理の説明を終了する。
この第4の実施の形態の回路設計支援装置10によれば、第3の実施の形態の回路設計支援装置10と同様の効果が得られる。
<第5の実施の形態>
次に、第5の実施の形態の回路設計支援装置について説明する。
以下、第5の実施の形態の回路設計支援装置について、前述した第2の実施の形態との相違点を中心に説明し、同様の事項については、その説明を省略する。
第5の実施の形態のペア候補グラフ作成部16は、領域112側のターゲットピンP1のネット分布を考慮せずにペア候補を作成する。
図32は、第5の実施の形態の回路設計支援装置の機能を示すブロック図である。
第5の実施の形態の回路設計支援装置10bは、さらに、調整部21を有している。調整部21は、ペア決定部17の決定に応じて領域112の各ターゲットピンP1のネットA〜Mの割り当てを調整する。また、調整部21は、調整した各ターゲットピンP1のネットA〜Mの割り当てを、ピンペア情報記憶部19に記憶させる。第5の実施の形態の回路設計支援装置10bの処理は、例えば、領域111がASIC(Application Specific Integrated Circuit)を配置する領域であり、領域112がFPGA(Field-Programmable Gate Array)を配置する領域である場合に適用することができる。
図33は、第5の実施の形態のペア候補グラフ作成部の処理を説明する図である。
第5の実施の形態のペア候補グラフ作成部16は、第2の実施の形態と同様に、グラフLを作成する。
ペア決定部17は、グラフLの各枝を頂点とし、グラフLで隣接(頂点を共有)する枝間に枝を出したグラフG1を作成する。そして、ペア決定部17は、作成したグラフG1の次数を計数し、グラフ管理テーブルを作成する。
図34は、第5の実施の形態のグラフ管理テーブルを示す図である。
グラフ管理テーブル17bには、G頂点ID、ネットの組、採否、採択順、次数、隣接頂点、枝距離および機会逸失距離の欄が設けられている。横方向に並べられた情報同士が互いに関連づけられている。
G頂点IDの欄には、グラフG1の頂点のIDが設定される。
ネットの組の欄には、G頂点IDに対応するペア候補を構成するソースピンP1のネットの組み合わせが設定される。
採否の欄、採択順の欄、次数の欄および隣接頂点の欄は、それぞれグラフ管理テーブル17aと同様の情報が設定される。
枝距離の欄には、ネットの組の欄に設定されたネットのグラフLのソースピンP1の距離が設定される。
機会逸失距離の欄には、当該レコードのネットの組を採択することによりペアの成立機会を逸失するグラフLのソースピンP1のペアの距離が設定されている。
ペア決定部17は、グラフ管理テーブル17bを用いてペア候補からペアを決定する処理を繰り返し行う。以下、グラフ管理テーブル17bを用いてペア決定部17の処理を説明する。
図35〜図41は、第5の実施の形態のペア決定部の処理を説明する図である。
ペア決定部17は、グラフ管理テーブル17bを参照し、次数の最も小さいグラフG1の頂点を取得する。図34に示すグラフ管理テーブル17bでは、G頂点ID「24」の次数が「3」で最も小さい。このため、ペア決定部17は、G頂点ID「24」に対応するネットKのターゲットピンP1とネットMのターゲットピンP1のペア候補をペアに決定する。すなわち、ペア決定部17は、図35に示すように、G頂点ID「24」の採否の欄を「採」に設定する。また、G頂点ID「24」の採択順の欄に「1」を設定する。ここで、図33のグラフLを参照すると、ネットKのターゲットピンP1とネットMのターゲットピンP1のペアの決定により、枝「21」、「22」および「23」のペアの可能性がなくなる。従って、ペア決定部17は、G頂点ID「21」、「22」および「23」の頂点を、グラフG1から削除する処理を行う。具体的には、図36に示すように、ペア決定部17は、G頂点ID「21」、「22」および「23」の採否の欄を「否」に設定する。また、ペア決定部17は、グラフ管理テーブル17aの採否の欄が「未」の全てのレコードの隣接頂点の欄から、「21」、「22」および「23」を削除する。隣接頂点「21」、「22」および「23」を削除した結果、G頂点ID「16」の隣接頂点の数が2つ減るので、ペア決定部17は、G頂点ID「16」の次数の欄を9から7に更新する。また、隣接頂点「21」、「22」および「23」を削除した結果、G頂点ID「18」の隣接頂点の数が2つ減るので、ペア決定部17は、G頂点ID「18」の次数の欄を7から5に更新する。また、隣接頂点「21」、「22」および「23」を削除した結果、G頂点ID「19」の隣接頂点の数が1つ減るので、ペア決定部17は、G頂点ID「19」の次数の欄を5から4に更新する。隣接頂点「21」、「22」および「23」を削除した結果、G頂点ID「20」の隣接頂点の数が3つ減るので、ペア決定部17は、G頂点ID「20」の次数の欄を6から3に更新する。
1つのペアを決定したので、ペア決定部17は、再び次数の最も少なく、かつ、採否の欄が「未」であるG頂点IDを取得する。
図36に示すグラフ管理テーブル17bでは、G頂点ID「20」の次数が「3」で最も小さい。このため、ペア決定部17は、G頂点ID「20」に対応するネットJのターゲットピンP1とネットLのターゲットピンP1のペア候補をペアに決定する。すなわち、ペア決定部17は、G頂点ID「20」の採否の欄を「採」に設定する。また、G頂点ID「20」の採択順の欄に「2」を設定する。ここで、図33のグラフLを参照すると、ネットJのターゲットピンP1とネットLのターゲットピンP1のペアの決定により、新たに枝「16」、「18」および「19」のペアの可能性がなくなる。従って、ペア決定部17は、G頂点ID「16」、「18」および「19」の頂点を、グラフG1から削除する処理を行う。具体的には、図37に示すように、ペア決定部17は、G頂点ID「16」、「18」および「19」の採否の欄を「否」に設定する。また、ペア決定部17は、グラフ管理テーブル17aの採否の欄が「未」の全てのレコードの隣接頂点の欄から、「16」、「18」および「19」を削除する。隣接頂点「16」、「18」および「19」を削除した結果、G頂点ID「10」の隣接頂点の数が1つ減るので、ペア決定部17は、G頂点ID「10」の次数の欄を8から7に更新する。また、隣接頂点「16」、「18」および「19」を削除した結果、G頂点ID「11」の隣接頂点の数が1つ減るので、ペア決定部17は、G頂点ID「11」の次数の欄を9から8に更新する。また、隣接頂点「16」、「18」および「19」を削除した結果、G頂点ID「13」の隣接頂点の数が1つ減るので、ペア決定部17は、G頂点ID「13」の次数の欄を9から8に更新する。また、隣接頂点「16」、「18」および「19」を削除した結果、G頂点ID「14」の隣接頂点の数が2つ減るので、ペア決定部17は、G頂点ID「14」の次数の欄を6から4に更新する。また、隣接頂点「16」、「18」および「19」を削除した結果、G頂点ID「15」の隣接頂点の数が3つ減るので、ペア決定部17は、G頂点ID「15」の次数の欄を8から5に更新する。また、隣接頂点「16」、「18」および「19」を削除した結果、G頂点ID「17」の隣接頂点の数が1つ減るので、ペア決定部17は、G頂点ID「17」の次数の欄を7から6に更新する。
1つのペアを決定したので、ペア決定部17は、再び次数の最も少なく、かつ、採否の欄が「未」であるG頂点IDを取得する。
図37に示すグラフ管理テーブル17bでは、G頂点ID「7」およびG頂点ID「14」の次数がそれぞれ「4」である。このため、ペア決定部17は、G頂点ID「7」およびG頂点ID「14」それぞれの枝距離の欄を参照し、値が小さいG頂点IDに対応するペア候補をペアに決定する。ここで、G頂点ID「7」の枝距離は、「2」であり、G頂点ID「14」の枝距離は「1」である。このため、ペア決定部17は、グラフG頂点ID「14」に対応するネットFのターゲットピンP1とネットIのターゲットピンP1のペア候補をペアに決定する。すなわち、ペア決定部17は、G頂点ID「14」の採否の欄を「採」に設定する。なお、図37〜図41においては、紙面の都合上、ネットの組の欄の図示を省略している。また、G頂点ID「20」の採択順の欄に「2」を設定する。ここで、図33のグラフLを参照すると、ネットFのターゲットピンP1とネットIのターゲットピンP1のペアの決定により、新たに枝「1」、「8」、「10」、および「15」のペアの可能性がなくなる。従って、ペア決定部17は、G頂点ID「1」、「8」、「10」、および「15」の頂点を、グラフG1から削除する処理を行う。具体的には、図38に示すように、ペア決定部17は、G頂点ID「1」、「8」、「10」、および「15」の採否の欄を「否」に設定する。また、ペア決定部17は、グラフ管理テーブル17aの採否の欄が「未」の全てのレコードの隣接頂点の欄から、「1」、「8」、「10」、および「15」を削除する。隣接頂点「1」、「8」、「10」、および「15」を削除した結果、G頂点ID「2」の隣接頂点の数が1つ減るので、ペア決定部17は、G頂点ID「2」の次数の欄を5から4に更新する。また、隣接頂点「1」、「8」、「10」、および「15」を削除した結果、G頂点ID「3」の隣接頂点の数が1つ減るので、ペア決定部17は、G頂点ID「3」の次数の欄を7から6に更新する。また、隣接頂点「1」、「8」、「10」、および「15」を削除した結果、G頂点ID「9」の隣接頂点の数が2つ減るので、ペア決定部17は、G頂点ID「9」の次数の欄を6から4に更新する。また、隣接頂点「1」、「8」、「10」、および「15」を削除した結果、G頂点ID「11」の隣接頂点の数が3つ減るので、ペア決定部17は、G頂点ID「11」の次数の欄を8から5に更新する。また、隣接頂点「1」、「8」、「10」、および「15」を削除した結果、G頂点ID「12」の隣接頂点の数が1つ減るので、ペア決定部17は、G頂点ID「12」の次数の欄を8から7に更新する。また、隣接頂点「1」、「8」、「10」、および「15」を削除した結果、G頂点ID「13」の隣接頂点の数が2つ減るので、ペア決定部17は、G頂点ID「13」の次数の欄を8から6に更新する。また、隣接頂点「1」、「8」、「10」、および「15」を削除した結果、G頂点ID「17」の隣接頂点の数が2つ減るので、ペア決定部17は、G頂点ID「17」の次数の欄を6から4に更新する。
1つのペアを決定したので、ペア決定部17は、再び次数の最も少なく、かつ、採否の欄が「未」であるG頂点IDを取得する。
図38に示すグラフ管理テーブル17bでは、G頂点ID「2」、G頂点ID「7」、G頂点ID「9」、およびG頂点ID「17」の次数がそれぞれ「4」である。このため、ペア決定部17は、G頂点ID「2」、G頂点ID「7」、G頂点ID「9」、およびG頂点ID「17」それぞれの枝距離の欄を参照し、値が小さいG頂点IDに対応するペア候補をペアに決定する。ここで、G頂点ID「2」、「7」、「17」の枝距離は、「2」であり、G頂点ID「9」の枝距離は「1.4」である。このため、ペア決定部17は、グラフG頂点ID「9」に対応するネットAのターゲットピンP1とネットDのターゲットピンP1のペア候補をペアに決定する。すなわち、ペア決定部17は、G頂点ID「9」の採否の欄を「採」に設定する。また、G頂点ID「9」の採択順の欄に「4」を設定する。ここで、図33のグラフLを参照すると、ネットAのターゲットピンP1とネットDのターゲットピンP1のペアの決定により、新たに枝「2」、「3」、「11」、および「12」のペアの可能性がなくなる。従って、ペア決定部17は、G頂点ID「2」、「3」、「11」、および「12」の頂点を、グラフG1から削除する処理を行う。具体的には、図38に示すように、ペア決定部17は、G頂点ID「2」、「3」、「11」、および「12」の採否の欄を「否」に設定する。また、ペア決定部17は、グラフ管理テーブル17aの採否の欄が「未」の全てのレコードの隣接頂点の欄から、「2」、「3」、「11」、および「12」を削除する。隣接頂点「2」、「3」、「11」、および「12」を削除した結果、G頂点ID「4」の隣接頂点の数が3つ減るので、ペア決定部17は、図39に示すように、G頂点ID「4」の次数の欄を7から4に更新する。また、隣接頂点「2」、「3」、「11」、および「12」を削除した結果、G頂点ID「5」の隣接頂点の数が2つ減るので、ペア決定部17は、図39に示すように、G頂点ID「5」の次数の欄を5から3に更新する。また、隣接頂点「2」、「3」、「11」、および「12」を削除した結果、G頂点ID「6」の隣接頂点の数が1つ減るので、ペア決定部17は、G頂点ID「6」の次数の欄を6から5に更新する。また、隣接頂点「2」、「3」、「11」、および「12」を削除した結果、G頂点ID「13」の隣接頂点の数が2つ減るので、ペア決定部17は、G頂点ID「13」の次数の欄を6から4に更新する。また、隣接頂点「2」、「3」、「11」、および「12」を削除した結果、G頂点ID「17」の隣接頂点の数が1つ減るので、ペア決定部17は、G頂点ID「17」の次数の欄を4から3に更新する。また、隣接頂点「2」、「3」、「11」、および「12」を削除した結果、G頂点ID「25」の隣接頂点の数が1つ減るので、ペア決定部17は、G頂点ID「25」の次数の欄を6から5に更新する。
1つのペアを決定したので、ペア決定部17は、再び次数の最も少なく、かつ、採否の欄が「未」であるG頂点IDを取得する。
図39に示すグラフ管理テーブル17bでは、G頂点ID「5」およびG頂点ID「17」の次数がそれぞれ「3」である。このため、ペア決定部17は、G頂点ID「5」およびG頂点ID「17」それぞれの枝距離の欄を参照し、値が小さいG頂点IDに対応するペア候補をペアに決定する。ここで、G頂点ID「5」の枝距離は、「1」であり、G頂点ID「17」の枝距離は「2」である。このため、ペア決定部17は、グラフG頂点ID「5」に対応するネットBのターゲットピンP1とネットCのターゲットピンP1のペア候補をペアに決定する。すなわち、ペア決定部17は、G頂点ID「5」の採否の欄を「採」に設定する。また、G頂点ID「5」の採択順の欄に「5」を設定する。ここで、図33のグラフLを参照すると、ネットのターゲットピンP1とネットのターゲットピンP1のペアの決定により、新たに枝「4」、「6」、および「7」のペアの可能性がなくなる。従って、ペア決定部17は、G頂点ID「4」、「6」、および「7」の頂点を、グラフG1から削除する処理を行う。具体的には、図40に示すように、ペア決定部17は、G頂点ID「4」、「6」、および「7」の採否の欄を「否」に設定する。また、ペア決定部17は、グラフ管理テーブル17aの採否の欄が「未」の全てのレコードの隣接頂点の欄から、「4」、「6」、および「7」を削除する。隣接頂点「4」、「6」、および「7」を削除した結果、G頂点ID「13」の隣接頂点の数が2つ減るので、ペア決定部17は、G頂点ID「13」の次数の欄を4から2に更新する。また、隣接頂点「4」、「6」、および「7」を削除した結果、G頂点ID「17」の隣接頂点の数が1つ減るので、ペア決定部17は、G頂点ID「17」の次数の欄を3から2に更新する。また、隣接頂点「4」、「6」、および「7」を削除した結果、G頂点ID「25」の隣接頂点の数が3つ減るので、ペア決定部17は、G頂点ID「25」の次数の欄を5から2に更新する。
1つのペアを決定したので、ペア決定部17は、再び次数の最も少なく、かつ、採否の欄が「未」であるG頂点IDを取得する。
図41に示すグラフ管理テーブル17bでは、G頂点ID「13」、G頂点ID「17」およびG頂点ID「25」の次数がそれぞれ「2」である。このため、ペア決定部17は、G頂点ID「13」、G頂点ID「17」およびG頂点ID「25」それぞれの枝距離の欄を参照し、値が小さいG頂点IDに対応するペア候補をペアに決定する。ここで、G頂点ID「13」およびG頂点「25」の枝距離は、「1.4」であり、G頂点ID「17」の枝距離は「2」である。このため、ペア決定部17は、ここで、G頂点ID「13」およびG頂点「25」それぞれの機会逸失距離の欄を参照し、値が小さいG頂点IDに対応するペア候補をペアに決定する。ここで、G頂点ID「13」の機会逸失距離は、「3.4」であり、G頂点ID「25」の機会逸失距離は「3.4」である。そこで、初期の次数(隣接頂点の数)を比較し、値が小さいG頂点IDに対応するペア候補をペアに決定する。ここで、G頂点ID「13」の初期の次数は、「9」であり、G頂点ID「25」の初期の次数は「6」である。このため、ペア決定部17は、グラフG頂点ID「25」に対応するネットEのターゲットピンP1とネットHのターゲットピンP1のペア候補をペアに決定する。すなわち、ペア決定部17は、G頂点ID「25」の採否の欄を「採」に設定する。また、G頂点ID「25」の採択順の欄に「6」を設定する。ここで、図33のグラフLを参照すると、ネットEのターゲットピンP1とネットHのターゲットピンP1のペアの決定により、新たに枝「13」および「17」のペアの可能性がなくなる。従って、ペア決定部17は、G頂点ID「13」およびG頂点ID「17」の頂点を、グラフG1から削除する処理を行う。具体的には、図41に示すように、ペア決定部17は、G頂点ID「13」およびG頂点ID「17」の採否の欄を「否」に設定する。この結果、グラフ管理テーブル17bの全ての採否の欄が「採」または「否」となったのでターゲットピンP1のペアを決定する処理を終了する。
図42は、第5の実施の形態のピンペア情報記憶部に記憶されたターゲットピンのペアに関する情報を説明する図である。
グラフ管理テーブル17bの採否の欄が「採」のG頂点ID「5」、「9」、「14」、「20」、「24」、「25」に対応する枝により、ソースピンP1同士が接続されている。
図43は、第5の実施の形態のペア候補グラフ作成部およびペア決定部の処理を示すフローチャートである。
[ステップS21] ペア候補グラフ作成部16は、ネットリスト12aからソースピンP1群およびターゲットピンP1群の座標データを読み込む。その後、ステップS22に遷移する。
[ステップS22] ペア候補グラフ作成部16は、ステップS21にて読み込んだ座標データに基づいて領域111に配置されたソースピンP1間の距離を測定する。そして、ペア候補グラフ作成部16は、距離係数テーブル20aを参照し、測定結果に距離係数を掛けてソースピン距離管理テーブル16cに記憶する。そして、ペア候補グラフ作成部16は、距離が2以下のソースピンP1の組み合わせを抽出してグラフLを作成する。その後、ステップS23に遷移する。
[ステップS23] ペア決定部17は、ステップS22にて作成されたグラフLに基づいて、グラフG1およびグラフ管理テーブル17bを作成する。その後、ステップS24に遷移する。
[ステップS24] ペア決定部17は、グラフ管理テーブル17bの採否の欄が「未」のG頂点IDを次の(1)〜(4)のキーワードでソートする。(1)次数(昇順)、(2)頂点に対応するグラフLの枝距離(昇順)、(3)機会逸失距離(降順)、(4)初期状態での次数(昇順)。その後、ステップS25に遷移する。
[ステップS25] ペア決定部17は、ステップS24のソートの結果に基づいて、グラフ管理テーブル17bを更新するテーブル更新処理を行う。なお、テーブル更新処理については後述する。テーブル更新処理が終了するとステップS26に遷移する。
[ステップS26] ペア決定部17は、グラフG1の頂点の採否が全て終了したか否かを判断する。具体的には、ペア決定部17は、グラフ管理テーブル17bの採否の欄に「未」が存在するか否かを判断する。グラフ管理テーブル17bの採否の欄に「未」が存在する場合(ステップS26のYes)、ステップS24に遷移する。グラフ管理テーブル17bの採否の欄に「未」が存在しない場合、すなわち、採否の欄が全て「採」または「否」の場合(ステップS26のNo)、ステップS27に遷移する。
[ステップS27] ペア決定部17は、グラフ管理テーブル17bの採否の欄に「採」が設定されたバスピンP1のペアの情報をピンペア情報記憶部19に記憶する。その後、図43の処理を終了する。
次に、ステップS25のテーブル更新処理を説明する。
図44は、第5の実施の形態のテーブル更新処理を示すフローチャートである。
[ステップS25a] ペア決定部17は、ステップS5のソートの結果、一番上に表示されたG頂点IDを変数Vtに設定する。その後、ステップS25bに遷移する。
[ステップS25b] ペア決定部17は、グラフ管理テーブル17bの隣接頂点の欄を参照し、変数Vtに隣接するG頂点IDを全て抽出する。その後、ステップS25cに遷移する。
[ステップS25c] ペア決定部17は、ステップS25bにて抽出したG頂点IDを1つ選択する。その後、ステップS25dに遷移する。
[ステップS25d] ペア決定部17は、ステップS25cにて選択したG頂点IDを変数Vxに代入する。その後、ステップS25eに遷移する。
[ステップS25e] ペア決定部17は、変数Vxに隣接する全てのG頂点IDの次数を1減らす。その後、ステップS25fに遷移する。
[ステップS25f] ペア決定部17は、変数Vxの採否の欄を「否」に設定する。その後、ステップS25gに遷移する。
[ステップS25g] ペア決定部17は、ステップS25bにて抽出した全てのG頂点IDについてステップS25c〜S25fの処理を行ったか否かを判断する。ステップS25bにて抽出した全てのG頂点IDについてステップS25c〜S25fの処理を行った場合(ステップS25gのYes)、ステップS25hに遷移する。ステップS25bにて抽出した全てのG頂点IDについてステップS25c〜S25fの処理を行っていない場合(ステップS25gのNo)、ステップS25cに遷移し、ステップS25c以降の処理を引き続き行う。
[ステップS25h] ペア決定部17は、変数Vtに設定されているG頂点IDの採否の欄を「採」に設定する。その後、テーブル更新処理を終了する。
この第5の実施の形態の回路設計支援装置10によれば、第2の実施の形態の回路設計支援装置10と同様の効果が得られる。
そして、第5の実施の形態の回路設計支援装置10によれば、ネットの変更が可能な集積回路が領域112に配置される場合には、ターゲットピンP1側のネット分布を考慮せず領域111に配置されたソースピンP1側のみでペアを決定することができる。そして、調整部21が、ペア決定部17が決定したソースピンP1のペアのネットと同じネットのターゲットピンP1の距離が2以下になるように、ターゲットピンP1のネットの割り当てを調整することで、配線スペースを効率よく使った配線を実現することができる。
なお、回路設計支援装置10が行った処理が、複数の装置によって分散処理されるようにしてもよい。例えば、1つの装置が、グラフL、R、Gの作成までを行ってペア候補を作成しておき、他の装置が、そのペア候補を用いてバスピンP1のペアを決定するようにしてもよい。
以上、本発明の回路設計支援装置、回路設計支援方法および回路設計支援プログラムを、図示の実施の形態に基づいて説明したが、本発明はこれに限定されるものではなく、各部の構成は、同様の機能を有する任意の構成のものに置換することができる。また、本発明に、他の任意の構成物や工程が付加されていてもよい。
また、本発明は、前述した各実施の形態のうちの、任意の2以上の構成(特徴)を組み合わせたものであってもよい。
なお、上記の処理機能は、コンピュータによって実現することができる。その場合、回路設計支援装置1、10、10a、10bが有する機能の処理内容を記述したプログラムが提供される。そのプログラムをコンピュータで実行することにより、上記処理機能がコンピュータ上で実現される。処理内容を記述したプログラムは、コンピュータで読み取り可能な記録媒体に記録しておくことができる。コンピュータで読み取り可能な記録媒体としては、磁気記憶装置、光ディスク、光磁気記録媒体、半導体メモリ等が挙げられる。磁気記憶装置には、ハードディスクドライブ、フレキシブルディスク(FD)、磁気テープ等が挙げられる。光ディスクには、DVD、DVD−RAM、CD−ROM/RW等が挙げられる。光磁気記録媒体には、MO(Magneto-Optical disk)等が挙げられる。
プログラムを流通させる場合には、例えば、そのプログラムが記録されたDVD、CD−ROM等の可搬型記録媒体が販売される。また、プログラムをサーバコンピュータの記憶装置に格納しておき、ネットワークを介して、サーバコンピュータから他のコンピュータにそのプログラムを転送することもできる。
プログラムを実行するコンピュータは、例えば、可搬型記録媒体に記録されたプログラムもしくはサーバコンピュータから転送されたプログラムを、自己の記憶装置に格納する。そして、コンピュータは、自己の記憶装置からプログラムを読み取り、プログラムに従った処理を実行する。なお、コンピュータは、可搬型記録媒体から直接プログラムを読み取り、そのプログラムに従った処理を実行することもできる。また、コンピュータは、ネットワークを介して接続されたサーバコンピュータからプログラムが転送される毎に、逐次、受け取ったプログラムに従った処理を実行することもできる。
また、上記の処理機能の少なくとも一部を、DSP(Digital Signal Processor)、ASIC(Application Specific Integrated Circuit)、PLD(Programmable Logic Device)等の電子回路で実現することもできる。
以上の第1〜第5の実施の形態に関し、さらに以下の付記を開示する。
(付記1) 配線の論理接続情報を有するピンを複数備える第1のピン群と、前記第1のピン群の各ピンの配線の接続先となり前記論理接続情報を有するピンを備える第2のピン群とが与えられたとき、前記第1のピン群および前記第2のピン群それぞれにおいて所定距離内にある同じ前記論理接続情報を有するピン同士をペア候補に決定するペア候補決定部と、
前記ペア候補決定部が決定した前記ペア候補を用いて前記第1のピン群および前記第2のピン群それぞれのピンのペアを決定するペア決定部と、
を有することを特徴とする回路設計支援装置。
(付記2) 前記ペア決定部は、前記第1のピン群と前記第2のピン群のうちいずれか一方のピン群の前記各ペア候補について、隣接する前記ペア候補の数が少ない前記ペア候補を優先してペアに決定することを特徴とする付記1記載の回路設計支援装置。
(付記3) 前記ペア決定部は、ペアに決定した前記ペア候補を、隣接する前記ペア候補の数から除外して次のピンのペアを決定する処理を繰り返し実行することを特徴とする付記2記載の回路設計支援装置。
(付記4) 前記ペア決定部は、隣接する前記ペア候補の数が等しい前記ペア候補が複数存在する場合、当該ペア候補それぞれの前記第1のピン群での距離および前記第2のピン群での距離の和が小さいペア候補をペアに決定することを特徴とする付記2記載の回路設計支援装置。
(付記5) 前記ペア決定部は、隣接する前記ペア候補それぞれの第1のピン群および前記第2のピン群での距離の和が等しい場合、当該ペア候補のピンを含む当該ペア候補以外の全ての前記ペア候補の距離の和を前記第1のピン群と前記第2のピン群について求め、前記距離の和が大きい方をペアに決定することを特徴とする付記4記載の回路設計支援装置。
(付記6) 前記ペア候補決定部は、ピンに付与された信号の種別を識別する識別情報を参照して、同じ前記識別情報が付与されたピン間について前記ペア候補を決定することを特徴とする付記1ないし5のいずれかに記載の回路設計支援装置。
(付記7) 前記ペア候補決定部は、ピンに付与された前記識別情報の組み合わせから決まる前記ピンのペアのなり易さを示す指標を用いて、前記ペア候補を決定することを特徴とする付記6記載の回路設計支援装置。
(付記8) コンピュータが、配線の論理接続情報を有するピンを複数備える第1のピン群と、前記第1のピン群の各ピンの配線の接続先となり前記論理接続情報を有するピンを備える第2のピン群とが与えられたとき、前記第1のピン群および前記第2のピン群それぞれにおいて所定距離内にある同じ前記論理接続情報を有するピン同士をペア候補に決定し、
前記決定された前記ペア候補を用いて前記第1のピン群および前記第2のピン群それぞれのピンのペアを決定する、
ことを特徴とする回路設計支援方法。
(付記9) コンピュータに、
配線の論理接続情報を有するピンを複数備える第1のピン群と、前記第1のピン群の各ピンの配線の接続先となり前記論理接続情報を有するピンを備える第2のピン群とが与えられたとき、前記第1のピン群および前記第2のピン群それぞれにおいて所定距離内にある同じ前記論理接続情報を有するピン同士をペア候補に決定し、
決定された前記ペア候補を用いて前記第1のピン群および前記第2のピン群それぞれのピンのペアを決定する、
処理を実行させることを特徴とする回路設計支援プログラム。
(付記10) 配線の論理接続情報を有するピンを複数備える第1のピン群が与えられたとき、与えられた前記第1のピン群において所定距離内にあるピン同士をペア候補に決定するペア候補決定部と、
前記ペア候補決定部が決定した前記ペア候補を用いて前記第1のピン群のピンのペアを決定するペア決定部と、
前記ペア決定部の決定に応じて前記第1のピン群の各ピンの配線の接続先となるピンを備える第2のピン群の論理接続情報の割り当てを調整する調整部と、
を有することを特徴とする回路設計支援装置。
(付記11) 前記ペア決定部は、前記第1のピン群の前記各ペア候補について、隣接するペア候補の数が少ないペア候補を優先してペアに決定することを特徴とする付記10記載の回路設計支援装置。
(付記12) 前記ペア決定部は、ペアに決定した前記ペア候補を、隣接する前記ペア候補の数から除外することを特徴とする付記11記載の回路設計支援装置。
(付記13) 前記ペア決定部は、隣接する前記ペア候補の数が等しい前記ペア候補が複数存在する場合、当該ペア候補それぞれの前記第1のピン群での距離の和が小さいペア候補をペアに決定することを特徴とする付記11記載の回路設計支援装置。
(付記14) 前記ペア決定部は、隣接する前記ペア候補それぞれの第1のピン群での距離の和が等しい場合、当該ペア候補のピンを含む当該ペア候補以外の全ての前記ペア候補の距離の和を前記第1のピン群について求め、前記距離の和が大きい方をペアに決定することを特徴とする付記13記載の回路設計支援装置。
(付記15) 前記ペア決定部は、ペアに決定した前記ペア候補を、隣接する前記ペア候補の数から除外して次のピンのペアを決定する処理を繰り返し実行し、
当該ペア候補のピンを含む当該ペア候補以外の全ての前記ペア候補の距離の和が等しい場合、ペアに決定した前記ペア候補を含めた隣接するペア候補の数が少ないペア候補を優先してペアに決定することを特徴とする付記14記載の回路設計支援装置。
(付記16) 前記ペア候補決定部は、ピンに付与された信号の種別を識別する識別情報を参照して、同じ前記識別情報が付与されたピン間についてペア候補を決定することを特徴とする付記10ないし15のいずれかに記載の回路設計支援装置。
(付記17) 前記ペア候補決定部は、ピンに付与された前記識別情報の組み合わせから決まる前記ピンのペアのなり易さを示す指標を用いて、前記ペア候補を決定することを特徴とする付記16記載の回路設計支援装置。
(付記18)コンピュータが、
配線の論理接続情報を有するピンを複数備える第1のピン群が与えられたとき、与えられた前記第1のピン群において所定距離内にあるピン同士をペア候補に決定し、
決定された前記ペア候補を用いて前記第1のピン群のピンのペアを決定し、
前記ペアの決定に応じて前記第1のピン群の各ピンの配線の接続先となるピンを備える前記第2のピン群の論理接続情報の割り当てを調整する、
ことを特徴とする回路設計支援方法。
(付記19)コンピュータに、
配線の論理接続情報を有するピンを複数備える第1のピン群が与えられたとき、与えられた前記第1のピン群において所定距離内にあるピン同士をペア候補に決定し、
決定された前記ペア候補を用いて前記第1のピン群のピンのペアを決定し、
前記ペアの決定に応じて前記第1のピン群の各ピンの配線の接続先となるピンを備える前記第2のピン群の論理接続情報の割り当てを調整する、
処理を実行させることを特徴とする回路設計支援プログラム。
1、10、10a、10b 回路設計支援装置
1a 基板情報格納部
1b ペア候補決定部
1c ペア決定部
1d 配線部
11 バスピン群記憶部
12 ピン座標情報記憶部
12a、12b、12c ネットリスト
13 ネット情報記憶部
14 部品情報記憶部
15 ネット種別情報記憶部
16 ペア候補グラフ作成部
16a、16c ソースピン距離管理テーブル
16b、16d ターゲットピン距離管理テーブル
17 ペア決定部
17a グラフ管理テーブル
18 結果出力部
19 ピンペア情報記憶部
20 信号種別距離係数記憶部
20a 距離係数テーブル
21 調整部
110 基板
111、112 領域
P1、P1a〜P4a、P1b〜P4b バスピン
G、L、L1、L2、R、R1、R2 グラフ

Claims (9)

  1. 配線の論理接続情報を有するピンを複数備える第1のピン群と、前記第1のピン群の各ピンの配線の接続先となり前記論理接続情報を有するピンを備える第2のピン群とが与えられたとき、前記第1のピン群および前記第2のピン群それぞれにおいて所定距離内にある異なる前記論理接続情報を有するピン同士をペア候補に決定するペア候補決定部と、
    前記ペア候補決定部が決定した前記ペア候補を用いて前記第1のピン群および前記第2のピン群それぞれのピンのペアを決定するペア決定部と、
    を有することを特徴とする回路設計支援装置。
  2. 前記ペア決定部は、前記各ペア候補について、隣接する前記ペア候補の数が少ない前記ペア候補を優先してペアに決定することを特徴とする請求項1記載の回路設計支援装置。
  3. 前記ペア決定部は、隣接する前記ペア候補の数が等しい前記ペア候補が複数存在する場合、当該ペア候補それぞれの前記第1のピン群での距離および前記第2のピン群での距離の和が小さいペア候補をペアに決定することを特徴とする請求項2記載の回路設計支援装置。
  4. 前記ペア決定部は、隣接する前記ペア候補それぞれの前記第1のピン群および前記第2のピン群での距離の和が等しい場合、当該ペア候補のピンを含む当該ペア候補以外の全ての前記ペア候補の距離の和を前記第1のピン群と前記第2のピン群について求め、前記距離の和が大きい方をペアに決定することを特徴とする請求項3記載の回路設計支援装置。
  5. 前記ペア候補決定部は、ピンに付与された信号の種別を識別する識別情報を参照して、同じ前記識別情報が付与されたピン間について前記ペア候補を決定することを特徴とする請求項1ないし4のいずれかに記載の回路設計支援装置。
  6. 前記ペア候補決定部は、ピンに付与された前記識別情報の組み合わせから決まる前記ピンのペアのなり易さを示す指標を用いて、前記ペア候補を決定することを特徴とする請求項5記載の回路設計支援装置。
  7. コンピュータが、配線の論理接続情報を有するピンを複数備える第1のピン群と、前記第1のピン群の各ピンの配線の接続先となり前記論理接続情報を有するピンを備える第2のピン群とが与えられたとき、前記第1のピン群および前記第2のピン群それぞれにおいて所定距離内にある異なる前記論理接続情報を有するピン同士をペア候補に決定し、
    前記決定された前記ペア候補を用いて前記第1のピン群および前記第2のピン群それぞれのピンのペアを決定する、
    ことを特徴とする回路設計支援方法。
  8. コンピュータに、
    配線の論理接続情報を有するピンを複数備える第1のピン群と、前記第1のピン群の各ピンの配線の接続先となり前記論理接続情報を有するピンを備える第2のピン群とが与えられたとき、前記第1のピン群および前記第2のピン群それぞれにおいて所定距離内にある異なる前記論理接続情報を有するピン同士をペア候補に決定し、
    決定された前記ペア候補を用いて前記第1のピン群および前記第2のピン群それぞれのピンのペアを決定する、
    処理を実行させることを特徴とする回路設計支援プログラム。
  9. 配線の論理接続情報を有するピンを複数備える第1のピン群が与えられたとき、与えられた前記第1のピン群において所定距離内にあるピン同士をペア候補に決定するペア候補決定部と、
    前記ペア候補決定部が決定した前記ペア候補を用いて前記第1のピン群のピンのペアを決定するペア決定部と、
    前記ペア決定部の決定に応じて前記第1のピン群の各ピンの配線の接続先となるピンを備える第2のピン群の論理接続情報の割り当てを調整する調整部と、
    を有することを特徴とする回路設計支援装置。
JP2011165342A 2011-07-28 2011-07-28 回路設計支援装置、回路設計支援方法および回路設計支援プログラム Expired - Fee Related JP5776413B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2011165342A JP5776413B2 (ja) 2011-07-28 2011-07-28 回路設計支援装置、回路設計支援方法および回路設計支援プログラム
US13/555,245 US8832630B2 (en) 2011-07-28 2012-07-23 Apparatus and method for aiding in designing electronic circuits
US14/325,405 US9275183B2 (en) 2011-07-28 2014-07-08 Apparatus and method for aiding in designing electronic circuits

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2011165342A JP5776413B2 (ja) 2011-07-28 2011-07-28 回路設計支援装置、回路設計支援方法および回路設計支援プログラム

Publications (2)

Publication Number Publication Date
JP2013029970A JP2013029970A (ja) 2013-02-07
JP5776413B2 true JP5776413B2 (ja) 2015-09-09

Family

ID=47598349

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011165342A Expired - Fee Related JP5776413B2 (ja) 2011-07-28 2011-07-28 回路設計支援装置、回路設計支援方法および回路設計支援プログラム

Country Status (2)

Country Link
US (2) US8832630B2 (ja)
JP (1) JP5776413B2 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10719653B2 (en) * 2013-10-09 2020-07-21 Synopsys, Inc. Spine routing and pin grouping with multiple main spines
CN104537194B (zh) * 2015-01-22 2017-11-10 广东威创视讯科技股份有限公司 一种pcb设计方法
CN112685991B (zh) * 2020-12-22 2022-11-01 北京华大九天科技股份有限公司 一种满足约束的布线方法
CN115081387A (zh) * 2022-06-30 2022-09-20 成都航盛智行科技有限公司 应用于pcb设计中的生成组件虚拟网络的方法

Family Cites Families (36)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04115368A (ja) 1990-09-06 1992-04-16 Nec Corp 束線検出装置
JP3003345B2 (ja) 1991-12-26 2000-01-24 横河電機株式会社 プリント板の自動束配線システム
US5452239A (en) * 1993-01-29 1995-09-19 Quickturn Design Systems, Inc. Method of removing gated clocks from the clock nets of a netlist for timing sensitive implementation of the netlist in a hardware emulation system
US6229320B1 (en) * 1994-11-18 2001-05-08 Fujitsu Limited IC socket, a test method using the same and an IC socket mounting mechanism
US6058252A (en) * 1995-01-19 2000-05-02 Synopsys, Inc. System and method for generating effective layout constraints for a circuit design or the like
US6230109B1 (en) * 1995-05-16 2001-05-08 The United States Of America As Represented By The Secretary Of The Navy Multiconductor continuity and intermittent fault analyzer with distributed processing and dynamic stimulation
JP2929978B2 (ja) 1995-07-31 1999-08-03 日本電気株式会社 自動配線方法及びその装置
JPH09198423A (ja) * 1996-01-23 1997-07-31 Fujitsu Ltd 自動配線方法および自動配線装置
US5910899A (en) * 1996-10-25 1999-06-08 Advanced Micro Devices, Inc. Method for performing floorplan timing analysis using multi-dimensional feedback in a spreadsheet with computed hyperlinks to physical layout graphics and integrated circuit made using same
JPH11110434A (ja) * 1997-10-07 1999-04-23 Fujitsu Ltd プリント板パターン設計装置
JP4128251B2 (ja) * 1997-10-23 2008-07-30 富士通株式会社 配線密度予測方法およびセル配置装置
WO2001024111A1 (en) * 1999-09-30 2001-04-05 Routech, Inc. Automatic routing system for pc board design
JP2001142914A (ja) * 1999-11-10 2001-05-25 Fujitsu Ltd 経路探索方法及び記憶媒体
JP3986717B2 (ja) * 1999-12-01 2007-10-03 富士通株式会社 パス決定方法及び記憶媒体
US6631509B2 (en) * 2000-01-27 2003-10-07 Matsushita Electric Industrial Co., Ltd. Computer aided design apparatus for aiding design of a printed wiring board to effectively reduce noise
JP2002217302A (ja) 2001-01-22 2002-08-02 Seiko Epson Corp 半導体装置のレイアウト方法及び半導体装置のレイアウトプログラムを記録した記録媒体
JP4035354B2 (ja) * 2001-07-11 2008-01-23 富士通株式会社 電子回路設計方法及び装置、コンピュータプログラム及び記憶媒体
US7039892B2 (en) * 2001-07-24 2006-05-02 Hewlett-Packard Development Company, L.P. Systems and methods for ensuring correct connectivity between circuit designs
JP4376670B2 (ja) * 2004-03-24 2009-12-02 富士通株式会社 スタイナー木処理装置、スタイナー木処理方法及びスタイナー木処理プログラム
JP3814616B2 (ja) 2004-04-12 2006-08-30 富士通株式会社 配線設計装置
US7721036B2 (en) * 2004-06-01 2010-05-18 Quickturn Design Systems Inc. System and method for providing flexible signal routing and timing
US7937681B2 (en) * 2005-04-25 2011-05-03 Cadence Design Systems, Inc. Method and mechanism for implementing automated PCB routing
US7418683B1 (en) * 2005-09-21 2008-08-26 Cadence Design Systems, Inc Constraint assistant for circuit design
US7992121B2 (en) * 2005-09-30 2011-08-02 Cadence Design Systems, Inc. System and method for I/O synthesis and for assigning I/O to programmable devices
JP4746432B2 (ja) * 2006-01-12 2011-08-10 株式会社東芝 故障リスト及びテストパターン作成装置、故障リスト及びテストパターン作成方法、故障リスト作成及び故障検出率算出装置、及び故障リスト作成及び故障検出率算出方法
US7956421B2 (en) * 2008-03-13 2011-06-07 Tela Innovations, Inc. Cross-coupled transistor layouts in restricted gate level layout architecture
US20080301600A1 (en) * 2006-12-07 2008-12-04 Fujitsu Limited CAD apparatus and check support apparatus
US8201136B2 (en) * 2006-12-07 2012-06-12 Fujitsu Limited CAD apparatus, method, and computer product for designing printed circuit board
JP2008204349A (ja) * 2007-02-22 2008-09-04 Fujitsu Ltd レイアウト設計プログラム、該プログラムを記録した記録媒体、レイアウト設計方法、およびレイアウト設計装置
US7757196B2 (en) * 2007-04-04 2010-07-13 Cisco Technology, Inc. Optimizing application specific integrated circuit pinouts for high density interconnect printed circuit boards
JP4377926B2 (ja) * 2007-04-23 2009-12-02 株式会社東芝 テストパターン作成及び故障検出率算出装置並びにテストパターン作成及び故障検出率算出方法
JP2011081958A (ja) * 2009-10-05 2011-04-21 Nec Corp 電子機器
US8429584B2 (en) * 2009-11-11 2013-04-23 International Business Machines Corporation Method, electronic design automation tool, computer program product, and data processing program for creating a layout for design representation of an electronic circuit and corresponding port for an electronic circuit
JP5589783B2 (ja) * 2010-11-09 2014-09-17 富士通株式会社 設計プログラム、設計装置及び設計方法
US8407635B2 (en) * 2011-01-31 2013-03-26 Cadence Design Systems, Inc. System and method for automatic extraction of power intent from custom analog/custom digital/mixed signal schematic designs
US8261226B1 (en) * 2011-07-20 2012-09-04 International Business Machines Corporation Network flow based module bottom surface metal pin assignment

Also Published As

Publication number Publication date
US9275183B2 (en) 2016-03-01
US20130031525A1 (en) 2013-01-31
US20140325469A1 (en) 2014-10-30
US8832630B2 (en) 2014-09-09
JP2013029970A (ja) 2013-02-07

Similar Documents

Publication Publication Date Title
CN106407491B (zh) 全局连接件布线方法及其执行系统
US8930869B2 (en) Method, program, and apparatus for aiding wiring design
JP5776413B2 (ja) 回路設計支援装置、回路設計支援方法および回路設計支援プログラム
US8423948B2 (en) Wiring design support device and wiring design supporting method
US10031996B2 (en) Timing based net constraints tagging with zero wire load validation
JP2013037451A (ja) レイアウト設計装置、レイアウト設計方法およびレイアウト設計プログラム
US10354041B2 (en) Process for improving capacitance extraction performance
US8286124B2 (en) Printed circuit board design assisting method, printed circuit board design assisting device, and storage medium
JP2018073228A (ja) ケーブル配線プログラム、情報処理装置、およびケーブル配線方法
JP2014072491A (ja) 半導体装置及び半導体装置の設計方法
US10885257B1 (en) Routing congestion based on via spacing and pin density
US10706201B1 (en) Circuit design routing using multi-panel track assignment
JP2009134520A (ja) ソーシャルネットワーク表示システム、方法、及びプログラム
US20160246293A1 (en) Computer-readable recording medium having recorded therein component arrangement program, method of arranging components, and information processing apparatus
US20170016780A1 (en) Thermal analysis method, thermal analysis device, and recording medium storing thermal analysis program
CN112989751B (zh) 基于分支定界法的电路通道布线方法、装置及电子设备
Chang et al. Obstacle-aware group-based length-matching routing for pre-assignment area-I/O flip-chip designs
JP2016132538A (ja) 搬入据付け作業計画支援装置および搬入据付け作業計画支援方法
JP2008277497A (ja) 半導体集積回路の設計装置、半導体集積回路の設計方法、半導体装置の製造方法および半導体装置
JP2012243791A (ja) レイアウト設計方法、および、レイアウト設計プログラム
JP2011238011A (ja) 半導体集積回路設計装置、半導体集積回路設計方法及びプログラム
US11030378B1 (en) Track assignment by dynamic programming
JP5845932B2 (ja) 文字列配置変更方法、プログラムおよび情報処理装置
US20160357603A1 (en) Apparatus and method for executing maintenance processing on computers coupled via a multidimensional mesh or torus connection in a network
US9471740B2 (en) Support apparatus and design support method

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20140404

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20150319

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20150324

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20150519

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20150609

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20150622

R150 Certificate of patent or registration of utility model

Ref document number: 5776413

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees