GDS ファイル形式とは?
.gdsファイルは、集積回路(IC)およびMEMSのマスクレイアウトデータの確立された交換形式であり、正式にはGDSII(Graphic Database System II)またはCalmaストリーム形式として知られています。1978年にCalma社によって開発され、チップ設計者がフォトマスク製造のために半導体ファウンドリに納品する、事実上の「テープアウト」形式となりました。
.gdsファイルは、長さプレフィックス付きのレコードで構成されるバイナリストリームであり、ビッグエンディアンのバイト順で保存されます。各レコードは、レコード長、タイプ、データタイプをエンコードした4バイトのヘッダーで始まり、その後にデータペイロードが続きます。ファイルは常にHEADERレコード(16進シグネチャ 00 06 00 02)で始まり、ENDLIBで終わります。これらのマーカーの間で、形式はICジオメトリを「ライブラリ → 構造(セル) → 要素」という厳格な階層構造で整理します。サポートされている要素タイプには以下が含まれます:
BOUNDARY- 塗りつぶされたポリゴン(主要な形状)PATH- 定義された幅を持つ配線セグメントSREF/AREF- コンパクトな階層構造のための単一および配列のセル参照TEXT- 位置、方向、倍率を持つ文字列ラベルBOXおよびNODE- 追加の注釈要素
すべてのジオメトリは番号付けされたレイヤー(層)上に配置され、データベース単位をメートルにマッピングするUNITSレコードによってスケーリングされた整数座標で保持されます。
.gdsファイルはジオメトリと階層のみを保存し、回路図やネットリストではありません。ファイルサイズは、単一セルの数キロバイトから、フルレチクルマスクセットの数十ギガバイトまで及びます。大きなファイルは、外部のgzip圧縮を使用して.gds.gzとして配布されるのが一般的です。現代の高密度設計では、OASIS形式の方が圧縮率が高く、パースも速いため、.gdsよりも好まれる傾向にありますが、.gdsは依然としてEDA業界全体の主要な交換標準であり、事実上すべての商用ファウンドリで受け入れられています。
セキュリティと安全性
リスク: LOWGDSIIファイルは受動的なジオメトリデータであり、実行可能コードは含まれていないため、レイアウトビューアで開くことは安全です。真の懸念事項はマルウェアではなく機密性と整合性です。.gdsは多くの場合、価値のある独自の知的財産(NDA下のチップ設計)であるため、適切に取り扱い、未知のオンライン「GDSビューア/コンバータ」サービスへのアップロードは避けてください。GDSIIには組み込みのチェックサムがないため、ファイルを盲目的に信頼するのではなく、EDAフロー(DRC/LVS、XOR比較)を通じて整合性を確認してください。
形式の詳細
概要GDS ファイルを開くプログラム
技術的詳細
詳細仕様| エンコーディング | バイナリ、全体を通してビッグエンディアンのバイト順 |
| レコード構造 | 長さプレフィックス付きレコードのストリーム。各レコードは4バイトのヘッダー(2バイトの長さ、1バイトのレコードタイプ、1バイトのデータタイプ)を持ち、その後にペイロードが続く |
| ファイルシグネチャ(マジックバイト) | オフセット0に16進数 `00 06 00 02` - 長さ6、レコードタイプ0x00(HEADER)、データタイプ0x02(2バイト整数)のHEADERレコード |
| MIMEタイプ | `application/x-gdsii`; フォールバックとして `application/octet-stream` |
| 座標系 | データベース単位の4バイト符号付き整数。`UNITS`レコードがユーザー単位と「メートル/データベース単位」のスケール係数をペアにする |
| 浮動小数点形式 | Calma/IBM 8バイト16進浮動小数点(IEEE 754ではない)。`UNITS`やその他の実数値レコードフィールドで使用される |
| 要素タイプ | `BOUNDARY`(ポリゴン)、`PATH`、`SREF`(セル参照)、`AREF`(配列参照)、`TEXT`、`NODE`、`BOX` |
| レイヤーモデル | 整数のレイヤー番号(実際には0-255)と整数のデータタイプフィールドのペア。組み込みの名前テーブルはなく、レイヤーと用途のマッピングはPDKテクノロジーファイルで外部定義される |
| 階層構造 | `BGNSTR`/`STRNAME`/`ENDSTR`ブロックを使用した再帰的なセル(構造)階層。`SREF`/`AREF`によるセルの再利用により、繰り返されるジオメトリをコンパクトに表現可能 |
| 組み込み圧縮 | なし。ファイルは通常、外部のgzip圧縮を使用して`.gds.gz`として配布される |
| 典型的なファイルサイズ | 単一のテストセルで数キロバイト、フルチップまたはフルレチクルマスクセットで数十ギガバイト |
| 整合性チェック | 組み込みのチェックサムはなし。ファイルの整合性は、後続のDRC(デザインルールチェック)やLVS(レイアウト対回路図)サインオフツールによって検証される |
| 内部バージョンフィールド | `HEADER`レコードのペイロードに格納される2バイト整数。一般的な値は3、5、6 |
| テキストとラベルのサポート | `TEXT`要素は、位置、回転、倍率、および4つのフォントインデックス(0-3)のいずれかを使用して、レイヤーとデータタイプに文字列ラベルを付加する |
| 主なユースケース | ICおよびMEMSマスクレイアウトの交換、半導体ファウンドリへのテープアウト、およびフォトマスク製造のサインオフ |
| リリース日 | 1978 (Calma GDSII), succeeding GDS I |
| 最新バージョン | GDSII (the format is frozen; largely superseded by OASIS for new flows) |
| オープンスタンダード | はい · ロイヤリティフリー |
| 仕様書 | www.artwork.com |
GDS の変換
コミュニティ Q&A
ユーザーからの質問まだ質問はありません。GDS ファイルについて最初の質問をしてみましょう。