(57)【要約】【課題】配線基板の上の配線設計において、自動配線設計装置により設計した配線設計が、デザインルール違反を有する場合には、デザインルール違反を解消する。【解決手段】ある１つのデザインルール違反を選択済デザインルール違反として選択し、前記複数のビアから１つのビアを選択し、その選択したビアを削除し、残った前記複数のビアと前記複数の接続用端子とを配線接続し、前記選択済デザインルール違反が検出されない場合には、前記選択ビアを、予め決めた複数の座標位置に移動し、移動後の各座標位置において、前記複数のビアと前記複数の接続用端子とを配線接続し、デザインルールチェックを施し、新たなデザインルール違反が検出されることなく、前記選択済デザインルール違反も検出されないか否かを判定する。【選択図】図３
2010198466.tif 000002
【特許請求の範囲】
【請求項１】
配線基板に対する配線設計方法であって、
前記配線基板は、
前記配線基板の第１の面に形成され、且つ、前記第１の面に搭載されるべき半導体チップにおける複数の接続端子と接続可能な、複数の半導体チップ接続用端子と、
前記第１の面に対向する、前記配線基板の、第２の面に形成され、且つ、前記配線基板が接続されるべき外部機器における複数の接続端子と接続可能な、複数の外部機器接続用端子と、
前記配線基板を前記第１の面から前記第２の面まで貫く複数のビアと、
を備え、
前記複数のビアのそれぞれは、前記第１の面においては、前記複数の半導体チップ接続用端子のあるものと一対一に関係付されており、前記第２の面においては、前記複数の外部機器接続用端子のあるものと一対一に関係付されている、
ものとして構成されており、
前記第１の面において、前記複数の半導体チップ接続用端子と前記複数のビアとの互いに一対一に関係付されたもの同士を配線接続し、
前記第２の面において、前記複数の外部機器接続用端子と前記複数のビアとの互いに一対一に関係付されたもの同士を配線接続する、
配線設計方法において、
前記第１の面において、互いに一対一に関係付された前記複数の半導体チップ接続用端子と前記複数のビアとを配線接続するように配線設計し、前記第２の面において、互いに一対一に関係付された前記複数の外部機器接続用端子と前記複数のビアとを配線接続するように配線設計した後、
デザインルールチェックを施し、得られたデザインルール違反検出結果において１つ以上のデザインルール違反があった場合には、得られた前記デザインルール違反検出結果の中から、１つのデザインルール違反を選択してそれを選択済デザインルール違反とし、
前記複数のビアから、１つのビアを選択してそれを選択ビアとし、
前記選択ビアを削除し、前記第１の面において、残った前記複数のビアと、それらと関係付された、前記複数の半導体チップ接続用端子と、をそれぞれ配線接続するように配線設計し、前記第２の面において、残った前記複数のビアと、それらと関係付された、前記複数の外部機器接続用端子と、をそれぞれ配線接続するように配線設計し、デザインルールチェックを施し、前記選択済デザインルール違反が検出されるか否か判定し、
前記選択済デザインルール違反が検出されない場合には、前記選択ビアを前記第１の面において、予め決めた複数の座標位置に移動し、移動後の各座標位置において、その都度、前記第１の面において、前記選択ビアを含む前記複数のビアと、それらと関係付された、前記複数の半導体チップ接続用端子と、をそれぞれ配線接続するように配線設計し、前記第２の面において、前記選択ビアを含む前記複数のビアと、それらと関係付された、前記複数の外部機器接続用端子と、をそれぞれ配線接続するように配線設計し、デザインルールチェックを施し、新たなデザインルール違反が検出されることなく、前記選択済デザインルール違反も検出されないか否かを判定する、
ことを特徴とする配線設計方法。
【請求項２】
配線基板に対する配線設計方法であって、
前記配線基板は、
前記配線基板の第１の面に形成され、且つ、前記第１の面に搭載されるべき半導体チップにおける複数の接続端子と接続可能な、複数の半導体チップ接続用端子と、
前記第１の面に対向する、前記配線基板の、第２の面に形成され、且つ、前記配線基板が接続されるべき外部機器における複数の接続端子と接続可能な、複数の外部機器接続用端子と、
前記配線基板を前記第１の面から前記第２の面まで貫く複数のビアと、
を備え、
前記複数のビアのそれぞれは、前記第１の面においては、前記複数の半導体チップ接続用端子のあるものと一対一に関係付されており、前記第２の面においては、前記複数の外部機器接続用端子のあるものと一対一に関係付されている、
ものとして構成されており、
前記第１の面において、前記複数の半導体チップ接続用端子と前記複数のビアとの互いに一対一に関係付されたもの同士を配線接続し、
前記第２の面において、前記複数の外部機器接続用端子と前記複数のビアとの互いに一対一に関係付されたもの同士を配線接続する、
配線設計方法において、
前記第１の面において、互いに一対一に関係付された前記複数の半導体チップ接続用端子と前記複数のビアとを配線接続するように配線設計し、前記第２の面において、互いに一対一に関係付された前記複数の外部機器接続用端子と前記複数のビアとを配線接続するように配線設計した後、
デザインルールチェックを施し、得られたデザインルール違反検出結果において１つ以上のデザインルール違反があった場合には、得られた前記デザインルール違反検出結果の中から、１つのデザインルール違反を選択してそれを選択済デザインルール違反とし、
前記複数のビアから、前記選択済デザインルール違反から所定の距離にある、１つのビアを選択してそれを選択ビアとし、
前記選択ビアを削除し、前記第１の面において、残った前記複数のビアと、それらと関係付された、前記複数の半導体チップ接続用端子と、をそれぞれ配線接続するように配線設計し、前記第２の面において、残った前記複数のビアと、それらと関係付された、前記複数の外部機器接続用端子と、をそれぞれ配線接続するように配線設計し、デザインルールチェックを施し、前記選択済デザインルール違反が検出されるか否か判定し、
前記選択済デザインルール違反が検出されない場合には、前記選択ビアを前記第１の面において、予め決めた複数の座標位置に移動し、移動後の各座標位置において、その都度、前記第１の面において、前記選択ビアを含む前記複数のビアと、それらと関係付された、前記複数の半導体チップ接続用端子と、をそれぞれ配線接続するように配線設計し、前記第２の面において、前記選択ビアを含む前記複数のビアと、それらと関係付された、前記複数の外部機器接続用端子と、をそれぞれ配線接続するように配線設計し、デザインルールチェックを施し、新たなデザインルール違反が検出されることなく、前記選択済デザインルール違反も検出されないか否かを判定する、
ことを特徴とする配線設計方法。
【請求項３】
配線基板に対する配線設計方法であって、
前記配線基板は、
前記配線基板の第１の面に形成され、且つ、前記第１の面に搭載されるべき半導体チップにおける複数の接続端子と接続可能な、複数の半導体チップ接続用端子と、
前記第１の面に対向する、前記配線基板の、第２の面に形成され、且つ、前記配線基板が接続されるべき外部機器における複数の接続端子と接続可能な、複数の外部機器接続用端子と、
前記配線基板を前記第１の面から前記第２の面まで貫く複数のビアと、
を備え、
前記複数のビアのそれぞれは、前記第１の面においては、前記複数の半導体チップ接続用端子のあるものと一対一に関係付されており、前記第２の面においては、前記複数の外部機器接続用端子のあるものと一対一に関係付されている、
ものとして構成されており、
前記第１の面において、前記複数の半導体チップ接続用端子と前記複数のビアとの互いに一対一に関係付されたもの同士を配線接続し、
前記第２の面において、前記複数の外部機器接続用端子と前記複数のビアとの互いに一対一に関係付されたもの同士を配線接続する、
配線設計方法において、
前記第１の面において、互いに一対一に関係付された前記複数の半導体チップ接続用端子と前記複数のビアとを配線接続するように配線設計し、前記第２の面において、互いに一対一に関係付された前記複数の外部機器接続用端子と前記複数のビアとを配線接続するように配線設計した後、
デザインルールチェックを施し、得られたデザインルール違反検出結果において１つ以上のデザインルール違反があった場合には、得られた前記デザインルール違反検出結果の中から、１つのデザインルール違反を選択してそれを選択済デザインルール違反とし、
前記複数のビアから、２個以上の所定の個数のビアを選択してそれらを複数の選択ビアとし、
前記複数の選択ビアを削除し、前記第１の面において、残った前記複数のビアと、それらと関係付された、前記複数の半導体チップ接続用端子と、をそれぞれ配線接続するように配線設計し、前記第２の面において、残った前記複数のビアと、それらと関係付された、前記複数の外部機器接続用端子と、をそれぞれ配線接続するように配線設計し、デザインルールチェックを施し、前記選択済デザインルール違反が検出されるか否か判定し、
前記選択済デザインルール違反が検出されない場合には、前記複数の選択ビアのそれぞれを前記第１の面において、それぞれ予め決めた複数の座標位置のいずれかに移動して、移動済の前記複数の選択ビアの組み合わせによる複数の移動済パターンを形成し、その各移動済パターンにおいて、前記第１の面において、前記複数の選択ビアを含む前記複数のビアと、それらと関係付された、前記複数の半導体チップ接続用端子と、をそれぞれ配線接続するように配線設計し、前記第２の面において、前記複数の選択ビアを含む前記複数のビアと、それらと関係付された、前記複数の外部機器接続用端子と、をそれぞれ配線接続するように配線設計し、デザインルールチェックを施し、新たなデザインルール違反が検出されることなく、前記選択済デザインルール違反も検出されないか否か判定する、
ことを特徴とする配線設計方法。
【請求項４】
配線基板に対する配線設計方法であって、
前記配線基板は、
前記配線基板の第１の面に形成され、且つ、前記第１の面に搭載されるべき半導体チップにおける複数の接続端子と接続可能な、複数の半導体チップ接続用端子と、
前記第１の面に対向する、前記配線基板の、第２の面に形成され、且つ、前記配線基板が接続されるべき外部機器における複数の接続端子と接続可能な、複数の外部機器接続用端子と、
前記配線基板を前記第１の面から前記第２の面まで貫く複数のビアと、
を備え、
前記複数のビアのそれぞれは、前記第１の面においては、前記複数の半導体チップ接続用端子のあるものと一対一に関係付されており、前記第２の面においては、前記複数の外部機器接続用端子のあるものと一対一に関係付されている、
ものとして構成されており、
前記第１の面において、前記複数の半導体チップ接続用端子と前記複数のビアとの互いに一対一に関係付されたもの同士を配線接続し、
前記第２の面において、前記複数の外部機器接続用端子と前記複数のビアとの互いに一対一に関係付されたもの同士を配線接続する、
配線設計方法において、
前記第１の面において、互いに一対一に関係付された前記複数の半導体チップ接続用端子と前記複数のビアとを配線接続するように配線設計し、前記第２の面において、互いに一対一に関係付された前記複数の外部機器接続用端子と前記複数のビアとを配線接続するように配線設計した後、
デザインルールチェックを施し、得られたデザインルール違反検出結果において１つ以上のデザインルール違反があった場合には、その際に検出された前記デザインルール違反の数を第１デザインルール違反検出数とし、得られた前記デザインルール違反検出結果の中から、１つのデザインルール違反を選択してそれを選択済デザインルール違反とし、
前記複数のビアから、１つのビアを選択してそれを選択ビアとし、
前記選択ビアを削除し、前記第１の面において、残った前記複数のビアと、それらと関係付された、前記複数の半導体チップ接続用端子と、をそれぞれ配線接続するように配線設計し、前記第２の面において、残った前記複数のビアと、それらと関係付された、前記複数の外部機器接続用端子と、をそれぞれ配線接続するように配線設計し、デザインルールチェックを施し、検出されたデザインルール違反の数が、前記第１デザインルール違反検出数と比して減っているか否かを判定し、
検出されたデザインルール違反の数が前記第１デザインルール違反検出数と比して減っている場合には、前記選択ビアを前記第１の面において、予め決めた複数の座標位置に移動し、移動後の各座標位置において、その都度、前記第１の面において、前記選択ビアを含む前記複数のビアと、それらと関係付された、前記複数の半導体チップ接続用端子と、をそれぞれ配線接続するように配線設計し、前記第２の面において、前記選択ビアを含む前記複数のビアと、それらと関係付された、前記複数の外部機器接続用端子と、をそれぞれ配線接続するように配線設計し、デザインルールチェックを施し、新たなデザインルール違反が検出されることなく、前記選択済デザインルール違反も検出されないか否か判定する、
ことを特徴とする配線設計方法。
【請求項５】
配線基板に対する配線設計方法であって、
前記配線基板は、
前記配線基板の第１の面に形成され、且つ、前記第１の面に搭載されるべき半導体チップにおける複数の接続端子と接続可能な、複数の半導体チップ接続用端子と、
前記第１の面に対向する、前記配線基板の、第２の面に形成され、且つ、前記配線基板が接続されるべき外部機器における複数の接続端子と接続可能な、複数の外部機器接続用端子と、
前記配線基板を前記第１の面から前記第２の面まで貫く複数のビアと、
を備え、
前記複数のビアのそれぞれは、前記第１の面においては、前記複数の半導体チップ接続用端子のあるものと一対一に関係付されており、前記第２の面においては、前記複数の外部機器接続用端子のあるものと一対一に関係付されている、
ものとして構成されており、
前記第１の面において、前記複数の半導体チップ接続用端子と前記複数のビアとの互いに一対一に関係付されたもの同士を配線接続し、
前記第２の面において、前記複数の外部機器接続用端子と前記複数のビアとの互いに一対一に関係付されたもの同士を配線接続する、
配線設計方法において、
前記第１の面において、互いに一対一に関係付された前記複数の半導体チップ接続用端子と前記複数のビアとを配線接続するように配線設計し、前記第２の面において、互いに一対一に関係付された前記複数の外部機器接続用端子と前記複数のビアとを配線接続するように配線設計した後、
デザインルールチェックを施し、得られたデザインルール違反検出結果において１つ以上のデザインルール違反があった場合には、その際に検出された前記デザインルール違反の数を第１デザインルール違反検出数とし、得られた前記デザインルール違反検出結果の中から、１つのデザインルール違反を選択してそれを選択済デザインルール違反とし、
前記複数のビアから、１つのビアを選択してそれを選択ビアとし、
前記選択ビアを削除し、前記第１の面において、残った前記複数のビアと、それらと関係付された、前記複数の半導体チップ接続用端子と、をそれぞれ配線接続するように配線設計し、前記第２の面において、残った前記複数のビアと、それらと関係付された、前記複数の外部機器接続用端子と、をそれぞれ配線接続するように配線設計し、デザインルールチェックを施し、前記選択済デザインルール違反が検出されるか否か判定し、
前記選択済デザインルール違反が検出されない場合には、前記選択ビアを前記第１の面において、予め決めた複数の座標位置に移動し、移動後の各座標位置において、その都度、前記第１の面において、前記選択ビアを含む前記複数のビアと、それらと関係付された、前記複数の半導体チップ接続用端子と、をそれぞれ配線接続するように配線設計し、前記第２の面において、前記選択ビアを含む前記複数のビアと、それらと関係付された、前記複数の外部機器接続用端子と、をそれぞれ配線接続するように配線設計し、デザインルールチェックを施し、新たなデザインルール違反が検出されることなく、検出されたデザインルール違反の数が、前記第１デザインルール違反検出数と比して減っているか否かを判定する、
ことを特徴とする配線設計方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、半導体装置の半導体パッケージの配線基板や、電気機器のプリント回路基板（ＰＣＢ）等の、様々な配線基板における、配線設計方法に関するものである。
【背景技術】
【０００２】
半導体パッケージの配線基板や、様々な電気機器のプリント回路基板（ＰＣＢ）等、の複数の配線面を備える様々な配線基板がある。
【０００３】
このような配線基板において、さらなる高集積度、高精度の配線設計が求められている。それにともない、配線の設計時間が長時間化する傾向にある。
【０００４】
そこで、設計時間の短縮のために、従来から、自動配線設計装置により、自動的に配線を設計する手法が用いられている。これにより、すべての配線の設計を設計者の手で行う場合と比べて、配線の設計にかかる時間が短縮されることとなる。しかしながら、このような自動配線設計装置を用いて配線を自動的に設計した場合、後で説明するような、デザインルール違反と呼ばれる設計上のエラーが生じることがある。このような場合に、自動配線設計装置を用いて、デザインルール違反を解消するように設計を行うことは難しい。よって、設計者の手により、デザインルール違反を解消する設計を行ってきた。しかしながら、高集積な配線である場合には、設計者の手による設計が長時間におよぶこととなり、結局、配線の設計を完了させるまでに、多くの時間を必要とすることとなってしまっていた。
【０００５】
自動的にデザインルール違反を解消するように設計する方法としては、特許文献１に記載された発明がある。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００７−２８７０２３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
本発明は上記を鑑みてなされたもので、その目的は、配線基板の上の複数の配線の配線設計において、自動配線設計装置により設計し、得られた配線設計がデザインルール違反を有する場合には、そのデザインルール違反を解消しようとする設計方法を提供するものである。
【課題を解決するための手段】
【０００８】
本発明の一態様にかかる配線設計方法は、配線基板に対する配線設計方法であって、前記配線基板は、前記配線基板の第１の面に形成され、且つ、前記第１の面に搭載されるべき半導体チップにおける複数の接続端子と接続可能な、複数の半導体チップ接続用端子と、前記第１の面に対向する、前記配線基板の、第２の面に形成され、且つ、前記配線基板が接続されるべき外部機器における複数の接続端子と接続可能な、複数の外部機器接続用端子と、前記配線基板を前記第１の面から前記第２の面まで貫く複数のビアと、を備え、前記複数のビアのそれぞれは、前記第１の面においては、前記複数の半導体チップ接続用端子のあるものと一対一に関係付されており、前記第２の面においては、前記複数の外部機器接続用端子のあるものと一対一に関係付されている、ものとして構成されており、前記第１の面において、前記複数の半導体チップ接続用端子と前記複数のビアとの互いに一対一に関係付されたもの同士を配線接続し、前記第２の面において、前記複数の外部機器接続用端子と前記複数のビアとの互いに一対一に関係付されたもの同士を配線接続する、配線設計方法において、前記第１の面において、互いに一対一に関係付された前記複数の半導体チップ接続用端子と前記複数のビアとを配線接続するように配線設計し、前記第２の面において、互いに一対一に関係付された前記複数の外部機器接続用端子と前記複数のビアとを配線接続するように配線設計した後、デザインルールチェックを施し、得られたデザインルール違反検出結果において１つ以上のデザインルール違反があった場合には、得られた前記デザインルール違反検出結果の中から、１つのデザインルール違反を選択してそれを選択済デザインルール違反とし、前記複数のビアから、１つのビアを選択してそれを選択ビアとし、前記選択ビアを削除し、前記第１の面において、残った前記複数のビアと、それらと関係付された、前記複数の半導体チップ接続用端子と、をそれぞれ配線接続するように配線設計し、前記第２の面において、残った前記複数のビアと、それらと関係付された、前記複数の外部機器接続用端子と、をそれぞれ配線接続するように配線設計し、デザインルールチェックを施し、前記選択済デザインルール違反が検出されるか否か判定し、前記選択済デザインルール違反が検出されない場合には、前記選択ビアを前記第１の面において、予め決めた複数の座標位置に移動し、移動後の各座標位置において、その都度、前記第１の面において、前記選択ビアを含む前記複数のビアと、それらと関係付された、前記複数の半導体チップ接続用端子と、をそれぞれ配線接続するように配線設計し、前記第２の面において、前記選択ビアを含む前記複数のビアと、それらと関係付された、前記複数の外部機器接続用端子と、をそれぞれ配線接続するように配線設計し、デザインルールチェックを施し、新たなデザインルール違反が検出されることなく、前記選択済デザインルール違反も検出されないか否かを判定する、ことを特徴とする。
【発明の効果】
【０００９】
本発明の配線基板の配線の設計方法によれば、配線設計におけるデザインルール違反を解消して、配線の配線設計の時間を大幅に短縮できる。
【図面の簡単な説明】
【００１０】
【図１】本発明の実施形態にかかる自動配線設計装置を示すブロック図である。
【図２】本発明の実施形態にかかる配線の設計方法の概略を示すフローチャートである。
【図３】第１の実施形態にかかる配線の設計方法を示すフローチャートである。
【図４】第２の実施形態にかかる配線の設計方法を示すフローチャートである。
【図５】第３の実施形態にかかる配線の設計方法を示すフローチャートである。
【図６】第４の実施形態にかかる配線の設計方法を示すフローチャートである。
【図７】第５の実施形態にかかる配線の設計方法を示すフローチャートである。
【図８】ＢＧＡパッケージの構造図（要部）である。
【図９】配線基板の配線の設計方法の一例を説明するための図（全体）である。
【図１０】配線基板の配線の設計方法の一例を説明するための図（要部）である。
【図１１】デザインルール違反の一例を示す図である。
【図１２】配線の角度に起因して、隣り合うビア間を通過する配線の本数に違いが生じる理由を説明するための図である。
【発明を実施するための形態】
【００１１】
本発明の実施形態について説明する前に、本発明者が本発明をなすに至った経緯について、以下に説明する。
【００１２】
まず、本発明者は、これまで自身が行っていた配線の設計方法を解析した。
【００１３】
そこで、配線基板の上の配線の設計方法を簡単に説明する。例として、半導体パッケージの１種である、Ball Grid Array（ＢＧＡ）パッケージが備える配線基板における配線の設計方法として説明する。なお、本発明において設計対象となる配線基板は、半導体パッケージ用配線基板に限られるものではない。
【００１４】
まず、ＢＧＡパッケージの構造について簡単に説明する。図８に、ＢＧＡパッケージの構造の一部を示す。図８の（Ａ）は、側面図（要部）であり、図８の（Ｂ）は、平面図（要部）である。ＢＧＡパッケージは、対向する２つの配線面（第１の面２８ａ、第２の面２８ｂ）を備える配線基板２８を有する。第１の面２８ａの上には、複数の接続端子を有する半導体チップ２３と、半導体チップ２３上の複数の接続端子と各ワイヤー２４を介して接続される複数のボンディングフィンガー（半導体チップ接続用端子）２５と、各ボンディングフィンガー２５と電気的に接続される複数の配線２１ａと、が配置される。第２の面２８ｂの上には、ＢＧＡパッケージの外部にある外部機器と直接接続されることとなる複数の半田ボール（外部機器接続用端子）（図８では図示せず。）が各々実装されることとなる複数のボールパッド２７と、各ボールパッド２７と電気的に接続される複数の配線２１ｂと、を備える。さらに、配線基板２８は、第１の面２８ａに配置された各配線２１ａと、第２の面２８ｂに配置された各配線２１ｂとを、各々接続するための、配線基板２８を第１の面２８ａから第２の面２８ｂまで貫く複数のビア２２を備える。
【００１５】
次に、このようなＢＧＡパッケージの配線基板２８の、特に、第１の面２８ａの上の配線２１ａを設計する、自動配線設計装置による配線の設計方法について、図９と図１０とを用いて説明する。以下に説明する自動配線設計装置、及び、自動配線設計装置による配線の設計方法は、一例である。
【００１６】
図９は、第１の面２８ａの概略図である。ビア２２、ボンディングフィンガー２５、半導体チップ２３、ボールパッド２７のみを図示し、配線２１ａ、ワイヤー２４の図示は省略した。図９のような第１の面２８ａの一部Ｐを、配線２１ａの設計方法を説明するために、さらに詳細に図示したものが、図１０である。
【００１７】
第一に、配線の設計を行う前に、以下のような準備を行う。
【００１８】
図１０に表されるように、あらかじめ各ボンディングフィンガー２５に、番号をつける。その際、ボンディングフィンガー２５の並びに従って順次数字を各ボンディングフィンガー２５の番号をつけることなる。（例えば、図１０のように、あるボンディングフィンガー２５に対して、番号１をつけた場合、紙面上、その右隣りのボンディングフィンガー２５に対しては、番号２をつけることとなる。）この番号が、各ボンディングフィンガー２５を認識するための名称であり、この番号を用いて、各ボンディングフィンガー２５と、各配線２１と各ビア２２と各ボールパッド２７と、の接続関係を表し、さらに、この番号に基づいて、自動配線設計装置の有する演算処理装置が、各配線２１ａの配線経路を定めるための処理を行うこととなる。
【００１９】
次に、各ボンディングフィンガー２５に接続される各ボールパッド２７を決める。詳細には、各ボンディングフィンガー２５と、各ボンディングフィンガー２５に最終的に配線接続されることとなる各ボールパッド２７と、の接続関係を定義するために、各ボールパッド２７に接続される各ボールフィンガー２５の番号と同じ番号を、各ボールパッド２７につける。なお、どのボンディングフィンガー２５がどのボールパッド２７に接続されるかは、半導体チップ２３の備える接続端子とＢＧＡパッケージの外部にある外部機器とがどのように接続されるかによって、あらかじめ定められている。（ただし、各配線２１ａが互いに重なることのないように、所定の制約を設けて、各ボンディングフィンガー２５と各ボールパッド２７との接続関係を定める。この所定の制約とは、例えば、各ボールパッド２７につけられた番号の値が大きいものほど、各ボールパッド２７は、図１０における紙面の右側に配置されるようにする等である。）
【００２０】
次に、第１の面２８ａの上に、仮想的ＸＹ座標軸を設ける。Ｘ座標軸は、ボンディングフィンガー２５の列と平行である。Ｙ座標軸は、Ｘ座標軸と直交する。さらに詳細には、それぞれの座標軸の向きは、例えば、図１０においては、Ｘ座標軸は、紙面の左から右へ、Ｙ座標軸は、紙面の上から下へ向かっていくものとする。
【００２１】
さらに、自動配線設計装置が備える演算処理装置が演算処理を行うための仮想の格子を作成する。例えば、図１０のように、第２の面２８ｂの上には、各ボールパッド２７が規則的に配置されている（この配置は、半導体パッケージの形状によりあらかじめ定められているものである）。そこで、この仮想の格子は、その規則的に配置された各ボールパッド２７の間隔と同じ間隔を有する格子であり（その間隔は、各ビア２２の直径よりも大きい）、格子を構成する複数の線は、２つの向きで構成されており、その２つの向きは、直角に交わるものとする。各線の交差する点が各ボールパッド２７と重なることがないように、格子を配置する。このように配置される格子を構成する複数の線のうち、ボンディングフィンガー２５が並んでいる列と平行である、言い換えると、Ｘ座標軸と平行である、複数の線をＧＸｎ線（ｎは自然数）とする。また、このＧＸｎ線と直角で交わる複数の線を、ＧＹｎ線（ｎは自然数）とする。さらに、各ＧＸｎ線には順次番号がつけられる。この番号は、ボンディングフィンガー２５が並んでいる列から近い位置に配置されるＧＸｎ線ほど小さな数字をつけることとする。すなわち、ボンディングフィンガー２５の列から近い順に、ＧＸ1、ＧＸ２、ＧＸ３、…、ＧＸｎとなる。
【００２２】
第二に、設計者が、自動配線設計装置の備える入力装置に、次のような入力データを、入力する。
【００２３】
・  各ボンディングフィンガー２５の番号と各ボンディングフィンガー２５の位置座標
・  各ボールパッド２７の番号と各ボールパッド２７の位置座標
これらの入力データのうち、各ボンディングフィンガー２５の位置座標と各ボールパッド２７の位置座標とは、あらかじめ半導体パッケージの形状や第１の面２８ａに搭載される半導体チップ２３のサイズによって定められている。
【００２４】
第三に、設計者が、自動配線設計装置の備える入力装置に、各ビア２２の概略位置座標を、入力する。
【００２５】
詳細には、以下のように行う。
【００２６】
・各ボールパッド２７と接続される各ビア２２との位置関係を仮に定めておく。例えば、各ボールパッド２７に接続される各ビア２２は、各ボールパッド２７の右上の直近の格子の交差点に存在するものと仮定する。そのような仮定に基づき、各ビア２２を配線基板２８上に配置する。
【００２７】
・各ボールパッド２７と、各ボールパッド２７に接続されることとなる各ビア２２と、の接続関係を明らかにするために、各ビア２２にそれぞれ接続される各ボールパッド２７の番号と同じ番号を、各ビア２２につける。
【００２８】
・各ビア２２の番号と各ビア２２の位置座標とを、入力データとして、入力装置に、入力する。
【００２９】
・各ボンディングフィンガー２５と、各ボンディングフィンガー２５に電気的に接続されることとなる各配線２１ａと、の接続関係を定義するために、各配線２１ａにおのおの接続される各ボンディングフィンガー２５の番号と同じ番号を、各配線２１ａにつける。
【００３０】
第四に、入力装置に入力された入力データと、制約条件に基づいて、演算処理装置の備える配線モジュールにより、第１の面２８ａの上に複数の配線２１ａの概略位置（トポロジー）を決定する。複数の配線２１ａの概略位置は、各ボンディングフィンガー２５から、各配線２１ａが、一対一対応する各ビア２２に向かって延びていくように、設計される。すなわち、図１０に示されるように、各配線２１ａは、各ＧＸｎ線を順次横切りながら、延びていくこととなる。さらに、所定の制約条件に基づいて、各配線２１ａの概略位置が決定されることとなる。
【００３１】
この制約条件とは、各配線２１ａと各ビア２２とが互いに重ならず、且つ、各配線２１ａとが互いに重ならないような状態にするための条件である。言い換えると、各配線２１ａにつけられた番号と、各ビア２２につけられた番号と、の大小関係と、各ＧＸｎ線上の各配線２１ａの座標（Ｘ座標）と各ビア２２ａの座標（Ｘ座標）との大小関係とが、同じになるように、各Ｘ座標を定める旨を規定したものである。さらに詳細には、以下の通りである。
【００３２】
・各配線２１ａが、各ＧＸｎ線を横切る際のＸ座標（図１０においては、先に説明したとおり、Ｘ座標軸に従って、すなわち、図１０の紙面の右側に行くほど、Ｘ座標の値は大きくなる。）は、各配線２１ａにつけられた番号の値が大きいものほど、大きくならなくてはならないと定める。すなわち、図１０においては、各配線２１ａにつけられた番号が大きいほど、紙面の右側に配置されることとなる。
【００３３】
・各配線２１ａが、各ＧＸｎ線を横切る際は、各ＧＸｎ線上に配置されたビア２２であって、各配線２１ａにつけられた番号の値よりも小さい値であるような番号であり、各配線２１ａにつけられた番号の値に最も近い値である番号を、つけられているビア２２と、各配線２１ａにつけられた番号の値よりも大きい値であるような番号であって、各配線２１ａにつけられた番号の値に最も近い値である番号をつけられているビア２２と、の間を通過すると定める。
【００３４】
例えば、この条件に従うと、ＧＸｋ線（ｋは自然数）上に、ビア[ｍ−２]とビア[ｍ＋２]とが配置されていた場合（ｍは自然数）、配線[ｍ−１]と配線[ｍ]と配線[ｍ＋１]とは、この２つのビアの間にあるＧＸｋ線を横切らなくてはならないこととなる。
【００３５】
このような制約条件を用いることで、どのＧＸｎ線上のどのビア２２の間にどの配線２１ａが通過するのかを定める配線２１ａの概略位置が決定されることとなる。
【００３６】
第五に、各配線２１ａの概略位置に基づいて、所定の規則に従い、各配線２１ａの詳細な位置座標を定める。指定の規則とは、例えば、同じＧＸｎ線上にある隣接する２個のビア２２の間を複数の各配線２１ａが通過する際には、ＧＸｎ線上では、各配線２１ａと各配線２１ａとの間隔が等間隔になるようにＸ座標を定める旨等の条件である。そして、各ボンドフィンガー２５と、各配線２１ａの各ＧＸｎ線上の詳細な座標と、各ビア２２と、を繋ぐことで、各配線２１ａの配線経路が定まり、第１の面２８ａにおいて、配線２１ａの配線設計が完了することとなる。
【００３７】
なお、第２の面２８ｂの上の配線２１ｂについては、所定の各ビア２２と所定の各ボールパッド２７を直接接続することで、配線２１ｂの配線設計が完了することとなる。
【００３８】
第六に、このようにして設計された各配線２１ａ、２１ｂに対して、デザインルールチェック（ＤＲＣ）を行う。このデザインルールチェックとは、デザインルールと呼ばれる、各配線２１ａ、２１ｂや各ビア２２が守らなくてはならない規則、に従って、設計しているかどうかをチェックするものである。詳細には、配線２１ａ、２１ｂの各配線間隔や、各配線２１ａ、２１ｂと各ビア２２との間隔が、定められた値以上であるかを、第１の面２８ａ、第２の面２８ｂの全体に亘ってチェックするものである。（言い換えると、例えば、各配線２１ａの設計においては、各ＧＸｎ線上の座標にのみ着目して設計してきたが、このデザインルールチェックにおいては、第１の面２８ａ全体にわたって配線２１ａやビア２２をチェックする。）
【００３９】
そして、図１１で示されるように、得られた配線に、デザインルールに違反している箇所（デザインルール違反：ＤＲＣ違反）３９が検出された場合には、その箇所が表示される。
【００４０】
第七に、少なくとも１つのデザインルール違反が検出された場合は、設計者の手で、デザインルール違反を解消するように、再度設計を行う。この設計により、すべてのデザインルール違反が解消すれば、配線設計は完了することとなる。
【００４１】
しかしながら、先に説明したように、設計者の手によって、デザインルール違反を解消することは、多くの時間を必要とすることとなる。
【００４２】
そこで、本発明者は、最初からデザインルール違反のない設計をするために、最初から、デザインルールを考慮した配線の設計をするような、配線設計方法にできないものかと考えた。
【００４３】
まず、本発明者は、配線設計方法における制約条件の１つとして、デザインルールを、配線設計方法に組み入れようとした。デザインルールを表現するような制限条件としては、例えば、以下のような内容が考えられる。配線２１ａと配線２１ａの間隔、又は、配線２１ａとビア２２との間隔、を所定の値以上にしなくてはならないとのデザインルールがある。このデザインルールを、自動配線設計装置に用いてきた制約条件に対応させるように言い換えた場合、同じＧＸｎ線上にある隣接する２個のビア２２間を通過する配線２１ａの本数を限定する、という制約条件となる。しかしながら、この制約条件、すなわち、同じＧＸｎ線上の隣接する２個のビア２２間を通過することができる配線２１ａの本数をあらかじめ定めることは難しい。このことを、図１２を用いて説明する。第１の面２８ａの上の各配線２１ａは、通常、任意の角度で設計することが可能である。各配線２１ａ間との間隔と、配線２１ａとビア２２との間隔と、を一定にした場合には、例えば、図１２の（Ａ）では、同じＧＸｎ線上にある隣接する２個のビア２２間を通過することができる配線２１ａの本数が４本であるが、図１２の（Ｂ）では、隣接する２個のビア２２間を通過することができる配線２１ａの本数は３本である。このように、隣接する２個のビア２２の距離は同じであるにもかかわらず、配線２１ａの角度が異なることにより、隣接する２個のビア２２間を通過することができる配線２１ａの本数が異なるという、違いが生じる。すなわち、配線２１ａを任意の角度で設計することが可能であるため、隣接する２個のビア２２の間を通過することができる配線２１ａの本数は定めることは難しい。よって、自動配線設計装置による配線２１ａの配線設計方法に、このようなデザインルールを反映させる制約条件を組み入れることは難しいこととなる。
【００４４】
このようなことから、本発明者は、最初からデザインルール違反を生じないような配線設計方法を得ることは難しいと考えていた。
【００４５】
そこで、本発明者は、デザインルール違反が生じてしまうことをあらかじめ避けることが難しいのならば、一度、配線設計を行い、そこで生じてしまったデザインルール違反を、自動的に解消する方法はないものかと考えた。このようにすることで、自動配線設計装置を大幅に変更することを必要とせず、さらに、自動的にデザインルール違反を解消する設計を行うことで、配線設計の完了までにかかる時間を大幅に短縮することができるからである。
【００４６】
そこで、自動的にデザインルール違反を解消する設計を行おうとする場合には、デザインルール違反を生じさせている原因を特定することが必要となる。しかしながら、高集積に配線される配線基板においては、デザインルール違反の原因は、複合的な要因が絡み合ってデザインルール違反を生じさせている場合もあり、簡単に特定できるものではない。
【００４７】
よって、本発明者は、すべてのデザインルール違反は、各ビア２２の位置に起因するものであると仮に定めた。さらに、そのように仮に定めることによって、自動配線設計装置を利用して、ビアを選択し、選択したビアを移動させ、再度自動配線設計装置を利用して、配線設計をして、デザインルール違反は解消させることを考えた。
【００４８】
なお、以下の説明において、「あるビアをデザインルール違反の原因であるビアとして特定する」という記載は、「あるビアが、デザインルール違反の原因となったビアであると仮に決める」という意味で用いている。
【００４９】
また、本発明者は、選択した１個デザインルール違反（選択済デザインルール違反）の原因である、原因ビアの特定は、ビア２２を配線基板２８上から順次削除し、その状態のまま（ビア２２が削除された状態のまま）、配線２１ａ、２１ｂを、自動配線設計装置によって設計し、さらにそれに対してデザインルールチェックを行い、選択済デザインルール違反が解消されていることによって、原因ビアの特定を行うことを考えた。さらに、本発明者は、選択済デザインルール違反の原因であると特定された原因ビアを、移動させて、再度、自動配線設計装置を用いて設計し、選択済デザインルール違反を解消させることを考えた。
【００５０】
このようにすることで、自動配線設計装置を大幅に変更せずに、用いることができる。さらに、自動配線設計装置として種々のものを用いることもできる。
【００５１】
以下、本発明の実施形態について、説明する。
【００５２】
（第１の実施形態）
本発明の第１の実施形態にかかる自動設計装置１は、図１に示すように、入力データが入力される入力装置１１と、配線設計を実行する演算処理装置（ＣＰＵ）１０と、設計結果を表示する表示装置１２及び出力する出力装置１３と、配線設計プログラムを記憶するためのプログラム記憶装置１６と、配線設計に関する様々なデータを記憶するデータ記憶装置１５と、を備える。入力装置１１と、表示装置１２と、出力装置１３と、は、入出力制御部１４を介して演算処理装置１０に接続されており、プログラム記憶装置１６と、データ記憶装置１５とは、直接演算処理装置１０と接続されている。演算処理装置１０は、デザインルール違反選択モジュール１０１と、ビア選択モジュール１０２と、ビア削除モジュール１０３と、配線モジュール１０４と、デザインルールチェックモジュール１０５と、ビア移動モジュール１０６と、配線設計結果受け入れモジュール１０７と、を備える。後で説明する配線の設計方法は、これらのモジュール等を用いて行っていくこととなる。
【００５３】
第１の実施形態にかかる配線の設計方法は、大まかに以下の４つの大ステップで構成される。この４つの大ステップの流れを図２のフローチャートに示す。各大ステップの詳細は以下の通りである。
【００５４】
（ステップ１）必要なすべてのビア２２を配線基板２８上に仮に配置し、その状態で配線モジュール１０４を用いて、第１の面２８ａ上の配線２１ａの最初の配線設計をする。第２の面２８ｂの上の配線２１ｂは、所定の各ビア２２と所定の各ボールパッド２７を直接接続することで、配線２１ｂの配線設計をする。さらに、得られた配線２１ａ、２１ｂの配線設計に対して、デザインルールチェックモジュール１０５によって、デザインルールチェックを行う。
【００５５】
（ステップ２）ステップ１で、デザインルールチェックを行った結果、１個以上のデザインルール違反が検出されたか否かを判定する。
【００５６】
デザインルール違反が１個以上検出されていれば、ステップ３へ進む。
【００５７】
一方、デザインルール違反が検出されていない場合には、ステップ１で行った配線設計結果を最終的な配線設計結果として、表示装置１２に表示し、さらに、出力装置１３に出力し、配線設計は終了する。
【００５８】
（ステップ３）ステップ１で検出されたデザインルール違反の中から、デザインルール違反選択モジュール１０１を用いて、１つのデザインルール違反（選択済デザインルール違反）を選択し、選択済デザインルール違反の原因となる原因ビアを特定する。ステップ３の詳細は、後で説明する。
【００５９】
（ステップ４）原因ビアを移動し、その状態で、配線設計を行い、デザインルールチェックを行い、選択済デザインルール違反を解消するような配線設計を行う。ステップ４の詳細は、後で説明する。
【００６０】
さらに、第１の実施形態は、この一連の４つの大ステップを実施した後に、すべてのデザインルール違反が解消されるまで、さらに、ステップ３と、ステップ４と、の順に繰り返すものである。
【００６１】
この第１の実施形態にかかる配線設計方法は、先に説明したとおり、すべてのデザインルール違反は、ビア２２が原因で生じるものと仮定することで、成り立っているものである。
【００６２】
第１の実施形態の配線設計における、ステップ３からステップ４の詳細は以下の通りである。これらのステップ３から４の詳細な流れをフローチャートとして図３に示す。
【００６３】
（ステップ３−１）ステップ１で、デザインルール違反が検出された場合には、デザインルール違反選択モジュール１０１を用いて、検出された複数のデザインルール違反の中から、選択済デザインルール違反として、１個のデザインルール違反を選択する。次に、ステップ３−２へ進む。
【００６４】
（ステップ３−２）ステップ３−１で、選択済デザインルール違反が選択されているか否かを判定する。
【００６５】
選択済デザインルール違反が選択されていれば、ステップ３−３へ進む。
【００６６】
一方、選択済デザインルール違反が選択されていなければ、配線設計を終了する。
【００６７】
（ステップ３−３）ビア選択モジュール１０２を用いて、配線基板２８の有する複数のビア２２の中から、1個のビア２２を、選択して、選択ビアとする。次に、ビア削除モジュール１０３を用いて、選択ビアを、削除する。次に、ステップ３−４へ進む。
【００６８】
（ステップ３−４）選択ビアが選択され、さらに、削除されたか否かを判定する。
【００６９】
選択ビアが選択され、削除されていれば、ステップ３−５へ進む。
【００７０】
一方、選択ビアが選択されず、もしくは、削除されていない場合には、ステップ３−１へ戻る。
【００７１】
（ステップ３−５）選択ビアが削除された状態のままで、配線モジュール１０４を用いて、配線２１ａの配線設計を行う。第２の面２８ｂの上の配線２１ｂについても、選択ビアが削除された状態のままで、配線モジュール１０４を用いて、配線２１ｂの配線設計をする。次に、ステップ３−６へ進む。
【００７２】
（ステップ３−６）ステップ３−６において得られた配線２１ａ、２１ｂの設計結果に対し、デザインルールチェックモジュール１０５を用いて、デザインルールチェックを行う。
【００７３】
デザインルールチェックを行った結果、ステップ３−１で選択した選択済デザインルール違反が解消された場合（選択済デザインルール違反が検出されない場合）には、ステップ３−７へ進む。
【００７４】
一方、選択済デザインルール違反が解消されていない場合（選択済デザインルール違反が検出されている場合）には、ステップ３−３へ進む。
【００７５】
選択済デザインルール違反が解消されるまで、ステップ３−３からステップ３−６までを繰り返す。すなわち、配線基板２８上にあるすべてのビア２２を順次選択し、削除し、その状態のまま、配線２１ａ、２１ｂの配線設計し、得られた配線２１ａ、２１ｂに対してデザインルールチェックし、選択済デザインルール違反が解消されているかを判定することを繰り返す。
【００７６】
（ステップ３−７）選択ビアを、選択済デザインルール違反の原因となっている原因ビアであると特定する。ステップ４−１へ進む。
【００７７】
（ステップ４−１）ステップ３−７で特定された原因ビアを、ビア移動モジュール１０６を用いて、あらかじめ決めておいた移動先候補の１つに移動させる。次に、ステップ４−２へ進む。
【００７８】
移動先候補とは、原因ビアの現状の位置から所定の距離にあり、配線基板２８上の空きスペース（ボールパッド２７と重なることなく、配線２１ａと他のビア２２とが存在しない場所）のことである。例えば、移動先候補は、原因ビアの最初の位置から、先に説明した仮想の格子のマスの１マス分から数マス分程度の範囲にある、複数の空きスペースとする。さらに、このようなスペースを所定の大きさのマス目状に分割して、番号をつけ、複数の移動先候補として決めておく。その中から、１個の移動先候補を選択し、その位置に移動させることもできる。
【００７９】
（ステップ４−２）原因ビアを移動させたか否かを判定する。
【００８０】
原因ビアを移動させていれば、ステップ４−３へ進む。
【００８１】
一方、原因ビアを移動させていなければ、ステップ３−１へ戻る。
【００８２】
（ステップ４−３）配線モジュール１０４を用いて、第１の面２８ａ上に配線２１ａの配線設計を行う。次いで、第２の面２８ｂの上の配線２１ｂの配線設計を行う。次に、ステップ３−３へ進む。
【００８３】
（ステップ４−４）ステップ４−３で設計された配線２１ａ、２１ｂに対して、デザインルールチェックモジュール１０５を用いて、デザインルールチェックを行う。
【００８４】
選択済デザインルール違反が解消され、且つ、新たにデザインルール違反が検出されていない場合には、ステップ４−５へ進む。
【００８５】
一方、選択済デザインルール違反が解消されず、及び／又は、新たにデザインルール違反が検出された場合には、ステップ４−１に戻る。そして、選択済デザインルール違反が解消され、且つ、新たにデザインルール違反が検出されない状態になるまで、ステップ４−１からステップ４−４まで、繰り返すこととなる。
【００８６】
（ステップ４−５）ステップ４−３で得られた配線設計結果を、設計結果受け入れモジュール１０７を介して、データ記憶装置１５に入力する。
【００８７】
さらに、デザインルール違反が全て解消されるまで、ステップ３−１からステップ４−５まで、を繰り返す。そして、全てのデザインルール違反が解消された際の配線設計結果を、最終的な配線設計結果として、表示装置１２に表示し、さらに、出力装置１３に出力し、配線設計は完了する。
【００８８】
なお、このように本発明の配線設計を行っても、全てのデザインルール違反が解消されていない場合には、設計者の手により、全てのデザインルール違反が解消されるように配線設計を行う。しかしながら、このように最終的に設計者の手で行ったとしても、本発明によって、デザインルール違反の数がいくらかでも減少していれば、設計者の手による設計を行う量を少なくすることができることとなるため、設計時間の短縮に繋がることとなる。
【００８９】
（第２の実施形態）
第２の実施形態を以下に説明する。第２の実施形態は、ステップ２（原因ビアを特定するステップ）を、改良したものである。第１の実施形態のステップ２においては、デザインルール違反の原因となる可能性のあるビアは、配線基板２８の有するすべてのビア２２であるとして、すべてのビア２２に対して１個ずつ削除することを繰り返していた。そこで、第２の実施形態のステップ２においては、デザインルール違反の原因となる可能性のあるビア２２をあらかじめ限定し、その中から１個ずつ削除することを繰り返すように変更したものである。このようにすることで、第２の実施形態は、第１の実施形態と比べて、原因ビアを特定する時間を短縮することができるという利点がある。
【００９０】
さらに詳細には、第２の実施形態では、選択済デザインルール違反の原因となっている可能性のあるビア２２は、選択済デザインルール違反の位置から所定の距離の範囲内に存在する複数のビア２２であるとして、あらかじめ限定する（例えば、選択済デザインルール違反の箇所から、数１００μｍ以内にある複数のビア２２を削除対象として限定する）。そして、このような位置にある複数のビア２２の中から１個ずつ順次削除する。本発明者は、選択済デザインルール違反を引き起こしている原因ビア２２は、選択済デザインルール違反の近くに存在することが多いことを経験的に独自に知得しており、第２の実施形態は、その本発明者の独自の知得を利用するものである。
【００９１】
詳細な第２の実施形態の配線の設計方法としては、ステップ３−３をステップ３−３Ｂに置き換えたこと以外は、第１の実施形態と同じである。図４にこの設計の流れをフローチャートとして示す。以下に、第２の実施形態特有のステップであるステップ３−３Ｂについてのみ、説明する。
【００９２】
（ステップ３−３Ｂ）ビア選択モジュール１０２を用いて、ステップ３−１で選択された選択済デザインルール違反から所定の距離内にある各ビア２２を、選択ビアとして、1個選択する。さらに、ビア削除モジュール１０３を用いて、この選択ビアを削除する。次に、ステップ３−４へ進む。
【００９３】
（第３の実施形態）
第３の実施形態を以下に説明する。第１の実施形態においては、１個のデザインルール違反に対して、１個のビア２２が原因となって引き起こしていると仮定して、原因ビアの特定を行うものであった。しかしながら、実際には、１個のデザインルール違反と、そのデザインルール違反の原因となっている原因ビアとは、このように一対一に対応するものであるとは必ずしも限らず、複数のビア２２が原因となって、１個のデザインルール違反を引き起こしている場合がある。このような場合に対応したものが、第３の実施形態である。
【００９４】
第３の実施形態の配線の設計方法としては、第１の実施形態のステップ３−３をステップ３−３Ｃに置き換えたこと以外は、第１の実施形態と同じである。図５にこの設計の流れをフローチャートとして示す。以下に、第３の実施形態特有のステップであるステップ３−３Ｃのみについて、詳細に説明する。
【００９５】
（ステップ３−３Ｃ）ビア選択モジュール１０２を用いて、配線基板２８の有する複数のビア２２の中から、所定の個数分のビア２２を選択し、複数の選択ビアとする。（所定の個数分とは、例えば、２個とか３個程度である。）さらに、ビア削除モジュール１０３を用いて、選択した複数の選択ビアを同時に削除する。次に、ステップ３−４へ進む。
【００９６】
（第４の実施形態）
第４の実施形態を以下に説明する。
【００９７】
これまで説明してきた実施形態は、選択済デザインルール違反の原因となっている原因ビア２２を特定するには、ビア２２を順次削除し、その状態のままで配線２１ａ、２１ｂの配線設計をし、デザインルールチェックを行い、選択済デザインルール違反が解消されることによって、行っていた。しかしながら、配線基板２８上のすべてのビア２２を順次１個ずつ削除しても、選択済デザインルール違反が解消されない場合がある。このような場合にも、配線設計を可能にしたのが、第４の実施形態である。さらに詳細には、第４の実施形態は、これまで説明してきた実施形態により、原因ビアを特定することができない場合には、選択ビアを削除して配線設計した際に検出されたデザインルール違反の数が、ステップ１において検出されたデザインルール違反の数（第１デザインルール違反検出数）と比して減少した場合には、その際に削除された選択ビアが、選択済デザインルール違反の原因となっている原因ビアであると仮定して、配線設計を進めていくものである。
【００９８】
第４の実施形態は、第１の実施形態における中ステップ３−６を、以下に説明する３つの小ステップであるステップ３−６−１Ｄからステップ３−６−３Ｄに置き換えたものである。すなわち、第５の実施形態は、ステップ３−６−１Ｄからステップ３−６−３Ｄ以外は、第１の実施形態と同じである。図６に配線設計の流れをフローチャートとして示す。以下に、第４の実施形態特有のステップのみについて、詳細に説明する。
【００９９】
(ステップ３−６−１Ｄ) ステップ３−５において設計された配線２１ａに対し、デザインルールチェックモジュール１０５を用いて、デザインルールチェックを行う。
【０１００】
デザインルールチェックを行った結果、ステップ３−１で選択した選択済デザインルール違反が解消された場合（選択済デザインルール違反が検出されない場合）には、ステップ３−７へ進む。
【０１０１】
一方、選択済デザインルール違反が解消されていない場合（選択済デザインルール違反が検出されている場合）には、ステップ３−６−２Ｄへ進む。
【０１０２】
（ステップ３−６−２Ｄ）選択済デザインルール違反が解消されていないが、ステップ１において検出されたデザインルール違反の数と比較して、ステップ３−６−１Ｄにおいて検出されたデザインルール違反の数が減少しているならば、選択ビアを、次善ビア候補リストに、入力する。その後、ステップ３−３へ戻る。
【０１０３】
一方、ステップ１において検出されたデザインルール違反の数と比較して、デザインルール違反の数が減少しない場合には、そのままステップ３−３へ戻る。
【０１０４】
（ステップ２−４−３Ｄ）ステップ３−３からステップ３−６−２Ｄまでを繰り返し行ったが、選択済デザインルール違反が解消されない場合には、言い換えると、原因ビアを特定することができない場合には、最終的に、次善ビア候補リストの中から選択ビアを１個選択し、ステップ３−７へ進む。（例えば、次善ビア候補リストに複数の選択ビアの情報が存在する場合には、次善ビア候補リスト中にある各選択ビアに対応するデザインルール違反の数が、ステップ１において検出されたデザインルール違反の数と比較して、最も減少している、選択ビアを選択する。）
【０１０５】
（第５の実施形態）
以下に第５の実施形態について説明する。これまで説明してきた配線設計方法において、ステップ２−１で選択した選択済デザインルール違反の原因として特定された原因ビアを配線基板２８の上のすべての移動先候補に順次移動させても、選択済デザインルール違反が依然として解消されない場合が存在する。このような場合にも、配線設計を可能にしたものが第５の実施形態である。
【０１０６】
詳細には、この第５の実施形態にかかる配線の設計方法は、選択済デザインルール違反が解消されていない状態であっても、ステップ１において検出されたデザインルール違反の数（第１デザインルール違反検出数）と比してデザインルール違反の数が減少した場合には、その際の原因ビアの位置及び配線設計結果を、設計結果受け入れモジュール１０７を介して、データ記憶装置１５に入力する。そして、最終的に、原因ビアをどの位置に移動させても、選択済デザインルール違反が解消されない場合には、データ記憶装置１５から１つの配線設計結果を選択して、最終的な配線設計結果として、出力するものである。
【０１０７】
第５の実施形態は、第２の実施形態における中ステップ４−４を、以下に説明する３つの小ステップである、ステップ４−４−１Ｅ、ステップ４−４−２Ｅ、ステップ４−４−３Ｅに置き換えたものである。すなわち、第５の実施形態は、ステップ４−４−１Ｅからステップ４−４−３Ｅ以外は、第１の実施形態と同じである。図７にこの設計の流れをフローチャートとして示す。以下に、第５の実施形態に特有のステップであるステップ４−４−１Ｅからステップ４−４−３Ｅについてのみ、詳細に説明する。
【０１０８】
（ステップ４−４−１Ｅ）ステップ４−３で設計された配線２１ａ、２１ｂ設計結果に対して、デザインルールチェックモジュール１０５を用いて、デザインルールチェックを行う。
【０１０９】
選択済デザインルール違反が解消され、且つ、新たにデザインルール違反が検出されていない場合には、ステップ４−５へ進む。
【０１１０】
一方、選択済デザインルール違反が解消されず、及び／又は、新たにデザインルール違反が検出された場合には、ステップ４−４−２Ｅへ進む。
【０１１１】
（ステップ４−４−２Ｅ）選択済デザインルール違反は解消されていないが、ステップ１において検出されたデザインルール違反の数と比して、検出されたデザインルール違反の数が減少している場合は、次善移動先候補位置リストに、その移動先候補の情報を、入力し、ステップ４−１へ進む。
【０１１２】
一方、ステップ１において検出されたデザインルール違反の数と比して、検出されたデザインルール違反の数が減少していない場合には、直接、ステップ４−１に戻る。
【０１１３】
（ステップ４−４−３Ｅ）ステップ４−１からステップ４−４−２Ｅを繰り返し行い、最終的に、選択済デザインルール違反が解消されない場合には、次善移動先候補位置リストの中から、移動先候補を１個選択する。（例えば、次善移動先候補位置リストに候補となる複数の移動先候補位置が存在する場合には、ステップ１において検出されたデザインルール違反の数と比して、最もデザインルール違反の数を減少させた移動先候補位置を選択する。）ステップ４−５へ進む。
【０１１４】
なお、本発明は、これまで説明してきた実施形態に限定されるものではない。
【符号の説明】
【０１１５】
１    自動配線設計装置
１０  演算処理装置
１１  入力装置
１２  表示装置
１３  出力装置
１４  入出力制御部
１５  データ記憶装置
１６  プログラム記憶装置
１０１  デザインルール違反選択モジュール
１０２  ビア選択モジュール
１０３  ビア削除モジュール
１０４  配線モジュール
１０５  デザインルールチェックモジュール
１０６  ビア移動モジュール
１０７  設計結果の受け入れモジュール
２１ａ、２１ｂ  配線
２２  ビア
２３  半導体チップ
２４  ワイヤー
２５  ボンディングフィンガー（半導体チップ接続用端子）
２６  メッキリード
２７  ボールパッド（外部機器接続用端子）
２８  配線基板
２８ａ  配線基板の第１の面
２８ｂ  配線基板の第２の面
３９  デザインルール違反
Ｐ    配線基板の第１の面の一部
【図１】
2010198466.tif 000003
【図２】
2010198466.tif 000004
【図３】
2010198466.tif 000005
【図４】
2010198466.tif 000006
【図５】
2010198466.tif 000007
【図６】
2010198466.tif 000008
【図７】
2010198466.tif 000009
【図８】
2010198466.tif 000010
【図９】
2010198466.tif 000011
【図１０】
2010198466.tif 000012
【図１１】
2010198466.tif 000013
【図１２】
2010198466.tif 000014