以下、添付の図面を参照しながら、本発明による差動配線方法、差動配線装置、プログラムおよびコンピューター読み取り可能な記録媒体の実施の形態の一例を詳細に説明するものとする。
図1には、本発明による差動配線装置の実施の形態の一例のハードウェア構成を表すブロック構成説明図が示されており、また、図2には、本発明による差動配線装置により実行される処理内容を説明するための機能的な構成を表すブロック構成説明図が示されている。
以下、図1乃至図2を参照しながら本発明による差動配線装置を説明するが、この本発明による差動配線装置100は、回路の設計を行う回路設計装置200およびプリント基板の設計を行う基板設計装置300とともにCADシステム400を構築するものである。
ここで、差動配線装置100は、公知のパーソナルコンピューターシステムや汎用コンピューターシステムなどで実現されており、その全体の動作を中央処理装置(CPU)10を用いて制御するように構成されている。
このCPU10には、バス12を介して、CPU10の制御のためのプログラムや後述する各種のデータなどを記憶するリードオンリメモリ(ROM)やCPU10のワーキングエリアとして用いられる記憶領域などを備えたランダムアクセスメモリ(RAM)などから構成される記憶装置14と、CPU10の制御に基づいて各種の表示を行うCRTや液晶パネルなどの表示画面を備えた表示装置16と、CPU10の制御により生成された各種データを出力するプリンターなどの出力装置18と、表示装置16の表示画面上における任意の位置を指定する入力装置たるマウスなどのポインティングデバイス20と、任意の文字を入力するための入力装置たるキーボードなどの文字入力デバイス22と、外部に接続される各種機器の入出力インターフェース回路(I/O)24とが接続されている。
また、差動配線装置100においては、ハードディスクなどの外部記憶装置26がI/O24を介して接続され、コンパクトディスク(CD)やフレキシブルディスク(FD)などのようなコンピューター読み取り可能な記録媒体(以下、単に「記録媒体」と適宜に称する。)30へCPU10の制御に基づき生成された各種データを書き込んで記憶させたり記録媒体30に記憶された各種データを記憶装置14へ読み込むためのリードライト装置28がI/O24を介して接続され、回路設計装置200がI/O24を介して接続され、基板設計装置300がI/O24を介して接続されている。
ここで、後述する差動配線装置100による処理を実行するためのプログラムや当該処理に用いる各種データは、記憶装置14のリードオンリメモリやランダムアクセスメモリへ予め記憶するようにしておいてもよいし、外部記憶装置26や記録媒体30あるいは回路設計装置200や基板設計装置300などから記憶装置14のランダムアクセスメモリへ読み込むようにしてもよい。また、差動配線装置100に通信機能を設けるようにして、差動配線装置100による処理を実行するためのプログラムや当該処理に用いる各種データを、通信により外部から差動配線装置100の記憶装置14のランダムアクセスメモリへ読み込むようにしてもよい。
なお、以下の説明においては、説明内容を簡潔にして本発明の理解を容易にするために、後述する差動配線装置100による処理を実行するためのプログラムや当該処理に用いる各種データが記憶装置14に予め記憶されているものとする。
また、回路設計装置200には、回路設計データベース202および電子部品データベース204が接続されており、差動配線装置100による処理に用いる回路設計データおよび電子部品データは、回路設計装置200から記憶装置14に読み込まれて記憶されているものとする。
同様に、基板設計装置300には、基板設計データベース302が接続されているとともに差動インピーダンスを含む各種のインピーダンスに関するデータ(インピーダンスデータ)や基板仕様に関するデータ(基板仕様データ)などが入力されており、差動配線装置100による処理に用いる基板設計データおよび差動インピーダンスデータや基板仕様データなどの各種のデータは、基板設計装置300から記憶装置14に読み込まれて記憶されているものとする。
ここで、本発明による差動配線装置100において用いる回路設計データ、電子部品データ、基板設計データならびに基板仕様データとは、それぞれ以下の内容を意味するものとする。
(1)回路設計データ:回路設計データとは、電気回路の論理的接続情報を示すデータである。
(2)電子部品データ:電子部品データとは、各電子部品の電気的特性を示すデータである。
(3)基板設計データ:基板設計データとは、基板ならびに基板に配置する電子部品や配線のレイアウトを示すデータである。
(4)基板仕様データ:基板仕様データとは、予め設定された基板の仕様(基板の仕様とは、例えば、基板の寸法や材料などである。)を示すデータである。
図2には、本発明による差動配線装置100により実行される処理内容を説明するための機能的な構成を表すブロック構成説明図が示されているが、差動配線装置100は、CPU10の制御により機能的には、差動配線情報設定処理手段102と、差動配線入力処理手段104と、差動配線DRC(Design Rule Check:デザインルールチェック)処理手段106と、表示処理手段108と、出力処理手段110とを構築するように構成されている。
即ち、差動配線装置100においては、記憶装置14に記憶されているデータである回路設計データ、電子部品データ、基板設計データ、差動インピーダンスデータならびに基板仕様データを用いて、操作者の指示に従って、差動配線情報設定処理手段102により差動配線を行うために用いる情報たる差動配線情報を自動的に設定する処理が行われる。
そして、差動配線情報設定処理手段102により設定された差動配線情報を用いて、操作者の指示に従って、差動配線入力処理手段104により差動配線を入力する処理や入力した差動配線の編集の処理が行われ、差動配線入力処理手段104により入力や編集された差動配線は、差動配線DRC処理手段106により設計上の各種の条件に合致しているか否かを判定するデザインルールチェックが行われる。
なお、差動配線DRC処理手段106による判定結果は、差動配線入力処理手段104に反映されて、操作者の指示に従って差動配線の編集処理が行われる。
そして、差動配線入力処理手段104により入力された差動配線や差動配線DRC処理手段106により行われたデザインルールチェックの判定結果は、表示処理手段108により表示装置16へ表示させるための表示処理が行われて、表示装置16に表示されるようになるとともに、出力処理手段110により出力装置18へ出力するための出力処理が行われて、出力処理の処理結果のデータたる出力結果ファイル112として出力装置18へ出力される。
また、出力結果ファイル112は、I/O24を介して接続されている回路設計装置200や基板設計装置300へ出力されるようにしてもよい。
なお、表示装置16には、差動配線入力処理手段104により入力された差動配線や差動配線DRC処理手段106により行われたデザインルールチェックの判定結果のみではなく、差動配線入力処理手段104や差動配線DRC処理手段106における処理過程のそれぞれの処理内容をリアルタイムで表示するようにしてもよい。
同様に、出力装置18へは、差動配線入力処理手段104により入力された差動配線や差動配線DRC処理手段106により行われたデザインルールチェックの結果のみではなく、差動配線入力処理手段104や差動配線DRC処理手段106における処理過程のそれぞれの処理内容をリアルタイムで出力するようにしてもよい。
次に、上記した差動配線情報設定処理手段102により設定される差動配線情報について詳細に説明する。
はじめに、差動配線の構造および本発明に関して使用する各種用語の定義について説明する。
即ち、本発明においては、部品のピンを接続して終端する結線情報を「ネット」と定義し、抵抗やコンデンサなどの受動部品(但し、電源あるいはグランドネットに接続する受動部品を除く。)を越えて能動部品(ドライバやレシーバなどのような信号の送受信を行う部品である。)のピンを接続して終端する結線情報を「エレクトリカル・ネット」と定義する。従って、エレクトリカル・ネットは、ネットにより定義することができる。
そして、本発明における「差動配線」とは、ドライバやレシーバなどのような信号の送受信を行う能動部品間を差動伝送方式により接続する対となる2本の配線で構成されたものを意味し、これらは回路的に互いに平衡である。
本発明においては、「ネット」ならびに「エレクトリカル・ネット」を上記したように定義することにより、本発明における「差動配線」は、「ネット」ならびに「エレクトリカル・ネット」を用いて表すことができる。
図3には、差動配線の一例として、差動伝送方式により接続する対となる2本のエレクトリカル・ネットより構成される差動配線に抵抗が挿入された回路が示されている。
なお、図3に示す回路においては、図4(a)に示すように、リファレンスIC1がドライバ(能動部品)を示し、また、リファレンスIC2がレシーバ(能動部品)を示し、リファレンスR1が抵抗(受動部品)を示し、また、リファレンスR2が抵抗(受動部品)を示すものとする。
そして、この図3に示す回路の回路設計データの結線情報は、CADシステム400においては、図4(b)に示すように、エレクトリカル・ネット名が「EnetA」、「EnetB」として定義され、ネット名が「NetA1」、「NetA2」、「NetB1」、「NetB2」として定義されている(図3参照)。
また、ピン名については、図3に示すように、NetA1が接続して終端されるIC1のピンが「IC1(1)」として定義され、NetA1が接続して終端されるR1のピンが「R1(1)」として定義され、NetA2が接続して終端されるR1のピンが「R1(2)」として定義され、NetA2が接続して終端されるIC2のピンが「IC2(1)」として定義され、NetB1が接続して終端されるIC1のピンが「IC1(2)」として定義され、NetB1が接続して終端されるR2のピンが「R2(1)」として定義され、NetB2が接続して終端されるR2のピンが「R2(2)」として定義され、NetB2が接続して終端されるIC2のピンが「IC2(2)」として定義される。
さらに、各ピンの入出力の属性たる「ピンI/O(Input(入力)/Output(出力)」も、上記した各ピン毎に「Input(入力)」、「Output(出力)」あるいは「任意」のいずれかに定義される。なお、「任意」とは、「Input(入力)」と「Output(出力)」とのいずれでもよいことを意味する。
また、各ネットと各ピンとの対応付けについては、従来の回路設計データにおける結線情報と同様に定義される。
ここで、上記したように、図3に示す回路における差動配線は2つの配線たるエレクトリカル・ネットで構成されるが、CADシステム400のデータとしては、後述するように、差動配線情報設定処理手段102により差動配線を行うために用いる情報たる差動配線情報として、「差動ペア」と「差動ネットペア」と「差動ピンペア」との3種の差動配線のデータたる差動配線情報のペア構造が自動的に設定されるようになされている。
より詳細には、これら3種類の差動配線情報たる「差動ペア」と「差動ネットペア」と「差動ピンペア」とは、差動配線情報設定処理手段102において、「差動ネットペア」と「差動ピンペア」とが自動生成されるとともに、自動生成された「差動ネットペア」と「差動ピンペア」とに基づいて「差動ペア」が自動生成されるようになされている。
また、これら「差動ペア」と「差動ネットペア」と「差動ピンペア」との3種の差動配線のデータのペア構造は、回路的に互いに平衡である。
なお、「差動ペア」と「差動ネットペア」と「差動ピンペア」との3種の差動配線のデータを総称して、「差動ペアデータ」と適宜に称する。
ここで、「差動ペア」とは、差動配線を構成するエレクトリカル・ネットを示し、また、「差動ネットペア」とは、エレクトリカル・ネットを構成するネットの対を示し、また、「差動ピンペア」とは、「差動ネットペア」を構成する各ネットが終端する各ピンの対を示している。
従って、図3に示す回路において、差動配線を構成する対となる一対の配線たる2本のエレクトリカル・ネットのEnetAとEnetBとが差動配線を構成する場合には、図3に示す回路の差動配線情報は、図5に示すように、差動ペアが「EnetA−EnetB」の対となり、差動ネットペアが「NetA1−NetB1」の対と「NetA2−NetB2」の対となり、差動ピンペアが「IC1(1)−IC1(2)」(ピンI/Oは「Output」である。)の対と「IC2(1)−IC2(2)」(ピンI/Oは「Input」である。)の対と「R1(1)−R2(1)」(ピンI/Oは任意である。)の対と「R1(2)−R2(2)」(ピンI/Oは任意である。)の対となる。
なお、受動部品(R1およびR2)は信号の入出力には直接的に関係しないため、データ上そのピンI/Oは「任意」としている。
また、差動配線には、電源に接続するプルアップ抵抗、あるいは、グランドに接続するプルダウン抵抗、もしくは、その両方(テブナン終端)を挿入するようにした回路構成も存在するものであり、図6にはそうした回路の一例が示されている。
そして、図4(a)に相当する図7(a)には、図6に示す回路を構成する各部品のリファレンスが示されており、また、図4(b)に相当する図7(b)には、図6に示す回路の回路設計データの結線情報が示されている。
即ち、図6に示す回路においては、図7(a)に示すように、リファレンスIC1がドライバ(能動部品)を示し、また、リファレンスIC2がレシーバ(能動部品)を示し、リファレンスR1が抵抗(受動部品)を示し、また、リファレンスR2が抵抗(受動部品)を示し、リファレンスR3が抵抗(受動部品)を示し、また、リファレンスR4が抵抗(受動部品)を示し、リファレンスR5が抵抗(受動部品)を示し、また、リファレンスR6が抵抗(受動部品)を示すものとする。
そして、この図6に示す回路の回路設計データの結線情報は、CADシステム400においては、図7(b)に示すように、エレクトリカル・ネット名が「EnetA」、「EnetB」として定義され、ネット名が「NetA1」、「NetA2」、「NetB1」、「NetB2」として定義されている(図6参照)。
また、ピン名については、図6に示すように、NetA1が接続して終端されるIC1のピンが「IC1(1)」として定義され、NetA1が接続して終端されるR1のピンが「R1(1)」として定義され、NetA2が接続して終端されるR1のピンが「R1(2)」として定義され、NetA2が接続して終端されるIC2のピンが「IC2(1)」として定義され、NetB1が接続して終端されるIC1のピンが「IC1(2)」として定義され、NetB1が接続して終端されるR2のピンが「R2(1)」として定義され、NetB2が接続して終端されるR2のピンが「R2(2)」として定義され、NetB2が接続して終端されるIC2のピンが「IC2(2)」として定義され、R3の両端のピンがR3(1)およびR3(2)とそれぞれ定義され、R4の両端のピンがR4(1)およびR4(2)とそれぞれ定義され、R5の両端のピンがR5(1)およびR5(2)とそれぞれ定義され、R6の両端のピンがR6(1)およびR6(2)とそれぞれ定義される。
さらに、各ピンの入出力の属性たる「ピンI/O(Input(入力)/Output(出力)」も、上記した各ピン毎に「Input(入力)」、「Output(出力)」あるいは「任意」のいずれかに定義される。なお、「任意」とは、上記したように「Input(入力)」と「Output(出力)」とのいずれでもよいことを意味する。
また、各ネットと各ピンとの対応付けについても、上記したように、従来の回路設計データにおける結線情報と同様に定義される。
また、図5に相当する図8には、差動配線情報設定処理手段102において自動生成される図6に示す回路における「差動ペア」と「差動ネットペア」と「差動ピンペア」との3種の差動配線データの構成が示されている。
即ち、図6に示す回路において、差動配線を構成する対となる一対の配線たる2本のエレクトリカル・ネットのEnetAとEnetBとが差動配線を構成する場合には、図6に示す回路の差動配線情報は、図8に示すように、差動ペアが「EnetA−EnetB」の対となり、差動ネットペアが「NetA1−NetB1」の対と「NetA2−NetB2」の対となり、差動ピンペアが「IC1(1)−IC1(2)」(ピンI/Oは「Output」である。)の対と「IC2(1)−IC2(2)」(ピンI/Oは「Input」である。)の対と「R1(1)−R2(1)」(ピンI/Oは任意である。)の対と「R1(2)−R2(2)」(ピンI/Oは任意である。)の対と「R3(2)−R4(2)」(ピンI/Oは任意である。)の対と「R5(1)−R6(1)」(ピンI/Oは任意である。)の対となる。
なお、受動部品(R1、R2、R3、R4、R5およびR6)は信号の入出力には直接的に関係しないため、データ上そのピンI/Oは「任意」としている。
なお、図6に示す回路においては、エレクトリカル・ネットの対象とならないR3、R4に接続する電源ネット側のピン(R3(2)およびR4(2))と、R5、R6に接続するグランドネット側のピン(R5(1)およびR6(2))とは、差動ピンペアの対象とはしない。
さらに、差動配線には、差動配線を構成する2配線間を抵抗(ブリッジ抵抗)で接続する回路構成も存在するものであり、図9にはそうした回路の一例が示されている。
この場合には、エレクトリカル・ネットは1つとなるものであり、図4(a)に相当する図10(a)には、図9に示す回路を構成する各部品のリファレンスが示されており、また、図4(b)に相当する図10(b)には、図9に示す回路の回路設計データの結線情報が示されている。
即ち、図9に示す回路においては、図10(a)に示すように、リファレンスIC1がドライバ(能動部品)を示し、また、リファレンスIC2がレシーバ(能動部品)を示し、リファレンスR1が抵抗(受動部品)を示し、また、リファレンスR2が抵抗(受動部品)を示し、リファレンスR3が抵抗(受動部品)を示すものとする。
そして、この図9に示す回路の回路設計データの結線情報は、CADシステム400においては、図10(b)に示すように、エレクトリカル・ネット名が「EnetA」として定義され、ネット名が「NetA1」、「NetA2」、「NetB1」、「NetB2」として定義されている(図9参照)。
また、ピン名については、図9に示すように、NetA1が接続して終端されるIC1のピンが「IC1(1)」として定義され、NetA1が接続して終端されるR1のピンが「R1(1)」として定義され、NetA2が接続して終端されるR1のピンが「R1(2)」として定義され、NetA2が接続して終端されるIC2のピンが「IC2(1)」として定義され、NetB1が接続して終端されるIC1のピンが「IC1(2)」として定義され、NetB1が接続して終端されるR2のピンが「R2(1)」として定義され、NetB2が接続して終端されるR2のピンが「R2(2)」として定義され、NetB2が接続して終端されるIC2のピンが「IC2(2)」として定義され、R3の両端のピンがR3(1)およびR3(2)とそれぞれ定義される。
さらに、各ピンの入出力の属性たる「ピンI/O(Input(入力)/Output(出力)」も、上記した各ピン毎に「Input(入力)」、「Output(出力)」あるいは「任意」のいずれかに定義される。なお、「任意」とは、上記したように「Input(入力)」と「Output(出力)」とのいずれでもよいことを意味する。
また、各ネットと各ピンとの対応付けについても、上記したように、従来の回路設計データにおける結線情報と同様に定義される。
ここで、上記したように、図9に示す回路においてはエレクトリカル・ネットは1つとなるが、差動配線でのドライバとレシーバとの間の接続はブリッジ抵抗を越える場合を除外する。
この場合の差動配線情報設定処理手段102において自動生成される「差動ペア」と「差動ネットペア」と「差動ピンペア」との3種の差動配線のデータは、図5に相当する図11に示すような構成となる。
即ち、図9に示す回路において、EnetAが差動配線を構成する場合には、図9に示す回路の差動配線情報は、図11に示すように、差動ペアが「EnetA」となり、差動ネットペアが「NetA1−NetB1」の対と「NetA2−NetB2」の対となり、差動ピンペアが「IC1(1)−IC1(2)」(ピンI/Oは「Output」である。)の対と「IC2(1)−IC2(2)」(ピンI/Oは「Input」である。)の対と「R1(1)−R2(1)」(ピンI/Oは任意である。)の対と「R1(2)−R2(2)」(ピンI/Oは任意である。)の対と「R3(1)−R3(2)」(ピンI/Oは任意である。)の対となる。
なお、後述するように、CADシステム400において差動配線を実際に入力する際には、差動ネットペア単位で入力することになる。また、差動ネットペアの接続先は、差動ピンペアで指定されることになる。
次に、差動配線情報設定処理手段102により差動配線情報の差動ネットペア、差動ピンペアならびに差動ペアを自動生成する処理について、図12(a)(b)ならびに図13を参照しながら説明する。
なお、上記したように、差動配線情報設定処理手段102は、「差動ネットペア」と「差動ピンペア」とを自動生成するとともに、自動生成した「差動ネットペア」と「差動ピンペア」とに基づいて「差動ペア」を自動生成する処理を行う。
即ち、この差動配線情報設定処理手段102による差動配線情報の自動生成処理とは、CADシステム400の操作者が、差動ペアを構成する差動ネットペアとして生成すべき対象を示す文字列(以下、「差動ペア生成文字列」と適宜に称する。差動ペア生成文字列は、単数あるいは複数の文字や記号からなるものである。)を予め入力して定義するとともに、差動ネットペアを構成することができるように当該差動ペア生成文字列を各ネットのネット名に付与しておくと(図12(a)参照)、差動配線情報設定処理手段102はそのネット名の組合せを確認することで自動的に差動ペアデータとして差動ネットペアおよび差動ピンペアを自動的に生成するとともに(図12(b)参照)、自動的に生成した差動ネットペアおよび差動ピンペアから差動ペアを自動的に生成するという処理である。
より詳細には、このCADシステム400においては、操作者が文字入力デバイス22を用いて、図12(a)に示すように対となる信号として認識させる文字列を2種類入力すると、当該入力された2種類の文字列が差動ペア生成文字列として定義して設定され、記憶装置14に記憶されることになる。
なお、図12(a)(b)には、差動ペア生成文字列として「−posi」と「−nega」との2種類の文字列を定義し、定義した差動ペア生成文字列たる「−posi」あるいは「−nega」を各ネットのネット名にそれぞれ付与した例が示されている。
上記したようにして差動ペア生成文字列を設定した後に、図13に示す差動配線情報設定処理手段102により差動配線情報を自動生成する処理のプログラム(以下、「差動配線情報自動生成処理プログラム」と適宜に称する。)を起動して処理を実行することにより、図12(b)に示すように、自動的に差動ネットペアを検出して、差動ペアデータとして差動ネットペアおよび差動ピンペアが自動的に生成されることになる。
こうして差動ネットペアおよび差動ピンペアが自動的に生成されると、自動的に生成された差動ネットペアおよび差動ピンペアに基づいて、差動ネットペアおよび差動ピンペアに対応する差動ペアが自動的に生成されることになる。
なお、図12(b)には、ネット名「NetA」の後ろに差動ペア生成文字列「−posi」と差動ペア生成文字列「−posi」とが付加されている場合に、差動ネットペアとしてネット名「NetA−posi」とネット名「NetB−nega」との一対のネットが検出された例が示されている。
ここで、図13には、差動配線情報設定処理手段102により差動配線情報を自動生成する処理のプログラム(以下、「差動配線情報自動生成処理プログラム」と適宜に称する。)のルーチンを示すフローチャートが表されている。
なお、差動配線情報設定処理手段102により差動配線情報を自動生成するために差動配線情報自動生成処理プログラムを起動するには、差動配線情報自動生成処理プログラムを起動するコマンドを設定しておき、当該コマンドを入力することにより差動配線情報自動生成処理プログラムを起動するようにすればよい。
そして、差動ペア生成文字列を設定した後に差動配線情報自動生成処理プログラムが起動されると、まず、記憶装置14から設定した差動ペア生成文字列を読み出して取得する処理が行われる(ステップS1302)。
次に、CADシステム400における処理対象の回路のCADデータの中から、回路設計データ中の全てのネットのネット名(全ネット名)を検索する(ステップS1304)。なお、本明細書においては、CADシステム400が扱うデータを総称して「CADデータ」と適宜に称することとする。
それから、ステップS1304の処理で検索した全ネット名の中から、ステップS1302の処理で取得した差動ペア生成文字列と一致する文字列を含む同じネット名のネット同士を、差動ネットペアを構成する対となるネットのネット名として検索する(ステップS1308)。
さらに、差動ペアデータとして、ステップS1308の処理で検索されたネット名に該当するネットを差動ネットペアとして生成するとともに当該差動ネットペアを構成する各ネットが終端するピンを差動ピンペアとして生成し、さらに、生成した差動ネットペアおよび差動ピンペアに対応する差動ペアを生成し、この差動配線情報自動生成処理プログラムの処理を終了する。
こうして自動的に生成された差動ペア、差動ネットペアおよび差動ピンペアは、互いにそれぞれ関連付けられて記憶装置14に記憶される。
そして、記憶装置14に記憶された差動ペアデータたる差動ペア、差動ネットペアおよび差動ピンペアは、記憶装置14から適宜に読み出されて、後述する各処理において用いられる。
従って、上記した差動配線情報自動生成処理プログラムを実行することにより、図12(b)に示すように、ステップS1304の処理で検索した全ネット名の中から、同じネット名に差動ペア生成文字列が付随しているネット同士(図12(b)に示す例においては、同じネット名「NetA」に「−posi」と「−nega」とがそれぞれ付随している「NetA−posi」と「NetA−nega」とである。)が、差動ペア対象ネット(差動ネットペア)として選択されることになり、図5、図8あるいは図11に示すように、その差動ネットペアに関する差動ペアデータが生成されることになる。
それとともに、差動ネットペアを構成する各ネット(図12(b)に示す例においては、「NetA−posi」および「NetA−nega」である。)が終端するピン(図12(b)に示す例においては、部品AAAのピン「b1」とピン「b2」との対と、部品BBBのピン「c1」とピン「c2」との対とである。)が、差動ピンペアとして選択されることになり、図5、図8あるいは図11に示すように、その差動ピンペアに関する差動ペアデータが生成されることになる。
さらに、上記のように生成された差動ネットペアと差動ピンペアとに関する差動ペアデータを用いて、対応する差動ネットペアと差動ピンペアとを接続するエレクトリカル・ネット同士(図12(b)に示す例においては、「NetA−posi」と「NetA−nega」とである。)が、差動ペアとして選択されることになり、図5、図8あるいは図11に示すように、その差動ペアに関する差動ペアデータが生成されることになる。
なお、ステップS1304の処理で検索した全ネット名の中に差動ペア生成文字列が無い、あるいは、ステップS1304の処理で検索した全ネット名の中に差動ペア生成文字列があってもネット名が一致するものが無ければ、それらは差動ネットペアの対象となるネットではない、即ち、非差動ペア対象ネット(図12(b)に示す例においては、「NetC−posi」と「NetD」である。)であるので、差動ペアデータが生成されることはない。
なお、上記した図12(a)(b)に示す例においては、差動ペア生成文字列として単数の記号「−」と複数の文字「posi」あるいは「nega」とよりなる「−posi」と「−nega」との2種類の文字列を差動ペア生成文字列として定義し、これら「−posi」と「−nega」とをネット名の後ろに付加するようにしたが、定義される差動ペア生成文字列や差動ペア生成文字列のネット名への付加の仕方は、図12(a)(b)に示す例に限られるものではないことは勿論である。
即ち、上記したように、差動ペア生成文字列は、単数あるいは複数の文字や記号からなるものであればよく、例えば、「*」や「/」あるいは「%」のような単数の記号や、「p」あるいは「n」のような単数の文字でもよい。
また、これら差動ペア生成文字列のネット名への付加の仕方としては、図12(a)(b)に示す例のようにネット名の後ろに付加するのではなく、ネット名の前に付加したり、あるいは、ネット名を差動ペア生成文字列で挟むように付加してもよい。
具体的には、ネット名が「NetA」であるときに、差動ペア生成文字列として「/」を定義して、差動ペア生成文字列をネット名の前に付加して「/NetA」としてもよい。
また、ネット名が「NetA」であるときに、差動ペア生成文字列として「%」を定義して、差動ペア生成文字列によりネット名を挟むように付加して「%NetA%」としてもよい。
また、差動配線情報設定処理手段102により差動配線情報を自動生成する処理は、上記した手法によるものに限られるものではなく、例えば、以下に説明するような手法を用いてもよい。
即ち、CADシステム400における電子部品データベースの部品ライブラリ内の各部品に、差動ペアデータを生成する対象のピン情報として差動ピンペアの情報を定義しておき、そのピン同士がエレクトリカル・ネットで接続されているか否かを調べて、自動的に差動ネットペアを生成するような手法を用いてもよい(図14(a)(b)および図15を参照する。)。
より詳細には、例えば、図14(a)に示すように、部品ライブラリ内の部品AAAと部品BBBとに、ピン名に加えて差動ペアデータを生成する対象のピン情報として差動ピン名を設定しておき、差動ピン名が設定されたピン名のピン同士が同一のエレクトリカル・ネットで接続されているか否かを検索して自動的に差動ネットペアを生成し(図15参照)、さらに差動ペアを生成するというものである。
なお、図14(a)に示す例においては、差動ピン名として、差動ピンペアを構成する際に対となる相手のピン名を設定している。
即ち、図14(a)は図15に示す差動配線を生成するための一例であり、図15を参照しながら具体的に説明すると、部品AAAに関しては、ピンa1に対して差動ピン名として「a2」を設定するとともにピンa2に対して差動ピン名として「a1」を設定し、また、ピンb1に対して差動ピン名として「b2」を設定するとともにピンb2に対して差動ピン名として「b1」を設定している。
同様に、部品BBBに関しては、ピンc1に対して差動ピン名として「c2」を設定するとともにピンc2に対して差動ピン名として「c1」を設定し、また、ピンc3に対して差動ピン名として「c4」を設定するとともにピンc4に対して差動ピン名として「c3」を設定している。
しかしながら、図14(b)に示すように、他とは区別可能な一意的な名称を差動ピン名として設定するようにしてもよい。
図14(b)も図15に示す差動配線を生成するための一例であり、図15を参照しながら具体的に説明すると、図14(b)に示す例においては、他とは区別可能な一意的な名称として、具体的には、ピンa1およびピンa2に対して「a1−a2」がそれぞれ設定され、ピンb1およびピンb2に対して「b1−b2」がそれぞれ設定されている。
以下、図14(a)(b)および図15を参照しながら、差動配線情報を自動生成する処理について説明すると、まず、図14(a)あるいは図14(b)に示すように、予め部品ライブラリ内の部品に差動ネットペアを生成する対象のピン情報を定義して設定した後に、図16に示す差動配線情報自動生成処理プログラムを起動して処理を実行すると、図15に示すように自動的に差動ペアデータが生成されることになる。
即ち、図16には、差動配線情報設定処理手段102により差動配線情報を自動生成する処理のプログラムたる差動配線情報自動生成処理プログラムの他の例のフローチャートが示されている。
なお、差動配線情報設定処理手段102により図16に示す差動配線情報を自動生成するために差動配線情報自動生成処理プログラムを起動するには、差動配線情報自動生成処理プログラムを起動するコマンドを設定しておき、図13に示す上記した差動配線情報自動生成処理プログラムと同様に、当該コマンドを入力することにより差動配線情報自動生成処理プログラムを起動するようにすればよい。
そして、差動配線情報自動生成処理プログラムが起動されると、まず、CADシステム400における処理対象の回路のCADデータの中から、回路設計データ中の全部品を検索する(ステップS1602)。
次に、部品ライブラリを参照して、ステップS1602の処理で検索した部品の中から、差動ピン情報として差動ピン名が設定されている部品を検索する(ステップS1604)。
そして、差動ピン名を設定されたピンに結線しているエレクトリカル・ネット中の能動部品のピン全てが、差動ピン情報として差動ピン名が設定されているか確認する(ステップS1606)。
それから、差動ピン情報として差動ピン名が設定されているピンに結線しているネットそれぞれに、差動ピンペアとなるピンが存在するかを確認する(ステップS1608)。
そして、ステップS1608で差動ピンペアとなるピンの存在が確認されたものについて差動ネットペアとするとともに当該差動ネットペアを構成する各ネットが終端するピンを差動ピンペアとして差動ペアデータを生成し(ステップS1610)、さらに、生成した差動ネットペアおよび差動ピンペアに対応する差動ペアを生成し、この差動配線情報自動生成処理プログラムの処理を終了する。
従って、上記した差動配線情報自動生成処理プログラムを実行することにより、図15に示すように、エレクトリカル・ネットの終端が全て差動ピンであるもの(図15に示す例においては、NetAとNetBとである。)については、差動ペア対象ネット(差動ネットペア)として選択されることになり、図5、図8あるいは図11に示すように、その差動ネットペアに関する差動ペアデータが生成されることになる。
それとともに、差動ネットペアを構成する各ネット(図15に示す例においては、「NetA」と「NetB」とである。)が終端するピン(図15に示す例においては、部品AAAのピン「b1」とピン「b2」との対と、部品BBBのピン「c1」とピン「c2」との対とである。)が、差動ピンペアとして選択されることになり、図5、図8あるいは図11に示すように、その差動ピンペアに関する差動ペアデータが生成されることになる。
さらに、上記のように生成された差動ネットペアと差動ピンペアとに関する差動ペアデータを用いて、対応する差動ネットペアと差動ピンペアとを接続するエレクトリカル・ネット同士(図15に示す例においては、「NetA」と「NetB」とである。)が、差動ペアとして選択されることになり、図5、図8あるいは図11に示すように、その差動ペアに関する差動ペアデータが生成されることになる。
一方、エレクトリカル・ネットの終端が全て差動ピンでないものについては、差動ネットペアの対象ではない、即ち、非差動ペア対象ネット(図15に示す例においては、NetCとNetDとである。)であるので、差動ペアデータが生成されることはない。
以上において説明したような手法により、図5、図8あるいは図11に示すように、差動配線に用いる差動配線情報たる差動ペアデータとして、差動ペアと差動ネットペアと差動ピンペアとからなるデータが構築されることになる。
次に、差動配線入力処理手段104による差動配線の入力処理について説明するが、はじめに、差動配線の入力の際に必要となる配線層毎の差動配線間隔を取得する手法について説明する。
従来、配線層毎の差動配線間隔を取得するに際しては、差動配線の際に適切な差動インピーダンス値になるまで、SI(Signal Integrity)シミュレータ(伝送線路シミュレータ)を使用しながら試行錯誤で配線間隔を決定するようになされていたものである。
このため、適切な差動配線間隔を求めるには、試行錯誤による多大な時間を要するものであった。
差動配線装置100の差動配線入力処理手段104においては、上記した点に鑑み、適切な差動インピーダンス値を保った差動配線間隔を自動的に取得して、差動配線入力が可能なようになされている。
まず、差動配線の配線パターンたる差動配線パターンとしては、図17(a)に示す「マイクロストリップ・ライン」と、図17(b)に示す「ストリップ・ライン(エッジ結合)」(以下、適宜に「エッジ」と適宜に称する。)と、図17(c)に示す「ストリップ・ライン(ブロードサイド結合)」(以下、適宜に「ブロードサイド」と適宜に称する。)との3つの差動配線パターンが存在する。
ここで、マイクロストリップ・ラインとは、プリント基板の表層に同層で指定の差動配線間隔で並行に配線する差動配線パターンであり、また、エッジとは、プリント基板の内層に同層で指定の差動配線間隔で並行に配線する差動配線パターンであり、また、ブロードサイドとは、内層の上下に位置する隣接層に上下に重なるように配線する差動配線パターンである。
即ち、これら3つの差動配線パターンの中でマイクロストリップ・ラインとエッジとは、同じ配線層で差動配線パターンを並走させるものである。
一方、これら3つの差動配線パターンの中のブロードサイドは、上下に隣接して位置する異なる配線層のいずれか一方の配線層に一方の差動配線パターンを位置させるとともに、他方の配線層に他方の差動配線パターンを位置させて、異なる配線層に上下に隣接して位置させた差動配線パターンを並走させるものである。
ここで、マイクロストリップ・ラインあるいはエッジのように、同じ配線層で一対の差動配線パターンを並走させる場合には、一対の差動配線パターンの間隔を適正に設定する必要がある。
即ち、同じ配線層で差動配線パターンを並走させる場合には、差動配線パターンの間隔が差動インピーダンスに影響を与えるようになるため、差動伝送の規格で設定された差動インピーダンスとなるように、差動配線パターンの間隔が適正に設定されなければならないものである。
一般に、マイクロストリップ・ラインの差動インピーダンスは、図18(a)に示す式により求められ、また、エッジの差動インピーダンスは、図18(b)に示す式により求められる。
なお、プリント基板の基板仕様ならびに信号伝送用の配線幅(図18(a)(b)におけるプリント・パターンの幅wである。)は、物理的、かつ、製造的な制約としてプリント基板の設計条件で決まっている。
このため、差動インピーダンスを変化させるパラメータは、実質的には、差動配線パターンのペア配線の間隔たる差動配線間隔(図18(a)における2本のマイクロストリップ・ラインの間隔sであり、また、図18(b)における2本のストリップ・ラインの間隔sである。)のみとなる。
従って、設計しようとする差動配線の差動インピーダンスを、当該差動配線に採用する差動伝送規格で指定される差動インピーダンスの値に合致させるには、差動配線間隔を変化させることにより差動インピーダンスを調整する必要がある。
また、図18(a)(b)に示すように、マイクロストリップ・ラインとエッジとで差動インピーダンスを求める式が異なることから、各配線層で差動配線間隔を常に一定とした場合には、層毎に差動インピーダンスが異なるようになることが予想される。
換言すれば、配線層の表層を走る差動配線パターンと配線層の内層を走る差動配線パターンとの間で差動インピーダンスを一定に保つためには、配線層毎に差動配線間隔を設定することができるようにして、図19に示すように配線層毎に異なった差動配線間隔を設定する必要がある。
即ち、図19に示す例においては、第1層に形成された差動配線パターンの差動配線間隔W1は、内層である第4層に形成された差動配線パターンの差動配線間隔W2よりも広く設定されている。
差動配線入力処理手段104においては、図20に示すように、差動インピーダンスとプリント基板設計条件の差動配線パターンの配線幅とプリント基板の基板仕様(誘電体の誘電率、誘電体厚、層構成、導体厚)とが決定されたならば、そのデータをSIシミュレータ500に入力して各層の差動配線間隔を求めるようになされている。
このSIシミュレータ500もCADシステム400内に構築されるものであり、SIシミュレータ500とプリント基板設計装置300とは密接に関連付けられており、SIシミュレータ500で求められたプリント基板の各層の差動配線間隔は、基板設計データに反映されるようになされている。
図20を参照しながらより詳細に説明すると、差動インピーダンスとプリント基板設計条件(差動配線パターンの配線幅)とプリント基板の基板仕様(誘電体の誘電率、誘電体厚、層構成、導体厚)とをSIシミュレータ500に入力すると、差動配線間隔の計算が行われて、プリント基板の各層の差動配線間隔が得られ、当該得られたプリント基板の各層の差動配線間隔は、基板設計データベース302に記憶されるようになされているものである。
図21には、SIシミュレータ500で実行される差動配線間隔を取得する処理のプログラム(以下、「差動配線間隔取得処理プログラム」と称する。)のルーチンを示すフローチャートが表されている。
上記した差動配線情報設定処理プログラムと同様に、起動コマンドの入力などにより差動配線間隔取得処理プログラムが起動されると、まず、プリント基板の基板仕様を取得し(ステップS2102)、差動配線間隔を取得する対象となる差動ペアを選択する(ステップS2104)。
なお、ステップS2104の処理において差動ペアを選択するに際しては、複数の差動ペアを選択することができる。
次に、ステップS2104の処理で選択した差動ペアのそれぞれに対して、プリント基板の基板仕様と当該差動ペアの配線幅とから、当該差動ペアの差動インピーダンスが得られる差動配線間隔を配線層毎に計算する(ステップS2106)。
そして、各差動ペアに対してステップS2106で計算した配線層毎の差動配線間隔をそれぞれ設定して、これを基板設計データベース302に転送し(ステップS2108)、この差動配線間隔取得処理プログラムの処理を終了する。
従って、上記した差動配線間隔取得処理プログラムの処理により、差動ペアのプリント基板の各層における差動配線間隔が、基板設計データベース302に記憶されるようになる。
次に、差動配線情報入力処理手段104により、差動配線情報を入力する処理について説明する。
ここで、差動配線では、上記したように、極性の異なる2つの信号(本明細書においては、極性の異なる2つの信号を、それぞれ「ポジ信号」と「ネガ信号」と適宜に称することとする。)を伝送する2つの配線が必要である。
差動配線情報入力処理手段104は、プリント基板の同層に2つの配線を同時に入力することができる(換言すれば、マイクロストリップ・ラインならびにエッジの差動配線パターンによる同時配線入力を行うことができる。)とともに、プリント基板の内層の上下に位置する隣接層に2つの配線を同時に入力することができる(換言すれば、ブロードサイドの差動配線パターンによる同時配線入力を行うことができる。)ようになされている。
より詳細には、差動配線情報入力処理手段104は、差動配線情報設定処理手段102で設定した差動配線情報を用いて、以下の3つの配線モードにより差動配線情報を入力することができるものである。
なお、以下の3つの配線モードにより差動配線情報を入力することによりプリント基板に配線された差動配線パターンの情報は、基板設計データベースに転送されて記憶され、各種の処理に反映される。
(1)マイクロストリップ・ライン配線モード:プリント基板の表層に、同層で指定の差動配線間隔を開けて並行に差動配線パターンを配線する配線モードである。
(2)ストリップ・ライン(エッジ結合)配線モード(エッジ結合配線モード):プリント基板の内層に、同層で指定の差動配線間隔を開けて並行に差動配線パターンを配線する配線モードである。
(3)ストリップ・ライン(ブロードサイド結合)配線モード(ブロードサイド結合配線モード):プリント基板の内層において、上下に隣接して位置する異なる配線層のいずれか一方の配線層に一方の差動配線パターンを位置させるとともに、他方の配線層に他方の差動配線パターンを位置させて、異なる配線層に上下に位置させて差動配線パターンを配線する配線モードである。このブロードサイド結合配線モードによるブロードサイド結合配線は、特に狭ピッチのピン間を差動配線しなければならない場合に有効である。なお、ブロードサイド結合配線モードによりブロードサイドの差動配線パターンを入力して、ブロードサイドの差動配線パターンによる差動配線を生成するには、以下の3つの条件を満たす必要がある。
条件1:差動配線パターンを配線する上下に隣接して位置する2つの配線層がいずれもベタ層で挟まれていること(2つのベタ層の間に差動配線パターンを配線する上下に隣接して位置する2つの配線層が配置されること)
条件2:差動配線パターンを配線する上下に隣接して位置する2つの配線層のベタ層からの距離が同じであること(一方の配線層に近い一方のベタ層と当該一方の配線層との間の距離と他方の配線層に近い他方のベタ層と当該他方の配線層との間の距離とが等しいこと)
条件3:差動配線パターンを配線する上下に位置する2つの配線層がその間に他の配線層がないようにして隣接していること(差動配線パターンを配線する上方に位置する配線層と下方に位置する配線層との間に他の配線層が位置していないこと)
ここで、図22に示す10層からなるプリント基板を参照しながら、上記した条件1〜3に合致する配線層について説明する。なお、図22において、図中の算用数字が層の順番を示している。
この図22に示す10層からなるプリント基板において、ベタ層(3層および8層)で挟まれていて(条件1)、かつ、ベタ層(3層および8層)からの距離が同じであり(条件2)、かつ、間に他の配線層がない隣接層である(条件3)、という条件を満たす2つの配線層の組み合わせは、5層と6層とよりなる組み合わせのみであり(図22において○印で示す。)、他の層は上記した条件1〜3を満たしていない(図22において×印で示す。)。
従って、図22に示す10層からなるプリント基板においては、5層と6層とよりなる組み合わせのみに対して、ブロードサイド結合配線モードによりブロードサイドの差動配線パターンを入力することができる。
また、後述するように、このブロードサイド結合配線モードにおいては、差動配線パターンを入力する際に一方の配線層を指定して配線を行うようにすると、上記条件1〜3を満たす他方の配線層が自動的に指定されて配線が行われるようになされている。なお、上記条件1〜3を満たす他方の配線層が存在しない場合には、ブロードサイド結合配線モードによる配線は行われない。
図22を参照しながら具体的に説明すると、例えば、会話層を5層にして、即ち、5層を指定して、5層のピンを選択すると、当該指定したピンと差動ピンペアを構成する6層のピンが同時に選択されて、これら選択したピンから差動配線が行われることになる。
また、上記とは逆に、会話層を6層にして、即ち、6層を指定して、6層のピンを選択すると、当該指定したピンと差動ピンペアを構成する5層のピンが同時に選択されて、これら選択したピンから差動配線が行われることになる。
上記した差動配線情報入力処理手段104は、差動配線を構成する2つの配線を同時に入力することができるものであり、配線中にビアを発生させてデータを入力する配線層(会話層)を切り替えることができるようになされている。
以下、上記した3つの配線モードについてそれぞれ説明するが、まず、マイクロストリップ・ライン配線モードおよびエッジ結合配線モードについて説明する。
このマイクロストリップ・ライン配線モードとエッジ結合配線モードとは、差動配線の配線パターンを形成する層が、プリント基板の表層であるか内層であるかが異なるのみで他の処理を同一であるので、以下にまとめて説明する。
即ち、マイクロストリップ・ライン配線モードが選択された場合には、プリント基板における差動配線を入力する対象の層として、プリント基板の表層のいずれかが選択され、選択された表層において以下の差動配線処理が行われる。
一方、エッジ結合配線モードが選択された場合には、プリント基板における差動配線を入力する対象の層として、プリント基板の内層のいずれかが選択され、選択された内層において以下の差動配線処理が行われる。
より具体的には、マイクロストリップ・ライン配線モードならびにエッジ結合配線モードにおいては、差動ピンペアを構成するピンがスルーホールピンである場合には、指定した会話層で差動配線パターンが発生される。
また、配線途中でビアを発生する場合は、会話層を切り換えることにより、その会話層までのビアが発生するようになされている。
次に、上記したマイクロストリップ・ライン配線モードならびにエッジ結合配線モードにおける差動配線処理について、図23に示す例を参照しながら説明する。
なお、図23に示す例は、差動ペアが「netA−posi − netA−nega」であり、差動ネットペアが「netA−posi − netA−nega」であり、差動ピンペアが「AAA(5)−AAA(6)」および「BBB(1)−BBB(2)」である場合を示している。
まず、差動配線処理を行う層が選択されると、表示装置16に表示された基板レイアウト図において、操作者がポインティングデバイス20を用いて、入力する対象の差動配線の差動ピンペアを構成するピンのいずれかを選択する処理を行う(図23に示す例においては、差動ピンペアを構成するピンAAA(5)、ピンAAA(6)、ピンBBB(1)およびピンBBB(2)のなかの、いずれか1つを選択する(図23(a)参照;図23(a)に示す例では、ピンAAA(5)が選択されている。)。例えば、ポインティングデバイス20がマウスである場合には、差動ピンペアを構成するピンのいずれかにカーソルを位置合わせしてクリックすることにより、差動ピンペアを構成するピンのいずれかを選択する。
こうして入力する対象の差動配線の差動ピンペアを構成するピンが選択されると、差動配線装置100は、記憶装置12に記憶された差動ピンペアを参照して、差動ピンペアを構成する全てのピン(図23に示す例では、ピンAAA(5)、ピンAAA(6)、ピンBBB(1)およびピンBBB(2)の4つのピンである。)を差動配線の結線対象として選択する。なお、差動配線の結線対象として選択されたピンは、点滅表示させることなどにより、操作者の視認性の向上を図るようにしてもよい。
それから、表示装置16に表示された基板レイアウト図において、操作者がポインティングデバイス20を用いてカーソルを移動させて、差動配線の引き出し側のピン(差動配線における信号入力側のピンである。図23に示す例においては、ピンAAA(5)およびピンAAA(6)である。)から引き込み側のピン(差動配線における信号出力側のピンである。図23に示す例においては、ピンBBB(1)およびピンBBB(2)である。)までの配線の処理を行うが、この際に差動ペア(図23に示す例においては、netA−posi − netA−negaである(図23(a)(b)(c)参照)。)の差動配線パターンが予め設定された配線間隔を保って同時に配線されることになる。なお、この配線間隔は、例えば、SIシミュレータ500により設定されるものである。
この際に、マイクロストリップ・ライン配線モードならびにエッジ結合配線モードにおいては、差動配線の引き出し側のピン近傍の所定の領域たる引き出し形状表示領域A(図23(b)(c)参照:引き出し形状表示領域の詳細については後述する。)におけるカーソルの位置に応じて、差動配線の引き出し側のピンから引き出される差動配線パターンが所定の形状で自動的に引き出され(図23(b)(c)参照)、また、差動配線の引き込み側のピン近傍の所定の領域たる引き込み形状表示領域B(図33参照:引き込み形状表示領域の詳細については後述する。)におけるカーソルの位置に応じて、差動配線パターンは差動配線の引き込み側のピンに自動的に引き込まれる。
なお、上記したマイクロストリップ・ライン配線モードならびにエッジ結合配線モードにおける、差動配線パターンの引き出し側のピンからの引き出し処理ならびに引き込み側のピンへの引き込み処理を含む差動配線処理については、後に詳述する。
また、配線された差動配線パターンは一旦はラバーバンド表示(仮表示)され、操作者がラバーバンド表示の状態で当該表示状態を確定する処理(例えば、マウスをクリックするなどである。)を行うことにより、表示された当該差動配線パターンのデータ入力が確定されて表示され、また、その差動配線パターンの情報が基板設計データベース302へ転送される。
また、上記したように差動配線パターンは、一旦はラバーバンド表示されているので、ラバーバンド表示の確定前であれば、カーソルを移動することによりラバーバンド表示される差動配線パターンの経路を容易に変更することができる。
なお、配線パターンをラバーバンド表示させた後に確定したり、カーソルを移動させて配線パターンを入力する処理自体については、従来より公知の技術を用いることができるので、従来の技術を援用することによりその詳細な説明を省略する。
また、図23に示す例を参照しながら行った上記の説明においては、操作者がポインティングデバイス20で入力する対象の差動配線の差動ピンペアを構成するピンのいずれかを選択する処理を行うようにしたが、ランドを選択するようにして同様な処理を行ってもよいし、ランド間のラッツネストを選択することにより差動配線入力処理を開始するようにしてもよい。
次に、ブロードサイド結合配線モードについて説明するが、ブロードサイド結合配線モードの説明においても、上記と同様に、配線パターンをラバーバンド表示させた後に確定したり、カーソルを移動させて配線パターンを入力する処理自体については、従来より公知の技術を用いることができるので、従来の技術を援用することによりその詳細な説明を省略する。
ここで、図24には、ブロードサイド結合配線モードで差動配線情報を入力する処理のプログラム(以下、「差動配線情報入力処理プログラム」と称する。)のルーチンを示すフローチャートが表されている。
上記した差動配線情報設定処理プログラムと同様に、起動コマンドの入力などにより差動配線情報入力処理プログラムが起動されると、図24に示すフローチャートのルーチンが実行されることになる。
なお、ブロードサイド結合配線モードでの差動配線情報の入力は、配線入力する層(会話層)が2つとなり、その配線はスルーホールもしくはビアでしか結線できないため、1つの層にしか配線入力できないマイクロストリップ・ライン配線モードおよびエッジ結合配線モードとは異なる動作となる。
このため、上記した差動配線情報入力処理プログラムにおいてブロードサイド結合配線モードを実行する際には、上記した条件1〜3に従って、1つの会話層を基準にして当該会話層と同時に配線する隣接層が電源・グランド層に用いるベタ層ではない配線層であることを確認した上で配線している(ブロードサイド結合配線は、2つのベタ層に挟まれた状態で配線される)。
以下に、図24に示すフローチャートを参照しながら、差動配線情報入力処理プログラムについて説明するが、この差動配線情報入力処理プログラムでブロードサイド結合配線モードの実行が開始されると、スルーホールもしくはビアに結線するまでブロードサイド結合配線モードのモード解除できないものであり、モードが解除されたならば同層に配線する他の配線モード、即ち、マイクロストリップ・ライン配線モードあるいはエッジ結合配線モードに戻ることができるようになされている。
なお、上記した3つの配線モードのいずれを選択するかは、操作者がポインティングデバイス20や文字入力デバイス22を用いて適宜に決定すればよい。
差動配線情報入力処理プログラムが起動されると、まず、ブロードサイド結合配線モードが選択されていることを確認し(ステップS2402)、以下に説明するステップS2404以降の処理が続行される。
即ち、入力する対象の差動配線の引き出し元(例えば、差動配線における信号入力側である。)が、ブロードサイドの差動配線パターンを結合することのできるビア(以下、「ブロードサイド結合用ビア」と適宜に称する。)であるか否かを判断する(ステップS2404)。
このステップS2404の判断処理において、差動配線パターンの引き出し元がブロードサイド結合用ビアであると判断された場合には、当該ブロードサイド結合用ビアのランド層と会話層とが一致するか否かを判断する(ステップS2406)。
このステップS2406の判断処理において、当該ブロードサイド結合用ビアのランド層と会話層とが一致しないと判断された場合には、会話層を変更し(ステップS2408)、ステップS2404の判断処理へ戻って処理を繰り返す。
また、ステップS2404の判断処理において、差動配線パターンの引き出し元がブロードサイド結合用ビアではないと判断された場合には、差動配線パターンの引き出し元はスルーホールであるか否かを判断する(ステップS2410)。
ここで、ステップS2410の判断処理において、差動配線パターンの引き出し元はスルーホールではないと判断された場合には、ステップS2438の処理へジャンプして進み、ブロードサイド結合配線モードのモード解除をして、この差動配線情報入力処理プログラムの処理を終了する。
また、ステップS2406の判断処理において、ブロードサイド結合用ビアのランド層と会話層とが一致すると判断された場合には、ステップS2412の判断処理へ進む。
同様に、ステップS2410の判断処理において、差動配線パターンの引き出し元がスルーホールであると判断された場合とは、ステップS2412の判断処理へ進む。
このステップS2412の判断処理において、会話層と当該会話層と隣接する配線層とが上記した条件1〜3を満たすか否かを判断し、会話層と当該会話層と隣接する配線層とが上記した条件1〜3を満たさないと判断された場合には、ステップS2408の処理へ進んで、上記と同じ処理を行う。
一方、ステップS2412の判断処理において、会話層と当該会話層と隣接する配線層とが上記した条件1〜3を満たすと判断された場合には、会話層と当該会話層と隣接する配線層とのいずれかにおいて差動ピンペアを構成するいずれかのピンを指定されると(差動ピンペアを構成するいずれかのピンの指定の処理については、上記したマイクロストリップ・ライン配線モードならびにエッジ結合配線モードの処理と同様である。)、差動ピンペアのうちの差動配線の引き出し側の一対のピンから、会話層と当該会話層と隣接する配線層とに差動配線パターンをそれぞれ引き出してラバーバンド表示(仮表示)して、所望の引き出し形状を確定したならば(ステップS2416)、そのラバーバンド状態からデータ確定した形状としてデータ入力かつ表示する(ステップS2418)。
そして、引き出し形状を確定したならば、それ以降はカーソルの移動によりブロードサイドによる差動配線パターンのデータ入力ならびに表示を行う(ステップS2420)。このステップS2420の処理においては、配線パターンは、カーソルの移動に伴いプリント基板の平面視において2つの配線パターンが重なるような位置関係で、会話層と当該会話層と隣接する配線層とにそれぞれデータ入力されて表示される(図25参照)。
ここで、引き出し形状を確定しないのであれば(ステップS2416)、ステップS2404の判断処理へ戻って処理を繰り返す。
なお、カーソルの移動により引き出し側で2本の差動配線パターンを引き出してラバーバンド表示させながら配線していく処理、ラバーバンド表示を確定する処理ならびに引き出し形状に関する処理については、配線層が2層にわたる点を除いては上記したマイクロストリップ・ライン配線モードならびにエッジ結合配線モードの処理と同様であるため、上記したマイクロストリップ・ライン配線モードならびにエッジ結合配線モードの処理に関する説明を援用することにより省略する。
次に、ブロードサイド結合用ビアを発生するか否かを判断し(ステップS2422)、ブロードサイド結合用ビアを発生すると判断された場合にはビア形状を発生し(ステップS2424)、ステップS2434の判断処理へ進む。
一方、ステップS2422の判断処理において、ブロードサイド結合用ビアを発生するとは判断されなかった場合には、差動配線の引き込み側がスルーホールであるか否かを判断し(ステップS2426)、差動配線の引き込み側がスルーホールではないと判断された場合には、差動配線の引き込み側がブロードサイド結合用ビアである否かを判断する(ステップS2427)。
ステップS2427の判断処理において、差動配線の引き込み側がブロードサイド結合用ビアであると判断された場合には、ビアのランド層と会話層とが一致しているか否かを判断し(ステップS2428)、ビアのランド層と会話層とが一致していないと判断された場合には、データが確定されているか否かを判断する(ステップS2429)。
一方、ステップS2427の判断処理において、差動配線の引き込み側がブロードサイド結合用ビアではないと判断された場合には、ステップS2429の処理へジャンプして進み、データが確定されているか否かを判断する。
このステップS2429の判断処理において、データが確定されていないと判断された場合には、ステップS2420の処理へ戻って処理を繰り返す。
一方、ステップS2429の判断処理において、データが確定されていると判断された場合には、ステップS2430の処理へ進んでデータ確定した形状としてデータ入力かつ表示し、ステップS2420の処理へ戻って処理を繰り返す。
また、ステップS2426の判断処理において差動配線の引き込み側がスルーホールであると判断された場合ならびにステップS2427の判断処理において差動配線の引き込み側がブロードサイド結合用ビアであると判断された場合には、会話層と当該会話層と隣接する配線層とに差動配線パターンの引き込み側の形状をラバーバンド表示して(ステップS2432)、ステップS2434の判断処理へ進む。
ここで、所望のビア形状や所望の引き込み形状を確定したならば(ステップS2434)、そのラバーバンド表示中のビア形状や引き込み形状をデータ確定した形状としてデータ入力かつ表示し(ステップS2436)、それからブロードサイド結合配線モードのモード解除を行い(ステップS2438)、この差動配線情報入力処理プログラムの処理を終了する。
一方、ビア形状や引き込み形状を確定しないのであれば(ステップS2434)、ステップS2420の判断処理へ戻って処理を繰り返す。
なお、カーソルの移動により引き込み側で2本の差動配線パターンを引き込んでラバーバンド表示させながら配線していく処理、ラバーバンド表示を確定する処理ならびに引き込み形状に関する処理については、配線層が2層にわたる点を除いては上記したマイクロストリップ・ライン配線モードならびにエッジ結合配線モードの処理と同様であるため、上記したマイクロストリップ・ライン配線モードならびにエッジ結合配線モードの処理に関する説明を援用することにより省略する。
ここで、図25には上記したマイクロストリップ・ライン配線モード、エッジ結合配線モードおよびブロードサイド結合配線モードを用いて差動配線パターンを形成した回路の一例の説明図が示されており、図26(a)には図25のA断面による断面説明図が示されており、図26(b)には図25のB断面による断面説明図が示されており、図26(c)には図25のC断面による断面説明図が示されており、図26(d)には図25のD断面による断面説明図が示されており、図26(e)には図25のE断面による断面説明図が示されており、図26(f)には図25(a)(b)(c)(d)(e)に示す各断面図の凡例が示されている。
このように、差動配線情報入力処理手段104においては、マイクロストリップ・ライン配線モード、エッジ結合配線モードおよびブロードサイド結合配線モードの3種類の差動配線モードを用いて差動配線が行われる。
具体的には、図26(a)はブロードサイド結合配線モードによる差動配線パターンの引き出し側の配線状況を示し、図26(b)はブロードサイド結合配線モードによる差動配線パターンの配線状況を示し、図26(c)はブロードサイド結合配線モードによる差動配線パターンの引き込み側の配線状況およびエッジ結合配線モードによる引き出し側の配線状況を示し、図26(d)はエッジ結合配線モードによる差動配線パターンの配線状況を示し、図26(e)はマイクロストリップ・ライン配線モードによる差動配線パターンの配線状況を示している。
次に、差動配線情報入力処理手段104において実行される差動配線情報の編集について説明する。
即ち、差動配線情報入力処理手段104は、入力した差動配線情報の編集機能を備えており、表示装置16に表示された差動配線パターンをポインティングデバイス20を用いて操作することにより、入力した差動配線情報により形成されて表示装置16に表示された差動配線パターンを移動することができる。
まず、差動配線情報入力処理手段104における編集処理の前提として、差動配線パターンはポジ信号を伝送する配線とネガ信号を伝送する配線との2配線で構成されるので、差動配線パターンの編集はその2配線に対して行う必要がある。
この際に、同層で配線される場合は各層に設定された差動配線間隔の値を維持しながら処理する必要があり、また、ブロードサイドでの隣接層間の配線の場合は、上方から視認(図25における平面視)した際に2つの配線が常に重なるような状態に編集する必要がある。
図27(a)(b)(c)ならびに図28(a)(b)(c)には、差動配線パターンの2つの配線を平行移動する際の動作を示す説明図が示されている。
より詳細には、図27(a)(b)(c)には、図27(b)に示す差動配線パターンを編集により図27(a)あるいは図27(c)に示すように平行移動する際の動作遷移が示されており、また、図28(a)(b)(c)には、図28(b)に示す差動配線パターンを編集により図28(a)あるいは図28(c)に示すように平行移動する際の動作遷移が示されている。
なお、図27(a)(b)(c)ならびに図28(a)(b)(c)は、マイクロストリップ・ライン配線モードならびにエッジ結合配線モードによる配線例を示すものであるが、ブロードサイド結合配線モードによる配線の場合には、上下の配線層に重なるようにして配線された配線パターンが上下の重なりを維持するように平行移動する点においてのみマイクロストリップ・ライン配線モードならびにエッジ結合配線モードによる配線と異なるので、その図示は省略する。
また、図29には、当該平行移動の際の処理プログラムのフローチャートが示されていおり、この処理プログラムを実行することにより、2つの配線よりなる差動配線パターンを平行移動することができる。
より詳細には、起動コマンドの入力などにより、この処理プログラムが起動された後に、配線済みの差動配線パターンにおける2つの配線の間(マイクロストリップ・ライン配線モードならびにエッジ結合配線モードによる配線の場合である。ブロードサイド結合配線モードによる配線の場合には、上下に重なって配線された配線パターンそのものとなる。)をポインティングデバイス22によりクリックして(図27(b)および図28(b)を参照する。)、平行移動の対象となる差動配線パターンを構成する2本の線分を選択すると(ステップS2902)、選択した差動配線パターンを構成する2本の線分を平行移動可能か否かを判定する(ステップS2904)。
ここで、上記した差動配線パターンを構成する線分を平行移動可能か否かを判定する処理は、具体的には、平行移動の対象となる2本の線分と、その両端に繋がる2組の2本の線分はそれぞれ平行であり、平行移動の対象となる線分のペアと2組の線分のペアとは同一直線上にないこと、平行移動の対象となる2本の線分を平行移動しても両端の先の線分が形成可能な長さを持ち得ることを判定するものであり、これらの判定条件に合致すれば平行移動可能と判定する。上記した判定条件に合致するものは、平行移動の対象となる2本の線分を平行移動しても差動配線間隔が保たれ、また、平行移動の対象となる線分とその両端の先の線分とが同一直線上に並ぶことはない。
上記したステップS2904の処理を終了すると、プリント基板に予め設定されているDRC従って、マウスなどのポインティングデバイス22の操作に伴うカーソルの移動に合わせて、平行移動の対象となる2本の線分を平行移動させ(図27(a)(c)および図28(a)(c)を参照する。)、この処理プログラムを終了する。
次に、図30(a)(b)(c)には、差動配線パターンの2つの配線の配線経路を変更する際の動作を示す説明図が示されている。
より詳細には、図30(a)(b)(c)には、図30(a)に示す差動配線パターンを編集により図30(b)の状態を経由して図30(c)に示すように配線経路を変更する際の動作遷移が示されている。
なお、図30(a)(b)(c)は、マイクロストリップ・ライン配線モードならびにエッジ結合配線モードによる配線例を示すものであるが、ブロードサイド結合配線モードによる配線の場合には、上下の配線層に重なるようにして配線された配線パターンが上下の重なりを維持するように配線経路を変更する点においてのみマイクロストリップ・ライン配線モードならびにエッジ結合配線モードによる配線と異なるので、その図示は省略する。
また、図31には、当該配線経路変更の際の処理プログラムのフローチャートが示されており、この処理プログラムを実行することにより、差動配線パターンの配線経路を変更することができる。
より詳細には、起動コマンドの入力などにより、この処理プログラムが起動された後に、配線済みの差動配線パターンにおいて、上記した引き込み形状ならびに引き出し形状でない2本の配線が平行に位置するようにした線分の間(マイクロストリップ・ライン配線モードならびにエッジ結合配線モードによる配線の場合である。ブロードサイド結合配線モードによる配線の場合には、上下に重なって配線された配線パターンの線分そのものとなる。)をポインティングデバイス22によりクリックして(図30(a))、配線経路の変更の対象となる差動配線パターンを構成する2本の線分を選択する(ステップS3102)。
次に、変更する経路の差動配線パターンを入力し(ステップS3104)、それから、経路変更対象の差動配線パターンの線分を選択する(ステップS3106)(図30(b)参照)。
この処理は差動配線パターンの経路変更であるので、最終的にはステップS3102で選択された差動配線パターンとステップS3104で入力した差動配線パターンとを結線するとともに、ステップS3106で選択した差動配線パターンの線分を削除する必要がある。
従って、ステップS3106の処理を終了すると、ステップS3102で選択された差動配線パターンから、ステップS3106で選択した差動配線パターンの線分を削除して、ステップS3104で入力した差動配線パターンと置き換え、ステップS3102で選択された差動配線パターンとステップS3104で入力した差動配線パターンとを結線し(図30(c)参照)、この処理プログラムを終了する。
これにより、ステップS3102で選択された差動配線パターンにおいて、ステップS3104で入力した差動配線パターンとステップS3106で選択した差動配線パターンの線分とが置き換えられ、差動配線パターンの経路変更が行われる。
次に、上記した差動配線情報入力処理手段104において実行される差動配線パターンの引き出し形状および差動配線パターンの引き込み形状のラバーバンド表示の処理について詳細に説明する。
この差動配線情報入力処理手段104は、上記したように、差動配線パターンの引き出し形状および引き込み形状を表示する際にはラバーバンド表示を行うようにしており、操作者が目視により引き出し形状および引き込み形状を確認することができ、所望の表示の引き出し形状および引き込み形状を確定することができるようになされている。
なお、以下の説明においては、マイクロストリップ・ライン配線モードならびにエッジ結合配線モードによる配線の場合の例を図示しながら説明するが、ブロードサイド結合配線モードによる配線は、配線層が2層にわたる点を除いては上記したマイクロストリップ・ライン配線モードならびにエッジ結合配線モードの処理と同様であるため、その図示を省略する。
まず、図32(a)(b)を参照しながら引き出し形状を発生させる処理について説明すると、従来は引き出し形状がどのように生成されるかは実際に配線パターンを発生させるまで不明であったが(図32(a)参照)、差動配線装置100においては、表示装置16の表示画面上において、予め設定した引き出し形状をラバーバンド表示する領域たる引き出し形状表示領域Aの中にカーソルが入った場合には、配線パターンをラバーバンド表示する段階で引き出し形状まで表示するようにしている(図32(b)参照)。
即ち、差動配線装置100においては、引き出し形状表示領域A内にカーソルが入った場合に、引き出し形状がラバーバンド表示されるものであり、より詳細には、引き出し形状表示領域A内においてポインティングデバイス20により最後に位置指定した座標から、差動ピンペアを構成する一対のピンのそれぞれに向けて差動配線パターンの引き出し形状をラバーバンド表示するものである。
次に、図33(a)(b)を参照しながら引き込み形状を発生させる処理について説明すると、従来は引き込み形状がどのように生成されるのか実際に配線パターンを発生させるまで不明であったが(図33(a)参照)、差動配線装置100においては、表示装置16の表示画面上において、予め設定した引き込み形状をラバーバンド表示する領域たる引き込み形状表示領域Bの中にカーソルが入った場合には、配線パターンをラバーバンド表示する段階で引き込み形状まで表示するようにしている(図33(b)参照)。
即ち、差動配線装置100においては、引き込み形状表示領域B内にカーソルが入った場合に、引き込み形状がラバーバンド表示されるものであり、より詳細には、引き込み形状表示領域B内においてポインティングデバイス20により最後に位置指定した座標から、差動ピンペアを構成する一対のピンのそれぞれに向けて差動配線パターンの引き込み形状をラバーバンド表示するものである。
ここで、引き出し形状を表示する際における引き出し形状表示領域ならびに引き込み形状を表示する際における引き込み形状表示領域について説明すると、これら引き出し形状表示領域ならびに引き込み形状表示領域は、例えば、以下の条件により予め設定されているものとする。
即ち、引き出し形状における各引き出し点または引き込み形状における各引き込み点(具体的には、差動配線パターンの引き出し側または引き込み側の差動ピンペアを構成する一対のピンの位置である。図34においては、差動配線パターンの引き出し側または引き込み側の差動ピンペアを構成する一対のピンの位置がランドとして示されている。)を結ぶ線分の中点を中心とした、縦横がその線分の4倍の長さとなっている領域を、引き出し形状表示領域または引き込み形状表示領域とする(図34参照)。
このように、引き出し形状表示領域または引き込み形状表示領域は、引き出し点間または引き込み点間の距離を参照して決定されるため、引き出し点または引き込み点の形状には依存しない。
また、引き出し点または引き込み点を結ぶ線分が、表示装置16の表示画面上でX軸あるいはY軸とは平行ではなく傾いて配置される場合でも、引き出し形状表示領域または引き込み形状表示領域を傾けることはしない(図35参照)。
次に、引き出し形状パターンならびに引き込み形状パターンについて説明すると、引き出し形状パターンは差動配線の開始点(具体的には、差動配線パターンの引き出し側の差動ピンペアを構成する一対のピンの位置である。)とその後のカーソルの位置とで、また、引き込み形状パターンは差動配線パターンの配線方向とカーソルの位置とで、それぞれのラバーバンド表示される形状が変化するようになされている。以下に、引き出し形状パターンならびに引き込み形状パターンを具体的に説明する。
まず、引き出し形状パターンとして、T字形状の引き出し形状パターン(図37(a)(b)(c)および図39(a)(b)(c)を参照する。)を発生させる例について説明すると、プリント基板設計ルールにおいて差動配線パターンを差動ピンペアの位置に対応するランド間で配線可能なようにランド間の間隔(ピッチ)が広い場合においては、図36に示すように、カーソルが引き出し形状表示領域内における領域1、領域2および領域3の3つ領域のいずれかに配置されたときには、配線方向に合わせてそれぞれの引き出し形状パターンをラバーバンド表示する(図37(a)(b)(c)参照)。
なお、図36において各領域1〜3を区切る境界線a、bについて説明すると、まず、境界線aは、2つのランドの中心から、配線側に向かって伸ばした直線で、一般的には、CAD上で、部品の配置角度に対して水平、あるいは垂直な直線となる(矩形ランドを持つ部品の場合、そのランドの辺は境界線aに対して水平、あるいは垂直)。ただし、丸ランドの場合は、水平・垂直といった90度の倍数の角度以外に45度の倍数の角度も考慮する。
また、境界線bは、境界線aに対して垂直な直線で、プリント基板設計条件での同電位パターン間のクリアランス値でランドから離した直線である。
なお、ランド位置が境界線aに対して垂直な線と比較してずれていて、境界線bが2種存在する場合、ランドを交差しないものを対象にする。
具体的には、カーソルが図36における領域1に配置された場合には図37(b)に示す引き出し形状パターンをラバーバンド表示し、また、カーソルが図36における領域2に配置された場合には図37(a)に示す引き出し形状パターンをラバーバンド表示し、また、カーソルが図36における領域3に配置された場合には図37(c)に示す引き出し形状パターンをラバーバンド表示する。
一方、プリント基板設計ルールにおいて差動配線パターンを差動ピンペアの位置に対応するランド間で配線不可能なように、ランド間の間隔(ピッチ)が狭い場合においては、図38に示すように、カーソルが引き出し形状表示領域内における領域1、領域2および領域3の3つ領域のいずれかに配置されたときには、配線方向に合わせてそれぞれの引き出し形状パターンをラバーバンド表示する(図39(a)(b)(c)参照)。
なお、図38において各領域1〜3を区切る境界線a、bについて説明すると、まず、境界線aは、2つのランドの中心から、配線側に向かって伸ばした直線で、一般的には、CAD上で、部品の配置角度に対して水平、あるいは垂直な直線となる(矩形ランドを持つ部品の場合、そのランドの辺は境界線aに対して水平、あるいは垂直)。ただし、丸ランドの場合は、水平・垂直といった90度の倍数の角度以外に45度の倍数の角度も考慮する。
また、境界線bは、境界線aに対して垂直な直線で、プリント基板設計条件での同電位パターン間のクリアランス値でランドから離した直線である。
狭いピッチでもBGAパッケージのICの様に丸ランドのものがあるので、図には描かれていない丸ランドのケースも考慮する。
なお、ランド位置が境界線aに対して垂直な線と比較してずれていて、境界線bが2種存在する場合、ランドを交差しないものを対象にする。
具体的には、カーソルが図38における領域1に配置された場合には図39(b)に示す引き出し形状パターンをラバーバンド表示し、また、カーソルが図38における領域2に配置された場合には図39(a)に示す引き出し形状パターンをラバーバンド表示し、また、カーソルが図38における領域3に配置された場合には図39(c)に示す引き出し形状パターンをラバーバンド表示する。
なお、引き込み形状パターンも、上記した引き出し形状パターンと同様に決定されるものであるが、引き込み形状パターンについては、カーソル位置における配線方向を考慮して決定される。
ここで、カーソル位置における配線方向とは、カーソル位置の移動方向を意味する。例えば、図38に示す例において、領域2から境界線bに沿って領域1に進む方向にカーソルが移動して配線が引かれている場合には、領域2内では引き込み形状が表示されるが、領域1ならびに領域3内に入ると引き込み形状が表示されない。この状態で引き込み形状を表示させるためには、領域1ではランドに向かう方向にカーソルを移動させて配線し、領域3では領域3から境界線bに沿って領域1に進む方向に戻って配線する。
次に、引き出し形状パターンとして、Y字形状の引き出し形状パターン(図41(a)(b)(c)(d)(e)および図43(a)(b)(c)(d)(e)を参照する。)を発生させる例について説明すると、プリント基板設計ルールにおいて差動配線パターンを差動ピンペアの位置に対応するランド間で配線可能なように、ランド間の間隔(ピッチ)が広い場合においては、図40に示すように、カーソルが引き出し形状表示領域内における領域1、領域2、領域3、領域4および領域5の5つ領域のいずれかに配置されたときには、配線方向に合わせてそれぞれの引き出し形状パターンをラバーバンド表示する(図39(a)(b)(c)(d)(e)参照)。
なお、図40において各領域1〜5を区切る境界線a〜cについて説明すると、まず、境界線aは、2つのランドの中心から、配線側に向かって伸ばした直線で、一般的には、CAD上、部品の配置角度に対して水平、あるいは垂直な直線となる(矩形ランドを持つ部品の場合、そのランドの辺は境界線aに対して水平、あるいは垂直)。ただし、丸ランドの場合は、水平・垂直といった90度の倍数の角度以外に配線角度に合わせて45度の倍数の角度も考慮する。
また、境界線bは、2本の境界線aに対してランドの中心から45度方向に伸ばした直線である。
さらに、境界線cは、境界線aに対して垂直な直線で、プリント基板設計条件での同電位パターン間のクリアランス値でランドから離した直線である。
なお、ランド位置が境界線aに対して垂直な線と比較してずれていて、境界線cが2種存在する場合、ランドを交差しないものを対象にする。この状態では、ランドのずれ具合によって領域1の形状以外の表示は計算不可となるケースが発生する可能性がある(T字形状の引き出し形状パターンの場合は問題ない。)。
具体的には、カーソルが図40における領域1に配置された場合には図41(c)に示す引き出し形状パターンをラバーバンド表示し、また、カーソルが図40における領域2に配置された場合には図41(b)に示す引き出し形状パターンをラバーバンド表示し、また、カーソルが図40における領域3に配置された場合には図41(d)に示す引き出し形状パターンをラバーバンド表示し、また、カーソルが図40における領域4に配置された場合には図41(a)に示す引き出し形状パターンをラバーバンド表示し、カーソルが図40における領域5に配置された場合には図41(e)に示す引き出し形状パターンを表示する。
一方、プリント基板設計ルールにおいて差動配線パターンを差動ピンペアの位置に対応するランド間で配線不可能なように、ランド間の間隔(ピッチ)が狭い場合においては、図42に示すように、カーソルが引き出し形状表示領域内における領域1、領域2、領域3、領域4および領域5の5つ領域のいずれかに配置されたときには、配線方向に合わせてそれぞれの引き出し形状パターンをラバーバンド表示する(図43(a)(b)(c)(d)(e)参照)。
なお、図42において各領域1〜5を区切る境界線a〜cについて説明すると、まず、境界線aは、2つのランドの中心から、配線側に向かって伸ばした直線で、一般的には、CAD上、部品の配置角度に対して水平、あるいは垂直な直線となる(矩形ランドを持つ部品の場合、そのランドの辺は境界線aに対して水平、あるいは垂直)。ただし、丸ランドの場合は、水平・垂直といった90度の倍数の角度以外に配線角度に合わせて45度の倍数の角度も考慮する。
また、境界線bは、2本の境界線aに対してランドの中心から45度方向に伸ばした直線である。
さらに、境界線cは、境界線aに対して垂直な直線で、プリント基板設計条件での同電位パターン間のクリアランス値でランドから離した直線である。
狭いピッチでもBGAパッケージのICの様に丸ランドのものがあるので、図には描かれていない丸ランドのケースも考慮する。
なお、ランド位置が境界線aに対して垂直な線と比較してずれていて、境界線cが2種存在する場合、ランドを交差しないものを対象にする。この状態では、ランドのずれ具合によって領域1の形状以外の表示は計算不可となるケースが発生する可能性がある(T字形状の引き出し形状パターンの場合は問題ない。)。
具体的には、カーソルが図42における領域1に配置された場合には図43(c)に示す引き出し形状パターンをラバーバンド表示し、また、カーソルが図42における領域2に配置された場合には図43(b)に示す引き出し形状パターンをラバーバンド表示し、また、カーソルが図42における領域3に配置された場合には図43(d)に示す引き出し形状パターンをラバーバンド表示し、また、カーソルが図42における領域4に配置された場合には図43(a)に示す引き出し形状パターンをラバーバンド表示し、カーソルが図42における領域5に配置された場合には図43(e)に示す引き出し形状パターンをラバーバンド表示する。
なお、引き込み形状パターンも、上記した引き出し形状パターンと同様に決定されるものであるが、引き込み形状パターンについては、カーソル位置における配線方向を考慮して決定される。
ここで、カーソル位置における配線方向とは、カーソル位置の移動方向を意味する。例えば、図40に示す例において、領域2から境界線bに沿って領域1に進む方向にカーソルが移動して配線が引かれている場合には、領域2内では引き込み形状が表示されるが、領域1ならびに領域3内に入ると引き込み形状が表示されない。この状態で引き込み形状を表示させるためには、領域1ではランドに向かう方向にカーソルを移動させて配線し、領域3では領域3から境界線bに沿って領域1に進む方向に戻って配線する。
次に、上記した引き出し形状パターンならびに引き込み形状パターンにより、差動配線を引き出しあるいは引き込む差動配線引き出し・引き込み処理について説明する。
図44には、差動配線を引き出しあるいは引き込む差動配線引き出し・引き込み処理のプログラム(以下、「差動配線引き出し・引き込み処理プログラム」と称する。)のルーチンを示すフローチャートが表されている。
この差動配線引き出し・引き込み処理プログラムを実行することにより、図23を参照しながら概要を説明したマイクロストリップ・ライン配線モードならびにエッジ結合配線モードにおける差動配線処理が行われる。なお、操作者によるポインティングデバイス20などの操作や差動配線パターンの表示などについては、図23をあわせて参照する。
上記した差動配線情報設定処理プログラムと同様に、起動コマンドの入力などにより差動配線引き出し・引き込み処理プログラムが起動されると、図44に示すフローチャートのルーチンが実行されることになる。
この差動配線引き出し・引き込み処理プログラムが起動されると、まず、操作者によるポインティングデバイス20などの操作により指定された差動配線する対象の差動ペアデータを検索して処理対象として指定し(ステップS4402)、操作者がポインティングデバイス20で入力して指定した座標(指定座標)から処理対象の差動配線の差動配線パターンたる差動配線形状を表示する処理を行う(ステップS4404)。
ステップS4404の処理を終了すると、カーソルが引き出し形状表示領域内にあるか否かを判断し(ステップS4405)、カーソルが引き出し形状表示領域内になければ、ステップS4414の処理へ進み、一方、カーソルが引き出し形状表示領域内にあれば、ステップS4406乃至ステップS4416により差動配線の引き出し処理を行うものであるが、まず、「引き出し設定」が「ON(オン)」に設定されているか否かが判断される(ステップS4406)。
即ち、差動配線装置100においては、操作者が予め入力して設定することのできるコマンドとして、上記した引き出し形状を自動的に表示するかしないかを設定するための「引き出し設定」が設けられており、「引き出し設定」を「ON(オン)」にした場合には、ステップS4408の処理へ進んで上記した引き出し形状を自動的に表示するための処理が行われ、「引き出し設定」を「ON(オン)」ではなく「OFF(オフ)」にした場合には、ステップS4414の処理へ進んで上記した引き出し形状を自動的に表示するための処理は行われない。
そして、ステップS4406の判断処理において、「引き出し設定」が「ON(オン)」あると判断されてステップS4408へ進むと、ラバーバンド表示する引き出し形状(以下、「ラバーバンド表示する引き出し形状」を「引き出し仮形状」と適宜に称することとする。)を表示装置16に表示するための引き出し仮形状の計算を行う。
即ち、ラバーバンドにより表示される引き出し仮形状はラインで引かれることになるが、このラインを表示するために、図36〜43を参照しながら上記において説明した条件、即ち、引き出し形状表示領域内におけるポインティングデバイス20により最後に位置指定した座標を示すカーソル位置に従って、引き出し先の状態(「引き出し先の状態」とは、引き出し先のランド間ピッチおよびランド形状を意味し、上記したように、これらにより引き出しパターンの形状が変化する。)とカーソル位置と引き出しパターンの形状設定(引き出しパターンの形状は、上記したように「T字形状」と「Y字形状」とがあり、操作者がラバーバンド表示中に切り替え可能に設定されており、操作者が任意に設定することができる。)とに従って、カーソル位置から引き出し先のランドまでのラインの構成点を、カーソル位置と引き出し先のランドの位置関係と座標を元に計算して求める。引き出しパターンの形状設定は配線中に切り替え可能であるので、仮形状表示の際にはチェックする。
そして、ステップS4408における引き出し仮形状の計算を終了すると、引き出し仮形状が表示可能か否かを判断し(ステップS4410)、引き出し仮形状が表示可能であると判断された場合には、表示装置16の表示画面上に引き出し仮形状をラバーバンド表示して(ステップS4412)、所望の引き出し形状を確定したならば(ステップS4414)、ラバーバンド状態からデータ確定した形状として入力かつ表示し、(ステップS4416)、カーソルを移動して差動配線パターンの入力を続行する(ステップS4418)。即ち、ステップS4416において確定した表示形状のデータ入力を行ってラバーバンド表示の仮のデータから配線中のデータとしてCADシステム400に入力してから、ステップS4418へ進んでカーソルを移動して差動配線パターンの入力を続行する。
一方、引き出し形状を確定しないならば(ステップS4414)、ステップS4406の判断処理へ戻って処理を繰り返す。
また、ステップS4406の判断処理において、引き出し設定が「ON(オン)」ではないと判断された場合や、ステップS4410の処理で引き出し仮形状が表示ができないと判断された場合には、ステップS4414へジャンプして進んで処理を行う。
そして、ステップS4418の処理において、カーソルを移動して差動配線パターンを入力したならば、カーソルが引き込み形状表示領域内にあるか否かを判断し(ステップS4420)、カーソルが引き込み形状表示領域内になければ、ステップS4418の処理へ戻って処理を繰り返し、一方、カーソルが引き込み形状表示領域内にあれば、ステップS4422乃至ステップS4432により差動配線の引き込み処理を行うものであり、まず、「引き込み設定」が「ON(オン)」に設定されているか否かが判断される(ステップS4422)。
即ち、差動配線装置100においては、操作者が予め入力して設定することのできるコマンドとして、上記した引き込み形状を自動的に表示するかしないかを設定するための「引き込み設定」が設けられており、「引き込み設定」を「ON(オン)」にした場合には、ステップS4424の処理へ進んで上記した引き込み形状を自動的に表示するための処理が行われ、「引き込み設定」を「ON(オン)」ではなく「OFF(オフ)」にした場合には、ステップS4430の処理へ進んで上記した引き出し形状を自動的に表示するための処理は行われない。
そして、ステップS4422の判断処理において、「引き込み設定」が「ON(オン)」あると判断されてステップS4424へ進むと、ラバーバンド表示する引き込み形状(以下、「ラバーバンド表示する引き込み形状」を「引き込み仮形状」と適宜に称することとする。)を表示装置16に表示するための引き込み仮形状の計算を行う。
即ち、ラバーバンドにより表示される引き込み仮形状はラインで引かれることになるが、このラインを表示するために、図33〜35を参照しながら上記において説明した条件、即ち、引き込み形状表示領域内においてポインティングデバイス20により最後に位置指定した座標を示すカーソル位置に従って、引き込み先の状態(「引き込み先の状態」とは、引き込み先のランド間ピッチおよびランド形状を意味し、上記したように、これらにより引き込みパターンの形状が変化する。)とカーソル位置と引き込みパターンの形状設定(引き込みパターンの形状は、上記したように「T字形状」と「Y字形状」とがあり、操作者がラバーバンド表示中に切り替え可能に設定されており、操作者が任意に設定することができる。)とに従って、カーソル位置から引き込み先のランドまでのラインの構成点を、カーソル位置と引き込み先のランドの位置関係と座標を元に計算して求める。引き込みパターンの形状設定は配線中に切り替え可能であるので、仮形状表示の際にはチェックする。
そして、ステップS4424における引き込み仮形状の計算を終了すると、引き込み仮形状が表示可能か否かを判断し(ステップS4426)、引き込み仮形状が表示可能であると判断された場合には、表示装置16の表示画面上に引き込み仮形状をラバーバンド表示して(ステップS4428)、所望の引き込み形状を確定したならば(ステップS4430)、ラバーバンド状態からデータ確定した形状として入力かつ表示し、(ステップS4432)、この差動配線引き出し・引き込み処理プログラムの処理を終了する。即ち、ステップS4430において確定した表示形状のデータ入力を行ってラバーバンド表示の仮のデータから配線中のデータとしてCADシステム400に入力してから、この差動配線引き出し・引き込み処理プログラムの処理を終了する。
一方、引き込み形状を確定しないならば(ステップS4430)、ステップS4418の差動配線の入力の処理へ戻って以降の処理を繰り返す。これにより、引き込み領域内での差動配線入力が可能になり、引き込み領域内に入った後に当該引き込み領域外に差動配線することが可能になる。
次に、差動配線情報入力処理手段104において実行される差動配線へのシールド配線の処理について説明する。
即ち、差動配線装置100においては、操作者が予め入力して設定することのできるコマンドとして、差動ペアに対してシールド配線を自動的に配線する処理を行うか否かを設定するための「シールド発生」が設けられており、「シールド発生」を「ON(オン)」にした場合には、後述する図46に示すフローチャートの処理が実行されて、差動ペアの差動配線中あるいは差動配線後に、指定の差動配線を囲むようにシールド配線を発生させることができ(図45(a)(b)参照)、「シールド発生」を「ON(オン)」ではなく「OFF(オフ)」にした場合には、差動配線を囲むシールド配線は発生させない。
また、差動配線とシールド配線との間隔たるシールド間隔は、差動信号と電源またはグランドとの間の間隔を示す差動クリアランス「差動信号vs電源/グランド」(図54(c)参照)で設定された間隔と同一とし、その間隔を維持することができない箇所ではシールド配線を発生させないものとする。
また、差動配線が接続するランド間などに、プリント基板設計ルールでは十分にシールド配線可能なスペースが確保されていたとしても、差動配線のポジ信号の配線パターンとネガ信号の配線パターンとの間にシールド配線は発生させない。
なお、シールド配線は、プリント基板の各層に配線された差動配線に対して、各層毎にそれぞれ発生する。
上記したシールド配線の処理について、図45(a)(b)を参照しながら詳細に説明すると、この図45(b)は、図45(a)に示す差動配線にシールド配線を発生した場合を示している。即ち、図45(a)に示す差動配線にシールド配線処理を行うと、図45(b)に示すようにシールド配線が発生される。
図45(b)に示すように、シールド配線は、指定のシールド間隔を開けて各配線層の差動配線を接続ランドごと囲むように発生されるものであり、差動配線とシールド配線との間隔たるシールド間隔は、上記したように差動クリアランス「差動信号vs電源/グランド」(図54(c)参照)の値を用いるものである。
また、指定のシールド間隔が保てなければ、シールド配線を閉じないで一筆書き状態とし、差動配線とシールド配線とのシールド間隔が、差動クリアランス「差動信号vs電源/グランド」の値を維持するようにする。
さらに、上記したように、シールド配線を行うことが可能であっても、差動ペアのポジ信号の配線パターンとネガ信号の配線パターンとの間にはシールド配線は発生させないものとする。
ここで、図46には、上記したシールド配線処理のプログラム(以下、「シールド配線処理プログラム」と称する。)のルーチンを示すフローチャートが表されている。
上記した差動配線情報設定処理プログラムと同様に、起動コマンドの入力などによりシールド配線処理プログラムが起動されると、図46に示すフローチャートのシールド配線処理プログラムのルーチンが実行されることになる。
この図46に示すフローチャートと図47に示すシールド配線処理の動作遷移図を参照しながら、このシールド配線処理の処理手順を詳細に説明する。
なお、図47にシールド配線処理の動作遷移図は、図45(a)に示す差動配線にシールド配線を行う例を示している。
このシールド配線処理プログラムが起動されると、まず、操作者によるポインティングデバイス20などの操作により指定されたシールド配線を発生させる対象の差動ペアを選択し(ステップS4602)、選択した差動ペアに関してプリント基板の配線層毎に差動配線の配線パターンを確認する(ステップS4604)。
次に、差動配線を構成する差動配線パターンを示すラインたる2つの差動配線ラインの外側に、差動クリアランス「差動信号vs電源/グランド」(図54(c)参照)の値でオフセットするラインを発生させる(ステップS4606;図47の「◎A層の1)」および「◎B層の1)」を参照する。)。なお、この際には、差動ピンペア間に配線ラインが引かれているとみなし、当該引かれているとみなされた配線に対して差動クリアランス「差動信号vs電源/グランド」(図54(c)参照)の値でオフセットしたラインを発生させるものであり、このオフセットしたラインは、当該引かれているとみなされた配線に対して差動配線が位置する側とは逆側に発生させる。
なお、この際には、プリント基板のDRCに従って、配線できる箇所にのみラインを発生させる。
次に、上記した2つの差動配線ラインに接続するランド形状に合わせて、差動クリアランス「差動信号vs電源/グランド」(図54(c)参照)の値でオフセットするラインを発生させる(ステップS4608;図47の「◎A層の2)」および「◎B層の2)」を参照する。)。なお、この際には、プリント基板のDRCに従って、配線できる箇所にのみラインを発生させる。
次に、発生させたラインで結線可能なものは結線し、差動配線をオフセットしたもの以外で一つも結線対象が無かったものは削除し(ステップS4610;図47の「◎A層の3)」および「◎B層の3)」を参照する。)、このシールド配線処理プログラムを終了する。
次に、差動配線DRC処理手段106によって実行されるデザインルールチェックについて説明する。
ここで、差動配線DRC処理手段106による差動配線のデザインルールチェックでは、通常のプリント基板設計ルール以外に差動配線専用のルールが適用される。また、差動配線DRC処理手段106による差動配線のデザインルールチェックは、配線時と配線後のそれぞれに行うことが可能である。
はじめに、差動配線間隔(ただし、ブロードサイド結合は除く。)のデザインルールチェックについて説明する。
即ち、差動配線DRC処理手段106によるデザインルールチェックは、指定の距離以上離れているかを確認する従来のクリアランスチェックとは異なり、差動配線のポジ信号の配線とネガ信号の配線との2配線が指定の差動配線間隔を維持して並行に配線されているか否かを確認し、当該2配線が許容差を越えて近づいても離れてもエラーとなるようになされている(図48参照)。ただし、並行でない箇所、並行であっても、ランドとの引き出し・引き込み箇所は、差動配線間隔チェックの対象外となるように制御されている(図48参照)。
ここで、図49には、上記した差動配線間隔のデザインルールチェックの処理のプログラム(以下、「差動配線間隔デザインルールチェックプログラム」と称する。)のルーチンを示すフローチャートが表されている。
上記した差動配線情報設定処理プログラムと同様に、起動コマンドの入力などにより差動配線間隔デザインルールチェックプログラムが起動されると、図49に示すフローチャートのルーチンが実行されることになる。
この図49に示すフローチャートと図50(a)(b)(c)に示す差動配線間隔のデザインルールチェックの処理の動作遷移図を参照しながら、この差動配線間隔デザインルールチェック処理の処理手順を詳細に説明する。
差動配線間隔デザインルールチェックプログラムが起動されると、まず、チェック対象の差動配線情報を取得する(ステップS4902)。
次に、ステップS4902で取得した差動配線情報の差動ペアに設定されている差動配線間隔を、基板設計データベースから取得する(ステップS4904)。
さらに、差動ネットペア毎にチェック対象データをまとめ(ステップS4906)、差動ネットペアのそれぞれのネットの線分毎にペアとなる線分を求める(ステップS4908;図50(a)を参照する。)。
次に、ペアとなる線分同士の間隔を求め(ステップS4910;図50(b)を参照する。)、設定されている差動配線間隔と異なる箇所があればエラー表示し(ステップS4712;図50(c)を参照する。)、この差動配線間隔デザインルールチェックプログラムの処理を終了する。
次に、差動配線のポジ信号の配線とネガ信号の配線との配線長差たるポジ/ネガ信号間配線長差のデザインルールチェックについて説明すると、差動配線DRC処理手段106によるデザインルールチェックは、ドライバからレシーバまでを接続したポジ信号の配線とネガ信号の配線との配線長をそれぞれ求め、その差たる配線長差が指定の許容範囲内に収まっているかを検出する(図51参照)。
また、途中に分岐があってレシーバが複数存在する差動配線の場合でも(図52(a)参照)、ドライバからそれぞれのレシーバ間でチェックする(図52(b)(c)参照)。ただし、信号の受け渡しがないレシーバからレシーバまでの経路は除外する(図52(d)参照)。
ここで、図53には、上記したポジ/ネガ信号間配線長差のデザインルールチェックの処理のプログラム(以下、「ポジ/ネガ信号間配線長差デザインルールチェックプログラム」と称する。)のルーチンを示すフローチャートが表されている。
上記した差動配線情報設定処理プログラムと同様に、起動コマンドの入力などによりポジ/ネガ信号間配線長差デザインルールチェックプログラムが起動されると、図53に示すフローチャートのルーチンが実行されることになる。
即ち、ポジ/ネガ信号間配線長差デザインルールチェックプログラムが起動されると、まず、チェック対象の差動配線情報を取得する(ステップS5302)。
次に、ステップS5302で取得した差動配線情報の差動ペアに設定されている配線長許容値を、基板設計データベースから取得する(ステップS5304)。
それから、差動ペアの2配線毎にドライバとレシーバとの間のピンの組み合わせを全て取得し(ステップS5306)、取得したドライバとレシーバとの間のピンの組み合わせで差動ペアの2配線でペアとなるようにまとめる(ステップS5308;図52(b)(c)を参照する。)。
次に、ドライバとレシーバとの間の配線長を求め(ステップS5310)、さらに、ステップS5308でまとめたペアとなるドライバとレシーバとの間の配線長を求める(ステップS5312)。
ステップS5310とステップS5312とで求めた配線長の差が許容値を超えていた場合にはエラー表示をし(ステップS5314)、このポジ/ネガ信号間配線長差デザインルールチェックプログラムの処理を終了する。
次に、差動クリアランスのデザインルールチェックについて説明するが、この差動クリアランスのデザインルールチェックとは、ある差動信号が他信号と離さなければならない距離を指定し、それを守っているかを調べるというデザインルールチェックである。
差動クリアランスのデザインルールチェックのチェック対象は、図52(a)(b)(c)に示すように、差動信号と差動信号との間の間隔たる差動クリアランス「差動信号vs差動信号」(図54(a)参照)と、差動信号と一般信号との間の間隔たる差動クリアランス「差動信号vs一般信号」(図54(b)参照)と、差動信号と電源またはグランドとの間の間隔たる差動クリアランス「差動信号vs電源/グランド」(図54(c)参照)と3種類がある。
次に、差動配線入力処理手段104の編集処理として実施される、差動配線の既配線に対する配線後処理について説明するが、差動配線は、ポジ信号の配線とネガ信号の配線との間でドライバからレシーバまでの間の配線長を一致させる必要があり、屡々この配線長が一致しない場合が発生する。
このため、差動配線装置100においては、こうした配線長差が予め設定された長さ以上であった場合は、配線長差を吸収するように迂回配線(ミアンダ配線)を発生させるようになされている。
ここで、図55には、上記した差動配線への配線後処理のプログラム(以下、「配線後処理プログラム」と称する。)のルーチンを示すフローチャートが表されている。
上記した差動配線情報設定処理プログラムと同様に、起動コマンドの入力などにより配線後処理プログラムが起動されると、図55に示すフローチャートのルーチンが実行されることになる。
この図55に示すフローチャートと図56(a)(b)(c)(d)に示す配線後処理の動作遷移図を参照しながら、この配線後処理の処理手順を詳細に説明する。
この配線後処理プログラムが起動されると、まず、処理対象の差動ペアを選択し(ステップS5502;図56(a)を参照する。)、その差動ペアのエレクトリカル・ネットの差動配線長とその差を取得し(ステップS5504)、取得した配線長差は指定された許容範囲内であるか否かを判断する(ステップS5506;図56(b)を参照する。)。
このステップS5506の判断処理において、ステップS5504で取得した配線長差が指定された許容範囲内であると判断された場合には、この配線後処理プログラムの処理を終了する。
一方、ステップS5506の判断処理において、ステップS5504で取得した配線長差は指定された許容範囲内にはない判断された場合には、差動ペア内の差動ネットペアを全て取得する(ステップS5508)。
それから、ステップS5508で取得した全ての差動ネットペアに対して差動配線長とその差を取得し(ステップS5510)、取得した配線長差は指定された許容範囲内であるか否かを判断する(ステップS5512;図56(c)を参照する。)。
このステップS5512の判断処理において、ステップS5510で取得した配線長差が指定された許容範囲内であると判断された場合には、この配線後処理プログラムの処理を終了する。
一方、ステップS5512の判断処理において、ステップS5510で取得した配線長差は指定された許容範囲内にはないと判断された場合には、当該配線長が許容範囲内にないネットの両端の差動ピンペアのピッチを取得し(ステップS5514)、ピッチの大きい側にミアンダ配線を行うミアンダ処理を実行し(ステップS5516;図56(d)を参照する。)、この差動配線情報設定処理プログラムの処理を終了する。
即ち、既に配線された差動配線への配線後処理の手順は、以下の通りとなる。
(1)差動ペアのポジ信号の配線とネガ信号の配線との間でドライバからレシーバまでの間のエレクトリカル・ネットの配線長差を求め、それが指定の範囲内に収まっていなければ、配線後処理対象の差動ペアとする。
(2) 差動ネットペアのピン間におけるネットの配線長差を求め、それが指定の範囲内に収まっていなければ、差動ネットペアで短いものをミアンダ配線処理の対象とする。
(3)差動ネットペア両端のピン(差動ピンペア)のピッチを求め、より広い側に対してミアンダ配線処理を行う。同じ値であれば、レシーバ側にミアンダ処理を行う(ミアンダ配線処理は、CADシステムに設定されているミアンダ配線ルールとプリント基板設計ルールに従って行われる)。
なお、配線長差を吸収するミアンダ処理の箇所を記憶しておき、デザインルールチェックにより当該箇所で差動配線間隔が維持されていないという検出結果が出ても、それはエラーとはしないようにする。
なお、上記した実施の形態は、以下に示す(1)乃至(5)に説明するように変形することができるものである。
(1)上記した実施の形態においては、図37乃至図43などを参照しながら差動配線の引き出し形状パターンならびに引き込み形状パターンの仮形状表示の処理について説明したが、これらの処理の手法は一例に過ぎないものであり、所定領域内において差動配線の引き出し形状パターンあるいは引き込み形状パターンを仮形状表示することができれば、適宜に変更してもよいことは勿論である。また、差動配線の引き出し形状パターンならびに引き込み形状パターンの仮形状表示の際に表示する形状についても、上記した実施の形態に限られるものではないことは勿論であり、適宜の形状を表示するようにしてよい。
(2)上記した実施の形態においては、差動配線装置と回路設計装置と基板設計装置とをそれぞれ別体に構成したが、これに限られるものではないことは勿論であり、例えば、差動配線装置と回路設計装置とを一体的に構成しても良く、また、差動配線装置と基板設計装置とを一体的に構成しても良く、また、差動配線装置と回路設計装置と基板設計装置とを一体的に構成してもよい。
(3)上記した実施の形態においては、差動配線装置は、回路設計装置から回路設計データおよび電子部品データを取得し、基板設計装置から基板設計データおよびインピーダンスならびに基板仕様を取得するようにしたが、これに限られるものではないことは勿論であり、例えば、別途設けた記憶手段に回路設計データ、電子部品データ、基板設計データおよびインピーダンスならびに基板仕様を記憶しておき、当該記憶手段からそれらの情報を読み出して取得するようにしてもよいし、あるいは、差動配線装置内にそれらの情報を記憶するようにしてもよい。
(4)上記した実施の形態においては、パーソナルコンピューターなどの汎用コンピューターなどを用いて、本発明による差動配線方法を実行させるプログラムによって本発明による差動配線装置を具現化する場合、即ち、差動配線プログラムをコンピューターに実行させて図2に示す各構成要素としてコンピューターを機能させることにより、本発明による差動配線を実行する場合について説明したが、これに限られるものではないことは勿論であり、図2に示す各構成要素に特化した素子や装置を別途作製して、これら素子や装置を組み付けることにより、本発明による差動配線装置に特化した装置を構成するようにしてもよい。
(5)上記した実施の形態ならびに上記した(1)乃至(4)に示す変形例は、適宜に組み合わせるようにしてもよい。