(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】6025165
(24)【登録日】2016年10月21日
(45)【発行日】2016年11月16日
(54)【発明の名称】半導体製造装置の制御プログラムの更新システム
(51)【国際特許分類】
G06F 11/00 20060101AFI20161107BHJP
【FI】
G06F9/06 630A
【請求項の数】16
【全頁数】17
(21)【出願番号】特願2012-103289(P2012-103289)
(22)【出願日】2012年4月27日
(65)【公開番号】特開2013-232077(P2013-232077A)
(43)【公開日】2013年11月14日
【審査請求日】2015年4月10日
(73)【特許権者】
【識別番号】500548884
【氏名又は名称】ハンファテクウィン株式会社
【氏名又は名称原語表記】HANWHA TECHWIN CO.,LTD.
(74)【代理人】
【識別番号】100082164
【弁理士】
【氏名又は名称】小堀 益
(74)【代理人】
【識別番号】100105577
【弁理士】
【氏名又は名称】堤 隆人
(72)【発明者】
【氏名】池内 光雄
【審査官】
長谷川 篤男
(56)【参考文献】
【文献】
特開2002−217182(JP,A)
【文献】
特開2010−272829(JP,A)
【文献】
特開2006−127393(JP,A)
【文献】
特開2010−055279(JP,A)
【文献】
特開2007−295371(JP,A)
【文献】
特開2010−176372(JP,A)
【文献】
特開2001−022563(JP,A)
【文献】
特開2005−157885(JP,A)
【文献】
米国特許出願公開第2010/0298962(US,A1)
【文献】
米国特許出願公開第2002/0111708(US,A1)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 9/44
G06F 9/445
G06F 11/00
(57)【特許請求の範囲】
【請求項1】
半導体製造装置のユニット毎に設置され、制御プログラムを実行することにより前記ユニットの動作を制御するユニットコントローラに、メインコントローラから更新プログラムを提供し、その更新プログラムによりユニットコントローラの制御プログラムを更新する半導体製造装置の制御プログラムの更新システムであって、
前記メインコントローラは、各ユニットコントローラに必要な更新プログラムのバージョン情報の組合せを示すバージョン組合せデータを有し、各ユニットコントローラに提供する更新プログラムのバージョン情報の組合せが前記バージョン組合せデータと一致するか否かを判定する機能と、各ユニットコントローラに提供する更新プログラムのバージョン情報の組合せが前記バージョン組合せデータと一致すると判定されたときに、各ユニットコントローラにそれぞれ更新プログラムを提供する機能とを備え、
前記更新プログラム及び前記制御プログラムのバージョン情報が、少なくとも上位及び下位の2段階のバージョン情報を含み、前記メインコントローラは、少なくとも上位のバージョン情報が一致したときに、各ユニットコントローラに提供する更新プログラムのバージョン情報又はその組合せが前記バージョン組合せデータと一致すると判定することを特徴とする半導体製造装置の制御プログラムの更新システム。
【請求項2】
半導体製造装置のユニット毎に設置され、制御プログラムを実行することにより前記ユニットの動作を制御するユニットコントローラに、メインコントローラから更新プログラムを提供し、その更新プログラムによりユニットコントローラの制御プログラムを更新する半導体製造装置の制御プログラムの更新システムであって、
前記メインコントローラは、各ユニットコントローラに必要な制御プログラムのバージョン情報の組合せを示すバージョン組合せデータを有し、各ユニットコントローラに提供する更新プログラムのバージョン情報が前記バージョン組合せデータと一致するか否かを判定する機能と、各ユニットコントローラに提供する更新プログラムのバージョン情報が前記バージョン組合せデータと一致すると判定されたときに、各ユニットコントローラにそれぞれ更新プログラムを提供する機能とを備え、
前記更新プログラム及び前記制御プログラムのバージョン情報が、少なくとも上位及び下位の2段階のバージョン情報を含み、前記メインコントローラは、少なくとも上位のバージョン情報が一致したときに、各ユニットコントローラに提供する更新プログラムのバージョン情報又はその組合せが前記バージョン組合せデータと一致すると判定することを特徴とする半導体製造装置の制御プログラムの更新システム。
【請求項3】
半導体製造装置のユニット毎に設置され、制御プログラムを実行することにより前記ユニットの動作を制御するユニットコントローラに、メインコントローラから更新プログラムを提供し、その更新プログラムによりユニットコントローラの制御プログラムを更新する半導体製造装置の制御プログラムの更新システムであって、
前記メインコントローラは、各ユニットコントローラに提供されている制御プログラムのバージョン情報の組合せを示すバージョン組合せデータを有し、一部又は全部のユニットコントローラに更新プログラムを提供する場合、それらの更新プログラムのバージョン情報を前記バージョン組合せデータの対応するバージョン情報と置き換えた上で、バージョン情報置き換え後のバージョン組合せデータが適正か否かを判定する機能と、その判定により適正であるときに、前記一部又は全部のユニットコントローラにそれぞれ更新プログラムを提供する機能とを備え、
前記更新プログラム及び前記制御プログラムのバージョン情報が、少なくとも上位及び下位の2段階のバージョン情報を含み、前記メインコントローラは、上位のバージョン情報を使用して、前記バージョン情報置き換え後のバージョン組合せデータが適正か否かを判定することを特徴とする半導体製造装置の制御プログラムの更新システム。
【請求項4】
前記更新プログラム及び前記制御プログラムのバージョン情報が、上位、中位及び下位の3段階のバージョン情報からなり、前記メインコントローラは、上位及び中位のバージョン情報又は上位のバージョン情報が一致したときに、各ユニットコントローラに提供する更新プログラムのバージョン情報又はその組合せが前記バージョン組合せデータと一致すると判定する、請求項1又は2に記載の半導体製造装置の制御プログラムの更新システム。
【請求項5】
前記更新プログラム及び前記制御プログラムのバージョン情報が、上位、中位及び下位の3段階のバージョン情報からなり、前記メインコントローラは、上位、又は上位及び中位のバージョン情報を使用して、前記バージョン情報置き換え後のバージョン組合せデータが適正か否かを判定する請求項3に記載の半導体製造装置の制御プログラムの更新システム。
【請求項6】
半導体製造装置のユニット毎に設置され、制御プログラムを実行することにより前記ユニットの動作を制御するユニットコントローラに、メインコントローラから更新プログラムを提供し、その更新プログラムによりユニットコントローラの制御プログラムを更新する半導体製造装置の制御プログラムの更新システムであって、
前記メインコントローラは、各ユニットコントローラに必要な更新プログラムのバージョン情報の組合せを示すバージョン組合せデータを有し、各ユニットコントローラに提供する更新プログラムのバージョン情報の組合せが前記バージョン組合せデータと一致するか否かを判定する機能と、各ユニットコントローラに提供する更新プログラムのバージョン情報の組合せが前記バージョン組合せデータと一致すると判定されたときに、各ユニットコントローラにそれぞれ更新プログラムを提供する機能と、起動時に、各ユニットコントローラの制御プログラムのバージョン情報の組合せを確認し、そのバージョン情報の組合せが適正か否かを判定する機能と、その判定により適正でないときに、ユニットコントローラに更新プログラムを再提供する機能とを備えたことを特徴とする半導体製造装置の制御プログラムの更新システム。
【請求項7】
半導体製造装置のユニット毎に設置され、制御プログラムを実行することにより前記ユニットの動作を制御するユニットコントローラに、メインコントローラから更新プログラムを提供し、その更新プログラムによりユニットコントローラの制御プログラムを更新する半導体製造装置の制御プログラムの更新システムであって、
前記メインコントローラは、各ユニットコントローラに必要な制御プログラムのバージョン情報の組合せを示すバージョン組合せデータを有し、各ユニットコントローラに提供する更新プログラムのバージョン情報が前記バージョン組合せデータと一致するか否かを判定する機能と、各ユニットコントローラに提供する更新プログラムのバージョン情報が前記バージョン組合せデータと一致すると判定されたときに、各ユニットコントローラにそれぞれ更新プログラムを提供する機能と、起動時に、各ユニットコントローラの制御プログラムのバージョン情報の組合せを確認し、そのバージョン情報の組合せが適正か否かを判定する機能と、その判定により適正でないときに、ユニットコントローラに更新プログラムを再提供する機能とを備えたことを特徴とする半導体製造装置の制御プログラムの更新システム。
【請求項8】
半導体製造装置のユニット毎に設置され、制御プログラムを実行することにより前記ユニットの動作を制御するユニットコントローラに、メインコントローラから更新プログラムを提供し、その更新プログラムによりユニットコントローラの制御プログラムを更新する半導体製造装置の制御プログラムの更新システムであって、
前記メインコントローラは、各ユニットコントローラに提供されている制御プログラムのバージョン情報の組合せを示すバージョン組合せデータを有し、一部又は全部のユニットコントローラに更新プログラムを提供する場合、それらの更新プログラムのバージョン情報を前記バージョン組合せデータの対応するバージョン情報と置き換えた上で、バージョン情報置き換え後のバージョン組合せデータが適正か否かを判定する機能と、その判定により適正であるときに、前記一部又は全部のユニットコントローラにそれぞれ更新プログラムを提供する機能と、起動時に、各ユニットコントローラの制御プログラムのバージョン情報の組合せを確認し、そのバージョン情報の組合せが適正か否かを判定する機能と、その判定により適正でないときに、ユニットコントローラに更新プログラムを再提供する機能とを備えたことを特徴とする半導体製造装置の制御プログラムの更新システム。
【請求項9】
半導体製造装置のユニット毎に設置され、制御プログラムを実行することにより前記ユニットの動作を制御するユニットコントローラに、メインコントローラから更新プログラムを提供し、その更新プログラムによりユニットコントローラの制御プログラムを更新する半導体製造装置の制御プログラムの更新システムであって、
前記メインコントローラは、各ユニットコントローラに必要な更新プログラムのバージョン情報の組合せを示すバージョン組合せデータを有し、各ユニットコントローラに提供する更新プログラムのバージョン情報の組合せが前記バージョン組合せデータと一致するか否かを判定する機能と、各ユニットコントローラに提供する更新プログラムのバージョン情報の組合せが前記バージョン組合せデータと一致すると判定されたときに、各ユニットコントローラにそれぞれ更新プログラムを提供する機能とを備え、
前記ユニットコントローラは、メインコントローラから提供される更新プログラムに付加された付加情報に基づき、提供される更新プログラムが当該ユニットコントローラに適合するか否かを判定する機能と、前記提供される更新プログラムが当該ユニットコントローラに適合すると判定されたときに、その更新プログラムにより制御プログラムを更新する機能とを備えたことを特徴とする半導体製造装置の制御プログラムの更新システム。
【請求項10】
半導体製造装置のユニット毎に設置され、制御プログラムを実行することにより前記ユニットの動作を制御するユニットコントローラに、メインコントローラから更新プログラムを提供し、その更新プログラムによりユニットコントローラの制御プログラムを更新する半導体製造装置の制御プログラムの更新システムであって、
前記メインコントローラは、各ユニットコントローラに必要な制御プログラムのバージョン情報の組合せを示すバージョン組合せデータを有し、各ユニットコントローラに提供する更新プログラムのバージョン情報が前記バージョン組合せデータと一致するか否かを判定する機能と、各ユニットコントローラに提供する更新プログラムのバージョン情報が前記バージョン組合せデータと一致すると判定されたときに、各ユニットコントローラにそれぞれ更新プログラムを提供する機能とを備え、
前記ユニットコントローラは、メインコントローラから提供される更新プログラムに付加された付加情報に基づき、提供される更新プログラムが当該ユニットコントローラに適合するか否かを判定する機能と、前記提供される更新プログラムが当該ユニットコントローラに適合すると判定されたときに、その更新プログラムにより制御プログラムを更新する機能とを備えたことを特徴とする半導体製造装置の制御プログラムの更新システム。
【請求項11】
半導体製造装置のユニット毎に設置され、制御プログラムを実行することにより前記ユニットの動作を制御するユニットコントローラに、メインコントローラから更新プログラムを提供し、その更新プログラムによりユニットコントローラの制御プログラムを更新する半導体製造装置の制御プログラムの更新システムであって、
前記メインコントローラは、各ユニットコントローラに提供されている制御プログラムのバージョン情報の組合せを示すバージョン組合せデータを有し、一部又は全部のユニットコントローラに更新プログラムを提供する場合、それらの更新プログラムのバージョン情報を前記バージョン組合せデータの対応するバージョン情報と置き換えた上で、バージョン情報置き換え後のバージョン組合せデータが適正か否かを判定する機能と、その判定により適正であるときに、前記一部又は全部のユニットコントローラにそれぞれ更新プログラムを提供する機能とを備え、
前記ユニットコントローラは、メインコントローラから提供される更新プログラムに付加された付加情報に基づき、提供される更新プログラムが当該ユニットコントローラに適合するか否かを判定する機能と、前記提供される更新プログラムが当該ユニットコントローラに適合すると判定されたときに、その更新プログラムにより制御プログラムを更新する機能とを備えたことを特徴とする半導体製造装置の制御プログラムの更新システム。
【請求項12】
前記付加情報がユニット名を含み、前記ユニットコントローラは、前記付加情報のユニット名が、当該ユニットコントローラが制御対象とするユニット名と一致したときに、前記提供される更新プログラムが当該ユニットコントローラに適合すると判定する、請求項9〜11のいずれかに記載の半導体製造装置の制御プログラムの更新システム。
【請求項13】
前記付加情報がプログラムチェックコードを含み、前記ユニットコントローラは、前記プログラムチェックコードをチェックし、更新プログラムにエラーが発見されなかったときに、その更新プログラムにより制御プログラムを更新する、請求項9〜12のいずれかに記載の半導体製造装置の制御プログラムの更新システム。
【請求項14】
半導体製造装置のユニット毎に設置され、制御プログラムを実行することにより前記ユニットの動作を制御するユニットコントローラに、メインコントローラから更新プログラムを提供し、その更新プログラムによりユニットコントローラの制御プログラムを更新する半導体製造装置の制御プログラムの更新システムであって、
前記メインコントローラは、各ユニットコントローラに必要な更新プログラムのバージョン情報の組合せを示すバージョン組合せデータを有し、各ユニットコントローラに提供する更新プログラムのバージョン情報の組合せが前記バージョン組合せデータと一致するか否かを判定する機能と、各ユニットコントローラに提供する更新プログラムのバージョン情報の組合せが前記バージョン組合せデータと一致すると判定されたときに、各ユニットコントローラにそれぞれ更新プログラムを提供する機能とを備え、
前記ユニットコントローラは、起動時に制御プログラムをチェックする機能と、チェックの結果、制御プログラムにエラーが発見されたときに、メインコントローラに更新プログラムの提供を要求する機能とを備えたことを特徴とする半導体製造装置の制御プログラムの更新システム。
【請求項15】
半導体製造装置のユニット毎に設置され、制御プログラムを実行することにより前記ユニットの動作を制御するユニットコントローラに、メインコントローラから更新プログラムを提供し、その更新プログラムによりユニットコントローラの制御プログラムを更新する半導体製造装置の制御プログラムの更新システムであって、
前記メインコントローラは、各ユニットコントローラに必要な制御プログラムのバージョン情報の組合せを示すバージョン組合せデータを有し、各ユニットコントローラに提供する更新プログラムのバージョン情報が前記バージョン組合せデータと一致するか否かを判定する機能と、各ユニットコントローラに提供する更新プログラムのバージョン情報が前記バージョン組合せデータと一致すると判定されたときに、各ユニットコントローラにそれぞれ更新プログラムを提供する機能とを備え、
前記ユニットコントローラは、起動時に制御プログラムをチェックする機能と、チェックの結果、制御プログラムにエラーが発見されたときに、メインコントローラに更新プログラムの提供を要求する機能とを備えたことを特徴とする半導体製造装置の制御プログラムの更新システム。
【請求項16】
半導体製造装置のユニット毎に設置され、制御プログラムを実行することにより前記ユニットの動作を制御するユニットコントローラに、メインコントローラから更新プログラムを提供し、その更新プログラムによりユニットコントローラの制御プログラムを更新する半導体製造装置の制御プログラムの更新システムであって、
前記メインコントローラは、各ユニットコントローラに提供されている制御プログラムのバージョン情報の組合せを示すバージョン組合せデータを有し、一部又は全部のユニットコントローラに更新プログラムを提供する場合、それらの更新プログラムのバージョン情報を前記バージョン組合せデータの対応するバージョン情報と置き換えた上で、バージョン情報置き換え後のバージョン組合せデータが適正か否かを判定する機能と、その判定により適正であるときに、前記一部又は全部のユニットコントローラにそれぞれ更新プログラムを提供する機能とを備え、
前記ユニットコントローラは、起動時に制御プログラムをチェックする機能と、チェックの結果、制御プログラムにエラーが発見されたときに、メインコントローラに更新プログラムの提供を要求する機能とを備えたことを特徴とする半導体製造装置の制御プログラムの更新システム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ユニット毎にその動作を制御するユニットコントローラを有する分散制御方式の半導体製造装置において、ユニットコントローラの制御プログラムを更新する、半導体製造装置の制御プログラムの更新システムに関する。
【背景技術】
【0002】
半導体製造装置の一例として電子部品実装装置は、電子部品を撮像するカメラユニット、電子部品を搬送する搬送ユニット、電子部品をプリント基板に実装する実装ヘッド等の複数のユニットから構成され、分散制御方式においてはユニット毎にユニットコントローラを設置し、ユニットコントローラが制御プログラムを実行することにより各ユニットの動作を制御する。そして、メインコントローラが、各ユニットコントローラを統括する。
【0003】
このような分散制御方式の半導体製造装置において、ユニットコントローラの制御プログラムを更新する場合は、従来の制御プログラムが書き込まれたROMを新しい制御プログラムが書き込まれたROMと交換するか、あるいはユニットコントローラにメインコントローラから更新プログラムを提供し、更新プログラムにより制御プログラムを更新する(例えば特許文献1)。
【0004】
前述のとおり半導体製造装置は、複数のユニットコントローラを有し、各ユニットコントローラが制御プログラムを実行することにより各ユニットの動作を制御するが、半導体製造装置を全体として機能させるには各ユニットを調和させながら動作させる必要がある。そのためには、各ユニットコントローラの制御プログラムのバージョン管理が重要である。すなわち、各ユニットコントローラの制御プログラムのバージョンの組合せを適切にする必要がある。
【0005】
しかしながら、特許文献1に記載の更新システムにおいては、更新プログラムのバージョンの適否は考慮されておらず、結果として、更新された制御プログラム間でバージョン不整合が生じることがあり、半導体製造装置全体としての各ユニットの動作の整合性が損なわれるという問題があった。
【先行技術文献】
【特許文献】
【0006】
【特許文献1】特開2002−217182号公報
【発明の概要】
【発明が解決しようとする課題】
【0007】
本発明が解決しようとする課題は、更新プログラムによりユニットコントローラ毎に制御プログラムを更新する更新システムにおいて、更新後の制御プログラム間でバージョン不整合が生じることを防止し、半導体製造装置の各ユニットコントローラの制御プログラムの更新が適切に実行されるようにすることにある。
【課題を解決するための手段】
【0008】
本発明の第1の態様は、半導体製造装置のユニット毎に設置され、制御プログラムを実行することにより前記ユニットの動作を制御するユニットコントローラに、メインコントローラから更新プログラムを提供し、その更新プログラムによりユニットコントローラの制御プログラムを更新する半導体製造装置の制御プログラムの更新システムであって、前記メインコントローラは、各ユニットコントローラに必要な更新プログラムのバージョン情報の組合せを示すバージョン組合せデータを有し、各ユニットコントローラに提供する更新プログラムのバージョン情報の組合せが前記バージョン組合せデータと一致するか否かを判定する機能と、各ユニットコントローラに提供する更新プログラムのバージョン情報の組合せが前記バージョン組合せデータと一致すると判定されたときに、各ユニットコントローラにそれぞれ更新プログラムを提供する機能とを備えたことを特徴とする。このように、メインコントローラにおいて、各ユニットコントローラに必要な更新プログラムのバージョン情報の組合せを示すバージョン組合せデータと各ユニットコントローラに提供しようとする更新プログラムのバージョン情報の組合せとが一致するか否かを判定し、一致すると判定されたときのみに各ユニットコントローラにそれぞれ更新プログラムを提供するようにすることで、制御プログラム間でバージョン不整合が生じることを防止できる。
【0009】
本発明の第2の態様は、前記メインコントローラが、バージョン組合せデータとしてユニットコントローラに必要な制御プログラムのバージョン情報の組合せを示すバージョン組合せデータを有し、各ユニットコントローラに提供する更新プログラムのバージョン情報が前記バージョン組合せデータと一致するか否かを判定する機能と、各ユニットコントローラに提供する更新プログラムのバージョン情報が前記バージョン組合せデータと一致すると判定されたときに、各ユニットコントローラにそれぞれ更新プログラムを提供する機能とを備えたことを特徴とする。この第2の態様によっても、前記第1の態様と同様に制御プログラム間でバージョン不整合が生じることを防止できる。
【0010】
本発明の第3の態様は、前記メインコントローラが、各ユニットコントローラに提供されている制御プログラムのバージョン情報の組合せを示すバージョン組合せデータを有し、一部又は全部のユニットコントローラに更新プログラムを提供する場合、それらの更新プログラムのバージョン情報を前記バージョン組合せデータの対応するバージョン情報と置き換えた上で、バージョン情報置き換え後のバージョン組合せデータが適正か否かを判定する機能と、その判定により適正であるときに、前記一部又は全部のユニットコントローラにそれぞれ更新プログラムを提供する機能とを備えたことを特徴とする。このように、メインコントローラにおいて、バージョン情報置き換え後のバージョン組合せデータが適正か否かを判定し、適正と判定されたときのみに一部又は全部のユニットコントローラにそれぞれ更新プログラムを提供するようにすることで、制御プログラム間でバージョン不整合が生じることを防止できる。
【0011】
通常、更新プログラムは、少なくとも上位及び下位の2段階のバージョン情報を含むことが多い。この場合、下位のバージョン情報は細かい不具合の修正などの改訂を表しており、下位のバージョンが異なっていても制御プログラム間でバージョン不整合を起こすことは少ない。したがって、本発明の一形態では、上位のバージョン情報を使用して、各ユニットコントローラに提供する更新プログラムのバージョン情報が前記バージョン組合せデータと一致するか否か、あるいは前記バージョン情報置き換え後のバージョン組合せデータが適正か否かを判定する。また、更新プログラムのバージョン情報が、上位、中位及び下位の3段階のバージョン情報からなる場合は、上位、又は上位及び中位のバージョン情報を使用して、各ユニットコントローラに提供する更新プログラムのバージョン情報が前記バージョン組合せデータと一致するか否か、あるいは前記バージョン情報置き換え後のバージョン組合せデータが適正か否かを判定する。このように、細かい不具合の修正などの改訂を表す下位のバージョン情報を考慮せずにバージョンの整合性を判定するようにすることで、バージョンの整合性確保に過度の制約条件を課すことなく、より現実的で実用性のあるプログラム更新を実行できる。
【0012】
また、本発明において、メインコントローラは、起動時に、各ユニットコントローラの制御プログラムのバージョン情報の組合せを確認し、そのバージョン情報の組合せが適正か否かを判定する機能と、その判定により適正でないときに、ユニットコントローラに更新プログラムを再提供する機能とを更に備えることが好ましい。これらの機能を備えることで、更新プログラムによる制御プログラムの更新に不具合(エラー)が生じているものがあったとしても、起動時に事前にバージョン不整合を発見でき、バージョン不整合が発見された場合は、更新プログラムを再提供するので、バージョン不整合が生じることをより確実に防止できる。この場合、バージョン不整合が発見されたユニットコントローラの制御プログラムの更新プログラムのみを再提供するようにしてもよく、再度、全体のバージョン整合性をとるために全てのユニットコントローラに対してそれぞれの更新プログラムを再提供するようにしてもよい。
【0013】
本発明において、ユニットコントローラは、メインコントローラから提供される更新プログラムに付加された付加情報に基づき、提供される更新プログラムが当該ユニットコントローラに適合するか否かを判定する機能と、前記提供される更新プログラムが当該ユニットコントローラに適合すると判定されたときに、その更新プログラムにより制御プログラムを更新する機能とを備えたものとすることが好ましい。ユニットコントローラがこれらの機能を備えることで、誤ってそのユニットコントローラに適合しない更新プログラムが提供されたとしても制御プログラムの更新は実行されず、そのユニットコントローラに適合する更新プログラムが提供された場合にのみ制御プログラムの更新が実行される。したがって、制御プログラムが誤って更新されたり、更新中にエラーが発生したりすることを防止でき、各ユニットコントローラの制御プログラムを適切に更新できる。
【0014】
提供される更新プログラムがそのユニットコントローラに適合するか否かの判定は、更新プログラムに付加情報としてユニット名を付加しておき、ユニットコントローラが付加情報のユニット名と当該ユニットコントローラが制御対象とするユニット名とを照合することで行うことができ、それらが一致したときに適合すると判定する。
【0015】
また、メインコントローラから提供される更新プログラムにエラーがないことをチェックするために、更新プログラムの付加情報としてプログラムチェックコードを付加しておき、ユニットコントローラにおいて、そのプログラムチェックコードをチェックし、更新プログラムにエラーが発見されなかったときに、その更新プログラムにより制御プログラムを更新するようにすることが好ましい。これにより、エラーのある更新プログラムにより制御プログラムが誤って更新されることを防止でき、各ユニットコントローラの制御プログラムをより適切に更新できる。
【0016】
更に、本発明においてユニットコントローラは、起動時に制御プログラムをチェックする機能と、チェックの結果、制御プログラムにエラーが発見されたときに、メインコントローラに更新プログラムの提供を要求する機能とを備えることが好ましい。ユニットコントローラがこのような機能を備えることで、更新中の通信不具合などにより、ユニットコントローラの制御プログラムに不具合(エラー)が生じたとしても、改めて更新処理を行い、エラーを解消することができる。このような再更新の処理は、エラーが発見された制御プログラムに対してのみ実行してもよいし、再度、全ての制御プログラムに対して実行してもよい。
【発明の効果】
【0017】
本発明によれば、メインコントローラが、各ユニットコントローラに提供する更新プログラムのバージョンが適正か否かを判定し、その判定により適正であるときに、ユニットコントローラにそれぞれ更新プログラムを提供するので、更新された制御プログラム間でバージョン不整合が生じることを防止できる。したがって、制御プログラムの更新後においても、半導体製造装置全体としての各ユニットの動作の整合性を維持することができる。
【0018】
また、メインコントローラが、起動時に制御プログラム間のバージョン整合性を確認し、その結果、バージョン不整合が発見された場合に、ユニットコントローラに更新プログラムを再提供するようにすれば、バージョン不整合が生じることをより確実に防止できる。
【0019】
更に、ユニットコントローラが、メインコントローラから提供される更新プログラムに付加された付加情報に基づき、提供される更新プログラムが当該ユニットコントローラに適合するか否かを判定し、提供される更新プログラムが当該ユニットコントローラに適合すると判定されたときに、その更新プログラムにより制御プログラムを更新する、すなわち、そのユニットコントローラに適合する更新プログラムが提供された場合にのみ、制御プログラムの更新が実行されるようにすることで、制御プログラムが誤って更新されたり、更新中にエラーが発生したりすることを防止でき、各ユニットコントローラの制御プログラムを適切に更新できる。
【0020】
また更に、ユニットコントローラが、起動時に制御プログラムをチェックし、その結果、制御プログラムにエラーが発見された場合に、メインコントローラに更新プログラムの提供を要求し、再更新するようにすることで、各ユニットコントローラの制御プログラムをより適切に更新できる。
【図面の簡単な説明】
【0021】
【
図1】本発明に係る半導体製造装置の制御プログラムの更新システムの一例を示すシステム構成図である。
【
図2】メインコントローラの構成例を示すブロック図である。
【
図3】ユニットコントローラの構成例を示すブロック図である。
【
図4】ユニットコントローラの制御プログラムを更新する手順を示す概念図である。
【
図6】メインコントローラのハードディスク(HDD)の構成例を示す図である。
【
図7】ユニットコントローラのROMの構成例を示す図である。
【
図8】本発明による制御プログラムの更新処理の第1段階を示すフロー図である。
【
図9】更新プログラムによる制御プログラムの更新処理の概要を示す図である。
【
図10】メインコントローラの起動時の処理を示すフロー図である。
【
図11】ユニットコントローラの付加的な機能(更新プログラムの適合性チェック機能)を示すフロー図である。
【
図12】ユニットコントローラの付加的な機能(制御プログラムのチェック機能)を示すフロー図である。
【発明を実施するための形態】
【0022】
図1は、本発明に係る半導体製造装置の制御プログラムの更新システムの一例を示すシステム構成図である。同図において、半導体製造装置は、複数のユニットA,B,C・・・Xから構成され、そのユニット毎にユニットコントローラA,B,C・・・Xを設置し、ユニットコントローラA,B,C・・・Xが制御プログラムを実行することにより各ユニットA,B,C・・・Xの動作を制御する。そして、メインコントローラが、各ユニットコントローラA,B,C・・・Xを統括する。この半導体製造装置におけるユニットの例は、電子部品を撮像するカメラユニット、電子部品を搬送する搬送ユニット、電子部品をプリント基板に実装する実装ヘッド等である。
【0023】
図2はメインコントローラの構成例を示し、
図3はユニットコントローラの構成例を示す。メインコントローラは中央演算処理装置(CPU)及びハードディスク(HDD)を有し、各ユニットコントローラはマイクロプロセッサ(MPU)及び書き換え可能なROM(以下、単に「ROM」という。)を有する。メインコントローラのHDDにはユニットコントローラA,B,C・・・Xを統括制御する統括制御プログラムが格納され、各ユニットコントローラのROMには、対応するユニットの制御プログラムが格納されている。
【0024】
図4は、本発明において、ユニットコントローラの制御プログラムを更新する手順を示す概念図である。
【0025】
各ユニットコントローラA,B,C・・・Xには、それぞれ制御対象のユニットA,B,C・・・Xに対応する制御プログラムA,B,C・・・Xが格納されている。これらの制御プログラムA,B,C・・・Xを更新するには、通信回線や外部媒体などからメインコントローラに更新プログラムA,B,C・・・Xを入力(コピー)し、メインコントローラが、更新実行プログラムを実行してユニットコントローラA,B,C・・・Xと通信を行うことにより、更新プログラムA,B,C・・・XをユニットコントローラA,B,C・・・Xに提供する。そして、ユニットコントローラA,B,C・・・Xが、メインコントローラから提供された更新プログラムA,B,C・・・Xにより、当該ユニットコントローラの制御プログラムを更新する。
【0026】
図5は、更新プログラムの構成例を示す。更新プログラムは、その本体をなすプログラムコードのほかに、制御プログラムを適切に更新できるように付加情報を有する。
図5の例では、付加情報として、バージョン情報、制御対象のユニット名、プログラムチェックコード及びプログラムサイズを有する。付加情報に基づく動作は後述する。
【0027】
図6はメインコントローラのHDDの構成例を示し、
図7はユニットコントローラのROMの構成例を示す。メインコントローラのHDDには、
図2で説明した統括制御プログラムのほかに、起動プログラムと更新実行プログラムが格納されている。ユニットコントローラのROMには、
図3で説明した制御プログラムのほかに、起動プログラムと更新実行プログラムが格納されている。それぞれの起動プログラムと更新実行プログラムの動作は後述する。
【0028】
以下、本発明の更新システムの動作を説明する。
【0029】
図8は、本発明による制御プログラムの更新処理の第1段階を示すフロー図である。制御プログラムの更新処理は、ユーザー又はサービスエンジニアがメインコントローラのインターフェイスより更新実行プログラムを起動して更新動作を開始することにより、開始する。
【0030】
メインコントローラは、通信回線や外部媒体などから入力(コピー)された更新プログラムA,B,C・・・Xを各ユニットコントローラに提供する前に、更新プログラムのバージョンの組合せが妥当であるか否かを判定する。具体的には、メインコントローラは、更新プログラムA,B,C・・・Xの付加情報に基づき各更新プログラムのバージョン情報を確認し、そのバージョン情報の組合せがバージョン組合せデータと一致するか否かを判定する。バージョン組合せデータは、各ユニットコントローラに必要な更新プログラムのバージョン情報の組合せを示すものである。言い換えればバージョン組合せデータは、各ユニットコントローラに適用する更新プログラムのバージョンの適切な組合せを示すもので、例えば、ユニットコントローラ毎に適切な更新プログラムのバージョン情報をリスト形式で対応させたものである。このようなバージョン組合せデータは、更新プログラムA,B,C・・・Xと共に通信回線や外部媒体などからメインコントローラに入力されるか、予めメインコントローラに入力される。
【0031】
メインコントローラは、入力された更新プログラムA,B,C・・・Xのバージョン情報の組合せがバージョン組合せデータと一致すると判定された場合にのみ、各ユニットコントローラにそれぞれ更新プログラムA,B,C・・・Xを提供する。これにより、更新後の制御プログラム間でバージョン不整合が生じることを防止できる。なお、更新プログラムA,B,C・・・Xのバージョン情報の組合せがバージョン組合せデータと一致しない場合は更新処理を終了し、例えばエラー表示を行う。
【0032】
ここで、更新プログラムは、少なくとも上位及び下位の2段階のバージョン情報を含むことが多い。例えば、更新プログラムのバージョン情報は「xx.yy」で表される。この場合、下位のバージョン情報「yy」は細かい不具合の修正などの改訂を表しており、下位のバージョンが異なっていても制御プログラム間でバージョン不整合を起こすことは少ない。したがって、本発明の一形態では、少なくとも上位のバージョン情報「xx」の組合せが一致したときに、更新プログラムのバージョン情報の組合せがバージョン組合せデータと一致すると判定する。また、更新プログラムのバージョン情報が、上位、中位及び下位の3段階、例えば「xx.yy.zz」で表される場合は、上位及び中位のバージョン情報「xx.yy」の組合せ又は上位のバージョン情報「xx」の組合せが一致したときに、更新プログラムのバージョン情報の組合せがバージョン組合せデータと一致すると判定することができる。このように、細かい不具合の修正などの改訂を表す下位のバージョン情報を考慮せずにバージョンの整合性を判定することで、バージョンの整合性確保に過度の制約条件を課すことなく、より現実的で実用性のあるプログラム更新を実行できる。なお、バージョン情報が、上位、中位及び下位の3段階で表される場合において、バージョン情報の整合性の判定に中位のバージョン情報を考慮するか否かは、適宜選択することができる。例えば、更新プログラムAとBとの整合性及び更新プログラムCとDとの整合性の判定には中位のバージョン情報まで考慮し、更新プログラムA,Bと更新プログラムC,Dとの整合性には中位のバージョン情報は考慮せずに上位のバージョン情報のみを考慮するようにすることもできる。すなわち、半導体製造装置のユニット間の動作の関連性の強弱に応じて、バージョン情報の整合性の判定に中位のバージョン情報まで考慮するか否かを選択できる。
【0033】
また、本発明においては、
図8のフロー図において「バージョン情報の組合せ判定」の前か後の段階で、更新プログラムA,B,C・・・X自体のチェックを行うことができる。具体的には、各更新プログラムA,B,C・・・Xに付加情報として付加されたプログラムコードをチェックし、エラーの有無を判定する。更新プログラムにエラーが発見された場合は更新処理を終了し、更新プログラムを再入力するなどの処置を講じたうえで、再度、
図8の処理を行う。
【0034】
以上説明した
図8のフローでは、各ユニットコントローラに必要な更新プログラムのバージョン情報の組合せをバージョン組合せデータとしたが、本発明では、各ユニットコントローラに必要な制御プログラムのバージョン情報の組合せをバージョン組合せデータとし、このバージョン組合せデータを使用して更新プログラムのバーションの適否を判定することもできる。この場合、メインコントローラが、各ユニットコントローラに提供する更新プログラムのバージョン情報が前記バージョン組合せデータと一致(整合)するか否かを判定し、その判定により一致(整合)すると判定されたときに、各ユニットコントローラにそれぞれ更新プログラムを提供する。このとき、メインコントローラは、一部又は全部のユニットコントローラに更新プログラムを提供することができる。一部のユニットコントローラに更新プログラムを提供する場合であっても、その更新プログラムのバージョン情報が前記バージョン組合せデータと一致(整合)するか否かの判定は可能であり、その判定により一致(整合)すると判定されたときに、前記一部のユニットコントローラに更新プログラムを提供する。なお、各ユニットコントローラに必要な制御プログラムのバージョン情報の組合せを示すバージョン組合せデータは、
図8のフローの場合と同様に、更新プログラムと共に通信回線や外部媒体などからメインコントローラに入力されるか、予めメインコントローラに入力される。
【0035】
また、本発明において一部又は全部のユニットコントローラに更新プログラムを提供するときに、更新プログラムのバージョン整合性を判定する他の形態としては、メインコントローラに、各ユニットコントローラに提供されている制御プログラムのバージョン情報の組合せを示すバージョン組合せデータを持たせ、一部又は全部のユニットコントローラに更新プログラムを提供する場合、それらの更新プログラムのバージョン情報を前記バージョン組合せデータの対応するバージョン情報と置き換えた上で、バージョン情報置き換え後のバージョン組合せデータが適正か否かを判定し、その判定により適正であるときに、前記一部又は全部のユニットコントローラにそれぞれ更新プログラムを提供するようにすることもできる。この場合、各ユニットコントローラに提供されている制御プログラムのバージョン情報の組合せを示すバージョン組合せデータは、予めメインコントローラに入力することができるほか、メインコントローラが各ユニットコントローラと通信して、その制御プログラムのバージョン情報を得ることによって作成することもできる。また、バージョン情報置き換え後のバージョン組合せデータが適正か否かの判定は、例えばメインコントローラに、予めリスト形式で適正なバージョン組合せデータを持たせておき、この適正なバージョン組合せデータとバージョン情報置き換え後のバージョン組合せデータとを突き合わせることによって行うことができる。この場合、前述のように更新プログラム及び制御プログラムが上位、中位及び下位の3段階、例えば「xx.yy.zz」で表される場合は、上位及び中位のバージョン情報「xx.yy」又は上位のバージョン情報「xx」を使用して前記突き合わせを行い、バージョン情報置き換え後のバージョン組合せデータが適正か否かを判定することができる。また、前記突き合わせのほか、メインコントローラに、バージョン情報置き換え後のバージョン組合せデータが適正か否かを判定するプログラム(アルゴリズム)を持たせておき、そのプログラムにより適否を判定することもできる。
【0036】
図9は、更新プログラムによる制御プログラムの更新処理の概要を示す。
図8の処理を経たうえで、メインコントローラから通信によりユニットコントローラに更新プログラムXが提供されると、ユニットコントローラXの更新実行プログラムが更新プログラムXにより制御プログラムXを更新する。更新プログラムは、典型的には更新された制御プログラムそのものであり、これを古い制御プログラムと置き換えることにより、制御プログラムを更新する。このほか、更新プログラムにより古い制御プログラムの一部を置き換えて制御プログラムを更新することもできる。
【0037】
以上のように、本発明では、事前に更新プログラムのバージョン情報の整合性を確認したうえで更新処理を行うので、更新後の制御プログラム間でバージョン不整合が生じることを防止できる。ただし、更新プログラムによる制御プログラムの更新に不具合(エラー)が生じた場合、結果としてバージョン不整合が生じることがある。そこで、本発明では、メインコントローラの起動時に各ユニットコントローラの制御プログラムのバージョン情報を制御プログラムの付加情報により確認し、バージョン不整合が発見された場合は、制御プログラムの更新処理をやり直すフローを付加することが好ましい。そのフローの一例を
図10に示す。
【0038】
メインコントローラが起動すると、まずメインコントローラの起動プログラムが起動する。そしてメインコントローラは、各ユニットコントローラと通信して、各ユニットコントローラの制御プログラムのバージョン情報を確認し、そのバージョン情報の組合せが適正か否かを判定する。例えば、各ユニットコントローラの制御プログラムのバージョン情報の組合せが、前述したバージョン組合せデータ(各ユニットコントローラに必要な更新プログラムのバージョン情報の組合せ、すなわち更新後の制御プログラムのバージョン情報の適正な組合せを示すデータ)と一致するか否かを判定する。判定の結果、制御プログラムのバージョン情報の組合せが適正であれば、メインコントローラは統括制御プログラムに移行し、通常の統括制御の動作を行う。制御プログラムのバージョン情報の組合せが適正でない場合、メインコントローラは更新プログラムをユニットコントローラに再提供し、更新プログラムによる制御プログラムの更新動作を再実行する。この場合、バージョン不整合が発見されたユニットコントローラの制御プログラムの更新プログラムのみを再提供するようにしてもよく、再度、全体のバージョン整合性をとるために全てのユニットコントローラに対してそれぞれの更新プログラムを再提供するようにしてもよい。なお、メインコントローラは、上記判定を行い、必要に応じて更新プログラムを再提供できるように、最新のバージョン組合せデータと更新プログラムをメモリに記憶させておく機能を有する。
【0039】
本発明において、更新動作時のユニットコントローラの基本機能は、
図9に示したとおり、メインコントローラから提供された更新プログラムにより制御プログラムを更新することにある。ただし、本発明においてユニットコントローラは、誤ってそのユニットコントローラに適合しない更新プログラム(例えば、他のユニットコントローラ用の更新プログラム)が提供されたときに制御プログラムが誤って更新されたり、更新中にエラーが発生したりすることを防止するために、提供される更新プログラムが当該ユニットコントローラに適合するか否かを判定する機能を備えることが好ましい。その機能に基づく処理フローを
図11に示す。
【0040】
図11に示すように、メインコントローラの更新実行プログラムにより更新実行コマンドがコントロールユニットに送信されると、ユニットコントローラは制御プログラムから更新実行プログラムに移行する。その後、
図8の処理を経たうえで、メインコントローラからユニットコントローラに更新プログラムの付加情報が提供される。ユニットコントローラは、その付加情報に基づき、当該更新プログラムが当該ユニットコントローラに適合するか否かを判定(チェック)し、適合すると判定されたときにのみ、その更新プログラムにより制御プログラムの更新処理を実行する。この適合性の判定は、付加情報のユニット名を使用して行うことができる。すなわち、ユニットコントローラが付加情報のユニット名と当該ユニットコントローラが制御対象とするユニット名とを照合し、それらが一致したときに適合すると判定する。
【0041】
なお、
図11の例では、更新プログラムの付加情報のみを先にユニットコントローラに提供し、適合することが確認された後に、更新プログラム全体をユニットコントローラに提供するようにしているが、最初から更新プログラム全体をユニットコントローラに提供し、その付加情報により適合性を判定するようにしてもよい。また、ユニットコントローラは、更新処理前に、更新プログラムの付加情報であるプログラムチェックコードをチェックすることにより更新プログラムのエラーの有無をチェックし、エラーが発見されなかった場合にのみ更新処理を実行するようにしてもよい。
【0042】
このようにユニットコントローラが、提供された更新プログラムの適合性を更新処理前にチェックする機能を有することで、制御プログラムが誤って更新されたり、更新中にエラーが発生したりすることを防止でき、各ユニットコントローラの制御プログラムを適切に更新できる。
【0043】
更に、本発明においてユニットコントローラは、起動時に制御プログラムをチェックする機能を有することが好ましい。その機能に基づく処理フローを
図12に示す。
【0044】
図12に示すようにユニットコントローラが起動すると起動プログラムが実行され、その起動プログラムにより、当該ユニットコントローラの制御プログラムのチェックが実行される。具体的には、制御プログラムの付加情報であるプログラムチェックコードにより制御プログラムのエラーの有無をチェックする。チェックの結果、制御プログラムにエラーが発見された場合、ユニットコントローラは、例えばエラーコードを送信することにより、メインコントローラに更新プログラムの提供を要求する。メインコントローラは、ユニットコントローラからの更新プログラムの提供要求を受けて更新プログラムをユニットコントローラに提供する。このとき、メインコントローラとユニットコントローラは、いずれも更新実行プログラムに移行する。これにより、
図8、
図9及び
図11で説明した制御プログラムの更新処理が再実行され、制御プログラムのエラーを解消することができる。なお、このような再更新の処理は、エラーが発見された制御プログラムに対してのみ実行してもよいし、再度、全ての制御プログラムに対して実行してもよい。
【0045】
一方、制御プログラムのチェックの結果、エラーが発見されなかった場合は、通常動作により制御プログラムを起動し実行する。