(57)【特許請求の範囲】
【請求項１】
プリント板配線後の回路変更処理を行うプリント配線板の改造パターン接続認識方法において、
各接続要素の物理状態を示すパターン入力情報テーブルに基づいて、所定の接続要素を始点として該接続要素の接続順を示す接続向き番地、及び該接続向き番地に基づいて設定され該接続順とは逆向きの接続順を示した逆接続向き番地を有し該接続要素の物理的接続を認識させるための物理接続テーブルを各ネットに対応して作成することを特徴としたプリント配線板の改造パターン接続認識方法。
【請求項２】
請求項１において、
該物理接続テーブルの該接続向き番地及び該逆接続向き番地を、変更後の回路に対応する接続向き番地及び逆接続向き番地に変更して物理的接続を認識することを特徴としたプリント配線板の改造パターン接続認識方法。
【請求項３】
請求項１において、
該接続要素がランド及びラインからなり、該ランドがビア、マニュアルランド、及び該プリント配線板上に搭載されていない部品用の外部ランドを含み、該ラインが、該プリント配線板上の該接続要素間、該外部ランドと該接続要素との間及び該外部ランド間を接続する布線を含むことを特徴としたプリント配線板の改造パターン接続認識方法。
【請求項４】
請求項３において、
該所定の接続要素がランドであり、該物理接続テーブルで設定された該始点のランドから別のランドへの接続順のみを逆にして該別のランドを始点とした該接続向き番地を設定することを特徴としたプリント配線板の改造パターン接続認識方法。
【請求項５】
請求項３において、
接続されていないことを示す該逆接続向き番地が認識されたラインが、他の接続要素と物理的に接続されているか否かを該パターン入力情報テーブルに基づいて判定し、接続されているとき該ネットがループパターンを含むと認識することを特徴としたプリント配線板の改造パターン接続認識方法。
【請求項６】
請求項３において、
該ラインの切断を、一時的な断線ラインと見做して接続認識し、該布線を該要素間のラインと見做して接続認識することを特徴としたプリント配線板の改造パターン接続認識方法。
【請求項７】
請求項３において、
２つのネットを該布線で接続して１つのネットとした物理接続テーブルが、２つのネットの物理接続テーブルと該布線の物理接続テーブルを合成して作成され、該合成した物理接続テーブルの該接続向き番地及び該逆接続向き番地が、元の物理接続テーブルの該接続向き番地及び該逆接続向き番地に基づき設定されることを特徴としたプリント配線板の改造パターン接続認識方法。
【請求項８】
請求項３において、
該接続要素がさらに広面積パターンを含み、該広面積パターンをその外周ライン、打抜ライン、及び該外周ラインと該打抜ラインとを接続する架空ラインのいずれかで構成されていると見倣すことを特徴としたプリント配線板の改造パターン接続認識方法。
【請求項９】
請求項８において、
該広面積パターンに直接接続した又は含まれるランドを、該外周ライン、該打抜ライン、該架空ライン又はこれらのラインのいずれかに直接接続されたランドに直接的又は間接的に別の架空ラインで接続されていると見倣すことを特徴としたプリント配線板の改造パターン接続認識方法。
【請求項１０】
請求項８において、
該広面積パターンの切断を、該外周ライン及び該打抜ラインの少なくともいずれかの切断と別の架空ラインの追加とを行うことにより認識することを特徴としたプリント配線板の改造パターン接続認識方法。
【請求項１１】
請求項９において、
該広面積パターンからの該広面積パターンに直接接続した又は含まれるランドの分離を、該外周ライン、該打抜ライン、及び該別の架空ラインの少なくともいずれかの切断を行うことにより認識することを特徴としたプリント配線板の改造パターン接続認識方法。
【請求項１２】
請求項３において、
該ランドの切断を、そのランドの外周ラインの切断と架空ラインの追加とを行うことにより認識することを特徴としたプリント配線板の改造パターン接続認識方法。
【請求項１３】
請求項８において、
回路変更で切断するラインに切断の優先順位を持たせることを特徴としたプリント配線板の改造パターン接続認識方法。
【請求項１４】
請求項８において、
該ネットが、MST配線、一筆書配線又は接続順指定の一筆書き配線の信号パターン又はループパターンを含む広面積接続パターンの属性を有し、該属性が該広面積接続パターンのとき接続要素一意決定法を用いて該接続要素の接続順を決定することを特徴としたプリント配線板の改造パターン接続認識方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明はプリント配線板の改造パターン接続認識方法に関し、特にプリント板配線後の回路変更処理を物理的な切断及び布線等で行う際のプリント配線板の改造パターン接続を認識する方法に関するものである。
【０００２】
プリント配線板設計支援装置等でパターン設計されたプリント配線基板に実現した回路が変更された場合、パターンの切断及び布線（ジャンパ線）の追加、さらに電気部品の削除又は追加を行い、変更後の回路に該プリント配線板を対応させることが行われる。
このようなプリント配線板のパターンの切断及び布線の追加位置を決定する作業は、回路が複雑化しパターンが高密度化するほど時間がかかり且つ誤りが発生し易い為、プリント配線板の改造パターン接続認識方法を実現することが求められている。
【０００３】
【従来の技術】
図27は、従来の改造パターン接続認識方法(1)に用いられる回路情報及びパターン情報例を示している。
【０００４】
同図(1)は、変更前の回路情報１版を示し、接続要素であるランドのグループ（A,B,C）及び（D,E)にそれぞれネット番号1,2が付けられている。
設計支援装置（図示せず）は、回路情報１版に基づきネット番号１のランドA,B,Cを、ランドA、ラインL1、ビアV1、ラインL2、ランドB、ラインL3、及びランドCの順で接続し、ネット番号２のランドD,EをランドD、ラインL4、ビアV2、ラインL5、及びランドEの順に接続するパターン設計を行い、パターン情報１版として出力する。
【０００５】
パターン情報１版は、ランド（ビア）情報(A,B,C,D,E,V1,V2)、ライン情報(L1,…,L5）及びネット情報で構成され、ネット情報は、ネット番号1,2毎に、ランド（回路情報１版のネット番号1,2毎のランドと同一）と、このランドを接続する為のビア及びラインとで構成されている。
【０００６】
同図(2)は、同図(1)の回路の接続をネット番号１においてランドA,BがランドCの代わりに追加したランドXに接続する回路変更を行った場合の回路情報及びパターン情報を示している。
【０００７】
すなわち、回路情報２版は、回路情報１版のネット番号１に相当するネット番号11のランドがランドA,B,Xに変更され、ネット番号２に相当するネット番号12のランドD,Eには変更がない。
そして、パターン情報２版においては、ランド情報にランドXが追加され、ライン情報に変更がなく、ネット情報におけるネット番号11の接続要素にはランドCとラインL3が削除されてランドXが追加され、ネット番号12の接続要素は変更がない。
【０００８】
同図(3)は、同図(1)及び(2)をファイルのイメージで示しており、回路情報１版ファイルF1からパターン情報１版ファイルF11が作成され、回路変更により回路情報２版ファイルF2が作成され、この回路情報２版ファイルF2からパターン情報２版ファイルF21が作成される。
そして、パターン情報１版ファイルF11とパターン情報２版ファイルF21を比較して、物理的に異なる部分を求めてパターンの改造を行う。
この方法は、回路変更毎に回路情報に対応したパターン情報をファイルとして保有しなければならず必要とする記憶容量が大きくなる。
【０００９】
図28は、従来の改造パターン接続認識方法(2)に用いられる回路情報及びパターン情報例を示しており、この例では図27に示した例と回路情報１版ファイルF1、パターン情報１版ファイルF11及び回路情報２版ファイルF2は同じであるが、回路変更後のパターン情報としては、同図(2)に示すようにランドBとランドCを接続していたラインL2がランドBに接続されていないものとしている。
【００１０】
従って、変更パターン情報としてパターン情報２版ファイルを使用しないため必要な記憶容量が少なくて済むが、ダミー化部分の可否がより不明となるとともに変更回数が多くなるほど必要とする記憶容量も増加する。
【００１１】
さらに、この方法では、パターン情報にショートがないことを前提としており、擬似的にラインの要素を切り離す必要があるため、ループパターンや広面積パターンにおいては、最適な切り離し区間が検出できない。
【００１２】
図29は、従来の改造パターン接続認識方法(1)、(2)におけるパターンリンクテーブル（以後、PTLNKテーブルと略称する）10、ランドテーブル（以後、LANDテーブルと略称する）20及びラインテーブル（以後、LINEテーブルと略称する）30のデータ構造例を示しており、この例ではパターン情報は、接続要素（ランド、ライン等）の接続を認識するためPTLNKテーブル10、LANDテーブル20及びLINEテーブル30で構成されている。
【００１３】
PTLNKテーブル10の配列要素11,12,…は、図27に示したネット番号1,2,…に対応しており、このPTLNK配列要素11,12,…は接続すべきLANDテーブル20の中のランド及びLINEテーブル30の中のラインをそれぞれ指し示すランドリンクポインタ（以後、LNDLNKPポインタと略称する）及びラインリンクポインタ（以後、LINLNKPポインタと略称する）から成っている。
【００１４】
LANDテーブル20及びLINEテーブル30は、回路全体の接続要素であるランド及びラインに対応する配列要素でそれぞれ構成されている。LANDテーブル20のLAND配列要素21〜27,…は、ランド（又はビア）A,E,V1,V2,…及びこのランドに接続されるべきランドの配列要素を指し示すランドリンクポインタ（以後、PTLNKテーブルのLNDLNKPポインタと同じ符号で略称する）から成る。LINEテーブル30のLINE配列要素31〜35,…は、ラインL1,…,L5,…及びこのラインに接続されるべきラインの配列要素を指し示すラインリンクポインタ（以後、同様にLINLNKPポインタと略称する）から成っている。
【００１５】
例えば、PTLNKテーブル10の配列要素11のLNDLNKPポインタが、LANDテーブル20の配列要素21を指し示し、この配列要素21のLNDLNKPポインタは配列要素22を指し示している。以下、同様に順次、配列要素23及び26が指し示され、配列要素26のLNDLNKPポインタが“０”に設定されているため、ここでポインタによるランドのリンクが終了する。
【００１６】
また、PTLNKテーブル10の配列要素11のLINLNKPポインタは、LINEテーブル30の配列要素31を指し示し、この配列要素31のLINLNKPポインタは配列要素32を指し示し、配列要素32のLINLNKPポインタは配列要素33を指し示し、配列要素33のLINLNKPポインタには“０”が設定されているためここでポインタによるラインのリンクが終了する。
【００１７】
従って、PTLNK配列要素11が指し示す全てのランド及びラインは、ランドA,B,C，ビアV1及びラインL1,L2,L3である。
同様にして、PTLNKテーブル10の配列要素12のLNDLNKPポインタ及びLINLNKPポインタによって指し示された全てのランド及びラインは、ランドD,E、ビアV2、及びラインL4,L5である。
【００１８】
すなわち、PTLNK配列要素11に対応した番号１のネットにはランドA,B,C，ビアV1及びラインL1,L2,L3が属し、PTLNK配列要素11に対応した番号２のネットにはランドD,E，ビアV2及びラインL4,L5が属していることを示したことになる。
【００１９】
図30は、ネットの物理的な接続を認識するための従来の物理接続テーブル（以後、PLINKテーブルと称することがある）50の実施例を示している。
同図(1)は、例えばネット番号１の接続要素であるランドA,B,C,D、ビアV1及びラインL1,L2,L3,L4,L5,L6のパターン配線板上の配置を示しており、ランドA，ビアV1，ランドB,Cは、ラインL1,L2,L4で順次接続され、さらにランドDがラインL3でランドBに接続されるとともにラインL6,L5でランドCに接続されている。
【００２０】
同図(2)は、同図(1)のネットの物理的な接続を認識するための順方向接続向き番地（以後、KP番地と称する）を持つPLINKテーブル50例を示している。
すなわち、各配列番地１〜11に対応して接続要素であるランドA〜D，ビアV1，ラインL1,…,L6が設定され、これらの接続要素に対応するKP番地が設定されている。
【００２１】
例えばランドAを基準（始点）としたとき、ランドAのKP番地は“-1”に設定され、このランドAに接続されるラインL1のKP番地はランドAの配列番地である“１”に設定され、このラインL1に接続されるビアV1のKP番地がラインL1の配列番地“６”に設定されている。
以下同様にして、ラインL2，ランドB，ラインL4，ランドC，ラインL5のKP番地がそれぞれ5,7,2,9,3に設定され、さらに、ラインL3,ランドD,ラインL6のKP番地が2,8,4に設定される。
【００２２】
従って、基準ランドAからその配列番地１と同じ値のKP番地を持つラインL1を検索し、このラインL1の配列番地６と同じKP番地を持つビアV1を検索するということを繰り返すことにより、ランドAに物理的に接続された接続要素を順次検索して認識することが可能となる。
【００２３】
【発明が解決しようとする課題】
このような従来のプリント配線板の改造パターン接続認識方法においては、例えば図30(1)において、ラインL5のKP番地が“３”で有るので、ラインL5がランドCに接続されていることを認識し、ラインL6のKP番地が“４”であることからラインL6がランドDに接続されていることを認識することはできる。
【００２４】
しかしながら、ラインL5及びL6が接続されていることは認識できない。これは、ランドB，ラインL4，ランドC，ラインL5,L6，ランドD及びラインL3がループパターンを形成していることに起因している。
【００２５】
例えば、ランドDをランドA,B,Cから分離する回路変更を行う場合、PLINKテーブル50からランドDのKP番地“８”から配列番地“８”のラインL3を切断すればよいいことが分かる。しかしながらランドD、ラインL6,L5、及びランドCの接続は認識されていない。
【００２６】
この接続を認識するためには、接続の順序を変更してラインL5,L6の接続を認識するPLINKテーブル50を作成する必要があった。
このようなループパターンが多く接続要素が多い場合、座標参照によるKP番地の再設定に時間がかかるという問題があった。
【００２７】
また、従来の方法においては、広面積パターンを図形情報として扱っていたため、広面積パターンの切断は、図形演算により行うため図形データが多くなるに従い処理速度が遅くなるという問題もあった。
【００２８】
従って本発明は、プリント板配線後の回路変更処理を行うプリント配線板の改造パターン接続認識方法において、必要とする記憶容量が少なく、ループパターンや広面積パターンを含めた接続要素の物理的な接続を高速で認識して回路変更処理を行うことを課題とする。
【００２９】
【課題を解決するための手段】
上記の課題を解決するため、請求項１に係る本発明のプリント配線板の改造パターン接続認識方法は、各接続要素の物理状態を示すパターン入力情報テーブルに基づいて、所定の接続要素を始点として該接続要素の接続順を示す接続向き番地（KP番地）、及び該接続向き番地に基づいて設定され該接続順とは逆向きの接続順を示した逆接続向き番地(NKP番地）を有し該接続要素の物理的接続を認識させるための物理接続テーブル(PLINKテーブル）を各ネットに対応して作成することを特徴としている。
【００３０】
すなわち、所定の接続要素を基準要素としこの基準要素を始点とした接続要素の接続順を示すKP番地を、パターン入力情報テーブルが示す各接続要素の物理状態に基づいてPLINKテーブルに設定する。さらに、KP番地の接続順とは逆向きの接続順を示したNKP番地をKP番地に基づいてPLINKテーブルに設定することができる。
この結果、設定されたKP番地及びNKP番地に基づいてネットの接続要素の物理的接続状態を認識することを、少ない記憶容量で高速に行うことが可能となる。
【００３１】
また、請求項２に係る本発明において、該物理接続テーブルの該接続向き番地及び該逆接続向き番地を、変更後の回路に対応する接続向き番地及び逆接続向き番地に変更して物理的接続を認識することができる。
【００３２】
すなわち、回路変更後の接続要素の物理的接続を、回路変更前のKP番地及びNKP番地に基づき変更後のKP番地及びNKP番地を設定したPLINKテーブルを作成して、認識することができる。
この結果、接続要素の物理的な接続を高速で認識して回路変更処理を行うことことが可能となる。
【００３３】
また、請求項３に係る本発明において、該接続要素がランド及びラインからなり、該ランドにビア、マニュアルランド、及び該プリント配線板上に搭載されていない部品用の外部ランドを含ませ、該ラインに、該プリント配線板上の該接続要素間、該外部ランドと該接続要素との間及び該外部ランド間を接続する布線を含ませることができる。
【００３４】
すなわち、部品ランドに加えて、ビア、及びマニュアルランドの他にさらに配線板上にない外部ランドも含めてランドとして扱う。また、通常のラインに加えて配線板上の接続要素間、外部ランド間又は接続要素と外部ランドとの間等を接続する布線（ジャンパ線）も含めてラインとして扱う。そしてランド及びラインを接続要素として統一して扱うことができる。
【００３５】
この結果、接続要素である部品ランド、ビア、マニュアルランド、外部ランド、ライン、及び布線間の物理的な接続を高速で認識することが可能となる
【００３６】
また、請求項４に係る本発明において、該所定の接続要素がランドであり、該物理接続テーブルで設定された該始点のランドから別のランドへの接続順のみを逆にして該別のランドを始点とした該接続向き番地を設定することができる。
【００３７】
すなわち、別のランドを基準ランドとしたKP番地を、始点のランドから別のランドにへの接続順のみを逆にしてKP番地を設定し直し、他のKP番地は変更しないことで設定する。
この結果、基準ランドを変更したKP番地を高速で求める（塗り替える）ことが可能となる。
【００３８】
また、請求項５に係る本発明において、接続されていないことを示す該逆接続向き番地が認識されたラインが、他の接続要素と物理的に接続されているか否かを該パターン入力情報テーブルに基づいて判定し、接続されているとき該ネットがループパターンを含むと認識することができる。
【００３９】
すなわち、接続向き番地及び逆接続向き番地は接続順のみを示しており、ネットの接続要素の全ての接続状態を示していない。そこで、他の接続要素に接続されていないと認識されたラインが、実際のネットでは接続されているか否かを該パターン入力情報テーブルに基づいて判定し、接続されているとき該ネットがループパターンを含むと認識する。
【００４０】
従って、接続要素に接続されていないと認識されたラインのみの接続を確認することで、ネットがループパターンを含むか否かを判定することが可能となる。この結果、高速でループパターンを認識することが可能となる。
【００４１】
また、請求項６に係る本発明において、該ラインの切断を、一時的な断線ラインと見做して接続認識し、該布線を該接続要素間のラインと見做して接続認識することができる。
すなわち、回路変更を行う際、一時的にラインを断線していると見倣し、追加した布線をラインと見倣して、回路変更が正確に行われたか確認することが可能である。この結果、回路変更処理を高速で行うことが可能となる。
【００４２】
また、請求項７に係る本発明において、２つのネットを該布線で接続して１つのネットとした物理接続テーブルを、２つのネットの物理接続テーブルと該布線の物理接続テーブルを合成して作成し、該合成した物理接続テーブルの該接続向き番地及び該逆接続向き番地を、元の物理接続テーブルの該接続向き番地及び該逆接続向き番地に基づき設定することが可能である。
【００４３】
すなわち、２つのネットの物理接続テーブルと、２つのネットを接続する布線のみの物理接続テーブルを合成した物理接続テーブルを作成し、それを２つのネットを該布線で接続したネットの物理接続テーブルとする。
そして、元の物理接続テーブルの接続向き番地及び逆接続向き番地に基づき接続したネットの物理接続テーブルの接続向き番地及び逆接続向き番地を設定することができる。
【００４４】
この結果、結合したネットの物理接続テーブルを高速で設定して結合した接続要素の物理的な接続状態を認識することが可能となる。
【００４５】
また、請求項８に係る本発明において、該接続要素がさらに広面積パターンを含み、該広面積パターンをその外周ライン、打抜ライン、及び該外周ラインと該打抜ラインとを接続する架空ラインのいずれかで構成されていると見倣すことが可能である。
【００４６】
すなわち、広面積パターンを図形情報として認識せずに、外周ライン、打抜ライン、及び該外周ラインと該打抜ラインとを接続する架空ラインのみの接続要素として認識することができる。
この結果、広面積パターンを上記の接続要素に含まれるラインとして統一的に扱うことが可能となり、広面積パターンを含めた接続要素の物理的な接続を高速で認識することが可能となる。
【００４７】
また、請求項９に係る本発明において、該広面積パターンに直接接続した又は含まれるランドを、該外周ライン、該打抜ライン、該架空ライン又はこれらのラインのいずれかに直接接続されたランドに直接的又は間接的に別の架空ラインで接続されていると見倣すことをができる。
【００４８】
すなわち、広面積パターンを外周ライン、打ち抜きライン及び架空ライン（以後、これらのラインを広面積接続パターンと称することがある）と見倣した場合、該広面積パターンに直接接続されているか又は含まれるランド（以後、広面積パターン内ランドと称することがある）は該広面積接続パターンと物理的に接続されていない状態になる可能性がある。
【００４９】
そこで、該広面積パターン内ランドを該広面積接続パターンと架空ラインで直接接続するか、又は直接接続された広面積パターン内ランドと架空ラインで接続して広面積接続パターンに間接的に接続することができる。
この結果、広面積パターン内ランドを含めた接続要素の物理的な接続を高速で認識することが可能となる。
【００５０】
また、請求項10に係る本発明において、該広面積パターンの切断を、該外周ライン及び該打抜ラインの少なくともいずれかの切断と別の架空ラインの追加とを行うことにより認識することが可能である。
【００５１】
すなわち、広面積パターンを図形情報として認識して切断した場合、その演算処理に時間がかかる。そこで、切断された広面積パターンを、その外周ライン、打抜ライン及び架空ラインの少なくともいずれかの切断ライン及び追加された別の架空ラインで構成されていると見倣すことができる。
この結果、切断された広面積パターンを含めた接続要素の物理的な接続を高速で認識することが可能となる。
【００５２】
また、請求項11に係る本発明において、該広面積パターンからの該広面積パターンに直接接続した又は含まれるランドの分離を、該外周ライン、該打抜ライン、及び該別の架空ラインの少なくともいずれかの切断を行うことにより認識することが可能である。
【００５３】
すなわち、まず、広面積パターン及びこれに直接接続した又は含まれるランドを、広面積接続パターンと見倣す。そして、ランドに接続されたラインを切断することにより広面積パターンから該ランドを分離することができる。
この結果、広面積パターンに直接接続された又は含まれるランドの分離を高速で認識することが可能となる。
【００５４】
また、請求項12に係る本発明において、該ランドの切断を、そのランドの外周ラインの切断と架空ラインの追加とを行うことにより認識することができる。
【００５５】
すなわち、広面積パターンと同様にランドの切断は、ランドを図形情報として認識する必要がある。従って、その演算処理に時間がかかる。
そこで、切断されたランドを、該ランドの切断された外周ラインと追加された架空ラインとで構成されていると見倣す。
この結果、切断されたランドを含めた接続要素の物理的な接続を高速で認識することが可能となる。
【００５６】
また、請求項13に係る本発明において、回路変更で切断するラインに切断の優先順位を持たせることが可能である。
【００５７】
すなわち、図形情報として処理する広面積パターンを含む接続要素を物理的に切断する場合、広面積パターンの認識を優先するため、切断位置の優先順位が考慮出来ない。
そこで、広面積パターンを広面積接続パターン（ラインの集まり）と見倣す。この結果、広面積接続パターンを含めたラインの切断に優先順位を付けることが可能となり、適切な切断ラインを指定することができることとなる。
【００５８】
さらに、請求項14に係る本発明において、該ネットが、MST配線、一筆書配線又は接続順指定の一筆書き配線の信号パターン又はループパターンを含む広面積接続パターンの属性を有し、該属性が該広面積接続パターンのとき接続要素一意決定法を用いて該接続要素の接続順を決定することが可能である。
【００５９】
すなわち、ネットをMST配線、一筆書配線又は接続順指定の一筆書き配線の信号パターン及びループパターンを含む広面積接続パターンのいずれかのパターンに分類する。そして、広面積接続パターンのとき、ネットを接続要素一意決定法で接続順を決定しKP番地及びNKP番地を設定する。
この結果、ループパターンを含む広面積接続パターンの物理的な接続を高速で認識することが可能となる。
【００６０】
【発明の実施の形態】
図１は、本発明のプリント配線板の改造パターン接続認識方法に使用されるデータ構造の実施例を示している。
この実施例では、データ構造が、PTLNKテーブル10、ランドワークエリア(以後、WLNDテーブルと称する)20、ラインワークエリア(以後、WLINテーブルと称する)30、パターン入力情報テーブル40及びPLINKテーブル50で構成されている。
【００６１】
PTLNKテーブル10、WLNDテーブル20及びWLINテーブル30の基本的構成は、図26で述べたPTLNKテーブル10、LANDテーブル20及びLINEテーブル30と同じである。
PTLNKテーブル10の配列要素11,12,…は、各ネットに対応しており、各ネットに属する接続要素であるランド及びラインは、PTLNK配列要素11,12,…、WLNDテーブル20の配列要素21,…26、及びWLINテーブル30の配列要素31,…,36に含まれるLNDLNKPポインタ又はLINLNKPポインタによって順次指定されている。
【００６２】
パターン入力情報テーブル40は、ランド要素411,…で構成される部品ランド(以後、PLNDランドと称する)41、ランド要素421,…で構成されるマニュアルランド(以後、MLNDランドと称する)42、ランド要素431,…で構成されるビア(以後、VLNDランドと称する)43、及びランド要素441,…で構成される外部ランド(以後、EC-NPLNDランドと称する)44を含んでいる。
【００６３】
さらに、テーブル40は、ライン要素451,…で構成されるライン（LINEラインと称する）45、ライン要素461,…で構成される布線（以後、EC-JMPER布線と称する）46及びライン要素471,…で構成される新規布線（以後、NEW-JMPER布線と称する）47を含んでいる。
【００６４】
WLNDテーブル20の各配列要素21,…,26は、さらにランドポインタ(以後、LNDPポインタと称する）を含んでいる。そして、各LNDPポインタは、ランド要素411,…,421,…,431,…,441…のいずれか一つを指し示している。
同様に、WLINテーブル30の各配列要素31,…,36は、ラインポインタ（以後、LINEPポインタと称する）を含んでいる。各LINEPポインタは、ライン要素451,…,461,…のいずれか一つを指し示している。
【００６５】
パターン入力情報テーブル40は、接続要素であるPLNDランド41、MLNDランド42、VLNDランド43、EC-NPLNDランド44、LINEライン45、EC-JMPER布線46及びNEW-JMPER布線47の物理的情報を含めた情報である。
そして、PLNDランド41、MLNDランド42、VLNDランド43及びLINEライン45はEPFは初版情報であり、EC-NPLNDランド44及びEC-JMPER布線46はEC情報であり（図中の網掛け部参照）、NEW-JMPER布線47は改造生成情報である。
【００６６】
PLNDランド41及びEC-NPLNDランド44の情報は、部品名、ピン名、搭載面、該ピンに対応するランドの座標(X,Y)等で構成され、MLNDランド42及びVLNDランド43の情報は、搭載面及び座標(X,Y)等で構成され、LINEライン45、EC-JMPER布線46及びNEW-JMPER布線47の情報は、配線層、開始座標(X1,Y1)及び終了座標(X2,Y2)で構成されている。
【００６７】
なお、EC-NPLNDランド44、EC-JMPER布線46及びNEW-JMPER布線47の搭載面又は配線層及び座標には所定のデータが設定され、回路変更に伴い付加された外部部品及び布線に対応できるようになっている。
【００６８】
PLINKテーブル50は、PTLNKテーブル10の配列要素11,12,…毎に１つづつ用意される。例えば、PTLNK配列要素11に対応したPLINKテーブル50のPLINK要素51,…,56には、PTLNK配列要素11のLNDLNKPポインタ及びLINLNKPポインタがそれぞれ指定する全てのランド及びラインが要素情報として順次設定される。さらに、PLINK要素51,…,56には、KP番地及びNKP番地が設定され、PLNKテーブル50に設定された接続要素の物理的な接続を認識することができるようになっている。
【００６９】
図２は、図１に示したWLNDテーブル20、WLINテーブル30及びパターン入力情報テーブル40をより詳細に示している。
すなわち、WLNDテーブル20の配列要素21,…,26は、図１で示したLNDPポインタ及びLNDLNKPポインタの他にさらに、検査済みフラグ（以後、WKFLG1フラグと称する）、接続ポインタ（以後、WKPTRポインタと称する）及び接続種別（以後、FLGと称する）を含み、WLINテーブル30の配列要素31,…,36は、WLNDテーブル20と同様に、WKFLG1フラグ、WKPTRポインタ及びFLGフラグを含んでいる。
【００７０】
パターン入力情報テーブル40は、ランド情報テーブル及びライン情報テーブルで構成されている。
ランド情報テーブルは、配列番地１〜５の配列要素から成るPLNDランド41と、配列番地１〜３の配列要素から成るVLNDランド43と、配列番地1,2の配列要素から成るVLNDランド43と、配列番地1,2の配列要素から成るEC-NPLNDランド44とで構成され、全ランドの配列要素には一連の配列番地１〜12が付けられている。
【００７１】
このランド情報テーブルでは、一連の配列番地によって部品ランド、マニュアルランド、ビア、外部ランドを同じランドとして扱っている。以後、外部ランド、マニュアルランド、ビアをランドと称することがある。
【００７２】
ライン情報テーブルは、配列番地１〜７の配列要素から成るLINEライン45と、配列番地1,2の配列要素から成るEC-JMPER布線46と、配列番地1,2の配列要素から成るNEW-JMPER布線47で構成され、全ラインの配列要素には一連の配列番地１〜11が付されている。このライン情報テーブルでは、一連の配列番地によってライン、EC-JMPER布線46及びNEW-JMPER布線47を同じラインと扱うことになる。
【００７３】
WLNDテーブル20及びWLINテーブル30のLNDPポインタ及びLINEPポインタは、それぞれ一連の配列番地によってパターン入力情報テーブル40のランド又はラインを指定する。
また、ランド情報テーブル及びライン情報テーブルには検索ランドテーブル（以後、SRCHLNDテーブルと称する）29及び検索ラインテーブル（以後、SRCHLINテーブルと称する）39がそれぞれ付属している。
【００７４】
図３は、図２に示したWLNDテーブル20及びWLINテーブル30の実施例を示している。同図(1)は、例えば番号11のネットの接続要素であるランドA,B,C,V1,V2、及びラインL1,L2,L3,L4,L5の接続状態を示している。
【００７５】
同図(2),(3)は、それぞれWLNDテーブル20及びWLINテーブル30を示しており、各配列要素は、接続要素、図２で示したWKPTRポインタ、FLGフラグ、WKFLG1フラグ、LNDPポインタ或いはLINEPポインタ、及びLNDLNKPポインタ又はLINLNKPポインタで構成されている。
ただし、WKFLG1フラグ、LNDPポインタ、LINEPポインタ、LNDLNKPポインタ、及びLINLNKPポインタは、便宜上図示されていない。
【００７６】
WLNDテーブル20の接続要素は、その接続種別としてランドである部品ランド、ビア、マニュアルランド及び外部ランドを含むことができる。WLINテーブル30の接続要素は、その接続種別としてライン及び布線を含むことができる。
各配列要素のWKPTRポインタ及びFLGフラグには、接続されるべき接続要素の配列番地及び接続種別が設定される。
【００７７】
なお、FLGフラグは、接続種別がランドのとき“１”とし、ラインのとき“２”とする。
この実施例では、LNDLNKPポインタ及びLINLNKPポインタでリンクされた例えば図１に示にしたようなネット番号12のネットに属するランドA,B,C,V1,V2及びラインL1,…,L6の各配列番地1,…,5及び1,…,6の配列要素のみが示されている。
【００７８】
図４は、WLNDテーブル20及びWLINテーブル30のWKPTRポインタ及びFLGフラグを設定するための手順の実施例を示している。
この実施例では、概略的に言うと、ステップS10,S11はネットの物理的接続状態を認識する（追う）ための始点である基準ランドを設定するステップである。ステップS12〜S15はランドに接続するラインを検索するステップであり、ステップS20〜S23はラインに接続するランドを検索するステップであり、ステップS25〜S28はラインに接続するラインを検索するステップである。
【００７９】
これらのステップをステップS16,S18,S24で適宜選択して、基準ランドを始点して物理的に接続するライン及びランドを順次、認識するようになっている。
なお、WKPTRポインタ＝“-1”は「接続なし」、“１以上の整数”は「接続要素の配列番地」を意味し、WKFLG1フラグ＝“０”は「未検索」、“１”は「検索対象候補」、“２”は「検索済み」を意味し、FLGフラグ＝“-1”は「未設定」、“１”は「接続要素がランド」、“２”は「接続要素がライン」を意味する。
【００８０】
以下に、同図を参照して図３におけるネットに対応したWLNDテーブル20及びWLINテーブル30のWKPTRポインタ及びFLGフラグの設定例をランドAを基準ランドとして詳細に説明する。
【００８１】
まず、初期状態として、WKFLG1フラグを全て「未設定」を意味する“０”に設定する。そして、WLNDテーブル20の配列番地１の基準ランドAのWKPTRポインタを「基準」及び「接続無し」を意味する“-1”に設定し、FLGフラグを「未設定」を意味する“-1”に設定し、WKFLG1フラグを「検索済み」を意味する“２”に設定する（図４ステップS10)。
【００８２】
SRCHLNDテーブル29（図２参照）にランド検索対象として基準ランドAを設定し（同S11)、この検索ランドAに接続するラインの検索を開始する（同S12)。
WLINテーブル30の配列番地１のラインL1のWKFLG1フラグが“０”であるか否かをチェックし（同S13)、最初は“０”であるので、LNDPポインタが指し示すパターン入力情報テーブル40のラインL1の配列要素から、開始座標(X1,Y1)、終了座標(X2,Y2）及び配線層を得る（図１及び２参照）。
【００８３】
さらに、ランド検索対象であるランドAのLNDPポインタが指し示すパターン入力情報テーブル40のランドAの配列要素から、座標(X,Y）及び搭載面を得る。このランドAの搭載面及び座標がラインL1の配線層及び開始座標或いは終了座標のいずれかに一致するかをチェックする。この結果、ランドAの搭載面及び座標とラインL1の配線層及び開始座標が等しいと判定して、ラインL1がランドAに物理的に接続されていることを認識する。
【００８４】
そこで、ラインL1のWKFLG1フラグを検索対象候補であることを示す“１”としてSRCHLINテーブル39にラインL1を登録し、WKPTRポインタをランドAの配列番地である“１”とし、FLGフラグを、ランドを示す“１”とする（同S14)。
【００８５】
以下、同様にしてラインL2,…,L6がランドAに物理的に接続している否かの検索を順次行う。そして、いずれにも接続していないことを認識した後、SRCHLNDテーブル29の検索候補としてのランドAを削除し、そのWKFLG1フラグを“２”に設定する。そして、ステップS12〜S15に渡る検索ランドに接続するラインのループを終了する（同S15)。
【００８６】
SRCHLNDテーブル29に検索候補のランドがないので（同S16)、SRCHLINテーブル39に検索候補があるか否かを判定し、ラインL1が検索候補であることを知る（同S18)。そこで、ラインL1のWKFLG1フラグ＝“２”に設定しておき（同S19)、検索ラインL1に接続するランドの検索のループを開始する（同S20)。
【００８７】
WLNDテーブル20のランドA,B,C,V1,V2のWKFLGフラグを順次チェックする。そして、そのWKFLG1フラグが未検索を示す“０”であるランドB,C,V1,V2のLNDPポインタから各ランドB,C,V1,V2の及び搭載面及び座標を知り、この座標とラインL1の終了座標(X2,Y2)及び配線層が一致するか否かを検索し、ランドV1が一致することを知る。
【００８８】
そこで、ランドV1をSRCHLNDテーブル29に登録してWKFLG1フラグ＝“１”に設定し、WKPTRポインタをラインL1の配列番地“１”に設定し、FLGフラグをラインを意味する“２”とする（同S22)。そして、検索ラインL1に接続するランドの検索ループを終了する（同S23)。
【００８９】
ステップS24において、WLNDテーブル20のランドV1のWKFLG1フラグ＝“１”であるのでステップS16に進み、SRCHLNDテーブル29に検索候補であるランドV1が有るので（同S16)、そのWKFLG1フラグを“２”に予め設定する（同S17)。
【００９０】
検索ランドに接続するライン検索のループのステップS12〜S15を実行する。その結果、ラインL2及びL3のWKPTRポインタ及びFLGフラグがランドV1の配列番地“４”及びランドを示す“１”にそれぞれ設定され、SRCHLINテーブル39にラインL2及びL3を登録する。
【００９１】
以下、ステップS16,S18,〜,S23を経由してステップS24に進み、接続ランドがないので（同S24)、検索ラインに接続するライン検索を開始する（同S25)。
このループでラインL3に接続するラインL5が検出され、そのWKPTRポインタ及びFLGフラグをそれぞれラインL3の配列番地“３”及びラインを示す“２”に設定する。
【００９２】
以下同様にして、ラインL4、ランドB、ラインL2、ランドV2、ラインL6及びランドCのWKPTRポインタ及びFLGフラグ等が設定される。
そして、SRCHLNDテーブル29及びSRCHLINテーブル39に検索候補がなくなったとき処理を終了する（同S16,S18)。
なお、この手順の流れの一部を変更することにより、接続要素の接続順を後述する波状型接続要素認識法及び接続要素一意決定法のいずれかで認識するようにすることができる。
【００９３】
図５は、図１に示したPTLNKテーブル10、WLNDテーブル20、WLINテーブル30、及びPLINKテーブル50間のリンク関係及びデータ構造をより詳細に示している。
このデータ構造例では、概略的に言うと、WLNDテーブル20及びWLINテーブル30とPLINKテーブル50との間に、さらに、ダミーランドワークエリア（以後、DMY＿WLNDテーブルと称する）60及びダミーラインワークエリア（以後、DMY＿WLINテーブルと称する）70が、それぞれ、接続要素の物理的接続状態を高速で認識するため確保されている。
さらに、PLINKテーブル50の要素の有効数を記憶する領域が、PLINK有効数レジスタ59として確保されている。
【００９４】
また、図１のLNDLNKPポインタ及びLINLNKPポインタを図５のPTLNKテーブル10ではそれぞれwlndpポインタ及びwlinpポインタと称し、WLNDテーブル20及びWLINテーブル30ではnextpポインタと称している。
【００９５】
図１と同様に、PTLNK配列要素11のwlndpポインタ及びwlinpポインタを始点としたnextpポインタのリンクにより、番号11のネットにWLNDテーブル20の配列番地1,2,3のランドA,B,C,V1,V2及びWLINテーブル30の配列番地1,2,3のラインL1,…,L6が属していることが示されている。
【００９６】
そして、番号11のネットに回路変更が発生したとき、ランドA,B,C,V1,V2及びラインL1,…,L6にそれぞれ一対一に対応した（同期した）DMY＿WLND配列要素61,…,65及びDMY＿WLIN配列要素71,…,74をそれぞれ有するDMY＿WLNDテーブル60及びDMY＿WLINテーブル70が設定される。さらに、配列要素61,…,65及び配列要素71,…,74のplinkポインタには、最新のPLINKテーブル50のランドA,B,C,V1,V2及びラインL1,…,L6の配列番地１,…,11が設定される。
【００９７】
図６は、図５に示したPLINKテーブル50の実施例を示しており、この例では図3(1)のネットに対応したテーブルである。
PLINKテーブル50は、ランド及びラインに一連の配列番地（配列番号）を付与してて処理することが、図3(1)及び(2)のWLNDテーブル20及びWLINテーブル30と異なっている。
【００９８】
同図(1)は、ランドAを接続の始点となる基準ランドに設定した場合を示しており、ランドAのKP番地は、基準ランドを示す“-1”に設定される。このランドAに接続したラインL1のKP番地は（図３(1)参照）、ランドAの配列番地である“１”が設定され、ラインL1に接続したランドV1のKP番地は、ラインL1の配列番地“６”が設定される。
【００９９】
そして、ランドV1に接続したラインL2,L3のKP番地には、同じ“４”が設定される。以下同様にして、その他のランド及びラインのKP番地が決定される。
同図(2)のPLINKテーブル50には、ランドBを基準ランドに設定した場合の各KP番地が設定されている。同図(1)と(2)を比較すると、基準ランドを替えることによりKP番地が変化することが分かる。
【０１００】
図７は、図５に示したWLNDテーブル20及びWLINテーブル30に対応したDMY＿WLNDテーブル60、DMY＿WLINテーブル70及びPLINKテーブル50の配列要素の確保及び設定の手順の実施例を示している。
【０１０１】
この実施例では、概略的に言うと、WLNDテーブル20及びWLINテーブル30の配列要素とPLINKテーブル50の配列要素との対応関係は、PLINKテーブル50の配列要素に含まれるCONFIGフラグ及びWlndpポインタ又はWlinpポインタで示されるようになっている。また、DMY＿WLNDテーブル60及びDMY＿WLINテーブル70の配列要素とPLINKテーブル50の配列要素との対応関係は、テーブル60,70の配列要素に含まれるplinkpポインタで示されるようになっている。
【０１０２】
ステップS30では、PLINKテーブル50の配列要素の数を設定するPLINK有効数レジスタ59を“０”に設定する。ステップS31〜S33で、WLNDテーブル20に対応したPLINKテーブル50及びDMY＿WLNDテーブル60の配列要素を確保した後に、ポインタによる対応付けを行い、PLINK有効数レジスタ59は配列要素が確保される毎に１だけカウントアップする。そして、ステップS34〜S36で、WLINテーブル30に対応したPLINKテーブル50及びDMY＿WLINテーブル70の配列要素を確保した後に、ポインタによる対応付けを行い、PLINK有効数レジスタ59をカウントアップして配列要素数を記憶する。
【０１０３】
以下に、図５を参照して、図７の手順を詳細に説明する。
まず、ステップS30において、PLINK有効数レジスタ59であるｎ＝０に設定する。
PTLNKテーブル10のwlndpポインタ≠０で、ランドAに接続があるので（同S31)、ｎに“１”を加算してｎ＝１とし、PLINKテーブル50の１番目の配列要素のWlndpポインタにwlndpポインタで指定されたWLNDテーブル20の配列番地“１”を設定し、CONFIGフラグにランドを意味する“１”を設定する。そして、DMY＿WLNDテーブル60の１番目の配列要素のplinkpポインタにPLINKPテーブル50の１番目の配列番地“１”を設定する（同S32)。
【０１０４】
WLNDテーブル20の配列番地１のnextpポインタがランドBを指定しているで（同S33)、ステップS32に戻り、ｎに“１”を加算してｎ＝２とし、PLINKテーブル50の２番目の配列要素のWlndpポインタにWLNDテーブル20のランドBの配列番地“２”を設定し、CONFIGフラグに“１”を設定する。そして、DMY＿WLNDテーブル60の２番目の配列要素のplinkpポインタに“２”を設定する（同S32)。
【０１０５】
同様に、指定されたランドC,V1,V2に関し、ｎに“１”を３回加算してｎ＝５とし、PLINKテーブル50の３〜５番目のWlndpポインタをそれぞれ“３”，“４”，“５”に設定し、CONFIGフラグを全て“１”を設定し、DMY＿WLNDテーブル60の３〜５番目のplinkpポインタを“３”，“４”，“５”に設定する（同S32)。
【０１０６】
ランドV2のnextpポインタ＝“０”であるので（同S33)、ステップS34に進み、PTLNKテーブル10のwlinpポインタを始点としてnextpポインタによってラインL1,…,L6が順次指定される。以後、ステップS35及びS36を繰り返して、PLINKテーブル50の配列番地６〜11のWlinpポインタにそれぞれ“１”〜“６”が設定され、配列番地６〜11のCONFIGフラグにラインを意味する“２”が設定される。
【０１０７】
DMY＿WLINテーブル70のラインL1,…,L6に対応する各plinkpポインタには“６”〜“11”が設定される。PLINK有効数レジスタ59には、ｎ＝11が設定されることとなる。
そして、ラインL6のnextpポインタ＝０で、ステップS35及びS36ループが終了する（同S36)。
【０１０８】
この結果、PLINKテーブル50、DMY＿WLNDテーブル60及びDMY＿WLINテーブル70の領域が確保され、これらのテーブルの配列要素間の対応付けと、PLINKテーブル50とWLNDテーブル20及びWLINテーブル30の配列要素間の対応付けが終了する。
【０１０９】
なお、WLNDテーブル20及びWLINテーブル30の配列は、DMY＿WLNDテーブル60及びDMY＿WLINテーブル70と同期した配列になっている。すなわち、WLNDテーブル20及びDMY＿WLNDテーブル60のｎ番目の配列要素は同一のランドが設定されている。
WLINテーブル30及びDMY＿WLINテーブル70のラインについても同様である。
【０１１０】
図８は、図５に示したPLINKテーブル50のKP番地を設定する手順の実施例を示しており、この実施例では、概略的に言うと、図４の実施例でWLNDテーブル20及びWLINテーブル30に設定されたWKPTRポインタ及びFLGフラグに基づきPLINKテーブル50にKP番地を設定している。
【０１１１】
以下に、図３に示したWLNDテーブル20及びWLINテーブル30に設定されたWKPTRポインタ及びFLGフラグから図６(1)に示したPLINKテーブル50のKP番地を設定する手順を説明する。
この手順では、ステップS40からS48に渡るステップが、PLINK有効数レジスタ59（図５及び図７参照）に記憶されたｎ（＝PLINKテーブル50の配列要素数）回だけ繰り返される。
【０１１２】
まず、PLINKテーブル50の配列番地１の接続種別を示すCONFIGフラグがランドを示す“１”であり、（図８ステップS41）、Wlndpポインタ“１”が指し示すWLNDテーブル20の配列番地“１”の配列のFLGフラグを参照する（同S42）。FLGフラグがランド及びラインのいずれも示さない“-1”であるので、PLINKテーブル50の配列番地１のKP番地を“-1”とする（ステップは図示せず）。
【０１１３】
PLINKテーブル50の配列番地２の接続種別を示すCONFIGフラグがランドを示す“１”であり（同S41）、Wlndpポインタ“２”が指し示すWLNDテーブル20の配列番地２の配列のFLGフラグを参照する（同S42）。FLGフラグがラインを示すので、WKPTRポインタが指し示す配列番地“４”に同期するDMY＿WLINテーブル70の配列要素のplinkpポインタが指定する配列番地“９”をPLINKテーブル50の配列番地２のKP番地とする（同S43)。
【０１１４】
以下同様にして、PLINKテーブル50の配列番地3,4,5のKP番地が“11”，“６”,“７”が設定される。
PLINKテーブル50の配列番地６の接続種別を示すCONFIGフラグがラインを示す“２”であり（同S41）、Wlinpポインタ“１”が指し示すWLINテーブル30の配列番地１の配列要素のFLGフラグを参照する（同S45）。FLGフラグ“１”がランドを示すので、WKPTRポインタが指し示す配列番地に同期するDMY＿WLNDテーブル60の配列要素のplinkpポインタが指定する配列番地“１”をPLINKテーブル50の配列番地６のKP番地とする（同S46)。
【０１１５】
以下同様にして、PLINKテーブル50の配列番地7,8,11のKP番地が“４”，“４”，“５”が設定される。配列番地９,10のKP番地は、ステップS41,S45,S47の処理が実行されて、それぞれ“10”，“８”に設定される。
【０１１６】
図９は、図５に示したPLINKテーブル50の実施例を示しており、この例では図９(1)のネットに対応したKP番地及び上述したNKP番地が同図(2)のPLINKテーブル50に設定されている。
【０１１７】
同図(2)のKP番地は、図７及び図８に示した手順で設定されるため説明を省略する。なお、接続要素の接続を認識する順番は、基準ランドA、ラインL1,L2,L3、ランドB、ラインL4、ランドC、ラインL6及びランドEの順とランドBから分岐してラインL5、ランドD及びラインL7の順である。
【０１１８】
以下に、NKP番地の設定について説明する。
本発明においては、NKP番地はKP番地を設定したときの接続認識順と同じ順番で設定する。すなわち、NKP番地はKP番地に対応して設定することとする。
配列番地１のランドAのNKP番地は、ランドAがラインL1に接続しているためラインL1の配列番地“６”とする。このラインL1のNKP番地は、ラインL2に接続しているのでラインL2の配列番地“７”とする。
【０１１９】
以下同様にして、ラインL3，ランドB、ラインL4、ランドC、ラインL6及びランドEのNKP番地を“２”，“９”，“３”，“11”，“５”，“−”に設定し、分岐したランドB、ラインL5、ランドD、ラインL7のNKP番地を“10”，“４”，“12”，“−”に設定する。
【０１２０】
ランドE及びラインL7のNKP番地は、逆向きに接続する要素が無いため“−”が設定され、ランドBのNKP番地は、逆向きの接続要素としてラインL4及びL5が有るため２つの番地が設定される。
【０１２１】
図10は、図５に示したPLINKテーブル50の構造例を詳細に示している。
このPLINKテーブル50は、PLINK配列50a及びNEG＿PLINK配列50bで構成されている。
【０１２２】
PLINK配列50aの12個のPLINK配列要素50cは、KP番地、Wlndポインタ、及びCONFLGフラグで構成されている。
NEG＿PLINK配列50bの12個のNEG＿PLINK配列要素50dは、各配列要素50dが管理するKPPOS＿S構造体50eの有効数を示すデータ数（以後、dtsu数と称する）、管理可能なKPPOS＿S構造体50eの最大数を示すdtmax、最初のKPPOS＿S構造体50eをポイントするkppospポインタ及び最後のKPPOS＿S構造体50eをポイントするendkppospポインタで構成されるている。
【０１２３】
PLINK配列50a及びNEG＿PLINK配列50bの各要素は一対一に対応（同期）しており、同じ数の配列要素50c及び50dで構成されている。
KPPOS＿S構造体50eは、NKP番地及び次のKPPOS＿S構造体50eを指定するnextpポイントから構成されている。
【０１２４】
PLINK配列50aの配列番地１〜12の配列要素のKP番地は“-1”，“８”〜“４”が設定されている。NEG＿PLINK配列50bの配列要素１のdtsu数＝１はNKP番地の数が１つであることを示し、kppospポインタが指定するKPPOS＿S構造体50eには、NKP番地“６”が設定されている。配列要素２のdtsu数＝２はデータが２つあることを示し、kppospポインタが指定するKPPOS＿S構造体50eにはNKP番地“９”が設定され、KPPOS＿S構造体50eのnextpポインタが指定するKPPOS＿S構造体50eにはNKP番地“10”が設定されている。
【０１２５】
以下同様に、配列番地3,4,6〜11の配列要素のkppospポインタが指定するKPPOS＿S構造体50eにはそれぞれNKP番地が“11”，“12”，“７”〜“５”が設定されている。
また、配列番地5,12の配列要素のdtsu数＝０であり、それらのkppospポインタ（図示せず）はnullに設定してNKP番地は無いことを示す。
【０１２６】
図11は、図10に示したNKP番地を設定する手順の実施例を示しており、概略的に言えば、NEG＿PLINK配列50bをPLINK配列50aに基づいて割り付けた後、NKP番地をKPPOS＿S構造体50eに設定している。
【０１２７】
ステップS50において、PLINK配列50aに同期する（配列数が同じ）NEG＿PLINK配列50bを割り付けた後、NEG＿PLINK配列50bの全てのdtsu数を“０”に設定し、kppospポインタ及びendkppospポインタを“null”に設定する。
ステップS52において、PLINK配列50aの配列番地１のKP番地“-1”≦０であるので、配列番地１の要素は基準ランドであることを知り、ステップS55,S51を介して次のｎ＝１のループに進む。
【０１２８】
ステップS52において、配列番地２のKP番地“８”＞０であるので、KPPOS＿S構造体50eを割り付け、そのNKP番地にｎ＋１＝２を設定する（ステップS53）。
NEG＿PLINK配列50bのKP番地（配列番地８）の配列要素のdtsu数を１加算した“１”とし、kppospポインタ及びendkppospポインタに新しく割り付けたKPPOS＿S構造体50eをポイントするように設定する（同S54)。
【０１２９】
ｎ＝２のループに進み、ステップS52で、配列番地３のKP番地“９”＞０であるので、新たにKPPOS＿S構造体50eを割り付け、そのNKP番地にｎ＋１＝３を設定し（同S53）、NEG＿PLINK配列50bの配列番地９のdtsu数を“１”とし、kppospポインタ及びendkppospポインタに新しく割り付けたKPPOS＿S構造体50eをポイントするように設定する（同S54)。
【０１３０】
以後同様にして、NEG＿PLINK配列50bの配列番地10,11,1,6,7,2にKPPOS＿S構造体50eを割り付けてそれぞれのNKP番地を“４”，“５”，“６”，“７”，“８”，“９”に設定し，NEG＿PLINK配列要素50dのkppospポインタ及びendkppospポインタを設定し、dtsu数を“１”に設定する。
【０１３１】
ｎ＝９のループで、NEG＿PLINK配列50bの配列番地2にKPPOS＿S構造体50eをさらに割り付け、そのNKP番地を“10”に設定し，endkppospポインタ及び前のKPP0S＿S構造体50eのnextpポインタが新しいKPPOS＿S構造体50eをポイントするように設定し、dtsu数を１加算して“２”に設定する。
【０１３２】
ｎ＝10,11のループでは、ｎ＝２〜９のループと同様にして、それぞれNEG＿PLINK配列50bの配列番号3,4に対応するdtsu数を“１”に設定し、KPPOS＿S構造体50eを割り付け、NKP番地を“11”，“12”に設定し、kppospポインタ及びendkppospポインタを設定する。
【０１３３】
そして、NKP番地を設定するループを抜けて処理を終了する。
この結果、図９(2)で示したNKP番地が、NEG＿PLINK配列50bの各配列要素のkppospポインタで指定されるKPPOS＿S構造体50eに設定されたことになる。  上記の処理はパターン入力情報テーブル40を参照せずに行われているため、NKP番地の設定は高速で行うことが可能となる。
この手順は、回路変更に対応したKP番地を設定した後、このKP番地に対応するNKP番地を設定し直すときにも適用できる。
【０１３４】
KP番地は着目するランド（基準ランド）に向く物理状態を例えば一筆書きで認識するものである。従って、着目するランドが変われば、KP番地を再設定する必要がある。
【０１３５】
図12は、基準ランドを変更した場合のKP番地の再設定（塗り替え）の実施例を示しており、この例では同図(1)のネットに対応した同図(2)のPLINKテーブル50の塗り替えを示している。
【０１３６】
同図(2)のKP番地は、ランドAを基準ランドとして設定されている。
いま、基準ランドをランドCに変更した場合の新しいKP番地を設定するとき、接続認識の順番を、前の基準ランドAから新しい基準ランドCへの接続経路“ランドA，ラインL1,L2，ランドC”の順のみを逆の“ランドC，ラインL2,L1，ランドA”順とし、ラインL2に対してランドCから分岐したラインL4及びL5の順番と、ラインL1に対してラインL2から分岐したラインL3及びランドBの順番は変更しない。
【０１３７】
この結果、ランドA,B,C及びラインL1,L2,L3,L4,L5の新しいKP番地は、それぞれ“４”，“６”，“-1（基準）”，“５”，“３”，“５”,“３”,“７”となる。この場合、ランドB、ラインL4及びL5のKP番地は上記のように接続認識の順番の変更がないため変わらない。ラインL3のKP番地は接続を認識する接続要素がラインL1からラインL2に変わったため変更されている。
【０１３８】
このKP番地の塗り替え手順を図13に示すフローチャートを参照して詳細に説明する。
まず、手順を概略的に言えば、ステップS60で、着目するランドから前の基準ランドに向かう接続要素のKP番地を設定し、これを第１のKP番地とする。
そして、ステップS61〜S68のループで、第１のKP番地が設定されなっかた配列要素のKP番地を順次、設定する。
【０１３９】
詳細に述べると、まずステップS60において、前の基準ランドから着目ランドに向かう接続順とは逆向きの接続順で接続要素のKP番地を設定し、第１のKP番地とする。さらに、第１のKP番地を新しいKP番地とする。
この結果、ランドC、ラインL2,L1、ランドAの新しいKP番地は“-1”，“３”，“５”，“４”に設定される。
この第１のKP番地は、前の基準ランドに対して逆向き接続の番地、すなわちNKP番地に相当する。従って、図11で示したNKP番地の設定手順を応用して、パターン入力情報テーブル40を参照することなく、第１のKP番地を高速で設定することができる。
【０１４０】
次に、ステップS61〜S68のn=1のループのステップS62において、配列番地１（ランドA）の第１のKP番地が設定済みなので、ステップS68,S61を介して次のn=2のループに進み、ランドBの第１のKP番地が設定されておらず（同S62)、データ種別がランドであるので（同S63）、前のKP番地“６”を新しいKP番地とする（図12の▲１▼参照）。
【０１４１】
n=3,4,5のループにおいて、ランドC,ラインL1,L2の第１のKP番地は設定済みであるので何もしない。n=6のループに進み、ラインL3の第１のKP番地は未設定であり（同S62)、データの種別がラインであり（同S63)、KP番地“４”の指し示す接続要素がラインL1であり（同図の▲２▼参照、同S64)、その第１のKP番地が“５”に設定されているので（同S65)、この第１のKP番地の“５”を新しいKP番地とする（同図の▲３▼参照、同S67)。
【０１４２】
n=7のループにおいて、ラインL4の第１のKP番地が未設定であり（同S62)、データ種別はランドでなく（同S63)、KP番地“３”の指す接続要素がランドであるので（同S64)、KP番地“３”を新しいKP番地とする（同S66)。
【０１４３】
n=8のループにおいて、ラインL5の第１のKP番地が未設定であり（同S62)、データ種別はランドでなく（同S63)、KP番地“７”の指す接続要素がラインL4であり（同S64)、そのラインL4の第１のKP番地が未設定であるので（同S65)、KP番地“７”を新しいKP番地とする（同S66)。
【０１４４】
この結果、KP番地を塗り替え前のKP番地に基づいて高速で塗り替えることが可能となる。また、NKP番地の塗り替えは、塗り替え後のKP番地に基づいてNKP番地を設定することにより、高速で行うことが可能である。
【０１４５】
図14は、図13に示した塗り替え手順例を応用した、回路変更となるネット変更の実施例を示しており、この実施例ではネットに含まれるランドを分離する場合が示されている。
図14(1)は、ネットを示しており、このネットは、順次接続されたランドA，ラインL1,L2，ランドB，ラインL3，ランドC，ラインL4,L5，ランドD，ラインL6及びランドFと、さらに、ランドDから分岐して順次接続されたラインL7及びランドEで構成されている。
【０１４６】
いま、このネットからランドCを分離する場合を考える。
同図(2)は、同図(1)のネットのPLINKテーブル50を示しており、このテーブル50のKP番地及びNKP番地は、例えばランドAを基準ランドとしたKP番地及びNKP番地を、分離対象のランドCを基準として上述したように塗り替えた後の値を示している。
【０１４７】
ランドCを分離するため、ランドCの配列番地“１”がKP番地に設定されたラインL3,L4を削除（一時的な切断）する。そして、このラインL3,L4に直接又は間接的に接続されているランド及びラインをランドCを基準としたNKP番地に基づき順次、特定しそのKP番地を“-1”に設定する。
【０１４８】
ラインL3の配列番地９の「ラインL3,L4を削除した」KP番地＝-1
配列番地９のNKP番地＝３    →  配列番地３の「  〃  」KP番地＝-1
配列番地３のNKP番地＝８    →  配列番地８の「  〃  」KP番地＝-1
配列番地８のNKP番地＝７    →  配列番地７の「  〃  」KP番地＝-1
配列番地７のNKP番地＝２    →  配列番地２の「  〃  」KP番地＝-1
配列番地２のNKP番地＝“−”→  終了
【０１４９】
ラインL4の配列番地10の「ラインL3,L4を削除した」KP番地＝-1
配列番地10のNKP番地＝11    →  配列番地11の「  〃  」KP番地＝-1
配列番地11のNKP番地＝４    →  配列番地４の「  〃  」KP番地＝-1
配列番地４のNKP番地＝12,13 →  配列番地12,13の「  〃  」KP番地＝-1
配列番地12のNKP番地＝６    →  配列番地６の「  〃  」KP番地＝-1
配列番地６のNKP番地＝“−”→  分岐した配列番地13へ
配列番地13のNKP番地＝５    →  配列番地５の「  〃  」KP番地＝-1
配列番地５のNKP番地＝“−”→  終了
【０１５０】
この結果、着目するランドCのみのネットのKP番地及びNKP番地が得られるが、ランドCに接続する又は接続される接続要素がないため全てのKP番地は“-1”となり、ランドCのNKP番地のみが“-”となる。
【０１５１】
ラインL3,L4を切断した時のランドAの接続認識の順番を求める手順を以下に示す。
まず、ランドCを基準ランドとしたランドAのKP番地＝７からラインL1を知り、ラインL1のKP番地＝８からラインL2を知り、ラインL2のKP番地＝３からランドBを知り、ランドBのK番地からラインL3を知り、このラインL3は削除されているためここで接続した要素の検出を終わる。
【０１５２】
そして、検出したランドA,B、及びラインL1,L2のみのKP番地及びNKP番地の塗り替えを行い接続認識を終了する。同様にして、ラインL3,L4を切断した時のランドFの接続認識の順番を求めることができる。
すなわち、ラインL3,L4を削除したときのネットのKP番地及びNKP番地が、ランドCを基準としたKP番地に基づいて高速で求めることができる。
【０１５３】
図15は、２つのネットのPLINKテーブル50＿1,50＿2を合成する実施例を示している。
同図(1)はネットNET1を示しており、ランドA，ラインL1，ランドV1，ラインL2,L3，ランドV2，ラインL4及びランドBが順次接続され、そしてランドV2から分岐してラインL5及びランドCが順次接続されている。
同(2)はネットNET2を示しており、ランドX，ラインL10，ランドV3，ラインL11及びランドYが順次接続され、そしてランドV3から分岐してラインL12及びランドZが順次接続されている。
【０１５４】
同図(3)はネットNET1のPLINKテーブル50＿1の実施例を示しており、この実施例ではランドAを基準としたKP番地及びNKP番地が設定されている。さらに、PLINKテーブル50＿1にはネットNET1の接続要素の他に後述する配列番地11〜18の接続要素が追加されている。
同図(4)はネットNET2のPLINKテーブル50＿2の実施例を示しており、この実施例ではランドXを基準としたKP番地及びNKP番地が設定されている。
【０１５５】
以下に、ビアV2及びランドXを布線J1（同図(1)、(2)参照）で接続してネットNET1及びネットNET2を合成した場合のPLINKテーブルを作成する方法を説明する。
同図(3)において、PLINKテーブル50＿1の配列番地10の次に布線J1用の配列番地11の配列要素を追加する。さらに、配列番地11の次に同図(4)の配列番地１〜７の配列要素を追加し、その配列番地を元の配列番地に11を加算した配列番地12〜18する。
【０１５６】
布線J1のKP番地及びNKP番地をそれぞれビアV2の配列番地“５”及びランドXの配列番地“12”とする。配列番地12〜18のKP番地及びNKP番地を元のPLINKテーブル50＿2のKP番地（0,6,7,5,1,4,4）及びNKP番地（5,-、-、6,7,4,2,3)にそれぞれ“11”を加算した（11,17,18,16,12,15,15)及び(16,-,-,17,18,15,13,14)とする。
さらに、ビアV2のNKP番地に布線J1の配列番地“11”を追加（カッコ書きで示す）して合成したPLINKテーブルの作成は完了する。
【０１５７】
従って、２つのネットを合成したPLINKテーブルが、元のPLINKテーブルから高速に作成され、接続認識が可能となる。
なお、２つ以上のネットの合成は２つのネットの合成を繰り返せばよい。
【０１５８】
図16は、ループパターンを有するネットの接続認識の実施例を示している。
同図(1)は、ネットを示しており、ランドB，ラインL7,L6,L2,L1,及びランドAが順次接続され、さらに、ランドBにはラインL5,L3が順次接続され、このラインL3はラインL2及びL6の接続点に接続されている。さらに、ラインL7,L6の接続点からはラインL8,L9、ランドC、ラインL4及びランドAが順次接続されている。
【０１５９】
従って、同(1)のネットには、ランドB、ラインL5,L3,L6,L7、及びランドBのパターンループと、ラインL6,L2,L1、ランドA、ラインL4、ランドC、ラインL9,L8及びラインL6のパターンループとが形成されている。
【０１６０】
同図(2)は、同図(1)のネットのPLINKテーブル50の実施例が示されており、この実施例のKP番地及びNKP番地は、ランドBを基準ランドとして、接続順ランドB→ラインL7,L6,L2,L1→ランドAと、接続順ランドB→ラインL5,L3と、接続順ラインL7,L8,L9→ランドC→ラインL4に従って設定されている。
【０１６１】
従って、KP番地のみでは、ラインL3がラインL2及びL6の接続点に接続していること、及びラインL4がランドAに接続していることを認識できない。すなわち、ネットが上述したループパターンを形成していることをKP番地のみでは認識できない。
【０１６２】
一方、ラインL3及びL4のNKP番地は、接続がないことを示す“-”が設定されている。これは、KP番地に基づいて逆向きの接続を示すNKP番地が設定されていることによる。
従って、“-”のNKP番地が設定されたラインで、ループパターンを形成している可能性があると判断できる。
【０１６３】
図17は、PLINKテーブルのKP番地及びNKP番地をよるループパターンを認識する手順例を示している。
この手順例では、例えば図16のネットにおいてランドBをランドA,Cから切り離すとき必要となるループパターンの認識例を示している。
切り離すために切断するラインは、図16(2)のPLINKテーブル50で示された接続順ランドB→ラインL7,L6,L2,L1→ランドAと、接続順ラインL7,L8,L9→ランドC→ラインL4に共通に含まれるラインL7に決定する。
【０１６４】
手順を概略的に言えば、まず、NKP番地が“-”のラインを探索して有る場合、ループパターン有りと判定する。ループパターンが有ると判定された場合、切断ラインからランドA,Cまでの接続順上のラインとNKP番地が“−”であるラインとが接続されていないかを確認する。接続されている場合、切断されたライン以外にランドBとランドA,Cを接続する別のルート（接続順）があると判断する。
【０１６５】
ステップS70において、NKP番地が“−”であるラインを検索し無い場合、ループ無しとして処理を終了する。有る場合、切断ラインL7の座標とNKP番地が“−”であるラインL3,L4の端点の座標を比較し（ステップS71)、一致した場合、一致した端点が切断ラインL7のランドBと反対側の端点（順接続向きの端点）であるかを判定し、反対側の端点であればステップS74に進む。
【０１６６】
ステップS71で、図16(1)においてはラインL3,L4と切断ラインL7の座標が一致していないのでステップS72に進む。このステップで、切断ラインL7からランドAの接続順上のラインL6,L2,L1とラインL3,L4との座標を比較する。一致しない場合、ループ無しとして手順を終了する。一致した場合、ステップS74に進む。
【０１６７】
ラインL3とラインL2及びL6の端点が一致するのでステップS74に進み、切断ラインL7から逆接続順にランドBまでの接続要素のKP番地を“−”に設定する。また、切断ラインL7のKP番地及びNKP番地を“−”に設定する（同S75）。
さらに、残りのNKP番地が“-”であるラインとランドが一致しているか否かを判定し（同S76)、一致していないとき終了する。一致いているとき、一致したランドのKP番地及びラインのNKP番地をリセットする（同S77)。
【０１６８】
この結果、ラインL3のKP番地＝“８”、NKP番地＝“９”、ラインL6のKP番地＝“６”、NKP番地＝“５”及び“６”となる。
【０１６９】
図18は、広面積パターンの接続及び切断の接続認識の実施例を示している。
同図(1)は広面積パターン80を示しており、この広面積パターン80は外周ライン81と打抜ライン82で囲われたパターン（網掛けされた部分）である。また、パターンには外周ライン81上にあるランドA,B,Cと広面積パターン80内に含まれるランドD,Eが示されている。さらに、打抜ライン82の内側には、ランドFがラインで広面積パターン80に接続されている。
【０１７０】
同図(2)は、同(1)の広面積パターン80を外周ライン81であるラインL1,…,L5、打抜ライン82であるラインL6,…,L13、及び外周ライン81と打抜ライン82を接続する架空ラインL30で構成されている見倣している。
この結果、広面積パターン80の接続認識を、図形演算で行う必要が無くなり、高速で且つメモリ消費が少なく行うことが可能となる。
【０１７１】
また、外周ライン81上にあるランドA,B,Cは、それぞれラインL1,L5、ラインL1,L2、及びラインL2,L3に接続されていると見倣す。
さらに、広面積パターン80に含まれるランドDを架空ラインL31でラインL2に接続し、ランドEを架空ラインL32でランドDに接続されていると見倣す。
この結果、広面積パターン80に含まれるランドの接続認識を、高速で行うことが可能となる。
【０１７２】
同図(3)は、同(1)の広面積パターン80を切断した場合の接続認識の実施例を示しており、この実施例ではランドBを広面積パターン80から分離する為に広面積パターン80の一部を切断している。
【０１７３】
すなわち、広面積パターン80を切断線(A1,A11,B22,B2)及び切断線(A2,A22,B11,B1)で切断し、パターン(A1,A11,B22,B2,B1,B11,A22,A2,A1)を除去する。
そして、広面積パターン80を、ラインL14,L18,L19,L20,L17,L3,L4,L5,L30,L6,…,L13のグループと、このグループから分離したラインL16,L15,L21,L22,L23のグループの組合せと見倣す。
【０１７４】
この結果、広面積パターン80を切断してランドBを分離した広面積パターン及びランドBが属する広面積パターンをそれぞれライングループと見倣すことになり、広面積パターン80の切断の接続認識を高速で行うことが可能となる。
【０１７５】
なお、広面積パターン80から単にランドBを分離する場合は、切断箇所が重要であれば同図(3)に示すように切断するがそうでなければ同図(2)で示したように広面積パターン80をラインと見倣し、ランドBに接続するラインL1,L2を切断してもよい。
また、以後、広面積パターンをラインと見倣したパターンを広面積接続パターンと称することがある。
【０１７６】
図19は、広面積パターンを含むネットにおけるライン切断の実施例を示しており、この実施例ではライン切断の優先順位が指定されている。すなわち、ラインの有する属性に対して優先順位が指定され、その順位に従ってラインを切断する。
【０１７７】
同図(1)は、広面積パターンを含まないネットを示しており、ランドA、ラインL1、ビアV1、ラインL2、ビアV2、ラインL3及びランドBが順次接続されている。
なお、図中の実線のラインは１層パターンのラインあることを示し、破線のラインは２層パターンのラインであることを示している。
ランドA,BはSMD部品用のランドであり、ビアV1,V2はランドA,Bの引き出し用のビアであり、SMD部品の端子と引出用の布線との接続は、ビアを使用して行うようになっている。
【０１７８】
そこで、切断の優先順位は、▲１▼ビアV1−ビアV2間のパターン、▲２▼ランドA−ビアV1間のパターン及びランドA−ビアV1間のパターンとなる。
従って、ランドA,Bを分離する場合、ラインL2が切断されることになる。例えば、ラインL2が物理的に切断できない場合は、ラインL1又はL2のいずれかが切断されることになる。
【０１７９】
同図(2)は広面積パターンを含んだネットを示しており、このネットは、同図(1)のランドA−ビアV1間のパターンであるラインL1が、ラインL1、広面積パターン80、ラインL4に置き換わり、ランドB−ビアV2間のパターンであるラインL3が、ラインL5、広面積パターン90、ラインL3に置き換わっている。
【０１８０】
従来のライン切断では、広面積パターンに接続するパターンの認識を優先するため、ビアV1,V2を引き出し用のビアとして扱うことが出来なかった。
従って、同図(2)のネットでラインの切断処理を行うと、ビアV1−ビアV2間のパターン（ラインL2）以外の例えばランドA−広面積パターン80間のラインL1、或いは広面積パターン80−ビアV1間のラインL4が切断される。
すなわち、優先順位が考慮されずに切断されることにになる。
【０１８１】
そこで本発明においては、同図(3)に示す如く、同図(2)の広面積パターン80及び90を、それぞれラインL6〜L9及びラインL10〜L13と見倣す。
そして、上述した優先順位を指定して同図(3)のネットにおけるラインの切断処理を行う。その結果、ビアV1−ビアV2間のパターンであるラインL2が切断され、ランドA−ビアV1間のパターンであるラインL1,L4,L6〜L9及びランドB−ビアV2間のパタ−ンであるラインL3,L5,L10〜L13は切断されない。
【０１８２】
このライン切断の実施例においては、広面積パターンをラインとして扱うため図形処理の演算は必要としない。
この結果、広面積パターンを含んだネットにおいても、切断の優先順位を指定したラインの高速な切断処理が可能となる。
【０１８３】
図20は、基準ランドからの接続要素を認識する方法の実施例を示しており、この実施例では波状型接続要素認識法と接続要素一意決定法を示している。
【０１８４】
同図(1)は、ネットを示しており、ランドA、ラインL1、ランドB、ラインL2、ランドC、ラインL3及びランドDが順次接続され、ランドBから分岐してラインL4及びランドEが順次接続され、さらにランドBから分岐したラインL5,L6,L7が順次接続され、ラインL7の残りの端点はランドCに接続されている。
【０１８５】
同図(2)は、同図(1)のネットの接続順を基準ランドAから波状型接続要素認識法で決定した場合を示している。まず、行i1の接続順（ランドA，ラインL1，ランドB）が決定される。そして、ランドBを中心として波が伝搬する様に行i1,i2,i3のそれぞれのラインL4,L5,L2に分岐する。そして、各行毎に次の１つの接続要素（ランドE，ラインL6，ランドC）が決まり、以下同様にして、接続要素（＊，ラインL7，ラインL3）、接続要素（＊，＊，ランドD）が決まる。
なお、上記の符号“＊”は接続要素が無くなったことを示している。
【０１８６】
この結果、ネットは、ランドA，ラインL1，ランドB，ラインL4及びランドEの順に接続され（行i1）、ランドBからラインL5,L6,L7が分岐して順次接続され（行i2）、さらに、ランドBからラインL2，ランドC，ラインL3及びランドDが分岐して順次接続されていると認識する（行i3）。
【０１８７】
同図(3)は、同じネットの接続順を接続要素一意決定法で決定した場合を示している。まず、行i1の接続順（ランドA，ラインL1，ランドB，ラインL4及びランドE）を接続先のなくなるランドEまでを一意に順次検索して決定する。次に、ランドBから分岐した接続順（ランドB，ラインL5,L6,L7，ランドC，ラインL3，ランドD）を接続先の無くなるランドDまで順次検索して決定する。
【０１８８】
そして、ランドBから分岐した接続順（ランドB，ラインL2）をまだ接続順に登録されていない接続先も無いラインL2まで検索して順次決定する。
同図(2)及び(3)を比較すると接続要素の認識法により同じネットの接続順が異なっていることが分かる。
このような波状型接続要素認識法及び接続要素一意決定法はいずれも上述した各実施例（図３，６，９等）に適用可能である。
【０１８９】
図21は、広面積パターンを外周ライン及び打ち抜きラインと見倣したネット例を示しており、このネットは、ランドA,B,C及びラインL1〜L30で構成されている。
このネットでは、ランドAを基準ランドとする波状型接続要素認識法でランドAとランドB及びCとの接続は認識ができる。しかしながら、ランドBを基準ランドとしてKP番地を塗り替えを行ってもランドBとランドCの接続は認識できない。これは、ランドB,Cで自己ループを抜け出せないことによる。
【０１９０】
図22は、このように波状型接続要素認識法で接続を認識できない簡単な広面積パターンをラインと見倣したネットの実施例を示している。
同図(1)は、ランドA,B,Cを含んだ広面積パターンをラインと見倣したネットを示しており、このネットをランドAを基準として波状型に接続認識して述べると、ランドAにラインL1,L5が接続され、各ラインL1,L5にラインL2,L6が接続され、各ラインL2,L6にランドB,Cが接続され、各ランドB,CにラインL3,L7が接続され、さらにラインL3にラインL4が接続されている。ここでネットの接続認識は終わる。従って、ラインL7とラインL4が接続されていることは認識していない。
【０１９１】
同図(2)は、同図(1)のネットのWLNDテーブル20及びWLINテーブル30を示している。WLNDテーブル20及びWLINテーブル30には、ランドAを基準ランドとしたWKPTRポインタ及びFLGフラグが、図４で示した手順で設定されている。
【０１９２】
同図(3)は、同図(1)のネットのPLINKテーブル50を示しており、このテーブル50のKP番地は、図８で示した手順で同図(2)のWLNDテーブル20及びWLINテーブル30のWKPTRポインタ及びFLGフラグに基づいて設定されている。NKP番地は、図11で示した手順でKP番地に基づいて設定されている。
【０１９３】
PLINKテーブル50の矢印は、設定されたKP番地が指定する接続要素を指し示しており、例えばKP番地“１”のラインL1及びL5からの矢印で配列番地“１”のランドAを指し示している。これは、ラインL1,L5がランドAに接続していることを意味している。
【０１９４】
PLINKテーブル50のランドA,B,C、ラインL1,L2,L3,L5,L6は、矢印で指し示されているが、ラインL4,L7は矢印で指し示されていない。従って、ラインL4とラインL7とが接続されていることは、PLINKテーブル50のKP番地では接続認識されていないことが分かる。
【０１９５】
これは、KP番地にラインL4及びL7の配列番地“７”及び“10”が設定されていないことからも分かる。
また、ラインL4及びL7のNKP番地が“-”に設定されていることからもラインL4とラインL7の接続が認識されていないことが分かる。これは、NKP番地もKP番地に基づいて設定されるためである。
【０１９６】
そこで、ランドAを基準ランドとしたKP番地に基づき、ランドBを基準ランドとした新しいKP番地及び新しいNKP番地を設定した場合、これらの新しいKP番地及び新しいNKP番地でラインL4とラインL7の接続を認識できないことを確認する。
同図(3)の新KP番地は、基準ランドBで前のKP番地を塗り替えたKP番地であり、新NKP番地は、新KP番地に基づいて設定されたNKP番地である。
【０１９７】
新KP番地に、ラインL4及びL7の配列番地“７”及び“10”設定されていないこと、ラインL4及びL7の新NKP番地が“-”に設定されていることから、新KP番地及び新NKP番地ともにラインL4とラインL7との接続を認識していないことが分かる。これは、新KP番地及び新NKP番地もKP番地に基づいて設定されるためである。
【０１９８】
従って、ランドBとCがラインL3、L4及びラインL7を経由して接続されていることを認識することはできない。しかしながら、例えば、ランドAを分離する回路変更を行うため、広面積接続パターンを切断しラインL1及びラインL5を削除した場合、ランドBとC間が直接接続されているか否かを認識する必要がある。
【０１９９】
図23は、広面積接続パターンを波状型接続要素認識法で接続を認識する実施例を示している。
同図(1)は、広面積接続パターンのネットの一部分を示しており、ランドA,B間をラインL1〜L13で接続し、ランドB,C間をラインL20〜L33で接続している。
【０２００】
同図(2)は、同図(1)のネットのランドAとランドB間の接続を認識するためのPLINKテーブル50である。このPLINKテーブル50はランドAを基準ランドとして波状型接続要素認識法で接続順（向き）を決定してKP番地及びNKP番地を設定している。
同図(1)の各ラインL1,…,L13の矢印が、波状型接続要素認識法で決定した接続向き示している。
【０２０１】
従って、ラインとラインの接続点で矢印の先端が集り行き先の矢印の無い接続点が、接続が認識されない接続点である。PLINKテーブル50のKP番地及びNKP番地は、ラインL2とL5、ラインL1とL3、ラインL9とL12、及びラインL11とL13の接続点の接続を認識していない。これはPLINKテーブル50のNKP番地が“-”に設定されていることでも分かる。従って、ランドAとランドBの接続は、ランドA→ラインL7→ラインL8→ランドBの接続順のルートのみで認識されていることが分かる。
【０２０２】
以下に、ランドAとランドBを分離する回路変更について考察する。
PLINKテーブル50は、ランドAとランドBを分離する為にはラインL7又はL8のいずれかを切断すればよいことを示している。そこで、ラインL7を切断する。
【０２０３】
そして、PLINKテーブル50が認識していない接続を認識する為に、ラインL7を含まないPLINKテーブル50を再度作成し、ランドAとランドBが接続されているか否かを判定し、接続されていない場合は終了する。接続されている場合は、途中のラインを削除し、PLINKテーブル50を作成する。これをランドAとランドBが接続されていないことを示すまで繰り返す。
【０２０４】
PLINKテーブル50の作成には、ランド及びラインの接続を座標を参照して認識するため時間がかかる。
【０２０５】
図24は、図23(1)で示した広面積接続パターンのネットの接続順を接続要素一意決定法により決定する実施例を示している。
まず、基準ランドAに接続されるラインL4,L6,L7、L10が認識される（１列目）。そして、ラインL4に注目し（同図中の添え字“＊”は注目した接続要素を示す）、このラインL4に接続したラインL1,L2をラインL4の下に挿入し、ラインL4の下にあったラインL6,L7,L10はラインL2の下に連結する（２列目）。
【０２０６】
以下同様に、注目する接続要素をラインL1,L3,L9,L12,L13,L11,L8として、３〜９列目が決定される。この結果、ランドBがランドAとラインL4,L1,L3,L9,L12,L13,L11,L5,L8を経由して接続されていることが認識される。同様に10〜16列目が決定されランドBとランドCは、ラインL20,L21,L22,L23,L26,L28を経由して接続されていることが認識できる。
【０２０７】
図25は、図24で接続要素一意決定法によって決定され接続順でKP番地及びNKP番地を設定したPLINKテーブル50を示している。
このPLINKテーブル50においては、着目したランドAをネットから分離する為にラインL8を切断した場合においても、KP番地はランドBとランドCとが接続順ランドB→ラインL20,L21,L22,L23,L26,L28→ランドCによって接続されていること示していることが分かる。
【０２０８】
従って、広面積接続パターンの場合においても、初期に着目するランドを基準としたKP番地の設定を１回行うだけよく、KP番地及びNKP番地に基づいて後の接続認識を行うことが可能である。
この結果、回路変更の認識が高速で可能となる。
【０２０９】
図26は、回路変更における部品の追加の実施例を示している。
同図(1)は、既存のプリント配線板100を示しており、このプリント配線板100には電子部品110,120が実装されている。電子部品120のランドは等間隔のランドP1,P2,P3及びランドP4,P5,P6から成っている。
【０２１０】
同図(2)は電子部品130を示しており、この電子部品130は電子部品120より高機能を有し、そのピン配列及び間隔が電子部品120と異なっている。
いま、電子部品120を電子部品130に変更する回路変更を行う必要が発生した場合、ランドP1,…,P6は使用できない。従って、電子部品130のランドN1,…,N6をプリント配線板100の外部に設定しなければならないが、従来の回路変更処理ではできなかった。
【０２１１】
そこで、図１に示したように本発明のパターン入力情報テーブル40は、外部ランドを設定する領域であるEC-NPLNDランド44を有している。そして、EC-NPLNDランド44は、部品ランド41、マニュアルランド42及びビアランド43と同じランドとして扱うように、データ構造が作成されている。
【０２１２】
従って、外部ランドN1,…,N6の実体をEC-NPLNDランド44で参照すること以外は他のランドと同等に扱うことができる。この結果、外部部品を含む回路変更においても、高速な接続認識が可能となる。
【０２１３】
【発明の効果】
以上説明したように、本発明に係るプリント配線板の改造パターン接続認識方法によれば、各接続要素の物理状態を示すパターン入力情報テーブルに基づいて、所定の接続要素を始点として該接続要素の接続順を示す接続向き番地、及び接続順とは逆向きの接続順を示した逆接続向き番地を有する物理接続テーブルを作成するように構成したので、ネットの該接続要素の物理的接続を少ない記憶容量で高速に認識することが可能となった。
【０２１４】
また、該接続要素であるランド及びラインに、それぞれビア、マニュアルランド、並び外部ランド及び布線を含ませ、該ラインの切断を、一時的な断線ラインと見做し、該逆接続向き番地を該接続向き番地に基づいて設定し、該接続向き番地及び該逆接続向き番地に基づき変更後の回路に対応する接続向き番地及び逆接続向き番地を設定し、好ましくは、該始点のランドから別のランドに向かう接続順路の接続順の向きのみを逆にして該別のランドを始点とした該接続向き番地を設定したので、外部部品を含んだ接続要素の物理的な接続を高速で認識して回路変更処理を行うことが可能となった。
【０２１５】
さらに、該広面積パターンをその外周ライン、打抜ライン、架空ライン及びそれらの切断ラインのいずれかのラインと見倣して該接続要素に含ませたので、広面積パターン及びその切断パターンを含めた接続要素の物理的な接続を高速で認識すること及びラインの切断の優先順位を設定することが可能となった。
【０２１６】
【図面の簡単な説明】
【図１】本発明に係るプリント配線板の改造パターン接続認識方法におけるデータ構造例（その１）を示したブロック図である。
【図２】本発明に係るプリント配線板の改造パターン接続認識方法におけるデータ構造例（その２）を示したブロック図である。
【図３】本発明におけるWLNDテーブル及びWLINテーブルの設定例を示した図である。
【図４】本発明におけるWLNDテーブル及びWLINテーブルの設定手順例を示したフローチャート図である。
【図５】本発明に係るプリント配線板の改造パターン接続認識方法におけるデータ構造例（その３）を示したブロック図である。
【図６】本発明に係るプリント配線板の改造パターン接続認識方法におけるPLNKテーブルのKP番地の設定例を示した図である。
【図７】本発明に係るプリント配線板の改造パターン接続認識方法におけるDMY＿WLNDテーブル及びDMY＿WLINテーブルを用いたPLINKテーブルの設定手順例を示したフローチャート図である。
【図８】本発明に係るプリント配線板の改造パターン接続認識方法のPLINKテーブルにおけるKP番地の設定手順例を示したフローチャート図である。
【図９】本発明に係るプリント配線板の改造パターン接続認識方法のPLINKテーブルのKP番地及びNKP番地の設定例を示した図である。
【図１０】本発明に係るプリント配線板の改造パターン接続認識方法のPLINKテーブルのデータ構造例を示したブロック図である。
【図１１】本発明に係るプリント配線板の改造パターン接続認識方法におけるNKP番地の設定手順例を示したフローチャート図である。
【図１２】本発明に係るプリント配線板の改造パターン接続認識方法におけるKP番地塗り替え例を示した図である。
【図１３】本発明に係るプリント配線板の改造パターン接続認識方法におけるKP番地の塗り替えの手順例を示したフローチャート図である。
【図１４】本発明に係るプリント配線板の改造パターン接続認識方法におけるKP番地及びNKP番地の塗り替え例を示した図である。
【図１５】本発明に係るプリント配線板の改造パターン接続認識方法における複数ネットの接続例を示した図である。
【図１６】本発明に係るプリント配線板の改造パターン接続認識方法におけるKP番地及びNKP番地によるループパターン認識例を示した図である。
【図１７】本発明に係るプリント配線板の改造パターン接続認識方法におけるKP番地及びNKP番地によるループパターン認識手順を示したフローチャート図である。
【図１８】本発明に係るプリント配線板の改造パターン接続認識方法における広面積パターンの接続認識及び切断認識例を示した図である。
【図１９】本発明に係るプリント配線板の改造パターン接続認識方法におけるライン切断の優先順位決定例を示した図である。
【図２０】一般的なプリント配線板における接続要素認識法例を示した図である。
【図２１】本発明に係るプリント配線板の改造パターン接続認識方法における広面積接続パターンに対する波状型接続要素認識法の適用例（その１）を示した図である。
【図２２】本発明に係るプリント配線板の改造パターン接続認識方法における広面積接続パターンに対する波状型接続要素認識法の適用例（その２）を示した図である。
【図２３】本発明に係るプリント配線板の改造パターン接続認識方法における広面積接続パターンに対する波状型接続要素認識法の適用例（その３）を示した図である。
【図２４】本発明に係るプリント配線板の改造パターン接続認識方法における広面積接続パターンに対する接続要素一意決定法の適用例を示した図である。
【図２５】本発明に係るプリント配線板の改造パターン接続認識方法における広面積接続パターンに接続要素一意決定法の適用したPLINKテーブル例を示した図である。
【図２６】本発明に係るプリント配線板の改造パターン接続認識方法における外部部品の認識例を示した図である。
【図２７】従来のプリント配線板の改造パターン接続認識方法におけるネット番号によるパターン接続認識例を示したブロック図である。
【図２８】従来のプリント配線板の改造パターン接続認識方法における変更パターン情報を持たないパターン接続認識例を示した図である。
【図２９】従来のプリント配線板の改造パターン接続認識方法におけるデータ構造例を示したブロック図である。
【図３０】従来のプリント配線板の改造パターン接続認識方法におけるPLINKテーブル例を示した図である。
【符号の説明】
A〜F,X〜Z  ランド  P1〜P6  部品ランド      N1〜N6  外部ランド
F1  回路情報１版ファイル              F2  回路情報２版ファイル
F11  パターン情報１版ファイル        F21  パターン情報２版ファイル
L1〜L33  ライン      V1〜V3  ビア    J1  布線        NET1,2  ネット
10  パターンリンクテーブル(PTLNKテーブル)     11,12  PTLNK配列要素
20  ランドワークエリア(WLNDテーブル)、ランドテーブル（LANDテーブル）  21〜26  WLND配列要素      29  検索ランドテーブル(SRCHLNDテーブル）
30  ラインワークエリア(WLINテーブル)、ラインテーブル（LINEテーブル）
31〜36  WLIN配列要素      39  検索ラインテーブル(」SRCHLINテーブル）
40  パターン入力情報テーブル          41  部品ランド(PLNDランド)
42  マニュアルランド(MLNDランド)     43  ビアランド(VLNDランド)
44  外部ランド(EC-NPLNDランド)       45  ライン(LINEライン)
46  布線(EC-JMPER布線)               47  新規布線(NEW-JMPER布線)
50,50＿1,50＿2  物理接続テーブル(PLINKテーブル)   50a  PLINK配列
50b  NEG＿PLINK配列                50c  PLINK配列要素
50d  NEG＿PLINK配列要素
50e  KPPOS＿S構造体                51〜56  PLINK要素
59  PLINK有効数レジスタ
60  ダミーランドワークエリア(DMY＿WLNDテーブル)
61〜63  DMY＿WLND配列要素
70  ダミーラインワークエリア(DMY＿WLINテーブル)
71〜73  DMY＿WLIN配列要素    80,90  広面積パターン  81  外周ライン
82  打抜ライン        100  プリント配線板    110,120,130  電子部品
411,421,431,441  ランド要素          451,461,471  ライン要素
図中、同一符号は同一又は相当部分を示す。
【図１】
0004107739.tif 000002
【図２】
0004107739.tif 000003
【図３】
0004107739.tif 000004
【図４】
0004107739.tif 000005
【図５】
0004107739.tif 000006
【図６】
0004107739.tif 000007
【図７】
0004107739.tif 000008
【図８】
0004107739.tif 000009
【図９】
0004107739.tif 000010
【図１０】
0004107739.tif 000011
【図１１】
0004107739.tif 000012
【図１２】
0004107739.tif 000013
【図１３】
0004107739.tif 000014
【図１４】
0004107739.tif 000015
【図１５】
0004107739.tif 000016
【図１６】
0004107739.tif 000017
【図１７】
0004107739.tif 000018
【図１８】
0004107739.tif 000019
【図１９】
0004107739.tif 000020
【図２０】
0004107739.tif 000021
【図２１】
0004107739.tif 000022
【図２２】
0004107739.tif 000023
【図２３】
0004107739.tif 000024
【図２４】
0004107739.tif 000025
【図２５】
0004107739.tif 000026
【図２６】
0004107739.tif 000027
【図２７】
0004107739.tif 000028
【図２８】
0004107739.tif 000029
【図２９】
0004107739.tif 000030
【図３０】
0004107739.tif 000031