ガーバーフォーマット
ガーバーフォーマット(Gerber Format)は、プリント基板の設計や製造で使用されるファイルフォーマットのひとつである。プリント基板（配線パターンやソルダーマスク、シンボルマークなど）のイメージ、ドリルやルーター加工のデータが格納される。プリント基板の設計工程から製造工程へデータを受け渡すファイルフォーマットの業界標準である。
ガーバーフォーマットは、ジョセフ·ガーバー
によって設立されたGerber Systemsにより開発された。1998年にBarco ETSがGerber Systemsを買収、現在はUcamco(2008年に改称)がガーバーフォーマットを引き継いでいる。Ucamco社は、ガーバーフォーマット仕様書を断続的に改訂し公開している。 現行のガーバーフォーマット仕様は、2017年3月発行のリビジョンである。仕様書はUcamco社のダウンロードページからダウンロードすることができる。
当初はGerber System社の独自形式であったが業界標準として広がり、1979年に米国電子工業会(EIA)でRS-274-Dとして規格となった。ガーバーフォーマットでは線や点の描画情報を持つが、RS-274-Dではその座標のみで形状の情報を持たないため、別にその情報が必要であった。また、面の定義が出来ず、面を点や線で埋めて作成するため、データ量が多大になるという問題があった。これらの欠点を改良するために登場したのが拡張ガーバーフォーマットと呼ばれるRS-274Xである。RS-274Xが登場以降はこちらのフォーマットが一般的に使われるようになり、旧版であるRS-274-Dの使用は推奨されない。
初期のガーバーフォーマットであるRS-274-D は2D のNCマシンとも言うべきベクトル式に用いるサブセットである。後に登場するRS-274Xが拡張ガーバーフォーマットと呼ばれることから、こちらを標準ガーバーフォーマットとよばれている。シンプルなASCIIフォーマットで、コマンドとX/Y座標から構成される。
RS-274-Dは、ベクトル式のフォトプロッターを動かす目的で1960年代～1970年代に開発されたが、現在、フォトプロッターは全てラスター式に置き換わった。RS-274-Dファイルは、それ自体が画像を描写しているわけではない。座標情報やアパーチャ(基本的な形状物。PDFファイルにおけるフォントのようなもの)の定義情報は持ってはいない。座標情報やアパーチャは、プロッターを操作するオペレーターの手でマニュアル設定することが前提であった。一般的に自由書式のテキストファイルに記述し、これが「アパーチャファイル」や「ホイールファイル (wheel file)」のように呼ばれていた。このアパーチャファイルは人が読むことを前提としただけで、標準規格はなかった。このため、毎もしくは設計者毎に、独自のレイアウトや独自の命名規則でアパーチャファイルを作成し、基板製造サイドではそれを解読しマニュアルで自分達のCAMシステムに入力しなければならなかった。
RS-274-Dが持つ画像化の演算子は、数が少なく、とてもシンプルなものだけだったので、人の手によって、描画 ( 塗りやベクトル埋め込み ) などのような複雑で厄介な基板構造化作業が不可欠であった。
RS-274-Dはベクトル式プロッターを動かすのに適し、当時の技術では制限があるが有効なフォーマットだったといえる。人手を介するワークフロー向けに設計されているので、基板設計者から製造サイドへの確実な自動データ転送には不向きであった。
RS-274-DはあくまでNC(数値制御)に適した規格であって、画像描写に適した規格ではなかった。従って、アパーチャファイルなしでは成り立たなかった。しかしそのアパーチャファイルに規格がなく、次第にRS-274-Dは革新が求められることになっていく。
RS-274Xガーバーフォーマット(拡張ガーバーやXガーバーとも呼ばれる)は、2Dで2方向のベクトル画像を描画するフォーマット形式である。現在、PCB業界でスタンダードな画像描画フォーマットであり、確実で自動化されたワークフローが確保される。
RS-274Xは、可読なASCIIフォーマットで、コマンドと座標のシーケンスで構成される。画像の基本的な構成要素は、任意の場所でのラインドロー、定義した形状のフラッシュ(表示)、そして輪郭塗り込み(outline fill)である。またポジ／ネガのグラフィックオブジェクトを組み合わせることができる。
RS-274Xファイルは、基板の画像情報を持ち、他の外部ファイルが不要である。基板画像の結像処理に必要となるオペレータ(演算子)がプログラムされている。どのようなアパーチャ形状でも定義できる。ポジ／ネガいずれのオブジェクトでも結合させることができる。銅パターンに関しては、RS-274-Dのように「塗り(painting)」や「ベクトル埋め込み」をすることなく、指定できる。
【RS-274Xファイルの例】
ガーバーファイルは、プリント基板設計用EDAやCADソフトウェアを用いて作成する。作成されたファイルは、基板製造のCAM システムに読み込まれ、基板製造プロセスの各ステップで使用するデータに編集される。また、基板の加工以外にも、基板の仕上がりを検査する自動外観検査機にも使用される。ドリル情報(フラッシュアパーチャなど)に使うことも考えられるが、通常、ドリル情報はが使用される。
RS-274Xはファイル形式として完成度が高く、互換性に優れる。ただし、CADの一部には、RS-274Xの出力機能が不十分なものもみられ、出力されたファイルに文法的なエラーが見つかることがある。また、PCBの要求する仕様に対して数値精度が低すぎることで、丸め誤差のエラーが発生することがある。これについては、ガーバーの出力解像度は、CADの解像度より、少なくとも10倍は高くする必要がある。他に、一部のCADでは、エリアを埋める際にRS-274-Dの様に塗り(painting)で行ったり、パッドをアパーチャ定義ではなく塗りで作成するものがある。塗りであってもファイルとしては問題がないが、製造側で処理する際に煩雑で時間がかかってしまうため、塗りは使わないほうが良いとされる。これらの問題は、RS-274X形式の問題では、CADに起因する問題である。
RS-274Xでは、ファイルが基板のどの層を表すかという規格を設けていない。これは欠点ではなく、ファイル名で層を、ファイル拡張子でフォーマット種類(例:「.GER」=ガーバーデータ）を明確に出来るため、それで十分だと考えられている。しかし、一部の設計者やCADでは、データセットに暗号化したファイル名を用い、別のテキストファイルに層や種類を記録することがある。製造サイドではデータセット内の全てのファイルを閲覧し、製造に必要な情報を探すという作業が伴う。また、拡張子で、層や種類（ガーバーかドリル）を示すケースも見受けられる（例：ボトムレイヤファイルの拡張子を「.BOT」とする）。この場合、製造者はファイルを開き、正しいフォーマット形式を確認する必要がある。PDFという拡張子がポータブル・ドキュメント・フォーマットを示すように、一般的に拡張子がファイル種類を示すことから、拡張子によって層や種類を示すのは好ましくないとされる。
初期版であったRS-274-DフォーマットはRS-274X登場以降、使用される機会は減少したが過去の設計データなどで使用されることがある。RS-274-Dは、テクノロジーの変遷を見据えて設計されたものではなく、さまざまな限界があり、製造者だけでなく設計側にも厄介な構築作業が生じる。それらを補うには手作業が必要となり、よりエラーがおきやすい。
2014年2月にUcamcoは属性を持つガーバーフォーマット（ガーバーバージョン2）を拡張した。属性はガーバーファイルにメタ情報を追加したものである。
これらは画像ファイルと関連した情報、またはこれらの特徴を提供するラベルに類似している。
属性によって伝えられるメタ情報の例：
銅パターンなどの描画情報とドリルなどの加工情報しか持たないガーバーフォーマットに代わり、ネットリストや部品情報なども組み込んだファイル形式がCADソフトウエア企業などから提案されている。しかし、提案されるフォーマット間でデータの互換性が無く、設計工程から製造工程への情報の伝達ではガーバーフォーマットで必要十分なこともあって、ガーバーフォーマットを置き換えるには至っていない。2017年現在、ODB++フォーマットをサポートするCAD/CAMソフトウエアが増加し、シェアが広がりつつある。
ガーバーフォーマットは、もともとEIA RS-274-D仕様のサブセットで、幅広い産業で、メカニカルにNCマシンを制御するために設計されたフォーマットである。EIA RS-274-Dにはサブタイトルがあり、位置決め、輪郭化、輪郭化/位置決めといったマシン制御向けの可変長ブロックデータ互換フォーマット(Interchangeable variable block data format)と言われている。Gerber Scientific Corporationは、これらのコマンドのサブセットを利用して自分達のフォトプロッターを稼動させていた。当時、フォトプロッターは、異なる形状(一般的に円や長方形、その他数種類)や異なるサイズからなる既定アパーチャに限られていた。またアパーチャは、「フラッシュ」アパーチャを使って特定の座標に出現させるか、シャッターを開いたままの状態で「ドロー」アパーチャを使って始点座標から終点座標まで引っ張り、ラインやアークのセグメントを生成させていた。アパーチャの位置を揃える手段はなかった。1つ1つがガラスやフィルム基板上の小さな切抜きであった。プロッターのオペレーターは、デザインをプロットする前に、設計者からの指示書(アパーチャリスト)一式が必要で、それによって各アパーチャをどこに配置するかを把握してから、プロット描画を実行しなくてはならなかった。マシンには多数の不連続なアパーチャポジション番号があるが、通常、その全てを基板にプロットするというわけでもなかった。プロットファイルを作成した人物が、アパーチャリストで指定している位置が実際に有効で、かつプロットファイルと一致していることを確実にする責務があった。