本ガイドでは、半導体工場の自動化で使われる標準通信プロトコルであるSECS/GEMを、初心者の方にもわかりやすく紹介します。SECS/GEMが何の略か、3つの中核規格(SEMI E30 GEM、SEMI E5 SECS-II、SEMI E37 HSMS)がどのように連携するのか、そして装置が工場のホストシステムとどのように通信するのかを学べます。
半導体OEMやファブにとって、SECS/GEMは「あれば望ましい」ものから基本的な要件へと変わりました。主要な顧客は現在、新しい装置を受け入れる前にGEMまたは GEM300 への準拠を求めており、異なる装置が混在する工場では、MESデータを途切れさせないために標準化された通信が不可欠です。装置へのSECS/GEM導入をご検討中でしたら、 ファブ向けSECS/GEMソリューションをご覧いただき、 実績のあるSDKが導入までの道のりをどう短縮できるかをご確認ください。
完全な公式基準については、以下を参照してください。 SEMI.org. お客様の機器にSECS/GEMを実装するために、ゼロからドライバを構築せずに済ませるには、当社の NxSphere® GEM SDK。規格ごとの詳細は、弊社の SEMI規格ガイド。まずは資料で確認したい方は、 NxSphere® GEM データシートを請求.
このガイドの内容
SECS/GEMを理解する:定義と基本概念
1.
SECS(SEMI Equipment Communication Standards)とGEM(Generic Model for Communications and Control of Manufacturing Equipment)は、半導体製造の規格を管理する半導体メーカーの国際組織SEMI.orgが発行・維持している規格です。
2.
SECS/GEMは、半導体・電子機器産業の自動化で使われる主要な通信プロトコルであり、現在では太陽光発電(PV)やSMT業界にも広く普及しています。
3.
SECS/GEMは、装置とホストシステムの間の通信インターフェースを提供します。
4.
PLCなどの他の通信プロトコルとは異なり、SECS/GEMでは、さまざまなベンダーの装置が、標準化された一貫したプロトコルを使って、異なる種類のホストシステムと通信できます。
SECS/GEM統合が半導体製造にとって重要な理由
SECS/GEMがなければ、工場のデータはサイロ化したままです。オペレーターは測定値を表計算ソフトに手入力し、アラームは見過ごされ、新しい装置ごとに個別の統合が必要になります。その結果、コストのかかるダウンタイムや、歩留まりを損なう死角が積み重なります。SECS/GEMは自動化の経済性を変えます。
標準化された通信により、リアルタイム監視、装置の立ち上げ期間の短縮、より正確な分析が可能になります。業界の導入事例では、これが統合コストの大幅な削減と歩留まりの測定可能な向上につながっています。
OEMにとって、GEM準拠は販売の前提条件となることが少なくありません。ファブにとっては、 SECS/GEMソリューション が、現場の装置から活用できるデータへの最短ルートであり、 SECS/GEMゲートウェイソリューション が、そのままでは孤立してしまうレガシー装置やPLC制御の装置を接続します。
SECS/GEM規格
SECS/GEM通信は、3つのSEMI規格が連携することで成り立っています。SEMI E30 GEMは、装置が 何を 行うかを定義し、SEMI E5 SECS-IIはメッセージが どのように 構造化されるかを定義し、SEMI E37 HSMSはそれらのメッセージがネットワーク上を どのように 伝送されるかを定義します。この3つの関係を理解すると、プロトコル自体と、それを基盤とする製品の両方がより明確になります。
SEMI E30 GEM規格の解説
GEM規格は、装置の動作と通信機能の共通セットを定義しており、半導体デバイスメーカーの製造自動化プログラムを支えるための機能と柔軟性を提供します。装置サプライヤーは、GEMに含まれない追加のSECS-II機能を提供することもできますが、その追加機能がGEMで定義された動作や機能と矛盾しないことが条件です。そのような追加には、SECS-IIメッセージ、コレクションイベント、アラーム、リモートコマンドコード、処理状態、可変データ項目(データ値、ステータス値、装置定数)、あるいは装置の種類(エッチャー、ステッパーなど)や特定の装置に固有のその他の機能が含まれます。
コミュニケーション
COMMUNICATION状態モデルは、ホストとの通信リンクが存在する場合と存在しない場合の装置の動作を定義します。また、通信が途切れた際にS1F13/S1F14を使って通信を確立または再確立する方法も定義します。
実務での意味:通信状態モデルにより、ホストと装置の間の接続断を検知して復旧するための予測可能な方法が得られます。ファブにとっては、気づかれない障害が減り、稼働率が安定することを意味します。OEMにとっては、オペレーターの介入なしに装置が再接続してレポートを再開すると、顧客に信頼してもらえることを意味します。
コントロール
OFFLINE(最低レベル):装置の操作は、オペレータコンソールでオペレータが手動で行う。装置は、S1F13 または S1F17 以外のホストからのプライマリメッセージに SxF0 で応答する。.
ONLINE/LOCAL(中間レベル):この状態では、ホストはデータ収集などの「読み取り専用」操作のみ実行できます。ホストは、プロセスに影響する装置定数の変更や、物理的な動作を引き起こす、または処理を開始するリモートコマンドの発行を禁止されます。
ONLINE/REMOTE(最高レベル):この状態では、ホストは通信インターフェイスを通じて利用可能な全範囲で機器を操作することができる(「読み書き」操作)。.
加工
リモートコマンド
変数
GEM規格では、ホストがアクセスできる3種類の変数が定義されています。
ステータス変数(Status Variable):装置内で定義される「読み取り専用」のグローバル変数です。処理が行われるたびに、装置は該当するステータス変数を最新のデータ(カウンタの増分、現在または直前の状態など)に更新します。
装置定数(Equipment Constant):装置内で定義される「読み書き可能」なグローバル変数です。ホストは装置定数を設定または変更でき、それによって設定が変わり、装置の動作が変化することがあります。
ディスクリート変数(Discrete Variable):コレクションイベント内にのみ存在する「ローカル」変数です。
データ収集
SECS/GEMでは、ホストが装置からデータや情報を収集する方法がいくつか用意されています。
ステータス変数の値のセットは、S1F3コマンドを使っていつでも要求できます。
装置定数の値のセットは、S2F13を使っていつでも要求できます。
ホストは、ステータス変数、装置定数、データ変数を含むレポートを定義し、コレクションイベントに関連付けることができます。装置がそのイベントを発生させると(S6F11コマンドを使用)、それらの変数値を含むレポートが一緒に送信されます。
ホストは、ステータス変数のデータを定期的にサンプリングするトレースを定義できます。
もう一つの方法は、アラーム通知を利用し、コレクションイベントでさらに多くのデータを収集することです。規格上、アラームが発生または解除されるたびに、コレクションイベントをホストに送信する必要があります。
アラーム通知
この機能により、装置は、装置で発生したアラームやエラーの発生および解除をすべてホストに通知できます。アラームとは、異常な事象、望ましくない事象、または人・装置・処理中の物理的な材料を危険にさらす事象を指します。
以下は、GEMが定義するアラーム管理の特徴である:
各アラームには、ALARM SET(発生)とALARM CLEAR(解除)の2つの状態があります。
各AlarmSetとAlarmClearには、関連付けられたコレクションイベントがあります。これにより、より広範で柔軟なデータ報告を求めるホストのニーズに対応できます。
ホストは、どのアラームを有効または無効にするかを要求でき、装置は有効なアラームについてのみホストに通知します。
ドキュメンテーション
その他多数...
スプーリング、プロセスプログラム、ターミナルサービス、リミットモニタリングなどその他の機能については、規格の全文をご参照ください。
装置にSECS/GEMを実装しますか?
NxSphere® GEM SDKを使えば、ドライバをゼロから開発することなく、SEMI E30、E5、E37に対応できる仕組みをご覧ください。
SEMI E5 SECS-IIのメッセージ構造
冒頭で説明したとおり、この規格はホストと装置の間をつなぐAPIを提供します。この規格では、各メッセージはファンクション(Function)として表現され、ストリーム(カテゴリ)にグループ化されます。
Webサービスと同様に、各SECS-IIメッセージは ヘッダー (通常、メソッド名または関数名と、トランザクションの種類(要求または応答)を含む)と ボディ (パラメータの名前と型を指定する)で構成されます。関数によっては、ボディが空の場合もあります。
以下に、SECS-IIメッセージ構造の表記規則を説明します。
メッセージヘッダー
どこでだ:
Stream ID = メッセージのストリーム(カテゴリ)
Function ID = メッセージのファンクション識別子。各ストリームには複数のファンクションがあります。奇数のFunction IDはプライマリメッセージ(要求)を、偶数のFunction ID(SnFm+1)はセカンダリメッセージ(応答)を表します。
Mnemonic = メッセージの略称
S, M = S=Single(単一ブロック)、M=Multi-block(複数ブロック)
H, E = H=Host(ホスト)、E=Equipment(装置)
Message Directions = 有効なメッセージの方向を示します。メッセージによっては一方向のみ有効なもの(例:H->E または H<-E)もありますが、双方向(HE)のものもあります。例:S1F13 Establish Communication(HE)。
Reply = メッセージに応答が必要かどうかを示します。
説明
構造
ファンクションのメッセージボディです。リストと定義済みの項目を示す詳細な構造です。リストは大文字のLに続けて、カンマで区切った長さで表されます。リスト内の各要素は、別々の行に番号が付けられます。
入れ子になったリストは、構造がわかるようにインデントされます。項目の詳細な形式は、トランザクション冒頭のdefineセクションに記載されています。記号「<」と「>」は項目ヘッダーを示します。各データ項目の詳細な説明と許容されるデータ形式の一覧は、Data Item Dictionaryに記載されています。
例外
SEMI E37 HSMS:高速SECSメッセージサービス(High-Speed SECS Message Services)
HSMSは、TCP/IPプロトコル上に構築された伝送層です。HSMSは、より高速な通信が必要な用途や、単純なポイントツーポイントのトポロジーでは不十分な用途向けに、SEMI E4(SECS-I)の代替として設計されています。
TCP/IP設定
HSMSはTCP/IPから派生しているため、ホスト(クライアント)と装置(サーバー)の両方で次の設定が必要です。
ConnectionMode:ACTIVEモードまたはPASSIVEモード。通常、ACTIVEモードはホスト側、PASSIVEモード(待ち受け)は装置側で使用しますが、逆の構成にすることも制限されていません。
Local IP Address and Port Number:PASSIVEモードで動作するすべてのエンティティで必要です。ローカルエンティティが着信接続要求を待ち受けるアドレスを決定します。通常、装置はこのモードで動作します。
Remote IP Address and Port Number:ACTIVEモードで動作するすべてのエンティティで必要です。ローカルエンティティが接続を試みるリモートエンティティのアドレスを決定します。通常、ホストはこのモードで動作します。
HSMSタイムアウト設定
HSMSの実装では、次のパラメータについて、設置時に設定できるようにする必要があります。
T3 Reply Timeout:応答メッセージを待っているエンティティが、その応答を待つ最大時間を指定します。
T5 Connection Separation Timeout:特定のリモートエンティティへの接続試行と次の試行との間に経過させなければならない時間を指定します。
T6 Control Transaction Timeout(コントロール・トランザクションのタイムアウト):制御トランザクションが通信障害とみなされるまでに開いていられる時間を指定する。.
T7 Not Selected Timeout:TCP/IP接続がNOT SELECTED状態(つまりHSMSのやり取りがない状態)のままでいられる時間を指定します。この時間を超えると通信障害とみなされます。
T8 Network Inter-character Timeout:1つのHSMSメッセージ内で、連続するバイト間に許容される最大時間です。
SECS/GEMに関するよくある質問
SECS/GEMと従来の通信プロトコルの違いは何ですか?
SECS/GEMは、世界で100社以上のOEMが採用している半導体業界の標準です。独自API、手入力、RS-232シリアルといった従来の手法は、リアルタイム性に欠け、拡張性がなく、ベンダーロックインを招きます。SECS/GEMは標準化され、リアルタイムで、装置を問わないため、最新のファブ自動化の基盤となっています。
レガシーな半導体装置でもSECS/GEMを使えますか?
はい。導入から10〜20年以上経過したレガシー装置は通常、SECS/GEMにネイティブ対応していませんが、ゲートウェイミドルウェアやSDKベースのドライバを使って後付けで対応できます。 NxSphere® GEMBridge とNxSphere® GEMは、レガシー装置の統合のために特別に設計されており、既存の装置を入れ替えることなく、最新のファブ自動化システムと通信できるようにします。
SECS/GEM統合には通常どのくらいの期間がかかりますか?
SECS/GEM統合の期間は、装置の複雑さやゲートウェイの種類によって異なります。シンプルなゲートウェイの導入には2〜4週間、複数の装置にまたがるSDKベースの統合には通常6〜12週間かかります。Insphereは影響の大きい装置を優先して進めるため、ROIは段階的に得られます。
SECS/GEMとは何の略ですか?
SECSは SEMI Equipment Communication Standards(SEMI装置通信規格)の略で、GEMは Generic Model for Communications and Control of Manufacturing Equipment(製造装置の通信・制御のための汎用モデル)の略です。両者を合わせて、半導体・電子機器の製造装置が工場のホストシステムとどのように通信するかを定めています。
SECS/GEMはどのように動作しますか?
SEMI E30(GEM)は、装置が何を行うか(状態、イベント、アラーム、リモートコマンド)を定義します。SEMI E5(SECS-II)は各メッセージの構造を、SEMI E37(HSMS)はそれらのメッセージをTCP/IPでどのように伝送するかを定義します。ホストと装置はこれらのメッセージをやり取りして、装置の監視、制御、データ収集を行います。
SECS/GEMはどの業界で使われていますか?
SECS/GEMは半導体工場における標準的な装置インターフェースであり、電子機器の組立、太陽光発電(PV)製造、SMTラインでも広く使われています。
SECS-I(SEMI E4)とHSMS(SEMI E37)の違いは何ですか?
どちらもSECS-IIメッセージのための伝送層です。SECS-I(SEMI E4)はシリアルのRS-232接続で動作し、HSMS(SEMI E37)はTCP/IPイーサネットで動作します。HSMSの方が高速で、最新の装置では標準的に採用されており、SECS-Iは主に古い装置で見られます。
SECS/GEMとGEM300の違いは何ですか?
GEM300は300mmファブ向けにSECS/GEMを拡張した規格です。キャリア管理、基板トラッキング、コントロールジョブ、プロセスジョブ(SEMI E87、E90、E94、E40)を追加し、工場が搬送とジョブ実行を自動化できるようにします。詳しくは、 GEM300規格入門 をご覧ください。
装置メーカーにSECS/GEMは必須ですか?
法的な要件ではありませんが、実際には、ほとんどの半導体工場と多くの電子機器メーカーがGEM準拠を求めており、装置メーカーにとっては販売の前提条件となることがよくあります。
SECS/GEMを導入する準備はできていますか?
初日からGEM準拠が求められる新規装置の出荷でも、既存の装置群をMES接続のためにオンライン化する場合でも、適切なSDKとゲートウェイがあれば、数か月かかるプロジェクトを数週間に短縮できます。InsphereのSECS/GEMソリューションは、主要なファブやOEMでの15年以上の本番導入実績に基づいています。
- NxSphere® GEM SDK の動作をご覧ください
- レガシー装置やPLC制御装置向けのNxSphere® GEMBridge を見る
- SECS/GEMの専門家への相談を予約する
- 300mmファブ向けですか?NxSphere® GEM300 をご覧ください
- NxSphere® GEM データシートを請求
関連記事

