Vad är filformatet GDS?
Filen .gds är det etablerade utbytesformatet för layoutdata för integrerade kretsar (IC) och MEMS-masker, formellt känt som GDSII (Graphic Database System II) eller Calma Stream Format. Det utvecklades av Calma Company 1978 och blev de facto-formatet för «tape-out» som chipdesigners levererar till halvledargjuterier för tillverkning av fotomasker.
En .gds-fil är en binär ström sammansatt av poster med längdprefix, lagrade i big-endian byte-ordning. Varje post börjar med ett 4-byte huvud som kodar postens längd, typ och datatyp, följt av datanyttolasten. Filen öppnas alltid med en HEADER-post (hex-signatur 00 06 00 02) och stängs med ENDLIB. Mellan dessa markörer organiserar formatet IC-geometri i en strikt hierarki: bibliotek → strukturer (celler) → element. Elementtyper som stöds inkluderar:
BOUNDARY- fyllda polygoner (den primära formen)PATH- trådsegment med en definierad breddSREF/AREF- enstaka cellreferenser och matrisreferenser för kompakt hierarkiTEXT- textetiketter med position, orientering och förstoringBOXochNODE- ytterligare annoteringselement
All geometri ligger på numrerade lager, med heltalskoordinater som skalas av en UNITS-post som mappar databasenheter till meter.
En .gds-fil lagrar endast geometri och hierarki - det är inte ett schema eller en nätlista. Filstorlekar varierar från kilobyte för en enskild cell till många gigabyte för en fullständig maskuppsättning. Stora filer distribueras vanligtvis som .gds.gz med extern gzip-komprimering. För moderna högdensitetsdesigner erbjuder OASIS-formatet bättre komprimering och snabbare parsning och föredras alltmer framför .gds, även om .gds förblir den dominerande utbytesstandarden inom EDA-industrin och accepteras av praktiskt taget alla kommersiella gjuterier.
Säkerhet & trygghet
RISK: LOWEn GDSII-fil är passiva geometridata - ingen exekverbar kod - så det är säkert att öppna en i en layoutvisare. De verkliga bekymren är konfidentialitet och integritet, inte skadlig kod: en .gds är ofta värdefull proprietär IP (en chipdesign under NDA), så hantera den därefter och undvik att ladda upp designer till okända online-tjänster för «GDS-visning/konvertering». GDSII har ingen inbyggd kontrollsumma, så verifiera integriteten genom ditt EDA-flöde (DRC/LVS, XOR-jämförelse) snarare än att lita blint på filen.
Formatdetaljer
i ett nötskalProgram som öppnar GDS-filer
Tekniska detaljer
djup specifikation| Kodning | Binär, big-endian byte-ordning genomgående |
| Poststruktur | Ström av poster med längdprefix; varje post har ett 4-byte huvud: 2-byte längd, 1-byte posttyp, 1-byte datatyp, följt av nyttolasten |
| Filsignatur (magic bytes) | Hex `00 06 00 02` vid offset 0 - HEADER-post med längd 6, posttyp 0x00 (HEADER), datatyp 0x02 (2-byte heltal) |
| MIME-typ | `application/x-gdsii`; reservalternativ `application/octet-stream` |
| Koordinatsystem | 4-byte tecknade heltal i databasenheter; `UNITS`-posten parar användarenheter med en skalfaktor för meter-per-databasenhet |
| Flyttalsformat | Calma/IBM 8-byte hexadecimalt flyttal (inte IEEE 754), används i `UNITS` och andra fält för realtalsvärden |
| Elementtyper | `BOUNDARY` (polygon), `PATH`, `SREF` (cellreferens), `AREF` (matrisreferens), `TEXT`, `NODE`, `BOX` |
| Lagermodell | Heltalsnummer för lager (0-255 i praktiken) parat med ett heltalsfält för datatyp; ingen inbyggd namntabell - mappning mellan lager och syfte definieras externt i PDK-teknikfiler |
| Hierarki | Rekursiv cellhierarki (struktur) med `BGNSTR`/`STRNAME`/`ENDSTR`-block; celler som återanvänds via `SREF`/`AREF` möjliggör kompakt representation av upprepad geometri |
| Inbyggd komprimering | Ingen; filer distribueras ofta som `.gds.gz` med extern gzip-komprimering |
| Typisk filstorlek | Kilobyte för en enskild testcell; tiotals gigabyte för ett helt chip eller en fullständig maskuppsättning |
| Integritetskontroll | Ingen inbyggd kontrollsumma; filintegritet verifieras av efterföljande DRC (design rule check) och LVS (layout vs. schematic) verktyg |
| Internt versionsfält | 2-byte heltal lagrat i `HEADER`-postens nyttolast; vanliga värden är 3, 5 och 6 |
| Stöd för text och etiketter | `TEXT`-element kopplar textetiketter till ett lager och en datatyp, med position, rotation, förstoring och ett av fyra typsnittsindex (0-3) |
| Primärt användningsområde | Utbyte av masklayouter för IC och MEMS, tape-out till halvledargjuterier och godkännande för fotomasktillverkning |
| Släppt | 1978 (Calma GDSII), succeeding GDS I |
| Senaste version | GDSII (the format is frozen; largely superseded by OASIS for new flows) |
| Öppen standard | Ja · royaltyfri |
| Specifikation | www.artwork.com |
GDS-konverteringar
Frågor & svar
frågat av användareInga frågor än - bli den första att fråga om GDS-filer.