JP3898787B2 - 実装設計装置 - Google Patents
実装設計装置 Download PDFInfo
- Publication number
- JP3898787B2 JP3898787B2 JP28699296A JP28699296A JP3898787B2 JP 3898787 B2 JP3898787 B2 JP 3898787B2 JP 28699296 A JP28699296 A JP 28699296A JP 28699296 A JP28699296 A JP 28699296A JP 3898787 B2 JP3898787 B2 JP 3898787B2
- Authority
- JP
- Japan
- Prior art keywords
- component
- wiring
- information
- pin
- design
- 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
Links
Images
Landscapes
- Supply And Installment Of Electrical Components (AREA)
Description
【0001】
【発明の属する技術分野】
本発明は、プリント基板、MCMの実装設計を行う実装設計装置に関する。
【0002】
【従来の技術】
近年、携帯電話やページャ、電子手帳、パームトップパソコンを始めとする携帯機器の小型化が急速に進んでいる。これらを開発するメーカ各社は、如何にして高密度なプリント基板、MCM(マルチチップモジュール)を設計するかに日夜懸命である。これらの高密度化はCADシステムの実装設計の完成度により左右されるといって過言ではない。一般に基板の実装設計とは、回路設計によって作成された回路図に基づき、それぞれの部品を基板上の何処の位置へ実装するかを決定する作業と、どのような経路で基板上に配線箔を引き回すかを決定する作業とからなる。これら2つの作業は、前者(位置決め作業)が後者(配線作業)より先に行われるのが一般的である。そしてこの順序でこれらの作業を行う場合位置決め作業は、それら部品の大きさを予め大きめに決めておくことが不可欠となる。このように大きめに決めておくと、位置決め時には各部品の周辺にある程度の余白が保たれるため、配線作業において、部品周りの配線領域が足りなくなるという現象を回避することが可能となる(本明細書では、表現の簡略を期するため、装着位置の『位置決め』のことを単に『配置』という場合がある。)。
【0003】
尚CADを利用した配線基板設計の詳細については、例えば(株)情報調査会発行の”エレクトロニクス実装技術”1993年7月号の特集「高機能実装対応CAD/CAEシステム」や、山田照彦監修「プリント基板のCAE」応用技術出版、1990年1月14日発行等を参照されたい。
実装設計において問題となるのは、各部品は一体どれだけ大きめにしておくかを決めることである。もし拡大量が少なめであると配線経路が確保できずに未結線のまま残る配線が現れ、逆に長めであると部品周辺の余白が大きめとなり、基板が高密度にならない。
【0004】
部品の位置決めを行う際に各部品の拡大幅を適正に定める技術を本明細書ではオフセット付与技術と呼ぶ。オフセット付与技術の第1従来技術としては、特開平3-14181号公報「部品の自動配置処理方式」に詳述されているものがあげられる。これは多層基板の実装時における各部品の拡大巾を部品別に変化させようというものであり、配線容量を予測することにより決定している。本公報によると配線容量とは多層基板の実装面において引き出し配線が占める領域の大きさであり、これを部品において引き出し配線されるピンがどのように並んでいるか、ピン並びが配線層のトラックとどのような位置関係にあるかに基づいて算出している。ピンが部品の両側面にあり、これが配線層における配線トラックと直交している場合、図38(a)の一例に示すよう配線層のトラックを通じた配線経路が確立されるであろうと推測する。
【0005】
配線層における配線トラックと平行である場合、実装面においては、図38(b)の一例に示すように引き出し配線を用いることにより配線経路が確立されるであろうと推測する。ピン並びの方向がトラックと直交しているか平行であるかに応じて個々の部品の引き出し配線がどれだけの領域を占めるかを算出し、算出した値に応じたオフセット巾だけ部品を拡大した後に、位置決めを行うと、配線のための領域が他の部品の配置位置によって占有されることを避けることができる。
【0006】
オフセット付与技術の第2の従来技術は各部品の特性に応じて、各部品に固有のオフセット巾を与えようというものである。その一例は特開平5−12380公報に記載されているものであり、ピン数が多い部品には、配線領域を多く用いるであろうという推測のもとに空き領域の分配を行う。ここでいう空き領域とは、最小矩形の部品形状で全部品を一旦近接配置した後の空き領域であり、これを分配すると、各部品は近接配置の状態から周辺部品を押し退けるように徐々に拡大されてゆく。このようにピン数に応じて分配すると、たとえ形状は同じであっても、ピン数が多い部品には、ピン数が少ない部品より多い目に面積が分配され、配線領域が多い目に見積もられる。
【0007】
【発明が解決しようとする課題】
ところで第1従来技術の問題点としては、部品の配置位置が定まらないと配線領域の予測がなしえないこと、即ち、部品の装着位置が定まった段階を待たないと、配線領域の予測は不可能である問題点をも有している。これは、配線領域の予測時期が大きく制約されることを意味する。例えば、設計者が部品の装着位置が全く決まっていない状態で配線領域を予測しておこうと望んでも不可能であり、また一旦決めた後装着位置が変わると配線領域さえも予測し直す必要が生ずる。
【0008】
第1従来技術は更に、実装面における引き出し配線の引き出し長がピン並びの方向とトラックとの位置関係から予測される長さを上回る現象が発生し、折角の予測が裏切られる場合が多々ある。このように予測が裏切られるのは、電磁誘導による干渉や漏洩が発生するのを避けるためにルータがクリアランス確保を行う場合である。ルータとは、CADシステムにおいてメーズ法、ラインサーチ法等の配線アルゴリズムを用いて配線経路を決定するツールプログラムであり、これが行うクリアランス確保は、実装面においてビアを打つ位置を図39(a)に示すように上下方向にずらしたり、引き出し配線の配線パタンを直線状にするのでは無く、図39(b)に示すように、配線パタンを階段状に形成することでなされるる。
【0009】
どのような状態であるとルータがクリアランス確保を行うかは、たとえ第1従来技術の手法でピン並びの方向やトラック方向が判明していてもなしえないので、第1従来技術は、クリアランス確保でどうしても必要となる領域をないがしろにしたままで部品の位置決めを行ってしまう。
第2従来技術の問題点としては、全ての部品が拡大しきれない場合に配線領域が全く確保不能な基板レイアウトが生成されてしまうことが挙げられる。このように不能レイアウトが生成されると、始めからレイアウトをやり直す必要があり、作業効率が芳しくない。
【0010】
具体的に説明すると、第2従来技術では、基板上に装着すべき各部品は最小矩形で近接配置した後にオフセット巾が付与されると付与された部品は周辺部品を押し退けるように拡大される。押し退けられた部品が基板の内側に位置しているうちはよいが、押し退けられた部品が基板外にはみ出してしまうと、オフセットを付与することはキャンセルせねばならない。途中でオフセット付与をキャンセルすると、最小矩形で近接配置した状態で配置処理が終わってしまう。このように近接配置された状態では、配線領域が確保不能であり、基板レイアウトとしては失格であるから、始めからレイアウト作成をやり直す必要が生じる。
【0011】
本発明の目的は、ルータがクリアランス確保を行った場合に発生する配線領域の過不足でさえも予測することができる実装設計装置を提供することにある。
【0012】
上記目的を達成するために本発明にかかる実装設計装置は、設計規約として、ビア間の許容最小ピッチ、ビアと箔との許容最小ピッチ、ビアと箔との許容最小間隔、ビアとビアとの許容最小間隔、ピンと箔との許容最小間隔、ビアとピンとの許容最小間隔とを予め記憶する記憶手段と、装着位置を決定すべき部品に取り付けられているピンのうち、ビアへと配線が引き出されるピンを部品辺毎に特定する特定手段と、特定された部品辺のピン間のピン間隔と前記記憶手段に記憶されている前記設計規約の情報とに基づいて、前記特定された部品辺毎に取り付けられているピンからビアへの配線引き出し段数n(nは1以上の整数)を部品辺毎に予測する予測手段と、前記予測手段の出力に基づき、当該部品辺に対する配線領域を算出し、前記部品の部品領域を前記配線領域を含む領域として各部品辺毎に拡大する拡大手段と、前記拡大手段で各部品辺毎に拡大された前記部品領域で、当該部品の基板に対する装着位置を決定する決定手段とを備え、
前記予測手段は、前記ピン間隔が前記ビア間の許容最小ピッチより広い場合は、前記nとして1を出力し、前記ピン間隔が前記ビア間の許容最小ピッチより狭く、かつ、前記ビアと箔との許容最小ピッチより広い場合は、前記nとして2を出力し、前記ピン間隔が前記ビア間の許容最小ピッチより狭く、かつ、前記ビアと箔との許容最小ピッチより狭い場合は、前記nとして前記部品辺毎に特定されたピン数Sを用いた以下の算出式で算出された結果を出力し、
n=(S−1)/2+2 (Sが奇数の時)
n=S/2+2 (Sが偶数の時)
前記拡大手段は、前記予測手段から出力される前記nの値と、以下の式とに基づいて、前記特定されたピンを有する部品辺と前記特定されたピンを有さない部品辺とに対して、それぞれオフセット巾を算出し、対象部品辺毎に配線領域として付加することを特徴としている。
前記特定されたピンを有する部品辺に付与するオフセット巾 = v0+(n−1) * v1
前記特定されたピンを有さない部品辺に付与するオフセット巾 = h1 * (n−2)
v0:ピンからビアまでの間隔の基本長
v1:ビアとビアとの間隔
h1: 1 つの段で配線を折り曲げる長さ
【0014】
【発明の実施の形態】
以下、本発明のプリント基板設計方法及び装置の実施例を図面を用いて説明する。
(第1実施形態)
実装設計装置の実施形態としてCADシステムを一例にして説明を行う。このCADシステムは回路図設計と、回路図設計の設計結果に基づく実装設計を行うもので回路図設計と実装設計とで設計情報を共用している。
【0015】
本CADシステムのハードウェア構成を図1に示す。図1に示すようにCADシステムは、高解像度ディスプレィ1と、記憶装置2と、予測拡大部3と、入力操作部4と、出力部5と、マイクロプロセッサ6とで構成される。
高解像度ディスプレィ1は、実装設計アプリケ−ションプログラムの実行時において実装設計中の基板、部品、配線箔の実寸比を忠実に再現したグラフィックスを表示するCRTディスプレィ、LCDである。これらは記憶装置2に記憶されている設計情報によって相互の実寸比を忠実に再現している。対話編集時には設計者はマウスカーソル等を用いて基板上のレイアウトの変更を行う。
【0016】
記憶装置2は、ギガバイトオーダーの記憶容量を有するハードディスク、光磁気ディスクであり回路図設計を行う回路設計アプリケ−ションプログラムと、当該プログラムの実行時に設計者によって入力された各種設計情報と、実装設計を行う実装設計アプリケ−ションプログラムとを記憶している。
上記回路設計プログラムは本発明の主眼でないので説明を省略する。また実装設計については後述する。ここでは設計情報について詳細に説明する。この設計情報は、以下の1.2.3.・・・・に示す種別の情報を含んでいる。
1.部品情報
部品情報とは回路図上のそれぞれの部品が何という製品名で基板上の装着位置はどこであるかを示す情報である。部品情報の一例を図2(a)に示す。部品情報は、回路図上のそれぞれの部品に設計者が採番した番号である部品番号と(図中のIC1、IC3)、当該部品に相応しい製品の製品名を示す部品名と(図中のMN700)、当該部品の基板上における座標と(図中の(20、100)(35、100))、当該部品の実装面を示す面番号と(図中の”1”、”6”)、当該部品の基準辺が基板の基準辺となす角度(図中の”0゜”、”180゜”)と、その部品のパッケージ種と、その部品の機能がCPUであるか、コネクタであるか等を示す部品種類と、所定のオフセット巾で拡大された部品外形が書き込まれる拡大外形情報とからなる。
【0017】
本図において部品番号IC1の横の並びは、「回路図上の部品IC1は製品MN700が相応しく、その装着位置は面1の(20、100)となる」という内容を示している。部品番号IC3の横の並びは、「回路図上の部品IC3は製品MN700が相応しく、その装着位置は面6の(35、100)であり基準辺と180°の角度をなす。」という内容を示している。尚、部品情報のうち部品番号、部品名、パッケージ種、部品種類は回路設計あるいは実装設計において対話編集モードが実行されることで設定され、どう設定するかは設計者に一任されている。拡大外形情報は予測拡大部3によって書き込まれ、装着座標、面番号、角度は実装設計によって綿密に計算される。
【0018】
各部品情報には図2(a)に一例を示したものの他にも、部品辺情報、配線方法情報といった付随情報がある。図3(a)は、部品辺情報のデータ構造を示す図であり、本図によると、部品辺情報は、自身が付随している部品情報の部品名が与えられている。そして、その部品名の部品の上辺、下辺、右辺、左辺がどの座標から始まり、どの座標で終わるかを示す始点・終点座標が対応づけられている。また各部品辺に何番目のピンが取り付けられているか、取り付けられているピンが存在しないかが記されている。
【0019】
図3(b)は、3つの配線方法情報のデータ構造を示す図であり、本図によると、配線方法情報は、各部品に取り付けられているそれぞれのピンに全配線、引き出し配線、途中配線といった種別を与えている。
全配線とは現在実装が行われている面上に配線箔の配線を行う手法であり通常の配線方法情報は、これに設定されている。
【0020】
引き出し配線とは内層あるいは他面を経由して配線を行うため、ピンから所定長の配線箔を引き出し、引き出した先にビアを打つといった配線手法である。現在実装を行っている面に配線に要する空き領域が確保できず、配線が行えない場合でもこの引き出し配線を行えば配線が可能となる。
途中配線とはジャンパ線を用いて配線箔の配線を行う手法である。
2.部品形状情報
部品形状情報とは実際に実装する部品の形状を表した情報である。部品形状の一例を図2(b)に示す。部品形状情報は、部品に相応しい製品の製品名を示す部品名と、相対座標で表された当該製品の外形と、相対座標で表された端子の外形である端子外形と、当該製品が有する端子数と、各端子の相対位置である相対座標と、これらのピンの間隔を示すピンピッチとからなる。上記の相対座標は、本実施例では各部品の1番端子に最も近い頂点を基準座標にして与えられている。この情報も回路設計あるいは実装設計において対話編集モードが実行されることで入力される。
3.接続情報
接続情報とは端子間の論理的な接続を表す情報である。接続情報の一例を図2(c)に示す。図2(c)に示すように接続情報は、設計者によって回路図上の各配線箔に命名された名称であるネット名と(図中の”A”)、当該配線箔によって接続される端子の情報と(図中のIC1−1、R20−1、IC3−5)からなる。この後者の端子の情報は、当該端子の端子番号と、当該部品に付された部品番号とからなる。図2(c)の図表は、その右側の回路図と対応している。本図において”A”というネット名の配線箔が走り、この配線箔によってIC1の1番端子、IC3の5番端子が接続されている。図2(c)のネット名”A”の横の並びはこの回路図における端子同士の接続を示している。実装設計における部品配置及び配線箔の配線は、この接続情報に基づいて行われる。この情報も回路設計あるいは実装設計において対話編集モードが実行されることで入力され、どう設定するかは設計者に一任されている。
4.配線情報
配線情報とは基板上の配線箔についての情報でありその一例を図2(d)に示す。図2(d)に示すように配線情報は、各配線箔に付された識別子と(図中のID”1”)、当該配線箔が対応しているネット名と(図中の”A”)、当該配線箔が配線された面の識別子と(図中の面”1”)、当該配線箔を構成する構成点の数と(図中の”6”)、その構成点の座標と(図中の(19.103),(24,103),(54,88)・・・・)からなる。尚構成点とは上記形状を構成する点をいう。具体的には配線済みの配線箔が折れ線状になっている場合は、構成点は当該折れ線の端点、節目に相当し、配線済みの配線箔が直線状になっている場合は、構成点は当該直線の始点、終点に相当する。
5.禁止域情報
禁止域情報とは基板上において該当する配置、配線を禁止する領域がどこであるかを表した情報である。禁止域情報の一例を図2(e)に示す。図2(e)に示すように禁止域情報は、各禁止域に付された識別子(図中の”ID1”)、禁止域の存在する面(面”1”)、禁止域の形状を示す基板上の座標からなる。
6.設計基準情報
設計基準情報とは実装設計を行なう際の物理的な制約条件等実装設計の基準を表した情報である。設計基準情報の一例を図3(c)に示す。図3(c)に示すように設計基準情報は、ビア径vialand、配線箔巾fwidth(図中では0.2mm)、ルータが配線するにあたってビア同士の最小間隔をいくらにするかを示す最小ピッチvvpitch(図中では0.3mm)、ビアとピンとの最小間隔をいくらにするかを示す最小ピッチvppitch(図中では0.15mm)、ビアと配線箔との最小間隔をいくらにするかを示す最小距離vfdist、ビアとビアとの最小間隔をいくらにするかを示す最小ピッチvvdistなどを表している。これの情報も回路設計あるいは実装設計において対話編集モードが実行されることで入力される。
【0021】
上記の設計基準情報は、以下の(1)〜(7)に示すようにルータがビア打ち及び配線を行う際に参照される。
(1)第1に引き出し配線すべきピンのためにルータがビア打ちを行う場合、vpdist及びvialandが参照される。即ち図4(a)に示すように、ルータは第1ピンからvpdistを空けて、vialandに示す直径を有するビアを打つ。
【0022】
(2)配線箔の形成においてfwidthは参照される。即ち、ルータは図4(a)に示すようにビアが打たれると、図4(b)に示すように第1ピンからビアへとfwidthの横巾を有する配線箔を形成する。
(3)vvpitchは、第1ピンの引き出し配線を終え、続いて第2ピンの引き出し配線のためにビアを打つ際に参照される。即ち、ルータは部品のピンピッチを読み出し、またvvpitchを読み出して、ピンピッチがvvpitchを上回るかを判定する。
【0023】
(4)上回れば、図4(c)に示すように第1ピンのビアの中心からvvpitchだけ水平方向に隔てた位置にビアを打ち、図4(d)に示すように、打った第1ピンから打ったビアへとfwidthの横巾を有する配線箔を形成する。
(5)vfpitchは(3)の判定時においてピンピッチがvvpitchを下回る狭さの場合ルータによって参照される。即ち、ルータはピンピッチがvvpitchを下回ると判定した場合、vfpitchを読み出してこれがピンピッチを上回るかを判定するのである。
【0024】
(6)vfpitchを上回ると判定した場合、第1ピンのビアの中心から斜め上に向けてvvpitchだけ隔てた位置にビアを打つ
(7)vfpitchを下回ると判定した場合、第1ピンの配線箔を用いるから水平方向にvfpitchだけ隔てた位置の延長線上に図4(g)に示すようにビアを打ち、図4(h)に示すようにこのビアに向けて配線箔を階段状に形成する。
【0025】
記憶装置2に記憶されている情報についての説明はこれまでとし、実装設計装置の各構成についての説明を再開する。
予測拡大部3は、各部品の部品辺において、どのような引き出しパタンが形成されるかを予測し、予測結果に基づいてオフセット巾を部品辺に付与する。ルータが上記の(1)〜(7)からなる手法に基づいて引き出しを行う場合、引き出しが行われる部品辺には、2段引き出しパタンと呼ばれる引き出しパタン、n+2段引き出しパタンと呼ばれる引き出しパタンが表れる。
【0026】
2段引き出しパタンとは、ピン間の間隔が、設計基準情報に規定されているビア打ち間隔を下回る場合に表れる引き出しパタンである。図5(a)はこの引き出しパタンを例示したものであり、本説明図では、部品に取り付けられたピンにおいて、奇数ピンから引き出されたビアは破線b1に揃えられ、図中の偶数ピンから引き出されたビアは破線b2に揃えられる。このように奇数ピン、偶数ピンに対するビア打ちの位置を、破線b1、破線b2のような、2つの平行線に揃えると、ビア間の距離は図5(b)に示す実線k1に示すものから実線k2に示すものへと広がることになる。
【0027】
n+2段引き出し配線とは、ピンと配線箔との間隔が、設計基準情報に規定されているビア−配線箔間隔を下回る場合に表れる引き出しパタンである。ピン間の間隔がビア間隔を下回り、尚且つビア−配線箔の間隔さえも下回る場合、2段引き出しパタンにおける配線箔−ビア間の距離が近づき過ぎて電磁干渉や漏洩が危惧される。この場合ルータは、図5(c)に示すように引き出し辺(引き出し配線される部品辺のことをいう)のうち、中心のピンとなる第mピン(ここでは部品辺には奇数本のピンが取り付けられているものとする。)からの引き出しパタンのみを直線状に形成し、これの両隣に位置する第m-1ピン、第m+1ピンが引き出される引き出しパタンを階段状に形成して、ビアと配線箔との間隔を空ける。更にまた第m-1ピン、第m+1ピンが引き出される引き出し配線が、第m-2ピン、第m+2ピンの引き出し先に打たれるビアと近づき過ぎるのも問題があるため、ルータは第m-2ピン、第m+2ピンから引き出される引き出し配線をも階段状に形成して、ビアと配線箔との間隔を空ける。このように配線箔との間隔を空けると、ビア間の距離は図5(d)の実線k3に示すように、ビアと配線箔との間隔を空けることができる。
【0028】
部品辺から引き出されるピン数が奇数である場合は、中心の引き出し配線以外の引き出し配線を階段状に形成する必要があるので、段数の総数は(S−1)/2+2段となる。
引き出されるピン数Sが偶数である場合は、中心の引き出し配線以外の引き出し配線を階段状に形成する必要があるので、段数の総数はS/2+2段となる。
【0029】
配線領域が広がりに応じて、予測拡大部3が各部品辺から垂直方向及び水平方向にどのようにオフセット巾を追加してゆくかを図5(e)を参照しながら説明する。予測結果が引き出しパタンが一段であれば、部品辺には、先に示した最小ピッチvpdistに等しい基本長v0のオフセットを部品辺に対して垂直方向に付与する。予測された段数が2段であれば、予測拡大部3はこの基本長v0上に更に垂直長v1を加算する。
【0030】
部品辺からの垂直方向に対してだが、一段、二段と予測した場合には、オフセット巾を付与しない。但し予測結果が三段を越えると、部品本体の水平方向に水平長h1のオフセット巾を加算する。
以上のような配線領域の広がりに鑑みて、予測拡大部3は段数がm段の引き出しパタンが表れる場合において、以下の{数式1}に準じた演算により、垂直方向、水平方向に付与するオフセットを算出する。
【0031】
{数式1}
垂直方向に付与するオフセットVoffset = 基本長v0+(m-1)*垂直長v1
水平方向に付与するオフセットHoffset = 水平長h1*(m-2)
段数の予測結果に基づいて、予測拡大部3が部品本体にどれだけのオフセット巾が付与するかを図6(a)〜(f)を参照しながら説明する。
【0032】
図6(a)は1段の引き出しパタンが対向する部品辺に形成されると予測された場合を示している。引き出しパタンの段数が1段であると予測すれば、予測拡大部3はそれぞれの部品辺に対して垂直方向に対して図6(b)に示すように部品本体に対して基本長v0のオフセット巾を与える。また図6(c)に示すように対向する部品辺の引き出しパタンの段数が2段であると予測すれば、予測拡大部3は図6(d)に示すように部品辺に対して垂直方向に基本長v0と垂直長v1とを付与する。
【0033】
図6(e)に示すように、対向する部品辺の引き出しパタンの段数が3段であると予測すれば、予測拡大部3は部品辺に対して垂直方向に基本長v0と、垂直長v1の2倍とを足し合わせる。
3段(1+2段)である場合は、引き出し配線は階段状に形成され、水平方向にも広がるので、部品辺の水平方向に、その引き出し配線の水平部の長さh1を付与する(図6(f)参照)。
【0034】
図7(a)に示すように引き出しパタンの段数が4段であると予測すれば、予測拡大部3は部品辺に対して垂直方向に基本長v0と、垂直長v1の3倍とを付与する。
2本の引き出しが階段状に形成され、これが水平方向に広がるので、予測拡大部3はこの水平方向に対して、その引き出しの水平長h1の2倍に等しい水平長h2を付与する(図7(b))。
【0035】
図7(c)は、4つの部品辺にピンが取り付けられており、それぞれの部品辺から4段の引き出しパタンが形成されている場合を示す。この予測拡大部3は4辺のそれぞれに対して、垂直方向に基本長v0と、垂直長v1の3倍とを付与し、水平方向に対して、その引き出しの水平長h1の2倍に等しい水平長h2を付与する(図7(d)参照)。
【0036】
入力操作部4は、ポインティングデバイス、キーボードを有しポインティングデバイスの操作者の操作に応じて高解像度ディスプレィ1上のマウスカーソルを移動させ、キーボードからのキーパンチを受け付けることで対話編集の入力環境を設計者に提供する。
出力部5は、所定用紙上に設計結果を印刷出力するX−Yプロッタ、高解像度プリンタと、NC工作機械を制御するために実装設計結果をCAMデータに変換するCAMデータコンバータと、LANを介して実装設計結果を他のCADシステムに送信するためのネットワークインターフェイスとからなる。
【0037】
実装設計アプリケ−ションプログラム7は、図8〜図10のフロ−チャ−トの手順を記述した実行形式プログラムであり、図8〜図10のフロ−チャ−トに対応する実行モジュールと、ルータと、これらの実行モジュールを主記憶にロードするための管理テーブルとからなる。実装設計アプリケ−ションプログラム7は、フロッピィディスク、光ディスク、光磁気ディスク等に記録することにより持ち運ばれ、所望のCADシステムにインストールされる。『実行形式』とは一般的に機械語命令で記述されていることを示しているが、アプリケ−ションプログラム7は所定のインタプリタで解釈されるマクロ言語で記述されていてもよい。
【0038】
実装設計アプリケ−ションプログラムのメインフロ−チャ−トを図8に示す。以降、図8のフロ−チャ−トを解読して、マイクロプロセッサ6がどのような処理内容を行うかを順を追って説明する。まずマイクロプロセッサ6は対話編集を行うことにより、配線基板の実装設計に必要な、部品外形、端子位置、端子の信号線名、部品端子間のネットデータ、設計基準、基板データを入力する(S3301)。次に、マイクロプロセッサ6は装着位置を決める順序(配置順序)を決定する(S3302)。部品間の接続関係などをもとに、マイクロプロセッサ6は配線基板上での部品を配置したい位置、配置面を決定する(S3303)。
【0039】
次に、マイクロプロセッサ6は既配置部品との接続端子位置などから部品形状を操作する(S3304)。操作した部品形状で部品の装着位置を決める(S3305)。部品の位置決めが全て終了したら、配置結果に対して、配線基板の設計基準を守りながら、接続する全ての部品端子間の配線経路を決定する(S3306)。
【0040】
最後に実装設計済みの配線基板データとして、部品装着位置、配線基板配線経路情報を出力する(S3307)。なお、実際には配線の微調整や認識文字の追加などのアートワーク処理なども行なうが、本発明の主題と関係ないのでここでは省略する。
上記のメインフロ−チャ−トにおいて更に詳細に説明すべきは、ステップ3304の部品形状操作において、何段の引き出しパタンが形成されるかを予測する手順と、その段数に基づき部品サイズにオフセット巾の増減を行う手順である。これらの手順を図9のフロ−チャ−トに示す。本フロ−チャ−トにおいて、拡大の対象となる全ての部品情報は図11に示すように一列に整列され、それぞれが『拡大済み』であるか、『拡大対象』であるか、『未拡大』であるかを示すタグが付与され、またそれぞれの部品情報が拡大される順番を示す『拡大順序』が付与される。
【0041】
図10のフロ−チャ−トにおいてステップ900では、マイクロプロセッサ6は外形、端子外形、端子位置などを示す部品形状情報を記憶装置2から図示しない主記憶上に読み出す。ステップ901において配線箔巾や、配線箔間の間隔等を示す設計基準情報を記憶装置2から主記憶に読み出し、ステップ902において配線引き出しパターンを示す情報を記憶装置2から主記憶上に読み出す。続いてステップ903ではマイクロプロセッサ6は設計対象群に未拡大の部品情報が存在するかを判定する。もし存在すればこれに付与されている『未拡大』のタグを『拡大対象』に書き換えてステップ9041に移行する。
【0042】
ステップ9041では、拡大対象の部品名を読み出し、ステップ904では、マイクロプロセッサ6は読み出された部品名の部品形状情報からピンピッチを読み出す。更にステップ905において設計基準情報のビアとビアの最小ピッチの値 vvpitch を読み出す。
ステップ906は、ピンピッチpinpitchと、ビア間の最小ピッチvvpitchとの比較ステップであり、ビア間の最小ピッチ vvpitchが広ければ、ステップ907は引き出しパタンが一段であると予測結果を下してステップ914に移行する。
【0043】
ビア間の最小ピッチvvpitchが狭ければ、ステップ908においてビアと配線箔との間の最小ピッチvfpitchを読み出し、ステップ909では、ピンピッチpinpitchがビア箔間最小ピッチ vfpitchより広いかを判定する。もし広い場合は、ステップ910において引き出し配線が二段であると予測結果を下す。
もし狭い場合は、ステップ911において拡大対象の引き出し辺毎のピン総数extpinをカウントする。このステップ911の手順は、図10のフロ−チャ−トで詳細に表現される。図10のフロ−チャ−トにおいてステップ921では、マイクロプロセッサ6は拡大対象の部品名についての配線方法情報を記憶装置2から読み出し、ステップ922では、マイクロプロセッサ6は読み出された配線方法情報のうち、配線方法が『引き出し配線』と規定されているピンを全て検出する。ステップ923においてマイクロプロセッサ6は、配線方法情報が引き出し配線と規定されているピンが取り付けられている部品辺毎に引き出し配線されるピン数を集計して、集計値extpinを算出する。このようにして集計値extpinを算出すると、図10のフロ−チャ−トから図9のフロ−チャ−トへと戻り、ステップ912においてマイクロプロセッサ6はextpin/2 以下の最大整数 n を算出する。ステップ913において、その引き出し辺にはn+2段での引き出しパターンが表れると予測結果を下す。以上のステップ906〜ステップ913が実行されることにより、引き出し配線が行われる際の段数が予測されることがわかる。
【0044】
ステップ914では、予測された引き出し段数では、予測拡大部3に配線領域が水平方向及び垂直方向にどれだけ広がるかを算出させる。そして、部品形状情報の外形座標のうち、引き出し配線の始点・終点に相当するものに垂直長Voffset,水平長Hoffsetを付加する。
ここで外形座標が(x0,y0)(x1,y0)(x0,y1)(x1,y1)であり、引き出し辺は座標(x0,y0)(x1,y0)を始点・終点としているものとする。この場合本ステップでは、以下の{数式2}のような演算により拡大外形を算出し、算出結果を拡大対象の拡大外形情報として書き込む。
【0045】
{数式2}
(x0-Hoffset,y0-Voffset)(x1+Hoffset,y0-Voffset)(x0,y1)(x1,y1)
以上のように本実施形態によれば、ルータのクリアランス確保により引き出しパタンが何段に形成されるかを予測拡大部3は予測してこれに応じた大きさに部品を拡大するので、各部品を配線領域の広がりに適切な大きさに拡大することができる。この段数の予測は部品の装着座標を必要としないので、部品の位置決めを行わずとも、配線領域を予め予測しておくことができる。
【0046】
尚配線箔間の間隔、ビアと配線箔間の間隔等の値を用いてより詳細にオフセット値を算出してもよい。
(第2実施形態)
第2実施形態は、部品−基板の面積比が所定率を越えるまで、部品のオフセット巾をそれ固有の特性に応じて変化させるという可変オフセット付与を行う構成である。
【0047】
この可変オフセット付与を実現するため、第2実施形態では図12(a)に示すオフセット巾拡大の終了基準と、図12(b)に示すオフセット拡大方法とを記憶装置2に記憶させている。
前者のオフセット拡大終了基準は、基板設計における配置密度の目標値であり図12(a)の一例では八割が目標値として設定されている。尚オフセット終了基準については、配置密度だけでなく、各部品に対しての拡大の限界値等を用いてもよい。
【0048】
後者のオフセット拡大方法とは、図12(b)にその一例を示すように、部品全般の特性を複数項目に分類し、個々の項目に必須となるオフセット巾とを対応づける情報であり、個々の部品の特性から一意にオフセット巾を選ぶために用いられる。拡大巾については、直接指定するだけでなく、第1実施形態で説明した配線引き出しパターンの1段分の値等を用いてもよい。
【0049】
例えば特性の1つとして図12(b)に示されているパッケージ種別について着目すると、QFP(クッド フラッド アレイ)、PGA(ピン グリッド アレイ)、SOA、DIP等の種別があり、付与すべきオフセット巾の大きさは、これらの種別によって大きく変化する。QFPとPGAの形状の一例を図16(a)に示す。
【0050】
図16(a)に示す部品1301(部品番号1301)はQFPであり、パッケージの四側面の全てからL字状の格子状に取り付けられている。これに対して図16に示す部品1302はPGAであり、底面から格子状に40本ものピンが取り付けられている。
これらのパッケージの違いを考慮して拡大方法情報には、図13(b)の一例に示すようにPGAに対して他の種別のオフセット巾より一段と長い1.0mmを与えている。このように種別PGAの部品に1.0mmのオフセット巾を与えると、種別がPGAの部品は、他の部品に比べて一段と大きく拡大される。
【0051】
またオフセット拡大方法では、パッケージ種のみならず、次元の違う特性を何種類も設けている。パッケージ種に対して次元の違う特性とは、機能種、部品名、部品形状の大きさ、ピン本数等である。このように次元の違う特性を何種類も設けているのは、一種類の部品条件のみでオフセット巾が偏って評価されることを防止するためである。
【0052】
部品情報においては、オフセット巾の検索を部品条件別に行うため、それぞれの部品条件に対応する特性がそれぞれ何処に記述してあるかが予め定められている。図13(a)(b)は、部品情報、形状情報において、どこを手掛かりにして特性を判定するかを示している。ここで部品情報内のパッケージ種は、第1分類の部品条件を検索するのに用いられるから第1特性欄と指示し、部品情報内の部品種類は、第1分類の部品条件を検索するのに用いられるから第2特性欄と指示している。
【0053】
第2実施形態におけるCADシステムの構成を図14に示す。本図を参照すれば第1実施形態に示した予測拡大部3が削除されている。これは本実施形態は引き出しパタンの段数からオフセット巾を付与するのではなく、部品の特性という別の角度から部品のオフセット巾を算出しているからである。また第1実施形態では、オフセット巾を引き出される部品辺に付与させていたが、第2実施形態は、部品条件におけるオフセット巾を、全ての部品辺に付与する。
【0054】
これらの差違点に鑑み、第1実施形態に示した図8のフロ−チャ−トにおけるステップ3304、ステップ3305の手順が、第2実施形態では、図15に示すフロ−チャ−トで実現される。
本フロ−チャ−トにおいて先ずステップ116では、マイクロプロセッサ6は拡大の対象となる部品情報を設計対象群として整列し、ステップ114においてマイクロプロセッサ6は、設計対象群に属する部品が占める面積の集計をとり面積集計値Mを計算する。
【0055】
ステップ101は、ステップ102〜ステップ112からなるループ処理の始めを示す制御文であり、マイクロプロセッサ6はステップ116において整列された設計対象群内で未拡大のタグが付されている部品情報の先頭のものを取り出し、これのタグを拡大対象に書き換える。このようなタグの書き換えにより設定された拡大対象は、ステップ102〜ステップ112からなる処理によって拡大される訳であるが、このステップ102〜ステップ112の処理は機能的に見ると、ステップ102〜ステップ106の手順と、ステップ107〜ステップ109の手順と、ステップ110〜ステップ112の手順と、ステップ110〜ステップ112の手順に分割される点は注目すべきである。
【0056】
このように分割されるのは、ステップ102〜ステップ106の手順は、拡大対象により部品情報を検索する検索手順であり、ステップ107〜ステップ109の手順は、拡大対象を拡大し、これと配置終了基準との比較を行う拡大手順だからである。そして、ステップ110〜ステップ112は、上記における拡大対象の拡大で、基板上の密度が終了基準を満たしたかを判定するための手順である。
【0057】
ステップ102〜ステップ106の手順を更に詳しく説明すると、ステップ102では、マイクロプロセッサ6は変数iに数値1を設定し、ステップ103では、マイクロプロセッサ6はその変数iの設定値で指示される拡大対象の第i特性欄の記入内容を読み出す。ステップ104において、読み出された部品条件の第i分類の項目に記入内容と該当する項目が存在するかを判定し、もし存在しなければ検索対象を他の部品条件に切り換えるため、ステップ106においてマイクロプロセッサ6は変数iを1加算する。もし該当する項目が存在しても、既に検索されている部品条件が重複して検索されるのは思わしくないので、ステップ105においてその項目が一度検索されているかを判定し、もし一度検索されていたならばステップ106に移行して、検索対象を他の部品条件に切り換えるため、ステップ106において、変数iに『1』を加算する。以上のステップ103〜ステップ106の手順を、拡大対象に該当する部品条件が探し出されるまで何度も繰り返す。
【0058】
続いてステップ107〜ステップ109の手順について説明する。ステップ107に移行してくるのは、拡大対象の特性欄に該当する部品条件が探し出された場合である。ステップ107ではその探し出された部品条件に該当する項目に付随しているオフセット巾を読み出し、ステップ108において読み出されたオフセット巾だけ、部品の外寸を拡大し、部品情報に付与されているタグを『拡大済み』に書き換える。
【0059】
ここで図16(a)に示した部品1301が拡大対象である場合、部品1301の外形座標(x0,y0)(x1,y0)(x0,y1)(x1,y1)を読み出す。一方部品1301のパッケージ種がQFPであることから、部品条件情報から0.508mmのオフセット巾が読み出す。ステップ108では、読み出された外形座標を
(x0-0.508mm,y0-0.508mm) (x1+0.508mm,y0-0.508mm)
(x0-0.508mm,y1+0.508mm) (x1+0.508mm,y1+0.508mm)
と更新することにより、図16(c)に示すように部品1301を拡大する。
【0060】
また図16(b)に示したパッケージ種がPGAである部品1302(部品番号IC1302)が拡大対象である場合、部品1302の外形座標(x0,y0)(x1,y0)(x0,y1)(x1,y1)を読み出す。一方部品1302のパッケージ種がPGAであることから、部品条件から1.0mmのオフセット巾が読み出されている。ステップ108では、読み出された外形座標を
(x0-1.0mm,y0-1.0mm) (x1+1.0mm,y0-1.0mm)
(x0-1.0mm,y1+1.0mm) (x1+1.0mm,y1+1.0mm)
と更新することにより、図16(d)に示すように部品1302を拡大する。
【0061】
拡大後、ステップ109において部品面積の拡大分を算出する。
以上がステップ107〜ステップ109の手順である。これらの手順により、一個の拡大対象が特性欄に付随したオフセット巾だけ拡大されると、ステップ110において面積集計値Mにステップ109で算出された拡大量を加算する。このようにして集計値が加算されるとステップ111では、面積集計値Mと、基板面積Kとの比率を算出する。ここで算出される比率には、上記の拡大対象の拡大により、基板上の密度はどれだけ高まったかが反映されており、これがステップ112において終了判定基準と比較される。
【0062】
終了判定基準に満たない場合はステップ113に移行する。ステップ113は、ループ処理の終わりを示す制御文であり、ここに移行してくると、設計対象群において未だ部品が残っているかを参照し、もし残っていればこれを拡大対象として選んで再度ステップ101に戻る。ステップ101へと戻ると、次の拡大対象に対するステップ102〜ステップ112の処理が行われる。
【0063】
以上の説明から判ることは、ステップ111において算出された部品面積の集計値と基板面積との比率が設計者が定めた終了判定基準に満たない場合は、ステップ113に移行しつづけ、次の拡大対象を選ぶようステップ102〜ステップ112の処理を繰り返させることである。このようにステップ102〜ステップ112が繰り返し行われると、次々と部品の拡大が行われる。
【0064】
このように部品条件に応じたオフセット巾が与えられると、ステップ111において計算される面積集計値と基板面積との比率は次第に高まってゆく。ステップ102〜ステップ112の処理が何度も繰り返され、設計対象群に含まれる全ての部品が拡大対象として取り出されると、ステップ113において残り部品が無くなったことが検出され、ステップ113からステップ115へと移行する。ステップ115に移行した段階では、設計対象群に含まれる部品は全てが拡大されている訳だが、ステップ115では、各部品の一層の拡大を図るべく、これらの部品情報に付与されているタグを『拡大済み』から『未拡大』に書き換えることにより設計対象群として再整列してステップ101に移行する。
【0065】
部品1301に対してステップ102〜ステップ112が繰り返し行われると、図17(a)に示すように、パッケージ種に基づくオフセット巾が与えられた破線y1301の形状に部品種類に基づく拡大巾y1311と、部品形状に基づく拡大巾y1321とが加わる。
一方部品1302に対してステップ102〜ステップ112が繰り返し行われると、図17(b)に示すようにパッケージ種に基づくオフセット巾が与えられた破線y1302の形状に、部品種類に基づく拡大巾y1312と、部品形状に基づく拡大巾y1322とが加わる。
【0066】
このようにステップ102〜ステップ112の処理が、ステップ101、ステップ113からなるループ制御文により何度も繰り返されると、ステップ111にて算出される面積比が終了判定基準を越える。終了判定基準を越えるとステップ114に移行し、オフセット巾だけ外寸が拡大された状態で、各部品の装着位置を重心法等の配置アルゴリズムを用いることにより決定する。
【0067】
以上のように本実施形態によれば、各部品の特性が部品条件に含まれる項目と一致するとその部品の拡大を行い、一個の部品の拡大時にこれと基板との面積比較を行うので、配置密度の限界を越えるぎりぎりまで、各部品の特性に応じて個々の部品を拡大してゆくことができる。この拡大では、部品を一旦近接配置することは無いから周囲を押しのけるように拡大してゆく第2従来技術と比較すると、オフセット巾の付与が非常に着実である。限界を越えた段階で初めて各部品の位置決めを行うので、各部品はなるたけ大きめに拡大されるという効果がある。
【0068】
(第3実施形態)
第3実施形態は、第2実施形態を一部改良した構成である。第2実施形態を何処を改良したかというと第2実施形態は、何れかのオフセット拡大方法に合致するものを順次拡大してゆくのみで、拡大対象の選択に規則性が無いという点である。このように拡大対象の選択に規則性が無いと、さほどオフセット付与の必然性が薄い部品に先にオフセット巾が付与されたために、後で選択される部品のオフセット巾が切り詰められるという現象が表れる。
【0069】
このような現象の回避するため、第3実施形態ではオフセット拡大方法のそれぞれに優先度を与えることにより、拡大対象部品選択に規則性を与えている。図18は、(1)〜(9)という優先度が付与されたオフセット拡大方法の一例である。これらのオフセット拡大方法のうち、形状について着目すると、優先度は(1)PGA、(2)QFP、(5)SOP、(6)DIPの順で高い。
【0070】
また優先度(3)、(4)の部品としては、コネクタータイプ、CPUのものが列挙されており、PGA、QFPに次いで高い優先度は与えられている。
ここで示した優先度は一例であり、優先度の順序を入れ換えてもよいし、新たな条件を付け加えてもよい。
内部構成面では、第2実施形態と同様、本実施形態においても第1実施形態に示した予測拡大部3が削除されている。また第1実施形態では、オフセット巾を引き出される部品辺に付与させていたが、第3実施形態は、部品条件におけるオフセット巾を、全ての部品辺に付与する。
【0071】
これらの差違点に鑑み、第1実施形態に示した図8のフロ−チャ−トにおけるステップ3304の手順が、第3実施形態では、図19に示すフロ−チャ−トで実現される。
ステップ201において拡大の対象となる部品を設計対象群として整列する。ステップ202は、ステップ203〜ステップ208からなるループ処理の始めを示す制御文であり、ステップ201において整列された設計対象群において『未拡大』のタグが付与されている部品情報のうち先頭のものを取り出し、これに付与されているタグを『拡大対象』に書き換える。
【0072】
ステップ203において変数iを1に初期化し、ステップ204において拡大対象の第1特性欄の記入内容を読み出す。ステップ205では、部品条件の分類内に、特性欄の記入内容と該当する項目が存在するかを判定する。該当項目が存在するならば、ステップ206においてその該当項目に付与されている優先度を読み出し、ステップ207において読み出された優先度を拡大対象に付与する。付与後、ステップ208において変数iが上限を越えたかをチェックし、越えてなければステップ209において変数iを1だけインクリメントして『2』に増加させた後にステップ204に移行する。ステップ204において拡大対象の第2特性欄の記入内容を読み出す。読み出し後、変数iが『1』の場合と同様に、ステップ205において部品条件の第2分類内に記入内容と該当する項目が存在するかを判定する。
【0073】
変数iが上限を越えるまでステップ204〜ステップ208の処理を繰り返し行うことにより、部品条件において各項目に対応づけられている優先度が拡大対象に付与されてゆく。例えば、パッケージ種がPGAタイプでピン本数が36ピンのCPUであれば、パッケージ種がPGAであることにより優先度『1』が付与され、CPUであることにより優先度『4』が付与される。ピン本数が36ピンであることにより、優先度『9』が付与される。
【0074】
変数iが上限を越えると、ステップ210に移行して、設計対象群に『未拡大』の部品が残っているかを判定する。残っていればステップ202に移行し、その残っている部品のうち先頭に位置する未拡大のものを取り出してこれを拡大対象として設定する。
設定後ステップ203〜ステップ208の処理をその新たな拡大対象に対して行わせ、拡大対象が有する全ての特性に応じた優先度をその拡大対象に付与させる。
【0075】
ステップ203〜ステップ208の処理が全ての設計対象群に対して行われると、残っている部品が無くなり、ステップ210からステップ211への移行が行われる。ステップ211に移行すると、部品毎に付与された優先度の集計をとる。ここで、パッケージ種がPGAタイプでピン本数が36ピンのCPUであれば、パッケージ種がPGAであることにより付与された優先度『1』と、CPUであることにより付与された優先度『4』と、ピン本数が36ピンであることにより付与された優先度『9』とが集計されて、集計結果『14』が得られる。
【0076】
同様の集計を各部品について行うと、その集計結果の高低を比較し、この高低によって各部品の拡大順序を作成する。
拡大順序を作成すると、ステップ212において第2実施形態で示した図15のフロ−チャ−ト(このフロ−チャ−トにより実現されるモジュールを以下拡大ルーチンと呼ぶ。)をサブルーチンコールする。このコール時に引数として各部品の拡大順序を引き渡す。コールされた側の拡大ルーチンは、ステップ212において引き渡された拡大順序に従って、部品を整列させて設計対象群を生成する。このように拡大順序に従った順序で設計対象群を生成すると、ステップ101〜ステップ113でなされるループ処理は、ステップ211において各部品に付与された順序で行われる。この順序は、優先度の集計結果に基づくものであるから、高い優先度が付与された項目と合致する特性を多く持つ部品程、早い順番で拡大される。
【0077】
以上のように本実施形態によれば、高い優先度が付与された項目と合致する特性を多く持つ部品を早い順番でオフセット巾を与え、そうでない部品に遅い順番でオフセット巾を与える。このように優先度に応じた順番でオフセット巾を与えて拡大するので、オフセット巾付与の必然性が薄い部品に先にオフセット巾が付与されたために、後で選択される部品のオフセット巾が切り詰められるという現象を回避することができる。
【0078】
(第4実施形態)
第4実施形態は、配置対象の装着位置を決める時点においてその配置対象の装着位置が、配置済みの部品が占める位置に対してどこまで近づいて良いかを規定するオフセット巾付与技術に関する。
どのような部品が配置済みでありどのような部品が配置対象になってもそれらの組み合わせを全て網羅するよう、第4実施形態ではあらゆる2つの部品の組み合わせ毎に対応づけてオフセット巾を定めている。
【0079】
第4実施形態において記憶装置2は、図20に示すような形式で部品対部品オフセットを記憶している。このように記憶しておくと、例えば部品2101、2102が配置済みであり、部品2103が配置対象部品となる場合、配置対象の装着位置は、部品2101の装着位置から1.27mm以内に立ち入ることは許されず、部品2102の装着位置から5.08mm以内に立ち入ることは許されない。
【0080】
また部品2101、2102、2103が配置済みであり、部品2106が配置対象部品となる場合、配置対象の装着位置は、部品2101の装着位置から1.27mm以内に立ち入ることは許されず、部品2102の装着位置から2.54mm以内に立ち入ることは許されない。また部品2103の装着位置から0.508mm以内に立ち入ることは許されない。
【0081】
これを部品2102について注目すると、部品2103とのオフセット巾に5.08mmをとっているので、部品2103の装着位置との間には最短でも5.08mmの間隔が空けられるのに対して、部品2104とのオフセット巾に1.27mmをとっているので、部品2104の装着位置との間には最短でも1.27mmの間隔が空けられる。
【0082】
内部構成面では、第1実施形態に示した予測拡大部3が削除されている。また第1実施形態では、オフセット巾を引き出される部品辺に付与させていたが、第4実施形態は、部品条件におけるオフセット巾を、全ての部品辺に付与する。
これらの差違点に鑑み、第1実施形態に示した図8のフロ−チャ−トにおけるステップ3304、ステップ3305の手順が、第4実施形態では、図22に示すフロ−チャ−トで実現される。
【0083】
図22のフロ−チャ−トにおいてステップ301では、位置決めの対象となる全ての部品を設計対象群として整列する。これにより位置決めの対象となる部品情報は図18に示すように一列に整列され、それぞれに『配置済み』であるか、『配置対象』であるか、『未配置』であるかを示すタグが付与される。またそれぞれの部品情報が位置決めされる順番を示す『配置順序』も付与される。
【0084】
ステップ302では、設計対象群のうち未配置のタグが付与されている部品情報の先頭のものを取り出して、これのタグを『配置対象』に書き換える。
この書き換えにより配置対象を設定すると、ステップ303において設計対象群の順番を逆方向に遡って、装着座標、実装面番号、装着角度が記入済みである部品情報を検索する。これらが記入済みである部品情報とは配置済み部品である。ここで図21に示すように部品2101〜2104が基板上に配置済みで、部品2105〜部品2113が未配置であり、部品2105がこれから配置されようとしている状態を想定する。この状態では、記憶装置2に記憶されている部品情報は、部品2101〜2104のみが装着座標、実装面番号、装着角度が記入済みであり、それ以外の部品である部品2106〜2113は装着座標、実装面番号、装着角度が未記入である。ステップ303の検索では、部品2101〜2104が読み出される。部品2101〜2104の部品情報に記入されている内容通りに、部品2101〜2104を基板上に配置すると、図23(a)のように表現される。
【0085】
ステップ304では、検索された配置済み部品を整列し、その先頭のものを取り出す。ステップ305においてその取り出された配置済み部品の部品番号uを読み出す一方で、ステップ306において配置対象の部品番号vを読み出す。配置済み部品、配置対象の両者の部品情報から部品番号が読み出されると、ステップ307において部品対部品オフセットにおけるu行v列のオフセット巾を読み出し(図23(b)参照)、ステップ308において部品番号uの部品情報の外寸を、読み出されたオフセット巾だけ拡大する。
【0086】
部品2101〜2104が配置済みである状態では、ステップ304〜ステップ309の処理が繰り返し実行されることにより、配置対象部品2105を一方に含む部品対部品オフセットが全て読み出される。一回目の実行により、配置済み部品2101−配置対象部品2105間のオフセット巾5.08mmが読み出され、二回目の実行により、配置済み部品2102−配置対象部品2105間のオフセット巾2.54mmが読み出される。三回目の実行により、配置済み部品2103−配置対象部品2105間のオフセット巾2.54mmが読み出され、四回目の実行により、配置済み部品2104−配置対象部品2105間のオフセット巾5.08mmが読み出される。これらがステップ307において読み出される度に、ステップ308において各配置済み部品の外寸は、読み出されたオフセット巾だけ拡大される訳だから、図23(c)に示すように、部品2101〜部品2104が占める領域は実線のものから破線のものへと四方に拡大することとなる。
【0087】
ここで、部品2102〜部品2104のオフセット巾は2.54mmであるのに対して、部品2101のオフセット巾は5.08mmであるから、部品2101を含む破線の広がりは、部品2101〜部品2104を含むそれと比較して2倍の大きさを有することがわかる。部品2105の装着位置はこの破線に示す領域内には立ち入れない訳であるが、部品2101の破線の広がりは、他の部品のそれと比較して2倍の大きさを有するので、部品2101−部品2105の間隔は、他の部品との間隔に比較して、2倍の長さになることが保証される。
【0088】
拡大されると、ステップ310において外寸が拡大された部品が占める領域を避けるように配置対象の装着位置を決定する。図23(d)は、破線で示されたオフセット値を守って部品2105が基板上に配置された状態を示す。続くステップ311で設計対象群として残っている部品があればステップ311に移行し、残っている部品が無ければフロ−チャ−トの処理を終了する。
【0089】
以上のように本実施形態によれば、配置対象の位置決めの際に配置済み部品とどれだけの距離をおかなければならないかを、全ての部品の組み合わせについて決定するので、ある部品の組み合わせはその間隔を広目にし、別の部品の組み合わせはその間隔を狭目にするという部品同士の相性に併せた間隔を規定することができる。
【0090】
(第5実施形態)
第5実施形態は、各部品が有する特性に応じたオフセット巾を付与しつつも、より一層の高密度化を求めるために接続関係にある部品間についてはより短いオフセット巾を付与しようという技術である。
接続関係にある部品間には部品間最小ピッチが付与される。ここで部品間最小ピッチとは、設計基準情報に含まれる情報の1つであり、部品の装着位置の最小ピッチを規定する情報である。
【0091】
図24は部品間最小ピッチの一例を示すものであり、部品形状情報に付された部品番号のペアと、そのペア間のピッチ長とを対応づけている。このような対応づけにより、それらの部品番号が付された部品間は、最低そのピッチ長だけ間隔が空くよう規定している。図24の一例では、部品番号IC2401,R2402の部品間に0.508mmの間隔を空け、部品番号IC2401,R2403の部品間には、0.508mmの間隔を空けるよう、規定がなされる。
【0092】
内部構成面では、第1実施形態に示した予測拡大部3が削除されている。また第1実施形態では、オフセット巾を引き出される部品辺に付与させていたが、第5実施形態は、部品条件におけるオフセット巾を、全ての部品辺に付与する。
これらの差違点に鑑み、第1実施形態に示した図8のフロ−チャ−トにおけるステップ3304、ステップ3305の手順が、第5実施形態では、図25に示すフロ−チャ−トで実現される。
【0093】
本図においてステップ401は第2実施形態の図15の拡大ルーチンをサブルーチンコールする呼出ステップである。この呼出により、第2実施形態に示したように、部品条件に基づいて各部品の特性を解析する。
ここで図26に示されている部品2401(部品番号IC2401)は、図29(a)に示すように部品2401は四辺にピンが取り付けられているQFPであり、ピンの総数が12本である。このような特性が解析されて、この解析に応じたオフセット巾が与えられる。
【0094】
パッケージ種がQFPである部品2401が拡大対象である場合、このQFPは部品条件において高いオフセット巾が設定されているから、部品2401には、割と大きめのオフセット巾が与えられる。図26における部品2401を囲む破線の矩形は、拡大後の部品2401の形状を示している。
部品条件に応じて終了基準を満たすまで部品拡大が行われると、位置決めすべき複数部品は部品2401と同様に自身が満たす部品条件に対応するオフセット巾だけ、終了基準を満たすまで拡大されてゆく。
【0095】
拡大処理が終了基準を満たすと、ステップ402では、記憶装置2から主記憶へと回路設計時に作成された全接続情報を読み出す。
ステップ403では、接続情報に含まれる部品番号を全て読み出す。ここでステップ402において、図27(a)に示すような4つの接続情報が読み出されたものとする。読み出された接続情報には、部品2401の部品番号(IC2401)と、表面実装チップ部品である部品2402〜部品2405の部品番号(R2402〜R2405)とが含まれているものとする。
【0096】
ステップ404では、設計基準からこれらの部品番号を共に含んでいる部品間最小ピッチを読み出す。図24には、IC2401−R2402間の最小ピッチ、IC2401−R2403間の最小ピッチ、IC2401−R2404間の最小ピッチ、IC2401−R2405間の最小ピッチが含まれているので、これらが読み出される。
読み出し後、ステップ405において読み出された最小ピッチを、部品番号2401、2402が含まれていた接続情報に付与し、記憶装置2に蓄積する。付与後の接続情報を図27(b)に示す。
【0097】
この作業を全ての接続情報について繰り返して、部品間最小ピッチが付与された接続情報が記憶装置2に蓄積される。
接続情報に部品間最小ピッチが付与されるとステップ407において位置決めの対象となる全ての部品情報を設計対象群として整列する。
図28に示す部品情報群が対象である場合の動作を想定して以降の説明を行う。ステップ408において設計対象群として整列してある部品のうち、先頭に位置する未配置のタグが付与されているものを取り出して、これを配置対象として設定する。設定後ステップ409では、配置対象の接続相手となる配置済み部品の部品番号を探索する。この探索は、配置対象の部品番号を含んでいる接続情報を記憶装置2から全て読み出し、各接続情報に含まれる部品番号のうち配置対象と異なる他方の部品番号を取り出して、その部品番号を有する部品情報の装着座標、実装面番号、装着角度が記入済みであるかを判定することにより行われる。図29(a)に示すように、部品2402、部品2411〜部品2416の装着位置が既に決まっている状態において破線に示す設計対象群のうち先頭に位置している部品2402が配置対象に選ばれたものとする。部品2402に対してステップ409の処理が行われると、部品2402の接続相手となる部品として部品2401が探索される。
【0098】
ステップ410は先の探索で得られた配置済み部品を1つずつ取り出して、これを対象にしたループ処理を制御する制御文である。先ずステップ411では、取り出された配置済み部品の部品番号と、配置対象の部品番号と含む部品間最小ピッチ付き接続情報を読み出す。先に述べたように配置対象及び配置済み部品の大きさは、拡大ルーチンにおいて部品条件に応じて既に拡大されている訳であるが、これに代えて先に読み出された部品間最小ピッチを付与するよう、ステップ413では一旦配置対象及び配置済み部品の大きさを拡大前の大きさに戻す。部品2401の一例でゆうと、図26で破線に示した形状から実線で示した形状への復帰が行われることになる。ステップ414では、配置済み部品を読み出された部品間最小ピッチだけ拡大する。これは部品条件に基づいた拡大巾から部品間最小ピッチの拡大巾への更新を意味する。ステップ415では、同様の更新を次の配置済み部品に対しても行うよう、ステップ410に移行する。
【0099】
以上の処理により配置対象と接続関係にある配置済み部品は、その拡大巾が最小ピッチ分のみに更新されたが、接続関係の無い配置済み部品は部品条件に基づく大きさで拡大されたままである。この状態で重心法を用いて、配置対象の装着位置を決定する。重心法では、接続相手のピンとの間に張力が働くと仮定して、これがつりあうような装着位置を算出しようとする。この際、重心法により配置済み部品本体から最小ピンピッチ以遠であって、このピンになるべく近い装着位置が算出される。算出後、配置済み部品を、拡大ルーチンによって拡大された状態に戻す。
【0100】
配置対象が部品2402である場合(図29(a)参照)、接続相手となる部品2401本体から最小ピンピッチ以遠であって、この部品2401になるべく近い装着位置が算出される(図29(b)参照)。
配置対象が部品2403である場合、これらは部品2401を接続相手としているので、部品2403の装着位置は部品2401本体から最小ピンピッチ以遠であって、この部品2401になるべく近い装着位置が算出される(図29(c)参照)。
【0101】
配置対象が部品2404である場合、これらは部品2401を接続相手としているので、部品2404の装着位置は部品2401本体から最小ピンピッチ以遠であって、この部品2401になるべく近い装着位置が算出される(図29(d)参照)。
配置対象が部品2405である場合、これらは部品2401を接続相手としているので、部品2405の装着位置は部品2401本体から最小ピンピッチ以遠であって、この部品2401になるべく近い装着位置が算出される(図29(e)参照)。
【0102】
以上は部品2401を接続相手とした部品の距離であるが、部品2401を接続相手としない部品2406(図29(f)において部品番号IC2406が付された部品のことである。)が配置対象となる場合について続いて説明を行う。
部品2406が配置対象になっている場合は、ステップ409における配置済み部品の検索において部品2401が検索されないため、部品2401はステップ410〜ステップ415からなるループ処理においてオフセット巾の更新がなされない。
【0103】
従ってステップ416における装着位置決定時には、ステップ401の拡大ルーチンにて拡大された状態のままで基板上の領域を占めている。この際、重心法により配置済み部品2401本体からステップ401で付与されたオフセット巾以遠であって、このピンになるべく近い装着位置が算出される(図29(f)参照)。
【0104】
図29(d)における破線h2401は部品2402〜部品2405が配置対象になった際の配置済み部品の大きさを示し、破線h2402は部品2406が配置対象になった際の配置済み部品の大きさを示す。破線h2402は破線h2401と比較して極めて小さいから、部品2402〜部品2405は部品2401を接続相手とするため、部品2401と非常に近接した位置に装着位置が決定されることがわかる。部品2406は部品2401を接続相手としないため、部品2402〜部品2405と比較して、部品2401とかなりの間隔を空けて装着位置が決定されることがわかる。
【0105】
以上のように本実施形態によれば、接続関係にある部品間のオフセット巾をそれらの部品間の最小ピッチに定め、そうでない部品には、部品条件に基づいて付与されたオフセット巾を用いるので、接続関係の有無に応じて部品間間隔の広い狭いを切り換えることができる。接続関係にある部品間はなるたけ近づいた装着位置が決定されるので、ルータによる配線の際に、それらの部品間の配線を短めにできるという効果がある。
【0106】
(第6実施形態)
第6実施形態は、部品と配線箔との間隔を適正に保ちながら基板上のレイアウトを構築してゆく構成である。
『間隔の適正値』は、ネット対部品オフセットとして記憶装置2に記憶されている。ネット対部品オフセットとは、複数の接続情報と複数の部品との組み合わせ毎にその組み合わせについてのオフセット巾の必要長を定めた情報であり、そのデータ構造を図32に示す。
【0107】
第6実施形態では、個々の配置対象部品の配置位置を決まれば、その都度、配置対象部品が有する端子と、既に基板上に配置済みの編集が有する端子との間を配線するという部品配置−配線を交互に行う構成になっている。このように、部品配置−配線を交互に行う構成のため、第6実施形態では、第1実施形態に示した図8のフロ−チャ−トにおけるステップ3304、ステップ3305、ステップ3306の手順が、第6実施形態では、図30に示すフロ−チャ−トで実現される。
【0108】
ステップ501では、位置決めの対象となる全ての部品情報と、配線の対象となる全ての配線情報を設計対象群として整列する。ここで、配線の対象となる部品情報は図31(a)に示すように一例に配列され、配線情報も図31(b)に示すように一列に整列される。整列された配線情報には、それぞれが『配線済み』であるか、『配線対象』であるか、『未配線』であるかを示すタグが付与されており、またそれぞれの部品情報が配線される順番を示す『配線順序』も付与されている。図31(b)において各配線情報はネット名を有する。これらのネット名は、図31(c)に示す接続情報においてネット名に属するピンと対応づけられている。
【0109】
ステップ502において設計対象群として整列してある部品情報のうち、先頭に位置する未配置のタグが付与されているものを取り出して、これを配置対象として設定する。ここで部品情報の配列が図31(a)の通りだとすると、部品番号2803の部品情報が読み出され、ステップ502において配置対象の部品情報に含まれる部品番号qを読み出す。
【0110】
ステップ503において設計対象群に含まれる配線情報のうち、構成点数・構成点座標が記入済みであるもの(これは配線済みであることを示す)を検索する。この検索が図31(b)の配線情報群に対して行われると、装着面、構成点数、構成点座標が記入済みである配線情報として、ネット名A1〜A4の配線情報が読み出される。
【0111】
ステップ505は、検索された全ての配線情報について繰り返すループ文の始めを示し、ステップ506において配線情報に含まれるネット名A1を読み出し、ステップ507においてネット名A1と部品2803とのネット対部品オフセットを読み出す。
ステップ508では、設計基準に記載されている箔巾と読み出されたオフセット巾とを足し合わせた横巾を有する領域(拡大配線領域)を検索されたネット名A1の配線情報に含まれる構成点座標間に形成する。ここでネット名A1の配線情報に(X0,Y0)(X1,Y1)なる構成点が含まれており、設計基準情報に箔巾wが含まれている場合、これらの構成点間には、図33(a)に示すような箔巾wからなる配線領域が形成される訳であるが、これにネット対部品オフセットを足し合わせると、図33(b)に示すような拡大配線領域が形成される。ステップ509では、形成された拡大配線領域を禁止域情報として記憶装置2に書き込み、ステップ510では、以上のステップ506〜ステップ509の処理をステップ504において 検索された全ての配線情報について繰り返すよう、ステップ505に移行する。
【0112】
ステップ505〜ステップ510が繰り返し行われると、部品2801−部品2802の第3ピン間に図34(b)に示すような拡大配線領域が形成されて、ステップ511に移行する。ステップ511では、拡大配線領域及び配線領域を避けるように、重心法により配置対象の装着位置を決定する。重心法では、図34(c)の配線y2811,y2812,y2813に示すような張力が部品2801−部品2803の第1〜第3ピン間に働き、部品2803が部品2801の位置に近づこうとするが、部品2801、部品2802が占めている領域や、ネット名A1,A2,A3の拡大配線領域(斜線でハッチングしている領域がそれである。)が禁止域情報として記憶装置2に記憶されているため、禁止域とは装着位置がオーバラップしないように、部品2803の装着位置が模索される。重心法の模索の結果、部品2801からの張力により、部品2801に最も近づきつつも、拡大配線領域とは重複しない装着位置が図34(d)に示すように決定される。配置対象部品2803の配置位置は部品2801に近接しつつも、配線箔との間隔を僅かに空けることになる。
【0113】
装着位置が決定されると、ステップ512では、配置対象に取り付けられているピンと、装着位置が決定済みのピンとの間の配線を行い、その配線が占める配線領域を禁止域情報として記憶装置2に書き込む。ステップ513では、設計対象群として残っている部品があればステップ502に移行し、残っている部品が無ければ、ステップENDに移行する。
【0114】
以上のように本実施例によれば位置決め、配線を交互に繰り返すことで部品配置に対して常に配線を保証した設計ができる。この位置決めの際には、基板上で配線が占めている領域の大きさをネット対部品オフセットに基づいて拡縮するので『この配線には、この部品は近づけないが、この部品は近づけても良い』というような規定を設けることができる。そのため、映像信号が通過する配線を、ノイズを多く出す部品から遠ざけるように規定したり、クロック信号や大電流が通過する配線のみから、周りの部品を遠ざけるように規定することができる。
【0115】
(第7実施形態)
第7実施形態は、基板の外縁とのオフセット巾を部品毎に変化させようというオフセット巾可変付与技術である。ここで基板とのオフセット巾を部品毎にどうやって変えるかは、図35に示すような構造の基板対部品オフセット巾情報によって規定される。図35に示すように、基板対部品オフセットは基板と各部品との組み合わせを網羅するよう記載される。
【0116】
内部構成面では、第1実施形態に示した予測拡大部3が削除されている。また第1実施形態では、オフセット巾を引き出される部品辺に付与させていたが、第7実施形態は、部品条件におけるオフセット巾を全ての部品辺に付与する。
これらの差違点に鑑み、第1実施形態に示した図8のフロ−チャ−トにおけるステップ3304、ステップ3305の手順が、第7実施形態では、図36に示すフロ−チャ−トで実現される。
【0117】
ステップ601において位置決めの対象となる全ての部品情報を設計対象群として図37(a)に示すように整列する。ステップ602では、設計対象群として整列してある部品情報のうち先頭に位置する未配置のタグが付与されているものを取り出して、これを配置対象として設定する。図37(a)においては未配置は、部品3203であるから、これが配置対象として設定される。ステップ603において配置対象の部品情報に含まれる部品番号qを読み出し、ステップ604において基板対部品オフセットにおけるq列のオフセット巾Voffset,Hoffsetを読み出す(図37(b)参照)。続いて、ステップ605では、基板の縦寸L1、横寸L2を読み出し、ステップ606では、以下の{数式4}の演算を行う。
【0118】
{数式4}
縮小縦寸L11←縦寸L1−2×Voffset\h
縮小横寸L12←横寸L2−2×Hoffset
このような演算が行われて、基板の縦寸、横寸が更新されると、実線に示す基板外形から破線に示す部分のみがトリミングされることになる。ステップ607では、縮小により、狭められた配置可能領域上において重心法により配置対象の装着位置を決定する。部品3203の装着位置は図37(c)のように決定される訳だが、部品3203は基板の外縁から1.0mmのオフセット巾を空けた装着位置に決定される。図36のステップ608では、設計対象群として残っている部品があればステップ608に移行し、残っている部品が無ければ、ステップENDに移行する。
【0119】
以上のように本実施形態によれば、基板対部品オフセットを各部品に設けることにより、基板の外縁に寄せてよい部品と、そうでない部品とを規定することができる。このような規定により、配線領域が大きくなるような部品は外縁との拒否を大きく空け、そうでない部品は、基板の外縁に近接させておくという個々の部品が費やするであろう配線領域の大小に鑑みて、部品と基板外縁との間隔を自在に変化させることができる。
【0120】
上記第1〜第7実施形態はその要旨を逸脱しない範囲で変更実施することができる。例えば、これらの配置処理を、重心法を一例として説明したが、『知識』という自動配置の方法を用いても良い。
「知識」を用いた部品配置方法とは例えば「メモリはまとめて置く」とか「関連するディスクリート部品は並べる」といったような基板配置のノウハウを予め保持させておき、これらを用いて部品の配置を行うことである。この知識を用い自動配置処理はNational Technical Report 第32巻第2号 平成5年4月号 雑誌コード06813、「知識ベース型高密度プリント基板自動設計システム」pp.84-89に紹介されている。
【0121】
また配置処理を対話編集で行っても良い。プリント基板CAD装置における対話編集は、基板、部品、接続線の実寸比を忠実に再現した画面をディスプレイに表示させ、この画面についての操作をポインティングデバイスから受け付けることにより行われる。この際、ディスプレィ上の部品の大きさを上記実施形態で拡大した後の大きさにすれば、設計者はその部品に要する配線領域を忘れずに確保することができる。
【0122】
【発明の効果】
本発明によれば電磁誘導による干渉や漏洩が発生するのを避けるためにルータがクリアランス確保を行う際、引き出しパタンが何段に形成されるかが予測手段によって予測される。このように予測された段数に応じた大きさに拡大手段が部品を拡大するので、部品を配線時における配線領域の広がりに適切な大きさに拡大することができる。このような適切な大きさへの拡大により配線率を向上させることができる。この段数の予測は部品の装着座標を必要としないので、部品の位置決めを行わずとも、配置の前段階で配線領域を予め予測しておくことができる。
【図面の簡単な説明】
【図1】第1実施形態におけるCADシステムの構成図である。
【図2】(a)部品情報の一例を示す図である。
(b)部品形状情報の一例を示す図である。
(c)接続情報の一例を示す図である。
(d)配線情報の一例を示す図である。
(e)禁止域情報の一例を示す図である。
各種設計情報のデータ構造を示す図である。
【図3】(a)部品辺情報の一例を示す図である。
(b)配線方法情報の一例を示す図である。
(c)設計基準情報の一例を示す図である。
【図4】(a)〜(h)実装設計アプリケ−ションプログラム7に含まれるルータがどのように設計基準情報を参照して引き出し配線を行うかを示す図である。
【図5】(a)2段引き出しパターンを説明するための説明図である。
(b)2段引き出しパターンにより、ビア−ビア間の間隔がどのように広がるかを説明するための説明図である。
(c)n+2段引き出しパターンを説明するための説明図である。
(d)n+2段引き出しパターンにより、ビア−配線箔間の間隔がどのように広がるかを説明するための説明図である。
(e)引き出しパタンの段数が増えると、配線領域がどのように広がるかを示す説明図である。
【図6】(a)1段引き出しパターンを説明するための説明図である。
(b)予測拡大部3が1段引き出しパターンと予測結果を下した場合、予測拡大部3が部品の大きさをどれだけ拡大するかを説明するための説明図である。
(c)2段引き出しパターンを説明するための説明図である。
(d)2段引き出しパターンと予測結果を下した場合、予測拡大部3が部品の大きさをどれだけ拡大するかを説明するための説明図である。
(e)3段引き出しパターンを説明するための説明図である。
(f)3段引き出しパターンと予測結果を下した場合、予測拡大部3が部品の大きさをどれだけ拡大するかを説明するための説明図である。
【図7】(a)4段引き出しパターンを説明するための説明図である。
(b)予測拡大部3が4段引き出しパターンと予測結果を下した場合、予測拡大部3が部品の大きさをどれだけ拡大するかを説明するための説明図である。
(c)四側面に4段引き出しパターンが表れた部品を示す説明図である。
(d)予測拡大部3が4側面に4段引き出しパターンが表れると予測結果を下した場合、予測拡大部3が部品の大きさをどれだけ拡大するかを説明するための説明図である。
【図8】実装設計アプリケ−ションプログラム7のメインフロ−チャ−トである。
【図9】図8のフロ−チャ−トにおける、引き出しパタンの段数予測の手順と、拡大対象の拡大手順とを示したフロ−チャ−トである。
【図10】引き出し辺のピンの総数を計数する手順を示すフロ−チャ−トである。
【図11】第1実施形態における設計対象群の内容を示す図である。
【図12】(a)終了判定基準情報の一例を示す図である。
(b)拡大方法情報の一例を示す図である。
【図13】(a)部品条件と、部品形状情報とがどのように対応づけられているかを示す図である。
(b)部品条件と、部品情報とがどのように対応づけられているかを示す図である。
【図14】第2実施形態におけるCADシステムの構成を示す図である。
【図15】第2実施形態における実装設計アプリケ−ションプログラム7の変更点を示すフロ−チャ−トである。
【図16】(a)パッケージ種がQFPの部品1301に、どのようにピンが取り付けられているかを示す図である。
(b)パッケージ種がPGAの部品1302に、どのようにピンが取り付けられているかを示す図である。
(c)パッケージ種がQFPの部品1301が、どのように拡大されるかを示す図である。
(d)パッケージ種がPGAの部品1302が、どのように拡大されるかを示を示す図である。
【図17】(a)次元が異なる複数の部品条件により、部品1301がどのように拡大されるかを示す図である。
(b)次元が異なる複数の部品条件により、部品1302がどのように拡大されるかを示す図である。
【図18】第3実施形態における拡大方法情報の一例を示す図である。
【図19】第3実施形態における実装設計アプリケ−ションプログラム7の変更点を示すフロ−チャ−トである。
【図20】第4実施形態における部品対部品オフセットの一例を示す図である。
【図21】第4実施形態における設計対象群の一例を示す図である。
【図22】第5実施形態における実装設計アプリケ−ションプログラム7の変更点を示すフロ−チャ−トである。
【図23】(a)〜(d)配置済み部品の大きさがどのように拡大されてゆくかを示す図である。
【図24】第5実施形態における部品間最小ピッチを示す図である。
【図25】第5実施形態における実装設計アプリケ−ションプログラム7の変更点を示すフロ−チャ−トである。
【図26】部品2401の拡大前後の変化を示す図である。
【図27】(a)第5実施形態における接続情報の一例を示す図である。
(b)部品間最小ピッチが付与された接続情報を示す図である。
【図28】第5実施形態における設計対象群を示す図である。
【図29】(a)〜(f)配置済み部品の大きさが変化することにより、各部品の装着位置がどう変わるかを示す図である。
【図30】第6実施形態における実装設計アプリケ−ションプログラム7の変更点を示すフロ−チャ−トである。
【図31】(a)第5実施形態における設計対象群に含まれる部品情報群を示す図である。
(b)第5実施形態における設計対象群に含まれる配線情報群を示す図である。
(c)第5実施形態における設計対象群に含まれる接続情報群を示す図である。
【図32】第6実施形態におけるネット対部品オフセットの一例を示す図である。
【図33】(a)配線情報に含まれる構成点座標間に形成される配線領域を示す図である。
(b)配線情報に含まれる構成点座標間に形成される拡大配線領域を示す図である。
【図34】(a)部品2803が配置対象になった場合に記憶装置2から読み出されるネット対部品オフセットを示す図である。
(b)(a)で読み出されたネット対部品オフセットによって、配線領域が拡大される様子を示す図である。
(c)(b)で拡大された拡大配線領域が、禁止域領域として記憶された様子を示す図である。
(d)最終的に部品2803の装着位置がどこに決定されたかを示す図である。
【図35】基板対部品オフセット巾の一例を示す図である。
【図36】第7実施形態における実装設計アプリケ−ションプログラム7の変更点を示すフロ−チャ−トである。
【図37】(a)〜(c)基板対部品オフセット巾が参照されて、部品3203の装着位置が決定される様子を示す図である。
【図38】(a)第1従来技術において、ピン配列方向とトラック方向とが直交している様子を示す図である。
(b)第1従来技術において、ピン配列方向とトラック方向とが並行している様子を示す図である。
【図39】(a)ルータによって、ビア間のクリアランス確保がどのように行われるかを示す図である。
(b)ルータによって、ビア−配線箔間のクリアランス確保がどのように行われるかを示す図である。
【符号の説明】
1 高解像度ディスプレィ
2 記憶装置
3 予測拡大部
4 入力操作部
5 出力部
6 マイクロプロセッサ
7 アプリケ−ションプログラム
【発明の属する技術分野】
本発明は、プリント基板、MCMの実装設計を行う実装設計装置に関する。
【0002】
【従来の技術】
近年、携帯電話やページャ、電子手帳、パームトップパソコンを始めとする携帯機器の小型化が急速に進んでいる。これらを開発するメーカ各社は、如何にして高密度なプリント基板、MCM(マルチチップモジュール)を設計するかに日夜懸命である。これらの高密度化はCADシステムの実装設計の完成度により左右されるといって過言ではない。一般に基板の実装設計とは、回路設計によって作成された回路図に基づき、それぞれの部品を基板上の何処の位置へ実装するかを決定する作業と、どのような経路で基板上に配線箔を引き回すかを決定する作業とからなる。これら2つの作業は、前者(位置決め作業)が後者(配線作業)より先に行われるのが一般的である。そしてこの順序でこれらの作業を行う場合位置決め作業は、それら部品の大きさを予め大きめに決めておくことが不可欠となる。このように大きめに決めておくと、位置決め時には各部品の周辺にある程度の余白が保たれるため、配線作業において、部品周りの配線領域が足りなくなるという現象を回避することが可能となる(本明細書では、表現の簡略を期するため、装着位置の『位置決め』のことを単に『配置』という場合がある。)。
【0003】
尚CADを利用した配線基板設計の詳細については、例えば(株)情報調査会発行の”エレクトロニクス実装技術”1993年7月号の特集「高機能実装対応CAD/CAEシステム」や、山田照彦監修「プリント基板のCAE」応用技術出版、1990年1月14日発行等を参照されたい。
実装設計において問題となるのは、各部品は一体どれだけ大きめにしておくかを決めることである。もし拡大量が少なめであると配線経路が確保できずに未結線のまま残る配線が現れ、逆に長めであると部品周辺の余白が大きめとなり、基板が高密度にならない。
【0004】
部品の位置決めを行う際に各部品の拡大幅を適正に定める技術を本明細書ではオフセット付与技術と呼ぶ。オフセット付与技術の第1従来技術としては、特開平3-14181号公報「部品の自動配置処理方式」に詳述されているものがあげられる。これは多層基板の実装時における各部品の拡大巾を部品別に変化させようというものであり、配線容量を予測することにより決定している。本公報によると配線容量とは多層基板の実装面において引き出し配線が占める領域の大きさであり、これを部品において引き出し配線されるピンがどのように並んでいるか、ピン並びが配線層のトラックとどのような位置関係にあるかに基づいて算出している。ピンが部品の両側面にあり、これが配線層における配線トラックと直交している場合、図38(a)の一例に示すよう配線層のトラックを通じた配線経路が確立されるであろうと推測する。
【0005】
配線層における配線トラックと平行である場合、実装面においては、図38(b)の一例に示すように引き出し配線を用いることにより配線経路が確立されるであろうと推測する。ピン並びの方向がトラックと直交しているか平行であるかに応じて個々の部品の引き出し配線がどれだけの領域を占めるかを算出し、算出した値に応じたオフセット巾だけ部品を拡大した後に、位置決めを行うと、配線のための領域が他の部品の配置位置によって占有されることを避けることができる。
【0006】
オフセット付与技術の第2の従来技術は各部品の特性に応じて、各部品に固有のオフセット巾を与えようというものである。その一例は特開平5−12380公報に記載されているものであり、ピン数が多い部品には、配線領域を多く用いるであろうという推測のもとに空き領域の分配を行う。ここでいう空き領域とは、最小矩形の部品形状で全部品を一旦近接配置した後の空き領域であり、これを分配すると、各部品は近接配置の状態から周辺部品を押し退けるように徐々に拡大されてゆく。このようにピン数に応じて分配すると、たとえ形状は同じであっても、ピン数が多い部品には、ピン数が少ない部品より多い目に面積が分配され、配線領域が多い目に見積もられる。
【0007】
【発明が解決しようとする課題】
ところで第1従来技術の問題点としては、部品の配置位置が定まらないと配線領域の予測がなしえないこと、即ち、部品の装着位置が定まった段階を待たないと、配線領域の予測は不可能である問題点をも有している。これは、配線領域の予測時期が大きく制約されることを意味する。例えば、設計者が部品の装着位置が全く決まっていない状態で配線領域を予測しておこうと望んでも不可能であり、また一旦決めた後装着位置が変わると配線領域さえも予測し直す必要が生ずる。
【0008】
第1従来技術は更に、実装面における引き出し配線の引き出し長がピン並びの方向とトラックとの位置関係から予測される長さを上回る現象が発生し、折角の予測が裏切られる場合が多々ある。このように予測が裏切られるのは、電磁誘導による干渉や漏洩が発生するのを避けるためにルータがクリアランス確保を行う場合である。ルータとは、CADシステムにおいてメーズ法、ラインサーチ法等の配線アルゴリズムを用いて配線経路を決定するツールプログラムであり、これが行うクリアランス確保は、実装面においてビアを打つ位置を図39(a)に示すように上下方向にずらしたり、引き出し配線の配線パタンを直線状にするのでは無く、図39(b)に示すように、配線パタンを階段状に形成することでなされるる。
【0009】
どのような状態であるとルータがクリアランス確保を行うかは、たとえ第1従来技術の手法でピン並びの方向やトラック方向が判明していてもなしえないので、第1従来技術は、クリアランス確保でどうしても必要となる領域をないがしろにしたままで部品の位置決めを行ってしまう。
第2従来技術の問題点としては、全ての部品が拡大しきれない場合に配線領域が全く確保不能な基板レイアウトが生成されてしまうことが挙げられる。このように不能レイアウトが生成されると、始めからレイアウトをやり直す必要があり、作業効率が芳しくない。
【0010】
具体的に説明すると、第2従来技術では、基板上に装着すべき各部品は最小矩形で近接配置した後にオフセット巾が付与されると付与された部品は周辺部品を押し退けるように拡大される。押し退けられた部品が基板の内側に位置しているうちはよいが、押し退けられた部品が基板外にはみ出してしまうと、オフセットを付与することはキャンセルせねばならない。途中でオフセット付与をキャンセルすると、最小矩形で近接配置した状態で配置処理が終わってしまう。このように近接配置された状態では、配線領域が確保不能であり、基板レイアウトとしては失格であるから、始めからレイアウト作成をやり直す必要が生じる。
【0011】
本発明の目的は、ルータがクリアランス確保を行った場合に発生する配線領域の過不足でさえも予測することができる実装設計装置を提供することにある。
【0012】
上記目的を達成するために本発明にかかる実装設計装置は、設計規約として、ビア間の許容最小ピッチ、ビアと箔との許容最小ピッチ、ビアと箔との許容最小間隔、ビアとビアとの許容最小間隔、ピンと箔との許容最小間隔、ビアとピンとの許容最小間隔とを予め記憶する記憶手段と、装着位置を決定すべき部品に取り付けられているピンのうち、ビアへと配線が引き出されるピンを部品辺毎に特定する特定手段と、特定された部品辺のピン間のピン間隔と前記記憶手段に記憶されている前記設計規約の情報とに基づいて、前記特定された部品辺毎に取り付けられているピンからビアへの配線引き出し段数n(nは1以上の整数)を部品辺毎に予測する予測手段と、前記予測手段の出力に基づき、当該部品辺に対する配線領域を算出し、前記部品の部品領域を前記配線領域を含む領域として各部品辺毎に拡大する拡大手段と、前記拡大手段で各部品辺毎に拡大された前記部品領域で、当該部品の基板に対する装着位置を決定する決定手段とを備え、
前記予測手段は、前記ピン間隔が前記ビア間の許容最小ピッチより広い場合は、前記nとして1を出力し、前記ピン間隔が前記ビア間の許容最小ピッチより狭く、かつ、前記ビアと箔との許容最小ピッチより広い場合は、前記nとして2を出力し、前記ピン間隔が前記ビア間の許容最小ピッチより狭く、かつ、前記ビアと箔との許容最小ピッチより狭い場合は、前記nとして前記部品辺毎に特定されたピン数Sを用いた以下の算出式で算出された結果を出力し、
n=(S−1)/2+2 (Sが奇数の時)
n=S/2+2 (Sが偶数の時)
前記拡大手段は、前記予測手段から出力される前記nの値と、以下の式とに基づいて、前記特定されたピンを有する部品辺と前記特定されたピンを有さない部品辺とに対して、それぞれオフセット巾を算出し、対象部品辺毎に配線領域として付加することを特徴としている。
前記特定されたピンを有する部品辺に付与するオフセット巾 = v0+(n−1) * v1
前記特定されたピンを有さない部品辺に付与するオフセット巾 = h1 * (n−2)
v0:ピンからビアまでの間隔の基本長
v1:ビアとビアとの間隔
h1: 1 つの段で配線を折り曲げる長さ
【0014】
【発明の実施の形態】
以下、本発明のプリント基板設計方法及び装置の実施例を図面を用いて説明する。
(第1実施形態)
実装設計装置の実施形態としてCADシステムを一例にして説明を行う。このCADシステムは回路図設計と、回路図設計の設計結果に基づく実装設計を行うもので回路図設計と実装設計とで設計情報を共用している。
【0015】
本CADシステムのハードウェア構成を図1に示す。図1に示すようにCADシステムは、高解像度ディスプレィ1と、記憶装置2と、予測拡大部3と、入力操作部4と、出力部5と、マイクロプロセッサ6とで構成される。
高解像度ディスプレィ1は、実装設計アプリケ−ションプログラムの実行時において実装設計中の基板、部品、配線箔の実寸比を忠実に再現したグラフィックスを表示するCRTディスプレィ、LCDである。これらは記憶装置2に記憶されている設計情報によって相互の実寸比を忠実に再現している。対話編集時には設計者はマウスカーソル等を用いて基板上のレイアウトの変更を行う。
【0016】
記憶装置2は、ギガバイトオーダーの記憶容量を有するハードディスク、光磁気ディスクであり回路図設計を行う回路設計アプリケ−ションプログラムと、当該プログラムの実行時に設計者によって入力された各種設計情報と、実装設計を行う実装設計アプリケ−ションプログラムとを記憶している。
上記回路設計プログラムは本発明の主眼でないので説明を省略する。また実装設計については後述する。ここでは設計情報について詳細に説明する。この設計情報は、以下の1.2.3.・・・・に示す種別の情報を含んでいる。
1.部品情報
部品情報とは回路図上のそれぞれの部品が何という製品名で基板上の装着位置はどこであるかを示す情報である。部品情報の一例を図2(a)に示す。部品情報は、回路図上のそれぞれの部品に設計者が採番した番号である部品番号と(図中のIC1、IC3)、当該部品に相応しい製品の製品名を示す部品名と(図中のMN700)、当該部品の基板上における座標と(図中の(20、100)(35、100))、当該部品の実装面を示す面番号と(図中の”1”、”6”)、当該部品の基準辺が基板の基準辺となす角度(図中の”0゜”、”180゜”)と、その部品のパッケージ種と、その部品の機能がCPUであるか、コネクタであるか等を示す部品種類と、所定のオフセット巾で拡大された部品外形が書き込まれる拡大外形情報とからなる。
【0017】
本図において部品番号IC1の横の並びは、「回路図上の部品IC1は製品MN700が相応しく、その装着位置は面1の(20、100)となる」という内容を示している。部品番号IC3の横の並びは、「回路図上の部品IC3は製品MN700が相応しく、その装着位置は面6の(35、100)であり基準辺と180°の角度をなす。」という内容を示している。尚、部品情報のうち部品番号、部品名、パッケージ種、部品種類は回路設計あるいは実装設計において対話編集モードが実行されることで設定され、どう設定するかは設計者に一任されている。拡大外形情報は予測拡大部3によって書き込まれ、装着座標、面番号、角度は実装設計によって綿密に計算される。
【0018】
各部品情報には図2(a)に一例を示したものの他にも、部品辺情報、配線方法情報といった付随情報がある。図3(a)は、部品辺情報のデータ構造を示す図であり、本図によると、部品辺情報は、自身が付随している部品情報の部品名が与えられている。そして、その部品名の部品の上辺、下辺、右辺、左辺がどの座標から始まり、どの座標で終わるかを示す始点・終点座標が対応づけられている。また各部品辺に何番目のピンが取り付けられているか、取り付けられているピンが存在しないかが記されている。
【0019】
図3(b)は、3つの配線方法情報のデータ構造を示す図であり、本図によると、配線方法情報は、各部品に取り付けられているそれぞれのピンに全配線、引き出し配線、途中配線といった種別を与えている。
全配線とは現在実装が行われている面上に配線箔の配線を行う手法であり通常の配線方法情報は、これに設定されている。
【0020】
引き出し配線とは内層あるいは他面を経由して配線を行うため、ピンから所定長の配線箔を引き出し、引き出した先にビアを打つといった配線手法である。現在実装を行っている面に配線に要する空き領域が確保できず、配線が行えない場合でもこの引き出し配線を行えば配線が可能となる。
途中配線とはジャンパ線を用いて配線箔の配線を行う手法である。
2.部品形状情報
部品形状情報とは実際に実装する部品の形状を表した情報である。部品形状の一例を図2(b)に示す。部品形状情報は、部品に相応しい製品の製品名を示す部品名と、相対座標で表された当該製品の外形と、相対座標で表された端子の外形である端子外形と、当該製品が有する端子数と、各端子の相対位置である相対座標と、これらのピンの間隔を示すピンピッチとからなる。上記の相対座標は、本実施例では各部品の1番端子に最も近い頂点を基準座標にして与えられている。この情報も回路設計あるいは実装設計において対話編集モードが実行されることで入力される。
3.接続情報
接続情報とは端子間の論理的な接続を表す情報である。接続情報の一例を図2(c)に示す。図2(c)に示すように接続情報は、設計者によって回路図上の各配線箔に命名された名称であるネット名と(図中の”A”)、当該配線箔によって接続される端子の情報と(図中のIC1−1、R20−1、IC3−5)からなる。この後者の端子の情報は、当該端子の端子番号と、当該部品に付された部品番号とからなる。図2(c)の図表は、その右側の回路図と対応している。本図において”A”というネット名の配線箔が走り、この配線箔によってIC1の1番端子、IC3の5番端子が接続されている。図2(c)のネット名”A”の横の並びはこの回路図における端子同士の接続を示している。実装設計における部品配置及び配線箔の配線は、この接続情報に基づいて行われる。この情報も回路設計あるいは実装設計において対話編集モードが実行されることで入力され、どう設定するかは設計者に一任されている。
4.配線情報
配線情報とは基板上の配線箔についての情報でありその一例を図2(d)に示す。図2(d)に示すように配線情報は、各配線箔に付された識別子と(図中のID”1”)、当該配線箔が対応しているネット名と(図中の”A”)、当該配線箔が配線された面の識別子と(図中の面”1”)、当該配線箔を構成する構成点の数と(図中の”6”)、その構成点の座標と(図中の(19.103),(24,103),(54,88)・・・・)からなる。尚構成点とは上記形状を構成する点をいう。具体的には配線済みの配線箔が折れ線状になっている場合は、構成点は当該折れ線の端点、節目に相当し、配線済みの配線箔が直線状になっている場合は、構成点は当該直線の始点、終点に相当する。
5.禁止域情報
禁止域情報とは基板上において該当する配置、配線を禁止する領域がどこであるかを表した情報である。禁止域情報の一例を図2(e)に示す。図2(e)に示すように禁止域情報は、各禁止域に付された識別子(図中の”ID1”)、禁止域の存在する面(面”1”)、禁止域の形状を示す基板上の座標からなる。
6.設計基準情報
設計基準情報とは実装設計を行なう際の物理的な制約条件等実装設計の基準を表した情報である。設計基準情報の一例を図3(c)に示す。図3(c)に示すように設計基準情報は、ビア径vialand、配線箔巾fwidth(図中では0.2mm)、ルータが配線するにあたってビア同士の最小間隔をいくらにするかを示す最小ピッチvvpitch(図中では0.3mm)、ビアとピンとの最小間隔をいくらにするかを示す最小ピッチvppitch(図中では0.15mm)、ビアと配線箔との最小間隔をいくらにするかを示す最小距離vfdist、ビアとビアとの最小間隔をいくらにするかを示す最小ピッチvvdistなどを表している。これの情報も回路設計あるいは実装設計において対話編集モードが実行されることで入力される。
【0021】
上記の設計基準情報は、以下の(1)〜(7)に示すようにルータがビア打ち及び配線を行う際に参照される。
(1)第1に引き出し配線すべきピンのためにルータがビア打ちを行う場合、vpdist及びvialandが参照される。即ち図4(a)に示すように、ルータは第1ピンからvpdistを空けて、vialandに示す直径を有するビアを打つ。
【0022】
(2)配線箔の形成においてfwidthは参照される。即ち、ルータは図4(a)に示すようにビアが打たれると、図4(b)に示すように第1ピンからビアへとfwidthの横巾を有する配線箔を形成する。
(3)vvpitchは、第1ピンの引き出し配線を終え、続いて第2ピンの引き出し配線のためにビアを打つ際に参照される。即ち、ルータは部品のピンピッチを読み出し、またvvpitchを読み出して、ピンピッチがvvpitchを上回るかを判定する。
【0023】
(4)上回れば、図4(c)に示すように第1ピンのビアの中心からvvpitchだけ水平方向に隔てた位置にビアを打ち、図4(d)に示すように、打った第1ピンから打ったビアへとfwidthの横巾を有する配線箔を形成する。
(5)vfpitchは(3)の判定時においてピンピッチがvvpitchを下回る狭さの場合ルータによって参照される。即ち、ルータはピンピッチがvvpitchを下回ると判定した場合、vfpitchを読み出してこれがピンピッチを上回るかを判定するのである。
【0024】
(6)vfpitchを上回ると判定した場合、第1ピンのビアの中心から斜め上に向けてvvpitchだけ隔てた位置にビアを打つ
(7)vfpitchを下回ると判定した場合、第1ピンの配線箔を用いるから水平方向にvfpitchだけ隔てた位置の延長線上に図4(g)に示すようにビアを打ち、図4(h)に示すようにこのビアに向けて配線箔を階段状に形成する。
【0025】
記憶装置2に記憶されている情報についての説明はこれまでとし、実装設計装置の各構成についての説明を再開する。
予測拡大部3は、各部品の部品辺において、どのような引き出しパタンが形成されるかを予測し、予測結果に基づいてオフセット巾を部品辺に付与する。ルータが上記の(1)〜(7)からなる手法に基づいて引き出しを行う場合、引き出しが行われる部品辺には、2段引き出しパタンと呼ばれる引き出しパタン、n+2段引き出しパタンと呼ばれる引き出しパタンが表れる。
【0026】
2段引き出しパタンとは、ピン間の間隔が、設計基準情報に規定されているビア打ち間隔を下回る場合に表れる引き出しパタンである。図5(a)はこの引き出しパタンを例示したものであり、本説明図では、部品に取り付けられたピンにおいて、奇数ピンから引き出されたビアは破線b1に揃えられ、図中の偶数ピンから引き出されたビアは破線b2に揃えられる。このように奇数ピン、偶数ピンに対するビア打ちの位置を、破線b1、破線b2のような、2つの平行線に揃えると、ビア間の距離は図5(b)に示す実線k1に示すものから実線k2に示すものへと広がることになる。
【0027】
n+2段引き出し配線とは、ピンと配線箔との間隔が、設計基準情報に規定されているビア−配線箔間隔を下回る場合に表れる引き出しパタンである。ピン間の間隔がビア間隔を下回り、尚且つビア−配線箔の間隔さえも下回る場合、2段引き出しパタンにおける配線箔−ビア間の距離が近づき過ぎて電磁干渉や漏洩が危惧される。この場合ルータは、図5(c)に示すように引き出し辺(引き出し配線される部品辺のことをいう)のうち、中心のピンとなる第mピン(ここでは部品辺には奇数本のピンが取り付けられているものとする。)からの引き出しパタンのみを直線状に形成し、これの両隣に位置する第m-1ピン、第m+1ピンが引き出される引き出しパタンを階段状に形成して、ビアと配線箔との間隔を空ける。更にまた第m-1ピン、第m+1ピンが引き出される引き出し配線が、第m-2ピン、第m+2ピンの引き出し先に打たれるビアと近づき過ぎるのも問題があるため、ルータは第m-2ピン、第m+2ピンから引き出される引き出し配線をも階段状に形成して、ビアと配線箔との間隔を空ける。このように配線箔との間隔を空けると、ビア間の距離は図5(d)の実線k3に示すように、ビアと配線箔との間隔を空けることができる。
【0028】
部品辺から引き出されるピン数が奇数である場合は、中心の引き出し配線以外の引き出し配線を階段状に形成する必要があるので、段数の総数は(S−1)/2+2段となる。
引き出されるピン数Sが偶数である場合は、中心の引き出し配線以外の引き出し配線を階段状に形成する必要があるので、段数の総数はS/2+2段となる。
【0029】
配線領域が広がりに応じて、予測拡大部3が各部品辺から垂直方向及び水平方向にどのようにオフセット巾を追加してゆくかを図5(e)を参照しながら説明する。予測結果が引き出しパタンが一段であれば、部品辺には、先に示した最小ピッチvpdistに等しい基本長v0のオフセットを部品辺に対して垂直方向に付与する。予測された段数が2段であれば、予測拡大部3はこの基本長v0上に更に垂直長v1を加算する。
【0030】
部品辺からの垂直方向に対してだが、一段、二段と予測した場合には、オフセット巾を付与しない。但し予測結果が三段を越えると、部品本体の水平方向に水平長h1のオフセット巾を加算する。
以上のような配線領域の広がりに鑑みて、予測拡大部3は段数がm段の引き出しパタンが表れる場合において、以下の{数式1}に準じた演算により、垂直方向、水平方向に付与するオフセットを算出する。
【0031】
{数式1}
垂直方向に付与するオフセットVoffset = 基本長v0+(m-1)*垂直長v1
水平方向に付与するオフセットHoffset = 水平長h1*(m-2)
段数の予測結果に基づいて、予測拡大部3が部品本体にどれだけのオフセット巾が付与するかを図6(a)〜(f)を参照しながら説明する。
【0032】
図6(a)は1段の引き出しパタンが対向する部品辺に形成されると予測された場合を示している。引き出しパタンの段数が1段であると予測すれば、予測拡大部3はそれぞれの部品辺に対して垂直方向に対して図6(b)に示すように部品本体に対して基本長v0のオフセット巾を与える。また図6(c)に示すように対向する部品辺の引き出しパタンの段数が2段であると予測すれば、予測拡大部3は図6(d)に示すように部品辺に対して垂直方向に基本長v0と垂直長v1とを付与する。
【0033】
図6(e)に示すように、対向する部品辺の引き出しパタンの段数が3段であると予測すれば、予測拡大部3は部品辺に対して垂直方向に基本長v0と、垂直長v1の2倍とを足し合わせる。
3段(1+2段)である場合は、引き出し配線は階段状に形成され、水平方向にも広がるので、部品辺の水平方向に、その引き出し配線の水平部の長さh1を付与する(図6(f)参照)。
【0034】
図7(a)に示すように引き出しパタンの段数が4段であると予測すれば、予測拡大部3は部品辺に対して垂直方向に基本長v0と、垂直長v1の3倍とを付与する。
2本の引き出しが階段状に形成され、これが水平方向に広がるので、予測拡大部3はこの水平方向に対して、その引き出しの水平長h1の2倍に等しい水平長h2を付与する(図7(b))。
【0035】
図7(c)は、4つの部品辺にピンが取り付けられており、それぞれの部品辺から4段の引き出しパタンが形成されている場合を示す。この予測拡大部3は4辺のそれぞれに対して、垂直方向に基本長v0と、垂直長v1の3倍とを付与し、水平方向に対して、その引き出しの水平長h1の2倍に等しい水平長h2を付与する(図7(d)参照)。
【0036】
入力操作部4は、ポインティングデバイス、キーボードを有しポインティングデバイスの操作者の操作に応じて高解像度ディスプレィ1上のマウスカーソルを移動させ、キーボードからのキーパンチを受け付けることで対話編集の入力環境を設計者に提供する。
出力部5は、所定用紙上に設計結果を印刷出力するX−Yプロッタ、高解像度プリンタと、NC工作機械を制御するために実装設計結果をCAMデータに変換するCAMデータコンバータと、LANを介して実装設計結果を他のCADシステムに送信するためのネットワークインターフェイスとからなる。
【0037】
実装設計アプリケ−ションプログラム7は、図8〜図10のフロ−チャ−トの手順を記述した実行形式プログラムであり、図8〜図10のフロ−チャ−トに対応する実行モジュールと、ルータと、これらの実行モジュールを主記憶にロードするための管理テーブルとからなる。実装設計アプリケ−ションプログラム7は、フロッピィディスク、光ディスク、光磁気ディスク等に記録することにより持ち運ばれ、所望のCADシステムにインストールされる。『実行形式』とは一般的に機械語命令で記述されていることを示しているが、アプリケ−ションプログラム7は所定のインタプリタで解釈されるマクロ言語で記述されていてもよい。
【0038】
実装設計アプリケ−ションプログラムのメインフロ−チャ−トを図8に示す。以降、図8のフロ−チャ−トを解読して、マイクロプロセッサ6がどのような処理内容を行うかを順を追って説明する。まずマイクロプロセッサ6は対話編集を行うことにより、配線基板の実装設計に必要な、部品外形、端子位置、端子の信号線名、部品端子間のネットデータ、設計基準、基板データを入力する(S3301)。次に、マイクロプロセッサ6は装着位置を決める順序(配置順序)を決定する(S3302)。部品間の接続関係などをもとに、マイクロプロセッサ6は配線基板上での部品を配置したい位置、配置面を決定する(S3303)。
【0039】
次に、マイクロプロセッサ6は既配置部品との接続端子位置などから部品形状を操作する(S3304)。操作した部品形状で部品の装着位置を決める(S3305)。部品の位置決めが全て終了したら、配置結果に対して、配線基板の設計基準を守りながら、接続する全ての部品端子間の配線経路を決定する(S3306)。
【0040】
最後に実装設計済みの配線基板データとして、部品装着位置、配線基板配線経路情報を出力する(S3307)。なお、実際には配線の微調整や認識文字の追加などのアートワーク処理なども行なうが、本発明の主題と関係ないのでここでは省略する。
上記のメインフロ−チャ−トにおいて更に詳細に説明すべきは、ステップ3304の部品形状操作において、何段の引き出しパタンが形成されるかを予測する手順と、その段数に基づき部品サイズにオフセット巾の増減を行う手順である。これらの手順を図9のフロ−チャ−トに示す。本フロ−チャ−トにおいて、拡大の対象となる全ての部品情報は図11に示すように一列に整列され、それぞれが『拡大済み』であるか、『拡大対象』であるか、『未拡大』であるかを示すタグが付与され、またそれぞれの部品情報が拡大される順番を示す『拡大順序』が付与される。
【0041】
図10のフロ−チャ−トにおいてステップ900では、マイクロプロセッサ6は外形、端子外形、端子位置などを示す部品形状情報を記憶装置2から図示しない主記憶上に読み出す。ステップ901において配線箔巾や、配線箔間の間隔等を示す設計基準情報を記憶装置2から主記憶に読み出し、ステップ902において配線引き出しパターンを示す情報を記憶装置2から主記憶上に読み出す。続いてステップ903ではマイクロプロセッサ6は設計対象群に未拡大の部品情報が存在するかを判定する。もし存在すればこれに付与されている『未拡大』のタグを『拡大対象』に書き換えてステップ9041に移行する。
【0042】
ステップ9041では、拡大対象の部品名を読み出し、ステップ904では、マイクロプロセッサ6は読み出された部品名の部品形状情報からピンピッチを読み出す。更にステップ905において設計基準情報のビアとビアの最小ピッチの値 vvpitch を読み出す。
ステップ906は、ピンピッチpinpitchと、ビア間の最小ピッチvvpitchとの比較ステップであり、ビア間の最小ピッチ vvpitchが広ければ、ステップ907は引き出しパタンが一段であると予測結果を下してステップ914に移行する。
【0043】
ビア間の最小ピッチvvpitchが狭ければ、ステップ908においてビアと配線箔との間の最小ピッチvfpitchを読み出し、ステップ909では、ピンピッチpinpitchがビア箔間最小ピッチ vfpitchより広いかを判定する。もし広い場合は、ステップ910において引き出し配線が二段であると予測結果を下す。
もし狭い場合は、ステップ911において拡大対象の引き出し辺毎のピン総数extpinをカウントする。このステップ911の手順は、図10のフロ−チャ−トで詳細に表現される。図10のフロ−チャ−トにおいてステップ921では、マイクロプロセッサ6は拡大対象の部品名についての配線方法情報を記憶装置2から読み出し、ステップ922では、マイクロプロセッサ6は読み出された配線方法情報のうち、配線方法が『引き出し配線』と規定されているピンを全て検出する。ステップ923においてマイクロプロセッサ6は、配線方法情報が引き出し配線と規定されているピンが取り付けられている部品辺毎に引き出し配線されるピン数を集計して、集計値extpinを算出する。このようにして集計値extpinを算出すると、図10のフロ−チャ−トから図9のフロ−チャ−トへと戻り、ステップ912においてマイクロプロセッサ6はextpin/2 以下の最大整数 n を算出する。ステップ913において、その引き出し辺にはn+2段での引き出しパターンが表れると予測結果を下す。以上のステップ906〜ステップ913が実行されることにより、引き出し配線が行われる際の段数が予測されることがわかる。
【0044】
ステップ914では、予測された引き出し段数では、予測拡大部3に配線領域が水平方向及び垂直方向にどれだけ広がるかを算出させる。そして、部品形状情報の外形座標のうち、引き出し配線の始点・終点に相当するものに垂直長Voffset,水平長Hoffsetを付加する。
ここで外形座標が(x0,y0)(x1,y0)(x0,y1)(x1,y1)であり、引き出し辺は座標(x0,y0)(x1,y0)を始点・終点としているものとする。この場合本ステップでは、以下の{数式2}のような演算により拡大外形を算出し、算出結果を拡大対象の拡大外形情報として書き込む。
【0045】
{数式2}
(x0-Hoffset,y0-Voffset)(x1+Hoffset,y0-Voffset)(x0,y1)(x1,y1)
以上のように本実施形態によれば、ルータのクリアランス確保により引き出しパタンが何段に形成されるかを予測拡大部3は予測してこれに応じた大きさに部品を拡大するので、各部品を配線領域の広がりに適切な大きさに拡大することができる。この段数の予測は部品の装着座標を必要としないので、部品の位置決めを行わずとも、配線領域を予め予測しておくことができる。
【0046】
尚配線箔間の間隔、ビアと配線箔間の間隔等の値を用いてより詳細にオフセット値を算出してもよい。
(第2実施形態)
第2実施形態は、部品−基板の面積比が所定率を越えるまで、部品のオフセット巾をそれ固有の特性に応じて変化させるという可変オフセット付与を行う構成である。
【0047】
この可変オフセット付与を実現するため、第2実施形態では図12(a)に示すオフセット巾拡大の終了基準と、図12(b)に示すオフセット拡大方法とを記憶装置2に記憶させている。
前者のオフセット拡大終了基準は、基板設計における配置密度の目標値であり図12(a)の一例では八割が目標値として設定されている。尚オフセット終了基準については、配置密度だけでなく、各部品に対しての拡大の限界値等を用いてもよい。
【0048】
後者のオフセット拡大方法とは、図12(b)にその一例を示すように、部品全般の特性を複数項目に分類し、個々の項目に必須となるオフセット巾とを対応づける情報であり、個々の部品の特性から一意にオフセット巾を選ぶために用いられる。拡大巾については、直接指定するだけでなく、第1実施形態で説明した配線引き出しパターンの1段分の値等を用いてもよい。
【0049】
例えば特性の1つとして図12(b)に示されているパッケージ種別について着目すると、QFP(クッド フラッド アレイ)、PGA(ピン グリッド アレイ)、SOA、DIP等の種別があり、付与すべきオフセット巾の大きさは、これらの種別によって大きく変化する。QFPとPGAの形状の一例を図16(a)に示す。
【0050】
図16(a)に示す部品1301(部品番号1301)はQFPであり、パッケージの四側面の全てからL字状の格子状に取り付けられている。これに対して図16に示す部品1302はPGAであり、底面から格子状に40本ものピンが取り付けられている。
これらのパッケージの違いを考慮して拡大方法情報には、図13(b)の一例に示すようにPGAに対して他の種別のオフセット巾より一段と長い1.0mmを与えている。このように種別PGAの部品に1.0mmのオフセット巾を与えると、種別がPGAの部品は、他の部品に比べて一段と大きく拡大される。
【0051】
またオフセット拡大方法では、パッケージ種のみならず、次元の違う特性を何種類も設けている。パッケージ種に対して次元の違う特性とは、機能種、部品名、部品形状の大きさ、ピン本数等である。このように次元の違う特性を何種類も設けているのは、一種類の部品条件のみでオフセット巾が偏って評価されることを防止するためである。
【0052】
部品情報においては、オフセット巾の検索を部品条件別に行うため、それぞれの部品条件に対応する特性がそれぞれ何処に記述してあるかが予め定められている。図13(a)(b)は、部品情報、形状情報において、どこを手掛かりにして特性を判定するかを示している。ここで部品情報内のパッケージ種は、第1分類の部品条件を検索するのに用いられるから第1特性欄と指示し、部品情報内の部品種類は、第1分類の部品条件を検索するのに用いられるから第2特性欄と指示している。
【0053】
第2実施形態におけるCADシステムの構成を図14に示す。本図を参照すれば第1実施形態に示した予測拡大部3が削除されている。これは本実施形態は引き出しパタンの段数からオフセット巾を付与するのではなく、部品の特性という別の角度から部品のオフセット巾を算出しているからである。また第1実施形態では、オフセット巾を引き出される部品辺に付与させていたが、第2実施形態は、部品条件におけるオフセット巾を、全ての部品辺に付与する。
【0054】
これらの差違点に鑑み、第1実施形態に示した図8のフロ−チャ−トにおけるステップ3304、ステップ3305の手順が、第2実施形態では、図15に示すフロ−チャ−トで実現される。
本フロ−チャ−トにおいて先ずステップ116では、マイクロプロセッサ6は拡大の対象となる部品情報を設計対象群として整列し、ステップ114においてマイクロプロセッサ6は、設計対象群に属する部品が占める面積の集計をとり面積集計値Mを計算する。
【0055】
ステップ101は、ステップ102〜ステップ112からなるループ処理の始めを示す制御文であり、マイクロプロセッサ6はステップ116において整列された設計対象群内で未拡大のタグが付されている部品情報の先頭のものを取り出し、これのタグを拡大対象に書き換える。このようなタグの書き換えにより設定された拡大対象は、ステップ102〜ステップ112からなる処理によって拡大される訳であるが、このステップ102〜ステップ112の処理は機能的に見ると、ステップ102〜ステップ106の手順と、ステップ107〜ステップ109の手順と、ステップ110〜ステップ112の手順と、ステップ110〜ステップ112の手順に分割される点は注目すべきである。
【0056】
このように分割されるのは、ステップ102〜ステップ106の手順は、拡大対象により部品情報を検索する検索手順であり、ステップ107〜ステップ109の手順は、拡大対象を拡大し、これと配置終了基準との比較を行う拡大手順だからである。そして、ステップ110〜ステップ112は、上記における拡大対象の拡大で、基板上の密度が終了基準を満たしたかを判定するための手順である。
【0057】
ステップ102〜ステップ106の手順を更に詳しく説明すると、ステップ102では、マイクロプロセッサ6は変数iに数値1を設定し、ステップ103では、マイクロプロセッサ6はその変数iの設定値で指示される拡大対象の第i特性欄の記入内容を読み出す。ステップ104において、読み出された部品条件の第i分類の項目に記入内容と該当する項目が存在するかを判定し、もし存在しなければ検索対象を他の部品条件に切り換えるため、ステップ106においてマイクロプロセッサ6は変数iを1加算する。もし該当する項目が存在しても、既に検索されている部品条件が重複して検索されるのは思わしくないので、ステップ105においてその項目が一度検索されているかを判定し、もし一度検索されていたならばステップ106に移行して、検索対象を他の部品条件に切り換えるため、ステップ106において、変数iに『1』を加算する。以上のステップ103〜ステップ106の手順を、拡大対象に該当する部品条件が探し出されるまで何度も繰り返す。
【0058】
続いてステップ107〜ステップ109の手順について説明する。ステップ107に移行してくるのは、拡大対象の特性欄に該当する部品条件が探し出された場合である。ステップ107ではその探し出された部品条件に該当する項目に付随しているオフセット巾を読み出し、ステップ108において読み出されたオフセット巾だけ、部品の外寸を拡大し、部品情報に付与されているタグを『拡大済み』に書き換える。
【0059】
ここで図16(a)に示した部品1301が拡大対象である場合、部品1301の外形座標(x0,y0)(x1,y0)(x0,y1)(x1,y1)を読み出す。一方部品1301のパッケージ種がQFPであることから、部品条件情報から0.508mmのオフセット巾が読み出す。ステップ108では、読み出された外形座標を
(x0-0.508mm,y0-0.508mm) (x1+0.508mm,y0-0.508mm)
(x0-0.508mm,y1+0.508mm) (x1+0.508mm,y1+0.508mm)
と更新することにより、図16(c)に示すように部品1301を拡大する。
【0060】
また図16(b)に示したパッケージ種がPGAである部品1302(部品番号IC1302)が拡大対象である場合、部品1302の外形座標(x0,y0)(x1,y0)(x0,y1)(x1,y1)を読み出す。一方部品1302のパッケージ種がPGAであることから、部品条件から1.0mmのオフセット巾が読み出されている。ステップ108では、読み出された外形座標を
(x0-1.0mm,y0-1.0mm) (x1+1.0mm,y0-1.0mm)
(x0-1.0mm,y1+1.0mm) (x1+1.0mm,y1+1.0mm)
と更新することにより、図16(d)に示すように部品1302を拡大する。
【0061】
拡大後、ステップ109において部品面積の拡大分を算出する。
以上がステップ107〜ステップ109の手順である。これらの手順により、一個の拡大対象が特性欄に付随したオフセット巾だけ拡大されると、ステップ110において面積集計値Mにステップ109で算出された拡大量を加算する。このようにして集計値が加算されるとステップ111では、面積集計値Mと、基板面積Kとの比率を算出する。ここで算出される比率には、上記の拡大対象の拡大により、基板上の密度はどれだけ高まったかが反映されており、これがステップ112において終了判定基準と比較される。
【0062】
終了判定基準に満たない場合はステップ113に移行する。ステップ113は、ループ処理の終わりを示す制御文であり、ここに移行してくると、設計対象群において未だ部品が残っているかを参照し、もし残っていればこれを拡大対象として選んで再度ステップ101に戻る。ステップ101へと戻ると、次の拡大対象に対するステップ102〜ステップ112の処理が行われる。
【0063】
以上の説明から判ることは、ステップ111において算出された部品面積の集計値と基板面積との比率が設計者が定めた終了判定基準に満たない場合は、ステップ113に移行しつづけ、次の拡大対象を選ぶようステップ102〜ステップ112の処理を繰り返させることである。このようにステップ102〜ステップ112が繰り返し行われると、次々と部品の拡大が行われる。
【0064】
このように部品条件に応じたオフセット巾が与えられると、ステップ111において計算される面積集計値と基板面積との比率は次第に高まってゆく。ステップ102〜ステップ112の処理が何度も繰り返され、設計対象群に含まれる全ての部品が拡大対象として取り出されると、ステップ113において残り部品が無くなったことが検出され、ステップ113からステップ115へと移行する。ステップ115に移行した段階では、設計対象群に含まれる部品は全てが拡大されている訳だが、ステップ115では、各部品の一層の拡大を図るべく、これらの部品情報に付与されているタグを『拡大済み』から『未拡大』に書き換えることにより設計対象群として再整列してステップ101に移行する。
【0065】
部品1301に対してステップ102〜ステップ112が繰り返し行われると、図17(a)に示すように、パッケージ種に基づくオフセット巾が与えられた破線y1301の形状に部品種類に基づく拡大巾y1311と、部品形状に基づく拡大巾y1321とが加わる。
一方部品1302に対してステップ102〜ステップ112が繰り返し行われると、図17(b)に示すようにパッケージ種に基づくオフセット巾が与えられた破線y1302の形状に、部品種類に基づく拡大巾y1312と、部品形状に基づく拡大巾y1322とが加わる。
【0066】
このようにステップ102〜ステップ112の処理が、ステップ101、ステップ113からなるループ制御文により何度も繰り返されると、ステップ111にて算出される面積比が終了判定基準を越える。終了判定基準を越えるとステップ114に移行し、オフセット巾だけ外寸が拡大された状態で、各部品の装着位置を重心法等の配置アルゴリズムを用いることにより決定する。
【0067】
以上のように本実施形態によれば、各部品の特性が部品条件に含まれる項目と一致するとその部品の拡大を行い、一個の部品の拡大時にこれと基板との面積比較を行うので、配置密度の限界を越えるぎりぎりまで、各部品の特性に応じて個々の部品を拡大してゆくことができる。この拡大では、部品を一旦近接配置することは無いから周囲を押しのけるように拡大してゆく第2従来技術と比較すると、オフセット巾の付与が非常に着実である。限界を越えた段階で初めて各部品の位置決めを行うので、各部品はなるたけ大きめに拡大されるという効果がある。
【0068】
(第3実施形態)
第3実施形態は、第2実施形態を一部改良した構成である。第2実施形態を何処を改良したかというと第2実施形態は、何れかのオフセット拡大方法に合致するものを順次拡大してゆくのみで、拡大対象の選択に規則性が無いという点である。このように拡大対象の選択に規則性が無いと、さほどオフセット付与の必然性が薄い部品に先にオフセット巾が付与されたために、後で選択される部品のオフセット巾が切り詰められるという現象が表れる。
【0069】
このような現象の回避するため、第3実施形態ではオフセット拡大方法のそれぞれに優先度を与えることにより、拡大対象部品選択に規則性を与えている。図18は、(1)〜(9)という優先度が付与されたオフセット拡大方法の一例である。これらのオフセット拡大方法のうち、形状について着目すると、優先度は(1)PGA、(2)QFP、(5)SOP、(6)DIPの順で高い。
【0070】
また優先度(3)、(4)の部品としては、コネクタータイプ、CPUのものが列挙されており、PGA、QFPに次いで高い優先度は与えられている。
ここで示した優先度は一例であり、優先度の順序を入れ換えてもよいし、新たな条件を付け加えてもよい。
内部構成面では、第2実施形態と同様、本実施形態においても第1実施形態に示した予測拡大部3が削除されている。また第1実施形態では、オフセット巾を引き出される部品辺に付与させていたが、第3実施形態は、部品条件におけるオフセット巾を、全ての部品辺に付与する。
【0071】
これらの差違点に鑑み、第1実施形態に示した図8のフロ−チャ−トにおけるステップ3304の手順が、第3実施形態では、図19に示すフロ−チャ−トで実現される。
ステップ201において拡大の対象となる部品を設計対象群として整列する。ステップ202は、ステップ203〜ステップ208からなるループ処理の始めを示す制御文であり、ステップ201において整列された設計対象群において『未拡大』のタグが付与されている部品情報のうち先頭のものを取り出し、これに付与されているタグを『拡大対象』に書き換える。
【0072】
ステップ203において変数iを1に初期化し、ステップ204において拡大対象の第1特性欄の記入内容を読み出す。ステップ205では、部品条件の分類内に、特性欄の記入内容と該当する項目が存在するかを判定する。該当項目が存在するならば、ステップ206においてその該当項目に付与されている優先度を読み出し、ステップ207において読み出された優先度を拡大対象に付与する。付与後、ステップ208において変数iが上限を越えたかをチェックし、越えてなければステップ209において変数iを1だけインクリメントして『2』に増加させた後にステップ204に移行する。ステップ204において拡大対象の第2特性欄の記入内容を読み出す。読み出し後、変数iが『1』の場合と同様に、ステップ205において部品条件の第2分類内に記入内容と該当する項目が存在するかを判定する。
【0073】
変数iが上限を越えるまでステップ204〜ステップ208の処理を繰り返し行うことにより、部品条件において各項目に対応づけられている優先度が拡大対象に付与されてゆく。例えば、パッケージ種がPGAタイプでピン本数が36ピンのCPUであれば、パッケージ種がPGAであることにより優先度『1』が付与され、CPUであることにより優先度『4』が付与される。ピン本数が36ピンであることにより、優先度『9』が付与される。
【0074】
変数iが上限を越えると、ステップ210に移行して、設計対象群に『未拡大』の部品が残っているかを判定する。残っていればステップ202に移行し、その残っている部品のうち先頭に位置する未拡大のものを取り出してこれを拡大対象として設定する。
設定後ステップ203〜ステップ208の処理をその新たな拡大対象に対して行わせ、拡大対象が有する全ての特性に応じた優先度をその拡大対象に付与させる。
【0075】
ステップ203〜ステップ208の処理が全ての設計対象群に対して行われると、残っている部品が無くなり、ステップ210からステップ211への移行が行われる。ステップ211に移行すると、部品毎に付与された優先度の集計をとる。ここで、パッケージ種がPGAタイプでピン本数が36ピンのCPUであれば、パッケージ種がPGAであることにより付与された優先度『1』と、CPUであることにより付与された優先度『4』と、ピン本数が36ピンであることにより付与された優先度『9』とが集計されて、集計結果『14』が得られる。
【0076】
同様の集計を各部品について行うと、その集計結果の高低を比較し、この高低によって各部品の拡大順序を作成する。
拡大順序を作成すると、ステップ212において第2実施形態で示した図15のフロ−チャ−ト(このフロ−チャ−トにより実現されるモジュールを以下拡大ルーチンと呼ぶ。)をサブルーチンコールする。このコール時に引数として各部品の拡大順序を引き渡す。コールされた側の拡大ルーチンは、ステップ212において引き渡された拡大順序に従って、部品を整列させて設計対象群を生成する。このように拡大順序に従った順序で設計対象群を生成すると、ステップ101〜ステップ113でなされるループ処理は、ステップ211において各部品に付与された順序で行われる。この順序は、優先度の集計結果に基づくものであるから、高い優先度が付与された項目と合致する特性を多く持つ部品程、早い順番で拡大される。
【0077】
以上のように本実施形態によれば、高い優先度が付与された項目と合致する特性を多く持つ部品を早い順番でオフセット巾を与え、そうでない部品に遅い順番でオフセット巾を与える。このように優先度に応じた順番でオフセット巾を与えて拡大するので、オフセット巾付与の必然性が薄い部品に先にオフセット巾が付与されたために、後で選択される部品のオフセット巾が切り詰められるという現象を回避することができる。
【0078】
(第4実施形態)
第4実施形態は、配置対象の装着位置を決める時点においてその配置対象の装着位置が、配置済みの部品が占める位置に対してどこまで近づいて良いかを規定するオフセット巾付与技術に関する。
どのような部品が配置済みでありどのような部品が配置対象になってもそれらの組み合わせを全て網羅するよう、第4実施形態ではあらゆる2つの部品の組み合わせ毎に対応づけてオフセット巾を定めている。
【0079】
第4実施形態において記憶装置2は、図20に示すような形式で部品対部品オフセットを記憶している。このように記憶しておくと、例えば部品2101、2102が配置済みであり、部品2103が配置対象部品となる場合、配置対象の装着位置は、部品2101の装着位置から1.27mm以内に立ち入ることは許されず、部品2102の装着位置から5.08mm以内に立ち入ることは許されない。
【0080】
また部品2101、2102、2103が配置済みであり、部品2106が配置対象部品となる場合、配置対象の装着位置は、部品2101の装着位置から1.27mm以内に立ち入ることは許されず、部品2102の装着位置から2.54mm以内に立ち入ることは許されない。また部品2103の装着位置から0.508mm以内に立ち入ることは許されない。
【0081】
これを部品2102について注目すると、部品2103とのオフセット巾に5.08mmをとっているので、部品2103の装着位置との間には最短でも5.08mmの間隔が空けられるのに対して、部品2104とのオフセット巾に1.27mmをとっているので、部品2104の装着位置との間には最短でも1.27mmの間隔が空けられる。
【0082】
内部構成面では、第1実施形態に示した予測拡大部3が削除されている。また第1実施形態では、オフセット巾を引き出される部品辺に付与させていたが、第4実施形態は、部品条件におけるオフセット巾を、全ての部品辺に付与する。
これらの差違点に鑑み、第1実施形態に示した図8のフロ−チャ−トにおけるステップ3304、ステップ3305の手順が、第4実施形態では、図22に示すフロ−チャ−トで実現される。
【0083】
図22のフロ−チャ−トにおいてステップ301では、位置決めの対象となる全ての部品を設計対象群として整列する。これにより位置決めの対象となる部品情報は図18に示すように一列に整列され、それぞれに『配置済み』であるか、『配置対象』であるか、『未配置』であるかを示すタグが付与される。またそれぞれの部品情報が位置決めされる順番を示す『配置順序』も付与される。
【0084】
ステップ302では、設計対象群のうち未配置のタグが付与されている部品情報の先頭のものを取り出して、これのタグを『配置対象』に書き換える。
この書き換えにより配置対象を設定すると、ステップ303において設計対象群の順番を逆方向に遡って、装着座標、実装面番号、装着角度が記入済みである部品情報を検索する。これらが記入済みである部品情報とは配置済み部品である。ここで図21に示すように部品2101〜2104が基板上に配置済みで、部品2105〜部品2113が未配置であり、部品2105がこれから配置されようとしている状態を想定する。この状態では、記憶装置2に記憶されている部品情報は、部品2101〜2104のみが装着座標、実装面番号、装着角度が記入済みであり、それ以外の部品である部品2106〜2113は装着座標、実装面番号、装着角度が未記入である。ステップ303の検索では、部品2101〜2104が読み出される。部品2101〜2104の部品情報に記入されている内容通りに、部品2101〜2104を基板上に配置すると、図23(a)のように表現される。
【0085】
ステップ304では、検索された配置済み部品を整列し、その先頭のものを取り出す。ステップ305においてその取り出された配置済み部品の部品番号uを読み出す一方で、ステップ306において配置対象の部品番号vを読み出す。配置済み部品、配置対象の両者の部品情報から部品番号が読み出されると、ステップ307において部品対部品オフセットにおけるu行v列のオフセット巾を読み出し(図23(b)参照)、ステップ308において部品番号uの部品情報の外寸を、読み出されたオフセット巾だけ拡大する。
【0086】
部品2101〜2104が配置済みである状態では、ステップ304〜ステップ309の処理が繰り返し実行されることにより、配置対象部品2105を一方に含む部品対部品オフセットが全て読み出される。一回目の実行により、配置済み部品2101−配置対象部品2105間のオフセット巾5.08mmが読み出され、二回目の実行により、配置済み部品2102−配置対象部品2105間のオフセット巾2.54mmが読み出される。三回目の実行により、配置済み部品2103−配置対象部品2105間のオフセット巾2.54mmが読み出され、四回目の実行により、配置済み部品2104−配置対象部品2105間のオフセット巾5.08mmが読み出される。これらがステップ307において読み出される度に、ステップ308において各配置済み部品の外寸は、読み出されたオフセット巾だけ拡大される訳だから、図23(c)に示すように、部品2101〜部品2104が占める領域は実線のものから破線のものへと四方に拡大することとなる。
【0087】
ここで、部品2102〜部品2104のオフセット巾は2.54mmであるのに対して、部品2101のオフセット巾は5.08mmであるから、部品2101を含む破線の広がりは、部品2101〜部品2104を含むそれと比較して2倍の大きさを有することがわかる。部品2105の装着位置はこの破線に示す領域内には立ち入れない訳であるが、部品2101の破線の広がりは、他の部品のそれと比較して2倍の大きさを有するので、部品2101−部品2105の間隔は、他の部品との間隔に比較して、2倍の長さになることが保証される。
【0088】
拡大されると、ステップ310において外寸が拡大された部品が占める領域を避けるように配置対象の装着位置を決定する。図23(d)は、破線で示されたオフセット値を守って部品2105が基板上に配置された状態を示す。続くステップ311で設計対象群として残っている部品があればステップ311に移行し、残っている部品が無ければフロ−チャ−トの処理を終了する。
【0089】
以上のように本実施形態によれば、配置対象の位置決めの際に配置済み部品とどれだけの距離をおかなければならないかを、全ての部品の組み合わせについて決定するので、ある部品の組み合わせはその間隔を広目にし、別の部品の組み合わせはその間隔を狭目にするという部品同士の相性に併せた間隔を規定することができる。
【0090】
(第5実施形態)
第5実施形態は、各部品が有する特性に応じたオフセット巾を付与しつつも、より一層の高密度化を求めるために接続関係にある部品間についてはより短いオフセット巾を付与しようという技術である。
接続関係にある部品間には部品間最小ピッチが付与される。ここで部品間最小ピッチとは、設計基準情報に含まれる情報の1つであり、部品の装着位置の最小ピッチを規定する情報である。
【0091】
図24は部品間最小ピッチの一例を示すものであり、部品形状情報に付された部品番号のペアと、そのペア間のピッチ長とを対応づけている。このような対応づけにより、それらの部品番号が付された部品間は、最低そのピッチ長だけ間隔が空くよう規定している。図24の一例では、部品番号IC2401,R2402の部品間に0.508mmの間隔を空け、部品番号IC2401,R2403の部品間には、0.508mmの間隔を空けるよう、規定がなされる。
【0092】
内部構成面では、第1実施形態に示した予測拡大部3が削除されている。また第1実施形態では、オフセット巾を引き出される部品辺に付与させていたが、第5実施形態は、部品条件におけるオフセット巾を、全ての部品辺に付与する。
これらの差違点に鑑み、第1実施形態に示した図8のフロ−チャ−トにおけるステップ3304、ステップ3305の手順が、第5実施形態では、図25に示すフロ−チャ−トで実現される。
【0093】
本図においてステップ401は第2実施形態の図15の拡大ルーチンをサブルーチンコールする呼出ステップである。この呼出により、第2実施形態に示したように、部品条件に基づいて各部品の特性を解析する。
ここで図26に示されている部品2401(部品番号IC2401)は、図29(a)に示すように部品2401は四辺にピンが取り付けられているQFPであり、ピンの総数が12本である。このような特性が解析されて、この解析に応じたオフセット巾が与えられる。
【0094】
パッケージ種がQFPである部品2401が拡大対象である場合、このQFPは部品条件において高いオフセット巾が設定されているから、部品2401には、割と大きめのオフセット巾が与えられる。図26における部品2401を囲む破線の矩形は、拡大後の部品2401の形状を示している。
部品条件に応じて終了基準を満たすまで部品拡大が行われると、位置決めすべき複数部品は部品2401と同様に自身が満たす部品条件に対応するオフセット巾だけ、終了基準を満たすまで拡大されてゆく。
【0095】
拡大処理が終了基準を満たすと、ステップ402では、記憶装置2から主記憶へと回路設計時に作成された全接続情報を読み出す。
ステップ403では、接続情報に含まれる部品番号を全て読み出す。ここでステップ402において、図27(a)に示すような4つの接続情報が読み出されたものとする。読み出された接続情報には、部品2401の部品番号(IC2401)と、表面実装チップ部品である部品2402〜部品2405の部品番号(R2402〜R2405)とが含まれているものとする。
【0096】
ステップ404では、設計基準からこれらの部品番号を共に含んでいる部品間最小ピッチを読み出す。図24には、IC2401−R2402間の最小ピッチ、IC2401−R2403間の最小ピッチ、IC2401−R2404間の最小ピッチ、IC2401−R2405間の最小ピッチが含まれているので、これらが読み出される。
読み出し後、ステップ405において読み出された最小ピッチを、部品番号2401、2402が含まれていた接続情報に付与し、記憶装置2に蓄積する。付与後の接続情報を図27(b)に示す。
【0097】
この作業を全ての接続情報について繰り返して、部品間最小ピッチが付与された接続情報が記憶装置2に蓄積される。
接続情報に部品間最小ピッチが付与されるとステップ407において位置決めの対象となる全ての部品情報を設計対象群として整列する。
図28に示す部品情報群が対象である場合の動作を想定して以降の説明を行う。ステップ408において設計対象群として整列してある部品のうち、先頭に位置する未配置のタグが付与されているものを取り出して、これを配置対象として設定する。設定後ステップ409では、配置対象の接続相手となる配置済み部品の部品番号を探索する。この探索は、配置対象の部品番号を含んでいる接続情報を記憶装置2から全て読み出し、各接続情報に含まれる部品番号のうち配置対象と異なる他方の部品番号を取り出して、その部品番号を有する部品情報の装着座標、実装面番号、装着角度が記入済みであるかを判定することにより行われる。図29(a)に示すように、部品2402、部品2411〜部品2416の装着位置が既に決まっている状態において破線に示す設計対象群のうち先頭に位置している部品2402が配置対象に選ばれたものとする。部品2402に対してステップ409の処理が行われると、部品2402の接続相手となる部品として部品2401が探索される。
【0098】
ステップ410は先の探索で得られた配置済み部品を1つずつ取り出して、これを対象にしたループ処理を制御する制御文である。先ずステップ411では、取り出された配置済み部品の部品番号と、配置対象の部品番号と含む部品間最小ピッチ付き接続情報を読み出す。先に述べたように配置対象及び配置済み部品の大きさは、拡大ルーチンにおいて部品条件に応じて既に拡大されている訳であるが、これに代えて先に読み出された部品間最小ピッチを付与するよう、ステップ413では一旦配置対象及び配置済み部品の大きさを拡大前の大きさに戻す。部品2401の一例でゆうと、図26で破線に示した形状から実線で示した形状への復帰が行われることになる。ステップ414では、配置済み部品を読み出された部品間最小ピッチだけ拡大する。これは部品条件に基づいた拡大巾から部品間最小ピッチの拡大巾への更新を意味する。ステップ415では、同様の更新を次の配置済み部品に対しても行うよう、ステップ410に移行する。
【0099】
以上の処理により配置対象と接続関係にある配置済み部品は、その拡大巾が最小ピッチ分のみに更新されたが、接続関係の無い配置済み部品は部品条件に基づく大きさで拡大されたままである。この状態で重心法を用いて、配置対象の装着位置を決定する。重心法では、接続相手のピンとの間に張力が働くと仮定して、これがつりあうような装着位置を算出しようとする。この際、重心法により配置済み部品本体から最小ピンピッチ以遠であって、このピンになるべく近い装着位置が算出される。算出後、配置済み部品を、拡大ルーチンによって拡大された状態に戻す。
【0100】
配置対象が部品2402である場合(図29(a)参照)、接続相手となる部品2401本体から最小ピンピッチ以遠であって、この部品2401になるべく近い装着位置が算出される(図29(b)参照)。
配置対象が部品2403である場合、これらは部品2401を接続相手としているので、部品2403の装着位置は部品2401本体から最小ピンピッチ以遠であって、この部品2401になるべく近い装着位置が算出される(図29(c)参照)。
【0101】
配置対象が部品2404である場合、これらは部品2401を接続相手としているので、部品2404の装着位置は部品2401本体から最小ピンピッチ以遠であって、この部品2401になるべく近い装着位置が算出される(図29(d)参照)。
配置対象が部品2405である場合、これらは部品2401を接続相手としているので、部品2405の装着位置は部品2401本体から最小ピンピッチ以遠であって、この部品2401になるべく近い装着位置が算出される(図29(e)参照)。
【0102】
以上は部品2401を接続相手とした部品の距離であるが、部品2401を接続相手としない部品2406(図29(f)において部品番号IC2406が付された部品のことである。)が配置対象となる場合について続いて説明を行う。
部品2406が配置対象になっている場合は、ステップ409における配置済み部品の検索において部品2401が検索されないため、部品2401はステップ410〜ステップ415からなるループ処理においてオフセット巾の更新がなされない。
【0103】
従ってステップ416における装着位置決定時には、ステップ401の拡大ルーチンにて拡大された状態のままで基板上の領域を占めている。この際、重心法により配置済み部品2401本体からステップ401で付与されたオフセット巾以遠であって、このピンになるべく近い装着位置が算出される(図29(f)参照)。
【0104】
図29(d)における破線h2401は部品2402〜部品2405が配置対象になった際の配置済み部品の大きさを示し、破線h2402は部品2406が配置対象になった際の配置済み部品の大きさを示す。破線h2402は破線h2401と比較して極めて小さいから、部品2402〜部品2405は部品2401を接続相手とするため、部品2401と非常に近接した位置に装着位置が決定されることがわかる。部品2406は部品2401を接続相手としないため、部品2402〜部品2405と比較して、部品2401とかなりの間隔を空けて装着位置が決定されることがわかる。
【0105】
以上のように本実施形態によれば、接続関係にある部品間のオフセット巾をそれらの部品間の最小ピッチに定め、そうでない部品には、部品条件に基づいて付与されたオフセット巾を用いるので、接続関係の有無に応じて部品間間隔の広い狭いを切り換えることができる。接続関係にある部品間はなるたけ近づいた装着位置が決定されるので、ルータによる配線の際に、それらの部品間の配線を短めにできるという効果がある。
【0106】
(第6実施形態)
第6実施形態は、部品と配線箔との間隔を適正に保ちながら基板上のレイアウトを構築してゆく構成である。
『間隔の適正値』は、ネット対部品オフセットとして記憶装置2に記憶されている。ネット対部品オフセットとは、複数の接続情報と複数の部品との組み合わせ毎にその組み合わせについてのオフセット巾の必要長を定めた情報であり、そのデータ構造を図32に示す。
【0107】
第6実施形態では、個々の配置対象部品の配置位置を決まれば、その都度、配置対象部品が有する端子と、既に基板上に配置済みの編集が有する端子との間を配線するという部品配置−配線を交互に行う構成になっている。このように、部品配置−配線を交互に行う構成のため、第6実施形態では、第1実施形態に示した図8のフロ−チャ−トにおけるステップ3304、ステップ3305、ステップ3306の手順が、第6実施形態では、図30に示すフロ−チャ−トで実現される。
【0108】
ステップ501では、位置決めの対象となる全ての部品情報と、配線の対象となる全ての配線情報を設計対象群として整列する。ここで、配線の対象となる部品情報は図31(a)に示すように一例に配列され、配線情報も図31(b)に示すように一列に整列される。整列された配線情報には、それぞれが『配線済み』であるか、『配線対象』であるか、『未配線』であるかを示すタグが付与されており、またそれぞれの部品情報が配線される順番を示す『配線順序』も付与されている。図31(b)において各配線情報はネット名を有する。これらのネット名は、図31(c)に示す接続情報においてネット名に属するピンと対応づけられている。
【0109】
ステップ502において設計対象群として整列してある部品情報のうち、先頭に位置する未配置のタグが付与されているものを取り出して、これを配置対象として設定する。ここで部品情報の配列が図31(a)の通りだとすると、部品番号2803の部品情報が読み出され、ステップ502において配置対象の部品情報に含まれる部品番号qを読み出す。
【0110】
ステップ503において設計対象群に含まれる配線情報のうち、構成点数・構成点座標が記入済みであるもの(これは配線済みであることを示す)を検索する。この検索が図31(b)の配線情報群に対して行われると、装着面、構成点数、構成点座標が記入済みである配線情報として、ネット名A1〜A4の配線情報が読み出される。
【0111】
ステップ505は、検索された全ての配線情報について繰り返すループ文の始めを示し、ステップ506において配線情報に含まれるネット名A1を読み出し、ステップ507においてネット名A1と部品2803とのネット対部品オフセットを読み出す。
ステップ508では、設計基準に記載されている箔巾と読み出されたオフセット巾とを足し合わせた横巾を有する領域(拡大配線領域)を検索されたネット名A1の配線情報に含まれる構成点座標間に形成する。ここでネット名A1の配線情報に(X0,Y0)(X1,Y1)なる構成点が含まれており、設計基準情報に箔巾wが含まれている場合、これらの構成点間には、図33(a)に示すような箔巾wからなる配線領域が形成される訳であるが、これにネット対部品オフセットを足し合わせると、図33(b)に示すような拡大配線領域が形成される。ステップ509では、形成された拡大配線領域を禁止域情報として記憶装置2に書き込み、ステップ510では、以上のステップ506〜ステップ509の処理をステップ504において 検索された全ての配線情報について繰り返すよう、ステップ505に移行する。
【0112】
ステップ505〜ステップ510が繰り返し行われると、部品2801−部品2802の第3ピン間に図34(b)に示すような拡大配線領域が形成されて、ステップ511に移行する。ステップ511では、拡大配線領域及び配線領域を避けるように、重心法により配置対象の装着位置を決定する。重心法では、図34(c)の配線y2811,y2812,y2813に示すような張力が部品2801−部品2803の第1〜第3ピン間に働き、部品2803が部品2801の位置に近づこうとするが、部品2801、部品2802が占めている領域や、ネット名A1,A2,A3の拡大配線領域(斜線でハッチングしている領域がそれである。)が禁止域情報として記憶装置2に記憶されているため、禁止域とは装着位置がオーバラップしないように、部品2803の装着位置が模索される。重心法の模索の結果、部品2801からの張力により、部品2801に最も近づきつつも、拡大配線領域とは重複しない装着位置が図34(d)に示すように決定される。配置対象部品2803の配置位置は部品2801に近接しつつも、配線箔との間隔を僅かに空けることになる。
【0113】
装着位置が決定されると、ステップ512では、配置対象に取り付けられているピンと、装着位置が決定済みのピンとの間の配線を行い、その配線が占める配線領域を禁止域情報として記憶装置2に書き込む。ステップ513では、設計対象群として残っている部品があればステップ502に移行し、残っている部品が無ければ、ステップENDに移行する。
【0114】
以上のように本実施例によれば位置決め、配線を交互に繰り返すことで部品配置に対して常に配線を保証した設計ができる。この位置決めの際には、基板上で配線が占めている領域の大きさをネット対部品オフセットに基づいて拡縮するので『この配線には、この部品は近づけないが、この部品は近づけても良い』というような規定を設けることができる。そのため、映像信号が通過する配線を、ノイズを多く出す部品から遠ざけるように規定したり、クロック信号や大電流が通過する配線のみから、周りの部品を遠ざけるように規定することができる。
【0115】
(第7実施形態)
第7実施形態は、基板の外縁とのオフセット巾を部品毎に変化させようというオフセット巾可変付与技術である。ここで基板とのオフセット巾を部品毎にどうやって変えるかは、図35に示すような構造の基板対部品オフセット巾情報によって規定される。図35に示すように、基板対部品オフセットは基板と各部品との組み合わせを網羅するよう記載される。
【0116】
内部構成面では、第1実施形態に示した予測拡大部3が削除されている。また第1実施形態では、オフセット巾を引き出される部品辺に付与させていたが、第7実施形態は、部品条件におけるオフセット巾を全ての部品辺に付与する。
これらの差違点に鑑み、第1実施形態に示した図8のフロ−チャ−トにおけるステップ3304、ステップ3305の手順が、第7実施形態では、図36に示すフロ−チャ−トで実現される。
【0117】
ステップ601において位置決めの対象となる全ての部品情報を設計対象群として図37(a)に示すように整列する。ステップ602では、設計対象群として整列してある部品情報のうち先頭に位置する未配置のタグが付与されているものを取り出して、これを配置対象として設定する。図37(a)においては未配置は、部品3203であるから、これが配置対象として設定される。ステップ603において配置対象の部品情報に含まれる部品番号qを読み出し、ステップ604において基板対部品オフセットにおけるq列のオフセット巾Voffset,Hoffsetを読み出す(図37(b)参照)。続いて、ステップ605では、基板の縦寸L1、横寸L2を読み出し、ステップ606では、以下の{数式4}の演算を行う。
【0118】
{数式4}
縮小縦寸L11←縦寸L1−2×Voffset\h
縮小横寸L12←横寸L2−2×Hoffset
このような演算が行われて、基板の縦寸、横寸が更新されると、実線に示す基板外形から破線に示す部分のみがトリミングされることになる。ステップ607では、縮小により、狭められた配置可能領域上において重心法により配置対象の装着位置を決定する。部品3203の装着位置は図37(c)のように決定される訳だが、部品3203は基板の外縁から1.0mmのオフセット巾を空けた装着位置に決定される。図36のステップ608では、設計対象群として残っている部品があればステップ608に移行し、残っている部品が無ければ、ステップENDに移行する。
【0119】
以上のように本実施形態によれば、基板対部品オフセットを各部品に設けることにより、基板の外縁に寄せてよい部品と、そうでない部品とを規定することができる。このような規定により、配線領域が大きくなるような部品は外縁との拒否を大きく空け、そうでない部品は、基板の外縁に近接させておくという個々の部品が費やするであろう配線領域の大小に鑑みて、部品と基板外縁との間隔を自在に変化させることができる。
【0120】
上記第1〜第7実施形態はその要旨を逸脱しない範囲で変更実施することができる。例えば、これらの配置処理を、重心法を一例として説明したが、『知識』という自動配置の方法を用いても良い。
「知識」を用いた部品配置方法とは例えば「メモリはまとめて置く」とか「関連するディスクリート部品は並べる」といったような基板配置のノウハウを予め保持させておき、これらを用いて部品の配置を行うことである。この知識を用い自動配置処理はNational Technical Report 第32巻第2号 平成5年4月号 雑誌コード06813、「知識ベース型高密度プリント基板自動設計システム」pp.84-89に紹介されている。
【0121】
また配置処理を対話編集で行っても良い。プリント基板CAD装置における対話編集は、基板、部品、接続線の実寸比を忠実に再現した画面をディスプレイに表示させ、この画面についての操作をポインティングデバイスから受け付けることにより行われる。この際、ディスプレィ上の部品の大きさを上記実施形態で拡大した後の大きさにすれば、設計者はその部品に要する配線領域を忘れずに確保することができる。
【0122】
【発明の効果】
本発明によれば電磁誘導による干渉や漏洩が発生するのを避けるためにルータがクリアランス確保を行う際、引き出しパタンが何段に形成されるかが予測手段によって予測される。このように予測された段数に応じた大きさに拡大手段が部品を拡大するので、部品を配線時における配線領域の広がりに適切な大きさに拡大することができる。このような適切な大きさへの拡大により配線率を向上させることができる。この段数の予測は部品の装着座標を必要としないので、部品の位置決めを行わずとも、配置の前段階で配線領域を予め予測しておくことができる。
【図面の簡単な説明】
【図1】第1実施形態におけるCADシステムの構成図である。
【図2】(a)部品情報の一例を示す図である。
(b)部品形状情報の一例を示す図である。
(c)接続情報の一例を示す図である。
(d)配線情報の一例を示す図である。
(e)禁止域情報の一例を示す図である。
各種設計情報のデータ構造を示す図である。
【図3】(a)部品辺情報の一例を示す図である。
(b)配線方法情報の一例を示す図である。
(c)設計基準情報の一例を示す図である。
【図4】(a)〜(h)実装設計アプリケ−ションプログラム7に含まれるルータがどのように設計基準情報を参照して引き出し配線を行うかを示す図である。
【図5】(a)2段引き出しパターンを説明するための説明図である。
(b)2段引き出しパターンにより、ビア−ビア間の間隔がどのように広がるかを説明するための説明図である。
(c)n+2段引き出しパターンを説明するための説明図である。
(d)n+2段引き出しパターンにより、ビア−配線箔間の間隔がどのように広がるかを説明するための説明図である。
(e)引き出しパタンの段数が増えると、配線領域がどのように広がるかを示す説明図である。
【図6】(a)1段引き出しパターンを説明するための説明図である。
(b)予測拡大部3が1段引き出しパターンと予測結果を下した場合、予測拡大部3が部品の大きさをどれだけ拡大するかを説明するための説明図である。
(c)2段引き出しパターンを説明するための説明図である。
(d)2段引き出しパターンと予測結果を下した場合、予測拡大部3が部品の大きさをどれだけ拡大するかを説明するための説明図である。
(e)3段引き出しパターンを説明するための説明図である。
(f)3段引き出しパターンと予測結果を下した場合、予測拡大部3が部品の大きさをどれだけ拡大するかを説明するための説明図である。
【図7】(a)4段引き出しパターンを説明するための説明図である。
(b)予測拡大部3が4段引き出しパターンと予測結果を下した場合、予測拡大部3が部品の大きさをどれだけ拡大するかを説明するための説明図である。
(c)四側面に4段引き出しパターンが表れた部品を示す説明図である。
(d)予測拡大部3が4側面に4段引き出しパターンが表れると予測結果を下した場合、予測拡大部3が部品の大きさをどれだけ拡大するかを説明するための説明図である。
【図8】実装設計アプリケ−ションプログラム7のメインフロ−チャ−トである。
【図9】図8のフロ−チャ−トにおける、引き出しパタンの段数予測の手順と、拡大対象の拡大手順とを示したフロ−チャ−トである。
【図10】引き出し辺のピンの総数を計数する手順を示すフロ−チャ−トである。
【図11】第1実施形態における設計対象群の内容を示す図である。
【図12】(a)終了判定基準情報の一例を示す図である。
(b)拡大方法情報の一例を示す図である。
【図13】(a)部品条件と、部品形状情報とがどのように対応づけられているかを示す図である。
(b)部品条件と、部品情報とがどのように対応づけられているかを示す図である。
【図14】第2実施形態におけるCADシステムの構成を示す図である。
【図15】第2実施形態における実装設計アプリケ−ションプログラム7の変更点を示すフロ−チャ−トである。
【図16】(a)パッケージ種がQFPの部品1301に、どのようにピンが取り付けられているかを示す図である。
(b)パッケージ種がPGAの部品1302に、どのようにピンが取り付けられているかを示す図である。
(c)パッケージ種がQFPの部品1301が、どのように拡大されるかを示す図である。
(d)パッケージ種がPGAの部品1302が、どのように拡大されるかを示を示す図である。
【図17】(a)次元が異なる複数の部品条件により、部品1301がどのように拡大されるかを示す図である。
(b)次元が異なる複数の部品条件により、部品1302がどのように拡大されるかを示す図である。
【図18】第3実施形態における拡大方法情報の一例を示す図である。
【図19】第3実施形態における実装設計アプリケ−ションプログラム7の変更点を示すフロ−チャ−トである。
【図20】第4実施形態における部品対部品オフセットの一例を示す図である。
【図21】第4実施形態における設計対象群の一例を示す図である。
【図22】第5実施形態における実装設計アプリケ−ションプログラム7の変更点を示すフロ−チャ−トである。
【図23】(a)〜(d)配置済み部品の大きさがどのように拡大されてゆくかを示す図である。
【図24】第5実施形態における部品間最小ピッチを示す図である。
【図25】第5実施形態における実装設計アプリケ−ションプログラム7の変更点を示すフロ−チャ−トである。
【図26】部品2401の拡大前後の変化を示す図である。
【図27】(a)第5実施形態における接続情報の一例を示す図である。
(b)部品間最小ピッチが付与された接続情報を示す図である。
【図28】第5実施形態における設計対象群を示す図である。
【図29】(a)〜(f)配置済み部品の大きさが変化することにより、各部品の装着位置がどう変わるかを示す図である。
【図30】第6実施形態における実装設計アプリケ−ションプログラム7の変更点を示すフロ−チャ−トである。
【図31】(a)第5実施形態における設計対象群に含まれる部品情報群を示す図である。
(b)第5実施形態における設計対象群に含まれる配線情報群を示す図である。
(c)第5実施形態における設計対象群に含まれる接続情報群を示す図である。
【図32】第6実施形態におけるネット対部品オフセットの一例を示す図である。
【図33】(a)配線情報に含まれる構成点座標間に形成される配線領域を示す図である。
(b)配線情報に含まれる構成点座標間に形成される拡大配線領域を示す図である。
【図34】(a)部品2803が配置対象になった場合に記憶装置2から読み出されるネット対部品オフセットを示す図である。
(b)(a)で読み出されたネット対部品オフセットによって、配線領域が拡大される様子を示す図である。
(c)(b)で拡大された拡大配線領域が、禁止域領域として記憶された様子を示す図である。
(d)最終的に部品2803の装着位置がどこに決定されたかを示す図である。
【図35】基板対部品オフセット巾の一例を示す図である。
【図36】第7実施形態における実装設計アプリケ−ションプログラム7の変更点を示すフロ−チャ−トである。
【図37】(a)〜(c)基板対部品オフセット巾が参照されて、部品3203の装着位置が決定される様子を示す図である。
【図38】(a)第1従来技術において、ピン配列方向とトラック方向とが直交している様子を示す図である。
(b)第1従来技術において、ピン配列方向とトラック方向とが並行している様子を示す図である。
【図39】(a)ルータによって、ビア間のクリアランス確保がどのように行われるかを示す図である。
(b)ルータによって、ビア−配線箔間のクリアランス確保がどのように行われるかを示す図である。
【符号の説明】
1 高解像度ディスプレィ
2 記憶装置
3 予測拡大部
4 入力操作部
5 出力部
6 マイクロプロセッサ
7 アプリケ−ションプログラム
Claims (1)
- 基板における部品の装着位置を設計する実装設計装置であって、
設計規約として、ビア間の許容最小ピッチ、ビアと箔との許容最小ピッチ、ビアと箔との許容最小間隔、ビアとビアとの許容最小間隔、ピンと箔との許容最小間隔、ビアとピンとの許容最小間隔とを予め記憶する記憶手段と、
装着位置を決定すべき部品に取り付けられているピンのうち、ビアへと配線が引き出されるピンを部品辺毎に特定する特定手段と、
特定された部品辺のピン間のピン間隔と前記記憶手段に記憶されている前記設計規約の情報とに基づいて、前記特定された部品辺毎に取り付けられているピンからビアへの配線引き出し段数n(nは1以上の整数)を部品辺毎に予測する予測手段と、
前記予測手段の出力に基づき、当該部品辺に対する配線領域を算出し、前記部品の部品領域を前記配線領域を含む領域として各部品辺毎に拡大する拡大手段と、
前記拡大手段で各部品辺毎に拡大された前記部品領域で、当該部品の基板に対する装着位置を決定する決定手段とを備え、
前記予測手段は、
前記ピン間隔が前記ビア間の許容最小ピッチより広い場合は、前記nとして1を出力し、
前記ピン間隔が前記ビア間の許容最小ピッチより狭く、かつ、前記ビアと箔との許容最小ピッチより広い場合は、前記nとして2を出力し、
前記ピン間隔が前記ビア間の許容最小ピッチより狭く、かつ、前記ビアと箔との許容最小ピッチより狭い場合は、前記nとして前記部品辺毎に特定されたピン数Sを用いた以下の算出式で算出された結果を出力し、
n=(S−1)/2+2 (Sが奇数の時)
n=S/2+2 (Sが偶数の時)
前記拡大手段は、前記予測手段から出力される前記nの値と、以下の式とに基づいて、前記特定されたピンを有する部品辺と前記特定されたピンを有さない部品辺とに対して、それぞれオフセット巾を算出し、対象部品辺毎に配線領域として付加することを特徴とする実装設計装置。
前記特定されたピンを有する部品辺に付与するオフセット巾 = v0+(n−1) * v1
前記特定されたピンを有さない部品辺に付与するオフセット巾 = h1 * (n−2)
v0:ピンからビアまでの間隔の基本長
v1:ビアとビアとの間隔
h1: 1 つの段で配線を折り曲げる長さ
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP28699296A JP3898787B2 (ja) | 1996-10-29 | 1996-10-29 | 実装設計装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP28699296A JP3898787B2 (ja) | 1996-10-29 | 1996-10-29 | 実装設計装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH10134098A JPH10134098A (ja) | 1998-05-22 |
JP3898787B2 true JP3898787B2 (ja) | 2007-03-28 |
Family
ID=17711624
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP28699296A Expired - Fee Related JP3898787B2 (ja) | 1996-10-29 | 1996-10-29 | 実装設計装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3898787B2 (ja) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7256354B2 (en) | 2000-06-19 | 2007-08-14 | Wyrzykowska Aneta O | Technique for reducing the number of layers in a multilayer circuit board |
US7259336B2 (en) | 2000-06-19 | 2007-08-21 | Nortel Networks Limited | Technique for improving power and ground flooding |
US7281326B1 (en) | 2000-06-19 | 2007-10-16 | Nortel Network Limited | Technique for routing conductive traces between a plurality of electronic components of a multilayer signal routing device |
JP2008009776A (ja) * | 2006-06-29 | 2008-01-17 | Matsushita Electric Ind Co Ltd | 半導体集積回路の設計方法、設計装置、半導体集積回路システム、半導体集積回路実装基板、パッケージ、半導体集積回路 |
WO2009037738A1 (ja) | 2007-09-18 | 2009-03-26 | Fujitsu Limited | 引出し配線方法、引出し配線プログラムおよび引出し配線装置 |
-
1996
- 1996-10-29 JP JP28699296A patent/JP3898787B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JPH10134098A (ja) | 1998-05-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6446239B1 (en) | Method and apparatus for optimizing electronic design | |
JP3192057B2 (ja) | 配線プログラム生成方法及びその装置 | |
US6449761B1 (en) | Method and apparatus for providing multiple electronic design solutions | |
US6996440B2 (en) | Method for optimization of an order of component mounting, apparatus using the same, and mounter | |
US6499134B1 (en) | Method of assigning integrated circuit I/O signals in an integrated circuit package | |
US6385758B1 (en) | System and method for compacting a graphic layout | |
US5838583A (en) | Optimized placement and routing of datapaths | |
US6957407B2 (en) | Method and apparatus for detail routing using obstacle carving around terminals | |
JPH03188650A (ja) | 配線経路処理方法、配線経路処理システム、及び半導体集積回路 | |
JPH08227428A (ja) | プリント基板cad装置 | |
US7590963B2 (en) | Integrating multiple electronic design applications | |
US5790414A (en) | Automatic routing method and automatic routing apparatus | |
US5515293A (en) | Method and apparatus for generating a linked data structure for integrated circuit layout | |
JP2601586B2 (ja) | 配置要素の配置配線方法 | |
US6820046B1 (en) | System for electrically modeling an electronic structure and method of operation | |
JP3424997B2 (ja) | 回路設計装置 | |
JP3898787B2 (ja) | 実装設計装置 | |
US7530038B2 (en) | Method and placement tool for designing the layout of an electronic circuit | |
US7962884B2 (en) | Floorplanning apparatus and computer readable recording medium storing floorplanning program | |
JPH1022695A (ja) | 回路基板への素子の実装制御方法及び装置 | |
US6766500B1 (en) | Multiple pass optimization for automatic electronic circuit placement | |
JP6488911B2 (ja) | 回路設計支援プログラム、回路設計支援方法、および情報処理装置 | |
US20010032222A1 (en) | System, method and computer accessible storage medium, for creating and editing structured parts list | |
US6505336B1 (en) | Channel router with buffer insertion | |
JP3234378B2 (ja) | 配線基板cad装置と配線基板設計方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20060808 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20061010 |
|
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: 20061212 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20061222 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
LAPS | Cancellation because of no payment of annual fees |